From a2efc69fade49fff089c2c0133ef175c9fa6d080 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Fri, 10 Sep 2021 08:27:30 +0300 Subject: [PATCH 01/54] init --- package-lock.json | 14 +++++++------- package.json | 2 +- tests/compiler/comma.optimized.wat | 30 +++++++++++++++++++++++++++--- 3 files changed, 35 insertions(+), 11 deletions(-) diff --git a/package-lock.json b/package-lock.json index 95336101b3..afdf935b79 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "101.0.0-nightly.20210904", + "binaryen": "101.0.0-nightly.20210910", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" @@ -733,9 +733,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "101.0.0-nightly.20210904", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-101.0.0-nightly.20210904.tgz", - "integrity": "sha512-2AvJhErttuoMvgNcYPPpPy7C12PSvDdtZWtEeX/Otm/Vtf4ePvBpT3UIA00hGAh8HNaGr+dzFNstxTUvjNwZTg==", + "version": "101.0.0-nightly.20210910", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-101.0.0-nightly.20210910.tgz", + "integrity": "sha512-OWAWk5laatiB11WupmOCXqMF35JXKERNIJd+fAiqiWRTE+2875u+KSWOuwOTL8P3GODVK3bL1krJT1sIq79jVw==", "bin": { "wasm-opt": "bin/wasm-opt" } @@ -3508,9 +3508,9 @@ "dev": true }, "binaryen": { - "version": "101.0.0-nightly.20210904", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-101.0.0-nightly.20210904.tgz", - "integrity": "sha512-2AvJhErttuoMvgNcYPPpPy7C12PSvDdtZWtEeX/Otm/Vtf4ePvBpT3UIA00hGAh8HNaGr+dzFNstxTUvjNwZTg==" + "version": "101.0.0-nightly.20210910", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-101.0.0-nightly.20210910.tgz", + "integrity": "sha512-OWAWk5laatiB11WupmOCXqMF35JXKERNIJd+fAiqiWRTE+2875u+KSWOuwOTL8P3GODVK3bL1krJT1sIq79jVw==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 194579b8bf..7b1e89ead1 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "url": "https://github.com/AssemblyScript/assemblyscript/issues" }, "dependencies": { - "binaryen": "101.0.0-nightly.20210904", + "binaryen": "101.0.0-nightly.20210910", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" diff --git a/tests/compiler/comma.optimized.wat b/tests/compiler/comma.optimized.wat index 30a6004906..23ce049407 100644 --- a/tests/compiler/comma.optimized.wat +++ b/tests/compiler/comma.optimized.wat @@ -75,12 +75,36 @@ global.set $comma/a i32.const 1 global.set $comma/b - i32.const 2 + global.get $comma/a + i32.const 1 + i32.add global.set $comma/a - i32.const 2 + global.get $comma/a global.set $comma/b - i32.const 2 + global.get $comma/b global.set $comma/a + global.get $comma/a + i32.const 2 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 18 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $comma/b + i32.const 2 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 19 + i32.const 1 + call $~lib/builtins/abort + unreachable + end loop $for-loop|0 global.get $comma/a local.get $0 From 4a38ac4763a48891f50951e0645c210cbf57b92a Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Fri, 10 Sep 2021 11:27:22 +0300 Subject: [PATCH 02/54] add extra optimize globals --- src/module.ts | 1 + tests/compiler/binary.optimized.wat | 4 --- tests/compiler/comma.optimized.wat | 30 +++-------------------- tests/compiler/std/dataview.optimized.wat | 16 ++++++------ 4 files changed, 12 insertions(+), 39 deletions(-) diff --git a/src/module.ts b/src/module.ts index 1ee657b283..99d3f66c28 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2299,6 +2299,7 @@ export class Module { if (optimizeLevel >= 2 || shrinkLevel >= 1) { passes.push("pick-load-signs"); passes.push("simplify-globals-optimizing"); + passes.push("simplify-globals-optimizing"); } passes.push("simplify-locals-notee-nostructure"); passes.push("vacuum"); diff --git a/tests/compiler/binary.optimized.wat b/tests/compiler/binary.optimized.wat index 5689d17f10..2ffdaefeb4 100644 --- a/tests/compiler/binary.optimized.wat +++ b/tests/compiler/binary.optimized.wat @@ -166,9 +166,7 @@ global.set $binary/i i32.const 0 global.set $binary/i - global.get $binary/i i32.const 1 - i32.add global.set $binary/i global.get $binary/i i32.const 1 @@ -212,9 +210,7 @@ global.set $binary/I i64.const 0 global.set $binary/I - global.get $binary/I i64.const 1 - i64.add global.set $binary/I global.get $binary/I i64.const 1 diff --git a/tests/compiler/comma.optimized.wat b/tests/compiler/comma.optimized.wat index 23ce049407..30a6004906 100644 --- a/tests/compiler/comma.optimized.wat +++ b/tests/compiler/comma.optimized.wat @@ -75,36 +75,12 @@ global.set $comma/a i32.const 1 global.set $comma/b - global.get $comma/a - i32.const 1 - i32.add - global.set $comma/a - global.get $comma/a - global.set $comma/b - global.get $comma/b + i32.const 2 global.set $comma/a - global.get $comma/a i32.const 2 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 18 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $comma/b + global.set $comma/b i32.const 2 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 19 - i32.const 1 - call $~lib/builtins/abort - unreachable - end + global.set $comma/a loop $for-loop|0 global.get $comma/a local.get $0 diff --git a/tests/compiler/std/dataview.optimized.wat b/tests/compiler/std/dataview.optimized.wat index 79fa20cf26..ad41347d3e 100644 --- a/tests/compiler/std/dataview.optimized.wat +++ b/tests/compiler/std/dataview.optimized.wat @@ -4224,24 +4224,24 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 local.get $1 i32.load - local.tee $1 + local.tee $0 i32.store offset=4 + local.get $2 local.get $0 - local.get $1 i32.const 0 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 call $~lib/dataview/DataView#constructor - local.tee $1 + local.tee $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -4252,7 +4252,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 8 i32.ne From 26879cdb11dcf21433380fdfe13f21ecaf140580 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Fri, 10 Sep 2021 11:38:05 +0300 Subject: [PATCH 03/54] refactor --- src/module.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/module.ts b/src/module.ts index 99d3f66c28..9ff24566b9 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2315,8 +2315,8 @@ export class Module { if (optimizeLevel >= 3 || shrinkLevel >= 1) { passes.push("merge-locals"); + passes.push("vacuum"); } - passes.push("vacuum"); if (optimizeLevel >= 2 || shrinkLevel >= 1) { passes.push("simplify-globals-optimizing"); } From 3c6e167aefb2acc5e9131cf2825d8ad1953c3050 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sat, 11 Sep 2021 10:09:48 +0300 Subject: [PATCH 04/54] update --- package-lock.json | 14 +++++++------- package.json | 2 +- src/module.ts | 11 ++++++----- 3 files changed, 14 insertions(+), 13 deletions(-) diff --git a/package-lock.json b/package-lock.json index afdf935b79..fea19d39ad 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "101.0.0-nightly.20210910", + "binaryen": "102.0.0", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" @@ -733,9 +733,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "101.0.0-nightly.20210910", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-101.0.0-nightly.20210910.tgz", - "integrity": "sha512-OWAWk5laatiB11WupmOCXqMF35JXKERNIJd+fAiqiWRTE+2875u+KSWOuwOTL8P3GODVK3bL1krJT1sIq79jVw==", + "version": "102.0.0", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0.tgz", + "integrity": "sha512-lXemQSay90n49CHlUgWl68/q2/htIJrVrvUkNP3U38RkcyvaqBurIhFadf7NF5v7CT1HzmNufiURE6WRNF1l5g==", "bin": { "wasm-opt": "bin/wasm-opt" } @@ -3508,9 +3508,9 @@ "dev": true }, "binaryen": { - "version": "101.0.0-nightly.20210910", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-101.0.0-nightly.20210910.tgz", - "integrity": "sha512-OWAWk5laatiB11WupmOCXqMF35JXKERNIJd+fAiqiWRTE+2875u+KSWOuwOTL8P3GODVK3bL1krJT1sIq79jVw==" + "version": "102.0.0", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0.tgz", + "integrity": "sha512-lXemQSay90n49CHlUgWl68/q2/htIJrVrvUkNP3U38RkcyvaqBurIhFadf7NF5v7CT1HzmNufiURE6WRNF1l5g==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 7b1e89ead1..1cc5e17db0 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "url": "https://github.com/AssemblyScript/assemblyscript/issues" }, "dependencies": { - "binaryen": "101.0.0-nightly.20210910", + "binaryen": "102.0.0", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" diff --git a/src/module.ts b/src/module.ts index 9ff24566b9..f5b7bc1d9c 100644 --- a/src/module.ts +++ b/src/module.ts @@ -143,11 +143,12 @@ export enum ExpressionId { StructGet = 59 /* _BinaryenStructGetId */, StructSet = 60 /* _BinaryenStructSetId */, ArrayNew = 61 /* _BinaryenArrayNewId */, - ArrayGet = 62 /* _BinaryenArrayGetId */, - ArraySet = 63 /* _BinaryenArraySetId */, - ArrayLen = 64 /* _BinaryenArrayLenId */, - ArrayCopy = 65 /* _BinaryenArrayCopyId */, - RefAs = 66 /* _BinaryenRefAsId */ + ArrayInit = 62 /* _BinaryenArrayInitId */, + ArrayGet = 63 /* _BinaryenArrayGetId */, + ArraySet = 64 /* _BinaryenArraySetId */, + ArrayLen = 65 /* _BinaryenArrayLenId */, + ArrayCopy = 66 /* _BinaryenArrayCopyId */, + RefAs = 67 /* _BinaryenRefAsId */ } /** Binaryen external kind constants. */ From cabd405f1a0888ddd704b55ec42f9b5c158bf7cf Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 14 Sep 2021 09:20:14 +0300 Subject: [PATCH 05/54] update --- package-lock.json | 14 +- package.json | 2 +- tests/compiler/call-super.optimized.wat | 9 +- tests/compiler/class-implements.optimized.wat | 6 +- .../class-overloading-cast.optimized.wat | 6 +- .../compiler/class-overloading.optimized.wat | 6 +- tests/compiler/class.optimized.wat | 12 +- tests/compiler/constructor.optimized.wat | 9 +- tests/compiler/do.optimized.wat | 6 +- .../empty-exportruntime.optimized.wat | 9 +- tests/compiler/empty-new.optimized.wat | 6 +- tests/compiler/exports.optimized.wat | 6 +- .../exportstar-rereexport.optimized.wat | 6 +- .../extends-baseaggregate.optimized.wat | 12 +- .../compiler/extends-recursive.optimized.wat | 9 +- tests/compiler/features/simd.optimized.wat | 9 +- .../field-initialization.optimized.wat | 12 +- tests/compiler/field.optimized.wat | 12 +- tests/compiler/for.optimized.wat | 6 +- tests/compiler/function-call.optimized.wat | 6 +- .../function-expression.optimized.wat | 9 +- tests/compiler/getter-call.optimized.wat | 6 +- tests/compiler/heap.optimized.wat | 9 +- .../implicit-getter-setter.optimized.wat | 9 +- tests/compiler/infer-array.optimized.wat | 12 +- tests/compiler/infer-generic.optimized.wat | 6 +- tests/compiler/inlining.optimized.wat | 9 +- tests/compiler/instanceof-class.optimized.wat | 6 +- tests/compiler/issues/1095.optimized.wat | 9 +- tests/compiler/issues/1225.optimized.wat | 6 +- tests/compiler/issues/1699.optimized.wat | 12 +- tests/compiler/logical.optimized.wat | 6 +- tests/compiler/managed-cast.optimized.wat | 6 +- tests/compiler/new.optimized.wat | 6 +- tests/compiler/number.optimized.wat | 42 ++-- tests/compiler/object-literal.optimized.wat | 12 +- .../optional-typeparameters.optimized.wat | 6 +- tests/compiler/reexport.optimized.wat | 6 +- tests/compiler/rereexport.optimized.wat | 6 +- tests/compiler/resolve-access.optimized.wat | 12 +- tests/compiler/resolve-binary.optimized.wat | 42 ++-- .../resolve-elementaccess.optimized.wat | 45 ++--- .../resolve-function-expression.optimized.wat | 9 +- tests/compiler/resolve-nested.optimized.wat | 6 +- tests/compiler/resolve-new.optimized.wat | 6 +- .../resolve-propertyaccess.optimized.wat | 9 +- tests/compiler/resolve-ternary.optimized.wat | 42 ++-- tests/compiler/resolve-unary.optimized.wat | 9 +- tests/compiler/rt/finalize.optimized.wat | 6 +- tests/compiler/rt/instanceof.optimized.wat | 6 +- .../runtime-incremental-export.optimized.wat | 9 +- .../rt/runtime-minimal-export.optimized.wat | 9 +- tests/compiler/std-wasi/console.optimized.wat | 32 ++-- tests/compiler/std-wasi/crypto.optimized.wat | 32 ++-- tests/compiler/std-wasi/process.optimized.wat | 32 ++-- .../compiler/std/array-literal.optimized.wat | 12 +- tests/compiler/std/array.optimized.wat | 72 +++---- tests/compiler/std/arraybuffer.optimized.wat | 12 +- tests/compiler/std/dataview.optimized.wat | 12 +- tests/compiler/std/date.optimized.wat | 56 +++--- tests/compiler/std/map.optimized.wat | 12 +- tests/compiler/std/math.optimized.wat | 175 +++++++---------- tests/compiler/std/mod.optimized.wat | 22 +-- tests/compiler/std/new.optimized.wat | 6 +- .../std/operator-overloading.optimized.wat | 6 +- tests/compiler/std/set.optimized.wat | 12 +- tests/compiler/std/static-array.optimized.wat | 12 +- tests/compiler/std/staticarray.optimized.wat | 30 ++- .../std/string-casemapping.optimized.wat | 53 ++---- .../std/string-encoding.optimized.wat | 29 ++- tests/compiler/std/string.optimized.wat | 180 +++++++----------- tests/compiler/std/symbol.optimized.wat | 12 +- tests/compiler/std/typedarray.optimized.wat | 63 +++--- tests/compiler/std/uri.optimized.wat | 54 ++---- tests/compiler/super-inline.optimized.wat | 6 +- tests/compiler/templateliteral.optimized.wat | 45 ++--- tests/compiler/throw.optimized.wat | 6 +- tests/compiler/typeof.optimized.wat | 6 +- tests/compiler/wasi/abort.optimized.wat | 9 +- tests/compiler/wasi/trace.optimized.wat | 62 +++--- tests/compiler/while.optimized.wat | 6 +- 81 files changed, 621 insertions(+), 1001 deletions(-) diff --git a/package-lock.json b/package-lock.json index fea19d39ad..47062c9345 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "102.0.0", + "binaryen": "102.0.0-nightly.20210914", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" @@ -733,9 +733,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "102.0.0", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0.tgz", - "integrity": "sha512-lXemQSay90n49CHlUgWl68/q2/htIJrVrvUkNP3U38RkcyvaqBurIhFadf7NF5v7CT1HzmNufiURE6WRNF1l5g==", + "version": "102.0.0-nightly.20210914", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210914.tgz", + "integrity": "sha512-1yftlaPF4zuAr3YjwTzJ8HTgUDX0XlxO+01JoNCORvOt178pqYIFYACX5zOl8EJ/eIOJc2S1KPG0m4G5gSZbSg==", "bin": { "wasm-opt": "bin/wasm-opt" } @@ -3508,9 +3508,9 @@ "dev": true }, "binaryen": { - "version": "102.0.0", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0.tgz", - "integrity": "sha512-lXemQSay90n49CHlUgWl68/q2/htIJrVrvUkNP3U38RkcyvaqBurIhFadf7NF5v7CT1HzmNufiURE6WRNF1l5g==" + "version": "102.0.0-nightly.20210914", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210914.tgz", + "integrity": "sha512-1yftlaPF4zuAr3YjwTzJ8HTgUDX0XlxO+01JoNCORvOt178pqYIFYACX5zOl8EJ/eIOJc2S1KPG0m4G5gSZbSg==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 1cc5e17db0..6bc1f46057 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "url": "https://github.com/AssemblyScript/assemblyscript/issues" }, "dependencies": { - "binaryen": "102.0.0", + "binaryen": "102.0.0-nightly.20210914", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" diff --git a/tests/compiler/call-super.optimized.wat b/tests/compiler/call-super.optimized.wat index 2d3cd0117c..c317c133a3 100644 --- a/tests/compiler/call-super.optimized.wat +++ b/tests/compiler/call-super.optimized.wat @@ -303,11 +303,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -568,11 +567,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1140,11 +1138,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/class-implements.optimized.wat b/tests/compiler/class-implements.optimized.wat index b993737908..dd39f10565 100644 --- a/tests/compiler/class-implements.optimized.wat +++ b/tests/compiler/class-implements.optimized.wat @@ -325,11 +325,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -590,11 +589,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/class-overloading-cast.optimized.wat b/tests/compiler/class-overloading-cast.optimized.wat index 072354d642..aacc8e7bf1 100644 --- a/tests/compiler/class-overloading-cast.optimized.wat +++ b/tests/compiler/class-overloading-cast.optimized.wat @@ -339,11 +339,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -604,11 +603,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/class-overloading.optimized.wat b/tests/compiler/class-overloading.optimized.wat index 5f2453d86b..06fee45602 100644 --- a/tests/compiler/class-overloading.optimized.wat +++ b/tests/compiler/class-overloading.optimized.wat @@ -363,11 +363,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -628,11 +627,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/class.optimized.wat b/tests/compiler/class.optimized.wat index 13f507fb7a..9360e650dc 100644 --- a/tests/compiler/class.optimized.wat +++ b/tests/compiler/class.optimized.wat @@ -315,11 +315,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -580,11 +579,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1152,11 +1150,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1762,11 +1759,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $0 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray diff --git a/tests/compiler/constructor.optimized.wat b/tests/compiler/constructor.optimized.wat index eb2ba60aac..7c3b457c71 100644 --- a/tests/compiler/constructor.optimized.wat +++ b/tests/compiler/constructor.optimized.wat @@ -380,11 +380,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -645,11 +644,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1217,11 +1215,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/do.optimized.wat b/tests/compiler/do.optimized.wat index ddba997211..7477559668 100644 --- a/tests/compiler/do.optimized.wat +++ b/tests/compiler/do.optimized.wat @@ -303,11 +303,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -568,11 +567,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/empty-exportruntime.optimized.wat b/tests/compiler/empty-exportruntime.optimized.wat index 6cffd17c15..e4cdfc2327 100644 --- a/tests/compiler/empty-exportruntime.optimized.wat +++ b/tests/compiler/empty-exportruntime.optimized.wat @@ -321,11 +321,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -586,11 +585,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1158,11 +1156,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/empty-new.optimized.wat b/tests/compiler/empty-new.optimized.wat index cf783e1948..c96c3c8f5c 100644 --- a/tests/compiler/empty-new.optimized.wat +++ b/tests/compiler/empty-new.optimized.wat @@ -299,11 +299,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -564,11 +563,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/exports.optimized.wat b/tests/compiler/exports.optimized.wat index aeb72df942..09b3a1cc5f 100644 --- a/tests/compiler/exports.optimized.wat +++ b/tests/compiler/exports.optimized.wat @@ -353,11 +353,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -618,11 +617,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/exportstar-rereexport.optimized.wat b/tests/compiler/exportstar-rereexport.optimized.wat index c5d90544eb..38e0cebd64 100644 --- a/tests/compiler/exportstar-rereexport.optimized.wat +++ b/tests/compiler/exportstar-rereexport.optimized.wat @@ -354,11 +354,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -619,11 +618,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/extends-baseaggregate.optimized.wat b/tests/compiler/extends-baseaggregate.optimized.wat index 33fe5c45e3..193d9f1e05 100644 --- a/tests/compiler/extends-baseaggregate.optimized.wat +++ b/tests/compiler/extends-baseaggregate.optimized.wat @@ -321,11 +321,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -586,11 +585,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1158,11 +1156,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1773,11 +1770,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $3 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray diff --git a/tests/compiler/extends-recursive.optimized.wat b/tests/compiler/extends-recursive.optimized.wat index 9647a38b22..0ce1a8fe67 100644 --- a/tests/compiler/extends-recursive.optimized.wat +++ b/tests/compiler/extends-recursive.optimized.wat @@ -310,11 +310,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -575,11 +574,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1456,11 +1454,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $0 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray diff --git a/tests/compiler/features/simd.optimized.wat b/tests/compiler/features/simd.optimized.wat index 6b1df4a9bf..18dd647a3c 100644 --- a/tests/compiler/features/simd.optimized.wat +++ b/tests/compiler/features/simd.optimized.wat @@ -86,11 +86,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -351,11 +350,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -659,11 +657,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/field-initialization.optimized.wat b/tests/compiler/field-initialization.optimized.wat index bc05a86e76..ea3313aea8 100644 --- a/tests/compiler/field-initialization.optimized.wat +++ b/tests/compiler/field-initialization.optimized.wat @@ -328,11 +328,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -593,11 +592,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1165,11 +1163,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1775,11 +1772,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $0 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray diff --git a/tests/compiler/field.optimized.wat b/tests/compiler/field.optimized.wat index 5b26035e25..530368c754 100644 --- a/tests/compiler/field.optimized.wat +++ b/tests/compiler/field.optimized.wat @@ -306,11 +306,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -571,11 +570,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1143,11 +1141,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1749,11 +1746,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $0 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray diff --git a/tests/compiler/for.optimized.wat b/tests/compiler/for.optimized.wat index 671fc61a00..2eff13af99 100644 --- a/tests/compiler/for.optimized.wat +++ b/tests/compiler/for.optimized.wat @@ -303,11 +303,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -568,11 +567,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/function-call.optimized.wat b/tests/compiler/function-call.optimized.wat index 6c96a509aa..82c289ad86 100644 --- a/tests/compiler/function-call.optimized.wat +++ b/tests/compiler/function-call.optimized.wat @@ -341,11 +341,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -606,11 +605,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/function-expression.optimized.wat b/tests/compiler/function-expression.optimized.wat index 9174601471..68dac24dc0 100644 --- a/tests/compiler/function-expression.optimized.wat +++ b/tests/compiler/function-expression.optimized.wat @@ -374,11 +374,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -639,11 +638,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1615,11 +1613,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $0 i32.const 3 i32.eq - select + i32.and if i32.const 2012 call $~lib/rt/itcms/Object#makeGray diff --git a/tests/compiler/getter-call.optimized.wat b/tests/compiler/getter-call.optimized.wat index 64a781b647..c06a49e7cb 100644 --- a/tests/compiler/getter-call.optimized.wat +++ b/tests/compiler/getter-call.optimized.wat @@ -306,11 +306,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -571,11 +570,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/heap.optimized.wat b/tests/compiler/heap.optimized.wat index a7058bf423..959ff6c114 100644 --- a/tests/compiler/heap.optimized.wat +++ b/tests/compiler/heap.optimized.wat @@ -94,11 +94,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -359,11 +358,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -694,11 +692,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/implicit-getter-setter.optimized.wat b/tests/compiler/implicit-getter-setter.optimized.wat index 7ac15c9898..7aa4a5c7d0 100644 --- a/tests/compiler/implicit-getter-setter.optimized.wat +++ b/tests/compiler/implicit-getter-setter.optimized.wat @@ -316,11 +316,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -581,11 +580,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1462,11 +1460,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $0 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray diff --git a/tests/compiler/infer-array.optimized.wat b/tests/compiler/infer-array.optimized.wat index e0719f3a8f..50446b1b97 100644 --- a/tests/compiler/infer-array.optimized.wat +++ b/tests/compiler/infer-array.optimized.wat @@ -342,11 +342,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -607,11 +606,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1179,11 +1177,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -2500,11 +2497,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $3 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray diff --git a/tests/compiler/infer-generic.optimized.wat b/tests/compiler/infer-generic.optimized.wat index 74adc9c662..c1c7df5526 100644 --- a/tests/compiler/infer-generic.optimized.wat +++ b/tests/compiler/infer-generic.optimized.wat @@ -328,11 +328,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -593,11 +592,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/inlining.optimized.wat b/tests/compiler/inlining.optimized.wat index 553f6c931d..abbc64ea91 100644 --- a/tests/compiler/inlining.optimized.wat +++ b/tests/compiler/inlining.optimized.wat @@ -315,11 +315,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -580,11 +579,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1152,11 +1150,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/instanceof-class.optimized.wat b/tests/compiler/instanceof-class.optimized.wat index 416e6b86fd..8d45718efe 100644 --- a/tests/compiler/instanceof-class.optimized.wat +++ b/tests/compiler/instanceof-class.optimized.wat @@ -317,11 +317,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -582,11 +581,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/issues/1095.optimized.wat b/tests/compiler/issues/1095.optimized.wat index d53529b195..18812d0391 100644 --- a/tests/compiler/issues/1095.optimized.wat +++ b/tests/compiler/issues/1095.optimized.wat @@ -310,11 +310,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -575,11 +574,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1200,11 +1198,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $0 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray diff --git a/tests/compiler/issues/1225.optimized.wat b/tests/compiler/issues/1225.optimized.wat index efd7f853c4..c6ee8d7aa5 100644 --- a/tests/compiler/issues/1225.optimized.wat +++ b/tests/compiler/issues/1225.optimized.wat @@ -312,11 +312,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -577,11 +576,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/issues/1699.optimized.wat b/tests/compiler/issues/1699.optimized.wat index 8c314a75f9..c6c32970ab 100644 --- a/tests/compiler/issues/1699.optimized.wat +++ b/tests/compiler/issues/1699.optimized.wat @@ -317,11 +317,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -582,11 +581,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1154,11 +1152,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1769,11 +1766,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $3 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray diff --git a/tests/compiler/logical.optimized.wat b/tests/compiler/logical.optimized.wat index 4746759e4f..6e33905d83 100644 --- a/tests/compiler/logical.optimized.wat +++ b/tests/compiler/logical.optimized.wat @@ -303,11 +303,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -568,11 +567,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/managed-cast.optimized.wat b/tests/compiler/managed-cast.optimized.wat index 54ba89cd8c..fbd0e6f5c3 100644 --- a/tests/compiler/managed-cast.optimized.wat +++ b/tests/compiler/managed-cast.optimized.wat @@ -307,11 +307,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -572,11 +571,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/new.optimized.wat b/tests/compiler/new.optimized.wat index 34913dc47e..3903e2082f 100644 --- a/tests/compiler/new.optimized.wat +++ b/tests/compiler/new.optimized.wat @@ -343,11 +343,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -608,11 +607,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/number.optimized.wat b/tests/compiler/number.optimized.wat index a3546d088b..ca1eb8361f 100644 --- a/tests/compiler/number.optimized.wat +++ b/tests/compiler/number.optimized.wat @@ -350,11 +350,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -615,11 +614,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1187,11 +1185,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -2348,18 +2345,16 @@ i32.load16_u local.set $5 loop $while-continue|3 + local.get $0 + local.get $9 + i64.lt_u local.get $1 local.get $3 local.get $0 i64.sub i64.le_u - i32.const 0 - local.get $0 - local.get $9 - i64.lt_u - select + i32.and if (result i32) - i32.const 1 local.get $9 local.get $0 i64.sub @@ -2373,7 +2368,7 @@ local.get $6 local.get $9 i64.lt_u - select + i32.or else i32.const 0 end @@ -2473,18 +2468,16 @@ i32.load16_u local.set $5 loop $while-continue|6 + local.get $0 + local.get $1 + i64.lt_u local.get $11 local.get $3 local.get $0 i64.sub i64.le_u - i32.const 0 - local.get $0 - local.get $1 - i64.lt_u - select + i32.and if (result i32) - i32.const 1 local.get $1 local.get $0 i64.sub @@ -2498,7 +2491,7 @@ local.get $1 local.get $6 i64.gt_u - select + i32.or else i32.const 0 end @@ -3446,11 +3439,10 @@ local.tee $3 i32.const 21 i32.le_s - i32.const 0 local.get $0 local.get $3 i32.le_s - select + i32.and if (result i32) loop $for-loop|0 local.get $0 @@ -3485,11 +3477,10 @@ local.get $3 i32.const 21 i32.le_s - i32.const 0 local.get $3 i32.const 0 i32.gt_s - select + i32.and if (result i32) local.get $3 i32.const 1 @@ -3516,11 +3507,10 @@ local.get $3 i32.const 0 i32.le_s - i32.const 0 local.get $3 i32.const -6 i32.gt_s - select + i32.and if (result i32) i32.const 2 local.get $3 diff --git a/tests/compiler/object-literal.optimized.wat b/tests/compiler/object-literal.optimized.wat index d97952fd9d..868da53a1a 100644 --- a/tests/compiler/object-literal.optimized.wat +++ b/tests/compiler/object-literal.optimized.wat @@ -225,11 +225,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $0 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray @@ -375,11 +374,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -640,11 +638,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1217,11 +1214,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/optional-typeparameters.optimized.wat b/tests/compiler/optional-typeparameters.optimized.wat index df70d58d8c..0e3d4e65af 100644 --- a/tests/compiler/optional-typeparameters.optimized.wat +++ b/tests/compiler/optional-typeparameters.optimized.wat @@ -315,11 +315,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -580,11 +579,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/reexport.optimized.wat b/tests/compiler/reexport.optimized.wat index 2b4310e1c7..109c02b8be 100644 --- a/tests/compiler/reexport.optimized.wat +++ b/tests/compiler/reexport.optimized.wat @@ -392,11 +392,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -657,11 +656,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/rereexport.optimized.wat b/tests/compiler/rereexport.optimized.wat index 4c61049979..399fe33f42 100644 --- a/tests/compiler/rereexport.optimized.wat +++ b/tests/compiler/rereexport.optimized.wat @@ -354,11 +354,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -619,11 +618,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/resolve-access.optimized.wat b/tests/compiler/resolve-access.optimized.wat index 9c86007b10..075c966aee 100644 --- a/tests/compiler/resolve-access.optimized.wat +++ b/tests/compiler/resolve-access.optimized.wat @@ -328,11 +328,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -593,11 +592,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1165,11 +1163,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -3158,11 +3155,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $1 i32.const 3 i32.eq - select + i32.and if local.get $2 call $~lib/rt/itcms/Object#makeGray diff --git a/tests/compiler/resolve-binary.optimized.wat b/tests/compiler/resolve-binary.optimized.wat index 77ecbd6323..5f4ddb6f76 100644 --- a/tests/compiler/resolve-binary.optimized.wat +++ b/tests/compiler/resolve-binary.optimized.wat @@ -644,11 +644,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -909,11 +908,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1481,11 +1479,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -2527,18 +2524,16 @@ i32.load16_u local.set $5 loop $while-continue|3 + local.get $0 + local.get $9 + i64.lt_u local.get $1 local.get $3 local.get $0 i64.sub i64.le_u - i32.const 0 - local.get $0 - local.get $9 - i64.lt_u - select + i32.and if (result i32) - i32.const 1 local.get $9 local.get $0 i64.sub @@ -2552,7 +2547,7 @@ local.get $6 local.get $9 i64.lt_u - select + i32.or else i32.const 0 end @@ -2652,18 +2647,16 @@ i32.load16_u local.set $5 loop $while-continue|6 + local.get $0 + local.get $1 + i64.lt_u local.get $11 local.get $3 local.get $0 i64.sub i64.le_u - i32.const 0 - local.get $0 - local.get $1 - i64.lt_u - select + i32.and if (result i32) - i32.const 1 local.get $1 local.get $0 i64.sub @@ -2677,7 +2670,7 @@ local.get $1 local.get $6 i64.gt_u - select + i32.or else i32.const 0 end @@ -3625,11 +3618,10 @@ local.tee $3 i32.const 21 i32.le_s - i32.const 0 local.get $0 local.get $3 i32.le_s - select + i32.and if (result i32) loop $for-loop|0 local.get $0 @@ -3664,11 +3656,10 @@ local.get $3 i32.const 21 i32.le_s - i32.const 0 local.get $3 i32.const 0 i32.gt_s - select + i32.and if (result i32) local.get $3 i32.const 1 @@ -3695,11 +3686,10 @@ local.get $3 i32.const 0 i32.le_s - i32.const 0 local.get $3 i32.const -6 i32.gt_s - select + i32.and if (result i32) i32.const 2 local.get $3 diff --git a/tests/compiler/resolve-elementaccess.optimized.wat b/tests/compiler/resolve-elementaccess.optimized.wat index 6f78d8f528..c543058aae 100644 --- a/tests/compiler/resolve-elementaccess.optimized.wat +++ b/tests/compiler/resolve-elementaccess.optimized.wat @@ -380,11 +380,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -645,11 +644,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1217,11 +1215,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1827,11 +1824,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $0 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray @@ -2147,18 +2143,16 @@ i32.load16_u local.set $5 loop $while-continue|3 + local.get $0 + local.get $9 + i64.lt_u local.get $1 local.get $3 local.get $0 i64.sub i64.le_u - i32.const 0 - local.get $0 - local.get $9 - i64.lt_u - select + i32.and if (result i32) - i32.const 1 local.get $9 local.get $0 i64.sub @@ -2172,7 +2166,7 @@ local.get $6 local.get $9 i64.lt_u - select + i32.or else i32.const 0 end @@ -2272,18 +2266,16 @@ i32.load16_u local.set $5 loop $while-continue|6 + local.get $0 + local.get $1 + i64.lt_u local.get $11 local.get $3 local.get $0 i64.sub i64.le_u - i32.const 0 - local.get $0 - local.get $1 - i64.lt_u - select + i32.and if (result i32) - i32.const 1 local.get $1 local.get $0 i64.sub @@ -2297,7 +2289,7 @@ local.get $1 local.get $6 i64.gt_u - select + i32.or else i32.const 0 end @@ -3349,11 +3341,10 @@ local.tee $4 i32.const 21 i32.le_s - i32.const 0 local.get $1 local.get $4 i32.le_s - select + i32.and if (result i32) loop $for-loop|0 local.get $1 @@ -3388,11 +3379,10 @@ local.get $4 i32.const 21 i32.le_s - i32.const 0 local.get $4 i32.const 0 i32.gt_s - select + i32.and if (result i32) local.get $4 i32.const 1 @@ -3419,11 +3409,10 @@ local.get $4 i32.const 0 i32.le_s - i32.const 0 local.get $4 i32.const -6 i32.gt_s - select + i32.and if (result i32) i32.const 2 local.get $4 diff --git a/tests/compiler/resolve-function-expression.optimized.wat b/tests/compiler/resolve-function-expression.optimized.wat index 6ebaf38a75..41030633a4 100644 --- a/tests/compiler/resolve-function-expression.optimized.wat +++ b/tests/compiler/resolve-function-expression.optimized.wat @@ -343,11 +343,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -608,11 +607,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1180,11 +1178,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/resolve-nested.optimized.wat b/tests/compiler/resolve-nested.optimized.wat index 9bcbc08a53..b82e2b620b 100644 --- a/tests/compiler/resolve-nested.optimized.wat +++ b/tests/compiler/resolve-nested.optimized.wat @@ -312,11 +312,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -577,11 +576,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/resolve-new.optimized.wat b/tests/compiler/resolve-new.optimized.wat index f3c97f501e..82f27d5f1e 100644 --- a/tests/compiler/resolve-new.optimized.wat +++ b/tests/compiler/resolve-new.optimized.wat @@ -308,11 +308,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -573,11 +572,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/resolve-propertyaccess.optimized.wat b/tests/compiler/resolve-propertyaccess.optimized.wat index 23f5f2986e..44e306ab03 100644 --- a/tests/compiler/resolve-propertyaccess.optimized.wat +++ b/tests/compiler/resolve-propertyaccess.optimized.wat @@ -343,11 +343,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -608,11 +607,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1180,11 +1178,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/resolve-ternary.optimized.wat b/tests/compiler/resolve-ternary.optimized.wat index 456b46f485..20bccd697f 100644 --- a/tests/compiler/resolve-ternary.optimized.wat +++ b/tests/compiler/resolve-ternary.optimized.wat @@ -347,11 +347,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -612,11 +611,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1184,11 +1182,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -2229,18 +2226,16 @@ i32.load16_u local.set $5 loop $while-continue|3 + local.get $0 + local.get $9 + i64.lt_u local.get $1 local.get $3 local.get $0 i64.sub i64.le_u - i32.const 0 - local.get $0 - local.get $9 - i64.lt_u - select + i32.and if (result i32) - i32.const 1 local.get $9 local.get $0 i64.sub @@ -2254,7 +2249,7 @@ local.get $6 local.get $9 i64.lt_u - select + i32.or else i32.const 0 end @@ -2354,18 +2349,16 @@ i32.load16_u local.set $5 loop $while-continue|6 + local.get $0 + local.get $1 + i64.lt_u local.get $11 local.get $3 local.get $0 i64.sub i64.le_u - i32.const 0 - local.get $0 - local.get $1 - i64.lt_u - select + i32.and if (result i32) - i32.const 1 local.get $1 local.get $0 i64.sub @@ -2379,7 +2372,7 @@ local.get $1 local.get $6 i64.gt_u - select + i32.or else i32.const 0 end @@ -3327,11 +3320,10 @@ local.tee $3 i32.const 21 i32.le_s - i32.const 0 local.get $0 local.get $3 i32.le_s - select + i32.and if (result i32) loop $for-loop|0 local.get $0 @@ -3366,11 +3358,10 @@ local.get $3 i32.const 21 i32.le_s - i32.const 0 local.get $3 i32.const 0 i32.gt_s - select + i32.and if (result i32) local.get $3 i32.const 1 @@ -3397,11 +3388,10 @@ local.get $3 i32.const 0 i32.le_s - i32.const 0 local.get $3 i32.const -6 i32.gt_s - select + i32.and if (result i32) i32.const 2 local.get $3 diff --git a/tests/compiler/resolve-unary.optimized.wat b/tests/compiler/resolve-unary.optimized.wat index 316609fa6b..229eb5d2db 100644 --- a/tests/compiler/resolve-unary.optimized.wat +++ b/tests/compiler/resolve-unary.optimized.wat @@ -363,11 +363,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -628,11 +627,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1200,11 +1198,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/rt/finalize.optimized.wat b/tests/compiler/rt/finalize.optimized.wat index bebac269d6..7216f514c5 100644 --- a/tests/compiler/rt/finalize.optimized.wat +++ b/tests/compiler/rt/finalize.optimized.wat @@ -306,11 +306,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -571,11 +570,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/rt/instanceof.optimized.wat b/tests/compiler/rt/instanceof.optimized.wat index 0cb166024f..95464f904f 100644 --- a/tests/compiler/rt/instanceof.optimized.wat +++ b/tests/compiler/rt/instanceof.optimized.wat @@ -346,11 +346,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -611,11 +610,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/rt/runtime-incremental-export.optimized.wat b/tests/compiler/rt/runtime-incremental-export.optimized.wat index 6cffd17c15..e4cdfc2327 100644 --- a/tests/compiler/rt/runtime-incremental-export.optimized.wat +++ b/tests/compiler/rt/runtime-incremental-export.optimized.wat @@ -321,11 +321,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -586,11 +585,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1158,11 +1156,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/rt/runtime-minimal-export.optimized.wat b/tests/compiler/rt/runtime-minimal-export.optimized.wat index a2c0f41a79..d9a5761d85 100644 --- a/tests/compiler/rt/runtime-minimal-export.optimized.wat +++ b/tests/compiler/rt/runtime-minimal-export.optimized.wat @@ -102,11 +102,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -367,11 +366,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -675,11 +673,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/std-wasi/console.optimized.wat b/tests/compiler/std-wasi/console.optimized.wat index d2f990c65d..57a21bc969 100644 --- a/tests/compiler/std-wasi/console.optimized.wat +++ b/tests/compiler/std-wasi/console.optimized.wat @@ -347,16 +347,15 @@ i32.const 55296 i32.eq if + local.get $3 + i32.const 56320 + i32.lt_u local.get $4 local.get $0 i32.const 2 i32.add i32.gt_u - i32.const 0 - local.get $3 - i32.const 56320 - i32.lt_u - select + i32.and if local.get $0 i32.load16_u offset=2 @@ -1072,11 +1071,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1337,11 +1335,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1645,11 +1642,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -2109,18 +2105,17 @@ i32.const 2 i32.add else + local.get $6 + i32.const 64512 + i32.and + i32.const 55296 + i32.eq local.get $1 local.get $4 i32.const 2 i32.add i32.gt_u - i32.const 0 - local.get $6 - i32.const 64512 i32.and - i32.const 55296 - i32.eq - select if local.get $4 i32.load16_u offset=2 @@ -2972,11 +2967,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $3 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray diff --git a/tests/compiler/std-wasi/crypto.optimized.wat b/tests/compiler/std-wasi/crypto.optimized.wat index b0eee389d7..d6280327bb 100644 --- a/tests/compiler/std-wasi/crypto.optimized.wat +++ b/tests/compiler/std-wasi/crypto.optimized.wat @@ -303,16 +303,15 @@ i32.const 55296 i32.eq if + local.get $3 + i32.const 56320 + i32.lt_u local.get $4 local.get $0 i32.const 2 i32.add i32.gt_u - i32.const 0 - local.get $3 - i32.const 56320 - i32.lt_u - select + i32.and if local.get $0 i32.load16_u offset=2 @@ -946,11 +945,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1211,11 +1209,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1788,11 +1785,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -2406,11 +2402,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $0 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray @@ -4382,18 +4377,17 @@ i32.const 2 i32.add else + local.get $4 + i32.const 64512 + i32.and + i32.const 55296 + i32.eq local.get $3 local.get $1 i32.const 2 i32.add i32.gt_u - i32.const 0 - local.get $4 - i32.const 64512 i32.and - i32.const 55296 - i32.eq - select if local.get $1 i32.load16_u offset=2 diff --git a/tests/compiler/std-wasi/process.optimized.wat b/tests/compiler/std-wasi/process.optimized.wat index f0f6ba7829..9f2f513182 100644 --- a/tests/compiler/std-wasi/process.optimized.wat +++ b/tests/compiler/std-wasi/process.optimized.wat @@ -333,16 +333,15 @@ i32.const 55296 i32.eq if + local.get $3 + i32.const 56320 + i32.lt_u local.get $4 local.get $0 i32.const 2 i32.add i32.gt_u - i32.const 0 - local.get $3 - i32.const 56320 - i32.lt_u - select + i32.and if local.get $0 i32.load16_u offset=2 @@ -1058,11 +1057,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1323,11 +1321,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1631,11 +1628,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -2093,18 +2089,17 @@ i32.const 2 i32.add else + local.get $4 + i32.const 64512 + i32.and + i32.const 55296 + i32.eq local.get $3 local.get $1 i32.const 2 i32.add i32.gt_u - i32.const 0 - local.get $4 - i32.const 64512 i32.and - i32.const 55296 - i32.eq - select if local.get $1 i32.load16_u offset=2 @@ -2985,11 +2980,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $3 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray diff --git a/tests/compiler/std/array-literal.optimized.wat b/tests/compiler/std/array-literal.optimized.wat index dd66dff450..3487f46c6b 100644 --- a/tests/compiler/std/array-literal.optimized.wat +++ b/tests/compiler/std/array-literal.optimized.wat @@ -401,11 +401,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -666,11 +665,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1238,11 +1236,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1849,11 +1846,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $3 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index 3432398cde..f84cff29fe 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -1015,11 +1015,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1280,11 +1279,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1857,11 +1855,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -2496,11 +2493,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $3 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray @@ -8929,15 +8925,14 @@ (local $5 i32) (local $6 i32) local.get $1 - i32.const 0 - i32.const 0 + i32.eqz local.get $0 + i32.eqz local.get $0 local.get $1 i32.eq - select - select - i32.eqz + i32.or + i32.or if i32.const 0 return @@ -10094,18 +10089,16 @@ i32.load16_u local.set $3 loop $while-continue|3 + local.get $1 + local.get $10 + i64.lt_u local.get $2 local.get $4 local.get $1 i64.sub i64.le_u - i32.const 0 - local.get $1 - local.get $10 - i64.lt_u - select + i32.and if (result i32) - i32.const 1 local.get $10 local.get $1 i64.sub @@ -10119,7 +10112,7 @@ local.get $7 local.get $10 i64.lt_u - select + i32.or else i32.const 0 end @@ -10221,18 +10214,16 @@ i32.load16_u local.set $3 loop $while-continue|6 + local.get $1 + local.get $2 + i64.lt_u local.get $12 local.get $4 local.get $1 i64.sub i64.le_u - i32.const 0 - local.get $1 - local.get $2 - i64.lt_u - select + i32.and if (result i32) - i32.const 1 local.get $2 local.get $1 i64.sub @@ -10246,7 +10237,7 @@ local.get $2 local.get $7 i64.gt_u - select + i32.or else i32.const 0 end @@ -10293,11 +10284,10 @@ local.tee $4 i32.const 21 i32.le_s - i32.const 0 local.get $1 local.get $4 i32.le_s - select + i32.and if (result i32) loop $for-loop|0 local.get $1 @@ -10332,11 +10322,10 @@ local.get $4 i32.const 21 i32.le_s - i32.const 0 local.get $4 i32.const 0 i32.gt_s - select + i32.and if (result i32) local.get $4 i32.const 1 @@ -10363,11 +10352,10 @@ local.get $4 i32.const 0 i32.le_s - i32.const 0 local.get $4 i32.const -6 i32.gt_s - select + i32.and if (result i32) i32.const 2 local.get $4 @@ -19543,7 +19531,6 @@ local.get $2 i32.lt_s if - i32.const 1 i32.const 1 local.get $0 i32.const 2 @@ -19552,12 +19539,12 @@ i32.add f32.load local.tee $11 - local.get $11 - f32.ne - local.get $11 f32.const nan:0x400000 f32.eq - select + local.get $11 + local.get $11 + f32.ne + i32.or br_if $__inlined_func$~lib/array/Array#includes drop local.get $0 @@ -19609,7 +19596,6 @@ local.get $2 i32.lt_s if - i32.const 1 i32.const 1 local.get $0 i32.const 3 @@ -19618,12 +19604,12 @@ i32.add f64.load local.tee $9 - local.get $9 - f64.ne - local.get $9 f64.const nan:0x8000000000000 f64.eq - select + local.get $9 + local.get $9 + f64.ne + i32.or br_if $__inlined_func$~lib/array/Array#includes drop local.get $0 diff --git a/tests/compiler/std/arraybuffer.optimized.wat b/tests/compiler/std/arraybuffer.optimized.wat index 9558268068..09bd04c359 100644 --- a/tests/compiler/std/arraybuffer.optimized.wat +++ b/tests/compiler/std/arraybuffer.optimized.wat @@ -318,11 +318,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -583,11 +582,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1155,11 +1153,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -2666,11 +2663,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $0 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray diff --git a/tests/compiler/std/dataview.optimized.wat b/tests/compiler/std/dataview.optimized.wat index 85d075fc59..8026b5c96d 100644 --- a/tests/compiler/std/dataview.optimized.wat +++ b/tests/compiler/std/dataview.optimized.wat @@ -324,11 +324,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -589,11 +588,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1161,11 +1159,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1771,11 +1768,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $0 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray diff --git a/tests/compiler/std/date.optimized.wat b/tests/compiler/std/date.optimized.wat index f3d2b4092c..b0020c1234 100644 --- a/tests/compiler/std/date.optimized.wat +++ b/tests/compiler/std/date.optimized.wat @@ -685,11 +685,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -950,11 +949,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1522,11 +1520,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -3936,11 +3933,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $3 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray @@ -4112,6 +4108,7 @@ loop $while-continue|0 block $__inlined_func$~lib/util/string/isSpace (result i32) local.get $1 + local.tee $3 i32.const 128 i32.or i32.const 160 @@ -4128,7 +4125,7 @@ br_if $__inlined_func$~lib/util/string/isSpace drop i32.const 1 - local.get $1 + local.get $3 i32.const -8192 i32.add i32.const 10 @@ -4137,31 +4134,31 @@ drop block $break|0 block $case6|0 - local.get $1 + local.get $3 i32.const 5760 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 8232 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 8233 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 8239 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 8287 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 12288 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 65279 i32.eq br_if $case6|0 @@ -4188,15 +4185,14 @@ end i32.const 1 local.set $3 - i32.const 1 local.get $1 i32.const 43 i32.eq local.get $1 i32.const 45 i32.eq - select - if + i32.or + if (result i32) local.get $2 i32.const 1 i32.sub @@ -4218,16 +4214,15 @@ i32.add local.tee $0 i32.load16_u - local.set $1 + else + local.get $1 end + i32.const 48 + i32.eq local.get $2 i32.const 2 i32.gt_s - i32.const 0 - local.get $1 - i32.const 48 - i32.eq - select + i32.and if block $break|1 block $case2|1 @@ -4544,13 +4539,11 @@ local.tee $1 i32.const 0 i32.lt_s - local.set $2 - i32.const 1 + local.tee $2 local.get $1 i32.const 10000 i32.ge_s - local.get $2 - select + i32.or if global.get $~lib/memory/__stack_pointer local.tee $3 @@ -9522,7 +9515,6 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - i32.const 0 i32.const 1868 i32.load i32.const 1 @@ -9530,6 +9522,7 @@ i32.const 1 i32.shl local.tee $2 + i32.eqz local.get $0 i32.const 20 i32.sub @@ -9544,8 +9537,7 @@ i32.shl local.tee $1 i32.gt_u - select - i32.eqz + i32.or if global.get $~lib/memory/__stack_pointer i32.const 4 diff --git a/tests/compiler/std/map.optimized.wat b/tests/compiler/std/map.optimized.wat index 1123142e58..c49e298fee 100644 --- a/tests/compiler/std/map.optimized.wat +++ b/tests/compiler/std/map.optimized.wat @@ -332,11 +332,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -597,11 +596,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1169,11 +1167,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1779,11 +1776,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $0 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray diff --git a/tests/compiler/std/math.optimized.wat b/tests/compiler/std/math.optimized.wat index decb92239f..1e82a3719c 100644 --- a/tests/compiler/std/math.optimized.wat +++ b/tests/compiler/std/math.optimized.wat @@ -316,11 +316,10 @@ local.get $1 local.get $1 f64.ne - i32.const 0 local.get $0 local.get $0 f64.ne - select + i32.and br_if $__inlined_func$std/math/ulperr drop local.get $0 @@ -415,11 +414,10 @@ local.get $1 local.get $1 f32.ne - i32.const 0 local.get $0 local.get $0 f32.ne - select + i32.and br_if $__inlined_func$std/math/ulperrf drop local.get $0 @@ -978,7 +976,6 @@ (local $7 f64) i32.const 1 local.set $3 - i32.const 1 local.get $0 i64.reinterpret_f64 i64.const 32 @@ -990,7 +987,7 @@ local.get $2 i32.const 1071284858 i32.lt_u - select + i32.or if local.get $2 i32.const -1074790400 @@ -1498,7 +1495,6 @@ (local $6 f32) i32.const 1 local.set $3 - i32.const 1 local.get $0 i32.reinterpret_f32 local.tee $2 @@ -1507,7 +1503,7 @@ local.get $2 i32.const 1054086096 i32.lt_u - select + i32.or if local.get $2 i32.const -1082130432 @@ -1687,16 +1683,15 @@ i32.eq br_if $~lib/util/math/logf_lut|inlined.0 drop - i32.const 1 + local.get $1 + i32.const 31 + i32.shr_u local.get $1 i32.const 1 i32.shl i32.const -16777216 i32.ge_u - local.get $1 - i32.const 31 - i32.shr_u - select + i32.or if local.get $0 local.get $0 @@ -1868,14 +1863,13 @@ i32.const 1071644672 i32.lt_u if - local.get $2 - i32.const 1048576 - i32.ge_u - i32.const 0 local.get $2 i32.const 1045430272 i32.lt_u - select + local.get $2 + i32.const 1048576 + i32.ge_u + i32.and if local.get $0 return @@ -2075,14 +2069,13 @@ i32.const 1056964608 i32.lt_u if - local.get $1 - i32.const 8388608 - i32.ge_u - i32.const 0 local.get $1 i32.const 964689920 i32.lt_u - select + local.get $1 + i32.const 8388608 + i32.ge_u + i32.and if local.get $0 return @@ -2841,7 +2834,6 @@ (local $9 i32) (local $10 i32) block $__inlined_func$~lib/math/NativeMath.atan2 - i32.const 1 local.get $0 local.tee $4 local.get $4 @@ -2849,7 +2841,7 @@ local.get $1 local.get $1 f64.ne - select + i32.or if local.get $1 local.get $4 @@ -2961,7 +2953,6 @@ local.set $4 br $__inlined_func$~lib/math/NativeMath.atan2 end - i32.const 1 local.get $7 i32.const 2146435072 i32.eq @@ -2970,7 +2961,7 @@ i32.const 67108864 i32.add i32.gt_u - select + i32.or br_if $folding-inner0 local.get $5 local.get $7 @@ -3053,14 +3044,13 @@ (local $3 i32) (local $4 i32) block $folding-inner0 - i32.const 1 local.get $0 local.get $0 f32.ne local.get $1 local.get $1 f32.ne - select + i32.or if local.get $1 local.get $0 @@ -3158,7 +3148,6 @@ end return end - i32.const 1 local.get $3 i32.const 2139095040 i32.eq @@ -3167,7 +3156,7 @@ i32.const 218103808 i32.add i32.gt_u - select + i32.or br_if $folding-inner0 local.get $4 local.get $3 @@ -4805,14 +4794,13 @@ i64.shl f64.reinterpret_i64 local.set $4 - i32.const 1 - local.get $3 - i32.const 56 - i32.gt_s local.get $3 i32.const 0 i32.lt_s - select + local.get $3 + i32.const 56 + i32.gt_s + i32.or if local.get $0 local.get $1 @@ -5347,14 +5335,13 @@ i32.shl f32.reinterpret_i32 local.set $4 - i32.const 1 - local.get $3 - i32.const 56 - i32.gt_s local.get $3 i32.const 0 i32.lt_s - select + local.get $3 + i32.const 56 + i32.gt_s + i32.or if local.get $0 local.get $1 @@ -5918,8 +5905,8 @@ local.get $3 f64.reinterpret_i64 local.set $0 - i64.const 0 local.get $2 + i64.eqz local.get $3 i64.const 52 i64.shr_u @@ -5927,8 +5914,7 @@ local.tee $8 i32.const 2047 i32.eq - select - i64.eqz + i32.or if local.get $0 return @@ -6080,19 +6066,18 @@ local.get $0 local.get $1 f32.add + local.get $4 + i32.eqz + local.get $5 + i32.const 2139095040 + i32.ge_u + i32.or local.get $5 local.get $4 i32.sub i32.const 209715200 i32.ge_u - i32.const 1 - i32.const 0 - local.get $4 - local.get $5 - i32.const 2139095040 - i32.ge_u - select - select + i32.or br_if $__inlined_func$~lib/math/NativeMathf.hypot drop f32.const 1 @@ -6158,7 +6143,6 @@ (local $6 f64) (local $7 f64) (local $8 i32) - i32.const 1 local.get $0 i64.reinterpret_f64 local.tee $5 @@ -6171,7 +6155,7 @@ local.get $1 i32.const 1048576 i32.lt_u - select + i32.or if local.get $5 i64.const 1 @@ -6218,12 +6202,11 @@ local.get $5 i64.const 32 i64.shl - i64.const 1 + i64.eqz local.get $1 i32.const 1072693248 i32.eq - select - i64.eqz + i32.and if f64.const 0 return @@ -6359,7 +6342,6 @@ (local $5 f32) (local $6 i32) (local $7 f32) - i32.const 1 local.get $0 i32.reinterpret_f32 local.tee $1 @@ -6368,7 +6350,7 @@ local.get $1 i32.const 8388608 i32.lt_u - select + i32.or if local.get $1 i32.const 1 @@ -6790,16 +6772,15 @@ i32.eq br_if $~lib/util/math/log2f_lut|inlined.0 drop - i32.const 1 + local.get $3 + i32.const 31 + i32.shr_u local.get $3 i32.const 1 i32.shl i32.const -16777216 i32.ge_u - local.get $3 - i32.const 31 - i32.shr_u - select + i32.or if local.get $0 local.get $0 @@ -6940,11 +6921,11 @@ i64.const 2047 i64.and local.set $6 - i32.const 1 - local.get $1 - local.get $1 - f64.ne - i32.const 1 + local.get $4 + i64.const 1 + i64.shl + local.tee $7 + i64.eqz local.get $0 i64.reinterpret_f64 local.tee $3 @@ -6955,13 +6936,11 @@ local.tee $5 i64.const 2047 i64.eq - local.get $4 - i64.const 1 - i64.shl - local.tee $7 - i64.eqz - select - select + i32.or + local.get $1 + local.get $1 + f64.ne + i32.or if local.get $0 local.get $1 @@ -7459,7 +7438,6 @@ local.get $1 local.get $4 f64.add - i32.const 1 local.get $6 i64.const 1 i64.shl @@ -7470,7 +7448,7 @@ i64.shl i64.const -9007199254740992 i64.gt_u - select + i32.or br_if $~lib/util/math/pow_lut|inlined.0 drop f64.const nan:0x8000000000000 @@ -8185,7 +8163,6 @@ local.get $0 local.get $1 f32.add - i32.const 1 local.get $4 i32.const 1 i32.shl @@ -8196,7 +8173,7 @@ i32.shl i32.const -16777216 i32.gt_u - select + i32.or br_if $~lib/util/math/powf_lut|inlined.0 drop f32.const nan:0x400000 @@ -8732,11 +8709,10 @@ i64.const 2047 i64.and local.set $5 - i32.const 1 - local.get $1 - local.get $1 - f64.ne - i32.const 1 + local.get $4 + i64.const 1 + i64.shl + i64.eqz local.get $0 i64.reinterpret_f64 local.tee $2 @@ -8747,12 +8723,11 @@ local.tee $3 i64.const 2047 i64.eq - local.get $4 - i64.const 1 - i64.shl - i64.eqz - select - select + i32.or + local.get $1 + local.get $1 + f64.ne + i32.or if local.get $0 local.get $1 @@ -8941,19 +8916,17 @@ i64.add i64.eq if (result i32) - i32.const 1 local.get $6 i32.const 1 i32.and - i32.const 0 local.get $1 local.get $7 f64.eq - select + i32.and local.get $1 local.get $7 f64.lt - select + i32.or else i32.const 0 end @@ -9185,19 +9158,17 @@ i32.add i32.eq if (result i32) - i32.const 1 local.get $6 i32.const 1 i32.and - i32.const 0 local.get $1 local.get $7 f32.eq - select + i32.and local.get $1 local.get $7 f32.lt - select + i32.or else i32.const 0 end @@ -44564,11 +44535,10 @@ local.tee $0 f64.const 1 f64.lt - i32.const 0 local.get $0 f64.const 0 f64.ge - select + i32.and i32.eqz if i32.const 0 @@ -44638,11 +44608,10 @@ local.tee $6 f32.const 1 f32.lt - i32.const 0 local.get $6 f32.const 0 f32.ge - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/std/mod.optimized.wat b/tests/compiler/std/mod.optimized.wat index 3a905d40e0..c2a8060c2c 100644 --- a/tests/compiler/std/mod.optimized.wat +++ b/tests/compiler/std/mod.optimized.wat @@ -43,11 +43,11 @@ i64.const 2047 i64.and local.set $7 - i32.const 1 - local.get $4 - local.get $4 - f64.ne - i32.const 1 + local.get $5 + i64.const 1 + i64.shl + local.tee $8 + i64.eqz local.get $0 i64.reinterpret_f64 local.tee $3 @@ -58,13 +58,11 @@ local.tee $6 i64.const 2047 i64.eq - local.get $5 - i64.const 1 - i64.shl - local.tee $8 - i64.eqz - select - select + i32.or + local.get $4 + local.get $4 + f64.ne + i32.or if local.get $0 local.get $4 diff --git a/tests/compiler/std/new.optimized.wat b/tests/compiler/std/new.optimized.wat index 715b79212f..3aa1eed401 100644 --- a/tests/compiler/std/new.optimized.wat +++ b/tests/compiler/std/new.optimized.wat @@ -308,11 +308,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -573,11 +572,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/std/operator-overloading.optimized.wat b/tests/compiler/std/operator-overloading.optimized.wat index 4e367f31bb..92f138b46f 100644 --- a/tests/compiler/std/operator-overloading.optimized.wat +++ b/tests/compiler/std/operator-overloading.optimized.wat @@ -367,11 +367,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -632,11 +631,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/std/set.optimized.wat b/tests/compiler/std/set.optimized.wat index a4618f1880..d537484f7c 100644 --- a/tests/compiler/std/set.optimized.wat +++ b/tests/compiler/std/set.optimized.wat @@ -325,11 +325,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -590,11 +589,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1162,11 +1160,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1772,11 +1769,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $0 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray diff --git a/tests/compiler/std/static-array.optimized.wat b/tests/compiler/std/static-array.optimized.wat index 6b6ce45d59..f638f7195c 100644 --- a/tests/compiler/std/static-array.optimized.wat +++ b/tests/compiler/std/static-array.optimized.wat @@ -363,11 +363,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -628,11 +627,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1200,11 +1198,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -2804,11 +2801,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $3 i32.const 3 i32.eq - select + i32.and if local.get $2 call $~lib/rt/itcms/Object#makeGray diff --git a/tests/compiler/std/staticarray.optimized.wat b/tests/compiler/std/staticarray.optimized.wat index c065279b3b..cb474580b8 100644 --- a/tests/compiler/std/staticarray.optimized.wat +++ b/tests/compiler/std/staticarray.optimized.wat @@ -498,11 +498,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -763,11 +762,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1340,11 +1338,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -2864,11 +2861,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $3 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray @@ -5420,7 +5416,6 @@ local.get $16 i32.gt_s if - i32.const 1 i32.const 1 local.get $16 i32.const 3 @@ -5429,12 +5424,12 @@ i32.add f64.load local.tee $7 - local.get $7 - f64.ne - local.get $7 f64.const nan:0x8000000000000 f64.eq - select + local.get $7 + local.get $7 + f64.ne + i32.or br_if $__inlined_func$~lib/staticarray/StaticArray#includes drop local.get $16 @@ -5487,7 +5482,6 @@ local.get $16 i32.gt_s if - i32.const 1 i32.const 1 local.get $16 i32.const 2 @@ -5496,12 +5490,12 @@ i32.add f32.load local.tee $8 - local.get $8 - f32.ne - local.get $8 f32.const nan:0x400000 f32.eq - select + local.get $8 + local.get $8 + f32.ne + i32.or br_if $__inlined_func$~lib/staticarray/StaticArray#includes drop local.get $16 diff --git a/tests/compiler/std/string-casemapping.optimized.wat b/tests/compiler/std/string-casemapping.optimized.wat index 2dcb63d1cd..478c200712 100644 --- a/tests/compiler/std/string-casemapping.optimized.wat +++ b/tests/compiler/std/string-casemapping.optimized.wat @@ -756,11 +756,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1021,11 +1020,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1593,11 +1591,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -3935,18 +3932,17 @@ i32.shr_u if block $for-continue|0 - local.get $8 - i32.const 1 - i32.sub - local.get $7 - i32.gt_u - i32.const 0 local.get $2 i32.const 55295 i32.sub i32.const 1025 i32.lt_u - select + local.get $8 + i32.const 1 + i32.sub + local.get $7 + i32.gt_u + i32.and if local.get $7 i32.const 1 @@ -6259,7 +6255,6 @@ local.set $9 br $__inlined_func$~lib/string/String#codePointAt end - i32.const 1 local.get $9 i32.const 1 i32.eq @@ -6270,7 +6265,7 @@ i32.and i32.const 55296 i32.ne - select + i32.or br_if $__inlined_func$~lib/string/String#codePointAt local.get $5 i32.load16_u offset=2 @@ -6307,7 +6302,6 @@ local.set $9 br $__inlined_func$~lib/string/String#codePointAt0 end - i32.const 1 local.get $9 i32.const 2 i32.eq @@ -6318,7 +6312,7 @@ i32.and i32.const 55296 i32.ne - select + i32.or br_if $__inlined_func$~lib/string/String#codePointAt0 local.get $5 i32.load16_u offset=4 @@ -6365,7 +6359,6 @@ local.set $9 br $__inlined_func$~lib/string/String#codePointAt1 end - i32.const 1 local.get $9 i32.const 3 i32.eq @@ -6376,7 +6369,7 @@ i32.and i32.const 55296 i32.ne - select + i32.or br_if $__inlined_func$~lib/string/String#codePointAt1 local.get $5 i32.load16_u offset=6 @@ -6423,7 +6416,6 @@ local.set $9 br $__inlined_func$~lib/string/String#codePointAt2 end - i32.const 1 local.get $9 i32.const 1 i32.eq @@ -6434,7 +6426,7 @@ i32.and i32.const 55296 i32.ne - select + i32.or br_if $__inlined_func$~lib/string/String#codePointAt2 local.get $5 i32.load16_u offset=2 @@ -6471,7 +6463,6 @@ local.set $9 br $__inlined_func$~lib/string/String#codePointAt3 end - i32.const 1 local.get $9 i32.const 2 i32.eq @@ -6482,7 +6473,7 @@ i32.and i32.const 55296 i32.ne - select + i32.or br_if $__inlined_func$~lib/string/String#codePointAt3 local.get $5 i32.load16_u offset=4 @@ -6529,7 +6520,6 @@ local.set $9 br $__inlined_func$~lib/string/String#codePointAt4 end - i32.const 1 local.get $9 i32.const 3 i32.eq @@ -6540,7 +6530,7 @@ i32.and i32.const 55296 i32.ne - select + i32.or br_if $__inlined_func$~lib/string/String#codePointAt4 local.get $5 i32.load16_u offset=6 @@ -6853,18 +6843,17 @@ i32.shr_u if block $for-continue|0 - local.get $8 - i32.const 1 - i32.sub - local.get $4 - i32.gt_u - i32.const 0 local.get $3 i32.const 55295 i32.sub i32.const 1025 i32.lt_u - select + local.get $8 + i32.const 1 + i32.sub + local.get $4 + i32.gt_u + i32.and if local.get $4 i32.const 1 diff --git a/tests/compiler/std/string-encoding.optimized.wat b/tests/compiler/std/string-encoding.optimized.wat index c205a6bed6..d9eeeff032 100644 --- a/tests/compiler/std/string-encoding.optimized.wat +++ b/tests/compiler/std/string-encoding.optimized.wat @@ -341,11 +341,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -606,11 +605,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1178,11 +1176,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -2802,18 +2799,17 @@ i32.const 2 i32.add else + local.get $3 + i32.const 64512 + i32.and + i32.const 55296 + i32.eq local.get $4 local.get $0 i32.const 2 i32.add i32.gt_u - i32.const 0 - local.get $3 - i32.const 64512 i32.and - i32.const 55296 - i32.eq - select if local.get $0 i32.load16_u offset=2 @@ -4782,16 +4778,15 @@ i32.const 55296 i32.eq if + local.get $3 + i32.const 56320 + i32.lt_u local.get $6 local.get $4 i32.const 2 i32.add i32.gt_u - i32.const 0 - local.get $3 - i32.const 56320 - i32.lt_u - select + i32.and if local.get $4 i32.load16_u offset=2 diff --git a/tests/compiler/std/string.optimized.wat b/tests/compiler/std/string.optimized.wat index 9302607f35..348571c878 100644 --- a/tests/compiler/std/string.optimized.wat +++ b/tests/compiler/std/string.optimized.wat @@ -1351,11 +1351,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1616,11 +1615,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -2188,11 +2186,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -3763,11 +3760,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $3 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray @@ -4085,14 +4081,13 @@ end f64.const 1 local.set $4 - i32.const 1 local.get $2 i32.const 43 i32.eq local.get $2 i32.const 45 i32.eq - select + i32.or if local.get $3 i32.const 1 @@ -4119,14 +4114,13 @@ end local.get $1 if - i32.const 1 - local.get $1 - i32.const 36 - i32.gt_s local.get $1 i32.const 2 i32.lt_s - select + local.get $1 + i32.const 36 + i32.gt_s + i32.or if f64.const nan:0x8000000000000 return @@ -4138,11 +4132,10 @@ local.get $2 i32.const 48 i32.eq - i32.const 0 local.get $3 i32.const 2 i32.gt_s - select + i32.and if (result i32) local.get $0 i32.load16_u offset=2 @@ -4165,14 +4158,13 @@ end end else - local.get $3 - i32.const 2 - i32.gt_s - i32.const 0 local.get $2 i32.const 48 i32.eq - select + local.get $3 + i32.const 2 + i32.gt_s + i32.and if block $break|1 block $case2|1 @@ -4419,15 +4411,14 @@ end i32.const 1 local.set $2 - i32.const 1 local.get $0 i32.const 43 i32.eq local.get $0 i32.const 45 i32.eq - select - if + i32.or + if (result i32) local.get $1 i32.const 1 i32.sub @@ -4449,16 +4440,15 @@ i32.add local.tee $5 i32.load16_u - local.set $0 + else + local.get $0 end + i32.const 48 + i32.eq local.get $1 i32.const 2 i32.gt_s - i32.const 0 - local.get $0 - i32.const 48 - i32.eq - select + i32.and if block $break|1 block $case2|1 @@ -4696,15 +4686,14 @@ end i64.const 1 local.set $2 - i32.const 1 local.get $0 i32.const 43 i32.eq local.get $0 i32.const 45 i32.eq - select - if + i32.or + if (result i32) local.get $1 i32.const 1 i32.sub @@ -4726,16 +4715,15 @@ i32.add local.tee $5 i32.load16_u - local.set $0 + else + local.get $0 end + i32.const 48 + i32.eq local.get $1 i32.const 2 i32.gt_s - i32.const 0 - local.get $0 - i32.const 48 - i32.eq - select + i32.and if block $break|1 block $case2|1 @@ -5260,11 +5248,10 @@ local.tee $5 i32.const 73 i32.eq - i32.const 0 local.get $7 i32.const 8 i32.ge_s - select + i32.and if local.get $0 i64.load @@ -5287,15 +5274,14 @@ br $folding-inner0 end local.get $5 + i32.const 46 + i32.ne + local.get $5 i32.const 48 i32.sub i32.const 10 i32.ge_u - i32.const 0 - local.get $5 - i32.const 46 - i32.ne - select + i32.and br_if $folding-inner0 local.get $0 local.set $2 @@ -5393,18 +5379,16 @@ i32.sub local.set $2 loop $for-loop|3 - i32.const 0 local.get $13 - i32.const 1 + i32.eqz local.get $5 i32.const 46 i32.eq - select + i32.and local.get $2 i32.const 10 i32.lt_u - select - i32.eqz + i32.or if block $for-break3 local.get $2 @@ -5461,7 +5445,8 @@ end block $~lib/util/string/scientific|inlined.0 (result f64) f64.const 0 - i32.const 1 + local.get $6 + i64.eqz local.get $3 local.get $1 local.get $13 @@ -5611,9 +5596,7 @@ local.tee $0 i32.const -342 i32.lt_s - local.get $6 - i64.eqz - select + i32.or br_if $~lib/util/string/scientific|inlined.0 drop f64.const inf @@ -5632,11 +5615,10 @@ local.get $0 i32.const 37 i32.le_s - i32.const 0 local.get $0 i32.const 22 i32.gt_s - select + i32.and if local.get $11 local.get $0 @@ -6693,18 +6675,16 @@ i32.load16_u local.set $5 loop $while-continue|3 + local.get $0 + local.get $9 + i64.lt_u local.get $1 local.get $3 local.get $0 i64.sub i64.le_u - i32.const 0 - local.get $0 - local.get $9 - i64.lt_u - select + i32.and if (result i32) - i32.const 1 local.get $9 local.get $0 i64.sub @@ -6718,7 +6698,7 @@ local.get $6 local.get $9 i64.lt_u - select + i32.or else i32.const 0 end @@ -6818,18 +6798,16 @@ i32.load16_u local.set $5 loop $while-continue|6 + local.get $0 + local.get $1 + i64.lt_u local.get $11 local.get $3 local.get $0 i64.sub i64.le_u - i32.const 0 - local.get $0 - local.get $1 - i64.lt_u - select + i32.and if (result i32) - i32.const 1 local.get $1 local.get $0 i64.sub @@ -6843,7 +6821,7 @@ local.get $1 local.get $6 i64.gt_u - select + i32.or else i32.const 0 end @@ -6890,11 +6868,10 @@ local.tee $4 i32.const 21 i32.le_s - i32.const 0 local.get $1 local.get $4 i32.le_s - select + i32.and if (result i32) loop $for-loop|0 local.get $1 @@ -6929,11 +6906,10 @@ local.get $4 i32.const 21 i32.le_s - i32.const 0 local.get $4 i32.const 0 i32.gt_s - select + i32.and if (result i32) local.get $4 i32.const 1 @@ -6960,11 +6936,10 @@ local.get $4 i32.const 0 i32.le_s - i32.const 0 local.get $4 i32.const -6 i32.gt_s - select + i32.and if (result i32) i32.const 2 local.get $4 @@ -8031,7 +8006,6 @@ i32.const 1 i32.le_u br_if $__inlined_func$~lib/string/String#codePointAt - i32.const 1 local.get $3 i32.const 2 i32.eq @@ -8042,7 +8016,7 @@ i32.and i32.const 55296 i32.ne - select + i32.or br_if $__inlined_func$~lib/string/String#codePointAt local.get $1 i32.load16_u offset=4 @@ -21982,7 +21956,6 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - i32.const 0 local.get $2 i32.const 20 i32.sub @@ -21992,6 +21965,7 @@ i32.const 1 i32.shl local.tee $4 + i32.eqz local.get $0 i32.const 20 i32.sub @@ -22006,8 +21980,7 @@ i32.shl local.tee $3 i32.gt_u - select - i32.eqz + i32.or if global.get $~lib/memory/__stack_pointer i32.const 4 @@ -22092,7 +22065,6 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - i32.const 0 local.get $2 i32.const 20 i32.sub @@ -22102,6 +22074,7 @@ i32.const 1 i32.shl local.tee $5 + i32.eqz local.get $0 i32.const 20 i32.sub @@ -22116,8 +22089,7 @@ i32.shl local.tee $4 i32.gt_u - select - i32.eqz + i32.or if global.get $~lib/memory/__stack_pointer i32.const 4 @@ -23798,14 +23770,13 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - i32.const 1 - local.get $1 - i32.const 36 - i32.gt_s local.get $1 i32.const 2 i32.lt_s - select + local.get $1 + i32.const 36 + i32.gt_s + i32.or if i32.const 15632 i32.const 15760 @@ -24093,14 +24064,13 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - i32.const 1 - local.get $1 - i32.const 36 - i32.gt_s local.get $1 i32.const 2 i32.lt_s - select + local.get $1 + i32.const 36 + i32.gt_s + i32.or if i32.const 15632 i32.const 15760 @@ -24368,14 +24338,13 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - i32.const 1 - local.get $1 - i32.const 36 - i32.gt_s local.get $1 i32.const 2 i32.lt_s - select + local.get $1 + i32.const 36 + i32.gt_s + i32.or if i32.const 15632 i32.const 15760 @@ -24708,14 +24677,13 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - i32.const 1 - local.get $1 - i32.const 36 - i32.gt_s local.get $1 i32.const 2 i32.lt_s - select + local.get $1 + i32.const 36 + i32.gt_s + i32.or if i32.const 15632 i32.const 15760 diff --git a/tests/compiler/std/symbol.optimized.wat b/tests/compiler/std/symbol.optimized.wat index c50b5f8734..a6910a746f 100644 --- a/tests/compiler/std/symbol.optimized.wat +++ b/tests/compiler/std/symbol.optimized.wat @@ -409,11 +409,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -674,11 +673,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1246,11 +1244,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1861,11 +1858,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $3 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray diff --git a/tests/compiler/std/typedarray.optimized.wat b/tests/compiler/std/typedarray.optimized.wat index 18df4d77cd..3d3fb297a7 100644 --- a/tests/compiler/std/typedarray.optimized.wat +++ b/tests/compiler/std/typedarray.optimized.wat @@ -969,11 +969,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1234,11 +1233,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1811,11 +1809,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -2445,11 +2442,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $0 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray @@ -27055,18 +27051,16 @@ i32.load16_u local.set $3 loop $while-continue|3 + local.get $1 + local.get $10 + i64.lt_u local.get $2 local.get $4 local.get $1 i64.sub i64.le_u - i32.const 0 - local.get $1 - local.get $10 - i64.lt_u - select + i32.and if (result i32) - i32.const 1 local.get $10 local.get $1 i64.sub @@ -27080,7 +27074,7 @@ local.get $7 local.get $10 i64.lt_u - select + i32.or else i32.const 0 end @@ -27182,18 +27176,16 @@ i32.load16_u local.set $3 loop $while-continue|6 + local.get $1 + local.get $2 + i64.lt_u local.get $12 local.get $4 local.get $1 i64.sub i64.le_u - i32.const 0 - local.get $1 - local.get $2 - i64.lt_u - select + i32.and if (result i32) - i32.const 1 local.get $2 local.get $1 i64.sub @@ -27207,7 +27199,7 @@ local.get $2 local.get $7 i64.gt_u - select + i32.or else i32.const 0 end @@ -27254,11 +27246,10 @@ local.tee $4 i32.const 21 i32.le_s - i32.const 0 local.get $1 local.get $4 i32.le_s - select + i32.and if (result i32) loop $for-loop|0 local.get $1 @@ -27293,11 +27284,10 @@ local.get $4 i32.const 21 i32.le_s - i32.const 0 local.get $4 i32.const 0 i32.gt_s - select + i32.and if (result i32) local.get $4 i32.const 1 @@ -27324,11 +27314,10 @@ local.get $4 i32.const 0 i32.le_s - i32.const 0 local.get $4 i32.const -6 i32.gt_s - select + i32.and if (result i32) i32.const 2 local.get $4 @@ -59652,7 +59641,6 @@ local.get $5 i32.gt_s if - i32.const 1 i32.const 1 local.get $5 i32.const 3 @@ -59661,12 +59649,12 @@ i32.add f64.load local.tee $12 - local.get $12 - f64.ne - local.get $12 f64.const nan:0x8000000000000 f64.eq - select + local.get $12 + local.get $12 + f64.ne + i32.or br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float64Array,f64>|inlined.0 drop local.get $5 @@ -59773,7 +59761,6 @@ local.get $5 i32.gt_s if - i32.const 1 i32.const 1 local.get $5 i32.const 2 @@ -59782,12 +59769,12 @@ i32.add f32.load local.tee $11 - local.get $11 - f32.ne - local.get $11 f32.const nan:0x400000 f32.eq - select + local.get $11 + local.get $11 + f32.ne + i32.or br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float32Array,f32>|inlined.0 drop local.get $5 diff --git a/tests/compiler/std/uri.optimized.wat b/tests/compiler/std/uri.optimized.wat index 1cba4a4eec..3b7dce1471 100644 --- a/tests/compiler/std/uri.optimized.wat +++ b/tests/compiler/std/uri.optimized.wat @@ -422,11 +422,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -687,11 +686,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1259,11 +1257,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -2872,11 +2869,10 @@ local.get $4 i32.const 57343 i32.le_u - i32.const 0 local.get $4 i32.const 56320 i32.ge_u - select + i32.and if i32.const 1584 i32.const 1632 @@ -2900,7 +2896,6 @@ call $~lib/builtins/abort unreachable end - i32.const 1 local.get $7 i32.const 1 i32.add @@ -2911,12 +2906,12 @@ i32.add i32.load16_u local.tee $5 - i32.const 57343 - i32.gt_u - local.get $5 i32.const 56320 i32.lt_u - select + local.get $5 + i32.const 57343 + i32.gt_u + i32.or if i32.const 1584 i32.const 1632 @@ -3421,7 +3416,6 @@ i32.le_u br_if $while-break|0 end - i32.const 1 local.get $5 i32.const 37 i32.ne @@ -3430,7 +3424,7 @@ i32.const 2 i32.add i32.le_u - select + i32.or if (result i32) i32.const 1 else @@ -3708,31 +3702,25 @@ end end end - i32.const 1 local.get $5 - i32.const 1114111 - i32.gt_u - i32.const 1 + i32.const 57344 + i32.lt_u + local.get $5 + i32.const 55296 + i32.ge_u + i32.and local.get $10 i32.const -1 i32.eq local.get $5 local.get $10 i32.lt_u - select - select - if (result i32) - i32.const 1 - else - local.get $5 - i32.const 57344 - i32.lt_u - i32.const 0 - local.get $5 - i32.const 55296 - i32.ge_u - select - end + i32.or + local.get $5 + i32.const 1114111 + i32.gt_u + i32.or + i32.or if i32.const 1584 i32.const 1632 diff --git a/tests/compiler/super-inline.optimized.wat b/tests/compiler/super-inline.optimized.wat index 54c425d215..84b97c946f 100644 --- a/tests/compiler/super-inline.optimized.wat +++ b/tests/compiler/super-inline.optimized.wat @@ -315,11 +315,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -580,11 +579,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/templateliteral.optimized.wat b/tests/compiler/templateliteral.optimized.wat index 44041fd406..8e249fcf52 100644 --- a/tests/compiler/templateliteral.optimized.wat +++ b/tests/compiler/templateliteral.optimized.wat @@ -528,11 +528,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -793,11 +792,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1365,11 +1363,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -2877,11 +2874,10 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - i32.const 0 local.get $3 i32.const 3 i32.eq - select + i32.and if local.get $1 call $~lib/rt/itcms/Object#makeGray @@ -3589,18 +3585,16 @@ i32.load16_u local.set $5 loop $while-continue|3 + local.get $0 + local.get $9 + i64.lt_u local.get $1 local.get $3 local.get $0 i64.sub i64.le_u - i32.const 0 - local.get $0 - local.get $9 - i64.lt_u - select + i32.and if (result i32) - i32.const 1 local.get $9 local.get $0 i64.sub @@ -3614,7 +3608,7 @@ local.get $6 local.get $9 i64.lt_u - select + i32.or else i32.const 0 end @@ -3714,18 +3708,16 @@ i32.load16_u local.set $5 loop $while-continue|6 + local.get $0 + local.get $1 + i64.lt_u local.get $11 local.get $3 local.get $0 i64.sub i64.le_u - i32.const 0 - local.get $0 - local.get $1 - i64.lt_u - select + i32.and if (result i32) - i32.const 1 local.get $1 local.get $0 i64.sub @@ -3739,7 +3731,7 @@ local.get $1 local.get $6 i64.gt_u - select + i32.or else i32.const 0 end @@ -3786,11 +3778,10 @@ local.tee $4 i32.const 21 i32.le_s - i32.const 0 local.get $1 local.get $4 i32.le_s - select + i32.and if (result i32) loop $for-loop|0 local.get $1 @@ -3825,11 +3816,10 @@ local.get $4 i32.const 21 i32.le_s - i32.const 0 local.get $4 i32.const 0 i32.gt_s - select + i32.and if (result i32) local.get $4 i32.const 1 @@ -3856,11 +3846,10 @@ local.get $4 i32.const 0 i32.le_s - i32.const 0 local.get $4 i32.const -6 i32.gt_s - select + i32.and if (result i32) i32.const 2 local.get $4 diff --git a/tests/compiler/throw.optimized.wat b/tests/compiler/throw.optimized.wat index 4d5708a9b9..1828c41a75 100644 --- a/tests/compiler/throw.optimized.wat +++ b/tests/compiler/throw.optimized.wat @@ -314,11 +314,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -579,11 +578,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/typeof.optimized.wat b/tests/compiler/typeof.optimized.wat index 5a3c286aea..a4e6109a82 100644 --- a/tests/compiler/typeof.optimized.wat +++ b/tests/compiler/typeof.optimized.wat @@ -446,11 +446,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -711,11 +710,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 diff --git a/tests/compiler/wasi/abort.optimized.wat b/tests/compiler/wasi/abort.optimized.wat index c3bd25c45e..2c3c6b08d9 100644 --- a/tests/compiler/wasi/abort.optimized.wat +++ b/tests/compiler/wasi/abort.optimized.wat @@ -86,16 +86,15 @@ i32.const 55296 i32.eq if + local.get $3 + i32.const 56320 + i32.lt_u local.get $4 local.get $0 i32.const 2 i32.add i32.gt_u - i32.const 0 - local.get $3 - i32.const 56320 - i32.lt_u - select + i32.and if local.get $0 i32.load16_u offset=2 diff --git a/tests/compiler/wasi/trace.optimized.wat b/tests/compiler/wasi/trace.optimized.wat index ae31d07581..f6d2bec2b7 100644 --- a/tests/compiler/wasi/trace.optimized.wat +++ b/tests/compiler/wasi/trace.optimized.wat @@ -107,16 +107,15 @@ i32.const 55296 i32.eq if + local.get $3 + i32.const 56320 + i32.lt_u local.get $4 local.get $0 i32.const 2 i32.add i32.gt_u - i32.const 0 - local.get $3 - i32.const 56320 - i32.lt_u - select + i32.and if local.get $0 i32.load16_u offset=2 @@ -515,11 +514,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -780,11 +778,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1088,11 +1085,10 @@ local.get $1 i32.const 16 i32.lt_u - i32.const 0 local.get $2 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -1433,18 +1429,16 @@ i32.load16_u local.set $3 loop $while-continue|3 + local.get $1 + local.get $10 + i64.lt_u local.get $2 local.get $4 local.get $1 i64.sub i64.le_u - i32.const 0 - local.get $1 - local.get $10 - i64.lt_u - select + i32.and if (result i32) - i32.const 1 local.get $10 local.get $1 i64.sub @@ -1458,7 +1452,7 @@ local.get $7 local.get $10 i64.lt_u - select + i32.or else i32.const 0 end @@ -1560,18 +1554,16 @@ i32.load16_u local.set $3 loop $while-continue|6 + local.get $1 + local.get $2 + i64.lt_u local.get $12 local.get $4 local.get $1 i64.sub i64.le_u - i32.const 0 - local.get $1 - local.get $2 - i64.lt_u - select + i32.and if (result i32) - i32.const 1 local.get $2 local.get $1 i64.sub @@ -1585,7 +1577,7 @@ local.get $2 local.get $7 i64.gt_u - select + i32.or else i32.const 0 end @@ -2637,11 +2629,10 @@ local.tee $4 i32.const 21 i32.le_s - i32.const 0 local.get $1 local.get $4 i32.le_s - select + i32.and if (result i32) loop $for-loop|0 local.get $1 @@ -2676,11 +2667,10 @@ local.get $4 i32.const 21 i32.le_s - i32.const 0 local.get $4 i32.const 0 i32.gt_s - select + i32.and if (result i32) local.get $4 i32.const 1 @@ -2707,11 +2697,10 @@ local.get $4 i32.const 0 i32.le_s - i32.const 0 local.get $4 i32.const -6 i32.gt_s - select + i32.and if (result i32) i32.const 2 local.get $4 @@ -3341,18 +3330,17 @@ i32.const 2 i32.add else + local.get $9 + i32.const 64512 + i32.and + i32.const 55296 + i32.eq local.get $8 local.get $6 i32.const 2 i32.add i32.gt_u - i32.const 0 - local.get $9 - i32.const 64512 i32.and - i32.const 55296 - i32.eq - select if local.get $6 i32.load16_u offset=2 diff --git a/tests/compiler/while.optimized.wat b/tests/compiler/while.optimized.wat index 3105313e7f..9996532ede 100644 --- a/tests/compiler/while.optimized.wat +++ b/tests/compiler/while.optimized.wat @@ -303,11 +303,10 @@ local.get $2 i32.const 16 i32.lt_u - i32.const 0 local.get $3 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 @@ -568,11 +567,10 @@ local.tee $3 i32.const 16 i32.lt_u - i32.const 0 local.get $5 i32.const 23 i32.lt_u - select + i32.and i32.eqz if i32.const 0 From ace69ef2aa81cba568ce13efddba3368e387b20d Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Wed, 15 Sep 2021 10:50:22 +0300 Subject: [PATCH 06/54] update --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 47062c9345..ed0b24a6bc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "102.0.0-nightly.20210914", + "binaryen": "102.0.0-nightly.20210915", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" @@ -733,9 +733,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "102.0.0-nightly.20210914", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210914.tgz", - "integrity": "sha512-1yftlaPF4zuAr3YjwTzJ8HTgUDX0XlxO+01JoNCORvOt178pqYIFYACX5zOl8EJ/eIOJc2S1KPG0m4G5gSZbSg==", + "version": "102.0.0-nightly.20210915", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210915.tgz", + "integrity": "sha512-Bf7srIgyDsRx1qWdrcUPMlUaDAAaoPGBYQJlU0jhXMieceZx2YjWeG1T5ohQj7hdS3Wc+KANHb0zWTmUVwfFuw==", "bin": { "wasm-opt": "bin/wasm-opt" } @@ -3508,9 +3508,9 @@ "dev": true }, "binaryen": { - "version": "102.0.0-nightly.20210914", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210914.tgz", - "integrity": "sha512-1yftlaPF4zuAr3YjwTzJ8HTgUDX0XlxO+01JoNCORvOt178pqYIFYACX5zOl8EJ/eIOJc2S1KPG0m4G5gSZbSg==" + "version": "102.0.0-nightly.20210915", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210915.tgz", + "integrity": "sha512-Bf7srIgyDsRx1qWdrcUPMlUaDAAaoPGBYQJlU0jhXMieceZx2YjWeG1T5ohQj7hdS3Wc+KANHb0zWTmUVwfFuw==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 6bc1f46057..614b61afde 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "url": "https://github.com/AssemblyScript/assemblyscript/issues" }, "dependencies": { - "binaryen": "102.0.0-nightly.20210914", + "binaryen": "102.0.0-nightly.20210915", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" From 46b3618fc51d7d6da24c15b7af4e8534f2cae65e Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Thu, 16 Sep 2021 10:03:39 +0300 Subject: [PATCH 07/54] update --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index ed0b24a6bc..379943ab2c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "102.0.0-nightly.20210915", + "binaryen": "102.0.0-nightly.20210916", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" @@ -733,9 +733,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "102.0.0-nightly.20210915", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210915.tgz", - "integrity": "sha512-Bf7srIgyDsRx1qWdrcUPMlUaDAAaoPGBYQJlU0jhXMieceZx2YjWeG1T5ohQj7hdS3Wc+KANHb0zWTmUVwfFuw==", + "version": "102.0.0-nightly.20210916", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210916.tgz", + "integrity": "sha512-9reXlwMXWYfYEmopaJXryBjK10fPpcC5P0CmHnSaaP+7HI9Jv5YROWdvek15Ie2Lsf4fQRMpDtg0x3y6FICwYQ==", "bin": { "wasm-opt": "bin/wasm-opt" } @@ -3508,9 +3508,9 @@ "dev": true }, "binaryen": { - "version": "102.0.0-nightly.20210915", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210915.tgz", - "integrity": "sha512-Bf7srIgyDsRx1qWdrcUPMlUaDAAaoPGBYQJlU0jhXMieceZx2YjWeG1T5ohQj7hdS3Wc+KANHb0zWTmUVwfFuw==" + "version": "102.0.0-nightly.20210916", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210916.tgz", + "integrity": "sha512-9reXlwMXWYfYEmopaJXryBjK10fPpcC5P0CmHnSaaP+7HI9Jv5YROWdvek15Ie2Lsf4fQRMpDtg0x3y6FICwYQ==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 614b61afde..5195075102 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "url": "https://github.com/AssemblyScript/assemblyscript/issues" }, "dependencies": { - "binaryen": "102.0.0-nightly.20210915", + "binaryen": "102.0.0-nightly.20210916", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" From 1776a59b0760673d28cab56c707e0d92640704b7 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Fri, 17 Sep 2021 09:41:03 +0300 Subject: [PATCH 08/54] update --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 379943ab2c..35c257b97e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "102.0.0-nightly.20210916", + "binaryen": "102.0.0-nightly.20210917", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" @@ -733,9 +733,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "102.0.0-nightly.20210916", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210916.tgz", - "integrity": "sha512-9reXlwMXWYfYEmopaJXryBjK10fPpcC5P0CmHnSaaP+7HI9Jv5YROWdvek15Ie2Lsf4fQRMpDtg0x3y6FICwYQ==", + "version": "102.0.0-nightly.20210917", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210917.tgz", + "integrity": "sha512-h7sJgFdakgdsKuI6BuleSdsQli4gP7ic0mVUrt9pcgxRktwLc6Lmw8y3RCkhbJlmQjXO/xci5OUvsW6xsesxCQ==", "bin": { "wasm-opt": "bin/wasm-opt" } @@ -3508,9 +3508,9 @@ "dev": true }, "binaryen": { - "version": "102.0.0-nightly.20210916", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210916.tgz", - "integrity": "sha512-9reXlwMXWYfYEmopaJXryBjK10fPpcC5P0CmHnSaaP+7HI9Jv5YROWdvek15Ie2Lsf4fQRMpDtg0x3y6FICwYQ==" + "version": "102.0.0-nightly.20210917", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210917.tgz", + "integrity": "sha512-h7sJgFdakgdsKuI6BuleSdsQli4gP7ic0mVUrt9pcgxRktwLc6Lmw8y3RCkhbJlmQjXO/xci5OUvsW6xsesxCQ==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 5195075102..ff4a2077f4 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "url": "https://github.com/AssemblyScript/assemblyscript/issues" }, "dependencies": { - "binaryen": "102.0.0-nightly.20210916", + "binaryen": "102.0.0-nightly.20210917", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" From 84085dcdd1e4720cfc9d78807d261b755fcf68df Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sat, 18 Sep 2021 09:53:28 +0300 Subject: [PATCH 09/54] update --- package-lock.json | 14 +- package.json | 2 +- tests/compiler/call-super.optimized.wat | 320 +- tests/compiler/class-implements.optimized.wat | 332 +- .../class-overloading-cast.optimized.wat | 344 +- .../compiler/class-overloading.optimized.wat | 354 +- tests/compiler/class.optimized.wat | 391 +- tests/compiler/constructor.optimized.wat | 386 +- tests/compiler/do.optimized.wat | 320 +- .../empty-exportruntime.optimized.wat | 62 +- tests/compiler/empty-new.optimized.wat | 320 +- tests/compiler/exports.optimized.wat | 318 +- .../exportstar-rereexport.optimized.wat | 338 +- .../extends-baseaggregate.optimized.wat | 210 +- .../compiler/extends-recursive.optimized.wat | 168 +- .../field-initialization.optimized.wat | 520 +- tests/compiler/field.optimized.wat | 650 +- tests/compiler/for.optimized.wat | 320 +- tests/compiler/function-call.optimized.wat | 329 +- .../function-expression.optimized.wat | 64 +- tests/compiler/getter-call.optimized.wat | 326 +- .../implicit-getter-setter.optimized.wat | 175 +- tests/compiler/infer-array.optimized.wat | 243 +- tests/compiler/infer-generic.optimized.wat | 334 +- tests/compiler/inlining.optimized.wat | 326 +- tests/compiler/instanceof-class.optimized.wat | 332 +- tests/compiler/issues/1095.optimized.wat | 833 ++- tests/compiler/issues/1225.optimized.wat | 325 +- tests/compiler/issues/1699.optimized.wat | 253 +- tests/compiler/logical.optimized.wat | 320 +- tests/compiler/managed-cast.optimized.wat | 320 +- tests/compiler/memset.optimized.wat | 181 +- tests/compiler/new.optimized.wat | 356 +- tests/compiler/number.optimized.wat | 324 +- tests/compiler/object-literal.optimized.wat | 313 +- .../optional-typeparameters.optimized.wat | 332 +- tests/compiler/reexport.optimized.wat | 323 +- tests/compiler/rereexport.optimized.wat | 338 +- tests/compiler/resolve-access.optimized.wat | 109 +- tests/compiler/resolve-binary.optimized.wat | 342 +- .../resolve-elementaccess.optimized.wat | 188 +- .../resolve-function-expression.optimized.wat | 330 +- tests/compiler/resolve-nested.optimized.wat | 320 +- tests/compiler/resolve-new.optimized.wat | 325 +- .../resolve-propertyaccess.optimized.wat | 324 +- tests/compiler/resolve-ternary.optimized.wat | 330 +- tests/compiler/resolve-unary.optimized.wat | 336 +- tests/compiler/rt/finalize.optimized.wat | 320 +- tests/compiler/rt/instanceof.optimized.wat | 356 +- .../runtime-incremental-export.optimized.wat | 62 +- .../rt/runtime-minimal-export.optimized.wat | 98 +- tests/compiler/std-wasi/console.optimized.wat | 279 +- tests/compiler/std-wasi/crypto.optimized.wat | 262 +- tests/compiler/std-wasi/process.optimized.wat | 411 +- .../compiler/std/array-literal.optimized.wat | 313 +- tests/compiler/std/array.optimized.wat | 3024 ++++---- tests/compiler/std/arraybuffer.optimized.wat | 331 +- tests/compiler/std/dataview.optimized.wat | 258 +- tests/compiler/std/date.optimized.wat | 381 +- tests/compiler/std/hash.optimized.wat | 369 +- tests/compiler/std/map.optimized.wat | 6451 +++++++++-------- tests/compiler/std/new.optimized.wat | 325 +- .../std/operator-overloading.optimized.wat | 615 +- tests/compiler/std/set.optimized.wat | 4375 +++++------ tests/compiler/std/static-array.optimized.wat | 74 +- tests/compiler/std/staticarray.optimized.wat | 1651 ++--- .../std/string-casemapping.optimized.wat | 326 +- .../std/string-encoding.optimized.wat | 324 +- tests/compiler/std/string.optimized.wat | 350 +- tests/compiler/std/symbol.optimized.wat | 731 +- tests/compiler/std/typedarray.optimized.wat | 1483 ++-- tests/compiler/std/uri.optimized.wat | 322 +- tests/compiler/super-inline.optimized.wat | 332 +- tests/compiler/templateliteral.optimized.wat | 300 +- tests/compiler/throw.optimized.wat | 336 +- tests/compiler/typeof.optimized.wat | 333 +- tests/compiler/while.optimized.wat | 320 +- 77 files changed, 20520 insertions(+), 18912 deletions(-) diff --git a/package-lock.json b/package-lock.json index 35c257b97e..9e9955736a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "102.0.0-nightly.20210917", + "binaryen": "102.0.0-nightly.20210918", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" @@ -733,9 +733,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "102.0.0-nightly.20210917", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210917.tgz", - "integrity": "sha512-h7sJgFdakgdsKuI6BuleSdsQli4gP7ic0mVUrt9pcgxRktwLc6Lmw8y3RCkhbJlmQjXO/xci5OUvsW6xsesxCQ==", + "version": "102.0.0-nightly.20210918", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210918.tgz", + "integrity": "sha512-+V9ER3l087PLuAZ9SootE6hi6LApfIbs7qB03skM/EEDgemg+O4KkvxAWePwYpFqDfPKWGmxRaz4bVmSNzxr/A==", "bin": { "wasm-opt": "bin/wasm-opt" } @@ -3508,9 +3508,9 @@ "dev": true }, "binaryen": { - "version": "102.0.0-nightly.20210917", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210917.tgz", - "integrity": "sha512-h7sJgFdakgdsKuI6BuleSdsQli4gP7ic0mVUrt9pcgxRktwLc6Lmw8y3RCkhbJlmQjXO/xci5OUvsW6xsesxCQ==" + "version": "102.0.0-nightly.20210918", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210918.tgz", + "integrity": "sha512-+V9ER3l087PLuAZ9SootE6hi6LApfIbs7qB03skM/EEDgemg+O4KkvxAWePwYpFqDfPKWGmxRaz4bVmSNzxr/A==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index ff4a2077f4..cbc0bf04ae 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "url": "https://github.com/AssemblyScript/assemblyscript/issues" }, "dependencies": { - "binaryen": "102.0.0-nightly.20210917", + "binaryen": "102.0.0-nightly.20210918", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" diff --git a/tests/compiler/call-super.optimized.wat b/tests/compiler/call-super.optimized.wat index c317c133a3..7c96dcebab 100644 --- a/tests/compiler/call-super.optimized.wat +++ b/tests/compiler/call-super.optimized.wat @@ -1,8 +1,8 @@ (module (type $none_=>_none (func)) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $none_=>_i32 (func (result i32))) @@ -39,9 +39,9 @@ (local $0 i32) (local $1 i32) i32.const 1296 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1104 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -80,160 +80,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1168 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17980 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1168 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1168 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1488 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1296 - i32.const 1360 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1492 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -913,7 +759,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1730,7 +1580,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -2371,4 +2224,153 @@ call $~lib/builtins/abort unreachable ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1168 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17980 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1168 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1168 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1488 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1296 + i32.const 1360 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1492 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/class-implements.optimized.wat b/tests/compiler/class-implements.optimized.wat index dd39f10565..c638c4786a 100644 --- a/tests/compiler/class-implements.optimized.wat +++ b/tests/compiler/class-implements.optimized.wat @@ -1,8 +1,8 @@ (module (type $i32_=>_i32 (func (param i32) (result i32))) (type $none_=>_none (func)) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $none_=>_i32 (func (result i32))) @@ -52,18 +52,26 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $class-implements/c local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -102,160 +110,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17948 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1504 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1248 - i32.const 1312 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1508 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -935,7 +789,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1422,7 +1280,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1710,4 +1571,153 @@ i32.add global.set $~lib/memory/__stack_pointer ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17948 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1504 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1248 + i32.const 1312 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1508 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/class-overloading-cast.optimized.wat b/tests/compiler/class-overloading-cast.optimized.wat index aacc8e7bf1..e266558f71 100644 --- a/tests/compiler/class-overloading-cast.optimized.wat +++ b/tests/compiler/class-overloading-cast.optimized.wat @@ -1,8 +1,8 @@ (module (type $none_=>_none (func)) (type $i32_=>_i32 (func (param i32) (result i32))) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $none_=>_i32 (func (result i32))) @@ -54,30 +54,46 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $class-overloading-cast/v2 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $class-overloading-cast/v3 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $class-overloading-cast/c local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -116,160 +132,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 18084 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1616 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1248 - i32.const 1312 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1620 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -949,7 +811,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1555,7 +1421,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -2002,4 +1871,153 @@ global.set $~lib/memory/__stack_pointer local.get $0 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 18084 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1616 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1248 + i32.const 1312 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1620 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/class-overloading.optimized.wat b/tests/compiler/class-overloading.optimized.wat index 06fee45602..15a8167d5c 100644 --- a/tests/compiler/class-overloading.optimized.wat +++ b/tests/compiler/class-overloading.optimized.wat @@ -66,42 +66,66 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $class-overloading/a local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $class-overloading/c local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $class-overloading/ia local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $class-overloading/ic local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $class-overloading/b2 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1280 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1088 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -140,160 +164,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1152 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 18316 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1152 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1152 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1792 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1280 - i32.const 1344 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1796 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -973,7 +843,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1613,7 +1487,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -3128,4 +3005,153 @@ global.set $~lib/memory/__stack_pointer local.get $0 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1152 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 18316 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1152 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1152 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1792 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1280 + i32.const 1344 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1796 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/class.optimized.wat b/tests/compiler/class.optimized.wat index 9360e650dc..dcfb1bf77b 100644 --- a/tests/compiler/class.optimized.wat +++ b/tests/compiler/class.optimized.wat @@ -1,7 +1,7 @@ (module (type $none_=>_none (func)) - (type $i32_i32_=>_none (func (param i32 i32))) (type $i32_=>_none (func (param i32))) + (type $i32_i32_=>_none (func (param i32 i32))) (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) @@ -45,11 +45,11 @@ (local $0 i32) (local $1 i32) i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1456 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -222,30 +222,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -925,7 +901,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1716,160 +1696,193 @@ call $~lib/memory/memory.fill local.get $1 ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) - local.get $1 - i32.eqz - if - return - end - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - i32.load offset=4 - i32.const 3 - i32.and - local.tee $0 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $0 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) (func $class/testGenericInitializer (local $0 i32) (local $1 i32) (local $2 i32) + (local $3 i32) + (local $4 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner0 - global.get $~lib/memory/__stack_pointer - i32.const 1588 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $0 - i32.const 0 - i32.store - local.get $0 - i32.const 4 - i32.const 4 - call $~lib/rt/itcms/__new - local.tee $2 - i32.store - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1588 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $0 - i64.const 0 - i64.store - local.get $0 - i32.const 16 - i32.const 5 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store - local.get $0 - i32.const 0 - i32.store - local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - i32.const 0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=8 - local.get $0 - i32.const 0 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 32 - i32.const 0 - call $~lib/rt/itcms/__new - local.tee $1 - i32.store offset=4 - local.get $1 - i32.const 32 - call $~lib/memory/memory.fill - local.get $0 - local.get $1 - i32.store - local.get $0 - local.get $1 - call $~lib/rt/itcms/__link - local.get $0 - local.get $1 - i32.store offset=4 - local.get $0 - i32.const 32 - i32.store offset=8 - local.get $0 - i32.const 0 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $2 - local.get $0 - i32.store - local.get $2 - local.get $0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - return + block $folding-inner1 + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 1588 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i32.const 0 + i32.store + local.get $0 + i32.const 4 + i32.const 4 + call $~lib/rt/itcms/__new + local.tee $3 + i32.store + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1588 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i32.const 16 + i32.const 5 + call $~lib/rt/itcms/__new + local.tee $0 + i32.store + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 32 + i32.const 0 + call $~lib/rt/itcms/__new + local.tee $4 + i32.store offset=4 + local.get $4 + i32.const 32 + call $~lib/memory/memory.fill + local.get $0 + local.get $4 + i32.store + local.get $4 + if + local.get $0 + i32.eqz + br_if $folding-inner1 + global.get $~lib/rt/itcms/white + local.get $4 + i32.const 20 + i32.sub + local.tee $2 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $1 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $2 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $1 + i32.const 3 + i32.eq + i32.and + if + local.get $2 + call $~lib/rt/itcms/Object#makeGray + end + end + end + end + local.get $0 + local.get $4 + i32.store offset=4 + local.get $0 + i32.const 32 + i32.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $3 + local.get $0 + i32.store + local.get $0 + if + local.get $3 + i32.eqz + br_if $folding-inner1 + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $3 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $4 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $4 + i32.const 3 + i32.eq + i32.and + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + end + end + end + end + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + return + end + i32.const 18000 + i32.const 18048 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable end - i32.const 18000 - i32.const 18048 - i32.const 1 - i32.const 1 + i32.const 0 + i32.const 1120 + i32.const 294 + i32.const 14 call $~lib/builtins/abort unreachable ) @@ -1894,7 +1907,11 @@ end local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end unreachable @@ -1904,7 +1921,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end ) (func $~start @@ -1986,4 +2006,23 @@ global.set $~lib/memory/__stack_pointer local.get $0 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/constructor.optimized.wat b/tests/compiler/constructor.optimized.wat index 7c3b457c71..ac779a4c8b 100644 --- a/tests/compiler/constructor.optimized.wat +++ b/tests/compiler/constructor.optimized.wat @@ -1,8 +1,8 @@ (module (type $none_=>_none (func)) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $none_=>_i32 (func (result i32))) @@ -53,72 +53,116 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $constructor/emptyCtorWithFieldInit local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $constructor/emptyCtorWithFieldNoInit local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $constructor/emptyCtorWithFieldAccess local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $constructor/none local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $constructor/justFieldInit local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $constructor/justFieldNoInit local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $constructor/ctorReturns local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $constructor/ctorConditionallyReturns local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $constructor/ctorConditionallyReturnsThis local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $constructor/ctorFieldInitOrder local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -157,160 +201,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17988 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1488 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1248 - i32.const 1312 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1492 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -990,7 +880,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -2196,7 +2090,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -2227,4 +2124,153 @@ (func $~start call $start:constructor ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17988 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1488 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1248 + i32.const 1312 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1492 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/do.optimized.wat b/tests/compiler/do.optimized.wat index 7477559668..2f5a5990c0 100644 --- a/tests/compiler/do.optimized.wat +++ b/tests/compiler/do.optimized.wat @@ -1,8 +1,8 @@ (module (type $none_=>_none (func)) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) (type $none_=>_i32 (func (result i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $i32_=>_i32 (func (param i32) (result i32))) @@ -39,9 +39,9 @@ (local $0 i32) (local $1 i32) i32.const 1280 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1088 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -80,160 +80,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1152 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17892 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1152 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1152 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1472 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1280 - i32.const 1344 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1476 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -913,7 +759,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1620,7 +1470,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1887,4 +1740,153 @@ global.set $~lib/memory/__stack_pointer local.get $4 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1152 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17892 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1152 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1152 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1472 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1280 + i32.const 1344 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1476 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/empty-exportruntime.optimized.wat b/tests/compiler/empty-exportruntime.optimized.wat index e4cdfc2327..9501d5f558 100644 --- a/tests/compiler/empty-exportruntime.optimized.wat +++ b/tests/compiler/empty-exportruntime.optimized.wat @@ -46,13 +46,13 @@ (local $0 i32) (local $1 i32) i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1456 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1520 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -228,30 +228,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -931,7 +907,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1883,7 +1863,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1923,4 +1906,23 @@ i32.const 1344 global.set $~lib/rt/itcms/fromSpace ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/empty-new.optimized.wat b/tests/compiler/empty-new.optimized.wat index c96c3c8f5c..647d074d97 100644 --- a/tests/compiler/empty-new.optimized.wat +++ b/tests/compiler/empty-new.optimized.wat @@ -1,7 +1,7 @@ (module (type $none_=>_none (func)) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $none_=>_i32 (func (result i32))) @@ -35,9 +35,9 @@ (local $0 i32) (local $1 i32) i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -76,160 +76,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17852 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1440 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1248 - i32.const 1312 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1444 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -909,7 +755,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1164,7 +1014,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1427,4 +1280,153 @@ i32.add global.set $~lib/rt/itcms/total ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17852 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1440 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1248 + i32.const 1312 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1444 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/exports.optimized.wat b/tests/compiler/exports.optimized.wat index 09b3a1cc5f..9d60d1a4d2 100644 --- a/tests/compiler/exports.optimized.wat +++ b/tests/compiler/exports.optimized.wat @@ -89,9 +89,9 @@ (local $0 i32) (local $1 i32) i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -130,160 +130,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17868 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1440 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1248 - i32.const 1312 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1444 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -963,7 +809,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1499,7 +1349,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1766,4 +1619,153 @@ call $~lib/builtins/abort unreachable ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17868 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1440 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1248 + i32.const 1312 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1444 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/exportstar-rereexport.optimized.wat b/tests/compiler/exportstar-rereexport.optimized.wat index 38e0cebd64..c1207b715a 100644 --- a/tests/compiler/exportstar-rereexport.optimized.wat +++ b/tests/compiler/exportstar-rereexport.optimized.wat @@ -1,9 +1,9 @@ (module (type $none_=>_none (func)) (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) (type $none_=>_i32 (func (result i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $i32_=>_i32 (func (param i32) (result i32))) @@ -72,26 +72,38 @@ (local $0 i32) (local $1 i32) i32.const 1296 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1104 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $rereexport/car local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $rereexport/exportsNamespaceCar local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $reexport/car local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $~lib/rt/itcms/pinSpace local.tee $1 @@ -131,160 +143,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1168 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17956 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1168 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1168 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1536 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1296 - i32.const 1360 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1540 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -964,7 +822,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1228,7 +1090,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1656,4 +1521,153 @@ global.set $~lib/memory/__stack_pointer local.get $1 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1168 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17956 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1168 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1168 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1536 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1296 + i32.const 1360 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1540 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/extends-baseaggregate.optimized.wat b/tests/compiler/extends-baseaggregate.optimized.wat index 193d9f1e05..774b0caedc 100644 --- a/tests/compiler/extends-baseaggregate.optimized.wat +++ b/tests/compiler/extends-baseaggregate.optimized.wat @@ -1,7 +1,7 @@ (module (type $i32_=>_none (func (param i32))) - (type $none_=>_none (func)) (type $i32_i32_=>_none (func (param i32 i32))) + (type $none_=>_none (func)) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) @@ -47,15 +47,15 @@ (local $0 i32) (local $1 i32) i32.const 1088 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1168 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1408 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1616 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1216 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -228,30 +228,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -931,7 +907,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1722,65 +1702,6 @@ call $~lib/memory/memory.fill local.get $1 ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - local.get $1 - i32.eqz - if - return - end - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1280 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - local.tee $3 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $0 - local.get $1 - local.get $2 - select - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $3 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) (func $~lib/util/memory/memcpy (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) @@ -2793,10 +2714,12 @@ i32.const 1172 local.get $1 i32.store - i32.const 1168 local.get $1 - i32.const 0 - call $~lib/rt/itcms/__link + if + local.get $1 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end end i32.const 1176 local.get $9 @@ -2810,10 +2733,12 @@ i32.add local.get $0 i32.store - i32.const 1168 local.get $0 - i32.const 1 - call $~lib/rt/itcms/__link + if + local.get $0 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end i32.const 1180 local.get $7 i32.store @@ -2830,18 +2755,21 @@ i32.const 2 i32.shl i32.add - local.set $2 + local.set $3 loop $while-continue|0 local.get $1 - local.get $2 + local.get $3 i32.lt_u if local.get $1 i32.load - local.tee $3 + local.tee $2 if - local.get $3 - call $~lib/rt/itcms/__visit + local.get $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end local.get $1 i32.const 4 @@ -2852,7 +2780,11 @@ end local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end ) (func $~lib/rt/__visit_members (param $0 i32) block $folding-inner1 @@ -2887,7 +2819,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -2896,7 +2831,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end ) (func $~start @@ -2999,10 +2937,6 @@ local.get $0 i32.const 0 i32.store offset=16 - local.get $0 - i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer i32.const 4 i32.add @@ -3031,4 +2965,64 @@ call $~lib/builtins/abort unreachable ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) + (func $byn-split-outlined-A$~lib/rt/itcms/__link (param $0 i32) (param $1 i32) + (local $2 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + i32.const 1152 + i32.load + i32.const 3 + i32.and + local.tee $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + i32.const 1148 + local.get $0 + local.get $1 + select + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $2 + i32.const 3 + i32.eq + i32.and + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + end + end + end + ) ) diff --git a/tests/compiler/extends-recursive.optimized.wat b/tests/compiler/extends-recursive.optimized.wat index 0ce1a8fe67..b914f49917 100644 --- a/tests/compiler/extends-recursive.optimized.wat +++ b/tests/compiler/extends-recursive.optimized.wat @@ -1,8 +1,8 @@ (module - (type $i32_i32_=>_none (func (param i32 i32))) (type $i32_=>_i32 (func (param i32) (result i32))) (type $none_=>_none (func)) (type $i32_=>_none (func (param i32))) + (type $i32_i32_=>_none (func (param i32 i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $none_=>_i32 (func (result i32))) @@ -42,9 +42,9 @@ (local $0 i32) (local $1 i32) i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -217,30 +217,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -920,7 +896,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1411,60 +1391,6 @@ i32.store8 local.get $1 ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) - local.get $1 - i32.eqz - if - return - end - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - i32.load offset=4 - i32.const 3 - i32.and - local.tee $0 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $0 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) (func $~lib/rt/__visit_members (param $0 i32) block $folding-inner0 block $invalid @@ -1487,7 +1413,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end ) (func $~start @@ -1579,9 +1508,56 @@ local.get $0 local.get $1 i32.store - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $1 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $0 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $0 + i32.const 3 + i32.eq + i32.and + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + end + end + end + end global.get $~lib/memory/__stack_pointer i32.const 8 i32.add @@ -1648,9 +1624,6 @@ local.get $0 i32.const 0 i32.store - local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer i32.const 4 i32.add @@ -1675,4 +1648,23 @@ call $~lib/builtins/abort unreachable ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/field-initialization.optimized.wat b/tests/compiler/field-initialization.optimized.wat index ea3313aea8..7428b13e06 100644 --- a/tests/compiler/field-initialization.optimized.wat +++ b/tests/compiler/field-initialization.optimized.wat @@ -58,11 +58,11 @@ (local $0 i32) (local $1 i32) i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1536 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -235,30 +235,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -938,7 +914,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1729,60 +1709,6 @@ call $~lib/memory/memory.fill local.get $1 ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) - local.get $1 - i32.eqz - if - return - end - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - i32.load offset=4 - i32.const 3 - i32.and - local.tee $0 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $0 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) (func $~lib/string/String.__eq (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) @@ -1938,24 +1864,32 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end local.get $0 - local.tee $1 i32.load offset=4 - local.tee $0 + local.tee $1 if - local.get $0 - call $~lib/rt/itcms/__visit + local.get $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $0 if - local.get $1 - call $~lib/rt/itcms/__visit + local.get $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1966,7 +1900,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1975,7 +1912,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end ) (func $~start @@ -2139,22 +2079,25 @@ i32.const 4 i32.const 5 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $0 i32.store local.get $0 - local.get $2 - call $~lib/rt/itcms/__link + if + local.get $1 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.load i32.eqz if @@ -2183,22 +2126,25 @@ i32.const 4 i32.const 6 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $0 i32.store local.get $0 - local.get $2 - call $~lib/rt/itcms/__link + if + local.get $1 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.load i32.eqz if @@ -2232,9 +2178,6 @@ local.get $0 i32.const 0 i32.store - local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer i32.const 4 i32.add @@ -2393,22 +2336,25 @@ i32.const 4 i32.const 11 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $0 i32.store local.get $0 - local.get $2 - call $~lib/rt/itcms/__link + if + local.get $1 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.load i32.eqz if @@ -2437,28 +2383,28 @@ i32.const 4 i32.const 12 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.store - local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 + local.get $1 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $0 i32.store local.get $0 - local.get $2 - call $~lib/rt/itcms/__link + if + local.get $1 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.load i32.eqz if @@ -2471,7 +2417,7 @@ end global.get $~lib/memory/__stack_pointer call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -2483,30 +2429,33 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 4 i32.const 13 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store - local.get $0 local.get $1 + local.get $0 i32.store local.get $0 - local.get $1 - call $~lib/rt/itcms/__link + if + local.get $1 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 - i32.load local.get $1 + i32.load + local.get $0 i32.ne if i32.const 0 @@ -2539,9 +2488,6 @@ local.get $0 i32.const 0 i32.store - local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer i32.const 4 i32.add @@ -2576,22 +2522,25 @@ i32.const 4 i32.const 15 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $0 i32.store local.get $0 - local.get $2 - call $~lib/rt/itcms/__link + if + local.get $1 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.load i32.eqz if @@ -2620,28 +2569,28 @@ i32.const 4 i32.const 16 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.store - local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 + local.get $1 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $0 i32.store local.get $0 - local.get $2 - call $~lib/rt/itcms/__link + if + local.get $1 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.load i32.eqz if @@ -2737,24 +2686,21 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 call $field-initialization/SomeObject#constructor - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=4 local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link local.get $1 - local.get $0 i32.store - local.get $0 + local.get $1 i32.load if i32.const 0 @@ -2765,7 +2711,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 local.tee $0 i32.store offset=8 @@ -2782,24 +2728,21 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 call $field-initialization/SomeObject#constructor - local.tee $0 + local.tee $1 i32.store offset=12 - local.get $0 + local.get $1 i32.const 1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=4 local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link local.get $1 - local.get $0 i32.store offset=16 - local.get $0 + local.get $1 i32.load i32.const 1 i32.ne @@ -2812,7 +2755,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 local.tee $0 i32.store offset=8 @@ -2829,24 +2772,24 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 call $field-initialization/SomeObject#constructor - local.tee $0 + local.tee $2 i32.store offset=20 - local.get $0 + local.get $2 i32.const 1648 i32.store offset=4 - local.get $0 + local.get $2 i32.const 1648 - call $~lib/rt/itcms/__link - local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + local.get $2 i32.const 0 i32.store - local.get $1 local.get $0 + local.get $2 i32.store offset=24 - local.get $0 + local.get $2 i32.load if i32.const 0 @@ -2858,7 +2801,7 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $0 + local.get $2 i32.load offset=4 local.tee $0 i32.store offset=8 @@ -2878,24 +2821,24 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 call $field-initialization/SomeObject#constructor - local.tee $0 + local.tee $2 i32.store offset=32 - local.get $0 + local.get $2 i32.const 2 i32.store - local.get $0 + local.get $2 i32.const 1680 i32.store offset=4 - local.get $0 + local.get $2 i32.const 1680 - call $~lib/rt/itcms/__link - local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link local.get $0 + local.get $2 i32.store offset=36 - local.get $0 + local.get $2 i32.load i32.const 2 i32.ne @@ -2909,7 +2852,7 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $0 + local.get $2 i32.load offset=4 local.tee $0 i32.store offset=8 @@ -2929,29 +2872,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - call $field-initialization/SomeOtherObject#constructor local.tee $0 + call $field-initialization/SomeOtherObject#constructor + local.tee $2 i32.store offset=36 - local.get $0 + local.get $2 i32.const 1712 i32.store offset=8 - local.get $0 + local.get $2 i32.const 1712 - call $~lib/rt/itcms/__link - local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + local.get $2 i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 0 i32.store offset=4 local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $1 - local.get $0 + local.get $2 i32.store offset=24 - local.get $0 + local.get $2 i32.load if i32.const 0 @@ -2962,11 +2902,11 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.load offset=4 - local.tee $1 + local.tee $0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -2980,7 +2920,7 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $0 + local.get $2 i32.load offset=8 local.tee $0 i32.store offset=8 @@ -3000,29 +2940,29 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - call $field-initialization/SomeOtherObject#constructor local.tee $0 + call $field-initialization/SomeOtherObject#constructor + local.tee $2 i32.store offset=16 - local.get $0 + local.get $2 i32.const 3 i32.store - local.get $0 + local.get $2 i32.const 1744 i32.store offset=4 - local.get $0 + local.get $2 i32.const 1744 - call $~lib/rt/itcms/__link - local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + local.get $2 i32.const 1776 i32.store offset=8 - local.get $0 + local.get $2 i32.const 1776 - call $~lib/rt/itcms/__link - local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link local.get $0 + local.get $2 i32.store - local.get $0 + local.get $2 i32.load i32.const 3 i32.ne @@ -3036,14 +2976,14 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $0 + local.get $2 i32.load offset=4 - local.tee $2 + local.tee $0 i32.store offset=8 local.get $1 i32.const 1744 i32.store offset=28 - local.get $2 + local.get $0 i32.const 1744 call $~lib/string/String.__eq i32.eqz @@ -3057,7 +2997,7 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $0 + local.get $2 i32.load offset=8 local.tee $0 i32.store offset=8 @@ -3094,28 +3034,28 @@ i32.const 4 i32.const 22 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.store - local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 + local.get $1 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $0 i32.store local.get $0 - local.get $2 - call $~lib/rt/itcms/__link + if + local.get $1 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.load i32.eqz if @@ -3127,7 +3067,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 + local.get $0 i32.const 4 i32.const 23 call $~lib/rt/itcms/__new @@ -3137,10 +3078,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $2 i32.store - local.get $0 local.get $2 - call $~lib/rt/itcms/__link - local.get $1 + if + local.get $0 + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.store offset=24 local.get $0 @@ -3155,7 +3098,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 + local.get $0 i32.const 4 i32.const 24 call $~lib/rt/itcms/__new @@ -3165,16 +3109,15 @@ i32.const 0 i32.store local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $2 i32.store - local.get $0 local.get $2 - call $~lib/rt/itcms/__link - local.get $1 + if + local.get $0 + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.store local.get $0 @@ -3271,9 +3214,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add @@ -3315,9 +3261,6 @@ local.get $0 i32.const 0 i32.store offset=4 - local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer i32.const 4 i32.add @@ -3359,13 +3302,78 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer local.get $0 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) + (func $byn-split-outlined-A$~lib/rt/itcms/__link (param $0 i32) (param $1 i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $1 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $0 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $0 + i32.const 3 + i32.eq + i32.and + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + end + end + end + ) ) diff --git a/tests/compiler/field.optimized.wat b/tests/compiler/field.optimized.wat index 530368c754..85c6df09f6 100644 --- a/tests/compiler/field.optimized.wat +++ b/tests/compiler/field.optimized.wat @@ -38,9 +38,9 @@ (local $0 i32) (local $1 i32) i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -213,30 +213,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -916,7 +892,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1703,60 +1683,6 @@ end local.get $3 ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) - local.get $1 - i32.eqz - if - return - end - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - i32.load offset=4 - i32.const 3 - i32.and - local.tee $0 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $0 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) (func $~lib/util/memory/memcpy (param $0 i32) (local $1 i32) (local $2 i32) @@ -2507,268 +2433,359 @@ i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner0 - global.get $~lib/memory/__stack_pointer - i32.const 1524 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $5 - i32.const 0 - i32.store - local.get $5 - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1524 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $2 - i32.const 0 - i32.store - local.get $2 - i32.const 4 - i32.const 3 - call $~lib/rt/itcms/__new - local.tee $6 - i32.store - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1524 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $4 - i32.const 0 - i32.store - i32.const 1456 - local.set $2 - block $~lib/util/memory/memmove|inlined.0 - i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__new + block $folding-inner1 + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 1524 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer local.tee $7 + i32.const 0 + i32.store + local.get $7 + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1524 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer local.tee $3 - i32.const 1456 - i32.eq - br_if $~lib/util/memory/memmove|inlined.0 - local.get $3 - i32.const 1456 - i32.eq - if - local.get $3 - call $~lib/util/memory/memcpy - br $~lib/util/memory/memmove|inlined.0 - end + i32.const 0 + i32.store local.get $3 + i32.const 4 + i32.const 3 + call $~lib/rt/itcms/__new + local.tee $5 + i32.store + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1524 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $6 + i32.const 0 + i32.store i32.const 1456 - i32.lt_u - if - local.get $3 - i32.const 7 - i32.and - i32.eqz + local.set $3 + block $~lib/util/memory/memmove|inlined.0 + i32.const 0 + i32.const 0 + call $~lib/rt/itcms/__new + local.tee $4 + local.tee $0 + i32.const 1456 + i32.eq + br_if $~lib/util/memory/memmove|inlined.0 + local.get $0 + i32.const 1456 + i32.eq if - loop $while-continue|0 - local.get $3 - i32.const 7 - i32.and - if - local.get $8 - i32.eqz - br_if $~lib/util/memory/memmove|inlined.0 + local.get $0 + call $~lib/util/memory/memcpy + br $~lib/util/memory/memmove|inlined.0 + end + local.get $0 + i32.const 1456 + i32.lt_u + if + local.get $0 + i32.const 7 + i32.and + i32.eqz + if + loop $while-continue|0 + local.get $0 + i32.const 7 + i32.and + if + local.get $8 + i32.eqz + br_if $~lib/util/memory/memmove|inlined.0 + local.get $8 + i32.const 1 + i32.sub + local.set $8 + local.get $0 + local.tee $1 + i32.const 1 + i32.add + local.set $0 + local.get $3 + local.tee $2 + i32.const 1 + i32.add + local.set $3 + local.get $1 + local.get $2 + i32.load8_u + i32.store8 + br $while-continue|0 + end + end + loop $while-continue|1 local.get $8 - i32.const 1 - i32.sub - local.set $8 - local.get $3 + i32.const 8 + i32.ge_u + if + local.get $0 + local.get $3 + i64.load + i64.store + local.get $8 + i32.const 8 + i32.sub + local.set $8 + local.get $0 + i32.const 8 + i32.add + local.set $0 + local.get $3 + i32.const 8 + i32.add + local.set $3 + br $while-continue|1 + end + end + end + loop $while-continue|2 + local.get $8 + if + local.get $0 local.tee $1 i32.const 1 i32.add - local.set $3 - local.get $2 - local.tee $0 + local.set $0 + local.get $3 + local.tee $2 i32.const 1 i32.add - local.set $2 + local.set $3 local.get $1 - local.get $0 + local.get $2 i32.load8_u i32.store8 - br $while-continue|0 - end - end - loop $while-continue|1 - local.get $8 - i32.const 8 - i32.ge_u - if - local.get $3 - local.get $2 - i64.load - i64.store local.get $8 - i32.const 8 + i32.const 1 i32.sub local.set $8 - local.get $3 - i32.const 8 - i32.add - local.set $3 - local.get $2 - i32.const 8 - i32.add - local.set $2 - br $while-continue|1 + br $while-continue|2 end end - end - loop $while-continue|2 - local.get $8 + else + local.get $0 + i32.const 7 + i32.and + i32.eqz if - local.get $3 - local.tee $1 - i32.const 1 - i32.add - local.set $3 - local.get $2 - local.tee $0 - i32.const 1 - i32.add - local.set $2 - local.get $1 - local.get $0 - i32.load8_u - i32.store8 - local.get $8 - i32.const 1 - i32.sub - local.set $8 - br $while-continue|2 + loop $while-continue|3 + local.get $0 + local.get $8 + i32.add + i32.const 7 + i32.and + if + local.get $8 + i32.eqz + br_if $~lib/util/memory/memmove|inlined.0 + local.get $0 + local.get $8 + i32.const 1 + i32.sub + local.tee $8 + i32.add + local.get $8 + i32.const 1456 + i32.add + i32.load8_u + i32.store8 + br $while-continue|3 + end + end + loop $while-continue|4 + local.get $8 + i32.const 8 + i32.ge_u + if + local.get $0 + local.get $8 + i32.const 8 + i32.sub + local.tee $8 + i32.add + local.get $8 + i32.const 1456 + i32.add + i64.load + i64.store + br $while-continue|4 + end + end end - end - else - local.get $3 - i32.const 7 - i32.and - i32.eqz - if - loop $while-continue|3 - local.get $3 + loop $while-continue|5 local.get $8 - i32.add - i32.const 7 - i32.and if - local.get $8 - i32.eqz - br_if $~lib/util/memory/memmove|inlined.0 + local.get $0 local.get $8 i32.const 1 i32.sub local.tee $8 - local.get $3 i32.add local.get $8 i32.const 1456 i32.add i32.load8_u i32.store8 - br $while-continue|3 + br $while-continue|5 end end - loop $while-continue|4 - local.get $8 - i32.const 8 - i32.ge_u + end + end + local.get $6 + local.get $4 + local.tee $0 + i32.store + i32.const 16 + i32.const 4 + call $~lib/rt/itcms/__new + local.tee $3 + local.get $0 + i32.store + local.get $0 + if + local.get $3 + i32.eqz + br_if $folding-inner1 + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $1 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $3 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $2 + i32.const 3 + i32.eq + i32.and if - local.get $8 - i32.const 8 - i32.sub - local.tee $8 - local.get $3 - i32.add - local.get $8 - i32.const 1456 - i32.add - i64.load - i64.store - br $while-continue|4 + local.get $1 + call $~lib/rt/itcms/Object#makeGray end end end - loop $while-continue|5 - local.get $8 + end + local.get $3 + local.get $0 + i32.store offset=4 + local.get $3 + i32.const 0 + i32.store offset=8 + local.get $3 + i32.const 0 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $5 + local.get $3 + i32.store + local.get $5 + local.set $0 + local.get $3 + if + local.get $0 + i32.eqz + br_if $folding-inner1 + global.get $~lib/rt/itcms/white + local.get $3 + i32.const 20 + i32.sub + local.tee $2 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $3 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq if - local.get $8 + local.get $2 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state i32.const 1 - i32.sub - local.tee $8 + i32.eq local.get $3 - i32.add - local.get $8 - i32.const 1456 - i32.add - i32.load8_u - i32.store8 - br $while-continue|5 + i32.const 3 + i32.eq + i32.and + if + local.get $2 + call $~lib/rt/itcms/Object#makeGray + end end end end + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $7 + local.get $0 + i32.store + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + return end - local.get $4 - local.get $7 - i32.store - i32.const 16 - i32.const 4 - call $~lib/rt/itcms/__new - local.tee $2 - local.get $7 - i32.store - local.get $2 - local.get $7 - call $~lib/rt/itcms/__link - local.get $2 - local.get $7 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=8 - local.get $2 - i32.const 0 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $6 - local.get $2 - i32.store - local.get $6 - local.get $2 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $5 - local.get $6 - i32.store - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - return + i32.const 17936 + i32.const 17984 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable end - i32.const 17936 - i32.const 17984 - i32.const 1 - i32.const 1 + i32.const 0 + i32.const 1120 + i32.const 294 + i32.const 14 call $~lib/builtins/abort unreachable ) @@ -2812,7 +2829,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end local.get $2 i32.const 4 @@ -2823,12 +2843,20 @@ end local.get $1 i32.load - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end unreachable @@ -2838,7 +2866,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end ) (func $~start @@ -2909,4 +2940,23 @@ i32.add global.set $~lib/rt/itcms/threshold ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/for.optimized.wat b/tests/compiler/for.optimized.wat index 2eff13af99..77418d935b 100644 --- a/tests/compiler/for.optimized.wat +++ b/tests/compiler/for.optimized.wat @@ -1,8 +1,8 @@ (module (type $none_=>_none (func)) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) (type $none_=>_i32 (func (result i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $i32_=>_i32 (func (param i32) (result i32))) @@ -39,9 +39,9 @@ (local $0 i32) (local $1 i32) i32.const 1280 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1088 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -80,160 +80,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1152 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17892 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1152 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1152 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1472 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1280 - i32.const 1344 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1476 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -913,7 +759,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1615,7 +1465,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1882,4 +1735,153 @@ global.set $~lib/memory/__stack_pointer local.get $4 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1152 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17892 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1152 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1152 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1472 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1280 + i32.const 1344 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1476 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/function-call.optimized.wat b/tests/compiler/function-call.optimized.wat index 82c289ad86..26c6957bec 100644 --- a/tests/compiler/function-call.optimized.wat +++ b/tests/compiler/function-call.optimized.wat @@ -74,12 +74,15 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1472 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1280 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -118,160 +121,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1344 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 18220 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1344 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1344 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1760 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1472 - i32.const 1536 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1764 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -951,7 +800,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1216,7 +1069,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1226,7 +1082,11 @@ end local.get $0 i32.load offset=4 - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end ) (func $~start (local $0 i32) @@ -1626,4 +1486,153 @@ call $~lib/builtins/abort unreachable ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1344 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 18220 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1344 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1344 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1760 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1472 + i32.const 1536 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1764 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/function-expression.optimized.wat b/tests/compiler/function-expression.optimized.wat index 68dac24dc0..8e8d34ac47 100644 --- a/tests/compiler/function-expression.optimized.wat +++ b/tests/compiler/function-expression.optimized.wat @@ -106,9 +106,9 @@ (local $0 i32) (local $1 i32) i32.const 1792 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1600 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -281,30 +281,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -984,7 +960,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1271,7 +1251,11 @@ end local.get $0 i32.load offset=4 - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end local.get $0 @@ -1279,7 +1263,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end ) (func $~start @@ -2033,4 +2020,23 @@ global.set $~lib/memory/__stack_pointer i32.const 2000 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/getter-call.optimized.wat b/tests/compiler/getter-call.optimized.wat index c06a49e7cb..f357a512b9 100644 --- a/tests/compiler/getter-call.optimized.wat +++ b/tests/compiler/getter-call.optimized.wat @@ -1,8 +1,8 @@ (module (type $none_=>_i32 (func (result i32))) (type $none_=>_none (func)) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $i32_=>_i32 (func (param i32) (result i32))) @@ -42,9 +42,9 @@ (local $0 i32) (local $1 i32) i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -83,160 +83,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17900 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1472 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1248 - i32.const 1312 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1476 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -916,7 +762,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1176,7 +1026,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1184,7 +1037,11 @@ end local.get $0 i32.load offset=4 - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end unreachable @@ -1503,4 +1360,153 @@ call $~lib/builtins/abort unreachable ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17900 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1472 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1248 + i32.const 1312 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1476 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/implicit-getter-setter.optimized.wat b/tests/compiler/implicit-getter-setter.optimized.wat index 7aa4a5c7d0..c1816d6026 100644 --- a/tests/compiler/implicit-getter-setter.optimized.wat +++ b/tests/compiler/implicit-getter-setter.optimized.wat @@ -48,9 +48,9 @@ (local $0 i32) (local $1 i32) i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -223,30 +223,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -926,7 +902,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1417,60 +1397,6 @@ i32.store8 local.get $1 ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) - local.get $1 - i32.eqz - if - return - end - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - i32.load offset=4 - i32.const 3 - i32.and - local.tee $0 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $0 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) (func $~lib/rt/__visit_members (param $0 i32) block $folding-inner0 block $invalid @@ -1496,7 +1422,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end ) (func $~start @@ -1701,9 +1630,12 @@ local.get $0 local.get $1 i32.store - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end global.get $~lib/memory/__stack_pointer i32.const 8 i32.add @@ -1750,9 +1682,12 @@ local.get $0 local.get $1 i32.store - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add @@ -1771,4 +1706,72 @@ call $~lib/builtins/abort unreachable ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) + (func $byn-split-outlined-A$~lib/rt/itcms/__link (param $0 i32) (param $1 i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $1 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $0 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $0 + i32.const 3 + i32.eq + i32.and + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + end + end + end + ) ) diff --git a/tests/compiler/infer-array.optimized.wat b/tests/compiler/infer-array.optimized.wat index 50446b1b97..172ab52260 100644 --- a/tests/compiler/infer-array.optimized.wat +++ b/tests/compiler/infer-array.optimized.wat @@ -72,11 +72,11 @@ (local $0 i32) (local $1 i32) i32.const 1280 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 2000 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1088 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -249,30 +249,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -952,7 +928,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -2449,65 +2429,6 @@ i32.store8 end ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - local.get $1 - i32.eqz - if - return - end - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1152 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - local.tee $3 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $0 - local.get $1 - local.get $2 - select - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $3 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) (func $~lib/array/Array#__uset (param $0 i32) (param $1 i32) (param $2 i32) local.get $0 i32.load offset=4 @@ -2517,10 +2438,13 @@ i32.add local.get $2 i32.store - local.get $0 local.get $2 - i32.const 1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $2 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end ) (func $start:infer-array (local $0 i32) @@ -2840,7 +2764,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -2850,7 +2777,11 @@ end local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end local.get $0 @@ -2873,7 +2804,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end local.get $2 i32.const 4 @@ -2884,7 +2818,11 @@ end local.get $1 i32.load - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end ) (func $~start call $start:infer-array @@ -2912,10 +2850,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $4 i32.const 0 i32.store - local.get $6 + local.get $4 local.get $0 local.get $1 i32.shl @@ -2924,11 +2862,11 @@ local.get $9 i32.const 0 call $~lib/rt/itcms/__new - local.set $6 + local.set $4 local.get $3 if block $~lib/util/memory/memmove|inlined.0 - local.get $6 + local.get $4 local.tee $1 local.get $3 i32.eq @@ -2976,17 +2914,17 @@ i32.sub local.set $8 local.get $1 - local.tee $4 + local.tee $5 i32.const 1 i32.add local.set $1 local.get $3 - local.tee $5 + local.tee $6 i32.const 1 i32.add local.set $3 - local.get $4 local.get $5 + local.get $6 i32.load8_u i32.store8 br $while-continue|0 @@ -3021,17 +2959,17 @@ local.get $8 if local.get $1 - local.tee $4 + local.tee $5 i32.const 1 i32.add local.set $1 local.get $3 - local.tee $5 + local.tee $6 i32.const 1 i32.add local.set $3 - local.get $4 local.get $5 + local.get $6 i32.load8_u i32.store8 local.get $8 @@ -3114,32 +3052,36 @@ end end end - local.get $6 + local.get $4 + local.tee $1 i32.store i32.const 16 local.get $2 call $~lib/rt/itcms/__new - local.tee $1 - local.get $6 + local.tee $2 + local.get $1 i32.store local.get $1 - local.get $6 - i32.const 0 - call $~lib/rt/itcms/__link + if + local.get $2 + local.get $1 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $2 local.get $1 - local.get $6 i32.store offset=4 - local.get $1 + local.get $2 local.get $9 i32.store offset=8 - local.get $1 + local.get $2 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 ) (func $infer-array/Ref#constructor (result i32) (local $0 i32) @@ -3174,4 +3116,77 @@ global.set $~lib/memory/__stack_pointer local.get $0 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) + (func $byn-split-outlined-A$~lib/rt/itcms/__link (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1152 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $1 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + local.tee $3 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $0 + local.get $1 + local.get $2 + select + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $3 + i32.const 3 + i32.eq + i32.and + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + end + end + end + ) ) diff --git a/tests/compiler/infer-generic.optimized.wat b/tests/compiler/infer-generic.optimized.wat index c1c7df5526..4c44429d7d 100644 --- a/tests/compiler/infer-generic.optimized.wat +++ b/tests/compiler/infer-generic.optimized.wat @@ -1,9 +1,9 @@ (module (type $none_=>_none (func)) (type $i32_f32_i32_i32_=>_i32 (func (param i32 f32 i32 i32) (result i32))) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) (type $i32_=>_i32 (func (param i32) (result i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $none_=>_i32 (func (result i32))) @@ -62,11 +62,11 @@ (local $0 i32) (local $1 i32) i32.const 1152 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1424 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1232 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -105,160 +105,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1296 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 18068 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1296 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1296 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1616 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1424 - i32.const 1488 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1620 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -938,7 +784,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1199,13 +1049,20 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end return @@ -1214,7 +1071,11 @@ end local.get $0 i32.load offset=4 - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end ) (func $~start (local $0 i32) @@ -1635,4 +1496,153 @@ global.set $~lib/memory/__stack_pointer local.get $0 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1296 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 18068 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1296 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1296 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1616 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1424 + i32.const 1488 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1620 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/inlining.optimized.wat b/tests/compiler/inlining.optimized.wat index abbc64ea91..7b611d8a58 100644 --- a/tests/compiler/inlining.optimized.wat +++ b/tests/compiler/inlining.optimized.wat @@ -2,9 +2,9 @@ (type $none_=>_none (func)) (type $none_=>_i32 (func (result i32))) (type $i32_=>_i32 (func (param i32) (result i32))) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) @@ -51,9 +51,9 @@ (local $0 i32) (local $1 i32) i32.const 1328 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1136 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -92,160 +92,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1200 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17964 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1200 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1200 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1520 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1328 - i32.const 1392 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1524 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -925,7 +771,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1736,13 +1586,20 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end local.get $0 i32.load offset=4 - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end return @@ -1941,4 +1798,153 @@ unreachable end ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1200 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17964 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1200 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1200 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1520 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1328 + i32.const 1392 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1524 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/instanceof-class.optimized.wat b/tests/compiler/instanceof-class.optimized.wat index 8d45718efe..c48ccc905a 100644 --- a/tests/compiler/instanceof-class.optimized.wat +++ b/tests/compiler/instanceof-class.optimized.wat @@ -1,8 +1,8 @@ (module (type $none_=>_none (func)) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) (type $i32_=>_i32 (func (param i32) (result i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $none_=>_i32 (func (result i32))) @@ -44,18 +44,26 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $instanceof-class/b local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -94,160 +102,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17948 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1504 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1248 - i32.const 1312 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1508 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -927,7 +781,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1641,7 +1499,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1658,4 +1519,153 @@ (func $~start call $start:instanceof-class ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17948 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1504 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1248 + i32.const 1312 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1508 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/issues/1095.optimized.wat b/tests/compiler/issues/1095.optimized.wat index 18812d0391..652761bc9e 100644 --- a/tests/compiler/issues/1095.optimized.wat +++ b/tests/compiler/issues/1095.optimized.wat @@ -42,9 +42,9 @@ (local $0 i32) (local $1 i32) i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -217,30 +217,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -920,7 +896,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1155,60 +1135,6 @@ end end ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) - local.get $1 - i32.eqz - if - return - end - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - i32.load offset=4 - i32.const 3 - i32.and - local.tee $0 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $0 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) (func $~lib/rt/__visit_members (param $0 i32) block $folding-inner0 block $invalid @@ -1231,7 +1157,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end ) (func $~start @@ -1244,373 +1173,475 @@ i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner0 - global.get $~lib/memory/__stack_pointer - i32.const 1620 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $0 - i32.const 0 - i32.store - memory.size - i32.const 16 - i32.shl - i32.const 18004 - i32.sub - i32.const 1 - i32.shr_u - global.set $~lib/rt/itcms/threshold - i32.const 1172 - i32.const 1168 - i32.store - i32.const 1176 - i32.const 1168 - i32.store - i32.const 1168 - global.set $~lib/rt/itcms/pinSpace - i32.const 1204 - i32.const 1200 - i32.store - i32.const 1208 - i32.const 1200 - i32.store - i32.const 1200 - global.set $~lib/rt/itcms/toSpace - i32.const 1348 - i32.const 1344 - i32.store - i32.const 1352 - i32.const 1344 - i32.store - i32.const 1344 - global.set $~lib/rt/itcms/fromSpace - local.get $0 - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1620 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $0 - i32.const 0 - i32.store - local.get $0 - global.get $~lib/rt/itcms/total - global.get $~lib/rt/itcms/threshold - i32.ge_u - if - block $__inlined_func$~lib/rt/itcms/interrupt - i32.const 2048 - local.set $0 - loop $do-loop|0 - local.get $0 - call $~lib/rt/itcms/step - i32.sub + block $folding-inner1 + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 1620 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i32.const 0 + i32.store + memory.size + i32.const 16 + i32.shl + i32.const 18004 + i32.sub + i32.const 1 + i32.shr_u + global.set $~lib/rt/itcms/threshold + i32.const 1172 + i32.const 1168 + i32.store + i32.const 1176 + i32.const 1168 + i32.store + i32.const 1168 + global.set $~lib/rt/itcms/pinSpace + i32.const 1204 + i32.const 1200 + i32.store + i32.const 1208 + i32.const 1200 + i32.store + i32.const 1200 + global.set $~lib/rt/itcms/toSpace + i32.const 1348 + i32.const 1344 + i32.store + i32.const 1352 + i32.const 1344 + i32.store + i32.const 1344 + global.set $~lib/rt/itcms/fromSpace + local.get $0 + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1620 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i32.const 0 + i32.store + local.get $0 + global.get $~lib/rt/itcms/total + global.get $~lib/rt/itcms/threshold + i32.ge_u + if + block $__inlined_func$~lib/rt/itcms/interrupt + i32.const 2048 local.set $0 - global.get $~lib/rt/itcms/state - i32.eqz - if - global.get $~lib/rt/itcms/total - i64.extend_i32_u - i64.const 200 - i64.mul - i64.const 100 - i64.div_u - i32.wrap_i64 - i32.const 1024 - i32.add - global.set $~lib/rt/itcms/threshold - br $__inlined_func$~lib/rt/itcms/interrupt + loop $do-loop|0 + local.get $0 + call $~lib/rt/itcms/step + i32.sub + local.set $0 + global.get $~lib/rt/itcms/state + i32.eqz + if + global.get $~lib/rt/itcms/total + i64.extend_i32_u + i64.const 200 + i64.mul + i64.const 100 + i64.div_u + i32.wrap_i64 + i32.const 1024 + i32.add + global.set $~lib/rt/itcms/threshold + br $__inlined_func$~lib/rt/itcms/interrupt + end + local.get $0 + i32.const 0 + i32.gt_s + br_if $do-loop|0 end + global.get $~lib/rt/itcms/total + local.tee $0 local.get $0 - i32.const 0 - i32.gt_s - br_if $do-loop|0 + global.get $~lib/rt/itcms/threshold + i32.sub + i32.const 1024 + i32.lt_u + i32.const 10 + i32.shl + i32.add + global.set $~lib/rt/itcms/threshold end - global.get $~lib/rt/itcms/total + end + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.tee $2 + call $~lib/rt/tlsf/searchBlock + local.tee $0 + i32.eqz + if + memory.size local.tee $0 + i32.const 4 + local.get $2 + i32.load offset=1568 local.get $0 - global.get $~lib/rt/itcms/threshold + i32.const 16 + i32.shl + i32.const 4 i32.sub - i32.const 1024 - i32.lt_u - i32.const 10 + i32.ne i32.shl + i32.const 65563 i32.add - global.set $~lib/rt/itcms/threshold - end - end - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - call $~lib/rt/tlsf/initialize - end - global.get $~lib/rt/tlsf/ROOT - local.tee $2 - call $~lib/rt/tlsf/searchBlock - local.tee $0 - i32.eqz - if - memory.size - local.tee $0 - i32.const 4 - local.get $2 - i32.load offset=1568 - local.get $0 - i32.const 16 - i32.shl - i32.const 4 - i32.sub - i32.ne - i32.shl - i32.const 65563 - i32.add - i32.const -65536 - i32.and - i32.const 16 - i32.shr_u - local.tee $3 - local.get $0 - local.get $3 - i32.gt_s - select - memory.grow - i32.const 0 - i32.lt_s - if + i32.const -65536 + i32.and + i32.const 16 + i32.shr_u + local.tee $3 + local.get $0 local.get $3 + i32.gt_s + select memory.grow i32.const 0 i32.lt_s if + local.get $3 + memory.grow + i32.const 0 + i32.lt_s + if + unreachable + end + end + local.get $2 + local.get $0 + i32.const 16 + i32.shl + memory.size + i32.const 16 + i32.shl + call $~lib/rt/tlsf/addMemory + local.get $2 + call $~lib/rt/tlsf/searchBlock + local.tee $0 + i32.eqz + if + i32.const 0 + i32.const 1392 + i32.const 496 + i32.const 16 + call $~lib/builtins/abort unreachable end end - local.get $2 local.get $0 - i32.const 16 - i32.shl - memory.size - i32.const 16 - i32.shl - call $~lib/rt/tlsf/addMemory - local.get $2 - call $~lib/rt/tlsf/searchBlock - local.tee $0 - i32.eqz + i32.load + i32.const -4 + i32.and + i32.const 28 + i32.lt_u if i32.const 0 i32.const 1392 - i32.const 496 - i32.const 16 + i32.const 498 + i32.const 14 call $~lib/builtins/abort unreachable end - end - local.get $0 - i32.load - i32.const -4 - i32.and - i32.const 28 - i32.lt_u - if - i32.const 0 - i32.const 1392 - i32.const 498 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $0 - call $~lib/rt/tlsf/removeBlock - local.get $0 - i32.load - local.tee $3 - i32.const -4 - i32.and - i32.const 28 - i32.sub - local.tee $4 - i32.const 16 - i32.ge_u - if + local.get $2 local.get $0 - local.get $3 - i32.const 2 - i32.and - i32.const 28 - i32.or - i32.store + call $~lib/rt/tlsf/removeBlock local.get $0 - i32.const 32 - i32.add + i32.load local.tee $3 - local.get $4 - i32.const 4 + i32.const -4 + i32.and + i32.const 28 i32.sub - i32.const 1 + local.tee $4 + i32.const 16 + i32.ge_u + if + local.get $0 + local.get $3 + i32.const 2 + i32.and + i32.const 28 + i32.or + i32.store + local.get $0 + i32.const 32 + i32.add + local.tee $3 + local.get $4 + i32.const 4 + i32.sub + i32.const 1 + i32.or + i32.store + local.get $2 + local.get $3 + call $~lib/rt/tlsf/insertBlock + else + local.get $0 + local.get $3 + i32.const -2 + i32.and + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $0 + i32.load + i32.const -4 + i32.and + i32.add + local.tee $2 + local.get $2 + i32.load + i32.const -3 + i32.and + i32.store + end + local.get $0 + i32.const 3 + i32.store offset=12 + local.get $0 + i32.const 4 + i32.store offset=16 + global.get $~lib/rt/itcms/fromSpace + local.tee $3 + i32.load offset=8 + local.set $2 + local.get $0 + global.get $~lib/rt/itcms/white + local.get $3 i32.or - i32.store + i32.store offset=4 + local.get $0 local.get $2 - local.get $3 - call $~lib/rt/tlsf/insertBlock - else + i32.store offset=8 + local.get $2 + local.get $2 + i32.load offset=4 + i32.const 3 + i32.and local.get $0 + i32.or + i32.store offset=4 local.get $3 - i32.const -2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/total + local.get $0 + i32.load + i32.const -4 i32.and - i32.store + i32.const 4 + i32.add + i32.add + global.set $~lib/rt/itcms/total + local.get $0 + i32.const 20 + i32.add + local.tee $0 + i32.const 0 + i32.store8 local.get $0 i32.const 4 i32.add + local.tee $2 + i32.const 1 + i32.sub + i32.const 0 + i32.store8 local.get $0 + i32.const 0 + i32.store8 offset=1 + local.get $0 + i32.const 0 + i32.store8 offset=2 + local.get $2 + i32.const 2 + i32.sub + i32.const 0 + i32.store8 + local.get $2 + i32.const 3 + i32.sub + i32.const 0 + i32.store8 + local.get $0 + i32.store + local.get $0 + i32.const 1456 + i32.store + local.get $0 + i32.eqz + br_if $folding-inner1 + global.get $~lib/rt/itcms/white + i32.const 1440 i32.load - i32.const -4 + i32.const 3 i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $1 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + i32.const 1436 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $1 + i32.const 3 + i32.eq + i32.and + if + i32.const 1436 + call $~lib/rt/itcms/Object#makeGray + end + end + end + global.get $~lib/memory/__stack_pointer + i32.const 4 i32.add + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.tee $1 + local.get $0 + i32.store + local.get $1 + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1620 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer local.tee $2 + i32.const 0 + i32.store local.get $2 + local.get $0 + local.tee $1 i32.load - i32.const -3 - i32.and + local.tee $0 i32.store + local.get $0 + i32.eqz + if + i32.const 1488 + i32.const 1552 + i32.const 8 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + local.get $0 + i32.store + local.get $0 + if + local.get $1 + i32.eqz + br_if $folding-inner1 + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $1 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $1 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $1 + i32.const 3 + i32.eq + i32.and + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + end + end + end + end + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + return end - local.get $0 - i32.const 3 - i32.store offset=12 - local.get $0 - i32.const 4 - i32.store offset=16 - global.get $~lib/rt/itcms/fromSpace - local.tee $3 - i32.load offset=8 - local.set $2 - local.get $0 - global.get $~lib/rt/itcms/white - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $2 - i32.store offset=8 - local.get $2 - local.get $2 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $3 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/total - local.get $0 - i32.load - i32.const -4 - i32.and - i32.const 4 - i32.add - i32.add - global.set $~lib/rt/itcms/total - local.get $0 - i32.const 20 - i32.add - local.tee $0 - i32.const 0 - i32.store8 - local.get $0 - i32.const 4 - i32.add - local.tee $2 + i32.const 18032 + i32.const 18080 i32.const 1 - i32.sub - i32.const 0 - i32.store8 - local.get $0 - i32.const 0 - i32.store8 offset=1 - local.get $0 - i32.const 0 - i32.store8 offset=2 - local.get $2 - i32.const 2 - i32.sub - i32.const 0 - i32.store8 - local.get $2 - i32.const 3 - i32.sub - i32.const 0 - i32.store8 - local.get $0 - i32.store - local.get $0 - i32.const 1456 - i32.store - local.get $0 - i32.const 1456 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store - local.get $1 - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1620 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $1 - i32.const 0 - i32.store - local.get $1 - local.get $0 - i32.load - local.tee $1 - i32.store - local.get $1 - i32.eqz - if - i32.const 1488 - i32.const 1552 - i32.const 8 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - i32.store - local.get $0 - local.get $1 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - return + i32.const 1 + call $~lib/builtins/abort + unreachable end - i32.const 18032 - i32.const 18080 - i32.const 1 - i32.const 1 + i32.const 0 + i32.const 1120 + i32.const 294 + i32.const 14 call $~lib/builtins/abort unreachable ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/issues/1225.optimized.wat b/tests/compiler/issues/1225.optimized.wat index c6ee8d7aa5..f2af6a6a32 100644 --- a/tests/compiler/issues/1225.optimized.wat +++ b/tests/compiler/issues/1225.optimized.wat @@ -1,8 +1,8 @@ (module (type $none_=>_i32 (func (result i32))) (type $none_=>_none (func)) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $i32_=>_i32 (func (param i32) (result i32))) @@ -45,12 +45,15 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -89,160 +92,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17908 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1488 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1248 - i32.const 1312 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1492 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -922,7 +771,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1574,7 +1427,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1721,4 +1577,153 @@ i32.add global.set $~lib/rt/itcms/threshold ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17908 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1488 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1248 + i32.const 1312 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1492 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/issues/1699.optimized.wat b/tests/compiler/issues/1699.optimized.wat index c6c32970ab..66b5631583 100644 --- a/tests/compiler/issues/1699.optimized.wat +++ b/tests/compiler/issues/1699.optimized.wat @@ -45,13 +45,13 @@ (local $0 i32) (local $1 i32) i32.const 1344 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1552 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1152 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -224,30 +224,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -927,7 +903,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1718,65 +1698,6 @@ call $~lib/memory/memory.fill local.get $1 ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - local.get $1 - i32.eqz - if - return - end - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1216 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - local.tee $3 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $0 - local.get $1 - local.get $2 - select - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $3 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) (func $~lib/util/memory/memcpy (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) @@ -2802,10 +2723,13 @@ local.get $0 local.get $3 i32.store offset=4 - local.get $0 local.get $3 - i32.const 0 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $3 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end end local.get $0 local.get $10 @@ -2823,10 +2747,13 @@ i32.add local.get $2 i32.store - local.get $0 local.get $2 - i32.const 1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $2 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end ) (func $start:issues/1699 (local $0 i32) @@ -2874,13 +2801,13 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i64.const 0 i64.store offset=8 - local.get $1 + local.get $2 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -2889,10 +2816,10 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 16 i32.const 4 call $~lib/rt/itcms/__new @@ -2903,10 +2830,6 @@ i32.store local.get $0 i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - i32.const 0 i32.store offset=4 local.get $0 i32.const 0 @@ -2918,20 +2841,23 @@ i32.const 32 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $2 + local.get $1 i32.const 32 call $~lib/memory/memory.fill local.get $0 - local.get $2 + local.get $1 i32.store + local.get $1 + if + local.get $0 + local.get $1 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 - local.get $2 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - local.get $2 + local.get $1 i32.store offset=4 local.get $0 i32.const 32 @@ -2943,7 +2869,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 local.get $0 i32.store call $issues/1699/MultiAssignmentTest#constructor @@ -2967,30 +2893,30 @@ local.get $1 call $~lib/array/Array#__set i32.const 0 - local.set $1 + local.set $2 loop $for-loop|0 local.get $0 i32.load offset=12 - local.get $1 + local.get $2 i32.gt_s if global.get $~lib/memory/__stack_pointer call $issues/1699/MultiAssignmentTest#constructor - local.tee $2 + local.tee $1 i32.store offset=12 - local.get $1 + local.get $2 i32.const 1 i32.gt_s if local.get $0 - local.get $1 local.get $2 + local.get $1 call $~lib/array/Array#__set end - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|0 end end @@ -3062,7 +2988,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -3088,7 +3017,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end local.get $2 i32.const 4 @@ -3099,7 +3031,11 @@ end local.get $1 i32.load - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end unreachable @@ -3200,4 +3136,77 @@ global.set $~lib/memory/__stack_pointer local.get $0 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) + (func $byn-split-outlined-A$~lib/rt/itcms/__link (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1216 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $1 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + local.tee $3 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $0 + local.get $1 + local.get $2 + select + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $3 + i32.const 3 + i32.eq + i32.and + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + end + end + end + ) ) diff --git a/tests/compiler/logical.optimized.wat b/tests/compiler/logical.optimized.wat index 6e33905d83..e67d6bc0cd 100644 --- a/tests/compiler/logical.optimized.wat +++ b/tests/compiler/logical.optimized.wat @@ -1,8 +1,8 @@ (module (type $none_=>_none (func)) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) (type $none_=>_i32 (func (result i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $i32_=>_i32 (func (param i32) (result i32))) @@ -39,9 +39,9 @@ (local $0 i32) (local $1 i32) i32.const 1296 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1104 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -80,160 +80,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1168 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17908 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1168 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1168 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1488 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1296 - i32.const 1360 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1492 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -913,7 +759,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1169,7 +1019,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1555,4 +1408,153 @@ global.set $~lib/memory/__stack_pointer local.get $4 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1168 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17908 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1168 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1168 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1488 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1296 + i32.const 1360 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1492 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/managed-cast.optimized.wat b/tests/compiler/managed-cast.optimized.wat index fbd0e6f5c3..e33e1bcd8d 100644 --- a/tests/compiler/managed-cast.optimized.wat +++ b/tests/compiler/managed-cast.optimized.wat @@ -1,9 +1,9 @@ (module (type $none_=>_none (func)) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) (type $none_=>_i32 (func (result i32))) (type $i32_=>_i32 (func (param i32) (result i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) @@ -43,9 +43,9 @@ (local $0 i32) (local $1 i32) i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -84,160 +84,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 18060 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1632 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1248 - i32.const 1312 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1636 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -917,7 +763,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1402,7 +1252,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1890,4 +1743,153 @@ call $~lib/builtins/abort unreachable ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 18060 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1632 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1248 + i32.const 1312 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1636 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/memset.optimized.wat b/tests/compiler/memset.optimized.wat index e439105230..51e2b6896b 100644 --- a/tests/compiler/memset.optimized.wat +++ b/tests/compiler/memset.optimized.wat @@ -1,7 +1,7 @@ (module - (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $none_=>_none (func)) + (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (global $memset/dest (mut i32) (i32.const 0)) (memory $0 1) @@ -9,14 +9,95 @@ (data (i32.const 1048) "\01\00\00\00\12\00\00\00m\00e\00m\00s\00e\00t\00.\00t\00s") (export "memory" (memory $0)) (start $~start) - (func $memset/memset (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i64) - local.get $2 - i32.eqz + (func $~start + i32.const 17468 + global.set $memset/dest + i32.const 17468 + i32.const 1 + i32.const 16 + call $byn-split-outlined-A$memset/memset + global.get $memset/dest + i32.load8_u + i32.const 1 + i32.ne if - return + i32.const 0 + i32.const 1056 + i32.const 72 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $memset/dest + i32.load8_u offset=15 + i32.const 1 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 73 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $memset/dest + i32.const 1 + i32.add + i32.const 2 + i32.const 14 + call $byn-split-outlined-A$memset/memset + global.get $memset/dest + i32.load8_u + i32.const 1 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 77 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $memset/dest + i32.load8_u offset=1 + i32.const 2 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 78 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $memset/dest + i32.load8_u offset=14 + i32.const 2 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 79 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $memset/dest + i32.load8_u offset=15 + i32.const 1 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 80 + i32.const 1 + call $~lib/builtins/abort + unreachable end + ) + (func $byn-split-outlined-A$memset/memset (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i64) local.get $0 local.get $1 i32.store8 @@ -218,90 +299,4 @@ end end ) - (func $~start - i32.const 17468 - global.set $memset/dest - i32.const 17468 - i32.const 1 - i32.const 16 - call $memset/memset - global.get $memset/dest - i32.load8_u - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 72 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $memset/dest - i32.load8_u offset=15 - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 73 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $memset/dest - i32.const 1 - i32.add - i32.const 2 - i32.const 14 - call $memset/memset - global.get $memset/dest - i32.load8_u - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 77 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $memset/dest - i32.load8_u offset=1 - i32.const 2 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 78 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $memset/dest - i32.load8_u offset=14 - i32.const 2 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 79 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $memset/dest - i32.load8_u offset=15 - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 80 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - ) ) diff --git a/tests/compiler/new.optimized.wat b/tests/compiler/new.optimized.wat index 3903e2082f..53b1b63647 100644 --- a/tests/compiler/new.optimized.wat +++ b/tests/compiler/new.optimized.wat @@ -2,8 +2,8 @@ (type $none_=>_i32 (func (result i32))) (type $none_=>_none (func)) (type $i32_=>_i32 (func (param i32) (result i32))) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) @@ -46,42 +46,66 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $new/gen local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $new/ref2 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $new/genext local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $new/genext2 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $new/genext3 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -120,160 +144,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17884 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1440 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1248 - i32.const 1312 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1444 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -953,7 +823,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1440,7 +1314,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1688,4 +1565,153 @@ global.set $~lib/memory/__stack_pointer local.get $0 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17884 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1440 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1248 + i32.const 1312 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1444 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/number.optimized.wat b/tests/compiler/number.optimized.wat index ca1eb8361f..b5aacc8250 100644 --- a/tests/compiler/number.optimized.wat +++ b/tests/compiler/number.optimized.wat @@ -2,9 +2,9 @@ (type $none_=>_none (func)) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) (type $i32_=>_i32 (func (param i32) (result i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $none_=>_i32 (func (result i32))) (type $i64_i64_i32_i64_=>_i32 (func (param i64 i64 i32 i64) (result i32))) @@ -82,13 +82,13 @@ (local $0 i32) (local $1 i32) i32.const 1472 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1280 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 2080 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 3136 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -127,160 +127,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1344 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 21068 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1344 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1344 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 4656 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1472 - i32.const 1536 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 4660 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -960,7 +806,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -3763,7 +3613,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -4216,4 +4069,153 @@ call $~lib/builtins/abort unreachable ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1344 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 21068 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1344 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1344 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 4656 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1472 + i32.const 1536 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 4660 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/object-literal.optimized.wat b/tests/compiler/object-literal.optimized.wat index 868da53a1a..6045192c5c 100644 --- a/tests/compiler/object-literal.optimized.wat +++ b/tests/compiler/object-literal.optimized.wat @@ -182,67 +182,13 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) - local.get $1 - i32.eqz - if - return - end - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1104 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - i32.load offset=4 - i32.const 3 - i32.and - local.tee $0 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $0 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) (func $~lib/rt/itcms/visitRoots (local $0 i32) (local $1 i32) i32.const 1200 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1312 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -281,30 +227,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -952,6 +874,7 @@ (func $~lib/rt/itcms/step (result i32) (local $0 i32) (local $1 i32) + (local $2 i32) block $folding-inner0 block $break|0 block $case2|0 @@ -1034,7 +957,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -2634,67 +2561,96 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end return end local.get $0 - i32.load local.tee $1 + i32.load + local.tee $0 if - local.get $1 - call $~lib/rt/itcms/__visit + local.get $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end - local.get $0 + local.get $1 i32.load offset=4 - local.tee $1 + local.tee $0 if - local.get $1 - call $~lib/rt/itcms/__visit + local.get $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 if - local.get $1 - call $~lib/rt/itcms/__visit + local.get $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 if - local.get $1 - call $~lib/rt/itcms/__visit + local.get $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end - local.get $0 + local.get $1 i32.load offset=16 - local.tee $1 + local.tee $0 if - local.get $1 - call $~lib/rt/itcms/__visit + local.get $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end - local.get $0 + local.get $1 i32.load offset=20 - local.tee $1 + local.tee $0 if - local.get $1 - call $~lib/rt/itcms/__visit + local.get $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end - local.get $0 + local.get $1 i32.load offset=24 - local.tee $1 + local.tee $0 if - local.get $1 - call $~lib/rt/itcms/__visit + local.get $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end - local.get $0 + local.get $1 i32.load offset=28 - local.tee $0 + local.tee $1 if - local.get $0 - call $~lib/rt/itcms/__visit + local.get $1 + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -2705,7 +2661,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end ) (func $~start @@ -2794,9 +2753,6 @@ local.get $0 i32.const 0 i32.store offset=4 - local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer i32.const 4 i32.add @@ -2812,7 +2768,7 @@ i32.store offset=4 local.get $0 i32.const 1056 - call $~lib/rt/itcms/__link + call $byn-split-outlined-A$~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer local.tee $1 local.get $0 @@ -3499,9 +3455,6 @@ i32.const 0 i32.store offset=4 local.get $2 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $2 f64.const 0 f64.store offset=8 global.get $~lib/memory/__stack_pointer @@ -3518,7 +3471,7 @@ i32.store offset=4 local.get $2 i32.const 1632 - call $~lib/rt/itcms/__link + call $byn-split-outlined-A$~lib/rt/itcms/__link local.get $2 f64.const 0 f64.store offset=8 @@ -3609,51 +3562,33 @@ i32.store local.get $0 i32.const 1664 - call $~lib/rt/itcms/__link + call $byn-split-outlined-A$~lib/rt/itcms/__link local.get $0 i32.const 1696 i32.store offset=4 local.get $0 i32.const 1696 - call $~lib/rt/itcms/__link + call $byn-split-outlined-A$~lib/rt/itcms/__link local.get $0 i32.const 0 i32.store offset=8 local.get $0 i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - i32.const 0 i32.store offset=12 local.get $0 i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - i32.const 0 i32.store offset=16 local.get $0 i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - i32.const 0 i32.store offset=20 local.get $0 i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - i32.const 0 i32.store offset=24 local.get $0 i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - i32.const 0 i32.store offset=28 local.get $0 i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - i32.const 0 i32.store offset=32 local.get $0 i32.const -1 @@ -3669,39 +3604,21 @@ i32.store offset=8 local.get $0 i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - i32.const 0 i32.store offset=12 local.get $0 i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - i32.const 0 i32.store offset=16 local.get $0 i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - i32.const 0 i32.store offset=20 local.get $0 i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - i32.const 0 i32.store offset=24 local.get $0 i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - i32.const 0 i32.store offset=28 local.get $0 i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - i32.const 0 i32.store offset=32 global.get $~lib/memory/__stack_pointer local.get $0 @@ -3893,23 +3810,23 @@ i32.const 0 i32.gt_s if - loop $while-continue|08 + loop $while-continue|010 global.get $~lib/rt/itcms/state if call $~lib/rt/itcms/step drop - br $while-continue|08 + br $while-continue|010 end end end call $~lib/rt/itcms/step drop - loop $while-continue|19 + loop $while-continue|111 global.get $~lib/rt/itcms/state if call $~lib/rt/itcms/step drop - br $while-continue|19 + br $while-continue|111 end end global.get $~lib/rt/itcms/total @@ -3935,4 +3852,72 @@ call $~lib/builtins/abort unreachable ) + (func $byn-split-outlined-A$~lib/rt/itcms/__link (param $0 i32) (param $1 i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1104 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $1 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $0 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $0 + i32.const 3 + i32.eq + i32.and + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + end + end + end + ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/optional-typeparameters.optimized.wat b/tests/compiler/optional-typeparameters.optimized.wat index 0e3d4e65af..905af20518 100644 --- a/tests/compiler/optional-typeparameters.optimized.wat +++ b/tests/compiler/optional-typeparameters.optimized.wat @@ -1,8 +1,8 @@ (module (type $none_=>_none (func)) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) (type $i32_=>_i32 (func (param i32) (result i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $none_=>_i32 (func (result i32))) @@ -42,18 +42,26 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $optional-typeparameters/tDerived local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -92,160 +100,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17868 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1440 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1248 - i32.const 1312 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1444 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -925,7 +779,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1410,7 +1268,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1532,4 +1393,153 @@ call $~lib/builtins/abort unreachable ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17868 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1440 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1248 + i32.const 1312 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1444 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/reexport.optimized.wat b/tests/compiler/reexport.optimized.wat index 109c02b8be..010992f542 100644 --- a/tests/compiler/reexport.optimized.wat +++ b/tests/compiler/reexport.optimized.wat @@ -125,12 +125,15 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1296 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1104 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -169,160 +172,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1168 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17916 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1168 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1168 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1488 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1296 - i32.const 1360 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1492 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -1002,7 +851,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1544,7 +1397,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1864,4 +1720,153 @@ call $~lib/builtins/abort unreachable ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1168 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17916 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1168 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1168 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1488 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1296 + i32.const 1360 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1492 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/rereexport.optimized.wat b/tests/compiler/rereexport.optimized.wat index 399fe33f42..5022ffffe7 100644 --- a/tests/compiler/rereexport.optimized.wat +++ b/tests/compiler/rereexport.optimized.wat @@ -1,9 +1,9 @@ (module (type $none_=>_none (func)) (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) (type $none_=>_i32 (func (result i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $i32_=>_i32 (func (param i32) (result i32))) @@ -75,23 +75,35 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $rereexport/exportsNamespaceCar local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1296 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1104 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $reexport/car local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $~lib/rt/itcms/pinSpace local.tee $1 @@ -131,160 +143,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1168 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17956 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1168 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1168 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1536 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1296 - i32.const 1360 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1540 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -964,7 +822,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1228,7 +1090,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1654,4 +1519,153 @@ global.set $~lib/memory/__stack_pointer local.get $1 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1168 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17956 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1168 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1168 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1536 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1296 + i32.const 1360 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1540 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/resolve-access.optimized.wat b/tests/compiler/resolve-access.optimized.wat index 075c966aee..b47aee13df 100644 --- a/tests/compiler/resolve-access.optimized.wat +++ b/tests/compiler/resolve-access.optimized.wat @@ -56,13 +56,13 @@ (local $0 i32) (local $1 i32) i32.const 1280 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1088 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 2160 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 3216 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -235,30 +235,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -938,7 +914,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -2819,45 +2799,45 @@ local.get $2 ) (func $~lib/rt/__visit_members (param $0 i32) - block $invalid - block $resolve-access/Container - block $~lib/array/Array - block $~lib/array/Array - block $~lib/arraybuffer/ArrayBufferView - block $~lib/string/String - block $~lib/arraybuffer/ArrayBuffer - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $~lib/arraybuffer/ArrayBufferView $~lib/array/Array $~lib/array/Array $resolve-access/Container $invalid - end - return + block $folding-inner0 + block $invalid + block $resolve-access/Container + block $~lib/arraybuffer/ArrayBufferView + block $~lib/string/String + block $~lib/arraybuffer/ArrayBuffer + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $~lib/arraybuffer/ArrayBufferView $folding-inner0 $folding-inner0 $resolve-access/Container $invalid end return end + return + end + local.get $0 + i32.load + local.tee $0 + if local.get $0 - i32.load - local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit end - return end - local.get $0 - i32.load - call $~lib/rt/itcms/__visit return end - local.get $0 - i32.load - call $~lib/rt/itcms/__visit return end - return + unreachable + end + local.get $0 + i32.load + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit end - unreachable ) (func $~start memory.size @@ -3409,4 +3389,23 @@ call $~lib/builtins/abort unreachable ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/resolve-binary.optimized.wat b/tests/compiler/resolve-binary.optimized.wat index 5f4ddb6f76..0aec92d263 100644 --- a/tests/compiler/resolve-binary.optimized.wat +++ b/tests/compiler/resolve-binary.optimized.wat @@ -3,8 +3,8 @@ (type $none_=>_none (func)) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $none_=>_i32 (func (result i32))) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_=>_i32 (func (param i32) (result i32))) (type $i64_i64_i32_i64_=>_i32 (func (param i64 i64 i32 i64) (result i32))) @@ -361,28 +361,40 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $resolve-binary/bar local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $resolve-binary/bar2 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1632 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1440 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 2240 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 3296 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -421,160 +433,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1504 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 27676 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1504 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1504 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 11248 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1632 - i32.const 1696 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 11252 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -1254,7 +1112,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -4092,7 +3954,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -5493,4 +5358,153 @@ global.set $~lib/memory/__stack_pointer local.get $0 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1504 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 27676 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1504 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1504 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 11248 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1632 + i32.const 1696 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 11252 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/resolve-elementaccess.optimized.wat b/tests/compiler/resolve-elementaccess.optimized.wat index c543058aae..2cb055cdcb 100644 --- a/tests/compiler/resolve-elementaccess.optimized.wat +++ b/tests/compiler/resolve-elementaccess.optimized.wat @@ -2,8 +2,8 @@ (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) (type $none_=>_none (func)) - (type $i32_i32_=>_none (func (param i32 i32))) (type $i32_=>_none (func (param i32))) + (type $i32_i32_=>_none (func (param i32 i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $none_=>_i32 (func (result i32))) (type $i32_i32_f32_=>_none (func (param i32 i32 f32))) @@ -97,24 +97,32 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $resolve-elementaccess/buf local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1360 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1168 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 3568 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 4624 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -287,30 +295,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -990,7 +974,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1781,60 +1769,6 @@ call $~lib/memory/memory.fill local.get $1 ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) - local.get $1 - i32.eqz - if - return - end - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1232 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - i32.load offset=4 - i32.const 3 - i32.and - local.tee $0 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $0 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) (func $~lib/typedarray/Float32Array#__set (param $0 i32) (param $1 i32) (param $2 f32) local.get $0 i32.load offset=8 @@ -4300,7 +4234,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end ) (func $~start @@ -4744,6 +4681,8 @@ ) (func $~lib/arraybuffer/ArrayBufferView#constructor (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) + (local $4 i32) global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -4777,9 +4716,6 @@ i32.store local.get $0 i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - i32.const 0 i32.store offset=4 local.get $0 i32.const 0 @@ -4812,9 +4748,56 @@ local.get $0 local.get $1 i32.store - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1232 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $3 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $4 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $3 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $4 + i32.const 3 + i32.eq + i32.and + if + local.get $3 + call $~lib/rt/itcms/Object#makeGray + end + end + end + end local.get $0 local.get $1 i32.store offset=4 @@ -4827,4 +4810,23 @@ global.set $~lib/memory/__stack_pointer local.get $0 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/resolve-function-expression.optimized.wat b/tests/compiler/resolve-function-expression.optimized.wat index 41030633a4..0861b0d7f0 100644 --- a/tests/compiler/resolve-function-expression.optimized.wat +++ b/tests/compiler/resolve-function-expression.optimized.wat @@ -1,8 +1,8 @@ (module (type $i32_=>_i32 (func (param i32) (result i32))) (type $none_=>_none (func)) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $none_=>_i32 (func (result i32))) @@ -75,13 +75,13 @@ (local $0 i32) (local $1 i32) i32.const 1648 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1456 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 2256 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 3312 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -120,160 +120,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1520 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 19844 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1520 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1520 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 3424 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1648 - i32.const 1712 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 3428 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -953,7 +799,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1761,13 +1611,20 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end local.get $0 i32.load offset=4 - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end unreachable @@ -2186,4 +2043,153 @@ call $~lib/builtins/abort unreachable ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1520 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 19844 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1520 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1520 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 3424 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1648 + i32.const 1712 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 3428 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/resolve-nested.optimized.wat b/tests/compiler/resolve-nested.optimized.wat index b82e2b620b..d89bee7d3f 100644 --- a/tests/compiler/resolve-nested.optimized.wat +++ b/tests/compiler/resolve-nested.optimized.wat @@ -1,9 +1,9 @@ (module (type $i32_=>_i32 (func (param i32) (result i32))) (type $none_=>_none (func)) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $none_=>_i32 (func (result i32))) (type $i32_i32_i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32 i32 i32))) @@ -48,9 +48,9 @@ (local $0 i32) (local $1 i32) i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -89,160 +89,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17876 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1440 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1248 - i32.const 1312 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1444 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -922,7 +768,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1408,7 +1258,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1671,4 +1524,153 @@ i32.add global.set $~lib/memory/__stack_pointer ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17876 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1440 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1248 + i32.const 1312 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1444 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/resolve-new.optimized.wat b/tests/compiler/resolve-new.optimized.wat index 82f27d5f1e..640ecbb49b 100644 --- a/tests/compiler/resolve-new.optimized.wat +++ b/tests/compiler/resolve-new.optimized.wat @@ -1,8 +1,8 @@ (module (type $none_=>_none (func)) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) (type $none_=>_i32 (func (result i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $i32_=>_i32 (func (param i32) (result i32))) @@ -41,12 +41,15 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -85,160 +88,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17860 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1440 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1248 - i32.const 1312 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1444 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -918,7 +767,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1174,7 +1027,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1502,4 +1358,153 @@ global.set $~lib/memory/__stack_pointer local.get $4 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17860 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1440 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1248 + i32.const 1312 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1444 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/resolve-propertyaccess.optimized.wat b/tests/compiler/resolve-propertyaccess.optimized.wat index 44e306ab03..89afe66393 100644 --- a/tests/compiler/resolve-propertyaccess.optimized.wat +++ b/tests/compiler/resolve-propertyaccess.optimized.wat @@ -1,8 +1,8 @@ (module (type $none_=>_none (func)) (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $none_=>_i32 (func (result i32))) @@ -75,13 +75,13 @@ (local $0 i32) (local $1 i32) i32.const 1472 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1280 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 2080 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 3136 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -120,160 +120,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1344 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 20100 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1344 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1344 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 3680 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1472 - i32.const 1536 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 3684 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -953,7 +799,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -2093,7 +1943,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -2461,4 +2314,153 @@ call $~lib/builtins/abort unreachable ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1344 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 20100 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1344 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1344 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 3680 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1472 + i32.const 1536 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 3684 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/resolve-ternary.optimized.wat b/tests/compiler/resolve-ternary.optimized.wat index 20bccd697f..65fd5c408a 100644 --- a/tests/compiler/resolve-ternary.optimized.wat +++ b/tests/compiler/resolve-ternary.optimized.wat @@ -3,8 +3,8 @@ (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $none_=>_none (func)) (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $none_=>_i32 (func (result i32))) (type $i64_i64_i32_i64_=>_i32 (func (param i64 i64 i32 i64) (result i32))) @@ -79,13 +79,13 @@ (local $0 i32) (local $1 i32) i32.const 1472 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1280 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 2080 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 3136 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -124,160 +124,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1344 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 21028 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1344 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1344 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 4608 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1472 - i32.const 1536 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 4612 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -957,7 +803,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -3665,13 +3515,20 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end local.get $0 i32.load offset=4 - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end unreachable @@ -3976,4 +3833,153 @@ call $~lib/builtins/abort unreachable ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1344 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 21028 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1344 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1344 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 4608 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1472 + i32.const 1536 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 4612 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/resolve-unary.optimized.wat b/tests/compiler/resolve-unary.optimized.wat index 229eb5d2db..9cdca6147c 100644 --- a/tests/compiler/resolve-unary.optimized.wat +++ b/tests/compiler/resolve-unary.optimized.wat @@ -1,8 +1,8 @@ (module (type $none_=>_none (func)) (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $none_=>_i32 (func (result i32))) @@ -86,22 +86,30 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $resolve-unary/bar local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1472 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1280 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 2080 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 3136 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -140,160 +148,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1344 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 20156 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1344 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1344 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 3728 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1472 - i32.const 1536 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 3732 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -973,7 +827,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -2114,7 +1972,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -2753,4 +2614,153 @@ call $~lib/builtins/abort unreachable ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1344 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 20156 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1344 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1344 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 3728 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1472 + i32.const 1536 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 3732 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/rt/finalize.optimized.wat b/tests/compiler/rt/finalize.optimized.wat index 7216f514c5..529b1d2085 100644 --- a/tests/compiler/rt/finalize.optimized.wat +++ b/tests/compiler/rt/finalize.optimized.wat @@ -1,7 +1,7 @@ (module (type $none_=>_none (func)) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $none_=>_i32 (func (result i32))) @@ -42,9 +42,9 @@ (local $0 i32) (local $1 i32) i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -83,160 +83,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17908 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1488 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1248 - i32.const 1312 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1492 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -916,7 +762,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1519,7 +1369,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1536,4 +1389,153 @@ global.set $~started call $start:rt/finalize ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17908 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1488 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1248 + i32.const 1312 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1492 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/rt/instanceof.optimized.wat b/tests/compiler/rt/instanceof.optimized.wat index 95464f904f..8ee7b67891 100644 --- a/tests/compiler/rt/instanceof.optimized.wat +++ b/tests/compiler/rt/instanceof.optimized.wat @@ -1,9 +1,9 @@ (module (type $none_=>_none (func)) (type $i32_=>_i32 (func (param i32) (result i32))) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) (type $none_=>_i32 (func (result i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) @@ -49,42 +49,66 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $rt/instanceof/cat local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $rt/instanceof/blackcat local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $rt/instanceof/nullableAnimal local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $rt/instanceof/nullableCat local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $rt/instanceof/nullableBlackcat local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -123,160 +147,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17940 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1504 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1248 - i32.const 1312 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1508 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -956,7 +826,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -2122,7 +1996,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -2253,4 +2130,153 @@ global.set $~lib/memory/__stack_pointer local.get $0 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17940 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1504 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1248 + i32.const 1312 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1508 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/rt/runtime-incremental-export.optimized.wat b/tests/compiler/rt/runtime-incremental-export.optimized.wat index e4cdfc2327..9501d5f558 100644 --- a/tests/compiler/rt/runtime-incremental-export.optimized.wat +++ b/tests/compiler/rt/runtime-incremental-export.optimized.wat @@ -46,13 +46,13 @@ (local $0 i32) (local $1 i32) i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1456 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1520 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -228,30 +228,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -931,7 +907,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1883,7 +1863,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1923,4 +1906,23 @@ i32.const 1344 global.set $~lib/rt/itcms/fromSpace ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/rt/runtime-minimal-export.optimized.wat b/tests/compiler/rt/runtime-minimal-export.optimized.wat index d9a5761d85..8ab5478583 100644 --- a/tests/compiler/rt/runtime-minimal-export.optimized.wat +++ b/tests/compiler/rt/runtime-minimal-export.optimized.wat @@ -1176,11 +1176,11 @@ (local $5 i32) (local $6 i32) i32.const 1056 - call $~lib/rt/tcms/__visit + call $byn-split-outlined-A$~lib/rt/tcms/__visit i32.const 1280 - call $~lib/rt/tcms/__visit + call $byn-split-outlined-A$~lib/rt/tcms/__visit i32.const 1376 - call $~lib/rt/tcms/__visit + call $byn-split-outlined-A$~lib/rt/tcms/__visit global.get $~lib/rt/tcms/pinSpace local.tee $1 i32.load offset=4 @@ -1374,52 +1374,6 @@ local.get $4 global.set $~lib/rt/tcms/white ) - (func $~lib/rt/tcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/tcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/tcms/Object#unlink - global.get $~lib/rt/tcms/toSpace - local.tee $2 - i32.load offset=8 - local.set $1 - local.get $0 - global.get $~lib/rt/tcms/white - i32.eqz - local.get $2 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - end - ) (func $~lib/rt/__visit_members (param $0 i32) block $invalid block $~lib/arraybuffer/ArrayBufferView @@ -1440,7 +1394,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/tcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/tcms/__visit + end end return end @@ -1472,4 +1429,45 @@ i32.const 1424 global.set $~lib/rt/tcms/toSpace ) + (func $byn-split-outlined-A$~lib/rt/tcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + global.get $~lib/rt/tcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/tcms/Object#unlink + global.get $~lib/rt/tcms/toSpace + local.tee $2 + i32.load offset=8 + local.set $1 + local.get $0 + global.get $~lib/rt/tcms/white + i32.eqz + local.get $2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + end + ) ) diff --git a/tests/compiler/std-wasi/console.optimized.wat b/tests/compiler/std-wasi/console.optimized.wat index 57a21bc969..37eb1b52ca 100644 --- a/tests/compiler/std-wasi/console.optimized.wat +++ b/tests/compiler/std-wasi/console.optimized.wat @@ -2202,22 +2202,25 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 5120 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 5264 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 5696 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 4400 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1184 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 6432 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 7488 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -2390,33 +2393,10 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/itcms/step (result i32) (local $0 i32) (local $1 i32) + (local $2 i32) block $folding-inner0 block $break|0 block $case2|0 @@ -2499,7 +2479,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -2919,65 +2903,6 @@ call $~lib/memory/memory.fill local.get $1 ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - local.get $1 - i32.eqz - if - return - end - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 4992 - i32.const 294 - i32.const 14 - call $~lib/wasi/index/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - local.tee $3 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $0 - local.get $1 - local.get $2 - select - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $3 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) (func $~lib/util/hash/HASH<~lib/string/String> (param $0 i32) (result i32) (local $1 i32) (local $2 i32) @@ -3216,24 +3141,24 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 3 i32.shl i32.const 3 @@ -3269,28 +3194,28 @@ global.get $~lib/memory/__stack_pointer local.get $8 i32.load - local.tee $7 + local.tee $6 i32.store offset=8 local.get $2 - local.get $7 + local.get $6 i32.store local.get $2 local.get $8 i64.load offset=8 i64.store offset=8 local.get $2 - local.get $7 + local.get $6 call $~lib/util/hash/HASH<~lib/string/String> local.get $1 i32.and i32.const 2 i32.shl - local.get $6 + local.get $7 i32.add - local.tee $7 + local.tee $6 i32.load i32.store offset=16 - local.get $7 + local.get $6 local.get $2 i32.store local.get $2 @@ -3306,22 +3231,28 @@ end end local.get $0 - local.get $6 + local.get $7 i32.store - local.get $0 - local.get $6 - i32.const 0 - call $~lib/rt/itcms/__link + local.get $7 + if + local.get $0 + local.get $7 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $1 i32.store offset=4 local.get $0 local.get $3 i32.store offset=8 - local.get $0 local.get $3 - i32.const 0 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $3 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $5 i32.store offset=12 @@ -3692,6 +3623,7 @@ (func $~lib/rt/__visit_members (param $0 i32) (local $1 i32) (local $2 i32) + (local $3 i32) block $invalid block $~lib/map/Map<~lib/string/String,u64> block $~lib/arraybuffer/ArrayBufferView @@ -3712,13 +3644,20 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.load offset=16 i32.const 24 @@ -3742,7 +3681,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $3 + if + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end local.get $0 i32.const 24 @@ -3752,7 +3695,11 @@ end end local.get $1 - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end unreachable @@ -4153,10 +4100,13 @@ local.tee $2 local.get $0 i32.store - local.get $1 local.get $0 - i32.const 1 - call $~lib/rt/itcms/__link + if + local.get $1 + local.get $0 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $2 local.get $3 i64.store offset=8 @@ -4684,10 +4634,13 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store - local.get $0 local.get $1 - i32.const 0 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 3 i32.store offset=4 @@ -4696,10 +4649,13 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=8 - local.get $0 local.get $1 - i32.const 0 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 4 i32.store offset=12 @@ -4829,4 +4785,77 @@ global.set $~lib/memory/__stack_pointer local.get $1 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) + (func $byn-split-outlined-A$~lib/rt/itcms/__link (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 4992 + i32.const 294 + i32.const 14 + call $~lib/wasi/index/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $1 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + local.tee $3 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $0 + local.get $1 + local.get $2 + select + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $3 + i32.const 3 + i32.eq + i32.and + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + end + end + end + ) ) diff --git a/tests/compiler/std-wasi/crypto.optimized.wat b/tests/compiler/std-wasi/crypto.optimized.wat index d6280327bb..9f4372e4c7 100644 --- a/tests/compiler/std-wasi/crypto.optimized.wat +++ b/tests/compiler/std-wasi/crypto.optimized.wat @@ -648,38 +648,54 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std-wasi/crypto/buf local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std-wasi/crypto/b1 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std-wasi/crypto/b2 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1472 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1168 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1280 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 5504 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 6560 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -852,30 +868,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -1523,6 +1515,7 @@ (func $~lib/rt/itcms/step (result i32) (local $0 i32) (local $1 i32) + (local $2 i32) block $folding-inner0 block $break|0 block $case2|0 @@ -1605,7 +1598,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -2359,60 +2356,6 @@ call $~lib/memory/memory.fill local.get $1 ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) - local.get $1 - i32.eqz - if - return - end - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1344 - i32.const 294 - i32.const 14 - call $~lib/wasi/index/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - i32.load offset=4 - i32.const 3 - i32.and - local.tee $0 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $0 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) (func $~lib/bindings/wasi_snapshot_preview1/errnoToString (param $0 i32) (result i32) block $break|0 block $case76|0 @@ -4507,7 +4450,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end ) (func $~start @@ -4869,11 +4815,12 @@ i32.const 0 i32.store local.get $1 + local.tee $3 local.get $0 i32.const 20 i32.sub i32.load offset=16 - local.tee $3 + local.tee $1 i32.gt_u if i32.const 1472 @@ -4891,8 +4838,8 @@ i32.const -1 i32.eq if (result i32) - local.get $3 local.get $1 + local.get $3 i32.sub else i32.const 1168 @@ -4904,9 +4851,9 @@ end local.set $2 else - local.get $3 local.get $1 local.get $2 + local.get $3 i32.add i32.lt_s if @@ -4922,27 +4869,30 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 local.get $0 i32.store - local.get $3 local.get $0 - call $~lib/rt/itcms/__link - local.get $3 + if + local.get $1 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $1 local.get $2 i32.store offset=8 - local.get $3 - local.get $0 local.get $1 + local.get $0 + local.get $3 i32.add i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 ) (func $~lib/typedarray/Uint8Array#slice (param $0 i32) (result i32) (local $1 i32) @@ -4962,12 +4912,12 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $1 i32.const 0 i32.store i32.const 0 local.get $0 - local.tee $1 + local.tee $3 i32.load offset=8 local.tee $0 local.get $0 @@ -4975,6 +4925,8 @@ i32.gt_s select local.set $5 + local.get $1 + local.set $2 local.get $0 local.get $5 i32.sub @@ -4985,8 +4937,8 @@ i32.gt_s select local.tee $6 - local.set $2 - local.get $4 + local.set $1 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -5031,14 +4983,11 @@ i32.store local.get $0 i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - i32.const 0 i32.store offset=4 local.get $0 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 1073741820 i32.gt_u if @@ -5050,25 +4999,28 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $4 i32.store offset=4 - local.get $3 - local.get $2 + local.get $4 + local.get $1 call $~lib/memory/memory.fill local.get $0 - local.get $3 + local.get $4 i32.store + local.get $4 + if + local.get $0 + local.get $4 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 - local.get $3 - call $~lib/rt/itcms/__link - local.get $0 - local.get $3 + local.get $4 i32.store offset=4 local.get $0 - local.get $2 + local.get $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 @@ -5080,13 +5032,13 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $2 local.get $0 i32.store local.get $0 i32.load offset=4 local.get $5 - local.get $1 + local.get $3 i32.load offset=4 i32.add local.get $6 @@ -5105,4 +5057,72 @@ call $~lib/wasi/index/abort unreachable ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) + (func $byn-split-outlined-A$~lib/rt/itcms/__link (param $0 i32) (param $1 i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1344 + i32.const 294 + i32.const 14 + call $~lib/wasi/index/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $1 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $0 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $0 + i32.const 3 + i32.eq + i32.and + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + end + end + end + ) ) diff --git a/tests/compiler/std-wasi/process.optimized.wat b/tests/compiler/std-wasi/process.optimized.wat index 9f2f513182..436988f85c 100644 --- a/tests/compiler/std-wasi/process.optimized.wat +++ b/tests/compiler/std-wasi/process.optimized.wat @@ -2182,55 +2182,75 @@ (local $0 i32) (local $1 i32) i32.const 4448 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 4528 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/process/process.argv local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $~lib/process/process.env local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std-wasi/process/argv local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std-wasi/process/env local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std-wasi/process/envKeys local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 4784 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 4560 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 4976 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 5344 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 4352 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1136 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 6128 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 7184 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -2403,33 +2423,10 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/itcms/step (result i32) (local $0 i32) (local $1 i32) + (local $2 i32) block $folding-inner0 block $break|0 block $case2|0 @@ -2512,7 +2509,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -2932,65 +2933,6 @@ call $~lib/memory/memory.fill local.get $1 ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - local.get $1 - i32.eqz - if - return - end - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 4656 - i32.const 294 - i32.const 14 - call $~lib/wasi/index/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - local.tee $3 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $0 - local.get $1 - local.get $2 - select - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $3 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) (func $~lib/util/memory/memcpy (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) @@ -4002,10 +3944,13 @@ local.get $0 local.get $2 i32.store offset=4 - local.get $0 local.get $2 - i32.const 0 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $2 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end end local.get $0 local.get $1 @@ -4049,10 +3994,13 @@ i32.add local.get $2 i32.store - local.get $0 local.get $2 - i32.const 1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $2 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end ) (func $~lib/util/string/compareImpl (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (local $4 i32) @@ -4544,7 +4492,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -4568,7 +4519,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end local.get $2 i32.const 4 @@ -4579,12 +4533,20 @@ end local.get $1 i32.load - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.load offset=16 i32.const 12 @@ -4594,10 +4556,10 @@ local.tee $1 local.tee $0 i32.add - local.set $2 - loop $while-continue|00 + local.set $3 + loop $while-continue|03 local.get $0 - local.get $2 + local.get $3 i32.lt_u if local.get $0 @@ -4608,20 +4570,32 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.load offset=4 - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end local.get $0 i32.const 12 i32.add local.set $0 - br $while-continue|00 + br $while-continue|03 end end local.get $1 - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end unreachable @@ -4867,24 +4841,30 @@ local.get $0 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store - local.get $0 - local.get $1 - i32.const 0 - call $~lib/rt/itcms/__link + local.get $2 + if + local.get $0 + local.get $2 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 3 i32.store offset=4 local.get $0 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=8 - local.get $0 - local.get $1 - i32.const 0 - call $~lib/rt/itcms/__link + local.get $2 + if + local.get $0 + local.get $2 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 4 i32.store offset=12 @@ -4920,7 +4900,7 @@ local.get $4 i32.sub call $~lib/string/String.UTF8.decodeUnsafe - local.tee $3 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 5168 @@ -4937,30 +4917,30 @@ br_if $__inlined_func$~lib/string/String#indexOf i32.const -1 local.set $0 - local.get $3 + local.get $2 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $3 i32.eqz br_if $__inlined_func$~lib/string/String#indexOf i32.const 0 - local.get $2 - local.get $2 + local.get $3 + local.get $3 select local.set $0 - local.get $2 + local.get $3 local.get $6 i32.sub - local.set $2 + local.set $3 loop $for-loop|00 local.get $0 - local.get $2 + local.get $3 i32.le_s if - local.get $3 + local.get $2 local.get $0 i32.const 5168 local.get $6 @@ -4981,15 +4961,15 @@ i32.const -1 i32.xor if - local.get $3 + local.get $2 i32.const 0 local.get $0 call $~lib/string/String#substring - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=8 local.get $3 + i32.store offset=8 + local.get $2 local.get $0 i32.const 1 i32.add @@ -5000,7 +4980,7 @@ local.get $0 i32.store offset=12 local.get $1 - local.get $2 + local.get $3 local.get $0 call $~lib/map/Map<~lib/string/String,~lib/string/String>#set else @@ -5008,7 +4988,7 @@ i32.const 5200 i32.store offset=12 local.get $1 - local.get $3 + local.get $2 i32.const 5200 call $~lib/map/Map<~lib/string/String,~lib/string/String>#set end @@ -5895,10 +5875,6 @@ i32.store local.get $1 i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $1 - i32.const 0 i32.store offset=4 local.get $1 i32.const 0 @@ -5937,10 +5913,13 @@ local.get $1 local.get $2 i32.store - local.get $1 local.get $2 - i32.const 0 - call $~lib/rt/itcms/__link + if + local.get $1 + local.get $2 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $1 local.get $2 i32.store offset=4 @@ -6419,10 +6398,13 @@ local.get $3 local.get $2 i32.store offset=4 - local.get $0 local.get $2 - i32.const 1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $2 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end else local.get $0 i32.load offset=16 @@ -6450,7 +6432,7 @@ i32.const 1 i32.or end - local.set $10 + local.set $8 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -6467,14 +6449,14 @@ i32.const 0 i32.store offset=8 local.get $3 - local.get $10 + local.get $8 i32.const 1 i32.add local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $8 + local.tee $10 i32.store global.get $~lib/memory/__stack_pointer local.get $3 @@ -6525,11 +6507,11 @@ local.get $3 local.get $9 call $~lib/util/hash/HASH<~lib/string/String> - local.get $10 + local.get $8 i32.and i32.const 2 i32.shl - local.get $8 + local.get $10 i32.add local.tee $9 i32.load @@ -6550,22 +6532,28 @@ end end local.get $0 - local.get $8 + local.get $10 i32.store + local.get $10 + if + local.get $0 + local.get $10 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $8 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - local.get $10 i32.store offset=4 local.get $0 local.get $4 i32.store offset=8 - local.get $0 local.get $4 - i32.const 0 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $4 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $6 i32.store offset=12 @@ -6586,11 +6574,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $10 + local.tee $4 i32.const 1 i32.add i32.store offset=16 - local.get $10 + local.get $4 i32.const 12 i32.mul local.get $3 @@ -6598,17 +6586,23 @@ local.tee $3 local.get $1 i32.store - local.get $0 local.get $1 - i32.const 1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $3 local.get $2 i32.store offset=4 - local.get $0 local.get $2 - i32.const 1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $2 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $0 i32.load offset=20 @@ -6645,4 +6639,77 @@ call $~lib/wasi/index/abort unreachable ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) + (func $byn-split-outlined-A$~lib/rt/itcms/__link (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 4656 + i32.const 294 + i32.const 14 + call $~lib/wasi/index/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $1 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + local.tee $3 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $0 + local.get $1 + local.get $2 + select + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $3 + i32.const 3 + i32.eq + i32.and + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + end + end + end + ) ) diff --git a/tests/compiler/std/array-literal.optimized.wat b/tests/compiler/std/array-literal.optimized.wat index 3487f46c6b..43095ce823 100644 --- a/tests/compiler/std/array-literal.optimized.wat +++ b/tests/compiler/std/array-literal.optimized.wat @@ -99,43 +99,63 @@ (local $0 i32) (local $1 i32) i32.const 1088 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1344 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $std/array-literal/emptyArrayI32 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/array-literal/dynamicArrayI8 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/array-literal/dynamicArrayI32 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/array-literal/dynamicArrayRef local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/array-literal/dynamicArrayRefWithCtor local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1200 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1472 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -308,30 +328,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -1011,7 +1007,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1798,65 +1798,6 @@ end local.get $3 ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - local.get $1 - i32.eqz - if - return - end - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1536 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - local.tee $3 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $0 - local.get $1 - local.get $2 - select - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $3 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) (func $~lib/array/Array#__uset (param $0 i32) (param $1 i32) (param $2 i32) local.get $0 i32.load offset=4 @@ -1866,10 +1807,13 @@ i32.add local.get $2 i32.store - local.get $0 local.get $2 - i32.const 1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $2 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end ) (func $~lib/array/Array~visit (param $0 i32) (local $1 i32) @@ -1883,18 +1827,21 @@ i32.const 2 i32.shl i32.add - local.set $2 + local.set $3 loop $while-continue|0 local.get $1 - local.get $2 + local.get $3 i32.lt_u if local.get $1 i32.load - local.tee $3 + local.tee $2 if - local.get $3 - call $~lib/rt/itcms/__visit + local.get $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end local.get $1 i32.const 4 @@ -1905,61 +1852,65 @@ end local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end ) (func $~lib/rt/__visit_members (param $0 i32) - block $invalid - block $~lib/array/Array - block $std/array-literal/RefWithCtor - block $~lib/array/Array - block $std/array-literal/Ref - block $~lib/array/Array - block $~lib/array/Array - block $~lib/arraybuffer/ArrayBufferView - block $~lib/string/String - block $~lib/arraybuffer/ArrayBuffer - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $~lib/arraybuffer/ArrayBufferView $~lib/array/Array $~lib/array/Array $std/array-literal/Ref $~lib/array/Array $std/array-literal/RefWithCtor $~lib/array/Array $invalid - end - return + block $folding-inner0 + block $invalid + block $~lib/array/Array + block $std/array-literal/RefWithCtor + block $~lib/array/Array + block $std/array-literal/Ref + block $~lib/arraybuffer/ArrayBufferView + block $~lib/string/String + block $~lib/arraybuffer/ArrayBuffer + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $~lib/arraybuffer/ArrayBufferView $folding-inner0 $folding-inner0 $std/array-literal/Ref $~lib/array/Array $std/array-literal/RefWithCtor $~lib/array/Array $invalid end return end + return + end + local.get $0 + i32.load + local.tee $0 + if local.get $0 - i32.load - local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit end - return end - local.get $0 - i32.load - call $~lib/rt/itcms/__visit return end - local.get $0 - i32.load - call $~lib/rt/itcms/__visit return end + local.get $0 + call $~lib/array/Array~visit return end - local.get $0 - call $~lib/array/Array~visit return end + local.get $0 + call $~lib/array/Array~visit return end + unreachable + end + local.get $0 + i32.load + local.tee $0 + if local.get $0 - call $~lib/array/Array~visit - return + call $byn-split-outlined-A$~lib/rt/itcms/__visit end - unreachable ) (func $~start call $start:std/array-literal @@ -2532,26 +2483,29 @@ local.get $0 local.get $1 i32.shl - local.tee $1 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store i32.const 16 local.get $2 call $~lib/rt/itcms/__new local.tee $2 - local.get $3 + local.get $1 i32.store + local.get $1 + if + local.get $2 + local.get $1 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $2 - local.get $3 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $2 - local.get $3 + local.get $1 i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 local.get $2 local.get $0 @@ -2628,4 +2582,77 @@ global.set $~lib/memory/__stack_pointer local.get $0 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) + (func $byn-split-outlined-A$~lib/rt/itcms/__link (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1536 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $1 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + local.tee $3 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $0 + local.get $1 + local.get $2 + select + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $3 + i32.const 3 + i32.eq + i32.and + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + end + end + end + ) ) diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index f84cff29fe..c806198320 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -718,38 +718,50 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 7696 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $std/array/inputStabArr local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/array/outputStabArr local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1344 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 15152 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 2176 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 5952 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1152 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 10256 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 11312 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -922,30 +934,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -1593,6 +1581,7 @@ (func $~lib/rt/itcms/step (result i32) (local $0 i32) (local $1 i32) + (local $2 i32) block $folding-inner0 block $break|0 block $case2|0 @@ -1675,7 +1664,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -2445,65 +2438,6 @@ call $~lib/memory/memory.fill local.get $1 ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - local.get $1 - i32.eqz - if - return - end - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1216 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - local.tee $3 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $0 - local.get $1 - local.get $2 - select - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $3 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) (func $~lib/util/memory/memcpy (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) @@ -3604,7 +3538,6 @@ (func $~lib/array/ensureCapacity (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) local.get $0 i32.load offset=8 local.tee $5 @@ -3638,9 +3571,9 @@ local.get $2 i32.shl local.set $1 - block $__inlined_func$~lib/rt/itcms/__renew (result i32) + block $__inlined_func$~lib/rt/itcms/__renew local.get $3 - if + if (result i32) local.get $5 i32.const 1 i32.shl @@ -3656,12 +3589,12 @@ local.get $2 i32.lt_u select - local.set $1 + else + local.get $1 end - local.get $1 - local.set $2 - local.get $4 local.tee $3 + local.get $4 + local.tee $2 i32.const 20 i32.sub local.tee $4 @@ -3670,57 +3603,59 @@ i32.and i32.const 16 i32.sub - local.get $1 - i32.ge_u + i32.le_u if local.get $4 - local.get $2 - i32.store offset=16 local.get $3 + i32.store offset=16 + local.get $2 + local.set $1 br $__inlined_func$~lib/rt/itcms/__renew end - local.get $2 + local.get $3 local.get $4 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $6 - local.get $3 + local.tee $1 local.get $2 + local.get $3 local.get $4 i32.load offset=16 local.tee $4 - local.get $2 + local.get $3 local.get $4 i32.lt_u select call $~lib/memory/memory.copy - local.get $6 end - local.tee $2 + local.get $1 local.get $5 i32.add i32.const 0 - local.get $1 + local.get $3 local.get $5 i32.sub call $~lib/memory/memory.fill + local.get $1 local.get $2 - local.get $3 i32.ne if local.get $0 - local.get $2 + local.get $1 i32.store local.get $0 - local.get $2 + local.get $1 i32.store offset=4 - local.get $0 - local.get $2 - i32.const 0 - call $~lib/rt/itcms/__link + local.get $1 + if + local.get $0 + local.get $1 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end end local.get $0 - local.get $1 + local.get $3 i32.store offset=8 end ) @@ -3810,10 +3745,13 @@ i32.add local.get $2 i32.store - local.get $0 local.get $2 - i32.const 1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $2 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end ) (func $~lib/array/Array#at (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -13823,10 +13761,13 @@ i32.add local.get $1 i32.store - local.get $0 local.get $1 - i32.const 1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $2 i32.store offset=12 @@ -13859,18 +13800,21 @@ i32.const 2 i32.shl i32.add - local.set $2 + local.set $3 loop $while-continue|0 local.get $1 - local.get $2 + local.get $3 i32.lt_u if local.get $1 i32.load - local.tee $3 + local.tee $2 if - local.get $3 - call $~lib/rt/itcms/__visit + local.get $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end local.get $1 i32.const 4 @@ -13881,7 +13825,11 @@ end local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end ) (func $~lib/rt/__visit_members (param $0 i32) block $folding-inner4 @@ -13923,7 +13871,11 @@ end local.get $0 i32.load offset=4 - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end local.get $0 @@ -13931,13 +13883,20 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end ) (func $~setArgumentsLength (param $0 i32) local.get $0 @@ -14706,10 +14665,10 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) - (local $9 f64) - (local $10 i32) - (local $11 f32) + (local $8 f64) + (local $9 i32) + (local $10 f32) + (local $11 i32) global.get $~lib/memory/__stack_pointer i32.const 172 i32.sub @@ -14872,10 +14831,6 @@ i32.store local.get $0 i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - i32.const 0 i32.store offset=4 local.get $0 i32.const 0 @@ -14893,10 +14848,13 @@ local.get $0 local.get $2 i32.store - local.get $0 local.get $2 - i32.const 0 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $2 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $2 i32.store offset=4 @@ -15083,43 +15041,43 @@ i32.const 7 i32.const 1888 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=12 - local.get $0 + local.get $1 i32.load offset=4 - local.set $4 + local.set $11 i32.const 1 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $2 - local.get $2 + local.tee $0 + local.get $0 i32.const 1 i32.gt_s select - local.set $1 + local.set $2 i32.const 3 - local.get $2 - local.get $2 + local.get $0 + local.get $0 i32.const 3 i32.gt_s select - local.set $2 + local.set $0 loop $for-loop|0 - local.get $1 + local.get $0 local.get $2 - i32.lt_s + i32.gt_s if - local.get $1 + local.get $2 i32.const 2 i32.shl - local.get $4 + local.get $11 i32.add i32.const 1 i32.store - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|0 end end @@ -15128,12 +15086,12 @@ i32.const 7 i32.const 1936 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=8 local.get $0 + i32.store offset=8 local.get $1 + local.get $0 call $std/array/isArraysEqual i32.eqz if @@ -15144,8 +15102,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 local.set $0 i32.const 0 @@ -15156,24 +15113,24 @@ i32.const 0 i32.gt_s select - local.set $5 - loop $for-loop|03 + local.set $4 + loop $for-loop|04 local.get $2 - local.get $5 + local.get $4 i32.gt_s if - local.get $5 + local.get $4 i32.const 2 i32.shl local.get $0 i32.add i32.const 0 i32.store - local.get $5 + local.get $4 i32.const 1 i32.add - local.set $5 - br $for-loop|03 + local.set $4 + br $for-loop|04 end end i32.const 5 @@ -15199,7 +15156,7 @@ end local.get $1 i32.load offset=4 - local.set $4 + local.set $11 i32.const 0 local.get $1 i32.load offset=12 @@ -15219,7 +15176,7 @@ i32.gt_s select local.set $2 - loop $for-loop|05 + loop $for-loop|06 local.get $0 local.get $2 i32.lt_s @@ -15227,7 +15184,7 @@ local.get $0 i32.const 2 i32.shl - local.get $4 + local.get $11 i32.add i32.const 1 i32.store @@ -15235,7 +15192,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|05 + br $for-loop|06 end end i32.const 5 @@ -15261,7 +15218,7 @@ end local.get $1 i32.load offset=4 - local.set $4 + local.set $11 local.get $1 i32.load offset=12 local.tee $2 @@ -15273,24 +15230,24 @@ i32.const 0 i32.gt_s select - local.set $5 - loop $for-loop|07 + local.set $4 + loop $for-loop|08 local.get $2 - local.get $5 + local.get $4 i32.gt_s if - local.get $5 + local.get $4 i32.const 2 i32.shl - local.get $4 + local.get $11 i32.add i32.const 2 i32.store - local.get $5 + local.get $4 i32.const 1 i32.add - local.set $5 - br $for-loop|07 + local.set $4 + br $for-loop|08 end end i32.const 5 @@ -15316,7 +15273,7 @@ end local.get $1 i32.load offset=4 - local.set $4 + local.set $11 i32.const 1 local.get $1 i32.load offset=12 @@ -15333,7 +15290,7 @@ i32.gt_s select local.set $2 - loop $for-loop|09 + loop $for-loop|010 local.get $0 local.get $2 i32.lt_s @@ -15341,7 +15298,7 @@ local.get $0 i32.const 2 i32.shl - local.get $4 + local.get $11 i32.add i32.const 0 i32.store @@ -15349,7 +15306,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|09 + br $for-loop|010 end end i32.const 5 @@ -16852,9 +16809,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $5 + local.tee $4 i32.store - local.get $5 + local.get $4 i32.load offset=12 local.tee $0 i32.const 1 @@ -16867,12 +16824,12 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $4 i32.load offset=4 - local.tee $4 + local.tee $11 i32.load - local.get $4 - local.get $4 + local.get $11 + local.get $11 i32.const 4 i32.add local.get $0 @@ -16884,11 +16841,11 @@ local.tee $0 call $~lib/memory/memory.copy local.get $0 - local.get $4 + local.get $11 i32.add i32.const 0 i32.store - local.get $5 + local.get $4 local.get $1 i32.store offset=12 global.set $std/array/i @@ -17348,7 +17305,7 @@ i32.store local.get $1 i32.load offset=4 - local.set $6 + local.set $5 i32.const 0 local.set $0 local.get $1 @@ -17360,31 +17317,31 @@ local.get $1 i32.const 1 i32.shr_u - local.set $5 + local.set $4 local.get $1 i32.const 1 i32.sub - local.set $4 + local.set $11 loop $while-continue|0 local.get $0 - local.get $5 + local.get $4 i32.lt_u if local.get $0 i32.const 2 i32.shl - local.get $6 + local.get $5 i32.add local.tee $1 i32.load local.set $2 local.get $1 - local.get $4 + local.get $11 local.get $0 i32.sub i32.const 2 i32.shl - local.get $6 + local.get $5 i32.add local.tee $1 i32.load @@ -17518,7 +17475,7 @@ local.get $2 i32.load offset=12 local.set $1 - loop $for-loop|010 + loop $for-loop|011 local.get $0 local.get $1 i32.lt_s @@ -17545,7 +17502,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|010 + br $for-loop|011 end end global.get $~lib/memory/__stack_pointer @@ -17816,7 +17773,7 @@ local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|011 + loop $while-continue|012 local.get $0 local.get $2 i32.lt_s @@ -17834,7 +17791,7 @@ i32.const 1 i32.add local.set $0 - br $while-continue|011 + br $while-continue|012 end end i32.const -1 @@ -17857,7 +17814,7 @@ i32.store i32.const 0 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf12 + block $__inlined_func$~lib/array/Array#indexOf13 local.get $1 i32.load offset=12 local.tee $2 @@ -17869,12 +17826,12 @@ if i32.const -1 local.set $0 - br $__inlined_func$~lib/array/Array#indexOf12 + br $__inlined_func$~lib/array/Array#indexOf13 end local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|013 + loop $while-continue|014 local.get $0 local.get $2 i32.lt_s @@ -17887,12 +17844,12 @@ i32.load i32.const 42 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf12 + br_if $__inlined_func$~lib/array/Array#indexOf13 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|013 + br $while-continue|014 end end i32.const -1 @@ -17917,7 +17874,7 @@ i32.store i32.const 0 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf14 + block $__inlined_func$~lib/array/Array#indexOf15 local.get $1 i32.load offset=12 local.tee $2 @@ -17929,12 +17886,12 @@ if i32.const -1 local.set $0 - br $__inlined_func$~lib/array/Array#indexOf14 + br $__inlined_func$~lib/array/Array#indexOf15 end local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|015 + loop $while-continue|016 local.get $0 local.get $2 i32.lt_s @@ -17947,12 +17904,12 @@ i32.load i32.const 45 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf14 + br_if $__inlined_func$~lib/array/Array#indexOf15 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|015 + br $while-continue|016 end end i32.const -1 @@ -17977,7 +17934,7 @@ i32.store i32.const 100 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf16 + block $__inlined_func$~lib/array/Array#indexOf17 local.get $1 i32.load offset=12 local.tee $2 @@ -17989,12 +17946,12 @@ if i32.const -1 local.set $0 - br $__inlined_func$~lib/array/Array#indexOf16 + br $__inlined_func$~lib/array/Array#indexOf17 end local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|017 + loop $while-continue|018 local.get $0 local.get $2 i32.lt_s @@ -18007,12 +17964,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf16 + br_if $__inlined_func$~lib/array/Array#indexOf17 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|017 + br $while-continue|018 end end i32.const -1 @@ -18035,7 +17992,7 @@ global.get $std/array/arr local.tee $1 i32.store - block $__inlined_func$~lib/array/Array#indexOf18 + block $__inlined_func$~lib/array/Array#indexOf19 local.get $1 i32.load offset=12 local.tee $2 @@ -18047,7 +18004,7 @@ if i32.const -1 local.set $0 - br $__inlined_func$~lib/array/Array#indexOf18 + br $__inlined_func$~lib/array/Array#indexOf19 end local.get $2 i32.const 100 @@ -18062,7 +18019,7 @@ local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|019 + loop $while-continue|020 local.get $0 local.get $2 i32.lt_s @@ -18075,12 +18032,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf18 + br_if $__inlined_func$~lib/array/Array#indexOf19 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|019 + br $while-continue|020 end end i32.const -1 @@ -18103,7 +18060,7 @@ global.get $std/array/arr local.tee $1 i32.store - block $__inlined_func$~lib/array/Array#indexOf20 + block $__inlined_func$~lib/array/Array#indexOf21 local.get $1 i32.load offset=12 local.tee $2 @@ -18115,7 +18072,7 @@ if i32.const -1 local.set $0 - br $__inlined_func$~lib/array/Array#indexOf20 + br $__inlined_func$~lib/array/Array#indexOf21 end local.get $2 i32.const 2 @@ -18130,7 +18087,7 @@ local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|021 + loop $while-continue|022 local.get $0 local.get $2 i32.lt_s @@ -18143,12 +18100,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf20 + br_if $__inlined_func$~lib/array/Array#indexOf21 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|021 + br $while-continue|022 end end i32.const -1 @@ -18171,7 +18128,7 @@ global.get $std/array/arr local.tee $1 i32.store - block $__inlined_func$~lib/array/Array#indexOf22 + block $__inlined_func$~lib/array/Array#indexOf23 local.get $1 i32.load offset=12 local.tee $2 @@ -18183,7 +18140,7 @@ if i32.const -1 local.set $0 - br $__inlined_func$~lib/array/Array#indexOf22 + br $__inlined_func$~lib/array/Array#indexOf23 end local.get $2 i32.const 4 @@ -18198,7 +18155,7 @@ local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|023 + loop $while-continue|024 local.get $0 local.get $2 i32.lt_s @@ -18211,12 +18168,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf22 + br_if $__inlined_func$~lib/array/Array#indexOf23 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|023 + br $while-continue|024 end end i32.const -1 @@ -18241,7 +18198,7 @@ i32.store i32.const 0 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf24 + block $__inlined_func$~lib/array/Array#indexOf25 local.get $1 i32.load offset=12 local.tee $2 @@ -18253,12 +18210,12 @@ if i32.const -1 local.set $0 - br $__inlined_func$~lib/array/Array#indexOf24 + br $__inlined_func$~lib/array/Array#indexOf25 end local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|025 + loop $while-continue|026 local.get $0 local.get $2 i32.lt_s @@ -18271,12 +18228,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf24 + br_if $__inlined_func$~lib/array/Array#indexOf25 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|025 + br $while-continue|026 end end i32.const -1 @@ -18301,7 +18258,7 @@ i32.store i32.const 1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf26 + block $__inlined_func$~lib/array/Array#indexOf27 local.get $1 i32.load offset=12 local.tee $2 @@ -18313,12 +18270,12 @@ if i32.const -1 local.set $0 - br $__inlined_func$~lib/array/Array#indexOf26 + br $__inlined_func$~lib/array/Array#indexOf27 end local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|027 + loop $while-continue|028 local.get $0 local.get $2 i32.lt_s @@ -18331,12 +18288,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf26 + br_if $__inlined_func$~lib/array/Array#indexOf27 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|027 + br $while-continue|028 end end i32.const -1 @@ -18361,7 +18318,7 @@ i32.store i32.const 2 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf28 + block $__inlined_func$~lib/array/Array#indexOf29 local.get $1 i32.load offset=12 local.tee $2 @@ -18373,12 +18330,12 @@ if i32.const -1 local.set $0 - br $__inlined_func$~lib/array/Array#indexOf28 + br $__inlined_func$~lib/array/Array#indexOf29 end local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|029 + loop $while-continue|030 local.get $0 local.get $2 i32.lt_s @@ -18391,12 +18348,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf28 + br_if $__inlined_func$~lib/array/Array#indexOf29 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|029 + br $while-continue|030 end end i32.const -1 @@ -18420,43 +18377,43 @@ i32.const 10 i32.const 4000 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store i32.const 0 local.set $0 i32.const -1 - local.set $1 + local.set $2 block $__inlined_func$~lib/array/Array#indexOf - local.get $2 + local.get $1 i32.load offset=12 - local.tee $4 + local.tee $11 i32.const 0 i32.le_s i32.const 1 - local.get $4 + local.get $11 select br_if $__inlined_func$~lib/array/Array#indexOf - local.get $2 + local.get $1 i32.load offset=4 - local.set $2 + local.set $1 loop $while-continue|010 local.get $0 - local.get $4 + local.get $11 i32.lt_s if local.get $0 - local.tee $1 + local.tee $2 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add f32.load f32.const nan:0x400000 f32.eq br_if $__inlined_func$~lib/array/Array#indexOf - local.get $1 + local.get $2 i32.const 1 i32.add local.set $0 @@ -18464,9 +18421,9 @@ end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.const -1 i32.ne if @@ -18482,43 +18439,43 @@ i32.const 11 i32.const 4032 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store i32.const 0 local.set $0 i32.const -1 - local.set $1 + local.set $2 block $__inlined_func$~lib/array/Array#indexOf - local.get $2 + local.get $1 i32.load offset=12 - local.tee $4 + local.tee $11 i32.const 0 i32.le_s i32.const 1 - local.get $4 + local.get $11 select br_if $__inlined_func$~lib/array/Array#indexOf - local.get $2 + local.get $1 i32.load offset=4 - local.set $2 + local.set $1 loop $while-continue|037 local.get $0 - local.get $4 + local.get $11 i32.lt_s if local.get $0 - local.tee $1 + local.tee $2 i32.const 3 i32.shl - local.get $2 + local.get $1 i32.add f64.load f64.const nan:0x8000000000000 f64.eq br_if $__inlined_func$~lib/array/Array#indexOf - local.get $1 + local.get $2 i32.const 1 i32.add local.set $0 @@ -18526,9 +18483,9 @@ end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.const -1 i32.ne if @@ -18551,23 +18508,23 @@ global.set $~argumentsLength local.get $0 i32.load offset=12 - local.tee $4 + local.tee $11 local.set $2 i32.const -1 local.set $1 block $__inlined_func$~lib/array/Array#lastIndexOf - local.get $4 + local.get $11 i32.eqz br_if $__inlined_func$~lib/array/Array#lastIndexOf local.get $2 - local.get $4 + local.get $11 i32.add - local.get $4 + local.get $11 i32.const 1 i32.sub local.get $2 local.get $2 - local.get $4 + local.get $11 i32.ge_s select local.get $2 @@ -18577,7 +18534,7 @@ local.set $2 local.get $0 i32.load offset=4 - local.set $4 + local.set $11 loop $while-continue|00 local.get $2 i32.const 0 @@ -18587,7 +18544,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $11 i32.add i32.load i32.const 2 @@ -18618,23 +18575,23 @@ global.set $~argumentsLength local.get $0 i32.load offset=12 - local.tee $4 + local.tee $11 local.set $2 i32.const -1 local.set $1 block $__inlined_func$~lib/array/Array#lastIndexOf5 - local.get $4 + local.get $11 i32.eqz br_if $__inlined_func$~lib/array/Array#lastIndexOf5 local.get $2 - local.get $4 + local.get $11 i32.add - local.get $4 + local.get $11 i32.const 1 i32.sub local.get $2 local.get $2 - local.get $4 + local.get $11 i32.ge_s select local.get $2 @@ -18644,7 +18601,7 @@ local.set $2 local.get $0 i32.load offset=4 - local.set $4 + local.set $11 loop $while-continue|06 local.get $2 i32.const 0 @@ -18654,7 +18611,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $11 i32.add i32.load i32.const 7 @@ -18688,7 +18645,7 @@ i32.eqz if i32.const -1 - local.set $1 + local.set $2 br $__inlined_func$~lib/array/Array#lastIndexOf7 end local.get $1 @@ -18699,35 +18656,35 @@ i32.const 3 i32.le_s select - local.set $1 + local.set $2 local.get $0 i32.load offset=4 - local.set $2 - loop $while-continue|030 - local.get $1 + local.set $1 + loop $while-continue|031 + local.get $2 i32.const 0 i32.ge_s if - local.get $1 + local.get $2 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/array/Array#lastIndexOf7 - local.get $1 + local.get $2 i32.const 1 i32.sub - local.set $1 - br $while-continue|030 + local.set $2 + br $while-continue|031 end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.const 3 i32.ne if @@ -18738,15 +18695,15 @@ call $~lib/builtins/abort unreachable end - block $__inlined_func$~lib/array/Array#lastIndexOf31 + block $__inlined_func$~lib/array/Array#lastIndexOf32 local.get $0 i32.load offset=12 local.tee $1 i32.eqz if i32.const -1 - local.set $1 - br $__inlined_func$~lib/array/Array#lastIndexOf31 + local.set $2 + br $__inlined_func$~lib/array/Array#lastIndexOf32 end local.get $1 i32.const 1 @@ -18756,35 +18713,35 @@ i32.const 2 i32.le_s select - local.set $1 + local.set $2 local.get $0 i32.load offset=4 - local.set $2 - loop $while-continue|032 - local.get $1 + local.set $1 + loop $while-continue|033 + local.get $2 i32.const 0 i32.ge_s if - local.get $1 + local.get $2 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add i32.load i32.const 2 i32.eq - br_if $__inlined_func$~lib/array/Array#lastIndexOf31 - local.get $1 + br_if $__inlined_func$~lib/array/Array#lastIndexOf32 + local.get $2 i32.const 1 i32.sub - local.set $1 - br $while-continue|032 + local.set $2 + br $while-continue|033 end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 if i32.const 0 i32.const 1552 @@ -18793,48 +18750,48 @@ call $~lib/builtins/abort unreachable end - block $__inlined_func$~lib/array/Array#lastIndexOf33 + block $__inlined_func$~lib/array/Array#lastIndexOf34 local.get $0 i32.load offset=12 local.tee $1 i32.eqz if i32.const -1 - local.set $1 - br $__inlined_func$~lib/array/Array#lastIndexOf33 + local.set $2 + br $__inlined_func$~lib/array/Array#lastIndexOf34 end local.get $1 i32.const 2 i32.sub - local.set $1 + local.set $2 local.get $0 i32.load offset=4 - local.set $2 - loop $while-continue|034 - local.get $1 + local.set $1 + loop $while-continue|035 + local.get $2 i32.const 0 i32.ge_s if - local.get $1 + local.get $2 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add i32.load i32.const 2 i32.eq - br_if $__inlined_func$~lib/array/Array#lastIndexOf33 - local.get $1 + br_if $__inlined_func$~lib/array/Array#lastIndexOf34 + local.get $2 i32.const 1 i32.sub - local.set $1 - br $while-continue|034 + local.set $2 + br $while-continue|035 end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 if i32.const 0 i32.const 1552 @@ -18843,7 +18800,7 @@ call $~lib/builtins/abort unreachable end - block $__inlined_func$~lib/array/Array#lastIndexOf35 + block $__inlined_func$~lib/array/Array#lastIndexOf36 local.get $0 local.tee $1 i32.load offset=12 @@ -18852,7 +18809,7 @@ if i32.const -1 local.set $0 - br $__inlined_func$~lib/array/Array#lastIndexOf35 + br $__inlined_func$~lib/array/Array#lastIndexOf36 end local.get $0 i32.const 1 @@ -18861,7 +18818,7 @@ local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|036 + loop $while-continue|038 local.get $0 i32.const 0 i32.ge_s @@ -18874,12 +18831,12 @@ i32.load i32.const 2 i32.eq - br_if $__inlined_func$~lib/array/Array#lastIndexOf35 + br_if $__inlined_func$~lib/array/Array#lastIndexOf36 local.get $0 i32.const 1 i32.sub local.set $0 - br $while-continue|036 + br $while-continue|038 end end i32.const -1 @@ -18902,7 +18859,7 @@ i32.store i32.const 0 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf37 + block $__inlined_func$~lib/array/Array#indexOf39 local.get $1 i32.load offset=12 local.tee $2 @@ -18914,12 +18871,12 @@ if i32.const -1 local.set $0 - br $__inlined_func$~lib/array/Array#indexOf37 + br $__inlined_func$~lib/array/Array#indexOf39 end local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|038 + loop $while-continue|040 local.get $0 local.get $2 i32.lt_s @@ -18932,12 +18889,12 @@ i32.load i32.const 44 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf37 + br_if $__inlined_func$~lib/array/Array#indexOf39 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|038 + br $while-continue|040 end end i32.const -1 @@ -18960,7 +18917,7 @@ i32.store i32.const 0 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf39 + block $__inlined_func$~lib/array/Array#indexOf41 local.get $1 i32.load offset=12 local.tee $2 @@ -18972,12 +18929,12 @@ if i32.const -1 local.set $0 - br $__inlined_func$~lib/array/Array#indexOf39 + br $__inlined_func$~lib/array/Array#indexOf41 end local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|040 + loop $while-continue|042 local.get $0 local.get $2 i32.lt_s @@ -18990,12 +18947,12 @@ i32.load i32.const 42 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf39 + br_if $__inlined_func$~lib/array/Array#indexOf41 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|040 + br $while-continue|042 end end i32.const -1 @@ -19018,7 +18975,7 @@ i32.store i32.const 0 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf41 + block $__inlined_func$~lib/array/Array#indexOf43 local.get $1 i32.load offset=12 local.tee $2 @@ -19030,12 +18987,12 @@ if i32.const -1 local.set $0 - br $__inlined_func$~lib/array/Array#indexOf41 + br $__inlined_func$~lib/array/Array#indexOf43 end local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|042 + loop $while-continue|044 local.get $0 local.get $2 i32.lt_s @@ -19048,12 +19005,12 @@ i32.load i32.const 45 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf41 + br_if $__inlined_func$~lib/array/Array#indexOf43 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|042 + br $while-continue|044 end end i32.const -1 @@ -19076,7 +19033,7 @@ i32.store i32.const 100 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf43 + block $__inlined_func$~lib/array/Array#indexOf45 local.get $1 i32.load offset=12 local.tee $2 @@ -19088,12 +19045,12 @@ if i32.const -1 local.set $0 - br $__inlined_func$~lib/array/Array#indexOf43 + br $__inlined_func$~lib/array/Array#indexOf45 end local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|044 + loop $while-continue|046 local.get $0 local.get $2 i32.lt_s @@ -19106,12 +19063,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf43 + br_if $__inlined_func$~lib/array/Array#indexOf45 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|044 + br $while-continue|046 end end i32.const -1 @@ -19132,7 +19089,7 @@ global.get $std/array/arr local.tee $1 i32.store - block $__inlined_func$~lib/array/Array#indexOf45 + block $__inlined_func$~lib/array/Array#indexOf47 local.get $1 i32.load offset=12 local.tee $2 @@ -19144,7 +19101,7 @@ if i32.const -1 local.set $0 - br $__inlined_func$~lib/array/Array#indexOf45 + br $__inlined_func$~lib/array/Array#indexOf47 end local.get $2 i32.const 100 @@ -19159,7 +19116,7 @@ local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|046 + loop $while-continue|048 local.get $0 local.get $2 i32.lt_s @@ -19172,12 +19129,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf45 + br_if $__inlined_func$~lib/array/Array#indexOf47 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|046 + br $while-continue|048 end end i32.const -1 @@ -19198,7 +19155,7 @@ global.get $std/array/arr local.tee $1 i32.store - block $__inlined_func$~lib/array/Array#indexOf47 + block $__inlined_func$~lib/array/Array#indexOf49 local.get $1 i32.load offset=12 local.tee $2 @@ -19210,7 +19167,7 @@ if i32.const -1 local.set $0 - br $__inlined_func$~lib/array/Array#indexOf47 + br $__inlined_func$~lib/array/Array#indexOf49 end local.get $2 i32.const 2 @@ -19225,7 +19182,7 @@ local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|048 + loop $while-continue|050 local.get $0 local.get $2 i32.lt_s @@ -19238,12 +19195,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf47 + br_if $__inlined_func$~lib/array/Array#indexOf49 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|048 + br $while-continue|050 end end i32.const -1 @@ -19264,7 +19221,7 @@ global.get $std/array/arr local.tee $1 i32.store - block $__inlined_func$~lib/array/Array#indexOf49 + block $__inlined_func$~lib/array/Array#indexOf51 local.get $1 i32.load offset=12 local.tee $2 @@ -19276,7 +19233,7 @@ if i32.const -1 local.set $0 - br $__inlined_func$~lib/array/Array#indexOf49 + br $__inlined_func$~lib/array/Array#indexOf51 end local.get $2 i32.const 4 @@ -19291,7 +19248,7 @@ local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|050 + loop $while-continue|052 local.get $0 local.get $2 i32.lt_s @@ -19304,12 +19261,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf49 + br_if $__inlined_func$~lib/array/Array#indexOf51 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|050 + br $while-continue|052 end end i32.const -1 @@ -19332,7 +19289,7 @@ i32.store i32.const 0 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf51 + block $__inlined_func$~lib/array/Array#indexOf53 local.get $1 i32.load offset=12 local.tee $2 @@ -19344,12 +19301,12 @@ if i32.const -1 local.set $0 - br $__inlined_func$~lib/array/Array#indexOf51 + br $__inlined_func$~lib/array/Array#indexOf53 end local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|052 + loop $while-continue|054 local.get $0 local.get $2 i32.lt_s @@ -19362,12 +19319,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf51 + br_if $__inlined_func$~lib/array/Array#indexOf53 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|052 + br $while-continue|054 end end i32.const -1 @@ -19390,7 +19347,7 @@ i32.store i32.const 1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf53 + block $__inlined_func$~lib/array/Array#indexOf55 local.get $1 i32.load offset=12 local.tee $2 @@ -19402,12 +19359,12 @@ if i32.const -1 local.set $0 - br $__inlined_func$~lib/array/Array#indexOf53 + br $__inlined_func$~lib/array/Array#indexOf55 end local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|054 + loop $while-continue|056 local.get $0 local.get $2 i32.lt_s @@ -19420,12 +19377,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf53 + br_if $__inlined_func$~lib/array/Array#indexOf55 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|054 + br $while-continue|056 end end i32.const -1 @@ -19448,7 +19405,7 @@ i32.store i32.const 2 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf55 + block $__inlined_func$~lib/array/Array#indexOf57 local.get $1 i32.load offset=12 local.tee $2 @@ -19460,12 +19417,12 @@ if i32.const -1 local.set $0 - br $__inlined_func$~lib/array/Array#indexOf55 + br $__inlined_func$~lib/array/Array#indexOf57 end local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|056 + loop $while-continue|058 local.get $0 local.get $2 i32.lt_s @@ -19478,12 +19435,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf55 + br_if $__inlined_func$~lib/array/Array#indexOf57 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|056 + br $while-continue|058 end end i32.const -1 @@ -19538,11 +19495,11 @@ local.get $1 i32.add f32.load - local.tee $11 + local.tee $10 f32.const nan:0x400000 f32.eq - local.get $11 - local.get $11 + local.get $10 + local.get $10 f32.ne i32.or br_if $__inlined_func$~lib/array/Array#includes @@ -19591,7 +19548,7 @@ local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|04857 + loop $while-continue|04859 local.get $0 local.get $2 i32.lt_s @@ -19603,11 +19560,11 @@ local.get $1 i32.add f64.load - local.tee $9 + local.tee $8 f64.const nan:0x8000000000000 f64.eq - local.get $9 - local.get $9 + local.get $8 + local.get $8 f64.ne i32.or br_if $__inlined_func$~lib/array/Array#includes @@ -19616,7 +19573,7 @@ i32.const 1 i32.add local.set $0 - br $while-continue|04857 + br $while-continue|04859 end end i32.const 0 @@ -20771,11 +20728,11 @@ i32.const 0 i32.gt_s select - local.set $5 + local.set $4 local.get $1 i32.const 1 local.get $3 - local.get $5 + local.get $4 i32.sub local.tee $1 local.get $1 @@ -20788,42 +20745,42 @@ i32.const 0 i32.gt_s select - local.tee $6 + local.tee $5 i32.const 2 i32.const 12 i32.const 0 call $~lib/rt/__newArray - local.tee $7 + local.tee $6 i32.store - local.get $7 + local.get $6 i32.load offset=4 local.get $0 i32.load offset=4 local.tee $2 - local.get $5 + local.get $4 i32.const 2 i32.shl i32.add local.tee $1 - local.get $6 + local.get $5 i32.const 2 i32.shl call $~lib/memory/memory.copy local.get $3 + local.get $4 local.get $5 - local.get $6 i32.add - local.tee $5 + local.tee $4 i32.ne if local.get $1 - local.get $5 + local.get $4 i32.const 2 i32.shl local.get $2 i32.add local.get $3 - local.get $5 + local.get $4 i32.sub i32.const 2 i32.shl @@ -20831,16 +20788,16 @@ end local.get $0 local.get $3 - local.get $6 + local.get $5 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $6 i32.store offset=4 - local.get $7 + local.get $6 i32.load offset=12 i32.const 1 i32.ne @@ -20853,7 +20810,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $6 i32.const 0 call $~lib/array/Array#__get local.tee $1 @@ -20965,20 +20922,20 @@ call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store global.get $~lib/memory/__stack_pointer i32.const 6144 i32.store offset=8 i32.const 0 local.set $0 - local.get $4 + local.get $11 i32.load offset=12 local.set $2 block $__inlined_func$~lib/array/Array#findIndex - loop $for-loop|059 + loop $for-loop|061 local.get $2 - local.get $4 + local.get $11 i32.load offset=12 local.tee $1 local.get $1 @@ -20988,7 +20945,7 @@ local.get $0 i32.gt_s if - local.get $4 + local.get $11 i32.load offset=4 local.get $0 i32.const 2 @@ -20998,7 +20955,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $4 + local.get $11 i32.const 6144 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21007,7 +20964,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|059 + br $for-loop|061 end end i32.const -1 @@ -21027,20 +20984,20 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store local.get $0 i32.const 6176 i32.store offset=8 i32.const 0 local.set $0 - local.get $4 + local.get $11 i32.load offset=12 local.set $2 - block $__inlined_func$~lib/array/Array#findIndex60 - loop $for-loop|061 + block $__inlined_func$~lib/array/Array#findIndex62 + loop $for-loop|063 local.get $2 - local.get $4 + local.get $11 i32.load offset=12 local.tee $1 local.get $1 @@ -21050,7 +21007,7 @@ local.get $0 i32.gt_s if - local.get $4 + local.get $11 i32.load offset=4 local.get $0 i32.const 2 @@ -21060,16 +21017,16 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $4 + local.get $11 i32.const 6176 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#findIndex60 + br_if $__inlined_func$~lib/array/Array#findIndex62 local.get $0 i32.const 1 i32.add local.set $0 - br $for-loop|061 + br $for-loop|063 end end i32.const -1 @@ -21091,20 +21048,20 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store local.get $0 i32.const 6208 i32.store offset=8 i32.const 0 local.set $0 - local.get $4 + local.get $11 i32.load offset=12 local.set $2 - block $__inlined_func$~lib/array/Array#findIndex62 - loop $for-loop|063 + block $__inlined_func$~lib/array/Array#findIndex64 + loop $for-loop|065 local.get $2 - local.get $4 + local.get $11 i32.load offset=12 local.tee $1 local.get $1 @@ -21114,7 +21071,7 @@ local.get $0 i32.gt_s if - local.get $4 + local.get $11 i32.load offset=4 local.get $0 i32.const 2 @@ -21124,16 +21081,16 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $4 + local.get $11 i32.const 6208 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#findIndex62 + br_if $__inlined_func$~lib/array/Array#findIndex64 local.get $0 i32.const 1 i32.add local.set $0 - br $for-loop|063 + br $for-loop|065 end end i32.const -1 @@ -21155,20 +21112,20 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store local.get $0 i32.const 6240 i32.store offset=8 i32.const 0 local.set $0 - local.get $4 + local.get $11 i32.load offset=12 local.set $2 - block $__inlined_func$~lib/array/Array#findIndex64 - loop $for-loop|065 + block $__inlined_func$~lib/array/Array#findIndex66 + loop $for-loop|067 local.get $2 - local.get $4 + local.get $11 i32.load offset=12 local.tee $1 local.get $1 @@ -21178,7 +21135,7 @@ local.get $0 i32.gt_s if - local.get $4 + local.get $11 i32.load offset=4 local.get $0 i32.const 2 @@ -21188,16 +21145,16 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $4 + local.get $11 i32.const 6240 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#findIndex64 + br_if $__inlined_func$~lib/array/Array#findIndex66 local.get $0 i32.const 1 i32.add local.set $0 - br $for-loop|065 + br $for-loop|067 end end i32.const -1 @@ -21235,20 +21192,20 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store local.get $0 i32.const 6272 i32.store offset=8 i32.const 0 local.set $0 - local.get $4 + local.get $11 i32.load offset=12 local.set $2 - block $__inlined_func$~lib/array/Array#findIndex66 - loop $for-loop|067 + block $__inlined_func$~lib/array/Array#findIndex68 + loop $for-loop|069 local.get $2 - local.get $4 + local.get $11 i32.load offset=12 local.tee $1 local.get $1 @@ -21258,7 +21215,7 @@ local.get $0 i32.gt_s if - local.get $4 + local.get $11 i32.load offset=4 local.get $0 i32.const 2 @@ -21268,16 +21225,16 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $4 + local.get $11 i32.const 6272 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#findIndex66 + br_if $__inlined_func$~lib/array/Array#findIndex68 local.get $0 i32.const 1 i32.add local.set $0 - br $for-loop|067 + br $for-loop|069 end end i32.const -1 @@ -21326,20 +21283,20 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store global.get $~lib/memory/__stack_pointer i32.const 6304 i32.store offset=8 i32.const 0 local.set $0 - local.get $4 + local.get $11 i32.load offset=12 local.set $2 - block $__inlined_func$~lib/array/Array#findIndex68 - loop $for-loop|069 + block $__inlined_func$~lib/array/Array#findIndex70 + loop $for-loop|071 local.get $2 - local.get $4 + local.get $11 i32.load offset=12 local.tee $1 local.get $1 @@ -21349,7 +21306,7 @@ local.get $0 i32.gt_s if - local.get $4 + local.get $11 i32.load offset=4 local.get $0 i32.const 2 @@ -21359,16 +21316,16 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $4 + local.get $11 i32.const 6304 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#findIndex68 + br_if $__inlined_func$~lib/array/Array#findIndex70 local.get $0 i32.const 1 i32.add local.set $0 - br $for-loop|069 + br $for-loop|071 end end i32.const -1 @@ -21425,12 +21382,12 @@ i32.const 3 i32.const 6336 call $~lib/rt/__newArray - local.tee $2 + local.tee $11 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 6384 i32.store offset=8 - local.get $2 + local.get $11 i32.load offset=12 i32.const 1 i32.sub @@ -21441,7 +21398,7 @@ i32.const 0 i32.ge_s if - local.get $2 + local.get $11 i32.load offset=4 local.get $0 i32.const 2 @@ -21451,7 +21408,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $2 + local.get $11 i32.const 6384 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21480,7 +21437,7 @@ global.get $~lib/memory/__stack_pointer i32.const 6416 i32.store offset=8 - local.get $2 + local.get $11 i32.load offset=12 i32.const 1 i32.sub @@ -21491,7 +21448,7 @@ i32.const 0 i32.ge_s if - local.get $2 + local.get $11 i32.load offset=4 local.get $0 i32.const 2 @@ -21501,7 +21458,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $2 + local.get $11 i32.const 6416 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21532,7 +21489,7 @@ global.get $~lib/memory/__stack_pointer i32.const 6448 i32.store offset=8 - local.get $2 + local.get $11 i32.load offset=12 i32.const 1 i32.sub @@ -21543,7 +21500,7 @@ i32.const 0 i32.ge_s if - local.get $2 + local.get $11 i32.load offset=4 local.get $0 i32.const 2 @@ -21553,7 +21510,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $2 + local.get $11 i32.const 6448 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21584,43 +21541,43 @@ global.get $~lib/memory/__stack_pointer i32.const 6480 i32.store offset=8 - local.get $2 + local.get $11 i32.load offset=12 i32.const 1 i32.sub - local.set $1 + local.set $2 block $__inlined_func$~lib/array/Array#findLastIndex63 loop $for-loop|064 - local.get $1 + local.get $2 i32.const 0 i32.ge_s if - local.get $2 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $1 local.get $2 + local.get $11 i32.const 6480 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#findLastIndex63 - local.get $1 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $2 br $for-loop|064 end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 global.set $std/array/i global.get $std/array/i i32.const -1 @@ -21636,32 +21593,32 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $5 + local.tee $4 i32.store local.get $0 i32.const 6512 i32.store offset=8 block $__inlined_func$~lib/array/Array#every (result i32) i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $4 i32.load offset=12 - local.set $4 - loop $for-loop|070 + local.set $11 + loop $for-loop|072 + local.get $11 local.get $4 - local.get $5 i32.load offset=12 local.tee $0 local.get $0 - local.get $4 + local.get $11 i32.gt_s select - local.get $1 + local.get $2 i32.gt_s if - local.get $5 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add @@ -21671,19 +21628,19 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $1 - local.get $5 + local.get $2 + local.get $4 i32.const 6512 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $__inlined_func$~lib/array/Array#every drop - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|070 + local.set $2 + br $for-loop|072 end end i32.const 1 @@ -21700,32 +21657,32 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $5 + local.tee $4 i32.store local.get $0 i32.const 6544 i32.store offset=8 - block $__inlined_func$~lib/array/Array#every71 (result i32) + block $__inlined_func$~lib/array/Array#every73 (result i32) i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $4 i32.load offset=12 - local.set $4 - loop $for-loop|072 + local.set $11 + loop $for-loop|074 + local.get $11 local.get $4 - local.get $5 i32.load offset=12 local.tee $0 local.get $0 - local.get $4 + local.get $11 i32.gt_s select - local.get $1 + local.get $2 i32.gt_s if - local.get $5 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add @@ -21735,19 +21692,19 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $1 - local.get $5 + local.get $2 + local.get $4 i32.const 6544 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz - br_if $__inlined_func$~lib/array/Array#every71 + br_if $__inlined_func$~lib/array/Array#every73 drop - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|072 + local.set $2 + br $for-loop|074 end end i32.const 1 @@ -21763,32 +21720,32 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $5 + local.tee $4 i32.store local.get $0 i32.const 6576 i32.store offset=8 - block $__inlined_func$~lib/array/Array#every73 (result i32) + block $__inlined_func$~lib/array/Array#every75 (result i32) i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $4 i32.load offset=12 - local.set $4 - loop $for-loop|074 + local.set $11 + loop $for-loop|076 + local.get $11 local.get $4 - local.get $5 i32.load offset=12 local.tee $0 local.get $0 - local.get $4 + local.get $11 i32.gt_s select - local.get $1 + local.get $2 i32.gt_s if - local.get $5 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add @@ -21798,19 +21755,19 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $1 - local.get $5 + local.get $2 + local.get $4 i32.const 6576 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz - br_if $__inlined_func$~lib/array/Array#every73 + br_if $__inlined_func$~lib/array/Array#every75 drop - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|074 + local.set $2 + br $for-loop|076 end end i32.const 1 @@ -21843,32 +21800,32 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $5 + local.tee $4 i32.store local.get $0 i32.const 6608 i32.store offset=8 - block $__inlined_func$~lib/array/Array#every75 (result i32) + block $__inlined_func$~lib/array/Array#every77 (result i32) i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $4 i32.load offset=12 - local.set $4 - loop $for-loop|076 + local.set $11 + loop $for-loop|078 + local.get $11 local.get $4 - local.get $5 i32.load offset=12 local.tee $0 local.get $0 - local.get $4 + local.get $11 i32.gt_s select - local.get $1 + local.get $2 i32.gt_s if - local.get $5 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add @@ -21878,19 +21835,19 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $1 - local.get $5 + local.get $2 + local.get $4 i32.const 6608 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz - br_if $__inlined_func$~lib/array/Array#every75 + br_if $__inlined_func$~lib/array/Array#every77 drop - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|076 + local.set $2 + br $for-loop|078 end end i32.const 1 @@ -21933,32 +21890,32 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $5 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 6640 i32.store offset=8 - block $__inlined_func$~lib/array/Array#every77 (result i32) + block $__inlined_func$~lib/array/Array#every79 (result i32) i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $4 i32.load offset=12 - local.set $4 - loop $for-loop|078 + local.set $11 + loop $for-loop|080 + local.get $11 local.get $4 - local.get $5 i32.load offset=12 local.tee $0 local.get $0 - local.get $4 + local.get $11 i32.gt_s select - local.get $1 + local.get $2 i32.gt_s if - local.get $5 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add @@ -21968,19 +21925,19 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $1 - local.get $5 + local.get $2 + local.get $4 i32.const 6640 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz - br_if $__inlined_func$~lib/array/Array#every77 + br_if $__inlined_func$~lib/array/Array#every79 drop - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|078 + local.set $2 + br $for-loop|080 end end i32.const 1 @@ -22028,32 +21985,32 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $5 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 6672 i32.store offset=8 block $__inlined_func$~lib/array/Array#some (result i32) i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $4 i32.load offset=12 - local.set $4 - loop $for-loop|079 + local.set $11 + loop $for-loop|081 + local.get $11 local.get $4 - local.get $5 i32.load offset=12 local.tee $0 local.get $0 - local.get $4 + local.get $11 i32.gt_s select - local.get $1 + local.get $2 i32.gt_s if - local.get $5 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add @@ -22063,18 +22020,18 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $1 - local.get $5 + local.get $2 + local.get $4 i32.const 6672 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#some drop - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|079 + local.set $2 + br $for-loop|081 end end i32.const 0 @@ -22091,32 +22048,32 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $5 + local.tee $4 i32.store local.get $0 i32.const 6704 i32.store offset=8 - block $__inlined_func$~lib/array/Array#some80 (result i32) + block $__inlined_func$~lib/array/Array#some82 (result i32) i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $4 i32.load offset=12 - local.set $4 - loop $for-loop|081 + local.set $11 + loop $for-loop|083 + local.get $11 local.get $4 - local.get $5 i32.load offset=12 local.tee $0 local.get $0 - local.get $4 + local.get $11 i32.gt_s select - local.get $1 + local.get $2 i32.gt_s if - local.get $5 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add @@ -22126,18 +22083,18 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $1 - local.get $5 + local.get $2 + local.get $4 i32.const 6704 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#some80 + br_if $__inlined_func$~lib/array/Array#some82 drop - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|081 + local.set $2 + br $for-loop|083 end end i32.const 0 @@ -22153,32 +22110,32 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $5 + local.tee $4 i32.store local.get $0 i32.const 6736 i32.store offset=8 - block $__inlined_func$~lib/array/Array#some82 (result i32) + block $__inlined_func$~lib/array/Array#some84 (result i32) i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $4 i32.load offset=12 - local.set $4 - loop $for-loop|083 + local.set $11 + loop $for-loop|085 + local.get $11 local.get $4 - local.get $5 i32.load offset=12 local.tee $0 local.get $0 - local.get $4 + local.get $11 i32.gt_s select - local.get $1 + local.get $2 i32.gt_s if - local.get $5 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add @@ -22188,18 +22145,18 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $1 - local.get $5 + local.get $2 + local.get $4 i32.const 6736 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#some82 + br_if $__inlined_func$~lib/array/Array#some84 drop - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|083 + local.set $2 + br $for-loop|085 end end i32.const 0 @@ -22231,32 +22188,32 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $5 + local.tee $4 i32.store local.get $0 i32.const 6768 i32.store offset=8 - block $__inlined_func$~lib/array/Array#some84 (result i32) + block $__inlined_func$~lib/array/Array#some86 (result i32) i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $4 i32.load offset=12 - local.set $4 - loop $for-loop|085 + local.set $11 + loop $for-loop|087 + local.get $11 local.get $4 - local.get $5 i32.load offset=12 local.tee $0 local.get $0 - local.get $4 + local.get $11 i32.gt_s select - local.get $1 + local.get $2 i32.gt_s if - local.get $5 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add @@ -22266,18 +22223,18 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $1 - local.get $5 + local.get $2 + local.get $4 i32.const 6768 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#some84 + br_if $__inlined_func$~lib/array/Array#some86 drop - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|085 + local.set $2 + br $for-loop|087 end end i32.const 0 @@ -22321,32 +22278,32 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $5 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 6800 i32.store offset=8 - block $__inlined_func$~lib/array/Array#some86 (result i32) + block $__inlined_func$~lib/array/Array#some88 (result i32) i32.const 0 - local.set $1 - local.get $5 + local.set $2 + local.get $4 i32.load offset=12 - local.set $4 - loop $for-loop|087 + local.set $11 + loop $for-loop|089 + local.get $11 local.get $4 - local.get $5 i32.load offset=12 local.tee $0 local.get $0 - local.get $4 + local.get $11 i32.gt_s select - local.get $1 + local.get $2 i32.gt_s if - local.get $5 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add @@ -22356,18 +22313,18 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $1 - local.get $5 + local.get $2 + local.get $4 i32.const 6800 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#some86 + br_if $__inlined_func$~lib/array/Array#some88 drop - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|087 + local.set $2 + br $for-loop|089 end end i32.const 0 @@ -22416,47 +22373,47 @@ global.set $std/array/i global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store global.get $~lib/memory/__stack_pointer i32.const 6832 i32.store offset=8 i32.const 0 - local.set $1 - local.get $4 - i32.load offset=12 local.set $2 - loop $for-loop|06988 - local.get $2 - local.get $4 + local.get $11 + i32.load offset=12 + local.set $1 + loop $for-loop|06990 + local.get $1 + local.get $11 i32.load offset=12 local.tee $0 local.get $0 - local.get $2 + local.get $1 i32.gt_s select - local.get $1 + local.get $2 i32.gt_s if - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $4 + local.get $2 + local.get $11 i32.const 6832 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|06988 + local.set $2 + br $for-loop|06990 end end global.get $std/array/i @@ -22475,47 +22432,47 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store local.get $0 i32.const 6864 i32.store offset=8 i32.const 0 - local.set $1 - local.get $4 - i32.load offset=12 local.set $2 - loop $for-loop|071 - local.get $2 - local.get $4 + local.get $11 + i32.load offset=12 + local.set $1 + loop $for-loop|07191 + local.get $1 + local.get $11 i32.load offset=12 local.tee $0 local.get $0 - local.get $2 + local.get $1 i32.gt_s select - local.get $1 + local.get $2 i32.gt_s if - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $4 + local.get $2 + local.get $11 i32.const 6864 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|071 + local.set $2 + br $for-loop|07191 end end global.get $std/array/i @@ -22550,47 +22507,47 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store local.get $0 i32.const 6896 i32.store offset=8 i32.const 0 - local.set $1 - local.get $4 - i32.load offset=12 local.set $2 - loop $for-loop|07489 - local.get $2 - local.get $4 + local.get $11 + i32.load offset=12 + local.set $1 + loop $for-loop|07492 + local.get $1 + local.get $11 i32.load offset=12 local.tee $0 local.get $0 - local.get $2 + local.get $1 i32.gt_s select - local.get $1 + local.get $2 i32.gt_s if - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $4 + local.get $2 + local.get $11 i32.const 6896 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|07489 + local.set $2 + br $for-loop|07492 end end global.get $std/array/i @@ -22636,47 +22593,47 @@ global.set $std/array/i global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store global.get $~lib/memory/__stack_pointer i32.const 6928 i32.store offset=8 i32.const 0 - local.set $1 - local.get $4 - i32.load offset=12 local.set $2 - loop $for-loop|07690 - local.get $2 - local.get $4 + local.get $11 + i32.load offset=12 + local.set $1 + loop $for-loop|07693 + local.get $1 + local.get $11 i32.load offset=12 local.tee $0 local.get $0 - local.get $2 + local.get $1 i32.gt_s select - local.get $1 + local.get $2 i32.gt_s if - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $4 + local.get $2 + local.get $11 i32.const 6928 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|07690 + local.set $2 + br $for-loop|07693 end end global.get $std/array/i @@ -22724,47 +22681,47 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store global.get $~lib/memory/__stack_pointer i32.const 6960 i32.store offset=8 i32.const 0 - local.set $1 - local.get $4 - i32.load offset=12 local.set $2 - loop $for-loop|07991 - local.get $2 - local.get $4 + local.get $11 + i32.load offset=12 + local.set $1 + loop $for-loop|079 + local.get $1 + local.get $11 i32.load offset=12 local.tee $0 local.get $0 - local.get $2 + local.get $1 i32.gt_s select - local.get $1 + local.get $2 i32.gt_s if - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $4 + local.get $2 + local.get $11 i32.const 6960 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|07991 + local.set $2 + br $for-loop|079 end end global.get $~lib/memory/__stack_pointer @@ -22845,7 +22802,7 @@ i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -22861,32 +22818,32 @@ local.get $0 local.get $3 i32.load offset=12 - local.tee $6 + local.tee $5 i32.const 2 i32.const 10 i32.const 0 call $~lib/rt/__newArray - local.tee $7 + local.tee $6 i32.store - local.get $7 + local.get $6 i32.load offset=4 - local.set $4 - loop $for-loop|08193 - local.get $6 + local.set $11 + loop $for-loop|08195 + local.get $5 local.get $3 i32.load offset=12 local.tee $0 local.get $0 - local.get $6 + local.get $5 i32.gt_s select - local.get $1 + local.get $2 i32.gt_s if - local.get $1 + local.get $2 i32.const 2 i32.shl - local.tee $2 + local.tee $1 local.get $3 i32.load offset=4 i32.add @@ -22894,30 +22851,30 @@ local.set $0 i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $4 + local.get $1 + local.get $11 i32.add local.get $0 - local.get $1 + local.get $2 local.get $3 i32.const 6992 i32.load call_indirect $0 (type $i32_i32_i32_=>_f32) f32.store - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|08193 + local.set $2 + br $for-loop|08195 end end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $6 i32.store offset=12 - local.get $7 + local.get $6 i32.load offset=12 i32.const 4 i32.ne @@ -22929,10 +22886,10 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $6 i32.const 0 call $~lib/array/Array#__get - local.set $11 + local.set $10 global.get $~lib/memory/__stack_pointer global.get $std/array/arr local.tee $0 @@ -22941,7 +22898,7 @@ i32.const 0 call $~lib/array/Array#__get f32.convert_i32_s - local.get $11 + local.get $10 f32.ne if i32.const 0 @@ -23275,33 +23232,33 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store global.get $~lib/memory/__stack_pointer i32.const 7248 i32.store offset=8 i32.const 0 - local.set $5 + local.set $4 i32.const 0 - local.set $1 - local.get $4 - i32.load offset=12 local.set $2 - loop $for-loop|094 - local.get $2 - local.get $4 + local.get $11 + i32.load offset=12 + local.set $1 + loop $for-loop|096 + local.get $1 + local.get $11 i32.load offset=12 local.tee $0 local.get $0 - local.get $2 + local.get $1 i32.gt_s select - local.get $1 + local.get $2 i32.gt_s if - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add @@ -23309,22 +23266,22 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $5 - local.get $0 - local.get $1 local.get $4 + local.get $0 + local.get $2 + local.get $11 i32.const 7248 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $5 - local.get $1 + local.set $4 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|094 + local.set $2 + br $for-loop|096 end end - local.get $5 + local.get $4 global.set $std/array/i global.get $std/array/i i32.const 6 @@ -23340,33 +23297,33 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store local.get $0 i32.const 7280 i32.store offset=8 i32.const 4 - local.set $5 + local.set $4 i32.const 0 - local.set $1 - local.get $4 - i32.load offset=12 local.set $2 - loop $for-loop|096 - local.get $2 - local.get $4 + local.get $11 + i32.load offset=12 + local.set $1 + loop $for-loop|098 + local.get $1 + local.get $11 i32.load offset=12 local.tee $0 local.get $0 - local.get $2 + local.get $1 i32.gt_s select - local.get $1 + local.get $2 i32.gt_s if - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add @@ -23374,22 +23331,22 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $5 - local.get $0 - local.get $1 local.get $4 + local.get $0 + local.get $2 + local.get $11 i32.const 7280 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $5 - local.get $1 + local.set $4 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|096 + local.set $2 + br $for-loop|098 end end - local.get $5 + local.get $4 global.set $std/array/i global.get $std/array/i i32.const 10 @@ -23405,33 +23362,33 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store local.get $0 i32.const 7312 i32.store offset=8 i32.const 0 - local.set $5 + local.set $4 i32.const 0 - local.set $1 - local.get $4 - i32.load offset=12 local.set $2 - loop $for-loop|098 - local.get $2 - local.get $4 + local.get $11 + i32.load offset=12 + local.set $1 + loop $for-loop|0100 + local.get $1 + local.get $11 i32.load offset=12 local.tee $0 local.get $0 - local.get $2 + local.get $1 i32.gt_s select - local.get $1 + local.get $2 i32.gt_s if - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add @@ -23439,22 +23396,22 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $5 - local.get $0 - local.get $1 local.get $4 + local.get $0 + local.get $2 + local.get $11 i32.const 7312 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $5 - local.get $1 + local.set $4 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|098 + local.set $2 + br $for-loop|0100 end end - local.get $5 + local.get $4 i32.eqz if i32.const 0 @@ -23467,33 +23424,33 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store local.get $0 i32.const 7344 i32.store offset=8 i32.const 0 - local.set $5 + local.set $4 i32.const 0 - local.set $1 - local.get $4 - i32.load offset=12 local.set $2 - loop $for-loop|0100 - local.get $2 - local.get $4 + local.get $11 + i32.load offset=12 + local.set $1 + loop $for-loop|0102 + local.get $1 + local.get $11 i32.load offset=12 local.tee $0 local.get $0 - local.get $2 + local.get $1 i32.gt_s select - local.get $1 + local.get $2 i32.gt_s if - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add @@ -23501,22 +23458,22 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $5 - local.get $0 - local.get $1 local.get $4 + local.get $0 + local.get $2 + local.get $11 i32.const 7344 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $5 - local.get $1 + local.set $4 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|0100 + local.set $2 + br $for-loop|0102 end end - local.get $5 + local.get $4 if i32.const 0 i32.const 1552 @@ -23528,33 +23485,33 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store local.get $0 i32.const 7376 i32.store offset=8 i32.const 0 - local.set $5 + local.set $4 i32.const 0 - local.set $1 - local.get $4 - i32.load offset=12 local.set $2 - loop $for-loop|0102 - local.get $2 - local.get $4 + local.get $11 + i32.load offset=12 + local.set $1 + loop $for-loop|0104 + local.get $1 + local.get $11 i32.load offset=12 local.tee $0 local.get $0 - local.get $2 + local.get $1 i32.gt_s select - local.get $1 + local.get $2 i32.gt_s if - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add @@ -23562,22 +23519,22 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $5 - local.get $0 - local.get $1 local.get $4 + local.get $0 + local.get $2 + local.get $11 i32.const 7376 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $5 - local.get $1 + local.set $4 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|0102 + local.set $2 + br $for-loop|0104 end end - local.get $5 + local.get $4 global.set $std/array/i global.get $std/array/i i32.const 6 @@ -23609,33 +23566,33 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store local.get $0 i32.const 7408 i32.store offset=8 i32.const 0 - local.set $5 + local.set $4 i32.const 0 - local.set $1 - local.get $4 - i32.load offset=12 local.set $2 - loop $for-loop|0104 - local.get $2 - local.get $4 + local.get $11 + i32.load offset=12 + local.set $1 + loop $for-loop|0106 + local.get $1 + local.get $11 i32.load offset=12 local.tee $0 local.get $0 - local.get $2 + local.get $1 i32.gt_s select - local.get $1 + local.get $2 i32.gt_s if - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add @@ -23643,22 +23600,22 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $5 - local.get $0 - local.get $1 local.get $4 + local.get $0 + local.get $2 + local.get $11 i32.const 7408 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $5 - local.get $1 + local.set $4 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|0104 + local.set $2 + br $for-loop|0106 end end - local.get $5 + local.get $4 global.set $std/array/i global.get $std/array/i i32.const 10 @@ -23701,33 +23658,33 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store global.get $~lib/memory/__stack_pointer i32.const 7440 i32.store offset=8 i32.const 0 - local.set $5 + local.set $4 i32.const 0 - local.set $1 - local.get $4 - i32.load offset=12 local.set $2 - loop $for-loop|0106 - local.get $2 - local.get $4 + local.get $11 + i32.load offset=12 + local.set $1 + loop $for-loop|0108 + local.get $1 + local.get $11 i32.load offset=12 local.tee $0 local.get $0 - local.get $2 + local.get $1 i32.gt_s select - local.get $1 + local.get $2 i32.gt_s if - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add @@ -23735,22 +23692,22 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $5 - local.get $0 - local.get $1 local.get $4 + local.get $0 + local.get $2 + local.get $11 i32.const 7440 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $5 - local.get $1 + local.set $4 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|0106 + local.set $2 + br $for-loop|0108 end end - local.get $5 + local.get $4 global.set $std/array/i global.get $std/array/i i32.const 1 @@ -23797,45 +23754,45 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store global.get $~lib/memory/__stack_pointer i32.const 7472 i32.store offset=8 i32.const 0 local.set $0 - local.get $4 + local.get $11 i32.load offset=12 i32.const 1 i32.sub - local.set $1 + local.set $2 loop $for-loop|090 - local.get $1 + local.get $2 i32.const 0 i32.ge_s if - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $1 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $2 local.get $1 - local.get $4 + local.get $2 + local.get $11 i32.const 7472 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $0 - local.get $1 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $2 br $for-loop|090 end end @@ -23855,45 +23812,45 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store local.get $0 i32.const 7504 i32.store offset=8 i32.const 4 local.set $0 - local.get $4 + local.get $11 i32.load offset=12 i32.const 1 i32.sub - local.set $1 + local.set $2 loop $for-loop|092 - local.get $1 + local.get $2 i32.const 0 i32.ge_s if - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $1 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $2 local.get $1 - local.get $4 + local.get $2 + local.get $11 i32.const 7504 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $0 - local.get $1 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $2 br $for-loop|092 end end @@ -23913,46 +23870,46 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store local.get $0 i32.const 7536 i32.store offset=8 i32.const 0 local.set $0 - local.get $4 + local.get $11 i32.load offset=12 i32.const 1 i32.sub - local.set $1 - loop $for-loop|094107 - local.get $1 + local.set $2 + loop $for-loop|094 + local.get $2 i32.const 0 i32.ge_s if - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $1 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $2 local.get $1 - local.get $4 + local.get $2 + local.get $11 i32.const 7536 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $0 - local.get $1 + local.get $2 i32.const 1 i32.sub - local.set $1 - br $for-loop|094107 + local.set $2 + br $for-loop|094 end end local.get $0 @@ -23968,46 +23925,46 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store local.get $0 i32.const 7568 i32.store offset=8 i32.const 0 local.set $0 - local.get $4 + local.get $11 i32.load offset=12 i32.const 1 i32.sub - local.set $1 - loop $for-loop|096108 - local.get $1 + local.set $2 + loop $for-loop|096109 + local.get $2 i32.const 0 i32.ge_s if - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $1 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $2 local.get $1 - local.get $4 + local.get $2 + local.get $11 i32.const 7568 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $0 - local.get $1 + local.get $2 i32.const 1 i32.sub - local.set $1 - br $for-loop|096108 + local.set $2 + br $for-loop|096109 end end local.get $0 @@ -24022,46 +23979,46 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store local.get $0 i32.const 7600 i32.store offset=8 i32.const 0 local.set $0 - local.get $4 + local.get $11 i32.load offset=12 i32.const 1 i32.sub - local.set $1 - loop $for-loop|098109 - local.get $1 + local.set $2 + loop $for-loop|098110 + local.get $2 i32.const 0 i32.ge_s if - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $1 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $2 local.get $1 - local.get $4 + local.get $2 + local.get $11 i32.const 7600 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $0 - local.get $1 + local.get $2 i32.const 1 i32.sub - local.set $1 - br $for-loop|098109 + local.set $2 + br $for-loop|098110 end end local.get $0 @@ -24096,45 +24053,45 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store local.get $0 i32.const 7632 i32.store offset=8 i32.const 0 local.set $0 - local.get $4 + local.get $11 i32.load offset=12 i32.const 1 i32.sub - local.set $1 + local.set $2 loop $for-loop|0101 - local.get $1 + local.get $2 i32.const 0 i32.ge_s if - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $1 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $2 local.get $1 - local.get $4 + local.get $2 + local.get $11 i32.const 7632 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $0 - local.get $1 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $2 br $for-loop|0101 end end @@ -24181,45 +24138,45 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $4 + local.tee $11 i32.store global.get $~lib/memory/__stack_pointer i32.const 7664 i32.store offset=8 i32.const 0 local.set $0 - local.get $4 + local.get $11 i32.load offset=12 i32.const 1 i32.sub - local.set $1 + local.set $2 loop $for-loop|0103 - local.get $1 + local.get $2 i32.const 0 i32.ge_s if - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $1 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $2 local.get $1 - local.get $4 + local.get $2 + local.get $11 i32.const 7664 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $0 - local.get $1 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $2 br $for-loop|0103 end end @@ -24721,7 +24678,7 @@ i32.const 11 i32.const 8112 call $~lib/rt/__newArray - local.tee $5 + local.tee $4 i32.store offset=112 i32.const 0 global.set $~argumentsLength @@ -24752,9 +24709,9 @@ i32.const 8208 i32.store end - local.get $5 + local.get $4 i32.load offset=4 - local.get $5 + local.get $4 i32.load offset=12 local.get $0 call $~lib/util/sort/SORT @@ -24767,25 +24724,25 @@ i32.const 11 i32.const 8240 call $~lib/rt/__newArray - local.set $4 + local.set $11 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $11 i32.store offset=8 block $__inlined_func$std/array/isArraysEqual (result i32) i32.const 0 local.set $0 i32.const 0 - local.get $5 + local.get $4 i32.load offset=12 local.tee $1 - local.get $4 + local.get $11 i32.load offset=12 i32.ne br_if $__inlined_func$std/array/isArraysEqual drop i32.const 1 local.get $4 - local.get $5 + local.get $11 i32.eq br_if $__inlined_func$std/array/isArraysEqual drop @@ -24794,18 +24751,18 @@ local.get $1 i32.lt_s if - local.get $5 + local.get $4 local.get $0 call $~lib/array/Array#__get - local.tee $9 - local.get $9 + local.tee $8 + local.get $8 f64.ne if (result i32) - local.get $4 + local.get $11 local.get $0 call $~lib/array/Array#__get - local.tee $9 - local.get $9 + local.tee $8 + local.get $8 f64.ne else i32.const 0 @@ -24813,10 +24770,10 @@ i32.eqz if i32.const 0 - local.get $5 + local.get $4 local.get $0 call $~lib/array/Array#__get - local.get $4 + local.get $11 local.get $0 call $~lib/array/Array#__get f64.ne @@ -24959,7 +24916,7 @@ i32.const 3 i32.const 8624 call $~lib/rt/__newArray - local.tee $8 + local.tee $7 i32.store offset=128 global.get $~lib/memory/__stack_pointer i32.const 2 @@ -24975,7 +24932,7 @@ i32.const 3 i32.const 8688 call $~lib/rt/__newArray - local.tee $7 + local.tee $6 i32.store offset=136 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -24983,22 +24940,22 @@ i32.const 3 i32.const 8736 call $~lib/rt/__newArray - local.tee $10 + local.tee $9 i32.store offset=140 global.get $~lib/memory/__stack_pointer i32.const 64 call $std/array/createReverseOrderedArray - local.tee $6 + local.tee $5 i32.store offset=144 global.get $~lib/memory/__stack_pointer i32.const 128 call $std/array/createReverseOrderedArray - local.tee $5 + local.tee $4 i32.store offset=148 global.get $~lib/memory/__stack_pointer i32.const 1024 call $std/array/createReverseOrderedArray - local.tee $4 + local.tee $11 i32.store offset=152 global.get $~lib/memory/__stack_pointer i32.const 10000 @@ -25012,7 +24969,7 @@ i32.store offset=160 local.get $1 call $std/array/assertSortedDefault - local.get $8 + local.get $7 call $std/array/assertSortedDefault i32.const 1 i32.const 2 @@ -25023,7 +24980,7 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=8 - local.get $8 + local.get $7 local.get $1 i32.const 0 call $std/array/isArraysEqual @@ -25060,10 +25017,10 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $6 call $std/array/assertSortedDefault - local.get $7 - local.get $10 + local.get $6 + local.get $9 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -25075,10 +25032,10 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 call $std/array/assertSortedDefault - local.get $6 - local.get $10 + local.get $5 + local.get $9 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -25090,10 +25047,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $4 call $std/array/assertSortedDefault - local.get $5 - local.get $10 + local.get $4 + local.get $9 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -25105,10 +25062,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 call $std/array/assertSortedDefault - local.get $4 - local.get $10 + local.get $11 + local.get $9 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -25123,7 +25080,7 @@ local.get $2 call $std/array/assertSortedDefault local.get $2 - local.get $10 + local.get $9 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -25138,9 +25095,9 @@ local.get $0 call $std/array/assertSortedDefault i32.const 0 - local.set $8 + local.set $3 i32.const 0 - local.set $7 + local.set $5 global.get $~lib/memory/__stack_pointer i32.const 24 i32.sub @@ -25150,20 +25107,20 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $4 i64.const 0 i64.store - local.get $6 + local.get $4 i64.const 0 i64.store offset=8 - local.get $6 + local.get $4 i64.const 0 i64.store offset=16 - local.get $6 + local.get $4 global.get $std/array/inputStabArr - local.tee $5 + local.tee $11 i32.store offset=8 - local.get $6 + local.get $4 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -25176,7 +25133,7 @@ i32.const 0 i32.store i32.const 0 - local.get $5 + local.get $11 i32.load offset=12 local.tee $2 local.get $2 @@ -25199,45 +25156,48 @@ i32.const 20 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $6 i32.store - local.get $3 + local.get $6 i32.load offset=4 - local.set $4 - local.get $5 + local.set $2 + local.get $11 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add - local.set $2 + local.set $1 local.get $0 i32.const 2 i32.shl - local.set $1 - loop $while-continue|012 - local.get $1 - local.get $8 + local.set $0 + loop $while-continue|011 + local.get $0 + local.get $3 i32.gt_u if - local.get $4 - local.get $8 - i32.add local.get $2 - local.get $8 + local.get $3 + i32.add + local.get $1 + local.get $3 i32.add i32.load - local.tee $0 + local.tee $11 i32.store + local.get $11 + if + local.get $6 + local.get $11 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $3 - local.get $0 - i32.const 1 - call $~lib/rt/itcms/__link - local.get $8 i32.const 4 i32.add - local.set $8 - br $while-continue|012 + local.set $3 + br $while-continue|011 end end global.get $~lib/memory/__stack_pointer @@ -25246,22 +25206,22 @@ global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer local.tee $0 - local.get $3 + local.get $6 i32.store local.get $0 i32.const 8880 i32.store offset=4 - local.get $3 + local.get $6 i32.load offset=4 - local.get $3 + local.get $6 i32.load offset=12 i32.const 8880 call $~lib/util/sort/SORT + local.get $4 local.get $6 - local.get $3 i32.store offset=12 i32.const 1 - local.set $8 + local.set $3 global.get $~lib/memory/__stack_pointer global.get $std/array/inputStabArr local.tee $0 @@ -25269,15 +25229,15 @@ local.get $0 i32.load offset=12 local.set $1 - loop $for-loop|013 + loop $for-loop|012 local.get $1 - local.get $7 + local.get $5 i32.gt_s if block $for-break0 global.get $~lib/memory/__stack_pointer - local.get $3 - local.get $7 + local.get $6 + local.get $5 call $~lib/array/Array#__get local.tee $2 i32.store offset=16 @@ -25287,7 +25247,7 @@ i32.store global.get $~lib/memory/__stack_pointer local.get $0 - local.get $7 + local.get $5 call $~lib/array/Array#__get local.tee $0 i32.store offset=20 @@ -25307,18 +25267,18 @@ end if i32.const 0 - local.set $8 + local.set $3 br $for-break0 end - local.get $7 + local.get $5 i32.const 1 i32.add - local.set $7 - br $for-loop|013 + local.set $5 + br $for-loop|012 end end end - local.get $8 + local.get $3 i32.eqz if i32.const 0 @@ -25368,7 +25328,7 @@ call $std/array/assertSorted global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -25378,10 +25338,10 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $0 i64.const 0 i64.store - local.get $4 + local.get $0 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -25390,66 +25350,65 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 16 i32.const 26 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $4 i32.store - local.get $5 + local.get $4 i32.const 0 i32.store - local.get $5 - i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $5 + local.get $4 i32.const 0 i32.store offset=4 - local.get $5 + local.get $4 i32.const 0 i32.store offset=8 - local.get $5 + local.get $4 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 32 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.const 32 call $~lib/memory/memory.fill - local.get $5 - local.get $0 + local.get $4 + local.get $1 i32.store - local.get $5 - local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $5 - local.get $0 + local.get $1 + if + local.get $4 + local.get $1 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $4 + local.get $1 i32.store offset=4 - local.get $5 + local.get $4 i32.const 32 i32.store offset=8 - local.get $5 + local.get $4 i32.const 2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 local.get $4 - local.get $5 i32.store loop $for-loop|0154 - local.get $1 + local.get $2 i32.const 2 i32.lt_s if @@ -25461,17 +25420,17 @@ local.get $0 i32.const 0 i32.const 1 - local.get $1 + local.get $2 i32.sub call $~lib/array/Array#__set - local.get $5 - local.get $1 + local.get $4 + local.get $2 local.get $0 call $~lib/array/Array<~lib/array/Array>#__set - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|0154 end end @@ -25479,17 +25438,17 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.store offset=156 global.get $~lib/memory/__stack_pointer i32.const 9040 i32.store offset=8 - local.get $5 + local.get $4 i32.const 9040 call $std/array/assertSorted<~lib/array/Array> global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $5 + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -25525,10 +25484,6 @@ i32.store local.get $0 i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - i32.const 0 i32.store offset=4 local.get $0 i32.const 0 @@ -25540,21 +25495,24 @@ i32.const 2048 i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $11 i32.store offset=4 - local.get $4 + local.get $11 i32.const 0 i32.const 2048 call $~lib/memory/memory.fill local.get $0 - local.get $4 + local.get $11 i32.store + local.get $11 + if + local.get $0 + local.get $11 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 - local.get $4 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - local.get $4 + local.get $11 i32.store offset=4 local.get $0 i32.const 2048 @@ -25569,8 +25527,8 @@ local.get $1 local.get $0 i32.store - loop $for-loop|015 - local.get $5 + loop $for-loop|014 + local.get $4 i32.const 512 i32.lt_s if @@ -25594,7 +25552,7 @@ i32.store local.get $1 i32.const 511 - local.get $5 + local.get $4 i32.sub i32.store global.get $~lib/memory/__stack_pointer @@ -25605,14 +25563,14 @@ local.get $1 i32.store offset=4 local.get $0 - local.get $5 + local.get $4 local.get $1 call $~lib/array/Array<~lib/array/Array>#__set - local.get $5 + local.get $4 i32.const 1 i32.add - local.set $5 - br $for-loop|015 + local.set $4 + br $for-loop|014 end end global.get $~lib/memory/__stack_pointer @@ -25641,12 +25599,12 @@ i32.const 31 i32.const 9312 call $~lib/rt/__newArray - local.tee $6 + local.tee $5 i32.store offset=152 i32.const 1 global.set $~argumentsLength i32.const 0 - local.set $5 + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -25658,18 +25616,18 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of117 - block $0of118 - block $outOfRange19 + block $1of116 + block $0of117 + block $outOfRange18 global.get $~argumentsLength i32.const 1 i32.sub - br_table $0of118 $1of117 $outOfRange19 + br_table $0of117 $1of116 $outOfRange18 end unreachable end i32.const 9360 - local.set $5 + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 9360 i32.store @@ -25689,7 +25647,7 @@ i32.load offset=4 local.get $0 i32.load offset=12 - local.get $5 + local.get $4 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer local.tee $1 @@ -25708,26 +25666,26 @@ i64.const 0 i64.store i32.const 1 - local.set $7 + local.set $6 local.get $0 i32.load offset=12 local.set $1 - loop $for-loop|020 + loop $for-loop|019 local.get $1 - local.get $7 + local.get $6 i32.gt_s if local.get $0 - local.get $7 + local.get $6 i32.const 1 i32.sub call $~lib/array/Array#__get - local.set $4 + local.set $11 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $11 i32.store local.get $0 - local.get $7 + local.get $6 call $~lib/array/Array#__get local.set $2 global.get $~lib/memory/__stack_pointer @@ -25735,9 +25693,9 @@ i32.store offset=4 i32.const 2 global.set $~argumentsLength - local.get $4 + local.get $11 local.get $2 - local.get $5 + local.get $4 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 @@ -25750,11 +25708,11 @@ i32.const 0 br $__inlined_func$std/array/isSorted<~lib/string/String|null> end - local.get $7 + local.get $6 i32.const 1 i32.add - local.set $7 - br $for-loop|020 + local.set $6 + br $for-loop|019 end end global.get $~lib/memory/__stack_pointer @@ -25795,16 +25753,16 @@ i64.const 0 i64.store block $folding-inner1 - block $folding-inner021 + block $folding-inner020 local.get $0 i32.load offset=12 local.tee $1 - local.get $6 + local.get $5 i32.load offset=12 i32.ne - br_if $folding-inner021 + br_if $folding-inner020 local.get $0 - local.get $6 + local.get $5 i32.eq br_if $folding-inner1 loop $for-loop|049 @@ -25815,22 +25773,22 @@ local.get $0 local.get $3 call $~lib/array/Array#__get - local.set $4 + local.set $11 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $11 i32.store - local.get $6 + local.get $5 local.get $3 call $~lib/array/Array#__get local.set $2 global.get $~lib/memory/__stack_pointer local.get $2 i32.store offset=4 - local.get $4 + local.get $11 local.get $2 call $~lib/string/String.__eq i32.eqz - br_if $folding-inner021 + br_if $folding-inner020 local.get $3 i32.const 1 i32.add @@ -25893,9 +25851,9 @@ f64.const 32 f64.mul i32.trunc_f64_s - local.set $5 + local.set $4 i32.const 0 - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -25917,14 +25875,14 @@ i32.const 9232 i32.store loop $for-loop|00 - local.get $5 - local.get $8 + local.get $4 + local.get $7 i32.gt_s if local.get $0 local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $11 i32.const 7696 i32.store offset=4 call $~lib/math/NativeMath.random @@ -25939,7 +25897,7 @@ f64.mul f64.floor i32.trunc_f64_s - local.set $7 + local.set $6 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -25956,7 +25914,7 @@ i32.load i32.const 1 i32.shr_u - local.get $7 + local.get $6 i32.le_u if global.get $~lib/memory/__stack_pointer @@ -25974,7 +25932,7 @@ local.tee $0 i32.store local.get $0 - local.get $7 + local.get $6 i32.const 1 i32.shl i32.const 7696 @@ -25989,16 +25947,16 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $4 + local.get $11 local.get $1 local.get $0 call $~lib/string/String.__concat local.tee $0 i32.store - local.get $8 + local.get $7 i32.const 1 i32.add - local.set $8 + local.set $7 br $for-loop|00 end end @@ -26030,7 +25988,7 @@ i32.const 1 global.set $~argumentsLength i32.const 0 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -26053,13 +26011,13 @@ unreachable end i32.const 9392 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 9392 i32.store end local.get $0 - local.get $1 + local.get $2 call $std/array/assertSorted<~lib/array/Array> global.get $~lib/memory/__stack_pointer i32.const 4 @@ -26080,14 +26038,14 @@ i32.store offset=168 local.get $0 i32.load offset=4 - local.set $7 + local.set $6 local.get $0 i32.load offset=12 local.set $1 i32.const 0 local.set $0 i32.const 0 - local.set $8 + local.set $7 local.get $2 i32.const 4 i32.sub @@ -26112,7 +26070,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $1 + local.set $2 br $__inlined_func$~lib/util/string/joinBooleanArray end block $folding-inner01 @@ -26121,10 +26079,10 @@ if i32.const 9456 i32.const 9488 - local.get $7 + local.get $6 i32.load8_u select - local.set $1 + local.set $2 br $folding-inner01 end global.get $~lib/memory/__stack_pointer @@ -26133,107 +26091,107 @@ i32.load i32.const 1 i32.shr_u - local.tee $6 + local.tee $5 i32.const 5 i32.add i32.mul i32.const 5 i32.add - local.tee $4 + local.tee $11 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store loop $for-loop|13 local.get $3 - local.get $8 + local.get $7 i32.gt_s if + local.get $6 local.get $7 - local.get $8 i32.add i32.load8_u - local.tee $2 + local.tee $1 i32.eqz i32.const 4 i32.add - local.set $5 + local.set $4 local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $2 i32.add i32.const 9456 i32.const 9488 - local.get $2 + local.get $1 select - local.get $5 + local.get $4 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $5 + local.get $4 i32.add local.set $0 - local.get $6 + local.get $5 if local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $2 i32.add i32.const 9520 - local.get $6 + local.get $5 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $6 + local.get $5 i32.add local.set $0 end - local.get $8 + local.get $7 i32.const 1 i32.add - local.set $8 + local.set $7 br $for-loop|13 end end local.get $3 - local.get $7 + local.get $6 i32.add i32.load8_u - local.tee $2 + local.tee $1 i32.eqz i32.const 4 i32.add - local.set $5 + local.set $4 local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $2 i32.add i32.const 9456 i32.const 9488 - local.get $2 + local.get $1 select - local.get $5 + local.get $4 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $4 + local.get $11 local.get $0 - local.get $5 + local.get $4 i32.add local.tee $0 i32.gt_s if - local.get $1 + local.get $2 local.get $0 call $~lib/string/String#substring - local.set $1 + local.set $2 br $folding-inner01 end global.get $~lib/memory/__stack_pointer @@ -26249,12 +26207,12 @@ end global.get $~lib/memory/__stack_pointer local.tee $0 - local.get $1 + local.get $2 i32.store local.get $0 i32.const 9552 i32.store offset=8 - local.get $1 + local.get $2 i32.const 9552 call $~lib/string/String.__eq i32.eqz @@ -26550,7 +26508,7 @@ i32.const 3 i32.const 13328 call $~lib/rt/__newArray - local.tee $4 + local.tee $11 i32.store offset=152 global.get $~lib/memory/__stack_pointer i32.const 1 @@ -26576,16 +26534,16 @@ call $~lib/rt/__newArray local.tee $1 i32.store offset=144 - local.get $4 + local.get $11 call $~lib/array/Array#toString - local.set $4 + local.set $11 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $11 i32.store global.get $~lib/memory/__stack_pointer i32.const 9232 i32.store offset=8 - local.get $4 + local.get $11 i32.const 9232 call $~lib/string/String.__eq i32.eqz @@ -26599,15 +26557,15 @@ end local.get $0 call $~lib/array/Array#toString - local.set $4 + local.set $11 global.get $~lib/memory/__stack_pointer local.tee $0 - local.get $4 + local.get $11 i32.store local.get $0 i32.const 13008 i32.store offset=8 - local.get $4 + local.get $11 i32.const 13008 call $~lib/string/String.__eq i32.eqz @@ -26690,14 +26648,14 @@ i32.store local.get $1 i32.load offset=4 - local.set $5 + local.set $4 local.get $1 i32.load offset=12 local.set $1 i32.const 0 local.set $0 i32.const 0 - local.set $8 + local.set $7 local.get $2 i32.const 4 i32.sub @@ -26713,7 +26671,7 @@ local.get $1 i32.const 1 i32.sub - local.tee $6 + local.tee $5 i32.const 0 i32.lt_s if @@ -26722,88 +26680,88 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $1 + local.set $2 br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner04 - local.get $6 + local.get $5 i32.eqz if - local.get $5 + local.get $4 i32.load8_s call $~lib/util/number/itoa32 - local.set $1 + local.set $2 br $folding-inner04 end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $5 i32.const 9516 i32.load i32.const 1 i32.shr_u - local.tee $4 + local.tee $11 i32.const 11 i32.add i32.mul i32.const 11 i32.add - local.tee $2 + local.tee $1 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - loop $for-loop|06 - local.get $6 - local.get $8 + loop $for-loop|06125 + local.get $5 + local.get $7 i32.gt_s if local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $2 i32.add - local.get $5 - local.get $8 + local.get $4 + local.get $7 i32.add i32.load8_s call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $4 + local.get $11 if local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $2 i32.add i32.const 9520 - local.get $4 + local.get $11 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $4 + local.get $11 i32.add local.set $0 end - local.get $8 + local.get $7 i32.const 1 i32.add - local.set $8 - br $for-loop|06 + local.set $7 + br $for-loop|06125 end end - local.get $2 + local.get $1 local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $2 i32.add + local.get $4 local.get $5 - local.get $6 i32.add i32.load8_s call $~lib/util/number/itoa_buffered @@ -26812,10 +26770,10 @@ local.tee $0 i32.gt_s if - local.get $1 + local.get $2 local.get $0 call $~lib/string/String#substring - local.set $1 + local.set $2 br $folding-inner04 end global.get $~lib/memory/__stack_pointer @@ -26835,12 +26793,12 @@ global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer local.tee $0 - local.get $1 + local.get $2 i32.store local.get $0 i32.const 13584 i32.store offset=8 - local.get $1 + local.get $2 i32.const 13584 call $~lib/string/String.__eq i32.eqz @@ -26879,14 +26837,14 @@ i32.store local.get $1 i32.load offset=4 - local.set $5 + local.set $4 local.get $1 i32.load offset=12 local.set $1 i32.const 0 local.set $0 i32.const 0 - local.set $8 + local.set $7 local.get $2 i32.const 4 i32.sub @@ -26902,7 +26860,7 @@ local.get $1 i32.const 1 i32.sub - local.tee $6 + local.tee $5 i32.const 0 i32.lt_s if @@ -26911,92 +26869,92 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $1 + local.set $2 br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner07 - local.get $6 + local.get $5 i32.eqz if - local.get $5 + local.get $4 i32.load16_u call $~lib/util/number/utoa32 - local.set $1 + local.set $2 br $folding-inner07 end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $5 i32.const 9516 i32.load i32.const 1 i32.shr_u - local.tee $4 + local.tee $11 i32.const 10 i32.add i32.mul i32.const 10 i32.add - local.tee $2 + local.tee $1 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - loop $for-loop|09124 - local.get $6 - local.get $8 + loop $for-loop|09 + local.get $5 + local.get $7 i32.gt_s if local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $2 i32.add - local.get $8 + local.get $7 i32.const 1 i32.shl - local.get $5 + local.get $4 i32.add i32.load16_u call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $4 + local.get $11 if local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $2 i32.add i32.const 9520 - local.get $4 + local.get $11 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $4 + local.get $11 i32.add local.set $0 end - local.get $8 + local.get $7 i32.const 1 i32.add - local.set $8 - br $for-loop|09124 + local.set $7 + br $for-loop|09 end end - local.get $2 + local.get $1 local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $2 i32.add - local.get $6 + local.get $5 i32.const 1 i32.shl - local.get $5 + local.get $4 i32.add i32.load16_u call $~lib/util/number/itoa_buffered @@ -27005,10 +26963,10 @@ local.tee $0 i32.gt_s if - local.get $1 + local.get $2 local.get $0 call $~lib/string/String#substring - local.set $1 + local.set $2 br $folding-inner07 end global.get $~lib/memory/__stack_pointer @@ -27028,12 +26986,12 @@ global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer local.tee $0 - local.get $1 + local.get $2 i32.store local.get $0 i32.const 13648 i32.store offset=8 - local.get $1 + local.get $2 i32.const 13648 call $~lib/string/String.__eq i32.eqz @@ -27253,12 +27211,12 @@ i32.store local.get $1 i32.load offset=4 - local.set $7 + local.set $6 local.get $1 i32.load offset=12 - local.set $2 - i32.const 0 local.set $1 + i32.const 0 + local.set $2 local.get $0 i32.const 12 i32.sub @@ -27275,10 +27233,10 @@ i32.const 0 i32.store offset=8 block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> - local.get $2 + local.get $1 i32.const 1 i32.sub - local.tee $6 + local.tee $5 i32.const 0 i32.lt_s if @@ -27290,11 +27248,11 @@ local.set $0 br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> end - local.get $6 + local.get $5 i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $6 i32.load local.tee $0 i32.store @@ -27321,37 +27279,37 @@ i32.load i32.const 1 i32.shr_u - local.set $4 - loop $for-loop|011 - local.get $1 - local.get $6 + local.set $11 + loop $for-loop|011132 + local.get $2 + local.get $5 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.const 2 i32.shl - local.get $7 + local.get $6 i32.add i32.load - local.tee $5 + local.tee $4 i32.store - local.get $5 + local.get $4 if global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 call $~lib/array/Array#toString - local.set $5 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.store offset=8 local.get $0 - local.get $5 + local.get $4 call $~lib/string/String.__concat local.tee $0 i32.store offset=4 end - local.get $4 + local.get $11 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -27360,18 +27318,18 @@ local.tee $0 i32.store offset=4 end - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|011 + local.set $2 + br $for-loop|011132 end end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $5 i32.const 2 i32.shl - local.get $7 + local.get $6 i32.add i32.load local.tee $2 @@ -27468,12 +27426,12 @@ i32.store local.get $1 i32.load offset=4 - local.set $7 + local.set $6 local.get $1 i32.load offset=12 - local.set $2 - i32.const 0 local.set $1 + i32.const 0 + local.set $2 local.get $0 i32.const 12 i32.sub @@ -27490,10 +27448,10 @@ i32.const 0 i32.store offset=8 block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> - local.get $2 + local.get $1 i32.const 1 i32.sub - local.tee $6 + local.tee $5 i32.const 0 i32.lt_s if @@ -27505,11 +27463,11 @@ local.set $0 br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> end - local.get $6 + local.get $5 i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $6 i32.load local.tee $0 i32.store @@ -27536,37 +27494,37 @@ i32.load i32.const 1 i32.shr_u - local.set $4 - loop $for-loop|01322 - local.get $1 - local.get $6 + local.set $11 + loop $for-loop|013 + local.get $2 + local.get $5 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.const 2 i32.shl - local.get $7 + local.get $6 i32.add i32.load - local.tee $5 + local.tee $4 i32.store - local.get $5 + local.get $4 if global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 call $~lib/array/Array#toString - local.set $5 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.store offset=8 local.get $0 - local.get $5 + local.get $4 call $~lib/string/String.__concat local.tee $0 i32.store offset=4 end - local.get $4 + local.get $11 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -27575,18 +27533,18 @@ local.tee $0 i32.store offset=4 end - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|01322 + local.set $2 + br $for-loop|013 end end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $5 i32.const 2 i32.shl - local.get $7 + local.get $6 i32.add i32.load local.tee $2 @@ -27691,12 +27649,12 @@ i32.store local.get $2 i32.load offset=4 - local.set $7 + local.set $6 local.get $2 i32.load offset=12 - local.set $2 - i32.const 0 local.set $1 + i32.const 0 + local.set $2 local.get $0 i32.const 12 i32.sub @@ -27713,10 +27671,10 @@ i32.const 0 i32.store offset=8 block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array<~lib/array/Array>> - local.get $2 + local.get $1 i32.const 1 i32.sub - local.tee $6 + local.tee $5 i32.const 0 i32.lt_s if @@ -27728,11 +27686,11 @@ local.set $0 br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array<~lib/array/Array>> end - local.get $6 + local.get $5 i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $6 i32.load local.tee $0 i32.store @@ -27759,37 +27717,37 @@ i32.load i32.const 1 i32.shr_u - local.set $4 - loop $for-loop|01523 - local.get $1 - local.get $6 + local.set $11 + loop $for-loop|015 + local.get $2 + local.get $5 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.const 2 i32.shl - local.get $7 + local.get $6 i32.add i32.load - local.tee $5 + local.tee $4 i32.store - local.get $5 + local.get $4 if global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 call $~lib/array/Array<~lib/array/Array>#toString - local.set $5 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.store offset=8 local.get $0 - local.get $5 + local.get $4 call $~lib/string/String.__concat local.tee $0 i32.store offset=4 end - local.get $4 + local.get $11 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -27798,18 +27756,18 @@ local.tee $0 i32.store offset=4 end - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|01523 + local.set $2 + br $for-loop|015 end end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $5 i32.const 2 i32.shl - local.get $7 + local.get $6 i32.add i32.load local.tee $2 @@ -27956,13 +27914,13 @@ i32.const 42 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $1 i32.store offset=160 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.load offset=4 i32.store offset=140 - local.get $2 + local.get $1 i32.const 0 i32.const 1 i32.const 2 @@ -27970,7 +27928,7 @@ i32.const 14608 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $2 + local.get $1 i32.const 1 i32.const 3 i32.const 2 @@ -27978,7 +27936,7 @@ i32.const 14704 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $2 + local.get $1 i32.const 2 i32.const 3 i32.const 2 @@ -27986,7 +27944,7 @@ i32.const 14832 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $2 + local.get $1 i32.const 3 i32.const 1 i32.const 2 @@ -27995,13 +27953,13 @@ call $~lib/rt/__newArray call $~lib/array/Array#__uset local.get $0 - local.get $2 + local.get $1 i32.store offset=140 global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $1 + local.set $2 i32.const 0 - local.set $8 + local.set $7 i32.const 0 local.set $3 global.get $~lib/memory/__stack_pointer @@ -28015,18 +27973,18 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - local.get $2 + local.get $1 i32.load offset=4 local.set $6 - local.get $2 + local.get $1 i32.load offset=12 local.set $5 - loop $for-loop|0133 - local.get $1 + loop $for-loop|0137 + local.get $2 local.get $5 i32.lt_s if - local.get $1 + local.get $2 i32.const 2 i32.shl local.get $6 @@ -28039,24 +27997,24 @@ else i32.const 0 end - local.get $8 + local.get $7 i32.add - local.set $8 - local.get $1 + local.set $7 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|0133 + local.set $2 + br $for-loop|0137 end end global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.const 2 i32.shl - local.tee $1 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16 @@ -28065,80 +28023,87 @@ local.tee $0 i32.store offset=4 local.get $0 - local.get $8 + local.get $7 i32.store offset=12 local.get $0 - local.get $1 + local.get $2 i32.store offset=8 local.get $0 - local.get $7 + local.get $1 i32.store offset=4 local.get $0 - local.get $7 + local.get $1 i32.store - local.get $0 - local.get $7 - i32.const 0 - call $~lib/rt/itcms/__link - i32.const 0 - local.set $1 - loop $for-loop|1134 + local.get $1 + if + local.get $0 local.get $1 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + i32.const 0 + local.set $2 + loop $for-loop|1138 + local.get $2 local.get $5 i32.lt_s if - local.get $1 + local.get $2 i32.const 2 i32.shl local.get $6 i32.add i32.load - local.tee $2 + local.tee $11 if + local.get $1 local.get $3 - local.get $7 i32.add - local.get $2 + local.get $11 i32.load offset=4 - local.get $2 + local.get $11 i32.load offset=12 i32.const 2 i32.shl - local.tee $2 + local.tee $11 call $~lib/memory/memory.copy - local.get $2 local.get $3 + local.get $11 i32.add local.set $3 end - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|1134 + local.set $2 + br $for-loop|1138 end end i32.const 0 - local.set $1 - loop $for-loop|2135 - local.get $1 - local.get $8 + local.set $2 + loop $for-loop|2139 + local.get $2 + local.get $7 i32.lt_s if - local.get $7 - local.get $1 + local.get $2 i32.const 2 i32.shl - local.get $7 + local.get $1 i32.add i32.load - i32.const 1 - call $~lib/rt/itcms/__link - local.get $1 + local.tee $11 + if + local.get $1 + local.get $11 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|2135 + local.set $2 + br $for-loop|2139 end end global.get $~lib/memory/__stack_pointer @@ -28154,7 +28119,7 @@ i32.const 31 i32.const 14928 call $~lib/rt/__newArray - local.tee $5 + local.tee $4 i32.store offset=148 local.get $0 i32.load offset=12 @@ -28171,7 +28136,7 @@ i32.const 0 local.set $0 loop $for-loop|8 - local.get $5 + local.get $4 i32.load offset=12 local.get $0 i32.gt_s @@ -28179,18 +28144,18 @@ local.get $1 local.get $0 call $~lib/array/Array#__get - local.set $4 + local.set $11 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $11 i32.store - local.get $5 + local.get $4 local.get $0 call $~lib/array/Array#__get local.set $2 global.get $~lib/memory/__stack_pointer local.get $2 i32.store offset=8 - local.get $4 + local.get $11 local.get $2 call $~lib/string/String.__eq i32.eqz @@ -28264,13 +28229,13 @@ i32.const 26 i32.const 0 call $~lib/rt/__newArray - local.tee $8 + local.tee $7 i32.store offset=144 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.load offset=4 i32.store offset=152 - local.get $8 + local.get $7 i32.const 0 i32.const 1 i32.const 2 @@ -28278,7 +28243,7 @@ i32.const 15056 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $8 + local.get $7 i32.const 1 i32.const 1 i32.const 2 @@ -28287,7 +28252,7 @@ call $~lib/rt/__newArray call $~lib/array/Array#__uset local.get $0 - local.get $8 + local.get $7 i32.store offset=152 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -28311,9 +28276,9 @@ i32.const 0 i32.store offset=8 local.get $1 - local.get $8 + local.get $7 i32.load offset=12 - local.tee $7 + local.tee $6 i32.const 2 i32.const 26 i32.const 0 @@ -28322,26 +28287,26 @@ i32.store local.get $3 i32.load offset=4 - local.set $5 + local.set $4 loop $for-loop|0163 + local.get $6 local.get $7 - local.get $8 i32.load offset=12 local.tee $1 local.get $1 - local.get $7 + local.get $6 i32.gt_s select local.get $0 i32.gt_s if global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $11 local.get $0 i32.const 2 i32.shl local.tee $2 - local.get $8 + local.get $7 i32.load offset=4 i32.add i32.load @@ -28349,24 +28314,27 @@ i32.store offset=4 i32.const 3 global.set $~argumentsLength - local.get $4 + local.get $11 local.get $1 local.get $0 - local.get $8 + local.get $7 i32.const 15120 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) local.tee $1 i32.store offset=8 local.get $2 - local.get $5 + local.get $4 i32.add local.get $1 i32.store - local.get $3 local.get $1 - i32.const 1 - call $~lib/rt/itcms/__link + if + local.get $3 + local.get $1 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 1 i32.add @@ -28630,10 +28598,6 @@ i32.store local.get $1 i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $1 - i32.const 0 i32.store offset=4 local.get $1 i32.const 0 @@ -28673,10 +28637,13 @@ local.get $1 local.get $2 i32.store - local.get $1 local.get $2 - i32.const 0 - call $~lib/rt/itcms/__link + if + local.get $1 + local.get $2 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $1 local.get $2 i32.store offset=4 @@ -28776,10 +28743,13 @@ local.tee $2 local.get $1 i32.store - local.get $2 local.get $1 - i32.const 0 - call $~lib/rt/itcms/__link + if + local.get $2 + local.get $1 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $2 local.get $1 i32.store offset=4 @@ -29782,10 +29752,6 @@ i32.store local.get $0 i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - i32.const 0 i32.store offset=4 local.get $0 i32.const 0 @@ -29825,10 +29791,13 @@ local.get $0 local.get $2 i32.store - local.get $0 local.get $2 - i32.const 0 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $2 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $2 i32.store offset=4 @@ -30248,10 +30217,13 @@ local.get $0 local.get $4 i32.store - local.get $0 local.get $4 - i32.const 0 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $4 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end i32.const 0 local.set $2 loop $for-loop|1 @@ -30400,10 +30372,6 @@ i32.store local.get $0 i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - i32.const 0 i32.store offset=4 local.get $0 i32.const 0 @@ -30443,10 +30411,13 @@ local.get $0 local.get $2 i32.store - local.get $0 local.get $2 - i32.const 0 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $2 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $2 i32.store offset=4 @@ -32350,10 +32321,6 @@ i32.store local.get $0 i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - i32.const 0 i32.store offset=4 local.get $0 i32.const 0 @@ -32391,10 +32358,13 @@ local.get $0 local.get $2 i32.store - local.get $0 local.get $2 - i32.const 0 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $2 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $2 i32.store offset=4 @@ -34707,10 +34677,13 @@ i32.add local.get $1 i32.store - local.get $0 local.get $1 - i32.const 1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $2 i32.const 1 i32.add @@ -35053,7 +35026,7 @@ local.set $4 local.get $0 i32.load offset=4 - local.set $0 + local.set $7 loop $for-loop|0 local.get $2 local.get $4 @@ -35062,16 +35035,19 @@ local.get $2 local.get $5 i32.add - local.get $0 local.get $2 + local.get $7 i32.add i32.load - local.tee $7 + local.tee $0 i32.store - local.get $3 - local.get $7 - i32.const 1 - call $~lib/rt/itcms/__link + local.get $0 + if + local.get $3 + local.get $0 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $2 i32.const 4 i32.add @@ -35085,31 +35061,34 @@ local.set $2 local.get $1 i32.load offset=4 - local.set $1 + local.set $5 local.get $6 i32.const 2 i32.shl - local.set $5 + local.set $4 i32.const 0 local.set $0 loop $for-loop|1 local.get $0 - local.get $5 + local.get $4 i32.lt_u if local.get $0 local.get $2 i32.add local.get $0 - local.get $1 + local.get $5 i32.add i32.load - local.tee $4 + local.tee $1 i32.store - local.get $3 - local.get $4 - i32.const 1 - call $~lib/rt/itcms/__link + local.get $1 + if + local.get $3 + local.get $1 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 4 i32.add @@ -35639,10 +35618,13 @@ local.get $3 local.get $1 i32.store - local.get $0 local.get $1 - i32.const 1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $2 i32.store offset=12 @@ -35765,7 +35747,7 @@ i32.const 2 i32.shl i32.add - local.set $1 + local.set $5 i32.const 0 local.set $0 local.get $3 @@ -35781,15 +35763,18 @@ local.get $4 i32.add local.get $0 - local.get $1 + local.get $5 i32.add i32.load - local.tee $5 + local.tee $1 i32.store - local.get $2 - local.get $5 - i32.const 1 - call $~lib/rt/itcms/__link + local.get $1 + if + local.get $2 + local.get $1 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 4 i32.add @@ -36220,4 +36205,77 @@ i32.add global.set $~lib/memory/__stack_pointer ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) + (func $byn-split-outlined-A$~lib/rt/itcms/__link (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1216 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $1 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + local.tee $3 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $0 + local.get $1 + local.get $2 + select + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $3 + i32.const 3 + i32.eq + i32.and + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + end + end + end + ) ) diff --git a/tests/compiler/std/arraybuffer.optimized.wat b/tests/compiler/std/arraybuffer.optimized.wat index 09bd04c359..90e6e1ef88 100644 --- a/tests/compiler/std/arraybuffer.optimized.wat +++ b/tests/compiler/std/arraybuffer.optimized.wat @@ -48,11 +48,11 @@ (local $0 i32) (local $1 i32) i32.const 1360 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1168 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -225,30 +225,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -928,7 +904,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -2620,60 +2600,6 @@ end end ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) - local.get $1 - i32.eqz - if - return - end - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1232 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - i32.load offset=4 - i32.const 3 - i32.and - local.tee $0 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $0 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) (func $~lib/rt/__visit_members (param $0 i32) block $folding-inner1 block $folding-inner0 @@ -2693,7 +2619,11 @@ end local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end unreachable @@ -2703,7 +2633,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -2712,7 +2645,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end ) (func $~start @@ -2732,13 +2668,13 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 0 i32.store offset=16 memory.size @@ -2773,7 +2709,7 @@ i32.store i32.const 1456 global.set $~lib/rt/itcms/fromSpace - local.get $1 + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -2782,26 +2718,26 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 8 call $~lib/memory/memory.fill global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -2816,13 +2752,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 0 i32.const 1073741820 call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -2848,13 +2784,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 1 i32.const 1073741820 call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -2869,13 +2805,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const -1 i32.const 1073741820 call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -2890,13 +2826,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 1 i32.const 3 call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -2911,13 +2847,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 1 i32.const -1 call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -2932,13 +2868,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const -3 i32.const -1 call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -2953,13 +2889,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const -4 i32.const 42 call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -2974,13 +2910,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 42 i32.const 1073741820 call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -2992,7 +2928,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.eqz if i32.const 0 @@ -3003,8 +2939,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -3013,26 +2949,26 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 0 call $~lib/arraybuffer/ArrayBufferView#constructor - local.tee $1 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -3043,35 +2979,38 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store i32.const 8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 i32.const 1632 i32.const 8 call $~lib/memory/memory.copy + local.get $1 local.get $0 - local.get $2 i32.store i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 - local.get $2 + local.tee $1 + local.get $0 i32.store local.get $0 - local.get $2 - call $~lib/rt/itcms/__link + if + local.get $1 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $1 local.get $0 - local.get $2 i32.store offset=4 - local.get $0 + local.get $1 i32.const 8 i32.store offset=8 - local.get $0 + local.get $1 i32.const 2 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -3079,7 +3018,7 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -3113,11 +3052,11 @@ local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.load - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -3131,29 +3070,26 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 12 i32.const 15 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.store - local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 + local.get $1 i32.const 0 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 local.get $2 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -3170,16 +3106,19 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $1 + local.get $0 i32.store local.get $0 + if + local.get $1 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $1 - call $~lib/rt/itcms/__link local.get $0 - local.get $1 i32.store offset=4 - local.get $0 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer @@ -3187,7 +3126,7 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=12 i32.const 18228 global.set $~lib/memory/__stack_pointer @@ -3366,9 +3305,6 @@ i32.store local.get $0 i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - i32.const 0 i32.store offset=4 local.get $0 i32.const 0 @@ -3401,9 +3337,12 @@ local.get $0 local.get $1 i32.store - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $1 i32.store offset=4 @@ -3416,4 +3355,72 @@ global.set $~lib/memory/__stack_pointer local.get $0 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) + (func $byn-split-outlined-A$~lib/rt/itcms/__link (param $0 i32) (param $1 i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1232 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $1 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $0 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $0 + i32.const 3 + i32.eq + i32.and + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + end + end + end + ) ) diff --git a/tests/compiler/std/dataview.optimized.wat b/tests/compiler/std/dataview.optimized.wat index 8026b5c96d..f498ee9989 100644 --- a/tests/compiler/std/dataview.optimized.wat +++ b/tests/compiler/std/dataview.optimized.wat @@ -2,9 +2,9 @@ (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $i32_i32_i32_=>_i32 (func (param i32 i32 i32) (result i32))) (type $none_=>_none (func)) - (type $i32_i32_=>_none (func (param i32 i32))) (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) (type $i32_=>_none (func (param i32))) + (type $i32_i32_=>_none (func (param i32 i32))) (type $i32_i32_=>_i64 (func (param i32 i32) (result i64))) (type $i32_i64_i32_=>_none (func (param i32 i64 i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) @@ -54,11 +54,11 @@ (local $0 i32) (local $1 i32) i32.const 1360 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1168 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -231,30 +231,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -934,7 +910,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1725,60 +1705,6 @@ call $~lib/memory/memory.fill local.get $1 ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) - local.get $1 - i32.eqz - if - return - end - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1232 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - i32.load offset=4 - i32.const 3 - i32.and - local.tee $0 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $0 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) (func $~lib/typedarray/Uint8Array#__set (param $0 i32) (param $1 i32) (param $2 i32) local.get $0 i32.load offset=8 @@ -2525,7 +2451,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end ) (func $~start @@ -2536,6 +2465,8 @@ (local $1 i32) (local $2 i32) (local $3 i32) + (local $4 i32) + (local $5 i32) global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -2546,10 +2477,10 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i64.const 0 i64.store - local.get $0 + local.get $2 i32.const 0 i32.store offset=8 memory.size @@ -2584,7 +2515,7 @@ i32.store i32.const 1456 global.set $~lib/rt/itcms/fromSpace - local.get $0 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -2593,10 +2524,10 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new @@ -2629,9 +2560,6 @@ i32.store local.get $1 i32.const 0 - call $~lib/rt/itcms/__link - local.get $1 - i32.const 0 i32.store offset=4 local.get $1 i32.const 0 @@ -2640,19 +2568,66 @@ i32.const 8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 i32.store offset=4 - local.get $2 + local.get $0 i32.const 8 call $~lib/memory/memory.fill local.get $1 - local.get $2 + local.get $0 i32.store + local.get $0 + if + local.get $1 + i32.eqz + if + i32.const 0 + i32.const 1232 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $3 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $1 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $5 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $3 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $5 + i32.const 3 + i32.eq + i32.and + if + local.get $3 + call $~lib/rt/itcms/Object#makeGray + end + end + end + end local.get $1 - local.get $2 - call $~lib/rt/itcms/__link - local.get $1 - local.get $2 + local.get $0 i32.store offset=4 local.get $1 i32.const 8 @@ -2667,7 +2642,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $2 local.get $1 i32.store local.get $1 @@ -4220,15 +4195,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $0 local.get $1 i32.load - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $2 local.get $0 + local.get $1 i32.const 0 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -4310,6 +4285,8 @@ ) (func $~lib/dataview/DataView#constructor (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) + (local $4 i32) + (local $5 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -4340,9 +4317,6 @@ i32.store local.get $3 i32.const 0 - call $~lib/rt/itcms/__link - local.get $3 - i32.const 0 i32.store offset=4 local.get $3 i32.const 0 @@ -4370,9 +4344,56 @@ local.get $3 local.get $0 i32.store - local.get $3 local.get $0 - call $~lib/rt/itcms/__link + if + local.get $3 + i32.eqz + if + i32.const 0 + i32.const 1232 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $4 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $3 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $5 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $4 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $5 + i32.const 3 + i32.eq + i32.and + if + local.get $4 + call $~lib/rt/itcms/Object#makeGray + end + end + end + end local.get $3 local.get $0 local.get $1 @@ -4387,4 +4408,23 @@ global.set $~lib/memory/__stack_pointer local.get $3 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/std/date.optimized.wat b/tests/compiler/std/date.optimized.wat index b0020c1234..35d68a646c 100644 --- a/tests/compiler/std/date.optimized.wat +++ b/tests/compiler/std/date.optimized.wat @@ -407,19 +407,19 @@ (local $0 i32) (local $1 i32) i32.const 1392 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 6448 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 6544 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1200 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 2304 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 3360 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -592,30 +592,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -1295,7 +1271,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -3885,65 +3865,6 @@ end i32.const -1 ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - local.get $1 - i32.eqz - if - return - end - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1264 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - local.tee $3 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $0 - local.get $1 - local.get $2 - select - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $3 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) (func $~lib/array/Array<~lib/string/String>#push (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -3956,14 +3877,14 @@ (local $10 i32) local.get $0 i32.load offset=12 - local.tee $7 + local.tee $8 i32.const 1 i32.add - local.tee $8 + local.tee $9 local.tee $3 local.get $0 i32.load offset=8 - local.tee $5 + local.tee $2 i32.const 2 i32.shr_u i32.gt_u @@ -3979,17 +3900,18 @@ call $~lib/builtins/abort unreachable end - block $__inlined_func$~lib/rt/itcms/__renew (result i32) - local.get $5 + block $__inlined_func$~lib/rt/itcms/__renew + local.get $2 + local.tee $4 i32.const 1 i32.shl - local.tee $2 + local.tee $5 i32.const 1073741820 - local.get $2 + local.get $5 i32.const 1073741820 i32.lt_u select - local.tee $2 + local.tee $5 local.get $3 i32.const 8 local.get $3 @@ -3999,19 +3921,19 @@ i32.const 2 i32.shl local.tee $3 - local.get $2 local.get $3 - i32.gt_u + local.get $5 + i32.lt_u select - local.tee $3 - local.tee $2 + local.tee $7 + local.tee $5 local.get $0 i32.load - local.tee $9 - local.tee $6 + local.tee $10 + local.tee $2 i32.const 20 i32.sub - local.tee $4 + local.tee $6 i32.load i32.const -4 i32.and @@ -4019,38 +3941,38 @@ i32.sub i32.le_u if - local.get $4 - local.get $2 - i32.store offset=16 local.get $6 + local.get $5 + i32.store offset=16 br $__inlined_func$~lib/rt/itcms/__renew end - local.get $2 - local.get $4 + local.get $5 + local.get $6 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $10 - local.get $6 + local.tee $3 local.get $2 - local.get $4 + local.get $5 + local.get $6 i32.load offset=16 - local.tee $4 + local.tee $2 local.get $2 - local.get $4 - i32.lt_u + local.get $5 + i32.gt_u select call $~lib/memory/memory.copy - local.get $10 + local.get $3 + local.set $2 end - local.tee $2 - local.get $5 + local.get $2 + local.get $4 i32.add - local.get $3 - local.get $5 + local.get $7 + local.get $4 i32.sub call $~lib/memory/memory.fill local.get $2 - local.get $9 + local.get $10 i32.ne if local.get $0 @@ -4059,29 +3981,35 @@ local.get $0 local.get $2 i32.store offset=4 - local.get $0 local.get $2 - i32.const 0 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $2 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end end local.get $0 - local.get $3 + local.get $7 i32.store offset=8 end local.get $0 i32.load offset=4 - local.get $7 + local.get $8 i32.const 2 i32.shl i32.add local.get $1 i32.store - local.get $0 local.get $1 - i32.const 1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 - local.get $8 + local.get $9 i32.store offset=12 ) (func $~lib/util/string/strtol (param $0 i32) (result i32) @@ -4386,7 +4314,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -4410,7 +4341,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end local.get $1 i32.const 4 @@ -4431,7 +4365,7 @@ i32.shl i32.add local.set $3 - loop $while-continue|00 + loop $while-continue|01 local.get $2 local.get $3 i32.lt_u @@ -4441,23 +4375,34 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end local.get $2 i32.const 4 i32.add local.set $2 - br $while-continue|00 + br $while-continue|01 end end local.get $1 i32.load - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end unreachable @@ -5707,10 +5652,13 @@ i32.load offset=4 local.get $0 i32.store - local.get $1 local.get $0 - i32.const 1 - call $~lib/rt/itcms/__link + if + local.get $1 + local.get $0 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end br $folding-inner0 end local.get $0 @@ -5719,7 +5667,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.set $2 + local.set $3 local.get $1 i32.const 20 i32.sub @@ -5728,7 +5676,7 @@ i32.shr_u local.tee $7 if - local.get $2 + local.get $3 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -5743,7 +5691,7 @@ br $folding-inner1 end else - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -5752,53 +5700,56 @@ br $folding-inner1 end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 2147483647 - local.get $2 + local.get $3 i32.const 2147483647 i32.ne select - local.tee $2 + local.tee $4 call $~lib/rt/__newArray local.tee $1 i32.store local.get $1 i32.load offset=4 - local.set $5 + local.set $3 loop $for-loop|0 - local.get $2 - local.get $3 + local.get $4 + local.get $5 i32.gt_s if global.get $~lib/memory/__stack_pointer i32.const 2 i32.const 1 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $2 i32.store offset=8 - local.get $4 - local.get $3 + local.get $2 + local.get $5 i32.const 1 i32.shl local.get $0 i32.add i32.load16_u i32.store16 - local.get $3 + local.get $5 i32.const 2 i32.shl - local.get $5 + local.get $3 i32.add - local.get $4 + local.get $2 i32.store - local.get $1 - local.get $4 - i32.const 1 - call $~lib/rt/itcms/__link - local.get $3 + local.get $2 + if + local.get $1 + local.get $2 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $5 i32.const 1 i32.add - local.set $3 + local.set $5 br $for-loop|0 end end @@ -5807,7 +5758,7 @@ global.get $~lib/memory/__stack_pointer i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $2 i32.store offset=12 loop $while-continue|1 local.get $0 @@ -5842,14 +5793,14 @@ i32.add local.get $8 call $~lib/memory/memory.copy - local.get $3 + local.get $2 local.get $6 call $~lib/array/Array<~lib/string/String>#push else global.get $~lib/memory/__stack_pointer i32.const 3456 i32.store offset=20 - local.get $3 + local.get $2 i32.const 3456 call $~lib/array/Array<~lib/string/String>#push end @@ -5870,12 +5821,12 @@ local.get $4 i32.eqz if - local.get $3 + local.get $2 local.get $0 call $~lib/array/Array<~lib/string/String>#push br $folding-inner2 end - local.get $2 + local.get $3 local.get $4 i32.sub local.tee $1 @@ -5886,7 +5837,7 @@ local.get $1 i32.const 1 i32.shl - local.tee $2 + local.tee $3 i32.const 1 call $~lib/rt/itcms/__new local.tee $1 @@ -5897,16 +5848,16 @@ i32.shl local.get $0 i32.add - local.get $2 - call $~lib/memory/memory.copy local.get $3 + call $~lib/memory/memory.copy + local.get $2 local.get $1 call $~lib/array/Array<~lib/string/String>#push else global.get $~lib/memory/__stack_pointer i32.const 3456 i32.store offset=20 - local.get $3 + local.get $2 i32.const 3456 call $~lib/array/Array<~lib/string/String>#push end @@ -5914,7 +5865,7 @@ i32.const 24 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 return end global.get $~lib/memory/__stack_pointer @@ -5935,7 +5886,7 @@ i32.const 24 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 ) (func $~lib/date/Date.fromString (param $0 i32) (result i32) (local $1 i32) @@ -9765,10 +9716,13 @@ local.tee $1 local.get $2 i32.store - local.get $1 local.get $2 - i32.const 0 - call $~lib/rt/itcms/__link + if + local.get $1 + local.get $2 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $1 local.get $2 i32.store offset=4 @@ -9841,4 +9795,77 @@ global.set $~lib/memory/__stack_pointer local.get $0 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) + (func $byn-split-outlined-A$~lib/rt/itcms/__link (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1264 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $1 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + local.tee $3 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $0 + local.get $1 + local.get $2 + select + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $3 + i32.const 3 + i32.eq + i32.and + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + end + end + end + ) ) diff --git a/tests/compiler/std/hash.optimized.wat b/tests/compiler/std/hash.optimized.wat index 656711ac9a..97960059ba 100644 --- a/tests/compiler/std/hash.optimized.wat +++ b/tests/compiler/std/hash.optimized.wat @@ -1,7 +1,7 @@ (module - (type $i32_=>_none (func (param i32))) (type $none_=>_none (func)) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) + (type $i32_=>_none (func (param i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (global $~lib/memory/__stack_pointer (mut i32) (i32.const 17788)) (memory $0 1) @@ -27,179 +27,8 @@ (data (i32.const 1368) "\01\00\00\00\12\00\00\00a\00b\00c\00d\00e\00f\00g\00h\00i") (export "memory" (memory $0)) (start $~start) - (func $~lib/util/hash/HASH<~lib/string/String|null> (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - if - local.get $0 - local.tee $1 - i32.const 20 - i32.sub - i32.load offset=16 - i32.const 1 - i32.shr_u - i32.const 1 - i32.shl - local.tee $3 - i32.const 16 - i32.ge_u - if (result i32) - i32.const 606290984 - local.set $2 - i32.const -2048144777 - local.set $4 - i32.const 1640531535 - local.set $5 - local.get $1 - local.get $3 - i32.add - i32.const 16 - i32.sub - local.set $7 - loop $while-continue|0 - local.get $1 - local.get $7 - i32.le_u - if - local.get $1 - i32.load - i32.const -2048144777 - i32.mul - local.get $2 - i32.add - i32.const 13 - i32.rotl - i32.const -1640531535 - i32.mul - local.set $2 - local.get $1 - i32.load offset=4 - i32.const -2048144777 - i32.mul - local.get $4 - i32.add - i32.const 13 - i32.rotl - i32.const -1640531535 - i32.mul - local.set $4 - local.get $1 - i32.load offset=8 - i32.const -2048144777 - i32.mul - local.get $6 - i32.add - i32.const 13 - i32.rotl - i32.const -1640531535 - i32.mul - local.set $6 - local.get $1 - i32.load offset=12 - i32.const -2048144777 - i32.mul - local.get $5 - i32.add - i32.const 13 - i32.rotl - i32.const -1640531535 - i32.mul - local.set $5 - local.get $1 - i32.const 16 - i32.add - local.set $1 - br $while-continue|0 - end - end - local.get $2 - i32.const 1 - i32.rotl - local.get $4 - i32.const 7 - i32.rotl - i32.add - local.get $6 - i32.const 12 - i32.rotl - i32.add - local.get $5 - i32.const 18 - i32.rotl - i32.add - local.get $3 - i32.add - else - local.get $3 - i32.const 374761393 - i32.add - end - local.set $2 - local.get $0 - local.get $3 - i32.add - i32.const 4 - i32.sub - local.set $4 - loop $while-continue|1 - local.get $1 - local.get $4 - i32.le_u - if - local.get $1 - i32.load - i32.const -1028477379 - i32.mul - local.get $2 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.set $2 - local.get $1 - i32.const 4 - i32.add - local.set $1 - br $while-continue|1 - end - end - local.get $0 - local.get $3 - i32.add - local.set $0 - loop $while-continue|2 - local.get $0 - local.get $1 - i32.gt_u - if - local.get $1 - i32.load8_u - i32.const 374761393 - i32.mul - local.get $2 - i32.add - i32.const 11 - i32.rotl - i32.const -1640531535 - i32.mul - local.set $2 - local.get $1 - i32.const 1 - i32.add - local.set $1 - br $while-continue|2 - end - end - end - ) (func $~start + (local $0 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -216,63 +45,231 @@ unreachable end global.get $~lib/memory/__stack_pointer + local.tee $0 i32.const 0 i32.store - i32.const 0 - call $~lib/util/hash/HASH<~lib/string/String|null> - global.get $~lib/memory/__stack_pointer + local.get $0 i32.const 1056 i32.store i32.const 1056 - call $~lib/util/hash/HASH<~lib/string/String|null> + call $byn-split-outlined-B$~lib/util/hash/HASH<~lib/string/String|null> global.get $~lib/memory/__stack_pointer i32.const 1088 i32.store i32.const 1088 - call $~lib/util/hash/HASH<~lib/string/String|null> + call $byn-split-outlined-B$~lib/util/hash/HASH<~lib/string/String|null> global.get $~lib/memory/__stack_pointer i32.const 1120 i32.store i32.const 1120 - call $~lib/util/hash/HASH<~lib/string/String|null> + call $byn-split-outlined-B$~lib/util/hash/HASH<~lib/string/String|null> global.get $~lib/memory/__stack_pointer i32.const 1152 i32.store i32.const 1152 - call $~lib/util/hash/HASH<~lib/string/String|null> + call $byn-split-outlined-B$~lib/util/hash/HASH<~lib/string/String|null> global.get $~lib/memory/__stack_pointer i32.const 1184 i32.store i32.const 1184 - call $~lib/util/hash/HASH<~lib/string/String|null> + call $byn-split-outlined-B$~lib/util/hash/HASH<~lib/string/String|null> global.get $~lib/memory/__stack_pointer i32.const 1216 i32.store i32.const 1216 - call $~lib/util/hash/HASH<~lib/string/String|null> + call $byn-split-outlined-B$~lib/util/hash/HASH<~lib/string/String|null> global.get $~lib/memory/__stack_pointer i32.const 1248 i32.store i32.const 1248 - call $~lib/util/hash/HASH<~lib/string/String|null> + call $byn-split-outlined-B$~lib/util/hash/HASH<~lib/string/String|null> global.get $~lib/memory/__stack_pointer i32.const 1280 i32.store i32.const 1280 - call $~lib/util/hash/HASH<~lib/string/String|null> + call $byn-split-outlined-B$~lib/util/hash/HASH<~lib/string/String|null> global.get $~lib/memory/__stack_pointer i32.const 1328 i32.store i32.const 1328 - call $~lib/util/hash/HASH<~lib/string/String|null> + call $byn-split-outlined-B$~lib/util/hash/HASH<~lib/string/String|null> global.get $~lib/memory/__stack_pointer i32.const 1376 i32.store i32.const 1376 - call $~lib/util/hash/HASH<~lib/string/String|null> + call $byn-split-outlined-B$~lib/util/hash/HASH<~lib/string/String|null> global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer ) + (func $byn-split-outlined-B$~lib/util/hash/HASH<~lib/string/String|null> (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + local.tee $1 + i32.const 20 + i32.sub + i32.load offset=16 + i32.const 1 + i32.shr_u + i32.const 1 + i32.shl + local.tee $3 + i32.const 16 + i32.ge_u + if (result i32) + i32.const 606290984 + local.set $2 + i32.const -2048144777 + local.set $4 + i32.const 1640531535 + local.set $5 + local.get $1 + local.get $3 + i32.add + i32.const 16 + i32.sub + local.set $7 + loop $while-continue|0 + local.get $1 + local.get $7 + i32.le_u + if + local.get $1 + i32.load + i32.const -2048144777 + i32.mul + local.get $2 + i32.add + i32.const 13 + i32.rotl + i32.const -1640531535 + i32.mul + local.set $2 + local.get $1 + i32.load offset=4 + i32.const -2048144777 + i32.mul + local.get $4 + i32.add + i32.const 13 + i32.rotl + i32.const -1640531535 + i32.mul + local.set $4 + local.get $1 + i32.load offset=8 + i32.const -2048144777 + i32.mul + local.get $6 + i32.add + i32.const 13 + i32.rotl + i32.const -1640531535 + i32.mul + local.set $6 + local.get $1 + i32.load offset=12 + i32.const -2048144777 + i32.mul + local.get $5 + i32.add + i32.const 13 + i32.rotl + i32.const -1640531535 + i32.mul + local.set $5 + local.get $1 + i32.const 16 + i32.add + local.set $1 + br $while-continue|0 + end + end + local.get $2 + i32.const 1 + i32.rotl + local.get $4 + i32.const 7 + i32.rotl + i32.add + local.get $6 + i32.const 12 + i32.rotl + i32.add + local.get $5 + i32.const 18 + i32.rotl + i32.add + local.get $3 + i32.add + else + local.get $3 + i32.const 374761393 + i32.add + end + local.set $2 + local.get $0 + local.get $3 + i32.add + i32.const 4 + i32.sub + local.set $4 + loop $while-continue|1 + local.get $1 + local.get $4 + i32.le_u + if + local.get $1 + i32.load + i32.const -1028477379 + i32.mul + local.get $2 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.set $2 + local.get $1 + i32.const 4 + i32.add + local.set $1 + br $while-continue|1 + end + end + local.get $0 + local.get $3 + i32.add + local.set $0 + loop $while-continue|2 + local.get $0 + local.get $1 + i32.gt_u + if + local.get $1 + i32.load8_u + i32.const 374761393 + i32.mul + local.get $2 + i32.add + i32.const 11 + i32.rotl + i32.const -1640531535 + i32.mul + local.set $2 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $while-continue|2 + end + end + ) ) diff --git a/tests/compiler/std/map.optimized.wat b/tests/compiler/std/map.optimized.wat index c49e298fee..6675dbca49 100644 --- a/tests/compiler/std/map.optimized.wat +++ b/tests/compiler/std/map.optimized.wat @@ -60,13 +60,13 @@ (local $0 i32) (local $1 i32) i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1456 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1616 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -239,30 +239,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -942,7 +918,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1733,60 +1713,6 @@ call $~lib/memory/memory.fill local.get $1 ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) - local.get $1 - i32.eqz - if - return - end - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - i32.load offset=4 - i32.const 3 - i32.and - local.tee $0 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $0 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) (func $~lib/map/Map#rehash (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -1811,26 +1737,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -1838,37 +1764,37 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $7 + local.tee $5 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $4 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $5 + local.get $8 i32.ne if - local.get $7 + local.get $5 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $7 + local.get $5 i32.load8_s - local.tee $8 + local.tee $4 i32.store8 local.get $2 - local.get $7 + local.get $5 i32.load offset=4 i32.store offset=4 local.get $2 - local.get $8 + local.get $4 i32.extend8_s i32.const -1028477379 i32.mul @@ -1878,22 +1804,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u i32.xor @@ -1903,10 +1829,10 @@ i32.shl local.get $6 i32.add - local.tee $8 + local.tee $4 i32.load i32.store offset=8 - local.get $8 + local.get $4 local.get $2 i32.store local.get $2 @@ -1914,30 +1840,36 @@ i32.add local.set $2 end - local.get $7 + local.get $5 i32.const 12 i32.add - local.set $7 + local.set $5 br $while-continue|0 end end local.get $0 local.get $6 i32.store - local.get $0 local.get $6 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $6 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $1 i32.store offset=4 local.get $0 local.get $3 i32.store offset=8 - local.get $0 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -3042,9 +2974,12 @@ local.get $0 local.get $1 i32.store offset=4 - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end end local.get $0 local.get $6 @@ -3172,26 +3107,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -3199,37 +3134,37 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $7 + local.tee $5 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $4 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $5 + local.get $8 i32.ne if - local.get $7 + local.get $5 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $7 + local.get $5 i32.load - local.tee $8 + local.tee $4 i32.store local.get $2 - local.get $7 + local.get $5 i32.load offset=4 i32.store offset=4 local.get $2 - local.get $8 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -3238,22 +3173,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u i32.xor @@ -3263,10 +3198,10 @@ i32.shl local.get $6 i32.add - local.tee $8 + local.tee $4 i32.load i32.store offset=8 - local.get $8 + local.get $4 local.get $2 i32.store local.get $2 @@ -3274,30 +3209,36 @@ i32.add local.set $2 end - local.get $7 + local.get $5 i32.const 12 i32.add - local.set $7 + local.set $5 br $while-continue|0 end end local.get $0 local.get $6 i32.store - local.get $0 local.get $6 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $6 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $1 i32.store offset=4 local.get $0 local.get $3 i32.store offset=8 - local.get $0 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -3440,9 +3381,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 3 i32.store offset=4 @@ -3451,9 +3395,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=8 - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 4 i32.store offset=12 @@ -3502,6 +3449,7 @@ i32.const 0 i32.store offset=16 local.get $4 + local.tee $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -3510,61 +3458,67 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $4 i32.const 0 i32.store - local.get $5 + local.get $4 i32.const 24 i32.const 3 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $4 i32.store - local.get $5 + local.get $4 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $5 i32.store local.get $5 - local.get $0 - call $~lib/rt/itcms/__link - local.get $5 + if + local.get $4 + local.get $5 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $4 i32.const 3 i32.store offset=4 - local.get $5 + local.get $4 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $5 i32.store offset=8 local.get $5 - local.get $0 - call $~lib/rt/itcms/__link - local.get $5 + if + local.get $4 + local.get $5 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $4 i32.const 4 i32.store offset=12 - local.get $5 + local.get $4 i32.const 0 i32.store offset=16 - local.get $5 + local.get $4 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $1 local.get $4 - local.get $5 i32.store loop $for-loop|1 - local.get $2 + local.get $3 i32.extend8_s i32.const 100 i32.lt_s if - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.extend8_s i32.const -1028477379 i32.mul @@ -3574,62 +3528,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $1 i32.const 15 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $1 i32.const 13 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $1 i32.const 16 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $1 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $4 + local.get $1 if - local.get $4 + local.get $1 i32.load offset=8 - local.tee $3 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $1 i32.load8_u - local.get $2 + local.get $3 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $3 + local.get $6 i32.const -2 i32.and - local.set $4 + local.set $1 br $while-continue|0 end end i32.const 0 - local.set $4 + local.set $1 end - local.get $4 + local.get $1 if i32.const 0 i32.const 1568 @@ -3638,19 +3592,19 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 - local.get $2 + local.get $4 + local.get $3 + local.get $3 i32.extend8_s - local.tee $4 + local.tee $1 i32.const 10 i32.add call $~lib/map/Map#set - local.get $5 + local.get $4 i32.load - local.get $5 - i32.load offset=4 local.get $4 + i32.load offset=4 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761394 @@ -3659,62 +3613,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $1 i32.const 15 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $1 i32.const 13 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $1 i32.const 16 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $1 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $4 + local.get $1 if - local.get $4 + local.get $1 i32.load offset=8 - local.tee $3 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $1 i32.load8_u - local.get $2 + local.get $3 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $3 + local.get $6 i32.const -2 i32.and - local.set $4 + local.set $1 br $while-continue|02 end end i32.const 0 - local.set $4 + local.set $1 end - local.get $4 + local.get $1 i32.eqz if i32.const 0 @@ -3724,10 +3678,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 + local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $2 + local.get $3 i32.extend8_s i32.const 10 i32.add @@ -3740,14 +3694,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 1 i32.add - local.set $2 + local.set $3 br $for-loop|1 end end - local.get $5 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -3760,18 +3714,18 @@ unreachable end i32.const 0 - local.set $2 + local.set $3 loop $for-loop|3 - local.get $2 + local.get $3 i32.extend8_s i32.const 100 i32.lt_s if - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.extend8_s i32.const -1028477379 i32.mul @@ -3781,62 +3735,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $1 i32.const 15 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $1 i32.const 13 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $1 i32.const 16 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $1 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $4 + local.get $1 if - local.get $4 + local.get $1 i32.load offset=8 - local.tee $3 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $1 i32.load8_u - local.get $2 + local.get $3 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $3 + local.get $6 i32.const -2 i32.and - local.set $4 + local.set $1 br $while-continue|05 end end i32.const 0 - local.set $4 + local.set $1 end - local.get $4 + local.get $1 i32.eqz if i32.const 0 @@ -3846,10 +3800,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 + local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $2 + local.get $3 i32.extend8_s i32.const 10 i32.add @@ -3862,19 +3816,19 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 - local.get $2 + local.get $4 + local.get $3 + local.get $3 i32.extend8_s - local.tee $4 + local.tee $1 i32.const 20 i32.add call $~lib/map/Map#set - local.get $5 + local.get $4 i32.load - local.get $5 - i32.load offset=4 local.get $4 + i32.load offset=4 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761394 @@ -3883,62 +3837,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $1 i32.const 15 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $1 i32.const 13 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $1 i32.const 16 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $1 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $4 + local.get $1 if - local.get $4 + local.get $1 i32.load offset=8 - local.tee $3 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $1 i32.load8_u - local.get $2 + local.get $3 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $3 + local.get $6 i32.const -2 i32.and - local.set $4 + local.set $1 br $while-continue|08 end end i32.const 0 - local.set $4 + local.set $1 end - local.get $4 + local.get $1 i32.eqz if i32.const 0 @@ -3948,10 +3902,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 + local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $2 + local.get $3 i32.extend8_s i32.const 20 i32.add @@ -3964,14 +3918,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 1 i32.add - local.set $2 + local.set $3 br $for-loop|3 end end - local.get $5 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -3984,8 +3938,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -3997,14 +3951,15 @@ local.tee $3 i32.const 0 i32.store - local.get $5 + local.get $4 i32.load offset=8 local.set $11 - local.get $5 + local.get $4 i32.load offset=16 local.tee $12 - local.set $4 + local.set $6 local.get $3 + local.tee $1 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -4013,31 +3968,28 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 i32.const 16 i32.const 4 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 i32.const 0 i32.store - local.get $2 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $2 + local.get $3 i32.const 0 i32.store offset=4 - local.get $2 + local.get $3 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 i32.const 0 i32.store offset=12 - local.get $4 + local.get $6 i32.const 1073741820 i32.gt_u if @@ -4049,41 +4001,44 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.const 8 - local.get $4 + local.get $6 i32.const 8 i32.gt_u select local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $5 i32.store offset=4 - local.get $0 + local.get $5 local.get $8 call $~lib/memory/memory.fill - local.get $2 - local.get $0 + local.get $3 + local.get $5 i32.store - local.get $2 - local.get $0 - call $~lib/rt/itcms/__link - local.get $2 - local.get $0 + local.get $5 + if + local.get $3 + local.get $5 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $3 + local.get $5 i32.store offset=4 - local.get $2 + local.get $3 local.get $8 i32.store offset=8 - local.get $2 - local.get $4 + local.get $3 + local.get $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $1 local.get $3 - local.get $2 i32.store loop $for-loop|0 local.get $7 @@ -4095,21 +4050,21 @@ i32.mul local.get $11 i32.add - local.tee $4 + local.tee $1 i32.load offset=8 i32.const 1 i32.and i32.eqz if + local.get $3 local.get $2 local.get $1 - local.get $4 i32.load8_s call $~lib/array/Array#__set - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 end local.get $7 i32.const 1 @@ -4118,23 +4073,23 @@ br $for-loop|0 end end + local.get $3 local.get $2 - local.get $1 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity + local.get $3 local.get $2 - local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 - local.tee $1 + local.get $3 + local.tee $5 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 call $~lib/map/Map#values local.tee $13 i32.store offset=8 @@ -4148,63 +4103,70 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i32.const 0 i32.store - local.get $4 + local.get $3 i32.const 24 i32.const 6 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $3 i32.store - local.get $4 + local.get $3 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $1 i32.store - local.get $4 - local.get $0 - call $~lib/rt/itcms/__link - local.get $4 + local.get $1 + if + local.get $3 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $3 i32.const 3 i32.store offset=4 - local.get $4 + local.get $3 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $1 i32.store offset=8 - local.get $4 - local.get $0 - call $~lib/rt/itcms/__link - local.get $4 + local.get $1 + if + local.get $3 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $3 i32.const 4 i32.store offset=12 - local.get $4 + local.get $3 i32.const 0 i32.store offset=16 - local.get $4 + local.get $3 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor local.tee $11 i32.store offset=16 loop $for-loop|4 - local.get $1 + local.get $5 i32.load offset=12 - local.get $6 + local.get $0 i32.gt_s if - local.get $1 + local.get $0 + local.tee $6 + local.get $5 i32.load offset=12 - local.get $6 - i32.le_u + i32.ge_u if i32.const 1248 i32.const 1728 @@ -4214,20 +4176,20 @@ unreachable end local.get $6 - local.get $1 + local.get $5 i32.load offset=4 i32.add i32.load8_s - local.set $2 + local.set $0 local.get $13 local.get $6 call $~lib/array/Array#__get local.set $12 - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $0 i32.extend8_s i32.const -1028477379 i32.mul @@ -4237,62 +4199,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/map/Map#find10 loop $while-continue|011 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $3 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load8_u - local.get $2 + local.get $0 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $3 + local.get $7 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|011 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -4302,14 +4264,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 local.get $12 i32.const 20 i32.sub - local.tee $3 + local.tee $7 i32.extend8_s i32.const -1028477379 i32.mul @@ -4319,36 +4281,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/map/Map#find13 loop $while-continue|014 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=8 local.tee $8 i32.const 1 @@ -4356,9 +4318,9 @@ if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load8_u - local.get $3 + local.get $7 i32.const 255 i32.and i32.eq @@ -4367,14 +4329,14 @@ local.get $8 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|014 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -4395,10 +4357,10 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $4 + local.get $3 i32.load - local.get $2 - local.tee $0 + local.get $0 + local.tee $7 i32.extend8_s i32.const -1028477379 i32.mul @@ -4408,79 +4370,79 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $7 + local.tee $0 i32.const 15 i32.shr_u - local.get $7 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $7 + local.tee $0 i32.const 13 i32.shr_u - local.get $7 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $7 + local.tee $0 i32.const 16 i32.shr_u - local.get $7 + local.get $0 i32.xor local.tee $14 - local.get $4 + local.get $3 i32.load offset=4 i32.and i32.const 2 i32.shl i32.add i32.load - local.set $7 + local.set $0 block $__inlined_func$~lib/map/Map#find loop $while-continue|015 - local.get $7 + local.get $0 if - local.get $7 + local.get $0 i32.load offset=4 - local.tee $8 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $7 - i32.load8_u local.get $0 + i32.load8_u + local.get $7 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $8 + local.get $2 i32.const -2 i32.and - local.set $7 + local.set $0 br $while-continue|015 end end i32.const 0 - local.set $7 + local.set $0 end - local.get $7 + local.get $0 if + local.get $0 local.get $7 - local.get $2 i32.store8 offset=1 else - local.get $4 + local.get $3 i32.load offset=16 - local.get $4 + local.get $3 i32.load offset=12 i32.eq if - local.get $4 + local.get $3 i32.load offset=20 - local.get $4 + local.get $3 i32.load offset=12 i32.const 3 i32.mul @@ -4488,17 +4450,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $4 + local.get $3 i32.load offset=4 else - local.get $4 + local.get $3 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $7 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -4512,7 +4474,7 @@ i64.const 0 i64.store local.get $0 - local.get $7 + local.get $2 i32.const 1 i32.add local.tee $0 @@ -4531,18 +4493,18 @@ i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $1 i32.store offset=4 - local.get $4 + local.get $3 i32.load offset=8 local.tee $8 - local.get $4 + local.get $3 i32.load offset=16 i32.const 3 i32.shl i32.add local.set $16 - local.get $3 + local.get $1 local.set $0 loop $while-continue|016 local.get $8 @@ -4594,7 +4556,7 @@ i32.shr_u local.get $9 i32.xor - local.get $7 + local.get $2 i32.and i32.const 2 i32.shl @@ -4618,26 +4580,32 @@ br $while-continue|016 end end - local.get $4 + local.get $3 local.get $10 i32.store - local.get $4 local.get $10 - call $~lib/rt/itcms/__link - local.get $4 - local.get $7 + if + local.get $3 + local.get $10 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $3 + local.get $2 i32.store offset=4 - local.get $4 local.get $3 + local.get $1 i32.store offset=8 - local.get $4 + local.get $1 + if + local.get $3 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $3 - call $~lib/rt/itcms/__link - local.get $4 local.get $15 i32.store offset=12 - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -4646,48 +4614,48 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.load offset=8 local.tee $0 i32.store - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=16 - local.tee $7 + local.tee $1 i32.const 1 i32.add i32.store offset=16 - local.get $7 + local.get $1 i32.const 3 i32.shl local.get $0 i32.add local.tee $0 - local.get $2 + local.get $7 i32.store8 local.get $0 - local.get $2 + local.get $7 i32.store8 offset=1 - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $4 + local.get $3 i32.load - local.get $4 + local.get $3 i32.load offset=4 local.get $14 i32.and i32.const 2 i32.shl i32.add - local.tee $2 + local.tee $1 i32.load i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store end @@ -4699,17 +4667,17 @@ local.get $12 i32.const 20 i32.sub - local.tee $2 - local.get $2 + local.tee $0 + local.get $0 call $~lib/map/Map#set local.get $6 i32.const 1 i32.add - local.set $6 + local.set $0 br $for-loop|4 end end - local.get $4 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -4734,18 +4702,18 @@ unreachable end i32.const 0 - local.set $6 + local.set $0 loop $for-loop|6 - local.get $6 + local.get $0 i32.extend8_s i32.const 50 i32.lt_s if - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $6 + local.get $0 i32.extend8_s i32.const -1028477379 i32.mul @@ -4755,62 +4723,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find18 loop $while-continue|019 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 - local.tee $0 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u - local.get $6 + local.get $0 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find18 - local.get $0 + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|019 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -4820,10 +4788,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $6 + local.get $4 + local.get $0 call $~lib/map/Map#get - local.get $6 + local.get $0 i32.extend8_s i32.const 20 i32.add @@ -4836,14 +4804,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $6 + local.get $4 + local.get $0 call $~lib/map/Map#delete - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $6 + local.get $0 i32.extend8_s i32.const -1028477379 i32.mul @@ -4853,62 +4821,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find21 loop $while-continue|022 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 - local.tee $0 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u - local.get $6 + local.get $0 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find21 - local.get $0 + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|022 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -4917,14 +4885,14 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $0 i32.const 1 i32.add - local.set $6 + local.set $0 br $for-loop|6 end end - local.get $5 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -4937,18 +4905,18 @@ unreachable end i32.const 0 - local.set $6 + local.set $0 loop $for-loop|8 - local.get $6 + local.get $0 i32.extend8_s i32.const 50 i32.lt_s if - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $6 + local.get $0 i32.extend8_s i32.const -1028477379 i32.mul @@ -4958,62 +4926,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find24 loop $while-continue|025 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 - local.tee $0 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u - local.get $6 + local.get $0 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find24 - local.get $0 + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|025 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -5022,19 +4990,19 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $6 - local.get $6 + local.get $4 + local.get $0 + local.get $0 i32.extend8_s - local.tee $2 + local.tee $3 i32.const 10 i32.add call $~lib/map/Map#set - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761394 @@ -5043,62 +5011,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find27 loop $while-continue|028 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 - local.tee $0 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u - local.get $6 + local.get $0 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find27 - local.get $0 + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|028 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -5108,14 +5076,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $6 + local.get $4 + local.get $0 call $~lib/map/Map#delete - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $6 + local.get $0 i32.extend8_s i32.const -1028477379 i32.mul @@ -5125,62 +5093,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find30 loop $while-continue|031 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 - local.tee $0 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u - local.get $6 + local.get $0 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find30 - local.get $0 + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|031 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -5189,14 +5157,14 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $0 i32.const 1 i32.add - local.set $6 + local.set $0 br $for-loop|8 end end - local.get $5 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -5208,9 +5176,9 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $4 call $~lib/map/Map#clear - local.get $5 + local.get $4 i32.load offset=20 if i32.const 0 @@ -5257,26 +5225,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -5284,37 +5252,37 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $7 + local.tee $5 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $4 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $5 + local.get $8 i32.ne if - local.get $7 + local.get $5 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $7 + local.get $5 i32.load8_u - local.tee $8 + local.tee $4 i32.store8 local.get $2 - local.get $7 + local.get $5 i32.load offset=4 i32.store offset=4 local.get $2 - local.get $8 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761394 @@ -5323,22 +5291,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u i32.xor @@ -5348,10 +5316,10 @@ i32.shl local.get $6 i32.add - local.tee $8 + local.tee $4 i32.load i32.store offset=8 - local.get $8 + local.get $4 local.get $2 i32.store local.get $2 @@ -5359,30 +5327,36 @@ i32.add local.set $2 end - local.get $7 + local.get $5 i32.const 12 i32.add - local.set $7 + local.set $5 br $while-continue|0 end end local.get $0 local.get $6 i32.store - local.get $0 local.get $6 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $6 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $1 i32.store offset=4 local.get $0 local.get $3 i32.store offset=8 - local.get $0 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -5642,6 +5616,7 @@ i32.const 0 i32.store offset=16 local.get $4 + local.tee $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -5650,62 +5625,68 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $4 i32.const 0 i32.store - local.get $5 + local.get $4 i32.const 24 i32.const 8 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $4 i32.store - local.get $5 + local.get $4 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $5 i32.store local.get $5 - local.get $0 - call $~lib/rt/itcms/__link - local.get $5 + if + local.get $4 + local.get $5 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $4 i32.const 3 i32.store offset=4 - local.get $5 + local.get $4 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $5 i32.store offset=8 local.get $5 - local.get $0 - call $~lib/rt/itcms/__link - local.get $5 + if + local.get $4 + local.get $5 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $4 i32.const 4 i32.store offset=12 - local.get $5 + local.get $4 i32.const 0 i32.store offset=16 - local.get $5 + local.get $4 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $1 local.get $4 - local.get $5 i32.store loop $for-loop|1 - local.get $2 + local.get $3 i32.const 255 i32.and i32.const 100 i32.lt_u if - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.const 255 i32.and i32.const -1028477379 @@ -5716,62 +5697,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $1 i32.const 15 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $1 i32.const 13 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $1 i32.const 16 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $1 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $4 + local.get $1 if - local.get $4 + local.get $1 i32.load offset=8 - local.tee $3 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $1 i32.load8_u - local.get $2 + local.get $3 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $3 + local.get $6 i32.const -2 i32.and - local.set $4 + local.set $1 br $while-continue|0 end end i32.const 0 - local.set $4 + local.set $1 end - local.get $4 + local.get $1 if i32.const 0 i32.const 1568 @@ -5780,20 +5761,20 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 - local.get $2 + local.get $4 + local.get $3 + local.get $3 i32.const 255 i32.and - local.tee $4 + local.tee $1 i32.const 10 i32.add call $~lib/map/Map#set - local.get $5 + local.get $4 i32.load - local.get $5 - i32.load offset=4 local.get $4 + i32.load offset=4 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761394 @@ -5802,62 +5783,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $1 i32.const 15 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $1 i32.const 13 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $1 i32.const 16 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $1 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $4 + local.get $1 if - local.get $4 + local.get $1 i32.load offset=8 - local.tee $3 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $1 i32.load8_u - local.get $2 + local.get $3 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $3 + local.get $6 i32.const -2 i32.and - local.set $4 + local.set $1 br $while-continue|02 end end i32.const 0 - local.set $4 + local.set $1 end - local.get $4 + local.get $1 i32.eqz if i32.const 0 @@ -5867,10 +5848,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 + local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $2 + local.get $3 i32.const 255 i32.and i32.const 10 @@ -5884,14 +5865,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 1 i32.add - local.set $2 + local.set $3 br $for-loop|1 end end - local.get $5 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -5904,19 +5885,19 @@ unreachable end i32.const 0 - local.set $2 + local.set $3 loop $for-loop|3 - local.get $2 + local.get $3 i32.const 255 i32.and i32.const 100 i32.lt_u if - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.const 255 i32.and i32.const -1028477379 @@ -5927,62 +5908,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $1 i32.const 15 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $1 i32.const 13 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $1 i32.const 16 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $1 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $4 + local.get $1 if - local.get $4 + local.get $1 i32.load offset=8 - local.tee $3 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $1 i32.load8_u - local.get $2 + local.get $3 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $3 + local.get $6 i32.const -2 i32.and - local.set $4 + local.set $1 br $while-continue|05 end end i32.const 0 - local.set $4 + local.set $1 end - local.get $4 + local.get $1 i32.eqz if i32.const 0 @@ -5992,10 +5973,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 + local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $2 + local.get $3 i32.const 255 i32.and i32.const 10 @@ -6009,20 +5990,20 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 - local.get $2 + local.get $4 + local.get $3 + local.get $3 i32.const 255 i32.and - local.tee $4 + local.tee $1 i32.const 20 i32.add call $~lib/map/Map#set - local.get $5 + local.get $4 i32.load - local.get $5 - i32.load offset=4 local.get $4 + i32.load offset=4 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761394 @@ -6031,62 +6012,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $1 i32.const 15 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $1 i32.const 13 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $1 i32.const 16 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $1 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $4 + local.get $1 if - local.get $4 + local.get $1 i32.load offset=8 - local.tee $3 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $1 i32.load8_u - local.get $2 + local.get $3 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $3 + local.get $6 i32.const -2 i32.and - local.set $4 + local.set $1 br $while-continue|08 end end i32.const 0 - local.set $4 + local.set $1 end - local.get $4 + local.get $1 i32.eqz if i32.const 0 @@ -6096,10 +6077,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 + local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $2 + local.get $3 i32.const 255 i32.and i32.const 20 @@ -6113,14 +6094,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 1 i32.add - local.set $2 + local.set $3 br $for-loop|3 end end - local.get $5 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -6133,8 +6114,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -6146,14 +6127,15 @@ local.tee $3 i32.const 0 i32.store - local.get $5 + local.get $4 i32.load offset=8 local.set $11 - local.get $5 + local.get $4 i32.load offset=16 local.tee $12 - local.set $4 + local.set $6 local.get $3 + local.tee $1 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -6162,31 +6144,28 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 i32.const 16 i32.const 9 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 i32.const 0 i32.store - local.get $2 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $2 + local.get $3 i32.const 0 i32.store offset=4 - local.get $2 + local.get $3 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 i32.const 0 i32.store offset=12 - local.get $4 + local.get $6 i32.const 1073741820 i32.gt_u if @@ -6198,41 +6177,44 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.const 8 - local.get $4 + local.get $6 i32.const 8 i32.gt_u select local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $5 i32.store offset=4 - local.get $0 + local.get $5 local.get $8 call $~lib/memory/memory.fill - local.get $2 - local.get $0 + local.get $3 + local.get $5 i32.store - local.get $2 - local.get $0 - call $~lib/rt/itcms/__link - local.get $2 - local.get $0 + local.get $5 + if + local.get $3 + local.get $5 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $3 + local.get $5 i32.store offset=4 - local.get $2 + local.get $3 local.get $8 i32.store offset=8 - local.get $2 - local.get $4 + local.get $3 + local.get $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $1 local.get $3 - local.get $2 i32.store loop $for-loop|0 local.get $7 @@ -6244,21 +6226,21 @@ i32.mul local.get $11 i32.add - local.tee $4 + local.tee $1 i32.load offset=8 i32.const 1 i32.and i32.eqz if + local.get $3 local.get $2 local.get $1 - local.get $4 i32.load8_u call $~lib/array/Array#__set - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 end local.get $7 i32.const 1 @@ -6267,23 +6249,23 @@ br $for-loop|0 end end + local.get $3 local.get $2 - local.get $1 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity + local.get $3 local.get $2 - local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 - local.tee $1 + local.get $3 + local.tee $5 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 call $~lib/map/Map#values local.tee $13 i32.store offset=8 @@ -6297,63 +6279,70 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i32.const 0 i32.store - local.get $4 + local.get $3 i32.const 24 i32.const 10 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $3 i32.store - local.get $4 + local.get $3 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $1 i32.store - local.get $4 - local.get $0 - call $~lib/rt/itcms/__link - local.get $4 + local.get $1 + if + local.get $3 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $3 i32.const 3 i32.store offset=4 - local.get $4 + local.get $3 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $1 i32.store offset=8 - local.get $4 - local.get $0 - call $~lib/rt/itcms/__link - local.get $4 + local.get $1 + if + local.get $3 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $3 i32.const 4 i32.store offset=12 - local.get $4 + local.get $3 i32.const 0 i32.store offset=16 - local.get $4 + local.get $3 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor local.tee $11 i32.store offset=16 loop $for-loop|4 - local.get $1 + local.get $5 i32.load offset=12 - local.get $6 + local.get $0 i32.gt_s if - local.get $1 + local.get $0 + local.tee $6 + local.get $5 i32.load offset=12 - local.get $6 - i32.le_u + i32.ge_u if i32.const 1248 i32.const 1728 @@ -6363,20 +6352,20 @@ unreachable end local.get $6 - local.get $1 + local.get $5 i32.load offset=4 i32.add i32.load8_u - local.set $2 + local.set $0 local.get $13 local.get $6 call $~lib/array/Array#__get local.set $12 - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $0 i32.const -1028477379 i32.mul i32.const 374761394 @@ -6385,62 +6374,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/map/Map#find10 loop $while-continue|011 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $3 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load8_u - local.get $2 + local.get $0 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $3 + local.get $7 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|011 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -6450,14 +6439,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 local.get $12 i32.const 20 i32.sub - local.tee $3 + local.tee $7 i32.const 255 i32.and i32.const -1028477379 @@ -6468,36 +6457,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/map/Map#find13 loop $while-continue|014 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=8 local.tee $8 i32.const 1 @@ -6505,9 +6494,9 @@ if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load8_u - local.get $3 + local.get $7 i32.const 255 i32.and i32.eq @@ -6516,14 +6505,14 @@ local.get $8 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|014 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -6544,10 +6533,10 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $4 + local.get $3 i32.load - local.get $2 - local.tee $0 + local.get $0 + local.tee $7 i32.const -1028477379 i32.mul i32.const 374761394 @@ -6556,79 +6545,79 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $7 + local.tee $0 i32.const 15 i32.shr_u - local.get $7 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $7 + local.tee $0 i32.const 13 i32.shr_u - local.get $7 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $7 + local.tee $0 i32.const 16 i32.shr_u - local.get $7 + local.get $0 i32.xor local.tee $14 - local.get $4 + local.get $3 i32.load offset=4 i32.and i32.const 2 i32.shl i32.add i32.load - local.set $7 + local.set $0 block $__inlined_func$~lib/map/Map#find loop $while-continue|015 - local.get $7 + local.get $0 if - local.get $7 + local.get $0 i32.load offset=4 - local.tee $8 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $7 - i32.load8_u local.get $0 + i32.load8_u + local.get $7 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $8 + local.get $2 i32.const -2 i32.and - local.set $7 + local.set $0 br $while-continue|015 end end i32.const 0 - local.set $7 + local.set $0 end - local.get $7 + local.get $0 if + local.get $0 local.get $7 - local.get $2 i32.store8 offset=1 else - local.get $4 + local.get $3 i32.load offset=16 - local.get $4 + local.get $3 i32.load offset=12 i32.eq if - local.get $4 + local.get $3 i32.load offset=20 - local.get $4 + local.get $3 i32.load offset=12 i32.const 3 i32.mul @@ -6636,17 +6625,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $4 + local.get $3 i32.load offset=4 else - local.get $4 + local.get $3 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $7 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -6660,7 +6649,7 @@ i64.const 0 i64.store local.get $0 - local.get $7 + local.get $2 i32.const 1 i32.add local.tee $0 @@ -6679,18 +6668,18 @@ i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $1 i32.store offset=4 - local.get $4 + local.get $3 i32.load offset=8 local.tee $8 - local.get $4 + local.get $3 i32.load offset=16 i32.const 3 i32.shl i32.add local.set $16 - local.get $3 + local.get $1 local.set $0 loop $while-continue|016 local.get $8 @@ -6741,7 +6730,7 @@ i32.shr_u local.get $9 i32.xor - local.get $7 + local.get $2 i32.and i32.const 2 i32.shl @@ -6765,26 +6754,32 @@ br $while-continue|016 end end - local.get $4 + local.get $3 local.get $10 i32.store - local.get $4 local.get $10 - call $~lib/rt/itcms/__link - local.get $4 - local.get $7 + if + local.get $3 + local.get $10 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $3 + local.get $2 i32.store offset=4 - local.get $4 local.get $3 + local.get $1 i32.store offset=8 - local.get $4 + local.get $1 + if + local.get $3 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $3 - call $~lib/rt/itcms/__link - local.get $4 local.get $15 i32.store offset=12 - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -6793,48 +6788,48 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.load offset=8 local.tee $0 i32.store - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=16 - local.tee $7 + local.tee $1 i32.const 1 i32.add i32.store offset=16 - local.get $7 + local.get $1 i32.const 3 i32.shl local.get $0 i32.add local.tee $0 - local.get $2 + local.get $7 i32.store8 local.get $0 - local.get $2 + local.get $7 i32.store8 offset=1 - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $4 + local.get $3 i32.load - local.get $4 + local.get $3 i32.load offset=4 local.get $14 i32.and i32.const 2 i32.shl i32.add - local.tee $2 + local.tee $1 i32.load i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store end @@ -6846,17 +6841,17 @@ local.get $12 i32.const 20 i32.sub - local.tee $2 - local.get $2 + local.tee $0 + local.get $0 call $~lib/map/Map#set local.get $6 i32.const 1 i32.add - local.set $6 + local.set $0 br $for-loop|4 end end - local.get $4 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -6881,19 +6876,19 @@ unreachable end i32.const 0 - local.set $6 + local.set $0 loop $for-loop|6 - local.get $6 + local.get $0 i32.const 255 i32.and i32.const 50 i32.lt_u if - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $6 + local.get $0 i32.const 255 i32.and i32.const -1028477379 @@ -6904,62 +6899,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find18 loop $while-continue|019 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 - local.tee $0 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u - local.get $6 + local.get $0 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find18 - local.get $0 + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|019 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -6969,10 +6964,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $6 + local.get $4 + local.get $0 call $~lib/map/Map#get - local.get $6 + local.get $0 i32.const 255 i32.and i32.const 20 @@ -6986,14 +6981,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $6 + local.get $4 + local.get $0 call $~lib/map/Map#delete - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $6 + local.get $0 i32.const 255 i32.and i32.const -1028477379 @@ -7004,62 +6999,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find21 loop $while-continue|022 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 - local.tee $0 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u - local.get $6 + local.get $0 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find21 - local.get $0 + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|022 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -7068,14 +7063,14 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $0 i32.const 1 i32.add - local.set $6 + local.set $0 br $for-loop|6 end end - local.get $5 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -7088,19 +7083,19 @@ unreachable end i32.const 0 - local.set $6 + local.set $0 loop $for-loop|8 - local.get $6 + local.get $0 i32.const 255 i32.and i32.const 50 i32.lt_u if - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $6 + local.get $0 i32.const 255 i32.and i32.const -1028477379 @@ -7111,62 +7106,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find24 loop $while-continue|025 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 - local.tee $0 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u - local.get $6 + local.get $0 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find24 - local.get $0 + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|025 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -7175,20 +7170,20 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $6 - local.get $6 + local.get $4 + local.get $0 + local.get $0 i32.const 255 i32.and - local.tee $2 + local.tee $3 i32.const 10 i32.add call $~lib/map/Map#set - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761394 @@ -7197,62 +7192,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find27 loop $while-continue|028 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 - local.tee $0 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u - local.get $6 + local.get $0 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find27 - local.get $0 + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|028 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -7262,14 +7257,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $6 + local.get $4 + local.get $0 call $~lib/map/Map#delete - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $6 + local.get $0 i32.const 255 i32.and i32.const -1028477379 @@ -7280,62 +7275,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find30 loop $while-continue|031 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 - local.tee $0 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u - local.get $6 + local.get $0 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find30 - local.get $0 + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|031 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -7344,14 +7339,14 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $0 i32.const 1 i32.add - local.set $6 + local.set $0 br $for-loop|8 end end - local.get $5 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -7363,9 +7358,9 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $4 call $~lib/map/Map#clear - local.get $5 + local.get $4 i32.load offset=20 if i32.const 0 @@ -7412,26 +7407,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -7439,37 +7434,37 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $7 + local.tee $5 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $4 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $5 + local.get $8 i32.ne if - local.get $7 + local.get $5 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $7 + local.get $5 i32.load16_s - local.tee $8 + local.tee $4 i32.store16 local.get $2 - local.get $7 + local.get $5 i32.load offset=4 i32.store offset=4 local.get $2 - local.get $8 + local.get $4 i32.extend16_s i32.const -1028477379 i32.mul @@ -7479,22 +7474,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u i32.xor @@ -7504,10 +7499,10 @@ i32.shl local.get $6 i32.add - local.tee $8 + local.tee $4 i32.load i32.store offset=8 - local.get $8 + local.get $4 local.get $2 i32.store local.get $2 @@ -7515,30 +7510,36 @@ i32.add local.set $2 end - local.get $7 + local.get $5 i32.const 12 i32.add - local.set $7 + local.set $5 br $while-continue|0 end end local.get $0 local.get $6 i32.store - local.get $0 local.get $6 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $6 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $1 i32.store offset=4 local.get $0 local.get $3 i32.store offset=8 - local.get $0 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -7835,6 +7836,7 @@ i32.const 0 i32.store offset=16 local.get $4 + local.tee $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -7843,61 +7845,67 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $4 i32.const 0 i32.store - local.get $5 + local.get $4 i32.const 24 i32.const 11 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $4 i32.store - local.get $5 + local.get $4 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $5 i32.store local.get $5 - local.get $0 - call $~lib/rt/itcms/__link - local.get $5 + if + local.get $4 + local.get $5 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $4 i32.const 3 i32.store offset=4 - local.get $5 + local.get $4 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $5 i32.store offset=8 local.get $5 - local.get $0 - call $~lib/rt/itcms/__link - local.get $5 + if + local.get $4 + local.get $5 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $4 i32.const 4 i32.store offset=12 - local.get $5 + local.get $4 i32.const 0 i32.store offset=16 - local.get $5 + local.get $4 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $1 local.get $4 - local.get $5 i32.store loop $for-loop|1 - local.get $2 + local.get $3 i32.extend16_s i32.const 100 i32.lt_s if - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.extend16_s i32.const -1028477379 i32.mul @@ -7907,62 +7915,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $1 i32.const 15 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $1 i32.const 13 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $1 i32.const 16 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $1 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $4 + local.get $1 if - local.get $4 + local.get $1 i32.load offset=8 - local.tee $3 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $1 i32.load16_u - local.get $2 + local.get $3 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $3 + local.get $6 i32.const -2 i32.and - local.set $4 + local.set $1 br $while-continue|0 end end i32.const 0 - local.set $4 + local.set $1 end - local.get $4 + local.get $1 if i32.const 0 i32.const 1568 @@ -7971,19 +7979,19 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 - local.get $2 + local.get $4 + local.get $3 + local.get $3 i32.extend16_s - local.tee $4 + local.tee $1 i32.const 10 i32.add call $~lib/map/Map#set - local.get $5 + local.get $4 i32.load - local.get $5 - i32.load offset=4 local.get $4 + i32.load offset=4 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761395 @@ -7992,62 +8000,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $1 i32.const 15 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $1 i32.const 13 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $1 i32.const 16 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $1 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $4 + local.get $1 if - local.get $4 + local.get $1 i32.load offset=8 - local.tee $3 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $1 i32.load16_u - local.get $2 + local.get $3 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $3 + local.get $6 i32.const -2 i32.and - local.set $4 + local.set $1 br $while-continue|02 end end i32.const 0 - local.set $4 + local.set $1 end - local.get $4 + local.get $1 i32.eqz if i32.const 0 @@ -8057,10 +8065,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 + local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $2 + local.get $3 i32.extend16_s i32.const 10 i32.add @@ -8073,14 +8081,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 1 i32.add - local.set $2 + local.set $3 br $for-loop|1 end end - local.get $5 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -8093,18 +8101,18 @@ unreachable end i32.const 0 - local.set $2 + local.set $3 loop $for-loop|3 - local.get $2 + local.get $3 i32.extend16_s i32.const 100 i32.lt_s if - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.extend16_s i32.const -1028477379 i32.mul @@ -8114,62 +8122,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $1 i32.const 15 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $1 i32.const 13 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $1 i32.const 16 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $1 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $4 + local.get $1 if - local.get $4 + local.get $1 i32.load offset=8 - local.tee $3 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $1 i32.load16_u - local.get $2 + local.get $3 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $3 + local.get $6 i32.const -2 i32.and - local.set $4 + local.set $1 br $while-continue|05 end end i32.const 0 - local.set $4 + local.set $1 end - local.get $4 + local.get $1 i32.eqz if i32.const 0 @@ -8179,10 +8187,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 + local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $2 + local.get $3 i32.extend16_s i32.const 10 i32.add @@ -8195,19 +8203,19 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 - local.get $2 + local.get $4 + local.get $3 + local.get $3 i32.extend16_s - local.tee $4 + local.tee $1 i32.const 20 i32.add call $~lib/map/Map#set - local.get $5 + local.get $4 i32.load - local.get $5 - i32.load offset=4 local.get $4 + i32.load offset=4 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761395 @@ -8216,62 +8224,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $1 i32.const 15 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $1 i32.const 13 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $1 i32.const 16 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $1 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $4 + local.get $1 if - local.get $4 + local.get $1 i32.load offset=8 - local.tee $3 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $1 i32.load16_u - local.get $2 + local.get $3 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $3 + local.get $6 i32.const -2 i32.and - local.set $4 + local.set $1 br $while-continue|08 end end i32.const 0 - local.set $4 + local.set $1 end - local.get $4 + local.get $1 i32.eqz if i32.const 0 @@ -8281,10 +8289,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 + local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $2 + local.get $3 i32.extend16_s i32.const 20 i32.add @@ -8297,14 +8305,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 1 i32.add - local.set $2 + local.set $3 br $for-loop|3 end end - local.get $5 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -8317,8 +8325,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -8330,14 +8338,15 @@ local.tee $3 i32.const 0 i32.store - local.get $5 + local.get $4 i32.load offset=8 local.set $11 - local.get $5 + local.get $4 i32.load offset=16 local.tee $12 - local.set $4 + local.set $6 local.get $3 + local.tee $1 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -8346,31 +8355,28 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 i32.const 16 i32.const 12 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 i32.const 0 i32.store - local.get $2 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $2 + local.get $3 i32.const 0 i32.store offset=4 - local.get $2 + local.get $3 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 i32.const 0 i32.store offset=12 - local.get $4 + local.get $6 i32.const 536870910 i32.gt_u if @@ -8382,9 +8388,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.const 8 - local.get $4 + local.get $6 i32.const 8 i32.gt_u select @@ -8393,32 +8399,35 @@ local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $5 i32.store offset=4 - local.get $0 + local.get $5 local.get $8 call $~lib/memory/memory.fill - local.get $2 - local.get $0 + local.get $3 + local.get $5 i32.store - local.get $2 - local.get $0 - call $~lib/rt/itcms/__link - local.get $2 - local.get $0 + local.get $5 + if + local.get $3 + local.get $5 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $3 + local.get $5 i32.store offset=4 - local.get $2 + local.get $3 local.get $8 i32.store offset=8 - local.get $2 - local.get $4 + local.get $3 + local.get $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $1 local.get $3 - local.get $2 i32.store loop $for-loop|0 local.get $7 @@ -8430,21 +8439,21 @@ i32.mul local.get $11 i32.add - local.tee $4 + local.tee $1 i32.load offset=8 i32.const 1 i32.and i32.eqz if + local.get $3 local.get $2 local.get $1 - local.get $4 i32.load16_s call $~lib/array/Array#__set - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 end local.get $7 i32.const 1 @@ -8453,23 +8462,23 @@ br $for-loop|0 end end + local.get $3 local.get $2 - local.get $1 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity + local.get $3 local.get $2 - local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 - local.tee $1 + local.get $3 + local.tee $5 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 call $~lib/map/Map#values local.tee $13 i32.store offset=8 @@ -8483,63 +8492,70 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i32.const 0 i32.store - local.get $4 + local.get $3 i32.const 24 i32.const 13 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $3 i32.store - local.get $4 + local.get $3 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $1 i32.store - local.get $4 - local.get $0 - call $~lib/rt/itcms/__link - local.get $4 + local.get $1 + if + local.get $3 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $3 i32.const 3 i32.store offset=4 - local.get $4 + local.get $3 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $1 i32.store offset=8 - local.get $4 - local.get $0 - call $~lib/rt/itcms/__link - local.get $4 + local.get $1 + if + local.get $3 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $3 i32.const 4 i32.store offset=12 - local.get $4 + local.get $3 i32.const 0 i32.store offset=16 - local.get $4 + local.get $3 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor local.tee $11 i32.store offset=16 loop $for-loop|4 - local.get $1 + local.get $5 i32.load offset=12 - local.get $6 + local.get $0 i32.gt_s if - local.get $1 + local.get $0 + local.tee $6 + local.get $5 i32.load offset=12 - local.get $6 - i32.le_u + i32.ge_u if i32.const 1248 i32.const 1728 @@ -8548,23 +8564,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $5 i32.load offset=4 local.get $6 i32.const 1 i32.shl i32.add i32.load16_s - local.set $2 + local.set $0 local.get $13 local.get $6 call $~lib/array/Array#__get local.set $12 - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $0 i32.extend16_s i32.const -1028477379 i32.mul @@ -8574,62 +8590,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/map/Map#find10 loop $while-continue|011 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $3 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load16_u - local.get $2 + local.get $0 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $3 + local.get $7 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|011 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -8639,14 +8655,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 local.get $12 i32.const 20 i32.sub - local.tee $3 + local.tee $7 i32.extend16_s i32.const -1028477379 i32.mul @@ -8656,36 +8672,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/map/Map#find13 loop $while-continue|014 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=8 local.tee $8 i32.const 1 @@ -8693,9 +8709,9 @@ if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load16_u - local.get $3 + local.get $7 i32.const 65535 i32.and i32.eq @@ -8704,14 +8720,14 @@ local.get $8 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|014 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -8732,10 +8748,10 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $4 + local.get $3 i32.load - local.get $2 - local.tee $0 + local.get $0 + local.tee $7 i32.extend16_s i32.const -1028477379 i32.mul @@ -8745,79 +8761,79 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $7 + local.tee $0 i32.const 15 i32.shr_u - local.get $7 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $7 + local.tee $0 i32.const 13 i32.shr_u - local.get $7 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $7 + local.tee $0 i32.const 16 i32.shr_u - local.get $7 + local.get $0 i32.xor local.tee $14 - local.get $4 + local.get $3 i32.load offset=4 i32.and i32.const 2 i32.shl i32.add i32.load - local.set $7 + local.set $0 block $__inlined_func$~lib/map/Map#find loop $while-continue|015 - local.get $7 + local.get $0 if - local.get $7 + local.get $0 i32.load offset=4 - local.tee $8 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $7 - i32.load16_u local.get $0 + i32.load16_u + local.get $7 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $8 + local.get $2 i32.const -2 i32.and - local.set $7 + local.set $0 br $while-continue|015 end end i32.const 0 - local.set $7 + local.set $0 end - local.get $7 + local.get $0 if + local.get $0 local.get $7 - local.get $2 i32.store16 offset=2 else - local.get $4 + local.get $3 i32.load offset=16 - local.get $4 + local.get $3 i32.load offset=12 i32.eq if - local.get $4 + local.get $3 i32.load offset=20 - local.get $4 + local.get $3 i32.load offset=12 i32.const 3 i32.mul @@ -8825,17 +8841,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $4 + local.get $3 i32.load offset=4 else - local.get $4 + local.get $3 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $7 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -8849,7 +8865,7 @@ i64.const 0 i64.store local.get $0 - local.get $7 + local.get $2 i32.const 1 i32.add local.tee $0 @@ -8868,18 +8884,18 @@ i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $1 i32.store offset=4 - local.get $4 + local.get $3 i32.load offset=8 local.tee $8 - local.get $4 + local.get $3 i32.load offset=16 i32.const 3 i32.shl i32.add local.set $16 - local.get $3 + local.get $1 local.set $0 loop $while-continue|016 local.get $8 @@ -8931,7 +8947,7 @@ i32.shr_u local.get $9 i32.xor - local.get $7 + local.get $2 i32.and i32.const 2 i32.shl @@ -8955,26 +8971,32 @@ br $while-continue|016 end end - local.get $4 + local.get $3 local.get $10 i32.store - local.get $4 local.get $10 - call $~lib/rt/itcms/__link - local.get $4 - local.get $7 + if + local.get $3 + local.get $10 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $3 + local.get $2 i32.store offset=4 - local.get $4 local.get $3 + local.get $1 i32.store offset=8 - local.get $4 + local.get $1 + if + local.get $3 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $3 - call $~lib/rt/itcms/__link - local.get $4 local.get $15 i32.store offset=12 - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -8983,48 +9005,48 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.load offset=8 local.tee $0 i32.store - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=16 - local.tee $7 + local.tee $1 i32.const 1 i32.add i32.store offset=16 - local.get $7 + local.get $1 i32.const 3 i32.shl local.get $0 i32.add local.tee $0 - local.get $2 + local.get $7 i32.store16 local.get $0 - local.get $2 + local.get $7 i32.store16 offset=2 - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $4 + local.get $3 i32.load - local.get $4 + local.get $3 i32.load offset=4 local.get $14 i32.and i32.const 2 i32.shl i32.add - local.tee $2 + local.tee $1 i32.load i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store end @@ -9036,17 +9058,17 @@ local.get $12 i32.const 20 i32.sub - local.tee $2 - local.get $2 + local.tee $0 + local.get $0 call $~lib/map/Map#set local.get $6 i32.const 1 i32.add - local.set $6 + local.set $0 br $for-loop|4 end end - local.get $4 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -9071,18 +9093,18 @@ unreachable end i32.const 0 - local.set $6 + local.set $0 loop $for-loop|6 - local.get $6 + local.get $0 i32.extend16_s i32.const 50 i32.lt_s if - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $6 + local.get $0 i32.extend16_s i32.const -1028477379 i32.mul @@ -9092,62 +9114,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find18 loop $while-continue|019 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 - local.tee $0 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u - local.get $6 + local.get $0 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find18 - local.get $0 + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|019 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -9157,10 +9179,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $6 + local.get $4 + local.get $0 call $~lib/map/Map#get - local.get $6 + local.get $0 i32.extend16_s i32.const 20 i32.add @@ -9173,14 +9195,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $6 + local.get $4 + local.get $0 call $~lib/map/Map#delete - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $6 + local.get $0 i32.extend16_s i32.const -1028477379 i32.mul @@ -9190,62 +9212,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find21 loop $while-continue|022 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 - local.tee $0 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u - local.get $6 + local.get $0 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find21 - local.get $0 + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|022 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -9254,14 +9276,14 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $0 i32.const 1 i32.add - local.set $6 + local.set $0 br $for-loop|6 end end - local.get $5 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -9274,18 +9296,18 @@ unreachable end i32.const 0 - local.set $6 + local.set $0 loop $for-loop|8 - local.get $6 + local.get $0 i32.extend16_s i32.const 50 i32.lt_s if - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $6 + local.get $0 i32.extend16_s i32.const -1028477379 i32.mul @@ -9295,62 +9317,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find24 loop $while-continue|025 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 - local.tee $0 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u - local.get $6 + local.get $0 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find24 - local.get $0 + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|025 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -9359,19 +9381,19 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $6 - local.get $6 + local.get $4 + local.get $0 + local.get $0 i32.extend16_s - local.tee $2 + local.tee $3 i32.const 10 i32.add call $~lib/map/Map#set - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761395 @@ -9380,62 +9402,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find27 loop $while-continue|028 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 - local.tee $0 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u - local.get $6 + local.get $0 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find27 - local.get $0 + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|028 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -9445,14 +9467,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $6 + local.get $4 + local.get $0 call $~lib/map/Map#delete - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $6 + local.get $0 i32.extend16_s i32.const -1028477379 i32.mul @@ -9462,62 +9484,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find30 loop $while-continue|031 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 - local.tee $0 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u - local.get $6 + local.get $0 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find30 - local.get $0 + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|031 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -9526,14 +9548,14 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $0 i32.const 1 i32.add - local.set $6 + local.set $0 br $for-loop|8 end end - local.get $5 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -9545,9 +9567,9 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $4 call $~lib/map/Map#clear - local.get $5 + local.get $4 i32.load offset=20 if i32.const 0 @@ -9594,26 +9616,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -9621,37 +9643,37 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $7 + local.tee $5 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $4 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $5 + local.get $8 i32.ne if - local.get $7 + local.get $5 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $7 + local.get $5 i32.load16_u - local.tee $8 + local.tee $4 i32.store16 local.get $2 - local.get $7 + local.get $5 i32.load offset=4 i32.store offset=4 local.get $2 - local.get $8 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761395 @@ -9660,22 +9682,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u i32.xor @@ -9685,10 +9707,10 @@ i32.shl local.get $6 i32.add - local.tee $8 + local.tee $4 i32.load i32.store offset=8 - local.get $8 + local.get $4 local.get $2 i32.store local.get $2 @@ -9696,30 +9718,36 @@ i32.add local.set $2 end - local.get $7 + local.get $5 i32.const 12 i32.add - local.set $7 + local.set $5 br $while-continue|0 end end local.get $0 local.get $6 i32.store - local.get $0 local.get $6 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $6 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $1 i32.store offset=4 local.get $0 local.get $3 i32.store offset=8 - local.get $0 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -9979,6 +10007,7 @@ i32.const 0 i32.store offset=16 local.get $4 + local.tee $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -9987,62 +10016,68 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $4 i32.const 0 i32.store - local.get $5 + local.get $4 i32.const 24 i32.const 14 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $4 i32.store - local.get $5 + local.get $4 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $5 i32.store local.get $5 - local.get $0 - call $~lib/rt/itcms/__link - local.get $5 + if + local.get $4 + local.get $5 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $4 i32.const 3 i32.store offset=4 - local.get $5 + local.get $4 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $5 i32.store offset=8 local.get $5 - local.get $0 - call $~lib/rt/itcms/__link - local.get $5 + if + local.get $4 + local.get $5 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $4 i32.const 4 i32.store offset=12 - local.get $5 + local.get $4 i32.const 0 i32.store offset=16 - local.get $5 + local.get $4 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $1 local.get $4 - local.get $5 i32.store loop $for-loop|1 - local.get $2 + local.get $3 i32.const 65535 i32.and i32.const 100 i32.lt_u if - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.const 65535 i32.and i32.const -1028477379 @@ -10053,62 +10088,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $1 i32.const 15 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $1 i32.const 13 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $1 i32.const 16 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $1 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $4 + local.get $1 if - local.get $4 + local.get $1 i32.load offset=8 - local.tee $3 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $1 i32.load16_u - local.get $2 + local.get $3 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $3 + local.get $6 i32.const -2 i32.and - local.set $4 + local.set $1 br $while-continue|0 end end i32.const 0 - local.set $4 + local.set $1 end - local.get $4 + local.get $1 if i32.const 0 i32.const 1568 @@ -10117,20 +10152,20 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 - local.get $2 + local.get $4 + local.get $3 + local.get $3 i32.const 65535 i32.and - local.tee $4 + local.tee $1 i32.const 10 i32.add call $~lib/map/Map#set - local.get $5 + local.get $4 i32.load - local.get $5 - i32.load offset=4 local.get $4 + i32.load offset=4 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761395 @@ -10139,62 +10174,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $1 i32.const 15 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $1 i32.const 13 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $1 i32.const 16 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $1 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $4 + local.get $1 if - local.get $4 + local.get $1 i32.load offset=8 - local.tee $3 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $1 i32.load16_u - local.get $2 + local.get $3 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $3 + local.get $6 i32.const -2 i32.and - local.set $4 + local.set $1 br $while-continue|02 end end i32.const 0 - local.set $4 + local.set $1 end - local.get $4 + local.get $1 i32.eqz if i32.const 0 @@ -10204,10 +10239,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 + local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $2 + local.get $3 i32.const 65535 i32.and i32.const 10 @@ -10221,14 +10256,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 1 i32.add - local.set $2 + local.set $3 br $for-loop|1 end end - local.get $5 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -10241,19 +10276,19 @@ unreachable end i32.const 0 - local.set $2 + local.set $3 loop $for-loop|3 - local.get $2 + local.get $3 i32.const 65535 i32.and i32.const 100 i32.lt_u if - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.const 65535 i32.and i32.const -1028477379 @@ -10264,62 +10299,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $1 i32.const 15 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $1 i32.const 13 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $1 i32.const 16 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $1 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $4 + local.get $1 if - local.get $4 + local.get $1 i32.load offset=8 - local.tee $3 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $1 i32.load16_u - local.get $2 + local.get $3 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $3 + local.get $6 i32.const -2 i32.and - local.set $4 + local.set $1 br $while-continue|05 end end i32.const 0 - local.set $4 + local.set $1 end - local.get $4 + local.get $1 i32.eqz if i32.const 0 @@ -10329,10 +10364,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 + local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $2 + local.get $3 i32.const 65535 i32.and i32.const 10 @@ -10346,20 +10381,20 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 - local.get $2 + local.get $4 + local.get $3 + local.get $3 i32.const 65535 i32.and - local.tee $4 + local.tee $1 i32.const 20 i32.add call $~lib/map/Map#set - local.get $5 + local.get $4 i32.load - local.get $5 - i32.load offset=4 local.get $4 + i32.load offset=4 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761395 @@ -10368,62 +10403,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $1 i32.const 15 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $1 i32.const 13 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $1 i32.const 16 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $1 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $4 + local.get $1 if - local.get $4 + local.get $1 i32.load offset=8 - local.tee $3 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $1 i32.load16_u - local.get $2 + local.get $3 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $3 + local.get $6 i32.const -2 i32.and - local.set $4 + local.set $1 br $while-continue|08 end end i32.const 0 - local.set $4 + local.set $1 end - local.get $4 + local.get $1 i32.eqz if i32.const 0 @@ -10433,10 +10468,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 + local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $2 + local.get $3 i32.const 65535 i32.and i32.const 20 @@ -10450,14 +10485,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 1 i32.add - local.set $2 + local.set $3 br $for-loop|3 end end - local.get $5 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -10470,8 +10505,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -10483,14 +10518,15 @@ local.tee $3 i32.const 0 i32.store - local.get $5 + local.get $4 i32.load offset=8 local.set $11 - local.get $5 + local.get $4 i32.load offset=16 local.tee $12 - local.set $4 + local.set $6 local.get $3 + local.tee $1 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -10499,31 +10535,28 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 i32.const 16 i32.const 15 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 i32.const 0 i32.store - local.get $2 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $2 + local.get $3 i32.const 0 i32.store offset=4 - local.get $2 + local.get $3 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 i32.const 0 i32.store offset=12 - local.get $4 + local.get $6 i32.const 536870910 i32.gt_u if @@ -10535,9 +10568,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.const 8 - local.get $4 + local.get $6 i32.const 8 i32.gt_u select @@ -10546,32 +10579,35 @@ local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $5 i32.store offset=4 - local.get $0 + local.get $5 local.get $8 call $~lib/memory/memory.fill - local.get $2 - local.get $0 + local.get $3 + local.get $5 i32.store - local.get $2 - local.get $0 - call $~lib/rt/itcms/__link - local.get $2 - local.get $0 + local.get $5 + if + local.get $3 + local.get $5 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $3 + local.get $5 i32.store offset=4 - local.get $2 + local.get $3 local.get $8 i32.store offset=8 - local.get $2 - local.get $4 + local.get $3 + local.get $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $1 local.get $3 - local.get $2 i32.store loop $for-loop|0 local.get $7 @@ -10583,21 +10619,21 @@ i32.mul local.get $11 i32.add - local.tee $4 + local.tee $1 i32.load offset=8 i32.const 1 i32.and i32.eqz if + local.get $3 local.get $2 local.get $1 - local.get $4 i32.load16_u call $~lib/array/Array#__set - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 end local.get $7 i32.const 1 @@ -10606,23 +10642,23 @@ br $for-loop|0 end end + local.get $3 local.get $2 - local.get $1 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity + local.get $3 local.get $2 - local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 - local.tee $1 + local.get $3 + local.tee $5 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 call $~lib/map/Map#values local.tee $13 i32.store offset=8 @@ -10636,63 +10672,70 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i32.const 0 i32.store - local.get $4 + local.get $3 i32.const 24 i32.const 16 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $3 i32.store - local.get $4 + local.get $3 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $1 i32.store - local.get $4 - local.get $0 - call $~lib/rt/itcms/__link - local.get $4 + local.get $1 + if + local.get $3 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $3 i32.const 3 i32.store offset=4 - local.get $4 + local.get $3 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $1 i32.store offset=8 - local.get $4 - local.get $0 - call $~lib/rt/itcms/__link - local.get $4 + local.get $1 + if + local.get $3 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $3 i32.const 4 i32.store offset=12 - local.get $4 + local.get $3 i32.const 0 i32.store offset=16 - local.get $4 + local.get $3 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor local.tee $11 i32.store offset=16 loop $for-loop|4 - local.get $1 + local.get $5 i32.load offset=12 - local.get $6 + local.get $0 i32.gt_s if - local.get $1 + local.get $0 + local.tee $6 + local.get $5 i32.load offset=12 - local.get $6 - i32.le_u + i32.ge_u if i32.const 1248 i32.const 1728 @@ -10701,23 +10744,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $5 i32.load offset=4 local.get $6 i32.const 1 i32.shl i32.add i32.load16_u - local.set $2 + local.set $0 local.get $13 local.get $6 call $~lib/array/Array#__get local.set $12 - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $0 i32.const -1028477379 i32.mul i32.const 374761395 @@ -10726,62 +10769,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/map/Map#find10 loop $while-continue|011 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $3 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load16_u - local.get $2 + local.get $0 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $3 + local.get $7 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|011 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -10791,14 +10834,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 local.get $12 i32.const 20 i32.sub - local.tee $3 + local.tee $7 i32.const 65535 i32.and i32.const -1028477379 @@ -10809,36 +10852,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/map/Map#find13 loop $while-continue|014 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=8 local.tee $8 i32.const 1 @@ -10846,9 +10889,9 @@ if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load16_u - local.get $3 + local.get $7 i32.const 65535 i32.and i32.eq @@ -10857,14 +10900,14 @@ local.get $8 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|014 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -10885,10 +10928,10 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $4 + local.get $3 i32.load - local.get $2 - local.tee $0 + local.get $0 + local.tee $7 i32.const -1028477379 i32.mul i32.const 374761395 @@ -10897,79 +10940,79 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $7 + local.tee $0 i32.const 15 i32.shr_u - local.get $7 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $7 + local.tee $0 i32.const 13 i32.shr_u - local.get $7 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $7 + local.tee $0 i32.const 16 i32.shr_u - local.get $7 + local.get $0 i32.xor local.tee $14 - local.get $4 + local.get $3 i32.load offset=4 i32.and i32.const 2 i32.shl i32.add i32.load - local.set $7 + local.set $0 block $__inlined_func$~lib/map/Map#find loop $while-continue|015 - local.get $7 + local.get $0 if - local.get $7 + local.get $0 i32.load offset=4 - local.tee $8 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $7 - i32.load16_u local.get $0 + i32.load16_u + local.get $7 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $8 + local.get $2 i32.const -2 i32.and - local.set $7 + local.set $0 br $while-continue|015 end end i32.const 0 - local.set $7 + local.set $0 end - local.get $7 + local.get $0 if + local.get $0 local.get $7 - local.get $2 i32.store16 offset=2 else - local.get $4 + local.get $3 i32.load offset=16 - local.get $4 + local.get $3 i32.load offset=12 i32.eq if - local.get $4 + local.get $3 i32.load offset=20 - local.get $4 + local.get $3 i32.load offset=12 i32.const 3 i32.mul @@ -10977,17 +11020,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $4 + local.get $3 i32.load offset=4 else - local.get $4 + local.get $3 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $7 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -11001,7 +11044,7 @@ i64.const 0 i64.store local.get $0 - local.get $7 + local.get $2 i32.const 1 i32.add local.tee $0 @@ -11020,18 +11063,18 @@ i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $1 i32.store offset=4 - local.get $4 + local.get $3 i32.load offset=8 local.tee $8 - local.get $4 + local.get $3 i32.load offset=16 i32.const 3 i32.shl i32.add local.set $16 - local.get $3 + local.get $1 local.set $0 loop $while-continue|016 local.get $8 @@ -11082,7 +11125,7 @@ i32.shr_u local.get $9 i32.xor - local.get $7 + local.get $2 i32.and i32.const 2 i32.shl @@ -11106,26 +11149,32 @@ br $while-continue|016 end end - local.get $4 + local.get $3 local.get $10 i32.store - local.get $4 local.get $10 - call $~lib/rt/itcms/__link - local.get $4 - local.get $7 + if + local.get $3 + local.get $10 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $3 + local.get $2 i32.store offset=4 - local.get $4 local.get $3 + local.get $1 i32.store offset=8 - local.get $4 + local.get $1 + if + local.get $3 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $3 - call $~lib/rt/itcms/__link - local.get $4 local.get $15 i32.store offset=12 - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -11134,48 +11183,48 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.load offset=8 local.tee $0 i32.store - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=16 - local.tee $7 + local.tee $1 i32.const 1 i32.add i32.store offset=16 - local.get $7 + local.get $1 i32.const 3 i32.shl local.get $0 i32.add local.tee $0 - local.get $2 + local.get $7 i32.store16 local.get $0 - local.get $2 + local.get $7 i32.store16 offset=2 - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $4 + local.get $3 i32.load - local.get $4 + local.get $3 i32.load offset=4 local.get $14 i32.and i32.const 2 i32.shl i32.add - local.tee $2 + local.tee $1 i32.load i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store end @@ -11187,17 +11236,17 @@ local.get $12 i32.const 20 i32.sub - local.tee $2 - local.get $2 + local.tee $0 + local.get $0 call $~lib/map/Map#set local.get $6 i32.const 1 i32.add - local.set $6 + local.set $0 br $for-loop|4 end end - local.get $4 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -11222,19 +11271,19 @@ unreachable end i32.const 0 - local.set $6 + local.set $0 loop $for-loop|6 - local.get $6 + local.get $0 i32.const 65535 i32.and i32.const 50 i32.lt_u if - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $6 + local.get $0 i32.const 65535 i32.and i32.const -1028477379 @@ -11245,62 +11294,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find18 loop $while-continue|019 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 - local.tee $0 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u - local.get $6 + local.get $0 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find18 - local.get $0 + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|019 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -11310,10 +11359,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $6 + local.get $4 + local.get $0 call $~lib/map/Map#get - local.get $6 + local.get $0 i32.const 65535 i32.and i32.const 20 @@ -11327,14 +11376,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $6 + local.get $4 + local.get $0 call $~lib/map/Map#delete - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $6 + local.get $0 i32.const 65535 i32.and i32.const -1028477379 @@ -11345,62 +11394,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find21 loop $while-continue|022 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 - local.tee $0 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u - local.get $6 + local.get $0 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find21 - local.get $0 + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|022 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -11409,14 +11458,14 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $0 i32.const 1 i32.add - local.set $6 + local.set $0 br $for-loop|6 end end - local.get $5 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -11429,19 +11478,19 @@ unreachable end i32.const 0 - local.set $6 + local.set $0 loop $for-loop|8 - local.get $6 + local.get $0 i32.const 65535 i32.and i32.const 50 i32.lt_u if - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $6 + local.get $0 i32.const 65535 i32.and i32.const -1028477379 @@ -11452,62 +11501,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find24 loop $while-continue|025 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 - local.tee $0 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u - local.get $6 + local.get $0 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find24 - local.get $0 + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|025 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -11516,20 +11565,20 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $6 - local.get $6 + local.get $4 + local.get $0 + local.get $0 i32.const 65535 i32.and - local.tee $2 + local.tee $3 i32.const 10 i32.add call $~lib/map/Map#set - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761395 @@ -11538,62 +11587,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find27 loop $while-continue|028 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 - local.tee $0 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u - local.get $6 + local.get $0 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find27 - local.get $0 + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|028 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -11603,14 +11652,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $6 + local.get $4 + local.get $0 call $~lib/map/Map#delete - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $6 + local.get $0 i32.const 65535 i32.and i32.const -1028477379 @@ -11621,62 +11670,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find30 loop $while-continue|031 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 - local.tee $0 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u - local.get $6 + local.get $0 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find30 - local.get $0 + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|031 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -11685,14 +11734,14 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $0 i32.const 1 i32.add - local.set $6 + local.set $0 br $for-loop|8 end end - local.get $5 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -11704,9 +11753,9 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $4 call $~lib/map/Map#clear - local.get $5 + local.get $4 i32.load offset=20 if i32.const 0 @@ -13179,26 +13228,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -13206,37 +13255,37 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $7 + local.tee $5 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $4 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $5 + local.get $8 i32.ne if - local.get $7 + local.get $5 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $7 + local.get $5 i32.load - local.tee $8 + local.tee $4 i32.store local.get $2 - local.get $7 + local.get $5 i32.load offset=4 i32.store offset=4 local.get $2 - local.get $8 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13245,22 +13294,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u i32.xor @@ -13270,10 +13319,10 @@ i32.shl local.get $6 i32.add - local.tee $8 + local.tee $4 i32.load i32.store offset=8 - local.get $8 + local.get $4 local.get $2 i32.store local.get $2 @@ -13281,30 +13330,36 @@ i32.add local.set $2 end - local.get $7 + local.get $5 i32.const 12 i32.add - local.set $7 + local.set $5 br $while-continue|0 end end local.get $0 local.get $6 i32.store - local.get $0 local.get $6 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $6 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $1 i32.store offset=4 local.get $0 local.get $3 i32.store offset=8 - local.get $0 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -13546,16 +13601,16 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $0 i64.const 0 i64.store - local.get $3 + local.get $0 i64.const 0 i64.store offset=8 - local.get $3 + local.get $0 i32.const 0 i32.store offset=16 - local.get $3 + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -13564,60 +13619,66 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $16 i32.const 0 i32.store - local.get $4 + local.get $16 i32.const 24 i32.const 17 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $16 i32.store - local.get $4 + local.get $16 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $3 i32.store - local.get $4 - local.get $1 - call $~lib/rt/itcms/__link - local.get $4 + local.get $3 + if + local.get $16 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $16 i32.const 3 i32.store offset=4 - local.get $4 + local.get $16 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $3 i32.store offset=8 - local.get $4 - local.get $1 - call $~lib/rt/itcms/__link - local.get $4 + local.get $3 + if + local.get $16 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $16 i32.const 4 i32.store offset=12 - local.get $4 + local.get $16 i32.const 0 i32.store offset=16 - local.get $4 + local.get $16 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 - local.get $4 + local.get $0 + local.get $16 i32.store loop $for-loop|0 - local.get $0 + local.get $4 i32.const 100 i32.lt_u if - local.get $4 + local.get $16 i32.load - local.get $4 + local.get $16 i32.load offset=4 - local.get $0 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13626,60 +13687,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $0 i32.const 15 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $0 i32.const 13 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $0 i32.const 16 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $0 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $3 + local.get $0 if - local.get $3 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $14 i32.const 1 i32.and if (result i32) i32.const 0 else + local.get $4 local.get $0 - local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $2 + local.get $14 i32.const -2 i32.and - local.set $3 + local.set $0 br $while-continue|0 end end i32.const 0 - local.set $3 + local.set $0 end - local.get $3 + local.get $0 if i32.const 0 i32.const 1568 @@ -13688,17 +13749,17 @@ call $~lib/builtins/abort unreachable end + local.get $16 + local.get $4 local.get $4 - local.get $0 - local.get $0 i32.const 10 i32.add call $~lib/map/Map#set - local.get $4 + local.get $16 i32.load - local.get $4 + local.get $16 i32.load offset=4 - local.get $0 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13707,60 +13768,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $0 i32.const 15 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $0 i32.const 13 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $0 i32.const 16 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $0 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $3 + local.get $0 if - local.get $3 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $14 i32.const 1 i32.and if (result i32) i32.const 0 else + local.get $4 local.get $0 - local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $2 + local.get $14 i32.const -2 i32.and - local.set $3 + local.set $0 br $while-continue|02 end end i32.const 0 - local.set $3 + local.set $0 end - local.get $3 + local.get $0 i32.eqz if i32.const 0 @@ -13770,10 +13831,10 @@ call $~lib/builtins/abort unreachable end + local.get $16 local.get $4 - local.get $0 call $~lib/map/Map#get - local.get $0 + local.get $4 i32.const 10 i32.add i32.ne @@ -13785,14 +13846,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $4 i32.const 1 i32.add - local.set $0 + local.set $4 br $for-loop|0 end end - local.get $4 + local.get $16 i32.load offset=20 i32.const 100 i32.ne @@ -13805,17 +13866,17 @@ unreachable end i32.const 0 - local.set $0 + local.set $4 loop $for-loop|1 - local.get $0 + local.get $4 i32.const 100 i32.lt_u if - local.get $4 + local.get $16 i32.load - local.get $4 + local.get $16 i32.load offset=4 - local.get $0 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13824,60 +13885,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $0 i32.const 15 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $0 i32.const 13 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $0 i32.const 16 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $0 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $3 + local.get $0 if - local.get $3 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $14 i32.const 1 i32.and if (result i32) i32.const 0 else + local.get $4 local.get $0 - local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $2 + local.get $14 i32.const -2 i32.and - local.set $3 + local.set $0 br $while-continue|05 end end i32.const 0 - local.set $3 + local.set $0 end - local.get $3 + local.get $0 i32.eqz if i32.const 0 @@ -13887,10 +13948,10 @@ call $~lib/builtins/abort unreachable end + local.get $16 local.get $4 - local.get $0 call $~lib/map/Map#get - local.get $0 + local.get $4 i32.const 10 i32.add i32.ne @@ -13902,17 +13963,17 @@ call $~lib/builtins/abort unreachable end + local.get $16 + local.get $4 local.get $4 - local.get $0 - local.get $0 i32.const 20 i32.add call $~lib/map/Map#set - local.get $4 + local.get $16 i32.load - local.get $4 + local.get $16 i32.load offset=4 - local.get $0 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13921,60 +13982,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $0 i32.const 15 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $0 i32.const 13 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $0 i32.const 16 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $0 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $3 + local.get $0 if - local.get $3 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $14 i32.const 1 i32.and if (result i32) i32.const 0 else + local.get $4 local.get $0 - local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $2 + local.get $14 i32.const -2 i32.and - local.set $3 + local.set $0 br $while-continue|08 end end i32.const 0 - local.set $3 + local.set $0 end - local.get $3 + local.get $0 i32.eqz if i32.const 0 @@ -13984,10 +14045,10 @@ call $~lib/builtins/abort unreachable end + local.get $16 local.get $4 - local.get $0 call $~lib/map/Map#get - local.get $0 + local.get $4 i32.const 20 i32.add i32.ne @@ -13999,14 +14060,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $4 i32.const 1 i32.add - local.set $0 + local.set $4 br $for-loop|1 end end - local.get $4 + local.get $16 i32.load offset=20 i32.const 100 i32.ne @@ -14019,10 +14080,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 - i32.const 0 - local.set $0 - local.get $3 + local.tee $4 + local.get $4 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -14031,17 +14090,17 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $14 i32.const 0 i32.store - local.get $4 + local.get $16 i32.load offset=8 - local.set $11 - local.get $4 + local.set $10 + local.get $16 i32.load offset=16 - local.tee $12 + local.tee $9 local.set $3 - local.get $2 + local.get $14 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -14050,28 +14109,25 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $4 i64.const 0 i64.store - local.get $1 + local.get $4 i32.const 16 i32.const 18 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $4 i32.store - local.get $6 + local.get $4 i32.const 0 i32.store - local.get $6 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $6 + local.get $4 i32.const 0 i32.store offset=4 - local.get $6 + local.get $4 i32.const 0 i32.store offset=8 - local.get $6 + local.get $4 i32.const 0 i32.store offset=12 local.get $3 @@ -14094,87 +14150,91 @@ select i32.const 2 i32.shl - local.tee $7 + local.tee $13 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 - local.get $7 + local.get $0 + local.get $13 call $~lib/memory/memory.fill - local.get $6 - local.get $1 + local.get $4 + local.get $0 i32.store - local.get $6 - local.get $1 - call $~lib/rt/itcms/__link - local.get $6 - local.get $1 + local.get $0 + if + local.get $4 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $4 + local.get $0 i32.store offset=4 - local.get $6 - local.get $7 + local.get $4 + local.get $13 i32.store offset=8 - local.get $6 + local.get $4 local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 - local.get $6 + local.get $14 + local.get $4 i32.store loop $for-loop|01 - local.get $8 - local.get $12 + local.get $2 + local.get $9 i32.lt_s if - local.get $8 + local.get $2 i32.const 12 i32.mul - local.get $11 + local.get $10 i32.add - local.tee $3 + local.tee $0 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $6 + local.get $4 + local.get $1 local.get $0 - local.get $3 i32.load call $~lib/array/Array#__set - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 end - local.get $8 + local.get $2 i32.const 1 i32.add - local.set $8 + local.set $2 br $for-loop|01 end end - local.get $6 - local.get $0 + local.get $4 + local.get $1 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $6 - local.get $0 + local.get $4 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $4 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $16 call $~lib/map/Map#values - local.tee $13 + local.tee $8 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -14186,62 +14246,68 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $4 i32.const 0 i32.store - local.get $3 + local.get $4 i32.const 24 i32.const 19 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $4 i32.store - local.get $3 + local.get $4 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $0 i32.store - local.get $3 - local.get $1 - call $~lib/rt/itcms/__link - local.get $3 + local.get $0 + if + local.get $4 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $4 i32.const 3 i32.store offset=4 - local.get $3 + local.get $4 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 - i32.store offset=8 - local.get $3 - local.get $1 - call $~lib/rt/itcms/__link - local.get $3 + local.tee $0 + i32.store offset=8 + local.get $0 + if + local.get $4 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $4 i32.const 4 i32.store offset=12 - local.get $3 + local.get $4 i32.const 0 i32.store offset=16 - local.get $3 + local.get $4 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $11 + local.tee $10 i32.store offset=16 loop $for-loop|2 - local.get $6 + local.get $2 i32.load offset=12 - local.get $5 + local.get $15 i32.gt_s if - local.get $6 + local.get $2 i32.load offset=12 - local.get $5 + local.get $15 i32.le_u if i32.const 1248 @@ -14251,21 +14317,21 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $2 i32.load offset=4 - local.get $5 + local.get $15 i32.const 2 i32.shl i32.add i32.load local.set $0 - local.get $13 - local.get $5 + local.get $8 + local.get $15 call $~lib/array/Array#__get - local.set $12 - local.get $4 + local.set $9 + local.get $16 i32.load - local.get $4 + local.get $16 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -14276,60 +14342,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $3 i32.const 15 i32.shr_u - local.get $1 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $3 i32.const 13 i32.shr_u - local.get $1 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $3 i32.const 16 i32.shr_u - local.get $1 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/map/Map#find10 loop $while-continue|011 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=8 - local.tee $2 + local.tee $14 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $0 - local.get $1 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $2 + local.get $14 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|011 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 i32.eqz if i32.const 0 @@ -14339,14 +14405,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $16 i32.load - local.get $4 + local.get $16 i32.load offset=4 - local.get $12 + local.get $9 i32.const 20 i32.sub - local.tee $2 + local.tee $14 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14355,60 +14421,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $3 i32.const 15 i32.shr_u - local.get $1 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $3 i32.const 13 i32.shr_u - local.get $1 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $3 i32.const 16 i32.shr_u - local.get $1 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/map/Map#find13 loop $while-continue|014 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=8 - local.tee $7 + local.tee $13 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 - local.get $1 + local.get $14 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $7 + local.get $13 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|014 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 i32.eqz if i32.const 0 @@ -14429,10 +14495,10 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $4 i32.load local.get $0 - local.tee $1 + local.tee $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14460,8 +14526,8 @@ i32.shr_u local.get $0 i32.xor - local.tee $14 - local.get $3 + local.tee $7 + local.get $4 i32.load offset=4 i32.and i32.const 2 @@ -14475,19 +14541,19 @@ if local.get $0 i32.load offset=8 - local.tee $2 + local.tee $14 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $3 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find15 - local.get $2 + local.get $14 i32.const -2 i32.and local.set $0 @@ -14500,18 +14566,18 @@ local.get $0 if local.get $0 - local.get $1 + local.get $3 i32.store offset=4 else - local.get $3 + local.get $4 i32.load offset=16 - local.get $3 + local.get $4 i32.load offset=12 i32.eq if - local.get $3 + local.get $4 i32.load offset=20 - local.get $3 + local.get $4 i32.load offset=12 i32.const 3 i32.mul @@ -14519,17 +14585,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $3 + local.get $4 i32.load offset=4 else - local.get $3 + local.get $4 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $8 + local.set $14 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -14543,14 +14609,14 @@ i64.const 0 i64.store local.get $0 - local.get $8 + local.get $14 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $10 + local.tee $11 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -14558,45 +14624,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $15 + local.tee $6 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $3 + local.get $4 i32.load offset=8 - local.tee $7 - local.get $3 + local.tee $13 + local.get $4 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $16 - local.get $2 + local.set $5 + local.get $1 local.set $0 loop $while-continue|017 - local.get $7 - local.get $16 + local.get $5 + local.get $13 i32.ne if - local.get $7 + local.get $13 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $7 + local.get $13 i32.load - local.tee $9 + local.tee $12 i32.store local.get $0 - local.get $7 + local.get $13 i32.load offset=4 i32.store offset=4 local.get $0 - local.get $9 + local.get $12 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14605,35 +14671,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $9 + local.tee $12 i32.const 15 i32.shr_u - local.get $9 + local.get $12 i32.xor i32.const -2048144777 i32.mul - local.tee $9 + local.tee $12 i32.const 13 i32.shr_u - local.get $9 + local.get $12 i32.xor i32.const -1028477379 i32.mul - local.tee $9 + local.tee $12 i32.const 16 i32.shr_u - local.get $9 + local.get $12 i32.xor - local.get $8 + local.get $14 i32.and i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add - local.tee $9 + local.tee $12 i32.load i32.store offset=8 - local.get $9 + local.get $12 local.get $0 i32.store local.get $0 @@ -14641,33 +14707,39 @@ i32.add local.set $0 end - local.get $7 + local.get $13 i32.const 12 i32.add - local.set $7 + local.set $13 br $while-continue|017 end end - local.get $3 - local.get $10 + local.get $4 + local.get $11 i32.store - local.get $3 - local.get $10 - call $~lib/rt/itcms/__link - local.get $3 - local.get $8 + local.get $11 + if + local.get $4 + local.get $11 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $4 + local.get $14 i32.store offset=4 - local.get $3 - local.get $2 + local.get $4 + local.get $1 i32.store offset=8 - local.get $3 - local.get $2 - call $~lib/rt/itcms/__link - local.get $3 - local.get $15 + local.get $1 + if + local.get $4 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $4 + local.get $6 i32.store offset=12 - local.get $3 - local.get $3 + local.get $4 + local.get $4 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -14676,48 +14748,48 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.load offset=8 local.tee $0 i32.store - local.get $3 - local.get $3 + local.get $4 + local.get $4 i32.load offset=16 - local.tee $8 + local.tee $1 i32.const 1 i32.add i32.store offset=16 - local.get $8 + local.get $1 i32.const 12 i32.mul local.get $0 i32.add local.tee $0 - local.get $1 + local.get $3 i32.store local.get $0 - local.get $1 - i32.store offset=4 - local.get $3 local.get $3 + i32.store offset=4 + local.get $4 + local.get $4 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $3 + local.get $4 i32.load - local.get $3 + local.get $4 i32.load offset=4 - local.get $14 + local.get $7 i32.and i32.const 2 i32.shl i32.add - local.tee $1 + local.tee $3 i32.load i32.store offset=8 - local.get $1 + local.get $3 local.get $0 i32.store end @@ -14725,21 +14797,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 - local.get $12 + local.get $10 + local.get $9 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $5 + local.get $15 i32.const 1 i32.add - local.set $5 + local.set $15 br $for-loop|2 end end - local.get $3 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -14751,7 +14823,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -14764,17 +14836,17 @@ unreachable end i32.const 0 - local.set $5 + local.set $15 loop $for-loop|3 - local.get $5 + local.get $15 i32.const 50 i32.lt_u if - local.get $4 + local.get $16 i32.load - local.get $4 + local.get $16 i32.load offset=4 - local.get $5 + local.get $15 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14783,60 +14855,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $4 i32.const 15 i32.shr_u - local.get $0 + local.get $4 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $4 i32.const 13 i32.shr_u - local.get $0 + local.get $4 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $4 i32.const 16 i32.shr_u - local.get $0 + local.get $4 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $4 block $__inlined_func$~lib/map/Map#find19 loop $while-continue|020 - local.get $0 + local.get $4 if - local.get $0 + local.get $4 i32.load offset=8 - local.tee $1 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 - local.get $0 + local.get $15 + local.get $4 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find19 - local.get $1 + local.get $3 i32.const -2 i32.and - local.set $0 + local.set $4 br $while-continue|020 end end i32.const 0 - local.set $0 + local.set $4 end - local.get $0 + local.get $4 i32.eqz if i32.const 0 @@ -14846,10 +14918,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $5 + local.get $16 + local.get $15 call $~lib/map/Map#get - local.get $5 + local.get $15 i32.const 20 i32.add i32.ne @@ -14861,14 +14933,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $5 + local.get $16 + local.get $15 call $~lib/map/Map#delete - local.get $4 + local.get $16 i32.load - local.get $4 + local.get $16 i32.load offset=4 - local.get $5 + local.get $15 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14877,60 +14949,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $4 i32.const 15 i32.shr_u - local.get $0 + local.get $4 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $4 i32.const 13 i32.shr_u - local.get $0 + local.get $4 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $4 i32.const 16 i32.shr_u - local.get $0 + local.get $4 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $4 block $__inlined_func$~lib/map/Map#find22 loop $while-continue|023 - local.get $0 + local.get $4 if - local.get $0 + local.get $4 i32.load offset=8 - local.tee $1 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 - local.get $0 + local.get $15 + local.get $4 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find22 - local.get $1 + local.get $3 i32.const -2 i32.and - local.set $0 + local.set $4 br $while-continue|023 end end i32.const 0 - local.set $0 + local.set $4 end - local.get $0 + local.get $4 if i32.const 0 i32.const 1568 @@ -14939,14 +15011,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $15 i32.const 1 i32.add - local.set $5 + local.set $15 br $for-loop|3 end end - local.get $4 + local.get $16 i32.load offset=20 i32.const 50 i32.ne @@ -14959,17 +15031,17 @@ unreachable end i32.const 0 - local.set $5 + local.set $15 loop $for-loop|4 - local.get $5 + local.get $15 i32.const 50 i32.lt_u if - local.get $4 + local.get $16 i32.load - local.get $4 + local.get $16 i32.load offset=4 - local.get $5 + local.get $15 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14978,60 +15050,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $4 i32.const 15 i32.shr_u - local.get $0 + local.get $4 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $4 i32.const 13 i32.shr_u - local.get $0 + local.get $4 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $4 i32.const 16 i32.shr_u - local.get $0 + local.get $4 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $4 block $__inlined_func$~lib/map/Map#find25 loop $while-continue|026 - local.get $0 + local.get $4 if - local.get $0 + local.get $4 i32.load offset=8 - local.tee $1 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 - local.get $0 + local.get $15 + local.get $4 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find25 - local.get $1 + local.get $3 i32.const -2 i32.and - local.set $0 + local.set $4 br $while-continue|026 end end i32.const 0 - local.set $0 + local.set $4 end - local.get $0 + local.get $4 if i32.const 0 i32.const 1568 @@ -15040,17 +15112,17 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $5 - local.get $5 + local.get $16 + local.get $15 + local.get $15 i32.const 10 i32.add call $~lib/map/Map#set - local.get $4 + local.get $16 i32.load - local.get $4 + local.get $16 i32.load offset=4 - local.get $5 + local.get $15 i32.const -1028477379 i32.mul i32.const 374761397 @@ -15059,60 +15131,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $4 i32.const 15 i32.shr_u - local.get $0 + local.get $4 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $4 i32.const 13 i32.shr_u - local.get $0 + local.get $4 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $4 i32.const 16 i32.shr_u - local.get $0 + local.get $4 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $4 block $__inlined_func$~lib/map/Map#find28 loop $while-continue|029 - local.get $0 + local.get $4 if - local.get $0 + local.get $4 i32.load offset=8 - local.tee $1 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 - local.get $0 + local.get $15 + local.get $4 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find28 - local.get $1 + local.get $3 i32.const -2 i32.and - local.set $0 + local.set $4 br $while-continue|029 end end i32.const 0 - local.set $0 + local.set $4 end - local.get $0 + local.get $4 i32.eqz if i32.const 0 @@ -15122,14 +15194,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $5 + local.get $16 + local.get $15 call $~lib/map/Map#delete - local.get $4 + local.get $16 i32.load - local.get $4 + local.get $16 i32.load offset=4 - local.get $5 + local.get $15 i32.const -1028477379 i32.mul i32.const 374761397 @@ -15138,60 +15210,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $4 i32.const 15 i32.shr_u - local.get $0 + local.get $4 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $4 i32.const 13 i32.shr_u - local.get $0 + local.get $4 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $4 i32.const 16 i32.shr_u - local.get $0 + local.get $4 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $4 block $__inlined_func$~lib/map/Map#find31 loop $while-continue|032 - local.get $0 + local.get $4 if - local.get $0 + local.get $4 i32.load offset=8 - local.tee $1 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 - local.get $0 + local.get $15 + local.get $4 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find31 - local.get $1 + local.get $3 i32.const -2 i32.and - local.set $0 + local.set $4 br $while-continue|032 end end i32.const 0 - local.set $0 + local.set $4 end - local.get $0 + local.get $4 if i32.const 0 i32.const 1568 @@ -15200,14 +15272,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $15 i32.const 1 i32.add - local.set $5 + local.set $15 br $for-loop|4 end end - local.get $4 + local.get $16 i32.load offset=20 i32.const 50 i32.ne @@ -15219,9 +15291,9 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $16 call $~lib/map/Map#clear - local.get $4 + local.get $16 i32.load offset=20 if i32.const 0 @@ -15353,21 +15425,21 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $7 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 3 i32.shl i32.const 3 @@ -15477,18 +15549,24 @@ local.get $0 local.get $7 i32.store - local.get $0 local.get $7 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $7 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $1 i32.store offset=4 local.get $0 local.get $3 i32.store offset=8 - local.get $0 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $5 i32.store offset=12 @@ -15773,9 +15851,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 3 i32.store offset=4 @@ -15784,9 +15865,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=8 - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 4 i32.store offset=12 @@ -15826,16 +15910,16 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 i64.const 0 i64.store offset=8 - local.get $3 + local.get $2 i32.const 0 i32.store offset=16 - local.get $3 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -15856,22 +15940,28 @@ local.get $5 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $3 i32.store - local.get $5 - local.get $0 - call $~lib/rt/itcms/__link + local.get $3 + if + local.get $5 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $5 i32.const 3 i32.store offset=4 local.get $5 i32.const 64 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $3 i32.store offset=8 - local.get $5 - local.get $0 - call $~lib/rt/itcms/__link + local.get $3 + if + local.get $5 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $5 i32.const 4 i32.store offset=12 @@ -15885,7 +15975,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 local.get $5 i32.store loop $for-loop|0 @@ -16048,8 +16138,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -16058,7 +16148,7 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $6 i32.const 0 i32.store local.get $5 @@ -16067,8 +16157,8 @@ local.get $5 i32.load offset=16 local.tee $13 - local.set $3 - local.get $7 + local.set $0 + local.get $6 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -16077,31 +16167,28 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i64.const 0 i64.store - local.get $0 + local.get $2 i32.const 16 i32.const 21 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $2 i32.store - local.get $6 + local.get $2 i32.const 0 i32.store - local.get $6 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $6 + local.get $2 i32.const 0 i32.store offset=4 - local.get $6 + local.get $2 i32.const 0 i32.store offset=8 - local.get $6 + local.get $2 i32.const 0 i32.store offset=12 - local.get $3 + local.get $0 i32.const 134217727 i32.gt_u if @@ -16113,63 +16200,67 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.const 8 - local.get $3 + local.get $0 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $9 + local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store offset=4 - local.get $0 - local.get $9 + local.get $3 + local.get $8 call $~lib/memory/memory.fill - local.get $6 - local.get $0 + local.get $2 + local.get $3 i32.store - local.get $6 - local.get $0 - call $~lib/rt/itcms/__link - local.get $6 - local.get $0 + local.get $3 + if + local.get $2 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $2 + local.get $3 i32.store offset=4 - local.get $6 - local.get $9 + local.get $2 + local.get $8 i32.store offset=8 - local.get $6 - local.get $3 + local.get $2 + local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 local.get $6 + local.get $2 + local.tee $3 i32.store loop $for-loop|01 - local.get $2 + local.get $7 local.get $13 i32.lt_s if - local.get $2 + local.get $7 i32.const 4 i32.shl local.get $12 i32.add - local.tee $3 + local.tee $2 i32.load offset=12 i32.const 1 i32.and i32.eqz if - local.get $6 - local.get $1 local.get $3 + local.get $1 + local.get $2 i64.load call $~lib/array/Array#__set local.get $1 @@ -16177,26 +16268,26 @@ i32.add local.set $1 end - local.get $2 + local.get $7 i32.const 1 i32.add - local.set $2 + local.set $7 br $for-loop|01 end end - local.get $6 + local.get $3 local.get $1 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $6 + local.get $3 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $5 @@ -16213,60 +16304,66 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store - local.get $3 + local.get $2 i32.const 24 i32.const 22 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $0 i32.store - local.get $3 - local.get $1 - call $~lib/rt/itcms/__link - local.get $3 + local.get $0 + if + local.get $2 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $2 i32.const 3 i32.store offset=4 - local.get $3 + local.get $2 i32.const 96 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $0 i32.store offset=8 - local.get $3 - local.get $1 - call $~lib/rt/itcms/__link - local.get $3 + local.get $0 + if + local.get $2 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $2 i32.const 4 i32.store offset=12 - local.get $3 + local.get $2 i32.const 0 i32.store offset=16 - local.get $3 + local.get $2 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor local.tee $11 i32.store offset=16 loop $for-loop|2 - local.get $6 + local.get $3 i32.load offset=12 local.get $10 i32.gt_s if - local.get $6 + local.get $3 i32.load offset=12 local.get $10 i32.le_u @@ -16278,7 +16375,7 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $3 i32.load offset=4 local.get $10 i32.const 3 @@ -16328,7 +16425,7 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $2 i32.load local.get $4 i32.wrap_i64 @@ -16371,7 +16468,7 @@ local.get $0 i32.xor local.tee $15 - local.get $3 + local.get $2 i32.load offset=4 i32.and i32.const 2 @@ -16385,7 +16482,7 @@ if local.get $0 i32.load offset=16 - local.tee $2 + local.tee $7 i32.const 1 i32.and if (result i32) @@ -16397,7 +16494,7 @@ i64.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $2 + local.get $7 i32.const -2 i32.and local.set $0 @@ -16413,15 +16510,15 @@ local.get $4 i64.store offset=8 else - local.get $3 + local.get $2 i32.load offset=16 - local.get $3 + local.get $2 i32.load offset=12 i32.eq if - local.get $3 + local.get $2 i32.load offset=20 - local.get $3 + local.get $2 i32.load offset=12 i32.const 3 i32.mul @@ -16429,17 +16526,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $3 + local.get $2 i32.load offset=4 else - local.get $3 + local.get $2 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $1 + local.set $7 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -16453,14 +16550,14 @@ i64.const 0 i64.store local.get $0 - local.get $1 + local.get $7 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $9 + local.tee $8 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -16472,41 +16569,41 @@ i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=8 - local.tee $7 - local.get $3 + local.tee $6 + local.get $2 i32.load offset=16 i32.const 24 i32.mul i32.add local.set $17 - local.get $2 + local.get $1 local.set $0 loop $while-continue|00 - local.get $7 + local.get $6 local.get $17 i32.ne if - local.get $7 + local.get $6 i32.load offset=16 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $7 + local.get $6 i64.load local.tee $14 i64.store local.get $0 - local.get $7 + local.get $6 i64.load offset=8 i64.store offset=8 local.get $0 - local.get $1 + local.get $7 local.get $14 i32.wrap_i64 i32.const -1028477379 @@ -16528,34 +16625,34 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $8 + local.tee $9 i32.const 15 i32.shr_u - local.get $8 + local.get $9 i32.xor i32.const -2048144777 i32.mul - local.tee $8 + local.tee $9 i32.const 13 i32.shr_u - local.get $8 + local.get $9 i32.xor i32.const -1028477379 i32.mul - local.tee $8 + local.tee $9 i32.const 16 i32.shr_u - local.get $8 + local.get $9 i32.xor i32.and i32.const 2 i32.shl - local.get $9 + local.get $8 i32.add - local.tee $8 + local.tee $9 i32.load i32.store offset=16 - local.get $8 + local.get $9 local.get $0 i32.store local.get $0 @@ -16563,33 +16660,39 @@ i32.add local.set $0 end - local.get $7 + local.get $6 i32.const 24 i32.add - local.set $7 + local.set $6 br $while-continue|00 end end - local.get $3 - local.get $9 + local.get $2 + local.get $8 i32.store - local.get $3 - local.get $9 - call $~lib/rt/itcms/__link - local.get $3 - local.get $1 + local.get $8 + if + local.get $2 + local.get $8 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $2 + local.get $7 i32.store offset=4 - local.get $3 local.get $2 + local.get $1 i32.store offset=8 - local.get $3 + local.get $1 + if + local.get $2 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $2 - call $~lib/rt/itcms/__link - local.get $3 local.get $16 i32.store offset=12 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -16598,12 +16701,12 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.load offset=8 local.tee $0 i32.store - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=16 local.tee $1 i32.const 1 @@ -16620,16 +16723,16 @@ local.get $0 local.get $4 i64.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $3 + local.get $2 i32.load - local.get $3 + local.get $2 i32.load offset=4 local.get $15 i32.and @@ -16661,7 +16764,7 @@ br $for-loop|2 end end - local.get $3 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -16957,21 +17060,21 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $7 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 3 i32.shl i32.const 3 @@ -17081,18 +17184,24 @@ local.get $0 local.get $7 i32.store - local.get $0 local.get $7 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $7 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $1 i32.store offset=4 local.get $0 local.get $3 i32.store offset=8 - local.get $0 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $5 i32.store offset=12 @@ -17360,16 +17469,16 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 i64.const 0 i64.store offset=8 - local.get $3 + local.get $2 i32.const 0 i32.store offset=16 - local.get $3 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -17390,22 +17499,28 @@ local.get $5 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $3 i32.store - local.get $5 - local.get $0 - call $~lib/rt/itcms/__link + local.get $3 + if + local.get $5 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $5 i32.const 3 i32.store offset=4 local.get $5 i32.const 64 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $3 i32.store offset=8 - local.get $5 - local.get $0 - call $~lib/rt/itcms/__link + local.get $3 + if + local.get $5 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $5 i32.const 4 i32.store offset=12 @@ -17419,7 +17534,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 local.get $5 i32.store loop $for-loop|0 @@ -17582,8 +17697,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -17592,7 +17707,7 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $6 i32.const 0 i32.store local.get $5 @@ -17601,8 +17716,8 @@ local.get $5 i32.load offset=16 local.tee $13 - local.set $3 - local.get $7 + local.set $0 + local.get $6 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -17611,31 +17726,28 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i64.const 0 i64.store - local.get $0 + local.get $2 i32.const 16 i32.const 24 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $2 i32.store - local.get $6 + local.get $2 i32.const 0 i32.store - local.get $6 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $6 + local.get $2 i32.const 0 i32.store offset=4 - local.get $6 + local.get $2 i32.const 0 i32.store offset=8 - local.get $6 + local.get $2 i32.const 0 i32.store offset=12 - local.get $3 + local.get $0 i32.const 134217727 i32.gt_u if @@ -17647,63 +17759,67 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.const 8 - local.get $3 + local.get $0 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $9 + local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store offset=4 - local.get $0 - local.get $9 + local.get $3 + local.get $8 call $~lib/memory/memory.fill - local.get $6 - local.get $0 + local.get $2 + local.get $3 i32.store - local.get $6 - local.get $0 - call $~lib/rt/itcms/__link - local.get $6 - local.get $0 + local.get $3 + if + local.get $2 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $2 + local.get $3 i32.store offset=4 - local.get $6 - local.get $9 + local.get $2 + local.get $8 i32.store offset=8 - local.get $6 - local.get $3 + local.get $2 + local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 local.get $6 + local.get $2 + local.tee $3 i32.store loop $for-loop|01 - local.get $2 + local.get $7 local.get $13 i32.lt_s if - local.get $2 + local.get $7 i32.const 4 i32.shl local.get $12 i32.add - local.tee $3 + local.tee $2 i32.load offset=12 i32.const 1 i32.and i32.eqz if - local.get $6 - local.get $1 local.get $3 + local.get $1 + local.get $2 i64.load call $~lib/array/Array#__set local.get $1 @@ -17711,26 +17827,26 @@ i32.add local.set $1 end - local.get $2 + local.get $7 i32.const 1 i32.add - local.set $2 + local.set $7 br $for-loop|01 end end - local.get $6 + local.get $3 local.get $1 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $6 + local.get $3 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $5 @@ -17747,60 +17863,66 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store - local.get $3 + local.get $2 i32.const 24 i32.const 25 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $0 i32.store - local.get $3 - local.get $1 - call $~lib/rt/itcms/__link - local.get $3 + local.get $0 + if + local.get $2 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $2 i32.const 3 i32.store offset=4 - local.get $3 + local.get $2 i32.const 96 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $0 i32.store offset=8 - local.get $3 - local.get $1 - call $~lib/rt/itcms/__link - local.get $3 + local.get $0 + if + local.get $2 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $2 i32.const 4 i32.store offset=12 - local.get $3 + local.get $2 i32.const 0 i32.store offset=16 - local.get $3 + local.get $2 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor local.tee $11 i32.store offset=16 loop $for-loop|2 - local.get $6 + local.get $3 i32.load offset=12 local.get $10 i32.gt_s if - local.get $6 + local.get $3 i32.load offset=12 local.get $10 i32.le_u @@ -17812,7 +17934,7 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $3 i32.load offset=4 local.get $10 i32.const 3 @@ -17862,7 +17984,7 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $2 i32.load local.get $4 i32.wrap_i64 @@ -17905,7 +18027,7 @@ local.get $0 i32.xor local.tee $15 - local.get $3 + local.get $2 i32.load offset=4 i32.and i32.const 2 @@ -17919,7 +18041,7 @@ if local.get $0 i32.load offset=16 - local.tee $2 + local.tee $7 i32.const 1 i32.and if (result i32) @@ -17931,7 +18053,7 @@ i64.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $2 + local.get $7 i32.const -2 i32.and local.set $0 @@ -17947,15 +18069,15 @@ local.get $4 i64.store offset=8 else - local.get $3 + local.get $2 i32.load offset=16 - local.get $3 + local.get $2 i32.load offset=12 i32.eq if - local.get $3 + local.get $2 i32.load offset=20 - local.get $3 + local.get $2 i32.load offset=12 i32.const 3 i32.mul @@ -17963,17 +18085,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $3 + local.get $2 i32.load offset=4 else - local.get $3 + local.get $2 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $1 + local.set $7 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -17987,14 +18109,14 @@ i64.const 0 i64.store local.get $0 - local.get $1 + local.get $7 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $9 + local.tee $8 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -18006,41 +18128,41 @@ i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=8 - local.tee $7 - local.get $3 + local.tee $6 + local.get $2 i32.load offset=16 i32.const 24 i32.mul i32.add local.set $17 - local.get $2 + local.get $1 local.set $0 loop $while-continue|00 - local.get $7 + local.get $6 local.get $17 i32.ne if - local.get $7 + local.get $6 i32.load offset=16 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $7 + local.get $6 i64.load local.tee $14 i64.store local.get $0 - local.get $7 + local.get $6 i64.load offset=8 i64.store offset=8 local.get $0 - local.get $1 + local.get $7 local.get $14 i32.wrap_i64 i32.const -1028477379 @@ -18062,34 +18184,34 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $8 + local.tee $9 i32.const 15 i32.shr_u - local.get $8 + local.get $9 i32.xor i32.const -2048144777 i32.mul - local.tee $8 + local.tee $9 i32.const 13 i32.shr_u - local.get $8 + local.get $9 i32.xor i32.const -1028477379 i32.mul - local.tee $8 + local.tee $9 i32.const 16 i32.shr_u - local.get $8 + local.get $9 i32.xor i32.and i32.const 2 i32.shl - local.get $9 + local.get $8 i32.add - local.tee $8 + local.tee $9 i32.load i32.store offset=16 - local.get $8 + local.get $9 local.get $0 i32.store local.get $0 @@ -18097,33 +18219,39 @@ i32.add local.set $0 end - local.get $7 + local.get $6 i32.const 24 i32.add - local.set $7 + local.set $6 br $while-continue|00 end end - local.get $3 - local.get $9 + local.get $2 + local.get $8 i32.store - local.get $3 - local.get $9 - call $~lib/rt/itcms/__link - local.get $3 - local.get $1 + local.get $8 + if + local.get $2 + local.get $8 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $2 + local.get $7 i32.store offset=4 - local.get $3 local.get $2 + local.get $1 i32.store offset=8 - local.get $3 + local.get $1 + if + local.get $2 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $2 - call $~lib/rt/itcms/__link - local.get $3 local.get $16 i32.store offset=12 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -18132,12 +18260,12 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.load offset=8 local.tee $0 i32.store - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=16 local.tee $1 i32.const 1 @@ -18154,16 +18282,16 @@ local.get $0 local.get $4 i64.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $3 + local.get $2 i32.load - local.get $3 + local.get $2 i32.load offset=4 local.get $15 i32.and @@ -18195,7 +18323,7 @@ br $for-loop|2 end end - local.get $3 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -18407,21 +18535,21 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $7 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 3 i32.shl i32.const 3 @@ -18520,18 +18648,24 @@ local.get $0 local.get $7 i32.store - local.get $0 local.get $7 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $7 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $1 i32.store offset=4 local.get $0 local.get $3 i32.store offset=8 - local.get $0 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $6 i32.store offset=12 @@ -18752,21 +18886,21 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 f32) + (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) + (local $7 f32) (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 f32) + (local $14 i32) (local $15 i32) (local $16 i32) - (local $17 i32) + (local $17 f32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -18795,41 +18929,47 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $16 i32.const 0 i32.store - local.get $5 + local.get $16 i32.const 24 i32.const 26 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $16 i32.store - local.get $4 + local.get $16 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $2 i32.store - local.get $4 - local.get $5 - call $~lib/rt/itcms/__link - local.get $4 + local.get $2 + if + local.get $16 + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $16 i32.const 3 i32.store offset=4 - local.get $4 + local.get $16 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $2 i32.store offset=8 - local.get $4 - local.get $5 - call $~lib/rt/itcms/__link - local.get $4 + local.get $2 + if + local.get $16 + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $16 i32.const 4 i32.store offset=12 - local.get $4 + local.get $16 i32.const 0 i32.store offset=16 - local.get $4 + local.get $16 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer @@ -18837,18 +18977,18 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $1 - local.get $4 + local.get $16 i32.store loop $for-loop|0 - local.get $3 + local.get $17 f32.const 100 f32.lt if - local.get $4 + local.get $16 i32.load - local.get $4 + local.get $16 i32.load offset=4 - local.get $3 + local.get $17 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -18889,19 +19029,19 @@ if local.get $1 i32.load offset=8 - local.tee $6 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $17 local.get $1 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $6 + local.get $3 i32.const -2 i32.and local.set $1 @@ -18920,18 +19060,18 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 - local.get $3 + local.get $16 + local.get $17 + local.get $17 i32.trunc_f32_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $4 + local.get $16 i32.load - local.get $4 + local.get $16 i32.load offset=4 - local.get $3 + local.get $17 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -18972,19 +19112,19 @@ if local.get $1 i32.load offset=8 - local.tee $6 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $17 local.get $1 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $6 + local.get $3 i32.const -2 i32.and local.set $1 @@ -19004,10 +19144,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $16 + local.get $17 call $~lib/map/Map#get - local.get $3 + local.get $17 i32.trunc_f32_s i32.const 10 i32.add @@ -19020,14 +19160,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $17 f32.const 1 f32.add - local.set $3 + local.set $17 br $for-loop|0 end end - local.get $4 + local.get $16 i32.load offset=20 i32.const 100 i32.ne @@ -19040,17 +19180,17 @@ unreachable end f32.const 0 - local.set $3 + local.set $17 loop $for-loop|1 - local.get $3 + local.get $17 f32.const 100 f32.lt if - local.get $4 + local.get $16 i32.load - local.get $4 + local.get $16 i32.load offset=4 - local.get $3 + local.get $17 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19091,19 +19231,19 @@ if local.get $1 i32.load offset=8 - local.tee $6 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $17 local.get $1 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $6 + local.get $3 i32.const -2 i32.and local.set $1 @@ -19123,10 +19263,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $16 + local.get $17 call $~lib/map/Map#get - local.get $3 + local.get $17 i32.trunc_f32_s i32.const 10 i32.add @@ -19139,18 +19279,18 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 - local.get $3 + local.get $16 + local.get $17 + local.get $17 i32.trunc_f32_s i32.const 20 i32.add call $~lib/map/Map#set - local.get $4 + local.get $16 i32.load - local.get $4 + local.get $16 i32.load offset=4 - local.get $3 + local.get $17 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19191,19 +19331,19 @@ if local.get $1 i32.load offset=8 - local.tee $6 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $17 local.get $1 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $6 + local.get $3 i32.const -2 i32.and local.set $1 @@ -19223,10 +19363,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $16 + local.get $17 call $~lib/map/Map#get - local.get $3 + local.get $17 i32.trunc_f32_s i32.const 20 i32.add @@ -19239,14 +19379,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $17 f32.const 1 f32.add - local.set $3 + local.set $17 br $for-loop|1 end end - local.get $4 + local.get $16 i32.load offset=20 i32.const 100 i32.ne @@ -19269,17 +19409,17 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $14 i32.const 0 i32.store - local.get $4 + local.get $16 i32.load offset=8 - local.set $12 - local.get $4 + local.set $9 + local.get $16 i32.load offset=16 - local.tee $13 - local.set $1 - local.get $7 + local.tee $8 + local.set $3 + local.get $14 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -19288,31 +19428,28 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $1 i64.const 0 i64.store - local.get $5 + local.get $1 i32.const 16 i32.const 27 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $1 i32.store - local.get $6 + local.get $1 i32.const 0 i32.store - local.get $6 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $6 + local.get $1 i32.const 0 i32.store offset=4 - local.get $6 + local.get $1 i32.const 0 i32.store offset=8 - local.get $6 + local.get $1 i32.const 0 i32.store offset=12 - local.get $1 + local.get $3 i32.const 268435455 i32.gt_u if @@ -19324,55 +19461,59 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.const 8 - local.get $1 + local.get $3 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $9 + local.tee $13 i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $2 i32.store offset=4 - local.get $5 - local.get $9 + local.get $2 + local.get $13 call $~lib/memory/memory.fill - local.get $6 - local.get $5 + local.get $1 + local.get $2 i32.store - local.get $6 - local.get $5 - call $~lib/rt/itcms/__link - local.get $6 - local.get $5 + local.get $2 + if + local.get $1 + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $1 + local.get $2 i32.store offset=4 - local.get $6 - local.get $9 + local.get $1 + local.get $13 i32.store offset=8 - local.get $6 local.get $1 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 - local.get $6 + local.get $14 + local.get $1 + local.tee $2 i32.store loop $for-loop|01 - local.get $2 - local.get $13 - i32.lt_s + local.get $8 + local.get $15 + i32.gt_s if - local.get $2 + local.get $15 i32.const 12 i32.mul - local.get $12 + local.get $9 i32.add - local.tee $5 + local.tee $3 i32.load offset=8 i32.const 1 i32.and @@ -19383,10 +19524,10 @@ i32.const 1 i32.add local.set $0 - local.get $5 + local.get $3 f32.load - local.set $3 - local.get $6 + local.set $17 + local.get $2 i32.load offset=12 local.get $1 i32.le_u @@ -19402,52 +19543,52 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $2 local.get $1 i32.const 1 i32.add - local.tee $5 + local.tee $3 i32.const 2 i32.const 1 call $~lib/array/ensureCapacity - local.get $6 - local.get $5 + local.get $2 + local.get $3 i32.store offset=12 end - local.get $6 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add - local.get $3 + local.get $17 f32.store end - local.get $2 + local.get $15 i32.const 1 i32.add - local.set $2 + local.set $15 br $for-loop|01 end end - local.get $6 + local.get $2 local.get $0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $6 + local.get $2 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $16 call $~lib/map/Map#values - local.tee $13 + local.tee $8 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -19471,22 +19612,28 @@ local.get $1 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $0 i32.store - local.get $1 - local.get $5 - call $~lib/rt/itcms/__link + local.get $0 + if + local.get $1 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $1 i32.const 3 i32.store offset=4 local.get $1 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $0 i32.store offset=8 - local.get $1 - local.get $5 - call $~lib/rt/itcms/__link + local.get $0 + if + local.get $1 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $1 i32.const 4 i32.store offset=12 @@ -19504,17 +19651,17 @@ i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $11 + local.tee $10 i32.store offset=16 loop $for-loop|2 - local.get $6 + local.get $2 i32.load offset=12 - local.get $10 + local.get $11 i32.gt_s if - local.get $6 + local.get $2 i32.load offset=12 - local.get $10 + local.get $11 i32.le_u if i32.const 1248 @@ -19524,23 +19671,23 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $2 i32.load offset=4 - local.get $10 + local.get $11 i32.const 2 i32.shl i32.add f32.load - local.set $3 - local.get $13 - local.get $10 + local.set $17 + local.get $8 + local.get $11 call $~lib/array/Array#__get - local.set $12 - local.get $4 + local.set $9 + local.get $16 i32.load - local.get $4 + local.get $16 i32.load offset=4 - local.get $3 + local.get $17 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19581,19 +19728,19 @@ if local.get $0 i32.load offset=8 - local.tee $2 + local.tee $15 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $17 local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $2 + local.get $15 i32.const -2 i32.and local.set $0 @@ -19613,15 +19760,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $16 i32.load - local.get $4 + local.get $16 i32.load offset=4 - local.get $12 + local.get $9 i32.const 20 i32.sub f32.convert_i32_s - local.tee $14 + local.tee $7 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19662,19 +19809,19 @@ if local.get $0 i32.load offset=8 - local.tee $2 + local.tee $15 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $14 + local.get $7 local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $2 + local.get $15 i32.const -2 i32.and local.set $0 @@ -19707,7 +19854,7 @@ i32.store local.get $1 i32.load - local.get $3 + local.get $17 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19736,7 +19883,7 @@ i32.shr_u local.get $0 i32.xor - local.tee $15 + local.tee $6 local.get $1 i32.load offset=4 i32.and @@ -19751,19 +19898,19 @@ if local.get $0 i32.load offset=8 - local.tee $2 + local.tee $15 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $17 local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find15 - local.get $2 + local.get $15 i32.const -2 i32.and local.set $0 @@ -19776,7 +19923,7 @@ local.get $0 if local.get $0 - local.get $3 + local.get $17 f32.store offset=4 else local.get $1 @@ -19805,7 +19952,7 @@ i32.const 1 i32.or end - local.set $5 + local.set $15 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -19819,14 +19966,14 @@ i64.const 0 i64.store local.get $0 - local.get $5 + local.get $15 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $9 + local.tee $13 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -19834,45 +19981,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $16 + local.tee $5 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $3 i32.store offset=4 local.get $1 i32.load offset=8 - local.tee $7 + local.tee $14 local.get $1 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $17 - local.get $2 + local.set $4 + local.get $3 local.set $0 loop $while-continue|017 - local.get $7 - local.get $17 + local.get $4 + local.get $14 i32.ne if - local.get $7 + local.get $14 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $7 + local.get $14 f32.load - local.tee $14 + local.tee $7 f32.store local.get $0 - local.get $7 + local.get $14 f32.load offset=4 f32.store offset=4 local.get $0 - local.get $14 + local.get $7 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19882,35 +20029,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $8 + local.tee $12 i32.const 15 i32.shr_u - local.get $8 + local.get $12 i32.xor i32.const -2048144777 i32.mul - local.tee $8 + local.tee $12 i32.const 13 i32.shr_u - local.get $8 + local.get $12 i32.xor i32.const -1028477379 i32.mul - local.tee $8 + local.tee $12 i32.const 16 i32.shr_u - local.get $8 + local.get $12 i32.xor - local.get $5 + local.get $15 i32.and i32.const 2 i32.shl - local.get $9 + local.get $13 i32.add - local.tee $8 + local.tee $12 i32.load i32.store offset=8 - local.get $8 + local.get $12 local.get $0 i32.store local.get $0 @@ -19918,30 +20065,36 @@ i32.add local.set $0 end - local.get $7 + local.get $14 i32.const 12 i32.add - local.set $7 + local.set $14 br $while-continue|017 end end local.get $1 - local.get $9 + local.get $13 i32.store + local.get $13 + if + local.get $1 + local.get $13 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $1 - local.get $9 - call $~lib/rt/itcms/__link - local.get $1 - local.get $5 + local.get $15 i32.store offset=4 local.get $1 - local.get $2 + local.get $3 i32.store offset=8 + local.get $3 + if + local.get $1 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $1 - local.get $2 - call $~lib/rt/itcms/__link - local.get $1 - local.get $16 + local.get $5 i32.store offset=12 local.get $1 local.get $1 @@ -19960,20 +20113,20 @@ local.get $1 local.get $1 i32.load offset=16 - local.tee $5 + local.tee $3 i32.const 1 i32.add i32.store offset=16 - local.get $5 + local.get $3 i32.const 12 i32.mul local.get $0 i32.add local.tee $0 - local.get $3 + local.get $17 f32.store local.get $0 - local.get $3 + local.get $17 f32.store offset=4 local.get $1 local.get $1 @@ -19986,15 +20139,15 @@ i32.load local.get $1 i32.load offset=4 - local.get $15 + local.get $6 i32.and i32.const 2 i32.shl i32.add - local.tee $5 + local.tee $3 i32.load i32.store offset=8 - local.get $5 + local.get $3 local.get $0 i32.store end @@ -20002,17 +20155,17 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 - local.get $12 + local.get $10 + local.get $9 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|2 end end @@ -20028,7 +20181,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -20041,17 +20194,17 @@ unreachable end f32.const 0 - local.set $3 + local.set $17 loop $for-loop|3 - local.get $3 + local.get $17 f32.const 50 f32.lt if - local.get $4 + local.get $16 i32.load - local.get $4 + local.get $16 i32.load offset=4 - local.get $3 + local.get $17 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20092,19 +20245,19 @@ if local.get $1 i32.load offset=8 - local.tee $5 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $17 local.get $1 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find19 - local.get $5 + local.get $0 i32.const -2 i32.and local.set $1 @@ -20124,10 +20277,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $16 + local.get $17 call $~lib/map/Map#get - local.get $3 + local.get $17 i32.trunc_f32_s i32.const 20 i32.add @@ -20140,14 +20293,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $16 + local.get $17 call $~lib/map/Map#delete - local.get $4 + local.get $16 i32.load - local.get $4 + local.get $16 i32.load offset=4 - local.get $3 + local.get $17 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20188,19 +20341,19 @@ if local.get $1 i32.load offset=8 - local.tee $5 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $17 local.get $1 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find22 - local.get $5 + local.get $0 i32.const -2 i32.and local.set $1 @@ -20219,14 +20372,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $17 f32.const 1 f32.add - local.set $3 + local.set $17 br $for-loop|3 end end - local.get $4 + local.get $16 i32.load offset=20 i32.const 50 i32.ne @@ -20239,17 +20392,17 @@ unreachable end f32.const 0 - local.set $3 + local.set $17 loop $for-loop|4 - local.get $3 + local.get $17 f32.const 50 f32.lt if - local.get $4 + local.get $16 i32.load - local.get $4 + local.get $16 i32.load offset=4 - local.get $3 + local.get $17 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20290,19 +20443,19 @@ if local.get $1 i32.load offset=8 - local.tee $5 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $17 local.get $1 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find25 - local.get $5 + local.get $0 i32.const -2 i32.and local.set $1 @@ -20321,18 +20474,18 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 - local.get $3 + local.get $16 + local.get $17 + local.get $17 i32.trunc_f32_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $4 + local.get $16 i32.load - local.get $4 + local.get $16 i32.load offset=4 - local.get $3 + local.get $17 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20373,19 +20526,19 @@ if local.get $1 i32.load offset=8 - local.tee $5 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $17 local.get $1 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find28 - local.get $5 + local.get $0 i32.const -2 i32.and local.set $1 @@ -20405,14 +20558,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $16 + local.get $17 call $~lib/map/Map#delete - local.get $4 + local.get $16 i32.load - local.get $4 + local.get $16 i32.load offset=4 - local.get $3 + local.get $17 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20453,19 +20606,19 @@ if local.get $1 i32.load offset=8 - local.tee $5 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $17 local.get $1 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find31 - local.get $5 + local.get $0 i32.const -2 i32.and local.set $1 @@ -20484,14 +20637,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $17 f32.const 1 f32.add - local.set $3 + local.set $17 br $for-loop|4 end end - local.get $4 + local.get $16 i32.load offset=20 i32.const 50 i32.ne @@ -20503,9 +20656,9 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $16 call $~lib/map/Map#clear - local.get $4 + local.get $16 i32.load offset=20 if i32.const 0 @@ -20641,21 +20794,21 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $8 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 3 i32.shl i32.const 3 @@ -20767,18 +20920,24 @@ local.get $0 local.get $8 i32.store - local.get $0 local.get $8 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $8 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $1 i32.store offset=4 local.get $0 local.get $3 i32.store offset=8 - local.get $0 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $7 i32.store offset=12 @@ -21027,18 +21186,18 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 f64) - (local $4 i32) + (local $3 i32) + (local $4 f64) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i64) + (local $14 i32) (local $15 i32) (local $16 i32) (local $17 i32) @@ -21071,41 +21230,47 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $17 i32.const 0 i32.store - local.get $5 + local.get $17 i32.const 24 i32.const 29 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $17 i32.store - local.get $4 + local.get $17 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $3 i32.store - local.get $4 - local.get $5 - call $~lib/rt/itcms/__link - local.get $4 + local.get $3 + if + local.get $17 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $17 i32.const 3 i32.store offset=4 - local.get $4 + local.get $17 i32.const 64 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $3 i32.store offset=8 - local.get $4 - local.get $5 - call $~lib/rt/itcms/__link - local.get $4 + local.get $3 + if + local.get $17 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $17 i32.const 4 i32.store offset=12 - local.get $4 + local.get $17 i32.const 0 i32.store offset=16 - local.get $4 + local.get $17 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer @@ -21113,15 +21278,15 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $1 - local.get $4 + local.get $17 i32.store loop $for-loop|0 - local.get $3 + local.get $18 f64.const 100 f64.lt if - local.get $4 - local.get $3 + local.get $17 + local.get $18 call $~lib/map/Map#has if i32.const 0 @@ -21131,15 +21296,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 - local.get $3 + local.get $17 + local.get $18 + local.get $18 i32.trunc_f64_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $4 - local.get $3 + local.get $17 + local.get $18 call $~lib/map/Map#has i32.eqz if @@ -21150,10 +21315,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $17 + local.get $18 call $~lib/map/Map#get - local.get $3 + local.get $18 i32.trunc_f64_s i32.const 10 i32.add @@ -21166,14 +21331,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $18 f64.const 1 f64.add - local.set $3 + local.set $18 br $for-loop|0 end end - local.get $4 + local.get $17 i32.load offset=20 i32.const 100 i32.ne @@ -21186,14 +21351,14 @@ unreachable end f64.const 0 - local.set $3 + local.set $18 loop $for-loop|1 - local.get $3 + local.get $18 f64.const 100 f64.lt if - local.get $4 - local.get $3 + local.get $17 + local.get $18 call $~lib/map/Map#has i32.eqz if @@ -21204,10 +21369,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $17 + local.get $18 call $~lib/map/Map#get - local.get $3 + local.get $18 i32.trunc_f64_s i32.const 10 i32.add @@ -21220,15 +21385,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 - local.get $3 + local.get $17 + local.get $18 + local.get $18 i32.trunc_f64_s i32.const 20 i32.add call $~lib/map/Map#set - local.get $4 - local.get $3 + local.get $17 + local.get $18 call $~lib/map/Map#has i32.eqz if @@ -21239,10 +21404,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $17 + local.get $18 call $~lib/map/Map#get - local.get $3 + local.get $18 i32.trunc_f64_s i32.const 20 i32.add @@ -21255,14 +21420,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $18 f64.const 1 f64.add - local.set $3 + local.set $18 br $for-loop|1 end end - local.get $4 + local.get $17 i32.load offset=20 i32.const 100 i32.ne @@ -21285,17 +21450,17 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $16 i32.const 0 i32.store - local.get $4 + local.get $17 i32.load offset=8 - local.set $12 - local.get $4 + local.set $10 + local.get $17 i32.load offset=16 - local.tee $13 - local.set $1 - local.get $7 + local.tee $9 + local.set $2 + local.get $16 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -21304,31 +21469,28 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $1 i64.const 0 i64.store - local.get $5 + local.get $1 i32.const 16 i32.const 30 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $1 i32.store - local.get $6 + local.get $1 i32.const 0 i32.store - local.get $6 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $6 + local.get $1 i32.const 0 i32.store offset=4 - local.get $6 + local.get $1 i32.const 0 i32.store offset=8 - local.get $6 + local.get $1 i32.const 0 i32.store offset=12 - local.get $1 + local.get $2 i32.const 134217727 i32.gt_u if @@ -21340,55 +21502,59 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.const 8 - local.get $1 + local.get $2 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $9 + local.tee $14 i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $3 i32.store offset=4 - local.get $5 - local.get $9 + local.get $3 + local.get $14 call $~lib/memory/memory.fill - local.get $6 - local.get $5 + local.get $1 + local.get $3 i32.store - local.get $6 - local.get $5 - call $~lib/rt/itcms/__link - local.get $6 - local.get $5 + local.get $3 + if + local.get $1 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $1 + local.get $3 i32.store offset=4 - local.get $6 - local.get $9 + local.get $1 + local.get $14 i32.store offset=8 - local.get $6 local.get $1 + local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 - local.get $6 + local.get $16 + local.get $1 + local.tee $3 i32.store loop $for-loop|01 - local.get $2 - local.get $13 - i32.lt_s + local.get $9 + local.get $15 + i32.gt_s if - local.get $2 + local.get $15 i32.const 4 i32.shl - local.get $12 + local.get $10 i32.add - local.tee $5 + local.tee $2 i32.load offset=12 i32.const 1 i32.and @@ -21399,10 +21565,10 @@ i32.const 1 i32.add local.set $0 - local.get $5 + local.get $2 f64.load - local.set $3 - local.get $6 + local.set $18 + local.get $3 i32.load offset=12 local.get $1 i32.le_u @@ -21418,52 +21584,52 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $3 local.get $1 i32.const 1 i32.add - local.tee $5 + local.tee $2 i32.const 3 i32.const 1 call $~lib/array/ensureCapacity - local.get $6 - local.get $5 + local.get $3 + local.get $2 i32.store offset=12 end - local.get $6 + local.get $3 i32.load offset=4 local.get $1 i32.const 3 i32.shl i32.add - local.get $3 + local.get $18 f64.store end - local.get $2 + local.get $15 i32.const 1 i32.add - local.set $2 + local.set $15 br $for-loop|01 end end - local.get $6 + local.get $3 local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $6 + local.get $3 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $17 call $~lib/map/Map#values - local.tee $13 + local.tee $9 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -21487,22 +21653,28 @@ local.get $1 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $0 i32.store - local.get $1 - local.get $5 - call $~lib/rt/itcms/__link + local.get $0 + if + local.get $1 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $1 i32.const 3 i32.store offset=4 local.get $1 i32.const 96 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $0 i32.store offset=8 - local.get $1 - local.get $5 - call $~lib/rt/itcms/__link + local.get $0 + if + local.get $1 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $1 i32.const 4 i32.store offset=12 @@ -21523,14 +21695,14 @@ local.tee $11 i32.store offset=16 loop $for-loop|2 - local.get $6 + local.get $3 i32.load offset=12 - local.get $10 + local.get $12 i32.gt_s if - local.get $6 + local.get $3 i32.load offset=12 - local.get $10 + local.get $12 i32.le_u if i32.const 1248 @@ -21540,20 +21712,20 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $3 i32.load offset=4 - local.get $10 + local.get $12 i32.const 3 i32.shl i32.add f64.load - local.set $3 - local.get $13 - local.get $10 + local.set $18 + local.get $9 + local.get $12 call $~lib/array/Array#__get - local.set $12 - local.get $4 - local.get $3 + local.set $10 + local.get $17 + local.get $18 call $~lib/map/Map#has i32.eqz if @@ -21564,8 +21736,8 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $12 + local.get $17 + local.get $10 i32.const 20 i32.sub f64.convert_i32_s @@ -21592,9 +21764,9 @@ i32.store local.get $1 i32.load - local.get $3 + local.get $18 i64.reinterpret_f64 - local.tee $14 + local.tee $8 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -21604,7 +21776,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $14 + local.get $8 i64.const 32 i64.shr_u i32.wrap_i64 @@ -21634,7 +21806,7 @@ i32.shr_u local.get $0 i32.xor - local.tee $15 + local.tee $7 local.get $1 i32.load offset=4 i32.and @@ -21649,19 +21821,19 @@ if local.get $0 i32.load offset=16 - local.tee $2 + local.tee $15 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $18 local.get $0 f64.load f64.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $2 + local.get $15 i32.const -2 i32.and local.set $0 @@ -21674,7 +21846,7 @@ local.get $0 if local.get $0 - local.get $3 + local.get $18 f64.store offset=8 else local.get $1 @@ -21703,7 +21875,7 @@ i32.const 1 i32.or end - local.set $5 + local.set $15 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -21717,14 +21889,14 @@ i64.const 0 i64.store local.get $0 - local.get $5 + local.get $15 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $9 + local.tee $14 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -21732,7 +21904,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $16 + local.tee $6 i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -21740,40 +21912,40 @@ i32.store offset=4 local.get $1 i32.load offset=8 - local.tee $7 + local.tee $16 local.get $1 i32.load offset=16 i32.const 24 i32.mul i32.add - local.set $17 + local.set $5 local.get $2 local.set $0 loop $while-continue|00 - local.get $7 - local.get $17 + local.get $5 + local.get $16 i32.ne if - local.get $7 + local.get $16 i32.load offset=16 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $7 + local.get $16 f64.load - local.tee $18 + local.tee $4 f64.store local.get $0 - local.get $7 + local.get $16 f64.load offset=8 f64.store offset=8 local.get $0 - local.get $5 - local.get $18 + local.get $15 + local.get $4 i64.reinterpret_f64 - local.tee $14 + local.tee $8 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -21783,7 +21955,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $14 + local.get $8 i64.const 32 i64.shr_u i32.wrap_i64 @@ -21794,34 +21966,34 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $8 + local.tee $13 i32.const 15 i32.shr_u - local.get $8 + local.get $13 i32.xor i32.const -2048144777 i32.mul - local.tee $8 + local.tee $13 i32.const 13 i32.shr_u - local.get $8 + local.get $13 i32.xor i32.const -1028477379 i32.mul - local.tee $8 + local.tee $13 i32.const 16 i32.shr_u - local.get $8 + local.get $13 i32.xor i32.and i32.const 2 i32.shl - local.get $9 + local.get $14 i32.add - local.tee $8 + local.tee $13 i32.load i32.store offset=16 - local.get $8 + local.get $13 local.get $0 i32.store local.get $0 @@ -21829,30 +22001,36 @@ i32.add local.set $0 end - local.get $7 + local.get $16 i32.const 24 i32.add - local.set $7 + local.set $16 br $while-continue|00 end end local.get $1 - local.get $9 + local.get $14 i32.store + local.get $14 + if + local.get $1 + local.get $14 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $1 - local.get $9 - call $~lib/rt/itcms/__link - local.get $1 - local.get $5 + local.get $15 i32.store offset=4 local.get $1 local.get $2 i32.store offset=8 - local.get $1 local.get $2 - call $~lib/rt/itcms/__link + if + local.get $1 + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $1 - local.get $16 + local.get $6 i32.store offset=12 local.get $1 local.get $1 @@ -21871,20 +22049,20 @@ local.get $1 local.get $1 i32.load offset=16 - local.tee $5 + local.tee $2 i32.const 1 i32.add i32.store offset=16 - local.get $5 + local.get $2 i32.const 24 i32.mul local.get $0 i32.add local.tee $0 - local.get $3 + local.get $18 f64.store local.get $0 - local.get $3 + local.get $18 f64.store offset=8 local.get $1 local.get $1 @@ -21897,15 +22075,15 @@ i32.load local.get $1 i32.load offset=4 - local.get $15 + local.get $7 i32.and i32.const 2 i32.shl i32.add - local.tee $5 + local.tee $2 i32.load i32.store offset=16 - local.get $5 + local.get $2 local.get $0 i32.store end @@ -21914,16 +22092,16 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $11 - local.get $12 + local.get $10 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $10 + local.get $12 i32.const 1 i32.add - local.set $10 + local.set $12 br $for-loop|2 end end @@ -21952,14 +22130,14 @@ unreachable end f64.const 0 - local.set $3 + local.set $18 loop $for-loop|3 - local.get $3 + local.get $18 f64.const 50 f64.lt if - local.get $4 - local.get $3 + local.get $17 + local.get $18 call $~lib/map/Map#has i32.eqz if @@ -21970,10 +22148,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $17 + local.get $18 call $~lib/map/Map#get - local.get $3 + local.get $18 i32.trunc_f64_s i32.const 20 i32.add @@ -21986,11 +22164,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $17 + local.get $18 call $~lib/map/Map#delete - local.get $4 - local.get $3 + local.get $17 + local.get $18 call $~lib/map/Map#has if i32.const 0 @@ -22000,14 +22178,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $18 f64.const 1 f64.add - local.set $3 + local.set $18 br $for-loop|3 end end - local.get $4 + local.get $17 i32.load offset=20 i32.const 50 i32.ne @@ -22020,14 +22198,14 @@ unreachable end f64.const 0 - local.set $3 + local.set $18 loop $for-loop|4 - local.get $3 + local.get $18 f64.const 50 f64.lt if - local.get $4 - local.get $3 + local.get $17 + local.get $18 call $~lib/map/Map#has if i32.const 0 @@ -22037,15 +22215,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 - local.get $3 + local.get $17 + local.get $18 + local.get $18 i32.trunc_f64_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $4 - local.get $3 + local.get $17 + local.get $18 call $~lib/map/Map#has i32.eqz if @@ -22056,11 +22234,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $17 + local.get $18 call $~lib/map/Map#delete - local.get $4 - local.get $3 + local.get $17 + local.get $18 call $~lib/map/Map#has if i32.const 0 @@ -22070,14 +22248,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $18 f64.const 1 f64.add - local.set $3 + local.set $18 br $for-loop|4 end end - local.get $4 + local.get $17 i32.load offset=20 i32.const 50 i32.ne @@ -22089,9 +22267,9 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $17 call $~lib/map/Map#clear - local.get $4 + local.get $17 i32.load offset=20 if i32.const 0 @@ -22115,6 +22293,7 @@ unreachable ) (func $~lib/rt/__visit_members (param $0 i32) + (local $1 i32) block $folding-inner1 block $folding-inner0 block $invalid @@ -22136,23 +22315,39 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end unreachable end local.get $0 + local.tee $1 i32.load - call $~lib/rt/itcms/__visit - local.get $0 + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end + local.get $1 i32.load offset=8 - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end ) (func $~start memory.size @@ -22490,9 +22685,6 @@ i32.store local.get $1 i32.const 0 - call $~lib/rt/itcms/__link - local.get $1 - i32.const 0 i32.store offset=4 local.get $1 i32.const 0 @@ -22531,9 +22723,12 @@ local.get $1 local.get $2 i32.store - local.get $1 local.get $2 - call $~lib/rt/itcms/__link + if + local.get $1 + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $1 local.get $2 i32.store offset=4 @@ -22664,9 +22859,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 3 i32.store offset=4 @@ -22675,9 +22873,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=8 - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 4 i32.store offset=12 @@ -24406,4 +24607,72 @@ i32.add global.set $~lib/memory/__stack_pointer ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) + (func $byn-split-outlined-A$~lib/rt/itcms/__link (param $0 i32) (param $1 i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $1 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $0 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $0 + i32.const 3 + i32.eq + i32.and + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + end + end + end + ) ) diff --git a/tests/compiler/std/new.optimized.wat b/tests/compiler/std/new.optimized.wat index 3aa1eed401..f5fabf15f7 100644 --- a/tests/compiler/std/new.optimized.wat +++ b/tests/compiler/std/new.optimized.wat @@ -1,7 +1,7 @@ (module (type $none_=>_none (func)) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $none_=>_i32 (func (result i32))) @@ -41,12 +41,15 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -85,160 +88,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17860 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1440 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1248 - i32.const 1312 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1444 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -918,7 +767,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1513,7 +1366,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1524,4 +1380,153 @@ (func $~start call $start:std/new ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17860 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1440 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1248 + i32.const 1312 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1444 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/std/operator-overloading.optimized.wat b/tests/compiler/std/operator-overloading.optimized.wat index 92f138b46f..31b8b1f0b4 100644 --- a/tests/compiler/std/operator-overloading.optimized.wat +++ b/tests/compiler/std/operator-overloading.optimized.wat @@ -1,9 +1,9 @@ (module (type $none_=>_none (func)) (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) (type $i32_=>_i32 (func (param i32) (result i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $none_=>_i32 (func (result i32))) @@ -144,160 +144,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17956 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1520 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1248 - i32.const 1312 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1524 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -977,7 +823,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1667,360 +1517,537 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/a2 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/a local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/s1 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/s2 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/s local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/m1 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/m2 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/m local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/d1 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/d2 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/d local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/f1 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/f2 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/f local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/p1 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/p2 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/p local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/n1 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/n2 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/n local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/o1 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/o2 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/o local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/x1 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/x2 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/x local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/eq1 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/eq2 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/eq3 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/eq4 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/gt1 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/gt2 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/gte1 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/gte2 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/le1 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/le2 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/leq1 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/leq2 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/shr local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/sres local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/shu local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/ures local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/shl local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/pos local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/pres local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/neg local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/nres local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/not local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/res local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/excl local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/incdec local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/tmp local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/ais1 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/ais2 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/ais local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/aii1 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/aii2 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/operator-overloading/aii local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit ) (func $~lib/rt/__visit_members (param $0 i32) block $invalid @@ -2045,7 +2072,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -3622,4 +3652,153 @@ global.set $~lib/memory/__stack_pointer local.get $2 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17956 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1520 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1248 + i32.const 1312 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1524 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/std/set.optimized.wat b/tests/compiler/std/set.optimized.wat index d537484f7c..aea22b79a6 100644 --- a/tests/compiler/std/set.optimized.wat +++ b/tests/compiler/std/set.optimized.wat @@ -55,11 +55,11 @@ (local $0 i32) (local $1 i32) i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1456 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -232,30 +232,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -935,7 +911,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1726,60 +1706,6 @@ call $~lib/memory/memory.fill local.get $1 ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) - local.get $1 - i32.eqz - if - return - end - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - i32.load offset=4 - i32.const 3 - i32.and - local.tee $0 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $0 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) (func $~lib/set/Set#rehash (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -1804,26 +1730,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -1831,33 +1757,33 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $7 + local.tee $5 local.get $0 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $4 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $5 + local.get $8 i32.ne if - local.get $7 + local.get $5 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $7 + local.get $5 i32.load8_s - local.tee $8 + local.tee $4 i32.store8 local.get $2 - local.get $8 + local.get $4 i32.extend8_s i32.const -1028477379 i32.mul @@ -1867,22 +1793,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u i32.xor @@ -1892,10 +1818,10 @@ i32.shl local.get $6 i32.add - local.tee $8 + local.tee $4 i32.load i32.store offset=4 - local.get $8 + local.get $4 local.get $2 i32.store local.get $2 @@ -1903,30 +1829,36 @@ i32.add local.set $2 end - local.get $7 + local.get $5 i32.const 8 i32.add - local.set $7 + local.set $5 br $while-continue|0 end end local.get $0 local.get $6 i32.store - local.get $0 local.get $6 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $6 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $1 i32.store offset=4 local.get $0 local.get $3 i32.store offset=8 - local.get $0 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -3095,9 +3027,12 @@ local.get $0 local.get $1 i32.store offset=4 - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end end local.get $0 local.get $6 @@ -3292,9 +3227,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 3 i32.store offset=4 @@ -3303,9 +3241,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=8 - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 4 i32.store offset=12 @@ -3339,27 +3280,27 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i64.const 0 i64.store - local.get $1 + local.get $3 i32.const 0 i32.store offset=8 - local.get $1 + local.get $3 call $~lib/set/Set#constructor - local.tee $2 + local.tee $3 i32.store loop $for-loop|1 - local.get $0 + local.get $1 i32.extend8_s i32.const 100 i32.lt_s if - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $1 i32.extend8_s i32.const -1028477379 i32.mul @@ -3369,62 +3310,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load8_u - local.get $0 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|0 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 if i32.const 0 i32.const 1568 @@ -3433,14 +3374,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $0 + local.get $3 + local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $1 i32.extend8_s i32.const -1028477379 i32.mul @@ -3450,62 +3391,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load8_u - local.get $0 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find1 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|02 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -3515,14 +3456,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $2 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -3535,18 +3476,18 @@ unreachable end i32.const 50 - local.set $0 + local.set $1 loop $for-loop|3 - local.get $0 + local.get $1 i32.extend8_s i32.const 100 i32.lt_s if - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $1 i32.extend8_s i32.const -1028477379 i32.mul @@ -3556,62 +3497,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load8_u - local.get $0 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find4 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|05 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -3621,14 +3562,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $0 + local.get $3 + local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $1 i32.extend8_s i32.const -1028477379 i32.mul @@ -3638,62 +3579,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load8_u - local.get $0 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find7 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|08 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -3703,14 +3644,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|3 end end - local.get $2 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -3724,8 +3665,6 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - i32.const 0 - local.set $0 local.get $1 i32.const 4 i32.sub @@ -3735,17 +3674,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $6 i32.const 0 i32.store - local.get $2 + local.get $3 i32.load offset=8 local.set $10 - local.get $2 + local.get $3 i32.load offset=16 local.tee $11 local.set $5 - local.get $1 + local.get $6 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -3754,28 +3693,25 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $1 i32.const 16 i32.const 4 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.store - local.get $3 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $3 + local.get $1 i32.const 0 i32.store offset=4 - local.get $3 + local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $1 i32.const 0 i32.store offset=12 local.get $5 @@ -3799,32 +3735,35 @@ local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $2 i32.store offset=4 - local.get $6 + local.get $2 local.get $8 call $~lib/memory/memory.fill - local.get $3 - local.get $6 + local.get $1 + local.get $2 i32.store - local.get $3 - local.get $6 - call $~lib/rt/itcms/__link - local.get $3 - local.get $6 + local.get $2 + if + local.get $1 + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $1 + local.get $2 i32.store offset=4 - local.get $3 + local.get $1 local.get $8 i32.store offset=8 - local.get $3 + local.get $1 local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $6 local.get $1 - local.get $3 i32.store loop $for-loop|0 local.get $7 @@ -3836,15 +3775,15 @@ i32.shl local.get $10 i32.add - local.tee $1 + local.tee $2 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $3 - local.get $0 local.get $1 + local.get $0 + local.get $2 i32.load8_s call $~lib/array/Array#__set local.get $0 @@ -3859,34 +3798,34 @@ br $for-loop|0 end end - local.get $3 + local.get $1 local.get $0 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $1 + local.tee $5 i32.store offset=8 loop $for-loop|4 - local.get $3 + local.get $1 i32.load offset=12 local.get $4 i32.gt_s if - local.get $3 + local.get $1 local.get $4 call $~lib/array/Array#__get - local.tee $6 + local.tee $7 i32.extend8_s i32.const -1028477379 i32.mul @@ -3896,67 +3835,67 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $2 i32.const 15 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $2 i32.const 13 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.set $0 - local.get $2 + local.set $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $2 i32.const 16 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $2 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $0 + local.get $2 if - local.get $0 + local.get $2 i32.load offset=4 - local.tee $7 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $2 i32.load8_u - local.get $6 + local.get $7 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $7 + local.get $6 i32.const -2 i32.and - local.set $0 + local.set $2 br $while-continue|011 end end i32.const 0 - local.set $0 + local.set $2 end - local.get $0 + local.get $2 i32.eqz if i32.const 0 @@ -3966,8 +3905,8 @@ call $~lib/builtins/abort unreachable end + local.get $5 local.get $1 - local.get $3 local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#add @@ -3978,9 +3917,9 @@ br $for-loop|4 end end - local.get $1 + local.get $5 i32.load offset=20 - local.get $2 + local.get $3 i32.load offset=20 i32.ne if @@ -3999,9 +3938,9 @@ i32.const 50 i32.lt_s if - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.extend8_s @@ -4013,44 +3952,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find13 loop $while-continue|014 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load8_u local.get $4 i32.const 255 @@ -4058,17 +3997,17 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find13 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|014 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -4078,12 +4017,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $4 call $~lib/set/Set#delete - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.extend8_s @@ -4095,44 +4034,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find16 loop $while-continue|017 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load8_u local.get $4 i32.const 255 @@ -4140,17 +4079,17 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find16 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|017 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -4166,7 +4105,7 @@ br $for-loop|6 end end - local.get $2 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -4186,9 +4125,9 @@ i32.const 50 i32.lt_s if - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.extend8_s @@ -4200,44 +4139,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find19 loop $while-continue|020 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load8_u local.get $4 i32.const 255 @@ -4245,17 +4184,17 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find19 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|020 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -4264,12 +4203,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $4 call $~lib/set/Set#add - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.extend8_s @@ -4281,44 +4220,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find22 loop $while-continue|023 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load8_u local.get $4 i32.const 255 @@ -4326,17 +4265,17 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find22 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|023 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -4346,12 +4285,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $4 call $~lib/set/Set#delete - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.extend8_s @@ -4363,44 +4302,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find25 loop $while-continue|026 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load8_u local.get $4 i32.const 255 @@ -4408,17 +4347,17 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find25 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|026 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -4434,7 +4373,7 @@ br $for-loop|8 end end - local.get $2 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -4446,9 +4385,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 call $~lib/set/Set#clear - local.get $2 + local.get $3 i32.load offset=20 if i32.const 0 @@ -4495,26 +4434,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -4522,33 +4461,33 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $7 + local.tee $5 local.get $0 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $4 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $5 + local.get $8 i32.ne if - local.get $7 + local.get $5 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $7 + local.get $5 i32.load8_u - local.tee $8 + local.tee $4 i32.store8 local.get $2 - local.get $8 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761394 @@ -4557,22 +4496,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u i32.xor @@ -4582,10 +4521,10 @@ i32.shl local.get $6 i32.add - local.tee $8 + local.tee $4 i32.load i32.store offset=4 - local.get $8 + local.get $4 local.get $2 i32.store local.get $2 @@ -4593,30 +4532,36 @@ i32.add local.set $2 end - local.get $7 + local.get $5 i32.const 8 i32.add - local.set $7 + local.set $5 br $while-continue|0 end end local.get $0 local.get $6 i32.store - local.get $0 local.get $6 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $6 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $1 i32.store offset=4 local.get $0 local.get $3 i32.store offset=8 - local.get $0 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -4944,28 +4889,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i64.const 0 i64.store - local.get $1 + local.get $3 i32.const 0 i32.store offset=8 - local.get $1 + local.get $3 call $~lib/set/Set#constructor - local.tee $2 + local.tee $3 i32.store loop $for-loop|1 - local.get $0 + local.get $1 i32.const 255 i32.and i32.const 100 i32.lt_u if - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $1 i32.const 255 i32.and i32.const -1028477379 @@ -4976,62 +4921,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load8_u - local.get $0 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|0 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 if i32.const 0 i32.const 1568 @@ -5040,14 +4985,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $0 + local.get $3 + local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $1 i32.const 255 i32.and i32.const -1028477379 @@ -5058,62 +5003,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load8_u - local.get $0 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find1 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|02 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -5123,14 +5068,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $2 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -5143,19 +5088,19 @@ unreachable end i32.const 50 - local.set $0 + local.set $1 loop $for-loop|3 - local.get $0 + local.get $1 i32.const 255 i32.and i32.const 100 i32.lt_u if - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $1 i32.const 255 i32.and i32.const -1028477379 @@ -5166,62 +5111,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load8_u - local.get $0 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find4 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|05 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -5231,14 +5176,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $0 + local.get $3 + local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $1 i32.const 255 i32.and i32.const -1028477379 @@ -5249,62 +5194,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load8_u - local.get $0 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find7 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|08 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -5314,14 +5259,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|3 end end - local.get $2 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -5335,8 +5280,6 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - i32.const 0 - local.set $0 local.get $1 i32.const 4 i32.sub @@ -5346,17 +5289,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $6 i32.const 0 i32.store - local.get $2 + local.get $3 i32.load offset=8 local.set $10 - local.get $2 + local.get $3 i32.load offset=16 local.tee $11 local.set $5 - local.get $1 + local.get $6 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -5365,28 +5308,25 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $1 i32.const 16 i32.const 6 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.store - local.get $3 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $3 + local.get $1 i32.const 0 i32.store offset=4 - local.get $3 + local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $1 i32.const 0 i32.store offset=12 local.get $5 @@ -5410,32 +5350,35 @@ local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $2 i32.store offset=4 - local.get $6 + local.get $2 local.get $8 call $~lib/memory/memory.fill - local.get $3 - local.get $6 + local.get $1 + local.get $2 i32.store - local.get $3 - local.get $6 - call $~lib/rt/itcms/__link - local.get $3 - local.get $6 + local.get $2 + if + local.get $1 + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $1 + local.get $2 i32.store offset=4 - local.get $3 + local.get $1 local.get $8 i32.store offset=8 - local.get $3 + local.get $1 local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $6 local.get $1 - local.get $3 i32.store loop $for-loop|0 local.get $7 @@ -5447,15 +5390,15 @@ i32.shl local.get $10 i32.add - local.tee $1 + local.tee $2 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $3 - local.get $0 local.get $1 + local.get $0 + local.get $2 i32.load8_u call $~lib/array/Array#__set local.get $0 @@ -5470,34 +5413,34 @@ br $for-loop|0 end end - local.get $3 + local.get $1 local.get $0 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $1 + local.tee $5 i32.store offset=8 loop $for-loop|4 - local.get $3 + local.get $1 i32.load offset=12 local.get $4 i32.gt_s if - local.get $3 + local.get $1 local.get $4 call $~lib/array/Array#__get - local.tee $6 + local.tee $7 i32.const 255 i32.and i32.const -1028477379 @@ -5508,67 +5451,67 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $2 i32.const 15 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $2 i32.const 13 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.set $0 - local.get $2 + local.set $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $2 i32.const 16 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $2 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $0 + local.get $2 if - local.get $0 + local.get $2 i32.load offset=4 - local.tee $7 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $2 i32.load8_u - local.get $6 + local.get $7 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $7 + local.get $6 i32.const -2 i32.and - local.set $0 + local.set $2 br $while-continue|011 end end i32.const 0 - local.set $0 + local.set $2 end - local.get $0 + local.get $2 i32.eqz if i32.const 0 @@ -5578,8 +5521,8 @@ call $~lib/builtins/abort unreachable end + local.get $5 local.get $1 - local.get $3 local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#add @@ -5590,9 +5533,9 @@ br $for-loop|4 end end - local.get $1 + local.get $5 i32.load offset=20 - local.get $2 + local.get $3 i32.load offset=20 i32.ne if @@ -5612,9 +5555,9 @@ i32.const 50 i32.lt_u if - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.const 255 @@ -5627,44 +5570,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find13 loop $while-continue|014 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load8_u local.get $4 i32.const 255 @@ -5672,17 +5615,17 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find13 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|014 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -5692,12 +5635,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $4 call $~lib/set/Set#delete - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.const 255 @@ -5710,44 +5653,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find16 loop $while-continue|017 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load8_u local.get $4 i32.const 255 @@ -5755,17 +5698,17 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find16 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|017 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -5781,7 +5724,7 @@ br $for-loop|6 end end - local.get $2 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -5802,9 +5745,9 @@ i32.const 50 i32.lt_u if - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.const 255 @@ -5817,44 +5760,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find19 loop $while-continue|020 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load8_u local.get $4 i32.const 255 @@ -5862,17 +5805,17 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find19 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|020 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -5881,12 +5824,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $4 call $~lib/set/Set#add - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.const 255 @@ -5899,44 +5842,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find22 loop $while-continue|023 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load8_u local.get $4 i32.const 255 @@ -5944,17 +5887,17 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find22 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|023 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -5964,12 +5907,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $4 call $~lib/set/Set#delete - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.const 255 @@ -5982,44 +5925,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find25 loop $while-continue|026 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load8_u local.get $4 i32.const 255 @@ -6027,17 +5970,17 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find25 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|026 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -6053,7 +5996,7 @@ br $for-loop|8 end end - local.get $2 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -6065,9 +6008,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 call $~lib/set/Set#clear - local.get $2 + local.get $3 i32.load offset=20 if i32.const 0 @@ -6114,26 +6057,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -6141,33 +6084,33 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $7 + local.tee $5 local.get $0 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $4 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $5 + local.get $8 i32.ne if - local.get $7 + local.get $5 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $7 + local.get $5 i32.load16_s - local.tee $8 + local.tee $4 i32.store16 local.get $2 - local.get $8 + local.get $4 i32.extend16_s i32.const -1028477379 i32.mul @@ -6177,22 +6120,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u i32.xor @@ -6202,10 +6145,10 @@ i32.shl local.get $6 i32.add - local.tee $8 + local.tee $4 i32.load i32.store offset=4 - local.get $8 + local.get $4 local.get $2 i32.store local.get $2 @@ -6213,30 +6156,36 @@ i32.add local.set $2 end - local.get $7 + local.get $5 i32.const 8 i32.add - local.set $7 + local.set $5 br $while-continue|0 end end local.get $0 local.get $6 i32.store - local.get $0 local.get $6 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $6 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $1 i32.store offset=4 local.get $0 local.get $3 i32.store offset=8 - local.get $0 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -6603,27 +6552,27 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i64.const 0 i64.store - local.get $1 + local.get $3 i32.const 0 i32.store offset=8 - local.get $1 + local.get $3 call $~lib/set/Set#constructor - local.tee $2 + local.tee $3 i32.store loop $for-loop|1 - local.get $0 + local.get $1 i32.extend16_s i32.const 100 i32.lt_s if - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $1 i32.extend16_s i32.const -1028477379 i32.mul @@ -6633,62 +6582,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load16_u - local.get $0 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|0 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 if i32.const 0 i32.const 1568 @@ -6697,14 +6646,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $0 + local.get $3 + local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $1 i32.extend16_s i32.const -1028477379 i32.mul @@ -6714,62 +6663,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load16_u - local.get $0 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find1 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|02 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -6779,14 +6728,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $2 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -6799,18 +6748,18 @@ unreachable end i32.const 50 - local.set $0 + local.set $1 loop $for-loop|3 - local.get $0 + local.get $1 i32.extend16_s i32.const 100 i32.lt_s if - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $1 i32.extend16_s i32.const -1028477379 i32.mul @@ -6820,62 +6769,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load16_u - local.get $0 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find4 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|05 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -6885,14 +6834,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $0 + local.get $3 + local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $1 i32.extend16_s i32.const -1028477379 i32.mul @@ -6902,62 +6851,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load16_u - local.get $0 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find7 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|08 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -6967,14 +6916,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|3 end end - local.get $2 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -6988,8 +6937,6 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - i32.const 0 - local.set $0 local.get $1 i32.const 4 i32.sub @@ -6999,17 +6946,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $6 i32.const 0 i32.store - local.get $2 + local.get $3 i32.load offset=8 local.set $10 - local.get $2 + local.get $3 i32.load offset=16 local.tee $11 local.set $5 - local.get $1 + local.get $6 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -7018,28 +6965,25 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $1 i32.const 16 i32.const 8 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.store - local.get $3 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $3 + local.get $1 i32.const 0 i32.store offset=4 - local.get $3 + local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $1 i32.const 0 i32.store offset=12 local.get $5 @@ -7065,32 +7009,35 @@ local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $2 i32.store offset=4 - local.get $6 + local.get $2 local.get $8 call $~lib/memory/memory.fill - local.get $3 - local.get $6 + local.get $1 + local.get $2 i32.store - local.get $3 - local.get $6 - call $~lib/rt/itcms/__link - local.get $3 - local.get $6 + local.get $2 + if + local.get $1 + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $1 + local.get $2 i32.store offset=4 - local.get $3 + local.get $1 local.get $8 i32.store offset=8 - local.get $3 + local.get $1 local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $6 local.get $1 - local.get $3 i32.store loop $for-loop|0 local.get $7 @@ -7102,15 +7049,15 @@ i32.shl local.get $10 i32.add - local.tee $1 + local.tee $2 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $3 - local.get $0 local.get $1 + local.get $0 + local.get $2 i32.load16_s call $~lib/array/Array#__set local.get $0 @@ -7125,34 +7072,34 @@ br $for-loop|0 end end - local.get $3 + local.get $1 local.get $0 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $1 + local.tee $5 i32.store offset=8 loop $for-loop|4 - local.get $3 + local.get $1 i32.load offset=12 local.get $4 i32.gt_s if - local.get $3 + local.get $1 local.get $4 call $~lib/array/Array#__get - local.tee $6 + local.tee $7 i32.extend16_s i32.const -1028477379 i32.mul @@ -7162,67 +7109,67 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $2 i32.const 15 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $2 i32.const 13 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.set $0 - local.get $2 + local.set $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $2 i32.const 16 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $2 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $0 + local.get $2 if - local.get $0 + local.get $2 i32.load offset=4 - local.tee $7 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $2 i32.load16_u - local.get $6 + local.get $7 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $7 + local.get $6 i32.const -2 i32.and - local.set $0 + local.set $2 br $while-continue|011 end end i32.const 0 - local.set $0 + local.set $2 end - local.get $0 + local.get $2 i32.eqz if i32.const 0 @@ -7232,8 +7179,8 @@ call $~lib/builtins/abort unreachable end + local.get $5 local.get $1 - local.get $3 local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#add @@ -7244,9 +7191,9 @@ br $for-loop|4 end end - local.get $1 + local.get $5 i32.load offset=20 - local.get $2 + local.get $3 i32.load offset=20 i32.ne if @@ -7265,9 +7212,9 @@ i32.const 50 i32.lt_s if - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.extend16_s @@ -7279,44 +7226,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find13 loop $while-continue|014 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load16_u local.get $4 i32.const 65535 @@ -7324,17 +7271,17 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find13 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|014 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -7344,12 +7291,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $4 call $~lib/set/Set#delete - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.extend16_s @@ -7361,44 +7308,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find16 loop $while-continue|017 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load16_u local.get $4 i32.const 65535 @@ -7406,17 +7353,17 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find16 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|017 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -7432,7 +7379,7 @@ br $for-loop|6 end end - local.get $2 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -7452,9 +7399,9 @@ i32.const 50 i32.lt_s if - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.extend16_s @@ -7466,44 +7413,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find19 loop $while-continue|020 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load16_u local.get $4 i32.const 65535 @@ -7511,17 +7458,17 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find19 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|020 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -7530,12 +7477,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $4 call $~lib/set/Set#add - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.extend16_s @@ -7547,44 +7494,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find22 loop $while-continue|023 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load16_u local.get $4 i32.const 65535 @@ -7592,17 +7539,17 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find22 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|023 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -7612,12 +7559,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $4 call $~lib/set/Set#delete - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.extend16_s @@ -7629,44 +7576,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find25 loop $while-continue|026 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load16_u local.get $4 i32.const 65535 @@ -7674,17 +7621,17 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find25 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|026 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -7700,7 +7647,7 @@ br $for-loop|8 end end - local.get $2 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -7712,9 +7659,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 call $~lib/set/Set#clear - local.get $2 + local.get $3 i32.load offset=20 if i32.const 0 @@ -7761,26 +7708,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -7788,33 +7735,33 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $7 + local.tee $5 local.get $0 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $4 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $5 + local.get $8 i32.ne if - local.get $7 + local.get $5 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $7 + local.get $5 i32.load16_u - local.tee $8 + local.tee $4 i32.store16 local.get $2 - local.get $8 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761395 @@ -7823,22 +7770,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u i32.xor @@ -7848,10 +7795,10 @@ i32.shl local.get $6 i32.add - local.tee $8 + local.tee $4 i32.load i32.store offset=4 - local.get $8 + local.get $4 local.get $2 i32.store local.get $2 @@ -7859,30 +7806,36 @@ i32.add local.set $2 end - local.get $7 + local.get $5 i32.const 8 i32.add - local.set $7 + local.set $5 br $while-continue|0 end end local.get $0 local.get $6 i32.store - local.get $0 local.get $6 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $6 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $1 i32.store offset=4 local.get $0 local.get $3 i32.store offset=8 - local.get $0 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -8212,28 +8165,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i64.const 0 i64.store - local.get $1 + local.get $3 i32.const 0 i32.store offset=8 - local.get $1 + local.get $3 call $~lib/set/Set#constructor - local.tee $2 + local.tee $3 i32.store loop $for-loop|1 - local.get $0 + local.get $1 i32.const 65535 i32.and i32.const 100 i32.lt_u if - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $1 i32.const 65535 i32.and i32.const -1028477379 @@ -8244,62 +8197,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load16_u - local.get $0 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|0 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 if i32.const 0 i32.const 1568 @@ -8308,14 +8261,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $0 + local.get $3 + local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $1 i32.const 65535 i32.and i32.const -1028477379 @@ -8326,62 +8279,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load16_u - local.get $0 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find1 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|02 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -8391,14 +8344,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $2 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -8411,19 +8364,19 @@ unreachable end i32.const 50 - local.set $0 + local.set $1 loop $for-loop|3 - local.get $0 + local.get $1 i32.const 65535 i32.and i32.const 100 i32.lt_u if - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $1 i32.const 65535 i32.and i32.const -1028477379 @@ -8434,62 +8387,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load16_u - local.get $0 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find4 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|05 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -8499,14 +8452,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $0 + local.get $3 + local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $1 i32.const 65535 i32.and i32.const -1028477379 @@ -8517,62 +8470,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load16_u - local.get $0 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find7 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|08 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -8582,14 +8535,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|3 end end - local.get $2 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -8603,8 +8556,6 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - i32.const 0 - local.set $0 local.get $1 i32.const 4 i32.sub @@ -8614,17 +8565,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $6 i32.const 0 i32.store - local.get $2 + local.get $3 i32.load offset=8 local.set $10 - local.get $2 + local.get $3 i32.load offset=16 local.tee $11 local.set $5 - local.get $1 + local.get $6 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -8633,28 +8584,25 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $1 i32.const 16 i32.const 10 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.store - local.get $3 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $3 + local.get $1 i32.const 0 i32.store offset=4 - local.get $3 + local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $1 i32.const 0 i32.store offset=12 local.get $5 @@ -8680,32 +8628,35 @@ local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $2 i32.store offset=4 - local.get $6 + local.get $2 local.get $8 call $~lib/memory/memory.fill - local.get $3 - local.get $6 + local.get $1 + local.get $2 i32.store - local.get $3 - local.get $6 - call $~lib/rt/itcms/__link - local.get $3 - local.get $6 + local.get $2 + if + local.get $1 + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $1 + local.get $2 i32.store offset=4 - local.get $3 + local.get $1 local.get $8 i32.store offset=8 - local.get $3 + local.get $1 local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $6 local.get $1 - local.get $3 i32.store loop $for-loop|0 local.get $7 @@ -8717,15 +8668,15 @@ i32.shl local.get $10 i32.add - local.tee $1 + local.tee $2 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $3 - local.get $0 local.get $1 + local.get $0 + local.get $2 i32.load16_u call $~lib/array/Array#__set local.get $0 @@ -8740,34 +8691,34 @@ br $for-loop|0 end end - local.get $3 + local.get $1 local.get $0 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $1 + local.tee $5 i32.store offset=8 loop $for-loop|4 - local.get $3 + local.get $1 i32.load offset=12 local.get $4 i32.gt_s if - local.get $3 + local.get $1 local.get $4 call $~lib/array/Array#__get - local.tee $6 + local.tee $7 i32.const 65535 i32.and i32.const -1028477379 @@ -8778,67 +8729,67 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $2 i32.const 15 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $2 i32.const 13 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.set $0 - local.get $2 + local.set $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $2 i32.const 16 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $2 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $0 + local.get $2 if - local.get $0 + local.get $2 i32.load offset=4 - local.tee $7 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $2 i32.load16_u - local.get $6 + local.get $7 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $7 + local.get $6 i32.const -2 i32.and - local.set $0 + local.set $2 br $while-continue|011 end end i32.const 0 - local.set $0 + local.set $2 end - local.get $0 + local.get $2 i32.eqz if i32.const 0 @@ -8848,8 +8799,8 @@ call $~lib/builtins/abort unreachable end + local.get $5 local.get $1 - local.get $3 local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#add @@ -8860,9 +8811,9 @@ br $for-loop|4 end end - local.get $1 + local.get $5 i32.load offset=20 - local.get $2 + local.get $3 i32.load offset=20 i32.ne if @@ -8882,9 +8833,9 @@ i32.const 50 i32.lt_u if - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.const 65535 @@ -8897,44 +8848,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find13 loop $while-continue|014 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load16_u local.get $4 i32.const 65535 @@ -8942,17 +8893,17 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find13 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|014 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -8962,12 +8913,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $4 call $~lib/set/Set#delete - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.const 65535 @@ -8980,44 +8931,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find16 loop $while-continue|017 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load16_u local.get $4 i32.const 65535 @@ -9025,17 +8976,17 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find16 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|017 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -9051,7 +9002,7 @@ br $for-loop|6 end end - local.get $2 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -9072,9 +9023,9 @@ i32.const 50 i32.lt_u if - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.const 65535 @@ -9087,44 +9038,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find19 loop $while-continue|020 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load16_u local.get $4 i32.const 65535 @@ -9132,17 +9083,17 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find19 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|020 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -9151,12 +9102,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $4 call $~lib/set/Set#add - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.const 65535 @@ -9169,44 +9120,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find22 loop $while-continue|023 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load16_u local.get $4 i32.const 65535 @@ -9214,17 +9165,17 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find22 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|023 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -9234,12 +9185,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $4 call $~lib/set/Set#delete - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.const 65535 @@ -9252,44 +9203,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find25 loop $while-continue|026 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load16_u local.get $4 i32.const 65535 @@ -9297,17 +9248,17 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find25 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|026 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -9323,7 +9274,7 @@ br $for-loop|8 end end - local.get $2 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -9335,9 +9286,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 call $~lib/set/Set#clear - local.get $2 + local.get $3 i32.load offset=20 if i32.const 0 @@ -9384,26 +9335,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -9411,33 +9362,33 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $7 + local.tee $5 local.get $0 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $4 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $5 + local.get $8 i32.ne if - local.get $7 + local.get $5 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $7 + local.get $5 i32.load - local.tee $8 + local.tee $4 i32.store local.get $2 - local.get $8 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -9446,22 +9397,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u i32.xor @@ -9471,10 +9422,10 @@ i32.shl local.get $6 i32.add - local.tee $8 + local.tee $4 i32.load i32.store offset=4 - local.get $8 + local.get $4 local.get $2 i32.store local.get $2 @@ -9482,30 +9433,36 @@ i32.add local.set $2 end - local.get $7 + local.get $5 i32.const 8 i32.add - local.set $7 + local.set $5 br $while-continue|0 end end local.get $0 local.get $6 i32.store - local.get $0 local.get $6 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $6 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $1 i32.store offset=4 local.get $0 local.get $3 i32.store offset=8 - local.get $0 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -9866,26 +9823,26 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i64.const 0 i64.store - local.get $1 + local.get $3 i32.const 0 i32.store offset=8 - local.get $1 + local.get $3 call $~lib/set/Set#constructor - local.tee $2 + local.tee $3 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 100 i32.lt_s if - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -9894,60 +9851,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 local.get $1 + local.get $2 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|0 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 if i32.const 0 i32.const 1568 @@ -9956,14 +9913,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $0 + local.get $3 + local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -9972,60 +9929,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 local.get $1 + local.get $2 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find1 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|02 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -10035,14 +9992,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end - local.get $2 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -10055,17 +10012,17 @@ unreachable end i32.const 50 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 100 i32.lt_s if - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10074,60 +10031,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 local.get $1 + local.get $2 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find4 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|05 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -10137,14 +10094,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $0 + local.get $3 + local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10153,60 +10110,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 local.get $1 + local.get $2 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find7 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|08 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -10216,14 +10173,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $2 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -10237,8 +10194,6 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - i32.const 0 - local.set $0 local.get $1 i32.const 4 i32.sub @@ -10248,17 +10203,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $6 i32.const 0 i32.store - local.get $2 + local.get $3 i32.load offset=8 local.set $10 - local.get $2 + local.get $3 i32.load offset=16 local.tee $11 local.set $5 - local.get $1 + local.get $6 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -10267,28 +10222,25 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $1 i32.const 16 i32.const 12 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.store - local.get $3 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $3 + local.get $1 i32.const 0 i32.store offset=4 - local.get $3 + local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $1 i32.const 0 i32.store offset=12 local.get $5 @@ -10314,32 +10266,35 @@ local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $2 i32.store offset=4 - local.get $6 + local.get $2 local.get $8 call $~lib/memory/memory.fill - local.get $3 - local.get $6 + local.get $1 + local.get $2 i32.store - local.get $3 - local.get $6 - call $~lib/rt/itcms/__link - local.get $3 - local.get $6 + local.get $2 + if + local.get $1 + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $1 + local.get $2 i32.store offset=4 - local.get $3 + local.get $1 local.get $8 i32.store offset=8 - local.get $3 + local.get $1 local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $6 local.get $1 - local.get $3 i32.store loop $for-loop|01 local.get $7 @@ -10351,15 +10306,15 @@ i32.shl local.get $10 i32.add - local.tee $1 + local.tee $2 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $3 - local.get $0 local.get $1 + local.get $0 + local.get $2 i32.load call $~lib/array/Array#__set local.get $0 @@ -10374,34 +10329,34 @@ br $for-loop|01 end end - local.get $3 + local.get $1 local.get $0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $1 + local.tee $5 i32.store offset=8 loop $for-loop|2 - local.get $3 + local.get $1 i32.load offset=12 local.get $4 i32.gt_s if - local.get $3 + local.get $1 local.get $4 call $~lib/array/Array#__get - local.tee $6 + local.tee $7 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10410,65 +10365,65 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $2 i32.const 15 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $2 i32.const 13 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.set $0 - local.get $2 + local.set $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $2 i32.const 16 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $2 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $0 + local.get $2 if - local.get $0 + local.get $2 i32.load offset=4 - local.tee $7 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 - local.get $0 + local.get $7 + local.get $2 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $7 + local.get $6 i32.const -2 i32.and - local.set $0 + local.set $2 br $while-continue|011 end end i32.const 0 - local.set $0 + local.set $2 end - local.get $0 + local.get $2 i32.eqz if i32.const 0 @@ -10478,8 +10433,8 @@ call $~lib/builtins/abort unreachable end + local.get $5 local.get $1 - local.get $3 local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#add @@ -10490,9 +10445,9 @@ br $for-loop|2 end end - local.get $1 + local.get $5 i32.load offset=20 - local.get $2 + local.get $3 i32.load offset=20 i32.ne if @@ -10510,9 +10465,9 @@ i32.const 50 i32.lt_s if - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.const -1028477379 @@ -10523,60 +10478,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find13 loop $while-continue|014 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $4 - local.get $0 + local.get $1 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find13 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|014 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -10586,12 +10541,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $4 call $~lib/set/Set#delete - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.const -1028477379 @@ -10602,60 +10557,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find16 loop $while-continue|017 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $4 - local.get $0 + local.get $1 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find16 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|017 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -10671,7 +10626,7 @@ br $for-loop|3 end end - local.get $2 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -10690,9 +10645,9 @@ i32.const 50 i32.lt_s if - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.const -1028477379 @@ -10703,60 +10658,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find19 loop $while-continue|020 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $4 - local.get $0 + local.get $1 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find19 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|020 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -10765,12 +10720,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $4 call $~lib/set/Set#add - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.const -1028477379 @@ -10781,60 +10736,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find22 loop $while-continue|023 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $4 - local.get $0 + local.get $1 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find22 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|023 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -10844,12 +10799,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $4 call $~lib/set/Set#delete - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.const -1028477379 @@ -10860,60 +10815,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find25 loop $while-continue|026 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $4 - local.get $0 + local.get $1 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find25 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|026 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -10929,7 +10884,7 @@ br $for-loop|4 end end - local.get $2 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -10941,9 +10896,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 call $~lib/set/Set#clear - local.get $2 + local.get $3 i32.load offset=20 if i32.const 0 @@ -10990,26 +10945,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -11017,33 +10972,33 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $7 + local.tee $5 local.get $0 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $4 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $5 + local.get $8 i32.ne if - local.get $7 + local.get $5 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $7 + local.get $5 i32.load - local.tee $8 + local.tee $4 i32.store local.get $2 - local.get $8 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -11052,22 +11007,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u i32.xor @@ -11077,10 +11032,10 @@ i32.shl local.get $6 i32.add - local.tee $8 + local.tee $4 i32.load i32.store offset=4 - local.get $8 + local.get $4 local.get $2 i32.store local.get $2 @@ -11088,30 +11043,36 @@ i32.add local.set $2 end - local.get $7 + local.get $5 i32.const 8 i32.add - local.set $7 + local.set $5 br $while-continue|0 end end local.get $0 local.get $6 i32.store - local.get $0 local.get $6 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $6 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $1 i32.store offset=4 local.get $0 local.get $3 i32.store offset=8 - local.get $0 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -11433,26 +11394,26 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i64.const 0 i64.store - local.get $1 + local.get $3 i32.const 0 i32.store offset=8 - local.get $1 + local.get $3 call $~lib/set/Set#constructor - local.tee $2 + local.tee $3 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 100 i32.lt_u if - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -11461,60 +11422,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 local.get $1 + local.get $2 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|0 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 if i32.const 0 i32.const 1568 @@ -11523,14 +11484,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $0 + local.get $3 + local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -11539,60 +11500,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 local.get $1 + local.get $2 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find1 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|02 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -11602,14 +11563,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end - local.get $2 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -11622,17 +11583,17 @@ unreachable end i32.const 50 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 100 i32.lt_u if - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -11641,60 +11602,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 local.get $1 + local.get $2 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find4 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|05 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -11704,14 +11665,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $0 + local.get $3 + local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -11720,60 +11681,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 local.get $1 + local.get $2 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find7 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|08 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -11783,14 +11744,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $2 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -11804,8 +11765,6 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - i32.const 0 - local.set $0 local.get $1 i32.const 4 i32.sub @@ -11815,17 +11774,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $6 i32.const 0 i32.store - local.get $2 + local.get $3 i32.load offset=8 local.set $10 - local.get $2 + local.get $3 i32.load offset=16 local.tee $11 local.set $5 - local.get $1 + local.get $6 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -11834,28 +11793,25 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $1 i32.const 16 i32.const 14 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.store - local.get $3 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $3 + local.get $1 i32.const 0 i32.store offset=4 - local.get $3 + local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $1 i32.const 0 i32.store offset=12 local.get $5 @@ -11881,32 +11837,35 @@ local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $2 i32.store offset=4 - local.get $6 + local.get $2 local.get $8 call $~lib/memory/memory.fill - local.get $3 - local.get $6 + local.get $1 + local.get $2 i32.store - local.get $3 - local.get $6 - call $~lib/rt/itcms/__link - local.get $3 - local.get $6 + local.get $2 + if + local.get $1 + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $1 + local.get $2 i32.store offset=4 - local.get $3 + local.get $1 local.get $8 i32.store offset=8 - local.get $3 + local.get $1 local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $6 local.get $1 - local.get $3 i32.store loop $for-loop|01 local.get $7 @@ -11918,15 +11877,15 @@ i32.shl local.get $10 i32.add - local.tee $1 + local.tee $2 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $3 - local.get $0 local.get $1 + local.get $0 + local.get $2 i32.load call $~lib/array/Array#__set local.get $0 @@ -11941,34 +11900,34 @@ br $for-loop|01 end end - local.get $3 + local.get $1 local.get $0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $1 + local.tee $5 i32.store offset=8 loop $for-loop|2 - local.get $3 + local.get $1 i32.load offset=12 local.get $4 i32.gt_s if - local.get $3 + local.get $1 local.get $4 call $~lib/array/Array#__get - local.tee $6 + local.tee $7 i32.const -1028477379 i32.mul i32.const 374761397 @@ -11977,65 +11936,65 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $2 i32.const 15 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $2 i32.const 13 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.const -1028477379 - i32.mul - local.set $0 - local.get $2 + i32.mul + local.set $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $2 i32.const 16 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $2 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $0 + local.get $2 if - local.get $0 + local.get $2 i32.load offset=4 - local.tee $7 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 - local.get $0 + local.get $7 + local.get $2 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $7 + local.get $6 i32.const -2 i32.and - local.set $0 + local.set $2 br $while-continue|011 end end i32.const 0 - local.set $0 + local.set $2 end - local.get $0 + local.get $2 i32.eqz if i32.const 0 @@ -12045,8 +12004,8 @@ call $~lib/builtins/abort unreachable end + local.get $5 local.get $1 - local.get $3 local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#add @@ -12057,9 +12016,9 @@ br $for-loop|2 end end - local.get $1 + local.get $5 i32.load offset=20 - local.get $2 + local.get $3 i32.load offset=20 i32.ne if @@ -12077,9 +12036,9 @@ i32.const 50 i32.lt_u if - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.const -1028477379 @@ -12090,60 +12049,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find13 loop $while-continue|014 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $4 - local.get $0 + local.get $1 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find13 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|014 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -12153,12 +12112,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $4 call $~lib/set/Set#delete - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.const -1028477379 @@ -12169,60 +12128,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find16 loop $while-continue|017 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $4 - local.get $0 + local.get $1 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find16 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|017 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -12238,7 +12197,7 @@ br $for-loop|3 end end - local.get $2 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -12257,9 +12216,9 @@ i32.const 50 i32.lt_u if - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.const -1028477379 @@ -12270,60 +12229,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find19 loop $while-continue|020 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $4 - local.get $0 + local.get $1 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find19 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|020 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -12332,12 +12291,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $4 call $~lib/set/Set#add - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.const -1028477379 @@ -12348,60 +12307,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find22 loop $while-continue|023 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $4 - local.get $0 + local.get $1 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find22 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|023 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -12411,12 +12370,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $4 call $~lib/set/Set#delete - local.get $2 + local.get $3 i32.load - local.get $2 + local.get $3 i32.load offset=4 local.get $4 i32.const -1028477379 @@ -12427,60 +12386,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 block $__inlined_func$~lib/set/Set#find25 loop $while-continue|026 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $4 - local.get $0 + local.get $1 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find25 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|026 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -12496,7 +12455,7 @@ br $for-loop|4 end end - local.get $2 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -12508,9 +12467,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 call $~lib/set/Set#clear - local.get $2 + local.get $3 i32.load offset=20 if i32.const 0 @@ -12642,21 +12601,21 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $7 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 3 i32.shl i32.const 3 @@ -12762,18 +12721,24 @@ local.get $0 local.get $7 i32.store - local.get $0 local.get $7 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $7 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $1 i32.store offset=4 local.get $0 local.get $3 i32.store offset=8 - local.get $0 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $5 i32.store offset=12 @@ -13143,9 +13108,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 3 i32.store offset=4 @@ -13154,9 +13122,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=8 - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 4 i32.store offset=12 @@ -13169,9 +13140,9 @@ ) (func $std/set/testNumeric (local $0 i32) - (local $1 i32) + (local $1 i64) (local $2 i32) - (local $3 i64) + (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) @@ -13191,23 +13162,23 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 call $~lib/set/Set#constructor - local.tee $4 + local.tee $3 i32.store loop $for-loop|0 - local.get $3 + local.get $1 i64.const 100 i64.lt_s if - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#has if i32.const 0 @@ -13217,11 +13188,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#add - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#has i32.eqz if @@ -13232,14 +13203,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i64.const 1 i64.add - local.set $3 + local.set $1 br $for-loop|0 end end - local.get $4 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -13252,14 +13223,14 @@ unreachable end i64.const 50 - local.set $3 + local.set $1 loop $for-loop|1 - local.get $3 + local.get $1 i64.const 100 i64.lt_s if - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#has i32.eqz if @@ -13270,11 +13241,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#add - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#has i32.eqz if @@ -13285,14 +13256,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i64.const 1 i64.add - local.set $3 + local.set $1 br $for-loop|1 end end - local.get $4 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -13305,8 +13276,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -13315,18 +13286,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $4 i32.const 0 i32.store - local.get $4 + local.get $3 i32.load offset=8 local.set $11 - local.get $4 + local.get $3 i32.load offset=16 local.tee $12 - local.set $5 - local.get $1 - local.tee $2 + local.set $6 + local.get $4 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -13335,31 +13305,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 16 i32.const 16 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 0 i32.store - local.get $1 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $1 + local.get $2 i32.const 0 i32.store offset=4 - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 0 i32.store offset=12 - local.get $5 + local.get $6 i32.const 134217727 i32.gt_u if @@ -13371,9 +13338,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.const 8 - local.get $5 + local.get $6 i32.const 8 i32.gt_u select @@ -13382,32 +13349,35 @@ local.tee $9 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store offset=4 - local.get $6 + local.get $5 local.get $9 call $~lib/memory/memory.fill - local.get $1 - local.get $6 + local.get $2 + local.get $5 i32.store - local.get $1 - local.get $6 - call $~lib/rt/itcms/__link - local.get $1 - local.get $6 + local.get $5 + if + local.get $2 + local.get $5 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $2 + local.get $5 i32.store offset=4 - local.get $1 + local.get $2 local.get $9 i32.store offset=8 - local.get $1 - local.get $5 + local.get $2 + local.get $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $4 local.get $2 - local.get $1 i32.store loop $for-loop|01 local.get $8 @@ -13419,15 +13389,15 @@ i32.shl local.get $11 i32.add - local.tee $2 + local.tee $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $1 - local.get $0 local.get $2 + local.get $0 + local.get $4 i64.load call $~lib/array/Array#__set local.get $0 @@ -13442,32 +13412,32 @@ br $for-loop|01 end end - local.get $1 + local.get $2 local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $1 + local.get $2 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $2 + local.tee $4 i32.store offset=8 loop $for-loop|2 - local.get $1 + local.get $2 i32.load offset=12 local.get $7 i32.gt_s if - local.get $4 - local.get $1 + local.get $3 + local.get $2 local.get $7 call $~lib/array/Array#__get call $~lib/set/Set#has @@ -13480,8 +13450,8 @@ call $~lib/builtins/abort unreachable end + local.get $4 local.get $2 - local.get $1 local.get $7 call $~lib/array/Array#__get call $~lib/set/Set#add @@ -13492,10 +13462,10 @@ br $for-loop|2 end end - local.get $2 - i32.load offset=20 local.get $4 i32.load offset=20 + local.get $3 + i32.load offset=20 i32.ne if i32.const 0 @@ -13506,14 +13476,14 @@ unreachable end i64.const 0 - local.set $3 + local.set $1 loop $for-loop|3 - local.get $3 + local.get $1 i64.const 50 i64.lt_s if - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#has i32.eqz if @@ -13524,11 +13494,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#delete - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#has if i32.const 0 @@ -13538,14 +13508,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i64.const 1 i64.add - local.set $3 + local.set $1 br $for-loop|3 end end - local.get $4 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -13558,14 +13528,14 @@ unreachable end i64.const 0 - local.set $3 + local.set $1 loop $for-loop|4 - local.get $3 + local.get $1 i64.const 50 i64.lt_s if - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#has if i32.const 0 @@ -13575,11 +13545,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#add - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#has i32.eqz if @@ -13590,11 +13560,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#delete - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#has if i32.const 0 @@ -13604,14 +13574,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i64.const 1 i64.add - local.set $3 + local.set $1 br $for-loop|4 end end - local.get $4 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -13623,9 +13593,9 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 call $~lib/set/Set#clear - local.get $4 + local.get $3 i32.load offset=20 if i32.const 0 @@ -13757,21 +13727,21 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $7 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 3 i32.shl i32.const 3 @@ -13877,18 +13847,24 @@ local.get $0 local.get $7 i32.store - local.get $0 local.get $7 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $7 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $1 i32.store offset=4 local.get $0 local.get $3 i32.store offset=8 - local.get $0 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $5 i32.store offset=12 @@ -14214,9 +14190,9 @@ ) (func $std/set/testNumeric (local $0 i32) - (local $1 i32) + (local $1 i64) (local $2 i32) - (local $3 i64) + (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) @@ -14236,23 +14212,23 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 call $~lib/set/Set#constructor - local.tee $4 + local.tee $3 i32.store loop $for-loop|0 - local.get $3 + local.get $1 i64.const 100 i64.lt_u if - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#has if i32.const 0 @@ -14262,11 +14238,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#add - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#has i32.eqz if @@ -14277,14 +14253,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i64.const 1 i64.add - local.set $3 + local.set $1 br $for-loop|0 end end - local.get $4 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -14297,14 +14273,14 @@ unreachable end i64.const 50 - local.set $3 + local.set $1 loop $for-loop|1 - local.get $3 + local.get $1 i64.const 100 i64.lt_u if - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#has i32.eqz if @@ -14315,11 +14291,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#add - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#has i32.eqz if @@ -14330,14 +14306,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i64.const 1 i64.add - local.set $3 + local.set $1 br $for-loop|1 end end - local.get $4 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -14350,8 +14326,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -14360,18 +14336,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $4 i32.const 0 i32.store - local.get $4 + local.get $3 i32.load offset=8 local.set $11 - local.get $4 + local.get $3 i32.load offset=16 local.tee $12 - local.set $5 - local.get $1 - local.tee $2 + local.set $6 + local.get $4 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -14380,31 +14355,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 16 i32.const 18 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 0 i32.store - local.get $1 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $1 + local.get $2 i32.const 0 i32.store offset=4 - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 0 i32.store offset=12 - local.get $5 + local.get $6 i32.const 134217727 i32.gt_u if @@ -14416,9 +14388,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.const 8 - local.get $5 + local.get $6 i32.const 8 i32.gt_u select @@ -14427,32 +14399,35 @@ local.tee $9 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store offset=4 - local.get $6 + local.get $5 local.get $9 call $~lib/memory/memory.fill - local.get $1 - local.get $6 - i32.store - local.get $1 - local.get $6 - call $~lib/rt/itcms/__link - local.get $1 - local.get $6 + local.get $2 + local.get $5 + i32.store + local.get $5 + if + local.get $2 + local.get $5 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $2 + local.get $5 i32.store offset=4 - local.get $1 + local.get $2 local.get $9 i32.store offset=8 - local.get $1 - local.get $5 + local.get $2 + local.get $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $4 local.get $2 - local.get $1 i32.store loop $for-loop|01 local.get $8 @@ -14464,15 +14439,15 @@ i32.shl local.get $11 i32.add - local.tee $2 + local.tee $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $1 - local.get $0 local.get $2 + local.get $0 + local.get $4 i64.load call $~lib/array/Array#__set local.get $0 @@ -14487,32 +14462,32 @@ br $for-loop|01 end end - local.get $1 + local.get $2 local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $1 + local.get $2 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $2 + local.tee $4 i32.store offset=8 loop $for-loop|2 - local.get $1 + local.get $2 i32.load offset=12 local.get $7 i32.gt_s if - local.get $4 - local.get $1 + local.get $3 + local.get $2 local.get $7 call $~lib/array/Array#__get call $~lib/set/Set#has @@ -14525,8 +14500,8 @@ call $~lib/builtins/abort unreachable end + local.get $4 local.get $2 - local.get $1 local.get $7 call $~lib/array/Array#__get call $~lib/set/Set#add @@ -14537,10 +14512,10 @@ br $for-loop|2 end end - local.get $2 - i32.load offset=20 local.get $4 i32.load offset=20 + local.get $3 + i32.load offset=20 i32.ne if i32.const 0 @@ -14551,14 +14526,14 @@ unreachable end i64.const 0 - local.set $3 + local.set $1 loop $for-loop|3 - local.get $3 + local.get $1 i64.const 50 i64.lt_u if - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#has i32.eqz if @@ -14569,11 +14544,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#delete - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#has if i32.const 0 @@ -14583,14 +14558,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i64.const 1 i64.add - local.set $3 + local.set $1 br $for-loop|3 end end - local.get $4 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -14603,14 +14578,14 @@ unreachable end i64.const 0 - local.set $3 + local.set $1 loop $for-loop|4 - local.get $3 + local.get $1 i64.const 50 i64.lt_u if - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#has if i32.const 0 @@ -14620,11 +14595,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#add - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#has i32.eqz if @@ -14635,11 +14610,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#delete - local.get $4 local.get $3 + local.get $1 call $~lib/set/Set#has if i32.const 0 @@ -14649,14 +14624,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i64.const 1 i64.add - local.set $3 + local.set $1 br $for-loop|4 end end - local.get $4 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -14668,9 +14643,9 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 call $~lib/set/Set#clear - local.get $4 + local.get $3 i32.load offset=20 if i32.const 0 @@ -14718,21 +14693,21 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $7 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 3 i32.shl i32.const 3 @@ -14827,18 +14802,24 @@ local.get $0 local.get $7 i32.store - local.get $0 local.get $7 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $7 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $1 i32.store offset=4 local.get $0 local.get $3 i32.store offset=8 - local.get $0 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $6 i32.store offset=12 @@ -15548,7 +15529,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $8 i32.const 0 i32.store local.get $3 @@ -15558,7 +15539,7 @@ i32.load offset=16 local.tee $12 local.set $5 - local.get $0 + local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -15567,10 +15548,10 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $0 i64.const 0 i64.store - local.get $4 + local.get $0 i32.const 16 i32.const 20 call $~lib/rt/itcms/__new @@ -15581,9 +15562,6 @@ i32.store local.get $4 i32.const 0 - call $~lib/rt/itcms/__link - local.get $4 - i32.const 0 i32.store offset=4 local.get $4 i32.const 0 @@ -15614,19 +15592,22 @@ local.tee $9 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $0 i32.store offset=4 - local.get $6 + local.get $0 local.get $9 call $~lib/memory/memory.fill local.get $4 - local.get $6 + local.get $0 i32.store + local.get $0 + if + local.get $4 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $4 - local.get $6 - call $~lib/rt/itcms/__link - local.get $4 - local.get $6 + local.get $0 i32.store offset=4 local.get $4 local.get $9 @@ -15638,15 +15619,15 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $8 local.get $4 i32.store loop $for-loop|01 - local.get $8 + local.get $6 local.get $12 i32.lt_s if - local.get $8 + local.get $6 i32.const 3 i32.shl local.get $11 @@ -15702,10 +15683,10 @@ local.get $2 f32.store end - local.get $8 + local.get $6 i32.const 1 i32.add - local.set $8 + local.set $6 br $for-loop|01 end end @@ -16420,21 +16401,21 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $8 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 3 i32.shl i32.const 3 @@ -16542,18 +16523,24 @@ local.get $0 local.get $8 i32.store - local.get $0 local.get $8 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $8 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $1 i32.store offset=4 local.get $0 local.get $3 i32.store offset=8 - local.get $0 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $7 i32.store offset=12 @@ -16887,7 +16874,7 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 f64) + (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) @@ -16896,7 +16883,7 @@ (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) + (local $12 f64) global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -16907,23 +16894,23 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $11 i64.const 0 i64.store - local.get $1 + local.get $11 i32.const 0 i32.store offset=8 - local.get $1 + local.get $11 call $~lib/set/Set#constructor - local.tee $4 + local.tee $10 i32.store loop $for-loop|0 - local.get $3 + local.get $12 f64.const 100 f64.lt if - local.get $4 - local.get $3 + local.get $10 + local.get $12 call $~lib/set/Set#has if i32.const 0 @@ -16933,11 +16920,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $10 + local.get $12 call $~lib/set/Set#add - local.get $4 - local.get $3 + local.get $10 + local.get $12 call $~lib/set/Set#has i32.eqz if @@ -16948,14 +16935,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $12 f64.const 1 f64.add - local.set $3 + local.set $12 br $for-loop|0 end end - local.get $4 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -16968,14 +16955,14 @@ unreachable end f64.const 50 - local.set $3 + local.set $12 loop $for-loop|1 - local.get $3 + local.get $12 f64.const 100 f64.lt if - local.get $4 - local.get $3 + local.get $10 + local.get $12 call $~lib/set/Set#has i32.eqz if @@ -16986,11 +16973,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $10 + local.get $12 call $~lib/set/Set#add - local.get $4 - local.get $3 + local.get $10 + local.get $12 call $~lib/set/Set#has i32.eqz if @@ -17001,14 +16988,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $12 f64.const 1 f64.add - local.set $3 + local.set $12 br $for-loop|1 end end - local.get $4 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -17021,8 +17008,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $1 + local.tee $11 + local.get $11 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -17034,15 +17021,14 @@ local.tee $1 i32.const 0 i32.store - local.get $4 + local.get $10 i32.load offset=8 - local.set $11 - local.get $4 + local.set $3 + local.get $10 i32.load offset=16 - local.tee $12 - local.set $5 + local.tee $2 + local.set $8 local.get $1 - local.tee $0 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -17051,31 +17037,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $11 i64.const 0 i64.store - local.get $1 + local.get $11 i32.const 16 i32.const 22 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $11 i32.store - local.get $1 + local.get $11 i32.const 0 i32.store - local.get $1 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $1 + local.get $11 i32.const 0 i32.store offset=4 - local.get $1 + local.get $11 i32.const 0 i32.store offset=8 - local.get $1 + local.get $11 i32.const 0 i32.store offset=12 - local.get $5 + local.get $8 i32.const 134217727 i32.gt_u if @@ -17087,74 +17070,77 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $8 i32.const 8 - local.get $5 + local.get $8 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $9 + local.tee $5 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $9 i32.store offset=4 - local.get $6 local.get $9 + local.get $5 call $~lib/memory/memory.fill - local.get $1 - local.get $6 + local.get $11 + local.get $9 i32.store - local.get $1 - local.get $6 - call $~lib/rt/itcms/__link - local.get $1 - local.get $6 - i32.store offset=4 - local.get $1 local.get $9 - i32.store offset=8 - local.get $1 + if + local.get $11 + local.get $9 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $11 + local.get $9 + i32.store offset=4 + local.get $11 local.get $5 + i32.store offset=8 + local.get $11 + local.get $8 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 local.get $1 + local.get $11 i32.store loop $for-loop|01 - local.get $8 - local.get $12 - i32.lt_s + local.get $2 + local.get $6 + i32.gt_s if - local.get $8 + local.get $6 i32.const 4 i32.shl - local.get $11 + local.get $3 i32.add - local.tee $5 + local.tee $9 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $2 - local.tee $0 + local.get $0 + local.tee $1 i32.const 1 i32.add - local.set $2 - local.get $5 + local.set $0 + local.get $9 f64.load - local.set $3 - local.get $1 + local.set $12 + local.get $11 i32.load offset=12 - local.get $0 + local.get $1 i32.le_u if - local.get $0 + local.get $1 i32.const 0 i32.lt_s if @@ -17165,60 +17151,60 @@ call $~lib/builtins/abort unreachable end + local.get $11 local.get $1 - local.get $0 i32.const 1 i32.add - local.tee $5 + local.tee $9 i32.const 3 i32.const 1 call $~lib/array/ensureCapacity - local.get $1 - local.get $5 + local.get $11 + local.get $9 i32.store offset=12 end - local.get $1 + local.get $11 i32.load offset=4 - local.get $0 + local.get $1 i32.const 3 i32.shl i32.add - local.get $3 + local.get $12 f64.store end - local.get $8 + local.get $6 i32.const 1 i32.add - local.set $8 + local.set $6 br $for-loop|01 end end - local.get $1 - local.get $2 + local.get $11 + local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $1 - local.get $2 + local.get $11 + local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $11 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $0 + local.tee $1 i32.store offset=8 loop $for-loop|2 - local.get $1 + local.get $11 i32.load offset=12 local.get $7 i32.gt_s if - local.get $4 - local.get $1 + local.get $10 + local.get $11 local.get $7 call $~lib/array/Array#__get call $~lib/set/Set#has @@ -17231,8 +17217,8 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $1 + local.get $11 local.get $7 call $~lib/array/Array#__get call $~lib/set/Set#add @@ -17243,9 +17229,9 @@ br $for-loop|2 end end - local.get $0 + local.get $1 i32.load offset=20 - local.get $4 + local.get $10 i32.load offset=20 i32.ne if @@ -17257,14 +17243,14 @@ unreachable end f64.const 0 - local.set $3 + local.set $12 loop $for-loop|3 - local.get $3 + local.get $12 f64.const 50 f64.lt if - local.get $4 - local.get $3 + local.get $10 + local.get $12 call $~lib/set/Set#has i32.eqz if @@ -17275,11 +17261,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $10 + local.get $12 call $~lib/set/Set#delete - local.get $4 - local.get $3 + local.get $10 + local.get $12 call $~lib/set/Set#has if i32.const 0 @@ -17289,14 +17275,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $12 f64.const 1 f64.add - local.set $3 + local.set $12 br $for-loop|3 end end - local.get $4 + local.get $10 i32.load offset=20 i32.const 50 i32.ne @@ -17309,14 +17295,14 @@ unreachable end f64.const 0 - local.set $3 + local.set $12 loop $for-loop|4 - local.get $3 + local.get $12 f64.const 50 f64.lt if - local.get $4 - local.get $3 + local.get $10 + local.get $12 call $~lib/set/Set#has if i32.const 0 @@ -17326,11 +17312,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $10 + local.get $12 call $~lib/set/Set#add - local.get $4 - local.get $3 + local.get $10 + local.get $12 call $~lib/set/Set#has i32.eqz if @@ -17341,11 +17327,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $10 + local.get $12 call $~lib/set/Set#delete - local.get $4 - local.get $3 + local.get $10 + local.get $12 call $~lib/set/Set#has if i32.const 0 @@ -17355,14 +17341,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $12 f64.const 1 f64.add - local.set $3 + local.set $12 br $for-loop|4 end end - local.get $4 + local.get $10 i32.load offset=20 i32.const 50 i32.ne @@ -17374,9 +17360,9 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 call $~lib/set/Set#clear - local.get $4 + local.get $10 i32.load offset=20 if i32.const 0 @@ -17400,6 +17386,7 @@ unreachable ) (func $~lib/rt/__visit_members (param $0 i32) + (local $1 i32) block $folding-inner1 block $folding-inner0 block $invalid @@ -17421,23 +17408,39 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end unreachable end local.get $0 + local.tee $1 i32.load - call $~lib/rt/itcms/__visit - local.get $0 + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end + local.get $1 i32.load offset=8 - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end ) (func $~start memory.size @@ -17595,9 +17598,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 3 i32.store offset=4 @@ -17606,9 +17612,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=8 - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 4 i32.store offset=12 @@ -17657,9 +17666,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 3 i32.store offset=4 @@ -17668,9 +17680,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=8 - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 4 i32.store offset=12 @@ -17719,9 +17734,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 3 i32.store offset=4 @@ -17730,9 +17748,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=8 - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 4 i32.store offset=12 @@ -17781,9 +17802,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 3 i32.store offset=4 @@ -17792,9 +17816,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=8 - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 4 i32.store offset=12 @@ -17843,9 +17870,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 3 i32.store offset=4 @@ -17854,9 +17884,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=8 - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 4 i32.store offset=12 @@ -17905,9 +17938,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 3 i32.store offset=4 @@ -17916,9 +17952,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=8 - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 4 i32.store offset=12 @@ -17967,9 +18006,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 3 i32.store offset=4 @@ -17978,9 +18020,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=8 - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 4 i32.store offset=12 @@ -18029,9 +18074,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 3 i32.store offset=4 @@ -18040,9 +18088,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=8 - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 4 i32.store offset=12 @@ -18091,9 +18142,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 3 i32.store offset=4 @@ -18102,9 +18156,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=8 - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 4 i32.store offset=12 @@ -18153,9 +18210,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 3 i32.store offset=4 @@ -18164,9 +18224,12 @@ call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=8 - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 4 i32.store offset=12 @@ -18182,4 +18245,72 @@ global.set $~lib/memory/__stack_pointer local.get $0 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) + (func $byn-split-outlined-A$~lib/rt/itcms/__link (param $0 i32) (param $1 i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $1 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $0 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $0 + i32.const 3 + i32.eq + i32.and + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + end + end + end + ) ) diff --git a/tests/compiler/std/static-array.optimized.wat b/tests/compiler/std/static-array.optimized.wat index f638f7195c..f571600d9a 100644 --- a/tests/compiler/std/static-array.optimized.wat +++ b/tests/compiler/std/static-array.optimized.wat @@ -85,19 +85,19 @@ (local $0 i32) (local $1 i32) i32.const 1088 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1184 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1264 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1360 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1472 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1584 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1632 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -270,30 +270,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -973,7 +949,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -2902,7 +2882,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -2910,7 +2893,11 @@ end local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end ) (func $~start call $start:std/static-array @@ -3285,4 +3272,23 @@ i32.add global.set $~lib/memory/__stack_pointer ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/std/staticarray.optimized.wat b/tests/compiler/std/staticarray.optimized.wat index cb474580b8..7d291d3a2d 100644 --- a/tests/compiler/std/staticarray.optimized.wat +++ b/tests/compiler/std/staticarray.optimized.wat @@ -210,29 +210,37 @@ (local $0 i32) (local $1 i32) i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1280 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $std/staticarray/arr3 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/staticarray/arr4 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1088 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1680 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 2176 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1344 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -405,30 +413,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -1076,6 +1060,7 @@ (func $~lib/rt/itcms/step (result i32) (local $0 i32) (local $1 i32) + (local $2 i32) block $folding-inner0 block $break|0 block $case2|0 @@ -1158,7 +1143,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -2813,63 +2802,20 @@ end end ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) + (func $~lib/staticarray/StaticArray#__uset (param $0 i32) (param $1 i32) (param $2 i32) local.get $1 - i32.eqz - if - return - end + i32.const 2 + i32.shl local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1408 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq + i32.add + local.get $2 + i32.store + local.get $2 if local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - local.tee $3 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $0 - local.get $1 - local.get $2 - select - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $3 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end + local.get $2 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link end ) (func $~lib/array/Array#__get (param $0 i32) (param $1 i32) (result i32) @@ -4179,18 +4125,21 @@ i32.load offset=16 local.get $0 i32.add - local.set $1 + local.set $2 loop $while-continue|0 local.get $0 - local.get $1 + local.get $2 i32.lt_u if local.get $0 i32.load - local.tee $2 + local.tee $1 if - local.get $2 - call $~lib/rt/itcms/__visit + local.get $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end local.get $0 i32.const 4 @@ -4204,104 +4153,108 @@ (local $1 i32) (local $2 i32) (local $3 i32) - block $folding-inner0 - block $invalid - block $~lib/staticarray/StaticArray - block $~lib/staticarray/StaticArray - block $~lib/array/Array<~lib/string/String> - block $~lib/staticarray/StaticArray<~lib/string/String> - block $~lib/array/Array - block $~lib/array/Array - block $~lib/staticarray/StaticArray - block $std/staticarray/Ref - block $~lib/staticarray/StaticArray - block $~lib/arraybuffer/ArrayBufferView - block $~lib/string/String - block $~lib/arraybuffer/ArrayBuffer - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $~lib/arraybuffer/ArrayBufferView $~lib/staticarray/StaticArray $std/staticarray/Ref $~lib/staticarray/StaticArray $~lib/array/Array $~lib/array/Array $~lib/staticarray/StaticArray<~lib/string/String> $~lib/array/Array<~lib/string/String> $~lib/staticarray/StaticArray $~lib/staticarray/StaticArray $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $invalid - end - return + block $folding-inner1 + block $folding-inner0 + block $invalid + block $~lib/staticarray/StaticArray + block $~lib/staticarray/StaticArray + block $~lib/array/Array<~lib/string/String> + block $~lib/staticarray/StaticArray<~lib/string/String> + block $~lib/staticarray/StaticArray + block $std/staticarray/Ref + block $~lib/staticarray/StaticArray + block $~lib/arraybuffer/ArrayBufferView + block $~lib/string/String + block $~lib/arraybuffer/ArrayBuffer + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $~lib/arraybuffer/ArrayBufferView $~lib/staticarray/StaticArray $std/staticarray/Ref $~lib/staticarray/StaticArray $folding-inner1 $folding-inner1 $~lib/staticarray/StaticArray<~lib/string/String> $~lib/array/Array<~lib/string/String> $~lib/staticarray/StaticArray $~lib/staticarray/StaticArray $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $invalid end return end + return + end + local.get $0 + i32.load + local.tee $0 + if local.get $0 - i32.load - local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit end - return end return end return end - local.get $0 - call $~lib/staticarray/StaticArray~visit return end local.get $0 - i32.load - call $~lib/rt/itcms/__visit + call $~lib/staticarray/StaticArray~visit return end local.get $0 - i32.load - call $~lib/rt/itcms/__visit + call $~lib/staticarray/StaticArray~visit return end local.get $0 - call $~lib/staticarray/StaticArray~visit - return - end - local.get $0 - local.tee $1 - i32.load offset=4 - local.tee $2 - local.get $0 - i32.load offset=12 - i32.const 2 - i32.shl - i32.add - local.set $3 - loop $while-continue|0 - local.get $2 - local.get $3 - i32.lt_u - if - local.get $2 - i32.load - local.tee $0 + i32.load offset=4 + local.tee $1 + local.get $0 + i32.load offset=12 + i32.const 2 + i32.shl + i32.add + local.set $3 + loop $while-continue|0 + local.get $1 + local.get $3 + i32.lt_u if - local.get $0 - call $~lib/rt/itcms/__visit + local.get $1 + i32.load + local.tee $2 + if + local.get $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end + end + local.get $1 + i32.const 4 + i32.add + local.set $1 + br $while-continue|0 end - local.get $2 - i32.const 4 - i32.add - local.set $2 - br $while-continue|0 end + br $folding-inner1 end - local.get $1 - i32.load - call $~lib/rt/itcms/__visit return end return end - return + unreachable end - unreachable + local.get $0 + i32.load offset=4 + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end + return end local.get $0 - i32.load offset=4 - call $~lib/rt/itcms/__visit + i32.load + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end ) (func $~start call $start:std/staticarray @@ -4314,9 +4267,9 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 f64) + (local $7 i32) (local $8 f32) - (local $9 i32) + (local $9 f64) (local $10 i32) (local $11 i32) (local $12 i32) @@ -4334,19 +4287,19 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i64.const 0 i64.store offset=8 - local.get $1 + local.get $2 i64.const 0 i64.store offset=16 - local.get $1 + local.get $2 i64.const 0 i64.store offset=24 - local.get $1 + local.get $2 i32.const 1056 i32.store i32.const 1056 @@ -4503,17 +4456,17 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.const 1312 i32.const 12 call $~lib/memory/memory.copy - local.get $1 + local.get $2 global.set $std/staticarray/arr3 global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 0 call $~lib/staticarray/StaticArray#__get i32.const 5 @@ -4528,9 +4481,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 6 @@ -4545,9 +4498,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 2 call $~lib/staticarray/StaticArray#__get i32.const 7 @@ -4562,9 +4515,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.load offset=16 @@ -4582,16 +4535,16 @@ end global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 8 call $~lib/staticarray/StaticArray#__set global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 8 @@ -4607,17 +4560,17 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.const 1312 i32.const 12 call $~lib/memory/memory.copy - local.get $1 + local.get $2 global.set $std/staticarray/arr3 global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 6 @@ -4634,33 +4587,25 @@ i32.const 8 i32.const 5 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $1 + local.get $2 + i32.const 0 call $std/staticarray/Ref#constructor - local.tee $3 - i32.store - local.get $1 - local.get $3 + call $~lib/staticarray/StaticArray#__uset + local.get $2 i32.const 1 - call $~lib/rt/itcms/__link - local.get $1 call $std/staticarray/Ref#constructor - local.tee $3 - i32.store offset=4 - local.get $1 - local.get $3 - i32.const 1 - call $~lib/rt/itcms/__link - local.get $1 + call $~lib/staticarray/StaticArray#__uset + local.get $2 global.set $std/staticarray/arr4 i32.const 0 global.set $std/staticarray/arr3 i32.const 0 global.set $std/staticarray/arr4 global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -4669,25 +4614,25 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 12 call $~lib/memory/memory.fill global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.const 20 i32.sub i32.load offset=16 @@ -4704,17 +4649,17 @@ unreachable end loop $for-loop|0 - local.get $1 + local.get $2 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.get $0 + local.get $3 i32.gt_s if - local.get $1 - local.get $0 + local.get $2 + local.get $3 call $~lib/staticarray/StaticArray#__get if i32.const 0 @@ -4724,10 +4669,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 1 i32.add - local.set $0 + local.set $3 br $for-loop|0 end end @@ -4736,16 +4681,16 @@ i32.const 6 i32.const 1728 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 call $~lib/staticarray/StaticArray.fromArray - local.tee $0 + local.tee $2 i32.store offset=4 - local.get $1 - i32.load offset=12 local.get $0 + i32.load offset=12 + local.get $2 i32.const 20 i32.sub i32.load offset=16 @@ -4761,16 +4706,16 @@ unreachable end loop $for-loop|1 - local.get $1 + local.get $0 i32.load offset=12 - local.get $2 + local.get $1 i32.gt_s if - local.get $0 local.get $2 + local.get $1 call $~lib/staticarray/StaticArray#__get + local.get $0 local.get $1 - local.get $2 call $~lib/array/Array#__get i32.ne if @@ -4781,10 +4726,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|1 end end @@ -4793,15 +4738,15 @@ i32.const 6 i32.const 1824 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 call $~lib/staticarray/StaticArray.fromArray - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $1 + local.get $2 i32.const 20 i32.sub i32.load offset=16 @@ -4839,9 +4784,9 @@ local.get $1 local.get $0 call $~lib/staticarray/StaticArray.concat - local.tee $0 + local.tee $2 i32.store offset=8 - local.get $0 + local.get $2 i32.const 20 i32.sub i32.load offset=16 @@ -4871,9 +4816,9 @@ local.get $1 local.get $0 call $~lib/staticarray/StaticArray.concat - local.tee $0 + local.tee $2 i32.store offset=8 - local.get $0 + local.get $2 i32.const 20 i32.sub i32.load offset=16 @@ -4898,26 +4843,26 @@ i32.const 20 i32.const 8 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $15 i32.const 2128 i32.const 20 call $~lib/memory/memory.copy - local.get $1 + local.get $15 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $15 i32.const 0 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $2 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.get $1 + local.get $15 i32.const 20 i32.sub i32.load offset=16 @@ -4933,33 +4878,33 @@ unreachable end i32.const 0 - local.set $0 + local.set $3 loop $for-loop|2 - local.get $1 + local.get $15 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.get $0 + local.get $3 i32.gt_s if - local.get $1 - local.get $0 + local.get $15 + local.get $3 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $3 - i32.store - local.get $2 local.get $0 + i32.store + local.get $1 + local.get $3 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $4 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.store offset=12 - local.get $3 - local.get $4 + local.get $0 + local.get $2 call $~lib/string/String.__eq i32.eqz if @@ -4970,21 +4915,21 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 1 i32.add - local.set $0 + local.set $3 br $for-loop|2 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $15 i32.const 1 i32.const 3 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -5000,18 +4945,18 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $2 + local.tee $2 + local.get $0 i32.store - local.get $3 + local.get $2 i32.const 1984 i32.store offset=12 - local.get $2 + local.get $0 i32.const 1984 call $~lib/string/String.__eq i32.eqz @@ -5023,7 +4968,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/staticarray/StaticArray<~lib/string/String>#__get local.set $0 @@ -5047,13 +4992,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $15 i32.const 1 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $0 + local.tee $2 i32.store offset=4 - local.get $1 + local.get $15 i32.const 20 i32.sub i32.load offset=16 @@ -5061,7 +5006,7 @@ i32.shr_u i32.const 1 i32.sub - local.get $0 + local.get $2 i32.const 20 i32.sub i32.load offset=16 @@ -5077,19 +5022,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $15 i32.const 0 i32.const 50 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $0 + local.tee $2 i32.store offset=4 - local.get $0 + local.get $2 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.get $1 + local.get $15 i32.const 20 i32.sub i32.load offset=16 @@ -5105,13 +5050,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $15 i32.const 100 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $0 + local.tee $2 i32.store offset=4 - local.get $0 + local.get $2 i32.const 20 i32.sub i32.load offset=16 @@ -5126,13 +5071,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $15 i32.const -1 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $0 + local.tee $2 i32.store offset=4 - local.get $0 + local.get $2 i32.const 20 i32.sub i32.load offset=16 @@ -5148,7 +5093,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#__get local.set $0 @@ -5172,13 +5117,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $15 i32.const -2 i32.const -2 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $0 + local.tee $2 i32.store offset=4 - local.get $0 + local.get $2 i32.const 20 i32.sub i32.load offset=16 @@ -5193,13 +5138,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $15 i32.const 2 i32.const -2 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $1 + local.get $2 i32.const 20 i32.sub i32.load offset=16 @@ -5215,18 +5160,18 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $2 local.get $0 + i32.store + local.get $2 i32.const 2016 i32.store offset=12 - local.get $1 + local.get $0 i32.const 2016 call $~lib/string/String.__eq i32.eqz @@ -5260,9 +5205,9 @@ local.get $1 local.get $0 call $~lib/staticarray/StaticArray<~lib/string/String>#concat - local.tee $0 + local.tee $2 i32.store offset=16 - local.get $0 + local.get $2 i32.load offset=12 local.get $1 i32.const 20 @@ -5291,9 +5236,9 @@ local.get $1 local.get $0 call $~lib/staticarray/StaticArray<~lib/string/String>#concat - local.tee $0 + local.tee $2 i32.store offset=16 - local.get $0 + local.get $2 i32.load offset=12 local.get $1 i32.const 20 @@ -5316,16 +5261,16 @@ i32.const 20 i32.const 8 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.const 2448 i32.const 20 call $~lib/memory/memory.copy - local.get $1 + local.get $0 i32.store offset=16 global.get $~lib/memory/__stack_pointer i32.const 1984 i32.store offset=12 - local.get $1 + local.get $0 i32.const 1984 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#includes @@ -5342,7 +5287,7 @@ global.get $~lib/memory/__stack_pointer i32.const 2384 i32.store offset=12 - local.get $1 + local.get $0 i32.const 2384 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#includes @@ -5357,7 +5302,7 @@ global.get $~lib/memory/__stack_pointer i32.const 2080 i32.store offset=12 - local.get $1 + local.get $0 i32.const 2080 i32.const 5 call $~lib/staticarray/StaticArray<~lib/string/String>#includes @@ -5372,7 +5317,7 @@ global.get $~lib/memory/__stack_pointer i32.const 2080 i32.store offset=12 - local.get $1 + local.get $0 i32.const 2080 i32.const -1 call $~lib/staticarray/StaticArray<~lib/string/String>#includes @@ -5423,11 +5368,11 @@ local.get $1 i32.add f64.load - local.tee $7 + local.tee $9 f64.const nan:0x8000000000000 f64.eq - local.get $7 - local.get $7 + local.get $9 + local.get $9 f64.ne i32.or br_if $__inlined_func$~lib/staticarray/StaticArray#includes @@ -5520,56 +5465,56 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.const 2560 i32.const 12 call $~lib/memory/memory.copy - local.get $0 + local.get $1 i32.store offset=16 i32.const 0 - local.set $1 + local.set $2 block $__inlined_func$~lib/staticarray/StaticArray#indexOf - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $2 + local.tee $0 i32.const 0 - local.get $2 + local.get $0 select i32.eqz if i32.const -1 - local.set $1 + local.set $2 br $__inlined_func$~lib/staticarray/StaticArray#indexOf end - loop $while-continue|013 - local.get $1 + loop $while-continue|012 + local.get $0 local.get $2 - i32.lt_s + i32.gt_s if - local.get $1 + local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 - br $while-continue|013 + local.set $2 + br $while-continue|012 end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 if i32.const 0 i32.const 1216 @@ -5579,49 +5524,49 @@ unreachable end i32.const 0 - local.set $1 - block $__inlined_func$~lib/staticarray/StaticArray#indexOf14 - local.get $0 + local.set $2 + block $__inlined_func$~lib/staticarray/StaticArray#indexOf13 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $2 + local.tee $0 i32.const 0 - local.get $2 + local.get $0 select i32.eqz if i32.const -1 - local.set $1 - br $__inlined_func$~lib/staticarray/StaticArray#indexOf14 + local.set $2 + br $__inlined_func$~lib/staticarray/StaticArray#indexOf13 end - loop $while-continue|015 - local.get $1 + loop $while-continue|014 + local.get $0 local.get $2 - i32.lt_s + i32.gt_s if - local.get $1 + local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.load i32.const 7 i32.eq - br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf14 - local.get $1 + br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf13 + local.get $2 i32.const 1 i32.add - local.set $1 - br $while-continue|015 + local.set $2 + br $while-continue|014 end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.const -1 i32.ne if @@ -5633,50 +5578,50 @@ unreachable end i32.const 2 - local.set $1 - block $__inlined_func$~lib/staticarray/StaticArray#indexOf16 - local.get $0 + local.set $2 + block $__inlined_func$~lib/staticarray/StaticArray#indexOf15 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $2 + local.tee $0 i32.const 2 i32.le_u i32.const 1 - local.get $2 + local.get $0 select if i32.const -1 - local.set $1 - br $__inlined_func$~lib/staticarray/StaticArray#indexOf16 + local.set $2 + br $__inlined_func$~lib/staticarray/StaticArray#indexOf15 end - loop $while-continue|017 - local.get $1 + loop $while-continue|016 + local.get $0 local.get $2 - i32.lt_s + i32.gt_s if - local.get $1 + local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.load i32.const 9 i32.eq - br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf16 - local.get $1 + br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf15 + local.get $2 i32.const 1 i32.add - local.set $1 - br $while-continue|017 + local.set $2 + br $while-continue|016 end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.const 2 i32.ne if @@ -5687,59 +5632,59 @@ call $~lib/builtins/abort unreachable end - block $__inlined_func$~lib/staticarray/StaticArray#indexOf18 - local.get $0 + block $__inlined_func$~lib/staticarray/StaticArray#indexOf17 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $2 + local.tee $0 i32.const -1 i32.le_s i32.const 1 - local.get $2 + local.get $0 select if i32.const -1 - local.set $1 - br $__inlined_func$~lib/staticarray/StaticArray#indexOf18 + local.set $2 + br $__inlined_func$~lib/staticarray/StaticArray#indexOf17 end - local.get $2 + local.get $0 i32.const 1 i32.sub - local.tee $1 + local.tee $2 i32.const 0 - local.get $1 + local.get $2 i32.const 0 i32.gt_s select - local.set $1 - loop $while-continue|019 - local.get $1 + local.set $2 + loop $while-continue|018 + local.get $0 local.get $2 - i32.lt_s + i32.gt_s if - local.get $1 + local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.load i32.const 2 i32.eq - br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf18 - local.get $1 + br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf17 + local.get $2 i32.const 1 i32.add - local.set $1 - br $while-continue|019 + local.set $2 + br $while-continue|018 end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.const -1 i32.ne if @@ -5751,56 +5696,56 @@ unreachable end i32.const -1 - local.set $1 - block $__inlined_func$~lib/staticarray/StaticArray#indexOf20 - local.get $0 + local.set $2 + block $__inlined_func$~lib/staticarray/StaticArray#indexOf19 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $2 + local.tee $0 i32.const -3 i32.le_s i32.const 1 - local.get $2 + local.get $0 select - br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf20 - local.get $2 + br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf19 + local.get $0 i32.const 3 i32.sub - local.tee $1 + local.tee $2 i32.const 0 - local.get $1 + local.get $2 i32.const 0 i32.gt_s select - local.set $1 - loop $while-continue|021 - local.get $1 + local.set $2 + loop $while-continue|020 + local.get $0 local.get $2 - i32.lt_s + i32.gt_s if - local.get $1 + local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.load i32.const 2 i32.eq - br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf20 - local.get $1 + br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf19 + local.get $2 i32.const 1 i32.add - local.set $1 - br $while-continue|021 + local.set $2 + br $while-continue|020 end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 if i32.const 0 i32.const 1216 @@ -5813,70 +5758,70 @@ i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.const 2592 i32.const 16 call $~lib/memory/memory.copy - local.get $1 + local.get $2 i32.store offset=16 i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $2 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $16 - local.set $0 + local.tee $3 + local.set $1 i32.const -1 - local.set $2 + local.set $0 block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf - local.get $16 + local.get $3 i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf - local.get $0 - local.get $16 + local.get $1 + local.get $3 i32.add - local.get $16 + local.get $3 i32.const 1 i32.sub - local.get $0 - local.get $0 - local.get $16 + local.get $1 + local.get $1 + local.get $3 i32.ge_s select - local.get $0 + local.get $1 i32.const 0 i32.lt_s select - local.set $0 + local.set $1 loop $while-continue|00 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $2 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf - local.get $2 + local.get $0 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|00 end end i32.const -1 - local.set $2 + local.set $0 end - local.get $2 + local.get $0 i32.const 3 i32.ne if @@ -5889,7 +5834,7 @@ end i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $2 local.tee $0 i32.const 20 i32.sub @@ -5906,18 +5851,18 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.tee $16 + local.tee $3 i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf5 local.get $1 - local.get $16 + local.get $3 i32.add - local.get $16 + local.get $3 i32.const 1 i32.sub local.get $1 local.get $1 - local.get $16 + local.get $3 i32.ge_s select local.get $1 @@ -5968,28 +5913,28 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.tee $1 + local.tee $2 i32.eqz if i32.const -1 - local.set $1 + local.set $2 br $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf7 end - local.get $1 + local.get $2 i32.const 1 i32.sub i32.const 3 - local.get $1 + local.get $2 i32.const 3 i32.le_u select - local.set $1 - loop $while-continue|023 - local.get $1 + local.set $2 + loop $while-continue|022 + local.get $2 i32.const 0 i32.ge_s if - local.get $1 + local.get $2 i32.const 2 i32.shl local.get $0 @@ -5998,17 +5943,17 @@ i32.const 2 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf7 - local.get $1 + local.get $2 i32.const 1 i32.sub - local.set $1 - br $while-continue|023 + local.set $2 + br $while-continue|022 end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.const 3 i32.ne if @@ -6019,35 +5964,35 @@ call $~lib/builtins/abort unreachable end - block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf24 + block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf23 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $1 + local.tee $2 i32.eqz if i32.const -1 - local.set $1 - br $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf24 + local.set $2 + br $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf23 end - local.get $1 + local.get $2 i32.const 1 i32.sub i32.const 2 - local.get $1 + local.get $2 i32.const 2 i32.le_u select - local.set $1 - loop $while-continue|025 - local.get $1 + local.set $2 + loop $while-continue|024 + local.get $2 i32.const 0 i32.ge_s if - local.get $1 + local.get $2 i32.const 2 i32.shl local.get $0 @@ -6055,18 +6000,18 @@ i32.load i32.const 2 i32.eq - br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf24 - local.get $1 + br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf23 + local.get $2 i32.const 1 i32.sub - local.set $1 - br $while-continue|025 + local.set $2 + br $while-continue|024 end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 if i32.const 0 i32.const 1216 @@ -6075,30 +6020,30 @@ call $~lib/builtins/abort unreachable end - block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf26 + block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf25 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $1 + local.tee $2 i32.eqz if i32.const -1 - local.set $1 - br $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf26 + local.set $2 + br $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf25 end - local.get $1 + local.get $2 i32.const 2 i32.sub - local.set $1 - loop $while-continue|027 - local.get $1 + local.set $2 + loop $while-continue|026 + local.get $2 i32.const 0 i32.ge_s if - local.get $1 + local.get $2 i32.const 2 i32.shl local.get $0 @@ -6106,18 +6051,18 @@ i32.load i32.const 2 i32.eq - br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf26 - local.get $1 + br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf25 + local.get $2 i32.const 1 i32.sub - local.set $1 - br $while-continue|027 + local.set $2 + br $while-continue|026 end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 if i32.const 0 i32.const 1216 @@ -6127,27 +6072,27 @@ unreachable end i32.const -1 - local.set $1 - block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf28 + local.set $2 + block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf27 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $2 + local.tee $1 i32.eqz - br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf28 - local.get $2 + br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf27 + local.get $1 i32.const 1 i32.sub - local.set $1 - loop $while-continue|029 - local.get $1 + local.set $2 + loop $while-continue|028 + local.get $2 i32.const 0 i32.ge_s if - local.get $1 + local.get $2 i32.const 2 i32.shl local.get $0 @@ -6155,18 +6100,18 @@ i32.load i32.const 2 i32.eq - br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf28 - local.get $1 + br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf27 + local.get $2 i32.const 1 i32.sub - local.set $1 - br $while-continue|029 + local.set $2 + br $while-continue|028 end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.const 3 i32.ne if @@ -6193,14 +6138,14 @@ local.get $1 i32.const 2800 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store global.get $~lib/memory/__stack_pointer i32.const 2832 i32.store offset=12 - local.get $0 + local.get $2 i32.const 2832 call $~lib/string/String.__eq i32.eqz @@ -6218,14 +6163,14 @@ local.get $1 i32.const 2768 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store global.get $~lib/memory/__stack_pointer i32.const 2880 i32.store offset=12 - local.get $0 + local.get $2 i32.const 2880 call $~lib/string/String.__eq i32.eqz @@ -6243,14 +6188,14 @@ local.get $1 i32.const 2928 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store global.get $~lib/memory/__stack_pointer i32.const 2960 i32.store offset=12 - local.get $0 + local.get $2 i32.const 2960 call $~lib/string/String.__eq i32.eqz @@ -6268,14 +6213,14 @@ local.get $1 i32.const 3008 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store global.get $~lib/memory/__stack_pointer i32.const 3040 i32.store offset=12 - local.get $0 + local.get $2 i32.const 3040 call $~lib/string/String.__eq i32.eqz @@ -6315,16 +6260,16 @@ local.get $1 i32.const 2800 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=12 local.get $0 - local.get $1 + local.get $2 call $~lib/string/String.__eq i32.eqz if @@ -6339,34 +6284,34 @@ i32.const 8 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.const 3104 i32.const 8 call $~lib/memory/memory.copy - local.get $1 + local.get $0 i32.store offset=16 i32.const 1 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $0 - local.get $0 + local.tee $2 + local.get $2 i32.const 1 i32.gt_u select local.set $16 loop $for-loop|024 - local.get $0 + local.get $2 local.get $16 i32.gt_s if local.get $16 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add i32.const 1 i32.store @@ -6377,7 +6322,7 @@ br $for-loop|024 end end - local.get $1 + local.get $0 i32.const 0 call $~lib/staticarray/StaticArray#__get if @@ -6388,7 +6333,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 1 @@ -6405,68 +6350,68 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $15 i32.const 3136 i32.const 12 call $~lib/memory/memory.copy - local.get $1 + local.get $15 i32.store offset=16 i32.const 0 local.set $16 - local.get $1 + local.get $15 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $0 + local.tee $2 i32.const 1 i32.gt_u if - local.get $0 + local.get $2 i32.const 1 i32.shr_u - local.set $2 - local.get $0 + local.set $3 + local.get $2 i32.const 1 i32.sub - local.set $0 - loop $while-continue|026 - local.get $2 + local.set $1 + loop $while-continue|02633 + local.get $3 local.get $16 i32.gt_u if local.get $16 i32.const 2 i32.shl - local.get $1 + local.get $15 i32.add - local.tee $3 + local.tee $2 i32.load - local.set $4 - local.get $3 - local.get $0 + local.set $0 + local.get $2 + local.get $1 local.get $16 i32.sub i32.const 2 i32.shl - local.get $1 + local.get $15 i32.add - local.tee $3 + local.tee $2 i32.load i32.store - local.get $3 - local.get $4 + local.get $2 + local.get $0 i32.store local.get $16 i32.const 1 i32.add local.set $16 - br $while-continue|026 + br $while-continue|02633 end end end - local.get $1 + local.get $15 i32.const 0 call $~lib/staticarray/StaticArray#__get i32.const 3 @@ -6479,7 +6424,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $15 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 2 @@ -6492,7 +6437,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $15 i32.const 2 call $~lib/staticarray/StaticArray#__get i32.const 1 @@ -6509,56 +6454,56 @@ i32.const 20 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $15 i32.const 3168 i32.const 20 call $~lib/memory/memory.copy - local.get $1 + local.get $15 i32.store offset=16 i32.const 0 - local.get $1 + local.get $15 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $0 - local.get $0 + local.tee $3 + local.get $3 select - local.set $2 - local.get $0 + local.set $1 + local.get $3 i32.const 3 - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 3 i32.gt_u select - local.tee $3 + local.tee $2 i32.sub - local.set $16 - local.get $2 + local.set $0 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $15 i32.add - local.get $3 + local.get $2 i32.const 2 i32.shl - local.get $1 + local.get $15 i32.add - local.get $16 local.get $0 - local.get $2 + local.get $3 + local.get $1 i32.sub - local.tee $0 + local.tee $2 local.get $0 - local.get $16 - i32.gt_s + local.get $2 + i32.lt_s select i32.const 2 i32.shl call $~lib/memory/memory.copy - local.get $1 + local.get $15 i32.const 0 call $~lib/staticarray/StaticArray#__get i32.const 4 @@ -6571,7 +6516,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $15 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 5 @@ -6584,7 +6529,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $15 i32.const 2 call $~lib/staticarray/StaticArray#__get i32.const 3 @@ -6597,7 +6542,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $15 i32.const 3 call $~lib/staticarray/StaticArray#__get i32.const 4 @@ -6610,7 +6555,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $15 i32.const 4 call $~lib/staticarray/StaticArray#__get i32.const 5 @@ -6627,19 +6572,19 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $14 i32.const 3216 i32.const 12 call $~lib/memory/memory.copy - local.get $1 + local.get $14 i32.store offset=16 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $15 i32.const 3248 i32.store offset=12 i32.const 0 local.set $16 - local.get $2 + local.get $15 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -6648,11 +6593,11 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i32.const 0 i32.store - local.get $0 - local.get $1 + local.get $2 + local.get $14 i32.const 20 i32.sub i32.load offset=16 @@ -6662,32 +6607,32 @@ i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $12 i32.store - local.get $0 + local.get $12 i32.load offset=4 - local.set $4 + local.set $1 loop $for-loop|027 local.get $3 local.get $16 i32.gt_s if - local.get $1 + local.get $14 local.get $16 i32.const 2 i32.shl - local.tee $5 + local.tee $0 i32.add i32.load - local.set $6 + local.set $2 i32.const 3 global.set $~argumentsLength - local.get $4 - local.get $5 + local.get $0 + local.get $1 i32.add - local.get $6 + local.get $2 local.get $16 - local.get $1 + local.get $14 i32.const 3248 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -6703,10 +6648,10 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 - local.get $0 + local.get $15 + local.get $12 i32.store offset=4 - local.get $0 + local.get $12 i32.const 0 call $~lib/array/Array#__get i32.const 2 @@ -6719,7 +6664,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $12 i32.const 1 call $~lib/array/Array#__get i32.const 3 @@ -6732,7 +6677,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $12 i32.const 2 call $~lib/array/Array#__get i32.const 4 @@ -6750,7 +6695,7 @@ i32.store offset=12 i32.const 0 local.set $16 - local.get $1 + local.get $14 i32.const 20 i32.sub i32.load offset=16 @@ -6765,13 +6710,13 @@ local.get $16 i32.const 2 i32.shl - local.get $1 + local.get $14 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $16 - local.get $1 + local.get $14 i32.const 3280 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) @@ -6794,13 +6739,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $0 + local.tee $2 + local.get $2 i32.const 3312 i32.store offset=12 i32.const 0 local.set $16 - local.get $0 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -6809,59 +6754,59 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 0 i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $1 i32.store - local.get $1 + local.get $14 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $12 + local.set $6 loop $for-loop|028 - local.get $12 + local.get $6 local.get $16 i32.gt_s if local.get $16 i32.const 2 i32.shl - local.get $1 + local.get $14 i32.add i32.load - local.set $9 + local.set $2 i32.const 3 global.set $~argumentsLength - local.get $9 + local.get $2 local.get $16 - local.get $1 + local.get $14 i32.const 3312 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $3 + local.get $1 i32.load offset=12 - local.tee $13 + local.tee $5 i32.const 1 i32.add - local.tee $14 - local.tee $0 - local.get $3 + local.tee $4 + local.tee $13 + local.get $1 i32.load offset=8 - local.tee $5 + local.tee $11 i32.const 2 i32.shr_u i32.gt_u if - local.get $0 + local.get $13 i32.const 268435455 i32.gt_u if @@ -6873,38 +6818,38 @@ unreachable end block $__inlined_func$~lib/rt/itcms/__renew - local.get $5 + local.get $11 i32.const 1 i32.shl - local.tee $4 + local.tee $3 i32.const 1073741820 - local.get $4 + local.get $3 i32.const 1073741820 i32.lt_u select - local.tee $4 - local.get $0 + local.tee $15 + local.get $13 i32.const 8 - local.get $0 + local.get $13 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $0 - local.get $0 - local.get $4 + local.tee $3 + local.get $3 + local.get $15 i32.lt_u select - local.tee $10 - local.tee $4 - local.get $3 - i32.load local.tee $15 - local.tee $2 + local.tee $13 + local.get $1 + i32.load + local.tee $12 + local.tee $0 i32.const 20 i32.sub - local.tee $6 + local.tee $10 i32.load i32.const -4 i32.and @@ -6912,65 +6857,68 @@ i32.sub i32.le_u if - local.get $6 - local.get $4 + local.get $10 + local.get $13 i32.store offset=16 - local.get $2 - local.set $0 + local.get $0 + local.set $3 br $__inlined_func$~lib/rt/itcms/__renew end - local.get $4 - local.get $6 + local.get $13 + local.get $10 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $0 - local.get $2 - local.get $4 - local.get $6 + local.tee $3 + local.get $0 + local.get $13 + local.get $10 i32.load offset=16 - local.tee $2 - local.get $2 - local.get $4 + local.tee $0 + local.get $0 + local.get $13 i32.gt_u select call $~lib/memory/memory.copy end - local.get $0 - local.get $5 + local.get $3 + local.get $11 i32.add - local.get $10 - local.get $5 + local.get $15 + local.get $11 i32.sub call $~lib/memory/memory.fill - local.get $0 - local.get $15 + local.get $3 + local.get $12 i32.ne if + local.get $1 local.get $3 - local.get $0 i32.store + local.get $1 local.get $3 - local.get $0 i32.store offset=4 local.get $3 - local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link + if + local.get $1 + local.get $3 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end end - local.get $3 - local.get $10 + local.get $1 + local.get $15 i32.store offset=8 end - local.get $3 + local.get $1 i32.load offset=4 - local.get $13 + local.get $5 i32.const 2 i32.shl i32.add - local.get $9 + local.get $2 i32.store - local.get $3 - local.get $14 + local.get $1 + local.get $4 i32.store offset=12 end local.get $16 @@ -6984,9 +6932,9 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=24 - local.get $3 + local.get $1 i32.load offset=12 i32.const 2 i32.ne @@ -6998,7 +6946,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i32.const 0 call $~lib/array/Array#__get i32.const 2 @@ -7011,7 +6959,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i32.const 1 call $~lib/array/Array#__get i32.const 3 @@ -7030,37 +6978,36 @@ i32.const 0 local.set $16 i32.const 0 - local.set $2 - local.get $1 - local.tee $0 + local.set $3 + local.get $14 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|033 - local.get $1 + local.get $0 local.get $16 i32.gt_s if local.get $16 i32.const 2 i32.shl - local.get $0 + local.get $14 i32.add i32.load - local.set $3 + local.set $2 i32.const 4 global.set $~argumentsLength - local.get $2 local.get $3 + local.get $2 local.get $16 - local.get $0 + local.get $14 i32.const 3344 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $2 + local.set $3 local.get $16 i32.const 1 i32.add @@ -7068,7 +7015,7 @@ br $for-loop|033 end end - local.get $2 + local.get $3 i32.const 6 i32.ne if @@ -7083,8 +7030,8 @@ i32.const 3376 i32.store offset=12 i32.const 0 - local.set $2 - local.get $0 + local.set $3 + local.get $14 i32.const 20 i32.sub i32.load offset=16 @@ -7101,20 +7048,20 @@ local.get $16 i32.const 2 i32.shl - local.get $0 + local.get $14 i32.add i32.load - local.set $1 + local.set $2 i32.const 4 global.set $~argumentsLength + local.get $3 local.get $2 - local.get $1 local.get $16 - local.get $0 + local.get $14 i32.const 3376 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $2 + local.set $3 local.get $16 i32.const 1 i32.sub @@ -7122,7 +7069,7 @@ br $for-loop|035 end end - local.get $2 + local.get $3 i32.const 6 i32.ne if @@ -7138,41 +7085,41 @@ i32.store offset=12 block $__inlined_func$~lib/staticarray/StaticArray#some (result i32) i32.const 0 - local.set $2 - local.get $0 + local.set $3 + local.get $14 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $16 + local.set $0 loop $for-loop|038 - local.get $2 - local.get $16 - i32.lt_s + local.get $0 + local.get $3 + i32.gt_s if - local.get $2 + local.get $3 i32.const 2 i32.shl - local.get $0 + local.get $14 i32.add i32.load - local.set $3 + local.set $2 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $3 local.get $2 - local.get $0 + local.get $3 + local.get $14 i32.const 3408 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/staticarray/StaticArray#some drop - local.get $2 + local.get $3 i32.const 1 i32.add - local.set $2 + local.set $3 br $for-loop|038 end end @@ -7192,41 +7139,41 @@ i32.store offset=12 block $__inlined_func$~lib/staticarray/StaticArray#some39 (result i32) i32.const 0 - local.set $2 - local.get $0 + local.set $3 + local.get $14 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $16 + local.set $0 loop $for-loop|040 - local.get $2 - local.get $16 - i32.lt_s + local.get $0 + local.get $3 + i32.gt_s if - local.get $2 + local.get $3 i32.const 2 i32.shl - local.get $0 + local.get $14 i32.add i32.load - local.set $3 + local.set $2 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $3 local.get $2 - local.get $0 + local.get $3 + local.get $14 i32.const 3440 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/staticarray/StaticArray#some39 drop - local.get $2 + local.get $3 i32.const 1 i32.add - local.set $2 + local.set $3 br $for-loop|040 end end @@ -7245,42 +7192,42 @@ i32.store offset=12 block $__inlined_func$~lib/staticarray/StaticArray#every (result i32) i32.const 0 - local.set $2 - local.get $0 + local.set $3 + local.get $14 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $16 + local.set $0 loop $for-loop|041 - local.get $2 - local.get $16 - i32.lt_s + local.get $0 + local.get $3 + i32.gt_s if - local.get $2 + local.get $3 i32.const 2 i32.shl - local.get $0 + local.get $14 i32.add i32.load - local.set $3 + local.set $2 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $3 local.get $2 - local.get $0 + local.get $3 + local.get $14 i32.const 3472 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#every drop - local.get $2 + local.get $3 i32.const 1 i32.add - local.set $2 + local.set $3 br $for-loop|041 end end @@ -7300,42 +7247,42 @@ i32.store offset=12 block $__inlined_func$~lib/staticarray/StaticArray#every42 (result i32) i32.const 0 - local.set $2 - local.get $0 + local.set $3 + local.get $14 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $16 + local.set $0 loop $for-loop|043 - local.get $2 - local.get $16 - i32.lt_s + local.get $0 + local.get $3 + i32.gt_s if - local.get $2 + local.get $3 i32.const 2 i32.shl - local.get $0 + local.get $14 i32.add i32.load - local.set $3 + local.set $2 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $3 local.get $2 - local.get $0 + local.get $3 + local.get $14 i32.const 3504 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#every42 drop - local.get $2 + local.get $3 i32.const 1 i32.add - local.set $2 + local.set $3 br $for-loop|043 end end @@ -7353,45 +7300,45 @@ i32.const 3536 i32.store offset=12 i32.const 0 - local.set $1 - local.get $0 + local.set $2 + local.get $14 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $2 + local.set $1 block $__inlined_func$~lib/staticarray/StaticArray#findIndex loop $for-loop|044 local.get $1 local.get $2 - i32.lt_s + i32.gt_s if - local.get $1 + local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $14 i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $0 + local.get $2 + local.get $14 i32.const 3536 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/staticarray/StaticArray#findIndex - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|044 end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.const 1 i32.ne if @@ -7406,45 +7353,45 @@ i32.const 3568 i32.store offset=12 i32.const 0 - local.set $1 - local.get $0 + local.set $2 + local.get $14 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $2 + local.set $1 block $__inlined_func$~lib/staticarray/StaticArray#findIndex45 loop $for-loop|046 local.get $1 local.get $2 - i32.lt_s + i32.gt_s if - local.get $1 + local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $14 i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $0 + local.get $2 + local.get $14 i32.const 3568 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/staticarray/StaticArray#findIndex45 - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|046 end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.const -1 i32.ne if @@ -7458,7 +7405,7 @@ global.get $~lib/memory/__stack_pointer i32.const 3600 i32.store offset=12 - local.get $0 + local.get $14 i32.const 20 i32.sub i32.load offset=16 @@ -7466,38 +7413,38 @@ i32.shr_u i32.const 1 i32.sub - local.set $1 + local.set $2 block $__inlined_func$~lib/staticarray/StaticArray#findLastIndex loop $for-loop|047 - local.get $1 + local.get $2 i32.const 0 i32.ge_s if - local.get $1 + local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $14 i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $0 + local.get $2 + local.get $14 i32.const 3600 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/staticarray/StaticArray#findLastIndex - local.get $1 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $2 br $for-loop|047 end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.const 1 i32.ne if @@ -7511,7 +7458,7 @@ global.get $~lib/memory/__stack_pointer i32.const 3632 i32.store offset=12 - local.get $0 + local.get $14 i32.const 20 i32.sub i32.load offset=16 @@ -7519,38 +7466,38 @@ i32.shr_u i32.const 1 i32.sub - local.set $1 + local.set $2 block $__inlined_func$~lib/staticarray/StaticArray#findLastIndex48 loop $for-loop|049 - local.get $1 + local.get $2 i32.const 0 i32.ge_s if - local.get $1 + local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $14 i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $0 + local.get $2 + local.get $14 i32.const 3632 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/staticarray/StaticArray#findLastIndex48 - local.get $1 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $2 br $for-loop|049 end end i32.const -1 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.const -1 i32.ne if @@ -7565,11 +7512,11 @@ i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.const 3664 i32.const 16 call $~lib/memory/memory.copy - local.get $1 + local.get $0 i32.store offset=28 i32.const 0 global.set $~argumentsLength @@ -7600,8 +7547,8 @@ i32.const 3712 i32.store end - local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -7613,7 +7560,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 0 call $~lib/staticarray/StaticArray#__get if @@ -7624,7 +7571,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 1 @@ -7637,7 +7584,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/staticarray/StaticArray#__get i32.const 2 @@ -7650,7 +7597,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 call $~lib/staticarray/StaticArray#__get i32.const 3 @@ -7786,19 +7733,23 @@ end local.get $5 local.get $3 + local.tee $2 i32.store i32.const 16 local.get $1 call $~lib/rt/itcms/__new local.tee $1 - local.get $3 + local.get $2 i32.store + local.get $2 + if + local.get $1 + local.get $2 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $1 - local.get $3 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $1 - local.get $3 + local.get $2 i32.store offset=4 local.get $1 local.get $4 @@ -8027,7 +7978,7 @@ i32.shl local.get $0 i32.add - local.set $1 + local.set $4 i32.const 0 local.set $0 loop $while-continue|0 @@ -8039,15 +7990,18 @@ local.get $2 i32.add local.get $0 - local.get $1 + local.get $4 i32.add i32.load - local.tee $4 + local.tee $1 i32.store - local.get $2 - local.get $4 - i32.const 1 - call $~lib/rt/itcms/__link + local.get $1 + if + local.get $2 + local.get $1 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 4 i32.add @@ -8158,7 +8112,7 @@ i32.const 0 local.get $1 select - local.tee $6 + local.tee $7 i32.add local.tee $3 i32.const 268435455 @@ -8184,11 +8138,11 @@ local.get $2 i32.const 2 i32.shl - local.set $2 + local.set $6 loop $for-loop|0 - local.get $2 local.get $4 - i32.gt_u + local.get $6 + i32.lt_u if local.get $4 local.get $5 @@ -8197,12 +8151,15 @@ local.get $4 i32.add i32.load - local.tee $7 + local.tee $2 i32.store - local.get $3 - local.get $7 - i32.const 1 - call $~lib/rt/itcms/__link + local.get $2 + if + local.get $3 + local.get $2 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $4 i32.const 4 i32.add @@ -8210,14 +8167,14 @@ br $for-loop|0 end end - local.get $2 local.get $5 + local.get $6 i32.add - local.set $4 + local.set $2 local.get $1 i32.load offset=4 - local.set $1 - local.get $6 + local.set $4 + local.get $7 i32.const 2 i32.shl local.set $5 @@ -8229,18 +8186,21 @@ i32.lt_u if local.get $0 - local.get $4 + local.get $2 i32.add local.get $0 - local.get $1 + local.get $4 i32.add i32.load - local.tee $2 + local.tee $1 i32.store - local.get $3 - local.get $2 - i32.const 1 - call $~lib/rt/itcms/__link + local.get $1 + if + local.get $3 + local.get $1 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 4 i32.add @@ -8254,4 +8214,77 @@ global.set $~lib/memory/__stack_pointer local.get $3 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) + (func $byn-split-outlined-A$~lib/rt/itcms/__link (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1408 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $1 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + local.tee $3 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $0 + local.get $1 + local.get $2 + select + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $3 + i32.const 3 + i32.eq + i32.and + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + end + end + end + ) ) diff --git a/tests/compiler/std/string-casemapping.optimized.wat b/tests/compiler/std/string-casemapping.optimized.wat index 478c200712..91c63ada05 100644 --- a/tests/compiler/std/string-casemapping.optimized.wat +++ b/tests/compiler/std/string-casemapping.optimized.wat @@ -3,8 +3,8 @@ (type $none_=>_none (func)) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $i32_=>_i32 (func (param i32) (result i32))) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $none_=>_i32 (func (result i32))) (type $i32_i32_f64_f64_f64_f64_f64_=>_none (func (param i32 i32 f64 f64 f64 f64 f64))) @@ -486,15 +486,15 @@ (local $0 i32) (local $1 i32) i32.const 1280 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1088 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 19632 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 20688 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1488 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -533,160 +533,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1152 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 37476 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1152 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1152 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 21056 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1280 - i32.const 1344 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 21060 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -1366,7 +1212,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -3844,7 +3694,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -7419,4 +7272,153 @@ global.set $~lib/memory/__stack_pointer local.get $1 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1152 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 37476 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1152 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1152 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 21056 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1280 + i32.const 1344 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 21060 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/std/string-encoding.optimized.wat b/tests/compiler/std/string-encoding.optimized.wat index d9eeeff032..870ff6b18f 100644 --- a/tests/compiler/std/string-encoding.optimized.wat +++ b/tests/compiler/std/string-encoding.optimized.wat @@ -1,8 +1,8 @@ (module (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) (type $none_=>_none (func)) - (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) (type $i32_i32_i32_=>_i32 (func (param i32 i32 i32) (result i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) @@ -73,13 +73,13 @@ (local $0 i32) (local $1 i32) i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1344 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1152 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1712 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -118,160 +118,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1216 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 38924 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1216 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1216 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 22512 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1344 - i32.const 1408 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 22516 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -951,7 +797,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -2884,7 +2734,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -5172,4 +5025,153 @@ global.set $~lib/memory/__stack_pointer local.get $0 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1216 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 38924 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1216 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1216 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 22512 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1344 + i32.const 1408 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 22516 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/std/string.optimized.wat b/tests/compiler/std/string.optimized.wat index 348571c878..6f22588c86 100644 --- a/tests/compiler/std/string.optimized.wat +++ b/tests/compiler/std/string.optimized.wat @@ -1072,20 +1072,23 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1264 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 13648 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 15296 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1376 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 16224 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 17280 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -1258,30 +1261,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -1961,7 +1940,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -3712,65 +3695,6 @@ end end ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - local.get $1 - i32.eqz - if - return - end - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1440 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - local.tee $3 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $0 - local.get $1 - local.get $2 - select - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $3 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) (func $~lib/string/String#indexOf (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) @@ -6070,6 +5994,7 @@ call $~lib/builtins/abort unreachable end + local.get $4 local.get $0 i32.load local.tee $7 @@ -6096,32 +6021,34 @@ local.get $3 i32.lt_u select - local.tee $2 - call $~lib/rt/itcms/__renew local.tee $3 - local.get $4 + call $~lib/rt/itcms/__renew + local.tee $2 i32.add - local.get $2 + local.get $3 local.get $4 i32.sub call $~lib/memory/memory.fill - local.get $3 + local.get $2 local.get $7 i32.ne if local.get $0 - local.get $3 + local.get $2 i32.store local.get $0 - local.get $3 + local.get $2 i32.store offset=4 - local.get $0 - local.get $3 - i32.const 0 - call $~lib/rt/itcms/__link + local.get $2 + if + local.get $0 + local.get $2 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end end local.get $0 - local.get $2 + local.get $3 i32.store offset=8 end local.get $0 @@ -6132,10 +6059,13 @@ i32.add local.get $1 i32.store - local.get $0 local.get $1 - i32.const 1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $6 i32.store offset=12 @@ -7488,13 +7418,20 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end local.get $0 @@ -7517,7 +7454,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end local.get $2 i32.const 4 @@ -7528,7 +7468,11 @@ end local.get $1 i32.load - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end unreachable @@ -7545,33 +7489,33 @@ (local $8 i32) (local $9 i32) (local $10 i32) - block $folding-inner4 - global.get $~lib/memory/__stack_pointer - i32.const 24 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 25884 - i32.lt_s - if - i32.const 42288 - i32.const 42336 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $3 - i64.const 0 - i64.store - local.get $3 - i64.const 0 - i64.store offset=8 - local.get $3 - i64.const 0 - i64.store offset=16 - block $folding-inner3 + global.get $~lib/memory/__stack_pointer + i32.const 24 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 25884 + i32.lt_s + if + i32.const 42288 + i32.const 42336 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $3 + i64.const 0 + i64.store + local.get $3 + i64.const 0 + i64.store offset=8 + local.get $3 + i64.const 0 + i64.store offset=16 + block $folding-inner3 + block $folding-inner2 block $folding-inner1 block $folding-inner0 local.get $2 @@ -7595,11 +7539,19 @@ i32.load offset=4 local.get $0 i32.store - local.get $1 local.get $0 - i32.const 1 - call $~lib/rt/itcms/__link - br $folding-inner3 + if + local.get $1 + local.get $0 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + global.get $~lib/memory/__stack_pointer + i32.const 24 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $1 + return end local.get $0 i32.const 20 @@ -7654,9 +7606,9 @@ i32.const 4 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.load offset=4 local.set $3 loop $for-loop|0 @@ -7668,9 +7620,9 @@ i32.const 2 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store offset=8 - local.get $2 + local.get $1 local.get $5 i32.const 1 i32.shl @@ -7683,12 +7635,15 @@ i32.shl local.get $3 i32.add - local.get $2 + local.get $1 i32.store local.get $1 - local.get $2 - i32.const 1 - call $~lib/rt/itcms/__link + if + local.get $2 + local.get $1 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $5 i32.const 1 i32.add @@ -7755,7 +7710,7 @@ local.tee $10 local.get $7 i32.eq - br_if $folding-inner4 + br_if $folding-inner2 local.get $5 local.get $8 i32.add @@ -7769,7 +7724,7 @@ local.get $2 local.get $0 call $~lib/array/Array<~lib/string/String>#push - br $folding-inner4 + br $folding-inner2 end local.get $3 local.get $4 @@ -7806,7 +7761,7 @@ i32.const 1712 call $~lib/array/Array<~lib/string/String>#push end - br $folding-inner4 + br $folding-inner3 end i32.const 0 i32.const 4 @@ -7825,7 +7780,7 @@ i32.const 24 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 return end global.get $~lib/memory/__stack_pointer @@ -21765,19 +21720,23 @@ end local.get $5 local.get $3 + local.tee $2 i32.store i32.const 16 local.get $1 call $~lib/rt/itcms/__new local.tee $1 - local.get $3 + local.get $2 i32.store + local.get $2 + if + local.get $1 + local.get $2 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $1 - local.get $3 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $1 - local.get $3 + local.get $2 i32.store offset=4 local.get $1 local.get $4 @@ -25099,4 +25058,77 @@ global.set $~lib/memory/__stack_pointer local.get $2 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) + (func $byn-split-outlined-A$~lib/rt/itcms/__link (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1440 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $1 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + local.tee $3 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $0 + local.get $1 + local.get $2 + select + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $3 + i32.const 3 + i32.eq + i32.and + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + end + end + end + ) ) diff --git a/tests/compiler/std/symbol.optimized.wat b/tests/compiler/std/symbol.optimized.wat index a6910a746f..2ee6583786 100644 --- a/tests/compiler/std/symbol.optimized.wat +++ b/tests/compiler/std/symbol.optimized.wat @@ -104,46 +104,70 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $~lib/symbol/idToString local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/symbol/key1 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/symbol/key2 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/symbol/key3 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $std/symbol/key4 local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1328 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1536 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1648 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1136 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -316,30 +340,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -1019,7 +1019,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1810,65 +1814,6 @@ call $~lib/memory/memory.fill local.get $1 ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - local.get $1 - i32.eqz - if - return - end - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1200 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - local.tee $3 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $0 - local.get $1 - local.get $2 - select - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $3 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) (func $~lib/util/hash/HASH<~lib/string/String> (param $0 i32) (result i32) (local $1 i32) (local $2 i32) @@ -3239,34 +3184,88 @@ (func $~lib/rt/__visit_members (param $0 i32) (local $1 i32) (local $2 i32) - block $invalid - block $~lib/map/Map - block $~lib/map/Map<~lib/string/String,usize> - block $~lib/arraybuffer/ArrayBufferView - block $~lib/string/String - block $~lib/arraybuffer/ArrayBuffer - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $~lib/arraybuffer/ArrayBufferView $~lib/map/Map<~lib/string/String,usize> $~lib/map/Map $invalid + (local $3 i32) + block $folding-inner0 + block $invalid + block $~lib/map/Map + block $~lib/map/Map<~lib/string/String,usize> + block $~lib/arraybuffer/ArrayBufferView + block $~lib/string/String + block $~lib/arraybuffer/ArrayBuffer + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $~lib/arraybuffer/ArrayBufferView $~lib/map/Map<~lib/string/String,usize> $~lib/map/Map $invalid + end + return end return end + local.get $0 + i32.load + local.tee $0 + if + local.get $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end + end return end local.get $0 i32.load - local.tee $0 + local.tee $1 if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end + local.get $0 + i32.load offset=16 + i32.const 12 + i32.mul + local.get $0 + i32.load offset=8 + local.tee $1 + local.tee $0 + i32.add + local.set $2 + loop $while-continue|0 local.get $0 - call $~lib/rt/itcms/__visit + local.get $2 + i32.lt_u + if + local.get $0 + i32.load offset=8 + i32.const 1 + i32.and + i32.eqz + if + local.get $0 + i32.load + local.tee $3 + if + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end + end + local.get $0 + i32.const 12 + i32.add + local.set $0 + br $while-continue|0 + end end - return + br $folding-inner0 end local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.load offset=16 i32.const 12 @@ -3277,7 +3276,7 @@ local.tee $0 i32.add local.set $2 - loop $while-continue|0 + loop $while-continue|03 local.get $0 local.get $2 i32.lt_u @@ -3289,60 +3288,30 @@ i32.eqz if local.get $0 - i32.load - call $~lib/rt/itcms/__visit + i32.load offset=4 + local.tee $3 + if + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end local.get $0 i32.const 12 i32.add local.set $0 - br $while-continue|0 + br $while-continue|03 end end - local.get $1 - call $~lib/rt/itcms/__visit - return + br $folding-inner0 end + unreachable + end + local.get $1 + local.tee $0 + if local.get $0 - i32.load - call $~lib/rt/itcms/__visit - local.get $0 - i32.load offset=16 - i32.const 12 - i32.mul - local.get $0 - i32.load offset=8 - local.tee $1 - local.tee $0 - i32.add - local.set $2 - loop $while-continue|00 - local.get $0 - local.get $2 - i32.lt_u - if - local.get $0 - i32.load offset=8 - i32.const 1 - i32.and - i32.eqz - if - local.get $0 - i32.load offset=4 - call $~lib/rt/itcms/__visit - end - local.get $0 - i32.const 12 - i32.add - local.set $0 - br $while-continue|00 - end - end - local.get $1 - call $~lib/rt/itcms/__visit - return + call $byn-split-outlined-A$~lib/rt/itcms/__visit end - unreachable ) (func $~start global.get $~started @@ -3453,22 +3422,22 @@ if global.get $~lib/memory/__stack_pointer global.get $~lib/symbol/stringToId - local.tee $2 + local.tee $10 i32.store - local.get $2 + local.get $10 i32.const 1056 call $~lib/util/hash/HASH<~lib/string/String> call $~lib/map/Map<~lib/string/String,usize>#find if global.get $~lib/memory/__stack_pointer global.get $~lib/symbol/stringToId - local.tee $2 + local.tee $10 i32.store - local.get $2 + local.get $10 i32.const 1056 call $~lib/util/hash/HASH<~lib/string/String> call $~lib/map/Map<~lib/string/String,usize>#find - local.tee $2 + local.tee $10 i32.eqz if i32.const 1648 @@ -3478,7 +3447,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $10 i32.load offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -3496,50 +3465,56 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $10 i32.const 0 i32.store - local.get $2 + local.get $10 i32.const 24 i32.const 3 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $10 i32.store - local.get $2 + local.get $10 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store - local.get $2 local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $2 + if + local.get $10 + local.get $0 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $10 i32.const 3 i32.store offset=4 - local.get $2 + local.get $10 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store offset=8 - local.get $2 local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $2 + if + local.get $10 + local.get $0 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $10 i32.const 4 i32.store offset=12 - local.get $2 + local.get $10 i32.const 0 i32.store offset=16 - local.get $2 + local.get $10 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $10 global.set $~lib/symbol/stringToId global.get $~lib/memory/__stack_pointer i32.const 4 @@ -3550,58 +3525,64 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $10 i32.const 0 i32.store - local.get $2 + local.get $10 i32.const 24 i32.const 4 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $10 i32.store - local.get $2 + local.get $10 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store - local.get $2 local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $2 - i32.const 3 - i32.store offset=4 - local.get $2 + if + local.get $10 + local.get $0 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $10 + i32.const 3 + i32.store offset=4 + local.get $10 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store offset=8 - local.get $2 local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $2 + if + local.get $10 + local.get $0 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $10 i32.const 4 i32.store offset=12 - local.get $2 + local.get $10 i32.const 0 i32.store offset=16 - local.get $2 + local.get $10 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $10 global.set $~lib/symbol/idToString end global.get $~lib/symbol/nextId - local.tee $6 + local.tee $2 i32.const 1 i32.add global.set $~lib/symbol/nextId - local.get $6 + local.get $2 i32.eqz if unreachable @@ -3609,7 +3590,7 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $~lib/symbol/stringToId - local.tee $2 + local.tee $10 i32.store local.get $0 i32.const 4 @@ -3622,26 +3603,26 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $2 + local.get $10 i32.const 1056 call $~lib/util/hash/HASH<~lib/string/String> - local.tee $9 + local.tee $4 call $~lib/map/Map<~lib/string/String,usize>#find local.tee $0 if local.get $0 - local.get $6 + local.get $2 i32.store offset=4 else - local.get $2 + local.get $10 i32.load offset=16 - local.get $2 + local.get $10 i32.load offset=12 i32.eq if - local.get $2 + local.get $10 i32.load offset=20 - local.get $2 + local.get $10 i32.load offset=12 i32.const 3 i32.mul @@ -3649,17 +3630,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $2 + local.get $10 i32.load offset=4 else - local.get $2 + local.get $10 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $4 + local.set $7 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -3676,14 +3657,14 @@ i32.const 0 i32.store offset=8 local.get $0 - local.get $4 + local.get $7 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -3691,59 +3672,59 @@ i32.shl i32.const 3 i32.div_s - local.tee $10 + local.tee $3 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=4 - local.get $2 + local.get $10 i32.load offset=8 - local.tee $3 - local.get $2 + local.tee $9 + local.get $10 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $5 + local.set $8 local.get $1 local.set $0 loop $while-continue|0 - local.get $3 - local.get $5 + local.get $8 + local.get $9 i32.ne if - local.get $3 + local.get $9 i32.load offset=8 i32.const 1 i32.and i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $9 i32.load - local.tee $8 + local.tee $5 i32.store offset=8 local.get $0 - local.get $8 + local.get $5 i32.store local.get $0 - local.get $3 + local.get $9 i32.load offset=4 i32.store offset=4 local.get $0 - local.get $8 + local.get $5 call $~lib/util/hash/HASH<~lib/string/String> - local.get $4 + local.get $7 i32.and i32.const 2 i32.shl - local.get $7 + local.get $6 i32.add - local.tee $8 + local.tee $5 i32.load i32.store offset=8 - local.get $8 + local.get $5 local.get $0 i32.store local.get $0 @@ -3751,35 +3732,41 @@ i32.add local.set $0 end - local.get $3 + local.get $9 i32.const 12 i32.add - local.set $3 + local.set $9 br $while-continue|0 end end - local.get $2 - local.get $7 + local.get $10 + local.get $6 i32.store - local.get $2 + local.get $6 + if + local.get $10 + local.get $6 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $10 local.get $7 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $2 - local.get $4 i32.store offset=4 - local.get $2 + local.get $10 local.get $1 i32.store offset=8 - local.get $2 local.get $1 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $2 + if + local.get $10 + local.get $1 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $10 + local.get $3 i32.store offset=12 - local.get $2 - local.get $2 + local.get $10 + local.get $10 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -3788,18 +3775,18 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $10 i32.load offset=8 local.tee $0 i32.store - local.get $2 - local.get $2 + local.get $10 + local.get $10 i32.load offset=16 - local.tee $4 + local.tee $1 i32.const 1 i32.add i32.store offset=16 - local.get $4 + local.get $1 i32.const 12 i32.mul local.get $0 @@ -3807,33 +3794,33 @@ local.tee $0 i32.const 1056 i32.store - local.get $2 + local.get $10 i32.const 1056 i32.const 1 - call $~lib/rt/itcms/__link + call $byn-split-outlined-A$~lib/rt/itcms/__link local.get $0 - local.get $6 - i32.store offset=4 - local.get $2 local.get $2 + i32.store offset=4 + local.get $10 + local.get $10 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $2 + local.get $10 i32.load - local.get $2 + local.get $10 i32.load offset=4 - local.get $9 + local.get $4 i32.and i32.const 2 i32.shl i32.add - local.tee $2 + local.tee $10 i32.load i32.store offset=8 - local.get $2 + local.get $10 local.get $0 i32.store end @@ -3844,7 +3831,7 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $~lib/symbol/idToString - local.tee $2 + local.tee $10 i32.store local.get $0 i32.const 4 @@ -3857,9 +3844,10 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $2 + local.get $10 i32.load - local.get $6 + local.get $2 + local.tee $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -3887,8 +3875,8 @@ i32.shr_u local.get $0 i32.xor - local.tee $8 - local.get $2 + local.tee $5 + local.get $10 i32.load offset=4 i32.and i32.const 2 @@ -3902,19 +3890,19 @@ if local.get $0 i32.load offset=8 - local.tee $1 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 + local.get $1 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $1 + local.get $7 i32.const -2 i32.and local.set $0 @@ -3929,20 +3917,20 @@ local.get $0 i32.const 1056 i32.store offset=4 - local.get $2 + local.get $10 i32.const 1056 i32.const 1 - call $~lib/rt/itcms/__link + call $byn-split-outlined-A$~lib/rt/itcms/__link else - local.get $2 + local.get $10 i32.load offset=16 - local.get $2 + local.get $10 i32.load offset=12 i32.eq if - local.get $2 + local.get $10 i32.load offset=20 - local.get $2 + local.get $10 i32.load offset=12 i32.const 3 i32.mul @@ -3950,17 +3938,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $2 + local.get $10 i32.load offset=4 else - local.get $2 + local.get $10 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $4 + local.set $7 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -3974,14 +3962,14 @@ i64.const 0 i64.store local.get $0 - local.get $4 + local.get $7 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -3989,45 +3977,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $9 + local.tee $4 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $2 + local.get $10 i32.load offset=8 - local.tee $3 - local.get $2 + local.tee $9 + local.get $10 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $10 - local.get $1 + local.set $3 + local.get $2 local.set $0 loop $while-continue|01 local.get $3 - local.get $10 + local.get $9 i32.ne if - local.get $3 + local.get $9 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $3 + local.get $9 i32.load - local.tee $5 + local.tee $8 i32.store local.get $0 - local.get $3 + local.get $9 i32.load offset=4 i32.store offset=4 local.get $0 - local.get $5 + local.get $8 i32.const -1028477379 i32.mul i32.const 374761397 @@ -4036,35 +4024,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $5 + local.tee $8 i32.const 15 i32.shr_u - local.get $5 + local.get $8 i32.xor i32.const -2048144777 i32.mul - local.tee $5 + local.tee $8 i32.const 13 i32.shr_u - local.get $5 + local.get $8 i32.xor i32.const -1028477379 i32.mul - local.tee $5 + local.tee $8 i32.const 16 i32.shr_u - local.get $5 + local.get $8 i32.xor - local.get $4 + local.get $7 i32.and i32.const 2 i32.shl - local.get $7 + local.get $6 i32.add - local.tee $5 + local.tee $8 i32.load i32.store offset=8 - local.get $5 + local.get $8 local.get $0 i32.store local.get $0 @@ -4072,35 +4060,41 @@ i32.add local.set $0 end - local.get $3 + local.get $9 i32.const 12 i32.add - local.set $3 + local.set $9 br $while-continue|01 end end - local.get $2 - local.get $7 + local.get $10 + local.get $6 i32.store - local.get $2 + local.get $6 + if + local.get $10 + local.get $6 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $10 local.get $7 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $2 - local.get $4 i32.store offset=4 + local.get $10 local.get $2 - local.get $1 i32.store offset=8 local.get $2 - local.get $1 - i32.const 0 - call $~lib/rt/itcms/__link - local.get $2 - local.get $9 + if + local.get $10 + local.get $2 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $10 + local.get $4 i32.store offset=12 - local.get $2 - local.get $2 + local.get $10 + local.get $10 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -4109,52 +4103,52 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $10 i32.load offset=8 local.tee $0 i32.store - local.get $2 - local.get $2 + local.get $10 + local.get $10 i32.load offset=16 - local.tee $4 + local.tee $2 i32.const 1 i32.add i32.store offset=16 - local.get $4 + local.get $2 i32.const 12 i32.mul local.get $0 i32.add local.tee $0 - local.get $6 + local.get $1 i32.store local.get $0 i32.const 1056 i32.store offset=4 - local.get $2 + local.get $10 i32.const 1056 i32.const 1 - call $~lib/rt/itcms/__link - local.get $2 - local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__link + local.get $10 + local.get $10 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $2 + local.get $10 i32.load - local.get $2 + local.get $10 i32.load offset=4 - local.get $8 + local.get $5 i32.and i32.const 2 i32.shl i32.add - local.tee $2 + local.tee $10 i32.load i32.store offset=8 - local.get $2 + local.get $10 local.get $0 i32.store end @@ -4166,7 +4160,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $1 return end i32.const 19104 @@ -4895,4 +4889,77 @@ global.set $~lib/memory/__stack_pointer local.get $1 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) + (func $byn-split-outlined-A$~lib/rt/itcms/__link (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1200 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $1 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + local.tee $3 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $0 + local.get $1 + local.get $2 + select + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $3 + i32.const 3 + i32.eq + i32.and + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + end + end + end + ) ) diff --git a/tests/compiler/std/typedarray.optimized.wat b/tests/compiler/std/typedarray.optimized.wat index 3d3fb297a7..7190a174a4 100644 --- a/tests/compiler/std/typedarray.optimized.wat +++ b/tests/compiler/std/typedarray.optimized.wat @@ -679,31 +679,31 @@ (local $0 i32) (local $1 i32) i32.const 7152 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 7616 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 7728 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 10928 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 11008 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 11088 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 11184 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 11264 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1360 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1168 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 8432 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 9488 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -876,30 +876,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -1547,6 +1523,7 @@ (func $~lib/rt/itcms/step (result i32) (local $0 i32) (local $1 i32) + (local $2 i32) block $folding-inner0 block $break|0 block $case2|0 @@ -1629,7 +1606,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -2399,60 +2380,6 @@ call $~lib/memory/memory.fill local.get $1 ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) - local.get $1 - i32.eqz - if - return - end - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1232 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - i32.load offset=4 - i32.const 3 - i32.and - local.tee $0 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $0 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) (func $std/typedarray/testInstantiate (param $0 i32) (local $1 i32) global.get $~lib/memory/__stack_pointer @@ -28258,7 +28185,7 @@ local.set $1 end i32.const -1 - local.set $3 + local.set $2 end global.get $~lib/memory/__stack_pointer i32.const 4 @@ -28279,11 +28206,12 @@ i32.const 0 i32.store local.get $1 + local.tee $3 local.get $0 i32.const 20 i32.sub i32.load offset=16 - local.tee $2 + local.tee $1 i32.gt_u if i32.const 1360 @@ -28293,16 +28221,16 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.const 0 i32.lt_s if - local.get $3 + local.get $2 i32.const -1 i32.eq if (result i32) - local.get $2 local.get $1 + local.get $3 i32.sub else i32.const 1056 @@ -28312,10 +28240,11 @@ call $~lib/builtins/abort unreachable end - local.set $3 + local.set $1 else - local.get $2 local.get $1 + local.get $2 + local.tee $1 local.get $3 i32.add i32.lt_s @@ -28337,15 +28266,18 @@ local.get $2 local.get $0 i32.store - local.get $2 local.get $0 - call $~lib/rt/itcms/__link + if + local.get $2 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $2 - local.get $3 + local.get $1 i32.store offset=8 local.get $2 local.get $0 - local.get $1 + local.get $3 i32.add i32.store offset=4 global.get $~lib/memory/__stack_pointer @@ -36763,12 +36695,20 @@ end local.get $0 i32.load offset=4 - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end local.get $0 @@ -36776,7 +36716,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end ) (func $~start @@ -36803,34 +36746,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i64.const 0 i64.store - local.get $0 + local.get $3 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 6 call $~lib/typedarray/Int8Array#constructor - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $3 i32.const 3 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $3 i32.const 5 i32.const 5 call $~lib/typedarray/Int8Array#__set @@ -36850,9 +36793,9 @@ local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $3 i32.load offset=8 - local.set $5 + local.set $8 local.get $1 i32.const 12 i32.const 3 @@ -36860,76 +36803,81 @@ local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $7 i32.store offset=4 - local.get $0 + local.get $3 i32.load offset=4 - local.set $9 + local.set $4 loop $for-loop|0 - local.get $4 - local.get $5 - i32.lt_s + local.get $8 + local.get $9 + i32.gt_s if local.get $4 local.get $9 i32.add i32.load8_s - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $4 - local.get $0 + local.get $6 + local.get $9 + local.get $3 i32.const 3952 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if local.get $2 - local.tee $3 + local.tee $0 i32.const 1 i32.add local.set $2 - local.get $3 - local.get $6 - i32.add + local.get $0 local.get $7 + i32.add + local.get $6 i32.store8 end - local.get $4 + local.get $9 i32.const 1 i32.add - local.set $4 + local.set $9 br $for-loop|0 end end local.get $1 - local.get $6 + local.get $7 local.get $2 call $~lib/rt/itcms/__renew local.tee $0 i32.store local.get $1 + local.set $3 local.get $0 - call $~lib/rt/itcms/__link - local.get $1 + local.tee $1 + if + local.get $3 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $3 local.get $2 i32.store offset=8 + local.get $3 local.get $1 - local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.tee $0 + local.get $3 i32.store offset=8 - local.get $0 + local.get $3 i32.load offset=4 - local.get $0 + local.get $3 i32.load i32.sub if @@ -36940,7 +36888,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.load offset=8 i32.const 3 i32.ne @@ -36952,7 +36900,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 3 @@ -36965,7 +36913,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 4 @@ -36978,7 +36926,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 5 @@ -37025,34 +36973,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i64.const 0 i64.store - local.get $0 + local.get $3 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 6 call $~lib/typedarray/Uint8Array#constructor - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $3 i32.const 3 i32.const 4 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $3 i32.const 5 i32.const 5 call $~lib/typedarray/Uint8Array#__set @@ -37072,9 +37020,9 @@ local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $3 i32.load offset=8 - local.set $5 + local.set $8 local.get $1 i32.const 12 i32.const 4 @@ -37082,76 +37030,81 @@ local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $7 i32.store offset=4 - local.get $0 + local.get $3 i32.load offset=4 - local.set $9 + local.set $4 loop $for-loop|0 - local.get $4 - local.get $5 - i32.lt_s + local.get $8 + local.get $9 + i32.gt_s if local.get $4 local.get $9 i32.add i32.load8_u - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $4 - local.get $0 + local.get $6 + local.get $9 + local.get $3 i32.const 3984 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if local.get $2 - local.tee $3 + local.tee $0 i32.const 1 i32.add local.set $2 - local.get $3 - local.get $6 - i32.add + local.get $0 local.get $7 + i32.add + local.get $6 i32.store8 end - local.get $4 + local.get $9 i32.const 1 i32.add - local.set $4 + local.set $9 br $for-loop|0 end end local.get $1 - local.get $6 + local.get $7 local.get $2 call $~lib/rt/itcms/__renew local.tee $0 i32.store local.get $1 + local.set $3 local.get $0 - call $~lib/rt/itcms/__link - local.get $1 + local.tee $1 + if + local.get $3 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $3 local.get $2 i32.store offset=8 + local.get $3 local.get $1 - local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.tee $0 + local.get $3 i32.store offset=8 - local.get $0 + local.get $3 i32.load offset=4 - local.get $0 + local.get $3 i32.load i32.sub if @@ -37162,7 +37115,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.load offset=8 i32.const 3 i32.ne @@ -37174,7 +37127,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 3 @@ -37187,7 +37140,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 4 @@ -37200,7 +37153,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 5 @@ -37247,34 +37200,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i64.const 0 i64.store - local.get $0 + local.get $3 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 6 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $3 i32.const 3 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $3 i32.const 5 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#__set @@ -37294,9 +37247,9 @@ local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $3 i32.load offset=8 - local.set $5 + local.set $8 local.get $1 i32.const 12 i32.const 5 @@ -37304,76 +37257,81 @@ local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $7 i32.store offset=4 - local.get $0 + local.get $3 i32.load offset=4 - local.set $9 + local.set $4 loop $for-loop|0 - local.get $4 - local.get $5 - i32.lt_s + local.get $8 + local.get $9 + i32.gt_s if local.get $4 local.get $9 i32.add i32.load8_u - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $4 - local.get $0 + local.get $6 + local.get $9 + local.get $3 i32.const 4016 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if local.get $2 - local.tee $3 + local.tee $0 i32.const 1 i32.add local.set $2 - local.get $3 - local.get $6 - i32.add + local.get $0 local.get $7 + i32.add + local.get $6 i32.store8 end - local.get $4 + local.get $9 i32.const 1 i32.add - local.set $4 + local.set $9 br $for-loop|0 end end local.get $1 - local.get $6 + local.get $7 local.get $2 call $~lib/rt/itcms/__renew local.tee $0 i32.store local.get $1 + local.set $3 local.get $0 - call $~lib/rt/itcms/__link - local.get $1 + local.tee $1 + if + local.get $3 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $3 local.get $2 i32.store offset=8 + local.get $3 local.get $1 - local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.tee $0 + local.get $3 i32.store offset=8 - local.get $0 + local.get $3 i32.load offset=4 - local.get $0 + local.get $3 i32.load i32.sub if @@ -37384,7 +37342,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.load offset=8 i32.const 3 i32.ne @@ -37396,7 +37354,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 3 @@ -37409,7 +37367,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 4 @@ -37422,7 +37380,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 5 @@ -37513,7 +37471,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store local.get $0 @@ -37521,11 +37479,11 @@ i32.const 1 i32.shr_u local.set $5 - local.get $1 + local.get $2 i32.const 12 i32.const 6 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer local.get $5 @@ -37559,11 +37517,11 @@ i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $2 + local.get $1 local.tee $3 i32.const 1 i32.add - local.set $2 + local.set $1 local.get $3 i32.const 1 i32.shl @@ -37579,30 +37537,34 @@ br $for-loop|0 end end - local.get $1 - local.get $6 local.get $2 + local.get $6 + local.get $1 i32.const 1 i32.shl - local.tee $2 + local.tee $3 call $~lib/rt/itcms/__renew - local.tee $0 + local.tee $1 i32.store + local.get $2 + local.set $0 local.get $1 + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 - call $~lib/rt/itcms/__link - local.get $1 - local.get $2 + local.get $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.tee $0 + local.get $0 i32.store offset=8 local.get $0 i32.load offset=4 @@ -37748,7 +37710,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store local.get $0 @@ -37756,11 +37718,11 @@ i32.const 1 i32.shr_u local.set $5 - local.get $1 + local.get $2 i32.const 12 i32.const 7 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer local.get $5 @@ -37794,11 +37756,11 @@ i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $2 + local.get $1 local.tee $3 i32.const 1 i32.add - local.set $2 + local.set $1 local.get $3 i32.const 1 i32.shl @@ -37814,30 +37776,34 @@ br $for-loop|0 end end - local.get $1 - local.get $6 local.get $2 + local.get $6 + local.get $1 i32.const 1 i32.shl - local.tee $2 + local.tee $3 call $~lib/rt/itcms/__renew - local.tee $0 + local.tee $1 i32.store + local.get $2 + local.set $0 local.get $1 + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 - call $~lib/rt/itcms/__link - local.get $1 - local.get $2 + local.get $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.tee $0 + local.get $0 i32.store offset=8 local.get $0 i32.load offset=4 @@ -37983,7 +37949,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store local.get $0 @@ -37991,11 +37957,11 @@ i32.const 2 i32.shr_u local.set $5 - local.get $1 + local.get $2 i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer local.get $5 @@ -38029,11 +37995,11 @@ i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $2 + local.get $1 local.tee $3 i32.const 1 i32.add - local.set $2 + local.set $1 local.get $3 i32.const 2 i32.shl @@ -38049,30 +38015,34 @@ br $for-loop|0 end end - local.get $1 - local.get $6 local.get $2 + local.get $6 + local.get $1 i32.const 2 i32.shl - local.tee $2 + local.tee $3 call $~lib/rt/itcms/__renew - local.tee $0 + local.tee $1 i32.store + local.get $2 + local.set $0 local.get $1 + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 - call $~lib/rt/itcms/__link - local.get $1 - local.get $2 + local.get $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.tee $0 + local.get $0 i32.store offset=8 local.get $0 i32.load offset=4 @@ -38218,7 +38188,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store local.get $0 @@ -38226,11 +38196,11 @@ i32.const 2 i32.shr_u local.set $5 - local.get $1 + local.get $2 i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer local.get $5 @@ -38264,11 +38234,11 @@ i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $2 + local.get $1 local.tee $3 i32.const 1 i32.add - local.set $2 + local.set $1 local.get $3 i32.const 2 i32.shl @@ -38284,30 +38254,34 @@ br $for-loop|0 end end - local.get $1 - local.get $6 local.get $2 + local.get $6 + local.get $1 i32.const 2 i32.shl - local.tee $2 + local.tee $3 call $~lib/rt/itcms/__renew - local.tee $0 + local.tee $1 i32.store + local.get $2 + local.set $0 local.get $1 + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 - call $~lib/rt/itcms/__link - local.get $1 - local.get $2 + local.get $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.tee $0 + local.get $0 i32.store offset=8 local.get $0 i32.load offset=4 @@ -38453,7 +38427,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store local.get $0 @@ -38461,11 +38435,11 @@ i32.const 3 i32.shr_u local.set $5 - local.get $1 + local.get $2 i32.const 12 i32.const 10 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer local.get $5 @@ -38499,11 +38473,11 @@ i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) if - local.get $2 + local.get $1 local.tee $3 i32.const 1 i32.add - local.set $2 + local.set $1 local.get $3 i32.const 3 i32.shl @@ -38519,30 +38493,34 @@ br $for-loop|0 end end - local.get $1 - local.get $6 local.get $2 + local.get $6 + local.get $1 i32.const 3 i32.shl - local.tee $2 + local.tee $3 call $~lib/rt/itcms/__renew - local.tee $0 + local.tee $1 i32.store + local.get $2 + local.set $0 local.get $1 + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 - call $~lib/rt/itcms/__link - local.get $1 - local.get $2 + local.get $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.tee $0 + local.get $0 i32.store offset=8 local.get $0 i32.load offset=4 @@ -38688,7 +38666,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store local.get $0 @@ -38696,11 +38674,11 @@ i32.const 3 i32.shr_u local.set $5 - local.get $1 + local.get $2 i32.const 12 i32.const 11 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer local.get $5 @@ -38734,11 +38712,11 @@ i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) if - local.get $2 + local.get $1 local.tee $3 i32.const 1 i32.add - local.set $2 + local.set $1 local.get $3 i32.const 3 i32.shl @@ -38754,30 +38732,34 @@ br $for-loop|0 end end - local.get $1 - local.get $6 local.get $2 + local.get $6 + local.get $1 i32.const 3 i32.shl - local.tee $2 + local.tee $3 call $~lib/rt/itcms/__renew - local.tee $0 + local.tee $1 i32.store + local.get $2 + local.set $0 local.get $1 + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 - call $~lib/rt/itcms/__link - local.get $1 - local.get $2 + local.get $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.tee $0 + local.get $0 i32.store offset=8 local.get $0 i32.load offset=4 @@ -38923,7 +38905,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store local.get $0 @@ -38931,11 +38913,11 @@ i32.const 2 i32.shr_u local.set $5 - local.get $1 + local.get $2 i32.const 12 i32.const 12 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer local.get $5 @@ -38969,11 +38951,11 @@ i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) if - local.get $2 + local.get $1 local.tee $3 i32.const 1 i32.add - local.set $2 + local.set $1 local.get $3 i32.const 2 i32.shl @@ -38989,30 +38971,34 @@ br $for-loop|0 end end - local.get $1 - local.get $6 local.get $2 + local.get $6 + local.get $1 i32.const 2 i32.shl - local.tee $2 + local.tee $3 call $~lib/rt/itcms/__renew - local.tee $0 + local.tee $1 i32.store + local.get $2 + local.set $0 local.get $1 + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 - call $~lib/rt/itcms/__link - local.get $1 - local.get $2 + local.get $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.tee $0 + local.get $0 i32.store offset=8 local.get $0 i32.load offset=4 @@ -39158,7 +39144,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store local.get $0 @@ -39166,11 +39152,11 @@ i32.const 3 i32.shr_u local.set $5 - local.get $1 + local.get $2 i32.const 12 i32.const 13 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer local.get $5 @@ -39204,11 +39190,11 @@ i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) if - local.get $2 + local.get $1 local.tee $3 i32.const 1 i32.add - local.set $2 + local.set $1 local.get $3 i32.const 3 i32.shl @@ -39224,30 +39210,34 @@ br $for-loop|0 end end - local.get $1 - local.get $6 local.get $2 + local.get $6 + local.get $1 i32.const 3 i32.shl - local.tee $2 + local.tee $3 call $~lib/rt/itcms/__renew - local.tee $0 + local.tee $1 i32.store + local.get $2 + local.set $0 local.get $1 + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 - call $~lib/rt/itcms/__link - local.get $1 - local.get $2 + local.get $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.tee $0 + local.get $0 i32.store offset=8 local.get $0 i32.load offset=4 @@ -50686,17 +50676,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $0 + local.tee $6 i32.store - local.get $0 + local.get $6 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $6 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $6 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set @@ -50713,16 +50703,16 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $0 + local.get $6 i32.load offset=8 local.set $4 - local.get $0 + local.get $6 i32.load offset=4 local.set $2 - local.get $1 + local.get $0 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new @@ -50732,7 +50722,7 @@ local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $0 i32.store offset=4 loop $for-loop|02 local.get $4 @@ -50746,12 +50736,12 @@ local.set $1 i32.const 3 global.set $~argumentsLength + local.get $0 local.get $5 - local.get $6 i32.add local.get $1 local.get $5 - local.get $0 + local.get $6 i32.const 3600 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50764,13 +50754,16 @@ end end local.get $7 - local.get $6 + local.get $0 i32.store + local.get $0 + if + local.get $7 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $7 - local.get $6 - call $~lib/rt/itcms/__link - local.get $7 - local.get $6 + local.get $0 i32.store offset=4 local.get $7 local.get $4 @@ -50823,17 +50816,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $0 + local.tee $6 i32.store - local.get $0 + local.get $6 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $6 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $6 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -50850,16 +50843,16 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $0 + local.get $6 i32.load offset=8 local.set $4 - local.get $0 + local.get $6 i32.load offset=4 local.set $2 - local.get $1 + local.get $0 i32.const 12 i32.const 4 call $~lib/rt/itcms/__new @@ -50869,7 +50862,7 @@ local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $0 i32.store offset=4 loop $for-loop|04 local.get $4 @@ -50883,12 +50876,12 @@ local.set $1 i32.const 3 global.set $~argumentsLength + local.get $0 local.get $5 - local.get $6 i32.add local.get $1 local.get $5 - local.get $0 + local.get $6 i32.const 3632 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50901,13 +50894,16 @@ end end local.get $7 - local.get $6 + local.get $0 i32.store + local.get $0 + if + local.get $7 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $7 - local.get $6 - call $~lib/rt/itcms/__link - local.get $7 - local.get $6 + local.get $0 i32.store offset=4 local.get $7 local.get $4 @@ -50960,17 +50956,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 + local.tee $6 i32.store - local.get $0 + local.get $6 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $6 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $6 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -50987,16 +50983,16 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $0 + local.get $6 i32.load offset=8 local.set $4 - local.get $0 + local.get $6 i32.load offset=4 local.set $2 - local.get $1 + local.get $0 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new @@ -51006,7 +51002,7 @@ local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $0 i32.store offset=4 loop $for-loop|06 local.get $4 @@ -51020,12 +51016,12 @@ local.set $1 i32.const 3 global.set $~argumentsLength + local.get $0 local.get $5 - local.get $6 i32.add local.get $1 local.get $5 - local.get $0 + local.get $6 i32.const 3664 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -51038,13 +51034,16 @@ end end local.get $7 - local.get $6 + local.get $0 i32.store + local.get $0 + if + local.get $7 + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $7 - local.get $6 - call $~lib/rt/itcms/__link - local.get $7 - local.get $6 + local.get $0 i32.store offset=4 local.get $7 local.get $4 @@ -51183,9 +51182,12 @@ local.get $10 local.get $7 i32.store - local.get $10 local.get $7 - call $~lib/rt/itcms/__link + if + local.get $10 + local.get $7 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $10 local.get $7 i32.store offset=4 @@ -51328,9 +51330,12 @@ local.get $10 local.get $7 i32.store - local.get $10 local.get $7 - call $~lib/rt/itcms/__link + if + local.get $10 + local.get $7 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $10 local.get $7 i32.store offset=4 @@ -51473,9 +51478,12 @@ local.get $10 local.get $7 i32.store - local.get $10 local.get $7 - call $~lib/rt/itcms/__link + if + local.get $10 + local.get $7 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $10 local.get $7 i32.store offset=4 @@ -51618,9 +51626,12 @@ local.get $10 local.get $7 i32.store - local.get $10 local.get $7 - call $~lib/rt/itcms/__link + if + local.get $10 + local.get $7 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $10 local.get $7 i32.store offset=4 @@ -51763,9 +51774,12 @@ local.get $8 local.get $5 i32.store - local.get $8 local.get $5 - call $~lib/rt/itcms/__link + if + local.get $8 + local.get $5 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $8 local.get $5 i32.store offset=4 @@ -51908,9 +51922,12 @@ local.get $8 local.get $5 i32.store - local.get $8 local.get $5 - call $~lib/rt/itcms/__link + if + local.get $8 + local.get $5 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $8 local.get $5 i32.store offset=4 @@ -52053,9 +52070,12 @@ local.get $8 local.get $5 i32.store - local.get $8 local.get $5 - call $~lib/rt/itcms/__link + if + local.get $8 + local.get $5 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $8 local.get $5 i32.store offset=4 @@ -52198,9 +52218,12 @@ local.get $8 local.get $5 i32.store - local.get $8 local.get $5 - call $~lib/rt/itcms/__link + if + local.get $8 + local.get $5 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $8 local.get $5 i32.store offset=4 @@ -60947,9 +60970,12 @@ local.get $1 local.get $4 i32.store - local.get $1 local.get $4 - call $~lib/rt/itcms/__link + if + local.get $1 + local.get $4 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $1 local.get $0 i32.store offset=8 @@ -61193,9 +61219,12 @@ local.get $1 local.get $4 i32.store - local.get $1 local.get $4 - call $~lib/rt/itcms/__link + if + local.get $1 + local.get $4 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $1 local.get $0 i32.store offset=8 @@ -61335,9 +61364,12 @@ local.get $4 local.get $3 i32.store - local.get $4 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $4 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $4 local.get $0 i32.store offset=8 @@ -61478,9 +61510,12 @@ local.get $4 local.get $3 i32.store - local.get $4 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $4 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $4 local.get $0 i32.store offset=8 @@ -61619,9 +61654,12 @@ local.get $4 local.get $3 i32.store - local.get $4 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $4 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $4 local.get $0 i32.store offset=8 @@ -61760,9 +61798,12 @@ local.get $4 local.get $3 i32.store - local.get $4 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $4 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $4 local.get $0 i32.store offset=8 @@ -61902,9 +61943,12 @@ local.get $4 local.get $3 i32.store - local.get $4 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $4 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $4 local.get $0 i32.store offset=8 @@ -62044,9 +62088,12 @@ local.get $4 local.get $3 i32.store - local.get $4 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $4 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $4 local.get $0 i32.store offset=8 @@ -62186,9 +62233,12 @@ local.get $4 local.get $3 i32.store - local.get $4 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $4 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $4 local.get $0 i32.store offset=8 @@ -62328,9 +62378,12 @@ local.get $4 local.get $3 i32.store - local.get $4 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $4 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $4 local.get $0 i32.store offset=8 @@ -64354,9 +64407,6 @@ i32.store local.get $0 i32.const 0 - call $~lib/rt/itcms/__link - local.get $0 - i32.const 0 i32.store offset=4 local.get $0 i32.const 0 @@ -64390,9 +64440,12 @@ local.get $0 local.get $1 i32.store - local.get $0 local.get $1 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $1 i32.store offset=4 @@ -64885,9 +64938,12 @@ i32.load local.tee $5 i32.store - local.get $0 local.get $5 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $5 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $3 i32.load offset=4 @@ -64996,9 +65052,12 @@ i32.load local.tee $5 i32.store - local.get $0 local.get $5 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $5 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $3 i32.load offset=4 @@ -65135,51 +65194,54 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $6 i32.const 0 i32.store local.get $0 local.get $1 i32.shl - local.tee $4 - local.set $6 - local.get $4 + local.tee $5 + local.set $1 + local.get $5 i32.const 0 call $~lib/rt/itcms/__new - local.set $1 + local.set $4 local.get $3 if - local.get $1 + local.get $4 local.get $3 - local.get $6 + local.get $1 call $~lib/memory/memory.copy end - local.get $5 - local.get $1 + local.get $6 + local.get $4 i32.store i32.const 16 local.get $2 call $~lib/rt/itcms/__new - local.tee $2 - local.get $1 + local.tee $1 + local.get $4 i32.store - local.get $2 - local.get $1 - call $~lib/rt/itcms/__link - local.get $2 + local.get $4 + if + local.get $1 + local.get $4 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $1 - i32.store offset=4 - local.get $2 local.get $4 + i32.store offset=4 + local.get $1 + local.get $5 i32.store offset=8 - local.get $2 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 ) (func $~lib/typedarray/Int8Array#subarray (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -65219,9 +65281,12 @@ i32.load local.tee $5 i32.store - local.get $0 local.get $5 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $5 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $1 i32.const 0 @@ -65423,9 +65488,12 @@ i32.load local.tee $3 i32.store - local.get $0 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 4 local.get $4 @@ -65513,9 +65581,12 @@ i32.load local.tee $3 i32.store - local.get $0 local.get $3 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 i32.const 4 local.get $4 @@ -65605,9 +65676,12 @@ i32.load local.tee $4 i32.store - local.get $0 local.get $4 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $4 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $2 i32.load offset=4 @@ -65701,9 +65775,12 @@ i32.load local.tee $4 i32.store - local.get $0 local.get $4 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $4 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $2 i32.load offset=4 @@ -65797,9 +65874,12 @@ i32.load local.tee $4 i32.store - local.get $0 local.get $4 - call $~lib/rt/itcms/__link + if + local.get $0 + local.get $4 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $0 local.get $2 i32.load offset=4 @@ -65879,108 +65959,210 @@ local.get $0 local.tee $2 i32.load offset=8 - i32.const 3 + i32.const 3 + i32.shr_u + local.set $3 + local.get $4 + i32.const 12 + i32.const 10 + call $~lib/rt/itcms/__new + local.tee $0 + i32.store + local.get $0 + local.get $2 + i32.load + local.tee $4 + i32.store + local.get $4 + if + local.get $0 + local.get $4 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $0 + local.get $2 + i32.load offset=4 + i32.const 4 + local.get $3 + local.get $3 + i32.const 4 + i32.gt_u + select + local.tee $2 + i32.const 3 + i32.shl + i32.add + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 0 + i32.lt_s + if (result i32) + local.get $1 + local.get $3 + i32.add + local.tee $1 + i32.const 0 + local.get $1 + i32.const 0 + i32.gt_s + select + else + local.get $1 + local.get $3 + local.get $1 + local.get $3 + i32.lt_s + select + end + local.tee $1 + local.get $2 + local.get $1 + local.get $2 + i32.gt_s + select + local.get $2 + i32.sub + i32.const 3 + i32.shl + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $0 + ) + (func $~lib/typedarray/Uint64Array#subarray (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + if + i32.const 33040 + i32.const 33088 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $4 + i32.const 0 + i32.store + local.get $0 + local.tee $2 + i32.load offset=8 + i32.const 3 + i32.shr_u + local.set $3 + local.get $4 + i32.const 12 + i32.const 11 + call $~lib/rt/itcms/__new + local.tee $0 + i32.store + local.get $0 + local.get $2 + i32.load + local.tee $4 + i32.store + local.get $4 + if + local.get $0 + local.get $4 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $0 + local.get $2 + i32.load offset=4 + i32.const 4 + local.get $3 + local.get $3 + i32.const 4 + i32.gt_u + select + local.tee $2 + i32.const 3 + i32.shl + i32.add + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 0 + i32.lt_s + if (result i32) + local.get $1 + local.get $3 + i32.add + local.tee $1 + i32.const 0 + local.get $1 + i32.const 0 + i32.gt_s + select + else + local.get $1 + local.get $3 + local.get $1 + local.get $3 + i32.lt_s + select + end + local.tee $1 + local.get $2 + local.get $1 + local.get $2 + i32.gt_s + select + local.get $2 + i32.sub + i32.const 3 + i32.shl + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $0 + ) + (func $~lib/typedarray/Float32Array#subarray (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + if + i32.const 33040 + i32.const 33088 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $4 + i32.const 0 + i32.store + local.get $0 + local.tee $2 + i32.load offset=8 + i32.const 2 i32.shr_u local.set $3 local.get $4 i32.const 12 - i32.const 10 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store - local.get $0 - local.get $2 - i32.load - local.tee $4 - i32.store - local.get $0 - local.get $4 - call $~lib/rt/itcms/__link - local.get $0 - local.get $2 - i32.load offset=4 - i32.const 4 - local.get $3 - local.get $3 - i32.const 4 - i32.gt_u - select - local.tee $2 - i32.const 3 - i32.shl - i32.add - i32.store offset=4 - local.get $0 - local.get $1 - i32.const 0 - i32.lt_s - if (result i32) - local.get $1 - local.get $3 - i32.add - local.tee $1 - i32.const 0 - local.get $1 - i32.const 0 - i32.gt_s - select - else - local.get $1 - local.get $3 - local.get $1 - local.get $3 - i32.lt_s - select - end - local.tee $1 - local.get $2 - local.get $1 - local.get $2 - i32.gt_s - select - local.get $2 - i32.sub - i32.const 3 - i32.shl - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $0 - ) - (func $~lib/typedarray/Uint64Array#subarray (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $4 - i32.const 0 - i32.store - local.get $0 - local.tee $2 - i32.load offset=8 - i32.const 3 - i32.shr_u - local.set $3 - local.get $4 i32.const 12 - i32.const 11 call $~lib/rt/itcms/__new local.tee $0 i32.store @@ -65989,105 +66171,12 @@ i32.load local.tee $4 i32.store - local.get $0 local.get $4 - call $~lib/rt/itcms/__link - local.get $0 - local.get $2 - i32.load offset=4 - i32.const 4 - local.get $3 - local.get $3 - i32.const 4 - i32.gt_u - select - local.tee $2 - i32.const 3 - i32.shl - i32.add - i32.store offset=4 - local.get $0 - local.get $1 - i32.const 0 - i32.lt_s - if (result i32) - local.get $1 - local.get $3 - i32.add - local.tee $1 - i32.const 0 - local.get $1 - i32.const 0 - i32.gt_s - select - else - local.get $1 - local.get $3 - local.get $1 - local.get $3 - i32.lt_s - select - end - local.tee $1 - local.get $2 - local.get $1 - local.get $2 - i32.gt_s - select - local.get $2 - i32.sub - i32.const 3 - i32.shl - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $0 - ) - (func $~lib/typedarray/Float32Array#subarray (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s if - i32.const 33040 - i32.const 33088 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable + local.get $0 + local.get $4 + call $byn-split-outlined-A$~lib/rt/itcms/__link end - global.get $~lib/memory/__stack_pointer - local.tee $4 - i32.const 0 - i32.store - local.get $0 - local.tee $2 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.set $3 - local.get $4 - i32.const 12 - i32.const 12 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store - local.get $0 - local.get $2 - i32.load - local.tee $4 - i32.store - local.get $0 - local.get $4 - call $~lib/rt/itcms/__link local.get $0 local.get $2 i32.load offset=4 @@ -66683,4 +66772,72 @@ global.set $~lib/memory/__stack_pointer local.get $2 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) + (func $byn-split-outlined-A$~lib/rt/itcms/__link (param $0 i32) (param $1 i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1232 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $1 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $0 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $0 + i32.const 3 + i32.eq + i32.and + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + end + end + end + ) ) diff --git a/tests/compiler/std/uri.optimized.wat b/tests/compiler/std/uri.optimized.wat index 3b7dce1471..9a9f9ca1c3 100644 --- a/tests/compiler/std/uri.optimized.wat +++ b/tests/compiler/std/uri.optimized.wat @@ -2,9 +2,9 @@ (type $none_=>_none (func)) (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) (type $i32_i32_i32_=>_i32 (func (param i32 i32 i32) (result i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $none_=>_i32 (func (result i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) @@ -156,11 +156,11 @@ (local $0 i32) (local $1 i32) i32.const 1376 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1184 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1584 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -199,160 +199,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1248 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 20748 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1248 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1248 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 4336 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1376 - i32.const 1440 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 4340 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -1032,7 +878,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -3819,7 +3669,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -5405,4 +5258,153 @@ i32.add global.set $~lib/memory/__stack_pointer ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1248 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 20748 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1248 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1248 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 4336 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1376 + i32.const 1440 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 4340 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/super-inline.optimized.wat b/tests/compiler/super-inline.optimized.wat index 84b97c946f..91c91efb4d 100644 --- a/tests/compiler/super-inline.optimized.wat +++ b/tests/compiler/super-inline.optimized.wat @@ -1,8 +1,8 @@ (module (type $none_=>_none (func)) (type $i32_=>_i32 (func (param i32) (result i32))) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $none_=>_i32 (func (result i32))) @@ -42,18 +42,26 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end global.get $super-inline/bar local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + local.tee $1 + if + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1248 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1056 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -92,160 +100,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17868 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1440 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1248 - i32.const 1312 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1444 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -925,7 +779,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1410,7 +1268,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1561,4 +1422,153 @@ global.set $~lib/memory/__stack_pointer local.get $0 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17868 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1440 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1248 + i32.const 1312 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1444 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/templateliteral.optimized.wat b/tests/compiler/templateliteral.optimized.wat index 8e249fcf52..70424b0738 100644 --- a/tests/compiler/templateliteral.optimized.wat +++ b/tests/compiler/templateliteral.optimized.wat @@ -1,6 +1,6 @@ (module - (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) + (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) (type $i32_=>_i32 (func (param i32) (result i32))) (type $none_=>_none (func)) (type $i32_=>_none (func (param i32))) @@ -256,13 +256,13 @@ (local $0 i32) (local $1 i32) i32.const 1408 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1216 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 2464 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 3520 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -435,30 +435,6 @@ local.get $0 i32.store offset=8 ) - (func $~lib/rt/itcms/__visit (param $0 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -1138,7 +1114,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -2826,63 +2806,20 @@ end end ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) + (func $~lib/staticarray/StaticArray<~lib/string/String>#__uset (param $0 i32) (param $1 i32) (param $2 i32) local.get $1 - i32.eqz - if - return - end + i32.const 2 + i32.shl local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1280 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq + i32.add + local.get $2 + i32.store + local.get $2 if local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - local.tee $3 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $0 - local.get $1 - local.get $2 - select - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $3 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end + local.get $2 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link end ) (func $~lib/staticarray/StaticArray<~lib/string/String>#join (param $0 i32) (result i32) @@ -4560,28 +4497,21 @@ global.get $~lib/memory/__stack_pointer i32.const 1744 i32.store offset=16 - i32.const 1748 - i32.const 1056 - i32.store i32.const 1744 - i32.const 1056 i32.const 1 - call $~lib/rt/itcms/__link + i32.const 1056 + call $~lib/staticarray/StaticArray<~lib/string/String>#__uset global.get $~lib/memory/__stack_pointer i32.const 1744 i32.store offset=16 - i32.const 1756 - i32.const 1088 - i32.store i32.const 1744 + i32.const 3 i32.const 1088 - i32.const 1 - call $~lib/rt/itcms/__link + call $~lib/staticarray/StaticArray<~lib/string/String>#__uset global.get $~lib/memory/__stack_pointer - local.tee $0 i32.const 1744 i32.store offset=16 - local.get $0 + global.get $~lib/memory/__stack_pointer i32.const 1184 i32.store offset=20 i32.const 1744 @@ -4695,28 +4625,21 @@ global.get $~lib/memory/__stack_pointer i32.const 3680 i32.store offset=8 - i32.const 3684 - local.get $0 - i32.store i32.const 3680 - local.get $0 i32.const 1 - call $~lib/rt/itcms/__link + local.get $0 + call $~lib/staticarray/StaticArray<~lib/string/String>#__uset global.get $~lib/memory/__stack_pointer i32.const 3680 i32.store offset=8 - i32.const 3692 - local.get $1 - i32.store i32.const 3680 + i32.const 3 local.get $1 - i32.const 1 - call $~lib/rt/itcms/__link + call $~lib/staticarray/StaticArray<~lib/string/String>#__uset global.get $~lib/memory/__stack_pointer - local.tee $0 i32.const 3680 i32.store offset=8 - local.get $0 + global.get $~lib/memory/__stack_pointer i32.const 1184 i32.store offset=12 i32.const 3680 @@ -4830,28 +4753,21 @@ global.get $~lib/memory/__stack_pointer i32.const 4976 i32.store offset=8 - i32.const 4980 - local.get $0 - i32.store i32.const 4976 - local.get $0 i32.const 1 - call $~lib/rt/itcms/__link + local.get $0 + call $~lib/staticarray/StaticArray<~lib/string/String>#__uset global.get $~lib/memory/__stack_pointer i32.const 4976 i32.store offset=8 - i32.const 4988 - local.get $1 - i32.store i32.const 4976 + i32.const 3 local.get $1 - i32.const 1 - call $~lib/rt/itcms/__link + call $~lib/staticarray/StaticArray<~lib/string/String>#__uset global.get $~lib/memory/__stack_pointer - local.tee $0 i32.const 4976 i32.store offset=8 - local.get $0 + global.get $~lib/memory/__stack_pointer i32.const 1184 i32.store offset=12 i32.const 4976 @@ -5180,28 +5096,21 @@ global.get $~lib/memory/__stack_pointer i32.const 5440 i32.store offset=16 - i32.const 5444 - local.get $0 - i32.store i32.const 5440 - local.get $0 i32.const 1 - call $~lib/rt/itcms/__link + local.get $0 + call $~lib/staticarray/StaticArray<~lib/string/String>#__uset global.get $~lib/memory/__stack_pointer i32.const 5440 i32.store offset=16 - i32.const 5452 - local.get $1 - i32.store i32.const 5440 + i32.const 3 local.get $1 - i32.const 1 - call $~lib/rt/itcms/__link + call $~lib/staticarray/StaticArray<~lib/string/String>#__uset global.get $~lib/memory/__stack_pointer - local.tee $0 i32.const 5440 i32.store offset=16 - local.get $0 + global.get $~lib/memory/__stack_pointer i32.const 1184 i32.store offset=20 i32.const 5440 @@ -5333,7 +5242,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -5355,7 +5267,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end local.get $1 i32.const 4 @@ -5374,14 +5289,21 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end local.get $1 i32.load offset=4 local.tee $1 if local.get $1 - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -5493,28 +5415,21 @@ global.get $~lib/memory/__stack_pointer i32.const 5616 i32.store offset=12 - i32.const 5620 - local.get $0 - i32.store i32.const 5616 - local.get $0 i32.const 1 - call $~lib/rt/itcms/__link + local.get $0 + call $~lib/staticarray/StaticArray<~lib/string/String>#__uset global.get $~lib/memory/__stack_pointer i32.const 5616 i32.store offset=12 - i32.const 5628 - local.get $1 - i32.store i32.const 5616 + i32.const 3 local.get $1 - i32.const 1 - call $~lib/rt/itcms/__link + call $~lib/staticarray/StaticArray<~lib/string/String>#__uset global.get $~lib/memory/__stack_pointer - local.tee $0 i32.const 5616 i32.store offset=12 - local.get $0 + global.get $~lib/memory/__stack_pointer i32.const 1184 i32.store offset=16 i32.const 5616 @@ -5663,21 +5578,100 @@ local.get $2 local.get $0 i32.store - local.get $2 local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link + if + local.get $2 + local.get $0 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end local.get $2 local.get $1 i32.store offset=4 - local.get $2 local.get $1 - i32.const 0 - call $~lib/rt/itcms/__link + if + local.get $2 + local.get $1 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer local.get $2 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) + (func $byn-split-outlined-A$~lib/rt/itcms/__link (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1280 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $1 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + local.tee $3 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $0 + local.get $1 + local.get $2 + select + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $3 + i32.const 3 + i32.eq + i32.and + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + end + end + end + ) ) diff --git a/tests/compiler/throw.optimized.wat b/tests/compiler/throw.optimized.wat index 1828c41a75..c18f827f29 100644 --- a/tests/compiler/throw.optimized.wat +++ b/tests/compiler/throw.optimized.wat @@ -1,7 +1,7 @@ (module (type $none_=>_none (func)) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (global $~lib/rt/itcms/state (mut i32) (i32.const 0)) @@ -49,7 +49,7 @@ (local $0 i32) (local $1 i32) i32.const 1488 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -88,163 +88,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1392 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $3 - i32.eqz - if - i32.const 0 - local.get $1 - i32.const 18140 - i32.lt_u - local.get $1 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1392 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $1 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1392 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $3 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $3 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $3 - local.get $0 - local.tee $1 - i32.load offset=12 - local.tee $2 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - local.get $2 - local.tee $0 - i32.const 1728 - i32.load - i32.gt_u - if - i32.const 1488 - i32.const 1552 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 3 - i32.shl - i32.const 1732 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $0 - local.get $3 - i32.load offset=8 - local.set $2 - local.get $1 - local.get $0 - local.get $3 - i32.or - i32.store offset=4 - local.get $1 - local.get $2 - i32.store offset=8 - local.get $2 - local.get $2 - i32.load offset=4 - i32.const 3 - i32.and - local.get $1 - i32.or - i32.store offset=4 - local.get $3 - local.get $1 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -733,7 +576,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -845,7 +692,7 @@ local.get $0 i32.const 4 i32.add - local.tee $3 + local.tee $2 i32.const 18140 i32.ge_u if @@ -961,7 +808,7 @@ if (result i32) local.get $1 i32.load - local.set $2 + local.set $3 i32.const 19708 else i32.const 19724 @@ -976,7 +823,7 @@ i32.ge_u if local.get $0 - local.get $2 + local.get $3 i32.const 2 i32.and local.get $1 @@ -1012,15 +859,15 @@ global.set $~lib/rt/tlsf/ROOT end global.get $~lib/rt/tlsf/ROOT - local.get $3 + local.get $2 i32.const 4 i32.sub local.set $0 - local.get $3 + local.get $2 i32.const 15 i32.and i32.const 1 - local.get $3 + local.get $2 select if (result i32) i32.const 1 @@ -1112,7 +959,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1263,4 +1113,156 @@ unreachable end ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1392 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + local.tee $1 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $3 + i32.eqz + if + i32.const 0 + local.get $1 + i32.const 18140 + i32.lt_u + local.get $1 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1392 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $1 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1392 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $3 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $3 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $3 + local.get $0 + local.tee $1 + i32.load offset=12 + local.tee $2 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + local.get $2 + local.tee $0 + i32.const 1728 + i32.load + i32.gt_u + if + i32.const 1488 + i32.const 1552 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 3 + i32.shl + i32.const 1732 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $0 + local.get $3 + i32.load offset=8 + local.set $2 + local.get $1 + local.get $0 + local.get $3 + i32.or + i32.store offset=4 + local.get $1 + local.get $2 + i32.store offset=8 + local.get $2 + local.get $2 + i32.load offset=4 + i32.const 3 + i32.and + local.get $1 + i32.or + i32.store offset=4 + local.get $3 + local.get $1 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/typeof.optimized.wat b/tests/compiler/typeof.optimized.wat index a4e6109a82..04cfe89733 100644 --- a/tests/compiler/typeof.optimized.wat +++ b/tests/compiler/typeof.optimized.wat @@ -1,7 +1,7 @@ (module (type $none_=>_none (func)) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) @@ -174,17 +174,20 @@ (local $0 i32) (local $1 i32) i32.const 1264 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $typeof/c local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end i32.const 1552 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1360 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -223,160 +226,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1424 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 18220 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1424 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1424 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1792 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1552 - i32.const 1616 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1796 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -1056,7 +905,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1313,13 +1166,20 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end local.get $0 i32.load offset=4 - call $~lib/rt/itcms/__visit + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end return @@ -2078,4 +1938,153 @@ call $~lib/builtins/abort unreachable ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1424 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 18220 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1424 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1424 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1792 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1552 + i32.const 1616 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1796 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) diff --git a/tests/compiler/while.optimized.wat b/tests/compiler/while.optimized.wat index 9996532ede..d74c8a4a42 100644 --- a/tests/compiler/while.optimized.wat +++ b/tests/compiler/while.optimized.wat @@ -1,8 +1,8 @@ (module (type $none_=>_none (func)) - (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) (type $none_=>_i32 (func (result i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $i32_=>_i32 (func (param i32) (result i32))) @@ -39,9 +39,9 @@ (local $0 i32) (local $1 i32) i32.const 1296 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit i32.const 1104 - call $~lib/rt/itcms/__visit + call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/rt/itcms/pinSpace local.tee $1 i32.load offset=4 @@ -80,160 +80,6 @@ end end ) - (func $~lib/rt/itcms/__visit (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.eqz - if - return - end - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - global.get $~lib/rt/itcms/iter - local.get $0 - i32.eq - if - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1168 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - i32.load offset=4 - i32.const -4 - i32.and - local.tee $2 - i32.eqz - if - i32.const 0 - local.get $0 - i32.const 17908 - i32.lt_u - local.get $0 - i32.load offset=8 - select - i32.eqz - if - i32.const 0 - i32.const 1168 - i32.const 127 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - br $__inlined_func$~lib/rt/itcms/Object#unlink - end - local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1168 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $2 - i32.or - i32.store offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $1 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - i32.const 1488 - i32.load - local.get $1 - i32.lt_u - if - i32.const 1296 - i32.const 1360 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.shl - i32.const 1492 - i32.add - i32.load - i32.const 32 - i32.and - end - if (result i32) - global.get $~lib/rt/itcms/white - i32.eqz - else - i32.const 2 - end - local.set $3 - local.get $2 - i32.load offset=8 - local.set $1 - local.get $0 - local.get $2 - local.get $3 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) (func $~lib/rt/tlsf/removeBlock (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) @@ -913,7 +759,11 @@ if local.get $0 i32.load - call $~lib/rt/itcms/__visit + local.tee $2 + if + local.get $2 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end local.get $0 i32.const 4 i32.add @@ -1685,7 +1535,10 @@ local.tee $0 if local.get $0 - call $~lib/rt/itcms/__visit + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end end return end @@ -1952,4 +1805,153 @@ global.set $~lib/memory/__stack_pointer local.get $4 ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + global.get $~lib/rt/itcms/iter + local.get $0 + i32.eq + if + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1168 + i32.const 147 + i32.const 30 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.set $~lib/rt/itcms/iter + end + block $__inlined_func$~lib/rt/itcms/Object#unlink + local.get $0 + i32.load offset=4 + i32.const -4 + i32.and + local.tee $2 + i32.eqz + if + i32.const 0 + local.get $0 + i32.const 17908 + i32.lt_u + local.get $0 + i32.load offset=8 + select + i32.eqz + if + i32.const 0 + i32.const 1168 + i32.const 127 + i32.const 18 + call $~lib/builtins/abort + unreachable + end + br $__inlined_func$~lib/rt/itcms/Object#unlink + end + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if + i32.const 0 + i32.const 1168 + i32.const 131 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $2 + i32.or + i32.store offset=4 + end + global.get $~lib/rt/itcms/toSpace + local.set $2 + local.get $0 + i32.load offset=12 + local.tee $1 + i32.const 1 + i32.le_u + if (result i32) + i32.const 1 + else + i32.const 1488 + i32.load + local.get $1 + i32.lt_u + if + i32.const 1296 + i32.const 1360 + i32.const 22 + i32.const 28 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.shl + i32.const 1492 + i32.add + i32.load + i32.const 32 + i32.and + end + if (result i32) + global.get $~lib/rt/itcms/white + i32.eqz + else + i32.const 2 + end + local.set $3 + local.get $2 + i32.load offset=8 + local.set $1 + local.get $0 + local.get $2 + local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) ) From 9f5752ba30131076035d6fd3376684a9b696c280 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Mon, 20 Sep 2021 12:00:48 +0300 Subject: [PATCH 10/54] add extra ssa-nomerge --- src/module.ts | 1 + tests/compiler/NonNullable.optimized.wat | 6 +- tests/compiler/builtins.optimized.wat | 6 +- tests/compiler/call-super.optimized.wat | 249 +- tests/compiler/class-implements.optimized.wat | 149 +- .../class-overloading-cast.optimized.wat | 161 +- .../compiler/class-overloading.optimized.wat | 167 +- tests/compiler/class.optimized.wat | 215 +- tests/compiler/constructor.optimized.wat | 282 +- tests/compiler/do.optimized.wat | 151 +- .../empty-exportruntime.optimized.wat | 243 +- tests/compiler/empty-new.optimized.wat | 147 +- tests/compiler/exports.optimized.wat | 159 +- .../exportstar-rereexport.optimized.wat | 178 +- .../extends-baseaggregate.optimized.wat | 557 +- .../compiler/extends-recursive.optimized.wat | 133 +- tests/compiler/features/simd.optimized.wat | 121 +- .../field-initialization.optimized.wat | 429 +- tests/compiler/field.optimized.wat | 679 +- tests/compiler/for.optimized.wat | 151 +- tests/compiler/function-call.optimized.wat | 159 +- .../function-expression.optimized.wat | 162 +- tests/compiler/getter-call.optimized.wat | 155 +- tests/compiler/heap.optimized.wat | 331 +- .../implicit-getter-setter.optimized.wat | 129 +- tests/compiler/infer-array.optimized.wat | 545 +- tests/compiler/infer-generic.optimized.wat | 225 +- tests/compiler/inlining.optimized.wat | 249 +- tests/compiler/instanceof-class.optimized.wat | 149 +- tests/compiler/issues/1095.optimized.wat | 208 +- tests/compiler/issues/1225.optimized.wat | 220 +- tests/compiler/issues/1699.optimized.wat | 614 +- tests/compiler/logical.optimized.wat | 151 +- tests/compiler/managed-cast.optimized.wat | 219 +- tests/compiler/memcpy.optimized.wat | 222 +- tests/compiler/memset.optimized.wat | 42 +- tests/compiler/new.optimized.wat | 161 +- tests/compiler/number.optimized.wat | 650 +- tests/compiler/object-literal.optimized.wat | 773 +- .../optional-typeparameters.optimized.wat | 149 +- tests/compiler/reexport.optimized.wat | 159 +- tests/compiler/rereexport.optimized.wat | 178 +- tests/compiler/resolve-access.optimized.wat | 711 +- tests/compiler/resolve-binary.optimized.wat | 631 +- .../resolve-elementaccess.optimized.wat | 748 +- .../resolve-function-expression.optimized.wat | 275 +- tests/compiler/resolve-nested.optimized.wat | 143 +- tests/compiler/resolve-new.optimized.wat | 151 +- .../resolve-propertyaccess.optimized.wat | 255 +- tests/compiler/resolve-ternary.optimized.wat | 618 +- tests/compiler/resolve-unary.optimized.wat | 281 +- tests/compiler/rt/finalize.optimized.wat | 151 +- tests/compiler/rt/instanceof.optimized.wat | 161 +- .../runtime-incremental-export.optimized.wat | 243 +- .../rt/runtime-minimal-export.optimized.wat | 185 +- .../rt/runtime-stub-export.optimized.wat | 39 +- tests/compiler/std-wasi/console.optimized.wat | 547 +- tests/compiler/std-wasi/crypto.optimized.wat | 764 +- tests/compiler/std-wasi/process.optimized.wat | 959 +- tests/compiler/std/array-access.optimized.wat | 47 +- .../compiler/std/array-literal.optimized.wat | 256 +- tests/compiler/std/array.optimized.wat | 8345 ++++---- tests/compiler/std/arraybuffer.optimized.wat | 481 +- tests/compiler/std/dataview.optimized.wat | 553 +- tests/compiler/std/date.optimized.wat | 1807 +- tests/compiler/std/map.optimized.wat | 7223 ++++--- tests/compiler/std/math.optimized.wat | 4113 ++-- tests/compiler/std/mod.optimized.wat | 187 +- tests/compiler/std/new.optimized.wat | 179 +- tests/compiler/std/object.optimized.wat | 6 +- .../std/operator-overloading.optimized.wat | 199 +- tests/compiler/std/pointer.optimized.wat | 332 +- tests/compiler/std/set.optimized.wat | 3645 ++-- tests/compiler/std/static-array.optimized.wat | 441 +- tests/compiler/std/staticarray.optimized.wat | 1952 +- .../std/string-casemapping.optimized.wat | 1442 +- .../std/string-encoding.optimized.wat | 625 +- tests/compiler/std/string.optimized.wat | 3369 ++-- tests/compiler/std/symbol.optimized.wat | 753 +- tests/compiler/std/typedarray.optimized.wat | 15688 ++++++++-------- tests/compiler/std/uri.optimized.wat | 628 +- tests/compiler/super-inline.optimized.wat | 149 +- tests/compiler/templateliteral.optimized.wat | 829 +- tests/compiler/throw.optimized.wat | 99 +- tests/compiler/typeof.optimized.wat | 213 +- tests/compiler/wasi/abort.optimized.wat | 46 +- tests/compiler/wasi/seed.optimized.wat | 42 +- tests/compiler/wasi/trace.optimized.wat | 659 +- tests/compiler/while.optimized.wat | 151 +- 89 files changed, 35578 insertions(+), 35777 deletions(-) diff --git a/src/module.ts b/src/module.ts index 76e6c73dd8..900a6b190d 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2374,6 +2374,7 @@ export class Module { passes.push("code-pushing"); if (optimizeLevel >= 3) { // very expensive, so O3 only + passes.push("ssa-nomerge"); passes.push("simplify-globals"); passes.push("vacuum"); diff --git a/tests/compiler/NonNullable.optimized.wat b/tests/compiler/NonNullable.optimized.wat index 74e9f4ab52..a619c4e817 100644 --- a/tests/compiler/NonNullable.optimized.wat +++ b/tests/compiler/NonNullable.optimized.wat @@ -109,14 +109,14 @@ if local.get $3 i32.load16_u - local.tee $2 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $2 i32.ne if - local.get $2 local.get $4 + local.get $2 i32.sub br $__inlined_func$~lib/util/string/compareImpl end diff --git a/tests/compiler/builtins.optimized.wat b/tests/compiler/builtins.optimized.wat index 3e37054af4..073ee2f015 100644 --- a/tests/compiler/builtins.optimized.wat +++ b/tests/compiler/builtins.optimized.wat @@ -165,14 +165,14 @@ if local.get $3 i32.load16_u - local.tee $2 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $2 i32.ne if - local.get $2 local.get $4 + local.get $2 i32.sub br $__inlined_func$~lib/util/string/compareImpl end diff --git a/tests/compiler/call-super.optimized.wat b/tests/compiler/call-super.optimized.wat index 7c96dcebab..d05d31445d 100644 --- a/tests/compiler/call-super.optimized.wat +++ b/tests/compiler/call-super.optimized.wat @@ -164,19 +164,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -201,9 +201,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -211,17 +211,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -509,10 +509,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -524,15 +524,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -562,7 +562,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -875,7 +875,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17980 i32.ge_u if @@ -885,20 +885,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -911,8 +911,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1092,12 +1091,12 @@ if block $__inlined_func$~lib/rt/itcms/interrupt i32.const 2048 - local.set $3 + local.set $2 loop $do-loop|0 - local.get $3 + local.get $2 call $~lib/rt/itcms/step i32.sub - local.set $3 + local.set $2 global.get $~lib/rt/itcms/state i32.eqz if @@ -1113,14 +1112,14 @@ global.set $~lib/rt/itcms/threshold br $__inlined_func$~lib/rt/itcms/interrupt end - local.get $3 + local.get $2 i32.const 0 i32.gt_s br_if $do-loop|0 end global.get $~lib/rt/itcms/total - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 @@ -1134,15 +1133,15 @@ local.get $0 i32.const 16 i32.add - local.set $3 + local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $6 - local.get $3 + local.tee $3 + local.get $2 i32.const 1073741820 i32.gt_u if @@ -1153,13 +1152,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $3 + local.get $2 i32.const 19 i32.add i32.const -16 @@ -1167,34 +1166,34 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size - local.tee $5 - local.get $3 + local.tee $2 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $6 + local.get $3 i32.load offset=1568 - local.get $5 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1208,16 +1207,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $5 local.get $2 local.get $5 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1225,16 +1224,16 @@ unreachable end end - local.get $6 - local.get $5 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1251,7 +1250,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1261,13 +1260,13 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1283,9 +1282,9 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if @@ -1293,23 +1292,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1373,19 +1372,19 @@ local.get $2 i32.const 20 i32.add - local.tee $3 - local.set $2 + local.tee $2 + local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 i32.eqz br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 local.get $0 - local.get $2 + local.get $1 i32.add - local.tee $1 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1394,18 +1393,18 @@ i32.const 2 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=1 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=2 - local.get $1 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1414,10 +1413,10 @@ i32.const 6 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=3 - local.get $1 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1426,97 +1425,97 @@ i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 - local.get $2 + local.get $1 i32.sub i32.const 3 i32.and - local.tee $1 + local.tee $3 i32.add - local.tee $4 + local.tee $1 i32.const 0 i32.store - local.get $4 - local.get $0 local.get $1 + local.get $0 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=4 - local.get $4 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=12 - local.get $4 + local.get $1 i32.const 0 i32.store offset=16 - local.get $4 + local.get $1 i32.const 0 i32.store offset=20 - local.get $4 + local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 i32.store - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.const 4 i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1548,7 +1547,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/rt/__visit_members (param $0 i32) block $invalid @@ -2232,19 +2231,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -2254,22 +2253,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17980 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -2283,9 +2282,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2295,23 +2294,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -2319,7 +2318,7 @@ else i32.const 1488 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1296 @@ -2329,7 +2328,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1492 @@ -2344,28 +2343,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/class-implements.optimized.wat b/tests/compiler/class-implements.optimized.wat index c638c4786a..b1472a47c0 100644 --- a/tests/compiler/class-implements.optimized.wat +++ b/tests/compiler/class-implements.optimized.wat @@ -52,9 +52,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -62,9 +61,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -194,19 +192,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -231,9 +229,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -241,17 +239,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -539,10 +537,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -554,15 +552,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -592,7 +590,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -905,7 +903,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17948 i32.ge_u if @@ -915,20 +913,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -941,8 +939,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -978,9 +975,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1084,17 +1081,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size - local.tee $2 + local.tee $1 i32.const 4 - local.get $3 - i32.load offset=1568 local.get $2 + i32.load offset=1568 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1107,16 +1104,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $1 - local.get $2 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1124,15 +1121,15 @@ unreachable end end - local.get $3 local.get $2 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1159,22 +1156,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $2 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $2 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1183,19 +1180,19 @@ local.get $1 i32.const 32 i32.add - local.tee $2 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $2 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $2 + local.get $4 i32.const -2 i32.and i32.store @@ -1579,19 +1576,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1601,22 +1598,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17948 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1630,9 +1627,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1642,23 +1639,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1666,7 +1663,7 @@ else i32.const 1504 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1676,7 +1673,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1508 @@ -1691,28 +1688,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/class-overloading-cast.optimized.wat b/tests/compiler/class-overloading-cast.optimized.wat index e266558f71..1594b31aeb 100644 --- a/tests/compiler/class-overloading-cast.optimized.wat +++ b/tests/compiler/class-overloading-cast.optimized.wat @@ -54,9 +54,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -64,9 +63,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -74,9 +72,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -84,9 +81,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -216,19 +212,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -253,9 +249,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -263,17 +259,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -561,10 +557,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -576,15 +572,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -614,7 +610,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -927,7 +923,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 18084 i32.ge_u if @@ -937,20 +933,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -963,8 +959,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1000,9 +995,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1106,17 +1101,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size - local.tee $2 + local.tee $1 i32.const 4 - local.get $3 - i32.load offset=1568 local.get $2 + i32.load offset=1568 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1129,16 +1124,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $1 - local.get $2 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1146,15 +1141,15 @@ unreachable end end - local.get $3 local.get $2 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1181,22 +1176,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $2 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $2 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1205,19 +1200,19 @@ local.get $1 i32.const 32 i32.add - local.tee $2 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $2 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $2 + local.get $4 i32.const -2 i32.and i32.store @@ -1368,14 +1363,14 @@ if local.get $3 i32.load16_u - local.tee $2 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $2 i32.ne if - local.get $2 local.get $4 + local.get $2 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -1879,19 +1874,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1901,22 +1896,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18084 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1930,9 +1925,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1942,23 +1937,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1966,7 +1961,7 @@ else i32.const 1616 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1976,7 +1971,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1620 @@ -1991,28 +1986,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/class-overloading.optimized.wat b/tests/compiler/class-overloading.optimized.wat index 15a8167d5c..621ac5fb18 100644 --- a/tests/compiler/class-overloading.optimized.wat +++ b/tests/compiler/class-overloading.optimized.wat @@ -66,9 +66,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -76,9 +75,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -86,9 +84,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -96,9 +93,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -106,9 +102,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -116,9 +111,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -248,19 +242,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -285,9 +279,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -295,17 +289,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -593,10 +587,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -608,15 +602,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -646,7 +640,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -959,7 +953,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 18316 i32.ge_u if @@ -969,20 +963,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -995,8 +989,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1032,9 +1025,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1138,17 +1131,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size - local.tee $2 + local.tee $1 i32.const 4 - local.get $3 - i32.load offset=1568 local.get $2 + i32.load offset=1568 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1161,16 +1154,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $1 - local.get $2 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1178,15 +1171,15 @@ unreachable end end - local.get $3 local.get $2 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1213,22 +1206,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $2 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $2 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1237,19 +1230,19 @@ local.get $1 i32.const 32 i32.add - local.tee $2 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $2 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $2 + local.get $4 i32.const -2 i32.and i32.store @@ -1400,14 +1393,14 @@ if local.get $3 i32.load16_u - local.tee $2 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $2 i32.ne if - local.get $2 local.get $4 + local.get $2 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -3013,19 +3006,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -3035,22 +3028,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18316 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -3064,9 +3057,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -3076,23 +3069,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -3100,7 +3093,7 @@ else i32.const 1792 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1280 @@ -3110,7 +3103,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1796 @@ -3125,28 +3118,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/class.optimized.wat b/tests/compiler/class.optimized.wat index dcfb1bf77b..e268a9b65b 100644 --- a/tests/compiler/class.optimized.wat +++ b/tests/compiler/class.optimized.wat @@ -116,7 +116,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -139,7 +139,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -149,15 +149,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -198,20 +198,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -306,19 +306,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -343,9 +343,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -353,17 +353,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -651,10 +651,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -666,15 +666,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -704,7 +704,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1017,7 +1017,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17972 i32.ge_u if @@ -1027,20 +1027,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1053,8 +1053,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1281,14 +1280,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1298,17 +1297,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1324,22 +1323,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1350,11 +1349,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1459,7 +1458,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $5 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1485,34 +1484,34 @@ i32.const 4 i32.sub end - local.tee $2 + local.tee $5 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $2 i32.eqz if memory.size - local.tee $4 - local.get $2 + local.tee $2 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $2 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $2 + local.get $5 i32.add else - local.get $2 + local.get $5 end i32.const 4 - local.get $5 + local.get $3 i32.load offset=1568 - local.get $4 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1526,16 +1525,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $3 + local.tee $4 + local.get $2 local.get $4 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1543,18 +1542,18 @@ unreachable end end - local.get $5 - local.get $4 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $3 local.get $5 - local.get $2 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $2 i32.eqz if i32.const 0 @@ -1565,11 +1564,11 @@ unreachable end end - local.get $3 + local.get $2 i32.load i32.const -4 i32.and - local.get $2 + local.get $5 i32.lt_u if i32.const 0 @@ -1579,13 +1578,13 @@ call $~lib/builtins/abort unreachable end - local.get $5 local.get $3 + local.get $2 call $~lib/rt/tlsf/removeBlock - local.get $3 - i32.load - local.set $4 local.get $2 + i32.load + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1598,89 +1597,89 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 i32.const -4 i32.and - local.get $2 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.const 2 i32.and - local.get $2 + local.get $5 i32.or i32.store + local.get $5 local.get $2 - local.get $3 i32.const 4 i32.add i32.add - local.tee $2 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $3 local.get $5 - local.get $2 call $~lib/rt/tlsf/insertBlock else - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.const -2 i32.and i32.store - local.get $3 + local.get $2 i32.const 4 i32.add - local.get $3 + local.get $2 i32.load i32.const -4 i32.and i32.add - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.load i32.const -3 i32.and i32.store end - local.get $3 + local.get $2 local.get $1 i32.store offset=12 - local.get $3 + local.get $2 local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace local.tee $1 i32.load offset=8 - local.set $2 - local.get $3 + local.set $3 + local.get $2 global.get $~lib/rt/itcms/white local.get $1 i32.or i32.store offset=4 - local.get $3 local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $3 + local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total - local.get $3 + local.get $2 i32.load i32.const -4 i32.and @@ -1688,7 +1687,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $3 + local.get $2 i32.const 20 i32.add local.tee $1 @@ -1720,7 +1719,7 @@ i32.const 4 i32.const 4 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 8 @@ -1785,7 +1784,7 @@ i32.load offset=4 i32.const 3 i32.and - local.tee $1 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq @@ -1796,7 +1795,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $1 + local.get $3 i32.const 3 i32.eq i32.and @@ -1820,12 +1819,12 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 local.get $0 i32.store local.get $0 if - local.get $3 + local.get $1 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white @@ -1838,13 +1837,13 @@ i32.and i32.eq if - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $4 + local.tee $1 global.get $~lib/rt/itcms/white i32.eqz i32.eq @@ -1855,7 +1854,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $4 + local.get $1 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/constructor.optimized.wat b/tests/compiler/constructor.optimized.wat index ac779a4c8b..66da7d7caf 100644 --- a/tests/compiler/constructor.optimized.wat +++ b/tests/compiler/constructor.optimized.wat @@ -53,9 +53,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -63,9 +62,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -73,9 +71,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -83,9 +80,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -93,9 +89,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -103,9 +98,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -113,9 +107,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -123,9 +116,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -133,9 +125,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -143,9 +134,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -153,9 +143,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -285,19 +274,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -322,9 +311,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -332,17 +321,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -630,10 +619,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -645,15 +634,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -683,7 +672,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -996,7 +985,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17988 i32.ge_u if @@ -1006,20 +995,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1032,8 +1021,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1213,12 +1201,12 @@ if block $__inlined_func$~lib/rt/itcms/interrupt i32.const 2048 - local.set $3 + local.set $2 loop $do-loop|0 - local.get $3 + local.get $2 call $~lib/rt/itcms/step i32.sub - local.set $3 + local.set $2 global.get $~lib/rt/itcms/state i32.eqz if @@ -1234,14 +1222,14 @@ global.set $~lib/rt/itcms/threshold br $__inlined_func$~lib/rt/itcms/interrupt end - local.get $3 + local.get $2 i32.const 0 i32.gt_s br_if $do-loop|0 end global.get $~lib/rt/itcms/total - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 @@ -1255,15 +1243,15 @@ local.get $0 i32.const 16 i32.add - local.set $3 + local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $6 - local.get $3 + local.tee $3 + local.get $2 i32.const 1073741820 i32.gt_u if @@ -1274,13 +1262,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $3 + local.get $2 i32.const 19 i32.add i32.const -16 @@ -1288,34 +1276,34 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size - local.tee $5 - local.get $3 + local.tee $2 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $6 + local.get $3 i32.load offset=1568 - local.get $5 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1329,16 +1317,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $5 local.get $2 local.get $5 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1346,16 +1334,16 @@ unreachable end end - local.get $6 - local.get $5 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1372,7 +1360,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1382,13 +1370,13 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1404,9 +1392,9 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if @@ -1414,23 +1402,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1494,19 +1482,19 @@ local.get $2 i32.const 20 i32.add - local.tee $3 - local.set $2 + local.tee $2 + local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 i32.eqz br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 local.get $0 - local.get $2 + local.get $1 i32.add - local.tee $1 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1515,18 +1503,18 @@ i32.const 2 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=1 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=2 - local.get $1 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1535,10 +1523,10 @@ i32.const 6 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=3 - local.get $1 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1547,97 +1535,97 @@ i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 - local.get $2 + local.get $1 i32.sub i32.const 3 i32.and - local.tee $1 + local.tee $3 i32.add - local.tee $4 + local.tee $1 i32.const 0 i32.store - local.get $4 - local.get $0 local.get $1 + local.get $0 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=4 - local.get $4 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=12 - local.get $4 + local.get $1 i32.const 0 i32.store offset=16 - local.get $4 + local.get $1 i32.const 0 i32.store offset=20 - local.get $4 + local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 i32.store - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.const 4 i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1669,7 +1657,7 @@ end end end - local.get $3 + local.get $2 ) (func $start:constructor (local $0 i32) @@ -2132,19 +2120,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -2154,22 +2142,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17988 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -2183,9 +2171,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2195,23 +2183,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -2219,7 +2207,7 @@ else i32.const 1488 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -2229,7 +2217,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1492 @@ -2244,28 +2232,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/do.optimized.wat b/tests/compiler/do.optimized.wat index 2f5a5990c0..2a15db07c7 100644 --- a/tests/compiler/do.optimized.wat +++ b/tests/compiler/do.optimized.wat @@ -164,19 +164,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -201,9 +201,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -211,17 +211,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -509,10 +509,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -524,15 +524,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -562,7 +562,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -875,7 +875,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17892 i32.ge_u if @@ -885,20 +885,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -911,8 +911,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -948,9 +947,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1506,7 +1505,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $2 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1560,17 +1559,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz if memory.size - local.tee $1 + local.tee $0 i32.const 4 - local.get $2 - i32.load offset=1568 local.get $1 + i32.load offset=1568 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1583,16 +1582,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $0 + local.tee $3 local.get $0 - local.get $1 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $0 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1600,15 +1599,15 @@ unreachable end end - local.get $2 local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1635,22 +1634,22 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $1 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if local.get $0 - local.get $1 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1659,19 +1658,19 @@ local.get $0 i32.const 32 i32.add - local.tee $1 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 local.get $1 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $1 + local.get $3 i32.const -2 i32.and i32.store @@ -1728,17 +1727,17 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $4 + local.get $2 local.get $0 i32.const 20 i32.add - local.tee $4 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $0 ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) (local $1 i32) @@ -1748,19 +1747,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1770,22 +1769,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17892 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1799,9 +1798,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1811,23 +1810,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1835,7 +1834,7 @@ else i32.const 1472 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1280 @@ -1845,7 +1844,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1476 @@ -1860,28 +1859,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/empty-exportruntime.optimized.wat b/tests/compiler/empty-exportruntime.optimized.wat index 9501d5f558..f4ab9e161e 100644 --- a/tests/compiler/empty-exportruntime.optimized.wat +++ b/tests/compiler/empty-exportruntime.optimized.wat @@ -168,10 +168,10 @@ local.get $0 call $~lib/rt/itcms/Object#unlink global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -179,7 +179,7 @@ else i32.const 1568 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1248 @@ -189,7 +189,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 1572 @@ -204,27 +204,27 @@ else i32.const 2 end - local.set $3 - local.get $2 + local.set $2 + local.get $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -312,19 +312,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -349,9 +349,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -359,17 +359,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -657,10 +657,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -672,15 +672,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -710,7 +710,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1023,7 +1023,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17980 i32.ge_u if @@ -1033,20 +1033,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1059,8 +1059,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1240,12 +1239,12 @@ if block $__inlined_func$~lib/rt/itcms/interrupt i32.const 2048 - local.set $3 + local.set $2 loop $do-loop|0 - local.get $3 + local.get $2 call $~lib/rt/itcms/step i32.sub - local.set $3 + local.set $2 global.get $~lib/rt/itcms/state i32.eqz if @@ -1261,14 +1260,14 @@ global.set $~lib/rt/itcms/threshold br $__inlined_func$~lib/rt/itcms/interrupt end - local.get $3 + local.get $2 i32.const 0 i32.gt_s br_if $do-loop|0 end global.get $~lib/rt/itcms/total - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 @@ -1282,15 +1281,15 @@ local.get $0 i32.const 16 i32.add - local.set $3 + local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $6 - local.get $3 + local.tee $3 + local.get $2 i32.const 1073741820 i32.gt_u if @@ -1301,13 +1300,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $3 + local.get $2 i32.const 19 i32.add i32.const -16 @@ -1315,34 +1314,34 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size - local.tee $5 - local.get $3 + local.tee $2 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $6 + local.get $3 i32.load offset=1568 - local.get $5 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1356,16 +1355,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $5 local.get $2 local.get $5 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1373,16 +1372,16 @@ unreachable end end - local.get $6 - local.get $5 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1399,7 +1398,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1409,13 +1408,13 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1431,9 +1430,9 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if @@ -1441,23 +1440,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1521,19 +1520,19 @@ local.get $2 i32.const 20 i32.add - local.tee $3 - local.set $2 + local.tee $2 + local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 i32.eqz br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 local.get $0 - local.get $2 + local.get $1 i32.add - local.tee $1 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1542,18 +1541,18 @@ i32.const 2 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=1 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=2 - local.get $1 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1562,10 +1561,10 @@ i32.const 6 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=3 - local.get $1 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1574,97 +1573,97 @@ i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 - local.get $2 + local.get $1 i32.sub i32.const 3 i32.and - local.tee $1 + local.tee $3 i32.add - local.tee $4 + local.tee $1 i32.const 0 i32.store - local.get $4 - local.get $0 local.get $1 + local.get $0 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=4 - local.get $4 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=12 - local.get $4 + local.get $1 i32.const 0 i32.store offset=16 - local.get $4 + local.get $1 i32.const 0 i32.store offset=20 - local.get $4 + local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 i32.store - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.const 4 i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1696,7 +1695,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/rt/itcms/__pin (param $0 i32) (result i32) (local $1 i32) @@ -1760,7 +1759,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $2 i32.load offset=4 i32.const 3 i32.and @@ -1778,33 +1777,33 @@ i32.const 1 i32.eq if - local.get $0 + local.get $2 call $~lib/rt/itcms/Object#makeGray else - local.get $0 + local.get $2 call $~lib/rt/itcms/Object#unlink global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $1 i32.load offset=8 - local.set $1 - local.get $0 - global.get $~lib/rt/itcms/white + local.set $0 local.get $2 + global.get $~lib/rt/itcms/white + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $0 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 + local.get $1 local.get $2 - local.get $0 i32.store offset=8 end ) diff --git a/tests/compiler/empty-new.optimized.wat b/tests/compiler/empty-new.optimized.wat index 647d074d97..6678ce2e78 100644 --- a/tests/compiler/empty-new.optimized.wat +++ b/tests/compiler/empty-new.optimized.wat @@ -160,19 +160,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -197,9 +197,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -207,17 +207,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -505,10 +505,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -520,15 +520,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -558,7 +558,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -871,7 +871,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17852 i32.ge_u if @@ -881,20 +881,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -907,8 +907,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -944,9 +943,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1111,17 +1110,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz if memory.size - local.tee $1 + local.tee $0 i32.const 4 - local.get $2 - i32.load offset=1568 local.get $1 + i32.load offset=1568 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1134,16 +1133,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $0 + local.tee $2 local.get $0 - local.get $1 - i32.lt_s + local.get $2 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $0 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1151,15 +1150,15 @@ unreachable end end - local.get $2 local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1186,12 +1185,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $1 + local.tee $2 i32.const -4 i32.and i32.const 28 @@ -1201,7 +1200,7 @@ i32.ge_u if local.get $0 - local.get $1 + local.get $2 i32.const 2 i32.and i32.const 28 @@ -1210,19 +1209,19 @@ local.get $0 i32.const 32 i32.add - local.tee $1 + local.tee $2 local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 local.get $1 + local.get $2 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $1 + local.get $2 i32.const -2 i32.and i32.store @@ -1250,17 +1249,17 @@ global.get $~lib/rt/itcms/fromSpace local.tee $1 i32.load offset=8 - local.set $3 + local.set $2 local.get $0 global.get $~lib/rt/itcms/white local.get $1 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and @@ -1288,19 +1287,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1310,22 +1309,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17852 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1339,9 +1338,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1351,23 +1350,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1375,7 +1374,7 @@ else i32.const 1440 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1385,7 +1384,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1444 @@ -1400,28 +1399,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/exports.optimized.wat b/tests/compiler/exports.optimized.wat index 9d60d1a4d2..20982035e8 100644 --- a/tests/compiler/exports.optimized.wat +++ b/tests/compiler/exports.optimized.wat @@ -214,19 +214,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -251,9 +251,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -261,17 +261,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -559,10 +559,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -574,15 +574,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -612,7 +612,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -925,7 +925,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17868 i32.ge_u if @@ -935,20 +935,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -961,8 +961,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -998,9 +997,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1104,17 +1103,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size - local.tee $2 + local.tee $1 i32.const 4 - local.get $3 - i32.load offset=1568 local.get $2 + i32.load offset=1568 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1127,16 +1126,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $1 - local.get $2 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1144,15 +1143,15 @@ unreachable end end - local.get $3 local.get $2 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1179,22 +1178,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $2 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $2 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1203,19 +1202,19 @@ local.get $1 i32.const 32 i32.add - local.tee $2 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $2 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $2 + local.get $4 i32.const -2 i32.and i32.store @@ -1275,34 +1274,34 @@ local.get $1 i32.const 20 i32.add - local.tee $1 + local.tee $0 i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 1 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=2 - local.get $0 + local.get $1 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $0 + local.get $1 i32.const 3 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $0 ) (func $export/mul (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -1627,19 +1626,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1649,22 +1648,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17868 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1678,9 +1677,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1690,23 +1689,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1714,7 +1713,7 @@ else i32.const 1440 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1724,7 +1723,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1444 @@ -1739,28 +1738,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/exportstar-rereexport.optimized.wat b/tests/compiler/exportstar-rereexport.optimized.wat index c1207b715a..1eddbd4e20 100644 --- a/tests/compiler/exportstar-rereexport.optimized.wat +++ b/tests/compiler/exportstar-rereexport.optimized.wat @@ -79,9 +79,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -89,9 +88,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -99,9 +97,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -227,19 +224,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -264,9 +261,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -274,17 +271,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -572,10 +569,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -587,15 +584,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -625,7 +622,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -938,7 +935,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17956 i32.ge_u if @@ -948,20 +945,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -974,8 +971,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1011,9 +1007,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1254,7 +1250,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $2 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1308,17 +1304,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz if memory.size - local.tee $1 + local.tee $0 i32.const 4 - local.get $2 - i32.load offset=1568 local.get $1 + i32.load offset=1568 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1331,16 +1327,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $0 + local.tee $3 local.get $0 - local.get $1 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $0 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1348,15 +1344,15 @@ unreachable end end - local.get $2 local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1383,22 +1379,22 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $1 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if local.get $0 - local.get $1 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1407,19 +1403,19 @@ local.get $0 i32.const 32 i32.add - local.tee $1 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 local.get $1 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $1 + local.get $3 i32.const -2 i32.and i32.store @@ -1479,47 +1475,47 @@ local.get $0 i32.const 20 i32.add - local.tee $1 + local.tee $0 i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 1 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=2 - local.get $0 + local.get $1 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $0 + local.get $1 i32.const 3 i32.sub i32.const 0 i32.store8 - local.get $4 - local.get $1 + local.get $2 + local.get $0 i32.store - local.get $1 + local.get $0 i32.const 2 i32.store - local.get $1 + local.get $0 i32.const 2 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) (local $1 i32) @@ -1529,19 +1525,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1551,22 +1547,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17956 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1580,9 +1576,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1592,23 +1588,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1616,7 +1612,7 @@ else i32.const 1536 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1296 @@ -1626,7 +1622,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1540 @@ -1641,28 +1637,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/extends-baseaggregate.optimized.wat b/tests/compiler/extends-baseaggregate.optimized.wat index 774b0caedc..68e50a3df3 100644 --- a/tests/compiler/extends-baseaggregate.optimized.wat +++ b/tests/compiler/extends-baseaggregate.optimized.wat @@ -122,7 +122,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -145,7 +145,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -155,15 +155,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -204,20 +204,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -312,19 +312,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -349,9 +349,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -359,17 +359,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -657,10 +657,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -672,15 +672,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -710,7 +710,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1023,7 +1023,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 18156 i32.ge_u if @@ -1033,20 +1033,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1059,8 +1059,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1287,14 +1286,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1304,17 +1303,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1330,22 +1329,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1356,11 +1355,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1465,7 +1464,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $5 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1491,34 +1490,34 @@ i32.const 4 i32.sub end - local.tee $2 + local.tee $5 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $2 i32.eqz if memory.size - local.tee $4 - local.get $2 + local.tee $2 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $2 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $2 + local.get $5 i32.add else - local.get $2 + local.get $5 end i32.const 4 - local.get $5 + local.get $3 i32.load offset=1568 - local.get $4 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1532,16 +1531,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $3 + local.tee $4 + local.get $2 local.get $4 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1549,18 +1548,18 @@ unreachable end end - local.get $5 - local.get $4 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $3 local.get $5 - local.get $2 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $2 i32.eqz if i32.const 0 @@ -1571,11 +1570,11 @@ unreachable end end - local.get $3 + local.get $2 i32.load i32.const -4 i32.and - local.get $2 + local.get $5 i32.lt_u if i32.const 0 @@ -1585,13 +1584,13 @@ call $~lib/builtins/abort unreachable end - local.get $5 local.get $3 + local.get $2 call $~lib/rt/tlsf/removeBlock - local.get $3 - i32.load - local.set $4 local.get $2 + i32.load + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1604,89 +1603,89 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 i32.const -4 i32.and - local.get $2 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.const 2 i32.and - local.get $2 + local.get $5 i32.or i32.store + local.get $5 local.get $2 - local.get $3 i32.const 4 i32.add i32.add - local.tee $2 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $3 local.get $5 - local.get $2 call $~lib/rt/tlsf/insertBlock else - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.const -2 i32.and i32.store - local.get $3 + local.get $2 i32.const 4 i32.add - local.get $3 + local.get $2 i32.load i32.const -4 i32.and i32.add - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.load i32.const -3 i32.and i32.store end - local.get $3 + local.get $2 local.get $1 i32.store offset=12 - local.get $3 + local.get $2 local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace local.tee $1 i32.load offset=8 - local.set $2 - local.get $3 + local.set $3 + local.get $2 global.get $~lib/rt/itcms/white local.get $1 i32.or i32.store offset=4 - local.get $3 local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $3 + local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total - local.get $3 + local.get $2 i32.load i32.const -4 i32.and @@ -1694,7 +1693,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $3 + local.get $2 i32.const 20 i32.add local.tee $1 @@ -1715,17 +1714,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -1871,19 +1870,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -1898,7 +1897,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -1909,10 +1908,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -1920,10 +1919,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -1934,7 +1933,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -1989,7 +1988,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -2000,10 +1999,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2011,10 +2010,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -2025,7 +2024,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2051,17 +2050,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2076,7 +2075,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -2087,10 +2086,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2098,10 +2097,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -2112,7 +2111,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2149,131 +2148,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -2290,59 +2293,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -2426,19 +2433,19 @@ (local $11 i32) i32.const 1180 i32.load - local.tee $8 + local.tee $9 i32.const 1 i32.add - local.tee $7 - local.tee $5 + local.tee $10 + local.tee $1 i32.const 1176 i32.load - local.tee $10 + local.tee $7 i32.const 2 i32.shr_u i32.gt_u if - local.get $5 + local.get $1 i32.const 268435455 i32.gt_u if @@ -2450,38 +2457,38 @@ unreachable end block $__inlined_func$~lib/rt/itcms/__renew - local.get $10 + local.get $7 i32.const 1 i32.shl - local.tee $4 + local.tee $2 i32.const 1073741820 - local.get $4 + local.get $2 i32.const 1073741820 i32.lt_u select local.tee $2 - local.get $5 + local.get $1 i32.const 8 - local.get $5 + local.get $1 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $4 + local.tee $1 + local.get $1 local.get $2 - local.get $4 - i32.gt_u + i32.lt_u select - local.tee $9 - local.tee $11 + local.tee $8 + local.tee $3 i32.const 1168 i32.load - local.tee $6 + local.tee $11 local.tee $1 i32.const 20 i32.sub - local.tee $3 + local.tee $4 i32.load i32.const -4 i32.and @@ -2489,107 +2496,107 @@ i32.sub i32.le_u if + local.get $4 local.get $3 - local.get $11 i32.store offset=16 br $__inlined_func$~lib/rt/itcms/__renew end - local.get $11 local.get $3 + local.get $4 i32.load offset=12 call $~lib/rt/itcms/__new local.tee $5 - local.set $4 - local.get $11 + local.set $2 local.get $3 + local.get $4 i32.load offset=16 - local.tee $2 - local.get $2 - local.get $11 - i32.gt_u + local.tee $4 + local.get $3 + local.get $4 + i32.lt_u select - local.set $11 + local.set $6 block $~lib/util/memory/memmove|inlined.0 local.get $1 - local.get $4 + local.get $2 i32.eq br_if $~lib/util/memory/memmove|inlined.0 local.get $1 - local.get $4 + local.get $2 i32.sub - local.get $11 + local.get $6 i32.sub i32.const 0 - local.get $11 + local.get $6 i32.const 1 i32.shl i32.sub i32.le_u if - local.get $4 + local.get $2 local.get $1 - local.get $11 + local.get $6 call $~lib/util/memory/memcpy br $~lib/util/memory/memmove|inlined.0 end local.get $1 - local.get $4 + local.get $2 i32.gt_u if local.get $1 i32.const 7 i32.and - local.get $4 + local.get $2 i32.const 7 i32.and i32.eq if loop $while-continue|0 - local.get $4 + local.get $2 i32.const 7 i32.and if - local.get $11 + local.get $6 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $11 + local.get $6 i32.const 1 i32.sub - local.set $11 - local.get $4 + local.set $6 + local.get $2 local.tee $3 i32.const 1 i32.add - local.set $4 + local.set $2 local.get $1 - local.tee $2 + local.tee $4 i32.const 1 i32.add local.set $1 local.get $3 - local.get $2 + local.get $4 i32.load8_u i32.store8 br $while-continue|0 end end loop $while-continue|1 - local.get $11 + local.get $6 i32.const 8 i32.ge_u if - local.get $4 + local.get $2 local.get $1 i64.load i64.store - local.get $11 + local.get $6 i32.const 8 i32.sub - local.set $11 - local.get $4 + local.set $6 + local.get $2 i32.const 8 i32.add - local.set $4 + local.set $2 local.get $1 i32.const 8 i32.add @@ -2599,26 +2606,26 @@ end end loop $while-continue|2 - local.get $11 + local.get $6 if - local.get $4 + local.get $2 local.tee $3 i32.const 1 i32.add - local.set $4 + local.set $2 local.get $1 - local.tee $2 + local.tee $4 i32.const 1 i32.add local.set $1 local.get $3 - local.get $2 + local.get $4 i32.load8_u i32.store8 - local.get $11 + local.get $6 i32.const 1 i32.sub - local.set $11 + local.set $6 br $while-continue|2 end end @@ -2626,29 +2633,29 @@ local.get $1 i32.const 7 i32.and - local.get $4 + local.get $2 i32.const 7 i32.and i32.eq if loop $while-continue|3 - local.get $4 - local.get $11 + local.get $2 + local.get $6 i32.add i32.const 7 i32.and if - local.get $11 + local.get $6 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $4 - local.get $11 + local.get $2 + local.get $6 i32.const 1 i32.sub - local.tee $11 + local.tee $6 i32.add local.get $1 - local.get $11 + local.get $6 i32.add i32.load8_u i32.store8 @@ -2656,18 +2663,18 @@ end end loop $while-continue|4 - local.get $11 + local.get $6 i32.const 8 i32.ge_u if - local.get $4 - local.get $11 + local.get $2 + local.get $6 i32.const 8 i32.sub - local.tee $11 + local.tee $6 i32.add local.get $1 - local.get $11 + local.get $6 i32.add i64.load i64.store @@ -2676,16 +2683,16 @@ end end loop $while-continue|5 - local.get $11 + local.get $6 if - local.get $4 - local.get $11 + local.get $2 + local.get $6 i32.const 1 i32.sub - local.tee $11 + local.tee $6 i32.add local.get $1 - local.get $11 + local.get $6 i32.add i32.load8_u i32.store8 @@ -2698,14 +2705,14 @@ local.set $1 end local.get $1 - local.get $10 + local.get $7 i32.add - local.get $9 - local.get $10 + local.get $8 + local.get $7 i32.sub call $~lib/memory/memory.fill local.get $1 - local.get $6 + local.get $11 i32.ne if i32.const 1168 @@ -2722,12 +2729,12 @@ end end i32.const 1176 - local.get $9 + local.get $8 i32.store end i32.const 1172 i32.load - local.get $8 + local.get $9 i32.const 2 i32.shl i32.add @@ -2740,7 +2747,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end i32.const 1180 - local.get $7 + local.get $10 i32.store ) (func $~lib/array/Array~visit (param $0 i32) diff --git a/tests/compiler/extends-recursive.optimized.wat b/tests/compiler/extends-recursive.optimized.wat index b914f49917..991a6a6b0a 100644 --- a/tests/compiler/extends-recursive.optimized.wat +++ b/tests/compiler/extends-recursive.optimized.wat @@ -111,7 +111,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -134,7 +134,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -144,15 +144,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -193,20 +193,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -301,19 +301,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -338,9 +338,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -348,17 +348,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -646,10 +646,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -661,15 +661,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -699,7 +699,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1012,7 +1012,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17868 i32.ge_u if @@ -1022,20 +1022,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1048,8 +1048,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1085,9 +1084,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1191,17 +1190,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size - local.tee $2 + local.tee $1 i32.const 4 - local.get $3 - i32.load offset=1568 local.get $2 + i32.load offset=1568 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1214,16 +1213,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $1 - local.get $2 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1231,15 +1230,15 @@ unreachable end end - local.get $3 local.get $2 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1266,22 +1265,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $2 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $2 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1290,19 +1289,19 @@ local.get $1 i32.const 32 i32.add - local.tee $2 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $2 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $2 + local.get $4 i32.const -2 i32.and i32.store @@ -1362,34 +1361,34 @@ local.get $1 i32.const 20 i32.add - local.tee $1 + local.tee $0 i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 1 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=2 - local.get $0 + local.get $1 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $0 + local.get $1 i32.const 3 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $0 ) (func $~lib/rt/__visit_members (param $0 i32) block $folding-inner0 @@ -1600,8 +1599,8 @@ i32.store end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/features/simd.optimized.wat b/tests/compiler/features/simd.optimized.wat index 18dd647a3c..5c60c12232 100644 --- a/tests/compiler/features/simd.optimized.wat +++ b/tests/compiler/features/simd.optimized.wat @@ -101,19 +101,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -138,9 +138,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -148,17 +148,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -446,10 +446,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -461,15 +461,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -499,7 +499,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -749,7 +749,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $1 local.get $0 i32.const 1073741820 i32.gt_u @@ -775,34 +775,34 @@ i32.const 4 i32.sub end - local.tee $0 + local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if memory.size - local.tee $2 - local.get $0 + local.tee $0 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $0 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $0 + local.get $3 i32.add else - local.get $0 + local.get $3 end i32.const 4 - local.get $3 + local.get $1 i32.load offset=1568 - local.get $2 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -816,16 +816,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 - local.get $1 + local.tee $2 + local.get $0 local.get $2 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $1 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -833,18 +833,18 @@ unreachable end end - local.get $3 - local.get $2 + local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $1 local.get $3 - local.get $0 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -855,11 +855,11 @@ unreachable end end - local.get $1 + local.get $0 i32.load i32.const -4 i32.and - local.get $0 + local.get $3 i32.lt_u if i32.const 0 @@ -869,13 +869,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 local.get $1 + local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $1 - i32.load - local.set $2 local.get $0 + i32.load + local.set $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -888,59 +888,59 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 i32.const -4 i32.and - local.get $0 + local.get $3 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if - local.get $1 - local.get $2 + local.get $0 + local.get $4 i32.const 2 i32.and - local.get $0 + local.get $3 i32.or i32.store + local.get $3 local.get $0 - local.get $1 i32.const 4 i32.add i32.add - local.tee $0 - local.get $4 + local.tee $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $1 local.get $3 - local.get $0 call $~lib/rt/tlsf/insertBlock else - local.get $1 - local.get $2 + local.get $0 + local.get $4 i32.const -2 i32.and i32.store - local.get $1 + local.get $0 i32.const 4 i32.add - local.get $1 + local.get $0 i32.load i32.const -4 i32.and i32.add - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.load i32.const -3 i32.and i32.store end - local.get $1 + local.get $0 i32.const 4 i32.add ) @@ -986,13 +986,12 @@ unreachable end local.get $1 - local.tee $0 - local.get $0 + local.get $1 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $1 call $~lib/rt/tlsf/insertBlock ) (func $~start diff --git a/tests/compiler/field-initialization.optimized.wat b/tests/compiler/field-initialization.optimized.wat index 7428b13e06..8e5c52111f 100644 --- a/tests/compiler/field-initialization.optimized.wat +++ b/tests/compiler/field-initialization.optimized.wat @@ -129,7 +129,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -152,7 +152,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -162,15 +162,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -211,20 +211,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -319,19 +319,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -356,9 +356,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -366,17 +366,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -664,10 +664,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -679,15 +679,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -717,7 +717,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1030,7 +1030,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 18380 i32.ge_u if @@ -1040,20 +1040,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1066,8 +1066,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1294,14 +1293,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1311,17 +1310,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1337,22 +1336,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1363,11 +1362,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1472,7 +1471,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $5 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1498,34 +1497,34 @@ i32.const 4 i32.sub end - local.tee $2 + local.tee $5 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $2 i32.eqz if memory.size - local.tee $4 - local.get $2 + local.tee $2 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $2 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $2 + local.get $5 i32.add else - local.get $2 + local.get $5 end i32.const 4 - local.get $5 + local.get $3 i32.load offset=1568 - local.get $4 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1539,16 +1538,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $3 + local.tee $4 + local.get $2 local.get $4 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1556,18 +1555,18 @@ unreachable end end - local.get $5 - local.get $4 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $3 local.get $5 - local.get $2 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $2 i32.eqz if i32.const 0 @@ -1578,11 +1577,11 @@ unreachable end end - local.get $3 + local.get $2 i32.load i32.const -4 i32.and - local.get $2 + local.get $5 i32.lt_u if i32.const 0 @@ -1592,13 +1591,13 @@ call $~lib/builtins/abort unreachable end - local.get $5 local.get $3 + local.get $2 call $~lib/rt/tlsf/removeBlock - local.get $3 - i32.load - local.set $4 local.get $2 + i32.load + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1611,89 +1610,89 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 i32.const -4 i32.and - local.get $2 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.const 2 i32.and - local.get $2 + local.get $5 i32.or i32.store + local.get $5 local.get $2 - local.get $3 i32.const 4 i32.add i32.add - local.tee $2 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $3 local.get $5 - local.get $2 call $~lib/rt/tlsf/insertBlock else - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.const -2 i32.and i32.store - local.get $3 + local.get $2 i32.const 4 i32.add - local.get $3 + local.get $2 i32.load i32.const -4 i32.and i32.add - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.load i32.const -3 i32.and i32.store end - local.get $3 + local.get $2 local.get $1 i32.store offset=12 - local.get $3 + local.get $2 local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace local.tee $1 i32.load offset=8 - local.set $2 - local.get $3 + local.set $3 + local.get $2 global.get $~lib/rt/itcms/white local.get $1 i32.or i32.store offset=4 - local.get $3 local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $3 + local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total - local.get $3 + local.get $2 i32.load i32.const -4 i32.and @@ -1701,7 +1700,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $3 + local.get $2 i32.const 20 i32.add local.tee $1 @@ -1799,14 +1798,14 @@ if local.get $3 i32.load16_u - local.tee $2 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $2 i32.ne if - local.get $2 local.get $4 + local.get $2 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2079,25 +2078,25 @@ i32.const 4 i32.const 5 call $~lib/rt/itcms/__new - local.tee $1 - i32.store - local.get $1 - call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store local.get $0 + call $~lib/arraybuffer/ArrayBuffer#constructor + local.tee $2 + i32.store + local.get $2 if - local.get $1 local.get $0 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 i32.load i32.eqz if @@ -2126,25 +2125,25 @@ i32.const 4 i32.const 6 call $~lib/rt/itcms/__new - local.tee $1 - i32.store - local.get $1 - call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store local.get $0 + call $~lib/arraybuffer/ArrayBuffer#constructor + local.tee $2 + i32.store + local.get $2 if - local.get $1 local.get $0 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 i32.load i32.eqz if @@ -2336,25 +2335,25 @@ i32.const 4 i32.const 11 call $~lib/rt/itcms/__new - local.tee $1 - i32.store - local.get $1 - call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store local.get $0 + call $~lib/arraybuffer/ArrayBuffer#constructor + local.tee $2 + i32.store + local.get $2 if - local.get $1 local.get $0 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 i32.load i32.eqz if @@ -2383,28 +2382,28 @@ i32.const 4 i32.const 12 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.store - local.get $1 + local.get $0 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 if - local.get $1 local.get $0 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 i32.load i32.eqz if @@ -2429,21 +2428,21 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 4 i32.const 13 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 local.get $0 i32.store local.get $0 if - local.get $1 + local.get $2 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -2451,9 +2450,9 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.load local.get $0 i32.ne @@ -2522,25 +2521,25 @@ i32.const 4 i32.const 15 call $~lib/rt/itcms/__new - local.tee $1 - i32.store - local.get $1 - call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store local.get $0 + call $~lib/arraybuffer/ArrayBuffer#constructor + local.tee $2 + i32.store + local.get $2 if - local.get $1 local.get $0 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $1 + local.get $0 i32.load i32.eqz if @@ -2569,28 +2568,28 @@ i32.const 4 i32.const 16 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.store - local.get $1 + local.get $0 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 if - local.get $1 local.get $0 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $1 + local.get $0 i32.load i32.eqz if @@ -2775,21 +2774,21 @@ local.tee $0 i32.const 0 call $field-initialization/SomeObject#constructor - local.tee $2 + local.tee $1 i32.store offset=20 - local.get $2 + local.get $1 i32.const 1648 i32.store offset=4 - local.get $2 + local.get $1 i32.const 1648 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $2 + local.get $1 i32.const 0 i32.store local.get $0 - local.get $2 + local.get $1 i32.store offset=24 - local.get $2 + local.get $1 i32.load if i32.const 0 @@ -2800,15 +2799,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $2 - i32.load offset=4 local.tee $0 - i32.store offset=8 local.get $1 + i32.load offset=4 + local.tee $1 + i32.store offset=8 + local.get $0 i32.const 1648 i32.store offset=28 - local.get $0 + local.get $1 i32.const 1648 call $~lib/string/String.__eq i32.eqz @@ -2824,21 +2823,21 @@ local.tee $0 i32.const 0 call $field-initialization/SomeObject#constructor - local.tee $2 + local.tee $1 i32.store offset=32 - local.get $2 + local.get $1 i32.const 2 i32.store - local.get $2 + local.get $1 i32.const 1680 i32.store offset=4 - local.get $2 + local.get $1 i32.const 1680 call $byn-split-outlined-A$~lib/rt/itcms/__link local.get $0 - local.get $2 + local.get $1 i32.store offset=36 - local.get $2 + local.get $1 i32.load i32.const 2 i32.ne @@ -2851,15 +2850,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $2 - i32.load offset=4 local.tee $0 - i32.store offset=8 local.get $1 + i32.load offset=4 + local.tee $1 + i32.store offset=8 + local.get $0 i32.const 1680 i32.store offset=28 - local.get $0 + local.get $1 i32.const 1680 call $~lib/string/String.__eq i32.eqz @@ -2874,24 +2873,24 @@ global.get $~lib/memory/__stack_pointer local.tee $0 call $field-initialization/SomeOtherObject#constructor - local.tee $2 + local.tee $1 i32.store offset=36 - local.get $2 + local.get $1 i32.const 1712 i32.store offset=8 - local.get $2 + local.get $1 i32.const 1712 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $2 + local.get $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 0 i32.store offset=4 local.get $0 - local.get $2 + local.get $1 i32.store offset=24 - local.get $2 + local.get $1 i32.load if i32.const 0 @@ -2902,7 +2901,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.load offset=4 local.tee $0 i32.store offset=8 @@ -2919,15 +2918,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $2 - i32.load offset=8 local.tee $0 - i32.store offset=8 local.get $1 + i32.load offset=8 + local.tee $1 + i32.store offset=8 + local.get $0 i32.const 1712 i32.store offset=28 - local.get $0 + local.get $1 i32.const 1712 call $~lib/string/String.__eq i32.eqz @@ -2942,27 +2941,27 @@ global.get $~lib/memory/__stack_pointer local.tee $0 call $field-initialization/SomeOtherObject#constructor - local.tee $2 + local.tee $1 i32.store offset=16 - local.get $2 + local.get $1 i32.const 3 i32.store - local.get $2 + local.get $1 i32.const 1744 i32.store offset=4 - local.get $2 + local.get $1 i32.const 1744 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $2 + local.get $1 i32.const 1776 i32.store offset=8 - local.get $2 + local.get $1 i32.const 1776 call $byn-split-outlined-A$~lib/rt/itcms/__link local.get $0 - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.load i32.const 3 i32.ne @@ -2975,15 +2974,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $2 - i32.load offset=4 local.tee $0 - i32.store offset=8 local.get $1 + i32.load offset=4 + local.tee $2 + i32.store offset=8 + local.get $0 i32.const 1744 i32.store offset=28 - local.get $0 + local.get $2 i32.const 1744 call $~lib/string/String.__eq i32.eqz @@ -2996,15 +2995,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $2 - i32.load offset=8 local.tee $0 - i32.store offset=8 local.get $1 + i32.load offset=8 + local.tee $1 + i32.store offset=8 + local.get $0 i32.const 1776 i32.store offset=28 - local.get $0 + local.get $1 i32.const 1776 call $~lib/string/String.__eq i32.eqz @@ -3034,28 +3033,28 @@ i32.const 4 i32.const 22 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.store - local.get $1 + local.get $0 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 if - local.get $1 local.get $0 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 i32.load i32.eqz if diff --git a/tests/compiler/field.optimized.wat b/tests/compiler/field.optimized.wat index 85c6df09f6..81d3bb9386 100644 --- a/tests/compiler/field.optimized.wat +++ b/tests/compiler/field.optimized.wat @@ -107,7 +107,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -130,7 +130,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -140,15 +140,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -189,20 +189,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -297,19 +297,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -334,9 +334,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -344,17 +344,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -642,10 +642,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -657,15 +657,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -695,7 +695,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1008,7 +1008,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17908 i32.ge_u if @@ -1018,20 +1018,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1044,8 +1044,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1225,12 +1224,12 @@ if block $__inlined_func$~lib/rt/itcms/interrupt i32.const 2048 - local.set $3 + local.set $2 loop $do-loop|0 - local.get $3 + local.get $2 call $~lib/rt/itcms/step i32.sub - local.set $3 + local.set $2 global.get $~lib/rt/itcms/state i32.eqz if @@ -1246,14 +1245,14 @@ global.set $~lib/rt/itcms/threshold br $__inlined_func$~lib/rt/itcms/interrupt end - local.get $3 + local.get $2 i32.const 0 i32.gt_s br_if $do-loop|0 end global.get $~lib/rt/itcms/total - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 @@ -1267,15 +1266,15 @@ local.get $0 i32.const 16 i32.add - local.set $3 + local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $6 - local.get $3 + local.tee $3 + local.get $2 i32.const 1073741820 i32.gt_u if @@ -1286,13 +1285,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $3 + local.get $2 i32.const 19 i32.add i32.const -16 @@ -1300,34 +1299,34 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size - local.tee $5 - local.get $3 + local.tee $2 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $6 + local.get $3 i32.load offset=1568 - local.get $5 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1341,16 +1340,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $5 local.get $2 local.get $5 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1358,16 +1357,16 @@ unreachable end end - local.get $6 - local.get $5 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1384,7 +1383,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1394,13 +1393,13 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1416,9 +1415,9 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if @@ -1426,23 +1425,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1506,19 +1505,19 @@ local.get $2 i32.const 20 i32.add - local.tee $3 - local.set $2 + local.tee $2 + local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 i32.eqz br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 local.get $0 - local.get $2 + local.get $1 i32.add - local.tee $1 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1527,18 +1526,18 @@ i32.const 2 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=1 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=2 - local.get $1 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1547,10 +1546,10 @@ i32.const 6 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=3 - local.get $1 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1559,97 +1558,97 @@ i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 - local.get $2 + local.get $1 i32.sub i32.const 3 i32.and - local.tee $1 + local.tee $3 i32.add - local.tee $4 + local.tee $1 i32.const 0 i32.store - local.get $4 - local.get $0 local.get $1 + local.get $0 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=4 - local.get $4 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=12 - local.get $4 + local.get $1 i32.const 0 i32.store offset=16 - local.get $4 + local.get $1 i32.const 0 i32.store offset=20 - local.get $4 + local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 i32.store - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.const 4 i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1681,7 +1680,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/util/memory/memcpy (param $0 i32) (local $1 i32) @@ -1700,17 +1699,17 @@ select if local.get $0 - local.tee $2 + local.tee $1 i32.const 1 i32.add local.set $0 local.get $3 - local.tee $1 + local.tee $2 i32.const 1 i32.add local.set $3 - local.get $2 local.get $1 + local.get $2 i32.load8_u i32.store8 local.get $5 @@ -1856,19 +1855,19 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $1 i32.const 1 i32.add local.set $0 local.get $3 i32.const 2 i32.add - local.tee $1 + local.tee $2 i32.const 1 i32.add local.set $3 - local.get $2 local.get $1 + local.get $2 i32.load8_u i32.store8 local.get $5 @@ -1883,7 +1882,7 @@ local.get $0 local.get $3 i32.load offset=1 - local.tee $2 + local.tee $1 i32.const 8 i32.shl local.get $4 @@ -1894,10 +1893,10 @@ local.get $0 local.get $3 i32.load offset=5 - local.tee $1 + local.tee $2 i32.const 8 i32.shl - local.get $2 + local.get $1 i32.const 24 i32.shr_u i32.or @@ -1905,10 +1904,10 @@ local.get $0 local.get $3 i32.load offset=9 - local.tee $2 + local.tee $1 i32.const 8 i32.shl - local.get $1 + local.get $2 i32.const 24 i32.shr_u i32.or @@ -1919,7 +1918,7 @@ local.tee $4 i32.const 8 i32.shl - local.get $2 + local.get $1 i32.const 24 i32.shr_u i32.or @@ -1949,17 +1948,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 + local.tee $2 i32.const 2 i32.add local.set $0 local.get $3 - local.tee $2 + local.tee $1 i32.const 2 i32.add local.set $3 - local.get $1 local.get $2 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $5 @@ -1974,7 +1973,7 @@ local.get $0 local.get $3 i32.load offset=2 - local.tee $2 + local.tee $1 i32.const 16 i32.shl local.get $4 @@ -1985,10 +1984,10 @@ local.get $0 local.get $3 i32.load offset=6 - local.tee $1 + local.tee $2 i32.const 16 i32.shl - local.get $2 + local.get $1 i32.const 16 i32.shr_u i32.or @@ -1996,10 +1995,10 @@ local.get $0 local.get $3 i32.load offset=10 - local.tee $2 + local.tee $1 i32.const 16 i32.shl - local.get $1 + local.get $2 i32.const 16 i32.shr_u i32.or @@ -2010,7 +2009,7 @@ local.tee $4 i32.const 16 i32.shl - local.get $2 + local.get $1 i32.const 16 i32.shr_u i32.or @@ -2036,17 +2035,17 @@ i32.load local.set $4 local.get $0 - local.tee $2 + local.tee $1 i32.const 1 i32.add local.set $0 local.get $3 - local.tee $1 + local.tee $2 i32.const 1 i32.add local.set $3 - local.get $2 local.get $1 + local.get $2 i32.load8_u i32.store8 local.get $5 @@ -2061,7 +2060,7 @@ local.get $0 local.get $3 i32.load offset=3 - local.tee $2 + local.tee $1 i32.const 24 i32.shl local.get $4 @@ -2072,10 +2071,10 @@ local.get $0 local.get $3 i32.load offset=7 - local.tee $1 + local.tee $2 i32.const 24 i32.shl - local.get $2 + local.get $1 i32.const 8 i32.shr_u i32.or @@ -2083,10 +2082,10 @@ local.get $0 local.get $3 i32.load offset=11 - local.tee $2 + local.tee $1 i32.const 24 i32.shl - local.get $1 + local.get $2 i32.const 8 i32.shr_u i32.or @@ -2097,7 +2096,7 @@ local.tee $4 i32.const 24 i32.shl - local.get $2 + local.get $1 i32.const 8 i32.shr_u i32.or @@ -2128,143 +2127,139 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 - i32.const 2 - i32.add - local.set $0 local.get $3 - local.tee $2 - i32.const 2 - i32.add - local.set $3 - local.get $1 - local.get $2 i32.load8_u offset=1 i32.store8 offset=1 local.get $0 - local.get $3 - i32.load8_u - i32.store8 - local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.tee $1 local.get $3 - local.tee $2 i32.const 2 i32.add - local.set $3 + local.tee $2 + i32.load8_u + i32.store8 local.get $1 + local.tee $3 + i32.const 2 + i32.add + local.set $1 local.get $2 + local.tee $0 + i32.const 2 + i32.add + local.set $2 + local.get $3 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.load8_u i32.store8 - local.get $0 - local.tee $1 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $3 - local.tee $2 + local.set $1 + local.get $2 + local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $1 - local.get $2 + local.set $2 + local.get $3 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.load8_u i32.store8 - local.get $0 - local.tee $1 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $3 - local.tee $2 + local.set $1 + local.get $2 + local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $1 - local.get $2 + local.set $2 + local.get $3 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.load8_u i32.store8 - local.get $0 - local.tee $1 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $3 - local.tee $2 + local.set $1 + local.get $2 + local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $1 - local.get $2 + local.set $2 + local.get $3 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.load8_u i32.store8 - local.get $0 - local.tee $1 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $3 - local.tee $2 + local.set $1 + local.get $2 + local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $1 - local.get $2 + local.set $2 + local.get $3 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.load8_u i32.store8 - local.get $0 - local.tee $1 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $3 - local.tee $2 + local.set $1 + local.get $2 + local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $1 - local.get $2 + local.set $4 + local.get $3 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $3 + local.get $1 + local.get $4 i32.load8_u i32.store8 - local.get $0 - local.tee $1 + local.get $1 + local.tee $2 i32.const 2 i32.add local.set $0 - local.get $3 - local.tee $2 + local.get $4 + local.tee $1 i32.const 2 i32.add local.set $3 - local.get $1 local.get $2 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 end @@ -2277,71 +2272,67 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 - i32.const 2 - i32.add - local.set $0 local.get $3 - local.tee $2 - i32.const 2 - i32.add - local.set $3 - local.get $1 - local.get $2 i32.load8_u offset=1 i32.store8 offset=1 local.get $0 - local.get $3 - i32.load8_u - i32.store8 - local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.tee $1 local.get $3 - local.tee $2 i32.const 2 i32.add - local.set $3 + local.tee $2 + i32.load8_u + i32.store8 local.get $1 + local.tee $3 + i32.const 2 + i32.add + local.set $1 local.get $2 + local.tee $0 + i32.const 2 + i32.add + local.set $2 + local.get $3 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.load8_u i32.store8 - local.get $0 - local.tee $1 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $3 - local.tee $2 + local.set $1 + local.get $2 + local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $1 - local.get $2 + local.set $4 + local.get $3 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $3 + local.get $1 + local.get $4 i32.load8_u i32.store8 - local.get $0 - local.tee $1 + local.get $1 + local.tee $2 i32.const 2 i32.add local.set $0 - local.get $3 - local.tee $2 + local.get $4 + local.tee $1 i32.const 2 i32.add local.set $3 - local.get $1 local.get $2 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 end @@ -2354,37 +2345,31 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 - i32.const 2 - i32.add - local.set $0 local.get $3 - local.tee $2 - i32.const 2 - i32.add - local.set $3 - local.get $1 - local.get $2 i32.load8_u offset=1 i32.store8 offset=1 local.get $0 - local.get $3 - i32.load8_u - i32.store8 - local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 - local.get $3 local.tee $2 + local.get $3 i32.const 2 i32.add - local.set $3 + local.tee $1 + i32.load8_u + i32.store8 local.get $1 + i32.const 2 + i32.add + local.set $3 local.get $2 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 + local.get $2 + i32.const 2 + i32.add + local.set $0 end local.get $5 i32.const 2 @@ -2395,17 +2380,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 + local.tee $2 i32.const 2 i32.add local.set $0 local.get $3 - local.tee $2 + local.tee $1 i32.const 2 i32.add local.set $3 - local.get $1 local.get $2 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 end @@ -2452,14 +2437,14 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $0 i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 4 i32.const 3 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 @@ -2470,16 +2455,16 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $8 i32.const 0 i32.store i32.const 1456 - local.set $3 + local.set $1 block $~lib/util/memory/memmove|inlined.0 i32.const 0 i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $5 local.tee $0 i32.const 1456 i32.eq @@ -2506,76 +2491,76 @@ i32.const 7 i32.and if - local.get $8 + local.get $6 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $8 + local.get $6 i32.const 1 i32.sub - local.set $8 + local.set $6 local.get $0 - local.tee $1 + local.tee $2 i32.const 1 i32.add local.set $0 - local.get $3 - local.tee $2 + local.get $1 + local.tee $3 i32.const 1 i32.add - local.set $3 - local.get $1 + local.set $1 local.get $2 + local.get $3 i32.load8_u i32.store8 br $while-continue|0 end end loop $while-continue|1 - local.get $8 + local.get $6 i32.const 8 i32.ge_u if local.get $0 - local.get $3 + local.get $1 i64.load i64.store - local.get $8 + local.get $6 i32.const 8 i32.sub - local.set $8 + local.set $6 local.get $0 i32.const 8 i32.add local.set $0 - local.get $3 + local.get $1 i32.const 8 i32.add - local.set $3 + local.set $1 br $while-continue|1 end end end loop $while-continue|2 - local.get $8 + local.get $6 if local.get $0 - local.tee $1 + local.tee $2 i32.const 1 i32.add local.set $0 - local.get $3 - local.tee $2 + local.get $1 + local.tee $3 i32.const 1 i32.add - local.set $3 - local.get $1 + local.set $1 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $8 + local.get $6 i32.const 1 i32.sub - local.set $8 + local.set $6 br $while-continue|2 end end @@ -2587,21 +2572,21 @@ if loop $while-continue|3 local.get $0 - local.get $8 + local.get $6 i32.add i32.const 7 i32.and if - local.get $8 + local.get $6 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 local.get $0 - local.get $8 + local.get $6 i32.const 1 i32.sub - local.tee $8 + local.tee $6 i32.add - local.get $8 + local.get $6 i32.const 1456 i32.add i32.load8_u @@ -2610,17 +2595,17 @@ end end loop $while-continue|4 - local.get $8 + local.get $6 i32.const 8 i32.ge_u if local.get $0 - local.get $8 + local.get $6 i32.const 8 i32.sub - local.tee $8 + local.tee $6 i32.add - local.get $8 + local.get $6 i32.const 1456 i32.add i64.load @@ -2630,15 +2615,15 @@ end end loop $while-continue|5 - local.get $8 + local.get $6 if local.get $0 - local.get $8 + local.get $6 i32.const 1 i32.sub - local.tee $8 + local.tee $6 i32.add - local.get $8 + local.get $6 i32.const 1456 i32.add i32.load8_u @@ -2648,23 +2633,22 @@ end end end - local.get $6 - local.get $4 - local.tee $0 + local.get $8 + local.get $5 i32.store i32.const 16 i32.const 4 call $~lib/rt/itcms/__new - local.tee $3 - local.get $0 + local.tee $0 + local.get $5 i32.store - local.get $0 + local.get $5 if - local.get $3 + local.get $0 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white - local.get $0 + local.get $5 i32.const 20 i32.sub local.tee $1 @@ -2673,7 +2657,7 @@ i32.and i32.eq if - local.get $3 + local.get $0 i32.const 20 i32.sub i32.load offset=4 @@ -2701,62 +2685,60 @@ end end end - local.get $3 local.get $0 + local.get $5 i32.store offset=4 - local.get $3 + local.get $0 i32.const 0 i32.store offset=8 - local.get $3 + local.get $0 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 - local.get $3 + local.get $4 + local.get $0 i32.store - local.get $5 - local.set $0 - local.get $3 + local.get $0 if - local.get $0 + local.get $4 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white - local.get $3 + local.get $0 i32.const 20 i32.sub - local.tee $2 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $0 + local.get $4 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $1 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $2 + local.get $0 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $1 i32.const 3 i32.eq i32.and if - local.get $2 + local.get $0 call $~lib/rt/itcms/Object#makeGray end end @@ -2767,7 +2749,7 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $7 - local.get $0 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 @@ -2810,38 +2792,37 @@ return end local.get $0 - local.tee $1 i32.load offset=4 - local.tee $2 + local.tee $1 local.get $0 i32.load offset=12 i32.const 2 i32.shl i32.add - local.set $3 + local.set $2 loop $while-continue|0 + local.get $1 local.get $2 - local.get $3 i32.lt_u if - local.get $2 + local.get $1 i32.load - local.tee $0 + local.tee $3 if - local.get $0 + local.get $3 if - local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $2 + local.get $1 i32.const 4 i32.add - local.set $2 + local.set $1 br $while-continue|0 end end - local.get $1 + local.get $0 i32.load local.tee $0 if diff --git a/tests/compiler/for.optimized.wat b/tests/compiler/for.optimized.wat index 77418d935b..1559836fd6 100644 --- a/tests/compiler/for.optimized.wat +++ b/tests/compiler/for.optimized.wat @@ -164,19 +164,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -201,9 +201,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -211,17 +211,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -509,10 +509,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -524,15 +524,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -562,7 +562,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -875,7 +875,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17892 i32.ge_u if @@ -885,20 +885,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -911,8 +911,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -948,9 +947,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1501,7 +1500,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $2 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1555,17 +1554,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz if memory.size - local.tee $1 + local.tee $0 i32.const 4 - local.get $2 - i32.load offset=1568 local.get $1 + i32.load offset=1568 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1578,16 +1577,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $0 + local.tee $3 local.get $0 - local.get $1 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $0 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1595,15 +1594,15 @@ unreachable end end - local.get $2 local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1630,22 +1629,22 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $1 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if local.get $0 - local.get $1 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1654,19 +1653,19 @@ local.get $0 i32.const 32 i32.add - local.tee $1 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 local.get $1 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $1 + local.get $3 i32.const -2 i32.and i32.store @@ -1723,17 +1722,17 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $4 + local.get $2 local.get $0 i32.const 20 i32.add - local.tee $4 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $0 ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) (local $1 i32) @@ -1743,19 +1742,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1765,22 +1764,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17892 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1794,9 +1793,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1806,23 +1805,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1830,7 +1829,7 @@ else i32.const 1472 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1280 @@ -1840,7 +1839,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1476 @@ -1855,28 +1854,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/function-call.optimized.wat b/tests/compiler/function-call.optimized.wat index 26c6957bec..02e98855dd 100644 --- a/tests/compiler/function-call.optimized.wat +++ b/tests/compiler/function-call.optimized.wat @@ -205,19 +205,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -242,9 +242,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -252,17 +252,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -550,10 +550,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -565,15 +565,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -603,7 +603,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -916,7 +916,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 18220 i32.ge_u if @@ -926,20 +926,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -952,8 +952,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -989,9 +988,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1251,17 +1250,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz if memory.size - local.tee $1 + local.tee $0 i32.const 4 - local.get $3 - i32.load offset=1568 local.get $1 + i32.load offset=1568 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1274,16 +1273,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $0 + local.tee $3 local.get $0 - local.get $1 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $0 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1291,15 +1290,15 @@ unreachable end end - local.get $3 local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1326,12 +1325,12 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $1 + local.tee $3 i32.const -4 i32.and i32.const 28 @@ -1341,7 +1340,7 @@ i32.ge_u if local.get $0 - local.get $1 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1350,19 +1349,19 @@ local.get $0 i32.const 32 i32.add - local.tee $1 + local.tee $3 local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $1 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $1 + local.get $3 i32.const -2 i32.and i32.store @@ -1390,17 +1389,17 @@ global.get $~lib/rt/itcms/fromSpace local.tee $1 i32.load offset=8 - local.set $4 + local.set $3 local.get $0 global.get $~lib/rt/itcms/white local.get $1 i32.or i32.store offset=4 local.get $0 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -1423,19 +1422,19 @@ local.get $0 i32.const 20 i32.add - local.tee $2 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 global.set $function-call/foo global.get $~lib/memory/__stack_pointer global.get $function-call/foo - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 1680 i32.load call_indirect $0 (type $i32_=>_none) @@ -1455,9 +1454,9 @@ end global.get $~lib/memory/__stack_pointer global.get $function-call/foo - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 1 i32.const 2 i32.const 1744 @@ -1494,19 +1493,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1516,22 +1515,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18220 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1545,9 +1544,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1557,23 +1556,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1581,7 +1580,7 @@ else i32.const 1760 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1472 @@ -1591,7 +1590,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1764 @@ -1606,28 +1605,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/function-expression.optimized.wat b/tests/compiler/function-expression.optimized.wat index 8e8d34ac47..9159615752 100644 --- a/tests/compiler/function-expression.optimized.wat +++ b/tests/compiler/function-expression.optimized.wat @@ -175,7 +175,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -198,7 +198,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -208,15 +208,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -257,20 +257,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -365,19 +365,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -402,9 +402,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -412,17 +412,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -710,10 +710,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -725,15 +725,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -763,7 +763,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1076,7 +1076,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 18580 i32.ge_u if @@ -1086,20 +1086,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1112,8 +1112,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1149,9 +1148,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1289,16 +1288,16 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $2 i64.const 0 i64.store - local.get $5 + local.get $2 i32.const 0 i32.store offset=8 - local.get $5 + local.get $2 i32.const 2032 i32.store - local.get $5 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -1307,7 +1306,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1361,17 +1360,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz if memory.size - local.tee $2 + local.tee $0 i32.const 4 - local.get $3 + local.get $1 i32.load offset=1568 - local.get $2 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1384,16 +1383,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $0 + local.tee $4 local.get $0 - local.get $2 - i32.lt_s + local.get $4 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $0 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1401,15 +1400,15 @@ unreachable end end - local.get $3 - local.get $2 + local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1436,22 +1435,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $2 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $5 i32.const 16 i32.ge_u if local.get $0 - local.get $2 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1460,19 +1459,19 @@ local.get $0 i32.const 32 i32.add - local.tee $2 - local.get $4 + local.tee $4 + local.get $5 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 - local.get $2 + local.get $1 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $2 + local.get $4 i32.const -2 i32.and i32.store @@ -1484,8 +1483,8 @@ i32.const -4 i32.and i32.add - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.load i32.const -3 i32.and @@ -1498,12 +1497,12 @@ i32.const 4 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $1 i32.load offset=8 local.set $4 local.get $0 global.get $~lib/rt/itcms/white - local.get $2 + local.get $1 i32.or i32.store offset=4 local.get $0 @@ -1517,7 +1516,7 @@ local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1538,7 +1537,7 @@ local.get $0 i32.const 4 i32.add - local.tee $2 + local.tee $1 i32.const 1 i32.sub i32.const 0 @@ -1549,24 +1548,23 @@ local.get $0 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $1 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $1 i32.const 3 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $3 local.get $0 i32.store local.get $0 i32.const 2032 i32.store local.get $0 - local.tee $1 i32.eqz if i32.const 0 @@ -1583,13 +1581,13 @@ i32.and i32.eq if - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $1 global.get $~lib/rt/itcms/white i32.eqz i32.eq @@ -1600,7 +1598,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $1 i32.const 3 i32.eq i32.and @@ -1614,18 +1612,18 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 - local.get $1 + local.get $2 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load i32.load call_indirect $0 (type $none_=>_i32) - local.tee $1 + local.tee $0 i32.store offset=8 i32.const 1 - local.get $1 + local.get $0 i32.load call_indirect $0 (type $i32_=>_i32) i32.const 25 diff --git a/tests/compiler/getter-call.optimized.wat b/tests/compiler/getter-call.optimized.wat index f357a512b9..444610cbda 100644 --- a/tests/compiler/getter-call.optimized.wat +++ b/tests/compiler/getter-call.optimized.wat @@ -167,19 +167,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -204,9 +204,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -214,17 +214,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -512,10 +512,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -527,15 +527,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -565,7 +565,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -878,7 +878,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17900 i32.ge_u if @@ -888,20 +888,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -914,8 +914,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -951,9 +950,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1097,10 +1096,10 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $2 i32.const 0 i32.store - local.get $5 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -1109,7 +1108,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1163,17 +1162,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz if memory.size - local.tee $1 + local.tee $0 i32.const 4 - local.get $3 - i32.load offset=1568 local.get $1 + i32.load offset=1568 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1186,16 +1185,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $0 + local.tee $4 local.get $0 - local.get $1 - i32.lt_s + local.get $4 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $0 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1203,15 +1202,15 @@ unreachable end end - local.get $3 local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1238,22 +1237,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $1 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $5 i32.const 16 i32.ge_u if local.get $0 - local.get $1 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1262,19 +1261,19 @@ local.get $0 i32.const 32 i32.add - local.tee $1 - local.get $4 + local.tee $4 + local.get $5 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $1 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $1 + local.get $4 i32.const -2 i32.and i32.store @@ -1331,18 +1330,18 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $2 + local.get $3 local.get $0 i32.const 20 i32.add - local.tee $2 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 local.get $2 + local.get $0 i32.store i32.const 1456 i32.load @@ -1368,19 +1367,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1390,22 +1389,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17900 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1419,9 +1418,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1431,23 +1430,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1455,7 +1454,7 @@ else i32.const 1472 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1465,7 +1464,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1476 @@ -1480,28 +1479,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/heap.optimized.wat b/tests/compiler/heap.optimized.wat index 959ff6c114..81132ab2cf 100644 --- a/tests/compiler/heap.optimized.wat +++ b/tests/compiler/heap.optimized.wat @@ -109,19 +109,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -146,9 +146,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -156,17 +156,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -454,10 +454,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -469,15 +469,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -507,7 +507,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -857,7 +857,7 @@ i32.eqz if memory.size - local.tee $3 + local.tee $2 local.get $1 i32.const 536870910 i32.lt_u @@ -878,7 +878,7 @@ i32.const 4 local.get $0 i32.load offset=1568 - local.get $3 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -892,16 +892,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $2 local.get $3 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -910,7 +910,7 @@ end end local.get $0 - local.get $3 + local.get $2 i32.const 16 i32.shl memory.size @@ -1009,17 +1009,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -1165,19 +1165,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -1192,7 +1192,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -1203,10 +1203,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -1214,10 +1214,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -1228,7 +1228,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -1283,7 +1283,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -1294,10 +1294,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -1305,10 +1305,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -1319,7 +1319,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -1345,17 +1345,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -1370,7 +1370,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -1381,10 +1381,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -1392,10 +1392,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -1406,7 +1406,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -1443,131 +1443,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -1584,59 +1588,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -1729,10 +1737,10 @@ local.get $1 i32.const 4 i32.add - local.tee $5 + local.tee $3 i32.eq br_if $~lib/util/memory/memmove|inlined.0 - local.get $5 + local.get $3 local.get $2 i32.sub local.get $7 @@ -1745,16 +1753,16 @@ i32.le_u if local.get $2 - local.get $5 + local.get $3 local.get $7 call $~lib/util/memory/memcpy br $~lib/util/memory/memmove|inlined.0 end local.get $2 - local.get $5 + local.get $3 i32.lt_u if - local.get $5 + local.get $3 i32.const 7 i32.and local.get $2 @@ -1775,17 +1783,17 @@ i32.sub local.set $7 local.get $2 - local.tee $4 + local.tee $5 i32.const 1 i32.add local.set $2 - local.get $5 - local.tee $3 + local.get $3 + local.tee $4 i32.const 1 i32.add - local.set $5 + local.set $3 + local.get $5 local.get $4 - local.get $3 i32.load8_u i32.store8 br $while-continue|0 @@ -1797,7 +1805,7 @@ i32.ge_u if local.get $2 - local.get $5 + local.get $3 i64.load i64.store local.get $7 @@ -1808,10 +1816,10 @@ i32.const 8 i32.add local.set $2 - local.get $5 + local.get $3 i32.const 8 i32.add - local.set $5 + local.set $3 br $while-continue|1 end end @@ -1820,17 +1828,17 @@ local.get $7 if local.get $2 - local.tee $4 + local.tee $5 i32.const 1 i32.add local.set $2 - local.get $5 - local.tee $3 + local.get $3 + local.tee $4 i32.const 1 i32.add - local.set $5 + local.set $3 + local.get $5 local.get $4 - local.get $3 i32.load8_u i32.store8 local.get $7 @@ -1841,7 +1849,7 @@ end end else - local.get $5 + local.get $3 i32.const 7 i32.and local.get $2 @@ -1865,7 +1873,7 @@ i32.sub local.tee $7 i32.add - local.get $5 + local.get $3 local.get $7 i32.add i32.load8_u @@ -1884,7 +1892,7 @@ i32.sub local.tee $7 i32.add - local.get $5 + local.get $3 local.get $7 i32.add i64.load @@ -1902,7 +1910,7 @@ i32.sub local.tee $7 i32.add - local.get $5 + local.get $3 local.get $7 i32.add i32.load8_u @@ -1952,54 +1960,53 @@ else block $__inlined_func$~lib/rt/tlsf/reallocateBlock (result i32) global.get $~lib/rt/tlsf/ROOT - local.set $3 + local.set $2 local.get $0 call $~lib/rt/tlsf/checkUsedBlock - local.set $2 + local.set $0 block $folding-inner0 local.get $1 - local.tee $0 call $~lib/rt/tlsf/prepareSize - local.tee $1 - local.get $2 + local.tee $6 + local.get $0 i32.load - local.tee $5 + local.tee $3 i32.const -4 i32.and - local.tee $4 + local.tee $7 i32.le_u br_if $folding-inner0 - local.get $2 + local.get $0 i32.const 4 i32.add - local.get $2 + local.get $0 i32.load i32.const -4 i32.and i32.add - local.tee $6 + local.tee $4 i32.load - local.tee $7 + local.tee $5 i32.const 1 i32.and if - local.get $1 - local.get $4 + local.get $6 + local.get $7 i32.const 4 i32.add - local.get $7 + local.get $5 i32.const -4 i32.and i32.add - local.tee $4 + local.tee $5 i32.le_u if - local.get $3 - local.get $6 - call $~lib/rt/tlsf/removeBlock local.get $2 local.get $4 + call $~lib/rt/tlsf/removeBlock + local.get $0 local.get $5 + local.get $3 i32.const 3 i32.and i32.or @@ -2007,17 +2014,17 @@ br $folding-inner0 end end - local.get $3 local.get $2 local.get $0 + local.get $1 call $~lib/rt/tlsf/moveBlock br $__inlined_func$~lib/rt/tlsf/reallocateBlock end - local.get $3 local.get $2 - local.get $1 + local.get $0 + local.get $6 call $~lib/rt/tlsf/prepareBlock - local.get $2 + local.get $0 end end i32.const 4 diff --git a/tests/compiler/implicit-getter-setter.optimized.wat b/tests/compiler/implicit-getter-setter.optimized.wat index c1816d6026..19523d1835 100644 --- a/tests/compiler/implicit-getter-setter.optimized.wat +++ b/tests/compiler/implicit-getter-setter.optimized.wat @@ -117,7 +117,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -140,7 +140,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -150,15 +150,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -199,20 +199,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -307,19 +307,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -344,9 +344,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -354,17 +354,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -652,10 +652,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -667,15 +667,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -705,7 +705,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1018,7 +1018,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17868 i32.ge_u if @@ -1028,20 +1028,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1054,8 +1054,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1091,9 +1090,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1197,17 +1196,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size - local.tee $2 + local.tee $1 i32.const 4 - local.get $3 - i32.load offset=1568 local.get $2 + i32.load offset=1568 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1220,16 +1219,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $1 - local.get $2 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1237,15 +1236,15 @@ unreachable end end - local.get $3 local.get $2 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1272,22 +1271,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $2 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $2 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1296,19 +1295,19 @@ local.get $1 i32.const 32 i32.add - local.tee $2 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $2 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $2 + local.get $4 i32.const -2 i32.and i32.store @@ -1368,34 +1367,34 @@ local.get $1 i32.const 20 i32.add - local.tee $1 + local.tee $0 i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 1 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=2 - local.get $0 + local.get $1 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $0 + local.get $1 i32.const 3 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $0 ) (func $~lib/rt/__visit_members (param $0 i32) block $folding-inner0 diff --git a/tests/compiler/infer-array.optimized.wat b/tests/compiler/infer-array.optimized.wat index 172ab52260..2839d05daf 100644 --- a/tests/compiler/infer-array.optimized.wat +++ b/tests/compiler/infer-array.optimized.wat @@ -143,7 +143,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -166,7 +166,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -176,15 +176,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -225,20 +225,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -333,19 +333,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -370,9 +370,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -380,17 +380,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -678,10 +678,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -693,15 +693,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -731,7 +731,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1044,7 +1044,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 18596 i32.ge_u if @@ -1054,20 +1054,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1080,8 +1080,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1261,12 +1260,12 @@ if block $__inlined_func$~lib/rt/itcms/interrupt i32.const 2048 - local.set $3 + local.set $2 loop $do-loop|0 - local.get $3 + local.get $2 call $~lib/rt/itcms/step i32.sub - local.set $3 + local.set $2 global.get $~lib/rt/itcms/state i32.eqz if @@ -1282,14 +1281,14 @@ global.set $~lib/rt/itcms/threshold br $__inlined_func$~lib/rt/itcms/interrupt end - local.get $3 + local.get $2 i32.const 0 i32.gt_s br_if $do-loop|0 end global.get $~lib/rt/itcms/total - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 @@ -1303,15 +1302,15 @@ local.get $0 i32.const 16 i32.add - local.set $3 + local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $6 - local.get $3 + local.tee $3 + local.get $2 i32.const 1073741820 i32.gt_u if @@ -1322,13 +1321,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $3 + local.get $2 i32.const 19 i32.add i32.const -16 @@ -1336,34 +1335,34 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size - local.tee $5 - local.get $3 + local.tee $2 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $6 + local.get $3 i32.load offset=1568 - local.get $5 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1377,16 +1376,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $5 local.get $2 local.get $5 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1394,16 +1393,16 @@ unreachable end end - local.get $6 - local.get $5 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1420,7 +1419,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1430,13 +1429,13 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1452,9 +1451,9 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if @@ -1462,23 +1461,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1542,19 +1541,19 @@ local.get $2 i32.const 20 i32.add - local.tee $3 - local.set $2 + local.tee $2 + local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 i32.eqz br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 local.get $0 - local.get $2 + local.get $1 i32.add - local.tee $1 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1563,18 +1562,18 @@ i32.const 2 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=1 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=2 - local.get $1 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1583,10 +1582,10 @@ i32.const 6 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=3 - local.get $1 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1595,97 +1594,97 @@ i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 - local.get $2 + local.get $1 i32.sub i32.const 3 i32.and - local.tee $1 + local.tee $3 i32.add - local.tee $4 + local.tee $1 i32.const 0 i32.store - local.get $4 - local.get $0 local.get $1 + local.get $0 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=4 - local.get $4 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=12 - local.get $4 + local.get $1 i32.const 0 i32.store offset=16 - local.get $4 + local.get $1 i32.const 0 i32.store offset=20 - local.get $4 + local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 i32.store - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.const 4 i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1717,7 +1716,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/util/memory/memcpy (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -1732,17 +1731,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -1888,19 +1887,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -1915,7 +1914,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -1926,10 +1925,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -1937,10 +1936,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -1951,7 +1950,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2006,7 +2005,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -2017,10 +2016,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2028,10 +2027,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -2042,7 +2041,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2068,17 +2067,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2093,7 +2092,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -2104,10 +2103,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2115,10 +2114,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -2129,7 +2128,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2166,131 +2165,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -2307,59 +2310,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -2572,11 +2579,11 @@ drop global.get $~lib/memory/__stack_pointer call $infer-array/Ref#constructor - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer call $infer-array/Ref#constructor - local.tee $2 + local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -2585,29 +2592,29 @@ i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.load offset=4 i32.store offset=12 - local.get $0 + local.get $3 i32.const 0 - local.get $1 - call $~lib/array/Array#__uset local.get $0 + call $~lib/array/Array#__uset + local.get $3 i32.const 1 - local.get $2 + local.get $1 call $~lib/array/Array#__uset - local.get $0 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $infer-array/Ref#constructor - local.tee $1 + local.tee $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $infer-array/Ref#constructor - local.tee $2 + local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -2616,25 +2623,25 @@ i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.load offset=4 i32.store offset=8 - local.get $0 + local.get $3 i32.const 0 - local.get $1 - call $~lib/array/Array#__uset local.get $0 + call $~lib/array/Array#__uset + local.get $3 i32.const 1 - local.get $2 + local.get $1 call $~lib/array/Array#__uset - local.get $0 + local.get $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer call $infer-array/Ref#constructor - local.tee $1 + local.tee $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -2643,21 +2650,21 @@ i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.load offset=4 i32.store offset=12 - local.get $0 + local.get $2 i32.const 0 - local.get $1 - call $~lib/array/Array#__uset local.get $0 + call $~lib/array/Array#__uset + local.get $2 i32.const 1 i32.const 0 call $~lib/array/Array#__uset - local.get $0 + local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 2 @@ -2701,13 +2708,13 @@ i32.const 11 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 i32.store offset=12 - local.get $0 + local.get $1 i32.const 0 i32.const 1 i32.const 2 @@ -2715,7 +2722,7 @@ i32.const 1936 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 1 i32.const 1 i32.const 2 @@ -2723,7 +2730,7 @@ i32.const 1968 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 16 @@ -2785,38 +2792,37 @@ return end local.get $0 - local.tee $1 i32.load offset=4 - local.tee $2 + local.tee $1 local.get $0 i32.load offset=12 i32.const 2 i32.shl i32.add - local.set $3 + local.set $2 loop $while-continue|0 + local.get $1 local.get $2 - local.get $3 i32.lt_u if - local.get $2 + local.get $1 i32.load - local.tee $0 + local.tee $3 if - local.get $0 + local.get $3 if - local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $2 + local.get $1 i32.const 4 i32.add - local.set $2 + local.set $1 br $while-continue|0 end end - local.get $1 + local.get $0 i32.load local.tee $0 if @@ -2850,10 +2856,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $7 i32.const 0 i32.store - local.get $4 local.get $0 local.get $1 i32.shl @@ -2862,11 +2867,11 @@ local.get $9 i32.const 0 call $~lib/rt/itcms/__new - local.set $4 + local.set $6 local.get $3 if block $~lib/util/memory/memmove|inlined.0 - local.get $4 + local.get $6 local.tee $1 local.get $3 i32.eq @@ -2914,17 +2919,17 @@ i32.sub local.set $8 local.get $1 - local.tee $5 + local.tee $4 i32.const 1 i32.add local.set $1 local.get $3 - local.tee $6 + local.tee $5 i32.const 1 i32.add local.set $3 + local.get $4 local.get $5 - local.get $6 i32.load8_u i32.store8 br $while-continue|0 @@ -2959,17 +2964,17 @@ local.get $8 if local.get $1 - local.tee $5 + local.tee $4 i32.const 1 i32.add local.set $1 local.get $3 - local.tee $6 + local.tee $5 i32.const 1 i32.add local.set $3 + local.get $4 local.get $5 - local.get $6 i32.load8_u i32.store8 local.get $8 @@ -3052,36 +3057,36 @@ end end end - local.get $4 - local.tee $1 + local.get $7 + local.get $6 i32.store i32.const 16 local.get $2 call $~lib/rt/itcms/__new - local.tee $2 - local.get $1 + local.tee $1 + local.get $6 i32.store - local.get $1 + local.get $6 if - local.get $2 local.get $1 + local.get $6 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 local.get $1 + local.get $6 i32.store offset=4 - local.get $2 + local.get $1 local.get $9 i32.store offset=8 - local.get $2 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 ) (func $infer-array/Ref#constructor (result i32) (local $0 i32) @@ -3160,16 +3165,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $3 i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $3 local.get $1 local.get $2 select @@ -3178,7 +3183,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $0 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/infer-generic.optimized.wat b/tests/compiler/infer-generic.optimized.wat index 4c44429d7d..70256f4a4f 100644 --- a/tests/compiler/infer-generic.optimized.wat +++ b/tests/compiler/infer-generic.optimized.wat @@ -189,19 +189,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -226,9 +226,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -236,17 +236,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -534,10 +534,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -549,15 +549,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -587,7 +587,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -900,7 +900,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 18068 i32.ge_u if @@ -910,20 +910,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -936,8 +936,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -973,9 +972,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1094,51 +1093,51 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i64.const 0 i64.store - local.get $0 + local.get $2 i32.const 0 i32.store offset=8 - local.get $0 + local.get $2 i32.const 1152 i32.store - local.get $0 + local.get $2 i32.const 1200 i32.store offset=4 i32.const 1164 i32.load - local.set $1 + local.set $2 loop $for-loop|0 - local.get $1 + local.get $2 i32.const 1164 i32.load - local.tee $0 - local.get $0 - local.get $1 - i32.gt_s - select + local.tee $3 local.get $2 + local.get $3 + i32.lt_s + select + local.get $0 i32.gt_s if - local.get $3 + local.get $1 i32.const 1156 i32.load - local.get $2 + local.get $0 i32.const 2 i32.shl i32.add f32.load - local.get $2 + local.get $0 i32.const 1152 i32.const 1200 i32.load call_indirect $0 (type $i32_f32_i32_i32_=>_i32) - local.set $3 - local.get $2 + local.set $1 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|0 end end @@ -1175,8 +1174,8 @@ i32.const 1520 global.set $~lib/rt/itcms/fromSpace global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $3 + local.tee $0 + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -1194,12 +1193,12 @@ if block $__inlined_func$~lib/rt/itcms/interrupt i32.const 2048 - local.set $2 + local.set $0 loop $do-loop|0 - local.get $2 + local.get $0 call $~lib/rt/itcms/step i32.sub - local.set $2 + local.set $0 global.get $~lib/rt/itcms/state i32.eqz if @@ -1215,7 +1214,7 @@ global.set $~lib/rt/itcms/threshold br $__inlined_func$~lib/rt/itcms/interrupt end - local.get $2 + local.get $0 i32.const 0 i32.gt_s br_if $do-loop|0 @@ -1239,17 +1238,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz if memory.size - local.tee $1 + local.tee $0 i32.const 4 - local.get $4 - i32.load offset=1568 local.get $1 + i32.load offset=1568 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1262,16 +1261,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $0 + local.tee $4 local.get $0 - local.get $1 - i32.lt_s + local.get $4 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $0 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1279,15 +1278,15 @@ unreachable end end - local.get $4 local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 + local.get $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1314,22 +1313,22 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $1 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $1 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $2 + local.tee $5 i32.const 16 i32.ge_u if local.get $0 - local.get $1 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1338,19 +1337,19 @@ local.get $0 i32.const 32 i32.add - local.tee $1 - local.get $2 + local.tee $4 + local.get $5 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $1 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $1 + local.get $4 i32.const -2 i32.and i32.store @@ -1378,17 +1377,17 @@ global.get $~lib/rt/itcms/fromSpace local.tee $1 i32.load offset=8 - local.set $2 + local.set $4 local.get $0 global.get $~lib/rt/itcms/white local.get $1 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $4 i32.store offset=8 - local.get $2 - local.get $2 + local.get $4 + local.get $4 i32.load offset=4 i32.const 3 i32.and @@ -1410,53 +1409,53 @@ local.get $0 i32.const 20 i32.add - local.tee $1 + local.tee $0 i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 1 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=2 - local.get $0 + local.get $1 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $0 + local.get $1 i32.const 3 i32.sub i32.const 0 i32.store8 local.get $3 - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 2 i32.store global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.store - local.get $3 + local.get $1 i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -1504,19 +1503,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1526,22 +1525,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18068 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1555,9 +1554,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1567,23 +1566,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1591,7 +1590,7 @@ else i32.const 1616 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1424 @@ -1601,7 +1600,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1620 @@ -1616,28 +1615,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/inlining.optimized.wat b/tests/compiler/inlining.optimized.wat index 7b611d8a58..72dc0cc47a 100644 --- a/tests/compiler/inlining.optimized.wat +++ b/tests/compiler/inlining.optimized.wat @@ -176,19 +176,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -213,9 +213,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -223,17 +223,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -521,10 +521,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -536,15 +536,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -574,7 +574,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -887,7 +887,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17964 i32.ge_u if @@ -897,20 +897,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -923,8 +923,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1104,12 +1103,12 @@ if block $__inlined_func$~lib/rt/itcms/interrupt i32.const 2048 - local.set $3 + local.set $2 loop $do-loop|0 - local.get $3 + local.get $2 call $~lib/rt/itcms/step i32.sub - local.set $3 + local.set $2 global.get $~lib/rt/itcms/state i32.eqz if @@ -1125,14 +1124,14 @@ global.set $~lib/rt/itcms/threshold br $__inlined_func$~lib/rt/itcms/interrupt end - local.get $3 + local.get $2 i32.const 0 i32.gt_s br_if $do-loop|0 end global.get $~lib/rt/itcms/total - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 @@ -1146,15 +1145,15 @@ local.get $0 i32.const 16 i32.add - local.set $3 + local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $6 - local.get $3 + local.tee $3 + local.get $2 i32.const 1073741820 i32.gt_u if @@ -1165,13 +1164,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $3 + local.get $2 i32.const 19 i32.add i32.const -16 @@ -1179,34 +1178,34 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size - local.tee $5 - local.get $3 + local.tee $2 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $6 + local.get $3 i32.load offset=1568 - local.get $5 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1220,16 +1219,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $5 local.get $2 local.get $5 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1237,16 +1236,16 @@ unreachable end end - local.get $6 - local.get $5 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1263,7 +1262,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1273,13 +1272,13 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1295,9 +1294,9 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if @@ -1305,23 +1304,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1385,19 +1384,19 @@ local.get $2 i32.const 20 i32.add - local.tee $3 - local.set $2 + local.tee $2 + local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 i32.eqz br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 local.get $0 - local.get $2 + local.get $1 i32.add - local.tee $1 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1406,18 +1405,18 @@ i32.const 2 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=1 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=2 - local.get $1 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1426,10 +1425,10 @@ i32.const 6 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=3 - local.get $1 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1438,97 +1437,97 @@ i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 - local.get $2 + local.get $1 i32.sub i32.const 3 i32.and - local.tee $1 + local.tee $3 i32.add - local.tee $4 + local.tee $1 i32.const 0 i32.store - local.get $4 - local.get $0 local.get $1 + local.get $0 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=4 - local.get $4 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=12 - local.get $4 + local.get $1 i32.const 0 i32.store offset=16 - local.get $4 + local.get $1 i32.const 0 i32.store offset=20 - local.get $4 + local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 i32.store - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.const 4 i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1560,7 +1559,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/rt/__visit_members (param $0 i32) block $invalid @@ -1806,19 +1805,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1828,22 +1827,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17964 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1857,9 +1856,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1869,23 +1868,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1893,7 +1892,7 @@ else i32.const 1520 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1328 @@ -1903,7 +1902,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1524 @@ -1918,28 +1917,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/instanceof-class.optimized.wat b/tests/compiler/instanceof-class.optimized.wat index c48ccc905a..501223325a 100644 --- a/tests/compiler/instanceof-class.optimized.wat +++ b/tests/compiler/instanceof-class.optimized.wat @@ -44,9 +44,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -54,9 +53,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -186,19 +184,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -223,9 +221,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -233,17 +231,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -531,10 +529,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -546,15 +544,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -584,7 +582,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -897,7 +895,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17948 i32.ge_u if @@ -907,20 +905,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -933,8 +931,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -970,9 +967,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1076,17 +1073,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size - local.tee $2 + local.tee $1 i32.const 4 - local.get $3 - i32.load offset=1568 local.get $2 + i32.load offset=1568 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1099,16 +1096,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $1 - local.get $2 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1116,15 +1113,15 @@ unreachable end end - local.get $3 local.get $2 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1151,22 +1148,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $2 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $2 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1175,19 +1172,19 @@ local.get $1 i32.const 32 i32.add - local.tee $2 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $2 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $2 + local.get $4 i32.const -2 i32.and i32.store @@ -1527,19 +1524,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1549,22 +1546,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17948 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1578,9 +1575,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1590,23 +1587,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1614,7 +1611,7 @@ else i32.const 1504 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1624,7 +1621,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1508 @@ -1639,28 +1636,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/issues/1095.optimized.wat b/tests/compiler/issues/1095.optimized.wat index 652761bc9e..2e3fc0fb17 100644 --- a/tests/compiler/issues/1095.optimized.wat +++ b/tests/compiler/issues/1095.optimized.wat @@ -111,7 +111,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -134,7 +134,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -144,15 +144,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -193,20 +193,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -301,19 +301,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -338,9 +338,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -348,17 +348,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -646,10 +646,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -661,15 +661,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -699,7 +699,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1012,7 +1012,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 18004 i32.ge_u if @@ -1022,20 +1022,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1048,8 +1048,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1085,9 +1084,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1227,19 +1226,18 @@ local.tee $0 i32.const 0 i32.store - local.get $0 global.get $~lib/rt/itcms/total global.get $~lib/rt/itcms/threshold i32.ge_u if block $__inlined_func$~lib/rt/itcms/interrupt i32.const 2048 - local.set $0 + local.set $1 loop $do-loop|0 - local.get $0 + local.get $1 call $~lib/rt/itcms/step i32.sub - local.set $0 + local.set $1 global.get $~lib/rt/itcms/state i32.eqz if @@ -1255,14 +1253,14 @@ global.set $~lib/rt/itcms/threshold br $__inlined_func$~lib/rt/itcms/interrupt end - local.get $0 + local.get $1 i32.const 0 i32.gt_s br_if $do-loop|0 end global.get $~lib/rt/itcms/total - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 @@ -1279,17 +1277,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if memory.size - local.tee $0 + local.tee $1 i32.const 4 - local.get $2 + local.get $3 i32.load offset=1568 - local.get $0 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1302,16 +1300,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $0 - local.get $3 + local.tee $2 + local.get $1 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1319,17 +1317,17 @@ unreachable end end - local.get $2 - local.get $0 + local.get $3 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $3 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1340,7 +1338,7 @@ unreachable end end - local.get $0 + local.get $1 i32.load i32.const -4 i32.and @@ -1354,50 +1352,50 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $0 + local.get $3 + local.get $1 call $~lib/rt/tlsf/removeBlock - local.get $0 + local.get $1 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if - local.get $0 - local.get $3 + local.get $1 + local.get $4 i32.const 2 i32.and i32.const 28 i32.or i32.store - local.get $0 + local.get $1 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else - local.get $0 - local.get $3 + local.get $1 + local.get $4 i32.const -2 i32.and i32.store - local.get $0 + local.get $1 i32.const 4 i32.add - local.get $0 + local.get $1 i32.load i32.const -4 i32.and @@ -1409,37 +1407,37 @@ i32.and i32.store end - local.get $0 + local.get $1 i32.const 3 i32.store offset=12 - local.get $0 + local.get $1 i32.const 4 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $2 i32.load offset=8 - local.set $2 - local.get $0 + local.set $3 + local.get $1 global.get $~lib/rt/itcms/white - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 - local.get $3 - local.get $0 + local.get $2 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total - local.get $0 + local.get $1 i32.load i32.const -4 i32.and @@ -1447,13 +1445,13 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $0 + local.get $1 i32.const 20 i32.add - local.tee $0 + local.tee $1 i32.const 0 i32.store8 - local.get $0 + local.get $1 i32.const 4 i32.add local.tee $2 @@ -1461,10 +1459,10 @@ i32.sub i32.const 0 i32.store8 - local.get $0 + local.get $1 i32.const 0 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 0 i32.store8 offset=2 local.get $2 @@ -1478,11 +1476,12 @@ i32.const 0 i32.store8 local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.const 1456 i32.store - local.get $0 + local.get $1 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white @@ -1492,13 +1491,13 @@ i32.and i32.eq if - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $1 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq @@ -1509,7 +1508,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $1 + local.get $0 i32.const 3 i32.eq i32.and @@ -1524,10 +1523,10 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store + local.tee $0 local.get $1 + i32.store + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -1536,12 +1535,11 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $0 i32.const 0 i32.store - local.get $2 local.get $0 - local.tee $1 + local.get $1 i32.load local.tee $0 i32.store diff --git a/tests/compiler/issues/1225.optimized.wat b/tests/compiler/issues/1225.optimized.wat index f2af6a6a32..a3dc5489f0 100644 --- a/tests/compiler/issues/1225.optimized.wat +++ b/tests/compiler/issues/1225.optimized.wat @@ -176,19 +176,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -213,9 +213,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -223,17 +223,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -521,10 +521,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -536,15 +536,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -574,7 +574,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -887,7 +887,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17908 i32.ge_u if @@ -897,20 +897,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -923,8 +923,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -960,9 +959,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1015,6 +1014,7 @@ (local $1 i32) (local $2 i32) (local $3 i32) + (local $4 i32) global.get $~lib/rt/itcms/total global.get $~lib/rt/itcms/threshold i32.ge_u @@ -1072,11 +1072,11 @@ i32.eqz if memory.size - local.tee $3 + local.tee $0 i32.const 4 local.get $1 i32.load offset=1568 - local.get $3 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1089,16 +1089,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $0 + local.tee $2 local.get $0 - local.get $3 - i32.lt_s + local.get $2 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $0 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1107,7 +1107,7 @@ end end local.get $1 - local.get $3 + local.get $0 i32.const 16 i32.shl memory.size @@ -1146,17 +1146,17 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $2 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $2 + local.tee $3 i32.const 16 i32.ge_u if local.get $0 - local.get $3 + local.get $2 i32.const 2 i32.and i32.const 28 @@ -1165,19 +1165,19 @@ local.get $0 i32.const 32 i32.add - local.tee $3 - local.get $2 + local.tee $2 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $1 - local.get $3 + local.get $2 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $2 i32.const -2 i32.and i32.store @@ -1189,8 +1189,8 @@ i32.const -4 i32.and i32.add - local.tee $3 - local.get $3 + local.tee $1 + local.get $1 i32.load i32.const -3 i32.and @@ -1203,12 +1203,12 @@ i32.const 12 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 local.set $2 local.get $0 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $0 @@ -1222,7 +1222,7 @@ local.get $0 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1237,134 +1237,134 @@ local.get $0 i32.const 20 i32.add - local.tee $3 local.tee $2 + local.tee $0 i32.const 0 i32.store8 - local.get $2 + local.get $0 i32.const 12 i32.add - local.tee $0 + local.tee $1 i32.const 1 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $0 i32.const 0 i32.store8 offset=1 - local.get $2 + local.get $0 i32.const 0 i32.store8 offset=2 - local.get $0 + local.get $1 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $0 + local.get $1 i32.const 3 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $0 i32.const 0 i32.store8 offset=3 - local.get $0 + local.get $1 i32.const 4 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $0 i32.const 0 - local.get $2 + local.get $0 i32.sub i32.const 3 i32.and - local.tee $0 - i32.add local.tee $1 + i32.add + local.tee $0 i32.const 0 i32.store i32.const 12 - local.get $0 + local.get $1 i32.sub i32.const -4 i32.and - local.tee $2 - local.get $1 + local.tee $3 + local.get $0 i32.add - local.tee $0 + local.tee $1 i32.const 4 i32.sub i32.const 0 i32.store block $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $3 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $1 + local.get $0 i32.const 0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $3 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $1 + local.get $0 i32.const 0 i32.store offset=12 - local.get $1 + local.get $0 i32.const 0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 0 i32.store offset=20 - local.get $1 + local.get $0 i32.const 0 i32.store offset=24 - local.get $0 + local.get $1 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 16 i32.sub i32.const 0 i32.store - local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.const 4 i32.and i32.const 24 i32.add - local.tee $0 + local.tee $4 i32.add local.set $1 - local.get $2 - local.get $0 + local.get $3 + local.get $4 i32.sub local.set $0 loop $while-continue|0 @@ -1396,7 +1396,7 @@ end end end - local.get $3 + local.get $2 ) (func $issues/1225/normal (result i32) global.get $issues/1225/x @@ -1585,19 +1585,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1607,22 +1607,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17908 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1636,9 +1636,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1648,23 +1648,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1672,7 +1672,7 @@ else i32.const 1488 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1682,7 +1682,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1492 @@ -1697,28 +1697,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/issues/1699.optimized.wat b/tests/compiler/issues/1699.optimized.wat index 66b5631583..67b8bf1658 100644 --- a/tests/compiler/issues/1699.optimized.wat +++ b/tests/compiler/issues/1699.optimized.wat @@ -118,7 +118,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -141,7 +141,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -151,15 +151,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -200,20 +200,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -308,19 +308,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -345,9 +345,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -355,17 +355,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -653,10 +653,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -668,15 +668,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -706,7 +706,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1019,7 +1019,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 18140 i32.ge_u if @@ -1029,20 +1029,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1055,8 +1055,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1283,14 +1282,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1300,17 +1299,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1326,22 +1325,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1352,11 +1351,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1461,7 +1460,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $5 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1487,34 +1486,34 @@ i32.const 4 i32.sub end - local.tee $2 + local.tee $5 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $2 i32.eqz if memory.size - local.tee $4 - local.get $2 + local.tee $2 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $2 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $2 + local.get $5 i32.add else - local.get $2 + local.get $5 end i32.const 4 - local.get $5 + local.get $3 i32.load offset=1568 - local.get $4 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1528,16 +1527,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $3 + local.tee $4 + local.get $2 local.get $4 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1545,18 +1544,18 @@ unreachable end end - local.get $5 - local.get $4 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $3 local.get $5 - local.get $2 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $2 i32.eqz if i32.const 0 @@ -1567,11 +1566,11 @@ unreachable end end - local.get $3 + local.get $2 i32.load i32.const -4 i32.and - local.get $2 + local.get $5 i32.lt_u if i32.const 0 @@ -1581,13 +1580,13 @@ call $~lib/builtins/abort unreachable end - local.get $5 local.get $3 + local.get $2 call $~lib/rt/tlsf/removeBlock - local.get $3 - i32.load - local.set $4 local.get $2 + i32.load + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1600,89 +1599,89 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 i32.const -4 i32.and - local.get $2 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.const 2 i32.and - local.get $2 + local.get $5 i32.or i32.store + local.get $5 local.get $2 - local.get $3 i32.const 4 i32.add i32.add - local.tee $2 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $3 local.get $5 - local.get $2 call $~lib/rt/tlsf/insertBlock else - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.const -2 i32.and i32.store - local.get $3 + local.get $2 i32.const 4 i32.add - local.get $3 + local.get $2 i32.load i32.const -4 i32.and i32.add - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.load i32.const -3 i32.and i32.store end - local.get $3 + local.get $2 local.get $1 i32.store offset=12 - local.get $3 + local.get $2 local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace local.tee $1 i32.load offset=8 - local.set $2 - local.get $3 + local.set $3 + local.get $2 global.get $~lib/rt/itcms/white local.get $1 i32.or i32.store offset=4 - local.get $3 local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $3 + local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total - local.get $3 + local.get $2 i32.load i32.const -4 i32.and @@ -1690,7 +1689,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $3 + local.get $2 i32.const 20 i32.add local.tee $1 @@ -1711,17 +1710,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -1867,19 +1866,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -1894,7 +1893,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -1905,10 +1904,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -1916,10 +1915,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -1930,7 +1929,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -1985,7 +1984,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -1996,10 +1995,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2007,10 +2006,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -2021,7 +2020,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2047,17 +2046,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2072,7 +2071,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -2083,10 +2082,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2094,10 +2093,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -2108,7 +2107,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2145,131 +2144,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -2286,59 +2289,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -2438,16 +2445,16 @@ local.get $1 i32.const 1 i32.add - local.tee $9 - local.tee $7 + local.tee $11 + local.tee $3 local.get $0 i32.load offset=8 - local.tee $11 + local.tee $9 i32.const 2 i32.shr_u i32.gt_u if - local.get $7 + local.get $3 i32.const 268435455 i32.gt_u if @@ -2459,38 +2466,38 @@ unreachable end block $__inlined_func$~lib/rt/itcms/__renew - local.get $11 + local.get $9 i32.const 1 i32.shl - local.tee $6 + local.tee $4 i32.const 1073741820 - local.get $6 + local.get $4 i32.const 1073741820 i32.lt_u select local.tee $4 - local.get $7 + local.get $3 i32.const 8 - local.get $7 + local.get $3 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $6 + local.tee $3 + local.get $3 local.get $4 - local.get $6 - i32.gt_u + i32.lt_u select local.tee $10 - local.tee $12 + local.tee $5 local.get $0 i32.load - local.tee $8 + local.tee $12 local.tee $3 i32.const 20 i32.sub - local.tee $5 + local.tee $6 i32.load i32.const -4 i32.and @@ -2498,107 +2505,107 @@ i32.sub i32.le_u if + local.get $6 local.get $5 - local.get $12 i32.store offset=16 br $__inlined_func$~lib/rt/itcms/__renew end - local.get $12 local.get $5 + local.get $6 i32.load offset=12 call $~lib/rt/itcms/__new local.tee $7 - local.set $6 - local.get $12 + local.set $4 local.get $5 + local.get $6 i32.load offset=16 - local.tee $4 - local.get $4 - local.get $12 - i32.gt_u + local.tee $6 + local.get $5 + local.get $6 + i32.lt_u select - local.set $12 + local.set $8 block $~lib/util/memory/memmove|inlined.0 local.get $3 - local.get $6 + local.get $4 i32.eq br_if $~lib/util/memory/memmove|inlined.0 local.get $3 - local.get $6 + local.get $4 i32.sub - local.get $12 + local.get $8 i32.sub i32.const 0 - local.get $12 + local.get $8 i32.const 1 i32.shl i32.sub i32.le_u if - local.get $6 + local.get $4 local.get $3 - local.get $12 + local.get $8 call $~lib/util/memory/memcpy br $~lib/util/memory/memmove|inlined.0 end local.get $3 - local.get $6 + local.get $4 i32.gt_u if local.get $3 i32.const 7 i32.and - local.get $6 + local.get $4 i32.const 7 i32.and i32.eq if loop $while-continue|0 - local.get $6 + local.get $4 i32.const 7 i32.and if - local.get $12 + local.get $8 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $12 + local.get $8 i32.const 1 i32.sub - local.set $12 - local.get $6 + local.set $8 + local.get $4 local.tee $5 i32.const 1 i32.add - local.set $6 + local.set $4 local.get $3 - local.tee $4 + local.tee $6 i32.const 1 i32.add local.set $3 local.get $5 - local.get $4 + local.get $6 i32.load8_u i32.store8 br $while-continue|0 end end loop $while-continue|1 - local.get $12 + local.get $8 i32.const 8 i32.ge_u if - local.get $6 + local.get $4 local.get $3 i64.load i64.store - local.get $12 + local.get $8 i32.const 8 i32.sub - local.set $12 - local.get $6 + local.set $8 + local.get $4 i32.const 8 i32.add - local.set $6 + local.set $4 local.get $3 i32.const 8 i32.add @@ -2608,26 +2615,26 @@ end end loop $while-continue|2 - local.get $12 + local.get $8 if - local.get $6 + local.get $4 local.tee $5 i32.const 1 i32.add - local.set $6 + local.set $4 local.get $3 - local.tee $4 + local.tee $6 i32.const 1 i32.add local.set $3 local.get $5 - local.get $4 + local.get $6 i32.load8_u i32.store8 - local.get $12 + local.get $8 i32.const 1 i32.sub - local.set $12 + local.set $8 br $while-continue|2 end end @@ -2635,29 +2642,29 @@ local.get $3 i32.const 7 i32.and - local.get $6 + local.get $4 i32.const 7 i32.and i32.eq if loop $while-continue|3 - local.get $6 - local.get $12 + local.get $4 + local.get $8 i32.add i32.const 7 i32.and if - local.get $12 + local.get $8 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $6 - local.get $12 + local.get $4 + local.get $8 i32.const 1 i32.sub - local.tee $12 + local.tee $8 i32.add local.get $3 - local.get $12 + local.get $8 i32.add i32.load8_u i32.store8 @@ -2665,18 +2672,18 @@ end end loop $while-continue|4 - local.get $12 + local.get $8 i32.const 8 i32.ge_u if - local.get $6 - local.get $12 + local.get $4 + local.get $8 i32.const 8 i32.sub - local.tee $12 + local.tee $8 i32.add local.get $3 - local.get $12 + local.get $8 i32.add i64.load i64.store @@ -2685,16 +2692,16 @@ end end loop $while-continue|5 - local.get $12 + local.get $8 if - local.get $6 - local.get $12 + local.get $4 + local.get $8 i32.const 1 i32.sub - local.tee $12 + local.tee $8 i32.add local.get $3 - local.get $12 + local.get $8 i32.add i32.load8_u i32.store8 @@ -2707,14 +2714,14 @@ local.set $3 end local.get $3 - local.get $11 + local.get $9 i32.add local.get $10 - local.get $11 + local.get $9 i32.sub call $~lib/memory/memory.fill local.get $3 - local.get $8 + local.get $12 i32.ne if local.get $0 @@ -2736,7 +2743,7 @@ i32.store offset=8 end local.get $0 - local.get $9 + local.get $11 i32.store offset=12 end local.get $0 @@ -2801,13 +2808,13 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i64.const 0 i64.store offset=8 - local.get $2 + local.get $1 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -2816,10 +2823,10 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 16 i32.const 4 call $~lib/rt/itcms/__new @@ -2841,23 +2848,23 @@ i32.const 32 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $1 + local.get $2 i32.const 32 call $~lib/memory/memory.fill local.get $0 - local.get $1 + local.get $2 i32.store - local.get $1 + local.get $2 if local.get $0 - local.get $1 + local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $1 + local.get $2 i32.store offset=4 local.get $0 i32.const 32 @@ -2869,7 +2876,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 local.get $0 i32.store call $issues/1699/MultiAssignmentTest#constructor @@ -2893,30 +2900,30 @@ local.get $1 call $~lib/array/Array#__set i32.const 0 - local.set $2 + local.set $1 loop $for-loop|0 local.get $0 i32.load offset=12 - local.get $2 + local.get $1 i32.gt_s if global.get $~lib/memory/__stack_pointer call $issues/1699/MultiAssignmentTest#constructor - local.tee $1 + local.tee $2 i32.store offset=12 - local.get $2 + local.get $1 i32.const 1 i32.gt_s if local.get $0 - local.get $2 local.get $1 + local.get $2 call $~lib/array/Array#__set end - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|0 end end @@ -2998,38 +3005,37 @@ return end local.get $0 - local.tee $1 i32.load offset=4 - local.tee $2 + local.tee $1 local.get $0 i32.load offset=12 i32.const 2 i32.shl i32.add - local.set $3 + local.set $2 loop $while-continue|0 + local.get $1 local.get $2 - local.get $3 i32.lt_u if - local.get $2 + local.get $1 i32.load - local.tee $0 + local.tee $3 if - local.get $0 + local.get $3 if - local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $2 + local.get $1 i32.const 4 i32.add - local.set $2 + local.set $1 br $while-continue|0 end end - local.get $1 + local.get $0 i32.load local.tee $0 if @@ -3180,16 +3186,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $3 i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $3 local.get $1 local.get $2 select @@ -3198,7 +3204,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $0 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/logical.optimized.wat b/tests/compiler/logical.optimized.wat index e67d6bc0cd..7dd06e36df 100644 --- a/tests/compiler/logical.optimized.wat +++ b/tests/compiler/logical.optimized.wat @@ -164,19 +164,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -201,9 +201,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -211,17 +211,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -509,10 +509,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -524,15 +524,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -562,7 +562,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -875,7 +875,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17908 i32.ge_u if @@ -885,20 +885,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -911,8 +911,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -948,9 +947,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1174,7 +1173,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $2 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1228,17 +1227,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz if memory.size - local.tee $1 + local.tee $0 i32.const 4 - local.get $2 - i32.load offset=1568 local.get $1 + i32.load offset=1568 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1251,16 +1250,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $0 + local.tee $3 local.get $0 - local.get $1 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $0 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1268,15 +1267,15 @@ unreachable end end - local.get $2 local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1303,22 +1302,22 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $1 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if local.get $0 - local.get $1 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1327,19 +1326,19 @@ local.get $0 i32.const 32 i32.add - local.tee $1 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 local.get $1 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $1 + local.get $3 i32.const -2 i32.and i32.store @@ -1396,17 +1395,17 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $4 + local.get $2 local.get $0 i32.const 20 i32.add - local.tee $4 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $0 ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) (local $1 i32) @@ -1416,19 +1415,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1438,22 +1437,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17908 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1467,9 +1466,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1479,23 +1478,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1503,7 +1502,7 @@ else i32.const 1488 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1296 @@ -1513,7 +1512,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1492 @@ -1528,28 +1527,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/managed-cast.optimized.wat b/tests/compiler/managed-cast.optimized.wat index e33e1bcd8d..58961924c4 100644 --- a/tests/compiler/managed-cast.optimized.wat +++ b/tests/compiler/managed-cast.optimized.wat @@ -168,19 +168,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -205,9 +205,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -215,17 +215,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -513,10 +513,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -528,15 +528,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -566,7 +566,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -879,7 +879,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 18060 i32.ge_u if @@ -889,20 +889,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -915,8 +915,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -952,9 +951,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1058,17 +1057,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size - local.tee $2 + local.tee $1 i32.const 4 - local.get $3 - i32.load offset=1568 local.get $2 + i32.load offset=1568 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1081,16 +1080,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $1 - local.get $2 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1098,15 +1097,15 @@ unreachable end end - local.get $3 local.get $2 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1133,22 +1132,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $2 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $2 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1157,19 +1156,19 @@ local.get $1 i32.const 32 i32.add - local.tee $2 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $2 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $2 + local.get $4 i32.const -2 i32.and i32.store @@ -1383,25 +1382,25 @@ i32.const 20 i32.sub i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1632 i32.load i32.le_u if loop $do-loop|0 i32.const 1 - local.get $2 + local.get $1 i32.const 3 i32.eq br_if $__inlined_func$~lib/rt/__instanceof drop - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 1636 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 br_if $do-loop|0 end end @@ -1425,12 +1424,12 @@ i32.add global.set $~lib/memory/__stack_pointer call $managed-cast/Cat#constructor - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store + local.tee $0 local.get $1 + i32.store + local.get $0 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -1439,10 +1438,10 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $0 + local.get $1 i32.eqz if i32.const 1456 @@ -1452,33 +1451,33 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $0 + local.get $1 i32.store offset=4 block $__inlined_func$~lib/rt/__instanceof11 (result i32) - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1632 i32.load i32.le_u if loop $do-loop|012 i32.const 1 - local.get $1 + local.get $0 i32.const 3 i32.eq br_if $__inlined_func$~lib/rt/__instanceof11 drop - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1636 i32.add i32.load offset=4 - local.tee $1 + local.tee $0 br_if $do-loop|012 end end @@ -1494,10 +1493,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store + local.tee $0 local.get $1 + i32.store + local.get $0 i32.const 8 i32.add global.set $~lib/memory/__stack_pointer @@ -1516,7 +1515,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store block $__inlined_func$~lib/rt/__instanceof14 (result i32) @@ -1524,25 +1523,25 @@ i32.const 20 i32.sub i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1632 i32.load i32.le_u if loop $do-loop|015 i32.const 1 - local.get $2 + local.get $1 i32.const 3 i32.eq br_if $__inlined_func$~lib/rt/__instanceof14 drop - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 1636 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 br_if $do-loop|015 end end @@ -1557,7 +1556,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 local.get $0 i32.store global.get $~lib/memory/__stack_pointer @@ -1565,12 +1564,12 @@ i32.add global.set $~lib/memory/__stack_pointer call $managed-cast/Cat#constructor - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -1579,35 +1578,35 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i32.const 0 i32.store - local.get $1 + local.get $0 if block $__inlined_func$~lib/rt/__instanceof17 (result i32) - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1632 i32.load i32.le_u if loop $do-loop|018 i32.const 1 - local.get $2 + local.get $1 i32.const 3 i32.eq br_if $__inlined_func$~lib/rt/__instanceof17 drop - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 1636 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 br_if $do-loop|018 end end @@ -1624,10 +1623,10 @@ end else i32.const 0 - local.set $1 + local.set $0 end + local.get $2 local.get $0 - local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 @@ -1751,19 +1750,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1773,22 +1772,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18060 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1802,9 +1801,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1814,23 +1813,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1838,7 +1837,7 @@ else i32.const 1632 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1848,7 +1847,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1636 @@ -1863,28 +1862,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/memcpy.optimized.wat b/tests/compiler/memcpy.optimized.wat index d58e24195f..50788b46c4 100644 --- a/tests/compiler/memcpy.optimized.wat +++ b/tests/compiler/memcpy.optimized.wat @@ -16,7 +16,7 @@ (local $5 i32) (local $6 i32) local.get $0 - local.set $5 + local.set $6 loop $while-continue|0 local.get $1 i32.const 3 @@ -26,17 +26,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -151,7 +151,7 @@ i32.load8_u i32.store8 end - local.get $5 + local.get $6 return end local.get $2 @@ -171,7 +171,7 @@ end local.get $1 i32.load - local.set $6 + local.set $5 local.get $0 local.get $1 i32.load8_u @@ -183,19 +183,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -210,10 +210,10 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $6 + local.get $5 i32.const 24 i32.shr_u i32.or @@ -221,10 +221,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -232,10 +232,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -243,10 +243,10 @@ local.get $0 local.get $1 i32.load offset=13 - local.tee $6 + local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -270,7 +270,7 @@ end local.get $1 i32.load - local.set $6 + local.set $5 local.get $0 local.get $1 i32.load8_u @@ -301,10 +301,10 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $6 + local.get $5 i32.const 16 i32.shr_u i32.or @@ -312,10 +312,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -323,10 +323,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -334,10 +334,10 @@ local.get $0 local.get $1 i32.load offset=14 - local.tee $6 + local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -361,19 +361,19 @@ end local.get $1 i32.load - local.set $6 + local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -388,10 +388,10 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $6 + local.get $5 i32.const 8 i32.shr_u i32.or @@ -399,10 +399,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -410,10 +410,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -421,10 +421,10 @@ local.get $0 local.get $1 i32.load offset=15 - local.tee $6 + local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -461,131 +461,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -602,59 +606,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -723,7 +731,7 @@ i32.load8_u i32.store8 end - local.get $5 + local.get $6 ) (func $~start i32.const 8 diff --git a/tests/compiler/memset.optimized.wat b/tests/compiler/memset.optimized.wat index 51e2b6896b..d6cd1e275c 100644 --- a/tests/compiler/memset.optimized.wat +++ b/tests/compiler/memset.optimized.wat @@ -96,8 +96,8 @@ end ) (func $byn-split-outlined-A$memset/memset (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i64) + (local $3 i64) + (local $4 i32) local.get $0 local.get $1 i32.store8 @@ -123,12 +123,12 @@ local.get $0 local.get $2 i32.add - local.tee $3 + local.tee $4 i32.const 2 i32.sub local.get $1 i32.store8 - local.get $3 + local.get $4 i32.const 3 i32.sub local.get $1 @@ -161,7 +161,7 @@ i32.sub i32.const 3 i32.and - local.tee $3 + local.tee $4 i32.add local.tee $0 local.get $1 @@ -173,7 +173,7 @@ i32.store local.get $0 local.get $2 - local.get $3 + local.get $4 i32.sub i32.const -4 i32.and @@ -198,12 +198,12 @@ local.get $0 local.get $2 i32.add - local.tee $3 + local.tee $4 i32.const 12 i32.sub local.get $1 i32.store - local.get $3 + local.get $4 i32.const 8 i32.sub local.get $1 @@ -229,22 +229,22 @@ local.get $0 local.get $2 i32.add - local.tee $3 + local.tee $4 i32.const 28 i32.sub local.get $1 i32.store - local.get $3 + local.get $4 i32.const 24 i32.sub local.get $1 i32.store - local.get $3 + local.get $4 i32.const 20 i32.sub local.get $1 i32.store - local.get $3 + local.get $4 i32.const 16 i32.sub local.get $1 @@ -255,37 +255,37 @@ i32.and i32.const 24 i32.add - local.tee $3 + local.tee $4 i32.add local.set $0 local.get $2 - local.get $3 + local.get $4 i32.sub local.set $2 local.get $1 i64.extend_i32_u - local.tee $4 + local.tee $3 i64.const 32 i64.shl - local.get $4 + local.get $3 i64.or - local.set $4 + local.set $3 loop $while-continue|0 local.get $2 i32.const 32 i32.ge_u if local.get $0 - local.get $4 + local.get $3 i64.store local.get $0 - local.get $4 + local.get $3 i64.store offset=8 local.get $0 - local.get $4 + local.get $3 i64.store offset=16 local.get $0 - local.get $4 + local.get $3 i64.store offset=24 local.get $2 i32.const 32 diff --git a/tests/compiler/new.optimized.wat b/tests/compiler/new.optimized.wat index 53b1b63647..dd410aee7f 100644 --- a/tests/compiler/new.optimized.wat +++ b/tests/compiler/new.optimized.wat @@ -46,9 +46,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -56,9 +55,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -66,9 +64,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -76,9 +73,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -86,9 +82,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -96,9 +91,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -228,19 +222,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -265,9 +259,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -275,17 +269,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -573,10 +567,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -588,15 +582,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -626,7 +620,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -939,7 +933,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17884 i32.ge_u if @@ -949,20 +943,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -975,8 +969,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1012,9 +1005,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1118,17 +1111,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size - local.tee $2 + local.tee $1 i32.const 4 - local.get $3 - i32.load offset=1568 local.get $2 + i32.load offset=1568 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1141,16 +1134,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $1 - local.get $2 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1158,15 +1151,15 @@ unreachable end end - local.get $3 local.get $2 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1193,22 +1186,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $2 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $2 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1217,19 +1210,19 @@ local.get $1 i32.const 32 i32.add - local.tee $2 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $2 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $2 + local.get $4 i32.const -2 i32.and i32.store @@ -1573,19 +1566,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1595,22 +1588,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17884 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1624,9 +1617,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1636,23 +1629,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1660,7 +1653,7 @@ else i32.const 1440 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1670,7 +1663,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1444 @@ -1685,28 +1678,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/number.optimized.wat b/tests/compiler/number.optimized.wat index b5aacc8250..0565c9e1fd 100644 --- a/tests/compiler/number.optimized.wat +++ b/tests/compiler/number.optimized.wat @@ -211,19 +211,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -248,9 +248,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -258,17 +258,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -556,10 +556,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -571,15 +571,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -609,7 +609,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -922,7 +922,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 21068 i32.ge_u if @@ -932,20 +932,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -958,8 +958,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1166,8 +1165,8 @@ br_if $do-loop|0 end global.get $~lib/rt/itcms/total - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 @@ -1181,15 +1180,15 @@ local.get $0 i32.const 16 i32.add - local.set $2 + local.set $1 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $5 - local.get $2 + local.tee $2 + local.get $1 i32.const 1073741820 i32.gt_u if @@ -1200,13 +1199,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $1 i32.const 19 i32.add i32.const -16 @@ -1214,34 +1213,34 @@ i32.const 4 i32.sub end - local.tee $2 - call $~lib/rt/tlsf/searchBlock local.tee $3 + call $~lib/rt/tlsf/searchBlock + local.tee $1 i32.eqz if memory.size - local.tee $4 - local.get $2 + local.tee $1 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $2 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $2 + local.get $3 i32.add else - local.get $2 + local.get $3 end i32.const 4 - local.get $5 + local.get $2 i32.load offset=1568 - local.get $4 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1255,16 +1254,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $3 + local.tee $4 + local.get $1 local.get $4 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1272,18 +1271,18 @@ unreachable end end - local.get $5 - local.get $4 + local.get $2 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $5 local.get $2 + local.get $3 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $1 i32.eqz if i32.const 0 @@ -1294,11 +1293,11 @@ unreachable end end - local.get $3 + local.get $1 i32.load i32.const -4 i32.and - local.get $2 + local.get $3 i32.lt_u if i32.const 0 @@ -1308,13 +1307,13 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $3 + local.get $2 + local.get $1 call $~lib/rt/tlsf/removeBlock - local.get $3 + local.get $1 i32.load local.set $4 - local.get $2 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1330,44 +1329,44 @@ local.get $4 i32.const -4 i32.and - local.get $2 + local.get $3 i32.sub - local.tee $1 + local.tee $5 i32.const 16 i32.ge_u if - local.get $3 + local.get $1 local.get $4 i32.const 2 i32.and - local.get $2 + local.get $3 i32.or i32.store - local.get $2 local.get $3 + local.get $1 i32.const 4 i32.add i32.add - local.tee $2 - local.get $1 + local.tee $3 + local.get $5 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $5 local.get $2 + local.get $3 call $~lib/rt/tlsf/insertBlock else - local.get $3 + local.get $1 local.get $4 i32.const -2 i32.and i32.store - local.get $3 + local.get $1 i32.const 4 i32.add - local.get $3 + local.get $1 i32.load i32.const -4 i32.and @@ -1379,37 +1378,37 @@ i32.and i32.store end - local.get $3 + local.get $1 i32.const 1 i32.store offset=12 - local.get $3 + local.get $1 local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace local.tee $2 i32.load offset=8 - local.set $1 - local.get $3 + local.set $3 + local.get $1 global.get $~lib/rt/itcms/white local.get $2 i32.or i32.store offset=4 - local.get $3 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total - local.get $3 + local.get $1 i32.load i32.const -4 i32.and @@ -1417,10 +1416,10 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $3 + local.get $1 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1432,7 +1431,7 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1447,12 +1446,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1464,7 +1463,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $2 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1479,25 +1478,25 @@ i32.sub i32.const 3 i32.and - local.tee $2 + local.tee $3 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1507,17 +1506,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1533,22 +1532,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 @@ -1559,11 +1558,11 @@ i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1595,7 +1594,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/util/number/utoa32_dec_lut (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -1907,14 +1906,14 @@ if local.get $3 i32.load16_u - local.tee $2 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $2 i32.ne if - local.get $2 local.get $4 + local.get $2 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2191,7 +2190,7 @@ i32.shl i32.const 3454 i32.add - local.tee $8 + local.tee $2 i32.load16_u local.set $5 loop $while-continue|3 @@ -2234,7 +2233,7 @@ br $while-continue|3 end end - local.get $8 + local.get $2 local.get $5 i32.store16 local.get $4 @@ -2314,7 +2313,7 @@ i32.shl i32.const 3454 i32.add - local.tee $8 + local.tee $2 i32.load16_u local.set $5 loop $while-continue|6 @@ -2357,7 +2356,7 @@ br $while-continue|6 end end - local.get $8 + local.get $2 local.get $5 i32.store16 local.get $4 @@ -2375,17 +2374,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2531,19 +2530,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2558,7 +2557,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -2569,10 +2568,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2580,10 +2579,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -2594,7 +2593,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2649,7 +2648,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -2660,10 +2659,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2671,10 +2670,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -2685,7 +2684,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2711,17 +2710,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2736,7 +2735,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -2747,10 +2746,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2758,10 +2757,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -2772,7 +2771,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2809,131 +2808,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -2950,59 +2953,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -3286,17 +3293,17 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $4 i32.const 21 i32.le_s local.get $0 - local.get $3 + local.get $4 i32.le_s i32.and if (result i32) loop $for-loop|0 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 @@ -3313,59 +3320,59 @@ br $for-loop|0 end end - local.get $3 + local.get $4 i32.const 1 i32.shl i32.const 3456 i32.add i32.const 3145774 i32.store - local.get $3 + local.get $4 i32.const 2 i32.add else - local.get $3 + local.get $4 i32.const 21 i32.le_s - local.get $3 + local.get $4 i32.const 0 i32.gt_s i32.and if (result i32) - local.get $3 + local.get $4 i32.const 1 i32.shl i32.const 3456 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.add - local.get $3 + local.get $2 i32.const 0 local.get $1 i32.sub i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $3 + local.get $2 i32.const 46 i32.store16 local.get $0 i32.const 1 i32.add else - local.get $3 + local.get $4 i32.const 0 i32.le_s - local.get $3 + local.get $4 i32.const -6 i32.gt_s i32.and if (result i32) i32.const 2 - local.get $3 + local.get $4 i32.sub - local.tee $3 + local.tee $2 i32.const 1 i32.shl i32.const 3456 @@ -3382,7 +3389,7 @@ local.set $1 loop $for-loop|1 local.get $1 - local.get $3 + local.get $2 i32.lt_s if local.get $1 @@ -3400,7 +3407,7 @@ end end local.get $0 - local.get $3 + local.get $2 i32.add else local.get $0 @@ -3410,13 +3417,13 @@ i32.const 3458 i32.const 101 i32.store16 - local.get $3 + local.get $4 i32.const 1 i32.sub local.tee $0 i32.const 0 i32.lt_s - local.tee $3 + local.tee $1 if i32.const 0 local.get $0 @@ -3424,56 +3431,55 @@ local.set $0 end local.get $0 - local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $2 i32.const 3460 local.get $0 - local.get $1 + local.get $2 i32.const 1 i32.add local.tee $0 @@ -3481,7 +3487,7 @@ i32.const 3460 i32.const 45 i32.const 43 - local.get $3 + local.get $1 select i32.store16 local.get $0 @@ -3503,20 +3509,19 @@ local.get $1 i32.const 3456 i32.add - local.tee $1 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $1 - local.tee $2 + local.get $2 i32.const 4 i32.add - local.get $3 + local.get $4 i32.const 1 i32.sub local.tee $1 i32.const 0 i32.lt_s - local.tee $5 + local.tee $4 if i32.const 0 local.get $1 @@ -3524,55 +3529,54 @@ local.set $1 end local.get $1 - local.tee $3 i32.const 100000 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $3 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $3 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $3 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $3 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $3 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.set $3 + local.set $5 local.get $1 - local.get $3 + local.get $5 i32.const 1 i32.add local.tee $1 @@ -3580,7 +3584,7 @@ local.get $2 i32.const 45 i32.const 43 - local.get $5 + local.get $4 select i32.store16 offset=4 local.get $0 @@ -3627,12 +3631,12 @@ ) (func $start:number (local $0 i32) - (local $1 i32) + (local $1 i64) (local $2 i64) (local $3 i64) (local $4 i64) (local $5 i64) - (local $6 i64) + (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -3718,36 +3722,36 @@ i32.load16_s global.set $~lib/util/number/_exp_pow global.get $~lib/util/number/_frc_pow - local.tee $3 + local.tee $2 i64.const 4294967295 i64.and - local.tee $4 + local.tee $3 i64.const 31 i64.shl - local.tee $2 - local.set $5 - local.get $3 + local.tee $4 + local.set $1 + local.get $2 i64.const 32 i64.shr_u - local.tee $3 + local.tee $5 i64.const 31 i64.shl - local.tee $6 - local.get $4 + local.tee $2 + local.get $3 i64.const 10 i64.shl i64.const 32 i64.shr_u - local.get $2 + local.get $4 i64.add - local.tee $2 + local.tee $4 i64.const 32 i64.shr_u i64.add - local.get $2 + local.get $4 i64.const 4294967295 i64.and - local.get $3 + local.get $5 i64.const 10 i64.shl i64.add @@ -3758,13 +3762,13 @@ i64.add i64.const 1 i64.sub - local.set $2 - local.get $5 + local.set $4 + local.get $1 i64.const 32 i64.shr_u - local.get $6 + local.get $2 i64.add - local.get $5 + local.get $1 i64.const 4294967295 i64.and i64.const 2147483647 @@ -3772,31 +3776,31 @@ i64.const 32 i64.shr_u i64.add - local.get $2 + local.get $4 global.get $~lib/util/number/_exp_pow i32.const 2 i32.add - local.get $2 - local.get $3 + local.get $4 + local.get $5 i64.const 2147483647 i64.mul - local.get $4 + local.get $3 i64.const 2147483647 i64.mul - local.get $4 + local.get $3 i64.const 4294966784 i64.mul i64.const 32 i64.shr_u i64.add - local.tee $4 + local.tee $1 i64.const 32 i64.shr_u i64.add - local.get $3 + local.get $5 i64.const 4294966784 i64.mul - local.get $4 + local.get $1 i64.const 4294967295 i64.and i64.add @@ -3813,28 +3817,28 @@ call $~lib/util/number/prettify i32.const 1 i32.shl - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $6 i32.store - local.get $0 + local.get $6 i32.const 3456 - local.get $1 + local.get $0 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 + local.tee $0 + local.get $6 i32.store - local.get $1 + local.get $0 i32.const 4448 i32.store offset=4 - local.get $0 + local.get $6 i32.const 4448 call $~lib/string/String.__eq i32.eqz @@ -3850,10 +3854,10 @@ call $~lib/number/I32#toString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $6 local.get $0 i32.store - local.get $1 + local.get $6 i32.const 4480 i32.store offset=4 local.get $0 @@ -3872,10 +3876,10 @@ call $~lib/number/I32#toString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $6 local.get $0 i32.store - local.get $1 + local.get $6 i32.const 4512 i32.store offset=4 local.get $0 @@ -3894,10 +3898,10 @@ call $~lib/number/I32#toString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $6 local.get $0 i32.store - local.get $1 + local.get $6 i32.const 4544 i32.store offset=4 local.get $0 @@ -3920,10 +3924,10 @@ call $~lib/number/I32#toString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $6 local.get $0 i32.store - local.get $1 + local.get $6 i32.const 4576 i32.store offset=4 local.get $0 @@ -3946,10 +3950,10 @@ call $~lib/number/I32#toString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $6 local.get $0 i32.store - local.get $1 + local.get $6 i32.const 3232 i32.store offset=4 local.get $0 @@ -4011,10 +4015,10 @@ call $~lib/number/I32#toString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $6 local.get $0 i32.store - local.get $1 + local.get $6 i32.const 3232 i32.store offset=4 local.get $0 @@ -4038,10 +4042,10 @@ call $~lib/number/I32#toString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $6 local.get $0 i32.store - local.get $1 + local.get $6 i32.const 4576 i32.store offset=4 local.get $0 @@ -4077,19 +4081,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -4099,22 +4103,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 21068 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -4128,9 +4132,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -4140,23 +4144,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -4164,7 +4168,7 @@ else i32.const 4656 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1472 @@ -4174,7 +4178,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 4660 @@ -4189,28 +4193,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/object-literal.optimized.wat b/tests/compiler/object-literal.optimized.wat index 6045192c5c..018027b16f 100644 --- a/tests/compiler/object-literal.optimized.wat +++ b/tests/compiler/object-literal.optimized.wat @@ -76,7 +76,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -99,7 +99,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -109,15 +109,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -158,20 +158,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -311,19 +311,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -348,9 +348,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -358,17 +358,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -656,10 +656,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -671,15 +671,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -709,7 +709,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -862,13 +862,12 @@ unreachable end local.get $1 - local.tee $0 - local.get $0 + local.get $1 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $1 call $~lib/rt/tlsf/insertBlock ) (func $~lib/rt/itcms/step (result i32) @@ -894,7 +893,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $1 + local.set $2 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -911,11 +910,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -957,9 +956,9 @@ if local.get $0 i32.load - local.tee $2 + local.tee $1 if - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -983,11 +982,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -1013,7 +1012,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $1 + local.get $2 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -1233,7 +1232,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $1 local.get $0 i32.const 1073741820 i32.gt_u @@ -1259,34 +1258,34 @@ i32.const 4 i32.sub end - local.tee $0 + local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if memory.size - local.tee $2 - local.get $0 + local.tee $0 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $0 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $0 + local.get $3 i32.add else - local.get $0 + local.get $3 end i32.const 4 - local.get $3 + local.get $1 i32.load offset=1568 - local.get $2 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1300,16 +1299,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 - local.get $1 + local.tee $2 + local.get $0 local.get $2 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $1 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1317,18 +1316,18 @@ unreachable end end - local.get $3 - local.get $2 + local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $1 local.get $3 - local.get $0 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1339,11 +1338,11 @@ unreachable end end - local.get $1 + local.get $0 i32.load i32.const -4 i32.and - local.get $0 + local.get $3 i32.lt_u if i32.const 0 @@ -1353,13 +1352,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 local.get $1 + local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $1 - i32.load - local.set $2 local.get $0 + i32.load + local.set $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1372,59 +1371,59 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 i32.const -4 i32.and - local.get $0 + local.get $3 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if - local.get $1 - local.get $2 + local.get $0 + local.get $4 i32.const 2 i32.and - local.get $0 + local.get $3 i32.or i32.store + local.get $3 local.get $0 - local.get $1 i32.const 4 i32.add i32.add - local.tee $0 - local.get $4 + local.tee $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $1 local.get $3 - local.get $0 call $~lib/rt/tlsf/insertBlock else - local.get $1 - local.get $2 + local.get $0 + local.get $4 i32.const -2 i32.and i32.store - local.get $1 + local.get $0 i32.const 4 i32.add - local.get $1 + local.get $0 i32.load i32.const -4 i32.and i32.add - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.load i32.const -3 i32.and i32.store end - local.get $1 + local.get $0 i32.const 4 i32.add ) @@ -1500,26 +1499,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1534,7 +1533,7 @@ local.get $2 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1546,7 +1545,7 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1561,12 +1560,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1578,7 +1577,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $2 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1593,25 +1592,25 @@ i32.sub i32.const 3 i32.and - local.tee $2 + local.tee $3 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1621,17 +1620,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1647,22 +1646,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 @@ -1673,11 +1672,11 @@ i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1709,7 +1708,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/string/String.__eq (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -1801,14 +1800,14 @@ if local.get $3 i32.load16_u - local.tee $2 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $2 i32.ne if - local.get $2 local.get $4 + local.get $2 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -1840,17 +1839,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -1996,19 +1995,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2023,7 +2022,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -2034,10 +2033,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2045,10 +2044,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -2059,7 +2058,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2114,7 +2113,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -2125,10 +2124,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2136,10 +2135,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -2150,7 +2149,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2176,17 +2175,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2201,7 +2200,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -2212,10 +2211,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2223,10 +2222,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -2237,7 +2236,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2274,131 +2273,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -2415,59 +2418,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -2571,82 +2578,80 @@ return end local.get $0 - local.tee $1 i32.load - local.tee $0 + local.tee $1 if - local.get $0 + local.get $1 if - local.get $0 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $1 + local.get $0 i32.load offset=4 - local.tee $0 + local.tee $1 if - local.get $0 + local.get $1 if - local.get $0 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 if - local.get $0 + local.get $1 if - local.get $0 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 if - local.get $0 + local.get $1 if - local.get $0 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $1 + local.get $0 i32.load offset=16 - local.tee $0 + local.tee $1 if - local.get $0 + local.get $1 if - local.get $0 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $1 + local.get $0 i32.load offset=20 - local.tee $0 + local.tee $1 if - local.get $0 + local.get $1 if - local.get $0 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $1 + local.get $0 i32.load offset=24 - local.tee $0 + local.tee $1 if - local.get $0 + local.get $1 if - local.get $0 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $1 + local.get $0 i32.load offset=28 - local.tee $1 + local.tee $0 if - local.get $1 - local.tee $0 + local.get $0 if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -2688,13 +2693,13 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 0 i32.store offset=16 i32.const 1156 @@ -2729,7 +2734,7 @@ i32.store i32.const 1392 global.set $~lib/rt/itcms/fromSpace - local.get $1 + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -2738,42 +2743,42 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 local.get $0 + local.get $3 i32.store offset=4 - local.get $0 + local.get $3 i32.const 123 i32.store - local.get $0 + local.get $3 i32.const 1056 i32.store offset=4 - local.get $0 + local.get $3 i32.const 1056 call $byn-split-outlined-A$~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 + local.tee $0 + local.get $3 i32.store - local.get $1 + local.get $0 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -2784,7 +2789,7 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - local.get $0 + local.get $3 i32.load i32.const 123 i32.ne @@ -2797,15 +2802,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.load offset=4 local.tee $0 + local.get $3 + i32.load offset=4 + local.tee $3 i32.store - local.get $1 + local.get $0 i32.const 1056 i32.store offset=4 - local.get $0 + local.get $3 i32.const 1056 call $~lib/string/String.__eq i32.eqz @@ -2823,13 +2828,13 @@ global.set $~lib/memory/__stack_pointer i32.const 8 call $~lib/rt/tlsf/__alloc - local.tee $6 + local.tee $5 i32.const 0 i32.store - local.get $6 + local.get $5 i32.const 0 i32.store offset=4 - local.get $6 + local.get $5 i32.const 123 i32.store global.get $~lib/memory/__stack_pointer @@ -2852,37 +2857,37 @@ i32.load i32.const 1 i32.shr_u - local.tee $3 - local.get $3 + local.tee $0 + local.get $0 select - local.tee $1 + local.tee $3 i32.const 5 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.const 5 i32.gt_u select - local.tee $0 - local.get $0 - local.get $1 + local.tee $2 + local.get $2 + local.get $3 i32.gt_s select i32.const 1 i32.shl - local.set $2 + local.set $1 block $__inlined_func$~lib/string/String#substring - local.get $1 - local.get $0 - local.get $0 - local.get $1 + local.get $3 + local.get $2 + local.get $2 + local.get $3 i32.lt_s select i32.const 1 i32.shl - local.tee $1 - local.get $2 + local.tee $3 + local.get $1 i32.sub - local.tee $0 + local.tee $6 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -2890,16 +2895,16 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1568 - local.set $5 + local.set $4 br $__inlined_func$~lib/string/String#substring end i32.const 0 - local.get $3 + local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $3 i32.eq - local.get $2 + local.get $1 select if global.get $~lib/memory/__stack_pointer @@ -2907,49 +2912,47 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1056 - local.set $5 + local.set $4 br $__inlined_func$~lib/string/String#substring end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $6 i32.const 1 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $4 i32.store - local.get $0 - local.set $4 block $~lib/util/memory/memmove|inlined.0 - local.get $5 + local.get $4 local.tee $0 - local.get $2 + local.get $1 i32.const 1056 i32.add - local.tee $1 + local.tee $3 i32.eq br_if $~lib/util/memory/memmove|inlined.0 - local.get $1 + local.get $3 local.get $0 i32.sub - local.get $4 + local.get $6 i32.sub i32.const 0 - local.get $4 + local.get $6 i32.const 1 i32.shl i32.sub i32.le_u if local.get $0 - local.get $1 - local.get $4 + local.get $3 + local.get $6 call $~lib/util/memory/memcpy br $~lib/util/memory/memmove|inlined.0 end local.get $0 - local.get $1 + local.get $3 i32.lt_u if - local.get $1 + local.get $3 i32.const 7 i32.and local.get $0 @@ -2962,81 +2965,81 @@ i32.const 7 i32.and if - local.get $4 + local.get $6 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $4 + local.get $6 i32.const 1 i32.sub - local.set $4 + local.set $6 local.get $0 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $0 - local.get $1 - local.tee $2 + local.get $3 + local.tee $1 i32.const 1 i32.add - local.set $1 - local.get $3 + local.set $3 local.get $2 + local.get $1 i32.load8_u i32.store8 br $while-continue|0 end end loop $while-continue|1 - local.get $4 + local.get $6 i32.const 8 i32.ge_u if local.get $0 - local.get $1 + local.get $3 i64.load i64.store - local.get $4 + local.get $6 i32.const 8 i32.sub - local.set $4 + local.set $6 local.get $0 i32.const 8 i32.add local.set $0 - local.get $1 + local.get $3 i32.const 8 i32.add - local.set $1 + local.set $3 br $while-continue|1 end end end loop $while-continue|2 - local.get $4 + local.get $6 if local.get $0 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $0 - local.get $1 - local.tee $2 + local.get $3 + local.tee $1 i32.const 1 i32.add - local.set $1 - local.get $3 + local.set $3 local.get $2 + local.get $1 i32.load8_u i32.store8 - local.get $4 + local.get $6 i32.const 1 i32.sub - local.set $4 + local.set $6 br $while-continue|2 end end else - local.get $1 + local.get $3 i32.const 7 i32.and local.get $0 @@ -3046,22 +3049,22 @@ if loop $while-continue|3 local.get $0 - local.get $4 + local.get $6 i32.add i32.const 7 i32.and if - local.get $4 + local.get $6 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 local.get $0 - local.get $4 + local.get $6 i32.const 1 i32.sub - local.tee $4 + local.tee $6 i32.add - local.get $1 - local.get $4 + local.get $3 + local.get $6 i32.add i32.load8_u i32.store8 @@ -3069,18 +3072,18 @@ end end loop $while-continue|4 - local.get $4 + local.get $6 i32.const 8 i32.ge_u if local.get $0 - local.get $4 + local.get $6 i32.const 8 i32.sub - local.tee $4 + local.tee $6 i32.add - local.get $1 - local.get $4 + local.get $3 + local.get $6 i32.add i64.load i64.store @@ -3089,16 +3092,16 @@ end end loop $while-continue|5 - local.get $4 + local.get $6 if local.get $0 - local.get $4 + local.get $6 i32.const 1 i32.sub - local.tee $4 + local.tee $6 i32.add - local.get $1 - local.get $4 + local.get $3 + local.get $6 i32.add i32.load8_u i32.store8 @@ -3112,8 +3115,8 @@ i32.add global.set $~lib/memory/__stack_pointer end - local.get $6 local.get $5 + local.get $4 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 @@ -3126,7 +3129,7 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - local.get $6 + local.get $5 i32.load i32.const 123 i32.ne @@ -3139,15 +3142,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $6 - i32.load offset=4 local.tee $0 + local.get $5 + i32.load offset=4 + local.tee $3 i32.store - local.get $1 + local.get $0 i32.const 1600 i32.store offset=4 - local.get $0 + local.get $3 i32.const 1600 call $~lib/string/String.__eq i32.eqz @@ -3159,7 +3162,7 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 call $~lib/rt/tlsf/__free global.get $~lib/memory/__stack_pointer i32.const 8 @@ -3446,40 +3449,40 @@ i32.const 16 i32.const 5 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.store offset=4 - local.get $2 + local.get $0 f64.const 0 f64.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=12 - local.get $2 + local.get $0 i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 1632 i32.store offset=4 - local.get $2 + local.get $0 i32.const 1632 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $2 + local.get $0 f64.const 0 f64.store offset=8 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $2 - i32.store + local.tee $3 local.get $0 + i32.store + local.get $3 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -3490,7 +3493,7 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - local.get $2 + local.get $0 i32.load if i32.const 0 @@ -3501,15 +3504,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $2 + local.tee $3 + local.get $0 i32.load offset=4 - local.tee $0 + local.tee $2 i32.store - local.get $1 + local.get $3 i32.const 1632 i32.store offset=4 - local.get $0 + local.get $2 i32.const 1632 call $~lib/string/String.__eq i32.eqz @@ -3521,7 +3524,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 f64.load offset=8 f64.const 0 f64.ne @@ -3632,18 +3635,18 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 local.get $0 i32.load - local.tee $1 + local.tee $2 i32.store - local.get $2 + local.get $3 i32.const 1664 i32.store offset=4 - local.get $1 + local.get $2 i32.const 1664 call $~lib/string/String.__eq i32.eqz @@ -3656,15 +3659,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 local.get $0 i32.load offset=4 - local.tee $1 + local.tee $2 i32.store - local.get $2 + local.get $3 i32.const 1696 i32.store offset=4 - local.get $1 + local.get $2 i32.const 1696 call $~lib/string/String.__eq i32.eqz @@ -3679,9 +3682,9 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=8 - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -3696,9 +3699,9 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=12 - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -3713,9 +3716,9 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=16 - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -3730,9 +3733,9 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=20 - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -3747,9 +3750,9 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=24 - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -3764,9 +3767,9 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=28 - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 call $~lib/string/String.__eq i32.eqz diff --git a/tests/compiler/optional-typeparameters.optimized.wat b/tests/compiler/optional-typeparameters.optimized.wat index 905af20518..66195b503c 100644 --- a/tests/compiler/optional-typeparameters.optimized.wat +++ b/tests/compiler/optional-typeparameters.optimized.wat @@ -42,9 +42,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -52,9 +51,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -184,19 +182,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -221,9 +219,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -231,17 +229,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -529,10 +527,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -544,15 +542,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -582,7 +580,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -895,7 +893,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17868 i32.ge_u if @@ -905,20 +903,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -931,8 +929,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -968,9 +965,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1074,17 +1071,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size - local.tee $2 + local.tee $1 i32.const 4 - local.get $3 - i32.load offset=1568 local.get $2 + i32.load offset=1568 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1097,16 +1094,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $1 - local.get $2 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1114,15 +1111,15 @@ unreachable end end - local.get $3 local.get $2 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1149,22 +1146,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $2 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $2 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1173,19 +1170,19 @@ local.get $1 i32.const 32 i32.add - local.tee $2 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $2 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $2 + local.get $4 i32.const -2 i32.and i32.store @@ -1401,19 +1398,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1423,22 +1420,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17868 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1452,9 +1449,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1464,23 +1461,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1488,7 +1485,7 @@ else i32.const 1440 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1498,7 +1495,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1444 @@ -1513,28 +1510,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/reexport.optimized.wat b/tests/compiler/reexport.optimized.wat index 010992f542..3557a6f15f 100644 --- a/tests/compiler/reexport.optimized.wat +++ b/tests/compiler/reexport.optimized.wat @@ -256,19 +256,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -293,9 +293,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -303,17 +303,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -601,10 +601,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -616,15 +616,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -654,7 +654,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -967,7 +967,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17916 i32.ge_u if @@ -977,20 +977,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1003,8 +1003,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1040,9 +1039,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1146,17 +1145,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size - local.tee $2 + local.tee $1 i32.const 4 - local.get $3 - i32.load offset=1568 local.get $2 + i32.load offset=1568 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1169,16 +1168,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $1 - local.get $2 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1186,15 +1185,15 @@ unreachable end end - local.get $3 local.get $2 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1221,22 +1220,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $2 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $2 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1245,19 +1244,19 @@ local.get $1 i32.const 32 i32.add - local.tee $2 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $2 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $2 + local.get $4 i32.const -2 i32.and i32.store @@ -1317,34 +1316,34 @@ local.get $1 i32.const 20 i32.add - local.tee $1 + local.tee $0 i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 1 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=2 - local.get $0 + local.get $1 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $0 + local.get $1 i32.const 3 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $0 ) (func $export/sub (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -1728,19 +1727,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1750,22 +1749,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17916 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1779,9 +1778,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1791,23 +1790,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1815,7 +1814,7 @@ else i32.const 1488 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1296 @@ -1825,7 +1824,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1492 @@ -1840,28 +1839,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/rereexport.optimized.wat b/tests/compiler/rereexport.optimized.wat index 5022ffffe7..c2ca886539 100644 --- a/tests/compiler/rereexport.optimized.wat +++ b/tests/compiler/rereexport.optimized.wat @@ -75,9 +75,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -85,9 +84,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -99,9 +97,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -227,19 +224,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -264,9 +261,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -274,17 +271,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -572,10 +569,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -587,15 +584,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -625,7 +622,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -938,7 +935,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17956 i32.ge_u if @@ -948,20 +945,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -974,8 +971,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1011,9 +1007,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1252,7 +1248,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $2 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1306,17 +1302,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz if memory.size - local.tee $1 + local.tee $0 i32.const 4 - local.get $2 - i32.load offset=1568 local.get $1 + i32.load offset=1568 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1329,16 +1325,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $0 + local.tee $3 local.get $0 - local.get $1 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $0 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1346,15 +1342,15 @@ unreachable end end - local.get $2 local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1381,22 +1377,22 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $1 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if local.get $0 - local.get $1 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1405,19 +1401,19 @@ local.get $0 i32.const 32 i32.add - local.tee $1 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 local.get $1 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $1 + local.get $3 i32.const -2 i32.and i32.store @@ -1477,47 +1473,47 @@ local.get $0 i32.const 20 i32.add - local.tee $1 + local.tee $0 i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 1 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=2 - local.get $0 + local.get $1 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $0 + local.get $1 i32.const 3 i32.sub i32.const 0 i32.store8 - local.get $4 - local.get $1 + local.get $2 + local.get $0 i32.store - local.get $1 + local.get $0 i32.const 2 i32.store - local.get $1 + local.get $0 i32.const 2 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) (local $1 i32) @@ -1527,19 +1523,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1549,22 +1545,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17956 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1578,9 +1574,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1590,23 +1586,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1614,7 +1610,7 @@ else i32.const 1536 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1296 @@ -1624,7 +1620,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1540 @@ -1639,28 +1635,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-access.optimized.wat b/tests/compiler/resolve-access.optimized.wat index b47aee13df..72dc0da032 100644 --- a/tests/compiler/resolve-access.optimized.wat +++ b/tests/compiler/resolve-access.optimized.wat @@ -129,7 +129,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -152,7 +152,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -162,15 +162,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -211,20 +211,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -319,19 +319,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -356,9 +356,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -366,17 +366,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -664,10 +664,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -679,15 +679,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -717,7 +717,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1030,7 +1030,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 19732 i32.ge_u if @@ -1040,20 +1040,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1066,8 +1066,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1247,12 +1246,12 @@ if block $__inlined_func$~lib/rt/itcms/interrupt i32.const 2048 - local.set $3 + local.set $2 loop $do-loop|0 - local.get $3 + local.get $2 call $~lib/rt/itcms/step i32.sub - local.set $3 + local.set $2 global.get $~lib/rt/itcms/state i32.eqz if @@ -1268,14 +1267,14 @@ global.set $~lib/rt/itcms/threshold br $__inlined_func$~lib/rt/itcms/interrupt end - local.get $3 + local.get $2 i32.const 0 i32.gt_s br_if $do-loop|0 end global.get $~lib/rt/itcms/total - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 @@ -1289,15 +1288,15 @@ local.get $0 i32.const 16 i32.add - local.set $3 + local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $6 - local.get $3 + local.tee $3 + local.get $2 i32.const 1073741820 i32.gt_u if @@ -1308,13 +1307,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $3 + local.get $2 i32.const 19 i32.add i32.const -16 @@ -1322,34 +1321,34 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size - local.tee $5 - local.get $3 + local.tee $2 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $6 + local.get $3 i32.load offset=1568 - local.get $5 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1363,16 +1362,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $5 local.get $2 local.get $5 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1380,16 +1379,16 @@ unreachable end end - local.get $6 - local.get $5 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1406,7 +1405,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1416,13 +1415,13 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1438,9 +1437,9 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if @@ -1448,23 +1447,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1528,19 +1527,19 @@ local.get $2 i32.const 20 i32.add - local.tee $3 - local.set $2 + local.tee $2 + local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 i32.eqz br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 local.get $0 - local.get $2 + local.get $1 i32.add - local.tee $1 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1549,18 +1548,18 @@ i32.const 2 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=1 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=2 - local.get $1 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1569,10 +1568,10 @@ i32.const 6 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=3 - local.get $1 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1581,97 +1580,97 @@ i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 - local.get $2 + local.get $1 i32.sub i32.const 3 i32.and - local.tee $1 + local.tee $3 i32.add - local.tee $4 + local.tee $1 i32.const 0 i32.store - local.get $4 - local.get $0 local.get $1 + local.get $0 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=4 - local.get $4 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=12 - local.get $4 + local.get $1 i32.const 0 i32.store offset=16 - local.get $4 + local.get $1 i32.const 0 i32.store offset=20 - local.get $4 + local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 i32.store - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.const 4 i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1703,7 +1702,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/util/memory/memcpy (param $0 i32) (local $1 i32) @@ -1724,17 +1723,17 @@ select if local.get $0 - local.tee $2 + local.tee $1 i32.const 1 i32.add local.set $0 local.get $3 - local.tee $1 + local.tee $2 i32.const 1 i32.add local.set $3 - local.get $2 local.get $1 + local.get $2 i32.load8_u i32.store8 local.get $5 @@ -1880,19 +1879,19 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $1 i32.const 1 i32.add local.set $0 local.get $3 i32.const 2 i32.add - local.tee $1 + local.tee $2 i32.const 1 i32.add local.set $3 - local.get $2 local.get $1 + local.get $2 i32.load8_u i32.store8 local.get $5 @@ -1907,7 +1906,7 @@ local.get $0 local.get $3 i32.load offset=1 - local.tee $2 + local.tee $1 i32.const 8 i32.shl local.get $4 @@ -1918,10 +1917,10 @@ local.get $0 local.get $3 i32.load offset=5 - local.tee $1 + local.tee $2 i32.const 8 i32.shl - local.get $2 + local.get $1 i32.const 24 i32.shr_u i32.or @@ -1929,10 +1928,10 @@ local.get $0 local.get $3 i32.load offset=9 - local.tee $2 + local.tee $1 i32.const 8 i32.shl - local.get $1 + local.get $2 i32.const 24 i32.shr_u i32.or @@ -1943,7 +1942,7 @@ local.tee $4 i32.const 8 i32.shl - local.get $2 + local.get $1 i32.const 24 i32.shr_u i32.or @@ -1973,17 +1972,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 + local.tee $2 i32.const 2 i32.add local.set $0 local.get $3 - local.tee $2 + local.tee $1 i32.const 2 i32.add local.set $3 - local.get $1 local.get $2 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $5 @@ -1998,7 +1997,7 @@ local.get $0 local.get $3 i32.load offset=2 - local.tee $2 + local.tee $1 i32.const 16 i32.shl local.get $4 @@ -2009,10 +2008,10 @@ local.get $0 local.get $3 i32.load offset=6 - local.tee $1 + local.tee $2 i32.const 16 i32.shl - local.get $2 + local.get $1 i32.const 16 i32.shr_u i32.or @@ -2020,10 +2019,10 @@ local.get $0 local.get $3 i32.load offset=10 - local.tee $2 + local.tee $1 i32.const 16 i32.shl - local.get $1 + local.get $2 i32.const 16 i32.shr_u i32.or @@ -2034,7 +2033,7 @@ local.tee $4 i32.const 16 i32.shl - local.get $2 + local.get $1 i32.const 16 i32.shr_u i32.or @@ -2060,17 +2059,17 @@ i32.load local.set $4 local.get $0 - local.tee $2 + local.tee $1 i32.const 1 i32.add local.set $0 local.get $3 - local.tee $1 + local.tee $2 i32.const 1 i32.add local.set $3 - local.get $2 local.get $1 + local.get $2 i32.load8_u i32.store8 local.get $5 @@ -2085,7 +2084,7 @@ local.get $0 local.get $3 i32.load offset=3 - local.tee $2 + local.tee $1 i32.const 24 i32.shl local.get $4 @@ -2096,10 +2095,10 @@ local.get $0 local.get $3 i32.load offset=7 - local.tee $1 + local.tee $2 i32.const 24 i32.shl - local.get $2 + local.get $1 i32.const 8 i32.shr_u i32.or @@ -2107,10 +2106,10 @@ local.get $0 local.get $3 i32.load offset=11 - local.tee $2 + local.tee $1 i32.const 24 i32.shl - local.get $1 + local.get $2 i32.const 8 i32.shr_u i32.or @@ -2121,7 +2120,7 @@ local.tee $4 i32.const 24 i32.shl - local.get $2 + local.get $1 i32.const 8 i32.shr_u i32.or @@ -2152,143 +2151,139 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 - i32.const 2 - i32.add - local.set $0 local.get $3 - local.tee $2 - i32.const 2 - i32.add - local.set $3 - local.get $1 - local.get $2 i32.load8_u offset=1 i32.store8 offset=1 local.get $0 - local.get $3 - i32.load8_u - i32.store8 - local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.tee $1 local.get $3 - local.tee $2 i32.const 2 i32.add - local.set $3 + local.tee $2 + i32.load8_u + i32.store8 local.get $1 + local.tee $3 + i32.const 2 + i32.add + local.set $1 local.get $2 + local.tee $0 + i32.const 2 + i32.add + local.set $2 + local.get $3 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.load8_u i32.store8 - local.get $0 - local.tee $1 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $3 - local.tee $2 + local.set $1 + local.get $2 + local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $1 - local.get $2 + local.set $2 + local.get $3 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.load8_u i32.store8 - local.get $0 - local.tee $1 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $3 - local.tee $2 + local.set $1 + local.get $2 + local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $1 - local.get $2 + local.set $2 + local.get $3 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.load8_u i32.store8 - local.get $0 - local.tee $1 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $3 - local.tee $2 + local.set $1 + local.get $2 + local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $1 - local.get $2 + local.set $2 + local.get $3 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.load8_u i32.store8 - local.get $0 - local.tee $1 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $3 - local.tee $2 + local.set $1 + local.get $2 + local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $1 - local.get $2 + local.set $2 + local.get $3 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.load8_u i32.store8 - local.get $0 - local.tee $1 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $3 - local.tee $2 + local.set $1 + local.get $2 + local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $1 - local.get $2 + local.set $4 + local.get $3 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $3 + local.get $1 + local.get $4 i32.load8_u i32.store8 - local.get $0 - local.tee $1 + local.get $1 + local.tee $2 i32.const 2 i32.add local.set $0 - local.get $3 - local.tee $2 + local.get $4 + local.tee $1 i32.const 2 i32.add local.set $3 - local.get $1 local.get $2 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 end @@ -2301,71 +2296,67 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 - i32.const 2 - i32.add - local.set $0 local.get $3 - local.tee $2 - i32.const 2 - i32.add - local.set $3 - local.get $1 - local.get $2 i32.load8_u offset=1 i32.store8 offset=1 local.get $0 - local.get $3 - i32.load8_u - i32.store8 - local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.tee $1 local.get $3 - local.tee $2 i32.const 2 i32.add - local.set $3 + local.tee $2 + i32.load8_u + i32.store8 local.get $1 + local.tee $3 + i32.const 2 + i32.add + local.set $1 local.get $2 + local.tee $0 + i32.const 2 + i32.add + local.set $2 + local.get $3 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.load8_u i32.store8 - local.get $0 - local.tee $1 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $3 - local.tee $2 + local.set $1 + local.get $2 + local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $1 - local.get $2 + local.set $4 + local.get $3 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $3 + local.get $1 + local.get $4 i32.load8_u i32.store8 - local.get $0 - local.tee $1 + local.get $1 + local.tee $2 i32.const 2 i32.add local.set $0 - local.get $3 - local.tee $2 + local.get $4 + local.tee $1 i32.const 2 i32.add local.set $3 - local.get $1 local.get $2 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 end @@ -2378,37 +2369,31 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 - i32.const 2 - i32.add - local.set $0 local.get $3 - local.tee $2 - i32.const 2 - i32.add - local.set $3 - local.get $1 - local.get $2 i32.load8_u offset=1 i32.store8 offset=1 local.get $0 - local.get $3 - i32.load8_u - i32.store8 - local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 - local.get $3 local.tee $2 + local.get $3 i32.const 2 i32.add - local.set $3 + local.tee $1 + i32.load8_u + i32.store8 local.get $1 + i32.const 2 + i32.add + local.set $3 local.get $2 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 + local.get $2 + i32.const 2 + i32.add + local.set $0 end local.get $5 i32.const 2 @@ -2419,17 +2404,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 + local.tee $2 i32.const 2 i32.add local.set $0 local.get $3 - local.tee $2 + local.tee $1 i32.const 2 i32.add local.set $3 - local.get $1 local.get $2 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 end @@ -2589,54 +2574,54 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.wrap_i64 - local.tee $3 local.tee $1 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.tee $1 + local.tee $3 i32.const 1 i32.shl i32.const 1 @@ -2644,8 +2629,8 @@ local.tee $2 i32.store local.get $2 - local.get $3 local.get $1 + local.get $3 call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer @@ -2714,7 +2699,7 @@ local.get $1 i32.const 4 i32.sub - local.tee $1 + local.tee $3 i32.const 1 i32.shl local.get $2 @@ -2728,10 +2713,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $3 + local.tee $4 i32.const 10000 i32.rem_u - local.tee $4 + local.tee $1 i32.const 100 i32.div_u i32.const 2 @@ -2739,7 +2724,7 @@ i32.const 1740 i32.add i64.load32_u - local.get $4 + local.get $1 i32.const 100 i32.rem_u i32.const 2 @@ -2751,7 +2736,7 @@ i64.shl i64.or i64.store - local.get $1 + local.get $3 i32.const 4 i32.sub local.tee $1 @@ -2759,7 +2744,7 @@ i32.shl local.get $2 i32.add - local.get $3 + local.get $4 i32.const 10000 i32.div_u local.tee $3 @@ -2904,142 +2889,142 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $7 i32.const 0 i32.store i32.const 8 - local.set $7 + local.set $5 i32.const 1056 - local.set $3 + local.set $0 block $~lib/util/memory/memmove|inlined.0 i32.const 8 i32.const 0 call $~lib/rt/itcms/__new local.tee $4 - local.tee $0 + local.tee $3 i32.const 1056 i32.eq br_if $~lib/util/memory/memmove|inlined.0 i32.const 1048 - local.get $0 + local.get $3 i32.sub i32.const -16 i32.le_u if - local.get $0 + local.get $3 call $~lib/util/memory/memcpy br $~lib/util/memory/memmove|inlined.0 end - local.get $0 + local.get $3 i32.const 1056 i32.lt_u if - local.get $0 + local.get $3 i32.const 7 i32.and i32.eqz if loop $while-continue|0 - local.get $0 + local.get $3 i32.const 7 i32.and if - local.get $7 + local.get $5 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $7 + local.get $5 i32.const 1 i32.sub - local.set $7 - local.get $0 - local.tee $2 - i32.const 1 - i32.add - local.set $0 + local.set $5 local.get $3 local.tee $1 i32.const 1 i32.add local.set $3 - local.get $2 + local.get $0 + local.tee $2 + i32.const 1 + i32.add + local.set $0 local.get $1 + local.get $2 i32.load8_u i32.store8 br $while-continue|0 end end loop $while-continue|1 - local.get $7 + local.get $5 i32.const 8 i32.ge_u if - local.get $0 local.get $3 + local.get $0 i64.load i64.store - local.get $7 + local.get $5 i32.const 8 i32.sub - local.set $7 - local.get $0 - i32.const 8 - i32.add - local.set $0 + local.set $5 local.get $3 i32.const 8 i32.add local.set $3 + local.get $0 + i32.const 8 + i32.add + local.set $0 br $while-continue|1 end end end loop $while-continue|2 - local.get $7 + local.get $5 if - local.get $0 - local.tee $2 - i32.const 1 - i32.add - local.set $0 local.get $3 local.tee $1 i32.const 1 i32.add local.set $3 - local.get $2 + local.get $0 + local.tee $2 + i32.const 1 + i32.add + local.set $0 local.get $1 + local.get $2 i32.load8_u i32.store8 - local.get $7 + local.get $5 i32.const 1 i32.sub - local.set $7 + local.set $5 br $while-continue|2 end end else - local.get $0 + local.get $3 i32.const 7 i32.and i32.eqz if loop $while-continue|3 - local.get $0 - local.get $7 + local.get $3 + local.get $5 i32.add i32.const 7 i32.and if - local.get $7 + local.get $5 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $0 - local.get $7 + local.get $3 + local.get $5 i32.const 1 i32.sub - local.tee $7 + local.tee $5 i32.add - local.get $7 + local.get $5 i32.const 1056 i32.add i32.load8_u @@ -3048,17 +3033,17 @@ end end loop $while-continue|4 - local.get $7 + local.get $5 i32.const 8 i32.ge_u if - local.get $0 - local.get $7 + local.get $3 + local.get $5 i32.const 8 i32.sub - local.tee $7 + local.tee $5 i32.add - local.get $7 + local.get $5 i32.const 1056 i32.add i64.load @@ -3068,15 +3053,15 @@ end end loop $while-continue|5 - local.get $7 + local.get $5 if - local.get $0 - local.get $7 + local.get $3 + local.get $5 i32.const 1 i32.sub - local.tee $7 + local.tee $5 i32.add - local.get $7 + local.get $5 i32.const 1056 i32.add i32.load8_u @@ -3086,19 +3071,19 @@ end end end - local.get $5 + local.get $7 local.get $4 local.tee $0 i32.store i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 local.get $0 i32.store local.get $0 if - local.get $3 + local.get $1 i32.eqz if i32.const 0 @@ -3118,13 +3103,13 @@ i32.and i32.eq if - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $1 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq @@ -3135,7 +3120,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $1 + local.get $3 i32.const 3 i32.eq i32.and @@ -3146,13 +3131,13 @@ end end end - local.get $3 + local.get $1 local.get $0 i32.store offset=4 - local.get $3 + local.get $1 i32.const 8 i32.store offset=8 - local.get $3 + local.get $1 i32.const 1 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -3160,9 +3145,9 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $6 - local.get $3 + local.get $1 i32.store - local.get $3 + local.get $1 i32.load offset=12 i32.eqz if @@ -3173,7 +3158,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i32.load offset=4 i64.load call $~lib/number/U64#toString @@ -3276,18 +3261,18 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 call $resolve-access/Container#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i64.const 1 i64.store block $__inlined_func$~lib/util/number/utoa32 (result i32) - local.get $1 + local.get $0 i64.load i32.wrap_i64 local.set $0 @@ -3359,22 +3344,22 @@ i32.add end end - local.tee $1 + local.tee $2 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 - local.get $0 local.get $1 + local.get $0 + local.get $2 call $~lib/util/number/utoa32_dec_lut global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 end global.get $~lib/memory/__stack_pointer i32.const 4 diff --git a/tests/compiler/resolve-binary.optimized.wat b/tests/compiler/resolve-binary.optimized.wat index 0aec92d263..9126eb7b18 100644 --- a/tests/compiler/resolve-binary.optimized.wat +++ b/tests/compiler/resolve-binary.optimized.wat @@ -328,14 +328,14 @@ if local.get $3 i32.load16_u - local.tee $2 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $2 i32.ne if - local.get $2 local.get $4 + local.get $2 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -361,9 +361,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -371,9 +370,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -381,9 +379,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -517,19 +514,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -554,9 +551,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -564,17 +561,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -862,10 +859,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -877,15 +874,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -915,7 +912,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1228,7 +1225,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 27676 i32.ge_u if @@ -1238,20 +1235,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1264,8 +1261,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1445,12 +1441,12 @@ if block $__inlined_func$~lib/rt/itcms/interrupt i32.const 2048 - local.set $3 + local.set $2 loop $do-loop|0 - local.get $3 + local.get $2 call $~lib/rt/itcms/step i32.sub - local.set $3 + local.set $2 global.get $~lib/rt/itcms/state i32.eqz if @@ -1466,14 +1462,14 @@ global.set $~lib/rt/itcms/threshold br $__inlined_func$~lib/rt/itcms/interrupt end - local.get $3 + local.get $2 i32.const 0 i32.gt_s br_if $do-loop|0 end global.get $~lib/rt/itcms/total - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 @@ -1487,15 +1483,15 @@ local.get $0 i32.const 16 i32.add - local.set $3 + local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $6 - local.get $3 + local.tee $3 + local.get $2 i32.const 1073741820 i32.gt_u if @@ -1506,13 +1502,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $3 + local.get $2 i32.const 19 i32.add i32.const -16 @@ -1520,34 +1516,34 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size - local.tee $5 - local.get $3 + local.tee $2 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $6 + local.get $3 i32.load offset=1568 - local.get $5 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1561,16 +1557,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $5 local.get $2 local.get $5 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1578,16 +1574,16 @@ unreachable end end - local.get $6 - local.get $5 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1604,7 +1600,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1614,13 +1610,13 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1636,9 +1632,9 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if @@ -1646,23 +1642,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1726,19 +1722,19 @@ local.get $2 i32.const 20 i32.add - local.tee $3 - local.set $2 + local.tee $2 + local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 i32.eqz br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 local.get $0 - local.get $2 + local.get $1 i32.add - local.tee $1 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1747,18 +1743,18 @@ i32.const 2 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=1 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=2 - local.get $1 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1767,10 +1763,10 @@ i32.const 6 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=3 - local.get $1 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1779,97 +1775,97 @@ i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 - local.get $2 + local.get $1 i32.sub i32.const 3 i32.and - local.tee $1 + local.tee $3 i32.add - local.tee $4 + local.tee $1 i32.const 0 i32.store - local.get $4 - local.get $0 local.get $1 + local.get $0 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=4 - local.get $4 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=12 - local.get $4 + local.get $1 i32.const 0 i32.store offset=16 - local.get $4 + local.get $1 i32.const 0 i32.store offset=20 - local.get $4 + local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 i32.store - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.const 4 i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1901,7 +1897,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/util/number/utoa32_dec_lut (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -2382,7 +2378,7 @@ i32.shl i32.const 9758 i32.add - local.tee $8 + local.tee $2 i32.load16_u local.set $5 loop $while-continue|3 @@ -2425,7 +2421,7 @@ br $while-continue|3 end end - local.get $8 + local.get $2 local.get $5 i32.store16 local.get $4 @@ -2505,7 +2501,7 @@ i32.shl i32.const 9758 i32.add - local.tee $8 + local.tee $2 i32.load16_u local.set $5 loop $while-continue|6 @@ -2548,7 +2544,7 @@ br $while-continue|6 end end - local.get $8 + local.get $2 local.get $5 i32.store16 local.get $4 @@ -2566,17 +2562,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2722,19 +2718,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2749,7 +2745,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -2760,10 +2756,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2771,10 +2767,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -2785,7 +2781,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2840,7 +2836,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -2851,10 +2847,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2862,10 +2858,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -2876,7 +2872,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2902,17 +2898,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2927,7 +2923,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -2938,10 +2934,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2949,10 +2945,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -2963,7 +2959,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -3000,131 +2996,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -3141,59 +3141,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -3477,17 +3481,17 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $4 i32.const 21 i32.le_s local.get $0 - local.get $3 + local.get $4 i32.le_s i32.and if (result i32) loop $for-loop|0 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 @@ -3504,59 +3508,59 @@ br $for-loop|0 end end - local.get $3 + local.get $4 i32.const 1 i32.shl i32.const 9760 i32.add i32.const 3145774 i32.store - local.get $3 + local.get $4 i32.const 2 i32.add else - local.get $3 + local.get $4 i32.const 21 i32.le_s - local.get $3 + local.get $4 i32.const 0 i32.gt_s i32.and if (result i32) - local.get $3 + local.get $4 i32.const 1 i32.shl i32.const 9760 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.add - local.get $3 + local.get $2 i32.const 0 local.get $1 i32.sub i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $3 + local.get $2 i32.const 46 i32.store16 local.get $0 i32.const 1 i32.add else - local.get $3 + local.get $4 i32.const 0 i32.le_s - local.get $3 + local.get $4 i32.const -6 i32.gt_s i32.and if (result i32) i32.const 2 - local.get $3 + local.get $4 i32.sub - local.tee $3 + local.tee $2 i32.const 1 i32.shl i32.const 9760 @@ -3573,7 +3577,7 @@ local.set $1 loop $for-loop|1 local.get $1 - local.get $3 + local.get $2 i32.lt_s if local.get $1 @@ -3591,7 +3595,7 @@ end end local.get $0 - local.get $3 + local.get $2 i32.add else local.get $0 @@ -3601,13 +3605,13 @@ i32.const 9762 i32.const 101 i32.store16 - local.get $3 + local.get $4 i32.const 1 i32.sub local.tee $1 i32.const 0 i32.lt_s - local.tee $3 + local.tee $0 if i32.const 0 local.get $1 @@ -3615,67 +3619,66 @@ local.set $1 end local.get $1 - local.tee $0 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.set $0 + local.set $2 i32.const 9764 local.get $1 - local.get $0 + local.get $2 i32.const 1 i32.add - local.tee $0 + local.tee $1 call $~lib/util/number/utoa32_dec_lut i32.const 9764 i32.const 45 i32.const 43 - local.get $3 + local.get $0 select i32.store16 - local.get $0 + local.get $1 i32.const 2 i32.add else @@ -3694,20 +3697,19 @@ local.get $1 i32.const 9760 i32.add - local.tee $1 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $1 - local.tee $2 + local.get $2 i32.const 4 i32.add - local.get $3 + local.get $4 i32.const 1 i32.sub local.tee $1 i32.const 0 i32.lt_s - local.tee $5 + local.tee $4 if i32.const 0 local.get $1 @@ -3715,55 +3717,54 @@ local.set $1 end local.get $1 - local.tee $3 i32.const 100000 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $3 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $3 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $3 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $3 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $3 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.set $3 + local.set $5 local.get $1 - local.get $3 + local.get $5 i32.const 1 i32.add local.tee $1 @@ -3771,7 +3772,7 @@ local.get $2 i32.const 45 i32.const 43 - local.get $5 + local.get $4 select i32.store16 offset=4 local.get $0 @@ -3786,11 +3787,11 @@ ) (func $~lib/number/F64#toString (result i32) (local $0 i64) - (local $1 i64) - (local $2 i64) + (local $1 i32) + (local $2 i32) (local $3 i64) - (local $4 i32) - (local $5 i32) + (local $4 i64) + (local $5 i64) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -3818,36 +3819,36 @@ i32.load16_s global.set $~lib/util/number/_exp_pow global.get $~lib/util/number/_frc_pow - local.tee $0 + local.tee $3 i64.const 4294967295 i64.and - local.tee $1 + local.tee $4 i64.const 31 i64.shl - local.set $3 - local.get $0 + local.set $0 + local.get $3 i64.const 32 i64.shr_u - local.tee $0 + local.tee $3 i64.const 31 i64.shl - local.get $1 + local.get $4 i64.const 31 i64.shl - local.get $1 + local.get $4 i64.const 10 i64.shl i64.const 32 i64.shr_u i64.add - local.tee $2 + local.tee $5 i64.const 32 i64.shr_u i64.add - local.get $2 + local.get $5 i64.const 4294967295 i64.and - local.get $0 + local.get $3 i64.const 10 i64.shl i64.add @@ -3858,15 +3859,15 @@ i64.add i64.const 1 i64.sub - local.set $2 - local.get $0 + local.set $5 + local.get $3 i64.const 31 i64.shl - local.get $3 + local.get $0 i64.const 32 i64.shr_u i64.add - local.get $3 + local.get $0 i64.const 4294967295 i64.and i64.const 2147483647 @@ -3874,31 +3875,31 @@ i64.const 32 i64.shr_u i64.add - local.get $2 + local.get $5 global.get $~lib/util/number/_exp_pow i32.const 3 i32.add - local.get $2 - local.get $0 + local.get $5 + local.get $3 i64.const 2147483647 i64.mul - local.get $1 + local.get $4 i64.const 2147483647 i64.mul - local.get $1 + local.get $4 i64.const 4294966784 i64.mul i64.const 32 i64.shr_u i64.add - local.tee $1 + local.tee $0 i64.const 32 i64.shr_u i64.add - local.get $0 + local.get $3 i64.const 4294966784 i64.mul - local.get $1 + local.get $0 i64.const 4294967295 i64.and i64.add @@ -3915,22 +3916,22 @@ call $~lib/util/number/prettify i32.const 1 i32.shl - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.const 1 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $2 i32.store - local.get $5 + local.get $2 i32.const 9760 - local.get $4 + local.get $1 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $2 ) (func $~lib/rt/__visit_members (param $0 i32) block $invalid @@ -5366,19 +5367,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -5388,22 +5389,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 27676 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -5417,9 +5418,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -5429,23 +5430,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -5453,7 +5454,7 @@ else i32.const 11248 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1632 @@ -5463,7 +5464,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 11252 @@ -5478,28 +5479,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-elementaccess.optimized.wat b/tests/compiler/resolve-elementaccess.optimized.wat index 2cb055cdcb..497ecb3d59 100644 --- a/tests/compiler/resolve-elementaccess.optimized.wat +++ b/tests/compiler/resolve-elementaccess.optimized.wat @@ -97,9 +97,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -107,9 +106,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -189,7 +187,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -212,7 +210,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -222,15 +220,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -271,20 +269,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -379,19 +377,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -416,9 +414,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -426,17 +424,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -724,10 +722,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -739,15 +737,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -777,7 +775,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1090,7 +1088,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 21236 i32.ge_u if @@ -1100,20 +1098,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1126,8 +1124,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1354,14 +1351,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1371,17 +1368,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1397,22 +1394,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1423,11 +1420,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1532,7 +1529,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $5 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1558,34 +1555,34 @@ i32.const 4 i32.sub end - local.tee $2 + local.tee $5 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $2 i32.eqz if memory.size - local.tee $4 - local.get $2 + local.tee $2 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $2 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $2 + local.get $5 i32.add else - local.get $2 + local.get $5 end i32.const 4 - local.get $5 + local.get $3 i32.load offset=1568 - local.get $4 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1599,16 +1596,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $3 + local.tee $4 + local.get $2 local.get $4 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1616,18 +1613,18 @@ unreachable end end - local.get $5 - local.get $4 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $3 local.get $5 - local.get $2 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $2 i32.eqz if i32.const 0 @@ -1638,11 +1635,11 @@ unreachable end end - local.get $3 + local.get $2 i32.load i32.const -4 i32.and - local.get $2 + local.get $5 i32.lt_u if i32.const 0 @@ -1652,13 +1649,13 @@ call $~lib/builtins/abort unreachable end - local.get $5 local.get $3 + local.get $2 call $~lib/rt/tlsf/removeBlock - local.get $3 - i32.load - local.set $4 local.get $2 + i32.load + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1671,89 +1668,89 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 i32.const -4 i32.and - local.get $2 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.const 2 i32.and - local.get $2 + local.get $5 i32.or i32.store + local.get $5 local.get $2 - local.get $3 i32.const 4 i32.add i32.add - local.tee $2 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $3 local.get $5 - local.get $2 call $~lib/rt/tlsf/insertBlock else - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.const -2 i32.and i32.store - local.get $3 + local.get $2 i32.const 4 i32.add - local.get $3 + local.get $2 i32.load i32.const -4 i32.and i32.add - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.load i32.const -3 i32.and i32.store end - local.get $3 + local.get $2 local.get $1 i32.store offset=12 - local.get $3 + local.get $2 local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace local.tee $1 i32.load offset=8 - local.set $2 - local.get $3 + local.set $3 + local.get $2 global.get $~lib/rt/itcms/white local.get $1 i32.or i32.store offset=4 - local.get $3 local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $3 + local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total - local.get $3 + local.get $2 i32.load i32.const -4 i32.and @@ -1761,7 +1758,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $3 + local.get $2 i32.const 20 i32.add local.tee $1 @@ -2073,7 +2070,7 @@ i32.shl i32.const 1774 i32.add - local.tee $8 + local.tee $2 i32.load16_u local.set $5 loop $while-continue|3 @@ -2116,7 +2113,7 @@ br $while-continue|3 end end - local.get $8 + local.get $2 local.get $5 i32.store16 local.get $4 @@ -2196,7 +2193,7 @@ i32.shl i32.const 1774 i32.add - local.tee $8 + local.tee $2 i32.load16_u local.set $5 loop $while-continue|6 @@ -2239,7 +2236,7 @@ br $while-continue|6 end end - local.get $8 + local.get $2 local.get $5 i32.store16 local.get $4 @@ -2257,17 +2254,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2413,19 +2410,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2440,7 +2437,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -2451,10 +2448,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2462,10 +2459,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -2476,7 +2473,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2531,7 +2528,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -2542,10 +2539,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2553,10 +2550,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -2567,7 +2564,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2593,17 +2590,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2618,7 +2615,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -2629,10 +2626,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2640,10 +2637,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -2654,7 +2651,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2691,131 +2688,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -2832,59 +2833,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -3253,7 +3258,6 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) local.get $2 i32.eqz if @@ -3272,17 +3276,17 @@ local.get $1 local.get $2 i32.add - local.tee $4 + local.tee $3 i32.const 21 i32.le_s local.get $1 - local.get $4 + local.get $3 i32.le_s i32.and if (result i32) loop $for-loop|0 local.get $1 - local.get $4 + local.get $3 i32.lt_s if local.get $1 @@ -3299,26 +3303,26 @@ br $for-loop|0 end end - local.get $4 + local.get $3 i32.const 1 i32.shl local.get $0 i32.add i32.const 3145774 i32.store - local.get $4 + local.get $3 i32.const 2 i32.add else - local.get $4 + local.get $3 i32.const 21 i32.le_s - local.get $4 + local.get $3 i32.const 0 i32.gt_s i32.and if (result i32) - local.get $4 + local.get $3 i32.const 1 i32.shl local.get $0 @@ -3340,18 +3344,18 @@ i32.const 1 i32.add else - local.get $4 + local.get $3 i32.const 0 i32.le_s - local.get $4 + local.get $3 i32.const -6 i32.gt_s i32.and if (result i32) i32.const 2 - local.get $4 + local.get $3 i32.sub - local.tee $5 + local.tee $3 i32.const 1 i32.shl local.get $0 @@ -3368,7 +3372,7 @@ local.set $2 loop $for-loop|1 local.get $2 - local.get $5 + local.get $3 i32.lt_s if local.get $2 @@ -3386,7 +3390,7 @@ end end local.get $1 - local.get $5 + local.get $3 i32.add else local.get $1 @@ -3397,16 +3401,16 @@ i32.const 101 i32.store16 offset=2 local.get $0 - local.tee $3 + local.tee $1 i32.const 4 i32.add - local.get $4 + local.get $3 i32.const 1 i32.sub local.tee $0 i32.const 0 i32.lt_s - local.tee $2 + local.tee $3 if i32.const 0 local.get $0 @@ -3414,63 +3418,62 @@ local.set $0 end local.get $0 - local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $4 local.get $0 - local.get $1 + local.get $4 i32.const 1 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $3 + local.get $1 i32.const 45 i32.const 43 - local.get $2 + local.get $3 select i32.store16 offset=4 local.get $0 @@ -3496,20 +3499,19 @@ local.get $0 local.get $2 i32.add - local.tee $0 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $0 - local.tee $3 + local.get $2 i32.const 4 i32.add - local.get $4 + local.get $3 i32.const 1 i32.sub local.tee $0 i32.const 0 i32.lt_s - local.tee $5 + local.tee $3 if i32.const 0 local.get $0 @@ -3517,63 +3519,62 @@ local.set $0 end local.get $0 - local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 + local.set $5 local.get $0 - local.get $2 + local.get $5 i32.const 1 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $3 + local.get $2 i32.const 45 i32.const 43 - local.get $5 + local.get $3 select i32.store16 offset=4 local.get $0 @@ -3590,22 +3591,21 @@ (local $1 i64) (local $2 i32) (local $3 i64) - (local $4 i32) - (local $5 i32) + (local $4 i64) + (local $5 i64) (local $6 i64) - (local $7 i64) - (local $8 i64) + (local $7 i32) + (local $8 i32) (local $9 i32) (local $10 i64) (local $11 i64) (local $12 i64) (local $13 i64) (local $14 i64) - (local $15 i64) local.get $0 f64.const 0 f64.lt - local.tee $5 + local.tee $2 if (result f64) i32.const 1776 i32.const 45 @@ -3622,19 +3622,19 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $2 + local.tee $7 i32.const 1 - local.get $2 + local.get $7 select i32.const 1075 i32.sub - local.tee $9 + local.tee $8 i32.const 1 i32.sub local.get $1 i64.const 4503599627370495 i64.and - local.get $2 + local.get $7 i32.const 0 i32.ne i64.extend_i32_u @@ -3649,11 +3649,11 @@ local.tee $3 i64.clz i32.wrap_i64 - local.tee $4 + local.tee $7 i32.sub - local.set $2 + local.set $9 local.get $3 - local.get $4 + local.get $7 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -3663,25 +3663,25 @@ i64.eq i32.const 1 i32.add - local.tee $4 + local.tee $7 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $9 - local.get $4 + local.get $8 + local.get $7 i32.sub - local.get $2 + local.get $9 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $2 + local.get $9 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $9 + local.tee $7 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -3690,9 +3690,9 @@ f64.add local.tee $0 i32.trunc_f64_s - local.tee $2 + local.tee $8 local.get $0 - local.get $2 + local.get $8 f64.convert_i32_s f64.ne i32.add @@ -3700,18 +3700,18 @@ i32.shr_s i32.const 1 i32.add - local.tee $2 + local.tee $8 i32.const 3 i32.shl - local.tee $4 + local.tee $9 i32.sub global.set $~lib/util/number/_K - local.get $4 + local.get $9 i32.const 1832 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $2 + local.get $8 i32.const 1 i32.shl i32.const 2528 @@ -3725,81 +3725,81 @@ local.tee $1 i64.const 4294967295 i64.and - local.set $3 + local.set $10 local.get $1 i64.const 32 i64.shr_u - local.tee $10 + local.tee $11 global.get $~lib/util/number/_frc_pow - local.tee $13 + local.tee $4 i64.const 4294967295 i64.and + local.tee $12 local.tee $1 - local.tee $6 i64.mul - local.get $3 - local.get $6 + local.get $1 + local.get $10 i64.mul i64.const 32 i64.shr_u i64.add - local.set $6 + local.set $13 global.get $~lib/util/number/_frc_plus - local.tee $7 + local.tee $3 i64.const 4294967295 i64.and - local.set $11 - local.get $7 + local.set $1 + local.get $3 i64.const 32 i64.shr_u - local.tee $14 - local.get $1 + local.tee $5 + local.get $12 i64.mul local.get $1 - local.get $11 + local.get $12 i64.mul i64.const 32 i64.shr_u i64.add - local.set $7 + local.set $14 global.get $~lib/util/number/_frc_minus - local.tee $8 + local.tee $6 i64.const 4294967295 i64.and - local.set $12 - local.get $8 + local.set $3 + local.get $6 i64.const 32 i64.shr_u - local.tee $15 - local.get $1 + local.tee $6 + local.get $12 i64.mul - local.get $1 + local.get $3 local.get $12 i64.mul i64.const 32 i64.shr_u i64.add - local.set $8 - local.get $5 + local.set $12 + local.get $2 i32.const 1 i32.shl i32.const 1776 i32.add - local.get $10 - local.get $13 + local.get $11 + local.get $4 i64.const 32 i64.shr_u - local.tee $1 - local.tee $10 + local.tee $4 + local.tee $11 i64.mul - local.get $6 + local.get $13 i64.const 32 i64.shr_u i64.add - local.get $3 local.get $10 + local.get $11 i64.mul - local.get $6 + local.get $13 i64.const 4294967295 i64.and i64.add @@ -3808,17 +3808,17 @@ i64.const 32 i64.shr_u i64.add - local.get $1 - local.get $14 + local.get $4 + local.get $5 i64.mul - local.get $7 + local.get $14 i64.const 32 i64.shr_u i64.add local.get $1 - local.get $11 + local.get $4 i64.mul - local.get $7 + local.get $14 i64.const 4294967295 i64.and i64.add @@ -3829,24 +3829,24 @@ i64.add i64.const 1 i64.sub - local.tee $3 + local.tee $1 global.get $~lib/util/number/_exp_pow - local.get $9 + local.get $7 i32.add i32.const -64 i32.sub - local.get $3 local.get $1 - local.get $15 + local.get $4 + local.get $6 i64.mul - local.get $8 + local.get $12 i64.const 32 i64.shr_u i64.add - local.get $1 - local.get $12 + local.get $3 + local.get $4 i64.mul - local.get $8 + local.get $12 i64.const 4294967295 i64.and i64.add @@ -3858,13 +3858,13 @@ i64.const 1 i64.add i64.sub - local.get $5 + local.get $2 call $~lib/util/number/genDigits - local.get $5 + local.get $2 i32.sub global.get $~lib/util/number/_K call $~lib/util/number/prettify - local.get $5 + local.get $2 i32.add ) (func $~lib/number/F32#toString (param $0 f32) (result i32) @@ -4047,14 +4047,14 @@ if local.get $3 i32.load16_u - local.tee $2 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $2 i32.ne if - local.get $2 local.get $4 + local.get $2 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -4137,7 +4137,7 @@ local.get $0 i32.const 255 i32.and - local.tee $1 + local.tee $0 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -4148,68 +4148,68 @@ br $__inlined_func$~lib/util/number/utoa32 end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.tee $0 + local.tee $2 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 local.get $1 local.get $0 + local.get $2 call $~lib/util/number/utoa32_dec_lut global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 end ) (func $~lib/rt/__visit_members (param $0 i32) @@ -4395,22 +4395,22 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $resolve-elementaccess/arr local.tee $0 + global.get $resolve-elementaccess/arr + local.tee $1 i32.store offset=12 - local.get $1 local.get $0 + local.get $1 i32.store offset=8 - local.get $0 + local.get $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 10 f32.add call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Float32Array#__get call $~lib/number/F32#toString @@ -4434,16 +4434,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $resolve-elementaccess/arr local.tee $0 + global.get $resolve-elementaccess/arr + local.tee $1 i32.store - local.get $1 local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 10 @@ -4595,22 +4595,22 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $resolve-elementaccess/buf local.tee $0 + global.get $resolve-elementaccess/buf + local.tee $1 i32.store offset=12 - local.get $1 local.get $0 + local.get $1 i32.store offset=8 - local.get $0 + local.get $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 10 i32.add call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8Array#__get call $~lib/number/U8#toString @@ -4634,16 +4634,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $resolve-elementaccess/buf local.tee $0 + global.get $resolve-elementaccess/buf + local.tee $1 i32.store - local.get $1 local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 10 @@ -4737,18 +4737,18 @@ i32.const 2 local.get $1 i32.shl - local.tee $2 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $4 i32.store offset=4 + local.get $4 local.get $1 - local.get $2 call $~lib/memory/memory.fill local.get $0 - local.get $1 + local.get $4 i32.store - local.get $1 + local.get $4 if local.get $0 i32.eqz @@ -4761,10 +4761,10 @@ unreachable end global.get $~lib/rt/itcms/white - local.get $1 + local.get $4 i32.const 20 i32.sub - local.tee $3 + local.tee $2 i32.load offset=4 i32.const 3 i32.and @@ -4776,33 +4776,33 @@ i32.load offset=4 i32.const 3 i32.and - local.tee $4 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $2 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $4 + local.get $3 i32.const 3 i32.eq i32.and if - local.get $3 + local.get $2 call $~lib/rt/itcms/Object#makeGray end end end end local.get $0 - local.get $1 + local.get $4 i32.store offset=4 local.get $0 - local.get $2 + local.get $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 diff --git a/tests/compiler/resolve-function-expression.optimized.wat b/tests/compiler/resolve-function-expression.optimized.wat index 0861b0d7f0..55ef1a5465 100644 --- a/tests/compiler/resolve-function-expression.optimized.wat +++ b/tests/compiler/resolve-function-expression.optimized.wat @@ -204,19 +204,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -241,9 +241,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -251,17 +251,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -549,10 +549,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -564,15 +564,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -602,7 +602,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -915,7 +915,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 19844 i32.ge_u if @@ -925,20 +925,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -951,8 +951,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1159,8 +1158,8 @@ br_if $do-loop|0 end global.get $~lib/rt/itcms/total - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 @@ -1174,15 +1173,15 @@ local.get $0 i32.const 16 i32.add - local.set $2 + local.set $1 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $5 - local.get $2 + local.tee $2 + local.get $1 i32.const 1073741820 i32.gt_u if @@ -1193,13 +1192,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $1 i32.const 19 i32.add i32.const -16 @@ -1207,34 +1206,34 @@ i32.const 4 i32.sub end - local.tee $2 - call $~lib/rt/tlsf/searchBlock local.tee $3 + call $~lib/rt/tlsf/searchBlock + local.tee $1 i32.eqz if memory.size - local.tee $4 - local.get $2 + local.tee $1 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $2 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $2 + local.get $3 i32.add else - local.get $2 + local.get $3 end i32.const 4 - local.get $5 + local.get $2 i32.load offset=1568 - local.get $4 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1248,16 +1247,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $3 + local.tee $4 + local.get $1 local.get $4 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1265,18 +1264,18 @@ unreachable end end - local.get $5 - local.get $4 + local.get $2 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $5 local.get $2 + local.get $3 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $1 i32.eqz if i32.const 0 @@ -1287,11 +1286,11 @@ unreachable end end - local.get $3 + local.get $1 i32.load i32.const -4 i32.and - local.get $2 + local.get $3 i32.lt_u if i32.const 0 @@ -1301,13 +1300,13 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $3 + local.get $2 + local.get $1 call $~lib/rt/tlsf/removeBlock - local.get $3 + local.get $1 i32.load local.set $4 - local.get $2 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1323,44 +1322,44 @@ local.get $4 i32.const -4 i32.and - local.get $2 + local.get $3 i32.sub - local.tee $1 + local.tee $5 i32.const 16 i32.ge_u if - local.get $3 + local.get $1 local.get $4 i32.const 2 i32.and - local.get $2 + local.get $3 i32.or i32.store - local.get $2 local.get $3 + local.get $1 i32.const 4 i32.add i32.add - local.tee $2 - local.get $1 + local.tee $3 + local.get $5 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $5 local.get $2 + local.get $3 call $~lib/rt/tlsf/insertBlock else - local.get $3 + local.get $1 local.get $4 i32.const -2 i32.and i32.store - local.get $3 + local.get $1 i32.const 4 i32.add - local.get $3 + local.get $1 i32.load i32.const -4 i32.and @@ -1372,37 +1371,37 @@ i32.and i32.store end - local.get $3 + local.get $1 i32.const 1 i32.store offset=12 - local.get $3 + local.get $1 local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace local.tee $2 i32.load offset=8 - local.set $1 - local.get $3 + local.set $3 + local.get $1 global.get $~lib/rt/itcms/white local.get $2 i32.or i32.store offset=4 - local.get $3 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total - local.get $3 + local.get $1 i32.load i32.const -4 i32.and @@ -1410,10 +1409,10 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $3 + local.get $1 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1425,7 +1424,7 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1440,12 +1439,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1457,7 +1456,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $2 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1472,25 +1471,25 @@ i32.sub i32.const 3 i32.and - local.tee $2 + local.tee $3 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1500,17 +1499,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1526,22 +1525,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 @@ -1552,11 +1551,11 @@ i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1588,7 +1587,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/rt/__visit_members (param $0 i32) block $invalid @@ -1711,7 +1710,7 @@ i32.const 1200 i32.load call_indirect $0 (type $i32_=>_i32) - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -1724,7 +1723,7 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/number/itoa32 - local.get $2 + local.get $0 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -1736,58 +1735,58 @@ br $__inlined_func$~lib/util/number/itoa32 end i32.const 0 - local.get $2 + local.get $0 i32.sub - local.get $2 - local.get $2 + local.get $0 + local.get $0 i32.const 31 i32.shr_u local.tee $3 select local.tee $0 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer local.get $0 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -2051,19 +2050,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -2073,22 +2072,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 19844 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -2102,9 +2101,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2114,23 +2113,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -2138,7 +2137,7 @@ else i32.const 3424 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1648 @@ -2148,7 +2147,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 3428 @@ -2163,28 +2162,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-nested.optimized.wat b/tests/compiler/resolve-nested.optimized.wat index d89bee7d3f..4a3e2122f0 100644 --- a/tests/compiler/resolve-nested.optimized.wat +++ b/tests/compiler/resolve-nested.optimized.wat @@ -173,19 +173,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -210,9 +210,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -220,17 +220,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -518,10 +518,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -533,15 +533,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -571,7 +571,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -884,7 +884,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17876 i32.ge_u if @@ -894,20 +894,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -920,8 +920,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -957,9 +956,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1063,17 +1062,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size - local.tee $2 + local.tee $1 i32.const 4 - local.get $3 - i32.load offset=1568 local.get $2 + i32.load offset=1568 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1086,16 +1085,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $1 - local.get $2 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1103,15 +1102,15 @@ unreachable end end - local.get $3 local.get $2 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1138,22 +1137,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $2 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $2 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1162,19 +1161,19 @@ local.get $1 i32.const 32 i32.add - local.tee $2 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $2 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $2 + local.get $4 i32.const -2 i32.and i32.store @@ -1532,19 +1531,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1554,22 +1553,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17876 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1583,9 +1582,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1595,23 +1594,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1619,7 +1618,7 @@ else i32.const 1440 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1629,7 +1628,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1444 @@ -1644,28 +1643,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-new.optimized.wat b/tests/compiler/resolve-new.optimized.wat index 640ecbb49b..74b764ac05 100644 --- a/tests/compiler/resolve-new.optimized.wat +++ b/tests/compiler/resolve-new.optimized.wat @@ -172,19 +172,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -209,9 +209,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -219,17 +219,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -517,10 +517,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -532,15 +532,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -570,7 +570,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -883,7 +883,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17860 i32.ge_u if @@ -893,20 +893,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -919,8 +919,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -956,9 +955,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1124,7 +1123,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $2 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1178,17 +1177,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz if memory.size - local.tee $1 + local.tee $0 i32.const 4 - local.get $2 - i32.load offset=1568 local.get $1 + i32.load offset=1568 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1201,16 +1200,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $0 + local.tee $3 local.get $0 - local.get $1 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $0 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1218,15 +1217,15 @@ unreachable end end - local.get $2 local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1253,22 +1252,22 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $1 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if local.get $0 - local.get $1 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1277,19 +1276,19 @@ local.get $0 i32.const 32 i32.add - local.tee $1 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 local.get $1 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $1 + local.get $3 i32.const -2 i32.and i32.store @@ -1346,17 +1345,17 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $4 + local.get $2 local.get $0 i32.const 20 i32.add - local.tee $4 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $0 ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) (local $1 i32) @@ -1366,19 +1365,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1388,22 +1387,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17860 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1417,9 +1416,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1429,23 +1428,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1453,7 +1452,7 @@ else i32.const 1440 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1463,7 +1462,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1444 @@ -1478,28 +1477,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-propertyaccess.optimized.wat b/tests/compiler/resolve-propertyaccess.optimized.wat index 89afe66393..415e114c84 100644 --- a/tests/compiler/resolve-propertyaccess.optimized.wat +++ b/tests/compiler/resolve-propertyaccess.optimized.wat @@ -204,19 +204,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -241,9 +241,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -251,17 +251,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -549,10 +549,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -564,15 +564,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -602,7 +602,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -915,7 +915,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 20100 i32.ge_u if @@ -925,20 +925,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -951,8 +951,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1132,12 +1131,12 @@ if block $__inlined_func$~lib/rt/itcms/interrupt i32.const 2048 - local.set $3 + local.set $2 loop $do-loop|0 - local.get $3 + local.get $2 call $~lib/rt/itcms/step i32.sub - local.set $3 + local.set $2 global.get $~lib/rt/itcms/state i32.eqz if @@ -1153,14 +1152,14 @@ global.set $~lib/rt/itcms/threshold br $__inlined_func$~lib/rt/itcms/interrupt end - local.get $3 + local.get $2 i32.const 0 i32.gt_s br_if $do-loop|0 end global.get $~lib/rt/itcms/total - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 @@ -1174,15 +1173,15 @@ local.get $0 i32.const 16 i32.add - local.set $3 + local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $6 - local.get $3 + local.tee $3 + local.get $2 i32.const 1073741820 i32.gt_u if @@ -1193,13 +1192,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $3 + local.get $2 i32.const 19 i32.add i32.const -16 @@ -1207,34 +1206,34 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size - local.tee $5 - local.get $3 + local.tee $2 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $6 + local.get $3 i32.load offset=1568 - local.get $5 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1248,16 +1247,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $5 local.get $2 local.get $5 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1265,16 +1264,16 @@ unreachable end end - local.get $6 - local.get $5 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1291,7 +1290,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1301,13 +1300,13 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1323,9 +1322,9 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if @@ -1333,23 +1332,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1413,19 +1412,19 @@ local.get $2 i32.const 20 i32.add - local.tee $3 - local.set $2 + local.tee $2 + local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 i32.eqz br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 local.get $0 - local.get $2 + local.get $1 i32.add - local.tee $1 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1434,18 +1433,18 @@ i32.const 2 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=1 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=2 - local.get $1 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1454,10 +1453,10 @@ i32.const 6 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=3 - local.get $1 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1466,97 +1465,97 @@ i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 - local.get $2 + local.get $1 i32.sub i32.const 3 i32.and - local.tee $1 + local.tee $3 i32.add - local.tee $4 + local.tee $1 i32.const 0 i32.store - local.get $4 - local.get $0 local.get $1 + local.get $0 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=4 - local.get $4 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=12 - local.get $4 + local.get $1 i32.const 0 i32.store offset=16 - local.get $4 + local.get $1 i32.const 0 i32.store offset=20 - local.get $4 + local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 i32.store - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.const 4 i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1588,7 +1587,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/number/I32#toString (param $0 i32) (result i32) (local $1 i32) @@ -1896,14 +1895,14 @@ if local.get $3 i32.load16_u - local.tee $2 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $2 i32.ne if - local.get $2 local.get $4 + local.get $2 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2322,19 +2321,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -2344,22 +2343,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 20100 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -2373,9 +2372,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2385,23 +2384,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -2409,7 +2408,7 @@ else i32.const 3680 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1472 @@ -2419,7 +2418,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 3684 @@ -2434,28 +2433,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-ternary.optimized.wat b/tests/compiler/resolve-ternary.optimized.wat index 65fd5c408a..8e51ba83f9 100644 --- a/tests/compiler/resolve-ternary.optimized.wat +++ b/tests/compiler/resolve-ternary.optimized.wat @@ -208,19 +208,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -245,9 +245,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -255,17 +255,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -553,10 +553,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -568,15 +568,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -606,7 +606,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -919,7 +919,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 21028 i32.ge_u if @@ -929,20 +929,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -955,8 +955,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1163,8 +1162,8 @@ br_if $do-loop|0 end global.get $~lib/rt/itcms/total - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 @@ -1178,15 +1177,15 @@ local.get $0 i32.const 16 i32.add - local.set $2 + local.set $1 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $5 - local.get $2 + local.tee $2 + local.get $1 i32.const 1073741820 i32.gt_u if @@ -1197,13 +1196,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $1 i32.const 19 i32.add i32.const -16 @@ -1211,34 +1210,34 @@ i32.const 4 i32.sub end - local.tee $2 - call $~lib/rt/tlsf/searchBlock local.tee $3 + call $~lib/rt/tlsf/searchBlock + local.tee $1 i32.eqz if memory.size - local.tee $4 - local.get $2 + local.tee $1 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $2 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $2 + local.get $3 i32.add else - local.get $2 + local.get $3 end i32.const 4 - local.get $5 + local.get $2 i32.load offset=1568 - local.get $4 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1252,16 +1251,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $3 + local.tee $4 + local.get $1 local.get $4 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1269,18 +1268,18 @@ unreachable end end - local.get $5 - local.get $4 + local.get $2 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $5 local.get $2 + local.get $3 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $1 i32.eqz if i32.const 0 @@ -1291,11 +1290,11 @@ unreachable end end - local.get $3 + local.get $1 i32.load i32.const -4 i32.and - local.get $2 + local.get $3 i32.lt_u if i32.const 0 @@ -1305,13 +1304,13 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $3 + local.get $2 + local.get $1 call $~lib/rt/tlsf/removeBlock - local.get $3 + local.get $1 i32.load local.set $4 - local.get $2 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1327,44 +1326,44 @@ local.get $4 i32.const -4 i32.and - local.get $2 + local.get $3 i32.sub - local.tee $1 + local.tee $5 i32.const 16 i32.ge_u if - local.get $3 + local.get $1 local.get $4 i32.const 2 i32.and - local.get $2 + local.get $3 i32.or i32.store - local.get $2 local.get $3 + local.get $1 i32.const 4 i32.add i32.add - local.tee $2 - local.get $1 + local.tee $3 + local.get $5 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $5 local.get $2 + local.get $3 call $~lib/rt/tlsf/insertBlock else - local.get $3 + local.get $1 local.get $4 i32.const -2 i32.and i32.store - local.get $3 + local.get $1 i32.const 4 i32.add - local.get $3 + local.get $1 i32.load i32.const -4 i32.and @@ -1376,37 +1375,37 @@ i32.and i32.store end - local.get $3 + local.get $1 i32.const 1 i32.store offset=12 - local.get $3 + local.get $1 local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace local.tee $2 i32.load offset=8 - local.set $1 - local.get $3 + local.set $3 + local.get $1 global.get $~lib/rt/itcms/white local.get $2 i32.or i32.store offset=4 - local.get $3 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total - local.get $3 + local.get $1 i32.load i32.const -4 i32.and @@ -1414,10 +1413,10 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $3 + local.get $1 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1429,7 +1428,7 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1444,12 +1443,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1461,7 +1460,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $2 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1476,25 +1475,25 @@ i32.sub i32.const 3 i32.and - local.tee $2 + local.tee $3 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1504,17 +1503,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1530,22 +1529,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 @@ -1556,11 +1555,11 @@ i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1592,7 +1591,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/util/number/utoa32_dec_lut (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -1788,14 +1787,14 @@ if local.get $3 i32.load16_u - local.tee $2 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $2 i32.ne if - local.get $2 local.get $4 + local.get $2 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2072,7 +2071,7 @@ i32.shl i32.const 3470 i32.add - local.tee $8 + local.tee $2 i32.load16_u local.set $5 loop $while-continue|3 @@ -2115,7 +2114,7 @@ br $while-continue|3 end end - local.get $8 + local.get $2 local.get $5 i32.store16 local.get $4 @@ -2195,7 +2194,7 @@ i32.shl i32.const 3470 i32.add - local.tee $8 + local.tee $2 i32.load16_u local.set $5 loop $while-continue|6 @@ -2238,7 +2237,7 @@ br $while-continue|6 end end - local.get $8 + local.get $2 local.get $5 i32.store16 local.get $4 @@ -2256,17 +2255,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2412,19 +2411,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2439,7 +2438,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -2450,10 +2449,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2461,10 +2460,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -2475,7 +2474,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2530,7 +2529,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -2541,10 +2540,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2552,10 +2551,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -2566,7 +2565,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2592,17 +2591,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2617,7 +2616,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -2628,10 +2627,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2639,10 +2638,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -2653,7 +2652,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2690,131 +2689,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -2831,59 +2834,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -3167,17 +3174,17 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $4 i32.const 21 i32.le_s local.get $0 - local.get $3 + local.get $4 i32.le_s i32.and if (result i32) loop $for-loop|0 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 @@ -3194,59 +3201,59 @@ br $for-loop|0 end end - local.get $3 + local.get $4 i32.const 1 i32.shl i32.const 3472 i32.add i32.const 3145774 i32.store - local.get $3 + local.get $4 i32.const 2 i32.add else - local.get $3 + local.get $4 i32.const 21 i32.le_s - local.get $3 + local.get $4 i32.const 0 i32.gt_s i32.and if (result i32) - local.get $3 + local.get $4 i32.const 1 i32.shl i32.const 3472 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.add - local.get $3 + local.get $2 i32.const 0 local.get $1 i32.sub i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $3 + local.get $2 i32.const 46 i32.store16 local.get $0 i32.const 1 i32.add else - local.get $3 + local.get $4 i32.const 0 i32.le_s - local.get $3 + local.get $4 i32.const -6 i32.gt_s i32.and if (result i32) i32.const 2 - local.get $3 + local.get $4 i32.sub - local.tee $3 + local.tee $2 i32.const 1 i32.shl i32.const 3472 @@ -3263,7 +3270,7 @@ local.set $1 loop $for-loop|1 local.get $1 - local.get $3 + local.get $2 i32.lt_s if local.get $1 @@ -3281,7 +3288,7 @@ end end local.get $0 - local.get $3 + local.get $2 i32.add else local.get $0 @@ -3291,13 +3298,13 @@ i32.const 3474 i32.const 101 i32.store16 - local.get $3 + local.get $4 i32.const 1 i32.sub local.tee $0 i32.const 0 i32.lt_s - local.tee $3 + local.tee $1 if i32.const 0 local.get $0 @@ -3305,56 +3312,55 @@ local.set $0 end local.get $0 - local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $2 i32.const 3476 local.get $0 - local.get $1 + local.get $2 i32.const 1 i32.add local.tee $0 @@ -3362,7 +3368,7 @@ i32.const 3476 i32.const 45 i32.const 43 - local.get $3 + local.get $1 select i32.store16 local.get $0 @@ -3384,20 +3390,19 @@ local.get $1 i32.const 3472 i32.add - local.tee $1 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $1 - local.tee $2 + local.get $2 i32.const 4 i32.add - local.get $3 + local.get $4 i32.const 1 i32.sub local.tee $1 i32.const 0 i32.lt_s - local.tee $5 + local.tee $4 if i32.const 0 local.get $1 @@ -3405,55 +3410,54 @@ local.set $1 end local.get $1 - local.tee $3 i32.const 100000 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $3 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $3 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $3 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $3 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $3 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.set $3 + local.set $5 local.get $1 - local.get $3 + local.get $5 i32.const 1 i32.add local.tee $1 @@ -3461,7 +3465,7 @@ local.get $2 i32.const 45 i32.const 43 - local.get $5 + local.get $4 select i32.store16 offset=4 local.get $0 @@ -3535,9 +3539,9 @@ ) (func $~start (local $0 i32) - (local $1 i32) + (local $1 i64) (local $2 i64) - (local $3 i64) + (local $3 i32) (local $4 i64) (local $5 i64) (local $6 i64) @@ -3612,10 +3616,10 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3232 i32.store offset=4 local.get $0 @@ -3650,36 +3654,36 @@ i32.load16_s global.set $~lib/util/number/_exp_pow global.get $~lib/util/number/_frc_pow - local.tee $3 + local.tee $2 i64.const 4294967295 i64.and local.tee $4 i64.const 31 i64.shl - local.tee $2 - local.set $5 - local.get $3 + local.tee $5 + local.set $1 + local.get $2 i64.const 32 i64.shr_u - local.tee $3 + local.tee $6 i64.const 31 i64.shl - local.tee $6 + local.tee $2 local.get $4 i64.const 10 i64.shl i64.const 32 i64.shr_u - local.get $2 + local.get $5 i64.add - local.tee $2 + local.tee $5 i64.const 32 i64.shr_u i64.add - local.get $2 + local.get $5 i64.const 4294967295 i64.and - local.get $3 + local.get $6 i64.const 10 i64.shl i64.add @@ -3690,13 +3694,13 @@ i64.add i64.const 1 i64.sub - local.set $2 - local.get $5 + local.set $5 + local.get $1 i64.const 32 i64.shr_u - local.get $6 + local.get $2 i64.add - local.get $5 + local.get $1 i64.const 4294967295 i64.and i64.const 2147483647 @@ -3704,12 +3708,12 @@ i64.const 32 i64.shr_u i64.add - local.get $2 + local.get $5 global.get $~lib/util/number/_exp_pow i32.const 1 i32.add - local.get $2 - local.get $3 + local.get $5 + local.get $6 i64.const 2147483647 i64.mul local.get $4 @@ -3721,14 +3725,14 @@ i64.const 32 i64.shr_u i64.add - local.tee $4 + local.tee $1 i64.const 32 i64.shr_u i64.add - local.get $3 + local.get $6 i64.const 4294966784 i64.mul - local.get $4 + local.get $1 i64.const 4294967295 i64.and i64.add @@ -3745,28 +3749,28 @@ call $~lib/util/number/prettify i32.const 1 i32.shl - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 i32.const 3472 - local.get $1 + local.get $0 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 + local.tee $0 + local.get $3 i32.store - local.get $1 + local.get $0 i32.const 4464 i32.store offset=4 - local.get $0 + local.get $3 i32.const 4464 call $~lib/string/String.__eq i32.eqz @@ -3841,19 +3845,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -3863,22 +3867,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 21028 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -3892,9 +3896,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -3904,23 +3908,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -3928,7 +3932,7 @@ else i32.const 4608 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1472 @@ -3938,7 +3942,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 4612 @@ -3953,28 +3957,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-unary.optimized.wat b/tests/compiler/resolve-unary.optimized.wat index 9cdca6147c..1a176d733e 100644 --- a/tests/compiler/resolve-unary.optimized.wat +++ b/tests/compiler/resolve-unary.optimized.wat @@ -86,9 +86,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -96,9 +95,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -232,19 +230,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -269,9 +267,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -279,17 +277,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -577,10 +575,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -592,15 +590,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -630,7 +628,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -943,7 +941,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 20156 i32.ge_u if @@ -953,20 +951,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -979,8 +977,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1160,12 +1157,12 @@ if block $__inlined_func$~lib/rt/itcms/interrupt i32.const 2048 - local.set $3 + local.set $2 loop $do-loop|0 - local.get $3 + local.get $2 call $~lib/rt/itcms/step i32.sub - local.set $3 + local.set $2 global.get $~lib/rt/itcms/state i32.eqz if @@ -1181,14 +1178,14 @@ global.set $~lib/rt/itcms/threshold br $__inlined_func$~lib/rt/itcms/interrupt end - local.get $3 + local.get $2 i32.const 0 i32.gt_s br_if $do-loop|0 end global.get $~lib/rt/itcms/total - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 @@ -1202,15 +1199,15 @@ local.get $0 i32.const 16 i32.add - local.set $3 + local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $6 - local.get $3 + local.tee $3 + local.get $2 i32.const 1073741820 i32.gt_u if @@ -1221,13 +1218,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $3 + local.get $2 i32.const 19 i32.add i32.const -16 @@ -1235,34 +1232,34 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size - local.tee $5 - local.get $3 + local.tee $2 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $6 + local.get $3 i32.load offset=1568 - local.get $5 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1276,16 +1273,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $5 local.get $2 local.get $5 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1293,16 +1290,16 @@ unreachable end end - local.get $6 - local.get $5 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1319,7 +1316,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1329,13 +1326,13 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1351,9 +1348,9 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if @@ -1361,23 +1358,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1441,19 +1438,19 @@ local.get $2 i32.const 20 i32.add - local.tee $3 - local.set $2 + local.tee $2 + local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 i32.eqz br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 local.get $0 - local.get $2 + local.get $1 i32.add - local.tee $1 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1462,18 +1459,18 @@ i32.const 2 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=1 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=2 - local.get $1 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1482,10 +1479,10 @@ i32.const 6 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=3 - local.get $1 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1494,97 +1491,97 @@ i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 - local.get $2 + local.get $1 i32.sub i32.const 3 i32.and - local.tee $1 + local.tee $3 i32.add - local.tee $4 + local.tee $1 i32.const 0 i32.store - local.get $4 - local.get $0 local.get $1 + local.get $0 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=4 - local.get $4 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=12 - local.get $4 + local.get $1 i32.const 0 i32.store offset=16 - local.get $4 + local.get $1 i32.const 0 i32.store offset=20 - local.get $4 + local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 i32.store - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.const 4 i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1616,7 +1613,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/number/I32#toString (param $0 i32) (result i32) (local $1 i32) @@ -1924,14 +1921,14 @@ if local.get $3 i32.load16_u - local.tee $2 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $2 i32.ne if - local.get $2 local.get $4 + local.get $2 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2429,16 +2426,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $resolve-unary/foo local.tee $0 + global.get $resolve-unary/foo + local.tee $1 i32.store offset=16 - local.get $0 - global.set $resolve-unary/foo local.get $1 + global.set $resolve-unary/foo local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 global.get $resolve-unary/foo i32.ne if @@ -2450,16 +2447,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $resolve-unary/foo local.tee $0 + global.get $resolve-unary/foo + local.tee $1 i32.store offset=16 - local.get $0 - global.set $resolve-unary/foo local.get $1 + global.set $resolve-unary/foo local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 global.get $resolve-unary/foo i32.ne if @@ -2622,19 +2619,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -2644,22 +2641,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 20156 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -2673,9 +2670,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2685,23 +2682,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -2709,7 +2706,7 @@ else i32.const 3728 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1472 @@ -2719,7 +2716,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 3732 @@ -2734,28 +2731,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/rt/finalize.optimized.wat b/tests/compiler/rt/finalize.optimized.wat index 529b1d2085..0958bc49ee 100644 --- a/tests/compiler/rt/finalize.optimized.wat +++ b/tests/compiler/rt/finalize.optimized.wat @@ -167,19 +167,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -204,9 +204,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -214,17 +214,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -512,10 +512,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -527,15 +527,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -565,7 +565,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -893,7 +893,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17908 i32.ge_u if @@ -903,20 +903,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -929,8 +929,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -966,9 +965,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1070,7 +1069,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $2 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1124,17 +1123,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz if memory.size - local.tee $1 + local.tee $0 i32.const 4 - local.get $2 - i32.load offset=1568 local.get $1 + i32.load offset=1568 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1147,16 +1146,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $0 + local.tee $3 local.get $0 - local.get $1 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $0 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1164,15 +1163,15 @@ unreachable end end - local.get $2 local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1199,22 +1198,22 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $1 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if local.get $0 - local.get $1 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1223,19 +1222,19 @@ local.get $0 i32.const 32 i32.add - local.tee $1 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 local.get $1 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $1 + local.get $3 i32.const -2 i32.and i32.store @@ -1292,17 +1291,17 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $4 + local.get $2 local.get $0 i32.const 20 i32.add - local.tee $4 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $0 global.set $rt/finalize/expect global.get $~lib/rt/itcms/state i32.const 0 @@ -1397,19 +1396,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1419,22 +1418,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17908 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1448,9 +1447,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1460,23 +1459,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1484,7 +1483,7 @@ else i32.const 1488 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1494,7 +1493,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1492 @@ -1509,28 +1508,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/rt/instanceof.optimized.wat b/tests/compiler/rt/instanceof.optimized.wat index 8ee7b67891..406f620637 100644 --- a/tests/compiler/rt/instanceof.optimized.wat +++ b/tests/compiler/rt/instanceof.optimized.wat @@ -49,9 +49,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -59,9 +58,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -69,9 +67,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -79,9 +76,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -89,9 +85,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -99,9 +94,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -231,19 +225,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -268,9 +262,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -278,17 +272,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -576,10 +570,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -591,15 +585,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -629,7 +623,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -942,7 +936,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17940 i32.ge_u if @@ -952,20 +946,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -978,8 +972,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1015,9 +1008,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1121,17 +1114,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size - local.tee $2 + local.tee $1 i32.const 4 - local.get $3 - i32.load offset=1568 local.get $2 + i32.load offset=1568 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1144,16 +1137,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $1 - local.get $2 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1161,15 +1154,15 @@ unreachable end end - local.get $3 local.get $2 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1196,22 +1189,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $2 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $2 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1220,19 +1213,19 @@ local.get $1 i32.const 32 i32.add - local.tee $2 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $2 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $2 + local.get $4 i32.const -2 i32.and i32.store @@ -2138,19 +2131,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -2160,22 +2153,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17940 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -2189,9 +2182,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2201,23 +2194,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -2225,7 +2218,7 @@ else i32.const 1504 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -2235,7 +2228,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1508 @@ -2250,28 +2243,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/rt/runtime-incremental-export.optimized.wat b/tests/compiler/rt/runtime-incremental-export.optimized.wat index 9501d5f558..f4ab9e161e 100644 --- a/tests/compiler/rt/runtime-incremental-export.optimized.wat +++ b/tests/compiler/rt/runtime-incremental-export.optimized.wat @@ -168,10 +168,10 @@ local.get $0 call $~lib/rt/itcms/Object#unlink global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -179,7 +179,7 @@ else i32.const 1568 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1248 @@ -189,7 +189,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 1572 @@ -204,27 +204,27 @@ else i32.const 2 end - local.set $3 - local.get $2 + local.set $2 + local.get $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -312,19 +312,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -349,9 +349,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -359,17 +359,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -657,10 +657,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -672,15 +672,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -710,7 +710,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1023,7 +1023,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17980 i32.ge_u if @@ -1033,20 +1033,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1059,8 +1059,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1240,12 +1239,12 @@ if block $__inlined_func$~lib/rt/itcms/interrupt i32.const 2048 - local.set $3 + local.set $2 loop $do-loop|0 - local.get $3 + local.get $2 call $~lib/rt/itcms/step i32.sub - local.set $3 + local.set $2 global.get $~lib/rt/itcms/state i32.eqz if @@ -1261,14 +1260,14 @@ global.set $~lib/rt/itcms/threshold br $__inlined_func$~lib/rt/itcms/interrupt end - local.get $3 + local.get $2 i32.const 0 i32.gt_s br_if $do-loop|0 end global.get $~lib/rt/itcms/total - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 @@ -1282,15 +1281,15 @@ local.get $0 i32.const 16 i32.add - local.set $3 + local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $6 - local.get $3 + local.tee $3 + local.get $2 i32.const 1073741820 i32.gt_u if @@ -1301,13 +1300,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $3 + local.get $2 i32.const 19 i32.add i32.const -16 @@ -1315,34 +1314,34 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size - local.tee $5 - local.get $3 + local.tee $2 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $6 + local.get $3 i32.load offset=1568 - local.get $5 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1356,16 +1355,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $5 local.get $2 local.get $5 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1373,16 +1372,16 @@ unreachable end end - local.get $6 - local.get $5 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1399,7 +1398,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1409,13 +1408,13 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1431,9 +1430,9 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if @@ -1441,23 +1440,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1521,19 +1520,19 @@ local.get $2 i32.const 20 i32.add - local.tee $3 - local.set $2 + local.tee $2 + local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 i32.eqz br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 local.get $0 - local.get $2 + local.get $1 i32.add - local.tee $1 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1542,18 +1541,18 @@ i32.const 2 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=1 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=2 - local.get $1 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1562,10 +1561,10 @@ i32.const 6 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=3 - local.get $1 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1574,97 +1573,97 @@ i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 - local.get $2 + local.get $1 i32.sub i32.const 3 i32.and - local.tee $1 + local.tee $3 i32.add - local.tee $4 + local.tee $1 i32.const 0 i32.store - local.get $4 - local.get $0 local.get $1 + local.get $0 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=4 - local.get $4 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=12 - local.get $4 + local.get $1 i32.const 0 i32.store offset=16 - local.get $4 + local.get $1 i32.const 0 i32.store offset=20 - local.get $4 + local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 i32.store - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.const 4 i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1696,7 +1695,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/rt/itcms/__pin (param $0 i32) (result i32) (local $1 i32) @@ -1760,7 +1759,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $2 i32.load offset=4 i32.const 3 i32.and @@ -1778,33 +1777,33 @@ i32.const 1 i32.eq if - local.get $0 + local.get $2 call $~lib/rt/itcms/Object#makeGray else - local.get $0 + local.get $2 call $~lib/rt/itcms/Object#unlink global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $1 i32.load offset=8 - local.set $1 - local.get $0 - global.get $~lib/rt/itcms/white + local.set $0 local.get $2 + global.get $~lib/rt/itcms/white + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $0 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 + local.get $1 local.get $2 - local.get $0 i32.store offset=8 end ) diff --git a/tests/compiler/rt/runtime-minimal-export.optimized.wat b/tests/compiler/rt/runtime-minimal-export.optimized.wat index 8ab5478583..a7bce96aa4 100644 --- a/tests/compiler/rt/runtime-minimal-export.optimized.wat +++ b/tests/compiler/rt/runtime-minimal-export.optimized.wat @@ -117,19 +117,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -154,9 +154,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -164,17 +164,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -462,10 +462,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -477,15 +477,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -515,7 +515,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -774,15 +774,15 @@ local.get $0 i32.const 16 i32.add - local.set $3 + local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $5 - local.get $3 + local.tee $3 + local.get $2 i32.const 1073741820 i32.gt_u if @@ -793,13 +793,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $3 + local.get $2 i32.const 19 i32.add i32.const -16 @@ -807,34 +807,34 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size - local.tee $4 - local.get $3 + local.tee $2 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $5 + local.get $3 i32.load offset=1568 - local.get $4 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -848,16 +848,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $4 local.get $2 local.get $4 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -865,16 +865,16 @@ unreachable end end - local.get $5 - local.get $4 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $5 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -891,7 +891,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -901,13 +901,13 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $4 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -920,40 +920,40 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $4 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $5 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $4 + local.get $6 i32.const -2 i32.and i32.store @@ -1127,7 +1127,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $2 i32.load offset=4 i32.const 3 i32.and @@ -1141,30 +1141,30 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 call $~lib/rt/tcms/Object#unlink global.get $~lib/rt/tcms/fromSpace - local.tee $2 + local.tee $1 i32.load offset=8 - local.set $1 - local.get $0 - global.get $~lib/rt/tcms/white + local.set $0 local.get $2 + global.get $~lib/rt/tcms/white + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $0 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 + local.get $1 local.get $2 - local.get $0 i32.store offset=8 ) (func $~lib/rt/tcms/__collect @@ -1220,23 +1220,23 @@ end global.get $~lib/rt/tcms/white i32.eqz - local.set $4 + local.set $3 global.get $~lib/rt/tcms/toSpace - local.tee $5 + local.tee $4 i32.load offset=4 i32.const -4 i32.and local.set $0 loop $while-continue|1 local.get $0 - local.get $5 + local.get $4 i32.ne if local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $4 + local.get $3 i32.ne if i32.const 0 @@ -1259,14 +1259,14 @@ end end global.get $~lib/rt/tcms/fromSpace - local.tee $3 + local.tee $2 i32.load offset=4 i32.const -4 i32.and local.set $0 loop $while-continue|2 local.get $0 - local.get $3 + local.get $2 i32.ne if global.get $~lib/rt/tcms/white @@ -1310,7 +1310,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $6 i32.const 1484 i32.ge_u if @@ -1320,20 +1320,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $6 i32.const 4 i32.sub - local.set $2 - local.get $0 + local.set $0 + local.get $6 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $6 select if (result i32) i32.const 1 else - local.get $2 + local.get $0 i32.load i32.const 1 i32.and @@ -1346,8 +1346,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1361,17 +1360,17 @@ br $while-continue|2 end end - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.store offset=4 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.store offset=8 - local.get $5 + local.get $4 global.set $~lib/rt/tcms/fromSpace - local.get $3 + local.get $2 global.set $~lib/rt/tcms/toSpace - local.get $4 + local.get $3 global.set $~lib/rt/tcms/white ) (func $~lib/rt/__visit_members (param $0 i32) @@ -1436,37 +1435,37 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $2 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $0 + local.get $2 call $~lib/rt/tcms/Object#unlink global.get $~lib/rt/tcms/toSpace - local.tee $2 + local.tee $1 i32.load offset=8 - local.set $1 - local.get $0 + local.set $0 + local.get $2 global.get $~lib/rt/tcms/white i32.eqz - local.get $2 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $0 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 + local.get $1 local.get $2 - local.get $0 i32.store offset=8 end ) diff --git a/tests/compiler/rt/runtime-stub-export.optimized.wat b/tests/compiler/rt/runtime-stub-export.optimized.wat index d55fbb4dbe..174191b564 100644 --- a/tests/compiler/rt/runtime-stub-export.optimized.wat +++ b/tests/compiler/rt/runtime-stub-export.optimized.wat @@ -41,7 +41,7 @@ local.get $0 i32.const 16 i32.add - local.tee $7 + local.tee $3 i32.const 1073741820 i32.gt_u if @@ -53,34 +53,34 @@ unreachable end global.get $~lib/rt/stub/offset - local.tee $5 + local.tee $4 i32.const 4 i32.add local.tee $2 - local.get $7 + local.get $3 i32.const 19 i32.add i32.const -16 i32.and i32.const 4 i32.sub - local.tee $4 + local.tee $5 i32.add - local.tee $6 + local.tee $3 memory.size - local.tee $7 + local.tee $6 i32.const 16 i32.shl i32.const 15 i32.add i32.const -16 i32.and - local.tee $3 + local.tee $7 i32.gt_u if - local.get $7 local.get $6 local.get $3 + local.get $7 i32.sub i32.const 65535 i32.add @@ -88,16 +88,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $3 + local.tee $7 + local.get $6 local.get $7 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $7 memory.grow i32.const 0 i32.lt_s @@ -106,28 +106,27 @@ end end end - local.get $6 + local.get $3 global.set $~lib/rt/stub/offset - local.get $5 local.get $4 + local.get $5 i32.store local.get $2 - local.tee $3 i32.const 4 i32.sub - local.tee $7 + local.tee $3 i32.const 0 i32.store offset=4 - local.get $7 + local.get $3 i32.const 0 i32.store offset=8 - local.get $7 + local.get $3 local.get $1 i32.store offset=12 - local.get $7 + local.get $3 local.get $0 i32.store offset=16 - local.get $3 + local.get $2 i32.const 16 i32.add ) diff --git a/tests/compiler/std-wasi/console.optimized.wat b/tests/compiler/std-wasi/console.optimized.wat index 37eb1b52ca..b29641a678 100644 --- a/tests/compiler/std-wasi/console.optimized.wat +++ b/tests/compiler/std-wasi/console.optimized.wat @@ -297,38 +297,38 @@ i32.shl local.get $0 i32.add - local.set $4 + local.set $3 local.get $2 local.set $1 loop $while-continue|0 local.get $0 - local.get $4 + local.get $3 i32.lt_u if local.get $0 i32.load16_u - local.tee $3 + local.tee $5 i32.const 128 i32.lt_u if (result i32) local.get $1 - local.get $3 + local.get $5 i32.store8 local.get $1 i32.const 1 i32.add else - local.get $3 + local.get $5 i32.const 2048 i32.lt_u if (result i32) local.get $1 - local.get $3 + local.get $5 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $3 + local.get $5 i32.const 63 i32.and i32.const 128 @@ -341,16 +341,16 @@ i32.const 2 i32.add else - local.get $3 + local.get $5 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $3 + local.get $5 i32.const 56320 i32.lt_u - local.get $4 + local.get $3 local.get $0 i32.const 2 i32.add @@ -359,32 +359,32 @@ if local.get $0 i32.load16_u offset=2 - local.tee $5 + local.tee $4 i32.const 64512 i32.and i32.const 56320 i32.eq if local.get $1 - local.get $3 + local.get $5 i32.const 1023 i32.and i32.const 10 i32.shl i32.const 65536 i32.add - local.get $5 + local.get $4 i32.const 1023 i32.and i32.or - local.tee $3 + local.tee $4 i32.const 63 i32.and i32.const 128 i32.or i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 6 i32.shr_u i32.const 63 @@ -394,7 +394,7 @@ i32.const 16 i32.shl i32.or - local.get $3 + local.get $4 i32.const 12 i32.shr_u i32.const 63 @@ -404,7 +404,7 @@ i32.const 8 i32.shl i32.or - local.get $3 + local.get $4 i32.const 18 i32.shr_u i32.const 240 @@ -424,12 +424,12 @@ end end local.get $1 - local.get $3 + local.get $5 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $3 + local.get $5 i32.const 6 i32.shr_u i32.const 63 @@ -441,7 +441,7 @@ i32.or i32.store16 local.get $1 - local.get $3 + local.get $5 i32.const 63 i32.and i32.const 128 @@ -593,7 +593,7 @@ local.get $0 local.get $4 i32.add - local.tee $1 + local.tee $0 i32.const 58 i32.store8 local.get $3 @@ -642,8 +642,8 @@ i32.add end end - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.const 1 i32.add i32.add @@ -665,7 +665,7 @@ local.tee $3 br_if $do-loop|1 end - local.get $0 + local.get $1 local.get $4 i32.add local.tee $0 @@ -1086,19 +1086,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -1123,9 +1123,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -1133,17 +1133,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -1431,10 +1431,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -1446,15 +1446,15 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -1484,7 +1484,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1734,7 +1734,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $1 local.get $0 i32.const 1073741820 i32.gt_u @@ -1760,34 +1760,34 @@ i32.const 4 i32.sub end - local.tee $0 + local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if memory.size - local.tee $2 - local.get $0 + local.tee $0 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $0 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $0 + local.get $3 i32.add else - local.get $0 + local.get $3 end i32.const 4 - local.get $3 + local.get $1 i32.load offset=1568 - local.get $2 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1801,16 +1801,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 - local.get $1 + local.tee $2 + local.get $0 local.get $2 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $1 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1818,18 +1818,18 @@ unreachable end end - local.get $3 - local.get $2 + local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $1 local.get $3 - local.get $0 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1840,11 +1840,11 @@ unreachable end end - local.get $1 + local.get $0 i32.load i32.const -4 i32.and - local.get $0 + local.get $3 i32.lt_u if i32.const 0 @@ -1854,13 +1854,13 @@ call $~lib/wasi/index/abort unreachable end - local.get $3 local.get $1 + local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $1 - i32.load - local.set $2 local.get $0 + i32.load + local.set $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1873,59 +1873,59 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 + local.get $4 i32.const -4 i32.and - local.get $0 + local.get $3 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if - local.get $1 - local.get $2 + local.get $0 + local.get $4 i32.const 2 i32.and - local.get $0 + local.get $3 i32.or i32.store + local.get $3 local.get $0 - local.get $1 i32.const 4 i32.add i32.add - local.tee $0 - local.get $4 + local.tee $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $1 local.get $3 - local.get $0 call $~lib/rt/tlsf/insertBlock else - local.get $1 - local.get $2 + local.get $0 + local.get $4 i32.const -2 i32.and i32.store - local.get $1 + local.get $0 i32.const 4 i32.add - local.get $1 + local.get $0 i32.load i32.const -4 i32.and i32.add - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.load i32.const -3 i32.and i32.store end - local.get $1 + local.get $0 i32.const 4 i32.add ) @@ -1971,13 +1971,12 @@ unreachable end local.get $1 - local.tee $0 - local.get $0 + local.get $1 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $1 call $~lib/rt/tlsf/insertBlock ) (func $~lib/process/writeString (param $0 i32) (param $1 i32) @@ -2003,28 +2002,28 @@ end local.get $1 i32.load16_u offset=6 - local.tee $5 + local.tee $6 i32.const 128 i32.ge_u br_if $break|0 end local.get $1 i32.load16_u offset=4 - local.tee $3 + local.tee $5 i32.const 128 i32.ge_u br_if $break|0 end local.get $1 i32.load16_u offset=2 - local.tee $2 + local.tee $3 i32.const 128 i32.ge_u br_if $break|0 end local.get $1 i32.load16_u - local.tee $6 + local.tee $2 i32.const 128 i32.ge_u br_if $break|0 @@ -2035,16 +2034,16 @@ local.get $4 i32.store i32.const 1144 - local.get $2 + local.get $3 i32.const 8 i32.shl - local.get $6 + local.get $2 i32.or - local.get $3 + local.get $5 i32.const 16 i32.shl i32.or - local.get $5 + local.get $6 i32.const 24 i32.shl i32.or @@ -2069,96 +2068,92 @@ end return end - local.get $4 - local.set $3 i32.const 0 - local.set $2 + local.set $3 local.get $1 - local.tee $5 - local.tee $4 - local.get $4 + local.tee $2 + local.get $2 i32.const 20 i32.sub i32.load offset=16 i32.add - local.set $1 + local.set $6 loop $while-continue|0 - local.get $1 - local.get $4 - i32.gt_u + local.get $2 + local.get $6 + i32.lt_u if - local.get $4 + local.get $2 i32.load16_u - local.tee $6 + local.tee $5 i32.const 128 i32.lt_u if (result i32) - local.get $2 + local.get $3 i32.const 1 i32.add else - local.get $6 + local.get $5 i32.const 2048 i32.lt_u if (result i32) - local.get $2 + local.get $3 i32.const 2 i32.add else - local.get $6 + local.get $5 i32.const 64512 i32.and i32.const 55296 i32.eq - local.get $1 - local.get $4 + local.get $6 + local.get $2 i32.const 2 i32.add i32.gt_u i32.and if - local.get $4 + local.get $2 i32.load16_u offset=2 i32.const 64512 i32.and i32.const 56320 i32.eq if - local.get $2 + local.get $3 i32.const 4 i32.add - local.set $2 - local.get $4 + local.set $3 + local.get $2 i32.const 4 i32.add - local.set $4 + local.set $2 br $while-continue|0 end end - local.get $2 + local.get $3 i32.const 3 i32.add end end - local.set $2 - local.get $4 + local.set $3 + local.get $2 i32.const 2 i32.add - local.set $4 + local.set $2 br $while-continue|0 end end - local.get $2 - local.tee $1 + local.get $3 call $~lib/rt/tlsf/__alloc - local.set $4 + local.set $2 i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $3 + local.get $1 local.get $4 + local.get $2 call $~lib/string/String.UTF8.encodeUnsafe@varargs - local.get $1 + local.get $3 i32.ne if i32.const 0 @@ -2169,10 +2164,10 @@ unreachable end i32.const 1136 - local.get $4 + local.get $2 i32.store i32.const 1140 - local.get $1 + local.get $3 i32.store local.get $0 i32.const 1136 @@ -2180,7 +2175,7 @@ i32.const 1144 call $~lib/bindings/wasi_snapshot_preview1/fd_write local.set $0 - local.get $4 + local.get $2 call $~lib/rt/tlsf/__free local.get $0 i32.const 65535 @@ -2287,7 +2282,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -2310,7 +2305,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2320,15 +2315,15 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -2369,20 +2364,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -2416,7 +2411,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $1 + local.set $2 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -2433,11 +2428,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -2479,9 +2474,9 @@ if local.get $0 i32.load - local.tee $2 + local.tee $1 if - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -2505,11 +2500,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -2535,7 +2530,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $1 + local.get $2 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -2686,14 +2681,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -2703,17 +2698,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -2729,22 +2724,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -2755,11 +2750,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -2864,26 +2859,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -3141,29 +3136,29 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 i32.const 0 i32.store offset=8 - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $6 i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -3171,51 +3166,51 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $8 + local.tee $4 local.get $0 i32.load offset=16 i32.const 24 i32.mul i32.add - local.set $4 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 local.get $4 - local.get $8 + local.get $7 i32.ne if - local.get $8 + local.get $4 i32.load offset=16 i32.const 1 i32.and i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $4 i32.load - local.tee $6 + local.tee $8 i32.store offset=8 local.get $2 - local.get $6 + local.get $8 i32.store local.get $2 - local.get $8 + local.get $4 i64.load offset=8 i64.store offset=8 local.get $2 - local.get $6 + local.get $8 call $~lib/util/hash/HASH<~lib/string/String> local.get $1 i32.and i32.const 2 i32.shl - local.get $7 + local.get $5 i32.add - local.tee $6 + local.tee $8 i32.load i32.store offset=16 - local.get $6 + local.get $8 local.get $2 i32.store local.get $2 @@ -3223,20 +3218,20 @@ i32.add local.set $2 end - local.get $8 + local.get $4 i32.const 24 i32.add - local.set $8 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $7 + local.get $5 i32.store - local.get $7 + local.get $5 if local.get $0 - local.get $7 + local.get $5 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -3254,7 +3249,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $5 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -3411,54 +3406,54 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.wrap_i64 - local.tee $3 local.tee $1 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.tee $1 + local.tee $3 i32.const 1 i32.shl i32.const 1 @@ -3466,8 +3461,8 @@ local.tee $2 i32.store local.get $2 - local.get $3 local.get $1 + local.get $3 call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer @@ -3536,7 +3531,7 @@ local.get $1 i32.const 4 i32.sub - local.tee $1 + local.tee $3 i32.const 1 i32.shl local.get $2 @@ -3550,10 +3545,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $3 + local.tee $4 i32.const 10000 i32.rem_u - local.tee $4 + local.tee $1 i32.const 100 i32.div_u i32.const 2 @@ -3561,7 +3556,7 @@ i32.const 6012 i32.add i64.load32_u - local.get $4 + local.get $1 i32.const 100 i32.rem_u i32.const 2 @@ -3573,7 +3568,7 @@ i64.shl i64.or i64.store - local.get $1 + local.get $3 i32.const 4 i32.sub local.tee $1 @@ -3581,7 +3576,7 @@ i32.shl local.get $2 i32.add - local.get $3 + local.get $4 i32.const 10000 i32.div_u local.tee $3 @@ -3695,9 +3690,8 @@ end end local.get $1 - local.tee $0 if - local.get $0 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end return @@ -3863,7 +3857,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $0 local.get $2 i32.const 20 i32.sub @@ -3882,8 +3876,7 @@ i32.and i32.or i32.const 1 - local.get $3 - local.tee $0 + local.get $0 i32.const 4 i32.ge_u select @@ -3924,14 +3917,14 @@ if local.get $2 i32.load16_u - local.tee $3 + local.tee $7 local.get $4 i32.load16_u - local.tee $7 + local.tee $3 i32.ne if - local.get $7 local.get $3 + local.get $7 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -3973,9 +3966,9 @@ i32.const 0 ) (func $~lib/console/console.time (param $0 i32) - (local $1 i32) + (local $1 i64) (local $2 i32) - (local $3 i64) + (local $3 i32) (local $4 i32) (local $5 i32) global.get $~lib/memory/__stack_pointer @@ -3988,14 +3981,14 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 global.get $~lib/console/timers - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 local.get $0 local.get $0 call $~lib/util/hash/HASH<~lib/string/String> @@ -4024,10 +4017,10 @@ end global.get $~lib/memory/__stack_pointer global.get $~lib/console/timers - local.tee $1 + local.tee $4 i32.store call $~lib/process/process.hrtime - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -4039,28 +4032,28 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $1 + local.get $4 local.get $0 local.get $0 call $~lib/util/hash/HASH<~lib/string/String> - local.tee $4 - call $~lib/map/Map<~lib/string/String,u64>#find local.tee $2 + call $~lib/map/Map<~lib/string/String,u64>#find + local.tee $3 if - local.get $2 local.get $3 + local.get $1 i64.store offset=8 else - local.get $1 + local.get $4 i32.load offset=16 - local.get $1 + local.get $4 i32.load offset=12 i32.eq if - local.get $1 - local.get $1 + local.get $4 + local.get $4 i32.load offset=20 - local.get $1 + local.get $4 i32.load offset=12 i32.const 3 i32.mul @@ -4068,10 +4061,10 @@ i32.div_s i32.lt_s if (result i32) - local.get $1 + local.get $4 i32.load offset=4 else - local.get $1 + local.get $4 i32.load offset=4 i32.const 1 i32.shl @@ -4081,47 +4074,47 @@ call $~lib/map/Map<~lib/string/String,u64>#rehash end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $5 i32.store - local.get $1 - local.get $1 + local.get $4 + local.get $4 i32.load offset=16 - local.tee $5 + local.tee $3 i32.const 1 i32.add i32.store offset=16 - local.get $5 + local.get $3 i32.const 24 i32.mul - local.get $2 + local.get $5 i32.add - local.tee $2 + local.tee $3 local.get $0 i32.store local.get $0 if - local.get $1 + local.get $4 local.get $0 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 local.get $3 - i64.store offset=8 - local.get $1 local.get $1 + i64.store offset=8 + local.get $4 + local.get $4 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $2 - local.get $1 + local.get $3 + local.get $4 i32.load - local.get $1 - i32.load offset=4 local.get $4 + i32.load offset=4 + local.get $2 i32.and i32.const 2 i32.shl @@ -4130,7 +4123,7 @@ i32.load i32.store offset=16 local.get $0 - local.get $2 + local.get $3 i32.store end global.get $~lib/memory/__stack_pointer @@ -4151,8 +4144,8 @@ unreachable ) (func $~lib/console/timeLogImpl (param $0 i32) - (local $1 i32) - (local $2 i64) + (local $1 i64) + (local $2 i32) global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -4169,22 +4162,22 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 global.get $~lib/console/timers - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 local.get $0 local.get $0 call $~lib/util/hash/HASH<~lib/string/String> call $~lib/map/Map<~lib/string/String,u64>#find - local.tee $1 + local.tee $2 i32.eqz if i32.const 5696 @@ -4194,19 +4187,19 @@ call $~lib/wasi/index/abort unreachable end - local.get $1 + local.get $2 i64.load offset=8 - local.set $2 + local.set $1 call $~lib/process/process.hrtime - local.get $2 + local.get $1 i64.sub i64.const 1000000 i64.div_u - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 call $~lib/number/U64#toString - local.tee $1 + local.tee $2 i32.store offset=4 i32.const 1 local.get $0 @@ -4218,7 +4211,7 @@ i32.const 7584 call $~lib/process/writeString i32.const 1 - local.get $1 + local.get $2 call $~lib/process/writeString global.get $~lib/memory/__stack_pointer i32.const 7616 @@ -4374,14 +4367,14 @@ i32.load offset=4 i32.const 1 i32.shr_u - local.tee $2 + local.tee $0 i32.const 1 i32.add i32.const 4 local.get $1 i32.load offset=20 - local.tee $0 - local.get $0 + local.tee $2 + local.get $2 i32.const 4 i32.lt_u select @@ -4401,7 +4394,7 @@ end if local.get $1 - local.get $2 + local.get $0 call $~lib/map/Map<~lib/string/String,u64>#rehash end end @@ -4829,16 +4822,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $3 i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $3 local.get $1 local.get $2 select @@ -4847,7 +4840,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $0 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std-wasi/crypto.optimized.wat b/tests/compiler/std-wasi/crypto.optimized.wat index 9f4372e4c7..8507b021c8 100644 --- a/tests/compiler/std-wasi/crypto.optimized.wat +++ b/tests/compiler/std-wasi/crypto.optimized.wat @@ -253,38 +253,38 @@ i32.shl local.get $0 i32.add - local.set $4 + local.set $3 local.get $2 local.set $1 loop $while-continue|0 local.get $0 - local.get $4 + local.get $3 i32.lt_u if local.get $0 i32.load16_u - local.tee $3 + local.tee $5 i32.const 128 i32.lt_u if (result i32) local.get $1 - local.get $3 + local.get $5 i32.store8 local.get $1 i32.const 1 i32.add else - local.get $3 + local.get $5 i32.const 2048 i32.lt_u if (result i32) local.get $1 - local.get $3 + local.get $5 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $3 + local.get $5 i32.const 63 i32.and i32.const 128 @@ -297,16 +297,16 @@ i32.const 2 i32.add else - local.get $3 + local.get $5 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $3 + local.get $5 i32.const 56320 i32.lt_u - local.get $4 + local.get $3 local.get $0 i32.const 2 i32.add @@ -315,32 +315,32 @@ if local.get $0 i32.load16_u offset=2 - local.tee $5 + local.tee $4 i32.const 64512 i32.and i32.const 56320 i32.eq if local.get $1 - local.get $3 + local.get $5 i32.const 1023 i32.and i32.const 10 i32.shl i32.const 65536 i32.add - local.get $5 + local.get $4 i32.const 1023 i32.and i32.or - local.tee $3 + local.tee $4 i32.const 63 i32.and i32.const 128 i32.or i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 6 i32.shr_u i32.const 63 @@ -350,7 +350,7 @@ i32.const 16 i32.shl i32.or - local.get $3 + local.get $4 i32.const 12 i32.shr_u i32.const 63 @@ -360,7 +360,7 @@ i32.const 8 i32.shl i32.or - local.get $3 + local.get $4 i32.const 18 i32.shr_u i32.const 240 @@ -380,12 +380,12 @@ end end local.get $1 - local.get $3 + local.get $5 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $3 + local.get $5 i32.const 6 i32.shr_u i32.const 63 @@ -397,7 +397,7 @@ i32.or i32.store16 local.get $1 - local.get $3 + local.get $5 i32.const 63 i32.and i32.const 128 @@ -549,7 +549,7 @@ local.get $0 local.get $4 i32.add - local.tee $1 + local.tee $0 i32.const 58 i32.store8 local.get $3 @@ -598,8 +598,8 @@ i32.add end end - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.const 1 i32.add i32.add @@ -621,7 +621,7 @@ local.tee $3 br_if $do-loop|1 end - local.get $0 + local.get $1 local.get $4 i32.add local.tee $0 @@ -648,9 +648,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -658,9 +657,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -668,9 +666,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -678,9 +675,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -762,7 +758,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -785,7 +781,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -795,15 +791,15 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -844,20 +840,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -952,19 +948,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -989,9 +985,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -999,17 +995,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -1297,10 +1293,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -1312,15 +1308,15 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -1350,7 +1346,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1503,13 +1499,12 @@ unreachable end local.get $1 - local.tee $0 - local.get $0 + local.get $1 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $1 call $~lib/rt/tlsf/insertBlock ) (func $~lib/rt/itcms/step (result i32) @@ -1535,7 +1530,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $1 + local.set $2 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -1552,11 +1547,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -1598,9 +1593,9 @@ if local.get $0 i32.load - local.tee $2 + local.tee $1 if - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -1624,11 +1619,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -1654,7 +1649,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $1 + local.get $2 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -1874,7 +1869,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $1 local.get $0 i32.const 1073741820 i32.gt_u @@ -1900,34 +1895,34 @@ i32.const 4 i32.sub end - local.tee $0 + local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if memory.size - local.tee $2 - local.get $0 + local.tee $0 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $0 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $0 + local.get $3 i32.add else - local.get $0 + local.get $3 end i32.const 4 - local.get $3 + local.get $1 i32.load offset=1568 - local.get $2 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1941,16 +1936,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 - local.get $1 + local.tee $2 + local.get $0 local.get $2 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $1 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1958,18 +1953,18 @@ unreachable end end - local.get $3 - local.get $2 + local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $1 local.get $3 - local.get $0 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1980,11 +1975,11 @@ unreachable end end - local.get $1 + local.get $0 i32.load i32.const -4 i32.and - local.get $0 + local.get $3 i32.lt_u if i32.const 0 @@ -1994,13 +1989,13 @@ call $~lib/wasi/index/abort unreachable end - local.get $3 local.get $1 + local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $1 - i32.load - local.set $2 local.get $0 + i32.load + local.set $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -2013,59 +2008,59 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 + local.get $4 i32.const -4 i32.and - local.get $0 + local.get $3 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if - local.get $1 - local.get $2 + local.get $0 + local.get $4 i32.const 2 i32.and - local.get $0 + local.get $3 i32.or i32.store + local.get $3 local.get $0 - local.get $1 i32.const 4 i32.add i32.add - local.tee $0 - local.get $4 + local.tee $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $1 local.get $3 - local.get $0 call $~lib/rt/tlsf/insertBlock else - local.get $1 - local.get $2 + local.get $0 + local.get $4 i32.const -2 i32.and i32.store - local.get $1 + local.get $0 i32.const 4 i32.add - local.get $1 + local.get $0 i32.load i32.const -4 i32.and i32.add - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.load i32.const -3 i32.and i32.store end - local.get $1 + local.get $0 i32.const 4 i32.add ) @@ -2139,14 +2134,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -2156,17 +2151,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -2182,22 +2177,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -2208,11 +2203,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -2317,26 +2312,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2824,59 +2819,59 @@ local.get $1 i32.const 255 i32.and - local.tee $2 local.tee $1 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $2 local.get $0 - local.get $2 local.get $1 + local.get $2 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $2 ) (func $~lib/util/memory/memcpy (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -2891,17 +2886,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -3047,19 +3042,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -3074,7 +3069,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -3085,10 +3080,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -3096,10 +3091,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -3110,7 +3105,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -3165,7 +3160,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -3176,10 +3171,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -3187,10 +3182,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -3201,7 +3196,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -3227,17 +3222,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -3252,7 +3247,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -3263,10 +3258,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -3274,10 +3269,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -3288,7 +3283,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -3325,131 +3320,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -3466,59 +3465,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -3788,7 +3791,7 @@ (local $6 i32) local.get $0 i32.load offset=4 - local.set $3 + local.set $4 local.get $0 i32.load offset=8 local.set $1 @@ -3810,7 +3813,7 @@ local.get $1 i32.const 1 i32.sub - local.tee $2 + local.tee $5 i32.const 0 i32.lt_s if @@ -3823,13 +3826,13 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $2 + local.get $5 i32.eqz if block $__inlined_func$~lib/util/number/utoa32 (result i32) - local.get $3 + local.get $4 i32.load8_u - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -3841,7 +3844,7 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $1 + local.get $0 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -3852,53 +3855,53 @@ br $__inlined_func$~lib/util/number/utoa32 end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.tee $0 + local.tee $1 i32.const 1 i32.shl i32.const 1 @@ -3906,8 +3909,8 @@ local.tee $2 i32.store local.get $2 - local.get $1 local.get $0 + local.get $1 call $~lib/util/number/utoa32_dec_lut global.get $~lib/memory/__stack_pointer i32.const 4 @@ -3919,18 +3922,18 @@ br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $5 i32.const 6652 i32.load i32.const 1 i32.shr_u - local.tee $4 + local.tee $6 i32.const 10 i32.add i32.mul i32.const 10 i32.add - local.tee $6 + local.tee $3 i32.const 1 i32.shl i32.const 1 @@ -3940,22 +3943,22 @@ loop $for-loop|0 local.get $2 local.get $5 - i32.gt_s + i32.lt_s if local.get $0 i32.const 1 i32.shl local.get $1 i32.add - local.get $3 - local.get $5 + local.get $2 + local.get $4 i32.add i32.load8_u call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $4 + local.get $6 if local.get $0 i32.const 1 @@ -3963,30 +3966,30 @@ local.get $1 i32.add i32.const 6656 - local.get $4 + local.get $6 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $4 + local.get $6 i32.add local.set $0 end - local.get $5 + local.get $2 i32.const 1 i32.add - local.set $5 + local.set $2 br $for-loop|0 end end - local.get $6 + local.get $3 local.get $0 i32.const 1 i32.shl local.get $1 i32.add - local.get $2 - local.get $3 + local.get $4 + local.get $5 i32.add i32.load8_u call $~lib/util/number/itoa_buffered @@ -3997,8 +4000,6 @@ if local.get $1 local.set $0 - local.get $2 - local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -4017,24 +4018,24 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 select local.tee $3 - local.get $1 + local.get $2 i32.const 0 - local.get $1 + local.get $2 i32.const 0 i32.gt_s select - local.tee $1 - local.get $2 + local.tee $2 + local.get $1 local.get $1 local.get $2 - i32.lt_s + i32.gt_s select - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 local.get $3 i32.gt_s select @@ -4043,14 +4044,14 @@ local.set $4 block $__inlined_func$~lib/string/String#substring local.get $3 - local.get $1 - local.get $1 + local.get $2 + local.get $2 local.get $3 i32.lt_s select i32.const 1 i32.shl - local.tee $1 + local.tee $2 local.get $4 i32.sub local.tee $3 @@ -4065,10 +4066,10 @@ br $__inlined_func$~lib/string/String#substring end i32.const 0 - local.get $2 + local.get $1 i32.const 1 i32.shl - local.get $1 + local.get $2 i32.eq local.get $4 select @@ -4215,7 +4216,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $5 + local.tee $4 br_table $case4|0 $case3|0 $case2|0 $case1|0 $case0|0 $break|0 end local.get $0 @@ -4241,7 +4242,7 @@ end local.get $0 i32.load16_u - local.tee $4 + local.tee $5 i32.const 128 i32.ge_u br_if $break|0 @@ -4249,13 +4250,13 @@ i32.const 6680 i32.store i32.const 6676 - local.get $5 + local.get $4 i32.store i32.const 6680 local.get $3 i32.const 8 i32.shl - local.get $4 + local.get $5 i32.or local.get $2 i32.const 16 @@ -4304,7 +4305,7 @@ if local.get $1 i32.load16_u - local.tee $4 + local.tee $5 i32.const 128 i32.lt_u if (result i32) @@ -4312,7 +4313,7 @@ i32.const 1 i32.add else - local.get $4 + local.get $5 i32.const 2048 i32.lt_u if (result i32) @@ -4320,7 +4321,7 @@ i32.const 2 i32.add else - local.get $4 + local.get $5 i32.const 64512 i32.and i32.const 55296 @@ -4369,7 +4370,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $5 + local.get $4 local.get $1 call $~lib/string/String.UTF8.encodeUnsafe@varargs local.get $2 @@ -4541,10 +4542,10 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 memory.size @@ -4579,7 +4580,7 @@ i32.store i32.const 1568 global.set $~lib/rt/itcms/fromSpace - local.get $0 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -4588,142 +4589,142 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 8 call $~lib/memory/memory.fill global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 global.set $std-wasi/crypto/ab global.get $~lib/memory/__stack_pointer global.get $std-wasi/crypto/ab - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 4 call $~lib/typedarray/Uint8Array.wrap global.set $std-wasi/crypto/buf global.get $~lib/memory/__stack_pointer global.get $std-wasi/crypto/buf - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/crypto/crypto.getRandomValues global.get $~lib/memory/__stack_pointer i32.const 4768 i32.store offset=4 global.get $~lib/memory/__stack_pointer global.get $std-wasi/crypto/buf - local.tee $0 + local.tee $1 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Uint8Array#toString - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $0 + local.get $1 call $~lib/string/String.__concat - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 call $~lib/console/console.log global.get $~lib/memory/__stack_pointer global.get $std-wasi/crypto/buf - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/typedarray/Uint8Array#slice global.set $std-wasi/crypto/b1 global.get $~lib/memory/__stack_pointer global.get $std-wasi/crypto/ab - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 4 i32.const 4 call $~lib/typedarray/Uint8Array.wrap global.set $std-wasi/crypto/buf global.get $~lib/memory/__stack_pointer global.get $std-wasi/crypto/buf - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/crypto/crypto.getRandomValues global.get $~lib/memory/__stack_pointer i32.const 4768 i32.store offset=4 global.get $~lib/memory/__stack_pointer global.get $std-wasi/crypto/buf - local.tee $0 + local.tee $1 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Uint8Array#toString - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $0 + local.get $1 call $~lib/string/String.__concat - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 call $~lib/console/console.log global.get $~lib/memory/__stack_pointer global.get $std-wasi/crypto/buf - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/typedarray/Uint8Array#slice global.set $std-wasi/crypto/b2 global.get $~lib/memory/__stack_pointer global.get $std-wasi/crypto/ab - local.tee $0 + local.tee $1 i32.store i32.const 1 global.set $~argumentsLength - local.get $0 + local.get $1 i32.const 0 i32.const -1 call $~lib/typedarray/Uint8Array.wrap global.set $std-wasi/crypto/buf loop $for-loop|0 - local.get $1 + local.get $0 i32.const 4 i32.lt_s if global.get $~lib/memory/__stack_pointer global.get $std-wasi/crypto/buf - local.tee $0 + local.tee $1 i32.store - local.get $0 local.get $1 + local.get $0 call $~lib/typedarray/Uint8Array#__get - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer global.get $std-wasi/crypto/b1 local.tee $2 i32.store local.get $2 - local.get $1 - call $~lib/typedarray/Uint8Array#__get local.get $0 + call $~lib/typedarray/Uint8Array#__get + local.get $1 i32.ne if i32.const 0 @@ -4733,38 +4734,38 @@ call $~lib/wasi/index/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 4 i32.lt_s if global.get $~lib/memory/__stack_pointer global.get $std-wasi/crypto/buf - local.tee $0 + local.tee $1 i32.store - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.add call $~lib/typedarray/Uint8Array#__get - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer global.get $std-wasi/crypto/b2 local.tee $2 i32.store local.get $2 - local.get $1 - call $~lib/typedarray/Uint8Array#__get local.get $0 + call $~lib/typedarray/Uint8Array#__get + local.get $1 i32.ne if i32.const 0 @@ -4774,10 +4775,10 @@ call $~lib/wasi/index/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end @@ -4814,14 +4815,13 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $1 - local.tee $3 local.get $0 i32.const 20 i32.sub i32.load offset=16 - local.tee $1 - i32.gt_u + local.tee $3 + local.get $1 + i32.lt_u if i32.const 1472 i32.const 1680 @@ -4838,8 +4838,8 @@ i32.const -1 i32.eq if (result i32) - local.get $1 local.get $3 + local.get $1 i32.sub else i32.const 1168 @@ -4851,9 +4851,9 @@ end local.set $2 else + local.get $3 local.get $1 local.get $2 - local.get $3 i32.add i32.lt_s if @@ -4869,30 +4869,30 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 local.get $0 i32.store local.get $0 if - local.get $1 + local.get $3 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $3 local.get $2 i32.store offset=8 - local.get $1 - local.get $0 local.get $3 + local.get $0 + local.get $1 i32.add i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $3 ) (func $~lib/typedarray/Uint8Array#slice (param $0 i32) (result i32) (local $1 i32) @@ -4912,23 +4912,21 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store i32.const 0 local.get $0 - local.tee $3 + local.tee $1 i32.load offset=8 local.tee $0 local.get $0 i32.const 0 i32.gt_s select - local.set $5 - local.get $1 - local.set $2 + local.set $4 local.get $0 - local.get $5 + local.get $4 i32.sub local.tee $0 i32.const 0 @@ -4936,8 +4934,8 @@ i32.const 0 i32.gt_s select - local.tee $6 - local.set $1 + local.tee $5 + local.set $7 local.get $2 i32.const 4 i32.sub @@ -4987,7 +4985,7 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $7 i32.const 1073741820 i32.gt_u if @@ -4999,28 +4997,28 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $7 i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $3 i32.store offset=4 - local.get $4 - local.get $1 + local.get $3 + local.get $7 call $~lib/memory/memory.fill local.get $0 - local.get $4 + local.get $3 i32.store - local.get $4 + local.get $3 if local.get $0 - local.get $4 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $4 + local.get $3 i32.store offset=4 local.get $0 - local.get $1 + local.get $7 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 @@ -5037,11 +5035,11 @@ i32.store local.get $0 i32.load offset=4 - local.get $5 - local.get $3 + local.get $4 + local.get $1 i32.load offset=4 i32.add - local.get $6 + local.get $5 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 diff --git a/tests/compiler/std-wasi/process.optimized.wat b/tests/compiler/std-wasi/process.optimized.wat index 436988f85c..65047d85d2 100644 --- a/tests/compiler/std-wasi/process.optimized.wat +++ b/tests/compiler/std-wasi/process.optimized.wat @@ -283,38 +283,38 @@ i32.shl local.get $0 i32.add - local.set $4 + local.set $3 local.get $2 local.set $1 loop $while-continue|0 local.get $0 - local.get $4 + local.get $3 i32.lt_u if local.get $0 i32.load16_u - local.tee $3 + local.tee $5 i32.const 128 i32.lt_u if (result i32) local.get $1 - local.get $3 + local.get $5 i32.store8 local.get $1 i32.const 1 i32.add else - local.get $3 + local.get $5 i32.const 2048 i32.lt_u if (result i32) local.get $1 - local.get $3 + local.get $5 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $3 + local.get $5 i32.const 63 i32.and i32.const 128 @@ -327,16 +327,16 @@ i32.const 2 i32.add else - local.get $3 + local.get $5 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $3 + local.get $5 i32.const 56320 i32.lt_u - local.get $4 + local.get $3 local.get $0 i32.const 2 i32.add @@ -345,32 +345,32 @@ if local.get $0 i32.load16_u offset=2 - local.tee $5 + local.tee $4 i32.const 64512 i32.and i32.const 56320 i32.eq if local.get $1 - local.get $3 + local.get $5 i32.const 1023 i32.and i32.const 10 i32.shl i32.const 65536 i32.add - local.get $5 + local.get $4 i32.const 1023 i32.and i32.or - local.tee $3 + local.tee $4 i32.const 63 i32.and i32.const 128 i32.or i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 6 i32.shr_u i32.const 63 @@ -380,7 +380,7 @@ i32.const 16 i32.shl i32.or - local.get $3 + local.get $4 i32.const 12 i32.shr_u i32.const 63 @@ -390,7 +390,7 @@ i32.const 8 i32.shl i32.or - local.get $3 + local.get $4 i32.const 18 i32.shr_u i32.const 240 @@ -410,12 +410,12 @@ end end local.get $1 - local.get $3 + local.get $5 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $3 + local.get $5 i32.const 6 i32.shr_u i32.const 63 @@ -427,7 +427,7 @@ i32.or i32.store16 local.get $1 - local.get $3 + local.get $5 i32.const 63 i32.and i32.const 128 @@ -579,7 +579,7 @@ local.get $0 local.get $4 i32.add - local.tee $1 + local.tee $0 i32.const 58 i32.store8 local.get $3 @@ -628,8 +628,8 @@ i32.add end end - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.const 1 i32.add i32.add @@ -651,7 +651,7 @@ local.tee $3 br_if $do-loop|1 end - local.get $0 + local.get $1 local.get $4 i32.add local.tee $0 @@ -1072,19 +1072,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -1109,9 +1109,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -1119,17 +1119,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -1417,10 +1417,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -1432,15 +1432,15 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -1470,7 +1470,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1720,7 +1720,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $1 local.get $0 i32.const 1073741820 i32.gt_u @@ -1746,34 +1746,34 @@ i32.const 4 i32.sub end - local.tee $0 + local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if memory.size - local.tee $2 - local.get $0 + local.tee $0 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $0 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $0 + local.get $3 i32.add else - local.get $0 + local.get $3 end i32.const 4 - local.get $3 + local.get $1 i32.load offset=1568 - local.get $2 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1787,16 +1787,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 - local.get $1 + local.tee $2 + local.get $0 local.get $2 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $1 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1804,18 +1804,18 @@ unreachable end end - local.get $3 - local.get $2 + local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $1 local.get $3 - local.get $0 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1826,11 +1826,11 @@ unreachable end end - local.get $1 + local.get $0 i32.load i32.const -4 i32.and - local.get $0 + local.get $3 i32.lt_u if i32.const 0 @@ -1840,13 +1840,13 @@ call $~lib/wasi/index/abort unreachable end - local.get $3 local.get $1 + local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $1 - i32.load - local.set $2 local.get $0 + i32.load + local.set $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1859,59 +1859,59 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 + local.get $4 i32.const -4 i32.and - local.get $0 + local.get $3 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if - local.get $1 - local.get $2 + local.get $0 + local.get $4 i32.const 2 i32.and - local.get $0 + local.get $3 i32.or i32.store + local.get $3 local.get $0 - local.get $1 i32.const 4 i32.add i32.add - local.tee $0 - local.get $4 + local.tee $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $1 local.get $3 - local.get $0 call $~lib/rt/tlsf/insertBlock else - local.get $1 - local.get $2 + local.get $0 + local.get $4 i32.const -2 i32.and i32.store - local.get $1 + local.get $0 i32.const 4 i32.add - local.get $1 + local.get $0 i32.load i32.const -4 i32.and i32.add - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.load i32.const -3 i32.and i32.store end - local.get $1 + local.get $0 i32.const 4 i32.add ) @@ -1957,13 +1957,12 @@ unreachable end local.get $1 - local.tee $0 - local.get $0 + local.get $1 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $1 call $~lib/rt/tlsf/insertBlock ) (func $~lib/process/writeString (param $0 i32) @@ -1984,7 +1983,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $5 + local.tee $4 br_table $case4|0 $case3|0 $case2|0 $case1|0 $case0|0 $break|0 end local.get $0 @@ -2010,7 +2009,7 @@ end local.get $0 i32.load16_u - local.tee $4 + local.tee $5 i32.const 128 i32.ge_u br_if $break|0 @@ -2018,13 +2017,13 @@ i32.const 1096 i32.store i32.const 1092 - local.get $5 + local.get $4 i32.store i32.const 1096 local.get $3 i32.const 8 i32.shl - local.get $4 + local.get $5 i32.or local.get $2 i32.const 16 @@ -2073,7 +2072,7 @@ if local.get $1 i32.load16_u - local.tee $4 + local.tee $5 i32.const 128 i32.lt_u if (result i32) @@ -2081,7 +2080,7 @@ i32.const 1 i32.add else - local.get $4 + local.get $5 i32.const 2048 i32.lt_u if (result i32) @@ -2089,7 +2088,7 @@ i32.const 2 i32.add else - local.get $4 + local.get $5 i32.const 64512 i32.and i32.const 55296 @@ -2138,7 +2137,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $5 + local.get $4 local.get $1 call $~lib/string/String.UTF8.encodeUnsafe@varargs local.get $2 @@ -2189,9 +2188,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -2199,9 +2197,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -2209,9 +2206,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -2219,9 +2215,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -2229,9 +2224,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -2317,7 +2311,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -2340,7 +2334,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2350,15 +2344,15 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -2399,20 +2393,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -2446,7 +2440,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $1 + local.set $2 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -2463,11 +2457,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -2509,9 +2503,9 @@ if local.get $0 i32.load - local.tee $2 + local.tee $1 if - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -2535,11 +2529,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -2565,7 +2559,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $1 + local.get $2 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -2716,14 +2710,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -2733,17 +2727,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -2759,22 +2753,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -2785,11 +2779,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -2894,26 +2888,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2946,17 +2940,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -3102,19 +3096,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -3129,7 +3123,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -3140,10 +3134,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -3151,10 +3145,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -3165,7 +3159,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -3220,7 +3214,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -3231,10 +3225,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -3242,10 +3236,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -3256,7 +3250,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -3282,17 +3276,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -3307,7 +3301,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -3318,10 +3312,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -3329,10 +3323,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -3343,7 +3337,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -3380,131 +3374,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -3521,59 +3519,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -3840,7 +3842,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $2 + local.tee $3 i32.load i32.const -4 i32.and @@ -3849,28 +3851,28 @@ local.get $1 i32.ge_u if - local.get $2 + local.get $3 local.get $1 i32.store offset=16 local.get $0 return end local.get $1 - local.get $2 + local.get $3 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.load offset=16 - local.tee $2 + local.tee $0 + local.get $0 local.get $1 - local.get $2 - i32.lt_u + i32.gt_u select call $~lib/memory/memory.copy - local.get $3 + local.get $2 ) (func $~lib/array/ensureCapacity (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -4058,14 +4060,14 @@ if local.get $1 i32.load16_u - local.tee $0 + local.tee $4 local.get $2 i32.load16_u - local.tee $4 + local.tee $0 i32.ne if - local.get $0 local.get $4 + local.get $0 i32.sub return end @@ -4390,7 +4392,7 @@ local.get $2 i32.const 4 i32.sub - local.tee $2 + local.tee $4 i32.const 1 i32.shl local.get $0 @@ -4407,7 +4409,7 @@ local.tee $3 i32.const 10000 i32.rem_u - local.tee $4 + local.tee $2 i32.const 100 i32.div_u i32.const 2 @@ -4415,7 +4417,7 @@ i32.const 5708 i32.add i64.load32_u - local.get $4 + local.get $2 i32.const 100 i32.rem_u i32.const 2 @@ -4427,7 +4429,7 @@ i64.shl i64.or i64.store - local.get $2 + local.get $4 i32.const 4 i32.sub local.tee $2 @@ -4500,38 +4502,37 @@ return end local.get $0 - local.tee $1 i32.load offset=4 - local.tee $2 + local.tee $1 local.get $0 i32.load offset=12 i32.const 2 i32.shl i32.add - local.set $3 + local.set $2 loop $while-continue|0 + local.get $1 local.get $2 - local.get $3 i32.lt_u if - local.get $2 + local.get $1 i32.load - local.tee $0 + local.tee $3 if - local.get $0 + local.get $3 if - local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $2 + local.get $1 i32.const 4 i32.add - local.set $2 + local.set $1 br $while-continue|0 end end - local.get $1 + local.get $0 i32.load local.tee $0 if @@ -4556,10 +4557,10 @@ local.tee $1 local.tee $0 i32.add - local.set $3 + local.set $2 loop $while-continue|03 local.get $0 - local.get $3 + local.get $2 i32.lt_u if local.get $0 @@ -4570,16 +4571,16 @@ if local.get $0 i32.load - local.tee $2 + local.tee $3 if - local.get $2 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 i32.load offset=4 - local.tee $2 + local.tee $3 if - local.get $2 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -4591,9 +4592,8 @@ end end local.get $1 - local.tee $0 if - local.get $0 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end return @@ -4677,7 +4677,7 @@ if local.get $2 i32.load offset=8 - local.tee $3 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -4686,31 +4686,31 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.load - local.tee $0 + local.tee $4 i32.store block $__inlined_func$~lib/string/String.__eq (result i32) i32.const 1 - local.get $0 local.get $1 + local.get $4 i32.eq br_if $__inlined_func$~lib/string/String.__eq drop i32.const 0 local.get $1 i32.const 0 - local.get $0 + local.get $4 select i32.eqz br_if $__inlined_func$~lib/string/String.__eq drop i32.const 0 - local.get $0 + local.get $4 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -4720,10 +4720,10 @@ i32.ne br_if $__inlined_func$~lib/string/String.__eq drop - local.get $0 + local.get $4 i32.const 0 local.get $1 - local.get $4 + local.get $3 call $~lib/util/string/compareImpl i32.eqz end @@ -4736,7 +4736,7 @@ local.get $2 return end - local.get $3 + local.get $0 i32.const -2 i32.and local.set $2 @@ -4792,18 +4792,18 @@ end i32.const 1088 i32.load - local.tee $7 + local.tee $5 i32.const 2 i32.shl local.tee $0 i32.const 1092 i32.load i32.add - local.tee $8 + local.tee $6 call $~lib/rt/tlsf/__alloc - local.tee $4 + local.tee $2 local.get $0 - local.get $4 + local.get $2 i32.add call $~lib/bindings/wasi_snapshot_preview1/environ_get local.tee $0 @@ -4841,12 +4841,12 @@ local.get $0 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $4 i32.store - local.get $2 + local.get $4 if local.get $0 - local.get $2 + local.get $4 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -4856,12 +4856,12 @@ local.get $0 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $4 i32.store offset=8 - local.get $2 + local.get $4 if local.get $0 - local.get $2 + local.get $4 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -4879,133 +4879,132 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $0 - local.tee $1 i32.store loop $for-loop|0 + local.get $3 local.get $5 - local.get $7 i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $3 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load - local.tee $0 - local.get $0 - local.get $8 + local.tee $1 + local.get $1 + local.get $6 i32.add - local.get $4 + local.get $2 i32.sub call $~lib/string/String.UTF8.decodeUnsafe - local.tee $2 + local.tee $7 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 5168 i32.store offset=8 i32.const 0 - local.set $0 + local.set $1 block $__inlined_func$~lib/string/String#indexOf i32.const 5164 i32.load i32.const 1 i32.shr_u - local.tee $6 + local.tee $4 i32.eqz br_if $__inlined_func$~lib/string/String#indexOf i32.const -1 - local.set $0 - local.get $2 + local.set $1 + local.get $7 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $8 i32.eqz br_if $__inlined_func$~lib/string/String#indexOf i32.const 0 - local.get $3 - local.get $3 + local.get $8 + local.get $8 select - local.set $0 - local.get $3 - local.get $6 + local.set $1 + local.get $8 + local.get $4 i32.sub - local.set $3 + local.set $8 loop $for-loop|00 - local.get $0 - local.get $3 + local.get $1 + local.get $8 i32.le_s if - local.get $2 - local.get $0 + local.get $7 + local.get $1 i32.const 5168 - local.get $6 + local.get $4 call $~lib/util/string/compareImpl i32.eqz br_if $__inlined_func$~lib/string/String#indexOf - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|00 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.xor if - local.get $2 + local.get $7 i32.const 0 - local.get $0 + local.get $1 call $~lib/string/String#substring - local.set $3 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.store offset=8 - local.get $2 - local.get $0 + local.get $7 + local.get $1 i32.const 1 i32.add i32.const 2147483647 call $~lib/string/String#substring - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=12 local.get $1 - local.get $3 + i32.store offset=12 local.get $0 + local.get $4 + local.get $1 call $~lib/map/Map<~lib/string/String,~lib/string/String>#set else global.get $~lib/memory/__stack_pointer i32.const 5200 i32.store offset=12 - local.get $1 - local.get $2 + local.get $0 + local.get $7 i32.const 5200 call $~lib/map/Map<~lib/string/String,~lib/string/String>#set end - local.get $5 + local.get $3 i32.const 1 i32.add - local.set $5 + local.set $3 br $for-loop|0 end end - local.get $4 + local.get $2 call $~lib/rt/tlsf/__free global.get $~lib/memory/__stack_pointer i32.const 16 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 return end i32.const 23808 @@ -5034,13 +5033,13 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i64.const 0 i64.store - local.get $1 + local.get $3 i32.const 0 i32.store offset=8 - local.get $1 + local.get $3 i32.const 1056 i32.store i32.const 1056 @@ -5106,11 +5105,11 @@ i32.const 1088 i32.const 1092 call $~lib/bindings/wasi_snapshot_preview1/args_sizes_get - local.tee $1 + local.tee $3 i32.const 65535 i32.and if - local.get $1 + local.get $3 call $~lib/bindings/wasi_snapshot_preview1/errnoToString i32.const 4224 i32.const 64 @@ -5120,25 +5119,25 @@ end i32.const 1088 i32.load - local.tee $4 + local.tee $3 i32.const 2 i32.shl - local.tee $5 + local.tee $4 i32.const 1092 i32.load i32.add - local.tee $6 + local.tee $5 call $~lib/rt/tlsf/__alloc - local.tee $1 - local.get $1 - local.get $5 + local.tee $6 + local.get $4 + local.get $6 i32.add call $~lib/bindings/wasi_snapshot_preview1/args_get - local.tee $5 + local.tee $4 i32.const 65535 i32.and if - local.get $5 + local.get $4 call $~lib/bindings/wasi_snapshot_preview1/errnoToString i32.const 4224 i32.const 71 @@ -5147,49 +5146,49 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 call $~lib/array/Array<~lib/string/String>#constructor - local.tee $5 + local.tee $4 i32.store loop $for-loop|0 + local.get $1 local.get $3 - local.get $4 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $6 i32.add i32.load local.tee $7 - local.get $6 + local.get $5 local.get $7 i32.add - local.get $1 + local.get $6 i32.sub call $~lib/string/String.UTF8.decodeUnsafe local.tee $7 i32.store offset=4 - local.get $5 - local.get $3 + local.get $4 + local.get $1 local.get $7 call $~lib/array/Array<~lib/string/String>#__set - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 + local.set $1 br $for-loop|0 end end - local.get $1 + local.get $6 call $~lib/rt/tlsf/__free global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $4 global.set $~lib/process/process.argv global.get $~lib/process/process.argv global.set $std-wasi/process/argv @@ -5204,24 +5203,24 @@ i32.store local.get $1 i32.load offset=12 - local.set $3 + local.set $1 loop $for-loop|00 local.get $0 - local.get $3 + local.get $1 i32.lt_s if global.get $~lib/memory/__stack_pointer global.get $std-wasi/process/argv - local.tee $1 + local.tee $3 i32.store offset=4 - local.get $1 + local.get $3 local.get $0 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store - local.get $1 + local.get $3 call $~lib/console/console.log local.get $0 i32.const 1 @@ -5235,15 +5234,15 @@ global.get $~lib/process/process.env global.set $std-wasi/process/env global.get $~lib/memory/__stack_pointer - local.tee $4 - global.get $std-wasi/process/env local.tee $3 + global.get $std-wasi/process/env + local.tee $4 i32.store i32.const 0 local.set $1 i32.const 0 local.set $0 - local.get $4 + local.get $3 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -5252,22 +5251,22 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i64.const 0 i64.store - local.get $3 + local.get $4 i32.load offset=8 local.set $5 - local.get $4 local.get $3 + local.get $4 i32.load offset=16 - local.tee $4 - call $~lib/array/Array<~lib/string/String>#constructor local.tee $3 + call $~lib/array/Array<~lib/string/String>#constructor + local.tee $4 i32.store loop $for-loop|01 local.get $1 - local.get $4 + local.get $3 i32.lt_s if local.get $1 @@ -5286,7 +5285,7 @@ i32.load local.tee $6 i32.store offset=4 - local.get $3 + local.get $4 local.get $0 local.get $6 call $~lib/array/Array<~lib/string/String>#__set @@ -5302,18 +5301,18 @@ br $for-loop|01 end end - local.get $3 + local.get $4 local.get $0 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 + local.get $4 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $4 global.set $std-wasi/process/envKeys global.get $~lib/memory/__stack_pointer i32.const 5232 @@ -5328,29 +5327,29 @@ i32.store local.get $1 i32.load offset=12 - local.set $3 + local.set $1 loop $for-loop|1 local.get $0 - local.get $3 + local.get $1 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 global.get $std-wasi/process/envKeys local.tee $4 i32.store - local.get $1 + local.get $3 local.get $4 local.get $0 call $~lib/array/Array<~lib/string/String>#__get - local.tee $1 + local.tee $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 5280 i32.store offset=4 i32.const 5280 call $~lib/process/writeString - local.get $1 + local.get $3 call $~lib/console/console.log global.get $~lib/memory/__stack_pointer i32.const 5312 @@ -5362,11 +5361,11 @@ local.tee $4 i32.store offset=4 local.get $4 - local.get $1 - local.get $1 + local.get $3 + local.get $3 call $~lib/util/hash/HASH<~lib/string/String> call $~lib/map/Map<~lib/string/String,~lib/string/String>#find - local.tee $1 + local.tee $3 i32.eqz if i32.const 5344 @@ -5377,11 +5376,11 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.load offset=4 - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 call $~lib/console/console.log local.get $0 i32.const 1 @@ -5652,7 +5651,7 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.wrap_i64 - local.tee $3 + local.tee $1 local.tee $0 i32.const 100000 i32.lt_u @@ -5699,7 +5698,7 @@ i32.add end end - local.tee $1 + local.tee $3 i32.const 1 i32.shl i32.const 1 @@ -5707,8 +5706,8 @@ local.tee $0 i32.store local.get $0 - local.get $3 local.get $1 + local.get $3 call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer @@ -5868,18 +5867,18 @@ i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 i32.store - local.get $1 + local.get $3 i32.const 0 i32.store offset=4 - local.get $1 + local.get $3 i32.const 0 i32.store offset=8 - local.get $1 + local.get $3 i32.const 0 i32.store offset=12 local.get $0 @@ -5902,38 +5901,38 @@ select i32.const 2 i32.shl - local.tee $3 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store offset=4 + local.get $1 local.get $2 - local.get $3 call $~lib/memory/memory.fill + local.get $3 local.get $1 - local.get $2 i32.store - local.get $2 + local.get $1 if + local.get $3 local.get $1 - local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $3 local.get $1 - local.get $2 i32.store offset=4 - local.get $1 local.get $3 + local.get $2 i32.store offset=8 - local.get $1 + local.get $3 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $3 ) (func $~lib/string/String.UTF8.decodeUnsafe (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -5991,12 +5990,12 @@ block $while-break|0 local.get $0 i32.load8_u - local.set $3 + local.set $6 local.get $0 i32.const 1 i32.add local.set $0 - local.get $3 + local.get $6 i32.const 128 i32.and if @@ -6008,20 +6007,20 @@ i32.load8_u i32.const 63 i32.and - local.set $5 + local.set $3 local.get $0 i32.const 1 i32.add local.set $0 - local.get $3 + local.get $6 i32.const 224 i32.and i32.const 192 i32.eq if local.get $1 - local.get $5 local.get $3 + local.get $6 i32.const 31 i32.and i32.const 6 @@ -6037,24 +6036,24 @@ i32.load8_u i32.const 63 i32.and - local.set $6 + local.set $5 local.get $0 i32.const 1 i32.add local.set $0 - local.get $3 + local.get $6 i32.const 240 i32.and i32.const 224 i32.eq if + local.get $5 local.get $6 - local.get $3 i32.const 15 i32.and i32.const 12 i32.shl - local.get $5 + local.get $3 i32.const 6 i32.shl i32.or @@ -6069,16 +6068,16 @@ i32.load8_u i32.const 63 i32.and - local.get $3 + local.get $6 i32.const 7 i32.and i32.const 18 i32.shl - local.get $5 + local.get $3 i32.const 12 i32.shl i32.or - local.get $6 + local.get $5 i32.const 6 i32.shl i32.or @@ -6122,11 +6121,11 @@ end end else - local.get $3 + local.get $6 i32.eqz br_if $while-break|0 local.get $1 - local.get $3 + local.get $6 i32.store16 end local.get $1 @@ -6277,51 +6276,51 @@ i32.const 0 i32.gt_s select - local.tee $3 + local.tee $1 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $1 + local.tee $3 local.get $1 local.get $3 - i32.gt_s + i32.lt_s select - local.tee $3 + local.tee $4 local.get $2 i32.const 0 local.get $2 i32.const 0 i32.gt_s select - local.tee $2 - local.get $1 + local.tee $1 + local.get $3 local.get $1 - local.get $2 - i32.gt_s + local.get $3 + i32.lt_s select local.tee $2 local.get $2 - local.get $3 + local.get $4 i32.gt_s select i32.const 1 i32.shl - local.set $4 - local.get $3 + local.set $1 + local.get $4 local.get $2 local.get $2 - local.get $3 + local.get $4 i32.lt_s select i32.const 1 i32.shl - local.tee $3 - local.get $4 - i32.sub local.tee $2 + local.get $1 + i32.sub + local.tee $4 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -6332,12 +6331,12 @@ return end i32.const 0 - local.get $1 + local.get $3 i32.const 1 i32.shl - local.get $3 + local.get $2 i32.eq - local.get $4 + local.get $1 select if global.get $~lib/memory/__stack_pointer @@ -6348,22 +6347,22 @@ return end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 local.get $0 - local.get $4 + local.get $1 i32.add - local.get $2 + local.get $4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 ) (func $~lib/map/Map<~lib/string/String,~lib/string/String>#set (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -6391,11 +6390,11 @@ local.get $1 local.get $1 call $~lib/util/hash/HASH<~lib/string/String> - local.tee $7 + local.tee $8 call $~lib/map/Map<~lib/string/String,~lib/string/String>#find - local.tee $3 + local.tee $4 if - local.get $3 + local.get $4 local.get $2 i32.store offset=4 local.get $2 @@ -6432,7 +6431,7 @@ i32.const 1 i32.or end - local.set $8 + local.set $9 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -6442,29 +6441,29 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $4 i64.const 0 i64.store - local.get $3 + local.get $4 i32.const 0 i32.store offset=8 - local.get $3 - local.get $8 + local.get $4 + local.get $9 i32.const 1 i32.add - local.tee $3 + local.tee $4 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $10 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $7 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -6478,11 +6477,11 @@ i32.const 12 i32.mul i32.add - local.set $5 + local.set $6 local.get $4 local.set $3 loop $while-continue|0 - local.get $5 + local.get $6 local.get $11 i32.ne if @@ -6495,28 +6494,28 @@ global.get $~lib/memory/__stack_pointer local.get $11 i32.load - local.tee $9 + local.tee $5 i32.store offset=8 local.get $3 - local.get $9 + local.get $5 i32.store local.get $3 local.get $11 i32.load offset=4 i32.store offset=4 local.get $3 - local.get $9 + local.get $5 call $~lib/util/hash/HASH<~lib/string/String> - local.get $8 + local.get $9 i32.and i32.const 2 i32.shl local.get $10 i32.add - local.tee $9 + local.tee $5 i32.load i32.store offset=8 - local.get $9 + local.get $5 local.get $3 i32.store local.get $3 @@ -6542,7 +6541,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $8 + local.get $9 i32.store offset=4 local.get $0 local.get $4 @@ -6555,7 +6554,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -6583,7 +6582,7 @@ i32.mul local.get $3 i32.add - local.tee $3 + local.tee $4 local.get $1 i32.store local.get $1 @@ -6593,7 +6592,7 @@ i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 + local.get $4 local.get $2 i32.store offset=4 local.get $2 @@ -6609,12 +6608,12 @@ i32.const 1 i32.add i32.store offset=20 - local.get $3 + local.get $4 local.get $0 i32.load local.get $0 i32.load offset=4 - local.get $7 + local.get $8 i32.and i32.const 2 i32.shl @@ -6623,7 +6622,7 @@ i32.load i32.store offset=8 local.get $0 - local.get $3 + local.get $4 i32.store end global.get $~lib/memory/__stack_pointer @@ -6683,16 +6682,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $3 i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $3 local.get $1 local.get $2 select @@ -6701,7 +6700,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $0 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/array-access.optimized.wat b/tests/compiler/std/array-access.optimized.wat index cb72604bf0..fa0060083b 100644 --- a/tests/compiler/std/array-access.optimized.wat +++ b/tests/compiler/std/array-access.optimized.wat @@ -31,17 +31,17 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 select - local.set $3 + local.set $2 + local.get $1 local.get $2 - local.get $3 i32.const 1292 i32.load i32.const 1 i32.shr_u - local.tee $2 + local.tee $1 i32.add i32.lt_s if @@ -50,38 +50,37 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) i32.const 1296 - local.set $4 - local.get $3 + local.set $3 + local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.tee $3 + local.tee $2 i32.const 7 i32.and i32.const 1 - local.get $2 - local.tee $1 + local.get $1 i32.const 4 i32.ge_u select i32.eqz if loop $do-loop|0 - local.get $3 + local.get $2 i64.load - local.get $4 + local.get $3 i64.load i64.eq if - local.get $3 + local.get $2 i32.const 8 i32.add - local.set $3 - local.get $4 + local.set $2 + local.get $3 i32.const 8 i32.add - local.set $4 + local.set $3 local.get $1 i32.const 4 i32.sub @@ -100,27 +99,27 @@ local.set $1 local.get $0 if - local.get $4 + local.get $3 i32.load16_u local.tee $0 - local.get $3 + local.get $2 i32.load16_u - local.tee $2 + local.tee $4 i32.ne if - local.get $2 + local.get $4 local.get $0 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 - local.get $4 + local.set $2 + local.get $3 i32.const 2 i32.add - local.set $4 + local.set $3 br $while-continue|1 end end diff --git a/tests/compiler/std/array-literal.optimized.wat b/tests/compiler/std/array-literal.optimized.wat index 43095ce823..2d25087aa6 100644 --- a/tests/compiler/std/array-literal.optimized.wat +++ b/tests/compiler/std/array-literal.optimized.wat @@ -106,9 +106,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -116,9 +115,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -126,9 +124,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -136,9 +133,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -146,9 +142,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -222,7 +217,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -245,7 +240,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -255,15 +250,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -304,20 +299,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -412,19 +407,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -449,9 +444,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -459,17 +454,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -757,10 +752,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -772,15 +767,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -810,7 +805,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1123,7 +1118,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 18252 i32.ge_u if @@ -1133,20 +1128,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1159,8 +1154,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1340,12 +1334,12 @@ if block $__inlined_func$~lib/rt/itcms/interrupt i32.const 2048 - local.set $3 + local.set $2 loop $do-loop|0 - local.get $3 + local.get $2 call $~lib/rt/itcms/step i32.sub - local.set $3 + local.set $2 global.get $~lib/rt/itcms/state i32.eqz if @@ -1361,14 +1355,14 @@ global.set $~lib/rt/itcms/threshold br $__inlined_func$~lib/rt/itcms/interrupt end - local.get $3 + local.get $2 i32.const 0 i32.gt_s br_if $do-loop|0 end global.get $~lib/rt/itcms/total - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 @@ -1382,15 +1376,15 @@ local.get $0 i32.const 16 i32.add - local.set $3 + local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $6 - local.get $3 + local.tee $3 + local.get $2 i32.const 1073741820 i32.gt_u if @@ -1401,13 +1395,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $3 + local.get $2 i32.const 19 i32.add i32.const -16 @@ -1415,34 +1409,34 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size - local.tee $5 - local.get $3 + local.tee $2 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $6 + local.get $3 i32.load offset=1568 - local.get $5 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1456,16 +1450,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $5 local.get $2 local.get $5 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1473,16 +1467,16 @@ unreachable end end - local.get $6 - local.get $5 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1499,7 +1493,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1509,13 +1503,13 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1531,9 +1525,9 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if @@ -1541,23 +1535,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1621,19 +1615,19 @@ local.get $2 i32.const 20 i32.add - local.tee $3 - local.set $2 + local.tee $2 + local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 i32.eqz br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 local.get $0 - local.get $2 + local.get $1 i32.add - local.tee $1 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1642,18 +1636,18 @@ i32.const 2 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=1 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=2 - local.get $1 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1662,10 +1656,10 @@ i32.const 6 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=3 - local.get $1 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1674,97 +1668,97 @@ i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 - local.get $2 + local.get $1 i32.sub i32.const 3 i32.and - local.tee $1 + local.tee $3 i32.add - local.tee $4 + local.tee $1 i32.const 0 i32.store - local.get $4 - local.get $0 local.get $1 + local.get $0 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=4 - local.get $4 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=12 - local.get $4 + local.get $1 i32.const 0 i32.store offset=16 - local.get $4 + local.get $1 i32.const 0 i32.store offset=20 - local.get $4 + local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 i32.store - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.const 4 i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1796,7 +1790,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/array/Array#__uset (param $0 i32) (param $1 i32) (param $2 i32) local.get $0 @@ -2483,29 +2477,29 @@ local.get $0 local.get $1 i32.shl - local.tee $3 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.store i32.const 16 local.get $2 call $~lib/rt/itcms/__new local.tee $2 - local.get $1 + local.get $3 i32.store - local.get $1 + local.get $3 if local.get $2 - local.get $1 + local.get $3 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $2 - local.get $1 + local.get $3 i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 local.get $2 local.get $0 @@ -2626,16 +2620,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $3 i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $3 local.get $1 local.get $2 select @@ -2644,7 +2638,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $0 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index c806198320..517f1cf6bd 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -718,9 +718,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -730,9 +729,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -740,9 +738,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -828,7 +825,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -851,7 +848,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -861,15 +858,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -910,20 +907,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -1018,19 +1015,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -1055,9 +1052,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -1065,17 +1062,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -1363,10 +1360,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -1378,15 +1375,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -1416,7 +1413,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1569,13 +1566,12 @@ unreachable end local.get $1 - local.tee $0 - local.get $0 + local.get $1 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $1 call $~lib/rt/tlsf/insertBlock ) (func $~lib/rt/itcms/step (result i32) @@ -1601,7 +1597,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $1 + local.set $2 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -1618,11 +1614,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -1664,9 +1660,9 @@ if local.get $0 i32.load - local.tee $2 + local.tee $1 if - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -1690,11 +1686,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -1720,7 +1716,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $1 + local.get $2 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -1940,7 +1936,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $1 local.get $0 i32.const 1073741820 i32.gt_u @@ -1966,34 +1962,34 @@ i32.const 4 i32.sub end - local.tee $0 + local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if memory.size - local.tee $2 - local.get $0 + local.tee $0 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $0 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $0 + local.get $3 i32.add else - local.get $0 + local.get $3 end i32.const 4 - local.get $3 + local.get $1 i32.load offset=1568 - local.get $2 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -2007,16 +2003,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 - local.get $1 + local.tee $2 + local.get $0 local.get $2 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $1 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -2024,18 +2020,18 @@ unreachable end end - local.get $3 - local.get $2 + local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $1 local.get $3 - local.get $0 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -2046,11 +2042,11 @@ unreachable end end - local.get $1 + local.get $0 i32.load i32.const -4 i32.and - local.get $0 + local.get $3 i32.lt_u if i32.const 0 @@ -2060,13 +2056,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 local.get $1 + local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $1 - i32.load - local.set $2 local.get $0 + i32.load + local.set $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -2079,65 +2075,65 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 i32.const -4 i32.and - local.get $0 + local.get $3 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if - local.get $1 - local.get $2 + local.get $0 + local.get $4 i32.const 2 i32.and - local.get $0 + local.get $3 i32.or i32.store + local.get $3 local.get $0 - local.get $1 i32.const 4 i32.add i32.add - local.tee $0 - local.get $4 + local.tee $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $1 local.get $3 - local.get $0 call $~lib/rt/tlsf/insertBlock else - local.get $1 - local.get $2 + local.get $0 + local.get $4 i32.const -2 i32.and i32.store - local.get $1 + local.get $0 i32.const 4 i32.add - local.get $1 + local.get $0 i32.load i32.const -4 i32.and i32.add - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.load i32.const -3 i32.and i32.store end - local.get $1 + local.get $0 i32.const 4 i32.add ) (func $~lib/memory/memory.fill (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i64) + (local $3 i64) + (local $4 i32) (local $5 i32) block $~lib/util/memory/memset|inlined.0 local.get $2 @@ -2149,7 +2145,7 @@ local.get $0 local.get $2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.sub local.get $1 @@ -2164,12 +2160,12 @@ local.get $0 local.get $1 i32.store8 offset=2 - local.get $3 + local.get $4 i32.const 2 i32.sub local.get $1 i32.store8 - local.get $3 + local.get $4 i32.const 3 i32.sub local.get $1 @@ -2181,7 +2177,7 @@ local.get $0 local.get $1 i32.store8 offset=3 - local.get $3 + local.get $4 i32.const 4 i32.sub local.get $1 @@ -2196,19 +2192,19 @@ i32.sub i32.const 3 i32.and - local.tee $5 + local.tee $4 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 255 i32.and i32.const 16843009 i32.mul - local.tee $0 + local.tee $5 i32.store - local.get $3 + local.get $0 local.get $2 - local.get $5 + local.get $4 i32.sub i32.const -4 i32.and @@ -2217,101 +2213,101 @@ local.tee $1 i32.const 4 i32.sub - local.get $0 + local.get $5 i32.store local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $3 local.get $0 + local.get $5 i32.store offset=4 - local.get $3 local.get $0 + local.get $5 i32.store offset=8 local.get $1 i32.const 12 i32.sub - local.get $0 + local.get $5 i32.store local.get $1 i32.const 8 i32.sub - local.get $0 + local.get $5 i32.store local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $3 local.get $0 + local.get $5 i32.store offset=12 - local.get $3 local.get $0 + local.get $5 i32.store offset=16 - local.get $3 local.get $0 + local.get $5 i32.store offset=20 - local.get $3 local.get $0 + local.get $5 i32.store offset=24 local.get $1 i32.const 28 i32.sub - local.get $0 + local.get $5 i32.store local.get $1 i32.const 24 i32.sub - local.get $0 + local.get $5 i32.store local.get $1 i32.const 20 i32.sub - local.get $0 + local.get $5 i32.store local.get $1 i32.const 16 i32.sub - local.get $0 + local.get $5 i32.store - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.const 4 i32.and i32.const 24 i32.add - local.tee $5 + local.tee $4 i32.add local.set $1 local.get $2 - local.get $5 + local.get $4 i32.sub local.set $2 - local.get $0 + local.get $5 i64.extend_i32_u - local.tee $4 + local.tee $3 i64.const 32 i64.shl - local.get $4 + local.get $3 i64.or - local.set $4 + local.set $3 loop $while-continue|0 local.get $2 i32.const 32 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i64.store local.get $1 - local.get $4 + local.get $3 i64.store offset=8 local.get $1 - local.get $4 + local.get $3 i64.store offset=16 local.get $1 - local.get $4 + local.get $3 i64.store offset=24 local.get $2 i32.const 32 @@ -2398,26 +2394,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2451,17 +2447,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2607,19 +2603,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2634,7 +2630,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -2645,10 +2641,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2656,10 +2652,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -2670,7 +2666,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2725,7 +2721,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -2736,10 +2732,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2747,10 +2743,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -2761,7 +2757,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2787,17 +2783,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2812,7 +2808,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -2823,10 +2819,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2834,10 +2830,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -2848,7 +2844,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2885,131 +2881,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -3026,59 +3026,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -3727,13 +3731,13 @@ local.get $1 i32.const 1 i32.sub - local.tee $1 + local.tee $2 i32.const 2 i32.shl i32.add i32.load local.get $0 - local.get $1 + local.get $2 i32.store offset=12 ) (func $~lib/array/Array#__uset (param $0 i32) (param $1 i32) (param $2 i32) @@ -3795,10 +3799,10 @@ local.get $4 i32.lt_s select - local.set $5 + local.set $3 local.get $0 i32.load offset=4 - local.tee $3 + local.tee $5 local.get $1 i32.const 0 i32.lt_s @@ -3848,14 +3852,14 @@ local.tee $2 i32.const 2 i32.shl - local.get $3 - i32.add local.get $5 + i32.add + local.get $3 i32.const 0 i32.lt_s if (result i32) + local.get $3 local.get $4 - local.get $5 i32.add local.tee $3 i32.const 0 @@ -3864,11 +3868,11 @@ i32.gt_s select else - local.get $5 + local.get $3 local.get $4 + local.get $3 local.get $4 - local.get $5 - i32.gt_s + i32.lt_s select end local.get $2 @@ -3970,78 +3974,78 @@ (func $~lib/array/Array#reverse (param $0 i32) (result i32) (local $1 i32) (local $2 i32) - (local $3 i32) + (local $3 i64) (local $4 i32) (local $5 i32) - (local $6 i64) - (local $7 i64) - (local $8 i32) + (local $6 i32) + (local $7 i32) + (local $8 i64) local.get $0 i32.load offset=4 - local.set $5 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $5 i32.const 1 i32.gt_u if - local.get $2 + local.get $5 i32.const 1 i32.shr_u - local.set $8 - local.get $2 + local.set $4 + local.get $5 i32.const 8 i32.sub - local.set $3 + local.set $6 loop $while-continue|0 - local.get $8 + local.get $4 local.get $1 i32.const 7 i32.add i32.gt_u if local.get $1 - local.get $5 + local.get $2 i32.add - local.tee $4 + local.tee $7 i64.load - local.tee $6 + local.tee $3 i64.const 8 i64.shr_u i64.const 71777214294589695 i64.and - local.get $6 + local.get $3 i64.const 71777214294589695 i64.and i64.const 8 i64.shl i64.or - local.set $6 - local.get $4 - local.get $3 - local.get $5 + local.set $3 + local.get $7 + local.get $2 + local.get $6 i32.add local.get $1 i32.sub - local.tee $4 - i64.load local.tee $7 + i64.load + local.tee $8 i64.const 8 i64.shr_u i64.const 71777214294589695 i64.and - local.get $7 + local.get $8 i64.const 71777214294589695 i64.and i64.const 8 i64.shl i64.or - local.tee $7 + local.tee $8 i64.const 16 i64.shr_u i64.const 281470681808895 i64.and - local.get $7 + local.get $8 i64.const 281470681808895 i64.and i64.const 16 @@ -4050,13 +4054,13 @@ i64.const 32 i64.rotr i64.store - local.get $4 - local.get $6 + local.get $7 + local.get $3 i64.const 16 i64.shr_u i64.const 281470681808895 i64.and - local.get $6 + local.get $3 i64.const 281470681808895 i64.and i64.const 16 @@ -4072,32 +4076,32 @@ br $while-continue|0 end end - local.get $2 + local.get $5 i32.const 1 i32.sub - local.set $2 + local.set $5 loop $while-continue|1 local.get $1 - local.get $8 + local.get $4 i32.lt_u if local.get $1 - local.get $5 + local.get $2 i32.add - local.tee $3 + local.tee $6 i32.load8_u - local.set $4 - local.get $3 - local.get $2 + local.set $7 + local.get $6 + local.get $5 local.get $1 i32.sub - local.get $5 + local.get $2 i32.add - local.tee $3 + local.tee $6 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $6 + local.get $7 i32.store8 local.get $1 i32.const 1 @@ -4117,56 +4121,55 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) local.get $0 i32.load offset=4 - local.set $3 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $5 i32.const 1 i32.gt_u if - local.get $2 + local.get $5 i32.const 1 i32.shr_u - local.set $7 - local.get $2 + local.set $3 + local.get $5 i32.const 2 i32.sub - local.set $4 + local.set $6 loop $while-continue|0 - local.get $7 + local.get $3 local.get $1 i32.const 1 i32.add i32.gt_u if - local.get $4 + local.get $6 local.get $1 i32.sub i32.const 1 i32.shl - local.get $3 + local.get $2 i32.add - local.tee $5 + local.tee $7 i32.load i32.const 16 i32.rotr - local.set $8 - local.get $5 + local.set $4 + local.get $7 local.get $1 i32.const 1 i32.shl - local.get $3 + local.get $2 i32.add - local.tee $6 + local.tee $7 i32.load i32.const 16 i32.rotr i32.store - local.get $6 - local.get $8 + local.get $7 + local.get $4 i32.store local.get $1 i32.const 2 @@ -4175,36 +4178,36 @@ br $while-continue|0 end end - local.get $2 + local.get $5 i32.const 1 i32.sub - local.set $6 + local.set $4 loop $while-continue|1 local.get $1 - local.get $7 + local.get $3 i32.lt_u if local.get $1 i32.const 1 i32.shl - local.get $3 + local.get $2 i32.add - local.tee $2 + local.tee $5 i32.load16_u - local.set $4 - local.get $2 - local.get $6 + local.set $6 + local.get $5 + local.get $4 local.get $1 i32.sub i32.const 1 i32.shl - local.get $3 + local.get $2 i32.add local.tee $5 i32.load16_u i32.store16 local.get $5 - local.get $4 + local.get $6 i32.store16 local.get $1 i32.const 1 @@ -4927,14 +4930,14 @@ i32.shl local.get $0 i32.add - local.tee $7 + local.tee $3 f32.load f32.store local.get $1 i32.const 1 i32.add local.set $1 - local.get $7 + local.get $3 local.get $5 f32.store local.get $2 @@ -5113,13 +5116,13 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i64) - (local $10 i32) - (local $11 i32) + (local $9 f32) + (local $10 f32) + (local $11 i64) (local $12 i32) (local $13 i32) - (local $14 f32) - (local $15 f32) + (local $14 i32) + (local $15 i32) local.get $1 i32.const 48 i32.le_s @@ -5133,11 +5136,10 @@ block $break|0 block $case1|0 local.get $1 - local.tee $4 i32.const 3 i32.ne if - local.get $4 + local.get $1 i32.const 2 i32.eq br_if $case1|0 @@ -5145,17 +5147,17 @@ end local.get $0 f32.load - local.set $15 + local.set $10 local.get $0 f32.load offset=4 - local.set $14 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $14 - local.get $15 - local.get $15 - local.get $14 + local.get $9 + local.get $10 + local.get $10 + local.get $9 local.get $2 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -5164,21 +5166,21 @@ local.tee $1 select f32.store - local.get $15 - local.get $14 + local.get $10 + local.get $9 local.get $1 select - local.set $15 + local.set $10 local.get $0 f32.load offset=8 - local.set $14 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $14 - local.get $15 - local.get $15 - local.get $14 + local.get $9 + local.get $10 + local.get $10 + local.get $9 local.get $2 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -5188,25 +5190,25 @@ select f32.store offset=4 local.get $0 - local.get $15 - local.get $14 + local.get $10 + local.get $9 local.get $1 select f32.store offset=8 end local.get $0 f32.load - local.set $15 + local.set $10 local.get $0 f32.load offset=4 - local.set $14 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $14 - local.get $15 - local.get $15 - local.get $14 + local.get $9 + local.get $10 + local.get $10 + local.get $9 local.get $2 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -5216,8 +5218,8 @@ select f32.store local.get $0 - local.get $15 - local.get $14 + local.get $10 + local.get $9 local.get $1 select f32.store offset=4 @@ -5225,7 +5227,7 @@ end local.get $0 i32.const 0 - local.get $4 + local.get $1 i32.const 1 i32.sub i32.const 0 @@ -5240,14 +5242,14 @@ local.tee $6 i32.const 2 i32.shl - local.tee $7 + local.tee $5 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $12 - local.get $7 + local.tee $14 + local.get $5 i32.add - local.set $11 + local.set $13 i32.const 0 local.set $7 loop $for-loop|1 @@ -5258,7 +5260,7 @@ local.get $7 i32.const 2 i32.shl - local.get $12 + local.get $14 i32.add i32.const -1 i32.store @@ -5273,16 +5275,16 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $10 + local.set $12 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $13 + local.tee $15 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $5 + local.tee $6 i32.const 1 i32.add local.tee $1 @@ -5291,32 +5293,32 @@ if local.get $0 i32.const 0 - local.get $13 + local.get $15 i32.const 31 - local.get $13 + local.get $15 i32.const 31 i32.lt_s select - local.tee $5 + local.tee $6 local.get $1 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $5 - local.get $13 + local.get $6 + local.get $15 i32.lt_s if local.get $0 - local.get $5 + local.get $6 i32.const 1 i32.add - local.tee $6 - local.get $13 + local.tee $5 + local.get $15 local.get $2 call $~lib/util/sort/extendRunRight local.tee $7 - local.get $6 + local.get $5 i32.sub i32.const 1 i32.add @@ -5325,14 +5327,14 @@ i32.lt_s if local.get $0 - local.get $6 - local.get $13 - local.get $6 + local.get $5 + local.get $15 + local.get $5 i32.const 31 i32.add local.tee $1 local.get $1 - local.get $13 + local.get $15 i32.gt_s select local.tee $7 @@ -5341,18 +5343,18 @@ call $~lib/util/sort/insertionSort end local.get $3 - local.get $6 + local.get $5 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $15 i32.const 1 i32.add i64.extend_i32_u - local.tee $9 + local.tee $11 i64.div_u - local.get $6 + local.get $5 local.get $7 i32.add i32.const 1 @@ -5360,7 +5362,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $9 + local.get $11 i64.div_u i64.xor i32.wrap_i64 @@ -5376,7 +5378,7 @@ local.get $8 i32.const 2 i32.shl - local.get $12 + local.get $14 i32.add i32.load local.tee $4 @@ -5385,7 +5387,7 @@ if local.get $0 local.get $4 - local.get $11 + local.get $13 local.get $8 i32.const 2 i32.shl @@ -5394,12 +5396,12 @@ i32.load i32.const 1 i32.add - local.get $5 - local.get $10 + local.get $6 + local.get $12 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $12 + local.get $14 i32.add i32.const -1 i32.store @@ -5413,7 +5415,7 @@ br $for-loop|3 end end - local.get $12 + local.get $14 local.get $1 i32.const 2 i32.shl @@ -5422,14 +5424,14 @@ local.get $3 i32.store local.get $4 - local.get $11 + local.get $13 i32.add - local.get $5 - i32.store local.get $6 + i32.store + local.get $5 local.set $3 local.get $7 - local.set $5 + local.set $6 local.get $1 local.set $4 br $while-continue|2 @@ -5441,7 +5443,7 @@ local.get $4 i32.const 2 i32.shl - local.get $12 + local.get $14 i32.add i32.load local.tee $1 @@ -5453,13 +5455,13 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $13 i32.add i32.load i32.const 1 i32.add - local.get $13 - local.get $10 + local.get $15 + local.get $12 local.get $2 call $~lib/util/sort/mergeRuns end @@ -5470,10 +5472,10 @@ br $for-loop|4 end end - local.get $10 - call $~lib/rt/tlsf/__free local.get $12 call $~lib/rt/tlsf/__free + local.get $14 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 f32) (param $1 f32) (result i32) (local $2 i32) @@ -5816,14 +5818,14 @@ i32.shl local.get $0 i32.add - local.tee $7 + local.tee $3 f64.load f64.store local.get $1 i32.const 1 i32.add local.set $1 - local.get $7 + local.get $3 local.get $5 f64.store local.get $2 @@ -6002,13 +6004,13 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i64) - (local $10 i32) - (local $11 i32) + (local $9 f64) + (local $10 f64) + (local $11 i64) (local $12 i32) (local $13 i32) - (local $14 f64) - (local $15 f64) + (local $14 i32) + (local $15 i32) local.get $1 i32.const 48 i32.le_s @@ -6022,11 +6024,10 @@ block $break|0 block $case1|0 local.get $1 - local.tee $4 i32.const 3 i32.ne if - local.get $4 + local.get $1 i32.const 2 i32.eq br_if $case1|0 @@ -6034,17 +6035,17 @@ end local.get $0 f64.load - local.set $15 + local.set $10 local.get $0 f64.load offset=8 - local.set $14 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $14 - local.get $15 - local.get $15 - local.get $14 + local.get $9 + local.get $10 + local.get $10 + local.get $9 local.get $2 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -6053,21 +6054,21 @@ local.tee $1 select f64.store - local.get $15 - local.get $14 + local.get $10 + local.get $9 local.get $1 select - local.set $15 + local.set $10 local.get $0 f64.load offset=16 - local.set $14 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $14 - local.get $15 - local.get $15 - local.get $14 + local.get $9 + local.get $10 + local.get $10 + local.get $9 local.get $2 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -6077,25 +6078,25 @@ select f64.store offset=8 local.get $0 - local.get $15 - local.get $14 + local.get $10 + local.get $9 local.get $1 select f64.store offset=16 end local.get $0 f64.load - local.set $15 + local.set $10 local.get $0 f64.load offset=8 - local.set $14 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $14 - local.get $15 - local.get $15 - local.get $14 + local.get $9 + local.get $10 + local.get $10 + local.get $9 local.get $2 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -6105,8 +6106,8 @@ select f64.store local.get $0 - local.get $15 - local.get $14 + local.get $10 + local.get $9 local.get $1 select f64.store offset=8 @@ -6114,7 +6115,7 @@ end local.get $0 i32.const 0 - local.get $4 + local.get $1 i32.const 1 i32.sub i32.const 0 @@ -6129,14 +6130,14 @@ local.tee $6 i32.const 2 i32.shl - local.tee $7 + local.tee $5 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $12 - local.get $7 + local.tee $14 + local.get $5 i32.add - local.set $11 + local.set $13 i32.const 0 local.set $7 loop $for-loop|1 @@ -6147,7 +6148,7 @@ local.get $7 i32.const 2 i32.shl - local.get $12 + local.get $14 i32.add i32.const -1 i32.store @@ -6162,16 +6163,16 @@ i32.const 3 i32.shl call $~lib/rt/tlsf/__alloc - local.set $10 + local.set $12 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $13 + local.tee $15 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $5 + local.tee $6 i32.const 1 i32.add local.tee $1 @@ -6180,32 +6181,32 @@ if local.get $0 i32.const 0 - local.get $13 + local.get $15 i32.const 31 - local.get $13 + local.get $15 i32.const 31 i32.lt_s select - local.tee $5 + local.tee $6 local.get $1 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $5 - local.get $13 + local.get $6 + local.get $15 i32.lt_s if local.get $0 - local.get $5 + local.get $6 i32.const 1 i32.add - local.tee $6 - local.get $13 + local.tee $5 + local.get $15 local.get $2 call $~lib/util/sort/extendRunRight local.tee $7 - local.get $6 + local.get $5 i32.sub i32.const 1 i32.add @@ -6214,14 +6215,14 @@ i32.lt_s if local.get $0 - local.get $6 - local.get $13 - local.get $6 + local.get $5 + local.get $15 + local.get $5 i32.const 31 i32.add local.tee $1 local.get $1 - local.get $13 + local.get $15 i32.gt_s select local.tee $7 @@ -6230,18 +6231,18 @@ call $~lib/util/sort/insertionSort end local.get $3 - local.get $6 + local.get $5 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $15 i32.const 1 i32.add i64.extend_i32_u - local.tee $9 + local.tee $11 i64.div_u - local.get $6 + local.get $5 local.get $7 i32.add i32.const 1 @@ -6249,7 +6250,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $9 + local.get $11 i64.div_u i64.xor i32.wrap_i64 @@ -6265,7 +6266,7 @@ local.get $8 i32.const 2 i32.shl - local.get $12 + local.get $14 i32.add i32.load local.tee $4 @@ -6274,7 +6275,7 @@ if local.get $0 local.get $4 - local.get $11 + local.get $13 local.get $8 i32.const 2 i32.shl @@ -6283,12 +6284,12 @@ i32.load i32.const 1 i32.add - local.get $5 - local.get $10 + local.get $6 + local.get $12 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $12 + local.get $14 i32.add i32.const -1 i32.store @@ -6302,7 +6303,7 @@ br $for-loop|3 end end - local.get $12 + local.get $14 local.get $1 i32.const 2 i32.shl @@ -6311,14 +6312,14 @@ local.get $3 i32.store local.get $4 - local.get $11 + local.get $13 i32.add - local.get $5 - i32.store local.get $6 + i32.store + local.get $5 local.set $3 local.get $7 - local.set $5 + local.set $6 local.get $1 local.set $4 br $while-continue|2 @@ -6330,7 +6331,7 @@ local.get $4 i32.const 2 i32.shl - local.get $12 + local.get $14 i32.add i32.load local.tee $1 @@ -6342,13 +6343,13 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $13 i32.add i32.load i32.const 1 i32.add - local.get $13 - local.get $10 + local.get $15 + local.get $12 local.get $2 call $~lib/util/sort/mergeRuns end @@ -6359,10 +6360,10 @@ br $for-loop|4 end end - local.get $10 - call $~lib/rt/tlsf/__free local.get $12 call $~lib/rt/tlsf/__free + local.get $14 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 f64) (param $1 f64) (result i32) (local $2 i64) @@ -6425,13 +6426,13 @@ i32.sub i32.const 1 i32.add - local.tee $6 + local.tee $5 local.get $3 i32.sub i32.const 1 i32.and i32.sub - local.get $6 + local.get $5 i32.const 1 i32.and local.get $3 @@ -6653,22 +6654,22 @@ i32.add local.tee $3 i32.load - local.set $6 + local.set $5 local.get $3 local.get $2 i32.const 2 i32.shl local.get $0 i32.add - local.tee $5 + local.tee $3 i32.load i32.store local.get $1 i32.const 1 i32.add local.set $1 + local.get $3 local.get $5 - local.get $6 i32.store local.get $2 i32.const 1 @@ -6787,18 +6788,18 @@ local.get $4 i32.add i32.load - local.set $8 + local.set $7 local.get $2 i32.const 2 i32.shl local.get $4 i32.add i32.load - local.set $7 + local.set $8 i32.const 2 global.set $~argumentsLength - local.get $8 local.get $7 + local.get $8 local.get $5 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -6810,7 +6811,7 @@ i32.shl local.get $0 i32.add - local.get $8 + local.get $7 i32.store local.get $6 i32.const 1 @@ -6822,7 +6823,7 @@ i32.shl local.get $0 i32.add - local.get $7 + local.get $8 i32.store local.get $2 i32.const 1 @@ -6843,12 +6844,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) local.get $1 i32.const 48 i32.le_s @@ -6862,11 +6863,10 @@ block $break|0 block $case1|0 local.get $1 - local.tee $4 i32.const 3 i32.ne if - local.get $4 + local.get $1 i32.const 2 i32.eq br_if $case1|0 @@ -6874,87 +6874,87 @@ end local.get $0 i32.load - local.set $3 + local.set $1 local.get $0 i32.load offset=4 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $3 select i32.store - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $3 select - local.set $3 + local.set $1 local.get $0 i32.load offset=8 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $3 select i32.store offset=4 local.get $0 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $3 select i32.store offset=8 end local.get $0 i32.load - local.set $3 + local.set $1 local.get $0 i32.load offset=4 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $2 select i32.store local.get $0 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $2 select i32.store offset=4 return end local.get $0 i32.const 0 - local.get $4 + local.get $1 i32.const 1 i32.sub i32.const 0 @@ -6966,35 +6966,35 @@ local.get $1 i32.clz i32.sub - local.tee $6 + local.tee $5 i32.const 2 i32.shl - local.tee $5 + local.tee $6 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $10 - local.get $5 + local.tee $11 + local.get $6 i32.add - local.set $11 + local.set $10 i32.const 0 - local.set $5 + local.set $6 loop $for-loop|1 local.get $5 local.get $6 - i32.lt_u + i32.gt_u if - local.get $5 + local.get $6 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.const -1 i32.store - local.get $5 + local.get $6 i32.const 1 i32.add - local.set $5 + local.set $6 br $for-loop|1 end end @@ -7002,84 +7002,84 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $12 + local.set $9 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $9 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $7 + local.tee $1 i32.const 1 i32.add - local.tee $1 + local.tee $6 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $9 + local.get $12 i32.const 31 - local.get $9 + local.get $12 i32.const 31 i32.lt_s select - local.tee $7 - local.get $1 + local.tee $1 + local.get $6 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $7 - local.get $9 + local.get $1 + local.get $12 i32.lt_s if local.get $0 - local.get $7 + local.get $1 i32.const 1 i32.add - local.tee $6 - local.get $9 + local.tee $5 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $5 - local.get $6 + local.tee $6 + local.get $5 i32.sub i32.const 1 i32.add - local.tee $8 + local.tee $4 i32.const 32 i32.lt_s if local.get $0 - local.get $6 - local.get $9 - local.get $6 + local.get $5 + local.get $12 + local.get $5 i32.const 31 i32.add - local.tee $1 - local.get $1 - local.get $9 + local.tee $6 + local.get $6 + local.get $12 i32.gt_s select - local.tee $5 - local.get $8 + local.tee $6 + local.get $4 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $6 + local.get $5 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $9 + local.get $12 i32.const 1 i32.add i64.extend_i32_u - local.tee $13 + local.tee $8 i64.div_u local.get $5 local.get $6 @@ -7089,33 +7089,31 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $8 i64.div_u i64.xor i32.wrap_i64 i32.clz - local.set $1 - local.get $4 - local.set $8 + local.set $4 loop $for-loop|3 - local.get $1 - local.get $8 + local.get $4 + local.get $7 i32.lt_u if - local.get $8 + local.get $7 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.load - local.tee $4 + local.tee $13 i32.const -1 i32.ne if local.get $0 - local.get $4 - local.get $11 - local.get $8 + local.get $13 + local.get $10 + local.get $7 i32.const 2 i32.shl local.tee $3 @@ -7123,54 +7121,54 @@ i32.load i32.const 1 i32.add - local.get $7 - local.get $12 + local.get $1 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $10 + local.get $11 i32.add i32.const -1 i32.store - local.get $4 + local.get $13 local.set $3 end - local.get $8 + local.get $7 i32.const 1 i32.sub - local.set $8 + local.set $7 br $for-loop|3 end end - local.get $10 - local.get $1 + local.get $11 + local.get $4 i32.const 2 i32.shl - local.tee $4 + local.tee $7 i32.add local.get $3 i32.store - local.get $4 - local.get $11 - i32.add local.get $7 + local.get $10 + i32.add + local.get $1 i32.store - local.get $6 - local.set $3 local.get $5 + local.set $3 + local.get $6 + local.set $1 + local.get $4 local.set $7 - local.get $1 - local.set $4 br $while-continue|2 end end loop $for-loop|4 - local.get $4 + local.get $7 if - local.get $4 + local.get $7 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.load local.tee $1 @@ -7179,29 +7177,29 @@ if local.get $0 local.get $1 - local.get $4 + local.get $7 i32.const 2 i32.shl - local.get $11 + local.get $10 i32.add i32.load i32.const 1 i32.add - local.get $9 local.get $12 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns end - local.get $4 + local.get $7 i32.const 1 i32.sub - local.set $4 + local.set $7 br $for-loop|4 end end - local.get $12 + local.get $9 call $~lib/rt/tlsf/__free - local.get $10 + local.get $11 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) @@ -7220,13 +7218,13 @@ i32.sub i32.const 1 i32.add - local.tee $6 + local.tee $5 local.get $3 i32.sub i32.const 1 i32.and i32.sub - local.get $6 + local.get $5 i32.const 1 i32.and local.get $3 @@ -7448,22 +7446,22 @@ i32.add local.tee $3 i32.load - local.set $6 + local.set $5 local.get $3 local.get $2 i32.const 2 i32.shl local.get $0 i32.add - local.tee $5 + local.tee $3 i32.load i32.store local.get $1 i32.const 1 i32.add local.set $1 + local.get $3 local.get $5 - local.get $6 i32.store local.get $2 i32.const 1 @@ -7582,18 +7580,18 @@ local.get $4 i32.add i32.load - local.set $8 + local.set $7 local.get $2 i32.const 2 i32.shl local.get $4 i32.add i32.load - local.set $7 + local.set $8 i32.const 2 global.set $~argumentsLength - local.get $8 local.get $7 + local.get $8 local.get $5 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -7605,7 +7603,7 @@ i32.shl local.get $0 i32.add - local.get $8 + local.get $7 i32.store local.get $6 i32.const 1 @@ -7617,7 +7615,7 @@ i32.shl local.get $0 i32.add - local.get $7 + local.get $8 i32.store local.get $2 i32.const 1 @@ -7638,12 +7636,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) local.get $1 i32.const 48 i32.le_s @@ -7657,11 +7655,10 @@ block $break|0 block $case1|0 local.get $1 - local.tee $4 i32.const 3 i32.ne if - local.get $4 + local.get $1 i32.const 2 i32.eq br_if $case1|0 @@ -7669,87 +7666,87 @@ end local.get $0 i32.load - local.set $3 + local.set $1 local.get $0 i32.load offset=4 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $3 select i32.store - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $3 select - local.set $3 + local.set $1 local.get $0 i32.load offset=8 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $3 select i32.store offset=4 local.get $0 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $3 select i32.store offset=8 end local.get $0 i32.load - local.set $3 + local.set $1 local.get $0 i32.load offset=4 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $2 select i32.store local.get $0 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $2 select i32.store offset=4 return end local.get $0 i32.const 0 - local.get $4 + local.get $1 i32.const 1 i32.sub i32.const 0 @@ -7761,35 +7758,35 @@ local.get $1 i32.clz i32.sub - local.tee $6 + local.tee $5 i32.const 2 i32.shl - local.tee $5 + local.tee $6 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $10 - local.get $5 + local.tee $11 + local.get $6 i32.add - local.set $11 + local.set $10 i32.const 0 - local.set $5 + local.set $6 loop $for-loop|1 local.get $5 local.get $6 - i32.lt_u + i32.gt_u if - local.get $5 + local.get $6 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.const -1 i32.store - local.get $5 + local.get $6 i32.const 1 i32.add - local.set $5 + local.set $6 br $for-loop|1 end end @@ -7797,84 +7794,84 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $12 + local.set $9 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $9 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $7 + local.tee $1 i32.const 1 i32.add - local.tee $1 + local.tee $6 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $9 + local.get $12 i32.const 31 - local.get $9 + local.get $12 i32.const 31 i32.lt_s select - local.tee $7 - local.get $1 + local.tee $1 + local.get $6 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $7 - local.get $9 + local.get $1 + local.get $12 i32.lt_s if local.get $0 - local.get $7 + local.get $1 i32.const 1 i32.add - local.tee $6 - local.get $9 + local.tee $5 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $5 - local.get $6 + local.tee $6 + local.get $5 i32.sub i32.const 1 i32.add - local.tee $8 + local.tee $4 i32.const 32 i32.lt_s if local.get $0 - local.get $6 - local.get $9 - local.get $6 + local.get $5 + local.get $12 + local.get $5 i32.const 31 i32.add - local.tee $1 - local.get $1 - local.get $9 + local.tee $6 + local.get $6 + local.get $12 i32.gt_s select - local.tee $5 - local.get $8 + local.tee $6 + local.get $4 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $6 + local.get $5 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $9 + local.get $12 i32.const 1 i32.add i64.extend_i32_u - local.tee $13 + local.tee $8 i64.div_u local.get $5 local.get $6 @@ -7884,33 +7881,31 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $8 i64.div_u i64.xor i32.wrap_i64 i32.clz - local.set $1 - local.get $4 - local.set $8 + local.set $4 loop $for-loop|3 - local.get $1 - local.get $8 + local.get $4 + local.get $7 i32.lt_u if - local.get $8 + local.get $7 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.load - local.tee $4 + local.tee $13 i32.const -1 i32.ne if local.get $0 - local.get $4 - local.get $11 - local.get $8 + local.get $13 + local.get $10 + local.get $7 i32.const 2 i32.shl local.tee $3 @@ -7918,54 +7913,54 @@ i32.load i32.const 1 i32.add - local.get $7 - local.get $12 + local.get $1 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $10 + local.get $11 i32.add i32.const -1 i32.store - local.get $4 + local.get $13 local.set $3 end - local.get $8 + local.get $7 i32.const 1 i32.sub - local.set $8 + local.set $7 br $for-loop|3 end end - local.get $10 - local.get $1 + local.get $11 + local.get $4 i32.const 2 i32.shl - local.tee $4 + local.tee $7 i32.add local.get $3 i32.store - local.get $4 - local.get $11 - i32.add local.get $7 + local.get $10 + i32.add + local.get $1 i32.store - local.get $6 - local.set $3 local.get $5 + local.set $3 + local.get $6 + local.set $1 + local.get $4 local.set $7 - local.get $1 - local.set $4 br $while-continue|2 end end loop $for-loop|4 - local.get $4 + local.get $7 if - local.get $4 + local.get $7 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.load local.tee $1 @@ -7974,29 +7969,29 @@ if local.get $0 local.get $1 - local.get $4 + local.get $7 i32.const 2 i32.shl - local.get $11 + local.get $10 i32.add i32.load i32.const 1 i32.add - local.get $9 local.get $12 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns end - local.get $4 + local.get $7 i32.const 1 i32.sub - local.set $4 + local.set $7 br $for-loop|4 end end - local.get $12 + local.get $9 call $~lib/rt/tlsf/__free - local.get $10 + local.get $11 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) @@ -8019,28 +8014,28 @@ call $~lib/math/NativeMath.seedRandom end global.get $~lib/math/random_state0_64 - local.set $0 + local.set $1 global.get $~lib/math/random_state1_64 - local.tee $1 + local.tee $0 global.set $~lib/math/random_state0_64 - local.get $1 local.get $0 + local.get $1 i64.const 23 i64.shl - local.get $0 + local.get $1 i64.xor - local.tee $0 + local.tee $1 i64.const 17 i64.shr_u - local.get $0 + local.get $1 i64.xor i64.xor - local.get $1 + local.get $0 i64.const 26 i64.shr_u i64.xor global.set $~lib/math/random_state1_64 - local.get $1 + local.get $0 i64.const 12 i64.shr_u i64.const 4607182418800017408 @@ -8085,38 +8080,38 @@ i32.sub i32.const 1 i32.add - local.tee $6 + local.tee $5 local.get $3 i32.sub i32.const 1 i32.and i32.sub - local.get $6 + local.get $5 i32.const 1 i32.and local.get $3 select local.get $1 i32.add - local.set $8 + local.set $7 loop $for-loop|0 local.get $2 - local.get $8 + local.get $7 i32.ge_s if global.get $~lib/memory/__stack_pointer - local.tee $6 - local.get $8 + local.tee $5 + local.get $7 i32.const 2 i32.shl local.get $0 i32.add - local.tee $5 + local.tee $6 i32.load local.tee $3 i32.store - local.get $6 local.get $5 + local.get $6 i32.load offset=4 local.tee $6 i32.store offset=4 @@ -8137,7 +8132,7 @@ local.get $6 local.set $3 end - local.get $8 + local.get $7 i32.const 1 i32.sub local.set $6 @@ -8154,11 +8149,11 @@ local.get $0 i32.add i32.load - local.tee $7 + local.tee $8 i32.store i32.const 2 global.set $~argumentsLength - local.get $7 + local.get $8 local.get $3 local.get $4 i32.load @@ -8171,7 +8166,7 @@ i32.shl local.get $0 i32.add - local.get $7 + local.get $8 i32.store offset=8 local.get $6 i32.const 1 @@ -8235,10 +8230,10 @@ i32.add local.get $5 i32.store offset=4 - local.get $8 + local.get $7 i32.const 2 i32.add - local.set $8 + local.set $7 br $for-loop|0 end end @@ -8275,7 +8270,7 @@ i32.sub local.tee $6 i32.add - local.set $8 + local.set $7 local.get $6 i32.const 1 i32.add @@ -8292,10 +8287,10 @@ local.tee $2 i32.const 2 i32.shl - local.tee $7 + local.tee $8 i32.add local.get $0 - local.get $7 + local.get $8 i32.add i32.load i32.store @@ -8307,7 +8302,7 @@ local.get $6 i32.gt_s if - local.get $8 + local.get $7 local.get $6 i32.sub i32.const 2 @@ -8426,10 +8421,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $7 i64.const 0 i64.store - local.get $5 + local.get $7 i32.const 0 i32.store offset=8 block $folding-inner0 @@ -8454,95 +8449,95 @@ br $break|0 end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $1 local.get $0 i32.load - local.tee $1 + local.tee $7 i32.store - local.get $4 + local.get $1 local.get $0 i32.load offset=4 - local.tee $4 + local.tee $3 i32.store offset=4 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $1 - local.get $1 - local.get $4 + local.get $3 + local.get $7 + local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $3 + local.tee $1 select i32.store global.get $~lib/memory/__stack_pointer - local.get $1 - local.get $4 + local.get $7 local.get $3 + local.get $1 select - local.tee $1 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=8 - local.tee $4 + local.tee $3 i32.store offset=4 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $1 - local.get $1 - local.get $4 + local.get $3 + local.get $7 + local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $3 + local.tee $1 select i32.store offset=4 local.get $0 - local.get $1 - local.get $4 + local.get $7 local.get $3 + local.get $1 select i32.store offset=8 end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $1 local.get $0 i32.load - local.tee $1 + local.tee $7 i32.store offset=8 - local.get $4 + local.get $1 local.get $0 i32.load offset=4 - local.tee $4 + local.tee $3 i32.store offset=4 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $1 - local.get $1 - local.get $4 + local.get $3 + local.get $7 + local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $2 + local.tee $1 select i32.store local.get $0 + local.get $7 + local.get $3 local.get $1 - local.get $4 - local.get $2 select i32.store offset=4 br $folding-inner0 @@ -8564,12 +8559,12 @@ local.tee $6 i32.const 2 i32.shl - local.tee $5 + local.tee $7 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc local.tee $9 - local.get $5 + local.get $7 i32.add local.set $10 i32.const 0 @@ -8609,7 +8604,7 @@ local.tee $1 i32.const 1 i32.add - local.tee $5 + local.tee $7 i32.const 32 i32.lt_s if @@ -8622,7 +8617,7 @@ i32.lt_s select local.tee $1 - local.get $5 + local.get $7 local.get $2 call $~lib/util/sort/insertionSort end @@ -8644,7 +8639,7 @@ i32.sub i32.const 1 i32.add - local.tee $7 + local.tee $13 i32.const 32 i32.lt_s if @@ -8654,13 +8649,13 @@ local.get $6 i32.const 31 i32.add - local.tee $5 - local.get $5 + local.tee $7 + local.get $7 local.get $8 i32.gt_s select local.tee $5 - local.get $7 + local.get $13 local.get $2 call $~lib/util/sort/insertionSort end @@ -8963,14 +8958,14 @@ if local.get $0 i32.load16_u - local.tee $2 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $2 i32.ne if - local.get $2 local.get $4 + local.get $2 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -9084,14 +9079,14 @@ if local.get $3 i32.load16_u - local.tee $2 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $2 i32.ne if - local.get $2 local.get $4 + local.get $2 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -9326,47 +9321,46 @@ local.get $0 local.get $1 local.get $1 - local.tee $0 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -9554,47 +9548,46 @@ local.get $0 local.get $1 local.get $1 - local.tee $0 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -10023,7 +10016,7 @@ i32.shl local.get $0 i32.add - local.tee $6 + local.tee $0 i32.load16_u local.set $3 loop $while-continue|3 @@ -10066,7 +10059,7 @@ br $while-continue|3 end end - local.get $6 + local.get $0 local.get $3 i32.store16 local.get $5 @@ -10148,7 +10141,7 @@ i32.shl local.get $0 i32.add - local.tee $6 + local.tee $0 i32.load16_u local.set $3 loop $while-continue|6 @@ -10191,7 +10184,7 @@ br $while-continue|6 end end - local.get $6 + local.get $0 local.get $3 i32.store16 local.get $5 @@ -10200,7 +10193,6 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) local.get $2 i32.eqz if @@ -10219,17 +10211,17 @@ local.get $1 local.get $2 i32.add - local.tee $4 + local.tee $3 i32.const 21 i32.le_s local.get $1 - local.get $4 + local.get $3 i32.le_s i32.and if (result i32) loop $for-loop|0 local.get $1 - local.get $4 + local.get $3 i32.lt_s if local.get $1 @@ -10246,26 +10238,26 @@ br $for-loop|0 end end - local.get $4 + local.get $3 i32.const 1 i32.shl local.get $0 i32.add i32.const 3145774 i32.store - local.get $4 + local.get $3 i32.const 2 i32.add else - local.get $4 + local.get $3 i32.const 21 i32.le_s - local.get $4 + local.get $3 i32.const 0 i32.gt_s i32.and if (result i32) - local.get $4 + local.get $3 i32.const 1 i32.shl local.get $0 @@ -10287,18 +10279,18 @@ i32.const 1 i32.add else - local.get $4 + local.get $3 i32.const 0 i32.le_s - local.get $4 + local.get $3 i32.const -6 i32.gt_s i32.and if (result i32) i32.const 2 - local.get $4 + local.get $3 i32.sub - local.tee $5 + local.tee $3 i32.const 1 i32.shl local.get $0 @@ -10315,7 +10307,7 @@ local.set $2 loop $for-loop|1 local.get $2 - local.get $5 + local.get $3 i32.lt_s if local.get $2 @@ -10333,7 +10325,7 @@ end end local.get $1 - local.get $5 + local.get $3 i32.add else local.get $1 @@ -10344,16 +10336,16 @@ i32.const 101 i32.store16 offset=2 local.get $0 - local.tee $3 + local.tee $1 i32.const 4 i32.add - local.get $4 + local.get $3 i32.const 1 i32.sub local.tee $0 i32.const 0 i32.lt_s - local.tee $2 + local.tee $3 if i32.const 0 local.get $0 @@ -10361,63 +10353,62 @@ local.set $0 end local.get $0 - local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $4 local.get $0 - local.get $1 + local.get $4 i32.const 1 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $3 + local.get $1 i32.const 45 i32.const 43 - local.get $2 + local.get $3 select i32.store16 offset=4 local.get $0 @@ -10443,20 +10434,19 @@ local.get $0 local.get $2 i32.add - local.tee $0 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $0 - local.tee $3 + local.get $2 i32.const 4 i32.add - local.get $4 + local.get $3 i32.const 1 i32.sub local.tee $0 i32.const 0 i32.lt_s - local.tee $5 + local.tee $3 if i32.const 0 local.get $0 @@ -10464,63 +10454,62 @@ local.set $0 end local.get $0 - local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 + local.set $5 local.get $0 - local.get $2 + local.get $5 i32.const 1 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $3 + local.get $2 i32.const 45 i32.const 43 - local.get $5 + local.get $3 select i32.store16 offset=4 local.get $0 @@ -10550,7 +10539,7 @@ local.get $1 f64.const 0 f64.lt - local.tee $8 + local.tee $3 if (result f64) local.get $0 i32.const 45 @@ -10567,11 +10556,11 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.set $3 + local.set $7 local.get $2 i64.const 4503599627370495 i64.and - local.get $3 + local.get $7 i32.const 0 i32.ne i64.extend_i32_u @@ -10579,13 +10568,13 @@ i64.shl i64.add local.set $2 - local.get $3 + local.get $7 i32.const 1 - local.get $3 + local.get $7 select i32.const 1075 i32.sub - local.tee $3 + local.tee $7 i32.const 1 i32.sub local.get $2 @@ -10593,14 +10582,14 @@ i64.shl i64.const 1 i64.add - local.tee $5 + local.tee $4 i64.clz i32.wrap_i64 - local.tee $7 + local.tee $8 i32.sub local.set $9 - local.get $5 - local.get $7 + local.get $4 + local.get $8 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -10610,13 +10599,13 @@ i64.eq i32.const 1 i32.add - local.tee $7 + local.tee $8 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $3 local.get $7 + local.get $8 i32.sub local.get $9 i32.sub @@ -10628,7 +10617,7 @@ i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $9 + local.tee $7 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -10637,9 +10626,9 @@ f64.add local.tee $1 i32.trunc_f64_s - local.tee $3 + local.tee $8 local.get $1 - local.get $3 + local.get $8 f64.convert_i32_s f64.ne i32.add @@ -10647,18 +10636,18 @@ i32.shr_s i32.const 1 i32.add - local.tee $3 + local.tee $8 i32.const 3 i32.shl - local.tee $7 + local.tee $9 i32.sub global.set $~lib/util/number/_K - local.get $7 + local.get $9 i32.const 11960 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $3 + local.get $8 i32.const 1 i32.shl i32.const 12656 @@ -10669,62 +10658,62 @@ local.get $2 i64.clz i64.shl - local.tee $2 + local.tee $4 i64.const 4294967295 i64.and - local.set $11 - local.get $2 + local.set $2 + local.get $4 i64.const 32 i64.shr_u - local.tee $14 + local.tee $6 global.get $~lib/util/number/_frc_pow local.tee $5 i64.const 4294967295 i64.and - local.tee $2 + local.tee $10 local.tee $4 i64.mul + local.get $2 local.get $4 - local.get $11 i64.mul i64.const 32 i64.shr_u i64.add - local.set $12 + local.set $4 local.get $5 i64.const 32 i64.shr_u - local.tee $5 - local.set $13 + local.tee $11 + local.set $5 global.get $~lib/util/number/_frc_plus - local.tee $4 + local.tee $12 i64.const 4294967295 i64.and - local.set $6 - local.get $4 + local.set $13 + local.get $12 i64.const 32 i64.shr_u - local.tee $10 - local.get $2 + local.tee $12 + local.get $10 i64.mul - local.get $2 - local.get $6 + local.get $10 + local.get $13 i64.mul i64.const 32 i64.shr_u i64.add - local.set $4 - local.get $5 - local.get $10 + local.set $14 + local.get $11 + local.get $12 i64.mul - local.get $4 + local.get $14 i64.const 32 i64.shr_u i64.add - local.get $5 - local.get $6 + local.get $11 + local.get $13 i64.mul - local.get $4 + local.get $14 i64.const 4294967295 i64.and i64.add @@ -10735,42 +10724,42 @@ i64.add i64.const 1 i64.sub - local.set $4 + local.set $12 global.get $~lib/util/number/_frc_minus - local.tee $6 + local.tee $13 i64.const 4294967295 i64.and - local.set $10 - local.get $6 + local.set $14 + local.get $13 i64.const 32 i64.shr_u - local.tee $6 - local.get $2 + local.tee $13 + local.get $10 i64.mul - local.get $2 local.get $10 + local.get $14 i64.mul i64.const 32 i64.shr_u i64.add - local.set $2 - local.get $8 + local.set $10 + local.get $3 i32.const 1 i32.shl local.get $0 i32.add local.get $0 - local.get $13 - local.get $14 + local.get $5 + local.get $6 i64.mul - local.get $12 + local.get $4 i64.const 32 i64.shr_u i64.add - local.get $11 - local.get $13 + local.get $2 + local.get $5 i64.mul - local.get $12 + local.get $4 i64.const 4294967295 i64.and i64.add @@ -10779,24 +10768,24 @@ i64.const 32 i64.shr_u i64.add - local.get $4 + local.get $12 global.get $~lib/util/number/_exp_pow - local.get $9 + local.get $7 i32.add i32.const -64 i32.sub - local.get $4 - local.get $5 - local.get $6 + local.get $12 + local.get $11 + local.get $13 i64.mul - local.get $2 + local.get $10 i64.const 32 i64.shr_u i64.add - local.get $5 - local.get $10 + local.get $11 + local.get $14 i64.mul - local.get $2 + local.get $10 i64.const 4294967295 i64.and i64.add @@ -10808,13 +10797,13 @@ i64.const 1 i64.add i64.sub - local.get $8 + local.get $3 call $~lib/util/number/genDigits - local.get $8 + local.get $3 i32.sub global.get $~lib/util/number/_K call $~lib/util/number/prettify - local.get $8 + local.get $3 i32.add ) (func $~lib/util/number/dtoa_buffered (param $0 i32) (param $1 f64) (result i32) @@ -11135,7 +11124,7 @@ (local $7 i32) local.get $0 i32.load offset=4 - local.set $7 + local.set $4 local.get $0 i32.load offset=12 local.set $5 @@ -11184,7 +11173,7 @@ if global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $7 + local.get $4 i32.load local.tee $0 i32.store @@ -11208,14 +11197,14 @@ local.get $3 i32.const 2 i32.shl - local.get $7 + local.get $4 i32.add i32.load - local.tee $4 + local.tee $7 i32.store offset=4 - local.get $4 + local.get $7 if - local.get $4 + local.get $7 i32.const 20 i32.sub i32.load offset=16 @@ -11261,31 +11250,31 @@ local.get $3 i32.const 2 i32.shl - local.get $7 + local.get $4 i32.add i32.load - local.tee $4 + local.tee $7 i32.store offset=4 - local.get $4 + local.get $7 if local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.get $4 - local.get $4 + local.get $7 + local.get $7 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $7 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $2 - local.get $4 + local.get $7 i32.add local.set $2 end @@ -11317,7 +11306,7 @@ local.get $6 i32.const 2 i32.shl - local.get $7 + local.get $4 i32.add i32.load local.tee $1 @@ -11355,7 +11344,7 @@ (local $5 i32) local.get $0 i32.load offset=4 - local.set $1 + local.set $3 local.get $0 i32.load offset=12 local.set $0 @@ -11385,7 +11374,7 @@ local.get $0 i32.const 1 i32.sub - local.tee $2 + local.tee $4 i32.const 0 i32.lt_s if @@ -11397,12 +11386,12 @@ local.set $0 br $__inlined_func$~lib/util/string/joinReferenceArray end - local.get $2 + local.get $4 i32.eqz if global.get $~lib/memory/__stack_pointer local.tee $0 - local.get $1 + local.get $3 i32.load local.tee $1 i32.store @@ -11426,35 +11415,35 @@ i32.load i32.const 1 i32.shr_u - local.set $5 + local.set $2 loop $for-loop|0 - local.get $2 - local.get $3 - i32.gt_s + local.get $1 + local.get $4 + i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $3 i32.add i32.load - local.tee $4 + local.tee $5 i32.store - local.get $4 + local.get $5 if global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $5 i32.const 13072 i32.store offset=8 - local.get $4 + local.get $5 local.get $0 i32.const 13072 call $~lib/string/String.__concat local.tee $0 i32.store offset=4 end - local.get $5 + local.get $2 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -11463,18 +11452,18 @@ local.tee $0 i32.store offset=4 end - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 + local.set $1 br $for-loop|0 end end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 2 i32.shl - local.get $1 + local.get $3 i32.add i32.load local.tee $1 @@ -11538,58 +11527,58 @@ end local.get $1 i32.extend8_s - local.tee $3 local.tee $1 + local.tee $3 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $3 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $3 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $3 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $3 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $3 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $3 local.get $0 - local.get $3 local.get $1 local.get $2 + local.get $3 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut @@ -11616,59 +11605,59 @@ local.get $1 i32.const 65535 i32.and - local.tee $2 local.tee $1 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $2 local.get $0 - local.get $2 local.get $1 + local.get $2 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $2 ) (func $~lib/util/number/utoa64_dec_lut (param $0 i32) (param $1 i64) (param $2 i32) (local $3 i32) @@ -11681,7 +11670,7 @@ local.get $2 i32.const 4 i32.sub - local.tee $2 + local.tee $4 i32.const 1 i32.shl local.get $0 @@ -11698,7 +11687,7 @@ local.tee $3 i32.const 10000 i32.rem_u - local.tee $4 + local.tee $2 i32.const 100 i32.div_u i32.const 2 @@ -11706,7 +11695,7 @@ i32.const 9836 i32.add i64.load32_u - local.get $4 + local.get $2 i32.const 100 i32.rem_u i32.const 2 @@ -11718,7 +11707,7 @@ i64.shl i64.or i64.store - local.get $2 + local.get $4 i32.const 4 i32.sub local.tee $2 @@ -11900,7 +11889,7 @@ (local $7 i32) local.get $0 i32.load offset=4 - local.set $4 + local.set $3 local.get $0 i32.load offset=12 local.set $1 @@ -11922,7 +11911,7 @@ local.get $1 i32.const 1 i32.sub - local.tee $3 + local.tee $7 i32.const 0 i32.lt_s if @@ -11935,10 +11924,10 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $3 + local.get $7 i32.eqz if - local.get $4 + local.get $3 i64.load local.set $2 global.get $~lib/memory/__stack_pointer @@ -11971,7 +11960,7 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.wrap_i64 - local.tee $3 + local.tee $1 local.tee $0 i32.const 100000 i32.lt_u @@ -12018,7 +12007,7 @@ i32.add end end - local.tee $1 + local.tee $3 i32.const 1 i32.shl i32.const 1 @@ -12026,8 +12015,8 @@ local.tee $0 i32.store local.get $0 - local.get $3 local.get $1 + local.get $3 call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer @@ -12101,18 +12090,18 @@ br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.const 9516 i32.load i32.const 1 i32.shr_u - local.tee $5 + local.tee $4 i32.const 20 i32.add i32.mul i32.const 20 i32.add - local.tee $7 + local.tee $6 i32.const 1 i32.shl i32.const 1 @@ -12120,26 +12109,26 @@ local.tee $1 i32.store loop $for-loop|0 - local.get $3 - local.get $6 - i32.gt_s + local.get $5 + local.get $7 + i32.lt_s if local.get $0 i32.const 1 i32.shl local.get $1 i32.add - local.get $6 + local.get $5 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add i64.load call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $5 + local.get $4 if local.get $0 i32.const 1 @@ -12147,32 +12136,32 @@ local.get $1 i32.add i32.const 9520 - local.get $5 + local.get $4 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $5 + local.get $4 i32.add local.set $0 end - local.get $6 + local.get $5 i32.const 1 i32.add - local.set $6 + local.set $5 br $for-loop|0 end end - local.get $7 + local.get $6 local.get $0 i32.const 1 i32.shl local.get $1 i32.add - local.get $3 + local.get $7 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add i64.load call $~lib/util/number/itoa_buffered @@ -12217,7 +12206,7 @@ local.get $1 i64.const 0 i64.lt_s - local.tee $3 + local.tee $2 if local.get $0 i32.const 45 @@ -12231,7 +12220,7 @@ i64.const 10 i64.lt_u if - local.get $3 + local.get $2 i32.const 1 i32.shl local.get $0 @@ -12240,7 +12229,7 @@ i64.const 48 i64.or i64.store16 - local.get $3 + local.get $2 i32.const 1 i32.add return @@ -12251,58 +12240,58 @@ if local.get $1 i32.wrap_i64 + local.tee $3 local.tee $4 - local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $4 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $4 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $4 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $4 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $4 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 + local.set $4 local.get $0 - local.get $4 - local.get $2 local.get $3 + local.get $2 + local.get $4 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut @@ -12359,7 +12348,7 @@ i32.add end end - local.get $3 + local.get $2 i32.add local.tee $0 call $~lib/util/number/utoa64_dec_lut @@ -12449,7 +12438,7 @@ i64.const 63 i64.shr_u i32.wrap_i64 - local.tee $3 + local.tee $1 select local.tee $2 i64.const 4294967295 @@ -12458,7 +12447,7 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.wrap_i64 - local.tee $6 + local.tee $3 local.tee $0 i32.const 100000 i32.lt_u @@ -12505,9 +12494,9 @@ i32.add end end - local.get $3 + local.get $1 i32.add - local.tee $1 + local.tee $4 i32.const 1 i32.shl i32.const 1 @@ -12515,8 +12504,8 @@ local.tee $0 i32.store local.get $0 - local.get $6 - local.get $1 + local.get $3 + local.get $4 call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer @@ -12570,9 +12559,9 @@ i32.add end end - local.get $3 + local.get $1 i32.add - local.tee $1 + local.tee $3 i32.const 1 i32.shl i32.const 1 @@ -12581,10 +12570,10 @@ i32.store local.get $0 local.get $2 - local.get $1 + local.get $3 call $~lib/util/number/utoa64_dec_lut end - local.get $3 + local.get $1 if local.get $0 i32.const 45 @@ -12603,13 +12592,13 @@ i32.load i32.const 1 i32.shr_u - local.tee $7 + local.tee $6 i32.const 21 i32.add i32.mul i32.const 21 i32.add - local.tee $6 + local.tee $7 i32.const 1 i32.shl i32.const 1 @@ -12636,7 +12625,7 @@ local.get $0 i32.add local.set $0 - local.get $7 + local.get $6 if local.get $0 i32.const 1 @@ -12644,12 +12633,12 @@ local.get $1 i32.add i32.const 9520 - local.get $7 + local.get $6 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $7 + local.get $6 i32.add local.set $0 end @@ -12660,7 +12649,7 @@ br $for-loop|0 end end - local.get $6 + local.get $7 local.get $0 i32.const 1 i32.shl @@ -12728,59 +12717,59 @@ local.get $1 i32.const 255 i32.and - local.tee $2 local.tee $1 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $2 local.get $0 - local.get $2 local.get $1 + local.get $2 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $2 ) (func $~lib/array/Array#join (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -13004,13 +12993,13 @@ i32.sub i32.const 1 i32.add - local.tee $6 + local.tee $5 local.get $3 i32.sub i32.const 1 i32.and i32.sub - local.get $6 + local.get $5 i32.const 1 i32.and local.get $3 @@ -13210,20 +13199,20 @@ i32.add local.tee $3 i32.load8_u - local.set $6 + local.set $5 local.get $3 local.get $0 local.get $2 i32.add - local.tee $5 + local.tee $3 i32.load8_u i32.store8 local.get $1 i32.const 1 i32.add local.set $1 + local.get $3 local.get $5 - local.get $6 i32.store8 local.get $2 i32.const 1 @@ -13331,16 +13320,16 @@ local.get $6 i32.add i32.load8_u - local.set $8 + local.set $7 local.get $2 local.get $4 i32.add i32.load8_u - local.set $7 + local.set $8 i32.const 2 global.set $~argumentsLength - local.get $8 local.get $7 + local.get $8 local.get $5 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -13350,7 +13339,7 @@ local.get $0 local.get $1 i32.add - local.get $8 + local.get $7 i32.store8 local.get $6 i32.const 1 @@ -13360,7 +13349,7 @@ local.get $0 local.get $1 i32.add - local.get $7 + local.get $8 i32.store8 local.get $2 i32.const 1 @@ -13381,12 +13370,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) local.get $1 i32.const 48 i32.le_s @@ -13400,11 +13389,10 @@ block $break|0 block $case1|0 local.get $1 - local.tee $4 i32.const 3 i32.ne if - local.get $4 + local.get $1 i32.const 2 i32.eq br_if $case1|0 @@ -13412,87 +13400,87 @@ end local.get $0 i32.load8_u - local.set $3 + local.set $1 local.get $0 i32.load8_u offset=1 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $3 select i32.store8 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $3 select - local.set $3 + local.set $1 local.get $0 i32.load8_u offset=2 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $3 select i32.store8 offset=1 local.get $0 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $3 select i32.store8 offset=2 end local.get $0 i32.load8_u - local.set $3 + local.set $1 local.get $0 i32.load8_u offset=1 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $2 select i32.store8 local.get $0 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $2 select i32.store8 offset=1 return end local.get $0 i32.const 0 - local.get $4 + local.get $1 i32.const 1 i32.sub i32.const 0 @@ -13504,118 +13492,118 @@ local.get $1 i32.clz i32.sub - local.tee $6 + local.tee $5 i32.const 2 i32.shl - local.tee $5 + local.tee $6 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $10 - local.get $5 + local.tee $11 + local.get $6 i32.add - local.set $11 + local.set $10 i32.const 0 - local.set $5 + local.set $6 loop $for-loop|1 local.get $5 local.get $6 - i32.lt_u + i32.gt_u if - local.get $5 + local.get $6 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.const -1 i32.store - local.get $5 + local.get $6 i32.const 1 i32.add - local.set $5 + local.set $6 br $for-loop|1 end end local.get $1 call $~lib/rt/tlsf/__alloc - local.set $12 + local.set $9 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $9 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $7 + local.tee $1 i32.const 1 i32.add - local.tee $1 + local.tee $6 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $9 + local.get $12 i32.const 31 - local.get $9 + local.get $12 i32.const 31 i32.lt_s select - local.tee $7 - local.get $1 + local.tee $1 + local.get $6 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $7 - local.get $9 + local.get $1 + local.get $12 i32.lt_s if local.get $0 - local.get $7 + local.get $1 i32.const 1 i32.add - local.tee $6 - local.get $9 + local.tee $5 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $5 - local.get $6 + local.tee $6 + local.get $5 i32.sub i32.const 1 i32.add - local.tee $8 + local.tee $4 i32.const 32 i32.lt_s if local.get $0 - local.get $6 - local.get $9 - local.get $6 + local.get $5 + local.get $12 + local.get $5 i32.const 31 i32.add - local.tee $1 - local.get $1 - local.get $9 + local.tee $6 + local.get $6 + local.get $12 i32.gt_s select - local.tee $5 - local.get $8 + local.tee $6 + local.get $4 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $6 + local.get $5 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $9 + local.get $12 i32.const 1 i32.add i64.extend_i32_u - local.tee $13 + local.tee $8 i64.div_u local.get $5 local.get $6 @@ -13625,33 +13613,31 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $8 i64.div_u i64.xor i32.wrap_i64 i32.clz - local.set $1 - local.get $4 - local.set $8 + local.set $4 loop $for-loop|3 - local.get $1 - local.get $8 + local.get $4 + local.get $7 i32.lt_u if - local.get $8 + local.get $7 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.load - local.tee $4 + local.tee $13 i32.const -1 i32.ne if local.get $0 - local.get $4 - local.get $11 - local.get $8 + local.get $13 + local.get $10 + local.get $7 i32.const 2 i32.shl local.tee $3 @@ -13659,54 +13645,54 @@ i32.load i32.const 1 i32.add - local.get $7 - local.get $12 + local.get $1 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $10 + local.get $11 i32.add i32.const -1 i32.store - local.get $4 + local.get $13 local.set $3 end - local.get $8 + local.get $7 i32.const 1 i32.sub - local.set $8 + local.set $7 br $for-loop|3 end end - local.get $10 - local.get $1 + local.get $11 + local.get $4 i32.const 2 i32.shl - local.tee $4 + local.tee $7 i32.add local.get $3 i32.store - local.get $4 - local.get $11 - i32.add local.get $7 + local.get $10 + i32.add + local.get $1 i32.store - local.get $6 - local.set $3 local.get $5 + local.set $3 + local.get $6 + local.set $1 + local.get $4 local.set $7 - local.get $1 - local.set $4 br $while-continue|2 end end loop $for-loop|4 - local.get $4 + local.get $7 if - local.get $4 + local.get $7 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.load local.tee $1 @@ -13715,29 +13701,29 @@ if local.get $0 local.get $1 - local.get $4 + local.get $7 i32.const 2 i32.shl - local.get $11 + local.get $10 i32.add i32.load i32.const 1 i32.add - local.get $9 local.get $12 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns end - local.get $4 + local.get $7 i32.const 1 i32.sub - local.set $4 + local.set $7 br $for-loop|4 end end - local.get $12 + local.get $9 call $~lib/rt/tlsf/__free - local.get $10 + local.get $11 call $~lib/rt/tlsf/__free ) (func $~lib/array/Array<~lib/string/String>#push (param $0 i32) (param $1 i32) (result i32) @@ -14107,25 +14093,25 @@ i32.gt_s if (result i32) global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $6 local.get $4 i32.const 2 i32.shl local.get $0 i32.add - local.tee $6 - i32.load offset=4 local.tee $7 + i32.load offset=4 + local.tee $5 i32.store - local.get $5 local.get $6 + local.get $7 i32.load - local.tee $5 + local.tee $6 i32.store offset=4 i32.const 2 global.set $~argumentsLength - local.get $7 local.get $5 + local.get $6 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -14493,19 +14479,19 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 9520 i32.store local.get $0 i32.load offset=4 - local.set $2 + local.set $4 local.get $0 i32.load offset=12 local.set $0 - local.get $1 + local.get $2 i32.const 12 i32.sub global.set $~lib/memory/__stack_pointer @@ -14514,17 +14500,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> local.get $0 i32.const 1 i32.sub - local.tee $1 + local.tee $5 i32.const 0 i32.lt_s if @@ -14536,11 +14522,11 @@ local.set $0 br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> end - local.get $1 + local.get $5 i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.load local.tee $0 i32.store @@ -14567,37 +14553,37 @@ i32.load i32.const 1 i32.shr_u - local.set $5 + local.set $2 loop $for-loop|0 local.get $1 - local.get $4 - i32.gt_s + local.get $5 + i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $4 i32.add i32.load - local.tee $3 + local.tee $6 i32.store - local.get $3 + local.get $6 if global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $6 call $~lib/array/Array#toString - local.set $3 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $6 i32.store offset=8 local.get $0 - local.get $3 + local.get $6 call $~lib/string/String.__concat local.tee $0 i32.store offset=4 end - local.get $5 + local.get $2 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -14606,33 +14592,33 @@ local.tee $0 i32.store offset=4 end - local.get $4 + local.get $1 i32.const 1 i32.add - local.set $4 + local.set $1 br $for-loop|0 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $5 i32.const 2 i32.shl - local.get $2 + local.get $4 i32.add i32.load - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 call $~lib/array/Array#toString - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 local.get $0 - local.get $2 + local.get $1 call $~lib/string/String.__concat local.tee $0 i32.store offset=4 @@ -14662,12 +14648,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) + (local $5 f64) + (local $6 f32) (local $7 i32) - (local $8 f64) + (local $8 i32) (local $9 i32) - (local $10 f32) + (local $10 i32) (local $11 i32) global.get $~lib/memory/__stack_pointer i32.const 172 @@ -14679,70 +14665,70 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i64.const 0 i64.store offset=16 - local.get $0 + local.get $1 i64.const 0 i64.store offset=24 - local.get $0 + local.get $1 i64.const 0 i64.store offset=32 - local.get $0 + local.get $1 i64.const 0 i64.store offset=40 - local.get $0 + local.get $1 i64.const 0 i64.store offset=48 - local.get $0 + local.get $1 i64.const 0 i64.store offset=56 - local.get $0 + local.get $1 i64.const 0 i64.store offset=64 - local.get $0 + local.get $1 i64.const 0 i64.store offset=72 - local.get $0 + local.get $1 i64.const 0 i64.store offset=80 - local.get $0 + local.get $1 i64.const 0 i64.store offset=88 - local.get $0 + local.get $1 i64.const 0 i64.store offset=96 - local.get $0 + local.get $1 i64.const 0 i64.store offset=104 - local.get $0 + local.get $1 i64.const 0 i64.store offset=112 - local.get $0 + local.get $1 i64.const 0 i64.store offset=120 - local.get $0 + local.get $1 i64.const 0 i64.store offset=128 - local.get $0 + local.get $1 i64.const 0 i64.store offset=136 - local.get $0 + local.get $1 i64.const 0 i64.store offset=144 - local.get $0 + local.get $1 i64.const 0 i64.store offset=152 - local.get $0 + local.get $1 i64.const 0 i64.store offset=160 - local.get $0 + local.get $1 i32.const 0 i32.store offset=168 memory.size @@ -14782,9 +14768,9 @@ global.set $std/array/arr i32.const 0 call $std/array/Ref#constructor - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 @@ -14795,10 +14781,10 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new @@ -14839,24 +14825,24 @@ i32.const 1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 i32.store offset=4 - local.get $2 + local.get $3 i32.const 0 i32.const 1 call $~lib/memory/memory.fill local.get $0 - local.get $2 + local.get $3 i32.store - local.get $2 + local.get $3 if local.get $0 - local.get $2 + local.get $3 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $2 + local.get $3 i32.store offset=4 local.get $0 i32.const 1 @@ -14880,9 +14866,9 @@ i32.store local.get $1 global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -15041,43 +15027,43 @@ i32.const 7 i32.const 1888 call $~lib/rt/__newArray - local.tee $1 + local.tee $3 i32.store offset=12 - local.get $1 + local.get $3 i32.load offset=4 - local.set $11 + local.set $0 i32.const 1 - local.get $1 + local.get $3 i32.load offset=12 - local.tee $0 - local.get $0 + local.tee $2 + local.get $2 i32.const 1 i32.gt_s select - local.set $2 + local.set $1 i32.const 3 - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.const 3 i32.gt_s select - local.set $0 + local.set $2 loop $for-loop|0 - local.get $0 + local.get $1 local.get $2 - i32.gt_s + i32.lt_s if - local.get $2 + local.get $1 i32.const 2 i32.shl - local.get $11 + local.get $0 i32.add i32.const 1 i32.store - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|0 end end @@ -15086,12 +15072,12 @@ i32.const 7 i32.const 1936 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 + local.get $3 local.get $1 - local.get $0 call $std/array/isArraysEqual i32.eqz if @@ -15102,34 +15088,34 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 i32.load offset=4 - local.set $0 + local.set $1 i32.const 0 - local.get $1 + local.get $3 i32.load offset=12 local.tee $2 local.get $2 i32.const 0 i32.gt_s select - local.set $4 + local.set $0 loop $for-loop|04 + local.get $0 local.get $2 - local.get $4 - i32.gt_s + i32.lt_s if - local.get $4 + local.get $0 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.const 0 i32.store - local.get $4 + local.get $0 i32.const 1 i32.add - local.set $4 + local.set $0 br $for-loop|04 end end @@ -15138,12 +15124,12 @@ i32.const 7 i32.const 1984 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 + local.get $3 local.get $1 - local.get $0 call $std/array/isArraysEqual i32.eqz if @@ -15154,11 +15140,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 i32.load offset=4 - local.set $11 + local.set $1 i32.const 0 - local.get $1 + local.get $3 i32.load offset=12 local.tee $2 local.get $2 @@ -15184,7 +15170,7 @@ local.get $0 i32.const 2 i32.shl - local.get $11 + local.get $1 i32.add i32.const 1 i32.store @@ -15200,12 +15186,12 @@ i32.const 7 i32.const 2032 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 + local.get $3 local.get $1 - local.get $0 call $std/array/isArraysEqual i32.eqz if @@ -15216,10 +15202,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 i32.load offset=4 - local.set $11 - local.get $1 + local.set $1 + local.get $3 i32.load offset=12 local.tee $2 i32.const 2 @@ -15230,23 +15216,23 @@ i32.const 0 i32.gt_s select - local.set $4 + local.set $0 loop $for-loop|08 + local.get $0 local.get $2 - local.get $4 - i32.gt_s + i32.lt_s if - local.get $4 + local.get $0 i32.const 2 i32.shl - local.get $11 + local.get $1 i32.add i32.const 2 i32.store - local.get $4 + local.get $0 i32.const 1 i32.add - local.set $4 + local.set $0 br $for-loop|08 end end @@ -15255,12 +15241,12 @@ i32.const 7 i32.const 2080 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 + local.get $3 local.get $1 - local.get $0 call $std/array/isArraysEqual i32.eqz if @@ -15271,11 +15257,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 i32.load offset=4 - local.set $11 + local.set $1 i32.const 1 - local.get $1 + local.get $3 i32.load offset=12 local.tee $2 local.get $2 @@ -15298,7 +15284,7 @@ local.get $0 i32.const 2 i32.shl - local.get $11 + local.get $1 i32.add i32.const 0 i32.store @@ -15314,12 +15300,12 @@ i32.const 7 i32.const 2128 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 + local.get $3 local.get $1 - local.get $0 call $std/array/isArraysEqual i32.eqz if @@ -15332,9 +15318,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 if i32.const 0 @@ -15346,9 +15332,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $std/array/internalCapacity i32.const 8 i32.ne @@ -15362,17 +15348,17 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 42 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#__get i32.const 42 @@ -15387,9 +15373,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 1 i32.ne @@ -15403,9 +15389,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $std/array/internalCapacity i32.const 8 i32.ne @@ -15419,9 +15405,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop i32.const 42 i32.ne @@ -15435,9 +15421,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 if i32.const 0 @@ -15449,9 +15435,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $std/array/internalCapacity i32.const 8 i32.ne @@ -15465,17 +15451,17 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 43 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 1 i32.ne @@ -15489,9 +15475,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $std/array/internalCapacity i32.const 8 i32.ne @@ -15505,9 +15491,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#__get i32.const 43 @@ -15522,17 +15508,17 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 44 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 2 i32.ne @@ -15546,9 +15532,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $std/array/internalCapacity i32.const 8 i32.ne @@ -15562,9 +15548,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#__get i32.const 43 @@ -15579,9 +15565,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 1 call $~lib/array/Array#__get i32.const 44 @@ -15596,17 +15582,17 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 45 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 3 i32.ne @@ -15620,9 +15606,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $std/array/internalCapacity i32.const 8 i32.ne @@ -15636,9 +15622,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#__get i32.const 43 @@ -15653,9 +15639,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 1 call $~lib/array/Array#__get i32.const 44 @@ -15670,9 +15656,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2 call $~lib/array/Array#__get i32.const 45 @@ -15686,40 +15672,40 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 2 i32.const 2 i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 i32.store offset=16 - local.get $1 + local.get $0 i32.const 0 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 1 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 local.get $1 + local.get $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $1 + local.get $0 i32.const 0 i32.store offset=12 - local.get $1 + local.get $0 i32.load offset=12 if i32.const 0 @@ -15735,9 +15721,9 @@ i32.const 3 i32.const 2224 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=12 - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#at i32.const 1 @@ -15750,7 +15736,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 call $~lib/array/Array#at i32.const 4 @@ -15763,7 +15749,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const -1 call $~lib/array/Array#at i32.const 4 @@ -15776,7 +15762,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const -4 call $~lib/array/Array#at i32.const 1 @@ -15792,7 +15778,7 @@ global.get $~lib/memory/__stack_pointer i32.const 0 call $~lib/array/Array#constructor - local.tee $2 + local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer global.get $std/array/arr @@ -15800,15 +15786,15 @@ i32.store global.get $~lib/memory/__stack_pointer local.get $0 - local.get $2 + local.get $1 call $~lib/array/Array#concat - local.tee $1 + local.tee $0 i32.store offset=16 global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 call $std/array/internalCapacity i32.const 8 i32.ne @@ -15822,9 +15808,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 i32.load offset=12 i32.const 3 i32.ne @@ -15836,7 +15822,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=12 i32.const 3 i32.ne @@ -15853,19 +15839,19 @@ i32.const 3 i32.const 2272 call $~lib/rt/__newArray - local.set $0 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $3 call $~lib/array/Array#concat drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 call $std/array/internalCapacity i32.const 8 i32.ne @@ -15877,7 +15863,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 43 @@ -15890,7 +15876,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.const 44 @@ -15903,7 +15889,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/array/Array#__get i32.const 45 @@ -15916,30 +15902,30 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 46 call $~lib/array/Array#push drop - local.get $2 + local.get $1 i32.const 47 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/array/arr local.tee $0 + global.get $std/array/arr + local.tee $3 i32.store - local.get $1 local.get $0 - local.get $2 + local.get $3 + local.get $1 call $~lib/array/Array#concat - local.tee $1 + local.tee $0 i32.store offset=16 global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 call $std/array/internalCapacity i32.const 8 i32.ne @@ -15951,7 +15937,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.load offset=12 i32.const 2 i32.ne @@ -15963,7 +15949,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=12 i32.const 5 i32.ne @@ -15975,7 +15961,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 43 @@ -15988,7 +15974,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.const 44 @@ -16001,7 +15987,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/array/Array#__get i32.const 45 @@ -16014,7 +16000,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 call $~lib/array/Array#__get i32.const 46 @@ -16027,7 +16013,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 4 call $~lib/array/Array#__get i32.const 47 @@ -16040,10 +16026,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 call $~lib/array/Array#pop drop - local.get $1 + local.get $0 i32.load offset=12 i32.const 4 i32.ne @@ -16061,9 +16047,9 @@ i32.const 3 i32.const 2304 call $~lib/rt/__newArray - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $2 + local.get $1 i32.load offset=12 if i32.const 0 @@ -16074,13 +16060,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/array/arr local.tee $0 + global.get $std/array/arr + local.tee $3 i32.store offset=8 - local.get $1 - local.get $2 local.get $0 + local.get $1 + local.get $3 call $~lib/array/Array#concat local.tee $0 i32.store offset=16 @@ -16096,7 +16082,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.load offset=12 if i32.const 0 @@ -16112,9 +16098,9 @@ i32.const 3 i32.const 2336 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 0 i32.const 3 i32.const 2147483647 @@ -16151,9 +16137,9 @@ i32.const 3 i32.const 2432 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 1 i32.const 3 i32.const 2147483647 @@ -16190,9 +16176,9 @@ i32.const 3 i32.const 2528 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 1 i32.const 2 i32.const 2147483647 @@ -16229,9 +16215,9 @@ i32.const 3 i32.const 2624 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 2 i32.const 2 i32.const 2147483647 @@ -16268,9 +16254,9 @@ i32.const 3 i32.const 2720 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 0 i32.const 3 i32.const 4 @@ -16307,9 +16293,9 @@ i32.const 3 i32.const 2816 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 1 i32.const 3 i32.const 4 @@ -16346,9 +16332,9 @@ i32.const 3 i32.const 2912 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 1 i32.const 2 i32.const 4 @@ -16385,9 +16371,9 @@ i32.const 3 i32.const 3008 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 0 i32.const -2 i32.const 2147483647 @@ -16424,9 +16410,9 @@ i32.const 3 i32.const 3104 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 0 i32.const -2 i32.const -1 @@ -16463,9 +16449,9 @@ i32.const 3 i32.const 3200 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const -4 i32.const -3 i32.const -2 @@ -16502,9 +16488,9 @@ i32.const 3 i32.const 3296 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const -4 i32.const -3 i32.const -1 @@ -16541,9 +16527,9 @@ i32.const 3 i32.const 3392 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const -4 i32.const -3 i32.const 2147483647 @@ -16576,17 +16562,17 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 42 call $~lib/array/Array#unshift drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 4 i32.ne @@ -16600,9 +16586,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $std/array/internalCapacity i32.const 8 i32.ne @@ -16616,9 +16602,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#__get i32.const 42 @@ -16633,9 +16619,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 1 call $~lib/array/Array#__get i32.const 43 @@ -16650,9 +16636,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2 call $~lib/array/Array#__get i32.const 44 @@ -16667,9 +16653,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 3 call $~lib/array/Array#__get i32.const 45 @@ -16684,17 +16670,17 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 41 call $~lib/array/Array#unshift drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 5 i32.ne @@ -16708,9 +16694,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $std/array/internalCapacity i32.const 8 i32.ne @@ -16724,9 +16710,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#__get i32.const 41 @@ -16741,9 +16727,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 1 call $~lib/array/Array#__get i32.const 42 @@ -16758,9 +16744,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2 call $~lib/array/Array#__get i32.const 43 @@ -16775,9 +16761,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 3 call $~lib/array/Array#__get i32.const 44 @@ -16792,9 +16778,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 4 call $~lib/array/Array#__get i32.const 45 @@ -16809,9 +16795,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $4 + local.tee $1 i32.store - local.get $4 + local.get $1 i32.load offset=12 local.tee $0 i32.const 1 @@ -16824,29 +16810,29 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $1 i32.load offset=4 - local.tee $11 + local.tee $3 i32.load - local.get $11 - local.get $11 + local.get $3 + local.get $3 i32.const 4 i32.add local.get $0 i32.const 1 i32.sub - local.tee $1 + local.tee $0 i32.const 2 i32.shl - local.tee $0 + local.tee $4 call $~lib/memory/memory.copy - local.get $0 - local.get $11 + local.get $3 + local.get $4 i32.add i32.const 0 i32.store - local.get $4 local.get $1 + local.get $0 i32.store offset=12 global.set $std/array/i global.get $std/array/i @@ -16862,9 +16848,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 4 i32.ne @@ -16878,9 +16864,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $std/array/internalCapacity i32.const 8 i32.ne @@ -16894,9 +16880,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#__get i32.const 42 @@ -16911,9 +16897,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 1 call $~lib/array/Array#__get i32.const 43 @@ -16928,9 +16914,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2 call $~lib/array/Array#__get i32.const 44 @@ -16945,9 +16931,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 3 call $~lib/array/Array#__get i32.const 45 @@ -16962,9 +16948,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop global.set $std/array/i global.get $std/array/i @@ -16980,9 +16966,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 3 i32.ne @@ -16996,9 +16982,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $std/array/internalCapacity i32.const 8 i32.ne @@ -17012,9 +16998,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#__get i32.const 42 @@ -17029,9 +17015,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 1 call $~lib/array/Array#__get i32.const 43 @@ -17046,9 +17032,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2 call $~lib/array/Array#__get i32.const 44 @@ -17067,10 +17053,10 @@ i32.const 3 i32.const 3488 call $~lib/rt/__newArray - local.tee $2 + local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 2 i32.const 2147483647 call $~lib/array/Array#slice @@ -17081,12 +17067,12 @@ i32.const 3 i32.const 3536 call $~lib/rt/__newArray - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=8 local.get $0 - local.get $1 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17099,7 +17085,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 2 i32.const 4 call $~lib/array/Array#slice @@ -17110,12 +17096,12 @@ i32.const 3 i32.const 3568 call $~lib/rt/__newArray - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=8 local.get $0 - local.get $1 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17128,7 +17114,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 1 i32.const 5 call $~lib/array/Array#slice @@ -17139,12 +17125,12 @@ i32.const 3 i32.const 3600 call $~lib/rt/__newArray - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=8 local.get $0 - local.get $1 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17157,14 +17143,14 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 0 i32.const 2147483647 call $~lib/array/Array#slice local.tee $0 i32.store offset=16 local.get $0 - local.get $2 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17177,7 +17163,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const -2 i32.const 2147483647 call $~lib/array/Array#slice @@ -17188,12 +17174,12 @@ i32.const 3 i32.const 3648 call $~lib/rt/__newArray - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=8 local.get $0 - local.get $1 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17206,7 +17192,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 2 i32.const -1 call $~lib/array/Array#slice @@ -17217,12 +17203,12 @@ i32.const 3 i32.const 3680 call $~lib/rt/__newArray - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=8 local.get $0 - local.get $1 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17235,7 +17221,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const -3 i32.const -1 call $~lib/array/Array#slice @@ -17246,12 +17232,12 @@ i32.const 3 i32.const 3712 call $~lib/rt/__newArray - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=8 local.get $0 - local.get $1 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17263,7 +17249,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const -1 i32.const -3 call $~lib/array/Array#slice @@ -17281,15 +17267,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 10 i32.const 2147483647 call $~lib/array/Array#slice - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 if i32.const 0 @@ -17305,7 +17291,7 @@ i32.store local.get $1 i32.load offset=4 - local.set $5 + local.set $3 i32.const 0 local.set $0 local.get $1 @@ -17317,37 +17303,37 @@ local.get $1 i32.const 1 i32.shr_u - local.set $4 + local.set $2 local.get $1 i32.const 1 i32.sub - local.set $11 + local.set $1 loop $while-continue|0 local.get $0 - local.get $4 + local.get $2 i32.lt_u if local.get $0 i32.const 2 i32.shl - local.get $5 + local.get $3 i32.add - local.tee $1 + local.tee $4 i32.load - local.set $2 + local.set $7 + local.get $4 local.get $1 - local.get $11 local.get $0 i32.sub i32.const 2 i32.shl - local.get $5 + local.get $3 i32.add - local.tee $1 + local.tee $4 i32.load i32.store - local.get $1 - local.get $2 + local.get $4 + local.get $7 i32.store local.get $0 i32.const 1 @@ -17359,9 +17345,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 3 i32.ne @@ -17375,9 +17361,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $std/array/internalCapacity i32.const 8 i32.ne @@ -17391,9 +17377,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#__get i32.const 44 @@ -17408,9 +17394,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 1 call $~lib/array/Array#__get i32.const 43 @@ -17425,9 +17411,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2 call $~lib/array/Array#__get i32.const 42 @@ -17442,17 +17428,17 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 43 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 44 call $~lib/array/Array#push drop @@ -17462,28 +17448,28 @@ i32.const 6 i32.const 3744 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#reverse - local.tee $2 + local.tee $1 i32.store offset=16 i32.const 0 local.set $0 - local.get $2 + local.get $1 i32.load offset=12 - local.set $1 + local.set $3 loop $for-loop|011 local.get $0 - local.get $1 + local.get $3 i32.lt_s if - local.get $2 + local.get $1 local.get $0 call $~lib/array/Array#__get - local.get $2 + local.get $1 i32.load offset=12 local.get $0 i32.sub @@ -17511,28 +17497,28 @@ i32.const 6 i32.const 3776 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#reverse - local.tee $2 + local.tee $1 i32.store offset=4 i32.const 0 local.set $0 - local.get $2 + local.get $1 i32.load offset=12 - local.set $1 + local.set $3 loop $for-loop|1 local.get $0 - local.get $1 + local.get $3 i32.lt_s if - local.get $2 + local.get $1 local.get $0 call $~lib/array/Array#__get - local.get $2 + local.get $1 i32.load offset=12 local.get $0 i32.sub @@ -17560,28 +17546,28 @@ i32.const 6 i32.const 3808 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#reverse - local.tee $2 + local.tee $1 i32.store offset=12 i32.const 0 local.set $0 - local.get $2 + local.get $1 i32.load offset=12 - local.set $1 + local.set $3 loop $for-loop|2 local.get $0 - local.get $1 + local.get $3 i32.lt_s if - local.get $2 + local.get $1 local.get $0 call $~lib/array/Array#__get - local.get $2 + local.get $1 i32.load offset=12 local.get $0 i32.sub @@ -17609,28 +17595,28 @@ i32.const 9 i32.const 3856 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#reverse - local.tee $2 + local.tee $1 i32.store offset=20 i32.const 0 local.set $0 - local.get $2 + local.get $1 i32.load offset=12 - local.set $1 + local.set $3 loop $for-loop|3 local.get $0 - local.get $1 + local.get $3 i32.lt_s if - local.get $2 + local.get $1 local.get $0 call $~lib/array/Array#__get - local.get $2 + local.get $1 i32.load offset=12 local.get $0 i32.sub @@ -17658,28 +17644,28 @@ i32.const 9 i32.const 3904 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#reverse - local.tee $2 + local.tee $1 i32.store offset=24 i32.const 0 local.set $0 - local.get $2 + local.get $1 i32.load offset=12 - local.set $1 + local.set $3 loop $for-loop|4 local.get $0 - local.get $1 + local.get $3 i32.lt_s if - local.get $2 + local.get $1 local.get $0 call $~lib/array/Array#__get - local.get $2 + local.get $1 i32.load offset=12 local.get $0 i32.sub @@ -17707,28 +17693,28 @@ i32.const 9 i32.const 3952 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#reverse - local.tee $2 + local.tee $1 i32.store offset=28 i32.const 0 local.set $0 - local.get $2 + local.get $1 i32.load offset=12 - local.set $1 + local.set $3 loop $for-loop|5 local.get $0 - local.get $1 + local.get $3 i32.lt_s if - local.get $2 + local.get $1 local.get $0 call $~lib/array/Array#__get - local.get $2 + local.get $1 i32.load offset=12 local.get $0 i32.sub @@ -17759,11 +17745,11 @@ block $__inlined_func$~lib/array/Array#indexOf local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 0 i32.le_s i32.const 1 - local.get $2 + local.get $3 select if i32.const -1 @@ -17775,7 +17761,7 @@ local.set $1 loop $while-continue|012 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -17817,11 +17803,11 @@ block $__inlined_func$~lib/array/Array#indexOf13 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 0 i32.le_s i32.const 1 - local.get $2 + local.get $3 select if i32.const -1 @@ -17833,7 +17819,7 @@ local.set $1 loop $while-continue|014 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -17877,11 +17863,11 @@ block $__inlined_func$~lib/array/Array#indexOf15 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 0 i32.le_s i32.const 1 - local.get $2 + local.get $3 select if i32.const -1 @@ -17893,7 +17879,7 @@ local.set $1 loop $while-continue|016 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -17937,11 +17923,11 @@ block $__inlined_func$~lib/array/Array#indexOf17 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 100 i32.le_s i32.const 1 - local.get $2 + local.get $3 select if i32.const -1 @@ -17953,7 +17939,7 @@ local.set $1 loop $while-continue|018 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -17995,18 +17981,18 @@ block $__inlined_func$~lib/array/Array#indexOf19 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const -100 i32.le_s i32.const 1 - local.get $2 + local.get $3 select if i32.const -1 local.set $0 br $__inlined_func$~lib/array/Array#indexOf19 end - local.get $2 + local.get $3 i32.const 100 i32.sub local.tee $0 @@ -18021,7 +18007,7 @@ local.set $1 loop $while-continue|020 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -18063,18 +18049,18 @@ block $__inlined_func$~lib/array/Array#indexOf21 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const -2 i32.le_s i32.const 1 - local.get $2 + local.get $3 select if i32.const -1 local.set $0 br $__inlined_func$~lib/array/Array#indexOf21 end - local.get $2 + local.get $3 i32.const 2 i32.sub local.tee $0 @@ -18089,7 +18075,7 @@ local.set $1 loop $while-continue|022 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -18131,18 +18117,18 @@ block $__inlined_func$~lib/array/Array#indexOf23 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const -4 i32.le_s i32.const 1 - local.get $2 + local.get $3 select if i32.const -1 local.set $0 br $__inlined_func$~lib/array/Array#indexOf23 end - local.get $2 + local.get $3 i32.const 4 i32.sub local.tee $0 @@ -18157,7 +18143,7 @@ local.set $1 loop $while-continue|024 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -18201,11 +18187,11 @@ block $__inlined_func$~lib/array/Array#indexOf25 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 0 i32.le_s i32.const 1 - local.get $2 + local.get $3 select if i32.const -1 @@ -18217,7 +18203,7 @@ local.set $1 loop $while-continue|026 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -18261,11 +18247,11 @@ block $__inlined_func$~lib/array/Array#indexOf27 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 1 i32.le_s i32.const 1 - local.get $2 + local.get $3 select if i32.const -1 @@ -18277,7 +18263,7 @@ local.set $1 loop $while-continue|028 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -18321,11 +18307,11 @@ block $__inlined_func$~lib/array/Array#indexOf29 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 2 i32.le_s i32.const 1 - local.get $2 + local.get $3 select if i32.const -1 @@ -18337,7 +18323,7 @@ local.set $1 loop $while-continue|030 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -18377,43 +18363,43 @@ i32.const 10 i32.const 4000 call $~lib/rt/__newArray - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store i32.const 0 local.set $0 i32.const -1 - local.set $2 + local.set $1 block $__inlined_func$~lib/array/Array#indexOf - local.get $1 + local.get $3 i32.load offset=12 - local.tee $11 + local.tee $2 i32.const 0 i32.le_s i32.const 1 - local.get $11 + local.get $2 select br_if $__inlined_func$~lib/array/Array#indexOf - local.get $1 + local.get $3 i32.load offset=4 - local.set $1 + local.set $3 loop $while-continue|010 local.get $0 - local.get $11 + local.get $2 i32.lt_s if local.get $0 - local.tee $2 + local.tee $1 i32.const 2 i32.shl - local.get $1 + local.get $3 i32.add f32.load f32.const nan:0x400000 f32.eq br_if $__inlined_func$~lib/array/Array#indexOf - local.get $2 + local.get $1 i32.const 1 i32.add local.set $0 @@ -18421,9 +18407,9 @@ end end i32.const -1 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 i32.const -1 i32.ne if @@ -18439,43 +18425,43 @@ i32.const 11 i32.const 4032 call $~lib/rt/__newArray - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store i32.const 0 local.set $0 i32.const -1 - local.set $2 + local.set $1 block $__inlined_func$~lib/array/Array#indexOf - local.get $1 + local.get $3 i32.load offset=12 - local.tee $11 + local.tee $2 i32.const 0 i32.le_s i32.const 1 - local.get $11 + local.get $2 select br_if $__inlined_func$~lib/array/Array#indexOf - local.get $1 + local.get $3 i32.load offset=4 - local.set $1 + local.set $3 loop $while-continue|037 local.get $0 - local.get $11 + local.get $2 i32.lt_s if local.get $0 - local.tee $2 + local.tee $1 i32.const 3 i32.shl - local.get $1 + local.get $3 i32.add f64.load f64.const nan:0x8000000000000 f64.eq br_if $__inlined_func$~lib/array/Array#indexOf - local.get $2 + local.get $1 i32.const 1 i32.add local.set $0 @@ -18483,9 +18469,9 @@ end end i32.const -1 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 i32.const -1 i32.ne if @@ -18508,43 +18494,42 @@ global.set $~argumentsLength local.get $0 i32.load offset=12 - local.tee $11 + local.tee $3 local.set $2 i32.const -1 local.set $1 block $__inlined_func$~lib/array/Array#lastIndexOf - local.get $11 + local.get $3 i32.eqz br_if $__inlined_func$~lib/array/Array#lastIndexOf local.get $2 - local.get $11 + local.get $3 i32.add - local.get $11 + local.get $3 i32.const 1 i32.sub local.get $2 local.get $2 - local.get $11 + local.get $3 i32.ge_s select local.get $2 i32.const 0 i32.lt_s select - local.set $2 + local.set $1 local.get $0 i32.load offset=4 - local.set $11 + local.set $3 loop $while-continue|00 - local.get $2 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 - local.tee $1 + local.get $1 i32.const 2 i32.shl - local.get $11 + local.get $3 i32.add i32.load i32.const 2 @@ -18553,7 +18538,7 @@ local.get $1 i32.const 1 i32.sub - local.set $2 + local.set $1 br $while-continue|00 end end @@ -18575,43 +18560,42 @@ global.set $~argumentsLength local.get $0 i32.load offset=12 - local.tee $11 + local.tee $3 local.set $2 i32.const -1 local.set $1 block $__inlined_func$~lib/array/Array#lastIndexOf5 - local.get $11 + local.get $3 i32.eqz br_if $__inlined_func$~lib/array/Array#lastIndexOf5 local.get $2 - local.get $11 + local.get $3 i32.add - local.get $11 + local.get $3 i32.const 1 i32.sub local.get $2 local.get $2 - local.get $11 + local.get $3 i32.ge_s select local.get $2 i32.const 0 i32.lt_s select - local.set $2 + local.set $1 local.get $0 i32.load offset=4 - local.set $11 + local.set $3 loop $while-continue|06 - local.get $2 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 - local.tee $1 + local.get $1 i32.const 2 i32.shl - local.get $11 + local.get $3 i32.add i32.load i32.const 7 @@ -18620,7 +18604,7 @@ local.get $1 i32.const 1 i32.sub - local.set $2 + local.set $1 br $while-continue|06 end end @@ -18645,7 +18629,7 @@ i32.eqz if i32.const -1 - local.set $2 + local.set $1 br $__inlined_func$~lib/array/Array#lastIndexOf7 end local.get $1 @@ -18656,35 +18640,35 @@ i32.const 3 i32.le_s select - local.set $2 + local.set $1 local.get $0 i32.load offset=4 - local.set $1 + local.set $3 loop $while-continue|031 - local.get $2 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $3 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/array/Array#lastIndexOf7 - local.get $2 + local.get $1 i32.const 1 i32.sub - local.set $2 + local.set $1 br $while-continue|031 end end i32.const -1 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 i32.const 3 i32.ne if @@ -18702,7 +18686,7 @@ i32.eqz if i32.const -1 - local.set $2 + local.set $1 br $__inlined_func$~lib/array/Array#lastIndexOf32 end local.get $1 @@ -18713,35 +18697,35 @@ i32.const 2 i32.le_s select - local.set $2 + local.set $1 local.get $0 i32.load offset=4 - local.set $1 + local.set $3 loop $while-continue|033 - local.get $2 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $3 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/array/Array#lastIndexOf32 - local.get $2 + local.get $1 i32.const 1 i32.sub - local.set $2 + local.set $1 br $while-continue|033 end end i32.const -1 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 if i32.const 0 i32.const 1552 @@ -18757,41 +18741,41 @@ i32.eqz if i32.const -1 - local.set $2 + local.set $1 br $__inlined_func$~lib/array/Array#lastIndexOf34 end local.get $1 i32.const 2 i32.sub - local.set $2 + local.set $1 local.get $0 i32.load offset=4 - local.set $1 + local.set $3 loop $while-continue|035 - local.get $2 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $3 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/array/Array#lastIndexOf34 - local.get $2 + local.get $1 i32.const 1 i32.sub - local.set $2 + local.set $1 br $while-continue|035 end end i32.const -1 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 if i32.const 0 i32.const 1552 @@ -18862,11 +18846,11 @@ block $__inlined_func$~lib/array/Array#indexOf39 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 0 i32.le_s i32.const 1 - local.get $2 + local.get $3 select if i32.const -1 @@ -18878,7 +18862,7 @@ local.set $1 loop $while-continue|040 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -18920,11 +18904,11 @@ block $__inlined_func$~lib/array/Array#indexOf41 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 0 i32.le_s i32.const 1 - local.get $2 + local.get $3 select if i32.const -1 @@ -18936,7 +18920,7 @@ local.set $1 loop $while-continue|042 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -18978,11 +18962,11 @@ block $__inlined_func$~lib/array/Array#indexOf43 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 0 i32.le_s i32.const 1 - local.get $2 + local.get $3 select if i32.const -1 @@ -18994,7 +18978,7 @@ local.set $1 loop $while-continue|044 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -19036,11 +19020,11 @@ block $__inlined_func$~lib/array/Array#indexOf45 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 100 i32.le_s i32.const 1 - local.get $2 + local.get $3 select if i32.const -1 @@ -19052,7 +19036,7 @@ local.set $1 loop $while-continue|046 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -19092,18 +19076,18 @@ block $__inlined_func$~lib/array/Array#indexOf47 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const -100 i32.le_s i32.const 1 - local.get $2 + local.get $3 select if i32.const -1 local.set $0 br $__inlined_func$~lib/array/Array#indexOf47 end - local.get $2 + local.get $3 i32.const 100 i32.sub local.tee $0 @@ -19118,7 +19102,7 @@ local.set $1 loop $while-continue|048 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -19158,18 +19142,18 @@ block $__inlined_func$~lib/array/Array#indexOf49 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const -2 i32.le_s i32.const 1 - local.get $2 + local.get $3 select if i32.const -1 local.set $0 br $__inlined_func$~lib/array/Array#indexOf49 end - local.get $2 + local.get $3 i32.const 2 i32.sub local.tee $0 @@ -19184,7 +19168,7 @@ local.set $1 loop $while-continue|050 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -19224,18 +19208,18 @@ block $__inlined_func$~lib/array/Array#indexOf51 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const -4 i32.le_s i32.const 1 - local.get $2 + local.get $3 select if i32.const -1 local.set $0 br $__inlined_func$~lib/array/Array#indexOf51 end - local.get $2 + local.get $3 i32.const 4 i32.sub local.tee $0 @@ -19250,7 +19234,7 @@ local.set $1 loop $while-continue|052 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -19292,11 +19276,11 @@ block $__inlined_func$~lib/array/Array#indexOf53 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 0 i32.le_s i32.const 1 - local.get $2 + local.get $3 select if i32.const -1 @@ -19308,7 +19292,7 @@ local.set $1 loop $while-continue|054 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -19350,11 +19334,11 @@ block $__inlined_func$~lib/array/Array#indexOf55 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 1 i32.le_s i32.const 1 - local.get $2 + local.get $3 select if i32.const -1 @@ -19366,7 +19350,7 @@ local.set $1 loop $while-continue|056 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -19408,11 +19392,11 @@ block $__inlined_func$~lib/array/Array#indexOf57 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 2 i32.le_s i32.const 1 - local.get $2 + local.get $3 select if i32.const -1 @@ -19424,7 +19408,7 @@ local.set $1 loop $while-continue|058 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -19472,11 +19456,11 @@ i32.const 0 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 0 i32.le_s i32.const 1 - local.get $2 + local.get $3 select br_if $__inlined_func$~lib/array/Array#includes drop @@ -19485,7 +19469,7 @@ local.set $1 loop $while-continue|047 local.get $0 - local.get $2 + local.get $3 i32.lt_s if i32.const 1 @@ -19495,11 +19479,11 @@ local.get $1 i32.add f32.load - local.tee $10 + local.tee $6 f32.const nan:0x400000 f32.eq - local.get $10 - local.get $10 + local.get $6 + local.get $6 f32.ne i32.or br_if $__inlined_func$~lib/array/Array#includes @@ -19537,11 +19521,11 @@ i32.const 0 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 0 i32.le_s i32.const 1 - local.get $2 + local.get $3 select br_if $__inlined_func$~lib/array/Array#includes drop @@ -19550,7 +19534,7 @@ local.set $1 loop $while-continue|04859 local.get $0 - local.get $2 + local.get $3 i32.lt_s if i32.const 1 @@ -19560,11 +19544,11 @@ local.get $1 i32.add f64.load - local.tee $8 + local.tee $5 f64.const nan:0x8000000000000 f64.eq - local.get $8 - local.get $8 + local.get $5 + local.get $5 f64.ne i32.or br_if $__inlined_func$~lib/array/Array#includes @@ -19589,18 +19573,18 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 1 i32.const 1 call $~lib/array/Array#splice drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 4 i32.ne @@ -19614,9 +19598,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $std/array/internalCapacity i32.const 8 i32.ne @@ -19630,9 +19614,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#__get i32.const 44 @@ -19647,9 +19631,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 1 call $~lib/array/Array#__get i32.const 42 @@ -19668,27 +19652,27 @@ i32.const 3 i32.const 4176 call $~lib/rt/__newArray - local.tee $2 + local.tee $1 i32.store offset=28 - local.get $2 + local.get $1 i32.const 0 i32.const 2147483647 call $~lib/array/Array#splice - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 3 i32.const 4224 call $~lib/rt/__newArray - local.set $0 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19709,7 +19693,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $2 + local.get $1 local.get $0 i32.const 0 call $std/array/isArraysEqual @@ -19728,27 +19712,27 @@ i32.const 3 i32.const 4304 call $~lib/rt/__newArray - local.tee $2 + local.tee $1 i32.store offset=28 - local.get $2 + local.get $1 i32.const 0 i32.const 0 call $~lib/array/Array#splice - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 0 i32.const 2 i32.const 3 i32.const 4352 call $~lib/rt/__newArray - local.set $0 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19769,7 +19753,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $2 + local.get $1 local.get $0 i32.const 0 call $std/array/isArraysEqual @@ -19788,27 +19772,27 @@ i32.const 3 i32.const 4432 call $~lib/rt/__newArray - local.tee $2 + local.tee $1 i32.store offset=28 - local.get $2 + local.get $1 i32.const 2 i32.const 2147483647 call $~lib/array/Array#splice - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 3 i32.const 2 i32.const 3 i32.const 4480 call $~lib/rt/__newArray - local.set $0 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19829,7 +19813,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $2 + local.get $1 local.get $0 i32.const 0 call $std/array/isArraysEqual @@ -19848,27 +19832,27 @@ i32.const 3 i32.const 4544 call $~lib/rt/__newArray - local.tee $2 + local.tee $1 i32.store offset=28 - local.get $2 + local.get $1 i32.const 2 i32.const 2 call $~lib/array/Array#splice - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 2 i32.const 2 i32.const 3 i32.const 4592 call $~lib/rt/__newArray - local.set $0 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19889,7 +19873,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $2 + local.get $1 local.get $0 i32.const 0 call $std/array/isArraysEqual @@ -19908,27 +19892,27 @@ i32.const 3 i32.const 4656 call $~lib/rt/__newArray - local.tee $2 + local.tee $1 i32.store offset=28 - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $~lib/array/Array#splice - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 1 i32.const 2 i32.const 3 i32.const 4704 call $~lib/rt/__newArray - local.set $0 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19949,7 +19933,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $2 + local.get $1 local.get $0 i32.const 0 call $std/array/isArraysEqual @@ -19968,27 +19952,27 @@ i32.const 3 i32.const 4784 call $~lib/rt/__newArray - local.tee $2 + local.tee $1 i32.store offset=28 - local.get $2 + local.get $1 i32.const -1 i32.const 2147483647 call $~lib/array/Array#splice - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 1 i32.const 2 i32.const 3 i32.const 4832 call $~lib/rt/__newArray - local.set $0 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20009,7 +19993,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $2 + local.get $1 local.get $0 i32.const 0 call $std/array/isArraysEqual @@ -20028,27 +20012,27 @@ i32.const 3 i32.const 4912 call $~lib/rt/__newArray - local.tee $2 + local.tee $1 i32.store offset=28 - local.get $2 + local.get $1 i32.const -2 i32.const 2147483647 call $~lib/array/Array#splice - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 2 i32.const 2 i32.const 3 i32.const 4960 call $~lib/rt/__newArray - local.set $0 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20069,7 +20053,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $2 + local.get $1 local.get $0 i32.const 0 call $std/array/isArraysEqual @@ -20088,27 +20072,27 @@ i32.const 3 i32.const 5024 call $~lib/rt/__newArray - local.tee $2 + local.tee $1 i32.store offset=28 - local.get $2 + local.get $1 i32.const -2 i32.const 1 call $~lib/array/Array#splice - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 1 i32.const 2 i32.const 3 i32.const 5072 call $~lib/rt/__newArray - local.set $0 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20129,7 +20113,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $2 + local.get $1 local.get $0 i32.const 0 call $std/array/isArraysEqual @@ -20148,27 +20132,27 @@ i32.const 3 i32.const 5152 call $~lib/rt/__newArray - local.tee $2 + local.tee $1 i32.store offset=28 - local.get $2 + local.get $1 i32.const -7 i32.const 1 call $~lib/array/Array#splice - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 1 i32.const 2 i32.const 3 i32.const 5200 call $~lib/rt/__newArray - local.set $0 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20189,7 +20173,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $2 + local.get $1 local.get $0 i32.const 0 call $std/array/isArraysEqual @@ -20208,27 +20192,27 @@ i32.const 3 i32.const 5280 call $~lib/rt/__newArray - local.tee $2 + local.tee $1 i32.store offset=28 - local.get $2 + local.get $1 i32.const -2 i32.const -1 call $~lib/array/Array#splice - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 0 i32.const 2 i32.const 3 i32.const 5328 call $~lib/rt/__newArray - local.set $0 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20249,7 +20233,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $2 + local.get $1 local.get $0 i32.const 0 call $std/array/isArraysEqual @@ -20268,27 +20252,27 @@ i32.const 3 i32.const 5408 call $~lib/rt/__newArray - local.tee $2 + local.tee $1 i32.store offset=28 - local.get $2 + local.get $1 i32.const 1 i32.const -2 call $~lib/array/Array#splice - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 0 i32.const 2 i32.const 3 i32.const 5456 call $~lib/rt/__newArray - local.set $0 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20309,7 +20293,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $2 + local.get $1 local.get $0 i32.const 0 call $std/array/isArraysEqual @@ -20328,27 +20312,27 @@ i32.const 3 i32.const 5536 call $~lib/rt/__newArray - local.tee $2 + local.tee $1 i32.store offset=28 - local.get $2 + local.get $1 i32.const 4 i32.const 0 call $~lib/array/Array#splice - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 0 i32.const 2 i32.const 3 i32.const 5584 call $~lib/rt/__newArray - local.set $0 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20369,7 +20353,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $2 + local.get $1 local.get $0 i32.const 0 call $std/array/isArraysEqual @@ -20388,27 +20372,27 @@ i32.const 3 i32.const 5664 call $~lib/rt/__newArray - local.tee $2 + local.tee $1 i32.store offset=28 - local.get $2 + local.get $1 i32.const 7 i32.const 0 call $~lib/array/Array#splice - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 0 i32.const 2 i32.const 3 i32.const 5712 call $~lib/rt/__newArray - local.set $0 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20429,7 +20413,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $2 + local.get $1 local.get $0 i32.const 0 call $std/array/isArraysEqual @@ -20448,27 +20432,27 @@ i32.const 3 i32.const 5792 call $~lib/rt/__newArray - local.tee $2 + local.tee $1 i32.store offset=28 - local.get $2 + local.get $1 i32.const 7 i32.const 5 call $~lib/array/Array#splice - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 0 i32.const 2 i32.const 3 i32.const 5840 call $~lib/rt/__newArray - local.set $0 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20489,7 +20473,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $2 + local.get $1 local.get $0 i32.const 0 call $std/array/isArraysEqual @@ -20537,53 +20521,53 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 5 i32.const 2 i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 i32.store offset=4 - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 local.get $1 + local.get $0 i32.store offset=24 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 2 call $~lib/array/Array#splice - local.tee $0 + local.tee $1 i32.store offset=20 - local.get $0 + local.get $1 i32.load offset=12 i32.const 2 i32.ne @@ -20595,7 +20579,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#__get i32.load @@ -20609,7 +20593,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/array/Array#__get i32.load @@ -20623,7 +20607,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=12 i32.const 3 i32.ne @@ -20635,7 +20619,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.load @@ -20649,7 +20633,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.load @@ -20663,7 +20647,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/array/Array#__get i32.load @@ -20717,69 +20701,69 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i32.const 0 i32.store i32.const 0 local.get $0 i32.load offset=12 - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 i32.const 0 i32.gt_s select local.set $4 - local.get $1 - i32.const 1 local.get $3 + i32.const 1 + local.get $2 local.get $4 i32.sub - local.tee $1 - local.get $1 + local.tee $3 + local.get $3 i32.const 1 i32.gt_s select - local.tee $1 + local.tee $3 i32.const 0 - local.get $1 + local.get $3 i32.const 0 i32.gt_s select - local.tee $5 + local.tee $3 i32.const 2 i32.const 12 i32.const 0 call $~lib/rt/__newArray - local.tee $6 + local.tee $7 i32.store - local.get $6 + local.get $7 i32.load offset=4 local.get $0 i32.load offset=4 - local.tee $2 + local.tee $8 local.get $4 i32.const 2 i32.shl i32.add - local.tee $1 - local.get $5 + local.tee $9 + local.get $3 i32.const 2 i32.shl call $~lib/memory/memory.copy + local.get $2 local.get $3 local.get $4 - local.get $5 i32.add local.tee $4 i32.ne if - local.get $1 + local.get $9 local.get $4 i32.const 2 i32.shl - local.get $2 + local.get $8 i32.add - local.get $3 + local.get $2 local.get $4 i32.sub i32.const 2 @@ -20787,17 +20771,17 @@ call $~lib/memory/memory.copy end local.get $0 + local.get $2 local.get $3 - local.get $5 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $7 i32.store offset=4 - local.get $6 + local.get $7 i32.load offset=12 i32.const 1 i32.ne @@ -20810,7 +20794,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $7 i32.const 0 call $~lib/array/Array#__get local.tee $1 @@ -20864,9 +20848,9 @@ local.get $0 i32.const 1 call $~lib/array/Array#__get - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.eqz if i32.const 6080 @@ -20876,7 +20860,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load i32.const 2 i32.ne @@ -20890,62 +20874,62 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 1 i32.const 1 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2 i32.const 2 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 3 i32.const 3 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $11 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 6144 i32.store offset=8 i32.const 0 local.set $0 - local.get $11 + local.get $1 i32.load offset=12 - local.set $2 + local.set $3 block $__inlined_func$~lib/array/Array#findIndex loop $for-loop|061 - local.get $2 - local.get $11 - i32.load offset=12 - local.tee $1 + local.get $3 local.get $1 + i32.load offset=12 + local.tee $2 local.get $2 + local.get $3 i32.gt_s select local.get $0 i32.gt_s if - local.get $11 + local.get $1 i32.load offset=4 local.get $0 i32.const 2 @@ -20955,7 +20939,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $1 i32.const 6144 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -20982,32 +20966,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $11 + local.tee $3 i32.store - local.get $0 + local.get $1 i32.const 6176 i32.store offset=8 i32.const 0 local.set $0 - local.get $11 + local.get $3 i32.load offset=12 - local.set $2 + local.set $1 block $__inlined_func$~lib/array/Array#findIndex62 loop $for-loop|063 - local.get $2 - local.get $11 + local.get $1 + local.get $3 i32.load offset=12 - local.tee $1 + local.tee $2 local.get $1 local.get $2 - i32.gt_s + i32.lt_s select local.get $0 i32.gt_s if - local.get $11 + local.get $3 i32.load offset=4 local.get $0 i32.const 2 @@ -21017,7 +21001,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $3 i32.const 6176 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21046,32 +21030,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $11 + local.tee $3 i32.store - local.get $0 + local.get $1 i32.const 6208 i32.store offset=8 i32.const 0 local.set $0 - local.get $11 + local.get $3 i32.load offset=12 - local.set $2 + local.set $1 block $__inlined_func$~lib/array/Array#findIndex64 loop $for-loop|065 - local.get $2 - local.get $11 + local.get $1 + local.get $3 i32.load offset=12 - local.tee $1 + local.tee $2 local.get $1 local.get $2 - i32.gt_s + i32.lt_s select local.get $0 i32.gt_s if - local.get $11 + local.get $3 i32.load offset=4 local.get $0 i32.const 2 @@ -21081,7 +21065,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $3 i32.const 6208 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21110,32 +21094,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $11 + local.tee $3 i32.store - local.get $0 + local.get $1 i32.const 6240 i32.store offset=8 i32.const 0 local.set $0 - local.get $11 + local.get $3 i32.load offset=12 - local.set $2 + local.set $1 block $__inlined_func$~lib/array/Array#findIndex66 loop $for-loop|067 - local.get $2 - local.get $11 + local.get $1 + local.get $3 i32.load offset=12 - local.tee $1 + local.tee $2 local.get $1 local.get $2 - i32.gt_s + i32.lt_s select local.get $0 i32.gt_s if - local.get $11 + local.get $3 i32.load offset=4 local.get $0 i32.const 2 @@ -21145,7 +21129,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $3 i32.const 6240 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21175,9 +21159,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 8 i32.ne @@ -21190,32 +21174,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $11 + local.tee $3 i32.store - local.get $0 + local.get $1 i32.const 6272 i32.store offset=8 i32.const 0 local.set $0 - local.get $11 + local.get $3 i32.load offset=12 - local.set $2 + local.set $1 block $__inlined_func$~lib/array/Array#findIndex68 loop $for-loop|069 - local.get $2 - local.get $11 + local.get $1 + local.get $3 i32.load offset=12 - local.tee $1 + local.tee $2 local.get $1 local.get $2 - i32.gt_s + i32.lt_s select local.get $0 i32.gt_s if - local.get $11 + local.get $3 i32.load offset=4 local.get $0 i32.const 2 @@ -21225,7 +21209,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $3 i32.const 6272 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21255,58 +21239,58 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $11 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 6304 i32.store offset=8 i32.const 0 local.set $0 - local.get $11 + local.get $1 i32.load offset=12 - local.set $2 + local.set $3 block $__inlined_func$~lib/array/Array#findIndex70 loop $for-loop|071 - local.get $2 - local.get $11 - i32.load offset=12 - local.tee $1 + local.get $3 local.get $1 + i32.load offset=12 + local.tee $2 local.get $2 + local.get $3 i32.gt_s select local.get $0 i32.gt_s if - local.get $11 + local.get $1 i32.load offset=4 local.get $0 i32.const 2 @@ -21316,7 +21300,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $1 i32.const 6304 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21346,9 +21330,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 2 i32.ne @@ -21362,17 +21346,17 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 3 call $~lib/array/Array#push drop @@ -21382,12 +21366,12 @@ i32.const 3 i32.const 6336 call $~lib/rt/__newArray - local.tee $11 + local.tee $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 6384 i32.store offset=8 - local.get $11 + local.get $3 i32.load offset=12 i32.const 1 i32.sub @@ -21398,7 +21382,7 @@ i32.const 0 i32.ge_s if - local.get $11 + local.get $3 i32.load offset=4 local.get $0 i32.const 2 @@ -21408,7 +21392,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $3 i32.const 6384 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21437,7 +21421,7 @@ global.get $~lib/memory/__stack_pointer i32.const 6416 i32.store offset=8 - local.get $11 + local.get $3 i32.load offset=12 i32.const 1 i32.sub @@ -21448,7 +21432,7 @@ i32.const 0 i32.ge_s if - local.get $11 + local.get $3 i32.load offset=4 local.get $0 i32.const 2 @@ -21458,7 +21442,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $3 i32.const 6416 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21489,7 +21473,7 @@ global.get $~lib/memory/__stack_pointer i32.const 6448 i32.store offset=8 - local.get $11 + local.get $3 i32.load offset=12 i32.const 1 i32.sub @@ -21500,7 +21484,7 @@ i32.const 0 i32.ge_s if - local.get $11 + local.get $3 i32.load offset=4 local.get $0 i32.const 2 @@ -21510,7 +21494,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $3 i32.const 6448 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21541,43 +21525,43 @@ global.get $~lib/memory/__stack_pointer i32.const 6480 i32.store offset=8 - local.get $11 + local.get $3 i32.load offset=12 i32.const 1 i32.sub - local.set $2 + local.set $1 block $__inlined_func$~lib/array/Array#findLastIndex63 loop $for-loop|064 - local.get $2 + local.get $1 i32.const 0 i32.ge_s if - local.get $11 + local.get $3 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $11 + local.get $1 + local.get $3 i32.const 6480 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#findLastIndex63 - local.get $2 + local.get $1 i32.const 1 i32.sub - local.set $2 + local.set $1 br $for-loop|064 end end i32.const -1 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const -1 @@ -21591,55 +21575,55 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $4 + local.tee $0 i32.store - local.get $0 + local.get $1 i32.const 6512 i32.store offset=8 block $__inlined_func$~lib/array/Array#every (result i32) i32.const 0 - local.set $2 - local.get $4 + local.set $1 + local.get $0 i32.load offset=12 - local.set $11 + local.set $3 loop $for-loop|072 - local.get $11 - local.get $4 - i32.load offset=12 - local.tee $0 + local.get $3 local.get $0 - local.get $11 + i32.load offset=12 + local.tee $2 + local.get $2 + local.get $3 i32.gt_s select - local.get $2 + local.get $1 i32.gt_s if - local.get $4 + local.get $0 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $2 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $0 local.get $2 - local.get $4 + local.get $1 + local.get $0 i32.const 6512 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $__inlined_func$~lib/array/Array#every drop - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|072 end end @@ -21655,55 +21639,55 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $4 + local.tee $0 i32.store - local.get $0 + local.get $1 i32.const 6544 i32.store offset=8 block $__inlined_func$~lib/array/Array#every73 (result i32) i32.const 0 - local.set $2 - local.get $4 + local.set $1 + local.get $0 i32.load offset=12 - local.set $11 + local.set $3 loop $for-loop|074 - local.get $11 - local.get $4 - i32.load offset=12 - local.tee $0 + local.get $3 local.get $0 - local.get $11 + i32.load offset=12 + local.tee $2 + local.get $2 + local.get $3 i32.gt_s select - local.get $2 + local.get $1 i32.gt_s if - local.get $4 + local.get $0 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $2 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $0 local.get $2 - local.get $4 + local.get $1 + local.get $0 i32.const 6544 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $__inlined_func$~lib/array/Array#every73 drop - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|074 end end @@ -21718,55 +21702,55 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $4 + local.tee $0 i32.store - local.get $0 + local.get $1 i32.const 6576 i32.store offset=8 block $__inlined_func$~lib/array/Array#every75 (result i32) i32.const 0 - local.set $2 - local.get $4 + local.set $1 + local.get $0 i32.load offset=12 - local.set $11 + local.set $3 loop $for-loop|076 - local.get $11 - local.get $4 - i32.load offset=12 - local.tee $0 + local.get $3 local.get $0 - local.get $11 + i32.load offset=12 + local.tee $2 + local.get $2 + local.get $3 i32.gt_s select - local.get $2 + local.get $1 i32.gt_s if - local.get $4 + local.get $0 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $2 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $0 local.get $2 - local.get $4 + local.get $1 + local.get $0 i32.const 6576 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $__inlined_func$~lib/array/Array#every75 drop - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|076 end end @@ -21783,9 +21767,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 8 i32.ne @@ -21798,55 +21782,55 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $4 + local.tee $0 i32.store - local.get $0 + local.get $1 i32.const 6608 i32.store offset=8 block $__inlined_func$~lib/array/Array#every77 (result i32) i32.const 0 - local.set $2 - local.get $4 + local.set $1 + local.get $0 i32.load offset=12 - local.set $11 + local.set $3 loop $for-loop|078 - local.get $11 - local.get $4 - i32.load offset=12 - local.tee $0 + local.get $3 local.get $0 - local.get $11 + i32.load offset=12 + local.tee $2 + local.get $2 + local.get $3 i32.gt_s select - local.get $2 + local.get $1 i32.gt_s if - local.get $4 + local.get $0 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $2 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $0 local.get $2 - local.get $4 + local.get $1 + local.get $0 i32.const 6608 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $__inlined_func$~lib/array/Array#every77 drop - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|078 end end @@ -21862,81 +21846,81 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $4 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 6640 i32.store offset=8 block $__inlined_func$~lib/array/Array#every79 (result i32) i32.const 0 - local.set $2 - local.get $4 + local.set $1 + local.get $0 i32.load offset=12 - local.set $11 + local.set $3 loop $for-loop|080 - local.get $11 - local.get $4 - i32.load offset=12 - local.tee $0 + local.get $3 local.get $0 - local.get $11 + i32.load offset=12 + local.tee $2 + local.get $2 + local.get $3 i32.gt_s select - local.get $2 + local.get $1 i32.gt_s if - local.get $4 + local.get $0 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $2 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $0 local.get $2 - local.get $4 + local.get $1 + local.get $0 i32.const 6640 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $__inlined_func$~lib/array/Array#every79 drop - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|080 end end @@ -21953,9 +21937,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 2 i32.ne @@ -21969,68 +21953,68 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 3 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $4 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 6672 i32.store offset=8 block $__inlined_func$~lib/array/Array#some (result i32) i32.const 0 - local.set $2 - local.get $4 + local.set $1 + local.get $0 i32.load offset=12 - local.set $11 + local.set $3 loop $for-loop|081 - local.get $11 - local.get $4 - i32.load offset=12 - local.tee $0 + local.get $3 local.get $0 - local.get $11 + i32.load offset=12 + local.tee $2 + local.get $2 + local.get $3 i32.gt_s select - local.get $2 + local.get $1 i32.gt_s if - local.get $4 + local.get $0 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $2 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $0 local.get $2 - local.get $4 + local.get $1 + local.get $0 i32.const 6672 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#some drop - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|081 end end @@ -22046,54 +22030,54 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $4 + local.tee $0 i32.store - local.get $0 + local.get $1 i32.const 6704 i32.store offset=8 block $__inlined_func$~lib/array/Array#some82 (result i32) i32.const 0 - local.set $2 - local.get $4 + local.set $1 + local.get $0 i32.load offset=12 - local.set $11 + local.set $3 loop $for-loop|083 - local.get $11 - local.get $4 - i32.load offset=12 - local.tee $0 + local.get $3 local.get $0 - local.get $11 + i32.load offset=12 + local.tee $2 + local.get $2 + local.get $3 i32.gt_s select - local.get $2 + local.get $1 i32.gt_s if - local.get $4 + local.get $0 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $2 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $0 local.get $2 - local.get $4 + local.get $1 + local.get $0 i32.const 6704 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#some82 drop - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|083 end end @@ -22108,54 +22092,54 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $4 + local.tee $0 i32.store - local.get $0 + local.get $1 i32.const 6736 i32.store offset=8 block $__inlined_func$~lib/array/Array#some84 (result i32) i32.const 0 - local.set $2 - local.get $4 + local.set $1 + local.get $0 i32.load offset=12 - local.set $11 + local.set $3 loop $for-loop|085 - local.get $11 - local.get $4 - i32.load offset=12 - local.tee $0 + local.get $3 local.get $0 - local.get $11 + i32.load offset=12 + local.tee $2 + local.get $2 + local.get $3 i32.gt_s select - local.get $2 + local.get $1 i32.gt_s if - local.get $4 + local.get $0 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $2 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $0 local.get $2 - local.get $4 + local.get $1 + local.get $0 i32.const 6736 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#some84 drop - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|085 end end @@ -22171,9 +22155,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 8 i32.ne @@ -22186,54 +22170,54 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $4 + local.tee $0 i32.store - local.get $0 + local.get $1 i32.const 6768 i32.store offset=8 block $__inlined_func$~lib/array/Array#some86 (result i32) i32.const 0 - local.set $2 - local.get $4 + local.set $1 + local.get $0 i32.load offset=12 - local.set $11 + local.set $3 loop $for-loop|087 - local.get $11 - local.get $4 - i32.load offset=12 - local.tee $0 + local.get $3 local.get $0 - local.get $11 + i32.load offset=12 + local.tee $2 + local.get $2 + local.get $3 i32.gt_s select - local.get $2 + local.get $1 i32.gt_s if - local.get $4 + local.get $0 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $2 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $0 local.get $2 - local.get $4 + local.get $1 + local.get $0 i32.const 6768 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#some86 drop - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|087 end end @@ -22250,80 +22234,80 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $4 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 6800 i32.store offset=8 block $__inlined_func$~lib/array/Array#some88 (result i32) i32.const 0 - local.set $2 - local.get $4 + local.set $1 + local.get $0 i32.load offset=12 - local.set $11 + local.set $3 loop $for-loop|089 - local.get $11 - local.get $4 - i32.load offset=12 - local.tee $0 + local.get $3 local.get $0 - local.get $11 + i32.load offset=12 + local.tee $2 + local.get $2 + local.get $3 i32.gt_s select - local.get $2 + local.get $1 i32.gt_s if - local.get $4 + local.get $0 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $2 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $0 local.get $2 - local.get $4 + local.get $1 + local.get $0 i32.const 6800 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#some88 drop - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|089 end end @@ -22339,9 +22323,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 2 i32.ne @@ -22355,17 +22339,17 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 3 call $~lib/array/Array#push drop @@ -22373,46 +22357,46 @@ global.set $std/array/i global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $11 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 6832 i32.store offset=8 i32.const 0 - local.set $2 - local.get $11 - i32.load offset=12 local.set $1 + local.get $0 + i32.load offset=12 + local.set $3 loop $for-loop|06990 - local.get $1 - local.get $11 - i32.load offset=12 - local.tee $0 + local.get $3 local.get $0 - local.get $1 + i32.load offset=12 + local.tee $2 + local.get $2 + local.get $3 i32.gt_s select - local.get $2 + local.get $1 i32.gt_s if - local.get $11 + local.get $0 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $11 + local.get $1 + local.get $0 i32.const 6832 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|06990 end end @@ -22430,48 +22414,48 @@ i32.const 0 global.set $std/array/i global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $11 + local.tee $0 i32.store - local.get $0 + local.get $1 i32.const 6864 i32.store offset=8 i32.const 0 - local.set $2 - local.get $11 - i32.load offset=12 local.set $1 + local.get $0 + i32.load offset=12 + local.set $3 loop $for-loop|07191 - local.get $1 - local.get $11 - i32.load offset=12 - local.tee $0 + local.get $3 local.get $0 - local.get $1 + i32.load offset=12 + local.tee $2 + local.get $2 + local.get $3 i32.gt_s select - local.get $2 + local.get $1 i32.gt_s if - local.get $11 + local.get $0 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $11 + local.get $1 + local.get $0 i32.const 6864 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|07191 end end @@ -22488,9 +22472,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 8 i32.ne @@ -22505,48 +22489,48 @@ i32.const 0 global.set $std/array/i global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $11 + local.tee $0 i32.store - local.get $0 + local.get $1 i32.const 6896 i32.store offset=8 i32.const 0 - local.set $2 - local.get $11 - i32.load offset=12 local.set $1 + local.get $0 + i32.load offset=12 + local.set $3 loop $for-loop|07492 - local.get $1 - local.get $11 - i32.load offset=12 - local.tee $0 + local.get $3 local.get $0 - local.get $1 + i32.load offset=12 + local.tee $2 + local.get $2 + local.get $3 i32.gt_s select - local.get $2 + local.get $1 i32.gt_s if - local.get $11 + local.get $0 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $11 + local.get $1 + local.get $0 i32.const 6896 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|07492 end end @@ -22563,76 +22547,76 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop i32.const 0 global.set $std/array/i global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $11 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 6928 i32.store offset=8 i32.const 0 - local.set $2 - local.get $11 - i32.load offset=12 local.set $1 + local.get $0 + i32.load offset=12 + local.set $3 loop $for-loop|07693 - local.get $1 - local.get $11 - i32.load offset=12 - local.tee $0 + local.get $3 local.get $0 - local.get $1 + i32.load offset=12 + local.tee $2 + local.get $2 + local.get $3 i32.gt_s select - local.get $2 + local.get $1 i32.gt_s if - local.get $11 + local.get $0 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $11 + local.get $1 + local.get $0 i32.const 6928 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|07693 end end @@ -22649,9 +22633,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 2 i32.ne @@ -22665,70 +22649,70 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 3 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $11 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 6960 i32.store offset=8 i32.const 0 - local.set $2 - local.get $11 - i32.load offset=12 local.set $1 + local.get $0 + i32.load offset=12 + local.set $3 loop $for-loop|079 - local.get $1 - local.get $11 - i32.load offset=12 - local.tee $0 + local.get $3 local.get $0 - local.get $1 + i32.load offset=12 + local.tee $2 + local.get $2 + local.get $3 i32.gt_s select - local.get $2 + local.get $1 i32.gt_s if - local.get $11 + local.get $0 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $11 + local.get $1 + local.get $0 i32.const 6960 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|079 end end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 100 i32.ne @@ -22763,46 +22747,46 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 1 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 3 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $3 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 6992 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -22812,59 +22796,59 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i32.const 0 i32.store + local.get $2 local.get $0 - local.get $3 i32.load offset=12 - local.tee $5 + local.tee $2 i32.const 2 i32.const 10 i32.const 0 call $~lib/rt/__newArray - local.tee $6 + local.tee $4 i32.store - local.get $6 + local.get $4 i32.load offset=4 - local.set $11 + local.set $7 loop $for-loop|08195 - local.get $5 - local.get $3 - i32.load offset=12 - local.tee $0 + local.get $2 local.get $0 - local.get $5 - i32.gt_s - select + i32.load offset=12 + local.tee $8 local.get $2 + local.get $8 + i32.lt_s + select + local.get $1 i32.gt_s if - local.get $2 + local.get $1 i32.const 2 i32.shl - local.tee $1 - local.get $3 + local.tee $8 + local.get $0 i32.load offset=4 i32.add i32.load - local.set $0 + local.set $9 i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $11 + local.get $7 + local.get $8 i32.add + local.get $9 + local.get $1 local.get $0 - local.get $2 - local.get $3 i32.const 6992 i32.load call_indirect $0 (type $i32_i32_i32_=>_f32) f32.store - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|08195 end end @@ -22872,9 +22856,9 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.store offset=12 - local.get $6 + local.get $4 i32.load offset=12 i32.const 4 i32.ne @@ -22886,19 +22870,19 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $4 i32.const 0 call $~lib/array/Array#__get - local.set $10 + local.set $6 global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#__get f32.convert_i32_s - local.get $10 + local.get $6 f32.ne if i32.const 0 @@ -22934,9 +22918,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 8 i32.ne @@ -22974,42 +22958,42 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop i32.const 0 global.set $std/array/i global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 7088 i32.store offset=8 - local.get $0 + local.get $1 i32.const 7088 call $~lib/array/Array#map global.get $std/array/i @@ -23025,9 +23009,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 2 i32.ne @@ -23041,34 +23025,34 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 3 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 7120 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 7120 call $~lib/array/Array#filter - local.tee $0 + local.tee $1 i32.store offset=12 - local.get $0 + local.get $1 i32.load offset=12 i32.const 2 i32.ne @@ -23107,9 +23091,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 8 i32.ne @@ -23148,42 +23132,42 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop i32.const 0 global.set $std/array/i global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 7216 i32.store offset=8 - local.get $0 + local.get $1 i32.const 7216 call $~lib/array/Array#filter drop @@ -23200,9 +23184,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 2 i32.ne @@ -23216,72 +23200,72 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 3 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $11 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer i32.const 7248 i32.store offset=8 i32.const 0 - local.set $4 + local.set $0 i32.const 0 - local.set $2 - local.get $11 - i32.load offset=12 local.set $1 + local.get $3 + i32.load offset=12 + local.set $2 loop $for-loop|096 - local.get $1 - local.get $11 + local.get $2 + local.get $3 i32.load offset=12 - local.tee $0 - local.get $0 - local.get $1 - i32.gt_s - select + local.tee $4 local.get $2 + local.get $4 + i32.lt_s + select + local.get $1 i32.gt_s if - local.get $11 + local.get $3 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $4 i32.const 4 global.set $~argumentsLength - local.get $4 local.get $0 - local.get $2 - local.get $11 + local.get $4 + local.get $1 + local.get $3 i32.const 7248 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $4 - local.get $2 + local.set $0 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|096 end end - local.get $4 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 6 @@ -23295,58 +23279,58 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $11 + local.tee $3 i32.store - local.get $0 + local.get $1 i32.const 7280 i32.store offset=8 i32.const 4 - local.set $4 + local.set $0 i32.const 0 - local.set $2 - local.get $11 - i32.load offset=12 local.set $1 + local.get $3 + i32.load offset=12 + local.set $2 loop $for-loop|098 - local.get $1 - local.get $11 + local.get $2 + local.get $3 i32.load offset=12 - local.tee $0 - local.get $0 - local.get $1 - i32.gt_s - select + local.tee $4 local.get $2 + local.get $4 + i32.lt_s + select + local.get $1 i32.gt_s if - local.get $11 + local.get $3 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $4 i32.const 4 global.set $~argumentsLength - local.get $4 local.get $0 - local.get $2 - local.get $11 + local.get $4 + local.get $1 + local.get $3 i32.const 7280 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $4 - local.get $2 + local.set $0 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|098 end end - local.get $4 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 10 @@ -23360,58 +23344,58 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $11 + local.tee $3 i32.store - local.get $0 + local.get $1 i32.const 7312 i32.store offset=8 i32.const 0 - local.set $4 + local.set $0 i32.const 0 - local.set $2 - local.get $11 - i32.load offset=12 local.set $1 + local.get $3 + i32.load offset=12 + local.set $2 loop $for-loop|0100 - local.get $1 - local.get $11 + local.get $2 + local.get $3 i32.load offset=12 - local.tee $0 - local.get $0 - local.get $1 - i32.gt_s - select + local.tee $4 local.get $2 + local.get $4 + i32.lt_s + select + local.get $1 i32.gt_s if - local.get $11 + local.get $3 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $4 i32.const 4 global.set $~argumentsLength - local.get $4 local.get $0 - local.get $2 - local.get $11 + local.get $4 + local.get $1 + local.get $3 i32.const 7312 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $4 - local.get $2 + local.set $0 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|0100 end end - local.get $4 + local.get $0 i32.eqz if i32.const 0 @@ -23422,58 +23406,58 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $11 + local.tee $3 i32.store - local.get $0 + local.get $1 i32.const 7344 i32.store offset=8 i32.const 0 - local.set $4 + local.set $0 i32.const 0 - local.set $2 - local.get $11 - i32.load offset=12 local.set $1 + local.get $3 + i32.load offset=12 + local.set $2 loop $for-loop|0102 - local.get $1 - local.get $11 + local.get $2 + local.get $3 i32.load offset=12 - local.tee $0 - local.get $0 - local.get $1 - i32.gt_s - select + local.tee $4 local.get $2 + local.get $4 + i32.lt_s + select + local.get $1 i32.gt_s if - local.get $11 + local.get $3 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $4 i32.const 4 global.set $~argumentsLength - local.get $4 local.get $0 - local.get $2 - local.get $11 + local.get $4 + local.get $1 + local.get $3 i32.const 7344 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $4 - local.get $2 + local.set $0 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|0102 end end - local.get $4 + local.get $0 if i32.const 0 i32.const 1552 @@ -23483,58 +23467,58 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $11 + local.tee $3 i32.store - local.get $0 + local.get $1 i32.const 7376 i32.store offset=8 i32.const 0 - local.set $4 + local.set $0 i32.const 0 - local.set $2 - local.get $11 - i32.load offset=12 local.set $1 + local.get $3 + i32.load offset=12 + local.set $2 loop $for-loop|0104 - local.get $1 - local.get $11 + local.get $2 + local.get $3 i32.load offset=12 - local.tee $0 - local.get $0 - local.get $1 - i32.gt_s - select + local.tee $4 local.get $2 + local.get $4 + i32.lt_s + select + local.get $1 i32.gt_s if - local.get $11 + local.get $3 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $4 i32.const 4 global.set $~argumentsLength - local.get $4 local.get $0 - local.get $2 - local.get $11 + local.get $4 + local.get $1 + local.get $3 i32.const 7376 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $4 - local.get $2 + local.set $0 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|0104 end end - local.get $4 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 6 @@ -23549,9 +23533,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 8 i32.ne @@ -23564,58 +23548,58 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $11 + local.tee $3 i32.store - local.get $0 + local.get $1 i32.const 7408 i32.store offset=8 i32.const 0 - local.set $4 + local.set $0 i32.const 0 - local.set $2 - local.get $11 - i32.load offset=12 local.set $1 + local.get $3 + i32.load offset=12 + local.set $2 loop $for-loop|0106 - local.get $1 - local.get $11 + local.get $2 + local.get $3 i32.load offset=12 - local.tee $0 - local.get $0 - local.get $1 - i32.gt_s - select + local.tee $4 local.get $2 + local.get $4 + i32.lt_s + select + local.get $1 i32.gt_s if - local.get $11 + local.get $3 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $4 i32.const 4 global.set $~argumentsLength - local.get $4 local.get $0 - local.get $2 - local.get $11 + local.get $4 + local.get $1 + local.get $3 i32.const 7408 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $4 - local.get $2 + local.set $0 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|0106 end end - local.get $4 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 10 @@ -23630,84 +23614,84 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $11 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer i32.const 7440 i32.store offset=8 i32.const 0 - local.set $4 + local.set $0 i32.const 0 - local.set $2 - local.get $11 - i32.load offset=12 local.set $1 + local.get $3 + i32.load offset=12 + local.set $2 loop $for-loop|0108 - local.get $1 - local.get $11 + local.get $2 + local.get $3 i32.load offset=12 - local.tee $0 - local.get $0 - local.get $1 - i32.gt_s - select + local.tee $4 local.get $2 + local.get $4 + i32.lt_s + select + local.get $1 i32.gt_s if - local.get $11 + local.get $3 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $4 i32.const 4 global.set $~argumentsLength - local.get $4 local.get $0 - local.get $2 - local.get $11 + local.get $4 + local.get $1 + local.get $3 i32.const 7440 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $4 - local.get $2 + local.set $0 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|0108 end end - local.get $4 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 1 @@ -23722,9 +23706,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 2 i32.ne @@ -23738,61 +23722,61 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 3 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $11 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer i32.const 7472 i32.store offset=8 i32.const 0 local.set $0 - local.get $11 + local.get $3 i32.load offset=12 i32.const 1 i32.sub - local.set $2 + local.set $1 loop $for-loop|090 - local.get $2 + local.get $1 i32.const 0 i32.ge_s if - local.get $11 + local.get $3 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $1 local.get $2 - local.get $11 + local.get $1 + local.get $3 i32.const 7472 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $0 - local.get $2 + local.get $1 i32.const 1 i32.sub - local.set $2 + local.set $1 br $for-loop|090 end end @@ -23810,47 +23794,47 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $11 + local.tee $3 i32.store - local.get $0 + local.get $1 i32.const 7504 i32.store offset=8 i32.const 4 local.set $0 - local.get $11 + local.get $3 i32.load offset=12 i32.const 1 i32.sub - local.set $2 + local.set $1 loop $for-loop|092 - local.get $2 + local.get $1 i32.const 0 i32.ge_s if - local.get $11 + local.get $3 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $1 local.get $2 - local.get $11 + local.get $1 + local.get $3 i32.const 7504 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $0 - local.get $2 + local.get $1 i32.const 1 i32.sub - local.set $2 + local.set $1 br $for-loop|092 end end @@ -23868,47 +23852,47 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $11 + local.tee $3 i32.store - local.get $0 + local.get $1 i32.const 7536 i32.store offset=8 i32.const 0 local.set $0 - local.get $11 + local.get $3 i32.load offset=12 i32.const 1 i32.sub - local.set $2 + local.set $1 loop $for-loop|094 - local.get $2 + local.get $1 i32.const 0 i32.ge_s if - local.get $11 + local.get $3 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $1 local.get $2 - local.get $11 + local.get $1 + local.get $3 i32.const 7536 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $0 - local.get $2 + local.get $1 i32.const 1 i32.sub - local.set $2 + local.set $1 br $for-loop|094 end end @@ -23923,47 +23907,47 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $11 + local.tee $3 i32.store - local.get $0 + local.get $1 i32.const 7568 i32.store offset=8 i32.const 0 local.set $0 - local.get $11 + local.get $3 i32.load offset=12 i32.const 1 i32.sub - local.set $2 + local.set $1 loop $for-loop|096109 - local.get $2 + local.get $1 i32.const 0 i32.ge_s if - local.get $11 + local.get $3 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $1 local.get $2 - local.get $11 + local.get $1 + local.get $3 i32.const 7568 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $0 - local.get $2 + local.get $1 i32.const 1 i32.sub - local.set $2 + local.set $1 br $for-loop|096109 end end @@ -23977,47 +23961,47 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $11 + local.tee $3 i32.store - local.get $0 + local.get $1 i32.const 7600 i32.store offset=8 i32.const 0 local.set $0 - local.get $11 + local.get $3 i32.load offset=12 i32.const 1 i32.sub - local.set $2 + local.set $1 loop $for-loop|098110 - local.get $2 + local.get $1 i32.const 0 i32.ge_s if - local.get $11 + local.get $3 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $1 local.get $2 - local.get $11 + local.get $1 + local.get $3 i32.const 7600 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $0 - local.get $2 + local.get $1 i32.const 1 i32.sub - local.set $2 + local.set $1 br $for-loop|098110 end end @@ -24036,9 +24020,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.const 8 i32.ne @@ -24051,47 +24035,47 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $11 + local.tee $3 i32.store - local.get $0 + local.get $1 i32.const 7632 i32.store offset=8 i32.const 0 local.set $0 - local.get $11 + local.get $3 i32.load offset=12 i32.const 1 i32.sub - local.set $2 + local.set $1 loop $for-loop|0101 - local.get $2 + local.get $1 i32.const 0 i32.ge_s if - local.get $11 + local.get $3 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $1 local.get $2 - local.get $11 + local.get $1 + local.get $3 i32.const 7632 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $0 - local.get $2 + local.get $1 i32.const 1 i32.sub - local.set $2 + local.set $1 br $for-loop|0101 end end @@ -24110,73 +24094,73 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $11 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer i32.const 7664 i32.store offset=8 i32.const 0 local.set $0 - local.get $11 + local.get $3 i32.load offset=12 i32.const 1 i32.sub - local.set $2 + local.set $1 loop $for-loop|0103 - local.get $2 + local.get $1 i32.const 0 i32.ge_s if - local.get $11 + local.get $3 i32.load offset=4 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $1 local.get $2 - local.get $11 + local.get $1 + local.get $3 i32.const 7664 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $0 - local.get $2 + local.get $1 i32.const 1 i32.sub - local.set $2 + local.set $1 br $for-loop|0103 end end @@ -24195,9 +24179,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 if i32.const 0 @@ -24209,33 +24193,33 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 1 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 3 call $~lib/array/Array#push drop @@ -24678,7 +24662,7 @@ i32.const 11 i32.const 8112 call $~lib/rt/__newArray - local.tee $4 + local.tee $1 i32.store offset=112 i32.const 0 global.set $~argumentsLength @@ -24709,9 +24693,9 @@ i32.const 8208 i32.store end - local.get $4 + local.get $1 i32.load offset=4 - local.get $4 + local.get $1 i32.load offset=12 local.get $0 call $~lib/util/sort/SORT @@ -24724,45 +24708,45 @@ i32.const 11 i32.const 8240 call $~lib/rt/__newArray - local.set $11 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $3 i32.store offset=8 block $__inlined_func$std/array/isArraysEqual (result i32) i32.const 0 local.set $0 i32.const 0 - local.get $4 + local.get $1 i32.load offset=12 - local.tee $1 - local.get $11 + local.tee $2 + local.get $3 i32.load offset=12 i32.ne br_if $__inlined_func$std/array/isArraysEqual drop i32.const 1 - local.get $4 - local.get $11 + local.get $1 + local.get $3 i32.eq br_if $__inlined_func$std/array/isArraysEqual drop loop $for-loop|038 local.get $0 - local.get $1 + local.get $2 i32.lt_s if - local.get $4 + local.get $1 local.get $0 call $~lib/array/Array#__get - local.tee $8 - local.get $8 + local.tee $5 + local.get $5 f64.ne if (result i32) - local.get $11 + local.get $3 local.get $0 call $~lib/array/Array#__get - local.tee $8 - local.get $8 + local.tee $5 + local.get $5 f64.ne else i32.const 0 @@ -24770,10 +24754,10 @@ i32.eqz if i32.const 0 - local.get $4 + local.get $1 local.get $0 call $~lib/array/Array#__get - local.get $11 + local.get $3 local.get $0 call $~lib/array/Array#__get f64.ne @@ -24908,7 +24892,7 @@ i32.const 3 i32.const 8592 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=124 global.get $~lib/memory/__stack_pointer i32.const 1 @@ -24916,7 +24900,7 @@ i32.const 3 i32.const 8624 call $~lib/rt/__newArray - local.tee $7 + local.tee $3 i32.store offset=128 global.get $~lib/memory/__stack_pointer i32.const 2 @@ -24924,7 +24908,7 @@ i32.const 3 i32.const 8656 call $~lib/rt/__newArray - local.tee $3 + local.tee $2 i32.store offset=132 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -24932,7 +24916,7 @@ i32.const 3 i32.const 8688 call $~lib/rt/__newArray - local.tee $6 + local.tee $4 i32.store offset=136 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -24940,48 +24924,48 @@ i32.const 3 i32.const 8736 call $~lib/rt/__newArray - local.tee $9 + local.tee $1 i32.store offset=140 global.get $~lib/memory/__stack_pointer i32.const 64 call $std/array/createReverseOrderedArray - local.tee $5 + local.tee $7 i32.store offset=144 global.get $~lib/memory/__stack_pointer i32.const 128 call $std/array/createReverseOrderedArray - local.tee $4 + local.tee $8 i32.store offset=148 global.get $~lib/memory/__stack_pointer i32.const 1024 call $std/array/createReverseOrderedArray - local.tee $11 + local.tee $9 i32.store offset=152 global.get $~lib/memory/__stack_pointer i32.const 10000 call $std/array/createReverseOrderedArray - local.tee $2 + local.tee $10 i32.store offset=156 global.get $~lib/memory/__stack_pointer i32.const 512 call $std/array/createRandomOrderedArray - local.tee $0 + local.tee $11 i32.store offset=160 - local.get $1 + local.get $0 call $std/array/assertSortedDefault - local.get $7 + local.get $3 call $std/array/assertSortedDefault i32.const 1 i32.const 2 i32.const 3 i32.const 8816 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $7 - local.get $1 + local.get $3 + local.get $0 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -24993,19 +24977,19 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 call $std/array/assertSortedDefault i32.const 2 i32.const 2 i32.const 3 i32.const 8848 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $3 - local.get $1 + local.get $2 + local.get $0 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -25017,10 +25001,10 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $4 call $std/array/assertSortedDefault - local.get $6 - local.get $9 + local.get $4 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -25032,10 +25016,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $7 call $std/array/assertSortedDefault - local.get $5 - local.get $9 + local.get $7 + local.get $1 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -25047,10 +25031,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $8 call $std/array/assertSortedDefault - local.get $4 - local.get $9 + local.get $8 + local.get $1 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -25062,10 +25046,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $9 call $std/array/assertSortedDefault - local.get $11 local.get $9 + local.get $1 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -25077,10 +25061,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $10 call $std/array/assertSortedDefault - local.get $2 - local.get $9 + local.get $10 + local.get $1 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -25092,12 +25076,12 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $11 call $std/array/assertSortedDefault i32.const 0 - local.set $3 + local.set $2 i32.const 0 - local.set $5 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 24 i32.sub @@ -25107,20 +25091,20 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $0 i64.const 0 i64.store - local.get $4 + local.get $0 i64.const 0 i64.store offset=8 - local.get $4 + local.get $0 i64.const 0 i64.store offset=16 - local.get $4 + local.get $0 global.get $std/array/inputStabArr - local.tee $11 + local.tee $3 i32.store offset=8 - local.get $4 + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -25129,74 +25113,74 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $4 i32.const 0 i32.store i32.const 0 - local.get $11 + local.get $3 i32.load offset=12 - local.tee $2 - local.get $2 + local.tee $7 + local.get $7 i32.const 0 i32.gt_s select - local.set $1 - local.get $0 - local.get $2 - local.get $1 + local.set $8 + local.get $4 + local.get $7 + local.get $8 i32.sub - local.tee $0 + local.tee $4 i32.const 0 - local.get $0 + local.get $4 i32.const 0 i32.gt_s select - local.tee $0 + local.tee $4 i32.const 2 i32.const 20 i32.const 0 call $~lib/rt/__newArray - local.tee $6 + local.tee $7 i32.store - local.get $6 + local.get $7 i32.load offset=4 - local.set $2 - local.get $11 + local.set $9 + local.get $3 i32.load offset=4 - local.get $1 + local.get $8 i32.const 2 i32.shl i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $4 i32.const 2 i32.shl - local.set $0 + local.set $4 loop $while-continue|011 - local.get $0 - local.get $3 - i32.gt_u + local.get $2 + local.get $4 + i32.lt_u if local.get $2 - local.get $3 + local.get $9 i32.add - local.get $1 + local.get $2 local.get $3 i32.add i32.load - local.tee $11 + local.tee $8 i32.store - local.get $11 + local.get $8 if - local.get $6 - local.get $11 + local.get $7 + local.get $8 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 + local.get $2 i32.const 4 i32.add - local.set $3 + local.set $2 br $while-continue|011 end end @@ -25205,80 +25189,80 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $6 + local.tee $3 + local.get $7 i32.store - local.get $0 + local.get $3 i32.const 8880 i32.store offset=4 - local.get $6 + local.get $7 i32.load offset=4 - local.get $6 + local.get $7 i32.load offset=12 i32.const 8880 call $~lib/util/sort/SORT - local.get $4 - local.get $6 + local.get $0 + local.get $7 i32.store offset=12 i32.const 1 - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer global.get $std/array/inputStabArr local.tee $0 i32.store local.get $0 i32.load offset=12 - local.set $1 + local.set $0 loop $for-loop|012 + local.get $0 local.get $1 - local.get $5 i32.gt_s if block $for-break0 global.get $~lib/memory/__stack_pointer - local.get $6 - local.get $5 + local.get $7 + local.get $1 call $~lib/array/Array#__get - local.tee $2 + local.tee $3 i32.store offset=16 global.get $~lib/memory/__stack_pointer global.get $std/array/outputStabArr - local.tee $0 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 - local.get $5 + local.get $4 + local.get $1 call $~lib/array/Array#__get - local.tee $0 + local.tee $4 i32.store offset=20 - local.get $2 + local.get $3 i32.load - local.get $0 + local.get $4 i32.load i32.ne if (result i32) i32.const 1 else - local.get $2 + local.get $3 i32.load offset=4 - local.get $0 + local.get $4 i32.load offset=4 i32.ne end if i32.const 0 - local.set $3 + local.set $2 br $for-break0 end - local.get $5 + local.get $1 i32.const 1 i32.add - local.set $5 + local.set $1 br $for-loop|012 end end end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -25328,7 +25312,7 @@ call $std/array/assertSorted global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -25338,10 +25322,10 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i64.const 0 i64.store - local.get $0 + local.get $3 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -25350,87 +25334,87 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 16 i32.const 26 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i32.store - local.get $4 + local.get $2 i32.const 0 i32.store offset=4 - local.get $4 + local.get $2 i32.const 0 i32.store offset=8 - local.get $4 + local.get $2 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 32 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $4 i32.store offset=4 - local.get $1 + local.get $4 i32.const 0 i32.const 32 call $~lib/memory/memory.fill + local.get $2 local.get $4 - local.get $1 i32.store - local.get $1 + local.get $4 if + local.get $2 local.get $4 - local.get $1 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $2 local.get $4 - local.get $1 i32.store offset=4 - local.get $4 + local.get $2 i32.const 32 i32.store offset=8 - local.get $4 + local.get $2 i32.const 2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 - local.get $4 + local.get $3 + local.get $2 i32.store loop $for-loop|0154 - local.get $2 + local.get $1 i32.const 2 i32.lt_s if global.get $~lib/memory/__stack_pointer i32.const 1 call $~lib/array/Array#constructor - local.tee $0 + local.tee $3 i32.store offset=4 - local.get $0 + local.get $3 i32.const 0 i32.const 1 - local.get $2 + local.get $1 i32.sub call $~lib/array/Array#__set - local.get $4 local.get $2 - local.get $0 + local.get $1 + local.get $3 call $~lib/array/Array<~lib/array/Array>#__set - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|0154 end end @@ -25438,17 +25422,17 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.store offset=156 global.get $~lib/memory/__stack_pointer i32.const 9040 i32.store offset=8 - local.get $4 + local.get $2 i32.const 9040 call $std/array/assertSorted<~lib/array/Array> global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $4 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -25458,10 +25442,10 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i64.const 0 i64.store - local.get $1 + local.get $3 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -25470,65 +25454,65 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i64.const 0 i64.store - local.get $0 + local.get $2 i32.const 16 i32.const 29 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 0 i32.store offset=4 - local.get $0 + local.get $2 i32.const 0 i32.store offset=8 - local.get $0 + local.get $2 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 2048 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $4 i32.store offset=4 - local.get $11 + local.get $4 i32.const 0 i32.const 2048 call $~lib/memory/memory.fill - local.get $0 - local.get $11 + local.get $2 + local.get $4 i32.store - local.get $11 + local.get $4 if - local.get $0 - local.get $11 + local.get $2 + local.get $4 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $11 + local.get $2 + local.get $4 i32.store offset=4 - local.get $0 + local.get $2 i32.const 2048 i32.store offset=8 - local.get $0 + local.get $2 i32.const 512 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $0 + local.get $3 + local.get $2 i32.store loop $for-loop|014 - local.get $4 + local.get $0 i32.const 512 i32.lt_s if @@ -25541,18 +25525,18 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i32.const 0 i32.store - local.get $1 + local.get $3 i32.const 4 i32.const 28 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 511 - local.get $4 + local.get $0 i32.sub i32.store global.get $~lib/memory/__stack_pointer @@ -25560,16 +25544,16 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=4 + local.get $2 local.get $0 - local.get $4 - local.get $1 + local.get $3 call $~lib/array/Array<~lib/array/Array>#__set - local.get $4 + local.get $0 i32.const 1 i32.add - local.set $4 + local.set $0 br $for-loop|014 end end @@ -25577,12 +25561,12 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=156 global.get $~lib/memory/__stack_pointer i32.const 9072 i32.store offset=8 - local.get $0 + local.get $2 i32.const 9072 call $std/array/assertSorted<~lib/array/Array> global.get $~lib/memory/__stack_pointer @@ -25591,7 +25575,7 @@ i32.const 31 i32.const 9264 call $~lib/rt/__newArray - local.tee $0 + local.tee $3 i32.store offset=160 global.get $~lib/memory/__stack_pointer i32.const 7 @@ -25599,12 +25583,12 @@ i32.const 31 i32.const 9312 call $~lib/rt/__newArray - local.tee $5 + local.tee $4 i32.store offset=152 i32.const 1 global.set $~argumentsLength i32.const 0 - local.set $4 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -25627,7 +25611,7 @@ unreachable end i32.const 9360 - local.set $4 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 9360 i32.store @@ -25643,15 +25627,15 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $0 + local.get $3 i32.load offset=4 - local.get $0 + local.get $3 i32.load offset=12 - local.get $4 + local.get $0 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $0 + local.get $3 i32.store block $__inlined_func$std/array/isSorted<~lib/string/String|null> (result i32) local.get $1 @@ -25666,36 +25650,36 @@ i64.const 0 i64.store i32.const 1 - local.set $6 - local.get $0 - i32.load offset=12 local.set $1 + local.get $3 + i32.load offset=12 + local.set $2 loop $for-loop|019 local.get $1 - local.get $6 - i32.gt_s + local.get $2 + i32.lt_s if - local.get $0 - local.get $6 + local.get $3 + local.get $1 i32.const 1 i32.sub call $~lib/array/Array#__get - local.set $11 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $7 i32.store - local.get $0 - local.get $6 + local.get $3 + local.get $1 call $~lib/array/Array#__get - local.set $2 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $8 i32.store offset=4 i32.const 2 global.set $~argumentsLength - local.get $11 - local.get $2 - local.get $4 + local.get $7 + local.get $8 + local.get $0 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 @@ -25708,10 +25692,10 @@ i32.const 0 br $__inlined_func$std/array/isSorted<~lib/string/String|null> end - local.get $6 + local.get $1 i32.const 1 i32.add - local.set $6 + local.set $1 br $for-loop|019 end end @@ -25740,7 +25724,7 @@ global.set $~lib/memory/__stack_pointer block $__inlined_func$std/array/isArraysEqual<~lib/string/String|null> (result i32) i32.const 0 - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -25754,45 +25738,45 @@ i64.store block $folding-inner1 block $folding-inner020 - local.get $0 + local.get $3 i32.load offset=12 local.tee $1 - local.get $5 + local.get $4 i32.load offset=12 i32.ne br_if $folding-inner020 - local.get $0 - local.get $5 + local.get $3 + local.get $4 i32.eq br_if $folding-inner1 loop $for-loop|049 local.get $1 - local.get $3 + local.get $2 i32.gt_s if - local.get $0 local.get $3 + local.get $2 call $~lib/array/Array#__get - local.set $11 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $0 i32.store - local.get $5 - local.get $3 + local.get $4 + local.get $2 call $~lib/array/Array#__get - local.set $2 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $7 i32.store offset=4 - local.get $11 - local.get $2 + local.get $0 + local.get $7 call $~lib/string/String.__eq i32.eqz br_if $folding-inner020 - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 br $for-loop|049 end end @@ -25821,10 +25805,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 - local.set $3 - local.get $0 + local.set $2 + local.get $1 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -25833,17 +25817,17 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.const 400 call $~lib/array/Array<~lib/string/String>#constructor - local.tee $2 + local.tee $1 i32.store loop $for-loop|0155 - local.get $3 + local.get $2 i32.const 400 i32.lt_s if @@ -25851,9 +25835,9 @@ f64.const 32 f64.mul i32.trunc_f64_s - local.set $4 + local.set $8 i32.const 0 - local.set $7 + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -25863,26 +25847,26 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i64.const 0 i64.store - local.get $1 + local.get $3 i32.const 0 i32.store offset=8 i32.const 9232 local.set $0 - local.get $1 + local.get $3 i32.const 9232 i32.store loop $for-loop|00 local.get $4 - local.get $7 - i32.gt_s + local.get $8 + i32.lt_s if local.get $0 - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $11 + local.tee $9 i32.const 7696 i32.store offset=4 call $~lib/math/NativeMath.random @@ -25897,7 +25881,7 @@ f64.mul f64.floor i32.trunc_f64_s - local.set $6 + local.set $10 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -25914,7 +25898,7 @@ i32.load i32.const 1 i32.shr_u - local.get $6 + local.get $10 i32.le_u if global.get $~lib/memory/__stack_pointer @@ -25932,7 +25916,7 @@ local.tee $0 i32.store local.get $0 - local.get $6 + local.get $10 i32.const 1 i32.shl i32.const 7696 @@ -25947,16 +25931,16 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $11 - local.get $1 + local.get $9 + local.get $3 local.get $0 call $~lib/string/String.__concat local.tee $0 i32.store - local.get $7 + local.get $4 i32.const 1 i32.add - local.set $7 + local.set $4 br $for-loop|00 end end @@ -25967,14 +25951,14 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 + local.get $1 local.get $2 - local.get $3 local.get $0 call $~lib/array/Array<~lib/array/Array>#__set - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 br $for-loop|0155 end end @@ -25982,13 +25966,13 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 local.tee $0 i32.store offset=156 i32.const 1 global.set $~argumentsLength i32.const 0 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -26011,13 +25995,13 @@ unreachable end i32.const 9392 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 9392 i32.store end local.get $0 - local.get $2 + local.get $1 call $std/array/assertSorted<~lib/array/Array> global.get $~lib/memory/__stack_pointer i32.const 4 @@ -26028,25 +26012,25 @@ i32.const 35 i32.const 9424 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $0 + local.tee $3 + local.get $1 i32.store offset=164 - local.get $2 + local.get $3 i32.const 9520 i32.store offset=168 - local.get $0 + local.get $1 i32.load offset=4 - local.set $6 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 local.set $1 i32.const 0 local.set $0 i32.const 0 - local.set $7 - local.get $2 + local.set $4 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -26070,7 +26054,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $2 + local.set $1 br $__inlined_func$~lib/util/string/joinBooleanArray end block $folding-inner01 @@ -26079,10 +26063,10 @@ if i32.const 9456 i32.const 9488 - local.get $6 + local.get $2 i32.load8_u select - local.set $2 + local.set $1 br $folding-inner01 end global.get $~lib/memory/__stack_pointer @@ -26091,107 +26075,107 @@ i32.load i32.const 1 i32.shr_u - local.tee $5 + local.tee $7 i32.const 5 i32.add i32.mul i32.const 5 i32.add - local.tee $11 + local.tee $8 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store loop $for-loop|13 local.get $3 - local.get $7 + local.get $4 i32.gt_s if - local.get $6 - local.get $7 + local.get $2 + local.get $4 i32.add i32.load8_u - local.tee $1 + local.tee $9 i32.eqz i32.const 4 i32.add - local.set $4 + local.set $10 local.get $0 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.add i32.const 9456 i32.const 9488 - local.get $1 + local.get $9 select - local.get $4 + local.get $10 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $4 + local.get $10 i32.add local.set $0 - local.get $5 + local.get $7 if local.get $0 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.add i32.const 9520 - local.get $5 + local.get $7 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $5 + local.get $7 i32.add local.set $0 end - local.get $7 + local.get $4 i32.const 1 i32.add - local.set $7 + local.set $4 br $for-loop|13 end end + local.get $2 local.get $3 - local.get $6 i32.add i32.load8_u - local.tee $1 + local.tee $3 i32.eqz i32.const 4 i32.add - local.set $4 + local.set $2 local.get $0 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.add i32.const 9456 i32.const 9488 - local.get $1 + local.get $3 select - local.get $4 + local.get $2 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $11 + local.get $8 local.get $0 - local.get $4 + local.get $2 i32.add local.tee $0 i32.gt_s if - local.get $2 + local.get $1 local.get $0 call $~lib/string/String#substring - local.set $2 + local.set $1 br $folding-inner01 end global.get $~lib/memory/__stack_pointer @@ -26207,12 +26191,12 @@ end global.get $~lib/memory/__stack_pointer local.tee $0 - local.get $2 + local.get $1 i32.store local.get $0 i32.const 9552 i32.store offset=8 - local.get $2 + local.get $1 i32.const 9552 call $~lib/string/String.__eq i32.eqz @@ -26240,14 +26224,14 @@ local.get $1 i32.const 9232 call $~lib/array/Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 11408 i32.store offset=8 - local.get $0 + local.get $1 i32.const 11408 call $~lib/string/String.__eq i32.eqz @@ -26275,14 +26259,14 @@ local.get $1 i32.const 11472 call $~lib/array/Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 11408 i32.store offset=8 - local.get $0 + local.get $1 i32.const 11408 call $~lib/string/String.__eq i32.eqz @@ -26310,14 +26294,14 @@ local.get $1 i32.const 11536 call $~lib/array/Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 11568 i32.store offset=8 - local.get $0 + local.get $1 i32.const 11568 call $~lib/string/String.__eq i32.eqz @@ -26344,14 +26328,14 @@ i32.store offset=168 local.get $1 call $~lib/array/Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 12896 i32.store offset=8 - local.get $0 + local.get $1 i32.const 12896 call $~lib/string/String.__eq i32.eqz @@ -26379,14 +26363,14 @@ local.get $1 i32.const 9232 call $~lib/array/Array<~lib/string/String|null>#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 13008 i32.store offset=8 - local.get $0 + local.get $1 i32.const 13008 call $~lib/string/String.__eq i32.eqz @@ -26399,48 +26383,48 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 3 i32.const 2 i32.const 12 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=156 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 i32.store offset=152 - local.get $1 + local.get $0 i32.const 0 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 1 i32.const 0 call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 2 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 local.get $1 + local.get $0 i32.store offset=152 global.get $~lib/memory/__stack_pointer i32.const 9520 i32.store offset=168 - local.get $1 + local.get $0 call $~lib/array/Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 13136 i32.store offset=8 - local.get $0 + local.get $1 i32.const 13136 call $~lib/string/String.__eq i32.eqz @@ -26453,44 +26437,44 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 2 i32.const 2 i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=156 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 i32.store offset=160 - local.get $1 + local.get $0 i32.const 0 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 1 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 local.get $1 + local.get $0 i32.store offset=160 global.get $~lib/memory/__stack_pointer i32.const 9520 i32.store offset=168 - local.get $1 + local.get $0 call $~lib/array/Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 13232 i32.store offset=8 - local.get $0 + local.get $1 i32.const 13232 call $~lib/string/String.__eq i32.eqz @@ -26508,7 +26492,7 @@ i32.const 3 i32.const 13328 call $~lib/rt/__newArray - local.tee $11 + local.tee $1 i32.store offset=152 global.get $~lib/memory/__stack_pointer i32.const 1 @@ -26524,7 +26508,7 @@ i32.const 3 i32.const 13392 call $~lib/rt/__newArray - local.tee $2 + local.tee $3 i32.store offset=148 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -26532,18 +26516,18 @@ i32.const 3 i32.const 13424 call $~lib/rt/__newArray - local.tee $1 + local.tee $2 i32.store offset=144 - local.get $11 + local.get $1 call $~lib/array/Array#toString - local.set $11 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 9232 i32.store offset=8 - local.get $11 + local.get $1 i32.const 9232 call $~lib/string/String.__eq i32.eqz @@ -26557,15 +26541,15 @@ end local.get $0 call $~lib/array/Array#toString - local.set $11 + local.set $1 global.get $~lib/memory/__stack_pointer local.tee $0 - local.get $11 + local.get $1 i32.store local.get $0 i32.const 13008 i32.store offset=8 - local.get $11 + local.get $1 i32.const 13008 call $~lib/string/String.__eq i32.eqz @@ -26577,17 +26561,17 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 call $~lib/array/Array#toString - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer local.tee $0 - local.get $2 + local.get $1 i32.store local.get $0 i32.const 13472 i32.store offset=8 - local.get $2 + local.get $1 i32.const 13472 call $~lib/string/String.__eq i32.eqz @@ -26599,7 +26583,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 call $~lib/array/Array#toString local.set $1 global.get $~lib/memory/__stack_pointer @@ -26640,23 +26624,23 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 0 i32.store - local.get $2 + local.get $3 i32.const 9520 i32.store local.get $1 i32.load offset=4 - local.set $4 + local.set $2 local.get $1 i32.load offset=12 local.set $1 i32.const 0 local.set $0 i32.const 0 - local.set $7 - local.get $2 + local.set $4 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -26671,7 +26655,7 @@ local.get $1 i32.const 1 i32.sub - local.tee $5 + local.tee $3 i32.const 0 i32.lt_s if @@ -26680,88 +26664,88 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $2 + local.set $1 br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner04 - local.get $5 + local.get $3 i32.eqz if - local.get $4 + local.get $2 i32.load8_s call $~lib/util/number/itoa32 - local.set $2 + local.set $1 br $folding-inner04 end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $3 i32.const 9516 i32.load i32.const 1 i32.shr_u - local.tee $11 + local.tee $7 i32.const 11 i32.add i32.mul i32.const 11 i32.add - local.tee $1 + local.tee $8 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store loop $for-loop|06125 - local.get $5 - local.get $7 + local.get $3 + local.get $4 i32.gt_s if local.get $0 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.add + local.get $2 local.get $4 - local.get $7 i32.add i32.load8_s call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $11 + local.get $7 if local.get $0 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.add i32.const 9520 - local.get $11 + local.get $7 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $11 + local.get $7 i32.add local.set $0 end - local.get $7 + local.get $4 i32.const 1 i32.add - local.set $7 + local.set $4 br $for-loop|06125 end end - local.get $1 + local.get $8 local.get $0 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.add - local.get $4 - local.get $5 + local.get $2 + local.get $3 i32.add i32.load8_s call $~lib/util/number/itoa_buffered @@ -26770,10 +26754,10 @@ local.tee $0 i32.gt_s if - local.get $2 + local.get $1 local.get $0 call $~lib/string/String#substring - local.set $2 + local.set $1 br $folding-inner04 end global.get $~lib/memory/__stack_pointer @@ -26793,12 +26777,12 @@ global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer local.tee $0 - local.get $2 + local.get $1 i32.store local.get $0 i32.const 13584 i32.store offset=8 - local.get $2 + local.get $1 i32.const 13584 call $~lib/string/String.__eq i32.eqz @@ -26829,23 +26813,23 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 0 i32.store - local.get $2 + local.get $3 i32.const 9520 i32.store local.get $1 i32.load offset=4 - local.set $4 + local.set $2 local.get $1 i32.load offset=12 local.set $1 i32.const 0 local.set $0 i32.const 0 - local.set $7 - local.get $2 + local.set $4 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -26860,7 +26844,7 @@ local.get $1 i32.const 1 i32.sub - local.tee $5 + local.tee $3 i32.const 0 i32.lt_s if @@ -26869,92 +26853,92 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $2 + local.set $1 br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner07 - local.get $5 + local.get $3 i32.eqz if - local.get $4 + local.get $2 i32.load16_u call $~lib/util/number/utoa32 - local.set $2 + local.set $1 br $folding-inner07 end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $3 i32.const 9516 i32.load i32.const 1 i32.shr_u - local.tee $11 + local.tee $7 i32.const 10 i32.add i32.mul i32.const 10 i32.add - local.tee $1 + local.tee $8 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store loop $for-loop|09 - local.get $5 - local.get $7 + local.get $3 + local.get $4 i32.gt_s if local.get $0 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.add - local.get $7 + local.get $4 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $11 + local.get $7 if local.get $0 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.add i32.const 9520 - local.get $11 + local.get $7 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $11 + local.get $7 i32.add local.set $0 end - local.get $7 + local.get $4 i32.const 1 i32.add - local.set $7 + local.set $4 br $for-loop|09 end end - local.get $1 + local.get $8 local.get $0 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.add - local.get $5 + local.get $3 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u call $~lib/util/number/itoa_buffered @@ -26963,10 +26947,10 @@ local.tee $0 i32.gt_s if - local.get $2 + local.get $1 local.get $0 call $~lib/string/String#substring - local.set $2 + local.set $1 br $folding-inner07 end global.get $~lib/memory/__stack_pointer @@ -26986,12 +26970,12 @@ global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer local.tee $0 - local.get $2 + local.get $1 i32.store local.get $0 i32.const 13648 i32.store offset=8 - local.get $2 + local.get $1 i32.const 13648 call $~lib/string/String.__eq i32.eqz @@ -27030,18 +27014,18 @@ i32.store local.get $1 call $~lib/array/Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 13744 i32.store offset=8 - local.get $0 + local.get $1 i32.const 13744 call $~lib/string/String.__eq i32.eqz @@ -27080,18 +27064,18 @@ i32.store local.get $1 call $~lib/array/Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 13888 i32.store offset=8 - local.get $0 + local.get $1 i32.const 13888 call $~lib/string/String.__eq i32.eqz @@ -27109,18 +27093,18 @@ i32.const 31 i32.const 14000 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=140 - local.get $0 + local.get $1 call $~lib/array/Array<~lib/string/String|null>#toString - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 14048 i32.store offset=8 - local.get $0 + local.get $1 i32.const 14048 call $~lib/string/String.__eq i32.eqz @@ -27137,20 +27121,20 @@ i32.const 31 i32.const 14160 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=164 - local.get $0 + local.get $1 call $~lib/array/Array<~lib/string/String|null>#toString - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 14208 i32.store offset=8 - local.get $0 + local.get $1 i32.const 14208 call $~lib/string/String.__eq i32.eqz @@ -27163,19 +27147,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 2 i32.const 2 i32.const 26 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=136 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 i32.store offset=160 - local.get $1 + local.get $0 i32.const 0 i32.const 2 i32.const 2 @@ -27183,7 +27167,7 @@ i32.const 14240 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 1 i32.const 2 i32.const 2 @@ -27191,8 +27175,8 @@ i32.const 14272 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 local.get $1 + local.get $0 i32.store offset=160 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -27203,21 +27187,21 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 9520 i32.store - local.get $1 + local.get $0 i32.load offset=4 - local.set $6 - local.get $1 - i32.load offset=12 - local.set $1 - i32.const 0 local.set $2 local.get $0 + i32.load offset=12 + local.set $0 + i32.const 0 + local.set $1 + local.get $3 i32.const 12 i32.sub global.set $~lib/memory/__stack_pointer @@ -27226,17 +27210,17 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i64.const 0 i64.store - local.get $0 + local.get $3 i32.const 0 i32.store offset=8 block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> - local.get $1 + local.get $0 i32.const 1 i32.sub - local.tee $5 + local.tee $3 i32.const 0 i32.lt_s if @@ -27248,17 +27232,17 @@ local.set $0 br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> end - local.get $5 + local.get $3 i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.load - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 if (result i32) - local.get $0 + local.get $1 call $~lib/array/Array#toString else i32.const 9232 @@ -27279,37 +27263,37 @@ i32.load i32.const 1 i32.shr_u - local.set $11 + local.set $4 loop $for-loop|011132 - local.get $2 - local.get $5 + local.get $1 + local.get $3 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 2 i32.shl - local.get $6 + local.get $2 i32.add i32.load - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 if global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 call $~lib/array/Array#toString - local.set $4 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.store offset=8 local.get $0 - local.get $4 + local.get $7 call $~lib/string/String.__concat local.tee $0 i32.store offset=4 end - local.get $11 + local.get $4 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -27318,33 +27302,33 @@ local.tee $0 i32.store offset=4 end - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|011132 end end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $3 i32.const 2 i32.shl - local.get $6 + local.get $2 i32.add i32.load - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 call $~lib/array/Array#toString - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 local.get $0 - local.get $2 + local.get $1 call $~lib/string/String.__concat local.tee $0 i32.store offset=4 @@ -27378,19 +27362,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 2 i32.const 2 i32.const 39 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=136 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 i32.store offset=132 - local.get $1 + local.get $0 i32.const 0 i32.const 2 i32.const 0 @@ -27398,7 +27382,7 @@ i32.const 14352 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 1 i32.const 2 i32.const 0 @@ -27406,8 +27390,8 @@ i32.const 14384 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 local.get $1 + local.get $0 i32.store offset=132 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -27418,21 +27402,21 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 9520 i32.store - local.get $1 + local.get $0 i32.load offset=4 - local.set $6 - local.get $1 - i32.load offset=12 - local.set $1 - i32.const 0 local.set $2 local.get $0 + i32.load offset=12 + local.set $0 + i32.const 0 + local.set $1 + local.get $3 i32.const 12 i32.sub global.set $~lib/memory/__stack_pointer @@ -27441,17 +27425,17 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i64.const 0 i64.store - local.get $0 + local.get $3 i32.const 0 i32.store offset=8 block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> - local.get $1 + local.get $0 i32.const 1 i32.sub - local.tee $5 + local.tee $3 i32.const 0 i32.lt_s if @@ -27463,17 +27447,17 @@ local.set $0 br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> end - local.get $5 + local.get $3 i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.load - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 if (result i32) - local.get $0 + local.get $1 call $~lib/array/Array#toString else i32.const 9232 @@ -27494,37 +27478,37 @@ i32.load i32.const 1 i32.shr_u - local.set $11 + local.set $4 loop $for-loop|013 - local.get $2 - local.get $5 + local.get $1 + local.get $3 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 2 i32.shl - local.get $6 + local.get $2 i32.add i32.load - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 if global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 call $~lib/array/Array#toString - local.set $4 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.store offset=8 local.get $0 - local.get $4 + local.get $7 call $~lib/string/String.__concat local.tee $0 i32.store offset=4 end - local.get $11 + local.get $4 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -27533,33 +27517,33 @@ local.tee $0 i32.store offset=4 end - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|013 end end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $3 i32.const 2 i32.shl - local.get $6 + local.get $2 i32.add i32.load - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 call $~lib/array/Array#toString - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 local.get $0 - local.get $2 + local.get $1 call $~lib/string/String.__concat local.tee $0 i32.store offset=4 @@ -27593,16 +27577,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 1 i32.const 2 i32.const 41 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $0 i32.store offset=136 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.load offset=4 i32.store offset=128 global.get $~lib/memory/__stack_pointer @@ -27611,13 +27595,13 @@ i32.const 40 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $3 i32.store offset=124 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.load offset=4 i32.store offset=120 - local.get $1 + local.get $3 i32.const 0 i32.const 1 i32.const 2 @@ -27625,12 +27609,12 @@ i32.const 14416 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $2 + local.get $0 i32.const 0 - local.get $1 + local.get $3 call $~lib/array/Array#__uset + local.get $1 local.get $0 - local.get $2 i32.store offset=128 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -27641,21 +27625,21 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 9520 i32.store - local.get $2 + local.get $0 i32.load offset=4 - local.set $6 - local.get $2 - i32.load offset=12 - local.set $1 - i32.const 0 local.set $2 local.get $0 + i32.load offset=12 + local.set $0 + i32.const 0 + local.set $1 + local.get $3 i32.const 12 i32.sub global.set $~lib/memory/__stack_pointer @@ -27664,17 +27648,17 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i64.const 0 i64.store - local.get $0 + local.get $3 i32.const 0 i32.store offset=8 block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array<~lib/array/Array>> - local.get $1 + local.get $0 i32.const 1 i32.sub - local.tee $5 + local.tee $3 i32.const 0 i32.lt_s if @@ -27686,17 +27670,17 @@ local.set $0 br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array<~lib/array/Array>> end - local.get $5 + local.get $3 i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.load - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 if (result i32) - local.get $0 + local.get $1 call $~lib/array/Array<~lib/array/Array>#toString else i32.const 9232 @@ -27717,37 +27701,37 @@ i32.load i32.const 1 i32.shr_u - local.set $11 + local.set $4 loop $for-loop|015 - local.get $2 - local.get $5 + local.get $1 + local.get $3 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 2 i32.shl - local.get $6 + local.get $2 i32.add i32.load - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 if global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 call $~lib/array/Array<~lib/array/Array>#toString - local.set $4 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.store offset=8 local.get $0 - local.get $4 + local.get $7 call $~lib/string/String.__concat local.tee $0 i32.store offset=4 end - local.get $11 + local.get $4 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -27756,33 +27740,33 @@ local.tee $0 i32.store offset=4 end - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|015 end end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $3 i32.const 2 i32.shl - local.get $6 + local.get $2 i32.add i32.load - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 call $~lib/array/Array<~lib/array/Array>#toString - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 local.get $0 - local.get $2 + local.get $1 call $~lib/string/String.__concat local.tee $0 i32.store offset=4 @@ -27816,19 +27800,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 4 i32.const 2 i32.const 26 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=128 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 i32.store offset=132 - local.get $1 + local.get $0 i32.const 0 i32.const 1 i32.const 2 @@ -27836,7 +27820,7 @@ i32.const 14448 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 1 i32.const 3 i32.const 2 @@ -27844,7 +27828,7 @@ i32.const 14480 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 2 i32.const 3 i32.const 2 @@ -27852,7 +27836,7 @@ i32.const 14512 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 3 i32.const 3 i32.const 2 @@ -27860,11 +27844,11 @@ i32.const 14544 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 local.get $1 + local.get $0 i32.store offset=132 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 call $~lib/array/Array<~lib/array/Array>#flat local.tee $1 i32.store offset=128 @@ -27908,19 +27892,19 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 4 i32.const 2 i32.const 42 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=160 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 i32.store offset=140 - local.get $1 + local.get $0 i32.const 0 i32.const 1 i32.const 2 @@ -27928,7 +27912,7 @@ i32.const 14608 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 1 i32.const 3 i32.const 2 @@ -27936,7 +27920,7 @@ i32.const 14704 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 2 i32.const 3 i32.const 2 @@ -27944,7 +27928,7 @@ i32.const 14832 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 3 i32.const 1 i32.const 2 @@ -27952,16 +27936,16 @@ i32.const 14896 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 local.get $1 + local.get $0 i32.store offset=140 global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $2 + local.set $1 i32.const 0 - local.set $7 + local.set $4 i32.const 0 - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -27973,21 +27957,21 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - local.get $1 + local.get $0 i32.load offset=4 - local.set $6 - local.get $1 + local.set $7 + local.get $0 i32.load offset=12 - local.set $5 + local.set $8 loop $for-loop|0137 - local.get $2 - local.get $5 + local.get $1 + local.get $8 i32.lt_s if - local.get $2 + local.get $1 i32.const 2 i32.shl - local.get $6 + local.get $7 i32.add i32.load local.tee $0 @@ -27997,24 +27981,24 @@ else i32.const 0 end - local.get $7 + local.get $4 i32.add - local.set $7 - local.get $2 + local.set $4 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|0137 end end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.const 2 i32.shl - local.tee $2 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $9 i32.store global.get $~lib/memory/__stack_pointer i32.const 16 @@ -28023,86 +28007,86 @@ local.tee $0 i32.store offset=4 local.get $0 - local.get $7 + local.get $4 i32.store offset=12 local.get $0 - local.get $2 + local.get $1 i32.store offset=8 local.get $0 - local.get $1 + local.get $9 i32.store offset=4 local.get $0 - local.get $1 + local.get $9 i32.store - local.get $1 + local.get $9 if local.get $0 - local.get $1 + local.get $9 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end i32.const 0 - local.set $2 + local.set $1 loop $for-loop|1138 - local.get $2 - local.get $5 + local.get $1 + local.get $8 i32.lt_s if - local.get $2 + local.get $1 i32.const 2 i32.shl - local.get $6 + local.get $7 i32.add i32.load - local.tee $11 + local.tee $10 if - local.get $1 - local.get $3 + local.get $2 + local.get $9 i32.add - local.get $11 + local.get $10 i32.load offset=4 - local.get $11 + local.get $10 i32.load offset=12 i32.const 2 i32.shl - local.tee $11 + local.tee $10 call $~lib/memory/memory.copy - local.get $3 - local.get $11 + local.get $2 + local.get $10 i32.add - local.set $3 + local.set $2 end - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|1138 end end i32.const 0 - local.set $2 + local.set $1 loop $for-loop|2139 - local.get $2 - local.get $7 + local.get $1 + local.get $4 i32.lt_s if - local.get $2 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $9 i32.add i32.load - local.tee $11 + local.tee $2 if - local.get $1 - local.get $11 + local.get $9 + local.get $2 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|2139 end end @@ -28119,9 +28103,9 @@ i32.const 31 i32.const 14928 call $~lib/rt/__newArray - local.tee $4 + local.tee $3 i32.store offset=148 - local.get $0 + local.get $1 i32.load offset=12 i32.const 8 i32.ne @@ -28136,7 +28120,7 @@ i32.const 0 local.set $0 loop $for-loop|8 - local.get $4 + local.get $3 i32.load offset=12 local.get $0 i32.gt_s @@ -28144,19 +28128,19 @@ local.get $1 local.get $0 call $~lib/array/Array#__get - local.set $11 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $2 i32.store - local.get $4 + local.get $3 local.get $0 call $~lib/array/Array#__get - local.set $2 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.store offset=8 - local.get $11 local.get $2 + local.get $4 call $~lib/string/String.__eq i32.eqz if @@ -28175,19 +28159,19 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 2 i32.const 2 i32.const 26 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=144 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 i32.store offset=156 - local.get $1 + local.get $0 i32.const 0 i32.const 0 i32.const 2 @@ -28195,7 +28179,7 @@ i32.const 14992 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 1 i32.const 0 i32.const 2 @@ -28203,16 +28187,16 @@ i32.const 15024 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 local.get $1 + local.get $0 i32.store offset=156 - local.get $1 + local.get $0 call $~lib/array/Array<~lib/array/Array>#flat - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 if i32.const 0 @@ -28223,19 +28207,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 2 i32.const 2 i32.const 26 i32.const 0 call $~lib/rt/__newArray - local.tee $7 + local.tee $3 i32.store offset=144 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $3 i32.load offset=4 i32.store offset=152 - local.get $7 + local.get $3 i32.const 0 i32.const 1 i32.const 2 @@ -28243,7 +28227,7 @@ i32.const 15056 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $7 + local.get $3 i32.const 1 i32.const 1 i32.const 2 @@ -28251,8 +28235,8 @@ i32.const 15088 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 - local.get $7 + local.get $1 + local.get $3 i32.store offset=152 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -28269,69 +28253,69 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 - local.get $1 - local.get $7 + local.get $2 + local.get $3 i32.load offset=12 - local.tee $6 + local.tee $2 i32.const 2 i32.const 26 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $4 i32.store - local.get $3 + local.get $4 i32.load offset=4 - local.set $4 + local.set $7 loop $for-loop|0163 - local.get $6 - local.get $7 + local.get $2 + local.get $3 i32.load offset=12 - local.tee $1 - local.get $1 - local.get $6 - i32.gt_s + local.tee $8 + local.get $2 + local.get $8 + i32.lt_s select local.get $0 i32.gt_s if global.get $~lib/memory/__stack_pointer - local.tee $11 + local.tee $8 local.get $0 i32.const 2 i32.shl - local.tee $2 - local.get $7 + local.tee $9 + local.get $3 i32.load offset=4 i32.add i32.load - local.tee $1 + local.tee $10 i32.store offset=4 i32.const 3 global.set $~argumentsLength - local.get $11 - local.get $1 + local.get $8 + local.get $10 local.get $0 - local.get $7 + local.get $3 i32.const 15120 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - local.tee $1 + local.tee $8 i32.store offset=8 - local.get $2 - local.get $4 + local.get $7 + local.get $9 i32.add - local.get $1 + local.get $8 i32.store - local.get $1 + local.get $8 if - local.get $3 - local.get $1 + local.get $4 + local.get $8 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -28347,13 +28331,13 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.store - local.get $3 + local.get $4 call $~lib/array/Array<~lib/array/Array>#flat - local.tee $0 + local.tee $1 i32.store offset=144 - local.get $0 + local.get $1 i32.load offset=12 i32.const 4 i32.ne @@ -28365,7 +28349,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#__get i32.const 1 @@ -28378,7 +28362,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/array/Array#__get i32.const 3 @@ -28391,7 +28375,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/array/Array#__get i32.const 2 @@ -28404,7 +28388,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 call $~lib/array/Array#__get i32.const 3 @@ -28525,7 +28509,7 @@ end local.get $0 i32.load offset=4 - local.set $0 + local.set $4 loop $while-continue|0 local.get $2 local.get $3 @@ -28535,12 +28519,12 @@ local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $4 i32.add i32.load - local.tee $4 + local.tee $0 i32.store - local.get $4 + local.get $0 local.get $1 call $~lib/string/String.__eq if @@ -28591,18 +28575,18 @@ i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 i32.store - local.get $1 + local.get $3 i32.const 0 i32.store offset=4 - local.get $1 + local.get $3 i32.const 0 i32.store offset=8 - local.get $1 + local.get $3 i32.const 0 i32.store offset=12 local.get $0 @@ -28625,39 +28609,39 @@ select i32.const 2 i32.shl - local.tee $3 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $2 + local.get $1 i32.const 0 - local.get $3 + local.get $2 call $~lib/memory/memory.fill + local.get $3 local.get $1 - local.get $2 i32.store - local.get $2 + local.get $1 if + local.get $3 local.get $1 - local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $3 local.get $1 - local.get $2 i32.store offset=4 - local.get $1 local.get $3 + local.get $2 i32.store offset=8 - local.get $1 + local.get $3 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $3 ) (func $std/array/Ref#constructor (param $0 i32) (result i32) (local $1 i32) @@ -28715,46 +28699,46 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $4 i32.const 0 i32.store local.get $0 local.get $1 i32.shl - local.tee $4 - local.set $6 - local.get $4 + local.tee $1 + local.set $5 + local.get $1 i32.const 0 call $~lib/rt/itcms/__new - local.set $1 + local.set $6 local.get $3 if - local.get $1 - local.get $3 local.get $6 + local.get $3 + local.get $5 call $~lib/memory/memory.copy end - local.get $5 - local.get $1 + local.get $4 + local.get $6 i32.store i32.const 16 local.get $2 call $~lib/rt/itcms/__new local.tee $2 - local.get $1 + local.get $6 i32.store - local.get $1 + local.get $6 if local.get $2 - local.get $1 + local.get $6 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $2 - local.get $1 + local.get $6 i32.store offset=4 local.get $2 - local.get $4 + local.get $1 i32.store offset=8 local.get $2 local.get $0 @@ -28830,12 +28814,12 @@ i32.const 0 local.get $1 select - local.tee $3 + local.tee $2 local.get $0 i32.load offset=12 - local.tee $4 + local.tee $3 i32.add - local.tee $2 + local.tee $4 i32.const 268435455 i32.gt_u if @@ -28847,29 +28831,29 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 2 i32.const 3 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $5 i32.store - local.get $2 + local.get $5 i32.load offset=4 - local.tee $5 + local.tee $4 local.get $0 i32.load offset=4 - local.get $4 + local.get $3 i32.const 2 i32.shl local.tee $0 call $~lib/memory/memory.copy local.get $0 - local.get $5 + local.get $4 i32.add local.get $1 i32.load offset=4 - local.get $3 + local.get $2 i32.const 2 i32.shl call $~lib/memory/memory.copy @@ -28877,7 +28861,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $5 ) (func $~lib/array/Array#slice (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -28954,14 +28938,14 @@ i32.const 0 i32.gt_s select - local.tee $3 + local.tee $2 i32.const 2 i32.const 3 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 i32.load offset=4 local.get $0 i32.load offset=4 @@ -28969,7 +28953,7 @@ i32.const 2 i32.shl i32.add - local.get $3 + local.get $2 i32.const 2 i32.shl call $~lib/memory/memory.copy @@ -28977,7 +28961,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 ) (func $~lib/array/Array#splice (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -29007,13 +28991,13 @@ local.get $2 local.get $0 i32.load offset=12 - local.tee $4 + local.tee $3 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $4 + local.get $3 i32.add local.tee $1 i32.const 0 @@ -29023,76 +29007,76 @@ select else local.get $1 - local.get $4 + local.get $3 local.get $1 - local.get $4 + local.get $3 i32.lt_s select end - local.tee $1 + local.tee $4 i32.sub - local.tee $3 + local.tee $1 + local.get $1 local.get $2 - local.get $3 - i32.lt_s + i32.gt_s select - local.tee $2 + local.tee $1 i32.const 0 - local.get $2 + local.get $1 i32.const 0 i32.gt_s select - local.tee $2 + local.tee $5 i32.const 2 i32.const 3 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $6 i32.store - local.get $3 + local.get $6 i32.load offset=4 local.get $0 i32.load offset=4 - local.tee $5 - local.get $1 + local.tee $1 + local.get $4 i32.const 2 i32.shl i32.add - local.tee $6 - local.get $2 + local.tee $2 + local.get $5 i32.const 2 i32.shl call $~lib/memory/memory.copy + local.get $3 local.get $4 - local.get $1 - local.get $2 + local.get $5 i32.add - local.tee $1 + local.tee $4 i32.ne if - local.get $6 - local.get $1 + local.get $2 + local.get $4 i32.const 2 i32.shl - local.get $5 + local.get $1 i32.add + local.get $3 local.get $4 - local.get $1 i32.sub i32.const 2 i32.shl call $~lib/memory/memory.copy end local.get $0 - local.get $4 - local.get $2 + local.get $3 + local.get $5 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $6 ) (func $~lib/array/Array#splice (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -29123,13 +29107,13 @@ i32.const 2 local.get $0 i32.load offset=12 - local.tee $3 + local.tee $2 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $3 + local.get $2 i32.add local.tee $1 i32.const 0 @@ -29139,76 +29123,76 @@ select else local.get $1 - local.get $3 + local.get $2 local.get $1 - local.get $3 + local.get $2 i32.lt_s select end - local.tee $1 + local.tee $5 i32.sub - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.const 2 i32.gt_s select - local.tee $2 + local.tee $1 i32.const 0 - local.get $2 + local.get $1 i32.const 0 i32.gt_s select - local.tee $2 + local.tee $6 i32.const 2 i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $4 + local.tee $1 i32.store - local.get $4 + local.get $1 i32.load offset=4 local.get $0 i32.load offset=4 - local.tee $5 - local.get $1 + local.tee $3 + local.get $5 i32.const 2 i32.shl i32.add - local.tee $6 - local.get $2 + local.tee $4 + local.get $6 i32.const 2 i32.shl call $~lib/memory/memory.copy - local.get $3 - local.get $1 local.get $2 + local.get $5 + local.get $6 i32.add - local.tee $1 + local.tee $5 i32.ne if - local.get $6 - local.get $1 + local.get $4 + local.get $5 i32.const 2 i32.shl - local.get $5 - i32.add local.get $3 - local.get $1 + i32.add + local.get $2 + local.get $5 i32.sub i32.const 2 i32.shl call $~lib/memory/memory.copy end local.get $0 - local.get $3 local.get $2 + local.get $6 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $1 ) (func $~lib/array/Array#__get (param $0 i32) (param $1 i32) (result i32) global.get $~lib/memory/__stack_pointer @@ -29338,59 +29322,59 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 0 i32.store - local.get $2 + local.get $3 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $4 i32.const 2 i32.const 3 i32.const 0 call $~lib/rt/__newArray - local.tee $4 + local.tee $3 i32.store - local.get $4 + local.get $3 i32.load offset=4 - local.set $4 + local.set $5 loop $for-loop|0 - local.get $2 + local.get $4 local.get $0 i32.load offset=12 - local.tee $5 - local.get $2 - local.get $5 - i32.lt_s - select + local.tee $3 local.get $3 + local.get $4 + i32.gt_s + select + local.get $2 i32.gt_s if - local.get $3 + local.get $2 i32.const 2 i32.shl - local.tee $5 + local.tee $6 local.get $0 i32.load offset=4 i32.add i32.load - local.set $6 + local.set $3 i32.const 3 global.set $~argumentsLength - local.get $4 local.get $5 - i32.add local.get $6 + i32.add local.get $3 + local.get $2 local.get $0 local.get $1 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 br $for-loop|0 end end @@ -29420,58 +29404,58 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 0 i32.store - local.get $2 + local.get $3 i32.const 0 i32.const 2 i32.const 3 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $4 i32.store local.get $0 i32.load offset=12 - local.set $5 + local.set $3 loop $for-loop|0 - local.get $5 + local.get $3 local.get $0 i32.load offset=12 - local.tee $3 + local.tee $5 local.get $3 local.get $5 - i32.gt_s + i32.lt_s select - local.get $4 + local.get $2 i32.gt_s if local.get $0 i32.load offset=4 - local.get $4 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $5 i32.const 3 global.set $~argumentsLength - local.get $3 - local.get $4 + local.get $5 + local.get $2 local.get $0 local.get $1 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $2 - local.get $3 + local.get $4 + local.get $5 call $~lib/array/Array#push drop end - local.get $4 + local.get $2 i32.const 1 i32.add - local.set $4 + local.set $2 br $for-loop|0 end end @@ -29479,7 +29463,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $4 ) (func $std/array/Dim#constructor (result i32) (local $0 i32) @@ -29629,31 +29613,31 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store - local.get $1 + local.get $2 local.get $0 call $~lib/array/Array#constructor - local.tee $1 + local.tee $2 i32.store loop $for-loop|0 local.get $0 - local.get $2 + local.get $1 i32.gt_s if - local.get $1 local.get $2 + local.get $1 local.get $0 i32.const 1 i32.sub - local.get $2 + local.get $1 i32.sub call $~lib/array/Array#__set - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|0 end end @@ -29661,7 +29645,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 ) (func $std/array/createRandomOrderedArray (param $0 i32) (result i32) (local $1 i32) @@ -29682,31 +29666,31 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store - local.get $1 + local.get $2 local.get $0 call $~lib/array/Array#constructor - local.tee $1 + local.tee $2 i32.store loop $for-loop|0 local.get $0 - local.get $2 + local.get $1 i32.gt_s if - local.get $1 local.get $2 + local.get $1 call $~lib/math/NativeMath.random local.get $0 f64.convert_i32_s f64.mul i32.trunc_f64_s call $~lib/array/Array#__set - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|0 end end @@ -29714,7 +29698,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 ) (func $~lib/array/Array<~lib/string/String>#constructor (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -29858,26 +29842,26 @@ local.get $2 i32.lt_s select - local.tee $1 - local.get $1 + local.tee $4 local.get $3 - i32.gt_s + local.get $4 + i32.lt_s select i32.const 1 i32.shl - local.set $4 + local.set $1 local.get $3 - local.get $1 - local.get $1 + local.get $4 local.get $3 - i32.lt_s + local.get $4 + i32.gt_s select i32.const 1 i32.shl local.tee $3 - local.get $4 + local.get $1 i32.sub - local.tee $1 + local.tee $4 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -29893,7 +29877,7 @@ i32.shl local.get $3 i32.eq - local.get $4 + local.get $1 select if global.get $~lib/memory/__stack_pointer @@ -29904,16 +29888,16 @@ return end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $4 i32.const 1 call $~lib/rt/itcms/__new local.tee $2 i32.store local.get $2 local.get $0 - local.get $4 - i32.add local.get $1 + i32.add + local.get $4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 @@ -29954,17 +29938,120 @@ return end global.get $~lib/memory/__stack_pointer - i32.const 0 - local.get $0 - i32.sub + i32.const 0 + local.get $0 + i32.sub + local.get $0 + local.get $0 + i32.const 31 + i32.shr_u + local.tee $0 + select + local.tee $1 + local.tee $2 + i32.const 100000 + i32.lt_u + if (result i32) + local.get $2 + i32.const 100 + i32.lt_u + if (result i32) + local.get $2 + i32.const 10 + i32.ge_u + i32.const 1 + i32.add + else + local.get $2 + i32.const 10000 + i32.ge_u + i32.const 3 + i32.add + local.get $2 + i32.const 1000 + i32.ge_u + i32.add + end + else + local.get $2 + i32.const 10000000 + i32.lt_u + if (result i32) + local.get $2 + i32.const 1000000 + i32.ge_u + i32.const 6 + i32.add + else + local.get $2 + i32.const 1000000000 + i32.ge_u + i32.const 8 + i32.add + local.get $2 + i32.const 100000000 + i32.ge_u + i32.add + end + end + local.get $0 + i32.add + local.tee $2 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $3 + i32.store + local.get $3 + local.get $1 + local.get $2 + call $~lib/util/number/utoa32_dec_lut + local.get $0 + if + local.get $3 + i32.const 45 + i32.store16 + end + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $3 + ) + (func $~lib/util/number/utoa32 (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 15652 + i32.lt_s + if + i32.const 32064 + i32.const 32112 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store + local.get $0 + i32.eqz + if + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + i32.const 9824 + return + end + global.get $~lib/memory/__stack_pointer local.get $0 - local.get $0 - i32.const 31 - i32.shr_u - local.tee $1 - select - local.tee $2 - local.tee $0 i32.const 100000 i32.lt_u if (result i32) @@ -30010,126 +30097,22 @@ i32.add end end - local.get $1 - i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 - i32.store - local.get $0 - local.get $2 - local.get $3 - call $~lib/util/number/utoa32_dec_lut - local.get $1 - if - local.get $0 - i32.const 45 - i32.store16 - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $0 - ) - (func $~lib/util/number/utoa32 (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 15652 - i32.lt_s - if - i32.const 32064 - i32.const 32112 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - local.get $0 - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - i32.const 9824 - return - end - global.get $~lib/memory/__stack_pointer - local.get $0 local.tee $1 - i32.const 100000 - i32.lt_u - if (result i32) - local.get $1 - i32.const 100 - i32.lt_u - if (result i32) - local.get $1 - i32.const 10 - i32.ge_u - i32.const 1 - i32.add - else - local.get $1 - i32.const 10000 - i32.ge_u - i32.const 3 - i32.add - local.get $1 - i32.const 1000 - i32.ge_u - i32.add - end - else - local.get $1 - i32.const 10000000 - i32.lt_u - if (result i32) - local.get $1 - i32.const 1000000 - i32.ge_u - i32.const 6 - i32.add - else - local.get $1 - i32.const 1000000000 - i32.ge_u - i32.const 8 - i32.add - local.get $1 - i32.const 100000000 - i32.ge_u - i32.add - end - end - local.tee $0 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $2 i32.store - local.get $2 local.get $1 local.get $0 + local.get $2 call $~lib/util/number/utoa32_dec_lut global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 ) (func $~lib/array/Array<~lib/array/Array>#flat (param $0 i32) (result i32) (local $1 i32) @@ -30158,19 +30141,19 @@ i64.store local.get $0 i32.load offset=4 - local.set $5 + local.set $4 local.get $0 i32.load offset=12 - local.set $6 + local.set $5 loop $for-loop|0 local.get $2 - local.get $6 + local.get $5 i32.lt_s if local.get $2 i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add i32.load local.tee $0 @@ -30197,30 +30180,30 @@ local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $6 i32.store offset=4 - local.get $0 + local.get $6 local.get $3 i32.store offset=12 - local.get $0 + local.get $6 local.get $2 i32.store offset=8 + local.get $6 local.get $0 - local.get $4 i32.store offset=4 + local.get $6 local.get $0 - local.get $4 i32.store - local.get $4 + local.get $0 if + local.get $6 local.get $0 - local.get $4 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -30228,19 +30211,19 @@ local.set $2 loop $for-loop|1 local.get $2 - local.get $6 + local.get $5 i32.lt_s if local.get $2 i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add i32.load local.tee $3 if + local.get $0 local.get $1 - local.get $4 i32.add local.get $3 i32.load offset=4 @@ -30266,7 +30249,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $6 ) (func $export:~lib/array/Array#get:dataStart (param $0 i32) (result i32) (local $1 i32) @@ -30399,30 +30382,30 @@ select i32.const 2 i32.shl - local.tee $3 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $4 i32.store offset=4 - local.get $2 + local.get $4 i32.const 0 - local.get $3 + local.get $2 call $~lib/memory/memory.fill local.get $0 - local.get $2 + local.get $4 i32.store - local.get $2 + local.get $4 if local.get $0 - local.get $2 + local.get $4 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $2 + local.get $4 i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 local.get $0 local.get $1 @@ -30545,27 +30528,27 @@ local.get $3 local.get $0 i32.load offset=12 - local.tee $2 - local.get $2 + local.tee $4 local.get $3 - i32.gt_s - select local.get $4 + i32.lt_s + select + local.get $2 i32.gt_s if local.get $0 i32.load offset=4 - local.get $4 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $4 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $2 local.get $4 + local.get $2 local.get $0 local.get $1 i32.load @@ -30573,10 +30556,10 @@ i32.eqz br_if $__inlined_func$~lib/array/Array#every drop - local.get $4 + local.get $2 i32.const 1 i32.add - local.set $4 + local.set $2 br $for-loop|0 end end @@ -30615,16 +30598,16 @@ i32.store offset=4 local.get $0 i32.load offset=12 - local.set $4 + local.set $3 block $__inlined_func$~lib/array/Array#findIndex loop $for-loop|0 - local.get $4 + local.get $3 local.get $0 i32.load offset=12 - local.tee $3 + local.tee $4 local.get $3 local.get $4 - i32.gt_s + i32.lt_s select local.get $2 i32.gt_s @@ -30819,21 +30802,19 @@ i32.const 2147483647 local.set $3 end - local.get $1 - local.set $4 local.get $0 - local.tee $5 + local.tee $4 i32.load offset=4 - local.set $6 + local.set $5 local.get $0 i32.load offset=12 - local.set $1 + local.set $6 local.get $2 i32.const 0 i32.lt_s if (result i32) - local.get $1 local.get $2 + local.get $6 i32.add local.tee $0 i32.const 0 @@ -30843,10 +30824,10 @@ select else local.get $2 - local.get $1 - local.get $1 + local.get $6 local.get $2 - i32.gt_s + local.get $6 + i32.lt_s select end local.set $0 @@ -30854,35 +30835,35 @@ i32.const 0 i32.lt_s if (result i32) - local.get $1 local.get $3 + local.get $6 i32.add - local.tee $1 + local.tee $2 i32.const 0 - local.get $1 + local.get $2 i32.const 0 i32.gt_s select else local.get $3 - local.get $1 - local.get $1 + local.get $6 local.get $3 - i32.gt_s + local.get $6 + i32.lt_s select end - local.set $1 + local.set $2 loop $for-loop|0 local.get $0 - local.get $1 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $6 + local.get $5 i32.add - local.get $4 + local.get $1 i32.store local.get $0 i32.const 1 @@ -30895,7 +30876,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $4 ) (func $export:~lib/array/Array#includes@varargs (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -31246,12 +31227,12 @@ i32.const 0 local.get $1 select - local.tee $3 + local.tee $2 local.get $0 i32.load offset=12 - local.tee $4 + local.tee $3 i32.add - local.tee $2 + local.tee $4 i32.const 268435455 i32.gt_u if @@ -31263,29 +31244,29 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 2 i32.const 7 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $5 i32.store - local.get $2 + local.get $5 i32.load offset=4 - local.tee $5 + local.tee $4 local.get $0 i32.load offset=4 - local.get $4 + local.get $3 i32.const 2 i32.shl local.tee $0 call $~lib/memory/memory.copy local.get $0 - local.get $5 + local.get $4 i32.add local.get $1 i32.load offset=4 - local.get $3 + local.get $2 i32.const 2 i32.shl call $~lib/memory/memory.copy @@ -31297,7 +31278,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $5 return end i32.const 32064 @@ -31388,13 +31369,13 @@ local.get $1 i32.const 1 i32.sub - local.tee $1 + local.tee $2 i32.const 2 i32.shl i32.add i32.load local.get $0 - local.get $1 + local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -31421,45 +31402,45 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 local.get $0 i32.store - local.get $2 + local.get $3 local.get $1 i32.store offset=4 local.get $0 i32.load offset=12 - local.set $2 + local.set $3 loop $for-loop|0 - local.get $2 + local.get $3 local.get $0 i32.load offset=12 local.tee $4 - local.get $2 + local.get $3 local.get $4 i32.lt_s select - local.get $3 + local.get $2 i32.gt_s if local.get $0 i32.load offset=4 - local.get $3 + local.get $2 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $3 + local.get $2 local.get $0 local.get $1 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 br $for-loop|0 end end @@ -31483,13 +31464,13 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 local.get $0 i32.store - local.get $2 + local.get $3 local.get $1 i32.store offset=4 - local.get $2 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -31498,58 +31479,58 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 0 i32.store - local.get $2 + local.get $3 i32.const 0 i32.const 2 i32.const 7 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $4 i32.store local.get $0 i32.load offset=12 - local.set $5 + local.set $3 loop $for-loop|0 - local.get $5 + local.get $3 local.get $0 i32.load offset=12 - local.tee $3 + local.tee $5 local.get $3 local.get $5 - i32.gt_s + i32.lt_s select - local.get $4 + local.get $2 i32.gt_s if local.get $0 i32.load offset=4 - local.get $4 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $5 i32.const 3 global.set $~argumentsLength - local.get $3 - local.get $4 + local.get $5 + local.get $2 local.get $0 local.get $1 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $2 - local.get $3 + local.get $4 + local.get $5 call $~lib/array/Array#push drop end - local.get $4 + local.get $2 i32.const 1 i32.add - local.set $4 + local.set $2 br $for-loop|0 end end @@ -31561,7 +31542,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $4 return end i32.const 32064 @@ -31596,7 +31577,7 @@ i32.store local.get $0 i32.load offset=12 - local.tee $1 + local.tee $3 i32.const 1 i32.lt_s if @@ -31609,27 +31590,27 @@ end local.get $0 i32.load offset=4 - local.tee $2 + local.tee $1 i32.load - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.const 4 i32.add - local.get $1 + local.get $3 i32.const 1 i32.sub - local.tee $1 + local.tee $4 i32.const 2 i32.shl - local.tee $4 + local.tee $3 call $~lib/memory/memory.copy - local.get $2 - local.get $4 + local.get $1 + local.get $3 i32.add i32.const 0 i32.store local.get $0 - local.get $1 + local.get $4 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -31670,37 +31651,37 @@ local.get $3 local.get $0 i32.load offset=12 - local.tee $2 - local.get $2 + local.tee $4 local.get $3 - i32.gt_s - select local.get $4 + i32.lt_s + select + local.get $2 i32.gt_s if local.get $0 i32.load offset=4 - local.get $4 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $4 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $2 local.get $4 + local.get $2 local.get $0 local.get $1 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#some drop - local.get $4 + local.get $2 i32.const 1 i32.add - local.set $4 + local.set $2 br $for-loop|0 end end @@ -31833,14 +31814,14 @@ i32.const 0 i32.gt_s select - local.tee $3 + local.tee $2 i32.const 2 i32.const 7 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 i32.load offset=4 local.get $0 i32.load offset=4 @@ -31848,7 +31829,7 @@ i32.const 2 i32.shl i32.add - local.get $3 + local.get $2 i32.const 2 i32.shl call $~lib/memory/memory.copy @@ -31860,7 +31841,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 return end i32.const 32064 @@ -31916,13 +31897,13 @@ local.get $2 local.get $0 i32.load offset=12 - local.tee $4 + local.tee $3 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $4 + local.get $3 i32.add local.tee $1 i32.const 0 @@ -31932,69 +31913,69 @@ select else local.get $1 - local.get $4 + local.get $3 local.get $1 - local.get $4 + local.get $3 i32.lt_s select end - local.tee $1 + local.tee $4 i32.sub - local.tee $3 + local.tee $1 + local.get $1 local.get $2 - local.get $3 - i32.lt_s + i32.gt_s select - local.tee $2 + local.tee $1 i32.const 0 - local.get $2 + local.get $1 i32.const 0 i32.gt_s select - local.tee $2 + local.tee $5 i32.const 2 i32.const 7 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $6 i32.store - local.get $3 + local.get $6 i32.load offset=4 local.get $0 i32.load offset=4 - local.tee $5 - local.get $1 + local.tee $1 + local.get $4 i32.const 2 i32.shl i32.add - local.tee $6 - local.get $2 + local.tee $2 + local.get $5 i32.const 2 i32.shl call $~lib/memory/memory.copy + local.get $3 local.get $4 - local.get $1 - local.get $2 + local.get $5 i32.add - local.tee $1 + local.tee $4 i32.ne if - local.get $6 - local.get $1 + local.get $2 + local.get $4 i32.const 2 i32.shl - local.get $5 + local.get $1 i32.add + local.get $3 local.get $4 - local.get $1 i32.sub i32.const 2 i32.shl call $~lib/memory/memory.copy end local.get $0 - local.get $4 - local.get $2 + local.get $3 + local.get $5 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -32005,7 +31986,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $6 return end i32.const 32064 @@ -32042,52 +32023,52 @@ i32.store local.get $0 i32.load offset=4 - local.set $4 + local.set $2 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $4 i32.const 1 i32.gt_u if - local.get $1 + local.get $4 i32.const 1 i32.shr_u - local.set $5 - local.get $1 + local.set $3 + local.get $4 i32.const 1 i32.sub - local.set $1 + local.set $5 loop $while-continue|0 - local.get $2 - local.get $5 + local.get $1 + local.get $3 i32.lt_u if - local.get $2 + local.get $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add - local.tee $3 + local.tee $6 i32.load - local.set $6 - local.get $3 + local.set $4 + local.get $6 + local.get $5 local.get $1 - local.get $2 i32.sub i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add - local.tee $3 + local.tee $6 i32.load i32.store - local.get $3 local.get $6 + local.get $4 i32.store - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $while-continue|0 end end @@ -32346,30 +32327,30 @@ i32.const 8 i32.gt_u select - local.tee $3 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $4 i32.store offset=4 - local.get $2 + local.get $4 i32.const 0 - local.get $3 + local.get $2 call $~lib/memory/memory.fill local.get $0 - local.get $2 + local.get $4 i32.store - local.get $2 + local.get $4 if local.get $0 - local.get $2 + local.get $4 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $2 + local.get $4 i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 local.get $0 local.get $1 @@ -32464,25 +32445,25 @@ local.get $3 local.get $0 i32.load offset=12 - local.tee $2 - local.get $2 + local.tee $4 local.get $3 - i32.gt_s - select local.get $4 + i32.lt_s + select + local.get $2 i32.gt_s if - local.get $4 + local.get $2 local.get $0 i32.load offset=4 i32.add i32.load8_u - local.set $2 + local.set $4 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $2 local.get $4 + local.get $2 local.get $0 local.get $1 i32.load @@ -32490,10 +32471,10 @@ i32.eqz br_if $__inlined_func$~lib/array/Array#every drop - local.get $4 + local.get $2 i32.const 1 i32.add - local.set $4 + local.set $2 br $for-loop|0 end end @@ -32532,16 +32513,16 @@ i32.store offset=4 local.get $0 i32.load offset=12 - local.set $4 + local.set $3 block $__inlined_func$~lib/array/Array#findIndex loop $for-loop|0 - local.get $4 + local.get $3 local.get $0 i32.load offset=12 - local.tee $3 + local.tee $4 local.get $3 local.get $4 - i32.gt_s + i32.lt_s select local.get $2 i32.gt_s @@ -33083,13 +33064,13 @@ i32.store local.get $0 i32.load offset=12 - local.tee $2 + local.tee $4 local.get $1 i32.load offset=12 i32.const 0 local.get $1 select - local.tee $4 + local.tee $2 i32.add local.tee $3 i32.const 1073741820 @@ -33108,21 +33089,21 @@ i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $5 i32.store - local.get $3 + local.get $5 i32.load offset=4 - local.tee $5 + local.tee $3 local.get $0 i32.load offset=4 - local.get $2 + local.get $4 call $~lib/memory/memory.copy - local.get $2 - local.get $5 + local.get $3 + local.get $4 i32.add local.get $1 i32.load offset=4 - local.get $4 + local.get $2 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 @@ -33132,7 +33113,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $5 return end i32.const 32064 @@ -33145,7 +33126,6 @@ (func $export:~lib/array/Array#copyWithin@varargs (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (local $4 i32) (local $5 i32) - (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -33179,35 +33159,34 @@ end local.get $3 local.get $0 - local.tee $4 i32.load offset=12 - local.tee $5 + local.tee $4 local.get $3 - local.get $5 + local.get $4 i32.lt_s select - local.set $6 + local.set $3 local.get $0 i32.load offset=4 - local.tee $3 + local.tee $5 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $5 + local.get $4 i32.add - local.tee $0 + local.tee $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 i32.gt_s select else local.get $1 - local.get $5 + local.get $4 local.get $1 - local.get $5 + local.get $4 i32.lt_s select end @@ -33218,63 +33197,63 @@ i32.lt_s if (result i32) local.get $2 - local.get $5 + local.get $4 i32.add - local.tee $0 + local.tee $2 i32.const 0 - local.get $0 + local.get $2 i32.const 0 i32.gt_s select else local.get $2 - local.get $5 + local.get $4 local.get $2 - local.get $5 + local.get $4 i32.lt_s select end - local.tee $0 - local.get $3 + local.tee $2 + local.get $5 i32.add - local.get $6 + local.get $3 i32.const 0 i32.lt_s if (result i32) - local.get $5 - local.get $6 + local.get $3 + local.get $4 i32.add - local.tee $2 + local.tee $3 i32.const 0 - local.get $2 + local.get $3 i32.const 0 i32.gt_s select else - local.get $6 - local.get $5 - local.get $5 - local.get $6 - i32.gt_s + local.get $3 + local.get $4 + local.get $3 + local.get $4 + i32.lt_s select end - local.get $0 + local.get $2 i32.sub - local.tee $0 - local.get $5 + local.tee $2 + local.get $4 local.get $1 i32.sub local.tee $1 - local.get $0 local.get $1 - i32.lt_s + local.get $2 + i32.gt_s select call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $0 ) (func $export:~lib/array/Array#pop (param $0 i32) (result i32) (local $1 i32) @@ -33313,13 +33292,13 @@ local.get $1 i32.const 1 i32.sub - local.tee $1 + local.tee $2 local.get $0 i32.load offset=4 i32.add i32.load8_u local.get $0 - local.get $1 + local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -33346,43 +33325,43 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 local.get $0 i32.store - local.get $2 + local.get $3 local.get $1 i32.store offset=4 local.get $0 i32.load offset=12 - local.set $2 + local.set $3 loop $for-loop|0 - local.get $2 + local.get $3 local.get $0 i32.load offset=12 local.tee $4 - local.get $2 + local.get $3 local.get $4 i32.lt_s select - local.get $3 + local.get $2 i32.gt_s if - local.get $3 + local.get $2 local.get $0 i32.load offset=4 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength - local.get $3 + local.get $2 local.get $0 local.get $1 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 br $for-loop|0 end end @@ -33406,13 +33385,13 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 local.get $0 i32.store - local.get $2 + local.get $3 local.get $1 i32.store offset=4 - local.get $2 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -33421,56 +33400,56 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 0 i32.store - local.get $2 + local.get $3 i32.const 0 i32.const 0 i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $4 i32.store local.get $0 i32.load offset=12 - local.set $5 + local.set $3 loop $for-loop|0 - local.get $5 + local.get $3 local.get $0 i32.load offset=12 - local.tee $3 + local.tee $5 local.get $3 local.get $5 - i32.gt_s + i32.lt_s select - local.get $4 + local.get $2 i32.gt_s if - local.get $4 + local.get $2 local.get $0 i32.load offset=4 i32.add i32.load8_u - local.set $3 + local.set $5 i32.const 3 global.set $~argumentsLength - local.get $3 - local.get $4 + local.get $5 + local.get $2 local.get $0 local.get $1 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $2 - local.get $3 + local.get $4 + local.get $5 call $~lib/array/Array#push drop end - local.get $4 + local.get $2 i32.const 1 i32.add - local.set $4 + local.set $2 br $for-loop|0 end end @@ -33482,7 +33461,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $4 return end i32.const 32064 @@ -33516,7 +33495,7 @@ i32.store local.get $0 i32.load offset=12 - local.tee $1 + local.tee $3 i32.const 1 i32.lt_s if @@ -33529,24 +33508,24 @@ end local.get $0 i32.load offset=4 - local.tee $2 + local.tee $1 i32.load8_u - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.const 1 i32.add - local.get $1 + local.get $3 i32.const 1 i32.sub - local.tee $1 + local.tee $3 call $~lib/memory/memory.copy local.get $1 - local.get $2 + local.get $3 i32.add i32.const 0 i32.store8 local.get $0 - local.get $1 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -33587,35 +33566,35 @@ local.get $3 local.get $0 i32.load offset=12 - local.tee $2 - local.get $2 + local.tee $4 local.get $3 - i32.gt_s - select local.get $4 + i32.lt_s + select + local.get $2 i32.gt_s if - local.get $4 + local.get $2 local.get $0 i32.load offset=4 i32.add i32.load8_u - local.set $2 + local.set $4 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $2 local.get $4 + local.get $2 local.get $0 local.get $1 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#some drop - local.get $4 + local.get $2 i32.const 1 i32.add - local.set $4 + local.set $2 br $for-loop|0 end end @@ -33773,20 +33752,20 @@ i32.const 0 i32.gt_s select - local.tee $3 + local.tee $2 i32.const 0 i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 i32.load offset=4 local.get $1 local.get $0 i32.load offset=4 i32.add - local.get $3 + local.get $2 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 @@ -33796,7 +33775,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 return end i32.const 32064 @@ -33852,13 +33831,13 @@ local.get $2 local.get $0 i32.load offset=12 - local.tee $4 + local.tee $3 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $4 + local.get $3 i32.add local.tee $1 i32.const 0 @@ -33868,61 +33847,61 @@ select else local.get $1 - local.get $4 + local.get $3 local.get $1 - local.get $4 + local.get $3 i32.lt_s select end - local.tee $1 + local.tee $4 i32.sub - local.tee $3 + local.tee $1 + local.get $1 local.get $2 - local.get $3 - i32.lt_s + i32.gt_s select - local.tee $2 + local.tee $1 i32.const 0 - local.get $2 + local.get $1 i32.const 0 i32.gt_s select - local.tee $2 + local.tee $5 i32.const 0 i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $6 i32.store - local.get $3 + local.get $6 i32.load offset=4 - local.get $1 + local.get $4 local.get $0 i32.load offset=4 - local.tee $5 + local.tee $1 i32.add - local.tee $6 - local.get $2 + local.tee $2 + local.get $5 call $~lib/memory/memory.copy + local.get $3 local.get $4 - local.get $1 - local.get $2 + local.get $5 i32.add - local.tee $1 + local.tee $4 i32.ne if - local.get $6 + local.get $2 local.get $1 - local.get $5 + local.get $4 i32.add + local.get $3 local.get $4 - local.get $1 i32.sub call $~lib/memory/memory.copy end local.get $0 - local.get $4 - local.get $2 + local.get $3 + local.get $5 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -33933,7 +33912,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $6 return end i32.const 32064 @@ -34208,14 +34187,14 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 local.get $0 i32.store - local.get $2 + local.get $3 local.get $1 i32.store offset=4 block $__inlined_func$~lib/array/Array<~lib/string/String>#every (result i32) - local.get $2 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -34228,23 +34207,23 @@ i32.store local.get $0 i32.load offset=12 - local.set $2 + local.set $3 loop $for-loop|0 - local.get $2 + local.get $3 local.get $0 i32.load offset=12 local.tee $4 - local.get $2 + local.get $3 local.get $4 i32.lt_s select - local.get $3 + local.get $2 i32.gt_s if global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=4 - local.get $3 + local.get $2 i32.const 2 i32.shl i32.add @@ -34254,7 +34233,7 @@ i32.const 3 global.set $~argumentsLength local.get $4 - local.get $3 + local.get $2 local.get $0 local.get $1 i32.load @@ -34268,10 +34247,10 @@ i32.const 0 br $__inlined_func$~lib/array/Array<~lib/string/String>#every end - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 br $for-loop|0 end end @@ -34617,16 +34596,16 @@ end local.get $0 i32.load offset=4 - local.set $5 + local.set $4 local.get $0 i32.load offset=12 - local.set $4 + local.set $5 local.get $2 i32.const 0 i32.lt_s if (result i32) local.get $2 - local.get $4 + local.get $5 i32.add local.tee $2 i32.const 0 @@ -34636,9 +34615,9 @@ select else local.get $2 - local.get $4 + local.get $5 local.get $2 - local.get $4 + local.get $5 i32.lt_s select end @@ -34648,7 +34627,7 @@ i32.lt_s if (result i32) local.get $3 - local.get $4 + local.get $5 i32.add local.tee $3 i32.const 0 @@ -34658,9 +34637,9 @@ select else local.get $3 - local.get $4 + local.get $5 local.get $3 - local.get $4 + local.get $5 i32.lt_s select end @@ -34673,7 +34652,7 @@ local.get $2 i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add local.get $1 i32.store @@ -34996,9 +34975,9 @@ i32.const 0 local.get $1 select - local.tee $6 - i32.add local.tee $3 + i32.add + local.tee $5 i32.const 268435455 i32.gt_u if @@ -35010,41 +34989,41 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $5 i32.const 2 i32.const 33 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $5 i32.store - local.get $3 + local.get $5 i32.load offset=4 - local.set $5 + local.set $6 local.get $4 i32.const 2 i32.shl local.set $4 local.get $0 i32.load offset=4 - local.set $7 + local.set $0 loop $for-loop|0 local.get $2 local.get $4 i32.lt_u if local.get $2 - local.get $5 + local.get $6 i32.add + local.get $0 local.get $2 - local.get $7 i32.add i32.load - local.tee $0 + local.tee $7 i32.store - local.get $0 + local.get $7 if - local.get $3 - local.get $0 + local.get $5 + local.get $7 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -35056,36 +35035,36 @@ end end local.get $4 - local.get $5 + local.get $6 i32.add local.set $2 local.get $1 i32.load offset=4 - local.set $5 - local.get $6 + local.set $1 + local.get $3 i32.const 2 i32.shl - local.set $4 + local.set $3 i32.const 0 local.set $0 loop $for-loop|1 local.get $0 - local.get $4 + local.get $3 i32.lt_u if local.get $0 local.get $2 i32.add local.get $0 - local.get $5 + local.get $1 i32.add i32.load - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 if - local.get $3 - local.get $1 + local.get $5 + local.get $4 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -35104,7 +35083,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $5 return end i32.const 32064 @@ -35144,7 +35123,7 @@ i32.store local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.lt_s if @@ -35156,23 +35135,23 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 local.get $0 i32.load offset=4 - local.get $1 + local.get $2 i32.const 1 i32.sub - local.tee $1 + local.tee $3 i32.const 2 i32.shl i32.add i32.load - local.tee $3 + local.tee $2 i32.store local.get $0 - local.get $1 + local.get $3 i32.store offset=12 - local.get $2 + local.get $1 i32.const 4 i32.add global.set $~lib/memory/__stack_pointer @@ -35180,7 +35159,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 return end i32.const 32064 @@ -35204,13 +35183,13 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 local.get $0 i32.store - local.get $2 + local.get $3 local.get $1 i32.store offset=4 - local.get $2 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -35223,23 +35202,23 @@ i32.store local.get $0 i32.load offset=12 - local.set $2 + local.set $3 loop $for-loop|0 - local.get $2 + local.get $3 local.get $0 i32.load offset=12 local.tee $4 - local.get $2 + local.get $3 local.get $4 i32.lt_s select - local.get $3 + local.get $2 i32.gt_s if global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=4 - local.get $3 + local.get $2 i32.const 2 i32.shl i32.add @@ -35249,15 +35228,15 @@ i32.const 3 global.set $~argumentsLength local.get $4 - local.get $3 + local.get $2 local.get $0 local.get $1 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 br $for-loop|0 end end @@ -35293,13 +35272,13 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 local.get $0 i32.store - local.get $2 + local.get $3 local.get $1 i32.store offset=4 - local.get $2 + local.get $3 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -35308,60 +35287,60 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 i32.const 0 i32.const 2 i32.const 33 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $4 i32.store local.get $0 i32.load offset=12 - local.set $5 + local.set $3 loop $for-loop|0 - local.get $5 + local.get $3 local.get $0 i32.load offset=12 - local.tee $3 + local.tee $5 local.get $3 local.get $5 - i32.gt_s + i32.lt_s select - local.get $4 + local.get $2 i32.gt_s if global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=4 - local.get $4 + local.get $2 i32.const 2 i32.shl i32.add i32.load - local.tee $3 + local.tee $5 i32.store offset=4 i32.const 3 global.set $~argumentsLength - local.get $3 - local.get $4 + local.get $5 + local.get $2 local.get $0 local.get $1 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $2 - local.get $3 + local.get $4 + local.get $5 call $~lib/array/Array<~lib/string/String>#push drop end - local.get $4 + local.get $2 i32.const 1 i32.add - local.set $4 + local.set $2 br $for-loop|0 end end @@ -35373,7 +35352,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $4 return end i32.const 32064 @@ -35428,29 +35407,29 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=4 - local.tee $1 - i32.load local.tee $3 + i32.load + local.tee $1 i32.store - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.const 4 i32.add local.get $2 i32.const 1 i32.sub - local.tee $2 + local.tee $4 i32.const 2 i32.shl - local.tee $4 + local.tee $2 call $~lib/memory/memory.copy - local.get $1 - local.get $4 + local.get $2 + local.get $3 i32.add i32.const 0 i32.store local.get $0 - local.get $2 + local.get $4 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -35460,7 +35439,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 return end i32.const 32064 @@ -35484,14 +35463,14 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 local.get $0 i32.store - local.get $2 + local.get $3 local.get $1 i32.store offset=4 block $__inlined_func$~lib/array/Array<~lib/string/String>#some (result i32) - local.get $2 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -35504,23 +35483,23 @@ i32.store local.get $0 i32.load offset=12 - local.set $2 + local.set $3 loop $for-loop|0 - local.get $2 + local.get $3 local.get $0 i32.load offset=12 local.tee $4 - local.get $2 + local.get $3 local.get $4 i32.lt_s select - local.get $3 + local.get $2 i32.gt_s if global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=4 - local.get $3 + local.get $2 i32.const 2 i32.shl i32.add @@ -35530,7 +35509,7 @@ i32.const 3 global.set $~argumentsLength local.get $4 - local.get $3 + local.get $2 local.get $0 local.get $1 i32.load @@ -35543,10 +35522,10 @@ i32.const 1 br $__inlined_func$~lib/array/Array<~lib/string/String>#some end - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 br $for-loop|0 end end @@ -35599,23 +35578,23 @@ i32.load offset=12 i32.const 1 i32.add - local.tee $2 + local.tee $3 i32.const 2 i32.const 1 call $~lib/array/ensureCapacity local.get $0 i32.load offset=4 - local.tee $3 + local.tee $2 i32.const 4 i32.add - local.get $3 local.get $2 + local.get $3 i32.const 1 i32.sub i32.const 2 i32.shl call $~lib/memory/memory.copy - local.get $3 + local.get $2 local.get $1 i32.store local.get $1 @@ -35626,13 +35605,13 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $2 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 ) (func $export:~lib/array/Array<~lib/string/String>#slice@varargs (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -35700,7 +35679,7 @@ i32.lt_s select end - local.set $1 + local.set $4 global.get $~lib/memory/__stack_pointer local.get $2 i32.const 0 @@ -35709,9 +35688,9 @@ local.get $2 local.get $3 i32.add - local.tee $2 + local.tee $1 i32.const 0 - local.get $2 + local.get $1 i32.const 0 i32.gt_s select @@ -35723,11 +35702,11 @@ i32.lt_s select end - local.get $1 + local.get $4 i32.sub - local.tee $2 + local.tee $1 i32.const 0 - local.get $2 + local.get $1 i32.const 0 i32.gt_s select @@ -35736,18 +35715,18 @@ i32.const 33 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $5 i32.store - local.get $2 + local.get $5 i32.load offset=4 - local.set $4 + local.set $1 local.get $0 i32.load offset=4 - local.get $1 + local.get $4 i32.const 2 i32.shl i32.add - local.set $5 + local.set $2 i32.const 0 local.set $0 local.get $3 @@ -35760,18 +35739,18 @@ i32.lt_u if local.get $0 - local.get $4 + local.get $1 i32.add local.get $0 - local.get $5 + local.get $2 i32.add i32.load - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 if - local.get $2 - local.get $1 + local.get $5 + local.get $4 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -35790,7 +35769,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $5 return end i32.const 32064 @@ -35846,13 +35825,13 @@ local.get $2 local.get $0 i32.load offset=12 - local.tee $4 + local.tee $3 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $4 + local.get $3 i32.add local.tee $1 i32.const 0 @@ -35862,69 +35841,69 @@ select else local.get $1 - local.get $4 + local.get $3 local.get $1 - local.get $4 + local.get $3 i32.lt_s select end - local.tee $1 + local.tee $4 i32.sub - local.tee $3 + local.tee $1 + local.get $1 local.get $2 - local.get $3 - i32.lt_s + i32.gt_s select - local.tee $2 + local.tee $1 i32.const 0 - local.get $2 + local.get $1 i32.const 0 i32.gt_s select - local.tee $2 + local.tee $5 i32.const 2 i32.const 33 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $6 i32.store - local.get $3 + local.get $6 i32.load offset=4 local.get $0 i32.load offset=4 - local.tee $5 - local.get $1 + local.tee $1 + local.get $4 i32.const 2 i32.shl i32.add - local.tee $6 - local.get $2 + local.tee $2 + local.get $5 i32.const 2 i32.shl call $~lib/memory/memory.copy + local.get $3 local.get $4 - local.get $1 - local.get $2 + local.get $5 i32.add - local.tee $1 + local.tee $4 i32.ne if - local.get $6 - local.get $1 + local.get $2 + local.get $4 i32.const 2 i32.shl - local.get $5 + local.get $1 i32.add + local.get $3 local.get $4 - local.get $1 i32.sub i32.const 2 i32.shl call $~lib/memory/memory.copy end local.get $0 - local.get $4 - local.get $2 + local.get $3 + local.get $5 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -35935,7 +35914,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $6 return end i32.const 32064 @@ -35967,10 +35946,10 @@ i32.store local.get $0 i32.load offset=4 - local.set $5 + local.set $2 local.get $0 i32.load offset=12 - local.set $1 + local.set $4 local.get $3 i32.const 4 i32.sub @@ -35982,51 +35961,51 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $1 + local.get $4 i32.const 1 i32.gt_u if - local.get $1 + local.get $4 i32.const 1 i32.shr_u - local.set $3 - local.get $1 + local.set $5 + local.get $4 i32.const 1 i32.sub - local.set $1 + local.set $4 loop $while-continue|0 - local.get $2 - local.get $3 + local.get $1 + local.get $5 i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 2 i32.shl - local.get $5 + local.get $2 i32.add - local.tee $4 - i32.load local.tee $6 + i32.load + local.tee $3 i32.store + local.get $6 local.get $4 local.get $1 - local.get $2 i32.sub i32.const 2 i32.shl - local.get $5 + local.get $2 i32.add - local.tee $4 + local.tee $6 i32.load i32.store - local.get $4 local.get $6 + local.get $3 i32.store - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $while-continue|0 end end @@ -36249,16 +36228,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $3 i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $3 local.get $1 local.get $2 select @@ -36267,7 +36246,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $0 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/arraybuffer.optimized.wat b/tests/compiler/std/arraybuffer.optimized.wat index 90e6e1ef88..7c6d997399 100644 --- a/tests/compiler/std/arraybuffer.optimized.wat +++ b/tests/compiler/std/arraybuffer.optimized.wat @@ -119,7 +119,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -142,7 +142,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -152,15 +152,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -201,20 +201,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -309,19 +309,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -346,9 +346,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -356,17 +356,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -654,10 +654,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -669,15 +669,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -707,7 +707,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1020,7 +1020,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 18228 i32.ge_u if @@ -1030,20 +1030,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1056,8 +1056,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1284,14 +1283,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1301,17 +1300,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1327,22 +1326,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1353,11 +1352,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1462,7 +1461,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $5 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1488,34 +1487,34 @@ i32.const 4 i32.sub end - local.tee $2 + local.tee $5 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $2 i32.eqz if memory.size - local.tee $4 - local.get $2 + local.tee $2 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $2 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $2 + local.get $5 i32.add else - local.get $2 + local.get $5 end i32.const 4 - local.get $5 + local.get $3 i32.load offset=1568 - local.get $4 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1529,16 +1528,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $3 + local.tee $4 + local.get $2 local.get $4 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1546,18 +1545,18 @@ unreachable end end - local.get $5 - local.get $4 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $3 local.get $5 - local.get $2 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $2 i32.eqz if i32.const 0 @@ -1568,11 +1567,11 @@ unreachable end end - local.get $3 + local.get $2 i32.load i32.const -4 i32.and - local.get $2 + local.get $5 i32.lt_u if i32.const 0 @@ -1582,13 +1581,13 @@ call $~lib/builtins/abort unreachable end - local.get $5 local.get $3 + local.get $2 call $~lib/rt/tlsf/removeBlock - local.get $3 - i32.load - local.set $4 local.get $2 + i32.load + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1601,89 +1600,89 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 i32.const -4 i32.and - local.get $2 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.const 2 i32.and - local.get $2 + local.get $5 i32.or i32.store + local.get $5 local.get $2 - local.get $3 i32.const 4 i32.add i32.add - local.tee $2 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $3 local.get $5 - local.get $2 call $~lib/rt/tlsf/insertBlock else - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.const -2 i32.and i32.store - local.get $3 + local.get $2 i32.const 4 i32.add - local.get $3 + local.get $2 i32.load i32.const -4 i32.and i32.add - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.load i32.const -3 i32.and i32.store end - local.get $3 + local.get $2 local.get $1 i32.store offset=12 - local.get $3 + local.get $2 local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace local.tee $1 i32.load offset=8 - local.set $2 - local.get $3 + local.set $3 + local.get $2 global.get $~lib/rt/itcms/white local.get $1 i32.or i32.store offset=4 - local.get $3 local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $3 + local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total - local.get $3 + local.get $2 i32.load i32.const -4 i32.and @@ -1691,7 +1690,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $3 + local.get $2 i32.const 20 i32.add local.tee $1 @@ -1712,17 +1711,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -1868,19 +1867,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -1895,7 +1894,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -1906,10 +1905,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -1917,10 +1916,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -1931,7 +1930,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -1986,7 +1985,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -1997,10 +1996,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2008,10 +2007,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -2022,7 +2021,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2048,17 +2047,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2073,7 +2072,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -2084,10 +2083,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2095,10 +2094,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -2109,7 +2108,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2146,131 +2145,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -2287,59 +2290,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -2962,13 +2969,13 @@ local.get $0 i32.const 0 call $~lib/arraybuffer/ArrayBufferView#constructor - local.tee $2 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -2985,27 +2992,27 @@ i32.const 8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $2 i32.const 1632 i32.const 8 call $~lib/memory/memory.copy local.get $1 - local.get $0 + local.get $2 i32.store i32.const 16 i32.const 3 call $~lib/rt/itcms/__new local.tee $1 - local.get $0 + local.get $2 i32.store - local.get $0 + local.get $2 if local.get $1 - local.get $0 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $1 - local.get $0 + local.get $2 i32.store offset=4 local.get $1 i32.const 8 @@ -3029,30 +3036,30 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 2 call $~lib/arraybuffer/ArrayBufferView#constructor - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.load local.tee $0 i32.store offset=16 @@ -3060,7 +3067,7 @@ i32.const 20 i32.sub i32.load offset=16 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -3070,31 +3077,31 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 12 i32.const 15 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 0 i32.store offset=4 - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.gt_u - local.get $2 + local.get $1 i32.const 1073741820 i32.gt_u i32.or @@ -3106,27 +3113,27 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 local.get $0 i32.store local.get $0 if - local.get $1 + local.get $2 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $2 local.get $0 i32.store offset=4 - local.get $1 local.get $2 + local.get $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=12 i32.const 18228 global.set $~lib/memory/__stack_pointer @@ -3253,22 +3260,22 @@ i32.const 0 i32.gt_s select - local.tee $3 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 local.get $0 local.get $1 i32.add - local.get $3 + local.get $2 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 ) (func $~lib/arraybuffer/ArrayBufferView#constructor (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -3326,28 +3333,28 @@ i32.const 1 local.get $1 i32.shl - local.tee $2 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $1 local.get $2 + local.get $1 call $~lib/memory/memory.fill local.get $0 - local.get $1 + local.get $2 i32.store - local.get $1 + local.get $2 if local.get $0 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $1 + local.get $2 i32.store offset=4 local.get $0 - local.get $2 + local.get $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 diff --git a/tests/compiler/std/dataview.optimized.wat b/tests/compiler/std/dataview.optimized.wat index f498ee9989..e12cf08b57 100644 --- a/tests/compiler/std/dataview.optimized.wat +++ b/tests/compiler/std/dataview.optimized.wat @@ -125,7 +125,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -148,7 +148,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -158,15 +158,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -207,20 +207,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -315,19 +315,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -352,9 +352,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -362,17 +362,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -660,10 +660,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -675,15 +675,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -713,7 +713,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1026,7 +1026,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 18172 i32.ge_u if @@ -1036,20 +1036,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1062,8 +1062,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1290,14 +1289,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1307,17 +1306,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1333,22 +1332,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1359,11 +1358,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1468,7 +1467,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $5 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1494,34 +1493,34 @@ i32.const 4 i32.sub end - local.tee $2 + local.tee $5 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $2 i32.eqz if memory.size - local.tee $4 - local.get $2 + local.tee $2 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $2 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $2 + local.get $5 i32.add else - local.get $2 + local.get $5 end i32.const 4 - local.get $5 + local.get $3 i32.load offset=1568 - local.get $4 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1535,16 +1534,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $3 + local.tee $4 + local.get $2 local.get $4 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1552,18 +1551,18 @@ unreachable end end - local.get $5 - local.get $4 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $3 local.get $5 - local.get $2 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $2 i32.eqz if i32.const 0 @@ -1574,11 +1573,11 @@ unreachable end end - local.get $3 + local.get $2 i32.load i32.const -4 i32.and - local.get $2 + local.get $5 i32.lt_u if i32.const 0 @@ -1588,13 +1587,13 @@ call $~lib/builtins/abort unreachable end - local.get $5 local.get $3 + local.get $2 call $~lib/rt/tlsf/removeBlock - local.get $3 - i32.load - local.set $4 local.get $2 + i32.load + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1607,89 +1606,89 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 i32.const -4 i32.and - local.get $2 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.const 2 i32.and - local.get $2 + local.get $5 i32.or i32.store + local.get $5 local.get $2 - local.get $3 i32.const 4 i32.add i32.add - local.tee $2 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $3 local.get $5 - local.get $2 call $~lib/rt/tlsf/insertBlock else - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.const -2 i32.and i32.store - local.get $3 + local.get $2 i32.const 4 i32.add - local.get $3 + local.get $2 i32.load i32.const -4 i32.and i32.add - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.load i32.const -3 i32.and i32.store end - local.get $3 + local.get $2 local.get $1 i32.store offset=12 - local.get $3 + local.get $2 local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace local.tee $1 i32.load offset=8 - local.set $2 - local.get $3 + local.set $3 + local.get $2 global.get $~lib/rt/itcms/white local.get $1 i32.or i32.store offset=4 - local.get $3 local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $3 + local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total - local.get $3 + local.get $2 i32.load i32.const -4 i32.and @@ -1697,7 +1696,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $3 + local.get $2 i32.const 20 i32.add local.tee $1 @@ -2477,10 +2476,10 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i32.const 0 i32.store offset=8 memory.size @@ -2515,7 +2514,7 @@ i32.store i32.const 1456 global.set $~lib/rt/itcms/fromSpace - local.get $2 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -2531,7 +2530,7 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -2545,40 +2544,40 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - local.get $1 + local.get $0 i32.eqz if global.get $~lib/memory/__stack_pointer i32.const 12 i32.const 2 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store end - local.get $1 + local.get $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $5 i32.store offset=4 - local.get $0 + local.get $5 i32.const 8 call $~lib/memory/memory.fill - local.get $1 local.get $0 + local.get $5 i32.store - local.get $0 + local.get $5 if - local.get $1 + local.get $0 i32.eqz if i32.const 0 @@ -2589,112 +2588,112 @@ unreachable end global.get $~lib/rt/itcms/white - local.get $0 + local.get $5 i32.const 20 i32.sub - local.tee $3 + local.tee $2 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $5 + local.tee $4 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $2 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $5 + local.get $4 i32.const 3 i32.eq i32.and if - local.get $3 + local.get $2 call $~lib/rt/itcms/Object#makeGray end end end end - local.get $1 local.get $0 + local.get $5 i32.store offset=4 - local.get $1 + local.get $0 i32.const 8 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 246 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 224 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 88 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 3 i32.const 159 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 4 i32.const 130 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 5 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 6 i32.const 67 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 7 i32.const 95 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load - local.tee $0 + local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub - local.get $1 + local.get $0 i32.load offset=8 call $~lib/dataview/DataView#constructor - local.tee $0 + local.tee $1 i32.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -2708,7 +2707,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -2722,7 +2721,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -2736,7 +2735,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -2750,7 +2749,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -2764,7 +2763,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -2778,7 +2777,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -2792,7 +2791,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -2806,7 +2805,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -2820,7 +2819,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -2834,7 +2833,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getFloat64 f64.const 7936550095674706383278551e126 @@ -2847,7 +2846,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getFloat64 f64.const -411777475818852546741639e241 @@ -2860,7 +2859,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getInt8 i32.const -10 @@ -2873,7 +2872,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getInt8 i32.const -32 @@ -2886,7 +2885,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/dataview/DataView#getInt8 i32.const 88 @@ -2899,7 +2898,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 call $~lib/dataview/DataView#getInt8 i32.const -97 @@ -2912,7 +2911,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 call $~lib/dataview/DataView#getInt8 i32.const -126 @@ -2925,7 +2924,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 5 call $~lib/dataview/DataView#getInt8 i32.const 101 @@ -2938,7 +2937,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 6 call $~lib/dataview/DataView#getInt8 i32.const 67 @@ -2951,7 +2950,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 7 call $~lib/dataview/DataView#getInt8 i32.const 95 @@ -2964,7 +2963,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -2980,7 +2979,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -2996,7 +2995,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3012,7 +3011,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3028,7 +3027,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3044,7 +3043,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 5 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3060,7 +3059,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 6 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3076,7 +3075,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3092,7 +3091,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3108,7 +3107,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3124,7 +3123,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3140,7 +3139,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3156,7 +3155,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 5 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3172,7 +3171,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 6 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3188,7 +3187,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -3202,7 +3201,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -3216,7 +3215,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -3230,7 +3229,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -3244,7 +3243,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -3258,7 +3257,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -3272,7 +3271,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -3286,7 +3285,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -3300,7 +3299,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -3314,7 +3313,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -3328,7 +3327,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getInt64 i64.const 6864441868736323830 @@ -3341,7 +3340,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getInt64 i64.const -657428103485373601 @@ -3354,7 +3353,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getUint8 i32.const 246 @@ -3367,7 +3366,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getUint8 i32.const 224 @@ -3380,7 +3379,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/dataview/DataView#getUint8 i32.const 88 @@ -3393,7 +3392,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 call $~lib/dataview/DataView#getUint8 i32.const 159 @@ -3406,7 +3405,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 call $~lib/dataview/DataView#getUint8 i32.const 130 @@ -3419,7 +3418,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 5 call $~lib/dataview/DataView#getUint8 i32.const 101 @@ -3432,7 +3431,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 6 call $~lib/dataview/DataView#getUint8 i32.const 67 @@ -3445,7 +3444,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 7 call $~lib/dataview/DataView#getUint8 i32.const 95 @@ -3458,7 +3457,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -3474,7 +3473,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -3490,7 +3489,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -3506,7 +3505,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -3522,7 +3521,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -3538,7 +3537,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 5 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -3554,7 +3553,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 6 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -3570,7 +3569,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -3586,7 +3585,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -3602,7 +3601,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -3618,7 +3617,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -3634,7 +3633,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -3650,7 +3649,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 5 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -3666,7 +3665,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 6 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -3682,7 +3681,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -3696,7 +3695,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -3710,7 +3709,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -3724,7 +3723,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -3738,7 +3737,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -3752,7 +3751,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -3766,7 +3765,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -3780,7 +3779,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -3794,7 +3793,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -3808,7 +3807,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -3822,7 +3821,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getUint64 i64.const 6864441868736323830 @@ -3835,7 +3834,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getUint64 i64.const -657428103485373601 @@ -3848,11 +3847,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 f32.const 1.5976661625240943e-18 i32.const 1 call $~lib/dataview/DataView#setFloat32 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -3866,11 +3865,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 f32.const 1976281973381696323584 i32.const 0 call $~lib/dataview/DataView#setFloat32 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -3884,11 +3883,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 f64.const -1094252199637739024055454e124 i32.const 1 call $~lib/dataview/DataView#setFloat64 - local.get $0 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getFloat64 f64.const -1094252199637739024055454e124 @@ -3901,11 +3900,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 f64.const 6.022586634778589e-103 i32.const 0 call $~lib/dataview/DataView#setFloat64 - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getFloat64 f64.const 6.022586634778589e-103 @@ -3918,7 +3917,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.eqz if @@ -3929,11 +3928,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=4 i32.const 108 i32.store8 - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getInt8 i32.const 108 @@ -3946,11 +3945,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const -13360 i32.const 1 call $~lib/dataview/DataView#setInt16 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3966,11 +3965,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 14689 i32.const 0 call $~lib/dataview/DataView#setInt16 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3986,11 +3985,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1204680201 i32.const 1 call $~lib/dataview/DataView#setInt32 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -4004,11 +4003,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 660673230 i32.const 0 call $~lib/dataview/DataView#setInt32 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -4022,11 +4021,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i64.const -3290739641816099749 i32.const 1 call $~lib/dataview/DataView#setInt64 - local.get $0 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getInt64 i64.const -3290739641816099749 @@ -4039,11 +4038,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i64.const 8178932412950708047 i32.const 0 call $~lib/dataview/DataView#setInt64 - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getInt64 i64.const 8178932412950708047 @@ -4056,7 +4055,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.eqz if @@ -4067,11 +4066,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=4 i32.const 238 i32.store8 - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getUint8 i32.const 238 @@ -4084,11 +4083,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 58856 i32.const 1 call $~lib/dataview/DataView#setUint16 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -4104,11 +4103,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 60400 i32.const 0 call $~lib/dataview/DataView#setUint16 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -4124,11 +4123,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const -846805744 i32.const 1 call $~lib/dataview/DataView#setUint32 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -4142,11 +4141,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const -1510791631 i32.const 0 call $~lib/dataview/DataView#setUint32 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -4160,11 +4159,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i64.const 2334704782995986958 i32.const 1 call $~lib/dataview/DataView#setUint64 - local.get $0 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getUint64 i64.const 2334704782995986958 @@ -4177,11 +4176,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i64.const -7123186897289856329 i32.const 0 call $~lib/dataview/DataView#setUint64 - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getUint64 i64.const -7123186897289856329 @@ -4195,15 +4194,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.load local.tee $1 - i32.store offset=4 local.get $0 + i32.load + local.tee $0 + i32.store offset=4 local.get $1 + local.get $0 i32.const 0 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -4310,15 +4309,15 @@ i32.const 12 i32.const 4 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $5 i32.store - local.get $3 + local.get $5 i32.const 0 i32.store - local.get $3 + local.get $5 i32.const 0 i32.store offset=4 - local.get $3 + local.get $5 i32.const 0 i32.store offset=8 local.get $0 @@ -4341,12 +4340,12 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 local.get $0 i32.store local.get $0 if - local.get $3 + local.get $5 i32.eqz if i32.const 0 @@ -4360,53 +4359,53 @@ local.get $0 i32.const 20 i32.sub - local.tee $4 + local.tee $3 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $3 + local.get $5 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $5 + local.tee $4 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $4 + local.get $3 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $5 + local.get $4 i32.const 3 i32.eq i32.and if - local.get $4 + local.get $3 call $~lib/rt/itcms/Object#makeGray end end end end - local.get $3 + local.get $5 local.get $0 local.get $1 i32.add i32.store offset=4 - local.get $3 + local.get $5 local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $5 ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) global.get $~lib/rt/itcms/white diff --git a/tests/compiler/std/date.optimized.wat b/tests/compiler/std/date.optimized.wat index 35d68a646c..2ef89098ac 100644 --- a/tests/compiler/std/date.optimized.wat +++ b/tests/compiler/std/date.optimized.wat @@ -239,17 +239,17 @@ i32.const 2 i32.le_s i32.sub - local.tee $0 - local.get $0 + local.tee $7 + local.get $7 i32.const 399 i32.sub - local.get $0 + local.get $7 i32.const 0 i32.ge_s select i32.const 400 i32.div_s - local.set $7 + local.set $0 local.get $6 i64.extend_i32_s local.get $5 @@ -280,24 +280,24 @@ i32.const 5 i32.div_u i32.add - local.get $0 local.get $7 + local.get $0 i32.const 400 i32.mul i32.sub - local.tee $0 + local.tee $1 i32.const 365 i32.mul - local.get $0 + local.get $1 i32.const 2 i32.shr_u i32.add - local.get $0 + local.get $1 i32.const 100 i32.div_u i32.sub i32.add - local.get $7 + local.get $0 i32.const 146097 i32.mul i32.add @@ -328,51 +328,51 @@ select i32.const 146097 i32.div_s - local.set $2 + local.set $1 local.get $0 - local.get $2 + local.get $1 i32.const 146097 i32.mul i32.sub - local.tee $0 - local.get $0 + local.tee $2 + local.get $2 i32.const 1460 i32.div_u i32.sub - local.get $0 + local.get $2 i32.const 36524 i32.div_u i32.add - local.get $0 + local.get $2 i32.const 146096 i32.div_u i32.sub i32.const 365 i32.div_u - local.set $1 + local.set $0 + local.get $2 local.get $0 - local.get $1 i32.const 365 i32.mul - local.get $1 + local.get $0 i32.const 2 i32.shr_u i32.add - local.get $1 + local.get $0 i32.const 100 i32.div_u i32.sub i32.sub - local.tee $3 + local.tee $2 i32.const 5 i32.mul i32.const 2 i32.add i32.const 153 i32.div_s - local.set $0 + local.set $3 + local.get $2 local.get $3 - local.get $0 i32.const 153 i32.mul i32.const 2 @@ -385,20 +385,20 @@ global.set $~lib/date/_day i32.const 3 i32.const -9 - local.get $0 + local.get $3 i32.const 10 i32.lt_s select - local.get $0 + local.get $3 i32.add - local.tee $0 + local.tee $2 global.set $~lib/date/_month - local.get $2 + local.get $1 i32.const 400 i32.mul - local.get $1 - i32.add local.get $0 + i32.add + local.get $2 i32.const 2 i32.le_s i32.add @@ -486,7 +486,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -509,7 +509,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -519,15 +519,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -568,20 +568,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -676,19 +676,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -713,9 +713,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -723,17 +723,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -1021,10 +1021,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -1036,15 +1036,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -1074,7 +1074,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1387,7 +1387,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 23948 i32.ge_u if @@ -1397,20 +1397,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1423,8 +1423,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1651,14 +1650,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1668,17 +1667,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1694,22 +1693,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1720,11 +1719,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1829,7 +1828,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $5 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1855,34 +1854,34 @@ i32.const 4 i32.sub end - local.tee $2 + local.tee $5 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $2 i32.eqz if memory.size - local.tee $4 - local.get $2 + local.tee $2 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $2 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $2 + local.get $5 i32.add else - local.get $2 + local.get $5 end i32.const 4 - local.get $5 + local.get $3 i32.load offset=1568 - local.get $4 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1896,16 +1895,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $3 + local.tee $4 + local.get $2 local.get $4 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1913,18 +1912,18 @@ unreachable end end - local.get $5 - local.get $4 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $3 local.get $5 - local.get $2 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $2 i32.eqz if i32.const 0 @@ -1935,11 +1934,11 @@ unreachable end end - local.get $3 + local.get $2 i32.load i32.const -4 i32.and - local.get $2 + local.get $5 i32.lt_u if i32.const 0 @@ -1949,13 +1948,13 @@ call $~lib/builtins/abort unreachable end - local.get $5 local.get $3 + local.get $2 call $~lib/rt/tlsf/removeBlock - local.get $3 - i32.load - local.set $4 local.get $2 + i32.load + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1968,89 +1967,89 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 i32.const -4 i32.and - local.get $2 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.const 2 i32.and - local.get $2 + local.get $5 i32.or i32.store + local.get $5 local.get $2 - local.get $3 i32.const 4 i32.add i32.add - local.tee $2 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $3 local.get $5 - local.get $2 call $~lib/rt/tlsf/insertBlock else - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.const -2 i32.and i32.store - local.get $3 + local.get $2 i32.const 4 i32.add - local.get $3 + local.get $2 i32.load i32.const -4 i32.and i32.add - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.load i32.const -3 i32.and i32.store end - local.get $3 + local.get $2 local.get $1 i32.store offset=12 - local.get $3 + local.get $2 local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace local.tee $1 i32.load offset=8 - local.set $2 - local.get $3 + local.set $3 + local.get $2 global.get $~lib/rt/itcms/white local.get $1 i32.or i32.store offset=4 - local.get $3 local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $3 + local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total - local.get $3 + local.get $2 i32.load i32.const -4 i32.and @@ -2058,7 +2057,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $3 + local.get $2 i32.const 20 i32.add local.tee $1 @@ -2305,8 +2304,8 @@ ) (func $~lib/date/Date#setUTCMonth (param $0 i32) (param $1 i32) (local $2 i32) - (local $3 i32) - (local $4 i64) + (local $3 i64) + (local $4 i32) local.get $1 local.get $0 i32.load offset=4 @@ -2319,30 +2318,30 @@ local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $1 i32.const 2 i32.le_s i32.sub - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 i32.const 399 i32.sub - local.get $1 + local.get $4 i32.const 0 i32.ge_s select i32.const 400 i32.div_s - local.set $3 + local.set $2 local.get $0 local.get $0 i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $4 + local.tee $3 i64.const 86400000 i64.const 0 - local.get $4 + local.get $3 i64.const 0 i64.lt_s select @@ -2351,11 +2350,11 @@ i32.load offset=8 i32.const -3 i32.const 9 - local.get $2 + local.get $1 i32.const 2 i32.gt_s select - local.get $2 + local.get $1 i32.add i32.const 153 i32.mul @@ -2364,8 +2363,8 @@ i32.const 5 i32.div_u i32.add - local.get $1 - local.get $3 + local.get $4 + local.get $2 i32.const 400 i32.mul i32.sub @@ -2381,7 +2380,7 @@ i32.div_u i32.sub i32.add - local.get $3 + local.get $2 i32.const 146097 i32.mul i32.add @@ -2395,8 +2394,8 @@ ) (func $~lib/date/Date#setUTCFullYear (param $0 i32) (param $1 i32) (local $2 i32) - (local $3 i32) - (local $4 i64) + (local $3 i64) + (local $4 i32) local.get $1 local.get $0 i32.load @@ -2407,30 +2406,30 @@ local.get $1 local.get $0 i32.load offset=4 - local.tee $2 + local.tee $1 i32.const 2 i32.le_s i32.sub - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 i32.const 399 i32.sub - local.get $1 + local.get $4 i32.const 0 i32.ge_s select i32.const 400 i32.div_s - local.set $3 + local.set $2 local.get $0 local.get $0 i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $4 + local.tee $3 i64.const 86400000 i64.const 0 - local.get $4 + local.get $3 i64.const 0 i64.lt_s select @@ -2439,11 +2438,11 @@ i32.load offset=8 i32.const -3 i32.const 9 - local.get $2 + local.get $1 i32.const 2 i32.gt_s select - local.get $2 + local.get $1 i32.add i32.const 153 i32.mul @@ -2452,8 +2451,8 @@ i32.const 5 i32.div_u i32.add - local.get $1 - local.get $3 + local.get $4 + local.get $2 i32.const 400 i32.mul i32.sub @@ -2469,7 +2468,7 @@ i32.div_u i32.sub i32.add - local.get $3 + local.get $2 i32.const 146097 i32.mul i32.add @@ -2710,17 +2709,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2866,19 +2865,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2893,7 +2892,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -2904,10 +2903,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2915,10 +2914,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -2929,7 +2928,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2984,7 +2983,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -2995,10 +2994,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -3006,10 +3005,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -3020,7 +3019,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -3046,17 +3045,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -3071,7 +3070,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -3082,10 +3081,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -3093,10 +3092,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -3107,7 +3106,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -3144,131 +3143,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -3285,59 +3288,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -3730,14 +3737,14 @@ if local.get $1 i32.load16_u - local.tee $0 + local.tee $4 local.get $2 i32.load16_u - local.tee $4 + local.tee $0 i32.ne if - local.get $0 local.get $4 + local.get $0 i32.sub return end @@ -3806,7 +3813,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 i32.eqz if i32.const 0 @@ -3818,7 +3825,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.eqz if i32.const -1 @@ -3831,25 +3838,25 @@ i32.gt_s select local.tee $2 - local.get $3 + local.get $4 local.get $2 - local.get $3 + local.get $4 i32.lt_s select local.set $2 - local.get $3 local.get $4 + local.get $3 i32.sub - local.set $3 + local.set $4 loop $for-loop|0 local.get $2 - local.get $3 + local.get $4 i32.le_s if local.get $0 local.get $2 local.get $1 - local.get $4 + local.get $3 call $~lib/util/string/compareImpl i32.eqz if @@ -3877,14 +3884,14 @@ (local $10 i32) local.get $0 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 1 i32.add - local.tee $9 + local.tee $6 local.tee $3 local.get $0 i32.load offset=8 - local.tee $2 + local.tee $10 i32.const 2 i32.shr_u i32.gt_u @@ -3901,17 +3908,16 @@ unreachable end block $__inlined_func$~lib/rt/itcms/__renew - local.get $2 - local.tee $4 + local.get $10 i32.const 1 i32.shl - local.tee $5 + local.tee $2 i32.const 1073741820 - local.get $5 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $5 + local.tee $2 local.get $3 i32.const 8 local.get $3 @@ -3921,19 +3927,19 @@ i32.const 2 i32.shl local.tee $3 + local.get $2 local.get $3 - local.get $5 - i32.lt_u + i32.gt_u select - local.tee $7 - local.tee $5 + local.tee $8 + local.tee $4 local.get $0 i32.load - local.tee $10 - local.tee $2 + local.tee $5 + local.tee $3 i32.const 20 i32.sub - local.tee $6 + local.tee $9 i32.load i32.const -4 i32.and @@ -3941,61 +3947,61 @@ i32.sub i32.le_u if - local.get $6 - local.get $5 + local.get $9 + local.get $4 i32.store offset=16 br $__inlined_func$~lib/rt/itcms/__renew end - local.get $5 - local.get $6 + local.get $4 + local.get $9 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $3 - local.get $2 - local.get $5 - local.get $6 - i32.load offset=16 local.tee $2 - local.get $2 - local.get $5 + local.get $3 + local.get $4 + local.get $9 + i32.load offset=16 + local.tee $3 + local.get $3 + local.get $4 i32.gt_u select call $~lib/memory/memory.copy - local.get $3 - local.set $2 + local.get $2 + local.set $3 end - local.get $2 - local.get $4 + local.get $3 + local.get $10 i32.add - local.get $7 - local.get $4 + local.get $8 + local.get $10 i32.sub call $~lib/memory/memory.fill - local.get $2 - local.get $10 + local.get $3 + local.get $5 i32.ne if local.get $0 - local.get $2 + local.get $3 i32.store local.get $0 - local.get $2 + local.get $3 i32.store offset=4 - local.get $2 + local.get $3 if local.get $0 - local.get $2 + local.get $3 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end end local.get $0 - local.get $7 + local.get $8 i32.store offset=8 end local.get $0 i32.load offset=4 - local.get $8 + local.get $7 i32.const 2 i32.shl i32.add @@ -4009,7 +4015,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $9 + local.get $6 i32.store offset=12 ) (func $~lib/util/string/strtol (param $0 i32) (result i32) @@ -4024,7 +4030,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -4032,28 +4038,27 @@ end local.get $0 i32.load16_u - local.set $1 + local.set $2 loop $while-continue|0 block $__inlined_func$~lib/util/string/isSpace (result i32) - local.get $1 - local.tee $3 + local.get $2 i32.const 128 i32.or i32.const 160 i32.eq - local.get $1 + local.get $2 i32.const 9 i32.sub i32.const 4 i32.le_u i32.or - local.get $1 + local.get $2 i32.const 5760 i32.lt_u br_if $__inlined_func$~lib/util/string/isSpace drop i32.const 1 - local.get $3 + local.get $2 i32.const -8192 i32.add i32.const 10 @@ -4062,31 +4067,31 @@ drop block $break|0 block $case6|0 - local.get $3 + local.get $2 i32.const 5760 i32.eq br_if $case6|0 - local.get $3 + local.get $2 i32.const 8232 i32.eq br_if $case6|0 - local.get $3 + local.get $2 i32.const 8233 i32.eq br_if $case6|0 - local.get $3 + local.get $2 i32.const 8239 i32.eq br_if $case6|0 - local.get $3 + local.get $2 i32.const 8287 i32.eq br_if $case6|0 - local.get $3 + local.get $2 i32.const 12288 i32.eq br_if $case6|0 - local.get $3 + local.get $2 i32.const 65279 i32.eq br_if $case6|0 @@ -4103,28 +4108,28 @@ i32.add local.tee $0 i32.load16_u - local.set $1 - local.get $2 + local.set $2 + local.get $1 i32.const 1 i32.sub - local.set $2 + local.set $1 br $while-continue|0 end end i32.const 1 - local.set $3 - local.get $1 + local.set $5 + local.get $2 i32.const 43 i32.eq - local.get $1 + local.get $2 i32.const 45 i32.eq i32.or if (result i32) - local.get $2 + local.get $1 i32.const 1 i32.sub - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -4132,22 +4137,22 @@ end i32.const -1 i32.const 1 - local.get $1 + local.get $2 i32.const 45 i32.eq select - local.set $3 + local.set $5 local.get $0 i32.const 2 i32.add local.tee $0 i32.load16_u else - local.get $1 + local.get $2 end i32.const 48 i32.eq - local.get $2 + local.get $1 i32.const 2 i32.gt_s i32.and @@ -4159,15 +4164,15 @@ i32.load16_u offset=2 i32.const 32 i32.or - local.tee $1 + local.tee $2 i32.const 98 i32.ne if - local.get $1 + local.get $2 i32.const 111 i32.eq br_if $case1|1 - local.get $1 + local.get $2 i32.const 120 i32.eq br_if $case2|1 @@ -4177,10 +4182,10 @@ i32.const 4 i32.add local.set $0 - local.get $2 + local.get $1 i32.const 2 i32.sub - local.set $2 + local.set $1 i32.const 2 local.set $4 br $break|1 @@ -4189,10 +4194,10 @@ i32.const 4 i32.add local.set $0 - local.get $2 + local.get $1 i32.const 2 i32.sub - local.set $2 + local.set $1 i32.const 8 local.set $4 br $break|1 @@ -4201,10 +4206,10 @@ i32.const 4 i32.add local.set $0 - local.get $2 + local.get $1 i32.const 2 i32.sub - local.set $2 + local.set $1 i32.const 16 local.set $4 end @@ -4216,40 +4221,40 @@ local.set $4 loop $while-continue|2 block $while-break|2 - local.get $2 - local.tee $1 + local.get $1 + local.tee $2 i32.const 1 i32.sub - local.set $2 - local.get $1 + local.set $1 + local.get $2 if local.get $0 i32.load16_u - local.tee $1 + local.tee $2 i32.const 48 i32.sub i32.const 10 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 48 i32.sub else - local.get $1 + local.get $2 i32.const 65 i32.sub i32.const 25 i32.le_u if (result i32) - local.get $1 + local.get $2 i32.const 55 i32.sub else - local.get $1 + local.get $2 i32.const 87 i32.sub - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.const 97 i32.sub i32.const 25 @@ -4257,11 +4262,11 @@ select end end - local.tee $1 + local.tee $2 local.get $4 i32.ge_u if - local.get $5 + local.get $3 i32.eqz if i32.const 0 @@ -4269,12 +4274,12 @@ end br $while-break|2 end - local.get $1 + local.get $2 + local.get $3 local.get $4 - local.get $5 i32.mul i32.add - local.set $5 + local.set $3 local.get $0 i32.const 2 i32.add @@ -4324,70 +4329,68 @@ return end local.get $0 - local.tee $1 - local.get $0 i32.const 20 i32.sub i32.load offset=16 + local.get $0 i32.add - local.set $2 + local.set $1 loop $while-continue|0 + local.get $0 local.get $1 - local.get $2 i32.lt_u if - local.get $1 + local.get $0 i32.load - local.tee $0 + local.tee $2 if - local.get $0 + local.get $2 if - local.get $0 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $1 + local.get $0 i32.const 4 i32.add - local.set $1 + local.set $0 br $while-continue|0 end end return end local.get $0 - local.tee $1 i32.load offset=4 - local.tee $2 + local.tee $1 local.get $0 i32.load offset=12 i32.const 2 i32.shl i32.add - local.set $3 + local.set $2 loop $while-continue|01 + local.get $1 local.get $2 - local.get $3 i32.lt_u if - local.get $2 + local.get $1 i32.load - local.tee $0 + local.tee $3 if - local.get $0 + local.get $3 if - local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $2 + local.get $1 i32.const 4 i32.add - local.set $2 + local.set $1 br $while-continue|01 end end - local.get $1 + local.get $0 i32.load local.tee $0 if @@ -4418,9 +4421,9 @@ ) (func $~lib/date/Date#toISOString (param $0 i32) (result i32) (local $1 i32) - (local $2 i32) + (local $2 i64) (local $3 i32) - (local $4 i64) + (local $4 i32) global.get $~lib/memory/__stack_pointer i32.const 112 i32.sub @@ -4484,19 +4487,19 @@ local.tee $1 i32.const 0 i32.lt_s - local.tee $2 + local.tee $3 local.get $1 i32.const 10000 i32.ge_s i32.or if global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $4 i32.const 1616 i32.const 1648 - local.get $2 + local.get $3 select - local.tee $2 + local.tee $3 i32.store local.get $1 local.get $1 @@ -4521,8 +4524,8 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=4 + local.get $4 local.get $3 - local.get $2 local.get $1 call $~lib/string/String.__concat local.tee $1 @@ -4557,22 +4560,22 @@ local.get $0 i32.load offset=4 call $~lib/number/I32#toString - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=104 global.get $~lib/memory/__stack_pointer i32.const 1872 i32.store offset=108 - local.get $2 + local.get $3 i32.const 2 call $~lib/string/String#padStart - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=96 local.get $1 - local.get $2 + local.get $3 call $~lib/string/String.__concat local.set $1 global.get $~lib/memory/__stack_pointer @@ -4591,22 +4594,22 @@ local.get $0 i32.load offset=8 call $~lib/number/I32#toString - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=84 global.get $~lib/memory/__stack_pointer i32.const 1872 i32.store offset=92 - local.get $2 + local.get $3 i32.const 2 call $~lib/string/String#padStart - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=80 local.get $1 - local.get $2 + local.get $3 call $~lib/string/String.__concat local.set $1 global.get $~lib/memory/__stack_pointer @@ -4626,10 +4629,10 @@ i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $4 + local.tee $2 i64.const 86400000 i64.const 0 - local.get $4 + local.get $2 i64.const 0 i64.lt_s select @@ -4638,23 +4641,23 @@ i32.const 3600000 i32.div_s call $~lib/number/I32#toString - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $2 - i32.store offset=68 + local.tee $4 local.get $3 + i32.store offset=68 + local.get $4 i32.const 1872 i32.store offset=76 - local.get $2 + local.get $3 i32.const 2 call $~lib/string/String#padStart - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=64 local.get $1 - local.get $2 + local.get $3 call $~lib/string/String.__concat local.set $1 global.get $~lib/memory/__stack_pointer @@ -4674,10 +4677,10 @@ i64.load offset=16 i64.const 3600000 i64.rem_s - local.tee $4 + local.tee $2 i64.const 3600000 i64.const 0 - local.get $4 + local.get $2 i64.const 0 i64.lt_s select @@ -4686,23 +4689,23 @@ i32.const 60000 i32.div_s call $~lib/number/I32#toString - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $2 - i32.store offset=52 + local.tee $4 local.get $3 + i32.store offset=52 + local.get $4 i32.const 1872 i32.store offset=60 - local.get $2 + local.get $3 i32.const 2 call $~lib/string/String#padStart - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=48 local.get $1 - local.get $2 + local.get $3 call $~lib/string/String.__concat local.set $1 global.get $~lib/memory/__stack_pointer @@ -4722,10 +4725,10 @@ i64.load offset=16 i64.const 60000 i64.rem_s - local.tee $4 + local.tee $2 i64.const 60000 i64.const 0 - local.get $4 + local.get $2 i64.const 0 i64.lt_s select @@ -4734,23 +4737,23 @@ i32.const 1000 i32.div_s call $~lib/number/I32#toString - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $2 - i32.store offset=36 + local.tee $4 local.get $3 + i32.store offset=36 + local.get $4 i32.const 1872 i32.store offset=44 - local.get $2 + local.get $3 i32.const 2 call $~lib/string/String#padStart - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=32 local.get $1 - local.get $2 + local.get $3 call $~lib/string/String.__concat local.set $1 global.get $~lib/memory/__stack_pointer @@ -4770,10 +4773,10 @@ i64.load offset=16 i64.const 1000 i64.rem_s - local.tee $4 + local.tee $2 i64.const 1000 i64.const 0 - local.get $4 + local.get $2 i64.const 0 i64.lt_s select @@ -4782,10 +4785,10 @@ call $~lib/number/I32#toString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 local.get $0 i32.store offset=12 - local.get $2 + local.get $3 i32.const 1872 i32.store offset=28 local.get $0 @@ -4821,6 +4824,7 @@ (local $5 i32) (local $6 i32) (local $7 i32) + (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 44 i32.sub @@ -4837,25 +4841,24 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i64.const 0 i64.store offset=8 - local.get $1 + local.get $2 i64.const 0 i64.store offset=16 - local.get $1 + local.get $2 i64.const 0 i64.store offset=24 - local.get $1 + local.get $2 i64.const 0 i64.store offset=32 - local.get $1 + local.get $2 i32.const 0 i32.store offset=40 - local.get $1 i32.const 28 i32.const 4 call $~lib/rt/itcms/__new @@ -4863,62 +4866,62 @@ i32.const 4560 i32.const 28 call $~lib/memory/memory.copy + local.get $2 local.get $1 - local.tee $3 i32.store global.get $~lib/memory/__stack_pointer i32.const 48 i32.const 4 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $6 i32.const 4992 i32.const 48 call $~lib/memory/memory.copy - local.get $1 + local.get $6 i32.store offset=4 local.get $0 i32.load - local.tee $4 + local.tee $5 local.get $0 i32.load offset=4 - local.tee $6 + local.tee $8 i32.const 3 i32.lt_s i32.sub - local.tee $2 + local.tee $3 i32.const 0 i32.ge_s - local.set $5 + local.set $2 local.get $0 i32.load offset=8 local.tee $7 - local.get $6 + local.get $8 i32.const 1579 i32.add i32.load8_u - local.get $2 - local.get $2 - local.get $2 + local.get $3 + local.get $3 + local.get $3 i32.const 3 i32.sub - local.get $5 + local.get $2 select i32.const 4 i32.div_s - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.const 99 i32.sub - local.get $5 + local.get $2 select i32.const 100 i32.div_s i32.sub - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.const 399 i32.sub - local.get $5 + local.get $2 select i32.const 400 i32.div_s @@ -4936,10 +4939,10 @@ i32.lt_s select i32.add - local.set $2 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $4 - local.get $4 + local.get $5 + local.get $5 i32.const 31 i32.shr_s local.tee $0 @@ -4959,15 +4962,15 @@ call $~lib/string/String#padStart local.tee $0 i32.store offset=16 - local.get $4 + local.get $5 i32.const 0 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $2 i32.const 1616 i32.store offset=8 - local.get $4 + local.get $2 i32.const 1616 local.get $0 call $~lib/string/String.__concat @@ -4975,22 +4978,22 @@ i32.store offset=16 end global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $2 + local.tee $3 + local.get $4 i32.const 2 i32.shl - local.get $3 + local.get $1 i32.add i32.load local.tee $2 i32.store offset=32 - local.get $4 - local.get $6 + local.get $3 + local.get $8 i32.const 1 i32.sub i32.const 2 i32.shl - local.get $1 + local.get $6 i32.add i32.load local.tee $1 @@ -4998,28 +5001,28 @@ local.get $2 local.get $1 call $~lib/string/String.__concat - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=24 local.get $7 call $~lib/number/I32#toString - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=32 global.get $~lib/memory/__stack_pointer i32.const 1872 i32.store offset=40 - local.get $2 + local.get $1 i32.const 2 call $~lib/string/String#padStart - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=28 local.get $1 + i32.store offset=28 local.get $2 + local.get $1 call $~lib/string/String.__concat local.set $1 global.get $~lib/memory/__stack_pointer @@ -5044,9 +5047,9 @@ global.set $~lib/memory/__stack_pointer ) (func $~lib/date/Date#toTimeString (param $0 i32) (result i32) - (local $1 i32) + (local $1 i64) (local $2 i32) - (local $3 i64) + (local $3 i32) (local $4 i32) global.get $~lib/memory/__stack_pointer i32.const 40 @@ -5064,29 +5067,29 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i64.const 0 i64.store offset=8 - local.get $1 + local.get $2 i64.const 0 i64.store offset=16 - local.get $1 + local.get $2 i64.const 0 i64.store offset=24 - local.get $1 + local.get $2 i64.const 0 i64.store offset=32 local.get $0 i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 86400000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -5095,39 +5098,39 @@ i32.const 3600000 i32.div_s call $~lib/number/I32#toString - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 - i32.store offset=32 + local.tee $3 local.get $2 + i32.store offset=32 + local.get $3 i32.const 1872 i32.store offset=36 - local.get $1 + local.get $2 i32.const 2 call $~lib/string/String#padStart - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=24 global.get $~lib/memory/__stack_pointer i32.const 3520 i32.store offset=28 - local.get $1 + local.get $2 i32.const 3520 call $~lib/string/String.__concat - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=16 local.get $0 i64.load offset=16 i64.const 3600000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 3600000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -5136,46 +5139,46 @@ i32.const 60000 i32.div_s call $~lib/number/I32#toString - local.set $2 + local.set $4 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $2 - i32.store offset=24 + local.tee $2 local.get $4 + i32.store offset=24 + local.get $2 i32.const 1872 i32.store offset=32 - local.get $2 + local.get $4 i32.const 2 call $~lib/string/String#padStart local.set $2 global.get $~lib/memory/__stack_pointer local.get $2 i32.store offset=20 - local.get $1 + local.get $3 local.get $2 call $~lib/string/String.__concat - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 3520 i32.store offset=12 - local.get $1 + local.get $2 i32.const 3520 call $~lib/string/String.__concat - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store local.get $0 i64.load offset=16 i64.const 60000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 60000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -5186,10 +5189,10 @@ call $~lib/number/I32#toString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 local.get $0 i32.store offset=8 - local.get $2 + local.get $3 i32.const 1872 i32.store offset=16 local.get $0 @@ -5199,7 +5202,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $1 + local.get $2 local.get $0 call $~lib/string/String.__concat global.get $~lib/memory/__stack_pointer @@ -5209,10 +5212,10 @@ ) (func $~lib/date/Date#toUTCString (param $0 i32) (result i32) (local $1 i32) - (local $2 i32) + (local $2 i64) (local $3 i32) (local $4 i32) - (local $5 i64) + (local $5 i32) (local $6 i32) (local $7 i32) (local $8 i32) @@ -5272,66 +5275,66 @@ i32.const 28 i32.const 4 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $7 i32.const 5616 i32.const 28 call $~lib/memory/memory.copy local.get $1 - local.get $3 + local.get $7 i32.store global.get $~lib/memory/__stack_pointer i32.const 48 i32.const 4 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $8 i32.const 6048 i32.const 48 call $~lib/memory/memory.copy - local.get $1 + local.get $8 i32.store offset=4 local.get $0 i32.load - local.tee $6 + local.tee $3 local.get $0 i32.load offset=4 - local.tee $7 + local.tee $4 i32.const 3 i32.lt_s i32.sub - local.tee $4 + local.tee $1 i32.const 0 i32.ge_s - local.set $2 + local.set $6 local.get $0 i32.load offset=8 - local.tee $8 - local.get $7 + local.tee $5 + local.get $4 i32.const 1579 i32.add i32.load8_u - local.get $4 - local.get $4 - local.get $4 + local.get $1 + local.get $1 + local.get $1 i32.const 3 i32.sub - local.get $2 + local.get $6 select i32.const 4 i32.div_s - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.const 99 i32.sub - local.get $2 + local.get $6 select i32.const 100 i32.div_s i32.sub - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.const 399 i32.sub - local.get $2 + local.get $6 select i32.const 400 i32.div_s @@ -5341,104 +5344,104 @@ i32.add i32.const 7 i32.rem_s - local.tee $2 + local.tee $1 i32.const 7 i32.const 0 - local.get $2 + local.get $1 i32.const 0 i32.lt_s select i32.add - local.set $9 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $6 - local.get $6 + local.get $3 + local.get $3 i32.const 31 i32.shr_s - local.tee $2 + local.tee $9 i32.add - local.get $2 + local.get $9 i32.xor call $~lib/number/I32#toString - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $9 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 1872 i32.store offset=12 - local.get $2 + local.get $9 i32.const 4 call $~lib/string/String#padStart - local.tee $4 + local.tee $1 i32.store offset=16 - local.get $6 + local.get $3 i32.const 0 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 1616 i32.store offset=8 - local.get $2 + local.get $3 i32.const 1616 - local.get $4 + local.get $1 call $~lib/string/String.__concat - local.tee $4 + local.tee $1 i32.store offset=16 end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $6 i32.const 2 i32.shl - local.get $3 + local.get $7 i32.add i32.load local.tee $3 i32.store offset=80 - local.get $8 + local.get $5 call $~lib/number/I32#toString - local.set $2 + local.set $5 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $5 i32.store offset=88 global.get $~lib/memory/__stack_pointer i32.const 1872 i32.store offset=92 - local.get $2 + local.get $5 i32.const 2 call $~lib/string/String#padStart - local.set $2 + local.set $5 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $5 i32.store offset=84 local.get $3 - local.get $2 + local.get $5 call $~lib/string/String.__concat local.set $3 global.get $~lib/memory/__stack_pointer local.get $3 i32.store offset=72 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.const 1 i32.sub i32.const 2 i32.shl - local.get $1 + local.get $8 i32.add i32.load - local.tee $1 + local.tee $4 i32.store offset=76 local.get $3 - local.get $1 + local.get $4 call $~lib/string/String.__concat - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=68 + local.get $3 local.get $1 - local.get $4 call $~lib/string/String.__concat local.set $1 global.get $~lib/memory/__stack_pointer @@ -5450,18 +5453,18 @@ local.get $1 i32.const 5072 call $~lib/string/String.__concat - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=52 local.get $0 i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $5 + local.tee $2 i64.const 86400000 i64.const 0 - local.get $5 + local.get $2 i64.const 0 i64.lt_s select @@ -5472,21 +5475,21 @@ call $~lib/number/I32#toString local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $4 local.get $3 i32.store offset=60 - local.get $1 + local.get $4 i32.const 1872 i32.store offset=68 local.get $3 i32.const 2 call $~lib/string/String#padStart - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=56 - local.get $2 local.get $1 + local.get $3 call $~lib/string/String.__concat local.set $1 global.get $~lib/memory/__stack_pointer @@ -5498,18 +5501,18 @@ local.get $1 i32.const 3520 call $~lib/string/String.__concat - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=36 local.get $0 i64.load offset=16 i64.const 3600000 i64.rem_s - local.tee $5 + local.tee $2 i64.const 3600000 i64.const 0 - local.get $5 + local.get $2 i64.const 0 i64.lt_s select @@ -5520,21 +5523,21 @@ call $~lib/number/I32#toString local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $4 local.get $3 i32.store offset=44 - local.get $1 + local.get $4 i32.const 1872 i32.store offset=52 local.get $3 i32.const 2 call $~lib/string/String#padStart - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=40 - local.get $2 local.get $1 + local.get $3 call $~lib/string/String.__concat local.set $1 global.get $~lib/memory/__stack_pointer @@ -5546,18 +5549,18 @@ local.get $1 i32.const 3520 call $~lib/string/String.__concat - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=12 local.get $0 i64.load offset=16 i64.const 60000 i64.rem_s - local.tee $5 + local.tee $2 i64.const 60000 i64.const 0 - local.get $5 + local.get $2 i64.const 0 i64.lt_s select @@ -5566,22 +5569,22 @@ i32.const 1000 i32.div_s call $~lib/number/I32#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=28 + local.tee $3 local.get $0 + i32.store offset=28 + local.get $3 i32.const 1872 i32.store offset=36 - local.get $1 + local.get $0 i32.const 2 call $~lib/string/String#padStart local.set $0 global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=24 - local.get $3 + local.get $1 local.get $0 call $~lib/string/String.__concat local.set $0 @@ -5624,13 +5627,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $4 i64.const 0 i64.store - local.get $2 + local.get $4 i64.const 0 i64.store offset=8 - local.get $2 + local.get $4 i64.const 0 i64.store offset=16 block $folding-inner2 @@ -5667,16 +5670,16 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.set $3 + local.set $6 local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $7 + local.tee $4 if - local.get $3 + local.get $6 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -5691,7 +5694,7 @@ br $folding-inner1 end else - local.get $3 + local.get $6 i32.eqz if i32.const 0 @@ -5700,56 +5703,56 @@ br $folding-inner1 end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $6 i32.const 2147483647 - local.get $3 + local.get $6 i32.const 2147483647 i32.ne select - local.tee $4 + local.tee $2 call $~lib/rt/__newArray local.tee $1 i32.store local.get $1 i32.load offset=4 - local.set $3 + local.set $4 loop $for-loop|0 - local.get $4 - local.get $5 + local.get $2 + local.get $3 i32.gt_s if global.get $~lib/memory/__stack_pointer i32.const 2 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $5 i32.store offset=8 - local.get $2 local.get $5 + local.get $3 i32.const 1 i32.shl local.get $0 i32.add i32.load16_u i32.store16 - local.get $5 + local.get $3 i32.const 2 i32.shl - local.get $3 + local.get $4 i32.add - local.get $2 + local.get $5 i32.store - local.get $2 + local.get $5 if local.get $1 - local.get $2 + local.get $5 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 + local.get $3 i32.const 1 i32.add - local.set $5 + local.set $3 br $for-loop|0 end end @@ -5758,76 +5761,76 @@ global.get $~lib/memory/__stack_pointer i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $7 i32.store offset=12 loop $while-continue|1 local.get $0 local.get $1 - local.get $4 + local.get $2 call $~lib/string/String#indexOf - local.tee $5 + local.tee $8 i32.const -1 i32.xor if - local.get $5 - local.get $4 + local.get $8 + local.get $2 i32.sub - local.tee $6 + local.tee $3 i32.const 0 i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $3 i32.const 1 i32.shl - local.tee $8 + local.tee $3 i32.const 1 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $9 i32.store offset=16 - local.get $6 - local.get $4 + local.get $9 + local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.get $8 + local.get $3 call $~lib/memory/memory.copy - local.get $2 - local.get $6 + local.get $7 + local.get $9 call $~lib/array/Array<~lib/string/String>#push else global.get $~lib/memory/__stack_pointer i32.const 3456 i32.store offset=20 - local.get $2 + local.get $7 i32.const 3456 call $~lib/array/Array<~lib/string/String>#push end - local.get $9 + local.get $5 i32.const 1 i32.add - local.tee $9 + local.tee $5 i32.const 2147483647 i32.eq br_if $folding-inner2 - local.get $5 - local.get $7 + local.get $4 + local.get $8 i32.add - local.set $4 + local.set $2 br $while-continue|1 end end - local.get $4 + local.get $2 i32.eqz if - local.get $2 + local.get $7 local.get $0 call $~lib/array/Array<~lib/string/String>#push br $folding-inner2 end - local.get $3 - local.get $4 + local.get $6 + local.get $2 i32.sub local.tee $1 i32.const 0 @@ -5837,27 +5840,27 @@ local.get $1 i32.const 1 i32.shl - local.tee $3 + local.tee $1 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.store offset=4 - local.get $1 - local.get $4 + local.get $3 + local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.get $3 - call $~lib/memory/memory.copy - local.get $2 local.get $1 + call $~lib/memory/memory.copy + local.get $7 + local.get $3 call $~lib/array/Array<~lib/string/String>#push else global.get $~lib/memory/__stack_pointer i32.const 3456 i32.store offset=20 - local.get $2 + local.get $7 i32.const 3456 call $~lib/array/Array<~lib/string/String>#push end @@ -5865,7 +5868,7 @@ i32.const 24 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $7 return end global.get $~lib/memory/__stack_pointer @@ -5886,7 +5889,7 @@ i32.const 24 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $7 ) (func $~lib/date/Date.fromString (param $0 i32) (result i32) (local $1 i32) @@ -5949,20 +5952,20 @@ i32.const 3488 i32.const 0 call $~lib/string/String#indexOf - local.tee $2 + local.tee $6 i32.const -1 i32.xor if global.get $~lib/memory/__stack_pointer local.get $0 i32.const 0 - local.get $2 + local.get $6 call $~lib/string/String#substring local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $0 - local.get $2 + local.get $6 i32.const 1 i32.add i32.const 2147483647 @@ -5980,7 +5983,7 @@ i32.store offset=12 local.get $0 i32.load offset=12 - local.tee $4 + local.tee $6 i32.const 1 i32.le_s if @@ -5994,24 +5997,24 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=16 - local.get $2 + local.get $3 call $~lib/util/string/strtol - local.set $5 + local.set $3 local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $2 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.store offset=16 - local.get $2 - call $~lib/util/string/strtol - local.set $6 local.get $4 + call $~lib/util/string/strtol + local.set $4 + local.get $6 i32.const 3 i32.ge_s if @@ -6028,23 +6031,23 @@ i32.const 3552 i32.const 0 call $~lib/string/String#indexOf - local.tee $2 + local.tee $6 i32.const -1 i32.xor if local.get $0 i32.const 0 - local.get $2 + local.get $6 call $~lib/string/String#substring - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=16 - local.get $3 + local.get $2 call $~lib/util/string/strtol - local.set $3 + local.set $2 local.get $0 - local.get $2 + local.get $6 i32.const 1 i32.add i32.const 2147483647 @@ -6055,11 +6058,11 @@ i32.store offset=16 local.get $0 call $~lib/util/string/strtol - local.set $7 + local.set $5 else local.get $0 call $~lib/util/string/strtol - local.set $3 + local.set $2 end end end @@ -6071,9 +6074,9 @@ local.get $1 i32.const 1616 call $~lib/string/String#split - local.tee $2 + local.tee $7 i32.store offset=24 - local.get $2 + local.get $7 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get local.set $0 @@ -6084,13 +6087,13 @@ call $~lib/util/string/strtol i32.const 1 local.set $1 - local.get $2 + local.get $7 i32.load offset=12 - local.tee $8 + local.tee $6 i32.const 2 i32.ge_s if (result i32) - local.get $2 + local.get $7 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get local.set $0 @@ -6100,11 +6103,11 @@ local.get $0 call $~lib/util/string/strtol local.set $1 - local.get $8 + local.get $6 i32.const 3 i32.ge_s if (result i32) - local.get $2 + local.get $7 i32.const 2 call $~lib/array/Array<~lib/string/String>#__get local.set $0 @@ -6122,10 +6125,10 @@ local.set $0 local.get $1 local.get $0 - local.get $5 - local.get $6 local.get $3 - local.get $7 + local.get $4 + local.get $2 + local.get $5 call $~lib/date/epochMillis call $~lib/date/Date#constructor global.get $~lib/memory/__stack_pointer @@ -7553,49 +7556,49 @@ global.get $~lib/memory/__stack_pointer i64.const 1467763200000 call $~lib/date/Date#constructor - local.tee $2 + local.tee $0 i32.store offset=4 - local.get $2 + local.get $0 i32.load - local.get $2 + local.get $0 i32.load offset=4 - local.tee $4 + local.tee $2 i32.const 3 i32.lt_s i32.sub - local.tee $0 + local.tee $3 i32.const 0 i32.ge_s - local.set $3 - local.get $2 + local.set $4 + local.get $0 i32.load offset=8 - local.get $4 + local.get $2 i32.const 1579 i32.add i32.load8_u - local.get $0 - local.get $0 - local.get $0 + local.get $3 + local.get $3 + local.get $3 i32.const 3 i32.sub - local.get $3 + local.get $4 select i32.const 4 i32.div_s - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 99 i32.sub - local.get $3 + local.get $4 select i32.const 100 i32.div_s i32.sub - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 399 i32.sub - local.get $3 + local.get $4 select i32.const 400 i32.div_s @@ -7626,49 +7629,49 @@ global.get $~lib/memory/__stack_pointer i64.const 1467763199999 call $~lib/date/Date#constructor - local.tee $2 + local.tee $0 i32.store offset=8 - local.get $2 + local.get $0 i32.load - local.get $2 + local.get $0 i32.load offset=4 - local.tee $4 + local.tee $2 i32.const 3 i32.lt_s i32.sub - local.tee $0 + local.tee $3 i32.const 0 i32.ge_s - local.set $3 - local.get $2 + local.set $4 + local.get $0 i32.load offset=8 - local.get $4 + local.get $2 i32.const 1579 i32.add i32.load8_u - local.get $0 - local.get $0 - local.get $0 + local.get $3 + local.get $3 + local.get $3 i32.const 3 i32.sub - local.get $3 + local.get $4 select i32.const 4 i32.div_s - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 99 i32.sub - local.get $3 + local.get $4 select i32.const 100 i32.div_s i32.sub - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 399 i32.sub - local.get $3 + local.get $4 select i32.const 400 i32.div_s @@ -7699,49 +7702,49 @@ global.get $~lib/memory/__stack_pointer i64.const 1467849599999 call $~lib/date/Date#constructor - local.tee $2 + local.tee $0 i32.store offset=12 - local.get $2 + local.get $0 i32.load - local.get $2 + local.get $0 i32.load offset=4 - local.tee $4 + local.tee $2 i32.const 3 i32.lt_s i32.sub - local.tee $0 + local.tee $3 i32.const 0 i32.ge_s - local.set $3 - local.get $2 + local.set $4 + local.get $0 i32.load offset=8 - local.get $4 + local.get $2 i32.const 1579 i32.add i32.load8_u - local.get $0 - local.get $0 - local.get $0 + local.get $3 + local.get $3 + local.get $3 i32.const 3 i32.sub - local.get $3 + local.get $4 select i32.const 4 i32.div_s - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 99 i32.sub - local.get $3 + local.get $4 select i32.const 100 i32.div_s i32.sub - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 399 i32.sub - local.get $3 + local.get $4 select i32.const 400 i32.div_s @@ -7772,49 +7775,49 @@ global.get $~lib/memory/__stack_pointer i64.const 1467849600000 call $~lib/date/Date#constructor - local.tee $2 + local.tee $0 i32.store offset=16 - local.get $2 + local.get $0 i32.load - local.get $2 + local.get $0 i32.load offset=4 - local.tee $4 + local.tee $2 i32.const 3 i32.lt_s i32.sub - local.tee $0 + local.tee $3 i32.const 0 i32.ge_s - local.set $3 - local.get $2 + local.set $4 + local.get $0 i32.load offset=8 - local.get $4 + local.get $2 i32.const 1579 i32.add i32.load8_u - local.get $0 - local.get $0 - local.get $0 + local.get $3 + local.get $3 + local.get $3 i32.const 3 i32.sub - local.get $3 + local.get $4 select i32.const 4 i32.div_s - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 99 i32.sub - local.get $3 + local.get $4 select i32.const 100 i32.div_s i32.sub - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 399 i32.sub - local.get $3 + local.get $4 select i32.const 400 i32.div_s @@ -7845,49 +7848,49 @@ global.get $~lib/memory/__stack_pointer i64.const 1468022400000 call $~lib/date/Date#constructor - local.tee $2 + local.tee $0 i32.store offset=20 - local.get $2 + local.get $0 i32.load - local.get $2 + local.get $0 i32.load offset=4 - local.tee $4 + local.tee $2 i32.const 3 i32.lt_s i32.sub - local.tee $0 + local.tee $3 i32.const 0 i32.ge_s - local.set $3 - local.get $2 + local.set $4 + local.get $0 i32.load offset=8 - local.get $4 + local.get $2 i32.const 1579 i32.add i32.load8_u - local.get $0 - local.get $0 - local.get $0 + local.get $3 + local.get $3 + local.get $3 i32.const 3 i32.sub - local.get $3 + local.get $4 select i32.const 4 i32.div_s - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 99 i32.sub - local.get $3 + local.get $4 select i32.const 100 i32.div_s i32.sub - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 399 i32.sub - local.get $3 + local.get $4 select i32.const 400 i32.div_s @@ -7918,49 +7921,49 @@ global.get $~lib/memory/__stack_pointer i64.const 1468022399999 call $~lib/date/Date#constructor - local.tee $2 + local.tee $0 i32.store offset=24 - local.get $2 + local.get $0 i32.load - local.get $2 + local.get $0 i32.load offset=4 - local.tee $4 + local.tee $2 i32.const 3 i32.lt_s i32.sub - local.tee $0 + local.tee $3 i32.const 0 i32.ge_s - local.set $3 - local.get $2 + local.set $4 + local.get $0 i32.load offset=8 - local.get $4 + local.get $2 i32.const 1579 i32.add i32.load8_u - local.get $0 - local.get $0 - local.get $0 + local.get $3 + local.get $3 + local.get $3 i32.const 3 i32.sub - local.get $3 + local.get $4 select i32.const 4 i32.div_s - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 99 i32.sub - local.get $3 + local.get $4 select i32.const 100 i32.div_s i32.sub - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 399 i32.sub - local.get $3 + local.get $4 select i32.const 400 i32.div_s @@ -7991,49 +7994,49 @@ global.get $~lib/memory/__stack_pointer i64.const 1468108799999 call $~lib/date/Date#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.load - local.get $2 + local.get $0 i32.load offset=4 - local.tee $4 + local.tee $2 i32.const 3 i32.lt_s i32.sub - local.tee $0 + local.tee $3 i32.const 0 i32.ge_s - local.set $3 - local.get $2 + local.set $4 + local.get $0 i32.load offset=8 - local.get $4 + local.get $2 i32.const 1579 i32.add i32.load8_u - local.get $0 - local.get $0 - local.get $0 + local.get $3 + local.get $3 + local.get $3 i32.const 3 i32.sub - local.get $3 + local.get $4 select i32.const 4 i32.div_s - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 99 i32.sub - local.get $3 + local.get $4 select i32.const 100 i32.div_s i32.sub - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 399 i32.sub - local.get $3 + local.get $4 select i32.const 400 i32.div_s @@ -8064,49 +8067,49 @@ global.get $~lib/memory/__stack_pointer i64.const 1468108800000 call $~lib/date/Date#constructor - local.tee $2 + local.tee $0 i32.store offset=4 - local.get $2 + local.get $0 i32.load - local.get $2 + local.get $0 i32.load offset=4 - local.tee $4 + local.tee $2 i32.const 3 i32.lt_s i32.sub - local.tee $0 + local.tee $3 i32.const 0 i32.ge_s - local.set $3 - local.get $2 + local.set $4 + local.get $0 i32.load offset=8 - local.get $4 + local.get $2 i32.const 1579 i32.add i32.load8_u - local.get $0 - local.get $0 - local.get $0 + local.get $3 + local.get $3 + local.get $3 i32.const 3 i32.sub - local.get $3 + local.get $4 select i32.const 4 i32.div_s - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 99 i32.sub - local.get $3 + local.get $4 select i32.const 100 i32.div_s i32.sub - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 399 i32.sub - local.get $3 + local.get $4 select i32.const 400 i32.div_s @@ -9169,14 +9172,14 @@ global.get $~lib/memory/__stack_pointer i64.const 8639999999999999 call $~lib/date/Date#constructor - local.tee $2 + local.tee $0 i32.store offset=16 global.get $~lib/memory/__stack_pointer i64.const -8639999999999999 call $~lib/date/Date#constructor - local.tee $0 + local.tee $2 i32.store offset=12 - local.get $0 + local.get $2 i32.load i32.const -271821 i32.ne @@ -9188,7 +9191,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.load offset=4 i32.const 4 i32.ne @@ -9200,7 +9203,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.load offset=8 i32.const 20 i32.ne @@ -9212,7 +9215,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i64.load offset=16 i64.const 86400000 i64.rem_s @@ -9235,7 +9238,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i64.load offset=16 i64.const 3600000 i64.rem_s @@ -9258,7 +9261,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i64.load offset=16 i64.const 60000 i64.rem_s @@ -9281,7 +9284,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i64.load offset=16 i64.const 1000 i64.rem_s @@ -9304,17 +9307,17 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 call $~lib/date/Date#toISOString - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer local.tee $3 - local.get $2 + local.get $0 i32.store offset=28 local.get $3 i32.const 7360 i32.store offset=32 - local.get $2 + local.get $0 i32.const 7360 call $~lib/string/String.__eq i32.eqz @@ -9326,7 +9329,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 call $~lib/date/Date#toISOString local.set $0 global.get $~lib/memory/__stack_pointer @@ -9482,11 +9485,11 @@ i32.shr_u i32.const 1 i32.shl - local.tee $6 + local.tee $5 local.get $1 i32.const 1 i32.shl - local.tee $1 + local.tee $3 i32.gt_u i32.or if @@ -9498,70 +9501,70 @@ return end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.const 1 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store local.get $2 - local.get $1 - local.get $6 + local.get $3 + local.get $5 i32.sub - local.tee $4 + local.tee $3 i32.lt_u if local.get $2 - local.get $4 + local.get $3 i32.const 2 i32.sub local.get $2 i32.div_u i32.mul - local.tee $1 - local.set $7 + local.tee $7 + local.set $6 loop $while-continue|0 - local.get $1 - local.get $5 - i32.gt_u + local.get $4 + local.get $7 + i32.lt_u if - local.get $3 - local.get $5 + local.get $1 + local.get $4 i32.add i32.const 1872 local.get $2 call $~lib/memory/memory.copy local.get $2 - local.get $5 + local.get $4 i32.add - local.set $5 + local.set $4 br $while-continue|0 end end - local.get $3 - local.get $7 + local.get $1 + local.get $6 i32.add i32.const 1872 - local.get $4 - local.get $7 + local.get $3 + local.get $6 i32.sub call $~lib/memory/memory.copy else - local.get $3 + local.get $1 i32.const 1872 - local.get $4 + local.get $3 call $~lib/memory/memory.copy end + local.get $1 local.get $3 - local.get $4 i32.add local.get $0 - local.get $6 + local.get $5 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 ) (func $~lib/string/String#substring (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -9590,51 +9593,51 @@ i32.const 0 i32.gt_s select - local.tee $3 + local.tee $1 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $1 + local.tee $3 local.get $1 local.get $3 - i32.gt_s + i32.lt_s select - local.tee $3 + local.tee $4 local.get $2 i32.const 0 local.get $2 i32.const 0 i32.gt_s select - local.tee $2 - local.get $1 + local.tee $1 + local.get $3 local.get $1 - local.get $2 - i32.gt_s + local.get $3 + i32.lt_s select local.tee $2 local.get $2 - local.get $3 + local.get $4 i32.gt_s select i32.const 1 i32.shl - local.set $4 - local.get $3 + local.set $1 + local.get $4 local.get $2 local.get $2 - local.get $3 + local.get $4 i32.lt_s select i32.const 1 i32.shl - local.tee $3 - local.get $4 - i32.sub local.tee $2 + local.get $1 + i32.sub + local.tee $4 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -9645,12 +9648,12 @@ return end i32.const 0 - local.get $1 + local.get $3 i32.const 1 i32.shl - local.get $3 + local.get $2 i32.eq - local.get $4 + local.get $1 select if global.get $~lib/memory/__stack_pointer @@ -9661,22 +9664,22 @@ return end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 local.get $0 - local.get $4 + local.get $1 i32.add - local.get $2 + local.get $4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 ) (func $~lib/rt/__newArray (param $0 i32) (result i32) (local $1 i32) @@ -9705,38 +9708,38 @@ local.get $0 i32.const 2 i32.shl - local.tee $3 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store i32.const 16 i32.const 5 call $~lib/rt/itcms/__new - local.tee $1 - local.get $2 + local.tee $3 + local.get $1 i32.store - local.get $2 + local.get $1 if + local.get $3 local.get $1 - local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $3 local.get $1 - local.get $2 i32.store offset=4 - local.get $1 local.get $3 + local.get $2 i32.store offset=8 - local.get $1 + local.get $3 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $3 ) (func $~lib/array/Array<~lib/string/String>#__get (param $0 i32) (param $1 i32) (result i32) global.get $~lib/memory/__stack_pointer @@ -9839,16 +9842,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $3 i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $3 local.get $1 local.get $2 select @@ -9857,7 +9860,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $0 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/map.optimized.wat b/tests/compiler/std/map.optimized.wat index 6675dbca49..42ebcc914a 100644 --- a/tests/compiler/std/map.optimized.wat +++ b/tests/compiler/std/map.optimized.wat @@ -133,7 +133,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -156,7 +156,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -166,15 +166,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -215,20 +215,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -323,19 +323,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -360,9 +360,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -370,17 +370,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -668,10 +668,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -683,15 +683,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -721,7 +721,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1034,7 +1034,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 18404 i32.ge_u if @@ -1044,20 +1044,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1070,8 +1070,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1298,14 +1297,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1315,17 +1314,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1341,22 +1340,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1367,11 +1366,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1476,7 +1475,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $5 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1502,34 +1501,34 @@ i32.const 4 i32.sub end - local.tee $2 + local.tee $5 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $2 i32.eqz if memory.size - local.tee $4 - local.get $2 + local.tee $2 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $2 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $2 + local.get $5 i32.add else - local.get $2 + local.get $5 end i32.const 4 - local.get $5 + local.get $3 i32.load offset=1568 - local.get $4 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1543,16 +1542,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $3 + local.tee $4 + local.get $2 local.get $4 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1560,18 +1559,18 @@ unreachable end end - local.get $5 - local.get $4 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $3 local.get $5 - local.get $2 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $2 i32.eqz if i32.const 0 @@ -1582,11 +1581,11 @@ unreachable end end - local.get $3 + local.get $2 i32.load i32.const -4 i32.and - local.get $2 + local.get $5 i32.lt_u if i32.const 0 @@ -1596,13 +1595,13 @@ call $~lib/builtins/abort unreachable end - local.get $5 local.get $3 + local.get $2 call $~lib/rt/tlsf/removeBlock - local.get $3 - i32.load - local.set $4 local.get $2 + i32.load + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1615,89 +1614,89 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 i32.const -4 i32.and - local.get $2 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.const 2 i32.and - local.get $2 + local.get $5 i32.or i32.store + local.get $5 local.get $2 - local.get $3 i32.const 4 i32.add i32.add - local.tee $2 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $3 local.get $5 - local.get $2 call $~lib/rt/tlsf/insertBlock else - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.const -2 i32.and i32.store - local.get $3 + local.get $2 i32.const 4 i32.add - local.get $3 + local.get $2 i32.load i32.const -4 i32.and i32.add - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.load i32.const -3 i32.and i32.store end - local.get $3 + local.get $2 local.get $1 i32.store offset=12 - local.get $3 + local.get $2 local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace local.tee $1 i32.load offset=8 - local.set $2 - local.get $3 + local.set $3 + local.get $2 global.get $~lib/rt/itcms/white local.get $1 i32.or i32.store offset=4 - local.get $3 local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $3 + local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total - local.get $3 + local.get $2 i32.load i32.const -4 i32.and @@ -1705,7 +1704,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $3 + local.get $2 i32.const 20 i32.add local.tee $1 @@ -1737,26 +1736,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -1764,37 +1763,37 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $5 + local.tee $4 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $8 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 - local.get $5 - local.get $8 + local.get $4 + local.get $7 i32.ne if - local.get $5 + local.get $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $5 + local.get $4 i32.load8_s - local.tee $4 + local.tee $8 i32.store8 local.get $2 - local.get $5 + local.get $4 i32.load offset=4 i32.store offset=4 local.get $2 - local.get $4 + local.get $8 i32.extend8_s i32.const -1028477379 i32.mul @@ -1804,22 +1803,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 16 i32.shr_u i32.xor @@ -1827,12 +1826,12 @@ i32.and i32.const 2 i32.shl - local.get $6 + local.get $5 i32.add - local.tee $4 + local.tee $8 i32.load i32.store offset=8 - local.get $4 + local.get $8 local.get $2 i32.store local.get $2 @@ -1840,20 +1839,20 @@ i32.add local.set $2 end - local.get $5 + local.get $4 i32.const 12 i32.add - local.set $5 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $6 + local.get $5 i32.store - local.get $6 + local.get $5 if local.get $0 - local.get $6 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -1869,7 +1868,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -1977,17 +1976,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2133,19 +2132,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2160,7 +2159,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -2171,10 +2170,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2182,10 +2181,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -2196,7 +2195,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2251,7 +2250,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -2262,10 +2261,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2273,10 +2272,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -2287,7 +2286,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2313,17 +2312,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2338,7 +2337,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -2349,10 +2348,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2360,10 +2359,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -2374,7 +2373,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2411,131 +2410,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -2552,59 +2555,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -2713,29 +2720,28 @@ select local.get $2 i32.shl - local.set $1 + local.set $6 block $__inlined_func$~lib/rt/itcms/__renew (result i32) local.get $3 - if (result i32) + if local.get $8 i32.const 1 i32.shl - local.tee $2 + local.tee $1 i32.const 1073741820 - local.get $2 + local.get $1 i32.const 1073741820 i32.lt_u select - local.tee $2 - local.get $1 + local.tee $1 + local.get $6 local.get $1 - local.get $2 - i32.lt_u + local.get $6 + i32.gt_u select - else - local.get $1 + local.set $6 end - local.tee $6 + local.get $6 local.get $4 local.tee $2 i32.const 20 @@ -2818,17 +2824,17 @@ i32.sub local.set $7 local.get $3 - local.tee $5 + local.tee $4 i32.const 1 i32.add local.set $3 local.get $1 - local.tee $4 + local.tee $5 i32.const 1 i32.add local.set $1 - local.get $5 local.get $4 + local.get $5 i32.load8_u i32.store8 br $while-continue|0 @@ -2863,17 +2869,17 @@ local.get $7 if local.get $3 - local.tee $5 + local.tee $4 i32.const 1 i32.add local.set $3 local.get $1 - local.tee $4 + local.tee $5 i32.const 1 i32.add local.set $1 - local.get $5 local.get $4 + local.get $5 i32.load8_u i32.store8 local.get $7 @@ -3107,26 +3113,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -3134,37 +3140,37 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $5 + local.tee $4 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $8 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 - local.get $5 - local.get $8 + local.get $4 + local.get $7 i32.ne if - local.get $5 + local.get $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $5 + local.get $4 i32.load - local.tee $4 + local.tee $8 i32.store local.get $2 - local.get $5 + local.get $4 i32.load offset=4 i32.store offset=4 local.get $2 - local.get $4 + local.get $8 i32.const -1028477379 i32.mul i32.const 374761397 @@ -3173,22 +3179,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 16 i32.shr_u i32.xor @@ -3196,12 +3202,12 @@ i32.and i32.const 2 i32.shl - local.get $6 + local.get $5 i32.add - local.tee $4 + local.tee $8 i32.load i32.store offset=8 - local.get $4 + local.get $8 local.get $2 i32.store local.get $2 @@ -3209,20 +3215,20 @@ i32.add local.set $2 end - local.get $5 + local.get $4 i32.const 12 i32.add - local.set $5 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $6 + local.get $5 i32.store - local.get $6 + local.get $5 if local.get $0 - local.get $6 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -3238,7 +3244,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -3343,14 +3349,14 @@ i32.load offset=4 i32.const 1 i32.shr_u - local.tee $2 + local.tee $1 i32.const 1 i32.add i32.const 4 local.get $0 i32.load offset=20 - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.lt_u select @@ -3370,7 +3376,7 @@ end if local.get $0 - local.get $2 + local.get $1 call $~lib/map/Map#rehash end ) @@ -3439,17 +3445,16 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $2 i64.const 0 i64.store - local.get $4 + local.get $2 i64.const 0 i64.store offset=8 - local.get $4 + local.get $2 i32.const 0 i32.store offset=16 - local.get $4 - local.tee $1 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -3465,48 +3470,48 @@ i32.const 24 i32.const 3 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $11 i32.store - local.get $4 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $4 i32.store - local.get $5 + local.get $4 if + local.get $11 local.get $4 - local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $11 i32.const 3 i32.store offset=4 - local.get $4 + local.get $11 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $4 i32.store offset=8 - local.get $5 + local.get $4 if + local.get $11 local.get $4 - local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $11 i32.const 4 i32.store offset=12 - local.get $4 + local.get $11 i32.const 0 i32.store offset=16 - local.get $4 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $4 + local.get $2 + local.get $11 i32.store loop $for-loop|1 local.get $3 @@ -3514,9 +3519,9 @@ i32.const 100 i32.lt_s if - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 local.get $3 i32.extend8_s @@ -3528,44 +3533,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $6 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.load offset=8 - local.tee $6 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $6 i32.load8_u local.get $3 i32.const 255 @@ -3573,17 +3578,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $6 + local.get $2 i32.const -2 i32.and - local.set $1 + local.set $6 br $while-continue|0 end end i32.const 0 - local.set $1 + local.set $6 end - local.get $1 + local.get $6 if i32.const 0 i32.const 1568 @@ -3592,19 +3597,19 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $3 local.get $3 i32.extend8_s - local.tee $1 + local.tee $2 i32.const 10 i32.add call $~lib/map/Map#set - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761394 @@ -3613,44 +3618,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $6 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.load offset=8 - local.tee $6 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $6 i32.load8_u local.get $3 i32.const 255 @@ -3658,17 +3663,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $6 + local.get $2 i32.const -2 i32.and - local.set $1 + local.set $6 br $while-continue|02 end end i32.const 0 - local.set $1 + local.set $6 end - local.get $1 + local.get $6 i32.eqz if i32.const 0 @@ -3678,7 +3683,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $3 call $~lib/map/Map#get local.get $3 @@ -3701,7 +3706,7 @@ br $for-loop|1 end end - local.get $4 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -3721,9 +3726,9 @@ i32.const 100 i32.lt_s if - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 local.get $3 i32.extend8_s @@ -3735,44 +3740,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $6 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.load offset=8 - local.tee $6 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $6 i32.load8_u local.get $3 i32.const 255 @@ -3780,17 +3785,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $6 + local.get $2 i32.const -2 i32.and - local.set $1 + local.set $6 br $while-continue|05 end end i32.const 0 - local.set $1 + local.set $6 end - local.get $1 + local.get $6 i32.eqz if i32.const 0 @@ -3800,7 +3805,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $3 call $~lib/map/Map#get local.get $3 @@ -3816,19 +3821,19 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $3 local.get $3 i32.extend8_s - local.tee $1 + local.tee $2 i32.const 20 i32.add call $~lib/map/Map#set - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761394 @@ -3837,44 +3842,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $6 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.load offset=8 - local.tee $6 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $6 i32.load8_u local.get $3 i32.const 255 @@ -3882,17 +3887,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $6 + local.get $2 i32.const -2 i32.and - local.set $1 + local.set $6 br $while-continue|08 end end i32.const 0 - local.set $1 + local.set $6 end - local.get $1 + local.get $6 i32.eqz if i32.const 0 @@ -3902,7 +3907,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $3 call $~lib/map/Map#get local.get $3 @@ -3925,7 +3930,7 @@ br $for-loop|3 end end - local.get $4 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -3938,8 +3943,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -3948,18 +3953,17 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store - local.get $4 + local.get $11 i32.load offset=8 - local.set $11 - local.get $4 + local.set $8 + local.get $11 i32.load offset=16 - local.tee $12 + local.tee $7 local.set $6 - local.get $3 - local.tee $1 + local.get $2 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -3968,25 +3972,25 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $4 i64.const 0 i64.store - local.get $3 + local.get $4 i32.const 16 i32.const 4 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $5 i32.store - local.get $3 + local.get $5 i32.const 0 i32.store - local.get $3 + local.get $5 i32.const 0 i32.store offset=4 - local.get $3 + local.get $5 i32.const 0 i32.store offset=8 - local.get $3 + local.get $5 i32.const 0 i32.store offset=12 local.get $6 @@ -4007,91 +4011,90 @@ i32.const 8 i32.gt_u select - local.tee $8 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $4 i32.store offset=4 - local.get $5 - local.get $8 - call $~lib/memory/memory.fill + local.get $4 local.get $3 + call $~lib/memory/memory.fill local.get $5 + local.get $4 i32.store - local.get $5 + local.get $4 if - local.get $3 local.get $5 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 local.get $5 + local.get $4 i32.store offset=4 + local.get $5 local.get $3 - local.get $8 i32.store offset=8 - local.get $3 + local.get $5 local.get $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $3 + local.get $2 + local.get $5 i32.store loop $for-loop|0 local.get $7 - local.get $12 - i32.lt_s + local.get $10 + i32.gt_s if - local.get $7 + local.get $10 i32.const 12 i32.mul - local.get $11 + local.get $8 i32.add - local.tee $1 + local.tee $2 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $3 - local.get $2 + local.get $5 local.get $1 + local.get $2 i32.load8_s call $~lib/array/Array#__set - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 end - local.get $7 + local.get $10 i32.const 1 i32.add - local.set $7 + local.set $10 br $for-loop|0 end end - local.get $3 - local.get $2 + local.get $5 + local.get $1 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 - local.get $2 + local.get $5 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 - local.tee $5 + local.get $5 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $11 call $~lib/map/Map#values - local.tee $13 + local.tee $15 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -4103,58 +4106,58 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store - local.get $3 + local.get $2 i32.const 24 i32.const 6 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $10 i32.store - local.get $3 + local.get $10 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if - local.get $3 - local.get $1 + local.get $10 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 + local.get $10 i32.const 3 i32.store offset=4 - local.get $3 + local.get $10 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=8 - local.get $1 + local.get $2 if - local.get $3 - local.get $1 + local.get $10 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 + local.get $10 i32.const 4 i32.store offset=12 - local.get $3 + local.get $10 i32.const 0 i32.store offset=16 - local.get $3 + local.get $10 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $10 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $11 + local.tee $1 i32.store offset=16 loop $for-loop|4 local.get $5 @@ -4163,7 +4166,7 @@ i32.gt_s if local.get $0 - local.tee $6 + local.tee $3 local.get $5 i32.load offset=12 i32.ge_u @@ -4175,21 +4178,21 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $3 local.get $5 i32.load offset=4 i32.add i32.load8_s - local.set $0 - local.get $13 - local.get $6 + local.set $4 + local.get $15 + local.get $3 call $~lib/array/Array#__get - local.set $12 - local.get $4 + local.set $9 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 - local.get $0 + local.get $4 i32.extend8_s i32.const -1028477379 i32.mul @@ -4199,62 +4202,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $6 block $__inlined_func$~lib/map/Map#find10 loop $while-continue|011 - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.load offset=8 - local.tee $7 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $6 i32.load8_u - local.get $0 + local.get $4 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $7 + local.get $0 i32.const -2 i32.and - local.set $1 + local.set $6 br $while-continue|011 end end i32.const 0 - local.set $1 + local.set $6 end - local.get $1 + local.get $6 i32.eqz if i32.const 0 @@ -4264,14 +4267,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 - local.get $12 + local.get $9 i32.const 20 i32.sub - local.tee $7 + local.tee $2 i32.extend8_s i32.const -1028477379 i32.mul @@ -4281,62 +4284,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $6 block $__inlined_func$~lib/map/Map#find13 loop $while-continue|014 - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.load offset=8 - local.tee $8 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $6 i32.load8_u - local.get $7 + local.get $2 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $8 + local.get $0 i32.const -2 i32.and - local.set $1 + local.set $6 br $while-continue|014 end end i32.const 0 - local.set $1 + local.set $6 end - local.get $1 + local.get $6 i32.eqz if i32.const 0 @@ -4357,10 +4360,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $10 i32.load - local.get $0 - local.tee $7 + local.get $4 i32.extend8_s i32.const -1028477379 i32.mul @@ -4390,7 +4392,7 @@ local.get $0 i32.xor local.tee $14 - local.get $3 + local.get $10 i32.load offset=4 i32.and i32.const 2 @@ -4412,7 +4414,7 @@ else local.get $0 i32.load8_u - local.get $7 + local.get $4 i32.const 255 i32.and i32.eq @@ -4431,18 +4433,18 @@ local.get $0 if local.get $0 - local.get $7 + local.get $4 i32.store8 offset=1 else - local.get $3 + local.get $10 i32.load offset=16 - local.get $3 + local.get $10 i32.load offset=12 i32.eq if - local.get $3 + local.get $10 i32.load offset=20 - local.get $3 + local.get $10 i32.load offset=12 i32.const 3 i32.mul @@ -4450,17 +4452,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $3 + local.get $10 i32.load offset=4 else - local.get $3 + local.get $10 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $2 + local.set $8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -4474,14 +4476,14 @@ i64.const 0 i64.store local.get $0 - local.get $2 + local.get $8 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $10 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -4489,45 +4491,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $15 + local.tee $13 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $3 + local.get $10 i32.load offset=8 - local.tee $8 - local.get $3 + local.tee $16 + local.get $10 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $16 - local.get $1 + local.set $12 + local.get $2 local.set $0 loop $while-continue|016 - local.get $8 + local.get $12 local.get $16 i32.ne if - local.get $8 + local.get $16 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $8 + local.get $16 i32.load8_s - local.tee $9 + local.tee $6 i32.store8 local.get $0 - local.get $8 + local.get $16 i32.load8_s offset=1 i32.store8 offset=1 local.get $0 - local.get $9 + local.get $6 i32.extend8_s i32.const -1028477379 i32.mul @@ -4537,35 +4539,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $9 + local.tee $6 i32.const 15 i32.shr_u - local.get $9 + local.get $6 i32.xor i32.const -2048144777 i32.mul - local.tee $9 + local.tee $6 i32.const 13 i32.shr_u - local.get $9 + local.get $6 i32.xor i32.const -1028477379 i32.mul - local.tee $9 + local.tee $6 i32.const 16 i32.shr_u - local.get $9 + local.get $6 i32.xor - local.get $2 + local.get $8 i32.and i32.const 2 i32.shl - local.get $10 + local.get $7 i32.add - local.tee $9 + local.tee $6 i32.load i32.store offset=4 - local.get $9 + local.get $6 local.get $0 i32.store local.get $0 @@ -4573,39 +4575,39 @@ i32.add local.set $0 end - local.get $8 + local.get $16 i32.const 8 i32.add - local.set $8 + local.set $16 br $while-continue|016 end end - local.get $3 local.get $10 + local.get $7 i32.store - local.get $10 + local.get $7 if - local.get $3 local.get $10 + local.get $7 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $2 + local.get $10 + local.get $8 i32.store offset=4 - local.get $3 - local.get $1 + local.get $10 + local.get $2 i32.store offset=8 - local.get $1 + local.get $2 if - local.get $3 - local.get $1 + local.get $10 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $15 + local.get $10 + local.get $13 i32.store offset=12 - local.get $3 - local.get $3 + local.get $10 + local.get $10 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -4614,70 +4616,70 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $10 i32.load offset=8 - local.tee $0 + local.tee $2 i32.store - local.get $3 - local.get $3 + local.get $10 + local.get $10 i32.load offset=16 - local.tee $1 + local.tee $0 i32.const 1 i32.add i32.store offset=16 - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $0 + local.get $2 i32.add - local.tee $0 - local.get $7 + local.tee $2 + local.get $4 i32.store8 - local.get $0 - local.get $7 + local.get $2 + local.get $4 i32.store8 offset=1 - local.get $3 - local.get $3 + local.get $10 + local.get $10 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $0 - local.get $3 + local.get $2 + local.get $10 i32.load - local.get $3 + local.get $10 i32.load offset=4 local.get $14 i32.and i32.const 2 i32.shl i32.add - local.tee $1 + local.tee $0 i32.load i32.store offset=4 - local.get $1 local.get $0 + local.get $2 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 - local.get $12 + local.get $1 + local.get $9 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $6 + local.get $3 i32.const 1 i32.add local.set $0 br $for-loop|4 end end - local.get $3 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -4689,7 +4691,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $1 i32.load offset=20 i32.const 100 i32.ne @@ -4709,9 +4711,9 @@ i32.const 50 i32.lt_s if - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 local.get $0 i32.extend8_s @@ -4723,24 +4725,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 @@ -4754,7 +4756,7 @@ if local.get $3 i32.load offset=8 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -4768,7 +4770,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find18 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $3 @@ -4788,7 +4790,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $0 call $~lib/map/Map#get local.get $0 @@ -4804,12 +4806,12 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $0 call $~lib/map/Map#delete - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 local.get $0 i32.extend8_s @@ -4821,24 +4823,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 @@ -4852,7 +4854,7 @@ if local.get $3 i32.load offset=8 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -4866,7 +4868,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find21 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $3 @@ -4892,7 +4894,7 @@ br $for-loop|6 end end - local.get $4 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -4912,9 +4914,9 @@ i32.const 50 i32.lt_s if - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 local.get $0 i32.extend8_s @@ -4926,24 +4928,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 @@ -4957,7 +4959,7 @@ if local.get $3 i32.load offset=8 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -4971,7 +4973,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find24 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $3 @@ -4990,19 +4992,19 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $0 local.get $0 i32.extend8_s - local.tee $3 + local.tee $2 i32.const 10 i32.add call $~lib/map/Map#set - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 - local.get $3 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761394 @@ -5011,24 +5013,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 @@ -5042,7 +5044,7 @@ if local.get $3 i32.load offset=8 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -5056,7 +5058,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find27 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $3 @@ -5076,12 +5078,12 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $0 call $~lib/map/Map#delete - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 local.get $0 i32.extend8_s @@ -5093,24 +5095,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 @@ -5124,7 +5126,7 @@ if local.get $3 i32.load offset=8 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -5138,7 +5140,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find30 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $3 @@ -5164,7 +5166,7 @@ br $for-loop|8 end end - local.get $4 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -5176,9 +5178,9 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 call $~lib/map/Map#clear - local.get $4 + local.get $11 i32.load offset=20 if i32.const 0 @@ -5225,26 +5227,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -5252,37 +5254,37 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $5 + local.tee $4 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $8 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 - local.get $5 - local.get $8 + local.get $4 + local.get $7 i32.ne if - local.get $5 + local.get $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $5 + local.get $4 i32.load8_u - local.tee $4 + local.tee $8 i32.store8 local.get $2 - local.get $5 + local.get $4 i32.load offset=4 i32.store offset=4 local.get $2 - local.get $4 + local.get $8 i32.const -1028477379 i32.mul i32.const 374761394 @@ -5291,22 +5293,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 16 i32.shr_u i32.xor @@ -5314,12 +5316,12 @@ i32.and i32.const 2 i32.shl - local.get $6 + local.get $5 i32.add - local.tee $4 + local.tee $8 i32.load i32.store offset=8 - local.get $4 + local.get $8 local.get $2 i32.store local.get $2 @@ -5327,20 +5329,20 @@ i32.add local.set $2 end - local.get $5 + local.get $4 i32.const 12 i32.add - local.set $5 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $6 + local.get $5 i32.store - local.get $6 + local.get $5 if local.get $0 - local.get $6 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -5356,7 +5358,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -5547,14 +5549,14 @@ i32.load offset=4 i32.const 1 i32.shr_u - local.tee $2 + local.tee $1 i32.const 1 i32.add i32.const 4 local.get $0 i32.load offset=20 - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.lt_u select @@ -5574,7 +5576,7 @@ end if local.get $0 - local.get $2 + local.get $1 call $~lib/map/Map#rehash end ) @@ -5606,17 +5608,16 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $2 i64.const 0 i64.store - local.get $4 + local.get $2 i64.const 0 i64.store offset=8 - local.get $4 + local.get $2 i32.const 0 i32.store offset=16 - local.get $4 - local.tee $1 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -5632,48 +5633,48 @@ i32.const 24 i32.const 8 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $11 i32.store - local.get $4 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $4 i32.store - local.get $5 + local.get $4 if + local.get $11 local.get $4 - local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $11 i32.const 3 i32.store offset=4 - local.get $4 + local.get $11 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $4 i32.store offset=8 - local.get $5 + local.get $4 if + local.get $11 local.get $4 - local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $11 i32.const 4 i32.store offset=12 - local.get $4 + local.get $11 i32.const 0 i32.store offset=16 - local.get $4 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $4 + local.get $2 + local.get $11 i32.store loop $for-loop|1 local.get $3 @@ -5682,9 +5683,9 @@ i32.const 100 i32.lt_u if - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 local.get $3 i32.const 255 @@ -5697,44 +5698,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $6 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.load offset=8 - local.tee $6 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $6 i32.load8_u local.get $3 i32.const 255 @@ -5742,17 +5743,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $6 + local.get $2 i32.const -2 i32.and - local.set $1 + local.set $6 br $while-continue|0 end end i32.const 0 - local.set $1 + local.set $6 end - local.get $1 + local.get $6 if i32.const 0 i32.const 1568 @@ -5761,20 +5762,20 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $3 local.get $3 i32.const 255 i32.and - local.tee $1 + local.tee $2 i32.const 10 i32.add call $~lib/map/Map#set - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761394 @@ -5783,44 +5784,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $6 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.load offset=8 - local.tee $6 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $6 i32.load8_u local.get $3 i32.const 255 @@ -5828,17 +5829,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $6 + local.get $2 i32.const -2 i32.and - local.set $1 + local.set $6 br $while-continue|02 end end i32.const 0 - local.set $1 + local.set $6 end - local.get $1 + local.get $6 i32.eqz if i32.const 0 @@ -5848,7 +5849,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $3 call $~lib/map/Map#get local.get $3 @@ -5872,7 +5873,7 @@ br $for-loop|1 end end - local.get $4 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -5893,9 +5894,9 @@ i32.const 100 i32.lt_u if - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 local.get $3 i32.const 255 @@ -5908,44 +5909,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $6 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.load offset=8 - local.tee $6 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $6 i32.load8_u local.get $3 i32.const 255 @@ -5953,17 +5954,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $6 + local.get $2 i32.const -2 i32.and - local.set $1 + local.set $6 br $while-continue|05 end end i32.const 0 - local.set $1 + local.set $6 end - local.get $1 + local.get $6 i32.eqz if i32.const 0 @@ -5973,7 +5974,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $3 call $~lib/map/Map#get local.get $3 @@ -5990,20 +5991,20 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $3 local.get $3 i32.const 255 i32.and - local.tee $1 + local.tee $2 i32.const 20 i32.add call $~lib/map/Map#set - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761394 @@ -6012,44 +6013,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $6 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.load offset=8 - local.tee $6 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $6 i32.load8_u local.get $3 i32.const 255 @@ -6057,17 +6058,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $6 + local.get $2 i32.const -2 i32.and - local.set $1 + local.set $6 br $while-continue|08 end end i32.const 0 - local.set $1 + local.set $6 end - local.get $1 + local.get $6 i32.eqz if i32.const 0 @@ -6077,7 +6078,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $3 call $~lib/map/Map#get local.get $3 @@ -6101,7 +6102,7 @@ br $for-loop|3 end end - local.get $4 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -6114,8 +6115,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -6124,18 +6125,17 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store - local.get $4 + local.get $11 i32.load offset=8 - local.set $11 - local.get $4 + local.set $8 + local.get $11 i32.load offset=16 - local.tee $12 + local.tee $7 local.set $6 - local.get $3 - local.tee $1 + local.get $2 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -6144,25 +6144,25 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $4 i64.const 0 i64.store - local.get $3 + local.get $4 i32.const 16 i32.const 9 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $5 i32.store - local.get $3 + local.get $5 i32.const 0 i32.store - local.get $3 + local.get $5 i32.const 0 i32.store offset=4 - local.get $3 + local.get $5 i32.const 0 i32.store offset=8 - local.get $3 + local.get $5 i32.const 0 i32.store offset=12 local.get $6 @@ -6183,91 +6183,90 @@ i32.const 8 i32.gt_u select - local.tee $8 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $4 i32.store offset=4 - local.get $5 - local.get $8 - call $~lib/memory/memory.fill + local.get $4 local.get $3 + call $~lib/memory/memory.fill local.get $5 + local.get $4 i32.store - local.get $5 + local.get $4 if - local.get $3 local.get $5 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 local.get $5 + local.get $4 i32.store offset=4 + local.get $5 local.get $3 - local.get $8 i32.store offset=8 - local.get $3 + local.get $5 local.get $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $3 + local.get $2 + local.get $5 i32.store loop $for-loop|0 local.get $7 - local.get $12 - i32.lt_s + local.get $10 + i32.gt_s if - local.get $7 + local.get $10 i32.const 12 i32.mul - local.get $11 + local.get $8 i32.add - local.tee $1 + local.tee $2 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $3 - local.get $2 + local.get $5 local.get $1 + local.get $2 i32.load8_u call $~lib/array/Array#__set - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 end - local.get $7 + local.get $10 i32.const 1 i32.add - local.set $7 + local.set $10 br $for-loop|0 end end - local.get $3 - local.get $2 + local.get $5 + local.get $1 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 - local.get $2 + local.get $5 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 - local.tee $5 + local.get $5 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $11 call $~lib/map/Map#values - local.tee $13 + local.tee $15 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -6279,58 +6278,58 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store - local.get $3 + local.get $2 i32.const 24 i32.const 10 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $10 i32.store - local.get $3 + local.get $10 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if - local.get $3 - local.get $1 + local.get $10 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 + local.get $10 i32.const 3 i32.store offset=4 - local.get $3 + local.get $10 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=8 - local.get $1 + local.get $2 if - local.get $3 - local.get $1 + local.get $10 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 + local.get $10 i32.const 4 i32.store offset=12 - local.get $3 + local.get $10 i32.const 0 i32.store offset=16 - local.get $3 + local.get $10 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $10 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $11 + local.tee $1 i32.store offset=16 loop $for-loop|4 local.get $5 @@ -6339,7 +6338,7 @@ i32.gt_s if local.get $0 - local.tee $6 + local.tee $3 local.get $5 i32.load offset=12 i32.ge_u @@ -6351,21 +6350,21 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $3 local.get $5 i32.load offset=4 i32.add i32.load8_u - local.set $0 - local.get $13 - local.get $6 + local.set $4 + local.get $15 + local.get $3 call $~lib/array/Array#__get - local.set $12 - local.get $4 + local.set $9 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 - local.get $0 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761394 @@ -6374,62 +6373,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $6 block $__inlined_func$~lib/map/Map#find10 loop $while-continue|011 - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.load offset=8 - local.tee $7 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $6 i32.load8_u - local.get $0 + local.get $4 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $7 + local.get $0 i32.const -2 i32.and - local.set $1 + local.set $6 br $while-continue|011 end end i32.const 0 - local.set $1 + local.set $6 end - local.get $1 + local.get $6 i32.eqz if i32.const 0 @@ -6439,14 +6438,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 - local.get $12 + local.get $9 i32.const 20 i32.sub - local.tee $7 + local.tee $2 i32.const 255 i32.and i32.const -1028477379 @@ -6457,62 +6456,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $6 block $__inlined_func$~lib/map/Map#find13 loop $while-continue|014 - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.load offset=8 - local.tee $8 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $6 i32.load8_u - local.get $7 + local.get $2 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $8 + local.get $0 i32.const -2 i32.and - local.set $1 + local.set $6 br $while-continue|014 end end i32.const 0 - local.set $1 + local.set $6 end - local.get $1 + local.get $6 i32.eqz if i32.const 0 @@ -6533,10 +6532,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $10 i32.load - local.get $0 - local.tee $7 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761394 @@ -6565,7 +6563,7 @@ local.get $0 i32.xor local.tee $14 - local.get $3 + local.get $10 i32.load offset=4 i32.and i32.const 2 @@ -6587,7 +6585,7 @@ else local.get $0 i32.load8_u - local.get $7 + local.get $4 i32.const 255 i32.and i32.eq @@ -6606,18 +6604,18 @@ local.get $0 if local.get $0 - local.get $7 + local.get $4 i32.store8 offset=1 else - local.get $3 + local.get $10 i32.load offset=16 - local.get $3 + local.get $10 i32.load offset=12 i32.eq if - local.get $3 + local.get $10 i32.load offset=20 - local.get $3 + local.get $10 i32.load offset=12 i32.const 3 i32.mul @@ -6625,17 +6623,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $3 + local.get $10 i32.load offset=4 else - local.get $3 + local.get $10 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $2 + local.set $8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -6649,14 +6647,14 @@ i64.const 0 i64.store local.get $0 - local.get $2 + local.get $8 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $10 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -6664,45 +6662,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $15 + local.tee $13 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $3 + local.get $10 i32.load offset=8 - local.tee $8 - local.get $3 + local.tee $16 + local.get $10 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $16 - local.get $1 + local.set $12 + local.get $2 local.set $0 loop $while-continue|016 - local.get $8 + local.get $12 local.get $16 i32.ne if - local.get $8 + local.get $16 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $8 + local.get $16 i32.load8_u - local.tee $9 + local.tee $6 i32.store8 local.get $0 - local.get $8 + local.get $16 i32.load8_u offset=1 i32.store8 offset=1 local.get $0 - local.get $9 + local.get $6 i32.const -1028477379 i32.mul i32.const 374761394 @@ -6711,35 +6709,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $9 + local.tee $6 i32.const 15 i32.shr_u - local.get $9 + local.get $6 i32.xor i32.const -2048144777 i32.mul - local.tee $9 + local.tee $6 i32.const 13 i32.shr_u - local.get $9 + local.get $6 i32.xor i32.const -1028477379 i32.mul - local.tee $9 + local.tee $6 i32.const 16 i32.shr_u - local.get $9 + local.get $6 i32.xor - local.get $2 + local.get $8 i32.and i32.const 2 i32.shl - local.get $10 + local.get $7 i32.add - local.tee $9 + local.tee $6 i32.load i32.store offset=4 - local.get $9 + local.get $6 local.get $0 i32.store local.get $0 @@ -6747,39 +6745,39 @@ i32.add local.set $0 end - local.get $8 + local.get $16 i32.const 8 i32.add - local.set $8 + local.set $16 br $while-continue|016 end end - local.get $3 local.get $10 + local.get $7 i32.store - local.get $10 + local.get $7 if - local.get $3 local.get $10 + local.get $7 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $2 + local.get $10 + local.get $8 i32.store offset=4 - local.get $3 - local.get $1 + local.get $10 + local.get $2 i32.store offset=8 - local.get $1 + local.get $2 if - local.get $3 - local.get $1 + local.get $10 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $15 + local.get $10 + local.get $13 i32.store offset=12 - local.get $3 - local.get $3 + local.get $10 + local.get $10 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -6788,70 +6786,70 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $10 i32.load offset=8 - local.tee $0 + local.tee $2 i32.store - local.get $3 - local.get $3 + local.get $10 + local.get $10 i32.load offset=16 - local.tee $1 + local.tee $0 i32.const 1 i32.add i32.store offset=16 - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $0 + local.get $2 i32.add - local.tee $0 - local.get $7 + local.tee $2 + local.get $4 i32.store8 - local.get $0 - local.get $7 + local.get $2 + local.get $4 i32.store8 offset=1 - local.get $3 - local.get $3 + local.get $10 + local.get $10 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $0 - local.get $3 + local.get $2 + local.get $10 i32.load - local.get $3 + local.get $10 i32.load offset=4 local.get $14 i32.and i32.const 2 i32.shl i32.add - local.tee $1 + local.tee $0 i32.load i32.store offset=4 - local.get $1 local.get $0 + local.get $2 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 - local.get $12 + local.get $1 + local.get $9 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $6 + local.get $3 i32.const 1 i32.add local.set $0 br $for-loop|4 end end - local.get $3 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -6863,7 +6861,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $1 i32.load offset=20 i32.const 100 i32.ne @@ -6884,9 +6882,9 @@ i32.const 50 i32.lt_u if - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 local.get $0 i32.const 255 @@ -6899,24 +6897,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 @@ -6930,7 +6928,7 @@ if local.get $3 i32.load offset=8 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -6944,7 +6942,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find18 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $3 @@ -6964,7 +6962,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $0 call $~lib/map/Map#get local.get $0 @@ -6981,12 +6979,12 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $0 call $~lib/map/Map#delete - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 local.get $0 i32.const 255 @@ -6999,24 +6997,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 @@ -7030,7 +7028,7 @@ if local.get $3 i32.load offset=8 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -7044,7 +7042,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find21 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $3 @@ -7070,7 +7068,7 @@ br $for-loop|6 end end - local.get $4 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -7091,9 +7089,9 @@ i32.const 50 i32.lt_u if - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 local.get $0 i32.const 255 @@ -7106,24 +7104,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 @@ -7137,7 +7135,7 @@ if local.get $3 i32.load offset=8 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -7151,7 +7149,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find24 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $3 @@ -7170,20 +7168,20 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $0 local.get $0 i32.const 255 i32.and - local.tee $3 + local.tee $2 i32.const 10 i32.add call $~lib/map/Map#set - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 - local.get $3 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761394 @@ -7192,24 +7190,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 @@ -7223,7 +7221,7 @@ if local.get $3 i32.load offset=8 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -7237,7 +7235,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find27 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $3 @@ -7257,12 +7255,12 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $0 call $~lib/map/Map#delete - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 local.get $0 i32.const 255 @@ -7275,24 +7273,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 @@ -7306,7 +7304,7 @@ if local.get $3 i32.load offset=8 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -7320,7 +7318,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find30 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $3 @@ -7346,7 +7344,7 @@ br $for-loop|8 end end - local.get $4 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -7358,9 +7356,9 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 call $~lib/map/Map#clear - local.get $4 + local.get $11 i32.load offset=20 if i32.const 0 @@ -7407,26 +7405,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -7434,37 +7432,37 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $5 + local.tee $4 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $8 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 - local.get $5 - local.get $8 + local.get $4 + local.get $7 i32.ne if - local.get $5 + local.get $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $5 + local.get $4 i32.load16_s - local.tee $4 + local.tee $8 i32.store16 local.get $2 - local.get $5 + local.get $4 i32.load offset=4 i32.store offset=4 local.get $2 - local.get $4 + local.get $8 i32.extend16_s i32.const -1028477379 i32.mul @@ -7474,22 +7472,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 16 i32.shr_u i32.xor @@ -7497,12 +7495,12 @@ i32.and i32.const 2 i32.shl - local.get $6 + local.get $5 i32.add - local.tee $4 + local.tee $8 i32.load i32.store offset=8 - local.get $4 + local.get $8 local.get $2 i32.store local.get $2 @@ -7510,20 +7508,20 @@ i32.add local.set $2 end - local.get $5 + local.get $4 i32.const 12 i32.add - local.set $5 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $6 + local.get $5 i32.store - local.get $6 + local.get $5 if local.get $0 - local.get $6 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -7539,7 +7537,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -7767,14 +7765,14 @@ i32.load offset=4 i32.const 1 i32.shr_u - local.tee $2 + local.tee $1 i32.const 1 i32.add i32.const 4 local.get $0 i32.load offset=20 - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.lt_u select @@ -7794,7 +7792,7 @@ end if local.get $0 - local.get $2 + local.get $1 call $~lib/map/Map#rehash end ) @@ -7826,17 +7824,16 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $2 i64.const 0 i64.store - local.get $4 + local.get $2 i64.const 0 i64.store offset=8 - local.get $4 + local.get $2 i32.const 0 i32.store offset=16 - local.get $4 - local.tee $1 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -7852,48 +7849,48 @@ i32.const 24 i32.const 11 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $11 i32.store - local.get $4 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $4 i32.store - local.get $5 + local.get $4 if + local.get $11 local.get $4 - local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $11 i32.const 3 i32.store offset=4 - local.get $4 + local.get $11 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $4 i32.store offset=8 - local.get $5 + local.get $4 if + local.get $11 local.get $4 - local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $11 i32.const 4 i32.store offset=12 - local.get $4 + local.get $11 i32.const 0 i32.store offset=16 - local.get $4 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $4 + local.get $2 + local.get $11 i32.store loop $for-loop|1 local.get $3 @@ -7901,9 +7898,9 @@ i32.const 100 i32.lt_s if - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 local.get $3 i32.extend16_s @@ -7915,44 +7912,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $6 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.load offset=8 - local.tee $6 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $6 i32.load16_u local.get $3 i32.const 65535 @@ -7960,17 +7957,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $6 + local.get $2 i32.const -2 i32.and - local.set $1 + local.set $6 br $while-continue|0 end end i32.const 0 - local.set $1 + local.set $6 end - local.get $1 + local.get $6 if i32.const 0 i32.const 1568 @@ -7979,19 +7976,19 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $3 local.get $3 i32.extend16_s - local.tee $1 + local.tee $2 i32.const 10 i32.add call $~lib/map/Map#set - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761395 @@ -8000,44 +7997,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $6 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.load offset=8 - local.tee $6 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $6 i32.load16_u local.get $3 i32.const 65535 @@ -8045,17 +8042,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $6 + local.get $2 i32.const -2 i32.and - local.set $1 + local.set $6 br $while-continue|02 end end i32.const 0 - local.set $1 + local.set $6 end - local.get $1 + local.get $6 i32.eqz if i32.const 0 @@ -8065,7 +8062,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $3 call $~lib/map/Map#get local.get $3 @@ -8088,7 +8085,7 @@ br $for-loop|1 end end - local.get $4 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -8108,9 +8105,9 @@ i32.const 100 i32.lt_s if - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 local.get $3 i32.extend16_s @@ -8122,44 +8119,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $6 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.load offset=8 - local.tee $6 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $6 i32.load16_u local.get $3 i32.const 65535 @@ -8167,17 +8164,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $6 + local.get $2 i32.const -2 i32.and - local.set $1 + local.set $6 br $while-continue|05 end end i32.const 0 - local.set $1 + local.set $6 end - local.get $1 + local.get $6 i32.eqz if i32.const 0 @@ -8187,7 +8184,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $3 call $~lib/map/Map#get local.get $3 @@ -8203,19 +8200,19 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $3 local.get $3 i32.extend16_s - local.tee $1 + local.tee $2 i32.const 20 i32.add call $~lib/map/Map#set - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761395 @@ -8224,44 +8221,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $6 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.load offset=8 - local.tee $6 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $6 i32.load16_u local.get $3 i32.const 65535 @@ -8269,17 +8266,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $6 + local.get $2 i32.const -2 i32.and - local.set $1 + local.set $6 br $while-continue|08 end end i32.const 0 - local.set $1 + local.set $6 end - local.get $1 + local.get $6 i32.eqz if i32.const 0 @@ -8289,7 +8286,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $3 call $~lib/map/Map#get local.get $3 @@ -8312,7 +8309,7 @@ br $for-loop|3 end end - local.get $4 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -8325,8 +8322,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -8335,18 +8332,17 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store - local.get $4 + local.get $11 i32.load offset=8 - local.set $11 - local.get $4 + local.set $8 + local.get $11 i32.load offset=16 - local.tee $12 + local.tee $7 local.set $6 - local.get $3 - local.tee $1 + local.get $2 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -8355,25 +8351,25 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $4 i64.const 0 i64.store - local.get $3 + local.get $4 i32.const 16 i32.const 12 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $5 i32.store - local.get $3 + local.get $5 i32.const 0 i32.store - local.get $3 + local.get $5 i32.const 0 i32.store offset=4 - local.get $3 + local.get $5 i32.const 0 i32.store offset=8 - local.get $3 + local.get $5 i32.const 0 i32.store offset=12 local.get $6 @@ -8396,91 +8392,90 @@ select i32.const 1 i32.shl - local.tee $8 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $4 i32.store offset=4 - local.get $5 - local.get $8 - call $~lib/memory/memory.fill + local.get $4 local.get $3 + call $~lib/memory/memory.fill local.get $5 + local.get $4 i32.store - local.get $5 + local.get $4 if - local.get $3 local.get $5 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 local.get $5 + local.get $4 i32.store offset=4 + local.get $5 local.get $3 - local.get $8 i32.store offset=8 - local.get $3 + local.get $5 local.get $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $3 + local.get $2 + local.get $5 i32.store loop $for-loop|0 local.get $7 - local.get $12 - i32.lt_s + local.get $10 + i32.gt_s if - local.get $7 + local.get $10 i32.const 12 i32.mul - local.get $11 + local.get $8 i32.add - local.tee $1 + local.tee $2 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $3 - local.get $2 + local.get $5 local.get $1 + local.get $2 i32.load16_s call $~lib/array/Array#__set - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 end - local.get $7 + local.get $10 i32.const 1 i32.add - local.set $7 + local.set $10 br $for-loop|0 end end - local.get $3 - local.get $2 + local.get $5 + local.get $1 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 - local.get $2 + local.get $5 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 - local.tee $5 + local.get $5 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $11 call $~lib/map/Map#values - local.tee $13 + local.tee $15 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -8492,58 +8487,58 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store - local.get $3 + local.get $2 i32.const 24 i32.const 13 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $10 i32.store - local.get $3 + local.get $10 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if - local.get $3 - local.get $1 + local.get $10 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 + local.get $10 i32.const 3 i32.store offset=4 - local.get $3 + local.get $10 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=8 - local.get $1 + local.get $2 if - local.get $3 - local.get $1 + local.get $10 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 + local.get $10 i32.const 4 i32.store offset=12 - local.get $3 + local.get $10 i32.const 0 i32.store offset=16 - local.get $3 + local.get $10 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $10 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $11 + local.tee $1 i32.store offset=16 loop $for-loop|4 local.get $5 @@ -8552,7 +8547,7 @@ i32.gt_s if local.get $0 - local.tee $6 + local.tee $3 local.get $5 i32.load offset=12 i32.ge_u @@ -8566,21 +8561,21 @@ end local.get $5 i32.load offset=4 - local.get $6 + local.get $3 i32.const 1 i32.shl i32.add i32.load16_s - local.set $0 - local.get $13 - local.get $6 + local.set $4 + local.get $15 + local.get $3 call $~lib/array/Array#__get - local.set $12 - local.get $4 + local.set $9 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 - local.get $0 + local.get $4 i32.extend16_s i32.const -1028477379 i32.mul @@ -8590,62 +8585,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $6 block $__inlined_func$~lib/map/Map#find10 loop $while-continue|011 - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.load offset=8 - local.tee $7 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $6 i32.load16_u - local.get $0 + local.get $4 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $7 + local.get $0 i32.const -2 i32.and - local.set $1 + local.set $6 br $while-continue|011 end end i32.const 0 - local.set $1 + local.set $6 end - local.get $1 + local.get $6 i32.eqz if i32.const 0 @@ -8655,14 +8650,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 - local.get $12 + local.get $9 i32.const 20 i32.sub - local.tee $7 + local.tee $2 i32.extend16_s i32.const -1028477379 i32.mul @@ -8672,62 +8667,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $6 block $__inlined_func$~lib/map/Map#find13 loop $while-continue|014 - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.load offset=8 - local.tee $8 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $6 i32.load16_u - local.get $7 + local.get $2 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $8 + local.get $0 i32.const -2 i32.and - local.set $1 + local.set $6 br $while-continue|014 end end i32.const 0 - local.set $1 + local.set $6 end - local.get $1 + local.get $6 i32.eqz if i32.const 0 @@ -8748,10 +8743,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $10 i32.load - local.get $0 - local.tee $7 + local.get $4 i32.extend16_s i32.const -1028477379 i32.mul @@ -8781,7 +8775,7 @@ local.get $0 i32.xor local.tee $14 - local.get $3 + local.get $10 i32.load offset=4 i32.and i32.const 2 @@ -8803,7 +8797,7 @@ else local.get $0 i32.load16_u - local.get $7 + local.get $4 i32.const 65535 i32.and i32.eq @@ -8822,18 +8816,18 @@ local.get $0 if local.get $0 - local.get $7 + local.get $4 i32.store16 offset=2 else - local.get $3 + local.get $10 i32.load offset=16 - local.get $3 + local.get $10 i32.load offset=12 i32.eq if - local.get $3 + local.get $10 i32.load offset=20 - local.get $3 + local.get $10 i32.load offset=12 i32.const 3 i32.mul @@ -8841,17 +8835,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $3 + local.get $10 i32.load offset=4 else - local.get $3 + local.get $10 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $2 + local.set $8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -8865,14 +8859,14 @@ i64.const 0 i64.store local.get $0 - local.get $2 + local.get $8 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $10 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -8880,45 +8874,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $15 + local.tee $13 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $3 + local.get $10 i32.load offset=8 - local.tee $8 - local.get $3 + local.tee $16 + local.get $10 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $16 - local.get $1 + local.set $12 + local.get $2 local.set $0 loop $while-continue|016 - local.get $8 + local.get $12 local.get $16 i32.ne if - local.get $8 + local.get $16 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $8 + local.get $16 i32.load16_s - local.tee $9 + local.tee $6 i32.store16 local.get $0 - local.get $8 + local.get $16 i32.load16_s offset=2 i32.store16 offset=2 local.get $0 - local.get $9 + local.get $6 i32.extend16_s i32.const -1028477379 i32.mul @@ -8928,35 +8922,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $9 + local.tee $6 i32.const 15 i32.shr_u - local.get $9 + local.get $6 i32.xor i32.const -2048144777 i32.mul - local.tee $9 + local.tee $6 i32.const 13 i32.shr_u - local.get $9 + local.get $6 i32.xor i32.const -1028477379 i32.mul - local.tee $9 + local.tee $6 i32.const 16 i32.shr_u - local.get $9 + local.get $6 i32.xor - local.get $2 + local.get $8 i32.and i32.const 2 i32.shl - local.get $10 + local.get $7 i32.add - local.tee $9 + local.tee $6 i32.load i32.store offset=4 - local.get $9 + local.get $6 local.get $0 i32.store local.get $0 @@ -8964,39 +8958,39 @@ i32.add local.set $0 end - local.get $8 + local.get $16 i32.const 8 i32.add - local.set $8 + local.set $16 br $while-continue|016 end end - local.get $3 local.get $10 + local.get $7 i32.store - local.get $10 + local.get $7 if - local.get $3 local.get $10 + local.get $7 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $2 + local.get $10 + local.get $8 i32.store offset=4 - local.get $3 - local.get $1 + local.get $10 + local.get $2 i32.store offset=8 - local.get $1 + local.get $2 if - local.get $3 - local.get $1 + local.get $10 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $15 + local.get $10 + local.get $13 i32.store offset=12 - local.get $3 - local.get $3 + local.get $10 + local.get $10 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -9005,70 +8999,70 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $10 i32.load offset=8 - local.tee $0 + local.tee $2 i32.store - local.get $3 - local.get $3 + local.get $10 + local.get $10 i32.load offset=16 - local.tee $1 + local.tee $0 i32.const 1 i32.add i32.store offset=16 - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $0 + local.get $2 i32.add - local.tee $0 - local.get $7 + local.tee $2 + local.get $4 i32.store16 - local.get $0 - local.get $7 + local.get $2 + local.get $4 i32.store16 offset=2 - local.get $3 - local.get $3 + local.get $10 + local.get $10 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $0 - local.get $3 + local.get $2 + local.get $10 i32.load - local.get $3 + local.get $10 i32.load offset=4 local.get $14 i32.and i32.const 2 i32.shl i32.add - local.tee $1 + local.tee $0 i32.load i32.store offset=4 - local.get $1 local.get $0 + local.get $2 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 - local.get $12 + local.get $1 + local.get $9 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $6 + local.get $3 i32.const 1 i32.add local.set $0 br $for-loop|4 end end - local.get $3 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -9080,7 +9074,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $1 i32.load offset=20 i32.const 100 i32.ne @@ -9100,9 +9094,9 @@ i32.const 50 i32.lt_s if - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 local.get $0 i32.extend16_s @@ -9114,24 +9108,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 @@ -9145,7 +9139,7 @@ if local.get $3 i32.load offset=8 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -9159,7 +9153,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find18 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $3 @@ -9179,7 +9173,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $0 call $~lib/map/Map#get local.get $0 @@ -9195,12 +9189,12 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $0 call $~lib/map/Map#delete - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 local.get $0 i32.extend16_s @@ -9212,24 +9206,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 @@ -9243,7 +9237,7 @@ if local.get $3 i32.load offset=8 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -9257,7 +9251,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find21 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $3 @@ -9283,7 +9277,7 @@ br $for-loop|6 end end - local.get $4 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -9303,9 +9297,9 @@ i32.const 50 i32.lt_s if - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 local.get $0 i32.extend16_s @@ -9317,24 +9311,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 @@ -9348,7 +9342,7 @@ if local.get $3 i32.load offset=8 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -9362,7 +9356,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find24 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $3 @@ -9381,19 +9375,19 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $0 local.get $0 i32.extend16_s - local.tee $3 + local.tee $2 i32.const 10 i32.add call $~lib/map/Map#set - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 - local.get $3 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761395 @@ -9402,24 +9396,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 @@ -9433,7 +9427,7 @@ if local.get $3 i32.load offset=8 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -9447,7 +9441,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find27 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $3 @@ -9467,12 +9461,12 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $0 call $~lib/map/Map#delete - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 local.get $0 i32.extend16_s @@ -9484,24 +9478,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 @@ -9515,7 +9509,7 @@ if local.get $3 i32.load offset=8 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -9529,7 +9523,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find30 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $3 @@ -9555,7 +9549,7 @@ br $for-loop|8 end end - local.get $4 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -9567,9 +9561,9 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 call $~lib/map/Map#clear - local.get $4 + local.get $11 i32.load offset=20 if i32.const 0 @@ -9616,26 +9610,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -9643,37 +9637,37 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $5 + local.tee $4 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $8 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 - local.get $5 - local.get $8 + local.get $4 + local.get $7 i32.ne if - local.get $5 + local.get $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $5 + local.get $4 i32.load16_u - local.tee $4 + local.tee $8 i32.store16 local.get $2 - local.get $5 + local.get $4 i32.load offset=4 i32.store offset=4 local.get $2 - local.get $4 + local.get $8 i32.const -1028477379 i32.mul i32.const 374761395 @@ -9682,22 +9676,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 16 i32.shr_u i32.xor @@ -9705,12 +9699,12 @@ i32.and i32.const 2 i32.shl - local.get $6 + local.get $5 i32.add - local.tee $4 + local.tee $8 i32.load i32.store offset=8 - local.get $4 + local.get $8 local.get $2 i32.store local.get $2 @@ -9718,20 +9712,20 @@ i32.add local.set $2 end - local.get $5 + local.get $4 i32.const 12 i32.add - local.set $5 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $6 + local.get $5 i32.store - local.get $6 + local.get $5 if local.get $0 - local.get $6 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -9747,7 +9741,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -9938,14 +9932,14 @@ i32.load offset=4 i32.const 1 i32.shr_u - local.tee $2 + local.tee $1 i32.const 1 i32.add i32.const 4 local.get $0 i32.load offset=20 - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.lt_u select @@ -9965,7 +9959,7 @@ end if local.get $0 - local.get $2 + local.get $1 call $~lib/map/Map#rehash end ) @@ -9997,17 +9991,16 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $2 i64.const 0 i64.store - local.get $4 + local.get $2 i64.const 0 i64.store offset=8 - local.get $4 + local.get $2 i32.const 0 i32.store offset=16 - local.get $4 - local.tee $1 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -10023,48 +10016,48 @@ i32.const 24 i32.const 14 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $11 i32.store - local.get $4 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $4 i32.store - local.get $5 + local.get $4 if + local.get $11 local.get $4 - local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $11 i32.const 3 i32.store offset=4 - local.get $4 + local.get $11 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $4 i32.store offset=8 - local.get $5 + local.get $4 if + local.get $11 local.get $4 - local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $11 i32.const 4 i32.store offset=12 - local.get $4 + local.get $11 i32.const 0 i32.store offset=16 - local.get $4 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $4 + local.get $2 + local.get $11 i32.store loop $for-loop|1 local.get $3 @@ -10073,9 +10066,9 @@ i32.const 100 i32.lt_u if - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 local.get $3 i32.const 65535 @@ -10088,44 +10081,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $6 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.load offset=8 - local.tee $6 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $6 i32.load16_u local.get $3 i32.const 65535 @@ -10133,17 +10126,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $6 + local.get $2 i32.const -2 i32.and - local.set $1 + local.set $6 br $while-continue|0 end end i32.const 0 - local.set $1 + local.set $6 end - local.get $1 + local.get $6 if i32.const 0 i32.const 1568 @@ -10152,20 +10145,20 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $3 local.get $3 i32.const 65535 i32.and - local.tee $1 + local.tee $2 i32.const 10 i32.add call $~lib/map/Map#set - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761395 @@ -10174,44 +10167,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $6 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.load offset=8 - local.tee $6 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $6 i32.load16_u local.get $3 i32.const 65535 @@ -10219,17 +10212,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $6 + local.get $2 i32.const -2 i32.and - local.set $1 + local.set $6 br $while-continue|02 end end i32.const 0 - local.set $1 + local.set $6 end - local.get $1 + local.get $6 i32.eqz if i32.const 0 @@ -10239,7 +10232,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $3 call $~lib/map/Map#get local.get $3 @@ -10263,7 +10256,7 @@ br $for-loop|1 end end - local.get $4 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -10284,9 +10277,9 @@ i32.const 100 i32.lt_u if - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 local.get $3 i32.const 65535 @@ -10299,44 +10292,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $6 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.load offset=8 - local.tee $6 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $6 i32.load16_u local.get $3 i32.const 65535 @@ -10344,17 +10337,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $6 + local.get $2 i32.const -2 i32.and - local.set $1 + local.set $6 br $while-continue|05 end end i32.const 0 - local.set $1 + local.set $6 end - local.get $1 + local.get $6 i32.eqz if i32.const 0 @@ -10364,7 +10357,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $3 call $~lib/map/Map#get local.get $3 @@ -10381,20 +10374,20 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $3 local.get $3 i32.const 65535 i32.and - local.tee $1 + local.tee $2 i32.const 20 i32.add call $~lib/map/Map#set - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 - local.get $1 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761395 @@ -10403,44 +10396,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $6 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.load offset=8 - local.tee $6 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $6 i32.load16_u local.get $3 i32.const 65535 @@ -10448,17 +10441,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $6 + local.get $2 i32.const -2 i32.and - local.set $1 + local.set $6 br $while-continue|08 end end i32.const 0 - local.set $1 + local.set $6 end - local.get $1 + local.get $6 i32.eqz if i32.const 0 @@ -10468,7 +10461,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $3 call $~lib/map/Map#get local.get $3 @@ -10492,7 +10485,7 @@ br $for-loop|3 end end - local.get $4 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -10505,8 +10498,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -10515,18 +10508,17 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store - local.get $4 + local.get $11 i32.load offset=8 - local.set $11 - local.get $4 + local.set $8 + local.get $11 i32.load offset=16 - local.tee $12 + local.tee $7 local.set $6 - local.get $3 - local.tee $1 + local.get $2 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -10535,25 +10527,25 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $4 i64.const 0 i64.store - local.get $3 + local.get $4 i32.const 16 i32.const 15 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $5 i32.store - local.get $3 + local.get $5 i32.const 0 i32.store - local.get $3 + local.get $5 i32.const 0 i32.store offset=4 - local.get $3 + local.get $5 i32.const 0 i32.store offset=8 - local.get $3 + local.get $5 i32.const 0 i32.store offset=12 local.get $6 @@ -10576,91 +10568,90 @@ select i32.const 1 i32.shl - local.tee $8 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $4 i32.store offset=4 - local.get $5 - local.get $8 - call $~lib/memory/memory.fill + local.get $4 local.get $3 + call $~lib/memory/memory.fill local.get $5 + local.get $4 i32.store - local.get $5 + local.get $4 if - local.get $3 local.get $5 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 local.get $5 + local.get $4 i32.store offset=4 + local.get $5 local.get $3 - local.get $8 i32.store offset=8 - local.get $3 + local.get $5 local.get $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $3 + local.get $2 + local.get $5 i32.store loop $for-loop|0 local.get $7 - local.get $12 - i32.lt_s + local.get $10 + i32.gt_s if - local.get $7 + local.get $10 i32.const 12 i32.mul - local.get $11 + local.get $8 i32.add - local.tee $1 + local.tee $2 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $3 - local.get $2 + local.get $5 local.get $1 + local.get $2 i32.load16_u call $~lib/array/Array#__set - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 end - local.get $7 + local.get $10 i32.const 1 i32.add - local.set $7 + local.set $10 br $for-loop|0 end end - local.get $3 - local.get $2 + local.get $5 + local.get $1 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 - local.get $2 + local.get $5 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 - local.tee $5 + local.get $5 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $11 call $~lib/map/Map#values - local.tee $13 + local.tee $15 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -10672,58 +10663,58 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store - local.get $3 + local.get $2 i32.const 24 i32.const 16 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $10 i32.store - local.get $3 + local.get $10 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if - local.get $3 - local.get $1 + local.get $10 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 + local.get $10 i32.const 3 i32.store offset=4 - local.get $3 + local.get $10 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=8 - local.get $1 + local.get $2 if - local.get $3 - local.get $1 + local.get $10 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 + local.get $10 i32.const 4 i32.store offset=12 - local.get $3 + local.get $10 i32.const 0 i32.store offset=16 - local.get $3 + local.get $10 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $10 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $11 + local.tee $1 i32.store offset=16 loop $for-loop|4 local.get $5 @@ -10732,7 +10723,7 @@ i32.gt_s if local.get $0 - local.tee $6 + local.tee $3 local.get $5 i32.load offset=12 i32.ge_u @@ -10746,21 +10737,21 @@ end local.get $5 i32.load offset=4 - local.get $6 + local.get $3 i32.const 1 i32.shl i32.add i32.load16_u - local.set $0 - local.get $13 - local.get $6 + local.set $4 + local.get $15 + local.get $3 call $~lib/array/Array#__get - local.set $12 - local.get $4 + local.set $9 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 - local.get $0 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761395 @@ -10769,62 +10760,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $6 block $__inlined_func$~lib/map/Map#find10 loop $while-continue|011 - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.load offset=8 - local.tee $7 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $6 i32.load16_u - local.get $0 + local.get $4 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $7 + local.get $0 i32.const -2 i32.and - local.set $1 + local.set $6 br $while-continue|011 end end i32.const 0 - local.set $1 + local.set $6 end - local.get $1 + local.get $6 i32.eqz if i32.const 0 @@ -10834,14 +10825,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 - local.get $12 + local.get $9 i32.const 20 i32.sub - local.tee $7 + local.tee $2 i32.const 65535 i32.and i32.const -1028477379 @@ -10852,62 +10843,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $6 block $__inlined_func$~lib/map/Map#find13 loop $while-continue|014 - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.load offset=8 - local.tee $8 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $6 i32.load16_u - local.get $7 + local.get $2 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $8 + local.get $0 i32.const -2 i32.and - local.set $1 + local.set $6 br $while-continue|014 end end i32.const 0 - local.set $1 + local.set $6 end - local.get $1 + local.get $6 i32.eqz if i32.const 0 @@ -10928,10 +10919,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $10 i32.load - local.get $0 - local.tee $7 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761395 @@ -10960,7 +10950,7 @@ local.get $0 i32.xor local.tee $14 - local.get $3 + local.get $10 i32.load offset=4 i32.and i32.const 2 @@ -10982,7 +10972,7 @@ else local.get $0 i32.load16_u - local.get $7 + local.get $4 i32.const 65535 i32.and i32.eq @@ -11001,18 +10991,18 @@ local.get $0 if local.get $0 - local.get $7 + local.get $4 i32.store16 offset=2 else - local.get $3 + local.get $10 i32.load offset=16 - local.get $3 + local.get $10 i32.load offset=12 i32.eq if - local.get $3 + local.get $10 i32.load offset=20 - local.get $3 + local.get $10 i32.load offset=12 i32.const 3 i32.mul @@ -11020,17 +11010,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $3 + local.get $10 i32.load offset=4 else - local.get $3 + local.get $10 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $2 + local.set $8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -11044,14 +11034,14 @@ i64.const 0 i64.store local.get $0 - local.get $2 + local.get $8 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $10 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -11059,45 +11049,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $15 + local.tee $13 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $3 + local.get $10 i32.load offset=8 - local.tee $8 - local.get $3 + local.tee $16 + local.get $10 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $16 - local.get $1 + local.set $12 + local.get $2 local.set $0 loop $while-continue|016 - local.get $8 + local.get $12 local.get $16 i32.ne if - local.get $8 + local.get $16 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $8 + local.get $16 i32.load16_u - local.tee $9 + local.tee $6 i32.store16 local.get $0 - local.get $8 + local.get $16 i32.load16_u offset=2 i32.store16 offset=2 local.get $0 - local.get $9 + local.get $6 i32.const -1028477379 i32.mul i32.const 374761395 @@ -11106,35 +11096,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $9 + local.tee $6 i32.const 15 i32.shr_u - local.get $9 + local.get $6 i32.xor i32.const -2048144777 i32.mul - local.tee $9 + local.tee $6 i32.const 13 i32.shr_u - local.get $9 + local.get $6 i32.xor i32.const -1028477379 i32.mul - local.tee $9 + local.tee $6 i32.const 16 i32.shr_u - local.get $9 + local.get $6 i32.xor - local.get $2 + local.get $8 i32.and i32.const 2 i32.shl - local.get $10 + local.get $7 i32.add - local.tee $9 + local.tee $6 i32.load i32.store offset=4 - local.get $9 + local.get $6 local.get $0 i32.store local.get $0 @@ -11142,39 +11132,39 @@ i32.add local.set $0 end - local.get $8 + local.get $16 i32.const 8 i32.add - local.set $8 + local.set $16 br $while-continue|016 end end - local.get $3 local.get $10 + local.get $7 i32.store - local.get $10 + local.get $7 if - local.get $3 local.get $10 + local.get $7 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $2 + local.get $10 + local.get $8 i32.store offset=4 - local.get $3 - local.get $1 + local.get $10 + local.get $2 i32.store offset=8 - local.get $1 + local.get $2 if - local.get $3 - local.get $1 + local.get $10 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link - end - local.get $3 - local.get $15 + end + local.get $10 + local.get $13 i32.store offset=12 - local.get $3 - local.get $3 + local.get $10 + local.get $10 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -11183,70 +11173,70 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $10 i32.load offset=8 - local.tee $0 + local.tee $2 i32.store - local.get $3 - local.get $3 + local.get $10 + local.get $10 i32.load offset=16 - local.tee $1 + local.tee $0 i32.const 1 i32.add i32.store offset=16 - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $0 + local.get $2 i32.add - local.tee $0 - local.get $7 + local.tee $2 + local.get $4 i32.store16 - local.get $0 - local.get $7 + local.get $2 + local.get $4 i32.store16 offset=2 - local.get $3 - local.get $3 + local.get $10 + local.get $10 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $0 - local.get $3 + local.get $2 + local.get $10 i32.load - local.get $3 + local.get $10 i32.load offset=4 local.get $14 i32.and i32.const 2 i32.shl i32.add - local.tee $1 + local.tee $0 i32.load i32.store offset=4 - local.get $1 local.get $0 + local.get $2 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 - local.get $12 + local.get $1 + local.get $9 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $6 + local.get $3 i32.const 1 i32.add local.set $0 br $for-loop|4 end end - local.get $3 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -11258,7 +11248,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $1 i32.load offset=20 i32.const 100 i32.ne @@ -11279,9 +11269,9 @@ i32.const 50 i32.lt_u if - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 local.get $0 i32.const 65535 @@ -11294,24 +11284,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 @@ -11325,7 +11315,7 @@ if local.get $3 i32.load offset=8 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -11339,7 +11329,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find18 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $3 @@ -11359,7 +11349,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $0 call $~lib/map/Map#get local.get $0 @@ -11376,12 +11366,12 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $0 call $~lib/map/Map#delete - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 local.get $0 i32.const 65535 @@ -11394,24 +11384,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 @@ -11425,7 +11415,7 @@ if local.get $3 i32.load offset=8 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -11439,7 +11429,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find21 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $3 @@ -11465,7 +11455,7 @@ br $for-loop|6 end end - local.get $4 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -11486,9 +11476,9 @@ i32.const 50 i32.lt_u if - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 local.get $0 i32.const 65535 @@ -11501,24 +11491,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 @@ -11532,7 +11522,7 @@ if local.get $3 i32.load offset=8 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -11546,7 +11536,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find24 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $3 @@ -11565,20 +11555,20 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $0 local.get $0 i32.const 65535 i32.and - local.tee $3 + local.tee $2 i32.const 10 i32.add call $~lib/map/Map#set - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 - local.get $3 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761395 @@ -11587,24 +11577,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 @@ -11618,7 +11608,7 @@ if local.get $3 i32.load offset=8 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -11632,7 +11622,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find27 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $3 @@ -11652,12 +11642,12 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 local.get $0 call $~lib/map/Map#delete - local.get $4 + local.get $11 i32.load - local.get $4 + local.get $11 i32.load offset=4 local.get $0 i32.const 65535 @@ -11670,24 +11660,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 @@ -11701,7 +11691,7 @@ if local.get $3 i32.load offset=8 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -11715,7 +11705,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find30 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $3 @@ -11741,7 +11731,7 @@ br $for-loop|8 end end - local.get $4 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -11753,9 +11743,9 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 call $~lib/map/Map#clear - local.get $4 + local.get $11 i32.load offset=20 if i32.const 0 @@ -11950,14 +11940,14 @@ i32.load offset=4 i32.const 1 i32.shr_u - local.tee $2 + local.tee $1 i32.const 1 i32.add i32.const 4 local.get $0 i32.load offset=20 - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.lt_u select @@ -11977,7 +11967,7 @@ end if local.get $0 - local.get $2 + local.get $1 call $~lib/map/Map#rehash end ) @@ -12003,27 +11993,27 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i64.const 0 i64.store offset=8 - local.get $2 + local.get $1 i32.const 0 i32.store offset=16 - local.get $2 + local.get $1 call $~lib/map/Map#constructor - local.tee $2 + local.tee $4 i32.store loop $for-loop|0 local.get $0 i32.const 100 i32.lt_s if - local.get $2 + local.get $4 i32.load - local.get $2 + local.get $4 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -12096,15 +12086,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $0 local.get $0 i32.const 10 i32.add call $~lib/map/Map#set - local.get $2 + local.get $4 i32.load - local.get $2 + local.get $4 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -12178,7 +12168,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $0 call $~lib/map/Map#get local.get $0 @@ -12200,7 +12190,7 @@ br $for-loop|0 end end - local.get $2 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -12219,9 +12209,9 @@ i32.const 100 i32.lt_s if - local.get $2 + local.get $4 i32.load - local.get $2 + local.get $4 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -12295,7 +12285,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $0 call $~lib/map/Map#get local.get $0 @@ -12310,15 +12300,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $0 local.get $0 i32.const 20 i32.add call $~lib/map/Map#set - local.get $2 + local.get $4 i32.load - local.get $2 + local.get $4 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -12392,7 +12382,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $0 call $~lib/map/Map#get local.get $0 @@ -12414,7 +12404,7 @@ br $for-loop|1 end end - local.get $2 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -12442,35 +12432,35 @@ local.tee $1 i32.const 0 i32.store - local.get $2 + local.get $4 i32.load offset=8 - local.set $5 + local.set $6 local.get $1 - local.get $2 + local.get $4 i32.load offset=16 - local.tee $8 - call $~lib/array/Array#constructor local.tee $1 + call $~lib/array/Array#constructor + local.tee $7 i32.store loop $for-loop|01 - local.get $3 - local.get $8 - i32.lt_s + local.get $1 + local.get $2 + i32.gt_s if - local.get $3 + local.get $2 i32.const 12 i32.mul - local.get $5 + local.get $6 i32.add - local.tee $6 + local.tee $8 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $1 + local.get $7 local.get $0 - local.get $6 + local.get $8 i32.load call $~lib/array/Array#__set local.get $0 @@ -12478,59 +12468,59 @@ i32.add local.set $0 end - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 br $for-loop|01 end end - local.get $1 + local.get $7 local.get $0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $1 + local.get $7 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $7 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 call $~lib/map/Map#values - local.tee $9 + local.tee $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $7 + local.tee $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $5 + local.tee $6 i32.store offset=16 loop $for-loop|2 - local.get $1 + local.get $7 i32.load offset=12 - local.get $4 + local.get $3 i32.gt_s if - local.get $1 - local.get $4 - call $~lib/array/Array#__get - local.set $0 - local.get $9 - local.get $4 + local.get $7 + local.get $3 call $~lib/array/Array#__get local.set $8 - local.get $2 + local.get $0 + local.get $3 + call $~lib/array/Array#__get + local.set $9 + local.get $4 i32.load - local.get $2 + local.get $4 i32.load offset=4 - local.get $0 + local.get $8 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12539,60 +12529,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $1 i32.const 15 i32.shr_u - local.get $3 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $1 i32.const 13 i32.shr_u - local.get $3 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $1 i32.const 16 i32.shr_u - local.get $3 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/map/Map#find10 loop $while-continue|011 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=8 - local.tee $6 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 - local.get $3 + local.get $8 + local.get $2 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $6 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|011 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -12602,14 +12592,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 i32.load - local.get $2 + local.get $4 i32.load offset=4 - local.get $8 + local.get $9 i32.const 20 i32.sub - local.tee $6 + local.tee $10 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12618,60 +12608,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $1 i32.const 15 i32.shr_u - local.get $3 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $1 i32.const 13 i32.shr_u - local.get $3 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $1 i32.const 16 i32.shr_u - local.get $3 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/map/Map#find13 loop $while-continue|014 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=8 - local.tee $10 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 - local.get $3 + local.get $10 + local.get $2 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $10 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|014 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -12681,25 +12671,25 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $0 - local.get $0 - call $~lib/map/Map#set local.get $5 local.get $8 + local.get $8 + call $~lib/map/Map#set + local.get $6 + local.get $9 i32.const 20 i32.sub - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 call $~lib/map/Map#set - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|2 end end - local.get $7 + local.get $5 i32.load offset=20 i32.const 100 i32.ne @@ -12711,7 +12701,7 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.load offset=20 i32.const 100 i32.ne @@ -12724,17 +12714,17 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|3 - local.get $4 + local.get $3 i32.const 50 i32.lt_s if - local.get $2 + local.get $4 i32.load - local.get $2 - i32.load offset=4 local.get $4 + i32.load offset=4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12774,19 +12764,19 @@ if local.get $0 i32.load offset=8 - local.tee $3 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find16 - local.get $3 + local.get $1 i32.const -2 i32.and local.set $0 @@ -12806,10 +12796,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $4 + local.get $3 i32.const 20 i32.add i32.ne @@ -12821,14 +12811,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $4 + local.get $3 call $~lib/map/Map#delete - local.get $2 + local.get $4 i32.load - local.get $2 - i32.load offset=4 local.get $4 + i32.load offset=4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12868,19 +12858,19 @@ if local.get $0 i32.load offset=8 - local.tee $3 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find19 - local.get $3 + local.get $1 i32.const -2 i32.and local.set $0 @@ -12899,14 +12889,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|3 end end - local.get $2 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -12919,17 +12909,17 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|4 - local.get $4 + local.get $3 i32.const 50 i32.lt_s if - local.get $2 + local.get $4 i32.load - local.get $2 - i32.load offset=4 local.get $4 + i32.load offset=4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12969,19 +12959,19 @@ if local.get $0 i32.load offset=8 - local.tee $3 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find22 - local.get $3 + local.get $1 i32.const -2 i32.and local.set $0 @@ -13000,17 +12990,17 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $4 local.get $4 + local.get $3 + local.get $3 i32.const 10 i32.add call $~lib/map/Map#set - local.get $2 + local.get $4 i32.load - local.get $2 - i32.load offset=4 local.get $4 + i32.load offset=4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13050,19 +13040,19 @@ if local.get $0 i32.load offset=8 - local.tee $3 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find25 - local.get $3 + local.get $1 i32.const -2 i32.and local.set $0 @@ -13082,14 +13072,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $4 + local.get $3 call $~lib/map/Map#delete - local.get $2 + local.get $4 i32.load - local.get $2 - i32.load offset=4 local.get $4 + i32.load offset=4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13129,19 +13119,19 @@ if local.get $0 i32.load offset=8 - local.tee $3 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find28 - local.get $3 + local.get $1 i32.const -2 i32.and local.set $0 @@ -13160,14 +13150,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|4 end end - local.get $2 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -13179,9 +13169,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 call $~lib/map/Map#clear - local.get $2 + local.get $4 i32.load offset=20 if i32.const 0 @@ -13228,26 +13218,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -13255,37 +13245,37 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $5 + local.tee $4 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $8 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 - local.get $5 - local.get $8 + local.get $4 + local.get $7 i32.ne if - local.get $5 + local.get $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $5 + local.get $4 i32.load - local.tee $4 + local.tee $8 i32.store local.get $2 - local.get $5 + local.get $4 i32.load offset=4 i32.store offset=4 local.get $2 - local.get $4 + local.get $8 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13294,22 +13284,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 16 i32.shr_u i32.xor @@ -13317,12 +13307,12 @@ i32.and i32.const 2 i32.shl - local.get $6 + local.get $5 i32.add - local.tee $4 + local.tee $8 i32.load i32.store offset=8 - local.get $4 + local.get $8 local.get $2 i32.store local.get $2 @@ -13330,20 +13320,20 @@ i32.add local.set $2 end - local.get $5 + local.get $4 i32.const 12 i32.add - local.set $5 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $6 + local.get $5 i32.store - local.get $6 + local.get $5 if local.get $0 - local.get $6 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -13359,7 +13349,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -13542,14 +13532,14 @@ i32.load offset=4 i32.const 1 i32.shr_u - local.tee $2 + local.tee $1 i32.const 1 i32.add i32.const 4 local.get $0 i32.load offset=20 - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.lt_u select @@ -13569,7 +13559,7 @@ end if local.get $0 - local.get $2 + local.get $1 call $~lib/map/Map#rehash end ) @@ -13601,16 +13591,16 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i64.const 0 i64.store - local.get $0 + local.get $3 i64.const 0 i64.store offset=8 - local.get $0 + local.get $3 i32.const 0 i32.store offset=16 - local.get $0 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -13619,64 +13609,64 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $16 + local.tee $2 i32.const 0 i32.store - local.get $16 + local.get $2 i32.const 24 i32.const 17 call $~lib/rt/itcms/__new - local.tee $16 + local.tee $10 i32.store - local.get $16 + local.get $10 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 if - local.get $16 - local.get $3 + local.get $10 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $16 + local.get $10 i32.const 3 i32.store offset=4 - local.get $16 + local.get $10 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $2 i32.store offset=8 - local.get $3 + local.get $2 if - local.get $16 - local.get $3 + local.get $10 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $16 + local.get $10 i32.const 4 i32.store offset=12 - local.get $16 + local.get $10 i32.const 0 i32.store offset=16 - local.get $16 + local.get $10 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 - local.get $16 + local.get $3 + local.get $10 i32.store loop $for-loop|0 local.get $4 i32.const 100 i32.lt_u if - local.get $16 + local.get $10 i32.load - local.get $16 + local.get $10 i32.load offset=4 local.get $4 i32.const -1028477379 @@ -13687,24 +13677,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $2 i32.const 15 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $2 i32.const 13 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $2 i32.const 16 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.and i32.const 2 @@ -13718,7 +13708,7 @@ if local.get $0 i32.load offset=8 - local.tee $14 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -13730,7 +13720,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $14 + local.get $2 i32.const -2 i32.and local.set $0 @@ -13749,15 +13739,15 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $10 local.get $4 local.get $4 i32.const 10 i32.add call $~lib/map/Map#set - local.get $16 + local.get $10 i32.load - local.get $16 + local.get $10 i32.load offset=4 local.get $4 i32.const -1028477379 @@ -13768,24 +13758,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $2 i32.const 15 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $2 i32.const 13 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $2 i32.const 16 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.and i32.const 2 @@ -13799,7 +13789,7 @@ if local.get $0 i32.load offset=8 - local.tee $14 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -13811,7 +13801,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $14 + local.get $2 i32.const -2 i32.and local.set $0 @@ -13831,7 +13821,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $10 local.get $4 call $~lib/map/Map#get local.get $4 @@ -13853,7 +13843,7 @@ br $for-loop|0 end end - local.get $16 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -13872,9 +13862,9 @@ i32.const 100 i32.lt_u if - local.get $16 + local.get $10 i32.load - local.get $16 + local.get $10 i32.load offset=4 local.get $4 i32.const -1028477379 @@ -13885,24 +13875,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $2 i32.const 15 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $2 i32.const 13 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $2 i32.const 16 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.and i32.const 2 @@ -13916,7 +13906,7 @@ if local.get $0 i32.load offset=8 - local.tee $14 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -13928,7 +13918,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $14 + local.get $2 i32.const -2 i32.and local.set $0 @@ -13948,7 +13938,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $10 local.get $4 call $~lib/map/Map#get local.get $4 @@ -13963,15 +13953,15 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $10 local.get $4 local.get $4 i32.const 20 i32.add call $~lib/map/Map#set - local.get $16 + local.get $10 i32.load - local.get $16 + local.get $10 i32.load offset=4 local.get $4 i32.const -1028477379 @@ -13982,24 +13972,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $2 i32.const 15 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $2 i32.const 13 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $2 i32.const 16 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.and i32.const 2 @@ -14013,7 +14003,7 @@ if local.get $0 i32.load offset=8 - local.tee $14 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -14025,7 +14015,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $14 + local.get $2 i32.const -2 i32.and local.set $0 @@ -14045,7 +14035,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $10 local.get $4 call $~lib/map/Map#get local.get $4 @@ -14067,7 +14057,7 @@ br $for-loop|1 end end - local.get $16 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -14080,8 +14070,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $4 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -14090,17 +14080,17 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $14 + local.tee $7 i32.const 0 i32.store - local.get $16 + local.get $10 i32.load offset=8 - local.set $10 - local.get $16 + local.set $6 + local.get $10 i32.load offset=16 - local.tee $9 - local.set $3 - local.get $14 + local.tee $5 + local.set $0 + local.get $7 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -14109,10 +14099,10 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $2 i64.const 0 i64.store - local.get $4 + local.get $2 i32.const 16 i32.const 18 call $~lib/rt/itcms/__new @@ -14130,7 +14120,7 @@ local.get $4 i32.const 0 i32.store offset=12 - local.get $3 + local.get $0 i32.const 268435455 i32.gt_u if @@ -14142,58 +14132,58 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.const 8 - local.get $3 + local.get $0 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $13 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $2 i32.store offset=4 - local.get $0 - local.get $13 + local.get $2 + local.get $3 call $~lib/memory/memory.fill local.get $4 - local.get $0 + local.get $2 i32.store - local.get $0 + local.get $2 if local.get $4 - local.get $0 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $4 - local.get $0 + local.get $2 i32.store offset=4 local.get $4 - local.get $13 + local.get $3 i32.store offset=8 local.get $4 - local.get $3 + local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $14 + local.get $7 local.get $4 i32.store loop $for-loop|01 - local.get $2 + local.get $5 local.get $9 - i32.lt_s + i32.gt_s if - local.get $2 + local.get $9 i32.const 12 i32.mul - local.get $10 + local.get $6 i32.add - local.tee $0 + local.tee $2 i32.load offset=8 i32.const 1 i32.and @@ -14201,7 +14191,7 @@ if local.get $4 local.get $1 - local.get $0 + local.get $2 i32.load call $~lib/array/Array#__set local.get $1 @@ -14209,10 +14199,10 @@ i32.add local.set $1 end - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $for-loop|01 end end @@ -14229,12 +14219,11 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $4 - local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $10 call $~lib/map/Map#values - local.tee $8 + local.tee $14 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -14246,68 +14235,68 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $2 i32.const 0 i32.store - local.get $4 + local.get $2 i32.const 24 i32.const 19 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $1 i32.store - local.get $4 + local.get $1 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 if - local.get $4 - local.get $0 + local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $1 i32.const 3 i32.store offset=4 - local.get $4 + local.get $1 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $2 i32.store offset=8 - local.get $0 + local.get $2 if - local.get $4 - local.get $0 + local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $1 i32.const 4 i32.store offset=12 - local.get $4 + local.get $1 i32.const 0 i32.store offset=16 - local.get $4 + local.get $1 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $10 + local.tee $9 i32.store offset=16 loop $for-loop|2 - local.get $2 + local.get $4 i32.load offset=12 - local.get $15 + local.get $16 i32.gt_s if - local.get $2 + local.get $4 i32.load offset=12 - local.get $15 + local.get $16 i32.le_u if i32.const 1248 @@ -14317,23 +14306,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 i32.load offset=4 - local.get $15 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $0 - local.get $8 - local.get $15 - call $~lib/array/Array#__get - local.set $9 local.get $16 + i32.const 2 + i32.shl + i32.add i32.load + local.set $3 + local.get $14 local.get $16 + call $~lib/array/Array#__get + local.set $8 + local.get $10 + i32.load + local.get $10 i32.load offset=4 - local.get $0 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14342,60 +14331,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find10 loop $while-continue|011 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 - local.tee $14 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 local.get $3 + local.get $5 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $14 + local.get $2 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|011 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 i32.eqz if i32.const 0 @@ -14405,14 +14394,14 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $10 i32.load - local.get $16 + local.get $10 i32.load offset=4 - local.get $9 + local.get $8 i32.const 20 i32.sub - local.tee $14 + local.tee $0 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14421,60 +14410,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find13 loop $while-continue|014 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 - local.tee $13 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $14 - local.get $3 + local.get $0 + local.get $5 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $13 + local.get $2 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|014 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 i32.eqz if i32.const 0 @@ -14495,10 +14484,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $4 + local.get $1 i32.load - local.get $0 - local.tee $3 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14507,27 +14495,27 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $2 i32.const 15 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $2 i32.const 13 i32.shr_u - local.get $0 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $2 i32.const 16 i32.shr_u - local.get $0 + local.get $2 i32.xor - local.tee $7 - local.get $4 + local.tee $13 + local.get $1 i32.load offset=4 i32.and i32.const 2 @@ -14541,7 +14529,7 @@ if local.get $0 i32.load offset=8 - local.tee $14 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -14553,7 +14541,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find15 - local.get $14 + local.get $2 i32.const -2 i32.and local.set $0 @@ -14569,15 +14557,15 @@ local.get $3 i32.store offset=4 else - local.get $4 + local.get $1 i32.load offset=16 - local.get $4 + local.get $1 i32.load offset=12 i32.eq if - local.get $4 + local.get $1 i32.load offset=20 - local.get $4 + local.get $1 i32.load offset=12 i32.const 3 i32.mul @@ -14585,17 +14573,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $4 + local.get $1 i32.load offset=4 else - local.get $4 + local.get $1 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $14 + local.set $7 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -14605,64 +14593,64 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i64.const 0 i64.store - local.get $0 - local.get $14 + local.get $2 + local.get $7 i32.const 1 i32.add - local.tee $0 + local.tee $2 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $11 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $12 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $4 + local.get $1 i32.load offset=8 - local.tee $13 - local.get $4 + local.tee $15 + local.get $1 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $5 - local.get $1 + local.set $11 + local.get $2 local.set $0 loop $while-continue|017 - local.get $5 - local.get $13 + local.get $11 + local.get $15 i32.ne if - local.get $13 + local.get $15 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $13 + local.get $15 i32.load - local.tee $12 + local.tee $5 i32.store local.get $0 - local.get $13 + local.get $15 i32.load offset=4 i32.store offset=4 local.get $0 - local.get $12 + local.get $5 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14671,35 +14659,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $12 + local.tee $5 i32.const 15 i32.shr_u - local.get $12 + local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $12 + local.tee $5 i32.const 13 i32.shr_u - local.get $12 + local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $12 + local.tee $5 i32.const 16 i32.shr_u - local.get $12 + local.get $5 i32.xor - local.get $14 + local.get $7 i32.and i32.const 2 i32.shl - local.get $11 + local.get $6 i32.add - local.tee $12 + local.tee $5 i32.load i32.store offset=8 - local.get $12 + local.get $5 local.get $0 i32.store local.get $0 @@ -14707,39 +14695,39 @@ i32.add local.set $0 end - local.get $13 + local.get $15 i32.const 12 i32.add - local.set $13 + local.set $15 br $while-continue|017 end end - local.get $4 - local.get $11 + local.get $1 + local.get $6 i32.store - local.get $11 + local.get $6 if - local.get $4 - local.get $11 + local.get $1 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $14 + local.get $1 + local.get $7 i32.store offset=4 - local.get $4 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 + local.get $2 if - local.get $4 local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $6 + local.get $1 + local.get $12 i32.store offset=12 - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -14748,18 +14736,18 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.load offset=8 local.tee $0 i32.store - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.load offset=16 - local.tee $1 + local.tee $2 i32.const 1 i32.add i32.store offset=16 - local.get $1 + local.get $2 i32.const 12 i32.mul local.get $0 @@ -14770,26 +14758,26 @@ local.get $0 local.get $3 i32.store offset=4 - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $4 + local.get $1 i32.load - local.get $4 + local.get $1 i32.load offset=4 - local.get $7 + local.get $13 i32.and i32.const 2 i32.shl i32.add - local.tee $3 + local.tee $2 i32.load i32.store offset=8 - local.get $3 + local.get $2 local.get $0 i32.store end @@ -14797,21 +14785,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 local.get $9 + local.get $8 i32.const 20 i32.sub - local.tee $0 - local.get $0 + local.tee $2 + local.get $2 call $~lib/map/Map#set - local.get $15 + local.get $16 i32.const 1 i32.add - local.set $15 + local.set $16 br $for-loop|2 end end - local.get $4 + local.get $1 i32.load offset=20 i32.const 100 i32.ne @@ -14823,7 +14811,7 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -14836,17 +14824,17 @@ unreachable end i32.const 0 - local.set $15 + local.set $16 loop $for-loop|3 - local.get $15 + local.get $16 i32.const 50 i32.lt_u if - local.get $16 + local.get $10 i32.load - local.get $16 + local.get $10 i32.load offset=4 - local.get $15 + local.get $16 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14855,24 +14843,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $2 i32.const 15 i32.shr_u - local.get $4 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $2 i32.const 13 i32.shr_u - local.get $4 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $2 i32.const 16 i32.shr_u - local.get $4 + local.get $2 i32.xor i32.and i32.const 2 @@ -14886,19 +14874,19 @@ if local.get $4 i32.load offset=8 - local.tee $3 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $15 + local.get $16 local.get $4 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find19 - local.get $3 + local.get $2 i32.const -2 i32.and local.set $4 @@ -14918,10 +14906,10 @@ call $~lib/builtins/abort unreachable end + local.get $10 local.get $16 - local.get $15 call $~lib/map/Map#get - local.get $15 + local.get $16 i32.const 20 i32.add i32.ne @@ -14933,14 +14921,14 @@ call $~lib/builtins/abort unreachable end + local.get $10 local.get $16 - local.get $15 call $~lib/map/Map#delete - local.get $16 + local.get $10 i32.load - local.get $16 + local.get $10 i32.load offset=4 - local.get $15 + local.get $16 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14949,24 +14937,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $2 i32.const 15 i32.shr_u - local.get $4 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $2 i32.const 13 i32.shr_u - local.get $4 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $2 i32.const 16 i32.shr_u - local.get $4 + local.get $2 i32.xor i32.and i32.const 2 @@ -14980,19 +14968,19 @@ if local.get $4 i32.load offset=8 - local.tee $3 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $15 + local.get $16 local.get $4 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find22 - local.get $3 + local.get $2 i32.const -2 i32.and local.set $4 @@ -15011,14 +14999,14 @@ call $~lib/builtins/abort unreachable end - local.get $15 + local.get $16 i32.const 1 i32.add - local.set $15 + local.set $16 br $for-loop|3 end end - local.get $16 + local.get $10 i32.load offset=20 i32.const 50 i32.ne @@ -15031,17 +15019,17 @@ unreachable end i32.const 0 - local.set $15 + local.set $16 loop $for-loop|4 - local.get $15 + local.get $16 i32.const 50 i32.lt_u if - local.get $16 + local.get $10 i32.load - local.get $16 + local.get $10 i32.load offset=4 - local.get $15 + local.get $16 i32.const -1028477379 i32.mul i32.const 374761397 @@ -15050,24 +15038,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $2 i32.const 15 i32.shr_u - local.get $4 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $2 i32.const 13 i32.shr_u - local.get $4 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $2 i32.const 16 i32.shr_u - local.get $4 + local.get $2 i32.xor i32.and i32.const 2 @@ -15081,19 +15069,19 @@ if local.get $4 i32.load offset=8 - local.tee $3 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $15 + local.get $16 local.get $4 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find25 - local.get $3 + local.get $2 i32.const -2 i32.and local.set $4 @@ -15112,17 +15100,17 @@ call $~lib/builtins/abort unreachable end + local.get $10 + local.get $16 local.get $16 - local.get $15 - local.get $15 i32.const 10 i32.add call $~lib/map/Map#set - local.get $16 + local.get $10 i32.load - local.get $16 + local.get $10 i32.load offset=4 - local.get $15 + local.get $16 i32.const -1028477379 i32.mul i32.const 374761397 @@ -15131,24 +15119,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $2 i32.const 15 i32.shr_u - local.get $4 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $2 i32.const 13 i32.shr_u - local.get $4 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $2 i32.const 16 i32.shr_u - local.get $4 + local.get $2 i32.xor i32.and i32.const 2 @@ -15162,19 +15150,19 @@ if local.get $4 i32.load offset=8 - local.tee $3 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $15 + local.get $16 local.get $4 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find28 - local.get $3 + local.get $2 i32.const -2 i32.and local.set $4 @@ -15194,14 +15182,14 @@ call $~lib/builtins/abort unreachable end + local.get $10 local.get $16 - local.get $15 call $~lib/map/Map#delete - local.get $16 + local.get $10 i32.load - local.get $16 + local.get $10 i32.load offset=4 - local.get $15 + local.get $16 i32.const -1028477379 i32.mul i32.const 374761397 @@ -15210,24 +15198,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $2 i32.const 15 i32.shr_u - local.get $4 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $2 i32.const 13 i32.shr_u - local.get $4 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $2 i32.const 16 i32.shr_u - local.get $4 + local.get $2 i32.xor i32.and i32.const 2 @@ -15241,19 +15229,19 @@ if local.get $4 i32.load offset=8 - local.tee $3 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $15 + local.get $16 local.get $4 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find31 - local.get $3 + local.get $2 i32.const -2 i32.and local.set $4 @@ -15272,14 +15260,14 @@ call $~lib/builtins/abort unreachable end - local.get $15 + local.get $16 i32.const 1 i32.add - local.set $15 + local.set $16 br $for-loop|4 end end - local.get $16 + local.get $10 i32.load offset=20 i32.const 50 i32.ne @@ -15291,9 +15279,9 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $10 call $~lib/map/Map#clear - local.get $16 + local.get $10 i32.load offset=20 if i32.const 0 @@ -15425,26 +15413,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -15452,13 +15440,13 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $8 + local.tee $4 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $4 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 @@ -15466,19 +15454,19 @@ local.get $8 i32.ne if - local.get $8 + local.get $4 i32.load offset=12 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $8 + local.get $4 i64.load local.tee $6 i64.store local.get $2 - local.get $8 + local.get $4 i32.load offset=8 i32.store offset=8 local.get $2 @@ -15526,7 +15514,7 @@ i32.and i32.const 2 i32.shl - local.get $7 + local.get $5 i32.add local.tee $9 i32.load @@ -15539,20 +15527,20 @@ i32.add local.set $2 end - local.get $8 + local.get $4 i32.const 16 i32.add - local.set $8 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $7 + local.get $5 i32.store - local.get $7 + local.get $5 if local.get $0 - local.get $7 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -15568,7 +15556,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -15813,14 +15801,14 @@ i32.load offset=4 i32.const 1 i32.shr_u - local.tee $3 + local.tee $2 i32.const 1 i32.add i32.const 4 local.get $0 i32.load offset=20 - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.const 4 i32.lt_u select @@ -15840,7 +15828,7 @@ end if local.get $0 - local.get $3 + local.get $2 call $~lib/map/Map#rehash end ) @@ -15885,8 +15873,8 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i32) - (local $4 i64) + (local $3 i64) + (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) @@ -15895,8 +15883,8 @@ (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) - (local $14 i64) + (local $13 i64) + (local $14 i32) (local $15 i32) (local $16 i32) (local $17 i32) @@ -15910,16 +15898,16 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $0 i64.const 0 i64.store - local.get $2 + local.get $0 i64.const 0 i64.store offset=8 - local.get $2 + local.get $0 i32.const 0 i32.store offset=16 - local.get $2 + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -15928,63 +15916,63 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $2 i32.const 0 i32.store - local.get $5 + local.get $2 i32.const 24 i32.const 20 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $9 i32.store - local.get $5 + local.get $9 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 if - local.get $5 - local.get $3 + local.get $9 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 + local.get $9 i32.const 3 i32.store offset=4 - local.get $5 + local.get $9 i32.const 64 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $2 i32.store offset=8 - local.get $3 + local.get $2 if - local.get $5 - local.get $3 + local.get $9 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 + local.get $9 i32.const 4 i32.store offset=12 - local.get $5 + local.get $9 i32.const 0 i32.store offset=16 - local.get $5 + local.get $9 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 - local.get $5 + local.get $0 + local.get $9 i32.store loop $for-loop|0 - local.get $4 + local.get $3 i64.const 100 i64.lt_s if - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -15994,15 +15982,15 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $4 - local.get $4 + local.get $9 + local.get $3 + local.get $3 i32.wrap_i64 i32.const 10 i32.add call $~lib/map/Map#set - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -16013,10 +16001,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#get - local.get $4 + local.get $3 i32.wrap_i64 i32.const 10 i32.add @@ -16029,14 +16017,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i64.const 1 i64.add - local.set $4 + local.set $3 br $for-loop|0 end end - local.get $5 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -16049,14 +16037,14 @@ unreachable end i64.const 0 - local.set $4 + local.set $3 loop $for-loop|1 - local.get $4 + local.get $3 i64.const 100 i64.lt_s if - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -16067,10 +16055,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#get - local.get $4 + local.get $3 i32.wrap_i64 i32.const 10 i32.add @@ -16083,15 +16071,15 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $4 - local.get $4 + local.get $9 + local.get $3 + local.get $3 i32.wrap_i64 i32.const 20 i32.add call $~lib/map/Map#set - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -16102,10 +16090,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#get - local.get $4 + local.get $3 i32.wrap_i64 i32.const 20 i32.add @@ -16118,14 +16106,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i64.const 1 i64.add - local.set $4 + local.set $3 br $for-loop|1 end end - local.get $5 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -16138,8 +16126,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $2 + local.tee $0 + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -16148,17 +16136,17 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $2 i32.const 0 i32.store - local.get $5 + local.get $9 i32.load offset=8 - local.set $12 - local.get $5 + local.set $7 + local.get $9 i32.load offset=16 - local.tee $13 - local.set $0 - local.get $6 + local.tee $8 + local.set $10 + local.get $2 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -16167,28 +16155,28 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $0 i64.const 0 i64.store - local.get $2 + local.get $0 i32.const 16 i32.const 21 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.store offset=4 - local.get $2 + local.get $0 i32.const 0 i32.store offset=8 - local.get $2 + local.get $0 i32.const 0 i32.store offset=12 - local.get $0 + local.get $10 i32.const 134217727 i32.gt_u if @@ -16200,67 +16188,67 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $10 i32.const 8 - local.get $0 + local.get $10 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $8 + local.tee $11 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $12 i32.store offset=4 - local.get $3 - local.get $8 + local.get $12 + local.get $11 call $~lib/memory/memory.fill - local.get $2 - local.get $3 + local.get $0 + local.get $12 i32.store - local.get $3 + local.get $12 if - local.get $2 - local.get $3 + local.get $0 + local.get $12 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 - local.get $3 + local.get $0 + local.get $12 i32.store offset=4 - local.get $2 - local.get $8 + local.get $0 + local.get $11 i32.store offset=8 - local.get $2 local.get $0 + local.get $10 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 local.get $2 - local.tee $3 + local.get $0 + local.tee $2 i32.store loop $for-loop|01 - local.get $7 - local.get $13 + local.get $4 + local.get $8 i32.lt_s if - local.get $7 + local.get $4 i32.const 4 i32.shl - local.get $12 + local.get $7 i32.add - local.tee $2 + local.tee $0 i32.load offset=12 i32.const 1 i32.and i32.eqz if - local.get $3 - local.get $1 local.get $2 + local.get $1 + local.get $0 i64.load call $~lib/array/Array#__set local.get $1 @@ -16268,31 +16256,31 @@ i32.add local.set $1 end - local.get $7 + local.get $4 i32.const 1 i32.add - local.set $7 + local.set $4 br $for-loop|01 end end - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 + local.get $2 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $9 call $~lib/map/Map#values - local.tee $13 + local.tee $10 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -16304,68 +16292,68 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.const 22 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $11 i32.store - local.get $2 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 if - local.get $2 - local.get $0 + local.get $11 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 + local.get $11 i32.const 3 i32.store offset=4 - local.get $2 + local.get $11 i32.const 96 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $1 i32.store offset=8 - local.get $0 + local.get $1 if - local.get $2 - local.get $0 + local.get $11 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 + local.get $11 i32.const 4 i32.store offset=12 - local.get $2 + local.get $11 i32.const 0 i32.store offset=16 - local.get $2 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $11 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $11 + local.tee $12 i32.store offset=16 loop $for-loop|2 - local.get $3 + local.get $2 i32.load offset=12 - local.get $10 + local.get $5 i32.gt_s if - local.get $3 + local.get $2 i32.load offset=12 - local.get $10 + local.get $5 i32.le_u if i32.const 1248 @@ -16375,20 +16363,20 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.load offset=4 - local.get $10 + local.get $5 i32.const 3 i32.shl i32.add i64.load - local.set $4 - local.get $13 + local.set $13 local.get $10 - call $~lib/array/Array#__get - local.set $12 local.get $5 - local.get $4 + call $~lib/array/Array#__get + local.set $14 + local.get $9 + local.get $13 call $~lib/map/Map#has i32.eqz if @@ -16399,8 +16387,8 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $12 + local.get $9 + local.get $14 i32.const 20 i32.sub i64.extend_i32_s @@ -16425,9 +16413,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $2 + local.get $11 i32.load - local.get $4 + local.get $13 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -16437,7 +16425,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $4 + local.get $13 i64.const 32 i64.shr_u i32.wrap_i64 @@ -16467,8 +16455,8 @@ i32.shr_u local.get $0 i32.xor - local.tee $15 - local.get $2 + local.tee $6 + local.get $11 i32.load offset=4 i32.and i32.const 2 @@ -16482,19 +16470,19 @@ if local.get $0 i32.load offset=16 - local.tee $7 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $13 local.get $0 i64.load i64.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $7 + local.get $1 i32.const -2 i32.and local.set $0 @@ -16507,18 +16495,18 @@ local.get $0 if local.get $0 - local.get $4 + local.get $13 i64.store offset=8 else - local.get $2 + local.get $11 i32.load offset=16 - local.get $2 + local.get $11 i32.load offset=12 i32.eq if - local.get $2 + local.get $11 i32.load offset=20 - local.get $2 + local.get $11 i32.load offset=12 i32.const 3 i32.mul @@ -16526,17 +16514,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $2 + local.get $11 i32.load offset=4 else - local.get $2 + local.get $11 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $7 + local.set $15 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -16550,14 +16538,14 @@ i64.const 0 i64.store local.get $0 - local.get $7 + local.get $15 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $8 + local.tee $16 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -16565,46 +16553,46 @@ i32.shl i32.const 3 i32.div_s - local.tee $16 + local.tee $7 i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=4 - local.get $2 + local.get $11 i32.load offset=8 - local.tee $6 - local.get $2 + local.tee $4 + local.get $11 i32.load offset=16 i32.const 24 i32.mul i32.add - local.set $17 + local.set $8 local.get $1 local.set $0 loop $while-continue|00 - local.get $6 - local.get $17 + local.get $4 + local.get $8 i32.ne if - local.get $6 + local.get $4 i32.load offset=16 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $6 + local.get $4 i64.load - local.tee $14 + local.tee $3 i64.store local.get $0 - local.get $6 + local.get $4 i64.load offset=8 i64.store offset=8 local.get $0 - local.get $7 - local.get $14 + local.get $15 + local.get $3 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -16614,7 +16602,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $14 + local.get $3 i64.const 32 i64.shr_u i32.wrap_i64 @@ -16625,34 +16613,34 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $9 + local.tee $17 i32.const 15 i32.shr_u - local.get $9 + local.get $17 i32.xor i32.const -2048144777 i32.mul - local.tee $9 + local.tee $17 i32.const 13 i32.shr_u - local.get $9 + local.get $17 i32.xor i32.const -1028477379 i32.mul - local.tee $9 + local.tee $17 i32.const 16 i32.shr_u - local.get $9 + local.get $17 i32.xor i32.and i32.const 2 i32.shl - local.get $8 + local.get $16 i32.add - local.tee $9 + local.tee $17 i32.load i32.store offset=16 - local.get $9 + local.get $17 local.get $0 i32.store local.get $0 @@ -16660,39 +16648,39 @@ i32.add local.set $0 end - local.get $6 + local.get $4 i32.const 24 i32.add - local.set $6 + local.set $4 br $while-continue|00 end end - local.get $2 - local.get $8 + local.get $11 + local.get $16 i32.store - local.get $8 + local.get $16 if - local.get $2 - local.get $8 + local.get $11 + local.get $16 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 - local.get $7 + local.get $11 + local.get $15 i32.store offset=4 - local.get $2 + local.get $11 local.get $1 i32.store offset=8 local.get $1 if - local.get $2 + local.get $11 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 - local.get $16 + local.get $11 + local.get $7 i32.store offset=12 - local.get $2 - local.get $2 + local.get $11 + local.get $11 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -16701,12 +16689,12 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $11 i32.load offset=8 local.tee $0 i32.store - local.get $2 - local.get $2 + local.get $11 + local.get $11 i32.load offset=16 local.tee $1 i32.const 1 @@ -16718,23 +16706,23 @@ local.get $0 i32.add local.tee $0 - local.get $4 + local.get $13 i64.store local.get $0 - local.get $4 + local.get $13 i64.store offset=8 - local.get $2 - local.get $2 + local.get $11 + local.get $11 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 - local.get $15 + local.get $6 i32.and i32.const 2 i32.shl @@ -16750,21 +16738,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 local.get $12 + local.get $14 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $10 + local.get $5 i32.const 1 i32.add - local.set $10 + local.set $5 br $for-loop|2 end end - local.get $2 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -16776,7 +16764,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $12 i32.load offset=20 i32.const 100 i32.ne @@ -16789,14 +16777,14 @@ unreachable end i64.const 0 - local.set $4 + local.set $3 loop $for-loop|3 - local.get $4 + local.get $3 i64.const 50 i64.lt_s if - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -16807,10 +16795,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#get - local.get $4 + local.get $3 i32.wrap_i64 i32.const 20 i32.add @@ -16823,11 +16811,11 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#delete - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -16837,14 +16825,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i64.const 1 i64.add - local.set $4 + local.set $3 br $for-loop|3 end end - local.get $5 + local.get $9 i32.load offset=20 i32.const 50 i32.ne @@ -16857,14 +16845,14 @@ unreachable end i64.const 0 - local.set $4 + local.set $3 loop $for-loop|4 - local.get $4 + local.get $3 i64.const 50 i64.lt_s if - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -16874,15 +16862,15 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $4 - local.get $4 + local.get $9 + local.get $3 + local.get $3 i32.wrap_i64 i32.const 10 i32.add call $~lib/map/Map#set - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -16893,11 +16881,11 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#delete - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -16907,14 +16895,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i64.const 1 i64.add - local.set $4 + local.set $3 br $for-loop|4 end end - local.get $5 + local.get $9 i32.load offset=20 i32.const 50 i32.ne @@ -16926,9 +16914,9 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $9 call $~lib/map/Map#clear - local.get $5 + local.get $9 i32.load offset=20 if i32.const 0 @@ -17060,26 +17048,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -17087,13 +17075,13 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $8 + local.tee $4 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $4 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 @@ -17101,19 +17089,19 @@ local.get $8 i32.ne if - local.get $8 + local.get $4 i32.load offset=12 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $8 + local.get $4 i64.load local.tee $6 i64.store local.get $2 - local.get $8 + local.get $4 i32.load offset=8 i32.store offset=8 local.get $2 @@ -17161,7 +17149,7 @@ i32.and i32.const 2 i32.shl - local.get $7 + local.get $5 i32.add local.tee $9 i32.load @@ -17174,20 +17162,20 @@ i32.add local.set $2 end - local.get $8 + local.get $4 i32.const 16 i32.add - local.set $8 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $7 + local.get $5 i32.store - local.get $7 + local.get $5 if local.get $0 - local.get $7 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -17203,7 +17191,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -17409,14 +17397,14 @@ i32.load offset=4 i32.const 1 i32.shr_u - local.tee $3 + local.tee $2 i32.const 1 i32.add i32.const 4 local.get $0 i32.load offset=20 - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.const 4 i32.lt_u select @@ -17436,7 +17424,7 @@ end if local.get $0 - local.get $3 + local.get $2 call $~lib/map/Map#rehash end ) @@ -17444,8 +17432,8 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i32) - (local $4 i64) + (local $3 i64) + (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) @@ -17454,8 +17442,8 @@ (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) - (local $14 i64) + (local $13 i64) + (local $14 i32) (local $15 i32) (local $16 i32) (local $17 i32) @@ -17469,16 +17457,16 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $0 i64.const 0 i64.store - local.get $2 + local.get $0 i64.const 0 i64.store offset=8 - local.get $2 + local.get $0 i32.const 0 i32.store offset=16 - local.get $2 + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -17487,63 +17475,63 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $2 i32.const 0 i32.store - local.get $5 + local.get $2 i32.const 24 i32.const 23 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $9 i32.store - local.get $5 + local.get $9 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 if - local.get $5 - local.get $3 + local.get $9 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 + local.get $9 i32.const 3 i32.store offset=4 - local.get $5 + local.get $9 i32.const 64 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $2 i32.store offset=8 - local.get $3 + local.get $2 if - local.get $5 - local.get $3 + local.get $9 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 + local.get $9 i32.const 4 i32.store offset=12 - local.get $5 + local.get $9 i32.const 0 i32.store offset=16 - local.get $5 + local.get $9 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 - local.get $5 + local.get $0 + local.get $9 i32.store loop $for-loop|0 - local.get $4 + local.get $3 i64.const 100 i64.lt_u if - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -17553,15 +17541,15 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $4 - local.get $4 + local.get $9 + local.get $3 + local.get $3 i32.wrap_i64 i32.const 10 i32.add call $~lib/map/Map#set - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -17572,10 +17560,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#get - local.get $4 + local.get $3 i32.wrap_i64 i32.const 10 i32.add @@ -17588,14 +17576,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i64.const 1 i64.add - local.set $4 + local.set $3 br $for-loop|0 end end - local.get $5 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -17608,14 +17596,14 @@ unreachable end i64.const 0 - local.set $4 + local.set $3 loop $for-loop|1 - local.get $4 + local.get $3 i64.const 100 i64.lt_u if - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -17626,10 +17614,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#get - local.get $4 + local.get $3 i32.wrap_i64 i32.const 10 i32.add @@ -17642,15 +17630,15 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $4 - local.get $4 + local.get $9 + local.get $3 + local.get $3 i32.wrap_i64 i32.const 20 i32.add call $~lib/map/Map#set - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -17661,10 +17649,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#get - local.get $4 + local.get $3 i32.wrap_i64 i32.const 20 i32.add @@ -17677,14 +17665,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i64.const 1 i64.add - local.set $4 + local.set $3 br $for-loop|1 end end - local.get $5 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -17697,8 +17685,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $2 + local.tee $0 + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -17707,17 +17695,17 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $2 i32.const 0 i32.store - local.get $5 + local.get $9 i32.load offset=8 - local.set $12 - local.get $5 + local.set $7 + local.get $9 i32.load offset=16 - local.tee $13 - local.set $0 - local.get $6 + local.tee $8 + local.set $10 + local.get $2 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -17726,28 +17714,28 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $0 i64.const 0 i64.store - local.get $2 + local.get $0 i32.const 16 i32.const 24 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.store offset=4 - local.get $2 + local.get $0 i32.const 0 i32.store offset=8 - local.get $2 + local.get $0 i32.const 0 i32.store offset=12 - local.get $0 + local.get $10 i32.const 134217727 i32.gt_u if @@ -17759,67 +17747,67 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $10 i32.const 8 - local.get $0 + local.get $10 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $8 + local.tee $11 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $12 i32.store offset=4 - local.get $3 - local.get $8 + local.get $12 + local.get $11 call $~lib/memory/memory.fill - local.get $2 - local.get $3 + local.get $0 + local.get $12 i32.store - local.get $3 + local.get $12 if - local.get $2 - local.get $3 + local.get $0 + local.get $12 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 - local.get $3 + local.get $0 + local.get $12 i32.store offset=4 - local.get $2 - local.get $8 + local.get $0 + local.get $11 i32.store offset=8 - local.get $2 local.get $0 + local.get $10 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 local.get $2 - local.tee $3 + local.get $0 + local.tee $2 i32.store loop $for-loop|01 - local.get $7 - local.get $13 + local.get $4 + local.get $8 i32.lt_s if - local.get $7 + local.get $4 i32.const 4 i32.shl - local.get $12 + local.get $7 i32.add - local.tee $2 + local.tee $0 i32.load offset=12 i32.const 1 i32.and i32.eqz if - local.get $3 - local.get $1 local.get $2 + local.get $1 + local.get $0 i64.load call $~lib/array/Array#__set local.get $1 @@ -17827,31 +17815,31 @@ i32.add local.set $1 end - local.get $7 + local.get $4 i32.const 1 i32.add - local.set $7 + local.set $4 br $for-loop|01 end end - local.get $3 + local.get $2 local.get $1 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 + local.get $2 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $9 call $~lib/map/Map#values - local.tee $13 + local.tee $10 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -17863,68 +17851,68 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.const 25 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $11 i32.store - local.get $2 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 if - local.get $2 - local.get $0 + local.get $11 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 + local.get $11 i32.const 3 i32.store offset=4 - local.get $2 + local.get $11 i32.const 96 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $1 i32.store offset=8 - local.get $0 + local.get $1 if - local.get $2 - local.get $0 + local.get $11 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 + local.get $11 i32.const 4 i32.store offset=12 - local.get $2 + local.get $11 i32.const 0 i32.store offset=16 - local.get $2 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $11 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $11 + local.tee $12 i32.store offset=16 loop $for-loop|2 - local.get $3 + local.get $2 i32.load offset=12 - local.get $10 + local.get $5 i32.gt_s if - local.get $3 + local.get $2 i32.load offset=12 - local.get $10 + local.get $5 i32.le_u if i32.const 1248 @@ -17934,20 +17922,20 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.load offset=4 - local.get $10 + local.get $5 i32.const 3 i32.shl i32.add i64.load - local.set $4 - local.get $13 + local.set $13 local.get $10 - call $~lib/array/Array#__get - local.set $12 local.get $5 - local.get $4 + call $~lib/array/Array#__get + local.set $14 + local.get $9 + local.get $13 call $~lib/map/Map#has i32.eqz if @@ -17958,8 +17946,8 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $12 + local.get $9 + local.get $14 i32.const 20 i32.sub i64.extend_i32_s @@ -17984,9 +17972,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $2 + local.get $11 i32.load - local.get $4 + local.get $13 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -17996,7 +17984,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $4 + local.get $13 i64.const 32 i64.shr_u i32.wrap_i64 @@ -18026,8 +18014,8 @@ i32.shr_u local.get $0 i32.xor - local.tee $15 - local.get $2 + local.tee $6 + local.get $11 i32.load offset=4 i32.and i32.const 2 @@ -18041,19 +18029,19 @@ if local.get $0 i32.load offset=16 - local.tee $7 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $13 local.get $0 i64.load i64.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $7 + local.get $1 i32.const -2 i32.and local.set $0 @@ -18066,18 +18054,18 @@ local.get $0 if local.get $0 - local.get $4 + local.get $13 i64.store offset=8 else - local.get $2 + local.get $11 i32.load offset=16 - local.get $2 + local.get $11 i32.load offset=12 i32.eq if - local.get $2 + local.get $11 i32.load offset=20 - local.get $2 + local.get $11 i32.load offset=12 i32.const 3 i32.mul @@ -18085,17 +18073,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $2 + local.get $11 i32.load offset=4 else - local.get $2 + local.get $11 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $7 + local.set $15 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -18109,14 +18097,14 @@ i64.const 0 i64.store local.get $0 - local.get $7 + local.get $15 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $8 + local.tee $16 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -18124,46 +18112,46 @@ i32.shl i32.const 3 i32.div_s - local.tee $16 + local.tee $7 i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=4 - local.get $2 + local.get $11 i32.load offset=8 - local.tee $6 - local.get $2 + local.tee $4 + local.get $11 i32.load offset=16 i32.const 24 i32.mul i32.add - local.set $17 + local.set $8 local.get $1 local.set $0 loop $while-continue|00 - local.get $6 - local.get $17 + local.get $4 + local.get $8 i32.ne if - local.get $6 + local.get $4 i32.load offset=16 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $6 + local.get $4 i64.load - local.tee $14 + local.tee $3 i64.store local.get $0 - local.get $6 + local.get $4 i64.load offset=8 i64.store offset=8 local.get $0 - local.get $7 - local.get $14 + local.get $15 + local.get $3 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -18173,7 +18161,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $14 + local.get $3 i64.const 32 i64.shr_u i32.wrap_i64 @@ -18184,34 +18172,34 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $9 + local.tee $17 i32.const 15 i32.shr_u - local.get $9 + local.get $17 i32.xor i32.const -2048144777 i32.mul - local.tee $9 + local.tee $17 i32.const 13 i32.shr_u - local.get $9 + local.get $17 i32.xor i32.const -1028477379 i32.mul - local.tee $9 + local.tee $17 i32.const 16 i32.shr_u - local.get $9 + local.get $17 i32.xor i32.and i32.const 2 i32.shl - local.get $8 + local.get $16 i32.add - local.tee $9 + local.tee $17 i32.load i32.store offset=16 - local.get $9 + local.get $17 local.get $0 i32.store local.get $0 @@ -18219,39 +18207,39 @@ i32.add local.set $0 end - local.get $6 + local.get $4 i32.const 24 i32.add - local.set $6 + local.set $4 br $while-continue|00 end end - local.get $2 - local.get $8 + local.get $11 + local.get $16 i32.store - local.get $8 + local.get $16 if - local.get $2 - local.get $8 + local.get $11 + local.get $16 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 - local.get $7 + local.get $11 + local.get $15 i32.store offset=4 - local.get $2 + local.get $11 local.get $1 i32.store offset=8 local.get $1 if - local.get $2 + local.get $11 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 - local.get $16 + local.get $11 + local.get $7 i32.store offset=12 - local.get $2 - local.get $2 + local.get $11 + local.get $11 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -18260,12 +18248,12 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $11 i32.load offset=8 local.tee $0 i32.store - local.get $2 - local.get $2 + local.get $11 + local.get $11 i32.load offset=16 local.tee $1 i32.const 1 @@ -18277,23 +18265,23 @@ local.get $0 i32.add local.tee $0 - local.get $4 + local.get $13 i64.store local.get $0 - local.get $4 + local.get $13 i64.store offset=8 - local.get $2 - local.get $2 + local.get $11 + local.get $11 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 - local.get $15 + local.get $6 i32.and i32.const 2 i32.shl @@ -18309,21 +18297,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 local.get $12 + local.get $14 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $10 + local.get $5 i32.const 1 i32.add - local.set $10 + local.set $5 br $for-loop|2 end end - local.get $2 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -18335,7 +18323,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $12 i32.load offset=20 i32.const 100 i32.ne @@ -18348,14 +18336,14 @@ unreachable end i64.const 0 - local.set $4 + local.set $3 loop $for-loop|3 - local.get $4 + local.get $3 i64.const 50 i64.lt_u if - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -18366,10 +18354,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#get - local.get $4 + local.get $3 i32.wrap_i64 i32.const 20 i32.add @@ -18382,11 +18370,11 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#delete - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -18396,14 +18384,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i64.const 1 i64.add - local.set $4 + local.set $3 br $for-loop|3 end end - local.get $5 + local.get $9 i32.load offset=20 i32.const 50 i32.ne @@ -18416,14 +18404,14 @@ unreachable end i64.const 0 - local.set $4 + local.set $3 loop $for-loop|4 - local.get $4 + local.get $3 i64.const 50 i64.lt_u if - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -18433,15 +18421,15 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $4 - local.get $4 + local.get $9 + local.get $3 + local.get $3 i32.wrap_i64 i32.const 10 i32.add call $~lib/map/Map#set - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -18452,11 +18440,11 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#delete - local.get $5 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -18466,14 +18454,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i64.const 1 i64.add - local.set $4 + local.set $3 br $for-loop|4 end end - local.get $5 + local.get $9 i32.load offset=20 i32.const 50 i32.ne @@ -18485,9 +18473,9 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $9 call $~lib/map/Map#clear - local.get $5 + local.get $9 i32.load offset=20 if i32.const 0 @@ -18513,11 +18501,11 @@ (func $~lib/map/Map#rehash (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 f32) + (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 f32) (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -18535,21 +18523,21 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 3 i32.shl i32.const 3 @@ -18562,37 +18550,37 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $8 + local.tee $4 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $5 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 - local.get $5 - local.get $8 + local.get $4 + local.get $7 i32.ne if - local.get $8 + local.get $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $8 + local.get $4 f32.load - local.tee $4 + local.tee $8 f32.store local.get $2 - local.get $8 + local.get $4 i32.load offset=4 i32.store offset=4 local.get $2 - local.get $4 + local.get $8 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -18625,7 +18613,7 @@ i32.and i32.const 2 i32.shl - local.get $7 + local.get $5 i32.add local.tee $9 i32.load @@ -18638,20 +18626,20 @@ i32.add local.set $2 end - local.get $8 + local.get $4 i32.const 12 i32.add - local.set $8 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $7 + local.get $5 i32.store - local.get $7 + local.get $5 if local.get $0 - local.get $7 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -18851,14 +18839,14 @@ i32.load offset=4 i32.const 1 i32.shr_u - local.tee $3 + local.tee $2 i32.const 1 i32.add i32.const 4 local.get $0 i32.load offset=20 - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.const 4 i32.lt_u select @@ -18878,7 +18866,7 @@ end if local.get $0 - local.get $3 + local.get $2 call $~lib/map/Map#rehash end ) @@ -18887,11 +18875,11 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) + (local $4 f32) (local $5 i32) (local $6 i32) - (local $7 f32) - (local $8 i32) + (local $7 i32) + (local $8 f32) (local $9 i32) (local $10 i32) (local $11 i32) @@ -18900,7 +18888,7 @@ (local $14 i32) (local $15 i32) (local $16 i32) - (local $17 f32) + (local $17 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -18911,16 +18899,16 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i64.const 0 i64.store offset=8 - local.get $1 + local.get $2 i32.const 0 i32.store offset=16 - local.get $1 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -18929,66 +18917,66 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $16 + local.tee $1 i32.const 0 i32.store - local.get $16 + local.get $1 i32.const 24 i32.const 26 call $~lib/rt/itcms/__new - local.tee $16 + local.tee $12 i32.store - local.get $16 + local.get $12 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if - local.get $16 - local.get $2 + local.get $12 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $16 + local.get $12 i32.const 3 i32.store offset=4 - local.get $16 + local.get $12 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store offset=8 - local.get $2 + local.get $1 if - local.get $16 - local.get $2 + local.get $12 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $16 + local.get $12 i32.const 4 i32.store offset=12 - local.get $16 + local.get $12 i32.const 0 i32.store offset=16 - local.get $16 + local.get $12 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $16 + local.get $2 + local.get $12 i32.store loop $for-loop|0 - local.get $17 + local.get $4 f32.const 100 f32.lt if - local.get $16 + local.get $12 i32.load - local.get $16 + local.get $12 i32.load offset=4 - local.get $17 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19022,36 +19010,36 @@ i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=8 - local.tee $3 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $17 - local.get $1 + local.get $4 + local.get $2 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $3 + local.get $1 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|0 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 if i32.const 0 i32.const 1568 @@ -19060,18 +19048,18 @@ call $~lib/builtins/abort unreachable end - local.get $16 - local.get $17 - local.get $17 + local.get $12 + local.get $4 + local.get $4 i32.trunc_f32_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $16 + local.get $12 i32.load - local.get $16 + local.get $12 i32.load offset=4 - local.get $17 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19105,36 +19093,36 @@ i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=8 - local.tee $3 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $17 - local.get $1 + local.get $4 + local.get $2 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $3 + local.get $1 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|02 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -19144,10 +19132,10 @@ call $~lib/builtins/abort unreachable end - local.get $16 - local.get $17 + local.get $12 + local.get $4 call $~lib/map/Map#get - local.get $17 + local.get $4 i32.trunc_f32_s i32.const 10 i32.add @@ -19160,14 +19148,14 @@ call $~lib/builtins/abort unreachable end - local.get $17 + local.get $4 f32.const 1 f32.add - local.set $17 + local.set $4 br $for-loop|0 end end - local.get $16 + local.get $12 i32.load offset=20 i32.const 100 i32.ne @@ -19180,17 +19168,17 @@ unreachable end f32.const 0 - local.set $17 + local.set $4 loop $for-loop|1 - local.get $17 + local.get $4 f32.const 100 f32.lt if - local.get $16 + local.get $12 i32.load - local.get $16 + local.get $12 i32.load offset=4 - local.get $17 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19224,36 +19212,36 @@ i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=8 - local.tee $3 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $17 - local.get $1 + local.get $4 + local.get $2 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $3 + local.get $1 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|05 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -19263,10 +19251,10 @@ call $~lib/builtins/abort unreachable end - local.get $16 - local.get $17 + local.get $12 + local.get $4 call $~lib/map/Map#get - local.get $17 + local.get $4 i32.trunc_f32_s i32.const 10 i32.add @@ -19279,18 +19267,18 @@ call $~lib/builtins/abort unreachable end - local.get $16 - local.get $17 - local.get $17 + local.get $12 + local.get $4 + local.get $4 i32.trunc_f32_s i32.const 20 i32.add call $~lib/map/Map#set - local.get $16 + local.get $12 i32.load - local.get $16 + local.get $12 i32.load offset=4 - local.get $17 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19324,36 +19312,36 @@ i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=8 - local.tee $3 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $17 - local.get $1 + local.get $4 + local.get $2 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $3 + local.get $1 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|08 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -19363,10 +19351,10 @@ call $~lib/builtins/abort unreachable end - local.get $16 - local.get $17 + local.get $12 + local.get $4 call $~lib/map/Map#get - local.get $17 + local.get $4 i32.trunc_f32_s i32.const 20 i32.add @@ -19379,14 +19367,14 @@ call $~lib/builtins/abort unreachable end - local.get $17 + local.get $4 f32.const 1 f32.add - local.set $17 + local.set $4 br $for-loop|1 end end - local.get $16 + local.get $12 i32.load offset=20 i32.const 100 i32.ne @@ -19409,17 +19397,17 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $14 + local.tee $9 i32.const 0 i32.store - local.get $16 + local.get $12 i32.load offset=8 - local.set $9 - local.get $16 + local.set $7 + local.get $12 i32.load offset=16 - local.tee $8 - local.set $3 - local.get $14 + local.tee $6 + local.set $5 + local.get $9 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -19435,21 +19423,21 @@ i32.const 16 i32.const 27 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 0 i32.store offset=4 - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 0 i32.store offset=12 - local.get $3 + local.get $5 i32.const 268435455 i32.gt_u if @@ -19461,57 +19449,56 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $5 i32.const 8 - local.get $3 + local.get $5 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $13 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 - i32.store offset=4 - local.get $2 - local.get $13 - call $~lib/memory/memory.fill + local.tee $1 + i32.store offset=4 local.get $1 + local.get $3 + call $~lib/memory/memory.fill local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 if - local.get $1 local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $2 - i32.store offset=4 - local.get $1 - local.get $13 - i32.store offset=8 local.get $1 + i32.store offset=4 + local.get $2 local.get $3 + i32.store offset=8 + local.get $2 + local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $14 - local.get $1 - local.tee $2 + local.get $9 + local.get $2 i32.store loop $for-loop|01 - local.get $8 - local.get $15 + local.get $6 + local.get $11 i32.gt_s if - local.get $15 + local.get $11 i32.const 12 i32.mul - local.get $9 + local.get $7 i32.add local.tee $3 i32.load offset=8 @@ -19526,7 +19513,7 @@ local.set $0 local.get $3 f32.load - local.set $17 + local.set $4 local.get $2 i32.load offset=12 local.get $1 @@ -19561,13 +19548,13 @@ i32.const 2 i32.shl i32.add - local.get $17 + local.get $4 f32.store end - local.get $15 + local.get $11 i32.const 1 i32.add - local.set $15 + local.set $11 br $for-loop|01 end end @@ -19586,9 +19573,9 @@ local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $12 call $~lib/map/Map#values - local.tee $8 + local.tee $11 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -19600,68 +19587,68 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 24 i32.const 28 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $10 i32.store - local.get $1 + local.get $10 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store local.get $0 if - local.get $1 + local.get $10 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $10 i32.const 3 i32.store offset=4 - local.get $1 + local.get $10 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store offset=8 local.get $0 if - local.get $1 + local.get $10 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $10 i32.const 4 i32.store offset=12 - local.get $1 + local.get $10 i32.const 0 i32.store offset=16 - local.get $1 + local.get $10 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $10 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $10 + local.tee $9 i32.store offset=16 loop $for-loop|2 local.get $2 i32.load offset=12 - local.get $11 + local.get $16 i32.gt_s if local.get $2 i32.load offset=12 - local.get $11 + local.get $16 i32.le_u if i32.const 1248 @@ -19673,21 +19660,21 @@ end local.get $2 i32.load offset=4 - local.get $11 + local.get $16 i32.const 2 i32.shl i32.add f32.load - local.set $17 - local.get $8 + local.set $8 local.get $11 - call $~lib/array/Array#__get - local.set $9 local.get $16 + call $~lib/array/Array#__get + local.set $7 + local.get $12 i32.load - local.get $16 + local.get $12 i32.load offset=4 - local.get $17 + local.get $8 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19728,19 +19715,19 @@ if local.get $0 i32.load offset=8 - local.tee $15 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $17 + local.get $8 local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $15 + local.get $1 i32.const -2 i32.and local.set $0 @@ -19760,15 +19747,15 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $12 i32.load - local.get $16 + local.get $12 i32.load offset=4 - local.get $9 + local.get $7 i32.const 20 i32.sub f32.convert_i32_s - local.tee $7 + local.tee $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19809,19 +19796,19 @@ if local.get $0 i32.load offset=8 - local.tee $15 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $7 + local.get $4 local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $15 + local.get $1 i32.const -2 i32.and local.set $0 @@ -19852,9 +19839,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $1 + local.get $10 i32.load - local.get $17 + local.get $8 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19883,8 +19870,8 @@ i32.shr_u local.get $0 i32.xor - local.tee $6 - local.get $1 + local.tee $15 + local.get $10 i32.load offset=4 i32.and i32.const 2 @@ -19898,19 +19885,19 @@ if local.get $0 i32.load offset=8 - local.tee $15 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $17 + local.get $8 local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find15 - local.get $15 + local.get $1 i32.const -2 i32.and local.set $0 @@ -19923,18 +19910,18 @@ local.get $0 if local.get $0 - local.get $17 + local.get $8 f32.store offset=4 else - local.get $1 + local.get $10 i32.load offset=16 - local.get $1 + local.get $10 i32.load offset=12 i32.eq if - local.get $1 + local.get $10 i32.load offset=20 - local.get $1 + local.get $10 i32.load offset=12 i32.const 3 i32.mul @@ -19942,17 +19929,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $1 + local.get $10 i32.load offset=4 else - local.get $1 + local.get $10 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $15 + local.set $6 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -19966,14 +19953,14 @@ i64.const 0 i64.store local.get $0 - local.get $15 + local.get $6 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $13 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -19981,45 +19968,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $14 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $1 i32.store offset=4 - local.get $1 + local.get $10 i32.load offset=8 - local.tee $14 - local.get $1 + local.tee $17 + local.get $10 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $4 - local.get $3 + local.set $13 + local.get $1 local.set $0 loop $while-continue|017 - local.get $4 - local.get $14 + local.get $13 + local.get $17 i32.ne if - local.get $14 + local.get $17 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $14 + local.get $17 f32.load - local.tee $7 + local.tee $4 f32.store local.get $0 - local.get $14 + local.get $17 f32.load offset=4 f32.store offset=4 local.get $0 - local.get $7 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20029,35 +20016,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $12 + local.tee $3 i32.const 15 i32.shr_u - local.get $12 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $12 + local.tee $3 i32.const 13 i32.shr_u - local.get $12 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $12 + local.tee $3 i32.const 16 i32.shr_u - local.get $12 + local.get $3 i32.xor - local.get $15 + local.get $6 i32.and i32.const 2 i32.shl - local.get $13 + local.get $5 i32.add - local.tee $12 + local.tee $3 i32.load i32.store offset=8 - local.get $12 + local.get $3 local.get $0 i32.store local.get $0 @@ -20065,39 +20052,39 @@ i32.add local.set $0 end - local.get $14 + local.get $17 i32.const 12 i32.add - local.set $14 + local.set $17 br $while-continue|017 end end - local.get $1 - local.get $13 + local.get $10 + local.get $5 i32.store - local.get $13 + local.get $5 if - local.get $1 - local.get $13 + local.get $10 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 - local.get $15 + local.get $10 + local.get $6 i32.store offset=4 + local.get $10 local.get $1 - local.get $3 i32.store offset=8 - local.get $3 + local.get $1 if + local.get $10 local.get $1 - local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 - local.get $5 + local.get $10 + local.get $14 i32.store offset=12 - local.get $1 - local.get $1 + local.get $10 + local.get $10 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -20106,70 +20093,70 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $10 i32.load offset=8 - local.tee $0 + local.tee $1 i32.store - local.get $1 - local.get $1 + local.get $10 + local.get $10 i32.load offset=16 - local.tee $3 + local.tee $0 i32.const 1 i32.add i32.store offset=16 - local.get $3 + local.get $0 i32.const 12 i32.mul - local.get $0 + local.get $1 i32.add - local.tee $0 - local.get $17 + local.tee $1 + local.get $8 f32.store - local.get $0 - local.get $17 - f32.store offset=4 - local.get $1 local.get $1 + local.get $8 + f32.store offset=4 + local.get $10 + local.get $10 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $0 local.get $1 + local.get $10 i32.load - local.get $1 + local.get $10 i32.load offset=4 - local.get $6 + local.get $15 i32.and i32.const 2 i32.shl i32.add - local.tee $3 + local.tee $0 i32.load i32.store offset=8 - local.get $3 local.get $0 + local.get $1 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 local.get $9 + local.get $7 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $11 + local.get $16 i32.const 1 i32.add - local.set $11 + local.set $16 br $for-loop|2 end end - local.get $1 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -20181,7 +20168,7 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -20194,17 +20181,17 @@ unreachable end f32.const 0 - local.set $17 + local.set $4 loop $for-loop|3 - local.get $17 + local.get $4 f32.const 50 f32.lt if - local.get $16 + local.get $12 i32.load - local.get $16 + local.get $12 i32.load offset=4 - local.get $17 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20214,36 +20201,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/map/Map#find19 loop $while-continue|020 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=8 local.tee $0 i32.const 1 @@ -20251,8 +20238,8 @@ if (result i32) i32.const 0 else - local.get $17 - local.get $1 + local.get $4 + local.get $2 f32.load f32.eq end @@ -20260,14 +20247,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|020 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -20277,10 +20264,10 @@ call $~lib/builtins/abort unreachable end - local.get $16 - local.get $17 + local.get $12 + local.get $4 call $~lib/map/Map#get - local.get $17 + local.get $4 i32.trunc_f32_s i32.const 20 i32.add @@ -20293,14 +20280,14 @@ call $~lib/builtins/abort unreachable end - local.get $16 - local.get $17 + local.get $12 + local.get $4 call $~lib/map/Map#delete - local.get $16 + local.get $12 i32.load - local.get $16 + local.get $12 i32.load offset=4 - local.get $17 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20310,36 +20297,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/map/Map#find22 loop $while-continue|023 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=8 local.tee $0 i32.const 1 @@ -20347,8 +20334,8 @@ if (result i32) i32.const 0 else - local.get $17 - local.get $1 + local.get $4 + local.get $2 f32.load f32.eq end @@ -20356,14 +20343,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|023 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 if i32.const 0 i32.const 1568 @@ -20372,14 +20359,14 @@ call $~lib/builtins/abort unreachable end - local.get $17 + local.get $4 f32.const 1 f32.add - local.set $17 + local.set $4 br $for-loop|3 end end - local.get $16 + local.get $12 i32.load offset=20 i32.const 50 i32.ne @@ -20392,17 +20379,17 @@ unreachable end f32.const 0 - local.set $17 + local.set $4 loop $for-loop|4 - local.get $17 + local.get $4 f32.const 50 f32.lt if - local.get $16 + local.get $12 i32.load - local.get $16 + local.get $12 i32.load offset=4 - local.get $17 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20412,36 +20399,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/map/Map#find25 loop $while-continue|026 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=8 local.tee $0 i32.const 1 @@ -20449,8 +20436,8 @@ if (result i32) i32.const 0 else - local.get $17 - local.get $1 + local.get $4 + local.get $2 f32.load f32.eq end @@ -20458,14 +20445,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|026 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 if i32.const 0 i32.const 1568 @@ -20474,18 +20461,18 @@ call $~lib/builtins/abort unreachable end - local.get $16 - local.get $17 - local.get $17 + local.get $12 + local.get $4 + local.get $4 i32.trunc_f32_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $16 + local.get $12 i32.load - local.get $16 + local.get $12 i32.load offset=4 - local.get $17 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20495,36 +20482,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/map/Map#find28 loop $while-continue|029 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=8 local.tee $0 i32.const 1 @@ -20532,8 +20519,8 @@ if (result i32) i32.const 0 else - local.get $17 - local.get $1 + local.get $4 + local.get $2 f32.load f32.eq end @@ -20541,14 +20528,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|029 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -20558,14 +20545,14 @@ call $~lib/builtins/abort unreachable end - local.get $16 - local.get $17 + local.get $12 + local.get $4 call $~lib/map/Map#delete - local.get $16 + local.get $12 i32.load - local.get $16 + local.get $12 i32.load offset=4 - local.get $17 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20575,36 +20562,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/map/Map#find31 loop $while-continue|032 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=8 local.tee $0 i32.const 1 @@ -20612,8 +20599,8 @@ if (result i32) i32.const 0 else - local.get $17 - local.get $1 + local.get $4 + local.get $2 f32.load f32.eq end @@ -20621,14 +20608,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|032 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 if i32.const 0 i32.const 1568 @@ -20637,14 +20624,14 @@ call $~lib/builtins/abort unreachable end - local.get $17 + local.get $4 f32.const 1 f32.add - local.set $17 + local.set $4 br $for-loop|4 end end - local.get $16 + local.get $12 i32.load offset=20 i32.const 50 i32.ne @@ -20656,9 +20643,9 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $12 call $~lib/map/Map#clear - local.get $16 + local.get $12 i32.load offset=20 if i32.const 0 @@ -20771,12 +20758,12 @@ (func $~lib/map/Map#rehash (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 i64) - (local $5 f64) + (local $4 i32) + (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) - (local $9 i32) + (local $8 f64) + (local $9 i64) (local $10 i32) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -20794,26 +20781,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $8 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -20821,40 +20808,40 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $9 + local.tee $4 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $6 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 - local.get $6 - local.get $9 + local.get $4 + local.get $7 i32.ne if - local.get $9 + local.get $4 i32.load offset=12 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $9 + local.get $4 f64.load - local.tee $5 + local.tee $8 f64.store local.get $2 - local.get $9 + local.get $4 i32.load offset=8 i32.store offset=8 local.get $2 local.get $1 - local.get $5 + local.get $8 i64.reinterpret_f64 - local.tee $4 + local.tee $9 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -20864,7 +20851,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $4 + local.get $9 i64.const 32 i64.shr_u i32.wrap_i64 @@ -20897,7 +20884,7 @@ i32.and i32.const 2 i32.shl - local.get $8 + local.get $5 i32.add local.tee $10 i32.load @@ -20910,20 +20897,20 @@ i32.add local.set $2 end - local.get $9 + local.get $4 i32.const 16 i32.add - local.set $9 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $8 + local.get $5 i32.store - local.get $8 + local.get $5 if local.get $0 - local.get $8 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -20939,7 +20926,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -21048,15 +21035,15 @@ ) (func $~lib/map/Map#delete (param $0 i32) (param $1 f64) (local $2 i32) - (local $3 i32) - (local $4 i64) + (local $3 i64) + (local $4 i32) local.get $0 i32.load local.get $0 i32.load offset=4 local.get $1 i64.reinterpret_f64 - local.tee $4 + local.tee $3 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -21066,7 +21053,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $4 + local.get $3 i64.const 32 i64.shr_u i32.wrap_i64 @@ -21108,7 +21095,7 @@ if local.get $2 i32.load offset=12 - local.tee $3 + local.tee $4 i32.const 1 i32.and if (result i32) @@ -21120,7 +21107,7 @@ f64.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $3 + local.get $4 i32.const -2 i32.and local.set $2 @@ -21151,14 +21138,14 @@ i32.load offset=4 i32.const 1 i32.shr_u - local.tee $3 + local.tee $2 i32.const 1 i32.add i32.const 4 local.get $0 i32.load offset=20 - local.tee $2 - local.get $2 + local.tee $4 + local.get $4 i32.const 4 i32.lt_u select @@ -21178,7 +21165,7 @@ end if local.get $0 - local.get $3 + local.get $2 call $~lib/map/Map#rehash end ) @@ -21186,22 +21173,22 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i32) - (local $4 f64) + (local $3 f64) + (local $4 i32) (local $5 i32) - (local $6 i32) + (local $6 i64) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) + (local $14 f64) (local $15 i32) (local $16 i32) (local $17 i32) - (local $18 f64) + (local $18 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -21212,16 +21199,16 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i64.const 0 i64.store offset=8 - local.get $1 + local.get $2 i32.const 0 i32.store offset=16 - local.get $1 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -21230,63 +21217,63 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $17 + local.tee $1 i32.const 0 i32.store - local.get $17 + local.get $1 i32.const 24 i32.const 29 call $~lib/rt/itcms/__new - local.tee $17 + local.tee $10 i32.store - local.get $17 + local.get $10 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 if - local.get $17 - local.get $3 + local.get $10 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $17 + local.get $10 i32.const 3 i32.store offset=4 - local.get $17 + local.get $10 i32.const 64 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $1 i32.store offset=8 - local.get $3 + local.get $1 if - local.get $17 - local.get $3 + local.get $10 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $17 + local.get $10 i32.const 4 i32.store offset=12 - local.get $17 + local.get $10 i32.const 0 i32.store offset=16 - local.get $17 + local.get $10 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $17 + local.get $2 + local.get $10 i32.store loop $for-loop|0 - local.get $18 + local.get $3 f64.const 100 f64.lt if - local.get $17 - local.get $18 + local.get $10 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -21296,15 +21283,15 @@ call $~lib/builtins/abort unreachable end - local.get $17 - local.get $18 - local.get $18 + local.get $10 + local.get $3 + local.get $3 i32.trunc_f64_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $17 - local.get $18 + local.get $10 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -21315,10 +21302,10 @@ call $~lib/builtins/abort unreachable end - local.get $17 - local.get $18 + local.get $10 + local.get $3 call $~lib/map/Map#get - local.get $18 + local.get $3 i32.trunc_f64_s i32.const 10 i32.add @@ -21331,14 +21318,14 @@ call $~lib/builtins/abort unreachable end - local.get $18 + local.get $3 f64.const 1 f64.add - local.set $18 + local.set $3 br $for-loop|0 end end - local.get $17 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -21351,14 +21338,14 @@ unreachable end f64.const 0 - local.set $18 + local.set $3 loop $for-loop|1 - local.get $18 + local.get $3 f64.const 100 f64.lt if - local.get $17 - local.get $18 + local.get $10 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -21369,10 +21356,10 @@ call $~lib/builtins/abort unreachable end - local.get $17 - local.get $18 + local.get $10 + local.get $3 call $~lib/map/Map#get - local.get $18 + local.get $3 i32.trunc_f64_s i32.const 10 i32.add @@ -21385,15 +21372,15 @@ call $~lib/builtins/abort unreachable end - local.get $17 - local.get $18 - local.get $18 + local.get $10 + local.get $3 + local.get $3 i32.trunc_f64_s i32.const 20 i32.add call $~lib/map/Map#set - local.get $17 - local.get $18 + local.get $10 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -21404,10 +21391,10 @@ call $~lib/builtins/abort unreachable end - local.get $17 - local.get $18 + local.get $10 + local.get $3 call $~lib/map/Map#get - local.get $18 + local.get $3 i32.trunc_f64_s i32.const 20 i32.add @@ -21420,14 +21407,14 @@ call $~lib/builtins/abort unreachable end - local.get $18 + local.get $3 f64.const 1 f64.add - local.set $18 + local.set $3 br $for-loop|1 end end - local.get $17 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -21440,8 +21427,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -21450,17 +21437,17 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $16 + local.tee $1 i32.const 0 i32.store - local.get $17 + local.get $10 i32.load offset=8 - local.set $10 - local.get $17 + local.set $8 + local.get $10 i32.load offset=16 local.tee $9 - local.set $2 - local.get $16 + local.set $11 + local.get $1 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -21469,28 +21456,28 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 16 i32.const 30 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 0 i32.store offset=4 - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 0 i32.store offset=12 - local.get $2 + local.get $11 i32.const 134217727 i32.gt_u if @@ -21502,59 +21489,58 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $11 i32.const 8 - local.get $2 + local.get $11 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $14 + local.tee $12 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $13 i32.store offset=4 - local.get $3 - local.get $14 + local.get $13 + local.get $12 call $~lib/memory/memory.fill - local.get $1 - local.get $3 + local.get $2 + local.get $13 i32.store - local.get $3 + local.get $13 if - local.get $1 - local.get $3 + local.get $2 + local.get $13 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 - local.get $3 + local.get $2 + local.get $13 i32.store offset=4 - local.get $1 - local.get $14 + local.get $2 + local.get $12 i32.store offset=8 - local.get $1 local.get $2 + local.get $11 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $16 local.get $1 - local.tee $3 + local.get $2 i32.store loop $for-loop|01 + local.get $4 local.get $9 - local.get $15 - i32.gt_s + i32.lt_s if - local.get $15 + local.get $4 i32.const 4 i32.shl - local.get $10 + local.get $8 i32.add - local.tee $2 + local.tee $11 i32.load offset=12 i32.const 1 i32.and @@ -21565,10 +21551,10 @@ i32.const 1 i32.add local.set $0 - local.get $2 + local.get $11 f64.load - local.set $18 - local.get $3 + local.set $3 + local.get $2 i32.load offset=12 local.get $1 i32.le_u @@ -21584,52 +21570,52 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $11 i32.const 3 i32.const 1 call $~lib/array/ensureCapacity - local.get $3 local.get $2 + local.get $11 i32.store offset=12 end - local.get $3 + local.get $2 i32.load offset=4 local.get $1 i32.const 3 i32.shl i32.add - local.get $18 + local.get $3 f64.store end - local.get $15 + local.get $4 i32.const 1 i32.add - local.set $15 + local.set $4 br $for-loop|01 end end - local.get $3 + local.get $2 local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 + local.get $2 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $17 + local.get $10 call $~lib/map/Map#values - local.tee $9 + local.tee $11 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -21648,61 +21634,61 @@ i32.const 24 i32.const 31 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $12 i32.store - local.get $1 + local.get $12 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 if + local.get $12 local.get $1 - local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $12 i32.const 3 i32.store offset=4 - local.get $1 + local.get $12 i32.const 96 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $1 i32.store offset=8 - local.get $0 + local.get $1 if + local.get $12 local.get $1 - local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $12 i32.const 4 i32.store offset=12 - local.get $1 + local.get $12 i32.const 0 i32.store offset=16 - local.get $1 + local.get $12 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $12 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $11 + local.tee $13 i32.store offset=16 loop $for-loop|2 - local.get $3 + local.get $2 i32.load offset=12 - local.get $12 + local.get $5 i32.gt_s if - local.get $3 + local.get $2 i32.load offset=12 - local.get $12 + local.get $5 i32.le_u if i32.const 1248 @@ -21712,20 +21698,20 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.load offset=4 - local.get $12 + local.get $5 i32.const 3 i32.shl i32.add f64.load - local.set $18 - local.get $9 - local.get $12 + local.set $14 + local.get $11 + local.get $5 call $~lib/array/Array#__get - local.set $10 - local.get $17 - local.get $18 + local.set $15 + local.get $10 + local.get $14 call $~lib/map/Map#has i32.eqz if @@ -21736,8 +21722,8 @@ call $~lib/builtins/abort unreachable end - local.get $17 local.get $10 + local.get $15 i32.const 20 i32.sub f64.convert_i32_s @@ -21762,11 +21748,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $1 + local.get $12 i32.load - local.get $18 + local.get $14 i64.reinterpret_f64 - local.tee $8 + local.tee $6 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -21776,7 +21762,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $8 + local.get $6 i64.const 32 i64.shr_u i32.wrap_i64 @@ -21807,7 +21793,7 @@ local.get $0 i32.xor local.tee $7 - local.get $1 + local.get $12 i32.load offset=4 i32.and i32.const 2 @@ -21821,19 +21807,19 @@ if local.get $0 i32.load offset=16 - local.tee $15 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $18 + local.get $14 local.get $0 f64.load f64.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $15 + local.get $1 i32.const -2 i32.and local.set $0 @@ -21846,18 +21832,18 @@ local.get $0 if local.get $0 - local.get $18 + local.get $14 f64.store offset=8 else - local.get $1 + local.get $12 i32.load offset=16 - local.get $1 + local.get $12 i32.load offset=12 i32.eq if - local.get $1 + local.get $12 i32.load offset=20 - local.get $1 + local.get $12 i32.load offset=12 i32.const 3 i32.mul @@ -21865,17 +21851,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $1 + local.get $12 i32.load offset=4 else - local.get $1 + local.get $12 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $15 + local.set $16 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -21889,14 +21875,14 @@ i64.const 0 i64.store local.get $0 - local.get $15 + local.get $16 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $14 + local.tee $17 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -21904,48 +21890,48 @@ i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $8 i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $1 + local.get $12 i32.load offset=8 - local.tee $16 - local.get $1 + local.tee $4 + local.get $12 i32.load offset=16 i32.const 24 i32.mul i32.add - local.set $5 - local.get $2 + local.set $9 + local.get $1 local.set $0 loop $while-continue|00 - local.get $5 - local.get $16 + local.get $4 + local.get $9 i32.ne if - local.get $16 + local.get $4 i32.load offset=16 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $16 + local.get $4 f64.load - local.tee $4 + local.tee $3 f64.store local.get $0 - local.get $16 + local.get $4 f64.load offset=8 f64.store offset=8 local.get $0 - local.get $15 - local.get $4 + local.get $16 + local.get $3 i64.reinterpret_f64 - local.tee $8 + local.tee $6 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -21955,7 +21941,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $8 + local.get $6 i64.const 32 i64.shr_u i32.wrap_i64 @@ -21966,34 +21952,34 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $13 + local.tee $18 i32.const 15 i32.shr_u - local.get $13 + local.get $18 i32.xor i32.const -2048144777 i32.mul - local.tee $13 + local.tee $18 i32.const 13 i32.shr_u - local.get $13 + local.get $18 i32.xor i32.const -1028477379 i32.mul - local.tee $13 + local.tee $18 i32.const 16 i32.shr_u - local.get $13 + local.get $18 i32.xor i32.and i32.const 2 i32.shl - local.get $14 + local.get $17 i32.add - local.tee $13 + local.tee $18 i32.load i32.store offset=16 - local.get $13 + local.get $18 local.get $0 i32.store local.get $0 @@ -22001,39 +21987,39 @@ i32.add local.set $0 end - local.get $16 + local.get $4 i32.const 24 i32.add - local.set $16 + local.set $4 br $while-continue|00 end end - local.get $1 - local.get $14 + local.get $12 + local.get $17 i32.store - local.get $14 + local.get $17 if - local.get $1 - local.get $14 + local.get $12 + local.get $17 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 - local.get $15 + local.get $12 + local.get $16 i32.store offset=4 + local.get $12 local.get $1 - local.get $2 i32.store offset=8 - local.get $2 + local.get $1 if + local.get $12 local.get $1 - local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 - local.get $6 + local.get $12 + local.get $8 i32.store offset=12 - local.get $1 - local.get $1 + local.get $12 + local.get $12 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -22042,48 +22028,48 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $12 i32.load offset=8 local.tee $0 i32.store - local.get $1 - local.get $1 + local.get $12 + local.get $12 i32.load offset=16 - local.tee $2 + local.tee $1 i32.const 1 i32.add i32.store offset=16 - local.get $2 + local.get $1 i32.const 24 i32.mul local.get $0 i32.add local.tee $0 - local.get $18 + local.get $14 f64.store local.get $0 - local.get $18 + local.get $14 f64.store offset=8 - local.get $1 - local.get $1 + local.get $12 + local.get $12 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $1 + local.get $12 i32.load - local.get $1 + local.get $12 i32.load offset=4 local.get $7 i32.and i32.const 2 i32.shl i32.add - local.tee $2 + local.tee $1 i32.load i32.store offset=16 - local.get $2 + local.get $1 local.get $0 i32.store end @@ -22091,21 +22077,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 - local.get $10 + local.get $13 + local.get $15 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $12 + local.get $5 i32.const 1 i32.add - local.set $12 + local.set $5 br $for-loop|2 end end - local.get $1 + local.get $12 i32.load offset=20 i32.const 100 i32.ne @@ -22117,7 +22103,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $13 i32.load offset=20 i32.const 100 i32.ne @@ -22130,14 +22116,14 @@ unreachable end f64.const 0 - local.set $18 + local.set $3 loop $for-loop|3 - local.get $18 + local.get $3 f64.const 50 f64.lt if - local.get $17 - local.get $18 + local.get $10 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -22148,10 +22134,10 @@ call $~lib/builtins/abort unreachable end - local.get $17 - local.get $18 + local.get $10 + local.get $3 call $~lib/map/Map#get - local.get $18 + local.get $3 i32.trunc_f64_s i32.const 20 i32.add @@ -22164,11 +22150,11 @@ call $~lib/builtins/abort unreachable end - local.get $17 - local.get $18 + local.get $10 + local.get $3 call $~lib/map/Map#delete - local.get $17 - local.get $18 + local.get $10 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -22178,14 +22164,14 @@ call $~lib/builtins/abort unreachable end - local.get $18 + local.get $3 f64.const 1 f64.add - local.set $18 + local.set $3 br $for-loop|3 end end - local.get $17 + local.get $10 i32.load offset=20 i32.const 50 i32.ne @@ -22198,14 +22184,14 @@ unreachable end f64.const 0 - local.set $18 + local.set $3 loop $for-loop|4 - local.get $18 + local.get $3 f64.const 50 f64.lt if - local.get $17 - local.get $18 + local.get $10 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -22215,15 +22201,15 @@ call $~lib/builtins/abort unreachable end - local.get $17 - local.get $18 - local.get $18 + local.get $10 + local.get $3 + local.get $3 i32.trunc_f64_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $17 - local.get $18 + local.get $10 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -22234,11 +22220,11 @@ call $~lib/builtins/abort unreachable end - local.get $17 - local.get $18 + local.get $10 + local.get $3 call $~lib/map/Map#delete - local.get $17 - local.get $18 + local.get $10 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -22248,14 +22234,14 @@ call $~lib/builtins/abort unreachable end - local.get $18 + local.get $3 f64.const 1 f64.add - local.set $18 + local.set $3 br $for-loop|4 end end - local.get $17 + local.get $10 i32.load offset=20 i32.const 50 i32.ne @@ -22267,9 +22253,9 @@ call $~lib/builtins/abort unreachable end - local.get $17 + local.get $10 call $~lib/map/Map#clear - local.get $17 + local.get $10 i32.load offset=20 if i32.const 0 @@ -22325,14 +22311,13 @@ unreachable end local.get $0 - local.tee $1 i32.load - local.tee $0 + local.tee $1 if - local.get $0 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end - local.get $1 + local.get $0 i32.load offset=8 local.tee $0 if @@ -22526,7 +22511,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $5 + local.tee $4 local.get $0 i32.load offset=4 i32.and @@ -22541,7 +22526,7 @@ if local.get $1 i32.load offset=8 - local.tee $4 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -22555,7 +22540,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $4 + local.get $5 i32.const -2 i32.and local.set $1 @@ -22608,11 +22593,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $4 + local.tee $5 i32.const 1 i32.add i32.store offset=16 - local.get $4 + local.get $5 i32.const 12 i32.mul local.get $1 @@ -22634,7 +22619,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $5 + local.get $4 i32.and i32.const 2 i32.shl @@ -22678,18 +22663,18 @@ i32.const 16 i32.const 5 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 i32.store - local.get $1 + local.get $3 i32.const 0 i32.store offset=4 - local.get $1 + local.get $3 i32.const 0 i32.store offset=8 - local.get $1 + local.get $3 i32.const 0 i32.store offset=12 local.get $0 @@ -22712,37 +22697,37 @@ select i32.const 2 i32.shl - local.tee $3 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store offset=4 + local.get $1 local.get $2 - local.get $3 call $~lib/memory/memory.fill + local.get $3 local.get $1 - local.get $2 i32.store - local.get $2 + local.get $1 if + local.get $3 local.get $1 - local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $3 local.get $1 - local.get $2 i32.store offset=4 - local.get $1 local.get $3 + local.get $2 i32.store offset=8 - local.get $1 + local.get $3 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $3 ) (func $~lib/map/Map#values (param $0 i32) (result i32) (local $1 i32) @@ -22766,38 +22751,38 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $4 i32.const 0 i32.store local.get $0 i32.load offset=8 - local.set $4 - local.get $2 + local.set $3 + local.get $4 local.get $0 i32.load offset=16 - local.tee $2 + local.tee $4 call $~lib/array/Array#constructor - local.tee $0 + local.tee $5 i32.store loop $for-loop|0 local.get $2 - local.get $3 - i32.gt_s + local.get $4 + i32.lt_s if - local.get $3 + local.get $2 i32.const 12 i32.mul - local.get $4 + local.get $3 i32.add - local.tee $5 + local.tee $0 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $0 - local.get $1 local.get $5 + local.get $1 + local.get $0 i32.load offset=4 call $~lib/array/Array#__set local.get $1 @@ -22805,26 +22790,26 @@ i32.add local.set $1 end - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 br $for-loop|0 end end - local.get $0 + local.get $5 local.get $1 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $0 + local.get $5 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $5 ) (func $~lib/map/Map#constructor (result i32) (local $0 i32) @@ -22947,7 +22932,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $5 + local.tee $4 local.get $0 i32.load offset=4 i32.and @@ -22962,7 +22947,7 @@ if local.get $1 i32.load offset=8 - local.tee $4 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -22974,7 +22959,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $4 + local.get $5 i32.const -2 i32.and local.set $1 @@ -23027,11 +23012,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $4 + local.tee $5 i32.const 1 i32.add i32.store offset=16 - local.get $4 + local.get $5 i32.const 12 i32.mul local.get $1 @@ -23053,7 +23038,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $5 + local.get $4 i32.and i32.const 2 i32.shl @@ -23125,7 +23110,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $5 + local.tee $4 local.get $0 i32.load offset=4 i32.and @@ -23140,7 +23125,7 @@ if local.get $1 i32.load offset=8 - local.tee $4 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -23154,7 +23139,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $4 + local.get $5 i32.const -2 i32.and local.set $1 @@ -23207,11 +23192,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $4 + local.tee $5 i32.const 1 i32.add i32.store offset=16 - local.get $4 + local.get $5 i32.const 12 i32.mul local.get $1 @@ -23233,7 +23218,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $5 + local.get $4 i32.and i32.const 2 i32.shl @@ -23304,7 +23289,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $5 + local.tee $4 local.get $0 i32.load offset=4 i32.and @@ -23319,7 +23304,7 @@ if local.get $1 i32.load offset=8 - local.tee $4 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -23333,7 +23318,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $4 + local.get $5 i32.const -2 i32.and local.set $1 @@ -23386,11 +23371,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $4 + local.tee $5 i32.const 1 i32.add i32.store offset=16 - local.get $4 + local.get $5 i32.const 12 i32.mul local.get $1 @@ -23412,7 +23397,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $5 + local.get $4 i32.and i32.const 2 i32.shl @@ -23484,7 +23469,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $5 + local.tee $4 local.get $0 i32.load offset=4 i32.and @@ -23499,7 +23484,7 @@ if local.get $1 i32.load offset=8 - local.tee $4 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -23513,7 +23498,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $4 + local.get $5 i32.const -2 i32.and local.set $1 @@ -23566,11 +23551,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $4 + local.tee $5 i32.const 1 i32.add i32.store offset=16 - local.get $4 + local.get $5 i32.const 12 i32.mul local.get $1 @@ -23592,7 +23577,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $5 + local.get $4 i32.and i32.const 2 i32.shl @@ -23662,7 +23647,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $5 + local.tee $4 local.get $0 i32.load offset=4 i32.and @@ -23677,7 +23662,7 @@ if local.get $1 i32.load offset=8 - local.tee $4 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -23689,7 +23674,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $4 + local.get $5 i32.const -2 i32.and local.set $1 @@ -23742,11 +23727,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $4 + local.tee $5 i32.const 1 i32.add i32.store offset=16 - local.get $4 + local.get $5 i32.const 12 i32.mul local.get $1 @@ -23768,7 +23753,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $5 + local.get $4 i32.and i32.const 2 i32.shl @@ -23849,7 +23834,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $5 + local.tee $4 local.get $0 i32.load offset=4 i32.and @@ -23864,7 +23849,7 @@ if local.get $3 i32.load offset=12 - local.tee $4 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -23876,7 +23861,7 @@ i64.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $4 + local.get $5 i32.const -2 i32.and local.set $3 @@ -23929,11 +23914,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $4 + local.tee $5 i32.const 1 i32.add i32.store offset=16 - local.get $4 + local.get $5 i32.const 4 i32.shl local.get $3 @@ -23955,7 +23940,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $5 + local.get $4 i32.and i32.const 2 i32.shl @@ -23994,38 +23979,38 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $4 i32.const 0 i32.store local.get $0 i32.load offset=8 - local.set $4 - local.get $2 + local.set $3 + local.get $4 local.get $0 i32.load offset=16 - local.tee $2 + local.tee $4 call $~lib/array/Array#constructor - local.tee $0 + local.tee $5 i32.store loop $for-loop|0 local.get $2 - local.get $3 - i32.gt_s + local.get $4 + i32.lt_s if - local.get $3 + local.get $2 i32.const 4 i32.shl - local.get $4 + local.get $3 i32.add - local.tee $5 + local.tee $0 i32.load offset=12 i32.const 1 i32.and i32.eqz if - local.get $0 - local.get $1 local.get $5 + local.get $1 + local.get $0 i32.load offset=8 call $~lib/array/Array#__set local.get $1 @@ -24033,26 +24018,26 @@ i32.add local.set $1 end - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 br $for-loop|0 end end - local.get $0 + local.get $5 local.get $1 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $0 + local.get $5 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $5 ) (func $~lib/map/Map#set (param $0 i32) (param $1 i64) (param $2 i32) (local $3 i32) @@ -24118,7 +24103,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $5 + local.tee $4 local.get $0 i32.load offset=4 i32.and @@ -24133,7 +24118,7 @@ if local.get $3 i32.load offset=12 - local.tee $4 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -24145,7 +24130,7 @@ i64.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $4 + local.get $5 i32.const -2 i32.and local.set $3 @@ -24198,11 +24183,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $4 + local.tee $5 i32.const 1 i32.add i32.store offset=16 - local.get $4 + local.get $5 i32.const 4 i32.shl local.get $3 @@ -24224,7 +24209,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $5 + local.get $4 i32.and i32.const 2 i32.shl @@ -24294,7 +24279,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $5 + local.tee $4 local.get $0 i32.load offset=4 i32.and @@ -24309,7 +24294,7 @@ if local.get $3 i32.load offset=8 - local.tee $4 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -24321,7 +24306,7 @@ f32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $4 + local.get $5 i32.const -2 i32.and local.set $3 @@ -24374,11 +24359,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $4 + local.tee $5 i32.const 1 i32.add i32.store offset=16 - local.get $4 + local.get $5 i32.const 12 i32.mul local.get $3 @@ -24400,7 +24385,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $5 + local.get $4 i32.and i32.const 2 i32.shl @@ -24419,8 +24404,8 @@ ) (func $~lib/map/Map#set (param $0 i32) (param $1 f64) (param $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i64) + (local $4 i64) + (local $5 i32) (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 4 @@ -24444,7 +24429,7 @@ i32.load local.get $1 i64.reinterpret_f64 - local.tee $5 + local.tee $4 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -24454,7 +24439,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $5 + local.get $4 i64.const 32 i64.shr_u i32.wrap_i64 @@ -24484,7 +24469,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $6 + local.tee $5 local.get $0 i32.load offset=4 i32.and @@ -24499,7 +24484,7 @@ if local.get $3 i32.load offset=12 - local.tee $4 + local.tee $6 i32.const 1 i32.and if (result i32) @@ -24511,7 +24496,7 @@ f64.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $4 + local.get $6 i32.const -2 i32.and local.set $3 @@ -24564,11 +24549,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $4 + local.tee $6 i32.const 1 i32.add i32.store offset=16 - local.get $4 + local.get $6 i32.const 4 i32.shl local.get $3 @@ -24590,7 +24575,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $6 + local.get $5 i32.and i32.const 2 i32.shl diff --git a/tests/compiler/std/math.optimized.wat b/tests/compiler/std/math.optimized.wat index 1e82a3719c..4fed535ef1 100644 --- a/tests/compiler/std/math.optimized.wat +++ b/tests/compiler/std/math.optimized.wat @@ -561,32 +561,32 @@ i32.const 1 ) (func $~lib/math/NativeMath.acos (param $0 f64) (result f64) - (local $1 f64) + (local $1 i32) (local $2 i32) - (local $3 i32) + (local $3 f64) (local $4 f64) local.get $0 i64.reinterpret_f64 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $3 + local.tee $2 i32.const 2147483647 i32.and - local.tee $2 + local.tee $1 i32.const 1072693248 i32.ge_u if local.get $0 i64.reinterpret_f64 i32.wrap_i64 - local.get $2 + local.get $1 i32.const 1072693248 i32.sub i32.or i32.eqz if - local.get $3 + local.get $2 i32.const 31 i32.shr_u if @@ -603,11 +603,11 @@ f64.div return end - local.get $2 + local.get $1 i32.const 1071644672 i32.lt_u if - local.get $2 + local.get $1 i32.const 1012924416 i32.le_u if @@ -668,7 +668,7 @@ f64.sub return end - local.get $3 + local.get $2 i32.const 31 i32.shr_u if @@ -680,7 +680,7 @@ f64.add local.tee $0 f64.sqrt - local.tee $1 + local.tee $3 local.get $0 local.get $0 local.get $0 @@ -722,7 +722,7 @@ f64.const 1 f64.add f64.div - local.get $1 + local.get $3 f64.mul f64.const 6.123233995736766e-17 f64.sub @@ -737,20 +737,20 @@ f64.const 0.5 f64.mul f64.sub - local.tee $0 + local.tee $3 f64.sqrt - local.tee $4 + local.tee $0 i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $1 - local.get $0 - local.get $0 - local.get $0 - local.get $0 - local.get $0 - local.get $0 + local.tee $4 + local.get $3 + local.get $3 + local.get $3 + local.get $3 + local.get $3 + local.get $3 f64.const 3.479331075960212e-05 f64.mul f64.const 7.915349942898145e-04 @@ -768,10 +768,10 @@ f64.const 0.16666666666666666 f64.add f64.mul - local.get $0 - local.get $0 - local.get $0 - local.get $0 + local.get $3 + local.get $3 + local.get $3 + local.get $3 f64.const 0.07703815055590194 f64.mul f64.const -0.6882839716054533 @@ -786,15 +786,15 @@ f64.const 1 f64.add f64.div - local.get $4 - f64.mul local.get $0 - local.get $1 - local.get $1 + f64.mul + local.get $3 + local.get $4 + local.get $4 f64.mul f64.sub + local.get $0 local.get $4 - local.get $1 f64.add f64.div f64.add @@ -803,25 +803,24 @@ f64.mul ) (func $~lib/math/NativeMathf.acos (param $0 f32) (result f32) - (local $1 f32) - (local $2 i32) - (local $3 f32) - (local $4 i32) - (local $5 f32) + (local $1 i32) + (local $2 f32) + (local $3 i32) + (local $4 f32) local.get $0 i32.reinterpret_f32 - local.tee $4 + local.tee $3 i32.const 2147483647 i32.and - local.tee $2 + local.tee $1 i32.const 1065353216 i32.ge_u if - local.get $2 + local.get $1 i32.const 1065353216 i32.eq if - local.get $4 + local.get $3 i32.const 31 i32.shr_u if @@ -838,11 +837,11 @@ f32.div return end - local.get $2 + local.get $1 i32.const 1056964608 i32.lt_u if - local.get $2 + local.get $1 i32.const 847249408 i32.le_u if @@ -879,7 +878,7 @@ f32.sub return end - local.get $4 + local.get $3 i32.const 31 i32.shr_u if @@ -891,7 +890,7 @@ f32.add local.tee $0 f32.sqrt - local.tee $1 + local.tee $2 local.get $0 local.get $0 local.get $0 @@ -909,7 +908,7 @@ f32.const 1 f32.add f32.div - local.get $1 + local.get $2 f32.mul f32.const 7.549789415861596e-08 f32.sub @@ -924,16 +923,15 @@ f32.const 0.5 f32.mul f32.sub - local.tee $1 + local.tee $0 f32.sqrt - local.tee $5 + local.tee $4 i32.reinterpret_f32 i32.const -4096 i32.and f32.reinterpret_i32 - local.tee $3 - local.get $1 - local.tee $0 + local.tee $2 + local.get $0 local.get $0 local.get $0 f32.const -0.008656363002955914 @@ -950,15 +948,15 @@ f32.const 1 f32.add f32.div - local.get $5 + local.get $4 f32.mul local.get $0 - local.get $3 - local.get $3 + local.get $2 + local.get $2 f32.mul f32.sub - local.get $5 - local.get $3 + local.get $4 + local.get $2 f32.add f32.div f32.add @@ -969,27 +967,27 @@ (func $~lib/math/NativeMath.log1p (param $0 f64) (result f64) (local $1 f64) (local $2 i32) - (local $3 i32) + (local $3 i64) (local $4 f64) - (local $5 i64) + (local $5 i32) (local $6 f64) (local $7 f64) i32.const 1 - local.set $3 + local.set $2 local.get $0 i64.reinterpret_f64 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $2 + local.tee $5 i32.const 31 i32.shr_u - local.get $2 + local.get $5 i32.const 1071284858 i32.lt_u i32.or if - local.get $2 + local.get $5 i32.const -1074790400 i32.ge_u if @@ -1009,7 +1007,7 @@ f64.div return end - local.get $2 + local.get $5 i32.const 1 i32.shl i32.const 2034237440 @@ -1018,19 +1016,19 @@ local.get $0 return end - local.get $2 + local.get $5 i32.const -1076707644 i32.le_u if (result f64) i32.const 0 - local.set $3 + local.set $2 local.get $0 else f64.const 0 end local.set $1 else - local.get $2 + local.get $5 i32.const 2146435072 i32.ge_u if @@ -1038,29 +1036,29 @@ return end end - local.get $3 + local.get $2 if local.get $0 f64.const 1 f64.add i64.reinterpret_f64 - local.tee $5 + local.tee $3 i64.const 32 i64.shr_u i32.wrap_i64 i32.const 614242 i32.add - local.tee $2 + local.tee $5 i32.const 20 i32.shr_u i32.const 1023 i32.sub - local.tee $3 + local.tee $2 i32.const 54 i32.lt_s if (result f64) f64.const 1 - local.get $5 + local.get $3 f64.reinterpret_i64 local.tee $1 local.get $0 @@ -1071,7 +1069,7 @@ f64.const 1 f64.sub f64.sub - local.get $3 + local.get $2 i32.const 2 i32.ge_s select @@ -1080,11 +1078,11 @@ else f64.const 0 end - local.set $6 - local.get $5 + local.set $4 + local.get $3 i64.const 4294967295 i64.and - local.get $2 + local.get $5 i32.const 1048575 i32.and i32.const 1072079006 @@ -1103,24 +1101,24 @@ f64.const 2 f64.add f64.div - local.tee $4 - local.get $4 + local.tee $6 + local.get $6 f64.mul - local.tee $7 - local.get $7 + local.tee $0 + local.get $0 f64.mul - local.set $0 - local.get $4 + local.set $7 + local.get $6 local.get $1 f64.const 0.5 f64.mul local.get $1 f64.mul - local.tee $4 - local.get $7 - local.get $0 - local.get $0 + local.tee $6 local.get $0 + local.get $7 + local.get $7 + local.get $7 f64.const 0.14798198605116586 f64.mul f64.const 0.1818357216161805 @@ -1132,9 +1130,9 @@ f64.const 0.6666666666666735 f64.add f64.mul - local.get $0 - local.get $0 - local.get $0 + local.get $7 + local.get $7 + local.get $7 f64.const 0.15313837699209373 f64.mul f64.const 0.22222198432149784 @@ -1146,15 +1144,15 @@ f64.add f64.add f64.mul - local.get $3 + local.get $2 f64.convert_i32_s local.tee $0 f64.const 1.9082149292705877e-10 f64.mul - local.get $6 + local.get $4 f64.add f64.add - local.get $4 + local.get $6 f64.sub local.get $1 f64.add @@ -1165,11 +1163,11 @@ ) (func $~lib/math/NativeMath.log (param $0 f64) (result f64) (local $1 i64) - (local $2 f64) - (local $3 f64) - (local $4 i32) + (local $2 i32) + (local $3 i64) + (local $4 f64) (local $5 f64) - (local $6 i64) + (local $6 f64) (local $7 i32) block $~lib/util/math/log_lut|inlined.0 (result f64) local.get $0 @@ -1186,40 +1184,40 @@ local.tee $0 local.get $0 f64.mul - local.tee $2 + local.tee $4 local.get $0 f64.mul - local.tee $3 + local.tee $5 local.get $0 f64.const -0.24999999999998432 f64.mul f64.const 0.3333333333333352 f64.add - local.get $2 + local.get $4 f64.const 0.19999999999320328 f64.mul f64.add - local.get $3 + local.get $5 local.get $0 f64.const 0.14285715076560868 f64.mul f64.const -0.16666666669929706 f64.add - local.get $2 + local.get $4 f64.const -0.12499997863982555 f64.mul f64.add - local.get $3 + local.get $5 local.get $0 f64.const -0.10000486757818193 f64.mul f64.const 0.11110712032936046 f64.add - local.get $2 + local.get $4 f64.const 0.09181994006195467 f64.mul f64.add - local.get $3 + local.get $5 f64.const -0.08328363062289341 f64.mul f64.add @@ -1234,33 +1232,33 @@ local.get $0 f64.const 134217728 f64.mul - local.tee $2 + local.tee $4 f64.add - local.get $2 + local.get $4 f64.sub - local.tee $2 - local.get $2 + local.tee $4 + local.get $4 f64.mul f64.const -0.5 f64.mul local.tee $5 f64.add - local.tee $3 + local.tee $6 f64.sub local.get $5 f64.add local.get $0 - local.get $2 + local.get $4 f64.sub f64.const -0.5 f64.mul - local.get $2 + local.get $4 local.get $0 f64.add f64.mul f64.add f64.add - local.get $3 + local.get $6 f64.add br $~lib/util/math/log_lut|inlined.0 end @@ -1268,7 +1266,7 @@ i64.const 48 i64.shr_u i32.wrap_i64 - local.tee $4 + local.tee $2 i32.const 16 i32.sub i32.const 32736 @@ -1286,32 +1284,31 @@ br_if $~lib/util/math/log_lut|inlined.0 drop local.get $0 - local.tee $2 local.get $1 i64.const 9218868437227405312 i64.eq br_if $~lib/util/math/log_lut|inlined.0 drop i32.const 1 - local.get $4 + local.get $2 i32.const 32752 i32.and i32.const 32752 i32.eq - local.get $4 + local.get $2 i32.const 32768 i32.and select if - local.get $2 - local.get $2 + local.get $0 + local.get $0 f64.sub local.tee $0 local.get $0 f64.div br $~lib/util/math/log_lut|inlined.0 end - local.get $2 + local.get $0 f64.const 4503599627370496 f64.mul i64.reinterpret_f64 @@ -1322,7 +1319,7 @@ local.get $1 i64.const 4604367669032910848 i64.sub - local.tee $6 + local.tee $3 i64.const 45 i64.shr_u i64.const 127 @@ -1330,68 +1327,68 @@ i32.wrap_i64 i32.const 4 i32.shl - local.tee $4 + local.tee $7 i32.const 1088 i32.add - local.set $7 - local.get $6 + local.set $2 + local.get $3 i64.const 52 i64.shr_s f64.convert_i64_s - local.tee $3 + local.tee $0 f64.const 0.6931471805598903 f64.mul - local.get $7 + local.get $2 f64.load offset=8 f64.add - local.tee $2 + local.tee $4 local.get $1 - local.get $6 + local.get $3 i64.const -4503599627370496 i64.and i64.sub f64.reinterpret_i64 - local.get $4 + local.get $7 i32.const 3136 i32.add - local.tee $4 + local.tee $7 f64.load f64.sub - local.get $4 + local.get $7 f64.load offset=8 f64.sub - local.get $7 + local.get $2 f64.load f64.mul - local.tee $0 + local.tee $5 f64.add - local.set $5 - local.get $2 - local.get $5 + local.set $6 + local.get $4 + local.get $6 f64.sub - local.get $0 + local.get $5 f64.add - local.get $3 + local.get $0 f64.const 5.497923018708371e-14 f64.mul f64.add - local.get $0 - local.get $0 + local.get $5 + local.get $5 f64.mul - local.tee $2 + local.tee $0 f64.const -0.5000000000000001 f64.mul f64.add + local.get $5 local.get $0 - local.get $2 f64.mul - local.get $0 + local.get $5 f64.const -0.2499999999622955 f64.mul f64.const 0.33333333331825593 f64.add - local.get $2 local.get $0 + local.get $5 f64.const -0.16667054827627667 f64.mul f64.const 0.20000304511814496 @@ -1400,46 +1397,44 @@ f64.add f64.mul f64.add - local.get $5 + local.get $6 f64.add end ) (func $std/math/test_acosh (param $0 f64) (param $1 f64) (param $2 f64) (result i32) - (local $3 f64) - (local $4 i64) + (local $3 i64) + (local $4 f64) block $__inlined_func$~lib/math/NativeMath.acosh (result f64) local.get $0 - local.tee $3 + local.get $0 + f64.sub + f64.const 0 + f64.div + local.get $0 i64.reinterpret_f64 - local.tee $4 + local.tee $3 i64.const 4607182418800017408 i64.lt_s - if - local.get $3 - local.get $3 - f64.sub - f64.const 0 - f64.div - br $__inlined_func$~lib/math/NativeMath.acosh - end - local.get $4 + br_if $__inlined_func$~lib/math/NativeMath.acosh + drop + local.get $3 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.tee $4 + local.tee $3 i64.const 1024 i64.lt_u if - local.get $3 + local.get $0 f64.const 1 f64.sub - local.tee $3 - local.get $3 - local.get $3 + local.tee $4 + local.get $4 + local.get $4 f64.mul - local.get $3 - local.get $3 + local.get $4 + local.get $4 f64.add f64.add f64.sqrt @@ -1447,17 +1442,17 @@ call $~lib/math/NativeMath.log1p br $__inlined_func$~lib/math/NativeMath.acosh end - local.get $4 + local.get $3 i64.const 1049 i64.lt_u if - local.get $3 - local.get $3 + local.get $0 + local.get $0 f64.add f64.const 1 - local.get $3 - local.get $3 - local.get $3 + local.get $0 + local.get $0 + local.get $0 f64.mul f64.const 1 f64.sub @@ -1468,7 +1463,7 @@ call $~lib/math/NativeMath.log br $__inlined_func$~lib/math/NativeMath.acosh end - local.get $3 + local.get $0 call $~lib/math/NativeMath.log f64.const 0.6931471805599453 f64.add @@ -1489,23 +1484,23 @@ (func $~lib/math/NativeMathf.log1p (param $0 f32) (result f32) (local $1 f32) (local $2 i32) - (local $3 i32) - (local $4 f32) + (local $3 f32) + (local $4 i32) (local $5 f32) (local $6 f32) i32.const 1 - local.set $3 + local.set $2 local.get $0 i32.reinterpret_f32 - local.tee $2 + local.tee $4 i32.const 31 i32.shr_u - local.get $2 + local.get $4 i32.const 1054086096 i32.lt_u i32.or if - local.get $2 + local.get $4 i32.const -1082130432 i32.ge_u if @@ -1525,7 +1520,7 @@ f32.div return end - local.get $2 + local.get $4 i32.const 1 i32.shl i32.const 1728053248 @@ -1534,19 +1529,19 @@ local.get $0 return end - local.get $2 + local.get $4 i32.const -1097468391 i32.le_u if (result f32) i32.const 0 - local.set $3 + local.set $2 local.get $0 else f32.const 0 end local.set $1 else - local.get $2 + local.get $4 i32.const 2139095040 i32.ge_u if @@ -1554,7 +1549,7 @@ return end end - local.get $3 + local.get $2 if local.get $0 f32.const 1 @@ -1563,12 +1558,12 @@ i32.reinterpret_f32 i32.const 4913933 i32.add - local.tee $2 + local.tee $4 i32.const 23 i32.shr_u i32.const 127 i32.sub - local.tee $3 + local.tee $2 i32.const 25 i32.lt_s if (result f32) @@ -1582,7 +1577,7 @@ f32.const 1 f32.sub f32.sub - local.get $3 + local.get $2 i32.const 2 i32.ge_s select @@ -1591,8 +1586,8 @@ else f32.const 0 end - local.set $6 - local.get $2 + local.set $3 + local.get $4 i32.const 8388607 i32.and i32.const 1060439283 @@ -1607,29 +1602,29 @@ f32.const 2 f32.add f32.div - local.tee $0 - local.get $0 + local.tee $5 + local.get $5 f32.mul - local.tee $4 - local.get $4 + local.tee $6 + local.get $6 f32.mul - local.set $5 - local.get $0 + local.set $0 + local.get $5 local.get $1 f32.const 0.5 f32.mul local.get $1 f32.mul - local.tee $0 - local.get $4 - local.get $5 + local.tee $5 + local.get $6 + local.get $0 f32.const 0.2849878668785095 f32.mul f32.const 0.6666666269302368 f32.add f32.mul - local.get $5 - local.get $5 + local.get $0 + local.get $0 f32.const 0.24279078841209412 f32.mul f32.const 0.40000972151756287 @@ -1638,19 +1633,19 @@ f32.add f32.add f32.mul - local.get $3 + local.get $2 f32.convert_i32_s - local.tee $4 + local.tee $0 f32.const 9.05800061445916e-06 f32.mul - local.get $6 + local.get $3 f32.add f32.add - local.get $0 + local.get $5 f32.sub local.get $1 f32.add - local.get $4 + local.get $0 f32.const 0.6931381225585938 f32.mul f32.add @@ -1820,26 +1815,26 @@ call $std/math/check ) (func $~lib/math/NativeMath.asin (param $0 f64) (result f64) - (local $1 f64) - (local $2 i32) - (local $3 f64) - (local $4 i32) + (local $1 i32) + (local $2 f64) + (local $3 i32) + (local $4 f64) local.get $0 i64.reinterpret_f64 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $4 + local.tee $3 i32.const 2147483647 i32.and - local.tee $2 + local.tee $1 i32.const 1072693248 i32.ge_u if local.get $0 i64.reinterpret_f64 i32.wrap_i64 - local.get $2 + local.get $1 i32.const 1072693248 i32.sub i32.or @@ -1859,14 +1854,14 @@ f64.div return end - local.get $2 + local.get $1 i32.const 1071644672 i32.lt_u if - local.get $2 + local.get $1 i32.const 1045430272 i32.lt_u - local.get $2 + local.get $1 i32.const 1048576 i32.ge_u i32.and @@ -1930,15 +1925,15 @@ f64.const 0.5 f64.mul f64.sub - local.tee $0 + local.tee $4 f64.sqrt - local.set $1 - local.get $0 - local.get $0 - local.get $0 - local.get $0 - local.get $0 - local.get $0 + local.set $0 + local.get $4 + local.get $4 + local.get $4 + local.get $4 + local.get $4 + local.get $4 f64.const 3.479331075960212e-05 f64.mul f64.const 7.915349942898145e-04 @@ -1956,10 +1951,10 @@ f64.const 0.16666666666666666 f64.add f64.mul - local.get $0 - local.get $0 - local.get $0 - local.get $0 + local.get $4 + local.get $4 + local.get $4 + local.get $4 f64.const 0.07703815055590194 f64.mul f64.const -0.6882839716054533 @@ -1974,15 +1969,15 @@ f64.const 1 f64.add f64.div - local.set $3 - local.get $2 + local.set $2 + local.get $1 i32.const 1072640819 i32.ge_u if (result f64) f64.const 1.5707963267948966 - local.get $1 - local.get $1 - local.get $3 + local.get $0 + local.get $0 + local.get $2 f64.mul f64.add f64.const 2 @@ -1992,24 +1987,24 @@ f64.sub else f64.const 0.7853981633974483 - local.get $1 - local.get $1 + local.get $0 + local.get $0 f64.add - local.get $3 + local.get $2 f64.mul f64.const 6.123233995736766e-17 + local.get $4 local.get $0 - local.get $1 i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $0 - local.get $0 + local.tee $2 + local.get $2 f64.mul f64.sub - local.get $1 local.get $0 + local.get $2 f64.add f64.div f64.const 2 @@ -2017,15 +2012,15 @@ f64.sub f64.sub f64.const 0.7853981633974483 - local.get $0 - local.get $0 + local.get $2 + local.get $2 f64.add f64.sub f64.sub f64.sub end local.set $0 - local.get $4 + local.get $3 i32.const 31 i32.shr_u if @@ -2146,61 +2141,61 @@ f32.copysign ) (func $std/math/test_asinh (param $0 f64) (param $1 f64) (param $2 f64) (result i32) - (local $3 f64) + (local $3 i64) (local $4 i64) - (local $5 i64) + (local $5 f64) local.get $0 i64.reinterpret_f64 - local.tee $5 + local.tee $4 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.set $4 - local.get $5 + local.set $3 + local.get $4 i64.const 9223372036854775807 i64.and f64.reinterpret_i64 - local.set $3 - local.get $4 + local.set $5 + local.get $3 i64.const 1049 i64.ge_u if (result f64) - local.get $3 + local.get $5 call $~lib/math/NativeMath.log f64.const 0.6931471805599453 f64.add else - local.get $4 + local.get $3 i64.const 1024 i64.ge_u if (result f64) - local.get $3 - local.get $3 + local.get $5 + local.get $5 f64.add f64.const 1 - local.get $3 - local.get $3 + local.get $5 + local.get $5 f64.mul f64.const 1 f64.add f64.sqrt - local.get $3 + local.get $5 f64.add f64.div f64.add call $~lib/math/NativeMath.log else - local.get $4 + local.get $3 i64.const 997 i64.ge_u if (result f64) - local.get $3 - local.get $3 - local.get $3 + local.get $5 + local.get $5 + local.get $5 f64.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 f64.const 1 f64.add f64.sqrt @@ -2210,7 +2205,7 @@ f64.add call $~lib/math/NativeMath.log1p else - local.get $3 + local.get $5 end end end @@ -2230,54 +2225,54 @@ end ) (func $std/math/test_asinhf (param $0 f32) (param $1 f32) (param $2 f32) (result i32) - (local $3 f32) - (local $4 i32) + (local $3 i32) + (local $4 f32) local.get $0 i32.reinterpret_f32 i32.const 2147483647 i32.and - local.tee $4 + local.tee $3 f32.reinterpret_i32 - local.set $3 - local.get $4 + local.set $4 + local.get $3 i32.const 1166016512 i32.ge_u if (result f32) - local.get $3 + local.get $4 call $~lib/math/NativeMathf.log f32.const 0.6931471824645996 f32.add else - local.get $4 + local.get $3 i32.const 1073741824 i32.ge_u if (result f32) - local.get $3 - local.get $3 + local.get $4 + local.get $4 f32.add f32.const 1 - local.get $3 - local.get $3 + local.get $4 + local.get $4 f32.mul f32.const 1 f32.add f32.sqrt - local.get $3 + local.get $4 f32.add f32.div f32.add call $~lib/math/NativeMathf.log else - local.get $4 + local.get $3 i32.const 964689920 i32.ge_u if (result f32) - local.get $3 - local.get $3 - local.get $3 + local.get $4 + local.get $4 + local.get $4 f32.mul - local.tee $3 - local.get $3 + local.tee $4 + local.get $4 f32.const 1 f32.add f32.sqrt @@ -2287,7 +2282,7 @@ f32.add call $~lib/math/NativeMathf.log1p else - local.get $3 + local.get $4 end end end @@ -2299,9 +2294,9 @@ ) (func $~lib/math/NativeMath.atan (param $0 f64) (result f64) (local $1 f64) - (local $2 f64) + (local $2 i32) (local $3 i32) - (local $4 i32) + (local $4 f64) (local $5 f64) local.get $0 local.set $1 @@ -2312,7 +2307,7 @@ i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $3 + local.tee $2 i32.const 1141899264 i32.ge_u if @@ -2328,11 +2323,11 @@ f64.copysign return end - local.get $3 + local.get $2 i32.const 1071382528 i32.lt_u if - local.get $3 + local.get $2 i32.const 1044381696 i32.lt_u if @@ -2340,16 +2335,16 @@ return end i32.const -1 - local.set $4 + local.set $3 else local.get $0 f64.abs local.set $0 - local.get $3 + local.get $2 i32.const 1072889856 i32.lt_u if (result f64) - local.get $3 + local.get $2 i32.const 1072037888 i32.lt_u if (result f64) @@ -2364,7 +2359,7 @@ f64.div else i32.const 1 - local.set $4 + local.set $3 local.get $0 f64.const 1 f64.sub @@ -2374,12 +2369,12 @@ f64.div end else - local.get $3 + local.get $2 i32.const 1073971200 i32.lt_u if (result f64) i32.const 2 - local.set $4 + local.set $3 local.get $0 f64.const 1.5 f64.sub @@ -2391,7 +2386,7 @@ f64.div else i32.const 3 - local.set $4 + local.set $3 f64.const -1 local.get $0 f64.div @@ -2402,17 +2397,17 @@ local.get $0 local.get $0 f64.mul - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 f64.mul - local.set $2 + local.set $5 local.get $0 + local.get $4 + local.get $5 + local.get $5 + local.get $5 + local.get $5 local.get $5 - local.get $2 - local.get $2 - local.get $2 - local.get $2 - local.get $2 f64.const 0.016285820115365782 f64.mul f64.const 0.049768779946159324 @@ -2430,11 +2425,11 @@ f64.const 0.3333333333333293 f64.add f64.mul - local.get $2 - local.get $2 - local.get $2 - local.get $2 - local.get $2 + local.get $5 + local.get $5 + local.get $5 + local.get $5 + local.get $5 f64.const -0.036531572744216916 f64.mul f64.const -0.058335701337905735 @@ -2451,13 +2446,13 @@ f64.mul f64.add f64.mul - local.set $2 - local.get $4 + local.set $4 + local.get $3 i32.const 0 i32.lt_s if local.get $0 - local.get $2 + local.get $4 f64.sub return end @@ -2467,11 +2462,11 @@ block $case2|0 block $case1|0 block $case0|0 - local.get $4 + local.get $3 br_table $case0|0 $case1|0 $case2|0 $case3|0 $case4|0 end f64.const 0.4636476090008061 - local.get $2 + local.get $4 f64.const 2.2698777452961687e-17 f64.sub local.get $0 @@ -2481,7 +2476,7 @@ br $break|0 end f64.const 0.7853981633974483 - local.get $2 + local.get $4 f64.const 3.061616997868383e-17 f64.sub local.get $0 @@ -2491,7 +2486,7 @@ br $break|0 end f64.const 0.982793723247329 - local.get $2 + local.get $4 f64.const 1.3903311031230998e-17 f64.sub local.get $0 @@ -2501,7 +2496,7 @@ br $break|0 end f64.const 1.5707963267948966 - local.get $2 + local.get $4 f64.const 6.123233995736766e-17 f64.sub local.get $0 @@ -2518,9 +2513,9 @@ ) (func $~lib/math/NativeMathf.atan (param $0 f32) (result f32) (local $1 f32) - (local $2 f32) + (local $2 i32) (local $3 i32) - (local $4 i32) + (local $4 f32) (local $5 f32) local.get $0 local.set $1 @@ -2528,7 +2523,7 @@ i32.reinterpret_f32 i32.const 2147483647 i32.and - local.tee $3 + local.tee $2 i32.const 1283457024 i32.ge_u if @@ -2544,11 +2539,11 @@ f32.copysign return end - local.get $3 + local.get $2 i32.const 1054867456 i32.lt_u if - local.get $3 + local.get $2 i32.const 964689920 i32.lt_u if @@ -2556,16 +2551,16 @@ return end i32.const -1 - local.set $4 + local.set $3 else local.get $0 f32.abs local.set $0 - local.get $3 + local.get $2 i32.const 1066926080 i32.lt_u if (result f32) - local.get $3 + local.get $2 i32.const 1060110336 i32.lt_u if (result f32) @@ -2580,7 +2575,7 @@ f32.div else i32.const 1 - local.set $4 + local.set $3 local.get $0 f32.const 1 f32.sub @@ -2590,12 +2585,12 @@ f32.div end else - local.get $3 + local.get $2 i32.const 1075576832 i32.lt_u if (result f32) i32.const 2 - local.set $4 + local.set $3 local.get $0 f32.const 1.5 f32.sub @@ -2607,7 +2602,7 @@ f32.div else i32.const 3 - local.set $4 + local.set $3 f32.const -1 local.get $0 f32.div @@ -2618,14 +2613,14 @@ local.get $0 local.get $0 f32.mul - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 f32.mul - local.set $2 + local.set $5 local.get $0 + local.get $4 + local.get $5 local.get $5 - local.get $2 - local.get $2 f32.const 0.06168760731816292 f32.mul f32.const 0.14253635704517365 @@ -2634,8 +2629,8 @@ f32.const 0.333333283662796 f32.add f32.mul - local.get $2 - local.get $2 + local.get $5 + local.get $5 f32.const -0.106480173766613 f32.mul f32.const -0.19999158382415771 @@ -2643,13 +2638,13 @@ f32.mul f32.add f32.mul - local.set $2 - local.get $4 + local.set $4 + local.get $3 i32.const 0 i32.lt_s if local.get $0 - local.get $2 + local.get $4 f32.sub return end @@ -2659,11 +2654,11 @@ block $case2|0 block $case1|0 block $case0|0 - local.get $4 + local.get $3 br_table $case0|0 $case1|0 $case2|0 $case3|0 $case4|0 end f32.const 0.46364760398864746 - local.get $2 + local.get $4 f32.const 5.01215824399992e-09 f32.sub local.get $0 @@ -2673,7 +2668,7 @@ br $break|0 end f32.const 0.7853981256484985 - local.get $2 + local.get $4 f32.const 3.774894707930798e-08 f32.sub local.get $0 @@ -2683,7 +2678,7 @@ br $break|0 end f32.const 0.9827936887741089 - local.get $2 + local.get $4 f32.const 3.447321716976148e-08 f32.sub local.get $0 @@ -2693,7 +2688,7 @@ br $break|0 end f32.const 1.570796251296997 - local.get $2 + local.get $4 f32.const 7.549789415861596e-08 f32.sub local.get $0 @@ -2828,9 +2823,9 @@ (func $std/math/test_atan2 (param $0 f64) (param $1 f64) (param $2 f64) (param $3 f64) (result i32) (local $4 f64) (local $5 i32) - (local $6 i32) + (local $6 i64) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) (local $10 i32) block $__inlined_func$~lib/math/NativeMath.atan2 @@ -2851,24 +2846,25 @@ end local.get $4 i64.reinterpret_f64 - local.tee $8 + local.tee $6 i64.const 32 i64.shr_u i32.wrap_i64 - local.set $9 - local.get $8 + local.set $7 + local.get $6 i32.wrap_i64 + local.set $9 local.get $1 i64.reinterpret_f64 - local.tee $8 + local.tee $6 i64.const 32 i64.shr_u i32.wrap_i64 - local.set $5 - local.get $8 + local.set $10 + local.get $6 i32.wrap_i64 - local.tee $10 - local.get $5 + local.tee $8 + local.get $10 i32.const 1072693248 i32.sub i32.or @@ -2879,31 +2875,32 @@ local.set $4 br $__inlined_func$~lib/math/NativeMath.atan2 end - local.get $5 + local.get $10 i32.const 30 i32.shr_u i32.const 2 i32.and - local.get $9 + local.get $7 i32.const 31 i32.shr_u i32.or - local.set $6 - local.get $5 + local.set $5 + local.get $10 i32.const 2147483647 i32.and - local.set $5 - local.get $9 + local.set $10 + local.get $7 i32.const 2147483647 i32.and local.tee $7 + local.get $9 i32.or i32.eqz if block $break|0 block $case3|0 block $case2|0 - local.get $6 + local.get $5 br_table $__inlined_func$~lib/math/NativeMath.atan2 $__inlined_func$~lib/math/NativeMath.atan2 $case2|0 $case3|0 $break|0 end f64.const 3.141592653589793 @@ -2916,12 +2913,12 @@ end end block $folding-inner0 - local.get $5 + local.get $8 local.get $10 i32.or i32.eqz br_if $folding-inner0 - local.get $5 + local.get $10 i32.const 2146435072 i32.eq if @@ -2931,14 +2928,14 @@ if (result f64) f64.const 2.356194490192345 f64.const 0.7853981633974483 - local.get $6 + local.get $5 i32.const 2 i32.and select else f64.const 3.141592653589793 f64.const 0 - local.get $6 + local.get $5 i32.const 2 i32.and select @@ -2946,7 +2943,7 @@ local.tee $4 f64.neg local.get $4 - local.get $6 + local.get $5 i32.const 1 i32.and select @@ -2957,19 +2954,19 @@ i32.const 2146435072 i32.eq local.get $7 - local.get $5 + local.get $10 i32.const 67108864 i32.add i32.gt_u i32.or br_if $folding-inner0 - local.get $5 + local.get $10 local.get $7 i32.const 67108864 i32.add i32.gt_u i32.const 0 - local.get $6 + local.get $5 i32.const 2 i32.and select @@ -2988,7 +2985,7 @@ block $case2|1 block $case1|1 block $case0|1 - local.get $6 + local.get $5 br_table $case0|1 $case1|1 $case2|1 $case3|1 $break|1 end br $__inlined_func$~lib/math/NativeMath.atan2 @@ -3018,7 +3015,7 @@ end f64.const -1.5707963267948966 f64.const 1.5707963267948966 - local.get $6 + local.get $5 i32.const 1 i32.and select @@ -3217,19 +3214,19 @@ select ) (func $~lib/math/NativeMath.cbrt (param $0 f64) (result f64) - (local $1 f64) - (local $2 i32) - (local $3 f64) - (local $4 i64) + (local $1 i32) + (local $2 f64) + (local $3 i64) + (local $4 f64) local.get $0 i64.reinterpret_f64 - local.tee $4 + local.tee $3 i64.const 32 i64.shr_u i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $2 + local.tee $1 i32.const 2146435072 i32.ge_u if @@ -3238,7 +3235,7 @@ f64.add return end - local.get $2 + local.get $1 i32.const 1048576 i32.lt_u if (result i32) @@ -3246,52 +3243,52 @@ f64.const 18014398509481984 f64.mul i64.reinterpret_f64 - local.tee $4 + local.tee $3 i64.const 32 i64.shr_u i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $2 + local.tee $1 i32.eqz if local.get $0 return end - local.get $2 + local.get $1 i32.const 3 i32.div_u i32.const 696219795 i32.add else - local.get $2 + local.get $1 i32.const 3 i32.div_u i32.const 715094163 i32.add end - local.set $2 - local.get $4 + local.set $1 + local.get $3 i64.const -9223372036854775808 i64.and - local.get $2 + local.get $1 i64.extend_i32_u i64.const 32 i64.shl i64.or f64.reinterpret_i64 - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 f64.mul - local.get $3 + local.get $2 local.get $0 f64.div f64.mul - local.set $1 + local.set $4 local.get $0 - local.get $3 - local.get $1 - local.get $1 + local.get $2 + local.get $4 + local.get $4 f64.const 1.6214297201053545 f64.mul f64.const -1.8849797954337717 @@ -3299,12 +3296,12 @@ f64.mul f64.const 1.87595182427177 f64.add - local.get $1 - local.get $1 + local.get $4 + local.get $4 f64.mul - local.get $1 + local.get $4 f64.mul - local.get $1 + local.get $4 f64.const 0.14599619288661245 f64.mul f64.const -0.758397934778766 @@ -3318,20 +3315,20 @@ i64.const -1073741824 i64.and f64.reinterpret_i64 - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 f64.mul f64.div - local.set $0 - local.get $1 - local.get $1 + local.set $2 + local.get $0 + local.get $0 + local.get $2 local.get $0 - local.get $1 f64.sub - local.get $1 - local.get $1 - f64.add local.get $0 + local.get $0 + f64.add + local.get $2 f64.add f64.div f64.mul @@ -3339,10 +3336,10 @@ ) (func $std/math/test_cbrtf (param $0 f32) (param $1 f32) (param $2 f32) (result i32) (local $3 f64) - (local $4 f64) + (local $4 i32) (local $5 i32) (local $6 f64) - (local $7 i32) + (local $7 f64) (local $8 f64) block $__inlined_func$~lib/math/NativeMathf.cbrt (result f32) local.get $0 @@ -3350,20 +3347,20 @@ f32.add local.get $0 i32.reinterpret_f32 - local.tee $7 + local.tee $5 i32.const 2147483647 i32.and - local.tee $5 + local.tee $4 i32.const 2139095040 i32.ge_u br_if $__inlined_func$~lib/math/NativeMathf.cbrt drop - local.get $5 + local.get $4 i32.const 8388608 i32.lt_u if (result i32) local.get $0 - local.get $5 + local.get $4 i32.eqz br_if $__inlined_func$~lib/math/NativeMathf.cbrt drop @@ -3371,7 +3368,7 @@ f32.const 16777216 f32.mul i32.reinterpret_f32 - local.tee $7 + local.tee $5 i32.const 2147483647 i32.and i32.const 3 @@ -3379,13 +3376,13 @@ i32.const 642849266 i32.add else - local.get $5 + local.get $4 i32.const 3 i32.div_u i32.const 709958130 i32.add end - local.get $7 + local.get $5 i32.const -2147483648 i32.and i32.or @@ -3396,38 +3393,38 @@ f64.mul local.get $3 f64.mul - local.set $4 + local.set $7 local.get $3 local.get $0 f64.promote_f32 - local.tee $6 - local.get $6 + local.tee $3 + local.get $3 f64.add - local.tee $8 - local.get $4 + local.tee $6 + local.get $7 f64.add f64.mul - local.get $6 - local.get $4 + local.get $3 + local.get $7 f64.add - local.get $4 + local.get $7 f64.add f64.div - local.tee $3 - local.get $3 + local.tee $7 + local.get $7 f64.mul - local.get $3 + local.get $7 f64.mul - local.set $4 - local.get $3 + local.set $8 + local.get $7 + local.get $6 local.get $8 - local.get $4 f64.add f64.mul - local.get $6 - local.get $4 + local.get $3 + local.get $8 f64.add - local.get $4 + local.get $8 f64.add f64.div f32.demote_f64 @@ -3440,15 +3437,15 @@ (local $1 i64) (local $2 i64) (local $3 i64) - (local $4 i64) - (local $5 i64) + (local $4 i32) + (local $5 f64) (local $6 i64) - (local $7 i32) + (local $7 i64) (local $8 i64) (local $9 i64) (local $10 i64) (local $11 i64) - (local $12 f64) + (local $12 i64) local.get $0 i64.const 9223372036854775807 i64.and @@ -3456,11 +3453,11 @@ i64.shr_u i64.const 1045 i64.sub - local.tee $3 + local.tee $2 i64.const 63 i64.and - local.set $4 - local.get $3 + local.set $6 + local.get $2 i64.const 6 i64.shr_s i32.wrap_i64 @@ -3468,44 +3465,44 @@ i32.shl i32.const 5440 i32.add - local.tee $7 + local.tee $4 i64.load - local.set $5 - local.get $7 - i64.load offset=8 local.set $3 - local.get $7 + local.get $4 + i64.load offset=8 + local.set $2 + local.get $4 i64.load offset=16 local.set $1 - local.get $4 + local.get $6 i64.const 0 i64.ne if - local.get $5 - local.get $4 - i64.shl local.get $3 + local.get $6 + i64.shl + local.get $2 i64.const 64 - local.get $4 + local.get $6 i64.sub - local.tee $2 + local.tee $7 i64.shr_u i64.or - local.set $5 - local.get $3 - local.get $4 + local.set $3 + local.get $2 + local.get $6 i64.shl local.get $1 - local.get $2 + local.get $7 i64.shr_u i64.or - local.set $3 + local.set $2 local.get $1 - local.get $4 + local.get $6 i64.shl - local.get $7 + local.get $4 i64.load offset=24 - local.get $2 + local.get $7 i64.shr_u i64.or local.set $1 @@ -3515,42 +3512,42 @@ i64.and i64.const 4503599627370496 i64.or - local.tee $4 + local.tee $6 i64.const 4294967295 i64.and - local.tee $2 - local.get $3 + local.tee $7 + local.get $2 i64.const 32 i64.shr_u local.tee $8 i64.mul local.get $2 - local.get $3 i64.const 4294967295 i64.and local.tee $2 + local.get $7 i64.mul - local.tee $6 + local.tee $7 i64.const 32 i64.shr_u i64.add - local.set $3 + local.set $9 local.get $2 - local.get $4 + local.get $6 i64.const 32 i64.shr_u - local.tee $9 local.tee $10 + local.tee $11 i64.mul - local.get $3 + local.get $9 i64.const 4294967295 i64.and i64.add local.set $2 local.get $8 - local.get $10 + local.get $11 i64.mul - local.get $3 + local.get $9 i64.const 32 i64.shr_u i64.add @@ -3562,10 +3559,10 @@ local.get $1 i64.const 32 i64.shr_u - local.get $9 + local.get $10 i64.mul - local.tee $3 - local.get $6 + local.tee $1 + local.get $7 i64.const 4294967295 i64.and local.get $2 @@ -3573,53 +3570,53 @@ i64.shl i64.add i64.add - local.tee $1 - local.get $3 + local.tee $2 + local.get $1 i64.lt_u i64.extend_i32_u global.get $~lib/math/res128_hi - local.get $4 - local.get $5 + local.get $3 + local.get $6 i64.mul i64.add i64.add - local.tee $8 + local.tee $1 i64.const 2 i64.shl - local.get $1 + local.get $2 i64.const 62 i64.shr_u i64.or - local.tee $5 + local.tee $3 i64.const 63 i64.shr_s - local.tee $4 + local.tee $6 i64.const 1 i64.shr_s - local.get $5 + local.get $3 i64.xor - local.tee $2 + local.tee $7 i64.clz - local.set $3 - local.get $2 - local.get $3 + local.set $8 + local.get $7 + local.get $8 i64.shl - local.get $4 - local.get $1 + local.get $6 + local.get $2 i64.const 2 i64.shl i64.xor - local.tee $6 + local.tee $7 i64.const 64 - local.get $3 + local.get $8 i64.sub i64.shr_u i64.or - local.tee $1 + local.tee $9 i64.const 4294967295 i64.and local.set $2 - local.get $1 + local.get $9 i64.const 32 i64.shr_u local.tee $10 @@ -3631,59 +3628,59 @@ local.get $2 i64.const 560513588 i64.mul - local.tee $9 + local.tee $11 i64.const 32 i64.shr_u i64.add - local.tee $11 + local.tee $2 i64.const 4294967295 i64.and i64.add - local.set $2 + local.set $12 local.get $10 i64.const 3373259426 i64.mul - local.get $11 + local.get $2 i64.const 32 i64.shr_u i64.add - local.get $2 + local.get $12 i64.const 32 i64.shr_u i64.add global.set $~lib/math/res128_hi - local.get $9 + local.get $11 i64.const 4294967295 i64.and - local.get $2 + local.get $12 i64.const 32 i64.shl i64.add local.tee $2 - local.get $1 + local.get $9 f64.convert_i64_u f64.const 3.753184150245214e-04 f64.mul - local.get $6 - local.get $3 + local.get $7 + local.get $8 i64.shl f64.convert_i64_u f64.const 3.834951969714103e-04 f64.mul f64.add i64.trunc_f64_u - local.tee $1 + local.tee $7 i64.lt_u i64.extend_i32_u global.get $~lib/math/res128_hi - local.tee $6 + local.tee $9 i64.const 11 i64.shr_u i64.add f64.convert_i64_u global.set $~lib/math/rempio2_y0 - local.get $1 - local.get $6 + local.get $7 + local.get $9 i64.const 53 i64.shl local.get $2 @@ -3697,28 +3694,28 @@ global.set $~lib/math/rempio2_y1 global.get $~lib/math/rempio2_y0 i64.const 4372995238176751616 - local.get $3 + local.get $8 i64.const 52 i64.shl i64.sub local.get $0 - local.get $5 + local.get $3 i64.xor i64.const -9223372036854775808 i64.and i64.or f64.reinterpret_i64 - local.tee $12 + local.tee $5 f64.mul global.set $~lib/math/rempio2_y0 global.get $~lib/math/rempio2_y1 - local.get $12 + local.get $5 f64.mul global.set $~lib/math/rempio2_y1 - local.get $8 + local.get $1 i64.const 62 i64.shr_s - local.get $4 + local.get $6 i64.sub i32.wrap_i64 ) @@ -3726,10 +3723,10 @@ (local $1 f64) (local $2 i64) (local $3 f64) - (local $4 f64) + (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) + (local $7 f64) (local $8 f64) (local $9 f64) local.get $0 @@ -3738,18 +3735,18 @@ i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $5 + local.tee $4 i32.const 31 i32.shr_u local.set $6 - local.get $5 + local.get $4 i32.const 2147483647 i32.and - local.tee $5 + local.tee $4 i32.const 1072243195 i32.le_u if - local.get $5 + local.get $4 i32.const 1044816030 i32.lt_u if @@ -3759,26 +3756,26 @@ local.get $0 local.get $0 f64.mul - local.tee $3 - local.get $3 + local.tee $1 + local.get $1 f64.mul - local.set $4 + local.set $3 f64.const 1 - local.get $3 + local.get $1 f64.const 0.5 f64.mul - local.tee $1 + local.tee $7 f64.sub local.tee $8 f64.const 1 local.get $8 f64.sub - local.get $1 + local.get $7 f64.sub - local.get $3 - local.get $3 - local.get $3 - local.get $3 + local.get $1 + local.get $1 + local.get $1 + local.get $1 f64.const 2.480158728947673e-05 f64.mul f64.const -0.001388888888887411 @@ -3787,11 +3784,11 @@ f64.const 0.0416666666666666 f64.add f64.mul - local.get $4 - local.get $4 - f64.mul local.get $3 local.get $3 + f64.mul + local.get $1 + local.get $1 f64.const -1.1359647557788195e-11 f64.mul f64.const 2.087572321298175e-09 @@ -3810,7 +3807,7 @@ f64.add return end - local.get $5 + local.get $4 i32.const 2146435072 i32.ge_u if @@ -3826,26 +3823,26 @@ i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $7 + local.tee $5 i32.const 1073928572 i32.lt_u if i32.const 1 - local.set $5 + local.set $4 local.get $6 if (result f64) local.get $0 f64.const 1.5707963267341256 f64.add - local.set $3 + local.set $0 i32.const -1 - local.set $5 - local.get $7 + local.set $4 + local.get $5 i32.const 1073291771 i32.ne if (result f64) - local.get $3 - local.get $3 + local.get $0 + local.get $0 f64.const 6.077100506506192e-11 f64.add local.tee $0 @@ -3853,14 +3850,14 @@ f64.const 6.077100506506192e-11 f64.add else - local.get $3 + local.get $0 f64.const 6.077100506303966e-11 f64.add - local.tee $3 + local.tee $1 f64.const 2.0222662487959506e-21 f64.add local.set $0 - local.get $3 + local.get $1 local.get $0 f64.sub f64.const 2.0222662487959506e-21 @@ -3870,13 +3867,13 @@ local.get $0 f64.const 1.5707963267341256 f64.sub - local.set $3 - local.get $7 + local.set $0 + local.get $5 i32.const 1073291771 i32.ne if (result f64) - local.get $3 - local.get $3 + local.get $0 + local.get $0 f64.const 6.077100506506192e-11 f64.sub local.tee $0 @@ -3884,14 +3881,14 @@ f64.const 6.077100506506192e-11 f64.sub else - local.get $3 + local.get $0 f64.const 6.077100506303966e-11 f64.sub - local.tee $3 + local.tee $1 f64.const 2.0222662487959506e-21 f64.sub local.set $0 - local.get $3 + local.get $1 local.get $0 f64.sub f64.const 2.0222662487959506e-21 @@ -3901,28 +3898,28 @@ local.get $0 global.set $~lib/math/rempio2_y0 global.set $~lib/math/rempio2_y1 - local.get $5 + local.get $4 br $~lib/math/rempio2|inlined.0 end - local.get $7 + local.get $5 i32.const 1094263291 i32.lt_u if - local.get $7 + local.get $5 i32.const 20 i32.shr_u - local.tee $6 + local.tee $4 local.get $0 local.get $0 f64.const 0.6366197723675814 f64.mul f64.nearest - local.tee $4 + local.tee $7 f64.const 1.5707963267341256 f64.mul f64.sub local.tee $0 - local.get $4 + local.get $7 f64.const 6.077100506506192e-11 f64.mul local.tee $3 @@ -3940,12 +3937,12 @@ i32.const 16 i32.gt_u if - local.get $4 + local.get $7 f64.const 2.0222662487959506e-21 f64.mul local.get $0 local.get $0 - local.get $4 + local.get $7 f64.const 6.077100506303966e-11 f64.mul local.tee $1 @@ -3956,7 +3953,7 @@ f64.sub f64.sub local.set $3 - local.get $6 + local.get $4 local.get $0 local.get $3 f64.sub @@ -3973,12 +3970,12 @@ i32.const 49 i32.gt_u if (result f64) - local.get $4 + local.get $7 f64.const 8.4784276603689e-32 f64.mul local.get $0 local.get $0 - local.get $4 + local.get $7 f64.const 2.0222662487111665e-21 f64.mul local.tee $1 @@ -4005,41 +4002,41 @@ local.get $3 f64.sub global.set $~lib/math/rempio2_y1 - local.get $4 + local.get $7 i32.trunc_f64_s br $~lib/math/rempio2|inlined.0 end i32.const 0 local.get $2 call $~lib/math/pio2_large_quot - local.tee $5 + local.tee $4 i32.sub - local.get $5 + local.get $4 local.get $6 select end - local.set $6 + local.set $4 global.get $~lib/math/rempio2_y0 - local.set $3 + local.set $1 global.get $~lib/math/rempio2_y1 - local.set $4 - local.get $6 + local.set $3 + local.get $4 i32.const 1 i32.and if (result f64) - local.get $3 - local.get $3 + local.get $1 + local.get $1 f64.mul local.tee $0 - local.get $3 + local.get $1 f64.mul - local.set $1 - local.get $3 + local.set $7 + local.get $1 local.get $0 - local.get $4 + local.get $3 f64.const 0.5 f64.mul - local.get $1 + local.get $7 local.get $0 local.get $0 f64.const 2.7557313707070068e-06 @@ -4064,37 +4061,37 @@ f64.mul f64.sub f64.mul - local.get $4 + local.get $3 f64.sub - local.get $1 + local.get $7 f64.const -0.16666666666666632 f64.mul f64.sub f64.sub else - local.get $3 - local.get $3 + local.get $1 + local.get $1 f64.mul - local.tee $0 - local.get $0 + local.tee $7 + local.get $7 f64.mul - local.set $1 + local.set $8 f64.const 1 - local.get $0 + local.get $7 f64.const 0.5 f64.mul - local.tee $8 - f64.sub local.tee $9 + f64.sub + local.tee $0 f64.const 1 - local.get $9 + local.get $0 f64.sub - local.get $8 + local.get $9 f64.sub - local.get $0 - local.get $0 - local.get $0 - local.get $0 + local.get $7 + local.get $7 + local.get $7 + local.get $7 f64.const 2.480158728947673e-05 f64.mul f64.const -0.001388888888887411 @@ -4103,11 +4100,11 @@ f64.const 0.0416666666666666 f64.add f64.mul - local.get $1 - local.get $1 + local.get $8 + local.get $8 f64.mul - local.get $0 - local.get $0 + local.get $7 + local.get $7 f64.const -1.1359647557788195e-11 f64.mul f64.const 2.087572321298175e-09 @@ -4118,8 +4115,8 @@ f64.mul f64.add f64.mul + local.get $1 local.get $3 - local.get $4 f64.mul f64.sub f64.add @@ -4128,7 +4125,7 @@ local.tee $0 f64.neg local.get $0 - local.get $6 + local.get $4 i32.const 1 i32.add i32.const 2 @@ -4137,29 +4134,29 @@ ) (func $~lib/math/NativeMathf.cos (param $0 f32) (result f32) (local $1 i32) - (local $2 i32) - (local $3 i64) - (local $4 i64) - (local $5 i32) - (local $6 i64) - (local $7 f64) - (local $8 f64) - (local $9 f64) + (local $2 f64) + (local $3 f64) + (local $4 f64) + (local $5 i64) + (local $6 i32) + (local $7 i32) + (local $8 i64) + (local $9 i64) block $folding-inner0 local.get $0 i32.reinterpret_f32 local.tee $1 i32.const 31 i32.shr_u - local.set $5 + local.set $6 local.get $1 i32.const 2147483647 i32.and - local.tee $2 + local.tee $1 i32.const 1061752794 i32.le_u if - local.get $2 + local.get $1 i32.const 964689920 i32.lt_u if @@ -4168,53 +4165,53 @@ end local.get $0 f64.promote_f32 - local.tee $9 - local.get $9 + local.tee $2 + local.get $2 f64.mul - local.tee $8 - local.get $8 + local.tee $3 + local.get $3 f64.mul - local.set $9 + local.set $2 br $folding-inner0 end - local.get $2 + local.get $1 i32.const 1081824209 i32.le_u if - local.get $2 + local.get $1 i32.const 1075235811 i32.gt_u if local.get $0 f64.promote_f32 - local.tee $9 + local.tee $2 f64.const 3.141592653589793 f64.add - local.get $9 + local.get $2 f64.const 3.141592653589793 f64.sub - local.get $5 + local.get $6 select - local.tee $9 - local.get $9 + local.tee $2 + local.get $2 f64.mul - local.tee $8 - local.get $8 + local.tee $2 + local.get $2 f64.mul - local.set $9 - local.get $8 + local.set $3 + local.get $2 f64.const -0.499999997251031 f64.mul f64.const 1 f64.add - local.get $9 + local.get $3 f64.const 0.04166662332373906 f64.mul f64.add - local.get $9 - local.get $8 + local.get $3 + local.get $2 f64.mul - local.get $8 + local.get $2 f64.const 2.439044879627741e-05 f64.mul f64.const -0.001388676377460993 @@ -4225,46 +4222,46 @@ f32.neg return else - local.get $5 + local.get $6 if (result f64) local.get $0 f64.promote_f32 f64.const 1.5707963267948966 f64.add - local.tee $8 - local.get $8 + local.tee $3 + local.get $3 f64.mul - local.tee $7 - local.get $8 + local.tee $4 + local.get $3 f64.mul else f64.const 1.5707963267948966 local.get $0 f64.promote_f32 f64.sub - local.tee $8 - local.get $8 + local.tee $3 + local.get $3 f64.mul - local.tee $7 - local.get $8 + local.tee $4 + local.get $3 f64.mul end - local.set $9 - local.get $8 - local.get $9 - local.get $7 + local.set $2 + local.get $3 + local.get $2 + local.get $4 f64.const 0.008333329385889463 f64.mul f64.const -0.16666666641626524 f64.add f64.mul f64.add - local.get $9 - local.get $7 - local.get $7 + local.get $2 + local.get $4 + local.get $4 f64.mul f64.mul - local.get $7 + local.get $4 f64.const 2.718311493989822e-06 f64.mul f64.const -1.9839334836096632e-04 @@ -4276,74 +4273,74 @@ end unreachable end - local.get $2 + local.get $1 i32.const 1088565717 i32.le_u if - local.get $2 + local.get $1 i32.const 1085271519 i32.gt_u if local.get $0 f64.promote_f32 - local.tee $9 + local.tee $2 f64.const 6.283185307179586 f64.add - local.get $9 + local.get $2 f64.const 6.283185307179586 f64.sub - local.get $5 + local.get $6 select - local.tee $9 - local.get $9 + local.tee $2 + local.get $2 f64.mul - local.tee $8 - local.get $8 + local.tee $3 + local.get $3 f64.mul - local.set $9 + local.set $2 br $folding-inner0 else - local.get $5 + local.get $6 if (result f64) local.get $0 f32.neg f64.promote_f32 f64.const 4.71238898038469 f64.sub - local.tee $8 - local.get $8 + local.tee $3 + local.get $3 f64.mul - local.tee $7 - local.get $8 + local.tee $4 + local.get $3 f64.mul else local.get $0 f64.promote_f32 f64.const 4.71238898038469 f64.sub - local.tee $8 - local.get $8 + local.tee $3 + local.get $3 f64.mul - local.tee $7 - local.get $8 + local.tee $4 + local.get $3 f64.mul end - local.set $9 - local.get $8 - local.get $9 - local.get $7 + local.set $2 + local.get $3 + local.get $2 + local.get $4 f64.const 0.008333329385889463 f64.mul f64.const -0.16666666641626524 f64.add f64.mul f64.add - local.get $9 - local.get $7 - local.get $7 + local.get $2 + local.get $4 + local.get $4 f64.mul f64.mul - local.get $7 + local.get $4 f64.const 2.718311493989822e-06 f64.mul f64.const -1.9839334836096632e-04 @@ -4355,7 +4352,7 @@ end unreachable end - local.get $2 + local.get $1 i32.const 2139095040 i32.ge_u if @@ -4365,29 +4362,28 @@ return end block $~lib/math/rempio2f|inlined.0 (result i32) - local.get $2 - local.tee $1 + local.get $1 i32.const 1305022427 i32.lt_u if local.get $0 f64.promote_f32 - local.tee $9 + local.tee $2 f64.const 0.6366197723675814 f64.mul f64.nearest - local.set $8 - local.get $9 - local.get $8 + local.set $3 + local.get $2 + local.get $3 f64.const 1.5707963109016418 f64.mul f64.sub - local.get $8 + local.get $3 f64.const 1.5893254773528196e-08 f64.mul f64.sub global.set $~lib/math/rempio2f_y - local.get $8 + local.get $3 i32.trunc_f64_s br $~lib/math/rempio2f|inlined.0 end @@ -4396,11 +4392,11 @@ i32.shr_s i32.const 152 i32.sub - local.tee $2 + local.tee $7 i32.const 63 i32.and i64.extend_i32_s - local.set $6 + local.set $8 f64.const 8.515303950216386e-20 local.get $0 f64.promote_f32 @@ -4411,67 +4407,67 @@ i32.const 8388608 i32.or i64.extend_i32_s - local.tee $4 - local.get $2 + local.tee $9 + local.get $7 i32.const 6 i32.shr_s i32.const 3 i32.shl i32.const 5632 i32.add - local.tee $2 + local.tee $1 i64.load - local.get $6 + local.get $8 i64.shl - local.get $2 + local.get $1 i64.load offset=8 - local.tee $3 + local.tee $5 i64.const 64 - local.get $6 + local.get $8 i64.sub i64.shr_u i64.or i64.mul - local.get $6 + local.get $8 i64.const 32 i64.gt_u if (result i64) - local.get $3 - local.get $6 + local.get $5 + local.get $8 i64.const 32 i64.sub i64.shl - local.get $2 + local.get $1 i64.load offset=16 i64.const 96 - local.get $6 + local.get $8 i64.sub i64.shr_u i64.or else - local.get $3 + local.get $5 i64.const 32 - local.get $6 + local.get $8 i64.sub i64.shr_u end - local.get $4 + local.get $9 i64.mul i64.const 32 i64.shr_u i64.add - local.tee $4 + local.tee $5 i64.const 2 i64.shl - local.tee $6 + local.tee $8 f64.convert_i64_s f64.mul global.set $~lib/math/rempio2f_y i32.const 0 - local.get $4 + local.get $5 i64.const 62 i64.shr_u - local.get $6 + local.get $8 i64.const 63 i64.shr_u i64.add @@ -4479,37 +4475,37 @@ local.tee $1 i32.sub local.get $1 - local.get $5 + local.get $6 select end local.set $1 global.get $~lib/math/rempio2f_y - local.set $9 + local.set $2 local.get $1 i32.const 1 i32.and if (result f32) - local.get $9 - local.get $9 - local.get $9 + local.get $2 + local.get $2 + local.get $2 f64.mul - local.tee $7 - local.get $9 + local.tee $3 + local.get $2 f64.mul - local.tee $8 - local.get $7 + local.tee $2 + local.get $3 f64.const 0.008333329385889463 f64.mul f64.const -0.16666666641626524 f64.add f64.mul f64.add - local.get $8 - local.get $7 - local.get $7 + local.get $2 + local.get $3 + local.get $3 f64.mul f64.mul - local.get $7 + local.get $3 f64.const 2.718311493989822e-06 f64.mul f64.const -1.9839334836096632e-04 @@ -4518,26 +4514,26 @@ f64.add f32.demote_f64 else - local.get $9 - local.get $9 + local.get $2 + local.get $2 f64.mul - local.tee $8 - local.get $8 + local.tee $2 + local.get $2 f64.mul - local.set $9 - local.get $8 + local.set $3 + local.get $2 f64.const -0.499999997251031 f64.mul f64.const 1 f64.add - local.get $9 + local.get $3 f64.const 0.04166662332373906 f64.mul f64.add - local.get $9 - local.get $8 + local.get $3 + local.get $2 f64.mul - local.get $8 + local.get $2 f64.const 2.439044879627741e-05 f64.mul f64.const -0.001388676377460993 @@ -4557,19 +4553,19 @@ select return end - local.get $8 + local.get $3 f64.const -0.499999997251031 f64.mul f64.const 1 f64.add - local.get $9 + local.get $2 f64.const 0.04166662332373906 f64.mul f64.add - local.get $9 - local.get $8 + local.get $2 + local.get $3 f64.mul - local.get $8 + local.get $3 f64.const 2.439044879627741e-05 f64.mul f64.const -0.001388676377460993 @@ -4579,29 +4575,29 @@ f32.demote_f64 ) (func $~lib/math/NativeMath.expm1 (param $0 f64) (result f64) - (local $1 f64) + (local $1 i32) (local $2 f64) (local $3 i32) - (local $4 f64) - (local $5 i32) + (local $4 i32) + (local $5 i64) (local $6 f64) - (local $7 i32) - (local $8 i64) + (local $7 f64) + (local $8 f64) local.get $0 i64.reinterpret_f64 - local.tee $8 + local.tee $5 i64.const 32 i64.shr_u i64.const 2147483647 i64.and i32.wrap_i64 - local.set $5 - local.get $8 + local.set $3 + local.get $5 i64.const 63 i64.shr_u i32.wrap_i64 - local.set $7 - local.get $5 + local.set $4 + local.get $3 i32.const 1078159482 i32.ge_u if @@ -4612,7 +4608,7 @@ local.get $0 return end - local.get $7 + local.get $4 if f64.const -1 return @@ -4627,13 +4623,13 @@ return end end - local.get $5 + local.get $3 i32.const 1071001154 i32.gt_u if local.get $0 i32.const 1 - local.get $7 + local.get $4 i32.const 1 i32.shl i32.sub @@ -4645,30 +4641,30 @@ f64.copysign f64.add i32.trunc_f64_s - local.get $5 + local.get $3 i32.const 1072734898 i32.lt_u select - local.tee $3 - f64.convert_i32_s local.tee $1 + f64.convert_i32_s + local.tee $0 f64.const 0.6931471803691238 f64.mul f64.sub - local.tee $4 - local.get $4 - local.get $1 + local.tee $2 + local.get $2 + local.get $0 f64.const 1.9082149292705877e-10 f64.mul - local.tee $1 + local.tee $2 f64.sub local.tee $0 f64.sub - local.get $1 + local.get $2 f64.sub - local.set $4 + local.set $2 else - local.get $5 + local.get $3 i32.const 1016070144 i32.lt_u if @@ -4680,26 +4676,26 @@ local.get $0 f64.const 0.5 f64.mul - local.tee $2 + local.tee $6 f64.mul - local.tee $1 - local.get $1 + local.tee $7 + local.get $7 f64.mul - local.set $6 + local.set $8 f64.const 3 - local.get $1 + local.get $7 f64.const -0.03333333333333313 f64.mul f64.const 1 f64.add - local.get $6 - local.get $1 + local.get $8 + local.get $7 f64.const -7.93650757867488e-05 f64.mul f64.const 1.5873015872548146e-03 f64.add - local.get $6 - local.get $1 + local.get $8 + local.get $7 f64.const -2.0109921818362437e-07 f64.mul f64.const 4.008217827329362e-06 @@ -4708,51 +4704,51 @@ f64.add f64.mul f64.add - local.tee $6 - local.get $2 + local.tee $8 + local.get $6 f64.mul f64.sub - local.set $2 - local.get $1 + local.set $6 + local.get $7 + local.get $8 local.get $6 - local.get $2 f64.sub f64.const 6 local.get $0 - local.get $2 + local.get $6 f64.mul f64.sub f64.div f64.mul - local.set $2 - local.get $3 + local.set $6 + local.get $1 i32.eqz if local.get $0 local.get $0 - local.get $2 + local.get $6 f64.mul - local.get $1 + local.get $7 f64.sub f64.sub return end local.get $0 + local.get $6 local.get $2 - local.get $4 f64.sub f64.mul - local.get $4 + local.get $2 f64.sub - local.get $1 + local.get $7 f64.sub - local.set $1 - local.get $3 + local.set $2 + local.get $1 i32.const -1 i32.eq if local.get $0 - local.get $1 + local.get $2 f64.sub f64.const 0.5 f64.mul @@ -4760,7 +4756,7 @@ f64.sub return end - local.get $3 + local.get $1 i32.const 1 i32.eq if @@ -4768,7 +4764,7 @@ f64.const -0.25 f64.lt if - local.get $1 + local.get $2 local.get $0 f64.const 0.5 f64.add @@ -4778,7 +4774,7 @@ return end local.get $0 - local.get $1 + local.get $2 f64.sub f64.const 2 f64.mul @@ -4786,24 +4782,24 @@ f64.add return end - local.get $3 + local.get $1 i64.extend_i32_s i64.const 1023 i64.add i64.const 52 i64.shl f64.reinterpret_i64 - local.set $4 - local.get $3 + local.set $6 + local.get $1 i32.const 0 i32.lt_s - local.get $3 + local.get $1 i32.const 56 i32.gt_s i32.or if local.get $0 - local.get $1 + local.get $2 f64.sub f64.const 1 f64.add @@ -4813,9 +4809,9 @@ f64.const 8988465674311579538646525e283 f64.mul local.get $0 - local.get $4 + local.get $6 f64.mul - local.get $3 + local.get $1 i32.const 1024 i32.eq select @@ -4826,43 +4822,42 @@ local.get $0 f64.const 1 i64.const 1023 - local.get $3 + local.get $1 i64.extend_i32_s i64.sub i64.const 52 i64.shl f64.reinterpret_i64 - local.tee $2 + local.tee $7 f64.sub - local.get $1 + local.get $2 f64.sub f64.const 1 - local.get $1 local.get $2 + local.get $7 f64.add f64.sub - local.get $3 + local.get $1 i32.const 20 i32.lt_s select f64.add - local.get $4 + local.get $6 f64.mul ) (func $~lib/math/NativeMath.exp (param $0 f64) (result f64) (local $1 i32) - (local $2 f64) - (local $3 i64) - (local $4 f64) - (local $5 i64) - (local $6 f64) - (local $7 i32) + (local $2 i64) + (local $3 f64) + (local $4 i32) + (local $5 f64) + (local $6 i64) + (local $7 f64) (local $8 f64) block $~lib/util/math/exp_lut|inlined.0 (result f64) local.get $0 - local.tee $2 i64.reinterpret_f64 - local.tee $3 + local.tee $2 i64.const 52 i64.shr_u i64.const 2047 @@ -4887,12 +4882,12 @@ i32.ge_u if f64.const 0 - local.get $3 + local.get $2 i64.const -4503599627370496 i64.eq br_if $~lib/util/math/exp_lut|inlined.0 drop - local.get $2 + local.get $0 f64.const 1 f64.add local.get $1 @@ -4902,7 +4897,7 @@ drop f64.const 0 f64.const inf - local.get $3 + local.get $2 i64.const 63 i64.shr_u i32.wrap_i64 @@ -4912,14 +4907,14 @@ i32.const 0 local.set $1 end - local.get $2 + local.get $0 f64.const 184.6649652337873 f64.mul f64.const 6755399441055744 f64.add - local.tee $0 + local.tee $3 i64.reinterpret_f64 - local.tee $5 + local.tee $2 i64.const 127 i64.and i64.const 1 @@ -4929,15 +4924,15 @@ i32.shl i32.const 5664 i32.add - local.tee $7 + local.tee $4 i64.load offset=8 - local.get $5 + local.get $2 i64.const 45 i64.shl i64.add - local.set $3 - local.get $2 + local.set $6 local.get $0 + local.get $3 f64.const 6755399441055744 f64.sub local.tee $0 @@ -4951,12 +4946,12 @@ local.tee $0 local.get $0 f64.mul - local.set $2 - local.get $7 + local.set $3 + local.get $4 f64.load local.get $0 f64.add - local.get $2 + local.get $3 local.get $0 f64.const 0.16666666666665886 f64.mul @@ -4964,8 +4959,8 @@ f64.add f64.mul f64.add - local.get $2 - local.get $2 + local.get $3 + local.get $3 f64.mul local.get $0 f64.const 0.008333335853059549 @@ -4974,128 +4969,128 @@ f64.add f64.mul f64.add - local.set $0 + local.set $7 local.get $1 i32.eqz if block $~lib/util/math/specialcase|inlined.0 (result f64) - local.get $5 + local.get $2 i64.const 2147483648 i64.and i64.eqz if - local.get $3 + local.get $6 i64.const 4544132024016830464 i64.sub f64.reinterpret_i64 - local.tee $2 - local.get $2 + local.tee $0 local.get $0 + local.get $7 f64.mul f64.add f64.const 5486124068793688683255936e279 f64.mul br $~lib/util/math/specialcase|inlined.0 end - local.get $3 + local.get $6 i64.const 4602678819172646912 i64.add - local.tee $3 + local.tee $2 f64.reinterpret_i64 - local.tee $4 - local.get $4 + local.tee $0 local.get $0 + local.get $7 f64.mul f64.add - local.tee $2 + local.tee $8 f64.abs f64.const 1 f64.lt if (result f64) f64.const 1 - local.get $2 + local.get $8 f64.copysign - local.tee $6 - local.get $2 - f64.add - local.tee $8 - local.get $6 + local.tee $3 local.get $8 + f64.add + local.tee $5 + local.get $3 + local.get $5 f64.sub - local.get $2 + local.get $8 f64.add - local.get $4 - local.get $2 + local.get $0 + local.get $8 f64.sub - local.get $4 local.get $0 + local.get $7 f64.mul f64.add f64.add f64.add - local.get $6 + local.get $3 f64.sub - local.tee $2 + local.tee $0 f64.const 0 f64.eq if (result f64) - local.get $3 + local.get $2 i64.const -9223372036854775808 i64.and f64.reinterpret_i64 else - local.get $2 + local.get $0 end else - local.get $2 + local.get $8 end f64.const 2.2250738585072014e-308 f64.mul end br $~lib/util/math/exp_lut|inlined.0 end - local.get $3 + local.get $6 f64.reinterpret_i64 - local.tee $2 - local.get $2 + local.tee $0 local.get $0 + local.get $7 f64.mul f64.add end ) (func $std/math/test_cosh (param $0 f64) (param $1 f64) (param $2 f64) (result i32) - (local $3 f64) - (local $4 i32) - (local $5 i64) + (local $3 i32) + (local $4 i64) + (local $5 f64) block $__inlined_func$~lib/math/NativeMath.cosh (result f64) local.get $0 i64.reinterpret_f64 i64.const 9223372036854775807 i64.and - local.tee $5 + local.tee $4 f64.reinterpret_i64 - local.set $3 - local.get $5 + local.set $5 + local.get $4 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $4 + local.tee $3 i32.const 1072049730 i32.lt_u if f64.const 1 - local.get $4 + local.get $3 i32.const 1045430272 i32.lt_u br_if $__inlined_func$~lib/math/NativeMath.cosh drop - local.get $3 + local.get $5 call $~lib/math/NativeMath.expm1 - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 f64.mul - local.get $3 - local.get $3 + local.get $5 + local.get $5 f64.add f64.const 2 f64.add @@ -5104,22 +5099,22 @@ f64.add br $__inlined_func$~lib/math/NativeMath.cosh end - local.get $4 + local.get $3 i32.const 1082535490 i32.lt_u if - local.get $3 + local.get $5 call $~lib/math/NativeMath.exp - local.tee $3 + local.tee $5 f64.const 1 - local.get $3 + local.get $5 f64.div f64.add f64.const 0.5 f64.mul br $__inlined_func$~lib/math/NativeMath.cosh end - local.get $3 + local.get $5 f64.const 1416.0996898839683 f64.sub call $~lib/math/NativeMath.exp @@ -5142,40 +5137,40 @@ end ) (func $~lib/math/NativeMathf.expm1 (param $0 f32) (result f32) - (local $1 f32) + (local $1 i32) (local $2 f32) (local $3 i32) (local $4 f32) (local $5 i32) - (local $6 i32) + (local $6 f32) (local $7 f32) local.get $0 i32.reinterpret_f32 - local.tee $6 + local.tee $5 i32.const 2147483647 i32.and - local.set $5 - local.get $6 + local.set $3 + local.get $5 i32.const 31 i32.shr_u - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 1100331076 i32.ge_u if - local.get $5 + local.get $3 i32.const 2139095040 i32.gt_u if local.get $0 return end - local.get $6 + local.get $5 if f32.const -1 return end - local.get $5 + local.get $3 i32.const 1118925335 i32.gt_u if @@ -5185,13 +5180,13 @@ return end end - local.get $5 + local.get $3 i32.const 1051816472 i32.gt_u if local.get $0 i32.const 1 - local.get $6 + local.get $5 i32.const 1 i32.shl i32.sub @@ -5203,30 +5198,30 @@ f32.copysign f32.add i32.trunc_f32_s - local.get $5 + local.get $3 i32.const 1065686418 i32.lt_u select - local.tee $3 - f32.convert_i32_s local.tee $1 + f32.convert_i32_s + local.tee $0 f32.const 0.6931381225585938 f32.mul f32.sub - local.tee $4 - local.get $4 - local.get $1 + local.tee $2 + local.get $2 + local.get $0 f32.const 9.05800061445916e-06 f32.mul - local.tee $1 + local.tee $2 f32.sub local.tee $0 f32.sub - local.get $1 + local.get $2 f32.sub - local.set $4 + local.set $2 else - local.get $5 + local.get $3 i32.const 855638016 i32.lt_u if @@ -5239,10 +5234,10 @@ local.get $0 f32.const 0.5 f32.mul - local.tee $2 + local.tee $6 f32.mul - local.tee $1 - local.get $1 + local.tee $7 + local.get $7 f32.const 1.5807170420885086e-03 f32.mul f32.const -0.03333321213722229 @@ -5250,51 +5245,51 @@ f32.mul f32.const 1 f32.add - local.tee $7 - local.get $2 + local.tee $4 + local.get $6 f32.mul f32.sub - local.set $2 - local.get $1 + local.set $6 local.get $7 - local.get $2 + local.get $4 + local.get $6 f32.sub f32.const 6 local.get $0 - local.get $2 + local.get $6 f32.mul f32.sub f32.div f32.mul - local.set $2 - local.get $3 + local.set $4 + local.get $1 i32.eqz if local.get $0 local.get $0 - local.get $2 + local.get $4 f32.mul - local.get $1 + local.get $7 f32.sub f32.sub return end local.get $0 - local.get $2 local.get $4 + local.get $2 f32.sub f32.mul - local.get $4 + local.get $2 f32.sub - local.get $1 + local.get $7 f32.sub - local.set $1 - local.get $3 + local.set $2 + local.get $1 i32.const -1 i32.eq if local.get $0 - local.get $1 + local.get $2 f32.sub f32.const 0.5 f32.mul @@ -5302,7 +5297,7 @@ f32.sub return end - local.get $3 + local.get $1 i32.const 1 i32.eq if @@ -5310,7 +5305,7 @@ f32.const -0.25 f32.lt if - local.get $1 + local.get $2 local.get $0 f32.const 0.5 f32.add @@ -5320,7 +5315,7 @@ return end local.get $0 - local.get $1 + local.get $2 f32.sub f32.const 2 f32.mul @@ -5328,23 +5323,23 @@ f32.add return end - local.get $3 + local.get $1 i32.const 127 i32.add i32.const 23 i32.shl f32.reinterpret_i32 local.set $4 - local.get $3 + local.get $1 i32.const 0 i32.lt_s - local.get $3 + local.get $1 i32.const 56 i32.gt_s i32.or if local.get $0 - local.get $1 + local.get $2 f32.sub f32.const 1 f32.add @@ -5356,7 +5351,7 @@ local.get $0 local.get $4 f32.mul - local.get $3 + local.get $1 i32.const 128 i32.eq select @@ -5367,21 +5362,21 @@ local.get $0 f32.const 1 i32.const 127 - local.get $3 + local.get $1 i32.sub i32.const 23 i32.shl f32.reinterpret_i32 - local.tee $2 + local.tee $6 f32.sub - local.get $1 + local.get $2 f32.sub f32.const 1 - local.get $1 local.get $2 + local.get $6 f32.add f32.sub - local.get $3 + local.get $1 i32.const 20 i32.lt_s select @@ -5440,14 +5435,14 @@ end f64.const 46.16624130844683 f64.mul - local.tee $1 + local.tee $5 f64.const 6755399441055744 f64.add - local.tee $5 + local.tee $1 i64.reinterpret_f64 local.set $2 - local.get $1 local.get $5 + local.get $1 f64.const 6755399441055744 f64.sub f64.sub @@ -5552,9 +5547,9 @@ (local $4 f64) (local $5 i64) (local $6 f64) - (local $7 f64) - (local $8 i64) - (local $9 i32) + (local $7 i32) + (local $8 f64) + (local $9 i64) (local $10 f64) block $~lib/util/math/exp2_lut|inlined.0 (result f64) local.get $0 @@ -5627,7 +5622,7 @@ f64.add local.tee $0 i64.reinterpret_f64 - local.tee $8 + local.tee $5 i64.const 127 i64.and i64.const 1 @@ -5637,13 +5632,13 @@ i32.shl i32.const 5664 i32.add - local.tee $9 + local.tee $7 i64.load offset=8 - local.get $8 + local.get $5 i64.const 45 i64.shl i64.add - local.set $5 + local.set $9 local.get $4 local.get $0 f64.const 52776558133248 @@ -5653,7 +5648,7 @@ local.get $0 f64.mul local.set $6 - local.get $9 + local.get $7 f64.load local.get $0 f64.const 0.6931471805599453 @@ -5677,22 +5672,22 @@ f64.add f64.mul f64.add - local.set $6 + local.set $10 local.get $3 i32.eqz if block $~lib/util/math/specialcase2|inlined.0 (result f64) - local.get $8 + local.get $5 i64.const 2147483648 i64.and i64.eqz if - local.get $5 + local.get $9 i64.const 4503599627370496 i64.sub f64.reinterpret_i64 local.tee $0 - local.get $6 + local.get $10 f64.mul local.get $0 f64.add @@ -5700,14 +5695,14 @@ f64.mul br $~lib/util/math/specialcase2|inlined.0 end - local.get $5 + local.get $9 i64.const 4602678819172646912 i64.add f64.reinterpret_i64 - local.tee $7 - local.get $6 + local.tee $6 + local.get $10 f64.mul - local.get $7 + local.get $6 f64.add local.tee $0 f64.const 1 @@ -5716,17 +5711,17 @@ local.get $0 f64.const 1 f64.add - local.tee $10 + local.tee $8 f64.const 1 - local.get $10 + local.get $8 f64.sub local.get $0 f64.add - local.get $7 + local.get $6 local.get $0 f64.sub - local.get $7 local.get $6 + local.get $10 f64.mul f64.add f64.add @@ -5741,10 +5736,10 @@ end br $~lib/util/math/exp2_lut|inlined.0 end - local.get $5 + local.get $9 f64.reinterpret_i64 local.tee $0 - local.get $6 + local.get $10 f64.mul local.get $0 f64.add @@ -5772,7 +5767,7 @@ block $~lib/util/math/exp2f_lut|inlined.0 (result f32) local.get $0 f64.promote_f32 - local.set $3 + local.set $7 local.get $0 i32.reinterpret_f32 local.tee $5 @@ -5813,14 +5808,14 @@ br_if $~lib/util/math/exp2f_lut|inlined.0 drop end - local.get $3 + local.get $7 f64.const 211106232532992 f64.add - local.tee $7 + local.tee $3 i64.reinterpret_f64 local.set $4 - local.get $3 local.get $7 + local.get $3 f64.const 211106232532992 f64.sub f64.sub @@ -5865,10 +5860,10 @@ (local $3 i64) (local $4 i64) (local $5 f64) - (local $6 i32) - (local $7 f64) - (local $8 i32) - (local $9 f64) + (local $6 f64) + (local $7 i32) + (local $8 f64) + (local $9 i32) (local $10 f64) (local $11 f64) local.get $1 @@ -5895,7 +5890,7 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $6 + local.tee $7 i32.const 2047 i32.eq if @@ -5911,7 +5906,7 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $8 + local.tee $9 i32.const 2047 i32.eq i32.or @@ -5919,8 +5914,8 @@ local.get $0 return end - local.get $8 - local.get $6 + local.get $9 + local.get $7 i32.sub i32.const 64 i32.gt_s @@ -5931,13 +5926,13 @@ return end f64.const 1 - local.set $7 - local.get $8 + local.set $8 + local.get $9 i32.const 1533 i32.gt_u if (result f64) f64.const 5260135901548373507240989e186 - local.set $7 + local.set $8 local.get $1 f64.const 1.90109156629516e-211 f64.mul @@ -5946,12 +5941,12 @@ f64.const 1.90109156629516e-211 f64.mul else - local.get $6 + local.get $7 i32.const 573 i32.lt_u if (result f64) f64.const 1.90109156629516e-211 - local.set $7 + local.set $8 local.get $1 f64.const 5260135901548373507240989e186 f64.mul @@ -5963,61 +5958,61 @@ local.get $0 end end - local.tee $0 - local.get $0 - local.get $0 + local.tee $5 + local.get $5 + local.get $5 f64.const 134217729 f64.mul - local.tee $11 + local.tee $0 f64.sub - local.get $11 + local.get $0 f64.add - local.tee $10 + local.tee $11 f64.sub - local.set $5 + local.set $6 local.get $1 local.get $1 local.get $1 f64.const 134217729 f64.mul - local.tee $11 + local.tee $0 f64.sub - local.get $11 + local.get $0 f64.add - local.tee $9 + local.tee $10 f64.sub - local.set $11 - local.get $7 - local.get $9 - local.get $9 + local.set $0 + local.get $8 + local.get $10 + local.get $10 f64.mul local.get $1 local.get $1 f64.mul local.tee $1 f64.sub - local.get $9 - local.get $9 + local.get $10 + local.get $10 f64.add - local.get $11 + local.get $0 f64.add - local.get $11 + local.get $0 f64.mul f64.add - local.get $10 - local.get $10 + local.get $11 + local.get $11 f64.mul - local.get $0 - local.get $0 + local.get $5 + local.get $5 f64.mul local.tee $0 f64.sub - local.get $10 - local.get $10 + local.get $11 + local.get $11 f64.add - local.get $5 + local.get $6 f64.add - local.get $5 + local.get $6 f64.mul f64.add f64.add @@ -6136,16 +6131,16 @@ ) (func $~lib/math/NativeMath.log10 (param $0 f64) (result f64) (local $1 i32) - (local $2 f64) - (local $3 f64) + (local $2 i64) + (local $3 i32) (local $4 f64) - (local $5 i64) + (local $5 f64) (local $6 f64) (local $7 f64) - (local $8 i32) + (local $8 f64) local.get $0 i64.reinterpret_f64 - local.tee $5 + local.tee $2 i64.const 32 i64.shr_u i32.wrap_i64 @@ -6157,7 +6152,7 @@ i32.lt_u i32.or if - local.get $5 + local.get $2 i64.const 1 i64.shl i64.eqz @@ -6181,12 +6176,12 @@ return end i32.const -54 - local.set $8 + local.set $3 local.get $0 f64.const 18014398509481984 f64.mul i64.reinterpret_f64 - local.tee $5 + local.tee $2 i64.const 32 i64.shr_u i32.wrap_i64 @@ -6199,7 +6194,7 @@ local.get $0 return else - local.get $5 + local.get $2 i64.const 32 i64.shl i64.eqz @@ -6213,7 +6208,7 @@ end end end - local.get $5 + local.get $2 i64.const 4294967295 i64.and local.get $1 @@ -6236,37 +6231,37 @@ f64.mul local.get $0 f64.mul - local.set $3 + local.set $4 local.get $0 local.get $0 f64.const 2 f64.add f64.div + local.tee $5 + local.get $5 + f64.mul local.tee $6 local.get $6 f64.mul - local.tee $4 - local.get $4 - f64.mul - local.set $2 + local.set $7 local.get $0 local.get $0 - local.get $3 + local.get $4 f64.sub i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $7 + local.tee $0 f64.sub - local.get $3 + local.get $4 f64.sub - local.get $6 - local.get $3 + local.get $5 local.get $4 - local.get $2 - local.get $2 - local.get $2 + local.get $6 + local.get $7 + local.get $7 + local.get $7 f64.const 0.14798198605116586 f64.mul f64.const 0.1818357216161805 @@ -6278,9 +6273,9 @@ f64.const 0.6666666666666735 f64.add f64.mul - local.get $2 - local.get $2 - local.get $2 + local.get $7 + local.get $7 + local.get $7 f64.const 0.15313837699209373 f64.mul f64.const 0.22222198432149784 @@ -6293,45 +6288,45 @@ f64.add f64.mul f64.add - local.set $0 + local.set $4 local.get $1 i32.const 20 i32.shr_u i32.const 1023 i32.sub - local.get $8 + local.get $3 i32.add f64.convert_i32_s - local.tee $2 + local.tee $5 f64.const 0.30102999566361177 f64.mul - local.tee $3 - local.get $7 + local.tee $6 + local.get $0 f64.const 0.4342944818781689 f64.mul - local.tee $6 + local.tee $7 f64.add - local.set $4 - local.get $2 + local.set $8 + local.get $5 f64.const 3.694239077158931e-13 f64.mul + local.get $4 local.get $0 - local.get $7 f64.add f64.const 2.5082946711645275e-11 f64.mul f64.add - local.get $0 + local.get $4 f64.const 0.4342944818781689 f64.mul f64.add - local.get $3 - local.get $4 - f64.sub local.get $6 + local.get $8 + f64.sub + local.get $7 f64.add f64.add - local.get $4 + local.get $8 f64.add ) (func $~lib/math/NativeMathf.log10 (param $0 f32) (result f32) @@ -6339,8 +6334,8 @@ (local $2 f32) (local $3 f32) (local $4 f32) - (local $5 f32) - (local $6 i32) + (local $5 i32) + (local $6 f32) (local $7 f32) local.get $0 i32.reinterpret_f32 @@ -6376,7 +6371,7 @@ return end i32.const -25 - local.set $6 + local.set $5 local.get $0 f32.const 33554432 f32.mul @@ -6410,57 +6405,57 @@ f32.reinterpret_i32 f32.const 1 f32.sub - local.tee $0 - local.get $0 + local.tee $4 + local.get $4 f32.const 2 f32.add f32.div + local.tee $2 + local.get $2 + f32.mul local.tee $3 local.get $3 f32.mul - local.tee $4 - local.get $4 - f32.mul - local.set $2 + local.set $0 local.get $1 i32.const 23 i32.shr_u i32.const 127 i32.sub - local.get $6 + local.get $5 i32.add f32.convert_i32_s - local.tee $7 + local.tee $6 f32.const 7.903415166765626e-07 f32.mul - local.get $0 - local.get $0 - local.get $0 + local.get $4 + local.get $4 + local.get $4 f32.const 0.5 f32.mul - local.get $0 + local.get $4 f32.mul - local.tee $0 + local.tee $7 f32.sub i32.reinterpret_f32 i32.const -4096 i32.and f32.reinterpret_i32 - local.tee $5 + local.tee $4 f32.sub - local.get $0 + local.get $7 f32.sub + local.get $2 + local.get $7 local.get $3 local.get $0 - local.get $4 - local.get $2 f32.const 0.2849878668785095 f32.mul f32.const 0.6666666269302368 f32.add f32.mul - local.get $2 - local.get $2 + local.get $0 + local.get $0 f32.const 0.24279078841209412 f32.mul f32.const 0.40000972151756287 @@ -6471,7 +6466,7 @@ f32.mul f32.add local.tee $0 - local.get $5 + local.get $4 f32.add f32.const -3.168997136526741e-05 f32.mul @@ -6480,26 +6475,26 @@ f32.const 0.434326171875 f32.mul f32.add - local.get $5 + local.get $4 f32.const 0.434326171875 f32.mul f32.add - local.get $7 + local.get $6 f32.const 0.3010292053222656 f32.mul f32.add ) (func $~lib/math/NativeMath.log2 (param $0 f64) (result f64) (local $1 i64) - (local $2 f64) - (local $3 i32) + (local $2 i32) + (local $3 i64) (local $4 f64) (local $5 f64) (local $6 f64) (local $7 f64) - (local $8 i64) - (local $9 i32) - (local $10 f64) + (local $8 f64) + (local $9 f64) + (local $10 i32) block $~lib/util/math/log2_lut|inlined.0 (result f64) local.get $0 i64.reinterpret_f64 @@ -6512,70 +6507,70 @@ local.get $0 f64.const 1 f64.sub - local.tee $0 + local.tee $4 i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $7 + local.tee $5 f64.const 1.4426950407214463 f64.mul - local.set $4 - local.get $0 - local.get $0 + local.set $6 + local.get $4 + local.get $4 f64.mul - local.tee $2 - local.get $2 + local.tee $7 + local.get $7 f64.mul - local.set $5 + local.set $8 + local.get $6 + local.get $7 local.get $4 - local.get $2 - local.get $0 f64.const 0.48089834696298744 f64.mul f64.const -0.7213475204444817 f64.add f64.mul - local.tee $6 + local.tee $9 f64.add - local.tee $10 - local.get $0 - local.get $7 + local.tee $0 + local.get $4 + local.get $5 f64.sub f64.const 1.4426950407214463 f64.mul - local.get $0 + local.get $4 f64.const 1.6751713164886512e-10 f64.mul f64.add - local.get $4 - local.get $10 - f64.sub local.get $6 + local.get $0 + f64.sub + local.get $9 f64.add f64.add - local.get $5 - local.get $0 + local.get $8 + local.get $4 f64.const 0.2885390081805197 f64.mul f64.const -0.360673760222145 f64.add - local.get $2 - local.get $0 + local.get $7 + local.get $4 f64.const 0.2060992861022954 f64.mul f64.const -0.24044917405728863 f64.add f64.mul f64.add - local.get $5 - local.get $0 + local.get $8 + local.get $4 f64.const 0.1603032746063156 f64.mul f64.const -0.18033596705327856 f64.add - local.get $2 - local.get $0 + local.get $7 + local.get $4 f64.const 0.13046826811283835 f64.mul f64.const -0.14483316576701266 @@ -6593,7 +6588,7 @@ i64.const 48 i64.shr_u i32.wrap_i64 - local.tee $3 + local.tee $2 i32.const 16 i32.sub i32.const 32736 @@ -6611,32 +6606,31 @@ br_if $~lib/util/math/log2_lut|inlined.0 drop local.get $0 - local.tee $2 local.get $1 i64.const 9218868437227405312 i64.eq br_if $~lib/util/math/log2_lut|inlined.0 drop i32.const 1 - local.get $3 + local.get $2 i32.const 32752 i32.and i32.const 32752 i32.eq - local.get $3 + local.get $2 i32.const 32768 i32.and select if - local.get $2 - local.get $2 + local.get $0 + local.get $0 f64.sub local.tee $0 local.get $0 f64.div br $~lib/util/math/log2_lut|inlined.0 end - local.get $2 + local.get $0 f64.const 4503599627370496 f64.mul i64.reinterpret_f64 @@ -6647,7 +6641,7 @@ local.get $1 i64.const 4604367669032910848 i64.sub - local.tee $8 + local.tee $3 i64.const 46 i64.shr_u i64.const 63 @@ -6655,83 +6649,83 @@ i32.wrap_i64 i32.const 4 i32.shl - local.tee $3 + local.tee $10 i32.const 7968 i32.add - local.set $9 - local.get $8 + local.set $2 + local.get $3 i64.const 52 i64.shr_s f64.convert_i64_s - local.get $9 + local.get $2 f64.load offset=8 f64.add - local.tee $7 + local.tee $0 local.get $1 - local.get $8 + local.get $3 i64.const -4503599627370496 i64.and i64.sub f64.reinterpret_i64 - local.get $3 + local.get $10 i32.const 8992 i32.add - local.tee $3 + local.tee $10 f64.load f64.sub - local.get $3 + local.get $10 f64.load offset=8 f64.sub - local.get $9 + local.get $2 f64.load f64.mul - local.tee $0 + local.tee $4 i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $4 + local.tee $5 f64.const 1.4426950407214463 f64.mul - local.tee $5 + local.tee $6 f64.add - local.set $6 + local.set $7 + local.get $0 local.get $7 - local.get $6 f64.sub - local.get $5 + local.get $6 f64.add - local.get $0 local.get $4 + local.get $5 f64.sub f64.const 1.4426950407214463 f64.mul - local.get $0 + local.get $4 f64.const 1.6751713164886512e-10 f64.mul f64.add f64.add - local.get $0 - local.get $0 + local.get $4 + local.get $4 f64.mul - local.tee $2 - local.get $0 + local.tee $0 + local.get $4 f64.const 0.4808983469629985 f64.mul f64.const -0.7213475204444882 f64.add - local.get $2 local.get $0 + local.get $4 f64.const 0.2885390073180969 f64.mul f64.const -0.36067375954075914 f64.add f64.mul f64.add - local.get $2 - local.get $2 - f64.mul local.get $0 + local.get $0 + f64.mul + local.get $4 f64.const 0.2061202382173603 f64.mul f64.const -0.2404693555628422 @@ -6740,7 +6734,7 @@ f64.add f64.mul f64.add - local.get $6 + local.get $7 f64.add end ) @@ -6897,8 +6891,8 @@ (local $4 i64) (local $5 i64) (local $6 i64) - (local $7 i64) - (local $8 f64) + (local $7 f64) + (local $8 i64) (local $9 i64) block $__inlined_func$~lib/math/NativeMath.mod (result f64) local.get $0 @@ -6915,25 +6909,25 @@ drop local.get $1 i64.reinterpret_f64 - local.tee $4 + local.tee $9 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.set $6 - local.get $4 + local.set $5 + local.get $9 i64.const 1 i64.shl - local.tee $7 + local.tee $3 i64.eqz local.get $0 i64.reinterpret_f64 - local.tee $3 + local.tee $8 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.tee $5 + local.tee $4 i64.const 2047 i64.eq i32.or @@ -6945,90 +6939,90 @@ local.get $0 local.get $1 f64.mul - local.tee $8 - local.get $8 + local.tee $7 + local.get $7 f64.div br $__inlined_func$~lib/math/NativeMath.mod end - local.get $7 local.get $3 + local.get $8 i64.const 1 i64.shl - local.tee $9 + local.tee $6 i64.ge_u if local.get $0 - local.get $7 - local.get $9 + local.get $3 + local.get $6 i64.ne f64.convert_i32_u f64.mul br $__inlined_func$~lib/math/NativeMath.mod end - local.get $3 + local.get $8 i64.const 63 i64.shr_u - local.set $7 - local.get $5 + local.set $6 + local.get $4 i64.eqz if (result i64) - local.get $3 + local.get $8 i64.const 1 - local.get $5 - local.get $3 + local.get $4 + local.get $8 i64.const 12 i64.shl i64.clz i64.sub - local.tee $5 + local.tee $4 i64.sub i64.shl else - local.get $3 + local.get $8 i64.const 4503599627370495 i64.and i64.const 4503599627370496 i64.or end local.set $3 - local.get $6 + local.get $5 i64.eqz if (result i64) - local.get $4 + local.get $9 i64.const 1 - local.get $6 - local.get $4 + local.get $5 + local.get $9 i64.const 12 i64.shl i64.clz i64.sub - local.tee $6 + local.tee $5 i64.sub i64.shl else - local.get $4 + local.get $9 i64.const 4503599627370495 i64.and i64.const 4503599627370496 i64.or end - local.set $4 + local.set $8 block $folding-inner0 loop $while-continue|0 + local.get $4 local.get $5 - local.get $6 i64.gt_s if local.get $3 - local.get $4 + local.get $8 i64.ge_u if (result i64) local.get $3 - local.get $4 + local.get $8 i64.eq br_if $folding-inner0 local.get $3 - local.get $4 + local.get $8 i64.sub else local.get $3 @@ -7036,24 +7030,24 @@ i64.const 1 i64.shl local.set $3 - local.get $5 + local.get $4 i64.const 1 i64.sub - local.set $5 + local.set $4 br $while-continue|0 end end - local.get $5 - local.get $3 local.get $4 + local.get $3 + local.get $8 i64.ge_u if local.get $3 - local.get $4 + local.get $8 i64.eq br_if $folding-inner0 local.get $3 - local.get $4 + local.get $8 i64.sub local.set $3 end @@ -7061,32 +7055,32 @@ i64.const 11 i64.shl i64.clz - local.tee $5 + local.tee $4 i64.sub - local.set $4 + local.set $5 local.get $3 - local.get $5 + local.get $4 i64.shl local.set $3 - local.get $4 + local.get $5 i64.const 0 i64.gt_s if (result i64) local.get $3 i64.const 4503599627370496 i64.sub - local.get $4 + local.get $5 i64.const 52 i64.shl i64.or else local.get $3 i64.const 1 - local.get $4 + local.get $5 i64.sub i64.shr_u end - local.get $7 + local.get $6 i64.const 63 i64.shl i64.or @@ -7133,31 +7127,31 @@ end local.get $1 i32.reinterpret_f32 - local.tee $3 + local.tee $7 i32.const 23 i32.shr_u i32.const 255 i32.and - local.set $5 + local.set $4 i32.const 1 local.get $1 local.get $1 f32.ne local.get $0 i32.reinterpret_f32 - local.tee $2 + local.tee $6 i32.const 23 i32.shr_u i32.const 255 i32.and - local.tee $4 + local.tee $3 i32.const 255 i32.eq i32.const 1 - local.get $3 + local.get $7 i32.const 1 i32.shl - local.tee $6 + local.tee $2 select select if @@ -7169,83 +7163,83 @@ f32.div return end - local.get $6 local.get $2 + local.get $6 i32.const 1 i32.shl - local.tee $7 + local.tee $5 i32.ge_u if local.get $0 - local.get $6 - local.get $7 + local.get $2 + local.get $5 i32.ne f32.convert_i32_u f32.mul return end - local.get $2 + local.get $6 i32.const -2147483648 i32.and - local.set $6 - local.get $4 + local.set $5 + local.get $3 if (result i32) - local.get $2 + local.get $6 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $2 + local.get $6 i32.const 1 - local.get $4 - local.get $2 + local.get $3 + local.get $6 i32.const 9 i32.shl i32.clz i32.sub - local.tee $4 + local.tee $3 i32.sub i32.shl end local.set $2 - local.get $5 + local.get $4 if (result i32) - local.get $3 + local.get $7 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $3 + local.get $7 i32.const 1 - local.get $5 - local.get $3 + local.get $4 + local.get $7 i32.const 9 i32.shl i32.clz i32.sub - local.tee $5 + local.tee $4 i32.sub i32.shl end - local.set $3 + local.set $6 block $folding-inner0 loop $while-continue|0 + local.get $3 local.get $4 - local.get $5 i32.gt_s if local.get $2 - local.get $3 + local.get $6 i32.ge_u if (result i32) local.get $2 - local.get $3 + local.get $6 i32.eq br_if $folding-inner0 local.get $2 - local.get $3 + local.get $6 i32.sub else local.get $2 @@ -7253,24 +7247,24 @@ i32.const 1 i32.shl local.set $2 - local.get $4 + local.get $3 i32.const 1 i32.sub - local.set $4 + local.set $3 br $while-continue|0 end end - local.get $4 - local.get $2 local.get $3 + local.get $2 + local.get $6 i32.ge_u if local.get $2 - local.get $3 + local.get $6 i32.eq br_if $folding-inner0 local.get $2 - local.get $3 + local.get $6 i32.sub local.set $2 end @@ -7303,7 +7297,7 @@ i32.sub i32.shr_u end - local.get $6 + local.get $5 i32.or f32.reinterpret_i32 return @@ -7315,21 +7309,21 @@ (func $~lib/math/NativeMath.pow (param $0 f64) (param $1 f64) (result f64) (local $2 i64) (local $3 i32) - (local $4 f64) + (local $4 i64) (local $5 i64) - (local $6 i64) - (local $7 f64) - (local $8 i64) + (local $6 i32) + (local $7 i64) + (local $8 f64) (local $9 f64) (local $10 f64) - (local $11 i32) - (local $12 i32) + (local $11 f64) + (local $12 i64) (local $13 f64) - (local $14 i64) + (local $14 f64) (local $15 f64) (local $16 f64) (local $17 f64) - (local $18 f64) + (local $18 i32) local.get $1 f64.abs f64.const 2 @@ -7384,20 +7378,18 @@ end block $~lib/util/math/pow_lut|inlined.0 (result f64) local.get $1 - local.tee $4 i64.reinterpret_f64 - local.tee $6 + local.tee $4 i64.const 52 i64.shr_u - local.set $14 + local.set $7 block $~lib/util/math/exp_inline|inlined.0 (result f64) local.get $0 - local.tee $1 i64.reinterpret_f64 local.tee $2 i64.const 52 i64.shr_u - local.tee $8 + local.tee $5 i64.const 1 i64.sub i64.const 2046 @@ -7405,7 +7397,7 @@ if (result i32) i32.const 1 else - local.get $14 + local.get $7 i64.const 2047 i64.and i64.const 958 @@ -7414,7 +7406,7 @@ i64.ge_u end if - local.get $6 + local.get $4 i64.const 1 i64.shl i64.const 1 @@ -7423,7 +7415,7 @@ i64.ge_u if f64.const 1 - local.get $6 + local.get $4 i64.const 1 i64.shl i64.eqz @@ -7435,10 +7427,10 @@ i64.eq br_if $~lib/util/math/pow_lut|inlined.0 drop + local.get $0 local.get $1 - local.get $4 f64.add - local.get $6 + local.get $4 i64.const 1 i64.shl i64.const -9007199254740992 @@ -7460,7 +7452,7 @@ br_if $~lib/util/math/pow_lut|inlined.0 drop f64.const 0 - local.get $6 + local.get $4 i64.const 63 i64.shr_u i64.eqz @@ -7472,8 +7464,8 @@ i32.eq br_if $~lib/util/math/pow_lut|inlined.0 drop - local.get $4 - local.get $4 + local.get $1 + local.get $1 f64.mul br $~lib/util/math/pow_lut|inlined.0 end @@ -7486,8 +7478,8 @@ i64.ge_u if f64.const 1 - local.get $1 - local.get $1 + local.get $0 + local.get $0 f64.mul local.tee $0 f64.neg @@ -7499,18 +7491,18 @@ if (result i32) block $~lib/util/math/checkint|inlined.0 (result i32) i32.const 0 - local.get $6 + local.get $4 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.tee $5 + local.tee $2 i64.const 1023 i64.lt_u br_if $~lib/util/math/checkint|inlined.0 drop i32.const 2 - local.get $5 + local.get $2 i64.const 1075 i64.gt_u br_if $~lib/util/math/checkint|inlined.0 @@ -7518,21 +7510,21 @@ i32.const 0 i64.const 1 i64.const 1075 - local.get $5 + local.get $2 i64.sub i64.shl - local.tee $5 + local.tee $2 i64.const 1 i64.sub - local.get $6 + local.get $4 i64.and i64.const 0 i64.ne br_if $~lib/util/math/checkint|inlined.0 drop i32.const 1 - local.get $5 - local.get $6 + local.get $2 + local.get $4 i64.and i64.const 0 i64.ne @@ -7549,7 +7541,7 @@ local.tee $0 f64.div local.get $0 - local.get $6 + local.get $4 i64.const 63 i64.shr_u i32.wrap_i64 @@ -7563,18 +7555,18 @@ if block $~lib/util/math/checkint|inlined.1 (result i32) i32.const 0 - local.get $6 + local.get $4 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.tee $5 + local.tee $12 i64.const 1023 i64.lt_u br_if $~lib/util/math/checkint|inlined.1 drop i32.const 2 - local.get $5 + local.get $12 i64.const 1075 i64.gt_u br_if $~lib/util/math/checkint|inlined.1 @@ -7582,21 +7574,21 @@ i32.const 0 i64.const 1 i64.const 1075 - local.get $5 + local.get $12 i64.sub i64.shl - local.tee $5 + local.tee $12 i64.const 1 i64.sub - local.get $6 + local.get $4 i64.and i64.const 0 i64.ne br_if $~lib/util/math/checkint|inlined.1 drop i32.const 1 - local.get $5 - local.get $6 + local.get $4 + local.get $12 i64.and i64.const 0 i64.ne @@ -7604,34 +7596,34 @@ drop i32.const 2 end - local.tee $11 + local.tee $6 i32.eqz if - local.get $1 - local.get $1 + local.get $0 + local.get $0 f64.sub local.tee $0 local.get $0 f64.div br $~lib/util/math/pow_lut|inlined.0 end - local.get $8 + local.get $5 i64.const 2047 i64.and - local.set $8 + local.set $5 i32.const 262144 i32.const 0 - local.get $11 + local.get $6 i32.const 1 i32.eq select - local.set $12 + local.set $6 local.get $2 i64.const 9223372036854775807 i64.and local.set $2 end - local.get $14 + local.get $7 i64.const 2047 i64.and i64.const 958 @@ -7646,7 +7638,7 @@ br_if $~lib/util/math/pow_lut|inlined.0 drop f64.const 1 - local.get $14 + local.get $7 i64.const 2047 i64.and i64.const 958 @@ -7655,7 +7647,7 @@ drop f64.const inf f64.const 0 - local.get $14 + local.get $7 i64.const 2048 i64.lt_u local.get $2 @@ -7665,10 +7657,10 @@ select br $~lib/util/math/pow_lut|inlined.0 end - local.get $8 + local.get $5 i64.eqz if (result i64) - local.get $1 + local.get $0 f64.const 4503599627370496 f64.mul i64.reinterpret_f64 @@ -7685,7 +7677,7 @@ local.get $2 i64.const 4604531861337669632 i64.sub - local.tee $8 + local.tee $2 i64.const -4503599627370496 i64.and i64.sub @@ -7695,8 +7687,8 @@ i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $1 - local.get $8 + local.tee $0 + local.get $2 i64.const 45 i64.shr_u i64.const 127 @@ -7706,94 +7698,94 @@ i32.shl i32.const 10272 i32.add - local.tee $11 + local.tee $3 f64.load - local.tee $0 + local.tee $8 f64.mul f64.const 1 f64.sub local.set $13 - local.get $8 + local.get $2 i64.const 52 i64.shr_s f64.convert_i64_s - local.tee $17 + local.tee $10 f64.const 0.6931471805598903 f64.mul - local.get $11 + local.get $3 f64.load offset=16 f64.add - local.tee $18 + local.tee $11 local.get $13 local.get $5 f64.reinterpret_i64 - local.get $1 - f64.sub local.get $0 + f64.sub + local.get $8 f64.mul - local.tee $7 + local.tee $14 f64.add - local.tee $10 + local.tee $0 f64.add - local.set $15 - local.get $10 - local.get $10 + local.set $8 + local.get $0 + local.get $0 f64.const -0.5 f64.mul - local.tee $9 + local.tee $15 f64.mul - local.set $16 - local.get $15 + local.set $9 + local.get $8 local.get $13 local.get $13 f64.const -0.5 f64.mul - local.tee $1 + local.tee $13 f64.mul - local.tee $0 + local.tee $16 f64.add - local.tee $13 - local.get $13 + local.tee $17 local.get $17 + local.get $10 f64.const 5.497923018708371e-14 f64.mul - local.get $11 + local.get $3 f64.load offset=24 f64.add - local.get $18 - local.get $15 + local.get $11 + local.get $8 f64.sub - local.get $10 + local.get $0 f64.add f64.add - local.get $7 - local.get $9 - local.get $1 + local.get $14 + local.get $15 + local.get $13 f64.add f64.mul f64.add - local.get $15 - local.get $13 + local.get $8 + local.get $17 f64.sub - local.get $0 + local.get $16 f64.add f64.add - local.get $10 - local.get $16 + local.get $0 + local.get $9 f64.mul - local.get $10 + local.get $0 f64.const 0.5000000000000007 f64.mul f64.const -0.6666666666666679 f64.add - local.get $16 - local.get $10 + local.get $9 + local.get $0 f64.const -0.6666666663487739 f64.mul f64.const 0.7999999995323976 f64.add - local.get $16 - local.get $10 + local.get $9 + local.get $0 f64.const 1.0000415263675542 f64.mul f64.const -1.142909628459501 @@ -7806,41 +7798,41 @@ f64.add local.tee $0 f64.add - local.tee $1 + local.tee $8 f64.sub local.get $0 f64.add global.set $~lib/util/math/log_tail - local.get $6 + local.get $4 i64.const -134217728 i64.and f64.reinterpret_i64 - local.tee $7 - local.get $1 + local.tee $0 + local.get $8 i64.reinterpret_f64 i64.const -134217728 i64.and f64.reinterpret_i64 - local.tee $0 + local.tee $9 f64.mul - local.set $9 - local.get $4 - local.get $7 - f64.sub + local.set $10 + local.get $1 local.get $0 + f64.sub + local.get $9 f64.mul - local.get $4 local.get $1 - local.get $0 + local.get $8 + local.get $9 f64.sub global.get $~lib/util/math/log_tail f64.add f64.mul f64.add - local.set $1 - local.get $9 + local.set $0 + local.get $10 i64.reinterpret_f64 - local.tee $5 + local.tee $2 i64.const 52 i64.shr_u i32.wrap_i64 @@ -7854,7 +7846,7 @@ if f64.const -1 f64.const 1 - local.get $12 + local.get $6 select local.get $3 i32.const 969 @@ -7863,21 +7855,21 @@ i32.ge_u br_if $~lib/util/math/exp_inline|inlined.0 drop - local.get $5 + local.get $2 i64.const 63 i64.shr_u i32.wrap_i64 if (result f64) f64.const -1.2882297539194267e-231 f64.const 1.2882297539194267e-231 - local.get $12 + local.get $6 select f64.const 1.2882297539194267e-231 f64.mul else f64.const -3105036184601417870297958e207 f64.const 3105036184601417870297958e207 - local.get $12 + local.get $6 select f64.const 3105036184601417870297958e207 f64.mul @@ -7890,14 +7882,14 @@ i32.const 0 local.set $3 end - local.get $9 + local.get $10 f64.const 184.6649652337873 f64.mul f64.const 6755399441055744 f64.add - local.tee $0 + local.tee $1 i64.reinterpret_f64 - local.tee $8 + local.tee $2 i64.const 127 i64.and i64.const 1 @@ -7907,50 +7899,50 @@ i32.shl i32.const 5664 i32.add - local.tee $11 + local.tee $18 i64.load offset=8 - local.get $12 + local.get $6 i64.extend_i32_u - local.get $8 + local.get $2 i64.add i64.const 45 i64.shl i64.add - local.set $5 - local.get $9 - local.get $0 + local.set $4 + local.get $10 + local.get $1 f64.const 6755399441055744 f64.sub - local.tee $0 + local.tee $1 f64.const -0.005415212348111709 f64.mul f64.add - local.get $0 + local.get $1 f64.const -1.2864023111638346e-14 f64.mul f64.add - local.get $1 + local.get $0 f64.add - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 f64.mul - local.set $0 - local.get $11 + local.set $1 + local.get $18 f64.load - local.get $1 - f64.add local.get $0 + f64.add local.get $1 + local.get $0 f64.const 0.16666666666665886 f64.mul f64.const 0.49999999999996786 f64.add f64.mul f64.add - local.get $0 - local.get $0 - f64.mul local.get $1 + local.get $1 + f64.mul + local.get $0 f64.const 0.008333335853059549 f64.mul f64.const 0.0416666808410674 @@ -7962,12 +7954,12 @@ i32.eqz if block $~lib/util/math/specialcase|inlined.1 (result f64) - local.get $8 + local.get $2 i64.const 2147483648 i64.and i64.eqz if - local.get $5 + local.get $4 i64.const 4544132024016830464 i64.sub f64.reinterpret_i64 @@ -7980,64 +7972,64 @@ f64.mul br $~lib/util/math/specialcase|inlined.1 end - local.get $5 + local.get $4 i64.const 4602678819172646912 i64.add - local.tee $5 + local.tee $2 f64.reinterpret_i64 - local.tee $9 - local.get $9 + local.tee $1 + local.get $1 local.get $0 f64.mul f64.add - local.tee $7 + local.tee $8 f64.abs f64.const 1 f64.lt if (result f64) f64.const 1 - local.get $7 + local.get $8 f64.copysign - local.tee $4 - local.get $7 + local.tee $9 + local.get $8 f64.add - local.tee $1 - local.get $4 - local.get $1 + local.tee $10 + local.get $9 + local.get $10 f64.sub - local.get $7 + local.get $8 f64.add - local.get $9 - local.get $7 + local.get $1 + local.get $8 f64.sub - local.get $9 + local.get $1 local.get $0 f64.mul f64.add f64.add f64.add - local.get $4 + local.get $9 f64.sub - local.tee $7 + local.tee $0 f64.const 0 f64.eq if (result f64) - local.get $5 + local.get $2 i64.const -9223372036854775808 i64.and f64.reinterpret_i64 else - local.get $7 + local.get $0 end else - local.get $7 + local.get $8 end f64.const 2.2250738585072014e-308 f64.mul end br $~lib/util/math/exp_inline|inlined.0 end - local.get $5 + local.get $4 f64.reinterpret_i64 local.tee $1 local.get $1 @@ -8068,10 +8060,10 @@ (func $~lib/math/NativeMathf.pow (param $0 f32) (param $1 f32) (result f32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i64) - (local $6 i32) - (local $7 f64) + (local $4 f64) + (local $5 i32) + (local $6 i64) + (local $7 i32) (local $8 f64) local.get $1 f32.abs @@ -8128,14 +8120,14 @@ block $~lib/util/math/powf_lut|inlined.0 (result f32) local.get $1 i32.reinterpret_f32 - local.tee $4 + local.tee $3 i32.const 1 i32.shl i32.const 1 i32.sub i32.const -16777217 i32.ge_u - local.tee $3 + local.tee $7 local.get $0 i32.reinterpret_f32 local.tee $2 @@ -8145,10 +8137,10 @@ i32.ge_u i32.or if - local.get $3 + local.get $7 if f32.const 1 - local.get $4 + local.get $3 i32.const 1 i32.shl i32.eqz @@ -8163,7 +8155,7 @@ local.get $0 local.get $1 f32.add - local.get $4 + local.get $3 i32.const 1 i32.shl i32.const -16777216 @@ -8185,7 +8177,7 @@ br_if $~lib/util/math/powf_lut|inlined.0 drop f32.const 0 - local.get $4 + local.get $3 i32.const 31 i32.shr_u i32.eqz @@ -8223,7 +8215,7 @@ if (result i32) block $~lib/util/math/checkintf|inlined.0 (result i32) i32.const 0 - local.get $4 + local.get $3 i32.const 23 i32.shr_u i32.const 255 @@ -8248,13 +8240,13 @@ local.tee $2 i32.const 1 i32.sub - local.get $4 + local.get $3 i32.and br_if $~lib/util/math/checkintf|inlined.0 drop i32.const 1 local.get $2 - local.get $4 + local.get $3 i32.and br_if $~lib/util/math/checkintf|inlined.0 drop @@ -8269,7 +8261,7 @@ local.tee $0 f32.div local.get $0 - local.get $4 + local.get $3 i32.const 31 i32.shr_u select @@ -8281,19 +8273,18 @@ if block $~lib/util/math/checkintf|inlined.1 (result i32) i32.const 0 - local.get $4 - local.tee $3 + local.get $3 i32.const 23 i32.shr_u i32.const 255 i32.and - local.tee $4 + local.tee $5 i32.const 127 i32.lt_u br_if $~lib/util/math/checkintf|inlined.1 drop i32.const 2 - local.get $4 + local.get $5 i32.const 150 i32.gt_u br_if $~lib/util/math/checkintf|inlined.1 @@ -8301,10 +8292,10 @@ i32.const 0 i32.const 1 i32.const 150 - local.get $4 + local.get $5 i32.sub i32.shl - local.tee $4 + local.tee $5 i32.const 1 i32.sub local.get $3 @@ -8313,13 +8304,13 @@ drop i32.const 1 local.get $3 - local.get $4 + local.get $5 i32.and br_if $~lib/util/math/checkintf|inlined.1 drop i32.const 2 end - local.tee $4 + local.tee $3 i32.eqz if local.get $0 @@ -8332,11 +8323,11 @@ end i32.const 65536 i32.const 0 - local.get $4 + local.get $3 i32.const 1 i32.eq select - local.set $6 + local.set $5 local.get $2 i32.const 2147483647 i32.and @@ -8363,14 +8354,14 @@ local.get $2 i32.const 1060306944 i32.sub - local.tee $4 + local.tee $2 i32.const -8388608 i32.and local.tee $3 i32.sub f32.reinterpret_i32 f64.promote_f32 - local.get $4 + local.get $2 i32.const 19 i32.shr_u i32.const 15 @@ -8379,30 +8370,30 @@ i32.shl i32.const 10016 i32.add - local.tee $4 + local.tee $2 f64.load f64.mul f64.const 1 f64.sub - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 f64.mul - local.set $7 + local.set $8 local.get $1 f64.promote_f32 - local.get $8 + local.get $4 f64.const 0.288457581109214 f64.mul f64.const -0.36092606229713164 f64.add - local.get $7 - local.get $7 + local.get $8 + local.get $8 f64.mul f64.mul - local.get $8 + local.get $4 f64.const 1.4426950408774342 f64.mul - local.get $4 + local.get $2 f64.load offset=8 local.get $3 i32.const 23 @@ -8410,17 +8401,17 @@ f64.convert_i32_s f64.add f64.add - local.get $8 + local.get $4 f64.const 0.480898481472577 f64.mul f64.const -0.7213474675006291 f64.add - local.get $7 + local.get $8 f64.mul f64.add f64.add f64.mul - local.tee $8 + local.tee $4 i64.reinterpret_f64 i64.const 47 i64.shr_u @@ -8431,54 +8422,54 @@ if f32.const -1584563250285286751870879e5 f32.const 1584563250285286751870879e5 - local.get $6 + local.get $5 select f32.const 1584563250285286751870879e5 f32.mul - local.get $8 + local.get $4 f64.const 127.99999995700433 f64.gt br_if $~lib/util/math/powf_lut|inlined.0 drop f32.const -2.524354896707238e-29 f32.const 2.524354896707238e-29 - local.get $6 + local.get $5 select f32.const 2.524354896707238e-29 f32.mul - local.get $8 + local.get $4 f64.const -150 f64.le br_if $~lib/util/math/powf_lut|inlined.0 drop end - local.get $8 + local.get $4 f64.const 211106232532992 f64.add - local.tee $7 + local.tee $8 i64.reinterpret_f64 - local.set $5 + local.set $6 + local.get $4 local.get $8 - local.get $7 f64.const 211106232532992 f64.sub f64.sub - local.tee $8 + local.tee $4 f64.const 0.6931471806916203 f64.mul f64.const 1 f64.add - local.get $8 + local.get $4 f64.const 0.05550361559341535 f64.mul f64.const 0.2402284522445722 f64.add - local.get $8 - local.get $8 + local.get $4 + local.get $4 f64.mul f64.mul f64.add - local.get $5 + local.get $6 i32.wrap_i64 i32.const 31 i32.and @@ -8487,9 +8478,9 @@ i32.const 7712 i32.add i64.load - local.get $6 - i64.extend_i32_u local.get $5 + i64.extend_i32_u + local.get $6 i64.add i64.const 47 i64.shl @@ -8697,19 +8688,19 @@ (local $2 i64) (local $3 i64) (local $4 i64) - (local $5 i64) + (local $5 i32) (local $6 i32) - (local $7 f64) - (local $8 i32) + (local $7 i64) + (local $8 f64) local.get $1 i64.reinterpret_f64 - local.tee $4 + local.tee $7 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.set $5 - local.get $4 + local.set $4 + local.get $7 i64.const 1 i64.shl i64.eqz @@ -8749,7 +8740,7 @@ i64.const 63 i64.shr_u i32.wrap_i64 - local.set $8 + local.set $6 local.get $3 i64.eqz if (result i64) @@ -8772,34 +8763,34 @@ i64.or end local.set $2 - local.get $5 + local.get $4 i64.eqz if (result i64) - local.get $4 + local.get $7 i64.const 1 - local.get $5 local.get $4 + local.get $7 i64.const 12 i64.shl i64.clz i64.sub - local.tee $5 + local.tee $4 i64.sub i64.shl else - local.get $4 + local.get $7 i64.const 4503599627370495 i64.and i64.const 4503599627370496 i64.or end - local.set $4 + local.set $7 block $do-break|0 local.get $3 - local.get $5 + local.get $4 i64.lt_s if - local.get $5 + local.get $4 local.get $3 i64.const 1 i64.add @@ -8810,19 +8801,19 @@ end loop $while-continue|1 local.get $3 - local.get $5 + local.get $4 i64.gt_s if local.get $2 - local.get $4 + local.get $7 i64.ge_u if (result i64) - local.get $6 + local.get $5 i32.const 1 i32.add - local.set $6 + local.set $5 local.get $2 - local.get $4 + local.get $7 i64.sub else local.get $2 @@ -8830,10 +8821,10 @@ i64.const 1 i64.shl local.set $2 - local.get $6 + local.get $5 i32.const 1 i32.shl - local.set $6 + local.set $5 local.get $3 i64.const 1 i64.sub @@ -8842,15 +8833,15 @@ end end local.get $2 - local.get $4 + local.get $7 i64.ge_u if - local.get $6 + local.get $5 i32.const 1 i32.add - local.set $6 + local.set $5 local.get $2 - local.get $4 + local.get $7 i64.sub local.set $2 end @@ -8865,11 +8856,11 @@ i64.const 11 i64.shl i64.clz - local.tee $4 + local.tee $7 i64.sub local.set $3 local.get $2 - local.get $4 + local.get $7 i64.shl local.set $2 end @@ -8896,36 +8887,36 @@ i64.shr_u end f64.reinterpret_i64 - local.tee $0 - local.get $0 + local.tee $8 + local.get $8 f64.add - local.set $7 - local.get $0 + local.set $0 + local.get $8 local.get $1 f64.sub - local.get $0 + local.get $8 local.get $3 - local.get $5 + local.get $4 i64.eq if (result i32) i32.const 1 else - local.get $5 + local.get $4 local.get $3 i64.const 1 i64.add i64.eq if (result i32) - local.get $6 + local.get $5 i32.const 1 i32.and + local.get $0 local.get $1 - local.get $7 f64.eq i32.and + local.get $0 local.get $1 - local.get $7 - f64.lt + f64.gt i32.or else i32.const 0 @@ -8935,7 +8926,7 @@ local.tee $0 f64.neg local.get $0 - local.get $8 + local.get $6 select ) (func $~lib/math/NativeMathf.rem (param $0 f32) (param $1 f32) (result f32) @@ -8944,16 +8935,16 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 f32) - (local $8 i32) + (local $7 i32) + (local $8 f32) local.get $1 i32.reinterpret_f32 - local.tee $4 + local.tee $7 i32.const 23 i32.shr_u i32.const 255 i32.and - local.set $5 + local.set $4 i32.const 1 local.get $1 local.get $1 @@ -8969,7 +8960,7 @@ i32.const 255 i32.eq i32.const 1 - local.get $4 + local.get $7 i32.const 1 i32.shl select @@ -8994,7 +8985,7 @@ local.get $2 i32.const 31 i32.shr_u - local.set $8 + local.set $6 local.get $3 if (result i32) local.get $2 @@ -9016,33 +9007,33 @@ i32.shl end local.set $2 - local.get $5 + local.get $4 if (result i32) - local.get $4 + local.get $7 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $4 + local.get $7 i32.const 1 - local.get $5 local.get $4 + local.get $7 i32.const 9 i32.shl i32.clz i32.sub - local.tee $5 + local.tee $4 i32.sub i32.shl end - local.set $4 + local.set $7 block $do-break|0 local.get $3 - local.get $5 + local.get $4 i32.lt_s if - local.get $5 + local.get $4 local.get $3 i32.const 1 i32.add @@ -9053,19 +9044,19 @@ end loop $while-continue|1 local.get $3 - local.get $5 + local.get $4 i32.gt_s if local.get $2 - local.get $4 + local.get $7 i32.ge_u if (result i32) - local.get $6 + local.get $5 i32.const 1 i32.add - local.set $6 + local.set $5 local.get $2 - local.get $4 + local.get $7 i32.sub else local.get $2 @@ -9073,10 +9064,10 @@ i32.const 1 i32.shl local.set $2 - local.get $6 + local.get $5 i32.const 1 i32.shl - local.set $6 + local.set $5 local.get $3 i32.const 1 i32.sub @@ -9085,15 +9076,15 @@ end end local.get $2 - local.get $4 + local.get $7 i32.ge_u if - local.get $6 + local.get $5 i32.const 1 i32.add - local.set $6 + local.set $5 local.get $2 - local.get $4 + local.get $7 i32.sub local.set $2 end @@ -9104,11 +9095,11 @@ i32.const 8 i32.shl i32.clz - local.tee $4 + local.tee $7 i32.sub local.set $3 local.get $2 - local.get $4 + local.get $7 i32.shl local.set $2 else @@ -9138,36 +9129,36 @@ i32.shr_u end f32.reinterpret_i32 - local.tee $0 - local.get $0 + local.tee $8 + local.get $8 f32.add - local.set $7 - local.get $0 + local.set $0 + local.get $8 local.get $1 f32.sub - local.get $0 + local.get $8 local.get $3 - local.get $5 + local.get $4 i32.eq if (result i32) i32.const 1 else - local.get $5 + local.get $4 local.get $3 i32.const 1 i32.add i32.eq if (result i32) - local.get $6 + local.get $5 i32.const 1 i32.and + local.get $0 local.get $1 - local.get $7 f32.eq i32.and + local.get $0 local.get $1 - local.get $7 - f32.lt + f32.gt i32.or else i32.const 0 @@ -9177,17 +9168,17 @@ local.tee $0 f32.neg local.get $0 - local.get $8 + local.get $6 select ) (func $~lib/math/NativeMath.sin (param $0 f64) (result f64) (local $1 f64) (local $2 i64) (local $3 f64) - (local $4 f64) + (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) + (local $7 f64) (local $8 f64) (local $9 f64) local.get $0 @@ -9196,18 +9187,18 @@ i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $5 + local.tee $4 i32.const 31 i32.shr_u local.set $6 - local.get $5 + local.get $4 i32.const 2147483647 i32.and - local.tee $5 + local.tee $4 i32.const 1072243195 i32.le_u if - local.get $5 + local.get $4 i32.const 1045430272 i32.lt_u if @@ -9218,12 +9209,12 @@ local.get $0 local.get $0 f64.mul - local.tee $3 + local.tee $1 local.get $0 f64.mul - local.get $3 - local.get $3 - local.get $3 + local.get $1 + local.get $1 + local.get $1 f64.const 2.7557313707070068e-06 f64.mul f64.const -1.984126982985795e-04 @@ -9231,12 +9222,12 @@ f64.mul f64.const 0.00833333333332249 f64.add - local.get $3 - local.get $3 - local.get $3 + local.get $1 + local.get $1 + local.get $1 f64.mul f64.mul - local.get $3 + local.get $1 f64.const 1.58969099521155e-10 f64.mul f64.const -2.5050760253406863e-08 @@ -9250,7 +9241,7 @@ f64.add return end - local.get $5 + local.get $4 i32.const 2146435072 i32.ge_u if @@ -9266,26 +9257,26 @@ i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $7 + local.tee $5 i32.const 1073928572 i32.lt_u if i32.const 1 - local.set $5 + local.set $4 local.get $6 if (result f64) local.get $0 f64.const 1.5707963267341256 f64.add - local.set $3 + local.set $0 i32.const -1 - local.set $5 - local.get $7 + local.set $4 + local.get $5 i32.const 1073291771 i32.ne if (result f64) - local.get $3 - local.get $3 + local.get $0 + local.get $0 f64.const 6.077100506506192e-11 f64.add local.tee $0 @@ -9293,14 +9284,14 @@ f64.const 6.077100506506192e-11 f64.add else - local.get $3 + local.get $0 f64.const 6.077100506303966e-11 f64.add - local.tee $3 + local.tee $1 f64.const 2.0222662487959506e-21 f64.add local.set $0 - local.get $3 + local.get $1 local.get $0 f64.sub f64.const 2.0222662487959506e-21 @@ -9310,13 +9301,13 @@ local.get $0 f64.const 1.5707963267341256 f64.sub - local.set $3 - local.get $7 + local.set $0 + local.get $5 i32.const 1073291771 i32.ne if (result f64) - local.get $3 - local.get $3 + local.get $0 + local.get $0 f64.const 6.077100506506192e-11 f64.sub local.tee $0 @@ -9324,14 +9315,14 @@ f64.const 6.077100506506192e-11 f64.sub else - local.get $3 + local.get $0 f64.const 6.077100506303966e-11 f64.sub - local.tee $3 + local.tee $1 f64.const 2.0222662487959506e-21 f64.sub local.set $0 - local.get $3 + local.get $1 local.get $0 f64.sub f64.const 2.0222662487959506e-21 @@ -9341,28 +9332,28 @@ local.get $0 global.set $~lib/math/rempio2_y0 global.set $~lib/math/rempio2_y1 - local.get $5 + local.get $4 br $~lib/math/rempio2|inlined.1 end - local.get $7 + local.get $5 i32.const 1094263291 i32.lt_u if - local.get $7 + local.get $5 i32.const 20 i32.shr_u - local.tee $6 + local.tee $4 local.get $0 local.get $0 f64.const 0.6366197723675814 f64.mul f64.nearest - local.tee $4 + local.tee $7 f64.const 1.5707963267341256 f64.mul f64.sub local.tee $0 - local.get $4 + local.get $7 f64.const 6.077100506506192e-11 f64.mul local.tee $3 @@ -9380,12 +9371,12 @@ i32.const 16 i32.gt_u if - local.get $4 + local.get $7 f64.const 2.0222662487959506e-21 f64.mul local.get $0 local.get $0 - local.get $4 + local.get $7 f64.const 6.077100506303966e-11 f64.mul local.tee $1 @@ -9396,7 +9387,7 @@ f64.sub f64.sub local.set $3 - local.get $6 + local.get $4 local.get $0 local.get $3 f64.sub @@ -9413,12 +9404,12 @@ i32.const 49 i32.gt_u if (result f64) - local.get $4 + local.get $7 f64.const 8.4784276603689e-32 f64.mul local.get $0 local.get $0 - local.get $4 + local.get $7 f64.const 2.0222662487111665e-21 f64.mul local.tee $1 @@ -9445,51 +9436,51 @@ local.get $3 f64.sub global.set $~lib/math/rempio2_y1 - local.get $4 + local.get $7 i32.trunc_f64_s br $~lib/math/rempio2|inlined.1 end i32.const 0 local.get $2 call $~lib/math/pio2_large_quot - local.tee $5 + local.tee $4 i32.sub - local.get $5 + local.get $4 local.get $6 select end - local.set $6 + local.set $4 global.get $~lib/math/rempio2_y0 local.set $3 global.get $~lib/math/rempio2_y1 - local.set $4 - local.get $6 + local.set $7 + local.get $4 i32.const 1 i32.and if (result f64) local.get $3 local.get $3 f64.mul - local.tee $0 - local.get $0 + local.tee $8 + local.get $8 f64.mul - local.set $1 + local.set $9 f64.const 1 - local.get $0 + local.get $8 f64.const 0.5 f64.mul - local.tee $8 + local.tee $0 f64.sub - local.tee $9 + local.tee $1 f64.const 1 - local.get $9 - f64.sub - local.get $8 + local.get $1 f64.sub local.get $0 - local.get $0 - local.get $0 - local.get $0 + f64.sub + local.get $8 + local.get $8 + local.get $8 + local.get $8 f64.const 2.480158728947673e-05 f64.mul f64.const -0.001388888888887411 @@ -9498,11 +9489,11 @@ f64.const 0.0416666666666666 f64.add f64.mul - local.get $1 - local.get $1 + local.get $9 + local.get $9 f64.mul - local.get $0 - local.get $0 + local.get $8 + local.get $8 f64.const -1.1359647557788195e-11 f64.mul f64.const 2.087572321298175e-09 @@ -9514,7 +9505,7 @@ f64.add f64.mul local.get $3 - local.get $4 + local.get $7 f64.mul f64.sub f64.add @@ -9529,7 +9520,7 @@ local.set $1 local.get $3 local.get $0 - local.get $4 + local.get $7 f64.const 0.5 f64.mul local.get $1 @@ -9557,7 +9548,7 @@ f64.mul f64.sub f64.mul - local.get $4 + local.get $7 f64.sub local.get $1 f64.const -0.16666666666666632 @@ -9568,36 +9559,36 @@ local.tee $0 f64.neg local.get $0 - local.get $6 + local.get $4 i32.const 2 i32.and select ) (func $~lib/math/NativeMathf.sin (param $0 f32) (result f32) (local $1 i32) - (local $2 i32) - (local $3 i64) - (local $4 i64) - (local $5 i32) - (local $6 i64) - (local $7 f64) - (local $8 f64) - (local $9 f64) + (local $2 f64) + (local $3 f64) + (local $4 f64) + (local $5 i64) + (local $6 i32) + (local $7 i32) + (local $8 i64) + (local $9 i64) block $folding-inner0 local.get $0 i32.reinterpret_f32 local.tee $1 i32.const 31 i32.shr_u - local.set $5 + local.set $6 local.get $1 i32.const 2147483647 i32.and - local.tee $2 + local.tee $1 i32.const 1061752794 i32.le_u if - local.get $2 + local.get $1 i32.const 964689920 i32.lt_u if @@ -9606,49 +9597,49 @@ end local.get $0 f64.promote_f32 - local.tee $9 - local.get $9 + local.tee $2 + local.get $2 f64.mul - local.tee $7 - local.get $9 + local.tee $4 + local.get $2 f64.mul - local.set $8 + local.set $3 br $folding-inner0 end - local.get $2 + local.get $1 i32.const 1081824209 i32.le_u if - local.get $2 + local.get $1 i32.const 1075235811 i32.le_u if - local.get $5 + local.get $6 if (result f32) local.get $0 f64.promote_f32 f64.const 1.5707963267948966 f64.add - local.tee $8 - local.get $8 + local.tee $2 + local.get $2 f64.mul - local.tee $9 - local.get $9 + local.tee $2 + local.get $2 f64.mul - local.set $8 - local.get $9 + local.set $3 + local.get $2 f64.const -0.499999997251031 f64.mul f64.const 1 f64.add - local.get $8 + local.get $3 f64.const 0.04166662332373906 f64.mul f64.add - local.get $8 - local.get $9 + local.get $3 + local.get $2 f64.mul - local.get $9 + local.get $2 f64.const 2.439044879627741e-05 f64.mul f64.const -0.001388676377460993 @@ -9662,26 +9653,26 @@ f64.promote_f32 f64.const 1.5707963267948966 f64.sub - local.tee $8 - local.get $8 + local.tee $2 + local.get $2 f64.mul - local.tee $9 - local.get $9 + local.tee $2 + local.get $2 f64.mul - local.set $8 - local.get $9 + local.set $3 + local.get $2 f64.const -0.499999997251031 f64.mul f64.const 1 f64.add - local.get $8 + local.get $3 f64.const 0.04166662332373906 f64.mul f64.add - local.get $8 - local.get $9 + local.get $3 + local.get $2 f64.mul - local.get $9 + local.get $2 f64.const 2.439044879627741e-05 f64.mul f64.const -0.001388676377460993 @@ -9694,58 +9685,58 @@ end local.get $0 f64.promote_f32 - local.tee $8 + local.tee $2 f64.const 3.141592653589793 f64.add - local.get $8 + local.get $2 f64.const 3.141592653589793 f64.sub - local.get $5 + local.get $6 select f64.neg - local.tee $9 - local.get $9 + local.tee $2 + local.get $2 f64.mul - local.tee $7 - local.get $9 + local.tee $4 + local.get $2 f64.mul - local.set $8 + local.set $3 br $folding-inner0 end - local.get $2 + local.get $1 i32.const 1088565717 i32.le_u if - local.get $2 + local.get $1 i32.const 1085271519 i32.le_u if - local.get $5 + local.get $6 if (result f32) local.get $0 f64.promote_f32 f64.const 4.71238898038469 f64.add - local.tee $8 - local.get $8 + local.tee $2 + local.get $2 f64.mul - local.tee $9 - local.get $9 + local.tee $2 + local.get $2 f64.mul - local.set $8 - local.get $9 + local.set $3 + local.get $2 f64.const -0.499999997251031 f64.mul f64.const 1 f64.add - local.get $8 + local.get $3 f64.const 0.04166662332373906 f64.mul f64.add - local.get $8 - local.get $9 + local.get $3 + local.get $2 f64.mul - local.get $9 + local.get $2 f64.const 2.439044879627741e-05 f64.mul f64.const -0.001388676377460993 @@ -9758,26 +9749,26 @@ f64.promote_f32 f64.const 4.71238898038469 f64.sub - local.tee $8 - local.get $8 + local.tee $2 + local.get $2 f64.mul - local.tee $9 - local.get $9 + local.tee $2 + local.get $2 f64.mul - local.set $8 - local.get $9 + local.set $3 + local.get $2 f64.const -0.499999997251031 f64.mul f64.const 1 f64.add - local.get $8 + local.get $3 f64.const 0.04166662332373906 f64.mul f64.add - local.get $8 - local.get $9 + local.get $3 + local.get $2 f64.mul - local.get $9 + local.get $2 f64.const 2.439044879627741e-05 f64.mul f64.const -0.001388676377460993 @@ -9791,24 +9782,24 @@ end local.get $0 f64.promote_f32 - local.tee $8 + local.tee $2 f64.const 6.283185307179586 f64.add - local.get $8 + local.get $2 f64.const 6.283185307179586 f64.sub - local.get $5 + local.get $6 select - local.tee $9 - local.get $9 + local.tee $2 + local.get $2 f64.mul - local.tee $7 - local.get $9 + local.tee $4 + local.get $2 f64.mul - local.set $8 + local.set $3 br $folding-inner0 end - local.get $2 + local.get $1 i32.const 2139095040 i32.ge_u if @@ -9818,29 +9809,28 @@ return end block $~lib/math/rempio2f|inlined.1 (result i32) - local.get $2 - local.tee $1 + local.get $1 i32.const 1305022427 i32.lt_u if local.get $0 f64.promote_f32 - local.tee $8 + local.tee $2 f64.const 0.6366197723675814 f64.mul f64.nearest - local.set $9 - local.get $8 - local.get $9 + local.set $3 + local.get $2 + local.get $3 f64.const 1.5707963109016418 f64.mul f64.sub - local.get $9 + local.get $3 f64.const 1.5893254773528196e-08 f64.mul f64.sub global.set $~lib/math/rempio2f_y - local.get $9 + local.get $3 i32.trunc_f64_s br $~lib/math/rempio2f|inlined.1 end @@ -9849,11 +9839,11 @@ i32.shr_s i32.const 152 i32.sub - local.tee $2 + local.tee $7 i32.const 63 i32.and i64.extend_i32_s - local.set $6 + local.set $8 f64.const 8.515303950216386e-20 local.get $0 f64.promote_f32 @@ -9864,67 +9854,67 @@ i32.const 8388608 i32.or i64.extend_i32_s - local.tee $4 - local.get $2 + local.tee $9 + local.get $7 i32.const 6 i32.shr_s i32.const 3 i32.shl i32.const 5632 i32.add - local.tee $2 + local.tee $1 i64.load - local.get $6 + local.get $8 i64.shl - local.get $2 + local.get $1 i64.load offset=8 - local.tee $3 + local.tee $5 i64.const 64 - local.get $6 + local.get $8 i64.sub i64.shr_u i64.or i64.mul - local.get $6 + local.get $8 i64.const 32 i64.gt_u if (result i64) - local.get $3 - local.get $6 + local.get $5 + local.get $8 i64.const 32 i64.sub i64.shl - local.get $2 + local.get $1 i64.load offset=16 i64.const 96 - local.get $6 + local.get $8 i64.sub i64.shr_u i64.or else - local.get $3 + local.get $5 i64.const 32 - local.get $6 + local.get $8 i64.sub i64.shr_u end - local.get $4 + local.get $9 i64.mul i64.const 32 i64.shr_u i64.add - local.tee $4 + local.tee $5 i64.const 2 i64.shl - local.tee $6 + local.tee $8 f64.convert_i64_s f64.mul global.set $~lib/math/rempio2f_y i32.const 0 - local.get $4 + local.get $5 i64.const 62 i64.shr_u - local.get $6 + local.get $8 i64.const 63 i64.shr_u i64.add @@ -9932,36 +9922,36 @@ local.tee $1 i32.sub local.get $1 - local.get $5 + local.get $6 select end local.set $1 global.get $~lib/math/rempio2f_y - local.set $7 + local.set $2 local.get $1 i32.const 1 i32.and if (result f32) - local.get $7 - local.get $7 + local.get $2 + local.get $2 f64.mul - local.tee $9 - local.get $9 + local.tee $2 + local.get $2 f64.mul - local.set $8 - local.get $9 + local.set $3 + local.get $2 f64.const -0.499999997251031 f64.mul f64.const 1 f64.add - local.get $8 + local.get $3 f64.const 0.04166662332373906 f64.mul f64.add - local.get $8 - local.get $9 + local.get $3 + local.get $2 f64.mul - local.get $9 + local.get $2 f64.const 2.439044879627741e-05 f64.mul f64.const -0.001388676377460993 @@ -9970,27 +9960,27 @@ f64.add f32.demote_f64 else - local.get $7 - local.get $7 - local.get $7 + local.get $2 + local.get $2 + local.get $2 f64.mul - local.tee $9 - local.get $7 + local.tee $3 + local.get $2 f64.mul - local.tee $8 - local.get $9 + local.tee $2 + local.get $3 f64.const 0.008333329385889463 f64.mul f64.const -0.16666666641626524 f64.add f64.mul f64.add - local.get $8 - local.get $9 - local.get $9 + local.get $2 + local.get $3 + local.get $3 f64.mul f64.mul - local.get $9 + local.get $3 f64.const 2.718311493989822e-06 f64.mul f64.const -1.9839334836096632e-04 @@ -10008,21 +9998,21 @@ select return end - local.get $9 - local.get $8 - local.get $7 + local.get $2 + local.get $3 + local.get $4 f64.const 0.008333329385889463 f64.mul f64.const -0.16666666641626524 f64.add f64.mul f64.add - local.get $8 - local.get $7 - local.get $7 + local.get $3 + local.get $4 + local.get $4 f64.mul f64.mul - local.get $7 + local.get $4 f64.const 2.718311493989822e-06 f64.mul f64.const -1.9839334836096632e-04 @@ -10033,50 +10023,50 @@ ) (func $std/math/test_sinh (param $0 f64) (param $1 f64) (param $2 f64) (result i32) (local $3 f64) - (local $4 f64) - (local $5 i32) - (local $6 i64) + (local $4 i32) + (local $5 i64) + (local $6 f64) block $__inlined_func$~lib/math/NativeMath.sinh (result f64) local.get $0 i64.reinterpret_f64 i64.const 9223372036854775807 i64.and - local.tee $6 + local.tee $5 f64.reinterpret_i64 - local.set $3 + local.set $6 f64.const 0.5 local.get $0 f64.copysign - local.set $4 - local.get $6 + local.set $3 + local.get $5 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $5 + local.tee $4 i32.const 1082535490 i32.lt_u if - local.get $3 + local.get $6 call $~lib/math/NativeMath.expm1 - local.set $3 - local.get $5 + local.set $6 + local.get $4 i32.const 1072693248 i32.lt_u if local.get $0 - local.get $5 + local.get $4 i32.const 1045430272 i32.lt_u br_if $__inlined_func$~lib/math/NativeMath.sinh drop - local.get $4 - local.get $3 local.get $3 + local.get $6 + local.get $6 f64.add - local.get $3 - local.get $3 + local.get $6 + local.get $6 f64.mul - local.get $3 + local.get $6 f64.const 1 f64.add f64.div @@ -10084,10 +10074,10 @@ f64.mul br $__inlined_func$~lib/math/NativeMath.sinh end - local.get $4 - local.get $3 - local.get $3 local.get $3 + local.get $6 + local.get $6 + local.get $6 f64.const 1 f64.add f64.div @@ -10095,12 +10085,12 @@ f64.mul br $__inlined_func$~lib/math/NativeMath.sinh end - local.get $3 + local.get $6 f64.const 1416.0996898839683 f64.sub call $~lib/math/NativeMath.exp - local.get $4 - local.get $4 + local.get $3 + local.get $3 f64.add f64.const 2247116418577894884661631e283 f64.mul @@ -10123,45 +10113,45 @@ ) (func $std/math/test_sinhf (param $0 f32) (param $1 f32) (param $2 f32) (result i32) (local $3 f32) - (local $4 f32) - (local $5 i32) + (local $4 i32) + (local $5 f32) block $__inlined_func$~lib/math/NativeMathf.sinh (result f32) local.get $0 i32.reinterpret_f32 i32.const 2147483647 i32.and - local.tee $5 + local.tee $4 f32.reinterpret_i32 - local.set $3 + local.set $5 f32.const 0.5 local.get $0 f32.copysign - local.set $4 - local.get $5 + local.set $3 + local.get $4 i32.const 1118925335 i32.lt_u if - local.get $3 - call $~lib/math/NativeMathf.expm1 - local.set $3 local.get $5 + call $~lib/math/NativeMathf.expm1 + local.set $5 + local.get $4 i32.const 1065353216 i32.lt_u if local.get $0 - local.get $5 + local.get $4 i32.const 964689920 i32.lt_u br_if $__inlined_func$~lib/math/NativeMathf.sinh drop - local.get $4 - local.get $3 local.get $3 + local.get $5 + local.get $5 f32.add - local.get $3 - local.get $3 + local.get $5 + local.get $5 f32.mul - local.get $3 + local.get $5 f32.const 1 f32.add f32.div @@ -10169,10 +10159,10 @@ f32.mul br $__inlined_func$~lib/math/NativeMathf.sinh end - local.get $4 - local.get $3 - local.get $3 local.get $3 + local.get $5 + local.get $5 + local.get $5 f32.const 1 f32.add f32.div @@ -10180,12 +10170,12 @@ f32.mul br $__inlined_func$~lib/math/NativeMathf.sinh end - local.get $3 + local.get $5 f32.const 162.88958740234375 f32.sub call $~lib/math/NativeMathf.exp - local.get $4 - local.get $4 + local.get $3 + local.get $3 f32.add f32.const 1661534994731144841129758e11 f32.mul @@ -10198,25 +10188,25 @@ call $std/math/check ) (func $~lib/math/tan_kern (param $0 f64) (param $1 f64) (param $2 i32) (result f64) - (local $3 f64) - (local $4 f64) + (local $3 i32) + (local $4 i32) (local $5 f64) - (local $6 i32) - (local $7 i32) + (local $6 f64) + (local $7 f64) local.get $0 i64.reinterpret_f64 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $6 + local.tee $3 i32.const 2147483647 i32.and i32.const 1072010280 i32.ge_u - local.tee $7 + local.tee $4 if f64.const 0.7853981633974483 - local.get $6 + local.get $3 i32.const 0 i32.lt_s if (result f64) @@ -10240,22 +10230,22 @@ local.get $0 local.get $0 f64.mul - local.tee $4 - local.get $4 + local.tee $5 + local.get $5 f64.mul - local.set $3 + local.set $6 local.get $0 local.get $1 - local.get $4 - local.get $4 + local.get $5 + local.get $5 local.get $0 f64.mul - local.tee $5 - local.get $3 - local.get $3 - local.get $3 - local.get $3 - local.get $3 + local.tee $7 + local.get $6 + local.get $6 + local.get $6 + local.get $6 + local.get $6 f64.const -1.8558637485527546e-05 f64.mul f64.const 7.817944429395571e-05 @@ -10272,12 +10262,12 @@ f64.mul f64.const 0.13333333333320124 f64.add - local.get $4 - local.get $3 - local.get $3 - local.get $3 - local.get $3 - local.get $3 + local.get $5 + local.get $6 + local.get $6 + local.get $6 + local.get $6 + local.get $6 f64.const 2.590730518636337e-05 f64.mul f64.const 7.140724913826082e-05 @@ -10301,17 +10291,17 @@ f64.add f64.mul f64.add - local.get $5 + local.get $7 f64.const 0.3333333333333341 f64.mul f64.add - local.tee $3 + local.tee $1 f64.add - local.set $1 - local.get $7 + local.set $5 + local.get $4 if f64.const 1 - local.get $6 + local.get $3 i32.const 30 i32.shr_s i32.const 2 @@ -10320,16 +10310,16 @@ f64.sub local.get $2 f64.convert_i32_s - local.tee $4 + local.tee $6 local.get $0 - local.get $1 - local.get $1 + local.get $5 + local.get $5 f64.mul - local.get $1 - local.get $4 + local.get $5 + local.get $6 f64.add f64.div - local.get $3 + local.get $1 f64.sub f64.sub f64.const 2 @@ -10342,32 +10332,32 @@ i32.const 1 i32.eq if - local.get $1 + local.get $5 return end f64.const -1 - local.get $1 + local.get $5 f64.div - local.tee $5 + local.tee $6 i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $4 + local.tee $7 + local.get $6 + local.get $7 local.get $5 - local.get $4 - local.get $1 i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $1 + local.tee $5 f64.mul f64.const 1 f64.add - local.get $4 - local.get $3 + local.get $7 local.get $1 + local.get $5 local.get $0 f64.sub f64.sub @@ -10379,28 +10369,29 @@ (func $~lib/math/NativeMath.tan (param $0 f64) (result f64) (local $1 f64) (local $2 i32) - (local $3 i32) - (local $4 i64) - (local $5 i32) + (local $3 i64) + (local $4 i32) + (local $5 f64) (local $6 f64) - (local $7 f64) + (local $7 i32) local.get $0 i64.reinterpret_f64 - local.tee $4 + local.tee $3 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $2 + local.tee $4 i32.const 31 i32.shr_u - local.get $2 + local.set $2 + local.get $4 i32.const 2147483647 i32.and - local.tee $2 + local.tee $4 i32.const 1072243195 i32.le_u if - local.get $2 + local.get $4 i32.const 1044381696 i32.lt_u if @@ -10413,7 +10404,7 @@ call $~lib/math/tan_kern return end - local.get $2 + local.get $4 i32.const 2146435072 i32.ge_u if @@ -10422,34 +10413,33 @@ f64.sub return end - local.set $2 block $~lib/math/rempio2|inlined.2 - local.get $4 + local.get $3 i64.const 32 i64.shr_u i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $5 + local.tee $4 i32.const 1073928572 i32.lt_u if i32.const 1 - local.set $3 + local.set $7 local.get $2 if (result f64) local.get $0 f64.const 1.5707963267341256 f64.add - local.set $1 + local.set $0 i32.const -1 - local.set $3 - local.get $5 + local.set $7 + local.get $4 i32.const 1073291771 i32.ne if (result f64) - local.get $1 - local.get $1 + local.get $0 + local.get $0 f64.const 6.077100506506192e-11 f64.add local.tee $0 @@ -10457,7 +10447,7 @@ f64.const 6.077100506506192e-11 f64.add else - local.get $1 + local.get $0 f64.const 6.077100506303966e-11 f64.add local.tee $1 @@ -10474,13 +10464,13 @@ local.get $0 f64.const 1.5707963267341256 f64.sub - local.set $1 - local.get $5 + local.set $0 + local.get $4 i32.const 1073291771 i32.ne if (result f64) - local.get $1 - local.get $1 + local.get $0 + local.get $0 f64.const 6.077100506506192e-11 f64.sub local.tee $0 @@ -10488,7 +10478,7 @@ f64.const 6.077100506506192e-11 f64.sub else - local.get $1 + local.get $0 f64.const 6.077100506303966e-11 f64.sub local.tee $1 @@ -10507,28 +10497,28 @@ global.set $~lib/math/rempio2_y1 br $~lib/math/rempio2|inlined.2 end - local.get $5 + local.get $4 i32.const 1094263291 i32.lt_u if - local.get $5 + local.get $4 i32.const 20 i32.shr_u - local.tee $3 + local.tee $2 local.get $0 local.get $0 f64.const 0.6366197723675814 f64.mul f64.nearest - local.tee $6 + local.tee $5 f64.const 1.5707963267341256 f64.mul f64.sub local.tee $0 - local.get $6 + local.get $5 f64.const 6.077100506506192e-11 f64.mul - local.tee $7 + local.tee $6 f64.sub local.tee $1 i64.reinterpret_f64 @@ -10543,25 +10533,25 @@ i32.const 16 i32.gt_u if - local.get $6 + local.get $5 f64.const 2.0222662487959506e-21 f64.mul local.get $0 local.get $0 - local.get $6 + local.get $5 f64.const 6.077100506303966e-11 f64.mul - local.tee $7 + local.tee $1 f64.sub local.tee $0 f64.sub - local.get $7 + local.get $1 f64.sub f64.sub - local.set $7 - local.get $3 + local.set $6 + local.get $2 local.get $0 - local.get $7 + local.get $6 f64.sub local.tee $1 i64.reinterpret_f64 @@ -10576,24 +10566,24 @@ i32.const 49 i32.gt_u if (result f64) - local.get $6 + local.get $5 f64.const 8.4784276603689e-32 f64.mul local.get $0 local.get $0 - local.get $6 + local.get $5 f64.const 2.0222662487111665e-21 f64.mul - local.tee $7 + local.tee $1 f64.sub local.tee $0 f64.sub - local.get $7 + local.get $1 f64.sub f64.sub - local.set $7 + local.set $6 local.get $0 - local.get $7 + local.get $6 f64.sub else local.get $1 @@ -10605,28 +10595,28 @@ local.get $0 local.get $1 f64.sub - local.get $7 + local.get $6 f64.sub global.set $~lib/math/rempio2_y1 - local.get $6 + local.get $5 i32.trunc_f64_s - local.set $3 + local.set $7 br $~lib/math/rempio2|inlined.2 end i32.const 0 - local.get $4 + local.get $3 call $~lib/math/pio2_large_quot - local.tee $3 + local.tee $4 i32.sub - local.get $3 + local.get $4 local.get $2 select - local.set $3 + local.set $7 end global.get $~lib/math/rempio2_y0 global.get $~lib/math/rempio2_y1 i32.const 1 - local.get $3 + local.get $7 i32.const 1 i32.and i32.const 1 @@ -10636,14 +10626,14 @@ ) (func $~lib/math/NativeMathf.tan (param $0 f32) (result f32) (local $1 i32) - (local $2 i32) - (local $3 i64) - (local $4 i64) - (local $5 i32) - (local $6 i64) - (local $7 f64) - (local $8 f64) - (local $9 f64) + (local $2 f64) + (local $3 f64) + (local $4 f64) + (local $5 i64) + (local $6 i32) + (local $7 i32) + (local $8 i64) + (local $9 i64) block $folding-inner1 block $folding-inner0 local.get $0 @@ -10651,15 +10641,15 @@ local.tee $1 i32.const 31 i32.shr_u - local.set $5 + local.set $6 local.get $1 i32.const 2147483647 i32.and - local.tee $2 + local.tee $1 i32.const 1061752794 i32.le_u if - local.get $2 + local.get $1 i32.const 964689920 i32.lt_u if @@ -10668,112 +10658,112 @@ end local.get $0 f64.promote_f32 - local.tee $9 - local.get $9 + local.tee $2 + local.get $2 f64.mul - local.tee $8 - local.get $8 + local.tee $3 + local.get $3 f64.mul - local.set $7 + local.set $4 br $folding-inner0 end - local.get $2 + local.get $1 i32.const 1081824209 i32.le_u if - local.get $2 + local.get $1 i32.const 1075235811 i32.le_u if local.get $0 f64.promote_f32 - local.tee $9 + local.tee $2 f64.const 1.5707963267948966 f64.add - local.get $9 + local.get $2 f64.const 1.5707963267948966 f64.sub - local.get $5 + local.get $6 select - local.tee $9 - local.get $9 + local.tee $2 + local.get $2 f64.mul - local.tee $8 - local.get $8 + local.tee $3 + local.get $3 f64.mul - local.set $7 + local.set $4 br $folding-inner1 else local.get $0 f64.promote_f32 - local.tee $9 + local.tee $2 f64.const 3.141592653589793 f64.add - local.get $9 + local.get $2 f64.const 3.141592653589793 f64.sub - local.get $5 + local.get $6 select - local.tee $9 - local.get $9 + local.tee $2 + local.get $2 f64.mul - local.tee $8 - local.get $8 + local.tee $3 + local.get $3 f64.mul - local.set $7 + local.set $4 br $folding-inner0 end unreachable end - local.get $2 + local.get $1 i32.const 1088565717 i32.le_u if - local.get $2 + local.get $1 i32.const 1085271519 i32.le_u if local.get $0 f64.promote_f32 - local.tee $9 + local.tee $2 f64.const 4.71238898038469 f64.add - local.get $9 + local.get $2 f64.const 4.71238898038469 f64.sub - local.get $5 + local.get $6 select - local.tee $9 - local.get $9 + local.tee $2 + local.get $2 f64.mul - local.tee $8 - local.get $8 + local.tee $3 + local.get $3 f64.mul - local.set $7 + local.set $4 br $folding-inner1 else local.get $0 f64.promote_f32 - local.tee $9 + local.tee $2 f64.const 6.283185307179586 f64.add - local.get $9 + local.get $2 f64.const 6.283185307179586 f64.sub - local.get $5 + local.get $6 select - local.tee $9 - local.get $9 + local.tee $2 + local.get $2 f64.mul - local.tee $8 - local.get $8 + local.tee $3 + local.get $3 f64.mul - local.set $7 + local.set $4 br $folding-inner0 end unreachable end - local.get $2 + local.get $1 i32.const 2139095040 i32.ge_u if @@ -10783,29 +10773,28 @@ return end block $~lib/math/rempio2f|inlined.2 (result i32) - local.get $2 - local.tee $1 + local.get $1 i32.const 1305022427 i32.lt_u if local.get $0 f64.promote_f32 - local.tee $9 + local.tee $2 f64.const 0.6366197723675814 f64.mul f64.nearest - local.set $7 - local.get $9 - local.get $7 + local.set $3 + local.get $2 + local.get $3 f64.const 1.5707963109016418 f64.mul f64.sub - local.get $7 + local.get $3 f64.const 1.5893254773528196e-08 f64.mul f64.sub global.set $~lib/math/rempio2f_y - local.get $7 + local.get $3 i32.trunc_f64_s br $~lib/math/rempio2f|inlined.2 end @@ -10814,11 +10803,11 @@ i32.shr_s i32.const 152 i32.sub - local.tee $2 + local.tee $7 i32.const 63 i32.and i64.extend_i32_s - local.set $6 + local.set $8 f64.const 8.515303950216386e-20 local.get $0 f64.promote_f32 @@ -10829,67 +10818,67 @@ i32.const 8388608 i32.or i64.extend_i32_s - local.tee $4 - local.get $2 + local.tee $9 + local.get $7 i32.const 6 i32.shr_s i32.const 3 i32.shl i32.const 5632 i32.add - local.tee $2 + local.tee $1 i64.load - local.get $6 + local.get $8 i64.shl - local.get $2 + local.get $1 i64.load offset=8 - local.tee $3 + local.tee $5 i64.const 64 - local.get $6 + local.get $8 i64.sub i64.shr_u i64.or i64.mul - local.get $6 + local.get $8 i64.const 32 i64.gt_u if (result i64) - local.get $3 - local.get $6 + local.get $5 + local.get $8 i64.const 32 i64.sub i64.shl - local.get $2 + local.get $1 i64.load offset=16 i64.const 96 - local.get $6 + local.get $8 i64.sub i64.shr_u i64.or else - local.get $3 + local.get $5 i64.const 32 - local.get $6 + local.get $8 i64.sub i64.shr_u end - local.get $4 + local.get $9 i64.mul i64.const 32 i64.shr_u i64.add - local.tee $4 + local.tee $5 i64.const 2 i64.shl - local.tee $6 + local.tee $8 f64.convert_i64_s f64.mul global.set $~lib/math/rempio2f_y i32.const 0 - local.get $4 + local.get $5 i64.const 62 i64.shr_u - local.get $6 + local.get $8 i64.const 63 i64.shr_u i64.add @@ -10897,41 +10886,41 @@ local.tee $1 i32.sub local.get $1 - local.get $5 + local.get $6 select end local.set $1 global.get $~lib/math/rempio2f_y - local.tee $9 - local.get $9 + local.tee $2 + local.get $2 f64.mul - local.tee $8 - local.get $8 + local.tee $3 + local.get $3 f64.mul - local.set $7 + local.set $4 f64.const -1 - local.get $9 - local.get $8 - local.get $9 + local.get $2 + local.get $3 + local.get $2 f64.mul - local.tee $9 - local.get $8 + local.tee $2 + local.get $3 f64.const 0.13339200271297674 f64.mul f64.const 0.3333313950307914 f64.add f64.mul f64.add - local.get $9 - local.get $7 + local.get $2 + local.get $4 f64.mul - local.get $8 + local.get $3 f64.const 0.024528318116654728 f64.mul f64.const 0.05338123784456704 f64.add - local.get $7 - local.get $8 + local.get $4 + local.get $3 f64.const 0.009465647849436732 f64.mul f64.const 0.002974357433599673 @@ -10940,9 +10929,9 @@ f64.add f64.mul f64.add - local.tee $9 + local.tee $2 f64.div - local.get $9 + local.get $2 local.get $1 i32.const 1 i32.and @@ -10950,28 +10939,28 @@ f32.demote_f64 return end - local.get $9 - local.get $8 - local.get $9 + local.get $2 + local.get $3 + local.get $2 f64.mul - local.tee $9 - local.get $8 + local.tee $2 + local.get $3 f64.const 0.13339200271297674 f64.mul f64.const 0.3333313950307914 f64.add f64.mul f64.add - local.get $9 - local.get $7 + local.get $2 + local.get $4 f64.mul - local.get $8 + local.get $3 f64.const 0.024528318116654728 f64.mul f64.const 0.05338123784456704 f64.add - local.get $7 - local.get $8 + local.get $4 + local.get $3 f64.const 0.009465647849436732 f64.mul f64.const 0.002974357433599673 @@ -10984,28 +10973,28 @@ return end f64.const -1 - local.get $9 - local.get $8 - local.get $9 + local.get $2 + local.get $3 + local.get $2 f64.mul - local.tee $9 - local.get $8 + local.tee $2 + local.get $3 f64.const 0.13339200271297674 f64.mul f64.const 0.3333313950307914 f64.add f64.mul f64.add - local.get $9 - local.get $7 + local.get $2 + local.get $4 f64.mul - local.get $8 + local.get $3 f64.const 0.024528318116654728 f64.mul f64.const 0.05338123784456704 f64.add - local.get $7 - local.get $8 + local.get $4 + local.get $3 f64.const 0.009465647849436732 f64.mul f64.const 0.002974357433599673 @@ -11185,11 +11174,11 @@ (local $1 f64) (local $2 f64) (local $3 i64) - (local $4 f64) + (local $4 i32) (local $5 i32) (local $6 i32) (local $7 f64) - (local $8 i32) + (local $8 f64) (local $9 f64) (local $10 f64) local.get $0 @@ -11198,18 +11187,18 @@ i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $5 + local.tee $4 i32.const 31 i32.shr_u local.set $6 - local.get $5 + local.get $4 i32.const 2147483647 i32.and - local.tee $5 + local.tee $4 i32.const 1072243195 i32.le_u if - local.get $5 + local.get $4 i32.const 1044816030 i32.lt_u if @@ -11220,18 +11209,16 @@ return end local.get $0 - local.tee $1 + local.get $0 local.get $0 f64.mul - local.tee $0 - local.set $4 - local.get $1 - local.get $4 - local.get $1 + local.tee $1 + local.tee $2 + local.get $0 f64.mul - local.get $4 - local.get $4 - local.get $4 + local.get $2 + local.get $2 + local.get $2 f64.const 2.7557313707070068e-06 f64.mul f64.const -1.984126982985795e-04 @@ -11239,12 +11226,12 @@ f64.mul f64.const 0.00833333333332249 f64.add - local.get $4 - local.get $4 - local.get $4 + local.get $2 + local.get $2 + local.get $2 f64.mul f64.mul - local.get $4 + local.get $2 f64.const 1.58969099521155e-10 f64.mul f64.const -2.5050760253406863e-08 @@ -11258,7 +11245,7 @@ f64.add global.set $~lib/math/NativeMath.sincos_sin f64.const 1 - local.get $0 + local.get $1 f64.const 0.5 f64.mul local.tee $2 @@ -11269,10 +11256,10 @@ f64.sub local.get $2 f64.sub - local.get $0 - local.get $0 - local.get $0 - local.get $0 + local.get $1 + local.get $1 + local.get $1 + local.get $1 f64.const 2.480158728947673e-05 f64.mul f64.const -0.001388888888887411 @@ -11281,14 +11268,14 @@ f64.const 0.0416666666666666 f64.add f64.mul - local.get $0 - local.get $0 + local.get $1 + local.get $1 f64.mul - local.tee $4 - local.get $4 + local.tee $2 + local.get $2 f64.mul - local.get $0 - local.get $0 + local.get $1 + local.get $1 f64.const -1.1359647557788195e-11 f64.mul f64.const 2.087572321298175e-09 @@ -11299,7 +11286,7 @@ f64.mul f64.add f64.mul - local.get $1 + local.get $0 f64.const 0 f64.mul f64.sub @@ -11308,7 +11295,7 @@ global.set $~lib/math/NativeMath.sincos_cos return end - local.get $5 + local.get $4 i32.const 2139095040 i32.ge_u if @@ -11328,26 +11315,26 @@ i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $8 + local.tee $5 i32.const 1073928572 i32.lt_u if i32.const 1 - local.set $5 + local.set $4 local.get $6 if (result f64) local.get $0 f64.const 1.5707963267341256 f64.add - local.set $1 + local.set $0 i32.const -1 - local.set $5 - local.get $8 + local.set $4 + local.get $5 i32.const 1073291771 i32.ne if (result f64) - local.get $1 - local.get $1 + local.get $0 + local.get $0 f64.const 6.077100506506192e-11 f64.add local.tee $0 @@ -11355,7 +11342,7 @@ f64.const 6.077100506506192e-11 f64.add else - local.get $1 + local.get $0 f64.const 6.077100506303966e-11 f64.add local.tee $1 @@ -11372,13 +11359,13 @@ local.get $0 f64.const 1.5707963267341256 f64.sub - local.set $1 - local.get $8 + local.set $0 + local.get $5 i32.const 1073291771 i32.ne if (result f64) - local.get $1 - local.get $1 + local.get $0 + local.get $0 f64.const 6.077100506506192e-11 f64.sub local.tee $0 @@ -11386,7 +11373,7 @@ f64.const 6.077100506506192e-11 f64.sub else - local.get $1 + local.get $0 f64.const 6.077100506303966e-11 f64.sub local.tee $1 @@ -11403,28 +11390,28 @@ local.get $0 global.set $~lib/math/rempio2_y0 global.set $~lib/math/rempio2_y1 - local.get $5 + local.get $4 br $~lib/math/rempio2|inlined.3 end - local.get $8 + local.get $5 i32.const 1094263291 i32.lt_u if - local.get $8 + local.get $5 i32.const 20 i32.shr_u - local.tee $6 + local.tee $4 local.get $0 local.get $0 f64.const 0.6366197723675814 f64.mul f64.nearest - local.tee $4 + local.tee $7 f64.const 1.5707963267341256 f64.mul f64.sub local.tee $0 - local.get $4 + local.get $7 f64.const 6.077100506506192e-11 f64.mul local.tee $1 @@ -11442,23 +11429,23 @@ i32.const 16 i32.gt_u if - local.get $4 + local.get $7 f64.const 2.0222662487959506e-21 f64.mul local.get $0 local.get $0 - local.get $4 + local.get $7 f64.const 6.077100506303966e-11 f64.mul - local.tee $2 + local.tee $1 f64.sub local.tee $0 f64.sub - local.get $2 + local.get $1 f64.sub f64.sub local.set $1 - local.get $6 + local.get $4 local.get $0 local.get $1 f64.sub @@ -11475,19 +11462,19 @@ i32.const 49 i32.gt_u if (result f64) - local.get $4 + local.get $7 f64.const 8.4784276603689e-32 f64.mul local.get $0 local.get $0 - local.get $4 + local.get $7 f64.const 2.0222662487111665e-21 f64.mul - local.tee $2 + local.tee $1 f64.sub local.tee $0 f64.sub - local.get $2 + local.get $1 f64.sub f64.sub local.set $1 @@ -11507,36 +11494,36 @@ local.get $1 f64.sub global.set $~lib/math/rempio2_y1 - local.get $4 + local.get $7 i32.trunc_f64_s br $~lib/math/rempio2|inlined.3 end i32.const 0 local.get $3 call $~lib/math/pio2_large_quot - local.tee $5 + local.tee $4 i32.sub - local.get $5 + local.get $4 local.get $6 select end - local.set $6 + local.set $4 global.get $~lib/math/rempio2_y0 local.tee $2 local.get $2 f64.mul - local.tee $1 + local.tee $7 local.tee $0 local.get $2 f64.mul - local.set $4 + local.set $1 local.get $2 local.get $0 global.get $~lib/math/rempio2_y1 - local.tee $7 + local.tee $8 f64.const 0.5 f64.mul - local.get $4 + local.get $1 local.get $0 local.get $0 f64.const 2.7557313707070068e-06 @@ -11561,31 +11548,31 @@ f64.mul f64.sub f64.mul - local.get $7 + local.get $8 f64.sub - local.get $4 + local.get $1 f64.const -0.16666666666666632 f64.mul f64.sub f64.sub - local.tee $4 + local.tee $9 local.set $0 f64.const 1 - local.get $1 + local.get $7 f64.const 0.5 f64.mul - local.tee $10 + local.tee $1 f64.sub - local.tee $9 + local.tee $10 f64.const 1 - local.get $9 - f64.sub local.get $10 f64.sub local.get $1 - local.get $1 - local.get $1 - local.get $1 + f64.sub + local.get $7 + local.get $7 + local.get $7 + local.get $7 f64.const 2.480158728947673e-05 f64.mul f64.const -0.001388888888887411 @@ -11594,14 +11581,14 @@ f64.const 0.0416666666666666 f64.add f64.mul - local.get $1 - local.get $1 - f64.mul - local.tee $9 - local.get $9 + local.get $7 + local.get $7 f64.mul + local.tee $1 local.get $1 - local.get $1 + f64.mul + local.get $7 + local.get $7 f64.const -1.1359647557788195e-11 f64.mul f64.const 2.087572321298175e-09 @@ -11613,23 +11600,23 @@ f64.add f64.mul local.get $2 - local.get $7 + local.get $8 f64.mul f64.sub f64.add f64.add local.set $1 - local.get $6 + local.get $4 i32.const 1 i32.and if local.get $1 local.set $0 - local.get $4 + local.get $9 f64.neg local.set $1 end - local.get $6 + local.get $4 i32.const 2 i32.and if (result f64) @@ -11673,14 +11660,14 @@ ) (func $~lib/math/NativeMath.imul (param $0 f64) (param $1 f64) (result f64) (local $2 i64) - (local $3 i64) - (local $4 i32) - (local $5 f64) + (local $3 i32) + (local $4 f64) + (local $5 i64) local.get $0 local.get $1 f64.add - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 f64.sub f64.const 0 f64.ne @@ -11695,14 +11682,14 @@ i64.shr_u i64.const 2047 i64.and - local.tee $3 + local.tee $5 i64.const 1053 i64.le_u if (result i32) local.get $0 i32.trunc_f64_s else - local.get $3 + local.get $5 i64.const 1106 i64.le_u if (result i32) @@ -11712,16 +11699,16 @@ i64.and i64.const 4503599627370496 i64.or - local.get $3 + local.get $5 i64.const 1043 i64.sub i64.shl i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $4 + local.tee $3 i32.sub - local.get $4 + local.get $3 local.get $2 i64.const 63 i64.shr_u @@ -11738,14 +11725,14 @@ i64.shr_u i64.const 2047 i64.and - local.tee $3 + local.tee $5 i64.const 1053 i64.le_u if (result i32) local.get $1 i32.trunc_f64_s else - local.get $3 + local.get $5 i64.const 1106 i64.le_u if (result i32) @@ -11755,16 +11742,16 @@ i64.and i64.const 4503599627370496 i64.or - local.get $3 + local.get $5 i64.const 1043 i64.sub i64.shl i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $4 + local.tee $3 i32.sub - local.get $4 + local.get $3 local.get $2 i64.const 63 i64.shr_u @@ -12183,10 +12170,10 @@ (local $0 f64) (local $1 i32) (local $2 i64) - (local $3 i64) + (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 f32) + (local $5 f32) + (local $6 i64) f64.const 2.718281828459045 global.get $~lib/bindings/Math/E f64.const 0 @@ -44503,28 +44490,28 @@ call $~lib/math/NativeMath.seedRandom end global.get $~lib/math/random_state0_64 - local.set $2 + local.set $6 global.get $~lib/math/random_state1_64 - local.tee $3 + local.tee $2 global.set $~lib/math/random_state0_64 - local.get $3 local.get $2 + local.get $6 i64.const 23 i64.shl - local.get $2 + local.get $6 i64.xor - local.tee $2 + local.tee $6 i64.const 17 i64.shr_u - local.get $2 + local.get $6 i64.xor i64.xor - local.get $3 + local.get $2 i64.const 26 i64.shr_u i64.xor global.set $~lib/math/random_state1_64 - local.get $3 + local.get $2 i64.const 12 i64.shr_u i64.const 4607182418800017408 @@ -44574,24 +44561,24 @@ call $~lib/math/NativeMath.seedRandom end global.get $~lib/math/random_state0_32 - local.tee $5 + local.tee $4 global.get $~lib/math/random_state1_32 i32.xor - local.tee $4 - local.get $5 + local.tee $3 + local.get $4 i32.const 26 i32.rotl i32.xor - local.get $4 + local.get $3 i32.const 9 i32.shl i32.xor global.set $~lib/math/random_state0_32 - local.get $4 + local.get $3 i32.const 13 i32.rotl global.set $~lib/math/random_state1_32 - local.get $5 + local.get $4 i32.const -1640531525 i32.mul i32.const 5 @@ -44605,10 +44592,10 @@ f32.reinterpret_i32 f32.const 1 f32.sub - local.tee $6 + local.tee $5 f32.const 1 f32.lt - local.get $6 + local.get $5 f32.const 0 f32.ge i32.and diff --git a/tests/compiler/std/mod.optimized.wat b/tests/compiler/std/mod.optimized.wat index c2a8060c2c..4a8c2c1ff1 100644 --- a/tests/compiler/std/mod.optimized.wat +++ b/tests/compiler/std/mod.optimized.wat @@ -14,12 +14,12 @@ (start $~start) (func $std/mod/test_fmod (param $0 f64) (param $1 f64) (param $2 f64) (result i32) (local $3 i64) - (local $4 f64) + (local $4 i64) (local $5 i64) (local $6 i64) (local $7 i64) (local $8 i64) - (local $9 i64) + (local $9 f64) block $__inlined_func$std/mod/check (result i32) block $__inlined_func$~lib/math/NativeMath.mod (result f64) local.get $0 @@ -29,128 +29,127 @@ local.get $0 f64.copysign local.get $1 - local.tee $4 f64.abs f64.const 1 f64.eq br_if $__inlined_func$~lib/math/NativeMath.mod drop - local.get $4 + local.get $1 i64.reinterpret_f64 - local.tee $5 + local.tee $8 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.set $7 - local.get $5 + local.set $5 + local.get $8 i64.const 1 i64.shl - local.tee $8 + local.tee $3 i64.eqz local.get $0 i64.reinterpret_f64 - local.tee $3 + local.tee $7 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.tee $6 + local.tee $4 i64.const 2047 i64.eq i32.or - local.get $4 - local.get $4 + local.get $1 + local.get $1 f64.ne i32.or if local.get $0 - local.get $4 - f64.mul - local.tee $1 local.get $1 + f64.mul + local.tee $9 + local.get $9 f64.div br $__inlined_func$~lib/math/NativeMath.mod end - local.get $8 local.get $3 + local.get $7 i64.const 1 i64.shl - local.tee $9 + local.tee $6 i64.ge_u if local.get $0 - local.get $8 - local.get $9 + local.get $3 + local.get $6 i64.ne f64.convert_i32_u f64.mul br $__inlined_func$~lib/math/NativeMath.mod end - local.get $3 + local.get $7 i64.const 63 i64.shr_u - local.set $8 - local.get $6 + local.set $6 + local.get $4 i64.eqz if (result i64) - local.get $3 + local.get $7 i64.const 1 - local.get $6 - local.get $3 + local.get $4 + local.get $7 i64.const 12 i64.shl i64.clz i64.sub - local.tee $6 + local.tee $4 i64.sub i64.shl else - local.get $3 + local.get $7 i64.const 4503599627370495 i64.and i64.const 4503599627370496 i64.or end local.set $3 - local.get $7 + local.get $5 i64.eqz if (result i64) - local.get $5 + local.get $8 i64.const 1 - local.get $7 local.get $5 + local.get $8 i64.const 12 i64.shl i64.clz i64.sub - local.tee $7 + local.tee $5 i64.sub i64.shl else - local.get $5 + local.get $8 i64.const 4503599627370495 i64.and i64.const 4503599627370496 i64.or end - local.set $5 + local.set $7 block $folding-inner0 loop $while-continue|0 - local.get $6 - local.get $7 + local.get $4 + local.get $5 i64.gt_s if local.get $3 - local.get $5 + local.get $7 i64.ge_u if (result i64) local.get $3 - local.get $5 + local.get $7 i64.eq br_if $folding-inner0 local.get $3 - local.get $5 + local.get $7 i64.sub else local.get $3 @@ -158,24 +157,24 @@ i64.const 1 i64.shl local.set $3 - local.get $6 + local.get $4 i64.const 1 i64.sub - local.set $6 + local.set $4 br $while-continue|0 end end - local.get $6 + local.get $4 local.get $3 - local.get $5 + local.get $7 i64.ge_u if local.get $3 - local.get $5 + local.get $7 i64.eq br_if $folding-inner0 local.get $3 - local.get $5 + local.get $7 i64.sub local.set $3 end @@ -183,11 +182,11 @@ i64.const 11 i64.shl i64.clz - local.tee $6 + local.tee $4 i64.sub local.set $5 local.get $3 - local.get $6 + local.get $4 i64.shl local.set $3 local.get $5 @@ -208,7 +207,7 @@ i64.sub i64.shr_u end - local.get $8 + local.get $6 i64.const 63 i64.shl i64.or @@ -219,8 +218,8 @@ f64.const 0 f64.mul end - local.tee $1 - local.get $1 + local.tee $9 + local.get $9 f64.ne local.get $2 local.get $2 @@ -231,7 +230,7 @@ local.get $2 f64.div f64.const 1 - local.get $1 + local.get $9 f64.div f64.eq local.get $2 @@ -239,14 +238,14 @@ f64.eq br_if $__inlined_func$std/mod/check drop - local.get $1 local.get $2 + local.get $9 f64.eq end if (result i32) block $__inlined_func$std/mod/check0 (result i32) local.get $0 - local.get $4 + local.get $1 call $std/mod/mod local.tee $0 local.get $0 @@ -299,31 +298,31 @@ drop local.get $1 i32.reinterpret_f32 - local.tee $4 + local.tee $8 i32.const 23 i32.shr_u i32.const 255 i32.and - local.set $6 + local.set $5 i32.const 1 local.get $1 local.get $1 f32.ne local.get $0 i32.reinterpret_f32 - local.tee $3 + local.tee $7 i32.const 23 i32.shr_u i32.const 255 i32.and - local.tee $5 + local.tee $4 i32.const 255 i32.eq i32.const 1 - local.get $4 + local.get $8 i32.const 1 i32.shl - local.tee $7 + local.tee $3 select select if @@ -335,83 +334,83 @@ f32.div br $__inlined_func$~lib/math/NativeMathf.mod end - local.get $7 local.get $3 + local.get $7 i32.const 1 i32.shl - local.tee $8 + local.tee $6 i32.ge_u if local.get $0 - local.get $7 - local.get $8 + local.get $3 + local.get $6 i32.ne f32.convert_i32_u f32.mul br $__inlined_func$~lib/math/NativeMathf.mod end - local.get $3 + local.get $7 i32.const -2147483648 i32.and - local.set $7 - local.get $5 + local.set $6 + local.get $4 if (result i32) - local.get $3 + local.get $7 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $3 + local.get $7 i32.const 1 - local.get $5 - local.get $3 + local.get $4 + local.get $7 i32.const 9 i32.shl i32.clz i32.sub - local.tee $5 + local.tee $4 i32.sub i32.shl end local.set $3 - local.get $6 + local.get $5 if (result i32) - local.get $4 + local.get $8 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $4 + local.get $8 i32.const 1 - local.get $6 - local.get $4 + local.get $5 + local.get $8 i32.const 9 i32.shl i32.clz i32.sub - local.tee $6 + local.tee $5 i32.sub i32.shl end - local.set $4 + local.set $7 block $folding-inner0 loop $while-continue|0 + local.get $4 local.get $5 - local.get $6 i32.gt_s if local.get $3 - local.get $4 + local.get $7 i32.ge_u if (result i32) local.get $3 - local.get $4 + local.get $7 i32.eq br_if $folding-inner0 local.get $3 - local.get $4 + local.get $7 i32.sub else local.get $3 @@ -419,24 +418,24 @@ i32.const 1 i32.shl local.set $3 - local.get $5 + local.get $4 i32.const 1 i32.sub - local.set $5 + local.set $4 br $while-continue|0 end end - local.get $5 - local.get $3 local.get $4 + local.get $3 + local.get $7 i32.ge_u if local.get $3 - local.get $4 + local.get $7 i32.eq br_if $folding-inner0 local.get $3 - local.get $4 + local.get $7 i32.sub local.set $3 end @@ -444,32 +443,32 @@ i32.const 8 i32.shl i32.clz - local.tee $5 + local.tee $4 i32.sub - local.set $4 + local.set $5 local.get $3 - local.get $5 + local.get $4 i32.shl local.set $3 - local.get $4 + local.get $5 i32.const 0 i32.gt_s if (result i32) local.get $3 i32.const 8388608 i32.sub - local.get $4 + local.get $5 i32.const 23 i32.shl i32.or else local.get $3 i32.const 1 - local.get $4 + local.get $5 i32.sub i32.shr_u end - local.get $7 + local.get $6 i32.or f32.reinterpret_i32 br $__inlined_func$~lib/math/NativeMathf.mod diff --git a/tests/compiler/std/new.optimized.wat b/tests/compiler/std/new.optimized.wat index f5fabf15f7..09773ad6bf 100644 --- a/tests/compiler/std/new.optimized.wat +++ b/tests/compiler/std/new.optimized.wat @@ -172,19 +172,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -209,9 +209,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -219,17 +219,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -517,10 +517,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -532,15 +532,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -570,7 +570,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -883,7 +883,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17860 i32.ge_u if @@ -893,20 +893,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -919,8 +919,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -956,9 +955,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1060,7 +1059,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $2 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1114,17 +1113,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz if memory.size - local.tee $1 + local.tee $0 i32.const 4 - local.get $2 - i32.load offset=1568 local.get $1 + i32.load offset=1568 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1137,16 +1136,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $0 + local.tee $3 local.get $0 - local.get $1 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $0 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1154,15 +1153,15 @@ unreachable end end - local.get $2 local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1189,22 +1188,22 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $1 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if local.get $0 - local.get $1 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1213,19 +1212,19 @@ local.get $0 i32.const 32 i32.add - local.tee $1 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 local.get $1 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $1 + local.get $3 i32.const -2 i32.and i32.store @@ -1285,64 +1284,64 @@ local.get $0 i32.const 20 i32.add - local.tee $1 + local.tee $0 i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 8 i32.add - local.tee $0 + local.tee $1 i32.const 1 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=2 - local.get $0 + local.get $1 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $0 + local.get $1 i32.const 3 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=3 - local.get $0 + local.get $1 i32.const 4 i32.sub i32.const 0 i32.store8 - local.get $4 - local.get $1 + local.get $2 + local.get $0 i32.store - local.get $1 + local.get $0 i32.const 1 i32.store - local.get $1 + local.get $0 f32.const 2 f32.store offset=4 - local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.load i32.const 1 i32.add i32.store - local.get $1 + local.get $0 f32.const 3 f32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 global.set $std/new/aClass ) (func $~lib/rt/__visit_members (param $0 i32) @@ -1388,19 +1387,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1410,22 +1409,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17860 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1439,9 +1438,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1451,23 +1450,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1475,7 +1474,7 @@ else i32.const 1440 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1485,7 +1484,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1444 @@ -1500,28 +1499,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/std/object.optimized.wat b/tests/compiler/std/object.optimized.wat index 4f82e9c7b1..653ebbcdb2 100644 --- a/tests/compiler/std/object.optimized.wat +++ b/tests/compiler/std/object.optimized.wat @@ -107,14 +107,14 @@ if local.get $3 i32.load16_u - local.tee $2 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $2 i32.ne if - local.get $2 local.get $4 + local.get $2 i32.sub br $__inlined_func$~lib/util/string/compareImpl end diff --git a/tests/compiler/std/operator-overloading.optimized.wat b/tests/compiler/std/operator-overloading.optimized.wat index 31b8b1f0b4..f68949bd9f 100644 --- a/tests/compiler/std/operator-overloading.optimized.wat +++ b/tests/compiler/std/operator-overloading.optimized.wat @@ -228,19 +228,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -265,9 +265,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -275,17 +275,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -573,10 +573,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -588,15 +588,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -626,7 +626,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -939,7 +939,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17956 i32.ge_u if @@ -949,20 +949,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -975,8 +975,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1012,9 +1011,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1118,17 +1117,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size - local.tee $2 + local.tee $1 i32.const 4 - local.get $3 - i32.load offset=1568 local.get $2 + i32.load offset=1568 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1141,16 +1140,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $1 - local.get $2 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1158,15 +1157,15 @@ unreachable end end - local.get $3 local.get $2 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1193,22 +1192,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $2 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $2 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1217,19 +1216,19 @@ local.get $1 i32.const 32 i32.add - local.tee $2 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $2 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $2 + local.get $4 i32.const -2 i32.and i32.store @@ -1289,42 +1288,42 @@ local.get $1 i32.const 20 i32.add - local.tee $1 + local.tee $0 i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 8 i32.add - local.tee $0 + local.tee $1 i32.const 1 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=2 - local.get $0 + local.get $1 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $0 + local.get $1 i32.const 3 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=3 - local.get $0 + local.get $1 i32.const 4 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $0 ) (func $~lib/math/ipow32 (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -2157,21 +2156,21 @@ global.set $std/operator-overloading/a2 global.get $~lib/memory/__stack_pointer global.get $std/operator-overloading/a1 - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer global.get $std/operator-overloading/a2 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load - i32.add local.get $1 - i32.load offset=4 + i32.load + i32.add local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.add call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/a @@ -3431,21 +3430,21 @@ global.set $std/operator-overloading/ais2 global.get $~lib/memory/__stack_pointer global.get $std/operator-overloading/ais1 - local.tee $1 + local.tee $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer global.get $std/operator-overloading/ais2 - local.tee $0 + local.tee $1 i32.store offset=8 - local.get $1 - i32.load local.get $0 i32.load - i32.add local.get $1 - i32.load offset=4 + i32.load + i32.add local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.add call $std/operator-overloading/TesterInlineStatic#constructor global.set $std/operator-overloading/ais @@ -3494,21 +3493,21 @@ global.set $std/operator-overloading/aii2 global.get $~lib/memory/__stack_pointer global.get $std/operator-overloading/aii1 - local.tee $1 + local.tee $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $std/operator-overloading/aii2 - local.tee $0 + local.tee $1 i32.store offset=12 - local.get $1 - i32.load local.get $0 i32.load - i32.add local.get $1 - i32.load offset=4 + i32.load + i32.add local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.add call $std/operator-overloading/TesterInlineInstance#constructor global.set $std/operator-overloading/aii @@ -3660,19 +3659,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -3682,22 +3681,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17956 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -3711,9 +3710,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -3723,23 +3722,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -3747,7 +3746,7 @@ else i32.const 1520 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -3757,7 +3756,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1524 @@ -3772,28 +3771,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/std/pointer.optimized.wat b/tests/compiler/std/pointer.optimized.wat index 7be887b047..cd6f83f484 100644 --- a/tests/compiler/std/pointer.optimized.wat +++ b/tests/compiler/std/pointer.optimized.wat @@ -20,13 +20,13 @@ (local $4 i32) (local $5 i32) i32.const 8 - local.set $4 + local.set $5 loop $while-continue|0 local.get $1 i32.const 3 i32.and i32.const 0 - local.get $4 + local.get $5 select if local.get $0 @@ -43,10 +43,10 @@ local.get $3 i32.load8_u i32.store8 - local.get $4 + local.get $5 i32.const 1 i32.sub - local.set $4 + local.set $5 br $while-continue|0 end end @@ -56,7 +56,7 @@ i32.eqz if loop $while-continue|1 - local.get $4 + local.get $5 i32.const 16 i32.ge_u if @@ -84,14 +84,14 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|1 end end - local.get $4 + local.get $5 i32.const 8 i32.and if @@ -112,7 +112,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 4 i32.and if @@ -129,7 +129,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 2 i32.and if @@ -146,7 +146,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 1 i32.and if @@ -157,7 +157,7 @@ end return end - local.get $4 + local.get $5 i32.const 32 i32.ge_u if @@ -174,7 +174,7 @@ end local.get $1 i32.load - local.set $5 + local.set $4 local.get $0 local.get $1 i32.load8_u @@ -201,12 +201,12 @@ local.get $3 i32.load8_u i32.store8 - local.get $4 + local.get $5 i32.const 3 i32.sub - local.set $4 + local.set $5 loop $while-continue|3 - local.get $4 + local.get $5 i32.const 17 i32.ge_u if @@ -216,7 +216,7 @@ local.tee $2 i32.const 8 i32.shl - local.get $5 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -246,7 +246,7 @@ local.get $0 local.get $1 i32.load offset=13 - local.tee $5 + local.tee $4 i32.const 8 i32.shl local.get $2 @@ -262,10 +262,10 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|3 end end @@ -273,7 +273,7 @@ end local.get $1 i32.load - local.set $5 + local.set $4 local.get $0 local.get $1 i32.load8_u @@ -292,12 +292,12 @@ local.get $2 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $5 i32.const 2 i32.sub - local.set $4 + local.set $5 loop $while-continue|4 - local.get $4 + local.get $5 i32.const 18 i32.ge_u if @@ -307,7 +307,7 @@ local.tee $2 i32.const 16 i32.shl - local.get $5 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -337,7 +337,7 @@ local.get $0 local.get $1 i32.load offset=14 - local.tee $5 + local.tee $4 i32.const 16 i32.shl local.get $2 @@ -353,10 +353,10 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|4 end end @@ -364,7 +364,7 @@ end local.get $1 i32.load - local.set $5 + local.set $4 local.get $0 local.tee $2 i32.const 1 @@ -379,12 +379,12 @@ local.get $3 i32.load8_u i32.store8 - local.get $4 + local.get $5 i32.const 1 i32.sub - local.set $4 + local.set $5 loop $while-continue|5 - local.get $4 + local.get $5 i32.const 19 i32.ge_u if @@ -394,7 +394,7 @@ local.tee $2 i32.const 24 i32.shl - local.get $5 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -424,7 +424,7 @@ local.get $0 local.get $1 i32.load offset=15 - local.tee $5 + local.tee $4 i32.const 24 i32.shl local.get $2 @@ -440,16 +440,16 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|5 end end end end - local.get $4 + local.get $5 i32.const 16 i32.and if @@ -458,137 +458,133 @@ i32.load8_u i32.store8 local.get $0 - local.tee $3 - i32.const 2 - i32.add - local.set $0 local.get $1 - local.tee $2 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $2 i32.load8_u offset=1 i32.store8 offset=1 local.get $0 + i32.const 2 + i32.add + local.tee $2 local.get $1 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $0 - local.tee $3 + local.get $2 + local.tee $1 i32.const 2 i32.add - local.set $0 - local.get $1 - local.tee $2 + local.set $2 + local.get $3 + local.tee $0 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $2 + local.set $3 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $1 + local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $0 - local.tee $3 + local.get $2 + local.tee $1 i32.const 2 i32.add - local.set $0 - local.get $1 - local.tee $2 + local.set $2 + local.get $3 + local.tee $0 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $2 + local.set $3 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $1 + local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $0 - local.tee $3 + local.get $2 + local.tee $1 i32.const 2 i32.add - local.set $0 - local.get $1 - local.tee $2 + local.set $2 + local.get $3 + local.tee $0 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $2 + local.set $3 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $1 + local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $0 - local.tee $3 + local.get $2 + local.tee $1 i32.const 2 i32.add - local.set $0 - local.get $1 - local.tee $2 + local.set $2 + local.get $3 + local.tee $0 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $2 + local.set $3 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $1 + local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $0 - local.tee $3 + local.get $2 + local.tee $1 i32.const 2 i32.add - local.set $0 - local.get $1 - local.tee $2 + local.set $2 + local.get $3 + local.tee $0 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $2 + local.set $3 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $1 + local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $0 - local.tee $3 + local.get $2 + local.tee $1 i32.const 2 i32.add - local.set $0 - local.get $1 - local.tee $2 + local.set $2 + local.get $3 + local.tee $0 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $2 + local.set $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $1 + local.get $2 + local.get $4 i32.load8_u i32.store8 - local.get $0 + local.get $2 local.tee $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $4 local.tee $2 i32.const 2 i32.add @@ -598,7 +594,7 @@ i32.load8_u offset=1 i32.store8 offset=1 end - local.get $4 + local.get $5 i32.const 8 i32.and if @@ -607,65 +603,61 @@ i32.load8_u i32.store8 local.get $0 - local.tee $3 - i32.const 2 - i32.add - local.set $0 local.get $1 - local.tee $2 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $2 i32.load8_u offset=1 i32.store8 offset=1 local.get $0 + i32.const 2 + i32.add + local.tee $2 local.get $1 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $0 - local.tee $3 + local.get $2 + local.tee $1 i32.const 2 i32.add - local.set $0 - local.get $1 - local.tee $2 + local.set $2 + local.get $3 + local.tee $0 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $2 + local.set $3 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $1 + local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $0 - local.tee $3 + local.get $2 + local.tee $1 i32.const 2 i32.add - local.set $0 - local.get $1 - local.tee $2 + local.set $2 + local.get $3 + local.tee $0 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $2 + local.set $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $1 + local.get $2 + local.get $4 i32.load8_u i32.store8 - local.get $0 + local.get $2 local.tee $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $4 local.tee $2 i32.const 2 i32.add @@ -675,7 +667,7 @@ i32.load8_u offset=1 i32.store8 offset=1 end - local.get $4 + local.get $5 i32.const 4 i32.and if @@ -684,30 +676,20 @@ i32.load8_u i32.store8 local.get $0 - local.tee $3 - i32.const 2 - i32.add - local.set $0 local.get $1 - local.tee $2 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $2 i32.load8_u offset=1 i32.store8 offset=1 local.get $0 - local.get $1 - i32.load8_u - i32.store8 - local.get $0 - local.tee $3 i32.const 2 i32.add - local.set $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add local.tee $2 + i32.load8_u + i32.store8 + local.get $2 i32.const 2 i32.add local.set $1 @@ -715,8 +697,12 @@ local.get $2 i32.load8_u offset=1 i32.store8 offset=1 + local.get $3 + i32.const 2 + i32.add + local.set $0 end - local.get $4 + local.get $5 i32.const 2 i32.and if @@ -739,7 +725,7 @@ i32.load8_u offset=1 i32.store8 offset=1 end - local.get $4 + local.get $5 i32.const 1 i32.and if @@ -835,10 +821,10 @@ i32.add global.set $std/pointer/one global.get $std/pointer/one - local.tee $1 + local.tee $0 global.set $std/pointer/nextOne global.get $std/pointer/nextOne - local.get $1 + local.get $0 i32.ne if i32.const 0 @@ -963,17 +949,17 @@ i32.sub local.set $4 local.get $0 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 br $while-continue|0 @@ -1008,17 +994,17 @@ local.get $4 if local.get $0 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 local.get $4 @@ -1253,12 +1239,12 @@ unreachable end global.get $std/pointer/buf - local.tee $3 + local.tee $0 i32.const 8 i32.add f32.const 1.2999999523162842 f32.store - local.get $3 + local.get $0 f32.load offset=8 f32.const 1.2999999523162842 f32.ne @@ -1295,10 +1281,10 @@ unreachable end global.get $std/pointer/buf - local.tee $2 + local.tee $0 f32.const 1.399999976158142 f32.store - local.get $2 + local.get $0 f32.load f32.const 1.399999976158142 f32.ne diff --git a/tests/compiler/std/set.optimized.wat b/tests/compiler/std/set.optimized.wat index aea22b79a6..1030fe654a 100644 --- a/tests/compiler/std/set.optimized.wat +++ b/tests/compiler/std/set.optimized.wat @@ -126,7 +126,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -149,7 +149,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -159,15 +159,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -208,20 +208,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -316,19 +316,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -353,9 +353,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -363,17 +363,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -661,10 +661,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -676,15 +676,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -714,7 +714,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1027,7 +1027,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 18220 i32.ge_u if @@ -1037,20 +1037,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1063,8 +1063,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1291,14 +1290,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1308,17 +1307,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1334,22 +1333,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1360,11 +1359,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1469,7 +1468,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $5 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1495,34 +1494,34 @@ i32.const 4 i32.sub end - local.tee $2 + local.tee $5 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $2 i32.eqz if memory.size - local.tee $4 - local.get $2 + local.tee $2 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $2 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $2 + local.get $5 i32.add else - local.get $2 + local.get $5 end i32.const 4 - local.get $5 + local.get $3 i32.load offset=1568 - local.get $4 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1536,16 +1535,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $3 + local.tee $4 + local.get $2 local.get $4 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1553,18 +1552,18 @@ unreachable end end - local.get $5 - local.get $4 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $3 local.get $5 - local.get $2 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $2 i32.eqz if i32.const 0 @@ -1575,11 +1574,11 @@ unreachable end end - local.get $3 + local.get $2 i32.load i32.const -4 i32.and - local.get $2 + local.get $5 i32.lt_u if i32.const 0 @@ -1589,13 +1588,13 @@ call $~lib/builtins/abort unreachable end - local.get $5 local.get $3 + local.get $2 call $~lib/rt/tlsf/removeBlock - local.get $3 - i32.load - local.set $4 local.get $2 + i32.load + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1608,89 +1607,89 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 i32.const -4 i32.and - local.get $2 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.const 2 i32.and - local.get $2 + local.get $5 i32.or i32.store + local.get $5 local.get $2 - local.get $3 i32.const 4 i32.add i32.add - local.tee $2 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $3 local.get $5 - local.get $2 call $~lib/rt/tlsf/insertBlock else - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.const -2 i32.and i32.store - local.get $3 + local.get $2 i32.const 4 i32.add - local.get $3 + local.get $2 i32.load i32.const -4 i32.and i32.add - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.load i32.const -3 i32.and i32.store end - local.get $3 + local.get $2 local.get $1 i32.store offset=12 - local.get $3 + local.get $2 local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace local.tee $1 i32.load offset=8 - local.set $2 - local.get $3 + local.set $3 + local.get $2 global.get $~lib/rt/itcms/white local.get $1 i32.or i32.store offset=4 - local.get $3 local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $3 + local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total - local.get $3 + local.get $2 i32.load i32.const -4 i32.and @@ -1698,7 +1697,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $3 + local.get $2 i32.const 20 i32.add local.tee $1 @@ -1730,26 +1729,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -1757,33 +1756,33 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $5 + local.tee $4 local.get $0 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $8 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 - local.get $5 - local.get $8 + local.get $4 + local.get $7 i32.ne if - local.get $5 + local.get $4 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $5 + local.get $4 i32.load8_s - local.tee $4 + local.tee $8 i32.store8 local.get $2 - local.get $4 + local.get $8 i32.extend8_s i32.const -1028477379 i32.mul @@ -1793,22 +1792,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 16 i32.shr_u i32.xor @@ -1816,12 +1815,12 @@ i32.and i32.const 2 i32.shl - local.get $6 + local.get $5 i32.add - local.tee $4 + local.tee $8 i32.load i32.store offset=4 - local.get $4 + local.get $8 local.get $2 i32.store local.get $2 @@ -1829,20 +1828,20 @@ i32.add local.set $2 end - local.get $5 + local.get $4 i32.const 8 i32.add - local.set $5 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $6 + local.get $5 i32.store - local.get $6 + local.get $5 if local.get $0 - local.get $6 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -1858,7 +1857,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -1904,7 +1903,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $4 + local.tee $3 local.get $0 i32.load offset=4 i32.and @@ -1919,7 +1918,7 @@ if local.get $2 i32.load offset=4 - local.tee $3 + local.tee $4 i32.const 1 i32.and if (result i32) @@ -1933,7 +1932,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $3 + local.get $4 i32.const -2 i32.and local.set $2 @@ -1977,18 +1976,18 @@ end local.get $0 i32.load offset=8 - local.set $3 + local.set $2 local.get $0 local.get $0 i32.load offset=16 - local.tee $2 + local.tee $4 i32.const 1 i32.add i32.store offset=16 - local.get $2 + local.get $4 i32.const 3 i32.shl - local.get $3 + local.get $2 i32.add local.tee $2 local.get $1 @@ -2004,7 +2003,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $4 + local.get $3 i32.and i32.const 2 i32.shl @@ -2030,17 +2029,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2186,19 +2185,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2213,7 +2212,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -2224,10 +2223,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2235,10 +2234,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -2249,7 +2248,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2304,7 +2303,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -2315,10 +2314,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2326,10 +2325,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -2340,7 +2339,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2366,17 +2365,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2391,7 +2390,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -2402,10 +2401,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2413,10 +2412,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -2427,7 +2426,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2464,131 +2463,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -2605,59 +2608,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -2766,29 +2773,28 @@ select local.get $2 i32.shl - local.set $1 + local.set $6 block $__inlined_func$~lib/rt/itcms/__renew (result i32) local.get $3 - if (result i32) + if local.get $8 i32.const 1 i32.shl - local.tee $2 + local.tee $1 i32.const 1073741820 - local.get $2 + local.get $1 i32.const 1073741820 i32.lt_u select - local.tee $2 - local.get $1 + local.tee $1 + local.get $6 local.get $1 - local.get $2 - i32.lt_u + local.get $6 + i32.gt_u select - else - local.get $1 + local.set $6 end - local.tee $6 + local.get $6 local.get $4 local.tee $2 i32.const 20 @@ -2871,17 +2877,17 @@ i32.sub local.set $7 local.get $3 - local.tee $5 + local.tee $4 i32.const 1 i32.add local.set $3 local.get $1 - local.tee $4 + local.tee $5 i32.const 1 i32.add local.set $1 - local.get $5 local.get $4 + local.get $5 i32.load8_u i32.store8 br $while-continue|0 @@ -2916,17 +2922,17 @@ local.get $7 if local.get $3 - local.tee $5 + local.tee $4 i32.const 1 i32.add local.set $3 local.get $1 - local.tee $4 + local.tee $5 i32.const 1 i32.add local.set $1 - local.get $5 local.get $4 + local.get $5 i32.load8_u i32.store8 local.get $7 @@ -3189,14 +3195,14 @@ i32.load offset=4 i32.const 1 i32.shr_u - local.tee $2 + local.tee $1 i32.const 1 i32.add i32.const 4 local.get $0 i32.load offset=20 - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.lt_u select @@ -3216,7 +3222,7 @@ end if local.get $0 - local.get $2 + local.get $1 call $~lib/set/Set#rehash end ) @@ -3280,15 +3286,15 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 i32.const 0 i32.store offset=8 - local.get $3 + local.get $2 call $~lib/set/Set#constructor - local.tee $3 + local.tee $7 i32.store loop $for-loop|1 local.get $1 @@ -3296,9 +3302,9 @@ i32.const 100 i32.lt_s if - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $1 i32.extend8_s @@ -3341,7 +3347,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -3355,7 +3361,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $6 + local.get $5 i32.const -2 i32.and local.set $2 @@ -3374,12 +3380,12 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 local.get $1 call $~lib/set/Set#add - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $1 i32.extend8_s @@ -3422,7 +3428,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -3436,7 +3442,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find1 - local.get $6 + local.get $5 i32.const -2 i32.and local.set $2 @@ -3463,7 +3469,7 @@ br $for-loop|1 end end - local.get $3 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -3483,9 +3489,9 @@ i32.const 100 i32.lt_s if - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $1 i32.extend8_s @@ -3528,7 +3534,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -3542,7 +3548,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find4 - local.get $6 + local.get $5 i32.const -2 i32.and local.set $2 @@ -3562,12 +3568,12 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 local.get $1 call $~lib/set/Set#add - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $1 i32.extend8_s @@ -3610,7 +3616,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -3624,7 +3630,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find7 - local.get $6 + local.get $5 i32.const -2 i32.and local.set $2 @@ -3651,7 +3657,7 @@ br $for-loop|3 end end - local.get $3 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -3674,17 +3680,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $8 i32.const 0 i32.store - local.get $3 + local.get $7 i32.load offset=8 - local.set $10 - local.get $3 - i32.load offset=16 - local.tee $11 local.set $5 - local.get $6 + local.get $7 + i32.load offset=16 + local.tee $6 + local.set $9 + local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -3700,21 +3706,21 @@ i32.const 16 i32.const 4 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $10 i32.store - local.get $1 + local.get $10 i32.const 0 i32.store - local.get $1 + local.get $10 i32.const 0 i32.store offset=4 - local.get $1 + local.get $10 i32.const 0 i32.store offset=8 - local.get $1 + local.get $10 i32.const 0 i32.store offset=12 - local.get $5 + local.get $9 i32.const 1073741820 i32.gt_u if @@ -3726,64 +3732,64 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $9 i32.const 8 - local.get $5 + local.get $9 i32.const 8 i32.gt_u select - local.tee $8 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $11 i32.store offset=4 - local.get $2 - local.get $8 - call $~lib/memory/memory.fill + local.get $11 local.get $1 - local.get $2 + call $~lib/memory/memory.fill + local.get $10 + local.get $11 i32.store - local.get $2 + local.get $11 if - local.get $1 - local.get $2 + local.get $10 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 - local.get $2 + local.get $10 + local.get $11 i32.store offset=4 + local.get $10 local.get $1 - local.get $8 i32.store offset=8 - local.get $1 - local.get $5 + local.get $10 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 - local.get $1 + local.get $8 + local.get $10 i32.store loop $for-loop|0 - local.get $7 - local.get $11 + local.get $4 + local.get $6 i32.lt_s if - local.get $7 + local.get $4 i32.const 3 i32.shl - local.get $10 + local.get $5 i32.add - local.tee $2 + local.tee $1 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $1 + local.get $10 local.get $0 - local.get $2 + local.get $1 i32.load8_s call $~lib/array/Array#__set local.get $0 @@ -3791,41 +3797,41 @@ i32.add local.set $0 end - local.get $7 + local.get $4 i32.const 1 i32.add - local.set $7 + local.set $4 br $for-loop|0 end end - local.get $1 + local.get $10 local.get $0 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $1 + local.get $10 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $10 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $5 + local.tee $1 i32.store offset=8 loop $for-loop|4 - local.get $1 + local.get $10 i32.load offset=12 - local.get $4 + local.get $3 i32.gt_s if - local.get $1 - local.get $4 + local.get $10 + local.get $3 call $~lib/array/Array#__get - local.tee $7 + local.tee $4 i32.extend8_s i32.const -1028477379 i32.mul @@ -3850,9 +3856,9 @@ i32.const -1028477379 i32.mul local.set $2 - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $2 i32.const 16 @@ -3871,7 +3877,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -3879,13 +3885,13 @@ else local.get $2 i32.load8_u - local.get $7 + local.get $4 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $6 + local.get $0 i32.const -2 i32.and local.set $2 @@ -3905,21 +3911,21 @@ call $~lib/builtins/abort unreachable end - local.get $5 local.get $1 - local.get $4 + local.get $10 + local.get $3 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|4 end end - local.get $5 + local.get $1 i32.load offset=20 - local.get $3 + local.get $7 i32.load offset=20 i32.ne if @@ -3931,18 +3937,18 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|6 - local.get $4 + local.get $3 i32.extend8_s i32.const 50 i32.lt_s if - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.extend8_s i32.const -1028477379 i32.mul @@ -3983,7 +3989,7 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -3991,13 +3997,13 @@ else local.get $1 i32.load8_u - local.get $4 + local.get $3 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find13 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -4017,14 +4023,14 @@ call $~lib/builtins/abort unreachable end + local.get $7 local.get $3 - local.get $4 call $~lib/set/Set#delete - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.extend8_s i32.const -1028477379 i32.mul @@ -4065,7 +4071,7 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -4073,13 +4079,13 @@ else local.get $1 i32.load8_u - local.get $4 + local.get $3 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find16 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -4098,14 +4104,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|6 end end - local.get $3 + local.get $7 i32.load offset=20 i32.const 50 i32.ne @@ -4118,18 +4124,18 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|8 - local.get $4 + local.get $3 i32.extend8_s i32.const 50 i32.lt_s if - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.extend8_s i32.const -1028477379 i32.mul @@ -4170,7 +4176,7 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -4178,13 +4184,13 @@ else local.get $1 i32.load8_u - local.get $4 + local.get $3 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find19 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -4203,14 +4209,14 @@ call $~lib/builtins/abort unreachable end + local.get $7 local.get $3 - local.get $4 call $~lib/set/Set#add - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.extend8_s i32.const -1028477379 i32.mul @@ -4251,7 +4257,7 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -4259,13 +4265,13 @@ else local.get $1 i32.load8_u - local.get $4 + local.get $3 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find22 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -4285,14 +4291,14 @@ call $~lib/builtins/abort unreachable end + local.get $7 local.get $3 - local.get $4 call $~lib/set/Set#delete - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.extend8_s i32.const -1028477379 i32.mul @@ -4333,7 +4339,7 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -4341,13 +4347,13 @@ else local.get $1 i32.load8_u - local.get $4 + local.get $3 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find25 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -4366,14 +4372,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|8 end end - local.get $3 + local.get $7 i32.load offset=20 i32.const 50 i32.ne @@ -4385,9 +4391,9 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 call $~lib/set/Set#clear - local.get $3 + local.get $7 i32.load offset=20 if i32.const 0 @@ -4434,26 +4440,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -4461,33 +4467,33 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $5 + local.tee $4 local.get $0 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $8 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 - local.get $5 - local.get $8 + local.get $4 + local.get $7 i32.ne if - local.get $5 + local.get $4 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $5 + local.get $4 i32.load8_u - local.tee $4 + local.tee $8 i32.store8 local.get $2 - local.get $4 + local.get $8 i32.const -1028477379 i32.mul i32.const 374761394 @@ -4496,22 +4502,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 16 i32.shr_u i32.xor @@ -4519,12 +4525,12 @@ i32.and i32.const 2 i32.shl - local.get $6 + local.get $5 i32.add - local.tee $4 + local.tee $8 i32.load i32.store offset=4 - local.get $4 + local.get $8 local.get $2 i32.store local.get $2 @@ -4532,20 +4538,20 @@ i32.add local.set $2 end - local.get $5 + local.get $4 i32.const 8 i32.add - local.set $5 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $6 + local.get $5 i32.store - local.get $6 + local.get $5 if local.get $0 - local.get $6 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -4561,7 +4567,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -4608,7 +4614,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $4 + local.tee $3 local.get $0 i32.load offset=4 i32.and @@ -4623,7 +4629,7 @@ if local.get $2 i32.load offset=4 - local.tee $3 + local.tee $4 i32.const 1 i32.and if (result i32) @@ -4637,7 +4643,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $3 + local.get $4 i32.const -2 i32.and local.set $2 @@ -4681,18 +4687,18 @@ end local.get $0 i32.load offset=8 - local.set $3 + local.set $2 local.get $0 local.get $0 i32.load offset=16 - local.tee $2 + local.tee $4 i32.const 1 i32.add i32.store offset=16 - local.get $2 + local.get $4 i32.const 3 i32.shl - local.get $3 + local.get $2 i32.add local.tee $2 local.get $1 @@ -4708,7 +4714,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $4 + local.get $3 i32.and i32.const 2 i32.shl @@ -4835,14 +4841,14 @@ i32.load offset=4 i32.const 1 i32.shr_u - local.tee $2 + local.tee $1 i32.const 1 i32.add i32.const 4 local.get $0 i32.load offset=20 - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.lt_u select @@ -4862,7 +4868,7 @@ end if local.get $0 - local.get $2 + local.get $1 call $~lib/set/Set#rehash end ) @@ -4889,15 +4895,15 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 i32.const 0 i32.store offset=8 - local.get $3 + local.get $2 call $~lib/set/Set#constructor - local.tee $3 + local.tee $7 i32.store loop $for-loop|1 local.get $1 @@ -4906,9 +4912,9 @@ i32.const 100 i32.lt_u if - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $1 i32.const 255 @@ -4952,7 +4958,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -4966,7 +4972,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $6 + local.get $5 i32.const -2 i32.and local.set $2 @@ -4985,12 +4991,12 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 local.get $1 call $~lib/set/Set#add - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $1 i32.const 255 @@ -5034,7 +5040,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -5048,7 +5054,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find1 - local.get $6 + local.get $5 i32.const -2 i32.and local.set $2 @@ -5075,7 +5081,7 @@ br $for-loop|1 end end - local.get $3 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -5096,9 +5102,9 @@ i32.const 100 i32.lt_u if - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $1 i32.const 255 @@ -5142,7 +5148,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -5156,7 +5162,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find4 - local.get $6 + local.get $5 i32.const -2 i32.and local.set $2 @@ -5176,12 +5182,12 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 local.get $1 call $~lib/set/Set#add - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $1 i32.const 255 @@ -5225,7 +5231,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -5239,7 +5245,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find7 - local.get $6 + local.get $5 i32.const -2 i32.and local.set $2 @@ -5266,7 +5272,7 @@ br $for-loop|3 end end - local.get $3 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -5289,17 +5295,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $8 i32.const 0 i32.store - local.get $3 + local.get $7 i32.load offset=8 - local.set $10 - local.get $3 - i32.load offset=16 - local.tee $11 local.set $5 - local.get $6 + local.get $7 + i32.load offset=16 + local.tee $6 + local.set $9 + local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -5315,21 +5321,21 @@ i32.const 16 i32.const 6 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $10 i32.store - local.get $1 + local.get $10 i32.const 0 i32.store - local.get $1 + local.get $10 i32.const 0 i32.store offset=4 - local.get $1 + local.get $10 i32.const 0 i32.store offset=8 - local.get $1 + local.get $10 i32.const 0 i32.store offset=12 - local.get $5 + local.get $9 i32.const 1073741820 i32.gt_u if @@ -5341,64 +5347,64 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $9 i32.const 8 - local.get $5 + local.get $9 i32.const 8 i32.gt_u select - local.tee $8 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $11 i32.store offset=4 - local.get $2 - local.get $8 - call $~lib/memory/memory.fill + local.get $11 local.get $1 - local.get $2 + call $~lib/memory/memory.fill + local.get $10 + local.get $11 i32.store - local.get $2 + local.get $11 if - local.get $1 - local.get $2 + local.get $10 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 - local.get $2 + local.get $10 + local.get $11 i32.store offset=4 + local.get $10 local.get $1 - local.get $8 i32.store offset=8 - local.get $1 - local.get $5 + local.get $10 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 - local.get $1 + local.get $8 + local.get $10 i32.store loop $for-loop|0 - local.get $7 - local.get $11 + local.get $4 + local.get $6 i32.lt_s if - local.get $7 + local.get $4 i32.const 3 i32.shl - local.get $10 + local.get $5 i32.add - local.tee $2 + local.tee $1 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $1 + local.get $10 local.get $0 - local.get $2 + local.get $1 i32.load8_u call $~lib/array/Array#__set local.get $0 @@ -5406,41 +5412,41 @@ i32.add local.set $0 end - local.get $7 + local.get $4 i32.const 1 i32.add - local.set $7 + local.set $4 br $for-loop|0 end end - local.get $1 + local.get $10 local.get $0 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $1 + local.get $10 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $10 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $5 + local.tee $1 i32.store offset=8 loop $for-loop|4 - local.get $1 + local.get $10 i32.load offset=12 - local.get $4 + local.get $3 i32.gt_s if - local.get $1 - local.get $4 + local.get $10 + local.get $3 call $~lib/array/Array#__get - local.tee $7 + local.tee $4 i32.const 255 i32.and i32.const -1028477379 @@ -5466,9 +5472,9 @@ i32.const -1028477379 i32.mul local.set $2 - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $2 i32.const 16 @@ -5487,7 +5493,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -5495,13 +5501,13 @@ else local.get $2 i32.load8_u - local.get $7 + local.get $4 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $6 + local.get $0 i32.const -2 i32.and local.set $2 @@ -5521,21 +5527,21 @@ call $~lib/builtins/abort unreachable end - local.get $5 local.get $1 - local.get $4 + local.get $10 + local.get $3 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|4 end end - local.get $5 + local.get $1 i32.load offset=20 - local.get $3 + local.get $7 i32.load offset=20 i32.ne if @@ -5547,19 +5553,19 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|6 - local.get $4 + local.get $3 i32.const 255 i32.and i32.const 50 i32.lt_u if - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const 255 i32.and i32.const -1028477379 @@ -5601,7 +5607,7 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -5609,13 +5615,13 @@ else local.get $1 i32.load8_u - local.get $4 + local.get $3 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find13 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -5635,14 +5641,14 @@ call $~lib/builtins/abort unreachable end + local.get $7 local.get $3 - local.get $4 call $~lib/set/Set#delete - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const 255 i32.and i32.const -1028477379 @@ -5684,7 +5690,7 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -5692,13 +5698,13 @@ else local.get $1 i32.load8_u - local.get $4 + local.get $3 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find16 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -5717,14 +5723,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|6 end end - local.get $3 + local.get $7 i32.load offset=20 i32.const 50 i32.ne @@ -5737,19 +5743,19 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|8 - local.get $4 + local.get $3 i32.const 255 i32.and i32.const 50 i32.lt_u if - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const 255 i32.and i32.const -1028477379 @@ -5791,7 +5797,7 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -5799,13 +5805,13 @@ else local.get $1 i32.load8_u - local.get $4 + local.get $3 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find19 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -5824,14 +5830,14 @@ call $~lib/builtins/abort unreachable end + local.get $7 local.get $3 - local.get $4 call $~lib/set/Set#add - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const 255 i32.and i32.const -1028477379 @@ -5873,7 +5879,7 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -5881,13 +5887,13 @@ else local.get $1 i32.load8_u - local.get $4 + local.get $3 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find22 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -5907,14 +5913,14 @@ call $~lib/builtins/abort unreachable end + local.get $7 local.get $3 - local.get $4 call $~lib/set/Set#delete - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const 255 i32.and i32.const -1028477379 @@ -5956,7 +5962,7 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -5964,13 +5970,13 @@ else local.get $1 i32.load8_u - local.get $4 + local.get $3 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find25 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -5989,14 +5995,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|8 end end - local.get $3 + local.get $7 i32.load offset=20 i32.const 50 i32.ne @@ -6008,9 +6014,9 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 call $~lib/set/Set#clear - local.get $3 + local.get $7 i32.load offset=20 if i32.const 0 @@ -6057,26 +6063,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -6084,33 +6090,33 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $5 + local.tee $4 local.get $0 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $8 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 - local.get $5 - local.get $8 + local.get $4 + local.get $7 i32.ne if - local.get $5 + local.get $4 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $5 + local.get $4 i32.load16_s - local.tee $4 + local.tee $8 i32.store16 local.get $2 - local.get $4 + local.get $8 i32.extend16_s i32.const -1028477379 i32.mul @@ -6120,22 +6126,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 16 i32.shr_u i32.xor @@ -6143,12 +6149,12 @@ i32.and i32.const 2 i32.shl - local.get $6 + local.get $5 i32.add - local.tee $4 + local.tee $8 i32.load i32.store offset=4 - local.get $4 + local.get $8 local.get $2 i32.store local.get $2 @@ -6156,20 +6162,20 @@ i32.add local.set $2 end - local.get $5 + local.get $4 i32.const 8 i32.add - local.set $5 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $6 + local.get $5 i32.store - local.get $6 + local.get $5 if local.get $0 - local.get $6 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -6185,7 +6191,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -6231,7 +6237,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $4 + local.tee $3 local.get $0 i32.load offset=4 i32.and @@ -6246,7 +6252,7 @@ if local.get $2 i32.load offset=4 - local.tee $3 + local.tee $4 i32.const 1 i32.and if (result i32) @@ -6260,7 +6266,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $3 + local.get $4 i32.const -2 i32.and local.set $2 @@ -6304,18 +6310,18 @@ end local.get $0 i32.load offset=8 - local.set $3 + local.set $2 local.get $0 local.get $0 i32.load offset=16 - local.tee $2 + local.tee $4 i32.const 1 i32.add i32.store offset=16 - local.get $2 + local.get $4 i32.const 3 i32.shl - local.get $3 + local.get $2 i32.add local.tee $2 local.get $1 @@ -6331,7 +6337,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $4 + local.get $3 i32.and i32.const 2 i32.shl @@ -6498,14 +6504,14 @@ i32.load offset=4 i32.const 1 i32.shr_u - local.tee $2 + local.tee $1 i32.const 1 i32.add i32.const 4 local.get $0 i32.load offset=20 - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.lt_u select @@ -6525,7 +6531,7 @@ end if local.get $0 - local.get $2 + local.get $1 call $~lib/set/Set#rehash end ) @@ -6552,15 +6558,15 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 i32.const 0 i32.store offset=8 - local.get $3 + local.get $2 call $~lib/set/Set#constructor - local.tee $3 + local.tee $7 i32.store loop $for-loop|1 local.get $1 @@ -6568,9 +6574,9 @@ i32.const 100 i32.lt_s if - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $1 i32.extend16_s @@ -6613,7 +6619,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -6627,7 +6633,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $6 + local.get $5 i32.const -2 i32.and local.set $2 @@ -6646,12 +6652,12 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 local.get $1 call $~lib/set/Set#add - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $1 i32.extend16_s @@ -6694,7 +6700,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -6708,7 +6714,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find1 - local.get $6 + local.get $5 i32.const -2 i32.and local.set $2 @@ -6735,7 +6741,7 @@ br $for-loop|1 end end - local.get $3 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -6755,9 +6761,9 @@ i32.const 100 i32.lt_s if - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $1 i32.extend16_s @@ -6800,7 +6806,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -6814,7 +6820,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find4 - local.get $6 + local.get $5 i32.const -2 i32.and local.set $2 @@ -6834,12 +6840,12 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 local.get $1 call $~lib/set/Set#add - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $1 i32.extend16_s @@ -6882,7 +6888,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -6896,7 +6902,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find7 - local.get $6 + local.get $5 i32.const -2 i32.and local.set $2 @@ -6923,7 +6929,7 @@ br $for-loop|3 end end - local.get $3 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -6946,17 +6952,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $8 i32.const 0 i32.store - local.get $3 + local.get $7 i32.load offset=8 - local.set $10 - local.get $3 - i32.load offset=16 - local.tee $11 local.set $5 - local.get $6 + local.get $7 + i32.load offset=16 + local.tee $6 + local.set $9 + local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -6972,21 +6978,21 @@ i32.const 16 i32.const 8 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $10 i32.store - local.get $1 + local.get $10 i32.const 0 i32.store - local.get $1 + local.get $10 i32.const 0 i32.store offset=4 - local.get $1 + local.get $10 i32.const 0 i32.store offset=8 - local.get $1 + local.get $10 i32.const 0 i32.store offset=12 - local.get $5 + local.get $9 i32.const 536870910 i32.gt_u if @@ -6998,66 +7004,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $9 i32.const 8 - local.get $5 + local.get $9 i32.const 8 i32.gt_u select i32.const 1 i32.shl - local.tee $8 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $11 i32.store offset=4 - local.get $2 - local.get $8 - call $~lib/memory/memory.fill + local.get $11 local.get $1 - local.get $2 + call $~lib/memory/memory.fill + local.get $10 + local.get $11 i32.store - local.get $2 + local.get $11 if - local.get $1 - local.get $2 + local.get $10 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 - local.get $2 + local.get $10 + local.get $11 i32.store offset=4 + local.get $10 local.get $1 - local.get $8 i32.store offset=8 - local.get $1 - local.get $5 + local.get $10 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 - local.get $1 + local.get $8 + local.get $10 i32.store loop $for-loop|0 - local.get $7 - local.get $11 + local.get $4 + local.get $6 i32.lt_s if - local.get $7 + local.get $4 i32.const 3 i32.shl - local.get $10 + local.get $5 i32.add - local.tee $2 + local.tee $1 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $1 + local.get $10 local.get $0 - local.get $2 + local.get $1 i32.load16_s call $~lib/array/Array#__set local.get $0 @@ -7065,41 +7071,41 @@ i32.add local.set $0 end - local.get $7 + local.get $4 i32.const 1 i32.add - local.set $7 + local.set $4 br $for-loop|0 end end - local.get $1 + local.get $10 local.get $0 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity - local.get $1 + local.get $10 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $10 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $5 + local.tee $1 i32.store offset=8 loop $for-loop|4 - local.get $1 + local.get $10 i32.load offset=12 - local.get $4 + local.get $3 i32.gt_s if - local.get $1 - local.get $4 + local.get $10 + local.get $3 call $~lib/array/Array#__get - local.tee $7 + local.tee $4 i32.extend16_s i32.const -1028477379 i32.mul @@ -7124,9 +7130,9 @@ i32.const -1028477379 i32.mul local.set $2 - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $2 i32.const 16 @@ -7145,7 +7151,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -7153,13 +7159,13 @@ else local.get $2 i32.load16_u - local.get $7 + local.get $4 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $6 + local.get $0 i32.const -2 i32.and local.set $2 @@ -7179,21 +7185,21 @@ call $~lib/builtins/abort unreachable end - local.get $5 local.get $1 - local.get $4 + local.get $10 + local.get $3 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|4 end end - local.get $5 + local.get $1 i32.load offset=20 - local.get $3 + local.get $7 i32.load offset=20 i32.ne if @@ -7205,18 +7211,18 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|6 - local.get $4 + local.get $3 i32.extend16_s i32.const 50 i32.lt_s if - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.extend16_s i32.const -1028477379 i32.mul @@ -7257,7 +7263,7 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -7265,13 +7271,13 @@ else local.get $1 i32.load16_u - local.get $4 + local.get $3 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find13 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -7291,14 +7297,14 @@ call $~lib/builtins/abort unreachable end + local.get $7 local.get $3 - local.get $4 call $~lib/set/Set#delete - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.extend16_s i32.const -1028477379 i32.mul @@ -7339,7 +7345,7 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -7347,13 +7353,13 @@ else local.get $1 i32.load16_u - local.get $4 + local.get $3 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find16 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -7372,14 +7378,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|6 end end - local.get $3 + local.get $7 i32.load offset=20 i32.const 50 i32.ne @@ -7392,18 +7398,18 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|8 - local.get $4 + local.get $3 i32.extend16_s i32.const 50 i32.lt_s if - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.extend16_s i32.const -1028477379 i32.mul @@ -7444,7 +7450,7 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -7452,13 +7458,13 @@ else local.get $1 i32.load16_u - local.get $4 + local.get $3 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find19 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -7477,14 +7483,14 @@ call $~lib/builtins/abort unreachable end + local.get $7 local.get $3 - local.get $4 call $~lib/set/Set#add - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.extend16_s i32.const -1028477379 i32.mul @@ -7525,7 +7531,7 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -7533,13 +7539,13 @@ else local.get $1 i32.load16_u - local.get $4 + local.get $3 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find22 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -7559,14 +7565,14 @@ call $~lib/builtins/abort unreachable end + local.get $7 local.get $3 - local.get $4 call $~lib/set/Set#delete - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.extend16_s i32.const -1028477379 i32.mul @@ -7607,7 +7613,7 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -7615,13 +7621,13 @@ else local.get $1 i32.load16_u - local.get $4 + local.get $3 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find25 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -7640,14 +7646,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|8 end end - local.get $3 + local.get $7 i32.load offset=20 i32.const 50 i32.ne @@ -7659,9 +7665,9 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 call $~lib/set/Set#clear - local.get $3 + local.get $7 i32.load offset=20 if i32.const 0 @@ -7708,26 +7714,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -7735,33 +7741,33 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $5 + local.tee $4 local.get $0 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $8 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 - local.get $5 - local.get $8 + local.get $4 + local.get $7 i32.ne if - local.get $5 + local.get $4 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $5 + local.get $4 i32.load16_u - local.tee $4 + local.tee $8 i32.store16 local.get $2 - local.get $4 + local.get $8 i32.const -1028477379 i32.mul i32.const 374761395 @@ -7770,22 +7776,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 16 i32.shr_u i32.xor @@ -7793,12 +7799,12 @@ i32.and i32.const 2 i32.shl - local.get $6 + local.get $5 i32.add - local.tee $4 + local.tee $8 i32.load i32.store offset=4 - local.get $4 + local.get $8 local.get $2 i32.store local.get $2 @@ -7806,20 +7812,20 @@ i32.add local.set $2 end - local.get $5 + local.get $4 i32.const 8 i32.add - local.set $5 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $6 + local.get $5 i32.store - local.get $6 + local.get $5 if local.get $0 - local.get $6 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -7835,7 +7841,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -7882,7 +7888,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $4 + local.tee $3 local.get $0 i32.load offset=4 i32.and @@ -7897,7 +7903,7 @@ if local.get $2 i32.load offset=4 - local.tee $3 + local.tee $4 i32.const 1 i32.and if (result i32) @@ -7911,7 +7917,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $3 + local.get $4 i32.const -2 i32.and local.set $2 @@ -7955,18 +7961,18 @@ end local.get $0 i32.load offset=8 - local.set $3 + local.set $2 local.get $0 local.get $0 i32.load offset=16 - local.tee $2 + local.tee $4 i32.const 1 i32.add i32.store offset=16 - local.get $2 + local.get $4 i32.const 3 i32.shl - local.get $3 + local.get $2 i32.add local.tee $2 local.get $1 @@ -7982,7 +7988,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $4 + local.get $3 i32.and i32.const 2 i32.shl @@ -8111,14 +8117,14 @@ i32.load offset=4 i32.const 1 i32.shr_u - local.tee $2 + local.tee $1 i32.const 1 i32.add i32.const 4 local.get $0 i32.load offset=20 - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.lt_u select @@ -8138,7 +8144,7 @@ end if local.get $0 - local.get $2 + local.get $1 call $~lib/set/Set#rehash end ) @@ -8165,15 +8171,15 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 i32.const 0 i32.store offset=8 - local.get $3 + local.get $2 call $~lib/set/Set#constructor - local.tee $3 + local.tee $7 i32.store loop $for-loop|1 local.get $1 @@ -8182,9 +8188,9 @@ i32.const 100 i32.lt_u if - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $1 i32.const 65535 @@ -8228,7 +8234,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -8242,7 +8248,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $6 + local.get $5 i32.const -2 i32.and local.set $2 @@ -8261,12 +8267,12 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 local.get $1 call $~lib/set/Set#add - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $1 i32.const 65535 @@ -8310,7 +8316,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -8324,7 +8330,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find1 - local.get $6 + local.get $5 i32.const -2 i32.and local.set $2 @@ -8351,7 +8357,7 @@ br $for-loop|1 end end - local.get $3 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -8372,9 +8378,9 @@ i32.const 100 i32.lt_u if - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $1 i32.const 65535 @@ -8418,7 +8424,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -8432,7 +8438,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find4 - local.get $6 + local.get $5 i32.const -2 i32.and local.set $2 @@ -8452,12 +8458,12 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 local.get $1 call $~lib/set/Set#add - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $1 i32.const 65535 @@ -8501,7 +8507,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -8515,7 +8521,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find7 - local.get $6 + local.get $5 i32.const -2 i32.and local.set $2 @@ -8542,7 +8548,7 @@ br $for-loop|3 end end - local.get $3 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -8565,17 +8571,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $8 i32.const 0 i32.store - local.get $3 + local.get $7 i32.load offset=8 - local.set $10 - local.get $3 - i32.load offset=16 - local.tee $11 local.set $5 - local.get $6 + local.get $7 + i32.load offset=16 + local.tee $6 + local.set $9 + local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -8591,21 +8597,21 @@ i32.const 16 i32.const 10 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $10 i32.store - local.get $1 + local.get $10 i32.const 0 i32.store - local.get $1 + local.get $10 i32.const 0 i32.store offset=4 - local.get $1 + local.get $10 i32.const 0 i32.store offset=8 - local.get $1 + local.get $10 i32.const 0 i32.store offset=12 - local.get $5 + local.get $9 i32.const 536870910 i32.gt_u if @@ -8617,66 +8623,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $9 i32.const 8 - local.get $5 + local.get $9 i32.const 8 i32.gt_u select i32.const 1 i32.shl - local.tee $8 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $11 i32.store offset=4 - local.get $2 - local.get $8 - call $~lib/memory/memory.fill + local.get $11 local.get $1 - local.get $2 + call $~lib/memory/memory.fill + local.get $10 + local.get $11 i32.store - local.get $2 + local.get $11 if - local.get $1 - local.get $2 + local.get $10 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 - local.get $2 + local.get $10 + local.get $11 i32.store offset=4 + local.get $10 local.get $1 - local.get $8 i32.store offset=8 - local.get $1 - local.get $5 + local.get $10 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 - local.get $1 + local.get $8 + local.get $10 i32.store loop $for-loop|0 - local.get $7 - local.get $11 - i32.lt_s + local.get $4 + local.get $6 + i32.lt_s if - local.get $7 + local.get $4 i32.const 3 i32.shl - local.get $10 + local.get $5 i32.add - local.tee $2 + local.tee $1 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $1 + local.get $10 local.get $0 - local.get $2 + local.get $1 i32.load16_u call $~lib/array/Array#__set local.get $0 @@ -8684,41 +8690,41 @@ i32.add local.set $0 end - local.get $7 + local.get $4 i32.const 1 i32.add - local.set $7 + local.set $4 br $for-loop|0 end end - local.get $1 + local.get $10 local.get $0 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity - local.get $1 + local.get $10 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $10 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $5 + local.tee $1 i32.store offset=8 loop $for-loop|4 - local.get $1 + local.get $10 i32.load offset=12 - local.get $4 + local.get $3 i32.gt_s if - local.get $1 - local.get $4 + local.get $10 + local.get $3 call $~lib/array/Array#__get - local.tee $7 + local.tee $4 i32.const 65535 i32.and i32.const -1028477379 @@ -8744,9 +8750,9 @@ i32.const -1028477379 i32.mul local.set $2 - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $2 i32.const 16 @@ -8765,7 +8771,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -8773,13 +8779,13 @@ else local.get $2 i32.load16_u - local.get $7 + local.get $4 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $6 + local.get $0 i32.const -2 i32.and local.set $2 @@ -8799,21 +8805,21 @@ call $~lib/builtins/abort unreachable end - local.get $5 local.get $1 - local.get $4 + local.get $10 + local.get $3 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|4 end end - local.get $5 + local.get $1 i32.load offset=20 - local.get $3 + local.get $7 i32.load offset=20 i32.ne if @@ -8825,19 +8831,19 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|6 - local.get $4 + local.get $3 i32.const 65535 i32.and i32.const 50 i32.lt_u if - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const 65535 i32.and i32.const -1028477379 @@ -8879,7 +8885,7 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -8887,13 +8893,13 @@ else local.get $1 i32.load16_u - local.get $4 + local.get $3 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find13 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -8913,14 +8919,14 @@ call $~lib/builtins/abort unreachable end + local.get $7 local.get $3 - local.get $4 call $~lib/set/Set#delete - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const 65535 i32.and i32.const -1028477379 @@ -8962,7 +8968,7 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -8970,13 +8976,13 @@ else local.get $1 i32.load16_u - local.get $4 + local.get $3 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find16 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -8995,14 +9001,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|6 end end - local.get $3 + local.get $7 i32.load offset=20 i32.const 50 i32.ne @@ -9015,19 +9021,19 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|8 - local.get $4 + local.get $3 i32.const 65535 i32.and i32.const 50 i32.lt_u if - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const 65535 i32.and i32.const -1028477379 @@ -9069,7 +9075,7 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -9077,13 +9083,13 @@ else local.get $1 i32.load16_u - local.get $4 + local.get $3 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find19 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -9102,14 +9108,14 @@ call $~lib/builtins/abort unreachable end + local.get $7 local.get $3 - local.get $4 call $~lib/set/Set#add - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const 65535 i32.and i32.const -1028477379 @@ -9151,7 +9157,7 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -9159,13 +9165,13 @@ else local.get $1 i32.load16_u - local.get $4 + local.get $3 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find22 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -9185,14 +9191,14 @@ call $~lib/builtins/abort unreachable end + local.get $7 local.get $3 - local.get $4 call $~lib/set/Set#delete - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const 65535 i32.and i32.const -1028477379 @@ -9234,7 +9240,7 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -9242,13 +9248,13 @@ else local.get $1 i32.load16_u - local.get $4 + local.get $3 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find25 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -9267,14 +9273,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|8 end end - local.get $3 + local.get $7 i32.load offset=20 i32.const 50 i32.ne @@ -9286,9 +9292,9 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 call $~lib/set/Set#clear - local.get $3 + local.get $7 i32.load offset=20 if i32.const 0 @@ -9335,26 +9341,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -9362,33 +9368,33 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $5 + local.tee $4 local.get $0 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $8 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 - local.get $5 - local.get $8 + local.get $4 + local.get $7 i32.ne if - local.get $5 + local.get $4 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $5 + local.get $4 i32.load - local.tee $4 + local.tee $8 i32.store local.get $2 - local.get $4 + local.get $8 i32.const -1028477379 i32.mul i32.const 374761397 @@ -9397,22 +9403,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 16 i32.shr_u i32.xor @@ -9420,12 +9426,12 @@ i32.and i32.const 2 i32.shl - local.get $6 + local.get $5 i32.add - local.tee $4 + local.tee $8 i32.load i32.store offset=4 - local.get $4 + local.get $8 local.get $2 i32.store local.get $2 @@ -9433,20 +9439,20 @@ i32.add local.set $2 end - local.get $5 + local.get $4 i32.const 8 i32.add - local.set $5 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $6 + local.get $5 i32.store - local.get $6 + local.get $5 if local.get $0 - local.get $6 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -9462,7 +9468,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -9507,7 +9513,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $4 + local.tee $3 local.get $0 i32.load offset=4 i32.and @@ -9522,7 +9528,7 @@ if local.get $2 i32.load offset=4 - local.tee $3 + local.tee $4 i32.const 1 i32.and if (result i32) @@ -9534,7 +9540,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $3 + local.get $4 i32.const -2 i32.and local.set $2 @@ -9578,18 +9584,18 @@ end local.get $0 i32.load offset=8 - local.set $3 + local.set $2 local.get $0 local.get $0 i32.load offset=16 - local.tee $2 + local.tee $4 i32.const 1 i32.add i32.store offset=16 - local.get $2 + local.get $4 i32.const 3 i32.shl - local.get $3 + local.get $2 i32.add local.tee $2 local.get $1 @@ -9605,7 +9611,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $4 + local.get $3 i32.and i32.const 2 i32.shl @@ -9769,14 +9775,14 @@ i32.load offset=4 i32.const 1 i32.shr_u - local.tee $2 + local.tee $1 i32.const 1 i32.add i32.const 4 local.get $0 i32.load offset=20 - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.lt_u select @@ -9796,7 +9802,7 @@ end if local.get $0 - local.get $2 + local.get $1 call $~lib/set/Set#rehash end ) @@ -9823,24 +9829,24 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 i32.const 0 i32.store offset=8 - local.get $3 + local.get $2 call $~lib/set/Set#constructor - local.tee $3 + local.tee $7 i32.store loop $for-loop|0 local.get $1 i32.const 100 i32.lt_s if - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -9882,7 +9888,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -9894,7 +9900,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $6 + local.get $5 i32.const -2 i32.and local.set $2 @@ -9913,12 +9919,12 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 local.get $1 call $~lib/set/Set#add - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -9960,7 +9966,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -9972,7 +9978,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find1 - local.get $6 + local.get $5 i32.const -2 i32.and local.set $2 @@ -9999,7 +10005,7 @@ br $for-loop|0 end end - local.get $3 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -10018,9 +10024,9 @@ i32.const 100 i32.lt_s if - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -10062,7 +10068,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -10074,7 +10080,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find4 - local.get $6 + local.get $5 i32.const -2 i32.and local.set $2 @@ -10094,12 +10100,12 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 local.get $1 call $~lib/set/Set#add - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -10141,7 +10147,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -10153,7 +10159,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find7 - local.get $6 + local.get $5 i32.const -2 i32.and local.set $2 @@ -10180,7 +10186,7 @@ br $for-loop|1 end end - local.get $3 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -10203,17 +10209,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $8 i32.const 0 i32.store - local.get $3 + local.get $7 i32.load offset=8 - local.set $10 - local.get $3 - i32.load offset=16 - local.tee $11 local.set $5 - local.get $6 + local.get $7 + i32.load offset=16 + local.tee $6 + local.set $9 + local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -10229,21 +10235,21 @@ i32.const 16 i32.const 12 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $10 i32.store - local.get $1 + local.get $10 i32.const 0 i32.store - local.get $1 + local.get $10 i32.const 0 i32.store offset=4 - local.get $1 + local.get $10 i32.const 0 i32.store offset=8 - local.get $1 + local.get $10 i32.const 0 i32.store offset=12 - local.get $5 + local.get $9 i32.const 268435455 i32.gt_u if @@ -10255,66 +10261,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $9 i32.const 8 - local.get $5 + local.get $9 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $8 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $11 i32.store offset=4 - local.get $2 - local.get $8 - call $~lib/memory/memory.fill + local.get $11 local.get $1 - local.get $2 + call $~lib/memory/memory.fill + local.get $10 + local.get $11 i32.store - local.get $2 + local.get $11 if - local.get $1 - local.get $2 + local.get $10 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 - local.get $2 + local.get $10 + local.get $11 i32.store offset=4 + local.get $10 local.get $1 - local.get $8 i32.store offset=8 - local.get $1 - local.get $5 + local.get $10 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 - local.get $1 + local.get $8 + local.get $10 i32.store loop $for-loop|01 - local.get $7 - local.get $11 + local.get $4 + local.get $6 i32.lt_s if - local.get $7 + local.get $4 i32.const 3 i32.shl - local.get $10 + local.get $5 i32.add - local.tee $2 + local.tee $1 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $1 + local.get $10 local.get $0 - local.get $2 + local.get $1 i32.load call $~lib/array/Array#__set local.get $0 @@ -10322,41 +10328,41 @@ i32.add local.set $0 end - local.get $7 + local.get $4 i32.const 1 i32.add - local.set $7 + local.set $4 br $for-loop|01 end end - local.get $1 + local.get $10 local.get $0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $1 + local.get $10 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $10 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $5 + local.tee $1 i32.store offset=8 loop $for-loop|2 - local.get $1 + local.get $10 i32.load offset=12 - local.get $4 + local.get $3 i32.gt_s if - local.get $1 - local.get $4 + local.get $10 + local.get $3 call $~lib/array/Array#__get - local.tee $7 + local.tee $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10380,9 +10386,9 @@ i32.const -1028477379 i32.mul local.set $2 - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $2 i32.const 16 @@ -10401,19 +10407,19 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $7 + local.get $4 local.get $2 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $6 + local.get $0 i32.const -2 i32.and local.set $2 @@ -10433,21 +10439,21 @@ call $~lib/builtins/abort unreachable end - local.get $5 local.get $1 - local.get $4 + local.get $10 + local.get $3 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|2 end end - local.get $5 + local.get $1 i32.load offset=20 - local.get $3 + local.get $7 i32.load offset=20 i32.ne if @@ -10459,17 +10465,17 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|3 - local.get $4 + local.get $3 i32.const 50 i32.lt_s if - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10509,19 +10515,19 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $1 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find13 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -10541,14 +10547,14 @@ call $~lib/builtins/abort unreachable end + local.get $7 local.get $3 - local.get $4 call $~lib/set/Set#delete - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10588,19 +10594,19 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $1 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find16 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -10619,14 +10625,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|3 end end - local.get $3 + local.get $7 i32.load offset=20 i32.const 50 i32.ne @@ -10639,17 +10645,17 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|4 - local.get $4 + local.get $3 i32.const 50 i32.lt_s if - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10689,19 +10695,19 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $1 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find19 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -10720,14 +10726,14 @@ call $~lib/builtins/abort unreachable end + local.get $7 local.get $3 - local.get $4 call $~lib/set/Set#add - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10767,19 +10773,19 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $1 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find22 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -10799,14 +10805,14 @@ call $~lib/builtins/abort unreachable end + local.get $7 local.get $3 - local.get $4 call $~lib/set/Set#delete - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10846,19 +10852,19 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $1 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find25 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -10877,14 +10883,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|4 end end - local.get $3 + local.get $7 i32.load offset=20 i32.const 50 i32.ne @@ -10896,9 +10902,9 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 call $~lib/set/Set#clear - local.get $3 + local.get $7 i32.load offset=20 if i32.const 0 @@ -10945,26 +10951,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -10972,33 +10978,33 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $5 + local.tee $4 local.get $0 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $8 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 - local.get $5 - local.get $8 + local.get $4 + local.get $7 i32.ne if - local.get $5 + local.get $4 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $5 + local.get $4 i32.load - local.tee $4 + local.tee $8 i32.store local.get $2 - local.get $4 + local.get $8 i32.const -1028477379 i32.mul i32.const 374761397 @@ -11007,22 +11013,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 i32.const 16 i32.shr_u i32.xor @@ -11030,12 +11036,12 @@ i32.and i32.const 2 i32.shl - local.get $6 + local.get $5 i32.add - local.tee $4 + local.tee $8 i32.load i32.store offset=4 - local.get $4 + local.get $8 local.get $2 i32.store local.get $2 @@ -11043,20 +11049,20 @@ i32.add local.set $2 end - local.get $5 + local.get $4 i32.const 8 i32.add - local.set $5 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $6 + local.get $5 i32.store - local.get $6 + local.get $5 if local.get $0 - local.get $6 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -11072,7 +11078,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -11117,7 +11123,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $4 + local.tee $3 local.get $0 i32.load offset=4 i32.and @@ -11132,7 +11138,7 @@ if local.get $2 i32.load offset=4 - local.tee $3 + local.tee $4 i32.const 1 i32.and if (result i32) @@ -11144,7 +11150,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $3 + local.get $4 i32.const -2 i32.and local.set $2 @@ -11188,18 +11194,18 @@ end local.get $0 i32.load offset=8 - local.set $3 + local.set $2 local.get $0 local.get $0 i32.load offset=16 - local.tee $2 + local.tee $4 i32.const 1 i32.add i32.store offset=16 - local.get $2 + local.get $4 i32.const 3 i32.shl - local.get $3 + local.get $2 i32.add local.tee $2 local.get $1 @@ -11215,7 +11221,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $4 + local.get $3 i32.and i32.const 2 i32.shl @@ -11340,14 +11346,14 @@ i32.load offset=4 i32.const 1 i32.shr_u - local.tee $2 + local.tee $1 i32.const 1 i32.add i32.const 4 local.get $0 i32.load offset=20 - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.lt_u select @@ -11367,7 +11373,7 @@ end if local.get $0 - local.get $2 + local.get $1 call $~lib/set/Set#rehash end ) @@ -11394,24 +11400,24 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 i32.const 0 i32.store offset=8 - local.get $3 + local.get $2 call $~lib/set/Set#constructor - local.tee $3 + local.tee $7 i32.store loop $for-loop|0 local.get $1 i32.const 100 i32.lt_u if - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -11453,7 +11459,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -11465,7 +11471,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $6 + local.get $5 i32.const -2 i32.and local.set $2 @@ -11484,12 +11490,12 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 local.get $1 call $~lib/set/Set#add - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -11531,7 +11537,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -11543,7 +11549,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find1 - local.get $6 + local.get $5 i32.const -2 i32.and local.set $2 @@ -11570,7 +11576,7 @@ br $for-loop|0 end end - local.get $3 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -11589,9 +11595,9 @@ i32.const 100 i32.lt_u if - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -11633,7 +11639,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -11645,7 +11651,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find4 - local.get $6 + local.get $5 i32.const -2 i32.and local.set $2 @@ -11665,12 +11671,12 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 local.get $1 call $~lib/set/Set#add - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -11712,7 +11718,7 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -11724,7 +11730,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find7 - local.get $6 + local.get $5 i32.const -2 i32.and local.set $2 @@ -11751,7 +11757,7 @@ br $for-loop|1 end end - local.get $3 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -11774,17 +11780,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $8 i32.const 0 i32.store - local.get $3 + local.get $7 i32.load offset=8 - local.set $10 - local.get $3 - i32.load offset=16 - local.tee $11 local.set $5 - local.get $6 + local.get $7 + i32.load offset=16 + local.tee $6 + local.set $9 + local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -11800,21 +11806,21 @@ i32.const 16 i32.const 14 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $10 i32.store - local.get $1 + local.get $10 i32.const 0 i32.store - local.get $1 + local.get $10 i32.const 0 i32.store offset=4 - local.get $1 + local.get $10 i32.const 0 i32.store offset=8 - local.get $1 + local.get $10 i32.const 0 i32.store offset=12 - local.get $5 + local.get $9 i32.const 268435455 i32.gt_u if @@ -11826,66 +11832,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $9 i32.const 8 - local.get $5 + local.get $9 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $8 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $11 i32.store offset=4 - local.get $2 - local.get $8 - call $~lib/memory/memory.fill + local.get $11 local.get $1 - local.get $2 + call $~lib/memory/memory.fill + local.get $10 + local.get $11 i32.store - local.get $2 + local.get $11 if - local.get $1 - local.get $2 + local.get $10 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 - local.get $2 + local.get $10 + local.get $11 i32.store offset=4 + local.get $10 local.get $1 - local.get $8 i32.store offset=8 - local.get $1 - local.get $5 + local.get $10 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 - local.get $1 + local.get $8 + local.get $10 i32.store loop $for-loop|01 - local.get $7 - local.get $11 + local.get $4 + local.get $6 i32.lt_s if - local.get $7 + local.get $4 i32.const 3 i32.shl - local.get $10 + local.get $5 i32.add - local.tee $2 + local.tee $1 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $1 + local.get $10 local.get $0 - local.get $2 + local.get $1 i32.load call $~lib/array/Array#__set local.get $0 @@ -11893,41 +11899,41 @@ i32.add local.set $0 end - local.get $7 + local.get $4 i32.const 1 i32.add - local.set $7 + local.set $4 br $for-loop|01 end end - local.get $1 + local.get $10 local.get $0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $1 + local.get $10 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $10 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $5 + local.tee $1 i32.store offset=8 loop $for-loop|2 - local.get $1 + local.get $10 i32.load offset=12 - local.get $4 + local.get $3 i32.gt_s if - local.get $1 - local.get $4 + local.get $10 + local.get $3 call $~lib/array/Array#__get - local.tee $7 + local.tee $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -11951,9 +11957,9 @@ i32.const -1028477379 i32.mul local.set $2 - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 local.get $2 i32.const 16 @@ -11972,19 +11978,19 @@ if local.get $2 i32.load offset=4 - local.tee $6 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $7 + local.get $4 local.get $2 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $6 + local.get $0 i32.const -2 i32.and local.set $2 @@ -12004,21 +12010,21 @@ call $~lib/builtins/abort unreachable end - local.get $5 local.get $1 - local.get $4 + local.get $10 + local.get $3 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|2 end end - local.get $5 + local.get $1 i32.load offset=20 - local.get $3 + local.get $7 i32.load offset=20 i32.ne if @@ -12030,17 +12036,17 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|3 - local.get $4 + local.get $3 i32.const 50 i32.lt_u if - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12080,19 +12086,19 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $1 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find13 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -12112,14 +12118,14 @@ call $~lib/builtins/abort unreachable end + local.get $7 local.get $3 - local.get $4 call $~lib/set/Set#delete - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12159,19 +12165,19 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $1 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find16 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -12190,14 +12196,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|3 end end - local.get $3 + local.get $7 i32.load offset=20 i32.const 50 i32.ne @@ -12210,17 +12216,17 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|4 - local.get $4 + local.get $3 i32.const 50 i32.lt_u if - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12260,19 +12266,19 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $1 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find19 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -12291,14 +12297,14 @@ call $~lib/builtins/abort unreachable end + local.get $7 local.get $3 - local.get $4 call $~lib/set/Set#add - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12338,19 +12344,19 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $1 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find22 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -12370,14 +12376,14 @@ call $~lib/builtins/abort unreachable end + local.get $7 local.get $3 - local.get $4 call $~lib/set/Set#delete - local.get $3 + local.get $7 i32.load - local.get $3 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12417,19 +12423,19 @@ if local.get $1 i32.load offset=4 - local.tee $5 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $1 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find25 - local.get $5 + local.get $2 i32.const -2 i32.and local.set $1 @@ -12448,14 +12454,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|4 end end - local.get $3 + local.get $7 i32.load offset=20 i32.const 50 i32.ne @@ -12467,9 +12473,9 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 call $~lib/set/Set#clear - local.get $3 + local.get $7 i32.load offset=20 if i32.const 0 @@ -12601,26 +12607,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -12628,13 +12634,13 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $8 + local.tee $4 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $4 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 @@ -12642,14 +12648,14 @@ local.get $8 i32.ne if - local.get $8 + local.get $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $8 + local.get $4 i64.load local.tee $6 i64.store @@ -12698,7 +12704,7 @@ i32.and i32.const 2 i32.shl - local.get $7 + local.get $5 i32.add local.tee $9 i32.load @@ -12711,20 +12717,20 @@ i32.add local.set $2 end - local.get $8 + local.get $4 i32.const 16 i32.add - local.set $8 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $7 + local.get $5 i32.store - local.get $7 + local.get $5 if local.get $0 - local.get $7 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -12740,7 +12746,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -12797,7 +12803,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $4 + local.tee $3 local.get $0 i32.load offset=4 i32.and @@ -12812,7 +12818,7 @@ if local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 1 i32.and if (result i32) @@ -12824,7 +12830,7 @@ i64.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $3 + local.get $4 i32.const -2 i32.and local.set $2 @@ -12868,18 +12874,18 @@ end local.get $0 i32.load offset=8 - local.set $3 + local.set $2 local.get $0 local.get $0 i32.load offset=16 - local.tee $2 + local.tee $4 i32.const 1 i32.add i32.store offset=16 - local.get $2 + local.get $4 i32.const 4 i32.shl - local.get $3 + local.get $2 i32.add local.tee $2 local.get $1 @@ -12895,7 +12901,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $4 + local.get $3 i32.and i32.const 2 i32.shl @@ -13070,14 +13076,14 @@ i32.load offset=4 i32.const 1 i32.shr_u - local.tee $3 + local.tee $2 i32.const 1 i32.add i32.const 4 local.get $0 i32.load offset=20 - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.const 4 i32.lt_u select @@ -13097,7 +13103,7 @@ end if local.get $0 - local.get $3 + local.get $2 call $~lib/set/Set#rehash end ) @@ -13170,14 +13176,14 @@ i32.store offset=8 local.get $2 call $~lib/set/Set#constructor - local.tee $3 + local.tee $2 i32.store loop $for-loop|0 local.get $1 i64.const 100 i64.lt_s if - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#has if @@ -13188,10 +13194,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#add - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#has i32.eqz @@ -13210,7 +13216,7 @@ br $for-loop|0 end end - local.get $3 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -13229,7 +13235,7 @@ i64.const 100 i64.lt_s if - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#has i32.eqz @@ -13241,10 +13247,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#add - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#has i32.eqz @@ -13263,7 +13269,7 @@ br $for-loop|1 end end - local.get $3 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -13276,8 +13282,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -13286,17 +13292,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $11 i32.const 0 i32.store - local.get $3 + local.get $2 i32.load offset=8 - local.set $11 - local.get $3 + local.set $9 + local.get $2 i32.load offset=16 - local.tee $12 - local.set $6 - local.get $4 + local.tee $10 + local.set $4 + local.get $11 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -13305,28 +13311,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 i32.const 16 i32.const 16 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $12 i32.store - local.get $2 + local.get $12 i32.const 0 i32.store - local.get $2 + local.get $12 i32.const 0 i32.store offset=4 - local.get $2 + local.get $12 i32.const 0 i32.store offset=8 - local.get $2 + local.get $12 i32.const 0 i32.store offset=12 - local.get $6 + local.get $4 i32.const 134217727 i32.gt_u if @@ -13338,66 +13344,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.const 8 - local.get $6 + local.get $4 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $9 + local.tee $7 i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $3 i32.store offset=4 - local.get $5 - local.get $9 + local.get $3 + local.get $7 call $~lib/memory/memory.fill - local.get $2 - local.get $5 + local.get $12 + local.get $3 i32.store - local.get $5 + local.get $3 if - local.get $2 - local.get $5 + local.get $12 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 - local.get $5 + local.get $12 + local.get $3 i32.store offset=4 - local.get $2 - local.get $9 + local.get $12 + local.get $7 i32.store offset=8 - local.get $2 - local.get $6 + local.get $12 + local.get $4 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 - local.get $2 + local.get $11 + local.get $12 i32.store loop $for-loop|01 - local.get $8 - local.get $12 + local.get $6 + local.get $10 i32.lt_s if - local.get $8 + local.get $6 i32.const 4 i32.shl - local.get $11 + local.get $9 i32.add - local.tee $4 + local.tee $3 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $2 + local.get $12 local.get $0 - local.get $4 + local.get $3 i64.load call $~lib/array/Array#__set local.get $0 @@ -13405,40 +13411,40 @@ i32.add local.set $0 end - local.get $8 + local.get $6 i32.const 1 i32.add - local.set $8 + local.set $6 br $for-loop|01 end end - local.get $2 + local.get $12 local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $2 + local.get $12 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $12 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $4 + local.tee $3 i32.store offset=8 loop $for-loop|2 - local.get $2 + local.get $12 i32.load offset=12 - local.get $7 + local.get $5 i32.gt_s if - local.get $3 local.get $2 - local.get $7 + local.get $12 + local.get $5 call $~lib/array/Array#__get call $~lib/set/Set#has i32.eqz @@ -13450,22 +13456,22 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $2 - local.get $7 + local.get $3 + local.get $12 + local.get $5 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $7 + local.get $5 i32.const 1 i32.add - local.set $7 + local.set $5 br $for-loop|2 end end - local.get $4 - i32.load offset=20 local.get $3 i32.load offset=20 + local.get $2 + i32.load offset=20 i32.ne if i32.const 0 @@ -13482,7 +13488,7 @@ i64.const 50 i64.lt_s if - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#has i32.eqz @@ -13494,10 +13500,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#delete - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#has if @@ -13515,7 +13521,7 @@ br $for-loop|3 end end - local.get $3 + local.get $2 i32.load offset=20 i32.const 50 i32.ne @@ -13534,7 +13540,7 @@ i64.const 50 i64.lt_s if - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#has if @@ -13545,10 +13551,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#add - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#has i32.eqz @@ -13560,10 +13566,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#delete - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#has if @@ -13581,7 +13587,7 @@ br $for-loop|4 end end - local.get $3 + local.get $2 i32.load offset=20 i32.const 50 i32.ne @@ -13593,9 +13599,9 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 call $~lib/set/Set#clear - local.get $3 + local.get $2 i32.load offset=20 if i32.const 0 @@ -13727,26 +13733,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -13754,13 +13760,13 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $8 + local.tee $4 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $4 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 @@ -13768,14 +13774,14 @@ local.get $8 i32.ne if - local.get $8 + local.get $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $8 + local.get $4 i64.load local.tee $6 i64.store @@ -13824,7 +13830,7 @@ i32.and i32.const 2 i32.shl - local.get $7 + local.get $5 i32.add local.tee $9 i32.load @@ -13837,20 +13843,20 @@ i32.add local.set $2 end - local.get $8 + local.get $4 i32.const 16 i32.add - local.set $8 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $7 + local.get $5 i32.store - local.get $7 + local.get $5 if local.get $0 - local.get $7 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -13866,7 +13872,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -13923,7 +13929,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $4 + local.tee $3 local.get $0 i32.load offset=4 i32.and @@ -13938,7 +13944,7 @@ if local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 1 i32.and if (result i32) @@ -13950,7 +13956,7 @@ i64.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $3 + local.get $4 i32.const -2 i32.and local.set $2 @@ -13994,18 +14000,18 @@ end local.get $0 i32.load offset=8 - local.set $3 + local.set $2 local.get $0 local.get $0 i32.load offset=16 - local.tee $2 + local.tee $4 i32.const 1 i32.add i32.store offset=16 - local.get $2 + local.get $4 i32.const 4 i32.shl - local.get $3 + local.get $2 i32.add local.tee $2 local.get $1 @@ -14021,7 +14027,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $4 + local.get $3 i32.and i32.const 2 i32.shl @@ -14157,14 +14163,14 @@ i32.load offset=4 i32.const 1 i32.shr_u - local.tee $3 + local.tee $2 i32.const 1 i32.add i32.const 4 local.get $0 i32.load offset=20 - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.const 4 i32.lt_u select @@ -14184,7 +14190,7 @@ end if local.get $0 - local.get $3 + local.get $2 call $~lib/set/Set#rehash end ) @@ -14220,14 +14226,14 @@ i32.store offset=8 local.get $2 call $~lib/set/Set#constructor - local.tee $3 + local.tee $2 i32.store loop $for-loop|0 local.get $1 i64.const 100 i64.lt_u if - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#has if @@ -14238,10 +14244,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#add - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#has i32.eqz @@ -14260,7 +14266,7 @@ br $for-loop|0 end end - local.get $3 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -14279,7 +14285,7 @@ i64.const 100 i64.lt_u if - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#has i32.eqz @@ -14291,10 +14297,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#add - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#has i32.eqz @@ -14313,7 +14319,7 @@ br $for-loop|1 end end - local.get $3 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -14326,8 +14332,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -14336,17 +14342,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $11 i32.const 0 i32.store - local.get $3 + local.get $2 i32.load offset=8 - local.set $11 - local.get $3 + local.set $9 + local.get $2 i32.load offset=16 - local.tee $12 - local.set $6 - local.get $4 + local.tee $10 + local.set $4 + local.get $11 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -14355,28 +14361,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 i32.const 16 i32.const 18 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $12 i32.store - local.get $2 + local.get $12 i32.const 0 i32.store - local.get $2 + local.get $12 i32.const 0 i32.store offset=4 - local.get $2 + local.get $12 i32.const 0 i32.store offset=8 - local.get $2 + local.get $12 i32.const 0 i32.store offset=12 - local.get $6 + local.get $4 i32.const 134217727 i32.gt_u if @@ -14388,66 +14394,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.const 8 - local.get $6 + local.get $4 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $9 + local.tee $7 i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $3 i32.store offset=4 - local.get $5 - local.get $9 + local.get $3 + local.get $7 call $~lib/memory/memory.fill - local.get $2 - local.get $5 + local.get $12 + local.get $3 i32.store - local.get $5 + local.get $3 if - local.get $2 - local.get $5 + local.get $12 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 - local.get $5 + local.get $12 + local.get $3 i32.store offset=4 - local.get $2 - local.get $9 + local.get $12 + local.get $7 i32.store offset=8 - local.get $2 - local.get $6 + local.get $12 + local.get $4 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 - local.get $2 + local.get $11 + local.get $12 i32.store loop $for-loop|01 - local.get $8 - local.get $12 + local.get $6 + local.get $10 i32.lt_s if - local.get $8 + local.get $6 i32.const 4 i32.shl - local.get $11 + local.get $9 i32.add - local.tee $4 + local.tee $3 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $2 + local.get $12 local.get $0 - local.get $4 + local.get $3 i64.load call $~lib/array/Array#__set local.get $0 @@ -14455,40 +14461,40 @@ i32.add local.set $0 end - local.get $8 + local.get $6 i32.const 1 i32.add - local.set $8 + local.set $6 br $for-loop|01 end end - local.get $2 + local.get $12 local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $2 + local.get $12 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $12 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $4 + local.tee $3 i32.store offset=8 loop $for-loop|2 - local.get $2 + local.get $12 i32.load offset=12 - local.get $7 + local.get $5 i32.gt_s if - local.get $3 local.get $2 - local.get $7 + local.get $12 + local.get $5 call $~lib/array/Array#__get call $~lib/set/Set#has i32.eqz @@ -14500,22 +14506,22 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $2 - local.get $7 + local.get $3 + local.get $12 + local.get $5 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $7 + local.get $5 i32.const 1 i32.add - local.set $7 + local.set $5 br $for-loop|2 end end - local.get $4 - i32.load offset=20 local.get $3 i32.load offset=20 + local.get $2 + i32.load offset=20 i32.ne if i32.const 0 @@ -14532,7 +14538,7 @@ i64.const 50 i64.lt_u if - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#has i32.eqz @@ -14544,10 +14550,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#delete - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#has if @@ -14565,7 +14571,7 @@ br $for-loop|3 end end - local.get $3 + local.get $2 i32.load offset=20 i32.const 50 i32.ne @@ -14584,7 +14590,7 @@ i64.const 50 i64.lt_u if - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#has if @@ -14595,10 +14601,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#add - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#has i32.eqz @@ -14610,10 +14616,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#delete - local.get $3 + local.get $2 local.get $1 call $~lib/set/Set#has if @@ -14631,7 +14637,7 @@ br $for-loop|4 end end - local.get $3 + local.get $2 i32.load offset=20 i32.const 50 i32.ne @@ -14643,9 +14649,9 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 call $~lib/set/Set#clear - local.get $3 + local.get $2 i32.load offset=20 if i32.const 0 @@ -14671,11 +14677,11 @@ (func $~lib/set/Set#rehash (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 f32) + (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 f32) (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -14693,21 +14699,21 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 3 i32.shl i32.const 3 @@ -14720,33 +14726,33 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $8 + local.tee $4 local.get $0 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $5 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 - local.get $5 - local.get $8 + local.get $4 + local.get $7 i32.ne if - local.get $8 + local.get $4 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $8 + local.get $4 f32.load - local.tee $4 + local.tee $8 f32.store local.get $2 - local.get $4 + local.get $8 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -14779,7 +14785,7 @@ i32.and i32.const 2 i32.shl - local.get $7 + local.get $5 i32.add local.tee $9 i32.load @@ -14792,20 +14798,20 @@ i32.add local.set $2 end - local.get $8 + local.get $4 i32.const 8 i32.add - local.set $8 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $7 + local.get $5 i32.store - local.get $7 + local.get $5 if local.get $0 - local.get $7 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -14867,7 +14873,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $4 + local.tee $3 local.get $0 i32.load offset=4 i32.and @@ -14882,7 +14888,7 @@ if local.get $2 i32.load offset=4 - local.tee $3 + local.tee $4 i32.const 1 i32.and if (result i32) @@ -14894,7 +14900,7 @@ f32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $3 + local.get $4 i32.const -2 i32.and local.set $2 @@ -14938,18 +14944,18 @@ end local.get $0 i32.load offset=8 - local.set $3 + local.set $2 local.get $0 local.get $0 i32.load offset=16 - local.tee $2 + local.tee $4 i32.const 1 i32.add i32.store offset=16 - local.get $2 + local.get $4 i32.const 3 i32.shl - local.get $3 + local.get $2 i32.add local.tee $2 local.get $1 @@ -14965,7 +14971,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $4 + local.get $3 i32.and i32.const 2 i32.shl @@ -15090,14 +15096,14 @@ i32.load offset=4 i32.const 1 i32.shr_u - local.tee $3 + local.tee $2 i32.const 1 i32.add i32.const 4 local.get $0 i32.load offset=20 - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.const 4 i32.lt_u select @@ -15117,14 +15123,14 @@ end if local.get $0 - local.get $3 + local.get $2 call $~lib/set/Set#rehash end ) (func $std/set/testNumeric (local $0 i32) (local $1 i32) - (local $2 f32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -15134,7 +15140,7 @@ (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) + (local $12 f32) global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -15153,18 +15159,18 @@ i32.store offset=8 local.get $0 call $~lib/set/Set#constructor - local.tee $3 + local.tee $11 i32.store loop $for-loop|0 - local.get $2 + local.get $12 f32.const 100 f32.lt if - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $2 + local.get $12 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15205,19 +15211,19 @@ if local.get $0 i32.load offset=4 - local.tee $5 + local.tee $8 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $12 local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $5 + local.get $8 i32.const -2 i32.and local.set $0 @@ -15236,14 +15242,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $2 + local.get $11 + local.get $12 call $~lib/set/Set#add - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $2 + local.get $12 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15284,19 +15290,19 @@ if local.get $0 i32.load offset=4 - local.tee $5 + local.tee $8 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $12 local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find1 - local.get $5 + local.get $8 i32.const -2 i32.and local.set $0 @@ -15316,14 +15322,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $12 f32.const 1 f32.add - local.set $2 + local.set $12 br $for-loop|0 end end - local.get $3 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -15336,17 +15342,17 @@ unreachable end f32.const 50 - local.set $2 + local.set $12 loop $for-loop|1 - local.get $2 + local.get $12 f32.const 100 f32.lt if - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $2 + local.get $12 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15387,19 +15393,19 @@ if local.get $0 i32.load offset=4 - local.tee $5 + local.tee $8 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $12 local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find4 - local.get $5 + local.get $8 i32.const -2 i32.and local.set $0 @@ -15419,14 +15425,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $2 + local.get $11 + local.get $12 call $~lib/set/Set#add - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $2 + local.get $12 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15467,19 +15473,19 @@ if local.get $0 i32.load offset=4 - local.tee $5 + local.tee $8 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $12 local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find7 - local.get $5 + local.get $8 i32.const -2 i32.and local.set $0 @@ -15499,14 +15505,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $12 f32.const 1 f32.add - local.set $2 + local.set $12 br $for-loop|1 end end - local.get $3 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -15529,17 +15535,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $0 i32.const 0 i32.store - local.get $3 + local.get $11 i32.load offset=8 - local.set $11 - local.get $3 + local.set $6 + local.get $11 i32.load offset=16 - local.tee $12 - local.set $5 - local.get $8 + local.tee $5 + local.set $4 + local.get $0 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -15548,28 +15554,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $8 i64.const 0 i64.store - local.get $0 + local.get $8 i32.const 16 i32.const 20 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $3 i32.store - local.get $4 + local.get $3 i32.const 0 i32.store - local.get $4 + local.get $3 i32.const 0 i32.store offset=4 - local.get $4 + local.get $3 i32.const 0 i32.store offset=8 - local.get $4 + local.get $3 i32.const 0 i32.store offset=12 - local.get $5 + local.get $4 i32.const 268435455 i32.gt_u if @@ -15581,58 +15587,58 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 8 - local.get $5 + local.get $4 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $9 + local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $2 i32.store offset=4 - local.get $0 - local.get $9 + local.get $2 + local.get $8 call $~lib/memory/memory.fill - local.get $4 - local.get $0 + local.get $3 + local.get $2 i32.store - local.get $0 + local.get $2 if - local.get $4 - local.get $0 + local.get $3 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $0 + local.get $3 + local.get $2 i32.store offset=4 - local.get $4 - local.get $9 + local.get $3 + local.get $8 i32.store offset=8 + local.get $3 local.get $4 - local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $4 + local.get $0 + local.get $3 i32.store loop $for-loop|01 - local.get $6 - local.get $12 - i32.lt_s + local.get $5 + local.get $10 + i32.gt_s if - local.get $6 + local.get $10 i32.const 3 i32.shl - local.get $11 + local.get $6 i32.add - local.tee $5 + local.tee $8 i32.load offset=4 i32.const 1 i32.and @@ -15643,10 +15649,10 @@ i32.const 1 i32.add local.set $1 - local.get $5 + local.get $8 f32.load - local.set $2 - local.get $4 + local.set $12 + local.get $3 i32.load offset=12 local.get $0 i32.le_u @@ -15662,62 +15668,62 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $0 i32.const 1 i32.add - local.tee $5 + local.tee $8 i32.const 2 i32.const 1 call $~lib/array/ensureCapacity - local.get $4 - local.get $5 + local.get $3 + local.get $8 i32.store offset=12 end - local.get $4 + local.get $3 i32.load offset=4 local.get $0 i32.const 2 i32.shl i32.add - local.get $2 + local.get $12 f32.store end - local.get $6 + local.get $10 i32.const 1 i32.add - local.set $6 + local.set $10 br $for-loop|01 end end - local.get $4 + local.get $3 local.get $1 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $4 + local.get $3 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $1 i32.store offset=8 loop $for-loop|2 - local.get $4 + local.get $3 i32.load offset=12 - local.get $7 + local.get $9 i32.gt_s if - local.get $4 - local.get $7 + local.get $3 + local.get $9 call $~lib/array/Array#__get - local.tee $2 + local.tee $12 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15742,9 +15748,9 @@ i32.const -1028477379 i32.mul local.set $0 - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 local.get $0 i32.const 16 @@ -15763,19 +15769,19 @@ if local.get $0 i32.load offset=4 - local.tee $6 + local.tee $10 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $12 local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $6 + local.get $10 i32.const -2 i32.and local.set $0 @@ -15796,20 +15802,20 @@ unreachable end local.get $1 - local.get $4 - local.get $7 + local.get $3 + local.get $9 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $7 + local.get $9 i32.const 1 i32.add - local.set $7 + local.set $9 br $for-loop|2 end end local.get $1 i32.load offset=20 - local.get $3 + local.get $11 i32.load offset=20 i32.ne if @@ -15821,17 +15827,17 @@ unreachable end f32.const 0 - local.set $2 + local.set $12 loop $for-loop|3 - local.get $2 + local.get $12 f32.const 50 f32.lt if - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $2 + local.get $12 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15841,24 +15847,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 @@ -15872,19 +15878,19 @@ if local.get $0 i32.load offset=4 - local.tee $4 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $12 local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find13 - local.get $4 + local.get $1 i32.const -2 i32.and local.set $0 @@ -15904,14 +15910,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $2 + local.get $11 + local.get $12 call $~lib/set/Set#delete - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $2 + local.get $12 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15921,24 +15927,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 @@ -15952,19 +15958,19 @@ if local.get $0 i32.load offset=4 - local.tee $4 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $12 local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find16 - local.get $4 + local.get $1 i32.const -2 i32.and local.set $0 @@ -15983,14 +15989,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $12 f32.const 1 f32.add - local.set $2 + local.set $12 br $for-loop|3 end end - local.get $3 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -16003,17 +16009,17 @@ unreachable end f32.const 0 - local.set $2 + local.set $12 loop $for-loop|4 - local.get $2 + local.get $12 f32.const 50 f32.lt if - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $2 + local.get $12 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -16023,24 +16029,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 @@ -16054,19 +16060,19 @@ if local.get $0 i32.load offset=4 - local.tee $4 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $12 local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find19 - local.get $4 + local.get $1 i32.const -2 i32.and local.set $0 @@ -16085,14 +16091,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $2 + local.get $11 + local.get $12 call $~lib/set/Set#add - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $2 + local.get $12 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -16102,24 +16108,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 @@ -16133,19 +16139,19 @@ if local.get $0 i32.load offset=4 - local.tee $4 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $12 local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find22 - local.get $4 + local.get $1 i32.const -2 i32.and local.set $0 @@ -16165,14 +16171,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $2 + local.get $11 + local.get $12 call $~lib/set/Set#delete - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $2 + local.get $12 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -16182,24 +16188,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 @@ -16213,19 +16219,19 @@ if local.get $0 i32.load offset=4 - local.tee $4 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $12 local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find25 - local.get $4 + local.get $1 i32.const -2 i32.and local.set $0 @@ -16244,14 +16250,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $12 f32.const 1 f32.add - local.set $2 + local.set $12 br $for-loop|4 end end - local.get $3 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -16263,9 +16269,9 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $11 call $~lib/set/Set#clear - local.get $3 + local.get $11 i32.load offset=20 if i32.const 0 @@ -16378,12 +16384,12 @@ (func $~lib/set/Set#rehash (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 i64) - (local $5 f64) + (local $4 i32) + (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) - (local $9 i32) + (local $8 f64) + (local $9 i64) (local $10 i32) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -16401,26 +16407,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $8 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -16428,36 +16434,36 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $9 + local.tee $4 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $6 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 - local.get $6 - local.get $9 + local.get $4 + local.get $7 i32.ne if - local.get $9 + local.get $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $9 + local.get $4 f64.load - local.tee $5 + local.tee $8 f64.store local.get $2 local.get $1 - local.get $5 + local.get $8 i64.reinterpret_f64 - local.tee $4 + local.tee $9 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -16467,7 +16473,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $4 + local.get $9 i64.const 32 i64.shr_u i32.wrap_i64 @@ -16500,7 +16506,7 @@ i32.and i32.const 2 i32.shl - local.get $8 + local.get $5 i32.add local.tee $10 i32.load @@ -16513,20 +16519,20 @@ i32.add local.set $2 end - local.get $9 + local.get $4 i32.const 16 i32.add - local.set $9 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $8 + local.get $5 i32.store - local.get $8 + local.get $5 if local.get $0 - local.get $8 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -16542,7 +16548,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -16555,14 +16561,14 @@ ) (func $~lib/set/Set#add (param $0 i32) (param $1 f64) (local $2 i32) - (local $3 i32) - (local $4 i64) + (local $3 i64) + (local $4 i32) (local $5 i32) local.get $0 i32.load local.get $1 i64.reinterpret_f64 - local.tee $4 + local.tee $3 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -16572,7 +16578,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $4 + local.get $3 i64.const 32 i64.shr_u i32.wrap_i64 @@ -16602,7 +16608,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $5 + local.tee $4 local.get $0 i32.load offset=4 i32.and @@ -16617,7 +16623,7 @@ if local.get $2 i32.load offset=8 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -16629,7 +16635,7 @@ f64.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $3 + local.get $5 i32.const -2 i32.and local.set $2 @@ -16673,18 +16679,18 @@ end local.get $0 i32.load offset=8 - local.set $3 + local.set $2 local.get $0 local.get $0 i32.load offset=16 - local.tee $2 + local.tee $5 i32.const 1 i32.add i32.store offset=16 - local.get $2 + local.get $5 i32.const 4 i32.shl - local.get $3 + local.get $2 i32.add local.tee $2 local.get $1 @@ -16700,7 +16706,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $5 + local.get $4 i32.and i32.const 2 i32.shl @@ -16736,15 +16742,15 @@ ) (func $~lib/set/Set#delete (param $0 i32) (param $1 f64) (local $2 i32) - (local $3 i32) - (local $4 i64) + (local $3 i64) + (local $4 i32) local.get $0 i32.load local.get $0 i32.load offset=4 local.get $1 i64.reinterpret_f64 - local.tee $4 + local.tee $3 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -16754,7 +16760,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $4 + local.get $3 i64.const 32 i64.shr_u i32.wrap_i64 @@ -16796,7 +16802,7 @@ if local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 1 i32.and if (result i32) @@ -16808,7 +16814,7 @@ f64.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $3 + local.get $4 i32.const -2 i32.and local.set $2 @@ -16839,14 +16845,14 @@ i32.load offset=4 i32.const 1 i32.shr_u - local.tee $3 + local.tee $2 i32.const 1 i32.add i32.const 4 local.get $0 i32.load offset=20 - local.tee $2 - local.get $2 + local.tee $4 + local.get $4 i32.const 4 i32.lt_u select @@ -16866,7 +16872,7 @@ end if local.get $0 - local.get $3 + local.get $2 call $~lib/set/Set#rehash end ) @@ -16894,22 +16900,22 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $11 + local.tee $0 i64.const 0 i64.store - local.get $11 + local.get $0 i32.const 0 i32.store offset=8 - local.get $11 + local.get $0 call $~lib/set/Set#constructor - local.tee $10 + local.tee $11 i32.store loop $for-loop|0 local.get $12 f64.const 100 f64.lt if - local.get $10 + local.get $11 local.get $12 call $~lib/set/Set#has if @@ -16920,10 +16926,10 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $11 local.get $12 call $~lib/set/Set#add - local.get $10 + local.get $11 local.get $12 call $~lib/set/Set#has i32.eqz @@ -16942,7 +16948,7 @@ br $for-loop|0 end end - local.get $10 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -16961,7 +16967,7 @@ f64.const 100 f64.lt if - local.get $10 + local.get $11 local.get $12 call $~lib/set/Set#has i32.eqz @@ -16973,10 +16979,10 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $11 local.get $12 call $~lib/set/Set#add - local.get $10 + local.get $11 local.get $12 call $~lib/set/Set#has i32.eqz @@ -16995,7 +17001,7 @@ br $for-loop|1 end end - local.get $10 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -17008,8 +17014,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $11 - local.get $11 + local.tee $0 + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -17018,17 +17024,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $4 i32.const 0 i32.store - local.get $10 + local.get $11 i32.load offset=8 - local.set $3 - local.get $10 + local.set $6 + local.get $11 i32.load offset=16 - local.tee $2 - local.set $8 - local.get $1 + local.tee $5 + local.set $0 + local.get $4 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -17037,28 +17043,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $11 + local.tee $8 i64.const 0 i64.store - local.get $11 + local.get $8 i32.const 16 i32.const 22 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $3 i32.store - local.get $11 + local.get $3 i32.const 0 i32.store - local.get $11 + local.get $3 i32.const 0 i32.store offset=4 - local.get $11 + local.get $3 i32.const 0 i32.store offset=8 - local.get $11 + local.get $3 i32.const 0 i32.store offset=12 - local.get $8 + local.get $0 i32.const 134217727 i32.gt_u if @@ -17070,77 +17076,77 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $0 i32.const 8 - local.get $8 + local.get $0 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $5 + local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $2 i32.store offset=4 - local.get $9 - local.get $5 + local.get $2 + local.get $8 call $~lib/memory/memory.fill - local.get $11 - local.get $9 + local.get $3 + local.get $2 i32.store - local.get $9 + local.get $2 if - local.get $11 - local.get $9 + local.get $3 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 - local.get $9 + local.get $3 + local.get $2 i32.store offset=4 - local.get $11 - local.get $5 - i32.store offset=8 - local.get $11 + local.get $3 local.get $8 + i32.store offset=8 + local.get $3 + local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $11 + local.get $4 + local.get $3 i32.store loop $for-loop|01 - local.get $2 - local.get $6 + local.get $5 + local.get $9 i32.gt_s if - local.get $6 + local.get $9 i32.const 4 i32.shl - local.get $3 + local.get $6 i32.add - local.tee $9 + local.tee $8 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.add - local.set $0 - local.get $9 + local.set $1 + local.get $8 f64.load local.set $12 - local.get $11 + local.get $3 i32.load offset=12 - local.get $1 + local.get $0 i32.le_u if - local.get $1 + local.get $0 i32.const 0 i32.lt_s if @@ -17151,61 +17157,61 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $1 + local.get $3 + local.get $0 i32.const 1 i32.add - local.tee $9 + local.tee $8 i32.const 3 i32.const 1 call $~lib/array/ensureCapacity - local.get $11 - local.get $9 + local.get $3 + local.get $8 i32.store offset=12 end - local.get $11 + local.get $3 i32.load offset=4 - local.get $1 + local.get $0 i32.const 3 i32.shl i32.add local.get $12 f64.store end - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|01 end end - local.get $11 - local.get $0 + local.get $3 + local.get $1 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $11 - local.get $0 + local.get $3 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $1 i32.store offset=8 loop $for-loop|2 - local.get $11 + local.get $3 i32.load offset=12 - local.get $7 + local.get $10 i32.gt_s if - local.get $10 local.get $11 - local.get $7 + local.get $3 + local.get $10 call $~lib/array/Array#__get call $~lib/set/Set#has i32.eqz @@ -17218,20 +17224,20 @@ unreachable end local.get $1 - local.get $11 - local.get $7 + local.get $3 + local.get $10 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $7 + local.get $10 i32.const 1 i32.add - local.set $7 + local.set $10 br $for-loop|2 end end local.get $1 i32.load offset=20 - local.get $10 + local.get $11 i32.load offset=20 i32.ne if @@ -17249,7 +17255,7 @@ f64.const 50 f64.lt if - local.get $10 + local.get $11 local.get $12 call $~lib/set/Set#has i32.eqz @@ -17261,10 +17267,10 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $11 local.get $12 call $~lib/set/Set#delete - local.get $10 + local.get $11 local.get $12 call $~lib/set/Set#has if @@ -17282,7 +17288,7 @@ br $for-loop|3 end end - local.get $10 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -17301,7 +17307,7 @@ f64.const 50 f64.lt if - local.get $10 + local.get $11 local.get $12 call $~lib/set/Set#has if @@ -17312,10 +17318,10 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $11 local.get $12 call $~lib/set/Set#add - local.get $10 + local.get $11 local.get $12 call $~lib/set/Set#has i32.eqz @@ -17327,10 +17333,10 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $11 local.get $12 call $~lib/set/Set#delete - local.get $10 + local.get $11 local.get $12 call $~lib/set/Set#has if @@ -17348,7 +17354,7 @@ br $for-loop|4 end end - local.get $10 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -17360,9 +17366,9 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $11 call $~lib/set/Set#clear - local.get $10 + local.get $11 i32.load offset=20 if i32.const 0 @@ -17418,14 +17424,13 @@ unreachable end local.get $0 - local.tee $1 i32.load - local.tee $0 + local.tee $1 if - local.get $0 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end - local.get $1 + local.get $0 i32.load offset=8 local.tee $0 if diff --git a/tests/compiler/std/static-array.optimized.wat b/tests/compiler/std/static-array.optimized.wat index f571600d9a..1bf00b13b5 100644 --- a/tests/compiler/std/static-array.optimized.wat +++ b/tests/compiler/std/static-array.optimized.wat @@ -164,7 +164,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -187,7 +187,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -197,15 +197,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -246,20 +246,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -354,19 +354,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -391,9 +391,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -401,17 +401,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -699,10 +699,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -714,15 +714,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -752,7 +752,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1065,7 +1065,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 18396 i32.ge_u if @@ -1075,20 +1075,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1101,8 +1101,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1329,14 +1328,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1346,17 +1345,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1372,22 +1371,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1398,11 +1397,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1448,17 +1447,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -1604,19 +1603,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -1631,7 +1630,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -1642,10 +1641,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -1653,10 +1652,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -1667,7 +1666,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -1722,7 +1721,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -1733,10 +1732,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -1744,10 +1743,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -1758,7 +1757,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -1784,17 +1783,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -1809,7 +1808,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -1820,10 +1819,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -1831,10 +1830,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -1845,7 +1844,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -1882,131 +1881,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -2023,59 +2026,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -2156,7 +2163,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $6 + local.tee $5 i32.load i32.const -4 i32.and @@ -2165,17 +2172,17 @@ local.get $1 i32.ge_u if - local.get $6 + local.get $5 local.get $1 i32.store offset=16 local.get $0 return end - local.get $6 + local.get $5 i32.load offset=12 - local.set $7 + local.set $4 local.get $1 - local.tee $3 + local.tee $2 i32.const 1073741804 i32.ge_u if @@ -2231,7 +2238,7 @@ global.set $~lib/rt/itcms/threshold end end - local.get $3 + local.get $2 i32.const 16 i32.add local.set $1 @@ -2241,7 +2248,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $5 + local.tee $7 local.get $1 i32.const 1073741820 i32.gt_u @@ -2267,34 +2274,34 @@ i32.const 4 i32.sub end - local.tee $1 + local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $4 + local.tee $1 i32.eqz if memory.size - local.tee $2 - local.get $1 + local.tee $1 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $1 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $1 + local.get $3 i32.add else - local.get $1 + local.get $3 end i32.const 4 - local.get $5 + local.get $7 i32.load offset=1568 - local.get $2 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -2308,16 +2315,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 - local.get $2 - local.get $4 + local.tee $6 + local.get $1 + local.get $6 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $6 memory.grow i32.const 0 i32.lt_s @@ -2325,18 +2332,18 @@ unreachable end end - local.get $5 - local.get $2 + local.get $7 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $5 - local.get $1 + local.get $7 + local.get $3 call $~lib/rt/tlsf/searchBlock - local.tee $4 + local.tee $1 i32.eqz if i32.const 0 @@ -2347,11 +2354,11 @@ unreachable end end - local.get $4 + local.get $1 i32.load i32.const -4 i32.and - local.get $1 + local.get $3 i32.lt_u if i32.const 0 @@ -2361,16 +2368,13 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $4 + local.get $7 + local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 - local.set $2 - local.get $4 - local.tee $1 i32.load - local.set $4 - local.get $2 + local.set $8 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -2383,40 +2387,40 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $8 i32.const -4 i32.and - local.get $2 + local.get $3 i32.sub - local.tee $8 + local.tee $6 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $8 i32.const 2 i32.and - local.get $2 + local.get $3 i32.or i32.store - local.get $2 + local.get $3 local.get $1 i32.const 4 i32.add i32.add - local.tee $4 - local.get $8 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $5 - local.get $4 + local.get $7 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $8 i32.const -2 i32.and i32.store @@ -2428,26 +2432,26 @@ i32.const -4 i32.and i32.add - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.load i32.const -3 i32.and i32.store end local.get $1 - local.get $7 + local.get $4 i32.store offset=12 local.get $1 - local.get $3 + local.get $2 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $3 i32.load offset=8 local.set $4 local.get $1 global.get $~lib/rt/itcms/white - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $1 @@ -2461,7 +2465,7 @@ local.get $1 i32.or i32.store offset=4 - local.get $2 + local.get $3 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2477,14 +2481,14 @@ i32.const 20 i32.add local.tee $4 - local.get $3 + local.get $2 call $~lib/memory/memory.fill - local.get $3 - local.get $6 + local.get $2 + local.get $5 i32.load offset=16 local.tee $1 local.get $1 - local.get $3 + local.get $2 i32.gt_u select local.set $5 @@ -2537,17 +2541,17 @@ i32.sub local.set $5 local.get $1 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $0 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 br $while-continue|0 @@ -2582,17 +2586,17 @@ local.get $5 if local.get $1 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $0 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 local.get $5 @@ -2682,7 +2686,7 @@ (local $4 i32) local.get $0 i32.load offset=8 - local.tee $3 + local.tee $2 local.get $1 i32.shr_u i32.const 1 @@ -2701,11 +2705,11 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $0 i32.load - local.tee $2 - local.get $3 + local.tee $3 + local.get $2 i32.const 1 i32.shl local.tee $4 @@ -2728,11 +2732,11 @@ local.tee $1 i32.add local.get $4 - local.get $3 + local.get $2 i32.sub call $~lib/memory/memory.fill local.get $1 - local.get $2 + local.get $3 i32.ne if local.get $0 @@ -2742,7 +2746,6 @@ local.get $1 i32.store offset=4 local.get $1 - local.tee $2 if local.get $0 i32.eqz @@ -2755,10 +2758,10 @@ unreachable end global.get $~lib/rt/itcms/white - local.get $2 + local.get $1 i32.const 20 i32.sub - local.tee $2 + local.tee $1 i32.load offset=4 i32.const 3 i32.and @@ -2770,23 +2773,23 @@ i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $2 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $2 + local.get $1 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $2 i32.const 3 i32.eq i32.and if - local.get $2 + local.get $1 call $~lib/rt/itcms/Object#makeGray end end diff --git a/tests/compiler/std/staticarray.optimized.wat b/tests/compiler/std/staticarray.optimized.wat index 7d291d3a2d..3322023947 100644 --- a/tests/compiler/std/staticarray.optimized.wat +++ b/tests/compiler/std/staticarray.optimized.wat @@ -217,9 +217,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -227,9 +226,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -307,7 +305,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -330,7 +328,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -340,15 +338,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -389,20 +387,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -497,19 +495,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -534,9 +532,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -544,17 +542,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -842,10 +840,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -857,15 +855,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -895,7 +893,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1048,13 +1046,12 @@ unreachable end local.get $1 - local.tee $0 - local.get $0 + local.get $1 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $1 call $~lib/rt/tlsf/insertBlock ) (func $~lib/rt/itcms/step (result i32) @@ -1080,7 +1077,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $1 + local.set $2 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -1097,11 +1094,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -1143,9 +1140,9 @@ if local.get $0 i32.load - local.tee $2 + local.tee $1 if - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -1169,11 +1166,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -1199,7 +1196,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $1 + local.get $2 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -1419,7 +1416,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $1 local.get $0 i32.const 1073741820 i32.gt_u @@ -1445,34 +1442,34 @@ i32.const 4 i32.sub end - local.tee $0 + local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if memory.size - local.tee $2 - local.get $0 + local.tee $0 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $0 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $0 + local.get $3 i32.add else - local.get $0 + local.get $3 end i32.const 4 - local.get $3 + local.get $1 i32.load offset=1568 - local.get $2 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1486,16 +1483,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 - local.get $1 + local.tee $2 + local.get $0 local.get $2 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $1 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1503,18 +1500,18 @@ unreachable end end - local.get $3 - local.get $2 + local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $1 local.get $3 - local.get $0 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1525,11 +1522,11 @@ unreachable end end - local.get $1 + local.get $0 i32.load i32.const -4 i32.and - local.get $0 + local.get $3 i32.lt_u if i32.const 0 @@ -1539,13 +1536,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 local.get $1 + local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $1 - i32.load - local.set $2 local.get $0 + i32.load + local.set $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1558,59 +1555,59 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 i32.const -4 i32.and - local.get $0 + local.get $3 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if - local.get $1 - local.get $2 + local.get $0 + local.get $4 i32.const 2 i32.and - local.get $0 + local.get $3 i32.or i32.store + local.get $3 local.get $0 - local.get $1 i32.const 4 i32.add i32.add - local.tee $0 - local.get $4 + local.tee $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $1 local.get $3 - local.get $0 call $~lib/rt/tlsf/insertBlock else - local.get $1 - local.get $2 + local.get $0 + local.get $4 i32.const -2 i32.and i32.store - local.get $1 + local.get $0 i32.const 4 i32.add - local.get $1 + local.get $0 i32.load i32.const -4 i32.and i32.add - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.load i32.const -3 i32.and i32.store end - local.get $1 + local.get $0 i32.const 4 i32.add ) @@ -1684,14 +1681,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1701,17 +1698,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1727,22 +1724,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1753,11 +1750,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1862,26 +1859,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1914,17 +1911,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2070,19 +2067,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2097,7 +2094,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -2108,10 +2105,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2119,10 +2116,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -2133,7 +2130,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2188,7 +2185,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -2199,10 +2196,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2210,10 +2207,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -2224,7 +2221,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2250,17 +2247,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2275,7 +2272,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -2286,10 +2283,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2297,10 +2294,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -2311,7 +2308,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2348,131 +2345,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -2489,59 +2490,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -2929,14 +2934,14 @@ if local.get $3 i32.load16_u - local.tee $2 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $2 i32.ne if - local.get $2 local.get $4 + local.get $2 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -3162,6 +3167,7 @@ end end global.get $~lib/memory/__stack_pointer + local.get $3 local.get $6 local.get $1 i32.const 20 @@ -3169,9 +3175,8 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $7 + local.tee $3 i32.mul - local.get $3 i32.add i32.const 1 i32.shl @@ -3193,32 +3198,32 @@ local.get $4 i32.add i32.load - local.tee $3 + local.tee $7 i32.store offset=4 - local.get $3 + local.get $7 if local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.get $3 - local.get $3 + local.get $7 + local.get $7 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $7 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $2 - local.get $3 + local.get $7 i32.add local.set $2 end - local.get $7 + local.get $3 if local.get $2 i32.const 1 @@ -3226,12 +3231,12 @@ local.get $0 i32.add local.get $1 - local.get $7 + local.get $3 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $2 - local.get $7 + local.get $3 i32.add local.set $2 end @@ -3332,13 +3337,13 @@ i32.sub i32.const 1 i32.add - local.tee $6 + local.tee $5 local.get $3 i32.sub i32.const 1 i32.and i32.sub - local.get $6 + local.get $5 i32.const 1 i32.and local.get $3 @@ -3560,22 +3565,22 @@ i32.add local.tee $3 i32.load - local.set $6 + local.set $5 local.get $3 local.get $2 i32.const 2 i32.shl local.get $0 i32.add - local.tee $5 + local.tee $3 i32.load i32.store local.get $1 i32.const 1 i32.add local.set $1 + local.get $3 local.get $5 - local.get $6 i32.store local.get $2 i32.const 1 @@ -3694,18 +3699,18 @@ local.get $4 i32.add i32.load - local.set $8 + local.set $7 local.get $2 i32.const 2 i32.shl local.get $4 i32.add i32.load - local.set $7 + local.set $8 i32.const 2 global.set $~argumentsLength - local.get $8 local.get $7 + local.get $8 local.get $5 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -3717,7 +3722,7 @@ i32.shl local.get $0 i32.add - local.get $8 + local.get $7 i32.store local.get $6 i32.const 1 @@ -3729,7 +3734,7 @@ i32.shl local.get $0 i32.add - local.get $7 + local.get $8 i32.store local.get $2 i32.const 1 @@ -3750,12 +3755,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) local.get $1 i32.const 48 i32.le_s @@ -3769,11 +3774,10 @@ block $break|0 block $case1|0 local.get $1 - local.tee $4 i32.const 3 i32.ne if - local.get $4 + local.get $1 i32.const 2 i32.eq br_if $case1|0 @@ -3781,87 +3785,87 @@ end local.get $0 i32.load - local.set $3 + local.set $1 local.get $0 i32.load offset=4 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $3 select i32.store - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $3 select - local.set $3 + local.set $1 local.get $0 i32.load offset=8 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $3 select i32.store offset=4 local.get $0 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $3 select i32.store offset=8 end local.get $0 i32.load - local.set $3 + local.set $1 local.get $0 i32.load offset=4 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $2 select i32.store local.get $0 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $2 select i32.store offset=4 return end local.get $0 i32.const 0 - local.get $4 + local.get $1 i32.const 1 i32.sub i32.const 0 @@ -3873,35 +3877,35 @@ local.get $1 i32.clz i32.sub - local.tee $6 + local.tee $5 i32.const 2 i32.shl - local.tee $5 + local.tee $6 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $10 - local.get $5 + local.tee $11 + local.get $6 i32.add - local.set $11 + local.set $10 i32.const 0 - local.set $5 + local.set $6 loop $for-loop|1 local.get $5 local.get $6 - i32.lt_u + i32.gt_u if - local.get $5 + local.get $6 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.const -1 i32.store - local.get $5 + local.get $6 i32.const 1 i32.add - local.set $5 + local.set $6 br $for-loop|1 end end @@ -3909,84 +3913,84 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $12 + local.set $9 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $9 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $7 + local.tee $1 i32.const 1 i32.add - local.tee $1 + local.tee $6 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $9 + local.get $12 i32.const 31 - local.get $9 + local.get $12 i32.const 31 i32.lt_s select - local.tee $7 - local.get $1 + local.tee $1 + local.get $6 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $7 - local.get $9 + local.get $1 + local.get $12 i32.lt_s if local.get $0 - local.get $7 + local.get $1 i32.const 1 i32.add - local.tee $6 - local.get $9 + local.tee $5 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $5 - local.get $6 + local.tee $6 + local.get $5 i32.sub i32.const 1 i32.add - local.tee $8 + local.tee $4 i32.const 32 i32.lt_s if local.get $0 - local.get $6 - local.get $9 - local.get $6 + local.get $5 + local.get $12 + local.get $5 i32.const 31 i32.add - local.tee $1 - local.get $1 - local.get $9 + local.tee $6 + local.get $6 + local.get $12 i32.gt_s select - local.tee $5 - local.get $8 + local.tee $6 + local.get $4 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $6 + local.get $5 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $9 + local.get $12 i32.const 1 i32.add i64.extend_i32_u - local.tee $13 + local.tee $8 i64.div_u local.get $5 local.get $6 @@ -3996,33 +4000,31 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $8 i64.div_u i64.xor i32.wrap_i64 i32.clz - local.set $1 - local.get $4 - local.set $8 + local.set $4 loop $for-loop|3 - local.get $1 - local.get $8 + local.get $4 + local.get $7 i32.lt_u if - local.get $8 + local.get $7 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.load - local.tee $4 + local.tee $13 i32.const -1 i32.ne if local.get $0 - local.get $4 - local.get $11 - local.get $8 + local.get $13 + local.get $10 + local.get $7 i32.const 2 i32.shl local.tee $3 @@ -4030,54 +4032,54 @@ i32.load i32.const 1 i32.add - local.get $7 - local.get $12 + local.get $1 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $10 + local.get $11 i32.add i32.const -1 i32.store - local.get $4 + local.get $13 local.set $3 end - local.get $8 + local.get $7 i32.const 1 i32.sub - local.set $8 + local.set $7 br $for-loop|3 end end - local.get $10 - local.get $1 + local.get $11 + local.get $4 i32.const 2 i32.shl - local.tee $4 + local.tee $7 i32.add local.get $3 i32.store - local.get $4 - local.get $11 - i32.add local.get $7 + local.get $10 + i32.add + local.get $1 i32.store - local.get $6 - local.set $3 local.get $5 + local.set $3 + local.get $6 + local.set $1 + local.get $4 local.set $7 - local.get $1 - local.set $4 br $while-continue|2 end end loop $for-loop|4 - local.get $4 + local.get $7 if - local.get $4 + local.get $7 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.load local.tee $1 @@ -4086,29 +4088,29 @@ if local.get $0 local.get $1 - local.get $4 + local.get $7 i32.const 2 i32.shl - local.get $11 + local.get $10 i32.add i32.load i32.const 1 i32.add - local.get $9 local.get $12 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns end - local.get $4 + local.get $7 i32.const 1 i32.sub - local.set $4 + local.set $7 br $for-loop|4 end end - local.get $12 + local.get $9 call $~lib/rt/tlsf/__free - local.get $10 + local.get $11 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) @@ -4268,11 +4270,11 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 f32) - (local $9 f64) + (local $8 i32) + (local $9 i32) (local $10 i32) - (local $11 i32) - (local $12 i32) + (local $11 f32) + (local $12 f64) (local $13 i32) (local $14 i32) (local $15 i32) @@ -4287,19 +4289,19 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $15 i64.const 0 i64.store - local.get $2 + local.get $15 i64.const 0 i64.store offset=8 - local.get $2 + local.get $15 i64.const 0 i64.store offset=16 - local.get $2 + local.get $15 i64.const 0 i64.store offset=24 - local.get $2 + local.get $15 i32.const 1056 i32.store i32.const 1056 @@ -4456,17 +4458,17 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $15 i32.const 1312 i32.const 12 call $~lib/memory/memory.copy - local.get $2 + local.get $15 global.set $std/staticarray/arr3 global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $2 + local.tee $15 i32.store - local.get $2 + local.get $15 i32.const 0 call $~lib/staticarray/StaticArray#__get i32.const 5 @@ -4481,9 +4483,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $2 + local.tee $15 i32.store - local.get $2 + local.get $15 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 6 @@ -4498,9 +4500,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $2 + local.tee $15 i32.store - local.get $2 + local.get $15 i32.const 2 call $~lib/staticarray/StaticArray#__get i32.const 7 @@ -4515,9 +4517,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $2 + local.tee $15 i32.store - local.get $2 + local.get $15 i32.const 20 i32.sub i32.load offset=16 @@ -4535,16 +4537,16 @@ end global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $2 + local.tee $15 i32.store - local.get $2 + local.get $15 i32.const 8 call $~lib/staticarray/StaticArray#__set global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $2 + local.tee $15 i32.store - local.get $2 + local.get $15 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 8 @@ -4560,17 +4562,17 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $15 i32.const 1312 i32.const 12 call $~lib/memory/memory.copy - local.get $2 + local.get $15 global.set $std/staticarray/arr3 global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $2 + local.tee $15 i32.store - local.get $2 + local.get $15 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 6 @@ -4587,25 +4589,25 @@ i32.const 8 i32.const 5 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $15 i32.store offset=4 - local.get $2 + local.get $15 i32.const 0 call $std/staticarray/Ref#constructor call $~lib/staticarray/StaticArray#__uset - local.get $2 + local.get $15 i32.const 1 call $std/staticarray/Ref#constructor call $~lib/staticarray/StaticArray#__uset - local.get $2 + local.get $15 global.set $std/staticarray/arr4 i32.const 0 global.set $std/staticarray/arr3 i32.const 0 global.set $std/staticarray/arr4 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $2 + local.tee $15 + local.get $15 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -4614,25 +4616,25 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $15 i32.const 0 i32.store - local.get $2 + local.get $15 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $15 i32.store - local.get $2 + local.get $15 i32.const 12 call $~lib/memory/memory.fill global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $15 i32.store offset=4 - local.get $2 + local.get $15 i32.const 20 i32.sub i32.load offset=16 @@ -4649,17 +4651,17 @@ unreachable end loop $for-loop|0 - local.get $2 + local.get $15 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.get $3 + local.get $0 i32.gt_s if - local.get $2 - local.get $3 + local.get $15 + local.get $0 call $~lib/staticarray/StaticArray#__get if i32.const 0 @@ -4669,10 +4671,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|0 end end @@ -4686,11 +4688,11 @@ global.get $~lib/memory/__stack_pointer local.get $0 call $~lib/staticarray/StaticArray.fromArray - local.tee $2 + local.tee $15 i32.store offset=4 local.get $0 i32.load offset=12 - local.get $2 + local.get $15 i32.const 20 i32.sub i32.load offset=16 @@ -4711,7 +4713,7 @@ local.get $1 i32.gt_s if - local.get $2 + local.get $15 local.get $1 call $~lib/staticarray/StaticArray#__get local.get $0 @@ -4744,9 +4746,9 @@ i32.store local.get $0 call $~lib/staticarray/StaticArray.fromArray - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $2 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -4764,29 +4766,29 @@ i32.const 8 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.const 1856 i32.const 8 call $~lib/memory/memory.copy - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $15 i32.const 1888 i32.const 4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $15 i32.store offset=12 - local.get $1 local.get $0 + local.get $15 call $~lib/staticarray/StaticArray.concat - local.tee $2 + local.tee $1 i32.store offset=8 - local.get $2 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -4806,25 +4808,25 @@ i32.const 0 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $15 i32.const 1920 i32.const 0 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $15 i32.store offset=12 - local.get $1 local.get $0 + local.get $15 call $~lib/staticarray/StaticArray.concat - local.tee $2 + local.tee $1 i32.store offset=8 - local.get $2 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -4878,7 +4880,7 @@ unreachable end i32.const 0 - local.set $3 + local.set $0 loop $for-loop|2 local.get $15 i32.const 20 @@ -4886,25 +4888,25 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.get $3 + local.get $0 i32.gt_s if local.get $15 - local.get $3 + local.get $0 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $0 + local.set $14 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $14 i32.store local.get $1 - local.get $3 + local.get $0 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $2 + local.set $13 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $13 i32.store offset=12 - local.get $0 - local.get $2 + local.get $14 + local.get $13 call $~lib/string/String.__eq i32.eqz if @@ -4915,10 +4917,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|2 end end @@ -4950,10 +4952,10 @@ call $~lib/staticarray/StaticArray<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $14 local.get $0 i32.store - local.get $2 + local.get $14 i32.const 1984 i32.store offset=12 local.get $0 @@ -4971,15 +4973,15 @@ local.get $1 i32.const 1 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $0 + local.tee $0 + local.get $1 i32.store - local.get $2 + local.get $0 i32.const 2016 i32.store offset=12 - local.get $0 + local.get $1 i32.const 2016 call $~lib/string/String.__eq i32.eqz @@ -4996,7 +4998,7 @@ i32.const 1 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $2 + local.tee $1 i32.store offset=4 local.get $15 i32.const 20 @@ -5006,7 +5008,7 @@ i32.shr_u i32.const 1 i32.sub - local.get $2 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -5026,9 +5028,9 @@ i32.const 0 i32.const 50 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $2 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -5054,9 +5056,9 @@ i32.const 100 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $2 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -5075,9 +5077,9 @@ i32.const -1 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $2 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -5093,18 +5095,18 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $0 + local.tee $0 + local.get $1 i32.store - local.get $2 + local.get $0 i32.const 2080 i32.store offset=12 - local.get $0 + local.get $1 i32.const 2080 call $~lib/string/String.__eq i32.eqz @@ -5121,9 +5123,9 @@ i32.const -2 i32.const -2 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $2 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -5142,9 +5144,9 @@ i32.const 2 i32.const -2 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $2 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -5160,18 +5162,18 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $0 + local.tee $0 + local.get $1 i32.store - local.get $2 + local.get $0 i32.const 2016 i32.store offset=12 - local.get $0 + local.get $1 i32.const 2016 call $~lib/string/String.__eq i32.eqz @@ -5187,29 +5189,29 @@ i32.const 20 i32.const 8 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.const 2304 i32.const 20 call $~lib/memory/memory.copy - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 0 i32.const 9 i32.const 2352 call $~lib/rt/__newArray - local.set $0 + local.set $15 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $15 i32.store offset=12 - local.get $1 local.get $0 + local.get $15 call $~lib/staticarray/StaticArray<~lib/string/String>#concat - local.tee $2 + local.tee $1 i32.store offset=16 - local.get $2 - i32.load offset=12 local.get $1 + i32.load offset=12 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -5229,18 +5231,18 @@ i32.const 9 i32.const 2416 call $~lib/rt/__newArray - local.set $0 + local.set $15 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $15 i32.store offset=12 - local.get $1 local.get $0 + local.get $15 call $~lib/staticarray/StaticArray<~lib/string/String>#concat - local.tee $2 + local.tee $1 i32.store offset=16 - local.get $2 - i32.load offset=12 local.get $1 + i32.load offset=12 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -5349,15 +5351,15 @@ i32.load offset=16 i32.const 3 i32.shr_u - local.tee $2 + local.tee $0 i32.const 0 - local.get $2 + local.get $0 select i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#includes drop loop $while-continue|0 - local.get $2 + local.get $0 local.get $16 i32.gt_s if @@ -5368,11 +5370,11 @@ local.get $1 i32.add f64.load - local.tee $9 + local.tee $12 f64.const nan:0x8000000000000 f64.eq - local.get $9 - local.get $9 + local.get $12 + local.get $12 f64.ne i32.or br_if $__inlined_func$~lib/staticarray/StaticArray#includes @@ -5415,15 +5417,15 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.tee $2 + local.tee $0 i32.const 0 - local.get $2 + local.get $0 select i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#includes drop loop $while-continue|07 - local.get $2 + local.get $0 local.get $16 i32.gt_s if @@ -5434,11 +5436,11 @@ local.get $1 i32.add f32.load - local.tee $8 + local.tee $11 f32.const nan:0x400000 f32.eq - local.get $8 - local.get $8 + local.get $11 + local.get $11 f32.ne i32.or br_if $__inlined_func$~lib/staticarray/StaticArray#includes @@ -5465,56 +5467,56 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.const 2560 i32.const 12 call $~lib/memory/memory.copy - local.get $1 + local.get $0 i32.store offset=16 i32.const 0 - local.set $2 + local.set $1 block $__inlined_func$~lib/staticarray/StaticArray#indexOf - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $0 + local.tee $16 i32.const 0 - local.get $0 + local.get $16 select i32.eqz if i32.const -1 - local.set $2 + local.set $1 br $__inlined_func$~lib/staticarray/StaticArray#indexOf end loop $while-continue|012 - local.get $0 - local.get $2 - i32.gt_s + local.get $1 + local.get $16 + i32.lt_s if - local.get $2 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $while-continue|012 end end i32.const -1 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 if i32.const 0 i32.const 1216 @@ -5524,49 +5526,49 @@ unreachable end i32.const 0 - local.set $2 + local.set $1 block $__inlined_func$~lib/staticarray/StaticArray#indexOf13 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $0 + local.tee $16 i32.const 0 - local.get $0 + local.get $16 select i32.eqz if i32.const -1 - local.set $2 + local.set $1 br $__inlined_func$~lib/staticarray/StaticArray#indexOf13 end loop $while-continue|014 - local.get $0 - local.get $2 - i32.gt_s + local.get $1 + local.get $16 + i32.lt_s if - local.get $2 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add i32.load i32.const 7 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf13 - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $while-continue|014 end end i32.const -1 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 i32.const -1 i32.ne if @@ -5578,50 +5580,50 @@ unreachable end i32.const 2 - local.set $2 + local.set $1 block $__inlined_func$~lib/staticarray/StaticArray#indexOf15 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $0 + local.tee $16 i32.const 2 i32.le_u i32.const 1 - local.get $0 + local.get $16 select if i32.const -1 - local.set $2 + local.set $1 br $__inlined_func$~lib/staticarray/StaticArray#indexOf15 end loop $while-continue|016 - local.get $0 - local.get $2 - i32.gt_s + local.get $1 + local.get $16 + i32.lt_s if - local.get $2 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add i32.load i32.const 9 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf15 - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $while-continue|016 end end i32.const -1 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 i32.const 2 i32.ne if @@ -5633,58 +5635,58 @@ unreachable end block $__inlined_func$~lib/staticarray/StaticArray#indexOf17 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $0 + local.tee $16 i32.const -1 i32.le_s i32.const 1 - local.get $0 + local.get $16 select if i32.const -1 - local.set $2 + local.set $1 br $__inlined_func$~lib/staticarray/StaticArray#indexOf17 end - local.get $0 + local.get $16 i32.const 1 i32.sub - local.tee $2 + local.tee $1 i32.const 0 - local.get $2 + local.get $1 i32.const 0 i32.gt_s select - local.set $2 + local.set $1 loop $while-continue|018 - local.get $0 - local.get $2 - i32.gt_s + local.get $1 + local.get $16 + i32.lt_s if - local.get $2 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf17 - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $while-continue|018 end end i32.const -1 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 i32.const -1 i32.ne if @@ -5696,56 +5698,56 @@ unreachable end i32.const -1 - local.set $2 + local.set $1 block $__inlined_func$~lib/staticarray/StaticArray#indexOf19 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $0 + local.tee $16 i32.const -3 i32.le_s i32.const 1 - local.get $0 + local.get $16 select br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf19 - local.get $0 + local.get $16 i32.const 3 i32.sub - local.tee $2 + local.tee $1 i32.const 0 - local.get $2 + local.get $1 i32.const 0 i32.gt_s select - local.set $2 + local.set $1 loop $while-continue|020 - local.get $0 - local.get $2 - i32.gt_s + local.get $1 + local.get $16 + i32.lt_s if - local.get $2 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf19 - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $while-continue|020 end end i32.const -1 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 if i32.const 0 i32.const 1216 @@ -5758,40 +5760,40 @@ i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 i32.const 2592 i32.const 16 call $~lib/memory/memory.copy - local.get $2 + local.get $0 i32.store offset=16 i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $3 - local.set $1 + local.tee $16 + local.set $15 i32.const -1 - local.set $0 + local.set $1 block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf - local.get $3 + local.get $16 i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf - local.get $1 - local.get $3 + local.get $15 + local.get $16 i32.add - local.get $3 + local.get $16 i32.const 1 i32.sub - local.get $1 - local.get $1 - local.get $3 + local.get $15 + local.get $15 + local.get $16 i32.ge_s select - local.get $1 + local.get $15 i32.const 0 i32.lt_s select @@ -5802,16 +5804,15 @@ i32.ge_s if local.get $1 - local.tee $0 i32.const 2 i32.shl - local.get $2 + local.get $0 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf - local.get $0 + local.get $1 i32.const 1 i32.sub local.set $1 @@ -5819,9 +5820,9 @@ end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -5834,16 +5835,15 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 - local.tee $0 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $1 + local.set $16 i32.const -1 - local.set $2 + local.set $1 block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf5 local.get $0 i32.const 20 @@ -5851,21 +5851,21 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.tee $3 + local.tee $15 i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf5 - local.get $1 - local.get $3 + local.get $15 + local.get $16 i32.add - local.get $3 + local.get $15 i32.const 1 i32.sub - local.get $1 - local.get $1 - local.get $3 - i32.ge_s + local.get $16 + local.get $15 + local.get $16 + i32.le_s select - local.get $1 + local.get $16 i32.const 0 i32.lt_s select @@ -5876,7 +5876,6 @@ i32.ge_s if local.get $1 - local.tee $2 i32.const 2 i32.shl local.get $0 @@ -5885,7 +5884,7 @@ i32.const 7 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf5 - local.get $2 + local.get $1 i32.const 1 i32.sub local.set $1 @@ -5893,9 +5892,9 @@ end end i32.const -1 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 i32.const -1 i32.ne if @@ -5913,28 +5912,28 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.tee $2 + local.tee $1 i32.eqz if i32.const -1 - local.set $2 + local.set $1 br $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf7 end - local.get $2 + local.get $1 i32.const 1 i32.sub i32.const 3 - local.get $2 + local.get $1 i32.const 3 i32.le_u select - local.set $2 + local.set $1 loop $while-continue|022 - local.get $2 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 + local.get $1 i32.const 2 i32.shl local.get $0 @@ -5943,17 +5942,17 @@ i32.const 2 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf7 - local.get $2 + local.get $1 i32.const 1 i32.sub - local.set $2 + local.set $1 br $while-continue|022 end end i32.const -1 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 i32.const 3 i32.ne if @@ -5971,28 +5970,28 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.tee $2 + local.tee $1 i32.eqz if i32.const -1 - local.set $2 + local.set $1 br $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf23 end - local.get $2 + local.get $1 i32.const 1 i32.sub i32.const 2 - local.get $2 + local.get $1 i32.const 2 i32.le_u select - local.set $2 + local.set $1 loop $while-continue|024 - local.get $2 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 + local.get $1 i32.const 2 i32.shl local.get $0 @@ -6001,17 +6000,17 @@ i32.const 2 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf23 - local.get $2 + local.get $1 i32.const 1 i32.sub - local.set $2 + local.set $1 br $while-continue|024 end end i32.const -1 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 if i32.const 0 i32.const 1216 @@ -6027,23 +6026,23 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.tee $2 + local.tee $1 i32.eqz if i32.const -1 - local.set $2 + local.set $1 br $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf25 end - local.get $2 + local.get $1 i32.const 2 i32.sub - local.set $2 + local.set $1 loop $while-continue|026 - local.get $2 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 + local.get $1 i32.const 2 i32.shl local.get $0 @@ -6052,17 +6051,17 @@ i32.const 2 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf25 - local.get $2 + local.get $1 i32.const 1 i32.sub - local.set $2 + local.set $1 br $while-continue|026 end end i32.const -1 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 if i32.const 0 i32.const 1216 @@ -6072,7 +6071,7 @@ unreachable end i32.const -1 - local.set $2 + local.set $1 block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf27 local.get $0 i32.const 20 @@ -6080,19 +6079,19 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.tee $1 + local.tee $16 i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf27 - local.get $1 + local.get $16 i32.const 1 i32.sub - local.set $2 + local.set $1 loop $while-continue|028 - local.get $2 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 + local.get $1 i32.const 2 i32.shl local.get $0 @@ -6101,17 +6100,17 @@ i32.const 2 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf27 - local.get $2 + local.get $1 i32.const 1 i32.sub - local.set $2 + local.set $1 br $while-continue|028 end end i32.const -1 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 i32.const 3 i32.ne if @@ -6126,26 +6125,26 @@ i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.const 2736 i32.const 12 call $~lib/memory/memory.copy - local.get $1 + local.get $0 i32.store offset=16 global.get $~lib/memory/__stack_pointer i32.const 2800 i32.store offset=20 - local.get $1 + local.get $0 i32.const 2800 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 2832 i32.store offset=12 - local.get $2 + local.get $1 i32.const 2832 call $~lib/string/String.__eq i32.eqz @@ -6160,17 +6159,17 @@ global.get $~lib/memory/__stack_pointer i32.const 2768 i32.store offset=20 - local.get $1 + local.get $0 i32.const 2768 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 2880 i32.store offset=12 - local.get $2 + local.get $1 i32.const 2880 call $~lib/string/String.__eq i32.eqz @@ -6185,17 +6184,17 @@ global.get $~lib/memory/__stack_pointer i32.const 2928 i32.store offset=20 - local.get $1 + local.get $0 i32.const 2928 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 2960 i32.store offset=12 - local.get $2 + local.get $1 i32.const 2960 call $~lib/string/String.__eq i32.eqz @@ -6210,17 +6209,17 @@ global.get $~lib/memory/__stack_pointer i32.const 3008 i32.store offset=20 - local.get $1 + local.get $0 i32.const 3008 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 3040 i32.store offset=12 - local.get $2 + local.get $1 i32.const 3040 call $~lib/string/String.__eq i32.eqz @@ -6235,12 +6234,12 @@ global.get $~lib/memory/__stack_pointer i32.const 2800 i32.store offset=20 - local.get $1 + local.get $0 i32.const 2800 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 @@ -6251,25 +6250,25 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $16 i32.const 0 i32.store - local.get $2 + local.get $16 i32.const 2800 i32.store - local.get $1 + local.get $0 i32.const 2800 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=12 + local.get $1 local.get $0 - local.get $2 call $~lib/string/String.__eq i32.eqz if @@ -6297,14 +6296,14 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.const 1 i32.gt_u select local.set $16 loop $for-loop|024 - local.get $2 + local.get $1 local.get $16 i32.gt_s if @@ -6350,58 +6349,58 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $15 + local.tee $0 i32.const 3136 i32.const 12 call $~lib/memory/memory.copy - local.get $15 + local.get $0 i32.store offset=16 i32.const 0 local.set $16 - local.get $15 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $2 + local.tee $1 i32.const 1 i32.gt_u if - local.get $2 + local.get $1 i32.const 1 i32.shr_u - local.set $3 - local.get $2 + local.set $15 + local.get $1 i32.const 1 i32.sub local.set $1 loop $while-continue|02633 - local.get $3 + local.get $15 local.get $16 i32.gt_u if local.get $16 i32.const 2 i32.shl - local.get $15 + local.get $0 i32.add - local.tee $2 + local.tee $14 i32.load - local.set $0 - local.get $2 + local.set $13 + local.get $14 local.get $1 local.get $16 i32.sub i32.const 2 i32.shl - local.get $15 + local.get $0 i32.add - local.tee $2 + local.tee $14 i32.load i32.store - local.get $2 - local.get $0 + local.get $14 + local.get $13 i32.store local.get $16 i32.const 1 @@ -6411,7 +6410,7 @@ end end end - local.get $15 + local.get $0 i32.const 0 call $~lib/staticarray/StaticArray#__get i32.const 3 @@ -6424,7 +6423,7 @@ call $~lib/builtins/abort unreachable end - local.get $15 + local.get $0 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 2 @@ -6437,7 +6436,7 @@ call $~lib/builtins/abort unreachable end - local.get $15 + local.get $0 i32.const 2 call $~lib/staticarray/StaticArray#__get i32.const 1 @@ -6454,56 +6453,56 @@ i32.const 20 i32.const 3 call $~lib/rt/itcms/__new - local.tee $15 + local.tee $0 i32.const 3168 i32.const 20 call $~lib/memory/memory.copy - local.get $15 + local.get $0 i32.store offset=16 i32.const 0 - local.get $15 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $3 - local.get $3 + local.tee $1 + local.get $1 select - local.set $1 - local.get $3 + local.set $16 + local.get $1 i32.const 3 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.const 3 i32.gt_u select - local.tee $2 + local.tee $15 i32.sub - local.set $0 - local.get $1 + local.set $14 + local.get $16 i32.const 2 i32.shl - local.get $15 + local.get $0 i32.add - local.get $2 + local.get $15 i32.const 2 i32.shl - local.get $15 - i32.add local.get $0 - local.get $3 + i32.add + local.get $14 local.get $1 + local.get $16 i32.sub - local.tee $2 - local.get $0 - local.get $2 - i32.lt_s + local.tee $1 + local.get $1 + local.get $14 + i32.gt_s select i32.const 2 i32.shl call $~lib/memory/memory.copy - local.get $15 + local.get $0 i32.const 0 call $~lib/staticarray/StaticArray#__get i32.const 4 @@ -6516,7 +6515,7 @@ call $~lib/builtins/abort unreachable end - local.get $15 + local.get $0 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 5 @@ -6529,7 +6528,7 @@ call $~lib/builtins/abort unreachable end - local.get $15 + local.get $0 i32.const 2 call $~lib/staticarray/StaticArray#__get i32.const 3 @@ -6542,7 +6541,7 @@ call $~lib/builtins/abort unreachable end - local.get $15 + local.get $0 i32.const 3 call $~lib/staticarray/StaticArray#__get i32.const 4 @@ -6555,7 +6554,7 @@ call $~lib/builtins/abort unreachable end - local.get $15 + local.get $0 i32.const 4 call $~lib/staticarray/StaticArray#__get i32.const 5 @@ -6572,19 +6571,19 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $14 + local.tee $15 i32.const 3216 i32.const 12 call $~lib/memory/memory.copy - local.get $14 + local.get $15 i32.store offset=16 global.get $~lib/memory/__stack_pointer - local.tee $15 + local.tee $1 i32.const 3248 i32.store offset=12 i32.const 0 local.set $16 - local.get $15 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -6593,46 +6592,46 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $0 i32.const 0 i32.store - local.get $2 - local.get $14 + local.get $0 + local.get $15 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $3 + local.tee $0 i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $12 + local.tee $14 i32.store - local.get $12 + local.get $14 i32.load offset=4 - local.set $1 + local.set $13 loop $for-loop|027 - local.get $3 + local.get $0 local.get $16 i32.gt_s if - local.get $14 + local.get $15 local.get $16 i32.const 2 i32.shl - local.tee $0 + local.tee $10 i32.add i32.load - local.set $2 + local.set $9 i32.const 3 global.set $~argumentsLength - local.get $0 - local.get $1 + local.get $10 + local.get $13 i32.add - local.get $2 + local.get $9 local.get $16 - local.get $14 + local.get $15 i32.const 3248 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -6648,10 +6647,10 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $15 - local.get $12 + local.get $1 + local.get $14 i32.store offset=4 - local.get $12 + local.get $14 i32.const 0 call $~lib/array/Array#__get i32.const 2 @@ -6664,7 +6663,7 @@ call $~lib/builtins/abort unreachable end - local.get $12 + local.get $14 i32.const 1 call $~lib/array/Array#__get i32.const 3 @@ -6677,7 +6676,7 @@ call $~lib/builtins/abort unreachable end - local.get $12 + local.get $14 i32.const 2 call $~lib/array/Array#__get i32.const 4 @@ -6695,28 +6694,28 @@ i32.store offset=12 i32.const 0 local.set $16 - local.get $14 + local.get $15 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|030 - local.get $0 + local.get $1 local.get $16 i32.gt_s if local.get $16 i32.const 2 i32.shl - local.get $14 + local.get $15 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $16 - local.get $14 + local.get $15 i32.const 3280 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) @@ -6739,13 +6738,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.const 3312 i32.store offset=12 i32.const 0 local.set $16 - local.get $2 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -6754,59 +6753,59 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 0 i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $6 i32.store - local.get $14 + local.get $15 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $6 + local.set $9 loop $for-loop|028 - local.get $6 + local.get $9 local.get $16 i32.gt_s if local.get $16 i32.const 2 i32.shl - local.get $14 + local.get $15 i32.add i32.load - local.set $2 + local.set $5 i32.const 3 global.set $~argumentsLength - local.get $2 + local.get $5 local.get $16 - local.get $14 + local.get $15 i32.const 3312 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $1 + local.get $6 i32.load offset=12 - local.tee $5 + local.tee $8 i32.const 1 i32.add - local.tee $4 - local.tee $13 - local.get $1 + local.tee $7 + local.tee $1 + local.get $6 i32.load offset=8 - local.tee $11 + local.tee $14 i32.const 2 i32.shr_u i32.gt_u if - local.get $13 + local.get $1 i32.const 268435455 i32.gt_u if @@ -6818,38 +6817,38 @@ unreachable end block $__inlined_func$~lib/rt/itcms/__renew - local.get $11 + local.get $14 i32.const 1 i32.shl - local.tee $3 + local.tee $0 i32.const 1073741820 - local.get $3 + local.get $0 i32.const 1073741820 i32.lt_u select - local.tee $15 - local.get $13 + local.tee $0 + local.get $1 i32.const 8 - local.get $13 + local.get $1 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $3 - local.get $3 - local.get $15 - i32.lt_u - select - local.tee $15 - local.tee $13 + local.tee $1 + local.get $0 local.get $1 + i32.gt_u + select + local.tee $4 + local.tee $3 + local.get $6 i32.load - local.tee $12 - local.tee $0 + local.tee $2 + local.tee $1 i32.const 20 i32.sub - local.tee $10 + local.tee $13 i32.load i32.const -4 i32.and @@ -6857,68 +6856,68 @@ i32.sub i32.le_u if - local.get $10 local.get $13 + local.get $3 i32.store offset=16 - local.get $0 - local.set $3 + local.get $1 + local.set $0 br $__inlined_func$~lib/rt/itcms/__renew end + local.get $3 local.get $13 - local.get $10 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $3 - local.get $0 - local.get $13 - local.get $10 - i32.load offset=16 local.tee $0 - local.get $0 + local.get $1 + local.get $3 local.get $13 + i32.load offset=16 + local.tee $1 + local.get $1 + local.get $3 i32.gt_u select call $~lib/memory/memory.copy end - local.get $3 - local.get $11 + local.get $0 + local.get $14 i32.add - local.get $15 - local.get $11 + local.get $4 + local.get $14 i32.sub call $~lib/memory/memory.fill - local.get $3 - local.get $12 + local.get $0 + local.get $2 i32.ne if - local.get $1 - local.get $3 + local.get $6 + local.get $0 i32.store - local.get $1 - local.get $3 + local.get $6 + local.get $0 i32.store offset=4 - local.get $3 + local.get $0 if - local.get $1 - local.get $3 + local.get $6 + local.get $0 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end end - local.get $1 - local.get $15 + local.get $6 + local.get $4 i32.store offset=8 end - local.get $1 + local.get $6 i32.load offset=4 - local.get $5 + local.get $8 i32.const 2 i32.shl i32.add - local.get $2 + local.get $5 i32.store - local.get $1 - local.get $4 + local.get $6 + local.get $7 i32.store offset=12 end local.get $16 @@ -6932,9 +6931,9 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $6 i32.store offset=24 - local.get $1 + local.get $6 i32.load offset=12 i32.const 2 i32.ne @@ -6946,7 +6945,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $6 i32.const 0 call $~lib/array/Array#__get i32.const 2 @@ -6959,7 +6958,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $6 i32.const 1 call $~lib/array/Array#__get i32.const 3 @@ -6978,36 +6977,36 @@ i32.const 0 local.set $16 i32.const 0 - local.set $3 - local.get $14 + local.set $0 + local.get $15 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|033 - local.get $0 + local.get $1 local.get $16 i32.gt_s if local.get $16 i32.const 2 i32.shl - local.get $14 + local.get $15 i32.add i32.load - local.set $2 + local.set $14 i32.const 4 global.set $~argumentsLength - local.get $3 - local.get $2 - local.get $16 + local.get $0 local.get $14 + local.get $16 + local.get $15 i32.const 3344 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $3 + local.set $0 local.get $16 i32.const 1 i32.add @@ -7015,7 +7014,7 @@ br $for-loop|033 end end - local.get $3 + local.get $0 i32.const 6 i32.ne if @@ -7030,8 +7029,8 @@ i32.const 3376 i32.store offset=12 i32.const 0 - local.set $3 - local.get $14 + local.set $0 + local.get $15 i32.const 20 i32.sub i32.load offset=16 @@ -7048,20 +7047,20 @@ local.get $16 i32.const 2 i32.shl - local.get $14 + local.get $15 i32.add i32.load - local.set $2 + local.set $1 i32.const 4 global.set $~argumentsLength - local.get $3 - local.get $2 + local.get $0 + local.get $1 local.get $16 - local.get $14 + local.get $15 i32.const 3376 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $3 + local.set $0 local.get $16 i32.const 1 i32.sub @@ -7069,7 +7068,7 @@ br $for-loop|035 end end - local.get $3 + local.get $0 i32.const 6 i32.ne if @@ -7085,41 +7084,41 @@ i32.store offset=12 block $__inlined_func$~lib/staticarray/StaticArray#some (result i32) i32.const 0 - local.set $3 - local.get $14 + local.set $0 + local.get $15 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|038 local.get $0 - local.get $3 - i32.gt_s + local.get $1 + i32.lt_s if - local.get $3 + local.get $0 i32.const 2 i32.shl - local.get $14 + local.get $15 i32.add i32.load - local.set $2 + local.set $16 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $2 - local.get $3 - local.get $14 + local.get $16 + local.get $0 + local.get $15 i32.const 3408 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/staticarray/StaticArray#some drop - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|038 end end @@ -7139,41 +7138,41 @@ i32.store offset=12 block $__inlined_func$~lib/staticarray/StaticArray#some39 (result i32) i32.const 0 - local.set $3 - local.get $14 + local.set $0 + local.get $15 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|040 local.get $0 - local.get $3 - i32.gt_s + local.get $1 + i32.lt_s if - local.get $3 + local.get $0 i32.const 2 i32.shl - local.get $14 + local.get $15 i32.add i32.load - local.set $2 + local.set $16 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $2 - local.get $3 - local.get $14 + local.get $16 + local.get $0 + local.get $15 i32.const 3440 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/staticarray/StaticArray#some39 drop - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|040 end end @@ -7192,42 +7191,42 @@ i32.store offset=12 block $__inlined_func$~lib/staticarray/StaticArray#every (result i32) i32.const 0 - local.set $3 - local.get $14 + local.set $0 + local.get $15 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|041 local.get $0 - local.get $3 - i32.gt_s + local.get $1 + i32.lt_s if - local.get $3 + local.get $0 i32.const 2 i32.shl - local.get $14 + local.get $15 i32.add i32.load - local.set $2 + local.set $16 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $2 - local.get $3 - local.get $14 + local.get $16 + local.get $0 + local.get $15 i32.const 3472 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#every drop - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|041 end end @@ -7247,42 +7246,42 @@ i32.store offset=12 block $__inlined_func$~lib/staticarray/StaticArray#every42 (result i32) i32.const 0 - local.set $3 - local.get $14 + local.set $0 + local.get $15 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|043 local.get $0 - local.get $3 - i32.gt_s + local.get $1 + i32.lt_s if - local.get $3 + local.get $0 i32.const 2 i32.shl - local.get $14 + local.get $15 i32.add i32.load - local.set $2 + local.set $16 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $2 - local.get $3 - local.get $14 + local.get $16 + local.get $0 + local.get $15 i32.const 3504 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#every42 drop - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|043 end end @@ -7300,45 +7299,45 @@ i32.const 3536 i32.store offset=12 i32.const 0 - local.set $2 - local.get $14 + local.set $1 + local.get $15 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $1 + local.set $0 block $__inlined_func$~lib/staticarray/StaticArray#findIndex loop $for-loop|044 + local.get $0 local.get $1 - local.get $2 i32.gt_s if - local.get $2 + local.get $1 i32.const 2 i32.shl - local.get $14 + local.get $15 i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $14 + local.get $1 + local.get $15 i32.const 3536 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/staticarray/StaticArray#findIndex - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|044 end end i32.const -1 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 i32.const 1 i32.ne if @@ -7353,45 +7352,45 @@ i32.const 3568 i32.store offset=12 i32.const 0 - local.set $2 - local.get $14 + local.set $1 + local.get $15 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $1 + local.set $0 block $__inlined_func$~lib/staticarray/StaticArray#findIndex45 loop $for-loop|046 + local.get $0 local.get $1 - local.get $2 i32.gt_s if - local.get $2 + local.get $1 i32.const 2 i32.shl - local.get $14 + local.get $15 i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $14 + local.get $1 + local.get $15 i32.const 3568 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/staticarray/StaticArray#findIndex45 - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|046 end end i32.const -1 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 i32.const -1 i32.ne if @@ -7405,7 +7404,7 @@ global.get $~lib/memory/__stack_pointer i32.const 3600 i32.store offset=12 - local.get $14 + local.get $15 i32.const 20 i32.sub i32.load offset=16 @@ -7413,38 +7412,38 @@ i32.shr_u i32.const 1 i32.sub - local.set $2 + local.set $1 block $__inlined_func$~lib/staticarray/StaticArray#findLastIndex loop $for-loop|047 - local.get $2 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 + local.get $1 i32.const 2 i32.shl - local.get $14 + local.get $15 i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $14 + local.get $1 + local.get $15 i32.const 3600 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/staticarray/StaticArray#findLastIndex - local.get $2 + local.get $1 i32.const 1 i32.sub - local.set $2 + local.set $1 br $for-loop|047 end end i32.const -1 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 i32.const 1 i32.ne if @@ -7458,7 +7457,7 @@ global.get $~lib/memory/__stack_pointer i32.const 3632 i32.store offset=12 - local.get $14 + local.get $15 i32.const 20 i32.sub i32.load offset=16 @@ -7466,38 +7465,38 @@ i32.shr_u i32.const 1 i32.sub - local.set $2 + local.set $1 block $__inlined_func$~lib/staticarray/StaticArray#findLastIndex48 loop $for-loop|049 - local.get $2 + local.get $1 i32.const 0 i32.ge_s if - local.get $2 + local.get $1 i32.const 2 i32.shl - local.get $14 + local.get $15 i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $14 + local.get $1 + local.get $15 i32.const 3632 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/staticarray/StaticArray#findLastIndex48 - local.get $2 + local.get $1 i32.const 1 i32.sub - local.set $2 + local.set $1 br $for-loop|049 end end i32.const -1 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 i32.const -1 i32.ne if @@ -7733,23 +7732,22 @@ end local.get $5 local.get $3 - local.tee $2 i32.store i32.const 16 local.get $1 call $~lib/rt/itcms/__new local.tee $1 - local.get $2 + local.get $3 i32.store - local.get $2 + local.get $3 if local.get $1 - local.get $2 + local.get $3 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $1 - local.get $2 + local.get $3 i32.store offset=4 local.get $1 local.get $4 @@ -7790,21 +7788,21 @@ i32.load offset=12 i32.const 2 i32.shl - local.tee $2 + local.tee $1 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 local.get $0 i32.load offset=4 - local.get $2 + local.get $1 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 ) (func $~lib/staticarray/StaticArray.concat (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -7837,16 +7835,16 @@ i32.const 0 local.get $1 select - local.tee $3 + local.tee $2 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $4 + local.tee $3 i32.add - local.tee $2 + local.tee $4 i32.const 268435455 i32.gt_u if @@ -7858,25 +7856,25 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 2 i32.shl i32.const 3 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $4 i32.store - local.get $2 - local.get $0 local.get $4 + local.get $0 + local.get $3 i32.const 2 i32.shl local.tee $0 call $~lib/memory/memory.copy local.get $0 - local.get $2 + local.get $4 i32.add local.get $1 - local.get $3 + local.get $2 i32.const 2 i32.shl call $~lib/memory/memory.copy @@ -7884,7 +7882,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $4 ) (func $~lib/staticarray/StaticArray.slice<~lib/string/String> (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -7968,37 +7966,37 @@ select i32.const 2 i32.shl - local.tee $3 + local.tee $2 i32.const 8 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 i32.store local.get $1 i32.const 2 i32.shl local.get $0 i32.add - local.set $4 + local.set $1 i32.const 0 local.set $0 loop $while-continue|0 local.get $0 - local.get $3 + local.get $2 i32.lt_u if local.get $0 - local.get $2 + local.get $3 i32.add local.get $0 - local.get $4 + local.get $1 i32.add i32.load - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 if - local.get $2 - local.get $1 + local.get $3 + local.get $4 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -8013,7 +8011,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 ) (func $~lib/staticarray/StaticArray<~lib/string/String>#__get (param $0 i32) (param $1 i32) (result i32) global.get $~lib/memory/__stack_pointer @@ -8106,15 +8104,15 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 i32.load offset=12 i32.const 0 local.get $1 select - local.tee $7 + local.tee $4 i32.add - local.tee $3 + local.tee $5 i32.const 268435455 i32.gt_u if @@ -8126,78 +8124,78 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $5 i32.const 9 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $5 i32.store - local.get $3 + local.get $5 i32.load offset=4 - local.set $5 - local.get $2 + local.set $6 + local.get $3 i32.const 2 i32.shl - local.set $6 + local.set $3 loop $for-loop|0 - local.get $4 - local.get $6 + local.get $2 + local.get $3 i32.lt_u if - local.get $4 - local.get $5 + local.get $2 + local.get $6 i32.add local.get $0 - local.get $4 + local.get $2 i32.add i32.load - local.tee $2 + local.tee $7 i32.store - local.get $2 + local.get $7 if - local.get $3 - local.get $2 + local.get $5 + local.get $7 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $2 i32.const 4 i32.add - local.set $4 + local.set $2 br $for-loop|0 end end - local.get $5 + local.get $3 local.get $6 i32.add local.set $2 local.get $1 i32.load offset=4 - local.set $4 - local.get $7 + local.set $1 + local.get $4 i32.const 2 i32.shl - local.set $5 + local.set $3 i32.const 0 local.set $0 loop $for-loop|1 local.get $0 - local.get $5 + local.get $3 i32.lt_u if local.get $0 local.get $2 i32.add local.get $0 - local.get $4 + local.get $1 i32.add i32.load - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 if - local.get $3 - local.get $1 + local.get $5 + local.get $4 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -8212,7 +8210,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $5 ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) global.get $~lib/rt/itcms/white @@ -8258,16 +8256,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $3 i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $3 local.get $1 local.get $2 select @@ -8276,7 +8274,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $0 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/string-casemapping.optimized.wat b/tests/compiler/std/string-casemapping.optimized.wat index 91c63ada05..8bca2cce47 100644 --- a/tests/compiler/std/string-casemapping.optimized.wat +++ b/tests/compiler/std/string-casemapping.optimized.wat @@ -617,19 +617,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -654,9 +654,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -664,17 +664,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -962,10 +962,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -977,15 +977,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -1015,7 +1015,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1328,7 +1328,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 37476 i32.ge_u if @@ -1338,20 +1338,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1364,8 +1364,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1545,12 +1544,12 @@ if block $__inlined_func$~lib/rt/itcms/interrupt i32.const 2048 - local.set $3 + local.set $2 loop $do-loop|0 - local.get $3 + local.get $2 call $~lib/rt/itcms/step i32.sub - local.set $3 + local.set $2 global.get $~lib/rt/itcms/state i32.eqz if @@ -1566,14 +1565,14 @@ global.set $~lib/rt/itcms/threshold br $__inlined_func$~lib/rt/itcms/interrupt end - local.get $3 + local.get $2 i32.const 0 i32.gt_s br_if $do-loop|0 end global.get $~lib/rt/itcms/total - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 @@ -1587,15 +1586,15 @@ local.get $0 i32.const 16 i32.add - local.set $3 + local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $6 - local.get $3 + local.tee $3 + local.get $2 i32.const 1073741820 i32.gt_u if @@ -1606,13 +1605,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $3 + local.get $2 i32.const 19 i32.add i32.const -16 @@ -1620,34 +1619,34 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size - local.tee $5 - local.get $3 + local.tee $2 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $6 + local.get $3 i32.load offset=1568 - local.get $5 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1661,16 +1660,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $5 local.get $2 local.get $5 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1678,16 +1677,16 @@ unreachable end end - local.get $6 - local.get $5 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1704,7 +1703,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1714,13 +1713,13 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1736,9 +1735,9 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if @@ -1746,23 +1745,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1826,19 +1825,19 @@ local.get $2 i32.const 20 i32.add - local.tee $3 - local.set $2 + local.tee $2 + local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 i32.eqz br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 local.get $0 - local.get $2 + local.get $1 i32.add - local.tee $1 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1847,18 +1846,18 @@ i32.const 2 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=1 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=2 - local.get $1 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1867,10 +1866,10 @@ i32.const 6 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=3 - local.get $1 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1879,97 +1878,97 @@ i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 - local.get $2 + local.get $1 i32.sub i32.const 3 i32.and - local.tee $1 + local.tee $3 i32.add - local.tee $4 + local.tee $1 i32.const 0 i32.store - local.get $4 - local.get $0 local.get $1 + local.get $0 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=4 - local.get $4 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=12 - local.get $4 + local.get $1 i32.const 0 i32.store offset=16 - local.get $4 + local.get $1 i32.const 0 i32.store offset=20 - local.get $4 + local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 i32.store - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.const 4 i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -2001,7 +2000,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/util/casemap/casemap (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -2027,12 +2026,12 @@ local.get $0 i32.const 255 i32.and - local.tee $5 + local.tee $4 i32.const 3 i32.div_u i32.add i32.load8_u - local.get $5 + local.get $4 i32.const 3 i32.rem_u i32.const 2 @@ -2054,54 +2053,54 @@ local.tee $2 i32.const 255 i32.and - local.set $4 + local.set $3 local.get $2 i32.const 8 i32.shr_s - local.set $3 - local.get $4 + local.set $5 + local.get $3 i32.const 2 i32.lt_u if i32.const 0 local.get $1 - local.get $4 + local.get $3 i32.xor i32.sub - local.get $3 + local.get $5 i32.and local.get $0 i32.add return end - local.get $3 + local.get $5 i32.const 255 i32.and local.set $2 - local.get $3 + local.get $5 i32.const 8 i32.shr_u - local.set $4 + local.set $3 loop $while-continue|0 local.get $2 if - local.get $5 + local.get $4 local.get $2 i32.const 1 i32.shr_u - local.tee $3 - local.get $4 + local.tee $6 + local.get $3 i32.add i32.const 1 i32.shl i32.const 6596 i32.add i32.load8_u - local.tee $6 + local.tee $5 i32.eq if (result i32) local.get $3 - local.get $4 + local.get $6 i32.add i32.const 1 i32.shl @@ -2145,18 +2144,18 @@ i32.sub return else + local.get $4 local.get $5 - local.get $6 i32.lt_u if (result i32) - local.get $3 + local.get $6 else local.get $3 - local.get $4 + local.get $6 i32.add - local.set $4 + local.set $3 local.get $2 - local.get $3 + local.get $6 i32.sub end end @@ -2179,17 +2178,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2335,19 +2334,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2362,7 +2361,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -2373,10 +2372,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2384,10 +2383,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -2398,7 +2397,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2453,7 +2452,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -2464,10 +2463,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2475,10 +2474,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -2489,7 +2488,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2515,17 +2514,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2540,7 +2539,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -2551,10 +2550,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2562,10 +2561,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -2576,7 +2575,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2613,131 +2612,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -2754,59 +2757,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -3073,7 +3080,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $2 + local.tee $3 i32.load i32.const -4 i32.and @@ -3082,28 +3089,28 @@ local.get $1 i32.ge_u if - local.get $2 + local.get $3 local.get $1 i32.store offset=16 local.get $0 return end local.get $1 - local.get $2 + local.get $3 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.load offset=16 - local.tee $2 + local.tee $0 + local.get $0 local.get $1 - local.get $2 - i32.lt_u + i32.gt_u select call $~lib/memory/memory.copy - local.get $3 + local.get $2 ) (func $~lib/string/String.__eq (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -3195,14 +3202,14 @@ if local.get $3 i32.load16_u - local.tee $2 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $2 i32.ne if - local.get $2 local.get $4 + local.get $2 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -3369,7 +3376,7 @@ i64.const 63 i64.shr_u i32.wrap_i64 - local.tee $4 + local.tee $3 select local.tee $0 i64.const 4294967295 @@ -3378,7 +3385,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.wrap_i64 - local.tee $3 + local.tee $2 local.tee $1 i32.const 100000 i32.lt_u @@ -3425,9 +3432,9 @@ i32.add end end - local.get $4 + local.get $3 i32.add - local.tee $2 + local.tee $4 i32.const 1 i32.shl i32.const 1 @@ -3435,8 +3442,8 @@ local.tee $1 i32.store local.get $1 - local.get $3 local.get $2 + local.get $4 call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer @@ -3490,7 +3497,7 @@ i32.add end end - local.get $4 + local.get $3 i32.add local.tee $2 i32.const 1 @@ -3507,7 +3514,7 @@ local.get $2 i32.const 4 i32.sub - local.tee $2 + local.tee $4 i32.const 1 i32.shl local.get $1 @@ -3521,10 +3528,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $3 + local.tee $5 i32.const 10000 i32.rem_u - local.tee $5 + local.tee $2 i32.const 100 i32.div_u i32.const 2 @@ -3532,7 +3539,7 @@ i32.const 19212 i32.add i64.load32_u - local.get $5 + local.get $2 i32.const 100 i32.rem_u i32.const 2 @@ -3544,7 +3551,7 @@ i64.shl i64.or i64.store - local.get $2 + local.get $4 i32.const 4 i32.sub local.tee $2 @@ -3552,10 +3559,10 @@ i32.shl local.get $1 i32.add - local.get $3 + local.get $5 i32.const 10000 i32.div_u - local.tee $3 + local.tee $4 i32.const 100 i32.div_u i32.const 2 @@ -3563,7 +3570,7 @@ i32.const 19212 i32.add i64.load32_u - local.get $3 + local.get $4 i32.const 100 i32.rem_u i32.const 2 @@ -3584,7 +3591,7 @@ local.get $2 call $~lib/util/number/utoa32_dec_lut end - local.get $4 + local.get $3 if local.get $1 i32.const 45 @@ -3931,22 +3938,22 @@ i32.shl i32.const 1488 i32.add - local.tee $2 + local.tee $1 i32.load16_u offset=6 - local.set $1 + local.set $2 local.get $5 i32.const 1 i32.shl local.get $6 i32.add local.tee $4 - local.get $2 + local.get $1 i32.load offset=2 i32.store local.get $4 - local.get $1 + local.get $2 i32.store16 offset=4 - local.get $1 + local.get $2 i32.const 0 i32.ne i32.const 1 @@ -4042,10 +4049,10 @@ (local $3 i64) (local $4 i32) (local $5 i32) - (local $6 i64) + (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) + (local $9 i64) global.get $~lib/memory/__stack_pointer i32.const 28 i32.sub @@ -4062,16 +4069,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $4 i64.const 0 i64.store - local.get $9 + local.get $4 i64.const 0 i64.store offset=8 - local.get $9 + local.get $4 i64.const 0 i64.store offset=16 - local.get $9 + local.get $4 i32.const 0 i32.store offset=24 memory.size @@ -4106,19 +4113,19 @@ i32.store i32.const 1376 global.set $~lib/rt/itcms/fromSpace - local.get $9 + local.get $4 i32.const 1056 i32.store offset=8 i32.const 1056 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 1056 i32.store offset=4 - local.get $9 + local.get $4 i32.const 1056 call $~lib/string/String.__eq i32.eqz @@ -4135,14 +4142,14 @@ i32.store offset=8 i32.const 1056 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 1056 i32.store offset=4 - local.get $9 + local.get $4 i32.const 1056 call $~lib/string/String.__eq i32.eqz @@ -4159,14 +4166,14 @@ i32.store offset=8 i32.const 11808 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 11856 i32.store offset=4 - local.get $9 + local.get $4 i32.const 11856 call $~lib/string/String.__eq i32.eqz @@ -4183,14 +4190,14 @@ i32.store offset=8 i32.const 11904 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 11952 i32.store offset=4 - local.get $9 + local.get $4 i32.const 11952 call $~lib/string/String.__eq i32.eqz @@ -4207,14 +4214,14 @@ i32.store offset=8 i32.const 12000 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 12096 i32.store offset=4 - local.get $9 + local.get $4 i32.const 12096 call $~lib/string/String.__eq i32.eqz @@ -4231,14 +4238,14 @@ i32.store offset=8 i32.const 12096 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 12192 i32.store offset=4 - local.get $9 + local.get $4 i32.const 12192 call $~lib/string/String.__eq i32.eqz @@ -4255,14 +4262,14 @@ i32.store offset=8 i32.const 12288 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 12352 i32.store offset=4 - local.get $9 + local.get $4 i32.const 12352 call $~lib/string/String.__eq i32.eqz @@ -4279,14 +4286,14 @@ i32.store offset=8 i32.const 12352 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 12416 i32.store offset=4 - local.get $9 + local.get $4 i32.const 12416 call $~lib/string/String.__eq i32.eqz @@ -4303,14 +4310,14 @@ i32.store offset=8 i32.const 12480 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 12576 i32.store offset=4 - local.get $9 + local.get $4 i32.const 12576 call $~lib/string/String.__eq i32.eqz @@ -4327,14 +4334,14 @@ i32.store offset=8 i32.const 12576 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 12672 i32.store offset=4 - local.get $9 + local.get $4 i32.const 12672 call $~lib/string/String.__eq i32.eqz @@ -4351,14 +4358,14 @@ i32.store offset=8 i32.const 12768 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 12864 i32.store offset=4 - local.get $9 + local.get $4 i32.const 12864 call $~lib/string/String.__eq i32.eqz @@ -4375,14 +4382,14 @@ i32.store offset=8 i32.const 12864 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 12960 i32.store offset=4 - local.get $9 + local.get $4 i32.const 12960 call $~lib/string/String.__eq i32.eqz @@ -4399,14 +4406,14 @@ i32.store offset=8 i32.const 13056 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 13136 i32.store offset=4 - local.get $9 + local.get $4 i32.const 13136 call $~lib/string/String.__eq i32.eqz @@ -4423,14 +4430,14 @@ i32.store offset=8 i32.const 13216 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 13296 i32.store offset=4 - local.get $9 + local.get $4 i32.const 13296 call $~lib/string/String.__eq i32.eqz @@ -4447,14 +4454,14 @@ i32.store offset=8 i32.const 13376 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 13440 i32.store offset=4 - local.get $9 + local.get $4 i32.const 13440 call $~lib/string/String.__eq i32.eqz @@ -4471,14 +4478,14 @@ i32.store offset=8 i32.const 13504 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 13584 i32.store offset=4 - local.get $9 + local.get $4 i32.const 13584 call $~lib/string/String.__eq i32.eqz @@ -4495,14 +4502,14 @@ i32.store offset=8 i32.const 13664 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 13744 i32.store offset=4 - local.get $9 + local.get $4 i32.const 13744 call $~lib/string/String.__eq i32.eqz @@ -4519,14 +4526,14 @@ i32.store offset=8 i32.const 13824 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 13888 i32.store offset=4 - local.get $9 + local.get $4 i32.const 13888 call $~lib/string/String.__eq i32.eqz @@ -4543,14 +4550,14 @@ i32.store offset=8 i32.const 13952 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 14032 i32.store offset=4 - local.get $9 + local.get $4 i32.const 14032 call $~lib/string/String.__eq i32.eqz @@ -4567,14 +4574,14 @@ i32.store offset=8 i32.const 14112 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 14192 i32.store offset=4 - local.get $9 + local.get $4 i32.const 14192 call $~lib/string/String.__eq i32.eqz @@ -4591,14 +4598,14 @@ i32.store offset=8 i32.const 14272 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 14432 i32.store offset=4 - local.get $9 + local.get $4 i32.const 14432 call $~lib/string/String.__eq i32.eqz @@ -4615,14 +4622,14 @@ i32.store offset=8 i32.const 14272 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 14592 i32.store offset=4 - local.get $9 + local.get $4 i32.const 14592 call $~lib/string/String.__eq i32.eqz @@ -4639,14 +4646,14 @@ i32.store offset=8 i32.const 14752 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 14784 i32.store offset=4 - local.get $9 + local.get $4 i32.const 14784 call $~lib/string/String.__eq i32.eqz @@ -4663,14 +4670,14 @@ i32.store offset=8 i32.const 14816 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 14848 i32.store offset=4 - local.get $9 + local.get $4 i32.const 14848 call $~lib/string/String.__eq i32.eqz @@ -4687,14 +4694,14 @@ i32.store offset=8 i32.const 14880 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 15088 i32.store offset=4 - local.get $9 + local.get $4 i32.const 15088 call $~lib/string/String.__eq i32.eqz @@ -4711,20 +4718,20 @@ i32.store offset=12 i32.const 14752 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store offset=8 - local.get $9 + local.get $4 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 15296 i32.store offset=4 - local.get $9 + local.get $4 i32.const 15296 call $~lib/string/String.__eq i32.eqz @@ -4741,20 +4748,20 @@ i32.store offset=12 i32.const 15328 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store offset=8 - local.get $9 + local.get $4 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 15360 i32.store offset=4 - local.get $9 + local.get $4 i32.const 15360 call $~lib/string/String.__eq i32.eqz @@ -4771,20 +4778,20 @@ i32.store offset=12 i32.const 15392 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store offset=8 - local.get $9 + local.get $4 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 15392 i32.store offset=4 - local.get $9 + local.get $4 i32.const 15392 call $~lib/string/String.__eq i32.eqz @@ -4798,20 +4805,20 @@ end i32.const 65536 call $~lib/string/String.fromCodePoint - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store offset=8 - local.get $9 + local.get $4 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 15648 i32.store offset=4 - local.get $9 + local.get $4 i32.const 15648 call $~lib/string/String.__eq i32.eqz @@ -4825,20 +4832,20 @@ end i32.const 65536 call $~lib/string/String.fromCodePoint - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store offset=8 - local.get $9 + local.get $4 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 15648 i32.store offset=4 - local.get $9 + local.get $4 i32.const 15648 call $~lib/string/String.__eq i32.eqz @@ -4855,14 +4862,14 @@ i32.store offset=8 i32.const 15680 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 15712 i32.store offset=4 - local.get $9 + local.get $4 i32.const 15712 call $~lib/string/String.__eq i32.eqz @@ -4879,14 +4886,14 @@ i32.store offset=8 i32.const 15744 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 15776 i32.store offset=4 - local.get $9 + local.get $4 i32.const 15776 call $~lib/string/String.__eq i32.eqz @@ -4903,14 +4910,14 @@ i32.store offset=8 i32.const 15808 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 15840 i32.store offset=4 - local.get $9 + local.get $4 i32.const 15840 call $~lib/string/String.__eq i32.eqz @@ -4927,14 +4934,14 @@ i32.store offset=8 i32.const 15872 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 15904 i32.store offset=4 - local.get $9 + local.get $4 i32.const 15904 call $~lib/string/String.__eq i32.eqz @@ -4951,14 +4958,14 @@ i32.store offset=8 i32.const 15936 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 15968 i32.store offset=4 - local.get $9 + local.get $4 i32.const 15968 call $~lib/string/String.__eq i32.eqz @@ -4975,14 +4982,14 @@ i32.store offset=8 i32.const 16000 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 16032 i32.store offset=4 - local.get $9 + local.get $4 i32.const 16032 call $~lib/string/String.__eq i32.eqz @@ -4999,14 +5006,14 @@ i32.store offset=8 i32.const 16064 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 16096 i32.store offset=4 - local.get $9 + local.get $4 i32.const 16096 call $~lib/string/String.__eq i32.eqz @@ -5023,14 +5030,14 @@ i32.store offset=8 i32.const 16128 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 16160 i32.store offset=4 - local.get $9 + local.get $4 i32.const 16160 call $~lib/string/String.__eq i32.eqz @@ -5047,14 +5054,14 @@ i32.store offset=8 i32.const 16192 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 16224 i32.store offset=4 - local.get $9 + local.get $4 i32.const 16224 call $~lib/string/String.__eq i32.eqz @@ -5071,14 +5078,14 @@ i32.store offset=8 i32.const 16256 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 16288 i32.store offset=4 - local.get $9 + local.get $4 i32.const 16288 call $~lib/string/String.__eq i32.eqz @@ -5095,14 +5102,14 @@ i32.store offset=8 i32.const 16320 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 16352 i32.store offset=4 - local.get $9 + local.get $4 i32.const 16352 call $~lib/string/String.__eq i32.eqz @@ -5119,14 +5126,14 @@ i32.store offset=8 i32.const 16384 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 16416 i32.store offset=4 - local.get $9 + local.get $4 i32.const 16416 call $~lib/string/String.__eq i32.eqz @@ -5143,14 +5150,14 @@ i32.store offset=8 i32.const 16448 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 16480 i32.store offset=4 - local.get $9 + local.get $4 i32.const 16480 call $~lib/string/String.__eq i32.eqz @@ -5167,14 +5174,14 @@ i32.store offset=8 i32.const 16512 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 16544 i32.store offset=4 - local.get $9 + local.get $4 i32.const 16544 call $~lib/string/String.__eq i32.eqz @@ -5191,14 +5198,14 @@ i32.store offset=8 i32.const 16576 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 16608 i32.store offset=4 - local.get $9 + local.get $4 i32.const 16608 call $~lib/string/String.__eq i32.eqz @@ -5215,14 +5222,14 @@ i32.store offset=8 i32.const 16640 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 16672 i32.store offset=4 - local.get $9 + local.get $4 i32.const 16672 call $~lib/string/String.__eq i32.eqz @@ -5239,14 +5246,14 @@ i32.store offset=8 i32.const 16704 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 16736 i32.store offset=4 - local.get $9 + local.get $4 i32.const 16736 call $~lib/string/String.__eq i32.eqz @@ -5263,14 +5270,14 @@ i32.store offset=8 i32.const 16768 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 16800 i32.store offset=4 - local.get $9 + local.get $4 i32.const 16800 call $~lib/string/String.__eq i32.eqz @@ -5287,14 +5294,14 @@ i32.store offset=8 i32.const 16832 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 16864 i32.store offset=4 - local.get $9 + local.get $4 i32.const 16864 call $~lib/string/String.__eq i32.eqz @@ -5311,14 +5318,14 @@ i32.store offset=8 i32.const 16896 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 16928 i32.store offset=4 - local.get $9 + local.get $4 i32.const 16928 call $~lib/string/String.__eq i32.eqz @@ -5335,14 +5342,14 @@ i32.store offset=8 i32.const 16960 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 16992 i32.store offset=4 - local.get $9 + local.get $4 i32.const 16992 call $~lib/string/String.__eq i32.eqz @@ -5359,14 +5366,14 @@ i32.store offset=8 i32.const 17024 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 17056 i32.store offset=4 - local.get $9 + local.get $4 i32.const 17056 call $~lib/string/String.__eq i32.eqz @@ -5383,14 +5390,14 @@ i32.store offset=8 i32.const 17088 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 17120 i32.store offset=4 - local.get $9 + local.get $4 i32.const 17120 call $~lib/string/String.__eq i32.eqz @@ -5407,14 +5414,14 @@ i32.store offset=8 i32.const 17152 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 17184 i32.store offset=4 - local.get $9 + local.get $4 i32.const 17184 call $~lib/string/String.__eq i32.eqz @@ -5431,14 +5438,14 @@ i32.store offset=8 i32.const 17216 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 17248 i32.store offset=4 - local.get $9 + local.get $4 i32.const 17248 call $~lib/string/String.__eq i32.eqz @@ -5455,14 +5462,14 @@ i32.store offset=8 i32.const 17280 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 16352 i32.store offset=4 - local.get $9 + local.get $4 i32.const 16352 call $~lib/string/String.__eq i32.eqz @@ -5479,14 +5486,14 @@ i32.store offset=8 i32.const 17312 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 17344 i32.store offset=4 - local.get $9 + local.get $4 i32.const 17344 call $~lib/string/String.__eq i32.eqz @@ -5503,14 +5510,14 @@ i32.store offset=8 i32.const 17376 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 17408 i32.store offset=4 - local.get $9 + local.get $4 i32.const 17408 call $~lib/string/String.__eq i32.eqz @@ -5527,14 +5534,14 @@ i32.store offset=8 i32.const 17440 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 17472 i32.store offset=4 - local.get $9 + local.get $4 i32.const 17472 call $~lib/string/String.__eq i32.eqz @@ -5551,14 +5558,14 @@ i32.store offset=8 i32.const 17504 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 17536 i32.store offset=4 - local.get $9 + local.get $4 i32.const 17536 call $~lib/string/String.__eq i32.eqz @@ -5575,14 +5582,14 @@ i32.store offset=8 i32.const 17568 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 17600 i32.store offset=4 - local.get $9 + local.get $4 i32.const 17600 call $~lib/string/String.__eq i32.eqz @@ -5599,14 +5606,14 @@ i32.store offset=8 i32.const 17632 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 17664 i32.store offset=4 - local.get $9 + local.get $4 i32.const 17664 call $~lib/string/String.__eq i32.eqz @@ -5623,14 +5630,14 @@ i32.store offset=8 i32.const 17696 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 17728 i32.store offset=4 - local.get $9 + local.get $4 i32.const 17728 call $~lib/string/String.__eq i32.eqz @@ -5647,14 +5654,14 @@ i32.store offset=8 i32.const 17760 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 17792 i32.store offset=4 - local.get $9 + local.get $4 i32.const 17792 call $~lib/string/String.__eq i32.eqz @@ -5671,14 +5678,14 @@ i32.store offset=8 i32.const 17824 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 17856 i32.store offset=4 - local.get $9 + local.get $4 i32.const 17856 call $~lib/string/String.__eq i32.eqz @@ -5695,14 +5702,14 @@ i32.store offset=8 i32.const 17888 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 17920 i32.store offset=4 - local.get $9 + local.get $4 i32.const 17920 call $~lib/string/String.__eq i32.eqz @@ -5719,14 +5726,14 @@ i32.store offset=8 i32.const 17952 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 17984 i32.store offset=4 - local.get $9 + local.get $4 i32.const 17984 call $~lib/string/String.__eq i32.eqz @@ -5743,14 +5750,14 @@ i32.store offset=8 i32.const 18016 call $~lib/string/String#toLowerCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 18048 i32.store offset=4 - local.get $9 + local.get $4 i32.const 18048 call $~lib/string/String.__eq i32.eqz @@ -5767,14 +5774,14 @@ i32.store offset=8 i32.const 18080 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 18112 i32.store offset=4 - local.get $9 + local.get $4 i32.const 18112 call $~lib/string/String.__eq i32.eqz @@ -5791,14 +5798,14 @@ i32.store offset=8 i32.const 15328 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 18144 i32.store offset=4 - local.get $9 + local.get $4 i32.const 18144 call $~lib/string/String.__eq i32.eqz @@ -5815,14 +5822,14 @@ i32.store offset=8 i32.const 18176 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 18208 i32.store offset=4 - local.get $9 + local.get $4 i32.const 18208 call $~lib/string/String.__eq i32.eqz @@ -5839,14 +5846,14 @@ i32.store offset=8 i32.const 18240 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 18272 i32.store offset=4 - local.get $9 + local.get $4 i32.const 18272 call $~lib/string/String.__eq i32.eqz @@ -5863,14 +5870,14 @@ i32.store offset=8 i32.const 18304 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 18336 i32.store offset=4 - local.get $9 + local.get $4 i32.const 18336 call $~lib/string/String.__eq i32.eqz @@ -5887,14 +5894,14 @@ i32.store offset=8 i32.const 18368 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 18400 i32.store offset=4 - local.get $9 + local.get $4 i32.const 18400 call $~lib/string/String.__eq i32.eqz @@ -5911,14 +5918,14 @@ i32.store offset=8 i32.const 18432 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 18400 i32.store offset=4 - local.get $9 + local.get $4 i32.const 18400 call $~lib/string/String.__eq i32.eqz @@ -5935,14 +5942,14 @@ i32.store offset=8 i32.const 18464 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 18496 i32.store offset=4 - local.get $9 + local.get $4 i32.const 18496 call $~lib/string/String.__eq i32.eqz @@ -5959,14 +5966,14 @@ i32.store offset=8 i32.const 18528 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 18560 i32.store offset=4 - local.get $9 + local.get $4 i32.const 18560 call $~lib/string/String.__eq i32.eqz @@ -5983,14 +5990,14 @@ i32.store offset=8 i32.const 18592 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 18624 i32.store offset=4 - local.get $9 + local.get $4 i32.const 18624 call $~lib/string/String.__eq i32.eqz @@ -6007,14 +6014,14 @@ i32.store offset=8 i32.const 18656 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 18688 i32.store offset=4 - local.get $9 + local.get $4 i32.const 18688 call $~lib/string/String.__eq i32.eqz @@ -6031,14 +6038,14 @@ i32.store offset=8 i32.const 18720 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 18752 i32.store offset=4 - local.get $9 + local.get $4 i32.const 18752 call $~lib/string/String.__eq i32.eqz @@ -6055,14 +6062,14 @@ i32.store offset=8 i32.const 18784 call $~lib/string/String#toUpperCase - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 18816 i32.store offset=4 - local.get $9 + local.get $4 i32.const 18816 call $~lib/string/String.__eq i32.eqz @@ -6075,418 +6082,417 @@ unreachable end loop $for-loop|0 - local.get $8 + local.get $6 i32.const 1114111 i32.le_s if global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $6 call $~lib/string/String.fromCodePoint - local.tee $9 + local.tee $4 i32.store offset=16 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 call $~lib/string/String#toLowerCase - local.tee $5 + local.tee $7 i32.store offset=20 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 call $~lib/string/String#toUpperCase local.tee $4 i32.store offset=24 block $__inlined_func$~lib/string/String#codePointAt - local.get $5 + local.get $7 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $9 + local.tee $5 i32.eqz if i32.const -1 - local.set $9 + local.set $5 br $__inlined_func$~lib/string/String#codePointAt end - local.get $9 + local.get $5 i32.const 1 i32.eq - local.get $5 + local.get $7 i32.load16_u - local.tee $9 + local.tee $5 i32.const 64512 i32.and i32.const 55296 i32.ne i32.or br_if $__inlined_func$~lib/string/String#codePointAt - local.get $5 + local.get $7 i32.load16_u offset=2 - local.tee $7 + local.tee $8 i32.const 64512 i32.and i32.const 56320 i32.ne br_if $__inlined_func$~lib/string/String#codePointAt - local.get $7 - local.get $9 + local.get $8 + local.get $5 i32.const 10 i32.shl i32.add i32.const 56613888 i32.sub - local.set $9 + local.set $5 end - local.get $9 + local.get $5 i64.extend_i32_s - local.set $0 + local.set $3 block $__inlined_func$~lib/string/String#codePointAt0 - local.get $5 + local.get $7 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $9 + local.tee $5 i32.const 1 i32.le_u if i32.const -1 - local.set $9 + local.set $5 br $__inlined_func$~lib/string/String#codePointAt0 end - local.get $9 + local.get $5 i32.const 2 i32.eq - local.get $5 + local.get $7 i32.load16_u offset=2 - local.tee $9 + local.tee $5 i32.const 64512 i32.and i32.const 55296 i32.ne i32.or br_if $__inlined_func$~lib/string/String#codePointAt0 - local.get $5 + local.get $7 i32.load16_u offset=4 - local.tee $7 + local.tee $8 i32.const 64512 i32.and i32.const 56320 i32.ne br_if $__inlined_func$~lib/string/String#codePointAt0 - local.get $7 - local.get $9 + local.get $8 + local.get $5 i32.const 10 i32.shl i32.add i32.const 56613888 i32.sub - local.set $9 + local.set $5 end - local.get $9 + local.get $5 i64.extend_i32_s - local.tee $3 + local.tee $0 i64.const 0 i64.ge_s if - local.get $3 + local.get $0 i64.const 16 i64.shl - local.get $0 + local.get $3 i64.add - local.set $0 + local.set $3 end block $__inlined_func$~lib/string/String#codePointAt1 - local.get $5 + local.get $7 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $9 + local.tee $5 i32.const 2 i32.le_u if i32.const -1 - local.set $9 + local.set $5 br $__inlined_func$~lib/string/String#codePointAt1 end - local.get $9 + local.get $5 i32.const 3 i32.eq - local.get $5 + local.get $7 i32.load16_u offset=4 - local.tee $9 + local.tee $5 i32.const 64512 i32.and i32.const 55296 i32.ne i32.or br_if $__inlined_func$~lib/string/String#codePointAt1 - local.get $5 + local.get $7 i32.load16_u offset=6 - local.tee $5 + local.tee $7 i32.const 64512 i32.and i32.const 56320 i32.ne br_if $__inlined_func$~lib/string/String#codePointAt1 + local.get $7 local.get $5 - local.get $9 i32.const 10 i32.shl i32.add i32.const 56613888 i32.sub - local.set $9 + local.set $5 end - local.get $9 + local.get $5 i64.extend_i32_s - local.tee $3 + local.tee $0 i64.const 0 i64.ge_s if - local.get $3 + local.get $0 i64.const 32 i64.shl - local.get $0 + local.get $3 i64.add - local.set $0 + local.set $3 end block $__inlined_func$~lib/string/String#codePointAt2 local.get $4 - local.tee $5 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $9 + local.tee $5 i32.eqz if i32.const -1 - local.set $9 + local.set $5 br $__inlined_func$~lib/string/String#codePointAt2 end - local.get $9 + local.get $5 i32.const 1 i32.eq - local.get $5 + local.get $4 i32.load16_u - local.tee $9 + local.tee $5 i32.const 64512 i32.and i32.const 55296 i32.ne i32.or br_if $__inlined_func$~lib/string/String#codePointAt2 - local.get $5 + local.get $4 i32.load16_u offset=2 - local.tee $4 + local.tee $7 i32.const 64512 i32.and i32.const 56320 i32.ne br_if $__inlined_func$~lib/string/String#codePointAt2 - local.get $4 - local.get $9 + local.get $7 + local.get $5 i32.const 10 i32.shl i32.add i32.const 56613888 i32.sub - local.set $9 + local.set $5 end - local.get $9 + local.get $5 i64.extend_i32_s - local.set $3 + local.set $0 block $__inlined_func$~lib/string/String#codePointAt3 - local.get $5 + local.get $4 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $9 + local.tee $5 i32.const 1 i32.le_u if i32.const -1 - local.set $9 + local.set $5 br $__inlined_func$~lib/string/String#codePointAt3 end - local.get $9 + local.get $5 i32.const 2 i32.eq - local.get $5 + local.get $4 i32.load16_u offset=2 - local.tee $9 + local.tee $5 i32.const 64512 i32.and i32.const 55296 i32.ne i32.or br_if $__inlined_func$~lib/string/String#codePointAt3 - local.get $5 + local.get $4 i32.load16_u offset=4 - local.tee $4 + local.tee $7 i32.const 64512 i32.and i32.const 56320 i32.ne br_if $__inlined_func$~lib/string/String#codePointAt3 - local.get $4 - local.get $9 + local.get $7 + local.get $5 i32.const 10 i32.shl i32.add i32.const 56613888 i32.sub - local.set $9 + local.set $5 end - local.get $9 + local.get $5 i64.extend_i32_s - local.tee $2 + local.tee $1 i64.const 0 i64.ge_s if - local.get $2 + local.get $1 i64.const 16 i64.shl - local.get $3 + local.get $0 i64.add - local.set $3 + local.set $0 end block $__inlined_func$~lib/string/String#codePointAt4 - local.get $5 + local.get $4 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $9 + local.tee $5 i32.const 2 i32.le_u if i32.const -1 - local.set $9 + local.set $5 br $__inlined_func$~lib/string/String#codePointAt4 end - local.get $9 + local.get $5 i32.const 3 i32.eq - local.get $5 + local.get $4 i32.load16_u offset=4 - local.tee $9 + local.tee $5 i32.const 64512 i32.and i32.const 55296 i32.ne i32.or br_if $__inlined_func$~lib/string/String#codePointAt4 - local.get $5 + local.get $4 i32.load16_u offset=6 - local.tee $5 + local.tee $4 i32.const 64512 i32.and i32.const 56320 i32.ne br_if $__inlined_func$~lib/string/String#codePointAt4 + local.get $4 local.get $5 - local.get $9 i32.const 10 i32.shl i32.add i32.const 56613888 i32.sub - local.set $9 + local.set $5 end - local.get $9 + local.get $5 i64.extend_i32_s - local.tee $2 + local.tee $1 i64.const 0 i64.ge_s if - local.get $2 + local.get $1 i64.const 32 i64.shl - local.get $3 + local.get $0 i64.add - local.set $3 + local.set $0 end - local.get $8 + local.get $6 i32.const 0 call $std/string-casemapping/toLowerCaseFromIndex i64.extend_i32_s - local.set $2 - local.get $8 + local.set $1 + local.get $6 i32.const 1 call $std/string-casemapping/toLowerCaseFromIndex i64.extend_i32_s - local.tee $1 + local.tee $2 i64.const 0 i64.ge_s if - local.get $1 + local.get $2 i64.const 16 i64.shl - local.get $2 + local.get $1 i64.add - local.set $2 + local.set $1 end - local.get $8 + local.get $6 i32.const 2 call $std/string-casemapping/toLowerCaseFromIndex i64.extend_i32_s - local.tee $1 + local.tee $2 i64.const 0 i64.ge_s if - local.get $1 + local.get $2 i64.const 32 i64.shl - local.get $2 + local.get $1 i64.add - local.set $2 + local.set $1 end - local.get $8 + local.get $6 i32.const 0 call $std/string-casemapping/toUpperCaseFromIndex i64.extend_i32_s - local.set $1 - local.get $8 + local.set $2 + local.get $6 i32.const 1 call $std/string-casemapping/toUpperCaseFromIndex i64.extend_i32_s - local.tee $6 + local.tee $9 i64.const 0 i64.ge_s if - local.get $6 + local.get $9 i64.const 16 i64.shl - local.get $1 + local.get $2 i64.add - local.set $1 + local.set $2 end - local.get $8 + local.get $6 i32.const 2 call $std/string-casemapping/toUpperCaseFromIndex i64.extend_i32_s - local.tee $6 + local.tee $9 i64.const 0 i64.ge_s if - local.get $6 + local.get $9 i64.const 32 i64.shl - local.get $1 + local.get $2 i64.add - local.set $1 + local.set $2 end - local.get $0 - local.get $2 + local.get $1 + local.get $3 i64.ne if global.get $~lib/memory/__stack_pointer @@ -6494,7 +6500,7 @@ i32.store i32.const 18848 i32.const 1 - local.get $8 + local.get $6 f64.convert_i32_s f64.const 0 f64.const 0 @@ -6504,20 +6510,20 @@ global.get $~lib/memory/__stack_pointer i32.const 18944 i32.store offset=4 - local.get $0 + local.get $3 call $~lib/number/I64#toString - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store offset=8 i32.const 18944 - local.get $9 + local.get $4 call $~lib/string/String.__concat - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store - local.get $9 + local.get $4 i32.const 0 f64.const 0 f64.const 0 @@ -6528,20 +6534,20 @@ global.get $~lib/memory/__stack_pointer i32.const 20784 i32.store offset=4 - local.get $2 + local.get $1 call $~lib/number/I64#toString - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store offset=8 i32.const 20784 - local.get $9 + local.get $4 call $~lib/string/String.__concat - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store - local.get $9 + local.get $4 i32.const 0 f64.const 0 f64.const 0 @@ -6550,8 +6556,8 @@ f64.const 0 call $~lib/builtins/trace end - local.get $1 - local.get $3 + local.get $0 + local.get $2 i64.ne if global.get $~lib/memory/__stack_pointer @@ -6559,7 +6565,7 @@ i32.store i32.const 20848 i32.const 1 - local.get $8 + local.get $6 f64.convert_i32_s f64.const 0 f64.const 0 @@ -6569,20 +6575,20 @@ global.get $~lib/memory/__stack_pointer i32.const 20944 i32.store offset=4 - local.get $3 + local.get $0 call $~lib/number/I64#toString - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store offset=8 i32.const 20944 - local.get $9 + local.get $4 call $~lib/string/String.__concat - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store - local.get $9 + local.get $4 i32.const 0 f64.const 0 f64.const 0 @@ -6593,20 +6599,20 @@ global.get $~lib/memory/__stack_pointer i32.const 21008 i32.store offset=4 - local.get $1 + local.get $2 call $~lib/number/I64#toString - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store offset=8 i32.const 21008 - local.get $9 + local.get $4 call $~lib/string/String.__concat - local.set $9 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.store - local.get $9 + local.get $4 i32.const 0 f64.const 0 f64.const 0 @@ -6615,10 +6621,10 @@ f64.const 0 call $~lib/builtins/trace end - local.get $8 + local.get $6 i32.const 1 i32.add - local.set $8 + local.set $6 br $for-loop|0 end end @@ -6662,7 +6668,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $8 + local.tee $7 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -6673,7 +6679,7 @@ return end global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.const 2 i32.shl i32.const 1 @@ -6682,7 +6688,7 @@ i32.store loop $for-loop|0 local.get $4 - local.get $8 + local.get $7 i32.lt_u if local.get $4 @@ -6701,7 +6707,7 @@ i32.sub i32.const 1025 i32.lt_u - local.get $8 + local.get $7 i32.const 1 i32.sub local.get $4 @@ -6714,7 +6720,7 @@ local.get $0 i32.add i32.load16_u offset=2 - local.tee $7 + local.tee $2 i32.const 56319 i32.sub i32.const 1025 @@ -6724,7 +6730,7 @@ i32.const 1 i32.add local.set $4 - local.get $7 + local.get $2 i32.const 1023 i32.and local.get $3 @@ -6745,7 +6751,7 @@ i32.shl local.get $6 i32.add - local.get $7 + local.get $2 i32.const 16 i32.shl local.get $1 @@ -6786,7 +6792,7 @@ i32.add i32.const 962 i32.const 963 - local.get $8 + local.get $7 i32.const 1 i32.gt_u if (result i32) @@ -6803,10 +6809,10 @@ i32.const 0 i32.lt_s select - local.set $9 + local.set $8 loop $while-continue|1 local.get $3 - local.get $9 + local.get $8 i32.gt_s if i32.const -1 @@ -6824,7 +6830,7 @@ local.get $0 i32.add i32.load16_u - local.tee $7 + local.tee $10 i32.const 64512 i32.and i32.const 56320 @@ -6836,7 +6842,7 @@ i32.ge_s i32.and if - local.get $7 + local.get $10 i32.const 1023 i32.and local.get $3 @@ -6847,7 +6853,7 @@ local.get $0 i32.add i32.load16_u - local.tee $10 + local.tee $9 i32.const 1023 i32.and i32.const 10 @@ -6856,7 +6862,7 @@ i32.const 65536 i32.add local.set $1 - local.get $10 + local.get $9 i32.const 64512 i32.and i32.const 55296 @@ -6864,8 +6870,8 @@ br_if $~lib/util/string/codePointBefore|inlined.0 end i32.const 65533 - local.get $7 - local.get $7 + local.get $10 + local.get $10 i32.const 63488 i32.and i32.const 55296 @@ -6965,9 +6971,9 @@ i32.const 30 i32.add local.tee $1 - local.get $8 + local.get $7 local.get $1 - local.get $8 + local.get $7 i32.lt_s select local.set $2 @@ -6987,7 +6993,7 @@ i32.and i32.const 55296 i32.eq - local.get $8 + local.get $7 local.get $3 i32.const 1 i32.add @@ -7000,13 +7006,13 @@ local.get $0 i32.add i32.load16_u offset=2 - local.tee $7 + local.tee $8 i32.const 64512 i32.and i32.const 56320 i32.eq if - local.get $7 + local.get $8 local.get $1 i32.const 10 i32.shl @@ -7224,13 +7230,13 @@ local.get $0 i32.const 65535 i32.gt_u - local.tee $2 + local.tee $1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $2 + local.get $1 if local.get $0 i32.const 1114111 @@ -7243,7 +7249,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 local.get $0 i32.const 65536 i32.sub @@ -7262,7 +7268,7 @@ i32.or i32.store else - local.get $1 + local.get $2 local.get $0 i32.store16 end @@ -7270,7 +7276,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) (local $1 i32) @@ -7280,19 +7286,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -7302,22 +7308,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 37476 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -7331,9 +7337,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -7343,23 +7349,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -7367,7 +7373,7 @@ else i32.const 21056 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1280 @@ -7377,7 +7383,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 21060 @@ -7392,28 +7398,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/std/string-encoding.optimized.wat b/tests/compiler/std/string-encoding.optimized.wat index 870ff6b18f..fbfa7377b6 100644 --- a/tests/compiler/std/string-encoding.optimized.wat +++ b/tests/compiler/std/string-encoding.optimized.wat @@ -202,19 +202,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -239,9 +239,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -249,17 +249,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -547,10 +547,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -562,15 +562,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -600,7 +600,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -913,7 +913,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 38924 i32.ge_u if @@ -923,20 +923,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -949,8 +949,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1130,12 +1129,12 @@ if block $__inlined_func$~lib/rt/itcms/interrupt i32.const 2048 - local.set $3 + local.set $2 loop $do-loop|0 - local.get $3 + local.get $2 call $~lib/rt/itcms/step i32.sub - local.set $3 + local.set $2 global.get $~lib/rt/itcms/state i32.eqz if @@ -1151,14 +1150,14 @@ global.set $~lib/rt/itcms/threshold br $__inlined_func$~lib/rt/itcms/interrupt end - local.get $3 + local.get $2 i32.const 0 i32.gt_s br_if $do-loop|0 end global.get $~lib/rt/itcms/total - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 @@ -1172,15 +1171,15 @@ local.get $0 i32.const 16 i32.add - local.set $3 + local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $6 - local.get $3 + local.tee $3 + local.get $2 i32.const 1073741820 i32.gt_u if @@ -1191,13 +1190,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $3 + local.get $2 i32.const 19 i32.add i32.const -16 @@ -1205,34 +1204,34 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size - local.tee $5 - local.get $3 + local.tee $2 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $6 + local.get $3 i32.load offset=1568 - local.get $5 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1246,16 +1245,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $5 local.get $2 local.get $5 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1263,16 +1262,16 @@ unreachable end end - local.get $6 - local.get $5 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1289,7 +1288,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1299,13 +1298,13 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1321,9 +1320,9 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if @@ -1331,23 +1330,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1411,19 +1410,19 @@ local.get $2 i32.const 20 i32.add - local.tee $3 - local.set $2 + local.tee $2 + local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 i32.eqz br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 local.get $0 - local.get $2 + local.get $1 i32.add - local.tee $1 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1432,18 +1431,18 @@ i32.const 2 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=1 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=2 - local.get $1 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1452,10 +1451,10 @@ i32.const 6 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=3 - local.get $1 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1464,97 +1463,97 @@ i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 - local.get $2 + local.get $1 i32.sub i32.const 3 i32.and - local.tee $1 + local.tee $3 i32.add - local.tee $4 + local.tee $1 i32.const 0 i32.store - local.get $4 - local.get $0 local.get $1 + local.get $0 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=4 - local.get $4 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=12 - local.get $4 + local.get $1 i32.const 0 i32.store offset=16 - local.get $4 + local.get $1 i32.const 0 i32.store offset=20 - local.get $4 + local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 i32.store - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.const 4 i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1586,7 +1585,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/util/memory/memcpy (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -1601,17 +1600,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -1757,19 +1756,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -1784,7 +1783,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -1795,10 +1794,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -1806,10 +1805,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -1820,7 +1819,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -1875,7 +1874,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -1886,10 +1885,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -1897,10 +1896,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -1911,7 +1910,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -1937,17 +1936,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -1962,7 +1961,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -1973,10 +1972,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -1984,10 +1983,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -1998,7 +1997,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2035,131 +2034,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -2176,59 +2179,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.tee $1 + i32.const 2 + i32.add + local.set $3 + local.get $4 local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $4 + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -2579,14 +2586,14 @@ if local.get $3 i32.load16_u - local.tee $2 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $2 i32.ne if - local.get $2 local.get $4 + local.get $2 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -3082,18 +3089,18 @@ i32.store i32.const 1052 i32.load - local.set $2 + local.set $1 local.get $0 i32.const 0 call $~lib/string/String.UTF16.decodeUnsafe - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store global.get $~lib/memory/__stack_pointer i32.const 1552 i32.store offset=8 - local.get $1 + local.get $2 i32.const 1552 call $~lib/string/String.__eq i32.eqz @@ -3106,7 +3113,7 @@ unreachable end local.get $0 - local.get $2 + local.get $1 call $~lib/string/String.UTF16.decodeUnsafe local.set $1 global.get $~lib/memory/__stack_pointer @@ -3687,20 +3694,20 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 1824 i32.store offset=4 i32.const 1824 i32.const 0 i32.const 1 call $~lib/string/String.UTF8.encode - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store local.get $1 + i32.store local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -3724,20 +3731,20 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 1888 i32.store offset=4 i32.const 1888 i32.const 0 i32.const 0 call $~lib/string/String.UTF8.encode - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store local.get $1 + i32.store local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -3761,20 +3768,20 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 1888 i32.store offset=4 i32.const 1888 i32.const 0 i32.const 1 call $~lib/string/String.UTF8.encode - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store local.get $1 + i32.store local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -4106,22 +4113,22 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 1056 i32.store i32.const 2 global.set $~argumentsLength - local.get $1 + local.get $0 i32.const 1056 i32.const 1 call $~lib/string/String.UTF8.encode@varargs - local.tee $1 + local.tee $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 1056 @@ -4129,19 +4136,19 @@ i32.const 1056 i32.const 0 call $~lib/string/String.UTF8.byteLength - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.const 0 i32.const 0 call $~lib/string/String.UTF8.decodeUnsafe - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store global.get $~lib/memory/__stack_pointer i32.const 1552 i32.store offset=8 - local.get $0 + local.get $2 i32.const 1552 call $~lib/string/String.__eq i32.eqz @@ -4153,19 +4160,19 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $1 - local.get $2 i32.const 0 call $~lib/string/String.UTF8.decodeUnsafe - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer local.tee $2 - local.get $0 + local.get $1 i32.store local.get $2 i32.const 1056 i32.store offset=8 - local.get $0 + local.get $1 i32.const 1056 call $~lib/string/String.__eq i32.eqz @@ -4177,19 +4184,19 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 4 i32.const 0 call $~lib/string/String.UTF8.decodeUnsafe - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer local.tee $2 - local.get $0 + local.get $1 i32.store local.get $2 i32.const 1584 i32.store offset=8 - local.get $0 + local.get $1 i32.const 1584 call $~lib/string/String.__eq i32.eqz @@ -4201,21 +4208,21 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 4 i32.add i32.const 2 i32.const 0 call $~lib/string/String.UTF8.decodeUnsafe - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer local.tee $2 - local.get $0 + local.get $1 i32.store local.get $2 i32.const 1648 i32.store offset=8 - local.get $0 + local.get $1 i32.const 1648 call $~lib/string/String.__eq i32.eqz @@ -4227,21 +4234,21 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 6 i32.add i32.const 4 i32.const 0 call $~lib/string/String.UTF8.decodeUnsafe - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer local.tee $2 - local.get $0 + local.get $1 i32.store local.get $2 i32.const 1680 i32.store offset=8 - local.get $0 + local.get $1 i32.const 1680 call $~lib/string/String.__eq i32.eqz @@ -4253,21 +4260,21 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 10 i32.add i32.const 0 i32.const 0 call $~lib/string/String.UTF8.decodeUnsafe - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer local.tee $2 - local.get $0 + local.get $1 i32.store local.get $2 i32.const 1552 i32.store offset=8 - local.get $0 + local.get $1 i32.const 1552 call $~lib/string/String.__eq i32.eqz @@ -4279,21 +4286,21 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 4 i32.add i32.const 100 i32.const 1 call $~lib/string/String.UTF8.decodeUnsafe - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer local.tee $2 - local.get $0 + local.get $1 i32.store local.get $2 i32.const 2000 i32.store offset=8 - local.get $0 + local.get $1 i32.const 2000 call $~lib/string/String.__eq i32.eqz @@ -4305,21 +4312,21 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 6 i32.add i32.const 100 i32.const 1 call $~lib/string/String.UTF8.decodeUnsafe - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer local.tee $2 - local.get $0 + local.get $1 i32.store local.get $2 i32.const 1680 i32.store offset=8 - local.get $0 + local.get $1 i32.const 1680 call $~lib/string/String.__eq i32.eqz @@ -4331,21 +4338,21 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 10 i32.add i32.const 100 i32.const 1 call $~lib/string/String.UTF8.decodeUnsafe - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 1552 i32.store offset=8 - local.get $1 + local.get $0 i32.const 1552 call $~lib/string/String.__eq i32.eqz @@ -4521,20 +4528,20 @@ local.get $1 i32.const -2 i32.and - local.tee $2 + local.tee $1 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 - local.get $0 local.get $2 + local.get $0 + local.get $1 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 ) (func $~lib/string/String.UTF8.encode (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -4558,10 +4565,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $4 i32.const 0 i32.store - local.get $3 + local.get $4 local.get $0 local.get $1 call $~lib/string/String.UTF8.byteLength @@ -4832,12 +4839,12 @@ block $while-break|0 local.get $3 i32.load8_u - local.set $4 + local.set $7 local.get $3 i32.const 1 i32.add local.set $3 - local.get $4 + local.get $7 i32.const 128 i32.and if @@ -4849,20 +4856,20 @@ i32.load8_u i32.const 63 i32.and - local.set $6 + local.set $4 local.get $3 i32.const 1 i32.add local.set $3 - local.get $4 + local.get $7 i32.const 224 i32.and i32.const 192 i32.eq if local.get $1 - local.get $6 local.get $4 + local.get $7 i32.const 31 i32.and i32.const 6 @@ -4878,24 +4885,24 @@ i32.load8_u i32.const 63 i32.and - local.set $7 + local.set $6 local.get $3 i32.const 1 i32.add local.set $3 - local.get $4 + local.get $7 i32.const 240 i32.and i32.const 224 i32.eq if + local.get $6 local.get $7 - local.get $4 i32.const 15 i32.and i32.const 12 i32.shl - local.get $6 + local.get $4 i32.const 6 i32.shl i32.or @@ -4910,16 +4917,16 @@ i32.load8_u i32.const 63 i32.and - local.get $4 + local.get $7 i32.const 7 i32.and i32.const 18 i32.shl - local.get $6 + local.get $4 i32.const 12 i32.shl i32.or - local.get $7 + local.get $6 i32.const 6 i32.shl i32.or @@ -4963,13 +4970,13 @@ end end else - local.get $4 + local.get $7 i32.eqz local.get $2 i32.and br_if $while-break|0 local.get $1 - local.get $4 + local.get $7 i32.store16 end local.get $1 @@ -5033,19 +5040,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -5055,22 +5062,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 38924 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -5084,9 +5091,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -5096,23 +5103,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -5120,7 +5127,7 @@ else i32.const 22512 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1344 @@ -5130,7 +5137,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 22516 @@ -5145,28 +5152,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/std/string.optimized.wat b/tests/compiler/std/string.optimized.wat index 6f22588c86..97a6899edb 100644 --- a/tests/compiler/std/string.optimized.wat +++ b/tests/compiler/std/string.optimized.wat @@ -998,14 +998,14 @@ if local.get $1 i32.load16_u - local.tee $0 + local.tee $4 local.get $2 i32.load16_u - local.tee $4 + local.tee $0 i32.ne if - local.get $0 local.get $4 + local.get $0 i32.sub return end @@ -1155,7 +1155,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1178,7 +1178,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1188,15 +1188,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -1237,20 +1237,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -1345,19 +1345,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -1382,9 +1382,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -1392,17 +1392,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -1690,10 +1690,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -1705,15 +1705,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -1743,7 +1743,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -2056,7 +2056,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 42268 i32.ge_u if @@ -2066,20 +2066,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -2092,8 +2092,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -2320,14 +2319,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -2337,17 +2336,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -2363,22 +2362,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -2389,11 +2388,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -2498,7 +2497,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $5 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -2524,34 +2523,34 @@ i32.const 4 i32.sub end - local.tee $2 + local.tee $5 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $2 i32.eqz if memory.size - local.tee $4 - local.get $2 + local.tee $2 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $2 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $2 + local.get $5 i32.add else - local.get $2 + local.get $5 end i32.const 4 - local.get $5 + local.get $3 i32.load offset=1568 - local.get $4 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -2565,16 +2564,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $3 + local.tee $4 + local.get $2 local.get $4 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -2582,18 +2581,18 @@ unreachable end end - local.get $5 - local.get $4 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $3 local.get $5 - local.get $2 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $2 i32.eqz if i32.const 0 @@ -2604,11 +2603,11 @@ unreachable end end - local.get $3 + local.get $2 i32.load i32.const -4 i32.and - local.get $2 + local.get $5 i32.lt_u if i32.const 0 @@ -2618,13 +2617,13 @@ call $~lib/builtins/abort unreachable end - local.get $5 local.get $3 + local.get $2 call $~lib/rt/tlsf/removeBlock - local.get $3 - i32.load - local.set $4 local.get $2 + i32.load + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -2637,89 +2636,89 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 i32.const -4 i32.and - local.get $2 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.const 2 i32.and - local.get $2 + local.get $5 i32.or i32.store + local.get $5 local.get $2 - local.get $3 i32.const 4 i32.add i32.add - local.tee $2 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $3 local.get $5 - local.get $2 call $~lib/rt/tlsf/insertBlock else - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.const -2 i32.and i32.store - local.get $3 + local.get $2 i32.const 4 i32.add - local.get $3 + local.get $2 i32.load i32.const -4 i32.and i32.add - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.load i32.const -3 i32.and i32.store end - local.get $3 + local.get $2 local.get $1 i32.store offset=12 - local.get $3 + local.get $2 local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace local.tee $1 i32.load offset=8 - local.set $2 - local.get $3 + local.set $3 + local.get $2 global.get $~lib/rt/itcms/white local.get $1 i32.or i32.store offset=4 - local.get $3 local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $3 + local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total - local.get $3 + local.get $2 i32.load i32.const -4 i32.and @@ -2727,7 +2726,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $3 + local.get $2 i32.const 20 i32.add local.tee $1 @@ -2807,17 +2806,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2963,19 +2962,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2990,7 +2989,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -3001,10 +3000,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -3012,10 +3011,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -3026,7 +3025,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -3081,7 +3080,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -3092,10 +3091,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -3103,10 +3102,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -3117,7 +3116,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -3143,17 +3142,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -3168,7 +3167,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -3179,10 +3178,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -3190,10 +3189,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -3204,7 +3203,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -3241,131 +3240,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -3382,59 +3385,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -3704,7 +3711,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 i32.eqz if i32.const 0 @@ -3716,7 +3723,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.eqz if i32.const -1 @@ -3729,25 +3736,25 @@ i32.gt_s select local.tee $2 - local.get $3 + local.get $4 local.get $2 - local.get $3 + local.get $4 i32.lt_s select local.set $2 - local.get $3 local.get $4 + local.get $3 i32.sub - local.set $3 + local.set $4 loop $for-loop|0 local.get $2 - local.get $3 + local.get $4 i32.le_s if local.get $0 local.get $2 local.get $1 - local.get $4 + local.get $3 call $~lib/util/string/compareImpl i32.eqz if @@ -3797,7 +3804,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 i32.eqz if local.get $0 @@ -3814,7 +3821,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.eqz if i32.const -1 @@ -3827,12 +3834,12 @@ i32.gt_s select local.tee $2 - local.get $3 local.get $4 + local.get $3 i32.sub - local.tee $3 + local.tee $4 local.get $2 - local.get $3 + local.get $4 i32.lt_s select local.set $2 @@ -3844,7 +3851,7 @@ local.get $0 local.get $2 local.get $1 - local.get $4 + local.get $3 call $~lib/util/string/compareImpl i32.eqz if @@ -4004,7 +4011,7 @@ end end f64.const 1 - local.set $4 + local.set $5 local.get $2 i32.const 43 i32.eq @@ -4028,7 +4035,7 @@ i32.const 45 i32.eq select - local.set $4 + local.set $5 local.get $0 i32.const 2 i32.add @@ -4200,7 +4207,7 @@ local.tee $2 i32.le_u if - local.get $5 + local.get $4 i64.reinterpret_f64 i64.const 1 i64.shl @@ -4214,14 +4221,14 @@ end br $while-break|2 end - local.get $5 + local.get $4 local.get $1 f64.convert_i32_s f64.mul local.get $2 f64.convert_i32_u f64.add - local.set $5 + local.set $4 local.get $0 i32.const 2 i32.add @@ -4230,8 +4237,8 @@ end end end - local.get $4 local.get $5 + local.get $4 f64.mul ) (func $~lib/util/string/strtol (result i32) @@ -4252,7 +4259,7 @@ return end i32.const 4240 - local.set $5 + local.set $2 i32.const 4240 i32.load16_u local.set $0 @@ -4320,10 +4327,10 @@ i32.const 0 end if - local.get $5 + local.get $2 i32.const 2 i32.add - local.tee $5 + local.tee $2 i32.load16_u local.set $0 local.get $1 @@ -4334,7 +4341,7 @@ end end i32.const 1 - local.set $2 + local.set $5 local.get $0 i32.const 43 i32.eq @@ -4358,11 +4365,11 @@ i32.const 45 i32.eq select - local.set $2 - local.get $5 + local.set $5 + local.get $2 i32.const 2 i32.add - local.tee $5 + local.tee $2 i32.load16_u else local.get $0 @@ -4377,7 +4384,7 @@ block $break|1 block $case2|1 block $case1|1 - local.get $5 + local.get $2 i32.load16_u offset=2 i32.const 32 i32.or @@ -4395,47 +4402,47 @@ br_if $case2|1 br $break|1 end - local.get $5 + local.get $2 i32.const 4 i32.add - local.set $5 + local.set $2 local.get $1 i32.const 2 i32.sub local.set $1 i32.const 2 - local.set $4 + local.set $3 br $break|1 end - local.get $5 + local.get $2 i32.const 4 i32.add - local.set $5 + local.set $2 local.get $1 i32.const 2 i32.sub local.set $1 i32.const 8 - local.set $4 + local.set $3 br $break|1 end - local.get $5 + local.get $2 i32.const 4 i32.add - local.set $5 + local.set $2 local.get $1 i32.const 2 i32.sub local.set $1 i32.const 16 - local.set $4 + local.set $3 end end - local.get $4 + local.get $3 i32.const 10 - local.get $4 + local.get $3 select - local.set $4 + local.set $3 loop $while-continue|2 block $while-break|2 local.get $1 @@ -4445,7 +4452,7 @@ local.set $1 local.get $0 if - local.get $5 + local.get $2 i32.load16_u local.tee $0 i32.const 48 @@ -4480,10 +4487,10 @@ end end local.tee $0 - local.get $4 + local.get $3 i32.ge_u if - local.get $3 + local.get $4 i32.eqz if i32.const 0 @@ -4496,26 +4503,26 @@ local.get $4 i32.mul i32.add - local.set $3 - local.get $5 + local.set $4 + local.get $2 i32.const 2 i32.add - local.set $5 + local.set $2 br $while-continue|2 end end end - local.get $2 - local.get $3 + local.get $4 + local.get $5 i32.mul ) (func $~lib/util/string/strtol (result i64) (local $0 i32) (local $1 i32) - (local $2 i64) - (local $3 i64) - (local $4 i32) - (local $5 i32) + (local $2 i32) + (local $3 i32) + (local $4 i64) + (local $5 i64) i32.const 4284 i32.load i32.const 1 @@ -4527,7 +4534,7 @@ return end i32.const 4288 - local.set $5 + local.set $2 i32.const 4288 i32.load16_u local.set $0 @@ -4595,10 +4602,10 @@ i32.const 0 end if - local.get $5 + local.get $2 i32.const 2 i32.add - local.tee $5 + local.tee $2 i32.load16_u local.set $0 local.get $1 @@ -4609,7 +4616,7 @@ end end i64.const 1 - local.set $2 + local.set $5 local.get $0 i32.const 43 i32.eq @@ -4633,11 +4640,11 @@ i32.const 45 i32.eq select - local.set $2 - local.get $5 + local.set $5 + local.get $2 i32.const 2 i32.add - local.tee $5 + local.tee $2 i32.load16_u else local.get $0 @@ -4652,7 +4659,7 @@ block $break|1 block $case2|1 block $case1|1 - local.get $5 + local.get $2 i32.load16_u offset=2 i32.const 32 i32.or @@ -4670,47 +4677,47 @@ br_if $case2|1 br $break|1 end - local.get $5 + local.get $2 i32.const 4 i32.add - local.set $5 + local.set $2 local.get $1 i32.const 2 i32.sub local.set $1 i32.const 2 - local.set $4 + local.set $3 br $break|1 end - local.get $5 + local.get $2 i32.const 4 i32.add - local.set $5 + local.set $2 local.get $1 i32.const 2 i32.sub local.set $1 i32.const 8 - local.set $4 + local.set $3 br $break|1 end - local.get $5 + local.get $2 i32.const 4 i32.add - local.set $5 + local.set $2 local.get $1 i32.const 2 i32.sub local.set $1 i32.const 16 - local.set $4 + local.set $3 end end - local.get $4 + local.get $3 i32.const 10 - local.get $4 + local.get $3 select - local.set $4 + local.set $3 loop $while-continue|2 block $while-break|2 local.get $1 @@ -4720,7 +4727,7 @@ local.set $1 local.get $0 if - local.get $5 + local.get $2 i32.load16_u local.tee $0 i32.const 48 @@ -4755,10 +4762,10 @@ end end local.tee $0 - local.get $4 + local.get $3 i32.ge_u if - local.get $3 + local.get $4 i64.eqz if i64.const 0 @@ -4768,22 +4775,22 @@ end local.get $0 i64.extend_i32_u - local.get $4 - i64.extend_i32_s local.get $3 + i64.extend_i32_s + local.get $4 i64.mul i64.add - local.set $3 - local.get $5 + local.set $4 + local.get $2 i32.const 2 i32.add - local.set $5 + local.set $2 br $while-continue|2 end end end - local.get $2 - local.get $3 + local.get $4 + local.get $5 i64.mul ) (func $~lib/math/ipow32 (param $0 i32) (result i32) @@ -5026,11 +5033,11 @@ (local $6 i64) (local $7 i32) (local $8 i64) - (local $9 i64) - (local $10 i64) - (local $11 f64) - (local $12 f64) - (local $13 i32) + (local $9 f64) + (local $10 f64) + (local $11 i32) + (local $12 i64) + (local $13 i64) (local $14 i64) block $folding-inner0 local.get $0 @@ -5046,7 +5053,7 @@ i32.load16_u local.set $5 f64.const 1 - local.set $12 + local.set $10 loop $while-continue|0 local.get $7 if (result i32) @@ -5143,7 +5150,7 @@ i32.eqz br_if $folding-inner0 f64.const -1 - local.set $12 + local.set $10 local.get $0 i32.const 2 i32.add @@ -5190,7 +5197,7 @@ i32.const 0 end if - local.get $12 + local.get $10 f64.const inf f64.mul return @@ -5208,7 +5215,7 @@ i32.and br_if $folding-inner0 local.get $0 - local.set $2 + local.set $4 loop $while-continue|1 local.get $5 i32.const 48 @@ -5239,15 +5246,15 @@ i32.eq if local.get $0 - local.get $2 + local.get $4 i32.eq - local.set $2 + local.set $4 local.get $0 i32.const 2 i32.add local.set $0 i32.const 0 - local.get $2 + local.get $4 local.get $7 i32.const 1 i32.sub @@ -5255,7 +5262,7 @@ select br_if $folding-inner0 i32.const 1 - local.set $13 + local.set $11 loop $for-loop|2 local.get $0 i32.load16_u @@ -5267,10 +5274,10 @@ i32.const 1 i32.sub local.set $7 - local.get $3 + local.get $2 i32.const 1 i32.sub - local.set $3 + local.set $2 local.get $0 i32.const 2 i32.add @@ -5292,8 +5299,8 @@ i32.ge_u i32.const 0 i32.const 0 + local.get $4 local.get $2 - local.get $3 select select br_if $folding-inner0 @@ -5301,21 +5308,21 @@ local.get $5 i32.const 48 i32.sub - local.set $2 + local.set $4 loop $for-loop|3 - local.get $13 + local.get $11 i32.eqz local.get $5 i32.const 46 i32.eq i32.and - local.get $2 + local.get $4 i32.const 10 i32.lt_u i32.or if block $for-break3 - local.get $2 + local.get $4 i32.const 10 i32.lt_u if @@ -5323,14 +5330,14 @@ i32.const 19 i32.lt_s if (result i64) - local.get $2 + local.get $4 i64.extend_i32_u local.get $6 i64.const 10 i64.mul i64.add else - local.get $2 + local.get $4 i32.eqz i32.eqz i64.extend_i32_u @@ -5344,9 +5351,9 @@ local.set $1 else local.get $1 - local.set $3 + local.set $2 i32.const 1 - local.set $13 + local.set $11 end local.get $7 i32.const 1 @@ -5362,7 +5369,7 @@ local.tee $5 i32.const 48 i32.sub - local.set $2 + local.set $4 br $for-loop|3 end end @@ -5371,9 +5378,9 @@ f64.const 0 local.get $6 i64.eqz - local.get $3 + local.get $2 local.get $1 - local.get $13 + local.get $11 select i32.const 19 local.get $1 @@ -5398,7 +5405,7 @@ local.get $7 i32.const 1 i32.sub - local.tee $2 + local.tee $4 i32.eqz br_if $~lib/util/string/parseExp|inlined.0 drop @@ -5407,15 +5414,15 @@ i32.add local.tee $0 i32.load16_u - local.tee $3 + local.tee $2 i32.const 45 i32.eq if (result i32) i32.const 0 - local.get $2 + local.get $4 i32.const 1 i32.sub - local.tee $2 + local.tee $4 i32.eqz br_if $~lib/util/string/parseExp|inlined.0 drop @@ -5427,15 +5434,15 @@ local.tee $0 i32.load16_u else - local.get $3 + local.get $2 i32.const 43 i32.eq if (result i32) i32.const 0 - local.get $2 + local.get $4 i32.const 1 i32.sub - local.tee $2 + local.tee $4 i32.eqz br_if $~lib/util/string/parseExp|inlined.0 drop @@ -5445,20 +5452,20 @@ local.tee $0 i32.load16_u else - local.get $3 + local.get $2 end end - local.set $3 + local.set $2 loop $while-continue|4 - local.get $3 + local.get $2 i32.const 48 i32.eq if i32.const 0 - local.get $2 + local.get $4 i32.const 1 i32.sub - local.tee $2 + local.tee $4 i32.eqz br_if $~lib/util/string/parseExp|inlined.0 drop @@ -5467,40 +5474,40 @@ i32.add local.tee $0 i32.load16_u - local.set $3 + local.set $2 br $while-continue|4 end end - local.get $3 + local.get $2 i32.const 48 i32.sub - local.set $3 + local.set $2 loop $for-loop|5 - local.get $3 + local.get $2 i32.const 10 i32.lt_u i32.const 0 - local.get $2 + local.get $4 select if local.get $1 i32.const 3200 i32.mul - local.get $4 + local.get $3 i32.const 3200 i32.ge_s br_if $~lib/util/string/parseExp|inlined.0 drop + local.get $2 local.get $3 - local.get $4 i32.const 10 i32.mul i32.add - local.set $4 - local.get $2 + local.set $3 + local.get $4 i32.const 1 i32.sub - local.set $2 + local.set $4 local.get $0 i32.const 2 i32.add @@ -5508,12 +5515,12 @@ i32.load16_u i32.const 48 i32.sub - local.set $3 + local.set $2 br $for-loop|5 end end local.get $1 - local.get $4 + local.get $3 i32.mul end i32.add @@ -5531,7 +5538,7 @@ drop local.get $6 f64.convert_i64_u - local.tee $11 + local.tee $9 local.get $0 i32.eqz br_if $~lib/util/string/scientific|inlined.0 @@ -5544,7 +5551,7 @@ i32.gt_s i32.and if - local.get $11 + local.get $9 local.get $0 i32.const 3 i32.shl @@ -5552,7 +5559,7 @@ i32.add f64.load f64.mul - local.set $11 + local.set $9 i32.const 22 local.set $0 end @@ -5564,9 +5571,9 @@ local.get $0 i32.const 31 i32.shr_s - local.tee $5 + local.tee $1 i32.add - local.get $5 + local.get $1 i32.xor i32.const 22 i32.le_s @@ -5578,7 +5585,7 @@ i32.const 0 i32.gt_s if - local.get $11 + local.get $9 local.get $0 i32.const 3 i32.shl @@ -5588,7 +5595,7 @@ f64.mul br $~lib/util/string/scientific|inlined.0 end - local.get $11 + local.get $9 i32.const 0 local.get $0 i32.sub @@ -5628,7 +5635,7 @@ i64.div_u local.tee $6 i64.clz - local.tee $9 + local.tee $12 i64.const 18 i64.sub i64.shl @@ -5638,12 +5645,12 @@ f64.nearest i64.trunc_f64_u local.get $6 - local.get $9 + local.get $12 i64.shl i64.add local.set $6 local.get $8 - local.get $9 + local.get $12 i64.sub local.set $8 local.get $1 @@ -5659,32 +5666,32 @@ i32.sub call $~lib/math/ipow32 i64.extend_i32_s - local.tee $10 + local.tee $13 i64.div_u - local.tee $14 + local.tee $12 i64.clz - local.set $9 + local.set $14 local.get $6 - local.get $10 + local.get $13 i64.rem_u f64.convert_i64_u i64.reinterpret_f64 - local.get $9 + local.get $14 i64.const 52 i64.shl i64.add f64.reinterpret_i64 - local.get $10 + local.get $13 f64.convert_i64_u f64.div i64.trunc_f64_u + local.get $12 local.get $14 - local.get $9 i64.shl i64.add f64.convert_i64_u local.get $8 - local.get $9 + local.get $14 i64.sub i32.wrap_i64 call $~lib/math/NativeMath.scalbn @@ -5696,13 +5703,13 @@ i64.shr_u local.set $6 local.get $0 - local.tee $4 + local.tee $3 i64.extend_i32_s local.get $8 i64.add global.set $~lib/util/string/__fixmulShift loop $for-loop|7 - local.get $4 + local.get $3 i32.const 13 i32.ge_s if @@ -5721,88 +5728,88 @@ i64.const 32 i64.shr_u i64.add - local.tee $9 + local.tee $8 i64.const 32 i64.shr_u i32.wrap_i64 i32.clz i64.extend_i32_u - local.tee $8 + local.tee $12 i64.sub - local.tee $10 + local.tee $13 global.get $~lib/util/string/__fixmulShift i64.add global.set $~lib/util/string/__fixmulShift local.get $6 - local.get $8 + local.get $12 i64.shl i64.const 31 i64.shr_u i64.const 1 i64.and - local.get $9 local.get $8 + local.get $12 i64.shl local.get $6 i64.const 4294967295 i64.and - local.get $10 + local.get $13 i64.shr_u i64.or i64.add local.set $6 - local.get $4 + local.get $3 i32.const 13 i32.sub - local.set $4 + local.set $3 br $for-loop|7 end end - local.get $4 + local.get $3 call $~lib/math/ipow32 i64.extend_i32_u - local.tee $9 + local.tee $8 local.get $6 i64.const 4294967295 i64.and i64.mul - local.set $8 + local.set $12 i64.const 32 - local.get $9 + local.get $8 local.get $6 i64.const 32 i64.shr_u i64.mul - local.get $8 + local.get $12 i64.const 32 i64.shr_u i64.add - local.tee $9 + local.tee $6 i64.const 32 i64.shr_u i32.wrap_i64 i32.clz i64.extend_i32_u - local.tee $6 + local.tee $8 i64.sub - local.tee $10 + local.tee $13 global.get $~lib/util/string/__fixmulShift i64.add global.set $~lib/util/string/__fixmulShift + local.get $12 local.get $8 - local.get $6 i64.shl i64.const 31 i64.shr_u i64.const 1 i64.and - local.get $9 local.get $6 - i64.shl local.get $8 + i64.shl + local.get $12 i64.const 4294967295 i64.and - local.get $10 + local.get $13 i64.shr_u i64.or i64.add @@ -5813,7 +5820,7 @@ end end end - local.get $12 + local.get $10 f64.copysign return end @@ -5914,14 +5921,14 @@ local.get $2 local.get $3 i32.gt_s - local.tee $1 + local.tee $0 select call $~lib/util/string/compareImpl - local.tee $0 + local.tee $1 i32.const 0 i32.lt_s - local.get $1 local.get $0 + local.get $1 select ) (func $~lib/rt/itcms/__renew (param $0 i32) (param $1 i32) (result i32) @@ -5930,7 +5937,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $2 + local.tee $3 i32.load i32.const -4 i32.and @@ -5939,28 +5946,28 @@ local.get $1 i32.ge_u if - local.get $2 + local.get $3 local.get $1 i32.store offset=16 local.get $0 return end local.get $1 - local.get $2 + local.get $3 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.load offset=16 - local.tee $2 + local.tee $0 + local.get $0 local.get $1 - local.get $2 - i32.lt_u + i32.gt_u select call $~lib/memory/memory.copy - local.get $3 + local.get $2 ) (func $~lib/array/Array<~lib/string/String>#push (param $0 i32) (param $1 i32) (local $2 i32) @@ -5971,19 +5978,19 @@ (local $7 i32) local.get $0 i32.load offset=12 - local.tee $5 + local.tee $3 i32.const 1 i32.add + local.tee $4 local.tee $6 - local.tee $2 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $2 i32.const 2 i32.shr_u i32.gt_u if - local.get $2 + local.get $6 i32.const 268435455 i32.gt_u if @@ -5994,66 +6001,66 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $0 i32.load - local.tee $7 - local.get $4 + local.tee $5 + local.get $2 i32.const 1 i32.shl - local.tee $3 + local.tee $7 i32.const 1073741820 - local.get $3 + local.get $7 i32.const 1073741820 i32.lt_u select - local.tee $3 - local.get $2 + local.tee $7 + local.get $6 i32.const 8 - local.get $2 + local.get $6 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $2 - local.get $2 - local.get $3 + local.tee $6 + local.get $6 + local.get $7 i32.lt_u select - local.tee $3 + local.tee $6 call $~lib/rt/itcms/__renew - local.tee $2 + local.tee $7 i32.add - local.get $3 - local.get $4 + local.get $6 + local.get $2 i32.sub call $~lib/memory/memory.fill - local.get $2 + local.get $5 local.get $7 i32.ne if local.get $0 - local.get $2 + local.get $7 i32.store local.get $0 - local.get $2 + local.get $7 i32.store offset=4 - local.get $2 + local.get $7 if local.get $0 - local.get $2 + local.get $7 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end end local.get $0 - local.get $3 + local.get $6 i32.store offset=8 end local.get $0 i32.load offset=4 - local.get $5 + local.get $3 i32.const 2 i32.shl i32.add @@ -6067,7 +6074,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 + local.get $4 i32.store offset=12 ) (func $~lib/util/number/utoa32_dec_lut (param $0 i32) (param $1 i32) (param $2 i32) @@ -6179,7 +6186,7 @@ (local $5 i64) local.get $3 i64.extend_i32_s - local.set $5 + local.set $4 local.get $3 i32.const 1 i32.sub @@ -6196,11 +6203,11 @@ local.get $0 i32.add local.get $1 - local.get $5 + local.get $4 local.get $1 - local.get $5 + local.get $4 i64.div_u - local.tee $4 + local.tee $1 i64.mul i64.sub i32.wrap_i64 @@ -6210,8 +6217,7 @@ i32.add i32.load16_u i32.store16 - local.get $4 - local.tee $1 + local.get $1 i64.const 0 i64.ne br_if $do-loop|1 @@ -6222,11 +6228,11 @@ i32.const 7 i32.and i64.extend_i32_s - local.set $4 - local.get $5 + local.set $5 + local.get $4 i64.const 1 i64.sub - local.set $5 + local.set $4 loop $do-loop|0 local.get $2 i32.const 1 @@ -6237,7 +6243,7 @@ local.get $0 i32.add local.get $1 - local.get $5 + local.get $4 i64.and i32.wrap_i64 i32.const 1 @@ -6247,7 +6253,7 @@ i32.load16_u i32.store16 local.get $1 - local.get $4 + local.get $5 i64.shr_u local.tee $1 i64.const 0 @@ -6267,7 +6273,7 @@ local.get $2 i32.const 4 i32.sub - local.tee $2 + local.tee $4 i32.const 1 i32.shl local.get $0 @@ -6284,7 +6290,7 @@ local.tee $3 i32.const 10000 i32.rem_u - local.tee $4 + local.tee $2 i32.const 100 i32.div_u i32.const 2 @@ -6292,7 +6298,7 @@ i32.const 15804 i32.add i64.load32_u - local.get $4 + local.get $2 i32.const 100 i32.rem_u i32.const 2 @@ -6304,7 +6310,7 @@ i64.shl i64.or i64.store - local.get $2 + local.get $4 i32.const 4 i32.sub local.tee $2 @@ -6601,7 +6607,7 @@ i32.shl i32.const 22862 i32.add - local.tee $8 + local.tee $2 i32.load16_u local.set $5 loop $while-continue|3 @@ -6644,7 +6650,7 @@ br $while-continue|3 end end - local.get $8 + local.get $2 local.get $5 i32.store16 local.get $4 @@ -6724,7 +6730,7 @@ i32.shl i32.const 22862 i32.add - local.tee $8 + local.tee $2 i32.load16_u local.set $5 loop $while-continue|6 @@ -6767,7 +6773,7 @@ br $while-continue|6 end end - local.get $8 + local.get $2 local.get $5 i32.store16 local.get $4 @@ -6776,7 +6782,6 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) local.get $2 i32.eqz if @@ -6795,17 +6800,17 @@ local.get $1 local.get $2 i32.add - local.tee $4 + local.tee $3 i32.const 21 i32.le_s local.get $1 - local.get $4 + local.get $3 i32.le_s i32.and if (result i32) loop $for-loop|0 local.get $1 - local.get $4 + local.get $3 i32.lt_s if local.get $1 @@ -6822,26 +6827,26 @@ br $for-loop|0 end end - local.get $4 + local.get $3 i32.const 1 i32.shl local.get $0 i32.add i32.const 3145774 i32.store - local.get $4 + local.get $3 i32.const 2 i32.add else - local.get $4 + local.get $3 i32.const 21 i32.le_s - local.get $4 + local.get $3 i32.const 0 i32.gt_s i32.and if (result i32) - local.get $4 + local.get $3 i32.const 1 i32.shl local.get $0 @@ -6863,18 +6868,18 @@ i32.const 1 i32.add else - local.get $4 + local.get $3 i32.const 0 i32.le_s - local.get $4 + local.get $3 i32.const -6 i32.gt_s i32.and if (result i32) i32.const 2 - local.get $4 + local.get $3 i32.sub - local.tee $5 + local.tee $3 i32.const 1 i32.shl local.get $0 @@ -6891,7 +6896,7 @@ local.set $2 loop $for-loop|1 local.get $2 - local.get $5 + local.get $3 i32.lt_s if local.get $2 @@ -6909,7 +6914,7 @@ end end local.get $1 - local.get $5 + local.get $3 i32.add else local.get $1 @@ -6920,16 +6925,16 @@ i32.const 101 i32.store16 offset=2 local.get $0 - local.tee $3 + local.tee $1 i32.const 4 i32.add - local.get $4 + local.get $3 i32.const 1 i32.sub local.tee $0 i32.const 0 i32.lt_s - local.tee $2 + local.tee $3 if i32.const 0 local.get $0 @@ -6937,63 +6942,62 @@ local.set $0 end local.get $0 - local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $4 local.get $0 - local.get $1 + local.get $4 i32.const 1 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $3 + local.get $1 i32.const 45 i32.const 43 - local.get $2 + local.get $3 select i32.store16 offset=4 local.get $0 @@ -7019,20 +7023,19 @@ local.get $0 local.get $2 i32.add - local.tee $0 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $0 - local.tee $3 + local.get $2 i32.const 4 i32.add - local.get $4 + local.get $3 i32.const 1 i32.sub local.tee $0 i32.const 0 i32.lt_s - local.tee $5 + local.tee $3 if i32.const 0 local.get $0 @@ -7040,63 +7043,62 @@ local.set $0 end local.get $0 - local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 + local.set $5 local.get $0 - local.get $2 + local.get $5 i32.const 1 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $3 + local.get $2 i32.const 45 i32.const 43 - local.get $5 + local.get $3 select i32.store16 offset=4 local.get $0 @@ -7113,22 +7115,21 @@ (local $1 i64) (local $2 i32) (local $3 i64) - (local $4 i32) - (local $5 i32) + (local $4 i64) + (local $5 i64) (local $6 i64) - (local $7 i64) - (local $8 i64) + (local $7 i32) + (local $8 i32) (local $9 i32) (local $10 i64) (local $11 i64) (local $12 i64) (local $13 i64) (local $14 i64) - (local $15 i64) local.get $0 f64.const 0 f64.lt - local.tee $5 + local.tee $2 if (result f64) i32.const 22864 i32.const 45 @@ -7145,19 +7146,19 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $2 + local.tee $7 i32.const 1 - local.get $2 + local.get $7 select i32.const 1075 i32.sub - local.tee $9 + local.tee $8 i32.const 1 i32.sub local.get $1 i64.const 4503599627370495 i64.and - local.get $2 + local.get $7 i32.const 0 i32.ne i64.extend_i32_u @@ -7172,11 +7173,11 @@ local.tee $3 i64.clz i32.wrap_i64 - local.tee $4 + local.tee $7 i32.sub - local.set $2 + local.set $9 local.get $3 - local.get $4 + local.get $7 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -7186,25 +7187,25 @@ i64.eq i32.const 1 i32.add - local.tee $4 + local.tee $7 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $9 - local.get $4 + local.get $8 + local.get $7 i32.sub - local.get $2 + local.get $9 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $2 + local.get $9 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $9 + local.tee $7 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -7213,9 +7214,9 @@ f64.add local.tee $0 i32.trunc_f64_s - local.tee $2 + local.tee $8 local.get $0 - local.get $2 + local.get $8 f64.convert_i32_s f64.ne i32.add @@ -7223,18 +7224,18 @@ i32.shr_s i32.const 1 i32.add - local.tee $2 + local.tee $8 i32.const 3 i32.shl - local.tee $4 + local.tee $9 i32.sub global.set $~lib/util/number/_K - local.get $4 + local.get $9 i32.const 22920 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $2 + local.get $8 i32.const 1 i32.shl i32.const 23616 @@ -7248,81 +7249,81 @@ local.tee $1 i64.const 4294967295 i64.and - local.set $3 + local.set $10 local.get $1 i64.const 32 i64.shr_u - local.tee $10 + local.tee $11 global.get $~lib/util/number/_frc_pow - local.tee $13 + local.tee $4 i64.const 4294967295 i64.and + local.tee $12 local.tee $1 - local.tee $6 i64.mul - local.get $3 - local.get $6 + local.get $1 + local.get $10 i64.mul i64.const 32 i64.shr_u i64.add - local.set $6 + local.set $13 global.get $~lib/util/number/_frc_plus - local.tee $7 + local.tee $3 i64.const 4294967295 i64.and - local.set $11 - local.get $7 + local.set $1 + local.get $3 i64.const 32 i64.shr_u - local.tee $14 - local.get $1 + local.tee $5 + local.get $12 i64.mul local.get $1 - local.get $11 + local.get $12 i64.mul i64.const 32 i64.shr_u i64.add - local.set $7 + local.set $14 global.get $~lib/util/number/_frc_minus - local.tee $8 + local.tee $6 i64.const 4294967295 i64.and - local.set $12 - local.get $8 + local.set $3 + local.get $6 i64.const 32 i64.shr_u - local.tee $15 - local.get $1 + local.tee $6 + local.get $12 i64.mul - local.get $1 + local.get $3 local.get $12 i64.mul i64.const 32 i64.shr_u i64.add - local.set $8 - local.get $5 + local.set $12 + local.get $2 i32.const 1 i32.shl i32.const 22864 i32.add - local.get $10 - local.get $13 + local.get $11 + local.get $4 i64.const 32 i64.shr_u - local.tee $1 - local.tee $10 + local.tee $4 + local.tee $11 i64.mul - local.get $6 + local.get $13 i64.const 32 i64.shr_u i64.add - local.get $3 local.get $10 + local.get $11 i64.mul - local.get $6 + local.get $13 i64.const 4294967295 i64.and i64.add @@ -7331,17 +7332,17 @@ i64.const 32 i64.shr_u i64.add - local.get $1 - local.get $14 + local.get $4 + local.get $5 i64.mul - local.get $7 + local.get $14 i64.const 32 i64.shr_u i64.add local.get $1 - local.get $11 + local.get $4 i64.mul - local.get $7 + local.get $14 i64.const 4294967295 i64.and i64.add @@ -7352,24 +7353,24 @@ i64.add i64.const 1 i64.sub - local.tee $3 + local.tee $1 global.get $~lib/util/number/_exp_pow - local.get $9 + local.get $7 i32.add i32.const -64 i32.sub - local.get $3 local.get $1 - local.get $15 + local.get $4 + local.get $6 i64.mul - local.get $8 + local.get $12 i64.const 32 i64.shr_u i64.add - local.get $1 - local.get $12 + local.get $3 + local.get $4 i64.mul - local.get $8 + local.get $12 i64.const 4294967295 i64.and i64.add @@ -7381,13 +7382,13 @@ i64.const 1 i64.add i64.sub - local.get $5 + local.get $2 call $~lib/util/number/genDigits - local.get $5 + local.get $2 i32.sub global.get $~lib/util/number/_K call $~lib/util/number/prettify - local.get $5 + local.get $2 i32.add ) (func $std/string/getString (result i32) @@ -7435,38 +7436,37 @@ return end local.get $0 - local.tee $1 i32.load offset=4 - local.tee $2 + local.tee $1 local.get $0 i32.load offset=12 i32.const 2 i32.shl i32.add - local.set $3 + local.set $2 loop $while-continue|0 + local.get $1 local.get $2 - local.get $3 i32.lt_u if - local.get $2 + local.get $1 i32.load - local.tee $0 + local.tee $3 if - local.get $0 + local.get $3 if - local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $2 + local.get $1 i32.const 4 i32.add - local.set $2 + local.set $1 br $while-continue|0 end end - local.get $1 + local.get $0 i32.load local.tee $0 if @@ -7505,13 +7505,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $5 i64.const 0 i64.store - local.get $3 + local.get $5 i64.const 0 i64.store offset=8 - local.get $3 + local.get $5 i64.const 0 i64.store offset=16 block $folding-inner3 @@ -7559,23 +7559,23 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.set $3 + local.set $8 i32.const 2147483647 local.get $2 local.get $2 i32.const 0 i32.lt_s select - local.set $7 + local.set $5 local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $8 + local.tee $6 if - local.get $3 + local.get $8 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -7592,17 +7592,17 @@ br $folding-inner1 end else - local.get $3 + local.get $8 i32.eqz br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.get $3 - local.get $7 - local.get $3 - local.get $7 - i32.lt_s + local.get $8 + local.get $5 + local.get $5 + local.get $8 + i32.gt_s select - local.tee $4 + local.tee $1 i32.const 4 i32.const 0 call $~lib/rt/__newArray @@ -7612,42 +7612,42 @@ i32.load offset=4 local.set $3 loop $for-loop|0 + local.get $1 local.get $4 - local.get $5 i32.gt_s if global.get $~lib/memory/__stack_pointer i32.const 2 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $5 i32.store offset=8 - local.get $1 local.get $5 + local.get $4 i32.const 1 i32.shl local.get $0 i32.add i32.load16_u i32.store16 - local.get $5 + local.get $4 i32.const 2 i32.shl local.get $3 i32.add - local.get $1 + local.get $5 i32.store - local.get $1 + local.get $5 if local.get $2 - local.get $1 + local.get $5 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 + local.get $4 i32.const 1 i32.add - local.set $5 + local.set $4 br $for-loop|0 end end @@ -7663,38 +7663,38 @@ loop $while-continue|1 local.get $0 local.get $1 - local.get $4 + local.get $3 call $~lib/string/String#indexOf - local.tee $5 + local.tee $9 i32.const -1 i32.xor if - local.get $5 - local.get $4 + local.get $9 + local.get $3 i32.sub - local.tee $6 + local.tee $4 i32.const 0 i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.const 1 i32.shl - local.tee $9 + local.tee $4 i32.const 1 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $10 i32.store offset=16 - local.get $6 - local.get $4 + local.get $10 + local.get $3 i32.const 1 i32.shl local.get $0 i32.add - local.get $9 + local.get $4 call $~lib/memory/memory.copy local.get $2 - local.get $6 + local.get $10 call $~lib/array/Array<~lib/string/String>#push else global.get $~lib/memory/__stack_pointer @@ -7704,21 +7704,21 @@ i32.const 1712 call $~lib/array/Array<~lib/string/String>#push end - local.get $10 + local.get $7 i32.const 1 i32.add - local.tee $10 - local.get $7 + local.tee $7 + local.get $5 i32.eq br_if $folding-inner2 - local.get $5 - local.get $8 + local.get $6 + local.get $9 i32.add - local.set $4 + local.set $3 br $while-continue|1 end end - local.get $4 + local.get $3 i32.eqz if local.get $2 @@ -7726,8 +7726,8 @@ call $~lib/array/Array<~lib/string/String>#push br $folding-inner2 end + local.get $8 local.get $3 - local.get $4 i32.sub local.tee $1 i32.const 0 @@ -7737,21 +7737,21 @@ local.get $1 i32.const 1 i32.shl - local.tee $3 + local.tee $1 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $4 i32.store offset=4 - local.get $1 local.get $4 + local.get $3 i32.const 1 i32.shl local.get $0 i32.add - local.get $3 + local.get $1 call $~lib/memory/memory.copy local.get $2 - local.get $1 + local.get $4 call $~lib/array/Array<~lib/string/String>#push else global.get $~lib/memory/__stack_pointer @@ -7791,11 +7791,11 @@ ) (func $start:std/string (local $0 i32) - (local $1 i32) - (local $2 f64) + (local $1 f64) + (local $2 f32) (local $3 i32) (local $4 i32) - (local $5 f32) + (local $5 i32) global.get $~lib/memory/__stack_pointer i32.const 44 i32.sub @@ -7946,25 +7946,25 @@ end global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $1 + local.tee $3 i32.store i32.const -1 local.set $0 block $__inlined_func$~lib/string/String#codePointAt - local.get $1 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.const 1 i32.le_u br_if $__inlined_func$~lib/string/String#codePointAt - local.get $3 + local.get $4 i32.const 2 i32.eq - local.get $1 + local.get $3 i32.load16_u offset=2 local.tee $0 i32.const 64512 @@ -7973,15 +7973,15 @@ i32.ne i32.or br_if $__inlined_func$~lib/string/String#codePointAt - local.get $1 + local.get $3 i32.load16_u offset=4 - local.tee $1 + local.tee $3 i32.const 64512 i32.and i32.const 56320 i32.ne br_if $__inlined_func$~lib/string/String#codePointAt - local.get $1 + local.get $3 local.get $0 i32.const 10 i32.shl @@ -8046,17 +8046,17 @@ i32.store global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $1 + local.tee $3 i32.store offset=8 - local.get $1 + local.get $3 i32.const 15 call $~lib/string/String#charAt - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=4 local.get $0 - local.get $1 + local.get $3 call $~lib/string/String.__eq i32.eqz if @@ -8080,14 +8080,14 @@ i32.store global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $1 + local.tee $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $3 + local.tee $4 i32.store offset=12 - local.get $1 local.get $3 + local.get $4 i32.const 20 i32.sub i32.load offset=16 @@ -8096,12 +8096,12 @@ i32.const 1 i32.sub call $~lib/string/String#charAt - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=4 local.get $0 - local.get $1 + local.get $3 call $~lib/string/String.__eq i32.eqz if @@ -8113,16 +8113,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/string/str local.tee $0 + global.get $std/string/str + local.tee $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $3 i32.store offset=12 - local.get $0 + local.get $3 i32.const 0 - local.get $0 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -8202,10 +8202,10 @@ call $~lib/string/String.fromCharCode@varargs local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 1776 i32.store offset=4 local.get $0 @@ -8226,10 +8226,10 @@ call $~lib/string/String.fromCharCode@varargs local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 1840 i32.store offset=4 local.get $0 @@ -8250,10 +8250,10 @@ call $~lib/string/String.fromCharCode@varargs local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 1872 i32.store offset=4 local.get $0 @@ -8274,10 +8274,10 @@ call $~lib/string/String.fromCharCode@varargs local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 1872 i32.store offset=4 local.get $0 @@ -8297,10 +8297,10 @@ call $~lib/string/String.fromCharCode local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 1904 i32.store offset=4 local.get $0 @@ -8406,10 +8406,10 @@ call $~lib/string/String.fromCodePoint local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 1776 i32.store offset=4 local.get $0 @@ -8428,10 +8428,10 @@ call $~lib/string/String.fromCodePoint local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 1872 i32.store offset=4 local.get $0 @@ -8450,10 +8450,10 @@ call $~lib/string/String.fromCodePoint local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 2144 i32.store offset=4 local.get $0 @@ -8469,39 +8469,39 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/string/str local.tee $0 + global.get $std/string/str + local.tee $3 i32.store - local.get $1 + local.get $0 i32.const 2176 i32.store offset=4 i32.const 0 - local.get $0 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 - local.get $3 + local.tee $0 + local.get $0 select local.tee $4 i32.const 2172 i32.load i32.const 1 i32.shr_u - local.tee $1 + local.tee $5 i32.add - local.get $3 + local.get $0 i32.gt_s if (result i32) i32.const 1 else - local.get $0 + local.get $3 local.get $4 i32.const 2176 - local.get $1 + local.get $5 call $~lib/util/string/compareImpl end if @@ -8513,22 +8513,22 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/string/str local.tee $0 + global.get $std/string/str + local.tee $3 i32.store - local.get $1 + local.get $0 i32.const 2208 i32.store offset=4 i32.const 536870910 - local.get $0 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.const 536870910 i32.gt_u select @@ -8536,18 +8536,18 @@ i32.load i32.const 1 i32.shr_u - local.tee $1 + local.tee $0 i32.sub - local.tee $3 + local.tee $4 i32.const 0 i32.lt_s if (result i32) i32.const 1 else - local.get $0 local.get $3 + local.get $4 i32.const 2208 - local.get $1 + local.get $0 call $~lib/util/string/compareImpl end if @@ -8561,12 +8561,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2240 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2240 i32.const 0 call $~lib/string/String#indexOf @@ -8583,12 +8583,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store offset=8 local.get $0 i32.const 2272 i32.store offset=16 - local.get $1 + local.get $3 i32.const 0 i32.const 2272 call $~lib/string/String#padStart @@ -8598,10 +8598,10 @@ i32.store global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $1 + local.tee $3 i32.store offset=4 local.get $0 - local.get $1 + local.get $3 call $~lib/string/String.__eq i32.eqz if @@ -8615,12 +8615,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store offset=8 local.get $0 i32.const 2272 i32.store offset=16 - local.get $1 + local.get $3 i32.const 15 i32.const 2272 call $~lib/string/String#padStart @@ -8630,10 +8630,10 @@ i32.store global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $1 + local.tee $3 i32.store offset=4 local.get $0 - local.get $1 + local.get $3 call $~lib/string/String.__eq i32.eqz if @@ -8827,12 +8827,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store offset=8 local.get $0 i32.const 2272 i32.store offset=16 - local.get $1 + local.get $3 i32.const 0 i32.const 2272 call $~lib/string/String#padEnd @@ -8842,10 +8842,10 @@ i32.store global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $1 + local.tee $3 i32.store offset=4 local.get $0 - local.get $1 + local.get $3 call $~lib/string/String.__eq i32.eqz if @@ -8859,12 +8859,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store offset=8 local.get $0 i32.const 2272 i32.store offset=16 - local.get $1 + local.get $3 i32.const 15 i32.const 2272 call $~lib/string/String#padEnd @@ -8874,10 +8874,10 @@ i32.store global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $1 + local.tee $3 i32.store offset=4 local.get $0 - local.get $1 + local.get $3 call $~lib/string/String.__eq i32.eqz if @@ -9128,15 +9128,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/string/str local.tee $0 + global.get $std/string/str + local.tee $3 i32.store - local.get $1 local.get $0 + local.get $3 i32.store offset=4 - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 0 call $~lib/string/String#indexOf if @@ -9150,12 +9150,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 1712 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1712 i32.const 0 call $~lib/string/String#indexOf @@ -9170,12 +9170,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2624 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2624 i32.const 0 call $~lib/string/String#indexOf @@ -9192,12 +9192,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2656 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2656 i32.const 0 call $~lib/string/String#indexOf @@ -9214,12 +9214,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2624 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2624 i32.const 2 call $~lib/string/String#indexOf @@ -9236,12 +9236,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2624 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2624 i32.const 3 call $~lib/string/String#indexOf @@ -9258,12 +9258,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2688 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2688 i32.const -1 call $~lib/string/String#indexOf @@ -9320,21 +9320,21 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 1712 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1712 i32.const 2147483647 call $~lib/string/String#lastIndexOf local.set $0 global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -9353,12 +9353,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2624 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2624 i32.const 2147483647 call $~lib/string/String#lastIndexOf @@ -9375,12 +9375,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2656 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2656 i32.const 2147483647 call $~lib/string/String#lastIndexOf @@ -9397,12 +9397,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2720 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2720 i32.const 2147483647 call $~lib/string/String#lastIndexOf @@ -9419,12 +9419,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2624 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2624 i32.const 2 call $~lib/string/String#lastIndexOf @@ -9441,12 +9441,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2624 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2624 i32.const 3 call $~lib/string/String#lastIndexOf @@ -9463,12 +9463,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2688 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2688 i32.const -1 call $~lib/string/String#lastIndexOf @@ -9485,12 +9485,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2752 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2752 i32.const 0 call $~lib/string/String#lastIndexOf @@ -9507,12 +9507,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2176 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2176 i32.const 0 call $~lib/string/String#lastIndexOf @@ -10264,14 +10264,14 @@ i32.const 3664 i32.const 0 call $~lib/util/string/strtol - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 3712 i32.store i32.const 3712 i32.const 16 call $~lib/util/string/strtol - local.get $2 + local.get $1 f64.ne if i32.const 0 @@ -10415,8 +10415,8 @@ i32.const 1712 i32.const 0 call $~lib/util/string/strtol - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -10432,8 +10432,8 @@ i32.const 4112 i32.const 0 call $~lib/util/string/strtol - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -10449,8 +10449,8 @@ i32.const 4144 i32.const 0 call $~lib/util/string/strtol - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -10466,8 +10466,8 @@ i32.const 2400 i32.const 37 call $~lib/util/string/strtol - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -10483,8 +10483,8 @@ i32.const 4176 i32.const 0 call $~lib/util/string/strtol - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -10500,8 +10500,8 @@ i32.const 4208 i32.const 0 call $~lib/util/string/strtol - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -10518,8 +10518,8 @@ i32.const 0 call $~lib/util/string/strtol f32.demote_f64 - local.tee $5 - local.get $5 + local.tee $2 + local.get $2 f32.eq if i32.const 0 @@ -10535,8 +10535,8 @@ i32.const 4208 i32.const 0 call $~lib/util/string/strtol - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -10864,8 +10864,8 @@ i32.store i32.const 1712 call $~lib/util/string/strtod - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11690,8 +11690,8 @@ i32.store i32.const 4144 call $~lib/util/string/strtod - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11706,8 +11706,8 @@ i32.store i32.const 4112 call $~lib/util/string/strtod - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11722,8 +11722,8 @@ i32.store i32.const 7056 call $~lib/util/string/strtod - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11738,8 +11738,8 @@ i32.store i32.const 7088 call $~lib/util/string/strtod - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11754,8 +11754,8 @@ i32.store i32.const 7120 call $~lib/util/string/strtod - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11770,8 +11770,8 @@ i32.store i32.const 7152 call $~lib/util/string/strtod - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11786,8 +11786,8 @@ i32.store i32.const 7184 call $~lib/util/string/strtod - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11802,8 +11802,8 @@ i32.store i32.const 7216 call $~lib/util/string/strtod - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11818,8 +11818,8 @@ i32.store i32.const 7248 call $~lib/util/string/strtod - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11834,8 +11834,8 @@ i32.store i32.const 7280 call $~lib/util/string/strtod - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11850,8 +11850,8 @@ i32.store i32.const 7312 call $~lib/util/string/strtod - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11866,8 +11866,8 @@ i32.store i32.const 7344 call $~lib/util/string/strtod - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11882,8 +11882,8 @@ i32.store i32.const 7376 call $~lib/util/string/strtod - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11898,8 +11898,8 @@ i32.store i32.const 7408 call $~lib/util/string/strtod - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11914,8 +11914,8 @@ i32.store i32.const 7440 call $~lib/util/string/strtod - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11930,8 +11930,8 @@ i32.store i32.const 7472 call $~lib/util/string/strtod - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -12321,8 +12321,8 @@ i32.store i32.const 8688 call $~lib/util/string/strtod - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -12337,8 +12337,8 @@ i32.store i32.const 8720 call $~lib/util/string/strtod - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -12353,8 +12353,8 @@ i32.store i32.const 8768 call $~lib/util/string/strtod - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -12830,8 +12830,8 @@ i32.store i32.const 12880 call $~lib/util/string/strtod - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -13762,28 +13762,28 @@ global.get $~lib/memory/__stack_pointer i32.const 65377 call $~lib/string/String.fromCodePoint - local.tee $3 + local.tee $0 i32.store offset=36 global.get $~lib/memory/__stack_pointer i32.const 55296 call $~lib/string/String.fromCodePoint - local.set $0 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $4 i32.store i32.const 56322 call $~lib/string/String.fromCodePoint - local.set $1 + local.set $5 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $5 i32.store offset=4 - local.get $0 - local.get $1 + local.get $4 + local.get $5 call $~lib/string/String#concat - local.tee $0 + local.tee $3 i32.store offset=40 - local.get $3 local.get $0 + local.get $3 call $~lib/string/String.__gt i32.eqz if @@ -16041,10 +16041,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 1712 i32.store offset=4 local.get $0 @@ -16110,10 +16110,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 1712 i32.store offset=4 local.get $0 @@ -16155,10 +16155,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 15424 i32.store offset=4 local.get $0 @@ -16198,15 +16198,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 - i32.store + local.tee $4 local.get $3 + i32.store + local.get $4 i32.const 1808 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1808 call $~lib/string/String.__eq else @@ -16216,15 +16216,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 - i32.store + local.tee $4 local.get $3 + i32.store + local.get $4 i32.const 12944 i32.store offset=4 - local.get $1 + local.get $3 i32.const 12944 call $~lib/string/String.__eq else @@ -16236,10 +16236,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 14048 i32.store offset=4 local.get $0 @@ -16279,15 +16279,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 - i32.store + local.tee $4 local.get $3 + i32.store + local.get $4 i32.const 1808 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1808 call $~lib/string/String.__eq else @@ -16297,15 +16297,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 - i32.store + local.tee $4 local.get $3 + i32.store + local.get $4 i32.const 12944 i32.store offset=4 - local.get $1 + local.get $3 i32.const 12944 call $~lib/string/String.__eq else @@ -16317,10 +16317,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 14048 i32.store offset=4 local.get $0 @@ -16360,15 +16360,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 - i32.store + local.tee $4 local.get $3 + i32.store + local.get $4 i32.const 1808 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1808 call $~lib/string/String.__eq else @@ -16378,15 +16378,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 - i32.store + local.tee $4 local.get $3 + i32.store + local.get $4 i32.const 12944 i32.store offset=4 - local.get $1 + local.get $3 i32.const 12944 call $~lib/string/String.__eq else @@ -16396,15 +16396,15 @@ local.get $0 i32.const 2 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 - i32.store + local.tee $4 local.get $3 + i32.store + local.get $4 i32.const 1712 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1712 call $~lib/string/String.__eq else @@ -16416,10 +16416,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 14048 i32.store offset=4 local.get $0 @@ -16459,15 +16459,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 - i32.store + local.tee $4 local.get $3 + i32.store + local.get $4 i32.const 1712 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1712 call $~lib/string/String.__eq else @@ -16477,15 +16477,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 - i32.store + local.tee $4 local.get $3 + i32.store + local.get $4 i32.const 1808 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1808 call $~lib/string/String.__eq else @@ -16495,15 +16495,15 @@ local.get $0 i32.const 2 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 - i32.store + local.tee $4 local.get $3 + i32.store + local.get $4 i32.const 12944 i32.store offset=4 - local.get $1 + local.get $3 i32.const 12944 call $~lib/string/String.__eq else @@ -16515,10 +16515,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 14048 i32.store offset=4 local.get $0 @@ -16558,15 +16558,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 - i32.store + local.tee $4 local.get $3 + i32.store + local.get $4 i32.const 1808 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1808 call $~lib/string/String.__eq else @@ -16576,15 +16576,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 - i32.store + local.tee $4 local.get $3 + i32.store + local.get $4 i32.const 12944 i32.store offset=4 - local.get $1 + local.get $3 i32.const 12944 call $~lib/string/String.__eq else @@ -16594,15 +16594,15 @@ local.get $0 i32.const 2 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 - i32.store + local.tee $4 local.get $3 + i32.store + local.get $4 i32.const 14048 i32.store offset=4 - local.get $1 + local.get $3 i32.const 14048 call $~lib/string/String.__eq else @@ -16614,10 +16614,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 1712 i32.store offset=4 local.get $0 @@ -16657,15 +16657,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 - i32.store + local.tee $4 local.get $3 + i32.store + local.get $4 i32.const 1808 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1808 call $~lib/string/String.__eq else @@ -16675,15 +16675,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 - i32.store + local.tee $4 local.get $3 + i32.store + local.get $4 i32.const 12944 i32.store offset=4 - local.get $1 + local.get $3 i32.const 12944 call $~lib/string/String.__eq else @@ -16695,10 +16695,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 14048 i32.store offset=4 local.get $0 @@ -16764,10 +16764,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 1808 i32.store offset=4 local.get $0 @@ -16809,10 +16809,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 1808 i32.store offset=4 local.get $0 @@ -16852,15 +16852,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 - i32.store + local.tee $4 local.get $3 + i32.store + local.get $4 i32.const 1808 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1808 call $~lib/string/String.__eq else @@ -16870,15 +16870,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 - i32.store + local.tee $4 local.get $3 + i32.store + local.get $4 i32.const 12944 i32.store offset=4 - local.get $1 + local.get $3 i32.const 12944 call $~lib/string/String.__eq else @@ -16890,10 +16890,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 14048 i32.store offset=4 local.get $0 @@ -16933,15 +16933,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 - i32.store + local.tee $4 local.get $3 + i32.store + local.get $4 i32.const 1808 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1808 call $~lib/string/String.__eq else @@ -16951,15 +16951,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 - i32.store + local.tee $4 local.get $3 + i32.store + local.get $4 i32.const 12944 i32.store offset=4 - local.get $1 + local.get $3 i32.const 12944 call $~lib/string/String.__eq else @@ -16971,10 +16971,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 14048 i32.store offset=4 local.get $0 @@ -17014,15 +17014,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 - i32.store + local.tee $4 local.get $3 + i32.store + local.get $4 i32.const 1808 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1808 call $~lib/string/String.__eq else @@ -17032,15 +17032,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 - i32.store + local.tee $4 local.get $3 + i32.store + local.get $4 i32.const 12944 i32.store offset=4 - local.get $1 + local.get $3 i32.const 12944 call $~lib/string/String.__eq else @@ -17052,10 +17052,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 14048 i32.store offset=4 local.get $0 @@ -17078,10 +17078,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3056 i32.store offset=4 local.get $0 @@ -17101,10 +17101,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3120 i32.store offset=4 local.get $0 @@ -17124,10 +17124,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17376 i32.store offset=4 local.get $0 @@ -17147,10 +17147,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17408 i32.store offset=4 local.get $0 @@ -17170,10 +17170,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 2400 i32.store offset=4 local.get $0 @@ -17193,10 +17193,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17440 i32.store offset=4 local.get $0 @@ -17216,10 +17216,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 13584 i32.store offset=4 local.get $0 @@ -17239,10 +17239,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17472 i32.store offset=4 local.get $0 @@ -17262,10 +17262,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17504 i32.store offset=4 local.get $0 @@ -17285,10 +17285,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17536 i32.store offset=4 local.get $0 @@ -17308,10 +17308,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17584 i32.store offset=4 local.get $0 @@ -17331,10 +17331,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17632 i32.store offset=4 local.get $0 @@ -17354,10 +17354,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17680 i32.store offset=4 local.get $0 @@ -17377,10 +17377,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17728 i32.store offset=4 local.get $0 @@ -17400,10 +17400,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17776 i32.store offset=4 local.get $0 @@ -17423,10 +17423,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17824 i32.store offset=4 local.get $0 @@ -17446,10 +17446,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17872 i32.store offset=4 local.get $0 @@ -17469,10 +17469,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3056 i32.store offset=4 local.get $0 @@ -17492,10 +17492,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17904 i32.store offset=4 local.get $0 @@ -17515,10 +17515,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17776 i32.store offset=4 local.get $0 @@ -17538,10 +17538,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17936 i32.store offset=4 local.get $0 @@ -17561,10 +17561,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17984 i32.store offset=4 local.get $0 @@ -17584,10 +17584,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3056 i32.store offset=4 local.get $0 @@ -17607,10 +17607,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3120 i32.store offset=4 local.get $0 @@ -17630,10 +17630,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17376 i32.store offset=4 local.get $0 @@ -17653,10 +17653,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 14048 i32.store offset=4 local.get $0 @@ -17676,10 +17676,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18032 i32.store offset=4 local.get $0 @@ -17699,10 +17699,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18064 i32.store offset=4 local.get $0 @@ -17722,10 +17722,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18096 i32.store offset=4 local.get $0 @@ -17745,10 +17745,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18128 i32.store offset=4 local.get $0 @@ -17768,10 +17768,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18160 i32.store offset=4 local.get $0 @@ -17791,10 +17791,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18192 i32.store offset=4 local.get $0 @@ -17814,10 +17814,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18224 i32.store offset=4 local.get $0 @@ -17837,10 +17837,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18256 i32.store offset=4 local.get $0 @@ -17860,10 +17860,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18304 i32.store offset=4 local.get $0 @@ -17883,10 +17883,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18352 i32.store offset=4 local.get $0 @@ -17906,10 +17906,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18400 i32.store offset=4 local.get $0 @@ -17929,10 +17929,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18448 i32.store offset=4 local.get $0 @@ -17952,10 +17952,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3056 i32.store offset=4 local.get $0 @@ -17975,10 +17975,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17440 i32.store offset=4 local.get $0 @@ -17998,10 +17998,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18352 i32.store offset=4 local.get $0 @@ -18021,10 +18021,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18496 i32.store offset=4 local.get $0 @@ -18044,10 +18044,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18544 i32.store offset=4 local.get $0 @@ -18067,10 +18067,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18592 i32.store offset=4 local.get $0 @@ -18090,10 +18090,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18592 i32.store offset=4 local.get $0 @@ -18113,10 +18113,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3056 i32.store offset=4 local.get $0 @@ -18136,10 +18136,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3120 i32.store offset=4 local.get $0 @@ -18159,10 +18159,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 13488 i32.store offset=4 local.get $0 @@ -18182,10 +18182,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18640 i32.store offset=4 local.get $0 @@ -18205,10 +18205,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18672 i32.store offset=4 local.get $0 @@ -18228,10 +18228,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18704 i32.store offset=4 local.get $0 @@ -18251,10 +18251,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18736 i32.store offset=4 local.get $0 @@ -18274,10 +18274,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18768 i32.store offset=4 local.get $0 @@ -18297,10 +18297,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18816 i32.store offset=4 local.get $0 @@ -18320,10 +18320,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18896 i32.store offset=4 local.get $0 @@ -18343,10 +18343,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18992 i32.store offset=4 local.get $0 @@ -18366,10 +18366,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19088 i32.store offset=4 local.get $0 @@ -18389,10 +18389,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19184 i32.store offset=4 local.get $0 @@ -18412,10 +18412,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19280 i32.store offset=4 local.get $0 @@ -18435,10 +18435,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19328 i32.store offset=4 local.get $0 @@ -18458,10 +18458,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19392 i32.store offset=4 local.get $0 @@ -18481,10 +18481,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19456 i32.store offset=4 local.get $0 @@ -18504,10 +18504,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19504 i32.store offset=4 local.get $0 @@ -18527,10 +18527,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19552 i32.store offset=4 local.get $0 @@ -18550,10 +18550,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19600 i32.store offset=4 local.get $0 @@ -18573,10 +18573,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19648 i32.store offset=4 local.get $0 @@ -18596,10 +18596,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19696 i32.store offset=4 local.get $0 @@ -18619,10 +18619,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19744 i32.store offset=4 local.get $0 @@ -18642,10 +18642,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19792 i32.store offset=4 local.get $0 @@ -18665,10 +18665,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19840 i32.store offset=4 local.get $0 @@ -18688,10 +18688,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3056 i32.store offset=4 local.get $0 @@ -18711,10 +18711,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17408 i32.store offset=4 local.get $0 @@ -18734,10 +18734,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 2400 i32.store offset=4 local.get $0 @@ -18757,10 +18757,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 13584 i32.store offset=4 local.get $0 @@ -18780,10 +18780,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17472 i32.store offset=4 local.get $0 @@ -18803,10 +18803,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17504 i32.store offset=4 local.get $0 @@ -18826,10 +18826,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17584 i32.store offset=4 local.get $0 @@ -18849,10 +18849,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19888 i32.store offset=4 local.get $0 @@ -18872,10 +18872,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19936 i32.store offset=4 local.get $0 @@ -18895,10 +18895,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17984 i32.store offset=4 local.get $0 @@ -18918,10 +18918,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19984 i32.store offset=4 local.get $0 @@ -18941,10 +18941,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20032 i32.store offset=4 local.get $0 @@ -18964,10 +18964,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20080 i32.store offset=4 local.get $0 @@ -18987,10 +18987,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20128 i32.store offset=4 local.get $0 @@ -19010,10 +19010,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20176 i32.store offset=4 local.get $0 @@ -19033,10 +19033,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20224 i32.store offset=4 local.get $0 @@ -19056,10 +19056,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20288 i32.store offset=4 local.get $0 @@ -19079,10 +19079,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20352 i32.store offset=4 local.get $0 @@ -19102,10 +19102,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20416 i32.store offset=4 local.get $0 @@ -19125,10 +19125,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20480 i32.store offset=4 local.get $0 @@ -19148,10 +19148,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20544 i32.store offset=4 local.get $0 @@ -19171,10 +19171,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3056 i32.store offset=4 local.get $0 @@ -19194,10 +19194,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20608 i32.store offset=4 local.get $0 @@ -19217,10 +19217,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17984 i32.store offset=4 local.get $0 @@ -19240,10 +19240,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19984 i32.store offset=4 local.get $0 @@ -19263,10 +19263,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20640 i32.store offset=4 local.get $0 @@ -19286,10 +19286,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20032 i32.store offset=4 local.get $0 @@ -19309,10 +19309,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20688 i32.store offset=4 local.get $0 @@ -19332,10 +19332,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20736 i32.store offset=4 local.get $0 @@ -19355,10 +19355,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20784 i32.store offset=4 local.get $0 @@ -19378,10 +19378,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20848 i32.store offset=4 local.get $0 @@ -19401,10 +19401,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20912 i32.store offset=4 local.get $0 @@ -19424,10 +19424,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20976 i32.store offset=4 local.get $0 @@ -19447,10 +19447,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3056 i32.store offset=4 local.get $0 @@ -19470,10 +19470,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3120 i32.store offset=4 local.get $0 @@ -19493,10 +19493,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 14048 i32.store offset=4 local.get $0 @@ -19516,10 +19516,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18064 i32.store offset=4 local.get $0 @@ -19539,10 +19539,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18160 i32.store offset=4 local.get $0 @@ -19562,10 +19562,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21040 i32.store offset=4 local.get $0 @@ -19585,10 +19585,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21088 i32.store offset=4 local.get $0 @@ -19608,10 +19608,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21136 i32.store offset=4 local.get $0 @@ -19631,10 +19631,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21184 i32.store offset=4 local.get $0 @@ -19654,10 +19654,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21232 i32.store offset=4 local.get $0 @@ -19677,10 +19677,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21280 i32.store offset=4 local.get $0 @@ -19700,10 +19700,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21344 i32.store offset=4 local.get $0 @@ -19723,10 +19723,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21408 i32.store offset=4 local.get $0 @@ -19746,10 +19746,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21472 i32.store offset=4 local.get $0 @@ -19769,10 +19769,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21536 i32.store offset=4 local.get $0 @@ -19792,10 +19792,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21600 i32.store offset=4 local.get $0 @@ -19815,10 +19815,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21600 i32.store offset=4 local.get $0 @@ -19838,10 +19838,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3056 i32.store offset=4 local.get $0 @@ -19861,10 +19861,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3120 i32.store offset=4 local.get $0 @@ -19884,10 +19884,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18640 i32.store offset=4 local.get $0 @@ -19907,10 +19907,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18672 i32.store offset=4 local.get $0 @@ -19930,10 +19930,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18736 i32.store offset=4 local.get $0 @@ -19953,10 +19953,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18768 i32.store offset=4 local.get $0 @@ -19976,10 +19976,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19184 i32.store offset=4 local.get $0 @@ -19999,10 +19999,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21664 i32.store offset=4 local.get $0 @@ -20022,10 +20022,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21792 i32.store offset=4 local.get $0 @@ -20045,10 +20045,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21952 i32.store offset=4 local.get $0 @@ -20068,10 +20068,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22048 i32.store offset=4 local.get $0 @@ -20091,10 +20091,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22160 i32.store offset=4 local.get $0 @@ -20114,10 +20114,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22256 i32.store offset=4 local.get $0 @@ -20137,10 +20137,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22336 i32.store offset=4 local.get $0 @@ -20160,10 +20160,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22400 i32.store offset=4 local.get $0 @@ -20183,10 +20183,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22464 i32.store offset=4 local.get $0 @@ -20206,10 +20206,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22528 i32.store offset=4 local.get $0 @@ -20229,10 +20229,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22592 i32.store offset=4 local.get $0 @@ -20252,10 +20252,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22656 i32.store offset=4 local.get $0 @@ -20275,10 +20275,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22704 i32.store offset=4 local.get $0 @@ -20298,10 +20298,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22752 i32.store offset=4 local.get $0 @@ -20320,10 +20320,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22800 i32.store offset=4 local.get $0 @@ -20342,10 +20342,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22800 i32.store offset=4 local.get $0 @@ -20364,10 +20364,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 7248 i32.store offset=4 local.get $0 @@ -20386,10 +20386,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22832 i32.store offset=4 local.get $0 @@ -20408,10 +20408,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 8544 i32.store offset=4 local.get $0 @@ -20430,10 +20430,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 7760 i32.store offset=4 local.get $0 @@ -20452,10 +20452,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 23856 i32.store offset=4 local.get $0 @@ -20474,10 +20474,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 7824 i32.store offset=4 local.get $0 @@ -20496,10 +20496,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 23920 i32.store offset=4 local.get $0 @@ -20518,10 +20518,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24000 i32.store offset=4 local.get $0 @@ -20540,10 +20540,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24064 i32.store offset=4 local.get $0 @@ -20562,10 +20562,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24144 i32.store offset=4 local.get $0 @@ -20584,10 +20584,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24192 i32.store offset=4 local.get $0 @@ -20606,10 +20606,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24256 i32.store offset=4 local.get $0 @@ -20628,10 +20628,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24320 i32.store offset=4 local.get $0 @@ -20650,10 +20650,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 7904 i32.store offset=4 local.get $0 @@ -20672,10 +20672,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24384 i32.store offset=4 local.get $0 @@ -20694,10 +20694,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 4832 i32.store offset=4 local.get $0 @@ -20716,10 +20716,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24416 i32.store offset=4 local.get $0 @@ -20738,10 +20738,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24448 i32.store offset=4 local.get $0 @@ -20760,10 +20760,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24480 i32.store offset=4 local.get $0 @@ -20782,10 +20782,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24528 i32.store offset=4 local.get $0 @@ -20804,10 +20804,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24576 i32.store offset=4 local.get $0 @@ -20826,10 +20826,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24624 i32.store offset=4 local.get $0 @@ -20848,10 +20848,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24672 i32.store offset=4 local.get $0 @@ -20870,10 +20870,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24720 i32.store offset=4 local.get $0 @@ -20892,10 +20892,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 5120 i32.store offset=4 local.get $0 @@ -20914,10 +20914,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24752 i32.store offset=4 local.get $0 @@ -20936,10 +20936,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22832 i32.store offset=4 local.get $0 @@ -20958,10 +20958,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 8544 i32.store offset=4 local.get $0 @@ -20980,10 +20980,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24800 i32.store offset=4 local.get $0 @@ -21002,10 +21002,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24832 i32.store offset=4 local.get $0 @@ -21024,10 +21024,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24880 i32.store offset=4 local.get $0 @@ -21046,10 +21046,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24912 i32.store offset=4 local.get $0 @@ -21068,10 +21068,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22800 i32.store offset=4 local.get $0 @@ -21090,10 +21090,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24960 i32.store offset=4 local.get $0 @@ -21112,10 +21112,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25008 i32.store offset=4 local.get $0 @@ -21134,10 +21134,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25072 i32.store offset=4 local.get $0 @@ -21156,10 +21156,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25136 i32.store offset=4 local.get $0 @@ -21178,10 +21178,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24384 i32.store offset=4 local.get $0 @@ -21200,10 +21200,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25200 i32.store offset=4 local.get $0 @@ -21222,10 +21222,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25232 i32.store offset=4 local.get $0 @@ -21244,10 +21244,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25296 i32.store offset=4 local.get $0 @@ -21266,10 +21266,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25376 i32.store offset=4 local.get $0 @@ -21288,10 +21288,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25424 i32.store offset=4 local.get $0 @@ -21310,10 +21310,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25472 i32.store offset=4 local.get $0 @@ -21332,10 +21332,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25520 i32.store offset=4 local.get $0 @@ -21354,10 +21354,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25568 i32.store offset=4 local.get $0 @@ -21376,10 +21376,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25616 i32.store offset=4 local.get $0 @@ -21398,10 +21398,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25664 i32.store offset=4 local.get $0 @@ -21657,18 +21657,18 @@ local.get $1 i32.const 0 i32.gt_s - local.tee $3 + local.tee $2 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 local.get $0 i32.store16 - local.get $3 + local.get $2 if - local.get $2 + local.get $3 local.get $1 i32.store16 offset=2 end @@ -21676,7 +21676,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 ) (func $~lib/rt/__newArray (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -21720,23 +21720,22 @@ end local.get $5 local.get $3 - local.tee $2 i32.store i32.const 16 local.get $1 call $~lib/rt/itcms/__new local.tee $1 - local.get $2 + local.get $3 i32.store - local.get $2 + local.get $3 if local.get $1 - local.get $2 + local.get $3 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $1 - local.get $2 + local.get $3 i32.store offset=4 local.get $1 local.get $4 @@ -21770,43 +21769,43 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store - local.get $1 + local.get $2 local.get $0 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.store local.get $0 i32.load offset=4 local.set $0 loop $for-loop|0 + local.get $1 local.get $2 - local.get $3 i32.lt_s if - local.get $2 + local.get $1 i32.const 1 i32.shl - local.get $1 + local.get $3 i32.add - local.get $2 + local.get $1 i32.const 2 i32.shl local.get $0 i32.add i32.load i32.store16 - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|0 end end @@ -21814,7 +21813,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $3 ) (func $~lib/string/String.fromCodePoint (param $0 i32) (result i32) (local $1 i32) @@ -21843,13 +21842,13 @@ local.get $0 i32.const 65535 i32.gt_u - local.tee $2 + local.tee $1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $2 + local.get $1 if local.get $0 i32.const 1114111 @@ -21862,7 +21861,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 local.get $0 i32.const 65536 i32.sub @@ -21881,7 +21880,7 @@ i32.or i32.store else - local.get $1 + local.get $2 local.get $0 i32.store16 end @@ -21889,7 +21888,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 ) (func $~lib/string/String#padStart (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -21923,7 +21922,7 @@ i32.shr_u i32.const 1 i32.shl - local.tee $4 + local.tee $3 i32.eqz local.get $0 i32.const 20 @@ -21933,11 +21932,11 @@ i32.shr_u i32.const 1 i32.shl - local.tee $5 + local.tee $4 local.get $1 i32.const 1 i32.shl - local.tee $3 + local.tee $1 i32.gt_u i32.or if @@ -21949,57 +21948,57 @@ return end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $6 i32.store - local.get $4 local.get $3 - local.get $5 + local.get $1 + local.get $4 i32.sub - local.tee $3 + local.tee $7 i32.lt_u if - local.get $4 local.get $3 + local.get $7 i32.const 2 i32.sub - local.get $4 + local.get $3 i32.div_u - local.tee $7 + local.tee $5 i32.mul - local.set $6 - local.get $1 + local.set $1 + local.get $6 local.get $2 - local.get $4 - local.get $7 + local.get $3 + local.get $5 call $~lib/memory/memory.repeat local.get $1 local.get $6 i32.add local.get $2 - local.get $3 - local.get $6 + local.get $7 + local.get $1 i32.sub call $~lib/memory/memory.copy else - local.get $1 + local.get $6 local.get $2 - local.get $3 + local.get $7 call $~lib/memory/memory.copy end - local.get $1 - local.get $3 + local.get $6 + local.get $7 i32.add local.get $0 - local.get $5 + local.get $4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $6 ) (func $~lib/string/String#padEnd (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -22032,7 +22031,7 @@ i32.shr_u i32.const 1 i32.shl - local.tee $5 + local.tee $3 i32.eqz local.get $0 i32.const 20 @@ -22042,11 +22041,11 @@ i32.shr_u i32.const 1 i32.shl - local.tee $3 + local.tee $4 local.get $1 i32.const 1 i32.shl - local.tee $4 + local.tee $1 i32.gt_u i32.or if @@ -22058,60 +22057,60 @@ return end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $5 i32.store - local.get $1 - local.get $0 - local.get $3 - call $~lib/memory/memory.copy local.get $5 + local.get $0 local.get $4 + call $~lib/memory/memory.copy local.get $3 + local.get $1 + local.get $4 i32.sub - local.tee $0 + local.tee $1 i32.lt_u if - local.get $5 - local.get $0 + local.get $3 + local.get $1 i32.const 2 i32.sub - local.get $5 + local.get $3 i32.div_u - local.tee $6 + local.tee $0 i32.mul - local.set $4 - local.get $1 - local.get $3 + local.set $6 + local.get $4 + local.get $5 i32.add - local.tee $3 + local.tee $4 local.get $2 - local.get $5 - local.get $6 - call $~lib/memory/memory.repeat local.get $3 + local.get $0 + call $~lib/memory/memory.repeat local.get $4 + local.get $6 i32.add local.get $2 - local.get $0 - local.get $4 + local.get $1 + local.get $6 i32.sub call $~lib/memory/memory.copy else - local.get $1 - local.get $3 + local.get $4 + local.get $5 i32.add local.get $2 - local.get $0 + local.get $1 call $~lib/memory/memory.copy end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $5 ) (func $~lib/string/String#trimStart (param $0 i32) (result i32) (local $1 i32) @@ -22143,27 +22142,27 @@ i32.shr_u i32.const 1 i32.shl - local.set $3 + local.set $2 loop $while-continue|0 + local.get $1 local.get $2 - local.get $3 i32.lt_u if (result i32) block $__inlined_func$~lib/util/string/isSpace (result i32) local.get $0 - local.get $2 + local.get $1 i32.add i32.load16_u - local.tee $1 + local.tee $3 i32.const 5760 i32.lt_u if - local.get $1 + local.get $3 i32.const 128 i32.or i32.const 160 i32.eq - local.get $1 + local.get $3 i32.const 9 i32.sub i32.const 4 @@ -22172,7 +22171,7 @@ br $__inlined_func$~lib/util/string/isSpace end i32.const 1 - local.get $1 + local.get $3 i32.const -8192 i32.add i32.const 10 @@ -22181,31 +22180,31 @@ drop block $break|0 block $case6|0 - local.get $1 + local.get $3 i32.const 5760 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 8232 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 8233 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 8239 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 8287 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 12288 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 65279 i32.eq br_if $case6|0 @@ -22220,14 +22219,14 @@ i32.const 0 end if - local.get $2 + local.get $1 i32.const 2 i32.add - local.set $2 + local.set $1 br $while-continue|0 end end - local.get $2 + local.get $1 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -22237,10 +22236,10 @@ local.get $0 return end - local.get $3 local.get $2 + local.get $1 i32.sub - local.tee $1 + local.tee $2 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -22251,16 +22250,16 @@ return end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.const 1 call $~lib/rt/itcms/__new local.tee $3 i32.store local.get $3 local.get $0 - local.get $2 - i32.add local.get $1 + i32.add + local.get $2 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 @@ -22298,28 +22297,28 @@ i32.shr_u i32.const 1 i32.shl - local.tee $3 - local.set $2 + local.tee $2 + local.set $1 loop $while-continue|0 - local.get $2 + local.get $1 if (result i32) block $__inlined_func$~lib/util/string/isSpace (result i32) local.get $0 - local.get $2 + local.get $1 i32.add i32.const 2 i32.sub i32.load16_u - local.tee $1 + local.tee $3 i32.const 5760 i32.lt_u if - local.get $1 + local.get $3 i32.const 128 i32.or i32.const 160 i32.eq - local.get $1 + local.get $3 i32.const 9 i32.sub i32.const 4 @@ -22328,7 +22327,7 @@ br $__inlined_func$~lib/util/string/isSpace end i32.const 1 - local.get $1 + local.get $3 i32.const -8192 i32.add i32.const 10 @@ -22337,31 +22336,31 @@ drop block $break|0 block $case6|0 - local.get $1 + local.get $3 i32.const 5760 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 8232 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 8233 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 8239 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 8287 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 12288 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 65279 i32.eq br_if $case6|0 @@ -22376,14 +22375,14 @@ i32.const 0 end if - local.get $2 + local.get $1 i32.const 2 i32.sub - local.set $2 + local.set $1 br $while-continue|0 end end - local.get $2 + local.get $1 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -22393,8 +22392,8 @@ i32.const 1712 return end + local.get $1 local.get $2 - local.get $3 i32.eq if global.get $~lib/memory/__stack_pointer @@ -22405,20 +22404,20 @@ return end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 - local.get $0 local.get $2 + local.get $0 + local.get $1 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 ) (func $~lib/string/String#trim (param $0 i32) (result i32) (local $1 i32) @@ -22449,30 +22448,30 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 i32.const 1 i32.shl - local.set $2 + local.set $1 loop $while-continue|0 - local.get $2 + local.get $1 if (result i32) block $__inlined_func$~lib/util/string/isSpace (result i32) local.get $0 - local.get $2 + local.get $1 i32.add i32.const 2 i32.sub i32.load16_u - local.tee $1 + local.tee $4 i32.const 5760 i32.lt_u if - local.get $1 + local.get $4 i32.const 128 i32.or i32.const 160 i32.eq - local.get $1 + local.get $4 i32.const 9 i32.sub i32.const 4 @@ -22481,7 +22480,7 @@ br $__inlined_func$~lib/util/string/isSpace end i32.const 1 - local.get $1 + local.get $4 i32.const -8192 i32.add i32.const 10 @@ -22490,31 +22489,31 @@ drop block $break|0 block $case6|0 - local.get $1 + local.get $4 i32.const 5760 i32.eq br_if $case6|0 - local.get $1 + local.get $4 i32.const 8232 i32.eq br_if $case6|0 - local.get $1 + local.get $4 i32.const 8233 i32.eq br_if $case6|0 - local.get $1 + local.get $4 i32.const 8239 i32.eq br_if $case6|0 - local.get $1 + local.get $4 i32.const 8287 i32.eq br_if $case6|0 - local.get $1 + local.get $4 i32.const 12288 i32.eq br_if $case6|0 - local.get $1 + local.get $4 i32.const 65279 i32.eq br_if $case6|0 @@ -22529,33 +22528,33 @@ i32.const 0 end if - local.get $2 + local.get $1 i32.const 2 i32.sub - local.set $2 + local.set $1 br $while-continue|0 end end loop $while-continue|1 + local.get $1 local.get $2 - local.get $3 i32.gt_u if (result i32) block $__inlined_func$~lib/util/string/isSpace0 (result i32) local.get $0 - local.get $3 + local.get $2 i32.add i32.load16_u - local.tee $1 + local.tee $4 i32.const 5760 i32.lt_u if - local.get $1 + local.get $4 i32.const 128 i32.or i32.const 160 i32.eq - local.get $1 + local.get $4 i32.const 9 i32.sub i32.const 4 @@ -22564,7 +22563,7 @@ br $__inlined_func$~lib/util/string/isSpace0 end i32.const 1 - local.get $1 + local.get $4 i32.const -8192 i32.add i32.const 10 @@ -22573,31 +22572,31 @@ drop block $break|01 block $case6|02 - local.get $1 + local.get $4 i32.const 5760 i32.eq br_if $case6|02 - local.get $1 + local.get $4 i32.const 8232 i32.eq br_if $case6|02 - local.get $1 + local.get $4 i32.const 8233 i32.eq br_if $case6|02 - local.get $1 + local.get $4 i32.const 8239 i32.eq br_if $case6|02 - local.get $1 + local.get $4 i32.const 8287 i32.eq br_if $case6|02 - local.get $1 + local.get $4 i32.const 12288 i32.eq br_if $case6|02 - local.get $1 + local.get $4 i32.const 65279 i32.eq br_if $case6|02 @@ -22612,18 +22611,18 @@ i32.const 0 end if - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 - local.get $2 + local.set $2 + local.get $1 i32.const 2 i32.sub - local.set $2 + local.set $1 br $while-continue|1 end end - local.get $2 + local.get $1 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -22634,12 +22633,12 @@ return end i32.const 0 - local.get $4 + local.get $3 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.eq - local.get $3 + local.get $2 select if global.get $~lib/memory/__stack_pointer @@ -22650,22 +22649,22 @@ return end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.store - local.get $1 - local.get $0 local.get $3 - i32.add + local.get $0 local.get $2 + i32.add + local.get $1 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $3 ) (func $~lib/string/String#concat (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -22697,7 +22696,7 @@ i32.shr_u i32.const 1 i32.shl - local.tee $3 + local.tee $2 local.get $1 i32.const 20 i32.sub @@ -22706,9 +22705,9 @@ i32.shr_u i32.const 1 i32.shl - local.tee $4 + local.tee $3 i32.add - local.tee $2 + local.tee $4 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -22719,26 +22718,26 @@ return end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $4 i32.store - local.get $2 + local.get $4 local.get $0 - local.get $3 + local.get $2 call $~lib/memory/memory.copy local.get $2 - local.get $3 + local.get $4 i32.add local.get $1 - local.get $4 + local.get $3 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $4 ) (func $~lib/string/String#repeat (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -22867,19 +22866,19 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.ge_u if local.get $3 local.get $4 - i32.ge_u + i32.le_u if local.get $2 local.get $0 @@ -22900,7 +22899,7 @@ local.get $1 i32.const 0 call $~lib/string/String#indexOf - local.tee $1 + local.tee $6 i32.const -1 i32.xor if @@ -22910,53 +22909,53 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $5 - local.get $3 + local.tee $1 local.get $4 + local.get $3 i32.sub - local.tee $6 + local.tee $4 i32.add - local.tee $3 + local.tee $5 if global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $5 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $7 i32.store - local.get $3 + local.get $7 local.get $0 - local.get $1 + local.get $6 i32.const 1 i32.shl - local.tee $7 + local.tee $5 call $~lib/memory/memory.copy - local.get $3 + local.get $5 local.get $7 i32.add local.get $2 - local.get $5 + local.get $1 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $1 - local.get $5 + local.get $6 i32.add i32.const 1 i32.shl - local.get $3 + local.get $7 i32.add - local.get $1 - local.get $4 + local.get $3 + local.get $6 i32.add i32.const 1 i32.shl local.get $0 i32.add + local.get $4 local.get $6 - local.get $1 i32.sub i32.const 1 i32.shl @@ -22965,7 +22964,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $7 return end end @@ -23010,18 +23009,18 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $7 + local.tee $9 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $5 i32.ge_u if - local.get $4 - local.get $7 + local.get $5 + local.get $9 i32.ge_u if local.get $2 @@ -23040,46 +23039,46 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.set $3 - local.get $7 + local.set $4 + local.get $9 i32.eqz if - local.get $3 + local.get $4 i32.eqz br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.get $3 local.get $4 + local.get $5 i32.const 1 i32.add i32.mul - local.get $4 + local.get $5 i32.add i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $3 i32.store - local.get $5 - local.get $2 local.get $3 + local.get $2 + local.get $4 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $3 + local.get $4 local.set $1 loop $for-loop|0 - local.get $4 - local.get $9 + local.get $5 + local.get $11 i32.gt_u if local.get $1 i32.const 1 i32.shl - local.get $5 + local.get $3 i32.add - local.get $9 + local.get $11 i32.const 1 i32.shl local.get $0 @@ -23092,21 +23091,21 @@ local.tee $1 i32.const 1 i32.shl - local.get $5 + local.get $3 i32.add local.get $2 - local.get $3 + local.get $4 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $1 - local.get $3 + local.get $4 i32.add local.set $1 - local.get $9 + local.get $11 i32.const 1 i32.add - local.set $9 + local.set $11 br $for-loop|0 end end @@ -23114,30 +23113,30 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $3 return end - local.get $3 - local.get $7 + local.get $4 + local.get $9 i32.eq if global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 1 i32.shl local.tee $5 i32.const 1 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $3 i32.store - local.get $4 + local.get $3 local.get $0 local.get $5 call $~lib/memory/memory.copy loop $while-continue|1 local.get $0 local.get $1 - local.get $10 + local.get $7 call $~lib/string/String#indexOf local.tee $5 i32.const -1 @@ -23146,17 +23145,17 @@ local.get $5 i32.const 1 i32.shl - local.get $4 + local.get $3 i32.add local.get $2 - local.get $3 + local.get $4 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $5 - local.get $7 + local.get $9 i32.add - local.set $10 + local.set $7 br $while-continue|1 end end @@ -23164,23 +23163,23 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $3 return end - local.get $4 - local.set $5 + local.get $5 + local.set $3 loop $while-continue|2 local.get $0 local.get $1 - local.get $10 + local.get $7 call $~lib/string/String#indexOf - local.tee $9 + local.tee $10 i32.const -1 i32.xor if - local.get $11 + local.get $6 if (result i32) - local.get $11 + local.get $6 i32.const 20 i32.sub i32.load offset=16 @@ -23192,96 +23191,96 @@ i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $6 i32.store offset=4 end - local.get $5 local.get $3 + local.get $4 local.get $8 - local.get $9 local.get $10 + local.get $7 i32.sub - local.tee $6 + local.tee $11 i32.add i32.add i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $11 - local.get $5 + local.get $6 + local.get $3 i32.const 1 i32.shl - local.tee $5 + local.tee $3 i32.const 1 i32.shl call $~lib/rt/itcms/__renew - local.tee $11 + local.tee $6 i32.store offset=4 end local.get $8 i32.const 1 i32.shl - local.get $11 + local.get $6 i32.add - local.get $10 + local.get $7 i32.const 1 i32.shl local.get $0 i32.add - local.get $6 + local.get $11 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $6 local.get $8 + local.get $11 i32.add - local.tee $10 + local.tee $11 i32.const 1 i32.shl - local.get $11 + local.get $6 i32.add local.get $2 - local.get $3 + local.get $4 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $3 - local.get $10 + local.get $4 + local.get $11 i32.add local.set $8 - local.get $7 local.get $9 + local.get $10 i32.add - local.set $10 + local.set $7 br $while-continue|2 end end - local.get $11 + local.get $6 if - local.get $5 + local.get $3 local.get $8 - local.get $4 - local.get $10 + local.get $5 + local.get $7 i32.sub local.tee $1 i32.add i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $11 - local.get $5 + local.get $6 + local.get $3 i32.const 1 i32.shl - local.tee $5 + local.tee $3 i32.const 1 i32.shl call $~lib/rt/itcms/__renew - local.tee $11 + local.tee $6 i32.store offset=4 end local.get $1 @@ -23289,9 +23288,9 @@ local.get $8 i32.const 1 i32.shl - local.get $11 + local.get $6 i32.add - local.get $10 + local.get $7 i32.const 1 i32.shl local.get $0 @@ -23301,7 +23300,7 @@ i32.shl call $~lib/memory/memory.copy end - local.get $5 + local.get $3 local.get $1 local.get $8 i32.add @@ -23309,19 +23308,19 @@ i32.gt_u if global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $6 local.get $0 i32.const 1 i32.shl call $~lib/rt/itcms/__renew - local.tee $11 + local.tee $6 i32.store offset=4 end global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 + local.get $6 return end global.get $~lib/memory/__stack_pointer @@ -23424,24 +23423,24 @@ local.get $2 i32.const 1 i32.shl - local.tee $3 + local.tee $2 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 local.get $1 i32.const 1 i32.shl local.get $0 i32.add - local.get $3 + local.get $2 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 ) (func $~lib/string/String#substr (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -23559,51 +23558,51 @@ i32.const 0 i32.gt_s select - local.tee $3 + local.tee $1 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $1 + local.tee $3 local.get $1 local.get $3 - i32.gt_s + i32.lt_s select - local.tee $3 + local.tee $4 local.get $2 i32.const 0 local.get $2 i32.const 0 i32.gt_s select - local.tee $2 - local.get $1 + local.tee $1 + local.get $3 local.get $1 - local.get $2 - i32.gt_s + local.get $3 + i32.lt_s select local.tee $2 local.get $2 - local.get $3 + local.get $4 i32.gt_s select i32.const 1 i32.shl - local.set $4 - local.get $3 + local.set $1 + local.get $4 local.get $2 local.get $2 - local.get $3 + local.get $4 i32.lt_s select i32.const 1 i32.shl - local.tee $3 - local.get $4 - i32.sub local.tee $2 + local.get $1 + i32.sub + local.tee $4 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -23614,12 +23613,12 @@ return end i32.const 0 - local.get $1 + local.get $3 i32.const 1 i32.shl - local.get $3 + local.get $2 i32.eq - local.get $4 + local.get $1 select if global.get $~lib/memory/__stack_pointer @@ -23630,22 +23629,22 @@ return end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 local.get $0 - local.get $4 + local.get $1 i32.add - local.get $2 + local.get $4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 ) (func $~lib/array/Array<~lib/string/String>#__get (param $0 i32) (param $1 i32) (result i32) global.get $~lib/memory/__stack_pointer @@ -23770,47 +23769,46 @@ if global.get $~lib/memory/__stack_pointer local.get $2 - local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $2 i32.const 100000000 i32.ge_u i32.add @@ -23818,7 +23816,7 @@ end local.get $5 i32.add - local.tee $2 + local.tee $1 i32.const 1 i32.shl i32.const 1 @@ -23826,8 +23824,8 @@ local.tee $0 i32.store local.get $0 - local.get $1 local.get $2 + local.get $1 call $~lib/util/number/utoa32_dec_lut else local.get $1 @@ -24054,53 +24052,52 @@ if global.get $~lib/memory/__stack_pointer local.get $0 - local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.tee $0 + local.tee $1 i32.const 1 i32.shl i32.const 1 @@ -24108,8 +24105,8 @@ local.tee $3 i32.store local.get $3 - local.get $1 local.get $0 + local.get $1 call $~lib/util/number/utoa32_dec_lut else local.get $1 @@ -24277,8 +24274,8 @@ (local $2 i64) (local $3 i32) (local $4 i64) - (local $5 i32) - (local $6 i64) + (local $5 i64) + (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -24333,54 +24330,54 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.wrap_i64 - local.tee $5 local.tee $1 + local.tee $3 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $3 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $3 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $3 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $3 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $3 i32.const 100000000 i32.ge_u i32.add end end - local.tee $1 + local.tee $6 i32.const 1 i32.shl i32.const 1 @@ -24388,8 +24385,8 @@ local.tee $3 i32.store local.get $3 - local.get $5 local.get $1 + local.get $6 call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer @@ -24547,7 +24544,7 @@ end local.get $1 i64.extend_i32_s - local.tee $6 + local.tee $5 local.set $4 i32.const 1 local.set $3 @@ -24577,7 +24574,7 @@ i64.ge_u if local.get $2 - local.get $6 + local.get $5 i64.div_u local.set $2 local.get $3 @@ -24591,7 +24588,7 @@ i32.const 1 i32.sub end - local.tee $5 + local.tee $6 i32.const 1 i32.shl i32.const 1 @@ -24600,7 +24597,7 @@ i32.store local.get $3 local.get $0 - local.get $5 + local.get $6 local.get $1 call $~lib/util/number/utoa64_any_core end @@ -24612,12 +24609,12 @@ local.get $3 ) (func $~lib/util/number/itoa64 (param $0 i64) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i64) + (local $2 i64) + (local $3 i32) (local $4 i32) (local $5 i64) - (local $6 i32) - (local $7 i64) + (local $6 i64) + (local $7 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -24683,7 +24680,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.wrap_i64 - local.tee $2 + local.tee $3 local.tee $1 i32.const 100000 i32.lt_u @@ -24732,7 +24729,7 @@ end local.get $4 i32.add - local.tee $6 + local.tee $7 i32.const 1 i32.shl i32.const 1 @@ -24740,8 +24737,8 @@ local.tee $1 i32.store local.get $1 - local.get $2 - local.get $6 + local.get $3 + local.get $7 call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer @@ -24797,7 +24794,7 @@ end local.get $4 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.shl i32.const 1 @@ -24806,7 +24803,7 @@ i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 call $~lib/util/number/utoa64_dec_lut end else @@ -24826,7 +24823,7 @@ i32.const 1 i32.add i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.shl i32.const 1 @@ -24834,14 +24831,14 @@ local.tee $1 i32.store loop $while-continue|0 - local.get $2 + local.get $3 i32.const 2 i32.ge_u if - local.get $2 + local.get $3 i32.const 2 i32.sub - local.tee $2 + local.tee $3 i32.const 1 i32.shl local.get $1 @@ -24863,7 +24860,7 @@ br $while-continue|0 end end - local.get $2 + local.get $3 i32.const 1 i32.and if @@ -24881,20 +24878,20 @@ global.get $~lib/memory/__stack_pointer block $__inlined_func$~lib/util/number/ulog_base (result i32) local.get $0 - local.set $3 + local.set $2 local.get $1 - local.tee $2 + local.tee $3 i32.popcnt i32.const 1 i32.eq if i32.const 63 - local.get $3 + local.get $2 i64.clz i32.wrap_i64 i32.sub i32.const 31 - local.get $2 + local.get $3 i32.clz i32.sub i32.div_u @@ -24902,21 +24899,21 @@ i32.add br $__inlined_func$~lib/util/number/ulog_base end - local.get $2 + local.get $3 i64.extend_i32_s - local.tee $7 + local.tee $6 local.set $5 i32.const 1 local.set $1 loop $while-continue|00 - local.get $3 + local.get $2 local.get $5 i64.ge_u if - local.get $3 + local.get $2 local.get $5 i64.div_u - local.set $3 + local.set $2 local.get $5 local.get $5 i64.mul @@ -24929,14 +24926,14 @@ end end loop $while-continue|1 - local.get $3 + local.get $2 i64.const 1 i64.ge_u if - local.get $3 - local.get $7 + local.get $2 + local.get $6 i64.div_u - local.set $3 + local.set $2 local.get $1 i32.const 1 i32.add @@ -24950,7 +24947,7 @@ end local.get $4 i32.add - local.tee $6 + local.tee $7 i32.const 1 i32.shl i32.const 1 @@ -24959,8 +24956,8 @@ i32.store local.get $1 local.get $0 - local.get $6 - local.get $2 + local.get $7 + local.get $3 call $~lib/util/number/utoa64_any_core end end @@ -25102,16 +25099,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $3 i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $3 local.get $1 local.get $2 select @@ -25120,7 +25117,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $0 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/symbol.optimized.wat b/tests/compiler/std/symbol.optimized.wat index 2ee6583786..283a620c76 100644 --- a/tests/compiler/std/symbol.optimized.wat +++ b/tests/compiler/std/symbol.optimized.wat @@ -104,9 +104,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -114,9 +113,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -124,9 +122,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -134,9 +131,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -144,9 +140,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -154,9 +149,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -234,7 +228,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -257,7 +251,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -267,15 +261,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -316,20 +310,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -424,19 +418,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -461,9 +455,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -471,17 +465,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -769,10 +763,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -784,15 +778,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -822,7 +816,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1135,7 +1129,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 19084 i32.ge_u if @@ -1145,20 +1139,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1171,8 +1165,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1399,14 +1392,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1416,17 +1409,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1442,22 +1435,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1468,11 +1461,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1577,7 +1570,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $5 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1603,34 +1596,34 @@ i32.const 4 i32.sub end - local.tee $2 + local.tee $5 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $2 i32.eqz if memory.size - local.tee $4 - local.get $2 + local.tee $2 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $2 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $2 + local.get $5 i32.add else - local.get $2 + local.get $5 end i32.const 4 - local.get $5 + local.get $3 i32.load offset=1568 - local.get $4 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1644,16 +1637,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $3 + local.tee $4 + local.get $2 local.get $4 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1661,18 +1654,18 @@ unreachable end end - local.get $5 - local.get $4 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $3 local.get $5 - local.get $2 call $~lib/rt/tlsf/searchBlock - local.tee $3 + local.tee $2 i32.eqz if i32.const 0 @@ -1683,11 +1676,11 @@ unreachable end end - local.get $3 + local.get $2 i32.load i32.const -4 i32.and - local.get $2 + local.get $5 i32.lt_u if i32.const 0 @@ -1697,13 +1690,13 @@ call $~lib/builtins/abort unreachable end - local.get $5 local.get $3 + local.get $2 call $~lib/rt/tlsf/removeBlock - local.get $3 - i32.load - local.set $4 local.get $2 + i32.load + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1716,89 +1709,89 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 i32.const -4 i32.and - local.get $2 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.const 2 i32.and - local.get $2 + local.get $5 i32.or i32.store + local.get $5 local.get $2 - local.get $3 i32.const 4 i32.add i32.add - local.tee $2 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $3 local.get $5 - local.get $2 call $~lib/rt/tlsf/insertBlock else - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.const -2 i32.and i32.store - local.get $3 + local.get $2 i32.const 4 i32.add - local.get $3 + local.get $2 i32.load i32.const -4 i32.and i32.add - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.load i32.const -3 i32.and i32.store end - local.get $3 + local.get $2 local.get $1 i32.store offset=12 - local.get $3 + local.get $2 local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace local.tee $1 i32.load offset=8 - local.set $2 - local.get $3 + local.set $3 + local.get $2 global.get $~lib/rt/itcms/white local.get $1 i32.or i32.store offset=4 - local.get $3 local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $3 + local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total - local.get $3 + local.get $2 i32.load i32.const -4 i32.and @@ -1806,7 +1799,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $3 + local.get $2 i32.const 20 i32.add local.tee $1 @@ -2097,14 +2090,14 @@ if local.get $3 i32.load16_u - local.tee $2 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $2 i32.ne if - local.get $2 local.get $4 + local.get $2 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2217,17 +2210,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2373,19 +2366,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2400,7 +2393,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -2411,10 +2404,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2422,10 +2415,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -2436,7 +2429,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2491,7 +2484,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -2502,10 +2495,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2513,10 +2506,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -2527,7 +2520,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2553,17 +2546,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2578,7 +2571,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -2589,10 +2582,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2600,10 +2593,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -2614,7 +2607,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2651,131 +2644,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -2792,59 +2789,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -3307,9 +3308,8 @@ unreachable end local.get $1 - local.tee $0 if - local.get $0 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end ) @@ -3358,7 +3358,7 @@ if local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) @@ -3367,9 +3367,9 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.load - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 1056 call $~lib/string/String.__eq end @@ -3381,7 +3381,7 @@ local.get $0 return end - local.get $2 + local.get $1 i32.const -2 i32.and local.set $0 @@ -3422,22 +3422,22 @@ if global.get $~lib/memory/__stack_pointer global.get $~lib/symbol/stringToId - local.tee $10 + local.tee $0 i32.store - local.get $10 + local.get $0 i32.const 1056 call $~lib/util/hash/HASH<~lib/string/String> call $~lib/map/Map<~lib/string/String,usize>#find if global.get $~lib/memory/__stack_pointer global.get $~lib/symbol/stringToId - local.tee $10 + local.tee $0 i32.store - local.get $10 + local.get $0 i32.const 1056 call $~lib/util/hash/HASH<~lib/string/String> call $~lib/map/Map<~lib/string/String,usize>#find - local.tee $10 + local.tee $0 i32.eqz if i32.const 1648 @@ -3447,7 +3447,7 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $0 i32.load offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -3465,56 +3465,56 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $10 + local.tee $0 i32.const 0 i32.store - local.get $10 + local.get $0 i32.const 24 i32.const 3 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $1 i32.store - local.get $10 + local.get $1 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store local.get $0 if - local.get $10 + local.get $1 local.get $0 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $1 i32.const 3 i32.store offset=4 - local.get $10 + local.get $1 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store offset=8 local.get $0 if - local.get $10 + local.get $1 local.get $0 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $1 i32.const 4 i32.store offset=12 - local.get $10 + local.get $1 i32.const 0 i32.store offset=16 - local.get $10 + local.get $1 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $1 global.set $~lib/symbol/stringToId global.get $~lib/memory/__stack_pointer i32.const 4 @@ -3525,56 +3525,56 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $10 + local.tee $0 i32.const 0 i32.store - local.get $10 + local.get $0 i32.const 24 i32.const 4 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $1 i32.store - local.get $10 + local.get $1 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store local.get $0 if - local.get $10 + local.get $1 local.get $0 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $1 i32.const 3 i32.store offset=4 - local.get $10 + local.get $1 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store offset=8 local.get $0 if - local.get $10 + local.get $1 local.get $0 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $1 i32.const 4 i32.store offset=12 - local.get $10 + local.get $1 i32.const 0 i32.store offset=16 - local.get $10 + local.get $1 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $1 global.set $~lib/symbol/idToString end global.get $~lib/symbol/nextId @@ -3590,7 +3590,7 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $~lib/symbol/stringToId - local.tee $10 + local.tee $9 i32.store local.get $0 i32.const 4 @@ -3603,10 +3603,10 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $10 + local.get $9 i32.const 1056 call $~lib/util/hash/HASH<~lib/string/String> - local.tee $4 + local.tee $8 call $~lib/map/Map<~lib/string/String,usize>#find local.tee $0 if @@ -3614,15 +3614,15 @@ local.get $2 i32.store offset=4 else - local.get $10 + local.get $9 i32.load offset=16 - local.get $10 + local.get $9 i32.load offset=12 i32.eq if - local.get $10 + local.get $9 i32.load offset=20 - local.get $10 + local.get $9 i32.load offset=12 i32.const 3 i32.mul @@ -3630,10 +3630,10 @@ i32.div_s i32.lt_s if (result i32) - local.get $10 + local.get $9 i32.load offset=4 else - local.get $10 + local.get $9 i32.load offset=4 i32.const 1 i32.shl @@ -3672,48 +3672,48 @@ i32.shl i32.const 3 i32.div_s - local.tee $3 + local.tee $5 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=4 - local.get $10 + local.get $9 i32.load offset=8 - local.tee $9 - local.get $10 + local.tee $10 + local.get $9 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $8 + local.set $4 local.get $1 local.set $0 loop $while-continue|0 - local.get $8 - local.get $9 + local.get $4 + local.get $10 i32.ne if - local.get $9 + local.get $10 i32.load offset=8 i32.const 1 i32.and i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $10 i32.load - local.tee $5 + local.tee $3 i32.store offset=8 local.get $0 - local.get $5 + local.get $3 i32.store local.get $0 - local.get $9 + local.get $10 i32.load offset=4 i32.store offset=4 local.get $0 - local.get $5 + local.get $3 call $~lib/util/hash/HASH<~lib/string/String> local.get $7 i32.and @@ -3721,10 +3721,10 @@ i32.shl local.get $6 i32.add - local.tee $5 + local.tee $3 i32.load i32.store offset=8 - local.get $5 + local.get $3 local.get $0 i32.store local.get $0 @@ -3732,41 +3732,41 @@ i32.add local.set $0 end - local.get $9 + local.get $10 i32.const 12 i32.add - local.set $9 + local.set $10 br $while-continue|0 end end - local.get $10 + local.get $9 local.get $6 i32.store local.get $6 if - local.get $10 + local.get $9 local.get $6 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $9 local.get $7 i32.store offset=4 - local.get $10 + local.get $9 local.get $1 i32.store offset=8 local.get $1 if - local.get $10 + local.get $9 local.get $1 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $3 + local.get $9 + local.get $5 i32.store offset=12 - local.get $10 - local.get $10 + local.get $9 + local.get $9 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -3775,53 +3775,53 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $9 i32.load offset=8 - local.tee $0 + local.tee $1 i32.store - local.get $10 - local.get $10 + local.get $9 + local.get $9 i32.load offset=16 - local.tee $1 + local.tee $0 i32.const 1 i32.add i32.store offset=16 - local.get $1 + local.get $0 i32.const 12 i32.mul - local.get $0 + local.get $1 i32.add - local.tee $0 + local.tee $1 i32.const 1056 i32.store - local.get $10 + local.get $9 i32.const 1056 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $0 + local.get $1 local.get $2 i32.store offset=4 - local.get $10 - local.get $10 + local.get $9 + local.get $9 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $0 - local.get $10 + local.get $1 + local.get $9 i32.load - local.get $10 + local.get $9 i32.load offset=4 - local.get $4 + local.get $8 i32.and i32.const 2 i32.shl i32.add - local.tee $10 + local.tee $0 i32.load i32.store offset=8 - local.get $10 local.get $0 + local.get $1 i32.store end global.get $~lib/memory/__stack_pointer @@ -3831,7 +3831,7 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $~lib/symbol/idToString - local.tee $10 + local.tee $9 i32.store local.get $0 i32.const 4 @@ -3844,10 +3844,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $10 + local.get $9 i32.load local.get $2 - local.tee $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -3875,8 +3874,8 @@ i32.shr_u local.get $0 i32.xor - local.tee $5 - local.get $10 + local.tee $8 + local.get $9 i32.load offset=4 i32.and i32.const 2 @@ -3890,19 +3889,19 @@ if local.get $0 i32.load offset=8 - local.tee $7 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $7 + local.get $1 i32.const -2 i32.and local.set $0 @@ -3917,20 +3916,20 @@ local.get $0 i32.const 1056 i32.store offset=4 - local.get $10 + local.get $9 i32.const 1056 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link else - local.get $10 + local.get $9 i32.load offset=16 - local.get $10 + local.get $9 i32.load offset=12 i32.eq if - local.get $10 + local.get $9 i32.load offset=20 - local.get $10 + local.get $9 i32.load offset=12 i32.const 3 i32.mul @@ -3938,10 +3937,10 @@ i32.div_s i32.lt_s if (result i32) - local.get $10 + local.get $9 i32.load offset=4 else - local.get $10 + local.get $9 i32.load offset=4 i32.const 1 i32.shl @@ -3977,45 +3976,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $4 + local.tee $5 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $10 + local.get $9 i32.load offset=8 - local.tee $9 - local.get $10 + local.tee $10 + local.get $9 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $3 - local.get $2 + local.set $4 + local.get $1 local.set $0 loop $while-continue|01 - local.get $3 - local.get $9 + local.get $4 + local.get $10 i32.ne if - local.get $9 + local.get $10 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $9 + local.get $10 i32.load - local.tee $8 + local.tee $3 i32.store local.get $0 - local.get $9 + local.get $10 i32.load offset=4 i32.store offset=4 local.get $0 - local.get $8 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -4024,24 +4023,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $8 + local.tee $3 i32.const 15 i32.shr_u - local.get $8 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $8 + local.tee $3 i32.const 13 i32.shr_u - local.get $8 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $8 + local.tee $3 i32.const 16 i32.shr_u - local.get $8 + local.get $3 i32.xor local.get $7 i32.and @@ -4049,10 +4048,10 @@ i32.shl local.get $6 i32.add - local.tee $8 + local.tee $3 i32.load i32.store offset=8 - local.get $8 + local.get $3 local.get $0 i32.store local.get $0 @@ -4060,41 +4059,41 @@ i32.add local.set $0 end - local.get $9 + local.get $10 i32.const 12 i32.add - local.set $9 + local.set $10 br $while-continue|01 end end - local.get $10 + local.get $9 local.get $6 i32.store local.get $6 if - local.get $10 + local.get $9 local.get $6 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $9 local.get $7 i32.store offset=4 - local.get $10 - local.get $2 + local.get $9 + local.get $1 i32.store offset=8 - local.get $2 + local.get $1 if - local.get $10 - local.get $2 + local.get $9 + local.get $1 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $4 + local.get $9 + local.get $5 i32.store offset=12 - local.get $10 - local.get $10 + local.get $9 + local.get $9 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -4103,53 +4102,53 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $9 i32.load offset=8 - local.tee $0 + local.tee $1 i32.store - local.get $10 - local.get $10 + local.get $9 + local.get $9 i32.load offset=16 - local.tee $2 + local.tee $0 i32.const 1 i32.add i32.store offset=16 - local.get $2 + local.get $0 i32.const 12 i32.mul - local.get $0 - i32.add - local.tee $0 local.get $1 + i32.add + local.tee $1 + local.get $2 i32.store - local.get $0 + local.get $1 i32.const 1056 i32.store offset=4 - local.get $10 + local.get $9 i32.const 1056 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $10 - local.get $10 + local.get $9 + local.get $9 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $0 - local.get $10 + local.get $1 + local.get $9 i32.load - local.get $10 + local.get $9 i32.load offset=4 - local.get $5 + local.get $8 i32.and i32.const 2 i32.shl i32.add - local.tee $10 + local.tee $0 i32.load i32.store offset=8 - local.get $10 local.get $0 + local.get $1 i32.store end global.get $~lib/memory/__stack_pointer @@ -4160,7 +4159,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 return end i32.const 19104 @@ -4487,12 +4486,12 @@ end if global.get $~lib/memory/__stack_pointer - local.tee $2 - global.get $~lib/symbol/idToString local.tee $1 + global.get $~lib/symbol/idToString + local.tee $2 i32.store offset=4 - local.get $2 local.get $1 + local.get $2 local.get $0 call $~lib/map/Map#get local.tee $2 @@ -4933,16 +4932,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $3 i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $3 local.get $1 local.get $2 select @@ -4951,7 +4950,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $0 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/typedarray.optimized.wat b/tests/compiler/std/typedarray.optimized.wat index 7190a174a4..698ab1f235 100644 --- a/tests/compiler/std/typedarray.optimized.wat +++ b/tests/compiler/std/typedarray.optimized.wat @@ -770,7 +770,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -793,7 +793,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -803,15 +803,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -852,20 +852,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -960,19 +960,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -997,9 +997,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -1007,17 +1007,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -1305,10 +1305,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -1320,15 +1320,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -1358,7 +1358,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1511,13 +1511,12 @@ unreachable end local.get $1 - local.tee $0 - local.get $0 + local.get $1 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $1 call $~lib/rt/tlsf/insertBlock ) (func $~lib/rt/itcms/step (result i32) @@ -1543,7 +1542,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $1 + local.set $2 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -1560,11 +1559,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -1606,9 +1605,9 @@ if local.get $0 i32.load - local.tee $2 + local.tee $1 if - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -1632,11 +1631,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -1662,7 +1661,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $1 + local.get $2 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -1882,7 +1881,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $1 local.get $0 i32.const 1073741820 i32.gt_u @@ -1908,34 +1907,34 @@ i32.const 4 i32.sub end - local.tee $0 + local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if memory.size - local.tee $2 - local.get $0 + local.tee $0 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $0 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $0 + local.get $3 i32.add else - local.get $0 + local.get $3 end i32.const 4 - local.get $3 + local.get $1 i32.load offset=1568 - local.get $2 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1949,16 +1948,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 - local.get $1 + local.tee $2 + local.get $0 local.get $2 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $1 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1966,18 +1965,18 @@ unreachable end end - local.get $3 - local.get $2 + local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $1 local.get $3 - local.get $0 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1988,11 +1987,11 @@ unreachable end end - local.get $1 + local.get $0 i32.load i32.const -4 i32.and - local.get $0 + local.get $3 i32.lt_u if i32.const 0 @@ -2002,13 +2001,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 local.get $1 + local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $1 - i32.load - local.set $2 local.get $0 + i32.load + local.set $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -2021,65 +2020,65 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 i32.const -4 i32.and - local.get $0 + local.get $3 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if - local.get $1 - local.get $2 + local.get $0 + local.get $4 i32.const 2 i32.and - local.get $0 + local.get $3 i32.or i32.store + local.get $3 local.get $0 - local.get $1 i32.const 4 i32.add i32.add - local.tee $0 - local.get $4 + local.tee $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $1 local.get $3 - local.get $0 call $~lib/rt/tlsf/insertBlock else - local.get $1 - local.get $2 + local.get $0 + local.get $4 i32.const -2 i32.and i32.store - local.get $1 + local.get $0 i32.const 4 i32.add - local.get $1 + local.get $0 i32.load i32.const -4 i32.and i32.add - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.load i32.const -3 i32.and i32.store end - local.get $1 + local.get $0 i32.const 4 i32.add ) (func $~lib/memory/memory.fill (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i64) + (local $3 i64) + (local $4 i32) (local $5 i32) block $~lib/util/memory/memset|inlined.0 local.get $2 @@ -2091,7 +2090,7 @@ local.get $0 local.get $2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.sub local.get $1 @@ -2106,12 +2105,12 @@ local.get $0 local.get $1 i32.store8 offset=2 - local.get $3 + local.get $4 i32.const 2 i32.sub local.get $1 i32.store8 - local.get $3 + local.get $4 i32.const 3 i32.sub local.get $1 @@ -2123,7 +2122,7 @@ local.get $0 local.get $1 i32.store8 offset=3 - local.get $3 + local.get $4 i32.const 4 i32.sub local.get $1 @@ -2138,19 +2137,19 @@ i32.sub i32.const 3 i32.and - local.tee $5 + local.tee $4 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 255 i32.and i32.const 16843009 i32.mul - local.tee $0 + local.tee $5 i32.store - local.get $3 + local.get $0 local.get $2 - local.get $5 + local.get $4 i32.sub i32.const -4 i32.and @@ -2159,101 +2158,101 @@ local.tee $1 i32.const 4 i32.sub - local.get $0 + local.get $5 i32.store local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $3 local.get $0 + local.get $5 i32.store offset=4 - local.get $3 local.get $0 + local.get $5 i32.store offset=8 local.get $1 i32.const 12 i32.sub - local.get $0 + local.get $5 i32.store local.get $1 i32.const 8 i32.sub - local.get $0 + local.get $5 i32.store local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $3 local.get $0 + local.get $5 i32.store offset=12 - local.get $3 local.get $0 + local.get $5 i32.store offset=16 - local.get $3 local.get $0 + local.get $5 i32.store offset=20 - local.get $3 local.get $0 + local.get $5 i32.store offset=24 local.get $1 i32.const 28 i32.sub - local.get $0 + local.get $5 i32.store local.get $1 i32.const 24 i32.sub - local.get $0 + local.get $5 i32.store local.get $1 i32.const 20 i32.sub - local.get $0 + local.get $5 i32.store local.get $1 i32.const 16 i32.sub - local.get $0 + local.get $5 i32.store - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.const 4 i32.and i32.const 24 i32.add - local.tee $5 + local.tee $4 i32.add local.set $1 local.get $2 - local.get $5 + local.get $4 i32.sub local.set $2 - local.get $0 + local.get $5 i64.extend_i32_u - local.tee $4 + local.tee $3 i64.const 32 i64.shl - local.get $4 + local.get $3 i64.or - local.set $4 + local.set $3 loop $while-continue|0 local.get $2 i32.const 32 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i64.store local.get $1 - local.get $4 + local.get $3 i64.store offset=8 local.get $1 - local.get $4 + local.get $3 i64.store offset=16 local.get $1 - local.get $4 + local.get $3 i64.store offset=24 local.get $2 i32.const 32 @@ -2340,26 +2339,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -3233,14 +3232,14 @@ i32.shl local.get $0 i32.add - local.tee $7 + local.tee $3 f64.load f64.store local.get $1 i32.const 1 i32.add local.set $1 - local.get $7 + local.get $3 local.get $5 f64.store local.get $2 @@ -3419,13 +3418,13 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i64) - (local $10 i32) - (local $11 i32) + (local $9 f64) + (local $10 f64) + (local $11 i64) (local $12 i32) (local $13 i32) - (local $14 f64) - (local $15 f64) + (local $14 i32) + (local $15 i32) local.get $1 i32.const 48 i32.le_s @@ -3439,11 +3438,10 @@ block $break|0 block $case1|0 local.get $1 - local.tee $4 i32.const 3 i32.ne if - local.get $4 + local.get $1 i32.const 2 i32.eq br_if $case1|0 @@ -3451,17 +3449,17 @@ end local.get $0 f64.load - local.set $15 + local.set $10 local.get $0 f64.load offset=8 - local.set $14 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $14 - local.get $15 - local.get $15 - local.get $14 + local.get $9 + local.get $10 + local.get $10 + local.get $9 local.get $2 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -3470,21 +3468,21 @@ local.tee $1 select f64.store - local.get $15 - local.get $14 + local.get $10 + local.get $9 local.get $1 select - local.set $15 + local.set $10 local.get $0 f64.load offset=16 - local.set $14 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $14 - local.get $15 - local.get $15 - local.get $14 + local.get $9 + local.get $10 + local.get $10 + local.get $9 local.get $2 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -3494,25 +3492,25 @@ select f64.store offset=8 local.get $0 - local.get $15 - local.get $14 + local.get $10 + local.get $9 local.get $1 select f64.store offset=16 end local.get $0 f64.load - local.set $15 + local.set $10 local.get $0 f64.load offset=8 - local.set $14 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $14 - local.get $15 - local.get $15 - local.get $14 + local.get $9 + local.get $10 + local.get $10 + local.get $9 local.get $2 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -3522,8 +3520,8 @@ select f64.store local.get $0 - local.get $15 - local.get $14 + local.get $10 + local.get $9 local.get $1 select f64.store offset=8 @@ -3531,7 +3529,7 @@ end local.get $0 i32.const 0 - local.get $4 + local.get $1 i32.const 1 i32.sub i32.const 0 @@ -3546,14 +3544,14 @@ local.tee $6 i32.const 2 i32.shl - local.tee $7 + local.tee $5 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $12 - local.get $7 + local.tee $14 + local.get $5 i32.add - local.set $11 + local.set $13 i32.const 0 local.set $7 loop $for-loop|1 @@ -3564,7 +3562,7 @@ local.get $7 i32.const 2 i32.shl - local.get $12 + local.get $14 i32.add i32.const -1 i32.store @@ -3579,16 +3577,16 @@ i32.const 3 i32.shl call $~lib/rt/tlsf/__alloc - local.set $10 + local.set $12 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $13 + local.tee $15 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $5 + local.tee $6 i32.const 1 i32.add local.tee $1 @@ -3597,32 +3595,32 @@ if local.get $0 i32.const 0 - local.get $13 + local.get $15 i32.const 31 - local.get $13 + local.get $15 i32.const 31 i32.lt_s select - local.tee $5 + local.tee $6 local.get $1 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $5 - local.get $13 + local.get $6 + local.get $15 i32.lt_s if local.get $0 - local.get $5 + local.get $6 i32.const 1 i32.add - local.tee $6 - local.get $13 + local.tee $5 + local.get $15 local.get $2 call $~lib/util/sort/extendRunRight local.tee $7 - local.get $6 + local.get $5 i32.sub i32.const 1 i32.add @@ -3631,14 +3629,14 @@ i32.lt_s if local.get $0 - local.get $6 - local.get $13 - local.get $6 + local.get $5 + local.get $15 + local.get $5 i32.const 31 i32.add local.tee $1 local.get $1 - local.get $13 + local.get $15 i32.gt_s select local.tee $7 @@ -3647,18 +3645,18 @@ call $~lib/util/sort/insertionSort end local.get $3 - local.get $6 + local.get $5 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $15 i32.const 1 i32.add i64.extend_i32_u - local.tee $9 + local.tee $11 i64.div_u - local.get $6 + local.get $5 local.get $7 i32.add i32.const 1 @@ -3666,7 +3664,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $9 + local.get $11 i64.div_u i64.xor i32.wrap_i64 @@ -3682,7 +3680,7 @@ local.get $8 i32.const 2 i32.shl - local.get $12 + local.get $14 i32.add i32.load local.tee $4 @@ -3691,7 +3689,7 @@ if local.get $0 local.get $4 - local.get $11 + local.get $13 local.get $8 i32.const 2 i32.shl @@ -3700,12 +3698,12 @@ i32.load i32.const 1 i32.add - local.get $5 - local.get $10 + local.get $6 + local.get $12 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $12 + local.get $14 i32.add i32.const -1 i32.store @@ -3719,7 +3717,7 @@ br $for-loop|3 end end - local.get $12 + local.get $14 local.get $1 i32.const 2 i32.shl @@ -3728,14 +3726,14 @@ local.get $3 i32.store local.get $4 - local.get $11 + local.get $13 i32.add - local.get $5 - i32.store local.get $6 + i32.store + local.get $5 local.set $3 local.get $7 - local.set $5 + local.set $6 local.get $1 local.set $4 br $while-continue|2 @@ -3747,7 +3745,7 @@ local.get $4 i32.const 2 i32.shl - local.get $12 + local.get $14 i32.add i32.load local.tee $1 @@ -3759,13 +3757,13 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $13 i32.add i32.load i32.const 1 i32.add - local.get $13 - local.get $10 + local.get $15 + local.get $12 local.get $2 call $~lib/util/sort/mergeRuns end @@ -3776,10 +3774,10 @@ br $for-loop|4 end end - local.get $10 - call $~lib/rt/tlsf/__free local.get $12 call $~lib/rt/tlsf/__free + local.get $14 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 f64) (param $1 f64) (result i32) (local $2 i64) @@ -3906,67 +3904,64 @@ ) (func $~lib/typedarray/Int8Array#fill (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (local $4 i32) - (local $5 i32) - local.get $1 - local.set $4 local.get $0 i32.load offset=4 - local.set $5 + local.set $4 local.get $0 i32.load offset=8 - local.set $1 + local.set $0 local.get $2 i32.const 0 i32.lt_s if (result i32) - local.get $1 + local.get $0 local.get $2 i32.add - local.tee $0 + local.tee $2 i32.const 0 - local.get $0 + local.get $2 i32.const 0 i32.gt_s select else local.get $2 - local.get $1 - local.get $1 + local.get $0 + local.get $0 local.get $2 i32.gt_s select end - local.tee $0 + local.tee $2 local.get $3 i32.const 0 i32.lt_s if (result i32) - local.get $1 + local.get $0 local.get $3 i32.add - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select else local.get $3 - local.get $1 - local.get $1 + local.get $0 + local.get $0 local.get $3 i32.gt_s select end - local.tee $1 + local.tee $0 i32.lt_s if - local.get $0 - local.get $5 - i32.add + local.get $2 local.get $4 + i32.add local.get $1 local.get $0 + local.get $2 i32.sub call $~lib/memory/memory.fill end @@ -3984,17 +3979,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -4140,19 +4135,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -4167,7 +4162,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -4178,10 +4173,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -4189,10 +4184,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -4203,7 +4198,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -4258,7 +4253,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -4269,10 +4264,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -4280,10 +4275,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -4294,7 +4289,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -4320,17 +4315,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -4345,7 +4340,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -4356,10 +4351,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -4367,10 +4362,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -4381,7 +4376,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -4418,131 +4413,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -4559,59 +4558,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -5023,10 +5026,10 @@ local.get $4 i32.lt_s select - local.set $5 + local.set $3 local.get $0 i32.load offset=4 - local.tee $3 + local.tee $5 local.get $1 i32.const 0 i32.lt_s @@ -5076,14 +5079,14 @@ local.tee $2 i32.const 2 i32.shl - local.get $3 - i32.add local.get $5 + i32.add + local.get $3 i32.const 0 i32.lt_s if (result i32) + local.get $3 local.get $4 - local.get $5 i32.add local.tee $3 i32.const 0 @@ -5092,11 +5095,11 @@ i32.gt_s select else - local.get $5 + local.get $3 local.get $4 + local.get $3 local.get $4 - local.get $5 - i32.gt_s + i32.lt_s select end local.get $2 @@ -5839,7 +5842,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $2 + local.tee $3 i32.load i32.const -4 i32.and @@ -5848,28 +5851,28 @@ local.get $1 i32.ge_u if - local.get $2 + local.get $3 local.get $1 i32.store offset=16 local.get $0 return end local.get $1 - local.get $2 + local.get $3 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.load offset=16 - local.tee $2 + local.tee $0 + local.get $0 local.get $1 - local.get $2 - i32.lt_u + i32.gt_u select call $~lib/memory/memory.copy - local.get $3 + local.get $2 ) (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint8Array,u8>~anonymous|0 (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 @@ -6086,7 +6089,7 @@ local.get $1 i32.const -2147483648 i32.and - local.set $4 + local.set $3 local.get $2 if (result i32) local.get $1 @@ -6163,32 +6166,32 @@ i32.const 8 i32.shl i32.clz - local.tee $3 + local.tee $2 i32.sub - local.set $2 + local.set $4 local.get $1 - local.get $3 + local.get $2 i32.shl local.set $1 - local.get $2 + local.get $4 i32.const 0 i32.gt_s if (result i32) local.get $1 i32.const 8388608 i32.sub - local.get $2 + local.get $4 i32.const 23 i32.shl i32.or else local.get $1 i32.const 1 - local.get $2 + local.get $4 i32.sub i32.shr_u end - local.get $4 + local.get $3 i32.or f32.reinterpret_i32 end @@ -6238,7 +6241,7 @@ local.get $3 i64.const 63 i64.shr_u - local.set $6 + local.set $5 local.get $4 i64.eqz if (result i64) @@ -6316,32 +6319,32 @@ i64.const 11 i64.shl i64.clz - local.tee $5 + local.tee $4 i64.sub - local.set $4 + local.set $6 local.get $3 - local.get $5 + local.get $4 i64.shl local.set $3 - local.get $4 + local.get $6 i64.const 0 i64.gt_s if (result i64) local.get $3 i64.const 4503599627370496 i64.sub - local.get $4 + local.get $6 i64.const 52 i64.shl i64.or else local.get $3 i64.const 1 - local.get $4 + local.get $6 i64.sub i64.shr_u end - local.get $6 + local.get $5 i64.const 63 i64.shl i64.or @@ -6353,78 +6356,78 @@ (func $~lib/typedarray/Int8Array#reverse (param $0 i32) (result i32) (local $1 i32) (local $2 i32) - (local $3 i32) + (local $3 i64) (local $4 i32) (local $5 i32) - (local $6 i64) - (local $7 i64) - (local $8 i32) + (local $6 i32) + (local $7 i32) + (local $8 i64) local.get $0 i32.load offset=4 - local.set $5 + local.set $2 local.get $0 i32.load offset=8 - local.tee $2 + local.tee $5 i32.const 1 i32.gt_u if - local.get $2 + local.get $5 i32.const 1 i32.shr_u - local.set $8 - local.get $2 + local.set $4 + local.get $5 i32.const 8 i32.sub - local.set $3 + local.set $6 loop $while-continue|0 - local.get $8 + local.get $4 local.get $1 i32.const 7 i32.add i32.gt_u if local.get $1 - local.get $5 + local.get $2 i32.add - local.tee $4 + local.tee $7 i64.load - local.tee $6 + local.tee $3 i64.const 8 i64.shr_u i64.const 71777214294589695 i64.and - local.get $6 + local.get $3 i64.const 71777214294589695 i64.and i64.const 8 i64.shl i64.or - local.set $6 - local.get $4 - local.get $3 - local.get $5 + local.set $3 + local.get $7 + local.get $2 + local.get $6 i32.add local.get $1 i32.sub - local.tee $4 - i64.load local.tee $7 + i64.load + local.tee $8 i64.const 8 i64.shr_u i64.const 71777214294589695 i64.and - local.get $7 + local.get $8 i64.const 71777214294589695 i64.and i64.const 8 i64.shl i64.or - local.tee $7 + local.tee $8 i64.const 16 i64.shr_u i64.const 281470681808895 i64.and - local.get $7 + local.get $8 i64.const 281470681808895 i64.and i64.const 16 @@ -6433,13 +6436,13 @@ i64.const 32 i64.rotr i64.store - local.get $4 - local.get $6 + local.get $7 + local.get $3 i64.const 16 i64.shr_u i64.const 281470681808895 i64.and - local.get $6 + local.get $3 i64.const 281470681808895 i64.and i64.const 16 @@ -6455,32 +6458,32 @@ br $while-continue|0 end end - local.get $2 + local.get $5 i32.const 1 i32.sub - local.set $2 + local.set $5 loop $while-continue|1 local.get $1 - local.get $8 + local.get $4 i32.lt_u if local.get $1 - local.get $5 + local.get $2 i32.add - local.tee $3 + local.tee $6 i32.load8_u - local.set $4 - local.get $3 - local.get $2 + local.set $7 + local.get $6 + local.get $5 local.get $1 i32.sub - local.get $5 + local.get $2 i32.add - local.tee $3 + local.tee $6 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $6 + local.get $7 i32.store8 local.get $1 i32.const 1 @@ -6500,58 +6503,57 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) local.get $0 i32.load offset=4 - local.set $3 + local.set $2 local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $2 + local.tee $5 i32.const 1 i32.gt_u if - local.get $2 + local.get $5 i32.const 1 i32.shr_u - local.set $7 - local.get $2 + local.set $3 + local.get $5 i32.const 2 i32.sub - local.set $4 + local.set $6 loop $while-continue|0 - local.get $7 + local.get $3 local.get $1 i32.const 1 i32.add i32.gt_u if - local.get $4 + local.get $6 local.get $1 i32.sub i32.const 1 i32.shl - local.get $3 + local.get $2 i32.add - local.tee $5 + local.tee $7 i32.load i32.const 16 i32.rotr - local.set $8 - local.get $5 + local.set $4 + local.get $7 local.get $1 i32.const 1 i32.shl - local.get $3 + local.get $2 i32.add - local.tee $6 + local.tee $7 i32.load i32.const 16 i32.rotr i32.store - local.get $6 - local.get $8 + local.get $7 + local.get $4 i32.store local.get $1 i32.const 2 @@ -6560,36 +6562,36 @@ br $while-continue|0 end end - local.get $2 + local.get $5 i32.const 1 i32.sub - local.set $6 + local.set $4 loop $while-continue|1 local.get $1 - local.get $7 + local.get $3 i32.lt_u if local.get $1 i32.const 1 i32.shl - local.get $3 + local.get $2 i32.add - local.tee $2 + local.tee $5 i32.load16_u - local.set $4 - local.get $2 - local.get $6 + local.set $6 + local.get $5 + local.get $4 local.get $1 i32.sub i32.const 1 i32.shl - local.get $3 + local.get $2 i32.add local.tee $5 i32.load16_u i32.store16 local.get $5 - local.get $4 + local.get $6 i32.store16 local.get $1 i32.const 1 @@ -7126,26 +7128,26 @@ global.set $~argumentsLength local.get $2 i32.load offset=8 - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -7188,26 +7190,26 @@ global.set $~argumentsLength local.get $2 i32.load offset=8 - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.05 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.05 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -7253,26 +7255,26 @@ global.set $~argumentsLength local.get $2 i32.load offset=8 - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.011 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.011 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -7318,26 +7320,26 @@ global.set $~argumentsLength local.get $2 i32.load offset=8 - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.017 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.017 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -8062,24 +8064,24 @@ block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.062 local.get $2 i32.load offset=8 - local.tee $4 + local.tee $3 i32.const 2 i32.le_s i32.const 1 - local.get $4 + local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.062 local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|063 local.get $0 - local.get $4 + local.get $3 i32.lt_s if local.get $0 local.tee $1 - local.get $2 + local.get $4 i32.add i32.load8_u i32.const 5 @@ -8637,26 +8639,26 @@ global.set $~argumentsLength local.get $2 i32.load offset=8 - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -8699,26 +8701,26 @@ global.set $~argumentsLength local.get $2 i32.load offset=8 - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -8764,26 +8766,26 @@ global.set $~argumentsLength local.get $2 i32.load offset=8 - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.011 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.011 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -8829,26 +8831,26 @@ global.set $~argumentsLength local.get $2 i32.load offset=8 - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -9572,24 +9574,24 @@ block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.062 local.get $2 i32.load offset=8 - local.tee $4 + local.tee $3 i32.const 2 i32.le_s i32.const 1 - local.get $4 + local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.062 local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|063 local.get $0 - local.get $4 + local.get $3 i32.lt_s if local.get $0 local.tee $1 - local.get $2 + local.get $4 i32.add i32.load8_u i32.const 5 @@ -10147,26 +10149,26 @@ global.set $~argumentsLength local.get $2 i32.load offset=8 - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -10209,26 +10211,26 @@ global.set $~argumentsLength local.get $2 i32.load offset=8 - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -10274,26 +10276,26 @@ global.set $~argumentsLength local.get $2 i32.load offset=8 - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.011 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.011 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -10339,26 +10341,26 @@ global.set $~argumentsLength local.get $2 i32.load offset=8 - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -11082,24 +11084,24 @@ block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.062 local.get $2 i32.load offset=8 - local.tee $4 + local.tee $3 i32.const 2 i32.le_s i32.const 1 - local.get $4 + local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.062 local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|063 local.get $0 - local.get $4 + local.get $3 i32.lt_s if local.get $0 local.tee $1 - local.get $2 + local.get $4 i32.add i32.load8_u i32.const 5 @@ -11690,26 +11692,26 @@ i32.load offset=8 i32.const 1 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -11756,26 +11758,26 @@ i32.load offset=8 i32.const 1 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.05 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.05 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -11825,26 +11827,26 @@ i32.load offset=8 i32.const 1 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.011 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.011 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -11894,26 +11896,26 @@ i32.load offset=8 i32.const 1 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.017 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.017 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -12687,26 +12689,26 @@ i32.load offset=8 i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 i32.const 2 i32.le_u i32.const 1 - local.get $4 + local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.062 local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|063 local.get $0 - local.get $4 + local.get $3 i32.lt_s if local.get $0 local.tee $1 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 5 @@ -13298,26 +13300,26 @@ i32.load offset=8 i32.const 1 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -13364,26 +13366,26 @@ i32.load offset=8 i32.const 1 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.05 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.05 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -13433,26 +13435,26 @@ i32.load offset=8 i32.const 1 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.011 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.011 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -13502,26 +13504,26 @@ i32.load offset=8 i32.const 1 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.017 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.017 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -14295,26 +14297,26 @@ i32.load offset=8 i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 i32.const 2 i32.le_u i32.const 1 - local.get $4 + local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.062 local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|063 local.get $0 - local.get $4 + local.get $3 i32.lt_s if local.get $0 local.tee $1 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 5 @@ -14904,26 +14906,26 @@ i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -14970,26 +14972,26 @@ i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.05 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.05 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -15039,26 +15041,26 @@ i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.011 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.011 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -15108,26 +15110,26 @@ i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.017 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.017 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -15902,26 +15904,26 @@ i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 + local.tee $3 i32.const 2 i32.le_u i32.const 1 - local.get $4 + local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.062 local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|063 local.get $0 - local.get $4 + local.get $3 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $4 i32.add i32.load i32.const 5 @@ -16511,26 +16513,26 @@ i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -16577,26 +16579,26 @@ i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.05 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.05 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -16646,26 +16648,26 @@ i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.011 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.011 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -16715,26 +16717,26 @@ i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.017 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.017 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -17508,26 +17510,26 @@ i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 + local.tee $3 i32.const 2 i32.le_u i32.const 1 - local.get $4 + local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.062 local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|063 local.get $0 - local.get $4 + local.get $3 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $4 i32.add i32.load i32.const 5 @@ -18118,26 +18120,26 @@ i32.load offset=8 i32.const 3 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -18184,26 +18186,26 @@ i32.load offset=8 i32.const 3 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.05 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.05 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -18253,26 +18255,26 @@ i32.load offset=8 i32.const 3 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.011 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.011 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -18322,26 +18324,26 @@ i32.load offset=8 i32.const 3 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.017 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.017 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -19115,26 +19117,26 @@ i32.load offset=8 i32.const 3 i32.shr_u - local.tee $4 + local.tee $3 i32.const 2 i32.le_u i32.const 1 - local.get $4 + local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.062 local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|063 local.get $0 - local.get $4 + local.get $3 i32.lt_s if local.get $0 local.tee $1 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 5 @@ -19725,26 +19727,26 @@ i32.load offset=8 i32.const 3 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -19791,26 +19793,26 @@ i32.load offset=8 i32.const 3 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.05 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.05 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -19860,26 +19862,26 @@ i32.load offset=8 i32.const 3 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.011 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.011 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -19929,26 +19931,26 @@ i32.load offset=8 i32.const 3 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.017 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.017 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -20722,26 +20724,26 @@ i32.load offset=8 i32.const 3 i32.shr_u - local.tee $4 + local.tee $3 i32.const 2 i32.le_u i32.const 1 - local.get $4 + local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.062 local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|063 local.get $0 - local.get $4 + local.get $3 i32.lt_s if local.get $0 local.tee $1 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 5 @@ -21333,26 +21335,26 @@ i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -21400,26 +21402,26 @@ i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.05 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.05 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -21469,26 +21471,26 @@ i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.011 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.011 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -21538,26 +21540,26 @@ i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.017 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.017 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -22331,26 +22333,26 @@ i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 + local.tee $3 i32.const 2 i32.le_u i32.const 1 - local.get $4 + local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.062 local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|063 local.get $0 - local.get $4 + local.get $3 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $4 i32.add f32.load f32.const 5 @@ -22942,26 +22944,26 @@ i32.load offset=8 i32.const 3 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -23009,26 +23011,26 @@ i32.load offset=8 i32.const 3 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.05 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.05 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -23078,26 +23080,26 @@ i32.load offset=8 i32.const 3 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.011 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.011 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -23147,26 +23149,26 @@ i32.load offset=8 i32.const 3 i32.shr_u - local.tee $4 - local.set $0 + local.tee $0 + local.set $4 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.017 - local.get $4 + local.get $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.017 local.get $0 local.get $4 i32.add - local.get $4 + local.get $0 i32.const 1 i32.sub - local.get $0 + local.get $4 local.get $0 local.get $4 - i32.ge_s + i32.le_s select - local.get $0 + local.get $4 i32.const 0 i32.lt_s select @@ -23941,26 +23943,26 @@ i32.load offset=8 i32.const 3 i32.shr_u - local.tee $4 + local.tee $3 i32.const 2 i32.le_u i32.const 1 - local.get $4 + local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.062 local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|063 local.get $0 - local.get $4 + local.get $3 i32.lt_s if local.get $0 local.tee $1 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add f64.load f64.const 5 @@ -24135,58 +24137,58 @@ end local.get $1 i32.extend8_s - local.tee $3 local.tee $1 + local.tee $3 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $3 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $3 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $3 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $3 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $3 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $3 local.get $0 - local.get $3 local.get $1 local.get $2 + local.get $3 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut @@ -24439,14 +24441,14 @@ if local.get $3 i32.load16_u - local.tee $2 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $2 i32.ne if - local.get $2 local.get $4 + local.get $2 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -24486,59 +24488,59 @@ local.get $1 i32.const 255 i32.and - local.tee $2 local.tee $1 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $2 local.get $0 - local.get $2 local.get $1 + local.get $2 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $2 ) (func $~lib/typedarray/Uint8Array#join (param $0 i32) (result i32) (local $1 i32) @@ -24736,58 +24738,58 @@ end local.get $1 i32.extend16_s - local.tee $3 local.tee $1 + local.tee $3 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $3 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $3 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $3 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $3 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $3 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $3 local.get $0 - local.get $3 local.get $1 local.get $2 + local.get $3 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut @@ -24977,59 +24979,59 @@ local.get $1 i32.const 65535 i32.and - local.tee $2 local.tee $1 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $2 local.get $0 - local.get $2 local.get $1 + local.get $2 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $2 ) (func $~lib/typedarray/Uint16Array#join (param $0 i32) (result i32) (local $1 i32) @@ -25230,47 +25232,46 @@ local.get $0 local.get $1 local.get $1 - local.tee $0 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -25461,47 +25462,46 @@ local.get $0 local.get $1 local.get $1 - local.tee $0 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -25685,7 +25685,7 @@ local.get $2 i32.const 4 i32.sub - local.tee $2 + local.tee $4 i32.const 1 i32.shl local.get $0 @@ -25702,7 +25702,7 @@ local.tee $3 i32.const 10000 i32.rem_u - local.tee $4 + local.tee $2 i32.const 100 i32.div_u i32.const 2 @@ -25710,7 +25710,7 @@ i32.const 8012 i32.add i64.load32_u - local.get $4 + local.get $2 i32.const 100 i32.rem_u i32.const 2 @@ -25722,7 +25722,7 @@ i64.shl i64.or i64.store - local.get $2 + local.get $4 i32.const 4 i32.sub local.tee $2 @@ -25769,7 +25769,7 @@ local.get $1 i64.const 0 i64.lt_s - local.tee $3 + local.tee $2 if local.get $0 i32.const 45 @@ -25783,7 +25783,7 @@ i64.const 10 i64.lt_u if - local.get $3 + local.get $2 i32.const 1 i32.shl local.get $0 @@ -25792,7 +25792,7 @@ i64.const 48 i64.or i64.store16 - local.get $3 + local.get $2 i32.const 1 i32.add return @@ -25803,58 +25803,58 @@ if local.get $1 i32.wrap_i64 + local.tee $3 local.tee $4 - local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $4 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $4 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $4 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $4 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $4 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 + local.set $4 local.get $0 - local.get $4 - local.get $2 local.get $3 + local.get $2 + local.get $4 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut @@ -25911,7 +25911,7 @@ i32.add end end - local.get $3 + local.get $2 i32.add local.tee $0 call $~lib/util/number/utoa64_dec_lut @@ -26003,7 +26003,7 @@ i64.const 63 i64.shr_u i32.wrap_i64 - local.tee $3 + local.tee $1 select local.tee $2 i64.const 4294967295 @@ -26012,7 +26012,7 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.wrap_i64 - local.tee $6 + local.tee $3 local.tee $0 i32.const 100000 i32.lt_u @@ -26059,9 +26059,9 @@ i32.add end end - local.get $3 + local.get $1 i32.add - local.tee $1 + local.tee $4 i32.const 1 i32.shl i32.const 1 @@ -26069,8 +26069,8 @@ local.tee $0 i32.store local.get $0 - local.get $6 - local.get $1 + local.get $3 + local.get $4 call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer @@ -26124,9 +26124,9 @@ i32.add end end - local.get $3 + local.get $1 i32.add - local.tee $1 + local.tee $3 i32.const 1 i32.shl i32.const 1 @@ -26135,10 +26135,10 @@ i32.store local.get $0 local.get $2 - local.get $1 + local.get $3 call $~lib/util/number/utoa64_dec_lut end - local.get $3 + local.get $1 if local.get $0 i32.const 45 @@ -26157,13 +26157,13 @@ i32.load i32.const 1 i32.shr_u - local.tee $7 + local.tee $6 i32.const 21 i32.add i32.mul i32.const 21 i32.add - local.tee $6 + local.tee $7 i32.const 1 i32.shl i32.const 1 @@ -26190,7 +26190,7 @@ local.get $0 i32.add local.set $0 - local.get $7 + local.get $6 if local.get $0 i32.const 1 @@ -26198,12 +26198,12 @@ local.get $1 i32.add i32.const 9584 - local.get $7 + local.get $6 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $7 + local.get $6 i32.add local.set $0 end @@ -26214,7 +26214,7 @@ br $for-loop|0 end end - local.get $6 + local.get $7 local.get $0 i32.const 1 i32.shl @@ -26403,7 +26403,7 @@ (local $7 i32) local.get $0 i32.load offset=4 - local.set $4 + local.set $3 local.get $0 i32.load offset=8 i32.const 3 @@ -26427,7 +26427,7 @@ local.get $1 i32.const 1 i32.sub - local.tee $3 + local.tee $7 i32.const 0 i32.lt_s if @@ -26440,10 +26440,10 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $3 + local.get $7 i32.eqz if - local.get $4 + local.get $3 i64.load local.set $2 global.get $~lib/memory/__stack_pointer @@ -26476,7 +26476,7 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.wrap_i64 - local.tee $3 + local.tee $1 local.tee $0 i32.const 100000 i32.lt_u @@ -26523,7 +26523,7 @@ i32.add end end - local.tee $1 + local.tee $3 i32.const 1 i32.shl i32.const 1 @@ -26531,8 +26531,8 @@ local.tee $0 i32.store local.get $0 - local.get $3 local.get $1 + local.get $3 call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer @@ -26606,18 +26606,18 @@ br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.const 9580 i32.load i32.const 1 i32.shr_u - local.tee $5 + local.tee $4 i32.const 20 i32.add i32.mul i32.const 20 i32.add - local.tee $7 + local.tee $6 i32.const 1 i32.shl i32.const 1 @@ -26625,26 +26625,26 @@ local.tee $1 i32.store loop $for-loop|0 - local.get $3 - local.get $6 - i32.gt_s + local.get $5 + local.get $7 + i32.lt_s if local.get $0 i32.const 1 i32.shl local.get $1 i32.add - local.get $6 + local.get $5 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add i64.load call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $5 + local.get $4 if local.get $0 i32.const 1 @@ -26652,32 +26652,32 @@ local.get $1 i32.add i32.const 9584 - local.get $5 + local.get $4 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $5 + local.get $4 i32.add local.set $0 end - local.get $6 + local.get $5 i32.const 1 i32.add - local.set $6 + local.set $5 br $for-loop|0 end end - local.get $7 + local.get $6 local.get $0 i32.const 1 i32.shl local.get $1 i32.add - local.get $3 + local.get $7 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add i64.load call $~lib/util/number/itoa_buffered @@ -26974,7 +26974,7 @@ i32.shl local.get $0 i32.add - local.tee $6 + local.tee $0 i32.load16_u local.set $3 loop $while-continue|3 @@ -27017,7 +27017,7 @@ br $while-continue|3 end end - local.get $6 + local.get $0 local.get $3 i32.store16 local.get $5 @@ -27099,7 +27099,7 @@ i32.shl local.get $0 i32.add - local.tee $6 + local.tee $0 i32.load16_u local.set $3 loop $while-continue|6 @@ -27142,7 +27142,7 @@ br $while-continue|6 end end - local.get $6 + local.get $0 local.get $3 i32.store16 local.get $5 @@ -27151,7 +27151,6 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) local.get $2 i32.eqz if @@ -27170,17 +27169,17 @@ local.get $1 local.get $2 i32.add - local.tee $4 + local.tee $3 i32.const 21 i32.le_s local.get $1 - local.get $4 + local.get $3 i32.le_s i32.and if (result i32) loop $for-loop|0 local.get $1 - local.get $4 + local.get $3 i32.lt_s if local.get $1 @@ -27197,26 +27196,26 @@ br $for-loop|0 end end - local.get $4 + local.get $3 i32.const 1 i32.shl local.get $0 i32.add i32.const 3145774 i32.store - local.get $4 + local.get $3 i32.const 2 i32.add else - local.get $4 + local.get $3 i32.const 21 i32.le_s - local.get $4 + local.get $3 i32.const 0 i32.gt_s i32.and if (result i32) - local.get $4 + local.get $3 i32.const 1 i32.shl local.get $0 @@ -27238,18 +27237,18 @@ i32.const 1 i32.add else - local.get $4 + local.get $3 i32.const 0 i32.le_s - local.get $4 + local.get $3 i32.const -6 i32.gt_s i32.and if (result i32) i32.const 2 - local.get $4 + local.get $3 i32.sub - local.tee $5 + local.tee $3 i32.const 1 i32.shl local.get $0 @@ -27266,7 +27265,7 @@ local.set $2 loop $for-loop|1 local.get $2 - local.get $5 + local.get $3 i32.lt_s if local.get $2 @@ -27284,7 +27283,7 @@ end end local.get $1 - local.get $5 + local.get $3 i32.add else local.get $1 @@ -27295,16 +27294,16 @@ i32.const 101 i32.store16 offset=2 local.get $0 - local.tee $3 + local.tee $1 i32.const 4 i32.add - local.get $4 + local.get $3 i32.const 1 i32.sub local.tee $0 i32.const 0 i32.lt_s - local.tee $2 + local.tee $3 if i32.const 0 local.get $0 @@ -27312,63 +27311,62 @@ local.set $0 end local.get $0 - local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $4 local.get $0 - local.get $1 + local.get $4 i32.const 1 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $3 + local.get $1 i32.const 45 i32.const 43 - local.get $2 + local.get $3 select i32.store16 offset=4 local.get $0 @@ -27394,20 +27392,19 @@ local.get $0 local.get $2 i32.add - local.tee $0 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $0 - local.tee $3 + local.get $2 i32.const 4 i32.add - local.get $4 + local.get $3 i32.const 1 i32.sub local.tee $0 i32.const 0 i32.lt_s - local.tee $5 + local.tee $3 if i32.const 0 local.get $0 @@ -27415,63 +27412,62 @@ local.set $0 end local.get $0 - local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 + local.set $5 local.get $0 - local.get $2 + local.get $5 i32.const 1 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $3 + local.get $2 i32.const 45 i32.const 43 - local.get $5 + local.get $3 select i32.store16 offset=4 local.get $0 @@ -27501,7 +27497,7 @@ local.get $1 f64.const 0 f64.lt - local.tee $8 + local.tee $3 if (result f64) local.get $0 i32.const 45 @@ -27518,11 +27514,11 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.set $3 + local.set $7 local.get $2 i64.const 4503599627370495 i64.and - local.get $3 + local.get $7 i32.const 0 i32.ne i64.extend_i32_u @@ -27530,13 +27526,13 @@ i64.shl i64.add local.set $2 - local.get $3 + local.get $7 i32.const 1 - local.get $3 + local.get $7 select i32.const 1075 i32.sub - local.tee $3 + local.tee $7 i32.const 1 i32.sub local.get $2 @@ -27544,14 +27540,14 @@ i64.shl i64.const 1 i64.add - local.tee $5 + local.tee $4 i64.clz i32.wrap_i64 - local.tee $7 + local.tee $8 i32.sub local.set $9 - local.get $5 - local.get $7 + local.get $4 + local.get $8 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -27561,13 +27557,13 @@ i64.eq i32.const 1 i32.add - local.tee $7 + local.tee $8 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $3 local.get $7 + local.get $8 i32.sub local.get $9 i32.sub @@ -27579,7 +27575,7 @@ i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $9 + local.tee $7 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -27588,9 +27584,9 @@ f64.add local.tee $1 i32.trunc_f64_s - local.tee $3 + local.tee $8 local.get $1 - local.get $3 + local.get $8 f64.convert_i32_s f64.ne i32.add @@ -27598,18 +27594,18 @@ i32.shr_s i32.const 1 i32.add - local.tee $3 + local.tee $8 i32.const 3 i32.shl - local.tee $7 + local.tee $9 i32.sub global.set $~lib/util/number/_K - local.get $7 + local.get $9 i32.const 9864 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $3 + local.get $8 i32.const 1 i32.shl i32.const 10560 @@ -27620,62 +27616,62 @@ local.get $2 i64.clz i64.shl - local.tee $2 + local.tee $4 i64.const 4294967295 i64.and - local.set $11 - local.get $2 + local.set $2 + local.get $4 i64.const 32 i64.shr_u - local.tee $14 + local.tee $6 global.get $~lib/util/number/_frc_pow local.tee $5 i64.const 4294967295 i64.and - local.tee $2 + local.tee $10 local.tee $4 i64.mul + local.get $2 local.get $4 - local.get $11 i64.mul i64.const 32 i64.shr_u i64.add - local.set $12 + local.set $4 local.get $5 i64.const 32 i64.shr_u - local.tee $5 - local.set $13 + local.tee $11 + local.set $5 global.get $~lib/util/number/_frc_plus - local.tee $4 + local.tee $12 i64.const 4294967295 i64.and - local.set $6 - local.get $4 + local.set $13 + local.get $12 i64.const 32 i64.shr_u - local.tee $10 - local.get $2 + local.tee $12 + local.get $10 i64.mul - local.get $2 - local.get $6 + local.get $10 + local.get $13 i64.mul i64.const 32 i64.shr_u i64.add - local.set $4 - local.get $5 - local.get $10 + local.set $14 + local.get $11 + local.get $12 i64.mul - local.get $4 + local.get $14 i64.const 32 i64.shr_u i64.add - local.get $5 - local.get $6 + local.get $11 + local.get $13 i64.mul - local.get $4 + local.get $14 i64.const 4294967295 i64.and i64.add @@ -27686,42 +27682,42 @@ i64.add i64.const 1 i64.sub - local.set $4 + local.set $12 global.get $~lib/util/number/_frc_minus - local.tee $6 + local.tee $13 i64.const 4294967295 i64.and - local.set $10 - local.get $6 + local.set $14 + local.get $13 i64.const 32 i64.shr_u - local.tee $6 - local.get $2 + local.tee $13 + local.get $10 i64.mul - local.get $2 local.get $10 + local.get $14 i64.mul i64.const 32 i64.shr_u i64.add - local.set $2 - local.get $8 + local.set $10 + local.get $3 i32.const 1 i32.shl local.get $0 i32.add local.get $0 - local.get $13 - local.get $14 + local.get $5 + local.get $6 i64.mul - local.get $12 + local.get $4 i64.const 32 i64.shr_u i64.add - local.get $11 - local.get $13 + local.get $2 + local.get $5 i64.mul - local.get $12 + local.get $4 i64.const 4294967295 i64.and i64.add @@ -27730,24 +27726,24 @@ i64.const 32 i64.shr_u i64.add - local.get $4 + local.get $12 global.get $~lib/util/number/_exp_pow - local.get $9 + local.get $7 i32.add i32.const -64 i32.sub - local.get $4 - local.get $5 - local.get $6 + local.get $12 + local.get $11 + local.get $13 i64.mul - local.get $2 + local.get $10 i64.const 32 i64.shr_u i64.add - local.get $5 - local.get $10 + local.get $11 + local.get $14 i64.mul - local.get $2 + local.get $10 i64.const 4294967295 i64.and i64.add @@ -27759,13 +27755,13 @@ i64.const 1 i64.add i64.sub - local.get $8 + local.get $3 call $~lib/util/number/genDigits - local.get $8 + local.get $3 i32.sub global.get $~lib/util/number/_K call $~lib/util/number/prettify - local.get $8 + local.get $3 i32.add ) (func $~lib/util/number/dtoa_buffered (param $0 i32) (param $1 f64) (result i32) @@ -28305,25 +28301,25 @@ end local.get $0 i32.load offset=4 - local.set $0 + local.set $3 i32.const 11012 i32.load - local.set $2 + local.set $0 i32.const 11020 i32.load - local.set $3 + local.set $2 loop $for-loop|0 local.get $1 - local.get $3 + local.get $2 i32.lt_s if - local.get $0 local.get $1 + local.get $3 i32.add local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $0 i32.add i32.load i32.store8 @@ -28359,10 +28355,10 @@ i32.load offset=4 i32.const 6 i32.add - local.set $0 + local.set $3 local.get $1 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=8 i32.const 3 @@ -28373,13 +28369,13 @@ local.get $2 i32.gt_s if - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 3 i32.shl - local.get $3 + local.get $0 i32.add i64.load i64.store8 @@ -28437,10 +28433,10 @@ i32.load offset=4 i32.const 4 i32.add - local.set $0 + local.set $3 local.get $1 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=8 i32.const 1 @@ -28451,13 +28447,13 @@ local.get $2 i32.gt_s if - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.shl - local.get $3 + local.get $0 i32.add i32.load16_s i32.store8 @@ -28497,8 +28493,8 @@ ) (func $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int64Array> (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i64) + (local $4 i64) + (local $5 i32) local.get $2 i32.const 0 i32.lt_s @@ -28534,7 +28530,7 @@ local.set $2 local.get $1 i32.load offset=4 - local.set $4 + local.set $0 local.get $1 i32.load offset=8 i32.const 3 @@ -28551,20 +28547,20 @@ local.get $3 i32.const 3 i32.shl - local.get $4 + local.get $0 i32.add i64.load - local.tee $5 + local.tee $4 i32.wrap_i64 - local.tee $0 + local.tee $5 i32.const 31 i32.shr_s i32.const -1 i32.xor i64.extend_i32_s - local.get $5 + local.get $4 i32.const 255 - local.get $0 + local.get $5 i32.sub i32.const 31 i32.shr_s @@ -28618,7 +28614,7 @@ local.set $2 local.get $1 i32.load offset=4 - local.set $4 + local.set $0 local.get $1 i32.load offset=8 i32.const 1 @@ -28635,17 +28631,17 @@ local.get $3 i32.const 1 i32.shl - local.get $4 + local.get $0 i32.add i32.load16_s - local.tee $0 + local.tee $4 i32.const 255 - local.get $0 + local.get $4 i32.sub i32.const 31 i32.shr_s i32.or - local.get $0 + local.get $4 i32.const 31 i32.shr_s i32.const -1 @@ -28681,27 +28677,27 @@ end local.get $0 i32.load offset=4 - local.set $0 + local.set $3 i32.const 11012 i32.load - local.set $2 + local.set $0 i32.const 11020 i32.load - local.set $3 + local.set $2 loop $for-loop|0 local.get $1 - local.get $3 + local.get $2 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $0 + local.get $3 i32.add local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $0 i32.add i32.load i32.store16 @@ -28739,10 +28735,10 @@ i32.load offset=4 i32.const 12 i32.add - local.set $0 + local.set $3 local.get $1 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=8 i32.const 3 @@ -28756,12 +28752,12 @@ local.get $2 i32.const 1 i32.shl - local.get $0 + local.get $3 i32.add local.get $2 i32.const 3 i32.shl - local.get $3 + local.get $0 i32.add i64.load i64.store16 @@ -28793,10 +28789,10 @@ end local.get $0 i32.load offset=4 - local.set $0 + local.set $3 local.get $1 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=8 local.set $1 @@ -28808,10 +28804,10 @@ local.get $2 i32.const 1 i32.shl - local.get $0 + local.get $3 i32.add + local.get $0 local.get $2 - local.get $3 i32.add i32.load8_u i32.store16 @@ -28878,25 +28874,25 @@ i32.load offset=4 i32.const 14 i32.add - local.set $0 + local.set $3 i32.const 11268 i32.load - local.set $2 + local.set $0 i32.const 11276 i32.load - local.set $3 + local.set $2 loop $for-loop|0 local.get $1 - local.get $3 + local.get $2 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $0 + local.get $3 i32.add + local.get $0 local.get $1 - local.get $2 i32.add i32.load8_s i32.store16 @@ -28975,10 +28971,10 @@ i32.load offset=4 i32.const 24 i32.add - local.set $0 + local.set $3 local.get $1 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=8 i32.const 3 @@ -28992,12 +28988,12 @@ local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $3 i32.add local.get $2 i32.const 3 i32.shl - local.get $3 + local.get $0 i32.add i64.load i64.store32 @@ -29029,10 +29025,10 @@ end local.get $0 i32.load offset=4 - local.set $0 + local.set $3 local.get $1 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=8 local.set $1 @@ -29044,10 +29040,10 @@ local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $3 i32.add + local.get $0 local.get $2 - local.get $3 i32.add i32.load8_u i32.store @@ -29085,10 +29081,10 @@ i32.load offset=4 i32.const 16 i32.add - local.set $0 + local.set $3 local.get $1 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=8 i32.const 1 @@ -29102,12 +29098,12 @@ local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $3 i32.add local.get $2 i32.const 1 i32.shl - local.get $3 + local.get $0 i32.add i32.load16_s i32.store @@ -29144,25 +29140,25 @@ i32.load offset=4 i32.const 28 i32.add - local.set $0 + local.set $3 i32.const 11268 i32.load - local.set $2 + local.set $0 i32.const 11276 i32.load - local.set $3 + local.set $2 loop $for-loop|0 local.get $1 - local.get $3 + local.get $2 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $0 + local.get $3 i32.add + local.get $0 local.get $1 - local.get $2 i32.add i32.load8_s i32.store @@ -29195,27 +29191,27 @@ end local.get $0 i32.load offset=4 - local.set $0 + local.set $3 i32.const 11012 i32.load - local.set $2 + local.set $0 i32.const 11020 i32.load - local.set $3 + local.set $2 loop $for-loop|0 local.get $1 - local.get $3 + local.get $2 i32.lt_s if local.get $1 i32.const 3 i32.shl - local.get $0 + local.get $3 i32.add local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $0 i32.add i64.load32_s i64.store @@ -29277,10 +29273,10 @@ end local.get $0 i32.load offset=4 - local.set $0 + local.set $3 local.get $1 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=8 local.set $1 @@ -29292,10 +29288,10 @@ local.get $2 i32.const 3 i32.shl - local.get $0 + local.get $3 i32.add + local.get $0 local.get $2 - local.get $3 i32.add i64.load8_u i64.store @@ -29333,10 +29329,10 @@ i32.load offset=4 i32.const 32 i32.add - local.set $0 + local.set $3 local.get $1 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=8 i32.const 1 @@ -29350,12 +29346,12 @@ local.get $2 i32.const 3 i32.shl - local.get $0 + local.get $3 i32.add local.get $2 i32.const 1 i32.shl - local.get $3 + local.get $0 i32.add i64.load16_s i64.store @@ -29392,25 +29388,25 @@ i32.load offset=4 i32.const 56 i32.add - local.set $0 + local.set $3 i32.const 11268 i32.load - local.set $2 + local.set $0 i32.const 11276 i32.load - local.set $3 + local.set $2 loop $for-loop|0 local.get $1 - local.get $3 + local.get $2 i32.lt_s if local.get $1 i32.const 3 i32.shl - local.get $0 + local.get $3 i32.add + local.get $0 local.get $1 - local.get $2 i32.add i64.load8_s i64.store @@ -29433,13 +29429,13 @@ i32.sub i32.const 1 i32.add - local.tee $6 + local.tee $5 local.get $3 i32.sub i32.const 1 i32.and i32.sub - local.get $6 + local.get $5 i32.const 1 i32.and local.get $3 @@ -29639,20 +29635,20 @@ i32.add local.tee $3 i32.load8_s - local.set $6 + local.set $5 local.get $3 local.get $0 local.get $2 i32.add - local.tee $5 + local.tee $3 i32.load8_s i32.store8 local.get $1 i32.const 1 i32.add local.set $1 + local.get $3 local.get $5 - local.get $6 i32.store8 local.get $2 i32.const 1 @@ -29760,16 +29756,16 @@ local.get $6 i32.add i32.load8_s - local.set $8 + local.set $7 local.get $2 local.get $4 i32.add i32.load8_s - local.set $7 + local.set $8 i32.const 2 global.set $~argumentsLength - local.get $8 local.get $7 + local.get $8 local.get $5 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -29779,7 +29775,7 @@ local.get $0 local.get $1 i32.add - local.get $8 + local.get $7 i32.store8 local.get $6 i32.const 1 @@ -29789,7 +29785,7 @@ local.get $0 local.get $1 i32.add - local.get $7 + local.get $8 i32.store8 local.get $2 i32.const 1 @@ -29810,12 +29806,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) local.get $1 i32.const 48 i32.le_s @@ -29829,11 +29825,10 @@ block $break|0 block $case1|0 local.get $1 - local.tee $4 i32.const 3 i32.ne if - local.get $4 + local.get $1 i32.const 2 i32.eq br_if $case1|0 @@ -29841,87 +29836,87 @@ end local.get $0 i32.load8_s - local.set $3 + local.set $1 local.get $0 i32.load8_s offset=1 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $3 select i32.store8 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $3 select - local.set $3 + local.set $1 local.get $0 i32.load8_s offset=2 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $3 select i32.store8 offset=1 local.get $0 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $3 select i32.store8 offset=2 end local.get $0 i32.load8_s - local.set $3 + local.set $1 local.get $0 i32.load8_s offset=1 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $2 select i32.store8 local.get $0 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $2 select i32.store8 offset=1 return end local.get $0 i32.const 0 - local.get $4 + local.get $1 i32.const 1 i32.sub i32.const 0 @@ -29933,118 +29928,118 @@ local.get $1 i32.clz i32.sub - local.tee $6 + local.tee $5 i32.const 2 i32.shl - local.tee $5 + local.tee $6 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $10 - local.get $5 + local.tee $11 + local.get $6 i32.add - local.set $11 + local.set $10 i32.const 0 - local.set $5 + local.set $6 loop $for-loop|1 local.get $5 local.get $6 - i32.lt_u + i32.gt_u if - local.get $5 + local.get $6 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.const -1 i32.store - local.get $5 + local.get $6 i32.const 1 i32.add - local.set $5 + local.set $6 br $for-loop|1 end end local.get $1 call $~lib/rt/tlsf/__alloc - local.set $12 + local.set $9 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $9 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $7 + local.tee $1 i32.const 1 i32.add - local.tee $1 + local.tee $6 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $9 + local.get $12 i32.const 31 - local.get $9 + local.get $12 i32.const 31 i32.lt_s select - local.tee $7 - local.get $1 + local.tee $1 + local.get $6 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $7 - local.get $9 + local.get $1 + local.get $12 i32.lt_s if local.get $0 - local.get $7 + local.get $1 i32.const 1 i32.add - local.tee $6 - local.get $9 + local.tee $5 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $5 - local.get $6 + local.tee $6 + local.get $5 i32.sub i32.const 1 i32.add - local.tee $8 + local.tee $4 i32.const 32 i32.lt_s if local.get $0 - local.get $6 - local.get $9 - local.get $6 + local.get $5 + local.get $12 + local.get $5 i32.const 31 i32.add - local.tee $1 - local.get $1 - local.get $9 + local.tee $6 + local.get $6 + local.get $12 i32.gt_s select - local.tee $5 - local.get $8 + local.tee $6 + local.get $4 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $6 + local.get $5 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $9 + local.get $12 i32.const 1 i32.add i64.extend_i32_u - local.tee $13 + local.tee $8 i64.div_u local.get $5 local.get $6 @@ -30054,33 +30049,31 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $8 i64.div_u i64.xor i32.wrap_i64 i32.clz - local.set $1 - local.get $4 - local.set $8 + local.set $4 loop $for-loop|3 - local.get $1 - local.get $8 + local.get $4 + local.get $7 i32.lt_u if - local.get $8 + local.get $7 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.load - local.tee $4 + local.tee $13 i32.const -1 i32.ne if local.get $0 - local.get $4 - local.get $11 - local.get $8 + local.get $13 + local.get $10 + local.get $7 i32.const 2 i32.shl local.tee $3 @@ -30088,54 +30081,54 @@ i32.load i32.const 1 i32.add - local.get $7 - local.get $12 + local.get $1 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $10 + local.get $11 i32.add i32.const -1 i32.store - local.get $4 + local.get $13 local.set $3 end - local.get $8 + local.get $7 i32.const 1 i32.sub - local.set $8 + local.set $7 br $for-loop|3 end end - local.get $10 - local.get $1 + local.get $11 + local.get $4 i32.const 2 i32.shl - local.tee $4 + local.tee $7 i32.add local.get $3 i32.store - local.get $4 - local.get $11 - i32.add local.get $7 + local.get $10 + i32.add + local.get $1 i32.store - local.get $6 - local.set $3 local.get $5 + local.set $3 + local.get $6 + local.set $1 + local.get $4 local.set $7 - local.get $1 - local.set $4 br $while-continue|2 end end loop $for-loop|4 - local.get $4 + local.get $7 if - local.get $4 + local.get $7 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.load local.tee $1 @@ -30144,29 +30137,29 @@ if local.get $0 local.get $1 - local.get $4 + local.get $7 i32.const 2 i32.shl - local.get $11 + local.get $10 i32.add i32.load i32.const 1 i32.add - local.get $9 local.get $12 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns end - local.get $4 + local.get $7 i32.const 1 i32.sub - local.set $4 + local.set $7 br $for-loop|4 end end - local.get $12 + local.get $9 call $~lib/rt/tlsf/__free - local.get $10 + local.get $11 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) @@ -30200,13 +30193,13 @@ i32.sub i32.const 1 i32.add - local.tee $6 + local.tee $5 local.get $3 i32.sub i32.const 1 i32.and i32.sub - local.get $6 + local.get $5 i32.const 1 i32.and local.get $3 @@ -30406,20 +30399,20 @@ i32.add local.tee $3 i32.load8_u - local.set $6 + local.set $5 local.get $3 local.get $0 local.get $2 i32.add - local.tee $5 + local.tee $3 i32.load8_u i32.store8 local.get $1 i32.const 1 i32.add local.set $1 + local.get $3 local.get $5 - local.get $6 i32.store8 local.get $2 i32.const 1 @@ -30527,16 +30520,16 @@ local.get $6 i32.add i32.load8_u - local.set $8 + local.set $7 local.get $2 local.get $4 i32.add i32.load8_u - local.set $7 + local.set $8 i32.const 2 global.set $~argumentsLength - local.get $8 local.get $7 + local.get $8 local.get $5 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -30546,7 +30539,7 @@ local.get $0 local.get $1 i32.add - local.get $8 + local.get $7 i32.store8 local.get $6 i32.const 1 @@ -30556,7 +30549,7 @@ local.get $0 local.get $1 i32.add - local.get $7 + local.get $8 i32.store8 local.get $2 i32.const 1 @@ -30577,12 +30570,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) local.get $1 i32.const 48 i32.le_s @@ -30596,11 +30589,10 @@ block $break|0 block $case1|0 local.get $1 - local.tee $4 i32.const 3 i32.ne if - local.get $4 + local.get $1 i32.const 2 i32.eq br_if $case1|0 @@ -30608,87 +30600,87 @@ end local.get $0 i32.load8_u - local.set $3 + local.set $1 local.get $0 i32.load8_u offset=1 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $3 select i32.store8 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $3 select - local.set $3 + local.set $1 local.get $0 i32.load8_u offset=2 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $3 select i32.store8 offset=1 local.get $0 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $3 select i32.store8 offset=2 end local.get $0 i32.load8_u - local.set $3 + local.set $1 local.get $0 i32.load8_u offset=1 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $2 select i32.store8 local.get $0 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $2 select i32.store8 offset=1 return end local.get $0 i32.const 0 - local.get $4 + local.get $1 i32.const 1 i32.sub i32.const 0 @@ -30700,118 +30692,118 @@ local.get $1 i32.clz i32.sub - local.tee $6 + local.tee $5 i32.const 2 i32.shl - local.tee $5 + local.tee $6 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $10 - local.get $5 + local.tee $11 + local.get $6 i32.add - local.set $11 + local.set $10 i32.const 0 - local.set $5 + local.set $6 loop $for-loop|1 local.get $5 local.get $6 - i32.lt_u + i32.gt_u if - local.get $5 + local.get $6 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.const -1 i32.store - local.get $5 + local.get $6 i32.const 1 i32.add - local.set $5 + local.set $6 br $for-loop|1 end end local.get $1 call $~lib/rt/tlsf/__alloc - local.set $12 + local.set $9 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $9 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $7 + local.tee $1 i32.const 1 i32.add - local.tee $1 + local.tee $6 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $9 + local.get $12 i32.const 31 - local.get $9 + local.get $12 i32.const 31 i32.lt_s select - local.tee $7 - local.get $1 + local.tee $1 + local.get $6 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $7 - local.get $9 + local.get $1 + local.get $12 i32.lt_s if local.get $0 - local.get $7 + local.get $1 i32.const 1 i32.add - local.tee $6 - local.get $9 + local.tee $5 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $5 - local.get $6 + local.tee $6 + local.get $5 i32.sub i32.const 1 i32.add - local.tee $8 + local.tee $4 i32.const 32 i32.lt_s if local.get $0 - local.get $6 - local.get $9 - local.get $6 + local.get $5 + local.get $12 + local.get $5 i32.const 31 i32.add - local.tee $1 - local.get $1 - local.get $9 + local.tee $6 + local.get $6 + local.get $12 i32.gt_s select - local.tee $5 - local.get $8 + local.tee $6 + local.get $4 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $6 + local.get $5 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $9 + local.get $12 i32.const 1 i32.add i64.extend_i32_u - local.tee $13 + local.tee $8 i64.div_u local.get $5 local.get $6 @@ -30821,33 +30813,31 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $8 i64.div_u i64.xor i32.wrap_i64 i32.clz - local.set $1 - local.get $4 - local.set $8 + local.set $4 loop $for-loop|3 - local.get $1 - local.get $8 + local.get $4 + local.get $7 i32.lt_u if - local.get $8 + local.get $7 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.load - local.tee $4 + local.tee $13 i32.const -1 i32.ne if local.get $0 - local.get $4 - local.get $11 - local.get $8 + local.get $13 + local.get $10 + local.get $7 i32.const 2 i32.shl local.tee $3 @@ -30855,54 +30845,54 @@ i32.load i32.const 1 i32.add - local.get $7 - local.get $12 + local.get $1 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $10 + local.get $11 i32.add i32.const -1 i32.store - local.get $4 + local.get $13 local.set $3 end - local.get $8 + local.get $7 i32.const 1 i32.sub - local.set $8 + local.set $7 br $for-loop|3 end end - local.get $10 - local.get $1 + local.get $11 + local.get $4 i32.const 2 i32.shl - local.tee $4 + local.tee $7 i32.add local.get $3 i32.store - local.get $4 - local.get $11 - i32.add local.get $7 + local.get $10 + i32.add + local.get $1 i32.store - local.get $6 - local.set $3 local.get $5 + local.set $3 + local.get $6 + local.set $1 + local.get $4 local.set $7 - local.get $1 - local.set $4 br $while-continue|2 end end loop $for-loop|4 - local.get $4 + local.get $7 if - local.get $4 + local.get $7 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.load local.tee $1 @@ -30911,29 +30901,29 @@ if local.get $0 local.get $1 - local.get $4 + local.get $7 i32.const 2 i32.shl - local.get $11 + local.get $10 i32.add i32.load i32.const 1 i32.add - local.get $9 local.get $12 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns end - local.get $4 + local.get $7 i32.const 1 i32.sub - local.set $4 + local.set $7 br $for-loop|4 end end - local.get $12 + local.get $9 call $~lib/rt/tlsf/__free - local.get $10 + local.get $11 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) @@ -30977,13 +30967,13 @@ i32.sub i32.const 1 i32.add - local.tee $6 + local.tee $5 local.get $3 i32.sub i32.const 1 i32.and i32.sub - local.get $6 + local.get $5 i32.const 1 i32.and local.get $3 @@ -31205,22 +31195,22 @@ i32.add local.tee $3 i32.load16_s - local.set $6 + local.set $5 local.get $3 local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.tee $5 + local.tee $3 i32.load16_s i32.store16 local.get $1 i32.const 1 i32.add local.set $1 + local.get $3 local.get $5 - local.get $6 i32.store16 local.get $2 i32.const 1 @@ -31339,18 +31329,18 @@ local.get $4 i32.add i32.load16_s - local.set $8 + local.set $7 local.get $2 i32.const 1 i32.shl local.get $4 i32.add i32.load16_s - local.set $7 + local.set $8 i32.const 2 global.set $~argumentsLength - local.get $8 local.get $7 + local.get $8 local.get $5 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -31362,7 +31352,7 @@ i32.shl local.get $0 i32.add - local.get $8 + local.get $7 i32.store16 local.get $6 i32.const 1 @@ -31374,7 +31364,7 @@ i32.shl local.get $0 i32.add - local.get $7 + local.get $8 i32.store16 local.get $2 i32.const 1 @@ -31395,12 +31385,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) local.get $1 i32.const 48 i32.le_s @@ -31414,11 +31404,10 @@ block $break|0 block $case1|0 local.get $1 - local.tee $4 i32.const 3 i32.ne if - local.get $4 + local.get $1 i32.const 2 i32.eq br_if $case1|0 @@ -31426,87 +31415,87 @@ end local.get $0 i32.load16_s - local.set $3 + local.set $1 local.get $0 i32.load16_s offset=2 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $3 select i32.store16 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $3 select - local.set $3 + local.set $1 local.get $0 i32.load16_s offset=4 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $3 select i32.store16 offset=2 local.get $0 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $3 select i32.store16 offset=4 end local.get $0 i32.load16_s - local.set $3 + local.set $1 local.get $0 i32.load16_s offset=2 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $2 select i32.store16 local.get $0 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $2 select i32.store16 offset=2 return end local.get $0 i32.const 0 - local.get $4 + local.get $1 i32.const 1 i32.sub i32.const 0 @@ -31518,35 +31507,35 @@ local.get $1 i32.clz i32.sub - local.tee $6 + local.tee $5 i32.const 2 i32.shl - local.tee $5 + local.tee $6 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $10 - local.get $5 + local.tee $11 + local.get $6 i32.add - local.set $11 + local.set $10 i32.const 0 - local.set $5 + local.set $6 loop $for-loop|1 local.get $5 local.get $6 - i32.lt_u + i32.gt_u if - local.get $5 + local.get $6 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.const -1 i32.store - local.get $5 + local.get $6 i32.const 1 i32.add - local.set $5 + local.set $6 br $for-loop|1 end end @@ -31554,84 +31543,84 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.set $12 + local.set $9 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $9 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $7 + local.tee $1 i32.const 1 i32.add - local.tee $1 + local.tee $6 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $9 + local.get $12 i32.const 31 - local.get $9 + local.get $12 i32.const 31 i32.lt_s select - local.tee $7 - local.get $1 + local.tee $1 + local.get $6 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $7 - local.get $9 + local.get $1 + local.get $12 i32.lt_s if local.get $0 - local.get $7 + local.get $1 i32.const 1 i32.add - local.tee $6 - local.get $9 + local.tee $5 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $5 - local.get $6 + local.tee $6 + local.get $5 i32.sub i32.const 1 i32.add - local.tee $8 + local.tee $4 i32.const 32 i32.lt_s if local.get $0 - local.get $6 - local.get $9 - local.get $6 + local.get $5 + local.get $12 + local.get $5 i32.const 31 i32.add - local.tee $1 - local.get $1 - local.get $9 + local.tee $6 + local.get $6 + local.get $12 i32.gt_s select - local.tee $5 - local.get $8 + local.tee $6 + local.get $4 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $6 + local.get $5 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $9 + local.get $12 i32.const 1 i32.add i64.extend_i32_u - local.tee $13 + local.tee $8 i64.div_u local.get $5 local.get $6 @@ -31641,33 +31630,31 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $8 i64.div_u i64.xor i32.wrap_i64 i32.clz - local.set $1 - local.get $4 - local.set $8 + local.set $4 loop $for-loop|3 - local.get $1 - local.get $8 + local.get $4 + local.get $7 i32.lt_u if - local.get $8 + local.get $7 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.load - local.tee $4 + local.tee $13 i32.const -1 i32.ne if local.get $0 - local.get $4 - local.get $11 - local.get $8 + local.get $13 + local.get $10 + local.get $7 i32.const 2 i32.shl local.tee $3 @@ -31675,54 +31662,54 @@ i32.load i32.const 1 i32.add - local.get $7 - local.get $12 + local.get $1 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $10 + local.get $11 i32.add i32.const -1 i32.store - local.get $4 + local.get $13 local.set $3 end - local.get $8 + local.get $7 i32.const 1 i32.sub - local.set $8 + local.set $7 br $for-loop|3 end end - local.get $10 - local.get $1 + local.get $11 + local.get $4 i32.const 2 i32.shl - local.tee $4 + local.tee $7 i32.add local.get $3 i32.store - local.get $4 - local.get $11 - i32.add local.get $7 + local.get $10 + i32.add + local.get $1 i32.store - local.get $6 - local.set $3 local.get $5 + local.set $3 + local.get $6 + local.set $1 + local.get $4 local.set $7 - local.get $1 - local.set $4 br $while-continue|2 end end loop $for-loop|4 - local.get $4 + local.get $7 if - local.get $4 + local.get $7 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.load local.tee $1 @@ -31731,29 +31718,29 @@ if local.get $0 local.get $1 - local.get $4 + local.get $7 i32.const 2 i32.shl - local.get $11 + local.get $10 i32.add i32.load i32.const 1 i32.add - local.get $9 local.get $12 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns end - local.get $4 + local.get $7 i32.const 1 i32.sub - local.set $4 + local.set $7 br $for-loop|4 end end - local.get $12 + local.get $9 call $~lib/rt/tlsf/__free - local.get $10 + local.get $11 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) @@ -31787,13 +31774,13 @@ i32.sub i32.const 1 i32.add - local.tee $6 + local.tee $5 local.get $3 i32.sub i32.const 1 i32.and i32.sub - local.get $6 + local.get $5 i32.const 1 i32.and local.get $3 @@ -32015,22 +32002,22 @@ i32.add local.tee $3 i32.load16_u - local.set $6 + local.set $5 local.get $3 local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.tee $5 + local.tee $3 i32.load16_u i32.store16 local.get $1 i32.const 1 i32.add local.set $1 + local.get $3 local.get $5 - local.get $6 i32.store16 local.get $2 i32.const 1 @@ -32149,18 +32136,18 @@ local.get $4 i32.add i32.load16_u - local.set $8 + local.set $7 local.get $2 i32.const 1 i32.shl local.get $4 i32.add i32.load16_u - local.set $7 + local.set $8 i32.const 2 global.set $~argumentsLength - local.get $8 local.get $7 + local.get $8 local.get $5 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -32172,7 +32159,7 @@ i32.shl local.get $0 i32.add - local.get $8 + local.get $7 i32.store16 local.get $6 i32.const 1 @@ -32184,7 +32171,7 @@ i32.shl local.get $0 i32.add - local.get $7 + local.get $8 i32.store16 local.get $2 i32.const 1 @@ -32205,12 +32192,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) local.get $1 i32.const 48 i32.le_s @@ -32224,11 +32211,10 @@ block $break|0 block $case1|0 local.get $1 - local.tee $4 i32.const 3 i32.ne if - local.get $4 + local.get $1 i32.const 2 i32.eq br_if $case1|0 @@ -32236,87 +32222,87 @@ end local.get $0 i32.load16_u - local.set $3 + local.set $1 local.get $0 i32.load16_u offset=2 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $3 select i32.store16 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $3 select - local.set $3 + local.set $1 local.get $0 i32.load16_u offset=4 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $3 select i32.store16 offset=2 local.get $0 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $3 select i32.store16 offset=4 end local.get $0 i32.load16_u - local.set $3 + local.set $1 local.get $0 i32.load16_u offset=2 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $2 select i32.store16 local.get $0 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $2 select i32.store16 offset=2 return end local.get $0 i32.const 0 - local.get $4 + local.get $1 i32.const 1 i32.sub i32.const 0 @@ -32328,35 +32314,35 @@ local.get $1 i32.clz i32.sub - local.tee $6 + local.tee $5 i32.const 2 i32.shl - local.tee $5 + local.tee $6 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $10 - local.get $5 + local.tee $11 + local.get $6 i32.add - local.set $11 + local.set $10 i32.const 0 - local.set $5 + local.set $6 loop $for-loop|1 local.get $5 local.get $6 - i32.lt_u + i32.gt_u if - local.get $5 + local.get $6 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.const -1 i32.store - local.get $5 + local.get $6 i32.const 1 i32.add - local.set $5 + local.set $6 br $for-loop|1 end end @@ -32364,84 +32350,84 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.set $12 + local.set $9 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $9 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $7 + local.tee $1 i32.const 1 i32.add - local.tee $1 + local.tee $6 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $9 + local.get $12 i32.const 31 - local.get $9 + local.get $12 i32.const 31 i32.lt_s select - local.tee $7 - local.get $1 + local.tee $1 + local.get $6 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $7 - local.get $9 + local.get $1 + local.get $12 i32.lt_s if local.get $0 - local.get $7 + local.get $1 i32.const 1 i32.add - local.tee $6 - local.get $9 + local.tee $5 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $5 - local.get $6 + local.tee $6 + local.get $5 i32.sub i32.const 1 i32.add - local.tee $8 + local.tee $4 i32.const 32 i32.lt_s if local.get $0 - local.get $6 - local.get $9 - local.get $6 + local.get $5 + local.get $12 + local.get $5 i32.const 31 i32.add - local.tee $1 - local.get $1 - local.get $9 + local.tee $6 + local.get $6 + local.get $12 i32.gt_s select - local.tee $5 - local.get $8 + local.tee $6 + local.get $4 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $6 + local.get $5 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $9 + local.get $12 i32.const 1 i32.add i64.extend_i32_u - local.tee $13 + local.tee $8 i64.div_u local.get $5 local.get $6 @@ -32451,33 +32437,31 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $8 i64.div_u i64.xor i32.wrap_i64 i32.clz - local.set $1 - local.get $4 - local.set $8 + local.set $4 loop $for-loop|3 - local.get $1 - local.get $8 + local.get $4 + local.get $7 i32.lt_u if - local.get $8 + local.get $7 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.load - local.tee $4 + local.tee $13 i32.const -1 i32.ne if local.get $0 - local.get $4 - local.get $11 - local.get $8 + local.get $13 + local.get $10 + local.get $7 i32.const 2 i32.shl local.tee $3 @@ -32485,54 +32469,54 @@ i32.load i32.const 1 i32.add - local.get $7 - local.get $12 + local.get $1 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $10 + local.get $11 i32.add i32.const -1 i32.store - local.get $4 + local.get $13 local.set $3 end - local.get $8 + local.get $7 i32.const 1 i32.sub - local.set $8 + local.set $7 br $for-loop|3 end end - local.get $10 - local.get $1 + local.get $11 + local.get $4 i32.const 2 i32.shl - local.tee $4 + local.tee $7 i32.add local.get $3 i32.store - local.get $4 - local.get $11 - i32.add local.get $7 + local.get $10 + i32.add + local.get $1 i32.store - local.get $6 - local.set $3 local.get $5 + local.set $3 + local.get $6 + local.set $1 + local.get $4 local.set $7 - local.get $1 - local.set $4 br $while-continue|2 end end loop $for-loop|4 - local.get $4 + local.get $7 if - local.get $4 + local.get $7 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.load local.tee $1 @@ -32541,29 +32525,29 @@ if local.get $0 local.get $1 - local.get $4 + local.get $7 i32.const 2 i32.shl - local.get $11 + local.get $10 i32.add i32.load i32.const 1 i32.add - local.get $9 local.get $12 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns end - local.get $4 + local.get $7 i32.const 1 i32.sub - local.set $4 + local.set $7 br $for-loop|4 end end - local.get $12 + local.get $9 call $~lib/rt/tlsf/__free - local.get $10 + local.get $11 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) @@ -32607,13 +32591,13 @@ i32.sub i32.const 1 i32.add - local.tee $6 + local.tee $5 local.get $3 i32.sub i32.const 1 i32.and i32.sub - local.get $6 + local.get $5 i32.const 1 i32.and local.get $3 @@ -32835,22 +32819,22 @@ i32.add local.tee $3 i32.load - local.set $6 + local.set $5 local.get $3 local.get $2 i32.const 2 i32.shl local.get $0 i32.add - local.tee $5 + local.tee $3 i32.load i32.store local.get $1 i32.const 1 i32.add local.set $1 + local.get $3 local.get $5 - local.get $6 i32.store local.get $2 i32.const 1 @@ -32969,18 +32953,18 @@ local.get $4 i32.add i32.load - local.set $8 + local.set $7 local.get $2 i32.const 2 i32.shl local.get $4 i32.add i32.load - local.set $7 + local.set $8 i32.const 2 global.set $~argumentsLength - local.get $8 local.get $7 + local.get $8 local.get $5 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -32992,7 +32976,7 @@ i32.shl local.get $0 i32.add - local.get $8 + local.get $7 i32.store local.get $6 i32.const 1 @@ -33004,7 +32988,7 @@ i32.shl local.get $0 i32.add - local.get $7 + local.get $8 i32.store local.get $2 i32.const 1 @@ -33025,12 +33009,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) local.get $1 i32.const 48 i32.le_s @@ -33044,11 +33028,10 @@ block $break|0 block $case1|0 local.get $1 - local.tee $4 i32.const 3 i32.ne if - local.get $4 + local.get $1 i32.const 2 i32.eq br_if $case1|0 @@ -33056,87 +33039,87 @@ end local.get $0 i32.load - local.set $3 + local.set $1 local.get $0 i32.load offset=4 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $3 select i32.store - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $3 select - local.set $3 + local.set $1 local.get $0 i32.load offset=8 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $3 select i32.store offset=4 local.get $0 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $3 select i32.store offset=8 end local.get $0 i32.load - local.set $3 + local.set $1 local.get $0 i32.load offset=4 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $2 select i32.store local.get $0 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $2 select i32.store offset=4 return end local.get $0 i32.const 0 - local.get $4 + local.get $1 i32.const 1 i32.sub i32.const 0 @@ -33148,35 +33131,35 @@ local.get $1 i32.clz i32.sub - local.tee $6 + local.tee $5 i32.const 2 i32.shl - local.tee $5 + local.tee $6 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $10 - local.get $5 + local.tee $11 + local.get $6 i32.add - local.set $11 + local.set $10 i32.const 0 - local.set $5 + local.set $6 loop $for-loop|1 local.get $5 local.get $6 - i32.lt_u + i32.gt_u if - local.get $5 + local.get $6 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.const -1 i32.store - local.get $5 + local.get $6 i32.const 1 i32.add - local.set $5 + local.set $6 br $for-loop|1 end end @@ -33184,84 +33167,84 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $12 + local.set $9 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $9 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $7 + local.tee $1 i32.const 1 i32.add - local.tee $1 + local.tee $6 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $9 + local.get $12 i32.const 31 - local.get $9 + local.get $12 i32.const 31 i32.lt_s select - local.tee $7 - local.get $1 + local.tee $1 + local.get $6 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $7 - local.get $9 + local.get $1 + local.get $12 i32.lt_s if local.get $0 - local.get $7 + local.get $1 i32.const 1 i32.add - local.tee $6 - local.get $9 + local.tee $5 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $5 - local.get $6 + local.tee $6 + local.get $5 i32.sub i32.const 1 i32.add - local.tee $8 + local.tee $4 i32.const 32 i32.lt_s if local.get $0 - local.get $6 - local.get $9 - local.get $6 + local.get $5 + local.get $12 + local.get $5 i32.const 31 i32.add - local.tee $1 - local.get $1 - local.get $9 + local.tee $6 + local.get $6 + local.get $12 i32.gt_s select - local.tee $5 - local.get $8 + local.tee $6 + local.get $4 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $6 + local.get $5 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $9 + local.get $12 i32.const 1 i32.add i64.extend_i32_u - local.tee $13 + local.tee $8 i64.div_u local.get $5 local.get $6 @@ -33271,33 +33254,31 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $8 i64.div_u i64.xor i32.wrap_i64 i32.clz - local.set $1 - local.get $4 - local.set $8 + local.set $4 loop $for-loop|3 - local.get $1 - local.get $8 + local.get $4 + local.get $7 i32.lt_u if - local.get $8 + local.get $7 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.load - local.tee $4 + local.tee $13 i32.const -1 i32.ne if local.get $0 - local.get $4 - local.get $11 - local.get $8 + local.get $13 + local.get $10 + local.get $7 i32.const 2 i32.shl local.tee $3 @@ -33305,54 +33286,54 @@ i32.load i32.const 1 i32.add - local.get $7 - local.get $12 + local.get $1 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $10 + local.get $11 i32.add i32.const -1 i32.store - local.get $4 + local.get $13 local.set $3 end - local.get $8 + local.get $7 i32.const 1 i32.sub - local.set $8 + local.set $7 br $for-loop|3 end end - local.get $10 - local.get $1 + local.get $11 + local.get $4 i32.const 2 i32.shl - local.tee $4 + local.tee $7 i32.add local.get $3 i32.store - local.get $4 - local.get $11 - i32.add local.get $7 + local.get $10 + i32.add + local.get $1 i32.store - local.get $6 - local.set $3 local.get $5 + local.set $3 + local.get $6 + local.set $1 + local.get $4 local.set $7 - local.get $1 - local.set $4 br $while-continue|2 end end loop $for-loop|4 - local.get $4 + local.get $7 if - local.get $4 + local.get $7 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.load local.tee $1 @@ -33361,29 +33342,29 @@ if local.get $0 local.get $1 - local.get $4 + local.get $7 i32.const 2 i32.shl - local.get $11 + local.get $10 i32.add i32.load i32.const 1 i32.add - local.get $9 local.get $12 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns end - local.get $4 + local.get $7 i32.const 1 i32.sub - local.set $4 + local.set $7 br $for-loop|4 end end - local.get $12 + local.get $9 call $~lib/rt/tlsf/__free - local.get $10 + local.get $11 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) @@ -33411,13 +33392,13 @@ i32.sub i32.const 1 i32.add - local.tee $6 + local.tee $5 local.get $3 i32.sub i32.const 1 i32.and i32.sub - local.get $6 + local.get $5 i32.const 1 i32.and local.get $3 @@ -33639,22 +33620,22 @@ i32.add local.tee $3 i32.load - local.set $6 + local.set $5 local.get $3 local.get $2 i32.const 2 i32.shl local.get $0 i32.add - local.tee $5 + local.tee $3 i32.load i32.store local.get $1 i32.const 1 i32.add local.set $1 + local.get $3 local.get $5 - local.get $6 i32.store local.get $2 i32.const 1 @@ -33773,18 +33754,18 @@ local.get $4 i32.add i32.load - local.set $8 + local.set $7 local.get $2 i32.const 2 i32.shl local.get $4 i32.add i32.load - local.set $7 + local.set $8 i32.const 2 global.set $~argumentsLength - local.get $8 local.get $7 + local.get $8 local.get $5 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -33796,7 +33777,7 @@ i32.shl local.get $0 i32.add - local.get $8 + local.get $7 i32.store local.get $6 i32.const 1 @@ -33808,7 +33789,7 @@ i32.shl local.get $0 i32.add - local.get $7 + local.get $8 i32.store local.get $2 i32.const 1 @@ -33829,12 +33810,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) local.get $1 i32.const 48 i32.le_s @@ -33848,11 +33829,10 @@ block $break|0 block $case1|0 local.get $1 - local.tee $4 i32.const 3 i32.ne if - local.get $4 + local.get $1 i32.const 2 i32.eq br_if $case1|0 @@ -33860,87 +33840,87 @@ end local.get $0 i32.load - local.set $3 + local.set $1 local.get $0 i32.load offset=4 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $3 select i32.store - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $3 select - local.set $3 + local.set $1 local.get $0 i32.load offset=8 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $3 select i32.store offset=4 local.get $0 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $3 select i32.store offset=8 end local.get $0 i32.load - local.set $3 + local.set $1 local.get $0 i32.load offset=4 - local.set $4 + local.set $7 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $4 - local.get $3 - local.get $3 - local.get $4 + local.get $7 + local.get $1 + local.get $1 + local.get $7 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $2 select i32.store local.get $0 - local.get $3 - local.get $4 local.get $1 + local.get $7 + local.get $2 select i32.store offset=4 return end local.get $0 i32.const 0 - local.get $4 + local.get $1 i32.const 1 i32.sub i32.const 0 @@ -33952,35 +33932,35 @@ local.get $1 i32.clz i32.sub - local.tee $6 + local.tee $5 i32.const 2 i32.shl - local.tee $5 + local.tee $6 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $10 - local.get $5 + local.tee $11 + local.get $6 i32.add - local.set $11 + local.set $10 i32.const 0 - local.set $5 + local.set $6 loop $for-loop|1 local.get $5 local.get $6 - i32.lt_u + i32.gt_u if - local.get $5 + local.get $6 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.const -1 i32.store - local.get $5 + local.get $6 i32.const 1 i32.add - local.set $5 + local.set $6 br $for-loop|1 end end @@ -33988,84 +33968,84 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $12 + local.set $9 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $9 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $7 + local.tee $1 i32.const 1 i32.add - local.tee $1 + local.tee $6 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $9 + local.get $12 i32.const 31 - local.get $9 + local.get $12 i32.const 31 i32.lt_s select - local.tee $7 - local.get $1 + local.tee $1 + local.get $6 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $7 - local.get $9 + local.get $1 + local.get $12 i32.lt_s if local.get $0 - local.get $7 + local.get $1 i32.const 1 i32.add - local.tee $6 - local.get $9 + local.tee $5 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $5 - local.get $6 + local.tee $6 + local.get $5 i32.sub i32.const 1 i32.add - local.tee $8 + local.tee $4 i32.const 32 i32.lt_s if local.get $0 - local.get $6 - local.get $9 - local.get $6 + local.get $5 + local.get $12 + local.get $5 i32.const 31 i32.add - local.tee $1 - local.get $1 - local.get $9 + local.tee $6 + local.get $6 + local.get $12 i32.gt_s select - local.tee $5 - local.get $8 + local.tee $6 + local.get $4 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $6 + local.get $5 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $9 + local.get $12 i32.const 1 i32.add i64.extend_i32_u - local.tee $13 + local.tee $8 i64.div_u local.get $5 local.get $6 @@ -34075,33 +34055,31 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $8 i64.div_u i64.xor i32.wrap_i64 i32.clz - local.set $1 - local.get $4 - local.set $8 + local.set $4 loop $for-loop|3 - local.get $1 - local.get $8 + local.get $4 + local.get $7 i32.lt_u if - local.get $8 + local.get $7 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.load - local.tee $4 + local.tee $13 i32.const -1 i32.ne if local.get $0 - local.get $4 - local.get $11 - local.get $8 + local.get $13 + local.get $10 + local.get $7 i32.const 2 i32.shl local.tee $3 @@ -34109,54 +34087,54 @@ i32.load i32.const 1 i32.add - local.get $7 - local.get $12 + local.get $1 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $10 + local.get $11 i32.add i32.const -1 i32.store - local.get $4 + local.get $13 local.set $3 end - local.get $8 + local.get $7 i32.const 1 i32.sub - local.set $8 + local.set $7 br $for-loop|3 end end - local.get $10 - local.get $1 + local.get $11 + local.get $4 i32.const 2 i32.shl - local.tee $4 + local.tee $7 i32.add local.get $3 i32.store - local.get $4 - local.get $11 - i32.add local.get $7 + local.get $10 + i32.add + local.get $1 i32.store - local.get $6 - local.set $3 local.get $5 + local.set $3 + local.get $6 + local.set $1 + local.get $4 local.set $7 - local.get $1 - local.set $4 br $while-continue|2 end end loop $for-loop|4 - local.get $4 + local.get $7 if - local.get $4 + local.get $7 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.load local.tee $1 @@ -34165,29 +34143,29 @@ if local.get $0 local.get $1 - local.get $4 + local.get $7 i32.const 2 i32.shl - local.get $11 + local.get $10 i32.add i32.load i32.const 1 i32.add - local.get $9 local.get $12 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns end - local.get $4 + local.get $7 i32.const 1 i32.sub - local.set $4 + local.set $7 br $for-loop|4 end end - local.get $12 + local.get $9 call $~lib/rt/tlsf/__free - local.get $10 + local.get $11 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) @@ -34455,14 +34433,14 @@ i32.shl local.get $0 i32.add - local.tee $7 + local.tee $3 i64.load i64.store local.get $1 i32.const 1 i32.add local.set $1 - local.get $7 + local.get $3 local.get $5 i64.store local.get $2 @@ -34641,12 +34619,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) - (local $10 i32) + (local $9 i64) + (local $10 i64) (local $11 i32) (local $12 i32) - (local $13 i64) - (local $14 i64) + (local $13 i32) + (local $14 i32) local.get $1 i32.const 48 i32.le_s @@ -34660,11 +34638,10 @@ block $break|0 block $case1|0 local.get $1 - local.tee $4 i32.const 3 i32.ne if - local.get $4 + local.get $1 i32.const 2 i32.eq br_if $case1|0 @@ -34672,17 +34649,17 @@ end local.get $0 i64.load - local.set $13 + local.set $10 local.get $0 i64.load offset=8 - local.set $14 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $14 - local.get $13 - local.get $13 - local.get $14 + local.get $9 + local.get $10 + local.get $10 + local.get $9 local.get $2 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -34691,21 +34668,21 @@ local.tee $1 select i64.store - local.get $13 - local.get $14 + local.get $10 + local.get $9 local.get $1 select - local.set $13 + local.set $10 local.get $0 i64.load offset=16 - local.set $14 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $14 - local.get $13 - local.get $13 - local.get $14 + local.get $9 + local.get $10 + local.get $10 + local.get $9 local.get $2 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -34715,25 +34692,25 @@ select i64.store offset=8 local.get $0 - local.get $13 - local.get $14 + local.get $10 + local.get $9 local.get $1 select i64.store offset=16 end local.get $0 i64.load - local.set $13 + local.set $10 local.get $0 i64.load offset=8 - local.set $14 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $14 - local.get $13 - local.get $13 - local.get $14 + local.get $9 + local.get $10 + local.get $10 + local.get $9 local.get $2 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -34743,8 +34720,8 @@ select i64.store local.get $0 - local.get $13 - local.get $14 + local.get $10 + local.get $9 local.get $1 select i64.store offset=8 @@ -34752,7 +34729,7 @@ end local.get $0 i32.const 0 - local.get $4 + local.get $1 i32.const 1 i32.sub i32.const 0 @@ -34767,14 +34744,14 @@ local.tee $6 i32.const 2 i32.shl - local.tee $7 + local.tee $5 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $11 - local.get $7 + local.tee $13 + local.get $5 i32.add - local.set $10 + local.set $12 i32.const 0 local.set $7 loop $for-loop|1 @@ -34785,7 +34762,7 @@ local.get $7 i32.const 2 i32.shl - local.get $11 + local.get $13 i32.add i32.const -1 i32.store @@ -34800,16 +34777,16 @@ i32.const 3 i32.shl call $~lib/rt/tlsf/__alloc - local.set $9 + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $12 + local.tee $14 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $5 + local.tee $6 i32.const 1 i32.add local.tee $1 @@ -34818,32 +34795,32 @@ if local.get $0 i32.const 0 - local.get $12 + local.get $14 i32.const 31 - local.get $12 + local.get $14 i32.const 31 i32.lt_s select - local.tee $5 + local.tee $6 local.get $1 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $5 - local.get $12 + local.get $6 + local.get $14 i32.lt_s if local.get $0 - local.get $5 + local.get $6 i32.const 1 i32.add - local.tee $6 - local.get $12 + local.tee $5 + local.get $14 local.get $2 call $~lib/util/sort/extendRunRight local.tee $7 - local.get $6 + local.get $5 i32.sub i32.const 1 i32.add @@ -34852,14 +34829,14 @@ i32.lt_s if local.get $0 - local.get $6 - local.get $12 - local.get $6 + local.get $5 + local.get $14 + local.get $5 i32.const 31 i32.add local.tee $1 local.get $1 - local.get $12 + local.get $14 i32.gt_s select local.tee $7 @@ -34868,18 +34845,18 @@ call $~lib/util/sort/insertionSort end local.get $3 - local.get $6 + local.get $5 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $14 i32.const 1 i32.add i64.extend_i32_u - local.tee $14 + local.tee $9 i64.div_u - local.get $6 + local.get $5 local.get $7 i32.add i32.const 1 @@ -34887,7 +34864,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $14 + local.get $9 i64.div_u i64.xor i32.wrap_i64 @@ -34903,7 +34880,7 @@ local.get $8 i32.const 2 i32.shl - local.get $11 + local.get $13 i32.add i32.load local.tee $4 @@ -34912,7 +34889,7 @@ if local.get $0 local.get $4 - local.get $10 + local.get $12 local.get $8 i32.const 2 i32.shl @@ -34921,12 +34898,12 @@ i32.load i32.const 1 i32.add - local.get $5 - local.get $9 + local.get $6 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $11 + local.get $13 i32.add i32.const -1 i32.store @@ -34940,7 +34917,7 @@ br $for-loop|3 end end - local.get $11 + local.get $13 local.get $1 i32.const 2 i32.shl @@ -34949,14 +34926,14 @@ local.get $3 i32.store local.get $4 - local.get $10 + local.get $12 i32.add - local.get $5 - i32.store local.get $6 + i32.store + local.get $5 local.set $3 local.get $7 - local.set $5 + local.set $6 local.get $1 local.set $4 br $while-continue|2 @@ -34968,7 +34945,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $13 i32.add i32.load local.tee $1 @@ -34980,13 +34957,13 @@ local.get $4 i32.const 2 i32.shl - local.get $10 + local.get $12 i32.add i32.load i32.const 1 i32.add - local.get $12 - local.get $9 + local.get $14 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end @@ -34997,10 +34974,10 @@ br $for-loop|4 end end - local.get $9 - call $~lib/rt/tlsf/__free local.get $11 call $~lib/rt/tlsf/__free + local.get $13 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i64) (param $1 i64) (result i32) local.get $0 @@ -35267,14 +35244,14 @@ i32.shl local.get $0 i32.add - local.tee $7 + local.tee $3 i64.load i64.store local.get $1 i32.const 1 i32.add local.set $1 - local.get $7 + local.get $3 local.get $5 i64.store local.get $2 @@ -35453,12 +35430,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) - (local $10 i32) + (local $9 i64) + (local $10 i64) (local $11 i32) (local $12 i32) - (local $13 i64) - (local $14 i64) + (local $13 i32) + (local $14 i32) local.get $1 i32.const 48 i32.le_s @@ -35472,11 +35449,10 @@ block $break|0 block $case1|0 local.get $1 - local.tee $4 i32.const 3 i32.ne if - local.get $4 + local.get $1 i32.const 2 i32.eq br_if $case1|0 @@ -35484,17 +35460,17 @@ end local.get $0 i64.load - local.set $13 + local.set $10 local.get $0 i64.load offset=8 - local.set $14 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $14 - local.get $13 - local.get $13 - local.get $14 + local.get $9 + local.get $10 + local.get $10 + local.get $9 local.get $2 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -35503,21 +35479,21 @@ local.tee $1 select i64.store - local.get $13 - local.get $14 + local.get $10 + local.get $9 local.get $1 select - local.set $13 + local.set $10 local.get $0 i64.load offset=16 - local.set $14 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $14 - local.get $13 - local.get $13 - local.get $14 + local.get $9 + local.get $10 + local.get $10 + local.get $9 local.get $2 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -35527,25 +35503,25 @@ select i64.store offset=8 local.get $0 - local.get $13 - local.get $14 + local.get $10 + local.get $9 local.get $1 select i64.store offset=16 end local.get $0 i64.load - local.set $13 + local.set $10 local.get $0 i64.load offset=8 - local.set $14 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $14 - local.get $13 - local.get $13 - local.get $14 + local.get $9 + local.get $10 + local.get $10 + local.get $9 local.get $2 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -35555,8 +35531,8 @@ select i64.store local.get $0 - local.get $13 - local.get $14 + local.get $10 + local.get $9 local.get $1 select i64.store offset=8 @@ -35564,7 +35540,7 @@ end local.get $0 i32.const 0 - local.get $4 + local.get $1 i32.const 1 i32.sub i32.const 0 @@ -35579,14 +35555,14 @@ local.tee $6 i32.const 2 i32.shl - local.tee $7 + local.tee $5 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $11 - local.get $7 + local.tee $13 + local.get $5 i32.add - local.set $10 + local.set $12 i32.const 0 local.set $7 loop $for-loop|1 @@ -35597,7 +35573,7 @@ local.get $7 i32.const 2 i32.shl - local.get $11 + local.get $13 i32.add i32.const -1 i32.store @@ -35612,16 +35588,16 @@ i32.const 3 i32.shl call $~lib/rt/tlsf/__alloc - local.set $9 + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $12 + local.tee $14 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $5 + local.tee $6 i32.const 1 i32.add local.tee $1 @@ -35630,32 +35606,32 @@ if local.get $0 i32.const 0 - local.get $12 + local.get $14 i32.const 31 - local.get $12 + local.get $14 i32.const 31 i32.lt_s select - local.tee $5 + local.tee $6 local.get $1 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $5 - local.get $12 + local.get $6 + local.get $14 i32.lt_s if local.get $0 - local.get $5 + local.get $6 i32.const 1 i32.add - local.tee $6 - local.get $12 + local.tee $5 + local.get $14 local.get $2 call $~lib/util/sort/extendRunRight local.tee $7 - local.get $6 + local.get $5 i32.sub i32.const 1 i32.add @@ -35664,14 +35640,14 @@ i32.lt_s if local.get $0 - local.get $6 - local.get $12 - local.get $6 + local.get $5 + local.get $14 + local.get $5 i32.const 31 i32.add local.tee $1 local.get $1 - local.get $12 + local.get $14 i32.gt_s select local.tee $7 @@ -35680,18 +35656,18 @@ call $~lib/util/sort/insertionSort end local.get $3 - local.get $6 + local.get $5 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $14 i32.const 1 i32.add i64.extend_i32_u - local.tee $14 + local.tee $9 i64.div_u - local.get $6 + local.get $5 local.get $7 i32.add i32.const 1 @@ -35699,7 +35675,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $14 + local.get $9 i64.div_u i64.xor i32.wrap_i64 @@ -35715,7 +35691,7 @@ local.get $8 i32.const 2 i32.shl - local.get $11 + local.get $13 i32.add i32.load local.tee $4 @@ -35724,7 +35700,7 @@ if local.get $0 local.get $4 - local.get $10 + local.get $12 local.get $8 i32.const 2 i32.shl @@ -35733,12 +35709,12 @@ i32.load i32.const 1 i32.add - local.get $5 - local.get $9 + local.get $6 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $11 + local.get $13 i32.add i32.const -1 i32.store @@ -35752,7 +35728,7 @@ br $for-loop|3 end end - local.get $11 + local.get $13 local.get $1 i32.const 2 i32.shl @@ -35761,14 +35737,14 @@ local.get $3 i32.store local.get $4 - local.get $10 + local.get $12 i32.add - local.get $5 - i32.store local.get $6 + i32.store + local.get $5 local.set $3 local.get $7 - local.set $5 + local.set $6 local.get $1 local.set $4 br $while-continue|2 @@ -35780,7 +35756,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $13 i32.add i32.load local.tee $1 @@ -35792,13 +35768,13 @@ local.get $4 i32.const 2 i32.shl - local.get $10 + local.get $12 i32.add i32.load i32.const 1 i32.add - local.get $12 - local.get $9 + local.get $14 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end @@ -35809,10 +35785,10 @@ br $for-loop|4 end end - local.get $9 - call $~lib/rt/tlsf/__free local.get $11 call $~lib/rt/tlsf/__free + local.get $13 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i64) (param $1 i64) (result i32) local.get $0 @@ -36079,14 +36055,14 @@ i32.shl local.get $0 i32.add - local.tee $7 + local.tee $3 f32.load f32.store local.get $1 i32.const 1 i32.add local.set $1 - local.get $7 + local.get $3 local.get $5 f32.store local.get $2 @@ -36265,13 +36241,13 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i64) - (local $10 i32) - (local $11 i32) + (local $9 f32) + (local $10 f32) + (local $11 i64) (local $12 i32) (local $13 i32) - (local $14 f32) - (local $15 f32) + (local $14 i32) + (local $15 i32) local.get $1 i32.const 48 i32.le_s @@ -36285,11 +36261,10 @@ block $break|0 block $case1|0 local.get $1 - local.tee $4 i32.const 3 i32.ne if - local.get $4 + local.get $1 i32.const 2 i32.eq br_if $case1|0 @@ -36297,17 +36272,17 @@ end local.get $0 f32.load - local.set $15 + local.set $10 local.get $0 f32.load offset=4 - local.set $14 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $14 - local.get $15 - local.get $15 - local.get $14 + local.get $9 + local.get $10 + local.get $10 + local.get $9 local.get $2 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -36316,21 +36291,21 @@ local.tee $1 select f32.store - local.get $15 - local.get $14 + local.get $10 + local.get $9 local.get $1 select - local.set $15 + local.set $10 local.get $0 f32.load offset=8 - local.set $14 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $14 - local.get $15 - local.get $15 - local.get $14 + local.get $9 + local.get $10 + local.get $10 + local.get $9 local.get $2 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -36340,25 +36315,25 @@ select f32.store offset=4 local.get $0 - local.get $15 - local.get $14 + local.get $10 + local.get $9 local.get $1 select f32.store offset=8 end local.get $0 f32.load - local.set $15 + local.set $10 local.get $0 f32.load offset=4 - local.set $14 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $14 - local.get $15 - local.get $15 - local.get $14 + local.get $9 + local.get $10 + local.get $10 + local.get $9 local.get $2 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -36368,8 +36343,8 @@ select f32.store local.get $0 - local.get $15 - local.get $14 + local.get $10 + local.get $9 local.get $1 select f32.store offset=4 @@ -36377,7 +36352,7 @@ end local.get $0 i32.const 0 - local.get $4 + local.get $1 i32.const 1 i32.sub i32.const 0 @@ -36392,14 +36367,14 @@ local.tee $6 i32.const 2 i32.shl - local.tee $7 + local.tee $5 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $12 - local.get $7 + local.tee $14 + local.get $5 i32.add - local.set $11 + local.set $13 i32.const 0 local.set $7 loop $for-loop|1 @@ -36410,7 +36385,7 @@ local.get $7 i32.const 2 i32.shl - local.get $12 + local.get $14 i32.add i32.const -1 i32.store @@ -36425,16 +36400,16 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $10 + local.set $12 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $13 + local.tee $15 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $5 + local.tee $6 i32.const 1 i32.add local.tee $1 @@ -36443,32 +36418,32 @@ if local.get $0 i32.const 0 - local.get $13 + local.get $15 i32.const 31 - local.get $13 + local.get $15 i32.const 31 i32.lt_s select - local.tee $5 + local.tee $6 local.get $1 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $5 - local.get $13 + local.get $6 + local.get $15 i32.lt_s if local.get $0 - local.get $5 + local.get $6 i32.const 1 i32.add - local.tee $6 - local.get $13 + local.tee $5 + local.get $15 local.get $2 call $~lib/util/sort/extendRunRight local.tee $7 - local.get $6 + local.get $5 i32.sub i32.const 1 i32.add @@ -36477,14 +36452,14 @@ i32.lt_s if local.get $0 - local.get $6 - local.get $13 - local.get $6 + local.get $5 + local.get $15 + local.get $5 i32.const 31 i32.add local.tee $1 local.get $1 - local.get $13 + local.get $15 i32.gt_s select local.tee $7 @@ -36493,18 +36468,18 @@ call $~lib/util/sort/insertionSort end local.get $3 - local.get $6 + local.get $5 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $15 i32.const 1 i32.add i64.extend_i32_u - local.tee $9 + local.tee $11 i64.div_u - local.get $6 + local.get $5 local.get $7 i32.add i32.const 1 @@ -36512,7 +36487,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $9 + local.get $11 i64.div_u i64.xor i32.wrap_i64 @@ -36528,7 +36503,7 @@ local.get $8 i32.const 2 i32.shl - local.get $12 + local.get $14 i32.add i32.load local.tee $4 @@ -36537,7 +36512,7 @@ if local.get $0 local.get $4 - local.get $11 + local.get $13 local.get $8 i32.const 2 i32.shl @@ -36546,12 +36521,12 @@ i32.load i32.const 1 i32.add - local.get $5 - local.get $10 + local.get $6 + local.get $12 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $12 + local.get $14 i32.add i32.const -1 i32.store @@ -36565,7 +36540,7 @@ br $for-loop|3 end end - local.get $12 + local.get $14 local.get $1 i32.const 2 i32.shl @@ -36574,14 +36549,14 @@ local.get $3 i32.store local.get $4 - local.get $11 + local.get $13 i32.add - local.get $5 - i32.store local.get $6 + i32.store + local.get $5 local.set $3 local.get $7 - local.set $5 + local.set $6 local.get $1 local.set $4 br $while-continue|2 @@ -36593,7 +36568,7 @@ local.get $4 i32.const 2 i32.shl - local.get $12 + local.get $14 i32.add i32.load local.tee $1 @@ -36605,13 +36580,13 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $13 i32.add i32.load i32.const 1 i32.add - local.get $13 - local.get $10 + local.get $15 + local.get $12 local.get $2 call $~lib/util/sort/mergeRuns end @@ -36622,10 +36597,10 @@ br $for-loop|4 end end - local.get $10 - call $~lib/rt/tlsf/__free local.get $12 call $~lib/rt/tlsf/__free + local.get $14 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 f32) (param $1 f32) (result i32) (local $2 i32) @@ -36746,34 +36721,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $9 i64.const 0 i64.store - local.get $3 + local.get $9 i32.const 0 i32.store offset=8 - local.get $3 + local.get $9 i32.const 6 call $~lib/typedarray/Int8Array#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $3 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $3 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set - local.get $3 + local.get $2 i32.const 3 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $3 + local.get $2 i32.const 5 i32.const 5 call $~lib/typedarray/Int8Array#__set @@ -36790,94 +36765,91 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $9 i64.const 0 i64.store - local.get $3 + local.get $2 i32.load offset=8 - local.set $8 - local.get $1 + local.set $7 + local.get $9 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $9 i32.store global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.const 0 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $6 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $for-loop|0 + local.get $7 local.get $8 - local.get $9 i32.gt_s if - local.get $4 - local.get $9 + local.get $3 + local.get $8 i32.add i32.load8_s - local.set $6 + local.set $5 i32.const 3 global.set $~argumentsLength - local.get $6 - local.get $9 - local.get $3 + local.get $5 + local.get $8 + local.get $2 i32.const 3952 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $2 + local.get $1 local.tee $0 i32.const 1 i32.add - local.set $2 + local.set $1 local.get $0 - local.get $7 - i32.add local.get $6 + i32.add + local.get $5 i32.store8 end - local.get $9 + local.get $8 i32.const 1 i32.add - local.set $9 + local.set $8 br $for-loop|0 end end + local.get $9 + local.get $6 local.get $1 - local.get $7 - local.get $2 call $~lib/rt/itcms/__renew local.tee $0 i32.store - local.get $1 - local.set $3 local.get $0 - local.tee $1 if - local.get $3 - local.get $1 + local.get $9 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $2 - i32.store offset=8 - local.get $3 + local.get $9 local.get $1 + i32.store offset=8 + local.get $9 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $9 i32.store offset=8 - local.get $3 + local.get $9 i32.load offset=4 - local.get $3 + local.get $9 i32.load i32.sub if @@ -36888,7 +36860,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $9 i32.load offset=8 i32.const 3 i32.ne @@ -36900,7 +36872,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $9 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 3 @@ -36913,7 +36885,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $9 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 4 @@ -36926,7 +36898,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $9 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 5 @@ -36973,34 +36945,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $9 i64.const 0 i64.store - local.get $3 + local.get $9 i32.const 0 i32.store offset=8 - local.get $3 + local.get $9 i32.const 6 call $~lib/typedarray/Uint8Array#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $2 i32.const 3 i32.const 4 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $2 i32.const 5 i32.const 5 call $~lib/typedarray/Uint8Array#__set @@ -37017,94 +36989,91 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $9 i64.const 0 i64.store - local.get $3 + local.get $2 i32.load offset=8 - local.set $8 - local.get $1 + local.set $7 + local.get $9 i32.const 12 i32.const 4 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $9 i32.store global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.const 0 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $6 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $for-loop|0 + local.get $7 local.get $8 - local.get $9 i32.gt_s if - local.get $4 - local.get $9 + local.get $3 + local.get $8 i32.add i32.load8_u - local.set $6 + local.set $5 i32.const 3 global.set $~argumentsLength - local.get $6 - local.get $9 - local.get $3 + local.get $5 + local.get $8 + local.get $2 i32.const 3984 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $2 + local.get $1 local.tee $0 i32.const 1 i32.add - local.set $2 + local.set $1 local.get $0 - local.get $7 - i32.add local.get $6 + i32.add + local.get $5 i32.store8 end - local.get $9 + local.get $8 i32.const 1 i32.add - local.set $9 + local.set $8 br $for-loop|0 end end + local.get $9 + local.get $6 local.get $1 - local.get $7 - local.get $2 call $~lib/rt/itcms/__renew local.tee $0 i32.store - local.get $1 - local.set $3 local.get $0 - local.tee $1 if - local.get $3 - local.get $1 + local.get $9 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $2 - i32.store offset=8 - local.get $3 + local.get $9 local.get $1 + i32.store offset=8 + local.get $9 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $9 i32.store offset=8 - local.get $3 + local.get $9 i32.load offset=4 - local.get $3 + local.get $9 i32.load i32.sub if @@ -37115,7 +37084,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $9 i32.load offset=8 i32.const 3 i32.ne @@ -37127,7 +37096,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $9 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 3 @@ -37140,7 +37109,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $9 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 4 @@ -37153,7 +37122,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $9 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 5 @@ -37200,34 +37169,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $9 i64.const 0 i64.store - local.get $3 + local.get $9 i32.const 0 i32.store offset=8 - local.get $3 + local.get $9 i32.const 6 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $3 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $3 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $3 + local.get $2 i32.const 3 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $3 + local.get $2 i32.const 5 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#__set @@ -37244,94 +37213,91 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $9 i64.const 0 i64.store - local.get $3 + local.get $2 i32.load offset=8 - local.set $8 - local.get $1 + local.set $7 + local.get $9 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $9 i32.store global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.const 0 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $6 i32.store offset=4 - local.get $3 + local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $for-loop|0 + local.get $7 local.get $8 - local.get $9 i32.gt_s if - local.get $4 - local.get $9 + local.get $3 + local.get $8 i32.add i32.load8_u - local.set $6 + local.set $5 i32.const 3 global.set $~argumentsLength - local.get $6 - local.get $9 - local.get $3 + local.get $5 + local.get $8 + local.get $2 i32.const 4016 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $2 + local.get $1 local.tee $0 i32.const 1 i32.add - local.set $2 + local.set $1 local.get $0 - local.get $7 - i32.add local.get $6 + i32.add + local.get $5 i32.store8 end - local.get $9 + local.get $8 i32.const 1 i32.add - local.set $9 + local.set $8 br $for-loop|0 end end + local.get $9 + local.get $6 local.get $1 - local.get $7 - local.get $2 call $~lib/rt/itcms/__renew local.tee $0 i32.store - local.get $1 - local.set $3 local.get $0 - local.tee $1 if - local.get $3 - local.get $1 + local.get $9 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $2 - i32.store offset=8 - local.get $3 + local.get $9 local.get $1 + i32.store offset=8 + local.get $9 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $9 i32.store offset=8 - local.get $3 + local.get $9 i32.load offset=4 - local.get $3 + local.get $9 i32.load i32.sub if @@ -37342,7 +37308,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $9 i32.load offset=8 i32.const 3 i32.ne @@ -37354,7 +37320,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $9 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 3 @@ -37367,7 +37333,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $9 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 4 @@ -37380,7 +37346,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $9 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 5 @@ -37427,34 +37393,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $9 i64.const 0 i64.store - local.get $0 + local.get $9 i32.const 0 i32.store offset=8 - local.get $0 + local.get $9 i32.const 6 call $~lib/typedarray/Int16Array#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $2 i32.const 3 i32.const 4 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $2 i32.const 5 i32.const 5 call $~lib/typedarray/Int16Array#__set @@ -37471,104 +37437,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $9 i64.const 0 i64.store - local.get $0 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u - local.set $5 - local.get $2 + local.set $7 + local.get $9 i32.const 12 i32.const 6 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $9 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $7 i32.const 1 i32.shl i32.const 0 call $~lib/rt/itcms/__new local.tee $6 i32.store offset=4 - local.get $0 + local.get $2 i32.load offset=4 - local.set $9 + local.set $3 loop $for-loop|0 - local.get $4 - local.get $5 - i32.lt_s + local.get $7 + local.get $8 + i32.gt_s if - local.get $4 + local.get $8 i32.const 1 i32.shl - local.get $9 + local.get $3 i32.add i32.load16_s - local.set $7 + local.set $5 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $4 - local.get $0 + local.get $5 + local.get $8 + local.get $2 i32.const 4048 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if local.get $1 - local.tee $3 + local.tee $0 i32.const 1 i32.add local.set $1 - local.get $3 + local.get $0 i32.const 1 i32.shl local.get $6 i32.add - local.get $7 + local.get $5 i32.store16 end - local.get $4 + local.get $8 i32.const 1 i32.add - local.set $4 + local.set $8 br $for-loop|0 end end - local.get $2 + local.get $9 local.get $6 local.get $1 i32.const 1 i32.shl - local.tee $3 - call $~lib/rt/itcms/__renew local.tee $1 + call $~lib/rt/itcms/__renew + local.tee $0 i32.store - local.get $2 - local.set $0 - local.get $1 + local.get $0 if + local.get $9 local.get $0 - local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $3 + local.get $9 + local.get $1 i32.store offset=8 + local.get $9 local.get $0 - local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $9 i32.store offset=8 - local.get $0 + local.get $9 i32.load offset=4 - local.get $0 + local.get $9 i32.load i32.sub if @@ -37579,7 +37543,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.load offset=8 i32.const 1 i32.shr_u @@ -37593,7 +37557,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 3 @@ -37606,7 +37570,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 4 @@ -37619,7 +37583,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 5 @@ -37666,34 +37630,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $9 i64.const 0 i64.store - local.get $0 + local.get $9 i32.const 0 i32.store offset=8 - local.get $0 + local.get $9 i32.const 6 call $~lib/typedarray/Uint16Array#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $2 i32.const 3 i32.const 4 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $2 i32.const 5 i32.const 5 call $~lib/typedarray/Uint16Array#__set @@ -37710,104 +37674,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $9 i64.const 0 i64.store - local.get $0 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u - local.set $5 - local.get $2 + local.set $7 + local.get $9 i32.const 12 i32.const 7 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $9 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $7 i32.const 1 i32.shl i32.const 0 call $~lib/rt/itcms/__new local.tee $6 i32.store offset=4 - local.get $0 + local.get $2 i32.load offset=4 - local.set $9 + local.set $3 loop $for-loop|0 - local.get $4 - local.get $5 - i32.lt_s + local.get $7 + local.get $8 + i32.gt_s if - local.get $4 + local.get $8 i32.const 1 i32.shl - local.get $9 + local.get $3 i32.add i32.load16_u - local.set $7 + local.set $5 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $4 - local.get $0 + local.get $5 + local.get $8 + local.get $2 i32.const 4080 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if local.get $1 - local.tee $3 + local.tee $0 i32.const 1 i32.add local.set $1 - local.get $3 + local.get $0 i32.const 1 i32.shl local.get $6 i32.add - local.get $7 + local.get $5 i32.store16 end - local.get $4 + local.get $8 i32.const 1 i32.add - local.set $4 + local.set $8 br $for-loop|0 end end - local.get $2 + local.get $9 local.get $6 local.get $1 i32.const 1 i32.shl - local.tee $3 - call $~lib/rt/itcms/__renew local.tee $1 + call $~lib/rt/itcms/__renew + local.tee $0 i32.store - local.get $2 - local.set $0 - local.get $1 + local.get $0 if + local.get $9 local.get $0 - local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $3 + local.get $9 + local.get $1 i32.store offset=8 + local.get $9 local.get $0 - local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $9 i32.store offset=8 - local.get $0 + local.get $9 i32.load offset=4 - local.get $0 + local.get $9 i32.load i32.sub if @@ -37818,7 +37780,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.load offset=8 i32.const 1 i32.shr_u @@ -37832,7 +37794,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 3 @@ -37845,7 +37807,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 4 @@ -37858,7 +37820,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 5 @@ -37905,34 +37867,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $9 i64.const 0 i64.store - local.get $0 + local.get $9 i32.const 0 i32.store offset=8 - local.get $0 + local.get $9 i32.const 6 call $~lib/typedarray/Int32Array#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $2 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $2 i32.const 5 i32.const 5 call $~lib/typedarray/Int32Array#__set @@ -37949,104 +37911,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $9 i64.const 0 i64.store - local.get $0 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $5 - local.get $2 + local.set $7 + local.get $9 i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $9 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $7 i32.const 2 i32.shl i32.const 0 call $~lib/rt/itcms/__new local.tee $6 i32.store offset=4 - local.get $0 + local.get $2 i32.load offset=4 - local.set $9 + local.set $3 loop $for-loop|0 - local.get $4 - local.get $5 - i32.lt_s + local.get $7 + local.get $8 + i32.gt_s if - local.get $4 + local.get $8 i32.const 2 i32.shl - local.get $9 + local.get $3 i32.add i32.load - local.set $7 + local.set $5 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $4 - local.get $0 + local.get $5 + local.get $8 + local.get $2 i32.const 4112 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if local.get $1 - local.tee $3 + local.tee $0 i32.const 1 i32.add local.set $1 - local.get $3 + local.get $0 i32.const 2 i32.shl local.get $6 i32.add - local.get $7 + local.get $5 i32.store end - local.get $4 + local.get $8 i32.const 1 i32.add - local.set $4 + local.set $8 br $for-loop|0 end end - local.get $2 + local.get $9 local.get $6 local.get $1 i32.const 2 i32.shl - local.tee $3 - call $~lib/rt/itcms/__renew local.tee $1 + call $~lib/rt/itcms/__renew + local.tee $0 i32.store - local.get $2 - local.set $0 - local.get $1 + local.get $0 if + local.get $9 local.get $0 - local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $3 + local.get $9 + local.get $1 i32.store offset=8 + local.get $9 local.get $0 - local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $9 i32.store offset=8 - local.get $0 + local.get $9 i32.load offset=4 - local.get $0 + local.get $9 i32.load i32.sub if @@ -38057,7 +38017,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.load offset=8 i32.const 2 i32.shr_u @@ -38071,7 +38031,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 3 @@ -38084,7 +38044,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 4 @@ -38097,7 +38057,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 5 @@ -38144,34 +38104,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $9 i64.const 0 i64.store - local.get $0 + local.get $9 i32.const 0 i32.store offset=8 - local.get $0 + local.get $9 i32.const 6 call $~lib/typedarray/Uint32Array#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $2 i32.const 3 i32.const 4 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $2 i32.const 5 i32.const 5 call $~lib/typedarray/Uint32Array#__set @@ -38188,104 +38148,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $9 i64.const 0 i64.store - local.get $0 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $5 - local.get $2 + local.set $7 + local.get $9 i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $9 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $7 i32.const 2 i32.shl i32.const 0 call $~lib/rt/itcms/__new local.tee $6 i32.store offset=4 - local.get $0 + local.get $2 i32.load offset=4 - local.set $9 + local.set $3 loop $for-loop|0 - local.get $4 - local.get $5 - i32.lt_s + local.get $7 + local.get $8 + i32.gt_s if - local.get $4 + local.get $8 i32.const 2 i32.shl - local.get $9 + local.get $3 i32.add i32.load - local.set $7 + local.set $5 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $4 - local.get $0 + local.get $5 + local.get $8 + local.get $2 i32.const 4144 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if local.get $1 - local.tee $3 + local.tee $0 i32.const 1 i32.add local.set $1 - local.get $3 + local.get $0 i32.const 2 i32.shl local.get $6 i32.add - local.get $7 + local.get $5 i32.store end - local.get $4 + local.get $8 i32.const 1 i32.add - local.set $4 + local.set $8 br $for-loop|0 end end - local.get $2 + local.get $9 local.get $6 local.get $1 i32.const 2 i32.shl - local.tee $3 - call $~lib/rt/itcms/__renew local.tee $1 + call $~lib/rt/itcms/__renew + local.tee $0 i32.store - local.get $2 - local.set $0 - local.get $1 + local.get $0 if + local.get $9 local.get $0 - local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $3 + local.get $9 + local.get $1 i32.store offset=8 + local.get $9 local.get $0 - local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $9 i32.store offset=8 - local.get $0 + local.get $9 i32.load offset=4 - local.get $0 + local.get $9 i32.load i32.sub if @@ -38296,7 +38254,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.load offset=8 i32.const 2 i32.shr_u @@ -38310,7 +38268,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 3 @@ -38323,7 +38281,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 4 @@ -38336,7 +38294,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 5 @@ -38368,9 +38326,9 @@ (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) + (local $5 i64) (local $6 i32) - (local $7 i64) + (local $7 i32) (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer @@ -38383,34 +38341,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $9 i64.const 0 i64.store - local.get $0 + local.get $9 i32.const 0 i32.store offset=8 - local.get $0 + local.get $9 i32.const 6 call $~lib/typedarray/Int64Array#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $2 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $2 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $2 i32.const 3 i64.const 4 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $2 i32.const 5 i64.const 5 call $~lib/typedarray/Int64Array#__set @@ -38427,104 +38385,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $9 i64.const 0 i64.store - local.get $0 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $5 - local.get $2 + local.set $7 + local.get $9 i32.const 12 i32.const 10 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $9 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $7 i32.const 3 i32.shl i32.const 0 call $~lib/rt/itcms/__new local.tee $6 i32.store offset=4 - local.get $0 + local.get $2 i32.load offset=4 - local.set $9 + local.set $3 loop $for-loop|0 - local.get $4 - local.get $5 - i32.lt_s + local.get $7 + local.get $8 + i32.gt_s if - local.get $4 + local.get $8 i32.const 3 i32.shl - local.get $9 + local.get $3 i32.add i64.load - local.set $7 + local.set $5 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $4 - local.get $0 + local.get $5 + local.get $8 + local.get $2 i32.const 4176 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) if local.get $1 - local.tee $3 + local.tee $0 i32.const 1 i32.add local.set $1 - local.get $3 + local.get $0 i32.const 3 i32.shl local.get $6 i32.add - local.get $7 + local.get $5 i64.store end - local.get $4 + local.get $8 i32.const 1 i32.add - local.set $4 + local.set $8 br $for-loop|0 end end - local.get $2 + local.get $9 local.get $6 local.get $1 i32.const 3 i32.shl - local.tee $3 - call $~lib/rt/itcms/__renew local.tee $1 + call $~lib/rt/itcms/__renew + local.tee $0 i32.store - local.get $2 - local.set $0 - local.get $1 + local.get $0 if + local.get $9 local.get $0 - local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $3 + local.get $9 + local.get $1 i32.store offset=8 + local.get $9 local.get $0 - local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $9 i32.store offset=8 - local.get $0 + local.get $9 i32.load offset=4 - local.get $0 + local.get $9 i32.load i32.sub if @@ -38535,7 +38491,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.load offset=8 i32.const 3 i32.shr_u @@ -38549,7 +38505,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 3 @@ -38562,7 +38518,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 4 @@ -38575,7 +38531,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 5 @@ -38607,9 +38563,9 @@ (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) + (local $5 i64) (local $6 i32) - (local $7 i64) + (local $7 i32) (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer @@ -38622,34 +38578,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $9 i64.const 0 i64.store - local.get $0 + local.get $9 i32.const 0 i32.store offset=8 - local.get $0 + local.get $9 i32.const 6 call $~lib/typedarray/Uint64Array#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $2 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $2 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $2 i32.const 3 i64.const 4 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $2 i32.const 5 i64.const 5 call $~lib/typedarray/Uint64Array#__set @@ -38666,104 +38622,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $9 i64.const 0 i64.store - local.get $0 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $5 - local.get $2 + local.set $7 + local.get $9 i32.const 12 i32.const 11 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $9 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $7 i32.const 3 i32.shl i32.const 0 call $~lib/rt/itcms/__new local.tee $6 i32.store offset=4 - local.get $0 + local.get $2 i32.load offset=4 - local.set $9 + local.set $3 loop $for-loop|0 - local.get $4 - local.get $5 - i32.lt_s + local.get $7 + local.get $8 + i32.gt_s if - local.get $4 + local.get $8 i32.const 3 i32.shl - local.get $9 + local.get $3 i32.add i64.load - local.set $7 + local.set $5 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $4 - local.get $0 + local.get $5 + local.get $8 + local.get $2 i32.const 4208 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) if local.get $1 - local.tee $3 + local.tee $0 i32.const 1 i32.add local.set $1 - local.get $3 + local.get $0 i32.const 3 i32.shl local.get $6 i32.add - local.get $7 + local.get $5 i64.store end - local.get $4 + local.get $8 i32.const 1 i32.add - local.set $4 + local.set $8 br $for-loop|0 end end - local.get $2 + local.get $9 local.get $6 local.get $1 i32.const 3 i32.shl - local.tee $3 - call $~lib/rt/itcms/__renew local.tee $1 + call $~lib/rt/itcms/__renew + local.tee $0 i32.store - local.get $2 - local.set $0 - local.get $1 + local.get $0 if + local.get $9 local.get $0 - local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $3 + local.get $9 + local.get $1 i32.store offset=8 + local.get $9 local.get $0 - local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $9 i32.store offset=8 - local.get $0 + local.get $9 i32.load offset=4 - local.get $0 + local.get $9 i32.load i32.sub if @@ -38774,7 +38728,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.load offset=8 i32.const 3 i32.shr_u @@ -38788,7 +38742,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 3 @@ -38801,7 +38755,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 4 @@ -38814,7 +38768,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 5 @@ -38846,9 +38800,9 @@ (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) + (local $5 f32) (local $6 i32) - (local $7 f32) + (local $7 i32) (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer @@ -38861,34 +38815,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $9 i64.const 0 i64.store - local.get $0 + local.get $9 i32.const 0 i32.store offset=8 - local.get $0 + local.get $9 i32.const 6 call $~lib/typedarray/Float32Array#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $2 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $2 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $2 i32.const 3 f32.const 4 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $2 i32.const 5 f32.const 5 call $~lib/typedarray/Float32Array#__set @@ -38905,104 +38859,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $9 i64.const 0 i64.store - local.get $0 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $5 - local.get $2 + local.set $7 + local.get $9 i32.const 12 i32.const 12 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $9 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $7 i32.const 2 i32.shl i32.const 0 call $~lib/rt/itcms/__new local.tee $6 i32.store offset=4 - local.get $0 + local.get $2 i32.load offset=4 - local.set $9 + local.set $3 loop $for-loop|0 - local.get $4 - local.get $5 - i32.lt_s + local.get $7 + local.get $8 + i32.gt_s if - local.get $4 + local.get $8 i32.const 2 i32.shl - local.get $9 + local.get $3 i32.add f32.load - local.set $7 + local.set $5 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $4 - local.get $0 + local.get $5 + local.get $8 + local.get $2 i32.const 4240 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) if local.get $1 - local.tee $3 + local.tee $0 i32.const 1 i32.add local.set $1 - local.get $3 + local.get $0 i32.const 2 i32.shl local.get $6 i32.add - local.get $7 + local.get $5 f32.store end - local.get $4 + local.get $8 i32.const 1 i32.add - local.set $4 + local.set $8 br $for-loop|0 end end - local.get $2 + local.get $9 local.get $6 local.get $1 i32.const 2 i32.shl - local.tee $3 - call $~lib/rt/itcms/__renew local.tee $1 + call $~lib/rt/itcms/__renew + local.tee $0 i32.store - local.get $2 - local.set $0 - local.get $1 + local.get $0 if + local.get $9 local.get $0 - local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $3 + local.get $9 + local.get $1 i32.store offset=8 + local.get $9 local.get $0 - local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $9 i32.store offset=8 - local.get $0 + local.get $9 i32.load offset=4 - local.get $0 + local.get $9 i32.load i32.sub if @@ -39013,7 +38965,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.load offset=8 i32.const 2 i32.shr_u @@ -39027,7 +38979,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 3 @@ -39040,7 +38992,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 4 @@ -39053,7 +39005,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 5 @@ -39085,9 +39037,9 @@ (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) + (local $5 f64) (local $6 i32) - (local $7 f64) + (local $7 i32) (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer @@ -39100,34 +39052,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $9 i64.const 0 i64.store - local.get $0 + local.get $9 i32.const 0 i32.store offset=8 - local.get $0 + local.get $9 i32.const 6 call $~lib/typedarray/Float64Array#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $2 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $2 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $2 i32.const 3 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $2 i32.const 5 f64.const 5 call $~lib/typedarray/Float64Array#__set @@ -39144,104 +39096,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $9 i64.const 0 i64.store - local.get $0 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $5 - local.get $2 + local.set $7 + local.get $9 i32.const 12 i32.const 13 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $9 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $7 i32.const 3 i32.shl i32.const 0 call $~lib/rt/itcms/__new local.tee $6 i32.store offset=4 - local.get $0 + local.get $2 i32.load offset=4 - local.set $9 + local.set $3 loop $for-loop|0 - local.get $4 - local.get $5 - i32.lt_s + local.get $7 + local.get $8 + i32.gt_s if - local.get $4 + local.get $8 i32.const 3 i32.shl - local.get $9 + local.get $3 i32.add f64.load - local.set $7 + local.set $5 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $4 - local.get $0 + local.get $5 + local.get $8 + local.get $2 i32.const 4272 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) if local.get $1 - local.tee $3 + local.tee $0 i32.const 1 i32.add local.set $1 - local.get $3 + local.get $0 i32.const 3 i32.shl local.get $6 i32.add - local.get $7 + local.get $5 f64.store end - local.get $4 + local.get $8 i32.const 1 i32.add - local.set $4 + local.set $8 br $for-loop|0 end end - local.get $2 + local.get $9 local.get $6 local.get $1 i32.const 3 i32.shl - local.tee $3 - call $~lib/rt/itcms/__renew local.tee $1 + call $~lib/rt/itcms/__renew + local.tee $0 i32.store - local.get $2 - local.set $0 - local.get $1 + local.get $0 if + local.get $9 local.get $0 - local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $3 + local.get $9 + local.get $1 i32.store offset=8 + local.get $9 local.get $0 - local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $9 i32.store offset=8 - local.get $0 + local.get $9 i32.load offset=4 - local.get $0 + local.get $9 i32.load i32.sub if @@ -39252,7 +39202,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.load offset=8 i32.const 3 i32.shr_u @@ -39266,7 +39216,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 3 @@ -39279,7 +39229,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 4 @@ -39292,7 +39242,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $9 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 5 @@ -39780,25 +39730,25 @@ i32.load local.tee $2 call $~lib/typedarray/Int32Array#constructor - local.tee $1 + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $2 call $~lib/typedarray/Int32Array#constructor - local.tee $5 + local.tee $4 i32.store offset=8 loop $for-loop|0 local.get $0 local.get $2 i32.lt_s if - local.get $1 + local.get $3 local.get $0 i32.const 7616 local.get $0 call $~lib/array/Array#__get call $~lib/typedarray/Int32Array#__set - local.get $5 + local.get $4 local.get $0 i32.const 7616 local.get $0 @@ -39813,25 +39763,25 @@ end i32.const 0 local.set $0 - local.get $1 + local.get $3 i32.load offset=4 - local.set $3 - local.get $1 + local.set $5 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 + local.tee $1 i32.const 1 i32.gt_u if - local.get $4 + local.get $1 i32.const 1 i32.shr_u local.set $6 - local.get $4 + local.get $1 i32.const 1 i32.sub - local.set $4 + local.set $7 loop $while-continue|0 local.get $0 local.get $6 @@ -39840,24 +39790,24 @@ local.get $0 i32.const 2 i32.shl - local.get $3 + local.get $5 i32.add - local.tee $7 + local.tee $8 i32.load - local.set $8 + local.set $1 + local.get $8 local.get $7 - local.get $4 local.get $0 i32.sub i32.const 2 i32.shl - local.get $3 + local.get $5 i32.add - local.tee $7 + local.tee $8 i32.load i32.store - local.get $7 local.get $8 + local.get $1 i32.store local.get $0 i32.const 1 @@ -39874,7 +39824,7 @@ local.get $2 i32.lt_s if - local.get $1 + local.get $3 local.get $0 call $~lib/typedarray/Int32Array#__get i32.const 7616 @@ -39901,55 +39851,55 @@ end end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 4 i32.const 8 call $~lib/typedarray/Int32Array#subarray - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=12 i32.const 0 - local.set $2 - local.get $1 + local.set $0 + local.get $2 i32.load offset=4 - local.set $5 - local.get $1 + local.set $3 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 1 i32.gt_u if - local.get $3 + local.get $4 i32.const 1 i32.shr_u - local.set $4 - local.get $3 + local.set $5 + local.get $4 i32.const 1 i32.sub - local.set $3 + local.set $4 loop $while-continue|01 - local.get $2 - local.get $4 + local.get $0 + local.get $5 i32.lt_u if - local.get $2 + local.get $0 i32.const 2 i32.shl - local.get $5 + local.get $3 i32.add local.tee $6 i32.load local.set $7 local.get $6 - local.get $3 - local.get $2 + local.get $4 + local.get $0 i32.sub i32.const 2 i32.shl - local.get $5 + local.get $3 i32.add local.tee $6 i32.load @@ -39957,17 +39907,17 @@ local.get $6 local.get $7 i32.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $while-continue|01 end end end - local.get $1 + local.get $2 i32.store offset=16 - local.get $1 + local.get $2 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 8 @@ -39980,7 +39930,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 7 @@ -39993,7 +39943,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 6 @@ -40006,7 +39956,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 call $~lib/typedarray/Int32Array#__get i32.const 5 @@ -40067,25 +40017,25 @@ i32.load local.tee $2 call $~lib/typedarray/Uint32Array#constructor - local.tee $1 + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $2 call $~lib/typedarray/Uint32Array#constructor - local.tee $5 + local.tee $4 i32.store offset=8 loop $for-loop|0 local.get $0 local.get $2 i32.lt_s if - local.get $1 + local.get $3 local.get $0 i32.const 7616 local.get $0 call $~lib/array/Array#__get call $~lib/typedarray/Uint32Array#__set - local.get $5 + local.get $4 local.get $0 i32.const 7616 local.get $0 @@ -40100,25 +40050,25 @@ end i32.const 0 local.set $0 - local.get $1 + local.get $3 i32.load offset=4 - local.set $3 - local.get $1 + local.set $5 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 + local.tee $1 i32.const 1 i32.gt_u if - local.get $4 + local.get $1 i32.const 1 i32.shr_u local.set $6 - local.get $4 + local.get $1 i32.const 1 i32.sub - local.set $4 + local.set $7 loop $while-continue|0 local.get $0 local.get $6 @@ -40127,24 +40077,24 @@ local.get $0 i32.const 2 i32.shl - local.get $3 + local.get $5 i32.add - local.tee $7 + local.tee $8 i32.load - local.set $8 + local.set $1 + local.get $8 local.get $7 - local.get $4 local.get $0 i32.sub i32.const 2 i32.shl - local.get $3 + local.get $5 i32.add - local.tee $7 + local.tee $8 i32.load i32.store - local.get $7 local.get $8 + local.get $1 i32.store local.get $0 i32.const 1 @@ -40161,7 +40111,7 @@ local.get $2 i32.lt_s if - local.get $1 + local.get $3 local.get $0 call $~lib/typedarray/Uint32Array#__get i32.const 7616 @@ -40188,54 +40138,54 @@ end end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 8 call $~lib/typedarray/Uint32Array#subarray - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=12 i32.const 0 - local.set $2 - local.get $1 + local.set $0 + local.get $2 i32.load offset=4 - local.set $5 - local.get $1 + local.set $3 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 1 i32.gt_u if - local.get $3 + local.get $4 i32.const 1 i32.shr_u - local.set $4 - local.get $3 + local.set $5 + local.get $4 i32.const 1 i32.sub - local.set $3 + local.set $4 loop $while-continue|01 - local.get $2 - local.get $4 + local.get $0 + local.get $5 i32.lt_u if - local.get $2 + local.get $0 i32.const 2 i32.shl - local.get $5 + local.get $3 i32.add local.tee $6 i32.load local.set $7 local.get $6 - local.get $3 - local.get $2 + local.get $4 + local.get $0 i32.sub i32.const 2 i32.shl - local.get $5 + local.get $3 i32.add local.tee $6 i32.load @@ -40243,17 +40193,17 @@ local.get $6 local.get $7 i32.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $while-continue|01 end end end - local.get $1 + local.get $2 i32.store offset=16 - local.get $1 + local.get $2 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 8 @@ -40266,7 +40216,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 7 @@ -40279,7 +40229,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 6 @@ -40292,7 +40242,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 call $~lib/typedarray/Uint32Array#__get i32.const 5 @@ -40312,14 +40262,14 @@ ) (func $std/typedarray/testArrayReverse<~lib/typedarray/Int64Array,i64> (local $0 i32) - (local $1 i32) + (local $1 i64) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i64) + (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -40336,43 +40286,43 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i64.const 0 i64.store offset=8 - local.get $1 + local.get $2 i32.const 0 i32.store offset=16 - local.get $1 + local.get $2 i32.const 7616 i32.store - local.get $1 + local.get $2 i32.const 7628 i32.load local.tee $2 call $~lib/typedarray/Int64Array#constructor - local.tee $1 + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $2 call $~lib/typedarray/Int64Array#constructor - local.tee $5 + local.tee $4 i32.store offset=8 loop $for-loop|0 local.get $0 local.get $2 i32.lt_s if - local.get $1 + local.get $3 local.get $0 i32.const 7616 local.get $0 call $~lib/array/Array#__get i64.extend_i32_s call $~lib/typedarray/Int64Array#__set - local.get $5 + local.get $4 local.get $0 i32.const 7616 local.get $0 @@ -40388,51 +40338,51 @@ end i32.const 0 local.set $0 - local.get $1 + local.get $3 i32.load offset=4 - local.set $3 - local.get $1 + local.set $5 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $4 + local.tee $6 i32.const 1 i32.gt_u if - local.get $4 + local.get $6 i32.const 1 i32.shr_u - local.set $6 - local.get $4 + local.set $7 + local.get $6 i32.const 1 i32.sub - local.set $4 + local.set $6 loop $while-continue|0 local.get $0 - local.get $6 + local.get $7 i32.lt_u if local.get $0 i32.const 3 i32.shl - local.get $3 + local.get $5 i32.add - local.tee $7 + local.tee $8 i64.load - local.set $8 - local.get $7 - local.get $4 + local.set $1 + local.get $8 + local.get $6 local.get $0 i32.sub i32.const 3 i32.shl - local.get $3 + local.get $5 i32.add - local.tee $7 + local.tee $8 i64.load i64.store - local.get $7 local.get $8 + local.get $1 i64.store local.get $0 i32.const 1 @@ -40449,7 +40399,7 @@ local.get $2 i32.lt_s if - local.get $1 + local.get $3 local.get $0 call $~lib/typedarray/Int64Array#__get i32.const 7616 @@ -40477,72 +40427,72 @@ end end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 8 call $~lib/typedarray/Int64Array#subarray - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=12 i32.const 0 - local.set $2 - local.get $1 + local.set $0 + local.get $3 i32.load offset=4 - local.set $5 - local.get $1 + local.set $4 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $5 i32.const 1 i32.gt_u if - local.get $3 + local.get $5 i32.const 1 i32.shr_u - local.set $4 - local.get $3 + local.set $6 + local.get $5 i32.const 1 i32.sub - local.set $3 + local.set $5 loop $while-continue|01 - local.get $2 - local.get $4 + local.get $0 + local.get $6 i32.lt_u if - local.get $2 + local.get $0 i32.const 3 i32.shl - local.get $5 + local.get $4 i32.add - local.tee $6 + local.tee $7 i64.load - local.set $8 - local.get $6 - local.get $3 - local.get $2 + local.set $1 + local.get $7 + local.get $5 + local.get $0 i32.sub i32.const 3 i32.shl - local.get $5 + local.get $4 i32.add - local.tee $6 + local.tee $7 i64.load i64.store - local.get $6 - local.get $8 + local.get $7 + local.get $1 i64.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $while-continue|01 end end end - local.get $1 + local.get $3 i32.store offset=16 - local.get $1 + local.get $3 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 8 @@ -40555,7 +40505,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 7 @@ -40568,7 +40518,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 6 @@ -40581,7 +40531,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 i32.const 3 call $~lib/typedarray/Int64Array#__get i64.const 5 @@ -40601,14 +40551,14 @@ ) (func $std/typedarray/testArrayReverse<~lib/typedarray/Uint64Array,u64> (local $0 i32) - (local $1 i32) + (local $1 i64) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i64) + (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -40625,43 +40575,43 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i64.const 0 i64.store offset=8 - local.get $1 + local.get $2 i32.const 0 i32.store offset=16 - local.get $1 + local.get $2 i32.const 7616 i32.store - local.get $1 + local.get $2 i32.const 7628 i32.load local.tee $2 call $~lib/typedarray/Uint64Array#constructor - local.tee $1 + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $2 call $~lib/typedarray/Uint64Array#constructor - local.tee $5 + local.tee $4 i32.store offset=8 loop $for-loop|0 local.get $0 local.get $2 i32.lt_s if - local.get $1 + local.get $3 local.get $0 i32.const 7616 local.get $0 call $~lib/array/Array#__get i64.extend_i32_s call $~lib/typedarray/Uint64Array#__set - local.get $5 + local.get $4 local.get $0 i32.const 7616 local.get $0 @@ -40677,51 +40627,51 @@ end i32.const 0 local.set $0 - local.get $1 + local.get $3 i32.load offset=4 - local.set $3 - local.get $1 + local.set $5 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $4 + local.tee $6 i32.const 1 i32.gt_u if - local.get $4 + local.get $6 i32.const 1 i32.shr_u - local.set $6 - local.get $4 + local.set $7 + local.get $6 i32.const 1 i32.sub - local.set $4 + local.set $6 loop $while-continue|0 local.get $0 - local.get $6 + local.get $7 i32.lt_u if local.get $0 i32.const 3 i32.shl - local.get $3 + local.get $5 i32.add - local.tee $7 + local.tee $8 i64.load - local.set $8 - local.get $7 - local.get $4 + local.set $1 + local.get $8 + local.get $6 local.get $0 i32.sub i32.const 3 i32.shl - local.get $3 + local.get $5 i32.add - local.tee $7 + local.tee $8 i64.load i64.store - local.get $7 local.get $8 + local.get $1 i64.store local.get $0 i32.const 1 @@ -40738,7 +40688,7 @@ local.get $2 i32.lt_s if - local.get $1 + local.get $3 local.get $0 call $~lib/typedarray/Uint64Array#__get i32.const 7616 @@ -40766,72 +40716,72 @@ end end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 8 call $~lib/typedarray/Uint64Array#subarray - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=12 i32.const 0 - local.set $2 - local.get $1 + local.set $0 + local.get $3 i32.load offset=4 - local.set $5 - local.get $1 + local.set $4 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $5 i32.const 1 i32.gt_u if - local.get $3 + local.get $5 i32.const 1 i32.shr_u - local.set $4 - local.get $3 + local.set $6 + local.get $5 i32.const 1 i32.sub - local.set $3 + local.set $5 loop $while-continue|01 - local.get $2 - local.get $4 + local.get $0 + local.get $6 i32.lt_u if - local.get $2 + local.get $0 i32.const 3 i32.shl - local.get $5 + local.get $4 i32.add - local.tee $6 + local.tee $7 i64.load - local.set $8 - local.get $6 - local.get $3 - local.get $2 + local.set $1 + local.get $7 + local.get $5 + local.get $0 i32.sub i32.const 3 i32.shl - local.get $5 + local.get $4 i32.add - local.tee $6 + local.tee $7 i64.load i64.store - local.get $6 - local.get $8 + local.get $7 + local.get $1 i64.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $while-continue|01 end end end - local.get $1 + local.get $3 i32.store offset=16 - local.get $1 + local.get $3 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 8 @@ -40844,7 +40794,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 7 @@ -40857,7 +40807,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 6 @@ -40870,7 +40820,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 i32.const 3 call $~lib/typedarray/Uint64Array#__get i64.const 5 @@ -40890,14 +40840,14 @@ ) (func $std/typedarray/testArrayReverse<~lib/typedarray/Float32Array,f32> (local $0 i32) - (local $1 i32) + (local $1 f32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 f32) + (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -40914,43 +40864,43 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i64.const 0 i64.store offset=8 - local.get $1 + local.get $2 i32.const 0 i32.store offset=16 - local.get $1 + local.get $2 i32.const 7616 i32.store - local.get $1 + local.get $2 i32.const 7628 i32.load local.tee $2 call $~lib/typedarray/Float32Array#constructor - local.tee $1 + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $2 call $~lib/typedarray/Float32Array#constructor - local.tee $5 + local.tee $4 i32.store offset=8 loop $for-loop|0 local.get $0 local.get $2 i32.lt_s if - local.get $1 + local.get $3 local.get $0 i32.const 7616 local.get $0 call $~lib/array/Array#__get f32.convert_i32_s call $~lib/typedarray/Float32Array#__set - local.get $5 + local.get $4 local.get $0 i32.const 7616 local.get $0 @@ -40966,51 +40916,51 @@ end i32.const 0 local.set $0 - local.get $1 + local.get $3 i32.load offset=4 - local.set $3 - local.get $1 + local.set $5 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 + local.tee $6 i32.const 1 i32.gt_u if - local.get $4 + local.get $6 i32.const 1 i32.shr_u - local.set $6 - local.get $4 + local.set $7 + local.get $6 i32.const 1 i32.sub - local.set $4 + local.set $6 loop $while-continue|0 local.get $0 - local.get $6 + local.get $7 i32.lt_u if local.get $0 i32.const 2 i32.shl - local.get $3 + local.get $5 i32.add - local.tee $7 + local.tee $8 f32.load - local.set $8 - local.get $7 - local.get $4 + local.set $1 + local.get $8 + local.get $6 local.get $0 i32.sub i32.const 2 i32.shl - local.get $3 + local.get $5 i32.add - local.tee $7 + local.tee $8 f32.load f32.store - local.get $7 local.get $8 + local.get $1 f32.store local.get $0 i32.const 1 @@ -41027,7 +40977,7 @@ local.get $2 i32.lt_s if - local.get $1 + local.get $3 local.get $0 call $~lib/typedarray/Float32Array#__get i32.const 7616 @@ -41055,72 +41005,72 @@ end end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 8 call $~lib/typedarray/Float32Array#subarray - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=12 i32.const 0 - local.set $2 - local.get $1 + local.set $0 + local.get $3 i32.load offset=4 - local.set $5 - local.get $1 + local.set $4 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $5 i32.const 1 i32.gt_u if - local.get $3 + local.get $5 i32.const 1 i32.shr_u - local.set $4 - local.get $3 + local.set $6 + local.get $5 i32.const 1 i32.sub - local.set $3 + local.set $5 loop $while-continue|01 - local.get $2 - local.get $4 + local.get $0 + local.get $6 i32.lt_u if - local.get $2 + local.get $0 i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add - local.tee $6 + local.tee $7 f32.load - local.set $8 - local.get $6 - local.get $3 - local.get $2 + local.set $1 + local.get $7 + local.get $5 + local.get $0 i32.sub i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add - local.tee $6 + local.tee $7 f32.load f32.store - local.get $6 - local.get $8 + local.get $7 + local.get $1 f32.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $while-continue|01 end end end - local.get $1 + local.get $3 i32.store offset=16 - local.get $1 + local.get $3 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 8 @@ -41133,7 +41083,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 7 @@ -41146,7 +41096,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 6 @@ -41159,7 +41109,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 i32.const 3 call $~lib/typedarray/Float32Array#__get f32.const 5 @@ -41179,14 +41129,14 @@ ) (func $std/typedarray/testArrayReverse<~lib/typedarray/Float64Array,f64> (local $0 i32) - (local $1 i32) + (local $1 f64) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 f64) + (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -41203,43 +41153,43 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i64.const 0 i64.store offset=8 - local.get $1 + local.get $2 i32.const 0 i32.store offset=16 - local.get $1 + local.get $2 i32.const 7616 i32.store - local.get $1 + local.get $2 i32.const 7628 i32.load local.tee $2 call $~lib/typedarray/Float64Array#constructor - local.tee $1 + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $2 call $~lib/typedarray/Float64Array#constructor - local.tee $5 + local.tee $4 i32.store offset=8 loop $for-loop|0 local.get $0 local.get $2 i32.lt_s if - local.get $1 + local.get $3 local.get $0 i32.const 7616 local.get $0 call $~lib/array/Array#__get f64.convert_i32_s call $~lib/typedarray/Float64Array#__set - local.get $5 + local.get $4 local.get $0 i32.const 7616 local.get $0 @@ -41255,51 +41205,51 @@ end i32.const 0 local.set $0 - local.get $1 + local.get $3 i32.load offset=4 - local.set $3 - local.get $1 + local.set $5 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $4 + local.tee $6 i32.const 1 i32.gt_u if - local.get $4 + local.get $6 i32.const 1 i32.shr_u - local.set $6 - local.get $4 + local.set $7 + local.get $6 i32.const 1 i32.sub - local.set $4 + local.set $6 loop $while-continue|0 local.get $0 - local.get $6 + local.get $7 i32.lt_u if local.get $0 i32.const 3 i32.shl - local.get $3 + local.get $5 i32.add - local.tee $7 + local.tee $8 f64.load - local.set $8 - local.get $7 - local.get $4 + local.set $1 + local.get $8 + local.get $6 local.get $0 i32.sub i32.const 3 i32.shl - local.get $3 + local.get $5 i32.add - local.tee $7 + local.tee $8 f64.load f64.store - local.get $7 local.get $8 + local.get $1 f64.store local.get $0 i32.const 1 @@ -41316,7 +41266,7 @@ local.get $2 i32.lt_s if - local.get $1 + local.get $3 local.get $0 call $~lib/typedarray/Float64Array#__get i32.const 7616 @@ -41344,73 +41294,73 @@ end end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 4 i32.const 8 call $~lib/typedarray/Float64Array#subarray - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=12 i32.const 0 - local.set $2 - local.get $1 + local.set $0 + local.get $3 i32.load offset=4 - local.set $5 - local.get $1 + local.set $4 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $5 i32.const 1 i32.gt_u if - local.get $3 + local.get $5 i32.const 1 i32.shr_u - local.set $4 - local.get $3 + local.set $6 + local.get $5 i32.const 1 i32.sub - local.set $3 + local.set $5 loop $while-continue|01 - local.get $2 - local.get $4 + local.get $0 + local.get $6 i32.lt_u if - local.get $2 + local.get $0 i32.const 3 i32.shl - local.get $5 + local.get $4 i32.add - local.tee $6 + local.tee $7 f64.load - local.set $8 - local.get $6 - local.get $3 - local.get $2 + local.set $1 + local.get $7 + local.get $5 + local.get $0 i32.sub i32.const 3 i32.shl - local.get $5 + local.get $4 i32.add - local.tee $6 + local.tee $7 f64.load f64.store - local.get $6 - local.get $8 + local.get $7 + local.get $1 f64.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $while-continue|01 end end end - local.get $1 + local.get $3 i32.store offset=16 - local.get $1 + local.get $3 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 8 @@ -41423,7 +41373,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 7 @@ -41436,7 +41386,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 6 @@ -41449,7 +41399,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 i32.const 3 call $~lib/typedarray/Float64Array#__get f64.const 5 @@ -41590,14 +41540,14 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Int8Array> (local $0 i32) (local $1 i32) - (local $2 i32) - (local $3 i32) + (local $2 f32) + (local $3 f64) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 f32) - (local $9 f64) + (local $8 i32) + (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -41614,97 +41564,97 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $4 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $4 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $2 + local.tee $5 i32.store offset=4 - local.get $2 + local.get $5 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $5 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $5 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $5 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $5 + local.tee $1 i32.store offset=8 - local.get $5 + local.get $1 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $1 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $1 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Int8Array#constructor - local.tee $0 + local.tee $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $0 + local.get $6 call $~lib/typedarray/Int8Array#set<~lib/array/Array> i32.const 10 i32.const 0 i32.const 15 i32.const 11312 call $~lib/rt/__newArray - local.set $4 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.store offset=16 - local.get $0 - local.get $4 + local.get $6 + local.get $7 call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 block $folding-inner0 - local.get $0 + local.get $6 i32.load offset=8 i32.const 11100 i32.load @@ -41712,47 +41662,47 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 3 i32.add - local.set $6 + local.set $7 i32.const 11092 i32.load - local.set $7 + local.set $8 i32.const 11100 i32.load - local.set $4 + local.set $9 loop $for-loop|0 - local.get $3 - local.get $4 + local.get $0 + local.get $9 i32.lt_s if - local.get $3 - local.get $6 + local.get $0 + local.get $7 i32.add - local.get $3 + local.get $0 i32.const 2 i32.shl - local.get $7 + local.get $8 i32.add f32.load - local.tee $8 - local.get $8 + local.tee $2 + local.get $2 f32.sub f32.const 0 f32.eq if (result i32) - local.get $8 + local.get $2 i32.trunc_f32_s else i32.const 0 end i32.store8 - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|0 end end @@ -41761,34 +41711,34 @@ i32.const 15 i32.const 11392 call $~lib/rt/__newArray - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $3 call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> - local.get $0 - local.get $1 + local.get $6 + local.get $4 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 0 i32.const 15 i32.const 11424 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $1 - local.get $0 + local.set $0 + local.get $6 i32.load offset=8 i32.const 11196 i32.load @@ -41796,47 +41746,47 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 2 i32.add local.set $4 i32.const 11188 i32.load - local.set $6 + local.set $7 i32.const 11196 i32.load - local.set $7 + local.set $8 loop $for-loop|04 - local.get $1 - local.get $7 + local.get $0 + local.get $8 i32.lt_s if - local.get $1 + local.get $0 local.get $4 i32.add - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $6 + local.get $7 i32.add f64.load - local.tee $9 - local.get $9 + local.tee $3 + local.get $3 f64.sub f64.const 0 f64.eq if (result i32) - local.get $9 + local.get $3 i32.trunc_f64_s else i32.const 0 end i32.store8 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|04 end end @@ -41845,35 +41795,35 @@ i32.const 15 i32.const 11456 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> - local.get $0 - local.get $2 - call $~lib/typedarray/Int8Array#set<~lib/typedarray/Uint8Array> - local.get $0 + local.get $6 local.get $5 + call $~lib/typedarray/Int8Array#set<~lib/typedarray/Uint8Array> + local.get $6 + local.get $1 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $0 + local.get $6 call $~lib/typedarray/Int8Array#set<~lib/array/Array> i32.const 10 i32.const 0 i32.const 15 i32.const 11488 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -41980,14 +41930,14 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint8Array> (local $0 i32) (local $1 i32) - (local $2 i32) - (local $3 i32) + (local $2 f32) + (local $3 f64) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 f32) - (local $9 f64) + (local $8 i32) + (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -42004,97 +41954,97 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $4 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $4 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $2 + local.tee $5 i32.store offset=4 - local.get $2 + local.get $5 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $5 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $5 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $5 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $5 + local.tee $1 i32.store offset=8 - local.get $5 + local.get $1 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $1 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $1 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint8Array#constructor - local.tee $0 + local.tee $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $0 + local.get $6 call $~lib/typedarray/Int8Array#set<~lib/array/Array> i32.const 10 i32.const 0 i32.const 63 i32.const 11520 call $~lib/rt/__newArray - local.set $4 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.store offset=16 - local.get $0 - local.get $4 + local.get $6 + local.get $7 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 block $folding-inner0 - local.get $0 + local.get $6 i32.load offset=8 i32.const 11100 i32.load @@ -42102,47 +42052,47 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 3 i32.add - local.set $6 + local.set $7 i32.const 11092 i32.load - local.set $7 + local.set $8 i32.const 11100 i32.load - local.set $4 + local.set $9 loop $for-loop|0 - local.get $3 - local.get $4 + local.get $0 + local.get $9 i32.lt_s if - local.get $3 - local.get $6 + local.get $0 + local.get $7 i32.add - local.get $3 + local.get $0 i32.const 2 i32.shl - local.get $7 + local.get $8 i32.add f32.load - local.tee $8 - local.get $8 + local.tee $2 + local.get $2 f32.sub f32.const 0 f32.eq if (result i32) - local.get $8 + local.get $2 i32.trunc_f32_u else i32.const 0 end i32.store8 - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|0 end end @@ -42151,34 +42101,34 @@ i32.const 63 i32.const 11600 call $~lib/rt/__newArray - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $3 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> - local.get $0 - local.get $1 + local.get $6 + local.get $4 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 0 i32.const 63 i32.const 11632 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $1 - local.get $0 + local.set $0 + local.get $6 i32.load offset=8 i32.const 11196 i32.load @@ -42186,47 +42136,47 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 2 i32.add local.set $4 i32.const 11188 i32.load - local.set $6 + local.set $7 i32.const 11196 i32.load - local.set $7 + local.set $8 loop $for-loop|04 - local.get $1 - local.get $7 + local.get $0 + local.get $8 i32.lt_s if - local.get $1 + local.get $0 local.get $4 i32.add - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $6 + local.get $7 i32.add f64.load - local.tee $9 - local.get $9 + local.tee $3 + local.get $3 f64.sub f64.const 0 f64.eq if (result i32) - local.get $9 + local.get $3 i32.trunc_f64_u else i32.const 0 end i32.store8 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|04 end end @@ -42235,35 +42185,35 @@ i32.const 63 i32.const 11664 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> - local.get $0 - local.get $2 - call $~lib/typedarray/Int8Array#set<~lib/typedarray/Uint8Array> - local.get $0 + local.get $6 local.get $5 + call $~lib/typedarray/Int8Array#set<~lib/typedarray/Uint8Array> + local.get $6 + local.get $1 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $0 + local.get $6 call $~lib/typedarray/Int8Array#set<~lib/array/Array> i32.const 10 i32.const 0 i32.const 63 i32.const 11696 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -42369,16 +42319,16 @@ ) (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint8ClampedArray> (local $0 i32) - (local $1 i32) - (local $2 i32) + (local $1 f32) + (local $2 f64) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 f32) - (local $10 f64) + (local $9 i32) + (local $10 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -42395,16 +42345,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i64.const 0 i64.store - local.get $1 + local.get $3 i64.const 0 i64.store offset=8 - local.get $1 + local.get $3 i32.const 0 i32.store offset=16 - local.get $1 + local.get $3 i32.const 3 call $~lib/typedarray/Int64Array#constructor local.tee $3 @@ -42424,45 +42374,45 @@ global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $2 + local.tee $4 i32.store offset=4 - local.get $2 + local.get $4 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $4 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $4 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $4 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $5 i32.store offset=8 - local.get $4 + local.get $5 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $5 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $5 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $1 + local.tee $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 @@ -42470,41 +42420,41 @@ block $folding-inner0 i32.const 11020 i32.load - local.get $1 + local.get $6 i32.load offset=8 i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $6 i32.load offset=4 - local.set $6 + local.set $7 i32.const 11012 i32.load - local.set $7 + local.set $8 i32.const 11020 i32.load - local.set $8 + local.set $9 loop $for-loop|0 local.get $0 - local.get $8 + local.get $9 i32.lt_s if local.get $0 - local.get $6 + local.get $7 i32.add i32.const 255 local.get $0 i32.const 2 i32.shl - local.get $7 + local.get $8 i32.add i32.load - local.tee $5 + local.tee $10 i32.sub i32.const 31 i32.shr_s - local.get $5 + local.get $10 i32.or - local.get $5 + local.get $10 i32.const 31 i32.shr_s i32.const -1 @@ -42527,7 +42477,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $1 + local.get $6 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> global.get $~lib/memory/__stack_pointer @@ -42535,7 +42485,7 @@ i32.store offset=16 i32.const 0 local.set $0 - local.get $1 + local.get $6 i32.load offset=8 i32.const 11100 i32.load @@ -42543,40 +42493,40 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $1 + local.get $6 i32.load offset=4 i32.const 3 i32.add - local.set $6 + local.set $7 i32.const 11092 i32.load - local.set $7 + local.set $8 i32.const 11100 i32.load - local.set $8 + local.set $9 loop $for-loop|04 local.get $0 - local.get $8 + local.get $9 i32.lt_s if local.get $0 - local.get $6 + local.get $7 i32.add local.get $0 i32.const 2 i32.shl - local.get $7 + local.get $8 i32.add f32.load - local.tee $9 - local.get $9 + local.tee $1 + local.get $1 f32.sub f32.const 0 f32.eq if (result i32) f32.const 0 f32.const 255 - local.get $9 + local.get $1 f32.min f32.max i32.trunc_f32_u @@ -42600,10 +42550,10 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $1 + local.get $6 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> - local.get $1 + local.get $6 local.get $3 i32.const 6 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int64Array> @@ -42616,7 +42566,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $1 + local.get $6 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> global.get $~lib/memory/__stack_pointer @@ -42624,7 +42574,7 @@ i32.store offset=16 i32.const 0 local.set $0 - local.get $1 + local.get $6 i32.load offset=8 i32.const 11196 i32.load @@ -42632,40 +42582,40 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $1 + local.get $6 i32.load offset=4 i32.const 2 i32.add - local.set $5 + local.set $3 i32.const 11188 i32.load - local.set $6 + local.set $7 i32.const 11196 i32.load - local.set $7 + local.set $8 loop $for-loop|08 local.get $0 - local.get $7 + local.get $8 i32.lt_s if local.get $0 - local.get $5 + local.get $3 i32.add local.get $0 i32.const 3 i32.shl - local.get $6 + local.get $7 i32.add f64.load - local.tee $10 - local.get $10 + local.tee $2 + local.get $2 f64.sub f64.const 0 f64.eq if (result i32) f64.const 0 f64.const 255 - local.get $10 + local.get $2 f64.min f64.max i32.trunc_f64_u @@ -42689,14 +42639,14 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $1 + local.get $6 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> - local.get $1 - local.get $2 - call $~lib/typedarray/Int8Array#set<~lib/typedarray/Uint8Array> - local.get $1 + local.get $6 local.get $4 + call $~lib/typedarray/Int8Array#set<~lib/typedarray/Uint8Array> + local.get $6 + local.get $5 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer @@ -42704,7 +42654,7 @@ i32.store offset=16 i32.const 0 local.set $0 - local.get $1 + local.get $6 i32.load offset=8 i32.const 11276 i32.load @@ -42712,7 +42662,7 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $1 + local.get $6 i32.load offset=4 i32.const 7 i32.add @@ -42736,13 +42686,13 @@ local.get $4 i32.add i32.load8_s - local.tee $2 + local.tee $7 i32.sub i32.const 31 i32.shr_s - local.get $2 + local.get $7 i32.or - local.get $2 + local.get $7 i32.const 31 i32.shr_s i32.const -1 @@ -42765,7 +42715,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $1 + local.get $6 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> global.get $~lib/memory/__stack_pointer @@ -42808,7 +42758,7 @@ i32.load offset=8 i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 local.get $1 i32.load offset=12 i32.ne @@ -42822,24 +42772,24 @@ end loop $for-loop|0 local.get $2 - local.get $4 + local.get $3 i32.lt_s if local.get $2 i32.const 1 i32.shl - local.tee $3 + local.tee $5 local.get $0 i32.load offset=4 i32.add i32.load16_s - local.tee $5 + local.tee $4 local.get $1 i32.load offset=4 - local.get $3 + local.get $5 i32.add i32.load16_s - local.tee $3 + local.tee $5 i32.ne if global.get $~lib/memory/__stack_pointer @@ -42849,9 +42799,9 @@ i32.const 3 local.get $2 f64.convert_i32_s - local.get $5 + local.get $4 f64.convert_i32_s - local.get $3 + local.get $5 f64.convert_i32_s f64.const 0 f64.const 0 @@ -42878,14 +42828,14 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Int16Array> (local $0 i32) (local $1 i32) - (local $2 i32) - (local $3 i32) + (local $2 f32) + (local $3 f64) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 f32) - (local $9 f64) + (local $8 i32) + (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -42902,91 +42852,91 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $4 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $4 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $2 + local.tee $5 i32.store offset=4 - local.get $2 + local.get $5 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $5 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $5 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $5 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $5 + local.tee $1 i32.store offset=8 - local.get $5 + local.get $1 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $1 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $1 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Int16Array#constructor - local.tee $0 + local.tee $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $0 + local.get $6 call $~lib/typedarray/Int16Array#set<~lib/array/Array> i32.const 10 i32.const 1 i32.const 64 i32.const 11952 call $~lib/rt/__newArray - local.set $4 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.store offset=16 - local.get $0 - local.get $4 + local.get $6 + local.get $7 call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11088 @@ -42996,55 +42946,55 @@ i32.load i32.const 3 i32.add - local.get $0 + local.get $6 i32.load offset=8 i32.const 1 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 6 i32.add - local.set $6 + local.set $7 i32.const 11092 i32.load - local.set $7 + local.set $8 i32.const 11100 i32.load - local.set $4 + local.set $9 loop $for-loop|0 - local.get $3 - local.get $4 + local.get $0 + local.get $9 i32.lt_s if - local.get $3 + local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $7 i32.add - local.get $3 + local.get $0 i32.const 2 i32.shl - local.get $7 + local.get $8 i32.add f32.load - local.tee $8 - local.get $8 + local.tee $2 + local.get $2 f32.sub f32.const 0 f32.eq if (result i32) - local.get $8 + local.get $2 i32.trunc_f32_s else i32.const 0 end i32.store16 - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|0 end end @@ -43053,86 +43003,86 @@ i32.const 64 i32.const 12048 call $~lib/rt/__newArray - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $3 call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> - local.get $0 - local.get $1 + local.get $6 + local.get $4 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 1 i32.const 64 i32.const 12096 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $1 + local.set $0 i32.const 11196 i32.load i32.const 2 i32.add - local.get $0 + local.get $6 i32.load offset=8 i32.const 1 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 4 i32.add local.set $4 i32.const 11188 i32.load - local.set $6 + local.set $7 i32.const 11196 i32.load - local.set $7 + local.set $8 loop $for-loop|04 - local.get $1 - local.get $7 + local.get $0 + local.get $8 i32.lt_s if - local.get $1 + local.get $0 i32.const 1 i32.shl local.get $4 i32.add - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $6 + local.get $7 i32.add f64.load - local.tee $9 - local.get $9 + local.tee $3 + local.get $3 f64.sub f64.const 0 f64.eq if (result i32) - local.get $9 + local.get $3 i32.trunc_f64_s else i32.const 0 end i32.store16 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|04 end end @@ -43141,35 +43091,35 @@ i32.const 64 i32.const 12144 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> - local.get $0 - local.get $2 - call $~lib/typedarray/Int16Array#set<~lib/typedarray/Uint8Array> - local.get $0 + local.get $6 local.get $5 + call $~lib/typedarray/Int16Array#set<~lib/typedarray/Uint8Array> + local.get $6 + local.get $1 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $0 + local.get $6 call $~lib/typedarray/Int16Array#set<~lib/array/Array> i32.const 10 i32.const 1 i32.const 64 i32.const 12192 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -43211,7 +43161,7 @@ i32.load offset=8 i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 local.get $1 i32.load offset=12 i32.ne @@ -43225,24 +43175,24 @@ end loop $for-loop|0 local.get $2 - local.get $4 + local.get $3 i32.lt_s if local.get $2 i32.const 1 i32.shl - local.tee $3 + local.tee $5 local.get $0 i32.load offset=4 i32.add i32.load16_u - local.tee $5 + local.tee $4 local.get $1 i32.load offset=4 - local.get $3 + local.get $5 i32.add i32.load16_u - local.tee $3 + local.tee $5 i32.ne if global.get $~lib/memory/__stack_pointer @@ -43252,9 +43202,9 @@ i32.const 3 local.get $2 f64.convert_i32_s - local.get $5 + local.get $4 f64.convert_i32_u - local.get $3 + local.get $5 f64.convert_i32_u f64.const 0 f64.const 0 @@ -43281,14 +43231,14 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint16Array> (local $0 i32) (local $1 i32) - (local $2 i32) - (local $3 i32) + (local $2 f32) + (local $3 f64) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 f32) - (local $9 f64) + (local $8 i32) + (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -43305,91 +43255,91 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $4 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $4 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $2 + local.tee $5 i32.store offset=4 - local.get $2 + local.get $5 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $5 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $5 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $5 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $5 + local.tee $1 i32.store offset=8 - local.get $5 + local.get $1 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $1 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $1 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint16Array#constructor - local.tee $0 + local.tee $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $0 + local.get $6 call $~lib/typedarray/Int16Array#set<~lib/array/Array> i32.const 10 i32.const 1 i32.const 65 i32.const 12240 call $~lib/rt/__newArray - local.set $4 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.store offset=16 - local.get $0 - local.get $4 + local.get $6 + local.get $7 call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> global.get $~lib/memory/__stack_pointer i32.const 11088 @@ -43399,55 +43349,55 @@ i32.load i32.const 3 i32.add - local.get $0 + local.get $6 i32.load offset=8 i32.const 1 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 6 i32.add - local.set $6 + local.set $7 i32.const 11092 i32.load - local.set $7 + local.set $8 i32.const 11100 i32.load - local.set $4 + local.set $9 loop $for-loop|0 - local.get $3 - local.get $4 + local.get $0 + local.get $9 i32.lt_s if - local.get $3 + local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $7 i32.add - local.get $3 + local.get $0 i32.const 2 i32.shl - local.get $7 + local.get $8 i32.add f32.load - local.tee $8 - local.get $8 + local.tee $2 + local.get $2 f32.sub f32.const 0 f32.eq if (result i32) - local.get $8 + local.get $2 i32.trunc_f32_u else i32.const 0 end i32.store16 - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|0 end end @@ -43456,86 +43406,86 @@ i32.const 65 i32.const 12336 call $~lib/rt/__newArray - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $3 call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> - local.get $0 - local.get $1 + local.get $6 + local.get $4 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 1 i32.const 65 i32.const 12384 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $1 + local.set $0 i32.const 11196 i32.load i32.const 2 i32.add - local.get $0 + local.get $6 i32.load offset=8 i32.const 1 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 4 i32.add local.set $4 i32.const 11188 i32.load - local.set $6 + local.set $7 i32.const 11196 i32.load - local.set $7 + local.set $8 loop $for-loop|04 - local.get $1 - local.get $7 + local.get $0 + local.get $8 i32.lt_s if - local.get $1 + local.get $0 i32.const 1 i32.shl local.get $4 i32.add - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $6 + local.get $7 i32.add f64.load - local.tee $9 - local.get $9 + local.tee $3 + local.get $3 f64.sub f64.const 0 f64.eq if (result i32) - local.get $9 + local.get $3 i32.trunc_f64_u else i32.const 0 end i32.store16 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|04 end end @@ -43544,35 +43494,35 @@ i32.const 65 i32.const 12432 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> - local.get $0 - local.get $2 - call $~lib/typedarray/Int16Array#set<~lib/typedarray/Uint8Array> - local.get $0 + local.get $6 local.get $5 + call $~lib/typedarray/Int16Array#set<~lib/typedarray/Uint8Array> + local.get $6 + local.get $1 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $0 + local.get $6 call $~lib/typedarray/Int16Array#set<~lib/array/Array> i32.const 10 i32.const 1 i32.const 65 i32.const 12480 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -43614,7 +43564,7 @@ i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 + local.tee $3 local.get $1 i32.load offset=12 i32.ne @@ -43628,24 +43578,24 @@ end loop $for-loop|0 local.get $2 - local.get $4 + local.get $3 i32.lt_s if local.get $2 i32.const 2 i32.shl - local.tee $3 + local.tee $5 local.get $0 i32.load offset=4 i32.add i32.load - local.tee $5 + local.tee $4 local.get $1 i32.load offset=4 - local.get $3 + local.get $5 i32.add i32.load - local.tee $3 + local.tee $5 i32.ne if global.get $~lib/memory/__stack_pointer @@ -43655,9 +43605,9 @@ i32.const 3 local.get $2 f64.convert_i32_s - local.get $5 + local.get $4 f64.convert_i32_s - local.get $3 + local.get $5 f64.convert_i32_s f64.const 0 f64.const 0 @@ -43684,14 +43634,14 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Int32Array> (local $0 i32) (local $1 i32) - (local $2 i32) - (local $3 i32) + (local $2 f32) + (local $3 f64) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 f32) - (local $9 f64) + (local $8 i32) + (local $9 i32) (local $10 i32) global.get $~lib/memory/__stack_pointer i32.const 20 @@ -43709,79 +43659,79 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $1 + local.tee $5 i32.store - local.get $1 + local.get $5 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $5 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $5 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $2 + local.tee $6 i32.store offset=4 - local.get $2 + local.get $6 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $6 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $6 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $6 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $5 + local.tee $1 i32.store offset=8 - local.get $5 + local.get $1 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $1 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $1 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Int32Array#constructor - local.tee $0 + local.tee $7 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $0 + local.get $7 i32.const 11008 i32.const 0 call $~lib/typedarray/Int32Array#set<~lib/array/Array> @@ -43790,12 +43740,12 @@ i32.const 16 i32.const 12528 call $~lib/rt/__newArray - local.set $3 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.store offset=16 - local.get $0 - local.get $3 + local.get $7 + local.get $4 call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> global.get $~lib/memory/__stack_pointer i32.const 11088 @@ -43805,55 +43755,55 @@ i32.load i32.const 3 i32.add - local.get $0 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $7 i32.load offset=4 i32.const 12 i32.add - local.set $6 + local.set $8 i32.const 11092 i32.load - local.set $7 + local.set $9 i32.const 11100 i32.load - local.set $10 + local.set $4 loop $for-loop|0 + local.get $0 local.get $4 - local.get $10 i32.lt_s if - local.get $7 - local.get $4 + local.get $9 + local.get $0 i32.const 2 i32.shl - local.tee $3 + local.tee $10 i32.add f32.load - local.set $8 - local.get $3 - local.get $6 - i32.add - local.get $8 + local.set $2 local.get $8 + local.get $10 + i32.add + local.get $2 + local.get $2 f32.sub f32.const 0 f32.eq if (result i32) - local.get $8 + local.get $2 i32.trunc_f32_s else i32.const 0 end i32.store - local.get $4 + local.get $0 i32.const 1 i32.add - local.set $4 + local.set $0 br $for-loop|0 end end @@ -43862,86 +43812,86 @@ i32.const 16 i32.const 12640 call $~lib/rt/__newArray - local.set $4 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $0 i32.store offset=16 + local.get $7 local.get $0 - local.get $4 call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> - local.get $0 - local.get $1 + local.get $7 + local.get $5 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 2 i32.const 16 i32.const 12704 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $7 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $1 + local.set $0 i32.const 11196 i32.load i32.const 2 i32.add - local.get $0 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $7 i32.load offset=4 i32.const 8 i32.add - local.set $3 + local.set $4 i32.const 11188 i32.load - local.set $6 + local.set $5 i32.const 11196 i32.load - local.set $7 + local.set $8 loop $for-loop|04 - local.get $1 - local.get $7 + local.get $0 + local.get $8 i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $3 + local.get $4 i32.add - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $6 + local.get $5 i32.add f64.load - local.tee $9 - local.get $9 + local.tee $3 + local.get $3 f64.sub f64.const 0 f64.eq if (result i32) - local.get $9 + local.get $3 i32.trunc_f64_s else i32.const 0 end i32.store - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|04 end end @@ -43950,35 +43900,35 @@ i32.const 16 i32.const 12768 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $7 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> - local.get $0 - local.get $2 + local.get $7 + local.get $6 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Uint8Array> - local.get $0 - local.get $5 + local.get $7 + local.get $1 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $0 + local.get $7 call $~lib/typedarray/Int32Array#set<~lib/array/Array> i32.const 10 i32.const 2 i32.const 16 i32.const 12832 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 + local.get $7 local.get $0 - local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -44020,7 +43970,7 @@ i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 + local.tee $3 local.get $1 i32.load offset=12 i32.ne @@ -44034,24 +43984,24 @@ end loop $for-loop|0 local.get $2 - local.get $4 + local.get $3 i32.lt_s if local.get $2 i32.const 2 i32.shl - local.tee $3 + local.tee $5 local.get $0 i32.load offset=4 i32.add i32.load - local.tee $5 + local.tee $4 local.get $1 i32.load offset=4 - local.get $3 + local.get $5 i32.add i32.load - local.tee $3 + local.tee $5 i32.ne if global.get $~lib/memory/__stack_pointer @@ -44061,9 +44011,9 @@ i32.const 3 local.get $2 f64.convert_i32_s - local.get $5 + local.get $4 f64.convert_i32_u - local.get $3 + local.get $5 f64.convert_i32_u f64.const 0 f64.const 0 @@ -44090,14 +44040,14 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint32Array> (local $0 i32) (local $1 i32) - (local $2 i32) - (local $3 i32) + (local $2 f32) + (local $3 f64) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 f32) - (local $9 f64) + (local $8 i32) + (local $9 i32) (local $10 i32) global.get $~lib/memory/__stack_pointer i32.const 20 @@ -44115,79 +44065,79 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $1 + local.tee $5 i32.store - local.get $1 + local.get $5 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $5 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $5 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $2 + local.tee $6 i32.store offset=4 - local.get $2 + local.get $6 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $6 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $6 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $6 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $5 + local.tee $1 i32.store offset=8 - local.get $5 + local.get $1 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $1 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $1 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint32Array#constructor - local.tee $0 + local.tee $7 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $0 + local.get $7 i32.const 11008 i32.const 0 call $~lib/typedarray/Int32Array#set<~lib/array/Array> @@ -44196,12 +44146,12 @@ i32.const 66 i32.const 12896 call $~lib/rt/__newArray - local.set $3 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.store offset=16 - local.get $0 - local.get $3 + local.get $7 + local.get $4 call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> global.get $~lib/memory/__stack_pointer i32.const 11088 @@ -44211,55 +44161,55 @@ i32.load i32.const 3 i32.add - local.get $0 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $7 i32.load offset=4 i32.const 12 i32.add - local.set $6 + local.set $8 i32.const 11092 i32.load - local.set $7 + local.set $9 i32.const 11100 i32.load - local.set $10 + local.set $4 loop $for-loop|0 + local.get $0 local.get $4 - local.get $10 i32.lt_s if - local.get $7 - local.get $4 + local.get $9 + local.get $0 i32.const 2 i32.shl - local.tee $3 + local.tee $10 i32.add f32.load - local.set $8 - local.get $3 - local.get $6 - i32.add - local.get $8 + local.set $2 local.get $8 + local.get $10 + i32.add + local.get $2 + local.get $2 f32.sub f32.const 0 f32.eq if (result i32) - local.get $8 + local.get $2 i32.trunc_f32_u else i32.const 0 end i32.store - local.get $4 + local.get $0 i32.const 1 i32.add - local.set $4 + local.set $0 br $for-loop|0 end end @@ -44268,86 +44218,86 @@ i32.const 66 i32.const 13008 call $~lib/rt/__newArray - local.set $4 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $0 i32.store offset=16 + local.get $7 local.get $0 - local.get $4 call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> - local.get $0 - local.get $1 + local.get $7 + local.get $5 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 2 i32.const 66 i32.const 13072 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $7 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $1 + local.set $0 i32.const 11196 i32.load i32.const 2 i32.add - local.get $0 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $7 i32.load offset=4 i32.const 8 i32.add - local.set $3 + local.set $4 i32.const 11188 i32.load - local.set $6 + local.set $5 i32.const 11196 i32.load - local.set $7 + local.set $8 loop $for-loop|04 - local.get $1 - local.get $7 + local.get $0 + local.get $8 i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $3 + local.get $4 i32.add - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $6 + local.get $5 i32.add f64.load - local.tee $9 - local.get $9 + local.tee $3 + local.get $3 f64.sub f64.const 0 f64.eq if (result i32) - local.get $9 + local.get $3 i32.trunc_f64_u else i32.const 0 end i32.store - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|04 end end @@ -44356,35 +44306,35 @@ i32.const 66 i32.const 13136 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $7 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> - local.get $0 - local.get $2 + local.get $7 + local.get $6 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Uint8Array> - local.get $0 - local.get $5 + local.get $7 + local.get $1 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $0 + local.get $7 call $~lib/typedarray/Int32Array#set<~lib/array/Array> i32.const 10 i32.const 2 i32.const 66 i32.const 13200 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 + local.get $7 local.get $0 - local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -44497,14 +44447,14 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Int64Array> (local $0 i32) (local $1 i32) - (local $2 i32) - (local $3 i32) + (local $2 f64) + (local $3 f32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 f64) - (local $9 f32) + (local $8 i32) + (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -44521,91 +44471,91 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $4 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $4 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $3 + local.tee $5 i32.store offset=4 - local.get $3 + local.get $5 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $5 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $5 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $5 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $5 + local.tee $1 i32.store offset=8 - local.get $5 + local.get $1 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $1 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $1 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Int64Array#constructor - local.tee $0 + local.tee $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $0 + local.get $6 call $~lib/typedarray/Int64Array#set<~lib/array/Array> i32.const 10 i32.const 3 i32.const 67 i32.const 13264 call $~lib/rt/__newArray - local.set $4 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.store offset=16 - local.get $0 - local.get $4 + local.get $6 + local.get $7 call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> global.get $~lib/memory/__stack_pointer i32.const 11088 @@ -44615,55 +44565,55 @@ i32.load i32.const 3 i32.add - local.get $0 + local.get $6 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 24 i32.add - local.set $4 + local.set $7 i32.const 11092 i32.load - local.set $6 + local.set $8 i32.const 11100 i32.load - local.set $7 + local.set $9 loop $for-loop|0 - local.get $2 - local.get $7 + local.get $0 + local.get $9 i32.lt_s if - local.get $2 + local.get $0 i32.const 3 i32.shl - local.get $4 + local.get $7 i32.add - local.get $2 + local.get $0 i32.const 2 i32.shl - local.get $6 + local.get $8 i32.add f32.load - local.tee $9 - local.get $9 + local.tee $3 + local.get $3 f32.sub f32.const 0 f32.eq if (result i64) - local.get $9 + local.get $3 i64.trunc_f32_s else i64.const 0 end i64.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|0 end end @@ -44672,86 +44622,86 @@ i32.const 67 i32.const 13424 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> - local.get $0 - local.get $1 + local.get $6 + local.get $4 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 3 i32.const 67 i32.const 13536 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $1 + local.set $0 i32.const 11196 i32.load i32.const 2 i32.add - local.get $0 + local.get $6 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 16 i32.add - local.set $2 + local.set $4 i32.const 11188 i32.load - local.set $4 + local.set $7 i32.const 11196 i32.load - local.set $6 + local.set $8 loop $for-loop|04 - local.get $1 - local.get $6 + local.get $0 + local.get $8 i32.lt_s if - local.get $4 - local.get $1 + local.get $7 + local.get $0 i32.const 3 i32.shl - local.tee $7 + local.tee $9 i32.add f64.load - local.set $8 - local.get $2 - local.get $7 + local.set $2 + local.get $4 + local.get $9 i32.add - local.get $8 - local.get $8 + local.get $2 + local.get $2 f64.sub f64.const 0 f64.eq if (result i64) - local.get $8 + local.get $2 i64.trunc_f64_s else i64.const 0 end i64.store - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|04 end end @@ -44760,35 +44710,35 @@ i32.const 67 i32.const 13648 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> - local.get $0 - local.get $3 - call $~lib/typedarray/Int64Array#set<~lib/typedarray/Uint8Array> - local.get $0 + local.get $6 local.get $5 + call $~lib/typedarray/Int64Array#set<~lib/typedarray/Uint8Array> + local.get $6 + local.get $1 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $0 + local.get $6 call $~lib/typedarray/Int64Array#set<~lib/array/Array> i32.const 10 i32.const 3 i32.const 67 i32.const 13760 call $~lib/rt/__newArray - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $3 call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -44901,14 +44851,14 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint64Array> (local $0 i32) (local $1 i32) - (local $2 i32) - (local $3 i32) + (local $2 f64) + (local $3 f32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 f64) - (local $9 f32) + (local $8 i32) + (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -44925,91 +44875,91 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $4 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $4 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $3 + local.tee $5 i32.store offset=4 - local.get $3 + local.get $5 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $5 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $5 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $5 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $5 + local.tee $1 i32.store offset=8 - local.get $5 + local.get $1 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $1 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $1 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint64Array#constructor - local.tee $0 + local.tee $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $0 + local.get $6 call $~lib/typedarray/Int64Array#set<~lib/array/Array> i32.const 10 i32.const 3 i32.const 68 i32.const 13872 call $~lib/rt/__newArray - local.set $4 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.store offset=16 - local.get $0 - local.get $4 + local.get $6 + local.get $7 call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> global.get $~lib/memory/__stack_pointer i32.const 11088 @@ -45019,55 +44969,55 @@ i32.load i32.const 3 i32.add - local.get $0 + local.get $6 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 24 i32.add - local.set $4 + local.set $7 i32.const 11092 i32.load - local.set $6 + local.set $8 i32.const 11100 i32.load - local.set $7 + local.set $9 loop $for-loop|0 - local.get $2 - local.get $7 + local.get $0 + local.get $9 i32.lt_s if - local.get $2 + local.get $0 i32.const 3 i32.shl - local.get $4 + local.get $7 i32.add - local.get $2 + local.get $0 i32.const 2 i32.shl - local.get $6 + local.get $8 i32.add f32.load - local.tee $9 - local.get $9 + local.tee $3 + local.get $3 f32.sub f32.const 0 f32.eq if (result i64) - local.get $9 + local.get $3 i64.trunc_f32_u else i64.const 0 end i64.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|0 end end @@ -45076,86 +45026,86 @@ i32.const 68 i32.const 14032 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> - local.get $0 - local.get $1 + local.get $6 + local.get $4 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 3 i32.const 68 i32.const 14144 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $1 + local.set $0 i32.const 11196 i32.load i32.const 2 i32.add - local.get $0 + local.get $6 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 16 i32.add - local.set $2 + local.set $4 i32.const 11188 i32.load - local.set $4 + local.set $7 i32.const 11196 i32.load - local.set $6 + local.set $8 loop $for-loop|04 - local.get $1 - local.get $6 + local.get $0 + local.get $8 i32.lt_s if - local.get $4 - local.get $1 + local.get $7 + local.get $0 i32.const 3 i32.shl - local.tee $7 + local.tee $9 i32.add f64.load - local.set $8 - local.get $2 - local.get $7 + local.set $2 + local.get $4 + local.get $9 i32.add - local.get $8 - local.get $8 + local.get $2 + local.get $2 f64.sub f64.const 0 f64.eq if (result i64) - local.get $8 + local.get $2 i64.trunc_f64_u else i64.const 0 end i64.store - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|04 end end @@ -45164,35 +45114,35 @@ i32.const 68 i32.const 14256 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> - local.get $0 - local.get $3 - call $~lib/typedarray/Int64Array#set<~lib/typedarray/Uint8Array> - local.get $0 + local.get $6 local.get $5 + call $~lib/typedarray/Int64Array#set<~lib/typedarray/Uint8Array> + local.get $6 + local.get $1 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $0 + local.get $6 call $~lib/typedarray/Int64Array#set<~lib/array/Array> i32.const 10 i32.const 3 i32.const 68 i32.const 14368 call $~lib/rt/__newArray - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $3 call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -45328,16 +45278,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i64.const 0 i64.store offset=8 - local.get $2 + local.get $1 i32.const 0 i32.store offset=16 - local.get $2 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor local.tee $3 @@ -45357,45 +45307,45 @@ global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $1 + local.tee $4 i32.store offset=4 - local.get $1 + local.get $4 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $4 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $4 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $4 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $5 i32.store offset=8 - local.get $4 + local.get $5 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $5 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $5 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Float32Array#constructor - local.tee $2 + local.tee $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 @@ -45403,33 +45353,33 @@ block $folding-inner0 i32.const 11020 i32.load - local.get $2 + local.get $6 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $2 + local.get $6 i32.load offset=4 - local.set $5 + local.set $7 i32.const 11012 i32.load - local.set $6 + local.set $8 i32.const 11020 i32.load - local.set $7 + local.set $1 loop $for-loop|0 local.get $0 - local.get $7 + local.get $1 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.tee $8 - local.get $5 + local.tee $2 + local.get $7 i32.add - local.get $6 + local.get $2 local.get $8 i32.add i32.load @@ -45451,13 +45401,13 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $2 + local.get $6 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Float32Array> global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 - local.get $2 + local.get $6 i32.const 11088 i32.const 3 call $~lib/typedarray/Int32Array#set<~lib/array/Array> @@ -45470,7 +45420,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $2 + local.get $6 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Float32Array> i32.const 0 @@ -45481,20 +45431,20 @@ i32.shr_u i32.const 6 i32.add - local.get $2 + local.get $6 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $2 + local.get $6 i32.load offset=4 i32.const 24 i32.add - local.set $5 + local.set $1 local.get $3 i32.load offset=4 - local.set $6 + local.set $2 local.get $3 i32.load offset=8 i32.const 3 @@ -45508,12 +45458,12 @@ local.get $0 i32.const 2 i32.shl - local.get $5 + local.get $1 i32.add local.get $0 i32.const 3 i32.shl - local.get $6 + local.get $2 i32.add i64.load f32.convert_i64_s @@ -45530,44 +45480,44 @@ i32.const 61 i32.const 14656 call $~lib/rt/__newArray - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.store offset=16 - local.get $2 - local.get $3 + local.get $6 + local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Float32Array> i32.const 0 local.set $0 - local.get $1 + local.get $4 i32.load offset=8 - local.get $2 + local.get $6 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $2 + local.get $6 i32.load offset=4 - local.set $3 - local.get $1 + local.set $1 + local.get $4 i32.load offset=4 - local.set $5 - local.get $1 + local.set $2 + local.get $4 i32.load offset=8 - local.set $1 + local.set $3 loop $for-loop|03 local.get $0 - local.get $1 + local.get $3 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $3 + local.get $1 i32.add local.get $0 - local.get $5 + local.get $2 i32.add i32.load8_u f32.convert_i32_u @@ -45580,54 +45530,54 @@ end end i32.const 0 - local.set $1 - local.get $4 + local.set $0 + local.get $5 i32.load offset=8 i32.const 1 i32.shr_u i32.const 4 i32.add - local.get $2 + local.get $6 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $2 + local.get $6 i32.load offset=4 i32.const 16 i32.add - local.set $3 - local.get $4 + local.set $1 + local.get $5 i32.load offset=4 - local.set $0 - local.get $4 + local.set $2 + local.get $5 i32.load offset=8 i32.const 1 i32.shr_u - local.set $4 + local.set $3 loop $for-loop|05 - local.get $1 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $3 - i32.add local.get $1 + i32.add + local.get $0 i32.const 1 i32.shl - local.get $0 + local.get $2 i32.add i32.load16_s f32.convert_i32_s f32.store - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|05 end end @@ -45635,48 +45585,48 @@ i32.const 11264 i32.store offset=16 i32.const 0 - local.set $1 + local.set $0 i32.const 11276 i32.load i32.const 7 i32.add - local.get $2 + local.get $6 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $2 + local.get $6 i32.load offset=4 i32.const 28 i32.add - local.set $3 + local.set $1 i32.const 11268 i32.load - local.set $4 + local.set $2 i32.const 11276 i32.load - local.set $0 + local.set $3 loop $for-loop|09 local.get $0 - local.get $1 - i32.gt_s + local.get $3 + i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $3 - i32.add local.get $1 - local.get $4 + i32.add + local.get $0 + local.get $2 i32.add i32.load8_s f32.convert_i32_s f32.store - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|09 end end @@ -45685,12 +45635,12 @@ i32.const 61 i32.const 14720 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 - local.get $2 - local.get $1 + local.get $6 + local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Float32Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -45823,74 +45773,74 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i64.const 0 i64.store offset=8 - local.get $2 + local.get $1 i32.const 0 i32.store offset=16 - local.get $2 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $1 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $1 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $1 + local.get $2 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $2 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $2 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $2 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $3 i32.store offset=8 - local.get $4 + local.get $3 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $3 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $3 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Float64Array#constructor - local.tee $2 + local.tee $4 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 @@ -45898,13 +45848,13 @@ block $folding-inner0 i32.const 11020 i32.load - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $2 + local.get $4 i32.load offset=4 local.set $5 i32.const 11012 @@ -45947,7 +45897,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $2 + local.get $4 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Float64Array> global.get $~lib/memory/__stack_pointer @@ -45959,13 +45909,13 @@ i32.load i32.const 3 i32.add - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $2 + local.get $4 i32.load offset=4 i32.const 24 i32.add @@ -46010,39 +45960,39 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $2 + local.get $4 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Float64Array> i32.const 0 local.set $0 - local.get $3 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.const 6 i32.add - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $2 + local.get $4 i32.load offset=4 i32.const 48 i32.add local.set $5 - local.get $3 + local.get $1 i32.load offset=4 local.set $6 - local.get $3 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $3 + local.set $1 loop $for-loop|06 local.get $0 - local.get $3 + local.get $1 i32.lt_s if local.get $5 @@ -46069,41 +46019,41 @@ i32.const 62 i32.const 15056 call $~lib/rt/__newArray - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.store offset=16 - local.get $2 - local.get $3 + local.get $4 + local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Float64Array> i32.const 0 local.set $0 - local.get $1 - i32.load offset=8 local.get $2 i32.load offset=8 + local.get $4 + i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=4 local.set $5 - local.get $1 + local.get $2 i32.load offset=8 - local.set $1 + local.set $2 loop $for-loop|08 local.get $0 - local.get $1 + local.get $2 i32.lt_s if local.get $0 i32.const 3 i32.shl - local.get $3 + local.get $1 i32.add local.get $0 local.get $5 @@ -46119,54 +46069,54 @@ end end i32.const 0 - local.set $1 - local.get $4 + local.set $0 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u i32.const 4 i32.add - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $2 + local.get $4 i32.load offset=4 i32.const 32 i32.add - local.set $3 - local.get $4 + local.set $1 + local.get $3 i32.load offset=4 - local.set $0 - local.get $4 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.set $4 + local.set $3 loop $for-loop|010 - local.get $1 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $3 - i32.add local.get $1 + i32.add + local.get $0 i32.const 1 i32.shl - local.get $0 + local.get $2 i32.add i32.load16_s f64.convert_i32_s f64.store - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|010 end end @@ -46174,48 +46124,48 @@ i32.const 11264 i32.store offset=16 i32.const 0 - local.set $1 + local.set $0 i32.const 11276 i32.load i32.const 7 i32.add - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $2 + local.get $4 i32.load offset=4 i32.const 56 i32.add - local.set $3 + local.set $1 i32.const 11268 i32.load - local.set $4 + local.set $2 i32.const 11276 i32.load - local.set $0 + local.set $3 loop $for-loop|014 local.get $0 - local.get $1 - i32.gt_s + local.get $3 + i32.lt_s if - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $3 - i32.add local.get $1 - local.get $4 + i32.add + local.get $0 + local.get $2 i32.add i32.load8_s f64.convert_i32_s f64.store - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|014 end end @@ -46224,12 +46174,12 @@ i32.const 62 i32.const 15168 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 - local.get $2 - local.get $1 + local.get $4 + local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Float64Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -46248,19 +46198,19 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) + (local $3 i64) + (local $4 f32) + (local $5 f64) (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i64) - (local $10 i32) - (local $11 f32) - (local $12 f64) - (local $13 i64) - (local $14 f32) - (local $15 f64) + (local $9 i32) + (local $10 i64) + (local $11 f64) + (local $12 i32) + (local $13 f32) + (local $14 i32) + (local $15 i32) (local $16 i32) global.get $~lib/memory/__stack_pointer i32.const 32 @@ -46307,16 +46257,16 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i64.const 0 i64.store offset=16 - local.get $0 + local.get $1 i64.const 0 i64.store offset=24 memory.size @@ -46358,21 +46308,21 @@ global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u @@ -46386,9 +46336,9 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub if @@ -46399,7 +46349,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 12 i32.ne @@ -46411,7 +46361,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 1 @@ -46424,7 +46374,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 2 @@ -46437,7 +46387,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 3 @@ -46451,13 +46401,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#subarray - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u @@ -46471,9 +46421,9 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub i32.const 4 @@ -46486,7 +46436,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 4 i32.ne @@ -46498,7 +46448,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 2 @@ -46514,42 +46464,42 @@ global.get $~lib/memory/__stack_pointer i32.const 8 call $~lib/typedarray/Float64Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 2 f64.const 7 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 3 f64.const 6 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 4 f64.const 5 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 5 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 6 f64.const 3 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 7 f64.const 8 call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 2 i32.const 6 call $~lib/typedarray/Float64Array#subarray @@ -46645,21 +46595,21 @@ global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const -32 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $1 i32.const 2 i32.const 256 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get if @@ -46670,7 +46620,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 2 @@ -46683,7 +46633,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 255 @@ -46699,29 +46649,29 @@ global.get $~lib/memory/__stack_pointer i32.const 5 call $~lib/typedarray/Int8Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $16 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $16 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $16 i32.const 3 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $16 i32.const 4 i32.const 5 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $16 i32.const 1 i32.const 1 i32.const 3 @@ -46731,12 +46681,12 @@ i32.const 15 i32.const 1728 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $2 - local.get $0 + local.get $16 + local.get $1 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -46747,7 +46697,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $16 i32.const 0 i32.const 0 i32.const 2147483647 @@ -46757,12 +46707,12 @@ i32.const 15 i32.const 1808 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $2 - local.get $0 + local.get $16 + local.get $1 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -46773,7 +46723,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $16 i32.const 1 i32.const 0 i32.const -3 @@ -46783,12 +46733,12 @@ i32.const 15 i32.const 1840 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $2 - local.get $0 + local.get $16 + local.get $1 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -46799,7 +46749,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $16 i32.const 2 i32.const -2 i32.const 2147483647 @@ -46809,12 +46759,12 @@ i32.const 15 i32.const 1872 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $2 - local.get $0 + local.get $16 + local.get $1 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -46825,7 +46775,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $16 i32.const 0 i32.const 1 i32.const 0 @@ -46835,12 +46785,12 @@ i32.const 15 i32.const 1904 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $2 - local.get $0 + local.get $16 + local.get $1 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -46852,18 +46802,18 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.const 1 i32.const 4 call $~lib/typedarray/Int8Array#subarray - local.tee $1 + local.tee $0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 0 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int8Array#fill - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.ne @@ -46875,9 +46825,9 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub i32.const 1 @@ -46890,7 +46840,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.ne @@ -46907,12 +46857,12 @@ i32.const 15 i32.const 1936 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 local.get $1 + i32.store offset=4 local.get $0 + local.get $1 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -46928,12 +46878,12 @@ i32.const 15 i32.const 1968 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $2 - local.get $0 + local.get $16 + local.get $1 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -46947,33 +46897,33 @@ global.get $~lib/memory/__stack_pointer i32.const 5 call $~lib/typedarray/Int32Array#constructor - local.tee $4 + local.tee $14 i32.store offset=8 - local.get $4 + local.get $14 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $14 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $14 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $14 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $14 i32.const 4 i32.const 5 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $14 i32.load offset=4 - local.set $2 + local.set $16 i32.const 1 - local.get $4 + local.get $14 i32.load offset=8 i32.const 2 i32.shr_u @@ -46998,7 +46948,7 @@ local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add i32.const 1 i32.store @@ -47014,12 +46964,12 @@ i32.const 16 i32.const 2000 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $4 - local.get $0 + local.get $14 + local.get $1 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47030,11 +46980,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $14 i32.load offset=4 - local.set $2 + local.set $16 i32.const 0 - local.get $4 + local.get $14 i32.load offset=8 i32.const 2 i32.shr_u @@ -47050,7 +47000,7 @@ local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add i32.const 0 i32.store @@ -47066,12 +47016,12 @@ i32.const 16 i32.const 2048 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $4 - local.get $0 + local.get $14 + local.get $1 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47082,11 +47032,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $14 i32.load offset=4 - local.set $2 + local.set $16 i32.const 0 - local.get $4 + local.get $14 i32.load offset=8 i32.const 2 i32.shr_u @@ -47112,7 +47062,7 @@ local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add i32.const 1 i32.store @@ -47128,12 +47078,12 @@ i32.const 16 i32.const 2096 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $4 - local.get $0 + local.get $14 + local.get $1 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47144,32 +47094,32 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $14 i32.load offset=4 - local.set $2 - local.get $4 + local.set $15 + local.get $14 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $1 + local.tee $16 i32.const 2 i32.sub - local.tee $0 + local.tee $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 i32.gt_s select local.set $0 loop $for-loop|05 local.get $0 - local.get $1 + local.get $16 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $15 i32.add i32.const 2 i32.store @@ -47185,12 +47135,12 @@ i32.const 16 i32.const 2144 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $4 - local.get $0 + local.get $14 + local.get $1 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47201,11 +47151,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $14 i32.load offset=4 - local.set $2 + local.set $16 i32.const 1 - local.get $4 + local.get $14 i32.load offset=8 i32.const 2 i32.shr_u @@ -47228,7 +47178,7 @@ local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add i32.const 0 i32.store @@ -47244,12 +47194,12 @@ i32.const 16 i32.const 2192 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $4 - local.get $0 + local.get $14 + local.get $1 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47261,17 +47211,17 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $14 i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#subarray - local.tee $3 + local.tee $15 i32.store offset=12 - local.get $3 + local.get $15 i32.load offset=4 - local.set $2 + local.set $16 i32.const 0 - local.get $3 + local.get $15 i32.load offset=8 i32.const 2 i32.shr_u @@ -47287,7 +47237,7 @@ local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add i32.const 0 i32.store @@ -47298,7 +47248,7 @@ br $for-loop|09 end end - local.get $3 + local.get $15 i32.load offset=8 i32.const 2 i32.shr_u @@ -47312,9 +47262,9 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $15 i32.load offset=4 - local.get $3 + local.get $15 i32.load i32.sub i32.const 4 @@ -47327,7 +47277,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $15 i32.load offset=8 i32.const 12 i32.ne @@ -47344,12 +47294,12 @@ i32.const 16 i32.const 2240 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $3 - local.get $0 + local.get $15 + local.get $1 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47365,12 +47315,12 @@ i32.const 16 i32.const 2272 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $4 - local.get $0 + local.get $14 + local.get $1 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47384,40 +47334,40 @@ global.get $~lib/memory/__stack_pointer i32.const 6 call $~lib/typedarray/Int8Array#constructor - local.tee $0 + local.tee $1 i32.store offset=12 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $1 i32.const 4 i32.const 5 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $1 i32.const 5 i32.const 6 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 1 i32.const 6 call $~lib/typedarray/Int8Array#subarray - local.tee $0 + local.tee $1 i32.store offset=8 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 2 @@ -47430,7 +47380,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 5 i32.ne @@ -47442,9 +47392,9 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub i32.const 1 @@ -47457,7 +47407,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 5 i32.ne @@ -47470,13 +47420,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 1 i32.const 5 call $~lib/typedarray/Int8Array#subarray - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 3 @@ -47489,7 +47439,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 4 i32.ne @@ -47501,9 +47451,9 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub i32.const 2 @@ -47516,7 +47466,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 4 i32.ne @@ -47529,13 +47479,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 1 i32.const 4 call $~lib/typedarray/Int8Array#subarray - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 4 @@ -47548,7 +47498,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 3 i32.ne @@ -47560,9 +47510,9 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub i32.const 3 @@ -47575,7 +47525,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 3 i32.ne @@ -47590,55 +47540,55 @@ global.get $~lib/memory/__stack_pointer i32.const 5 call $~lib/typedarray/Int32Array#constructor - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.const 4 i32.const 5 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $2 + local.tee $16 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 3 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2320 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 local.get $1 + i32.store offset=4 local.get $0 + local.get $1 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47650,32 +47600,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 1 i32.const 3 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2368 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 local.get $1 + i32.store offset=4 local.get $0 + local.get $1 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47687,32 +47637,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 1 i32.const 2 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2416 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 local.get $1 + i32.store offset=4 local.get $0 + local.get $1 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47724,32 +47674,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 2 i32.const 2 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2464 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 local.get $1 + i32.store offset=4 local.get $0 + local.get $1 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47761,32 +47711,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 0 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2512 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 local.get $1 + i32.store offset=4 local.get $0 + local.get $1 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47798,32 +47748,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 1 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2560 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 local.get $1 + i32.store offset=4 local.get $0 + local.get $1 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47835,32 +47785,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 1 i32.const 2 i32.const 4 call $~lib/typedarray/Int32Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2608 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 local.get $1 + i32.store offset=4 local.get $0 + local.get $1 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47872,32 +47822,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 0 i32.const -2 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2656 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 local.get $1 + i32.store offset=4 local.get $0 + local.get $1 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47909,32 +47859,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 0 i32.const -2 i32.const -1 call $~lib/typedarray/Int32Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2704 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 local.get $1 + i32.store offset=4 local.get $0 + local.get $1 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47946,32 +47896,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const -4 i32.const -3 i32.const -2 call $~lib/typedarray/Int32Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2752 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 local.get $1 + i32.store offset=4 local.get $0 + local.get $1 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47983,32 +47933,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const -4 i32.const -3 i32.const -1 call $~lib/typedarray/Int32Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2800 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 local.get $1 + i32.store offset=4 local.get $0 + local.get $1 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -48020,32 +47970,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const -4 i32.const -3 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2848 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 local.get $1 + i32.store offset=4 local.get $0 + local.get $1 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -48059,30 +48009,30 @@ global.get $~lib/memory/__stack_pointer i32.const 5 call $~lib/typedarray/Int32Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $16 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $16 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $16 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $16 i32.const 4 i32.const 5 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#subarray @@ -48130,7 +48080,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.const 1 i32.const 3 call $~lib/typedarray/Int32Array#slice @@ -48206,9 +48156,9 @@ i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#slice - local.tee $0 + local.tee $1 i32.store offset=12 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 3 @@ -48221,7 +48171,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u @@ -48235,9 +48185,9 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub if @@ -48248,7 +48198,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 4 i32.ne @@ -48261,14 +48211,14 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $0 + local.tee $1 i32.store offset=24 - local.get $0 - local.get $2 + local.get $1 + local.get $16 i32.eq if i32.const 0 @@ -48278,11 +48228,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.get $2 + local.get $16 i32.load offset=8 i32.const 2 i32.shr_u @@ -48295,14 +48245,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub - local.get $2 + local.get $16 i32.load offset=4 - local.get $2 + local.get $16 i32.load i32.sub i32.ne @@ -48314,9 +48264,9 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 - local.get $2 + local.get $16 i32.load offset=8 i32.ne if @@ -48336,63 +48286,63 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $3 + local.get $15 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $3 + local.get $15 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer i32.const 2896 i32.store offset=4 - local.get $3 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 - local.set $1 + local.set $0 loop $for-loop|011 - local.get $1 - local.get $5 + local.get $0 + local.get $8 i32.gt_s if - local.get $2 - local.get $5 + local.get $8 + local.get $16 i32.add i32.load8_s - local.set $0 + local.set $1 i32.const 4 global.set $~argumentsLength - local.get $6 - local.get $0 - local.get $5 - local.get $3 + local.get $9 + local.get $1 + local.get $8 + local.get $15 i32.const 2896 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $6 - local.get $5 + local.set $9 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|011 end end - local.get $6 + local.get $9 i32.const 255 i32.and i32.const 6 @@ -48411,23 +48361,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $15 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $15 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -48435,43 +48385,43 @@ i32.const 2928 i32.store offset=4 i32.const 0 - local.set $5 + local.set $8 i32.const 0 - local.set $6 - local.get $3 + local.set $9 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 - local.set $1 + local.set $0 loop $for-loop|010 - local.get $1 - local.get $5 + local.get $0 + local.get $8 i32.gt_s if - local.get $2 - local.get $5 + local.get $8 + local.get $16 i32.add i32.load8_u - local.set $0 + local.set $1 i32.const 4 global.set $~argumentsLength - local.get $6 - local.get $0 - local.get $5 - local.get $3 + local.get $9 + local.get $1 + local.get $8 + local.get $15 i32.const 2928 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $6 - local.get $5 + local.set $9 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|010 end end - local.get $6 + local.get $9 i32.const 255 i32.and i32.const 6 @@ -48490,23 +48440,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $3 + local.get $15 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $3 + local.get $15 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -48514,43 +48464,43 @@ i32.const 2960 i32.store offset=4 i32.const 0 - local.set $5 + local.set $8 i32.const 0 - local.set $6 - local.get $3 + local.set $9 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 - local.set $1 + local.set $0 loop $for-loop|013 - local.get $1 - local.get $5 + local.get $0 + local.get $8 i32.gt_s if - local.get $2 - local.get $5 + local.get $8 + local.get $16 i32.add i32.load8_u - local.set $0 + local.set $1 i32.const 4 global.set $~argumentsLength - local.get $6 - local.get $0 - local.get $5 - local.get $3 + local.get $9 + local.get $1 + local.get $8 + local.get $15 i32.const 2960 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $6 - local.get $5 + local.set $9 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|013 end end - local.get $6 + local.get $9 i32.const 255 i32.and i32.const 6 @@ -48569,23 +48519,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $15 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $15 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -48593,47 +48543,47 @@ i32.const 2992 i32.store offset=4 i32.const 0 - local.set $5 + local.set $8 i32.const 0 - local.set $6 - local.get $3 + local.set $9 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 1 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|014 - local.get $1 - local.get $5 + local.get $0 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 1 i32.shl - local.get $2 + local.get $16 i32.add i32.load16_s - local.set $0 + local.set $1 i32.const 4 global.set $~argumentsLength - local.get $6 - local.get $0 - local.get $5 - local.get $3 + local.get $9 + local.get $1 + local.get $8 + local.get $15 i32.const 2992 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $6 - local.get $5 + local.set $9 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|014 end end - local.get $6 + local.get $9 i32.const 65535 i32.and i32.const 6 @@ -48652,23 +48602,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $3 + local.get $15 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $3 + local.get $15 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -48676,47 +48626,47 @@ i32.const 3024 i32.store offset=4 i32.const 0 - local.set $5 + local.set $8 i32.const 0 - local.set $6 - local.get $3 + local.set $9 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 1 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|016 - local.get $1 - local.get $5 + local.get $0 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 1 i32.shl - local.get $2 + local.get $16 i32.add i32.load16_u - local.set $0 + local.set $1 i32.const 4 global.set $~argumentsLength - local.get $6 - local.get $0 - local.get $5 - local.get $3 + local.get $9 + local.get $1 + local.get $8 + local.get $15 i32.const 3024 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $6 - local.get $5 + local.set $9 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|016 end end - local.get $6 + local.get $9 i32.const 65535 i32.and i32.const 6 @@ -48735,23 +48685,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $3 + local.get $15 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $3 + local.get $15 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -48759,47 +48709,47 @@ i32.const 3056 i32.store offset=4 i32.const 0 - local.set $5 + local.set $8 i32.const 0 - local.set $6 - local.get $3 + local.set $9 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|018 - local.get $1 - local.get $5 + local.get $0 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add i32.load - local.set $0 + local.set $1 i32.const 4 global.set $~argumentsLength - local.get $6 - local.get $0 - local.get $5 - local.get $3 + local.get $9 + local.get $1 + local.get $8 + local.get $15 i32.const 3056 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $6 - local.get $5 + local.set $9 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|018 end end - local.get $6 + local.get $9 i32.const 6 i32.ne br_if $folding-inner1 @@ -48816,23 +48766,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $3 + local.get $15 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $3 + local.get $15 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -48840,47 +48790,47 @@ i32.const 3088 i32.store offset=4 i32.const 0 - local.set $5 + local.set $8 i32.const 0 - local.set $6 - local.get $3 + local.set $9 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|021 - local.get $1 - local.get $5 + local.get $0 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add i32.load - local.set $0 + local.set $1 i32.const 4 global.set $~argumentsLength - local.get $6 - local.get $0 - local.get $5 - local.get $3 + local.get $9 + local.get $1 + local.get $8 + local.get $15 i32.const 3088 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $6 - local.get $5 + local.set $9 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|021 end end - local.get $6 + local.get $9 i32.const 6 i32.ne br_if $folding-inner1 @@ -48897,23 +48847,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $16 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $16 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set @@ -48921,45 +48871,45 @@ i32.const 3120 i32.store offset=4 i32.const 0 - local.set $5 - local.get $2 + local.set $8 + local.get $16 i32.load offset=4 - local.set $1 - local.get $2 + local.set $0 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|023 - local.get $0 - local.get $5 + local.get $1 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add i64.load - local.set $9 + local.set $10 i32.const 4 global.set $~argumentsLength - local.get $13 - local.get $9 - local.get $5 - local.get $2 + local.get $3 + local.get $10 + local.get $8 + local.get $16 i32.const 3120 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $13 - local.get $5 + local.set $3 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|023 end end - local.get $13 + local.get $3 i64.const 6 i64.ne br_if $folding-inner1 @@ -48976,23 +48926,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $16 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $16 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set @@ -49000,47 +48950,47 @@ i32.const 3152 i32.store offset=4 i32.const 0 - local.set $5 + local.set $8 i64.const 0 - local.set $13 - local.get $2 + local.set $3 + local.get $16 i32.load offset=4 - local.set $1 - local.get $2 + local.set $0 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|025 - local.get $0 - local.get $5 + local.get $1 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add i64.load - local.set $9 + local.set $10 i32.const 4 global.set $~argumentsLength - local.get $13 - local.get $9 - local.get $5 - local.get $2 + local.get $3 + local.get $10 + local.get $8 + local.get $16 i32.const 3152 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $13 - local.get $5 + local.set $3 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|025 end end - local.get $13 + local.get $3 i64.const 6 i64.ne br_if $folding-inner1 @@ -49057,23 +49007,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $16 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $16 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set @@ -49081,45 +49031,45 @@ i32.const 3184 i32.store offset=4 i32.const 0 - local.set $5 - local.get $2 + local.set $8 + local.get $16 i32.load offset=4 - local.set $1 - local.get $2 + local.set $0 + local.get $16 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|027 - local.get $0 - local.get $5 + local.get $1 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add f32.load - local.set $11 + local.set $13 i32.const 4 global.set $~argumentsLength - local.get $14 - local.get $11 - local.get $5 - local.get $2 + local.get $4 + local.get $13 + local.get $8 + local.get $16 i32.const 3184 i32.load call_indirect $0 (type $f32_f32_i32_i32_=>_f32) - local.set $14 - local.get $5 + local.set $4 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|027 end end - local.get $14 + local.get $4 f32.const 6 f32.ne br_if $folding-inner1 @@ -49136,23 +49086,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $16 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $16 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set @@ -49160,45 +49110,45 @@ i32.const 3216 i32.store offset=4 i32.const 0 - local.set $5 - local.get $2 + local.set $8 + local.get $16 i32.load offset=4 - local.set $1 - local.get $2 + local.set $0 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|029 - local.get $0 - local.get $5 + local.get $1 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add f64.load - local.set $12 + local.set $11 i32.const 4 global.set $~argumentsLength - local.get $15 - local.get $12 local.get $5 - local.get $2 + local.get $11 + local.get $8 + local.get $16 i32.const 3216 i32.load call_indirect $0 (type $f64_f64_i32_i32_=>_f64) - local.set $15 - local.get $5 + local.set $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|029 end end - local.get $15 + local.get $5 f64.const 6 f64.ne br_if $folding-inner1 @@ -49215,39 +49165,39 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Int8Array#at i32.const 1 i32.ne br_if $folding-inner2 - local.get $0 + local.get $1 i32.const -1 call $~lib/typedarray/Int8Array#at i32.const 3 i32.ne br_if $folding-inner3 - local.get $0 + local.get $1 i32.const -3 call $~lib/typedarray/Int8Array#at i32.const 1 @@ -49266,39 +49216,39 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8Array#at i32.const 1 i32.ne br_if $folding-inner2 - local.get $0 + local.get $1 i32.const -1 call $~lib/typedarray/Uint8Array#at i32.const 3 i32.ne br_if $folding-inner3 - local.get $0 + local.get $1 i32.const -3 call $~lib/typedarray/Uint8Array#at i32.const 1 @@ -49317,39 +49267,39 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#at i32.const 1 i32.ne br_if $folding-inner2 - local.get $0 + local.get $1 i32.const -1 call $~lib/typedarray/Uint8ClampedArray#at i32.const 3 i32.ne br_if $folding-inner3 - local.get $0 + local.get $1 i32.const -3 call $~lib/typedarray/Uint8ClampedArray#at i32.const 1 @@ -49368,39 +49318,39 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Int16Array#at i32.const 1 i32.ne br_if $folding-inner2 - local.get $0 + local.get $1 i32.const -1 call $~lib/typedarray/Int16Array#at i32.const 3 i32.ne br_if $folding-inner3 - local.get $0 + local.get $1 i32.const -3 call $~lib/typedarray/Int16Array#at i32.const 1 @@ -49419,39 +49369,39 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint16Array#at i32.const 1 i32.ne br_if $folding-inner2 - local.get $0 + local.get $1 i32.const -1 call $~lib/typedarray/Uint16Array#at i32.const 3 i32.ne br_if $folding-inner3 - local.get $0 + local.get $1 i32.const -3 call $~lib/typedarray/Uint16Array#at i32.const 1 @@ -49470,39 +49420,39 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Int32Array#at i32.const 1 i32.ne br_if $folding-inner2 - local.get $0 + local.get $1 i32.const -1 call $~lib/typedarray/Int32Array#at i32.const 3 i32.ne br_if $folding-inner3 - local.get $0 + local.get $1 i32.const -3 call $~lib/typedarray/Int32Array#at i32.const 1 @@ -49521,39 +49471,39 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint32Array#at i32.const 1 i32.ne br_if $folding-inner2 - local.get $0 + local.get $1 i32.const -1 call $~lib/typedarray/Uint32Array#at i32.const 3 i32.ne br_if $folding-inner3 - local.get $0 + local.get $1 i32.const -3 call $~lib/typedarray/Uint32Array#at i32.const 1 @@ -49572,39 +49522,39 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $1 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Int64Array#at i64.const 1 i64.ne br_if $folding-inner2 - local.get $0 + local.get $1 i32.const -1 call $~lib/typedarray/Int64Array#at i64.const 3 i64.ne br_if $folding-inner3 - local.get $0 + local.get $1 i32.const -3 call $~lib/typedarray/Int64Array#at i64.const 1 @@ -49623,39 +49573,39 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $1 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint64Array#at i64.const 1 i64.ne br_if $folding-inner2 - local.get $0 + local.get $1 i32.const -1 call $~lib/typedarray/Uint64Array#at i64.const 3 i64.ne br_if $folding-inner3 - local.get $0 + local.get $1 i32.const -3 call $~lib/typedarray/Uint64Array#at i64.const 1 @@ -49674,39 +49624,39 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Float32Array#at f32.const 1 f32.ne br_if $folding-inner2 - local.get $0 + local.get $1 i32.const -1 call $~lib/typedarray/Float32Array#at f32.const 3 f32.ne br_if $folding-inner3 - local.get $0 + local.get $1 i32.const -3 call $~lib/typedarray/Float32Array#at f32.const 1 @@ -49725,39 +49675,39 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Float64Array#at f64.const 1 f64.ne br_if $folding-inner2 - local.get $0 + local.get $1 i32.const -1 call $~lib/typedarray/Float64Array#at f64.const 3 f64.ne br_if $folding-inner3 - local.get $0 + local.get $1 i32.const -3 call $~lib/typedarray/Float64Array#at f64.const 1 @@ -49776,23 +49726,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $16 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $16 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set @@ -49800,43 +49750,43 @@ i32.const 3248 i32.store offset=4 i32.const 0 - local.set $5 - local.get $2 + local.set $8 + local.get $16 i32.load offset=4 - local.set $1 - local.get $2 + local.set $0 + local.get $16 i32.load offset=8 i32.const 1 i32.sub - local.set $3 + local.set $15 loop $for-loop|031 - local.get $3 + local.get $15 i32.const 0 i32.ge_s if - local.get $1 - local.get $3 + local.get $0 + local.get $15 i32.add i32.load8_s - local.set $0 + local.set $1 i32.const 4 global.set $~argumentsLength - local.get $5 - local.get $0 - local.get $3 - local.get $2 + local.get $8 + local.get $1 + local.get $15 + local.get $16 i32.const 3248 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $5 - local.get $3 + local.set $8 + local.get $15 i32.const 1 i32.sub - local.set $3 + local.set $15 br $for-loop|031 end end - local.get $5 + local.get $8 i32.const 255 i32.and i32.const 6 @@ -49855,23 +49805,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $16 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $16 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -49879,43 +49829,43 @@ i32.const 3280 i32.store offset=4 i32.const 0 - local.set $5 - local.get $2 + local.set $8 + local.get $16 i32.load offset=4 - local.set $1 - local.get $2 + local.set $0 + local.get $16 i32.load offset=8 i32.const 1 i32.sub - local.set $3 + local.set $15 loop $for-loop|033 - local.get $3 + local.get $15 i32.const 0 i32.ge_s if - local.get $1 - local.get $3 + local.get $0 + local.get $15 i32.add i32.load8_u - local.set $0 + local.set $1 i32.const 4 global.set $~argumentsLength - local.get $5 - local.get $0 - local.get $3 - local.get $2 + local.get $8 + local.get $1 + local.get $15 + local.get $16 i32.const 3280 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $5 - local.get $3 + local.set $8 + local.get $15 i32.const 1 i32.sub - local.set $3 + local.set $15 br $for-loop|033 end end - local.get $5 + local.get $8 i32.const 255 i32.and i32.const 6 @@ -49934,23 +49884,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $16 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $16 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -49958,43 +49908,43 @@ i32.const 3312 i32.store offset=4 i32.const 0 - local.set $5 - local.get $2 + local.set $8 + local.get $16 i32.load offset=4 - local.set $1 - local.get $2 + local.set $0 + local.get $16 i32.load offset=8 i32.const 1 i32.sub - local.set $3 + local.set $15 loop $for-loop|036 - local.get $3 + local.get $15 i32.const 0 i32.ge_s if - local.get $1 - local.get $3 + local.get $0 + local.get $15 i32.add i32.load8_u - local.set $0 + local.set $1 i32.const 4 global.set $~argumentsLength - local.get $5 - local.get $0 - local.get $3 - local.get $2 + local.get $8 + local.get $1 + local.get $15 + local.get $16 i32.const 3312 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $5 - local.get $3 + local.set $8 + local.get $15 i32.const 1 i32.sub - local.set $3 + local.set $15 br $for-loop|036 end end - local.get $5 + local.get $8 i32.const 255 i32.and i32.const 6 @@ -50013,23 +49963,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $2 + local.get $16 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $2 + local.get $16 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -50037,47 +49987,47 @@ i32.const 3344 i32.store offset=4 i32.const 0 - local.set $5 - local.get $2 + local.set $8 + local.get $16 i32.load offset=4 - local.set $1 - local.get $2 + local.set $0 + local.get $16 i32.load offset=8 i32.const 1 i32.shr_u i32.const 1 i32.sub - local.set $3 + local.set $15 loop $for-loop|038 - local.get $3 + local.get $15 i32.const 0 i32.ge_s if - local.get $3 + local.get $15 i32.const 1 i32.shl - local.get $1 + local.get $0 i32.add i32.load16_s - local.set $0 + local.set $1 i32.const 4 global.set $~argumentsLength - local.get $5 - local.get $0 - local.get $3 - local.get $2 + local.get $8 + local.get $1 + local.get $15 + local.get $16 i32.const 3344 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $5 - local.get $3 + local.set $8 + local.get $15 i32.const 1 i32.sub - local.set $3 + local.set $15 br $for-loop|038 end end - local.get $5 + local.get $8 i32.const 65535 i32.and i32.const 6 @@ -50096,23 +50046,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $2 + local.get $16 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $2 + local.get $16 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -50120,47 +50070,47 @@ i32.const 3376 i32.store offset=4 i32.const 0 - local.set $5 - local.get $2 + local.set $8 + local.get $16 i32.load offset=4 - local.set $1 - local.get $2 + local.set $0 + local.get $16 i32.load offset=8 i32.const 1 i32.shr_u i32.const 1 i32.sub - local.set $3 + local.set $15 loop $for-loop|040 - local.get $3 + local.get $15 i32.const 0 i32.ge_s if - local.get $3 + local.get $15 i32.const 1 i32.shl - local.get $1 + local.get $0 i32.add i32.load16_u - local.set $0 + local.set $1 i32.const 4 global.set $~argumentsLength - local.get $5 - local.get $0 - local.get $3 - local.get $2 + local.get $8 + local.get $1 + local.get $15 + local.get $16 i32.const 3376 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $5 - local.get $3 + local.set $8 + local.get $15 i32.const 1 i32.sub - local.set $3 + local.set $15 br $for-loop|040 end end - local.get $5 + local.get $8 i32.const 65535 i32.and i32.const 6 @@ -50179,23 +50129,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $16 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $16 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -50203,47 +50153,47 @@ i32.const 3408 i32.store offset=4 i32.const 0 - local.set $5 - local.get $2 + local.set $8 + local.get $16 i32.load offset=4 - local.set $1 - local.get $2 + local.set $0 + local.get $16 i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.sub - local.set $3 + local.set $15 loop $for-loop|042 - local.get $3 + local.get $15 i32.const 0 i32.ge_s if - local.get $3 + local.get $15 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add i32.load - local.set $0 + local.set $1 i32.const 4 global.set $~argumentsLength - local.get $5 - local.get $0 - local.get $3 - local.get $2 + local.get $8 + local.get $1 + local.get $15 + local.get $16 i32.const 3408 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $5 - local.get $3 + local.set $8 + local.get $15 i32.const 1 i32.sub - local.set $3 + local.set $15 br $for-loop|042 end end - local.get $5 + local.get $8 i32.const 6 i32.ne br_if $folding-inner5 @@ -50260,23 +50210,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $2 + local.get $16 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $2 + local.get $16 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -50284,47 +50234,47 @@ i32.const 3440 i32.store offset=4 i32.const 0 - local.set $5 - local.get $2 + local.set $8 + local.get $16 i32.load offset=4 - local.set $1 - local.get $2 + local.set $0 + local.get $16 i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.sub - local.set $3 + local.set $15 loop $for-loop|044 - local.get $3 + local.get $15 i32.const 0 i32.ge_s if - local.get $3 + local.get $15 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add i32.load - local.set $0 + local.set $1 i32.const 4 global.set $~argumentsLength - local.get $5 - local.get $0 - local.get $3 - local.get $2 + local.get $8 + local.get $1 + local.get $15 + local.get $16 i32.const 3440 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $5 - local.get $3 + local.set $8 + local.get $15 i32.const 1 i32.sub - local.set $3 + local.set $15 br $for-loop|044 end end - local.get $5 + local.get $8 i32.const 6 i32.ne br_if $folding-inner5 @@ -50341,23 +50291,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $0 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $0 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set @@ -50365,47 +50315,47 @@ i32.const 3472 i32.store offset=4 i64.const 0 - local.set $13 - local.get $1 + local.set $3 + local.get $0 i32.load offset=4 - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u i32.const 1 i32.sub - local.set $3 + local.set $15 loop $for-loop|046 - local.get $3 + local.get $15 i32.const 0 i32.ge_s if - local.get $3 + local.get $15 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add i64.load - local.set $9 + local.set $10 i32.const 4 global.set $~argumentsLength - local.get $13 - local.get $9 local.get $3 - local.get $1 + local.get $10 + local.get $15 + local.get $0 i32.const 3472 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $13 - local.get $3 + local.set $3 + local.get $15 i32.const 1 i32.sub - local.set $3 + local.set $15 br $for-loop|046 end end - local.get $13 + local.get $3 i64.const 6 i64.ne br_if $folding-inner5 @@ -50422,23 +50372,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $0 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $0 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set @@ -50446,47 +50396,47 @@ i32.const 3504 i32.store offset=4 i64.const 0 - local.set $13 - local.get $1 + local.set $3 + local.get $0 i32.load offset=4 - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u i32.const 1 i32.sub - local.set $3 + local.set $15 loop $for-loop|048 - local.get $3 + local.get $15 i32.const 0 i32.ge_s if - local.get $3 + local.get $15 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add i64.load - local.set $9 + local.set $10 i32.const 4 global.set $~argumentsLength - local.get $13 - local.get $9 local.get $3 - local.get $1 + local.get $10 + local.get $15 + local.get $0 i32.const 3504 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $13 - local.get $3 + local.set $3 + local.get $15 i32.const 1 i32.sub - local.set $3 + local.set $15 br $for-loop|048 end end - local.get $13 + local.get $3 i64.const 6 i64.ne br_if $folding-inner5 @@ -50503,23 +50453,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set @@ -50527,47 +50477,47 @@ i32.const 3536 i32.store offset=4 f32.const 0 - local.set $14 - local.get $1 + local.set $4 + local.get $0 i32.load offset=4 - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.sub - local.set $3 + local.set $15 loop $for-loop|050 - local.get $3 + local.get $15 i32.const 0 i32.ge_s if - local.get $3 + local.get $15 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add f32.load - local.set $11 + local.set $13 i32.const 4 global.set $~argumentsLength - local.get $14 - local.get $11 - local.get $3 - local.get $1 + local.get $4 + local.get $13 + local.get $15 + local.get $0 i32.const 3536 i32.load call_indirect $0 (type $f32_f32_i32_i32_=>_f32) - local.set $14 - local.get $3 + local.set $4 + local.get $15 i32.const 1 i32.sub - local.set $3 + local.set $15 br $for-loop|050 end end - local.get $14 + local.get $4 f32.const 6 f32.ne br_if $folding-inner5 @@ -50584,23 +50534,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set @@ -50608,47 +50558,47 @@ i32.const 3568 i32.store offset=4 f64.const 0 - local.set $15 - local.get $1 + local.set $5 + local.get $0 i32.load offset=4 - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u i32.const 1 i32.sub - local.set $3 + local.set $15 loop $for-loop|052 - local.get $3 + local.get $15 i32.const 0 i32.ge_s if - local.get $3 + local.get $15 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add f64.load - local.set $12 + local.set $11 i32.const 4 global.set $~argumentsLength + local.get $5 + local.get $11 local.get $15 - local.get $12 - local.get $3 - local.get $1 + local.get $0 i32.const 3568 i32.load call_indirect $0 (type $f64_f64_i32_i32_=>_f64) - local.set $15 - local.get $3 + local.set $5 + local.get $15 i32.const 1 i32.sub - local.set $3 + local.set $15 br $for-loop|052 end end - local.get $15 + local.get $5 f64.const 6 f64.ne br_if $folding-inner5 @@ -50657,7 +50607,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $5 + local.set $8 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -50667,26 +50617,26 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $6 + local.tee $9 i32.store - local.get $6 + local.get $9 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $6 + local.get $9 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $6 + local.get $9 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set @@ -50703,90 +50653,90 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $6 + local.get $9 i32.load offset=8 - local.set $4 - local.get $6 + local.set $14 + local.get $9 i32.load offset=4 - local.set $2 - local.get $0 + local.set $15 + local.get $1 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $16 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $14 i32.const 0 call $~lib/rt/itcms/__new local.tee $0 i32.store offset=4 loop $for-loop|02 - local.get $4 - local.get $5 - i32.gt_s + local.get $8 + local.get $14 + i32.lt_s if - local.get $2 - local.get $5 + local.get $8 + local.get $15 i32.add i32.load8_s local.set $1 i32.const 3 global.set $~argumentsLength local.get $0 - local.get $5 + local.get $8 i32.add local.get $1 - local.get $5 - local.get $6 + local.get $8 + local.get $9 i32.const 3600 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store8 - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|02 end end - local.get $7 + local.get $16 local.get $0 i32.store local.get $0 if - local.get $7 + local.get $16 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $7 + local.get $16 local.get $0 i32.store offset=4 - local.get $7 - local.get $4 + local.get $16 + local.get $14 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $16 i32.store offset=8 - local.get $7 + local.get $16 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $7 + local.get $16 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $7 + local.get $16 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 9 @@ -50797,7 +50747,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $5 + local.set $8 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -50807,26 +50757,26 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $6 + local.tee $9 i32.store - local.get $6 + local.get $9 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $6 + local.get $9 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $6 + local.get $9 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -50843,90 +50793,90 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $6 + local.get $9 i32.load offset=8 - local.set $4 - local.get $6 + local.set $14 + local.get $9 i32.load offset=4 - local.set $2 - local.get $0 + local.set $15 + local.get $1 i32.const 12 i32.const 4 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $16 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $14 i32.const 0 call $~lib/rt/itcms/__new local.tee $0 i32.store offset=4 loop $for-loop|04 - local.get $4 - local.get $5 - i32.gt_s + local.get $8 + local.get $14 + i32.lt_s if - local.get $2 - local.get $5 + local.get $8 + local.get $15 i32.add i32.load8_u local.set $1 i32.const 3 global.set $~argumentsLength local.get $0 - local.get $5 + local.get $8 i32.add local.get $1 - local.get $5 - local.get $6 + local.get $8 + local.get $9 i32.const 3632 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store8 - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|04 end end - local.get $7 + local.get $16 local.get $0 i32.store local.get $0 if - local.get $7 + local.get $16 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $7 + local.get $16 local.get $0 i32.store offset=4 - local.get $7 - local.get $4 + local.get $16 + local.get $14 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $16 i32.store offset=8 - local.get $7 + local.get $16 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $7 + local.get $16 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $7 + local.get $16 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 9 @@ -50937,7 +50887,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $5 + local.set $8 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -50947,26 +50897,26 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $6 + local.tee $9 i32.store - local.get $6 + local.get $9 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $6 + local.get $9 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $6 + local.get $9 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -50983,90 +50933,90 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $6 + local.get $9 i32.load offset=8 - local.set $4 - local.get $6 + local.set $14 + local.get $9 i32.load offset=4 - local.set $2 - local.get $0 + local.set $15 + local.get $1 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $16 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $14 i32.const 0 call $~lib/rt/itcms/__new local.tee $0 i32.store offset=4 loop $for-loop|06 - local.get $4 - local.get $5 - i32.gt_s + local.get $8 + local.get $14 + i32.lt_s if - local.get $2 - local.get $5 + local.get $8 + local.get $15 i32.add i32.load8_u local.set $1 i32.const 3 global.set $~argumentsLength local.get $0 - local.get $5 + local.get $8 i32.add local.get $1 - local.get $5 - local.get $6 + local.get $8 + local.get $9 i32.const 3664 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store8 - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|06 end end - local.get $7 + local.get $16 local.get $0 i32.store local.get $0 if - local.get $7 + local.get $16 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $7 + local.get $16 local.get $0 i32.store offset=4 - local.get $7 - local.get $4 + local.get $16 + local.get $14 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $16 i32.store offset=8 - local.get $7 + local.get $16 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $7 + local.get $16 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $7 + local.get $16 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 9 @@ -51085,26 +51035,26 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $0 + local.tee $7 i32.store - local.get $0 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -51124,95 +51074,95 @@ local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $7 i32.load offset=8 i32.const 1 i32.shr_u - local.set $5 - local.get $0 + local.set $9 + local.get $7 i32.load offset=4 - local.set $4 + local.set $12 local.get $1 i32.const 12 i32.const 6 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $14 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $9 i32.const 1 i32.shl - local.tee $3 + local.tee $15 i32.const 0 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $16 i32.store offset=4 loop $for-loop|08 - local.get $5 - local.get $8 - i32.gt_s + local.get $2 + local.get $9 + i32.lt_s if - local.get $4 - local.get $8 + local.get $12 + local.get $2 i32.const 1 i32.shl - local.tee $2 + local.tee $0 i32.add i32.load16_s local.set $1 i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $7 + local.get $0 + local.get $16 i32.add local.get $1 - local.get $8 - local.get $0 + local.get $2 + local.get $7 i32.const 3696 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store16 - local.get $8 + local.get $2 i32.const 1 i32.add - local.set $8 + local.set $2 br $for-loop|08 end end - local.get $10 - local.get $7 + local.get $14 + local.get $16 i32.store - local.get $7 + local.get $16 if - local.get $10 - local.get $7 + local.get $14 + local.get $16 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $7 + local.get $14 + local.get $16 i32.store offset=4 - local.get $10 - local.get $3 + local.get $14 + local.get $15 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $14 i32.store offset=8 - local.get $10 + local.get $14 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $10 + local.get $14 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $10 + local.get $14 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 9 @@ -51223,7 +51173,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $8 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51233,26 +51183,26 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $0 + local.tee $7 i32.store - local.get $0 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -51272,95 +51222,95 @@ local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $7 i32.load offset=8 i32.const 1 i32.shr_u - local.set $5 - local.get $0 + local.set $9 + local.get $7 i32.load offset=4 - local.set $4 + local.set $12 local.get $1 i32.const 12 i32.const 7 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $14 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $9 i32.const 1 i32.shl - local.tee $3 + local.tee $15 i32.const 0 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $16 i32.store offset=4 loop $for-loop|012 - local.get $5 - local.get $8 - i32.gt_s + local.get $2 + local.get $9 + i32.lt_s if - local.get $4 - local.get $8 + local.get $12 + local.get $2 i32.const 1 i32.shl - local.tee $2 + local.tee $0 i32.add i32.load16_u local.set $1 i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $7 + local.get $0 + local.get $16 i32.add local.get $1 - local.get $8 - local.get $0 + local.get $2 + local.get $7 i32.const 3728 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store16 - local.get $8 + local.get $2 i32.const 1 i32.add - local.set $8 + local.set $2 br $for-loop|012 end end - local.get $10 - local.get $7 + local.get $14 + local.get $16 i32.store - local.get $7 + local.get $16 if - local.get $10 - local.get $7 + local.get $14 + local.get $16 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $7 + local.get $14 + local.get $16 i32.store offset=4 - local.get $10 - local.get $3 + local.get $14 + local.get $15 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $14 i32.store offset=8 - local.get $10 + local.get $14 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $10 + local.get $14 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $10 + local.get $14 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 9 @@ -51371,7 +51321,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $8 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51381,26 +51331,26 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $0 + local.tee $7 i32.store - local.get $0 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -51420,95 +51370,95 @@ local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u - local.set $5 - local.get $0 + local.set $9 + local.get $7 i32.load offset=4 - local.set $4 + local.set $12 local.get $1 i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $14 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $9 i32.const 2 i32.shl - local.tee $3 + local.tee $15 i32.const 0 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $16 i32.store offset=4 loop $for-loop|015 - local.get $5 - local.get $8 - i32.gt_s + local.get $2 + local.get $9 + i32.lt_s if - local.get $4 - local.get $8 + local.get $12 + local.get $2 i32.const 2 i32.shl - local.tee $2 + local.tee $0 i32.add i32.load local.set $1 i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $7 + local.get $0 + local.get $16 i32.add local.get $1 - local.get $8 - local.get $0 + local.get $2 + local.get $7 i32.const 3760 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store - local.get $8 + local.get $2 i32.const 1 i32.add - local.set $8 + local.set $2 br $for-loop|015 end end - local.get $10 - local.get $7 + local.get $14 + local.get $16 i32.store - local.get $7 + local.get $16 if - local.get $10 - local.get $7 + local.get $14 + local.get $16 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $7 + local.get $14 + local.get $16 i32.store offset=4 - local.get $10 - local.get $3 + local.get $14 + local.get $15 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $14 i32.store offset=8 - local.get $10 + local.get $14 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $10 + local.get $14 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $10 + local.get $14 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 9 @@ -51519,7 +51469,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $8 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51529,26 +51479,26 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $0 + local.tee $7 i32.store - local.get $0 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -51568,95 +51518,95 @@ local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u - local.set $5 - local.get $0 + local.set $9 + local.get $7 i32.load offset=4 - local.set $4 + local.set $12 local.get $1 i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $14 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $9 i32.const 2 i32.shl - local.tee $3 + local.tee $15 i32.const 0 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $16 i32.store offset=4 loop $for-loop|017 - local.get $5 - local.get $8 - i32.gt_s + local.get $2 + local.get $9 + i32.lt_s if - local.get $4 - local.get $8 + local.get $12 + local.get $2 i32.const 2 i32.shl - local.tee $2 + local.tee $0 i32.add i32.load local.set $1 i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $7 + local.get $0 + local.get $16 i32.add local.get $1 - local.get $8 - local.get $0 + local.get $2 + local.get $7 i32.const 3792 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store - local.get $8 + local.get $2 i32.const 1 i32.add - local.set $8 + local.set $2 br $for-loop|017 end end - local.get $10 - local.get $7 + local.get $14 + local.get $16 i32.store - local.get $7 + local.get $16 if - local.get $10 - local.get $7 + local.get $14 + local.get $16 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $7 + local.get $14 + local.get $16 i32.store offset=4 - local.get $10 - local.get $3 + local.get $14 + local.get $15 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $14 i32.store offset=8 - local.get $10 + local.get $14 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $10 + local.get $14 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $10 + local.get $14 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 9 @@ -51677,26 +51627,26 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $0 + local.tee $8 i32.store - local.get $0 + local.get $8 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $8 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $8 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set @@ -51716,50 +51666,50 @@ local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $8 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 - local.get $0 + local.set $12 + local.get $8 i32.load offset=4 - local.set $3 + local.set $14 local.get $1 i32.const 12 i32.const 10 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $15 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $12 i32.const 3 i32.shl - local.tee $2 + local.tee $16 i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $0 i32.store offset=4 loop $for-loop|019 - local.get $6 local.get $7 - i32.gt_s + local.get $12 + i32.lt_s if - local.get $3 + local.get $14 local.get $7 i32.const 3 i32.shl local.tee $1 i32.add i64.load - local.set $9 + local.set $10 i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $5 i32.add - local.get $9 + local.get $10 local.get $7 - local.get $0 + local.get $8 i32.const 3824 i32.load call_indirect $0 (type $i64_i32_i32_=>_i64) @@ -51771,40 +51721,40 @@ br $for-loop|019 end end - local.get $8 - local.get $5 + local.get $15 + local.get $0 i32.store - local.get $5 + local.get $0 if - local.get $8 - local.get $5 + local.get $15 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $8 - local.get $5 + local.get $15 + local.get $0 i32.store offset=4 - local.get $8 - local.get $2 + local.get $15 + local.get $16 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 + local.get $15 i32.store offset=8 - local.get $8 + local.get $15 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 1 i64.ne br_if $folding-inner20 - local.get $8 + local.get $15 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 4 i64.ne br_if $folding-inner21 - local.get $8 + local.get $15 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 9 @@ -51825,26 +51775,26 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $0 + local.tee $8 i32.store - local.get $0 + local.get $8 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $8 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $8 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set @@ -51864,50 +51814,50 @@ local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $8 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 - local.get $0 + local.set $12 + local.get $8 i32.load offset=4 - local.set $3 + local.set $14 local.get $1 i32.const 12 i32.const 11 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $15 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $12 i32.const 3 i32.shl - local.tee $2 + local.tee $16 i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $0 i32.store offset=4 loop $for-loop|022 - local.get $6 local.get $7 - i32.gt_s + local.get $12 + i32.lt_s if - local.get $3 + local.get $14 local.get $7 i32.const 3 i32.shl local.tee $1 i32.add i64.load - local.set $9 + local.set $10 i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $5 i32.add - local.get $9 + local.get $10 local.get $7 - local.get $0 + local.get $8 i32.const 3856 i32.load call_indirect $0 (type $i64_i32_i32_=>_i64) @@ -51919,40 +51869,40 @@ br $for-loop|022 end end - local.get $8 - local.get $5 + local.get $15 + local.get $0 i32.store - local.get $5 + local.get $0 if - local.get $8 - local.get $5 + local.get $15 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $8 - local.get $5 + local.get $15 + local.get $0 i32.store offset=4 - local.get $8 - local.get $2 + local.get $15 + local.get $16 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 + local.get $15 i32.store offset=8 - local.get $8 + local.get $15 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 1 i64.ne br_if $folding-inner20 - local.get $8 + local.get $15 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 4 i64.ne br_if $folding-inner21 - local.get $8 + local.get $15 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 9 @@ -51973,26 +51923,26 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $0 + local.tee $8 i32.store - local.get $0 + local.get $8 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $8 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $8 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set @@ -52012,50 +51962,50 @@ local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $8 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 - local.get $0 + local.set $12 + local.get $8 i32.load offset=4 - local.set $3 + local.set $14 local.get $1 i32.const 12 i32.const 12 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $15 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $12 i32.const 2 i32.shl - local.tee $2 + local.tee $16 i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $0 i32.store offset=4 loop $for-loop|024 - local.get $6 local.get $7 - i32.gt_s + local.get $12 + i32.lt_s if - local.get $3 + local.get $14 local.get $7 i32.const 2 i32.shl local.tee $1 i32.add f32.load - local.set $11 + local.set $13 i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $5 i32.add - local.get $11 + local.get $13 local.get $7 - local.get $0 + local.get $8 i32.const 3888 i32.load call_indirect $0 (type $f32_i32_i32_=>_f32) @@ -52067,40 +52017,40 @@ br $for-loop|024 end end - local.get $8 - local.get $5 + local.get $15 + local.get $0 i32.store - local.get $5 + local.get $0 if - local.get $8 - local.get $5 + local.get $15 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $8 - local.get $5 + local.get $15 + local.get $0 i32.store offset=4 - local.get $8 - local.get $2 + local.get $15 + local.get $16 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 + local.get $15 i32.store offset=8 - local.get $8 + local.get $15 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 1 f32.ne br_if $folding-inner20 - local.get $8 + local.get $15 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 4 f32.ne br_if $folding-inner21 - local.get $8 + local.get $15 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 9 @@ -52121,26 +52071,26 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $0 + local.tee $8 i32.store - local.get $0 + local.get $8 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $8 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $8 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set @@ -52160,50 +52110,50 @@ local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $8 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 - local.get $0 + local.set $12 + local.get $8 i32.load offset=4 - local.set $3 + local.set $14 local.get $1 i32.const 12 i32.const 13 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $15 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $12 i32.const 3 i32.shl - local.tee $2 + local.tee $16 i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $0 i32.store offset=4 loop $for-loop|026 - local.get $6 local.get $7 - i32.gt_s + local.get $12 + i32.lt_s if - local.get $3 + local.get $14 local.get $7 i32.const 3 i32.shl local.tee $1 i32.add f64.load - local.set $12 + local.set $11 i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $5 i32.add - local.get $12 + local.get $11 local.get $7 - local.get $0 + local.get $8 i32.const 3920 i32.load call_indirect $0 (type $f64_i32_i32_=>_f64) @@ -52215,40 +52165,40 @@ br $for-loop|026 end end - local.get $8 - local.get $5 + local.get $15 + local.get $0 i32.store - local.get $5 + local.get $0 if - local.get $8 - local.get $5 + local.get $15 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $8 - local.get $5 + local.get $15 + local.get $0 i32.store offset=4 - local.get $8 - local.get $2 + local.get $15 + local.get $16 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 + local.get $15 i32.store offset=8 - local.get $8 + local.get $15 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 1 f64.ne br_if $folding-inner20 - local.get $8 + local.get $15 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 4 f64.ne br_if $folding-inner21 - local.get $8 + local.get $15 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 9 @@ -52278,23 +52228,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $4 + local.tee $15 i32.store - local.get $4 + local.get $15 i32.const 0 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $4 + local.get $15 i32.const 1 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $4 + local.get $15 i32.const 2 i32.const 6 call $~lib/typedarray/Int8Array#__set @@ -52302,39 +52252,39 @@ i32.const 4304 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.0 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 - local.set $1 + local.set $0 loop $for-loop|045 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $2 - local.get $6 + local.get $9 + local.get $16 i32.add i32.load8_s - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 4304 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.0 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|045 end end @@ -52346,39 +52296,39 @@ i32.const 4336 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.047 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 - local.set $1 + local.set $0 loop $for-loop|049 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $2 - local.get $6 + local.get $9 + local.get $16 i32.add i32.load8_s - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 4336 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.047 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|049 end end @@ -52398,23 +52348,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $4 + local.tee $15 i32.store - local.get $4 + local.get $15 i32.const 0 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $4 + local.get $15 i32.const 1 i32.const 4 call $~lib/typedarray/Uint8Array#__set - local.get $4 + local.get $15 i32.const 2 i32.const 6 call $~lib/typedarray/Uint8Array#__set @@ -52422,39 +52372,39 @@ i32.const 4368 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.0 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 - local.set $1 + local.set $0 loop $for-loop|051 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $2 - local.get $6 + local.get $9 + local.get $16 i32.add i32.load8_u - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 4368 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.0 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|051 end end @@ -52466,39 +52416,39 @@ i32.const 4400 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.053 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 - local.set $1 + local.set $0 loop $for-loop|054 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $2 - local.get $6 + local.get $9 + local.get $16 i32.add i32.load8_u - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 4400 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.053 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|054 end end @@ -52518,23 +52468,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $4 + local.tee $15 i32.store - local.get $4 + local.get $15 i32.const 0 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $4 + local.get $15 i32.const 1 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $4 + local.get $15 i32.const 2 i32.const 6 call $~lib/typedarray/Uint8ClampedArray#__set @@ -52542,39 +52492,39 @@ i32.const 4432 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.057 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 - local.set $1 + local.set $0 loop $for-loop|058 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $2 - local.get $6 + local.get $9 + local.get $16 i32.add i32.load8_u - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 4432 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.057 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|058 end end @@ -52586,39 +52536,39 @@ i32.const 4464 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.060 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 - local.set $1 + local.set $0 loop $for-loop|061 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $2 - local.get $6 + local.get $9 + local.get $16 i32.add i32.load8_u - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 4464 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.060 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|061 end end @@ -52638,23 +52588,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $15 i32.store - local.get $4 + local.get $15 i32.const 0 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $15 i32.const 1 i32.const 4 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $15 i32.const 2 i32.const 6 call $~lib/typedarray/Int16Array#__set @@ -52662,43 +52612,43 @@ i32.const 4496 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.0 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 i32.const 1 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|063 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $6 + local.get $9 i32.const 1 i32.shl - local.get $2 + local.get $16 i32.add i32.load16_s - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 4496 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.0 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|063 end end @@ -52710,43 +52660,43 @@ i32.const 4528 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.065 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 i32.const 1 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|066 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $6 + local.get $9 i32.const 1 i32.shl - local.get $2 + local.get $16 i32.add i32.load16_s - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 4528 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.065 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|066 end end @@ -52766,23 +52716,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $4 + local.tee $15 i32.store - local.get $4 + local.get $15 i32.const 0 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $4 + local.get $15 i32.const 1 i32.const 4 call $~lib/typedarray/Uint16Array#__set - local.get $4 + local.get $15 i32.const 2 i32.const 6 call $~lib/typedarray/Uint16Array#__set @@ -52790,43 +52740,43 @@ i32.const 4560 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.0 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 i32.const 1 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|068 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $6 + local.get $9 i32.const 1 i32.shl - local.get $2 + local.get $16 i32.add i32.load16_u - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 4560 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.0 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|068 end end @@ -52838,43 +52788,43 @@ i32.const 4592 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.070 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 i32.const 1 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|071 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $6 + local.get $9 i32.const 1 i32.shl - local.get $2 + local.get $16 i32.add i32.load16_u - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 4592 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.070 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|071 end end @@ -52894,23 +52844,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $4 + local.tee $15 i32.store - local.get $4 + local.get $15 i32.const 0 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $15 i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $15 i32.const 2 i32.const 6 call $~lib/typedarray/Int32Array#__set @@ -52918,43 +52868,43 @@ i32.const 4624 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|073 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $6 + local.get $9 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add i32.load - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 4624 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.0 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|073 end end @@ -52966,43 +52916,43 @@ i32.const 4656 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.075 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|076 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $6 + local.get $9 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add i32.load - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 4656 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.075 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|076 end end @@ -53022,23 +52972,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $4 + local.tee $15 i32.store - local.get $4 + local.get $15 i32.const 0 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $4 + local.get $15 i32.const 1 i32.const 4 call $~lib/typedarray/Uint32Array#__set - local.get $4 + local.get $15 i32.const 2 i32.const 6 call $~lib/typedarray/Uint32Array#__set @@ -53046,43 +52996,43 @@ i32.const 4688 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|078 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $6 + local.get $9 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add i32.load - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 4688 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.0 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|078 end end @@ -53094,43 +53044,43 @@ i32.const 4720 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.080 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|081 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $6 + local.get $9 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add i32.load - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 4720 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.080 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|081 end end @@ -53150,23 +53100,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $3 + local.tee $16 i32.store - local.get $3 + local.get $16 i32.const 0 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $16 i32.const 1 i64.const 4 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $16 i32.const 2 i64.const 6 call $~lib/typedarray/Int64Array#__set @@ -53174,43 +53124,43 @@ i32.const 4752 i32.store offset=4 i32.const 0 - local.set $5 + local.set $8 block $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.0 (result i32) - local.get $3 + local.get $16 i32.load offset=4 - local.set $1 - local.get $3 + local.set $0 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|083 - local.get $0 - local.get $5 + local.get $1 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add i64.load - local.set $9 + local.set $10 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $9 - local.get $5 - local.get $3 + local.get $10 + local.get $8 + local.get $16 i32.const 4752 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.0 drop - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|083 end end @@ -53222,43 +53172,43 @@ i32.const 4784 i32.store offset=4 i32.const 0 - local.set $5 + local.set $8 block $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.085 (result i32) - local.get $3 + local.get $16 i32.load offset=4 - local.set $1 - local.get $3 + local.set $0 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|086 - local.get $0 - local.get $5 + local.get $1 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add i64.load - local.set $9 + local.set $10 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $9 - local.get $5 - local.get $3 + local.get $10 + local.get $8 + local.get $16 i32.const 4784 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.085 drop - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|086 end end @@ -53278,23 +53228,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $3 + local.tee $16 i32.store - local.get $3 + local.get $16 i32.const 0 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $16 i32.const 1 i64.const 4 call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $16 i32.const 2 i64.const 6 call $~lib/typedarray/Uint64Array#__set @@ -53302,43 +53252,43 @@ i32.const 4816 i32.store offset=4 i32.const 0 - local.set $5 + local.set $8 block $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.0 (result i32) - local.get $3 + local.get $16 i32.load offset=4 - local.set $1 - local.get $3 + local.set $0 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|088 - local.get $0 - local.get $5 + local.get $1 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add i64.load - local.set $9 + local.set $10 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $9 - local.get $5 - local.get $3 + local.get $10 + local.get $8 + local.get $16 i32.const 4816 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.0 drop - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|088 end end @@ -53350,43 +53300,43 @@ i32.const 4848 i32.store offset=4 i32.const 0 - local.set $5 + local.set $8 block $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.090 (result i32) - local.get $3 + local.get $16 i32.load offset=4 - local.set $1 - local.get $3 + local.set $0 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|091 - local.get $0 - local.get $5 + local.get $1 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add i64.load - local.set $9 + local.set $10 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $9 - local.get $5 - local.get $3 + local.get $10 + local.get $8 + local.get $16 i32.const 4848 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.090 drop - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|091 end end @@ -53406,23 +53356,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $3 + local.tee $16 i32.store - local.get $3 + local.get $16 i32.const 0 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $3 + local.get $16 i32.const 1 f32.const 4 call $~lib/typedarray/Float32Array#__set - local.get $3 + local.get $16 i32.const 2 f32.const 6 call $~lib/typedarray/Float32Array#__set @@ -53430,43 +53380,43 @@ i32.const 4880 i32.store offset=4 i32.const 0 - local.set $5 + local.set $8 block $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) - local.get $3 + local.get $16 i32.load offset=4 - local.set $1 - local.get $3 + local.set $0 + local.get $16 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|093 - local.get $0 - local.get $5 + local.get $1 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add f32.load - local.set $11 + local.set $13 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $11 - local.get $5 - local.get $3 + local.get $13 + local.get $8 + local.get $16 i32.const 4880 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|093 end end @@ -53478,43 +53428,43 @@ i32.const 4912 i32.store offset=4 i32.const 0 - local.set $5 + local.set $8 block $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.095 (result i32) - local.get $3 + local.get $16 i32.load offset=4 - local.set $1 - local.get $3 + local.set $0 + local.get $16 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|096 - local.get $0 - local.get $5 + local.get $1 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add f32.load - local.set $11 + local.set $13 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $11 - local.get $5 - local.get $3 + local.get $13 + local.get $8 + local.get $16 i32.const 4912 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.095 drop - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|096 end end @@ -53534,23 +53484,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $3 + local.tee $16 i32.store - local.get $3 + local.get $16 i32.const 0 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $3 + local.get $16 i32.const 1 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $3 + local.get $16 i32.const 2 f64.const 6 call $~lib/typedarray/Float64Array#__set @@ -53558,43 +53508,43 @@ i32.const 4944 i32.store offset=4 i32.const 0 - local.set $5 + local.set $8 block $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) - local.get $3 + local.get $16 i32.load offset=4 - local.set $1 - local.get $3 + local.set $0 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|098 - local.get $0 - local.get $5 + local.get $1 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add f64.load - local.set $12 + local.set $11 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $12 - local.get $5 - local.get $3 + local.get $11 + local.get $8 + local.get $16 i32.const 4944 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|098 end end @@ -53606,43 +53556,43 @@ i32.const 4976 i32.store offset=4 i32.const 0 - local.set $5 + local.set $8 block $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0100 (result i32) - local.get $3 + local.get $16 i32.load offset=4 - local.set $1 - local.get $3 + local.set $0 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|0101 - local.get $0 - local.get $5 + local.get $1 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add f64.load - local.set $12 + local.set $11 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $12 - local.get $5 - local.get $3 + local.get $11 + local.get $8 + local.get $16 i32.const 4976 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0100 drop - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|0101 end end @@ -53662,23 +53612,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $4 + local.tee $14 i32.store - local.get $4 + local.get $14 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $4 + local.get $14 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $4 + local.get $14 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set @@ -53687,26 +53637,26 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $14 i32.load offset=4 - local.set $3 - local.get $4 + local.set $15 + local.get $14 i32.load offset=8 - local.set $2 + local.set $16 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0 loop $for-loop|0103 local.get $1 - local.get $2 + local.get $16 i32.lt_s if local.get $1 - local.get $3 + local.get $15 i32.add i32.load8_s i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $14 i32.const 5008 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53730,26 +53680,26 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $14 i32.load offset=4 - local.set $3 - local.get $4 + local.set $15 + local.get $14 i32.load offset=8 - local.set $2 + local.set $16 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0105 loop $for-loop|0106 local.get $1 - local.get $2 + local.get $16 i32.lt_s if local.get $1 - local.get $3 + local.get $15 i32.add i32.load8_s i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $14 i32.const 5040 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53781,23 +53731,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $4 + local.tee $14 i32.store - local.get $4 + local.get $14 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $4 + local.get $14 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $4 + local.get $14 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -53806,26 +53756,26 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $14 i32.load offset=4 - local.set $3 - local.get $4 + local.set $15 + local.get $14 i32.load offset=8 - local.set $2 + local.set $16 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0 loop $for-loop|0108 local.get $1 - local.get $2 + local.get $16 i32.lt_s if local.get $1 - local.get $3 + local.get $15 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $14 i32.const 5072 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53849,26 +53799,26 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $14 i32.load offset=4 - local.set $3 - local.get $4 + local.set $15 + local.get $14 i32.load offset=8 - local.set $2 + local.set $16 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0110 loop $for-loop|0111 local.get $1 - local.get $2 + local.get $16 i32.lt_s if local.get $1 - local.get $3 + local.get $15 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $14 i32.const 5104 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53900,23 +53850,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $4 + local.tee $14 i32.store - local.get $4 + local.get $14 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $4 + local.get $14 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $4 + local.get $14 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -53925,26 +53875,26 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $14 i32.load offset=4 - local.set $3 - local.get $4 + local.set $15 + local.get $14 i32.load offset=8 - local.set $2 + local.set $16 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0114 loop $for-loop|0115 local.get $1 - local.get $2 + local.get $16 i32.lt_s if local.get $1 - local.get $3 + local.get $15 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $14 i32.const 5136 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53968,26 +53918,26 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $14 i32.load offset=4 - local.set $3 - local.get $4 + local.set $15 + local.get $14 i32.load offset=8 - local.set $2 + local.set $16 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0117 loop $for-loop|0118 local.get $1 - local.get $2 + local.get $16 i32.lt_s if local.get $1 - local.get $3 + local.get $15 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $14 i32.const 5168 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54019,23 +53969,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $14 i32.store - local.get $4 + local.get $14 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $14 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $14 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -54044,30 +53994,30 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $14 i32.load offset=4 - local.set $3 - local.get $4 + local.set $15 + local.get $14 i32.load offset=8 i32.const 1 i32.shr_u - local.set $2 + local.set $16 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int16Array,i16>|inlined.0 loop $for-loop|0120 local.get $1 - local.get $2 + local.get $16 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $3 + local.get $15 i32.add i32.load16_s i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $14 i32.const 5200 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54091,30 +54041,30 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $14 i32.load offset=4 - local.set $3 - local.get $4 + local.set $15 + local.get $14 i32.load offset=8 i32.const 1 i32.shr_u - local.set $2 + local.set $16 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int16Array,i16>|inlined.0122 loop $for-loop|0123 local.get $1 - local.get $2 + local.get $16 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $3 + local.get $15 i32.add i32.load16_s i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $14 i32.const 5232 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54146,23 +54096,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $4 + local.tee $14 i32.store - local.get $4 + local.get $14 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $4 + local.get $14 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $4 + local.get $14 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -54171,30 +54121,30 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $14 i32.load offset=4 - local.set $3 - local.get $4 + local.set $15 + local.get $14 i32.load offset=8 i32.const 1 i32.shr_u - local.set $2 + local.set $16 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.0 loop $for-loop|0125 local.get $1 - local.get $2 + local.get $16 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $3 + local.get $15 i32.add i32.load16_u i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $14 i32.const 5264 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54218,30 +54168,30 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $14 i32.load offset=4 - local.set $3 - local.get $4 + local.set $15 + local.get $14 i32.load offset=8 i32.const 1 i32.shr_u - local.set $2 + local.set $16 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.0127 loop $for-loop|0128 local.get $1 - local.get $2 + local.get $16 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $3 + local.get $15 i32.add i32.load16_u i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $14 i32.const 5296 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54273,23 +54223,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $4 + local.tee $14 i32.store - local.get $4 + local.get $14 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $14 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $14 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -54298,30 +54248,30 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $14 i32.load offset=4 - local.set $3 - local.get $4 + local.set $15 + local.get $14 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 + local.set $16 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int32Array,i32>|inlined.0 loop $for-loop|0130 local.get $1 - local.get $2 + local.get $16 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $3 + local.get $15 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $14 i32.const 5328 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54345,30 +54295,30 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $14 i32.load offset=4 - local.set $3 - local.get $4 + local.set $15 + local.get $14 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 + local.set $16 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int32Array,i32>|inlined.0132 loop $for-loop|0133 local.get $1 - local.get $2 + local.get $16 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $3 + local.get $15 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $14 i32.const 5360 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54400,23 +54350,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $4 + local.tee $14 i32.store - local.get $4 + local.get $14 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $4 + local.get $14 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $4 + local.get $14 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -54425,30 +54375,30 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $14 i32.load offset=4 - local.set $3 - local.get $4 + local.set $15 + local.get $14 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 + local.set $16 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.0 loop $for-loop|0135 local.get $1 - local.get $2 + local.get $16 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $3 + local.get $15 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $14 i32.const 5392 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54472,30 +54422,30 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $14 i32.load offset=4 - local.set $3 - local.get $4 + local.set $15 + local.get $14 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 + local.set $16 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.0137 loop $for-loop|0138 local.get $1 - local.get $2 + local.get $16 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $3 + local.get $15 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $14 i32.const 5424 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54527,23 +54477,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $15 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $15 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set @@ -54552,10 +54502,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $3 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 3 i32.shr_u @@ -54569,13 +54519,13 @@ local.get $1 i32.const 3 i32.shl - local.get $2 + local.get $16 i32.add i64.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $15 i32.const 5456 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -54599,10 +54549,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $3 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 3 i32.shr_u @@ -54616,13 +54566,13 @@ local.get $1 i32.const 3 i32.shl - local.get $2 + local.get $16 i32.add i64.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $15 i32.const 5488 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -54654,23 +54604,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $15 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $15 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set @@ -54679,10 +54629,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $3 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 3 i32.shr_u @@ -54696,13 +54646,13 @@ local.get $1 i32.const 3 i32.shl - local.get $2 + local.get $16 i32.add i64.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $15 i32.const 5520 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -54726,10 +54676,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $3 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 3 i32.shr_u @@ -54743,13 +54693,13 @@ local.get $1 i32.const 3 i32.shl - local.get $2 + local.get $16 i32.add i64.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $15 i32.const 5552 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -54781,23 +54731,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $3 + local.get $15 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $3 + local.get $15 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set @@ -54806,10 +54756,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $3 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 2 i32.shr_u @@ -54823,13 +54773,13 @@ local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add f32.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $15 i32.const 5584 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) @@ -54853,10 +54803,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $3 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 2 i32.shr_u @@ -54870,13 +54820,13 @@ local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add f32.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $15 i32.const 5616 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) @@ -54908,23 +54858,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $3 + local.get $15 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $3 + local.get $15 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set @@ -54933,10 +54883,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $3 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 3 i32.shr_u @@ -54950,13 +54900,13 @@ local.get $1 i32.const 3 i32.shl - local.get $2 + local.get $16 i32.add f64.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $15 i32.const 5648 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) @@ -54980,10 +54930,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $3 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 3 i32.shr_u @@ -54997,13 +54947,13 @@ local.get $1 i32.const 3 i32.shl - local.get $2 + local.get $16 i32.add f64.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $15 i32.const 5680 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) @@ -55035,33 +54985,33 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $3 + local.get $15 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $3 + local.get $15 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer i32.const 5712 i32.store offset=4 - local.get $3 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 1 i32.sub @@ -55073,13 +55023,13 @@ i32.ge_s if local.get $1 - local.get $2 + local.get $16 i32.add i32.load8_s i32.const 3 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $15 i32.const 5712 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55101,10 +55051,10 @@ global.get $~lib/memory/__stack_pointer i32.const 5744 i32.store offset=4 - local.get $3 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 1 i32.sub @@ -55116,13 +55066,13 @@ i32.ge_s if local.get $1 - local.get $2 + local.get $16 i32.add i32.load8_s i32.const 3 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $15 i32.const 5744 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55154,33 +55104,33 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $15 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $15 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 5776 i32.store offset=4 - local.get $3 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 1 i32.sub @@ -55192,13 +55142,13 @@ i32.ge_s if local.get $1 - local.get $2 + local.get $16 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $15 i32.const 5776 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55220,10 +55170,10 @@ global.get $~lib/memory/__stack_pointer i32.const 5808 i32.store offset=4 - local.get $3 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 1 i32.sub @@ -55235,13 +55185,13 @@ i32.ge_s if local.get $1 - local.get $2 + local.get $16 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $15 i32.const 5808 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55273,33 +55223,33 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $3 + local.get $15 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $3 + local.get $15 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set global.get $~lib/memory/__stack_pointer i32.const 5840 i32.store offset=4 - local.get $3 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 1 i32.sub @@ -55311,13 +55261,13 @@ i32.ge_s if local.get $1 - local.get $2 + local.get $16 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $15 i32.const 5840 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55339,10 +55289,10 @@ global.get $~lib/memory/__stack_pointer i32.const 5872 i32.store offset=4 - local.get $3 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 1 i32.sub @@ -55354,13 +55304,13 @@ i32.ge_s if local.get $1 - local.get $2 + local.get $16 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $15 i32.const 5872 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55392,33 +55342,33 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $15 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $15 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 5904 i32.store offset=4 - local.get $3 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 1 i32.shr_u @@ -55434,13 +55384,13 @@ local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $16 i32.add i32.load16_s i32.const 3 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $15 i32.const 5904 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55462,10 +55412,10 @@ global.get $~lib/memory/__stack_pointer i32.const 5936 i32.store offset=4 - local.get $3 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 1 i32.shr_u @@ -55481,13 +55431,13 @@ local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $16 i32.add i32.load16_s i32.const 3 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $15 i32.const 5936 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55519,33 +55469,33 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $3 + local.get $15 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $3 + local.get $15 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set global.get $~lib/memory/__stack_pointer i32.const 5968 i32.store offset=4 - local.get $3 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 1 i32.shr_u @@ -55561,13 +55511,13 @@ local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $16 i32.add i32.load16_u i32.const 3 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $15 i32.const 5968 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55589,10 +55539,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6000 i32.store offset=4 - local.get $3 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 1 i32.shr_u @@ -55608,13 +55558,13 @@ local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $16 i32.add i32.load16_u i32.const 3 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $15 i32.const 6000 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55646,33 +55596,33 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $3 + local.get $15 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $3 + local.get $15 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer i32.const 6032 i32.store offset=4 - local.get $3 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 2 i32.shr_u @@ -55688,13 +55638,13 @@ local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $15 i32.const 6032 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55716,10 +55666,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6064 i32.store offset=4 - local.get $3 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 2 i32.shr_u @@ -55735,13 +55685,13 @@ local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $15 i32.const 6064 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55773,33 +55723,33 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $3 + local.get $15 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $3 + local.get $15 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer i32.const 6096 i32.store offset=4 - local.get $3 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 2 i32.shr_u @@ -55815,13 +55765,13 @@ local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $15 i32.const 6096 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55843,10 +55793,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6128 i32.store offset=4 - local.get $3 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 2 i32.shr_u @@ -55862,13 +55812,13 @@ local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $15 i32.const 6128 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55900,33 +55850,33 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $16 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $16 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 6160 i32.store offset=4 - local.get $2 + local.get $16 i32.load offset=4 local.set $0 - local.get $2 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u @@ -55948,7 +55898,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $2 + local.get $16 i32.const 6160 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -55970,10 +55920,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6192 i32.store offset=4 - local.get $2 + local.get $16 i32.load offset=4 local.set $0 - local.get $2 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u @@ -55995,7 +55945,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $2 + local.get $16 i32.const 6192 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -56027,33 +55977,33 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $16 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $16 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set global.get $~lib/memory/__stack_pointer i32.const 6224 i32.store offset=4 - local.get $2 + local.get $16 i32.load offset=4 local.set $0 - local.get $2 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u @@ -56075,7 +56025,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $2 + local.get $16 i32.const 6224 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -56097,10 +56047,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6256 i32.store offset=4 - local.get $2 + local.get $16 i32.load offset=4 local.set $0 - local.get $2 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u @@ -56122,7 +56072,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $2 + local.get $16 i32.const 6256 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -56154,33 +56104,33 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $16 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $16 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer i32.const 6288 i32.store offset=4 - local.get $2 + local.get $16 i32.load offset=4 local.set $0 - local.get $2 + local.get $16 i32.load offset=8 i32.const 2 i32.shr_u @@ -56202,7 +56152,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $2 + local.get $16 i32.const 6288 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) @@ -56224,10 +56174,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6320 i32.store offset=4 - local.get $2 + local.get $16 i32.load offset=4 local.set $0 - local.get $2 + local.get $16 i32.load offset=8 i32.const 2 i32.shr_u @@ -56249,7 +56199,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $2 + local.get $16 i32.const 6320 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) @@ -56281,33 +56231,33 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $16 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $16 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer i32.const 6352 i32.store offset=4 - local.get $2 + local.get $16 i32.load offset=4 local.set $0 - local.get $2 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u @@ -56329,7 +56279,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $2 + local.get $16 i32.const 6352 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) @@ -56351,10 +56301,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6384 i32.store offset=4 - local.get $2 + local.get $16 i32.load offset=4 local.set $0 - local.get $2 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u @@ -56376,7 +56326,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $2 + local.get $16 i32.const 6384 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) @@ -56408,23 +56358,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $4 + local.tee $15 i32.store - local.get $4 + local.get $15 i32.const 0 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $4 + local.get $15 i32.const 1 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $4 + local.get $15 i32.const 2 i32.const 6 call $~lib/typedarray/Int8Array#__set @@ -56432,40 +56382,40 @@ i32.const 6416 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.0 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 - local.set $1 + local.set $0 loop $for-loop|0217 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $2 - local.get $6 + local.get $9 + local.get $16 i32.add i32.load8_s - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 6416 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.0 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|0217 end end @@ -56477,40 +56427,40 @@ i32.const 6448 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.0219 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 - local.set $1 + local.set $0 loop $for-loop|0220 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $2 - local.get $6 + local.get $9 + local.get $16 i32.add i32.load8_s - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 6448 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.0219 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|0220 end end @@ -56530,23 +56480,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $4 + local.tee $15 i32.store - local.get $4 + local.get $15 i32.const 0 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $4 + local.get $15 i32.const 1 i32.const 4 call $~lib/typedarray/Uint8Array#__set - local.get $4 + local.get $15 i32.const 2 i32.const 6 call $~lib/typedarray/Uint8Array#__set @@ -56554,40 +56504,40 @@ i32.const 6480 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 - local.set $1 + local.set $0 loop $for-loop|0222 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $2 - local.get $6 + local.get $9 + local.get $16 i32.add i32.load8_u - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 6480 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|0222 end end @@ -56599,40 +56549,40 @@ i32.const 6512 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0224 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 - local.set $1 + local.set $0 loop $for-loop|0225 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $2 - local.get $6 + local.get $9 + local.get $16 i32.add i32.load8_u - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 6512 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0224 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|0225 end end @@ -56652,23 +56602,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $4 + local.tee $15 i32.store - local.get $4 + local.get $15 i32.const 0 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $4 + local.get $15 i32.const 1 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $4 + local.get $15 i32.const 2 i32.const 6 call $~lib/typedarray/Uint8ClampedArray#__set @@ -56676,40 +56626,40 @@ i32.const 6544 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0228 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 - local.set $1 + local.set $0 loop $for-loop|0229 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $2 - local.get $6 + local.get $9 + local.get $16 i32.add i32.load8_u - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 6544 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0228 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|0229 end end @@ -56721,40 +56671,40 @@ i32.const 6576 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0231 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 - local.set $1 + local.set $0 loop $for-loop|0232 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $2 - local.get $6 + local.get $9 + local.get $16 i32.add i32.load8_u - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 6576 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0231 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|0232 end end @@ -56774,23 +56724,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $15 i32.store - local.get $4 + local.get $15 i32.const 0 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $15 i32.const 1 i32.const 4 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $15 i32.const 2 i32.const 6 call $~lib/typedarray/Int16Array#__set @@ -56798,44 +56748,44 @@ i32.const 6608 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.0 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 i32.const 1 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|0234 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $6 + local.get $9 i32.const 1 i32.shl - local.get $2 + local.get $16 i32.add i32.load16_s - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 6608 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.0 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|0234 end end @@ -56847,44 +56797,44 @@ i32.const 6640 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.0236 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 i32.const 1 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|0237 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $6 + local.get $9 i32.const 1 i32.shl - local.get $2 + local.get $16 i32.add i32.load16_s - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 6640 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.0236 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|0237 end end @@ -56904,23 +56854,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $4 + local.tee $15 i32.store - local.get $4 + local.get $15 i32.const 0 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $4 + local.get $15 i32.const 1 i32.const 4 call $~lib/typedarray/Uint16Array#__set - local.get $4 + local.get $15 i32.const 2 i32.const 6 call $~lib/typedarray/Uint16Array#__set @@ -56928,44 +56878,44 @@ i32.const 6672 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.0 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 i32.const 1 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|0239 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $6 + local.get $9 i32.const 1 i32.shl - local.get $2 + local.get $16 i32.add i32.load16_u - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 6672 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.0 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|0239 end end @@ -56977,44 +56927,44 @@ i32.const 6704 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.0241 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 i32.const 1 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|0242 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $6 + local.get $9 i32.const 1 i32.shl - local.get $2 + local.get $16 i32.add i32.load16_u - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 6704 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.0241 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|0242 end end @@ -57034,23 +56984,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $4 + local.tee $15 i32.store - local.get $4 + local.get $15 i32.const 0 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $15 i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $15 i32.const 2 i32.const 6 call $~lib/typedarray/Int32Array#__set @@ -57058,44 +57008,44 @@ i32.const 6736 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|0244 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $6 + local.get $9 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add i32.load - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 6736 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.0 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|0244 end end @@ -57107,44 +57057,44 @@ i32.const 6768 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.0246 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|0247 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $6 + local.get $9 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add i32.load - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 6768 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.0246 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|0247 end end @@ -57164,23 +57114,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $4 + local.tee $15 i32.store - local.get $4 + local.get $15 i32.const 0 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $4 + local.get $15 i32.const 1 i32.const 4 call $~lib/typedarray/Uint32Array#__set - local.get $4 + local.get $15 i32.const 2 i32.const 6 call $~lib/typedarray/Uint32Array#__set @@ -57188,44 +57138,44 @@ i32.const 6800 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|0249 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $6 + local.get $9 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add i32.load - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 6800 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.0 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|0249 end end @@ -57237,44 +57187,44 @@ i32.const 6832 i32.store offset=4 i32.const 0 - local.set $6 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.0251 (result i32) - local.get $4 + local.get $15 i32.load offset=4 - local.set $2 - local.get $4 + local.set $16 + local.get $15 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|0252 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $6 + local.get $9 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add i32.load - local.set $0 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $0 - local.get $6 - local.get $4 + local.get $1 + local.get $9 + local.get $15 i32.const 6832 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.0251 drop - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|0252 end end @@ -57294,23 +57244,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $3 + local.tee $16 i32.store - local.get $3 + local.get $16 i32.const 0 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $16 i32.const 1 i64.const 4 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $16 i32.const 2 i64.const 6 call $~lib/typedarray/Int64Array#__set @@ -57318,44 +57268,44 @@ i32.const 6864 i32.store offset=4 i32.const 0 - local.set $5 + local.set $8 block $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0 (result i32) - local.get $3 + local.get $16 i32.load offset=4 - local.set $1 - local.get $3 + local.set $0 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|0254 - local.get $0 - local.get $5 + local.get $1 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add i64.load - local.set $9 + local.set $10 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $9 - local.get $5 - local.get $3 + local.get $10 + local.get $8 + local.get $16 i32.const 6864 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0 drop - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|0254 end end @@ -57367,44 +57317,44 @@ i32.const 6896 i32.store offset=4 i32.const 0 - local.set $5 + local.set $8 block $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0256 (result i32) - local.get $3 + local.get $16 i32.load offset=4 - local.set $1 - local.get $3 + local.set $0 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|0257 - local.get $0 - local.get $5 + local.get $1 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add i64.load - local.set $9 + local.set $10 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $9 - local.get $5 - local.get $3 + local.get $10 + local.get $8 + local.get $16 i32.const 6896 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0256 drop - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|0257 end end @@ -57424,23 +57374,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $3 + local.tee $16 i32.store - local.get $3 + local.get $16 i32.const 0 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $16 i32.const 1 i64.const 4 call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $16 i32.const 2 i64.const 6 call $~lib/typedarray/Uint64Array#__set @@ -57448,44 +57398,44 @@ i32.const 6928 i32.store offset=4 i32.const 0 - local.set $5 + local.set $8 block $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0 (result i32) - local.get $3 + local.get $16 i32.load offset=4 - local.set $1 - local.get $3 + local.set $0 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|0259 - local.get $0 - local.get $5 + local.get $1 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add i64.load - local.set $9 + local.set $10 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $9 - local.get $5 - local.get $3 + local.get $10 + local.get $8 + local.get $16 i32.const 6928 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0 drop - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|0259 end end @@ -57497,44 +57447,44 @@ i32.const 6960 i32.store offset=4 i32.const 0 - local.set $5 + local.set $8 block $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0261 (result i32) - local.get $3 + local.get $16 i32.load offset=4 - local.set $1 - local.get $3 + local.set $0 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|0262 - local.get $0 - local.get $5 + local.get $1 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add i64.load - local.set $9 + local.set $10 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $9 - local.get $5 - local.get $3 + local.get $10 + local.get $8 + local.get $16 i32.const 6960 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0261 drop - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|0262 end end @@ -57554,23 +57504,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $3 + local.tee $16 i32.store - local.get $3 + local.get $16 i32.const 0 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $3 + local.get $16 i32.const 1 f32.const 4 call $~lib/typedarray/Float32Array#__set - local.get $3 + local.get $16 i32.const 2 f32.const 6 call $~lib/typedarray/Float32Array#__set @@ -57578,44 +57528,44 @@ i32.const 6992 i32.store offset=4 i32.const 0 - local.set $5 + local.set $8 block $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) - local.get $3 + local.get $16 i32.load offset=4 - local.set $1 - local.get $3 + local.set $0 + local.get $16 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|0264 - local.get $0 - local.get $5 + local.get $1 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add f32.load - local.set $11 + local.set $13 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $11 - local.get $5 - local.get $3 + local.get $13 + local.get $8 + local.get $16 i32.const 6992 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|0264 end end @@ -57627,44 +57577,44 @@ i32.const 7024 i32.store offset=4 i32.const 0 - local.set $5 + local.set $8 block $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0266 (result i32) - local.get $3 + local.get $16 i32.load offset=4 - local.set $1 - local.get $3 + local.set $0 + local.get $16 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|0267 - local.get $0 - local.get $5 + local.get $1 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add f32.load - local.set $11 + local.set $13 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $11 - local.get $5 - local.get $3 + local.get $13 + local.get $8 + local.get $16 i32.const 7024 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0266 drop - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|0267 end end @@ -57684,23 +57634,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $3 + local.tee $16 i32.store - local.get $3 + local.get $16 i32.const 0 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $3 + local.get $16 i32.const 1 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $3 + local.get $16 i32.const 2 f64.const 6 call $~lib/typedarray/Float64Array#__set @@ -57708,44 +57658,44 @@ i32.const 7056 i32.store offset=4 i32.const 0 - local.set $5 + local.set $8 block $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) - local.get $3 + local.get $16 i32.load offset=4 - local.set $1 - local.get $3 + local.set $0 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|0269 - local.get $0 - local.get $5 + local.get $1 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add f64.load - local.set $12 + local.set $11 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $12 - local.get $5 - local.get $3 + local.get $11 + local.get $8 + local.get $16 i32.const 7056 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|0269 end end @@ -57757,44 +57707,44 @@ i32.const 7088 i32.store offset=4 i32.const 0 - local.set $5 + local.set $8 block $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0271 (result i32) - local.get $3 + local.get $16 i32.load offset=4 - local.set $1 - local.get $3 + local.set $0 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|0272 - local.get $0 - local.get $5 + local.get $1 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add f64.load - local.set $12 + local.set $11 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $12 - local.get $5 - local.get $3 + local.get $11 + local.get $8 + local.get $16 i32.const 7088 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0271 drop - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|0272 end end @@ -57814,25 +57764,25 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $15 i32.const 0 i32.const 7152 i32.const 0 @@ -57842,7 +57792,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $15 i32.const 1 i32.const 7152 i32.const 1 @@ -57852,7 +57802,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $15 i32.const 2 i32.const 7152 i32.const 2 @@ -57863,33 +57813,33 @@ i32.const 7200 i32.store offset=8 i32.const 0 - local.set $5 - local.get $3 + local.set $8 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 - local.set $1 + local.set $0 loop $for-loop|054274 - local.get $1 - local.get $5 + local.get $0 + local.get $8 i32.gt_s if - local.get $2 - local.get $5 + local.get $8 + local.get $16 i32.add i32.load8_s i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $3 + local.get $8 + local.get $15 i32.const 7200 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|054274 end end @@ -57910,25 +57860,25 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $15 i32.const 0 i32.const 7152 i32.const 0 @@ -57939,7 +57889,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $15 i32.const 1 i32.const 7152 i32.const 1 @@ -57950,7 +57900,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $15 i32.const 2 i32.const 7152 i32.const 2 @@ -57962,33 +57912,33 @@ i32.const 7232 i32.store offset=8 i32.const 0 - local.set $5 - local.get $3 + local.set $8 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 - local.set $1 + local.set $0 loop $for-loop|056 - local.get $1 - local.get $5 + local.get $0 + local.get $8 i32.gt_s if - local.get $2 - local.get $5 + local.get $8 + local.get $16 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $3 + local.get $8 + local.get $15 i32.const 7232 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|056 end end @@ -58009,25 +57959,25 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $15 i32.const 0 i32.const 7152 i32.const 0 @@ -58038,7 +57988,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $15 i32.const 1 i32.const 7152 i32.const 1 @@ -58049,7 +57999,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $15 i32.const 2 i32.const 7152 i32.const 2 @@ -58061,33 +58011,33 @@ i32.const 7264 i32.store offset=8 i32.const 0 - local.set $5 - local.get $3 + local.set $8 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 - local.set $1 + local.set $0 loop $for-loop|059 - local.get $1 - local.get $5 + local.get $0 + local.get $8 i32.gt_s if - local.get $2 - local.get $5 + local.get $8 + local.get $16 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $3 + local.get $8 + local.get $15 i32.const 7264 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|059 end end @@ -58108,25 +58058,25 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $15 i32.const 0 i32.const 7152 i32.const 0 @@ -58136,7 +58086,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $15 i32.const 1 i32.const 7152 i32.const 1 @@ -58146,7 +58096,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $15 i32.const 2 i32.const 7152 i32.const 2 @@ -58157,37 +58107,37 @@ i32.const 7296 i32.store offset=8 i32.const 0 - local.set $5 - local.get $3 + local.set $8 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 1 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|061278 - local.get $1 - local.get $5 + local.get $0 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 1 i32.shl - local.get $2 + local.get $16 i32.add i32.load16_s i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $3 + local.get $8 + local.get $15 i32.const 7296 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|061278 end end @@ -58208,25 +58158,25 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $15 i32.const 0 i32.const 7152 i32.const 0 @@ -58237,7 +58187,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $15 i32.const 1 i32.const 7152 i32.const 1 @@ -58248,7 +58198,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $15 i32.const 2 i32.const 7152 i32.const 2 @@ -58260,37 +58210,37 @@ i32.const 7328 i32.store offset=8 i32.const 0 - local.set $5 - local.get $3 + local.set $8 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 1 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|063280 - local.get $1 - local.get $5 + local.get $0 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 1 i32.shl - local.get $2 + local.get $16 i32.add i32.load16_u i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $3 + local.get $8 + local.get $15 i32.const 7328 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|063280 end end @@ -58311,25 +58261,25 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $15 i32.const 0 i32.const 7152 i32.const 0 @@ -58338,7 +58288,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $15 i32.const 1 i32.const 7152 i32.const 1 @@ -58347,7 +58297,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $15 i32.const 2 i32.const 7152 i32.const 2 @@ -58357,37 +58307,37 @@ i32.const 7360 i32.store offset=8 i32.const 0 - local.set $5 - local.get $3 + local.set $8 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|065 - local.get $1 - local.get $5 + local.get $0 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $3 + local.get $8 + local.get $15 i32.const 7360 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|065 end end @@ -58408,25 +58358,25 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $3 + local.tee $15 i32.store - local.get $3 + local.get $15 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $15 i32.const 0 i32.const 7152 i32.const 0 @@ -58435,7 +58385,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $15 i32.const 1 i32.const 7152 i32.const 1 @@ -58444,7 +58394,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $15 i32.const 2 i32.const 7152 i32.const 2 @@ -58454,37 +58404,37 @@ i32.const 7392 i32.store offset=8 i32.const 0 - local.set $5 - local.get $3 + local.set $8 + local.get $15 i32.load offset=4 - local.set $2 - local.get $3 + local.set $16 + local.get $15 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|067 - local.get $1 - local.get $5 + local.get $0 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $3 + local.get $8 + local.get $15 i32.const 7392 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|067 end end @@ -58505,25 +58455,25 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $2 + local.get $16 i32.const 0 i32.const 7152 i32.const 0 @@ -58533,7 +58483,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $2 + local.get $16 i32.const 1 i32.const 7152 i32.const 1 @@ -58543,7 +58493,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $2 + local.get $16 i32.const 2 i32.const 7152 i32.const 2 @@ -58554,37 +58504,37 @@ i32.const 7424 i32.store offset=8 i32.const 0 - local.set $5 - local.get $2 + local.set $8 + local.get $16 i32.load offset=4 - local.set $1 - local.get $2 + local.set $0 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|069 - local.get $0 - local.get $5 + local.get $1 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add i64.load i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $2 + local.get $8 + local.get $16 i32.const 7424 i32.load call_indirect $0 (type $i64_i32_i32_=>_none) - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|069 end end @@ -58605,25 +58555,25 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $2 + local.get $16 i32.const 0 i32.const 7152 i32.const 0 @@ -58633,7 +58583,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $2 + local.get $16 i32.const 1 i32.const 7152 i32.const 1 @@ -58643,7 +58593,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $2 + local.get $16 i32.const 2 i32.const 7152 i32.const 2 @@ -58654,37 +58604,37 @@ i32.const 7456 i32.store offset=8 i32.const 0 - local.set $5 - local.get $2 + local.set $8 + local.get $16 i32.load offset=4 - local.set $1 - local.get $2 + local.set $0 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|071285 - local.get $0 - local.get $5 + local.get $1 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add i64.load i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $2 + local.get $8 + local.get $16 i32.const 7456 i32.load call_indirect $0 (type $i64_i32_i32_=>_none) - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|071285 end end @@ -58705,25 +58655,25 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $2 + local.get $16 i32.const 0 i32.const 7152 i32.const 0 @@ -58733,7 +58683,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $2 + local.get $16 i32.const 1 i32.const 7152 i32.const 1 @@ -58743,7 +58693,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $2 + local.get $16 i32.const 2 i32.const 7152 i32.const 2 @@ -58754,37 +58704,37 @@ i32.const 7488 i32.store offset=8 i32.const 0 - local.set $5 - local.get $2 + local.set $8 + local.get $16 i32.load offset=4 - local.set $1 - local.get $2 + local.set $0 + local.get $16 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|073287 - local.get $0 - local.get $5 + local.get $1 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add f32.load i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $2 + local.get $8 + local.get $16 i32.const 7488 i32.load call_indirect $0 (type $f32_i32_i32_=>_none) - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|073287 end end @@ -58805,25 +58755,25 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $2 + local.get $16 i32.const 0 i32.const 7152 i32.const 0 @@ -58833,7 +58783,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $2 + local.get $16 i32.const 1 i32.const 7152 i32.const 1 @@ -58843,7 +58793,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $2 + local.get $16 i32.const 2 i32.const 7152 i32.const 2 @@ -58854,37 +58804,37 @@ i32.const 7520 i32.store offset=8 i32.const 0 - local.set $5 - local.get $2 + local.set $8 + local.get $16 i32.load offset=4 - local.set $1 - local.get $2 + local.set $0 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|075 - local.get $0 - local.get $5 + local.get $1 + local.get $8 i32.gt_s if - local.get $5 + local.get $8 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add f64.load i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $2 + local.get $8 + local.get $16 i32.const 7520 i32.load call_indirect $0 (type $f64_i32_i32_=>_none) - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|075 end end @@ -58897,7 +58847,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $3 + local.set $15 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -58907,53 +58857,53 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 7616 i32.store - local.get $0 + local.get $1 i32.const 7628 i32.load - local.tee $2 + local.tee $16 call $~lib/typedarray/Int8Array#constructor local.tee $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $16 call $~lib/typedarray/Int8Array#constructor local.tee $1 i32.store offset=8 loop $for-loop|028 - local.get $2 - local.get $3 - i32.gt_s + local.get $15 + local.get $16 + i32.lt_s if local.get $0 - local.get $3 + local.get $15 i32.const 7616 - local.get $3 + local.get $15 call $~lib/array/Array#__get i32.extend8_s call $~lib/typedarray/Int8Array#__set local.get $1 - local.get $3 + local.get $15 i32.const 7616 - local.get $3 + local.get $15 call $~lib/array/Array#__get i32.extend8_s call $~lib/typedarray/Int8Array#__set - local.get $3 + local.get $15 i32.const 1 i32.add - local.set $3 + local.set $15 br $for-loop|028 end end @@ -58961,29 +58911,29 @@ call $~lib/typedarray/Int8Array#reverse drop i32.const 0 - local.set $3 + local.set $15 loop $for-loop|1 - local.get $2 - local.get $3 - i32.gt_s + local.get $15 + local.get $16 + i32.lt_s if local.get $0 - local.get $3 + local.get $15 call $~lib/typedarray/Int8Array#__get i32.const 7616 - local.get $2 + local.get $16 i32.const 1 i32.sub - local.get $3 + local.get $15 i32.sub call $~lib/array/Array#__get i32.extend8_s i32.ne br_if $folding-inner24 - local.get $3 + local.get $15 i32.const 1 i32.add - local.set $3 + local.set $15 br $for-loop|1 end end @@ -58998,27 +58948,27 @@ i32.store offset=12 local.get $1 call $~lib/typedarray/Int8Array#reverse - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 8 i32.ne br_if $folding-inner25 - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 7 i32.ne br_if $folding-inner26 - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 6 i32.ne br_if $folding-inner27 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int8Array#__get i32.const 5 @@ -59029,7 +58979,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $3 + local.set $15 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -59039,55 +58989,55 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 7616 i32.store - local.get $0 + local.get $1 i32.const 7628 i32.load - local.tee $2 + local.tee $16 call $~lib/typedarray/Uint8Array#constructor local.tee $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $16 call $~lib/typedarray/Uint8Array#constructor local.tee $1 i32.store offset=8 loop $for-loop|030 - local.get $2 - local.get $3 - i32.gt_s + local.get $15 + local.get $16 + i32.lt_s if local.get $0 - local.get $3 + local.get $15 i32.const 7616 - local.get $3 + local.get $15 call $~lib/array/Array#__get i32.const 255 i32.and call $~lib/typedarray/Uint8Array#__set local.get $1 - local.get $3 + local.get $15 i32.const 7616 - local.get $3 + local.get $15 call $~lib/array/Array#__get i32.const 255 i32.and call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $15 i32.const 1 i32.add - local.set $3 + local.set $15 br $for-loop|030 end end @@ -59095,30 +59045,30 @@ call $~lib/typedarray/Int8Array#reverse drop i32.const 0 - local.set $3 + local.set $15 loop $for-loop|131 - local.get $2 - local.get $3 - i32.gt_s + local.get $15 + local.get $16 + i32.lt_s if local.get $0 - local.get $3 + local.get $15 call $~lib/typedarray/Uint8Array#__get i32.const 7616 - local.get $2 + local.get $16 i32.const 1 i32.sub - local.get $3 + local.get $15 i32.sub call $~lib/array/Array#__get i32.const 255 i32.and i32.ne br_if $folding-inner24 - local.get $3 + local.get $15 i32.const 1 i32.add - local.set $3 + local.set $15 br $for-loop|131 end end @@ -59132,27 +59082,27 @@ i32.store offset=12 local.get $1 call $~lib/typedarray/Int8Array#reverse - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 8 i32.ne br_if $folding-inner25 - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 7 i32.ne br_if $folding-inner26 - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 6 i32.ne br_if $folding-inner27 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint8Array#__get i32.const 5 @@ -59163,7 +59113,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $3 + local.set $15 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -59173,55 +59123,55 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 7616 i32.store - local.get $0 + local.get $1 i32.const 7628 i32.load - local.tee $2 + local.tee $16 call $~lib/typedarray/Uint8ClampedArray#constructor local.tee $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $16 call $~lib/typedarray/Uint8ClampedArray#constructor local.tee $1 i32.store offset=8 loop $for-loop|032 - local.get $2 - local.get $3 - i32.gt_s + local.get $15 + local.get $16 + i32.lt_s if local.get $0 - local.get $3 + local.get $15 i32.const 7616 - local.get $3 + local.get $15 call $~lib/array/Array#__get i32.const 255 i32.and call $~lib/typedarray/Uint8ClampedArray#__set local.get $1 - local.get $3 + local.get $15 i32.const 7616 - local.get $3 + local.get $15 call $~lib/array/Array#__get i32.const 255 i32.and call $~lib/typedarray/Uint8ClampedArray#__set - local.get $3 + local.get $15 i32.const 1 i32.add - local.set $3 + local.set $15 br $for-loop|032 end end @@ -59229,30 +59179,30 @@ call $~lib/typedarray/Int8Array#reverse drop i32.const 0 - local.set $3 + local.set $15 loop $for-loop|133 - local.get $2 - local.get $3 - i32.gt_s + local.get $15 + local.get $16 + i32.lt_s if local.get $0 - local.get $3 + local.get $15 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 7616 - local.get $2 + local.get $16 i32.const 1 i32.sub - local.get $3 + local.get $15 i32.sub call $~lib/array/Array#__get i32.const 255 i32.and i32.ne br_if $folding-inner24 - local.get $3 + local.get $15 i32.const 1 i32.add - local.set $3 + local.set $15 br $for-loop|133 end end @@ -59266,27 +59216,27 @@ i32.store offset=12 local.get $1 call $~lib/typedarray/Int8Array#reverse - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 8 i32.ne br_if $folding-inner25 - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 7 i32.ne br_if $folding-inner26 - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 6 i32.ne br_if $folding-inner27 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 5 @@ -59297,7 +59247,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $3 + local.set $15 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -59307,53 +59257,53 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 7616 i32.store - local.get $0 + local.get $1 i32.const 7628 i32.load - local.tee $2 + local.tee $16 call $~lib/typedarray/Int16Array#constructor local.tee $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $16 call $~lib/typedarray/Int16Array#constructor local.tee $1 i32.store offset=8 loop $for-loop|034 - local.get $2 - local.get $3 - i32.gt_s + local.get $15 + local.get $16 + i32.lt_s if local.get $0 - local.get $3 + local.get $15 i32.const 7616 - local.get $3 + local.get $15 call $~lib/array/Array#__get i32.extend16_s call $~lib/typedarray/Int16Array#__set local.get $1 - local.get $3 + local.get $15 i32.const 7616 - local.get $3 + local.get $15 call $~lib/array/Array#__get i32.extend16_s call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $15 i32.const 1 i32.add - local.set $3 + local.set $15 br $for-loop|034 end end @@ -59361,29 +59311,29 @@ call $~lib/typedarray/Int16Array#reverse drop i32.const 0 - local.set $3 + local.set $15 loop $for-loop|135 - local.get $2 - local.get $3 - i32.gt_s + local.get $15 + local.get $16 + i32.lt_s if local.get $0 - local.get $3 + local.get $15 call $~lib/typedarray/Int16Array#__get i32.const 7616 - local.get $2 + local.get $16 i32.const 1 i32.sub - local.get $3 + local.get $15 i32.sub call $~lib/array/Array#__get i32.extend16_s i32.ne br_if $folding-inner24 - local.get $3 + local.get $15 i32.const 1 i32.add - local.set $3 + local.set $15 br $for-loop|135 end end @@ -59397,27 +59347,27 @@ i32.store offset=12 local.get $1 call $~lib/typedarray/Int16Array#reverse - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 8 i32.ne br_if $folding-inner25 - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 7 i32.ne br_if $folding-inner26 - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 6 i32.ne br_if $folding-inner27 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int16Array#__get i32.const 5 @@ -59428,7 +59378,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $3 + local.set $15 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -59438,55 +59388,55 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 7616 i32.store - local.get $0 + local.get $1 i32.const 7628 i32.load - local.tee $2 + local.tee $16 call $~lib/typedarray/Uint16Array#constructor local.tee $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $16 call $~lib/typedarray/Uint16Array#constructor local.tee $1 i32.store offset=8 loop $for-loop|037 - local.get $2 - local.get $3 - i32.gt_s + local.get $15 + local.get $16 + i32.lt_s if local.get $0 - local.get $3 + local.get $15 i32.const 7616 - local.get $3 + local.get $15 call $~lib/array/Array#__get i32.const 65535 i32.and call $~lib/typedarray/Uint16Array#__set local.get $1 - local.get $3 + local.get $15 i32.const 7616 - local.get $3 + local.get $15 call $~lib/array/Array#__get i32.const 65535 i32.and call $~lib/typedarray/Uint16Array#__set - local.get $3 + local.get $15 i32.const 1 i32.add - local.set $3 + local.set $15 br $for-loop|037 end end @@ -59494,30 +59444,30 @@ call $~lib/typedarray/Int16Array#reverse drop i32.const 0 - local.set $3 + local.set $15 loop $for-loop|138 - local.get $2 - local.get $3 - i32.gt_s + local.get $15 + local.get $16 + i32.lt_s if local.get $0 - local.get $3 + local.get $15 call $~lib/typedarray/Uint16Array#__get i32.const 7616 - local.get $2 + local.get $16 i32.const 1 i32.sub - local.get $3 + local.get $15 i32.sub call $~lib/array/Array#__get i32.const 65535 i32.and i32.ne br_if $folding-inner24 - local.get $3 + local.get $15 i32.const 1 i32.add - local.set $3 + local.set $15 br $for-loop|138 end end @@ -59531,27 +59481,27 @@ i32.store offset=12 local.get $1 call $~lib/typedarray/Int16Array#reverse - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 8 i32.ne br_if $folding-inner25 - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 7 i32.ne br_if $folding-inner26 - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 6 i32.ne br_if $folding-inner27 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint16Array#__get i32.const 5 @@ -59581,9 +59531,9 @@ global.get $~lib/memory/__stack_pointer i32.const 1 call $~lib/typedarray/Float64Array#constructor - local.tee $4 + local.tee $14 i32.store offset=12 - local.get $4 + local.get $14 i32.const 0 f64.const nan:0x8000000000000 call $~lib/typedarray/Float64Array#__set @@ -59592,29 +59542,29 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $4 + local.get $14 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $15 i32.const 0 - local.get $3 + local.get $15 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $4 + local.get $14 i32.load offset=4 - local.set $2 + local.set $16 loop $while-continue|0 local.get $0 - local.get $3 + local.get $15 i32.lt_s if local.get $0 local.tee $1 i32.const 3 i32.shl - local.get $2 + local.get $16 i32.add f64.load f64.const nan:0x8000000000000 @@ -59642,48 +59592,48 @@ unreachable end i32.const 0 - local.set $5 + local.set $8 block $~lib/typedarray/INCLUDES<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) i32.const 0 - local.get $4 + local.get $14 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 select i32.eqz br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $4 + local.get $14 i32.load offset=4 - local.set $0 + local.set $1 loop $while-continue|0289 - local.get $1 - local.get $5 + local.get $0 + local.get $8 i32.gt_s if i32.const 1 - local.get $5 + local.get $8 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add f64.load - local.tee $12 + local.tee $11 f64.const nan:0x8000000000000 f64.eq - local.get $12 - local.get $12 + local.get $11 + local.get $11 f64.ne i32.or br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $while-continue|0289 end end @@ -59701,9 +59651,9 @@ global.get $~lib/memory/__stack_pointer i32.const 1 call $~lib/typedarray/Float32Array#constructor - local.tee $4 + local.tee $14 i32.store offset=24 - local.get $4 + local.get $14 i32.const 0 f32.const nan:0x400000 call $~lib/typedarray/Float32Array#__set @@ -59712,29 +59662,29 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $4 + local.get $14 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $15 i32.const 0 - local.get $3 + local.get $15 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $4 + local.get $14 i32.load offset=4 - local.set $2 + local.set $16 loop $while-continue|0290 local.get $0 - local.get $3 + local.get $15 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add f32.load f32.const nan:0x400000 @@ -59762,48 +59712,48 @@ unreachable end i32.const 0 - local.set $5 + local.set $8 block $~lib/typedarray/INCLUDES<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) i32.const 0 - local.get $4 + local.get $14 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 select i32.eqz br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $4 + local.get $14 i32.load offset=4 - local.set $0 + local.set $1 loop $while-continue|078 - local.get $1 - local.get $5 + local.get $0 + local.get $8 i32.gt_s if i32.const 1 - local.get $5 + local.get $8 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add f32.load - local.tee $11 + local.tee $13 f32.const nan:0x400000 f32.eq - local.get $11 - local.get $11 + local.get $13 + local.get $13 f32.ne i32.or br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $while-continue|078 end end @@ -59827,50 +59777,50 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 5 call $~lib/typedarray/Int8Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int8Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -59884,27 +59834,27 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Int8Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=4 + local.tee $1 local.get $0 + i32.store offset=4 + local.get $1 i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -59922,65 +59872,65 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 5 call $~lib/typedarray/Uint8Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Uint8Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz br_if $folding-inner15 - local.get $1 + local.get $0 call $~lib/typedarray/Uint8Array#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=4 + local.tee $1 local.get $0 + i32.store offset=4 + local.get $1 i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -59998,65 +59948,65 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Uint8Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz br_if $folding-inner15 - local.get $1 + local.get $0 call $~lib/typedarray/Uint8Array#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=4 + local.tee $1 local.get $0 + i32.store offset=4 + local.get $1 i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60074,50 +60024,50 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 5 call $~lib/typedarray/Int16Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int16Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60131,27 +60081,27 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Int16Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=4 + local.tee $1 local.get $0 + i32.store offset=4 + local.get $1 i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60169,50 +60119,50 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 5 call $~lib/typedarray/Uint16Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Uint16Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Uint16Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60226,27 +60176,27 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Uint16Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=4 + local.tee $1 local.get $0 + i32.store offset=4 + local.get $1 i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60264,50 +60214,50 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 5 call $~lib/typedarray/Int32Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int32Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60321,27 +60271,27 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Int32Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=4 + local.tee $1 local.get $0 + i32.store offset=4 + local.get $1 i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60359,50 +60309,50 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 5 call $~lib/typedarray/Uint32Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Uint32Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60416,27 +60366,27 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Uint32Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=4 + local.tee $1 local.get $0 + i32.store offset=4 + local.get $1 i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60454,50 +60404,50 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 5 call $~lib/typedarray/Int64Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $0 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $0 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $0 i32.const 3 i64.const 4 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $0 i32.const 4 i64.const 5 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int64Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60511,27 +60461,27 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Int64Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=4 + local.tee $1 local.get $0 + i32.store offset=4 + local.get $1 i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60549,50 +60499,50 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 5 call $~lib/typedarray/Uint64Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $0 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $0 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $0 i32.const 3 i64.const 4 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $0 i32.const 4 i64.const 5 call $~lib/typedarray/Uint64Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Uint64Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60606,27 +60556,27 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Uint64Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=4 + local.tee $1 local.get $0 + i32.store offset=4 + local.get $1 i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60644,50 +60594,50 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 5 call $~lib/typedarray/Float32Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 3 f32.const 4 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 4 f32.const 5 call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Float32Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 10800 i32.store offset=8 - local.get $0 + local.get $1 i32.const 10800 call $~lib/string/String.__eq i32.eqz @@ -60701,27 +60651,27 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Float32Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=4 + local.tee $1 local.get $0 + i32.store offset=4 + local.get $1 i32.const 10800 i32.store offset=8 - local.get $1 + local.get $0 i32.const 10800 call $~lib/string/String.__eq i32.eqz @@ -60739,50 +60689,50 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 5 call $~lib/typedarray/Float64Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 3 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 4 f64.const 5 call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Float64Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 10800 i32.store offset=8 - local.get $0 + local.get $1 i32.const 10800 call $~lib/string/String.__eq i32.eqz @@ -60796,27 +60746,27 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Float64Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=4 + local.tee $1 local.get $0 + i32.store offset=4 + local.get $1 i32.const 10800 i32.store offset=8 - local.get $1 + local.get $0 i32.const 10800 call $~lib/string/String.__eq i32.eqz @@ -60828,17 +60778,17 @@ global.get $~lib/memory/__stack_pointer i32.const 0 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $1 i32.store offset=12 i32.const 2 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8Array.wrap@varargs - local.tee $0 + local.tee $1 i32.store offset=24 - local.get $0 + local.get $1 i32.load offset=8 if i32.const 0 @@ -60851,17 +60801,17 @@ global.get $~lib/memory/__stack_pointer i32.const 2 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $1 i32.store offset=12 i32.const 2 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Uint8Array.wrap@varargs - local.tee $0 + local.tee $1 i32.store offset=24 - local.get $0 + local.get $1 i32.load offset=8 if i32.const 0 @@ -60872,7 +60822,7 @@ unreachable end i32.const 0 - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -60882,64 +60832,64 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 10928 i32.store - local.get $0 + local.get $1 i32.const 10940 i32.load - local.tee $3 + local.tee $12 call $~lib/typedarray/Int8Array#constructor - local.tee $6 + local.tee $14 i32.store offset=4 loop $for-loop|041 - local.get $2 - local.get $3 + local.get $0 + local.get $12 i32.lt_s if - local.get $6 - local.get $2 + local.get $14 + local.get $0 i32.const 10928 - local.get $2 + local.get $0 call $~lib/array/Array#__get i32.extend8_s call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|041 end end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $6 - i32.load local.tee $0 + local.get $14 + i32.load + local.tee $1 i32.store offset=8 - local.get $1 local.get $0 - local.get $6 + local.get $1 + local.get $14 i32.load offset=4 - local.get $6 + local.get $14 i32.load i32.sub - local.tee $0 - local.get $6 + local.tee $1 + local.get $14 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $4 + local.tee $15 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -60956,7 +60906,7 @@ local.tee $1 i32.const 0 i32.store - local.get $4 + local.get $15 i32.const 20 i32.sub i32.load offset=16 @@ -60968,19 +60918,19 @@ local.tee $1 i32.store local.get $1 - local.get $4 + local.get $15 i32.store - local.get $4 + local.get $15 if local.get $1 - local.get $4 + local.get $15 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $1 local.get $0 i32.store offset=8 local.get $1 - local.get $4 + local.get $15 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -60989,24 +60939,24 @@ local.get $1 i32.store offset=16 i32.const 0 - local.set $2 + local.set $0 loop $for-loop|142 - local.get $2 - local.get $3 + local.get $0 + local.get $12 i32.lt_s if - local.get $6 - local.get $2 + local.get $14 + local.get $0 call $~lib/typedarray/Int8Array#__get local.get $1 - local.get $2 + local.get $0 call $~lib/typedarray/Int8Array#__get i32.ne br_if $folding-inner29 - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|142 end end @@ -61040,16 +60990,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $2 + local.tee $15 call $~lib/typedarray/Uint8Array#constructor - local.tee $3 + local.tee $16 i32.store offset=4 loop $for-loop|043 local.get $1 - local.get $2 + local.get $15 i32.lt_s if - local.get $3 + local.get $16 local.get $1 i32.const 10928 local.get $1 @@ -61065,30 +61015,30 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $3 - i32.load local.tee $0 + local.get $16 + i32.load + local.tee $1 i32.store offset=8 - local.get $1 local.get $0 - local.get $3 + local.get $1 + local.get $16 i32.load offset=4 - local.get $3 + local.get $16 i32.load i32.sub - local.tee $0 - local.get $0 - local.get $3 + local.tee $1 + local.get $1 + local.get $16 i32.load offset=8 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $0 + local.tee $1 i32.store offset=12 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8Array.wrap@varargs local.tee $0 @@ -61097,10 +61047,10 @@ local.set $1 loop $for-loop|144 local.get $1 - local.get $2 + local.get $15 i32.lt_s if - local.get $3 + local.get $16 local.get $1 call $~lib/typedarray/Uint8Array#__get local.get $0 @@ -61120,7 +61070,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -61130,65 +61080,65 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 10928 i32.store - local.get $0 + local.get $1 i32.const 10940 i32.load - local.tee $3 + local.tee $12 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $6 + local.tee $14 i32.store offset=4 loop $for-loop|047 - local.get $2 - local.get $3 + local.get $0 + local.get $12 i32.lt_s if - local.get $6 - local.get $2 + local.get $14 + local.get $0 i32.const 10928 - local.get $2 + local.get $0 call $~lib/array/Array#__get i32.const 255 i32.and call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|047 end end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $6 - i32.load local.tee $0 + local.get $14 + i32.load + local.tee $1 i32.store offset=8 - local.get $1 local.get $0 - local.get $6 + local.get $1 + local.get $14 i32.load offset=4 - local.get $6 + local.get $14 i32.load i32.sub - local.tee $0 - local.get $6 + local.tee $1 + local.get $14 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $4 + local.tee $15 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61205,7 +61155,7 @@ local.tee $1 i32.const 0 i32.store - local.get $4 + local.get $15 i32.const 20 i32.sub i32.load offset=16 @@ -61217,19 +61167,19 @@ local.tee $1 i32.store local.get $1 - local.get $4 + local.get $15 i32.store - local.get $4 + local.get $15 if local.get $1 - local.get $4 + local.get $15 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $1 local.get $0 i32.store offset=8 local.get $1 - local.get $4 + local.get $15 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -61238,24 +61188,24 @@ local.get $1 i32.store offset=16 i32.const 0 - local.set $2 + local.set $0 loop $for-loop|148 - local.get $2 - local.get $3 + local.get $0 + local.get $12 i32.lt_s if - local.get $6 - local.get $2 + local.get $14 + local.get $0 call $~lib/typedarray/Uint8ClampedArray#__get local.get $1 - local.get $2 + local.get $0 call $~lib/typedarray/Uint8ClampedArray#__get i32.ne br_if $folding-inner29 - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|148 end end @@ -61289,16 +61239,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $2 + local.tee $12 call $~lib/typedarray/Int16Array#constructor - local.tee $6 + local.tee $14 i32.store offset=4 loop $for-loop|053 local.get $1 - local.get $2 + local.get $12 i32.lt_s if - local.get $6 + local.get $14 local.get $1 i32.const 10928 local.get $1 @@ -61313,25 +61263,25 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $6 - i32.load local.tee $0 + local.get $14 + i32.load + local.tee $1 i32.store offset=8 - local.get $1 local.get $0 - local.get $6 + local.get $1 + local.get $14 i32.load offset=4 - local.get $6 + local.get $14 i32.load i32.sub - local.tee $0 - local.get $6 + local.tee $1 + local.get $14 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $15 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61347,11 +61297,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $15 i32.const 20 i32.sub i32.load offset=16 - local.tee $0 + local.tee $1 i32.const 1 i32.and br_if $folding-inner30 @@ -61359,40 +61309,40 @@ i32.const 12 i32.const 6 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $0 i32.store - local.get $4 - local.get $3 + local.get $0 + local.get $15 i32.store - local.get $3 + local.get $15 if - local.get $4 - local.get $3 + local.get $0 + local.get $15 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 local.get $0 + local.get $1 i32.store offset=8 - local.get $4 - local.get $3 + local.get $0 + local.get $15 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|154 local.get $1 - local.get $2 + local.get $12 i32.lt_s if - local.get $6 + local.get $14 local.get $1 call $~lib/typedarray/Int16Array#__get - local.get $4 + local.get $0 local.get $1 call $~lib/typedarray/Int16Array#__get i32.ne @@ -61434,16 +61384,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $2 + local.tee $12 call $~lib/typedarray/Uint16Array#constructor - local.tee $6 + local.tee $14 i32.store offset=4 loop $for-loop|057 local.get $1 - local.get $2 + local.get $12 i32.lt_s if - local.get $6 + local.get $14 local.get $1 i32.const 10928 local.get $1 @@ -61459,25 +61409,25 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $6 - i32.load local.tee $0 + local.get $14 + i32.load + local.tee $1 i32.store offset=8 - local.get $1 local.get $0 - local.get $6 + local.get $1 + local.get $14 i32.load offset=4 - local.get $6 + local.get $14 i32.load i32.sub - local.tee $0 - local.get $6 + local.tee $1 + local.get $14 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $15 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61493,11 +61443,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $15 i32.const 20 i32.sub i32.load offset=16 - local.tee $0 + local.tee $1 i32.const 1 i32.and br_if $folding-inner30 @@ -61505,40 +61455,40 @@ i32.const 12 i32.const 7 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $0 i32.store - local.get $4 - local.get $3 + local.get $0 + local.get $15 i32.store - local.get $3 + local.get $15 if - local.get $4 - local.get $3 + local.get $0 + local.get $15 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 local.get $0 + local.get $1 i32.store offset=8 - local.get $4 - local.get $3 + local.get $0 + local.get $15 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|158 local.get $1 - local.get $2 + local.get $12 i32.lt_s if - local.get $6 + local.get $14 local.get $1 call $~lib/typedarray/Uint16Array#__get - local.get $4 + local.get $0 local.get $1 call $~lib/typedarray/Uint16Array#__get i32.ne @@ -61580,16 +61530,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $2 + local.tee $12 call $~lib/typedarray/Int32Array#constructor - local.tee $6 + local.tee $14 i32.store offset=4 loop $for-loop|060 local.get $1 - local.get $2 + local.get $12 i32.lt_s if - local.get $6 + local.get $14 local.get $1 i32.const 10928 local.get $1 @@ -61603,25 +61553,25 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $6 - i32.load local.tee $0 + local.get $14 + i32.load + local.tee $1 i32.store offset=8 - local.get $1 local.get $0 - local.get $6 + local.get $1 + local.get $14 i32.load offset=4 - local.get $6 + local.get $14 i32.load i32.sub - local.tee $0 - local.get $6 + local.tee $1 + local.get $14 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $15 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61637,11 +61587,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $15 i32.const 20 i32.sub i32.load offset=16 - local.tee $0 + local.tee $1 i32.const 3 i32.and br_if $folding-inner30 @@ -61649,40 +61599,40 @@ i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $0 i32.store - local.get $4 - local.get $3 + local.get $0 + local.get $15 i32.store - local.get $3 + local.get $15 if - local.get $4 - local.get $3 + local.get $0 + local.get $15 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 local.get $0 + local.get $1 i32.store offset=8 - local.get $4 - local.get $3 + local.get $0 + local.get $15 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|161 local.get $1 - local.get $2 + local.get $12 i32.lt_s if - local.get $6 + local.get $14 local.get $1 call $~lib/typedarray/Int32Array#__get - local.get $4 + local.get $0 local.get $1 call $~lib/typedarray/Int32Array#__get i32.ne @@ -61724,16 +61674,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $2 + local.tee $12 call $~lib/typedarray/Uint32Array#constructor - local.tee $6 + local.tee $14 i32.store offset=4 loop $for-loop|064 local.get $1 - local.get $2 + local.get $12 i32.lt_s if - local.get $6 + local.get $14 local.get $1 i32.const 10928 local.get $1 @@ -61747,25 +61697,25 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $6 - i32.load local.tee $0 + local.get $14 + i32.load + local.tee $1 i32.store offset=8 - local.get $1 local.get $0 - local.get $6 + local.get $1 + local.get $14 i32.load offset=4 - local.get $6 + local.get $14 i32.load i32.sub - local.tee $0 - local.get $6 + local.tee $1 + local.get $14 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $15 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61781,11 +61731,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $15 i32.const 20 i32.sub i32.load offset=16 - local.tee $0 + local.tee $1 i32.const 3 i32.and br_if $folding-inner30 @@ -61793,40 +61743,40 @@ i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $0 i32.store - local.get $4 - local.get $3 + local.get $0 + local.get $15 i32.store - local.get $3 + local.get $15 if - local.get $4 - local.get $3 + local.get $0 + local.get $15 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 local.get $0 + local.get $1 i32.store offset=8 - local.get $4 - local.get $3 + local.get $0 + local.get $15 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|165 local.get $1 - local.get $2 + local.get $12 i32.lt_s if - local.get $6 + local.get $14 local.get $1 call $~lib/typedarray/Uint32Array#__get - local.get $4 + local.get $0 local.get $1 call $~lib/typedarray/Uint32Array#__get i32.ne @@ -61868,16 +61818,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $2 + local.tee $12 call $~lib/typedarray/Int64Array#constructor - local.tee $6 + local.tee $14 i32.store offset=4 loop $for-loop|070 local.get $1 - local.get $2 + local.get $12 i32.lt_s if - local.get $6 + local.get $14 local.get $1 i32.const 10928 local.get $1 @@ -61892,25 +61842,25 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $6 - i32.load local.tee $0 + local.get $14 + i32.load + local.tee $1 i32.store offset=8 - local.get $1 local.get $0 - local.get $6 + local.get $1 + local.get $14 i32.load offset=4 - local.get $6 + local.get $14 i32.load i32.sub - local.tee $0 - local.get $6 + local.tee $1 + local.get $14 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $15 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61926,11 +61876,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $15 i32.const 20 i32.sub i32.load offset=16 - local.tee $0 + local.tee $1 i32.const 7 i32.and br_if $folding-inner30 @@ -61938,40 +61888,40 @@ i32.const 12 i32.const 10 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $0 i32.store - local.get $4 - local.get $3 + local.get $0 + local.get $15 i32.store - local.get $3 + local.get $15 if - local.get $4 - local.get $3 + local.get $0 + local.get $15 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 local.get $0 + local.get $1 i32.store offset=8 - local.get $4 - local.get $3 + local.get $0 + local.get $15 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|171 local.get $1 - local.get $2 + local.get $12 i32.lt_s if - local.get $6 + local.get $14 local.get $1 call $~lib/typedarray/Int64Array#__get - local.get $4 + local.get $0 local.get $1 call $~lib/typedarray/Int64Array#__get i64.ne @@ -62013,16 +61963,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $2 + local.tee $12 call $~lib/typedarray/Uint64Array#constructor - local.tee $6 + local.tee $14 i32.store offset=4 loop $for-loop|074 local.get $1 - local.get $2 + local.get $12 i32.lt_s if - local.get $6 + local.get $14 local.get $1 i32.const 10928 local.get $1 @@ -62037,25 +61987,25 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $6 - i32.load local.tee $0 + local.get $14 + i32.load + local.tee $1 i32.store offset=8 - local.get $1 local.get $0 - local.get $6 + local.get $1 + local.get $14 i32.load offset=4 - local.get $6 + local.get $14 i32.load i32.sub - local.tee $0 - local.get $6 + local.tee $1 + local.get $14 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $15 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -62071,11 +62021,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $15 i32.const 20 i32.sub i32.load offset=16 - local.tee $0 + local.tee $1 i32.const 7 i32.and br_if $folding-inner30 @@ -62083,40 +62033,40 @@ i32.const 12 i32.const 11 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $0 i32.store - local.get $4 - local.get $3 + local.get $0 + local.get $15 i32.store - local.get $3 + local.get $15 if - local.get $4 - local.get $3 + local.get $0 + local.get $15 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 local.get $0 + local.get $1 i32.store offset=8 - local.get $4 - local.get $3 + local.get $0 + local.get $15 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|175 local.get $1 - local.get $2 + local.get $12 i32.lt_s if - local.get $6 + local.get $14 local.get $1 call $~lib/typedarray/Uint64Array#__get - local.get $4 + local.get $0 local.get $1 call $~lib/typedarray/Uint64Array#__get i64.ne @@ -62158,16 +62108,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $2 + local.tee $12 call $~lib/typedarray/Float32Array#constructor - local.tee $6 + local.tee $14 i32.store offset=4 loop $for-loop|077 local.get $1 - local.get $2 + local.get $12 i32.lt_s if - local.get $6 + local.get $14 local.get $1 i32.const 10928 local.get $1 @@ -62182,25 +62132,25 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $6 - i32.load local.tee $0 + local.get $14 + i32.load + local.tee $1 i32.store offset=8 - local.get $1 local.get $0 - local.get $6 + local.get $1 + local.get $14 i32.load offset=4 - local.get $6 + local.get $14 i32.load i32.sub - local.tee $0 - local.get $6 + local.tee $1 + local.get $14 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $15 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -62216,11 +62166,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $15 i32.const 20 i32.sub i32.load offset=16 - local.tee $0 + local.tee $1 i32.const 3 i32.and br_if $folding-inner30 @@ -62228,40 +62178,40 @@ i32.const 12 i32.const 12 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $0 i32.store - local.get $4 - local.get $3 + local.get $0 + local.get $15 i32.store - local.get $3 + local.get $15 if - local.get $4 - local.get $3 + local.get $0 + local.get $15 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 local.get $0 + local.get $1 i32.store offset=8 - local.get $4 - local.get $3 + local.get $0 + local.get $15 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|178 local.get $1 - local.get $2 + local.get $12 i32.lt_s if - local.get $6 + local.get $14 local.get $1 call $~lib/typedarray/Float32Array#__get - local.get $4 + local.get $0 local.get $1 call $~lib/typedarray/Float32Array#__get f32.ne @@ -62303,16 +62253,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $2 + local.tee $12 call $~lib/typedarray/Float64Array#constructor - local.tee $6 + local.tee $14 i32.store offset=4 loop $for-loop|080 local.get $1 - local.get $2 + local.get $12 i32.lt_s if - local.get $6 + local.get $14 local.get $1 i32.const 10928 local.get $1 @@ -62327,25 +62277,25 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $6 - i32.load local.tee $0 + local.get $14 + i32.load + local.tee $1 i32.store offset=8 - local.get $1 local.get $0 - local.get $6 + local.get $1 + local.get $14 i32.load offset=4 - local.get $6 + local.get $14 i32.load i32.sub - local.tee $0 - local.get $6 + local.tee $1 + local.get $14 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $15 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -62361,11 +62311,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $15 i32.const 20 i32.sub i32.load offset=16 - local.tee $0 + local.tee $1 i32.const 7 i32.and br_if $folding-inner30 @@ -62373,40 +62323,40 @@ i32.const 12 i32.const 13 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $0 i32.store - local.get $4 - local.get $3 + local.get $0 + local.get $15 i32.store - local.get $3 + local.get $15 if - local.get $4 - local.get $3 + local.get $0 + local.get $15 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 local.get $0 + local.get $1 i32.store offset=8 - local.get $4 - local.get $3 + local.get $0 + local.get $15 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|181 local.get $1 - local.get $2 + local.get $12 i32.lt_s if - local.get $6 + local.get $14 local.get $1 call $~lib/typedarray/Float64Array#__get - local.get $4 + local.get $0 local.get $1 call $~lib/typedarray/Float64Array#__get f64.ne @@ -62436,7 +62386,7 @@ global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $7 + local.tee $12 i32.store offset=24 global.get $~lib/memory/__stack_pointer i32.const 3 @@ -62458,38 +62408,38 @@ global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Int64Array#constructor - local.tee $5 + local.tee $15 i32.store offset=8 - local.get $5 + local.get $15 i32.const 0 i64.const -10 call $~lib/typedarray/Int64Array#__set - local.get $5 + local.get $15 i32.const 1 i64.const 100 call $~lib/typedarray/Int64Array#__set - local.get $5 + local.get $15 i32.const 2 i64.const 10 call $~lib/typedarray/Int64Array#__set - local.get $5 + local.get $15 i32.const 3 i64.const 300 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 2 call $~lib/typedarray/Int32Array#constructor - local.tee $0 + local.tee $14 i32.store offset=16 - local.get $0 + local.get $14 i32.const 0 i32.const 300 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $14 i32.const 1 i32.const -1 call $~lib/typedarray/Int32Array#__set - local.get $7 + local.get $12 i32.load offset=8 local.get $1 i32.load offset=8 @@ -62499,42 +62449,42 @@ i32.add i32.lt_s br_if $folding-inner19 - local.get $7 + local.get $12 i32.load offset=4 i32.const 1 i32.add - local.set $4 + local.set $16 local.get $1 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 + local.set $1 loop $for-loop|082 - local.get $2 - local.get $16 + local.get $1 + local.get $6 i32.gt_s if - local.get $4 + local.get $6 local.get $16 i32.add - local.get $16 + local.get $6 i32.const 2 i32.shl - local.get $3 + local.get $0 i32.add f32.load - local.tee $11 - local.get $11 + local.tee $13 + local.get $13 f32.sub f32.const 0 f32.eq if (result i32) f32.const 0 f32.const 255 - local.get $11 + local.get $13 f32.min f32.max i32.trunc_f32_u @@ -62542,22 +62492,22 @@ i32.const 0 end i32.store8 - local.get $16 + local.get $6 i32.const 1 i32.add - local.set $16 + local.set $6 br $for-loop|082 end end - local.get $7 - local.get $5 + local.get $12 + local.get $15 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int64Array> i32.const 0 - local.set $6 - local.get $7 + local.set $9 + local.get $12 i32.load offset=8 - local.get $0 + local.get $14 i32.load offset=8 i32.const 2 i32.shr_u @@ -62565,51 +62515,51 @@ i32.add i32.lt_s br_if $folding-inner19 - local.get $7 + local.get $12 i32.load offset=4 i32.const 8 i32.add - local.set $2 - local.get $0 + local.set $15 + local.get $14 i32.load offset=4 - local.set $1 - local.get $0 + local.set $16 + local.get $14 i32.load offset=8 i32.const 2 i32.shr_u local.set $0 loop $for-loop|086311 local.get $0 - local.get $6 + local.get $9 i32.gt_s if - local.get $2 - local.get $6 + local.get $9 + local.get $15 i32.add - local.get $6 + local.get $9 i32.const 2 i32.shl - local.get $1 + local.get $16 i32.add i32.load - local.tee $3 + local.tee $1 i32.const 255 - local.get $3 + local.get $1 i32.sub i32.const 31 i32.shr_s i32.or - local.get $3 + local.get $1 i32.const 31 i32.shr_s i32.const -1 i32.xor i32.and i32.store8 - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|086311 end end @@ -62618,106 +62568,106 @@ i32.const 63 i32.const 15280 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $7 - local.get $0 + local.get $12 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint32Array#constructor - local.tee $0 + local.tee $1 i32.store offset=28 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 300 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 100 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 3 i32.const -1 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $14 i32.store - local.get $4 + local.get $14 i32.const 0 i32.const -10 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $14 i32.const 1 i32.const 100 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $14 i32.const 2 i32.const 10 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $14 i32.const 3 i32.const 300 call $~lib/typedarray/Int16Array#__set i32.const 0 - local.set $6 - local.get $7 + local.set $9 + local.get $12 i32.load offset=8 - local.get $0 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u i32.lt_s br_if $folding-inner19 - local.get $7 + local.get $12 i32.load offset=4 - local.set $3 - local.get $0 + local.set $15 + local.get $1 i32.load offset=4 - local.set $2 - local.get $0 + local.set $16 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|090 - local.get $1 - local.get $6 + local.get $0 + local.get $9 i32.gt_s if - local.get $3 - local.get $6 + local.get $9 + local.get $15 i32.add i32.const 255 - local.get $6 + local.get $9 i32.const 2 i32.shl - local.get $2 + local.get $16 i32.add i32.load - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.const 255 i32.gt_u select i32.store8 - local.get $6 + local.get $9 i32.const 1 i32.add - local.set $6 + local.set $9 br $for-loop|090 end end - local.get $7 - local.get $4 + local.get $12 + local.get $14 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int16Array> i32.const 10 @@ -62725,12 +62675,12 @@ i32.const 63 i32.const 15312 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $7 - local.get $0 + local.get $12 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> i32.const 0 local.set $1 @@ -62752,17 +62702,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 2 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $16 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $16 i32.const 0 i32.const 3 call $~lib/typedarray/Int8Array#__set @@ -62794,9 +62744,9 @@ i32.const 15344 i32.store end - local.get $2 + local.get $16 i32.load offset=4 - local.get $2 + local.get $16 i32.load offset=8 local.get $1 call $~lib/util/sort/SORT @@ -62804,21 +62754,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.store offset=4 - local.get $2 + local.get $16 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 1 i32.ne br_if $folding-inner31 - local.get $2 + local.get $16 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 2 i32.ne br_if $folding-inner32 - local.get $2 + local.get $16 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 3 @@ -62827,25 +62777,25 @@ global.get $~lib/memory/__stack_pointer i32.const 15376 i32.store offset=8 - local.get $2 + local.get $16 i32.load offset=4 - local.get $2 + local.get $16 i32.load offset=8 i32.const 15376 call $~lib/util/sort/SORT - local.get $2 + local.get $16 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 3 i32.ne br_if $folding-inner34 - local.get $2 + local.get $16 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 2 i32.ne br_if $folding-inner35 - local.get $2 + local.get $16 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 1 @@ -62875,17 +62825,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 2 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $16 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $16 i32.const 0 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -62917,9 +62867,9 @@ i32.const 15408 i32.store end - local.get $2 + local.get $16 i32.load offset=4 - local.get $2 + local.get $16 i32.load offset=8 local.get $1 call $~lib/util/sort/SORT @@ -62927,21 +62877,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.store offset=4 - local.get $2 + local.get $16 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 1 i32.ne br_if $folding-inner31 - local.get $2 + local.get $16 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 2 i32.ne br_if $folding-inner32 - local.get $2 + local.get $16 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 3 @@ -62950,25 +62900,25 @@ global.get $~lib/memory/__stack_pointer i32.const 15440 i32.store offset=8 - local.get $2 + local.get $16 i32.load offset=4 - local.get $2 + local.get $16 i32.load offset=8 i32.const 15440 call $~lib/util/sort/SORT - local.get $2 + local.get $16 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 3 i32.ne br_if $folding-inner34 - local.get $2 + local.get $16 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 2 i32.ne br_if $folding-inner35 - local.get $2 + local.get $16 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 1 @@ -62998,17 +62948,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 2 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $16 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $16 i32.const 0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -63040,9 +62990,9 @@ i32.const 15472 i32.store end - local.get $2 + local.get $16 i32.load offset=4 - local.get $2 + local.get $16 i32.load offset=8 local.get $1 call $~lib/util/sort/SORT @@ -63050,21 +63000,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.store offset=4 - local.get $2 + local.get $16 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 1 i32.ne br_if $folding-inner31 - local.get $2 + local.get $16 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 2 i32.ne br_if $folding-inner32 - local.get $2 + local.get $16 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 3 @@ -63073,25 +63023,25 @@ global.get $~lib/memory/__stack_pointer i32.const 15504 i32.store offset=8 - local.get $2 + local.get $16 i32.load offset=4 - local.get $2 + local.get $16 i32.load offset=8 i32.const 15504 call $~lib/util/sort/SORT - local.get $2 + local.get $16 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 3 i32.ne br_if $folding-inner34 - local.get $2 + local.get $16 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 2 i32.ne br_if $folding-inner35 - local.get $2 + local.get $16 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 1 @@ -63121,17 +63071,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 2 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $2 + local.get $16 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $2 + local.get $16 i32.const 0 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -63163,9 +63113,9 @@ i32.const 15536 i32.store end - local.get $2 + local.get $16 i32.load offset=4 - local.get $2 + local.get $16 i32.load offset=8 i32.const 1 i32.shr_u @@ -63175,21 +63125,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.store offset=4 - local.get $2 + local.get $16 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 1 i32.ne br_if $folding-inner31 - local.get $2 + local.get $16 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 2 i32.ne br_if $folding-inner32 - local.get $2 + local.get $16 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 3 @@ -63198,27 +63148,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15568 i32.store offset=8 - local.get $2 + local.get $16 i32.load offset=4 - local.get $2 + local.get $16 i32.load offset=8 i32.const 1 i32.shr_u i32.const 15568 call $~lib/util/sort/SORT - local.get $2 + local.get $16 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 3 i32.ne br_if $folding-inner34 - local.get $2 + local.get $16 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 2 i32.ne br_if $folding-inner35 - local.get $2 + local.get $16 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 1 @@ -63248,17 +63198,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 2 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $2 + local.get $16 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $2 + local.get $16 i32.const 0 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -63290,9 +63240,9 @@ i32.const 15600 i32.store end - local.get $2 + local.get $16 i32.load offset=4 - local.get $2 + local.get $16 i32.load offset=8 i32.const 1 i32.shr_u @@ -63302,21 +63252,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.store offset=4 - local.get $2 + local.get $16 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 1 i32.ne br_if $folding-inner31 - local.get $2 + local.get $16 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 2 i32.ne br_if $folding-inner32 - local.get $2 + local.get $16 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 3 @@ -63325,27 +63275,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15632 i32.store offset=8 - local.get $2 + local.get $16 i32.load offset=4 - local.get $2 + local.get $16 i32.load offset=8 i32.const 1 i32.shr_u i32.const 15632 call $~lib/util/sort/SORT - local.get $2 + local.get $16 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 3 i32.ne br_if $folding-inner34 - local.get $2 + local.get $16 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 2 i32.ne br_if $folding-inner35 - local.get $2 + local.get $16 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 1 @@ -63375,17 +63325,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 2 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $16 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $16 i32.const 0 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -63417,9 +63367,9 @@ i32.const 15664 i32.store end - local.get $2 + local.get $16 i32.load offset=4 - local.get $2 + local.get $16 i32.load offset=8 i32.const 2 i32.shr_u @@ -63429,21 +63379,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.store offset=4 - local.get $2 + local.get $16 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 1 i32.ne br_if $folding-inner31 - local.get $2 + local.get $16 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 2 i32.ne br_if $folding-inner32 - local.get $2 + local.get $16 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 3 @@ -63452,27 +63402,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15696 i32.store offset=8 - local.get $2 + local.get $16 i32.load offset=4 - local.get $2 + local.get $16 i32.load offset=8 i32.const 2 i32.shr_u i32.const 15696 call $~lib/util/sort/SORT - local.get $2 + local.get $16 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 3 i32.ne br_if $folding-inner34 - local.get $2 + local.get $16 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 2 i32.ne br_if $folding-inner35 - local.get $2 + local.get $16 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 1 @@ -63502,17 +63452,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 2 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $2 + local.get $16 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $2 + local.get $16 i32.const 0 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -63544,9 +63494,9 @@ i32.const 15728 i32.store end - local.get $2 + local.get $16 i32.load offset=4 - local.get $2 + local.get $16 i32.load offset=8 i32.const 2 i32.shr_u @@ -63556,21 +63506,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.store offset=4 - local.get $2 + local.get $16 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 1 i32.ne br_if $folding-inner31 - local.get $2 + local.get $16 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 2 i32.ne br_if $folding-inner32 - local.get $2 + local.get $16 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 3 @@ -63579,27 +63529,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15760 i32.store offset=8 - local.get $2 + local.get $16 i32.load offset=4 - local.get $2 + local.get $16 i32.load offset=8 i32.const 2 i32.shr_u i32.const 15760 call $~lib/util/sort/SORT - local.get $2 + local.get $16 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 3 i32.ne br_if $folding-inner34 - local.get $2 + local.get $16 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 2 i32.ne br_if $folding-inner35 - local.get $2 + local.get $16 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 1 @@ -63629,17 +63579,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 2 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $16 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $16 i32.const 0 i64.const 3 call $~lib/typedarray/Int64Array#__set @@ -63671,9 +63621,9 @@ i32.const 15792 i32.store end - local.get $2 + local.get $16 i32.load offset=4 - local.get $2 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u @@ -63683,21 +63633,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.store offset=4 - local.get $2 + local.get $16 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 1 i64.ne br_if $folding-inner31 - local.get $2 + local.get $16 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 2 i64.ne br_if $folding-inner32 - local.get $2 + local.get $16 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 3 @@ -63706,27 +63656,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15824 i32.store offset=8 - local.get $2 + local.get $16 i32.load offset=4 - local.get $2 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u i32.const 15824 call $~lib/util/sort/SORT - local.get $2 + local.get $16 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 3 i64.ne br_if $folding-inner34 - local.get $2 + local.get $16 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 2 i64.ne br_if $folding-inner35 - local.get $2 + local.get $16 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 1 @@ -63756,17 +63706,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 2 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $16 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $16 i32.const 0 i64.const 3 call $~lib/typedarray/Uint64Array#__set @@ -63798,9 +63748,9 @@ i32.const 15856 i32.store end - local.get $2 + local.get $16 i32.load offset=4 - local.get $2 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u @@ -63810,21 +63760,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.store offset=4 - local.get $2 + local.get $16 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 1 i64.ne br_if $folding-inner31 - local.get $2 + local.get $16 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 2 i64.ne br_if $folding-inner32 - local.get $2 + local.get $16 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 3 @@ -63833,27 +63783,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15888 i32.store offset=8 - local.get $2 + local.get $16 i32.load offset=4 - local.get $2 + local.get $16 i32.load offset=8 i32.const 3 i32.shr_u i32.const 15888 call $~lib/util/sort/SORT - local.get $2 + local.get $16 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 3 i64.ne br_if $folding-inner34 - local.get $2 + local.get $16 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 2 i64.ne br_if $folding-inner35 - local.get $2 + local.get $16 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 1 @@ -63883,17 +63833,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $2 + local.tee $16 i32.store - local.get $2 + local.get $16 i32.const 2 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $16 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $16 i32.const 0 f32.const 3 call $~lib/typedarray/Float32Array#__set @@ -63925,9 +63875,9 @@ i32.const 15920 i32.store end - local.get $2 + local.get $16 i32.load offset=4 - local.get $2 + local.get $16 i32.load offset=8 i32.const 2 i32.shr_u @@ -63937,21 +63887,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $16 i32.store offset=4 - local.get $2 + local.get $16 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 1 f32.ne br_if $folding-inner31 - local.get $2 + local.get $16 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 2 f32.ne br_if $folding-inner32 - local.get $2 + local.get $16 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 3 @@ -63960,27 +63910,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15952 i32.store offset=8 - local.get $2 + local.get $16 i32.load offset=4 - local.get $2 + local.get $16 i32.load offset=8 i32.const 2 i32.shr_u i32.const 15952 call $~lib/util/sort/SORT - local.get $2 + local.get $16 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 3 f32.ne br_if $folding-inner34 - local.get $2 + local.get $16 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 2 f32.ne br_if $folding-inner35 - local.get $2 + local.get $16 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 1 @@ -63999,49 +63949,49 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 0 f64.const 3 call $~lib/typedarray/Float64Array#__set i32.const 0 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 call $~lib/typedarray/Float64Array#sort@varargs - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 1 f64.ne br_if $folding-inner31 - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 2 f64.ne br_if $folding-inner32 - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 3 @@ -64050,27 +64000,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15984 i32.store offset=8 - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.const 15984 call $~lib/util/sort/SORT - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 3 f64.ne br_if $folding-inner34 - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 2 f64.ne br_if $folding-inner35 - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 1 @@ -64428,29 +64378,29 @@ local.get $1 local.get $2 i32.shl - local.tee $2 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $1 - i32.const 0 local.get $2 + i32.const 0 + local.get $1 call $~lib/memory/memory.fill local.get $0 - local.get $1 + local.get $2 i32.store - local.get $1 + local.get $2 if local.get $0 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $1 + local.get $2 i32.store offset=4 local.get $0 - local.get $2 + local.get $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 @@ -64918,90 +64868,89 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $4 i32.const 0 i32.store local.get $0 - local.tee $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $4 - local.get $5 + local.set $3 + local.get $4 i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $4 i32.store + local.get $4 local.get $0 - local.get $3 i32.load local.tee $5 i32.store local.get $5 if - local.get $0 + local.get $4 local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $4 local.get $0 - local.get $3 i32.load offset=4 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $4 + local.get $3 i32.add - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select else local.get $1 - local.get $4 + local.get $3 local.get $1 - local.get $4 + local.get $3 i32.lt_s select end - local.tee $1 + local.tee $0 i32.const 2 i32.shl i32.add i32.store offset=4 - local.get $0 + local.get $4 local.get $2 i32.const 0 i32.lt_s if (result i32) local.get $2 - local.get $4 + local.get $3 i32.add - local.tee $2 + local.tee $1 i32.const 0 - local.get $2 + local.get $1 i32.const 0 i32.gt_s select else local.get $2 - local.get $4 + local.get $3 local.get $2 - local.get $4 + local.get $3 i32.lt_s select end - local.tee $2 - local.get $1 + local.tee $1 + local.get $0 + local.get $0 local.get $1 - local.get $2 i32.lt_s select - local.get $1 + local.get $0 i32.sub i32.const 2 i32.shl @@ -65010,7 +64959,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $4 ) (func $~lib/typedarray/Float64Array#subarray (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -65032,90 +64981,89 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $4 i32.const 0 i32.store local.get $0 - local.tee $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $4 - local.get $5 + local.set $3 + local.get $4 i32.const 12 i32.const 13 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $4 i32.store + local.get $4 local.get $0 - local.get $3 i32.load local.tee $5 i32.store local.get $5 if - local.get $0 + local.get $4 local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $4 local.get $0 - local.get $3 i32.load offset=4 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $4 + local.get $3 i32.add - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select else local.get $1 - local.get $4 + local.get $3 local.get $1 - local.get $4 + local.get $3 i32.lt_s select end - local.tee $1 + local.tee $0 i32.const 3 i32.shl i32.add i32.store offset=4 - local.get $0 + local.get $4 local.get $2 i32.const 0 i32.lt_s if (result i32) local.get $2 - local.get $4 + local.get $3 i32.add - local.tee $2 + local.tee $1 i32.const 0 - local.get $2 + local.get $1 i32.const 0 i32.gt_s select else local.get $2 - local.get $4 + local.get $3 local.get $2 - local.get $4 + local.get $3 i32.lt_s select end - local.tee $2 - local.get $1 + local.tee $1 + local.get $0 + local.get $0 local.get $1 - local.get $2 i32.lt_s select - local.get $1 + local.get $0 i32.sub i32.const 3 i32.shl @@ -65124,7 +65072,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $4 ) (func $~lib/typedarray/Float64Array#sort@varargs (param $0 i32) (result i32) (local $1 i32) @@ -65194,54 +65142,54 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $5 i32.const 0 i32.store local.get $0 local.get $1 i32.shl - local.tee $5 - local.set $1 - local.get $5 + local.tee $4 + local.set $6 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.set $4 + local.set $1 local.get $3 if - local.get $4 - local.get $3 local.get $1 + local.get $3 + local.get $6 call $~lib/memory/memory.copy end - local.get $6 - local.get $4 + local.get $5 + local.get $1 i32.store i32.const 16 local.get $2 call $~lib/rt/itcms/__new - local.tee $1 - local.get $4 + local.tee $2 + local.get $1 i32.store - local.get $4 + local.get $1 if + local.get $2 local.get $1 - local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $2 local.get $1 - local.get $4 i32.store offset=4 - local.get $1 - local.get $5 + local.get $2 + local.get $4 i32.store offset=8 - local.get $1 + local.get $2 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 ) (func $~lib/typedarray/Int8Array#subarray (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -65263,93 +65211,92 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $4 i32.const 0 i32.store local.get $0 - local.tee $3 i32.load offset=8 - local.set $4 - local.get $5 + local.set $3 + local.get $4 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $4 i32.store + local.get $4 local.get $0 - local.get $3 i32.load local.tee $5 i32.store local.get $5 if - local.get $0 + local.get $4 local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $4 local.get $0 + i32.load offset=4 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $4 + local.get $3 i32.add - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select else local.get $1 - local.get $4 + local.get $3 local.get $1 - local.get $4 + local.get $3 i32.lt_s select end - local.tee $1 - local.get $3 - i32.load offset=4 + local.tee $0 i32.add i32.store offset=4 - local.get $0 + local.get $4 local.get $2 i32.const 0 i32.lt_s if (result i32) local.get $2 - local.get $4 + local.get $3 i32.add - local.tee $2 + local.tee $1 i32.const 0 - local.get $2 + local.get $1 i32.const 0 i32.gt_s select else local.get $2 - local.get $4 + local.get $3 local.get $2 - local.get $4 + local.get $3 i32.lt_s select end - local.tee $2 - local.get $1 + local.tee $1 + local.get $0 + local.get $0 local.get $1 - local.get $2 i32.lt_s select - local.get $1 + local.get $0 i32.sub i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $4 ) (func $~lib/typedarray/Int32Array#slice (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -65428,11 +65375,11 @@ i32.const 0 i32.gt_s select - local.tee $3 - call $~lib/typedarray/Int32Array#constructor local.tee $2 + call $~lib/typedarray/Int32Array#constructor + local.tee $3 i32.store - local.get $2 + local.get $3 i32.load offset=4 local.get $0 i32.load offset=4 @@ -65440,7 +65387,7 @@ i32.const 2 i32.shl i32.add - local.get $3 + local.get $2 i32.const 2 i32.shl call $~lib/memory/memory.copy @@ -65448,7 +65395,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 ) (func $~lib/typedarray/Uint8Array#subarray (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -65474,74 +65421,73 @@ i32.const 0 i32.store local.get $0 - local.tee $2 i32.load offset=8 - local.set $4 + local.set $2 local.get $3 i32.const 12 i32.const 4 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store + local.get $3 local.get $0 - local.get $2 i32.load - local.tee $3 + local.tee $4 i32.store - local.get $3 + local.get $4 if - local.get $0 local.get $3 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 + local.get $3 i32.const 4 - local.get $4 - local.get $4 + local.get $2 + local.get $2 i32.const 4 i32.gt_s select - local.tee $3 - local.get $2 + local.tee $4 + local.get $0 i32.load offset=4 i32.add i32.store offset=4 - local.get $0 + local.get $3 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $4 + local.get $2 i32.add - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select else local.get $1 - local.get $4 + local.get $2 local.get $1 - local.get $4 + local.get $2 i32.lt_s select end - local.tee $1 - local.get $3 - local.get $1 - local.get $3 + local.tee $0 + local.get $4 + local.get $0 + local.get $4 i32.gt_s select - local.get $3 + local.get $4 i32.sub i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $3 ) (func $~lib/typedarray/Uint8ClampedArray#subarray (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -65567,74 +65513,73 @@ i32.const 0 i32.store local.get $0 - local.tee $2 i32.load offset=8 - local.set $4 + local.set $2 local.get $3 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store + local.get $3 local.get $0 - local.get $2 i32.load - local.tee $3 + local.tee $4 i32.store - local.get $3 + local.get $4 if - local.get $0 local.get $3 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 + local.get $3 i32.const 4 - local.get $4 - local.get $4 + local.get $2 + local.get $2 i32.const 4 i32.gt_s select - local.tee $3 - local.get $2 + local.tee $4 + local.get $0 i32.load offset=4 i32.add i32.store offset=4 - local.get $0 + local.get $3 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $4 + local.get $2 i32.add - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select else local.get $1 - local.get $4 + local.get $2 local.get $1 - local.get $4 + local.get $2 i32.lt_s select end - local.tee $1 - local.get $3 - local.get $1 - local.get $3 + local.tee $0 + local.get $4 + local.get $0 + local.get $4 i32.gt_s select - local.get $3 + local.get $4 i32.sub i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $3 ) (func $~lib/typedarray/Int16Array#subarray (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -65656,53 +65601,52 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i32.const 0 i32.store local.get $0 - local.tee $2 i32.load offset=8 i32.const 1 i32.shr_u - local.set $3 - local.get $4 + local.set $2 + local.get $3 i32.const 12 i32.const 6 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store + local.get $3 local.get $0 - local.get $2 i32.load local.tee $4 i32.store local.get $4 if - local.get $0 + local.get $3 local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $3 local.get $0 - local.get $2 i32.load offset=4 i32.const 4 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.const 4 i32.gt_u select - local.tee $2 + local.tee $0 i32.const 1 i32.shl i32.add i32.store offset=4 - local.get $0 + local.get $3 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $3 + local.get $2 i32.add local.tee $1 i32.const 0 @@ -65712,19 +65656,19 @@ select else local.get $1 - local.get $3 + local.get $2 local.get $1 - local.get $3 + local.get $2 i32.lt_s select end local.tee $1 - local.get $2 + local.get $0 + local.get $0 local.get $1 - local.get $2 - i32.gt_s + i32.lt_s select - local.get $2 + local.get $0 i32.sub i32.const 1 i32.shl @@ -65733,7 +65677,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $3 ) (func $~lib/typedarray/Uint16Array#subarray (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -65755,53 +65699,52 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i32.const 0 i32.store local.get $0 - local.tee $2 i32.load offset=8 i32.const 1 i32.shr_u - local.set $3 - local.get $4 + local.set $2 + local.get $3 i32.const 12 i32.const 7 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store + local.get $3 local.get $0 - local.get $2 i32.load local.tee $4 i32.store local.get $4 if - local.get $0 + local.get $3 local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $3 local.get $0 - local.get $2 i32.load offset=4 i32.const 4 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.const 4 i32.gt_u select - local.tee $2 + local.tee $0 i32.const 1 i32.shl i32.add i32.store offset=4 - local.get $0 + local.get $3 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $3 + local.get $2 i32.add local.tee $1 i32.const 0 @@ -65811,19 +65754,19 @@ select else local.get $1 - local.get $3 + local.get $2 local.get $1 - local.get $3 + local.get $2 i32.lt_s select end local.tee $1 - local.get $2 + local.get $0 + local.get $0 local.get $1 - local.get $2 - i32.gt_s + i32.lt_s select - local.get $2 + local.get $0 i32.sub i32.const 1 i32.shl @@ -65832,7 +65775,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $3 ) (func $~lib/typedarray/Uint32Array#subarray (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -65854,53 +65797,52 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i32.const 0 i32.store local.get $0 - local.tee $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $3 - local.get $4 + local.set $2 + local.get $3 i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store + local.get $3 local.get $0 - local.get $2 i32.load local.tee $4 i32.store local.get $4 if - local.get $0 + local.get $3 local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $3 local.get $0 - local.get $2 i32.load offset=4 i32.const 4 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.const 4 i32.gt_u select - local.tee $2 + local.tee $0 i32.const 2 i32.shl i32.add i32.store offset=4 - local.get $0 + local.get $3 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $3 + local.get $2 i32.add local.tee $1 i32.const 0 @@ -65910,19 +65852,19 @@ select else local.get $1 - local.get $3 + local.get $2 local.get $1 - local.get $3 + local.get $2 i32.lt_s select end local.tee $1 - local.get $2 + local.get $0 + local.get $0 local.get $1 - local.get $2 - i32.gt_s + i32.lt_s select - local.get $2 + local.get $0 i32.sub i32.const 2 i32.shl @@ -65931,7 +65873,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $3 ) (func $~lib/typedarray/Int64Array#subarray (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -65953,53 +65895,52 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i32.const 0 i32.store local.get $0 - local.tee $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $3 - local.get $4 + local.set $2 + local.get $3 i32.const 12 i32.const 10 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store + local.get $3 local.get $0 - local.get $2 i32.load local.tee $4 i32.store local.get $4 if - local.get $0 + local.get $3 local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $3 local.get $0 - local.get $2 i32.load offset=4 i32.const 4 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.const 4 i32.gt_u select - local.tee $2 + local.tee $0 i32.const 3 i32.shl i32.add i32.store offset=4 - local.get $0 + local.get $3 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $3 + local.get $2 i32.add local.tee $1 i32.const 0 @@ -66009,19 +65950,19 @@ select else local.get $1 - local.get $3 + local.get $2 local.get $1 - local.get $3 + local.get $2 i32.lt_s select end local.tee $1 - local.get $2 + local.get $0 + local.get $0 local.get $1 - local.get $2 - i32.gt_s + i32.lt_s select - local.get $2 + local.get $0 i32.sub i32.const 3 i32.shl @@ -66030,7 +65971,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $3 ) (func $~lib/typedarray/Uint64Array#subarray (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -66052,53 +65993,52 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i32.const 0 i32.store local.get $0 - local.tee $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $3 - local.get $4 + local.set $2 + local.get $3 i32.const 12 i32.const 11 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store + local.get $3 local.get $0 - local.get $2 i32.load local.tee $4 i32.store local.get $4 if - local.get $0 + local.get $3 local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $3 local.get $0 - local.get $2 i32.load offset=4 i32.const 4 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.const 4 i32.gt_u select - local.tee $2 + local.tee $0 i32.const 3 i32.shl i32.add i32.store offset=4 - local.get $0 + local.get $3 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $3 + local.get $2 i32.add local.tee $1 i32.const 0 @@ -66108,19 +66048,19 @@ select else local.get $1 - local.get $3 + local.get $2 local.get $1 - local.get $3 + local.get $2 i32.lt_s select end local.tee $1 - local.get $2 + local.get $0 + local.get $0 local.get $1 - local.get $2 - i32.gt_s + i32.lt_s select - local.get $2 + local.get $0 i32.sub i32.const 3 i32.shl @@ -66129,7 +66069,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $3 ) (func $~lib/typedarray/Float32Array#subarray (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -66151,53 +66091,52 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i32.const 0 i32.store local.get $0 - local.tee $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $3 - local.get $4 + local.set $2 + local.get $3 i32.const 12 i32.const 12 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store + local.get $3 local.get $0 - local.get $2 i32.load local.tee $4 i32.store local.get $4 if - local.get $0 + local.get $3 local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $3 local.get $0 - local.get $2 i32.load offset=4 i32.const 4 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.const 4 i32.gt_u select - local.tee $2 + local.tee $0 i32.const 2 i32.shl i32.add i32.store offset=4 - local.get $0 + local.get $3 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $3 + local.get $2 i32.add local.tee $1 i32.const 0 @@ -66207,19 +66146,19 @@ select else local.get $1 - local.get $3 + local.get $2 local.get $1 - local.get $3 + local.get $2 i32.lt_s select end local.tee $1 - local.get $2 + local.get $0 + local.get $0 local.get $1 - local.get $2 - i32.gt_s + i32.lt_s select - local.get $2 + local.get $0 i32.sub i32.const 2 i32.shl @@ -66228,7 +66167,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $3 ) (func $~lib/util/number/itoa32 (param $0 i32) (result i32) (local $1 i32) @@ -66270,71 +66209,71 @@ local.get $0 i32.const 31 i32.shr_u - local.tee $1 + local.tee $0 select + local.tee $1 local.tee $2 - local.tee $0 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.get $1 + local.get $0 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store - local.get $0 - local.get $2 local.get $3 - call $~lib/util/number/utoa32_dec_lut local.get $1 + local.get $2 + call $~lib/util/number/utoa32_dec_lut + local.get $0 if - local.get $0 + local.get $3 i32.const 45 i32.store16 end @@ -66342,7 +66281,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $3 ) (func $~lib/string/String#substring (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -66389,26 +66328,26 @@ local.get $2 i32.lt_s select - local.tee $1 - local.get $1 + local.tee $4 local.get $3 - i32.gt_s + local.get $4 + i32.lt_s select i32.const 1 i32.shl - local.set $4 + local.set $1 local.get $3 - local.get $1 - local.get $1 + local.get $4 local.get $3 - i32.lt_s + local.get $4 + i32.gt_s select i32.const 1 i32.shl local.tee $3 - local.get $4 + local.get $1 i32.sub - local.tee $1 + local.tee $4 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -66424,7 +66363,7 @@ i32.shl local.get $3 i32.eq - local.get $4 + local.get $1 select if global.get $~lib/memory/__stack_pointer @@ -66435,16 +66374,16 @@ return end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $4 i32.const 1 call $~lib/rt/itcms/__new local.tee $2 i32.store local.get $2 local.get $0 - local.get $4 - i32.add local.get $1 + i32.add + local.get $4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 @@ -66485,68 +66424,67 @@ end global.get $~lib/memory/__stack_pointer local.get $0 - local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.tee $0 + local.tee $2 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 local.get $1 local.get $0 + local.get $2 call $~lib/util/number/utoa32_dec_lut global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 ) (func $~lib/util/number/dtoa (param $0 f64) (result i32) (local $1 i32) @@ -66755,22 +66693,22 @@ i32.const 0 i32.gt_s select - local.tee $3 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 local.get $0 local.get $1 i32.add - local.get $3 + local.get $2 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) global.get $~lib/rt/itcms/white diff --git a/tests/compiler/std/uri.optimized.wat b/tests/compiler/std/uri.optimized.wat index 9a9f9ca1c3..454060e11b 100644 --- a/tests/compiler/std/uri.optimized.wat +++ b/tests/compiler/std/uri.optimized.wat @@ -283,19 +283,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -320,9 +320,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -330,17 +330,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -628,10 +628,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -643,15 +643,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -681,7 +681,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -994,7 +994,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 20748 i32.ge_u if @@ -1004,20 +1004,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1030,8 +1030,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1211,12 +1210,12 @@ if block $__inlined_func$~lib/rt/itcms/interrupt i32.const 2048 - local.set $3 + local.set $2 loop $do-loop|0 - local.get $3 + local.get $2 call $~lib/rt/itcms/step i32.sub - local.set $3 + local.set $2 global.get $~lib/rt/itcms/state i32.eqz if @@ -1232,14 +1231,14 @@ global.set $~lib/rt/itcms/threshold br $__inlined_func$~lib/rt/itcms/interrupt end - local.get $3 + local.get $2 i32.const 0 i32.gt_s br_if $do-loop|0 end global.get $~lib/rt/itcms/total - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 @@ -1253,15 +1252,15 @@ local.get $0 i32.const 16 i32.add - local.set $3 + local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $6 - local.get $3 + local.tee $3 + local.get $2 i32.const 1073741820 i32.gt_u if @@ -1272,13 +1271,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $3 + local.get $2 i32.const 19 i32.add i32.const -16 @@ -1286,34 +1285,34 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size - local.tee $5 - local.get $3 + local.tee $2 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $6 + local.get $3 i32.load offset=1568 - local.get $5 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1327,16 +1326,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $5 local.get $2 local.get $5 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1344,16 +1343,16 @@ unreachable end end - local.get $6 - local.get $5 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1370,7 +1369,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1380,13 +1379,13 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1402,9 +1401,9 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if @@ -1412,23 +1411,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1492,19 +1491,19 @@ local.get $2 i32.const 20 i32.add - local.tee $3 - local.set $2 + local.tee $2 + local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 i32.eqz br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 local.get $0 - local.get $2 + local.get $1 i32.add - local.tee $1 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1513,18 +1512,18 @@ i32.const 2 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=1 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=2 - local.get $1 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1533,10 +1532,10 @@ i32.const 6 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=3 - local.get $1 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1545,97 +1544,97 @@ i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 - local.get $2 + local.get $1 i32.sub i32.const 3 i32.and - local.tee $1 + local.tee $3 i32.add - local.tee $4 + local.tee $1 i32.const 0 i32.store - local.get $4 - local.get $0 local.get $1 + local.get $0 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=4 - local.get $4 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=12 - local.get $4 + local.get $1 i32.const 0 i32.store offset=16 - local.get $4 + local.get $1 i32.const 0 i32.store offset=20 - local.get $4 + local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 i32.store - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.const 4 i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1667,7 +1666,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/util/memory/memcpy (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -1682,17 +1681,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -1838,19 +1837,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -1865,7 +1864,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -1876,10 +1875,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -1887,10 +1886,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -1901,7 +1900,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -1956,7 +1955,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -1967,10 +1966,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -1978,10 +1977,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -1992,7 +1991,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2018,17 +2017,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2043,7 +2042,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -2054,10 +2053,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2065,10 +2064,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -2079,7 +2078,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2116,131 +2115,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u - i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 + i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -2257,59 +2260,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -2576,7 +2583,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $2 + local.tee $3 i32.load i32.const -4 i32.and @@ -2585,28 +2592,28 @@ local.get $1 i32.ge_u if - local.get $2 + local.get $3 local.get $1 i32.store offset=16 local.get $0 return end local.get $1 - local.get $2 + local.get $3 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.load offset=16 - local.tee $2 + local.tee $0 + local.get $0 local.get $1 - local.get $2 - i32.lt_u + i32.gt_u select call $~lib/memory/memory.copy - local.get $3 + local.get $2 ) (func $~lib/util/uri/encode (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -2625,21 +2632,21 @@ local.get $1 i32.const 1 i32.shl - local.tee $9 + local.tee $8 i32.const 1 call $~lib/rt/itcms/__new local.set $3 loop $while-continue|0 local.get $1 - local.get $7 + local.get $6 i32.gt_u if block $while-break|0 - local.get $7 + local.get $6 local.set $5 loop $do-loop|1 block $do-break|1 - local.get $7 + local.get $6 i32.const 1 i32.shl local.get $0 @@ -2659,56 +2666,57 @@ i32.load8_u br_if $do-break|1 local.get $1 - local.get $7 + local.get $6 i32.const 1 i32.add - local.tee $7 + local.tee $6 i32.gt_u br_if $do-loop|1 end end local.get $5 - local.get $7 + local.get $6 i32.lt_u if + local.get $8 local.get $9 local.get $6 - local.get $7 local.get $5 i32.sub i32.const 1 i32.shl - local.tee $8 + local.tee $7 i32.add i32.lt_u if local.get $3 - local.get $6 - local.get $8 + local.get $7 + local.get $9 i32.add - local.tee $9 + local.tee $8 call $~lib/rt/itcms/__renew local.set $3 end local.get $3 - local.get $6 + local.get $9 i32.add local.get $5 i32.const 1 i32.shl local.get $0 i32.add - local.get $8 + local.get $7 call $~lib/memory/memory.copy - local.get $6 - local.get $8 + local.get $7 + local.get $9 i32.add - local.set $6 + local.set $9 local.get $1 - local.get $7 + local.get $6 i32.le_u br_if $while-break|0 end + local.get $8 local.get $9 i32.const 6 i32.const 24 @@ -2736,7 +2744,7 @@ i32.le_u if (result i32) local.get $1 - local.get $7 + local.get $6 i32.le_u if i32.const 1584 @@ -2746,10 +2754,10 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $6 i32.const 1 i32.add - local.tee $7 + local.tee $6 i32.const 1 i32.shl local.get $0 @@ -2790,22 +2798,20 @@ i32.const 128 i32.lt_u select - local.get $6 - local.tee $5 i32.add - local.tee $6 + local.tee $5 i32.lt_u if local.get $3 - local.get $6 + local.get $5 i32.const 1 i32.shl - local.get $6 + local.get $5 local.get $1 i32.const 1 i32.gt_u select - local.tee $9 + local.tee $8 call $~lib/rt/itcms/__renew local.set $3 end @@ -2814,12 +2820,12 @@ i32.lt_u if (result i32) local.get $3 - local.get $5 + local.get $9 i32.add - local.tee $6 + local.tee $5 i32.const 37 i32.store16 - local.get $6 + local.get $5 local.get $4 i32.const 4 i32.shr_u @@ -2838,7 +2844,7 @@ i32.shl i32.or i32.store offset=2 - local.get $5 + local.get $9 i32.const 6 i32.add else @@ -2848,18 +2854,18 @@ i32.lt_u if (result i32) local.get $3 - local.get $5 + local.get $9 i32.add - local.tee $6 + local.tee $5 i32.const 37 i32.store16 - local.get $6 + local.get $5 local.get $4 i32.const 6 i32.shr_u i32.const 192 i32.or - local.tee $8 + local.tee $5 i32.const 4 i32.shr_u i32.const 15 @@ -2867,7 +2873,7 @@ i32.const 1676 i32.add i32.load8_u - local.get $8 + local.get $5 i32.const 15 i32.and i32.const 1676 @@ -2877,7 +2883,7 @@ i32.shl i32.or i32.store offset=2 - local.get $5 + local.get $9 i32.const 6 i32.add else @@ -2887,18 +2893,18 @@ i32.lt_u if local.get $3 - local.get $5 + local.get $9 i32.add - local.tee $6 + local.tee $5 i32.const 37 i32.store16 - local.get $6 + local.get $5 local.get $4 i32.const 12 i32.shr_u i32.const 224 i32.or - local.tee $8 + local.tee $5 i32.const 4 i32.shr_u i32.const 15 @@ -2906,7 +2912,7 @@ i32.const 1676 i32.add i32.load8_u - local.get $8 + local.get $5 i32.const 15 i32.and i32.const 1676 @@ -2918,18 +2924,18 @@ i32.store offset=2 else local.get $3 - local.get $5 + local.get $9 i32.add - local.tee $6 + local.tee $5 i32.const 37 i32.store16 - local.get $6 + local.get $5 local.get $4 i32.const 18 i32.shr_u i32.const 240 i32.or - local.tee $8 + local.tee $5 i32.const 4 i32.shr_u i32.const 15 @@ -2937,7 +2943,7 @@ i32.const 1676 i32.add i32.load8_u - local.get $8 + local.get $5 i32.const 15 i32.and i32.const 1676 @@ -2948,15 +2954,15 @@ i32.or i32.store offset=2 local.get $3 - local.get $5 + local.get $9 i32.const 6 i32.add - local.tee $5 + local.tee $9 i32.add - local.tee $6 + local.tee $5 i32.const 37 i32.store16 - local.get $6 + local.get $5 local.get $4 i32.const 12 i32.shr_u @@ -2964,13 +2970,13 @@ i32.and i32.const 128 i32.or - local.tee $8 + local.tee $5 i32.const 4 i32.shr_u i32.const 1676 i32.add i32.load8_u - local.get $8 + local.get $5 i32.const 15 i32.and i32.const 1676 @@ -2981,10 +2987,10 @@ i32.or i32.store offset=2 end - local.get $5 + local.get $9 i32.const 6 i32.add - local.tee $6 + local.tee $9 i32.add local.tee $5 i32.const 37 @@ -2997,13 +3003,13 @@ i32.and i32.const 128 i32.or - local.tee $8 + local.tee $5 i32.const 4 i32.shr_u i32.const 1676 i32.add i32.load8_u - local.get $8 + local.get $5 i32.const 15 i32.and i32.const 1676 @@ -3013,11 +3019,11 @@ i32.shl i32.or i32.store offset=2 - local.get $6 + local.get $9 i32.const 6 i32.add end - local.tee $6 + local.tee $9 i32.add local.tee $5 i32.const 37 @@ -3044,25 +3050,25 @@ i32.shl i32.or i32.store offset=2 - local.get $6 + local.get $9 i32.const 6 i32.add end - local.set $6 - local.get $7 + local.set $9 + local.get $6 i32.const 1 i32.add - local.set $7 + local.set $6 br $while-continue|0 end end end - local.get $6 + local.get $8 local.get $9 - i32.lt_u + i32.gt_u if (result i32) local.get $3 - local.get $6 + local.get $9 call $~lib/rt/itcms/__renew else local.get $3 @@ -3158,14 +3164,14 @@ if local.get $3 i32.load16_u - local.tee $2 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $2 i32.ne if - local.get $2 local.get $4 + local.get $2 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -3403,7 +3409,7 @@ i32.const 56 i32.lt_u select - local.tee $9 + local.tee $4 i32.const 17 i32.mul i32.const 2 @@ -3411,23 +3417,23 @@ i32.const 1 i32.sub i32.shl - local.set $10 + local.set $9 i32.const 128 - local.get $9 + local.get $4 i32.shr_u i32.const 1 i32.sub i32.const 0 - local.get $9 + local.get $4 select local.get $5 i32.and local.set $5 loop $while-continue|2 - local.get $9 + local.get $4 i32.const 1 i32.sub - local.tee $9 + local.tee $4 if block $while-break|2 local.get $1 @@ -3459,16 +3465,16 @@ i32.add local.tee $7 i32.load16_u - local.set $4 + local.set $10 local.get $7 i32.load16_u offset=2 local.set $7 - local.get $4 + local.get $10 i32.const 48 i32.sub i32.const 10 i32.lt_u - local.get $4 + local.get $10 i32.const 32 i32.or i32.const 97 @@ -3501,7 +3507,7 @@ i32.rem_u i32.const 9 i32.sub - local.get $4 + local.get $10 i32.const 32 i32.or i32.const 39 @@ -3559,11 +3565,11 @@ i32.const 55296 i32.ge_u i32.and - local.get $10 + local.get $9 i32.const -1 i32.eq local.get $5 - local.get $10 + local.get $9 i32.lt_u i32.or local.get $5 @@ -5266,19 +5272,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -5288,22 +5294,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 20748 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -5317,9 +5323,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -5329,23 +5335,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -5353,7 +5359,7 @@ else i32.const 4336 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1376 @@ -5363,7 +5369,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 4340 @@ -5378,28 +5384,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/super-inline.optimized.wat b/tests/compiler/super-inline.optimized.wat index 91c91efb4d..14a2fd512b 100644 --- a/tests/compiler/super-inline.optimized.wat +++ b/tests/compiler/super-inline.optimized.wat @@ -42,9 +42,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -52,9 +51,8 @@ local.tee $0 if local.get $0 - local.tee $1 if - local.get $1 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -184,19 +182,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -221,9 +219,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -231,17 +229,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -529,10 +527,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -544,15 +542,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -582,7 +580,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -895,7 +893,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17868 i32.ge_u if @@ -905,20 +903,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -931,8 +929,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -968,9 +965,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1074,17 +1071,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size - local.tee $2 + local.tee $1 i32.const 4 - local.get $3 - i32.load offset=1568 local.get $2 + i32.load offset=1568 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1097,16 +1094,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $1 - local.get $2 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1114,15 +1111,15 @@ unreachable end end - local.get $3 local.get $2 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1149,22 +1146,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $2 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $2 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1173,19 +1170,19 @@ local.get $1 i32.const 32 i32.add - local.tee $2 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $2 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $2 + local.get $4 i32.const -2 i32.and i32.store @@ -1430,19 +1427,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1452,22 +1449,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17868 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1481,9 +1478,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1493,23 +1490,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1517,7 +1514,7 @@ else i32.const 1440 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1527,7 +1524,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1444 @@ -1542,28 +1539,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/templateliteral.optimized.wat b/tests/compiler/templateliteral.optimized.wat index 70424b0738..239a3babf8 100644 --- a/tests/compiler/templateliteral.optimized.wat +++ b/tests/compiler/templateliteral.optimized.wat @@ -226,14 +226,14 @@ if local.get $3 i32.load16_u - local.tee $2 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $2 i32.ne if - local.get $2 local.get $4 + local.get $2 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -329,7 +329,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -352,7 +352,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -362,15 +362,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -411,20 +411,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -519,19 +519,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -556,9 +556,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -566,17 +566,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -864,10 +864,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -879,15 +879,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -917,7 +917,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1230,7 +1230,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 22116 i32.ge_u if @@ -1240,20 +1240,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1266,8 +1266,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1447,12 +1446,12 @@ if block $__inlined_func$~lib/rt/itcms/interrupt i32.const 2048 - local.set $3 + local.set $2 loop $do-loop|0 - local.get $3 + local.get $2 call $~lib/rt/itcms/step i32.sub - local.set $3 + local.set $2 global.get $~lib/rt/itcms/state i32.eqz if @@ -1468,14 +1467,14 @@ global.set $~lib/rt/itcms/threshold br $__inlined_func$~lib/rt/itcms/interrupt end - local.get $3 + local.get $2 i32.const 0 i32.gt_s br_if $do-loop|0 end global.get $~lib/rt/itcms/total - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 @@ -1489,15 +1488,15 @@ local.get $0 i32.const 16 i32.add - local.set $3 + local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $6 - local.get $3 + local.tee $3 + local.get $2 i32.const 1073741820 i32.gt_u if @@ -1508,13 +1507,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $3 + local.get $2 i32.const 19 i32.add i32.const -16 @@ -1522,34 +1521,34 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size - local.tee $5 - local.get $3 + local.tee $2 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $6 + local.get $3 i32.load offset=1568 - local.get $5 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -1563,16 +1562,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $5 local.get $2 local.get $5 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1580,16 +1579,16 @@ unreachable end end - local.get $6 - local.get $5 + local.get $3 + local.get $2 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1606,7 +1605,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1616,13 +1615,13 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1638,9 +1637,9 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if @@ -1648,23 +1647,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $6 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1728,19 +1727,19 @@ local.get $2 i32.const 20 i32.add - local.tee $3 - local.set $2 + local.tee $2 + local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 i32.eqz br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 local.get $0 - local.get $2 + local.get $1 i32.add - local.tee $1 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1749,18 +1748,18 @@ i32.const 2 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=1 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=2 - local.get $1 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1769,10 +1768,10 @@ i32.const 6 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=3 - local.get $1 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1781,97 +1780,97 @@ i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $1 i32.const 0 - local.get $2 + local.get $1 i32.sub i32.const 3 i32.and - local.tee $1 + local.tee $3 i32.add - local.tee $4 + local.tee $1 i32.const 0 i32.store - local.get $4 - local.get $0 local.get $1 + local.get $0 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=4 - local.get $4 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $4 + local.get $1 i32.const 0 i32.store offset=12 - local.get $4 + local.get $1 i32.const 0 i32.store offset=16 - local.get $4 + local.get $1 i32.const 0 i32.store offset=20 - local.get $4 + local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 i32.store - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.const 4 i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1903,7 +1902,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/util/memory/memcpy (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -1918,17 +1917,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2074,19 +2073,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2101,7 +2100,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -2112,10 +2111,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2123,10 +2122,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -2137,7 +2136,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -2192,7 +2191,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -2203,10 +2202,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2214,10 +2213,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -2228,7 +2227,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -2254,17 +2253,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -2279,7 +2278,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -2290,10 +2289,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2301,10 +2300,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -2315,7 +2314,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2352,131 +2351,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -2493,59 +2496,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -2835,7 +2842,7 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.set $3 + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -2859,7 +2866,7 @@ i32.const 0 i32.store offset=8 block $__inlined_func$~lib/util/string/joinStringArray - local.get $3 + local.get $4 i32.const 1 i32.sub local.tee $5 @@ -2871,19 +2878,19 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1184 - local.set $3 + local.set $2 br $__inlined_func$~lib/util/string/joinStringArray end local.get $5 i32.eqz if global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 local.get $0 i32.load local.tee $0 i32.store - local.get $3 + local.get $2 i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -2891,16 +2898,16 @@ i32.const 1184 local.get $0 select - local.set $3 + local.set $2 br $__inlined_func$~lib/util/string/joinStringArray end loop $for-loop|0 local.get $3 local.get $4 - i32.gt_s + i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 2 i32.shl local.get $0 @@ -2920,10 +2927,10 @@ i32.add local.set $2 end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|0 end end @@ -2933,7 +2940,7 @@ i32.load i32.const 1 i32.shr_u - local.tee $6 + local.tee $4 i32.mul local.get $2 i32.add @@ -2941,68 +2948,68 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 i32.store offset=8 i32.const 0 - local.set $4 + local.set $3 loop $for-loop|1 - local.get $4 + local.get $3 local.get $5 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 2 i32.shl local.get $0 i32.add i32.load - local.tee $2 + local.tee $6 i32.store offset=4 - local.get $2 + local.get $6 if local.get $1 i32.const 1 i32.shl - local.get $3 - i32.add - local.get $2 local.get $2 + i32.add + local.get $6 + local.get $6 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $6 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $1 - local.get $2 + local.get $6 i32.add local.set $1 end - local.get $6 + local.get $4 if local.get $1 i32.const 1 i32.shl - local.get $3 + local.get $2 i32.add i32.const 1184 - local.get $6 + local.get $4 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $1 - local.get $6 + local.get $4 i32.add local.set $1 end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|1 end end @@ -3020,7 +3027,7 @@ local.get $1 i32.const 1 i32.shl - local.get $3 + local.get $2 i32.add local.get $0 local.get $0 @@ -3038,7 +3045,7 @@ i32.add global.set $~lib/memory/__stack_pointer end - local.get $3 + local.get $2 ) (func $~lib/util/number/utoa32_dec_lut (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -3518,7 +3525,7 @@ i32.shl i32.const 3918 i32.add - local.tee $8 + local.tee $2 i32.load16_u local.set $5 loop $while-continue|3 @@ -3561,7 +3568,7 @@ br $while-continue|3 end end - local.get $8 + local.get $2 local.get $5 i32.store16 local.get $4 @@ -3641,7 +3648,7 @@ i32.shl i32.const 3918 i32.add - local.tee $8 + local.tee $2 i32.load16_u local.set $5 loop $while-continue|6 @@ -3684,7 +3691,7 @@ br $while-continue|6 end end - local.get $8 + local.get $2 local.get $5 i32.store16 local.get $4 @@ -3693,7 +3700,6 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) local.get $2 i32.eqz if @@ -3712,17 +3718,17 @@ local.get $1 local.get $2 i32.add - local.tee $4 + local.tee $3 i32.const 21 i32.le_s local.get $1 - local.get $4 + local.get $3 i32.le_s i32.and if (result i32) loop $for-loop|0 local.get $1 - local.get $4 + local.get $3 i32.lt_s if local.get $1 @@ -3739,26 +3745,26 @@ br $for-loop|0 end end - local.get $4 + local.get $3 i32.const 1 i32.shl local.get $0 i32.add i32.const 3145774 i32.store - local.get $4 + local.get $3 i32.const 2 i32.add else - local.get $4 + local.get $3 i32.const 21 i32.le_s - local.get $4 + local.get $3 i32.const 0 i32.gt_s i32.and if (result i32) - local.get $4 + local.get $3 i32.const 1 i32.shl local.get $0 @@ -3780,18 +3786,18 @@ i32.const 1 i32.add else - local.get $4 + local.get $3 i32.const 0 i32.le_s - local.get $4 + local.get $3 i32.const -6 i32.gt_s i32.and if (result i32) i32.const 2 - local.get $4 + local.get $3 i32.sub - local.tee $5 + local.tee $3 i32.const 1 i32.shl local.get $0 @@ -3808,7 +3814,7 @@ local.set $2 loop $for-loop|1 local.get $2 - local.get $5 + local.get $3 i32.lt_s if local.get $2 @@ -3826,7 +3832,7 @@ end end local.get $1 - local.get $5 + local.get $3 i32.add else local.get $1 @@ -3837,16 +3843,16 @@ i32.const 101 i32.store16 offset=2 local.get $0 - local.tee $3 + local.tee $1 i32.const 4 i32.add - local.get $4 + local.get $3 i32.const 1 i32.sub local.tee $0 i32.const 0 i32.lt_s - local.tee $2 + local.tee $3 if i32.const 0 local.get $0 @@ -3854,63 +3860,62 @@ local.set $0 end local.get $0 - local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $4 local.get $0 - local.get $1 + local.get $4 i32.const 1 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $3 + local.get $1 i32.const 45 i32.const 43 - local.get $2 + local.get $3 select i32.store16 offset=4 local.get $0 @@ -3936,20 +3941,19 @@ local.get $0 local.get $2 i32.add - local.tee $0 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $0 - local.tee $3 + local.get $2 i32.const 4 i32.add - local.get $4 + local.get $3 i32.const 1 i32.sub local.tee $0 i32.const 0 i32.lt_s - local.tee $5 + local.tee $3 if i32.const 0 local.get $0 @@ -3957,63 +3961,62 @@ local.set $0 end local.get $0 - local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 + local.set $5 local.get $0 - local.get $2 + local.get $5 i32.const 1 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $3 + local.get $2 i32.const 45 i32.const 43 - local.get $5 + local.get $3 select i32.store16 offset=4 local.get $0 @@ -4030,22 +4033,21 @@ (local $1 i64) (local $2 i32) (local $3 i64) - (local $4 i32) - (local $5 i32) + (local $4 i64) + (local $5 i64) (local $6 i64) - (local $7 i64) - (local $8 i64) + (local $7 i32) + (local $8 i32) (local $9 i32) (local $10 i64) (local $11 i64) (local $12 i64) (local $13 i64) (local $14 i64) - (local $15 i64) local.get $0 f64.const 0 f64.lt - local.tee $5 + local.tee $2 if (result f64) i32.const 3920 i32.const 45 @@ -4062,19 +4064,19 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $2 + local.tee $7 i32.const 1 - local.get $2 + local.get $7 select i32.const 1075 i32.sub - local.tee $9 + local.tee $8 i32.const 1 i32.sub local.get $1 i64.const 4503599627370495 i64.and - local.get $2 + local.get $7 i32.const 0 i32.ne i64.extend_i32_u @@ -4089,11 +4091,11 @@ local.tee $3 i64.clz i32.wrap_i64 - local.tee $4 + local.tee $7 i32.sub - local.set $2 + local.set $9 local.get $3 - local.get $4 + local.get $7 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -4103,25 +4105,25 @@ i64.eq i32.const 1 i32.add - local.tee $4 + local.tee $7 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $9 - local.get $4 + local.get $8 + local.get $7 i32.sub - local.get $2 + local.get $9 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $2 + local.get $9 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $9 + local.tee $7 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -4130,9 +4132,9 @@ f64.add local.tee $0 i32.trunc_f64_s - local.tee $2 + local.tee $8 local.get $0 - local.get $2 + local.get $8 f64.convert_i32_s f64.ne i32.add @@ -4140,18 +4142,18 @@ i32.shr_s i32.const 1 i32.add - local.tee $2 + local.tee $8 i32.const 3 i32.shl - local.tee $4 + local.tee $9 i32.sub global.set $~lib/util/number/_K - local.get $4 + local.get $9 i32.const 3976 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $2 + local.get $8 i32.const 1 i32.shl i32.const 4672 @@ -4165,81 +4167,81 @@ local.tee $1 i64.const 4294967295 i64.and - local.set $3 + local.set $10 local.get $1 i64.const 32 i64.shr_u - local.tee $10 + local.tee $11 global.get $~lib/util/number/_frc_pow - local.tee $13 + local.tee $4 i64.const 4294967295 i64.and + local.tee $12 local.tee $1 - local.tee $6 i64.mul - local.get $3 - local.get $6 + local.get $1 + local.get $10 i64.mul i64.const 32 i64.shr_u i64.add - local.set $6 + local.set $13 global.get $~lib/util/number/_frc_plus - local.tee $7 + local.tee $3 i64.const 4294967295 i64.and - local.set $11 - local.get $7 + local.set $1 + local.get $3 i64.const 32 i64.shr_u - local.tee $14 - local.get $1 + local.tee $5 + local.get $12 i64.mul local.get $1 - local.get $11 + local.get $12 i64.mul i64.const 32 i64.shr_u i64.add - local.set $7 + local.set $14 global.get $~lib/util/number/_frc_minus - local.tee $8 + local.tee $6 i64.const 4294967295 i64.and - local.set $12 - local.get $8 + local.set $3 + local.get $6 i64.const 32 i64.shr_u - local.tee $15 - local.get $1 + local.tee $6 + local.get $12 i64.mul - local.get $1 + local.get $3 local.get $12 i64.mul i64.const 32 i64.shr_u i64.add - local.set $8 - local.get $5 + local.set $12 + local.get $2 i32.const 1 i32.shl i32.const 3920 i32.add - local.get $10 - local.get $13 + local.get $11 + local.get $4 i64.const 32 i64.shr_u - local.tee $1 - local.tee $10 + local.tee $4 + local.tee $11 i64.mul - local.get $6 + local.get $13 i64.const 32 i64.shr_u i64.add - local.get $3 local.get $10 + local.get $11 i64.mul - local.get $6 + local.get $13 i64.const 4294967295 i64.and i64.add @@ -4248,17 +4250,17 @@ i64.const 32 i64.shr_u i64.add - local.get $1 - local.get $14 + local.get $4 + local.get $5 i64.mul - local.get $7 + local.get $14 i64.const 32 i64.shr_u i64.add local.get $1 - local.get $11 + local.get $4 i64.mul - local.get $7 + local.get $14 i64.const 4294967295 i64.and i64.add @@ -4269,24 +4271,24 @@ i64.add i64.const 1 i64.sub - local.tee $3 + local.tee $1 global.get $~lib/util/number/_exp_pow - local.get $9 + local.get $7 i32.add i32.const -64 i32.sub - local.get $3 local.get $1 - local.get $15 + local.get $4 + local.get $6 i64.mul - local.get $8 + local.get $12 i64.const 32 i64.shr_u i64.add - local.get $1 - local.get $12 + local.get $3 + local.get $4 i64.mul - local.get $8 + local.get $12 i64.const 4294967295 i64.and i64.add @@ -4298,13 +4300,13 @@ i64.const 1 i64.add i64.sub - local.get $5 + local.get $2 call $~lib/util/number/genDigits - local.get $5 + local.get $2 i32.sub global.get $~lib/util/number/_K call $~lib/util/number/prettify - local.get $5 + local.get $2 i32.add ) (func $~lib/number/F64#toString (param $0 f64) (result i32) @@ -5021,23 +5023,23 @@ local.get $0 i32.const 1 call $templateliteral/Ref#constructor - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 2 call $templateliteral/Ref#constructor - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $0 + local.get $1 call $templateliteral/Ref#toString - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 5360 i32.store offset=12 - local.get $2 + local.get $0 i32.const 5360 call $~lib/string/String.__eq i32.eqz @@ -5049,29 +5051,29 @@ call $~lib/builtins/abort unreachable end - local.get $0 - call $templateliteral/Ref#toString - local.set $2 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=16 local.get $1 call $templateliteral/Ref#toString local.set $3 global.get $~lib/memory/__stack_pointer local.get $3 - i32.store offset=20 + i32.store offset=16 local.get $2 + call $templateliteral/Ref#toString + local.set $0 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=20 local.get $3 + local.get $0 call $~lib/string/String#concat - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 5392 i32.store offset=12 - local.get $2 + local.get $0 i32.const 5392 call $~lib/string/String.__eq i32.eqz @@ -5084,12 +5086,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 call $templateliteral/Ref#toString local.tee $0 i32.store offset=24 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 call $templateliteral/Ref#toString local.tee $1 i32.store offset=28 @@ -5250,32 +5252,31 @@ return end local.get $0 - local.tee $1 - local.get $0 i32.const 20 i32.sub i32.load offset=16 + local.get $0 i32.add - local.set $2 + local.set $1 loop $while-continue|0 + local.get $0 local.get $1 - local.get $2 i32.lt_u if - local.get $1 + local.get $0 i32.load - local.tee $0 + local.tee $2 if - local.get $0 + local.get $2 if - local.get $0 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $1 + local.get $0 i32.const 4 i32.add - local.set $1 + local.set $0 br $while-continue|0 end end @@ -5284,22 +5285,20 @@ return end local.get $0 - local.tee $1 i32.load - local.tee $0 + local.tee $1 if - local.get $0 + local.get $1 if - local.get $0 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $1 + local.get $0 i32.load offset=4 - local.tee $1 + local.tee $0 if - local.get $1 - local.tee $0 + local.get $0 if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -5388,9 +5387,9 @@ local.get $1 local.get $0 i32.load offset=4 - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -5402,13 +5401,13 @@ return end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 local.get $0 i32.load local.tee $0 i32.store offset=4 - local.get $2 local.get $1 + local.get $2 call $templateliteral/RecursiveObject#toString local.tee $1 i32.store offset=8 @@ -5469,7 +5468,7 @@ i32.shr_u i32.const 1 i32.shl - local.tee $3 + local.tee $2 local.get $1 i32.const 20 i32.sub @@ -5478,9 +5477,9 @@ i32.shr_u i32.const 1 i32.shl - local.tee $4 + local.tee $3 i32.add - local.tee $2 + local.tee $4 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -5491,26 +5490,26 @@ return end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $4 i32.store - local.get $2 + local.get $4 local.get $0 - local.get $3 + local.get $2 call $~lib/memory/memory.copy local.get $2 - local.get $3 + local.get $4 i32.add local.get $1 - local.get $4 + local.get $3 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $4 ) (func $templateliteral/Ref#constructor (param $0 i32) (result i32) (local $1 i32) @@ -5645,16 +5644,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $3 i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $3 local.get $1 local.get $2 select @@ -5663,7 +5662,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $0 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/throw.optimized.wat b/tests/compiler/throw.optimized.wat index c18f827f29..292026c7c7 100644 --- a/tests/compiler/throw.optimized.wat +++ b/tests/compiler/throw.optimized.wat @@ -172,19 +172,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -209,9 +209,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -219,17 +219,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -692,7 +692,7 @@ local.get $0 i32.const 4 i32.add - local.tee $2 + local.tee $3 i32.const 18140 i32.ge_u if @@ -808,7 +808,7 @@ if (result i32) local.get $1 i32.load - local.set $3 + local.set $2 i32.const 19708 else i32.const 19724 @@ -823,7 +823,7 @@ i32.ge_u if local.get $0 - local.get $3 + local.get $2 i32.const 2 i32.and local.get $1 @@ -859,20 +859,20 @@ global.set $~lib/rt/tlsf/ROOT end global.get $~lib/rt/tlsf/ROOT - local.get $2 + local.get $3 i32.const 4 i32.sub - local.set $0 - local.get $2 + local.set $1 + local.get $3 i32.const 15 i32.and i32.const 1 - local.get $2 + local.get $3 select if (result i32) i32.const 1 else - local.get $0 + local.get $1 i32.load i32.const 1 i32.and @@ -885,13 +885,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $1 call $~lib/rt/tlsf/insertBlock end end @@ -1148,18 +1148,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $3 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 18140 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1173,9 +1172,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1185,34 +1184,32 @@ call $~lib/builtins/abort unreachable end - local.get $3 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $3 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $3 + local.set $2 local.get $0 - local.tee $1 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) i32.const 1 else - local.get $2 - local.tee $0 i32.const 1728 i32.load - i32.gt_u + local.get $1 + i32.lt_u if i32.const 1488 i32.const 1552 @@ -1221,7 +1218,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1732 @@ -1236,28 +1233,28 @@ else i32.const 2 end - local.set $0 - local.get $3 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 - local.get $1 + local.set $3 local.get $0 - local.get $3 - i32.or - i32.store offset=4 local.get $1 local.get $2 + i32.or + i32.store offset=4 + local.get $0 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $3 - local.get $1 + local.get $2 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/typeof.optimized.wat b/tests/compiler/typeof.optimized.wat index 04cfe89733..e162ff25af 100644 --- a/tests/compiler/typeof.optimized.wat +++ b/tests/compiler/typeof.optimized.wat @@ -144,14 +144,14 @@ if local.get $3 i32.load16_u - local.tee $2 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $2 i32.ne if - local.get $2 local.get $4 + local.get $2 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -310,19 +310,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -347,9 +347,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -357,17 +357,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -655,10 +655,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -670,15 +670,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -708,7 +708,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1021,7 +1021,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 18220 i32.ge_u if @@ -1031,20 +1031,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -1057,8 +1057,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -1094,9 +1093,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1596,7 +1595,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1605,12 +1604,12 @@ if block $__inlined_func$~lib/rt/itcms/interrupt i32.const 2048 - local.set $1 + local.set $0 loop $do-loop|0 - local.get $1 + local.get $0 call $~lib/rt/itcms/step i32.sub - local.set $1 + local.set $0 global.get $~lib/rt/itcms/state i32.eqz if @@ -1626,14 +1625,14 @@ global.set $~lib/rt/itcms/threshold br $__inlined_func$~lib/rt/itcms/interrupt end - local.get $1 + local.get $0 i32.const 0 i32.gt_s br_if $do-loop|0 end global.get $~lib/rt/itcms/total - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 @@ -1650,17 +1649,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 - call $~lib/rt/tlsf/searchBlock local.tee $1 + call $~lib/rt/tlsf/searchBlock + local.tee $0 i32.eqz if memory.size - local.tee $2 + local.tee $0 i32.const 4 - local.get $3 + local.get $1 i32.load offset=1568 - local.get $2 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1673,16 +1672,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 - local.get $1 - local.get $2 - i32.lt_s + local.tee $3 + local.get $0 + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1690,17 +1689,17 @@ unreachable end end - local.get $3 - local.get $2 + local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $1 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1711,7 +1710,7 @@ unreachable end end - local.get $1 + local.get $0 i32.load i32.const -4 i32.and @@ -1725,12 +1724,12 @@ call $~lib/builtins/abort unreachable end - local.get $3 local.get $1 + local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $1 + local.get $0 i32.load - local.tee $2 + local.tee $3 i32.const -4 i32.and i32.const 28 @@ -1739,78 +1738,78 @@ i32.const 16 i32.ge_u if - local.get $1 - local.get $2 + local.get $0 + local.get $3 i32.const 2 i32.and i32.const 28 i32.or i32.store - local.get $1 + local.get $0 i32.const 32 i32.add - local.tee $2 + local.tee $3 local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $1 local.get $3 - local.get $2 call $~lib/rt/tlsf/insertBlock else - local.get $1 - local.get $2 + local.get $0 + local.get $3 i32.const -2 i32.and i32.store - local.get $1 + local.get $0 i32.const 4 i32.add - local.get $1 + local.get $0 i32.load i32.const -4 i32.and i32.add - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.load i32.const -3 i32.and i32.store end - local.get $1 + local.get $0 i32.const 4 i32.store offset=12 - local.get $1 + local.get $0 i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $1 i32.load offset=8 - local.set $4 - local.get $1 + local.set $3 + local.get $0 global.get $~lib/rt/itcms/white - local.get $2 + local.get $1 i32.or i32.store offset=4 - local.get $1 - local.get $4 + local.get $0 + local.get $3 i32.store offset=8 - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total - local.get $1 + local.get $0 i32.load i32.const -4 i32.and @@ -1818,8 +1817,8 @@ i32.add i32.add global.set $~lib/rt/itcms/total + local.get $2 local.get $0 - local.get $1 i32.const 20 i32.add local.tee $0 @@ -1946,19 +1945,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1968,22 +1967,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18220 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1997,9 +1996,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2009,23 +2008,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -2033,7 +2032,7 @@ else i32.const 1792 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1552 @@ -2043,7 +2042,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1796 @@ -2058,28 +2057,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/wasi/abort.optimized.wat b/tests/compiler/wasi/abort.optimized.wat index 2c3c6b08d9..bee6e75d84 100644 --- a/tests/compiler/wasi/abort.optimized.wat +++ b/tests/compiler/wasi/abort.optimized.wat @@ -36,38 +36,38 @@ i32.shl local.get $0 i32.add - local.set $4 + local.set $3 local.get $2 local.set $1 loop $while-continue|0 local.get $0 - local.get $4 + local.get $3 i32.lt_u if local.get $0 i32.load16_u - local.tee $3 + local.tee $5 i32.const 128 i32.lt_u if (result i32) local.get $1 - local.get $3 + local.get $5 i32.store8 local.get $1 i32.const 1 i32.add else - local.get $3 + local.get $5 i32.const 2048 i32.lt_u if (result i32) local.get $1 - local.get $3 + local.get $5 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $3 + local.get $5 i32.const 63 i32.and i32.const 128 @@ -80,16 +80,16 @@ i32.const 2 i32.add else - local.get $3 + local.get $5 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $3 + local.get $5 i32.const 56320 i32.lt_u - local.get $4 + local.get $3 local.get $0 i32.const 2 i32.add @@ -98,32 +98,32 @@ if local.get $0 i32.load16_u offset=2 - local.tee $5 + local.tee $4 i32.const 64512 i32.and i32.const 56320 i32.eq if local.get $1 - local.get $3 + local.get $5 i32.const 1023 i32.and i32.const 10 i32.shl i32.const 65536 i32.add - local.get $5 + local.get $4 i32.const 1023 i32.and i32.or - local.tee $3 + local.tee $4 i32.const 63 i32.and i32.const 128 i32.or i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 6 i32.shr_u i32.const 63 @@ -133,7 +133,7 @@ i32.const 16 i32.shl i32.or - local.get $3 + local.get $4 i32.const 12 i32.shr_u i32.const 63 @@ -143,7 +143,7 @@ i32.const 8 i32.shl i32.or - local.get $3 + local.get $4 i32.const 18 i32.shr_u i32.const 240 @@ -163,12 +163,12 @@ end end local.get $1 - local.get $3 + local.get $5 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $3 + local.get $5 i32.const 6 i32.shr_u i32.const 63 @@ -180,7 +180,7 @@ i32.or i32.store16 local.get $1 - local.get $3 + local.get $5 i32.const 63 i32.and i32.const 128 @@ -231,19 +231,19 @@ call $~lib/string/String.UTF8.encodeUnsafe@varargs i32.const 19 i32.add - local.tee $0 + local.tee $3 i32.const 544106784 i32.store i32.const 1212 i32.load i32.const 1 i32.shr_u - local.set $3 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1216 - local.get $3 local.get $0 + local.get $3 i32.const 4 i32.add local.tee $0 diff --git a/tests/compiler/wasi/seed.optimized.wat b/tests/compiler/wasi/seed.optimized.wat index c1d81ed05c..565b838600 100644 --- a/tests/compiler/wasi/seed.optimized.wat +++ b/tests/compiler/wasi/seed.optimized.wat @@ -12,8 +12,8 @@ (export "_start" (func $~start)) (func $wasi/seed/test (result f64) (local $0 i64) - (local $1 i64) - (local $2 i32) + (local $1 i32) + (local $2 i64) global.get $~lib/math/random_seeded i32.eqz if @@ -24,31 +24,31 @@ drop i32.const 1024 i64.load - local.tee $1 + local.tee $0 i64.eqz br_if $do-loop|0 end i64.const -7046029254386353131 - local.get $1 - local.get $1 + local.get $0 + local.get $0 i64.eqz select - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i64.const 33 i64.shr_u i64.xor i64.const -49064778989728563 i64.mul - local.tee $0 - local.get $0 + local.tee $2 + local.get $2 i64.const 33 i64.shr_u i64.xor i64.const -4265267296055464877 i64.mul - local.tee $0 - local.get $0 + local.tee $2 + local.get $2 i64.const 33 i64.shr_u i64.xor @@ -56,22 +56,22 @@ global.get $~lib/math/random_state0_64 i64.const -1 i64.xor - local.tee $0 - local.get $0 + local.tee $2 + local.get $2 i64.const 33 i64.shr_u i64.xor i64.const -49064778989728563 i64.mul - local.tee $0 - local.get $0 + local.tee $2 + local.get $2 i64.const 33 i64.shr_u i64.xor i64.const -4265267296055464877 i64.mul - local.tee $0 - local.get $0 + local.tee $2 + local.get $2 i64.const 33 i64.shr_u i64.xor @@ -82,9 +82,9 @@ global.get $~lib/math/random_state0_64 local.set $0 global.get $~lib/math/random_state1_64 - local.tee $1 + local.tee $2 global.set $~lib/math/random_state0_64 - local.get $1 + local.get $2 local.get $0 i64.const 23 i64.shl @@ -96,12 +96,12 @@ i64.shr_u i64.xor i64.xor - local.get $1 + local.get $2 i64.const 26 i64.shr_u i64.xor global.set $~lib/math/random_state1_64 - local.get $1 + local.get $2 i64.const 12 i64.shr_u i64.const 4607182418800017408 diff --git a/tests/compiler/wasi/trace.optimized.wat b/tests/compiler/wasi/trace.optimized.wat index f6d2bec2b7..a69bc387dc 100644 --- a/tests/compiler/wasi/trace.optimized.wat +++ b/tests/compiler/wasi/trace.optimized.wat @@ -57,38 +57,38 @@ i32.shl local.get $0 i32.add - local.set $4 + local.set $3 local.get $2 local.set $1 loop $while-continue|0 local.get $0 - local.get $4 + local.get $3 i32.lt_u if local.get $0 i32.load16_u - local.tee $3 + local.tee $5 i32.const 128 i32.lt_u if (result i32) local.get $1 - local.get $3 + local.get $5 i32.store8 local.get $1 i32.const 1 i32.add else - local.get $3 + local.get $5 i32.const 2048 i32.lt_u if (result i32) local.get $1 - local.get $3 + local.get $5 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $3 + local.get $5 i32.const 63 i32.and i32.const 128 @@ -101,16 +101,16 @@ i32.const 2 i32.add else - local.get $3 + local.get $5 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $3 + local.get $5 i32.const 56320 i32.lt_u - local.get $4 + local.get $3 local.get $0 i32.const 2 i32.add @@ -119,32 +119,32 @@ if local.get $0 i32.load16_u offset=2 - local.tee $5 + local.tee $4 i32.const 64512 i32.and i32.const 56320 i32.eq if local.get $1 - local.get $3 + local.get $5 i32.const 1023 i32.and i32.const 10 i32.shl i32.const 65536 i32.add - local.get $5 + local.get $4 i32.const 1023 i32.and i32.or - local.tee $3 + local.tee $4 i32.const 63 i32.and i32.const 128 i32.or i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 6 i32.shr_u i32.const 63 @@ -154,7 +154,7 @@ i32.const 16 i32.shl i32.or - local.get $3 + local.get $4 i32.const 12 i32.shr_u i32.const 63 @@ -164,7 +164,7 @@ i32.const 8 i32.shl i32.or - local.get $3 + local.get $4 i32.const 18 i32.shr_u i32.const 240 @@ -184,12 +184,12 @@ end end local.get $1 - local.get $3 + local.get $5 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $3 + local.get $5 i32.const 6 i32.shr_u i32.const 63 @@ -201,7 +201,7 @@ i32.or i32.store16 local.get $1 - local.get $3 + local.get $5 i32.const 63 i32.and i32.const 128 @@ -353,7 +353,7 @@ local.get $0 local.get $4 i32.add - local.tee $1 + local.tee $0 i32.const 58 i32.store8 local.get $3 @@ -402,8 +402,8 @@ i32.add end end - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.const 1 i32.add i32.add @@ -425,7 +425,7 @@ local.tee $3 br_if $do-loop|1 end - local.get $0 + local.get $1 local.get $4 i32.add local.tee $0 @@ -529,19 +529,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -566,9 +566,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -576,17 +576,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -874,10 +874,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -889,15 +889,15 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -927,7 +927,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1425,7 +1425,7 @@ i32.shl local.get $0 i32.add - local.tee $6 + local.tee $0 i32.load16_u local.set $3 loop $while-continue|3 @@ -1468,7 +1468,7 @@ br $while-continue|3 end end - local.get $6 + local.get $0 local.get $3 i32.store16 local.get $5 @@ -1550,7 +1550,7 @@ i32.shl local.get $0 i32.add - local.tee $6 + local.tee $0 i32.load16_u local.set $3 loop $while-continue|6 @@ -1593,7 +1593,7 @@ br $while-continue|6 end end - local.get $6 + local.get $0 local.get $3 i32.store16 local.get $5 @@ -1611,17 +1611,17 @@ select if local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -1767,19 +1767,19 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -1794,7 +1794,7 @@ local.get $0 local.get $1 i32.load offset=1 - local.tee $4 + local.tee $3 i32.const 8 i32.shl local.get $5 @@ -1805,10 +1805,10 @@ local.get $0 local.get $1 i32.load offset=5 - local.tee $3 + local.tee $4 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -1816,10 +1816,10 @@ local.get $0 local.get $1 i32.load offset=9 - local.tee $4 + local.tee $3 i32.const 8 i32.shl - local.get $3 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -1830,7 +1830,7 @@ local.tee $5 i32.const 8 i32.shl - local.get $4 + local.get $3 i32.const 24 i32.shr_u i32.or @@ -1885,7 +1885,7 @@ local.get $0 local.get $1 i32.load offset=2 - local.tee $4 + local.tee $3 i32.const 16 i32.shl local.get $5 @@ -1896,10 +1896,10 @@ local.get $0 local.get $1 i32.load offset=6 - local.tee $3 + local.tee $4 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -1907,10 +1907,10 @@ local.get $0 local.get $1 i32.load offset=10 - local.tee $4 + local.tee $3 i32.const 16 i32.shl - local.get $3 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -1921,7 +1921,7 @@ local.tee $5 i32.const 16 i32.shl - local.get $4 + local.get $3 i32.const 16 i32.shr_u i32.or @@ -1947,17 +1947,17 @@ i32.load local.set $5 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $2 @@ -1972,7 +1972,7 @@ local.get $0 local.get $1 i32.load offset=3 - local.tee $4 + local.tee $3 i32.const 24 i32.shl local.get $5 @@ -1983,10 +1983,10 @@ local.get $0 local.get $1 i32.load offset=7 - local.tee $3 + local.tee $4 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -1994,10 +1994,10 @@ local.get $0 local.get $1 i32.load offset=11 - local.tee $4 + local.tee $3 i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -2008,7 +2008,7 @@ local.tee $5 i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 8 i32.shr_u i32.or @@ -2045,131 +2045,135 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $5 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $3 + local.get $5 i32.load8_u i32.store8 - local.get $1 + local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $1 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 8 @@ -2186,59 +2190,63 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $4 i32.load8_u i32.store8 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 + local.tee $0 + i32.const 2 + i32.add + local.set $4 + local.get $1 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 - i32.const 2 - i32.add - local.tee $1 local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $4 - i32.const 2 - i32.add - local.set $1 local.get $3 - local.tee $0 + local.tee $1 i32.const 2 i32.add local.set $3 local.get $4 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $1 - local.get $3 - i32.load8_u - i32.store8 - local.get $1 + local.tee $0 i32.const 2 i32.add - local.set $0 + local.set $5 local.get $1 - local.get $3 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 + local.get $5 + i32.load8_u + i32.store8 + local.get $3 + local.tee $4 + i32.const 2 + i32.add + local.set $0 + local.get $5 + local.tee $3 i32.const 2 i32.add local.set $1 + local.get $4 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end local.get $2 i32.const 4 @@ -2607,7 +2615,6 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) local.get $2 i32.eqz if @@ -2626,17 +2633,17 @@ local.get $1 local.get $2 i32.add - local.tee $4 + local.tee $3 i32.const 21 i32.le_s local.get $1 - local.get $4 + local.get $3 i32.le_s i32.and if (result i32) loop $for-loop|0 local.get $1 - local.get $4 + local.get $3 i32.lt_s if local.get $1 @@ -2653,26 +2660,26 @@ br $for-loop|0 end end - local.get $4 + local.get $3 i32.const 1 i32.shl local.get $0 i32.add i32.const 3145774 i32.store - local.get $4 + local.get $3 i32.const 2 i32.add else - local.get $4 + local.get $3 i32.const 21 i32.le_s - local.get $4 + local.get $3 i32.const 0 i32.gt_s i32.and if (result i32) - local.get $4 + local.get $3 i32.const 1 i32.shl local.get $0 @@ -2694,18 +2701,18 @@ i32.const 1 i32.add else - local.get $4 + local.get $3 i32.const 0 i32.le_s - local.get $4 + local.get $3 i32.const -6 i32.gt_s i32.and if (result i32) i32.const 2 - local.get $4 + local.get $3 i32.sub - local.tee $5 + local.tee $3 i32.const 1 i32.shl local.get $0 @@ -2722,7 +2729,7 @@ local.set $2 loop $for-loop|1 local.get $2 - local.get $5 + local.get $3 i32.lt_s if local.get $2 @@ -2740,7 +2747,7 @@ end end local.get $1 - local.get $5 + local.get $3 i32.add else local.get $1 @@ -2751,16 +2758,16 @@ i32.const 101 i32.store16 offset=2 local.get $0 - local.tee $3 + local.tee $1 i32.const 4 i32.add - local.get $4 + local.get $3 i32.const 1 i32.sub local.tee $0 i32.const 0 i32.lt_s - local.tee $2 + local.tee $3 if i32.const 0 local.get $0 @@ -2768,63 +2775,62 @@ local.set $0 end local.get $0 - local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $4 local.get $0 - local.get $1 + local.get $4 i32.const 1 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $3 + local.get $1 i32.const 45 i32.const 43 - local.get $2 + local.get $3 select i32.store16 offset=4 local.get $0 @@ -2850,20 +2856,19 @@ local.get $0 local.get $2 i32.add - local.tee $0 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $0 - local.tee $3 + local.get $2 i32.const 4 i32.add - local.get $4 + local.get $3 i32.const 1 i32.sub local.tee $0 i32.const 0 i32.lt_s - local.tee $5 + local.tee $3 if i32.const 0 local.get $0 @@ -2871,63 +2876,62 @@ local.set $0 end local.get $0 - local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 + local.set $5 local.get $0 - local.get $2 + local.get $5 i32.const 1 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $3 + local.get $2 i32.const 45 i32.const 43 - local.get $5 + local.get $3 select i32.store16 offset=4 local.get $0 @@ -2957,7 +2961,7 @@ local.get $1 f64.const 0 f64.lt - local.tee $8 + local.tee $3 if (result f64) local.get $0 i32.const 45 @@ -2974,11 +2978,11 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.set $3 + local.set $7 local.get $2 i64.const 4503599627370495 i64.and - local.get $3 + local.get $7 i32.const 0 i32.ne i64.extend_i32_u @@ -2986,13 +2990,13 @@ i64.shl i64.add local.set $2 - local.get $3 + local.get $7 i32.const 1 - local.get $3 + local.get $7 select i32.const 1075 i32.sub - local.tee $3 + local.tee $7 i32.const 1 i32.sub local.get $2 @@ -3000,14 +3004,14 @@ i64.shl i64.const 1 i64.add - local.tee $5 + local.tee $4 i64.clz i32.wrap_i64 - local.tee $7 + local.tee $8 i32.sub local.set $9 - local.get $5 - local.get $7 + local.get $4 + local.get $8 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -3017,13 +3021,13 @@ i64.eq i32.const 1 i32.add - local.tee $7 + local.tee $8 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $3 local.get $7 + local.get $8 i32.sub local.get $9 i32.sub @@ -3035,7 +3039,7 @@ i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $9 + local.tee $7 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -3044,9 +3048,9 @@ f64.add local.tee $1 i32.trunc_f64_s - local.tee $3 + local.tee $8 local.get $1 - local.get $3 + local.get $8 f64.convert_i32_s f64.ne i32.add @@ -3054,18 +3058,18 @@ i32.shr_s i32.const 1 i32.add - local.tee $3 + local.tee $8 i32.const 3 i32.shl - local.tee $7 + local.tee $9 i32.sub global.set $~lib/util/number/_K - local.get $7 + local.get $9 i32.const 1328 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $3 + local.get $8 i32.const 1 i32.shl i32.const 2024 @@ -3076,62 +3080,62 @@ local.get $2 i64.clz i64.shl - local.tee $2 + local.tee $4 i64.const 4294967295 i64.and - local.set $11 - local.get $2 + local.set $2 + local.get $4 i64.const 32 i64.shr_u - local.tee $14 + local.tee $6 global.get $~lib/util/number/_frc_pow local.tee $5 i64.const 4294967295 i64.and - local.tee $2 + local.tee $10 local.tee $4 i64.mul + local.get $2 local.get $4 - local.get $11 i64.mul i64.const 32 i64.shr_u i64.add - local.set $12 + local.set $4 local.get $5 i64.const 32 i64.shr_u - local.tee $5 - local.set $13 + local.tee $11 + local.set $5 global.get $~lib/util/number/_frc_plus - local.tee $4 + local.tee $12 i64.const 4294967295 i64.and - local.set $6 - local.get $4 + local.set $13 + local.get $12 i64.const 32 i64.shr_u - local.tee $10 - local.get $2 + local.tee $12 + local.get $10 i64.mul - local.get $2 - local.get $6 + local.get $10 + local.get $13 i64.mul i64.const 32 i64.shr_u i64.add - local.set $4 - local.get $5 - local.get $10 + local.set $14 + local.get $11 + local.get $12 i64.mul - local.get $4 + local.get $14 i64.const 32 i64.shr_u i64.add - local.get $5 - local.get $6 + local.get $11 + local.get $13 i64.mul - local.get $4 + local.get $14 i64.const 4294967295 i64.and i64.add @@ -3142,42 +3146,42 @@ i64.add i64.const 1 i64.sub - local.set $4 + local.set $12 global.get $~lib/util/number/_frc_minus - local.tee $6 + local.tee $13 i64.const 4294967295 i64.and - local.set $10 - local.get $6 + local.set $14 + local.get $13 i64.const 32 i64.shr_u - local.tee $6 - local.get $2 + local.tee $13 + local.get $10 i64.mul - local.get $2 local.get $10 + local.get $14 i64.mul i64.const 32 i64.shr_u i64.add - local.set $2 - local.get $8 + local.set $10 + local.get $3 i32.const 1 i32.shl local.get $0 i32.add local.get $0 - local.get $13 - local.get $14 + local.get $5 + local.get $6 i64.mul - local.get $12 + local.get $4 i64.const 32 i64.shr_u i64.add - local.get $11 - local.get $13 + local.get $2 + local.get $5 i64.mul - local.get $12 + local.get $4 i64.const 4294967295 i64.and i64.add @@ -3186,24 +3190,24 @@ i64.const 32 i64.shr_u i64.add - local.get $4 + local.get $12 global.get $~lib/util/number/_exp_pow - local.get $9 + local.get $7 i32.add i32.const -64 i32.sub - local.get $4 - local.get $5 - local.get $6 + local.get $12 + local.get $11 + local.get $13 i64.mul - local.get $2 + local.get $10 i64.const 32 i64.shr_u i64.add - local.get $5 - local.get $10 + local.get $11 + local.get $14 i64.mul - local.get $2 + local.get $10 i64.const 4294967295 i64.and i64.add @@ -3215,13 +3219,13 @@ i64.const 1 i64.add i64.sub - local.get $8 + local.get $3 call $~lib/util/number/genDigits - local.get $8 + local.get $3 i32.sub global.get $~lib/util/number/_K call $~lib/util/number/prettify - local.get $8 + local.get $3 i32.add ) (func $~lib/util/number/dtoa_buffered (param $0 i32) (param $1 f64) (result i32) @@ -3314,23 +3318,23 @@ if local.get $6 i32.load16_u - local.tee $9 + local.tee $7 i32.const 128 i32.lt_u if (result i32) - local.get $7 + local.get $9 i32.const 1 i32.add else - local.get $9 + local.get $7 i32.const 2048 i32.lt_u if (result i32) - local.get $7 + local.get $9 i32.const 2 i32.add else - local.get $9 + local.get $7 i32.const 64512 i32.and i32.const 55296 @@ -3349,10 +3353,10 @@ i32.const 56320 i32.eq if - local.get $7 + local.get $9 i32.const 4 i32.add - local.set $7 + local.set $9 local.get $6 i32.const 4 i32.add @@ -3360,12 +3364,12 @@ br $while-continue|0 end end - local.get $7 + local.get $9 i32.const 3 i32.add end end - local.set $7 + local.set $9 local.get $6 i32.const 2 i32.add @@ -3373,9 +3377,9 @@ br $while-continue|0 end end - local.get $7 + local.get $9 i32.const 56 - local.get $7 + local.get $9 i32.const 56 i32.gt_s select @@ -3511,13 +3515,10 @@ local.get $9 local.get $6 call $~lib/rt/tlsf/removeBlock - local.get $7 - local.set $8 local.get $6 - local.tee $7 i32.load - local.set $6 - local.get $8 + local.set $8 + local.get $7 i32.const 4 i32.add i32.const 15 @@ -3530,28 +3531,28 @@ call $~lib/wasi/index/abort unreachable end - local.get $6 + local.get $8 i32.const -4 i32.and - local.get $8 + local.get $7 i32.sub local.tee $10 i32.const 16 i32.ge_u if - local.get $7 local.get $6 + local.get $8 i32.const 2 i32.and - local.get $8 + local.get $7 i32.or i32.store - local.get $8 local.get $7 + local.get $6 i32.const 4 i32.add i32.add - local.tee $6 + local.tee $7 local.get $10 i32.const 4 i32.sub @@ -3559,50 +3560,50 @@ i32.or i32.store local.get $9 - local.get $6 + local.get $7 call $~lib/rt/tlsf/insertBlock else - local.get $7 local.get $6 + local.get $8 i32.const -2 i32.and i32.store - local.get $7 + local.get $6 i32.const 4 i32.add - local.get $7 + local.get $6 i32.load i32.const -4 i32.and i32.add - local.tee $6 - local.get $6 + local.tee $7 + local.get $7 i32.load i32.const -3 i32.and i32.store end - local.get $7 + local.get $6 i32.const 4 i32.add - local.tee $7 + local.tee $9 i32.const 8 i32.add local.tee $8 i32.const 4 i32.add local.set $6 - local.get $7 + local.get $9 local.get $6 i32.store local.get $6 i64.const 9071406388179572 i64.store - local.get $7 + local.get $9 i32.const 7 i32.store offset=4 i32.const 2 - local.get $7 + local.get $9 i32.const 1 local.get $8 call $~lib/bindings/wasi_snapshot_preview1/fd_write @@ -3611,17 +3612,17 @@ i32.load i32.const 1 i32.shr_u - local.set $9 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $7 - i32.const 1056 local.get $9 + i32.const 1056 + local.get $7 local.get $6 call $~lib/string/String.UTF8.encodeUnsafe@varargs i32.store offset=4 i32.const 2 - local.get $7 + local.get $9 i32.const 1 local.get $8 call $~lib/bindings/wasi_snapshot_preview1/fd_write @@ -3634,22 +3635,22 @@ local.get $6 i32.const 1 i32.add - local.tee $6 + local.tee $7 local.get $1 call $~lib/util/number/dtoa_buffered - local.set $9 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $6 local.get $9 + local.get $7 local.get $6 + local.get $7 call $~lib/string/String.UTF8.encodeUnsafe@varargs i32.const 1 i32.add i32.store offset=4 i32.const 2 - local.get $7 + local.get $9 i32.const 1 local.get $8 call $~lib/bindings/wasi_snapshot_preview1/fd_write @@ -3658,22 +3659,22 @@ i32.const 1 i32.gt_s if - local.get $6 + local.get $7 local.get $2 call $~lib/util/number/dtoa_buffered - local.set $9 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $6 local.get $9 + local.get $7 local.get $6 + local.get $7 call $~lib/string/String.UTF8.encodeUnsafe@varargs i32.const 1 i32.add i32.store offset=4 i32.const 2 - local.get $7 + local.get $9 i32.const 1 local.get $8 call $~lib/bindings/wasi_snapshot_preview1/fd_write @@ -3682,22 +3683,22 @@ i32.const 2 i32.gt_s if - local.get $6 + local.get $7 local.get $3 call $~lib/util/number/dtoa_buffered - local.set $9 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $6 local.get $9 + local.get $7 local.get $6 + local.get $7 call $~lib/string/String.UTF8.encodeUnsafe@varargs i32.const 1 i32.add i32.store offset=4 i32.const 2 - local.get $7 + local.get $9 i32.const 1 local.get $8 call $~lib/bindings/wasi_snapshot_preview1/fd_write @@ -3706,22 +3707,22 @@ i32.const 3 i32.gt_s if - local.get $6 + local.get $7 local.get $4 call $~lib/util/number/dtoa_buffered - local.set $9 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $6 local.get $9 + local.get $7 local.get $6 + local.get $7 call $~lib/string/String.UTF8.encodeUnsafe@varargs i32.const 1 i32.add i32.store offset=4 i32.const 2 - local.get $7 + local.get $9 i32.const 1 local.get $8 call $~lib/bindings/wasi_snapshot_preview1/fd_write @@ -3730,22 +3731,22 @@ i32.const 4 i32.gt_s if - local.get $6 + local.get $7 local.get $5 call $~lib/util/number/dtoa_buffered local.set $0 i32.const 3 global.set $~argumentsLength + local.get $9 local.get $7 - local.get $6 local.get $0 - local.get $6 + local.get $7 call $~lib/string/String.UTF8.encodeUnsafe@varargs i32.const 1 i32.add i32.store offset=4 i32.const 2 - local.get $7 + local.get $9 i32.const 1 local.get $8 call $~lib/bindings/wasi_snapshot_preview1/fd_write @@ -3754,7 +3755,7 @@ end end end - local.get $6 + local.get $7 i32.const 1 i32.sub else @@ -3762,16 +3763,16 @@ end i32.const 10 i32.store8 - local.get $7 + local.get $9 i32.const 1 i32.store offset=4 i32.const 2 - local.get $7 + local.get $9 i32.const 1 local.get $8 call $~lib/bindings/wasi_snapshot_preview1/fd_write drop - local.get $7 + local.get $9 i32.const 19024 i32.ge_u if @@ -3781,15 +3782,15 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $7 + local.get $9 i32.const 4 i32.sub local.set $0 - local.get $7 + local.get $9 i32.const 15 i32.and i32.const 1 - local.get $7 + local.get $9 select if (result i32) i32.const 1 diff --git a/tests/compiler/while.optimized.wat b/tests/compiler/while.optimized.wat index d74c8a4a42..d6ce812e25 100644 --- a/tests/compiler/while.optimized.wat +++ b/tests/compiler/while.optimized.wat @@ -164,19 +164,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -201,9 +201,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -211,17 +211,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -509,10 +509,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -524,15 +524,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -562,7 +562,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -875,7 +875,7 @@ local.get $0 i32.const 4 i32.add - local.tee $0 + local.tee $1 i32.const 17908 i32.ge_u if @@ -885,20 +885,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $0 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $0 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -911,8 +911,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.tee $0 + local.get $0 local.get $0 i32.load i32.const 1 @@ -948,9 +947,9 @@ i32.load offset=4 i32.const -2 i32.and - local.tee $2 + local.tee $1 if (result i32) - local.get $2 + local.get $1 i32.ctz i32.const 2 i32.shl @@ -1571,7 +1570,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $2 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1625,17 +1624,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz if memory.size - local.tee $1 + local.tee $0 i32.const 4 - local.get $2 - i32.load offset=1568 local.get $1 + i32.load offset=1568 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1648,16 +1647,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $0 + local.tee $3 local.get $0 - local.get $1 - i32.lt_s + local.get $3 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $0 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1665,15 +1664,15 @@ unreachable end end - local.get $2 local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1700,22 +1699,22 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $1 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if local.get $0 - local.get $1 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1724,19 +1723,19 @@ local.get $0 i32.const 32 i32.add - local.tee $1 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 local.get $1 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $1 + local.get $3 i32.const -2 i32.and i32.store @@ -1793,17 +1792,17 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $4 + local.get $2 local.get $0 i32.const 20 i32.add - local.tee $4 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $0 ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) (local $1 i32) @@ -1813,19 +1812,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1835,22 +1834,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17908 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1864,9 +1863,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1876,23 +1875,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1900,7 +1899,7 @@ else i32.const 1488 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1296 @@ -1910,7 +1909,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1492 @@ -1925,28 +1924,28 @@ else i32.const 2 end - local.set $3 + local.set $0 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 + local.get $1 local.get $0 local.get $2 - local.get $3 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 From bebcc54f4f5ffc412eade975a73a6d4d13427d5d Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Mon, 20 Sep 2021 12:06:48 +0300 Subject: [PATCH 11/54] better --- src/module.ts | 2 +- tests/compiler/NonNullable.optimized.wat | 26 +- tests/compiler/builtins.optimized.wat | 26 +- tests/compiler/call-super.optimized.wat | 34 +- tests/compiler/class-implements.optimized.wat | 34 +- .../class-overloading-cast.optimized.wat | 60 +- .../compiler/class-overloading.optimized.wat | 60 +- tests/compiler/class.optimized.wat | 80 +- tests/compiler/constructor.optimized.wat | 34 +- tests/compiler/do.optimized.wat | 91 +- .../empty-exportruntime.optimized.wat | 34 +- tests/compiler/empty-new.optimized.wat | 34 +- tests/compiler/exports.optimized.wat | 34 +- .../exportstar-rereexport.optimized.wat | 34 +- .../extends-baseaggregate.optimized.wat | 220 +- .../compiler/extends-recursive.optimized.wat | 34 +- tests/compiler/features/simd.optimized.wat | 34 +- .../field-initialization.optimized.wat | 60 +- tests/compiler/field.optimized.wat | 573 +- tests/compiler/for.optimized.wat | 34 +- tests/compiler/function-call.optimized.wat | 34 +- .../function-expression.optimized.wat | 76 +- tests/compiler/getter-call.optimized.wat | 34 +- tests/compiler/heap.optimized.wat | 284 +- .../implicit-getter-setter.optimized.wat | 34 +- tests/compiler/infer-array.optimized.wat | 225 +- tests/compiler/infer-generic.optimized.wat | 34 +- tests/compiler/inlining.optimized.wat | 34 +- tests/compiler/instanceof-class.optimized.wat | 34 +- tests/compiler/issues/1095.optimized.wat | 34 +- tests/compiler/issues/1225.optimized.wat | 34 +- tests/compiler/issues/1699.optimized.wat | 237 +- tests/compiler/logical.optimized.wat | 34 +- tests/compiler/managed-cast.optimized.wat | 34 +- tests/compiler/memcpy.optimized.wat | 172 +- tests/compiler/new.optimized.wat | 34 +- tests/compiler/number.optimized.wat | 288 +- tests/compiler/object-literal.optimized.wat | 422 +- .../optional-typeparameters.optimized.wat | 34 +- tests/compiler/reexport.optimized.wat | 34 +- tests/compiler/rereexport.optimized.wat | 34 +- tests/compiler/resolve-access.optimized.wat | 581 +- tests/compiler/resolve-binary.optimized.wat | 306 +- .../resolve-elementaccess.optimized.wat | 279 +- .../resolve-function-expression.optimized.wat | 34 +- tests/compiler/resolve-nested.optimized.wat | 34 +- tests/compiler/resolve-new.optimized.wat | 34 +- .../resolve-propertyaccess.optimized.wat | 60 +- tests/compiler/resolve-ternary.optimized.wat | 288 +- tests/compiler/resolve-unary.optimized.wat | 60 +- tests/compiler/rt/finalize.optimized.wat | 34 +- tests/compiler/rt/instanceof.optimized.wat | 34 +- .../runtime-incremental-export.optimized.wat | 34 +- .../rt/runtime-minimal-export.optimized.wat | 116 +- tests/compiler/std-wasi/console.optimized.wat | 174 +- tests/compiler/std-wasi/crypto.optimized.wat | 228 +- tests/compiler/std-wasi/process.optimized.wat | 411 +- tests/compiler/std/array-access.optimized.wat | 17 +- .../compiler/std/array-literal.optimized.wat | 34 +- tests/compiler/std/array.optimized.wat | 4962 +++--- tests/compiler/std/arraybuffer.optimized.wat | 182 +- tests/compiler/std/dataview.optimized.wat | 34 +- tests/compiler/std/date.optimized.wat | 418 +- tests/compiler/std/map.optimized.wat | 4640 +++--- tests/compiler/std/math.optimized.wat | 665 +- tests/compiler/std/mod.optimized.wat | 82 +- tests/compiler/std/new.optimized.wat | 34 +- tests/compiler/std/object.optimized.wat | 26 +- .../std/operator-overloading.optimized.wat | 34 +- tests/compiler/std/pointer.optimized.wat | 266 +- tests/compiler/std/set.optimized.wat | 1662 +- tests/compiler/std/static-array.optimized.wat | 182 +- tests/compiler/std/staticarray.optimized.wat | 1752 ++- .../std/string-casemapping.optimized.wat | 1022 +- .../std/string-encoding.optimized.wat | 274 +- tests/compiler/std/string.optimized.wat | 518 +- tests/compiler/std/symbol.optimized.wat | 564 +- tests/compiler/std/typedarray.optimized.wat | 12795 ++++++++-------- tests/compiler/std/uri.optimized.wat | 292 +- tests/compiler/super-inline.optimized.wat | 34 +- tests/compiler/templateliteral.optimized.wat | 330 +- tests/compiler/throw.optimized.wat | 65 +- tests/compiler/typeof.optimized.wat | 60 +- tests/compiler/wasi/seed.optimized.wat | 20 +- tests/compiler/wasi/trace.optimized.wat | 431 +- tests/compiler/while.optimized.wat | 42 +- 86 files changed, 18621 insertions(+), 19241 deletions(-) diff --git a/src/module.ts b/src/module.ts index 900a6b190d..b1bb1325a7 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2374,7 +2374,6 @@ export class Module { passes.push("code-pushing"); if (optimizeLevel >= 3) { // very expensive, so O3 only - passes.push("ssa-nomerge"); passes.push("simplify-globals"); passes.push("vacuum"); @@ -2395,6 +2394,7 @@ export class Module { passes.push("precompute-propagate"); passes.push("vacuum"); + passes.push("ssa-nomerge"); passes.push("coalesce-locals"); } passes.push("remove-unused-brs"); diff --git a/tests/compiler/NonNullable.optimized.wat b/tests/compiler/NonNullable.optimized.wat index a619c4e817..7d8d404b30 100644 --- a/tests/compiler/NonNullable.optimized.wat +++ b/tests/compiler/NonNullable.optimized.wat @@ -45,7 +45,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -59,7 +59,7 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) local.get $0 - local.tee $3 + local.tee $2 i32.const 7 i32.and local.get $1 @@ -67,7 +67,7 @@ i32.and i32.or i32.const 1 - local.get $2 + local.get $3 local.tee $0 i32.const 4 i32.ge_u @@ -75,16 +75,16 @@ i32.eqz if loop $do-loop|0 - local.get $3 + local.get $2 i64.load local.get $1 i64.load i64.eq if - local.get $3 + local.get $2 i32.const 8 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 8 i32.add @@ -101,29 +101,29 @@ end loop $while-continue|1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.sub local.set $0 - local.get $2 + local.get $3 if - local.get $3 + local.get $2 i32.load16_u local.tee $4 local.get $1 i32.load16_u - local.tee $2 + local.tee $3 i32.ne if local.get $4 - local.get $2 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add diff --git a/tests/compiler/builtins.optimized.wat b/tests/compiler/builtins.optimized.wat index 073ee2f015..a699bb0ef9 100644 --- a/tests/compiler/builtins.optimized.wat +++ b/tests/compiler/builtins.optimized.wat @@ -101,7 +101,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -115,7 +115,7 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) local.get $0 - local.tee $3 + local.tee $2 i32.const 7 i32.and local.get $1 @@ -123,7 +123,7 @@ i32.and i32.or i32.const 1 - local.get $2 + local.get $3 local.tee $0 i32.const 4 i32.ge_u @@ -131,16 +131,16 @@ i32.eqz if loop $do-loop|0 - local.get $3 + local.get $2 i64.load local.get $1 i64.load i64.eq if - local.get $3 + local.get $2 i32.const 8 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 8 i32.add @@ -157,29 +157,29 @@ end loop $while-continue|1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.sub local.set $0 - local.get $2 + local.get $3 if - local.get $3 + local.get $2 i32.load16_u local.tee $4 local.get $1 i32.load16_u - local.tee $2 + local.tee $3 i32.ne if local.get $4 - local.get $2 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add diff --git a/tests/compiler/call-super.optimized.wat b/tests/compiler/call-super.optimized.wat index d05d31445d..24cac8516c 100644 --- a/tests/compiler/call-super.optimized.wat +++ b/tests/compiler/call-super.optimized.wat @@ -349,7 +349,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -360,7 +360,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -380,37 +380,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -426,7 +426,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -436,20 +436,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -477,7 +477,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/class-implements.optimized.wat b/tests/compiler/class-implements.optimized.wat index b1472a47c0..7de51a98c0 100644 --- a/tests/compiler/class-implements.optimized.wat +++ b/tests/compiler/class-implements.optimized.wat @@ -377,7 +377,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -388,7 +388,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -408,37 +408,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -454,7 +454,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -464,20 +464,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -505,7 +505,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/class-overloading-cast.optimized.wat b/tests/compiler/class-overloading-cast.optimized.wat index 1594b31aeb..ae4f1b1bd2 100644 --- a/tests/compiler/class-overloading-cast.optimized.wat +++ b/tests/compiler/class-overloading-cast.optimized.wat @@ -397,7 +397,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -408,7 +408,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -428,37 +428,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -474,7 +474,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -484,20 +484,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -525,7 +525,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -1299,7 +1299,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -1313,7 +1313,7 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) local.get $0 - local.tee $3 + local.tee $2 i32.const 7 i32.and local.get $1 @@ -1321,7 +1321,7 @@ i32.and i32.or i32.const 1 - local.get $2 + local.get $3 local.tee $0 i32.const 4 i32.ge_u @@ -1329,16 +1329,16 @@ i32.eqz if loop $do-loop|0 - local.get $3 + local.get $2 i64.load local.get $1 i64.load i64.eq if - local.get $3 + local.get $2 i32.const 8 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 8 i32.add @@ -1355,29 +1355,29 @@ end loop $while-continue|1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.sub local.set $0 - local.get $2 + local.get $3 if - local.get $3 + local.get $2 i32.load16_u local.tee $4 local.get $1 i32.load16_u - local.tee $2 + local.tee $3 i32.ne if local.get $4 - local.get $2 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add diff --git a/tests/compiler/class-overloading.optimized.wat b/tests/compiler/class-overloading.optimized.wat index 621ac5fb18..493b78dc33 100644 --- a/tests/compiler/class-overloading.optimized.wat +++ b/tests/compiler/class-overloading.optimized.wat @@ -427,7 +427,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -438,7 +438,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -458,37 +458,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -504,7 +504,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -514,20 +514,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -555,7 +555,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -1329,7 +1329,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -1343,7 +1343,7 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) local.get $0 - local.tee $3 + local.tee $2 i32.const 7 i32.and local.get $1 @@ -1351,7 +1351,7 @@ i32.and i32.or i32.const 1 - local.get $2 + local.get $3 local.tee $0 i32.const 4 i32.ge_u @@ -1359,16 +1359,16 @@ i32.eqz if loop $do-loop|0 - local.get $3 + local.get $2 i64.load local.get $1 i64.load i64.eq if - local.get $3 + local.get $2 i32.const 8 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 8 i32.add @@ -1385,29 +1385,29 @@ end loop $while-continue|1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.sub local.set $0 - local.get $2 + local.get $3 if - local.get $3 + local.get $2 i32.load16_u local.tee $4 local.get $1 i32.load16_u - local.tee $2 + local.tee $3 i32.ne if local.get $4 - local.get $2 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add diff --git a/tests/compiler/class.optimized.wat b/tests/compiler/class.optimized.wat index e268a9b65b..55b631b18a 100644 --- a/tests/compiler/class.optimized.wat +++ b/tests/compiler/class.optimized.wat @@ -491,7 +491,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -502,7 +502,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -522,37 +522,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -568,7 +568,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -578,20 +578,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -619,7 +619,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -1719,7 +1719,7 @@ i32.const 4 i32.const 4 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer i32.const 8 @@ -1737,18 +1737,18 @@ i32.const 16 i32.const 5 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 0 i32.store offset=4 - local.get $0 + local.get $3 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -1760,75 +1760,75 @@ local.get $4 i32.const 32 call $~lib/memory/memory.fill - local.get $0 + local.get $3 local.get $4 i32.store local.get $4 if - local.get $0 + local.get $3 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white local.get $4 i32.const 20 i32.sub - local.tee $2 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $0 + local.get $3 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $2 + local.get $1 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $0 i32.const 3 i32.eq i32.and if - local.get $2 + local.get $1 call $~lib/rt/itcms/Object#makeGray end end end end - local.get $0 + local.get $3 local.get $4 i32.store offset=4 - local.get $0 + local.get $3 i32.const 32 i32.store offset=8 - local.get $0 + local.get $3 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $0 + local.get $2 + local.get $3 i32.store - local.get $0 + local.get $3 if - local.get $1 + local.get $2 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white - local.get $0 + local.get $3 i32.const 20 i32.sub local.tee $0 @@ -1837,7 +1837,7 @@ i32.and i32.eq if - local.get $1 + local.get $2 i32.const 20 i32.sub i32.load offset=4 diff --git a/tests/compiler/constructor.optimized.wat b/tests/compiler/constructor.optimized.wat index 66da7d7caf..b622a2ee03 100644 --- a/tests/compiler/constructor.optimized.wat +++ b/tests/compiler/constructor.optimized.wat @@ -459,7 +459,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -470,7 +470,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -490,37 +490,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -536,7 +536,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -546,20 +546,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -587,7 +587,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/do.optimized.wat b/tests/compiler/do.optimized.wat index 2a15db07c7..739e5cc2c2 100644 --- a/tests/compiler/do.optimized.wat +++ b/tests/compiler/do.optimized.wat @@ -349,7 +349,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -360,7 +360,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -380,37 +380,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -426,7 +426,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -436,20 +436,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -477,7 +477,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -1001,14 +1001,13 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i32) i32.const 10 local.set $0 loop $do-loop|0 - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 local.get $0 i32.const 1 i32.sub @@ -1024,7 +1023,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 10 i32.ne if @@ -1058,7 +1057,7 @@ unreachable end i32.const 0 - local.set $2 + local.set $1 i32.const 10 local.set $0 loop $do-loop|01 @@ -1066,15 +1065,15 @@ i32.const 1 i32.sub local.set $0 - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 loop $do-loop|1 - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 local.get $0 i32.const 1 i32.sub @@ -1090,7 +1089,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 9 i32.ne if @@ -1113,7 +1112,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.const 1 i32.ne if @@ -1124,7 +1123,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 9 i32.ne if @@ -1207,7 +1206,7 @@ i32.const 0 local.set $0 i32.const 0 - local.set $2 + local.set $1 loop $do-loop|06 local.get $0 i32.const 1 @@ -1217,14 +1216,14 @@ i32.ne if loop $do-loop|18 - local.get $2 + local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $1 i32.const 10 i32.rem_s i32.const 0 - local.get $2 + local.get $1 select br_if $do-loop|18 end @@ -1243,7 +1242,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 90 i32.ne if @@ -1287,7 +1286,7 @@ i32.const 1376 global.set $~lib/rt/itcms/fromSpace i32.const 0 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -1298,17 +1297,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 call $do/Ref#constructor i32.store loop $do-loop|09 - local.get $2 + local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $1 i32.const 10 i32.eq if @@ -1323,7 +1322,7 @@ local.get $0 br_if $do-loop|09 end - local.get $2 + local.get $1 i32.const 10 i32.ne if @@ -1348,7 +1347,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -1358,19 +1357,19 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 call $do/Ref#constructor local.tee $0 i32.store loop $do-loop|07 block $do-break|08 - local.get $2 + local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $1 i32.const 10 i32.eq if @@ -1382,7 +1381,7 @@ br_if $do-loop|07 end end - local.get $2 + local.get $1 i32.const 10 i32.ne if diff --git a/tests/compiler/empty-exportruntime.optimized.wat b/tests/compiler/empty-exportruntime.optimized.wat index f4ab9e161e..0687dde3a8 100644 --- a/tests/compiler/empty-exportruntime.optimized.wat +++ b/tests/compiler/empty-exportruntime.optimized.wat @@ -497,7 +497,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -508,7 +508,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -528,37 +528,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -574,7 +574,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -584,20 +584,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -625,7 +625,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/empty-new.optimized.wat b/tests/compiler/empty-new.optimized.wat index 6678ce2e78..94ad7bec6b 100644 --- a/tests/compiler/empty-new.optimized.wat +++ b/tests/compiler/empty-new.optimized.wat @@ -345,7 +345,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -356,7 +356,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -376,37 +376,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -422,7 +422,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -432,20 +432,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -473,7 +473,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/exports.optimized.wat b/tests/compiler/exports.optimized.wat index 20982035e8..d450a6294d 100644 --- a/tests/compiler/exports.optimized.wat +++ b/tests/compiler/exports.optimized.wat @@ -399,7 +399,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -410,7 +410,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -430,37 +430,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -476,7 +476,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -486,20 +486,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -527,7 +527,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/exportstar-rereexport.optimized.wat b/tests/compiler/exportstar-rereexport.optimized.wat index 1eddbd4e20..5af6c3056b 100644 --- a/tests/compiler/exportstar-rereexport.optimized.wat +++ b/tests/compiler/exportstar-rereexport.optimized.wat @@ -409,7 +409,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -420,7 +420,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -440,37 +440,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -486,7 +486,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -496,20 +496,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -537,7 +537,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/extends-baseaggregate.optimized.wat b/tests/compiler/extends-baseaggregate.optimized.wat index 68e50a3df3..c63a03c99d 100644 --- a/tests/compiler/extends-baseaggregate.optimized.wat +++ b/tests/compiler/extends-baseaggregate.optimized.wat @@ -497,7 +497,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -508,7 +508,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -528,37 +528,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -574,7 +574,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -584,20 +584,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -625,7 +625,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -1963,17 +1963,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -2152,39 +2152,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2192,35 +2187,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2228,55 +2219,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -2297,59 +2282,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -2366,7 +2344,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -2377,11 +2355,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -2395,17 +2373,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -2437,7 +2415,7 @@ i32.const 1 i32.add local.tee $10 - local.tee $1 + local.tee $3 i32.const 1176 i32.load local.tee $7 @@ -2445,7 +2423,7 @@ i32.shr_u i32.gt_u if - local.get $1 + local.get $3 i32.const 268435455 i32.gt_u if @@ -2460,16 +2438,16 @@ local.get $7 i32.const 1 i32.shl - local.tee $2 + local.tee $1 i32.const 1073741820 - local.get $2 + local.get $1 i32.const 1073741820 i32.lt_u select local.tee $2 - local.get $1 + local.get $3 i32.const 8 - local.get $1 + local.get $3 i32.const 8 i32.gt_u select @@ -2481,14 +2459,14 @@ i32.lt_u select local.tee $8 - local.tee $3 + local.tee $4 i32.const 1168 i32.load local.tee $11 local.tee $1 i32.const 20 i32.sub - local.tee $4 + local.tee $3 i32.load i32.const -4 i32.and @@ -2496,24 +2474,24 @@ i32.sub i32.le_u if - local.get $4 local.get $3 + local.get $4 i32.store offset=16 br $__inlined_func$~lib/rt/itcms/__renew end - local.get $3 local.get $4 + local.get $3 i32.load offset=12 call $~lib/rt/itcms/__new local.tee $5 local.set $2 - local.get $3 local.get $4 + local.get $3 i32.load offset=16 - local.tee $4 + local.tee $3 local.get $3 local.get $4 - i32.lt_u + i32.gt_u select local.set $6 block $~lib/util/memory/memmove|inlined.0 @@ -2564,17 +2542,17 @@ i32.sub local.set $6 local.get $2 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $2 local.get $1 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $1 - local.get $3 local.get $4 + local.get $3 i32.load8_u i32.store8 br $while-continue|0 @@ -2609,17 +2587,17 @@ local.get $6 if local.get $2 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $2 local.get $1 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $1 - local.get $3 local.get $4 + local.get $3 i32.load8_u i32.store8 local.get $6 diff --git a/tests/compiler/extends-recursive.optimized.wat b/tests/compiler/extends-recursive.optimized.wat index 991a6a6b0a..bef86b226c 100644 --- a/tests/compiler/extends-recursive.optimized.wat +++ b/tests/compiler/extends-recursive.optimized.wat @@ -486,7 +486,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -497,7 +497,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -517,37 +517,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -563,7 +563,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -573,20 +573,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -614,7 +614,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/features/simd.optimized.wat b/tests/compiler/features/simd.optimized.wat index 5c60c12232..4db18e2d61 100644 --- a/tests/compiler/features/simd.optimized.wat +++ b/tests/compiler/features/simd.optimized.wat @@ -286,7 +286,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -297,7 +297,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -317,37 +317,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -363,7 +363,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -373,20 +373,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -414,7 +414,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/field-initialization.optimized.wat b/tests/compiler/field-initialization.optimized.wat index 8e5c52111f..6bd313f01c 100644 --- a/tests/compiler/field-initialization.optimized.wat +++ b/tests/compiler/field-initialization.optimized.wat @@ -504,7 +504,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -515,7 +515,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -535,37 +535,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -581,7 +581,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -591,20 +591,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -632,7 +632,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -1734,7 +1734,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -1748,7 +1748,7 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) local.get $0 - local.tee $3 + local.tee $2 i32.const 7 i32.and local.get $1 @@ -1756,7 +1756,7 @@ i32.and i32.or i32.const 1 - local.get $2 + local.get $3 local.tee $0 i32.const 4 i32.ge_u @@ -1764,16 +1764,16 @@ i32.eqz if loop $do-loop|0 - local.get $3 + local.get $2 i64.load local.get $1 i64.load i64.eq if - local.get $3 + local.get $2 i32.const 8 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 8 i32.add @@ -1790,29 +1790,29 @@ end loop $while-continue|1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.sub local.set $0 - local.get $2 + local.get $3 if - local.get $3 + local.get $2 i32.load16_u local.tee $4 local.get $1 i32.load16_u - local.tee $2 + local.tee $3 i32.ne if local.get $4 - local.get $2 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add diff --git a/tests/compiler/field.optimized.wat b/tests/compiler/field.optimized.wat index 81d3bb9386..9e2efdc85a 100644 --- a/tests/compiler/field.optimized.wat +++ b/tests/compiler/field.optimized.wat @@ -482,7 +482,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -493,7 +493,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -513,37 +513,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -559,7 +559,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -569,20 +569,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -610,7 +610,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -1689,33 +1689,33 @@ (local $4 i32) (local $5 i32) i32.const 1456 - local.set $3 + local.set $1 loop $while-continue|0 - local.get $3 + local.get $1 i32.const 3 i32.and i32.const 0 - local.get $5 + local.get $4 select if local.get $0 - local.tee $1 + local.tee $2 i32.const 1 i32.add local.set $0 - local.get $3 - local.tee $2 + local.get $1 + local.tee $3 i32.const 1 i32.add - local.set $3 - local.get $1 + local.set $1 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $5 + local.get $4 i32.const 1 i32.sub - local.set $5 + local.set $4 br $while-continue|0 end end @@ -1725,108 +1725,108 @@ i32.eqz if loop $while-continue|1 - local.get $5 + local.get $4 i32.const 16 i32.ge_u if local.get $0 - local.get $3 + local.get $1 i32.load i32.store local.get $0 - local.get $3 + local.get $1 i32.load offset=4 i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.load offset=8 i32.store offset=8 local.get $0 - local.get $3 + local.get $1 i32.load offset=12 i32.store offset=12 - local.get $3 + local.get $1 i32.const 16 i32.add - local.set $3 + local.set $1 local.get $0 i32.const 16 i32.add local.set $0 - local.get $5 + local.get $4 i32.const 16 i32.sub - local.set $5 + local.set $4 br $while-continue|1 end end - local.get $5 + local.get $4 i32.const 8 i32.and if local.get $0 - local.get $3 + local.get $1 i32.load i32.store local.get $0 - local.get $3 + local.get $1 i32.load offset=4 i32.store offset=4 - local.get $3 + local.get $1 i32.const 8 i32.add - local.set $3 + local.set $1 local.get $0 i32.const 8 i32.add local.set $0 end - local.get $5 + local.get $4 i32.const 4 i32.and if local.get $0 - local.get $3 + local.get $1 i32.load i32.store - local.get $3 + local.get $1 i32.const 4 i32.add - local.set $3 + local.set $1 local.get $0 i32.const 4 i32.add local.set $0 end - local.get $5 + local.get $4 i32.const 2 i32.and if local.get $0 - local.get $3 + local.get $1 i32.load16_u i32.store16 - local.get $3 + local.get $1 i32.const 2 i32.add - local.set $3 + local.set $1 local.get $0 i32.const 2 i32.add local.set $0 end - local.get $5 + local.get $4 i32.const 1 i32.and if local.get $0 - local.get $3 + local.get $1 i32.load8_u i32.store8 end return end - local.get $5 + local.get $4 i32.const 32 i32.ge_u if @@ -1841,110 +1841,110 @@ i32.sub br_table $case0|2 $case1|2 $case2|2 $break|2 end - local.get $3 + local.get $1 i32.load - local.set $4 + local.set $5 local.get $0 - local.get $3 + local.get $1 i32.load8_u i32.store8 local.get $0 - local.get $3 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $2 i32.const 1 i32.add local.set $0 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.add - local.set $3 - local.get $1 + local.set $1 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $5 + local.get $4 i32.const 3 i32.sub - local.set $5 + local.set $4 loop $while-continue|3 - local.get $5 + local.get $4 i32.const 17 i32.ge_u if local.get $0 - local.get $3 + local.get $1 i32.load offset=1 - local.tee $1 + local.tee $2 i32.const 8 i32.shl - local.get $4 + local.get $5 i32.const 24 i32.shr_u i32.or i32.store local.get $0 - local.get $3 + local.get $1 i32.load offset=5 - local.tee $2 + local.tee $3 i32.const 8 i32.shl - local.get $1 + local.get $2 i32.const 24 i32.shr_u i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.load offset=9 - local.tee $1 + local.tee $2 i32.const 8 i32.shl - local.get $2 + local.get $3 i32.const 24 i32.shr_u i32.or i32.store offset=8 local.get $0 - local.get $3 + local.get $1 i32.load offset=13 - local.tee $4 + local.tee $5 i32.const 8 i32.shl - local.get $1 + local.get $2 i32.const 24 i32.shr_u i32.or i32.store offset=12 - local.get $3 + local.get $1 i32.const 16 i32.add - local.set $3 + local.set $1 local.get $0 i32.const 16 i32.add local.set $0 - local.get $5 + local.get $4 i32.const 16 i32.sub - local.set $5 + local.set $4 br $while-continue|3 end end br $break|2 end - local.get $3 + local.get $1 i32.load - local.set $4 + local.set $5 local.get $0 - local.get $3 + local.get $1 i32.load8_u i32.store8 local.get $0 @@ -1952,431 +1952,417 @@ i32.const 2 i32.add local.set $0 - local.get $3 - local.tee $1 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 + local.set $1 local.get $2 - local.get $1 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $5 + local.get $4 i32.const 2 i32.sub - local.set $5 + local.set $4 loop $while-continue|4 - local.get $5 + local.get $4 i32.const 18 i32.ge_u if local.get $0 - local.get $3 + local.get $1 i32.load offset=2 - local.tee $1 + local.tee $2 i32.const 16 i32.shl - local.get $4 + local.get $5 i32.const 16 i32.shr_u i32.or i32.store local.get $0 - local.get $3 + local.get $1 i32.load offset=6 - local.tee $2 + local.tee $3 i32.const 16 i32.shl - local.get $1 + local.get $2 i32.const 16 i32.shr_u i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.load offset=10 - local.tee $1 + local.tee $2 i32.const 16 i32.shl - local.get $2 + local.get $3 i32.const 16 i32.shr_u i32.or i32.store offset=8 local.get $0 - local.get $3 + local.get $1 i32.load offset=14 - local.tee $4 + local.tee $5 i32.const 16 i32.shl - local.get $1 + local.get $2 i32.const 16 i32.shr_u i32.or i32.store offset=12 - local.get $3 + local.get $1 i32.const 16 i32.add - local.set $3 + local.set $1 local.get $0 i32.const 16 i32.add local.set $0 - local.get $5 + local.get $4 i32.const 16 i32.sub - local.set $5 + local.set $4 br $while-continue|4 end end br $break|2 end - local.get $3 + local.get $1 i32.load - local.set $4 + local.set $5 local.get $0 - local.tee $1 + local.tee $2 i32.const 1 i32.add local.set $0 - local.get $3 - local.tee $2 + local.get $1 + local.tee $3 i32.const 1 i32.add - local.set $3 - local.get $1 + local.set $1 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $5 + local.get $4 i32.const 1 i32.sub - local.set $5 + local.set $4 loop $while-continue|5 - local.get $5 + local.get $4 i32.const 19 i32.ge_u if local.get $0 - local.get $3 + local.get $1 i32.load offset=3 - local.tee $1 + local.tee $2 i32.const 24 i32.shl - local.get $4 + local.get $5 i32.const 8 i32.shr_u i32.or i32.store local.get $0 - local.get $3 + local.get $1 i32.load offset=7 - local.tee $2 + local.tee $3 i32.const 24 i32.shl - local.get $1 + local.get $2 i32.const 8 i32.shr_u i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.load offset=11 - local.tee $1 + local.tee $2 i32.const 24 i32.shl - local.get $2 + local.get $3 i32.const 8 i32.shr_u i32.or i32.store offset=8 local.get $0 - local.get $3 + local.get $1 i32.load offset=15 - local.tee $4 + local.tee $5 i32.const 24 i32.shl - local.get $1 + local.get $2 i32.const 8 i32.shr_u i32.or i32.store offset=12 - local.get $3 + local.get $1 i32.const 16 i32.add - local.set $3 + local.set $1 local.get $0 i32.const 16 i32.add local.set $0 - local.get $5 + local.get $4 i32.const 16 i32.sub - local.set $5 + local.set $4 br $while-continue|5 end end end end - local.get $5 + local.get $4 i32.const 16 i32.and if local.get $0 - local.get $3 + local.get $1 i32.load8_u i32.store8 local.get $0 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $3 + local.set $2 + local.get $1 i32.const 2 i32.add - local.tee $2 + local.set $3 + local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $2 i32.const 2 i32.add - local.set $1 - local.get $2 - local.tee $0 + local.set $0 + local.get $3 i32.const 2 i32.add - local.set $2 + local.set $1 + local.get $2 local.get $3 - local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $0 local.get $1 - local.get $2 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $2 - local.tee $0 + local.set $2 + local.get $1 i32.const 2 i32.add - local.set $2 - local.get $3 + local.set $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $2 i32.const 2 i32.add - local.set $1 - local.get $2 - local.tee $0 + local.set $0 + local.get $3 i32.const 2 i32.add - local.set $2 + local.set $1 + local.get $2 local.get $3 - local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $0 local.get $1 - local.get $2 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $2 - local.tee $0 + local.set $2 + local.get $1 i32.const 2 i32.add - local.set $2 - local.get $3 + local.set $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $2 i32.const 2 i32.add - local.set $1 - local.get $2 - local.tee $0 + local.set $0 + local.get $3 i32.const 2 i32.add - local.set $2 + local.set $1 + local.get $2 local.get $3 - local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $0 local.get $1 - local.get $2 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $2 - local.tee $0 + local.set $2 + local.get $1 i32.const 2 i32.add - local.set $4 - local.get $3 + local.set $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $4 + local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $1 - local.tee $2 + local.get $2 i32.const 2 i32.add local.set $0 - local.get $4 - local.tee $1 + local.get $3 i32.const 2 i32.add - local.set $3 + local.set $1 local.get $2 - local.get $1 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $5 + local.get $4 i32.const 8 i32.and if local.get $0 - local.get $3 + local.get $1 i32.load8_u i32.store8 local.get $0 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $3 + local.set $2 + local.get $1 i32.const 2 i32.add - local.tee $2 + local.set $3 + local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $2 i32.const 2 i32.add - local.set $1 - local.get $2 - local.tee $0 + local.set $0 + local.get $3 i32.const 2 i32.add - local.set $2 + local.set $1 + local.get $2 local.get $3 - local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $0 local.get $1 - local.get $2 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $2 - local.tee $0 + local.set $2 + local.get $1 i32.const 2 i32.add - local.set $4 - local.get $3 + local.set $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $4 + local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $1 - local.tee $2 + local.get $2 i32.const 2 i32.add local.set $0 - local.get $4 - local.tee $1 + local.get $3 i32.const 2 i32.add - local.set $3 + local.set $1 local.get $2 - local.get $1 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $5 + local.get $4 i32.const 4 i32.and if local.get $0 - local.get $3 + local.get $1 i32.load8_u i32.store8 local.get $0 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 i32.const 2 i32.add - local.tee $2 - local.get $3 - i32.const 2 - i32.add - local.tee $1 - i32.load8_u - i32.store8 + local.set $2 local.get $1 i32.const 2 i32.add local.set $3 - local.get $2 + local.get $0 local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 + local.get $3 + i32.load8_u + i32.store8 + local.get $2 i32.const 2 i32.add local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $1 + local.get $2 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end - local.get $5 + local.get $4 i32.const 2 i32.and if local.get $0 - local.get $3 + local.get $1 i32.load8_u i32.store8 local.get $0 @@ -2384,22 +2370,22 @@ i32.const 2 i32.add local.set $0 - local.get $3 - local.tee $1 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 + local.set $1 local.get $2 - local.get $1 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $5 + local.get $4 i32.const 1 i32.and if local.get $0 - local.get $3 + local.get $1 i32.load8_u i32.store8 end @@ -2444,7 +2430,7 @@ i32.const 4 i32.const 3 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 @@ -2455,7 +2441,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $6 i32.const 0 i32.store i32.const 1456 @@ -2464,7 +2450,7 @@ i32.const 0 i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $4 local.tee $0 i32.const 1456 i32.eq @@ -2491,13 +2477,13 @@ i32.const 7 i32.and if - local.get $6 + local.get $8 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $6 + local.get $8 i32.const 1 i32.sub - local.set $6 + local.set $8 local.get $0 local.tee $2 i32.const 1 @@ -2516,7 +2502,7 @@ end end loop $while-continue|1 - local.get $6 + local.get $8 i32.const 8 i32.ge_u if @@ -2524,10 +2510,10 @@ local.get $1 i64.load i64.store - local.get $6 + local.get $8 i32.const 8 i32.sub - local.set $6 + local.set $8 local.get $0 i32.const 8 i32.add @@ -2541,7 +2527,7 @@ end end loop $while-continue|2 - local.get $6 + local.get $8 if local.get $0 local.tee $2 @@ -2557,10 +2543,10 @@ local.get $3 i32.load8_u i32.store8 - local.get $6 + local.get $8 i32.const 1 i32.sub - local.set $6 + local.set $8 br $while-continue|2 end end @@ -2572,21 +2558,21 @@ if loop $while-continue|3 local.get $0 - local.get $6 + local.get $8 i32.add i32.const 7 i32.and if - local.get $6 + local.get $8 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 local.get $0 - local.get $6 + local.get $8 i32.const 1 i32.sub - local.tee $6 + local.tee $8 i32.add - local.get $6 + local.get $8 i32.const 1456 i32.add i32.load8_u @@ -2595,17 +2581,17 @@ end end loop $while-continue|4 - local.get $6 + local.get $8 i32.const 8 i32.ge_u if local.get $0 - local.get $6 + local.get $8 i32.const 8 i32.sub - local.tee $6 + local.tee $8 i32.add - local.get $6 + local.get $8 i32.const 1456 i32.add i64.load @@ -2615,15 +2601,15 @@ end end loop $while-continue|5 - local.get $6 + local.get $8 if local.get $0 - local.get $6 + local.get $8 i32.const 1 i32.sub - local.tee $6 + local.tee $8 i32.add - local.get $6 + local.get $8 i32.const 1456 i32.add i32.load8_u @@ -2633,22 +2619,22 @@ end end end - local.get $8 - local.get $5 + local.get $6 + local.get $4 i32.store i32.const 16 i32.const 4 call $~lib/rt/itcms/__new local.tee $0 - local.get $5 + local.get $4 i32.store - local.get $5 + local.get $4 if local.get $0 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white - local.get $5 + local.get $4 i32.const 20 i32.sub local.tee $1 @@ -2686,7 +2672,7 @@ end end local.get $0 - local.get $5 + local.get $4 i32.store offset=4 local.get $0 i32.const 0 @@ -2698,12 +2684,12 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $5 local.get $0 i32.store local.get $0 if - local.get $4 + local.get $5 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white @@ -2716,7 +2702,7 @@ i32.and i32.eq if - local.get $4 + local.get $5 i32.const 20 i32.sub i32.load offset=4 @@ -2749,7 +2735,7 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $7 - local.get $4 + local.get $5 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 @@ -2792,20 +2778,21 @@ return end local.get $0 - i32.load offset=4 local.tee $1 + i32.load offset=4 + local.tee $2 local.get $0 i32.load offset=12 i32.const 2 i32.shl i32.add - local.set $2 + local.set $0 loop $while-continue|0 - local.get $1 + local.get $0 local.get $2 - i32.lt_u + i32.gt_u if - local.get $1 + local.get $2 i32.load local.tee $3 if @@ -2815,14 +2802,14 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $1 + local.get $2 i32.const 4 i32.add - local.set $1 + local.set $2 br $while-continue|0 end end - local.get $0 + local.get $1 i32.load local.tee $0 if diff --git a/tests/compiler/for.optimized.wat b/tests/compiler/for.optimized.wat index 1559836fd6..9f124c1092 100644 --- a/tests/compiler/for.optimized.wat +++ b/tests/compiler/for.optimized.wat @@ -349,7 +349,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -360,7 +360,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -380,37 +380,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -426,7 +426,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -436,20 +436,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -477,7 +477,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/function-call.optimized.wat b/tests/compiler/function-call.optimized.wat index 02e98855dd..513af5e95a 100644 --- a/tests/compiler/function-call.optimized.wat +++ b/tests/compiler/function-call.optimized.wat @@ -390,7 +390,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -401,7 +401,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -421,37 +421,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -467,7 +467,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -477,20 +477,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -518,7 +518,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/function-expression.optimized.wat b/tests/compiler/function-expression.optimized.wat index 9159615752..b5a1e92e0f 100644 --- a/tests/compiler/function-expression.optimized.wat +++ b/tests/compiler/function-expression.optimized.wat @@ -550,7 +550,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -561,7 +561,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -581,37 +581,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -627,7 +627,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -637,20 +637,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -678,7 +678,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -1288,16 +1288,16 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 2032 i32.store - local.get $2 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -1360,7 +1360,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1368,7 +1368,7 @@ memory.size local.tee $0 i32.const 4 - local.get $1 + local.get $2 i32.load offset=1568 local.get $0 i32.const 16 @@ -1400,7 +1400,7 @@ unreachable end end - local.get $1 + local.get $2 local.get $0 i32.const 16 i32.shl @@ -1408,7 +1408,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1435,7 +1435,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 @@ -1466,7 +1466,7 @@ i32.const 1 i32.or i32.store - local.get $1 + local.get $2 local.get $4 call $~lib/rt/tlsf/insertBlock else @@ -1483,8 +1483,8 @@ i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.load i32.const -3 i32.and @@ -1497,12 +1497,12 @@ i32.const 4 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 local.set $4 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store offset=4 local.get $0 @@ -1516,7 +1516,7 @@ local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1537,7 +1537,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1548,12 +1548,12 @@ local.get $0 i32.const 0 i32.store8 offset=2 - local.get $1 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $2 i32.const 3 i32.sub i32.const 0 @@ -1587,7 +1587,7 @@ i32.load offset=4 i32.const 3 i32.and - local.tee $1 + local.tee $2 global.get $~lib/rt/itcms/white i32.eqz i32.eq @@ -1598,7 +1598,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $1 + local.get $2 i32.const 3 i32.eq i32.and @@ -1612,7 +1612,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer diff --git a/tests/compiler/getter-call.optimized.wat b/tests/compiler/getter-call.optimized.wat index 444610cbda..96b2f6e2bf 100644 --- a/tests/compiler/getter-call.optimized.wat +++ b/tests/compiler/getter-call.optimized.wat @@ -352,7 +352,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -363,7 +363,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -383,37 +383,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -429,7 +429,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -439,20 +439,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -480,7 +480,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/heap.optimized.wat b/tests/compiler/heap.optimized.wat index 81132ab2cf..2bf2e3abb5 100644 --- a/tests/compiler/heap.optimized.wat +++ b/tests/compiler/heap.optimized.wat @@ -294,7 +294,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -305,7 +305,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -325,37 +325,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -371,7 +371,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -381,20 +381,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -422,7 +422,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -851,34 +851,34 @@ local.get $0 local.get $1 call $~lib/rt/tlsf/prepareSize - local.tee $1 - call $~lib/rt/tlsf/searchBlock local.tee $2 + call $~lib/rt/tlsf/searchBlock + local.tee $1 i32.eqz if memory.size - local.tee $2 - local.get $1 + local.tee $1 + local.get $2 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $1 + local.get $2 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $1 + local.get $2 i32.add else - local.get $1 + local.get $2 end i32.const 4 local.get $0 i32.load offset=1568 - local.get $2 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -893,7 +893,7 @@ i32.const 16 i32.shr_u local.tee $3 - local.get $2 + local.get $1 local.get $3 i32.gt_s select @@ -910,7 +910,7 @@ end end local.get $0 - local.get $2 + local.get $1 i32.const 16 i32.shl memory.size @@ -918,9 +918,9 @@ i32.shl call $~lib/rt/tlsf/addMemory local.get $0 - local.get $1 + local.get $2 call $~lib/rt/tlsf/searchBlock - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -931,11 +931,11 @@ unreachable end end - local.get $2 + local.get $1 i32.load i32.const -4 i32.and - local.get $1 + local.get $2 i32.lt_u if i32.const 0 @@ -946,13 +946,13 @@ unreachable end local.get $0 - local.get $2 + local.get $1 call $~lib/rt/tlsf/removeBlock local.get $0 - local.get $2 local.get $1 - call $~lib/rt/tlsf/prepareBlock local.get $2 + call $~lib/rt/tlsf/prepareBlock + local.get $1 ) (func $~lib/memory/heap.alloc (param $0 i32) (result i32) global.get $~lib/rt/tlsf/ROOT @@ -1258,17 +1258,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -1447,39 +1447,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -1487,35 +1482,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -1523,55 +1514,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -1592,59 +1577,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -1661,7 +1639,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -1672,11 +1650,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -1690,17 +1668,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -1723,7 +1701,7 @@ local.get $0 local.get $2 call $~lib/rt/tlsf/allocateBlock - local.tee $6 + local.tee $7 i32.const 4 i32.add local.set $2 @@ -1731,7 +1709,7 @@ i32.load i32.const -4 i32.and - local.set $7 + local.set $6 block $~lib/util/memory/memmove|inlined.0 local.get $2 local.get $1 @@ -1743,10 +1721,10 @@ local.get $3 local.get $2 i32.sub - local.get $7 + local.get $6 i32.sub i32.const 0 - local.get $7 + local.get $6 i32.const 1 i32.shl i32.sub @@ -1754,7 +1732,7 @@ if local.get $2 local.get $3 - local.get $7 + local.get $6 call $~lib/util/memory/memcpy br $~lib/util/memory/memmove|inlined.0 end @@ -1775,32 +1753,32 @@ i32.const 7 i32.and if - local.get $7 + local.get $6 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $7 + local.get $6 i32.const 1 i32.sub - local.set $7 + local.set $6 local.get $2 - local.tee $5 + local.tee $4 i32.const 1 i32.add local.set $2 local.get $3 - local.tee $4 + local.tee $5 i32.const 1 i32.add local.set $3 - local.get $5 local.get $4 + local.get $5 i32.load8_u i32.store8 br $while-continue|0 end end loop $while-continue|1 - local.get $7 + local.get $6 i32.const 8 i32.ge_u if @@ -1808,10 +1786,10 @@ local.get $3 i64.load i64.store - local.get $7 + local.get $6 i32.const 8 i32.sub - local.set $7 + local.set $6 local.get $2 i32.const 8 i32.add @@ -1825,26 +1803,26 @@ end end loop $while-continue|2 - local.get $7 + local.get $6 if local.get $2 - local.tee $5 + local.tee $4 i32.const 1 i32.add local.set $2 local.get $3 - local.tee $4 + local.tee $5 i32.const 1 i32.add local.set $3 - local.get $5 local.get $4 + local.get $5 i32.load8_u i32.store8 - local.get $7 + local.get $6 i32.const 1 i32.sub - local.set $7 + local.set $6 br $while-continue|2 end end @@ -1859,22 +1837,22 @@ if loop $while-continue|3 local.get $2 - local.get $7 + local.get $6 i32.add i32.const 7 i32.and if - local.get $7 + local.get $6 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 local.get $2 - local.get $7 + local.get $6 i32.const 1 i32.sub - local.tee $7 + local.tee $6 i32.add local.get $3 - local.get $7 + local.get $6 i32.add i32.load8_u i32.store8 @@ -1882,18 +1860,18 @@ end end loop $while-continue|4 - local.get $7 + local.get $6 i32.const 8 i32.ge_u if local.get $2 - local.get $7 + local.get $6 i32.const 8 i32.sub - local.tee $7 + local.tee $6 i32.add local.get $3 - local.get $7 + local.get $6 i32.add i64.load i64.store @@ -1902,16 +1880,16 @@ end end loop $while-continue|5 - local.get $7 + local.get $6 if local.get $2 - local.get $7 + local.get $6 i32.const 1 i32.sub - local.tee $7 + local.tee $6 i32.add local.get $3 - local.get $7 + local.get $6 i32.add i32.load8_u i32.store8 @@ -1934,7 +1912,7 @@ local.get $1 call $~lib/rt/tlsf/insertBlock end - local.get $6 + local.get $7 ) (func $~lib/memory/heap.realloc (param $0 i32) (param $1 i32) (result i32) (local $2 i32) diff --git a/tests/compiler/implicit-getter-setter.optimized.wat b/tests/compiler/implicit-getter-setter.optimized.wat index 19523d1835..8944071924 100644 --- a/tests/compiler/implicit-getter-setter.optimized.wat +++ b/tests/compiler/implicit-getter-setter.optimized.wat @@ -492,7 +492,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -503,7 +503,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -523,37 +523,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -569,7 +569,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -579,20 +579,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -620,7 +620,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/infer-array.optimized.wat b/tests/compiler/infer-array.optimized.wat index 2839d05daf..afa647c89b 100644 --- a/tests/compiler/infer-array.optimized.wat +++ b/tests/compiler/infer-array.optimized.wat @@ -518,7 +518,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -529,7 +529,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -549,37 +549,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -595,7 +595,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -605,20 +605,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -646,7 +646,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -1980,17 +1980,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -2169,39 +2169,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2209,35 +2204,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2245,55 +2236,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -2314,59 +2299,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -2383,7 +2361,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -2394,11 +2372,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -2412,17 +2390,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -2792,20 +2770,21 @@ return end local.get $0 - i32.load offset=4 local.tee $1 + i32.load offset=4 + local.tee $2 local.get $0 i32.load offset=12 i32.const 2 i32.shl i32.add - local.set $2 + local.set $0 loop $while-continue|0 - local.get $1 + local.get $0 local.get $2 - i32.lt_u + i32.gt_u if - local.get $1 + local.get $2 i32.load local.tee $3 if @@ -2815,14 +2794,14 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $1 + local.get $2 i32.const 4 i32.add - local.set $1 + local.set $2 br $while-continue|0 end end - local.get $0 + local.get $1 i32.load local.tee $0 if @@ -2867,11 +2846,11 @@ local.get $9 i32.const 0 call $~lib/rt/itcms/__new - local.set $6 + local.set $4 local.get $3 if block $~lib/util/memory/memmove|inlined.0 - local.get $6 + local.get $4 local.tee $1 local.get $3 i32.eq @@ -2919,17 +2898,17 @@ i32.sub local.set $8 local.get $1 - local.tee $4 + local.tee $5 i32.const 1 i32.add local.set $1 local.get $3 - local.tee $5 + local.tee $6 i32.const 1 i32.add local.set $3 - local.get $4 local.get $5 + local.get $6 i32.load8_u i32.store8 br $while-continue|0 @@ -2964,17 +2943,17 @@ local.get $8 if local.get $1 - local.tee $4 + local.tee $5 i32.const 1 i32.add local.set $1 local.get $3 - local.tee $5 + local.tee $6 i32.const 1 i32.add local.set $3 - local.get $4 local.get $5 + local.get $6 i32.load8_u i32.store8 local.get $8 @@ -3058,23 +3037,23 @@ end end local.get $7 - local.get $6 + local.get $4 i32.store i32.const 16 local.get $2 call $~lib/rt/itcms/__new local.tee $1 - local.get $6 + local.get $4 i32.store - local.get $6 + local.get $4 if local.get $1 - local.get $6 + local.get $4 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $1 - local.get $6 + local.get $4 i32.store offset=4 local.get $1 local.get $9 diff --git a/tests/compiler/infer-generic.optimized.wat b/tests/compiler/infer-generic.optimized.wat index 70256f4a4f..ffd7fb9291 100644 --- a/tests/compiler/infer-generic.optimized.wat +++ b/tests/compiler/infer-generic.optimized.wat @@ -374,7 +374,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -385,7 +385,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -405,37 +405,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -451,7 +451,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -461,20 +461,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -502,7 +502,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/inlining.optimized.wat b/tests/compiler/inlining.optimized.wat index 72dc0cc47a..56f66ed08c 100644 --- a/tests/compiler/inlining.optimized.wat +++ b/tests/compiler/inlining.optimized.wat @@ -361,7 +361,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -372,7 +372,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -392,37 +392,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -438,7 +438,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -448,20 +448,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -489,7 +489,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/instanceof-class.optimized.wat b/tests/compiler/instanceof-class.optimized.wat index 501223325a..ec2733c6ae 100644 --- a/tests/compiler/instanceof-class.optimized.wat +++ b/tests/compiler/instanceof-class.optimized.wat @@ -369,7 +369,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -380,7 +380,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -400,37 +400,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -446,7 +446,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -456,20 +456,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -497,7 +497,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/issues/1095.optimized.wat b/tests/compiler/issues/1095.optimized.wat index 2e3fc0fb17..9ab8c0f6bd 100644 --- a/tests/compiler/issues/1095.optimized.wat +++ b/tests/compiler/issues/1095.optimized.wat @@ -486,7 +486,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -497,7 +497,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -517,37 +517,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -563,7 +563,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -573,20 +573,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -614,7 +614,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/issues/1225.optimized.wat b/tests/compiler/issues/1225.optimized.wat index a3dc5489f0..febd93c8f9 100644 --- a/tests/compiler/issues/1225.optimized.wat +++ b/tests/compiler/issues/1225.optimized.wat @@ -361,7 +361,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -372,7 +372,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -392,37 +392,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -438,7 +438,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -448,20 +448,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -489,7 +489,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/issues/1699.optimized.wat b/tests/compiler/issues/1699.optimized.wat index 67b8bf1658..8806728f23 100644 --- a/tests/compiler/issues/1699.optimized.wat +++ b/tests/compiler/issues/1699.optimized.wat @@ -493,7 +493,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -504,7 +504,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -524,37 +524,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -570,7 +570,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -580,20 +580,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -621,7 +621,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -1959,17 +1959,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -2148,39 +2148,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2188,35 +2183,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2224,55 +2215,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -2293,59 +2278,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -2362,7 +2340,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -2373,11 +2351,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -2391,17 +2369,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -2446,7 +2424,7 @@ i32.const 1 i32.add local.tee $11 - local.tee $3 + local.tee $5 local.get $0 i32.load offset=8 local.tee $9 @@ -2454,7 +2432,7 @@ i32.shr_u i32.gt_u if - local.get $3 + local.get $5 i32.const 268435455 i32.gt_u if @@ -2469,16 +2447,16 @@ local.get $9 i32.const 1 i32.shl - local.tee $4 + local.tee $3 i32.const 1073741820 - local.get $4 + local.get $3 i32.const 1073741820 i32.lt_u select local.tee $4 - local.get $3 + local.get $5 i32.const 8 - local.get $3 + local.get $5 i32.const 8 i32.gt_u select @@ -2490,14 +2468,14 @@ i32.lt_u select local.tee $10 - local.tee $5 + local.tee $6 local.get $0 i32.load local.tee $12 local.tee $3 i32.const 20 i32.sub - local.tee $6 + local.tee $5 i32.load i32.const -4 i32.and @@ -2505,24 +2483,24 @@ i32.sub i32.le_u if - local.get $6 local.get $5 + local.get $6 i32.store offset=16 br $__inlined_func$~lib/rt/itcms/__renew end - local.get $5 local.get $6 + local.get $5 i32.load offset=12 call $~lib/rt/itcms/__new local.tee $7 local.set $4 - local.get $5 local.get $6 + local.get $5 i32.load offset=16 - local.tee $6 + local.tee $5 local.get $5 local.get $6 - i32.lt_u + i32.gt_u select local.set $8 block $~lib/util/memory/memmove|inlined.0 @@ -2573,17 +2551,17 @@ i32.sub local.set $8 local.get $4 - local.tee $5 + local.tee $6 i32.const 1 i32.add local.set $4 local.get $3 - local.tee $6 + local.tee $5 i32.const 1 i32.add local.set $3 - local.get $5 local.get $6 + local.get $5 i32.load8_u i32.store8 br $while-continue|0 @@ -2618,17 +2596,17 @@ local.get $8 if local.get $4 - local.tee $5 + local.tee $6 i32.const 1 i32.add local.set $4 local.get $3 - local.tee $6 + local.tee $5 i32.const 1 i32.add local.set $3 - local.get $5 local.get $6 + local.get $5 i32.load8_u i32.store8 local.get $8 @@ -3005,20 +2983,21 @@ return end local.get $0 - i32.load offset=4 local.tee $1 + i32.load offset=4 + local.tee $2 local.get $0 i32.load offset=12 i32.const 2 i32.shl i32.add - local.set $2 + local.set $0 loop $while-continue|0 - local.get $1 + local.get $0 local.get $2 - i32.lt_u + i32.gt_u if - local.get $1 + local.get $2 i32.load local.tee $3 if @@ -3028,14 +3007,14 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $1 + local.get $2 i32.const 4 i32.add - local.set $1 + local.set $2 br $while-continue|0 end end - local.get $0 + local.get $1 i32.load local.tee $0 if diff --git a/tests/compiler/logical.optimized.wat b/tests/compiler/logical.optimized.wat index 7dd06e36df..e78eb6abf4 100644 --- a/tests/compiler/logical.optimized.wat +++ b/tests/compiler/logical.optimized.wat @@ -349,7 +349,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -360,7 +360,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -380,37 +380,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -426,7 +426,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -436,20 +436,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -477,7 +477,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/managed-cast.optimized.wat b/tests/compiler/managed-cast.optimized.wat index 58961924c4..c27b7d86f8 100644 --- a/tests/compiler/managed-cast.optimized.wat +++ b/tests/compiler/managed-cast.optimized.wat @@ -353,7 +353,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -364,7 +364,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -384,37 +384,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -430,7 +430,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -440,20 +440,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -481,7 +481,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/memcpy.optimized.wat b/tests/compiler/memcpy.optimized.wat index 50788b46c4..6c4100c920 100644 --- a/tests/compiler/memcpy.optimized.wat +++ b/tests/compiler/memcpy.optimized.wat @@ -16,7 +16,7 @@ (local $5 i32) (local $6 i32) local.get $0 - local.set $6 + local.set $5 loop $while-continue|0 local.get $1 i32.const 3 @@ -151,7 +151,7 @@ i32.load8_u i32.store8 end - local.get $6 + local.get $5 return end local.get $2 @@ -171,7 +171,7 @@ end local.get $1 i32.load - local.set $5 + local.set $6 local.get $0 local.get $1 i32.load8_u @@ -213,7 +213,7 @@ local.tee $3 i32.const 8 i32.shl - local.get $5 + local.get $6 i32.const 24 i32.shr_u i32.or @@ -243,7 +243,7 @@ local.get $0 local.get $1 i32.load offset=13 - local.tee $5 + local.tee $6 i32.const 8 i32.shl local.get $3 @@ -270,23 +270,23 @@ end local.get $1 i32.load - local.set $5 + local.set $6 local.get $0 local.get $1 i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -304,7 +304,7 @@ local.tee $3 i32.const 16 i32.shl - local.get $5 + local.get $6 i32.const 16 i32.shr_u i32.or @@ -334,7 +334,7 @@ local.get $0 local.get $1 i32.load offset=14 - local.tee $5 + local.tee $6 i32.const 16 i32.shl local.get $3 @@ -361,7 +361,7 @@ end local.get $1 i32.load - local.set $5 + local.set $6 local.get $0 local.tee $3 i32.const 1 @@ -391,7 +391,7 @@ local.tee $3 i32.const 24 i32.shl - local.get $5 + local.get $6 i32.const 8 i32.shr_u i32.or @@ -421,7 +421,7 @@ local.get $0 local.get $1 i32.load offset=15 - local.tee $5 + local.tee $6 i32.const 24 i32.shl local.get $3 @@ -465,39 +465,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -505,35 +500,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -541,55 +532,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -610,59 +595,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -679,7 +657,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -690,11 +668,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -708,17 +686,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -731,7 +709,7 @@ i32.load8_u i32.store8 end - local.get $6 + local.get $5 ) (func $~start i32.const 8 diff --git a/tests/compiler/new.optimized.wat b/tests/compiler/new.optimized.wat index dd410aee7f..fb2deaeeee 100644 --- a/tests/compiler/new.optimized.wat +++ b/tests/compiler/new.optimized.wat @@ -407,7 +407,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -418,7 +418,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -438,37 +438,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -484,7 +484,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -494,20 +494,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -535,7 +535,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/number.optimized.wat b/tests/compiler/number.optimized.wat index 0565c9e1fd..9d9b665b8f 100644 --- a/tests/compiler/number.optimized.wat +++ b/tests/compiler/number.optimized.wat @@ -396,7 +396,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -407,7 +407,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -427,37 +427,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -473,7 +473,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -483,20 +483,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -524,7 +524,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -1842,7 +1842,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -1856,7 +1856,7 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) local.get $0 - local.tee $3 + local.tee $2 i32.const 7 i32.and local.get $1 @@ -1864,7 +1864,7 @@ i32.and i32.or i32.const 1 - local.get $2 + local.get $3 local.tee $0 i32.const 4 i32.ge_u @@ -1872,16 +1872,16 @@ i32.eqz if loop $do-loop|0 - local.get $3 + local.get $2 i64.load local.get $1 i64.load i64.eq if - local.get $3 + local.get $2 i32.const 8 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 8 i32.add @@ -1898,29 +1898,29 @@ end loop $while-continue|1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.sub local.set $0 - local.get $2 + local.get $3 if - local.get $3 + local.get $2 i32.load16_u local.tee $4 local.get $1 i32.load16_u - local.tee $2 + local.tee $3 i32.ne if local.get $4 - local.get $2 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add @@ -2623,17 +2623,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -2812,39 +2812,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2852,35 +2847,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2888,55 +2879,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -2957,59 +2942,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -3026,7 +3004,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -3037,11 +3015,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -3055,17 +3033,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -3293,17 +3271,17 @@ local.get $0 local.get $1 i32.add - local.tee $4 + local.tee $2 i32.const 21 i32.le_s local.get $0 - local.get $4 + local.get $2 i32.le_s i32.and if (result i32) loop $for-loop|0 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 @@ -3320,26 +3298,26 @@ br $for-loop|0 end end - local.get $4 + local.get $2 i32.const 1 i32.shl i32.const 3456 i32.add i32.const 3145774 i32.store - local.get $4 + local.get $2 i32.const 2 i32.add else - local.get $4 + local.get $2 i32.const 21 i32.le_s - local.get $4 + local.get $2 i32.const 0 i32.gt_s i32.and if (result i32) - local.get $4 + local.get $2 i32.const 1 i32.shl i32.const 3456 @@ -3361,16 +3339,16 @@ i32.const 1 i32.add else - local.get $4 + local.get $2 i32.const 0 i32.le_s - local.get $4 + local.get $2 i32.const -6 i32.gt_s i32.and if (result i32) i32.const 2 - local.get $4 + local.get $2 i32.sub local.tee $2 i32.const 1 @@ -3417,7 +3395,7 @@ i32.const 3458 i32.const 101 i32.store16 - local.get $4 + local.get $2 i32.const 1 i32.sub local.tee $0 @@ -3431,46 +3409,47 @@ local.set $0 end local.get $0 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $2 i32.const 100000000 i32.ge_u i32.add @@ -3509,86 +3488,87 @@ local.get $1 i32.const 3456 i32.add - local.tee $2 + local.tee $1 i32.const 101 i32.store16 offset=2 - local.get $2 + local.get $1 i32.const 4 i32.add - local.get $4 + local.get $2 i32.const 1 i32.sub - local.tee $1 + local.tee $2 i32.const 0 i32.lt_s local.tee $4 if i32.const 0 - local.get $1 + local.get $2 i32.sub - local.set $1 + local.set $2 end - local.get $1 + local.get $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $5 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $5 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $5 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $5 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $5 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $5 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $5 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $5 i32.const 100000000 i32.ge_u i32.add end end local.set $5 - local.get $1 + local.get $2 local.get $5 i32.const 1 i32.add - local.tee $1 + local.tee $2 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $1 i32.const 45 i32.const 43 local.get $4 select i32.store16 offset=4 local.get $0 - local.get $1 + local.get $2 i32.add i32.const 2 i32.add diff --git a/tests/compiler/object-literal.optimized.wat b/tests/compiler/object-literal.optimized.wat index 018027b16f..1909f3ca88 100644 --- a/tests/compiler/object-literal.optimized.wat +++ b/tests/compiler/object-literal.optimized.wat @@ -496,7 +496,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -507,7 +507,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -527,37 +527,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -573,7 +573,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -583,20 +583,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -624,7 +624,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -1736,7 +1736,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -1750,7 +1750,7 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) local.get $0 - local.tee $3 + local.tee $2 i32.const 7 i32.and local.get $1 @@ -1758,7 +1758,7 @@ i32.and i32.or i32.const 1 - local.get $2 + local.get $3 local.tee $0 i32.const 4 i32.ge_u @@ -1766,16 +1766,16 @@ i32.eqz if loop $do-loop|0 - local.get $3 + local.get $2 i64.load local.get $1 i64.load i64.eq if - local.get $3 + local.get $2 i32.const 8 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 8 i32.add @@ -1792,29 +1792,29 @@ end loop $while-continue|1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.sub local.set $0 - local.get $2 + local.get $3 if - local.get $3 + local.get $2 i32.load16_u local.tee $4 local.get $1 i32.load16_u - local.tee $2 + local.tee $3 i32.ne if local.get $4 - local.get $2 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add @@ -2088,17 +2088,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -2277,39 +2277,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2317,35 +2312,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2353,55 +2344,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -2422,59 +2407,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -2491,7 +2469,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -2502,11 +2480,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -2520,17 +2498,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -2743,19 +2721,19 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 8 i32.const 3 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 0 i32.store offset=4 global.get $~lib/memory/__stack_pointer @@ -2763,20 +2741,20 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $0 - local.get $3 + local.get $1 i32.store offset=4 - local.get $3 + local.get $1 i32.const 123 i32.store - local.get $3 + local.get $1 i32.const 1056 i32.store offset=4 - local.get $3 + local.get $1 i32.const 1056 call $byn-split-outlined-A$~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer local.tee $0 - local.get $3 + local.get $1 i32.store local.get $0 i32.const 8 @@ -2789,7 +2767,7 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - local.get $3 + local.get $1 i32.load i32.const 123 i32.ne @@ -2803,14 +2781,14 @@ end global.get $~lib/memory/__stack_pointer local.tee $0 - local.get $3 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $1 i32.store local.get $0 i32.const 1056 i32.store offset=4 - local.get $3 + local.get $1 i32.const 1056 call $~lib/string/String.__eq i32.eqz @@ -2828,13 +2806,13 @@ global.set $~lib/memory/__stack_pointer i32.const 8 call $~lib/rt/tlsf/__alloc - local.tee $5 + local.tee $6 i32.const 0 i32.store - local.get $5 + local.get $6 i32.const 0 i32.store offset=4 - local.get $5 + local.get $6 i32.const 123 i32.store global.get $~lib/memory/__stack_pointer @@ -2860,7 +2838,7 @@ local.tee $0 local.get $0 select - local.tee $3 + local.tee $1 i32.const 5 local.get $0 local.get $0 @@ -2868,26 +2846,26 @@ i32.gt_u select local.tee $2 + local.get $1 local.get $2 - local.get $3 - i32.gt_s + i32.lt_s select i32.const 1 i32.shl - local.set $1 + local.set $3 block $__inlined_func$~lib/string/String#substring - local.get $3 + local.get $1 local.get $2 + local.get $1 local.get $2 - local.get $3 - i32.lt_s + i32.gt_s select i32.const 1 i32.shl - local.tee $3 - local.get $1 + local.tee $1 + local.get $3 i32.sub - local.tee $6 + local.tee $4 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -2895,16 +2873,16 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1568 - local.set $4 + local.set $5 br $__inlined_func$~lib/string/String#substring end i32.const 0 local.get $0 i32.const 1 i32.shl - local.get $3 - i32.eq local.get $1 + i32.eq + local.get $3 select if global.get $~lib/memory/__stack_pointer @@ -2912,47 +2890,47 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1056 - local.set $4 + local.set $5 br $__inlined_func$~lib/string/String#substring end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.const 1 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $5 i32.store block $~lib/util/memory/memmove|inlined.0 - local.get $4 + local.get $5 local.tee $0 - local.get $1 + local.get $3 i32.const 1056 i32.add - local.tee $3 + local.tee $1 i32.eq br_if $~lib/util/memory/memmove|inlined.0 - local.get $3 + local.get $1 local.get $0 i32.sub - local.get $6 + local.get $4 i32.sub i32.const 0 - local.get $6 + local.get $4 i32.const 1 i32.shl i32.sub i32.le_u if local.get $0 - local.get $3 - local.get $6 + local.get $1 + local.get $4 call $~lib/util/memory/memcpy br $~lib/util/memory/memmove|inlined.0 end local.get $0 - local.get $3 + local.get $1 i32.lt_u if - local.get $3 + local.get $1 i32.const 7 i32.and local.get $0 @@ -2965,81 +2943,81 @@ i32.const 7 i32.and if - local.get $6 + local.get $4 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $6 + local.get $4 i32.const 1 i32.sub - local.set $6 + local.set $4 local.get $0 local.tee $2 i32.const 1 i32.add local.set $0 - local.get $3 - local.tee $1 + local.get $1 + local.tee $3 i32.const 1 i32.add - local.set $3 + local.set $1 local.get $2 - local.get $1 + local.get $3 i32.load8_u i32.store8 br $while-continue|0 end end loop $while-continue|1 - local.get $6 + local.get $4 i32.const 8 i32.ge_u if local.get $0 - local.get $3 + local.get $1 i64.load i64.store - local.get $6 + local.get $4 i32.const 8 i32.sub - local.set $6 + local.set $4 local.get $0 i32.const 8 i32.add local.set $0 - local.get $3 + local.get $1 i32.const 8 i32.add - local.set $3 + local.set $1 br $while-continue|1 end end end loop $while-continue|2 - local.get $6 + local.get $4 if local.get $0 local.tee $2 i32.const 1 i32.add local.set $0 - local.get $3 - local.tee $1 + local.get $1 + local.tee $3 i32.const 1 i32.add - local.set $3 + local.set $1 local.get $2 - local.get $1 + local.get $3 i32.load8_u i32.store8 - local.get $6 + local.get $4 i32.const 1 i32.sub - local.set $6 + local.set $4 br $while-continue|2 end end else - local.get $3 + local.get $1 i32.const 7 i32.and local.get $0 @@ -3049,22 +3027,22 @@ if loop $while-continue|3 local.get $0 - local.get $6 + local.get $4 i32.add i32.const 7 i32.and if - local.get $6 + local.get $4 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 local.get $0 - local.get $6 + local.get $4 i32.const 1 i32.sub - local.tee $6 + local.tee $4 i32.add - local.get $3 - local.get $6 + local.get $1 + local.get $4 i32.add i32.load8_u i32.store8 @@ -3072,18 +3050,18 @@ end end loop $while-continue|4 - local.get $6 + local.get $4 i32.const 8 i32.ge_u if local.get $0 - local.get $6 + local.get $4 i32.const 8 i32.sub - local.tee $6 + local.tee $4 i32.add - local.get $3 - local.get $6 + local.get $1 + local.get $4 i32.add i64.load i64.store @@ -3092,16 +3070,16 @@ end end loop $while-continue|5 - local.get $6 + local.get $4 if local.get $0 - local.get $6 + local.get $4 i32.const 1 i32.sub - local.tee $6 + local.tee $4 i32.add - local.get $3 - local.get $6 + local.get $1 + local.get $4 i32.add i32.load8_u i32.store8 @@ -3115,8 +3093,8 @@ i32.add global.set $~lib/memory/__stack_pointer end + local.get $6 local.get $5 - local.get $4 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 @@ -3129,7 +3107,7 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - local.get $5 + local.get $6 i32.load i32.const 123 i32.ne @@ -3143,14 +3121,14 @@ end global.get $~lib/memory/__stack_pointer local.tee $0 - local.get $5 + local.get $6 i32.load offset=4 - local.tee $3 + local.tee $1 i32.store local.get $0 i32.const 1600 i32.store offset=4 - local.get $3 + local.get $1 i32.const 1600 call $~lib/string/String.__eq i32.eqz @@ -3162,7 +3140,7 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 call $~lib/rt/tlsf/__free global.get $~lib/memory/__stack_pointer i32.const 8 @@ -3479,10 +3457,10 @@ f64.const 0 f64.store offset=8 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -3504,12 +3482,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.load offset=4 local.tee $2 i32.store - local.get $3 + local.get $1 i32.const 1632 i32.store offset=4 local.get $2 @@ -3635,15 +3613,15 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $1 local.get $0 i32.load local.tee $2 i32.store - local.get $3 + local.get $1 i32.const 1664 i32.store offset=4 local.get $2 @@ -3659,12 +3637,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.load offset=4 local.tee $2 i32.store - local.get $3 + local.get $1 i32.const 1696 i32.store offset=4 local.get $2 @@ -3682,9 +3660,9 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=8 - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -3699,9 +3677,9 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=12 - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -3716,9 +3694,9 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=16 - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -3733,9 +3711,9 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=20 - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -3750,9 +3728,9 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=24 - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -3767,9 +3745,9 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=28 - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 call $~lib/string/String.__eq i32.eqz diff --git a/tests/compiler/optional-typeparameters.optimized.wat b/tests/compiler/optional-typeparameters.optimized.wat index 66195b503c..3962bc59cb 100644 --- a/tests/compiler/optional-typeparameters.optimized.wat +++ b/tests/compiler/optional-typeparameters.optimized.wat @@ -367,7 +367,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -378,7 +378,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -398,37 +398,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -444,7 +444,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -454,20 +454,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -495,7 +495,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/reexport.optimized.wat b/tests/compiler/reexport.optimized.wat index 3557a6f15f..6b3f09ea36 100644 --- a/tests/compiler/reexport.optimized.wat +++ b/tests/compiler/reexport.optimized.wat @@ -441,7 +441,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -452,7 +452,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -472,37 +472,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -518,7 +518,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -528,20 +528,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -569,7 +569,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/rereexport.optimized.wat b/tests/compiler/rereexport.optimized.wat index c2ca886539..2ee7f3eb0f 100644 --- a/tests/compiler/rereexport.optimized.wat +++ b/tests/compiler/rereexport.optimized.wat @@ -409,7 +409,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -420,7 +420,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -440,37 +440,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -486,7 +486,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -496,20 +496,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -537,7 +537,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/resolve-access.optimized.wat b/tests/compiler/resolve-access.optimized.wat index 72dc0da032..234cc19300 100644 --- a/tests/compiler/resolve-access.optimized.wat +++ b/tests/compiler/resolve-access.optimized.wat @@ -504,7 +504,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -515,7 +515,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -535,37 +535,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -581,7 +581,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -591,20 +591,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -632,7 +632,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -1711,35 +1711,35 @@ (local $4 i32) (local $5 i32) i32.const 8 - local.set $5 + local.set $4 i32.const 1056 - local.set $3 + local.set $1 loop $while-continue|0 - local.get $3 + local.get $1 i32.const 3 i32.and i32.const 0 - local.get $5 + local.get $4 select if local.get $0 - local.tee $1 + local.tee $2 i32.const 1 i32.add local.set $0 - local.get $3 - local.tee $2 + local.get $1 + local.tee $3 i32.const 1 i32.add - local.set $3 - local.get $1 + local.set $1 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $5 + local.get $4 i32.const 1 i32.sub - local.set $5 + local.set $4 br $while-continue|0 end end @@ -1749,108 +1749,108 @@ i32.eqz if loop $while-continue|1 - local.get $5 + local.get $4 i32.const 16 i32.ge_u if local.get $0 - local.get $3 + local.get $1 i32.load i32.store local.get $0 - local.get $3 + local.get $1 i32.load offset=4 i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.load offset=8 i32.store offset=8 local.get $0 - local.get $3 + local.get $1 i32.load offset=12 i32.store offset=12 - local.get $3 + local.get $1 i32.const 16 i32.add - local.set $3 + local.set $1 local.get $0 i32.const 16 i32.add local.set $0 - local.get $5 + local.get $4 i32.const 16 i32.sub - local.set $5 + local.set $4 br $while-continue|1 end end - local.get $5 + local.get $4 i32.const 8 i32.and if local.get $0 - local.get $3 + local.get $1 i32.load i32.store local.get $0 - local.get $3 + local.get $1 i32.load offset=4 i32.store offset=4 - local.get $3 + local.get $1 i32.const 8 i32.add - local.set $3 + local.set $1 local.get $0 i32.const 8 i32.add local.set $0 end - local.get $5 + local.get $4 i32.const 4 i32.and if local.get $0 - local.get $3 + local.get $1 i32.load i32.store - local.get $3 + local.get $1 i32.const 4 i32.add - local.set $3 + local.set $1 local.get $0 i32.const 4 i32.add local.set $0 end - local.get $5 + local.get $4 i32.const 2 i32.and if local.get $0 - local.get $3 + local.get $1 i32.load16_u i32.store16 - local.get $3 + local.get $1 i32.const 2 i32.add - local.set $3 + local.set $1 local.get $0 i32.const 2 i32.add local.set $0 end - local.get $5 + local.get $4 i32.const 1 i32.and if local.get $0 - local.get $3 + local.get $1 i32.load8_u i32.store8 end return end - local.get $5 + local.get $4 i32.const 32 i32.ge_u if @@ -1865,110 +1865,110 @@ i32.sub br_table $case0|2 $case1|2 $case2|2 $break|2 end - local.get $3 + local.get $1 i32.load - local.set $4 + local.set $5 local.get $0 - local.get $3 + local.get $1 i32.load8_u i32.store8 local.get $0 - local.get $3 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $2 i32.const 1 i32.add local.set $0 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.add - local.set $3 - local.get $1 + local.set $1 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $5 + local.get $4 i32.const 3 i32.sub - local.set $5 + local.set $4 loop $while-continue|3 - local.get $5 + local.get $4 i32.const 17 i32.ge_u if local.get $0 - local.get $3 + local.get $1 i32.load offset=1 - local.tee $1 + local.tee $2 i32.const 8 i32.shl - local.get $4 + local.get $5 i32.const 24 i32.shr_u i32.or i32.store local.get $0 - local.get $3 + local.get $1 i32.load offset=5 - local.tee $2 + local.tee $3 i32.const 8 i32.shl - local.get $1 + local.get $2 i32.const 24 i32.shr_u i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.load offset=9 - local.tee $1 + local.tee $2 i32.const 8 i32.shl - local.get $2 + local.get $3 i32.const 24 i32.shr_u i32.or i32.store offset=8 local.get $0 - local.get $3 + local.get $1 i32.load offset=13 - local.tee $4 + local.tee $5 i32.const 8 i32.shl - local.get $1 + local.get $2 i32.const 24 i32.shr_u i32.or i32.store offset=12 - local.get $3 + local.get $1 i32.const 16 i32.add - local.set $3 + local.set $1 local.get $0 i32.const 16 i32.add local.set $0 - local.get $5 + local.get $4 i32.const 16 i32.sub - local.set $5 + local.set $4 br $while-continue|3 end end br $break|2 end - local.get $3 + local.get $1 i32.load - local.set $4 + local.set $5 local.get $0 - local.get $3 + local.get $1 i32.load8_u i32.store8 local.get $0 @@ -1976,431 +1976,417 @@ i32.const 2 i32.add local.set $0 - local.get $3 - local.tee $1 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 + local.set $1 local.get $2 - local.get $1 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $5 + local.get $4 i32.const 2 i32.sub - local.set $5 + local.set $4 loop $while-continue|4 - local.get $5 + local.get $4 i32.const 18 i32.ge_u if local.get $0 - local.get $3 + local.get $1 i32.load offset=2 - local.tee $1 + local.tee $2 i32.const 16 i32.shl - local.get $4 + local.get $5 i32.const 16 i32.shr_u i32.or i32.store local.get $0 - local.get $3 + local.get $1 i32.load offset=6 - local.tee $2 + local.tee $3 i32.const 16 i32.shl - local.get $1 + local.get $2 i32.const 16 i32.shr_u i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.load offset=10 - local.tee $1 + local.tee $2 i32.const 16 i32.shl - local.get $2 + local.get $3 i32.const 16 i32.shr_u i32.or i32.store offset=8 local.get $0 - local.get $3 + local.get $1 i32.load offset=14 - local.tee $4 + local.tee $5 i32.const 16 i32.shl - local.get $1 + local.get $2 i32.const 16 i32.shr_u i32.or i32.store offset=12 - local.get $3 + local.get $1 i32.const 16 i32.add - local.set $3 + local.set $1 local.get $0 i32.const 16 i32.add local.set $0 - local.get $5 + local.get $4 i32.const 16 i32.sub - local.set $5 + local.set $4 br $while-continue|4 end end br $break|2 end - local.get $3 + local.get $1 i32.load - local.set $4 + local.set $5 local.get $0 - local.tee $1 + local.tee $2 i32.const 1 i32.add local.set $0 - local.get $3 - local.tee $2 + local.get $1 + local.tee $3 i32.const 1 i32.add - local.set $3 - local.get $1 + local.set $1 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $5 + local.get $4 i32.const 1 i32.sub - local.set $5 + local.set $4 loop $while-continue|5 - local.get $5 + local.get $4 i32.const 19 i32.ge_u if local.get $0 - local.get $3 + local.get $1 i32.load offset=3 - local.tee $1 + local.tee $2 i32.const 24 i32.shl - local.get $4 + local.get $5 i32.const 8 i32.shr_u i32.or i32.store local.get $0 - local.get $3 + local.get $1 i32.load offset=7 - local.tee $2 + local.tee $3 i32.const 24 i32.shl - local.get $1 + local.get $2 i32.const 8 i32.shr_u i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.load offset=11 - local.tee $1 + local.tee $2 i32.const 24 i32.shl - local.get $2 + local.get $3 i32.const 8 i32.shr_u i32.or i32.store offset=8 local.get $0 - local.get $3 + local.get $1 i32.load offset=15 - local.tee $4 + local.tee $5 i32.const 24 i32.shl - local.get $1 + local.get $2 i32.const 8 i32.shr_u i32.or i32.store offset=12 - local.get $3 + local.get $1 i32.const 16 i32.add - local.set $3 + local.set $1 local.get $0 i32.const 16 i32.add local.set $0 - local.get $5 + local.get $4 i32.const 16 i32.sub - local.set $5 + local.set $4 br $while-continue|5 end end end end - local.get $5 + local.get $4 i32.const 16 i32.and if local.get $0 - local.get $3 + local.get $1 i32.load8_u i32.store8 local.get $0 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - i32.const 2 - i32.add - local.tee $1 - local.get $3 i32.const 2 i32.add - local.tee $2 - i32.load8_u - i32.store8 + local.set $2 local.get $1 - local.tee $3 i32.const 2 i32.add - local.set $1 - local.get $2 - local.tee $0 - i32.const 2 - i32.add - local.set $2 - local.get $3 + local.set $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $2 i32.const 2 i32.add - local.set $1 - local.get $2 - local.tee $0 + local.set $0 + local.get $3 i32.const 2 i32.add - local.set $2 + local.set $1 + local.get $2 local.get $3 - local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $0 local.get $1 - local.get $2 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $2 - local.tee $0 + local.set $2 + local.get $1 i32.const 2 i32.add - local.set $2 - local.get $3 + local.set $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $2 + i32.const 2 + i32.add + local.set $0 + local.get $3 i32.const 2 i32.add local.set $1 local.get $2 - local.tee $0 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 + i32.load8_u + i32.store8 + local.get $0 i32.const 2 i32.add local.set $2 - local.get $3 + local.get $1 + i32.const 2 + i32.add + local.set $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $2 i32.const 2 i32.add - local.set $1 - local.get $2 - local.tee $0 + local.set $0 + local.get $3 i32.const 2 i32.add - local.set $2 + local.set $1 + local.get $2 local.get $3 - local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $0 local.get $1 - local.get $2 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $2 - local.tee $0 + local.set $2 + local.get $1 i32.const 2 i32.add - local.set $4 - local.get $3 + local.set $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $4 + local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $1 - local.tee $2 + local.get $2 i32.const 2 i32.add local.set $0 - local.get $4 - local.tee $1 + local.get $3 i32.const 2 i32.add - local.set $3 + local.set $1 local.get $2 - local.get $1 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $5 + local.get $4 i32.const 8 i32.and if local.get $0 - local.get $3 + local.get $1 i32.load8_u i32.store8 local.get $0 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $3 + local.set $2 + local.get $1 i32.const 2 i32.add - local.tee $2 + local.set $3 + local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $2 i32.const 2 i32.add - local.set $1 - local.get $2 - local.tee $0 + local.set $0 + local.get $3 i32.const 2 i32.add - local.set $2 + local.set $1 + local.get $2 local.get $3 - local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $0 local.get $1 - local.get $2 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $2 - local.tee $0 + local.set $2 + local.get $1 i32.const 2 i32.add - local.set $4 - local.get $3 + local.set $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $4 + local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $1 - local.tee $2 + local.get $2 i32.const 2 i32.add local.set $0 - local.get $4 - local.tee $1 + local.get $3 i32.const 2 i32.add - local.set $3 + local.set $1 local.get $2 - local.get $1 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $5 + local.get $4 i32.const 4 i32.and if local.get $0 - local.get $3 + local.get $1 i32.load8_u i32.store8 local.get $0 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - i32.const 2 - i32.add - local.tee $2 - local.get $3 i32.const 2 i32.add - local.tee $1 - i32.load8_u - i32.store8 + local.set $2 local.get $1 i32.const 2 i32.add local.set $3 - local.get $2 + local.get $0 local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 + local.get $3 + i32.load8_u + i32.store8 + local.get $2 i32.const 2 i32.add local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $1 + local.get $2 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 end - local.get $5 + local.get $4 i32.const 2 i32.and if local.get $0 - local.get $3 + local.get $1 i32.load8_u i32.store8 local.get $0 @@ -2408,22 +2394,22 @@ i32.const 2 i32.add local.set $0 - local.get $3 - local.tee $1 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 + local.set $1 local.get $2 - local.get $1 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $5 + local.get $4 i32.const 1 i32.and if local.get $0 - local.get $3 + local.get $1 i32.load8_u i32.store8 end @@ -2895,37 +2881,37 @@ i32.const 8 local.set $5 i32.const 1056 - local.set $0 + local.set $1 block $~lib/util/memory/memmove|inlined.0 i32.const 8 i32.const 0 call $~lib/rt/itcms/__new local.tee $4 - local.tee $3 + local.tee $0 i32.const 1056 i32.eq br_if $~lib/util/memory/memmove|inlined.0 i32.const 1048 - local.get $3 + local.get $0 i32.sub i32.const -16 i32.le_u if - local.get $3 + local.get $0 call $~lib/util/memory/memcpy br $~lib/util/memory/memmove|inlined.0 end - local.get $3 + local.get $0 i32.const 1056 i32.lt_u if - local.get $3 + local.get $0 i32.const 7 i32.and i32.eqz if loop $while-continue|0 - local.get $3 + local.get $0 i32.const 7 i32.and if @@ -2936,18 +2922,18 @@ i32.const 1 i32.sub local.set $5 - local.get $3 - local.tee $1 - i32.const 1 - i32.add - local.set $3 local.get $0 local.tee $2 i32.const 1 i32.add local.set $0 local.get $1 + local.tee $3 + i32.const 1 + i32.add + local.set $1 local.get $2 + local.get $3 i32.load8_u i32.store8 br $while-continue|0 @@ -2958,22 +2944,22 @@ i32.const 8 i32.ge_u if - local.get $3 local.get $0 + local.get $1 i64.load i64.store local.get $5 i32.const 8 i32.sub local.set $5 - local.get $3 - i32.const 8 - i32.add - local.set $3 local.get $0 i32.const 8 i32.add local.set $0 + local.get $1 + i32.const 8 + i32.add + local.set $1 br $while-continue|1 end end @@ -2981,18 +2967,18 @@ loop $while-continue|2 local.get $5 if - local.get $3 - local.tee $1 - i32.const 1 - i32.add - local.set $3 local.get $0 local.tee $2 i32.const 1 i32.add local.set $0 local.get $1 + local.tee $3 + i32.const 1 + i32.add + local.set $1 local.get $2 + local.get $3 i32.load8_u i32.store8 local.get $5 @@ -3003,13 +2989,13 @@ end end else - local.get $3 + local.get $0 i32.const 7 i32.and i32.eqz if loop $while-continue|3 - local.get $3 + local.get $0 local.get $5 i32.add i32.const 7 @@ -3018,7 +3004,7 @@ local.get $5 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $3 + local.get $0 local.get $5 i32.const 1 i32.sub @@ -3037,7 +3023,7 @@ i32.const 8 i32.ge_u if - local.get $3 + local.get $0 local.get $5 i32.const 8 i32.sub @@ -3055,7 +3041,7 @@ loop $while-continue|5 local.get $5 if - local.get $3 + local.get $0 local.get $5 i32.const 1 i32.sub @@ -3073,17 +3059,16 @@ end local.get $7 local.get $4 - local.tee $0 i32.store i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 - local.get $0 + local.tee $0 + local.get $4 i32.store - local.get $0 + local.get $4 if - local.get $1 + local.get $0 i32.eqz if i32.const 0 @@ -3094,50 +3079,50 @@ unreachable end global.get $~lib/rt/itcms/white - local.get $0 + local.get $4 i32.const 20 i32.sub - local.tee $2 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $2 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $2 + local.get $1 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $2 i32.const 3 i32.eq i32.and if - local.get $2 + local.get $1 call $~lib/rt/itcms/Object#makeGray end end end end - local.get $1 local.get $0 + local.get $4 i32.store offset=4 - local.get $1 + local.get $0 i32.const 8 i32.store offset=8 - local.get $1 + local.get $0 i32.const 1 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -3145,9 +3130,9 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $6 - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.eqz if @@ -3158,7 +3143,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=4 i64.load call $~lib/number/U64#toString diff --git a/tests/compiler/resolve-binary.optimized.wat b/tests/compiler/resolve-binary.optimized.wat index 9126eb7b18..8f15dc1791 100644 --- a/tests/compiler/resolve-binary.optimized.wat +++ b/tests/compiler/resolve-binary.optimized.wat @@ -264,7 +264,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -278,7 +278,7 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) local.get $0 - local.tee $3 + local.tee $2 i32.const 7 i32.and local.get $1 @@ -286,7 +286,7 @@ i32.and i32.or i32.const 1 - local.get $2 + local.get $3 local.tee $0 i32.const 4 i32.ge_u @@ -294,16 +294,16 @@ i32.eqz if loop $do-loop|0 - local.get $3 + local.get $2 i64.load local.get $1 i64.load i64.eq if - local.get $3 + local.get $2 i32.const 8 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 8 i32.add @@ -320,29 +320,29 @@ end loop $while-continue|1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.sub local.set $0 - local.get $2 + local.get $3 if - local.get $3 + local.get $2 i32.load16_u local.tee $4 local.get $1 i32.load16_u - local.tee $2 + local.tee $3 i32.ne if local.get $4 - local.get $2 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add @@ -699,7 +699,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -710,7 +710,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -730,37 +730,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -776,7 +776,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -786,20 +786,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -827,7 +827,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -2811,17 +2811,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -3000,39 +3000,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -3040,35 +3035,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -3076,55 +3067,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -3145,59 +3130,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -3214,7 +3192,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -3225,11 +3203,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -3243,17 +3221,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -3481,17 +3459,17 @@ local.get $0 local.get $1 i32.add - local.tee $4 + local.tee $2 i32.const 21 i32.le_s local.get $0 - local.get $4 + local.get $2 i32.le_s i32.and if (result i32) loop $for-loop|0 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 @@ -3508,26 +3486,26 @@ br $for-loop|0 end end - local.get $4 + local.get $2 i32.const 1 i32.shl i32.const 9760 i32.add i32.const 3145774 i32.store - local.get $4 + local.get $2 i32.const 2 i32.add else - local.get $4 + local.get $2 i32.const 21 i32.le_s - local.get $4 + local.get $2 i32.const 0 i32.gt_s i32.and if (result i32) - local.get $4 + local.get $2 i32.const 1 i32.shl i32.const 9760 @@ -3549,16 +3527,16 @@ i32.const 1 i32.add else - local.get $4 + local.get $2 i32.const 0 i32.le_s - local.get $4 + local.get $2 i32.const -6 i32.gt_s i32.and if (result i32) i32.const 2 - local.get $4 + local.get $2 i32.sub local.tee $2 i32.const 1 @@ -3605,60 +3583,61 @@ i32.const 9762 i32.const 101 i32.store16 - local.get $4 + local.get $2 i32.const 1 i32.sub - local.tee $1 + local.tee $0 i32.const 0 i32.lt_s - local.tee $0 + local.tee $1 if i32.const 0 - local.get $1 + local.get $0 i32.sub - local.set $1 + local.set $0 end - local.get $1 + local.get $0 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $2 i32.const 100000000 i32.ge_u i32.add @@ -3666,19 +3645,19 @@ end local.set $2 i32.const 9764 - local.get $1 + local.get $0 local.get $2 i32.const 1 i32.add - local.tee $1 + local.tee $0 call $~lib/util/number/utoa32_dec_lut i32.const 9764 i32.const 45 i32.const 43 - local.get $0 + local.get $1 select i32.store16 - local.get $1 + local.get $0 i32.const 2 i32.add else @@ -3697,86 +3676,87 @@ local.get $1 i32.const 9760 i32.add - local.tee $2 + local.tee $1 i32.const 101 i32.store16 offset=2 - local.get $2 + local.get $1 i32.const 4 i32.add - local.get $4 + local.get $2 i32.const 1 i32.sub - local.tee $1 + local.tee $2 i32.const 0 i32.lt_s local.tee $4 if i32.const 0 - local.get $1 + local.get $2 i32.sub - local.set $1 + local.set $2 end - local.get $1 + local.get $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $5 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $5 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $5 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $5 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $5 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $5 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $5 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $5 i32.const 100000000 i32.ge_u i32.add end end local.set $5 - local.get $1 + local.get $2 local.get $5 i32.const 1 i32.add - local.tee $1 + local.tee $2 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $1 i32.const 45 i32.const 43 local.get $4 select i32.store16 offset=4 local.get $0 - local.get $1 + local.get $2 i32.add i32.const 2 i32.add diff --git a/tests/compiler/resolve-elementaccess.optimized.wat b/tests/compiler/resolve-elementaccess.optimized.wat index 497ecb3d59..2cf4588e10 100644 --- a/tests/compiler/resolve-elementaccess.optimized.wat +++ b/tests/compiler/resolve-elementaccess.optimized.wat @@ -562,7 +562,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -573,7 +573,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -593,37 +593,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -639,7 +639,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -649,20 +649,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -690,7 +690,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -2503,17 +2503,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -2692,39 +2692,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2732,35 +2727,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2768,55 +2759,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -2837,59 +2822,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -2906,7 +2884,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -2917,11 +2895,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -2935,17 +2913,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -3401,82 +3379,82 @@ i32.const 101 i32.store16 offset=2 local.get $0 - local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $1 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $0 + local.get $1 i32.sub - local.set $0 + local.set $1 end - local.get $0 + local.get $1 + local.tee $4 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $4 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $4 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $4 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $4 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $4 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $4 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $4 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $4 i32.const 100000000 i32.ge_u i32.add end end local.set $4 - local.get $0 + local.get $1 local.get $4 i32.const 1 i32.add - local.tee $0 + local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $0 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.add else @@ -3499,86 +3477,87 @@ local.get $0 local.get $2 i32.add - local.tee $2 + local.tee $0 i32.const 101 i32.store16 offset=2 - local.get $2 + local.get $0 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $2 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $0 + local.get $2 i32.sub - local.set $0 + local.set $2 end - local.get $0 + local.get $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $5 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $5 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $5 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $5 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $5 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $5 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $5 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $5 i32.const 100000000 i32.ge_u i32.add end end local.set $5 - local.get $0 + local.get $2 local.get $5 i32.const 1 i32.add - local.tee $0 + local.tee $2 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $0 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 - local.get $0 local.get $1 + local.get $2 i32.add i32.const 2 i32.add @@ -3983,7 +3962,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -3997,7 +3976,7 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) local.get $0 - local.tee $3 + local.tee $2 i32.const 7 i32.and local.get $1 @@ -4005,7 +3984,7 @@ i32.and i32.or i32.const 1 - local.get $2 + local.get $3 local.tee $0 i32.const 4 i32.ge_u @@ -4013,16 +3992,16 @@ i32.eqz if loop $do-loop|0 - local.get $3 + local.get $2 i64.load local.get $1 i64.load i64.eq if - local.get $3 + local.get $2 i32.const 8 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 8 i32.add @@ -4039,29 +4018,29 @@ end loop $while-continue|1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.sub local.set $0 - local.get $2 + local.get $3 if - local.get $3 + local.get $2 i32.load16_u local.tee $4 local.get $1 i32.load16_u - local.tee $2 + local.tee $3 i32.ne if local.get $4 - local.get $2 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add diff --git a/tests/compiler/resolve-function-expression.optimized.wat b/tests/compiler/resolve-function-expression.optimized.wat index 55ef1a5465..31b856dabd 100644 --- a/tests/compiler/resolve-function-expression.optimized.wat +++ b/tests/compiler/resolve-function-expression.optimized.wat @@ -389,7 +389,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -400,7 +400,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -420,37 +420,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -466,7 +466,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -476,20 +476,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -517,7 +517,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/resolve-nested.optimized.wat b/tests/compiler/resolve-nested.optimized.wat index 4a3e2122f0..b0e9297adc 100644 --- a/tests/compiler/resolve-nested.optimized.wat +++ b/tests/compiler/resolve-nested.optimized.wat @@ -358,7 +358,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -369,7 +369,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -389,37 +389,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -435,7 +435,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -445,20 +445,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -486,7 +486,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/resolve-new.optimized.wat b/tests/compiler/resolve-new.optimized.wat index 74b764ac05..46a25983f2 100644 --- a/tests/compiler/resolve-new.optimized.wat +++ b/tests/compiler/resolve-new.optimized.wat @@ -357,7 +357,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -368,7 +368,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -388,37 +388,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -434,7 +434,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -444,20 +444,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -485,7 +485,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/resolve-propertyaccess.optimized.wat b/tests/compiler/resolve-propertyaccess.optimized.wat index 415e114c84..27ab99a740 100644 --- a/tests/compiler/resolve-propertyaccess.optimized.wat +++ b/tests/compiler/resolve-propertyaccess.optimized.wat @@ -389,7 +389,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -400,7 +400,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -420,37 +420,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -466,7 +466,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -476,20 +476,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -517,7 +517,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -1831,7 +1831,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -1845,7 +1845,7 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) local.get $0 - local.tee $3 + local.tee $2 i32.const 7 i32.and local.get $1 @@ -1853,7 +1853,7 @@ i32.and i32.or i32.const 1 - local.get $2 + local.get $3 local.tee $0 i32.const 4 i32.ge_u @@ -1861,16 +1861,16 @@ i32.eqz if loop $do-loop|0 - local.get $3 + local.get $2 i64.load local.get $1 i64.load i64.eq if - local.get $3 + local.get $2 i32.const 8 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 8 i32.add @@ -1887,29 +1887,29 @@ end loop $while-continue|1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.sub local.set $0 - local.get $2 + local.get $3 if - local.get $3 + local.get $2 i32.load16_u local.tee $4 local.get $1 i32.load16_u - local.tee $2 + local.tee $3 i32.ne if local.get $4 - local.get $2 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add diff --git a/tests/compiler/resolve-ternary.optimized.wat b/tests/compiler/resolve-ternary.optimized.wat index 8e51ba83f9..e45ae6420b 100644 --- a/tests/compiler/resolve-ternary.optimized.wat +++ b/tests/compiler/resolve-ternary.optimized.wat @@ -393,7 +393,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -404,7 +404,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -424,37 +424,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -470,7 +470,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -480,20 +480,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -521,7 +521,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -1723,7 +1723,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -1737,7 +1737,7 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) local.get $0 - local.tee $3 + local.tee $2 i32.const 7 i32.and local.get $1 @@ -1745,7 +1745,7 @@ i32.and i32.or i32.const 1 - local.get $2 + local.get $3 local.tee $0 i32.const 4 i32.ge_u @@ -1753,16 +1753,16 @@ i32.eqz if loop $do-loop|0 - local.get $3 + local.get $2 i64.load local.get $1 i64.load i64.eq if - local.get $3 + local.get $2 i32.const 8 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 8 i32.add @@ -1779,29 +1779,29 @@ end loop $while-continue|1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.sub local.set $0 - local.get $2 + local.get $3 if - local.get $3 + local.get $2 i32.load16_u local.tee $4 local.get $1 i32.load16_u - local.tee $2 + local.tee $3 i32.ne if local.get $4 - local.get $2 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add @@ -2504,17 +2504,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -2693,39 +2693,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2733,35 +2728,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2769,55 +2760,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -2838,59 +2823,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -2907,7 +2885,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -2918,11 +2896,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -2936,17 +2914,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -3174,17 +3152,17 @@ local.get $0 local.get $1 i32.add - local.tee $4 + local.tee $2 i32.const 21 i32.le_s local.get $0 - local.get $4 + local.get $2 i32.le_s i32.and if (result i32) loop $for-loop|0 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 @@ -3201,26 +3179,26 @@ br $for-loop|0 end end - local.get $4 + local.get $2 i32.const 1 i32.shl i32.const 3472 i32.add i32.const 3145774 i32.store - local.get $4 + local.get $2 i32.const 2 i32.add else - local.get $4 + local.get $2 i32.const 21 i32.le_s - local.get $4 + local.get $2 i32.const 0 i32.gt_s i32.and if (result i32) - local.get $4 + local.get $2 i32.const 1 i32.shl i32.const 3472 @@ -3242,16 +3220,16 @@ i32.const 1 i32.add else - local.get $4 + local.get $2 i32.const 0 i32.le_s - local.get $4 + local.get $2 i32.const -6 i32.gt_s i32.and if (result i32) i32.const 2 - local.get $4 + local.get $2 i32.sub local.tee $2 i32.const 1 @@ -3298,7 +3276,7 @@ i32.const 3474 i32.const 101 i32.store16 - local.get $4 + local.get $2 i32.const 1 i32.sub local.tee $0 @@ -3312,46 +3290,47 @@ local.set $0 end local.get $0 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $2 i32.const 100000000 i32.ge_u i32.add @@ -3390,86 +3369,87 @@ local.get $1 i32.const 3472 i32.add - local.tee $2 + local.tee $1 i32.const 101 i32.store16 offset=2 - local.get $2 + local.get $1 i32.const 4 i32.add - local.get $4 + local.get $2 i32.const 1 i32.sub - local.tee $1 + local.tee $2 i32.const 0 i32.lt_s local.tee $4 if i32.const 0 - local.get $1 + local.get $2 i32.sub - local.set $1 + local.set $2 end - local.get $1 + local.get $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $5 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $5 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $5 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $5 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $5 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $5 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $5 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $5 i32.const 100000000 i32.ge_u i32.add end end local.set $5 - local.get $1 + local.get $2 local.get $5 i32.const 1 i32.add - local.tee $1 + local.tee $2 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $1 i32.const 45 i32.const 43 local.get $4 select i32.store16 offset=4 local.get $0 - local.get $1 + local.get $2 i32.add i32.const 2 i32.add diff --git a/tests/compiler/resolve-unary.optimized.wat b/tests/compiler/resolve-unary.optimized.wat index 1a176d733e..3c400b361b 100644 --- a/tests/compiler/resolve-unary.optimized.wat +++ b/tests/compiler/resolve-unary.optimized.wat @@ -415,7 +415,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -426,7 +426,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -446,37 +446,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -492,7 +492,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -502,20 +502,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -543,7 +543,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -1857,7 +1857,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -1871,7 +1871,7 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) local.get $0 - local.tee $3 + local.tee $2 i32.const 7 i32.and local.get $1 @@ -1879,7 +1879,7 @@ i32.and i32.or i32.const 1 - local.get $2 + local.get $3 local.tee $0 i32.const 4 i32.ge_u @@ -1887,16 +1887,16 @@ i32.eqz if loop $do-loop|0 - local.get $3 + local.get $2 i64.load local.get $1 i64.load i64.eq if - local.get $3 + local.get $2 i32.const 8 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 8 i32.add @@ -1913,29 +1913,29 @@ end loop $while-continue|1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.sub local.set $0 - local.get $2 + local.get $3 if - local.get $3 + local.get $2 i32.load16_u local.tee $4 local.get $1 i32.load16_u - local.tee $2 + local.tee $3 i32.ne if local.get $4 - local.get $2 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add diff --git a/tests/compiler/rt/finalize.optimized.wat b/tests/compiler/rt/finalize.optimized.wat index 0958bc49ee..0314ca7727 100644 --- a/tests/compiler/rt/finalize.optimized.wat +++ b/tests/compiler/rt/finalize.optimized.wat @@ -352,7 +352,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -363,7 +363,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -383,37 +383,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -429,7 +429,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -439,20 +439,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -480,7 +480,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/rt/instanceof.optimized.wat b/tests/compiler/rt/instanceof.optimized.wat index 406f620637..de9834eaaa 100644 --- a/tests/compiler/rt/instanceof.optimized.wat +++ b/tests/compiler/rt/instanceof.optimized.wat @@ -410,7 +410,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -421,7 +421,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -441,37 +441,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -487,7 +487,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -497,20 +497,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -538,7 +538,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/rt/runtime-incremental-export.optimized.wat b/tests/compiler/rt/runtime-incremental-export.optimized.wat index f4ab9e161e..0687dde3a8 100644 --- a/tests/compiler/rt/runtime-incremental-export.optimized.wat +++ b/tests/compiler/rt/runtime-incremental-export.optimized.wat @@ -497,7 +497,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -508,7 +508,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -528,37 +528,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -574,7 +574,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -584,20 +584,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -625,7 +625,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/rt/runtime-minimal-export.optimized.wat b/tests/compiler/rt/runtime-minimal-export.optimized.wat index a7bce96aa4..f63a185774 100644 --- a/tests/compiler/rt/runtime-minimal-export.optimized.wat +++ b/tests/compiler/rt/runtime-minimal-export.optimized.wat @@ -302,7 +302,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -313,7 +313,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -333,37 +333,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -379,7 +379,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -389,20 +389,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -430,7 +430,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -1182,17 +1182,17 @@ i32.const 1376 call $byn-split-outlined-A$~lib/rt/tcms/__visit global.get $~lib/rt/tcms/pinSpace - local.tee $1 + local.tee $0 i32.load offset=4 i32.const -4 i32.and - local.set $0 + local.set $1 loop $while-continue|0 local.get $0 local.get $1 i32.ne if - local.get $0 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -1206,37 +1206,37 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 20 i32.add call $~lib/rt/__visit_members - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.set $0 + local.set $1 br $while-continue|0 end end global.get $~lib/rt/tcms/white i32.eqz - local.set $3 + local.set $5 global.get $~lib/rt/tcms/toSpace local.tee $4 i32.load offset=4 i32.const -4 i32.and - local.set $0 + local.set $1 loop $while-continue|1 - local.get $0 + local.get $1 local.get $4 i32.ne if - local.get $0 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $3 + local.get $5 i32.ne if i32.const 0 @@ -1246,31 +1246,31 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 20 i32.add call $~lib/rt/__visit_members - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.set $0 + local.set $1 br $while-continue|1 end end global.get $~lib/rt/tcms/fromSpace - local.tee $2 + local.tee $6 i32.load offset=4 i32.const -4 i32.and - local.set $0 + local.set $1 loop $while-continue|2 - local.get $0 - local.get $2 + local.get $1 + local.get $6 i32.ne if global.get $~lib/rt/tcms/white - local.get $0 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -1283,23 +1283,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.get $0 + local.get $1 i32.const 1484 i32.lt_u if - local.get $0 + local.get $1 i32.const 0 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 else global.get $~lib/rt/tcms/total - local.get $0 + local.get $1 i32.load i32.const -4 i32.and @@ -1307,10 +1307,10 @@ i32.add i32.sub global.set $~lib/rt/tcms/total - local.get $0 + local.get $1 i32.const 4 i32.add - local.tee $6 + local.tee $2 i32.const 1484 i32.ge_u if @@ -1320,20 +1320,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $6 + local.get $2 i32.const 4 i32.sub - local.set $0 - local.get $6 + local.set $1 + local.get $2 i32.const 15 i32.and i32.const 1 - local.get $6 + local.get $2 select if (result i32) i32.const 1 else - local.get $0 + local.get $1 i32.load i32.const 1 i32.and @@ -1346,31 +1346,31 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $1 call $~lib/rt/tlsf/insertBlock end end - local.set $0 + local.set $1 br $while-continue|2 end end - local.get $2 - local.get $2 + local.get $6 + local.get $6 i32.store offset=4 - local.get $2 - local.get $2 + local.get $6 + local.get $6 i32.store offset=8 local.get $4 global.set $~lib/rt/tcms/fromSpace - local.get $2 + local.get $6 global.set $~lib/rt/tcms/toSpace - local.get $3 + local.get $5 global.set $~lib/rt/tcms/white ) (func $~lib/rt/__visit_members (param $0 i32) diff --git a/tests/compiler/std-wasi/console.optimized.wat b/tests/compiler/std-wasi/console.optimized.wat index b29641a678..8b006932f0 100644 --- a/tests/compiler/std-wasi/console.optimized.wat +++ b/tests/compiler/std-wasi/console.optimized.wat @@ -492,13 +492,13 @@ else i32.const 19 end - local.tee $4 + local.tee $0 i32.const 544106784 i32.store - local.get $4 + local.get $0 i32.const 4 i32.add - local.set $4 + local.set $0 local.get $1 if local.get $1 @@ -507,18 +507,18 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.set $0 + local.set $4 i32.const 3 global.set $~argumentsLength local.get $1 - local.get $0 local.get $4 + local.get $0 call $~lib/string/String.UTF8.encodeUnsafe@varargs - local.get $4 + local.get $0 i32.add - local.set $4 + local.set $0 end - local.get $4 + local.get $0 i32.const 40 i32.store8 local.get $2 @@ -567,17 +567,17 @@ i32.add end end - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 1 i32.add i32.add - local.set $4 + local.set $0 loop $do-loop|0 - local.get $4 + local.get $0 i32.const 1 i32.sub - local.tee $4 + local.tee $0 local.get $2 i32.const 10 i32.rem_u @@ -591,7 +591,7 @@ br_if $do-loop|0 end local.get $0 - local.get $4 + local.get $1 i32.add local.tee $0 i32.const 58 @@ -647,12 +647,12 @@ i32.const 1 i32.add i32.add - local.set $4 + local.set $0 loop $do-loop|1 - local.get $4 + local.get $0 i32.const 1 i32.sub - local.tee $4 + local.tee $0 local.get $3 i32.const 10 i32.rem_u @@ -665,8 +665,8 @@ local.tee $3 br_if $do-loop|1 end + local.get $0 local.get $1 - local.get $4 i32.add local.tee $0 i32.const 2601 @@ -1271,7 +1271,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -1282,7 +1282,7 @@ call $~lib/wasi/index/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -1302,37 +1302,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -1348,7 +1348,7 @@ call $~lib/wasi/index/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -1358,20 +1358,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -1399,7 +1399,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -1997,12 +1997,12 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 br_table $case4|0 $case3|0 $case2|0 $case1|0 $case0|0 $break|0 end local.get $1 i32.load16_u offset=6 - local.tee $6 + local.tee $4 i32.const 128 i32.ge_u br_if $break|0 @@ -2016,14 +2016,14 @@ end local.get $1 i32.load16_u offset=2 - local.tee $3 + local.tee $2 i32.const 128 i32.ge_u br_if $break|0 end local.get $1 i32.load16_u - local.tee $2 + local.tee $6 i32.const 128 i32.ge_u br_if $break|0 @@ -2031,19 +2031,19 @@ i32.const 1144 i32.store i32.const 1140 - local.get $4 + local.get $3 i32.store i32.const 1144 - local.get $3 + local.get $2 i32.const 8 i32.shl - local.get $2 + local.get $6 i32.or local.get $5 i32.const 16 i32.shl i32.or - local.get $6 + local.get $4 i32.const 24 i32.shl i32.or @@ -2069,91 +2069,91 @@ return end i32.const 0 - local.set $3 + local.set $2 local.get $1 - local.tee $2 - local.get $2 + local.tee $4 + local.get $4 i32.const 20 i32.sub i32.load offset=16 i32.add - local.set $6 + local.set $5 loop $while-continue|0 - local.get $2 - local.get $6 + local.get $4 + local.get $5 i32.lt_u if - local.get $2 + local.get $4 i32.load16_u - local.tee $5 + local.tee $6 i32.const 128 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 1 i32.add else - local.get $5 + local.get $6 i32.const 2048 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 2 i32.add else - local.get $5 + local.get $6 i32.const 64512 i32.and i32.const 55296 i32.eq - local.get $6 - local.get $2 + local.get $5 + local.get $4 i32.const 2 i32.add i32.gt_u i32.and if - local.get $2 + local.get $4 i32.load16_u offset=2 i32.const 64512 i32.and i32.const 56320 i32.eq if - local.get $3 - i32.const 4 - i32.add - local.set $3 local.get $2 i32.const 4 i32.add local.set $2 + local.get $4 + i32.const 4 + i32.add + local.set $4 br $while-continue|0 end end - local.get $3 + local.get $2 i32.const 3 i32.add end end - local.set $3 - local.get $2 + local.set $2 + local.get $4 i32.const 2 i32.add - local.set $2 + local.set $4 br $while-continue|0 end end - local.get $3 + local.get $2 call $~lib/rt/tlsf/__alloc - local.set $2 + local.set $4 i32.const 3 global.set $~argumentsLength local.get $1 + local.get $3 local.get $4 - local.get $2 call $~lib/string/String.UTF8.encodeUnsafe@varargs - local.get $3 + local.get $2 i32.ne if i32.const 0 @@ -2164,10 +2164,10 @@ unreachable end i32.const 1136 - local.get $2 + local.get $4 i32.store i32.const 1140 - local.get $3 + local.get $2 i32.store local.get $0 i32.const 1136 @@ -2175,7 +2175,7 @@ i32.const 1144 call $~lib/bindings/wasi_snapshot_preview1/fd_write local.set $0 - local.get $2 + local.get $4 call $~lib/rt/tlsf/__free local.get $0 i32.const 65535 @@ -3150,7 +3150,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -3158,7 +3158,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $5 i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -3166,13 +3166,13 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $7 local.get $0 i32.load offset=16 i32.const 24 i32.mul i32.add - local.set $7 + local.set $4 local.get $3 local.set $2 loop $while-continue|0 @@ -3180,14 +3180,14 @@ local.get $7 i32.ne if - local.get $4 + local.get $7 i32.load offset=16 i32.const 1 i32.and i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.load local.tee $8 i32.store offset=8 @@ -3195,7 +3195,7 @@ local.get $8 i32.store local.get $2 - local.get $4 + local.get $7 i64.load offset=8 i64.store offset=8 local.get $2 @@ -3205,7 +3205,7 @@ i32.and i32.const 2 i32.shl - local.get $5 + local.get $6 i32.add local.tee $8 i32.load @@ -3218,20 +3218,20 @@ i32.add local.set $2 end - local.get $4 + local.get $7 i32.const 24 i32.add - local.set $4 + local.set $7 br $while-continue|0 end end local.get $0 - local.get $5 + local.get $6 i32.store - local.get $5 + local.get $6 if local.get $0 - local.get $5 + local.get $6 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -3249,7 +3249,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 + local.get $5 i32.store offset=12 local.get $0 local.get $0 diff --git a/tests/compiler/std-wasi/crypto.optimized.wat b/tests/compiler/std-wasi/crypto.optimized.wat index 8507b021c8..09424a5109 100644 --- a/tests/compiler/std-wasi/crypto.optimized.wat +++ b/tests/compiler/std-wasi/crypto.optimized.wat @@ -448,13 +448,13 @@ else i32.const 19 end - local.tee $4 + local.tee $0 i32.const 544106784 i32.store - local.get $4 + local.get $0 i32.const 4 i32.add - local.set $4 + local.set $0 local.get $1 if local.get $1 @@ -463,18 +463,18 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.set $0 + local.set $4 i32.const 3 global.set $~argumentsLength local.get $1 - local.get $0 local.get $4 + local.get $0 call $~lib/string/String.UTF8.encodeUnsafe@varargs - local.get $4 + local.get $0 i32.add - local.set $4 + local.set $0 end - local.get $4 + local.get $0 i32.const 40 i32.store8 local.get $2 @@ -523,17 +523,17 @@ i32.add end end - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 1 i32.add i32.add - local.set $4 + local.set $0 loop $do-loop|0 - local.get $4 + local.get $0 i32.const 1 i32.sub - local.tee $4 + local.tee $0 local.get $2 i32.const 10 i32.rem_u @@ -547,7 +547,7 @@ br_if $do-loop|0 end local.get $0 - local.get $4 + local.get $1 i32.add local.tee $0 i32.const 58 @@ -603,12 +603,12 @@ i32.const 1 i32.add i32.add - local.set $4 + local.set $0 loop $do-loop|1 - local.get $4 + local.get $0 i32.const 1 i32.sub - local.tee $4 + local.tee $0 local.get $3 i32.const 10 i32.rem_u @@ -621,8 +621,8 @@ local.tee $3 br_if $do-loop|1 end + local.get $0 local.get $1 - local.get $4 i32.add local.tee $0 i32.const 2601 @@ -1133,7 +1133,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -1144,7 +1144,7 @@ call $~lib/wasi/index/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -1164,37 +1164,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -1210,7 +1210,7 @@ call $~lib/wasi/index/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -1220,20 +1220,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -1261,7 +1261,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -3135,17 +3135,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -3324,39 +3324,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -3364,35 +3359,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -3400,55 +3391,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -3469,59 +3454,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -3538,7 +3516,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -3549,11 +3527,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -3567,17 +3545,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -4912,12 +4890,12 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store i32.const 0 local.get $0 - local.tee $1 + local.tee $2 i32.load offset=8 local.tee $0 local.get $0 @@ -4936,7 +4914,7 @@ select local.tee $5 local.set $7 - local.get $2 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -5030,13 +5008,13 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 local.get $0 i32.store local.get $0 i32.load offset=4 local.get $4 - local.get $1 + local.get $2 i32.load offset=4 i32.add local.get $5 diff --git a/tests/compiler/std-wasi/process.optimized.wat b/tests/compiler/std-wasi/process.optimized.wat index 65047d85d2..652a46555f 100644 --- a/tests/compiler/std-wasi/process.optimized.wat +++ b/tests/compiler/std-wasi/process.optimized.wat @@ -478,13 +478,13 @@ else i32.const 19 end - local.tee $4 + local.tee $0 i32.const 544106784 i32.store - local.get $4 + local.get $0 i32.const 4 i32.add - local.set $4 + local.set $0 local.get $1 if local.get $1 @@ -493,18 +493,18 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.set $0 + local.set $4 i32.const 3 global.set $~argumentsLength local.get $1 - local.get $0 local.get $4 + local.get $0 call $~lib/string/String.UTF8.encodeUnsafe@varargs - local.get $4 + local.get $0 i32.add - local.set $4 + local.set $0 end - local.get $4 + local.get $0 i32.const 40 i32.store8 local.get $2 @@ -553,17 +553,17 @@ i32.add end end - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 1 i32.add i32.add - local.set $4 + local.set $0 loop $do-loop|0 - local.get $4 + local.get $0 i32.const 1 i32.sub - local.tee $4 + local.tee $0 local.get $2 i32.const 10 i32.rem_u @@ -577,7 +577,7 @@ br_if $do-loop|0 end local.get $0 - local.get $4 + local.get $1 i32.add local.tee $0 i32.const 58 @@ -633,12 +633,12 @@ i32.const 1 i32.add i32.add - local.set $4 + local.set $0 loop $do-loop|1 - local.get $4 + local.get $0 i32.const 1 i32.sub - local.tee $4 + local.tee $0 local.get $3 i32.const 10 i32.rem_u @@ -651,8 +651,8 @@ local.tee $3 br_if $do-loop|1 end + local.get $0 local.get $1 - local.get $4 i32.add local.tee $0 i32.const 2601 @@ -1257,7 +1257,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -1268,7 +1268,7 @@ call $~lib/wasi/index/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -1288,37 +1288,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -1334,7 +1334,7 @@ call $~lib/wasi/index/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -1344,20 +1344,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -1385,7 +1385,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -3189,17 +3189,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -3378,39 +3378,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -3418,35 +3413,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -3454,55 +3445,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -3523,59 +3508,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -3592,7 +3570,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -3603,11 +3581,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -3621,17 +3599,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -4392,7 +4370,7 @@ local.get $2 i32.const 4 i32.sub - local.tee $4 + local.tee $3 i32.const 1 i32.shl local.get $0 @@ -4406,7 +4384,7 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $3 + local.tee $4 i32.const 10000 i32.rem_u local.tee $2 @@ -4429,7 +4407,7 @@ i64.shl i64.or i64.store - local.get $4 + local.get $3 i32.const 4 i32.sub local.tee $2 @@ -4437,7 +4415,7 @@ i32.shl local.get $0 i32.add - local.get $3 + local.get $4 i32.const 10000 i32.div_u local.tee $3 @@ -4502,20 +4480,21 @@ return end local.get $0 - i32.load offset=4 local.tee $1 + i32.load offset=4 + local.tee $2 local.get $0 i32.load offset=12 i32.const 2 i32.shl i32.add - local.set $2 + local.set $0 loop $while-continue|0 - local.get $1 + local.get $0 local.get $2 - i32.lt_u + i32.gt_u if - local.get $1 + local.get $2 i32.load local.tee $3 if @@ -4525,14 +4504,14 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $1 + local.get $2 i32.const 4 i32.add - local.set $1 + local.set $2 br $while-continue|0 end end - local.get $0 + local.get $1 i32.load local.tee $0 if @@ -4792,18 +4771,18 @@ end i32.const 1088 i32.load - local.tee $5 + local.tee $6 i32.const 2 i32.shl local.tee $0 i32.const 1092 i32.load i32.add - local.tee $6 + local.tee $7 call $~lib/rt/tlsf/__alloc - local.tee $2 + local.tee $4 local.get $0 - local.get $2 + local.get $4 i32.add call $~lib/bindings/wasi_snapshot_preview1/environ_get local.tee $0 @@ -4841,12 +4820,12 @@ local.get $0 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $4 + local.tee $1 i32.store - local.get $4 + local.get $1 if local.get $0 - local.get $4 + local.get $1 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -4856,12 +4835,12 @@ local.get $0 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $4 + local.tee $1 i32.store offset=8 - local.get $4 + local.get $1 if local.get $0 - local.get $4 + local.get $1 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -4881,95 +4860,95 @@ local.get $0 i32.store loop $for-loop|0 - local.get $3 local.get $5 + local.get $6 i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $5 i32.const 2 i32.shl - local.get $2 + local.get $4 i32.add i32.load local.tee $1 local.get $1 - local.get $6 + local.get $7 i32.add - local.get $2 + local.get $4 i32.sub call $~lib/string/String.UTF8.decodeUnsafe - local.tee $7 + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 5168 i32.store offset=8 i32.const 0 - local.set $1 + local.set $8 block $__inlined_func$~lib/string/String#indexOf i32.const 5164 i32.load i32.const 1 i32.shr_u - local.tee $4 + local.tee $2 i32.eqz br_if $__inlined_func$~lib/string/String#indexOf i32.const -1 - local.set $1 - local.get $7 + local.set $8 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $8 + local.tee $1 i32.eqz br_if $__inlined_func$~lib/string/String#indexOf i32.const 0 - local.get $8 - local.get $8 + local.get $1 + local.get $1 select - local.set $1 - local.get $8 - local.get $4 - i32.sub local.set $8 + local.get $1 + local.get $2 + i32.sub + local.set $1 loop $for-loop|00 local.get $1 local.get $8 - i32.le_s + i32.ge_s if - local.get $7 - local.get $1 + local.get $3 + local.get $8 i32.const 5168 - local.get $4 + local.get $2 call $~lib/util/string/compareImpl i32.eqz br_if $__inlined_func$~lib/string/String#indexOf - local.get $1 + local.get $8 i32.const 1 i32.add - local.set $1 + local.set $8 br $for-loop|00 end end i32.const -1 - local.set $1 + local.set $8 end - local.get $1 + local.get $8 i32.const -1 i32.xor if - local.get $7 + local.get $3 i32.const 0 - local.get $1 + local.get $8 call $~lib/string/String#substring - local.set $4 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.store offset=8 - local.get $7 - local.get $1 + local.get $3 + local.get $8 i32.const 1 i32.add i32.const 2147483647 @@ -4979,7 +4958,7 @@ local.get $1 i32.store offset=12 local.get $0 - local.get $4 + local.get $2 local.get $1 call $~lib/map/Map<~lib/string/String,~lib/string/String>#set else @@ -4987,18 +4966,18 @@ i32.const 5200 i32.store offset=12 local.get $0 - local.get $7 + local.get $3 i32.const 5200 call $~lib/map/Map<~lib/string/String,~lib/string/String>#set end - local.get $3 + local.get $5 i32.const 1 i32.add - local.set $3 + local.set $5 br $for-loop|0 end end - local.get $2 + local.get $4 call $~lib/rt/tlsf/__free global.get $~lib/memory/__stack_pointer i32.const 16 @@ -6390,11 +6369,11 @@ local.get $1 local.get $1 call $~lib/util/hash/HASH<~lib/string/String> - local.tee $8 + local.tee $7 call $~lib/map/Map<~lib/string/String,~lib/string/String>#find - local.tee $4 + local.tee $3 if - local.get $4 + local.get $3 local.get $2 i32.store offset=4 local.get $2 @@ -6431,7 +6410,7 @@ i32.const 1 i32.or end - local.set $9 + local.set $8 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -6441,29 +6420,29 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i64.const 0 i64.store - local.get $4 + local.get $3 i32.const 0 i32.store offset=8 - local.get $4 - local.get $9 + local.get $3 + local.get $8 i32.const 1 i32.add - local.tee $4 + local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $10 + local.tee $9 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -6471,51 +6450,51 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $11 + local.tee $10 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $6 + local.set $5 local.get $4 local.set $3 loop $while-continue|0 - local.get $6 - local.get $11 + local.get $5 + local.get $10 i32.ne if - local.get $11 + local.get $10 i32.load offset=8 i32.const 1 i32.and i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $10 i32.load - local.tee $5 + local.tee $11 i32.store offset=8 local.get $3 - local.get $5 + local.get $11 i32.store local.get $3 - local.get $11 + local.get $10 i32.load offset=4 i32.store offset=4 local.get $3 - local.get $5 + local.get $11 call $~lib/util/hash/HASH<~lib/string/String> - local.get $9 + local.get $8 i32.and i32.const 2 i32.shl - local.get $10 + local.get $9 i32.add - local.tee $5 + local.tee $11 i32.load i32.store offset=8 - local.get $5 + local.get $11 local.get $3 i32.store local.get $3 @@ -6523,25 +6502,25 @@ i32.add local.set $3 end - local.get $11 + local.get $10 i32.const 12 i32.add - local.set $11 + local.set $10 br $while-continue|0 end end local.get $0 - local.get $10 + local.get $9 i32.store - local.get $10 + local.get $9 if local.get $0 - local.get $10 + local.get $9 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $9 + local.get $8 i32.store offset=4 local.get $0 local.get $4 @@ -6554,7 +6533,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -6582,7 +6561,7 @@ i32.mul local.get $3 i32.add - local.tee $4 + local.tee $3 local.get $1 i32.store local.get $1 @@ -6592,7 +6571,7 @@ i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $3 local.get $2 i32.store offset=4 local.get $2 @@ -6608,12 +6587,12 @@ i32.const 1 i32.add i32.store offset=20 - local.get $4 + local.get $3 local.get $0 i32.load local.get $0 i32.load offset=4 - local.get $8 + local.get $7 i32.and i32.const 2 i32.shl @@ -6622,7 +6601,7 @@ i32.load i32.store offset=8 local.get $0 - local.get $4 + local.get $3 i32.store end global.get $~lib/memory/__stack_pointer diff --git a/tests/compiler/std/array-access.optimized.wat b/tests/compiler/std/array-access.optimized.wat index fa0060083b..93906c50d8 100644 --- a/tests/compiler/std/array-access.optimized.wat +++ b/tests/compiler/std/array-access.optimized.wat @@ -61,6 +61,7 @@ i32.and i32.const 1 local.get $1 + local.tee $0 i32.const 4 i32.ge_u select @@ -81,10 +82,10 @@ i32.const 8 i32.add local.set $3 - local.get $1 + local.get $0 i32.const 4 i32.sub - local.tee $1 + local.tee $0 i32.const 4 i32.ge_u br_if $do-loop|0 @@ -92,23 +93,23 @@ end end loop $while-continue|1 - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 1 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 if local.get $3 i32.load16_u - local.tee $0 + local.tee $1 local.get $2 i32.load16_u local.tee $4 i32.ne if local.get $4 - local.get $0 + local.get $1 i32.sub br $__inlined_func$~lib/util/string/compareImpl end diff --git a/tests/compiler/std/array-literal.optimized.wat b/tests/compiler/std/array-literal.optimized.wat index 2d25087aa6..2a60e619fa 100644 --- a/tests/compiler/std/array-literal.optimized.wat +++ b/tests/compiler/std/array-literal.optimized.wat @@ -592,7 +592,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -603,7 +603,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -623,37 +623,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -669,7 +669,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -679,20 +679,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -720,7 +720,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index 517f1cf6bd..46f51d88f6 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -1200,7 +1200,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -1211,7 +1211,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -1231,37 +1231,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -1277,7 +1277,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -1287,20 +1287,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -1328,7 +1328,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -2696,17 +2696,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -2885,39 +2885,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2925,35 +2920,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2961,55 +2952,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -3030,59 +3015,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -3099,7 +3077,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -3110,11 +3088,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -3128,17 +3106,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -4686,41 +4664,41 @@ (func $~lib/util/sort/insertionSort (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (local $5 f32) (local $6 f32) - (local $7 f32) - (local $8 i32) + (local $7 i32) + (local $8 f32) local.get $3 local.get $2 local.get $1 i32.sub i32.const 1 i32.add - local.tee $8 + local.tee $7 local.get $3 i32.sub i32.const 1 i32.and i32.sub - local.get $8 + local.get $7 i32.const 1 i32.and local.get $3 select local.get $1 i32.add - local.set $8 + local.set $7 loop $for-loop|0 local.get $2 - local.get $8 + local.get $7 i32.ge_s if - local.get $8 + local.get $7 i32.const 2 i32.shl local.get $0 i32.add local.tee $3 f32.load offset=4 - local.tee $7 + local.tee $8 local.set $6 local.get $3 f32.load @@ -4728,7 +4706,7 @@ i32.const 2 global.set $~argumentsLength local.get $5 - local.get $7 + local.get $8 local.get $4 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -4737,10 +4715,10 @@ if local.get $5 local.set $6 - local.get $7 + local.get $8 local.set $5 end - local.get $8 + local.get $7 i32.const 1 i32.sub local.set $3 @@ -4756,10 +4734,10 @@ local.get $0 i32.add f32.load - local.set $7 + local.set $8 i32.const 2 global.set $~argumentsLength - local.get $7 + local.get $8 local.get $5 local.get $4 i32.load @@ -4772,7 +4750,7 @@ i32.shl local.get $0 i32.add - local.get $7 + local.get $8 f32.store offset=8 local.get $3 i32.const 1 @@ -4834,10 +4812,10 @@ i32.add local.get $6 f32.store offset=4 - local.get $8 + local.get $7 i32.const 2 i32.add - local.set $8 + local.set $7 br $for-loop|0 end end @@ -5368,27 +5346,25 @@ i32.wrap_i64 i32.clz local.set $1 - local.get $4 - local.set $8 loop $for-loop|3 local.get $1 - local.get $8 + local.get $4 i32.lt_u if - local.get $8 + local.get $4 i32.const 2 i32.shl local.get $14 i32.add i32.load - local.tee $4 + local.tee $8 i32.const -1 i32.ne if local.get $0 - local.get $4 - local.get $13 local.get $8 + local.get $13 + local.get $4 i32.const 2 i32.shl local.tee $3 @@ -5405,13 +5381,13 @@ i32.add i32.const -1 i32.store - local.get $4 + local.get $8 local.set $3 end - local.get $8 + local.get $4 i32.const 1 i32.sub - local.set $8 + local.set $4 br $for-loop|3 end end @@ -5574,41 +5550,41 @@ (func $~lib/util/sort/insertionSort (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (local $5 f64) (local $6 f64) - (local $7 f64) - (local $8 i32) + (local $7 i32) + (local $8 f64) local.get $3 local.get $2 local.get $1 i32.sub i32.const 1 i32.add - local.tee $8 + local.tee $7 local.get $3 i32.sub i32.const 1 i32.and i32.sub - local.get $8 + local.get $7 i32.const 1 i32.and local.get $3 select local.get $1 i32.add - local.set $8 + local.set $7 loop $for-loop|0 local.get $2 - local.get $8 + local.get $7 i32.ge_s if - local.get $8 + local.get $7 i32.const 3 i32.shl local.get $0 i32.add local.tee $3 f64.load offset=8 - local.tee $7 + local.tee $8 local.set $6 local.get $3 f64.load @@ -5616,7 +5592,7 @@ i32.const 2 global.set $~argumentsLength local.get $5 - local.get $7 + local.get $8 local.get $4 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -5625,10 +5601,10 @@ if local.get $5 local.set $6 - local.get $7 + local.get $8 local.set $5 end - local.get $8 + local.get $7 i32.const 1 i32.sub local.set $3 @@ -5644,10 +5620,10 @@ local.get $0 i32.add f64.load - local.set $7 + local.set $8 i32.const 2 global.set $~argumentsLength - local.get $7 + local.get $8 local.get $5 local.get $4 i32.load @@ -5660,7 +5636,7 @@ i32.shl local.get $0 i32.add - local.get $7 + local.get $8 f64.store offset=16 local.get $3 i32.const 1 @@ -5722,10 +5698,10 @@ i32.add local.get $6 f64.store offset=8 - local.get $8 + local.get $7 i32.const 2 i32.add - local.set $8 + local.set $7 br $for-loop|0 end end @@ -6256,27 +6232,25 @@ i32.wrap_i64 i32.clz local.set $1 - local.get $4 - local.set $8 loop $for-loop|3 local.get $1 - local.get $8 + local.get $4 i32.lt_u if - local.get $8 + local.get $4 i32.const 2 i32.shl local.get $14 i32.add i32.load - local.tee $4 + local.tee $8 i32.const -1 i32.ne if local.get $0 - local.get $4 - local.get $13 local.get $8 + local.get $13 + local.get $4 i32.const 2 i32.shl local.tee $3 @@ -6293,13 +6267,13 @@ i32.add i32.const -1 i32.store - local.get $4 + local.get $8 local.set $3 end - local.get $8 + local.get $4 i32.const 1 i32.sub - local.set $8 + local.set $4 br $for-loop|3 end end @@ -6877,49 +6851,49 @@ local.set $1 local.get $0 i32.load offset=4 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $3 + local.tee $4 select i32.store local.get $1 - local.get $7 local.get $3 + local.get $4 select local.set $1 local.get $0 i32.load offset=8 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $3 + local.tee $4 select i32.store offset=4 local.get $0 local.get $1 - local.get $7 local.get $3 + local.get $4 select i32.store offset=8 end @@ -6928,14 +6902,14 @@ local.set $1 local.get $0 i32.load offset=4 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -6946,7 +6920,7 @@ i32.store local.get $0 local.get $1 - local.get $7 + local.get $3 local.get $2 select i32.store offset=4 @@ -6966,35 +6940,35 @@ local.get $1 i32.clz i32.sub - local.tee $5 + local.tee $6 i32.const 2 i32.shl - local.tee $6 + local.tee $5 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc local.tee $11 - local.get $6 + local.get $5 i32.add local.set $10 i32.const 0 - local.set $6 + local.set $5 loop $for-loop|1 local.get $5 local.get $6 - i32.gt_u + i32.lt_u if - local.get $6 + local.get $5 i32.const 2 i32.shl local.get $11 i32.add i32.const -1 i32.store - local.get $6 + local.get $5 i32.const 1 i32.add - local.set $6 + local.set $5 br $for-loop|1 end end @@ -7014,7 +6988,7 @@ local.tee $1 i32.const 1 i32.add - local.tee $6 + local.tee $5 i32.const 32 i32.lt_s if @@ -7027,7 +7001,7 @@ i32.lt_s select local.tee $1 - local.get $6 + local.get $5 local.get $2 call $~lib/util/sort/insertionSort end @@ -7040,37 +7014,37 @@ local.get $1 i32.const 1 i32.add - local.tee $5 + local.tee $6 local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $6 - local.get $5 + local.tee $5 + local.get $6 i32.sub i32.const 1 i32.add - local.tee $4 + local.tee $7 i32.const 32 i32.lt_s if local.get $0 - local.get $5 + local.get $6 local.get $12 - local.get $5 + local.get $6 i32.const 31 i32.add - local.tee $6 - local.get $6 + local.tee $5 + local.get $5 local.get $12 i32.gt_s select - local.tee $6 - local.get $4 + local.tee $5 + local.get $7 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $5 + local.get $6 i32.add i64.extend_i32_u i64.const 30 @@ -7094,13 +7068,13 @@ i64.xor i32.wrap_i64 i32.clz - local.set $4 + local.set $7 loop $for-loop|3 local.get $4 local.get $7 - i32.lt_u + i32.gt_u if - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $11 @@ -7113,7 +7087,7 @@ local.get $0 local.get $13 local.get $10 - local.get $7 + local.get $4 i32.const 2 i32.shl local.tee $3 @@ -7133,39 +7107,39 @@ local.get $13 local.set $3 end - local.get $7 + local.get $4 i32.const 1 i32.sub - local.set $7 + local.set $4 br $for-loop|3 end end local.get $11 - local.get $4 + local.get $7 i32.const 2 i32.shl - local.tee $7 + local.tee $4 i32.add local.get $3 i32.store - local.get $7 + local.get $4 local.get $10 i32.add local.get $1 i32.store - local.get $5 - local.set $3 local.get $6 + local.set $3 + local.get $5 local.set $1 - local.get $4 - local.set $7 + local.get $7 + local.set $4 br $while-continue|2 end end loop $for-loop|4 - local.get $7 + local.get $4 if - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $11 @@ -7177,7 +7151,7 @@ if local.get $0 local.get $1 - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $10 @@ -7190,10 +7164,10 @@ local.get $2 call $~lib/util/sort/mergeRuns end - local.get $7 + local.get $4 i32.const 1 i32.sub - local.set $7 + local.set $4 br $for-loop|4 end end @@ -7669,49 +7643,49 @@ local.set $1 local.get $0 i32.load offset=4 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $3 + local.tee $4 select i32.store local.get $1 - local.get $7 local.get $3 + local.get $4 select local.set $1 local.get $0 i32.load offset=8 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $3 + local.tee $4 select i32.store offset=4 local.get $0 local.get $1 - local.get $7 local.get $3 + local.get $4 select i32.store offset=8 end @@ -7720,14 +7694,14 @@ local.set $1 local.get $0 i32.load offset=4 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -7738,7 +7712,7 @@ i32.store local.get $0 local.get $1 - local.get $7 + local.get $3 local.get $2 select i32.store offset=4 @@ -7758,35 +7732,35 @@ local.get $1 i32.clz i32.sub - local.tee $5 + local.tee $6 i32.const 2 i32.shl - local.tee $6 + local.tee $5 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc local.tee $11 - local.get $6 + local.get $5 i32.add local.set $10 i32.const 0 - local.set $6 + local.set $5 loop $for-loop|1 local.get $5 local.get $6 - i32.gt_u + i32.lt_u if - local.get $6 + local.get $5 i32.const 2 i32.shl local.get $11 i32.add i32.const -1 i32.store - local.get $6 + local.get $5 i32.const 1 i32.add - local.set $6 + local.set $5 br $for-loop|1 end end @@ -7806,7 +7780,7 @@ local.tee $1 i32.const 1 i32.add - local.tee $6 + local.tee $5 i32.const 32 i32.lt_s if @@ -7819,7 +7793,7 @@ i32.lt_s select local.tee $1 - local.get $6 + local.get $5 local.get $2 call $~lib/util/sort/insertionSort end @@ -7832,37 +7806,37 @@ local.get $1 i32.const 1 i32.add - local.tee $5 + local.tee $6 local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $6 - local.get $5 + local.tee $5 + local.get $6 i32.sub i32.const 1 i32.add - local.tee $4 + local.tee $7 i32.const 32 i32.lt_s if local.get $0 - local.get $5 + local.get $6 local.get $12 - local.get $5 + local.get $6 i32.const 31 i32.add - local.tee $6 - local.get $6 + local.tee $5 + local.get $5 local.get $12 i32.gt_s select - local.tee $6 - local.get $4 + local.tee $5 + local.get $7 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $5 + local.get $6 i32.add i64.extend_i32_u i64.const 30 @@ -7886,13 +7860,13 @@ i64.xor i32.wrap_i64 i32.clz - local.set $4 + local.set $7 loop $for-loop|3 local.get $4 local.get $7 - i32.lt_u + i32.gt_u if - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $11 @@ -7905,7 +7879,7 @@ local.get $0 local.get $13 local.get $10 - local.get $7 + local.get $4 i32.const 2 i32.shl local.tee $3 @@ -7925,39 +7899,39 @@ local.get $13 local.set $3 end - local.get $7 + local.get $4 i32.const 1 i32.sub - local.set $7 + local.set $4 br $for-loop|3 end end local.get $11 - local.get $4 + local.get $7 i32.const 2 i32.shl - local.tee $7 + local.tee $4 i32.add local.get $3 i32.store - local.get $7 + local.get $4 local.get $10 i32.add local.get $1 i32.store - local.get $5 - local.set $3 local.get $6 + local.set $3 + local.get $5 local.set $1 - local.get $4 - local.set $7 + local.get $7 + local.set $4 br $while-continue|2 end end loop $for-loop|4 - local.get $7 + local.get $4 if - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $11 @@ -7969,7 +7943,7 @@ if local.get $0 local.get $1 - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $10 @@ -7982,10 +7956,10 @@ local.get $2 call $~lib/util/sort/mergeRuns end - local.get $7 + local.get $4 i32.const 1 i32.sub - local.set $7 + local.set $4 br $for-loop|4 end end @@ -8093,33 +8067,33 @@ select local.get $1 i32.add - local.set $7 + local.set $8 loop $for-loop|0 local.get $2 - local.get $7 + local.get $8 i32.ge_s if global.get $~lib/memory/__stack_pointer - local.tee $5 - local.get $7 + local.tee $3 + local.get $8 i32.const 2 i32.shl local.get $0 i32.add local.tee $6 i32.load - local.tee $3 + local.tee $5 i32.store - local.get $5 + local.get $3 local.get $6 i32.load offset=4 local.tee $6 i32.store offset=4 local.get $6 - local.set $5 + local.set $3 i32.const 2 global.set $~argumentsLength - local.get $3 + local.get $5 local.get $6 local.get $4 i32.load @@ -8127,12 +8101,12 @@ i32.const 0 i32.le_s if - local.get $3 - local.set $5 - local.get $6 + local.get $5 local.set $3 + local.get $6 + local.set $5 end - local.get $7 + local.get $8 i32.const 1 i32.sub local.set $6 @@ -8149,12 +8123,12 @@ local.get $0 i32.add i32.load - local.tee $8 + local.tee $7 i32.store i32.const 2 global.set $~argumentsLength - local.get $8 - local.get $3 + local.get $7 + local.get $5 local.get $4 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -8166,7 +8140,7 @@ i32.shl local.get $0 i32.add - local.get $8 + local.get $7 i32.store offset=8 local.get $6 i32.const 1 @@ -8181,7 +8155,7 @@ i32.shl local.get $0 i32.add - local.get $3 + local.get $5 i32.store offset=8 loop $while-continue|2 local.get $1 @@ -8196,12 +8170,12 @@ local.get $0 i32.add i32.load - local.tee $3 + local.tee $5 i32.store i32.const 2 global.set $~argumentsLength - local.get $3 local.get $5 + local.get $3 local.get $4 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -8213,7 +8187,7 @@ i32.shl local.get $0 i32.add - local.get $3 + local.get $5 i32.store offset=4 local.get $6 i32.const 1 @@ -8228,12 +8202,12 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $3 i32.store offset=4 - local.get $7 + local.get $8 i32.const 2 i32.add - local.set $7 + local.set $8 br $for-loop|0 end end @@ -8400,10 +8374,10 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) + (local $9 i64) (local $10 i32) (local $11 i32) - (local $12 i64) + (local $12 i32) (local $13 i32) global.get $~lib/memory/__stack_pointer i32.const 12 @@ -8421,10 +8395,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $4 i64.const 0 i64.store - local.get $7 + local.get $4 i32.const 0 i32.store offset=8 block $folding-inner0 @@ -8452,34 +8426,34 @@ local.tee $1 local.get $0 i32.load - local.tee $7 + local.tee $3 i32.store local.get $1 local.get $0 i32.load offset=4 - local.tee $3 + local.tee $1 i32.store offset=4 i32.const 2 global.set $~argumentsLength local.get $0 + local.get $1 local.get $3 - local.get $7 - local.get $7 local.get $3 + local.get $1 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $4 select i32.store global.get $~lib/memory/__stack_pointer - local.get $7 local.get $3 local.get $1 + local.get $4 select - local.tee $7 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -8490,21 +8464,21 @@ global.set $~argumentsLength local.get $0 local.get $3 - local.get $7 - local.get $7 + local.get $1 + local.get $1 local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $4 select i32.store offset=4 local.get $0 - local.get $7 - local.get $3 local.get $1 + local.get $3 + local.get $4 select i32.store offset=8 end @@ -8512,32 +8486,32 @@ local.tee $1 local.get $0 i32.load - local.tee $7 + local.tee $3 i32.store offset=8 local.get $1 local.get $0 i32.load offset=4 - local.tee $3 + local.tee $1 i32.store offset=4 i32.const 2 global.set $~argumentsLength local.get $0 + local.get $1 local.get $3 - local.get $7 - local.get $7 local.get $3 + local.get $1 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $1 + local.tee $2 select i32.store local.get $0 - local.get $7 local.get $3 local.get $1 + local.get $2 select i32.store offset=4 br $folding-inner0 @@ -8559,32 +8533,32 @@ local.tee $6 i32.const 2 i32.shl - local.tee $7 + local.tee $4 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $9 - local.get $7 + local.tee $12 + local.get $4 i32.add - local.set $10 + local.set $11 i32.const 0 - local.set $5 + local.set $4 loop $for-loop|1 - local.get $5 + local.get $4 local.get $6 i32.lt_u if - local.get $5 + local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $12 i32.add i32.const -1 i32.store - local.get $5 + local.get $4 i32.const 1 i32.add - local.set $5 + local.set $4 br $for-loop|1 end end @@ -8592,38 +8566,38 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $11 + local.set $10 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $8 + local.tee $13 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 i32.const 1 i32.add - local.tee $7 + local.tee $4 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $8 + local.get $13 i32.const 31 - local.get $8 + local.get $13 i32.const 31 i32.lt_s select local.tee $1 - local.get $7 + local.get $4 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 local.get $1 - local.get $8 + local.get $13 i32.lt_s if local.get $0 @@ -8631,31 +8605,31 @@ i32.const 1 i32.add local.tee $6 - local.get $8 + local.get $13 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $5 + local.tee $4 local.get $6 i32.sub i32.const 1 i32.add - local.tee $13 + local.tee $7 i32.const 32 i32.lt_s if local.get $0 local.get $6 - local.get $8 + local.get $13 local.get $6 i32.const 31 i32.add - local.tee $7 - local.get $7 - local.get $8 + local.tee $4 + local.get $4 + local.get $13 i32.gt_s select - local.tee $5 - local.get $13 + local.tee $4 + local.get $7 local.get $2 call $~lib/util/sort/insertionSort end @@ -8665,13 +8639,13 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $13 i32.const 1 i32.add i64.extend_i32_u - local.tee $12 + local.tee $9 i64.div_u - local.get $5 + local.get $4 local.get $6 i32.add i32.const 1 @@ -8679,31 +8653,31 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $9 i64.div_u i64.xor i32.wrap_i64 i32.clz local.set $7 loop $for-loop|3 - local.get $4 + local.get $5 local.get $7 i32.gt_u if - local.get $4 + local.get $5 i32.const 2 i32.shl - local.get $9 + local.get $12 i32.add i32.load - local.tee $13 + local.tee $8 i32.const -1 i32.ne if local.get $0 - local.get $13 - local.get $10 - local.get $4 + local.get $8 + local.get $11 + local.get $5 i32.const 2 i32.shl local.tee $3 @@ -8712,53 +8686,53 @@ i32.const 1 i32.add local.get $1 - local.get $11 + local.get $10 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $9 + local.get $12 i32.add i32.const -1 i32.store - local.get $13 + local.get $8 local.set $3 end - local.get $4 + local.get $5 i32.const 1 i32.sub - local.set $4 + local.set $5 br $for-loop|3 end end - local.get $9 + local.get $12 local.get $7 i32.const 2 i32.shl - local.tee $4 + local.tee $5 i32.add local.get $3 i32.store - local.get $4 - local.get $10 + local.get $5 + local.get $11 i32.add local.get $1 i32.store local.get $6 local.set $3 - local.get $5 + local.get $4 local.set $1 local.get $7 - local.set $4 + local.set $5 br $while-continue|2 end end loop $for-loop|4 - local.get $4 + local.get $5 if - local.get $4 + local.get $5 i32.const 2 i32.shl - local.get $9 + local.get $12 i32.add i32.load local.tee $1 @@ -8767,29 +8741,29 @@ if local.get $0 local.get $1 - local.get $4 + local.get $5 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.load i32.const 1 i32.add - local.get $8 - local.get $11 + local.get $13 + local.get $10 local.get $2 call $~lib/util/sort/mergeRuns end - local.get $4 + local.get $5 i32.const 1 i32.sub - local.set $4 + local.set $5 br $for-loop|4 end end - local.get $11 + local.get $10 call $~lib/rt/tlsf/__free - local.get $9 + local.get $12 call $~lib/rt/tlsf/__free global.get $~lib/memory/__stack_pointer i32.const 12 @@ -8958,14 +8932,14 @@ if local.get $0 i32.load16_u - local.tee $4 + local.tee $2 local.get $1 i32.load16_u - local.tee $2 + local.tee $4 i32.ne if - local.get $4 local.get $2 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -9015,7 +8989,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -9029,7 +9003,7 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) local.get $0 - local.tee $3 + local.tee $2 i32.const 7 i32.and local.get $1 @@ -9037,7 +9011,7 @@ i32.and i32.or i32.const 1 - local.get $2 + local.get $3 local.tee $0 i32.const 4 i32.ge_u @@ -9045,16 +9019,16 @@ i32.eqz if loop $do-loop|0 - local.get $3 + local.get $2 i64.load local.get $1 i64.load i64.eq if - local.get $3 + local.get $2 i32.const 8 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 8 i32.add @@ -9071,29 +9045,29 @@ end loop $while-continue|1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.sub local.set $0 - local.get $2 + local.get $3 if - local.get $3 + local.get $2 i32.load16_u local.tee $4 local.get $1 i32.load16_u - local.tee $2 + local.tee $3 i32.ne if local.get $4 - local.get $2 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add @@ -9381,7 +9355,7 @@ (local $7 i32) local.get $0 i32.load offset=4 - local.set $4 + local.set $6 local.get $0 i32.load offset=12 local.set $0 @@ -9407,7 +9381,7 @@ local.get $0 i32.const 1 i32.sub - local.tee $3 + local.tee $7 i32.const 0 i32.lt_s if @@ -9419,10 +9393,10 @@ local.set $0 br $__inlined_func$~lib/util/string/joinIntegerArray end - local.get $3 + local.get $7 i32.eqz if - local.get $4 + local.get $6 i32.load call $~lib/util/number/itoa32 local.set $0 @@ -9433,7 +9407,7 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 local.get $1 i32.const 20 i32.sub @@ -9446,7 +9420,7 @@ i32.mul i32.const 11 i32.add - local.tee $7 + local.tee $3 i32.const 1 i32.shl i32.const 1 @@ -9454,19 +9428,19 @@ local.tee $0 i32.store loop $for-loop|0 - local.get $3 - local.get $6 - i32.gt_s + local.get $4 + local.get $7 + i32.lt_s if local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.get $6 + local.get $4 i32.const 2 i32.shl - local.get $4 + local.get $6 i32.add i32.load call $~lib/util/number/itoa_buffered @@ -9490,23 +9464,23 @@ i32.add local.set $2 end - local.get $6 + local.get $4 i32.const 1 i32.add - local.set $6 + local.set $4 br $for-loop|0 end end - local.get $7 + local.get $3 local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.get $3 + local.get $7 i32.const 2 i32.shl - local.get $4 + local.get $6 i32.add i32.load call $~lib/util/number/itoa_buffered @@ -9606,7 +9580,7 @@ (local $7 i32) local.get $0 i32.load offset=4 - local.set $4 + local.set $6 local.get $0 i32.load offset=12 local.set $0 @@ -9632,7 +9606,7 @@ local.get $0 i32.const 1 i32.sub - local.tee $3 + local.tee $7 i32.const 0 i32.lt_s if @@ -9644,10 +9618,10 @@ local.set $0 br $__inlined_func$~lib/util/string/joinIntegerArray end - local.get $3 + local.get $7 i32.eqz if - local.get $4 + local.get $6 i32.load call $~lib/util/number/utoa32 local.set $0 @@ -9658,7 +9632,7 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 local.get $1 i32.const 20 i32.sub @@ -9671,7 +9645,7 @@ i32.mul i32.const 10 i32.add - local.tee $7 + local.tee $3 i32.const 1 i32.shl i32.const 1 @@ -9679,19 +9653,19 @@ local.tee $0 i32.store loop $for-loop|0 - local.get $3 - local.get $6 - i32.gt_s + local.get $4 + local.get $7 + i32.lt_s if local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.get $6 + local.get $4 i32.const 2 i32.shl - local.get $4 + local.get $6 i32.add i32.load call $~lib/util/number/itoa_buffered @@ -9715,23 +9689,23 @@ i32.add local.set $2 end - local.get $6 + local.get $4 i32.const 1 i32.add - local.set $6 + local.set $4 br $for-loop|0 end end - local.get $7 + local.get $3 local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.get $3 + local.get $7 i32.const 2 i32.shl - local.get $4 + local.get $6 i32.add i32.load call $~lib/util/number/itoa_buffered @@ -10336,82 +10310,82 @@ i32.const 101 i32.store16 offset=2 local.get $0 - local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $1 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $0 + local.get $1 i32.sub - local.set $0 + local.set $1 end - local.get $0 + local.get $1 + local.tee $4 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $4 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $4 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $4 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $4 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $4 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $4 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $4 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $4 i32.const 100000000 i32.ge_u i32.add end end local.set $4 - local.get $0 + local.get $1 local.get $4 i32.const 1 i32.add - local.tee $0 + local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $0 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.add else @@ -10434,86 +10408,87 @@ local.get $0 local.get $2 i32.add - local.tee $2 + local.tee $0 i32.const 101 i32.store16 offset=2 - local.get $2 + local.get $0 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $2 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $0 + local.get $2 i32.sub - local.set $0 + local.set $2 end - local.get $0 + local.get $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $5 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $5 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $5 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $5 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $5 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $5 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $5 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $5 i32.const 100000000 i32.ge_u i32.add end end local.set $5 - local.get $0 + local.get $2 local.get $5 i32.const 1 i32.add - local.tee $0 + local.tee $2 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $0 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 - local.get $0 local.get $1 + local.get $2 i32.add i32.const 2 i32.add @@ -11670,7 +11645,7 @@ local.get $2 i32.const 4 i32.sub - local.tee $4 + local.tee $3 i32.const 1 i32.shl local.get $0 @@ -11684,7 +11659,7 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $3 + local.tee $4 i32.const 10000 i32.rem_u local.tee $2 @@ -11707,7 +11682,7 @@ i64.shl i64.or i64.store - local.get $4 + local.get $3 i32.const 4 i32.sub local.tee $2 @@ -11715,7 +11690,7 @@ i32.shl local.get $0 i32.add - local.get $3 + local.get $4 i32.const 10000 i32.div_u local.tee $3 @@ -12780,7 +12755,7 @@ (local $7 i32) local.get $0 i32.load offset=4 - local.set $4 + local.set $6 local.get $0 i32.load offset=12 local.set $0 @@ -12806,7 +12781,7 @@ local.get $0 i32.const 1 i32.sub - local.tee $3 + local.tee $7 i32.const 0 i32.lt_s if @@ -12818,10 +12793,10 @@ local.set $0 br $__inlined_func$~lib/util/string/joinIntegerArray end - local.get $3 + local.get $7 i32.eqz if - local.get $4 + local.get $6 i32.load8_u call $~lib/util/number/utoa32 local.set $0 @@ -12832,7 +12807,7 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 local.get $1 i32.const 20 i32.sub @@ -12845,7 +12820,7 @@ i32.mul i32.const 10 i32.add - local.tee $7 + local.tee $3 i32.const 1 i32.shl i32.const 1 @@ -12853,9 +12828,9 @@ local.tee $0 i32.store loop $for-loop|0 - local.get $3 - local.get $6 - i32.gt_s + local.get $4 + local.get $7 + i32.lt_s if local.get $2 i32.const 1 @@ -12887,21 +12862,21 @@ i32.add local.set $2 end - local.get $6 + local.get $4 i32.const 1 i32.add - local.set $6 + local.set $4 br $for-loop|0 end end - local.get $7 + local.get $3 local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.get $3 - local.get $4 + local.get $6 + local.get $7 i32.add i32.load8_u call $~lib/util/number/itoa_buffered @@ -13403,49 +13378,49 @@ local.set $1 local.get $0 i32.load8_u offset=1 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $3 + local.tee $4 select i32.store8 local.get $1 - local.get $7 local.get $3 + local.get $4 select local.set $1 local.get $0 i32.load8_u offset=2 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $3 + local.tee $4 select i32.store8 offset=1 local.get $0 local.get $1 - local.get $7 local.get $3 + local.get $4 select i32.store8 offset=2 end @@ -13454,14 +13429,14 @@ local.set $1 local.get $0 i32.load8_u offset=1 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -13472,7 +13447,7 @@ i32.store8 local.get $0 local.get $1 - local.get $7 + local.get $3 local.get $2 select i32.store8 offset=1 @@ -13492,35 +13467,35 @@ local.get $1 i32.clz i32.sub - local.tee $5 + local.tee $6 i32.const 2 i32.shl - local.tee $6 + local.tee $5 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc local.tee $11 - local.get $6 + local.get $5 i32.add local.set $10 i32.const 0 - local.set $6 + local.set $5 loop $for-loop|1 local.get $5 local.get $6 - i32.gt_u + i32.lt_u if - local.get $6 + local.get $5 i32.const 2 i32.shl local.get $11 i32.add i32.const -1 i32.store - local.get $6 + local.get $5 i32.const 1 i32.add - local.set $6 + local.set $5 br $for-loop|1 end end @@ -13538,7 +13513,7 @@ local.tee $1 i32.const 1 i32.add - local.tee $6 + local.tee $5 i32.const 32 i32.lt_s if @@ -13551,7 +13526,7 @@ i32.lt_s select local.tee $1 - local.get $6 + local.get $5 local.get $2 call $~lib/util/sort/insertionSort end @@ -13564,37 +13539,37 @@ local.get $1 i32.const 1 i32.add - local.tee $5 + local.tee $6 local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $6 - local.get $5 + local.tee $5 + local.get $6 i32.sub i32.const 1 i32.add - local.tee $4 + local.tee $7 i32.const 32 i32.lt_s if local.get $0 - local.get $5 + local.get $6 local.get $12 - local.get $5 + local.get $6 i32.const 31 i32.add - local.tee $6 - local.get $6 + local.tee $5 + local.get $5 local.get $12 i32.gt_s select - local.tee $6 - local.get $4 + local.tee $5 + local.get $7 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $5 + local.get $6 i32.add i64.extend_i32_u i64.const 30 @@ -13618,13 +13593,13 @@ i64.xor i32.wrap_i64 i32.clz - local.set $4 + local.set $7 loop $for-loop|3 local.get $4 local.get $7 - i32.lt_u + i32.gt_u if - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $11 @@ -13637,7 +13612,7 @@ local.get $0 local.get $13 local.get $10 - local.get $7 + local.get $4 i32.const 2 i32.shl local.tee $3 @@ -13657,39 +13632,39 @@ local.get $13 local.set $3 end - local.get $7 + local.get $4 i32.const 1 i32.sub - local.set $7 + local.set $4 br $for-loop|3 end end local.get $11 - local.get $4 + local.get $7 i32.const 2 i32.shl - local.tee $7 + local.tee $4 i32.add local.get $3 i32.store - local.get $7 + local.get $4 local.get $10 i32.add local.get $1 i32.store - local.get $5 - local.set $3 local.get $6 + local.set $3 + local.get $5 local.set $1 - local.get $4 - local.set $7 + local.get $7 + local.set $4 br $while-continue|2 end end loop $for-loop|4 - local.get $7 + local.get $4 if - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $11 @@ -13701,7 +13676,7 @@ if local.get $0 local.get $1 - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $10 @@ -13714,10 +13689,10 @@ local.get $2 call $~lib/util/sort/mergeRuns end - local.get $7 + local.get $4 i32.const 1 i32.sub - local.set $7 + local.set $4 br $for-loop|4 end end @@ -14647,9 +14622,9 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) + (local $4 f32) (local $5 f64) - (local $6 f32) + (local $6 i32) (local $7 i32) (local $8 i32) (local $9 i32) @@ -14665,70 +14640,70 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i64.const 0 i64.store offset=16 - local.get $1 + local.get $0 i64.const 0 i64.store offset=24 - local.get $1 + local.get $0 i64.const 0 i64.store offset=32 - local.get $1 + local.get $0 i64.const 0 i64.store offset=40 - local.get $1 + local.get $0 i64.const 0 i64.store offset=48 - local.get $1 + local.get $0 i64.const 0 i64.store offset=56 - local.get $1 + local.get $0 i64.const 0 i64.store offset=64 - local.get $1 + local.get $0 i64.const 0 i64.store offset=72 - local.get $1 + local.get $0 i64.const 0 i64.store offset=80 - local.get $1 + local.get $0 i64.const 0 i64.store offset=88 - local.get $1 + local.get $0 i64.const 0 i64.store offset=96 - local.get $1 + local.get $0 i64.const 0 i64.store offset=104 - local.get $1 + local.get $0 i64.const 0 i64.store offset=112 - local.get $1 + local.get $0 i64.const 0 i64.store offset=120 - local.get $1 + local.get $0 i64.const 0 i64.store offset=128 - local.get $1 + local.get $0 i64.const 0 i64.store offset=136 - local.get $1 + local.get $0 i64.const 0 i64.store offset=144 - local.get $1 + local.get $0 i64.const 0 i64.store offset=152 - local.get $1 + local.get $0 i64.const 0 i64.store offset=160 - local.get $1 + local.get $0 i32.const 0 i32.store offset=168 memory.size @@ -14768,9 +14743,9 @@ global.set $std/array/arr i32.const 0 call $std/array/Ref#constructor - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 @@ -14781,10 +14756,10 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new @@ -14825,24 +14800,24 @@ i32.const 1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 i32.store offset=4 - local.get $3 + local.get $2 i32.const 0 i32.const 1 call $~lib/memory/memory.fill local.get $0 - local.get $3 + local.get $2 i32.store - local.get $3 + local.get $2 if local.get $0 - local.get $3 + local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $3 + local.get $2 i32.store offset=4 local.get $0 i32.const 1 @@ -14866,9 +14841,9 @@ i32.store local.get $1 global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.eqz if i32.const 0 @@ -14884,9 +14859,9 @@ i32.const 6 i32.const 1696 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 1 i32.const 1 i32.const 3 @@ -14897,12 +14872,12 @@ i32.const 6 i32.const 1728 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 call $std/array/isArraysEqual i32.eqz if @@ -14913,7 +14888,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 i32.const 0 i32.const 2147483647 @@ -14924,12 +14899,12 @@ i32.const 6 i32.const 1760 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 call $std/array/isArraysEqual i32.eqz if @@ -14940,7 +14915,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.const 0 i32.const -3 @@ -14951,12 +14926,12 @@ i32.const 6 i32.const 1792 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 call $std/array/isArraysEqual i32.eqz if @@ -14967,7 +14942,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 i32.const -2 i32.const 2147483647 @@ -14978,12 +14953,12 @@ i32.const 6 i32.const 1824 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 call $std/array/isArraysEqual i32.eqz if @@ -14994,7 +14969,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 i32.const 1 i32.const 0 @@ -15005,12 +14980,12 @@ i32.const 6 i32.const 1856 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 call $std/array/isArraysEqual i32.eqz if @@ -15072,12 +15047,12 @@ i32.const 7 i32.const 1936 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 local.get $3 - local.get $1 + local.get $0 call $std/array/isArraysEqual i32.eqz if @@ -15090,32 +15065,32 @@ end local.get $3 i32.load offset=4 - local.set $1 + local.set $0 i32.const 0 local.get $3 i32.load offset=12 - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.const 0 i32.gt_s select - local.set $0 + local.set $2 loop $for-loop|04 - local.get $0 + local.get $1 local.get $2 - i32.lt_s + i32.gt_s if - local.get $0 + local.get $2 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|04 end end @@ -15124,12 +15099,12 @@ i32.const 7 i32.const 1984 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 local.get $3 - local.get $1 + local.get $0 call $std/array/isArraysEqual i32.eqz if @@ -15186,12 +15161,12 @@ i32.const 7 i32.const 2032 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 local.get $3 - local.get $1 + local.get $0 call $std/array/isArraysEqual i32.eqz if @@ -15204,35 +15179,35 @@ end local.get $3 i32.load offset=4 - local.set $1 + local.set $0 local.get $3 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 2 i32.sub - local.tee $0 + local.tee $2 i32.const 0 - local.get $0 + local.get $2 i32.const 0 i32.gt_s select - local.set $0 + local.set $2 loop $for-loop|08 - local.get $0 + local.get $1 local.get $2 - i32.lt_s + i32.gt_s if - local.get $0 + local.get $2 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add i32.const 2 i32.store - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|08 end end @@ -15241,12 +15216,12 @@ i32.const 7 i32.const 2080 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 local.get $3 - local.get $1 + local.get $0 call $std/array/isArraysEqual i32.eqz if @@ -15300,12 +15275,12 @@ i32.const 7 i32.const 2128 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 local.get $3 - local.get $1 + local.get $0 call $std/array/isArraysEqual i32.eqz if @@ -15318,9 +15293,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 if i32.const 0 @@ -15332,9 +15307,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $std/array/internalCapacity i32.const 8 i32.ne @@ -15348,17 +15323,17 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 42 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 42 @@ -15373,9 +15348,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 1 i32.ne @@ -15389,9 +15364,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $std/array/internalCapacity i32.const 8 i32.ne @@ -15405,9 +15380,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop i32.const 42 i32.ne @@ -15421,9 +15396,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 if i32.const 0 @@ -15435,9 +15410,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $std/array/internalCapacity i32.const 8 i32.ne @@ -15451,17 +15426,17 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 43 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 1 i32.ne @@ -15475,9 +15450,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $std/array/internalCapacity i32.const 8 i32.ne @@ -15491,9 +15466,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 43 @@ -15508,17 +15483,17 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 44 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 2 i32.ne @@ -15532,9 +15507,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $std/array/internalCapacity i32.const 8 i32.ne @@ -15548,9 +15523,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 43 @@ -15565,9 +15540,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.const 44 @@ -15582,17 +15557,17 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 45 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 3 i32.ne @@ -15606,9 +15581,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $std/array/internalCapacity i32.const 8 i32.ne @@ -15622,9 +15597,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 43 @@ -15639,9 +15614,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.const 44 @@ -15656,9 +15631,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 2 call $~lib/array/Array#__get i32.const 45 @@ -15672,40 +15647,40 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 2 i32.const 2 i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 i32.store offset=16 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 1 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 local.get $0 + local.get $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $0 + local.get $1 i32.const 0 i32.store offset=12 - local.get $0 + local.get $1 i32.load offset=12 if i32.const 0 @@ -15721,9 +15696,9 @@ i32.const 3 i32.const 2224 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=12 - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#at i32.const 1 @@ -15736,7 +15711,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 call $~lib/array/Array#at i32.const 4 @@ -15749,7 +15724,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const -1 call $~lib/array/Array#at i32.const 4 @@ -15762,7 +15737,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const -4 call $~lib/array/Array#at i32.const 1 @@ -15778,23 +15753,23 @@ global.get $~lib/memory/__stack_pointer i32.const 0 call $~lib/array/Array#constructor - local.tee $1 + local.tee $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 local.get $1 + local.get $0 call $~lib/array/Array#concat - local.tee $0 + local.tee $1 i32.store offset=16 global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 call $std/array/internalCapacity i32.const 8 i32.ne @@ -15808,9 +15783,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.load offset=12 i32.const 3 i32.ne @@ -15822,7 +15797,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=12 i32.const 3 i32.ne @@ -15839,19 +15814,19 @@ i32.const 3 i32.const 2272 call $~lib/rt/__newArray - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=8 - local.get $0 - local.get $3 + local.get $1 + local.get $2 call $~lib/array/Array#concat drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 call $std/array/internalCapacity i32.const 8 i32.ne @@ -15863,7 +15838,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#__get i32.const 43 @@ -15876,7 +15851,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/array/Array#__get i32.const 44 @@ -15889,7 +15864,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/array/Array#__get i32.const 45 @@ -15902,30 +15877,30 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 46 call $~lib/array/Array#push drop - local.get $1 + local.get $0 i32.const 47 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $3 + local.tee $2 i32.store - local.get $0 - local.get $3 local.get $1 + local.get $2 + local.get $0 call $~lib/array/Array#concat - local.tee $0 + local.tee $1 i32.store offset=16 global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 call $std/array/internalCapacity i32.const 8 i32.ne @@ -15937,7 +15912,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=12 i32.const 2 i32.ne @@ -15949,7 +15924,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=12 i32.const 5 i32.ne @@ -15961,7 +15936,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#__get i32.const 43 @@ -15974,7 +15949,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/array/Array#__get i32.const 44 @@ -15987,7 +15962,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/array/Array#__get i32.const 45 @@ -16000,7 +15975,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 call $~lib/array/Array#__get i32.const 46 @@ -16013,7 +15988,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 call $~lib/array/Array#__get i32.const 47 @@ -16026,10 +16001,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 call $~lib/array/Array#pop drop - local.get $0 + local.get $1 i32.load offset=12 i32.const 4 i32.ne @@ -16047,9 +16022,9 @@ i32.const 3 i32.const 2304 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.load offset=12 if i32.const 0 @@ -16060,17 +16035,17 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $3 + local.tee $2 i32.store offset=8 - local.get $0 local.get $1 - local.get $3 + local.get $0 + local.get $2 call $~lib/array/Array#concat - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.load offset=12 i32.const 3 i32.ne @@ -16082,7 +16057,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=12 if i32.const 0 @@ -16098,28 +16073,28 @@ i32.const 3 i32.const 2336 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 0 i32.const 3 i32.const 2147483647 call $~lib/array/Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 3 i32.const 2384 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -16137,28 +16112,28 @@ i32.const 3 i32.const 2432 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 1 i32.const 3 i32.const 2147483647 call $~lib/array/Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 3 i32.const 2480 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -16176,28 +16151,28 @@ i32.const 3 i32.const 2528 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 1 i32.const 2 i32.const 2147483647 call $~lib/array/Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 3 i32.const 2576 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -16215,28 +16190,28 @@ i32.const 3 i32.const 2624 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 2 i32.const 2 i32.const 2147483647 call $~lib/array/Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 3 i32.const 2672 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -16254,28 +16229,28 @@ i32.const 3 i32.const 2720 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 0 i32.const 3 i32.const 4 call $~lib/array/Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 3 i32.const 2768 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -16293,28 +16268,28 @@ i32.const 3 i32.const 2816 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 1 i32.const 3 i32.const 4 call $~lib/array/Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 3 i32.const 2864 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -16332,28 +16307,28 @@ i32.const 3 i32.const 2912 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 1 i32.const 2 i32.const 4 call $~lib/array/Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 3 i32.const 2960 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -16371,28 +16346,28 @@ i32.const 3 i32.const 3008 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 0 i32.const -2 i32.const 2147483647 call $~lib/array/Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 3 i32.const 3056 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -16410,28 +16385,28 @@ i32.const 3 i32.const 3104 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 0 i32.const -2 i32.const -1 call $~lib/array/Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 3 i32.const 3152 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -16449,28 +16424,28 @@ i32.const 3 i32.const 3200 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const -4 i32.const -3 i32.const -2 call $~lib/array/Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 3 i32.const 3248 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -16488,28 +16463,28 @@ i32.const 3 i32.const 3296 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const -4 i32.const -3 i32.const -1 call $~lib/array/Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 3 i32.const 3344 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -16527,28 +16502,28 @@ i32.const 3 i32.const 3392 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const -4 i32.const -3 i32.const 2147483647 call $~lib/array/Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 3 i32.const 3440 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -16562,17 +16537,17 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 42 call $~lib/array/Array#unshift drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 4 i32.ne @@ -16586,9 +16561,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $std/array/internalCapacity i32.const 8 i32.ne @@ -16602,9 +16577,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 42 @@ -16619,9 +16594,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.const 43 @@ -16636,9 +16611,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 2 call $~lib/array/Array#__get i32.const 44 @@ -16653,9 +16628,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 3 call $~lib/array/Array#__get i32.const 45 @@ -16670,17 +16645,17 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 41 call $~lib/array/Array#unshift drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 5 i32.ne @@ -16694,9 +16669,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $std/array/internalCapacity i32.const 8 i32.ne @@ -16710,9 +16685,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 41 @@ -16727,9 +16702,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.const 42 @@ -16744,9 +16719,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 2 call $~lib/array/Array#__get i32.const 43 @@ -16761,9 +16736,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 3 call $~lib/array/Array#__get i32.const 44 @@ -16778,9 +16753,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 4 call $~lib/array/Array#__get i32.const 45 @@ -16795,11 +16770,11 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if @@ -16810,29 +16785,29 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=4 - local.tee $3 + local.tee $2 i32.load - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.const 4 i32.add - local.get $0 + local.get $1 i32.const 1 i32.sub - local.tee $0 + local.tee $1 i32.const 2 i32.shl - local.tee $4 + local.tee $6 call $~lib/memory/memory.copy - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.add i32.const 0 i32.store - local.get $1 local.get $0 + local.get $1 i32.store offset=12 global.set $std/array/i global.get $std/array/i @@ -16848,9 +16823,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 4 i32.ne @@ -16864,9 +16839,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $std/array/internalCapacity i32.const 8 i32.ne @@ -16880,9 +16855,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 42 @@ -16897,9 +16872,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.const 43 @@ -16914,9 +16889,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 2 call $~lib/array/Array#__get i32.const 44 @@ -16931,9 +16906,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 3 call $~lib/array/Array#__get i32.const 45 @@ -16948,9 +16923,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop global.set $std/array/i global.get $std/array/i @@ -16966,9 +16941,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 3 i32.ne @@ -16982,9 +16957,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $std/array/internalCapacity i32.const 8 i32.ne @@ -16998,9 +16973,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 42 @@ -17015,9 +16990,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.const 43 @@ -17032,9 +17007,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 2 call $~lib/array/Array#__get i32.const 44 @@ -17053,26 +17028,26 @@ i32.const 3 i32.const 3488 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 2 i32.const 2147483647 call $~lib/array/Array#slice - local.tee $0 + local.tee $1 i32.store offset=16 i32.const 3 i32.const 2 i32.const 3 i32.const 3536 call $~lib/rt/__newArray - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=8 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17085,23 +17060,23 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 2 i32.const 4 call $~lib/array/Array#slice - local.tee $0 + local.tee $1 i32.store offset=16 i32.const 2 i32.const 2 i32.const 3 i32.const 3568 call $~lib/rt/__newArray - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=8 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17114,23 +17089,23 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 1 i32.const 5 call $~lib/array/Array#slice - local.tee $0 + local.tee $1 i32.store offset=16 i32.const 4 i32.const 2 i32.const 3 i32.const 3600 call $~lib/rt/__newArray - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=8 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17143,14 +17118,14 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 0 i32.const 2147483647 call $~lib/array/Array#slice - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 local.get $1 + local.get $0 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17163,23 +17138,23 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const -2 i32.const 2147483647 call $~lib/array/Array#slice - local.tee $0 + local.tee $1 i32.store offset=16 i32.const 2 i32.const 2 i32.const 3 i32.const 3648 call $~lib/rt/__newArray - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=8 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17192,23 +17167,23 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 2 i32.const -1 call $~lib/array/Array#slice - local.tee $0 + local.tee $1 i32.store offset=16 i32.const 2 i32.const 2 i32.const 3 i32.const 3680 call $~lib/rt/__newArray - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=8 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17221,23 +17196,23 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const -3 i32.const -1 call $~lib/array/Array#slice - local.tee $0 + local.tee $1 i32.store offset=16 i32.const 2 i32.const 2 i32.const 3 i32.const 3712 call $~lib/rt/__newArray - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=8 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17249,15 +17224,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const -1 i32.const -3 call $~lib/array/Array#slice - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 if i32.const 0 @@ -17267,15 +17242,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 10 i32.const 2147483647 call $~lib/array/Array#slice - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 if i32.const 0 @@ -17291,7 +17266,7 @@ i32.store local.get $1 i32.load offset=4 - local.set $3 + local.set $2 i32.const 0 local.set $0 local.get $1 @@ -17303,36 +17278,36 @@ local.get $1 i32.const 1 i32.shr_u - local.set $2 + local.set $3 local.get $1 i32.const 1 i32.sub local.set $1 loop $while-continue|0 local.get $0 - local.get $2 + local.get $3 i32.lt_u if local.get $0 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add - local.tee $4 + local.tee $6 i32.load local.set $7 - local.get $4 + local.get $6 local.get $1 local.get $0 i32.sub i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add - local.tee $4 + local.tee $6 i32.load i32.store - local.get $4 + local.get $6 local.get $7 i32.store local.get $0 @@ -17345,9 +17320,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 3 i32.ne @@ -17361,9 +17336,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $std/array/internalCapacity i32.const 8 i32.ne @@ -17377,9 +17352,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 44 @@ -17394,9 +17369,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.const 43 @@ -17411,9 +17386,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 2 call $~lib/array/Array#__get i32.const 42 @@ -17428,17 +17403,17 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 43 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 44 call $~lib/array/Array#push drop @@ -17448,11 +17423,11 @@ i32.const 6 i32.const 3744 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#reverse local.tee $1 i32.store offset=16 @@ -17460,10 +17435,10 @@ local.set $0 local.get $1 i32.load offset=12 - local.set $3 + local.set $2 loop $for-loop|011 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $1 @@ -17497,11 +17472,11 @@ i32.const 6 i32.const 3776 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#reverse local.tee $1 i32.store offset=4 @@ -17509,10 +17484,10 @@ local.set $0 local.get $1 i32.load offset=12 - local.set $3 + local.set $2 loop $for-loop|1 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $1 @@ -17546,11 +17521,11 @@ i32.const 6 i32.const 3808 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#reverse local.tee $1 i32.store offset=12 @@ -17558,10 +17533,10 @@ local.set $0 local.get $1 i32.load offset=12 - local.set $3 + local.set $2 loop $for-loop|2 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $1 @@ -17595,11 +17570,11 @@ i32.const 9 i32.const 3856 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#reverse local.tee $1 i32.store offset=20 @@ -17607,10 +17582,10 @@ local.set $0 local.get $1 i32.load offset=12 - local.set $3 + local.set $2 loop $for-loop|3 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $1 @@ -17644,11 +17619,11 @@ i32.const 9 i32.const 3904 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#reverse local.tee $1 i32.store offset=24 @@ -17656,10 +17631,10 @@ local.set $0 local.get $1 i32.load offset=12 - local.set $3 + local.set $2 loop $for-loop|4 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $1 @@ -17693,11 +17668,11 @@ i32.const 9 i32.const 3952 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#reverse local.tee $1 i32.store offset=28 @@ -17705,10 +17680,10 @@ local.set $0 local.get $1 i32.load offset=12 - local.set $3 + local.set $2 loop $for-loop|5 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $1 @@ -17745,11 +17720,11 @@ block $__inlined_func$~lib/array/Array#indexOf local.get $1 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $2 select if i32.const -1 @@ -17761,7 +17736,7 @@ local.set $1 loop $while-continue|012 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -17803,11 +17778,11 @@ block $__inlined_func$~lib/array/Array#indexOf13 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $2 select if i32.const -1 @@ -17819,7 +17794,7 @@ local.set $1 loop $while-continue|014 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -17863,11 +17838,11 @@ block $__inlined_func$~lib/array/Array#indexOf15 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $2 select if i32.const -1 @@ -17879,7 +17854,7 @@ local.set $1 loop $while-continue|016 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -17923,11 +17898,11 @@ block $__inlined_func$~lib/array/Array#indexOf17 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const 100 i32.le_s i32.const 1 - local.get $3 + local.get $2 select if i32.const -1 @@ -17939,7 +17914,7 @@ local.set $1 loop $while-continue|018 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -17981,18 +17956,18 @@ block $__inlined_func$~lib/array/Array#indexOf19 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const -100 i32.le_s i32.const 1 - local.get $3 + local.get $2 select if i32.const -1 local.set $0 br $__inlined_func$~lib/array/Array#indexOf19 end - local.get $3 + local.get $2 i32.const 100 i32.sub local.tee $0 @@ -18007,7 +17982,7 @@ local.set $1 loop $while-continue|020 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -18049,18 +18024,18 @@ block $__inlined_func$~lib/array/Array#indexOf21 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const -2 i32.le_s i32.const 1 - local.get $3 + local.get $2 select if i32.const -1 local.set $0 br $__inlined_func$~lib/array/Array#indexOf21 end - local.get $3 + local.get $2 i32.const 2 i32.sub local.tee $0 @@ -18075,7 +18050,7 @@ local.set $1 loop $while-continue|022 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -18117,18 +18092,18 @@ block $__inlined_func$~lib/array/Array#indexOf23 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const -4 i32.le_s i32.const 1 - local.get $3 + local.get $2 select if i32.const -1 local.set $0 br $__inlined_func$~lib/array/Array#indexOf23 end - local.get $3 + local.get $2 i32.const 4 i32.sub local.tee $0 @@ -18143,7 +18118,7 @@ local.set $1 loop $while-continue|024 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -18187,11 +18162,11 @@ block $__inlined_func$~lib/array/Array#indexOf25 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $2 select if i32.const -1 @@ -18203,7 +18178,7 @@ local.set $1 loop $while-continue|026 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -18247,11 +18222,11 @@ block $__inlined_func$~lib/array/Array#indexOf27 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const 1 i32.le_s i32.const 1 - local.get $3 + local.get $2 select if i32.const -1 @@ -18263,7 +18238,7 @@ local.set $1 loop $while-continue|028 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -18307,11 +18282,11 @@ block $__inlined_func$~lib/array/Array#indexOf29 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const 2 i32.le_s i32.const 1 - local.get $3 + local.get $2 select if i32.const -1 @@ -18323,7 +18298,7 @@ local.set $1 loop $while-continue|030 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -18363,37 +18338,37 @@ i32.const 10 i32.const 4000 call $~lib/rt/__newArray - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store i32.const 0 local.set $0 i32.const -1 local.set $1 block $__inlined_func$~lib/array/Array#indexOf - local.get $3 + local.get $2 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 0 i32.le_s i32.const 1 - local.get $2 + local.get $3 select br_if $__inlined_func$~lib/array/Array#indexOf - local.get $3 + local.get $2 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|010 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add f32.load f32.const nan:0x400000 @@ -18425,37 +18400,37 @@ i32.const 11 i32.const 4032 call $~lib/rt/__newArray - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store i32.const 0 local.set $0 i32.const -1 local.set $1 block $__inlined_func$~lib/array/Array#indexOf - local.get $3 + local.get $2 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 0 i32.le_s i32.const 1 - local.get $2 + local.get $3 select br_if $__inlined_func$~lib/array/Array#indexOf - local.get $3 + local.get $2 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|037 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 local.tee $1 i32.const 3 i32.shl - local.get $3 + local.get $2 i32.add f64.load f64.const nan:0x8000000000000 @@ -18494,33 +18469,33 @@ global.set $~argumentsLength local.get $0 i32.load offset=12 - local.tee $3 - local.set $2 + local.tee $2 + local.set $3 i32.const -1 local.set $1 block $__inlined_func$~lib/array/Array#lastIndexOf - local.get $3 + local.get $2 i32.eqz br_if $__inlined_func$~lib/array/Array#lastIndexOf local.get $2 local.get $3 i32.add - local.get $3 + local.get $2 i32.const 1 i32.sub - local.get $2 + local.get $3 local.get $2 local.get $3 - i32.ge_s + i32.le_s select - local.get $2 + local.get $3 i32.const 0 i32.lt_s select local.set $1 local.get $0 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|00 local.get $1 i32.const 0 @@ -18529,7 +18504,7 @@ local.get $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 2 @@ -18560,33 +18535,33 @@ global.set $~argumentsLength local.get $0 i32.load offset=12 - local.tee $3 - local.set $2 + local.tee $2 + local.set $3 i32.const -1 local.set $1 block $__inlined_func$~lib/array/Array#lastIndexOf5 - local.get $3 + local.get $2 i32.eqz br_if $__inlined_func$~lib/array/Array#lastIndexOf5 local.get $2 local.get $3 i32.add - local.get $3 + local.get $2 i32.const 1 i32.sub - local.get $2 + local.get $3 local.get $2 local.get $3 - i32.ge_s + i32.le_s select - local.get $2 + local.get $3 i32.const 0 i32.lt_s select local.set $1 local.get $0 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|06 local.get $1 i32.const 0 @@ -18595,7 +18570,7 @@ local.get $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 7 @@ -18643,7 +18618,7 @@ local.set $1 local.get $0 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|031 local.get $1 i32.const 0 @@ -18652,7 +18627,7 @@ local.get $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 2 @@ -18700,7 +18675,7 @@ local.set $1 local.get $0 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|033 local.get $1 i32.const 0 @@ -18709,7 +18684,7 @@ local.get $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 2 @@ -18750,7 +18725,7 @@ local.set $1 local.get $0 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|035 local.get $1 i32.const 0 @@ -18759,7 +18734,7 @@ local.get $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 2 @@ -18846,11 +18821,11 @@ block $__inlined_func$~lib/array/Array#indexOf39 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $2 select if i32.const -1 @@ -18862,7 +18837,7 @@ local.set $1 loop $while-continue|040 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -18904,11 +18879,11 @@ block $__inlined_func$~lib/array/Array#indexOf41 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $2 select if i32.const -1 @@ -18920,7 +18895,7 @@ local.set $1 loop $while-continue|042 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -18962,11 +18937,11 @@ block $__inlined_func$~lib/array/Array#indexOf43 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $2 select if i32.const -1 @@ -18978,7 +18953,7 @@ local.set $1 loop $while-continue|044 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -19020,11 +18995,11 @@ block $__inlined_func$~lib/array/Array#indexOf45 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const 100 i32.le_s i32.const 1 - local.get $3 + local.get $2 select if i32.const -1 @@ -19036,7 +19011,7 @@ local.set $1 loop $while-continue|046 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -19076,18 +19051,18 @@ block $__inlined_func$~lib/array/Array#indexOf47 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const -100 i32.le_s i32.const 1 - local.get $3 + local.get $2 select if i32.const -1 local.set $0 br $__inlined_func$~lib/array/Array#indexOf47 end - local.get $3 + local.get $2 i32.const 100 i32.sub local.tee $0 @@ -19102,7 +19077,7 @@ local.set $1 loop $while-continue|048 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -19142,18 +19117,18 @@ block $__inlined_func$~lib/array/Array#indexOf49 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const -2 i32.le_s i32.const 1 - local.get $3 + local.get $2 select if i32.const -1 local.set $0 br $__inlined_func$~lib/array/Array#indexOf49 end - local.get $3 + local.get $2 i32.const 2 i32.sub local.tee $0 @@ -19168,7 +19143,7 @@ local.set $1 loop $while-continue|050 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -19208,18 +19183,18 @@ block $__inlined_func$~lib/array/Array#indexOf51 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const -4 i32.le_s i32.const 1 - local.get $3 + local.get $2 select if i32.const -1 local.set $0 br $__inlined_func$~lib/array/Array#indexOf51 end - local.get $3 + local.get $2 i32.const 4 i32.sub local.tee $0 @@ -19234,7 +19209,7 @@ local.set $1 loop $while-continue|052 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -19276,11 +19251,11 @@ block $__inlined_func$~lib/array/Array#indexOf53 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $2 select if i32.const -1 @@ -19292,7 +19267,7 @@ local.set $1 loop $while-continue|054 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -19334,11 +19309,11 @@ block $__inlined_func$~lib/array/Array#indexOf55 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const 1 i32.le_s i32.const 1 - local.get $3 + local.get $2 select if i32.const -1 @@ -19350,7 +19325,7 @@ local.set $1 loop $while-continue|056 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -19392,11 +19367,11 @@ block $__inlined_func$~lib/array/Array#indexOf57 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const 2 i32.le_s i32.const 1 - local.get $3 + local.get $2 select if i32.const -1 @@ -19408,7 +19383,7 @@ local.set $1 loop $while-continue|058 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -19456,11 +19431,11 @@ i32.const 0 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $2 select br_if $__inlined_func$~lib/array/Array#includes drop @@ -19469,7 +19444,7 @@ local.set $1 loop $while-continue|047 local.get $0 - local.get $3 + local.get $2 i32.lt_s if i32.const 1 @@ -19479,11 +19454,11 @@ local.get $1 i32.add f32.load - local.tee $6 + local.tee $4 f32.const nan:0x400000 f32.eq - local.get $6 - local.get $6 + local.get $4 + local.get $4 f32.ne i32.or br_if $__inlined_func$~lib/array/Array#includes @@ -19521,11 +19496,11 @@ i32.const 0 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $2 select br_if $__inlined_func$~lib/array/Array#includes drop @@ -19534,7 +19509,7 @@ local.set $1 loop $while-continue|04859 local.get $0 - local.get $3 + local.get $2 i32.lt_s if i32.const 1 @@ -19573,18 +19548,18 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 1 i32.const 1 call $~lib/array/Array#splice drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 4 i32.ne @@ -19598,9 +19573,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $std/array/internalCapacity i32.const 8 i32.ne @@ -19614,9 +19589,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 44 @@ -19631,9 +19606,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.const 42 @@ -19652,27 +19627,27 @@ i32.const 3 i32.const 4176 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=28 - local.get $1 + local.get $0 i32.const 0 i32.const 2147483647 call $~lib/array/Array#splice - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store i32.const 5 i32.const 2 i32.const 3 i32.const 4224 call $~lib/rt/__newArray - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=8 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19689,12 +19664,12 @@ i32.const 3 i32.const 4272 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19712,27 +19687,27 @@ i32.const 3 i32.const 4304 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=28 - local.get $1 + local.get $0 i32.const 0 i32.const 0 call $~lib/array/Array#splice - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store i32.const 0 i32.const 2 i32.const 3 i32.const 4352 call $~lib/rt/__newArray - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=8 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19749,12 +19724,12 @@ i32.const 3 i32.const 4384 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19772,27 +19747,27 @@ i32.const 3 i32.const 4432 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=28 - local.get $1 + local.get $0 i32.const 2 i32.const 2147483647 call $~lib/array/Array#splice - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store i32.const 3 i32.const 2 i32.const 3 i32.const 4480 call $~lib/rt/__newArray - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=8 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19809,12 +19784,12 @@ i32.const 3 i32.const 4512 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19832,27 +19807,27 @@ i32.const 3 i32.const 4544 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=28 - local.get $1 + local.get $0 i32.const 2 i32.const 2 call $~lib/array/Array#splice - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store i32.const 2 i32.const 2 i32.const 3 i32.const 4592 call $~lib/rt/__newArray - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=8 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19869,12 +19844,12 @@ i32.const 3 i32.const 4624 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19892,27 +19867,27 @@ i32.const 3 i32.const 4656 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=28 - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/array/Array#splice - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store i32.const 1 i32.const 2 i32.const 3 i32.const 4704 call $~lib/rt/__newArray - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=8 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19929,12 +19904,12 @@ i32.const 3 i32.const 4736 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19952,27 +19927,27 @@ i32.const 3 i32.const 4784 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=28 - local.get $1 + local.get $0 i32.const -1 i32.const 2147483647 call $~lib/array/Array#splice - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store i32.const 1 i32.const 2 i32.const 3 i32.const 4832 call $~lib/rt/__newArray - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=8 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19989,12 +19964,12 @@ i32.const 3 i32.const 4864 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20012,27 +19987,27 @@ i32.const 3 i32.const 4912 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=28 - local.get $1 + local.get $0 i32.const -2 i32.const 2147483647 call $~lib/array/Array#splice - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store i32.const 2 i32.const 2 i32.const 3 i32.const 4960 call $~lib/rt/__newArray - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=8 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20049,12 +20024,12 @@ i32.const 3 i32.const 4992 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20072,27 +20047,27 @@ i32.const 3 i32.const 5024 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=28 - local.get $1 + local.get $0 i32.const -2 i32.const 1 call $~lib/array/Array#splice - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store i32.const 1 i32.const 2 i32.const 3 i32.const 5072 call $~lib/rt/__newArray - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=8 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20109,12 +20084,12 @@ i32.const 3 i32.const 5104 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20132,27 +20107,27 @@ i32.const 3 i32.const 5152 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=28 - local.get $1 + local.get $0 i32.const -7 i32.const 1 call $~lib/array/Array#splice - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store i32.const 1 i32.const 2 i32.const 3 i32.const 5200 call $~lib/rt/__newArray - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=8 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20169,12 +20144,12 @@ i32.const 3 i32.const 5232 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20192,27 +20167,27 @@ i32.const 3 i32.const 5280 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=28 - local.get $1 + local.get $0 i32.const -2 i32.const -1 call $~lib/array/Array#splice - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store i32.const 0 i32.const 2 i32.const 3 i32.const 5328 call $~lib/rt/__newArray - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=8 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20229,12 +20204,12 @@ i32.const 3 i32.const 5360 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20252,27 +20227,27 @@ i32.const 3 i32.const 5408 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=28 - local.get $1 + local.get $0 i32.const 1 i32.const -2 call $~lib/array/Array#splice - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store i32.const 0 i32.const 2 i32.const 3 i32.const 5456 call $~lib/rt/__newArray - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=8 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20289,12 +20264,12 @@ i32.const 3 i32.const 5488 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20312,27 +20287,27 @@ i32.const 3 i32.const 5536 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=28 - local.get $1 + local.get $0 i32.const 4 i32.const 0 call $~lib/array/Array#splice - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store i32.const 0 i32.const 2 i32.const 3 i32.const 5584 call $~lib/rt/__newArray - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=8 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20349,12 +20324,12 @@ i32.const 3 i32.const 5616 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20372,27 +20347,27 @@ i32.const 3 i32.const 5664 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=28 - local.get $1 + local.get $0 i32.const 7 i32.const 0 call $~lib/array/Array#splice - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store i32.const 0 i32.const 2 i32.const 3 i32.const 5712 call $~lib/rt/__newArray - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=8 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20409,12 +20384,12 @@ i32.const 3 i32.const 5744 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20432,27 +20407,27 @@ i32.const 3 i32.const 5792 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=28 - local.get $1 + local.get $0 i32.const 7 i32.const 5 call $~lib/array/Array#splice - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store i32.const 0 i32.const 2 i32.const 3 i32.const 5840 call $~lib/rt/__newArray - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=8 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20469,12 +20444,12 @@ i32.const 3 i32.const 5872 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20492,15 +20467,15 @@ i32.const 8 i32.const 5920 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=24 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 1 call $~lib/array/Array#splice - local.tee $0 + local.tee $1 i32.store offset=20 - local.get $0 + local.get $1 i32.load offset=12 if i32.const 0 @@ -20510,7 +20485,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=12 if i32.const 0 @@ -20521,53 +20496,53 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 5 i32.const 2 i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 4 i32.const 5 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 local.get $0 + local.get $1 i32.store offset=24 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 2 call $~lib/array/Array#splice - local.tee $1 + local.tee $0 i32.store offset=20 - local.get $1 + local.get $0 i32.load offset=12 i32.const 2 i32.ne @@ -20579,7 +20554,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.load @@ -20593,7 +20568,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.load @@ -20607,7 +20582,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=12 i32.const 3 i32.ne @@ -20619,7 +20594,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#__get i32.load @@ -20633,7 +20608,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/array/Array#__get i32.load @@ -20647,7 +20622,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/array/Array#__get i32.load @@ -20662,34 +20637,34 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 3 i32.const 2 i32.const 12 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 i32.store offset=12 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 1 i32.const 0 call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 2 i32.const 2 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 local.get $0 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -20701,35 +20676,35 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store i32.const 0 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.const 0 i32.gt_s select - local.set $4 - local.get $3 - i32.const 1 + local.set $6 local.get $2 - local.get $4 - i32.sub - local.tee $3 + i32.const 1 local.get $3 + local.get $6 + i32.sub + local.tee $2 + local.get $2 i32.const 1 i32.gt_s select - local.tee $3 + local.tee $2 i32.const 0 - local.get $3 + local.get $2 i32.const 0 i32.gt_s select - local.tee $3 + local.tee $2 i32.const 2 i32.const 12 i32.const 0 @@ -20738,41 +20713,41 @@ i32.store local.get $7 i32.load offset=4 - local.get $0 + local.get $1 i32.load offset=4 local.tee $8 - local.get $4 + local.get $6 i32.const 2 i32.shl i32.add local.tee $9 - local.get $3 + local.get $2 i32.const 2 i32.shl call $~lib/memory/memory.copy - local.get $2 local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.add - local.tee $4 + local.tee $6 i32.ne if local.get $9 - local.get $4 + local.get $6 i32.const 2 i32.shl local.get $8 i32.add - local.get $2 - local.get $4 + local.get $3 + local.get $6 i32.sub i32.const 2 i32.shl call $~lib/memory/memory.copy end - local.get $0 - local.get $2 + local.get $1 local.get $3 + local.get $2 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -20797,9 +20772,9 @@ local.get $7 i32.const 0 call $~lib/array/Array#__get - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.eqz if i32.const 6080 @@ -20809,7 +20784,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load i32.const 1 i32.ne @@ -20821,7 +20796,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=12 i32.const 2 i32.ne @@ -20833,7 +20808,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#__get if @@ -20845,12 +20820,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 1 call $~lib/array/Array#__get - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.eqz if i32.const 6080 @@ -20860,7 +20835,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load i32.const 2 i32.ne @@ -20874,33 +20849,33 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 0 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 1 i32.const 1 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 2 i32.const 2 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 3 i32.const 3 call $~lib/array/Array#__set @@ -20915,16 +20890,16 @@ local.set $0 local.get $1 i32.load offset=12 - local.set $3 + local.set $2 block $__inlined_func$~lib/array/Array#findIndex loop $for-loop|061 - local.get $3 + local.get $2 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 local.get $2 local.get $3 - i32.gt_s + i32.lt_s select local.get $0 i32.gt_s @@ -20966,32 +20941,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 global.get $std/array/arr - local.tee $3 + local.tee $1 i32.store - local.get $1 + local.get $0 i32.const 6176 i32.store offset=8 i32.const 0 local.set $0 - local.get $3 + local.get $1 i32.load offset=12 - local.set $1 + local.set $2 block $__inlined_func$~lib/array/Array#findIndex62 loop $for-loop|063 + local.get $2 local.get $1 - local.get $3 i32.load offset=12 - local.tee $2 - local.get $1 + local.tee $3 local.get $2 + local.get $3 i32.lt_s select local.get $0 i32.gt_s if - local.get $3 + local.get $1 i32.load offset=4 local.get $0 i32.const 2 @@ -21001,7 +20976,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $3 + local.get $1 i32.const 6176 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21030,32 +21005,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 global.get $std/array/arr - local.tee $3 + local.tee $1 i32.store - local.get $1 + local.get $0 i32.const 6208 i32.store offset=8 i32.const 0 local.set $0 - local.get $3 + local.get $1 i32.load offset=12 - local.set $1 + local.set $2 block $__inlined_func$~lib/array/Array#findIndex64 loop $for-loop|065 + local.get $2 local.get $1 - local.get $3 i32.load offset=12 - local.tee $2 - local.get $1 + local.tee $3 local.get $2 + local.get $3 i32.lt_s select local.get $0 i32.gt_s if - local.get $3 + local.get $1 i32.load offset=4 local.get $0 i32.const 2 @@ -21065,7 +21040,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $3 + local.get $1 i32.const 6208 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21094,32 +21069,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 global.get $std/array/arr - local.tee $3 + local.tee $1 i32.store - local.get $1 + local.get $0 i32.const 6240 i32.store offset=8 i32.const 0 local.set $0 - local.get $3 + local.get $1 i32.load offset=12 - local.set $1 + local.set $2 block $__inlined_func$~lib/array/Array#findIndex66 loop $for-loop|067 + local.get $2 local.get $1 - local.get $3 i32.load offset=12 - local.tee $2 - local.get $1 + local.tee $3 local.get $2 + local.get $3 i32.lt_s select local.get $0 i32.gt_s if - local.get $3 + local.get $1 i32.load offset=4 local.get $0 i32.const 2 @@ -21129,7 +21104,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $3 + local.get $1 i32.const 6240 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21159,9 +21134,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 8 i32.ne @@ -21174,32 +21149,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 global.get $std/array/arr - local.tee $3 + local.tee $1 i32.store - local.get $1 + local.get $0 i32.const 6272 i32.store offset=8 i32.const 0 local.set $0 - local.get $3 + local.get $1 i32.load offset=12 - local.set $1 + local.set $2 block $__inlined_func$~lib/array/Array#findIndex68 loop $for-loop|069 + local.get $2 local.get $1 - local.get $3 i32.load offset=12 - local.tee $2 - local.get $1 + local.tee $3 local.get $2 + local.get $3 i32.lt_s select local.get $0 i32.gt_s if - local.get $3 + local.get $1 i32.load offset=4 local.get $0 i32.const 2 @@ -21209,7 +21184,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $3 + local.get $1 i32.const 6272 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21239,30 +21214,30 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer @@ -21276,16 +21251,16 @@ local.set $0 local.get $1 i32.load offset=12 - local.set $3 + local.set $2 block $__inlined_func$~lib/array/Array#findIndex70 loop $for-loop|071 - local.get $3 + local.get $2 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 local.get $2 local.get $3 - i32.gt_s + i32.lt_s select local.get $0 i32.gt_s @@ -21330,9 +21305,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 2 i32.ne @@ -21346,17 +21321,17 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 2 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 3 call $~lib/array/Array#push drop @@ -21366,12 +21341,12 @@ i32.const 3 i32.const 6336 call $~lib/rt/__newArray - local.tee $3 + local.tee $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 6384 i32.store offset=8 - local.get $3 + local.get $2 i32.load offset=12 i32.const 1 i32.sub @@ -21382,7 +21357,7 @@ i32.const 0 i32.ge_s if - local.get $3 + local.get $2 i32.load offset=4 local.get $0 i32.const 2 @@ -21392,7 +21367,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $3 + local.get $2 i32.const 6384 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21421,7 +21396,7 @@ global.get $~lib/memory/__stack_pointer i32.const 6416 i32.store offset=8 - local.get $3 + local.get $2 i32.load offset=12 i32.const 1 i32.sub @@ -21432,7 +21407,7 @@ i32.const 0 i32.ge_s if - local.get $3 + local.get $2 i32.load offset=4 local.get $0 i32.const 2 @@ -21442,7 +21417,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $3 + local.get $2 i32.const 6416 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21473,7 +21448,7 @@ global.get $~lib/memory/__stack_pointer i32.const 6448 i32.store offset=8 - local.get $3 + local.get $2 i32.load offset=12 i32.const 1 i32.sub @@ -21484,7 +21459,7 @@ i32.const 0 i32.ge_s if - local.get $3 + local.get $2 i32.load offset=4 local.get $0 i32.const 2 @@ -21494,7 +21469,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $3 + local.get $2 i32.const 6448 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21525,7 +21500,7 @@ global.get $~lib/memory/__stack_pointer i32.const 6480 i32.store offset=8 - local.get $3 + local.get $2 i32.load offset=12 i32.const 1 i32.sub @@ -21536,7 +21511,7 @@ i32.const 0 i32.ge_s if - local.get $3 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 @@ -21546,7 +21521,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $2 i32.const 6480 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21575,45 +21550,45 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/array/arr local.tee $0 + global.get $std/array/arr + local.tee $2 i32.store - local.get $1 + local.get $0 i32.const 6512 i32.store offset=8 block $__inlined_func$~lib/array/Array#every (result i32) i32.const 0 local.set $1 - local.get $0 + local.get $2 i32.load offset=12 - local.set $3 + local.set $0 loop $for-loop|072 - local.get $3 local.get $0 - i32.load offset=12 - local.tee $2 local.get $2 + i32.load offset=12 + local.tee $3 + local.get $0 local.get $3 - i32.gt_s + i32.lt_s select local.get $1 i32.gt_s if - local.get $0 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $2 + local.get $3 local.get $1 - local.get $0 + local.get $2 i32.const 6512 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21639,45 +21614,45 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/array/arr local.tee $0 + global.get $std/array/arr + local.tee $2 i32.store - local.get $1 + local.get $0 i32.const 6544 i32.store offset=8 block $__inlined_func$~lib/array/Array#every73 (result i32) i32.const 0 local.set $1 - local.get $0 + local.get $2 i32.load offset=12 - local.set $3 + local.set $0 loop $for-loop|074 - local.get $3 local.get $0 - i32.load offset=12 - local.tee $2 local.get $2 + i32.load offset=12 + local.tee $3 + local.get $0 local.get $3 - i32.gt_s + i32.lt_s select local.get $1 i32.gt_s if - local.get $0 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $2 + local.get $3 local.get $1 - local.get $0 + local.get $2 i32.const 6544 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21702,45 +21677,45 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/array/arr local.tee $0 + global.get $std/array/arr + local.tee $2 i32.store - local.get $1 + local.get $0 i32.const 6576 i32.store offset=8 block $__inlined_func$~lib/array/Array#every75 (result i32) i32.const 0 local.set $1 - local.get $0 + local.get $2 i32.load offset=12 - local.set $3 + local.set $0 loop $for-loop|076 - local.get $3 local.get $0 - i32.load offset=12 - local.tee $2 local.get $2 + i32.load offset=12 + local.tee $3 + local.get $0 local.get $3 - i32.gt_s + i32.lt_s select local.get $1 i32.gt_s if - local.get $0 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $2 + local.get $3 local.get $1 - local.get $0 + local.get $2 i32.const 6576 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21767,9 +21742,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 8 i32.ne @@ -21782,45 +21757,45 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/array/arr local.tee $0 + global.get $std/array/arr + local.tee $2 i32.store - local.get $1 + local.get $0 i32.const 6608 i32.store offset=8 block $__inlined_func$~lib/array/Array#every77 (result i32) i32.const 0 local.set $1 - local.get $0 + local.get $2 i32.load offset=12 - local.set $3 + local.set $0 loop $for-loop|078 - local.get $3 local.get $0 - i32.load offset=12 - local.tee $2 local.get $2 + i32.load offset=12 + local.tee $3 + local.get $0 local.get $3 - i32.gt_s + i32.lt_s select local.get $1 i32.gt_s if - local.get $0 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $2 + local.get $3 local.get $1 - local.get $0 + local.get $2 i32.const 6608 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21846,30 +21821,30 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer @@ -21884,15 +21859,15 @@ local.set $1 local.get $0 i32.load offset=12 - local.set $3 + local.set $2 loop $for-loop|080 - local.get $3 + local.get $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $3 local.get $2 local.get $3 - i32.gt_s + i32.lt_s select local.get $1 i32.gt_s @@ -21904,11 +21879,11 @@ i32.shl i32.add i32.load - local.set $2 + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $2 + local.get $3 local.get $1 local.get $0 i32.const 6640 @@ -21937,9 +21912,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 2 i32.ne @@ -21953,17 +21928,17 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 2 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 3 call $~lib/array/Array#push drop @@ -21979,15 +21954,15 @@ local.set $1 local.get $0 i32.load offset=12 - local.set $3 + local.set $2 loop $for-loop|081 - local.get $3 + local.get $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $3 local.get $2 local.get $3 - i32.gt_s + i32.lt_s select local.get $1 i32.gt_s @@ -21999,11 +21974,11 @@ i32.shl i32.add i32.load - local.set $2 + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $2 + local.get $3 local.get $1 local.get $0 i32.const 6672 @@ -22030,45 +22005,45 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/array/arr local.tee $0 + global.get $std/array/arr + local.tee $2 i32.store - local.get $1 + local.get $0 i32.const 6704 i32.store offset=8 block $__inlined_func$~lib/array/Array#some82 (result i32) i32.const 0 local.set $1 - local.get $0 + local.get $2 i32.load offset=12 - local.set $3 + local.set $0 loop $for-loop|083 - local.get $3 local.get $0 - i32.load offset=12 - local.tee $2 local.get $2 + i32.load offset=12 + local.tee $3 + local.get $0 local.get $3 - i32.gt_s + i32.lt_s select local.get $1 i32.gt_s if - local.get $0 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $2 + local.get $3 local.get $1 - local.get $0 + local.get $2 i32.const 6704 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -22092,45 +22067,45 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/array/arr local.tee $0 + global.get $std/array/arr + local.tee $2 i32.store - local.get $1 + local.get $0 i32.const 6736 i32.store offset=8 block $__inlined_func$~lib/array/Array#some84 (result i32) i32.const 0 local.set $1 - local.get $0 + local.get $2 i32.load offset=12 - local.set $3 + local.set $0 loop $for-loop|085 - local.get $3 local.get $0 - i32.load offset=12 - local.tee $2 local.get $2 + i32.load offset=12 + local.tee $3 + local.get $0 local.get $3 - i32.gt_s + i32.lt_s select local.get $1 i32.gt_s if - local.get $0 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $2 + local.get $3 local.get $1 - local.get $0 + local.get $2 i32.const 6736 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -22155,9 +22130,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 8 i32.ne @@ -22170,45 +22145,45 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/array/arr local.tee $0 + global.get $std/array/arr + local.tee $2 i32.store - local.get $1 + local.get $0 i32.const 6768 i32.store offset=8 block $__inlined_func$~lib/array/Array#some86 (result i32) i32.const 0 local.set $1 - local.get $0 + local.get $2 i32.load offset=12 - local.set $3 + local.set $0 loop $for-loop|087 - local.get $3 local.get $0 - i32.load offset=12 - local.tee $2 local.get $2 + i32.load offset=12 + local.tee $3 + local.get $0 local.get $3 - i32.gt_s + i32.lt_s select local.get $1 i32.gt_s if - local.get $0 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $2 + local.get $3 local.get $1 - local.get $0 + local.get $2 i32.const 6768 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -22234,30 +22209,30 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer @@ -22272,15 +22247,15 @@ local.set $1 local.get $0 i32.load offset=12 - local.set $3 + local.set $2 loop $for-loop|089 - local.get $3 + local.get $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $3 local.get $2 local.get $3 - i32.gt_s + i32.lt_s select local.get $1 i32.gt_s @@ -22292,11 +22267,11 @@ i32.shl i32.add i32.load - local.set $2 + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $2 + local.get $3 local.get $1 local.get $0 i32.const 6800 @@ -22323,9 +22298,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 2 i32.ne @@ -22339,17 +22314,17 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 2 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 3 call $~lib/array/Array#push drop @@ -22366,15 +22341,15 @@ local.set $1 local.get $0 i32.load offset=12 - local.set $3 + local.set $2 loop $for-loop|06990 - local.get $3 + local.get $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $3 local.get $2 local.get $3 - i32.gt_s + i32.lt_s select local.get $1 i32.gt_s @@ -22414,31 +22389,31 @@ i32.const 0 global.set $std/array/i global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/array/arr local.tee $0 + global.get $std/array/arr + local.tee $2 i32.store - local.get $1 + local.get $0 i32.const 6864 i32.store offset=8 i32.const 0 local.set $1 - local.get $0 + local.get $2 i32.load offset=12 - local.set $3 + local.set $0 loop $for-loop|07191 - local.get $3 local.get $0 - i32.load offset=12 - local.tee $2 local.get $2 + i32.load offset=12 + local.tee $3 + local.get $0 local.get $3 - i32.gt_s + i32.lt_s select local.get $1 i32.gt_s if - local.get $0 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 @@ -22448,7 +22423,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $0 + local.get $2 i32.const 6864 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) @@ -22472,9 +22447,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 8 i32.ne @@ -22489,31 +22464,31 @@ i32.const 0 global.set $std/array/i global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/array/arr local.tee $0 + global.get $std/array/arr + local.tee $2 i32.store - local.get $1 + local.get $0 i32.const 6896 i32.store offset=8 i32.const 0 local.set $1 - local.get $0 + local.get $2 i32.load offset=12 - local.set $3 + local.set $0 loop $for-loop|07492 - local.get $3 local.get $0 - i32.load offset=12 - local.tee $2 local.get $2 + i32.load offset=12 + local.tee $3 + local.get $0 local.get $3 - i32.gt_s + i32.lt_s select local.get $1 i32.gt_s if - local.get $0 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 @@ -22523,7 +22498,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $0 + local.get $2 i32.const 6896 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) @@ -22547,30 +22522,30 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop i32.const 0 @@ -22586,15 +22561,15 @@ local.set $1 local.get $0 i32.load offset=12 - local.set $3 + local.set $2 loop $for-loop|07693 - local.get $3 + local.get $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $3 local.get $2 local.get $3 - i32.gt_s + i32.lt_s select local.get $1 i32.gt_s @@ -22633,9 +22608,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 2 i32.ne @@ -22649,17 +22624,17 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 2 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 3 call $~lib/array/Array#push drop @@ -22674,15 +22649,15 @@ local.set $1 local.get $0 i32.load offset=12 - local.set $3 + local.set $2 loop $for-loop|079 - local.get $3 + local.get $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $3 local.get $2 local.get $3 - i32.gt_s + i32.lt_s select local.get $1 i32.gt_s @@ -22710,9 +22685,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 100 i32.ne @@ -22747,33 +22722,33 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 1 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 2 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 3 call $~lib/array/Array#push drop @@ -22796,28 +22771,28 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 0 i32.store - local.get $2 + local.get $3 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 2 i32.const 10 i32.const 0 call $~lib/rt/__newArray - local.tee $4 + local.tee $6 i32.store - local.get $4 + local.get $6 i32.load offset=4 local.set $7 loop $for-loop|08195 - local.get $2 + local.get $3 local.get $0 i32.load offset=12 local.tee $8 - local.get $2 + local.get $3 local.get $8 i32.lt_s select @@ -22856,9 +22831,9 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store offset=12 - local.get $4 + local.get $6 i32.load offset=12 i32.const 4 i32.ne @@ -22870,19 +22845,19 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 i32.const 0 call $~lib/array/Array#__get - local.set $6 + local.set $4 global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#__get f32.convert_i32_s - local.get $6 + local.get $4 f32.ne if i32.const 0 @@ -22895,14 +22870,14 @@ i32.const 0 global.set $std/array/i global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/array/arr local.tee $0 + global.get $std/array/arr + local.tee $1 i32.store - local.get $1 + local.get $0 i32.const 7024 i32.store offset=8 - local.get $0 + local.get $1 i32.const 7024 call $~lib/array/Array#map global.get $std/array/i @@ -22918,9 +22893,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 8 i32.ne @@ -22935,14 +22910,14 @@ i32.const 0 global.set $std/array/i global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/array/arr local.tee $0 + global.get $std/array/arr + local.tee $1 i32.store - local.get $1 + local.get $0 i32.const 7056 i32.store offset=8 - local.get $0 + local.get $1 i32.const 7056 call $~lib/array/Array#map global.get $std/array/i @@ -22958,42 +22933,42 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop i32.const 0 global.set $std/array/i global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 7088 i32.store offset=8 - local.get $1 + local.get $0 i32.const 7088 call $~lib/array/Array#map global.get $std/array/i @@ -23009,9 +22984,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 2 i32.ne @@ -23025,34 +23000,34 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 2 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 3 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 7120 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 7120 call $~lib/array/Array#filter - local.tee $1 + local.tee $0 i32.store offset=12 - local.get $1 + local.get $0 i32.load offset=12 i32.const 2 i32.ne @@ -23067,14 +23042,14 @@ i32.const 0 global.set $std/array/i global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/array/arr local.tee $0 + global.get $std/array/arr + local.tee $1 i32.store - local.get $1 + local.get $0 i32.const 7152 i32.store offset=8 - local.get $0 + local.get $1 i32.const 7152 call $~lib/array/Array#filter drop @@ -23091,9 +23066,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 8 i32.ne @@ -23108,14 +23083,14 @@ i32.const 0 global.set $std/array/i global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/array/arr local.tee $0 + global.get $std/array/arr + local.tee $1 i32.store - local.get $1 + local.get $0 i32.const 7184 i32.store offset=8 - local.get $0 + local.get $1 i32.const 7184 call $~lib/array/Array#filter drop @@ -23132,42 +23107,42 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop i32.const 0 global.set $std/array/i global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 7216 i32.store offset=8 - local.get $1 + local.get $0 i32.const 7216 call $~lib/array/Array#filter drop @@ -23184,9 +23159,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 2 i32.ne @@ -23200,64 +23175,64 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 2 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 3 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $3 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 7248 i32.store offset=8 i32.const 0 - local.set $0 + local.set $2 i32.const 0 local.set $1 - local.get $3 + local.get $0 i32.load offset=12 - local.set $2 + local.set $3 loop $for-loop|096 - local.get $2 local.get $3 + local.get $0 i32.load offset=12 - local.tee $4 - local.get $2 - local.get $4 + local.tee $6 + local.get $3 + local.get $6 i32.lt_s select local.get $1 i32.gt_s if - local.get $3 + local.get $0 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $0 - local.get $4 + local.get $2 + local.get $6 local.get $1 - local.get $3 + local.get $0 i32.const 7248 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $0 + local.set $2 local.get $1 i32.const 1 i32.add @@ -23265,7 +23240,7 @@ br $for-loop|096 end end - local.get $0 + local.get $2 global.set $std/array/i global.get $std/array/i i32.const 6 @@ -23279,27 +23254,27 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 global.get $std/array/arr local.tee $3 i32.store - local.get $1 + local.get $0 i32.const 7280 i32.store offset=8 i32.const 4 - local.set $0 + local.set $2 i32.const 0 local.set $1 local.get $3 i32.load offset=12 - local.set $2 + local.set $0 loop $for-loop|098 - local.get $2 + local.get $0 local.get $3 i32.load offset=12 - local.tee $4 - local.get $2 - local.get $4 + local.tee $6 + local.get $0 + local.get $6 i32.lt_s select local.get $1 @@ -23312,17 +23287,17 @@ i32.shl i32.add i32.load - local.set $4 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $0 - local.get $4 + local.get $2 + local.get $6 local.get $1 local.get $3 i32.const 7280 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $0 + local.set $2 local.get $1 i32.const 1 i32.add @@ -23330,7 +23305,7 @@ br $for-loop|098 end end - local.get $0 + local.get $2 global.set $std/array/i global.get $std/array/i i32.const 10 @@ -23344,27 +23319,27 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 global.get $std/array/arr local.tee $3 i32.store - local.get $1 + local.get $0 i32.const 7312 i32.store offset=8 i32.const 0 - local.set $0 + local.set $2 i32.const 0 local.set $1 local.get $3 i32.load offset=12 - local.set $2 + local.set $0 loop $for-loop|0100 - local.get $2 + local.get $0 local.get $3 i32.load offset=12 - local.tee $4 - local.get $2 - local.get $4 + local.tee $6 + local.get $0 + local.get $6 i32.lt_s select local.get $1 @@ -23377,17 +23352,17 @@ i32.shl i32.add i32.load - local.set $4 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $0 - local.get $4 + local.get $2 + local.get $6 local.get $1 local.get $3 i32.const 7312 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $0 + local.set $2 local.get $1 i32.const 1 i32.add @@ -23395,7 +23370,7 @@ br $for-loop|0100 end end - local.get $0 + local.get $2 i32.eqz if i32.const 0 @@ -23406,27 +23381,27 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 global.get $std/array/arr local.tee $3 i32.store - local.get $1 + local.get $0 i32.const 7344 i32.store offset=8 i32.const 0 - local.set $0 + local.set $2 i32.const 0 local.set $1 local.get $3 i32.load offset=12 - local.set $2 + local.set $0 loop $for-loop|0102 - local.get $2 + local.get $0 local.get $3 i32.load offset=12 - local.tee $4 - local.get $2 - local.get $4 + local.tee $6 + local.get $0 + local.get $6 i32.lt_s select local.get $1 @@ -23439,17 +23414,17 @@ i32.shl i32.add i32.load - local.set $4 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $0 - local.get $4 + local.get $2 + local.get $6 local.get $1 local.get $3 i32.const 7344 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $0 + local.set $2 local.get $1 i32.const 1 i32.add @@ -23457,7 +23432,7 @@ br $for-loop|0102 end end - local.get $0 + local.get $2 if i32.const 0 i32.const 1552 @@ -23467,27 +23442,27 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 global.get $std/array/arr local.tee $3 i32.store - local.get $1 + local.get $0 i32.const 7376 i32.store offset=8 i32.const 0 - local.set $0 + local.set $2 i32.const 0 local.set $1 local.get $3 i32.load offset=12 - local.set $2 + local.set $0 loop $for-loop|0104 - local.get $2 + local.get $0 local.get $3 i32.load offset=12 - local.tee $4 - local.get $2 - local.get $4 + local.tee $6 + local.get $0 + local.get $6 i32.lt_s select local.get $1 @@ -23500,17 +23475,17 @@ i32.shl i32.add i32.load - local.set $4 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $0 - local.get $4 + local.get $2 + local.get $6 local.get $1 local.get $3 i32.const 7376 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $0 + local.set $2 local.get $1 i32.const 1 i32.add @@ -23518,7 +23493,7 @@ br $for-loop|0104 end end - local.get $0 + local.get $2 global.set $std/array/i global.get $std/array/i i32.const 6 @@ -23533,9 +23508,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 8 i32.ne @@ -23548,27 +23523,27 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 global.get $std/array/arr local.tee $3 i32.store - local.get $1 + local.get $0 i32.const 7408 i32.store offset=8 i32.const 0 - local.set $0 + local.set $2 i32.const 0 local.set $1 local.get $3 i32.load offset=12 - local.set $2 + local.set $0 loop $for-loop|0106 - local.get $2 + local.get $0 local.get $3 i32.load offset=12 - local.tee $4 - local.get $2 - local.get $4 + local.tee $6 + local.get $0 + local.get $6 i32.lt_s select local.get $1 @@ -23581,17 +23556,17 @@ i32.shl i32.add i32.load - local.set $4 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $0 - local.get $4 + local.get $2 + local.get $6 local.get $1 local.get $3 i32.const 7408 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $0 + local.set $2 local.get $1 i32.const 1 i32.add @@ -23599,7 +23574,7 @@ br $for-loop|0106 end end - local.get $0 + local.get $2 global.set $std/array/i global.get $std/array/i i32.const 10 @@ -23614,76 +23589,76 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $3 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 7440 i32.store offset=8 i32.const 0 - local.set $0 + local.set $2 i32.const 0 local.set $1 - local.get $3 + local.get $0 i32.load offset=12 - local.set $2 + local.set $3 loop $for-loop|0108 - local.get $2 local.get $3 + local.get $0 i32.load offset=12 - local.tee $4 - local.get $2 - local.get $4 + local.tee $6 + local.get $3 + local.get $6 i32.lt_s select local.get $1 i32.gt_s if - local.get $3 + local.get $0 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $0 - local.get $4 + local.get $2 + local.get $6 local.get $1 - local.get $3 + local.get $0 i32.const 7440 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $0 + local.set $2 local.get $1 i32.const 1 i32.add @@ -23691,7 +23666,7 @@ br $for-loop|0108 end end - local.get $0 + local.get $2 global.set $std/array/i global.get $std/array/i i32.const 1 @@ -23706,9 +23681,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 2 i32.ne @@ -23722,30 +23697,30 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 2 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 3 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $3 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer i32.const 7472 i32.store offset=8 i32.const 0 local.set $0 - local.get $3 + local.get $2 i32.load offset=12 i32.const 1 i32.sub @@ -23755,20 +23730,20 @@ i32.const 0 i32.ge_s if - local.get $3 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $2 - local.get $1 local.get $3 + local.get $1 + local.get $2 i32.const 7472 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -23794,16 +23769,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 global.get $std/array/arr - local.tee $3 + local.tee $2 i32.store - local.get $1 + local.get $0 i32.const 7504 i32.store offset=8 i32.const 4 local.set $0 - local.get $3 + local.get $2 i32.load offset=12 i32.const 1 i32.sub @@ -23813,20 +23788,20 @@ i32.const 0 i32.ge_s if - local.get $3 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $2 - local.get $1 local.get $3 + local.get $1 + local.get $2 i32.const 7504 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -23852,16 +23827,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 global.get $std/array/arr - local.tee $3 + local.tee $2 i32.store - local.get $1 + local.get $0 i32.const 7536 i32.store offset=8 i32.const 0 local.set $0 - local.get $3 + local.get $2 i32.load offset=12 i32.const 1 i32.sub @@ -23871,20 +23846,20 @@ i32.const 0 i32.ge_s if - local.get $3 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $2 - local.get $1 local.get $3 + local.get $1 + local.get $2 i32.const 7536 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -23907,16 +23882,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 global.get $std/array/arr - local.tee $3 + local.tee $2 i32.store - local.get $1 + local.get $0 i32.const 7568 i32.store offset=8 i32.const 0 local.set $0 - local.get $3 + local.get $2 i32.load offset=12 i32.const 1 i32.sub @@ -23926,20 +23901,20 @@ i32.const 0 i32.ge_s if - local.get $3 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $2 - local.get $1 local.get $3 + local.get $1 + local.get $2 i32.const 7568 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -23961,16 +23936,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 global.get $std/array/arr - local.tee $3 + local.tee $2 i32.store - local.get $1 + local.get $0 i32.const 7600 i32.store offset=8 i32.const 0 local.set $0 - local.get $3 + local.get $2 i32.load offset=12 i32.const 1 i32.sub @@ -23980,20 +23955,20 @@ i32.const 0 i32.ge_s if - local.get $3 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $2 - local.get $1 local.get $3 + local.get $1 + local.get $2 i32.const 7600 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -24020,9 +23995,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.const 8 i32.ne @@ -24035,16 +24010,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 global.get $std/array/arr - local.tee $3 + local.tee $2 i32.store - local.get $1 + local.get $0 i32.const 7632 i32.store offset=8 i32.const 0 local.set $0 - local.get $3 + local.get $2 i32.load offset=12 i32.const 1 i32.sub @@ -24054,20 +24029,20 @@ i32.const 0 i32.ge_s if - local.get $3 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $2 - local.get $1 local.get $3 + local.get $1 + local.get $2 i32.const 7632 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -24094,42 +24069,42 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $3 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer i32.const 7664 i32.store offset=8 i32.const 0 local.set $0 - local.get $3 + local.get $2 i32.load offset=12 i32.const 1 i32.sub @@ -24139,20 +24114,20 @@ i32.const 0 i32.ge_s if - local.get $3 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $2 - local.get $1 local.get $3 + local.get $1 + local.get $2 i32.const 7664 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -24179,9 +24154,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 if i32.const 0 @@ -24193,33 +24168,33 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 1 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 2 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 3 call $~lib/array/Array#push drop @@ -24232,181 +24207,181 @@ i32.const 20 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $0 + local.tee $1 i32.store offset=20 - local.get $0 + local.get $1 i32.const 100 i32.store - local.get $0 + local.get $1 i32.const 80 i32.store offset=4 - local.get $1 - i32.const 0 local.get $0 + i32.const 0 + local.get $1 call $~lib/array/Array#__uset global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $0 + local.tee $1 i32.store offset=24 - local.get $0 + local.get $1 i32.const 90 i32.store - local.get $0 + local.get $1 i32.const 90 i32.store offset=4 - local.get $1 - i32.const 1 local.get $0 + i32.const 1 + local.get $1 call $~lib/array/Array#__uset global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $0 + local.tee $1 i32.store offset=28 - local.get $0 + local.get $1 i32.const 70 i32.store - local.get $0 + local.get $1 i32.const 95 i32.store offset=4 - local.get $1 - i32.const 2 local.get $0 + i32.const 2 + local.get $1 call $~lib/array/Array#__uset global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 100 i32.store - local.get $0 + local.get $1 i32.const 100 i32.store offset=4 - local.get $1 - i32.const 3 local.get $0 + i32.const 3 + local.get $1 call $~lib/array/Array#__uset global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $0 + local.tee $1 i32.store offset=32 - local.get $0 + local.get $1 i32.const 80 i32.store - local.get $0 + local.get $1 i32.const 110 i32.store offset=4 - local.get $1 - i32.const 4 local.get $0 + i32.const 4 + local.get $1 call $~lib/array/Array#__uset global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $0 + local.tee $1 i32.store offset=36 - local.get $0 + local.get $1 i32.const 110 i32.store - local.get $0 + local.get $1 i32.const 115 i32.store offset=4 - local.get $1 - i32.const 5 local.get $0 + i32.const 5 + local.get $1 call $~lib/array/Array#__uset global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $0 + local.tee $1 i32.store offset=40 - local.get $0 + local.get $1 i32.const 100 i32.store - local.get $0 + local.get $1 i32.const 120 i32.store offset=4 - local.get $1 - i32.const 6 local.get $0 + i32.const 6 + local.get $1 call $~lib/array/Array#__uset global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $0 + local.tee $1 i32.store offset=44 - local.get $0 + local.get $1 i32.const 70 i32.store - local.get $0 + local.get $1 i32.const 125 i32.store offset=4 - local.get $1 - i32.const 7 local.get $0 + i32.const 7 + local.get $1 call $~lib/array/Array#__uset global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $0 + local.tee $1 i32.store offset=48 - local.get $0 + local.get $1 i32.const 70 i32.store - local.get $0 + local.get $1 i32.const 130 i32.store offset=4 - local.get $1 - i32.const 8 local.get $0 + i32.const 8 + local.get $1 call $~lib/array/Array#__uset global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $0 + local.tee $1 i32.store offset=52 - local.get $0 + local.get $1 i32.const 100 i32.store - local.get $0 + local.get $1 i32.const 135 i32.store offset=4 - local.get $1 - i32.const 9 local.get $0 + i32.const 9 + local.get $1 call $~lib/array/Array#__uset global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $0 + local.tee $1 i32.store offset=56 - local.get $0 + local.get $1 i32.const 75 i32.store - local.get $0 + local.get $1 i32.const 140 i32.store offset=4 - local.get $1 - i32.const 10 local.get $0 + i32.const 10 + local.get $1 call $~lib/array/Array#__uset global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $0 + local.tee $1 i32.store offset=60 - local.get $0 + local.get $1 i32.const 70 i32.store - local.get $0 + local.get $1 i32.const 140 i32.store offset=4 - local.get $1 - i32.const 11 local.get $0 - call $~lib/array/Array#__uset + i32.const 11 local.get $1 + call $~lib/array/Array#__uset + local.get $0 global.set $std/array/inputStabArr global.get $~lib/memory/__stack_pointer i32.const 12 @@ -24414,181 +24389,181 @@ i32.const 20 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $0 + local.tee $1 i32.store offset=64 - local.get $0 + local.get $1 i32.const 70 i32.store - local.get $0 + local.get $1 i32.const 95 i32.store offset=4 - local.get $1 - i32.const 0 local.get $0 + i32.const 0 + local.get $1 call $~lib/array/Array#__uset global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $0 + local.tee $1 i32.store offset=68 - local.get $0 + local.get $1 i32.const 70 i32.store - local.get $0 + local.get $1 i32.const 125 i32.store offset=4 - local.get $1 - i32.const 1 local.get $0 + i32.const 1 + local.get $1 call $~lib/array/Array#__uset global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $0 + local.tee $1 i32.store offset=72 - local.get $0 + local.get $1 i32.const 70 i32.store - local.get $0 + local.get $1 i32.const 130 i32.store offset=4 - local.get $1 - i32.const 2 local.get $0 + i32.const 2 + local.get $1 call $~lib/array/Array#__uset global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $0 + local.tee $1 i32.store offset=76 - local.get $0 + local.get $1 i32.const 70 i32.store - local.get $0 + local.get $1 i32.const 140 i32.store offset=4 - local.get $1 - i32.const 3 local.get $0 + i32.const 3 + local.get $1 call $~lib/array/Array#__uset global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $0 + local.tee $1 i32.store offset=80 - local.get $0 + local.get $1 i32.const 75 i32.store - local.get $0 + local.get $1 i32.const 140 i32.store offset=4 - local.get $1 - i32.const 4 local.get $0 + i32.const 4 + local.get $1 call $~lib/array/Array#__uset global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $0 + local.tee $1 i32.store offset=84 - local.get $0 + local.get $1 i32.const 80 i32.store - local.get $0 + local.get $1 i32.const 110 i32.store offset=4 - local.get $1 - i32.const 5 local.get $0 + i32.const 5 + local.get $1 call $~lib/array/Array#__uset global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $0 + local.tee $1 i32.store offset=88 - local.get $0 + local.get $1 i32.const 90 i32.store - local.get $0 + local.get $1 i32.const 90 i32.store offset=4 - local.get $1 - i32.const 6 local.get $0 + i32.const 6 + local.get $1 call $~lib/array/Array#__uset global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $0 + local.tee $1 i32.store offset=92 - local.get $0 + local.get $1 i32.const 100 i32.store - local.get $0 + local.get $1 i32.const 80 i32.store offset=4 - local.get $1 - i32.const 7 local.get $0 + i32.const 7 + local.get $1 call $~lib/array/Array#__uset global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $0 + local.tee $1 i32.store offset=96 - local.get $0 + local.get $1 i32.const 100 i32.store - local.get $0 + local.get $1 i32.const 100 i32.store offset=4 - local.get $1 - i32.const 8 local.get $0 + i32.const 8 + local.get $1 call $~lib/array/Array#__uset global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $0 + local.tee $1 i32.store offset=100 - local.get $0 + local.get $1 i32.const 100 i32.store - local.get $0 + local.get $1 i32.const 120 i32.store offset=4 - local.get $1 - i32.const 9 local.get $0 + i32.const 9 + local.get $1 call $~lib/array/Array#__uset global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $0 + local.tee $1 i32.store offset=104 - local.get $0 + local.get $1 i32.const 100 i32.store - local.get $0 + local.get $1 i32.const 135 i32.store offset=4 - local.get $1 - i32.const 10 local.get $0 + i32.const 10 + local.get $1 call $~lib/array/Array#__uset global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $0 + local.tee $1 i32.store offset=108 - local.get $0 + local.get $1 i32.const 110 i32.store - local.get $0 + local.get $1 i32.const 115 i32.store offset=4 - local.get $1 - i32.const 11 local.get $0 - call $~lib/array/Array#__uset + i32.const 11 local.get $1 + call $~lib/array/Array#__uset + local.get $0 global.set $std/array/outputStabArr global.get $~lib/memory/__stack_pointer i32.const 3 @@ -24596,23 +24571,23 @@ i32.const 10 i32.const 7888 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=4 i32.const 0 global.set $~argumentsLength - local.get $1 + local.get $0 call $~lib/array/Array#sort@varargs i32.const 3 i32.const 2 i32.const 10 i32.const 7952 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 call $std/array/isArraysEqual i32.eqz if @@ -24629,23 +24604,23 @@ i32.const 10 i32.const 7984 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=12 i32.const 0 global.set $~argumentsLength - local.get $1 + local.get $0 call $~lib/array/Array#sort@varargs i32.const 8 i32.const 2 i32.const 10 i32.const 8048 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 call $std/array/isArraysEqual i32.eqz if @@ -24708,9 +24683,9 @@ i32.const 11 i32.const 8240 call $~lib/rt/__newArray - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=8 block $__inlined_func$std/array/isArraysEqual (result i32) i32.const 0 @@ -24718,21 +24693,21 @@ i32.const 0 local.get $1 i32.load offset=12 - local.tee $2 - local.get $3 + local.tee $3 + local.get $2 i32.load offset=12 i32.ne br_if $__inlined_func$std/array/isArraysEqual drop i32.const 1 local.get $1 - local.get $3 + local.get $2 i32.eq br_if $__inlined_func$std/array/isArraysEqual drop loop $for-loop|038 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $1 @@ -24742,7 +24717,7 @@ local.get $5 f64.ne if (result i32) - local.get $3 + local.get $2 local.get $0 call $~lib/array/Array#__get local.tee $5 @@ -24757,7 +24732,7 @@ local.get $1 local.get $0 call $~lib/array/Array#__get - local.get $3 + local.get $2 local.get $0 call $~lib/array/Array#__get f64.ne @@ -24857,11 +24832,11 @@ i32.const 7 i32.const 8464 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=120 i32.const 0 global.set $~argumentsLength - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#sort@varargs drop @@ -24870,12 +24845,12 @@ i32.const 7 i32.const 8544 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 call $std/array/isArraysEqual i32.eqz if @@ -24892,7 +24867,7 @@ i32.const 3 i32.const 8592 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=124 global.get $~lib/memory/__stack_pointer i32.const 1 @@ -24900,7 +24875,7 @@ i32.const 3 i32.const 8624 call $~lib/rt/__newArray - local.tee $3 + local.tee $2 i32.store offset=128 global.get $~lib/memory/__stack_pointer i32.const 2 @@ -24908,7 +24883,7 @@ i32.const 3 i32.const 8656 call $~lib/rt/__newArray - local.tee $2 + local.tee $3 i32.store offset=132 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -24916,7 +24891,7 @@ i32.const 3 i32.const 8688 call $~lib/rt/__newArray - local.tee $4 + local.tee $6 i32.store offset=136 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -24924,7 +24899,7 @@ i32.const 3 i32.const 8736 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=140 global.get $~lib/memory/__stack_pointer i32.const 64 @@ -24951,21 +24926,21 @@ call $std/array/createRandomOrderedArray local.tee $11 i32.store offset=160 - local.get $0 + local.get $1 call $std/array/assertSortedDefault - local.get $3 + local.get $2 call $std/array/assertSortedDefault i32.const 1 i32.const 2 i32.const 3 i32.const 8816 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $3 - local.get $0 + local.get $2 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -24977,19 +24952,19 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 call $std/array/assertSortedDefault i32.const 2 i32.const 2 i32.const 3 i32.const 8848 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $2 - local.get $0 + local.get $3 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -25001,10 +24976,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 call $std/array/assertSortedDefault - local.get $4 - local.get $1 + local.get $6 + local.get $0 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -25019,7 +24994,7 @@ local.get $7 call $std/array/assertSortedDefault local.get $7 - local.get $1 + local.get $0 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -25034,7 +25009,7 @@ local.get $8 call $std/array/assertSortedDefault local.get $8 - local.get $1 + local.get $0 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -25049,7 +25024,7 @@ local.get $9 call $std/array/assertSortedDefault local.get $9 - local.get $1 + local.get $0 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -25064,7 +25039,7 @@ local.get $10 call $std/array/assertSortedDefault local.get $10 - local.get $1 + local.get $0 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -25081,7 +25056,7 @@ i32.const 0 local.set $2 i32.const 0 - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 24 i32.sub @@ -25091,20 +25066,20 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i64.const 0 i64.store offset=16 - local.get $0 + local.get $1 global.get $std/array/inputStabArr local.tee $3 i32.store offset=8 - local.get $0 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -25113,7 +25088,7 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $6 i32.const 0 i32.store i32.const 0 @@ -25125,17 +25100,17 @@ i32.gt_s select local.set $8 - local.get $4 + local.get $6 local.get $7 local.get $8 i32.sub - local.tee $4 + local.tee $6 i32.const 0 - local.get $4 + local.get $6 i32.const 0 i32.gt_s select - local.tee $4 + local.tee $6 i32.const 2 i32.const 20 i32.const 0 @@ -25152,13 +25127,13 @@ i32.shl i32.add local.set $3 - local.get $4 + local.get $6 i32.const 2 i32.shl - local.set $4 + local.set $6 loop $while-continue|011 local.get $2 - local.get $4 + local.get $6 i32.lt_u if local.get $2 @@ -25189,10 +25164,10 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 local.get $7 i32.store - local.get $3 + local.get $2 i32.const 8880 i32.store offset=4 local.get $7 @@ -25201,43 +25176,43 @@ i32.load offset=12 i32.const 8880 call $~lib/util/sort/SORT - local.get $0 + local.get $1 local.get $7 i32.store offset=12 i32.const 1 local.set $2 global.get $~lib/memory/__stack_pointer global.get $std/array/inputStabArr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 - local.set $0 + local.set $1 loop $for-loop|012 local.get $0 local.get $1 - i32.gt_s + i32.lt_s if block $for-break0 global.get $~lib/memory/__stack_pointer local.get $7 - local.get $1 + local.get $0 call $~lib/array/Array#__get local.tee $3 i32.store offset=16 global.get $~lib/memory/__stack_pointer global.get $std/array/outputStabArr - local.tee $4 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 - local.get $1 + local.get $6 + local.get $0 call $~lib/array/Array#__get - local.tee $4 + local.tee $6 i32.store offset=20 local.get $3 i32.load - local.get $4 + local.get $6 i32.load i32.ne if (result i32) @@ -25245,7 +25220,7 @@ else local.get $3 i32.load offset=4 - local.get $4 + local.get $6 i32.load offset=4 i32.ne end @@ -25254,10 +25229,10 @@ local.set $2 br $for-break0 end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|012 end end @@ -25279,35 +25254,35 @@ global.get $~lib/memory/__stack_pointer i32.const 64 call $std/array/createRandomOrderedArray - local.tee $1 + local.tee $0 i32.store offset=160 global.get $~lib/memory/__stack_pointer i32.const 257 call $std/array/createRandomOrderedArray - local.tee $0 + local.tee $1 i32.store offset=156 global.get $~lib/memory/__stack_pointer i32.const 8912 i32.store offset=8 - local.get $1 + local.get $0 i32.const 8912 call $std/array/assertSorted global.get $~lib/memory/__stack_pointer i32.const 8944 i32.store offset=8 - local.get $1 + local.get $0 i32.const 8944 call $std/array/assertSorted global.get $~lib/memory/__stack_pointer i32.const 8976 i32.store offset=8 - local.get $0 + local.get $1 i32.const 8976 call $std/array/assertSorted global.get $~lib/memory/__stack_pointer i32.const 9008 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9008 call $std/array/assertSorted global.get $~lib/memory/__stack_pointer @@ -25322,10 +25297,10 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -25334,62 +25309,62 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 i32.const 16 i32.const 26 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 i32.const 0 i32.store - local.get $2 + local.get $3 i32.const 0 i32.store offset=4 - local.get $2 + local.get $3 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 32 i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $6 i32.store offset=4 - local.get $4 + local.get $6 i32.const 0 i32.const 32 call $~lib/memory/memory.fill - local.get $2 - local.get $4 + local.get $3 + local.get $6 i32.store - local.get $4 + local.get $6 if - local.get $2 - local.get $4 + local.get $3 + local.get $6 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 - local.get $4 + local.get $3 + local.get $6 i32.store offset=4 - local.get $2 + local.get $3 i32.const 32 i32.store offset=8 - local.get $2 + local.get $3 i32.const 2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 local.get $2 + local.get $3 i32.store loop $for-loop|0154 local.get $1 @@ -25399,17 +25374,17 @@ global.get $~lib/memory/__stack_pointer i32.const 1 call $~lib/array/Array#constructor - local.tee $3 + local.tee $2 i32.store offset=4 - local.get $3 + local.get $2 i32.const 0 i32.const 1 local.get $1 i32.sub call $~lib/array/Array#__set - local.get $2 - local.get $1 local.get $3 + local.get $1 + local.get $2 call $~lib/array/Array<~lib/array/Array>#__set local.get $1 i32.const 1 @@ -25422,17 +25397,17 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=156 global.get $~lib/memory/__stack_pointer i32.const 9040 i32.store offset=8 - local.get $2 + local.get $3 i32.const 9040 call $std/array/assertSorted<~lib/array/Array> global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -25442,10 +25417,10 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $1 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -25454,65 +25429,65 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 i32.const 16 i32.const 29 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 i32.const 0 i32.store - local.get $2 + local.get $3 i32.const 0 i32.store offset=4 - local.get $2 + local.get $3 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 2048 i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $6 i32.store offset=4 - local.get $4 + local.get $6 i32.const 0 i32.const 2048 call $~lib/memory/memory.fill - local.get $2 - local.get $4 + local.get $3 + local.get $6 i32.store - local.get $4 + local.get $6 if - local.get $2 - local.get $4 + local.get $3 + local.get $6 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 - local.get $4 + local.get $3 + local.get $6 i32.store offset=4 - local.get $2 + local.get $3 i32.const 2048 i32.store offset=8 - local.get $2 + local.get $3 i32.const 512 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $1 local.get $3 - local.get $2 i32.store loop $for-loop|014 - local.get $0 + local.get $2 i32.const 512 i32.lt_s if @@ -25525,18 +25500,18 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 4 i32.const 28 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 511 - local.get $0 + local.get $2 i32.sub i32.store global.get $~lib/memory/__stack_pointer @@ -25544,16 +25519,16 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=4 - local.get $2 - local.get $0 local.get $3 + local.get $2 + local.get $1 call $~lib/array/Array<~lib/array/Array>#__set - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|014 end end @@ -25561,12 +25536,12 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=156 global.get $~lib/memory/__stack_pointer i32.const 9072 i32.store offset=8 - local.get $2 + local.get $3 i32.const 9072 call $std/array/assertSorted<~lib/array/Array> global.get $~lib/memory/__stack_pointer @@ -25575,7 +25550,7 @@ i32.const 31 i32.const 9264 call $~lib/rt/__newArray - local.tee $3 + local.tee $1 i32.store offset=160 global.get $~lib/memory/__stack_pointer i32.const 7 @@ -25583,12 +25558,12 @@ i32.const 31 i32.const 9312 call $~lib/rt/__newArray - local.tee $4 + local.tee $3 i32.store offset=152 i32.const 1 global.set $~argumentsLength i32.const 0 - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -25611,7 +25586,7 @@ unreachable end i32.const 9360 - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 9360 i32.store @@ -25627,18 +25602,18 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $1 i32.load offset=4 - local.get $3 + local.get $1 i32.load offset=12 - local.get $0 + local.get $2 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $3 + local.tee $0 + local.get $1 i32.store block $__inlined_func$std/array/isSorted<~lib/string/String|null> (result i32) - local.get $1 + local.get $0 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -25650,17 +25625,17 @@ i64.const 0 i64.store i32.const 1 - local.set $1 - local.get $3 + local.set $0 + local.get $1 i32.load offset=12 - local.set $2 + local.set $6 loop $for-loop|019 - local.get $1 - local.get $2 + local.get $0 + local.get $6 i32.lt_s if - local.get $3 local.get $1 + local.get $0 i32.const 1 i32.sub call $~lib/array/Array#__get @@ -25668,8 +25643,8 @@ global.get $~lib/memory/__stack_pointer local.get $7 i32.store - local.get $3 local.get $1 + local.get $0 call $~lib/array/Array#__get local.set $8 global.get $~lib/memory/__stack_pointer @@ -25679,7 +25654,7 @@ global.set $~argumentsLength local.get $7 local.get $8 - local.get $0 + local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 @@ -25692,10 +25667,10 @@ i32.const 0 br $__inlined_func$std/array/isSorted<~lib/string/String|null> end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|019 end end @@ -25738,37 +25713,37 @@ i64.store block $folding-inner1 block $folding-inner020 - local.get $3 + local.get $1 i32.load offset=12 - local.tee $1 - local.get $4 + local.tee $0 + local.get $3 i32.load offset=12 i32.ne br_if $folding-inner020 + local.get $1 local.get $3 - local.get $4 i32.eq br_if $folding-inner1 loop $for-loop|049 - local.get $1 + local.get $0 local.get $2 i32.gt_s if - local.get $3 + local.get $1 local.get $2 call $~lib/array/Array#__get - local.set $0 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $6 i32.store - local.get $4 + local.get $3 local.get $2 call $~lib/array/Array#__get local.set $7 global.get $~lib/memory/__stack_pointer local.get $7 i32.store offset=4 - local.get $0 + local.get $6 local.get $7 call $~lib/string/String.__eq i32.eqz @@ -25805,10 +25780,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 local.set $2 - local.get $1 + local.get $0 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -25817,10 +25792,10 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.const 400 call $~lib/array/Array<~lib/string/String>#constructor @@ -25837,7 +25812,7 @@ i32.trunc_f64_s local.set $8 i32.const 0 - local.set $4 + local.set $6 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -25859,7 +25834,7 @@ i32.const 9232 i32.store loop $for-loop|00 - local.get $4 + local.get $6 local.get $8 i32.lt_s if @@ -25937,10 +25912,10 @@ call $~lib/string/String.__concat local.tee $0 i32.store - local.get $4 + local.get $6 i32.const 1 i32.add - local.set $4 + local.set $6 br $for-loop|00 end end @@ -26012,25 +25987,25 @@ i32.const 35 i32.const 9424 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.store offset=164 - local.get $3 + local.get $1 i32.const 9520 i32.store offset=168 - local.get $1 + local.get $0 i32.load offset=4 local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.set $1 + local.set $3 i32.const 0 local.set $0 i32.const 0 - local.set $4 - local.get $3 + local.set $6 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -26042,7 +26017,7 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/string/joinBooleanArray - local.get $1 + local.get $3 i32.const 1 i32.sub local.tee $3 @@ -26090,11 +26065,11 @@ i32.store loop $for-loop|13 local.get $3 - local.get $4 + local.get $6 i32.gt_s if local.get $2 - local.get $4 + local.get $6 i32.add i32.load8_u local.tee $9 @@ -26136,10 +26111,10 @@ i32.add local.set $0 end - local.get $4 + local.get $6 i32.const 1 i32.add - local.set $4 + local.set $6 br $for-loop|13 end end @@ -26147,11 +26122,11 @@ local.get $3 i32.add i32.load8_u - local.tee $3 + local.tee $2 i32.eqz i32.const 4 i32.add - local.set $2 + local.set $3 local.get $0 i32.const 1 i32.shl @@ -26159,15 +26134,15 @@ i32.add i32.const 9456 i32.const 9488 - local.get $3 - select local.get $2 + select + local.get $3 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $8 local.get $0 - local.get $2 + local.get $3 i32.add local.tee $0 i32.gt_s @@ -26213,25 +26188,25 @@ i32.const 3 i32.const 9600 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=164 + local.tee $1 local.get $0 + i32.store offset=164 + local.get $1 i32.const 9232 i32.store offset=168 - local.get $1 + local.get $0 i32.const 9232 call $~lib/array/Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 11408 i32.store offset=8 - local.get $1 + local.get $0 i32.const 11408 call $~lib/string/String.__eq i32.eqz @@ -26248,25 +26223,25 @@ i32.const 7 i32.const 11440 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=164 + local.tee $1 local.get $0 + i32.store offset=164 + local.get $1 i32.const 11472 i32.store offset=168 - local.get $1 + local.get $0 i32.const 11472 call $~lib/array/Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 11408 i32.store offset=8 - local.get $1 + local.get $0 i32.const 11408 call $~lib/string/String.__eq i32.eqz @@ -26283,25 +26258,25 @@ i32.const 3 i32.const 11504 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=164 + local.tee $1 local.get $0 + i32.store offset=164 + local.get $1 i32.const 11536 i32.store offset=168 - local.get $1 + local.get $0 i32.const 11536 call $~lib/array/Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 11568 i32.store offset=8 - local.get $1 + local.get $0 i32.const 11568 call $~lib/string/String.__eq i32.eqz @@ -26318,24 +26293,24 @@ i32.const 11 i32.const 11648 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=164 + local.tee $1 local.get $0 + i32.store offset=164 + local.get $1 i32.const 11728 i32.store offset=168 - local.get $1 + local.get $0 call $~lib/array/Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 12896 i32.store offset=8 - local.get $1 + local.get $0 i32.const 12896 call $~lib/string/String.__eq i32.eqz @@ -26352,25 +26327,25 @@ i32.const 31 i32.const 13040 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=164 + local.tee $1 local.get $0 + i32.store offset=164 + local.get $1 i32.const 9232 i32.store offset=168 - local.get $1 + local.get $0 i32.const 9232 call $~lib/array/Array<~lib/string/String|null>#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 13008 i32.store offset=8 - local.get $1 + local.get $0 i32.const 13008 call $~lib/string/String.__eq i32.eqz @@ -26383,48 +26358,48 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 3 i32.const 2 i32.const 12 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=156 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 i32.store offset=152 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 1 i32.const 0 call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 2 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 local.get $0 + local.get $1 i32.store offset=152 global.get $~lib/memory/__stack_pointer i32.const 9520 i32.store offset=168 - local.get $0 + local.get $1 call $~lib/array/Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 13136 i32.store offset=8 - local.get $1 + local.get $0 i32.const 13136 call $~lib/string/String.__eq i32.eqz @@ -26437,44 +26412,44 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 2 i32.const 2 i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=156 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 i32.store offset=160 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 1 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 local.get $0 + local.get $1 i32.store offset=160 global.get $~lib/memory/__stack_pointer i32.const 9520 i32.store offset=168 - local.get $0 + local.get $1 call $~lib/array/Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 13232 i32.store offset=8 - local.get $1 + local.get $0 i32.const 13232 call $~lib/string/String.__eq i32.eqz @@ -26492,7 +26467,7 @@ i32.const 3 i32.const 13328 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=152 global.get $~lib/memory/__stack_pointer i32.const 1 @@ -26500,7 +26475,7 @@ i32.const 3 i32.const 13360 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=156 global.get $~lib/memory/__stack_pointer i32.const 2 @@ -26508,7 +26483,7 @@ i32.const 3 i32.const 13392 call $~lib/rt/__newArray - local.tee $3 + local.tee $2 i32.store offset=148 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -26516,18 +26491,18 @@ i32.const 3 i32.const 13424 call $~lib/rt/__newArray - local.tee $2 + local.tee $3 i32.store offset=144 - local.get $1 + local.get $0 call $~lib/array/Array#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 9232 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9232 call $~lib/string/String.__eq i32.eqz @@ -26539,17 +26514,17 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 call $~lib/array/Array#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 13008 i32.store offset=8 - local.get $1 + local.get $0 i32.const 13008 call $~lib/string/String.__eq i32.eqz @@ -26561,17 +26536,17 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 call $~lib/array/Array#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 13472 i32.store offset=8 - local.get $1 + local.get $0 i32.const 13472 call $~lib/string/String.__eq i32.eqz @@ -26583,17 +26558,17 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 call $~lib/array/Array#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 13504 i32.store offset=8 - local.get $1 + local.get $0 i32.const 13504 call $~lib/string/String.__eq i32.eqz @@ -26610,12 +26585,12 @@ i32.const 36 i32.const 13552 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=164 + local.tee $1 local.get $0 + i32.store offset=164 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -26624,23 +26599,23 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 9520 i32.store - local.get $1 + local.get $0 i32.load offset=4 local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.set $1 + local.set $3 i32.const 0 local.set $0 i32.const 0 - local.set $4 - local.get $3 + local.set $6 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -26652,7 +26627,7 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/string/joinIntegerArray - local.get $1 + local.get $3 i32.const 1 i32.sub local.tee $3 @@ -26698,7 +26673,7 @@ i32.store loop $for-loop|06125 local.get $3 - local.get $4 + local.get $6 i32.gt_s if local.get $0 @@ -26707,7 +26682,7 @@ local.get $1 i32.add local.get $2 - local.get $4 + local.get $6 i32.add i32.load8_s call $~lib/util/number/itoa_buffered @@ -26731,10 +26706,10 @@ i32.add local.set $0 end - local.get $4 + local.get $6 i32.const 1 i32.add - local.set $4 + local.set $6 br $for-loop|06125 end end @@ -26799,12 +26774,12 @@ i32.const 9 i32.const 13616 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=164 + local.tee $1 local.get $0 + i32.store offset=164 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -26813,23 +26788,23 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 9520 i32.store - local.get $1 + local.get $0 i32.load offset=4 local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.set $1 + local.set $3 i32.const 0 local.set $0 i32.const 0 - local.set $4 - local.get $3 + local.set $6 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -26841,7 +26816,7 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/string/joinIntegerArray - local.get $1 + local.get $3 i32.const 1 i32.sub local.tee $3 @@ -26887,7 +26862,7 @@ i32.store loop $for-loop|09 local.get $3 - local.get $4 + local.get $6 i32.gt_s if local.get $0 @@ -26895,7 +26870,7 @@ i32.shl local.get $1 i32.add - local.get $4 + local.get $6 i32.const 1 i32.shl local.get $2 @@ -26922,10 +26897,10 @@ i32.add local.set $0 end - local.get $4 + local.get $6 i32.const 1 i32.add - local.set $4 + local.set $6 br $for-loop|09 end end @@ -26992,12 +26967,12 @@ i32.const 37 i32.const 13696 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=164 + local.tee $1 local.get $0 + i32.store offset=164 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -27006,26 +26981,26 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9520 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 13744 i32.store offset=8 - local.get $1 + local.get $0 i32.const 13744 call $~lib/string/String.__eq i32.eqz @@ -27042,12 +27017,12 @@ i32.const 38 i32.const 13824 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=164 + local.tee $1 local.get $0 + i32.store offset=164 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -27056,26 +27031,26 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9520 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 13888 i32.store offset=8 - local.get $1 + local.get $0 i32.const 13888 call $~lib/string/String.__eq i32.eqz @@ -27093,18 +27068,18 @@ i32.const 31 i32.const 14000 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=140 - local.get $1 + local.get $0 call $~lib/array/Array<~lib/string/String|null>#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 14048 i32.store offset=8 - local.get $1 + local.get $0 i32.const 14048 call $~lib/string/String.__eq i32.eqz @@ -27121,20 +27096,20 @@ i32.const 31 i32.const 14160 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=164 - local.get $1 + local.get $0 call $~lib/array/Array<~lib/string/String|null>#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 14208 i32.store offset=8 - local.get $1 + local.get $0 i32.const 14208 call $~lib/string/String.__eq i32.eqz @@ -27147,19 +27122,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 2 i32.const 2 i32.const 26 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=136 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 i32.store offset=160 - local.get $0 + local.get $1 i32.const 0 i32.const 2 i32.const 2 @@ -27167,7 +27142,7 @@ i32.const 14240 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 1 i32.const 2 i32.const 2 @@ -27175,8 +27150,8 @@ i32.const 14272 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 local.get $0 + local.get $1 i32.store offset=160 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -27187,21 +27162,21 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $0 i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 9520 i32.store - local.get $0 + local.get $1 i32.load offset=4 local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.set $0 + local.set $3 i32.const 0 local.set $1 - local.get $3 + local.get $0 i32.const 12 i32.sub global.set $~lib/memory/__stack_pointer @@ -27210,14 +27185,14 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $0 i64.const 0 i64.store - local.get $3 + local.get $0 i32.const 0 i32.store offset=8 block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> - local.get $0 + local.get $3 i32.const 1 i32.sub local.tee $3 @@ -27238,11 +27213,11 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.load - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 if (result i32) - local.get $1 + local.get $0 call $~lib/array/Array#toString else i32.const 9232 @@ -27263,7 +27238,7 @@ i32.load i32.const 1 i32.shr_u - local.set $4 + local.set $6 loop $for-loop|011132 local.get $1 local.get $3 @@ -27293,7 +27268,7 @@ local.tee $0 i32.store offset=4 end - local.get $4 + local.get $6 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -27362,19 +27337,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 2 i32.const 2 i32.const 39 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=136 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 i32.store offset=132 - local.get $0 + local.get $1 i32.const 0 i32.const 2 i32.const 0 @@ -27382,7 +27357,7 @@ i32.const 14352 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 1 i32.const 2 i32.const 0 @@ -27390,8 +27365,8 @@ i32.const 14384 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 local.get $0 + local.get $1 i32.store offset=132 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -27402,21 +27377,21 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $0 i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 9520 i32.store - local.get $0 + local.get $1 i32.load offset=4 local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.set $0 + local.set $3 i32.const 0 local.set $1 - local.get $3 + local.get $0 i32.const 12 i32.sub global.set $~lib/memory/__stack_pointer @@ -27425,14 +27400,14 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $0 i64.const 0 i64.store - local.get $3 + local.get $0 i32.const 0 i32.store offset=8 block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> - local.get $0 + local.get $3 i32.const 1 i32.sub local.tee $3 @@ -27453,11 +27428,11 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.load - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 if (result i32) - local.get $1 + local.get $0 call $~lib/array/Array#toString else i32.const 9232 @@ -27478,7 +27453,7 @@ i32.load i32.const 1 i32.shr_u - local.set $4 + local.set $6 loop $for-loop|013 local.get $1 local.get $3 @@ -27508,7 +27483,7 @@ local.tee $0 i32.store offset=4 end - local.get $4 + local.get $6 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -27577,16 +27552,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 1 i32.const 2 i32.const 41 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=136 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 i32.store offset=128 global.get $~lib/memory/__stack_pointer @@ -27595,13 +27570,13 @@ i32.const 40 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $2 i32.store offset=124 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.load offset=4 i32.store offset=120 - local.get $3 + local.get $2 i32.const 0 i32.const 1 i32.const 2 @@ -27609,12 +27584,12 @@ i32.const 14416 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 0 - local.get $3 + local.get $2 call $~lib/array/Array#__uset - local.get $1 local.get $0 + local.get $1 i32.store offset=128 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -27625,21 +27600,21 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $0 i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 9520 i32.store - local.get $0 + local.get $1 i32.load offset=4 local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.set $0 + local.set $3 i32.const 0 local.set $1 - local.get $3 + local.get $0 i32.const 12 i32.sub global.set $~lib/memory/__stack_pointer @@ -27648,14 +27623,14 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $0 i64.const 0 i64.store - local.get $3 + local.get $0 i32.const 0 i32.store offset=8 block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array<~lib/array/Array>> - local.get $0 + local.get $3 i32.const 1 i32.sub local.tee $3 @@ -27676,11 +27651,11 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.load - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 if (result i32) - local.get $1 + local.get $0 call $~lib/array/Array<~lib/array/Array>#toString else i32.const 9232 @@ -27701,7 +27676,7 @@ i32.load i32.const 1 i32.shr_u - local.set $4 + local.set $6 loop $for-loop|015 local.get $1 local.get $3 @@ -27731,7 +27706,7 @@ local.tee $0 i32.store offset=4 end - local.get $4 + local.get $6 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -27800,19 +27775,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 4 i32.const 2 i32.const 26 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=128 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 i32.store offset=132 - local.get $0 + local.get $1 i32.const 0 i32.const 1 i32.const 2 @@ -27820,7 +27795,7 @@ i32.const 14448 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 1 i32.const 3 i32.const 2 @@ -27828,7 +27803,7 @@ i32.const 14480 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 2 i32.const 3 i32.const 2 @@ -27836,7 +27811,7 @@ i32.const 14512 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 3 i32.const 3 i32.const 2 @@ -27844,11 +27819,11 @@ i32.const 14544 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 local.get $0 + local.get $1 i32.store offset=132 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 call $~lib/array/Array<~lib/array/Array>#flat local.tee $1 i32.store offset=128 @@ -27892,19 +27867,19 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 4 i32.const 2 i32.const 42 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $3 i32.store offset=160 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.load offset=4 i32.store offset=140 - local.get $0 + local.get $3 i32.const 0 i32.const 1 i32.const 2 @@ -27912,7 +27887,7 @@ i32.const 14608 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 + local.get $3 i32.const 1 i32.const 3 i32.const 2 @@ -27920,7 +27895,7 @@ i32.const 14704 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 + local.get $3 i32.const 2 i32.const 3 i32.const 2 @@ -27928,7 +27903,7 @@ i32.const 14832 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 + local.get $3 i32.const 3 i32.const 1 i32.const 2 @@ -27936,14 +27911,14 @@ i32.const 14896 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 local.get $0 + local.get $3 i32.store offset=140 global.get $~lib/memory/__stack_pointer i32.const 0 local.set $1 i32.const 0 - local.set $4 + local.set $6 i32.const 0 local.set $2 global.get $~lib/memory/__stack_pointer @@ -27957,21 +27932,21 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - local.get $0 + local.get $3 i32.load offset=4 - local.set $7 - local.get $0 - i32.load offset=12 local.set $8 + local.get $3 + i32.load offset=12 + local.set $3 loop $for-loop|0137 local.get $1 - local.get $8 + local.get $3 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $7 + local.get $8 i32.add i32.load local.tee $0 @@ -27981,9 +27956,9 @@ else i32.const 0 end - local.get $4 + local.get $6 i32.add - local.set $4 + local.set $6 local.get $1 i32.const 1 i32.add @@ -27992,7 +27967,7 @@ end end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.const 2 i32.shl local.tee $1 @@ -28007,7 +27982,7 @@ local.tee $0 i32.store offset=4 local.get $0 - local.get $4 + local.get $6 i32.store offset=12 local.get $0 local.get $1 @@ -28029,13 +28004,13 @@ local.set $1 loop $for-loop|1138 local.get $1 - local.get $8 + local.get $3 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $7 + local.get $8 i32.add i32.load local.tee $10 @@ -28067,7 +28042,7 @@ local.set $1 loop $for-loop|2139 local.get $1 - local.get $4 + local.get $6 i32.lt_s if local.get $1 @@ -28103,9 +28078,9 @@ i32.const 31 i32.const 14928 call $~lib/rt/__newArray - local.tee $3 + local.tee $2 i32.store offset=148 - local.get $1 + local.get $0 i32.load offset=12 i32.const 8 i32.ne @@ -28120,7 +28095,7 @@ i32.const 0 local.set $0 loop $for-loop|8 - local.get $3 + local.get $2 i32.load offset=12 local.get $0 i32.gt_s @@ -28128,19 +28103,19 @@ local.get $1 local.get $0 call $~lib/array/Array#__get - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store local.get $3 + i32.store + local.get $2 local.get $0 call $~lib/array/Array#__get - local.set $4 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store offset=8 - local.get $2 - local.get $4 + local.get $3 + local.get $6 call $~lib/string/String.__eq i32.eqz if @@ -28159,19 +28134,19 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 2 i32.const 2 i32.const 26 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=144 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 i32.store offset=156 - local.get $0 + local.get $1 i32.const 0 i32.const 0 i32.const 2 @@ -28179,7 +28154,7 @@ i32.const 14992 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 1 i32.const 0 i32.const 2 @@ -28187,16 +28162,16 @@ i32.const 15024 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 local.get $0 + local.get $1 i32.store offset=156 - local.get $0 + local.get $1 call $~lib/array/Array<~lib/array/Array>#flat - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 if i32.const 0 @@ -28207,19 +28182,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 2 i32.const 2 i32.const 26 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $1 i32.store offset=144 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.load offset=4 i32.store offset=152 - local.get $3 + local.get $1 i32.const 0 i32.const 1 i32.const 2 @@ -28227,7 +28202,7 @@ i32.const 15056 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $3 + local.get $1 i32.const 1 i32.const 1 i32.const 2 @@ -28235,8 +28210,8 @@ i32.const 15088 call $~lib/rt/__newArray call $~lib/array/Array#__uset + local.get $0 local.get $1 - local.get $3 i32.store offset=152 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -28253,31 +28228,31 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 i32.const 0 i32.store offset=8 - local.get $2 local.get $3 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 2 i32.const 26 i32.const 0 call $~lib/rt/__newArray - local.tee $4 + local.tee $6 i32.store - local.get $4 + local.get $6 i32.load offset=4 local.set $7 loop $for-loop|0163 - local.get $2 local.get $3 + local.get $1 i32.load offset=12 local.tee $8 - local.get $2 + local.get $3 local.get $8 i32.lt_s select @@ -28290,7 +28265,7 @@ i32.const 2 i32.shl local.tee $9 - local.get $3 + local.get $1 i32.load offset=4 i32.add i32.load @@ -28301,7 +28276,7 @@ local.get $8 local.get $10 local.get $0 - local.get $3 + local.get $1 i32.const 15120 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -28314,7 +28289,7 @@ i32.store local.get $8 if - local.get $4 + local.get $6 local.get $8 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link @@ -28331,13 +28306,13 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store - local.get $4 + local.get $6 call $~lib/array/Array<~lib/array/Array>#flat - local.tee $1 + local.tee $0 i32.store offset=144 - local.get $1 + local.get $0 i32.load offset=12 i32.const 4 i32.ne @@ -28349,7 +28324,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 1 @@ -28362,7 +28337,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.const 3 @@ -28375,7 +28350,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/array/Array#__get i32.const 2 @@ -28388,7 +28363,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 call $~lib/array/Array#__get i32.const 3 @@ -33159,22 +33134,23 @@ end local.get $3 local.get $0 - i32.load offset=12 local.tee $4 + i32.load offset=12 + local.tee $5 local.get $3 - local.get $4 + local.get $5 i32.lt_s select local.set $3 local.get $0 i32.load offset=4 - local.tee $5 + local.tee $0 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $4 + local.get $5 i32.add local.tee $1 i32.const 0 @@ -33184,76 +33160,76 @@ select else local.get $1 - local.get $4 + local.get $5 local.get $1 - local.get $4 + local.get $5 i32.lt_s select end local.tee $1 i32.add + local.get $0 local.get $2 i32.const 0 i32.lt_s if (result i32) local.get $2 - local.get $4 + local.get $5 i32.add - local.tee $2 + local.tee $0 i32.const 0 - local.get $2 + local.get $0 i32.const 0 i32.gt_s select else local.get $2 - local.get $4 + local.get $5 local.get $2 - local.get $4 + local.get $5 i32.lt_s select end - local.tee $2 - local.get $5 + local.tee $0 i32.add local.get $3 i32.const 0 i32.lt_s if (result i32) local.get $3 - local.get $4 + local.get $5 i32.add - local.tee $3 + local.tee $2 i32.const 0 - local.get $3 + local.get $2 i32.const 0 i32.gt_s select else local.get $3 - local.get $4 + local.get $5 local.get $3 - local.get $4 + local.get $5 i32.lt_s select end - local.get $2 + local.get $0 i32.sub - local.tee $2 - local.get $4 + local.tee $0 + local.get $5 local.get $1 i32.sub local.tee $1 + local.get $0 local.get $1 - local.get $2 - i32.gt_s + i32.lt_s select call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $4 ) (func $export:~lib/array/Array#pop (param $0 i32) (result i32) (local $1 i32) diff --git a/tests/compiler/std/arraybuffer.optimized.wat b/tests/compiler/std/arraybuffer.optimized.wat index 7c6d997399..6fab8e3fb4 100644 --- a/tests/compiler/std/arraybuffer.optimized.wat +++ b/tests/compiler/std/arraybuffer.optimized.wat @@ -494,7 +494,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -505,7 +505,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -525,37 +525,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -571,7 +571,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -581,20 +581,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -622,7 +622,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -1960,17 +1960,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -2149,39 +2149,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2189,35 +2184,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2225,55 +2216,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -2294,59 +2279,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -2363,7 +2341,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -2374,11 +2352,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -2392,17 +2370,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end diff --git a/tests/compiler/std/dataview.optimized.wat b/tests/compiler/std/dataview.optimized.wat index e12cf08b57..9dfa64182e 100644 --- a/tests/compiler/std/dataview.optimized.wat +++ b/tests/compiler/std/dataview.optimized.wat @@ -500,7 +500,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -511,7 +511,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -531,37 +531,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -577,7 +577,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -587,20 +587,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -628,7 +628,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/std/date.optimized.wat b/tests/compiler/std/date.optimized.wat index 2ef89098ac..c554de81ae 100644 --- a/tests/compiler/std/date.optimized.wat +++ b/tests/compiler/std/date.optimized.wat @@ -861,7 +861,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -872,7 +872,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -892,37 +892,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -938,7 +938,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -948,20 +948,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -989,7 +989,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -2958,17 +2958,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -3147,39 +3147,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -3187,35 +3182,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -3223,55 +3214,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -3292,59 +3277,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -3361,7 +3339,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -3372,11 +3350,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -3390,17 +3368,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -3887,16 +3865,16 @@ local.tee $7 i32.const 1 i32.add - local.tee $6 - local.tee $3 + local.tee $8 + local.tee $2 local.get $0 i32.load offset=8 - local.tee $10 + local.tee $3 i32.const 2 i32.shr_u i32.gt_u if - local.get $3 + local.get $2 i32.const 268435455 i32.gt_u if @@ -3908,38 +3886,38 @@ unreachable end block $__inlined_func$~lib/rt/itcms/__renew - local.get $10 + local.get $3 i32.const 1 i32.shl - local.tee $2 + local.tee $4 i32.const 1073741820 - local.get $2 + local.get $4 i32.const 1073741820 i32.lt_u select - local.tee $2 - local.get $3 + local.tee $4 + local.get $2 i32.const 8 - local.get $3 + local.get $2 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $3 + local.tee $2 local.get $2 - local.get $3 - i32.gt_u + local.get $4 + i32.lt_u select - local.tee $8 - local.tee $4 + local.tee $6 + local.tee $10 local.get $0 i32.load - local.tee $5 - local.tee $3 + local.tee $9 + local.tee $2 i32.const 20 i32.sub - local.tee $9 + local.tee $5 i32.load i32.const -4 i32.and @@ -3947,56 +3925,56 @@ i32.sub i32.le_u if - local.get $9 - local.get $4 + local.get $5 + local.get $10 i32.store offset=16 br $__inlined_func$~lib/rt/itcms/__renew end - local.get $4 - local.get $9 + local.get $10 + local.get $5 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $2 - local.get $3 - local.get $4 - local.get $9 + local.tee $4 + local.get $2 + local.get $10 + local.get $5 i32.load offset=16 - local.tee $3 - local.get $3 - local.get $4 + local.tee $2 + local.get $2 + local.get $10 i32.gt_u select call $~lib/memory/memory.copy - local.get $2 - local.set $3 + local.get $4 + local.set $2 end + local.get $2 local.get $3 - local.get $10 i32.add - local.get $8 - local.get $10 + local.get $6 + local.get $3 i32.sub call $~lib/memory/memory.fill - local.get $3 - local.get $5 + local.get $2 + local.get $9 i32.ne if local.get $0 - local.get $3 + local.get $2 i32.store local.get $0 - local.get $3 + local.get $2 i32.store offset=4 - local.get $3 + local.get $2 if local.get $0 - local.get $3 + local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end end local.get $0 - local.get $8 + local.get $6 i32.store offset=8 end local.get $0 @@ -4015,7 +3993,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 + local.get $8 i32.store offset=12 ) (func $~lib/util/string/strtol (param $0 i32) (result i32) @@ -4030,7 +4008,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -4038,27 +4016,28 @@ end local.get $0 i32.load16_u - local.set $2 + local.set $1 loop $while-continue|0 block $__inlined_func$~lib/util/string/isSpace (result i32) - local.get $2 + local.get $1 + local.tee $3 i32.const 128 i32.or i32.const 160 i32.eq - local.get $2 + local.get $1 i32.const 9 i32.sub i32.const 4 i32.le_u i32.or - local.get $2 + local.get $1 i32.const 5760 i32.lt_u br_if $__inlined_func$~lib/util/string/isSpace drop i32.const 1 - local.get $2 + local.get $3 i32.const -8192 i32.add i32.const 10 @@ -4067,31 +4046,31 @@ drop block $break|0 block $case6|0 - local.get $2 + local.get $3 i32.const 5760 i32.eq br_if $case6|0 - local.get $2 + local.get $3 i32.const 8232 i32.eq br_if $case6|0 - local.get $2 + local.get $3 i32.const 8233 i32.eq br_if $case6|0 - local.get $2 + local.get $3 i32.const 8239 i32.eq br_if $case6|0 - local.get $2 + local.get $3 i32.const 8287 i32.eq br_if $case6|0 - local.get $2 + local.get $3 i32.const 12288 i32.eq br_if $case6|0 - local.get $2 + local.get $3 i32.const 65279 i32.eq br_if $case6|0 @@ -4108,28 +4087,28 @@ i32.add local.tee $0 i32.load16_u - local.set $2 - local.get $1 + local.set $1 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $2 br $while-continue|0 end end i32.const 1 - local.set $5 - local.get $2 + local.set $3 + local.get $1 i32.const 43 i32.eq - local.get $2 + local.get $1 i32.const 45 i32.eq i32.or if (result i32) - local.get $1 + local.get $2 i32.const 1 i32.sub - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -4137,22 +4116,22 @@ end i32.const -1 i32.const 1 - local.get $2 + local.get $1 i32.const 45 i32.eq select - local.set $5 + local.set $3 local.get $0 i32.const 2 i32.add local.tee $0 i32.load16_u else - local.get $2 + local.get $1 end i32.const 48 i32.eq - local.get $1 + local.get $2 i32.const 2 i32.gt_s i32.and @@ -4164,15 +4143,15 @@ i32.load16_u offset=2 i32.const 32 i32.or - local.tee $2 + local.tee $1 i32.const 98 i32.ne if - local.get $2 + local.get $1 i32.const 111 i32.eq br_if $case1|1 - local.get $2 + local.get $1 i32.const 120 i32.eq br_if $case2|1 @@ -4182,10 +4161,10 @@ i32.const 4 i32.add local.set $0 - local.get $1 + local.get $2 i32.const 2 i32.sub - local.set $1 + local.set $2 i32.const 2 local.set $4 br $break|1 @@ -4194,10 +4173,10 @@ i32.const 4 i32.add local.set $0 - local.get $1 + local.get $2 i32.const 2 i32.sub - local.set $1 + local.set $2 i32.const 8 local.set $4 br $break|1 @@ -4206,10 +4185,10 @@ i32.const 4 i32.add local.set $0 - local.get $1 + local.get $2 i32.const 2 i32.sub - local.set $1 + local.set $2 i32.const 16 local.set $4 end @@ -4221,40 +4200,40 @@ local.set $4 loop $while-continue|2 block $while-break|2 - local.get $1 - local.tee $2 + local.get $2 + local.tee $1 i32.const 1 i32.sub - local.set $1 - local.get $2 + local.set $2 + local.get $1 if local.get $0 i32.load16_u - local.tee $2 + local.tee $1 i32.const 48 i32.sub i32.const 10 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 48 i32.sub else - local.get $2 + local.get $1 i32.const 65 i32.sub i32.const 25 i32.le_u if (result i32) - local.get $2 + local.get $1 i32.const 55 i32.sub else - local.get $2 + local.get $1 i32.const 87 i32.sub - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.const 97 i32.sub i32.const 25 @@ -4262,11 +4241,11 @@ select end end - local.tee $2 + local.tee $1 local.get $4 i32.ge_u if - local.get $3 + local.get $5 i32.eqz if i32.const 0 @@ -4274,12 +4253,12 @@ end br $while-break|2 end - local.get $2 - local.get $3 + local.get $1 local.get $4 + local.get $5 i32.mul i32.add - local.set $3 + local.set $5 local.get $0 i32.const 2 i32.add @@ -4329,18 +4308,19 @@ return end local.get $0 + local.tee $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 - local.get $0 i32.add - local.set $1 + local.set $0 loop $while-continue|0 local.get $0 local.get $1 - i32.lt_u + i32.gt_u if - local.get $0 + local.get $1 i32.load local.tee $2 if @@ -4350,30 +4330,31 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $0 + local.get $1 i32.const 4 i32.add - local.set $0 + local.set $1 br $while-continue|0 end end return end local.get $0 - i32.load offset=4 local.tee $1 + i32.load offset=4 + local.tee $2 local.get $0 i32.load offset=12 i32.const 2 i32.shl i32.add - local.set $2 + local.set $0 loop $while-continue|01 - local.get $1 + local.get $0 local.get $2 - i32.lt_u + i32.gt_u if - local.get $1 + local.get $2 i32.load local.tee $3 if @@ -4383,14 +4364,14 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $1 + local.get $2 i32.const 4 i32.add - local.set $1 + local.set $2 br $while-continue|01 end end - local.get $0 + local.get $1 i32.load local.tee $0 if @@ -5899,7 +5880,6 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 28 i32.sub @@ -6074,9 +6054,9 @@ local.get $1 i32.const 1616 call $~lib/string/String#split - local.tee $7 + local.tee $6 i32.store offset=24 - local.get $7 + local.get $6 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get local.set $0 @@ -6087,27 +6067,27 @@ call $~lib/util/string/strtol i32.const 1 local.set $1 - local.get $7 + local.get $6 i32.load offset=12 - local.tee $6 + local.tee $0 i32.const 2 i32.ge_s if (result i32) - local.get $7 + local.get $6 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $0 + local.get $1 call $~lib/util/string/strtol local.set $1 - local.get $6 + local.get $0 i32.const 3 i32.ge_s if (result i32) - local.get $7 + local.get $6 i32.const 2 call $~lib/array/Array<~lib/string/String>#__get local.set $0 diff --git a/tests/compiler/std/map.optimized.wat b/tests/compiler/std/map.optimized.wat index 42ebcc914a..cf2b5dd196 100644 --- a/tests/compiler/std/map.optimized.wat +++ b/tests/compiler/std/map.optimized.wat @@ -508,7 +508,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -519,7 +519,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -539,37 +539,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -585,7 +585,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -595,20 +595,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -636,7 +636,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -2225,17 +2225,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -2414,39 +2414,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2454,35 +2449,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2490,55 +2481,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -2559,59 +2544,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -2628,7 +2606,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -2639,11 +2617,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -2657,17 +2635,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -3463,10 +3441,10 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i32.const 0 i32.store - local.get $4 + local.get $3 i32.const 24 i32.const 3 call $~lib/rt/itcms/__new @@ -3475,12 +3453,12 @@ local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $4 + local.tee $3 i32.store - local.get $4 + local.get $3 if local.get $11 - local.get $4 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $11 @@ -3489,12 +3467,12 @@ local.get $11 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $4 + local.tee $3 i32.store offset=8 - local.get $4 + local.get $3 if local.get $11 - local.get $4 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $11 @@ -3514,7 +3492,7 @@ local.get $11 i32.store loop $for-loop|1 - local.get $3 + local.get $4 i32.extend8_s i32.const 100 i32.lt_s @@ -3523,7 +3501,7 @@ i32.load local.get $11 i32.load offset=4 - local.get $3 + local.get $4 i32.extend8_s i32.const -1028477379 i32.mul @@ -3557,12 +3535,12 @@ i32.shl i32.add i32.load - local.set $6 + local.set $5 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $6 + local.get $5 if - local.get $6 + local.get $5 i32.load offset=8 local.tee $2 i32.const 1 @@ -3570,9 +3548,9 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load8_u - local.get $3 + local.get $4 i32.const 255 i32.and i32.eq @@ -3581,14 +3559,14 @@ local.get $2 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|0 end end i32.const 0 - local.set $6 + local.set $5 end - local.get $6 + local.get $5 if i32.const 0 i32.const 1568 @@ -3598,8 +3576,8 @@ unreachable end local.get $11 - local.get $3 - local.get $3 + local.get $4 + local.get $4 i32.extend8_s local.tee $2 i32.const 10 @@ -3642,12 +3620,12 @@ i32.shl i32.add i32.load - local.set $6 + local.set $5 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $6 + local.get $5 if - local.get $6 + local.get $5 i32.load offset=8 local.tee $2 i32.const 1 @@ -3655,9 +3633,9 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load8_u - local.get $3 + local.get $4 i32.const 255 i32.and i32.eq @@ -3666,14 +3644,14 @@ local.get $2 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|02 end end i32.const 0 - local.set $6 + local.set $5 end - local.get $6 + local.get $5 i32.eqz if i32.const 0 @@ -3684,9 +3662,9 @@ unreachable end local.get $11 - local.get $3 + local.get $4 call $~lib/map/Map#get - local.get $3 + local.get $4 i32.extend8_s i32.const 10 i32.add @@ -3699,10 +3677,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|1 end end @@ -3719,9 +3697,9 @@ unreachable end i32.const 0 - local.set $3 + local.set $4 loop $for-loop|3 - local.get $3 + local.get $4 i32.extend8_s i32.const 100 i32.lt_s @@ -3730,7 +3708,7 @@ i32.load local.get $11 i32.load offset=4 - local.get $3 + local.get $4 i32.extend8_s i32.const -1028477379 i32.mul @@ -3764,12 +3742,12 @@ i32.shl i32.add i32.load - local.set $6 + local.set $5 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $6 + local.get $5 if - local.get $6 + local.get $5 i32.load offset=8 local.tee $2 i32.const 1 @@ -3777,9 +3755,9 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load8_u - local.get $3 + local.get $4 i32.const 255 i32.and i32.eq @@ -3788,14 +3766,14 @@ local.get $2 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|05 end end i32.const 0 - local.set $6 + local.set $5 end - local.get $6 + local.get $5 i32.eqz if i32.const 0 @@ -3806,9 +3784,9 @@ unreachable end local.get $11 - local.get $3 + local.get $4 call $~lib/map/Map#get - local.get $3 + local.get $4 i32.extend8_s i32.const 10 i32.add @@ -3822,8 +3800,8 @@ unreachable end local.get $11 - local.get $3 - local.get $3 + local.get $4 + local.get $4 i32.extend8_s local.tee $2 i32.const 20 @@ -3866,12 +3844,12 @@ i32.shl i32.add i32.load - local.set $6 + local.set $5 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $6 + local.get $5 if - local.get $6 + local.get $5 i32.load offset=8 local.tee $2 i32.const 1 @@ -3879,9 +3857,9 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load8_u - local.get $3 + local.get $4 i32.const 255 i32.and i32.eq @@ -3890,14 +3868,14 @@ local.get $2 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|08 end end i32.const 0 - local.set $6 + local.set $5 end - local.get $6 + local.get $5 i32.eqz if i32.const 0 @@ -3908,9 +3886,9 @@ unreachable end local.get $11 - local.get $3 + local.get $4 call $~lib/map/Map#get - local.get $3 + local.get $4 i32.extend8_s i32.const 20 i32.add @@ -3923,10 +3901,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|3 end end @@ -3972,25 +3950,25 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i64.const 0 i64.store - local.get $4 + local.get $3 i32.const 16 i32.const 4 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $4 i32.store - local.get $5 + local.get $4 i32.const 0 i32.store - local.get $5 + local.get $4 i32.const 0 i32.store offset=4 - local.get $5 + local.get $4 i32.const 0 i32.store offset=8 - local.get $5 + local.get $4 i32.const 0 i32.store offset=12 local.get $6 @@ -4011,30 +3989,30 @@ i32.const 8 i32.gt_u select - local.tee $3 + local.tee $5 i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $3 i32.store offset=4 - local.get $4 local.get $3 - call $~lib/memory/memory.fill local.get $5 + call $~lib/memory/memory.fill local.get $4 + local.get $3 i32.store - local.get $4 + local.get $3 if - local.get $5 local.get $4 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 local.get $4 + local.get $3 i32.store offset=4 + local.get $4 local.get $5 - local.get $3 i32.store offset=8 - local.get $5 + local.get $4 local.get $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -4042,7 +4020,7 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $5 + local.get $4 i32.store loop $for-loop|0 local.get $7 @@ -4060,7 +4038,7 @@ i32.and i32.eqz if - local.get $5 + local.get $4 local.get $1 local.get $2 i32.load8_s @@ -4077,19 +4055,19 @@ br $for-loop|0 end end - local.get $5 + local.get $4 local.get $1 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $5 + local.get $4 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $11 @@ -4106,10 +4084,10 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.const 6 call $~lib/rt/itcms/__new @@ -4118,12 +4096,12 @@ local.get $10 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if local.get $10 - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $10 @@ -4132,12 +4110,12 @@ local.get $10 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store offset=8 - local.get $2 + local.get $1 if local.get $10 - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $10 @@ -4157,17 +4135,17 @@ i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $1 + local.tee $9 i32.store offset=16 loop $for-loop|4 - local.get $5 + local.get $4 i32.load offset=12 local.get $0 i32.gt_s if local.get $0 local.tee $3 - local.get $5 + local.get $4 i32.load offset=12 i32.ge_u if @@ -4179,20 +4157,20 @@ unreachable end local.get $3 - local.get $5 + local.get $4 i32.load offset=4 i32.add i32.load8_s - local.set $4 + local.set $2 local.get $15 local.get $3 call $~lib/array/Array#__get - local.set $9 + local.set $8 local.get $11 i32.load local.get $11 i32.load offset=4 - local.get $4 + local.get $2 i32.extend8_s i32.const -1028477379 i32.mul @@ -4226,12 +4204,12 @@ i32.shl i32.add i32.load - local.set $6 + local.set $5 block $__inlined_func$~lib/map/Map#find10 loop $while-continue|011 - local.get $6 + local.get $5 if - local.get $6 + local.get $5 i32.load offset=8 local.tee $0 i32.const 1 @@ -4239,9 +4217,9 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load8_u - local.get $4 + local.get $2 i32.const 255 i32.and i32.eq @@ -4250,14 +4228,14 @@ local.get $0 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|011 end end i32.const 0 - local.set $6 + local.set $5 end - local.get $6 + local.get $5 i32.eqz if i32.const 0 @@ -4271,10 +4249,10 @@ i32.load local.get $11 i32.load offset=4 - local.get $9 + local.get $8 i32.const 20 i32.sub - local.tee $2 + local.tee $1 i32.extend8_s i32.const -1028477379 i32.mul @@ -4308,12 +4286,12 @@ i32.shl i32.add i32.load - local.set $6 + local.set $5 block $__inlined_func$~lib/map/Map#find13 loop $while-continue|014 - local.get $6 + local.get $5 if - local.get $6 + local.get $5 i32.load offset=8 local.tee $0 i32.const 1 @@ -4321,9 +4299,9 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load8_u - local.get $2 + local.get $1 i32.const 255 i32.and i32.eq @@ -4332,14 +4310,14 @@ local.get $0 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|014 end end i32.const 0 - local.set $6 + local.set $5 end - local.get $6 + local.get $5 i32.eqz if i32.const 0 @@ -4362,7 +4340,7 @@ i32.store local.get $10 i32.load - local.get $4 + local.get $2 i32.extend8_s i32.const -1028477379 i32.mul @@ -4406,7 +4384,7 @@ if local.get $0 i32.load offset=4 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) @@ -4414,13 +4392,13 @@ else local.get $0 i32.load8_u - local.get $4 + local.get $2 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $2 + local.get $1 i32.const -2 i32.and local.set $0 @@ -4433,7 +4411,7 @@ local.get $0 if local.get $0 - local.get $4 + local.get $2 i32.store8 offset=1 else local.get $10 @@ -4462,7 +4440,7 @@ i32.const 1 i32.or end - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -4476,14 +4454,14 @@ i64.const 0 i64.store local.get $0 - local.get $8 + local.get $7 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -4495,7 +4473,7 @@ i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store offset=4 local.get $10 i32.load offset=8 @@ -4506,7 +4484,7 @@ i32.shl i32.add local.set $12 - local.get $2 + local.get $1 local.set $0 loop $while-continue|016 local.get $12 @@ -4522,14 +4500,14 @@ local.get $0 local.get $16 i32.load8_s - local.tee $6 + local.tee $5 i32.store8 local.get $0 local.get $16 i32.load8_s offset=1 i32.store8 offset=1 local.get $0 - local.get $6 + local.get $5 i32.extend8_s i32.const -1028477379 i32.mul @@ -4539,35 +4517,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $6 + local.tee $5 i32.const 15 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $6 + local.tee $5 i32.const 13 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $6 + local.tee $5 i32.const 16 i32.shr_u - local.get $6 + local.get $5 i32.xor - local.get $8 + local.get $7 i32.and i32.const 2 i32.shl - local.get $7 + local.get $6 i32.add - local.tee $6 + local.tee $5 i32.load i32.store offset=4 - local.get $6 + local.get $5 local.get $0 i32.store local.get $0 @@ -4583,24 +4561,24 @@ end end local.get $10 - local.get $7 + local.get $6 i32.store - local.get $7 + local.get $6 if local.get $10 - local.get $7 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $10 - local.get $8 + local.get $7 i32.store offset=4 local.get $10 - local.get $2 + local.get $1 i32.store offset=8 - local.get $2 + local.get $1 if local.get $10 - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $10 @@ -4618,7 +4596,7 @@ global.get $~lib/memory/__stack_pointer local.get $10 i32.load offset=8 - local.tee $2 + local.tee $1 i32.store local.get $10 local.get $10 @@ -4630,13 +4608,13 @@ local.get $0 i32.const 3 i32.shl - local.get $2 + local.get $1 i32.add - local.tee $2 - local.get $4 + local.tee $1 + local.get $2 i32.store8 + local.get $1 local.get $2 - local.get $4 i32.store8 offset=1 local.get $10 local.get $10 @@ -4644,7 +4622,7 @@ i32.const 1 i32.add i32.store offset=20 - local.get $2 + local.get $1 local.get $10 i32.load local.get $10 @@ -4658,15 +4636,15 @@ i32.load i32.store offset=4 local.get $0 - local.get $2 + local.get $1 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 local.get $9 + local.get $8 i32.const 20 i32.sub local.tee $0 @@ -4691,7 +4669,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -4725,44 +4703,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $1 i32.const 15 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $1 i32.const 13 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $1 i32.const 16 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $4 block $__inlined_func$~lib/map/Map#find18 loop $while-continue|019 - local.get $3 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $4 i32.load8_u local.get $0 i32.const 255 @@ -4770,17 +4748,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find18 - local.get $2 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $4 br $while-continue|019 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 i32.eqz if i32.const 0 @@ -4823,44 +4801,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $1 i32.const 15 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $1 i32.const 13 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $1 i32.const 16 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $4 block $__inlined_func$~lib/map/Map#find21 loop $while-continue|022 - local.get $3 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $4 i32.load8_u local.get $0 i32.const 255 @@ -4868,17 +4846,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find21 - local.get $2 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $4 br $while-continue|022 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 if i32.const 0 i32.const 1568 @@ -4928,44 +4906,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $1 i32.const 15 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $1 i32.const 13 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $1 i32.const 16 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $4 block $__inlined_func$~lib/map/Map#find24 loop $while-continue|025 - local.get $3 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $4 i32.load8_u local.get $0 i32.const 255 @@ -4973,17 +4951,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find24 - local.get $2 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $4 br $while-continue|025 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 if i32.const 0 i32.const 1568 @@ -4996,7 +4974,7 @@ local.get $0 local.get $0 i32.extend8_s - local.tee $2 + local.tee $1 i32.const 10 i32.add call $~lib/map/Map#set @@ -5004,7 +4982,7 @@ i32.load local.get $11 i32.load offset=4 - local.get $2 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761394 @@ -5013,44 +4991,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $1 i32.const 15 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $1 i32.const 13 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $1 i32.const 16 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $4 block $__inlined_func$~lib/map/Map#find27 loop $while-continue|028 - local.get $3 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $4 i32.load8_u local.get $0 i32.const 255 @@ -5058,17 +5036,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find27 - local.get $2 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $4 br $while-continue|028 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 i32.eqz if i32.const 0 @@ -5095,44 +5073,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $1 i32.const 15 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $1 i32.const 13 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $1 i32.const 16 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $4 block $__inlined_func$~lib/map/Map#find30 loop $while-continue|031 - local.get $3 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $4 i32.load8_u local.get $0 i32.const 255 @@ -5140,17 +5118,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find30 - local.get $2 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $4 br $while-continue|031 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 if i32.const 0 i32.const 1568 @@ -5626,10 +5604,10 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i32.const 0 i32.store - local.get $4 + local.get $3 i32.const 24 i32.const 8 call $~lib/rt/itcms/__new @@ -5638,12 +5616,12 @@ local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $4 + local.tee $3 i32.store - local.get $4 + local.get $3 if local.get $11 - local.get $4 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $11 @@ -5652,12 +5630,12 @@ local.get $11 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $4 + local.tee $3 i32.store offset=8 - local.get $4 + local.get $3 if local.get $11 - local.get $4 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $11 @@ -5677,7 +5655,7 @@ local.get $11 i32.store loop $for-loop|1 - local.get $3 + local.get $4 i32.const 255 i32.and i32.const 100 @@ -5687,7 +5665,7 @@ i32.load local.get $11 i32.load offset=4 - local.get $3 + local.get $4 i32.const 255 i32.and i32.const -1028477379 @@ -5722,12 +5700,12 @@ i32.shl i32.add i32.load - local.set $6 + local.set $5 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $6 + local.get $5 if - local.get $6 + local.get $5 i32.load offset=8 local.tee $2 i32.const 1 @@ -5735,9 +5713,9 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load8_u - local.get $3 + local.get $4 i32.const 255 i32.and i32.eq @@ -5746,14 +5724,14 @@ local.get $2 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|0 end end i32.const 0 - local.set $6 + local.set $5 end - local.get $6 + local.get $5 if i32.const 0 i32.const 1568 @@ -5763,8 +5741,8 @@ unreachable end local.get $11 - local.get $3 - local.get $3 + local.get $4 + local.get $4 i32.const 255 i32.and local.tee $2 @@ -5808,12 +5786,12 @@ i32.shl i32.add i32.load - local.set $6 + local.set $5 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $6 + local.get $5 if - local.get $6 + local.get $5 i32.load offset=8 local.tee $2 i32.const 1 @@ -5821,9 +5799,9 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load8_u - local.get $3 + local.get $4 i32.const 255 i32.and i32.eq @@ -5832,14 +5810,14 @@ local.get $2 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|02 end end i32.const 0 - local.set $6 + local.set $5 end - local.get $6 + local.get $5 i32.eqz if i32.const 0 @@ -5850,9 +5828,9 @@ unreachable end local.get $11 - local.get $3 + local.get $4 call $~lib/map/Map#get - local.get $3 + local.get $4 i32.const 255 i32.and i32.const 10 @@ -5866,10 +5844,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|1 end end @@ -5886,9 +5864,9 @@ unreachable end i32.const 0 - local.set $3 + local.set $4 loop $for-loop|3 - local.get $3 + local.get $4 i32.const 255 i32.and i32.const 100 @@ -5898,7 +5876,7 @@ i32.load local.get $11 i32.load offset=4 - local.get $3 + local.get $4 i32.const 255 i32.and i32.const -1028477379 @@ -5933,12 +5911,12 @@ i32.shl i32.add i32.load - local.set $6 + local.set $5 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $6 + local.get $5 if - local.get $6 + local.get $5 i32.load offset=8 local.tee $2 i32.const 1 @@ -5946,9 +5924,9 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load8_u - local.get $3 + local.get $4 i32.const 255 i32.and i32.eq @@ -5957,14 +5935,14 @@ local.get $2 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|05 end end i32.const 0 - local.set $6 + local.set $5 end - local.get $6 + local.get $5 i32.eqz if i32.const 0 @@ -5975,9 +5953,9 @@ unreachable end local.get $11 - local.get $3 + local.get $4 call $~lib/map/Map#get - local.get $3 + local.get $4 i32.const 255 i32.and i32.const 10 @@ -5992,8 +5970,8 @@ unreachable end local.get $11 - local.get $3 - local.get $3 + local.get $4 + local.get $4 i32.const 255 i32.and local.tee $2 @@ -6037,12 +6015,12 @@ i32.shl i32.add i32.load - local.set $6 + local.set $5 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $6 + local.get $5 if - local.get $6 + local.get $5 i32.load offset=8 local.tee $2 i32.const 1 @@ -6050,9 +6028,9 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load8_u - local.get $3 + local.get $4 i32.const 255 i32.and i32.eq @@ -6061,14 +6039,14 @@ local.get $2 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|08 end end i32.const 0 - local.set $6 + local.set $5 end - local.get $6 + local.get $5 i32.eqz if i32.const 0 @@ -6079,9 +6057,9 @@ unreachable end local.get $11 - local.get $3 + local.get $4 call $~lib/map/Map#get - local.get $3 + local.get $4 i32.const 255 i32.and i32.const 20 @@ -6095,10 +6073,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|3 end end @@ -6144,25 +6122,25 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i64.const 0 i64.store - local.get $4 + local.get $3 i32.const 16 i32.const 9 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $4 i32.store - local.get $5 + local.get $4 i32.const 0 i32.store - local.get $5 + local.get $4 i32.const 0 i32.store offset=4 - local.get $5 + local.get $4 i32.const 0 i32.store offset=8 - local.get $5 + local.get $4 i32.const 0 i32.store offset=12 local.get $6 @@ -6183,30 +6161,30 @@ i32.const 8 i32.gt_u select - local.tee $3 + local.tee $5 i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $3 i32.store offset=4 - local.get $4 local.get $3 - call $~lib/memory/memory.fill local.get $5 + call $~lib/memory/memory.fill local.get $4 + local.get $3 i32.store - local.get $4 + local.get $3 if - local.get $5 local.get $4 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 local.get $4 + local.get $3 i32.store offset=4 + local.get $4 local.get $5 - local.get $3 i32.store offset=8 - local.get $5 + local.get $4 local.get $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -6214,7 +6192,7 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $5 + local.get $4 i32.store loop $for-loop|0 local.get $7 @@ -6232,7 +6210,7 @@ i32.and i32.eqz if - local.get $5 + local.get $4 local.get $1 local.get $2 i32.load8_u @@ -6249,19 +6227,19 @@ br $for-loop|0 end end - local.get $5 + local.get $4 local.get $1 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $5 + local.get $4 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $11 @@ -6278,10 +6256,10 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.const 10 call $~lib/rt/itcms/__new @@ -6290,12 +6268,12 @@ local.get $10 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if local.get $10 - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $10 @@ -6304,12 +6282,12 @@ local.get $10 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store offset=8 - local.get $2 + local.get $1 if local.get $10 - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $10 @@ -6329,17 +6307,17 @@ i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $1 + local.tee $9 i32.store offset=16 loop $for-loop|4 - local.get $5 + local.get $4 i32.load offset=12 local.get $0 i32.gt_s if local.get $0 local.tee $3 - local.get $5 + local.get $4 i32.load offset=12 i32.ge_u if @@ -6351,20 +6329,20 @@ unreachable end local.get $3 - local.get $5 + local.get $4 i32.load offset=4 i32.add i32.load8_u - local.set $4 + local.set $2 local.get $15 local.get $3 call $~lib/array/Array#__get - local.set $9 + local.set $8 local.get $11 i32.load local.get $11 i32.load offset=4 - local.get $4 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761394 @@ -6397,12 +6375,12 @@ i32.shl i32.add i32.load - local.set $6 + local.set $5 block $__inlined_func$~lib/map/Map#find10 loop $while-continue|011 - local.get $6 + local.get $5 if - local.get $6 + local.get $5 i32.load offset=8 local.tee $0 i32.const 1 @@ -6410,9 +6388,9 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load8_u - local.get $4 + local.get $2 i32.const 255 i32.and i32.eq @@ -6421,14 +6399,14 @@ local.get $0 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|011 end end i32.const 0 - local.set $6 + local.set $5 end - local.get $6 + local.get $5 i32.eqz if i32.const 0 @@ -6442,10 +6420,10 @@ i32.load local.get $11 i32.load offset=4 - local.get $9 + local.get $8 i32.const 20 i32.sub - local.tee $2 + local.tee $1 i32.const 255 i32.and i32.const -1028477379 @@ -6480,12 +6458,12 @@ i32.shl i32.add i32.load - local.set $6 + local.set $5 block $__inlined_func$~lib/map/Map#find13 loop $while-continue|014 - local.get $6 + local.get $5 if - local.get $6 + local.get $5 i32.load offset=8 local.tee $0 i32.const 1 @@ -6493,9 +6471,9 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load8_u - local.get $2 + local.get $1 i32.const 255 i32.and i32.eq @@ -6504,14 +6482,14 @@ local.get $0 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|014 end end i32.const 0 - local.set $6 + local.set $5 end - local.get $6 + local.get $5 i32.eqz if i32.const 0 @@ -6534,7 +6512,7 @@ i32.store local.get $10 i32.load - local.get $4 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761394 @@ -6577,7 +6555,7 @@ if local.get $0 i32.load offset=4 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) @@ -6585,13 +6563,13 @@ else local.get $0 i32.load8_u - local.get $4 + local.get $2 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $2 + local.get $1 i32.const -2 i32.and local.set $0 @@ -6604,7 +6582,7 @@ local.get $0 if local.get $0 - local.get $4 + local.get $2 i32.store8 offset=1 else local.get $10 @@ -6633,7 +6611,7 @@ i32.const 1 i32.or end - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -6647,14 +6625,14 @@ i64.const 0 i64.store local.get $0 - local.get $8 + local.get $7 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -6666,7 +6644,7 @@ i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store offset=4 local.get $10 i32.load offset=8 @@ -6677,7 +6655,7 @@ i32.shl i32.add local.set $12 - local.get $2 + local.get $1 local.set $0 loop $while-continue|016 local.get $12 @@ -6693,14 +6671,14 @@ local.get $0 local.get $16 i32.load8_u - local.tee $6 + local.tee $5 i32.store8 local.get $0 local.get $16 i32.load8_u offset=1 i32.store8 offset=1 local.get $0 - local.get $6 + local.get $5 i32.const -1028477379 i32.mul i32.const 374761394 @@ -6709,35 +6687,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $6 + local.tee $5 i32.const 15 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $6 + local.tee $5 i32.const 13 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $6 + local.tee $5 i32.const 16 i32.shr_u - local.get $6 + local.get $5 i32.xor - local.get $8 + local.get $7 i32.and i32.const 2 i32.shl - local.get $7 + local.get $6 i32.add - local.tee $6 + local.tee $5 i32.load i32.store offset=4 - local.get $6 + local.get $5 local.get $0 i32.store local.get $0 @@ -6753,24 +6731,24 @@ end end local.get $10 - local.get $7 + local.get $6 i32.store - local.get $7 + local.get $6 if local.get $10 - local.get $7 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $10 - local.get $8 + local.get $7 i32.store offset=4 local.get $10 - local.get $2 + local.get $1 i32.store offset=8 - local.get $2 + local.get $1 if local.get $10 - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $10 @@ -6788,7 +6766,7 @@ global.get $~lib/memory/__stack_pointer local.get $10 i32.load offset=8 - local.tee $2 + local.tee $1 i32.store local.get $10 local.get $10 @@ -6800,13 +6778,13 @@ local.get $0 i32.const 3 i32.shl - local.get $2 + local.get $1 i32.add - local.tee $2 - local.get $4 + local.tee $1 + local.get $2 i32.store8 + local.get $1 local.get $2 - local.get $4 i32.store8 offset=1 local.get $10 local.get $10 @@ -6814,7 +6792,7 @@ i32.const 1 i32.add i32.store offset=20 - local.get $2 + local.get $1 local.get $10 i32.load local.get $10 @@ -6828,15 +6806,15 @@ i32.load i32.store offset=4 local.get $0 - local.get $2 + local.get $1 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 local.get $9 + local.get $8 i32.const 20 i32.sub local.tee $0 @@ -6861,7 +6839,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -6897,44 +6875,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $1 i32.const 15 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $1 i32.const 13 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $1 i32.const 16 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $4 block $__inlined_func$~lib/map/Map#find18 loop $while-continue|019 - local.get $3 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $4 i32.load8_u local.get $0 i32.const 255 @@ -6942,17 +6920,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find18 - local.get $2 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $4 br $while-continue|019 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 i32.eqz if i32.const 0 @@ -6997,44 +6975,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $1 i32.const 15 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $1 i32.const 13 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $1 i32.const 16 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $4 block $__inlined_func$~lib/map/Map#find21 loop $while-continue|022 - local.get $3 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $4 i32.load8_u local.get $0 i32.const 255 @@ -7042,17 +7020,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find21 - local.get $2 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $4 br $while-continue|022 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 if i32.const 0 i32.const 1568 @@ -7104,44 +7082,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $1 i32.const 15 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $1 i32.const 13 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $1 i32.const 16 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $4 block $__inlined_func$~lib/map/Map#find24 loop $while-continue|025 - local.get $3 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $4 i32.load8_u local.get $0 i32.const 255 @@ -7149,17 +7127,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find24 - local.get $2 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $4 br $while-continue|025 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 if i32.const 0 i32.const 1568 @@ -7173,7 +7151,7 @@ local.get $0 i32.const 255 i32.and - local.tee $2 + local.tee $1 i32.const 10 i32.add call $~lib/map/Map#set @@ -7181,7 +7159,7 @@ i32.load local.get $11 i32.load offset=4 - local.get $2 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761394 @@ -7190,44 +7168,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $1 i32.const 15 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $1 i32.const 13 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $1 i32.const 16 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $4 block $__inlined_func$~lib/map/Map#find27 loop $while-continue|028 - local.get $3 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $4 i32.load8_u local.get $0 i32.const 255 @@ -7235,17 +7213,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find27 - local.get $2 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $4 br $while-continue|028 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 i32.eqz if i32.const 0 @@ -7273,44 +7251,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $1 i32.const 15 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $1 i32.const 13 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $1 i32.const 16 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $4 block $__inlined_func$~lib/map/Map#find30 loop $while-continue|031 - local.get $3 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $4 i32.load8_u local.get $0 i32.const 255 @@ -7318,17 +7296,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find30 - local.get $2 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $4 br $while-continue|031 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 if i32.const 0 i32.const 1568 @@ -7842,10 +7820,10 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i32.const 0 i32.store - local.get $4 + local.get $3 i32.const 24 i32.const 11 call $~lib/rt/itcms/__new @@ -7854,12 +7832,12 @@ local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $4 + local.tee $3 i32.store - local.get $4 + local.get $3 if local.get $11 - local.get $4 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $11 @@ -7868,12 +7846,12 @@ local.get $11 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $4 + local.tee $3 i32.store offset=8 - local.get $4 + local.get $3 if local.get $11 - local.get $4 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $11 @@ -7893,7 +7871,7 @@ local.get $11 i32.store loop $for-loop|1 - local.get $3 + local.get $4 i32.extend16_s i32.const 100 i32.lt_s @@ -7902,7 +7880,7 @@ i32.load local.get $11 i32.load offset=4 - local.get $3 + local.get $4 i32.extend16_s i32.const -1028477379 i32.mul @@ -7936,12 +7914,12 @@ i32.shl i32.add i32.load - local.set $6 + local.set $5 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $6 + local.get $5 if - local.get $6 + local.get $5 i32.load offset=8 local.tee $2 i32.const 1 @@ -7949,9 +7927,9 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load16_u - local.get $3 + local.get $4 i32.const 65535 i32.and i32.eq @@ -7960,14 +7938,14 @@ local.get $2 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|0 end end i32.const 0 - local.set $6 + local.set $5 end - local.get $6 + local.get $5 if i32.const 0 i32.const 1568 @@ -7977,8 +7955,8 @@ unreachable end local.get $11 - local.get $3 - local.get $3 + local.get $4 + local.get $4 i32.extend16_s local.tee $2 i32.const 10 @@ -8021,12 +7999,12 @@ i32.shl i32.add i32.load - local.set $6 + local.set $5 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $6 + local.get $5 if - local.get $6 + local.get $5 i32.load offset=8 local.tee $2 i32.const 1 @@ -8034,9 +8012,9 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load16_u - local.get $3 + local.get $4 i32.const 65535 i32.and i32.eq @@ -8045,14 +8023,14 @@ local.get $2 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|02 end end i32.const 0 - local.set $6 + local.set $5 end - local.get $6 + local.get $5 i32.eqz if i32.const 0 @@ -8063,9 +8041,9 @@ unreachable end local.get $11 - local.get $3 + local.get $4 call $~lib/map/Map#get - local.get $3 + local.get $4 i32.extend16_s i32.const 10 i32.add @@ -8078,10 +8056,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|1 end end @@ -8098,9 +8076,9 @@ unreachable end i32.const 0 - local.set $3 + local.set $4 loop $for-loop|3 - local.get $3 + local.get $4 i32.extend16_s i32.const 100 i32.lt_s @@ -8109,7 +8087,7 @@ i32.load local.get $11 i32.load offset=4 - local.get $3 + local.get $4 i32.extend16_s i32.const -1028477379 i32.mul @@ -8143,12 +8121,12 @@ i32.shl i32.add i32.load - local.set $6 + local.set $5 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $6 + local.get $5 if - local.get $6 + local.get $5 i32.load offset=8 local.tee $2 i32.const 1 @@ -8156,9 +8134,9 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load16_u - local.get $3 + local.get $4 i32.const 65535 i32.and i32.eq @@ -8167,14 +8145,14 @@ local.get $2 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|05 end end i32.const 0 - local.set $6 + local.set $5 end - local.get $6 + local.get $5 i32.eqz if i32.const 0 @@ -8185,9 +8163,9 @@ unreachable end local.get $11 - local.get $3 + local.get $4 call $~lib/map/Map#get - local.get $3 + local.get $4 i32.extend16_s i32.const 10 i32.add @@ -8201,8 +8179,8 @@ unreachable end local.get $11 - local.get $3 - local.get $3 + local.get $4 + local.get $4 i32.extend16_s local.tee $2 i32.const 20 @@ -8245,12 +8223,12 @@ i32.shl i32.add i32.load - local.set $6 + local.set $5 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $6 + local.get $5 if - local.get $6 + local.get $5 i32.load offset=8 local.tee $2 i32.const 1 @@ -8258,9 +8236,9 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load16_u - local.get $3 + local.get $4 i32.const 65535 i32.and i32.eq @@ -8269,14 +8247,14 @@ local.get $2 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|08 end end i32.const 0 - local.set $6 + local.set $5 end - local.get $6 + local.get $5 i32.eqz if i32.const 0 @@ -8287,9 +8265,9 @@ unreachable end local.get $11 - local.get $3 + local.get $4 call $~lib/map/Map#get - local.get $3 + local.get $4 i32.extend16_s i32.const 20 i32.add @@ -8302,10 +8280,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|3 end end @@ -8351,25 +8329,25 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i64.const 0 i64.store - local.get $4 + local.get $3 i32.const 16 i32.const 12 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $4 i32.store - local.get $5 + local.get $4 i32.const 0 i32.store - local.get $5 + local.get $4 i32.const 0 i32.store offset=4 - local.get $5 + local.get $4 i32.const 0 i32.store offset=8 - local.get $5 + local.get $4 i32.const 0 i32.store offset=12 local.get $6 @@ -8392,30 +8370,30 @@ select i32.const 1 i32.shl - local.tee $3 + local.tee $5 i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $3 i32.store offset=4 - local.get $4 local.get $3 - call $~lib/memory/memory.fill local.get $5 + call $~lib/memory/memory.fill local.get $4 + local.get $3 i32.store - local.get $4 + local.get $3 if - local.get $5 local.get $4 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 local.get $4 + local.get $3 i32.store offset=4 + local.get $4 local.get $5 - local.get $3 i32.store offset=8 - local.get $5 + local.get $4 local.get $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -8423,7 +8401,7 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $5 + local.get $4 i32.store loop $for-loop|0 local.get $7 @@ -8441,7 +8419,7 @@ i32.and i32.eqz if - local.get $5 + local.get $4 local.get $1 local.get $2 i32.load16_s @@ -8458,19 +8436,19 @@ br $for-loop|0 end end - local.get $5 + local.get $4 local.get $1 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity - local.get $5 + local.get $4 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $11 @@ -8487,10 +8465,10 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.const 13 call $~lib/rt/itcms/__new @@ -8499,12 +8477,12 @@ local.get $10 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if local.get $10 - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $10 @@ -8513,12 +8491,12 @@ local.get $10 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store offset=8 - local.get $2 + local.get $1 if local.get $10 - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $10 @@ -8538,17 +8516,17 @@ i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $1 + local.tee $9 i32.store offset=16 loop $for-loop|4 - local.get $5 + local.get $4 i32.load offset=12 local.get $0 i32.gt_s if local.get $0 local.tee $3 - local.get $5 + local.get $4 i32.load offset=12 i32.ge_u if @@ -8559,23 +8537,23 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $4 i32.load offset=4 local.get $3 i32.const 1 i32.shl i32.add i32.load16_s - local.set $4 + local.set $2 local.get $15 local.get $3 call $~lib/array/Array#__get - local.set $9 + local.set $8 local.get $11 i32.load local.get $11 i32.load offset=4 - local.get $4 + local.get $2 i32.extend16_s i32.const -1028477379 i32.mul @@ -8609,12 +8587,12 @@ i32.shl i32.add i32.load - local.set $6 + local.set $5 block $__inlined_func$~lib/map/Map#find10 loop $while-continue|011 - local.get $6 + local.get $5 if - local.get $6 + local.get $5 i32.load offset=8 local.tee $0 i32.const 1 @@ -8622,9 +8600,9 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load16_u - local.get $4 + local.get $2 i32.const 65535 i32.and i32.eq @@ -8633,14 +8611,14 @@ local.get $0 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|011 end end i32.const 0 - local.set $6 + local.set $5 end - local.get $6 + local.get $5 i32.eqz if i32.const 0 @@ -8654,10 +8632,10 @@ i32.load local.get $11 i32.load offset=4 - local.get $9 + local.get $8 i32.const 20 i32.sub - local.tee $2 + local.tee $1 i32.extend16_s i32.const -1028477379 i32.mul @@ -8691,12 +8669,12 @@ i32.shl i32.add i32.load - local.set $6 + local.set $5 block $__inlined_func$~lib/map/Map#find13 loop $while-continue|014 - local.get $6 + local.get $5 if - local.get $6 + local.get $5 i32.load offset=8 local.tee $0 i32.const 1 @@ -8704,9 +8682,9 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load16_u - local.get $2 + local.get $1 i32.const 65535 i32.and i32.eq @@ -8715,14 +8693,14 @@ local.get $0 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|014 end end i32.const 0 - local.set $6 + local.set $5 end - local.get $6 + local.get $5 i32.eqz if i32.const 0 @@ -8745,7 +8723,7 @@ i32.store local.get $10 i32.load - local.get $4 + local.get $2 i32.extend16_s i32.const -1028477379 i32.mul @@ -8789,7 +8767,7 @@ if local.get $0 i32.load offset=4 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) @@ -8797,13 +8775,13 @@ else local.get $0 i32.load16_u - local.get $4 + local.get $2 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $2 + local.get $1 i32.const -2 i32.and local.set $0 @@ -8816,7 +8794,7 @@ local.get $0 if local.get $0 - local.get $4 + local.get $2 i32.store16 offset=2 else local.get $10 @@ -8845,7 +8823,7 @@ i32.const 1 i32.or end - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -8859,14 +8837,14 @@ i64.const 0 i64.store local.get $0 - local.get $8 + local.get $7 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -8878,7 +8856,7 @@ i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store offset=4 local.get $10 i32.load offset=8 @@ -8889,7 +8867,7 @@ i32.shl i32.add local.set $12 - local.get $2 + local.get $1 local.set $0 loop $while-continue|016 local.get $12 @@ -8905,14 +8883,14 @@ local.get $0 local.get $16 i32.load16_s - local.tee $6 + local.tee $5 i32.store16 local.get $0 local.get $16 i32.load16_s offset=2 i32.store16 offset=2 local.get $0 - local.get $6 + local.get $5 i32.extend16_s i32.const -1028477379 i32.mul @@ -8922,35 +8900,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $6 + local.tee $5 i32.const 15 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $6 + local.tee $5 i32.const 13 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $6 + local.tee $5 i32.const 16 i32.shr_u - local.get $6 + local.get $5 i32.xor - local.get $8 + local.get $7 i32.and i32.const 2 i32.shl - local.get $7 + local.get $6 i32.add - local.tee $6 + local.tee $5 i32.load i32.store offset=4 - local.get $6 + local.get $5 local.get $0 i32.store local.get $0 @@ -8966,24 +8944,24 @@ end end local.get $10 - local.get $7 + local.get $6 i32.store - local.get $7 + local.get $6 if local.get $10 - local.get $7 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $10 - local.get $8 + local.get $7 i32.store offset=4 local.get $10 - local.get $2 + local.get $1 i32.store offset=8 - local.get $2 + local.get $1 if local.get $10 - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $10 @@ -9001,7 +8979,7 @@ global.get $~lib/memory/__stack_pointer local.get $10 i32.load offset=8 - local.tee $2 + local.tee $1 i32.store local.get $10 local.get $10 @@ -9013,13 +8991,13 @@ local.get $0 i32.const 3 i32.shl - local.get $2 + local.get $1 i32.add - local.tee $2 - local.get $4 + local.tee $1 + local.get $2 i32.store16 + local.get $1 local.get $2 - local.get $4 i32.store16 offset=2 local.get $10 local.get $10 @@ -9027,7 +9005,7 @@ i32.const 1 i32.add i32.store offset=20 - local.get $2 + local.get $1 local.get $10 i32.load local.get $10 @@ -9041,15 +9019,15 @@ i32.load i32.store offset=4 local.get $0 - local.get $2 + local.get $1 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 local.get $9 + local.get $8 i32.const 20 i32.sub local.tee $0 @@ -9074,7 +9052,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -9108,44 +9086,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $1 i32.const 15 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $1 i32.const 13 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $1 i32.const 16 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $4 block $__inlined_func$~lib/map/Map#find18 loop $while-continue|019 - local.get $3 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $4 i32.load16_u local.get $0 i32.const 65535 @@ -9153,17 +9131,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find18 - local.get $2 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $4 br $while-continue|019 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 i32.eqz if i32.const 0 @@ -9206,44 +9184,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $1 i32.const 15 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $1 i32.const 13 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $1 i32.const 16 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $4 block $__inlined_func$~lib/map/Map#find21 loop $while-continue|022 - local.get $3 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $4 i32.load16_u local.get $0 i32.const 65535 @@ -9251,17 +9229,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find21 - local.get $2 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $4 br $while-continue|022 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 if i32.const 0 i32.const 1568 @@ -9311,44 +9289,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $1 i32.const 15 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $1 i32.const 13 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $1 i32.const 16 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $4 block $__inlined_func$~lib/map/Map#find24 loop $while-continue|025 - local.get $3 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $4 i32.load16_u local.get $0 i32.const 65535 @@ -9356,17 +9334,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find24 - local.get $2 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $4 br $while-continue|025 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 if i32.const 0 i32.const 1568 @@ -9379,7 +9357,7 @@ local.get $0 local.get $0 i32.extend16_s - local.tee $2 + local.tee $1 i32.const 10 i32.add call $~lib/map/Map#set @@ -9387,7 +9365,7 @@ i32.load local.get $11 i32.load offset=4 - local.get $2 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761395 @@ -9396,44 +9374,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $1 i32.const 15 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $1 i32.const 13 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $1 i32.const 16 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $4 block $__inlined_func$~lib/map/Map#find27 loop $while-continue|028 - local.get $3 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $4 i32.load16_u local.get $0 i32.const 65535 @@ -9441,17 +9419,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find27 - local.get $2 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $4 br $while-continue|028 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 i32.eqz if i32.const 0 @@ -9478,44 +9456,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $1 i32.const 15 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $1 i32.const 13 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $1 i32.const 16 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $4 block $__inlined_func$~lib/map/Map#find30 loop $while-continue|031 - local.get $3 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $4 i32.load16_u local.get $0 i32.const 65535 @@ -9523,17 +9501,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find30 - local.get $2 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $4 br $while-continue|031 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 if i32.const 0 i32.const 1568 @@ -10009,10 +9987,10 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i32.const 0 i32.store - local.get $4 + local.get $3 i32.const 24 i32.const 14 call $~lib/rt/itcms/__new @@ -10021,12 +9999,12 @@ local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $4 + local.tee $3 i32.store - local.get $4 + local.get $3 if local.get $11 - local.get $4 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $11 @@ -10035,12 +10013,12 @@ local.get $11 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $4 + local.tee $3 i32.store offset=8 - local.get $4 + local.get $3 if local.get $11 - local.get $4 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $11 @@ -10060,7 +10038,7 @@ local.get $11 i32.store loop $for-loop|1 - local.get $3 + local.get $4 i32.const 65535 i32.and i32.const 100 @@ -10070,7 +10048,7 @@ i32.load local.get $11 i32.load offset=4 - local.get $3 + local.get $4 i32.const 65535 i32.and i32.const -1028477379 @@ -10105,12 +10083,12 @@ i32.shl i32.add i32.load - local.set $6 + local.set $5 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $6 + local.get $5 if - local.get $6 + local.get $5 i32.load offset=8 local.tee $2 i32.const 1 @@ -10118,9 +10096,9 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load16_u - local.get $3 + local.get $4 i32.const 65535 i32.and i32.eq @@ -10129,14 +10107,14 @@ local.get $2 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|0 end end i32.const 0 - local.set $6 + local.set $5 end - local.get $6 + local.get $5 if i32.const 0 i32.const 1568 @@ -10146,8 +10124,8 @@ unreachable end local.get $11 - local.get $3 - local.get $3 + local.get $4 + local.get $4 i32.const 65535 i32.and local.tee $2 @@ -10191,12 +10169,12 @@ i32.shl i32.add i32.load - local.set $6 + local.set $5 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $6 + local.get $5 if - local.get $6 + local.get $5 i32.load offset=8 local.tee $2 i32.const 1 @@ -10204,9 +10182,9 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load16_u - local.get $3 + local.get $4 i32.const 65535 i32.and i32.eq @@ -10215,14 +10193,14 @@ local.get $2 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|02 end end i32.const 0 - local.set $6 + local.set $5 end - local.get $6 + local.get $5 i32.eqz if i32.const 0 @@ -10233,9 +10211,9 @@ unreachable end local.get $11 - local.get $3 + local.get $4 call $~lib/map/Map#get - local.get $3 + local.get $4 i32.const 65535 i32.and i32.const 10 @@ -10249,10 +10227,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|1 end end @@ -10269,9 +10247,9 @@ unreachable end i32.const 0 - local.set $3 + local.set $4 loop $for-loop|3 - local.get $3 + local.get $4 i32.const 65535 i32.and i32.const 100 @@ -10281,7 +10259,7 @@ i32.load local.get $11 i32.load offset=4 - local.get $3 + local.get $4 i32.const 65535 i32.and i32.const -1028477379 @@ -10316,12 +10294,12 @@ i32.shl i32.add i32.load - local.set $6 + local.set $5 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $6 + local.get $5 if - local.get $6 + local.get $5 i32.load offset=8 local.tee $2 i32.const 1 @@ -10329,9 +10307,9 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load16_u - local.get $3 + local.get $4 i32.const 65535 i32.and i32.eq @@ -10340,14 +10318,14 @@ local.get $2 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|05 end end i32.const 0 - local.set $6 + local.set $5 end - local.get $6 + local.get $5 i32.eqz if i32.const 0 @@ -10358,9 +10336,9 @@ unreachable end local.get $11 - local.get $3 + local.get $4 call $~lib/map/Map#get - local.get $3 + local.get $4 i32.const 65535 i32.and i32.const 10 @@ -10375,8 +10353,8 @@ unreachable end local.get $11 - local.get $3 - local.get $3 + local.get $4 + local.get $4 i32.const 65535 i32.and local.tee $2 @@ -10420,12 +10398,12 @@ i32.shl i32.add i32.load - local.set $6 + local.set $5 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $6 + local.get $5 if - local.get $6 + local.get $5 i32.load offset=8 local.tee $2 i32.const 1 @@ -10433,9 +10411,9 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load16_u - local.get $3 + local.get $4 i32.const 65535 i32.and i32.eq @@ -10444,14 +10422,14 @@ local.get $2 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|08 end end i32.const 0 - local.set $6 + local.set $5 end - local.get $6 + local.get $5 i32.eqz if i32.const 0 @@ -10462,9 +10440,9 @@ unreachable end local.get $11 - local.get $3 + local.get $4 call $~lib/map/Map#get - local.get $3 + local.get $4 i32.const 65535 i32.and i32.const 20 @@ -10478,10 +10456,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|3 end end @@ -10527,25 +10505,25 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i64.const 0 i64.store - local.get $4 + local.get $3 i32.const 16 i32.const 15 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $4 i32.store - local.get $5 + local.get $4 i32.const 0 i32.store - local.get $5 + local.get $4 i32.const 0 i32.store offset=4 - local.get $5 + local.get $4 i32.const 0 i32.store offset=8 - local.get $5 + local.get $4 i32.const 0 i32.store offset=12 local.get $6 @@ -10568,30 +10546,30 @@ select i32.const 1 i32.shl - local.tee $3 + local.tee $5 i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $3 i32.store offset=4 - local.get $4 local.get $3 - call $~lib/memory/memory.fill local.get $5 + call $~lib/memory/memory.fill local.get $4 + local.get $3 i32.store - local.get $4 + local.get $3 if - local.get $5 local.get $4 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 local.get $4 + local.get $3 i32.store offset=4 + local.get $4 local.get $5 - local.get $3 i32.store offset=8 - local.get $5 + local.get $4 local.get $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -10599,7 +10577,7 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $5 + local.get $4 i32.store loop $for-loop|0 local.get $7 @@ -10617,7 +10595,7 @@ i32.and i32.eqz if - local.get $5 + local.get $4 local.get $1 local.get $2 i32.load16_u @@ -10634,19 +10612,19 @@ br $for-loop|0 end end - local.get $5 + local.get $4 local.get $1 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity - local.get $5 + local.get $4 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $11 @@ -10663,10 +10641,10 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.const 16 call $~lib/rt/itcms/__new @@ -10675,12 +10653,12 @@ local.get $10 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if local.get $10 - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $10 @@ -10689,12 +10667,12 @@ local.get $10 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store offset=8 - local.get $2 + local.get $1 if local.get $10 - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $10 @@ -10714,17 +10692,17 @@ i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $1 + local.tee $9 i32.store offset=16 loop $for-loop|4 - local.get $5 + local.get $4 i32.load offset=12 local.get $0 i32.gt_s if local.get $0 local.tee $3 - local.get $5 + local.get $4 i32.load offset=12 i32.ge_u if @@ -10735,23 +10713,23 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $4 i32.load offset=4 local.get $3 i32.const 1 i32.shl i32.add i32.load16_u - local.set $4 + local.set $2 local.get $15 local.get $3 call $~lib/array/Array#__get - local.set $9 + local.set $8 local.get $11 i32.load local.get $11 i32.load offset=4 - local.get $4 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761395 @@ -10784,12 +10762,12 @@ i32.shl i32.add i32.load - local.set $6 + local.set $5 block $__inlined_func$~lib/map/Map#find10 loop $while-continue|011 - local.get $6 + local.get $5 if - local.get $6 + local.get $5 i32.load offset=8 local.tee $0 i32.const 1 @@ -10797,9 +10775,9 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load16_u - local.get $4 + local.get $2 i32.const 65535 i32.and i32.eq @@ -10808,14 +10786,14 @@ local.get $0 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|011 end end i32.const 0 - local.set $6 + local.set $5 end - local.get $6 + local.get $5 i32.eqz if i32.const 0 @@ -10829,10 +10807,10 @@ i32.load local.get $11 i32.load offset=4 - local.get $9 + local.get $8 i32.const 20 i32.sub - local.tee $2 + local.tee $1 i32.const 65535 i32.and i32.const -1028477379 @@ -10867,12 +10845,12 @@ i32.shl i32.add i32.load - local.set $6 + local.set $5 block $__inlined_func$~lib/map/Map#find13 loop $while-continue|014 - local.get $6 + local.get $5 if - local.get $6 + local.get $5 i32.load offset=8 local.tee $0 i32.const 1 @@ -10880,9 +10858,9 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load16_u - local.get $2 + local.get $1 i32.const 65535 i32.and i32.eq @@ -10891,14 +10869,14 @@ local.get $0 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|014 end end i32.const 0 - local.set $6 + local.set $5 end - local.get $6 + local.get $5 i32.eqz if i32.const 0 @@ -10921,7 +10899,7 @@ i32.store local.get $10 i32.load - local.get $4 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761395 @@ -10964,7 +10942,7 @@ if local.get $0 i32.load offset=4 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) @@ -10972,13 +10950,13 @@ else local.get $0 i32.load16_u - local.get $4 + local.get $2 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $2 + local.get $1 i32.const -2 i32.and local.set $0 @@ -10991,7 +10969,7 @@ local.get $0 if local.get $0 - local.get $4 + local.get $2 i32.store16 offset=2 else local.get $10 @@ -11020,7 +10998,7 @@ i32.const 1 i32.or end - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -11034,14 +11012,14 @@ i64.const 0 i64.store local.get $0 - local.get $8 + local.get $7 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -11053,7 +11031,7 @@ i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store offset=4 local.get $10 i32.load offset=8 @@ -11064,7 +11042,7 @@ i32.shl i32.add local.set $12 - local.get $2 + local.get $1 local.set $0 loop $while-continue|016 local.get $12 @@ -11080,14 +11058,14 @@ local.get $0 local.get $16 i32.load16_u - local.tee $6 + local.tee $5 i32.store16 local.get $0 local.get $16 i32.load16_u offset=2 i32.store16 offset=2 local.get $0 - local.get $6 + local.get $5 i32.const -1028477379 i32.mul i32.const 374761395 @@ -11096,35 +11074,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $6 + local.tee $5 i32.const 15 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $6 + local.tee $5 i32.const 13 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $6 + local.tee $5 i32.const 16 i32.shr_u - local.get $6 + local.get $5 i32.xor - local.get $8 + local.get $7 i32.and i32.const 2 i32.shl - local.get $7 + local.get $6 i32.add - local.tee $6 + local.tee $5 i32.load i32.store offset=4 - local.get $6 + local.get $5 local.get $0 i32.store local.get $0 @@ -11140,24 +11118,24 @@ end end local.get $10 - local.get $7 + local.get $6 i32.store - local.get $7 + local.get $6 if local.get $10 - local.get $7 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $10 - local.get $8 + local.get $7 i32.store offset=4 local.get $10 - local.get $2 + local.get $1 i32.store offset=8 - local.get $2 + local.get $1 if local.get $10 - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $10 @@ -11175,7 +11153,7 @@ global.get $~lib/memory/__stack_pointer local.get $10 i32.load offset=8 - local.tee $2 + local.tee $1 i32.store local.get $10 local.get $10 @@ -11187,13 +11165,13 @@ local.get $0 i32.const 3 i32.shl - local.get $2 + local.get $1 i32.add - local.tee $2 - local.get $4 + local.tee $1 + local.get $2 i32.store16 + local.get $1 local.get $2 - local.get $4 i32.store16 offset=2 local.get $10 local.get $10 @@ -11201,7 +11179,7 @@ i32.const 1 i32.add i32.store offset=20 - local.get $2 + local.get $1 local.get $10 i32.load local.get $10 @@ -11215,15 +11193,15 @@ i32.load i32.store offset=4 local.get $0 - local.get $2 + local.get $1 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 local.get $9 + local.get $8 i32.const 20 i32.sub local.tee $0 @@ -11248,7 +11226,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -11284,44 +11262,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $1 i32.const 15 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $1 i32.const 13 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $1 i32.const 16 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $4 block $__inlined_func$~lib/map/Map#find18 loop $while-continue|019 - local.get $3 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $4 i32.load16_u local.get $0 i32.const 65535 @@ -11329,17 +11307,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find18 - local.get $2 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $4 br $while-continue|019 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 i32.eqz if i32.const 0 @@ -11384,44 +11362,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $1 i32.const 15 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $1 i32.const 13 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $1 i32.const 16 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $4 block $__inlined_func$~lib/map/Map#find21 loop $while-continue|022 - local.get $3 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $4 i32.load16_u local.get $0 i32.const 65535 @@ -11429,17 +11407,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find21 - local.get $2 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $4 br $while-continue|022 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 if i32.const 0 i32.const 1568 @@ -11491,44 +11469,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $1 i32.const 15 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $1 i32.const 13 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $1 i32.const 16 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $4 block $__inlined_func$~lib/map/Map#find24 loop $while-continue|025 - local.get $3 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $4 i32.load16_u local.get $0 i32.const 65535 @@ -11536,17 +11514,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find24 - local.get $2 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $4 br $while-continue|025 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 if i32.const 0 i32.const 1568 @@ -11560,7 +11538,7 @@ local.get $0 i32.const 65535 i32.and - local.tee $2 + local.tee $1 i32.const 10 i32.add call $~lib/map/Map#set @@ -11568,7 +11546,7 @@ i32.load local.get $11 i32.load offset=4 - local.get $2 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761395 @@ -11577,44 +11555,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $1 i32.const 15 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $1 i32.const 13 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $1 i32.const 16 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $4 block $__inlined_func$~lib/map/Map#find27 loop $while-continue|028 - local.get $3 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $4 i32.load16_u local.get $0 i32.const 65535 @@ -11622,17 +11600,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find27 - local.get $2 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $4 br $while-continue|028 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 i32.eqz if i32.const 0 @@ -11660,44 +11638,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $1 i32.const 15 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $1 i32.const 13 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $1 i32.const 16 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $4 block $__inlined_func$~lib/map/Map#find30 loop $while-continue|031 - local.get $3 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $4 i32.load16_u local.get $0 i32.const 65535 @@ -11705,17 +11683,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find30 - local.get $2 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $4 br $while-continue|031 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 if i32.const 0 i32.const 1568 @@ -13591,16 +13569,16 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 i64.const 0 i64.store offset=8 - local.get $3 + local.get $2 i32.const 0 i32.store offset=16 - local.get $3 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -13609,10 +13587,10 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $0 i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.const 17 call $~lib/rt/itcms/__new @@ -13621,12 +13599,12 @@ local.get $10 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 if local.get $10 - local.get $2 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $10 @@ -13635,12 +13613,12 @@ local.get $10 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $0 i32.store offset=8 - local.get $2 + local.get $0 if local.get $10 - local.get $2 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $10 @@ -13656,11 +13634,11 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 local.get $10 i32.store loop $for-loop|0 - local.get $4 + local.get $3 i32.const 100 i32.lt_u if @@ -13668,7 +13646,7 @@ i32.load local.get $10 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13677,24 +13655,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $0 i32.const 15 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $0 i32.const 13 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $0 i32.const 16 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.and i32.const 2 @@ -13714,7 +13692,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $0 i32.load i32.eq @@ -13740,8 +13718,8 @@ unreachable end local.get $10 - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.const 10 i32.add call $~lib/map/Map#set @@ -13749,7 +13727,7 @@ i32.load local.get $10 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13758,24 +13736,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $0 i32.const 15 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $0 i32.const 13 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $0 i32.const 16 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.and i32.const 2 @@ -13795,7 +13773,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $0 i32.load i32.eq @@ -13822,9 +13800,9 @@ unreachable end local.get $10 - local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $4 + local.get $3 i32.const 10 i32.add i32.ne @@ -13836,10 +13814,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|0 end end @@ -13856,9 +13834,9 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|1 - local.get $4 + local.get $3 i32.const 100 i32.lt_u if @@ -13866,7 +13844,7 @@ i32.load local.get $10 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13875,24 +13853,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $0 i32.const 15 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $0 i32.const 13 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $0 i32.const 16 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.and i32.const 2 @@ -13912,7 +13890,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $0 i32.load i32.eq @@ -13939,9 +13917,9 @@ unreachable end local.get $10 - local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $4 + local.get $3 i32.const 10 i32.add i32.ne @@ -13954,8 +13932,8 @@ unreachable end local.get $10 - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.const 20 i32.add call $~lib/map/Map#set @@ -13963,7 +13941,7 @@ i32.load local.get $10 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13972,24 +13950,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $0 i32.const 15 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $0 i32.const 13 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $0 i32.const 16 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.and i32.const 2 @@ -14009,7 +13987,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $0 i32.load i32.eq @@ -14036,9 +14014,9 @@ unreachable end local.get $10 - local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $4 + local.get $3 i32.const 20 i32.add i32.ne @@ -14050,10 +14028,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|1 end end @@ -14070,8 +14048,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $2 + local.tee $0 + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -14089,7 +14067,7 @@ local.get $10 i32.load offset=16 local.tee $5 - local.set $0 + local.set $4 local.get $7 i32.const 8 i32.sub @@ -14099,28 +14077,28 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $0 i64.const 0 i64.store - local.get $2 + local.get $0 i32.const 16 i32.const 18 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $3 i32.store - local.get $4 + local.get $3 i32.const 0 i32.store - local.get $4 + local.get $3 i32.const 0 i32.store offset=4 - local.get $4 + local.get $3 i32.const 0 i32.store offset=8 - local.get $4 + local.get $3 i32.const 0 i32.store offset=12 - local.get $0 + local.get $4 i32.const 268435455 i32.gt_u if @@ -14132,46 +14110,46 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $4 i32.const 8 - local.get $0 + local.get $4 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $3 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 i32.store offset=4 + local.get $0 local.get $2 - local.get $3 call $~lib/memory/memory.fill - local.get $4 - local.get $2 + local.get $3 + local.get $0 i32.store - local.get $2 + local.get $0 if - local.get $4 - local.get $2 + local.get $3 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $2 + local.get $3 + local.get $0 i32.store offset=4 - local.get $4 local.get $3 + local.get $2 i32.store offset=8 + local.get $3 local.get $4 - local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $7 - local.get $4 + local.get $3 i32.store loop $for-loop|01 local.get $5 @@ -14183,15 +14161,15 @@ i32.mul local.get $6 i32.add - local.tee $2 + local.tee $0 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $4 + local.get $3 local.get $1 - local.get $2 + local.get $0 i32.load call $~lib/array/Array#__set local.get $1 @@ -14206,19 +14184,19 @@ br $for-loop|01 end end - local.get $4 + local.get $3 local.get $1 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $4 + local.get $3 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $10 @@ -14235,66 +14213,66 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $0 i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.const 19 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $9 i32.store - local.get $1 + local.get $9 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 if - local.get $1 - local.get $2 + local.get $9 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $9 i32.const 3 i32.store offset=4 - local.get $1 + local.get $9 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $0 i32.store offset=8 - local.get $2 + local.get $0 if - local.get $1 - local.get $2 + local.get $9 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $9 i32.const 4 i32.store offset=12 - local.get $1 + local.get $9 i32.const 0 i32.store offset=16 - local.get $1 + local.get $9 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $9 + local.tee $8 i32.store offset=16 loop $for-loop|2 - local.get $4 + local.get $3 i32.load offset=12 local.get $16 i32.gt_s if - local.get $4 + local.get $3 i32.load offset=12 local.get $16 i32.le_u @@ -14306,23 +14284,23 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.load offset=4 local.get $16 i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 local.get $14 local.get $16 call $~lib/array/Array#__get - local.set $8 + local.set $7 local.get $10 i32.load local.get $10 i32.load offset=4 - local.get $3 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14331,60 +14309,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $0 i32.const 15 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $0 i32.const 13 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $0 i32.const 16 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $5 + local.set $4 block $__inlined_func$~lib/map/Map#find10 loop $while-continue|011 - local.get $5 + local.get $4 if - local.get $5 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 - local.get $5 + local.get $2 + local.get $4 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $2 + local.get $0 i32.const -2 i32.and - local.set $5 + local.set $4 br $while-continue|011 end end i32.const 0 - local.set $5 + local.set $4 end - local.get $5 + local.get $4 i32.eqz if i32.const 0 @@ -14398,10 +14376,10 @@ i32.load local.get $10 i32.load offset=4 - local.get $8 + local.get $7 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14410,60 +14388,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $0 i32.const 15 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $0 i32.const 13 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $0 i32.const 16 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $5 + local.set $4 block $__inlined_func$~lib/map/Map#find13 loop $while-continue|014 - local.get $5 + local.get $4 if - local.get $5 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 - local.get $5 + local.get $1 + local.get $4 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $2 + local.get $0 i32.const -2 i32.and - local.set $5 + local.set $4 br $while-continue|014 end end i32.const 0 - local.set $5 + local.set $4 end - local.get $5 + local.get $4 i32.eqz if i32.const 0 @@ -14484,9 +14462,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $1 + local.get $9 i32.load - local.get $3 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14495,27 +14473,27 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $0 i32.const 15 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $0 i32.const 13 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $0 i32.const 16 i32.shr_u - local.get $2 + local.get $0 i32.xor local.tee $13 - local.get $1 + local.get $9 i32.load offset=4 i32.and i32.const 2 @@ -14529,19 +14507,19 @@ if local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $2 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find15 - local.get $2 + local.get $1 i32.const -2 i32.and local.set $0 @@ -14554,18 +14532,18 @@ local.get $0 if local.get $0 - local.get $3 + local.get $2 i32.store offset=4 else - local.get $1 + local.get $9 i32.load offset=16 - local.get $1 + local.get $9 i32.load offset=12 i32.eq if - local.get $1 + local.get $9 i32.load offset=20 - local.get $1 + local.get $9 i32.load offset=12 i32.const 3 i32.mul @@ -14573,17 +14551,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $1 + local.get $9 i32.load offset=4 else - local.get $1 + local.get $9 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $7 + local.set $6 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -14593,21 +14571,21 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $0 i64.const 0 i64.store - local.get $2 - local.get $7 + local.get $0 + local.get $6 i32.const 1 i32.add - local.tee $2 + local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 3 @@ -14616,18 +14594,18 @@ i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $1 + local.get $9 i32.load offset=8 local.tee $15 - local.get $1 + local.get $9 i32.load offset=16 i32.const 12 i32.mul i32.add local.set $11 - local.get $2 + local.get $1 local.set $0 loop $while-continue|017 local.get $11 @@ -14643,14 +14621,14 @@ local.get $0 local.get $15 i32.load - local.tee $5 + local.tee $4 i32.store local.get $0 local.get $15 i32.load offset=4 i32.store offset=4 local.get $0 - local.get $5 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14659,35 +14637,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $5 + local.tee $4 i32.const 15 i32.shr_u - local.get $5 + local.get $4 i32.xor i32.const -2048144777 i32.mul - local.tee $5 + local.tee $4 i32.const 13 i32.shr_u - local.get $5 + local.get $4 i32.xor i32.const -1028477379 i32.mul - local.tee $5 + local.tee $4 i32.const 16 i32.shr_u - local.get $5 + local.get $4 i32.xor - local.get $7 + local.get $6 i32.and i32.const 2 i32.shl - local.get $6 + local.get $5 i32.add - local.tee $5 + local.tee $4 i32.load i32.store offset=8 - local.get $5 + local.get $4 local.get $0 i32.store local.get $0 @@ -14702,32 +14680,32 @@ br $while-continue|017 end end - local.get $1 - local.get $6 + local.get $9 + local.get $5 i32.store - local.get $6 + local.get $5 if - local.get $1 - local.get $6 + local.get $9 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 - local.get $7 + local.get $9 + local.get $6 i32.store offset=4 + local.get $9 local.get $1 - local.get $2 i32.store offset=8 - local.get $2 + local.get $1 if + local.get $9 local.get $1 - local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $9 local.get $12 i32.store offset=12 - local.get $1 - local.get $1 + local.get $9 + local.get $9 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -14736,61 +14714,61 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $9 i32.load offset=8 - local.tee $0 + local.tee $1 i32.store - local.get $1 - local.get $1 + local.get $9 + local.get $9 i32.load offset=16 - local.tee $2 + local.tee $0 i32.const 1 i32.add i32.store offset=16 - local.get $2 + local.get $0 i32.const 12 i32.mul - local.get $0 + local.get $1 i32.add - local.tee $0 - local.get $3 + local.tee $1 + local.get $2 i32.store - local.get $0 - local.get $3 - i32.store offset=4 - local.get $1 local.get $1 + local.get $2 + i32.store offset=4 + local.get $9 + local.get $9 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $0 local.get $1 + local.get $9 i32.load - local.get $1 + local.get $9 i32.load offset=4 local.get $13 i32.and i32.const 2 i32.shl i32.add - local.tee $2 + local.tee $0 i32.load i32.store offset=8 - local.get $2 local.get $0 + local.get $1 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 local.get $8 + local.get $7 i32.const 20 i32.sub - local.tee $2 - local.get $2 + local.tee $0 + local.get $0 call $~lib/map/Map#set local.get $16 i32.const 1 @@ -14799,7 +14777,7 @@ br $for-loop|2 end end - local.get $1 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -14811,7 +14789,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $8 i32.load offset=20 i32.const 100 i32.ne @@ -14843,60 +14821,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $0 i32.const 15 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $0 i32.const 13 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $0 i32.const 16 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find19 loop $while-continue|020 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $16 - local.get $4 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find19 - local.get $2 + local.get $0 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|020 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 i32.eqz if i32.const 0 @@ -14937,60 +14915,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $0 i32.const 15 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $0 i32.const 13 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $0 i32.const 16 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find22 loop $while-continue|023 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $16 - local.get $4 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find22 - local.get $2 + local.get $0 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|023 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 if i32.const 0 i32.const 1568 @@ -15038,60 +15016,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $0 i32.const 15 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $0 i32.const 13 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $0 i32.const 16 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find25 loop $while-continue|026 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $16 - local.get $4 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find25 - local.get $2 + local.get $0 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|026 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 if i32.const 0 i32.const 1568 @@ -15119,60 +15097,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $0 i32.const 15 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $0 i32.const 13 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $0 i32.const 16 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find28 loop $while-continue|029 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $16 - local.get $4 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find28 - local.get $2 + local.get $0 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|029 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 i32.eqz if i32.const 0 @@ -15198,60 +15176,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $0 i32.const 15 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $0 i32.const 13 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $0 i32.const 16 i32.shr_u - local.get $2 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find31 loop $while-continue|032 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $16 - local.get $4 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find31 - local.get $2 + local.get $0 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|032 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 if i32.const 0 i32.const 1568 @@ -15424,7 +15402,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -15432,7 +15410,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $5 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -15440,13 +15418,13 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $8 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $8 + local.set $4 local.get $3 local.set $2 loop $while-continue|0 @@ -15454,19 +15432,19 @@ local.get $8 i32.ne if - local.get $4 + local.get $8 i32.load offset=12 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $4 + local.get $8 i64.load local.tee $6 i64.store local.get $2 - local.get $4 + local.get $8 i32.load offset=8 i32.store offset=8 local.get $2 @@ -15514,7 +15492,7 @@ i32.and i32.const 2 i32.shl - local.get $5 + local.get $7 i32.add local.tee $9 i32.load @@ -15527,20 +15505,20 @@ i32.add local.set $2 end - local.get $4 + local.get $8 i32.const 16 i32.add - local.set $4 + local.set $8 br $while-continue|0 end end local.get $0 - local.get $5 + local.get $7 i32.store - local.get $5 + local.get $7 if local.get $0 - local.get $5 + local.get $7 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -15556,7 +15534,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $5 i32.store offset=12 local.get $0 local.get $0 @@ -15873,19 +15851,19 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i64) + (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) + (local $7 i64) (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) (local $14 i32) - (local $15 i32) + (local $15 i64) (local $16 i32) (local $17 i32) global.get $~lib/memory/__stack_pointer @@ -15898,16 +15876,16 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i64.const 0 i64.store - local.get $0 + local.get $2 i64.const 0 i64.store offset=8 - local.get $0 + local.get $2 i32.const 0 i32.store offset=16 - local.get $0 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -15916,63 +15894,63 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.const 20 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $11 i32.store - local.get $9 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if - local.get $9 - local.get $2 + local.get $11 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 + local.get $11 i32.const 3 i32.store offset=4 - local.get $9 + local.get $11 i32.const 64 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store offset=8 - local.get $2 + local.get $1 if - local.get $9 - local.get $2 + local.get $11 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 + local.get $11 i32.const 4 i32.store offset=12 - local.get $9 + local.get $11 i32.const 0 i32.store offset=16 - local.get $9 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 - local.get $9 + local.get $2 + local.get $11 i32.store loop $for-loop|0 - local.get $3 + local.get $7 i64.const 100 i64.lt_s if - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has if i32.const 0 @@ -15982,15 +15960,15 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $3 - local.get $3 + local.get $11 + local.get $7 + local.get $7 i32.wrap_i64 i32.const 10 i32.add call $~lib/map/Map#set - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has i32.eqz if @@ -16001,10 +15979,10 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#get - local.get $3 + local.get $7 i32.wrap_i64 i32.const 10 i32.add @@ -16017,14 +15995,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 i64.const 1 i64.add - local.set $3 + local.set $7 br $for-loop|0 end end - local.get $9 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -16037,14 +16015,14 @@ unreachable end i64.const 0 - local.set $3 + local.set $7 loop $for-loop|1 - local.get $3 + local.get $7 i64.const 100 i64.lt_s if - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has i32.eqz if @@ -16055,10 +16033,10 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#get - local.get $3 + local.get $7 i32.wrap_i64 i32.const 10 i32.add @@ -16071,15 +16049,15 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $3 - local.get $3 + local.get $11 + local.get $7 + local.get $7 i32.wrap_i64 i32.const 20 i32.add call $~lib/map/Map#set - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has i32.eqz if @@ -16090,10 +16068,10 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#get - local.get $3 + local.get $7 i32.wrap_i64 i32.const 20 i32.add @@ -16106,14 +16084,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 i64.const 1 i64.add - local.set $3 + local.set $7 br $for-loop|1 end end - local.get $9 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -16126,8 +16104,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -16136,17 +16114,17 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $8 i32.const 0 i32.store - local.get $9 + local.get $11 i32.load offset=8 - local.set $7 - local.get $9 + local.set $6 + local.get $11 i32.load offset=16 - local.tee $8 - local.set $10 - local.get $2 + local.tee $5 + local.set $4 + local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -16155,28 +16133,28 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 16 i32.const 21 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 0 i32.store offset=4 - local.get $0 + local.get $2 i32.const 0 i32.store offset=8 - local.get $0 + local.get $2 i32.const 0 i32.store offset=12 - local.get $10 + local.get $4 i32.const 134217727 i32.gt_u if @@ -16188,88 +16166,87 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $4 i32.const 8 - local.get $10 + local.get $4 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $11 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $12 + local.tee $1 i32.store offset=4 - local.get $12 - local.get $11 + local.get $1 + local.get $3 call $~lib/memory/memory.fill - local.get $0 - local.get $12 + local.get $2 + local.get $1 i32.store - local.get $12 + local.get $1 if - local.get $0 - local.get $12 + local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $12 + local.get $2 + local.get $1 i32.store offset=4 - local.get $0 - local.get $11 + local.get $2 + local.get $3 i32.store offset=8 - local.get $0 - local.get $10 + local.get $2 + local.get $4 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $8 local.get $2 - local.get $0 - local.tee $2 i32.store loop $for-loop|01 - local.get $4 - local.get $8 - i32.lt_s + local.get $5 + local.get $10 + i32.gt_s if - local.get $4 + local.get $10 i32.const 4 i32.shl - local.get $7 + local.get $6 i32.add - local.tee $0 + local.tee $1 i32.load offset=12 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $1 local.get $0 + local.get $1 i64.load call $~lib/array/Array#__set - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 end - local.get $4 + local.get $10 i32.const 1 i32.add - local.set $4 + local.set $10 br $for-loop|01 end end local.get $2 - local.get $1 + local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity local.get $2 - local.get $1 + local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -16278,7 +16255,7 @@ local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $11 call $~lib/map/Map#values local.tee $10 i32.store offset=8 @@ -16292,68 +16269,68 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 24 i32.const 22 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $9 i32.store - local.get $11 + local.get $9 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 if - local.get $11 - local.get $1 + local.get $9 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $9 i32.const 3 i32.store offset=4 - local.get $11 + local.get $9 i32.const 96 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $0 i32.store offset=8 - local.get $1 + local.get $0 if - local.get $11 - local.get $1 + local.get $9 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $9 i32.const 4 i32.store offset=12 - local.get $11 + local.get $9 i32.const 0 i32.store offset=16 - local.get $11 + local.get $9 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $12 + local.tee $8 i32.store offset=16 loop $for-loop|2 local.get $2 i32.load offset=12 - local.get $5 + local.get $16 i32.gt_s if local.get $2 i32.load offset=12 - local.get $5 + local.get $16 i32.le_u if i32.const 1248 @@ -16365,18 +16342,18 @@ end local.get $2 i32.load offset=4 - local.get $5 + local.get $16 i32.const 3 i32.shl i32.add i64.load - local.set $13 + local.set $7 local.get $10 - local.get $5 + local.get $16 call $~lib/array/Array#__get - local.set $14 - local.get $9 - local.get $13 + local.set $6 + local.get $11 + local.get $7 call $~lib/map/Map#has i32.eqz if @@ -16387,8 +16364,8 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $14 + local.get $11 + local.get $6 i32.const 20 i32.sub i64.extend_i32_s @@ -16413,9 +16390,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $11 + local.get $9 i32.load - local.get $13 + local.get $7 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -16425,7 +16402,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $13 + local.get $7 i64.const 32 i64.shr_u i32.wrap_i64 @@ -16455,8 +16432,8 @@ i32.shr_u local.get $0 i32.xor - local.tee $6 - local.get $11 + local.tee $14 + local.get $9 i32.load offset=4 i32.and i32.const 2 @@ -16476,7 +16453,7 @@ if (result i32) i32.const 0 else - local.get $13 + local.get $7 local.get $0 i64.load i64.eq @@ -16495,18 +16472,18 @@ local.get $0 if local.get $0 - local.get $13 + local.get $7 i64.store offset=8 else - local.get $11 + local.get $9 i32.load offset=16 - local.get $11 + local.get $9 i32.load offset=12 i32.eq if - local.get $11 + local.get $9 i32.load offset=20 - local.get $11 + local.get $9 i32.load offset=12 i32.const 3 i32.mul @@ -16514,17 +16491,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $11 + local.get $9 i32.load offset=4 else - local.get $11 + local.get $9 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $15 + local.set $5 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -16538,14 +16515,14 @@ i64.const 0 i64.store local.get $0 - local.get $15 + local.get $5 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $16 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -16553,46 +16530,46 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $13 i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=4 - local.get $11 + local.get $9 i32.load offset=8 - local.tee $4 - local.get $11 + local.tee $17 + local.get $9 i32.load offset=16 i32.const 24 i32.mul i32.add - local.set $8 + local.set $12 local.get $1 local.set $0 loop $while-continue|00 - local.get $4 - local.get $8 + local.get $12 + local.get $17 i32.ne if - local.get $4 + local.get $17 i32.load offset=16 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $4 + local.get $17 i64.load - local.tee $3 + local.tee $15 i64.store local.get $0 - local.get $4 + local.get $17 i64.load offset=8 i64.store offset=8 local.get $0 + local.get $5 local.get $15 - local.get $3 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -16602,7 +16579,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $3 + local.get $15 i64.const 32 i64.shr_u i32.wrap_i64 @@ -16613,34 +16590,34 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $17 + local.tee $3 i32.const 15 i32.shr_u - local.get $17 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $17 + local.tee $3 i32.const 13 i32.shr_u - local.get $17 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $17 + local.tee $3 i32.const 16 i32.shr_u - local.get $17 + local.get $3 i32.xor i32.and i32.const 2 i32.shl - local.get $16 + local.get $4 i32.add - local.tee $17 + local.tee $3 i32.load i32.store offset=16 - local.get $17 + local.get $3 local.get $0 i32.store local.get $0 @@ -16648,39 +16625,39 @@ i32.add local.set $0 end - local.get $4 + local.get $17 i32.const 24 i32.add - local.set $4 + local.set $17 br $while-continue|00 end end - local.get $11 - local.get $16 + local.get $9 + local.get $4 i32.store - local.get $16 + local.get $4 if - local.get $11 - local.get $16 + local.get $9 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 - local.get $15 + local.get $9 + local.get $5 i32.store offset=4 - local.get $11 + local.get $9 local.get $1 i32.store offset=8 local.get $1 if - local.get $11 + local.get $9 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 - local.get $7 + local.get $9 + local.get $13 i32.store offset=12 - local.get $11 - local.get $11 + local.get $9 + local.get $9 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -16689,70 +16666,70 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $9 i32.load offset=8 - local.tee $0 + local.tee $1 i32.store - local.get $11 - local.get $11 + local.get $9 + local.get $9 i32.load offset=16 - local.tee $1 + local.tee $0 i32.const 1 i32.add i32.store offset=16 - local.get $1 + local.get $0 i32.const 24 i32.mul - local.get $0 + local.get $1 i32.add - local.tee $0 - local.get $13 + local.tee $1 + local.get $7 i64.store - local.get $0 - local.get $13 + local.get $1 + local.get $7 i64.store offset=8 - local.get $11 - local.get $11 + local.get $9 + local.get $9 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $0 - local.get $11 + local.get $1 + local.get $9 i32.load - local.get $11 + local.get $9 i32.load offset=4 - local.get $6 + local.get $14 i32.and i32.const 2 i32.shl i32.add - local.tee $1 + local.tee $0 i32.load i32.store offset=16 - local.get $1 local.get $0 + local.get $1 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $12 - local.get $14 + local.get $8 + local.get $6 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $5 + local.get $16 i32.const 1 i32.add - local.set $5 + local.set $16 br $for-loop|2 end end - local.get $11 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -16764,7 +16741,7 @@ call $~lib/builtins/abort unreachable end - local.get $12 + local.get $8 i32.load offset=20 i32.const 100 i32.ne @@ -16777,14 +16754,14 @@ unreachable end i64.const 0 - local.set $3 + local.set $7 loop $for-loop|3 - local.get $3 + local.get $7 i64.const 50 i64.lt_s if - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has i32.eqz if @@ -16795,10 +16772,10 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#get - local.get $3 + local.get $7 i32.wrap_i64 i32.const 20 i32.add @@ -16811,11 +16788,11 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#delete - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has if i32.const 0 @@ -16825,14 +16802,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 i64.const 1 i64.add - local.set $3 + local.set $7 br $for-loop|3 end end - local.get $9 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -16845,14 +16822,14 @@ unreachable end i64.const 0 - local.set $3 + local.set $7 loop $for-loop|4 - local.get $3 + local.get $7 i64.const 50 i64.lt_s if - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has if i32.const 0 @@ -16862,15 +16839,15 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $3 - local.get $3 + local.get $11 + local.get $7 + local.get $7 i32.wrap_i64 i32.const 10 i32.add call $~lib/map/Map#set - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has i32.eqz if @@ -16881,11 +16858,11 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#delete - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has if i32.const 0 @@ -16895,14 +16872,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 i64.const 1 i64.add - local.set $3 + local.set $7 br $for-loop|4 end end - local.get $9 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -16914,9 +16891,9 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $11 call $~lib/map/Map#clear - local.get $9 + local.get $11 i32.load offset=20 if i32.const 0 @@ -17059,7 +17036,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -17067,7 +17044,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $5 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -17075,13 +17052,13 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $8 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $8 + local.set $4 local.get $3 local.set $2 loop $while-continue|0 @@ -17089,19 +17066,19 @@ local.get $8 i32.ne if - local.get $4 + local.get $8 i32.load offset=12 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $4 + local.get $8 i64.load local.tee $6 i64.store local.get $2 - local.get $4 + local.get $8 i32.load offset=8 i32.store offset=8 local.get $2 @@ -17149,7 +17126,7 @@ i32.and i32.const 2 i32.shl - local.get $5 + local.get $7 i32.add local.tee $9 i32.load @@ -17162,20 +17139,20 @@ i32.add local.set $2 end - local.get $4 + local.get $8 i32.const 16 i32.add - local.set $4 + local.set $8 br $while-continue|0 end end local.get $0 - local.get $5 + local.get $7 i32.store - local.get $5 + local.get $7 if local.get $0 - local.get $5 + local.get $7 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -17191,7 +17168,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $5 i32.store offset=12 local.get $0 local.get $0 @@ -17432,19 +17409,19 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i64) + (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) + (local $7 i64) (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) (local $14 i32) - (local $15 i32) + (local $15 i64) (local $16 i32) (local $17 i32) global.get $~lib/memory/__stack_pointer @@ -17457,16 +17434,16 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i64.const 0 i64.store - local.get $0 + local.get $2 i64.const 0 i64.store offset=8 - local.get $0 + local.get $2 i32.const 0 i32.store offset=16 - local.get $0 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -17475,63 +17452,63 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.const 23 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $11 i32.store - local.get $9 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if - local.get $9 - local.get $2 + local.get $11 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 + local.get $11 i32.const 3 i32.store offset=4 - local.get $9 + local.get $11 i32.const 64 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store offset=8 - local.get $2 + local.get $1 if - local.get $9 - local.get $2 + local.get $11 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 + local.get $11 i32.const 4 i32.store offset=12 - local.get $9 + local.get $11 i32.const 0 i32.store offset=16 - local.get $9 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 - local.get $9 + local.get $2 + local.get $11 i32.store loop $for-loop|0 - local.get $3 + local.get $7 i64.const 100 i64.lt_u if - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has if i32.const 0 @@ -17541,15 +17518,15 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $3 - local.get $3 + local.get $11 + local.get $7 + local.get $7 i32.wrap_i64 i32.const 10 i32.add call $~lib/map/Map#set - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has i32.eqz if @@ -17560,10 +17537,10 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#get - local.get $3 + local.get $7 i32.wrap_i64 i32.const 10 i32.add @@ -17576,14 +17553,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 i64.const 1 i64.add - local.set $3 + local.set $7 br $for-loop|0 end end - local.get $9 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -17596,14 +17573,14 @@ unreachable end i64.const 0 - local.set $3 + local.set $7 loop $for-loop|1 - local.get $3 + local.get $7 i64.const 100 i64.lt_u if - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has i32.eqz if @@ -17614,10 +17591,10 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#get - local.get $3 + local.get $7 i32.wrap_i64 i32.const 10 i32.add @@ -17630,15 +17607,15 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $3 - local.get $3 + local.get $11 + local.get $7 + local.get $7 i32.wrap_i64 i32.const 20 i32.add call $~lib/map/Map#set - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has i32.eqz if @@ -17649,10 +17626,10 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#get - local.get $3 + local.get $7 i32.wrap_i64 i32.const 20 i32.add @@ -17665,14 +17642,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 i64.const 1 i64.add - local.set $3 + local.set $7 br $for-loop|1 end end - local.get $9 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -17685,8 +17662,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -17695,17 +17672,17 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $8 i32.const 0 i32.store - local.get $9 + local.get $11 i32.load offset=8 - local.set $7 - local.get $9 + local.set $6 + local.get $11 i32.load offset=16 - local.tee $8 - local.set $10 - local.get $2 + local.tee $5 + local.set $4 + local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -17714,28 +17691,28 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 16 i32.const 24 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 0 i32.store offset=4 - local.get $0 + local.get $2 i32.const 0 i32.store offset=8 - local.get $0 + local.get $2 i32.const 0 i32.store offset=12 - local.get $10 + local.get $4 i32.const 134217727 i32.gt_u if @@ -17747,88 +17724,87 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $4 i32.const 8 - local.get $10 + local.get $4 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $11 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $12 + local.tee $1 i32.store offset=4 - local.get $12 - local.get $11 + local.get $1 + local.get $3 call $~lib/memory/memory.fill - local.get $0 - local.get $12 + local.get $2 + local.get $1 i32.store - local.get $12 + local.get $1 if - local.get $0 - local.get $12 + local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $12 + local.get $2 + local.get $1 i32.store offset=4 - local.get $0 - local.get $11 + local.get $2 + local.get $3 i32.store offset=8 - local.get $0 - local.get $10 + local.get $2 + local.get $4 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $8 local.get $2 - local.get $0 - local.tee $2 i32.store loop $for-loop|01 - local.get $4 - local.get $8 - i32.lt_s + local.get $5 + local.get $10 + i32.gt_s if - local.get $4 + local.get $10 i32.const 4 i32.shl - local.get $7 + local.get $6 i32.add - local.tee $0 + local.tee $1 i32.load offset=12 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $1 local.get $0 + local.get $1 i64.load call $~lib/array/Array#__set - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 end - local.get $4 + local.get $10 i32.const 1 i32.add - local.set $4 + local.set $10 br $for-loop|01 end end local.get $2 - local.get $1 + local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity local.get $2 - local.get $1 + local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -17837,7 +17813,7 @@ local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $11 call $~lib/map/Map#values local.tee $10 i32.store offset=8 @@ -17851,68 +17827,68 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 24 i32.const 25 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $9 i32.store - local.get $11 + local.get $9 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 if - local.get $11 - local.get $1 + local.get $9 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $9 i32.const 3 i32.store offset=4 - local.get $11 + local.get $9 i32.const 96 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $0 i32.store offset=8 - local.get $1 + local.get $0 if - local.get $11 - local.get $1 + local.get $9 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $9 i32.const 4 i32.store offset=12 - local.get $11 + local.get $9 i32.const 0 i32.store offset=16 - local.get $11 + local.get $9 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $12 + local.tee $8 i32.store offset=16 loop $for-loop|2 local.get $2 i32.load offset=12 - local.get $5 + local.get $16 i32.gt_s if local.get $2 i32.load offset=12 - local.get $5 + local.get $16 i32.le_u if i32.const 1248 @@ -17924,18 +17900,18 @@ end local.get $2 i32.load offset=4 - local.get $5 + local.get $16 i32.const 3 i32.shl i32.add i64.load - local.set $13 + local.set $7 local.get $10 - local.get $5 + local.get $16 call $~lib/array/Array#__get - local.set $14 - local.get $9 - local.get $13 + local.set $6 + local.get $11 + local.get $7 call $~lib/map/Map#has i32.eqz if @@ -17946,8 +17922,8 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $14 + local.get $11 + local.get $6 i32.const 20 i32.sub i64.extend_i32_s @@ -17972,9 +17948,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $11 + local.get $9 i32.load - local.get $13 + local.get $7 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -17984,7 +17960,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $13 + local.get $7 i64.const 32 i64.shr_u i32.wrap_i64 @@ -18014,8 +17990,8 @@ i32.shr_u local.get $0 i32.xor - local.tee $6 - local.get $11 + local.tee $14 + local.get $9 i32.load offset=4 i32.and i32.const 2 @@ -18035,7 +18011,7 @@ if (result i32) i32.const 0 else - local.get $13 + local.get $7 local.get $0 i64.load i64.eq @@ -18054,18 +18030,18 @@ local.get $0 if local.get $0 - local.get $13 + local.get $7 i64.store offset=8 else - local.get $11 + local.get $9 i32.load offset=16 - local.get $11 + local.get $9 i32.load offset=12 i32.eq if - local.get $11 + local.get $9 i32.load offset=20 - local.get $11 + local.get $9 i32.load offset=12 i32.const 3 i32.mul @@ -18073,17 +18049,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $11 + local.get $9 i32.load offset=4 else - local.get $11 + local.get $9 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $15 + local.set $5 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -18097,14 +18073,14 @@ i64.const 0 i64.store local.get $0 - local.get $15 + local.get $5 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $16 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -18112,46 +18088,46 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $13 i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=4 - local.get $11 + local.get $9 i32.load offset=8 - local.tee $4 - local.get $11 + local.tee $17 + local.get $9 i32.load offset=16 i32.const 24 i32.mul i32.add - local.set $8 + local.set $12 local.get $1 local.set $0 loop $while-continue|00 - local.get $4 - local.get $8 + local.get $12 + local.get $17 i32.ne if - local.get $4 + local.get $17 i32.load offset=16 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $4 + local.get $17 i64.load - local.tee $3 + local.tee $15 i64.store local.get $0 - local.get $4 + local.get $17 i64.load offset=8 i64.store offset=8 local.get $0 + local.get $5 local.get $15 - local.get $3 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -18161,7 +18137,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $3 + local.get $15 i64.const 32 i64.shr_u i32.wrap_i64 @@ -18172,34 +18148,34 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $17 + local.tee $3 i32.const 15 i32.shr_u - local.get $17 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $17 + local.tee $3 i32.const 13 i32.shr_u - local.get $17 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $17 + local.tee $3 i32.const 16 i32.shr_u - local.get $17 + local.get $3 i32.xor i32.and i32.const 2 i32.shl - local.get $16 + local.get $4 i32.add - local.tee $17 + local.tee $3 i32.load i32.store offset=16 - local.get $17 + local.get $3 local.get $0 i32.store local.get $0 @@ -18207,39 +18183,39 @@ i32.add local.set $0 end - local.get $4 + local.get $17 i32.const 24 i32.add - local.set $4 + local.set $17 br $while-continue|00 end end - local.get $11 - local.get $16 + local.get $9 + local.get $4 i32.store - local.get $16 + local.get $4 if - local.get $11 - local.get $16 + local.get $9 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 - local.get $15 + local.get $9 + local.get $5 i32.store offset=4 - local.get $11 + local.get $9 local.get $1 i32.store offset=8 local.get $1 if - local.get $11 + local.get $9 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 - local.get $7 + local.get $9 + local.get $13 i32.store offset=12 - local.get $11 - local.get $11 + local.get $9 + local.get $9 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -18248,70 +18224,70 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $9 i32.load offset=8 - local.tee $0 + local.tee $1 i32.store - local.get $11 - local.get $11 + local.get $9 + local.get $9 i32.load offset=16 - local.tee $1 + local.tee $0 i32.const 1 i32.add i32.store offset=16 - local.get $1 + local.get $0 i32.const 24 i32.mul - local.get $0 + local.get $1 i32.add - local.tee $0 - local.get $13 + local.tee $1 + local.get $7 i64.store - local.get $0 - local.get $13 + local.get $1 + local.get $7 i64.store offset=8 - local.get $11 - local.get $11 + local.get $9 + local.get $9 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $0 - local.get $11 + local.get $1 + local.get $9 i32.load - local.get $11 + local.get $9 i32.load offset=4 - local.get $6 + local.get $14 i32.and i32.const 2 i32.shl i32.add - local.tee $1 + local.tee $0 i32.load i32.store offset=16 - local.get $1 local.get $0 + local.get $1 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $12 - local.get $14 + local.get $8 + local.get $6 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $5 + local.get $16 i32.const 1 i32.add - local.set $5 + local.set $16 br $for-loop|2 end end - local.get $11 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -18323,7 +18299,7 @@ call $~lib/builtins/abort unreachable end - local.get $12 + local.get $8 i32.load offset=20 i32.const 100 i32.ne @@ -18336,14 +18312,14 @@ unreachable end i64.const 0 - local.set $3 + local.set $7 loop $for-loop|3 - local.get $3 + local.get $7 i64.const 50 i64.lt_u if - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has i32.eqz if @@ -18354,10 +18330,10 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#get - local.get $3 + local.get $7 i32.wrap_i64 i32.const 20 i32.add @@ -18370,11 +18346,11 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#delete - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has if i32.const 0 @@ -18384,14 +18360,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 i64.const 1 i64.add - local.set $3 + local.set $7 br $for-loop|3 end end - local.get $9 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -18404,14 +18380,14 @@ unreachable end i64.const 0 - local.set $3 + local.set $7 loop $for-loop|4 - local.get $3 + local.get $7 i64.const 50 i64.lt_u if - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has if i32.const 0 @@ -18421,15 +18397,15 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $3 - local.get $3 + local.get $11 + local.get $7 + local.get $7 i32.wrap_i64 i32.const 10 i32.add call $~lib/map/Map#set - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has i32.eqz if @@ -18440,11 +18416,11 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#delete - local.get $9 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has if i32.const 0 @@ -18454,14 +18430,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 i64.const 1 i64.add - local.set $3 + local.set $7 br $for-loop|4 end end - local.get $9 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -18473,9 +18449,9 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $11 call $~lib/map/Map#clear - local.get $9 + local.get $11 i32.load offset=20 if i32.const 0 @@ -18501,11 +18477,11 @@ (func $~lib/map/Map#rehash (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) + (local $4 f32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 f32) + (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -18534,7 +18510,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -18550,37 +18526,37 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $8 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $7 + local.set $5 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $5 + local.get $8 i32.ne if - local.get $4 + local.get $8 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $4 + local.get $8 f32.load - local.tee $8 + local.tee $4 f32.store local.get $2 - local.get $4 + local.get $8 i32.load offset=4 i32.store offset=4 local.get $2 - local.get $8 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -18613,7 +18589,7 @@ i32.and i32.const 2 i32.shl - local.get $5 + local.get $7 i32.add local.tee $9 i32.load @@ -18626,20 +18602,20 @@ i32.add local.set $2 end - local.get $4 + local.get $8 i32.const 12 i32.add - local.set $4 + local.set $8 br $while-continue|0 end end local.get $0 - local.get $5 + local.get $7 i32.store - local.get $5 + local.get $7 if local.get $0 - local.get $5 + local.get $7 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -18875,17 +18851,17 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 f32) + (local $4 i32) (local $5 i32) - (local $6 i32) + (local $6 f32) (local $7 i32) - (local $8 f32) + (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) + (local $14 f32) (local $15 i32) (local $16 i32) (local $17 i32) @@ -18899,16 +18875,16 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i64.const 0 i64.store offset=8 - local.get $2 + local.get $1 i32.const 0 i32.store offset=16 - local.get $2 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -18917,66 +18893,66 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.const 26 call $~lib/rt/itcms/__new - local.tee $12 + local.tee $9 i32.store - local.get $12 + local.get $9 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if - local.get $12 - local.get $1 + local.get $9 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $12 + local.get $9 i32.const 3 i32.store offset=4 - local.get $12 + local.get $9 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=8 - local.get $1 + local.get $2 if - local.get $12 - local.get $1 + local.get $9 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $12 + local.get $9 i32.const 4 i32.store offset=12 - local.get $12 + local.get $9 i32.const 0 i32.store offset=16 - local.get $12 + local.get $9 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 - local.get $12 + local.get $1 + local.get $9 i32.store loop $for-loop|0 - local.get $4 + local.get $6 f32.const 100 f32.lt if - local.get $12 + local.get $9 i32.load - local.get $12 + local.get $9 i32.load offset=4 - local.get $4 + local.get $6 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19010,36 +18986,36 @@ i32.shl i32.add i32.load - local.set $2 + local.set $1 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $2 + local.get $1 if - local.get $2 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 - local.get $2 + local.get $6 + local.get $1 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $1 + local.get $2 i32.const -2 i32.and - local.set $2 + local.set $1 br $while-continue|0 end end i32.const 0 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 if i32.const 0 i32.const 1568 @@ -19048,18 +19024,18 @@ call $~lib/builtins/abort unreachable end - local.get $12 - local.get $4 - local.get $4 + local.get $9 + local.get $6 + local.get $6 i32.trunc_f32_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $12 + local.get $9 i32.load - local.get $12 + local.get $9 i32.load offset=4 - local.get $4 + local.get $6 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19093,36 +19069,36 @@ i32.shl i32.add i32.load - local.set $2 + local.set $1 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $2 + local.get $1 if - local.get $2 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 - local.get $2 + local.get $6 + local.get $1 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $1 + local.get $2 i32.const -2 i32.and - local.set $2 + local.set $1 br $while-continue|02 end end i32.const 0 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 i32.eqz if i32.const 0 @@ -19132,10 +19108,10 @@ call $~lib/builtins/abort unreachable end - local.get $12 - local.get $4 + local.get $9 + local.get $6 call $~lib/map/Map#get - local.get $4 + local.get $6 i32.trunc_f32_s i32.const 10 i32.add @@ -19148,14 +19124,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 f32.const 1 f32.add - local.set $4 + local.set $6 br $for-loop|0 end end - local.get $12 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -19168,17 +19144,17 @@ unreachable end f32.const 0 - local.set $4 + local.set $6 loop $for-loop|1 - local.get $4 + local.get $6 f32.const 100 f32.lt if - local.get $12 + local.get $9 i32.load - local.get $12 + local.get $9 i32.load offset=4 - local.get $4 + local.get $6 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19212,36 +19188,36 @@ i32.shl i32.add i32.load - local.set $2 + local.set $1 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $2 + local.get $1 if - local.get $2 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 - local.get $2 + local.get $6 + local.get $1 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $1 + local.get $2 i32.const -2 i32.and - local.set $2 + local.set $1 br $while-continue|05 end end i32.const 0 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 i32.eqz if i32.const 0 @@ -19251,10 +19227,10 @@ call $~lib/builtins/abort unreachable end - local.get $12 - local.get $4 + local.get $9 + local.get $6 call $~lib/map/Map#get - local.get $4 + local.get $6 i32.trunc_f32_s i32.const 10 i32.add @@ -19267,18 +19243,18 @@ call $~lib/builtins/abort unreachable end - local.get $12 - local.get $4 - local.get $4 + local.get $9 + local.get $6 + local.get $6 i32.trunc_f32_s i32.const 20 i32.add call $~lib/map/Map#set - local.get $12 + local.get $9 i32.load - local.get $12 + local.get $9 i32.load offset=4 - local.get $4 + local.get $6 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19312,36 +19288,36 @@ i32.shl i32.add i32.load - local.set $2 + local.set $1 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $2 + local.get $1 if - local.get $2 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 - local.get $2 + local.get $6 + local.get $1 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $1 + local.get $2 i32.const -2 i32.and - local.set $2 + local.set $1 br $while-continue|08 end end i32.const 0 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 i32.eqz if i32.const 0 @@ -19351,10 +19327,10 @@ call $~lib/builtins/abort unreachable end - local.get $12 - local.get $4 + local.get $9 + local.get $6 call $~lib/map/Map#get - local.get $4 + local.get $6 i32.trunc_f32_s i32.const 20 i32.add @@ -19367,14 +19343,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 f32.const 1 f32.add - local.set $4 + local.set $6 br $for-loop|1 end end - local.get $12 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -19397,17 +19373,17 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $2 i32.const 0 i32.store - local.get $12 + local.get $9 i32.load offset=8 - local.set $7 - local.get $12 - i32.load offset=16 - local.tee $6 local.set $5 local.get $9 + i32.load offset=16 + local.tee $8 + local.set $10 + local.get $2 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -19423,21 +19399,21 @@ i32.const 16 i32.const 27 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 0 i32.store offset=4 - local.get $2 + local.get $1 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 0 i32.store offset=12 - local.get $5 + local.get $10 i32.const 268435455 i32.gt_u if @@ -19449,77 +19425,77 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $10 i32.const 8 - local.get $5 + local.get $10 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $3 + local.tee $11 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $12 i32.store offset=4 - local.get $1 - local.get $3 + local.get $12 + local.get $11 call $~lib/memory/memory.fill - local.get $2 local.get $1 + local.get $12 i32.store - local.get $1 + local.get $12 if - local.get $2 local.get $1 + local.get $12 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 local.get $1 + local.get $12 i32.store offset=4 - local.get $2 - local.get $3 + local.get $1 + local.get $11 i32.store offset=8 - local.get $2 - local.get $5 + local.get $1 + local.get $10 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 local.get $2 + local.get $1 i32.store loop $for-loop|01 - local.get $6 - local.get $11 - i32.gt_s + local.get $3 + local.get $8 + i32.lt_s if - local.get $11 + local.get $3 i32.const 12 i32.mul - local.get $7 + local.get $5 i32.add - local.tee $3 + local.tee $10 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $0 - local.tee $1 + local.tee $2 i32.const 1 i32.add local.set $0 - local.get $3 + local.get $10 f32.load - local.set $4 - local.get $2 - i32.load offset=12 + local.set $6 local.get $1 + i32.load offset=12 + local.get $2 i32.le_u if - local.get $1 + local.get $2 i32.const 0 i32.lt_s if @@ -19530,52 +19506,52 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.const 1 i32.add - local.tee $3 + local.tee $10 i32.const 2 i32.const 1 call $~lib/array/ensureCapacity - local.get $2 - local.get $3 + local.get $1 + local.get $10 i32.store offset=12 end - local.get $2 - i32.load offset=4 local.get $1 + i32.load offset=4 + local.get $2 i32.const 2 i32.shl i32.add - local.get $4 + local.get $6 f32.store end - local.get $11 + local.get $3 i32.const 1 i32.add - local.set $11 + local.set $3 br $for-loop|01 end end - local.get $2 + local.get $1 local.get $0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $2 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $12 + local.get $9 call $~lib/map/Map#values - local.tee $11 + local.tee $10 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -19587,68 +19563,68 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.const 28 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $11 i32.store - local.get $10 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 if - local.get $10 - local.get $0 + local.get $11 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $11 i32.const 3 i32.store offset=4 - local.get $10 + local.get $11 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $2 i32.store offset=8 - local.get $0 + local.get $2 if - local.get $10 - local.get $0 + local.get $11 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $11 i32.const 4 i32.store offset=12 - local.get $10 + local.get $11 i32.const 0 i32.store offset=16 - local.get $10 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $11 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $9 + local.tee $12 i32.store offset=16 loop $for-loop|2 - local.get $2 + local.get $1 i32.load offset=12 - local.get $16 + local.get $7 i32.gt_s if - local.get $2 + local.get $1 i32.load offset=12 - local.get $16 + local.get $7 i32.le_u if i32.const 1248 @@ -19658,23 +19634,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.load offset=4 - local.get $16 + local.get $7 i32.const 2 i32.shl i32.add f32.load - local.set $8 - local.get $11 - local.get $16 + local.set $6 + local.get $10 + local.get $7 call $~lib/array/Array#__get - local.set $7 - local.get $12 + local.set $13 + local.get $9 i32.load - local.get $12 + local.get $9 i32.load offset=4 - local.get $8 + local.get $6 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19715,19 +19691,19 @@ if local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $8 + local.get $6 local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $1 + local.get $2 i32.const -2 i32.and local.set $0 @@ -19747,15 +19723,15 @@ call $~lib/builtins/abort unreachable end - local.get $12 + local.get $9 i32.load - local.get $12 + local.get $9 i32.load offset=4 - local.get $7 + local.get $13 i32.const 20 i32.sub f32.convert_i32_s - local.tee $4 + local.tee $14 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19796,19 +19772,19 @@ if local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $14 local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $1 + local.get $2 i32.const -2 i32.and local.set $0 @@ -19839,9 +19815,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $10 + local.get $11 i32.load - local.get $8 + local.get $6 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19870,8 +19846,8 @@ i32.shr_u local.get $0 i32.xor - local.tee $15 - local.get $10 + local.tee $5 + local.get $11 i32.load offset=4 i32.and i32.const 2 @@ -19885,19 +19861,19 @@ if local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $8 + local.get $6 local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find15 - local.get $1 + local.get $2 i32.const -2 i32.and local.set $0 @@ -19910,18 +19886,18 @@ local.get $0 if local.get $0 - local.get $8 + local.get $6 f32.store offset=4 else - local.get $10 + local.get $11 i32.load offset=16 - local.get $10 + local.get $11 i32.load offset=12 i32.eq if - local.get $10 + local.get $11 i32.load offset=20 - local.get $10 + local.get $11 i32.load offset=12 i32.const 3 i32.mul @@ -19929,17 +19905,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $10 + local.get $11 i32.load offset=4 else - local.get $10 + local.get $11 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $6 + local.set $15 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -19953,14 +19929,14 @@ i64.const 0 i64.store local.get $0 - local.get $6 + local.get $15 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $16 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -19968,45 +19944,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $14 + local.tee $4 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $10 + local.get $11 i32.load offset=8 - local.tee $17 - local.get $10 + local.tee $8 + local.get $11 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $13 - local.get $1 + local.set $3 + local.get $2 local.set $0 loop $while-continue|017 - local.get $13 - local.get $17 + local.get $3 + local.get $8 i32.ne if - local.get $17 + local.get $8 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $17 + local.get $8 f32.load - local.tee $4 + local.tee $14 f32.store local.get $0 - local.get $17 + local.get $8 f32.load offset=4 f32.store offset=4 local.get $0 - local.get $4 + local.get $14 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20016,35 +19992,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $17 i32.const 15 i32.shr_u - local.get $3 + local.get $17 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $17 i32.const 13 i32.shr_u - local.get $3 + local.get $17 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $17 i32.const 16 i32.shr_u - local.get $3 + local.get $17 i32.xor - local.get $6 + local.get $15 i32.and i32.const 2 i32.shl - local.get $5 + local.get $16 i32.add - local.tee $3 + local.tee $17 i32.load i32.store offset=8 - local.get $3 + local.get $17 local.get $0 i32.store local.get $0 @@ -20052,39 +20028,39 @@ i32.add local.set $0 end - local.get $17 + local.get $8 i32.const 12 i32.add - local.set $17 + local.set $8 br $while-continue|017 end end - local.get $10 - local.get $5 + local.get $11 + local.get $16 i32.store - local.get $5 + local.get $16 if - local.get $10 - local.get $5 + local.get $11 + local.get $16 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $6 + local.get $11 + local.get $15 i32.store offset=4 - local.get $10 - local.get $1 + local.get $11 + local.get $2 i32.store offset=8 - local.get $1 + local.get $2 if - local.get $10 - local.get $1 + local.get $11 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $14 + local.get $11 + local.get $4 i32.store offset=12 - local.get $10 - local.get $10 + local.get $11 + local.get $11 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -20093,70 +20069,70 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $11 i32.load offset=8 - local.tee $1 + local.tee $0 i32.store - local.get $10 - local.get $10 + local.get $11 + local.get $11 i32.load offset=16 - local.tee $0 + local.tee $2 i32.const 1 i32.add i32.store offset=16 - local.get $0 + local.get $2 i32.const 12 i32.mul - local.get $1 + local.get $0 i32.add - local.tee $1 - local.get $8 + local.tee $0 + local.get $6 f32.store - local.get $1 - local.get $8 + local.get $0 + local.get $6 f32.store offset=4 - local.get $10 - local.get $10 + local.get $11 + local.get $11 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $1 - local.get $10 + local.get $0 + local.get $11 i32.load - local.get $10 + local.get $11 i32.load offset=4 - local.get $15 + local.get $5 i32.and i32.const 2 i32.shl i32.add - local.tee $0 + local.tee $2 i32.load i32.store offset=8 + local.get $2 local.get $0 - local.get $1 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 - local.get $7 + local.get $12 + local.get $13 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $16 + local.get $7 i32.const 1 i32.add - local.set $16 + local.set $7 br $for-loop|2 end end - local.get $10 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -20168,7 +20144,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $12 i32.load offset=20 i32.const 100 i32.ne @@ -20181,17 +20157,17 @@ unreachable end f32.const 0 - local.set $4 + local.set $6 loop $for-loop|3 - local.get $4 + local.get $6 f32.const 50 f32.lt if - local.get $12 + local.get $9 i32.load - local.get $12 + local.get $9 i32.load offset=4 - local.get $4 + local.get $6 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20225,12 +20201,12 @@ i32.shl i32.add i32.load - local.set $2 + local.set $1 block $__inlined_func$~lib/map/Map#find19 loop $while-continue|020 - local.get $2 + local.get $1 if - local.get $2 + local.get $1 i32.load offset=8 local.tee $0 i32.const 1 @@ -20238,8 +20214,8 @@ if (result i32) i32.const 0 else - local.get $4 - local.get $2 + local.get $6 + local.get $1 f32.load f32.eq end @@ -20247,14 +20223,14 @@ local.get $0 i32.const -2 i32.and - local.set $2 + local.set $1 br $while-continue|020 end end i32.const 0 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 i32.eqz if i32.const 0 @@ -20264,10 +20240,10 @@ call $~lib/builtins/abort unreachable end - local.get $12 - local.get $4 + local.get $9 + local.get $6 call $~lib/map/Map#get - local.get $4 + local.get $6 i32.trunc_f32_s i32.const 20 i32.add @@ -20280,14 +20256,14 @@ call $~lib/builtins/abort unreachable end - local.get $12 - local.get $4 + local.get $9 + local.get $6 call $~lib/map/Map#delete - local.get $12 + local.get $9 i32.load - local.get $12 + local.get $9 i32.load offset=4 - local.get $4 + local.get $6 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20321,12 +20297,12 @@ i32.shl i32.add i32.load - local.set $2 + local.set $1 block $__inlined_func$~lib/map/Map#find22 loop $while-continue|023 - local.get $2 + local.get $1 if - local.get $2 + local.get $1 i32.load offset=8 local.tee $0 i32.const 1 @@ -20334,8 +20310,8 @@ if (result i32) i32.const 0 else - local.get $4 - local.get $2 + local.get $6 + local.get $1 f32.load f32.eq end @@ -20343,14 +20319,14 @@ local.get $0 i32.const -2 i32.and - local.set $2 + local.set $1 br $while-continue|023 end end i32.const 0 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 if i32.const 0 i32.const 1568 @@ -20359,14 +20335,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 f32.const 1 f32.add - local.set $4 + local.set $6 br $for-loop|3 end end - local.get $12 + local.get $9 i32.load offset=20 i32.const 50 i32.ne @@ -20379,17 +20355,17 @@ unreachable end f32.const 0 - local.set $4 + local.set $6 loop $for-loop|4 - local.get $4 + local.get $6 f32.const 50 f32.lt if - local.get $12 + local.get $9 i32.load - local.get $12 + local.get $9 i32.load offset=4 - local.get $4 + local.get $6 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20423,12 +20399,12 @@ i32.shl i32.add i32.load - local.set $2 + local.set $1 block $__inlined_func$~lib/map/Map#find25 loop $while-continue|026 - local.get $2 + local.get $1 if - local.get $2 + local.get $1 i32.load offset=8 local.tee $0 i32.const 1 @@ -20436,8 +20412,8 @@ if (result i32) i32.const 0 else - local.get $4 - local.get $2 + local.get $6 + local.get $1 f32.load f32.eq end @@ -20445,14 +20421,14 @@ local.get $0 i32.const -2 i32.and - local.set $2 + local.set $1 br $while-continue|026 end end i32.const 0 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 if i32.const 0 i32.const 1568 @@ -20461,18 +20437,18 @@ call $~lib/builtins/abort unreachable end - local.get $12 - local.get $4 - local.get $4 + local.get $9 + local.get $6 + local.get $6 i32.trunc_f32_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $12 + local.get $9 i32.load - local.get $12 + local.get $9 i32.load offset=4 - local.get $4 + local.get $6 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20506,12 +20482,12 @@ i32.shl i32.add i32.load - local.set $2 + local.set $1 block $__inlined_func$~lib/map/Map#find28 loop $while-continue|029 - local.get $2 + local.get $1 if - local.get $2 + local.get $1 i32.load offset=8 local.tee $0 i32.const 1 @@ -20519,8 +20495,8 @@ if (result i32) i32.const 0 else - local.get $4 - local.get $2 + local.get $6 + local.get $1 f32.load f32.eq end @@ -20528,14 +20504,14 @@ local.get $0 i32.const -2 i32.and - local.set $2 + local.set $1 br $while-continue|029 end end i32.const 0 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 i32.eqz if i32.const 0 @@ -20545,14 +20521,14 @@ call $~lib/builtins/abort unreachable end - local.get $12 - local.get $4 + local.get $9 + local.get $6 call $~lib/map/Map#delete - local.get $12 + local.get $9 i32.load - local.get $12 + local.get $9 i32.load offset=4 - local.get $4 + local.get $6 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20586,12 +20562,12 @@ i32.shl i32.add i32.load - local.set $2 + local.set $1 block $__inlined_func$~lib/map/Map#find31 loop $while-continue|032 - local.get $2 + local.get $1 if - local.get $2 + local.get $1 i32.load offset=8 local.tee $0 i32.const 1 @@ -20599,8 +20575,8 @@ if (result i32) i32.const 0 else - local.get $4 - local.get $2 + local.get $6 + local.get $1 f32.load f32.eq end @@ -20608,14 +20584,14 @@ local.get $0 i32.const -2 i32.and - local.set $2 + local.set $1 br $while-continue|032 end end i32.const 0 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 if i32.const 0 i32.const 1568 @@ -20624,14 +20600,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 f32.const 1 f32.add - local.set $4 + local.set $6 br $for-loop|4 end end - local.get $12 + local.get $9 i32.load offset=20 i32.const 50 i32.ne @@ -20643,9 +20619,9 @@ call $~lib/builtins/abort unreachable end - local.get $12 + local.get $9 call $~lib/map/Map#clear - local.get $12 + local.get $9 i32.load offset=20 if i32.const 0 @@ -20758,12 +20734,12 @@ (func $~lib/map/Map#rehash (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) + (local $4 i64) + (local $5 f64) (local $6 i32) (local $7 i32) - (local $8 f64) - (local $9 i64) + (local $8 i32) + (local $9 i32) (local $10 i32) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -20792,7 +20768,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $8 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -20800,7 +20776,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $7 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -20808,40 +20784,40 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $9 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $7 + local.set $6 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $6 + local.get $9 i32.ne if - local.get $4 + local.get $9 i32.load offset=12 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $4 + local.get $9 f64.load - local.tee $8 + local.tee $5 f64.store local.get $2 - local.get $4 + local.get $9 i32.load offset=8 i32.store offset=8 local.get $2 local.get $1 - local.get $8 + local.get $5 i64.reinterpret_f64 - local.tee $9 + local.tee $4 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -20851,7 +20827,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $9 + local.get $4 i64.const 32 i64.shr_u i32.wrap_i64 @@ -20884,7 +20860,7 @@ i32.and i32.const 2 i32.shl - local.get $5 + local.get $8 i32.add local.tee $10 i32.load @@ -20897,20 +20873,20 @@ i32.add local.set $2 end - local.get $4 + local.get $9 i32.const 16 i32.add - local.set $4 + local.set $9 br $while-continue|0 end end local.get $0 - local.get $5 + local.get $8 i32.store - local.get $5 + local.get $8 if local.get $0 - local.get $5 + local.get $8 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -20926,7 +20902,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -21176,8 +21152,8 @@ (local $3 f64) (local $4 i32) (local $5 i32) - (local $6 i64) - (local $7 i32) + (local $6 i32) + (local $7 i64) (local $8 i32) (local $9 i32) (local $10 i32) @@ -21199,16 +21175,16 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i64.const 0 i64.store offset=8 - local.get $2 + local.get $1 i32.const 0 i32.store offset=16 - local.get $2 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -21217,10 +21193,10 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.const 29 call $~lib/rt/itcms/__new @@ -21229,12 +21205,12 @@ local.get $10 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if local.get $10 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $10 @@ -21243,12 +21219,12 @@ local.get $10 i32.const 64 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=8 - local.get $1 + local.get $2 if local.get $10 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $10 @@ -21264,7 +21240,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 local.get $10 i32.store loop $for-loop|0 @@ -21427,8 +21403,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -21437,17 +21413,17 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store local.get $10 i32.load offset=8 - local.set $8 + local.set $6 local.get $10 i32.load offset=16 local.tee $9 local.set $11 - local.get $1 + local.get $2 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -21456,25 +21432,25 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i32.const 16 i32.const 30 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 0 i32.store offset=4 - local.get $2 + local.get $1 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 0 i32.store offset=12 local.get $11 @@ -21505,30 +21481,30 @@ local.get $13 local.get $12 call $~lib/memory/memory.fill - local.get $2 + local.get $1 local.get $13 i32.store local.get $13 if - local.get $2 + local.get $1 local.get $13 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 + local.get $1 local.get $13 i32.store offset=4 - local.get $2 + local.get $1 local.get $12 i32.store offset=8 - local.get $2 + local.get $1 local.get $11 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 local.get $2 + local.get $1 i32.store loop $for-loop|01 local.get $4 @@ -21538,7 +21514,7 @@ local.get $4 i32.const 4 i32.shl - local.get $8 + local.get $6 i32.add local.tee $11 i32.load offset=12 @@ -21547,19 +21523,19 @@ i32.eqz if local.get $0 - local.tee $1 + local.tee $2 i32.const 1 i32.add local.set $0 local.get $11 f64.load local.set $3 - local.get $2 - i32.load offset=12 local.get $1 + i32.load offset=12 + local.get $2 i32.le_u if - local.get $1 + local.get $2 i32.const 0 i32.lt_s if @@ -21570,21 +21546,21 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.const 1 i32.add local.tee $11 i32.const 3 i32.const 1 call $~lib/array/ensureCapacity - local.get $2 + local.get $1 local.get $11 i32.store offset=12 end - local.get $2 - i32.load offset=4 local.get $1 + i32.load offset=4 + local.get $2 i32.const 3 i32.shl i32.add @@ -21598,19 +21574,19 @@ br $for-loop|01 end end - local.get $2 + local.get $1 local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $2 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $10 @@ -21627,10 +21603,10 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.const 31 call $~lib/rt/itcms/__new @@ -21639,12 +21615,12 @@ local.get $12 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if local.get $12 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $12 @@ -21653,12 +21629,12 @@ local.get $12 i32.const 96 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=8 - local.get $1 + local.get $2 if local.get $12 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $12 @@ -21681,14 +21657,14 @@ local.tee $13 i32.store offset=16 loop $for-loop|2 - local.get $2 + local.get $1 i32.load offset=12 - local.get $5 + local.get $8 i32.gt_s if - local.get $2 + local.get $1 i32.load offset=12 - local.get $5 + local.get $8 i32.le_u if i32.const 1248 @@ -21698,16 +21674,16 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.load offset=4 - local.get $5 + local.get $8 i32.const 3 i32.shl i32.add f64.load local.set $14 local.get $11 - local.get $5 + local.get $8 call $~lib/array/Array#__get local.set $15 local.get $10 @@ -21752,7 +21728,7 @@ i32.load local.get $14 i64.reinterpret_f64 - local.tee $6 + local.tee $7 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -21762,7 +21738,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $6 + local.get $7 i64.const 32 i64.shr_u i32.wrap_i64 @@ -21792,7 +21768,7 @@ i32.shr_u local.get $0 i32.xor - local.tee $7 + local.tee $6 local.get $12 i32.load offset=4 i32.and @@ -21807,7 +21783,7 @@ if local.get $0 i32.load offset=16 - local.tee $1 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -21819,7 +21795,7 @@ f64.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $1 + local.get $2 i32.const -2 i32.and local.set $0 @@ -21890,48 +21866,48 @@ i32.shl i32.const 3 i32.div_s - local.tee $8 + local.tee $5 i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=4 local.get $12 i32.load offset=8 - local.tee $4 + local.tee $9 local.get $12 i32.load offset=16 i32.const 24 i32.mul i32.add - local.set $9 - local.get $1 + local.set $4 + local.get $2 local.set $0 loop $while-continue|00 local.get $4 local.get $9 i32.ne if - local.get $4 + local.get $9 i32.load offset=16 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $4 + local.get $9 f64.load local.tee $3 f64.store local.get $0 - local.get $4 + local.get $9 f64.load offset=8 f64.store offset=8 local.get $0 local.get $16 local.get $3 i64.reinterpret_f64 - local.tee $6 + local.tee $7 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -21941,7 +21917,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $6 + local.get $7 i64.const 32 i64.shr_u i32.wrap_i64 @@ -21987,10 +21963,10 @@ i32.add local.set $0 end - local.get $4 + local.get $9 i32.const 24 i32.add - local.set $4 + local.set $9 br $while-continue|00 end end @@ -22007,16 +21983,16 @@ local.get $16 i32.store offset=4 local.get $12 - local.get $1 + local.get $2 i32.store offset=8 - local.get $1 + local.get $2 if local.get $12 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $12 - local.get $8 + local.get $5 i32.store offset=12 local.get $12 local.get $12 @@ -22035,11 +22011,11 @@ local.get $12 local.get $12 i32.load offset=16 - local.tee $1 + local.tee $2 i32.const 1 i32.add i32.store offset=16 - local.get $1 + local.get $2 i32.const 24 i32.mul local.get $0 @@ -22061,15 +22037,15 @@ i32.load local.get $12 i32.load offset=4 - local.get $7 + local.get $6 i32.and i32.const 2 i32.shl i32.add - local.tee $1 + local.tee $2 i32.load i32.store offset=16 - local.get $1 + local.get $2 local.get $0 i32.store end @@ -22084,10 +22060,10 @@ local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $5 + local.get $8 i32.const 1 i32.add - local.set $5 + local.set $8 br $for-loop|2 end end diff --git a/tests/compiler/std/math.optimized.wat b/tests/compiler/std/math.optimized.wat index 4fed535ef1..2a3db3be81 100644 --- a/tests/compiler/std/math.optimized.wat +++ b/tests/compiler/std/math.optimized.wat @@ -1402,39 +1402,41 @@ end ) (func $std/math/test_acosh (param $0 f64) (param $1 f64) (param $2 f64) (result i32) - (local $3 i64) - (local $4 f64) + (local $3 f64) + (local $4 i64) block $__inlined_func$~lib/math/NativeMath.acosh (result f64) local.get $0 - local.get $0 - f64.sub - f64.const 0 - f64.div - local.get $0 - i64.reinterpret_f64 local.tee $3 + i64.reinterpret_f64 + local.tee $4 i64.const 4607182418800017408 i64.lt_s - br_if $__inlined_func$~lib/math/NativeMath.acosh - drop - local.get $3 + if + local.get $3 + local.get $3 + f64.sub + f64.const 0 + f64.div + br $__inlined_func$~lib/math/NativeMath.acosh + end + local.get $4 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.tee $3 + local.tee $4 i64.const 1024 i64.lt_u if - local.get $0 + local.get $3 f64.const 1 f64.sub - local.tee $4 - local.get $4 - local.get $4 + local.tee $3 + local.get $3 + local.get $3 f64.mul - local.get $4 - local.get $4 + local.get $3 + local.get $3 f64.add f64.add f64.sqrt @@ -1442,17 +1444,17 @@ call $~lib/math/NativeMath.log1p br $__inlined_func$~lib/math/NativeMath.acosh end - local.get $3 + local.get $4 i64.const 1049 i64.lt_u if - local.get $0 - local.get $0 + local.get $3 + local.get $3 f64.add f64.const 1 - local.get $0 - local.get $0 - local.get $0 + local.get $3 + local.get $3 + local.get $3 f64.mul f64.const 1 f64.sub @@ -1463,7 +1465,7 @@ call $~lib/math/NativeMath.log br $__inlined_func$~lib/math/NativeMath.acosh end - local.get $0 + local.get $3 call $~lib/math/NativeMath.log f64.const 0.6931471805599453 f64.add @@ -3453,11 +3455,11 @@ i64.shr_u i64.const 1045 i64.sub - local.tee $2 + local.tee $1 i64.const 63 i64.and local.set $6 - local.get $2 + local.get $1 i64.const 6 i64.shr_s i32.wrap_i64 @@ -3580,33 +3582,33 @@ i64.mul i64.add i64.add - local.tee $1 + local.tee $3 i64.const 2 i64.shl local.get $2 i64.const 62 i64.shr_u i64.or - local.tee $3 + local.tee $6 i64.const 63 i64.shr_s - local.tee $6 + local.tee $7 i64.const 1 i64.shr_s - local.get $3 + local.get $6 i64.xor - local.tee $7 + local.tee $1 i64.clz local.set $8 - local.get $7 + local.get $1 local.get $8 i64.shl - local.get $6 + local.get $7 local.get $2 i64.const 2 i64.shl i64.xor - local.tee $7 + local.tee $2 i64.const 64 local.get $8 i64.sub @@ -3615,24 +3617,24 @@ local.tee $9 i64.const 4294967295 i64.and - local.set $2 + local.set $1 local.get $9 i64.const 32 i64.shr_u local.tee $10 i64.const 560513588 i64.mul - local.get $2 + local.get $1 i64.const 3373259426 i64.mul - local.get $2 + local.get $1 i64.const 560513588 i64.mul local.tee $11 i64.const 32 i64.shr_u i64.add - local.tee $2 + local.tee $1 i64.const 4294967295 i64.and i64.add @@ -3640,7 +3642,7 @@ local.get $10 i64.const 3373259426 i64.mul - local.get $2 + local.get $1 i64.const 32 i64.shr_u i64.add @@ -3656,12 +3658,12 @@ i64.const 32 i64.shl i64.add - local.tee $2 + local.tee $1 local.get $9 f64.convert_i64_u f64.const 3.753184150245214e-04 f64.mul - local.get $7 + local.get $2 local.get $8 i64.shl f64.convert_i64_u @@ -3669,7 +3671,7 @@ f64.mul f64.add i64.trunc_f64_u - local.tee $7 + local.tee $2 i64.lt_u i64.extend_i32_u global.get $~lib/math/res128_hi @@ -3679,11 +3681,11 @@ i64.add f64.convert_i64_u global.set $~lib/math/rempio2_y0 - local.get $7 + local.get $2 local.get $9 i64.const 53 i64.shl - local.get $2 + local.get $1 i64.const 11 i64.shr_u i64.or @@ -3699,7 +3701,7 @@ i64.shl i64.sub local.get $0 - local.get $3 + local.get $6 i64.xor i64.const -9223372036854775808 i64.and @@ -3712,10 +3714,10 @@ local.get $5 f64.mul global.set $~lib/math/rempio2_y1 - local.get $1 + local.get $3 i64.const 62 i64.shr_s - local.get $6 + local.get $7 i64.sub i32.wrap_i64 ) @@ -4136,9 +4138,9 @@ (local $1 i32) (local $2 f64) (local $3 f64) - (local $4 f64) - (local $5 i64) - (local $6 i32) + (local $4 i64) + (local $5 i32) + (local $6 f64) (local $7 i32) (local $8 i64) (local $9 i64) @@ -4148,7 +4150,7 @@ local.tee $1 i32.const 31 i32.shr_u - local.set $6 + local.set $5 local.get $1 i32.const 2147483647 i32.and @@ -4190,7 +4192,7 @@ local.get $2 f64.const 3.141592653589793 f64.sub - local.get $6 + local.get $5 select local.tee $2 local.get $2 @@ -4222,7 +4224,7 @@ f32.neg return else - local.get $6 + local.get $5 if (result f64) local.get $0 f64.promote_f32 @@ -4231,7 +4233,7 @@ local.tee $3 local.get $3 f64.mul - local.tee $4 + local.tee $2 local.get $3 f64.mul else @@ -4242,26 +4244,26 @@ local.tee $3 local.get $3 f64.mul - local.tee $4 + local.tee $2 local.get $3 f64.mul end - local.set $2 + local.set $6 local.get $3 + local.get $6 local.get $2 - local.get $4 f64.const 0.008333329385889463 f64.mul f64.const -0.16666666641626524 f64.add f64.mul f64.add + local.get $6 + local.get $2 local.get $2 - local.get $4 - local.get $4 f64.mul f64.mul - local.get $4 + local.get $2 f64.const 2.718311493989822e-06 f64.mul f64.const -1.9839334836096632e-04 @@ -4289,7 +4291,7 @@ local.get $2 f64.const 6.283185307179586 f64.sub - local.get $6 + local.get $5 select local.tee $2 local.get $2 @@ -4300,7 +4302,7 @@ local.set $2 br $folding-inner0 else - local.get $6 + local.get $5 if (result f64) local.get $0 f32.neg @@ -4310,7 +4312,7 @@ local.tee $3 local.get $3 f64.mul - local.tee $4 + local.tee $2 local.get $3 f64.mul else @@ -4321,26 +4323,26 @@ local.tee $3 local.get $3 f64.mul - local.tee $4 + local.tee $2 local.get $3 f64.mul end - local.set $2 + local.set $6 local.get $3 + local.get $6 local.get $2 - local.get $4 f64.const 0.008333329385889463 f64.mul f64.const -0.16666666641626524 f64.add f64.mul f64.add + local.get $6 + local.get $2 local.get $2 - local.get $4 - local.get $4 f64.mul f64.mul - local.get $4 + local.get $2 f64.const 2.718311493989822e-06 f64.mul f64.const -1.9839334836096632e-04 @@ -4421,7 +4423,7 @@ i64.shl local.get $1 i64.load offset=8 - local.tee $5 + local.tee $4 i64.const 64 local.get $8 i64.sub @@ -4432,7 +4434,7 @@ i64.const 32 i64.gt_u if (result i64) - local.get $5 + local.get $4 local.get $8 i64.const 32 i64.sub @@ -4445,7 +4447,7 @@ i64.shr_u i64.or else - local.get $5 + local.get $4 i64.const 32 local.get $8 i64.sub @@ -4456,7 +4458,7 @@ i64.const 32 i64.shr_u i64.add - local.tee $5 + local.tee $4 i64.const 2 i64.shl local.tee $8 @@ -4464,7 +4466,7 @@ f64.mul global.set $~lib/math/rempio2f_y i32.const 0 - local.get $5 + local.get $4 i64.const 62 i64.shr_u local.get $8 @@ -4475,7 +4477,7 @@ local.tee $1 i32.sub local.get $1 - local.get $6 + local.get $5 select end local.set $1 @@ -4828,13 +4830,13 @@ i64.const 52 i64.shl f64.reinterpret_i64 - local.tee $7 + local.tee $0 f64.sub local.get $2 f64.sub f64.const 1 local.get $2 - local.get $7 + local.get $0 f64.add f64.sub local.get $1 @@ -5367,13 +5369,13 @@ i32.const 23 i32.shl f32.reinterpret_i32 - local.tee $6 + local.tee $0 f32.sub local.get $2 f32.sub f32.const 1 local.get $2 - local.get $6 + local.get $0 f32.add f32.sub local.get $1 @@ -5553,7 +5555,6 @@ (local $10 f64) block $~lib/util/math/exp2_lut|inlined.0 (result f64) local.get $0 - local.tee $4 i64.reinterpret_f64 local.tee $5 i64.const 52 @@ -5585,7 +5586,7 @@ i64.eq br_if $~lib/util/math/exp2_lut|inlined.0 drop - local.get $4 + local.get $0 f64.const 1 f64.add local.get $3 @@ -5617,10 +5618,10 @@ select local.set $3 end - local.get $4 + local.get $0 f64.const 52776558133248 f64.add - local.tee $0 + local.tee $4 i64.reinterpret_f64 local.tee $5 i64.const 127 @@ -5639,23 +5640,23 @@ i64.shl i64.add local.set $9 - local.get $4 local.get $0 + local.get $4 f64.const 52776558133248 f64.sub f64.sub - local.tee $0 - local.get $0 + local.tee $4 + local.get $4 f64.mul local.set $6 local.get $7 f64.load - local.get $0 + local.get $4 f64.const 0.6931471805599453 f64.mul f64.add local.get $6 - local.get $0 + local.get $4 f64.const 0.0555041086686087 f64.mul f64.const 0.24022650695909065 @@ -5665,7 +5666,7 @@ local.get $6 local.get $6 f64.mul - local.get $0 + local.get $4 f64.const 1.3332074570119598e-03 f64.mul f64.const 0.009618131975721055 @@ -5686,10 +5687,10 @@ i64.const 4503599627370496 i64.sub f64.reinterpret_i64 - local.tee $0 + local.tee $4 local.get $10 f64.mul - local.get $0 + local.get $4 f64.add f64.const 2 f64.mul @@ -5704,21 +5705,21 @@ f64.mul local.get $6 f64.add - local.tee $0 + local.tee $4 f64.const 1 f64.lt if (result f64) - local.get $0 + local.get $4 f64.const 1 f64.add local.tee $8 f64.const 1 local.get $8 f64.sub - local.get $0 + local.get $4 f64.add local.get $6 - local.get $0 + local.get $4 f64.sub local.get $6 local.get $10 @@ -5729,7 +5730,7 @@ f64.const 1 f64.sub else - local.get $0 + local.get $4 end f64.const 2.2250738585072014e-308 f64.mul @@ -5738,10 +5739,10 @@ end local.get $9 f64.reinterpret_i64 - local.tee $0 + local.tee $4 local.get $10 f64.mul - local.get $0 + local.get $4 f64.add end local.get $1 @@ -5749,7 +5750,7 @@ call $std/math/check if (result i32) f64.const 2 - local.get $4 + local.get $0 call $~lib/bindings/Math/pow local.get $1 local.get $2 @@ -5859,54 +5860,54 @@ (local $2 i64) (local $3 i64) (local $4 i64) - (local $5 f64) + (local $5 i32) (local $6 f64) (local $7 i32) (local $8 f64) - (local $9 i32) + (local $9 f64) (local $10 f64) (local $11 f64) local.get $1 i64.reinterpret_f64 i64.const 9223372036854775807 i64.and - local.tee $2 + local.tee $3 local.get $0 i64.reinterpret_f64 i64.const 9223372036854775807 i64.and - local.tee $3 + local.tee $2 i64.gt_u if - local.get $3 local.get $2 - local.set $3 + local.get $3 local.set $2 + local.set $3 end - local.get $2 + local.get $3 f64.reinterpret_i64 local.set $1 - local.get $2 + local.get $3 i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $7 + local.tee $5 i32.const 2047 i32.eq if local.get $1 return end - local.get $3 + local.get $2 f64.reinterpret_i64 local.set $0 - local.get $2 - i64.eqz local.get $3 + i64.eqz + local.get $2 i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $9 + local.tee $7 i32.const 2047 i32.eq i32.or @@ -5914,8 +5915,8 @@ local.get $0 return end - local.get $9 local.get $7 + local.get $5 i32.sub i32.const 64 i32.gt_s @@ -5926,13 +5927,13 @@ return end f64.const 1 - local.set $8 - local.get $9 + local.set $6 + local.get $7 i32.const 1533 i32.gt_u if (result f64) f64.const 5260135901548373507240989e186 - local.set $8 + local.set $6 local.get $1 f64.const 1.90109156629516e-211 f64.mul @@ -5941,12 +5942,12 @@ f64.const 1.90109156629516e-211 f64.mul else - local.get $7 + local.get $5 i32.const 573 i32.lt_u if (result f64) f64.const 1.90109156629516e-211 - local.set $8 + local.set $6 local.get $1 f64.const 5260135901548373507240989e186 f64.mul @@ -5958,67 +5959,67 @@ local.get $0 end end - local.tee $5 - local.get $5 - local.get $5 + local.tee $10 + local.get $10 + local.get $10 f64.const 134217729 f64.mul local.tee $0 f64.sub local.get $0 f64.add - local.tee $11 + local.tee $9 f64.sub - local.set $6 + local.set $0 local.get $1 local.get $1 local.get $1 f64.const 134217729 f64.mul - local.tee $0 + local.tee $8 f64.sub - local.get $0 + local.get $8 f64.add - local.tee $10 + local.tee $8 f64.sub - local.set $0 + local.set $11 + local.get $6 + local.get $8 local.get $8 - local.get $10 - local.get $10 f64.mul local.get $1 local.get $1 f64.mul local.tee $1 f64.sub - local.get $10 - local.get $10 + local.get $8 + local.get $8 f64.add - local.get $0 + local.get $11 f64.add - local.get $0 + local.get $11 f64.mul f64.add - local.get $11 - local.get $11 + local.get $9 + local.get $9 f64.mul - local.get $5 - local.get $5 + local.get $10 + local.get $10 f64.mul - local.tee $0 + local.tee $6 f64.sub - local.get $11 - local.get $11 + local.get $9 + local.get $9 f64.add - local.get $6 + local.get $0 f64.add - local.get $6 + local.get $0 f64.mul f64.add f64.add local.get $1 f64.add - local.get $0 + local.get $6 f64.add f64.sqrt f64.mul @@ -6034,41 +6035,41 @@ i32.reinterpret_f32 i32.const 2147483647 i32.and - local.tee $4 + local.tee $5 local.get $0 i32.reinterpret_f32 i32.const 2147483647 i32.and - local.tee $5 + local.tee $4 i32.gt_u if - local.get $5 local.get $4 - local.set $5 + local.get $5 local.set $4 + local.set $5 end - local.get $5 - f32.reinterpret_i32 - local.set $0 local.get $4 f32.reinterpret_i32 + local.set $8 + local.get $5 + f32.reinterpret_i32 local.tee $1 - local.get $4 + local.get $5 i32.const 2139095040 i32.eq br_if $__inlined_func$~lib/math/NativeMathf.hypot drop - local.get $0 + local.get $8 local.get $1 f32.add - local.get $4 - i32.eqz local.get $5 + i32.eqz + local.get $4 i32.const 2139095040 i32.ge_u i32.or - local.get $5 local.get $4 + local.get $5 i32.sub i32.const 209715200 i32.ge_u @@ -6076,41 +6077,41 @@ br_if $__inlined_func$~lib/math/NativeMathf.hypot drop f32.const 1 - local.set $8 - local.get $5 + local.set $0 + local.get $4 i32.const 1568669696 i32.ge_u if (result f32) f32.const 1237940039285380274899124e3 - local.set $8 + local.set $0 local.get $1 f32.const 8.077935669463161e-28 f32.mul local.set $1 - local.get $0 + local.get $8 f32.const 8.077935669463161e-28 f32.mul else - local.get $4 + local.get $5 i32.const 562036736 i32.lt_u if (result f32) f32.const 8.077935669463161e-28 - local.set $8 + local.set $0 local.get $1 f32.const 1237940039285380274899124e3 f32.mul local.set $1 - local.get $0 + local.get $8 f32.const 1237940039285380274899124e3 f32.mul else - local.get $0 + local.get $8 end end - local.set $0 - local.get $8 + local.set $8 local.get $0 + local.get $8 f64.promote_f32 local.tee $7 local.get $7 @@ -6890,8 +6891,8 @@ (local $3 i64) (local $4 i64) (local $5 i64) - (local $6 i64) - (local $7 f64) + (local $6 f64) + (local $7 i64) (local $8 i64) (local $9 i64) block $__inlined_func$~lib/math/NativeMath.mod (result f64) @@ -6909,20 +6910,20 @@ drop local.get $1 i64.reinterpret_f64 - local.tee $9 + local.tee $7 i64.const 52 i64.shr_u i64.const 2047 i64.and local.set $5 - local.get $9 + local.get $7 i64.const 1 i64.shl - local.tee $3 + local.tee $8 i64.eqz local.get $0 i64.reinterpret_f64 - local.tee $8 + local.tee $9 i64.const 52 i64.shr_u i64.const 2047 @@ -6939,37 +6940,37 @@ local.get $0 local.get $1 f64.mul - local.tee $7 - local.get $7 + local.tee $6 + local.get $6 f64.div br $__inlined_func$~lib/math/NativeMath.mod end - local.get $3 local.get $8 + local.get $9 i64.const 1 i64.shl - local.tee $6 + local.tee $3 i64.ge_u if local.get $0 local.get $3 - local.get $6 + local.get $8 i64.ne f64.convert_i32_u f64.mul br $__inlined_func$~lib/math/NativeMath.mod end - local.get $8 + local.get $9 i64.const 63 i64.shr_u - local.set $6 + local.set $8 local.get $4 i64.eqz if (result i64) - local.get $8 + local.get $9 i64.const 1 local.get $4 - local.get $8 + local.get $9 i64.const 12 i64.shl i64.clz @@ -6978,7 +6979,7 @@ i64.sub i64.shl else - local.get $8 + local.get $9 i64.const 4503599627370495 i64.and i64.const 4503599627370496 @@ -6988,10 +6989,10 @@ local.get $5 i64.eqz if (result i64) - local.get $9 + local.get $7 i64.const 1 local.get $5 - local.get $9 + local.get $7 i64.const 12 i64.shl i64.clz @@ -7000,13 +7001,13 @@ i64.sub i64.shl else - local.get $9 + local.get $7 i64.const 4503599627370495 i64.and i64.const 4503599627370496 i64.or end - local.set $8 + local.set $7 block $folding-inner0 loop $while-continue|0 local.get $4 @@ -7014,15 +7015,15 @@ i64.gt_s if local.get $3 - local.get $8 + local.get $7 i64.ge_u if (result i64) local.get $3 - local.get $8 + local.get $7 i64.eq br_if $folding-inner0 local.get $3 - local.get $8 + local.get $7 i64.sub else local.get $3 @@ -7039,15 +7040,15 @@ end local.get $4 local.get $3 - local.get $8 + local.get $7 i64.ge_u if local.get $3 - local.get $8 + local.get $7 i64.eq br_if $folding-inner0 local.get $3 - local.get $8 + local.get $7 i64.sub local.set $3 end @@ -7080,7 +7081,7 @@ i64.sub i64.shr_u end - local.get $6 + local.get $8 i64.const 63 i64.shl i64.or @@ -7127,28 +7128,28 @@ end local.get $1 i32.reinterpret_f32 - local.tee $7 + local.tee $4 i32.const 23 i32.shr_u i32.const 255 i32.and - local.set $4 + local.set $6 i32.const 1 local.get $1 local.get $1 f32.ne local.get $0 i32.reinterpret_f32 - local.tee $6 + local.tee $3 i32.const 23 i32.shr_u i32.const 255 i32.and - local.tee $3 + local.tee $7 i32.const 255 i32.eq i32.const 1 - local.get $7 + local.get $4 i32.const 1 i32.shl local.tee $2 @@ -7164,7 +7165,7 @@ return end local.get $2 - local.get $6 + local.get $3 i32.const 1 i32.shl local.tee $5 @@ -7178,68 +7179,68 @@ f32.mul return end - local.get $6 + local.get $3 i32.const -2147483648 i32.and local.set $5 - local.get $3 + local.get $7 if (result i32) - local.get $6 + local.get $3 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $6 + local.get $3 i32.const 1 + local.get $7 local.get $3 - local.get $6 i32.const 9 i32.shl i32.clz i32.sub - local.tee $3 + local.tee $7 i32.sub i32.shl end local.set $2 - local.get $4 + local.get $6 if (result i32) - local.get $7 + local.get $4 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $7 + local.get $4 i32.const 1 + local.get $6 local.get $4 - local.get $7 i32.const 9 i32.shl i32.clz i32.sub - local.tee $4 + local.tee $6 i32.sub i32.shl end - local.set $6 + local.set $3 block $folding-inner0 loop $while-continue|0 - local.get $3 - local.get $4 - i32.gt_s + local.get $6 + local.get $7 + i32.lt_s if local.get $2 - local.get $6 + local.get $3 i32.ge_u if (result i32) local.get $2 - local.get $6 + local.get $3 i32.eq br_if $folding-inner0 local.get $2 - local.get $6 + local.get $3 i32.sub else local.get $2 @@ -7247,24 +7248,24 @@ i32.const 1 i32.shl local.set $2 - local.get $3 + local.get $7 i32.const 1 i32.sub - local.set $3 + local.set $7 br $while-continue|0 end end - local.get $3 + local.get $7 local.get $2 - local.get $6 + local.get $3 i32.ge_u if local.get $2 - local.get $6 + local.get $3 i32.eq br_if $folding-inner0 local.get $2 - local.get $6 + local.get $3 i32.sub local.set $2 end @@ -7272,28 +7273,28 @@ i32.const 8 i32.shl i32.clz - local.tee $3 + local.tee $4 i32.sub - local.set $4 + local.set $3 local.get $2 - local.get $3 + local.get $4 i32.shl local.set $2 - local.get $4 + local.get $3 i32.const 0 i32.gt_s if (result i32) local.get $2 i32.const 8388608 i32.sub - local.get $4 + local.get $3 i32.const 23 i32.shl i32.or else local.get $2 i32.const 1 - local.get $4 + local.get $3 i32.sub i32.shr_u end @@ -7596,7 +7597,7 @@ drop i32.const 2 end - local.tee $6 + local.tee $3 i32.eqz if local.get $0 @@ -7613,7 +7614,7 @@ local.set $5 i32.const 262144 i32.const 0 - local.get $6 + local.get $3 i32.const 1 i32.eq select @@ -10367,13 +10368,13 @@ f64.add ) (func $~lib/math/NativeMath.tan (param $0 f64) (result f64) - (local $1 f64) - (local $2 i32) + (local $1 i32) + (local $2 f64) (local $3 i64) (local $4 i32) - (local $5 f64) + (local $5 i32) (local $6 f64) - (local $7 i32) + (local $7 f64) local.get $0 i64.reinterpret_f64 local.tee $3 @@ -10383,7 +10384,7 @@ local.tee $4 i32.const 31 i32.shr_u - local.set $2 + local.set $1 local.get $4 i32.const 2147483647 i32.and @@ -10420,21 +10421,21 @@ i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $4 + local.tee $5 i32.const 1073928572 i32.lt_u if i32.const 1 - local.set $7 - local.get $2 + local.set $4 + local.get $1 if (result f64) local.get $0 f64.const 1.5707963267341256 f64.add local.set $0 i32.const -1 - local.set $7 - local.get $4 + local.set $4 + local.get $5 i32.const 1073291771 i32.ne if (result f64) @@ -10450,11 +10451,11 @@ local.get $0 f64.const 6.077100506303966e-11 f64.add - local.tee $1 + local.tee $2 f64.const 2.0222662487959506e-21 f64.add local.set $0 - local.get $1 + local.get $2 local.get $0 f64.sub f64.const 2.0222662487959506e-21 @@ -10465,7 +10466,7 @@ f64.const 1.5707963267341256 f64.sub local.set $0 - local.get $4 + local.get $5 i32.const 1073291771 i32.ne if (result f64) @@ -10481,11 +10482,11 @@ local.get $0 f64.const 6.077100506303966e-11 f64.sub - local.tee $1 + local.tee $2 f64.const 2.0222662487959506e-21 f64.sub local.set $0 - local.get $1 + local.get $2 local.get $0 f64.sub f64.const 2.0222662487959506e-21 @@ -10497,30 +10498,30 @@ global.set $~lib/math/rempio2_y1 br $~lib/math/rempio2|inlined.2 end - local.get $4 + local.get $5 i32.const 1094263291 i32.lt_u if - local.get $4 + local.get $5 i32.const 20 i32.shr_u - local.tee $2 + local.tee $1 local.get $0 local.get $0 f64.const 0.6366197723675814 f64.mul f64.nearest - local.tee $5 + local.tee $6 f64.const 1.5707963267341256 f64.mul f64.sub local.tee $0 - local.get $5 + local.get $6 f64.const 6.077100506506192e-11 f64.mul - local.tee $6 + local.tee $7 f64.sub - local.tee $1 + local.tee $2 i64.reinterpret_f64 i64.const 32 i64.shr_u @@ -10533,27 +10534,27 @@ i32.const 16 i32.gt_u if - local.get $5 + local.get $6 f64.const 2.0222662487959506e-21 f64.mul local.get $0 local.get $0 - local.get $5 + local.get $6 f64.const 6.077100506303966e-11 f64.mul - local.tee $1 + local.tee $2 f64.sub local.tee $0 f64.sub - local.get $1 + local.get $2 f64.sub f64.sub - local.set $6 - local.get $2 + local.set $7 + local.get $1 local.get $0 - local.get $6 + local.get $7 f64.sub - local.tee $1 + local.tee $2 i64.reinterpret_f64 i64.const 32 i64.shr_u @@ -10566,41 +10567,41 @@ i32.const 49 i32.gt_u if (result f64) - local.get $5 + local.get $6 f64.const 8.4784276603689e-32 f64.mul local.get $0 local.get $0 - local.get $5 + local.get $6 f64.const 2.0222662487111665e-21 f64.mul - local.tee $1 + local.tee $2 f64.sub local.tee $0 f64.sub - local.get $1 + local.get $2 f64.sub f64.sub - local.set $6 + local.set $7 local.get $0 - local.get $6 + local.get $7 f64.sub else - local.get $1 + local.get $2 end - local.set $1 + local.set $2 end - local.get $1 + local.get $2 global.set $~lib/math/rempio2_y0 local.get $0 - local.get $1 + local.get $2 f64.sub - local.get $6 + local.get $7 f64.sub global.set $~lib/math/rempio2_y1 - local.get $5 + local.get $6 i32.trunc_f64_s - local.set $7 + local.set $4 br $~lib/math/rempio2|inlined.2 end i32.const 0 @@ -10609,14 +10610,14 @@ local.tee $4 i32.sub local.get $4 - local.get $2 + local.get $1 select - local.set $7 + local.set $4 end global.get $~lib/math/rempio2_y0 global.get $~lib/math/rempio2_y1 i32.const 1 - local.get $7 + local.get $4 i32.const 1 i32.and i32.const 1 @@ -11007,38 +11008,38 @@ f32.demote_f64 ) (func $std/math/test_tanh (param $0 f64) (param $1 f64) (param $2 f64) (result i32) - (local $3 f64) - (local $4 i32) - (local $5 i64) + (local $3 i32) + (local $4 i64) + (local $5 f64) local.get $0 i64.reinterpret_f64 i64.const 9223372036854775807 i64.and - local.tee $5 + local.tee $4 f64.reinterpret_i64 - local.set $3 - local.get $5 + local.set $5 + local.get $4 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $4 + local.tee $3 i32.const 1071748074 i32.gt_u if (result f64) - local.get $4 + local.get $3 i32.const 1077149696 i32.gt_u if (result f64) f64.const 1 f64.const 0 - local.get $3 + local.get $5 f64.div f64.sub else f64.const 1 f64.const 2 - local.get $3 - local.get $3 + local.get $5 + local.get $5 f64.add call $~lib/math/NativeMath.expm1 f64.const 2 @@ -11047,36 +11048,36 @@ f64.sub end else - local.get $4 + local.get $3 i32.const 1070618798 i32.gt_u if (result f64) - local.get $3 - local.get $3 + local.get $5 + local.get $5 f64.add call $~lib/math/NativeMath.expm1 - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 f64.const 2 f64.add f64.div else - local.get $4 + local.get $3 i32.const 1048576 i32.ge_u if (result f64) - local.get $3 + local.get $5 f64.const -2 f64.mul call $~lib/math/NativeMath.expm1 - local.tee $3 + local.tee $5 f64.neg - local.get $3 + local.get $5 f64.const 2 f64.add f64.div else - local.get $3 + local.get $5 end end end @@ -11096,33 +11097,33 @@ end ) (func $std/math/test_tanhf (param $0 f32) (param $1 f32) (param $2 f32) (result i32) - (local $3 f32) - (local $4 i32) + (local $3 i32) + (local $4 f32) local.get $0 i32.reinterpret_f32 i32.const 2147483647 i32.and - local.tee $4 + local.tee $3 f32.reinterpret_i32 - local.set $3 - local.get $4 + local.set $4 + local.get $3 i32.const 1057791828 i32.gt_u if (result f32) - local.get $4 + local.get $3 i32.const 1092616192 i32.gt_u if (result f32) f32.const 0 - local.get $3 + local.get $4 f32.div f32.const 1 f32.add else f32.const 1 f32.const 2 - local.get $3 - local.get $3 + local.get $4 + local.get $4 f32.add call $~lib/math/NativeMathf.expm1 f32.const 2 @@ -11131,36 +11132,36 @@ f32.sub end else - local.get $4 + local.get $3 i32.const 1048757624 i32.gt_u if (result f32) - local.get $3 - local.get $3 + local.get $4 + local.get $4 f32.add call $~lib/math/NativeMathf.expm1 - local.tee $3 - local.get $3 + local.tee $4 + local.get $4 f32.const 2 f32.add f32.div else - local.get $4 + local.get $3 i32.const 8388608 i32.ge_u if (result f32) - local.get $3 + local.get $4 f32.const -2 f32.mul call $~lib/math/NativeMathf.expm1 - local.tee $3 + local.tee $4 f32.neg - local.get $3 + local.get $4 f32.const 2 f32.add f32.div else - local.get $3 + local.get $4 end end end @@ -11209,13 +11210,15 @@ return end local.get $0 - local.get $0 - local.get $0 - f64.mul local.tee $1 - local.tee $2 local.get $0 f64.mul + local.tee $0 + local.set $2 + local.get $1 + local.get $2 + local.get $1 + f64.mul local.get $2 local.get $2 local.get $2 @@ -11245,7 +11248,7 @@ f64.add global.set $~lib/math/NativeMath.sincos_sin f64.const 1 - local.get $1 + local.get $0 f64.const 0.5 f64.mul local.tee $2 @@ -11256,10 +11259,10 @@ f64.sub local.get $2 f64.sub - local.get $1 - local.get $1 - local.get $1 - local.get $1 + local.get $0 + local.get $0 + local.get $0 + local.get $0 f64.const 2.480158728947673e-05 f64.mul f64.const -0.001388888888887411 @@ -11268,14 +11271,14 @@ f64.const 0.0416666666666666 f64.add f64.mul - local.get $1 - local.get $1 + local.get $0 + local.get $0 f64.mul local.tee $2 local.get $2 f64.mul - local.get $1 - local.get $1 + local.get $0 + local.get $0 f64.const -1.1359647557788195e-11 f64.mul f64.const 2.087572321298175e-09 @@ -11286,7 +11289,7 @@ f64.mul f64.add f64.mul - local.get $0 + local.get $1 f64.const 0 f64.mul f64.sub diff --git a/tests/compiler/std/mod.optimized.wat b/tests/compiler/std/mod.optimized.wat index 4a8c2c1ff1..3846b15198 100644 --- a/tests/compiler/std/mod.optimized.wat +++ b/tests/compiler/std/mod.optimized.wat @@ -36,20 +36,20 @@ drop local.get $1 i64.reinterpret_f64 - local.tee $8 + local.tee $6 i64.const 52 i64.shr_u i64.const 2047 i64.and local.set $5 - local.get $8 + local.get $6 i64.const 1 i64.shl - local.tee $3 + local.tee $7 i64.eqz local.get $0 i64.reinterpret_f64 - local.tee $7 + local.tee $8 i64.const 52 i64.shr_u i64.const 2047 @@ -71,32 +71,32 @@ f64.div br $__inlined_func$~lib/math/NativeMath.mod end - local.get $3 local.get $7 + local.get $8 i64.const 1 i64.shl - local.tee $6 + local.tee $3 i64.ge_u if local.get $0 local.get $3 - local.get $6 + local.get $7 i64.ne f64.convert_i32_u f64.mul br $__inlined_func$~lib/math/NativeMath.mod end - local.get $7 + local.get $8 i64.const 63 i64.shr_u - local.set $6 + local.set $7 local.get $4 i64.eqz if (result i64) - local.get $7 + local.get $8 i64.const 1 local.get $4 - local.get $7 + local.get $8 i64.const 12 i64.shl i64.clz @@ -105,7 +105,7 @@ i64.sub i64.shl else - local.get $7 + local.get $8 i64.const 4503599627370495 i64.and i64.const 4503599627370496 @@ -115,10 +115,10 @@ local.get $5 i64.eqz if (result i64) - local.get $8 + local.get $6 i64.const 1 local.get $5 - local.get $8 + local.get $6 i64.const 12 i64.shl i64.clz @@ -127,13 +127,13 @@ i64.sub i64.shl else - local.get $8 + local.get $6 i64.const 4503599627370495 i64.and i64.const 4503599627370496 i64.or end - local.set $7 + local.set $6 block $folding-inner0 loop $while-continue|0 local.get $4 @@ -141,15 +141,15 @@ i64.gt_s if local.get $3 - local.get $7 + local.get $6 i64.ge_u if (result i64) local.get $3 - local.get $7 + local.get $6 i64.eq br_if $folding-inner0 local.get $3 - local.get $7 + local.get $6 i64.sub else local.get $3 @@ -166,15 +166,15 @@ end local.get $4 local.get $3 - local.get $7 + local.get $6 i64.ge_u if local.get $3 - local.get $7 + local.get $6 i64.eq br_if $folding-inner0 local.get $3 - local.get $7 + local.get $6 i64.sub local.set $3 end @@ -207,7 +207,7 @@ i64.sub i64.shr_u end - local.get $6 + local.get $7 i64.const 63 i64.shl i64.or @@ -298,7 +298,7 @@ drop local.get $1 i32.reinterpret_f32 - local.tee $8 + local.tee $6 i32.const 23 i32.shr_u i32.const 255 @@ -319,10 +319,10 @@ i32.const 255 i32.eq i32.const 1 - local.get $8 + local.get $6 i32.const 1 i32.shl - local.tee $3 + local.tee $8 select select if @@ -334,16 +334,16 @@ f32.div br $__inlined_func$~lib/math/NativeMathf.mod end - local.get $3 + local.get $8 local.get $7 i32.const 1 i32.shl - local.tee $6 + local.tee $3 i32.ge_u if local.get $0 local.get $3 - local.get $6 + local.get $8 i32.ne f32.convert_i32_u f32.mul @@ -352,7 +352,7 @@ local.get $7 i32.const -2147483648 i32.and - local.set $6 + local.set $8 local.get $4 if (result i32) local.get $7 @@ -376,16 +376,16 @@ local.set $3 local.get $5 if (result i32) - local.get $8 + local.get $6 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $8 + local.get $6 i32.const 1 local.get $5 - local.get $8 + local.get $6 i32.const 9 i32.shl i32.clz @@ -394,7 +394,7 @@ i32.sub i32.shl end - local.set $7 + local.set $6 block $folding-inner0 loop $while-continue|0 local.get $4 @@ -402,15 +402,15 @@ i32.gt_s if local.get $3 - local.get $7 + local.get $6 i32.ge_u if (result i32) local.get $3 - local.get $7 + local.get $6 i32.eq br_if $folding-inner0 local.get $3 - local.get $7 + local.get $6 i32.sub else local.get $3 @@ -427,15 +427,15 @@ end local.get $4 local.get $3 - local.get $7 + local.get $6 i32.ge_u if local.get $3 - local.get $7 + local.get $6 i32.eq br_if $folding-inner0 local.get $3 - local.get $7 + local.get $6 i32.sub local.set $3 end @@ -468,7 +468,7 @@ i32.sub i32.shr_u end - local.get $6 + local.get $8 i32.or f32.reinterpret_i32 br $__inlined_func$~lib/math/NativeMathf.mod diff --git a/tests/compiler/std/new.optimized.wat b/tests/compiler/std/new.optimized.wat index 09773ad6bf..aaa56faf34 100644 --- a/tests/compiler/std/new.optimized.wat +++ b/tests/compiler/std/new.optimized.wat @@ -357,7 +357,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -368,7 +368,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -388,37 +388,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -434,7 +434,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -444,20 +444,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -485,7 +485,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/std/object.optimized.wat b/tests/compiler/std/object.optimized.wat index 653ebbcdb2..179a69a586 100644 --- a/tests/compiler/std/object.optimized.wat +++ b/tests/compiler/std/object.optimized.wat @@ -43,7 +43,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -57,7 +57,7 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) local.get $0 - local.tee $3 + local.tee $2 i32.const 7 i32.and local.get $1 @@ -65,7 +65,7 @@ i32.and i32.or i32.const 1 - local.get $2 + local.get $3 local.tee $0 i32.const 4 i32.ge_u @@ -73,16 +73,16 @@ i32.eqz if loop $do-loop|0 - local.get $3 + local.get $2 i64.load local.get $1 i64.load i64.eq if - local.get $3 + local.get $2 i32.const 8 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 8 i32.add @@ -99,29 +99,29 @@ end loop $while-continue|1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.sub local.set $0 - local.get $2 + local.get $3 if - local.get $3 + local.get $2 i32.load16_u local.tee $4 local.get $1 i32.load16_u - local.tee $2 + local.tee $3 i32.ne if local.get $4 - local.get $2 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add diff --git a/tests/compiler/std/operator-overloading.optimized.wat b/tests/compiler/std/operator-overloading.optimized.wat index f68949bd9f..6c622c3e0d 100644 --- a/tests/compiler/std/operator-overloading.optimized.wat +++ b/tests/compiler/std/operator-overloading.optimized.wat @@ -413,7 +413,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -424,7 +424,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -444,37 +444,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -490,7 +490,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -500,20 +500,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -541,7 +541,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/std/pointer.optimized.wat b/tests/compiler/std/pointer.optimized.wat index cd6f83f484..19a9eeae86 100644 --- a/tests/compiler/std/pointer.optimized.wat +++ b/tests/compiler/std/pointer.optimized.wat @@ -20,13 +20,13 @@ (local $4 i32) (local $5 i32) i32.const 8 - local.set $5 + local.set $4 loop $while-continue|0 local.get $1 i32.const 3 i32.and i32.const 0 - local.get $5 + local.get $4 select if local.get $0 @@ -43,10 +43,10 @@ local.get $3 i32.load8_u i32.store8 - local.get $5 + local.get $4 i32.const 1 i32.sub - local.set $5 + local.set $4 br $while-continue|0 end end @@ -56,7 +56,7 @@ i32.eqz if loop $while-continue|1 - local.get $5 + local.get $4 i32.const 16 i32.ge_u if @@ -84,14 +84,14 @@ i32.const 16 i32.add local.set $0 - local.get $5 + local.get $4 i32.const 16 i32.sub - local.set $5 + local.set $4 br $while-continue|1 end end - local.get $5 + local.get $4 i32.const 8 i32.and if @@ -112,7 +112,7 @@ i32.add local.set $0 end - local.get $5 + local.get $4 i32.const 4 i32.and if @@ -129,7 +129,7 @@ i32.add local.set $0 end - local.get $5 + local.get $4 i32.const 2 i32.and if @@ -146,7 +146,7 @@ i32.add local.set $0 end - local.get $5 + local.get $4 i32.const 1 i32.and if @@ -157,7 +157,7 @@ end return end - local.get $5 + local.get $4 i32.const 32 i32.ge_u if @@ -174,7 +174,7 @@ end local.get $1 i32.load - local.set $4 + local.set $5 local.get $0 local.get $1 i32.load8_u @@ -201,12 +201,12 @@ local.get $3 i32.load8_u i32.store8 - local.get $5 + local.get $4 i32.const 3 i32.sub - local.set $5 + local.set $4 loop $while-continue|3 - local.get $5 + local.get $4 i32.const 17 i32.ge_u if @@ -216,7 +216,7 @@ local.tee $2 i32.const 8 i32.shl - local.get $4 + local.get $5 i32.const 24 i32.shr_u i32.or @@ -246,7 +246,7 @@ local.get $0 local.get $1 i32.load offset=13 - local.tee $4 + local.tee $5 i32.const 8 i32.shl local.get $2 @@ -262,10 +262,10 @@ i32.const 16 i32.add local.set $0 - local.get $5 + local.get $4 i32.const 16 i32.sub - local.set $5 + local.set $4 br $while-continue|3 end end @@ -273,31 +273,31 @@ end local.get $1 i32.load - local.set $4 + local.set $5 local.get $0 local.get $1 i32.load8_u i32.store8 local.get $0 - local.tee $3 + local.tee $2 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $2 + local.tee $3 i32.const 2 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $5 + local.get $4 i32.const 2 i32.sub - local.set $5 + local.set $4 loop $while-continue|4 - local.get $5 + local.get $4 i32.const 18 i32.ge_u if @@ -307,7 +307,7 @@ local.tee $2 i32.const 16 i32.shl - local.get $4 + local.get $5 i32.const 16 i32.shr_u i32.or @@ -337,7 +337,7 @@ local.get $0 local.get $1 i32.load offset=14 - local.tee $4 + local.tee $5 i32.const 16 i32.shl local.get $2 @@ -353,10 +353,10 @@ i32.const 16 i32.add local.set $0 - local.get $5 + local.get $4 i32.const 16 i32.sub - local.set $5 + local.set $4 br $while-continue|4 end end @@ -364,7 +364,7 @@ end local.get $1 i32.load - local.set $4 + local.set $5 local.get $0 local.tee $2 i32.const 1 @@ -379,12 +379,12 @@ local.get $3 i32.load8_u i32.store8 - local.get $5 + local.get $4 i32.const 1 i32.sub - local.set $5 + local.set $4 loop $while-continue|5 - local.get $5 + local.get $4 i32.const 19 i32.ge_u if @@ -394,7 +394,7 @@ local.tee $2 i32.const 24 i32.shl - local.get $4 + local.get $5 i32.const 8 i32.shr_u i32.or @@ -424,7 +424,7 @@ local.get $0 local.get $1 i32.load offset=15 - local.tee $4 + local.tee $5 i32.const 24 i32.shl local.get $2 @@ -440,16 +440,16 @@ i32.const 16 i32.add local.set $0 - local.get $5 + local.get $4 i32.const 16 i32.sub - local.set $5 + local.set $4 br $while-continue|5 end end end end - local.get $5 + local.get $4 i32.const 16 i32.and if @@ -458,49 +458,47 @@ i32.load8_u i32.store8 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 i32.const 2 i32.add - local.tee $2 + local.set $2 local.get $1 i32.const 2 i32.add - local.tee $3 + local.set $3 + local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $2 + local.get $3 i32.load8_u i32.store8 local.get $2 - local.tee $1 i32.const 2 i32.add - local.set $2 + local.set $0 local.get $3 - local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $2 local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $2 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $2 - local.get $3 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $3 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -508,35 +506,31 @@ i32.load8_u i32.store8 local.get $2 - local.tee $1 i32.const 2 i32.add - local.set $2 + local.set $0 local.get $3 - local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $2 local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $2 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $2 - local.get $3 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $3 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -544,57 +538,51 @@ i32.load8_u i32.store8 local.get $2 - local.tee $1 i32.const 2 i32.add - local.set $2 + local.set $0 local.get $3 - local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $2 local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $2 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $2 - local.get $3 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 - local.get $4 + local.get $3 i32.load8_u i32.store8 local.get $2 - local.tee $3 i32.const 2 i32.add local.set $0 - local.get $4 - local.tee $2 + local.get $3 i32.const 2 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $5 + local.get $4 i32.const 8 i32.and if @@ -603,71 +591,67 @@ i32.load8_u i32.store8 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 i32.const 2 i32.add - local.tee $2 + local.set $2 local.get $1 i32.const 2 i32.add - local.tee $3 + local.set $3 + local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $2 + local.get $3 i32.load8_u i32.store8 local.get $2 - local.tee $1 i32.const 2 i32.add - local.set $2 + local.set $0 local.get $3 - local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $2 local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $2 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $2 - local.get $3 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 - local.get $4 + local.get $3 i32.load8_u i32.store8 local.get $2 - local.tee $3 i32.const 2 i32.add local.set $0 - local.get $4 - local.tee $2 + local.get $3 i32.const 2 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $5 + local.get $4 i32.const 4 i32.and if @@ -676,33 +660,35 @@ i32.load8_u i32.store8 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 i32.const 2 i32.add - local.tee $3 + local.set $2 local.get $1 i32.const 2 i32.add - local.tee $2 + local.set $3 + local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $2 + local.get $3 i32.load8_u i32.store8 local.get $2 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 + i32.const 2 + i32.add + local.set $1 local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.set $0 end - local.get $5 + local.get $4 i32.const 2 i32.and if @@ -711,21 +697,21 @@ i32.load8_u i32.store8 local.get $0 - local.tee $3 + local.tee $2 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $2 + local.tee $3 i32.const 2 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $5 + local.get $4 i32.const 1 i32.and if @@ -949,17 +935,17 @@ i32.sub local.set $4 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 br $while-continue|0 @@ -994,17 +980,17 @@ local.get $4 if local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 local.get $4 diff --git a/tests/compiler/std/set.optimized.wat b/tests/compiler/std/set.optimized.wat index 1030fe654a..0b186d7271 100644 --- a/tests/compiler/std/set.optimized.wat +++ b/tests/compiler/std/set.optimized.wat @@ -501,7 +501,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -512,7 +512,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -532,37 +532,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -578,7 +578,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -588,20 +588,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -629,7 +629,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -2278,17 +2278,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -2467,39 +2467,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2507,35 +2502,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2543,55 +2534,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -2612,59 +2597,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -2681,7 +2659,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -2692,11 +2670,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -2710,17 +2688,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -3820,7 +3798,7 @@ i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $1 + local.tee $0 i32.store offset=8 loop $for-loop|4 local.get $10 @@ -3831,7 +3809,7 @@ local.get $10 local.get $3 call $~lib/array/Array#__get - local.tee $4 + local.tee $1 i32.extend8_s i32.const -1028477379 i32.mul @@ -3877,7 +3855,7 @@ if local.get $2 i32.load offset=4 - local.tee $0 + local.tee $4 i32.const 1 i32.and if (result i32) @@ -3885,13 +3863,13 @@ else local.get $2 i32.load8_u - local.get $4 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $0 + local.get $4 i32.const -2 i32.and local.set $2 @@ -3911,7 +3889,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 local.get $10 local.get $3 call $~lib/array/Array#__get @@ -3923,7 +3901,7 @@ br $for-loop|4 end end - local.get $1 + local.get $0 i32.load offset=20 local.get $7 i32.load offset=20 @@ -3958,24 +3936,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -3989,7 +3967,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -4003,7 +3981,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find13 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -4040,24 +4018,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -4071,7 +4049,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -4085,7 +4063,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find16 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -4145,24 +4123,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -4176,7 +4154,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -4190,7 +4168,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find19 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -4226,24 +4204,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -4257,7 +4235,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -4271,7 +4249,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find22 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -4308,24 +4286,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -4339,7 +4317,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -4353,7 +4331,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find25 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -5435,7 +5413,7 @@ i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $1 + local.tee $0 i32.store offset=8 loop $for-loop|4 local.get $10 @@ -5446,7 +5424,7 @@ local.get $10 local.get $3 call $~lib/array/Array#__get - local.tee $4 + local.tee $1 i32.const 255 i32.and i32.const -1028477379 @@ -5493,7 +5471,7 @@ if local.get $2 i32.load offset=4 - local.tee $0 + local.tee $4 i32.const 1 i32.and if (result i32) @@ -5501,13 +5479,13 @@ else local.get $2 i32.load8_u - local.get $4 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $0 + local.get $4 i32.const -2 i32.and local.set $2 @@ -5527,7 +5505,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 local.get $10 local.get $3 call $~lib/array/Array#__get @@ -5539,7 +5517,7 @@ br $for-loop|4 end end - local.get $1 + local.get $0 i32.load offset=20 local.get $7 i32.load offset=20 @@ -5576,24 +5554,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -5607,7 +5585,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -5621,7 +5599,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find13 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -5659,24 +5637,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -5690,7 +5668,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -5704,7 +5682,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find16 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -5766,24 +5744,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -5797,7 +5775,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -5811,7 +5789,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find19 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -5848,24 +5826,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -5879,7 +5857,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -5893,7 +5871,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find22 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -5931,24 +5909,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -5962,7 +5940,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -5976,7 +5954,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find25 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -7094,7 +7072,7 @@ i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $1 + local.tee $0 i32.store offset=8 loop $for-loop|4 local.get $10 @@ -7105,7 +7083,7 @@ local.get $10 local.get $3 call $~lib/array/Array#__get - local.tee $4 + local.tee $1 i32.extend16_s i32.const -1028477379 i32.mul @@ -7151,7 +7129,7 @@ if local.get $2 i32.load offset=4 - local.tee $0 + local.tee $4 i32.const 1 i32.and if (result i32) @@ -7159,13 +7137,13 @@ else local.get $2 i32.load16_u - local.get $4 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $0 + local.get $4 i32.const -2 i32.and local.set $2 @@ -7185,7 +7163,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 local.get $10 local.get $3 call $~lib/array/Array#__get @@ -7197,7 +7175,7 @@ br $for-loop|4 end end - local.get $1 + local.get $0 i32.load offset=20 local.get $7 i32.load offset=20 @@ -7232,24 +7210,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -7263,7 +7241,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -7277,7 +7255,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find13 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -7314,24 +7292,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -7345,7 +7323,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -7359,7 +7337,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find16 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -7419,24 +7397,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -7450,7 +7428,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -7464,7 +7442,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find19 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -7500,24 +7478,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -7531,7 +7509,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -7545,7 +7523,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find22 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -7582,24 +7560,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -7613,7 +7591,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -7627,7 +7605,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find25 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -8713,7 +8691,7 @@ i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $1 + local.tee $0 i32.store offset=8 loop $for-loop|4 local.get $10 @@ -8724,7 +8702,7 @@ local.get $10 local.get $3 call $~lib/array/Array#__get - local.tee $4 + local.tee $1 i32.const 65535 i32.and i32.const -1028477379 @@ -8771,7 +8749,7 @@ if local.get $2 i32.load offset=4 - local.tee $0 + local.tee $4 i32.const 1 i32.and if (result i32) @@ -8779,13 +8757,13 @@ else local.get $2 i32.load16_u - local.get $4 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $0 + local.get $4 i32.const -2 i32.and local.set $2 @@ -8805,7 +8783,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 local.get $10 local.get $3 call $~lib/array/Array#__get @@ -8817,7 +8795,7 @@ br $for-loop|4 end end - local.get $1 + local.get $0 i32.load offset=20 local.get $7 i32.load offset=20 @@ -8854,24 +8832,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -8885,7 +8863,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -8899,7 +8877,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find13 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -8937,24 +8915,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -8968,7 +8946,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -8982,7 +8960,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find16 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -9044,24 +9022,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -9075,7 +9053,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -9089,7 +9067,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find19 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -9126,24 +9104,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -9157,7 +9135,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -9171,7 +9149,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find22 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -9209,24 +9187,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -9240,7 +9218,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -9254,7 +9232,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find25 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -10351,7 +10329,7 @@ i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $1 + local.tee $0 i32.store offset=8 loop $for-loop|2 local.get $10 @@ -10362,7 +10340,7 @@ local.get $10 local.get $3 call $~lib/array/Array#__get - local.tee $4 + local.tee $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10407,19 +10385,19 @@ if local.get $2 i32.load offset=4 - local.tee $0 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $1 local.get $2 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $0 + local.get $4 i32.const -2 i32.and local.set $2 @@ -10439,7 +10417,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 local.get $10 local.get $3 call $~lib/array/Array#__get @@ -10451,7 +10429,7 @@ br $for-loop|2 end end - local.get $1 + local.get $0 i32.load offset=20 local.get $7 i32.load offset=20 @@ -10484,24 +10462,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -10515,7 +10493,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -10527,7 +10505,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find13 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -10563,24 +10541,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -10594,7 +10572,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -10606,7 +10584,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find16 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -10664,24 +10642,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -10695,7 +10673,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -10707,7 +10685,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find19 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -10742,24 +10720,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -10773,7 +10751,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -10785,7 +10763,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find22 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -10821,24 +10799,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -10852,7 +10830,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -10864,7 +10842,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find25 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -11922,7 +11900,7 @@ i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $1 + local.tee $0 i32.store offset=8 loop $for-loop|2 local.get $10 @@ -11933,7 +11911,7 @@ local.get $10 local.get $3 call $~lib/array/Array#__get - local.tee $4 + local.tee $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -11978,19 +11956,19 @@ if local.get $2 i32.load offset=4 - local.tee $0 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $1 local.get $2 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $0 + local.get $4 i32.const -2 i32.and local.set $2 @@ -12010,7 +11988,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 local.get $10 local.get $3 call $~lib/array/Array#__get @@ -12022,7 +12000,7 @@ br $for-loop|2 end end - local.get $1 + local.get $0 i32.load offset=20 local.get $7 i32.load offset=20 @@ -12055,24 +12033,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -12086,7 +12064,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -12098,7 +12076,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find13 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -12134,24 +12112,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -12165,7 +12143,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -12177,7 +12155,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find16 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -12235,24 +12213,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -12266,7 +12244,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -12278,7 +12256,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find19 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -12313,24 +12291,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -12344,7 +12322,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -12356,7 +12334,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find22 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -12392,24 +12370,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 @@ -12423,7 +12401,7 @@ if local.get $1 i32.load offset=4 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -12435,7 +12413,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find25 - local.get $2 + local.get $0 i32.const -2 i32.and local.set $1 @@ -12618,7 +12596,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -12626,7 +12604,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $5 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -12634,13 +12612,13 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $8 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $8 + local.set $4 local.get $3 local.set $2 loop $while-continue|0 @@ -12648,14 +12626,14 @@ local.get $8 i32.ne if - local.get $4 + local.get $8 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $4 + local.get $8 i64.load local.tee $6 i64.store @@ -12704,7 +12682,7 @@ i32.and i32.const 2 i32.shl - local.get $5 + local.get $7 i32.add local.tee $9 i32.load @@ -12717,20 +12695,20 @@ i32.add local.set $2 end - local.get $4 + local.get $8 i32.const 16 i32.add - local.set $4 + local.set $8 br $while-continue|0 end end local.get $0 - local.get $5 + local.get $7 i32.store - local.get $5 + local.get $7 if local.get $0 - local.get $5 + local.get $7 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -12746,7 +12724,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $5 i32.store offset=12 local.get $0 local.get $0 @@ -13434,7 +13412,7 @@ i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $3 + local.tee $0 i32.store offset=8 loop $for-loop|2 local.get $12 @@ -13456,7 +13434,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 local.get $12 local.get $5 call $~lib/array/Array#__get @@ -13468,7 +13446,7 @@ br $for-loop|2 end end - local.get $3 + local.get $0 i32.load offset=20 local.get $2 i32.load offset=20 @@ -13744,7 +13722,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -13752,7 +13730,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $5 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -13760,13 +13738,13 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $8 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $8 + local.set $4 local.get $3 local.set $2 loop $while-continue|0 @@ -13774,14 +13752,14 @@ local.get $8 i32.ne if - local.get $4 + local.get $8 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $4 + local.get $8 i64.load local.tee $6 i64.store @@ -13830,7 +13808,7 @@ i32.and i32.const 2 i32.shl - local.get $5 + local.get $7 i32.add local.tee $9 i32.load @@ -13843,20 +13821,20 @@ i32.add local.set $2 end - local.get $4 + local.get $8 i32.const 16 i32.add - local.set $4 + local.set $8 br $while-continue|0 end end local.get $0 - local.get $5 + local.get $7 i32.store - local.get $5 + local.get $7 if local.get $0 - local.get $5 + local.get $7 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -13872,7 +13850,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $5 i32.store offset=12 local.get $0 local.get $0 @@ -14484,7 +14462,7 @@ i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $3 + local.tee $0 i32.store offset=8 loop $for-loop|2 local.get $12 @@ -14506,7 +14484,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 local.get $12 local.get $5 call $~lib/array/Array#__get @@ -14518,7 +14496,7 @@ br $for-loop|2 end end - local.get $3 + local.get $0 i32.load offset=20 local.get $2 i32.load offset=20 @@ -14677,11 +14655,11 @@ (func $~lib/set/Set#rehash (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) + (local $4 f32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 f32) + (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -14710,7 +14688,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -14726,33 +14704,33 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $8 local.get $0 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $7 + local.set $5 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $5 + local.get $8 i32.ne if - local.get $4 + local.get $8 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $4 + local.get $8 f32.load - local.tee $8 + local.tee $4 f32.store local.get $2 - local.get $8 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -14785,7 +14763,7 @@ i32.and i32.const 2 i32.shl - local.get $5 + local.get $7 i32.add local.tee $9 i32.load @@ -14798,20 +14776,20 @@ i32.add local.set $2 end - local.get $4 + local.get $8 i32.const 8 i32.add - local.set $4 + local.set $8 br $while-continue|0 end end local.get $0 - local.get $5 + local.get $7 i32.store - local.get $5 + local.get $7 if local.get $0 - local.get $5 + local.get $7 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -15130,7 +15108,7 @@ (func $std/set/testNumeric (local $0 i32) (local $1 i32) - (local $2 i32) + (local $2 f32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -15140,7 +15118,7 @@ (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 f32) + (local $12 i32) global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -15159,18 +15137,18 @@ i32.store offset=8 local.get $0 call $~lib/set/Set#constructor - local.tee $11 + local.tee $5 i32.store loop $for-loop|0 - local.get $12 + local.get $2 f32.const 100 f32.lt if - local.get $11 + local.get $5 i32.load - local.get $11 + local.get $5 i32.load offset=4 - local.get $12 + local.get $2 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15204,36 +15182,36 @@ i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=4 - local.tee $8 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $12 - local.get $0 + local.get $2 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $8 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|0 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 if i32.const 0 i32.const 1568 @@ -15242,14 +15220,14 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $12 + local.get $5 + local.get $2 call $~lib/set/Set#add - local.get $11 + local.get $5 i32.load - local.get $11 + local.get $5 i32.load offset=4 - local.get $12 + local.get $2 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15283,36 +15261,36 @@ i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=4 - local.tee $8 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $12 - local.get $0 + local.get $2 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find1 - local.get $8 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|02 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 i32.eqz if i32.const 0 @@ -15322,14 +15300,14 @@ call $~lib/builtins/abort unreachable end - local.get $12 + local.get $2 f32.const 1 f32.add - local.set $12 + local.set $2 br $for-loop|0 end end - local.get $11 + local.get $5 i32.load offset=20 i32.const 100 i32.ne @@ -15342,17 +15320,17 @@ unreachable end f32.const 50 - local.set $12 + local.set $2 loop $for-loop|1 - local.get $12 + local.get $2 f32.const 100 f32.lt if - local.get $11 + local.get $5 i32.load - local.get $11 + local.get $5 i32.load offset=4 - local.get $12 + local.get $2 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15386,36 +15364,36 @@ i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=4 - local.tee $8 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $12 - local.get $0 + local.get $2 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find4 - local.get $8 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|05 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 i32.eqz if i32.const 0 @@ -15425,14 +15403,14 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $12 + local.get $5 + local.get $2 call $~lib/set/Set#add - local.get $11 + local.get $5 i32.load - local.get $11 + local.get $5 i32.load offset=4 - local.get $12 + local.get $2 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15466,36 +15444,36 @@ i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=4 - local.tee $8 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $12 - local.get $0 + local.get $2 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find7 - local.get $8 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|08 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 i32.eqz if i32.const 0 @@ -15505,14 +15483,14 @@ call $~lib/builtins/abort unreachable end - local.get $12 + local.get $2 f32.const 1 f32.add - local.set $12 + local.set $2 br $for-loop|1 end end - local.get $11 + local.get $5 i32.load offset=20 i32.const 100 i32.ne @@ -15535,17 +15513,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $8 i32.const 0 i32.store - local.get $11 + local.get $5 i32.load offset=8 - local.set $6 - local.get $11 + local.set $11 + local.get $5 i32.load offset=16 - local.tee $5 - local.set $4 - local.get $0 + local.tee $12 + local.set $3 + local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -15554,28 +15532,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $0 i64.const 0 i64.store - local.get $8 + local.get $0 i32.const 16 i32.const 20 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $4 i32.store - local.get $3 + local.get $4 i32.const 0 i32.store - local.get $3 + local.get $4 i32.const 0 i32.store offset=4 - local.get $3 + local.get $4 i32.const 0 i32.store offset=8 - local.get $3 + local.get $4 i32.const 0 i32.store offset=12 - local.get $4 + local.get $3 i32.const 268435455 i32.gt_u if @@ -15587,58 +15565,58 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 8 - local.get $4 + local.get $3 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $8 + local.tee $9 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 i32.store offset=4 - local.get $2 - local.get $8 + local.get $0 + local.get $9 call $~lib/memory/memory.fill - local.get $3 - local.get $2 + local.get $4 + local.get $0 i32.store - local.get $2 + local.get $0 if - local.get $3 - local.get $2 + local.get $4 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $2 + local.get $4 + local.get $0 i32.store offset=4 - local.get $3 - local.get $8 + local.get $4 + local.get $9 i32.store offset=8 - local.get $3 local.get $4 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 - local.get $3 + local.get $8 + local.get $4 i32.store loop $for-loop|01 - local.get $5 - local.get $10 - i32.gt_s + local.get $6 + local.get $12 + i32.lt_s if - local.get $10 + local.get $6 i32.const 3 i32.shl - local.get $6 + local.get $11 i32.add - local.tee $8 + local.tee $3 i32.load offset=4 i32.const 1 i32.and @@ -15649,11 +15627,11 @@ i32.const 1 i32.add local.set $1 - local.get $8 - f32.load - local.set $12 local.get $3 - i32.load offset=12 + f32.load + local.set $2 + local.get $4 + i32.load offset=12 local.get $0 i32.le_u if @@ -15668,62 +15646,62 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $0 i32.const 1 i32.add - local.tee $8 + local.tee $3 i32.const 2 i32.const 1 call $~lib/array/ensureCapacity + local.get $4 local.get $3 - local.get $8 i32.store offset=12 end - local.get $3 + local.get $4 i32.load offset=4 local.get $0 i32.const 2 i32.shl i32.add - local.get $12 + local.get $2 f32.store end - local.get $10 + local.get $6 i32.const 1 i32.add - local.set $10 + local.set $6 br $for-loop|01 end end - local.get $3 + local.get $4 local.get $1 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 + local.get $4 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $1 i32.store offset=8 loop $for-loop|2 - local.get $3 + local.get $4 i32.load offset=12 - local.get $9 + local.get $7 i32.gt_s if - local.get $3 - local.get $9 + local.get $4 + local.get $7 call $~lib/array/Array#__get - local.tee $12 + local.tee $2 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15748,9 +15726,9 @@ i32.const -1028477379 i32.mul local.set $0 - local.get $11 + local.get $5 i32.load - local.get $11 + local.get $5 i32.load offset=4 local.get $0 i32.const 16 @@ -15762,36 +15740,36 @@ i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=4 - local.tee $10 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $12 - local.get $0 + local.get $2 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $10 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|011 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 i32.eqz if i32.const 0 @@ -15802,20 +15780,20 @@ unreachable end local.get $1 - local.get $3 - local.get $9 + local.get $4 + local.get $7 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $9 + local.get $7 i32.const 1 i32.add - local.set $9 + local.set $7 br $for-loop|2 end end local.get $1 i32.load offset=20 - local.get $11 + local.get $5 i32.load offset=20 i32.ne if @@ -15827,17 +15805,17 @@ unreachable end f32.const 0 - local.set $12 + local.set $2 loop $for-loop|3 - local.get $12 + local.get $2 f32.const 50 f32.lt if - local.get $11 + local.get $5 i32.load - local.get $11 + local.get $5 i32.load offset=4 - local.get $12 + local.get $2 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15847,60 +15825,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/set/Set#find13 loop $while-continue|014 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=4 - local.tee $1 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $12 - local.get $0 + local.get $2 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find13 - local.get $1 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|014 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 i32.eqz if i32.const 0 @@ -15910,14 +15888,14 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $12 + local.get $5 + local.get $2 call $~lib/set/Set#delete - local.get $11 + local.get $5 i32.load - local.get $11 + local.get $5 i32.load offset=4 - local.get $12 + local.get $2 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15927,60 +15905,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/set/Set#find16 loop $while-continue|017 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=4 - local.tee $1 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $12 - local.get $0 + local.get $2 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find16 - local.get $1 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|017 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 if i32.const 0 i32.const 1568 @@ -15989,14 +15967,14 @@ call $~lib/builtins/abort unreachable end - local.get $12 + local.get $2 f32.const 1 f32.add - local.set $12 + local.set $2 br $for-loop|3 end end - local.get $11 + local.get $5 i32.load offset=20 i32.const 50 i32.ne @@ -16009,17 +15987,17 @@ unreachable end f32.const 0 - local.set $12 + local.set $2 loop $for-loop|4 - local.get $12 + local.get $2 f32.const 50 f32.lt if - local.get $11 + local.get $5 i32.load - local.get $11 + local.get $5 i32.load offset=4 - local.get $12 + local.get $2 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -16029,60 +16007,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/set/Set#find19 loop $while-continue|020 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=4 - local.tee $1 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $12 - local.get $0 + local.get $2 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find19 - local.get $1 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|020 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 if i32.const 0 i32.const 1568 @@ -16091,14 +16069,14 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $12 + local.get $5 + local.get $2 call $~lib/set/Set#add - local.get $11 + local.get $5 i32.load - local.get $11 + local.get $5 i32.load offset=4 - local.get $12 + local.get $2 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -16108,60 +16086,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/set/Set#find22 loop $while-continue|023 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=4 - local.tee $1 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $12 - local.get $0 + local.get $2 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find22 - local.get $1 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|023 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 i32.eqz if i32.const 0 @@ -16171,14 +16149,14 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $12 + local.get $5 + local.get $2 call $~lib/set/Set#delete - local.get $11 + local.get $5 i32.load - local.get $11 + local.get $5 i32.load offset=4 - local.get $12 + local.get $2 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -16188,60 +16166,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $0 i32.const 15 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $0 i32.const 13 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $0 i32.const 16 i32.shr_u - local.get $1 + local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/set/Set#find25 loop $while-continue|026 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=4 - local.tee $1 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $12 - local.get $0 + local.get $2 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find25 - local.get $1 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|026 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 if i32.const 0 i32.const 1568 @@ -16250,14 +16228,14 @@ call $~lib/builtins/abort unreachable end - local.get $12 + local.get $2 f32.const 1 f32.add - local.set $12 + local.set $2 br $for-loop|4 end end - local.get $11 + local.get $5 i32.load offset=20 i32.const 50 i32.ne @@ -16269,9 +16247,9 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $5 call $~lib/set/Set#clear - local.get $11 + local.get $5 i32.load offset=20 if i32.const 0 @@ -16384,12 +16362,12 @@ (func $~lib/set/Set#rehash (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) + (local $4 i64) + (local $5 f64) (local $6 i32) (local $7 i32) - (local $8 f64) - (local $9 i64) + (local $8 i32) + (local $9 i32) (local $10 i32) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -16418,7 +16396,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $8 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -16426,7 +16404,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $7 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -16434,36 +16412,36 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $9 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $7 + local.set $6 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $6 + local.get $9 i32.ne if - local.get $4 + local.get $9 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $4 + local.get $9 f64.load - local.tee $8 + local.tee $5 f64.store local.get $2 local.get $1 - local.get $8 + local.get $5 i64.reinterpret_f64 - local.tee $9 + local.tee $4 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -16473,7 +16451,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $9 + local.get $4 i64.const 32 i64.shr_u i32.wrap_i64 @@ -16506,7 +16484,7 @@ i32.and i32.const 2 i32.shl - local.get $5 + local.get $8 i32.add local.tee $10 i32.load @@ -16519,20 +16497,20 @@ i32.add local.set $2 end - local.get $4 + local.get $9 i32.const 16 i32.add - local.set $4 + local.set $9 br $while-continue|0 end end local.get $0 - local.get $5 + local.get $8 i32.store - local.get $5 + local.get $8 if local.get $0 - local.get $5 + local.get $8 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -16548,7 +16526,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -16879,7 +16857,7 @@ (func $std/set/testNumeric (local $0 i32) (local $1 i32) - (local $2 i32) + (local $2 f64) (local $3 i32) (local $4 i32) (local $5 i32) @@ -16889,7 +16867,7 @@ (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 f64) + (local $12 i32) global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -16900,23 +16878,23 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 call $~lib/set/Set#constructor - local.tee $11 + local.tee $3 i32.store loop $for-loop|0 - local.get $12 + local.get $2 f64.const 100 f64.lt if - local.get $11 - local.get $12 + local.get $3 + local.get $2 call $~lib/set/Set#has if i32.const 0 @@ -16926,11 +16904,11 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $12 + local.get $3 + local.get $2 call $~lib/set/Set#add - local.get $11 - local.get $12 + local.get $3 + local.get $2 call $~lib/set/Set#has i32.eqz if @@ -16941,14 +16919,14 @@ call $~lib/builtins/abort unreachable end - local.get $12 + local.get $2 f64.const 1 f64.add - local.set $12 + local.set $2 br $for-loop|0 end end - local.get $11 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -16961,14 +16939,14 @@ unreachable end f64.const 50 - local.set $12 + local.set $2 loop $for-loop|1 - local.get $12 + local.get $2 f64.const 100 f64.lt if - local.get $11 - local.get $12 + local.get $3 + local.get $2 call $~lib/set/Set#has i32.eqz if @@ -16979,11 +16957,11 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $12 + local.get $3 + local.get $2 call $~lib/set/Set#add - local.get $11 - local.get $12 + local.get $3 + local.get $2 call $~lib/set/Set#has i32.eqz if @@ -16994,14 +16972,14 @@ call $~lib/builtins/abort unreachable end - local.get $12 + local.get $2 f64.const 1 f64.add - local.set $12 + local.set $2 br $for-loop|1 end end - local.get $11 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -17014,8 +16992,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -17024,17 +17002,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $10 i32.const 0 i32.store - local.get $11 + local.get $3 i32.load offset=8 - local.set $6 - local.get $11 + local.set $8 + local.get $3 i32.load offset=16 - local.tee $5 - local.set $0 - local.get $4 + local.tee $9 + local.set $1 + local.get $10 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -17043,28 +17021,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $6 i64.const 0 i64.store - local.get $8 + local.get $6 i32.const 16 i32.const 22 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $11 i32.store - local.get $3 + local.get $11 i32.const 0 i32.store - local.get $3 + local.get $11 i32.const 0 i32.store offset=4 - local.get $3 + local.get $11 i32.const 0 i32.store offset=8 - local.get $3 + local.get $11 i32.const 0 i32.store offset=12 - local.get $0 + local.get $1 i32.const 134217727 i32.gt_u if @@ -17076,77 +17054,77 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 8 - local.get $0 + local.get $1 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $8 + local.tee $6 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $12 i32.store offset=4 - local.get $2 - local.get $8 + local.get $12 + local.get $6 call $~lib/memory/memory.fill - local.get $3 - local.get $2 + local.get $11 + local.get $12 i32.store - local.get $2 + local.get $12 if - local.get $3 - local.get $2 + local.get $11 + local.get $12 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $2 + local.get $11 + local.get $12 i32.store offset=4 - local.get $3 - local.get $8 + local.get $11 + local.get $6 i32.store offset=8 - local.get $3 - local.get $0 + local.get $11 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 - local.get $3 + local.get $10 + local.get $11 i32.store loop $for-loop|01 local.get $5 local.get $9 - i32.gt_s + i32.lt_s if - local.get $9 + local.get $5 i32.const 4 i32.shl - local.get $6 + local.get $8 i32.add - local.tee $8 + local.tee $6 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 1 i32.add - local.set $1 - local.get $8 + local.set $0 + local.get $6 f64.load - local.set $12 - local.get $3 + local.set $2 + local.get $11 i32.load offset=12 - local.get $0 + local.get $1 i32.le_u if - local.get $0 + local.get $1 i32.const 0 i32.lt_s if @@ -17157,61 +17135,61 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $0 + local.get $11 + local.get $1 i32.const 1 i32.add - local.tee $8 + local.tee $6 i32.const 3 i32.const 1 call $~lib/array/ensureCapacity - local.get $3 - local.get $8 + local.get $11 + local.get $6 i32.store offset=12 end - local.get $3 + local.get $11 i32.load offset=4 - local.get $0 + local.get $1 i32.const 3 i32.shl i32.add - local.get $12 + local.get $2 f64.store end - local.get $9 + local.get $5 i32.const 1 i32.add - local.set $9 + local.set $5 br $for-loop|01 end end - local.get $3 - local.get $1 + local.get $11 + local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 - local.get $1 + local.get $11 + local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $11 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $1 + local.tee $0 i32.store offset=8 loop $for-loop|2 - local.get $3 + local.get $11 i32.load offset=12 - local.get $10 + local.get $4 i32.gt_s if - local.get $11 local.get $3 - local.get $10 + local.get $11 + local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#has i32.eqz @@ -17223,21 +17201,21 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $3 - local.get $10 + local.get $0 + local.get $11 + local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $10 + local.get $4 i32.const 1 i32.add - local.set $10 + local.set $4 br $for-loop|2 end end - local.get $1 + local.get $0 i32.load offset=20 - local.get $11 + local.get $3 i32.load offset=20 i32.ne if @@ -17249,14 +17227,14 @@ unreachable end f64.const 0 - local.set $12 + local.set $2 loop $for-loop|3 - local.get $12 + local.get $2 f64.const 50 f64.lt if - local.get $11 - local.get $12 + local.get $3 + local.get $2 call $~lib/set/Set#has i32.eqz if @@ -17267,11 +17245,11 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $12 + local.get $3 + local.get $2 call $~lib/set/Set#delete - local.get $11 - local.get $12 + local.get $3 + local.get $2 call $~lib/set/Set#has if i32.const 0 @@ -17281,14 +17259,14 @@ call $~lib/builtins/abort unreachable end - local.get $12 + local.get $2 f64.const 1 f64.add - local.set $12 + local.set $2 br $for-loop|3 end end - local.get $11 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -17301,14 +17279,14 @@ unreachable end f64.const 0 - local.set $12 + local.set $2 loop $for-loop|4 - local.get $12 + local.get $2 f64.const 50 f64.lt if - local.get $11 - local.get $12 + local.get $3 + local.get $2 call $~lib/set/Set#has if i32.const 0 @@ -17318,11 +17296,11 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $12 + local.get $3 + local.get $2 call $~lib/set/Set#add - local.get $11 - local.get $12 + local.get $3 + local.get $2 call $~lib/set/Set#has i32.eqz if @@ -17333,11 +17311,11 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $12 + local.get $3 + local.get $2 call $~lib/set/Set#delete - local.get $11 - local.get $12 + local.get $3 + local.get $2 call $~lib/set/Set#has if i32.const 0 @@ -17347,14 +17325,14 @@ call $~lib/builtins/abort unreachable end - local.get $12 + local.get $2 f64.const 1 f64.add - local.set $12 + local.set $2 br $for-loop|4 end end - local.get $11 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -17366,9 +17344,9 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $3 call $~lib/set/Set#clear - local.get $11 + local.get $3 i32.load offset=20 if i32.const 0 diff --git a/tests/compiler/std/static-array.optimized.wat b/tests/compiler/std/static-array.optimized.wat index 1bf00b13b5..ab8c0f7278 100644 --- a/tests/compiler/std/static-array.optimized.wat +++ b/tests/compiler/std/static-array.optimized.wat @@ -539,7 +539,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -550,7 +550,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -570,37 +570,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -616,7 +616,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -626,20 +626,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -667,7 +667,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -1696,17 +1696,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -1885,39 +1885,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -1925,35 +1920,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -1961,55 +1952,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -2030,59 +2015,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -2099,7 +2077,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -2110,11 +2088,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -2128,17 +2106,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end diff --git a/tests/compiler/std/staticarray.optimized.wat b/tests/compiler/std/staticarray.optimized.wat index 3322023947..cdfd15723e 100644 --- a/tests/compiler/std/staticarray.optimized.wat +++ b/tests/compiler/std/staticarray.optimized.wat @@ -680,7 +680,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -691,7 +691,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -711,37 +711,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -757,7 +757,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -767,20 +767,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -808,7 +808,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -2160,17 +2160,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -2349,39 +2349,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2389,35 +2384,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2425,55 +2416,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -2494,59 +2479,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -2563,7 +2541,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -2574,11 +2552,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -2592,17 +2570,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -2870,7 +2848,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -2884,7 +2862,7 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) local.get $0 - local.tee $3 + local.tee $2 i32.const 7 i32.and local.get $1 @@ -2892,7 +2870,7 @@ i32.and i32.or i32.const 1 - local.get $2 + local.get $3 local.tee $0 i32.const 4 i32.ge_u @@ -2900,16 +2878,16 @@ i32.eqz if loop $do-loop|0 - local.get $3 + local.get $2 i64.load local.get $1 i64.load i64.eq if - local.get $3 + local.get $2 i32.const 8 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 8 i32.add @@ -2926,29 +2904,29 @@ end loop $while-continue|1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.sub local.set $0 - local.get $2 + local.get $3 if - local.get $3 + local.get $2 i32.load16_u local.tee $4 local.get $1 i32.load16_u - local.tee $2 + local.tee $3 i32.ne if local.get $4 - local.get $2 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add @@ -3155,9 +3133,9 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.get $3 + local.get $2 i32.add - local.set $3 + local.set $2 end local.get $5 i32.const 1 @@ -3167,7 +3145,7 @@ end end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 local.get $6 local.get $1 i32.const 20 @@ -3175,7 +3153,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $2 i32.mul i32.add i32.const 1 @@ -3202,7 +3180,7 @@ i32.store offset=4 local.get $7 if - local.get $2 + local.get $3 i32.const 1 i32.shl local.get $0 @@ -3218,27 +3196,27 @@ i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $2 + local.get $3 local.get $7 i32.add - local.set $2 + local.set $3 end - local.get $3 + local.get $2 if - local.get $2 + local.get $3 i32.const 1 i32.shl local.get $0 i32.add local.get $1 - local.get $3 + local.get $2 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $2 local.get $3 i32.add - local.set $2 + local.set $3 end local.get $5 i32.const 1 @@ -3258,7 +3236,7 @@ i32.store offset=4 local.get $1 if - local.get $2 + local.get $3 i32.const 1 i32.shl local.get $0 @@ -3788,49 +3766,49 @@ local.set $1 local.get $0 i32.load offset=4 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $3 + local.tee $4 select i32.store local.get $1 - local.get $7 local.get $3 + local.get $4 select local.set $1 local.get $0 i32.load offset=8 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $3 + local.tee $4 select i32.store offset=4 local.get $0 local.get $1 - local.get $7 local.get $3 + local.get $4 select i32.store offset=8 end @@ -3839,14 +3817,14 @@ local.set $1 local.get $0 i32.load offset=4 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -3857,7 +3835,7 @@ i32.store local.get $0 local.get $1 - local.get $7 + local.get $3 local.get $2 select i32.store offset=4 @@ -3877,35 +3855,35 @@ local.get $1 i32.clz i32.sub - local.tee $5 + local.tee $6 i32.const 2 i32.shl - local.tee $6 + local.tee $5 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc local.tee $11 - local.get $6 + local.get $5 i32.add local.set $10 i32.const 0 - local.set $6 + local.set $5 loop $for-loop|1 local.get $5 local.get $6 - i32.gt_u + i32.lt_u if - local.get $6 + local.get $5 i32.const 2 i32.shl local.get $11 i32.add i32.const -1 i32.store - local.get $6 + local.get $5 i32.const 1 i32.add - local.set $6 + local.set $5 br $for-loop|1 end end @@ -3925,7 +3903,7 @@ local.tee $1 i32.const 1 i32.add - local.tee $6 + local.tee $5 i32.const 32 i32.lt_s if @@ -3938,7 +3916,7 @@ i32.lt_s select local.tee $1 - local.get $6 + local.get $5 local.get $2 call $~lib/util/sort/insertionSort end @@ -3951,37 +3929,37 @@ local.get $1 i32.const 1 i32.add - local.tee $5 + local.tee $6 local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $6 - local.get $5 + local.tee $5 + local.get $6 i32.sub i32.const 1 i32.add - local.tee $4 + local.tee $7 i32.const 32 i32.lt_s if local.get $0 - local.get $5 + local.get $6 local.get $12 - local.get $5 + local.get $6 i32.const 31 i32.add - local.tee $6 - local.get $6 + local.tee $5 + local.get $5 local.get $12 i32.gt_s select - local.tee $6 - local.get $4 + local.tee $5 + local.get $7 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $5 + local.get $6 i32.add i64.extend_i32_u i64.const 30 @@ -4005,13 +3983,13 @@ i64.xor i32.wrap_i64 i32.clz - local.set $4 + local.set $7 loop $for-loop|3 local.get $4 local.get $7 - i32.lt_u + i32.gt_u if - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $11 @@ -4024,7 +4002,7 @@ local.get $0 local.get $13 local.get $10 - local.get $7 + local.get $4 i32.const 2 i32.shl local.tee $3 @@ -4044,39 +4022,39 @@ local.get $13 local.set $3 end - local.get $7 + local.get $4 i32.const 1 i32.sub - local.set $7 + local.set $4 br $for-loop|3 end end local.get $11 - local.get $4 + local.get $7 i32.const 2 i32.shl - local.tee $7 + local.tee $4 i32.add local.get $3 i32.store - local.get $7 + local.get $4 local.get $10 i32.add local.get $1 i32.store - local.get $5 - local.set $3 local.get $6 + local.set $3 + local.get $5 local.set $1 - local.get $4 - local.set $7 + local.get $7 + local.set $4 br $while-continue|2 end end loop $for-loop|4 - local.get $7 + local.get $4 if - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $11 @@ -4088,7 +4066,7 @@ if local.get $0 local.get $1 - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $10 @@ -4101,10 +4079,10 @@ local.get $2 call $~lib/util/sort/mergeRuns end - local.get $7 + local.get $4 i32.const 1 i32.sub - local.set $7 + local.set $4 br $for-loop|4 end end @@ -4268,13 +4246,13 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) + (local $6 f64) + (local $7 f32) (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 f32) - (local $12 f64) + (local $11 i32) + (local $12 i32) (local $13 i32) (local $14 i32) (local $15 i32) @@ -4289,19 +4267,19 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $15 + local.tee $3 i64.const 0 i64.store - local.get $15 + local.get $3 i64.const 0 i64.store offset=8 - local.get $15 + local.get $3 i64.const 0 i64.store offset=16 - local.get $15 + local.get $3 i64.const 0 i64.store offset=24 - local.get $15 + local.get $3 i32.const 1056 i32.store i32.const 1056 @@ -4458,17 +4436,17 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $15 + local.tee $3 i32.const 1312 i32.const 12 call $~lib/memory/memory.copy - local.get $15 + local.get $3 global.set $std/staticarray/arr3 global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 call $~lib/staticarray/StaticArray#__get i32.const 5 @@ -4483,9 +4461,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 6 @@ -4500,9 +4478,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 2 call $~lib/staticarray/StaticArray#__get i32.const 7 @@ -4517,9 +4495,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -4537,16 +4515,16 @@ end global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 8 call $~lib/staticarray/StaticArray#__set global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 8 @@ -4562,17 +4540,17 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $15 + local.tee $3 i32.const 1312 i32.const 12 call $~lib/memory/memory.copy - local.get $15 + local.get $3 global.set $std/staticarray/arr3 global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 6 @@ -4589,25 +4567,25 @@ i32.const 8 i32.const 5 call $~lib/rt/itcms/__new - local.tee $15 + local.tee $3 i32.store offset=4 - local.get $15 + local.get $3 i32.const 0 call $std/staticarray/Ref#constructor call $~lib/staticarray/StaticArray#__uset - local.get $15 + local.get $3 i32.const 1 call $std/staticarray/Ref#constructor call $~lib/staticarray/StaticArray#__uset - local.get $15 + local.get $3 global.set $std/staticarray/arr4 i32.const 0 global.set $std/staticarray/arr3 i32.const 0 global.set $std/staticarray/arr4 global.get $~lib/memory/__stack_pointer - local.tee $15 - local.get $15 + local.tee $3 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -4616,25 +4594,25 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $15 + local.tee $3 i32.const 0 i32.store - local.get $15 + local.get $3 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 12 call $~lib/memory/memory.fill global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $15 + local.get $3 i32.store offset=4 - local.get $15 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -4651,17 +4629,17 @@ unreachable end loop $for-loop|0 - local.get $15 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.get $0 + local.get $1 i32.gt_s if - local.get $15 - local.get $0 + local.get $3 + local.get $1 call $~lib/staticarray/StaticArray#__get if i32.const 0 @@ -4671,10 +4649,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -4683,16 +4661,16 @@ i32.const 6 i32.const 1728 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 call $~lib/staticarray/StaticArray.fromArray - local.tee $15 + local.tee $3 i32.store offset=4 - local.get $0 + local.get $1 i32.load offset=12 - local.get $15 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -4708,16 +4686,16 @@ unreachable end loop $for-loop|1 - local.get $0 - i32.load offset=12 local.get $1 + i32.load offset=12 + local.get $0 i32.gt_s if - local.get $15 - local.get $1 - call $~lib/staticarray/StaticArray#__get + local.get $3 local.get $0 + call $~lib/staticarray/StaticArray#__get local.get $1 + local.get $0 call $~lib/array/Array#__get i32.ne if @@ -4728,10 +4706,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end @@ -4740,15 +4718,15 @@ i32.const 6 i32.const 1824 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 call $~lib/staticarray/StaticArray.fromArray - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -4766,29 +4744,29 @@ i32.const 8 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.const 1856 i32.const 8 call $~lib/memory/memory.copy - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.const 3 call $~lib/rt/itcms/__new - local.tee $15 + local.tee $3 i32.const 1888 i32.const 4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer - local.get $15 + local.get $3 i32.store offset=12 - local.get $0 - local.get $15 + local.get $1 + local.get $3 call $~lib/staticarray/StaticArray.concat - local.tee $1 + local.tee $0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -4808,25 +4786,25 @@ i32.const 0 i32.const 3 call $~lib/rt/itcms/__new - local.tee $15 + local.tee $3 i32.const 1920 i32.const 0 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer - local.get $15 + local.get $3 i32.store offset=12 - local.get $0 - local.get $15 + local.get $1 + local.get $3 call $~lib/staticarray/StaticArray.concat - local.tee $1 + local.tee $0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -4845,26 +4823,26 @@ i32.const 20 i32.const 8 call $~lib/rt/itcms/__new - local.tee $15 + local.tee $3 i32.const 2128 i32.const 20 call $~lib/memory/memory.copy - local.get $15 + local.get $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $15 + local.get $3 i32.const 0 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.get $15 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -4880,33 +4858,33 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $for-loop|2 - local.get $15 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.get $0 + local.get $1 i32.gt_s if - local.get $15 - local.get $0 + local.get $3 + local.get $1 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $14 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $14 + local.get $4 i32.store - local.get $1 local.get $0 + local.get $1 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $13 + local.set $5 global.get $~lib/memory/__stack_pointer - local.get $13 + local.get $5 i32.store offset=12 - local.get $14 - local.get $13 + local.get $4 + local.get $5 call $~lib/string/String.__eq i32.eqz if @@ -4917,21 +4895,21 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|2 end end global.get $~lib/memory/__stack_pointer - local.get $15 + local.get $3 i32.const 1 i32.const 3 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -4947,18 +4925,18 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $14 - local.get $0 + local.tee $4 + local.get $1 i32.store - local.get $14 + local.get $4 i32.const 1984 i32.store offset=12 - local.get $0 + local.get $1 i32.const 1984 call $~lib/string/String.__eq i32.eqz @@ -4970,18 +4948,18 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 2016 i32.store offset=12 - local.get $1 + local.get $0 i32.const 2016 call $~lib/string/String.__eq i32.eqz @@ -4994,13 +4972,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $15 + local.get $3 i32.const 1 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $15 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -5008,7 +4986,7 @@ i32.shr_u i32.const 1 i32.sub - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -5024,19 +5002,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $15 + local.get $3 i32.const 0 i32.const 50 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.get $15 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -5052,13 +5030,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $15 + local.get $3 i32.const 100 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -5073,13 +5051,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $15 + local.get $3 i32.const -1 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -5095,18 +5073,18 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 2080 i32.store offset=12 - local.get $1 + local.get $0 i32.const 2080 call $~lib/string/String.__eq i32.eqz @@ -5119,13 +5097,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $15 + local.get $3 i32.const -2 i32.const -2 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -5140,13 +5118,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $15 + local.get $3 i32.const 2 i32.const -2 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -5162,18 +5140,18 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 2016 i32.store offset=12 - local.get $1 + local.get $0 i32.const 2016 call $~lib/string/String.__eq i32.eqz @@ -5189,29 +5167,29 @@ i32.const 20 i32.const 8 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.const 2304 i32.const 20 call $~lib/memory/memory.copy - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 0 i32.const 9 i32.const 2352 call $~lib/rt/__newArray - local.set $15 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $15 + local.get $3 i32.store offset=12 - local.get $0 - local.get $15 + local.get $1 + local.get $3 call $~lib/staticarray/StaticArray<~lib/string/String>#concat - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 - i32.load offset=12 local.get $0 + i32.load offset=12 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -5231,18 +5209,18 @@ i32.const 9 i32.const 2416 call $~lib/rt/__newArray - local.set $15 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $15 + local.get $3 i32.store offset=12 - local.get $0 - local.get $15 + local.get $1 + local.get $3 call $~lib/staticarray/StaticArray<~lib/string/String>#concat - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 - i32.load offset=12 local.get $0 + i32.load offset=12 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -5263,16 +5241,16 @@ i32.const 20 i32.const 8 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.const 2448 i32.const 20 call $~lib/memory/memory.copy - local.get $0 + local.get $1 i32.store offset=16 global.get $~lib/memory/__stack_pointer i32.const 1984 i32.store offset=12 - local.get $0 + local.get $1 i32.const 1984 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#includes @@ -5289,7 +5267,7 @@ global.get $~lib/memory/__stack_pointer i32.const 2384 i32.store offset=12 - local.get $0 + local.get $1 i32.const 2384 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#includes @@ -5304,7 +5282,7 @@ global.get $~lib/memory/__stack_pointer i32.const 2080 i32.store offset=12 - local.get $0 + local.get $1 i32.const 2080 i32.const 5 call $~lib/staticarray/StaticArray<~lib/string/String>#includes @@ -5319,7 +5297,7 @@ global.get $~lib/memory/__stack_pointer i32.const 2080 i32.store offset=12 - local.get $0 + local.get $1 i32.const 2080 i32.const -1 call $~lib/staticarray/StaticArray<~lib/string/String>#includes @@ -5336,53 +5314,53 @@ i32.const 8 i32.const 10 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.const 2496 i32.const 8 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store block $__inlined_func$~lib/staticarray/StaticArray#includes (result i32) i32.const 0 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 3 i32.shr_u - local.tee $0 + local.tee $1 i32.const 0 - local.get $0 + local.get $1 select i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#includes drop loop $while-continue|0 - local.get $0 - local.get $16 + local.get $1 + local.get $2 i32.gt_s if i32.const 1 - local.get $16 + local.get $2 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add f64.load - local.tee $12 + local.tee $6 f64.const nan:0x8000000000000 f64.eq - local.get $12 - local.get $12 + local.get $6 + local.get $6 f64.ne i32.or br_if $__inlined_func$~lib/staticarray/StaticArray#includes drop - local.get $16 + local.get $2 i32.const 1 i32.add - local.set $16 + local.set $2 br $while-continue|0 end end @@ -5400,55 +5378,55 @@ i32.const 4 i32.const 11 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.const 2528 i32.const 4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store block $__inlined_func$~lib/staticarray/StaticArray#includes (result i32) i32.const 0 - local.set $16 + local.set $2 i32.const 0 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $0 + local.tee $1 i32.const 0 - local.get $0 + local.get $1 select i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#includes drop loop $while-continue|07 - local.get $0 - local.get $16 + local.get $1 + local.get $2 i32.gt_s if i32.const 1 - local.get $16 + local.get $2 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add f32.load - local.tee $11 + local.tee $7 f32.const nan:0x400000 f32.eq - local.get $11 - local.get $11 + local.get $7 + local.get $7 f32.ne i32.or br_if $__inlined_func$~lib/staticarray/StaticArray#includes drop - local.get $16 + local.get $2 i32.const 1 i32.add - local.set $16 + local.set $2 br $while-continue|07 end end @@ -5467,56 +5445,56 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.const 2560 i32.const 12 call $~lib/memory/memory.copy - local.get $0 + local.get $1 i32.store offset=16 i32.const 0 - local.set $1 + local.set $0 block $__inlined_func$~lib/staticarray/StaticArray#indexOf - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $16 + local.tee $2 i32.const 0 - local.get $16 + local.get $2 select i32.eqz if i32.const -1 - local.set $1 + local.set $0 br $__inlined_func$~lib/staticarray/StaticArray#indexOf end loop $while-continue|012 - local.get $1 - local.get $16 + local.get $0 + local.get $2 i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|012 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1216 @@ -5526,49 +5504,49 @@ unreachable end i32.const 0 - local.set $1 + local.set $0 block $__inlined_func$~lib/staticarray/StaticArray#indexOf13 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $16 + local.tee $2 i32.const 0 - local.get $16 + local.get $2 select i32.eqz if i32.const -1 - local.set $1 + local.set $0 br $__inlined_func$~lib/staticarray/StaticArray#indexOf13 end loop $while-continue|014 - local.get $1 - local.get $16 + local.get $0 + local.get $2 i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.load i32.const 7 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf13 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|014 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -5580,50 +5558,50 @@ unreachable end i32.const 2 - local.set $1 + local.set $0 block $__inlined_func$~lib/staticarray/StaticArray#indexOf15 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $16 + local.tee $2 i32.const 2 i32.le_u i32.const 1 - local.get $16 + local.get $2 select if i32.const -1 - local.set $1 + local.set $0 br $__inlined_func$~lib/staticarray/StaticArray#indexOf15 end loop $while-continue|016 - local.get $1 - local.get $16 + local.get $0 + local.get $2 i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.load i32.const 9 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf15 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|016 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 2 i32.ne if @@ -5635,58 +5613,58 @@ unreachable end block $__inlined_func$~lib/staticarray/StaticArray#indexOf17 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $16 + local.tee $2 i32.const -1 i32.le_s i32.const 1 - local.get $16 + local.get $2 select if i32.const -1 - local.set $1 + local.set $0 br $__inlined_func$~lib/staticarray/StaticArray#indexOf17 end - local.get $16 + local.get $2 i32.const 1 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select - local.set $1 + local.set $0 loop $while-continue|018 - local.get $1 - local.get $16 + local.get $0 + local.get $2 i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf17 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|018 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -5698,56 +5676,56 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $__inlined_func$~lib/staticarray/StaticArray#indexOf19 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $16 + local.tee $2 i32.const -3 i32.le_s i32.const 1 - local.get $16 + local.get $2 select br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf19 - local.get $16 + local.get $2 i32.const 3 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select - local.set $1 + local.set $0 loop $while-continue|020 - local.get $1 - local.get $16 + local.get $0 + local.get $2 i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf19 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|020 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1216 @@ -5760,69 +5738,69 @@ i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.const 2592 i32.const 16 call $~lib/memory/memory.copy - local.get $0 + local.get $1 i32.store offset=16 i32.const 1 global.set $~argumentsLength - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $16 - local.set $15 + local.tee $2 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf - local.get $16 + local.get $2 i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf - local.get $15 - local.get $16 + local.get $2 + local.get $3 i32.add - local.get $16 + local.get $2 i32.const 1 i32.sub - local.get $15 - local.get $15 - local.get $16 - i32.ge_s + local.get $3 + local.get $2 + local.get $3 + i32.le_s select - local.get $15 + local.get $3 i32.const 0 i32.lt_s select - local.set $1 + local.set $0 loop $while-continue|00 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|00 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -5835,66 +5813,66 @@ end i32.const 1 global.set $~argumentsLength - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $16 + local.set $2 i32.const -1 - local.set $1 + local.set $0 block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf5 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $15 + local.tee $3 i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf5 - local.get $15 - local.get $16 + local.get $2 + local.get $3 i32.add - local.get $15 + local.get $3 i32.const 1 i32.sub - local.get $16 - local.get $15 - local.get $16 - i32.le_s + local.get $2 + local.get $2 + local.get $3 + i32.ge_s select - local.get $16 + local.get $2 i32.const 0 i32.lt_s select - local.set $1 + local.set $0 loop $while-continue|06 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.load i32.const 7 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf5 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|06 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -5906,53 +5884,53 @@ unreachable end block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf7 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $1 + local.tee $0 i32.eqz if i32.const -1 - local.set $1 + local.set $0 br $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf7 end - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 3 - local.get $1 + local.get $0 i32.const 3 i32.le_u select - local.set $1 + local.set $0 loop $while-continue|022 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf7 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|022 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -5964,53 +5942,53 @@ unreachable end block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf23 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $1 + local.tee $0 i32.eqz if i32.const -1 - local.set $1 + local.set $0 br $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf23 end - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 2 - local.get $1 + local.get $0 i32.const 2 i32.le_u select - local.set $1 + local.set $0 loop $while-continue|024 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf23 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|024 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1216 @@ -6020,48 +5998,48 @@ unreachable end block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf25 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $1 + local.tee $0 i32.eqz if i32.const -1 - local.set $1 + local.set $0 br $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf25 end - local.get $1 + local.get $0 i32.const 2 i32.sub - local.set $1 + local.set $0 loop $while-continue|026 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf25 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|026 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1216 @@ -6071,46 +6049,46 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf27 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $16 + local.tee $2 i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf27 - local.get $16 + local.get $2 i32.const 1 i32.sub - local.set $1 + local.set $0 loop $while-continue|028 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf27 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|028 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -6125,26 +6103,26 @@ i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.const 2736 i32.const 12 call $~lib/memory/memory.copy - local.get $0 + local.get $1 i32.store offset=16 global.get $~lib/memory/__stack_pointer i32.const 2800 i32.store offset=20 - local.get $0 + local.get $1 i32.const 2800 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 2832 i32.store offset=12 - local.get $1 + local.get $0 i32.const 2832 call $~lib/string/String.__eq i32.eqz @@ -6159,17 +6137,17 @@ global.get $~lib/memory/__stack_pointer i32.const 2768 i32.store offset=20 - local.get $0 + local.get $1 i32.const 2768 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 2880 i32.store offset=12 - local.get $1 + local.get $0 i32.const 2880 call $~lib/string/String.__eq i32.eqz @@ -6184,17 +6162,17 @@ global.get $~lib/memory/__stack_pointer i32.const 2928 i32.store offset=20 - local.get $0 + local.get $1 i32.const 2928 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 2960 i32.store offset=12 - local.get $1 + local.get $0 i32.const 2960 call $~lib/string/String.__eq i32.eqz @@ -6209,17 +6187,17 @@ global.get $~lib/memory/__stack_pointer i32.const 3008 i32.store offset=20 - local.get $0 + local.get $1 i32.const 3008 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 3040 i32.store offset=12 - local.get $1 + local.get $0 i32.const 3040 call $~lib/string/String.__eq i32.eqz @@ -6234,12 +6212,12 @@ global.get $~lib/memory/__stack_pointer i32.const 2800 i32.store offset=20 - local.get $0 + local.get $1 i32.const 2800 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 @@ -6250,25 +6228,25 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $16 + local.tee $2 i32.const 0 i32.store - local.get $16 + local.get $2 i32.const 2800 i32.store - local.get $0 + local.get $1 i32.const 2800 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=12 local.get $1 + i32.store offset=12 local.get $0 + local.get $1 call $~lib/string/String.__eq i32.eqz if @@ -6283,45 +6261,45 @@ i32.const 8 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.const 3104 i32.const 8 call $~lib/memory/memory.copy - local.get $0 + local.get $1 i32.store offset=16 i32.const 1 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.const 1 i32.gt_u select - local.set $16 + local.set $2 loop $for-loop|024 - local.get $1 - local.get $16 + local.get $0 + local.get $2 i32.gt_s if - local.get $16 + local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.const 1 i32.store - local.get $16 + local.get $2 i32.const 1 i32.add - local.set $16 + local.set $2 br $for-loop|024 end end - local.get $0 + local.get $1 i32.const 0 call $~lib/staticarray/StaticArray#__get if @@ -6332,7 +6310,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 1 @@ -6349,68 +6327,68 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.const 3136 i32.const 12 call $~lib/memory/memory.copy - local.get $0 + local.get $1 i32.store offset=16 i32.const 0 - local.set $16 - local.get $0 + local.set $2 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $1 + local.tee $0 i32.const 1 i32.gt_u if - local.get $1 + local.get $0 i32.const 1 i32.shr_u - local.set $15 - local.get $1 + local.set $3 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 loop $while-continue|02633 - local.get $15 - local.get $16 - i32.gt_u + local.get $2 + local.get $3 + i32.lt_u if - local.get $16 + local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add - local.tee $14 + local.tee $4 i32.load - local.set $13 - local.get $14 - local.get $1 - local.get $16 + local.set $5 + local.get $4 + local.get $0 + local.get $2 i32.sub i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add - local.tee $14 + local.tee $4 i32.load i32.store - local.get $14 - local.get $13 + local.get $4 + local.get $5 i32.store - local.get $16 + local.get $2 i32.const 1 i32.add - local.set $16 + local.set $2 br $while-continue|02633 end end end - local.get $0 + local.get $1 i32.const 0 call $~lib/staticarray/StaticArray#__get i32.const 3 @@ -6423,7 +6401,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 2 @@ -6436,7 +6414,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/staticarray/StaticArray#__get i32.const 1 @@ -6453,56 +6431,56 @@ i32.const 20 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.const 3168 i32.const 20 call $~lib/memory/memory.copy - local.get $0 + local.get $1 i32.store offset=16 i32.const 0 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 select - local.set $16 - local.get $1 + local.set $2 + local.get $0 i32.const 3 - local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.const 3 i32.gt_u select - local.tee $15 + local.tee $3 i32.sub - local.set $14 - local.get $16 + local.set $4 + local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add - local.get $15 + local.get $3 i32.const 2 i32.shl - local.get $0 - i32.add - local.get $14 local.get $1 - local.get $16 + i32.add + local.get $4 + local.get $0 + local.get $2 i32.sub - local.tee $1 - local.get $1 - local.get $14 + local.tee $0 + local.get $0 + local.get $4 i32.gt_s select i32.const 2 i32.shl call $~lib/memory/memory.copy - local.get $0 + local.get $1 i32.const 0 call $~lib/staticarray/StaticArray#__get i32.const 4 @@ -6515,7 +6493,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 5 @@ -6528,7 +6506,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/staticarray/StaticArray#__get i32.const 3 @@ -6541,7 +6519,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 call $~lib/staticarray/StaticArray#__get i32.const 4 @@ -6554,7 +6532,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 call $~lib/staticarray/StaticArray#__get i32.const 5 @@ -6571,19 +6549,19 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $15 + local.tee $3 i32.const 3216 i32.const 12 call $~lib/memory/memory.copy - local.get $15 + local.get $3 i32.store offset=16 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 3248 i32.store offset=12 i32.const 0 - local.set $16 - local.get $1 + local.set $2 + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -6592,54 +6570,54 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 - local.get $15 + local.get $1 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $0 + local.tee $1 i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $14 + local.tee $4 i32.store - local.get $14 + local.get $4 i32.load offset=4 - local.set $13 + local.set $5 loop $for-loop|027 - local.get $0 - local.get $16 + local.get $1 + local.get $2 i32.gt_s if - local.get $15 - local.get $16 + local.get $3 + local.get $2 i32.const 2 i32.shl - local.tee $10 + local.tee $8 i32.add i32.load local.set $9 i32.const 3 global.set $~argumentsLength - local.get $10 - local.get $13 + local.get $5 + local.get $8 i32.add local.get $9 - local.get $16 - local.get $15 + local.get $2 + local.get $3 i32.const 3248 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store - local.get $16 + local.get $2 i32.const 1 i32.add - local.set $16 + local.set $2 br $for-loop|027 end end @@ -6647,10 +6625,10 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $14 + local.get $0 + local.get $4 i32.store offset=4 - local.get $14 + local.get $4 i32.const 0 call $~lib/array/Array#__get i32.const 2 @@ -6663,7 +6641,7 @@ call $~lib/builtins/abort unreachable end - local.get $14 + local.get $4 i32.const 1 call $~lib/array/Array#__get i32.const 3 @@ -6676,7 +6654,7 @@ call $~lib/builtins/abort unreachable end - local.get $14 + local.get $4 i32.const 2 call $~lib/array/Array#__get i32.const 4 @@ -6693,36 +6671,36 @@ i32.const 3280 i32.store offset=12 i32.const 0 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|030 - local.get $1 - local.get $16 + local.get $0 + local.get $2 i32.gt_s if - local.get $16 + local.get $2 i32.const 2 i32.shl - local.get $15 + local.get $3 i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $16 - local.get $15 + local.get $2 + local.get $3 i32.const 3280 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $16 + local.get $2 i32.const 1 i32.add - local.set $16 + local.set $2 br $for-loop|030 end end @@ -6738,13 +6716,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.const 3312 i32.store offset=12 i32.const 0 - local.set $16 - local.get $1 + local.set $2 + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -6753,17 +6731,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $6 + local.tee $12 i32.store - local.get $15 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -6771,41 +6749,41 @@ i32.shr_u local.set $9 loop $for-loop|028 + local.get $2 local.get $9 - local.get $16 - i32.gt_s + i32.lt_s if - local.get $16 + local.get $2 i32.const 2 i32.shl - local.get $15 + local.get $3 i32.add i32.load - local.set $5 + local.set $13 i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $16 - local.get $15 + local.get $13 + local.get $2 + local.get $3 i32.const 3312 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $6 + local.get $12 i32.load offset=12 - local.tee $8 + local.tee $10 i32.const 1 i32.add - local.tee $7 - local.tee $1 - local.get $6 + local.tee $11 + local.tee $0 + local.get $12 i32.load offset=8 - local.tee $14 + local.tee $4 i32.const 2 i32.shr_u i32.gt_u if - local.get $1 + local.get $0 i32.const 268435455 i32.gt_u if @@ -6817,38 +6795,38 @@ unreachable end block $__inlined_func$~lib/rt/itcms/__renew - local.get $14 + local.get $4 i32.const 1 i32.shl - local.tee $0 + local.tee $1 i32.const 1073741820 - local.get $0 + local.get $1 i32.const 1073741820 i32.lt_u select - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.const 8 - local.get $1 + local.get $0 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $1 + local.tee $0 local.get $0 local.get $1 - i32.gt_u + i32.lt_u select - local.tee $4 - local.tee $3 - local.get $6 + local.tee $14 + local.tee $15 + local.get $12 i32.load - local.tee $2 - local.tee $1 + local.tee $16 + local.tee $0 i32.const 20 i32.sub - local.tee $13 + local.tee $5 i32.load i32.const -4 i32.and @@ -6856,74 +6834,74 @@ i32.sub i32.le_u if - local.get $13 - local.get $3 + local.get $5 + local.get $15 i32.store offset=16 - local.get $1 - local.set $0 + local.get $0 + local.set $1 br $__inlined_func$~lib/rt/itcms/__renew end - local.get $3 - local.get $13 + local.get $15 + local.get $5 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $0 - local.get $1 - local.get $3 - local.get $13 - i32.load offset=16 local.tee $1 - local.get $1 - local.get $3 + local.get $0 + local.get $15 + local.get $5 + i32.load offset=16 + local.tee $0 + local.get $0 + local.get $15 i32.gt_u select call $~lib/memory/memory.copy end - local.get $0 - local.get $14 - i32.add + local.get $1 local.get $4 + i32.add local.get $14 + local.get $4 i32.sub call $~lib/memory/memory.fill - local.get $0 - local.get $2 + local.get $1 + local.get $16 i32.ne if - local.get $6 - local.get $0 + local.get $12 + local.get $1 i32.store - local.get $6 - local.get $0 + local.get $12 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 if - local.get $6 - local.get $0 + local.get $12 + local.get $1 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end end - local.get $6 - local.get $4 + local.get $12 + local.get $14 i32.store offset=8 end - local.get $6 + local.get $12 i32.load offset=4 - local.get $8 + local.get $10 i32.const 2 i32.shl i32.add - local.get $5 + local.get $13 i32.store - local.get $6 - local.get $7 + local.get $12 + local.get $11 i32.store offset=12 end - local.get $16 + local.get $2 i32.const 1 i32.add - local.set $16 + local.set $2 br $for-loop|028 end end @@ -6931,9 +6909,9 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $12 i32.store offset=24 - local.get $6 + local.get $12 i32.load offset=12 i32.const 2 i32.ne @@ -6945,7 +6923,7 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $12 i32.const 0 call $~lib/array/Array#__get i32.const 2 @@ -6958,7 +6936,7 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $12 i32.const 1 call $~lib/array/Array#__get i32.const 3 @@ -6975,46 +6953,46 @@ i32.const 3344 i32.store offset=12 i32.const 0 - local.set $16 + local.set $2 i32.const 0 - local.set $0 - local.get $15 + local.set $1 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|033 - local.get $1 - local.get $16 + local.get $0 + local.get $2 i32.gt_s if - local.get $16 + local.get $2 i32.const 2 i32.shl - local.get $15 + local.get $3 i32.add i32.load - local.set $14 + local.set $4 i32.const 4 global.set $~argumentsLength - local.get $0 - local.get $14 - local.get $16 - local.get $15 + local.get $1 + local.get $4 + local.get $2 + local.get $3 i32.const 3344 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.const 1 i32.add - local.set $16 + local.set $2 br $for-loop|033 end end - local.get $0 + local.get $1 i32.const 6 i32.ne if @@ -7029,8 +7007,8 @@ i32.const 3376 i32.store offset=12 i32.const 0 - local.set $0 - local.get $15 + local.set $1 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -7038,37 +7016,37 @@ i32.shr_u i32.const 1 i32.sub - local.set $16 + local.set $2 loop $for-loop|035 - local.get $16 + local.get $2 i32.const 0 i32.ge_s if - local.get $16 + local.get $2 i32.const 2 i32.shl - local.get $15 + local.get $3 i32.add i32.load - local.set $1 + local.set $0 i32.const 4 global.set $~argumentsLength - local.get $0 local.get $1 - local.get $16 - local.get $15 + local.get $0 + local.get $2 + local.get $3 i32.const 3376 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.const 1 i32.sub - local.set $16 + local.set $2 br $for-loop|035 end end - local.get $0 + local.get $1 i32.const 6 i32.ne if @@ -7084,41 +7062,41 @@ i32.store offset=12 block $__inlined_func$~lib/staticarray/StaticArray#some (result i32) i32.const 0 - local.set $0 - local.get $15 + local.set $1 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|038 local.get $0 local.get $1 - i32.lt_s + i32.gt_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $15 + local.get $3 i32.add i32.load - local.set $16 + local.set $2 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $16 - local.get $0 - local.get $15 + local.get $2 + local.get $1 + local.get $3 i32.const 3408 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/staticarray/StaticArray#some drop - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|038 end end @@ -7138,41 +7116,41 @@ i32.store offset=12 block $__inlined_func$~lib/staticarray/StaticArray#some39 (result i32) i32.const 0 - local.set $0 - local.get $15 + local.set $1 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|040 local.get $0 local.get $1 - i32.lt_s + i32.gt_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $15 + local.get $3 i32.add i32.load - local.set $16 + local.set $2 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $16 - local.get $0 - local.get $15 + local.get $2 + local.get $1 + local.get $3 i32.const 3440 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/staticarray/StaticArray#some39 drop - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|040 end end @@ -7191,42 +7169,42 @@ i32.store offset=12 block $__inlined_func$~lib/staticarray/StaticArray#every (result i32) i32.const 0 - local.set $0 - local.get $15 + local.set $1 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|041 local.get $0 local.get $1 - i32.lt_s + i32.gt_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $15 + local.get $3 i32.add i32.load - local.set $16 + local.set $2 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $16 - local.get $0 - local.get $15 + local.get $2 + local.get $1 + local.get $3 i32.const 3472 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#every drop - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|041 end end @@ -7246,42 +7224,42 @@ i32.store offset=12 block $__inlined_func$~lib/staticarray/StaticArray#every42 (result i32) i32.const 0 - local.set $0 - local.get $15 + local.set $1 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|043 local.get $0 local.get $1 - i32.lt_s + i32.gt_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $15 + local.get $3 i32.add i32.load - local.set $16 + local.set $2 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $16 - local.get $0 - local.get $15 + local.get $2 + local.get $1 + local.get $3 i32.const 3504 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#every42 drop - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|043 end end @@ -7299,45 +7277,45 @@ i32.const 3536 i32.store offset=12 i32.const 0 - local.set $1 - local.get $15 + local.set $0 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $0 + local.set $1 block $__inlined_func$~lib/staticarray/StaticArray#findIndex loop $for-loop|044 local.get $0 local.get $1 - i32.gt_s + i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $15 + local.get $3 i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $15 + local.get $0 + local.get $3 i32.const 3536 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/staticarray/StaticArray#findIndex - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|044 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -7352,45 +7330,45 @@ i32.const 3568 i32.store offset=12 i32.const 0 - local.set $1 - local.get $15 + local.set $0 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $0 + local.set $1 block $__inlined_func$~lib/staticarray/StaticArray#findIndex45 loop $for-loop|046 local.get $0 local.get $1 - i32.gt_s + i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $15 + local.get $3 i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $15 + local.get $0 + local.get $3 i32.const 3568 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/staticarray/StaticArray#findIndex45 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|046 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -7404,7 +7382,7 @@ global.get $~lib/memory/__stack_pointer i32.const 3600 i32.store offset=12 - local.get $15 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -7412,38 +7390,38 @@ i32.shr_u i32.const 1 i32.sub - local.set $1 + local.set $0 block $__inlined_func$~lib/staticarray/StaticArray#findLastIndex loop $for-loop|047 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $15 + local.get $3 i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $15 + local.get $0 + local.get $3 i32.const 3600 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/staticarray/StaticArray#findLastIndex - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $for-loop|047 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -7457,7 +7435,7 @@ global.get $~lib/memory/__stack_pointer i32.const 3632 i32.store offset=12 - local.get $15 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -7465,38 +7443,38 @@ i32.shr_u i32.const 1 i32.sub - local.set $1 + local.set $0 block $__inlined_func$~lib/staticarray/StaticArray#findLastIndex48 loop $for-loop|049 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $15 + local.get $3 i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $15 + local.get $0 + local.get $3 i32.const 3632 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/staticarray/StaticArray#findLastIndex48 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $for-loop|049 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -7511,16 +7489,16 @@ i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.const 3664 i32.const 16 call $~lib/memory/memory.copy - local.get $0 + local.get $1 i32.store offset=28 i32.const 0 global.set $~argumentsLength i32.const 0 - local.set $16 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -7541,25 +7519,25 @@ unreachable end i32.const 3712 - local.set $16 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 3712 i32.store end - local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.get $16 + local.get $2 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 0 call $~lib/staticarray/StaticArray#__get if @@ -7570,7 +7548,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 1 @@ -7583,7 +7561,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/staticarray/StaticArray#__get i32.const 2 @@ -7596,7 +7574,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 call $~lib/staticarray/StaticArray#__get i32.const 3 diff --git a/tests/compiler/std/string-casemapping.optimized.wat b/tests/compiler/std/string-casemapping.optimized.wat index 8bca2cce47..302add0bf9 100644 --- a/tests/compiler/std/string-casemapping.optimized.wat +++ b/tests/compiler/std/string-casemapping.optimized.wat @@ -802,7 +802,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -813,7 +813,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -833,37 +833,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -879,7 +879,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -889,20 +889,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -930,7 +930,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -2427,17 +2427,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -2616,39 +2616,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2656,35 +2651,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2692,55 +2683,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -2761,59 +2746,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -2830,7 +2808,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -2841,11 +2819,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -2859,17 +2837,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -3138,7 +3116,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -3152,7 +3130,7 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) local.get $0 - local.tee $3 + local.tee $2 i32.const 7 i32.and local.get $1 @@ -3160,7 +3138,7 @@ i32.and i32.or i32.const 1 - local.get $2 + local.get $3 local.tee $0 i32.const 4 i32.ge_u @@ -3168,16 +3146,16 @@ i32.eqz if loop $do-loop|0 - local.get $3 + local.get $2 i64.load local.get $1 i64.load i64.eq if - local.get $3 + local.get $2 i32.const 8 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 8 i32.add @@ -3194,29 +3172,29 @@ end loop $while-continue|1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.sub local.set $0 - local.get $2 + local.get $3 if - local.get $3 + local.get $2 i32.load16_u local.tee $4 local.get $1 i32.load16_u - local.tee $2 + local.tee $3 i32.ne if local.get $4 - local.get $2 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add @@ -4044,10 +4022,10 @@ ) (func $start:std/string-casemapping (local $0 i64) - (local $1 i64) + (local $1 i32) (local $2 i64) (local $3 i64) - (local $4 i32) + (local $4 i64) (local $5 i32) (local $6 i32) (local $7 i32) @@ -4069,16 +4047,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $1 i64.const 0 i64.store - local.get $4 + local.get $1 i64.const 0 i64.store offset=8 - local.get $4 + local.get $1 i64.const 0 i64.store offset=16 - local.get $4 + local.get $1 i32.const 0 i32.store offset=24 memory.size @@ -4113,19 +4091,19 @@ i32.store i32.const 1376 global.set $~lib/rt/itcms/fromSpace - local.get $4 + local.get $1 i32.const 1056 i32.store offset=8 i32.const 1056 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 1056 i32.store offset=4 - local.get $4 + local.get $1 i32.const 1056 call $~lib/string/String.__eq i32.eqz @@ -4142,14 +4120,14 @@ i32.store offset=8 i32.const 1056 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 1056 i32.store offset=4 - local.get $4 + local.get $1 i32.const 1056 call $~lib/string/String.__eq i32.eqz @@ -4166,14 +4144,14 @@ i32.store offset=8 i32.const 11808 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 11856 i32.store offset=4 - local.get $4 + local.get $1 i32.const 11856 call $~lib/string/String.__eq i32.eqz @@ -4190,14 +4168,14 @@ i32.store offset=8 i32.const 11904 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 11952 i32.store offset=4 - local.get $4 + local.get $1 i32.const 11952 call $~lib/string/String.__eq i32.eqz @@ -4214,14 +4192,14 @@ i32.store offset=8 i32.const 12000 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 12096 i32.store offset=4 - local.get $4 + local.get $1 i32.const 12096 call $~lib/string/String.__eq i32.eqz @@ -4238,14 +4216,14 @@ i32.store offset=8 i32.const 12096 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 12192 i32.store offset=4 - local.get $4 + local.get $1 i32.const 12192 call $~lib/string/String.__eq i32.eqz @@ -4262,14 +4240,14 @@ i32.store offset=8 i32.const 12288 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 12352 i32.store offset=4 - local.get $4 + local.get $1 i32.const 12352 call $~lib/string/String.__eq i32.eqz @@ -4286,14 +4264,14 @@ i32.store offset=8 i32.const 12352 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 12416 i32.store offset=4 - local.get $4 + local.get $1 i32.const 12416 call $~lib/string/String.__eq i32.eqz @@ -4310,14 +4288,14 @@ i32.store offset=8 i32.const 12480 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 12576 i32.store offset=4 - local.get $4 + local.get $1 i32.const 12576 call $~lib/string/String.__eq i32.eqz @@ -4334,14 +4312,14 @@ i32.store offset=8 i32.const 12576 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 12672 i32.store offset=4 - local.get $4 + local.get $1 i32.const 12672 call $~lib/string/String.__eq i32.eqz @@ -4358,14 +4336,14 @@ i32.store offset=8 i32.const 12768 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 12864 i32.store offset=4 - local.get $4 + local.get $1 i32.const 12864 call $~lib/string/String.__eq i32.eqz @@ -4382,14 +4360,14 @@ i32.store offset=8 i32.const 12864 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 12960 i32.store offset=4 - local.get $4 + local.get $1 i32.const 12960 call $~lib/string/String.__eq i32.eqz @@ -4406,14 +4384,14 @@ i32.store offset=8 i32.const 13056 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 13136 i32.store offset=4 - local.get $4 + local.get $1 i32.const 13136 call $~lib/string/String.__eq i32.eqz @@ -4430,14 +4408,14 @@ i32.store offset=8 i32.const 13216 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 13296 i32.store offset=4 - local.get $4 + local.get $1 i32.const 13296 call $~lib/string/String.__eq i32.eqz @@ -4454,14 +4432,14 @@ i32.store offset=8 i32.const 13376 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 13440 i32.store offset=4 - local.get $4 + local.get $1 i32.const 13440 call $~lib/string/String.__eq i32.eqz @@ -4478,14 +4456,14 @@ i32.store offset=8 i32.const 13504 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 13584 i32.store offset=4 - local.get $4 + local.get $1 i32.const 13584 call $~lib/string/String.__eq i32.eqz @@ -4502,14 +4480,14 @@ i32.store offset=8 i32.const 13664 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 13744 i32.store offset=4 - local.get $4 + local.get $1 i32.const 13744 call $~lib/string/String.__eq i32.eqz @@ -4526,14 +4504,14 @@ i32.store offset=8 i32.const 13824 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 13888 i32.store offset=4 - local.get $4 + local.get $1 i32.const 13888 call $~lib/string/String.__eq i32.eqz @@ -4550,14 +4528,14 @@ i32.store offset=8 i32.const 13952 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 14032 i32.store offset=4 - local.get $4 + local.get $1 i32.const 14032 call $~lib/string/String.__eq i32.eqz @@ -4574,14 +4552,14 @@ i32.store offset=8 i32.const 14112 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 14192 i32.store offset=4 - local.get $4 + local.get $1 i32.const 14192 call $~lib/string/String.__eq i32.eqz @@ -4598,14 +4576,14 @@ i32.store offset=8 i32.const 14272 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 14432 i32.store offset=4 - local.get $4 + local.get $1 i32.const 14432 call $~lib/string/String.__eq i32.eqz @@ -4622,14 +4600,14 @@ i32.store offset=8 i32.const 14272 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 14592 i32.store offset=4 - local.get $4 + local.get $1 i32.const 14592 call $~lib/string/String.__eq i32.eqz @@ -4646,14 +4624,14 @@ i32.store offset=8 i32.const 14752 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 14784 i32.store offset=4 - local.get $4 + local.get $1 i32.const 14784 call $~lib/string/String.__eq i32.eqz @@ -4670,14 +4648,14 @@ i32.store offset=8 i32.const 14816 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 14848 i32.store offset=4 - local.get $4 + local.get $1 i32.const 14848 call $~lib/string/String.__eq i32.eqz @@ -4694,14 +4672,14 @@ i32.store offset=8 i32.const 14880 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 15088 i32.store offset=4 - local.get $4 + local.get $1 i32.const 15088 call $~lib/string/String.__eq i32.eqz @@ -4718,20 +4696,20 @@ i32.store offset=12 i32.const 14752 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store offset=8 - local.get $4 + local.get $1 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 15296 i32.store offset=4 - local.get $4 + local.get $1 i32.const 15296 call $~lib/string/String.__eq i32.eqz @@ -4748,20 +4726,20 @@ i32.store offset=12 i32.const 15328 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store offset=8 - local.get $4 + local.get $1 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 15360 i32.store offset=4 - local.get $4 + local.get $1 i32.const 15360 call $~lib/string/String.__eq i32.eqz @@ -4778,20 +4756,20 @@ i32.store offset=12 i32.const 15392 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store offset=8 - local.get $4 + local.get $1 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 15392 i32.store offset=4 - local.get $4 + local.get $1 i32.const 15392 call $~lib/string/String.__eq i32.eqz @@ -4805,20 +4783,20 @@ end i32.const 65536 call $~lib/string/String.fromCodePoint - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store offset=8 - local.get $4 + local.get $1 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 15648 i32.store offset=4 - local.get $4 + local.get $1 i32.const 15648 call $~lib/string/String.__eq i32.eqz @@ -4832,20 +4810,20 @@ end i32.const 65536 call $~lib/string/String.fromCodePoint - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store offset=8 - local.get $4 + local.get $1 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 15648 i32.store offset=4 - local.get $4 + local.get $1 i32.const 15648 call $~lib/string/String.__eq i32.eqz @@ -4862,14 +4840,14 @@ i32.store offset=8 i32.const 15680 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 15712 i32.store offset=4 - local.get $4 + local.get $1 i32.const 15712 call $~lib/string/String.__eq i32.eqz @@ -4886,14 +4864,14 @@ i32.store offset=8 i32.const 15744 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 15776 i32.store offset=4 - local.get $4 + local.get $1 i32.const 15776 call $~lib/string/String.__eq i32.eqz @@ -4910,14 +4888,14 @@ i32.store offset=8 i32.const 15808 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 15840 i32.store offset=4 - local.get $4 + local.get $1 i32.const 15840 call $~lib/string/String.__eq i32.eqz @@ -4934,14 +4912,14 @@ i32.store offset=8 i32.const 15872 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 15904 i32.store offset=4 - local.get $4 + local.get $1 i32.const 15904 call $~lib/string/String.__eq i32.eqz @@ -4958,14 +4936,14 @@ i32.store offset=8 i32.const 15936 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 15968 i32.store offset=4 - local.get $4 + local.get $1 i32.const 15968 call $~lib/string/String.__eq i32.eqz @@ -4982,14 +4960,14 @@ i32.store offset=8 i32.const 16000 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16032 i32.store offset=4 - local.get $4 + local.get $1 i32.const 16032 call $~lib/string/String.__eq i32.eqz @@ -5006,14 +4984,14 @@ i32.store offset=8 i32.const 16064 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16096 i32.store offset=4 - local.get $4 + local.get $1 i32.const 16096 call $~lib/string/String.__eq i32.eqz @@ -5030,14 +5008,14 @@ i32.store offset=8 i32.const 16128 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16160 i32.store offset=4 - local.get $4 + local.get $1 i32.const 16160 call $~lib/string/String.__eq i32.eqz @@ -5054,14 +5032,14 @@ i32.store offset=8 i32.const 16192 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16224 i32.store offset=4 - local.get $4 + local.get $1 i32.const 16224 call $~lib/string/String.__eq i32.eqz @@ -5078,14 +5056,14 @@ i32.store offset=8 i32.const 16256 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16288 i32.store offset=4 - local.get $4 + local.get $1 i32.const 16288 call $~lib/string/String.__eq i32.eqz @@ -5102,14 +5080,14 @@ i32.store offset=8 i32.const 16320 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16352 i32.store offset=4 - local.get $4 + local.get $1 i32.const 16352 call $~lib/string/String.__eq i32.eqz @@ -5126,14 +5104,14 @@ i32.store offset=8 i32.const 16384 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16416 i32.store offset=4 - local.get $4 + local.get $1 i32.const 16416 call $~lib/string/String.__eq i32.eqz @@ -5150,14 +5128,14 @@ i32.store offset=8 i32.const 16448 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16480 i32.store offset=4 - local.get $4 + local.get $1 i32.const 16480 call $~lib/string/String.__eq i32.eqz @@ -5174,14 +5152,14 @@ i32.store offset=8 i32.const 16512 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16544 i32.store offset=4 - local.get $4 + local.get $1 i32.const 16544 call $~lib/string/String.__eq i32.eqz @@ -5198,14 +5176,14 @@ i32.store offset=8 i32.const 16576 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16608 i32.store offset=4 - local.get $4 + local.get $1 i32.const 16608 call $~lib/string/String.__eq i32.eqz @@ -5222,14 +5200,14 @@ i32.store offset=8 i32.const 16640 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16672 i32.store offset=4 - local.get $4 + local.get $1 i32.const 16672 call $~lib/string/String.__eq i32.eqz @@ -5246,14 +5224,14 @@ i32.store offset=8 i32.const 16704 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16736 i32.store offset=4 - local.get $4 + local.get $1 i32.const 16736 call $~lib/string/String.__eq i32.eqz @@ -5270,14 +5248,14 @@ i32.store offset=8 i32.const 16768 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16800 i32.store offset=4 - local.get $4 + local.get $1 i32.const 16800 call $~lib/string/String.__eq i32.eqz @@ -5294,14 +5272,14 @@ i32.store offset=8 i32.const 16832 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16864 i32.store offset=4 - local.get $4 + local.get $1 i32.const 16864 call $~lib/string/String.__eq i32.eqz @@ -5318,14 +5296,14 @@ i32.store offset=8 i32.const 16896 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16928 i32.store offset=4 - local.get $4 + local.get $1 i32.const 16928 call $~lib/string/String.__eq i32.eqz @@ -5342,14 +5320,14 @@ i32.store offset=8 i32.const 16960 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16992 i32.store offset=4 - local.get $4 + local.get $1 i32.const 16992 call $~lib/string/String.__eq i32.eqz @@ -5366,14 +5344,14 @@ i32.store offset=8 i32.const 17024 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17056 i32.store offset=4 - local.get $4 + local.get $1 i32.const 17056 call $~lib/string/String.__eq i32.eqz @@ -5390,14 +5368,14 @@ i32.store offset=8 i32.const 17088 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17120 i32.store offset=4 - local.get $4 + local.get $1 i32.const 17120 call $~lib/string/String.__eq i32.eqz @@ -5414,14 +5392,14 @@ i32.store offset=8 i32.const 17152 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17184 i32.store offset=4 - local.get $4 + local.get $1 i32.const 17184 call $~lib/string/String.__eq i32.eqz @@ -5438,14 +5416,14 @@ i32.store offset=8 i32.const 17216 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17248 i32.store offset=4 - local.get $4 + local.get $1 i32.const 17248 call $~lib/string/String.__eq i32.eqz @@ -5462,14 +5440,14 @@ i32.store offset=8 i32.const 17280 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16352 i32.store offset=4 - local.get $4 + local.get $1 i32.const 16352 call $~lib/string/String.__eq i32.eqz @@ -5486,14 +5464,14 @@ i32.store offset=8 i32.const 17312 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17344 i32.store offset=4 - local.get $4 + local.get $1 i32.const 17344 call $~lib/string/String.__eq i32.eqz @@ -5510,14 +5488,14 @@ i32.store offset=8 i32.const 17376 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17408 i32.store offset=4 - local.get $4 + local.get $1 i32.const 17408 call $~lib/string/String.__eq i32.eqz @@ -5534,14 +5512,14 @@ i32.store offset=8 i32.const 17440 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17472 i32.store offset=4 - local.get $4 + local.get $1 i32.const 17472 call $~lib/string/String.__eq i32.eqz @@ -5558,14 +5536,14 @@ i32.store offset=8 i32.const 17504 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17536 i32.store offset=4 - local.get $4 + local.get $1 i32.const 17536 call $~lib/string/String.__eq i32.eqz @@ -5582,14 +5560,14 @@ i32.store offset=8 i32.const 17568 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17600 i32.store offset=4 - local.get $4 + local.get $1 i32.const 17600 call $~lib/string/String.__eq i32.eqz @@ -5606,14 +5584,14 @@ i32.store offset=8 i32.const 17632 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17664 i32.store offset=4 - local.get $4 + local.get $1 i32.const 17664 call $~lib/string/String.__eq i32.eqz @@ -5630,14 +5608,14 @@ i32.store offset=8 i32.const 17696 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17728 i32.store offset=4 - local.get $4 + local.get $1 i32.const 17728 call $~lib/string/String.__eq i32.eqz @@ -5654,14 +5632,14 @@ i32.store offset=8 i32.const 17760 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17792 i32.store offset=4 - local.get $4 + local.get $1 i32.const 17792 call $~lib/string/String.__eq i32.eqz @@ -5678,14 +5656,14 @@ i32.store offset=8 i32.const 17824 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17856 i32.store offset=4 - local.get $4 + local.get $1 i32.const 17856 call $~lib/string/String.__eq i32.eqz @@ -5702,14 +5680,14 @@ i32.store offset=8 i32.const 17888 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17920 i32.store offset=4 - local.get $4 + local.get $1 i32.const 17920 call $~lib/string/String.__eq i32.eqz @@ -5726,14 +5704,14 @@ i32.store offset=8 i32.const 17952 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17984 i32.store offset=4 - local.get $4 + local.get $1 i32.const 17984 call $~lib/string/String.__eq i32.eqz @@ -5750,14 +5728,14 @@ i32.store offset=8 i32.const 18016 call $~lib/string/String#toLowerCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18048 i32.store offset=4 - local.get $4 + local.get $1 i32.const 18048 call $~lib/string/String.__eq i32.eqz @@ -5774,14 +5752,14 @@ i32.store offset=8 i32.const 18080 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18112 i32.store offset=4 - local.get $4 + local.get $1 i32.const 18112 call $~lib/string/String.__eq i32.eqz @@ -5798,14 +5776,14 @@ i32.store offset=8 i32.const 15328 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18144 i32.store offset=4 - local.get $4 + local.get $1 i32.const 18144 call $~lib/string/String.__eq i32.eqz @@ -5822,14 +5800,14 @@ i32.store offset=8 i32.const 18176 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18208 i32.store offset=4 - local.get $4 + local.get $1 i32.const 18208 call $~lib/string/String.__eq i32.eqz @@ -5846,14 +5824,14 @@ i32.store offset=8 i32.const 18240 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18272 i32.store offset=4 - local.get $4 + local.get $1 i32.const 18272 call $~lib/string/String.__eq i32.eqz @@ -5870,14 +5848,14 @@ i32.store offset=8 i32.const 18304 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18336 i32.store offset=4 - local.get $4 + local.get $1 i32.const 18336 call $~lib/string/String.__eq i32.eqz @@ -5894,14 +5872,14 @@ i32.store offset=8 i32.const 18368 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18400 i32.store offset=4 - local.get $4 + local.get $1 i32.const 18400 call $~lib/string/String.__eq i32.eqz @@ -5918,14 +5896,14 @@ i32.store offset=8 i32.const 18432 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18400 i32.store offset=4 - local.get $4 + local.get $1 i32.const 18400 call $~lib/string/String.__eq i32.eqz @@ -5942,14 +5920,14 @@ i32.store offset=8 i32.const 18464 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18496 i32.store offset=4 - local.get $4 + local.get $1 i32.const 18496 call $~lib/string/String.__eq i32.eqz @@ -5966,14 +5944,14 @@ i32.store offset=8 i32.const 18528 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18560 i32.store offset=4 - local.get $4 + local.get $1 i32.const 18560 call $~lib/string/String.__eq i32.eqz @@ -5990,14 +5968,14 @@ i32.store offset=8 i32.const 18592 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18624 i32.store offset=4 - local.get $4 + local.get $1 i32.const 18624 call $~lib/string/String.__eq i32.eqz @@ -6014,14 +5992,14 @@ i32.store offset=8 i32.const 18656 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18688 i32.store offset=4 - local.get $4 + local.get $1 i32.const 18688 call $~lib/string/String.__eq i32.eqz @@ -6038,14 +6016,14 @@ i32.store offset=8 i32.const 18720 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18752 i32.store offset=4 - local.get $4 + local.get $1 i32.const 18752 call $~lib/string/String.__eq i32.eqz @@ -6062,14 +6040,14 @@ i32.store offset=8 i32.const 18784 call $~lib/string/String#toUpperCase - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18816 i32.store offset=4 - local.get $4 + local.get $1 i32.const 18816 call $~lib/string/String.__eq i32.eqz @@ -6089,17 +6067,17 @@ global.get $~lib/memory/__stack_pointer local.get $6 call $~lib/string/String.fromCodePoint - local.tee $4 + local.tee $1 i32.store offset=16 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 call $~lib/string/String#toLowerCase local.tee $7 i32.store offset=20 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 call $~lib/string/String#toUpperCase - local.tee $4 + local.tee $1 i32.store offset=24 block $__inlined_func$~lib/string/String#codePointAt local.get $7 @@ -6146,7 +6124,7 @@ end local.get $5 i64.extend_i32_s - local.set $3 + local.set $0 block $__inlined_func$~lib/string/String#codePointAt0 local.get $7 i32.const 20 @@ -6193,16 +6171,16 @@ end local.get $5 i64.extend_i32_s - local.tee $0 + local.tee $2 i64.const 0 i64.ge_s if - local.get $0 + local.get $2 i64.const 16 i64.shl - local.get $3 + local.get $0 i64.add - local.set $3 + local.set $0 end block $__inlined_func$~lib/string/String#codePointAt1 local.get $7 @@ -6250,19 +6228,21 @@ end local.get $5 i64.extend_i32_s - local.tee $0 + local.tee $2 i64.const 0 i64.ge_s - if - local.get $0 + if (result i64) + local.get $2 i64.const 32 i64.shl - local.get $3 + local.get $0 i64.add - local.set $3 + else + local.get $0 end + local.set $2 block $__inlined_func$~lib/string/String#codePointAt2 - local.get $4 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -6278,7 +6258,7 @@ local.get $5 i32.const 1 i32.eq - local.get $4 + local.get $1 i32.load16_u local.tee $5 i32.const 64512 @@ -6287,7 +6267,7 @@ i32.ne i32.or br_if $__inlined_func$~lib/string/String#codePointAt2 - local.get $4 + local.get $1 i32.load16_u offset=2 local.tee $7 i32.const 64512 @@ -6308,7 +6288,7 @@ i64.extend_i32_s local.set $0 block $__inlined_func$~lib/string/String#codePointAt3 - local.get $4 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -6325,7 +6305,7 @@ local.get $5 i32.const 2 i32.eq - local.get $4 + local.get $1 i32.load16_u offset=2 local.tee $5 i32.const 64512 @@ -6334,7 +6314,7 @@ i32.ne i32.or br_if $__inlined_func$~lib/string/String#codePointAt3 - local.get $4 + local.get $1 i32.load16_u offset=4 local.tee $7 i32.const 64512 @@ -6353,11 +6333,11 @@ end local.get $5 i64.extend_i32_s - local.tee $1 + local.tee $3 i64.const 0 i64.ge_s if - local.get $1 + local.get $3 i64.const 16 i64.shl local.get $0 @@ -6365,7 +6345,7 @@ local.set $0 end block $__inlined_func$~lib/string/String#codePointAt4 - local.get $4 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -6382,7 +6362,7 @@ local.get $5 i32.const 3 i32.eq - local.get $4 + local.get $1 i32.load16_u offset=4 local.tee $5 i32.const 64512 @@ -6391,15 +6371,15 @@ i32.ne i32.or br_if $__inlined_func$~lib/string/String#codePointAt4 - local.get $4 + local.get $1 i32.load16_u offset=6 - local.tee $4 + local.tee $1 i32.const 64512 i32.and i32.const 56320 i32.ne br_if $__inlined_func$~lib/string/String#codePointAt4 - local.get $4 + local.get $1 local.get $5 i32.const 10 i32.shl @@ -6410,57 +6390,61 @@ end local.get $5 i64.extend_i32_s - local.tee $1 + local.tee $3 i64.const 0 i64.ge_s - if - local.get $1 + if (result i64) + local.get $3 i64.const 32 i64.shl local.get $0 i64.add - local.set $0 + else + local.get $0 end + local.set $3 local.get $6 i32.const 0 call $std/string-casemapping/toLowerCaseFromIndex i64.extend_i32_s - local.set $1 + local.set $0 local.get $6 i32.const 1 call $std/string-casemapping/toLowerCaseFromIndex i64.extend_i32_s - local.tee $2 + local.tee $4 i64.const 0 i64.ge_s if - local.get $2 + local.get $4 i64.const 16 i64.shl - local.get $1 + local.get $0 i64.add - local.set $1 + local.set $0 end local.get $6 i32.const 2 call $std/string-casemapping/toLowerCaseFromIndex i64.extend_i32_s - local.tee $2 + local.tee $4 i64.const 0 i64.ge_s - if - local.get $2 + if (result i64) + local.get $4 i64.const 32 i64.shl - local.get $1 + local.get $0 i64.add - local.set $1 + else + local.get $0 end + local.set $4 local.get $6 i32.const 0 call $std/string-casemapping/toUpperCaseFromIndex i64.extend_i32_s - local.set $2 + local.set $0 local.get $6 i32.const 1 call $std/string-casemapping/toUpperCaseFromIndex @@ -6472,9 +6456,9 @@ local.get $9 i64.const 16 i64.shl - local.get $2 + local.get $0 i64.add - local.set $2 + local.set $0 end local.get $6 i32.const 2 @@ -6487,12 +6471,12 @@ local.get $9 i64.const 32 i64.shl - local.get $2 + local.get $0 i64.add - local.set $2 + local.set $0 end - local.get $1 - local.get $3 + local.get $2 + local.get $4 i64.ne if global.get $~lib/memory/__stack_pointer @@ -6510,20 +6494,20 @@ global.get $~lib/memory/__stack_pointer i32.const 18944 i32.store offset=4 - local.get $3 + local.get $2 call $~lib/number/I64#toString - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store offset=8 i32.const 18944 - local.get $4 + local.get $1 call $~lib/string/String.__concat - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store - local.get $4 + local.get $1 i32.const 0 f64.const 0 f64.const 0 @@ -6534,20 +6518,20 @@ global.get $~lib/memory/__stack_pointer i32.const 20784 i32.store offset=4 - local.get $1 + local.get $4 call $~lib/number/I64#toString - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store offset=8 i32.const 20784 - local.get $4 + local.get $1 call $~lib/string/String.__concat - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store - local.get $4 + local.get $1 i32.const 0 f64.const 0 f64.const 0 @@ -6557,7 +6541,7 @@ call $~lib/builtins/trace end local.get $0 - local.get $2 + local.get $3 i64.ne if global.get $~lib/memory/__stack_pointer @@ -6575,20 +6559,20 @@ global.get $~lib/memory/__stack_pointer i32.const 20944 i32.store offset=4 - local.get $0 + local.get $3 call $~lib/number/I64#toString - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store offset=8 i32.const 20944 - local.get $4 + local.get $1 call $~lib/string/String.__concat - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store - local.get $4 + local.get $1 i32.const 0 f64.const 0 f64.const 0 @@ -6599,20 +6583,20 @@ global.get $~lib/memory/__stack_pointer i32.const 21008 i32.store offset=4 - local.get $2 + local.get $0 call $~lib/number/I64#toString - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store offset=8 i32.const 21008 - local.get $4 + local.get $1 call $~lib/string/String.__concat - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store - local.get $4 + local.get $1 i32.const 0 f64.const 0 f64.const 0 @@ -6687,22 +6671,22 @@ local.tee $6 i32.store loop $for-loop|0 - local.get $4 + local.get $3 local.get $7 i32.lt_u if - local.get $4 + local.get $3 i32.const 1 i32.shl local.get $0 i32.add i32.load16_u - local.tee $3 + local.tee $2 i32.const 7 i32.shr_u if block $for-continue|0 - local.get $3 + local.get $2 i32.const 55295 i32.sub i32.const 1025 @@ -6710,30 +6694,30 @@ local.get $7 i32.const 1 i32.sub - local.get $4 + local.get $3 i32.gt_u i32.and if - local.get $4 + local.get $3 i32.const 1 i32.shl local.get $0 i32.add i32.load16_u offset=2 - local.tee $2 + local.tee $4 i32.const 56319 i32.sub i32.const 1025 i32.lt_u if - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 - local.get $2 + local.set $3 + local.get $4 i32.const 1023 i32.and - local.get $3 + local.get $2 local.tee $1 i32.const 1023 i32.and @@ -6742,7 +6726,7 @@ i32.or i32.const 65536 i32.add - local.tee $3 + local.tee $2 i32.const 131072 i32.ge_u if @@ -6751,7 +6735,7 @@ i32.shl local.get $6 i32.add - local.get $2 + local.get $4 i32.const 16 i32.shl local.get $1 @@ -6765,7 +6749,7 @@ end end end - local.get $3 + local.get $2 i32.const 304 i32.eq if @@ -6781,7 +6765,7 @@ i32.add local.set $5 else - local.get $3 + local.get $2 i32.const 931 i32.eq if @@ -6798,31 +6782,31 @@ if (result i32) block $~lib/util/string/isFinalSigma|inlined.0 (result i32) i32.const 0 - local.set $2 + local.set $1 i32.const 0 - local.get $4 - local.tee $3 + local.get $3 + local.tee $2 i32.const 30 i32.sub - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 i32.const 0 i32.lt_s select local.set $8 loop $while-continue|1 - local.get $3 + local.get $2 local.get $8 i32.gt_s if i32.const -1 - local.set $1 + local.set $4 block $~lib/util/string/codePointBefore|inlined.0 - local.get $3 + local.get $2 i32.const 0 i32.le_s br_if $~lib/util/string/codePointBefore|inlined.0 - local.get $3 + local.get $2 i32.const 1 i32.sub i32.const 1 @@ -6835,7 +6819,7 @@ i32.and i32.const 56320 i32.eq - local.get $3 + local.get $2 i32.const 2 i32.sub i32.const 0 @@ -6845,7 +6829,7 @@ local.get $10 i32.const 1023 i32.and - local.get $3 + local.get $2 i32.const 2 i32.sub i32.const 1 @@ -6861,7 +6845,7 @@ i32.add i32.const 65536 i32.add - local.set $1 + local.set $4 local.get $9 i32.const 64512 i32.and @@ -6877,13 +6861,13 @@ i32.const 55296 i32.eq select - local.set $1 + local.set $4 end - local.get $1 + local.get $4 i32.const 918000 i32.lt_u if (result i32) - local.get $1 + local.get $4 i32.const 8 i32.shr_u i32.const 7212 @@ -6893,14 +6877,14 @@ i32.shl i32.const 7212 i32.add - local.get $1 + local.get $4 i32.const 255 i32.and i32.const 3 i32.shr_u i32.add i32.load8_u - local.get $1 + local.get $4 i32.const 7 i32.and i32.shr_u @@ -6912,11 +6896,11 @@ i32.eqz if i32.const 0 - local.get $1 + local.get $4 i32.const 127370 i32.lt_u if (result i32) - local.get $1 + local.get $4 i32.const 8 i32.shr_u i32.const 10220 @@ -6926,14 +6910,14 @@ i32.shl i32.const 10220 i32.add - local.get $1 + local.get $4 i32.const 255 i32.and i32.const 3 i32.shr_u i32.add i32.load8_u - local.get $1 + local.get $4 i32.const 7 i32.and i32.shr_u @@ -6946,28 +6930,28 @@ br_if $~lib/util/string/isFinalSigma|inlined.0 drop i32.const 1 - local.set $2 + local.set $1 end - local.get $3 - local.get $1 + local.get $2 + local.get $4 i32.const 65536 i32.ge_s i32.const 1 i32.add i32.sub - local.set $3 + local.set $2 br $while-continue|1 end end i32.const 0 - local.get $2 + local.get $1 i32.eqz br_if $~lib/util/string/isFinalSigma|inlined.0 drop - local.get $4 + local.get $3 i32.const 1 i32.add - local.tee $3 + local.tee $2 i32.const 30 i32.add local.tee $1 @@ -6976,13 +6960,13 @@ local.get $7 i32.lt_s select - local.set $2 + local.set $4 loop $while-continue|2 local.get $2 - local.get $3 - i32.gt_s + local.get $4 + i32.lt_s if - local.get $3 + local.get $2 i32.const 1 i32.shl local.get $0 @@ -6994,13 +6978,13 @@ i32.const 55296 i32.eq local.get $7 - local.get $3 + local.get $2 i32.const 1 i32.add i32.ne i32.and if - local.get $3 + local.get $2 i32.const 1 i32.shl local.get $0 @@ -7092,9 +7076,9 @@ i32.ge_u i32.const 1 i32.add - local.get $3 + local.get $2 i32.add - local.set $3 + local.set $2 br $while-continue|2 end end @@ -7106,7 +7090,7 @@ select i32.store16 else - local.get $3 + local.get $2 i32.const 9398 i32.sub i32.const 25 @@ -7117,17 +7101,17 @@ i32.shl local.get $6 i32.add - local.get $3 + local.get $2 i32.const 26 i32.add i32.store16 else - local.get $3 + local.get $2 i32.const 0 call $~lib/util/casemap/casemap i32.const 2097151 i32.and - local.tee $3 + local.tee $1 i32.const 65536 i32.lt_u if @@ -7136,7 +7120,7 @@ i32.shl local.get $6 i32.add - local.get $3 + local.get $1 i32.store16 else local.get $5 @@ -7144,15 +7128,15 @@ i32.shl local.get $6 i32.add - local.get $3 + local.get $1 i32.const 65536 i32.sub - local.tee $3 + local.tee $1 i32.const 10 i32.shr_u i32.const 55296 i32.or - local.get $3 + local.get $1 i32.const 1023 i32.and i32.const 56320 @@ -7176,16 +7160,16 @@ i32.shl local.get $6 i32.add - local.get $3 + local.get $2 i32.const 7084 i32.add i32.load8_u i32.store16 end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 local.get $5 i32.const 1 i32.add diff --git a/tests/compiler/std/string-encoding.optimized.wat b/tests/compiler/std/string-encoding.optimized.wat index fbfa7377b6..6741c3ba0c 100644 --- a/tests/compiler/std/string-encoding.optimized.wat +++ b/tests/compiler/std/string-encoding.optimized.wat @@ -387,7 +387,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -398,7 +398,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -418,37 +418,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -464,7 +464,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -474,20 +474,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -515,7 +515,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -1849,17 +1849,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -2038,39 +2038,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2078,35 +2073,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2114,55 +2105,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -2183,59 +2168,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -2252,7 +2230,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -2263,11 +2241,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -2281,17 +2259,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -2522,7 +2500,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -2536,7 +2514,7 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) local.get $0 - local.tee $3 + local.tee $2 i32.const 7 i32.and local.get $1 @@ -2544,7 +2522,7 @@ i32.and i32.or i32.const 1 - local.get $2 + local.get $3 local.tee $0 i32.const 4 i32.ge_u @@ -2552,16 +2530,16 @@ i32.eqz if loop $do-loop|0 - local.get $3 + local.get $2 i64.load local.get $1 i64.load i64.eq if - local.get $3 + local.get $2 i32.const 8 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 8 i32.add @@ -2578,29 +2556,29 @@ end loop $while-continue|1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.sub local.set $0 - local.get $2 + local.get $3 if - local.get $3 + local.get $2 i32.load16_u local.tee $4 local.get $1 i32.load16_u - local.tee $2 + local.tee $3 i32.ne if local.get $4 - local.get $2 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add @@ -4565,22 +4543,22 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i32.const 0 i32.store - local.get $4 + local.get $3 local.get $0 local.get $1 call $~lib/string/String.UTF8.byteLength i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $4 i32.store local.get $0 - local.set $4 - local.get $5 - local.set $0 + local.set $3 local.get $4 + local.set $0 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -4588,38 +4566,38 @@ i32.shr_u i32.const 1 i32.shl - local.get $4 + local.get $3 i32.add local.set $6 loop $while-continue|0 - local.get $4 + local.get $3 local.get $6 i32.lt_u if - local.get $4 + local.get $3 i32.load16_u - local.tee $3 + local.tee $5 i32.const 128 i32.lt_u if (result i32) local.get $0 - local.get $3 + local.get $5 i32.store8 local.get $0 i32.const 1 i32.add else - local.get $3 + local.get $5 i32.const 2048 i32.lt_u if (result i32) local.get $0 - local.get $3 + local.get $5 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $3 + local.get $5 i32.const 63 i32.and i32.const 128 @@ -4632,23 +4610,23 @@ i32.const 2 i32.add else - local.get $3 + local.get $5 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $3 + local.get $5 i32.const 56320 i32.lt_u local.get $6 - local.get $4 + local.get $3 i32.const 2 i32.add i32.gt_u i32.and if - local.get $4 + local.get $3 i32.load16_u offset=2 local.tee $7 i32.const 64512 @@ -4657,7 +4635,7 @@ i32.eq if local.get $0 - local.get $3 + local.get $5 i32.const 1023 i32.and i32.const 10 @@ -4668,14 +4646,14 @@ i32.const 1023 i32.and i32.or - local.tee $3 + local.tee $5 i32.const 63 i32.and i32.const 128 i32.or i32.const 24 i32.shl - local.get $3 + local.get $5 i32.const 6 i32.shr_u i32.const 63 @@ -4685,7 +4663,7 @@ i32.const 16 i32.shl i32.or - local.get $3 + local.get $5 i32.const 12 i32.shr_u i32.const 63 @@ -4695,7 +4673,7 @@ i32.const 8 i32.shl i32.or - local.get $3 + local.get $5 i32.const 18 i32.shr_u i32.const 240 @@ -4706,10 +4684,10 @@ i32.const 4 i32.add local.set $0 - local.get $4 + local.get $3 i32.const 4 i32.add - local.set $4 + local.set $3 br $while-continue|0 end end @@ -4728,17 +4706,17 @@ end i32.const 65533 else - local.get $3 + local.get $5 end - local.set $3 + local.set $5 end local.get $0 - local.get $3 + local.get $5 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $3 + local.get $5 i32.const 6 i32.shr_u i32.const 63 @@ -4750,7 +4728,7 @@ i32.or i32.store16 local.get $0 - local.get $3 + local.get $5 i32.const 63 i32.and i32.const 128 @@ -4762,10 +4740,10 @@ end end local.set $0 - local.get $4 + local.get $3 i32.const 2 i32.add - local.set $4 + local.set $3 br $while-continue|0 end end @@ -4779,7 +4757,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $4 ) (func $~lib/string/String.UTF8.decodeUnsafe (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) diff --git a/tests/compiler/std/string.optimized.wat b/tests/compiler/std/string.optimized.wat index 97a6899edb..089815cf53 100644 --- a/tests/compiler/std/string.optimized.wat +++ b/tests/compiler/std/string.optimized.wat @@ -1530,7 +1530,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -1541,7 +1541,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -1561,37 +1561,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -1607,7 +1607,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -1617,20 +1617,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -1658,7 +1658,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -3055,17 +3055,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -3244,39 +3244,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -3284,35 +3279,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -3320,55 +3311,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -3389,59 +3374,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -3458,7 +3436,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -3469,11 +3447,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -3487,17 +3465,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -4259,7 +4237,7 @@ return end i32.const 4240 - local.set $2 + local.set $3 i32.const 4240 i32.load16_u local.set $0 @@ -4327,10 +4305,10 @@ i32.const 0 end if - local.get $2 + local.get $3 i32.const 2 i32.add - local.tee $2 + local.tee $3 i32.load16_u local.set $0 local.get $1 @@ -4366,10 +4344,10 @@ i32.eq select local.set $5 - local.get $2 + local.get $3 i32.const 2 i32.add - local.tee $2 + local.tee $3 i32.load16_u else local.get $0 @@ -4384,7 +4362,7 @@ block $break|1 block $case2|1 block $case1|1 - local.get $2 + local.get $3 i32.load16_u offset=2 i32.const 32 i32.or @@ -4402,47 +4380,47 @@ br_if $case2|1 br $break|1 end - local.get $2 + local.get $3 i32.const 4 i32.add - local.set $2 + local.set $3 local.get $1 i32.const 2 i32.sub local.set $1 i32.const 2 - local.set $3 + local.set $2 br $break|1 end - local.get $2 + local.get $3 i32.const 4 i32.add - local.set $2 + local.set $3 local.get $1 i32.const 2 i32.sub local.set $1 i32.const 8 - local.set $3 + local.set $2 br $break|1 end - local.get $2 + local.get $3 i32.const 4 i32.add - local.set $2 + local.set $3 local.get $1 i32.const 2 i32.sub local.set $1 i32.const 16 - local.set $3 + local.set $2 end end - local.get $3 + local.get $2 i32.const 10 - local.get $3 + local.get $2 select - local.set $3 + local.set $2 loop $while-continue|2 block $while-break|2 local.get $1 @@ -4452,7 +4430,7 @@ local.set $1 local.get $0 if - local.get $2 + local.get $3 i32.load16_u local.tee $0 i32.const 48 @@ -4487,7 +4465,7 @@ end end local.tee $0 - local.get $3 + local.get $2 i32.ge_u if local.get $4 @@ -4499,15 +4477,15 @@ br $while-break|2 end local.get $0 - local.get $3 + local.get $2 local.get $4 i32.mul i32.add local.set $4 - local.get $2 + local.get $3 i32.const 2 i32.add - local.set $2 + local.set $3 br $while-continue|2 end end @@ -4534,7 +4512,7 @@ return end i32.const 4288 - local.set $2 + local.set $3 i32.const 4288 i32.load16_u local.set $0 @@ -4602,10 +4580,10 @@ i32.const 0 end if - local.get $2 + local.get $3 i32.const 2 i32.add - local.tee $2 + local.tee $3 i32.load16_u local.set $0 local.get $1 @@ -4641,10 +4619,10 @@ i32.eq select local.set $5 - local.get $2 + local.get $3 i32.const 2 i32.add - local.tee $2 + local.tee $3 i32.load16_u else local.get $0 @@ -4659,7 +4637,7 @@ block $break|1 block $case2|1 block $case1|1 - local.get $2 + local.get $3 i32.load16_u offset=2 i32.const 32 i32.or @@ -4677,47 +4655,47 @@ br_if $case2|1 br $break|1 end - local.get $2 + local.get $3 i32.const 4 i32.add - local.set $2 + local.set $3 local.get $1 i32.const 2 i32.sub local.set $1 i32.const 2 - local.set $3 + local.set $2 br $break|1 end - local.get $2 + local.get $3 i32.const 4 i32.add - local.set $2 + local.set $3 local.get $1 i32.const 2 i32.sub local.set $1 i32.const 8 - local.set $3 + local.set $2 br $break|1 end - local.get $2 + local.get $3 i32.const 4 i32.add - local.set $2 + local.set $3 local.get $1 i32.const 2 i32.sub local.set $1 i32.const 16 - local.set $3 + local.set $2 end end - local.get $3 + local.get $2 i32.const 10 - local.get $3 + local.get $2 select - local.set $3 + local.set $2 loop $while-continue|2 block $while-break|2 local.get $1 @@ -4727,7 +4705,7 @@ local.set $1 local.get $0 if - local.get $2 + local.get $3 i32.load16_u local.tee $0 i32.const 48 @@ -4762,7 +4740,7 @@ end end local.tee $0 - local.get $3 + local.get $2 i32.ge_u if local.get $4 @@ -4775,16 +4753,16 @@ end local.get $0 i64.extend_i32_u - local.get $3 + local.get $2 i64.extend_i32_s local.get $4 i64.mul i64.add local.set $4 - local.get $2 + local.get $3 i32.const 2 i32.add - local.set $2 + local.set $3 br $while-continue|2 end end @@ -6273,7 +6251,7 @@ local.get $2 i32.const 4 i32.sub - local.tee $4 + local.tee $3 i32.const 1 i32.shl local.get $0 @@ -6287,7 +6265,7 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $3 + local.tee $4 i32.const 10000 i32.rem_u local.tee $2 @@ -6310,7 +6288,7 @@ i64.shl i64.or i64.store - local.get $4 + local.get $3 i32.const 4 i32.sub local.tee $2 @@ -6318,7 +6296,7 @@ i32.shl local.get $0 i32.add - local.get $3 + local.get $4 i32.const 10000 i32.div_u local.tee $3 @@ -6925,82 +6903,82 @@ i32.const 101 i32.store16 offset=2 local.get $0 - local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $1 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $0 + local.get $1 i32.sub - local.set $0 + local.set $1 end - local.get $0 + local.get $1 + local.tee $4 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $4 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $4 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $4 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $4 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $4 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $4 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $4 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $4 i32.const 100000000 i32.ge_u i32.add end end local.set $4 - local.get $0 + local.get $1 local.get $4 i32.const 1 i32.add - local.tee $0 + local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $0 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.add else @@ -7023,86 +7001,87 @@ local.get $0 local.get $2 i32.add - local.tee $2 + local.tee $0 i32.const 101 i32.store16 offset=2 - local.get $2 + local.get $0 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $2 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $0 + local.get $2 i32.sub - local.set $0 + local.set $2 end - local.get $0 + local.get $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $5 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $5 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $5 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $5 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $5 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $5 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $5 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $5 i32.const 100000000 i32.ge_u i32.add end end local.set $5 - local.get $0 + local.get $2 local.get $5 i32.const 1 i32.add - local.tee $0 + local.tee $2 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $0 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 - local.get $0 local.get $1 + local.get $2 i32.add i32.const 2 i32.add @@ -7436,20 +7415,21 @@ return end local.get $0 - i32.load offset=4 local.tee $1 + i32.load offset=4 + local.tee $2 local.get $0 i32.load offset=12 i32.const 2 i32.shl i32.add - local.set $2 + local.set $0 loop $while-continue|0 - local.get $1 + local.get $0 local.get $2 - i32.lt_u + i32.gt_u if - local.get $1 + local.get $2 i32.load local.tee $3 if @@ -7459,14 +7439,14 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $1 + local.get $2 i32.const 4 i32.add - local.set $1 + local.set $2 br $while-continue|0 end end - local.get $0 + local.get $1 i32.load local.tee $0 if @@ -23009,7 +22989,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $9 + local.tee $7 local.get $0 i32.const 20 i32.sub @@ -23020,7 +23000,7 @@ i32.ge_u if local.get $5 - local.get $9 + local.get $7 i32.ge_u if local.get $2 @@ -23039,15 +23019,15 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.set $4 - local.get $9 + local.set $3 + local.get $7 i32.eqz if - local.get $4 + local.get $3 i32.eqz br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 local.get $5 i32.const 1 i32.add @@ -23058,27 +23038,27 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $6 i32.store - local.get $3 + local.get $6 local.get $2 - local.get $4 + local.get $3 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $4 + local.get $3 local.set $1 loop $for-loop|0 + local.get $4 local.get $5 - local.get $11 - i32.gt_u + i32.lt_u if local.get $1 i32.const 1 i32.shl - local.get $3 + local.get $6 i32.add - local.get $11 + local.get $4 i32.const 1 i32.shl local.get $0 @@ -23091,21 +23071,21 @@ local.tee $1 i32.const 1 i32.shl - local.get $3 + local.get $6 i32.add local.get $2 - local.get $4 + local.get $3 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $1 - local.get $4 + local.get $3 i32.add local.set $1 - local.get $11 + local.get $4 i32.const 1 i32.add - local.set $11 + local.set $4 br $for-loop|0 end end @@ -23113,49 +23093,49 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $6 return end - local.get $4 - local.get $9 + local.get $3 + local.get $7 i32.eq if global.get $~lib/memory/__stack_pointer local.get $5 i32.const 1 i32.shl - local.tee $5 + local.tee $4 i32.const 1 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $5 i32.store - local.get $3 - local.get $0 local.get $5 + local.get $0 + local.get $4 call $~lib/memory/memory.copy loop $while-continue|1 local.get $0 local.get $1 - local.get $7 + local.get $9 call $~lib/string/String#indexOf - local.tee $5 + local.tee $4 i32.const -1 i32.xor if - local.get $5 + local.get $4 i32.const 1 i32.shl - local.get $3 + local.get $5 i32.add local.get $2 - local.get $4 + local.get $3 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $5 - local.get $9 + local.get $4 + local.get $7 i32.add - local.set $7 + local.set $9 br $while-continue|1 end end @@ -23163,23 +23143,23 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $5 return end local.get $5 - local.set $3 + local.set $4 loop $while-continue|2 local.get $0 local.get $1 - local.get $7 + local.get $9 call $~lib/string/String#indexOf - local.tee $10 + local.tee $11 i32.const -1 i32.xor if - local.get $6 + local.get $10 if (result i32) - local.get $6 + local.get $10 i32.const 20 i32.sub i32.load offset=16 @@ -23196,91 +23176,91 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $10 i32.store offset=4 end - local.get $3 local.get $4 + local.get $3 local.get $8 - local.get $10 - local.get $7 + local.get $11 + local.get $9 i32.sub - local.tee $11 + local.tee $6 i32.add i32.add i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $6 - local.get $3 + local.get $10 + local.get $4 i32.const 1 i32.shl - local.tee $3 + local.tee $4 i32.const 1 i32.shl call $~lib/rt/itcms/__renew - local.tee $6 + local.tee $10 i32.store offset=4 end local.get $8 i32.const 1 i32.shl - local.get $6 + local.get $10 i32.add - local.get $7 + local.get $9 i32.const 1 i32.shl local.get $0 i32.add - local.get $11 + local.get $6 i32.const 1 i32.shl call $~lib/memory/memory.copy + local.get $6 local.get $8 - local.get $11 i32.add - local.tee $11 + local.tee $6 i32.const 1 i32.shl - local.get $6 + local.get $10 i32.add local.get $2 - local.get $4 + local.get $3 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $4 - local.get $11 + local.get $3 + local.get $6 i32.add local.set $8 - local.get $9 - local.get $10 + local.get $7 + local.get $11 i32.add - local.set $7 + local.set $9 br $while-continue|2 end end - local.get $6 + local.get $10 if - local.get $3 + local.get $4 local.get $8 local.get $5 - local.get $7 + local.get $9 i32.sub local.tee $1 i32.add i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $6 - local.get $3 + local.get $10 + local.get $4 i32.const 1 i32.shl - local.tee $3 + local.tee $4 i32.const 1 i32.shl call $~lib/rt/itcms/__renew - local.tee $6 + local.tee $10 i32.store offset=4 end local.get $1 @@ -23288,9 +23268,9 @@ local.get $8 i32.const 1 i32.shl - local.get $6 + local.get $10 i32.add - local.get $7 + local.get $9 i32.const 1 i32.shl local.get $0 @@ -23300,7 +23280,7 @@ i32.shl call $~lib/memory/memory.copy end - local.get $3 + local.get $4 local.get $1 local.get $8 i32.add @@ -23308,19 +23288,19 @@ i32.gt_u if global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $10 local.get $0 i32.const 1 i32.shl call $~lib/rt/itcms/__renew - local.tee $6 + local.tee $10 i32.store offset=4 end global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $10 return end global.get $~lib/memory/__stack_pointer diff --git a/tests/compiler/std/symbol.optimized.wat b/tests/compiler/std/symbol.optimized.wat index 283a620c76..e5a0779f40 100644 --- a/tests/compiler/std/symbol.optimized.wat +++ b/tests/compiler/std/symbol.optimized.wat @@ -603,7 +603,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -614,7 +614,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -634,37 +634,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -680,7 +680,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -690,20 +690,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -731,7 +731,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -2026,7 +2026,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -2040,7 +2040,7 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) local.get $0 - local.tee $3 + local.tee $2 i32.const 7 i32.and local.get $1 @@ -2048,7 +2048,7 @@ i32.and i32.or i32.const 1 - local.get $2 + local.get $3 local.tee $0 i32.const 4 i32.ge_u @@ -2056,16 +2056,16 @@ i32.eqz if loop $do-loop|0 - local.get $3 + local.get $2 i64.load local.get $1 i64.load i64.eq if - local.get $3 + local.get $2 i32.const 8 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 8 i32.add @@ -2082,29 +2082,29 @@ end loop $while-continue|1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.sub local.set $0 - local.get $2 + local.get $3 if - local.get $3 + local.get $2 i32.load16_u local.tee $4 local.get $1 i32.load16_u - local.tee $2 + local.tee $3 i32.ne if local.get $4 - local.get $2 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add @@ -2459,17 +2459,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -2648,39 +2648,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2688,35 +2683,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2724,55 +2715,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -2793,59 +2778,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -2862,7 +2840,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -2873,11 +2851,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -2891,17 +2869,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -3472,49 +3450,49 @@ i32.const 24 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 if - local.get $1 local.get $0 + local.get $1 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $0 i32.const 3 i32.store offset=4 - local.get $1 + local.get $0 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $1 i32.store offset=8 - local.get $0 + local.get $1 if - local.get $1 local.get $0 + local.get $1 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $0 i32.const 4 i32.store offset=12 - local.get $1 + local.get $0 i32.const 0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 global.set $~lib/symbol/stringToId global.get $~lib/memory/__stack_pointer i32.const 4 @@ -3532,57 +3510,57 @@ i32.const 24 i32.const 4 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 if - local.get $1 local.get $0 + local.get $1 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $0 i32.const 3 i32.store offset=4 - local.get $1 + local.get $0 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $1 i32.store offset=8 - local.get $0 + local.get $1 if - local.get $1 local.get $0 + local.get $1 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $0 i32.const 4 i32.store offset=12 - local.get $1 + local.get $0 i32.const 0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 global.set $~lib/symbol/idToString end global.get $~lib/symbol/nextId - local.tee $2 + local.tee $1 i32.const 1 i32.add global.set $~lib/symbol/nextId - local.get $2 + local.get $1 i32.eqz if unreachable @@ -3590,7 +3568,7 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $~lib/symbol/stringToId - local.tee $9 + local.tee $4 i32.store local.get $0 i32.const 4 @@ -3603,26 +3581,26 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $9 + local.get $4 i32.const 1056 call $~lib/util/hash/HASH<~lib/string/String> - local.tee $8 + local.tee $5 call $~lib/map/Map<~lib/string/String,usize>#find local.tee $0 if local.get $0 - local.get $2 + local.get $1 i32.store offset=4 else - local.get $9 + local.get $4 i32.load offset=16 - local.get $9 + local.get $4 i32.load offset=12 i32.eq if - local.get $9 + local.get $4 i32.load offset=20 - local.get $9 + local.get $4 i32.load offset=12 i32.const 3 i32.mul @@ -3630,17 +3608,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $9 + local.get $4 i32.load offset=4 else - local.get $9 + local.get $4 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $7 + local.set $6 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -3657,14 +3635,14 @@ i32.const 0 i32.store offset=8 local.get $0 - local.get $7 + local.get $6 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -3672,59 +3650,59 @@ i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $8 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $9 + local.get $4 i32.load offset=8 - local.tee $10 - local.get $9 + local.tee $3 + local.get $4 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $4 - local.get $1 + local.set $9 + local.get $2 local.set $0 loop $while-continue|0 - local.get $4 - local.get $10 + local.get $3 + local.get $9 i32.ne if - local.get $10 + local.get $3 i32.load offset=8 i32.const 1 i32.and i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $3 i32.load - local.tee $3 + local.tee $10 i32.store offset=8 local.get $0 - local.get $3 + local.get $10 i32.store local.get $0 - local.get $10 + local.get $3 i32.load offset=4 i32.store offset=4 local.get $0 - local.get $3 + local.get $10 call $~lib/util/hash/HASH<~lib/string/String> - local.get $7 + local.get $6 i32.and i32.const 2 i32.shl - local.get $6 + local.get $7 i32.add - local.tee $3 + local.tee $10 i32.load i32.store offset=8 - local.get $3 + local.get $10 local.get $0 i32.store local.get $0 @@ -3732,41 +3710,41 @@ i32.add local.set $0 end - local.get $10 + local.get $3 i32.const 12 i32.add - local.set $10 + local.set $3 br $while-continue|0 end end - local.get $9 - local.get $6 + local.get $4 + local.get $7 i32.store - local.get $6 + local.get $7 if - local.get $9 - local.get $6 + local.get $4 + local.get $7 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 - local.get $7 + local.get $4 + local.get $6 i32.store offset=4 - local.get $9 - local.get $1 + local.get $4 + local.get $2 i32.store offset=8 - local.get $1 + local.get $2 if - local.get $9 - local.get $1 + local.get $4 + local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 - local.get $5 + local.get $4 + local.get $8 i32.store offset=12 - local.get $9 - local.get $9 + local.get $4 + local.get $4 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -3775,53 +3753,53 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.load offset=8 - local.tee $1 + local.tee $0 i32.store - local.get $9 - local.get $9 + local.get $4 + local.get $4 i32.load offset=16 - local.tee $0 + local.tee $2 i32.const 1 i32.add i32.store offset=16 - local.get $0 + local.get $2 i32.const 12 i32.mul - local.get $1 + local.get $0 i32.add - local.tee $1 + local.tee $0 i32.const 1056 i32.store - local.get $9 + local.get $4 i32.const 1056 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link + local.get $0 local.get $1 - local.get $2 i32.store offset=4 - local.get $9 - local.get $9 + local.get $4 + local.get $4 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $1 - local.get $9 + local.get $0 + local.get $4 i32.load - local.get $9 + local.get $4 i32.load offset=4 - local.get $8 + local.get $5 i32.and i32.const 2 i32.shl i32.add - local.tee $0 + local.tee $2 i32.load i32.store offset=8 + local.get $2 local.get $0 - local.get $1 i32.store end global.get $~lib/memory/__stack_pointer @@ -3831,7 +3809,7 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $~lib/symbol/idToString - local.tee $9 + local.tee $4 i32.store local.get $0 i32.const 4 @@ -3844,9 +3822,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $9 + local.get $4 i32.load - local.get $2 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -3874,8 +3852,8 @@ i32.shr_u local.get $0 i32.xor - local.tee $8 - local.get $9 + local.tee $5 + local.get $4 i32.load offset=4 i32.and i32.const 2 @@ -3889,19 +3867,19 @@ if local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $1 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $1 + local.get $2 i32.const -2 i32.and local.set $0 @@ -3916,20 +3894,20 @@ local.get $0 i32.const 1056 i32.store offset=4 - local.get $9 + local.get $4 i32.const 1056 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link else - local.get $9 + local.get $4 i32.load offset=16 - local.get $9 + local.get $4 i32.load offset=12 i32.eq if - local.get $9 + local.get $4 i32.load offset=20 - local.get $9 + local.get $4 i32.load offset=12 i32.const 3 i32.mul @@ -3937,17 +3915,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $9 + local.get $4 i32.load offset=4 else - local.get $9 + local.get $4 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $7 + local.set $6 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -3961,14 +3939,14 @@ i64.const 0 i64.store local.get $0 - local.get $7 + local.get $6 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -3976,45 +3954,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $8 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $9 + local.get $4 i32.load offset=8 - local.tee $10 - local.get $9 + local.tee $3 + local.get $4 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $4 - local.get $1 + local.set $9 + local.get $2 local.set $0 loop $while-continue|01 - local.get $4 - local.get $10 + local.get $3 + local.get $9 i32.ne if - local.get $10 + local.get $3 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $10 + local.get $3 i32.load - local.tee $3 + local.tee $10 i32.store local.get $0 - local.get $10 + local.get $3 i32.load offset=4 i32.store offset=4 local.get $0 - local.get $3 + local.get $10 i32.const -1028477379 i32.mul i32.const 374761397 @@ -4023,35 +4001,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $10 i32.const 15 i32.shr_u - local.get $3 + local.get $10 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $10 i32.const 13 i32.shr_u - local.get $3 + local.get $10 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $10 i32.const 16 i32.shr_u - local.get $3 + local.get $10 i32.xor - local.get $7 + local.get $6 i32.and i32.const 2 i32.shl - local.get $6 + local.get $7 i32.add - local.tee $3 + local.tee $10 i32.load i32.store offset=8 - local.get $3 + local.get $10 local.get $0 i32.store local.get $0 @@ -4059,41 +4037,41 @@ i32.add local.set $0 end - local.get $10 + local.get $3 i32.const 12 i32.add - local.set $10 + local.set $3 br $while-continue|01 end end - local.get $9 - local.get $6 + local.get $4 + local.get $7 i32.store - local.get $6 + local.get $7 if - local.get $9 - local.get $6 + local.get $4 + local.get $7 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 - local.get $7 + local.get $4 + local.get $6 i32.store offset=4 - local.get $9 - local.get $1 + local.get $4 + local.get $2 i32.store offset=8 - local.get $1 + local.get $2 if - local.get $9 - local.get $1 + local.get $4 + local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 - local.get $5 + local.get $4 + local.get $8 i32.store offset=12 - local.get $9 - local.get $9 + local.get $4 + local.get $4 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -4102,53 +4080,53 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $4 i32.load offset=8 - local.tee $1 + local.tee $0 i32.store - local.get $9 - local.get $9 + local.get $4 + local.get $4 i32.load offset=16 - local.tee $0 + local.tee $2 i32.const 1 i32.add i32.store offset=16 - local.get $0 + local.get $2 i32.const 12 i32.mul - local.get $1 + local.get $0 i32.add - local.tee $1 - local.get $2 - i32.store + local.tee $0 local.get $1 + i32.store + local.get $0 i32.const 1056 i32.store offset=4 - local.get $9 + local.get $4 i32.const 1056 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $9 - local.get $9 + local.get $4 + local.get $4 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $1 - local.get $9 + local.get $0 + local.get $4 i32.load - local.get $9 + local.get $4 i32.load offset=4 - local.get $8 + local.get $5 i32.and i32.const 2 i32.shl i32.add - local.tee $0 + local.tee $2 i32.load i32.store offset=8 + local.get $2 local.get $0 - local.get $1 i32.store end global.get $~lib/memory/__stack_pointer @@ -4159,7 +4137,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 return end i32.const 19104 diff --git a/tests/compiler/std/typedarray.optimized.wat b/tests/compiler/std/typedarray.optimized.wat index 698ab1f235..9b5b0965d0 100644 --- a/tests/compiler/std/typedarray.optimized.wat +++ b/tests/compiler/std/typedarray.optimized.wat @@ -1145,7 +1145,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -1156,7 +1156,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -1176,37 +1176,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -1222,7 +1222,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -1232,20 +1232,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -1273,7 +1273,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -2988,41 +2988,41 @@ (func $~lib/util/sort/insertionSort (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (local $5 f64) (local $6 f64) - (local $7 f64) - (local $8 i32) + (local $7 i32) + (local $8 f64) local.get $3 local.get $2 local.get $1 i32.sub i32.const 1 i32.add - local.tee $8 + local.tee $7 local.get $3 i32.sub i32.const 1 i32.and i32.sub - local.get $8 + local.get $7 i32.const 1 i32.and local.get $3 select local.get $1 i32.add - local.set $8 + local.set $7 loop $for-loop|0 local.get $2 - local.get $8 + local.get $7 i32.ge_s if - local.get $8 + local.get $7 i32.const 3 i32.shl local.get $0 i32.add local.tee $3 f64.load offset=8 - local.tee $7 + local.tee $8 local.set $6 local.get $3 f64.load @@ -3030,7 +3030,7 @@ i32.const 2 global.set $~argumentsLength local.get $5 - local.get $7 + local.get $8 local.get $4 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -3039,10 +3039,10 @@ if local.get $5 local.set $6 - local.get $7 + local.get $8 local.set $5 end - local.get $8 + local.get $7 i32.const 1 i32.sub local.set $3 @@ -3058,10 +3058,10 @@ local.get $0 i32.add f64.load - local.set $7 + local.set $8 i32.const 2 global.set $~argumentsLength - local.get $7 + local.get $8 local.get $5 local.get $4 i32.load @@ -3074,7 +3074,7 @@ i32.shl local.get $0 i32.add - local.get $7 + local.get $8 f64.store offset=16 local.get $3 i32.const 1 @@ -3136,10 +3136,10 @@ i32.add local.get $6 f64.store offset=8 - local.get $8 + local.get $7 i32.const 2 i32.add - local.set $8 + local.set $7 br $for-loop|0 end end @@ -3670,27 +3670,25 @@ i32.wrap_i64 i32.clz local.set $1 - local.get $4 - local.set $8 loop $for-loop|3 local.get $1 - local.get $8 + local.get $4 i32.lt_u if - local.get $8 + local.get $4 i32.const 2 i32.shl local.get $14 i32.add i32.load - local.tee $4 + local.tee $8 i32.const -1 i32.ne if local.get $0 - local.get $4 - local.get $13 local.get $8 + local.get $13 + local.get $4 i32.const 2 i32.shl local.tee $3 @@ -3707,13 +3705,13 @@ i32.add i32.const -1 i32.store - local.get $4 + local.get $8 local.set $3 end - local.get $8 + local.get $4 i32.const 1 i32.sub - local.set $8 + local.set $4 br $for-loop|3 end end @@ -4228,17 +4226,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -4417,39 +4415,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -4457,35 +4450,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -4493,55 +4482,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -4562,59 +4545,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -4631,7 +4607,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -4642,11 +4618,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -4660,17 +4636,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -6206,12 +6182,12 @@ block $__inlined_func$~lib/math/NativeMath.mod (result f64) local.get $0 i64.reinterpret_f64 - local.tee $3 + local.tee $4 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.tee $4 + local.tee $5 i64.const 2047 i64.eq if @@ -6223,41 +6199,41 @@ f64.div br $__inlined_func$~lib/math/NativeMath.mod end - local.get $3 + local.get $4 i64.const 1 i64.shl - local.tee $5 + local.tee $3 i64.const -9223372036854775808 i64.le_u if local.get $0 - local.get $5 + local.get $3 i64.const -9223372036854775808 i64.ne f64.convert_i32_u f64.mul br $__inlined_func$~lib/math/NativeMath.mod end - local.get $3 + local.get $4 i64.const 63 i64.shr_u - local.set $5 - local.get $4 + local.set $6 + local.get $5 i64.eqz if (result i64) - local.get $3 + local.get $4 i64.const 1 + local.get $5 local.get $4 - local.get $3 i64.const 12 i64.shl i64.clz i64.sub - local.tee $4 + local.tee $5 i64.sub i64.shl else - local.get $3 + local.get $4 i64.const 4503599627370495 i64.and i64.const 4503599627370496 @@ -6265,7 +6241,7 @@ end local.set $3 loop $while-continue|0 - local.get $4 + local.get $5 i64.const 1024 i64.gt_s if @@ -6290,14 +6266,14 @@ i64.const 1 i64.shl local.set $3 - local.get $4 + local.get $5 i64.const 1 i64.sub - local.set $4 + local.set $5 br $while-continue|0 end end - local.get $4 + local.get $5 local.get $3 i64.const 4503599627370496 i64.ge_u @@ -6319,32 +6295,32 @@ i64.const 11 i64.shl i64.clz - local.tee $4 + local.tee $5 i64.sub - local.set $6 + local.set $4 local.get $3 - local.get $4 + local.get $5 i64.shl local.set $3 - local.get $6 + local.get $4 i64.const 0 i64.gt_s if (result i64) local.get $3 i64.const 4503599627370496 i64.sub - local.get $6 + local.get $4 i64.const 52 i64.shl i64.or else local.get $3 i64.const 1 - local.get $6 + local.get $4 i64.sub i64.shr_u end - local.get $5 + local.get $6 i64.const 63 i64.shl i64.or @@ -6639,14 +6615,14 @@ i32.load local.tee $1 call $~lib/typedarray/Int8Array#constructor - local.tee $2 + local.tee $4 i32.store offset=4 loop $for-loop|0 local.get $0 local.get $1 i32.lt_s if - local.get $2 + local.get $4 local.get $0 i32.const 7728 local.get $0 @@ -6665,7 +6641,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -6674,9 +6650,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|0 local.get $0 local.get $3 @@ -6684,7 +6660,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.eqz @@ -6713,7 +6689,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.01 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -6722,9 +6698,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.01 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|02 local.get $0 local.get $3 @@ -6732,7 +6708,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 11 @@ -6764,7 +6740,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.04 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -6773,9 +6749,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.04 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|05 local.get $0 local.get $3 @@ -6783,7 +6759,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 255 @@ -6815,7 +6791,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.07 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -6824,9 +6800,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.07 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|08 local.get $0 local.get $3 @@ -6834,7 +6810,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -6866,7 +6842,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.010 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 2 @@ -6875,9 +6851,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.010 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|011 local.get $0 local.get $3 @@ -6885,7 +6861,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -6917,7 +6893,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.013 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 3 @@ -6926,9 +6902,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.013 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|014 local.get $0 local.get $3 @@ -6936,7 +6912,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -6968,7 +6944,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.016 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 4 @@ -6977,9 +6953,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.016 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|017 local.get $0 local.get $3 @@ -6987,7 +6963,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -7019,7 +6995,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.019 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 10 @@ -7028,9 +7004,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.019 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|020 local.get $0 local.get $3 @@ -7038,7 +7014,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 1 @@ -7068,7 +7044,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.022 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const -100 @@ -7080,16 +7056,16 @@ local.get $3 i32.const 100 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|023 local.get $0 local.get $3 @@ -7097,7 +7073,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 1 @@ -7126,35 +7102,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|00 local.get $0 i32.const 0 @@ -7162,7 +7138,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.eqz @@ -7188,35 +7164,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.05 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.05 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|06 local.get $0 i32.const 0 @@ -7224,7 +7200,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 11 @@ -7253,35 +7229,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.011 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.011 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|012 local.get $0 i32.const 0 @@ -7289,7 +7265,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 255 @@ -7318,35 +7294,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.017 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.017 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|018 local.get $0 i32.const 0 @@ -7354,7 +7330,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -7384,7 +7360,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.019 - local.get $2 + local.get $4 i32.load offset=8 local.tee $0 i32.eqz @@ -7398,9 +7374,9 @@ i32.le_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|024 local.get $0 i32.const 0 @@ -7408,7 +7384,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -7438,7 +7414,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.026 - local.get $2 + local.get $4 i32.load offset=8 local.tee $0 i32.eqz @@ -7452,9 +7428,9 @@ i32.le_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|027 local.get $0 i32.const 0 @@ -7462,7 +7438,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -7492,7 +7468,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.029 - local.get $2 + local.get $4 i32.load offset=8 local.tee $0 i32.eqz @@ -7506,9 +7482,9 @@ i32.le_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|030 local.get $0 i32.const 0 @@ -7516,7 +7492,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -7546,7 +7522,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.032 - local.get $2 + local.get $4 i32.load offset=8 local.tee $0 i32.eqz @@ -7560,9 +7536,9 @@ i32.le_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|033 local.get $0 i32.const 0 @@ -7570,7 +7546,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 1 @@ -7600,7 +7576,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.035 - local.get $2 + local.get $4 i32.load offset=8 local.tee $0 i32.eqz @@ -7609,9 +7585,9 @@ i32.const 10 i32.sub local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|036 local.get $0 i32.const 0 @@ -7619,7 +7595,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 1 @@ -7649,7 +7625,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.038 - local.get $2 + local.get $4 i32.load offset=8 local.tee $0 i32.eqz @@ -7658,9 +7634,9 @@ i32.const 11 i32.sub local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|039 local.get $0 i32.const 0 @@ -7668,7 +7644,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 1 @@ -7696,18 +7672,18 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 4 i32.const 9 call $~lib/typedarray/Int8Array#subarray - local.tee $2 + local.tee $4 i32.store offset=8 i32.const 0 local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.041 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -7716,9 +7692,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.041 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|042 local.get $0 local.get $3 @@ -7726,7 +7702,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -7758,7 +7734,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.044 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -7767,9 +7743,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.044 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|045 local.get $0 local.get $3 @@ -7777,7 +7753,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 4 @@ -7807,7 +7783,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.047 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -7816,9 +7792,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.047 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|048 local.get $0 local.get $3 @@ -7826,7 +7802,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 5 @@ -7858,7 +7834,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.050 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -7867,9 +7843,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.050 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|051 local.get $0 local.get $3 @@ -7877,7 +7853,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 9 @@ -7909,7 +7885,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.053 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -7918,9 +7894,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.053 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|054 local.get $0 local.get $3 @@ -7928,7 +7904,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 10 @@ -7960,7 +7936,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.056 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -7969,9 +7945,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.056 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|057 local.get $0 local.get $3 @@ -7979,7 +7955,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 11 @@ -8011,7 +7987,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.059 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 1 @@ -8020,9 +7996,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.059 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|060 local.get $0 local.get $3 @@ -8030,7 +8006,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 5 @@ -8062,7 +8038,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.062 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 2 @@ -8071,9 +8047,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.062 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|063 local.get $0 local.get $3 @@ -8081,7 +8057,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 5 @@ -8149,14 +8125,14 @@ i32.load local.tee $1 call $~lib/typedarray/Uint8Array#constructor - local.tee $2 + local.tee $4 i32.store offset=4 loop $for-loop|0 local.get $0 local.get $1 i32.lt_s if - local.get $2 + local.get $4 local.get $0 i32.const 7728 local.get $0 @@ -8176,7 +8152,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -8185,9 +8161,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|0 local.get $0 local.get $3 @@ -8195,7 +8171,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.eqz @@ -8224,7 +8200,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.01 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -8233,9 +8209,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.01 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|02 local.get $0 local.get $3 @@ -8243,7 +8219,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 11 @@ -8275,7 +8251,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.04 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -8284,9 +8260,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.04 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|05 local.get $0 local.get $3 @@ -8294,7 +8270,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 255 @@ -8326,7 +8302,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.07 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -8335,9 +8311,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.07 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|08 local.get $0 local.get $3 @@ -8345,7 +8321,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -8377,7 +8353,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.010 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 2 @@ -8386,9 +8362,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.010 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|011 local.get $0 local.get $3 @@ -8396,7 +8372,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -8428,7 +8404,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.013 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 3 @@ -8437,9 +8413,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.013 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|014 local.get $0 local.get $3 @@ -8447,7 +8423,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -8479,7 +8455,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.016 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 4 @@ -8488,9 +8464,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.016 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|017 local.get $0 local.get $3 @@ -8498,7 +8474,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -8530,7 +8506,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.019 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 10 @@ -8539,9 +8515,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.019 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|020 local.get $0 local.get $3 @@ -8549,7 +8525,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 1 @@ -8579,7 +8555,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.022 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const -100 @@ -8591,16 +8567,16 @@ local.get $3 i32.const 100 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|023 local.get $0 local.get $3 @@ -8608,7 +8584,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 1 @@ -8637,35 +8613,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|00 local.get $0 i32.const 0 @@ -8673,7 +8649,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.eqz @@ -8699,35 +8675,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|06 local.get $0 i32.const 0 @@ -8735,7 +8711,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 11 @@ -8764,35 +8740,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.011 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.011 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|012 local.get $0 i32.const 0 @@ -8800,7 +8776,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 255 @@ -8829,35 +8805,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|018 local.get $0 i32.const 0 @@ -8865,7 +8841,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -8895,7 +8871,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.019 - local.get $2 + local.get $4 i32.load offset=8 local.tee $0 i32.eqz @@ -8909,9 +8885,9 @@ i32.le_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|024 local.get $0 i32.const 0 @@ -8919,7 +8895,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -8949,7 +8925,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.026 - local.get $2 + local.get $4 i32.load offset=8 local.tee $0 i32.eqz @@ -8963,9 +8939,9 @@ i32.le_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|027 local.get $0 i32.const 0 @@ -8973,7 +8949,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -9003,7 +8979,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.029 - local.get $2 + local.get $4 i32.load offset=8 local.tee $0 i32.eqz @@ -9017,9 +8993,9 @@ i32.le_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|030 local.get $0 i32.const 0 @@ -9027,7 +9003,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -9057,7 +9033,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.032 - local.get $2 + local.get $4 i32.load offset=8 local.tee $0 i32.eqz @@ -9071,9 +9047,9 @@ i32.le_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|033 local.get $0 i32.const 0 @@ -9081,7 +9057,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 1 @@ -9111,7 +9087,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.035 - local.get $2 + local.get $4 i32.load offset=8 local.tee $0 i32.eqz @@ -9120,9 +9096,9 @@ i32.const 10 i32.sub local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|036 local.get $0 i32.const 0 @@ -9130,7 +9106,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 1 @@ -9160,7 +9136,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.038 - local.get $2 + local.get $4 i32.load offset=8 local.tee $0 i32.eqz @@ -9169,9 +9145,9 @@ i32.const 11 i32.sub local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|039 local.get $0 i32.const 0 @@ -9179,7 +9155,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 1 @@ -9207,17 +9183,17 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 9 call $~lib/typedarray/Uint8Array#subarray - local.tee $2 + local.tee $4 i32.store offset=8 i32.const 0 local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.041 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -9226,9 +9202,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.041 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|042 local.get $0 local.get $3 @@ -9236,7 +9212,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -9268,7 +9244,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.044 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -9277,9 +9253,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.044 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|045 local.get $0 local.get $3 @@ -9287,7 +9263,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 4 @@ -9317,7 +9293,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.047 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -9326,9 +9302,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.047 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|048 local.get $0 local.get $3 @@ -9336,7 +9312,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 5 @@ -9368,7 +9344,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.050 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -9377,9 +9353,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.050 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|051 local.get $0 local.get $3 @@ -9387,7 +9363,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 9 @@ -9419,7 +9395,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.053 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -9428,9 +9404,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.053 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|054 local.get $0 local.get $3 @@ -9438,7 +9414,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 10 @@ -9470,7 +9446,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.056 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -9479,9 +9455,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.056 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|057 local.get $0 local.get $3 @@ -9489,7 +9465,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 11 @@ -9521,7 +9497,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.059 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 1 @@ -9530,9 +9506,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.059 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|060 local.get $0 local.get $3 @@ -9540,7 +9516,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 5 @@ -9572,7 +9548,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.062 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 2 @@ -9581,9 +9557,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.062 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|063 local.get $0 local.get $3 @@ -9591,7 +9567,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 5 @@ -9659,14 +9635,14 @@ i32.load local.tee $1 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $2 + local.tee $4 i32.store offset=4 loop $for-loop|0 local.get $0 local.get $1 i32.lt_s if - local.get $2 + local.get $4 local.get $0 i32.const 7728 local.get $0 @@ -9686,7 +9662,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -9695,9 +9671,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|0 local.get $0 local.get $3 @@ -9705,7 +9681,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.eqz @@ -9734,7 +9710,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.01 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -9743,9 +9719,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.01 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|02 local.get $0 local.get $3 @@ -9753,7 +9729,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 11 @@ -9785,7 +9761,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.04 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -9794,9 +9770,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.04 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|05 local.get $0 local.get $3 @@ -9804,7 +9780,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 255 @@ -9836,7 +9812,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.07 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -9845,9 +9821,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.07 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|08 local.get $0 local.get $3 @@ -9855,7 +9831,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -9887,7 +9863,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.010 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 2 @@ -9896,9 +9872,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.010 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|011 local.get $0 local.get $3 @@ -9906,7 +9882,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -9938,7 +9914,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.013 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 3 @@ -9947,9 +9923,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.013 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|014 local.get $0 local.get $3 @@ -9957,7 +9933,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -9989,7 +9965,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.016 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 4 @@ -9998,9 +9974,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.016 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|017 local.get $0 local.get $3 @@ -10008,7 +9984,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -10040,7 +10016,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.019 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 10 @@ -10049,9 +10025,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.019 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|020 local.get $0 local.get $3 @@ -10059,7 +10035,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 1 @@ -10089,7 +10065,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.022 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const -100 @@ -10101,16 +10077,16 @@ local.get $3 i32.const 100 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|023 local.get $0 local.get $3 @@ -10118,7 +10094,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 1 @@ -10147,35 +10123,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|00 local.get $0 i32.const 0 @@ -10183,7 +10159,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.eqz @@ -10209,35 +10185,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|06 local.get $0 i32.const 0 @@ -10245,7 +10221,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 11 @@ -10274,35 +10250,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.011 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.011 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|012 local.get $0 i32.const 0 @@ -10310,7 +10286,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 255 @@ -10339,35 +10315,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|018 local.get $0 i32.const 0 @@ -10375,7 +10351,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -10405,7 +10381,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.019 - local.get $2 + local.get $4 i32.load offset=8 local.tee $0 i32.eqz @@ -10419,9 +10395,9 @@ i32.le_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|024 local.get $0 i32.const 0 @@ -10429,7 +10405,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -10459,7 +10435,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.026 - local.get $2 + local.get $4 i32.load offset=8 local.tee $0 i32.eqz @@ -10473,9 +10449,9 @@ i32.le_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|027 local.get $0 i32.const 0 @@ -10483,7 +10459,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -10513,7 +10489,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.029 - local.get $2 + local.get $4 i32.load offset=8 local.tee $0 i32.eqz @@ -10527,9 +10503,9 @@ i32.le_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|030 local.get $0 i32.const 0 @@ -10537,7 +10513,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -10567,7 +10543,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.032 - local.get $2 + local.get $4 i32.load offset=8 local.tee $0 i32.eqz @@ -10581,9 +10557,9 @@ i32.le_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|033 local.get $0 i32.const 0 @@ -10591,7 +10567,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 1 @@ -10621,7 +10597,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.035 - local.get $2 + local.get $4 i32.load offset=8 local.tee $0 i32.eqz @@ -10630,9 +10606,9 @@ i32.const 10 i32.sub local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|036 local.get $0 i32.const 0 @@ -10640,7 +10616,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 1 @@ -10670,7 +10646,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.038 - local.get $2 + local.get $4 i32.load offset=8 local.tee $0 i32.eqz @@ -10679,9 +10655,9 @@ i32.const 11 i32.sub local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|039 local.get $0 i32.const 0 @@ -10689,7 +10665,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 1 @@ -10717,17 +10693,17 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 9 call $~lib/typedarray/Uint8ClampedArray#subarray - local.tee $2 + local.tee $4 i32.store offset=8 i32.const 0 local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.041 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -10736,9 +10712,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.041 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|042 local.get $0 local.get $3 @@ -10746,7 +10722,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 3 @@ -10778,7 +10754,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.044 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -10787,9 +10763,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.044 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|045 local.get $0 local.get $3 @@ -10797,7 +10773,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 4 @@ -10827,7 +10803,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.047 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -10836,9 +10812,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.047 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|048 local.get $0 local.get $3 @@ -10846,7 +10822,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 5 @@ -10878,7 +10854,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.050 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -10887,9 +10863,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.050 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|051 local.get $0 local.get $3 @@ -10897,7 +10873,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 9 @@ -10929,7 +10905,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.053 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -10938,9 +10914,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.053 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|054 local.get $0 local.get $3 @@ -10948,7 +10924,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 10 @@ -10980,7 +10956,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.056 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -10989,9 +10965,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.056 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|057 local.get $0 local.get $3 @@ -10999,7 +10975,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 11 @@ -11031,7 +11007,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.059 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 1 @@ -11040,9 +11016,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.059 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|060 local.get $0 local.get $3 @@ -11050,7 +11026,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 5 @@ -11082,7 +11058,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.062 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 2 @@ -11091,9 +11067,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.062 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|063 local.get $0 local.get $3 @@ -11101,7 +11077,7 @@ if local.get $0 local.tee $1 - local.get $4 + local.get $2 i32.add i32.load8_u i32.const 5 @@ -11169,14 +11145,14 @@ i32.load local.tee $1 call $~lib/typedarray/Int16Array#constructor - local.tee $2 + local.tee $4 i32.store offset=4 loop $for-loop|0 local.get $0 local.get $1 i32.lt_s if - local.get $2 + local.get $4 local.get $0 i32.const 7728 local.get $0 @@ -11195,7 +11171,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -11205,9 +11181,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|0 local.get $0 local.get $3 @@ -11217,7 +11193,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.eqz @@ -11246,7 +11222,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.01 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -11256,9 +11232,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.01 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|02 local.get $0 local.get $3 @@ -11268,7 +11244,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 11 @@ -11300,7 +11276,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.04 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -11310,9 +11286,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.04 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|05 local.get $0 local.get $3 @@ -11322,7 +11298,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 65535 @@ -11354,7 +11330,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.07 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -11364,9 +11340,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.07 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|08 local.get $0 local.get $3 @@ -11376,7 +11352,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 3 @@ -11408,7 +11384,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.010 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -11419,9 +11395,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.010 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|011 local.get $0 local.get $3 @@ -11431,7 +11407,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 3 @@ -11463,7 +11439,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.013 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -11474,9 +11450,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.013 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|014 local.get $0 local.get $3 @@ -11486,7 +11462,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 3 @@ -11518,7 +11494,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.016 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -11529,9 +11505,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.016 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|017 local.get $0 local.get $3 @@ -11541,7 +11517,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 3 @@ -11573,7 +11549,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.019 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -11584,9 +11560,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.019 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|020 local.get $0 local.get $3 @@ -11596,7 +11572,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 1 @@ -11626,7 +11602,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.022 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -11640,16 +11616,16 @@ local.get $3 i32.const 100 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|023 local.get $0 local.get $3 @@ -11659,7 +11635,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 1 @@ -11688,37 +11664,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|00 local.get $0 i32.const 0 @@ -11728,7 +11704,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.eqz @@ -11754,37 +11730,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.05 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.05 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|06 local.get $0 i32.const 0 @@ -11794,7 +11770,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 11 @@ -11823,37 +11799,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.011 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.011 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|012 local.get $0 i32.const 0 @@ -11863,7 +11839,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 65535 @@ -11892,37 +11868,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.017 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.017 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|018 local.get $0 i32.const 0 @@ -11932,7 +11908,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 3 @@ -11962,7 +11938,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.019 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -11978,9 +11954,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|024 local.get $0 i32.const 0 @@ -11990,7 +11966,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 3 @@ -12020,7 +11996,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.026 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -12036,9 +12012,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|027 local.get $0 i32.const 0 @@ -12048,7 +12024,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 3 @@ -12078,7 +12054,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.029 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -12094,9 +12070,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|030 local.get $0 i32.const 0 @@ -12106,7 +12082,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 3 @@ -12136,7 +12112,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.032 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -12152,9 +12128,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|033 local.get $0 i32.const 0 @@ -12164,7 +12140,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 1 @@ -12194,7 +12170,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.035 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -12205,9 +12181,9 @@ i32.const 10 i32.sub local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|036 local.get $0 i32.const 0 @@ -12217,7 +12193,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 1 @@ -12247,7 +12223,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.038 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -12258,9 +12234,9 @@ i32.const 11 i32.sub local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|039 local.get $0 i32.const 0 @@ -12270,7 +12246,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 1 @@ -12298,17 +12274,17 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 9 call $~lib/typedarray/Int16Array#subarray - local.tee $2 + local.tee $4 i32.store offset=8 i32.const 0 local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.041 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -12318,9 +12294,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.041 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|042 local.get $0 local.get $3 @@ -12330,7 +12306,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 3 @@ -12362,7 +12338,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.044 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -12372,9 +12348,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.044 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|045 local.get $0 local.get $3 @@ -12384,7 +12360,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 4 @@ -12414,7 +12390,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.047 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -12424,9 +12400,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.047 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|048 local.get $0 local.get $3 @@ -12436,7 +12412,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 5 @@ -12468,7 +12444,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.050 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -12478,9 +12454,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.050 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|051 local.get $0 local.get $3 @@ -12490,7 +12466,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 9 @@ -12522,7 +12498,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.053 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -12532,9 +12508,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.053 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|054 local.get $0 local.get $3 @@ -12544,7 +12520,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 10 @@ -12576,7 +12552,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.056 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -12586,9 +12562,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.056 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|057 local.get $0 local.get $3 @@ -12598,7 +12574,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 11 @@ -12630,7 +12606,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.059 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -12641,9 +12617,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.059 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|060 local.get $0 local.get $3 @@ -12653,7 +12629,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 5 @@ -12685,7 +12661,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.062 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -12696,9 +12672,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.062 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|063 local.get $0 local.get $3 @@ -12708,7 +12684,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 5 @@ -12776,14 +12752,14 @@ i32.load local.tee $1 call $~lib/typedarray/Uint16Array#constructor - local.tee $2 + local.tee $4 i32.store offset=4 loop $for-loop|0 local.get $0 local.get $1 i32.lt_s if - local.get $2 + local.get $4 local.get $0 i32.const 7728 local.get $0 @@ -12803,7 +12779,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -12813,9 +12789,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|0 local.get $0 local.get $3 @@ -12825,7 +12801,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.eqz @@ -12854,7 +12830,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.01 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -12864,9 +12840,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.01 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|02 local.get $0 local.get $3 @@ -12876,7 +12852,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 11 @@ -12908,7 +12884,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.04 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -12918,9 +12894,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.04 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|05 local.get $0 local.get $3 @@ -12930,7 +12906,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 65535 @@ -12962,7 +12938,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.07 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -12972,9 +12948,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.07 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|08 local.get $0 local.get $3 @@ -12984,7 +12960,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 3 @@ -13016,7 +12992,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.010 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -13027,9 +13003,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.010 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|011 local.get $0 local.get $3 @@ -13039,7 +13015,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 3 @@ -13071,7 +13047,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.013 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -13082,9 +13058,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.013 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|014 local.get $0 local.get $3 @@ -13094,7 +13070,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 3 @@ -13126,7 +13102,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.016 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -13137,9 +13113,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.016 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|017 local.get $0 local.get $3 @@ -13149,7 +13125,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 3 @@ -13181,7 +13157,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.019 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -13192,9 +13168,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.019 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|020 local.get $0 local.get $3 @@ -13204,7 +13180,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 1 @@ -13234,7 +13210,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.022 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -13248,16 +13224,16 @@ local.get $3 i32.const 100 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|023 local.get $0 local.get $3 @@ -13267,7 +13243,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 1 @@ -13296,37 +13272,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|00 local.get $0 i32.const 0 @@ -13336,7 +13312,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.eqz @@ -13362,37 +13338,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.05 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.05 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|06 local.get $0 i32.const 0 @@ -13402,7 +13378,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 11 @@ -13431,37 +13407,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.011 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.011 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|012 local.get $0 i32.const 0 @@ -13471,7 +13447,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 65535 @@ -13500,37 +13476,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.017 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.017 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|018 local.get $0 i32.const 0 @@ -13540,7 +13516,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 3 @@ -13570,7 +13546,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.019 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -13586,9 +13562,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|024 local.get $0 i32.const 0 @@ -13598,7 +13574,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 3 @@ -13628,7 +13604,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.026 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -13644,9 +13620,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|027 local.get $0 i32.const 0 @@ -13656,7 +13632,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 3 @@ -13686,7 +13662,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.029 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -13702,9 +13678,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|030 local.get $0 i32.const 0 @@ -13714,7 +13690,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 3 @@ -13744,7 +13720,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.032 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -13760,9 +13736,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|033 local.get $0 i32.const 0 @@ -13772,7 +13748,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 1 @@ -13802,7 +13778,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.035 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -13813,9 +13789,9 @@ i32.const 10 i32.sub local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|036 local.get $0 i32.const 0 @@ -13825,7 +13801,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 1 @@ -13855,7 +13831,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.038 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -13866,9 +13842,9 @@ i32.const 11 i32.sub local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|039 local.get $0 i32.const 0 @@ -13878,7 +13854,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 1 @@ -13906,17 +13882,17 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 9 call $~lib/typedarray/Uint16Array#subarray - local.tee $2 + local.tee $4 i32.store offset=8 i32.const 0 local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.041 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -13926,9 +13902,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.041 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|042 local.get $0 local.get $3 @@ -13938,7 +13914,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 3 @@ -13970,7 +13946,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.044 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -13980,9 +13956,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.044 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|045 local.get $0 local.get $3 @@ -13992,7 +13968,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 4 @@ -14022,7 +13998,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.047 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -14032,9 +14008,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.047 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|048 local.get $0 local.get $3 @@ -14044,7 +14020,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 5 @@ -14076,7 +14052,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.050 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -14086,9 +14062,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.050 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|051 local.get $0 local.get $3 @@ -14098,7 +14074,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 9 @@ -14130,7 +14106,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.053 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -14140,9 +14116,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.053 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|054 local.get $0 local.get $3 @@ -14152,7 +14128,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 10 @@ -14184,7 +14160,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.056 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -14194,9 +14170,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.056 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|057 local.get $0 local.get $3 @@ -14206,7 +14182,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 11 @@ -14238,7 +14214,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.059 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -14249,9 +14225,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.059 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|060 local.get $0 local.get $3 @@ -14261,7 +14237,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 5 @@ -14293,7 +14269,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.062 - local.get $2 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -14304,9 +14280,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.062 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|063 local.get $0 local.get $3 @@ -14316,7 +14292,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u i32.const 5 @@ -14384,14 +14360,14 @@ i32.load local.tee $1 call $~lib/typedarray/Int32Array#constructor - local.tee $2 + local.tee $4 i32.store offset=4 loop $for-loop|0 local.get $0 local.get $1 i32.lt_s if - local.get $2 + local.get $4 local.get $0 i32.const 7728 local.get $0 @@ -14409,7 +14385,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -14419,9 +14395,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|0 local.get $0 local.get $3 @@ -14431,7 +14407,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.eqz @@ -14460,7 +14436,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.01 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -14470,9 +14446,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.01 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|02 local.get $0 local.get $3 @@ -14482,7 +14458,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 11 @@ -14514,7 +14490,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.04 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -14524,9 +14500,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.04 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|05 local.get $0 local.get $3 @@ -14536,7 +14512,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const -1 @@ -14568,7 +14544,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.07 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -14578,9 +14554,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.07 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|08 local.get $0 local.get $3 @@ -14590,7 +14566,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 3 @@ -14622,7 +14598,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.010 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -14633,9 +14609,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.010 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|011 local.get $0 local.get $3 @@ -14645,7 +14621,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 3 @@ -14677,7 +14653,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.013 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -14688,9 +14664,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.013 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|014 local.get $0 local.get $3 @@ -14700,7 +14676,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 3 @@ -14732,7 +14708,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.016 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -14743,9 +14719,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.016 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|017 local.get $0 local.get $3 @@ -14755,7 +14731,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 3 @@ -14787,7 +14763,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.019 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -14798,9 +14774,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.019 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|020 local.get $0 local.get $3 @@ -14810,7 +14786,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 1 @@ -14840,7 +14816,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.022 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -14854,16 +14830,16 @@ local.get $3 i32.const 100 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|023 local.get $0 local.get $3 @@ -14873,7 +14849,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 1 @@ -14902,37 +14878,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|00 local.get $0 i32.const 0 @@ -14942,7 +14918,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.eqz @@ -14968,37 +14944,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.05 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.05 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|06 local.get $0 i32.const 0 @@ -15008,7 +14984,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 11 @@ -15037,37 +15013,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.011 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.011 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|012 local.get $0 i32.const 0 @@ -15077,7 +15053,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const -1 @@ -15106,37 +15082,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.017 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.017 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|018 local.get $0 i32.const 0 @@ -15146,7 +15122,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 3 @@ -15176,7 +15152,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.019 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -15192,9 +15168,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|024 local.get $0 i32.const 0 @@ -15204,7 +15180,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 3 @@ -15234,7 +15210,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.026 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -15250,9 +15226,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|027 local.get $0 i32.const 0 @@ -15262,7 +15238,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 3 @@ -15292,7 +15268,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.029 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -15308,9 +15284,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|030 local.get $0 i32.const 0 @@ -15320,7 +15296,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 3 @@ -15350,7 +15326,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.032 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -15366,9 +15342,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|033 local.get $0 i32.const 0 @@ -15378,7 +15354,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 1 @@ -15408,7 +15384,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.035 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -15419,9 +15395,9 @@ i32.const 10 i32.sub local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|036 local.get $0 i32.const 0 @@ -15431,7 +15407,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 1 @@ -15461,7 +15437,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.038 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -15472,9 +15448,9 @@ i32.const 11 i32.sub local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|039 local.get $0 i32.const 0 @@ -15484,7 +15460,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 1 @@ -15512,18 +15488,18 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 4 i32.const 9 call $~lib/typedarray/Int32Array#subarray - local.tee $2 + local.tee $4 i32.store offset=8 i32.const 0 local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.041 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -15533,9 +15509,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.041 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|042 local.get $0 local.get $3 @@ -15545,7 +15521,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 3 @@ -15577,7 +15553,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.044 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -15587,9 +15563,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.044 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|045 local.get $0 local.get $3 @@ -15599,7 +15575,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 4 @@ -15629,7 +15605,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.047 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -15639,9 +15615,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.047 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|048 local.get $0 local.get $3 @@ -15651,7 +15627,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 5 @@ -15683,7 +15659,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.050 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -15693,9 +15669,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.050 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|051 local.get $0 local.get $3 @@ -15705,7 +15681,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 9 @@ -15737,7 +15713,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.053 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -15747,9 +15723,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.053 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|054 local.get $0 local.get $3 @@ -15759,7 +15735,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 10 @@ -15791,7 +15767,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.056 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -15801,9 +15777,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.056 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|057 local.get $0 local.get $3 @@ -15813,7 +15789,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 11 @@ -15845,7 +15821,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.059 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -15856,9 +15832,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.059 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|060 local.get $0 local.get $3 @@ -15868,7 +15844,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 5 @@ -15900,7 +15876,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.062 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -15911,9 +15887,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.062 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|063 local.get $0 local.get $3 @@ -15923,7 +15899,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 5 @@ -15991,14 +15967,14 @@ i32.load local.tee $1 call $~lib/typedarray/Uint32Array#constructor - local.tee $2 + local.tee $4 i32.store offset=4 loop $for-loop|0 local.get $0 local.get $1 i32.lt_s if - local.get $2 + local.get $4 local.get $0 i32.const 7728 local.get $0 @@ -16016,7 +15992,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -16026,9 +16002,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|0 local.get $0 local.get $3 @@ -16038,7 +16014,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.eqz @@ -16067,7 +16043,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.01 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -16077,9 +16053,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.01 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|02 local.get $0 local.get $3 @@ -16089,7 +16065,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 11 @@ -16121,7 +16097,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.04 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -16131,9 +16107,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.04 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|05 local.get $0 local.get $3 @@ -16143,7 +16119,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const -1 @@ -16175,7 +16151,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.07 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -16185,9 +16161,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.07 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|08 local.get $0 local.get $3 @@ -16197,7 +16173,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 3 @@ -16229,7 +16205,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.010 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -16240,9 +16216,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.010 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|011 local.get $0 local.get $3 @@ -16252,7 +16228,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 3 @@ -16284,7 +16260,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.013 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -16295,9 +16271,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.013 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|014 local.get $0 local.get $3 @@ -16307,7 +16283,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 3 @@ -16339,7 +16315,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.016 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -16350,9 +16326,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.016 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|017 local.get $0 local.get $3 @@ -16362,7 +16338,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 3 @@ -16394,7 +16370,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.019 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -16405,9 +16381,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.019 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|020 local.get $0 local.get $3 @@ -16417,7 +16393,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 1 @@ -16447,7 +16423,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.022 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -16461,16 +16437,16 @@ local.get $3 i32.const 100 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|023 local.get $0 local.get $3 @@ -16480,7 +16456,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 1 @@ -16509,37 +16485,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|00 local.get $0 i32.const 0 @@ -16549,7 +16525,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.eqz @@ -16575,37 +16551,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.05 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.05 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|06 local.get $0 i32.const 0 @@ -16615,7 +16591,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 11 @@ -16644,37 +16620,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.011 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.011 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|012 local.get $0 i32.const 0 @@ -16684,7 +16660,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const -1 @@ -16713,37 +16689,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.017 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.017 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|018 local.get $0 i32.const 0 @@ -16753,7 +16729,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 3 @@ -16783,7 +16759,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.019 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -16799,9 +16775,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|024 local.get $0 i32.const 0 @@ -16811,7 +16787,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 3 @@ -16841,7 +16817,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.026 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -16857,9 +16833,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|027 local.get $0 i32.const 0 @@ -16869,7 +16845,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 3 @@ -16899,7 +16875,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.029 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -16915,9 +16891,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|030 local.get $0 i32.const 0 @@ -16927,7 +16903,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 3 @@ -16957,7 +16933,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.032 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -16973,9 +16949,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|033 local.get $0 i32.const 0 @@ -16985,7 +16961,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 1 @@ -17015,7 +16991,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.035 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -17026,9 +17002,9 @@ i32.const 10 i32.sub local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|036 local.get $0 i32.const 0 @@ -17038,7 +17014,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 1 @@ -17068,7 +17044,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.038 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -17079,9 +17055,9 @@ i32.const 11 i32.sub local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|039 local.get $0 i32.const 0 @@ -17091,7 +17067,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 1 @@ -17119,17 +17095,17 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 9 call $~lib/typedarray/Uint32Array#subarray - local.tee $2 + local.tee $4 i32.store offset=8 i32.const 0 local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.041 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -17139,9 +17115,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.041 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|042 local.get $0 local.get $3 @@ -17151,7 +17127,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 3 @@ -17183,7 +17159,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.044 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -17193,9 +17169,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.044 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|045 local.get $0 local.get $3 @@ -17205,7 +17181,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 4 @@ -17235,7 +17211,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.047 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -17245,9 +17221,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.047 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|048 local.get $0 local.get $3 @@ -17257,7 +17233,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 5 @@ -17289,7 +17265,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.050 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -17299,9 +17275,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.050 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|051 local.get $0 local.get $3 @@ -17311,7 +17287,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 9 @@ -17343,7 +17319,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.053 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -17353,9 +17329,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.053 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|054 local.get $0 local.get $3 @@ -17365,7 +17341,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 10 @@ -17397,7 +17373,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.056 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -17407,9 +17383,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.056 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|057 local.get $0 local.get $3 @@ -17419,7 +17395,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 11 @@ -17451,7 +17427,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.059 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -17462,9 +17438,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.059 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|060 local.get $0 local.get $3 @@ -17474,7 +17450,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 5 @@ -17506,7 +17482,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.062 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -17517,9 +17493,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.062 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|063 local.get $0 local.get $3 @@ -17529,7 +17505,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add i32.load i32.const 5 @@ -17597,14 +17573,14 @@ i32.load local.tee $1 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $4 i32.store offset=4 loop $for-loop|0 local.get $0 local.get $1 i32.lt_s if - local.get $2 + local.get $4 local.get $0 i32.const 7728 local.get $0 @@ -17623,7 +17599,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -17633,9 +17609,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|0 local.get $0 local.get $3 @@ -17645,7 +17621,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.eqz @@ -17674,7 +17650,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.01 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -17684,9 +17660,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.01 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|02 local.get $0 local.get $3 @@ -17696,7 +17672,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 11 @@ -17728,7 +17704,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.04 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -17738,9 +17714,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.04 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|05 local.get $0 local.get $3 @@ -17750,7 +17726,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const -1 @@ -17782,7 +17758,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.07 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -17792,9 +17768,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.07 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|08 local.get $0 local.get $3 @@ -17804,7 +17780,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 3 @@ -17836,7 +17812,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.010 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -17847,9 +17823,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.010 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|011 local.get $0 local.get $3 @@ -17859,7 +17835,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 3 @@ -17891,7 +17867,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.013 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -17902,9 +17878,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.013 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|014 local.get $0 local.get $3 @@ -17914,7 +17890,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 3 @@ -17946,7 +17922,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.016 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -17957,9 +17933,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.016 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|017 local.get $0 local.get $3 @@ -17969,7 +17945,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 3 @@ -18001,7 +17977,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.019 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -18012,9 +17988,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.019 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|020 local.get $0 local.get $3 @@ -18024,7 +18000,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 1 @@ -18054,7 +18030,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.022 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -18068,16 +18044,16 @@ local.get $3 i32.const 100 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|023 local.get $0 local.get $3 @@ -18087,7 +18063,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 1 @@ -18116,37 +18092,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|00 local.get $0 i32.const 0 @@ -18156,7 +18132,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.eqz @@ -18182,37 +18158,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.05 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.05 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|06 local.get $0 i32.const 0 @@ -18222,7 +18198,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 11 @@ -18251,37 +18227,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.011 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.011 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|012 local.get $0 i32.const 0 @@ -18291,7 +18267,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const -1 @@ -18320,37 +18296,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.017 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.017 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|018 local.get $0 i32.const 0 @@ -18360,7 +18336,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 3 @@ -18390,7 +18366,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.019 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -18406,9 +18382,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|024 local.get $0 i32.const 0 @@ -18418,7 +18394,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 3 @@ -18448,7 +18424,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.026 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -18464,9 +18440,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|027 local.get $0 i32.const 0 @@ -18476,7 +18452,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 3 @@ -18506,7 +18482,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.029 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -18522,9 +18498,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|030 local.get $0 i32.const 0 @@ -18534,7 +18510,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 3 @@ -18564,7 +18540,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.032 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -18580,9 +18556,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|033 local.get $0 i32.const 0 @@ -18592,7 +18568,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 1 @@ -18622,7 +18598,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.035 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -18633,9 +18609,9 @@ i32.const 10 i32.sub local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|036 local.get $0 i32.const 0 @@ -18645,7 +18621,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 1 @@ -18675,7 +18651,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.038 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -18686,9 +18662,9 @@ i32.const 11 i32.sub local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|039 local.get $0 i32.const 0 @@ -18698,7 +18674,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 1 @@ -18726,17 +18702,17 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 9 call $~lib/typedarray/Int64Array#subarray - local.tee $2 + local.tee $4 i32.store offset=8 i32.const 0 local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.041 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -18746,9 +18722,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.041 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|042 local.get $0 local.get $3 @@ -18758,7 +18734,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 3 @@ -18790,7 +18766,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.044 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -18800,9 +18776,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.044 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|045 local.get $0 local.get $3 @@ -18812,7 +18788,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 4 @@ -18842,7 +18818,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.047 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -18852,9 +18828,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.047 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|048 local.get $0 local.get $3 @@ -18864,7 +18840,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 5 @@ -18896,7 +18872,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.050 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -18906,9 +18882,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.050 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|051 local.get $0 local.get $3 @@ -18918,7 +18894,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 9 @@ -18950,7 +18926,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.053 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -18960,9 +18936,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.053 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|054 local.get $0 local.get $3 @@ -18972,7 +18948,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 10 @@ -19004,7 +18980,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.056 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -19014,9 +18990,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.056 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|057 local.get $0 local.get $3 @@ -19026,7 +19002,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 11 @@ -19058,7 +19034,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.059 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -19069,9 +19045,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.059 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|060 local.get $0 local.get $3 @@ -19081,7 +19057,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 5 @@ -19113,7 +19089,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.062 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -19124,9 +19100,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.062 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|063 local.get $0 local.get $3 @@ -19136,7 +19112,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 5 @@ -19204,14 +19180,14 @@ i32.load local.tee $1 call $~lib/typedarray/Uint64Array#constructor - local.tee $2 + local.tee $4 i32.store offset=4 loop $for-loop|0 local.get $0 local.get $1 i32.lt_s if - local.get $2 + local.get $4 local.get $0 i32.const 7728 local.get $0 @@ -19230,7 +19206,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -19240,9 +19216,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|0 local.get $0 local.get $3 @@ -19252,7 +19228,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.eqz @@ -19281,7 +19257,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.01 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -19291,9 +19267,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.01 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|02 local.get $0 local.get $3 @@ -19303,7 +19279,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 11 @@ -19335,7 +19311,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.04 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -19345,9 +19321,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.04 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|05 local.get $0 local.get $3 @@ -19357,7 +19333,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const -1 @@ -19389,7 +19365,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.07 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -19399,9 +19375,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.07 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|08 local.get $0 local.get $3 @@ -19411,7 +19387,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 3 @@ -19443,7 +19419,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.010 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -19454,9 +19430,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.010 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|011 local.get $0 local.get $3 @@ -19466,7 +19442,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 3 @@ -19498,7 +19474,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.013 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -19509,9 +19485,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.013 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|014 local.get $0 local.get $3 @@ -19521,7 +19497,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 3 @@ -19553,7 +19529,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.016 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -19564,9 +19540,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.016 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|017 local.get $0 local.get $3 @@ -19576,7 +19552,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 3 @@ -19608,7 +19584,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.019 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -19619,9 +19595,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.019 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|020 local.get $0 local.get $3 @@ -19631,7 +19607,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 1 @@ -19661,7 +19637,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.022 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -19675,16 +19651,16 @@ local.get $3 i32.const 100 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|023 local.get $0 local.get $3 @@ -19694,7 +19670,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 1 @@ -19723,37 +19699,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|00 local.get $0 i32.const 0 @@ -19763,7 +19739,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.eqz @@ -19789,37 +19765,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.05 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.05 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|06 local.get $0 i32.const 0 @@ -19829,7 +19805,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 11 @@ -19858,37 +19834,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.011 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.011 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|012 local.get $0 i32.const 0 @@ -19898,7 +19874,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const -1 @@ -19927,37 +19903,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.017 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.017 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|018 local.get $0 i32.const 0 @@ -19967,7 +19943,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 3 @@ -19997,7 +19973,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.019 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -20013,9 +19989,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|024 local.get $0 i32.const 0 @@ -20025,7 +20001,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 3 @@ -20055,7 +20031,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.026 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -20071,9 +20047,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|027 local.get $0 i32.const 0 @@ -20083,7 +20059,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 3 @@ -20113,7 +20089,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.029 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -20129,9 +20105,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|030 local.get $0 i32.const 0 @@ -20141,7 +20117,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 3 @@ -20171,7 +20147,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.032 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -20187,9 +20163,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|033 local.get $0 i32.const 0 @@ -20199,7 +20175,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 1 @@ -20229,7 +20205,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.035 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -20240,9 +20216,9 @@ i32.const 10 i32.sub local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|036 local.get $0 i32.const 0 @@ -20252,7 +20228,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 1 @@ -20282,7 +20258,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.038 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -20293,9 +20269,9 @@ i32.const 11 i32.sub local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|039 local.get $0 i32.const 0 @@ -20305,7 +20281,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 1 @@ -20333,17 +20309,17 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 9 call $~lib/typedarray/Uint64Array#subarray - local.tee $2 + local.tee $4 i32.store offset=8 i32.const 0 local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.041 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -20353,9 +20329,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.041 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|042 local.get $0 local.get $3 @@ -20365,7 +20341,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 3 @@ -20397,7 +20373,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.044 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -20407,9 +20383,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.044 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|045 local.get $0 local.get $3 @@ -20419,7 +20395,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 4 @@ -20449,7 +20425,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.047 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -20459,9 +20435,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.047 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|048 local.get $0 local.get $3 @@ -20471,7 +20447,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 5 @@ -20503,7 +20479,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.050 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -20513,9 +20489,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.050 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|051 local.get $0 local.get $3 @@ -20525,7 +20501,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 9 @@ -20557,7 +20533,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.053 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -20567,9 +20543,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.053 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|054 local.get $0 local.get $3 @@ -20579,7 +20555,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 10 @@ -20611,7 +20587,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.056 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -20621,9 +20597,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.056 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|057 local.get $0 local.get $3 @@ -20633,7 +20609,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 11 @@ -20665,7 +20641,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.059 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -20676,9 +20652,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.059 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|060 local.get $0 local.get $3 @@ -20688,7 +20664,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 5 @@ -20720,7 +20696,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.062 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -20731,9 +20707,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.062 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|063 local.get $0 local.get $3 @@ -20743,7 +20719,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 5 @@ -20811,14 +20787,14 @@ i32.load local.tee $1 call $~lib/typedarray/Float32Array#constructor - local.tee $2 + local.tee $4 i32.store offset=4 loop $for-loop|0 local.get $0 local.get $1 i32.lt_s if - local.get $2 + local.get $4 local.get $0 i32.const 7728 local.get $0 @@ -20837,7 +20813,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -20847,9 +20823,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|0 local.get $0 local.get $3 @@ -20859,7 +20835,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 0 @@ -20889,7 +20865,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.01 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -20899,9 +20875,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.01 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|02 local.get $0 local.get $3 @@ -20911,7 +20887,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 11 @@ -20943,7 +20919,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.04 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -20953,9 +20929,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.04 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|05 local.get $0 local.get $3 @@ -20965,7 +20941,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const -1 @@ -20997,7 +20973,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.07 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -21007,9 +20983,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.07 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|08 local.get $0 local.get $3 @@ -21019,7 +20995,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 3 @@ -21051,7 +21027,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.010 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -21062,9 +21038,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.010 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|011 local.get $0 local.get $3 @@ -21074,7 +21050,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 3 @@ -21106,7 +21082,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.013 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -21117,9 +21093,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.013 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|014 local.get $0 local.get $3 @@ -21129,7 +21105,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 3 @@ -21161,7 +21137,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.016 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -21172,9 +21148,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.016 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|017 local.get $0 local.get $3 @@ -21184,7 +21160,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 3 @@ -21216,7 +21192,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.019 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -21227,9 +21203,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.019 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|020 local.get $0 local.get $3 @@ -21239,7 +21215,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 1 @@ -21269,7 +21245,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.022 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -21283,16 +21259,16 @@ local.get $3 i32.const 100 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|023 local.get $0 local.get $3 @@ -21302,7 +21278,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 1 @@ -21331,37 +21307,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|00 local.get $0 i32.const 0 @@ -21371,7 +21347,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 0 @@ -21398,37 +21374,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.05 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.05 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|06 local.get $0 i32.const 0 @@ -21438,7 +21414,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 11 @@ -21467,37 +21443,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.011 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.011 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|012 local.get $0 i32.const 0 @@ -21507,7 +21483,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const -1 @@ -21536,37 +21512,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.017 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.017 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|018 local.get $0 i32.const 0 @@ -21576,7 +21552,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 3 @@ -21606,7 +21582,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.019 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -21622,9 +21598,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|024 local.get $0 i32.const 0 @@ -21634,7 +21610,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 3 @@ -21664,7 +21640,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.026 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -21680,9 +21656,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|027 local.get $0 i32.const 0 @@ -21692,7 +21668,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 3 @@ -21722,7 +21698,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.029 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -21738,9 +21714,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|030 local.get $0 i32.const 0 @@ -21750,7 +21726,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 3 @@ -21780,7 +21756,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.032 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -21796,9 +21772,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|033 local.get $0 i32.const 0 @@ -21808,7 +21784,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 1 @@ -21838,7 +21814,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.035 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -21849,9 +21825,9 @@ i32.const 10 i32.sub local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|036 local.get $0 i32.const 0 @@ -21861,7 +21837,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 1 @@ -21891,7 +21867,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.038 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -21902,9 +21878,9 @@ i32.const 11 i32.sub local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|039 local.get $0 i32.const 0 @@ -21914,7 +21890,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 1 @@ -21942,17 +21918,17 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 9 call $~lib/typedarray/Float32Array#subarray - local.tee $2 + local.tee $4 i32.store offset=8 i32.const 0 local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.041 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -21962,9 +21938,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.041 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|042 local.get $0 local.get $3 @@ -21974,7 +21950,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 3 @@ -22006,7 +21982,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.044 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -22016,9 +21992,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.044 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|045 local.get $0 local.get $3 @@ -22028,7 +22004,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 4 @@ -22058,7 +22034,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.047 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -22068,9 +22044,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.047 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|048 local.get $0 local.get $3 @@ -22080,7 +22056,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 5 @@ -22112,7 +22088,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.050 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -22122,9 +22098,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.050 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|051 local.get $0 local.get $3 @@ -22134,7 +22110,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 9 @@ -22166,7 +22142,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.053 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -22176,9 +22152,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.053 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|054 local.get $0 local.get $3 @@ -22188,7 +22164,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 10 @@ -22220,7 +22196,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.056 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -22230,9 +22206,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.056 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|057 local.get $0 local.get $3 @@ -22242,7 +22218,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 11 @@ -22274,7 +22250,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.059 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -22285,9 +22261,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.059 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|060 local.get $0 local.get $3 @@ -22297,7 +22273,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 5 @@ -22329,7 +22305,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.062 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -22340,9 +22316,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.062 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|063 local.get $0 local.get $3 @@ -22352,7 +22328,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 5 @@ -22420,14 +22396,14 @@ i32.load local.tee $1 call $~lib/typedarray/Float64Array#constructor - local.tee $2 + local.tee $4 i32.store offset=4 loop $for-loop|0 local.get $0 local.get $1 i32.lt_s if - local.get $2 + local.get $4 local.get $0 i32.const 7728 local.get $0 @@ -22446,7 +22422,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -22456,9 +22432,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|0 local.get $0 local.get $3 @@ -22468,7 +22444,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 0 @@ -22498,7 +22474,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.01 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -22508,9 +22484,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.01 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|02 local.get $0 local.get $3 @@ -22520,7 +22496,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 11 @@ -22552,7 +22528,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.04 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -22562,9 +22538,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.04 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|05 local.get $0 local.get $3 @@ -22574,7 +22550,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const -1 @@ -22606,7 +22582,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.07 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -22616,9 +22592,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.07 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|08 local.get $0 local.get $3 @@ -22628,7 +22604,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 3 @@ -22660,7 +22636,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.010 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -22671,9 +22647,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.010 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|011 local.get $0 local.get $3 @@ -22683,7 +22659,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 3 @@ -22715,7 +22691,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.013 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -22726,9 +22702,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.013 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|014 local.get $0 local.get $3 @@ -22738,7 +22714,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 3 @@ -22770,7 +22746,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.016 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -22781,9 +22757,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.016 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|017 local.get $0 local.get $3 @@ -22793,7 +22769,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 3 @@ -22825,7 +22801,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.019 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -22836,9 +22812,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.019 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|020 local.get $0 local.get $3 @@ -22848,7 +22824,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 1 @@ -22878,7 +22854,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.022 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -22892,16 +22868,16 @@ local.get $3 i32.const 100 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|023 local.get $0 local.get $3 @@ -22911,7 +22887,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 1 @@ -22940,37 +22916,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|00 local.get $0 i32.const 0 @@ -22980,7 +22956,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 0 @@ -23007,37 +22983,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.05 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.05 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|06 local.get $0 i32.const 0 @@ -23047,7 +23023,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 11 @@ -23076,37 +23052,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.011 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.011 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|012 local.get $0 i32.const 0 @@ -23116,7 +23092,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const -1 @@ -23145,37 +23121,37 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 - local.set $4 + local.tee $2 + local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.017 - local.get $0 + local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.017 local.get $0 - local.get $4 + local.get $2 i32.add - local.get $0 + local.get $2 i32.const 1 i32.sub - local.get $4 local.get $0 - local.get $4 - i32.le_s + local.get $0 + local.get $2 + i32.ge_s select - local.get $4 + local.get $0 i32.const 0 i32.lt_s select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|018 local.get $0 i32.const 0 @@ -23185,7 +23161,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 3 @@ -23215,7 +23191,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.019 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -23231,9 +23207,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|024 local.get $0 i32.const 0 @@ -23243,7 +23219,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 3 @@ -23273,7 +23249,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.026 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -23289,9 +23265,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|027 local.get $0 i32.const 0 @@ -23301,7 +23277,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 3 @@ -23331,7 +23307,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.029 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -23347,9 +23323,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|030 local.get $0 i32.const 0 @@ -23359,7 +23335,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 3 @@ -23389,7 +23365,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.032 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -23405,9 +23381,9 @@ i32.le_u select local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|033 local.get $0 i32.const 0 @@ -23417,7 +23393,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 1 @@ -23447,7 +23423,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.035 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -23458,9 +23434,9 @@ i32.const 10 i32.sub local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|036 local.get $0 i32.const 0 @@ -23470,7 +23446,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 1 @@ -23500,7 +23476,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.038 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -23511,9 +23487,9 @@ i32.const 11 i32.sub local.set $0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|039 local.get $0 i32.const 0 @@ -23523,7 +23499,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 1 @@ -23551,18 +23527,18 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 4 i32.const 9 call $~lib/typedarray/Float64Array#subarray - local.tee $2 + local.tee $4 i32.store offset=8 i32.const 0 local.set $0 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.041 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -23572,9 +23548,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.041 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|042 local.get $0 local.get $3 @@ -23584,7 +23560,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 3 @@ -23616,7 +23592,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.044 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -23626,9 +23602,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.044 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|045 local.get $0 local.get $3 @@ -23638,7 +23614,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 4 @@ -23668,7 +23644,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.047 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -23678,9 +23654,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.047 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|048 local.get $0 local.get $3 @@ -23690,7 +23666,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 5 @@ -23722,7 +23698,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.050 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -23732,9 +23708,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.050 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|051 local.get $0 local.get $3 @@ -23744,7 +23720,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 9 @@ -23776,7 +23752,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.053 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -23786,9 +23762,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.053 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|054 local.get $0 local.get $3 @@ -23798,7 +23774,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 10 @@ -23830,7 +23806,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.056 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -23840,9 +23816,9 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.056 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|057 local.get $0 local.get $3 @@ -23852,7 +23828,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 11 @@ -23884,7 +23860,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.059 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -23895,9 +23871,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.059 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|060 local.get $0 local.get $3 @@ -23907,7 +23883,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 5 @@ -23939,7 +23915,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.062 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -23950,9 +23926,9 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.062 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|063 local.get $0 local.get $3 @@ -23962,7 +23938,7 @@ local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 5 @@ -24377,7 +24353,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -24391,7 +24367,7 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) local.get $0 - local.tee $3 + local.tee $2 i32.const 7 i32.and local.get $1 @@ -24399,7 +24375,7 @@ i32.and i32.or i32.const 1 - local.get $2 + local.get $3 local.tee $0 i32.const 4 i32.ge_u @@ -24407,16 +24383,16 @@ i32.eqz if loop $do-loop|0 - local.get $3 + local.get $2 i64.load local.get $1 i64.load i64.eq if - local.get $3 + local.get $2 i32.const 8 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 8 i32.add @@ -24433,29 +24409,29 @@ end loop $while-continue|1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.sub local.set $0 - local.get $2 + local.get $3 if - local.get $3 + local.get $2 i32.load16_u local.tee $4 local.get $1 i32.load16_u - local.tee $2 + local.tee $3 i32.ne if local.get $4 - local.get $2 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add @@ -25685,7 +25661,7 @@ local.get $2 i32.const 4 i32.sub - local.tee $4 + local.tee $3 i32.const 1 i32.shl local.get $0 @@ -25699,7 +25675,7 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $3 + local.tee $4 i32.const 10000 i32.rem_u local.tee $2 @@ -25722,7 +25698,7 @@ i64.shl i64.or i64.store - local.get $4 + local.get $3 i32.const 4 i32.sub local.tee $2 @@ -25730,7 +25706,7 @@ i32.shl local.get $0 i32.add - local.get $3 + local.get $4 i32.const 10000 i32.div_u local.tee $3 @@ -27294,82 +27270,82 @@ i32.const 101 i32.store16 offset=2 local.get $0 - local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $1 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $0 + local.get $1 i32.sub - local.set $0 + local.set $1 end - local.get $0 + local.get $1 + local.tee $4 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $4 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $4 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $4 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $4 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $4 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $4 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $4 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $4 i32.const 100000000 i32.ge_u i32.add end end local.set $4 - local.get $0 + local.get $1 local.get $4 i32.const 1 i32.add - local.tee $0 + local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $0 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.add else @@ -27392,86 +27368,87 @@ local.get $0 local.get $2 i32.add - local.tee $2 + local.tee $0 i32.const 101 i32.store16 offset=2 - local.get $2 + local.get $0 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $2 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $0 + local.get $2 i32.sub - local.set $0 + local.set $2 end - local.get $0 + local.get $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $5 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $5 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $5 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $5 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $5 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $5 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $5 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $5 i32.const 100000000 i32.ge_u i32.add end end local.set $5 - local.get $0 + local.get $2 local.get $5 i32.const 1 i32.add - local.tee $0 + local.tee $2 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $0 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 - local.get $0 local.get $1 + local.get $2 i32.add i32.const 2 i32.add @@ -29839,49 +29816,49 @@ local.set $1 local.get $0 i32.load8_s offset=1 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $3 + local.tee $4 select i32.store8 local.get $1 - local.get $7 local.get $3 + local.get $4 select local.set $1 local.get $0 i32.load8_s offset=2 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $3 + local.tee $4 select i32.store8 offset=1 local.get $0 local.get $1 - local.get $7 local.get $3 + local.get $4 select i32.store8 offset=2 end @@ -29890,14 +29867,14 @@ local.set $1 local.get $0 i32.load8_s offset=1 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -29908,7 +29885,7 @@ i32.store8 local.get $0 local.get $1 - local.get $7 + local.get $3 local.get $2 select i32.store8 offset=1 @@ -29928,35 +29905,35 @@ local.get $1 i32.clz i32.sub - local.tee $5 + local.tee $6 i32.const 2 i32.shl - local.tee $6 + local.tee $5 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc local.tee $11 - local.get $6 + local.get $5 i32.add local.set $10 i32.const 0 - local.set $6 + local.set $5 loop $for-loop|1 local.get $5 local.get $6 - i32.gt_u + i32.lt_u if - local.get $6 + local.get $5 i32.const 2 i32.shl local.get $11 i32.add i32.const -1 i32.store - local.get $6 + local.get $5 i32.const 1 i32.add - local.set $6 + local.set $5 br $for-loop|1 end end @@ -29974,7 +29951,7 @@ local.tee $1 i32.const 1 i32.add - local.tee $6 + local.tee $5 i32.const 32 i32.lt_s if @@ -29987,7 +29964,7 @@ i32.lt_s select local.tee $1 - local.get $6 + local.get $5 local.get $2 call $~lib/util/sort/insertionSort end @@ -30000,37 +29977,37 @@ local.get $1 i32.const 1 i32.add - local.tee $5 + local.tee $6 local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $6 - local.get $5 + local.tee $5 + local.get $6 i32.sub i32.const 1 i32.add - local.tee $4 + local.tee $7 i32.const 32 i32.lt_s if local.get $0 - local.get $5 + local.get $6 local.get $12 - local.get $5 + local.get $6 i32.const 31 i32.add - local.tee $6 - local.get $6 + local.tee $5 + local.get $5 local.get $12 i32.gt_s select - local.tee $6 - local.get $4 + local.tee $5 + local.get $7 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $5 + local.get $6 i32.add i64.extend_i32_u i64.const 30 @@ -30054,13 +30031,13 @@ i64.xor i32.wrap_i64 i32.clz - local.set $4 + local.set $7 loop $for-loop|3 local.get $4 local.get $7 - i32.lt_u + i32.gt_u if - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $11 @@ -30073,7 +30050,7 @@ local.get $0 local.get $13 local.get $10 - local.get $7 + local.get $4 i32.const 2 i32.shl local.tee $3 @@ -30093,39 +30070,39 @@ local.get $13 local.set $3 end - local.get $7 + local.get $4 i32.const 1 i32.sub - local.set $7 + local.set $4 br $for-loop|3 end end local.get $11 - local.get $4 + local.get $7 i32.const 2 i32.shl - local.tee $7 + local.tee $4 i32.add local.get $3 i32.store - local.get $7 + local.get $4 local.get $10 i32.add local.get $1 i32.store - local.get $5 - local.set $3 local.get $6 + local.set $3 + local.get $5 local.set $1 - local.get $4 - local.set $7 + local.get $7 + local.set $4 br $while-continue|2 end end loop $for-loop|4 - local.get $7 + local.get $4 if - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $11 @@ -30137,7 +30114,7 @@ if local.get $0 local.get $1 - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $10 @@ -30150,10 +30127,10 @@ local.get $2 call $~lib/util/sort/mergeRuns end - local.get $7 + local.get $4 i32.const 1 i32.sub - local.set $7 + local.set $4 br $for-loop|4 end end @@ -30603,49 +30580,49 @@ local.set $1 local.get $0 i32.load8_u offset=1 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $3 + local.tee $4 select i32.store8 local.get $1 - local.get $7 local.get $3 + local.get $4 select local.set $1 local.get $0 i32.load8_u offset=2 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $3 + local.tee $4 select i32.store8 offset=1 local.get $0 local.get $1 - local.get $7 local.get $3 + local.get $4 select i32.store8 offset=2 end @@ -30654,14 +30631,14 @@ local.set $1 local.get $0 i32.load8_u offset=1 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -30672,7 +30649,7 @@ i32.store8 local.get $0 local.get $1 - local.get $7 + local.get $3 local.get $2 select i32.store8 offset=1 @@ -30692,35 +30669,35 @@ local.get $1 i32.clz i32.sub - local.tee $5 + local.tee $6 i32.const 2 i32.shl - local.tee $6 + local.tee $5 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc local.tee $11 - local.get $6 + local.get $5 i32.add local.set $10 i32.const 0 - local.set $6 + local.set $5 loop $for-loop|1 local.get $5 local.get $6 - i32.gt_u + i32.lt_u if - local.get $6 + local.get $5 i32.const 2 i32.shl local.get $11 i32.add i32.const -1 i32.store - local.get $6 + local.get $5 i32.const 1 i32.add - local.set $6 + local.set $5 br $for-loop|1 end end @@ -30738,7 +30715,7 @@ local.tee $1 i32.const 1 i32.add - local.tee $6 + local.tee $5 i32.const 32 i32.lt_s if @@ -30751,7 +30728,7 @@ i32.lt_s select local.tee $1 - local.get $6 + local.get $5 local.get $2 call $~lib/util/sort/insertionSort end @@ -30764,37 +30741,37 @@ local.get $1 i32.const 1 i32.add - local.tee $5 + local.tee $6 local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $6 - local.get $5 + local.tee $5 + local.get $6 i32.sub i32.const 1 i32.add - local.tee $4 + local.tee $7 i32.const 32 i32.lt_s if local.get $0 - local.get $5 + local.get $6 local.get $12 - local.get $5 + local.get $6 i32.const 31 i32.add - local.tee $6 - local.get $6 + local.tee $5 + local.get $5 local.get $12 i32.gt_s select - local.tee $6 - local.get $4 + local.tee $5 + local.get $7 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $5 + local.get $6 i32.add i64.extend_i32_u i64.const 30 @@ -30818,13 +30795,13 @@ i64.xor i32.wrap_i64 i32.clz - local.set $4 + local.set $7 loop $for-loop|3 local.get $4 local.get $7 - i32.lt_u + i32.gt_u if - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $11 @@ -30837,7 +30814,7 @@ local.get $0 local.get $13 local.get $10 - local.get $7 + local.get $4 i32.const 2 i32.shl local.tee $3 @@ -30857,39 +30834,39 @@ local.get $13 local.set $3 end - local.get $7 + local.get $4 i32.const 1 i32.sub - local.set $7 + local.set $4 br $for-loop|3 end end local.get $11 - local.get $4 + local.get $7 i32.const 2 i32.shl - local.tee $7 + local.tee $4 i32.add local.get $3 i32.store - local.get $7 + local.get $4 local.get $10 i32.add local.get $1 i32.store - local.get $5 - local.set $3 local.get $6 + local.set $3 + local.get $5 local.set $1 - local.get $4 - local.set $7 + local.get $7 + local.set $4 br $while-continue|2 end end loop $for-loop|4 - local.get $7 + local.get $4 if - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $11 @@ -30901,7 +30878,7 @@ if local.get $0 local.get $1 - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $10 @@ -30914,10 +30891,10 @@ local.get $2 call $~lib/util/sort/mergeRuns end - local.get $7 + local.get $4 i32.const 1 i32.sub - local.set $7 + local.set $4 br $for-loop|4 end end @@ -31418,49 +31395,49 @@ local.set $1 local.get $0 i32.load16_s offset=2 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $3 + local.tee $4 select i32.store16 local.get $1 - local.get $7 local.get $3 + local.get $4 select local.set $1 local.get $0 i32.load16_s offset=4 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $3 + local.tee $4 select i32.store16 offset=2 local.get $0 local.get $1 - local.get $7 local.get $3 + local.get $4 select i32.store16 offset=4 end @@ -31469,14 +31446,14 @@ local.set $1 local.get $0 i32.load16_s offset=2 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -31487,7 +31464,7 @@ i32.store16 local.get $0 local.get $1 - local.get $7 + local.get $3 local.get $2 select i32.store16 offset=2 @@ -31507,35 +31484,35 @@ local.get $1 i32.clz i32.sub - local.tee $5 + local.tee $6 i32.const 2 i32.shl - local.tee $6 + local.tee $5 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc local.tee $11 - local.get $6 + local.get $5 i32.add local.set $10 i32.const 0 - local.set $6 + local.set $5 loop $for-loop|1 local.get $5 local.get $6 - i32.gt_u + i32.lt_u if - local.get $6 + local.get $5 i32.const 2 i32.shl local.get $11 i32.add i32.const -1 i32.store - local.get $6 + local.get $5 i32.const 1 i32.add - local.set $6 + local.set $5 br $for-loop|1 end end @@ -31555,7 +31532,7 @@ local.tee $1 i32.const 1 i32.add - local.tee $6 + local.tee $5 i32.const 32 i32.lt_s if @@ -31568,7 +31545,7 @@ i32.lt_s select local.tee $1 - local.get $6 + local.get $5 local.get $2 call $~lib/util/sort/insertionSort end @@ -31581,37 +31558,37 @@ local.get $1 i32.const 1 i32.add - local.tee $5 + local.tee $6 local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $6 - local.get $5 + local.tee $5 + local.get $6 i32.sub i32.const 1 i32.add - local.tee $4 + local.tee $7 i32.const 32 i32.lt_s if local.get $0 - local.get $5 + local.get $6 local.get $12 - local.get $5 + local.get $6 i32.const 31 i32.add - local.tee $6 - local.get $6 + local.tee $5 + local.get $5 local.get $12 i32.gt_s select - local.tee $6 - local.get $4 + local.tee $5 + local.get $7 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $5 + local.get $6 i32.add i64.extend_i32_u i64.const 30 @@ -31635,13 +31612,13 @@ i64.xor i32.wrap_i64 i32.clz - local.set $4 + local.set $7 loop $for-loop|3 local.get $4 local.get $7 - i32.lt_u + i32.gt_u if - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $11 @@ -31654,7 +31631,7 @@ local.get $0 local.get $13 local.get $10 - local.get $7 + local.get $4 i32.const 2 i32.shl local.tee $3 @@ -31674,39 +31651,39 @@ local.get $13 local.set $3 end - local.get $7 + local.get $4 i32.const 1 i32.sub - local.set $7 + local.set $4 br $for-loop|3 end end local.get $11 - local.get $4 + local.get $7 i32.const 2 i32.shl - local.tee $7 + local.tee $4 i32.add local.get $3 i32.store - local.get $7 + local.get $4 local.get $10 i32.add local.get $1 i32.store - local.get $5 - local.set $3 local.get $6 + local.set $3 + local.get $5 local.set $1 - local.get $4 - local.set $7 + local.get $7 + local.set $4 br $while-continue|2 end end loop $for-loop|4 - local.get $7 + local.get $4 if - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $11 @@ -31718,7 +31695,7 @@ if local.get $0 local.get $1 - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $10 @@ -31731,10 +31708,10 @@ local.get $2 call $~lib/util/sort/mergeRuns end - local.get $7 + local.get $4 i32.const 1 i32.sub - local.set $7 + local.set $4 br $for-loop|4 end end @@ -32225,49 +32202,49 @@ local.set $1 local.get $0 i32.load16_u offset=2 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $3 + local.tee $4 select i32.store16 local.get $1 - local.get $7 local.get $3 + local.get $4 select local.set $1 local.get $0 i32.load16_u offset=4 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $3 + local.tee $4 select i32.store16 offset=2 local.get $0 local.get $1 - local.get $7 local.get $3 + local.get $4 select i32.store16 offset=4 end @@ -32276,14 +32253,14 @@ local.set $1 local.get $0 i32.load16_u offset=2 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -32294,7 +32271,7 @@ i32.store16 local.get $0 local.get $1 - local.get $7 + local.get $3 local.get $2 select i32.store16 offset=2 @@ -32314,35 +32291,35 @@ local.get $1 i32.clz i32.sub - local.tee $5 + local.tee $6 i32.const 2 i32.shl - local.tee $6 + local.tee $5 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc local.tee $11 - local.get $6 + local.get $5 i32.add local.set $10 i32.const 0 - local.set $6 + local.set $5 loop $for-loop|1 local.get $5 local.get $6 - i32.gt_u + i32.lt_u if - local.get $6 + local.get $5 i32.const 2 i32.shl local.get $11 i32.add i32.const -1 i32.store - local.get $6 + local.get $5 i32.const 1 i32.add - local.set $6 + local.set $5 br $for-loop|1 end end @@ -32362,7 +32339,7 @@ local.tee $1 i32.const 1 i32.add - local.tee $6 + local.tee $5 i32.const 32 i32.lt_s if @@ -32375,7 +32352,7 @@ i32.lt_s select local.tee $1 - local.get $6 + local.get $5 local.get $2 call $~lib/util/sort/insertionSort end @@ -32388,37 +32365,37 @@ local.get $1 i32.const 1 i32.add - local.tee $5 + local.tee $6 local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $6 - local.get $5 + local.tee $5 + local.get $6 i32.sub i32.const 1 i32.add - local.tee $4 + local.tee $7 i32.const 32 i32.lt_s if local.get $0 - local.get $5 + local.get $6 local.get $12 - local.get $5 + local.get $6 i32.const 31 i32.add - local.tee $6 - local.get $6 + local.tee $5 + local.get $5 local.get $12 i32.gt_s select - local.tee $6 - local.get $4 + local.tee $5 + local.get $7 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $5 + local.get $6 i32.add i64.extend_i32_u i64.const 30 @@ -32442,13 +32419,13 @@ i64.xor i32.wrap_i64 i32.clz - local.set $4 + local.set $7 loop $for-loop|3 local.get $4 local.get $7 - i32.lt_u + i32.gt_u if - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $11 @@ -32461,7 +32438,7 @@ local.get $0 local.get $13 local.get $10 - local.get $7 + local.get $4 i32.const 2 i32.shl local.tee $3 @@ -32481,39 +32458,39 @@ local.get $13 local.set $3 end - local.get $7 + local.get $4 i32.const 1 i32.sub - local.set $7 + local.set $4 br $for-loop|3 end end local.get $11 - local.get $4 + local.get $7 i32.const 2 i32.shl - local.tee $7 + local.tee $4 i32.add local.get $3 i32.store - local.get $7 + local.get $4 local.get $10 i32.add local.get $1 i32.store - local.get $5 - local.set $3 local.get $6 + local.set $3 + local.get $5 local.set $1 - local.get $4 - local.set $7 + local.get $7 + local.set $4 br $while-continue|2 end end loop $for-loop|4 - local.get $7 + local.get $4 if - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $11 @@ -32525,7 +32502,7 @@ if local.get $0 local.get $1 - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $10 @@ -32538,10 +32515,10 @@ local.get $2 call $~lib/util/sort/mergeRuns end - local.get $7 + local.get $4 i32.const 1 i32.sub - local.set $7 + local.set $4 br $for-loop|4 end end @@ -33042,49 +33019,49 @@ local.set $1 local.get $0 i32.load offset=4 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $3 + local.tee $4 select i32.store local.get $1 - local.get $7 local.get $3 + local.get $4 select local.set $1 local.get $0 i32.load offset=8 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $3 + local.tee $4 select i32.store offset=4 local.get $0 local.get $1 - local.get $7 local.get $3 + local.get $4 select i32.store offset=8 end @@ -33093,14 +33070,14 @@ local.set $1 local.get $0 i32.load offset=4 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -33111,7 +33088,7 @@ i32.store local.get $0 local.get $1 - local.get $7 + local.get $3 local.get $2 select i32.store offset=4 @@ -33131,35 +33108,35 @@ local.get $1 i32.clz i32.sub - local.tee $5 + local.tee $6 i32.const 2 i32.shl - local.tee $6 + local.tee $5 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc local.tee $11 - local.get $6 + local.get $5 i32.add local.set $10 i32.const 0 - local.set $6 + local.set $5 loop $for-loop|1 local.get $5 local.get $6 - i32.gt_u + i32.lt_u if - local.get $6 + local.get $5 i32.const 2 i32.shl local.get $11 i32.add i32.const -1 i32.store - local.get $6 + local.get $5 i32.const 1 i32.add - local.set $6 + local.set $5 br $for-loop|1 end end @@ -33179,7 +33156,7 @@ local.tee $1 i32.const 1 i32.add - local.tee $6 + local.tee $5 i32.const 32 i32.lt_s if @@ -33192,7 +33169,7 @@ i32.lt_s select local.tee $1 - local.get $6 + local.get $5 local.get $2 call $~lib/util/sort/insertionSort end @@ -33205,37 +33182,37 @@ local.get $1 i32.const 1 i32.add - local.tee $5 + local.tee $6 local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $6 - local.get $5 + local.tee $5 + local.get $6 i32.sub i32.const 1 i32.add - local.tee $4 + local.tee $7 i32.const 32 i32.lt_s if local.get $0 - local.get $5 + local.get $6 local.get $12 - local.get $5 + local.get $6 i32.const 31 i32.add - local.tee $6 - local.get $6 + local.tee $5 + local.get $5 local.get $12 i32.gt_s select - local.tee $6 - local.get $4 + local.tee $5 + local.get $7 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $5 + local.get $6 i32.add i64.extend_i32_u i64.const 30 @@ -33259,13 +33236,13 @@ i64.xor i32.wrap_i64 i32.clz - local.set $4 + local.set $7 loop $for-loop|3 local.get $4 local.get $7 - i32.lt_u + i32.gt_u if - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $11 @@ -33278,7 +33255,7 @@ local.get $0 local.get $13 local.get $10 - local.get $7 + local.get $4 i32.const 2 i32.shl local.tee $3 @@ -33298,39 +33275,39 @@ local.get $13 local.set $3 end - local.get $7 + local.get $4 i32.const 1 i32.sub - local.set $7 + local.set $4 br $for-loop|3 end end local.get $11 - local.get $4 + local.get $7 i32.const 2 i32.shl - local.tee $7 + local.tee $4 i32.add local.get $3 i32.store - local.get $7 + local.get $4 local.get $10 i32.add local.get $1 i32.store - local.get $5 - local.set $3 local.get $6 + local.set $3 + local.get $5 local.set $1 - local.get $4 - local.set $7 + local.get $7 + local.set $4 br $while-continue|2 end end loop $for-loop|4 - local.get $7 + local.get $4 if - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $11 @@ -33342,7 +33319,7 @@ if local.get $0 local.get $1 - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $10 @@ -33355,10 +33332,10 @@ local.get $2 call $~lib/util/sort/mergeRuns end - local.get $7 + local.get $4 i32.const 1 i32.sub - local.set $7 + local.set $4 br $for-loop|4 end end @@ -33843,49 +33820,49 @@ local.set $1 local.get $0 i32.load offset=4 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $3 + local.tee $4 select i32.store local.get $1 - local.get $7 local.get $3 + local.get $4 select local.set $1 local.get $0 i32.load offset=8 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $3 + local.tee $4 select i32.store offset=4 local.get $0 local.get $1 - local.get $7 local.get $3 + local.get $4 select i32.store offset=8 end @@ -33894,14 +33871,14 @@ local.set $1 local.get $0 i32.load offset=4 - local.set $7 + local.set $3 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $7 + local.get $3 local.get $1 local.get $1 - local.get $7 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -33912,7 +33889,7 @@ i32.store local.get $0 local.get $1 - local.get $7 + local.get $3 local.get $2 select i32.store offset=4 @@ -33932,35 +33909,35 @@ local.get $1 i32.clz i32.sub - local.tee $5 + local.tee $6 i32.const 2 i32.shl - local.tee $6 + local.tee $5 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc local.tee $11 - local.get $6 + local.get $5 i32.add local.set $10 i32.const 0 - local.set $6 + local.set $5 loop $for-loop|1 local.get $5 local.get $6 - i32.gt_u + i32.lt_u if - local.get $6 + local.get $5 i32.const 2 i32.shl local.get $11 i32.add i32.const -1 i32.store - local.get $6 + local.get $5 i32.const 1 i32.add - local.set $6 + local.set $5 br $for-loop|1 end end @@ -33980,7 +33957,7 @@ local.tee $1 i32.const 1 i32.add - local.tee $6 + local.tee $5 i32.const 32 i32.lt_s if @@ -33993,7 +33970,7 @@ i32.lt_s select local.tee $1 - local.get $6 + local.get $5 local.get $2 call $~lib/util/sort/insertionSort end @@ -34006,37 +33983,37 @@ local.get $1 i32.const 1 i32.add - local.tee $5 + local.tee $6 local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $6 - local.get $5 + local.tee $5 + local.get $6 i32.sub i32.const 1 i32.add - local.tee $4 + local.tee $7 i32.const 32 i32.lt_s if local.get $0 - local.get $5 + local.get $6 local.get $12 - local.get $5 + local.get $6 i32.const 31 i32.add - local.tee $6 - local.get $6 + local.tee $5 + local.get $5 local.get $12 i32.gt_s select - local.tee $6 - local.get $4 + local.tee $5 + local.get $7 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $5 + local.get $6 i32.add i64.extend_i32_u i64.const 30 @@ -34060,13 +34037,13 @@ i64.xor i32.wrap_i64 i32.clz - local.set $4 + local.set $7 loop $for-loop|3 local.get $4 local.get $7 - i32.lt_u + i32.gt_u if - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $11 @@ -34079,7 +34056,7 @@ local.get $0 local.get $13 local.get $10 - local.get $7 + local.get $4 i32.const 2 i32.shl local.tee $3 @@ -34099,39 +34076,39 @@ local.get $13 local.set $3 end - local.get $7 + local.get $4 i32.const 1 i32.sub - local.set $7 + local.set $4 br $for-loop|3 end end local.get $11 - local.get $4 + local.get $7 i32.const 2 i32.shl - local.tee $7 + local.tee $4 i32.add local.get $3 i32.store - local.get $7 + local.get $4 local.get $10 i32.add local.get $1 i32.store - local.get $5 - local.set $3 local.get $6 + local.set $3 + local.get $5 local.set $1 - local.get $4 - local.set $7 + local.get $7 + local.set $4 br $while-continue|2 end end loop $for-loop|4 - local.get $7 + local.get $4 if - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $11 @@ -34143,7 +34120,7 @@ if local.get $0 local.get $1 - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $10 @@ -34156,10 +34133,10 @@ local.get $2 call $~lib/util/sort/mergeRuns end - local.get $7 + local.get $4 i32.const 1 i32.sub - local.set $7 + local.set $4 br $for-loop|4 end end @@ -34189,41 +34166,41 @@ (func $~lib/util/sort/insertionSort (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (local $5 i64) (local $6 i64) - (local $7 i64) - (local $8 i32) + (local $7 i32) + (local $8 i64) local.get $3 local.get $2 local.get $1 i32.sub i32.const 1 i32.add - local.tee $8 + local.tee $7 local.get $3 i32.sub i32.const 1 i32.and i32.sub - local.get $8 + local.get $7 i32.const 1 i32.and local.get $3 select local.get $1 i32.add - local.set $8 + local.set $7 loop $for-loop|0 local.get $2 - local.get $8 + local.get $7 i32.ge_s if - local.get $8 + local.get $7 i32.const 3 i32.shl local.get $0 i32.add local.tee $3 i64.load offset=8 - local.tee $7 + local.tee $8 local.set $6 local.get $3 i64.load @@ -34231,7 +34208,7 @@ i32.const 2 global.set $~argumentsLength local.get $5 - local.get $7 + local.get $8 local.get $4 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -34240,10 +34217,10 @@ if local.get $5 local.set $6 - local.get $7 + local.get $8 local.set $5 end - local.get $8 + local.get $7 i32.const 1 i32.sub local.set $3 @@ -34259,10 +34236,10 @@ local.get $0 i32.add i64.load - local.set $7 + local.set $8 i32.const 2 global.set $~argumentsLength - local.get $7 + local.get $8 local.get $5 local.get $4 i32.load @@ -34275,7 +34252,7 @@ i32.shl local.get $0 i32.add - local.get $7 + local.get $8 i64.store offset=16 local.get $3 i32.const 1 @@ -34337,10 +34314,10 @@ i32.add local.get $6 i64.store offset=8 - local.get $8 + local.get $7 i32.const 2 i32.add - local.set $8 + local.set $7 br $for-loop|0 end end @@ -34870,27 +34847,25 @@ i32.wrap_i64 i32.clz local.set $1 - local.get $4 - local.set $8 loop $for-loop|3 local.get $1 - local.get $8 + local.get $4 i32.lt_u if - local.get $8 + local.get $4 i32.const 2 i32.shl local.get $13 i32.add i32.load - local.tee $4 + local.tee $8 i32.const -1 i32.ne if local.get $0 - local.get $4 - local.get $12 local.get $8 + local.get $12 + local.get $4 i32.const 2 i32.shl local.tee $3 @@ -34907,13 +34882,13 @@ i32.add i32.const -1 i32.store - local.get $4 + local.get $8 local.set $3 end - local.get $8 + local.get $4 i32.const 1 i32.sub - local.set $8 + local.set $4 br $for-loop|3 end end @@ -35000,41 +34975,41 @@ (func $~lib/util/sort/insertionSort (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (local $5 i64) (local $6 i64) - (local $7 i64) - (local $8 i32) + (local $7 i32) + (local $8 i64) local.get $3 local.get $2 local.get $1 i32.sub i32.const 1 i32.add - local.tee $8 + local.tee $7 local.get $3 i32.sub i32.const 1 i32.and i32.sub - local.get $8 + local.get $7 i32.const 1 i32.and local.get $3 select local.get $1 i32.add - local.set $8 + local.set $7 loop $for-loop|0 local.get $2 - local.get $8 + local.get $7 i32.ge_s if - local.get $8 + local.get $7 i32.const 3 i32.shl local.get $0 i32.add local.tee $3 i64.load offset=8 - local.tee $7 + local.tee $8 local.set $6 local.get $3 i64.load @@ -35042,7 +35017,7 @@ i32.const 2 global.set $~argumentsLength local.get $5 - local.get $7 + local.get $8 local.get $4 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -35051,10 +35026,10 @@ if local.get $5 local.set $6 - local.get $7 + local.get $8 local.set $5 end - local.get $8 + local.get $7 i32.const 1 i32.sub local.set $3 @@ -35070,10 +35045,10 @@ local.get $0 i32.add i64.load - local.set $7 + local.set $8 i32.const 2 global.set $~argumentsLength - local.get $7 + local.get $8 local.get $5 local.get $4 i32.load @@ -35086,7 +35061,7 @@ i32.shl local.get $0 i32.add - local.get $7 + local.get $8 i64.store offset=16 local.get $3 i32.const 1 @@ -35148,10 +35123,10 @@ i32.add local.get $6 i64.store offset=8 - local.get $8 + local.get $7 i32.const 2 i32.add - local.set $8 + local.set $7 br $for-loop|0 end end @@ -35681,27 +35656,25 @@ i32.wrap_i64 i32.clz local.set $1 - local.get $4 - local.set $8 loop $for-loop|3 local.get $1 - local.get $8 + local.get $4 i32.lt_u if - local.get $8 + local.get $4 i32.const 2 i32.shl local.get $13 i32.add i32.load - local.tee $4 + local.tee $8 i32.const -1 i32.ne if local.get $0 - local.get $4 - local.get $12 local.get $8 + local.get $12 + local.get $4 i32.const 2 i32.shl local.tee $3 @@ -35718,13 +35691,13 @@ i32.add i32.const -1 i32.store - local.get $4 + local.get $8 local.set $3 end - local.get $8 + local.get $4 i32.const 1 i32.sub - local.set $8 + local.set $4 br $for-loop|3 end end @@ -35811,41 +35784,41 @@ (func $~lib/util/sort/insertionSort (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (local $5 f32) (local $6 f32) - (local $7 f32) - (local $8 i32) + (local $7 i32) + (local $8 f32) local.get $3 local.get $2 local.get $1 i32.sub i32.const 1 i32.add - local.tee $8 + local.tee $7 local.get $3 i32.sub i32.const 1 i32.and i32.sub - local.get $8 + local.get $7 i32.const 1 i32.and local.get $3 select local.get $1 i32.add - local.set $8 + local.set $7 loop $for-loop|0 local.get $2 - local.get $8 + local.get $7 i32.ge_s if - local.get $8 + local.get $7 i32.const 2 i32.shl local.get $0 i32.add local.tee $3 f32.load offset=4 - local.tee $7 + local.tee $8 local.set $6 local.get $3 f32.load @@ -35853,7 +35826,7 @@ i32.const 2 global.set $~argumentsLength local.get $5 - local.get $7 + local.get $8 local.get $4 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -35862,10 +35835,10 @@ if local.get $5 local.set $6 - local.get $7 + local.get $8 local.set $5 end - local.get $8 + local.get $7 i32.const 1 i32.sub local.set $3 @@ -35881,10 +35854,10 @@ local.get $0 i32.add f32.load - local.set $7 + local.set $8 i32.const 2 global.set $~argumentsLength - local.get $7 + local.get $8 local.get $5 local.get $4 i32.load @@ -35897,7 +35870,7 @@ i32.shl local.get $0 i32.add - local.get $7 + local.get $8 f32.store offset=8 local.get $3 i32.const 1 @@ -35959,10 +35932,10 @@ i32.add local.get $6 f32.store offset=4 - local.get $8 + local.get $7 i32.const 2 i32.add - local.set $8 + local.set $7 br $for-loop|0 end end @@ -36493,27 +36466,25 @@ i32.wrap_i64 i32.clz local.set $1 - local.get $4 - local.set $8 loop $for-loop|3 local.get $1 - local.get $8 + local.get $4 i32.lt_u if - local.get $8 + local.get $4 i32.const 2 i32.shl local.get $14 i32.add i32.load - local.tee $4 + local.tee $8 i32.const -1 i32.ne if local.get $0 - local.get $4 - local.get $13 local.get $8 + local.get $13 + local.get $4 i32.const 2 i32.shl local.tee $3 @@ -36530,13 +36501,13 @@ i32.add i32.const -1 i32.store - local.get $4 + local.get $8 local.set $3 end - local.get $8 + local.get $4 i32.const 1 i32.sub - local.set $8 + local.set $4 br $for-loop|3 end end @@ -36721,34 +36692,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $1 i64.const 0 i64.store - local.get $9 + local.get $1 i32.const 0 i32.store offset=8 - local.get $9 + local.get $1 i32.const 6 call $~lib/typedarray/Int8Array#constructor - local.tee $2 + local.tee $9 i32.store - local.get $2 + local.get $9 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $9 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $9 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $9 i32.const 3 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $9 i32.const 5 i32.const 5 call $~lib/typedarray/Int8Array#__set @@ -36765,91 +36736,91 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $1 i64.const 0 i64.store - local.get $2 - i32.load offset=8 - local.set $7 local.get $9 + i32.load offset=8 + local.set $4 + local.get $1 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store offset=4 - local.get $2 + local.get $9 i32.load offset=4 - local.set $3 + local.set $8 loop $for-loop|0 - local.get $7 - local.get $8 - i32.gt_s + local.get $3 + local.get $4 + i32.lt_s if local.get $3 local.get $8 i32.add i32.load8_s - local.set $5 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $8 - local.get $2 + local.get $6 + local.get $3 + local.get $9 i32.const 3952 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $1 - local.tee $0 - i32.const 1 - i32.add - local.set $1 local.get $0 - local.get $6 + local.tee $2 + i32.const 1 i32.add + local.set $0 + local.get $2 local.get $5 + i32.add + local.get $6 i32.store8 end - local.get $8 + local.get $3 i32.const 1 i32.add - local.set $8 + local.set $3 br $for-loop|0 end end - local.get $9 - local.get $6 local.get $1 + local.get $5 + local.get $0 call $~lib/rt/itcms/__renew - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 if - local.get $9 - local.get $0 + local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 local.get $1 - i32.store offset=8 - local.get $9 local.get $0 + i32.store offset=8 + local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 + local.get $1 i32.store offset=8 - local.get $9 + local.get $1 i32.load offset=4 - local.get $9 + local.get $1 i32.load i32.sub if @@ -36860,7 +36831,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.load offset=8 i32.const 3 i32.ne @@ -36872,7 +36843,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 3 @@ -36885,7 +36856,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 4 @@ -36898,7 +36869,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 5 @@ -36945,34 +36916,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $1 i64.const 0 i64.store - local.get $9 + local.get $1 i32.const 0 i32.store offset=8 - local.get $9 + local.get $1 i32.const 6 call $~lib/typedarray/Uint8Array#constructor - local.tee $2 + local.tee $9 i32.store - local.get $2 + local.get $9 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $9 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $9 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $9 i32.const 3 i32.const 4 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $9 i32.const 5 i32.const 5 call $~lib/typedarray/Uint8Array#__set @@ -36989,91 +36960,91 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $1 i64.const 0 i64.store - local.get $2 - i32.load offset=8 - local.set $7 local.get $9 + i32.load offset=8 + local.set $4 + local.get $1 i32.const 12 i32.const 4 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store offset=4 - local.get $2 + local.get $9 i32.load offset=4 - local.set $3 + local.set $8 loop $for-loop|0 - local.get $7 - local.get $8 - i32.gt_s + local.get $3 + local.get $4 + i32.lt_s if local.get $3 local.get $8 i32.add i32.load8_u - local.set $5 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $8 - local.get $2 + local.get $6 + local.get $3 + local.get $9 i32.const 3984 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $1 - local.tee $0 - i32.const 1 - i32.add - local.set $1 local.get $0 - local.get $6 + local.tee $2 + i32.const 1 i32.add + local.set $0 + local.get $2 local.get $5 + i32.add + local.get $6 i32.store8 end - local.get $8 + local.get $3 i32.const 1 i32.add - local.set $8 + local.set $3 br $for-loop|0 end end - local.get $9 - local.get $6 local.get $1 + local.get $5 + local.get $0 call $~lib/rt/itcms/__renew - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 if - local.get $9 - local.get $0 + local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 local.get $1 - i32.store offset=8 - local.get $9 local.get $0 + i32.store offset=8 + local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 + local.get $1 i32.store offset=8 - local.get $9 + local.get $1 i32.load offset=4 - local.get $9 + local.get $1 i32.load i32.sub if @@ -37084,7 +37055,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.load offset=8 i32.const 3 i32.ne @@ -37096,7 +37067,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 3 @@ -37109,7 +37080,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 4 @@ -37122,7 +37093,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 5 @@ -37169,34 +37140,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $1 i64.const 0 i64.store - local.get $9 + local.get $1 i32.const 0 i32.store offset=8 - local.get $9 + local.get $1 i32.const 6 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $2 + local.tee $9 i32.store - local.get $2 + local.get $9 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $9 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $9 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $9 i32.const 3 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $9 i32.const 5 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#__set @@ -37213,91 +37184,91 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $1 i64.const 0 i64.store - local.get $2 - i32.load offset=8 - local.set $7 local.get $9 + i32.load offset=8 + local.set $4 + local.get $1 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store offset=4 - local.get $2 + local.get $9 i32.load offset=4 - local.set $3 + local.set $8 loop $for-loop|0 - local.get $7 - local.get $8 - i32.gt_s + local.get $3 + local.get $4 + i32.lt_s if local.get $3 local.get $8 i32.add i32.load8_u - local.set $5 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $8 - local.get $2 + local.get $6 + local.get $3 + local.get $9 i32.const 4016 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $1 - local.tee $0 - i32.const 1 - i32.add - local.set $1 local.get $0 - local.get $6 + local.tee $2 + i32.const 1 i32.add + local.set $0 + local.get $2 local.get $5 + i32.add + local.get $6 i32.store8 end - local.get $8 + local.get $3 i32.const 1 i32.add - local.set $8 + local.set $3 br $for-loop|0 end end - local.get $9 - local.get $6 local.get $1 + local.get $5 + local.get $0 call $~lib/rt/itcms/__renew - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 if - local.get $9 - local.get $0 + local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 local.get $1 - i32.store offset=8 - local.get $9 local.get $0 + i32.store offset=8 + local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 + local.get $1 i32.store offset=8 - local.get $9 + local.get $1 i32.load offset=4 - local.get $9 + local.get $1 i32.load i32.sub if @@ -37308,7 +37279,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.load offset=8 i32.const 3 i32.ne @@ -37320,7 +37291,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 3 @@ -37333,7 +37304,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 4 @@ -37346,7 +37317,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 5 @@ -37393,34 +37364,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $1 i64.const 0 i64.store - local.get $9 + local.get $1 i32.const 0 i32.store offset=8 - local.get $9 + local.get $1 i32.const 6 call $~lib/typedarray/Int16Array#constructor - local.tee $2 + local.tee $9 i32.store - local.get $2 + local.get $9 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $2 + local.get $9 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $2 + local.get $9 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set - local.get $2 + local.get $9 i32.const 3 i32.const 4 call $~lib/typedarray/Int16Array#__set - local.get $2 + local.get $9 i32.const 5 i32.const 5 call $~lib/typedarray/Int16Array#__set @@ -37437,102 +37408,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $9 i32.load offset=8 i32.const 1 i32.shr_u - local.set $7 - local.get $9 + local.set $4 + local.get $1 i32.const 12 i32.const 6 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.const 1 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store offset=4 - local.get $2 + local.get $9 i32.load offset=4 - local.set $3 + local.set $8 loop $for-loop|0 - local.get $7 - local.get $8 - i32.gt_s + local.get $3 + local.get $4 + i32.lt_s if - local.get $8 + local.get $3 i32.const 1 i32.shl - local.get $3 + local.get $8 i32.add i32.load16_s - local.set $5 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $8 - local.get $2 + local.get $6 + local.get $3 + local.get $9 i32.const 4048 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $1 - local.tee $0 + local.get $0 + local.tee $2 i32.const 1 i32.add - local.set $1 - local.get $0 + local.set $0 + local.get $2 i32.const 1 i32.shl - local.get $6 - i32.add local.get $5 + i32.add + local.get $6 i32.store16 end - local.get $8 + local.get $3 i32.const 1 i32.add - local.set $8 + local.set $3 br $for-loop|0 end end - local.get $9 - local.get $6 local.get $1 + local.get $5 + local.get $0 i32.const 1 i32.shl - local.tee $1 - call $~lib/rt/itcms/__renew local.tee $0 + call $~lib/rt/itcms/__renew + local.tee $2 i32.store - local.get $0 + local.get $2 if - local.get $9 - local.get $0 + local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 local.get $1 - i32.store offset=8 - local.get $9 local.get $0 + i32.store offset=8 + local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 + local.get $1 i32.store offset=8 - local.get $9 + local.get $1 i32.load offset=4 - local.get $9 + local.get $1 i32.load i32.sub if @@ -37543,7 +37514,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u @@ -37557,7 +37528,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 3 @@ -37570,7 +37541,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 4 @@ -37583,7 +37554,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 5 @@ -37630,34 +37601,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $1 i64.const 0 i64.store - local.get $9 + local.get $1 i32.const 0 i32.store offset=8 - local.get $9 + local.get $1 i32.const 6 call $~lib/typedarray/Uint16Array#constructor - local.tee $2 + local.tee $9 i32.store - local.get $2 + local.get $9 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $2 + local.get $9 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $2 + local.get $9 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set - local.get $2 + local.get $9 i32.const 3 i32.const 4 call $~lib/typedarray/Uint16Array#__set - local.get $2 + local.get $9 i32.const 5 i32.const 5 call $~lib/typedarray/Uint16Array#__set @@ -37674,102 +37645,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $9 i32.load offset=8 i32.const 1 i32.shr_u - local.set $7 - local.get $9 + local.set $4 + local.get $1 i32.const 12 i32.const 7 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.const 1 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store offset=4 - local.get $2 + local.get $9 i32.load offset=4 - local.set $3 + local.set $8 loop $for-loop|0 - local.get $7 - local.get $8 - i32.gt_s + local.get $3 + local.get $4 + i32.lt_s if - local.get $8 + local.get $3 i32.const 1 i32.shl - local.get $3 + local.get $8 i32.add i32.load16_u - local.set $5 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $8 - local.get $2 + local.get $6 + local.get $3 + local.get $9 i32.const 4080 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $1 - local.tee $0 + local.get $0 + local.tee $2 i32.const 1 i32.add - local.set $1 - local.get $0 + local.set $0 + local.get $2 i32.const 1 i32.shl - local.get $6 - i32.add local.get $5 + i32.add + local.get $6 i32.store16 end - local.get $8 + local.get $3 i32.const 1 i32.add - local.set $8 + local.set $3 br $for-loop|0 end end - local.get $9 - local.get $6 local.get $1 + local.get $5 + local.get $0 i32.const 1 i32.shl - local.tee $1 - call $~lib/rt/itcms/__renew local.tee $0 + call $~lib/rt/itcms/__renew + local.tee $2 i32.store - local.get $0 + local.get $2 if - local.get $9 - local.get $0 + local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 local.get $1 - i32.store offset=8 - local.get $9 local.get $0 + i32.store offset=8 + local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 + local.get $1 i32.store offset=8 - local.get $9 + local.get $1 i32.load offset=4 - local.get $9 + local.get $1 i32.load i32.sub if @@ -37780,7 +37751,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u @@ -37794,7 +37765,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 3 @@ -37807,7 +37778,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 4 @@ -37820,7 +37791,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 5 @@ -37867,34 +37838,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $1 i64.const 0 i64.store - local.get $9 + local.get $1 i32.const 0 i32.store offset=8 - local.get $9 + local.get $1 i32.const 6 call $~lib/typedarray/Int32Array#constructor - local.tee $2 + local.tee $9 i32.store - local.get $2 + local.get $9 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $9 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $9 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $9 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $9 i32.const 5 i32.const 5 call $~lib/typedarray/Int32Array#__set @@ -37911,102 +37882,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $9 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 - local.get $9 + local.set $4 + local.get $1 i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.const 2 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store offset=4 - local.get $2 + local.get $9 i32.load offset=4 - local.set $3 + local.set $8 loop $for-loop|0 - local.get $7 - local.get $8 - i32.gt_s + local.get $3 + local.get $4 + i32.lt_s if - local.get $8 + local.get $3 i32.const 2 i32.shl - local.get $3 + local.get $8 i32.add i32.load - local.set $5 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $8 - local.get $2 + local.get $6 + local.get $3 + local.get $9 i32.const 4112 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $1 - local.tee $0 + local.get $0 + local.tee $2 i32.const 1 i32.add - local.set $1 - local.get $0 + local.set $0 + local.get $2 i32.const 2 i32.shl - local.get $6 - i32.add local.get $5 + i32.add + local.get $6 i32.store end - local.get $8 + local.get $3 i32.const 1 i32.add - local.set $8 + local.set $3 br $for-loop|0 end end - local.get $9 - local.get $6 local.get $1 + local.get $5 + local.get $0 i32.const 2 i32.shl - local.tee $1 - call $~lib/rt/itcms/__renew local.tee $0 + call $~lib/rt/itcms/__renew + local.tee $2 i32.store - local.get $0 + local.get $2 if - local.get $9 - local.get $0 + local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 local.get $1 - i32.store offset=8 - local.get $9 local.get $0 + i32.store offset=8 + local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 + local.get $1 i32.store offset=8 - local.get $9 + local.get $1 i32.load offset=4 - local.get $9 + local.get $1 i32.load i32.sub if @@ -38017,7 +37988,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u @@ -38031,7 +38002,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 3 @@ -38044,7 +38015,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 4 @@ -38057,7 +38028,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 5 @@ -38104,34 +38075,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $1 i64.const 0 i64.store - local.get $9 + local.get $1 i32.const 0 i32.store offset=8 - local.get $9 + local.get $1 i32.const 6 call $~lib/typedarray/Uint32Array#constructor - local.tee $2 + local.tee $9 i32.store - local.get $2 + local.get $9 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $2 + local.get $9 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $2 + local.get $9 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set - local.get $2 + local.get $9 i32.const 3 i32.const 4 call $~lib/typedarray/Uint32Array#__set - local.get $2 + local.get $9 i32.const 5 i32.const 5 call $~lib/typedarray/Uint32Array#__set @@ -38148,102 +38119,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $9 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 - local.get $9 + local.set $4 + local.get $1 i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.const 2 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store offset=4 - local.get $2 + local.get $9 i32.load offset=4 - local.set $3 + local.set $8 loop $for-loop|0 - local.get $7 - local.get $8 - i32.gt_s + local.get $3 + local.get $4 + i32.lt_s if - local.get $8 + local.get $3 i32.const 2 i32.shl - local.get $3 + local.get $8 i32.add i32.load - local.set $5 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $8 - local.get $2 + local.get $6 + local.get $3 + local.get $9 i32.const 4144 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $1 - local.tee $0 + local.get $0 + local.tee $2 i32.const 1 i32.add - local.set $1 - local.get $0 + local.set $0 + local.get $2 i32.const 2 i32.shl - local.get $6 - i32.add local.get $5 + i32.add + local.get $6 i32.store end - local.get $8 + local.get $3 i32.const 1 i32.add - local.set $8 + local.set $3 br $for-loop|0 end end - local.get $9 - local.get $6 local.get $1 + local.get $5 + local.get $0 i32.const 2 i32.shl - local.tee $1 - call $~lib/rt/itcms/__renew local.tee $0 + call $~lib/rt/itcms/__renew + local.tee $2 i32.store - local.get $0 + local.get $2 if - local.get $9 - local.get $0 + local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 local.get $1 - i32.store offset=8 - local.get $9 local.get $0 + i32.store offset=8 + local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 + local.get $1 i32.store offset=8 - local.get $9 + local.get $1 i32.load offset=4 - local.get $9 + local.get $1 i32.load i32.sub if @@ -38254,7 +38225,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u @@ -38268,7 +38239,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 3 @@ -38281,7 +38252,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 4 @@ -38294,7 +38265,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 5 @@ -38326,8 +38297,8 @@ (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i64) - (local $6 i32) + (local $5 i32) + (local $6 i64) (local $7 i32) (local $8 i32) (local $9 i32) @@ -38341,34 +38312,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $1 i64.const 0 i64.store - local.get $9 + local.get $1 i32.const 0 i32.store offset=8 - local.get $9 + local.get $1 i32.const 6 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $9 i32.store - local.get $2 + local.get $9 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $9 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $9 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $9 i32.const 3 i64.const 4 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $9 i32.const 5 i64.const 5 call $~lib/typedarray/Int64Array#__set @@ -38385,102 +38356,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $9 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 - local.get $9 + local.set $4 + local.get $1 i32.const 12 i32.const 10 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.const 3 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store offset=4 - local.get $2 + local.get $9 i32.load offset=4 - local.set $3 + local.set $8 loop $for-loop|0 - local.get $7 - local.get $8 - i32.gt_s + local.get $3 + local.get $4 + i32.lt_s if - local.get $8 + local.get $3 i32.const 3 i32.shl - local.get $3 + local.get $8 i32.add i64.load - local.set $5 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $8 - local.get $2 + local.get $6 + local.get $3 + local.get $9 i32.const 4176 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) if - local.get $1 - local.tee $0 + local.get $0 + local.tee $2 i32.const 1 i32.add - local.set $1 - local.get $0 + local.set $0 + local.get $2 i32.const 3 i32.shl - local.get $6 - i32.add local.get $5 + i32.add + local.get $6 i64.store end - local.get $8 + local.get $3 i32.const 1 i32.add - local.set $8 + local.set $3 br $for-loop|0 end end - local.get $9 - local.get $6 local.get $1 + local.get $5 + local.get $0 i32.const 3 i32.shl - local.tee $1 - call $~lib/rt/itcms/__renew local.tee $0 + call $~lib/rt/itcms/__renew + local.tee $2 i32.store - local.get $0 + local.get $2 if - local.get $9 - local.get $0 + local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 local.get $1 - i32.store offset=8 - local.get $9 local.get $0 + i32.store offset=8 + local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 + local.get $1 i32.store offset=8 - local.get $9 + local.get $1 i32.load offset=4 - local.get $9 + local.get $1 i32.load i32.sub if @@ -38491,7 +38462,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u @@ -38505,7 +38476,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 3 @@ -38518,7 +38489,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 4 @@ -38531,7 +38502,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 5 @@ -38563,8 +38534,8 @@ (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i64) - (local $6 i32) + (local $5 i32) + (local $6 i64) (local $7 i32) (local $8 i32) (local $9 i32) @@ -38578,34 +38549,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $1 i64.const 0 i64.store - local.get $9 + local.get $1 i32.const 0 i32.store offset=8 - local.get $9 + local.get $1 i32.const 6 call $~lib/typedarray/Uint64Array#constructor - local.tee $2 + local.tee $9 i32.store - local.get $2 + local.get $9 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $9 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $9 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $9 i32.const 3 i64.const 4 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $9 i32.const 5 i64.const 5 call $~lib/typedarray/Uint64Array#__set @@ -38622,102 +38593,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $9 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 - local.get $9 + local.set $4 + local.get $1 i32.const 12 i32.const 11 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.const 3 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store offset=4 - local.get $2 + local.get $9 i32.load offset=4 - local.set $3 + local.set $8 loop $for-loop|0 - local.get $7 - local.get $8 - i32.gt_s + local.get $3 + local.get $4 + i32.lt_s if - local.get $8 + local.get $3 i32.const 3 i32.shl - local.get $3 + local.get $8 i32.add i64.load - local.set $5 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $8 - local.get $2 + local.get $6 + local.get $3 + local.get $9 i32.const 4208 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) if - local.get $1 - local.tee $0 + local.get $0 + local.tee $2 i32.const 1 i32.add - local.set $1 - local.get $0 + local.set $0 + local.get $2 i32.const 3 i32.shl - local.get $6 - i32.add local.get $5 + i32.add + local.get $6 i64.store end - local.get $8 + local.get $3 i32.const 1 i32.add - local.set $8 + local.set $3 br $for-loop|0 end end - local.get $9 - local.get $6 local.get $1 + local.get $5 + local.get $0 i32.const 3 i32.shl - local.tee $1 - call $~lib/rt/itcms/__renew local.tee $0 + call $~lib/rt/itcms/__renew + local.tee $2 i32.store - local.get $0 + local.get $2 if - local.get $9 - local.get $0 + local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 local.get $1 - i32.store offset=8 - local.get $9 local.get $0 + i32.store offset=8 + local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 + local.get $1 i32.store offset=8 - local.get $9 + local.get $1 i32.load offset=4 - local.get $9 + local.get $1 i32.load i32.sub if @@ -38728,7 +38699,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u @@ -38742,7 +38713,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 3 @@ -38755,7 +38726,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 4 @@ -38768,7 +38739,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 5 @@ -38800,8 +38771,8 @@ (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 f32) - (local $6 i32) + (local $5 i32) + (local $6 f32) (local $7 i32) (local $8 i32) (local $9 i32) @@ -38815,34 +38786,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $1 i64.const 0 i64.store - local.get $9 + local.get $1 i32.const 0 i32.store offset=8 - local.get $9 + local.get $1 i32.const 6 call $~lib/typedarray/Float32Array#constructor - local.tee $2 + local.tee $9 i32.store - local.get $2 + local.get $9 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $9 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $9 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $9 i32.const 3 f32.const 4 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $9 i32.const 5 f32.const 5 call $~lib/typedarray/Float32Array#__set @@ -38859,102 +38830,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $9 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 - local.get $9 + local.set $4 + local.get $1 i32.const 12 i32.const 12 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.const 2 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store offset=4 - local.get $2 + local.get $9 i32.load offset=4 - local.set $3 + local.set $8 loop $for-loop|0 - local.get $7 - local.get $8 - i32.gt_s + local.get $3 + local.get $4 + i32.lt_s if - local.get $8 + local.get $3 i32.const 2 i32.shl - local.get $3 + local.get $8 i32.add f32.load - local.set $5 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $8 - local.get $2 + local.get $6 + local.get $3 + local.get $9 i32.const 4240 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) if - local.get $1 - local.tee $0 + local.get $0 + local.tee $2 i32.const 1 i32.add - local.set $1 - local.get $0 + local.set $0 + local.get $2 i32.const 2 i32.shl - local.get $6 - i32.add local.get $5 + i32.add + local.get $6 f32.store end - local.get $8 + local.get $3 i32.const 1 i32.add - local.set $8 + local.set $3 br $for-loop|0 end end - local.get $9 - local.get $6 local.get $1 + local.get $5 + local.get $0 i32.const 2 i32.shl - local.tee $1 - call $~lib/rt/itcms/__renew local.tee $0 + call $~lib/rt/itcms/__renew + local.tee $2 i32.store - local.get $0 + local.get $2 if - local.get $9 - local.get $0 + local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 local.get $1 - i32.store offset=8 - local.get $9 local.get $0 + i32.store offset=8 + local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 + local.get $1 i32.store offset=8 - local.get $9 + local.get $1 i32.load offset=4 - local.get $9 + local.get $1 i32.load i32.sub if @@ -38965,7 +38936,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u @@ -38979,7 +38950,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 3 @@ -38992,7 +38963,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 4 @@ -39005,7 +38976,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 5 @@ -39037,8 +39008,8 @@ (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 f64) - (local $6 i32) + (local $5 i32) + (local $6 f64) (local $7 i32) (local $8 i32) (local $9 i32) @@ -39052,34 +39023,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $1 i64.const 0 i64.store - local.get $9 + local.get $1 i32.const 0 i32.store offset=8 - local.get $9 + local.get $1 i32.const 6 call $~lib/typedarray/Float64Array#constructor - local.tee $2 + local.tee $9 i32.store - local.get $2 + local.get $9 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $9 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $9 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $9 i32.const 3 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $9 i32.const 5 f64.const 5 call $~lib/typedarray/Float64Array#__set @@ -39096,102 +39067,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $9 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 - local.get $9 + local.set $4 + local.get $1 i32.const 12 i32.const 13 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.const 3 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store offset=4 - local.get $2 + local.get $9 i32.load offset=4 - local.set $3 + local.set $8 loop $for-loop|0 - local.get $7 - local.get $8 - i32.gt_s + local.get $3 + local.get $4 + i32.lt_s if - local.get $8 + local.get $3 i32.const 3 i32.shl - local.get $3 + local.get $8 i32.add f64.load - local.set $5 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $8 - local.get $2 + local.get $6 + local.get $3 + local.get $9 i32.const 4272 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) if - local.get $1 - local.tee $0 + local.get $0 + local.tee $2 i32.const 1 i32.add - local.set $1 - local.get $0 + local.set $0 + local.get $2 i32.const 3 i32.shl - local.get $6 - i32.add local.get $5 + i32.add + local.get $6 f64.store end - local.get $8 + local.get $3 i32.const 1 i32.add - local.set $8 + local.set $3 br $for-loop|0 end end - local.get $9 - local.get $6 local.get $1 + local.get $5 + local.get $0 i32.const 3 i32.shl - local.tee $1 - call $~lib/rt/itcms/__renew local.tee $0 + call $~lib/rt/itcms/__renew + local.tee $2 i32.store - local.get $0 + local.get $2 if - local.get $9 - local.get $0 + local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 local.get $1 - i32.store offset=8 - local.get $9 local.get $0 + i32.store offset=8 + local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 + local.get $1 i32.store offset=8 - local.get $9 + local.get $1 i32.load offset=4 - local.get $9 + local.get $1 i32.load i32.sub if @@ -39202,7 +39173,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u @@ -39216,7 +39187,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 3 @@ -39229,7 +39200,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 4 @@ -39242,7 +39213,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 5 @@ -46198,19 +46169,19 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i64) - (local $4 f32) - (local $5 f64) + (local $3 i32) + (local $4 i32) + (local $5 f32) (local $6 i32) - (local $7 i32) - (local $8 i32) + (local $7 f64) + (local $8 i64) (local $9 i32) - (local $10 i64) - (local $11 f64) + (local $10 i32) + (local $11 i32) (local $12 i32) - (local $13 f32) - (local $14 i32) - (local $15 i32) + (local $13 i64) + (local $14 f32) + (local $15 f64) (local $16 i32) global.get $~lib/memory/__stack_pointer i32.const 32 @@ -46257,16 +46228,16 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i64.const 0 i64.store offset=16 - local.get $1 + local.get $0 i64.const 0 i64.store offset=24 memory.size @@ -46308,21 +46279,21 @@ global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u @@ -46336,9 +46307,9 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -46349,7 +46320,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 12 i32.ne @@ -46361,7 +46332,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 1 @@ -46374,7 +46345,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 2 @@ -46387,7 +46358,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 3 @@ -46401,13 +46372,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#subarray - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u @@ -46421,9 +46392,9 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub i32.const 4 @@ -46436,7 +46407,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 4 i32.ne @@ -46448,7 +46419,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 2 @@ -46464,48 +46435,48 @@ global.get $~lib/memory/__stack_pointer i32.const 8 call $~lib/typedarray/Float64Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 2 f64.const 7 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 3 f64.const 6 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 4 f64.const 5 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 5 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 6 f64.const 3 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 7 f64.const 8 call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Float64Array#subarray - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u @@ -46519,9 +46490,9 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub i32.const 16 @@ -46534,7 +46505,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 32 i32.ne @@ -46548,16 +46519,16 @@ end i32.const 0 global.set $~argumentsLength - local.get $1 + local.get $0 call $~lib/typedarray/Float64Array#sort@varargs drop - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 4 f64.eq if (result i32) - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 5 @@ -46566,7 +46537,7 @@ i32.const 0 end if (result i32) - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 6 @@ -46575,7 +46546,7 @@ i32.const 0 end if (result i32) - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#__get f64.const 7 @@ -46595,21 +46566,21 @@ global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const -32 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $0 i32.const 2 i32.const 256 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get if @@ -46620,7 +46591,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 2 @@ -46633,7 +46604,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 255 @@ -46649,29 +46620,29 @@ global.get $~lib/memory/__stack_pointer i32.const 5 call $~lib/typedarray/Int8Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $16 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $16 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set - local.get $16 + local.get $2 i32.const 3 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $16 + local.get $2 i32.const 4 i32.const 5 call $~lib/typedarray/Int8Array#__set - local.get $16 + local.get $2 i32.const 1 i32.const 1 i32.const 3 @@ -46681,12 +46652,12 @@ i32.const 15 i32.const 1728 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $16 - local.get $1 + local.get $2 + local.get $0 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -46697,7 +46668,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $2 i32.const 0 i32.const 0 i32.const 2147483647 @@ -46707,12 +46678,12 @@ i32.const 15 i32.const 1808 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $16 - local.get $1 + local.get $2 + local.get $0 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -46723,7 +46694,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $2 i32.const 1 i32.const 0 i32.const -3 @@ -46733,12 +46704,12 @@ i32.const 15 i32.const 1840 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $16 - local.get $1 + local.get $2 + local.get $0 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -46749,7 +46720,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $2 i32.const 2 i32.const -2 i32.const 2147483647 @@ -46759,12 +46730,12 @@ i32.const 15 i32.const 1872 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $16 - local.get $1 + local.get $2 + local.get $0 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -46775,7 +46746,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $2 i32.const 0 i32.const 1 i32.const 0 @@ -46785,12 +46756,12 @@ i32.const 15 i32.const 1904 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $16 - local.get $1 + local.get $2 + local.get $0 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -46802,18 +46773,18 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.const 1 i32.const 4 call $~lib/typedarray/Int8Array#subarray - local.tee $0 + local.tee $1 i32.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int8Array#fill - local.get $0 + local.get $1 i32.load offset=8 i32.const 3 i32.ne @@ -46825,9 +46796,9 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub i32.const 1 @@ -46840,7 +46811,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 3 i32.ne @@ -46857,12 +46828,12 @@ i32.const 15 i32.const 1936 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 local.get $0 + i32.store offset=4 local.get $1 + local.get $0 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -46878,12 +46849,12 @@ i32.const 15 i32.const 1968 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $16 - local.get $1 + local.get $2 + local.get $0 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -46897,33 +46868,33 @@ global.get $~lib/memory/__stack_pointer i32.const 5 call $~lib/typedarray/Int32Array#constructor - local.tee $14 + local.tee $4 i32.store offset=8 - local.get $14 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $14 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $14 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $14 + local.get $4 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $14 + local.get $4 i32.const 4 i32.const 5 call $~lib/typedarray/Int32Array#__set - local.get $14 + local.get $4 i32.load offset=4 - local.set $16 + local.set $2 i32.const 1 - local.get $14 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -46948,7 +46919,7 @@ local.get $1 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add i32.const 1 i32.store @@ -46964,12 +46935,12 @@ i32.const 16 i32.const 2000 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $14 - local.get $1 + local.get $4 + local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -46980,11 +46951,11 @@ call $~lib/builtins/abort unreachable end - local.get $14 + local.get $4 i32.load offset=4 - local.set $16 + local.set $2 i32.const 0 - local.get $14 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -47000,7 +46971,7 @@ local.get $0 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add i32.const 0 i32.store @@ -47016,12 +46987,12 @@ i32.const 16 i32.const 2048 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $14 - local.get $1 + local.get $4 + local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47032,11 +47003,11 @@ call $~lib/builtins/abort unreachable end - local.get $14 + local.get $4 i32.load offset=4 - local.set $16 + local.set $2 i32.const 0 - local.get $14 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -47062,7 +47033,7 @@ local.get $1 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add i32.const 1 i32.store @@ -47078,12 +47049,12 @@ i32.const 16 i32.const 2096 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $14 - local.get $1 + local.get $4 + local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47094,32 +47065,32 @@ call $~lib/builtins/abort unreachable end - local.get $14 + local.get $4 i32.load offset=4 - local.set $15 - local.get $14 + local.set $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $16 + local.tee $1 i32.const 2 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select local.set $0 loop $for-loop|05 local.get $0 - local.get $16 + local.get $1 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $15 + local.get $2 i32.add i32.const 2 i32.store @@ -47135,12 +47106,12 @@ i32.const 16 i32.const 2144 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $14 - local.get $1 + local.get $4 + local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47151,11 +47122,11 @@ call $~lib/builtins/abort unreachable end - local.get $14 + local.get $4 i32.load offset=4 - local.set $16 + local.set $2 i32.const 1 - local.get $14 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -47178,7 +47149,7 @@ local.get $1 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add i32.const 0 i32.store @@ -47194,12 +47165,12 @@ i32.const 16 i32.const 2192 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $14 - local.get $1 + local.get $4 + local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47211,17 +47182,17 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $14 + local.get $4 i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#subarray - local.tee $15 + local.tee $3 i32.store offset=12 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 + local.set $2 i32.const 0 - local.get $15 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -47237,7 +47208,7 @@ local.get $0 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add i32.const 0 i32.store @@ -47248,7 +47219,7 @@ br $for-loop|09 end end - local.get $15 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -47262,9 +47233,9 @@ call $~lib/builtins/abort unreachable end - local.get $15 + local.get $3 i32.load offset=4 - local.get $15 + local.get $3 i32.load i32.sub i32.const 4 @@ -47277,7 +47248,7 @@ call $~lib/builtins/abort unreachable end - local.get $15 + local.get $3 i32.load offset=8 i32.const 12 i32.ne @@ -47294,12 +47265,12 @@ i32.const 16 i32.const 2240 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $15 - local.get $1 + local.get $3 + local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47315,12 +47286,12 @@ i32.const 16 i32.const 2272 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $14 - local.get $1 + local.get $4 + local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47334,40 +47305,40 @@ global.get $~lib/memory/__stack_pointer i32.const 6 call $~lib/typedarray/Int8Array#constructor - local.tee $1 + local.tee $0 i32.store offset=12 - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $0 i32.const 5 i32.const 6 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 1 i32.const 6 call $~lib/typedarray/Int8Array#subarray - local.tee $1 + local.tee $0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 2 @@ -47380,7 +47351,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 5 i32.ne @@ -47392,9 +47363,9 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub i32.const 1 @@ -47407,7 +47378,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 5 i32.ne @@ -47420,13 +47391,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 1 i32.const 5 call $~lib/typedarray/Int8Array#subarray - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 3 @@ -47439,7 +47410,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 4 i32.ne @@ -47451,9 +47422,9 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub i32.const 2 @@ -47466,7 +47437,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 4 i32.ne @@ -47479,13 +47450,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Int8Array#subarray - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 4 @@ -47498,7 +47469,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.ne @@ -47510,9 +47481,9 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub i32.const 3 @@ -47525,7 +47496,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.ne @@ -47540,55 +47511,55 @@ global.get $~lib/memory/__stack_pointer i32.const 5 call $~lib/typedarray/Int32Array#constructor - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $16 + local.tee $2 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 3 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2320 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 local.get $0 + i32.store offset=4 local.get $1 + local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47600,32 +47571,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 1 i32.const 3 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2368 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 local.get $0 + i32.store offset=4 local.get $1 + local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47637,32 +47608,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 1 i32.const 2 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2416 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 local.get $0 + i32.store offset=4 local.get $1 + local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47674,32 +47645,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 2 i32.const 2 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2464 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 local.get $0 + i32.store offset=4 local.get $1 + local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47711,32 +47682,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 0 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#copyWithin - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2512 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 local.get $0 + i32.store offset=4 local.get $1 + local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47748,32 +47719,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 1 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#copyWithin - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2560 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 local.get $0 + i32.store offset=4 local.get $1 + local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47785,32 +47756,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 1 i32.const 2 i32.const 4 call $~lib/typedarray/Int32Array#copyWithin - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2608 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 local.get $0 + i32.store offset=4 local.get $1 + local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47822,32 +47793,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 0 i32.const -2 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2656 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 local.get $0 + i32.store offset=4 local.get $1 + local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47859,32 +47830,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 0 i32.const -2 i32.const -1 call $~lib/typedarray/Int32Array#copyWithin - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2704 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 local.get $0 + i32.store offset=4 local.get $1 + local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47896,32 +47867,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const -4 i32.const -3 i32.const -2 call $~lib/typedarray/Int32Array#copyWithin - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2752 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 local.get $0 + i32.store offset=4 local.get $1 + local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47933,32 +47904,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const -4 i32.const -3 i32.const -1 call $~lib/typedarray/Int32Array#copyWithin - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2800 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 local.get $0 + i32.store offset=4 local.get $1 + local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47970,32 +47941,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const -4 i32.const -3 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2848 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 local.get $0 + i32.store offset=4 local.get $1 + local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -48009,36 +47980,36 @@ global.get $~lib/memory/__stack_pointer i32.const 5 call $~lib/typedarray/Int32Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $16 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $16 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $16 + local.get $2 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $16 + local.get $2 i32.const 4 i32.const 5 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#subarray - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u @@ -48052,9 +48023,9 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub i32.const 4 @@ -48067,7 +48038,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 12 i32.ne @@ -48080,13 +48051,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.const 1 i32.const 3 call $~lib/typedarray/Int32Array#slice - local.tee $1 + local.tee $0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 2 @@ -48099,7 +48070,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 3 @@ -48112,7 +48083,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u @@ -48126,9 +48097,9 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -48139,7 +48110,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 8 i32.ne @@ -48152,13 +48123,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#slice - local.tee $1 + local.tee $0 i32.store offset=12 - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 3 @@ -48171,7 +48142,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u @@ -48185,9 +48156,9 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -48198,7 +48169,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 4 i32.ne @@ -48211,14 +48182,14 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $1 + local.tee $0 i32.store offset=24 - local.get $1 - local.get $16 + local.get $0 + local.get $2 i32.eq if i32.const 0 @@ -48228,11 +48199,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.get $16 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -48245,14 +48216,14 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub - local.get $16 + local.get $2 i32.load offset=4 - local.get $16 + local.get $2 i32.load i32.sub i32.ne @@ -48264,9 +48235,9 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 - local.get $16 + local.get $2 i32.load offset=8 i32.ne if @@ -48286,59 +48257,59 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $15 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $15 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer i32.const 2896 i32.store offset=4 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 - local.set $0 + local.set $1 loop $for-loop|011 - local.get $0 - local.get $8 + local.get $1 + local.get $10 i32.gt_s if - local.get $8 - local.get $16 + local.get $2 + local.get $10 i32.add i32.load8_s - local.set $1 + local.set $0 i32.const 4 global.set $~argumentsLength local.get $9 - local.get $1 - local.get $8 - local.get $15 + local.get $0 + local.get $10 + local.get $3 i32.const 2896 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $9 - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|011 end end @@ -48361,23 +48332,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $15 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $15 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -48385,39 +48356,39 @@ i32.const 2928 i32.store offset=4 i32.const 0 - local.set $8 + local.set $10 i32.const 0 local.set $9 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 - local.set $0 + local.set $1 loop $for-loop|010 - local.get $0 - local.get $8 + local.get $1 + local.get $10 i32.gt_s if - local.get $8 - local.get $16 + local.get $2 + local.get $10 i32.add i32.load8_u - local.set $1 + local.set $0 i32.const 4 global.set $~argumentsLength local.get $9 - local.get $1 - local.get $8 - local.get $15 + local.get $0 + local.get $10 + local.get $3 i32.const 2928 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $9 - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|010 end end @@ -48440,23 +48411,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $15 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $15 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -48464,39 +48435,39 @@ i32.const 2960 i32.store offset=4 i32.const 0 - local.set $8 + local.set $10 i32.const 0 local.set $9 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 - local.set $0 + local.set $1 loop $for-loop|013 - local.get $0 - local.get $8 + local.get $1 + local.get $10 i32.gt_s if - local.get $8 - local.get $16 + local.get $2 + local.get $10 i32.add i32.load8_u - local.set $1 + local.set $0 i32.const 4 global.set $~argumentsLength local.get $9 - local.get $1 - local.get $8 - local.get $15 + local.get $0 + local.get $10 + local.get $3 i32.const 2960 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $9 - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|013 end end @@ -48519,23 +48490,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $15 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $15 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -48543,43 +48514,43 @@ i32.const 2992 i32.store offset=4 i32.const 0 - local.set $8 + local.set $10 i32.const 0 local.set $9 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|014 - local.get $0 - local.get $8 + local.get $1 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 1 i32.shl - local.get $16 + local.get $2 i32.add i32.load16_s - local.set $1 + local.set $0 i32.const 4 global.set $~argumentsLength local.get $9 - local.get $1 - local.get $8 - local.get $15 + local.get $0 + local.get $10 + local.get $3 i32.const 2992 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $9 - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|014 end end @@ -48602,23 +48573,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $15 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $15 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -48626,43 +48597,43 @@ i32.const 3024 i32.store offset=4 i32.const 0 - local.set $8 + local.set $10 i32.const 0 local.set $9 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|016 - local.get $0 - local.get $8 + local.get $1 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 1 i32.shl - local.get $16 + local.get $2 i32.add i32.load16_u - local.set $1 + local.set $0 i32.const 4 global.set $~argumentsLength local.get $9 - local.get $1 - local.get $8 - local.get $15 + local.get $0 + local.get $10 + local.get $3 i32.const 3024 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $9 - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|016 end end @@ -48685,23 +48656,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $15 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $15 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -48709,43 +48680,43 @@ i32.const 3056 i32.store offset=4 i32.const 0 - local.set $8 + local.set $10 i32.const 0 local.set $9 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|018 - local.get $0 - local.get $8 + local.get $1 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add i32.load - local.set $1 + local.set $0 i32.const 4 global.set $~argumentsLength local.get $9 - local.get $1 - local.get $8 - local.get $15 + local.get $0 + local.get $10 + local.get $3 i32.const 3056 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $9 - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|018 end end @@ -48766,23 +48737,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $15 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $15 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -48790,43 +48761,43 @@ i32.const 3088 i32.store offset=4 i32.const 0 - local.set $8 + local.set $10 i32.const 0 local.set $9 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|021 - local.get $0 - local.get $8 + local.get $1 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add i32.load - local.set $1 + local.set $0 i32.const 4 global.set $~argumentsLength local.get $9 - local.get $1 - local.get $8 - local.get $15 + local.get $0 + local.get $10 + local.get $3 i32.const 3088 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $9 - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|021 end end @@ -48847,23 +48818,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $16 + local.get $2 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $16 + local.get $2 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set @@ -48871,45 +48842,45 @@ i32.const 3120 i32.store offset=4 i32.const 0 - local.set $8 - local.get $16 + local.set $10 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|023 - local.get $1 - local.get $8 + local.get $0 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add i64.load - local.set $10 + local.set $8 i32.const 4 global.set $~argumentsLength - local.get $3 - local.get $10 + local.get $13 local.get $8 - local.get $16 + local.get $10 + local.get $2 i32.const 3120 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $3 - local.get $8 + local.set $13 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|023 end end - local.get $3 + local.get $13 i64.const 6 i64.ne br_if $folding-inner1 @@ -48926,23 +48897,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $16 + local.get $2 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $16 + local.get $2 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set @@ -48950,47 +48921,47 @@ i32.const 3152 i32.store offset=4 i32.const 0 - local.set $8 + local.set $10 i64.const 0 - local.set $3 - local.get $16 + local.set $13 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|025 - local.get $1 - local.get $8 + local.get $0 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add i64.load - local.set $10 + local.set $8 i32.const 4 global.set $~argumentsLength - local.get $3 - local.get $10 + local.get $13 local.get $8 - local.get $16 + local.get $10 + local.get $2 i32.const 3152 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $3 - local.get $8 + local.set $13 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|025 end end - local.get $3 + local.get $13 i64.const 6 i64.ne br_if $folding-inner1 @@ -49007,23 +48978,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $16 + local.get $2 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $16 + local.get $2 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set @@ -49031,45 +49002,45 @@ i32.const 3184 i32.store offset=4 i32.const 0 - local.set $8 - local.get $16 + local.set $10 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|027 - local.get $1 - local.get $8 + local.get $0 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add f32.load - local.set $13 + local.set $5 i32.const 4 global.set $~argumentsLength - local.get $4 - local.get $13 - local.get $8 - local.get $16 + local.get $14 + local.get $5 + local.get $10 + local.get $2 i32.const 3184 i32.load call_indirect $0 (type $f32_f32_i32_i32_=>_f32) - local.set $4 - local.get $8 + local.set $14 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|027 end end - local.get $4 + local.get $14 f32.const 6 f32.ne br_if $folding-inner1 @@ -49086,23 +49057,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $16 + local.get $2 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $16 + local.get $2 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set @@ -49110,45 +49081,45 @@ i32.const 3216 i32.store offset=4 i32.const 0 - local.set $8 - local.get $16 + local.set $10 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|029 - local.get $1 - local.get $8 + local.get $0 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add f64.load - local.set $11 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $5 - local.get $11 - local.get $8 - local.get $16 + local.get $15 + local.get $7 + local.get $10 + local.get $2 i32.const 3216 i32.load call_indirect $0 (type $f64_f64_i32_i32_=>_f64) - local.set $5 - local.get $8 + local.set $15 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|029 end end - local.get $5 + local.get $15 f64.const 6 f64.ne br_if $folding-inner1 @@ -49165,39 +49136,39 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Int8Array#at i32.const 1 i32.ne br_if $folding-inner2 - local.get $1 + local.get $0 i32.const -1 call $~lib/typedarray/Int8Array#at i32.const 3 i32.ne br_if $folding-inner3 - local.get $1 + local.get $0 i32.const -3 call $~lib/typedarray/Int8Array#at i32.const 1 @@ -49216,39 +49187,39 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint8Array#at i32.const 1 i32.ne br_if $folding-inner2 - local.get $1 + local.get $0 i32.const -1 call $~lib/typedarray/Uint8Array#at i32.const 3 i32.ne br_if $folding-inner3 - local.get $1 + local.get $0 i32.const -3 call $~lib/typedarray/Uint8Array#at i32.const 1 @@ -49267,39 +49238,39 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#at i32.const 1 i32.ne br_if $folding-inner2 - local.get $1 + local.get $0 i32.const -1 call $~lib/typedarray/Uint8ClampedArray#at i32.const 3 i32.ne br_if $folding-inner3 - local.get $1 + local.get $0 i32.const -3 call $~lib/typedarray/Uint8ClampedArray#at i32.const 1 @@ -49318,39 +49289,39 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Int16Array#at i32.const 1 i32.ne br_if $folding-inner2 - local.get $1 + local.get $0 i32.const -1 call $~lib/typedarray/Int16Array#at i32.const 3 i32.ne br_if $folding-inner3 - local.get $1 + local.get $0 i32.const -3 call $~lib/typedarray/Int16Array#at i32.const 1 @@ -49369,39 +49340,39 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint16Array#at i32.const 1 i32.ne br_if $folding-inner2 - local.get $1 + local.get $0 i32.const -1 call $~lib/typedarray/Uint16Array#at i32.const 3 i32.ne br_if $folding-inner3 - local.get $1 + local.get $0 i32.const -3 call $~lib/typedarray/Uint16Array#at i32.const 1 @@ -49420,39 +49391,39 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Int32Array#at i32.const 1 i32.ne br_if $folding-inner2 - local.get $1 + local.get $0 i32.const -1 call $~lib/typedarray/Int32Array#at i32.const 3 i32.ne br_if $folding-inner3 - local.get $1 + local.get $0 i32.const -3 call $~lib/typedarray/Int32Array#at i32.const 1 @@ -49471,39 +49442,39 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint32Array#at i32.const 1 i32.ne br_if $folding-inner2 - local.get $1 + local.get $0 i32.const -1 call $~lib/typedarray/Uint32Array#at i32.const 3 i32.ne br_if $folding-inner3 - local.get $1 + local.get $0 i32.const -3 call $~lib/typedarray/Uint32Array#at i32.const 1 @@ -49522,39 +49493,39 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $0 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $0 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Int64Array#at i64.const 1 i64.ne br_if $folding-inner2 - local.get $1 + local.get $0 i32.const -1 call $~lib/typedarray/Int64Array#at i64.const 3 i64.ne br_if $folding-inner3 - local.get $1 + local.get $0 i32.const -3 call $~lib/typedarray/Int64Array#at i64.const 1 @@ -49573,39 +49544,39 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $0 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $0 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint64Array#at i64.const 1 i64.ne br_if $folding-inner2 - local.get $1 + local.get $0 i32.const -1 call $~lib/typedarray/Uint64Array#at i64.const 3 i64.ne br_if $folding-inner3 - local.get $1 + local.get $0 i32.const -3 call $~lib/typedarray/Uint64Array#at i64.const 1 @@ -49624,39 +49595,39 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Float32Array#at f32.const 1 f32.ne br_if $folding-inner2 - local.get $1 + local.get $0 i32.const -1 call $~lib/typedarray/Float32Array#at f32.const 3 f32.ne br_if $folding-inner3 - local.get $1 + local.get $0 i32.const -3 call $~lib/typedarray/Float32Array#at f32.const 1 @@ -49675,39 +49646,39 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Float64Array#at f64.const 1 f64.ne br_if $folding-inner2 - local.get $1 + local.get $0 i32.const -1 call $~lib/typedarray/Float64Array#at f64.const 3 f64.ne br_if $folding-inner3 - local.get $1 + local.get $0 i32.const -3 call $~lib/typedarray/Float64Array#at f64.const 1 @@ -49726,23 +49697,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $16 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $16 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set @@ -49750,43 +49721,43 @@ i32.const 3248 i32.store offset=4 i32.const 0 - local.set $8 - local.get $16 + local.set $10 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 1 i32.sub - local.set $15 + local.set $3 loop $for-loop|031 - local.get $15 + local.get $3 i32.const 0 i32.ge_s if - local.get $0 - local.get $15 + local.get $1 + local.get $3 i32.add i32.load8_s - local.set $1 + local.set $0 i32.const 4 global.set $~argumentsLength - local.get $8 - local.get $1 - local.get $15 - local.get $16 + local.get $10 + local.get $0 + local.get $3 + local.get $2 i32.const 3248 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $8 - local.get $15 + local.set $10 + local.get $3 i32.const 1 i32.sub - local.set $15 + local.set $3 br $for-loop|031 end end - local.get $8 + local.get $10 i32.const 255 i32.and i32.const 6 @@ -49805,23 +49776,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $16 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $16 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -49829,43 +49800,43 @@ i32.const 3280 i32.store offset=4 i32.const 0 - local.set $8 - local.get $16 + local.set $10 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 1 i32.sub - local.set $15 + local.set $3 loop $for-loop|033 - local.get $15 + local.get $3 i32.const 0 i32.ge_s if - local.get $0 - local.get $15 + local.get $1 + local.get $3 i32.add i32.load8_u - local.set $1 + local.set $0 i32.const 4 global.set $~argumentsLength - local.get $8 - local.get $1 - local.get $15 - local.get $16 + local.get $10 + local.get $0 + local.get $3 + local.get $2 i32.const 3280 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $8 - local.get $15 + local.set $10 + local.get $3 i32.const 1 i32.sub - local.set $15 + local.set $3 br $for-loop|033 end end - local.get $8 + local.get $10 i32.const 255 i32.and i32.const 6 @@ -49884,23 +49855,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $16 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $16 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -49908,43 +49879,43 @@ i32.const 3312 i32.store offset=4 i32.const 0 - local.set $8 - local.get $16 + local.set $10 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 1 i32.sub - local.set $15 + local.set $3 loop $for-loop|036 - local.get $15 + local.get $3 i32.const 0 i32.ge_s if - local.get $0 - local.get $15 + local.get $1 + local.get $3 i32.add i32.load8_u - local.set $1 + local.set $0 i32.const 4 global.set $~argumentsLength - local.get $8 - local.get $1 - local.get $15 - local.get $16 + local.get $10 + local.get $0 + local.get $3 + local.get $2 i32.const 3312 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $8 - local.get $15 + local.set $10 + local.get $3 i32.const 1 i32.sub - local.set $15 + local.set $3 br $for-loop|036 end end - local.get $8 + local.get $10 i32.const 255 i32.and i32.const 6 @@ -49963,23 +49934,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $16 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $16 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -49987,47 +49958,47 @@ i32.const 3344 i32.store offset=4 i32.const 0 - local.set $8 - local.get $16 + local.set $10 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u i32.const 1 i32.sub - local.set $15 + local.set $3 loop $for-loop|038 - local.get $15 + local.get $3 i32.const 0 i32.ge_s if - local.get $15 + local.get $3 i32.const 1 i32.shl - local.get $0 + local.get $1 i32.add i32.load16_s - local.set $1 + local.set $0 i32.const 4 global.set $~argumentsLength - local.get $8 - local.get $1 - local.get $15 - local.get $16 + local.get $10 + local.get $0 + local.get $3 + local.get $2 i32.const 3344 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $8 - local.get $15 + local.set $10 + local.get $3 i32.const 1 i32.sub - local.set $15 + local.set $3 br $for-loop|038 end end - local.get $8 + local.get $10 i32.const 65535 i32.and i32.const 6 @@ -50046,23 +50017,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $16 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $16 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -50070,47 +50041,47 @@ i32.const 3376 i32.store offset=4 i32.const 0 - local.set $8 - local.get $16 + local.set $10 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u i32.const 1 i32.sub - local.set $15 + local.set $3 loop $for-loop|040 - local.get $15 + local.get $3 i32.const 0 i32.ge_s if - local.get $15 + local.get $3 i32.const 1 i32.shl - local.get $0 + local.get $1 i32.add i32.load16_u - local.set $1 + local.set $0 i32.const 4 global.set $~argumentsLength - local.get $8 - local.get $1 - local.get $15 - local.get $16 + local.get $10 + local.get $0 + local.get $3 + local.get $2 i32.const 3376 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $8 - local.get $15 + local.set $10 + local.get $3 i32.const 1 i32.sub - local.set $15 + local.set $3 br $for-loop|040 end end - local.get $8 + local.get $10 i32.const 65535 i32.and i32.const 6 @@ -50129,23 +50100,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $16 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $16 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -50153,47 +50124,47 @@ i32.const 3408 i32.store offset=4 i32.const 0 - local.set $8 - local.get $16 + local.set $10 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.sub - local.set $15 + local.set $3 loop $for-loop|042 - local.get $15 + local.get $3 i32.const 0 i32.ge_s if - local.get $15 + local.get $3 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.load - local.set $1 + local.set $0 i32.const 4 global.set $~argumentsLength - local.get $8 - local.get $1 - local.get $15 - local.get $16 + local.get $10 + local.get $0 + local.get $3 + local.get $2 i32.const 3408 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $8 - local.get $15 + local.set $10 + local.get $3 i32.const 1 i32.sub - local.set $15 + local.set $3 br $for-loop|042 end end - local.get $8 + local.get $10 i32.const 6 i32.ne br_if $folding-inner5 @@ -50210,23 +50181,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $16 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $16 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -50234,47 +50205,47 @@ i32.const 3440 i32.store offset=4 i32.const 0 - local.set $8 - local.get $16 + local.set $10 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.sub - local.set $15 + local.set $3 loop $for-loop|044 - local.get $15 + local.get $3 i32.const 0 i32.ge_s if - local.get $15 + local.get $3 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.load - local.set $1 + local.set $0 i32.const 4 global.set $~argumentsLength - local.get $8 - local.get $1 - local.get $15 - local.get $16 + local.get $10 + local.get $0 + local.get $3 + local.get $2 i32.const 3440 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $8 - local.get $15 + local.set $10 + local.get $3 i32.const 1 i32.sub - local.set $15 + local.set $3 br $for-loop|044 end end - local.get $8 + local.get $10 i32.const 6 i32.ne br_if $folding-inner5 @@ -50291,23 +50262,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $1 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set @@ -50315,47 +50286,47 @@ i32.const 3472 i32.store offset=4 i64.const 0 - local.set $3 - local.get $0 + local.set $13 + local.get $1 i32.load offset=4 - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.const 1 i32.sub - local.set $15 + local.set $3 loop $for-loop|046 - local.get $15 + local.get $3 i32.const 0 i32.ge_s if - local.get $15 + local.get $3 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add i64.load - local.set $10 + local.set $8 i32.const 4 global.set $~argumentsLength + local.get $13 + local.get $8 local.get $3 - local.get $10 - local.get $15 - local.get $0 + local.get $1 i32.const 3472 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $3 - local.get $15 + local.set $13 + local.get $3 i32.const 1 i32.sub - local.set $15 + local.set $3 br $for-loop|046 end end - local.get $3 + local.get $13 i64.const 6 i64.ne br_if $folding-inner5 @@ -50372,23 +50343,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $1 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set @@ -50396,47 +50367,47 @@ i32.const 3504 i32.store offset=4 i64.const 0 - local.set $3 - local.get $0 + local.set $13 + local.get $1 i32.load offset=4 - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.const 1 i32.sub - local.set $15 + local.set $3 loop $for-loop|048 - local.get $15 + local.get $3 i32.const 0 i32.ge_s if - local.get $15 + local.get $3 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add i64.load - local.set $10 + local.set $8 i32.const 4 global.set $~argumentsLength + local.get $13 + local.get $8 local.get $3 - local.get $10 - local.get $15 - local.get $0 + local.get $1 i32.const 3504 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $3 - local.get $15 + local.set $13 + local.get $3 i32.const 1 i32.sub - local.set $15 + local.set $3 br $for-loop|048 end end - local.get $3 + local.get $13 i64.const 6 i64.ne br_if $folding-inner5 @@ -50453,23 +50424,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set @@ -50477,47 +50448,47 @@ i32.const 3536 i32.store offset=4 f32.const 0 - local.set $4 - local.get $0 + local.set $14 + local.get $1 i32.load offset=4 - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.sub - local.set $15 + local.set $3 loop $for-loop|050 - local.get $15 + local.get $3 i32.const 0 i32.ge_s if - local.get $15 + local.get $3 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add f32.load - local.set $13 + local.set $5 i32.const 4 global.set $~argumentsLength - local.get $4 - local.get $13 - local.get $15 - local.get $0 + local.get $14 + local.get $5 + local.get $3 + local.get $1 i32.const 3536 i32.load call_indirect $0 (type $f32_f32_i32_i32_=>_f32) - local.set $4 - local.get $15 + local.set $14 + local.get $3 i32.const 1 i32.sub - local.set $15 + local.set $3 br $for-loop|050 end end - local.get $4 + local.get $14 f32.const 6 f32.ne br_if $folding-inner5 @@ -50534,23 +50505,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set @@ -50558,47 +50529,47 @@ i32.const 3568 i32.store offset=4 f64.const 0 - local.set $5 - local.get $0 + local.set $15 + local.get $1 i32.load offset=4 - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.const 1 i32.sub - local.set $15 + local.set $3 loop $for-loop|052 - local.get $15 + local.get $3 i32.const 0 i32.ge_s if - local.get $15 + local.get $3 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add f64.load - local.set $11 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $5 - local.get $11 local.get $15 - local.get $0 + local.get $7 + local.get $3 + local.get $1 i32.const 3568 i32.load call_indirect $0 (type $f64_f64_i32_i32_=>_f64) - local.set $5 - local.get $15 + local.set $15 + local.get $3 i32.const 1 i32.sub - local.set $15 + local.set $3 br $for-loop|052 end end - local.get $5 + local.get $15 f64.const 6 f64.ne br_if $folding-inner5 @@ -50607,7 +50578,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $8 + local.set $10 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -50617,13 +50588,13 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor local.tee $9 @@ -50653,90 +50624,90 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store local.get $9 i32.load offset=8 - local.set $14 + local.set $4 local.get $9 i32.load offset=4 - local.set $15 - local.get $1 + local.set $3 + local.get $0 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $16 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer - local.get $14 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store offset=4 loop $for-loop|02 - local.get $8 - local.get $14 - i32.lt_s + local.get $4 + local.get $10 + i32.gt_s if - local.get $8 - local.get $15 + local.get $3 + local.get $10 i32.add i32.load8_s - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength - local.get $0 - local.get $8 - i32.add local.get $1 - local.get $8 + local.get $10 + i32.add + local.get $0 + local.get $10 local.get $9 i32.const 3600 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store8 - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|02 end end - local.get $16 - local.get $0 + local.get $2 + local.get $1 i32.store - local.get $0 + local.get $1 if - local.get $16 - local.get $0 + local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $16 - local.get $0 + local.get $2 + local.get $1 i32.store offset=4 - local.get $16 - local.get $14 + local.get $2 + local.get $4 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.store offset=8 - local.get $16 + local.get $2 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $16 + local.get $2 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $16 + local.get $2 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 9 @@ -50747,7 +50718,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $8 + local.set $10 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -50757,13 +50728,13 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor local.tee $9 @@ -50793,90 +50764,90 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store local.get $9 i32.load offset=8 - local.set $14 + local.set $4 local.get $9 i32.load offset=4 - local.set $15 - local.get $1 + local.set $3 + local.get $0 i32.const 12 i32.const 4 call $~lib/rt/itcms/__new - local.tee $16 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer - local.get $14 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store offset=4 loop $for-loop|04 - local.get $8 - local.get $14 - i32.lt_s + local.get $4 + local.get $10 + i32.gt_s if - local.get $8 - local.get $15 + local.get $3 + local.get $10 i32.add i32.load8_u - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength - local.get $0 - local.get $8 - i32.add local.get $1 - local.get $8 + local.get $10 + i32.add + local.get $0 + local.get $10 local.get $9 i32.const 3632 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store8 - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|04 end end - local.get $16 - local.get $0 + local.get $2 + local.get $1 i32.store - local.get $0 + local.get $1 if - local.get $16 - local.get $0 + local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $16 - local.get $0 + local.get $2 + local.get $1 i32.store offset=4 - local.get $16 - local.get $14 + local.get $2 + local.get $4 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.store offset=8 - local.get $16 + local.get $2 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $16 + local.get $2 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $16 + local.get $2 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 9 @@ -50887,7 +50858,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $8 + local.set $10 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -50897,13 +50868,13 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor local.tee $9 @@ -50933,90 +50904,90 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store local.get $9 i32.load offset=8 - local.set $14 + local.set $4 local.get $9 i32.load offset=4 - local.set $15 - local.get $1 + local.set $3 + local.get $0 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new - local.tee $16 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer - local.get $14 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store offset=4 loop $for-loop|06 - local.get $8 - local.get $14 - i32.lt_s + local.get $4 + local.get $10 + i32.gt_s if - local.get $8 - local.get $15 + local.get $3 + local.get $10 i32.add i32.load8_u - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength - local.get $0 - local.get $8 - i32.add local.get $1 - local.get $8 + local.get $10 + i32.add + local.get $0 + local.get $10 local.get $9 i32.const 3664 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store8 - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|06 end end - local.get $16 - local.get $0 + local.get $2 + local.get $1 i32.store - local.get $0 + local.get $1 if - local.get $16 - local.get $0 + local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $16 - local.get $0 + local.get $2 + local.get $1 i32.store offset=4 - local.get $16 - local.get $14 + local.get $2 + local.get $4 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.store offset=8 - local.get $16 + local.get $2 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $16 + local.get $2 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $16 + local.get $2 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 9 @@ -51035,26 +51006,26 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $7 + local.tee $11 i32.store - local.get $7 + local.get $11 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $7 + local.get $11 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $7 + local.get $11 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -51071,98 +51042,98 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $7 + local.get $11 i32.load offset=8 i32.const 1 i32.shr_u local.set $9 - local.get $7 + local.get $11 i32.load offset=4 - local.set $12 - local.get $1 + local.set $6 + local.get $0 i32.const 12 i32.const 6 call $~lib/rt/itcms/__new - local.tee $14 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer local.get $9 i32.const 1 i32.shl - local.tee $15 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $16 + local.tee $2 i32.store offset=4 loop $for-loop|08 - local.get $2 local.get $9 - i32.lt_s + local.get $12 + i32.gt_s if + local.get $6 local.get $12 - local.get $2 i32.const 1 i32.shl - local.tee $0 + local.tee $1 i32.add i32.load16_s - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength - local.get $0 - local.get $16 - i32.add local.get $1 local.get $2 - local.get $7 + i32.add + local.get $0 + local.get $12 + local.get $11 i32.const 3696 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store16 - local.get $2 + local.get $12 i32.const 1 i32.add - local.set $2 + local.set $12 br $for-loop|08 end end - local.get $14 - local.get $16 + local.get $4 + local.get $2 i32.store - local.get $16 + local.get $2 if - local.get $14 - local.get $16 + local.get $4 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $14 - local.get $16 + local.get $4 + local.get $2 i32.store offset=4 - local.get $14 - local.get $15 + local.get $4 + local.get $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $14 + local.get $4 i32.store offset=8 - local.get $14 + local.get $4 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $14 + local.get $4 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $14 + local.get $4 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 9 @@ -51173,7 +51144,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $2 + local.set $12 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51183,26 +51154,26 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $7 + local.tee $11 i32.store - local.get $7 + local.get $11 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $7 + local.get $11 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $7 + local.get $11 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -51219,98 +51190,98 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $7 + local.get $11 i32.load offset=8 i32.const 1 i32.shr_u local.set $9 - local.get $7 + local.get $11 i32.load offset=4 - local.set $12 - local.get $1 + local.set $6 + local.get $0 i32.const 12 i32.const 7 call $~lib/rt/itcms/__new - local.tee $14 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer local.get $9 i32.const 1 i32.shl - local.tee $15 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $16 + local.tee $2 i32.store offset=4 loop $for-loop|012 - local.get $2 local.get $9 - i32.lt_s + local.get $12 + i32.gt_s if + local.get $6 local.get $12 - local.get $2 i32.const 1 i32.shl - local.tee $0 + local.tee $1 i32.add i32.load16_u - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength - local.get $0 - local.get $16 - i32.add local.get $1 local.get $2 - local.get $7 + i32.add + local.get $0 + local.get $12 + local.get $11 i32.const 3728 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store16 - local.get $2 + local.get $12 i32.const 1 i32.add - local.set $2 + local.set $12 br $for-loop|012 end end - local.get $14 - local.get $16 + local.get $4 + local.get $2 i32.store - local.get $16 + local.get $2 if - local.get $14 - local.get $16 + local.get $4 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $14 - local.get $16 + local.get $4 + local.get $2 i32.store offset=4 - local.get $14 - local.get $15 + local.get $4 + local.get $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $14 + local.get $4 i32.store offset=8 - local.get $14 + local.get $4 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $14 + local.get $4 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $14 + local.get $4 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 9 @@ -51321,7 +51292,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $2 + local.set $12 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51331,26 +51302,26 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $7 + local.tee $11 i32.store - local.get $7 + local.get $11 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $7 + local.get $11 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $7 + local.get $11 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -51367,98 +51338,98 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $7 + local.get $11 i32.load offset=8 i32.const 2 i32.shr_u local.set $9 - local.get $7 + local.get $11 i32.load offset=4 - local.set $12 - local.get $1 + local.set $6 + local.get $0 i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $14 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer local.get $9 i32.const 2 i32.shl - local.tee $15 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $16 + local.tee $2 i32.store offset=4 loop $for-loop|015 - local.get $2 local.get $9 - i32.lt_s + local.get $12 + i32.gt_s if + local.get $6 local.get $12 - local.get $2 i32.const 2 i32.shl - local.tee $0 + local.tee $1 i32.add i32.load - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength - local.get $0 - local.get $16 - i32.add local.get $1 local.get $2 - local.get $7 + i32.add + local.get $0 + local.get $12 + local.get $11 i32.const 3760 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store - local.get $2 + local.get $12 i32.const 1 i32.add - local.set $2 + local.set $12 br $for-loop|015 end end - local.get $14 - local.get $16 + local.get $4 + local.get $2 i32.store - local.get $16 + local.get $2 if - local.get $14 - local.get $16 + local.get $4 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $14 - local.get $16 + local.get $4 + local.get $2 i32.store offset=4 - local.get $14 - local.get $15 + local.get $4 + local.get $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $14 + local.get $4 i32.store offset=8 - local.get $14 + local.get $4 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $14 + local.get $4 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $14 + local.get $4 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 9 @@ -51469,7 +51440,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $2 + local.set $12 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51479,26 +51450,26 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $7 + local.tee $11 i32.store - local.get $7 + local.get $11 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $7 + local.get $11 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $7 + local.get $11 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -51515,98 +51486,98 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $7 + local.get $11 i32.load offset=8 i32.const 2 i32.shr_u local.set $9 - local.get $7 + local.get $11 i32.load offset=4 - local.set $12 - local.get $1 + local.set $6 + local.get $0 i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $14 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer local.get $9 i32.const 2 i32.shl - local.tee $15 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $16 + local.tee $2 i32.store offset=4 loop $for-loop|017 - local.get $2 local.get $9 - i32.lt_s + local.get $12 + i32.gt_s if + local.get $6 local.get $12 - local.get $2 i32.const 2 i32.shl - local.tee $0 + local.tee $1 i32.add i32.load - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength - local.get $0 - local.get $16 - i32.add local.get $1 local.get $2 - local.get $7 + i32.add + local.get $0 + local.get $12 + local.get $11 i32.const 3792 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store - local.get $2 + local.get $12 i32.const 1 i32.add - local.set $2 + local.set $12 br $for-loop|017 end end - local.get $14 - local.get $16 + local.get $4 + local.get $2 i32.store - local.get $16 + local.get $2 if - local.get $14 - local.get $16 + local.get $4 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $14 - local.get $16 + local.get $4 + local.get $2 i32.store offset=4 - local.get $14 - local.get $15 + local.get $4 + local.get $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $14 + local.get $4 i32.store offset=8 - local.get $14 + local.get $4 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $14 + local.get $4 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $14 + local.get $4 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 9 @@ -51617,7 +51588,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $7 + local.set $11 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51627,26 +51598,26 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $8 + local.tee $10 i32.store - local.get $8 + local.get $10 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $8 + local.get $10 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $8 + local.get $10 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set @@ -51663,98 +51634,98 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $8 + local.get $10 i32.load offset=8 i32.const 3 i32.shr_u - local.set $12 - local.get $8 + local.set $6 + local.get $10 i32.load offset=4 - local.set $14 - local.get $1 + local.set $4 + local.get $0 i32.const 12 i32.const 10 call $~lib/rt/itcms/__new - local.tee $15 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer - local.get $12 + local.get $6 i32.const 3 i32.shl - local.tee $16 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store offset=4 loop $for-loop|019 - local.get $7 - local.get $12 - i32.lt_s + local.get $6 + local.get $11 + i32.gt_s if - local.get $14 - local.get $7 + local.get $4 + local.get $11 i32.const 3 i32.shl - local.tee $1 + local.tee $0 i32.add i64.load - local.set $10 + local.set $8 i32.const 3 global.set $~argumentsLength local.get $0 local.get $1 i32.add - local.get $10 - local.get $7 local.get $8 + local.get $11 + local.get $10 i32.const 3824 i32.load call_indirect $0 (type $i64_i32_i32_=>_i64) i64.store - local.get $7 + local.get $11 i32.const 1 i32.add - local.set $7 + local.set $11 br $for-loop|019 end end - local.get $15 - local.get $0 + local.get $3 + local.get $1 i32.store - local.get $0 + local.get $1 if - local.get $15 - local.get $0 + local.get $3 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $15 - local.get $0 + local.get $3 + local.get $1 i32.store offset=4 - local.get $15 - local.get $16 + local.get $3 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $15 + local.get $3 i32.store offset=8 - local.get $15 + local.get $3 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 1 i64.ne br_if $folding-inner20 - local.get $15 + local.get $3 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 4 i64.ne br_if $folding-inner21 - local.get $15 + local.get $3 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 9 @@ -51765,7 +51736,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $7 + local.set $11 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51775,26 +51746,26 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $8 + local.tee $10 i32.store - local.get $8 + local.get $10 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $8 + local.get $10 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $8 + local.get $10 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set @@ -51811,98 +51782,98 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $8 + local.get $10 i32.load offset=8 i32.const 3 i32.shr_u - local.set $12 - local.get $8 + local.set $6 + local.get $10 i32.load offset=4 - local.set $14 - local.get $1 + local.set $4 + local.get $0 i32.const 12 i32.const 11 call $~lib/rt/itcms/__new - local.tee $15 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer - local.get $12 + local.get $6 i32.const 3 i32.shl - local.tee $16 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store offset=4 loop $for-loop|022 - local.get $7 - local.get $12 - i32.lt_s + local.get $6 + local.get $11 + i32.gt_s if - local.get $14 - local.get $7 + local.get $4 + local.get $11 i32.const 3 i32.shl - local.tee $1 + local.tee $0 i32.add i64.load - local.set $10 + local.set $8 i32.const 3 global.set $~argumentsLength local.get $0 local.get $1 i32.add - local.get $10 - local.get $7 local.get $8 + local.get $11 + local.get $10 i32.const 3856 i32.load call_indirect $0 (type $i64_i32_i32_=>_i64) i64.store - local.get $7 + local.get $11 i32.const 1 i32.add - local.set $7 + local.set $11 br $for-loop|022 end end - local.get $15 - local.get $0 + local.get $3 + local.get $1 i32.store - local.get $0 + local.get $1 if - local.get $15 - local.get $0 + local.get $3 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $15 - local.get $0 + local.get $3 + local.get $1 i32.store offset=4 - local.get $15 - local.get $16 + local.get $3 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $15 + local.get $3 i32.store offset=8 - local.get $15 + local.get $3 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 1 i64.ne br_if $folding-inner20 - local.get $15 + local.get $3 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 4 i64.ne br_if $folding-inner21 - local.get $15 + local.get $3 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 9 @@ -51913,7 +51884,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $7 + local.set $11 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51923,26 +51894,26 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $8 + local.tee $10 i32.store - local.get $8 + local.get $10 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $8 + local.get $10 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $8 + local.get $10 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set @@ -51959,98 +51930,98 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $8 + local.get $10 i32.load offset=8 i32.const 2 i32.shr_u - local.set $12 - local.get $8 + local.set $6 + local.get $10 i32.load offset=4 - local.set $14 - local.get $1 + local.set $4 + local.get $0 i32.const 12 i32.const 12 call $~lib/rt/itcms/__new - local.tee $15 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer - local.get $12 + local.get $6 i32.const 2 i32.shl - local.tee $16 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store offset=4 loop $for-loop|024 - local.get $7 - local.get $12 - i32.lt_s + local.get $6 + local.get $11 + i32.gt_s if - local.get $14 - local.get $7 + local.get $4 + local.get $11 i32.const 2 i32.shl - local.tee $1 + local.tee $0 i32.add f32.load - local.set $13 + local.set $5 i32.const 3 global.set $~argumentsLength local.get $0 local.get $1 i32.add - local.get $13 - local.get $7 - local.get $8 + local.get $5 + local.get $11 + local.get $10 i32.const 3888 i32.load call_indirect $0 (type $f32_i32_i32_=>_f32) f32.store - local.get $7 + local.get $11 i32.const 1 i32.add - local.set $7 + local.set $11 br $for-loop|024 end end - local.get $15 - local.get $0 + local.get $3 + local.get $1 i32.store - local.get $0 + local.get $1 if - local.get $15 - local.get $0 + local.get $3 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $15 - local.get $0 + local.get $3 + local.get $1 i32.store offset=4 - local.get $15 - local.get $16 + local.get $3 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $15 + local.get $3 i32.store offset=8 - local.get $15 + local.get $3 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 1 f32.ne br_if $folding-inner20 - local.get $15 + local.get $3 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 4 f32.ne br_if $folding-inner21 - local.get $15 + local.get $3 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 9 @@ -52061,7 +52032,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $7 + local.set $11 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -52071,26 +52042,26 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $8 + local.tee $10 i32.store - local.get $8 + local.get $10 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $8 + local.get $10 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $8 + local.get $10 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set @@ -52107,98 +52078,98 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $8 + local.get $10 i32.load offset=8 i32.const 3 i32.shr_u - local.set $12 - local.get $8 + local.set $6 + local.get $10 i32.load offset=4 - local.set $14 - local.get $1 + local.set $4 + local.get $0 i32.const 12 i32.const 13 call $~lib/rt/itcms/__new - local.tee $15 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer - local.get $12 + local.get $6 i32.const 3 i32.shl - local.tee $16 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store offset=4 loop $for-loop|026 - local.get $7 - local.get $12 - i32.lt_s + local.get $6 + local.get $11 + i32.gt_s if - local.get $14 - local.get $7 + local.get $4 + local.get $11 i32.const 3 i32.shl - local.tee $1 + local.tee $0 i32.add f64.load - local.set $11 + local.set $7 i32.const 3 global.set $~argumentsLength local.get $0 local.get $1 i32.add - local.get $11 local.get $7 - local.get $8 + local.get $11 + local.get $10 i32.const 3920 i32.load call_indirect $0 (type $f64_i32_i32_=>_f64) f64.store - local.get $7 + local.get $11 i32.const 1 i32.add - local.set $7 + local.set $11 br $for-loop|026 end end - local.get $15 - local.get $0 + local.get $3 + local.get $1 i32.store - local.get $0 + local.get $1 if - local.get $15 - local.get $0 + local.get $3 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $15 - local.get $0 + local.get $3 + local.get $1 i32.store offset=4 - local.get $15 - local.get $16 + local.get $3 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $15 + local.get $3 i32.store offset=8 - local.get $15 + local.get $3 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 1 f64.ne br_if $folding-inner20 - local.get $15 + local.get $3 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 4 f64.ne br_if $folding-inner21 - local.get $15 + local.get $3 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 9 @@ -52228,23 +52199,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $15 + local.get $3 i32.const 1 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $15 + local.get $3 i32.const 2 i32.const 6 call $~lib/typedarray/Int8Array#__set @@ -52254,28 +52225,28 @@ i32.const 0 local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.0 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 - local.set $0 + local.set $1 loop $for-loop|045 - local.get $0 + local.get $1 local.get $9 i32.gt_s if + local.get $2 local.get $9 - local.get $16 i32.add i32.load8_s - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 4304 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52298,28 +52269,28 @@ i32.const 0 local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.047 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 - local.set $0 + local.set $1 loop $for-loop|049 - local.get $0 + local.get $1 local.get $9 i32.gt_s if + local.get $2 local.get $9 - local.get $16 i32.add i32.load8_s - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 4336 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52348,23 +52319,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $15 + local.get $3 i32.const 1 i32.const 4 call $~lib/typedarray/Uint8Array#__set - local.get $15 + local.get $3 i32.const 2 i32.const 6 call $~lib/typedarray/Uint8Array#__set @@ -52374,28 +52345,28 @@ i32.const 0 local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.0 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 - local.set $0 + local.set $1 loop $for-loop|051 - local.get $0 + local.get $1 local.get $9 i32.gt_s if + local.get $2 local.get $9 - local.get $16 i32.add i32.load8_u - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 4368 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52418,28 +52389,28 @@ i32.const 0 local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.053 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 - local.set $0 + local.set $1 loop $for-loop|054 - local.get $0 + local.get $1 local.get $9 i32.gt_s if + local.get $2 local.get $9 - local.get $16 i32.add i32.load8_u - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 4400 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52468,23 +52439,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $15 + local.get $3 i32.const 1 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $15 + local.get $3 i32.const 2 i32.const 6 call $~lib/typedarray/Uint8ClampedArray#__set @@ -52494,28 +52465,28 @@ i32.const 0 local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.057 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 - local.set $0 + local.set $1 loop $for-loop|058 - local.get $0 + local.get $1 local.get $9 i32.gt_s if + local.get $2 local.get $9 - local.get $16 i32.add i32.load8_u - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 4432 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52538,28 +52509,28 @@ i32.const 0 local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.060 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 - local.set $0 + local.set $1 loop $for-loop|061 - local.get $0 + local.get $1 local.get $9 i32.gt_s if + local.get $2 local.get $9 - local.get $16 i32.add i32.load8_u - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 4464 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52588,23 +52559,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $15 + local.get $3 i32.const 1 i32.const 4 call $~lib/typedarray/Int16Array#__set - local.get $15 + local.get $3 i32.const 2 i32.const 6 call $~lib/typedarray/Int16Array#__set @@ -52614,32 +52585,32 @@ i32.const 0 local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.0 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|063 - local.get $0 + local.get $1 local.get $9 i32.gt_s if local.get $9 i32.const 1 i32.shl - local.get $16 + local.get $2 i32.add i32.load16_s - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 4496 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52662,32 +52633,32 @@ i32.const 0 local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.065 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|066 - local.get $0 + local.get $1 local.get $9 i32.gt_s if local.get $9 i32.const 1 i32.shl - local.get $16 + local.get $2 i32.add i32.load16_s - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 4528 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52716,23 +52687,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $15 + local.get $3 i32.const 1 i32.const 4 call $~lib/typedarray/Uint16Array#__set - local.get $15 + local.get $3 i32.const 2 i32.const 6 call $~lib/typedarray/Uint16Array#__set @@ -52742,32 +52713,32 @@ i32.const 0 local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.0 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|068 - local.get $0 + local.get $1 local.get $9 i32.gt_s if local.get $9 i32.const 1 i32.shl - local.get $16 + local.get $2 i32.add i32.load16_u - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 4560 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52790,32 +52761,32 @@ i32.const 0 local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.070 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|071 - local.get $0 + local.get $1 local.get $9 i32.gt_s if local.get $9 i32.const 1 i32.shl - local.get $16 + local.get $2 i32.add i32.load16_u - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 4592 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52844,23 +52815,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $15 + local.get $3 i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $15 + local.get $3 i32.const 2 i32.const 6 call $~lib/typedarray/Int32Array#__set @@ -52870,32 +52841,32 @@ i32.const 0 local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|073 - local.get $0 + local.get $1 local.get $9 i32.gt_s if local.get $9 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add i32.load - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 4624 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52918,32 +52889,32 @@ i32.const 0 local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.075 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|076 - local.get $0 + local.get $1 local.get $9 i32.gt_s if local.get $9 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add i32.load - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 4656 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52972,23 +52943,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $15 + local.get $3 i32.const 1 i32.const 4 call $~lib/typedarray/Uint32Array#__set - local.get $15 + local.get $3 i32.const 2 i32.const 6 call $~lib/typedarray/Uint32Array#__set @@ -52998,32 +52969,32 @@ i32.const 0 local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|078 - local.get $0 + local.get $1 local.get $9 i32.gt_s if local.get $9 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add i32.load - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 4688 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53046,32 +53017,32 @@ i32.const 0 local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.080 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|081 - local.get $0 + local.get $1 local.get $9 i32.gt_s if local.get $9 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add i32.load - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 4720 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53100,23 +53071,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $16 + local.get $2 i32.const 1 i64.const 4 call $~lib/typedarray/Int64Array#__set - local.get $16 + local.get $2 i32.const 2 i64.const 6 call $~lib/typedarray/Int64Array#__set @@ -53124,43 +53095,43 @@ i32.const 4752 i32.store offset=4 i32.const 0 - local.set $8 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.0 (result i32) - local.get $16 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|083 - local.get $1 - local.get $8 + local.get $0 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add i64.load - local.set $10 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $10 local.get $8 - local.get $16 + local.get $10 + local.get $2 i32.const 4752 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.0 drop - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|083 end end @@ -53172,43 +53143,43 @@ i32.const 4784 i32.store offset=4 i32.const 0 - local.set $8 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.085 (result i32) - local.get $16 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|086 - local.get $1 - local.get $8 + local.get $0 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add i64.load - local.set $10 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $10 local.get $8 - local.get $16 + local.get $10 + local.get $2 i32.const 4784 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.085 drop - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|086 end end @@ -53228,23 +53199,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $16 + local.get $2 i32.const 1 i64.const 4 call $~lib/typedarray/Uint64Array#__set - local.get $16 + local.get $2 i32.const 2 i64.const 6 call $~lib/typedarray/Uint64Array#__set @@ -53252,43 +53223,43 @@ i32.const 4816 i32.store offset=4 i32.const 0 - local.set $8 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.0 (result i32) - local.get $16 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|088 - local.get $1 - local.get $8 + local.get $0 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add i64.load - local.set $10 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $10 local.get $8 - local.get $16 + local.get $10 + local.get $2 i32.const 4816 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.0 drop - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|088 end end @@ -53300,43 +53271,43 @@ i32.const 4848 i32.store offset=4 i32.const 0 - local.set $8 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.090 (result i32) - local.get $16 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|091 - local.get $1 - local.get $8 + local.get $0 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add i64.load - local.set $10 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $10 local.get $8 - local.get $16 + local.get $10 + local.get $2 i32.const 4848 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.090 drop - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|091 end end @@ -53356,23 +53327,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $16 + local.get $2 i32.const 1 f32.const 4 call $~lib/typedarray/Float32Array#__set - local.get $16 + local.get $2 i32.const 2 f32.const 6 call $~lib/typedarray/Float32Array#__set @@ -53380,43 +53351,43 @@ i32.const 4880 i32.store offset=4 i32.const 0 - local.set $8 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) - local.get $16 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|093 - local.get $1 - local.get $8 + local.get $0 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add f32.load - local.set $13 + local.set $5 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $13 - local.get $8 - local.get $16 + local.get $5 + local.get $10 + local.get $2 i32.const 4880 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|093 end end @@ -53428,43 +53399,43 @@ i32.const 4912 i32.store offset=4 i32.const 0 - local.set $8 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.095 (result i32) - local.get $16 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|096 - local.get $1 - local.get $8 + local.get $0 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add f32.load - local.set $13 + local.set $5 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $13 - local.get $8 - local.get $16 + local.get $5 + local.get $10 + local.get $2 i32.const 4912 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.095 drop - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|096 end end @@ -53484,23 +53455,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $16 + local.get $2 i32.const 1 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $16 + local.get $2 i32.const 2 f64.const 6 call $~lib/typedarray/Float64Array#__set @@ -53508,43 +53479,43 @@ i32.const 4944 i32.store offset=4 i32.const 0 - local.set $8 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) - local.get $16 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|098 - local.get $1 - local.get $8 + local.get $0 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add f64.load - local.set $11 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $11 - local.get $8 - local.get $16 + local.get $7 + local.get $10 + local.get $2 i32.const 4944 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|098 end end @@ -53556,43 +53527,43 @@ i32.const 4976 i32.store offset=4 i32.const 0 - local.set $8 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0100 (result i32) - local.get $16 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|0101 - local.get $1 - local.get $8 + local.get $0 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add f64.load - local.set $11 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $11 - local.get $8 - local.get $16 + local.get $7 + local.get $10 + local.get $2 i32.const 4976 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0100 drop - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|0101 end end @@ -53612,23 +53583,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $14 + local.tee $4 i32.store - local.get $14 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $14 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $14 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set @@ -53637,26 +53608,26 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $14 + local.get $4 i32.load offset=4 - local.set $15 - local.get $14 + local.set $3 + local.get $4 i32.load offset=8 - local.set $16 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0 loop $for-loop|0103 local.get $1 - local.get $16 + local.get $2 i32.lt_s if local.get $1 - local.get $15 + local.get $3 i32.add i32.load8_s i32.const 3 global.set $~argumentsLength local.get $1 - local.get $14 + local.get $4 i32.const 5008 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53680,26 +53651,26 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $14 + local.get $4 i32.load offset=4 - local.set $15 - local.get $14 + local.set $3 + local.get $4 i32.load offset=8 - local.set $16 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0105 loop $for-loop|0106 local.get $1 - local.get $16 + local.get $2 i32.lt_s if local.get $1 - local.get $15 + local.get $3 i32.add i32.load8_s i32.const 3 global.set $~argumentsLength local.get $1 - local.get $14 + local.get $4 i32.const 5040 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53731,23 +53702,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $14 + local.tee $4 i32.store - local.get $14 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $14 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $14 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -53756,26 +53727,26 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $14 + local.get $4 i32.load offset=4 - local.set $15 - local.get $14 + local.set $3 + local.get $4 i32.load offset=8 - local.set $16 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0 loop $for-loop|0108 local.get $1 - local.get $16 + local.get $2 i32.lt_s if local.get $1 - local.get $15 + local.get $3 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength local.get $1 - local.get $14 + local.get $4 i32.const 5072 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53799,26 +53770,26 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $14 + local.get $4 i32.load offset=4 - local.set $15 - local.get $14 + local.set $3 + local.get $4 i32.load offset=8 - local.set $16 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0110 loop $for-loop|0111 local.get $1 - local.get $16 + local.get $2 i32.lt_s if local.get $1 - local.get $15 + local.get $3 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength local.get $1 - local.get $14 + local.get $4 i32.const 5104 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53850,23 +53821,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $14 + local.tee $4 i32.store - local.get $14 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $14 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $14 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -53875,26 +53846,26 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $14 + local.get $4 i32.load offset=4 - local.set $15 - local.get $14 + local.set $3 + local.get $4 i32.load offset=8 - local.set $16 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0114 loop $for-loop|0115 local.get $1 - local.get $16 + local.get $2 i32.lt_s if local.get $1 - local.get $15 + local.get $3 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength local.get $1 - local.get $14 + local.get $4 i32.const 5136 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53918,26 +53889,26 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $14 + local.get $4 i32.load offset=4 - local.set $15 - local.get $14 + local.set $3 + local.get $4 i32.load offset=8 - local.set $16 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0117 loop $for-loop|0118 local.get $1 - local.get $16 + local.get $2 i32.lt_s if local.get $1 - local.get $15 + local.get $3 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength local.get $1 - local.get $14 + local.get $4 i32.const 5168 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53969,23 +53940,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $14 + local.tee $4 i32.store - local.get $14 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $14 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $14 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -53994,30 +53965,30 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $14 + local.get $4 i32.load offset=4 - local.set $15 - local.get $14 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.set $16 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int16Array,i16>|inlined.0 loop $for-loop|0120 local.get $1 - local.get $16 + local.get $2 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $15 + local.get $3 i32.add i32.load16_s i32.const 3 global.set $~argumentsLength local.get $1 - local.get $14 + local.get $4 i32.const 5200 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54041,30 +54012,30 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $14 + local.get $4 i32.load offset=4 - local.set $15 - local.get $14 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.set $16 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int16Array,i16>|inlined.0122 loop $for-loop|0123 local.get $1 - local.get $16 + local.get $2 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $15 + local.get $3 i32.add i32.load16_s i32.const 3 global.set $~argumentsLength local.get $1 - local.get $14 + local.get $4 i32.const 5232 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54096,23 +54067,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $14 + local.tee $4 i32.store - local.get $14 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $14 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $14 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -54121,30 +54092,30 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $14 + local.get $4 i32.load offset=4 - local.set $15 - local.get $14 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.set $16 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.0 loop $for-loop|0125 local.get $1 - local.get $16 + local.get $2 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $15 + local.get $3 i32.add i32.load16_u i32.const 3 global.set $~argumentsLength local.get $1 - local.get $14 + local.get $4 i32.const 5264 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54168,30 +54139,30 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $14 + local.get $4 i32.load offset=4 - local.set $15 - local.get $14 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.set $16 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.0127 loop $for-loop|0128 local.get $1 - local.get $16 + local.get $2 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $15 + local.get $3 i32.add i32.load16_u i32.const 3 global.set $~argumentsLength local.get $1 - local.get $14 + local.get $4 i32.const 5296 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54223,23 +54194,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $14 + local.tee $4 i32.store - local.get $14 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $14 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $14 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -54248,30 +54219,30 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $14 + local.get $4 i32.load offset=4 - local.set $15 - local.get $14 + local.set $3 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.set $16 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int32Array,i32>|inlined.0 loop $for-loop|0130 local.get $1 - local.get $16 + local.get $2 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $15 + local.get $3 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $14 + local.get $4 i32.const 5328 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54295,30 +54266,30 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $14 + local.get $4 i32.load offset=4 - local.set $15 - local.get $14 + local.set $3 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.set $16 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int32Array,i32>|inlined.0132 loop $for-loop|0133 local.get $1 - local.get $16 + local.get $2 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $15 + local.get $3 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $14 + local.get $4 i32.const 5360 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54350,23 +54321,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $14 + local.tee $4 i32.store - local.get $14 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $14 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $14 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -54375,30 +54346,30 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $14 + local.get $4 i32.load offset=4 - local.set $15 - local.get $14 + local.set $3 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.set $16 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.0 loop $for-loop|0135 local.get $1 - local.get $16 + local.get $2 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $15 + local.get $3 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $14 + local.get $4 i32.const 5392 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54422,30 +54393,30 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $14 + local.get $4 i32.load offset=4 - local.set $15 - local.get $14 + local.set $3 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.set $16 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.0137 loop $for-loop|0138 local.get $1 - local.get $16 + local.get $2 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $15 + local.get $3 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $14 + local.get $4 i32.const 5424 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54477,23 +54448,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $15 + local.get $3 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $15 + local.get $3 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set @@ -54502,10 +54473,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u @@ -54519,13 +54490,13 @@ local.get $1 i32.const 3 i32.shl - local.get $16 + local.get $2 i32.add i64.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $15 + local.get $3 i32.const 5456 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -54549,10 +54520,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u @@ -54566,13 +54537,13 @@ local.get $1 i32.const 3 i32.shl - local.get $16 + local.get $2 i32.add i64.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $15 + local.get $3 i32.const 5488 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -54604,23 +54575,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $15 + local.get $3 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $15 + local.get $3 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set @@ -54629,10 +54600,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u @@ -54646,13 +54617,13 @@ local.get $1 i32.const 3 i32.shl - local.get $16 + local.get $2 i32.add i64.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $15 + local.get $3 i32.const 5520 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -54676,10 +54647,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u @@ -54693,13 +54664,13 @@ local.get $1 i32.const 3 i32.shl - local.get $16 + local.get $2 i32.add i64.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $15 + local.get $3 i32.const 5552 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -54731,23 +54702,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $15 + local.get $3 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $15 + local.get $3 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set @@ -54756,10 +54727,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -54773,13 +54744,13 @@ local.get $1 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add f32.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $15 + local.get $3 i32.const 5584 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) @@ -54803,10 +54774,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -54820,13 +54791,13 @@ local.get $1 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add f32.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $15 + local.get $3 i32.const 5616 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) @@ -54858,23 +54829,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $15 + local.get $3 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $15 + local.get $3 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set @@ -54883,10 +54854,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u @@ -54900,13 +54871,13 @@ local.get $1 i32.const 3 i32.shl - local.get $16 + local.get $2 i32.add f64.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $15 + local.get $3 i32.const 5648 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) @@ -54930,10 +54901,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u @@ -54947,13 +54918,13 @@ local.get $1 i32.const 3 i32.shl - local.get $16 + local.get $2 i32.add f64.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $15 + local.get $3 i32.const 5680 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) @@ -54985,33 +54956,33 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $15 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $15 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer i32.const 5712 i32.store offset=4 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.sub @@ -55023,13 +54994,13 @@ i32.ge_s if local.get $1 - local.get $16 + local.get $2 i32.add i32.load8_s i32.const 3 global.set $~argumentsLength local.get $1 - local.get $15 + local.get $3 i32.const 5712 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55051,10 +55022,10 @@ global.get $~lib/memory/__stack_pointer i32.const 5744 i32.store offset=4 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.sub @@ -55066,13 +55037,13 @@ i32.ge_s if local.get $1 - local.get $16 + local.get $2 i32.add i32.load8_s i32.const 3 global.set $~argumentsLength local.get $1 - local.get $15 + local.get $3 i32.const 5744 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55104,33 +55075,33 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $15 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $15 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 5776 i32.store offset=4 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.sub @@ -55142,13 +55113,13 @@ i32.ge_s if local.get $1 - local.get $16 + local.get $2 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength local.get $1 - local.get $15 + local.get $3 i32.const 5776 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55170,10 +55141,10 @@ global.get $~lib/memory/__stack_pointer i32.const 5808 i32.store offset=4 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.sub @@ -55185,13 +55156,13 @@ i32.ge_s if local.get $1 - local.get $16 + local.get $2 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength local.get $1 - local.get $15 + local.get $3 i32.const 5808 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55223,33 +55194,33 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $15 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $15 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set global.get $~lib/memory/__stack_pointer i32.const 5840 i32.store offset=4 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.sub @@ -55261,13 +55232,13 @@ i32.ge_s if local.get $1 - local.get $16 + local.get $2 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength local.get $1 - local.get $15 + local.get $3 i32.const 5840 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55289,10 +55260,10 @@ global.get $~lib/memory/__stack_pointer i32.const 5872 i32.store offset=4 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.sub @@ -55304,13 +55275,13 @@ i32.ge_s if local.get $1 - local.get $16 + local.get $2 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength local.get $1 - local.get $15 + local.get $3 i32.const 5872 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55342,33 +55313,33 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $15 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $15 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 5904 i32.store offset=4 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u @@ -55384,13 +55355,13 @@ local.get $1 i32.const 1 i32.shl - local.get $16 + local.get $2 i32.add i32.load16_s i32.const 3 global.set $~argumentsLength local.get $1 - local.get $15 + local.get $3 i32.const 5904 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55412,10 +55383,10 @@ global.get $~lib/memory/__stack_pointer i32.const 5936 i32.store offset=4 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u @@ -55431,13 +55402,13 @@ local.get $1 i32.const 1 i32.shl - local.get $16 + local.get $2 i32.add i32.load16_s i32.const 3 global.set $~argumentsLength local.get $1 - local.get $15 + local.get $3 i32.const 5936 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55469,33 +55440,33 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $15 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $15 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set global.get $~lib/memory/__stack_pointer i32.const 5968 i32.store offset=4 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u @@ -55511,13 +55482,13 @@ local.get $1 i32.const 1 i32.shl - local.get $16 + local.get $2 i32.add i32.load16_u i32.const 3 global.set $~argumentsLength local.get $1 - local.get $15 + local.get $3 i32.const 5968 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55539,10 +55510,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6000 i32.store offset=4 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u @@ -55558,13 +55529,13 @@ local.get $1 i32.const 1 i32.shl - local.get $16 + local.get $2 i32.add i32.load16_u i32.const 3 global.set $~argumentsLength local.get $1 - local.get $15 + local.get $3 i32.const 6000 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55596,33 +55567,33 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $15 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $15 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer i32.const 6032 i32.store offset=4 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -55638,13 +55609,13 @@ local.get $1 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $15 + local.get $3 i32.const 6032 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55666,10 +55637,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6064 i32.store offset=4 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -55685,13 +55656,13 @@ local.get $1 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $15 + local.get $3 i32.const 6064 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55723,33 +55694,33 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $15 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $15 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer i32.const 6096 i32.store offset=4 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -55765,13 +55736,13 @@ local.get $1 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $15 + local.get $3 i32.const 6096 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55793,10 +55764,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6128 i32.store offset=4 - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -55812,13 +55783,13 @@ local.get $1 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $1 - local.get $15 + local.get $3 i32.const 6128 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55850,33 +55821,33 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $16 + local.get $2 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $16 + local.get $2 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 6160 i32.store offset=4 - local.get $16 + local.get $2 i32.load offset=4 local.set $0 - local.get $16 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -55898,7 +55869,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $16 + local.get $2 i32.const 6160 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -55920,10 +55891,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6192 i32.store offset=4 - local.get $16 + local.get $2 i32.load offset=4 local.set $0 - local.get $16 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -55945,7 +55916,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $16 + local.get $2 i32.const 6192 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -55977,33 +55948,33 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $16 + local.get $2 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $16 + local.get $2 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set global.get $~lib/memory/__stack_pointer i32.const 6224 i32.store offset=4 - local.get $16 + local.get $2 i32.load offset=4 local.set $0 - local.get $16 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -56025,7 +55996,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $16 + local.get $2 i32.const 6224 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -56047,10 +56018,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6256 i32.store offset=4 - local.get $16 + local.get $2 i32.load offset=4 local.set $0 - local.get $16 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -56072,7 +56043,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $16 + local.get $2 i32.const 6256 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -56104,33 +56075,33 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $16 + local.get $2 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $16 + local.get $2 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer i32.const 6288 i32.store offset=4 - local.get $16 + local.get $2 i32.load offset=4 local.set $0 - local.get $16 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -56152,7 +56123,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $16 + local.get $2 i32.const 6288 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) @@ -56174,10 +56145,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6320 i32.store offset=4 - local.get $16 + local.get $2 i32.load offset=4 local.set $0 - local.get $16 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -56199,7 +56170,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $16 + local.get $2 i32.const 6320 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) @@ -56231,33 +56202,33 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $16 + local.get $2 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $16 + local.get $2 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer i32.const 6352 i32.store offset=4 - local.get $16 + local.get $2 i32.load offset=4 local.set $0 - local.get $16 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -56279,7 +56250,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $16 + local.get $2 i32.const 6352 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) @@ -56301,10 +56272,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6384 i32.store offset=4 - local.get $16 + local.get $2 i32.load offset=4 local.set $0 - local.get $16 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -56326,7 +56297,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $16 + local.get $2 i32.const 6384 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) @@ -56358,23 +56329,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $15 + local.get $3 i32.const 1 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $15 + local.get $3 i32.const 2 i32.const 6 call $~lib/typedarray/Int8Array#__set @@ -56384,28 +56355,28 @@ i32.const 0 local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.0 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 - local.set $0 + local.set $1 loop $for-loop|0217 - local.get $0 + local.get $1 local.get $9 i32.gt_s if + local.get $2 local.get $9 - local.get $16 i32.add i32.load8_s - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 6416 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -56429,28 +56400,28 @@ i32.const 0 local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.0219 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 - local.set $0 + local.set $1 loop $for-loop|0220 - local.get $0 + local.get $1 local.get $9 i32.gt_s if + local.get $2 local.get $9 - local.get $16 i32.add i32.load8_s - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 6448 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -56480,23 +56451,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $15 + local.get $3 i32.const 1 i32.const 4 call $~lib/typedarray/Uint8Array#__set - local.get $15 + local.get $3 i32.const 2 i32.const 6 call $~lib/typedarray/Uint8Array#__set @@ -56506,28 +56477,28 @@ i32.const 0 local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 - local.set $0 + local.set $1 loop $for-loop|0222 - local.get $0 + local.get $1 local.get $9 i32.gt_s if + local.get $2 local.get $9 - local.get $16 i32.add i32.load8_u - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 6480 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -56551,28 +56522,28 @@ i32.const 0 local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0224 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 - local.set $0 + local.set $1 loop $for-loop|0225 - local.get $0 + local.get $1 local.get $9 i32.gt_s if + local.get $2 local.get $9 - local.get $16 i32.add i32.load8_u - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 6512 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -56602,23 +56573,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $15 + local.get $3 i32.const 1 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $15 + local.get $3 i32.const 2 i32.const 6 call $~lib/typedarray/Uint8ClampedArray#__set @@ -56628,28 +56599,28 @@ i32.const 0 local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0228 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 - local.set $0 + local.set $1 loop $for-loop|0229 - local.get $0 + local.get $1 local.get $9 i32.gt_s if + local.get $2 local.get $9 - local.get $16 i32.add i32.load8_u - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 6544 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -56673,28 +56644,28 @@ i32.const 0 local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0231 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 - local.set $0 + local.set $1 loop $for-loop|0232 - local.get $0 + local.get $1 local.get $9 i32.gt_s if + local.get $2 local.get $9 - local.get $16 i32.add i32.load8_u - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 6576 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -56724,23 +56695,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $15 + local.get $3 i32.const 1 i32.const 4 call $~lib/typedarray/Int16Array#__set - local.get $15 + local.get $3 i32.const 2 i32.const 6 call $~lib/typedarray/Int16Array#__set @@ -56750,32 +56721,32 @@ i32.const 0 local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.0 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|0234 - local.get $0 + local.get $1 local.get $9 i32.gt_s if local.get $9 i32.const 1 i32.shl - local.get $16 + local.get $2 i32.add i32.load16_s - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 6608 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -56799,32 +56770,32 @@ i32.const 0 local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.0236 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|0237 - local.get $0 + local.get $1 local.get $9 i32.gt_s if local.get $9 i32.const 1 i32.shl - local.get $16 + local.get $2 i32.add i32.load16_s - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 6640 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -56854,23 +56825,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $15 + local.get $3 i32.const 1 i32.const 4 call $~lib/typedarray/Uint16Array#__set - local.get $15 + local.get $3 i32.const 2 i32.const 6 call $~lib/typedarray/Uint16Array#__set @@ -56880,32 +56851,32 @@ i32.const 0 local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.0 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|0239 - local.get $0 + local.get $1 local.get $9 i32.gt_s if local.get $9 i32.const 1 i32.shl - local.get $16 + local.get $2 i32.add i32.load16_u - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 6672 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -56929,32 +56900,32 @@ i32.const 0 local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.0241 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|0242 - local.get $0 + local.get $1 local.get $9 i32.gt_s if local.get $9 i32.const 1 i32.shl - local.get $16 + local.get $2 i32.add i32.load16_u - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 6704 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -56984,23 +56955,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $15 + local.get $3 i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $15 + local.get $3 i32.const 2 i32.const 6 call $~lib/typedarray/Int32Array#__set @@ -57010,32 +56981,32 @@ i32.const 0 local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|0244 - local.get $0 + local.get $1 local.get $9 i32.gt_s if local.get $9 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add i32.load - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 6736 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -57059,32 +57030,32 @@ i32.const 0 local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.0246 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|0247 - local.get $0 + local.get $1 local.get $9 i32.gt_s if local.get $9 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add i32.load - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 6768 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -57114,23 +57085,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 i32.const 0 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $15 + local.get $3 i32.const 1 i32.const 4 call $~lib/typedarray/Uint32Array#__set - local.get $15 + local.get $3 i32.const 2 i32.const 6 call $~lib/typedarray/Uint32Array#__set @@ -57140,32 +57111,32 @@ i32.const 0 local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|0249 - local.get $0 + local.get $1 local.get $9 i32.gt_s if local.get $9 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add i32.load - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 6800 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -57189,32 +57160,32 @@ i32.const 0 local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.0251 (result i32) - local.get $15 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|0252 - local.get $0 + local.get $1 local.get $9 i32.gt_s if local.get $9 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add i32.load - local.set $1 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $1 + local.get $0 local.get $9 - local.get $15 + local.get $3 i32.const 6832 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -57244,23 +57215,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $16 + local.get $2 i32.const 1 i64.const 4 call $~lib/typedarray/Int64Array#__set - local.get $16 + local.get $2 i32.const 2 i64.const 6 call $~lib/typedarray/Int64Array#__set @@ -57268,44 +57239,44 @@ i32.const 6864 i32.store offset=4 i32.const 0 - local.set $8 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0 (result i32) - local.get $16 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|0254 - local.get $1 - local.get $8 + local.get $0 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add i64.load - local.set $10 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $10 local.get $8 - local.get $16 + local.get $10 + local.get $2 i32.const 6864 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0 drop - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|0254 end end @@ -57317,44 +57288,44 @@ i32.const 6896 i32.store offset=4 i32.const 0 - local.set $8 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0256 (result i32) - local.get $16 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|0257 - local.get $1 - local.get $8 + local.get $0 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add i64.load - local.set $10 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $10 local.get $8 - local.get $16 + local.get $10 + local.get $2 i32.const 6896 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0256 drop - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|0257 end end @@ -57374,23 +57345,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $16 + local.get $2 i32.const 1 i64.const 4 call $~lib/typedarray/Uint64Array#__set - local.get $16 + local.get $2 i32.const 2 i64.const 6 call $~lib/typedarray/Uint64Array#__set @@ -57398,44 +57369,44 @@ i32.const 6928 i32.store offset=4 i32.const 0 - local.set $8 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0 (result i32) - local.get $16 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|0259 - local.get $1 - local.get $8 + local.get $0 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add i64.load - local.set $10 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $10 local.get $8 - local.get $16 + local.get $10 + local.get $2 i32.const 6928 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0 drop - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|0259 end end @@ -57447,44 +57418,44 @@ i32.const 6960 i32.store offset=4 i32.const 0 - local.set $8 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0261 (result i32) - local.get $16 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|0262 - local.get $1 - local.get $8 + local.get $0 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add i64.load - local.set $10 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $10 local.get $8 - local.get $16 + local.get $10 + local.get $2 i32.const 6960 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0261 drop - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|0262 end end @@ -57504,23 +57475,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $16 + local.get $2 i32.const 1 f32.const 4 call $~lib/typedarray/Float32Array#__set - local.get $16 + local.get $2 i32.const 2 f32.const 6 call $~lib/typedarray/Float32Array#__set @@ -57528,44 +57499,44 @@ i32.const 6992 i32.store offset=4 i32.const 0 - local.set $8 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) - local.get $16 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|0264 - local.get $1 - local.get $8 + local.get $0 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add f32.load - local.set $13 + local.set $5 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $13 - local.get $8 - local.get $16 + local.get $5 + local.get $10 + local.get $2 i32.const 6992 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|0264 end end @@ -57577,44 +57548,44 @@ i32.const 7024 i32.store offset=4 i32.const 0 - local.set $8 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0266 (result i32) - local.get $16 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|0267 - local.get $1 - local.get $8 + local.get $0 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add f32.load - local.set $13 + local.set $5 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $13 - local.get $8 - local.get $16 + local.get $5 + local.get $10 + local.get $2 i32.const 7024 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0266 drop - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|0267 end end @@ -57634,23 +57605,23 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 0 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $16 + local.get $2 i32.const 1 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $16 + local.get $2 i32.const 2 f64.const 6 call $~lib/typedarray/Float64Array#__set @@ -57658,44 +57629,44 @@ i32.const 7056 i32.store offset=4 i32.const 0 - local.set $8 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) - local.get $16 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|0269 - local.get $1 - local.get $8 + local.get $0 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add f64.load - local.set $11 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $11 - local.get $8 - local.get $16 + local.get $7 + local.get $10 + local.get $2 i32.const 7056 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|0269 end end @@ -57707,44 +57678,44 @@ i32.const 7088 i32.store offset=4 i32.const 0 - local.set $8 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0271 (result i32) - local.get $16 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|0272 - local.get $1 - local.get $8 + local.get $0 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add f64.load - local.set $11 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $11 - local.get $8 - local.get $16 + local.get $7 + local.get $10 + local.get $2 i32.const 7088 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0271 drop - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|0272 end end @@ -57764,25 +57735,25 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $15 + local.get $3 i32.const 0 i32.const 7152 i32.const 0 @@ -57792,7 +57763,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $15 + local.get $3 i32.const 1 i32.const 7152 i32.const 1 @@ -57802,7 +57773,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $15 + local.get $3 i32.const 2 i32.const 7152 i32.const 2 @@ -57813,33 +57784,33 @@ i32.const 7200 i32.store offset=8 i32.const 0 - local.set $8 - local.get $15 + local.set $10 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 - local.set $0 + local.set $1 loop $for-loop|054274 - local.get $0 - local.get $8 + local.get $1 + local.get $10 i32.gt_s if - local.get $8 - local.get $16 + local.get $2 + local.get $10 i32.add i32.load8_s i32.const 3 global.set $~argumentsLength - local.get $8 - local.get $15 + local.get $10 + local.get $3 i32.const 7200 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|054274 end end @@ -57860,25 +57831,25 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $15 + local.get $3 i32.const 0 i32.const 7152 i32.const 0 @@ -57889,7 +57860,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $15 + local.get $3 i32.const 1 i32.const 7152 i32.const 1 @@ -57900,7 +57871,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $15 + local.get $3 i32.const 2 i32.const 7152 i32.const 2 @@ -57912,33 +57883,33 @@ i32.const 7232 i32.store offset=8 i32.const 0 - local.set $8 - local.get $15 + local.set $10 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 - local.set $0 + local.set $1 loop $for-loop|056 - local.get $0 - local.get $8 + local.get $1 + local.get $10 i32.gt_s if - local.get $8 - local.get $16 + local.get $2 + local.get $10 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength - local.get $8 - local.get $15 + local.get $10 + local.get $3 i32.const 7232 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|056 end end @@ -57959,25 +57930,25 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $15 + local.get $3 i32.const 0 i32.const 7152 i32.const 0 @@ -57988,7 +57959,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $15 + local.get $3 i32.const 1 i32.const 7152 i32.const 1 @@ -57999,7 +57970,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $15 + local.get $3 i32.const 2 i32.const 7152 i32.const 2 @@ -58011,33 +57982,33 @@ i32.const 7264 i32.store offset=8 i32.const 0 - local.set $8 - local.get $15 + local.set $10 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 - local.set $0 + local.set $1 loop $for-loop|059 - local.get $0 - local.get $8 + local.get $1 + local.get $10 i32.gt_s if - local.get $8 - local.get $16 + local.get $2 + local.get $10 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength - local.get $8 - local.get $15 + local.get $10 + local.get $3 i32.const 7264 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|059 end end @@ -58058,25 +58029,25 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $15 + local.get $3 i32.const 0 i32.const 7152 i32.const 0 @@ -58086,7 +58057,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $15 + local.get $3 i32.const 1 i32.const 7152 i32.const 1 @@ -58096,7 +58067,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $15 + local.get $3 i32.const 2 i32.const 7152 i32.const 2 @@ -58107,37 +58078,37 @@ i32.const 7296 i32.store offset=8 i32.const 0 - local.set $8 - local.get $15 + local.set $10 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|061278 - local.get $0 - local.get $8 + local.get $1 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 1 i32.shl - local.get $16 + local.get $2 i32.add i32.load16_s i32.const 3 global.set $~argumentsLength - local.get $8 - local.get $15 + local.get $10 + local.get $3 i32.const 7296 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|061278 end end @@ -58158,25 +58129,25 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $15 + local.get $3 i32.const 0 i32.const 7152 i32.const 0 @@ -58187,7 +58158,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $15 + local.get $3 i32.const 1 i32.const 7152 i32.const 1 @@ -58198,7 +58169,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $15 + local.get $3 i32.const 2 i32.const 7152 i32.const 2 @@ -58210,37 +58181,37 @@ i32.const 7328 i32.store offset=8 i32.const 0 - local.set $8 - local.get $15 + local.set $10 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|063280 - local.get $0 - local.get $8 + local.get $1 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 1 i32.shl - local.get $16 + local.get $2 i32.add i32.load16_u i32.const 3 global.set $~argumentsLength - local.get $8 - local.get $15 + local.get $10 + local.get $3 i32.const 7328 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|063280 end end @@ -58261,25 +58232,25 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $15 + local.get $3 i32.const 0 i32.const 7152 i32.const 0 @@ -58288,7 +58259,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $15 + local.get $3 i32.const 1 i32.const 7152 i32.const 1 @@ -58297,7 +58268,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $15 + local.get $3 i32.const 2 i32.const 7152 i32.const 2 @@ -58307,37 +58278,37 @@ i32.const 7360 i32.store offset=8 i32.const 0 - local.set $8 - local.get $15 + local.set $10 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|065 - local.get $0 - local.get $8 + local.get $1 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $8 - local.get $15 + local.get $10 + local.get $3 i32.const 7360 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|065 end end @@ -58358,25 +58329,25 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $15 + local.tee $3 i32.store - local.get $15 + local.get $3 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $15 + local.get $3 i32.const 0 i32.const 7152 i32.const 0 @@ -58385,7 +58356,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $15 + local.get $3 i32.const 1 i32.const 7152 i32.const 1 @@ -58394,7 +58365,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $15 + local.get $3 i32.const 2 i32.const 7152 i32.const 2 @@ -58404,37 +58375,37 @@ i32.const 7392 i32.store offset=8 i32.const 0 - local.set $8 - local.get $15 + local.set $10 + local.get $3 i32.load offset=4 - local.set $16 - local.get $15 + local.set $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|067 - local.get $0 - local.get $8 + local.get $1 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $8 - local.get $15 + local.get $10 + local.get $3 i32.const 7392 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|067 end end @@ -58455,25 +58426,25 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $16 + local.get $2 i32.const 0 i32.const 7152 i32.const 0 @@ -58483,7 +58454,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $16 + local.get $2 i32.const 1 i32.const 7152 i32.const 1 @@ -58493,7 +58464,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $16 + local.get $2 i32.const 2 i32.const 7152 i32.const 2 @@ -58504,37 +58475,37 @@ i32.const 7424 i32.store offset=8 i32.const 0 - local.set $8 - local.get $16 + local.set $10 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|069 - local.get $1 - local.get $8 + local.get $0 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add i64.load i32.const 3 global.set $~argumentsLength - local.get $8 - local.get $16 + local.get $10 + local.get $2 i32.const 7424 i32.load call_indirect $0 (type $i64_i32_i32_=>_none) - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|069 end end @@ -58555,25 +58526,25 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $16 + local.get $2 i32.const 0 i32.const 7152 i32.const 0 @@ -58583,7 +58554,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $16 + local.get $2 i32.const 1 i32.const 7152 i32.const 1 @@ -58593,7 +58564,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $16 + local.get $2 i32.const 2 i32.const 7152 i32.const 2 @@ -58604,37 +58575,37 @@ i32.const 7456 i32.store offset=8 i32.const 0 - local.set $8 - local.get $16 + local.set $10 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|071285 - local.get $1 - local.get $8 + local.get $0 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add i64.load i32.const 3 global.set $~argumentsLength - local.get $8 - local.get $16 + local.get $10 + local.get $2 i32.const 7456 i32.load call_indirect $0 (type $i64_i32_i32_=>_none) - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|071285 end end @@ -58655,25 +58626,25 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $16 + local.get $2 i32.const 0 i32.const 7152 i32.const 0 @@ -58683,7 +58654,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $16 + local.get $2 i32.const 1 i32.const 7152 i32.const 1 @@ -58693,7 +58664,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $16 + local.get $2 i32.const 2 i32.const 7152 i32.const 2 @@ -58704,37 +58675,37 @@ i32.const 7488 i32.store offset=8 i32.const 0 - local.set $8 - local.get $16 + local.set $10 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|073287 - local.get $1 - local.get $8 + local.get $0 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add f32.load i32.const 3 global.set $~argumentsLength - local.get $8 - local.get $16 + local.get $10 + local.get $2 i32.const 7488 i32.load call_indirect $0 (type $f32_i32_i32_=>_none) - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|073287 end end @@ -58755,25 +58726,25 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 i32.const 0 global.set $std/typedarray/forEachCallCount - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $16 + local.get $2 i32.const 0 i32.const 7152 i32.const 0 @@ -58783,7 +58754,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $16 + local.get $2 i32.const 1 i32.const 7152 i32.const 1 @@ -58793,7 +58764,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $16 + local.get $2 i32.const 2 i32.const 7152 i32.const 2 @@ -58804,37 +58775,37 @@ i32.const 7520 i32.store offset=8 i32.const 0 - local.set $8 - local.get $16 + local.set $10 + local.get $2 i32.load offset=4 - local.set $0 - local.get $16 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|075 - local.get $1 - local.get $8 + local.get $0 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add f64.load i32.const 3 global.set $~argumentsLength - local.get $8 - local.get $16 + local.get $10 + local.get $2 i32.const 7520 i32.load call_indirect $0 (type $f64_i32_i32_=>_none) - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|075 end end @@ -58847,7 +58818,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $15 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -58857,118 +58828,118 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 7616 i32.store - local.get $1 + local.get $0 i32.const 7628 i32.load - local.tee $16 + local.tee $2 call $~lib/typedarray/Int8Array#constructor - local.tee $0 + local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $2 call $~lib/typedarray/Int8Array#constructor - local.tee $1 + local.tee $0 i32.store offset=8 loop $for-loop|028 - local.get $15 - local.get $16 - i32.lt_s + local.get $2 + local.get $3 + i32.gt_s if - local.get $0 - local.get $15 + local.get $1 + local.get $3 i32.const 7616 - local.get $15 + local.get $3 call $~lib/array/Array#__get i32.extend8_s call $~lib/typedarray/Int8Array#__set - local.get $1 - local.get $15 + local.get $0 + local.get $3 i32.const 7616 - local.get $15 + local.get $3 call $~lib/array/Array#__get i32.extend8_s call $~lib/typedarray/Int8Array#__set - local.get $15 + local.get $3 i32.const 1 i32.add - local.set $15 + local.set $3 br $for-loop|028 end end - local.get $0 + local.get $1 call $~lib/typedarray/Int8Array#reverse drop i32.const 0 - local.set $15 + local.set $3 loop $for-loop|1 - local.get $15 - local.get $16 - i32.lt_s + local.get $2 + local.get $3 + i32.gt_s if - local.get $0 - local.get $15 + local.get $1 + local.get $3 call $~lib/typedarray/Int8Array#__get i32.const 7616 - local.get $16 + local.get $2 i32.const 1 i32.sub - local.get $15 + local.get $3 i32.sub call $~lib/array/Array#__get i32.extend8_s i32.ne br_if $folding-inner24 - local.get $15 + local.get $3 i32.const 1 i32.add - local.set $15 + local.set $3 br $for-loop|1 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 4 i32.const 8 call $~lib/typedarray/Int8Array#subarray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int8Array#reverse - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 8 i32.ne br_if $folding-inner25 - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 7 i32.ne br_if $folding-inner26 - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 6 i32.ne br_if $folding-inner27 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#__get i32.const 5 @@ -58979,7 +58950,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $15 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -58989,120 +58960,120 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 7616 i32.store - local.get $1 + local.get $0 i32.const 7628 i32.load - local.tee $16 + local.tee $2 call $~lib/typedarray/Uint8Array#constructor - local.tee $0 + local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $2 call $~lib/typedarray/Uint8Array#constructor - local.tee $1 + local.tee $0 i32.store offset=8 loop $for-loop|030 - local.get $15 - local.get $16 - i32.lt_s + local.get $2 + local.get $3 + i32.gt_s if - local.get $0 - local.get $15 + local.get $1 + local.get $3 i32.const 7616 - local.get $15 + local.get $3 call $~lib/array/Array#__get i32.const 255 i32.and call $~lib/typedarray/Uint8Array#__set - local.get $1 - local.get $15 + local.get $0 + local.get $3 i32.const 7616 - local.get $15 + local.get $3 call $~lib/array/Array#__get i32.const 255 i32.and call $~lib/typedarray/Uint8Array#__set - local.get $15 + local.get $3 i32.const 1 i32.add - local.set $15 + local.set $3 br $for-loop|030 end end - local.get $0 + local.get $1 call $~lib/typedarray/Int8Array#reverse drop i32.const 0 - local.set $15 + local.set $3 loop $for-loop|131 - local.get $15 - local.get $16 - i32.lt_s + local.get $2 + local.get $3 + i32.gt_s if - local.get $0 - local.get $15 + local.get $1 + local.get $3 call $~lib/typedarray/Uint8Array#__get i32.const 7616 - local.get $16 + local.get $2 i32.const 1 i32.sub - local.get $15 + local.get $3 i32.sub call $~lib/array/Array#__get i32.const 255 i32.and i32.ne br_if $folding-inner24 - local.get $15 + local.get $3 i32.const 1 i32.add - local.set $15 + local.set $3 br $for-loop|131 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 8 call $~lib/typedarray/Uint8Array#subarray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int8Array#reverse - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 8 i32.ne br_if $folding-inner25 - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 7 i32.ne br_if $folding-inner26 - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 6 i32.ne br_if $folding-inner27 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#__get i32.const 5 @@ -59113,7 +59084,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $15 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -59123,120 +59094,120 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 7616 i32.store - local.get $1 + local.get $0 i32.const 7628 i32.load - local.tee $16 + local.tee $2 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 + local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $2 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $1 + local.tee $0 i32.store offset=8 loop $for-loop|032 - local.get $15 - local.get $16 - i32.lt_s + local.get $2 + local.get $3 + i32.gt_s if - local.get $0 - local.get $15 + local.get $1 + local.get $3 i32.const 7616 - local.get $15 + local.get $3 call $~lib/array/Array#__get i32.const 255 i32.and call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - local.get $15 + local.get $0 + local.get $3 i32.const 7616 - local.get $15 + local.get $3 call $~lib/array/Array#__get i32.const 255 i32.and call $~lib/typedarray/Uint8ClampedArray#__set - local.get $15 + local.get $3 i32.const 1 i32.add - local.set $15 + local.set $3 br $for-loop|032 end end - local.get $0 + local.get $1 call $~lib/typedarray/Int8Array#reverse drop i32.const 0 - local.set $15 + local.set $3 loop $for-loop|133 - local.get $15 - local.get $16 - i32.lt_s + local.get $2 + local.get $3 + i32.gt_s if - local.get $0 - local.get $15 + local.get $1 + local.get $3 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 7616 - local.get $16 + local.get $2 i32.const 1 i32.sub - local.get $15 + local.get $3 i32.sub call $~lib/array/Array#__get i32.const 255 i32.and i32.ne br_if $folding-inner24 - local.get $15 + local.get $3 i32.const 1 i32.add - local.set $15 + local.set $3 br $for-loop|133 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 8 call $~lib/typedarray/Uint8ClampedArray#subarray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int8Array#reverse - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 8 i32.ne br_if $folding-inner25 - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 7 i32.ne br_if $folding-inner26 - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 6 i32.ne br_if $folding-inner27 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 5 @@ -59247,7 +59218,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $15 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -59257,117 +59228,117 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 7616 i32.store - local.get $1 + local.get $0 i32.const 7628 i32.load - local.tee $16 + local.tee $2 call $~lib/typedarray/Int16Array#constructor - local.tee $0 + local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $2 call $~lib/typedarray/Int16Array#constructor - local.tee $1 + local.tee $0 i32.store offset=8 loop $for-loop|034 - local.get $15 - local.get $16 - i32.lt_s + local.get $2 + local.get $3 + i32.gt_s if - local.get $0 - local.get $15 + local.get $1 + local.get $3 i32.const 7616 - local.get $15 + local.get $3 call $~lib/array/Array#__get i32.extend16_s call $~lib/typedarray/Int16Array#__set - local.get $1 - local.get $15 + local.get $0 + local.get $3 i32.const 7616 - local.get $15 + local.get $3 call $~lib/array/Array#__get i32.extend16_s call $~lib/typedarray/Int16Array#__set - local.get $15 + local.get $3 i32.const 1 i32.add - local.set $15 + local.set $3 br $for-loop|034 end end - local.get $0 + local.get $1 call $~lib/typedarray/Int16Array#reverse drop i32.const 0 - local.set $15 + local.set $3 loop $for-loop|135 - local.get $15 - local.get $16 - i32.lt_s + local.get $2 + local.get $3 + i32.gt_s if - local.get $0 - local.get $15 + local.get $1 + local.get $3 call $~lib/typedarray/Int16Array#__get i32.const 7616 - local.get $16 + local.get $2 i32.const 1 i32.sub - local.get $15 + local.get $3 i32.sub call $~lib/array/Array#__get i32.extend16_s i32.ne br_if $folding-inner24 - local.get $15 + local.get $3 i32.const 1 i32.add - local.set $15 + local.set $3 br $for-loop|135 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 8 call $~lib/typedarray/Int16Array#subarray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int16Array#reverse - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 8 i32.ne br_if $folding-inner25 - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 7 i32.ne br_if $folding-inner26 - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 6 i32.ne br_if $folding-inner27 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#__get i32.const 5 @@ -59378,7 +59349,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $15 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -59388,120 +59359,120 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 7616 i32.store - local.get $1 + local.get $0 i32.const 7628 i32.load - local.tee $16 + local.tee $2 call $~lib/typedarray/Uint16Array#constructor - local.tee $0 + local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $2 call $~lib/typedarray/Uint16Array#constructor - local.tee $1 + local.tee $0 i32.store offset=8 loop $for-loop|037 - local.get $15 - local.get $16 - i32.lt_s + local.get $2 + local.get $3 + i32.gt_s if - local.get $0 - local.get $15 + local.get $1 + local.get $3 i32.const 7616 - local.get $15 + local.get $3 call $~lib/array/Array#__get i32.const 65535 i32.and call $~lib/typedarray/Uint16Array#__set - local.get $1 - local.get $15 + local.get $0 + local.get $3 i32.const 7616 - local.get $15 + local.get $3 call $~lib/array/Array#__get i32.const 65535 i32.and call $~lib/typedarray/Uint16Array#__set - local.get $15 + local.get $3 i32.const 1 i32.add - local.set $15 + local.set $3 br $for-loop|037 end end - local.get $0 + local.get $1 call $~lib/typedarray/Int16Array#reverse drop i32.const 0 - local.set $15 + local.set $3 loop $for-loop|138 - local.get $15 - local.get $16 - i32.lt_s + local.get $2 + local.get $3 + i32.gt_s if - local.get $0 - local.get $15 + local.get $1 + local.get $3 call $~lib/typedarray/Uint16Array#__get i32.const 7616 - local.get $16 + local.get $2 i32.const 1 i32.sub - local.get $15 + local.get $3 i32.sub call $~lib/array/Array#__get i32.const 65535 i32.and i32.ne br_if $folding-inner24 - local.get $15 + local.get $3 i32.const 1 i32.add - local.set $15 + local.set $3 br $for-loop|138 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 8 call $~lib/typedarray/Uint16Array#subarray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int16Array#reverse - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 8 i32.ne br_if $folding-inner25 - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 7 i32.ne br_if $folding-inner26 - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 6 i32.ne br_if $folding-inner27 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#__get i32.const 5 @@ -59531,9 +59502,9 @@ global.get $~lib/memory/__stack_pointer i32.const 1 call $~lib/typedarray/Float64Array#constructor - local.tee $14 + local.tee $4 i32.store offset=12 - local.get $14 + local.get $4 i32.const 0 f64.const nan:0x8000000000000 call $~lib/typedarray/Float64Array#__set @@ -59542,29 +59513,29 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $14 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $15 + local.tee $3 i32.const 0 - local.get $15 + local.get $3 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $14 + local.get $4 i32.load offset=4 - local.set $16 + local.set $2 loop $while-continue|0 local.get $0 - local.get $15 + local.get $3 i32.lt_s if local.get $0 local.tee $1 i32.const 3 i32.shl - local.get $16 + local.get $2 i32.add f64.load f64.const nan:0x8000000000000 @@ -59592,48 +59563,48 @@ unreachable end i32.const 0 - local.set $8 + local.set $10 block $~lib/typedarray/INCLUDES<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) i32.const 0 - local.get $14 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $1 i32.const 0 - local.get $0 + local.get $1 select i32.eqz br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $14 + local.get $4 i32.load offset=4 - local.set $1 + local.set $0 loop $while-continue|0289 - local.get $0 - local.get $8 + local.get $1 + local.get $10 i32.gt_s if i32.const 1 - local.get $8 + local.get $10 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add f64.load - local.tee $11 + local.tee $7 f64.const nan:0x8000000000000 f64.eq - local.get $11 - local.get $11 + local.get $7 + local.get $7 f64.ne i32.or br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $while-continue|0289 end end @@ -59651,9 +59622,9 @@ global.get $~lib/memory/__stack_pointer i32.const 1 call $~lib/typedarray/Float32Array#constructor - local.tee $14 + local.tee $4 i32.store offset=24 - local.get $14 + local.get $4 i32.const 0 f32.const nan:0x400000 call $~lib/typedarray/Float32Array#__set @@ -59662,29 +59633,29 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $14 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $15 + local.tee $3 i32.const 0 - local.get $15 + local.get $3 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $14 + local.get $4 i32.load offset=4 - local.set $16 + local.set $2 loop $while-continue|0290 local.get $0 - local.get $15 + local.get $3 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add f32.load f32.const nan:0x400000 @@ -59712,48 +59683,48 @@ unreachable end i32.const 0 - local.set $8 + local.set $10 block $~lib/typedarray/INCLUDES<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) i32.const 0 - local.get $14 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 + local.tee $1 i32.const 0 - local.get $0 + local.get $1 select i32.eqz br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $14 + local.get $4 i32.load offset=4 - local.set $1 + local.set $0 loop $while-continue|078 - local.get $0 - local.get $8 + local.get $1 + local.get $10 i32.gt_s if i32.const 1 - local.get $8 + local.get $10 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add f32.load - local.tee $13 + local.tee $5 f32.const nan:0x400000 f32.eq - local.get $13 - local.get $13 + local.get $5 + local.get $5 f32.ne i32.or br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $while-continue|078 end end @@ -59777,50 +59748,50 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 5 call $~lib/typedarray/Int8Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $1 i32.const 4 i32.const 5 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Int8Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -59834,27 +59805,27 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 9584 i32.store - local.get $0 + local.get $1 call $~lib/typedarray/Int8Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=4 + local.tee $0 local.get $1 + i32.store offset=4 + local.get $0 i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -59872,65 +59843,65 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 5 call $~lib/typedarray/Uint8Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 4 i32.const 5 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Uint8Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz br_if $folding-inner15 - local.get $0 + local.get $1 call $~lib/typedarray/Uint8Array#toString - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=4 + local.tee $0 local.get $1 + i32.store offset=4 + local.get $0 i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -59948,65 +59919,65 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $1 i32.const 4 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Uint8Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz br_if $folding-inner15 - local.get $0 + local.get $1 call $~lib/typedarray/Uint8Array#toString - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=4 + local.tee $0 local.get $1 + i32.store offset=4 + local.get $0 i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60024,50 +59995,50 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 5 call $~lib/typedarray/Int16Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $1 i32.const 4 i32.const 5 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Int16Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60081,27 +60052,27 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 9584 i32.store - local.get $0 + local.get $1 call $~lib/typedarray/Int16Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=4 + local.tee $0 local.get $1 + i32.store offset=4 + local.get $0 i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60119,50 +60090,50 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 5 call $~lib/typedarray/Uint16Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $1 i32.const 4 i32.const 5 call $~lib/typedarray/Uint16Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Uint16Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60176,27 +60147,27 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 9584 i32.store - local.get $0 + local.get $1 call $~lib/typedarray/Uint16Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=4 + local.tee $0 local.get $1 + i32.store offset=4 + local.get $0 i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60214,50 +60185,50 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 5 call $~lib/typedarray/Int32Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.const 4 i32.const 5 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Int32Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60271,27 +60242,27 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 9584 i32.store - local.get $0 + local.get $1 call $~lib/typedarray/Int32Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=4 + local.tee $0 local.get $1 + i32.store offset=4 + local.get $0 i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60309,50 +60280,50 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 5 call $~lib/typedarray/Uint32Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 4 i32.const 5 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Uint32Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60366,27 +60337,27 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 9584 i32.store - local.get $0 + local.get $1 call $~lib/typedarray/Uint32Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=4 + local.tee $0 local.get $1 + i32.store offset=4 + local.get $0 i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60404,50 +60375,50 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 5 call $~lib/typedarray/Int64Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $1 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $1 i32.const 3 i64.const 4 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $1 i32.const 4 i64.const 5 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Int64Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60461,27 +60432,27 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 9584 i32.store - local.get $0 + local.get $1 call $~lib/typedarray/Int64Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=4 + local.tee $0 local.get $1 + i32.store offset=4 + local.get $0 i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60499,50 +60470,50 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 5 call $~lib/typedarray/Uint64Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $1 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $1 i32.const 3 i64.const 4 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $1 i32.const 4 i64.const 5 call $~lib/typedarray/Uint64Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Uint64Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60556,27 +60527,27 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 9584 i32.store - local.get $0 + local.get $1 call $~lib/typedarray/Uint64Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=4 + local.tee $0 local.get $1 + i32.store offset=4 + local.get $0 i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -60594,50 +60565,50 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 5 call $~lib/typedarray/Float32Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 3 f32.const 4 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 4 f32.const 5 call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Float32Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 10800 i32.store offset=8 - local.get $1 + local.get $0 i32.const 10800 call $~lib/string/String.__eq i32.eqz @@ -60651,27 +60622,27 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 9584 i32.store - local.get $0 + local.get $1 call $~lib/typedarray/Float32Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=4 + local.tee $0 local.get $1 + i32.store offset=4 + local.get $0 i32.const 10800 i32.store offset=8 - local.get $0 + local.get $1 i32.const 10800 call $~lib/string/String.__eq i32.eqz @@ -60689,50 +60660,50 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 5 call $~lib/typedarray/Float64Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 3 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 4 f64.const 5 call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Float64Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 10800 i32.store offset=8 - local.get $1 + local.get $0 i32.const 10800 call $~lib/string/String.__eq i32.eqz @@ -60746,27 +60717,27 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 9584 i32.store - local.get $0 + local.get $1 call $~lib/typedarray/Float64Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=4 + local.tee $0 local.get $1 + i32.store offset=4 + local.get $0 i32.const 10800 i32.store offset=8 - local.get $0 + local.get $1 i32.const 10800 call $~lib/string/String.__eq i32.eqz @@ -60778,17 +60749,17 @@ global.get $~lib/memory/__stack_pointer i32.const 0 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $0 i32.store offset=12 i32.const 2 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint8Array.wrap@varargs - local.tee $1 + local.tee $0 i32.store offset=24 - local.get $1 + local.get $0 i32.load offset=8 if i32.const 0 @@ -60801,17 +60772,17 @@ global.get $~lib/memory/__stack_pointer i32.const 2 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $0 i32.store offset=12 i32.const 2 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Uint8Array.wrap@varargs - local.tee $1 + local.tee $0 i32.store offset=24 - local.get $1 + local.get $0 i32.load offset=8 if i32.const 0 @@ -60822,7 +60793,7 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -60832,64 +60803,64 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 10928 i32.store - local.get $1 + local.get $0 i32.const 10940 i32.load - local.tee $12 + local.tee $6 call $~lib/typedarray/Int8Array#constructor - local.tee $14 + local.tee $4 i32.store offset=4 loop $for-loop|041 - local.get $0 - local.get $12 + local.get $1 + local.get $6 i32.lt_s if - local.get $14 - local.get $0 + local.get $4 + local.get $1 i32.const 10928 - local.get $0 + local.get $1 call $~lib/array/Array#__get i32.extend8_s call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|041 end end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $14 - i32.load local.tee $1 + local.get $4 + i32.load + local.tee $0 i32.store offset=8 - local.get $0 local.get $1 - local.get $14 + local.get $0 + local.get $4 i32.load offset=4 - local.get $14 + local.get $4 i32.load i32.sub - local.tee $1 - local.get $14 + local.tee $0 + local.get $4 i32.load offset=8 - local.get $1 + local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $15 + local.tee $3 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -60903,60 +60874,60 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $15 + local.get $3 i32.const 20 i32.sub i32.load offset=16 - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store - local.get $1 - local.get $15 + local.get $0 + local.get $3 i32.store - local.get $15 + local.get $3 if - local.get $1 - local.get $15 + local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 - i32.store offset=8 local.get $1 - local.get $15 + i32.store offset=8 + local.get $0 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|142 - local.get $0 - local.get $12 + local.get $1 + local.get $6 i32.lt_s if - local.get $14 - local.get $0 - call $~lib/typedarray/Int8Array#__get + local.get $4 local.get $1 + call $~lib/typedarray/Int8Array#__get local.get $0 + local.get $1 call $~lib/typedarray/Int8Array#__get i32.ne br_if $folding-inner29 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|142 end end @@ -60990,16 +60961,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $15 + local.tee $3 call $~lib/typedarray/Uint8Array#constructor - local.tee $16 + local.tee $2 i32.store offset=4 loop $for-loop|043 local.get $1 - local.get $15 + local.get $3 i32.lt_s if - local.get $16 + local.get $2 local.get $1 i32.const 10928 local.get $1 @@ -61015,30 +60986,30 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $16 - i32.load local.tee $1 + local.get $2 + i32.load + local.tee $0 i32.store offset=8 - local.get $0 local.get $1 - local.get $16 + local.get $0 + local.get $2 i32.load offset=4 - local.get $16 + local.get $2 i32.load i32.sub - local.tee $1 - local.get $1 - local.get $16 + local.tee $0 + local.get $0 + local.get $2 i32.load offset=8 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $0 i32.store offset=12 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint8Array.wrap@varargs local.tee $0 @@ -61047,10 +61018,10 @@ local.set $1 loop $for-loop|144 local.get $1 - local.get $15 + local.get $3 i32.lt_s if - local.get $16 + local.get $2 local.get $1 call $~lib/typedarray/Uint8Array#__get local.get $0 @@ -61070,7 +61041,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -61080,65 +61051,65 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 10928 i32.store - local.get $1 + local.get $0 i32.const 10940 i32.load - local.tee $12 + local.tee $6 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $14 + local.tee $4 i32.store offset=4 loop $for-loop|047 - local.get $0 - local.get $12 + local.get $1 + local.get $6 i32.lt_s if - local.get $14 - local.get $0 + local.get $4 + local.get $1 i32.const 10928 - local.get $0 + local.get $1 call $~lib/array/Array#__get i32.const 255 i32.and call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|047 end end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $14 - i32.load local.tee $1 + local.get $4 + i32.load + local.tee $0 i32.store offset=8 - local.get $0 local.get $1 - local.get $14 + local.get $0 + local.get $4 i32.load offset=4 - local.get $14 + local.get $4 i32.load i32.sub - local.tee $1 - local.get $14 + local.tee $0 + local.get $4 i32.load offset=8 - local.get $1 + local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $15 + local.tee $3 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61152,60 +61123,60 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $15 + local.get $3 i32.const 20 i32.sub i32.load offset=16 - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store - local.get $1 - local.get $15 + local.get $0 + local.get $3 i32.store - local.get $15 + local.get $3 if - local.get $1 - local.get $15 + local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 - i32.store offset=8 local.get $1 - local.get $15 + i32.store offset=8 + local.get $0 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|148 - local.get $0 - local.get $12 + local.get $1 + local.get $6 i32.lt_s if - local.get $14 - local.get $0 - call $~lib/typedarray/Uint8ClampedArray#__get + local.get $4 local.get $1 + call $~lib/typedarray/Uint8ClampedArray#__get local.get $0 + local.get $1 call $~lib/typedarray/Uint8ClampedArray#__get i32.ne br_if $folding-inner29 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|148 end end @@ -61239,16 +61210,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $12 + local.tee $6 call $~lib/typedarray/Int16Array#constructor - local.tee $14 + local.tee $4 i32.store offset=4 loop $for-loop|053 local.get $1 - local.get $12 + local.get $6 i32.lt_s if - local.get $14 + local.get $4 local.get $1 i32.const 10928 local.get $1 @@ -61263,25 +61234,25 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $14 - i32.load local.tee $1 + local.get $4 + i32.load + local.tee $0 i32.store offset=8 - local.get $0 local.get $1 - local.get $14 + local.get $0 + local.get $4 i32.load offset=4 - local.get $14 + local.get $4 i32.load i32.sub - local.tee $1 - local.get $14 + local.tee $0 + local.get $4 i32.load offset=8 - local.get $1 + local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $15 + local.tee $3 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61297,7 +61268,7 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $15 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -61312,19 +61283,19 @@ local.tee $0 i32.store local.get $0 - local.get $15 + local.get $3 i32.store - local.get $15 + local.get $3 if local.get $0 - local.get $15 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 local.get $1 i32.store offset=8 local.get $0 - local.get $15 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -61336,10 +61307,10 @@ local.set $1 loop $for-loop|154 local.get $1 - local.get $12 + local.get $6 i32.lt_s if - local.get $14 + local.get $4 local.get $1 call $~lib/typedarray/Int16Array#__get local.get $0 @@ -61384,16 +61355,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $12 + local.tee $6 call $~lib/typedarray/Uint16Array#constructor - local.tee $14 + local.tee $4 i32.store offset=4 loop $for-loop|057 local.get $1 - local.get $12 + local.get $6 i32.lt_s if - local.get $14 + local.get $4 local.get $1 i32.const 10928 local.get $1 @@ -61409,25 +61380,25 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $14 - i32.load local.tee $1 + local.get $4 + i32.load + local.tee $0 i32.store offset=8 - local.get $0 local.get $1 - local.get $14 + local.get $0 + local.get $4 i32.load offset=4 - local.get $14 + local.get $4 i32.load i32.sub - local.tee $1 - local.get $14 + local.tee $0 + local.get $4 i32.load offset=8 - local.get $1 + local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $15 + local.tee $3 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61443,7 +61414,7 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $15 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -61458,19 +61429,19 @@ local.tee $0 i32.store local.get $0 - local.get $15 + local.get $3 i32.store - local.get $15 + local.get $3 if local.get $0 - local.get $15 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 local.get $1 i32.store offset=8 local.get $0 - local.get $15 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -61482,10 +61453,10 @@ local.set $1 loop $for-loop|158 local.get $1 - local.get $12 + local.get $6 i32.lt_s if - local.get $14 + local.get $4 local.get $1 call $~lib/typedarray/Uint16Array#__get local.get $0 @@ -61530,16 +61501,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $12 + local.tee $6 call $~lib/typedarray/Int32Array#constructor - local.tee $14 + local.tee $4 i32.store offset=4 loop $for-loop|060 local.get $1 - local.get $12 + local.get $6 i32.lt_s if - local.get $14 + local.get $4 local.get $1 i32.const 10928 local.get $1 @@ -61553,25 +61524,25 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $14 - i32.load local.tee $1 + local.get $4 + i32.load + local.tee $0 i32.store offset=8 - local.get $0 local.get $1 - local.get $14 + local.get $0 + local.get $4 i32.load offset=4 - local.get $14 + local.get $4 i32.load i32.sub - local.tee $1 - local.get $14 + local.tee $0 + local.get $4 i32.load offset=8 - local.get $1 + local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $15 + local.tee $3 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61587,7 +61558,7 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $15 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -61602,19 +61573,19 @@ local.tee $0 i32.store local.get $0 - local.get $15 + local.get $3 i32.store - local.get $15 + local.get $3 if local.get $0 - local.get $15 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 local.get $1 i32.store offset=8 local.get $0 - local.get $15 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -61626,10 +61597,10 @@ local.set $1 loop $for-loop|161 local.get $1 - local.get $12 + local.get $6 i32.lt_s if - local.get $14 + local.get $4 local.get $1 call $~lib/typedarray/Int32Array#__get local.get $0 @@ -61674,16 +61645,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $12 + local.tee $6 call $~lib/typedarray/Uint32Array#constructor - local.tee $14 + local.tee $4 i32.store offset=4 loop $for-loop|064 local.get $1 - local.get $12 + local.get $6 i32.lt_s if - local.get $14 + local.get $4 local.get $1 i32.const 10928 local.get $1 @@ -61697,25 +61668,25 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $14 - i32.load local.tee $1 + local.get $4 + i32.load + local.tee $0 i32.store offset=8 - local.get $0 local.get $1 - local.get $14 + local.get $0 + local.get $4 i32.load offset=4 - local.get $14 + local.get $4 i32.load i32.sub - local.tee $1 - local.get $14 + local.tee $0 + local.get $4 i32.load offset=8 - local.get $1 + local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $15 + local.tee $3 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61731,7 +61702,7 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $15 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -61746,19 +61717,19 @@ local.tee $0 i32.store local.get $0 - local.get $15 + local.get $3 i32.store - local.get $15 + local.get $3 if local.get $0 - local.get $15 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 local.get $1 i32.store offset=8 local.get $0 - local.get $15 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -61770,10 +61741,10 @@ local.set $1 loop $for-loop|165 local.get $1 - local.get $12 + local.get $6 i32.lt_s if - local.get $14 + local.get $4 local.get $1 call $~lib/typedarray/Uint32Array#__get local.get $0 @@ -61818,16 +61789,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $12 + local.tee $6 call $~lib/typedarray/Int64Array#constructor - local.tee $14 + local.tee $4 i32.store offset=4 loop $for-loop|070 local.get $1 - local.get $12 + local.get $6 i32.lt_s if - local.get $14 + local.get $4 local.get $1 i32.const 10928 local.get $1 @@ -61842,25 +61813,25 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $14 - i32.load local.tee $1 + local.get $4 + i32.load + local.tee $0 i32.store offset=8 - local.get $0 local.get $1 - local.get $14 + local.get $0 + local.get $4 i32.load offset=4 - local.get $14 + local.get $4 i32.load i32.sub - local.tee $1 - local.get $14 + local.tee $0 + local.get $4 i32.load offset=8 - local.get $1 + local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $15 + local.tee $3 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61876,7 +61847,7 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $15 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -61891,19 +61862,19 @@ local.tee $0 i32.store local.get $0 - local.get $15 + local.get $3 i32.store - local.get $15 + local.get $3 if local.get $0 - local.get $15 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 local.get $1 i32.store offset=8 local.get $0 - local.get $15 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -61915,10 +61886,10 @@ local.set $1 loop $for-loop|171 local.get $1 - local.get $12 + local.get $6 i32.lt_s if - local.get $14 + local.get $4 local.get $1 call $~lib/typedarray/Int64Array#__get local.get $0 @@ -61963,16 +61934,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $12 + local.tee $6 call $~lib/typedarray/Uint64Array#constructor - local.tee $14 + local.tee $4 i32.store offset=4 loop $for-loop|074 local.get $1 - local.get $12 + local.get $6 i32.lt_s if - local.get $14 + local.get $4 local.get $1 i32.const 10928 local.get $1 @@ -61987,25 +61958,25 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $14 - i32.load local.tee $1 + local.get $4 + i32.load + local.tee $0 i32.store offset=8 - local.get $0 local.get $1 - local.get $14 + local.get $0 + local.get $4 i32.load offset=4 - local.get $14 + local.get $4 i32.load i32.sub - local.tee $1 - local.get $14 + local.tee $0 + local.get $4 i32.load offset=8 - local.get $1 + local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $15 + local.tee $3 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -62021,7 +61992,7 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $15 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -62036,19 +62007,19 @@ local.tee $0 i32.store local.get $0 - local.get $15 + local.get $3 i32.store - local.get $15 + local.get $3 if local.get $0 - local.get $15 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 local.get $1 i32.store offset=8 local.get $0 - local.get $15 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -62060,10 +62031,10 @@ local.set $1 loop $for-loop|175 local.get $1 - local.get $12 + local.get $6 i32.lt_s if - local.get $14 + local.get $4 local.get $1 call $~lib/typedarray/Uint64Array#__get local.get $0 @@ -62108,16 +62079,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $12 + local.tee $6 call $~lib/typedarray/Float32Array#constructor - local.tee $14 + local.tee $4 i32.store offset=4 loop $for-loop|077 local.get $1 - local.get $12 + local.get $6 i32.lt_s if - local.get $14 + local.get $4 local.get $1 i32.const 10928 local.get $1 @@ -62132,25 +62103,25 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $14 - i32.load local.tee $1 + local.get $4 + i32.load + local.tee $0 i32.store offset=8 - local.get $0 local.get $1 - local.get $14 + local.get $0 + local.get $4 i32.load offset=4 - local.get $14 + local.get $4 i32.load i32.sub - local.tee $1 - local.get $14 + local.tee $0 + local.get $4 i32.load offset=8 - local.get $1 + local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $15 + local.tee $3 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -62166,7 +62137,7 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $15 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -62181,19 +62152,19 @@ local.tee $0 i32.store local.get $0 - local.get $15 + local.get $3 i32.store - local.get $15 + local.get $3 if local.get $0 - local.get $15 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 local.get $1 i32.store offset=8 local.get $0 - local.get $15 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -62205,10 +62176,10 @@ local.set $1 loop $for-loop|178 local.get $1 - local.get $12 + local.get $6 i32.lt_s if - local.get $14 + local.get $4 local.get $1 call $~lib/typedarray/Float32Array#__get local.get $0 @@ -62253,16 +62224,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $12 + local.tee $6 call $~lib/typedarray/Float64Array#constructor - local.tee $14 + local.tee $4 i32.store offset=4 loop $for-loop|080 local.get $1 - local.get $12 + local.get $6 i32.lt_s if - local.get $14 + local.get $4 local.get $1 i32.const 10928 local.get $1 @@ -62277,25 +62248,25 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $14 - i32.load local.tee $1 + local.get $4 + i32.load + local.tee $0 i32.store offset=8 - local.get $0 local.get $1 - local.get $14 + local.get $0 + local.get $4 i32.load offset=4 - local.get $14 + local.get $4 i32.load i32.sub - local.tee $1 - local.get $14 + local.tee $0 + local.get $4 i32.load offset=8 - local.get $1 + local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $15 + local.tee $3 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -62311,7 +62282,7 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $15 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -62326,19 +62297,19 @@ local.tee $0 i32.store local.get $0 - local.get $15 + local.get $3 i32.store - local.get $15 + local.get $3 if local.get $0 - local.get $15 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 local.get $1 i32.store offset=8 local.get $0 - local.get $15 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -62350,10 +62321,10 @@ local.set $1 loop $for-loop|181 local.get $1 - local.get $12 + local.get $6 i32.lt_s if - local.get $14 + local.get $4 local.get $1 call $~lib/typedarray/Float64Array#__get local.get $0 @@ -62386,62 +62357,62 @@ global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $12 + local.tee $6 i32.store offset=24 global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $1 + local.tee $0 i32.store offset=12 - local.get $1 + local.get $0 i32.const 0 f32.const 400 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 1 f32.const nan:0x400000 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 2 f32.const inf call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Int64Array#constructor - local.tee $15 + local.tee $3 i32.store offset=8 - local.get $15 + local.get $3 i32.const 0 i64.const -10 call $~lib/typedarray/Int64Array#__set - local.get $15 + local.get $3 i32.const 1 i64.const 100 call $~lib/typedarray/Int64Array#__set - local.get $15 + local.get $3 i32.const 2 i64.const 10 call $~lib/typedarray/Int64Array#__set - local.get $15 + local.get $3 i32.const 3 i64.const 300 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 2 call $~lib/typedarray/Int32Array#constructor - local.tee $14 + local.tee $4 i32.store offset=16 - local.get $14 + local.get $4 i32.const 0 i32.const 300 call $~lib/typedarray/Int32Array#__set - local.get $14 + local.get $4 i32.const 1 i32.const -1 call $~lib/typedarray/Int32Array#__set - local.get $12 + local.get $6 i32.load offset=8 - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u @@ -62449,42 +62420,42 @@ i32.add i32.lt_s br_if $folding-inner19 - local.get $12 + local.get $6 i32.load offset=4 i32.const 1 i32.add - local.set $16 - local.get $1 + local.set $2 + local.get $0 i32.load offset=4 - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|082 - local.get $1 - local.get $6 + local.get $0 + local.get $16 i32.gt_s if - local.get $6 + local.get $2 local.get $16 i32.add - local.get $6 + local.get $16 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add f32.load - local.tee $13 - local.get $13 + local.tee $5 + local.get $5 f32.sub f32.const 0 f32.eq if (result i32) f32.const 0 f32.const 255 - local.get $13 + local.get $5 f32.min f32.max i32.trunc_f32_u @@ -62492,22 +62463,22 @@ i32.const 0 end i32.store8 - local.get $6 + local.get $16 i32.const 1 i32.add - local.set $6 + local.set $16 br $for-loop|082 end end - local.get $12 - local.get $15 + local.get $6 + local.get $3 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int64Array> i32.const 0 local.set $9 - local.get $12 + local.get $6 i32.load offset=8 - local.get $14 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -62515,41 +62486,41 @@ i32.add i32.lt_s br_if $folding-inner19 - local.get $12 + local.get $6 i32.load offset=4 i32.const 8 i32.add - local.set $15 - local.get $14 + local.set $3 + local.get $4 i32.load offset=4 - local.set $16 - local.get $14 + local.set $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|086311 - local.get $0 + local.get $1 local.get $9 i32.gt_s if + local.get $3 local.get $9 - local.get $15 i32.add local.get $9 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add i32.load - local.tee $1 + local.tee $0 i32.const 255 - local.get $1 + local.get $0 i32.sub i32.const 31 i32.shr_s i32.or - local.get $1 + local.get $0 i32.const 31 i32.shr_s i32.const -1 @@ -62568,93 +62539,93 @@ i32.const 63 i32.const 15280 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $12 - local.get $1 + local.get $6 + local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint32Array#constructor - local.tee $1 + local.tee $0 i32.store offset=28 - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 300 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 100 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $0 i32.const 3 i32.const -1 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Int16Array#constructor - local.tee $14 + local.tee $4 i32.store - local.get $14 + local.get $4 i32.const 0 i32.const -10 call $~lib/typedarray/Int16Array#__set - local.get $14 + local.get $4 i32.const 1 i32.const 100 call $~lib/typedarray/Int16Array#__set - local.get $14 + local.get $4 i32.const 2 i32.const 10 call $~lib/typedarray/Int16Array#__set - local.get $14 + local.get $4 i32.const 3 i32.const 300 call $~lib/typedarray/Int16Array#__set i32.const 0 local.set $9 - local.get $12 + local.get $6 i32.load offset=8 - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u i32.lt_s br_if $folding-inner19 - local.get $12 + local.get $6 i32.load offset=4 - local.set $15 - local.get $1 + local.set $3 + local.get $0 i32.load offset=4 - local.set $16 - local.get $1 + local.set $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|090 - local.get $0 + local.get $1 local.get $9 i32.gt_s if + local.get $3 local.get $9 - local.get $15 i32.add i32.const 255 local.get $9 i32.const 2 i32.shl - local.get $16 + local.get $2 i32.add i32.load - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.const 255 i32.gt_u select @@ -62666,8 +62637,8 @@ br $for-loop|090 end end - local.get $12 - local.get $14 + local.get $6 + local.get $4 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int16Array> i32.const 10 @@ -62675,12 +62646,12 @@ i32.const 63 i32.const 15312 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $12 - local.get $1 + local.get $6 + local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> i32.const 0 local.set $1 @@ -62702,17 +62673,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 2 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $16 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $16 + local.get $2 i32.const 0 i32.const 3 call $~lib/typedarray/Int8Array#__set @@ -62744,9 +62715,9 @@ i32.const 15344 i32.store end - local.get $16 + local.get $2 i32.load offset=4 - local.get $16 + local.get $2 i32.load offset=8 local.get $1 call $~lib/util/sort/SORT @@ -62754,21 +62725,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.store offset=4 - local.get $16 + local.get $2 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 1 i32.ne br_if $folding-inner31 - local.get $16 + local.get $2 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 2 i32.ne br_if $folding-inner32 - local.get $16 + local.get $2 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 3 @@ -62777,25 +62748,25 @@ global.get $~lib/memory/__stack_pointer i32.const 15376 i32.store offset=8 - local.get $16 + local.get $2 i32.load offset=4 - local.get $16 + local.get $2 i32.load offset=8 i32.const 15376 call $~lib/util/sort/SORT - local.get $16 + local.get $2 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 3 i32.ne br_if $folding-inner34 - local.get $16 + local.get $2 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 2 i32.ne br_if $folding-inner35 - local.get $16 + local.get $2 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 1 @@ -62825,17 +62796,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 2 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $16 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $16 + local.get $2 i32.const 0 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -62867,9 +62838,9 @@ i32.const 15408 i32.store end - local.get $16 + local.get $2 i32.load offset=4 - local.get $16 + local.get $2 i32.load offset=8 local.get $1 call $~lib/util/sort/SORT @@ -62877,21 +62848,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.store offset=4 - local.get $16 + local.get $2 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 1 i32.ne br_if $folding-inner31 - local.get $16 + local.get $2 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 2 i32.ne br_if $folding-inner32 - local.get $16 + local.get $2 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 3 @@ -62900,25 +62871,25 @@ global.get $~lib/memory/__stack_pointer i32.const 15440 i32.store offset=8 - local.get $16 + local.get $2 i32.load offset=4 - local.get $16 + local.get $2 i32.load offset=8 i32.const 15440 call $~lib/util/sort/SORT - local.get $16 + local.get $2 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 3 i32.ne br_if $folding-inner34 - local.get $16 + local.get $2 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 2 i32.ne br_if $folding-inner35 - local.get $16 + local.get $2 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 1 @@ -62948,17 +62919,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 2 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $16 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $16 + local.get $2 i32.const 0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -62990,9 +62961,9 @@ i32.const 15472 i32.store end - local.get $16 + local.get $2 i32.load offset=4 - local.get $16 + local.get $2 i32.load offset=8 local.get $1 call $~lib/util/sort/SORT @@ -63000,21 +62971,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.store offset=4 - local.get $16 + local.get $2 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 1 i32.ne br_if $folding-inner31 - local.get $16 + local.get $2 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 2 i32.ne br_if $folding-inner32 - local.get $16 + local.get $2 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 3 @@ -63023,25 +62994,25 @@ global.get $~lib/memory/__stack_pointer i32.const 15504 i32.store offset=8 - local.get $16 + local.get $2 i32.load offset=4 - local.get $16 + local.get $2 i32.load offset=8 i32.const 15504 call $~lib/util/sort/SORT - local.get $16 + local.get $2 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 3 i32.ne br_if $folding-inner34 - local.get $16 + local.get $2 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 2 i32.ne br_if $folding-inner35 - local.get $16 + local.get $2 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 1 @@ -63071,17 +63042,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 2 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $16 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $16 + local.get $2 i32.const 0 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -63113,9 +63084,9 @@ i32.const 15536 i32.store end - local.get $16 + local.get $2 i32.load offset=4 - local.get $16 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -63125,21 +63096,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.store offset=4 - local.get $16 + local.get $2 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 1 i32.ne br_if $folding-inner31 - local.get $16 + local.get $2 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 2 i32.ne br_if $folding-inner32 - local.get $16 + local.get $2 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 3 @@ -63148,27 +63119,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15568 i32.store offset=8 - local.get $16 + local.get $2 i32.load offset=4 - local.get $16 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u i32.const 15568 call $~lib/util/sort/SORT - local.get $16 + local.get $2 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 3 i32.ne br_if $folding-inner34 - local.get $16 + local.get $2 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 2 i32.ne br_if $folding-inner35 - local.get $16 + local.get $2 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 1 @@ -63198,17 +63169,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 2 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $16 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $16 + local.get $2 i32.const 0 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -63240,9 +63211,9 @@ i32.const 15600 i32.store end - local.get $16 + local.get $2 i32.load offset=4 - local.get $16 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -63252,21 +63223,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.store offset=4 - local.get $16 + local.get $2 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 1 i32.ne br_if $folding-inner31 - local.get $16 + local.get $2 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 2 i32.ne br_if $folding-inner32 - local.get $16 + local.get $2 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 3 @@ -63275,27 +63246,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15632 i32.store offset=8 - local.get $16 + local.get $2 i32.load offset=4 - local.get $16 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u i32.const 15632 call $~lib/util/sort/SORT - local.get $16 + local.get $2 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 3 i32.ne br_if $folding-inner34 - local.get $16 + local.get $2 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 2 i32.ne br_if $folding-inner35 - local.get $16 + local.get $2 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 1 @@ -63325,17 +63296,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 2 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $16 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $16 + local.get $2 i32.const 0 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -63367,9 +63338,9 @@ i32.const 15664 i32.store end - local.get $16 + local.get $2 i32.load offset=4 - local.get $16 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -63379,21 +63350,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.store offset=4 - local.get $16 + local.get $2 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 1 i32.ne br_if $folding-inner31 - local.get $16 + local.get $2 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 2 i32.ne br_if $folding-inner32 - local.get $16 + local.get $2 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 3 @@ -63402,27 +63373,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15696 i32.store offset=8 - local.get $16 + local.get $2 i32.load offset=4 - local.get $16 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u i32.const 15696 call $~lib/util/sort/SORT - local.get $16 + local.get $2 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 3 i32.ne br_if $folding-inner34 - local.get $16 + local.get $2 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 2 i32.ne br_if $folding-inner35 - local.get $16 + local.get $2 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 1 @@ -63452,17 +63423,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 2 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $16 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $16 + local.get $2 i32.const 0 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -63494,9 +63465,9 @@ i32.const 15728 i32.store end - local.get $16 + local.get $2 i32.load offset=4 - local.get $16 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -63506,21 +63477,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.store offset=4 - local.get $16 + local.get $2 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 1 i32.ne br_if $folding-inner31 - local.get $16 + local.get $2 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 2 i32.ne br_if $folding-inner32 - local.get $16 + local.get $2 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 3 @@ -63529,27 +63500,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15760 i32.store offset=8 - local.get $16 + local.get $2 i32.load offset=4 - local.get $16 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u i32.const 15760 call $~lib/util/sort/SORT - local.get $16 + local.get $2 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 3 i32.ne br_if $folding-inner34 - local.get $16 + local.get $2 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 2 i32.ne br_if $folding-inner35 - local.get $16 + local.get $2 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 1 @@ -63579,17 +63550,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 2 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $16 + local.get $2 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $16 + local.get $2 i32.const 0 i64.const 3 call $~lib/typedarray/Int64Array#__set @@ -63621,9 +63592,9 @@ i32.const 15792 i32.store end - local.get $16 + local.get $2 i32.load offset=4 - local.get $16 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -63633,21 +63604,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.store offset=4 - local.get $16 + local.get $2 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 1 i64.ne br_if $folding-inner31 - local.get $16 + local.get $2 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 2 i64.ne br_if $folding-inner32 - local.get $16 + local.get $2 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 3 @@ -63656,27 +63627,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15824 i32.store offset=8 - local.get $16 + local.get $2 i32.load offset=4 - local.get $16 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u i32.const 15824 call $~lib/util/sort/SORT - local.get $16 + local.get $2 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 3 i64.ne br_if $folding-inner34 - local.get $16 + local.get $2 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 2 i64.ne br_if $folding-inner35 - local.get $16 + local.get $2 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 1 @@ -63706,17 +63677,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 2 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $16 + local.get $2 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $16 + local.get $2 i32.const 0 i64.const 3 call $~lib/typedarray/Uint64Array#__set @@ -63748,9 +63719,9 @@ i32.const 15856 i32.store end - local.get $16 + local.get $2 i32.load offset=4 - local.get $16 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -63760,21 +63731,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.store offset=4 - local.get $16 + local.get $2 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 1 i64.ne br_if $folding-inner31 - local.get $16 + local.get $2 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 2 i64.ne br_if $folding-inner32 - local.get $16 + local.get $2 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 3 @@ -63783,27 +63754,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15888 i32.store offset=8 - local.get $16 + local.get $2 i32.load offset=4 - local.get $16 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u i32.const 15888 call $~lib/util/sort/SORT - local.get $16 + local.get $2 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 3 i64.ne br_if $folding-inner34 - local.get $16 + local.get $2 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 2 i64.ne br_if $folding-inner35 - local.get $16 + local.get $2 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 1 @@ -63833,17 +63804,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $16 + local.tee $2 i32.store - local.get $16 + local.get $2 i32.const 2 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $16 + local.get $2 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $16 + local.get $2 i32.const 0 f32.const 3 call $~lib/typedarray/Float32Array#__set @@ -63875,9 +63846,9 @@ i32.const 15920 i32.store end - local.get $16 + local.get $2 i32.load offset=4 - local.get $16 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -63887,21 +63858,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $16 + local.get $2 i32.store offset=4 - local.get $16 + local.get $2 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 1 f32.ne br_if $folding-inner31 - local.get $16 + local.get $2 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 2 f32.ne br_if $folding-inner32 - local.get $16 + local.get $2 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 3 @@ -63910,27 +63881,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15952 i32.store offset=8 - local.get $16 + local.get $2 i32.load offset=4 - local.get $16 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u i32.const 15952 call $~lib/util/sort/SORT - local.get $16 + local.get $2 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 3 f32.ne br_if $folding-inner34 - local.get $16 + local.get $2 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 2 f32.ne br_if $folding-inner35 - local.get $16 + local.get $2 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 1 @@ -63949,49 +63920,49 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 2 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 0 f64.const 3 call $~lib/typedarray/Float64Array#__set i32.const 0 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 call $~lib/typedarray/Float64Array#sort@varargs - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 1 f64.ne br_if $folding-inner31 - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 2 f64.ne br_if $folding-inner32 - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 3 @@ -64000,27 +63971,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15984 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u i32.const 15984 call $~lib/util/sort/SORT - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 3 f64.ne br_if $folding-inner34 - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 2 f64.ne br_if $folding-inner35 - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 1 diff --git a/tests/compiler/std/uri.optimized.wat b/tests/compiler/std/uri.optimized.wat index 454060e11b..0189ba6c25 100644 --- a/tests/compiler/std/uri.optimized.wat +++ b/tests/compiler/std/uri.optimized.wat @@ -468,7 +468,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -479,7 +479,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -499,37 +499,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -545,7 +545,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -555,20 +555,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -596,7 +596,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -1930,17 +1930,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -2119,39 +2119,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2159,35 +2154,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2195,55 +2186,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -2264,59 +2249,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -2333,7 +2311,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -2344,11 +2322,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -2362,17 +2340,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -2632,21 +2610,21 @@ local.get $1 i32.const 1 i32.shl - local.tee $8 + local.tee $9 i32.const 1 call $~lib/rt/itcms/__new local.set $3 loop $while-continue|0 local.get $1 - local.get $6 + local.get $7 i32.gt_u if block $while-break|0 - local.get $6 + local.get $7 local.set $5 loop $do-loop|1 block $do-break|1 - local.get $6 + local.get $7 i32.const 1 i32.shl local.get $0 @@ -2666,58 +2644,58 @@ i32.load8_u br_if $do-break|1 local.get $1 - local.get $6 + local.get $7 i32.const 1 i32.add - local.tee $6 + local.tee $7 i32.gt_u br_if $do-loop|1 end end local.get $5 - local.get $6 + local.get $7 i32.lt_u if - local.get $8 local.get $9 local.get $6 + local.get $7 local.get $5 i32.sub i32.const 1 i32.shl - local.tee $7 + local.tee $8 i32.add i32.lt_u if local.get $3 - local.get $7 - local.get $9 + local.get $6 + local.get $8 i32.add - local.tee $8 + local.tee $9 call $~lib/rt/itcms/__renew local.set $3 end local.get $3 - local.get $9 + local.get $6 i32.add local.get $5 i32.const 1 i32.shl local.get $0 i32.add - local.get $7 + local.get $8 call $~lib/memory/memory.copy - local.get $7 - local.get $9 + local.get $6 + local.get $8 i32.add - local.set $9 + local.set $6 local.get $1 - local.get $6 + local.get $7 i32.le_u br_if $while-break|0 end - local.get $8 local.get $9 + local.get $6 i32.const 6 i32.const 24 local.get $4 @@ -2744,7 +2722,7 @@ i32.le_u if (result i32) local.get $1 - local.get $6 + local.get $7 i32.le_u if i32.const 1584 @@ -2754,10 +2732,10 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $7 i32.const 1 i32.add - local.tee $6 + local.tee $7 i32.const 1 i32.shl local.get $0 @@ -2811,7 +2789,7 @@ i32.const 1 i32.gt_u select - local.tee $8 + local.tee $9 call $~lib/rt/itcms/__renew local.set $3 end @@ -2820,7 +2798,7 @@ i32.lt_u if (result i32) local.get $3 - local.get $9 + local.get $6 i32.add local.tee $5 i32.const 37 @@ -2844,7 +2822,7 @@ i32.shl i32.or i32.store offset=2 - local.get $9 + local.get $6 i32.const 6 i32.add else @@ -2854,7 +2832,7 @@ i32.lt_u if (result i32) local.get $3 - local.get $9 + local.get $6 i32.add local.tee $5 i32.const 37 @@ -2883,7 +2861,7 @@ i32.shl i32.or i32.store offset=2 - local.get $9 + local.get $6 i32.const 6 i32.add else @@ -2893,7 +2871,7 @@ i32.lt_u if local.get $3 - local.get $9 + local.get $6 i32.add local.tee $5 i32.const 37 @@ -2924,7 +2902,7 @@ i32.store offset=2 else local.get $3 - local.get $9 + local.get $6 i32.add local.tee $5 i32.const 37 @@ -2954,10 +2932,10 @@ i32.or i32.store offset=2 local.get $3 - local.get $9 + local.get $6 i32.const 6 i32.add - local.tee $9 + local.tee $6 i32.add local.tee $5 i32.const 37 @@ -2987,10 +2965,10 @@ i32.or i32.store offset=2 end - local.get $9 + local.get $6 i32.const 6 i32.add - local.tee $9 + local.tee $6 i32.add local.tee $5 i32.const 37 @@ -3019,11 +2997,11 @@ i32.shl i32.or i32.store offset=2 - local.get $9 + local.get $6 i32.const 6 i32.add end - local.tee $9 + local.tee $6 i32.add local.tee $5 i32.const 37 @@ -3050,25 +3028,25 @@ i32.shl i32.or i32.store offset=2 - local.get $9 + local.get $6 i32.const 6 i32.add end - local.set $9 - local.get $6 + local.set $6 + local.get $7 i32.const 1 i32.add - local.set $6 + local.set $7 br $while-continue|0 end end end - local.get $8 + local.get $6 local.get $9 - i32.gt_u + i32.lt_u if (result i32) local.get $3 - local.get $9 + local.get $6 call $~lib/rt/itcms/__renew else local.get $3 @@ -3100,7 +3078,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -3114,7 +3092,7 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) local.get $0 - local.tee $3 + local.tee $2 i32.const 7 i32.and local.get $1 @@ -3122,7 +3100,7 @@ i32.and i32.or i32.const 1 - local.get $2 + local.get $3 local.tee $0 i32.const 4 i32.ge_u @@ -3130,16 +3108,16 @@ i32.eqz if loop $do-loop|0 - local.get $3 + local.get $2 i64.load local.get $1 i64.load i64.eq if - local.get $3 + local.get $2 i32.const 8 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 8 i32.add @@ -3156,29 +3134,29 @@ end loop $while-continue|1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.sub local.set $0 - local.get $2 + local.get $3 if - local.get $3 + local.get $2 i32.load16_u local.tee $4 local.get $1 i32.load16_u - local.tee $2 + local.tee $3 i32.ne if local.get $4 - local.get $2 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add diff --git a/tests/compiler/super-inline.optimized.wat b/tests/compiler/super-inline.optimized.wat index 14a2fd512b..4732b92236 100644 --- a/tests/compiler/super-inline.optimized.wat +++ b/tests/compiler/super-inline.optimized.wat @@ -367,7 +367,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -378,7 +378,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -398,37 +398,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -444,7 +444,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -454,20 +454,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -495,7 +495,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/templateliteral.optimized.wat b/tests/compiler/templateliteral.optimized.wat index 239a3babf8..88967d9a2a 100644 --- a/tests/compiler/templateliteral.optimized.wat +++ b/tests/compiler/templateliteral.optimized.wat @@ -162,7 +162,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -176,7 +176,7 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) local.get $0 - local.tee $3 + local.tee $2 i32.const 7 i32.and local.get $1 @@ -184,7 +184,7 @@ i32.and i32.or i32.const 1 - local.get $2 + local.get $3 local.tee $0 i32.const 4 i32.ge_u @@ -192,16 +192,16 @@ i32.eqz if loop $do-loop|0 - local.get $3 + local.get $2 i64.load local.get $1 i64.load i64.eq if - local.get $3 + local.get $2 i32.const 8 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 8 i32.add @@ -218,29 +218,29 @@ end loop $while-continue|1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.sub local.set $0 - local.get $2 + local.get $3 if - local.get $3 + local.get $2 i32.load16_u local.tee $4 local.get $1 i32.load16_u - local.tee $2 + local.tee $3 i32.ne if local.get $4 - local.get $2 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add @@ -704,7 +704,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -715,7 +715,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -735,37 +735,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -781,7 +781,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -791,20 +791,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -832,7 +832,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -2166,17 +2166,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -2355,39 +2355,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2395,35 +2390,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2431,55 +2422,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -2500,59 +2485,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -2569,7 +2547,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -2580,11 +2558,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -2598,17 +2576,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -2878,19 +2856,19 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1184 - local.set $2 + local.set $1 br $__inlined_func$~lib/util/string/joinStringArray end local.get $5 i32.eqz if global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 local.get $0 i32.load local.tee $0 i32.store - local.get $2 + local.get $1 i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -2898,7 +2876,7 @@ i32.const 1184 local.get $0 select - local.set $2 + local.set $1 br $__inlined_func$~lib/util/string/joinStringArray end loop $for-loop|0 @@ -2923,9 +2901,9 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.get $2 + local.get $1 i32.add - local.set $2 + local.set $1 end local.get $3 i32.const 1 @@ -2942,13 +2920,13 @@ i32.shr_u local.tee $4 i32.mul - local.get $2 + local.get $1 i32.add i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store offset=8 i32.const 0 local.set $3 @@ -2968,10 +2946,10 @@ i32.store offset=4 local.get $6 if - local.get $1 + local.get $2 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.add local.get $6 local.get $6 @@ -2984,27 +2962,27 @@ i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $1 + local.get $2 local.get $6 i32.add - local.set $1 + local.set $2 end local.get $4 if - local.get $1 + local.get $2 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.add i32.const 1184 local.get $4 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $1 + local.get $2 local.get $4 i32.add - local.set $1 + local.set $2 end local.get $3 i32.const 1 @@ -3024,10 +3002,10 @@ i32.store offset=4 local.get $0 if - local.get $1 + local.get $2 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.add local.get $0 local.get $0 @@ -3045,7 +3023,7 @@ i32.add global.set $~lib/memory/__stack_pointer end - local.get $2 + local.get $1 ) (func $~lib/util/number/utoa32_dec_lut (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -3843,82 +3821,82 @@ i32.const 101 i32.store16 offset=2 local.get $0 - local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $1 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $0 + local.get $1 i32.sub - local.set $0 + local.set $1 end - local.get $0 + local.get $1 + local.tee $4 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $4 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $4 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $4 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $4 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $4 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $4 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $4 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $4 i32.const 100000000 i32.ge_u i32.add end end local.set $4 - local.get $0 + local.get $1 local.get $4 i32.const 1 i32.add - local.tee $0 + local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $0 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.add else @@ -3941,86 +3919,87 @@ local.get $0 local.get $2 i32.add - local.tee $2 + local.tee $0 i32.const 101 i32.store16 offset=2 - local.get $2 + local.get $0 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $2 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $0 + local.get $2 i32.sub - local.set $0 + local.set $2 end - local.get $0 + local.get $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $5 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $5 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $5 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $5 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $5 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $5 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $5 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $5 i32.const 100000000 i32.ge_u i32.add end end local.set $5 - local.get $0 + local.get $2 local.get $5 i32.const 1 i32.add - local.tee $0 + local.tee $2 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $0 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 - local.get $0 local.get $1 + local.get $2 i32.add i32.const 2 i32.add @@ -5252,18 +5231,19 @@ return end local.get $0 + local.tee $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 - local.get $0 i32.add - local.set $1 + local.set $0 loop $while-continue|0 local.get $0 local.get $1 - i32.lt_u + i32.gt_u if - local.get $0 + local.get $1 i32.load local.tee $2 if @@ -5273,10 +5253,10 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $0 + local.get $1 i32.const 4 i32.add - local.set $0 + local.set $1 br $while-continue|0 end end diff --git a/tests/compiler/throw.optimized.wat b/tests/compiler/throw.optimized.wat index 292026c7c7..2053a68bb4 100644 --- a/tests/compiler/throw.optimized.wat +++ b/tests/compiler/throw.optimized.wat @@ -357,7 +357,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -368,7 +368,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -388,37 +388,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -434,7 +434,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -444,20 +444,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -485,7 +485,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -771,7 +771,7 @@ memory.size i32.const 16 i32.shl - local.tee $1 + local.tee $0 i32.const 19716 i32.lt_u if @@ -782,14 +782,14 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const -16 i32.and i32.const 19712 i32.load - local.tee $1 + local.tee $0 if (result i32) - local.get $1 + local.get $0 i32.const 4 i32.add i32.const 19724 @@ -802,11 +802,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 19708 i32.eq if (result i32) - local.get $1 + local.get $0 i32.load local.set $2 i32.const 19708 @@ -1148,17 +1148,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18140 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1172,9 +1173,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1184,15 +1185,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end diff --git a/tests/compiler/typeof.optimized.wat b/tests/compiler/typeof.optimized.wat index e162ff25af..a51412cdb1 100644 --- a/tests/compiler/typeof.optimized.wat +++ b/tests/compiler/typeof.optimized.wat @@ -80,7 +80,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -94,7 +94,7 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) local.get $0 - local.tee $3 + local.tee $2 i32.const 7 i32.and local.get $1 @@ -102,7 +102,7 @@ i32.and i32.or i32.const 1 - local.get $2 + local.get $3 local.tee $0 i32.const 4 i32.ge_u @@ -110,16 +110,16 @@ i32.eqz if loop $do-loop|0 - local.get $3 + local.get $2 i64.load local.get $1 i64.load i64.eq if - local.get $3 + local.get $2 i32.const 8 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 8 i32.add @@ -136,29 +136,29 @@ end loop $while-continue|1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.sub local.set $0 - local.get $2 + local.get $3 if - local.get $3 + local.get $2 i32.load16_u local.tee $4 local.get $1 i32.load16_u - local.tee $2 + local.tee $3 i32.ne if local.get $4 - local.get $2 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add @@ -495,7 +495,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -506,7 +506,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -526,37 +526,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -572,7 +572,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -582,20 +582,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -623,7 +623,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 diff --git a/tests/compiler/wasi/seed.optimized.wat b/tests/compiler/wasi/seed.optimized.wat index 565b838600..1dd4b8acc5 100644 --- a/tests/compiler/wasi/seed.optimized.wat +++ b/tests/compiler/wasi/seed.optimized.wat @@ -40,15 +40,15 @@ i64.xor i64.const -49064778989728563 i64.mul - local.tee $2 - local.get $2 + local.tee $0 + local.get $0 i64.const 33 i64.shr_u i64.xor i64.const -4265267296055464877 i64.mul - local.tee $2 - local.get $2 + local.tee $0 + local.get $0 i64.const 33 i64.shr_u i64.xor @@ -56,22 +56,22 @@ global.get $~lib/math/random_state0_64 i64.const -1 i64.xor - local.tee $2 - local.get $2 + local.tee $0 + local.get $0 i64.const 33 i64.shr_u i64.xor i64.const -49064778989728563 i64.mul - local.tee $2 - local.get $2 + local.tee $0 + local.get $0 i64.const 33 i64.shr_u i64.xor i64.const -4265267296055464877 i64.mul - local.tee $2 - local.get $2 + local.tee $0 + local.get $0 i64.const 33 i64.shr_u i64.xor diff --git a/tests/compiler/wasi/trace.optimized.wat b/tests/compiler/wasi/trace.optimized.wat index a69bc387dc..68d9959d02 100644 --- a/tests/compiler/wasi/trace.optimized.wat +++ b/tests/compiler/wasi/trace.optimized.wat @@ -252,13 +252,13 @@ else i32.const 19 end - local.tee $4 + local.tee $0 i32.const 544106784 i32.store - local.get $4 + local.get $0 i32.const 4 i32.add - local.set $4 + local.set $0 local.get $1 if local.get $1 @@ -267,18 +267,18 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.set $0 + local.set $4 i32.const 3 global.set $~argumentsLength local.get $1 - local.get $0 local.get $4 + local.get $0 call $~lib/string/String.UTF8.encodeUnsafe@varargs - local.get $4 + local.get $0 i32.add - local.set $4 + local.set $0 end - local.get $4 + local.get $0 i32.const 40 i32.store8 local.get $2 @@ -327,17 +327,17 @@ i32.add end end - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 1 i32.add i32.add - local.set $4 + local.set $0 loop $do-loop|0 - local.get $4 + local.get $0 i32.const 1 i32.sub - local.tee $4 + local.tee $0 local.get $2 i32.const 10 i32.rem_u @@ -351,7 +351,7 @@ br_if $do-loop|0 end local.get $0 - local.get $4 + local.get $1 i32.add local.tee $0 i32.const 58 @@ -407,12 +407,12 @@ i32.const 1 i32.add i32.add - local.set $4 + local.set $0 loop $do-loop|1 - local.get $4 + local.get $0 i32.const 1 i32.sub - local.tee $4 + local.tee $0 local.get $3 i32.const 10 i32.rem_u @@ -425,8 +425,8 @@ local.tee $3 br_if $do-loop|1 end + local.get $0 local.get $1 - local.get $4 i32.add local.tee $0 i32.const 2601 @@ -714,7 +714,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -725,7 +725,7 @@ call $~lib/wasi/index/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -745,37 +745,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -791,7 +791,7 @@ call $~lib/wasi/index/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -801,20 +801,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -842,7 +842,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -1860,17 +1860,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 local.get $2 @@ -2049,39 +2049,34 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2089,35 +2084,31 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 @@ -2125,55 +2116,49 @@ i32.load8_u i32.store8 local.get $3 - local.tee $1 i32.const 2 i32.add - local.set $3 + local.set $0 local.get $4 - local.tee $0 i32.const 2 i32.add - local.set $4 - local.get $1 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 + local.set $1 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 8 @@ -2194,59 +2179,52 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $4 - local.tee $0 + local.get $0 i32.const 2 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $3 local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $4 + i32.const 2 + i32.add + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $0 i32.const 2 i32.add local.set $3 - local.get $4 - local.tee $0 + local.get $1 i32.const 2 i32.add - local.set $5 - local.get $1 + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 - local.get $5 + local.get $4 i32.load8_u i32.store8 local.get $3 - local.tee $4 i32.const 2 i32.add local.set $0 - local.get $5 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $4 + i32.const 2 + i32.add + local.set $1 end local.get $2 i32.const 4 @@ -2263,7 +2241,7 @@ local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 local.get $1 i32.const 2 i32.add @@ -2274,11 +2252,11 @@ i32.const 2 i32.add local.set $1 - local.get $4 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $0 i32.const 2 i32.add local.set $0 @@ -2292,17 +2270,17 @@ i32.load8_u i32.store8 local.get $0 - local.tee $4 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $4 i32.const 2 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 end @@ -2758,82 +2736,82 @@ i32.const 101 i32.store16 offset=2 local.get $0 - local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $1 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $0 + local.get $1 i32.sub - local.set $0 + local.set $1 end - local.get $0 + local.get $1 + local.tee $4 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $4 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $4 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $4 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $4 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $4 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $4 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $4 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $4 i32.const 100000000 i32.ge_u i32.add end end local.set $4 - local.get $0 + local.get $1 local.get $4 i32.const 1 i32.add - local.tee $0 + local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $0 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.add else @@ -2856,86 +2834,87 @@ local.get $0 local.get $2 i32.add - local.tee $2 + local.tee $0 i32.const 101 i32.store16 offset=2 - local.get $2 + local.get $0 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $2 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $0 + local.get $2 i32.sub - local.set $0 + local.set $2 end - local.get $0 + local.get $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $5 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $5 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $5 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $5 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $5 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $5 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $5 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $5 i32.const 100000000 i32.ge_u i32.add end end local.set $5 - local.get $0 + local.get $2 local.get $5 i32.const 1 i32.add - local.tee $0 + local.tee $2 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $0 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 - local.get $0 local.get $1 + local.get $2 i32.add i32.const 2 i32.add @@ -3318,23 +3297,23 @@ if local.get $6 i32.load16_u - local.tee $7 + local.tee $9 i32.const 128 i32.lt_u if (result i32) - local.get $9 + local.get $7 i32.const 1 i32.add else - local.get $7 + local.get $9 i32.const 2048 i32.lt_u if (result i32) - local.get $9 + local.get $7 i32.const 2 i32.add else - local.get $7 + local.get $9 i32.const 64512 i32.and i32.const 55296 @@ -3353,10 +3332,10 @@ i32.const 56320 i32.eq if - local.get $9 + local.get $7 i32.const 4 i32.add - local.set $9 + local.set $7 local.get $6 i32.const 4 i32.add @@ -3364,12 +3343,12 @@ br $while-continue|0 end end - local.get $9 + local.get $7 i32.const 3 i32.add end end - local.set $9 + local.set $7 local.get $6 i32.const 2 i32.add @@ -3377,15 +3356,15 @@ br $while-continue|0 end end - local.get $9 + local.get $7 i32.const 56 - local.get $9 + local.get $7 i32.const 56 i32.gt_s select i32.const 13 i32.add - local.set $7 + local.set $6 global.get $~lib/rt/tlsf/ROOT i32.eqz if @@ -3393,7 +3372,7 @@ end global.get $~lib/rt/tlsf/ROOT local.tee $9 - local.get $7 + local.get $6 i32.const 1073741820 i32.gt_u if @@ -3404,13 +3383,13 @@ call $~lib/wasi/index/abort unreachable end - local.get $7 + local.get $6 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $7 + local.get $6 i32.const 19 i32.add i32.const -16 @@ -3424,7 +3403,7 @@ i32.eqz if memory.size - local.tee $8 + local.tee $6 local.get $7 i32.const 536870910 i32.lt_u @@ -3445,7 +3424,7 @@ i32.const 4 local.get $9 i32.load offset=1568 - local.get $8 + local.get $6 i32.const 16 i32.shl i32.const 4 @@ -3459,16 +3438,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $6 + local.tee $8 local.get $6 local.get $8 - i32.lt_s + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $6 + local.get $8 memory.grow i32.const 0 i32.lt_s @@ -3477,7 +3456,7 @@ end end local.get $9 - local.get $8 + local.get $6 i32.const 16 i32.shl memory.size @@ -3517,7 +3496,7 @@ call $~lib/rt/tlsf/removeBlock local.get $6 i32.load - local.set $8 + local.set $10 local.get $7 i32.const 4 i32.add @@ -3531,17 +3510,17 @@ call $~lib/wasi/index/abort unreachable end - local.get $8 + local.get $10 i32.const -4 i32.and local.get $7 i32.sub - local.tee $10 + local.tee $8 i32.const 16 i32.ge_u if local.get $6 - local.get $8 + local.get $10 i32.const 2 i32.and local.get $7 @@ -3553,7 +3532,7 @@ i32.add i32.add local.tee $7 - local.get $10 + local.get $8 i32.const 4 i32.sub i32.const 1 @@ -3564,7 +3543,7 @@ call $~lib/rt/tlsf/insertBlock else local.get $6 - local.get $8 + local.get $10 i32.const -2 i32.and i32.store @@ -3586,24 +3565,24 @@ local.get $6 i32.const 4 i32.add - local.tee $9 + local.tee $7 i32.const 8 i32.add local.tee $8 i32.const 4 i32.add local.set $6 - local.get $9 + local.get $7 local.get $6 i32.store local.get $6 i64.const 9071406388179572 i64.store - local.get $9 + local.get $7 i32.const 7 i32.store offset=4 i32.const 2 - local.get $9 + local.get $7 i32.const 1 local.get $8 call $~lib/bindings/wasi_snapshot_preview1/fd_write @@ -3612,17 +3591,17 @@ i32.load i32.const 1 i32.shr_u - local.set $7 + local.set $9 i32.const 3 global.set $~argumentsLength - local.get $9 - i32.const 1056 local.get $7 + i32.const 1056 + local.get $9 local.get $6 call $~lib/string/String.UTF8.encodeUnsafe@varargs i32.store offset=4 i32.const 2 - local.get $9 + local.get $7 i32.const 1 local.get $8 call $~lib/bindings/wasi_snapshot_preview1/fd_write @@ -3635,22 +3614,22 @@ local.get $6 i32.const 1 i32.add - local.tee $7 + local.tee $6 local.get $1 call $~lib/util/number/dtoa_buffered - local.set $6 + local.set $9 i32.const 3 global.set $~argumentsLength - local.get $9 local.get $7 local.get $6 - local.get $7 + local.get $9 + local.get $6 call $~lib/string/String.UTF8.encodeUnsafe@varargs i32.const 1 i32.add i32.store offset=4 i32.const 2 - local.get $9 + local.get $7 i32.const 1 local.get $8 call $~lib/bindings/wasi_snapshot_preview1/fd_write @@ -3659,22 +3638,22 @@ i32.const 1 i32.gt_s if - local.get $7 + local.get $6 local.get $2 call $~lib/util/number/dtoa_buffered - local.set $6 + local.set $9 i32.const 3 global.set $~argumentsLength - local.get $9 local.get $7 local.get $6 - local.get $7 + local.get $9 + local.get $6 call $~lib/string/String.UTF8.encodeUnsafe@varargs i32.const 1 i32.add i32.store offset=4 i32.const 2 - local.get $9 + local.get $7 i32.const 1 local.get $8 call $~lib/bindings/wasi_snapshot_preview1/fd_write @@ -3683,22 +3662,22 @@ i32.const 2 i32.gt_s if - local.get $7 + local.get $6 local.get $3 call $~lib/util/number/dtoa_buffered - local.set $6 + local.set $9 i32.const 3 global.set $~argumentsLength - local.get $9 local.get $7 local.get $6 - local.get $7 + local.get $9 + local.get $6 call $~lib/string/String.UTF8.encodeUnsafe@varargs i32.const 1 i32.add i32.store offset=4 i32.const 2 - local.get $9 + local.get $7 i32.const 1 local.get $8 call $~lib/bindings/wasi_snapshot_preview1/fd_write @@ -3707,22 +3686,22 @@ i32.const 3 i32.gt_s if - local.get $7 + local.get $6 local.get $4 call $~lib/util/number/dtoa_buffered - local.set $6 + local.set $9 i32.const 3 global.set $~argumentsLength - local.get $9 local.get $7 local.get $6 - local.get $7 + local.get $9 + local.get $6 call $~lib/string/String.UTF8.encodeUnsafe@varargs i32.const 1 i32.add i32.store offset=4 i32.const 2 - local.get $9 + local.get $7 i32.const 1 local.get $8 call $~lib/bindings/wasi_snapshot_preview1/fd_write @@ -3731,22 +3710,22 @@ i32.const 4 i32.gt_s if - local.get $7 + local.get $6 local.get $5 call $~lib/util/number/dtoa_buffered local.set $0 i32.const 3 global.set $~argumentsLength - local.get $9 local.get $7 + local.get $6 local.get $0 - local.get $7 + local.get $6 call $~lib/string/String.UTF8.encodeUnsafe@varargs i32.const 1 i32.add i32.store offset=4 i32.const 2 - local.get $9 + local.get $7 i32.const 1 local.get $8 call $~lib/bindings/wasi_snapshot_preview1/fd_write @@ -3755,7 +3734,7 @@ end end end - local.get $7 + local.get $6 i32.const 1 i32.sub else @@ -3763,16 +3742,16 @@ end i32.const 10 i32.store8 - local.get $9 + local.get $7 i32.const 1 i32.store offset=4 i32.const 2 - local.get $9 + local.get $7 i32.const 1 local.get $8 call $~lib/bindings/wasi_snapshot_preview1/fd_write drop - local.get $9 + local.get $7 i32.const 19024 i32.ge_u if @@ -3782,20 +3761,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $9 + local.get $7 i32.const 4 i32.sub - local.set $0 - local.get $9 + local.set $6 + local.get $7 i32.const 15 i32.and i32.const 1 - local.get $9 + local.get $7 select if (result i32) i32.const 1 else - local.get $0 + local.get $6 i32.load i32.const 1 i32.and @@ -3808,13 +3787,13 @@ call $~lib/wasi/index/abort unreachable end - local.get $0 - local.get $0 + local.get $6 + local.get $6 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $6 call $~lib/rt/tlsf/insertBlock end ) diff --git a/tests/compiler/while.optimized.wat b/tests/compiler/while.optimized.wat index d6ce812e25..d1ff6fb472 100644 --- a/tests/compiler/while.optimized.wat +++ b/tests/compiler/while.optimized.wat @@ -349,7 +349,7 @@ local.get $3 i32.const -4 i32.and - local.tee $3 + local.tee $2 i32.const 12 i32.lt_u if @@ -360,7 +360,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add @@ -380,37 +380,37 @@ i32.sub local.get $1 i32.store - local.get $3 + local.get $2 i32.const 256 i32.lt_u if (result i32) - local.get $3 + local.get $2 i32.const 4 i32.shr_u else i32.const 31 - local.get $3 + local.get $2 i32.const 1073741820 - local.get $3 + local.get $2 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $2 i32.clz i32.sub - local.tee $4 + local.tee $3 i32.const 7 i32.sub local.set $5 + local.get $2 local.get $3 - local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor end - local.tee $3 + local.tee $2 i32.const 16 i32.lt_u local.get $5 @@ -426,7 +426,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -436,20 +436,20 @@ local.get $0 i32.add i32.load offset=96 - local.set $4 + local.set $3 local.get $1 i32.const 0 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 local.get $1 i32.store offset=4 end - local.get $3 + local.get $2 local.get $5 i32.const 4 i32.shl @@ -477,7 +477,7 @@ local.get $0 i32.load offset=4 i32.const 1 - local.get $3 + local.get $2 i32.shl i32.or i32.store offset=4 @@ -1314,10 +1314,10 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 call $while/Ref#constructor local.tee $0 i32.store @@ -1377,10 +1377,10 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 call $while/Ref#constructor local.tee $0 i32.store From 80cc26afb70ead710a01ebff113174833b779ae5 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Mon, 20 Sep 2021 12:14:41 +0300 Subject: [PATCH 12/54] add reorder-locals --- src/module.ts | 1 + tests/compiler/NonNullable.optimized.wat | 6 +- tests/compiler/builtins.optimized.wat | 6 +- tests/compiler/call-super.optimized.wat | 204 +- tests/compiler/class-implements.optimized.wat | 144 +- .../class-overloading-cast.optimized.wat | 150 +- .../compiler/class-overloading.optimized.wat | 150 +- tests/compiler/class.optimized.wat | 232 +- tests/compiler/constructor.optimized.wat | 204 +- tests/compiler/do.optimized.wat | 279 +- .../empty-exportruntime.optimized.wat | 180 +- tests/compiler/empty-new.optimized.wat | 130 +- tests/compiler/exports.optimized.wat | 144 +- .../exportstar-rereexport.optimized.wat | 150 +- .../extends-baseaggregate.optimized.wat | 328 +- .../compiler/extends-recursive.optimized.wat | 124 +- tests/compiler/features/simd.optimized.wat | 140 +- .../field-initialization.optimized.wat | 398 +- tests/compiler/field.optimized.wat | 556 +- tests/compiler/for.optimized.wat | 150 +- tests/compiler/function-call.optimized.wat | 150 +- .../function-expression.optimized.wat | 162 +- tests/compiler/getter-call.optimized.wat | 150 +- tests/compiler/heap.optimized.wat | 288 +- .../implicit-getter-setter.optimized.wat | 120 +- tests/compiler/infer-array.optimized.wat | 438 +- tests/compiler/infer-generic.optimized.wat | 170 +- tests/compiler/inlining.optimized.wat | 204 +- tests/compiler/instanceof-class.optimized.wat | 144 +- tests/compiler/issues/1095.optimized.wat | 246 +- tests/compiler/issues/1225.optimized.wat | 142 +- tests/compiler/issues/1699.optimized.wat | 368 +- tests/compiler/logical.optimized.wat | 150 +- tests/compiler/managed-cast.optimized.wat | 238 +- tests/compiler/memcpy.optimized.wat | 108 +- tests/compiler/new.optimized.wat | 144 +- tests/compiler/number.optimized.wat | 564 +- tests/compiler/object-literal.optimized.wat | 646 +- .../optional-typeparameters.optimized.wat | 144 +- tests/compiler/reexport.optimized.wat | 144 +- tests/compiler/rereexport.optimized.wat | 150 +- tests/compiler/resolve-access.optimized.wat | 545 +- tests/compiler/resolve-binary.optimized.wat | 470 +- .../resolve-elementaccess.optimized.wat | 634 +- .../resolve-function-expression.optimized.wat | 204 +- tests/compiler/resolve-nested.optimized.wat | 144 +- tests/compiler/resolve-new.optimized.wat | 150 +- .../resolve-propertyaccess.optimized.wat | 210 +- tests/compiler/resolve-ternary.optimized.wat | 478 +- tests/compiler/resolve-unary.optimized.wat | 230 +- tests/compiler/rt/finalize.optimized.wat | 150 +- tests/compiler/rt/instanceof.optimized.wat | 144 +- .../runtime-incremental-export.optimized.wat | 180 +- .../rt/runtime-minimal-export.optimized.wat | 186 +- .../rt/runtime-stub-export.optimized.wat | 24 +- tests/compiler/std-wasi/console.optimized.wat | 480 +- tests/compiler/std-wasi/crypto.optimized.wat | 540 +- tests/compiler/std-wasi/process.optimized.wat | 926 +- tests/compiler/std/array-access.optimized.wat | 34 +- .../compiler/std/array-literal.optimized.wat | 188 +- tests/compiler/std/array.optimized.wat | 4639 +++++----- tests/compiler/std/arraybuffer.optimized.wat | 444 +- tests/compiler/std/dataview.optimized.wat | 532 +- tests/compiler/std/date.optimized.wat | 1676 ++-- tests/compiler/std/map.optimized.wat | 4817 +++++----- tests/compiler/std/math.optimized.wat | 2989 +++--- tests/compiler/std/mod.optimized.wat | 150 +- tests/compiler/std/new.optimized.wat | 150 +- tests/compiler/std/object.optimized.wat | 6 +- .../std/operator-overloading.optimized.wat | 410 +- tests/compiler/std/pointer.optimized.wat | 354 +- tests/compiler/std/set.optimized.wat | 3114 +++---- tests/compiler/std/static-array.optimized.wat | 392 +- tests/compiler/std/staticarray.optimized.wat | 1000 +- .../std/string-casemapping.optimized.wat | 638 +- .../std/string-encoding.optimized.wat | 478 +- tests/compiler/std/string.optimized.wat | 2998 +++--- tests/compiler/std/symbol.optimized.wat | 581 +- tests/compiler/std/typedarray.optimized.wat | 8105 +++++++++-------- tests/compiler/std/uri.optimized.wat | 532 +- tests/compiler/super-inline.optimized.wat | 144 +- tests/compiler/templateliteral.optimized.wat | 704 +- tests/compiler/throw.optimized.wat | 56 +- tests/compiler/typeof.optimized.wat | 156 +- tests/compiler/wasi/abort.optimized.wat | 46 +- tests/compiler/wasi/seed.optimized.wat | 19 +- tests/compiler/wasi/trace.optimized.wat | 481 +- tests/compiler/while.optimized.wat | 268 +- 88 files changed, 25369 insertions(+), 24973 deletions(-) diff --git a/src/module.ts b/src/module.ts index b1bb1325a7..2c8d7d5116 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2395,6 +2395,7 @@ export class Module { passes.push("vacuum"); passes.push("ssa-nomerge"); + passes.push("reorder-locals"); passes.push("coalesce-locals"); } passes.push("remove-unused-brs"); diff --git a/tests/compiler/NonNullable.optimized.wat b/tests/compiler/NonNullable.optimized.wat index 7d8d404b30..3e45916c50 100644 --- a/tests/compiler/NonNullable.optimized.wat +++ b/tests/compiler/NonNullable.optimized.wat @@ -109,14 +109,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end diff --git a/tests/compiler/builtins.optimized.wat b/tests/compiler/builtins.optimized.wat index a699bb0ef9..d59379e408 100644 --- a/tests/compiler/builtins.optimized.wat +++ b/tests/compiler/builtins.optimized.wat @@ -165,14 +165,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end diff --git a/tests/compiler/call-super.optimized.wat b/tests/compiler/call-super.optimized.wat index 24cac8516c..61883a6b64 100644 --- a/tests/compiler/call-super.optimized.wat +++ b/tests/compiler/call-super.optimized.wat @@ -164,19 +164,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -201,9 +201,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -211,17 +211,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -509,10 +509,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -524,15 +524,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -562,7 +562,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -598,12 +598,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -621,11 +621,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17984 @@ -633,14 +633,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -650,17 +650,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1140,7 +1140,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1166,32 +1166,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $3 i32.add else - local.get $4 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1224,7 +1224,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1232,8 +1232,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1250,7 +1250,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $3 i32.lt_u if i32.const 0 @@ -1260,13 +1260,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1282,7 +1282,7 @@ local.get $5 i32.const -4 i32.and - local.get $4 + local.get $3 i32.sub local.tee $6 i32.const 16 @@ -1292,23 +1292,23 @@ local.get $5 i32.const 2 i32.and - local.get $4 + local.get $3 i32.or i32.store - local.get $4 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 + local.tee $3 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1338,26 +1338,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1372,7 +1372,7 @@ local.get $2 i32.const 20 i32.add - local.tee $2 + local.tee $3 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1384,7 +1384,7 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1399,12 +1399,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $3 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $2 i32.const 3 i32.sub i32.const 0 @@ -1416,7 +1416,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 0 @@ -1431,25 +1431,25 @@ i32.sub i32.const 3 i32.and - local.tee $3 + local.tee $2 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $3 + local.get $2 i32.sub i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.add - local.tee $3 + local.tee $0 i32.const 4 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1459,17 +1459,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $0 i32.const 12 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 8 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1485,22 +1485,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $3 + local.get $0 i32.const 28 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 24 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 20 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 16 i32.sub i32.const 0 @@ -1511,11 +1511,11 @@ i32.and i32.const 24 i32.add - local.tee $3 + local.tee $0 i32.add local.set $1 + local.get $2 local.get $0 - local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1547,7 +1547,7 @@ end end end - local.get $2 + local.get $3 ) (func $~lib/rt/__visit_members (param $0 i32) block $invalid @@ -2231,19 +2231,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -2253,22 +2253,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17980 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -2282,9 +2282,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -2294,23 +2294,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -2318,7 +2318,7 @@ else i32.const 1488 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1296 @@ -2328,7 +2328,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1492 @@ -2343,28 +2343,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/class-implements.optimized.wat b/tests/compiler/class-implements.optimized.wat index 7de51a98c0..8336410aae 100644 --- a/tests/compiler/class-implements.optimized.wat +++ b/tests/compiler/class-implements.optimized.wat @@ -192,19 +192,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -229,9 +229,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -239,17 +239,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -537,10 +537,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -552,15 +552,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -590,7 +590,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -626,12 +626,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -649,11 +649,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17952 @@ -661,14 +661,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -678,17 +678,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1161,17 +1161,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1180,19 +1180,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1218,26 +1218,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $0 + local.tee $2 i32.load offset=8 - local.set $2 + local.set $0 local.get $1 global.get $~lib/rt/itcms/white - local.get $0 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $2 + local.get $0 i32.store offset=8 - local.get $2 - local.get $2 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $0 + local.get $2 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1576,19 +1576,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1598,22 +1598,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17948 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1627,9 +1627,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1639,23 +1639,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1663,7 +1663,7 @@ else i32.const 1504 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1248 @@ -1673,7 +1673,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1508 @@ -1688,28 +1688,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/class-overloading-cast.optimized.wat b/tests/compiler/class-overloading-cast.optimized.wat index ae4f1b1bd2..50c46aece1 100644 --- a/tests/compiler/class-overloading-cast.optimized.wat +++ b/tests/compiler/class-overloading-cast.optimized.wat @@ -212,19 +212,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -249,9 +249,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -259,17 +259,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -557,10 +557,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -572,15 +572,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -610,7 +610,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -646,12 +646,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -669,11 +669,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 18096 @@ -681,14 +681,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -698,17 +698,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1181,17 +1181,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1200,19 +1200,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1238,26 +1238,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $0 + local.tee $2 i32.load offset=8 - local.set $2 + local.set $0 local.get $1 global.get $~lib/rt/itcms/white - local.get $0 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $2 + local.get $0 i32.store offset=8 - local.get $2 - local.get $2 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $0 + local.get $2 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1363,14 +1363,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -1874,19 +1874,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1896,22 +1896,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 18084 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1925,9 +1925,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1937,23 +1937,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1961,7 +1961,7 @@ else i32.const 1616 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1248 @@ -1971,7 +1971,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1620 @@ -1986,28 +1986,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/class-overloading.optimized.wat b/tests/compiler/class-overloading.optimized.wat index 493b78dc33..abc263d53d 100644 --- a/tests/compiler/class-overloading.optimized.wat +++ b/tests/compiler/class-overloading.optimized.wat @@ -242,19 +242,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -279,9 +279,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -289,17 +289,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -587,10 +587,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -602,15 +602,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -640,7 +640,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -676,12 +676,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -699,11 +699,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 18320 @@ -711,14 +711,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -728,17 +728,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1211,17 +1211,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1230,19 +1230,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1268,26 +1268,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $0 + local.tee $2 i32.load offset=8 - local.set $2 + local.set $0 local.get $1 global.get $~lib/rt/itcms/white - local.get $0 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $2 + local.get $0 i32.store offset=8 - local.get $2 - local.get $2 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $0 + local.get $2 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1393,14 +1393,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -3006,19 +3006,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -3028,22 +3028,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 18316 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -3057,9 +3057,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -3069,23 +3069,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -3093,7 +3093,7 @@ else i32.const 1792 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1280 @@ -3103,7 +3103,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1796 @@ -3118,28 +3118,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/class.optimized.wat b/tests/compiler/class.optimized.wat index 55b631b18a..4385aa5ac9 100644 --- a/tests/compiler/class.optimized.wat +++ b/tests/compiler/class.optimized.wat @@ -116,7 +116,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -139,7 +139,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -149,23 +149,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -173,7 +173,7 @@ else i32.const 1536 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1248 @@ -183,7 +183,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 1540 @@ -198,27 +198,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -306,19 +306,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -343,9 +343,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -353,17 +353,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -651,10 +651,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -666,15 +666,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -704,7 +704,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -740,12 +740,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -763,11 +763,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17984 @@ -775,14 +775,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -792,17 +792,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1280,14 +1280,14 @@ i32.sub i32.const -4 i32.and - local.tee $1 - i32.add local.tee $2 + i32.add + local.tee $1 i32.const 4 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1297,17 +1297,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 12 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1323,22 +1323,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $2 + local.get $1 i32.const 28 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 20 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 16 i32.sub i32.const 0 @@ -1349,11 +1349,11 @@ i32.and i32.const 24 i32.add - local.tee $2 + local.tee $1 i32.add local.set $0 - local.get $1 local.get $2 + local.get $1 i32.sub local.set $1 loop $while-continue|0 @@ -1458,7 +1458,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1484,32 +1484,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1525,16 +1525,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1542,7 +1542,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1550,8 +1550,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1568,7 +1568,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1578,13 +1578,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1597,40 +1597,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -1656,26 +1656,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1737,82 +1737,82 @@ i32.const 16 i32.const 5 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $0 i32.store - local.get $3 + local.get $0 i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 0 i32.store offset=4 - local.get $3 + local.get $0 i32.const 0 i32.store offset=8 - local.get $3 + local.get $0 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 32 i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $1 i32.store offset=4 - local.get $4 + local.get $1 i32.const 32 call $~lib/memory/memory.fill - local.get $3 - local.get $4 + local.get $0 + local.get $1 i32.store - local.get $4 + local.get $1 if - local.get $3 + local.get $0 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white - local.get $4 + local.get $1 i32.const 20 i32.sub - local.tee $1 + local.tee $3 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $3 + local.get $0 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $4 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $1 + local.get $3 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $4 i32.const 3 i32.eq i32.and if - local.get $1 + local.get $3 call $~lib/rt/itcms/Object#makeGray end end end end - local.get $3 - local.get $4 + local.get $0 + local.get $1 i32.store offset=4 - local.get $3 + local.get $0 i32.const 32 i32.store offset=8 - local.get $3 + local.get $0 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -1820,15 +1820,15 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $3 + local.get $0 i32.store - local.get $3 + local.get $0 if local.get $2 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white - local.get $3 + local.get $0 i32.const 20 i32.sub local.tee $0 diff --git a/tests/compiler/constructor.optimized.wat b/tests/compiler/constructor.optimized.wat index b622a2ee03..8d968b13a4 100644 --- a/tests/compiler/constructor.optimized.wat +++ b/tests/compiler/constructor.optimized.wat @@ -274,19 +274,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -311,9 +311,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -321,17 +321,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -619,10 +619,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -634,15 +634,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -672,7 +672,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -708,12 +708,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -731,11 +731,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 18000 @@ -743,14 +743,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -760,17 +760,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1250,7 +1250,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1276,32 +1276,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $3 i32.add else - local.get $4 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1334,7 +1334,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1342,8 +1342,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1360,7 +1360,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $3 i32.lt_u if i32.const 0 @@ -1370,13 +1370,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1392,7 +1392,7 @@ local.get $5 i32.const -4 i32.and - local.get $4 + local.get $3 i32.sub local.tee $6 i32.const 16 @@ -1402,23 +1402,23 @@ local.get $5 i32.const 2 i32.and - local.get $4 + local.get $3 i32.or i32.store - local.get $4 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 + local.tee $3 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1448,26 +1448,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1482,7 +1482,7 @@ local.get $2 i32.const 20 i32.add - local.tee $2 + local.tee $3 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1494,7 +1494,7 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1509,12 +1509,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $3 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $2 i32.const 3 i32.sub i32.const 0 @@ -1526,7 +1526,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 0 @@ -1541,25 +1541,25 @@ i32.sub i32.const 3 i32.and - local.tee $3 + local.tee $2 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $3 + local.get $2 i32.sub i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.add - local.tee $3 + local.tee $0 i32.const 4 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1569,17 +1569,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $0 i32.const 12 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 8 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1595,22 +1595,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $3 + local.get $0 i32.const 28 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 24 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 20 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 16 i32.sub i32.const 0 @@ -1621,11 +1621,11 @@ i32.and i32.const 24 i32.add - local.tee $3 + local.tee $0 i32.add local.set $1 + local.get $2 local.get $0 - local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1657,7 +1657,7 @@ end end end - local.get $2 + local.get $3 ) (func $start:constructor (local $0 i32) @@ -2120,19 +2120,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -2142,22 +2142,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17988 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -2171,9 +2171,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -2183,23 +2183,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -2207,7 +2207,7 @@ else i32.const 1488 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1248 @@ -2217,7 +2217,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1492 @@ -2232,28 +2232,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/do.optimized.wat b/tests/compiler/do.optimized.wat index 739e5cc2c2..2615511e5b 100644 --- a/tests/compiler/do.optimized.wat +++ b/tests/compiler/do.optimized.wat @@ -164,19 +164,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -201,9 +201,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -211,17 +211,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -509,10 +509,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -524,15 +524,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -562,7 +562,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -598,12 +598,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -621,11 +621,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17904 @@ -633,14 +633,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -650,17 +650,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1001,20 +1001,21 @@ (local $0 i32) (local $1 i32) (local $2 i32) + (local $3 i32) i32.const 10 - local.set $0 + local.set $1 loop $do-loop|0 - local.get $1 + local.get $3 i32.const 1 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 1 i32.sub - local.tee $0 + local.tee $1 br_if $do-loop|0 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1056 @@ -1023,7 +1024,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 i32.const 10 i32.ne if @@ -1035,17 +1036,17 @@ unreachable end i32.const 10 - local.set $0 + local.set $1 loop $do-loop|00 - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.sub - local.set $0 - local.get $1 + local.set $1 + local.get $0 br_if $do-loop|00 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -1057,30 +1058,30 @@ unreachable end i32.const 0 - local.set $1 + local.set $3 i32.const 10 - local.set $0 + local.set $1 loop $do-loop|01 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 local.get $2 i32.const 1 i32.add local.set $2 loop $do-loop|1 - local.get $1 + local.get $3 i32.const 1 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 1 i32.sub - local.tee $0 + local.tee $1 br_if $do-loop|1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1056 @@ -1089,7 +1090,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 i32.const 9 i32.ne if @@ -1100,10 +1101,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 br_if $do-loop|01 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1056 @@ -1123,7 +1124,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 i32.const 9 i32.ne if @@ -1135,17 +1136,17 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $do-loop|02 - local.get $0 + local.get $1 i32.const 1 i32.add - local.tee $0 + local.tee $1 i32.const 10 i32.ne br_if $do-loop|02 end - local.get $0 + local.get $1 i32.const 10 i32.ne if @@ -1157,17 +1158,17 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $do-loop|03 - local.get $0 + local.get $1 i32.const 1 i32.add - local.tee $0 + local.tee $1 i32.const 10 i32.ne br_if $do-loop|03 end - local.get $0 + local.get $1 i32.const 10 i32.ne if @@ -1179,20 +1180,20 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $do-loop|04 - local.get $0 + local.get $1 i32.const 1 i32.add - local.tee $0 + local.tee $1 i32.const 10 i32.ne i32.const 0 - local.get $0 + local.get $1 select br_if $do-loop|04 end - local.get $0 + local.get $1 i32.const 10 i32.ne if @@ -1204,34 +1205,34 @@ unreachable end i32.const 0 - local.set $0 - i32.const 0 local.set $1 + i32.const 0 + local.set $3 loop $do-loop|06 - local.get $0 + local.get $1 i32.const 1 i32.add - local.tee $0 + local.tee $1 i32.const 10 i32.ne if loop $do-loop|18 - local.get $1 + local.get $3 i32.const 1 i32.add - local.tee $1 + local.tee $3 i32.const 10 i32.rem_s i32.const 0 - local.get $1 + local.get $3 select br_if $do-loop|18 end - local.get $0 + local.get $1 br_if $do-loop|06 end end - local.get $0 + local.get $1 i32.const 10 i32.ne if @@ -1242,7 +1243,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 i32.const 90 i32.ne if @@ -1286,7 +1287,7 @@ i32.const 1376 global.set $~lib/rt/itcms/fromSpace i32.const 0 - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -1304,25 +1305,25 @@ call $do/Ref#constructor i32.store loop $do-loop|09 - local.get $1 + local.get $3 i32.const 1 i32.add - local.tee $1 + local.tee $3 i32.const 10 i32.eq if i32.const 0 - local.set $0 + local.set $1 else global.get $~lib/memory/__stack_pointer call $do/Ref#constructor - local.tee $0 + local.tee $1 i32.store end - local.get $0 + local.get $1 br_if $do-loop|09 end - local.get $1 + local.get $3 i32.const 10 i32.ne if @@ -1333,7 +1334,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 if i32.const 0 i32.const 1056 @@ -1347,7 +1348,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -1362,26 +1363,26 @@ i32.store local.get $0 call $do/Ref#constructor - local.tee $0 + local.tee $1 i32.store loop $do-loop|07 block $do-break|08 - local.get $1 + local.get $3 i32.const 1 i32.add - local.tee $1 + local.tee $3 i32.const 10 i32.eq if i32.const 0 - local.set $0 + local.set $1 br $do-break|08 end call $do/Ref#constructor br_if $do-loop|07 end end - local.get $1 + local.get $3 i32.const 10 i32.ne if @@ -1392,7 +1393,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 if i32.const 0 i32.const 1056 @@ -1504,7 +1505,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1581,16 +1582,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $0 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1638,7 +1639,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $2 i32.const -4 i32.and i32.const 28 @@ -1648,7 +1649,7 @@ i32.ge_u if local.get $0 - local.get $3 + local.get $2 i32.const 2 i32.and i32.const 28 @@ -1657,7 +1658,7 @@ local.get $0 i32.const 32 i32.add - local.tee $3 + local.tee $2 local.get $4 i32.const 4 i32.sub @@ -1665,11 +1666,11 @@ i32.or i32.store local.get $1 - local.get $3 + local.get $2 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $2 i32.const -2 i32.and i32.store @@ -1695,26 +1696,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1726,7 +1727,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $2 + local.get $3 local.get $0 i32.const 20 i32.add @@ -1746,19 +1747,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1768,22 +1769,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17892 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1797,9 +1798,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1809,23 +1810,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1833,7 +1834,7 @@ else i32.const 1472 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1280 @@ -1843,7 +1844,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1476 @@ -1858,28 +1859,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/empty-exportruntime.optimized.wat b/tests/compiler/empty-exportruntime.optimized.wat index 0687dde3a8..1c79818c42 100644 --- a/tests/compiler/empty-exportruntime.optimized.wat +++ b/tests/compiler/empty-exportruntime.optimized.wat @@ -204,20 +204,20 @@ else i32.const 2 end - local.set $2 + local.set $3 local.get $1 i32.load offset=8 - local.set $3 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and @@ -312,19 +312,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -349,9 +349,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -359,17 +359,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -657,10 +657,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -672,15 +672,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -710,7 +710,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -746,12 +746,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -769,11 +769,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17984 @@ -781,14 +781,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -798,17 +798,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1288,7 +1288,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1314,32 +1314,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $3 i32.add else - local.get $4 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1372,7 +1372,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1380,8 +1380,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1398,7 +1398,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $3 i32.lt_u if i32.const 0 @@ -1408,13 +1408,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1430,7 +1430,7 @@ local.get $5 i32.const -4 i32.and - local.get $4 + local.get $3 i32.sub local.tee $6 i32.const 16 @@ -1440,23 +1440,23 @@ local.get $5 i32.const 2 i32.and - local.get $4 + local.get $3 i32.or i32.store - local.get $4 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 + local.tee $3 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1486,26 +1486,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1520,7 +1520,7 @@ local.get $2 i32.const 20 i32.add - local.tee $2 + local.tee $3 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1532,7 +1532,7 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1547,12 +1547,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $3 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $2 i32.const 3 i32.sub i32.const 0 @@ -1564,7 +1564,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 0 @@ -1579,25 +1579,25 @@ i32.sub i32.const 3 i32.and - local.tee $3 + local.tee $2 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $3 + local.get $2 i32.sub i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.add - local.tee $3 + local.tee $0 i32.const 4 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1607,17 +1607,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $0 i32.const 12 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 8 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1633,22 +1633,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $3 + local.get $0 i32.const 28 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 24 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 20 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 16 i32.sub i32.const 0 @@ -1659,11 +1659,11 @@ i32.and i32.const 24 i32.add - local.tee $3 + local.tee $0 i32.add local.set $1 + local.get $2 local.get $0 - local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1695,7 +1695,7 @@ end end end - local.get $2 + local.get $3 ) (func $~lib/rt/itcms/__pin (param $0 i32) (result i32) (local $1 i32) @@ -1759,7 +1759,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $2 + local.tee $0 i32.load offset=4 i32.const 3 i32.and @@ -1777,33 +1777,33 @@ i32.const 1 i32.eq if - local.get $2 + local.get $0 call $~lib/rt/itcms/Object#makeGray else - local.get $2 + local.get $0 call $~lib/rt/itcms/Object#unlink global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 - local.set $0 - local.get $2 + local.set $1 + local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store offset=4 - local.get $2 local.get $0 + local.get $1 i32.store offset=8 - local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 - local.get $1 local.get $2 + local.get $0 i32.store offset=8 end ) diff --git a/tests/compiler/empty-new.optimized.wat b/tests/compiler/empty-new.optimized.wat index 94ad7bec6b..5f078233f5 100644 --- a/tests/compiler/empty-new.optimized.wat +++ b/tests/compiler/empty-new.optimized.wat @@ -160,19 +160,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -197,9 +197,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -207,17 +207,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -505,10 +505,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -520,15 +520,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -558,7 +558,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -594,12 +594,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -617,11 +617,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17856 @@ -629,14 +629,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -646,17 +646,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1247,26 +1247,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 - local.set $2 + local.set $1 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1287,19 +1287,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1309,22 +1309,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17852 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1338,9 +1338,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1350,23 +1350,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1374,7 +1374,7 @@ else i32.const 1440 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1248 @@ -1384,7 +1384,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1444 @@ -1399,28 +1399,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/exports.optimized.wat b/tests/compiler/exports.optimized.wat index d450a6294d..3c69f08331 100644 --- a/tests/compiler/exports.optimized.wat +++ b/tests/compiler/exports.optimized.wat @@ -214,19 +214,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -251,9 +251,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -261,17 +261,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -559,10 +559,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -574,15 +574,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -612,7 +612,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -648,12 +648,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -671,11 +671,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17872 @@ -683,14 +683,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -700,17 +700,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1183,17 +1183,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1202,19 +1202,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1240,26 +1240,26 @@ i32.const 4 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $0 + local.tee $2 i32.load offset=8 - local.set $2 + local.set $0 local.get $1 global.get $~lib/rt/itcms/white - local.get $0 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $2 + local.get $0 i32.store offset=8 - local.get $2 - local.get $2 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $0 + local.get $2 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1626,19 +1626,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1648,22 +1648,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17868 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1677,9 +1677,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1689,23 +1689,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1713,7 +1713,7 @@ else i32.const 1440 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1248 @@ -1723,7 +1723,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1444 @@ -1738,28 +1738,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/exportstar-rereexport.optimized.wat b/tests/compiler/exportstar-rereexport.optimized.wat index 5af6c3056b..20d5276ccb 100644 --- a/tests/compiler/exportstar-rereexport.optimized.wat +++ b/tests/compiler/exportstar-rereexport.optimized.wat @@ -224,19 +224,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -261,9 +261,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -271,17 +271,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -569,10 +569,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -584,15 +584,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -622,7 +622,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -658,12 +658,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -681,11 +681,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17968 @@ -693,14 +693,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -710,17 +710,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1250,7 +1250,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1327,16 +1327,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $0 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1384,7 +1384,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $2 i32.const -4 i32.and i32.const 28 @@ -1394,7 +1394,7 @@ i32.ge_u if local.get $0 - local.get $3 + local.get $2 i32.const 2 i32.and i32.const 28 @@ -1403,7 +1403,7 @@ local.get $0 i32.const 32 i32.add - local.tee $3 + local.tee $2 local.get $4 i32.const 4 i32.sub @@ -1411,11 +1411,11 @@ i32.or i32.store local.get $1 - local.get $3 + local.get $2 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $2 i32.const -2 i32.and i32.store @@ -1441,26 +1441,26 @@ i32.const 4 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1502,7 +1502,7 @@ i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 local.get $0 i32.store local.get $0 @@ -1525,19 +1525,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1547,22 +1547,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17956 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1576,9 +1576,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1588,23 +1588,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1612,7 +1612,7 @@ else i32.const 1536 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1296 @@ -1622,7 +1622,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1540 @@ -1637,28 +1637,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/extends-baseaggregate.optimized.wat b/tests/compiler/extends-baseaggregate.optimized.wat index c63a03c99d..7c8d40ab3c 100644 --- a/tests/compiler/extends-baseaggregate.optimized.wat +++ b/tests/compiler/extends-baseaggregate.optimized.wat @@ -122,7 +122,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -145,7 +145,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -155,23 +155,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -179,7 +179,7 @@ else i32.const 1696 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1408 @@ -189,7 +189,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 1700 @@ -204,27 +204,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -312,19 +312,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -349,9 +349,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -359,17 +359,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -657,10 +657,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -672,15 +672,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -710,7 +710,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -746,12 +746,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -769,11 +769,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 18160 @@ -781,14 +781,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -798,17 +798,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1286,14 +1286,14 @@ i32.sub i32.const -4 i32.and - local.tee $1 - i32.add local.tee $2 + i32.add + local.tee $1 i32.const 4 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1303,17 +1303,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 12 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1329,22 +1329,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $2 + local.get $1 i32.const 28 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 20 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 16 i32.sub i32.const 0 @@ -1355,11 +1355,11 @@ i32.and i32.const 24 i32.add - local.tee $2 + local.tee $1 i32.add local.set $0 - local.get $1 local.get $2 + local.get $1 i32.sub local.set $1 loop $while-continue|0 @@ -1464,7 +1464,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1490,32 +1490,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1531,16 +1531,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1548,7 +1548,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1556,8 +1556,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1574,7 +1574,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1584,13 +1584,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1603,40 +1603,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -1662,26 +1662,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2156,105 +2156,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2286,41 +2296,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2415,7 +2427,7 @@ i32.const 1 i32.add local.tee $10 - local.tee $3 + local.tee $1 i32.const 1176 i32.load local.tee $7 @@ -2423,7 +2435,7 @@ i32.shr_u i32.gt_u if - local.get $3 + local.get $1 i32.const 268435455 i32.gt_u if @@ -2438,16 +2450,16 @@ local.get $7 i32.const 1 i32.shl - local.tee $1 + local.tee $2 i32.const 1073741820 - local.get $1 + local.get $2 i32.const 1073741820 i32.lt_u select local.tee $2 - local.get $3 + local.get $1 i32.const 8 - local.get $3 + local.get $1 i32.const 8 i32.gt_u select @@ -2459,14 +2471,14 @@ i32.lt_u select local.tee $8 - local.tee $4 + local.tee $3 i32.const 1168 i32.load local.tee $11 local.tee $1 i32.const 20 i32.sub - local.tee $3 + local.tee $4 i32.load i32.const -4 i32.and @@ -2474,24 +2486,24 @@ i32.sub i32.le_u if - local.get $3 local.get $4 + local.get $3 i32.store offset=16 br $__inlined_func$~lib/rt/itcms/__renew end - local.get $4 local.get $3 + local.get $4 i32.load offset=12 call $~lib/rt/itcms/__new local.tee $5 local.set $2 - local.get $4 local.get $3 + local.get $4 i32.load offset=16 - local.tee $3 + local.tee $4 local.get $3 local.get $4 - i32.gt_u + i32.lt_u select local.set $6 block $~lib/util/memory/memmove|inlined.0 @@ -2542,17 +2554,17 @@ i32.sub local.set $6 local.get $2 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $2 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 br $while-continue|0 @@ -2587,17 +2599,17 @@ local.get $6 if local.get $2 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $2 local.get $1 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $1 - local.get $4 local.get $3 + local.get $4 i32.load8_u i32.store8 local.get $6 diff --git a/tests/compiler/extends-recursive.optimized.wat b/tests/compiler/extends-recursive.optimized.wat index bef86b226c..8adb6b7bf9 100644 --- a/tests/compiler/extends-recursive.optimized.wat +++ b/tests/compiler/extends-recursive.optimized.wat @@ -111,7 +111,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -134,7 +134,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -144,23 +144,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -168,7 +168,7 @@ else i32.const 1440 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1248 @@ -178,7 +178,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 1444 @@ -193,27 +193,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -301,19 +301,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -338,9 +338,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -348,17 +348,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -646,10 +646,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -661,15 +661,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -699,7 +699,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -735,12 +735,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -758,11 +758,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17872 @@ -770,14 +770,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -787,17 +787,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1270,17 +1270,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1289,19 +1289,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1327,26 +1327,26 @@ i32.const 4 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $0 + local.tee $2 i32.load offset=8 - local.set $2 + local.set $0 local.get $1 global.get $~lib/rt/itcms/white - local.get $0 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $2 + local.get $0 i32.store offset=8 - local.get $2 - local.get $2 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $0 + local.get $2 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1599,8 +1599,8 @@ i32.store end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/features/simd.optimized.wat b/tests/compiler/features/simd.optimized.wat index 4db18e2d61..f00de0af49 100644 --- a/tests/compiler/features/simd.optimized.wat +++ b/tests/compiler/features/simd.optimized.wat @@ -101,19 +101,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -138,9 +138,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -148,17 +148,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -446,10 +446,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -461,15 +461,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -499,7 +499,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -535,12 +535,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -558,11 +558,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17616 @@ -570,14 +570,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -587,17 +587,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -749,7 +749,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $2 local.get $0 i32.const 1073741820 i32.gt_u @@ -775,34 +775,34 @@ i32.const 4 i32.sub end - local.tee $3 - call $~lib/rt/tlsf/searchBlock local.tee $0 + call $~lib/rt/tlsf/searchBlock + local.tee $1 i32.eqz if memory.size - local.tee $0 - local.get $3 + local.tee $1 + local.get $0 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $0 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $0 i32.add else - local.get $3 + local.get $0 end i32.const 4 - local.get $1 + local.get $2 i32.load offset=1568 - local.get $0 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -816,16 +816,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 - local.get $0 - local.get $2 + local.tee $3 + local.get $1 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -833,18 +833,18 @@ unreachable end end + local.get $2 local.get $1 - local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 - local.get $3 + local.get $2 + local.get $0 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -855,11 +855,11 @@ unreachable end end - local.get $0 + local.get $1 i32.load i32.const -4 i32.and - local.get $3 + local.get $0 i32.lt_u if i32.const 0 @@ -869,13 +869,13 @@ call $~lib/builtins/abort unreachable end + local.get $2 local.get $1 - local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $0 + local.get $1 i32.load - local.set $4 - local.get $3 + local.set $3 + local.get $0 i32.const 4 i32.add i32.const 15 @@ -888,59 +888,59 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const -4 i32.and - local.get $3 + local.get $0 i32.sub - local.tee $2 + local.tee $4 i32.const 16 i32.ge_u if - local.get $0 - local.get $4 + local.get $1 + local.get $3 i32.const 2 i32.and - local.get $3 + local.get $0 i32.or i32.store - local.get $3 local.get $0 + local.get $1 i32.const 4 i32.add i32.add - local.tee $3 - local.get $2 + local.tee $0 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 - local.get $3 + local.get $2 + local.get $0 call $~lib/rt/tlsf/insertBlock else - local.get $0 - local.get $4 + local.get $1 + local.get $3 i32.const -2 i32.and i32.store - local.get $0 + local.get $1 i32.const 4 i32.add - local.get $0 + local.get $1 i32.load i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.load i32.const -3 i32.and i32.store end - local.get $0 + local.get $1 i32.const 4 i32.add ) diff --git a/tests/compiler/field-initialization.optimized.wat b/tests/compiler/field-initialization.optimized.wat index 6bd313f01c..e2354c20c5 100644 --- a/tests/compiler/field-initialization.optimized.wat +++ b/tests/compiler/field-initialization.optimized.wat @@ -129,7 +129,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -152,7 +152,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -162,23 +162,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -186,7 +186,7 @@ else i32.const 1792 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1248 @@ -196,7 +196,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 1796 @@ -211,27 +211,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -319,19 +319,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -356,9 +356,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -366,17 +366,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -664,10 +664,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -679,15 +679,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -717,7 +717,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -753,12 +753,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -776,11 +776,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 18384 @@ -788,14 +788,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -805,17 +805,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1293,14 +1293,14 @@ i32.sub i32.const -4 i32.and - local.tee $1 - i32.add local.tee $2 + i32.add + local.tee $1 i32.const 4 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1310,17 +1310,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 12 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1336,22 +1336,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $2 + local.get $1 i32.const 28 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 20 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 16 i32.sub i32.const 0 @@ -1362,11 +1362,11 @@ i32.and i32.const 24 i32.add - local.tee $2 + local.tee $1 i32.add local.set $0 - local.get $1 local.get $2 + local.get $1 i32.sub local.set $1 loop $while-continue|0 @@ -1471,7 +1471,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1497,32 +1497,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1538,16 +1538,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1555,7 +1555,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1563,8 +1563,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1581,7 +1581,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1591,13 +1591,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1610,40 +1610,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -1669,26 +1669,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1798,14 +1798,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2082,12 +2082,12 @@ i32.store local.get $0 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if local.get $0 - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end global.get $~lib/memory/__stack_pointer @@ -2129,12 +2129,12 @@ i32.store local.get $0 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if local.get $0 - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end global.get $~lib/memory/__stack_pointer @@ -2339,12 +2339,12 @@ i32.store local.get $0 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if local.get $0 - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end global.get $~lib/memory/__stack_pointer @@ -2389,12 +2389,12 @@ i32.store local.get $0 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if local.get $0 - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end global.get $~lib/memory/__stack_pointer @@ -2428,21 +2428,21 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 4 i32.const 13 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 local.get $0 i32.store local.get $0 if - local.get $2 + local.get $1 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -2450,9 +2450,9 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=4 - local.get $2 + local.get $1 i32.load local.get $0 i32.ne @@ -2525,12 +2525,12 @@ i32.store local.get $0 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if local.get $0 - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end global.get $~lib/memory/__stack_pointer @@ -2575,12 +2575,12 @@ i32.store local.get $0 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if local.get $0 - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end global.get $~lib/memory/__stack_pointer @@ -2685,21 +2685,21 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 call $field-initialization/SomeObject#constructor - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=4 - local.get $0 local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 i32.load if i32.const 0 @@ -2710,7 +2710,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 local.tee $0 i32.store offset=8 @@ -2727,21 +2727,21 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 call $field-initialization/SomeObject#constructor - local.tee $1 + local.tee $0 i32.store offset=12 - local.get $1 + local.get $0 i32.const 1 i32.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=4 - local.get $0 local.get $1 + local.get $0 i32.store offset=16 - local.get $1 + local.get $0 i32.load i32.const 1 i32.ne @@ -2754,7 +2754,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 local.tee $0 i32.store offset=8 @@ -2771,24 +2771,24 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 call $field-initialization/SomeObject#constructor - local.tee $1 + local.tee $0 i32.store offset=20 - local.get $1 + local.get $0 i32.const 1648 i32.store offset=4 - local.get $1 + local.get $0 i32.const 1648 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $1 + local.get $0 i32.const 0 i32.store - local.get $0 local.get $1 + local.get $0 i32.store offset=24 - local.get $1 + local.get $0 i32.load if i32.const 0 @@ -2799,15 +2799,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.load offset=4 local.tee $1 - i32.store offset=8 local.get $0 + i32.load offset=4 + local.tee $0 + i32.store offset=8 + local.get $1 i32.const 1648 i32.store offset=28 - local.get $1 + local.get $0 i32.const 1648 call $~lib/string/String.__eq i32.eqz @@ -2820,24 +2820,24 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 call $field-initialization/SomeObject#constructor - local.tee $1 + local.tee $0 i32.store offset=32 - local.get $1 + local.get $0 i32.const 2 i32.store - local.get $1 + local.get $0 i32.const 1680 i32.store offset=4 - local.get $1 + local.get $0 i32.const 1680 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $0 local.get $1 + local.get $0 i32.store offset=36 - local.get $1 + local.get $0 i32.load i32.const 2 i32.ne @@ -2850,15 +2850,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.load offset=4 local.tee $1 - i32.store offset=8 local.get $0 + i32.load offset=4 + local.tee $0 + i32.store offset=8 + local.get $1 i32.const 1680 i32.store offset=28 - local.get $1 + local.get $0 i32.const 1680 call $~lib/string/String.__eq i32.eqz @@ -2871,26 +2871,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - call $field-initialization/SomeOtherObject#constructor local.tee $1 + call $field-initialization/SomeOtherObject#constructor + local.tee $0 i32.store offset=36 - local.get $1 + local.get $0 i32.const 1712 i32.store offset=8 - local.get $1 + local.get $0 i32.const 1712 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $1 + local.get $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=4 - local.get $0 local.get $1 + local.get $0 i32.store offset=24 - local.get $1 + local.get $0 i32.load if i32.const 0 @@ -2901,11 +2901,11 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 - local.tee $0 + local.tee $1 i32.store offset=8 - local.get $0 + local.get $1 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -2918,15 +2918,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.load offset=8 local.tee $1 - i32.store offset=8 local.get $0 + i32.load offset=8 + local.tee $0 + i32.store offset=8 + local.get $1 i32.const 1712 i32.store offset=28 - local.get $1 + local.get $0 i32.const 1712 call $~lib/string/String.__eq i32.eqz @@ -2939,29 +2939,29 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - call $field-initialization/SomeOtherObject#constructor local.tee $1 + call $field-initialization/SomeOtherObject#constructor + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 3 i32.store - local.get $1 + local.get $0 i32.const 1744 i32.store offset=4 - local.get $1 + local.get $0 i32.const 1744 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $1 + local.get $0 i32.const 1776 i32.store offset=8 - local.get $1 + local.get $0 i32.const 1776 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $0 local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 i32.load i32.const 3 i32.ne @@ -2974,12 +2974,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load offset=4 local.tee $2 i32.store offset=8 - local.get $0 + local.get $1 i32.const 1744 i32.store offset=28 local.get $2 @@ -2995,15 +2995,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.load offset=8 local.tee $1 - i32.store offset=8 local.get $0 + i32.load offset=8 + local.tee $0 + i32.store offset=8 + local.get $1 i32.const 1776 i32.store offset=28 - local.get $1 + local.get $0 i32.const 1776 call $~lib/string/String.__eq i32.eqz @@ -3040,12 +3040,12 @@ i32.store local.get $0 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if local.get $0 - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end global.get $~lib/memory/__stack_pointer @@ -3075,12 +3075,12 @@ i32.store offset=24 local.get $0 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if local.get $0 - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -3109,12 +3109,12 @@ i32.store local.get $0 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if local.get $0 - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 diff --git a/tests/compiler/field.optimized.wat b/tests/compiler/field.optimized.wat index 9e2efdc85a..e7c21802fa 100644 --- a/tests/compiler/field.optimized.wat +++ b/tests/compiler/field.optimized.wat @@ -107,7 +107,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -130,7 +130,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -140,23 +140,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -164,7 +164,7 @@ else i32.const 1472 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1248 @@ -174,7 +174,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 1476 @@ -189,27 +189,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -297,19 +297,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -334,9 +334,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -344,17 +344,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -642,10 +642,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -657,15 +657,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -695,7 +695,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -731,12 +731,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -754,11 +754,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17920 @@ -766,14 +766,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -783,17 +783,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1273,7 +1273,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1299,32 +1299,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $3 i32.add else - local.get $4 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1357,7 +1357,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1365,8 +1365,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1383,7 +1383,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $3 i32.lt_u if i32.const 0 @@ -1393,13 +1393,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1415,7 +1415,7 @@ local.get $5 i32.const -4 i32.and - local.get $4 + local.get $3 i32.sub local.tee $6 i32.const 16 @@ -1425,23 +1425,23 @@ local.get $5 i32.const 2 i32.and - local.get $4 + local.get $3 i32.or i32.store - local.get $4 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 + local.tee $3 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1471,26 +1471,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1505,7 +1505,7 @@ local.get $2 i32.const 20 i32.add - local.tee $2 + local.tee $3 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1517,7 +1517,7 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1532,12 +1532,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $3 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $2 i32.const 3 i32.sub i32.const 0 @@ -1549,7 +1549,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 0 @@ -1564,25 +1564,25 @@ i32.sub i32.const 3 i32.and - local.tee $3 + local.tee $2 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $3 + local.get $2 i32.sub i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.add - local.tee $3 + local.tee $0 i32.const 4 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1592,17 +1592,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $0 i32.const 12 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 8 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1618,22 +1618,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $3 + local.get $0 i32.const 28 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 24 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 20 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 16 i32.sub i32.const 0 @@ -1644,11 +1644,11 @@ i32.and i32.const 24 i32.add - local.tee $3 + local.tee $0 i32.add local.set $1 + local.get $2 local.get $0 - local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1680,7 +1680,7 @@ end end end - local.get $2 + local.get $3 ) (func $~lib/util/memory/memcpy (param $0 i32) (local $1 i32) @@ -1695,27 +1695,27 @@ i32.const 3 i32.and i32.const 0 - local.get $4 + local.get $5 select if local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $4 + local.get $5 i32.const 1 i32.sub - local.set $4 + local.set $5 br $while-continue|0 end end @@ -1725,7 +1725,7 @@ i32.eqz if loop $while-continue|1 - local.get $4 + local.get $5 i32.const 16 i32.ge_u if @@ -1753,14 +1753,14 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|1 end end - local.get $4 + local.get $5 i32.const 8 i32.and if @@ -1781,7 +1781,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 4 i32.and if @@ -1798,7 +1798,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 2 i32.and if @@ -1815,7 +1815,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 1 i32.and if @@ -1826,7 +1826,7 @@ end return end - local.get $4 + local.get $5 i32.const 32 i32.ge_u if @@ -1843,7 +1843,7 @@ end local.get $1 i32.load - local.set $5 + local.set $4 local.get $0 local.get $1 i32.load8_u @@ -1855,27 +1855,27 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $4 + local.get $5 i32.const 3 i32.sub - local.set $4 + local.set $5 loop $while-continue|3 - local.get $4 + local.get $5 i32.const 17 i32.ge_u if @@ -1885,7 +1885,7 @@ local.tee $2 i32.const 8 i32.shl - local.get $5 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -1915,7 +1915,7 @@ local.get $0 local.get $1 i32.load offset=13 - local.tee $5 + local.tee $4 i32.const 8 i32.shl local.get $2 @@ -1931,10 +1931,10 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|3 end end @@ -1942,31 +1942,31 @@ end local.get $1 i32.load - local.set $5 + local.set $4 local.get $0 local.get $1 i32.load8_u i32.store8 local.get $0 - local.tee $2 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $2 i32.const 2 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $5 i32.const 2 i32.sub - local.set $4 + local.set $5 loop $while-continue|4 - local.get $4 + local.get $5 i32.const 18 i32.ge_u if @@ -1976,7 +1976,7 @@ local.tee $2 i32.const 16 i32.shl - local.get $5 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -2006,7 +2006,7 @@ local.get $0 local.get $1 i32.load offset=14 - local.tee $5 + local.tee $4 i32.const 16 i32.shl local.get $2 @@ -2022,10 +2022,10 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|4 end end @@ -2033,27 +2033,27 @@ end local.get $1 i32.load - local.set $5 + local.set $4 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $4 + local.get $5 i32.const 1 i32.sub - local.set $4 + local.set $5 loop $while-continue|5 - local.get $4 + local.get $5 i32.const 19 i32.ge_u if @@ -2063,7 +2063,7 @@ local.tee $2 i32.const 24 i32.shl - local.get $5 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -2093,7 +2093,7 @@ local.get $0 local.get $1 i32.load offset=15 - local.tee $5 + local.tee $4 i32.const 24 i32.shl local.get $2 @@ -2109,16 +2109,16 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|5 end end end end - local.get $4 + local.get $5 i32.const 16 i32.and if @@ -2129,129 +2129,141 @@ local.get $0 i32.const 2 i32.add - local.set $2 + local.set $3 local.get $1 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $0 local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $2 - i32.const 2 - i32.add - local.set $0 local.get $3 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $3 local.get $2 - local.get $3 + local.tee $0 + i32.const 2 + i32.add + local.set $2 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $1 + local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $0 + local.get $3 + local.tee $1 i32.const 2 i32.add - local.set $2 - local.get $1 + local.set $3 + local.get $2 + local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $0 + local.set $2 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $2 - i32.const 2 - i32.add - local.set $0 local.get $3 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $3 local.get $2 - local.get $3 + local.tee $0 + i32.const 2 + i32.add + local.set $2 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $1 + local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $0 + local.get $3 + local.tee $1 i32.const 2 i32.add - local.set $2 - local.get $1 + local.set $3 + local.get $2 + local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $0 + local.set $2 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $2 - i32.const 2 - i32.add - local.set $0 local.get $3 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $3 local.get $2 - local.get $3 + local.tee $0 + i32.const 2 + i32.add + local.set $2 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $1 + local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $0 + local.get $3 + local.tee $1 i32.const 2 i32.add - local.set $2 - local.get $1 + local.set $3 + local.get $2 + local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $0 + local.set $2 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $2 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $4 + local.get $5 i32.const 8 i32.and if @@ -2262,65 +2274,69 @@ local.get $0 i32.const 2 i32.add - local.set $2 + local.set $3 local.get $1 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $0 local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $2 - i32.const 2 - i32.add - local.set $0 local.get $3 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $3 local.get $2 - local.get $3 + local.tee $0 + i32.const 2 + i32.add + local.set $2 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $1 + local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $0 + local.get $3 + local.tee $1 i32.const 2 i32.add - local.set $2 - local.get $1 + local.set $3 + local.get $2 + local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $0 + local.set $2 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $2 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $4 + local.get $5 i32.const 4 i32.and if @@ -2331,33 +2347,33 @@ local.get $0 i32.const 2 i32.add - local.set $2 + local.set $3 local.get $1 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $0 local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $2 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $4 + local.get $5 i32.const 2 i32.and if @@ -2366,21 +2382,21 @@ i32.load8_u i32.store8 local.get $0 - local.tee $2 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $2 i32.const 2 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $4 + local.get $5 i32.const 1 i32.and if @@ -2445,35 +2461,35 @@ i32.const 0 i32.store i32.const 1456 - local.set $1 + local.set $0 block $~lib/util/memory/memmove|inlined.0 i32.const 0 i32.const 0 call $~lib/rt/itcms/__new local.tee $4 - local.tee $0 + local.tee $1 i32.const 1456 i32.eq br_if $~lib/util/memory/memmove|inlined.0 - local.get $0 + local.get $1 i32.const 1456 i32.eq if - local.get $0 + local.get $1 call $~lib/util/memory/memcpy br $~lib/util/memory/memmove|inlined.0 end - local.get $0 + local.get $1 i32.const 1456 i32.lt_u if - local.get $0 + local.get $1 i32.const 7 i32.and i32.eqz if loop $while-continue|0 - local.get $0 + local.get $1 i32.const 7 i32.and if @@ -2484,18 +2500,18 @@ i32.const 1 i32.sub local.set $8 - local.get $0 - local.tee $2 - i32.const 1 - i32.add - local.set $0 local.get $1 local.tee $3 i32.const 1 i32.add local.set $1 - local.get $2 + local.get $0 + local.tee $2 + i32.const 1 + i32.add + local.set $0 local.get $3 + local.get $2 i32.load8_u i32.store8 br $while-continue|0 @@ -2506,22 +2522,22 @@ i32.const 8 i32.ge_u if - local.get $0 local.get $1 + local.get $0 i64.load i64.store local.get $8 i32.const 8 i32.sub local.set $8 - local.get $0 - i32.const 8 - i32.add - local.set $0 local.get $1 i32.const 8 i32.add local.set $1 + local.get $0 + i32.const 8 + i32.add + local.set $0 br $while-continue|1 end end @@ -2529,18 +2545,18 @@ loop $while-continue|2 local.get $8 if - local.get $0 - local.tee $2 - i32.const 1 - i32.add - local.set $0 local.get $1 local.tee $3 i32.const 1 i32.add local.set $1 - local.get $2 + local.get $0 + local.tee $2 + i32.const 1 + i32.add + local.set $0 local.get $3 + local.get $2 i32.load8_u i32.store8 local.get $8 @@ -2551,13 +2567,13 @@ end end else - local.get $0 + local.get $1 i32.const 7 i32.and i32.eqz if loop $while-continue|3 - local.get $0 + local.get $1 local.get $8 i32.add i32.const 7 @@ -2566,7 +2582,7 @@ local.get $8 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $0 + local.get $1 local.get $8 i32.const 1 i32.sub @@ -2585,7 +2601,7 @@ i32.const 8 i32.ge_u if - local.get $0 + local.get $1 local.get $8 i32.const 8 i32.sub @@ -2603,7 +2619,7 @@ loop $while-continue|5 local.get $8 if - local.get $0 + local.get $1 local.get $8 i32.const 1 i32.sub @@ -2625,12 +2641,12 @@ i32.const 16 i32.const 4 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $2 local.get $4 i32.store local.get $4 if - local.get $0 + local.get $2 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white @@ -2643,13 +2659,13 @@ i32.and i32.eq if - local.get $0 + local.get $2 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $2 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq @@ -2660,7 +2676,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $2 + local.get $0 i32.const 3 i32.eq i32.and @@ -2671,13 +2687,13 @@ end end end - local.get $0 + local.get $2 local.get $4 i32.store offset=4 - local.get $0 + local.get $2 i32.const 0 i32.store offset=8 - local.get $0 + local.get $2 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -2685,18 +2701,18 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $5 - local.get $0 + local.get $2 i32.store - local.get $0 + local.get $2 if local.get $5 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white - local.get $0 + local.get $2 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and @@ -2708,23 +2724,23 @@ i32.load offset=4 i32.const 3 i32.and - local.tee $1 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $1 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $1 + local.get $0 i32.const 3 i32.eq i32.and if - local.get $0 + local.get $1 call $~lib/rt/itcms/Object#makeGray end end @@ -2786,19 +2802,19 @@ i32.const 2 i32.shl i32.add - local.set $0 + local.set $3 loop $while-continue|0 - local.get $0 local.get $2 - i32.gt_u + local.get $3 + i32.lt_u if local.get $2 i32.load - local.tee $3 + local.tee $0 if - local.get $3 + local.get $0 if - local.get $3 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end diff --git a/tests/compiler/for.optimized.wat b/tests/compiler/for.optimized.wat index 9f124c1092..7f8f1917e4 100644 --- a/tests/compiler/for.optimized.wat +++ b/tests/compiler/for.optimized.wat @@ -164,19 +164,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -201,9 +201,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -211,17 +211,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -509,10 +509,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -524,15 +524,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -562,7 +562,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -598,12 +598,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -621,11 +621,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17904 @@ -633,14 +633,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -650,17 +650,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1500,7 +1500,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1577,16 +1577,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $0 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1634,7 +1634,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $2 i32.const -4 i32.and i32.const 28 @@ -1644,7 +1644,7 @@ i32.ge_u if local.get $0 - local.get $3 + local.get $2 i32.const 2 i32.and i32.const 28 @@ -1653,7 +1653,7 @@ local.get $0 i32.const 32 i32.add - local.tee $3 + local.tee $2 local.get $4 i32.const 4 i32.sub @@ -1661,11 +1661,11 @@ i32.or i32.store local.get $1 - local.get $3 + local.get $2 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $2 i32.const -2 i32.and i32.store @@ -1691,26 +1691,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1722,7 +1722,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $2 + local.get $3 local.get $0 i32.const 20 i32.add @@ -1742,19 +1742,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1764,22 +1764,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17892 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1793,9 +1793,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1805,23 +1805,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1829,7 +1829,7 @@ else i32.const 1472 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1280 @@ -1839,7 +1839,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1476 @@ -1854,28 +1854,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/function-call.optimized.wat b/tests/compiler/function-call.optimized.wat index 513af5e95a..4f181a9c0e 100644 --- a/tests/compiler/function-call.optimized.wat +++ b/tests/compiler/function-call.optimized.wat @@ -205,19 +205,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -242,9 +242,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -252,17 +252,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -550,10 +550,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -565,15 +565,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -603,7 +603,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -639,12 +639,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -662,11 +662,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 18224 @@ -674,14 +674,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -691,17 +691,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1196,7 +1196,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1273,16 +1273,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $0 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1330,7 +1330,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $2 i32.const -4 i32.and i32.const 28 @@ -1340,7 +1340,7 @@ i32.ge_u if local.get $0 - local.get $3 + local.get $2 i32.const 2 i32.and i32.const 28 @@ -1349,7 +1349,7 @@ local.get $0 i32.const 32 i32.add - local.tee $3 + local.tee $2 local.get $4 i32.const 4 i32.sub @@ -1357,11 +1357,11 @@ i32.or i32.store local.get $1 - local.get $3 + local.get $2 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $2 i32.const -2 i32.and i32.store @@ -1387,26 +1387,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1418,7 +1418,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $2 + local.get $3 local.get $0 i32.const 20 i32.add @@ -1493,19 +1493,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1515,22 +1515,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 18220 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1544,9 +1544,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1556,23 +1556,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1580,7 +1580,7 @@ else i32.const 1760 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1472 @@ -1590,7 +1590,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1764 @@ -1605,28 +1605,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/function-expression.optimized.wat b/tests/compiler/function-expression.optimized.wat index b5a1e92e0f..f62ea355b2 100644 --- a/tests/compiler/function-expression.optimized.wat +++ b/tests/compiler/function-expression.optimized.wat @@ -175,7 +175,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -198,7 +198,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -208,23 +208,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -232,7 +232,7 @@ else i32.const 2112 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1792 @@ -242,7 +242,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 2116 @@ -257,27 +257,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -365,19 +365,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -402,9 +402,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -412,17 +412,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -710,10 +710,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -725,15 +725,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -763,7 +763,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -799,12 +799,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -822,11 +822,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 18592 @@ -834,14 +834,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -851,17 +851,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1288,16 +1288,16 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 2032 i32.store - local.get $1 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -1306,7 +1306,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $4 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1360,7 +1360,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1368,7 +1368,7 @@ memory.size local.tee $0 i32.const 4 - local.get $2 + local.get $1 i32.load offset=1568 local.get $0 i32.const 16 @@ -1383,16 +1383,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $3 local.get $0 - local.get $4 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1400,7 +1400,7 @@ unreachable end end - local.get $2 + local.get $1 local.get $0 i32.const 16 i32.shl @@ -1408,7 +1408,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $1 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1435,12 +1435,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 @@ -1450,7 +1450,7 @@ i32.ge_u if local.get $0 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1459,19 +1459,19 @@ local.get $0 i32.const 32 i32.add - local.tee $4 + local.tee $3 local.get $5 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 - local.get $4 + local.get $1 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1483,8 +1483,8 @@ i32.const -4 i32.and i32.add - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.load i32.const -3 i32.and @@ -1497,26 +1497,26 @@ i32.const 4 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $3 i32.load offset=8 - local.set $4 + local.set $1 local.get $0 global.get $~lib/rt/itcms/white - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $4 + local.get $1 i32.store offset=8 - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $3 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1537,7 +1537,7 @@ local.get $0 i32.const 4 i32.add - local.tee $2 + local.tee $1 i32.const 1 i32.sub i32.const 0 @@ -1548,17 +1548,17 @@ local.get $0 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $1 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $1 i32.const 3 i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $4 local.get $0 i32.store local.get $0 @@ -1587,7 +1587,7 @@ i32.load offset=4 i32.const 3 i32.and - local.tee $2 + local.tee $1 global.get $~lib/rt/itcms/white i32.eqz i32.eq @@ -1598,7 +1598,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $2 + local.get $1 i32.const 3 i32.eq i32.and @@ -1612,7 +1612,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer diff --git a/tests/compiler/getter-call.optimized.wat b/tests/compiler/getter-call.optimized.wat index 96b2f6e2bf..84c7a62ba2 100644 --- a/tests/compiler/getter-call.optimized.wat +++ b/tests/compiler/getter-call.optimized.wat @@ -167,19 +167,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -204,9 +204,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -214,17 +214,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -512,10 +512,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -527,15 +527,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -565,7 +565,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -601,12 +601,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -624,11 +624,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17904 @@ -636,14 +636,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -653,17 +653,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1108,7 +1108,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $4 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1185,16 +1185,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $3 local.get $0 - local.get $4 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1242,7 +1242,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 @@ -1252,7 +1252,7 @@ i32.ge_u if local.get $0 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1261,7 +1261,7 @@ local.get $0 i32.const 32 i32.add - local.tee $4 + local.tee $3 local.get $5 i32.const 4 i32.sub @@ -1269,11 +1269,11 @@ i32.or i32.store local.get $1 - local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1299,26 +1299,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $4 + local.set $1 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $4 + local.get $1 i32.store offset=8 - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1330,7 +1330,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $3 + local.get $4 local.get $0 i32.const 20 i32.add @@ -1367,19 +1367,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1389,22 +1389,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17900 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1418,9 +1418,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1430,23 +1430,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1454,7 +1454,7 @@ else i32.const 1472 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1248 @@ -1464,7 +1464,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1476 @@ -1479,28 +1479,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/heap.optimized.wat b/tests/compiler/heap.optimized.wat index 2bf2e3abb5..0bb800d02b 100644 --- a/tests/compiler/heap.optimized.wat +++ b/tests/compiler/heap.optimized.wat @@ -109,19 +109,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -146,9 +146,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -156,17 +156,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -454,10 +454,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -469,15 +469,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -507,7 +507,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -543,12 +543,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -566,11 +566,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17664 @@ -578,14 +578,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -595,17 +595,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -851,34 +851,34 @@ local.get $0 local.get $1 call $~lib/rt/tlsf/prepareSize - local.tee $2 - call $~lib/rt/tlsf/searchBlock local.tee $1 + call $~lib/rt/tlsf/searchBlock + local.tee $2 i32.eqz if memory.size - local.tee $1 - local.get $2 + local.tee $2 + local.get $1 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $2 + local.get $1 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $2 + local.get $1 i32.add else - local.get $2 + local.get $1 end i32.const 4 local.get $0 i32.load offset=1568 - local.get $1 + local.get $2 i32.const 16 i32.shl i32.const 4 @@ -893,7 +893,7 @@ i32.const 16 i32.shr_u local.tee $3 - local.get $1 + local.get $2 local.get $3 i32.gt_s select @@ -910,7 +910,7 @@ end end local.get $0 - local.get $1 + local.get $2 i32.const 16 i32.shl memory.size @@ -918,9 +918,9 @@ i32.shl call $~lib/rt/tlsf/addMemory local.get $0 - local.get $2 + local.get $1 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -931,11 +931,11 @@ unreachable end end - local.get $1 + local.get $2 i32.load i32.const -4 i32.and - local.get $2 + local.get $1 i32.lt_u if i32.const 0 @@ -946,13 +946,13 @@ unreachable end local.get $0 - local.get $1 + local.get $2 call $~lib/rt/tlsf/removeBlock local.get $0 - local.get $1 local.get $2 - call $~lib/rt/tlsf/prepareBlock local.get $1 + call $~lib/rt/tlsf/prepareBlock + local.get $2 ) (func $~lib/memory/heap.alloc (param $0 i32) (result i32) global.get $~lib/rt/tlsf/ROOT @@ -1451,105 +1451,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -1581,41 +1591,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -1701,7 +1713,7 @@ local.get $0 local.get $2 call $~lib/rt/tlsf/allocateBlock - local.tee $7 + local.tee $6 i32.const 4 i32.add local.set $2 @@ -1709,7 +1721,7 @@ i32.load i32.const -4 i32.and - local.set $6 + local.set $7 block $~lib/util/memory/memmove|inlined.0 local.get $2 local.get $1 @@ -1721,10 +1733,10 @@ local.get $3 local.get $2 i32.sub - local.get $6 + local.get $7 i32.sub i32.const 0 - local.get $6 + local.get $7 i32.const 1 i32.shl i32.sub @@ -1732,7 +1744,7 @@ if local.get $2 local.get $3 - local.get $6 + local.get $7 call $~lib/util/memory/memcpy br $~lib/util/memory/memmove|inlined.0 end @@ -1753,32 +1765,32 @@ i32.const 7 i32.and if - local.get $6 + local.get $7 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $6 + local.get $7 i32.const 1 i32.sub - local.set $6 + local.set $7 local.get $2 - local.tee $4 + local.tee $5 i32.const 1 i32.add local.set $2 local.get $3 - local.tee $5 + local.tee $4 i32.const 1 i32.add local.set $3 - local.get $4 local.get $5 + local.get $4 i32.load8_u i32.store8 br $while-continue|0 end end loop $while-continue|1 - local.get $6 + local.get $7 i32.const 8 i32.ge_u if @@ -1786,10 +1798,10 @@ local.get $3 i64.load i64.store - local.get $6 + local.get $7 i32.const 8 i32.sub - local.set $6 + local.set $7 local.get $2 i32.const 8 i32.add @@ -1803,26 +1815,26 @@ end end loop $while-continue|2 - local.get $6 + local.get $7 if local.get $2 - local.tee $4 + local.tee $5 i32.const 1 i32.add local.set $2 local.get $3 - local.tee $5 + local.tee $4 i32.const 1 i32.add local.set $3 - local.get $4 local.get $5 + local.get $4 i32.load8_u i32.store8 - local.get $6 + local.get $7 i32.const 1 i32.sub - local.set $6 + local.set $7 br $while-continue|2 end end @@ -1837,22 +1849,22 @@ if loop $while-continue|3 local.get $2 - local.get $6 + local.get $7 i32.add i32.const 7 i32.and if - local.get $6 + local.get $7 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 local.get $2 - local.get $6 + local.get $7 i32.const 1 i32.sub - local.tee $6 + local.tee $7 i32.add local.get $3 - local.get $6 + local.get $7 i32.add i32.load8_u i32.store8 @@ -1860,18 +1872,18 @@ end end loop $while-continue|4 - local.get $6 + local.get $7 i32.const 8 i32.ge_u if local.get $2 - local.get $6 + local.get $7 i32.const 8 i32.sub - local.tee $6 + local.tee $7 i32.add local.get $3 - local.get $6 + local.get $7 i32.add i64.load i64.store @@ -1880,16 +1892,16 @@ end end loop $while-continue|5 - local.get $6 + local.get $7 if local.get $2 - local.get $6 + local.get $7 i32.const 1 i32.sub - local.tee $6 + local.tee $7 i32.add local.get $3 - local.get $6 + local.get $7 i32.add i32.load8_u i32.store8 @@ -1912,7 +1924,7 @@ local.get $1 call $~lib/rt/tlsf/insertBlock end - local.get $7 + local.get $6 ) (func $~lib/memory/heap.realloc (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -1945,13 +1957,13 @@ block $folding-inner0 local.get $1 call $~lib/rt/tlsf/prepareSize - local.tee $6 + local.tee $3 local.get $0 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and - local.tee $7 + local.tee $5 i32.le_u br_if $folding-inner0 local.get $0 @@ -1962,17 +1974,17 @@ i32.const -4 i32.and i32.add - local.tee $4 + local.tee $6 i32.load - local.tee $5 + local.tee $7 i32.const 1 i32.and if - local.get $6 - local.get $7 + local.get $3 + local.get $5 i32.const 4 i32.add - local.get $5 + local.get $7 i32.const -4 i32.and i32.add @@ -1980,11 +1992,11 @@ i32.le_u if local.get $2 - local.get $4 + local.get $6 call $~lib/rt/tlsf/removeBlock local.get $0 local.get $5 - local.get $3 + local.get $4 i32.const 3 i32.and i32.or @@ -2000,7 +2012,7 @@ end local.get $2 local.get $0 - local.get $6 + local.get $3 call $~lib/rt/tlsf/prepareBlock local.get $0 end diff --git a/tests/compiler/implicit-getter-setter.optimized.wat b/tests/compiler/implicit-getter-setter.optimized.wat index 8944071924..4f20075881 100644 --- a/tests/compiler/implicit-getter-setter.optimized.wat +++ b/tests/compiler/implicit-getter-setter.optimized.wat @@ -117,7 +117,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -140,7 +140,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -150,23 +150,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -174,7 +174,7 @@ else i32.const 1440 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1248 @@ -184,7 +184,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 1444 @@ -199,27 +199,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -307,19 +307,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -344,9 +344,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -354,17 +354,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -652,10 +652,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -667,15 +667,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -705,7 +705,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -741,12 +741,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -764,11 +764,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17872 @@ -776,14 +776,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -793,17 +793,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1276,17 +1276,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1295,19 +1295,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1333,26 +1333,26 @@ i32.const 4 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $0 + local.tee $2 i32.load offset=8 - local.set $2 + local.set $0 local.get $1 global.get $~lib/rt/itcms/white - local.get $0 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $2 + local.get $0 i32.store offset=8 - local.get $2 - local.get $2 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $0 + local.get $2 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total diff --git a/tests/compiler/infer-array.optimized.wat b/tests/compiler/infer-array.optimized.wat index afa647c89b..1d9c3e02dc 100644 --- a/tests/compiler/infer-array.optimized.wat +++ b/tests/compiler/infer-array.optimized.wat @@ -143,7 +143,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -166,7 +166,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -176,23 +176,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -200,7 +200,7 @@ else i32.const 2112 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1280 @@ -210,7 +210,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 2116 @@ -225,27 +225,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -333,19 +333,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -370,9 +370,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -380,17 +380,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -678,10 +678,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -693,15 +693,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -731,7 +731,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -767,12 +767,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -790,11 +790,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 18608 @@ -802,14 +802,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -819,17 +819,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1309,7 +1309,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1335,32 +1335,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $3 i32.add else - local.get $4 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1393,7 +1393,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1401,8 +1401,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1419,7 +1419,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $3 i32.lt_u if i32.const 0 @@ -1429,13 +1429,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1451,7 +1451,7 @@ local.get $5 i32.const -4 i32.and - local.get $4 + local.get $3 i32.sub local.tee $6 i32.const 16 @@ -1461,23 +1461,23 @@ local.get $5 i32.const 2 i32.and - local.get $4 + local.get $3 i32.or i32.store - local.get $4 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 + local.tee $3 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1507,26 +1507,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1541,7 +1541,7 @@ local.get $2 i32.const 20 i32.add - local.tee $2 + local.tee $3 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1553,7 +1553,7 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1568,12 +1568,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $3 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $2 i32.const 3 i32.sub i32.const 0 @@ -1585,7 +1585,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 0 @@ -1600,25 +1600,25 @@ i32.sub i32.const 3 i32.and - local.tee $3 + local.tee $2 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $3 + local.get $2 i32.sub i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.add - local.tee $3 + local.tee $0 i32.const 4 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1628,17 +1628,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $0 i32.const 12 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 8 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1654,22 +1654,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $3 + local.get $0 i32.const 28 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 24 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 20 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 16 i32.sub i32.const 0 @@ -1680,11 +1680,11 @@ i32.and i32.const 24 i32.add - local.tee $3 + local.tee $0 i32.add local.set $1 + local.get $2 local.get $0 - local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1716,7 +1716,7 @@ end end end - local.get $2 + local.get $3 ) (func $~lib/util/memory/memcpy (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -2173,105 +2173,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2303,41 +2313,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2557,11 +2569,11 @@ drop global.get $~lib/memory/__stack_pointer call $infer-array/Ref#constructor - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer call $infer-array/Ref#constructor - local.tee $1 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -2570,29 +2582,29 @@ i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.load offset=4 i32.store offset=12 - local.get $3 - i32.const 0 local.get $0 + i32.const 0 + local.get $1 call $~lib/array/Array#__uset - local.get $3 + local.get $0 i32.const 1 - local.get $1 + local.get $2 call $~lib/array/Array#__uset - local.get $3 + local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $infer-array/Ref#constructor - local.tee $0 + local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $infer-array/Ref#constructor - local.tee $1 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -2601,25 +2613,25 @@ i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.load offset=4 i32.store offset=8 - local.get $3 - i32.const 0 local.get $0 + i32.const 0 + local.get $1 call $~lib/array/Array#__uset - local.get $3 + local.get $0 i32.const 1 - local.get $1 + local.get $2 call $~lib/array/Array#__uset - local.get $3 + local.get $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer call $infer-array/Ref#constructor - local.tee $0 + local.tee $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -2628,21 +2640,21 @@ i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.load offset=4 i32.store offset=12 - local.get $2 - i32.const 0 local.get $0 + i32.const 0 + local.get $1 call $~lib/array/Array#__uset - local.get $2 + local.get $0 i32.const 1 i32.const 0 call $~lib/array/Array#__uset - local.get $2 + local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 2 @@ -2686,13 +2698,13 @@ i32.const 11 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 i32.store offset=12 - local.get $1 + local.get $0 i32.const 0 i32.const 1 i32.const 2 @@ -2700,7 +2712,7 @@ i32.const 1936 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 1 i32.const 1 i32.const 2 @@ -2708,7 +2720,7 @@ i32.const 1968 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 16 @@ -2778,19 +2790,19 @@ i32.const 2 i32.shl i32.add - local.set $0 + local.set $3 loop $while-continue|0 - local.get $0 local.get $2 - i32.gt_u + local.get $3 + i32.lt_u if local.get $2 i32.load - local.tee $3 + local.tee $0 if - local.get $3 + local.get $0 if - local.get $3 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -2841,9 +2853,9 @@ local.get $0 local.get $1 i32.shl - local.tee $9 - local.set $8 - local.get $9 + local.tee $8 + local.set $9 + local.get $8 i32.const 0 call $~lib/rt/itcms/__new local.set $4 @@ -2858,10 +2870,10 @@ local.get $3 local.get $1 i32.sub - local.get $8 + local.get $9 i32.sub i32.const 0 - local.get $8 + local.get $9 i32.const 1 i32.shl i32.sub @@ -2869,7 +2881,7 @@ if local.get $1 local.get $3 - local.get $8 + local.get $9 call $~lib/util/memory/memcpy br $~lib/util/memory/memmove|inlined.0 end @@ -2890,32 +2902,32 @@ i32.const 7 i32.and if - local.get $8 + local.get $9 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $8 + local.get $9 i32.const 1 i32.sub - local.set $8 + local.set $9 local.get $1 - local.tee $5 + local.tee $6 i32.const 1 i32.add local.set $1 local.get $3 - local.tee $6 + local.tee $5 i32.const 1 i32.add local.set $3 - local.get $5 local.get $6 + local.get $5 i32.load8_u i32.store8 br $while-continue|0 end end loop $while-continue|1 - local.get $8 + local.get $9 i32.const 8 i32.ge_u if @@ -2923,10 +2935,10 @@ local.get $3 i64.load i64.store - local.get $8 + local.get $9 i32.const 8 i32.sub - local.set $8 + local.set $9 local.get $1 i32.const 8 i32.add @@ -2940,26 +2952,26 @@ end end loop $while-continue|2 - local.get $8 + local.get $9 if local.get $1 - local.tee $5 + local.tee $6 i32.const 1 i32.add local.set $1 local.get $3 - local.tee $6 + local.tee $5 i32.const 1 i32.add local.set $3 - local.get $5 local.get $6 + local.get $5 i32.load8_u i32.store8 - local.get $8 + local.get $9 i32.const 1 i32.sub - local.set $8 + local.set $9 br $while-continue|2 end end @@ -2974,22 +2986,22 @@ if loop $while-continue|3 local.get $1 - local.get $8 + local.get $9 i32.add i32.const 7 i32.and if - local.get $8 + local.get $9 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 local.get $1 - local.get $8 + local.get $9 i32.const 1 i32.sub - local.tee $8 + local.tee $9 i32.add local.get $3 - local.get $8 + local.get $9 i32.add i32.load8_u i32.store8 @@ -2997,18 +3009,18 @@ end end loop $while-continue|4 - local.get $8 + local.get $9 i32.const 8 i32.ge_u if local.get $1 - local.get $8 + local.get $9 i32.const 8 i32.sub - local.tee $8 + local.tee $9 i32.add local.get $3 - local.get $8 + local.get $9 i32.add i64.load i64.store @@ -3017,16 +3029,16 @@ end end loop $while-continue|5 - local.get $8 + local.get $9 if local.get $1 - local.get $8 + local.get $9 i32.const 1 i32.sub - local.tee $8 + local.tee $9 i32.add local.get $3 - local.get $8 + local.get $9 i32.add i32.load8_u i32.store8 @@ -3056,7 +3068,7 @@ local.get $4 i32.store offset=4 local.get $1 - local.get $9 + local.get $8 i32.store offset=8 local.get $1 local.get $0 @@ -3144,16 +3156,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $0 i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $0 local.get $1 local.get $2 select @@ -3162,7 +3174,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $3 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/infer-generic.optimized.wat b/tests/compiler/infer-generic.optimized.wat index ffd7fb9291..0ffbc3de7e 100644 --- a/tests/compiler/infer-generic.optimized.wat +++ b/tests/compiler/infer-generic.optimized.wat @@ -189,19 +189,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -226,9 +226,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -236,17 +236,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -534,10 +534,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -549,15 +549,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -587,7 +587,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -623,12 +623,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -646,11 +646,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 18080 @@ -658,14 +658,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -675,17 +675,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1093,34 +1093,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 1152 i32.store - local.get $2 + local.get $1 i32.const 1200 i32.store offset=4 i32.const 1164 i32.load - local.set $2 + local.set $1 loop $for-loop|0 - local.get $2 + local.get $1 i32.const 1164 i32.load - local.tee $3 + local.tee $2 + local.get $1 local.get $2 - local.get $3 i32.lt_s select local.get $0 i32.gt_s if - local.get $1 + local.get $3 i32.const 1156 i32.load local.get $0 @@ -1133,7 +1133,7 @@ i32.const 1200 i32.load call_indirect $0 (type $i32_f32_i32_i32_=>_i32) - local.set $1 + local.set $3 local.get $0 i32.const 1 i32.add @@ -1184,7 +1184,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $4 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1261,16 +1261,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $2 local.get $0 - local.get $4 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1318,7 +1318,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $4 + local.tee $2 i32.const -4 i32.and i32.const 28 @@ -1328,7 +1328,7 @@ i32.ge_u if local.get $0 - local.get $4 + local.get $2 i32.const 2 i32.and i32.const 28 @@ -1337,7 +1337,7 @@ local.get $0 i32.const 32 i32.add - local.tee $4 + local.tee $2 local.get $5 i32.const 4 i32.sub @@ -1345,11 +1345,11 @@ i32.or i32.store local.get $1 - local.get $4 + local.get $2 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $4 + local.get $2 i32.const -2 i32.and i32.store @@ -1375,26 +1375,26 @@ i32.const 4 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 - local.set $4 + local.set $1 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $4 + local.get $1 i32.store offset=8 - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1436,7 +1436,7 @@ i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $4 local.get $0 i32.store local.get $0 @@ -1503,19 +1503,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1525,22 +1525,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 18068 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1554,9 +1554,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1566,23 +1566,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1590,7 +1590,7 @@ else i32.const 1616 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1424 @@ -1600,7 +1600,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1620 @@ -1615,28 +1615,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/inlining.optimized.wat b/tests/compiler/inlining.optimized.wat index 56f66ed08c..de83a638dc 100644 --- a/tests/compiler/inlining.optimized.wat +++ b/tests/compiler/inlining.optimized.wat @@ -176,19 +176,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -213,9 +213,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -223,17 +223,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -521,10 +521,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -536,15 +536,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -574,7 +574,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -610,12 +610,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -633,11 +633,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17968 @@ -645,14 +645,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -662,17 +662,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1152,7 +1152,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1178,32 +1178,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $3 i32.add else - local.get $4 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1236,7 +1236,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1244,8 +1244,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1262,7 +1262,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $3 i32.lt_u if i32.const 0 @@ -1272,13 +1272,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1294,7 +1294,7 @@ local.get $5 i32.const -4 i32.and - local.get $4 + local.get $3 i32.sub local.tee $6 i32.const 16 @@ -1304,23 +1304,23 @@ local.get $5 i32.const 2 i32.and - local.get $4 + local.get $3 i32.or i32.store - local.get $4 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 + local.tee $3 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1350,26 +1350,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1384,7 +1384,7 @@ local.get $2 i32.const 20 i32.add - local.tee $2 + local.tee $3 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1396,7 +1396,7 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1411,12 +1411,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $3 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $2 i32.const 3 i32.sub i32.const 0 @@ -1428,7 +1428,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 0 @@ -1443,25 +1443,25 @@ i32.sub i32.const 3 i32.and - local.tee $3 + local.tee $2 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $3 + local.get $2 i32.sub i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.add - local.tee $3 + local.tee $0 i32.const 4 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1471,17 +1471,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $0 i32.const 12 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 8 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1497,22 +1497,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $3 + local.get $0 i32.const 28 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 24 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 20 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 16 i32.sub i32.const 0 @@ -1523,11 +1523,11 @@ i32.and i32.const 24 i32.add - local.tee $3 + local.tee $0 i32.add local.set $1 + local.get $2 local.get $0 - local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1559,7 +1559,7 @@ end end end - local.get $2 + local.get $3 ) (func $~lib/rt/__visit_members (param $0 i32) block $invalid @@ -1805,19 +1805,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1827,22 +1827,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17964 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1856,9 +1856,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1868,23 +1868,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1892,7 +1892,7 @@ else i32.const 1520 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1328 @@ -1902,7 +1902,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1524 @@ -1917,28 +1917,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/instanceof-class.optimized.wat b/tests/compiler/instanceof-class.optimized.wat index ec2733c6ae..70c3baba31 100644 --- a/tests/compiler/instanceof-class.optimized.wat +++ b/tests/compiler/instanceof-class.optimized.wat @@ -184,19 +184,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -221,9 +221,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -231,17 +231,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -529,10 +529,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -544,15 +544,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -582,7 +582,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -618,12 +618,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -641,11 +641,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17952 @@ -653,14 +653,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -670,17 +670,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1153,17 +1153,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1172,19 +1172,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1210,26 +1210,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $0 + local.tee $2 i32.load offset=8 - local.set $2 + local.set $0 local.get $1 global.get $~lib/rt/itcms/white - local.get $0 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $2 + local.get $0 i32.store offset=8 - local.get $2 - local.get $2 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $0 + local.get $2 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1524,19 +1524,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1546,22 +1546,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17948 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1575,9 +1575,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1587,23 +1587,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1611,7 +1611,7 @@ else i32.const 1504 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1248 @@ -1621,7 +1621,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1508 @@ -1636,28 +1636,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/issues/1095.optimized.wat b/tests/compiler/issues/1095.optimized.wat index 9ab8c0f6bd..548d222dd1 100644 --- a/tests/compiler/issues/1095.optimized.wat +++ b/tests/compiler/issues/1095.optimized.wat @@ -111,7 +111,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -134,7 +134,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -144,23 +144,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -168,7 +168,7 @@ else i32.const 1584 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1248 @@ -178,7 +178,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 1588 @@ -193,27 +193,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -301,19 +301,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -338,9 +338,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -348,17 +348,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -646,10 +646,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -661,15 +661,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -699,7 +699,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -735,12 +735,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -758,11 +758,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 18016 @@ -770,14 +770,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -787,17 +787,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1226,18 +1226,19 @@ local.tee $0 i32.const 0 i32.store + local.get $0 global.get $~lib/rt/itcms/total global.get $~lib/rt/itcms/threshold i32.ge_u if block $__inlined_func$~lib/rt/itcms/interrupt i32.const 2048 - local.set $1 + local.set $0 loop $do-loop|0 - local.get $1 + local.get $0 call $~lib/rt/itcms/step i32.sub - local.set $1 + local.set $0 global.get $~lib/rt/itcms/state i32.eqz if @@ -1253,14 +1254,14 @@ global.set $~lib/rt/itcms/threshold br $__inlined_func$~lib/rt/itcms/interrupt end - local.get $1 + local.get $0 i32.const 0 i32.gt_s br_if $do-loop|0 end global.get $~lib/rt/itcms/total - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 @@ -1277,17 +1278,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if memory.size - local.tee $1 + local.tee $0 i32.const 4 - local.get $3 + local.get $2 i32.load offset=1568 - local.get $1 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1300,16 +1301,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 - local.get $1 - local.get $2 + local.tee $3 + local.get $0 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1317,17 +1318,17 @@ unreachable end end - local.get $3 - local.get $1 + local.get $2 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1338,7 +1339,7 @@ unreachable end end - local.get $1 + local.get $0 i32.load i32.const -4 i32.and @@ -1352,50 +1353,50 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $1 + local.get $2 + local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $1 + local.get $0 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $2 + local.tee $4 i32.const 16 i32.ge_u if - local.get $1 - local.get $4 + local.get $0 + local.get $3 i32.const 2 i32.and i32.const 28 i32.or i32.store - local.get $1 + local.get $0 i32.const 32 i32.add - local.tee $4 - local.get $2 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else - local.get $1 - local.get $4 + local.get $0 + local.get $3 i32.const -2 i32.and i32.store - local.get $1 + local.get $0 i32.const 4 i32.add - local.get $1 + local.get $0 i32.load i32.const -4 i32.and @@ -1407,37 +1408,37 @@ i32.and i32.store end - local.get $1 + local.get $0 i32.const 3 i32.store offset=12 - local.get $1 + local.get $0 i32.const 4 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $3 i32.load offset=8 - local.set $3 - local.get $1 + local.set $2 + local.get $0 global.get $~lib/rt/itcms/white - local.get $2 + local.get $3 i32.or i32.store offset=4 - local.get $1 - local.get $3 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 - local.get $1 + local.get $3 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total - local.get $1 + local.get $0 i32.load i32.const -4 i32.and @@ -1445,13 +1446,13 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $1 + local.get $0 i32.const 20 i32.add - local.tee $1 + local.tee $0 i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 4 i32.add local.tee $2 @@ -1459,10 +1460,10 @@ i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=2 local.get $2 @@ -1476,12 +1477,11 @@ i32.const 0 i32.store8 local.get $0 - local.get $1 i32.store - local.get $1 + local.get $0 i32.const 1456 i32.store - local.get $1 + local.get $0 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white @@ -1491,13 +1491,13 @@ i32.and i32.eq if - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $1 global.get $~lib/rt/itcms/white i32.eqz i32.eq @@ -1508,7 +1508,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $1 i32.const 3 i32.eq i32.and @@ -1523,10 +1523,10 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -1535,15 +1535,15 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 local.get $1 + local.get $0 i32.load - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.eqz if i32.const 1488 @@ -1553,47 +1553,47 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 if - local.get $1 + local.get $0 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white - local.get $0 + local.get $1 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $1 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $1 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $1 + local.get $0 i32.const 3 i32.eq i32.and if - local.get $0 + local.get $1 call $~lib/rt/itcms/Object#makeGray end end diff --git a/tests/compiler/issues/1225.optimized.wat b/tests/compiler/issues/1225.optimized.wat index febd93c8f9..7675482de1 100644 --- a/tests/compiler/issues/1225.optimized.wat +++ b/tests/compiler/issues/1225.optimized.wat @@ -176,19 +176,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -213,9 +213,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -223,17 +223,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -521,10 +521,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -536,15 +536,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -574,7 +574,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -610,12 +610,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -633,11 +633,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17920 @@ -645,14 +645,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -662,17 +662,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1203,26 +1203,26 @@ i32.const 12 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 - local.set $2 + local.set $1 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1237,7 +1237,7 @@ local.get $0 i32.const 20 i32.add - local.tee $2 + local.tee $3 local.tee $0 i32.const 0 i32.store8 @@ -1289,7 +1289,7 @@ i32.sub i32.const -4 i32.and - local.tee $3 + local.tee $2 local.get $0 i32.add local.tee $1 @@ -1298,7 +1298,7 @@ i32.const 0 i32.store block $~lib/util/memory/memset|inlined.0 - local.get $3 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1318,7 +1318,7 @@ i32.sub i32.const 0 i32.store - local.get $3 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1363,7 +1363,7 @@ local.tee $4 i32.add local.set $1 - local.get $3 + local.get $2 local.get $4 i32.sub local.set $0 @@ -1396,7 +1396,7 @@ end end end - local.get $2 + local.get $3 ) (func $issues/1225/normal (result i32) global.get $issues/1225/x @@ -1585,19 +1585,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1607,22 +1607,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17908 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1636,9 +1636,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1648,23 +1648,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1672,7 +1672,7 @@ else i32.const 1488 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1248 @@ -1682,7 +1682,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1492 @@ -1697,28 +1697,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/issues/1699.optimized.wat b/tests/compiler/issues/1699.optimized.wat index 8806728f23..289c58d3ee 100644 --- a/tests/compiler/issues/1699.optimized.wat +++ b/tests/compiler/issues/1699.optimized.wat @@ -118,7 +118,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -141,7 +141,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -151,23 +151,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -175,7 +175,7 @@ else i32.const 1712 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1344 @@ -185,7 +185,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 1716 @@ -200,27 +200,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -308,19 +308,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -345,9 +345,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -355,17 +355,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -653,10 +653,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -668,15 +668,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -706,7 +706,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -742,12 +742,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -765,11 +765,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 18144 @@ -777,14 +777,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -794,17 +794,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1282,14 +1282,14 @@ i32.sub i32.const -4 i32.and - local.tee $1 - i32.add local.tee $2 + i32.add + local.tee $1 i32.const 4 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1299,17 +1299,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 12 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1325,22 +1325,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $2 + local.get $1 i32.const 28 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 20 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 16 i32.sub i32.const 0 @@ -1351,11 +1351,11 @@ i32.and i32.const 24 i32.add - local.tee $2 + local.tee $1 i32.add local.set $0 - local.get $1 local.get $2 + local.get $1 i32.sub local.set $1 loop $while-continue|0 @@ -1460,7 +1460,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1486,32 +1486,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1527,16 +1527,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1544,7 +1544,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1552,8 +1552,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1570,7 +1570,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1580,13 +1580,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1599,40 +1599,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -1658,26 +1658,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2152,105 +2152,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2282,41 +2292,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2424,7 +2436,7 @@ i32.const 1 i32.add local.tee $11 - local.tee $5 + local.tee $3 local.get $0 i32.load offset=8 local.tee $9 @@ -2432,7 +2444,7 @@ i32.shr_u i32.gt_u if - local.get $5 + local.get $3 i32.const 268435455 i32.gt_u if @@ -2447,16 +2459,16 @@ local.get $9 i32.const 1 i32.shl - local.tee $3 + local.tee $4 i32.const 1073741820 - local.get $3 + local.get $4 i32.const 1073741820 i32.lt_u select local.tee $4 - local.get $5 + local.get $3 i32.const 8 - local.get $5 + local.get $3 i32.const 8 i32.gt_u select @@ -2468,14 +2480,14 @@ i32.lt_u select local.tee $10 - local.tee $6 + local.tee $5 local.get $0 i32.load local.tee $12 local.tee $3 i32.const 20 i32.sub - local.tee $5 + local.tee $6 i32.load i32.const -4 i32.and @@ -2483,24 +2495,24 @@ i32.sub i32.le_u if - local.get $5 local.get $6 + local.get $5 i32.store offset=16 br $__inlined_func$~lib/rt/itcms/__renew end - local.get $6 local.get $5 + local.get $6 i32.load offset=12 call $~lib/rt/itcms/__new local.tee $7 local.set $4 - local.get $6 local.get $5 + local.get $6 i32.load offset=16 - local.tee $5 + local.tee $6 local.get $5 local.get $6 - i32.gt_u + i32.lt_u select local.set $8 block $~lib/util/memory/memmove|inlined.0 @@ -2551,17 +2563,17 @@ i32.sub local.set $8 local.get $4 - local.tee $6 + local.tee $5 i32.const 1 i32.add local.set $4 local.get $3 - local.tee $5 + local.tee $6 i32.const 1 i32.add local.set $3 - local.get $6 local.get $5 + local.get $6 i32.load8_u i32.store8 br $while-continue|0 @@ -2596,17 +2608,17 @@ local.get $8 if local.get $4 - local.tee $6 + local.tee $5 i32.const 1 i32.add local.set $4 local.get $3 - local.tee $5 + local.tee $6 i32.const 1 i32.add local.set $3 - local.get $6 local.get $5 + local.get $6 i32.load8_u i32.store8 local.get $8 @@ -2786,13 +2798,13 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i64.const 0 i64.store offset=8 - local.get $1 + local.get $2 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -2826,23 +2838,23 @@ i32.const 32 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $2 + local.get $1 i32.const 32 call $~lib/memory/memory.fill local.get $0 - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 if local.get $0 - local.get $2 + local.get $1 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $2 + local.get $1 i32.store offset=4 local.get $0 i32.const 32 @@ -2854,7 +2866,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 local.get $0 i32.store call $issues/1699/MultiAssignmentTest#constructor @@ -2991,19 +3003,19 @@ i32.const 2 i32.shl i32.add - local.set $0 + local.set $3 loop $while-continue|0 - local.get $0 local.get $2 - i32.gt_u + local.get $3 + i32.lt_u if local.get $2 i32.load - local.tee $3 + local.tee $0 if - local.get $3 + local.get $0 if - local.get $3 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -3165,16 +3177,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $0 i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $0 local.get $1 local.get $2 select @@ -3183,7 +3195,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $3 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/logical.optimized.wat b/tests/compiler/logical.optimized.wat index e78eb6abf4..b7d590ba5c 100644 --- a/tests/compiler/logical.optimized.wat +++ b/tests/compiler/logical.optimized.wat @@ -164,19 +164,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -201,9 +201,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -211,17 +211,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -509,10 +509,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -524,15 +524,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -562,7 +562,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -598,12 +598,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -621,11 +621,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17920 @@ -633,14 +633,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -650,17 +650,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1173,7 +1173,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1250,16 +1250,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $0 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1307,7 +1307,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $2 i32.const -4 i32.and i32.const 28 @@ -1317,7 +1317,7 @@ i32.ge_u if local.get $0 - local.get $3 + local.get $2 i32.const 2 i32.and i32.const 28 @@ -1326,7 +1326,7 @@ local.get $0 i32.const 32 i32.add - local.tee $3 + local.tee $2 local.get $4 i32.const 4 i32.sub @@ -1334,11 +1334,11 @@ i32.or i32.store local.get $1 - local.get $3 + local.get $2 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $2 i32.const -2 i32.and i32.store @@ -1364,26 +1364,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1395,7 +1395,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $2 + local.get $3 local.get $0 i32.const 20 i32.add @@ -1415,19 +1415,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1437,22 +1437,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17908 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1466,9 +1466,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1478,23 +1478,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1502,7 +1502,7 @@ else i32.const 1488 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1296 @@ -1512,7 +1512,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1492 @@ -1527,28 +1527,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/managed-cast.optimized.wat b/tests/compiler/managed-cast.optimized.wat index c27b7d86f8..d695396e9a 100644 --- a/tests/compiler/managed-cast.optimized.wat +++ b/tests/compiler/managed-cast.optimized.wat @@ -168,19 +168,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -205,9 +205,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -215,17 +215,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -513,10 +513,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -528,15 +528,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -566,7 +566,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -602,12 +602,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -625,11 +625,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 18064 @@ -637,14 +637,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -654,17 +654,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1137,17 +1137,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1156,19 +1156,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1194,26 +1194,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $0 + local.tee $2 i32.load offset=8 - local.set $2 + local.set $0 local.get $1 global.get $~lib/rt/itcms/white - local.get $0 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $2 + local.get $0 i32.store offset=8 - local.get $2 - local.get $2 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $0 + local.get $2 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1362,9 +1362,9 @@ local.get $0 i32.store call $managed-cast/Cat#constructor - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 @@ -1378,29 +1378,29 @@ i32.const 0 i32.store block $__inlined_func$~lib/rt/__instanceof (result i32) - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1632 i32.load i32.le_u if loop $do-loop|0 i32.const 1 - local.get $1 + local.get $0 i32.const 3 i32.eq br_if $__inlined_func$~lib/rt/__instanceof drop - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1636 i32.add i32.load offset=4 - local.tee $1 + local.tee $0 br_if $do-loop|0 end end @@ -1416,20 +1416,20 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store + local.tee $0 local.get $1 + i32.store + local.get $0 i32.const 4 i32.add global.set $~lib/memory/__stack_pointer call $managed-cast/Cat#constructor - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -1438,10 +1438,10 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $1 + local.get $0 i32.eqz if i32.const 1456 @@ -1451,33 +1451,33 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $1 + local.get $0 i32.store offset=4 block $__inlined_func$~lib/rt/__instanceof11 (result i32) - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1632 i32.load i32.le_u if loop $do-loop|012 i32.const 1 - local.get $0 + local.get $1 i32.const 3 i32.eq br_if $__inlined_func$~lib/rt/__instanceof11 drop - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1636 i32.add i32.load offset=4 - local.tee $0 + local.tee $1 br_if $do-loop|012 end end @@ -1493,20 +1493,20 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 8 i32.add global.set $~lib/memory/__stack_pointer call $managed-cast/Cat#constructor - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store + local.tee $0 local.get $1 + i32.store + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -1519,29 +1519,29 @@ i32.const 0 i32.store block $__inlined_func$~lib/rt/__instanceof14 (result i32) - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1632 i32.load i32.le_u if loop $do-loop|015 i32.const 1 - local.get $1 + local.get $0 i32.const 3 i32.eq br_if $__inlined_func$~lib/rt/__instanceof14 drop - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1636 i32.add i32.load offset=4 - local.tee $1 + local.tee $0 br_if $do-loop|015 end end @@ -1557,19 +1557,19 @@ unreachable end local.get $2 - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer call $managed-cast/Cat#constructor - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store + local.tee $0 local.get $1 + i32.store + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -1581,32 +1581,32 @@ local.tee $2 i32.const 0 i32.store - local.get $0 + local.get $1 if block $__inlined_func$~lib/rt/__instanceof17 (result i32) - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1632 i32.load i32.le_u if loop $do-loop|018 i32.const 1 - local.get $1 + local.get $0 i32.const 3 i32.eq br_if $__inlined_func$~lib/rt/__instanceof17 drop - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1636 i32.add i32.load offset=4 - local.tee $1 + local.tee $0 br_if $do-loop|018 end end @@ -1623,10 +1623,10 @@ end else i32.const 0 - local.set $0 + local.set $1 end local.get $2 - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 @@ -1750,19 +1750,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1772,22 +1772,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 18060 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1801,9 +1801,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1813,23 +1813,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1837,7 +1837,7 @@ else i32.const 1632 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1248 @@ -1847,7 +1847,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1636 @@ -1862,28 +1862,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/memcpy.optimized.wat b/tests/compiler/memcpy.optimized.wat index 6c4100c920..4fc70c45a0 100644 --- a/tests/compiler/memcpy.optimized.wat +++ b/tests/compiler/memcpy.optimized.wat @@ -469,105 +469,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -599,41 +609,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 diff --git a/tests/compiler/new.optimized.wat b/tests/compiler/new.optimized.wat index fb2deaeeee..07d49c75a0 100644 --- a/tests/compiler/new.optimized.wat +++ b/tests/compiler/new.optimized.wat @@ -222,19 +222,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -259,9 +259,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -269,17 +269,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -567,10 +567,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -582,15 +582,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -620,7 +620,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -656,12 +656,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -679,11 +679,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17888 @@ -691,14 +691,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -708,17 +708,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1191,17 +1191,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1210,19 +1210,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1248,26 +1248,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $0 + local.tee $2 i32.load offset=8 - local.set $2 + local.set $0 local.get $1 global.get $~lib/rt/itcms/white - local.get $0 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $2 + local.get $0 i32.store offset=8 - local.get $2 - local.get $2 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $0 + local.get $2 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1566,19 +1566,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1588,22 +1588,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17884 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1617,9 +1617,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1629,23 +1629,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1653,7 +1653,7 @@ else i32.const 1440 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1248 @@ -1663,7 +1663,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1444 @@ -1678,28 +1678,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/number.optimized.wat b/tests/compiler/number.optimized.wat index 9d9b665b8f..4eed6a3b94 100644 --- a/tests/compiler/number.optimized.wat +++ b/tests/compiler/number.optimized.wat @@ -211,19 +211,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -248,9 +248,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -258,17 +258,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -556,10 +556,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -571,15 +571,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -609,7 +609,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -645,12 +645,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -668,11 +668,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 21072 @@ -680,14 +680,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -697,17 +697,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1187,7 +1187,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $3 local.get $1 i32.const 1073741820 i32.gt_u @@ -1213,32 +1213,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size local.tee $1 - local.get $3 + local.get $2 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $2 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $2 i32.add else - local.get $3 + local.get $2 end i32.const 4 - local.get $2 + local.get $3 i32.load offset=1568 local.get $1 i32.const 16 @@ -1271,7 +1271,7 @@ unreachable end end - local.get $2 + local.get $3 local.get $1 i32.const 16 i32.shl @@ -1279,8 +1279,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1297,7 +1297,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $2 i32.lt_u if i32.const 0 @@ -1307,13 +1307,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load local.set $4 - local.get $3 + local.get $2 i32.const 4 i32.add i32.const 15 @@ -1329,7 +1329,7 @@ local.get $4 i32.const -4 i32.and - local.get $3 + local.get $2 i32.sub local.tee $5 i32.const 16 @@ -1339,23 +1339,23 @@ local.get $4 i32.const 2 i32.and - local.get $3 + local.get $2 i32.or i32.store - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add i32.add - local.tee $3 + local.tee $2 local.get $5 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 local.get $3 + local.get $2 call $~lib/rt/tlsf/insertBlock else local.get $1 @@ -1385,26 +1385,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $2 local.get $1 global.get $~lib/rt/itcms/white - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $1 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $2 + local.get $3 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1419,7 +1419,7 @@ local.get $1 i32.const 20 i32.add - local.tee $2 + local.tee $3 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1431,7 +1431,7 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1446,12 +1446,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $3 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $2 i32.const 3 i32.sub i32.const 0 @@ -1463,7 +1463,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 0 @@ -1478,25 +1478,25 @@ i32.sub i32.const 3 i32.and - local.tee $3 + local.tee $2 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $3 + local.get $2 i32.sub i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.add - local.tee $3 + local.tee $0 i32.const 4 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1506,17 +1506,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $0 i32.const 12 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 8 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1532,22 +1532,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $3 + local.get $0 i32.const 28 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 24 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 20 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 16 i32.sub i32.const 0 @@ -1558,11 +1558,11 @@ i32.and i32.const 24 i32.add - local.tee $3 + local.tee $0 i32.add local.set $1 + local.get $2 local.get $0 - local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1594,7 +1594,7 @@ end end end - local.get $2 + local.get $3 ) (func $~lib/util/number/utoa32_dec_lut (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -1906,14 +1906,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2816,105 +2816,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2946,41 +2956,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3271,17 +3283,17 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 21 i32.le_s local.get $0 - local.get $2 + local.get $3 i32.le_s i32.and if (result i32) loop $for-loop|0 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -3298,26 +3310,26 @@ br $for-loop|0 end end - local.get $2 + local.get $3 i32.const 1 i32.shl i32.const 3456 i32.add i32.const 3145774 i32.store - local.get $2 + local.get $3 i32.const 2 i32.add else - local.get $2 + local.get $3 i32.const 21 i32.le_s - local.get $2 + local.get $3 i32.const 0 i32.gt_s i32.and if (result i32) - local.get $2 + local.get $3 i32.const 1 i32.shl i32.const 3456 @@ -3339,16 +3351,16 @@ i32.const 1 i32.add else - local.get $2 + local.get $3 i32.const 0 i32.le_s - local.get $2 + local.get $3 i32.const -6 i32.gt_s i32.and if (result i32) i32.const 2 - local.get $2 + local.get $3 i32.sub local.tee $2 i32.const 1 @@ -3395,13 +3407,13 @@ i32.const 3458 i32.const 101 i32.store16 - local.get $2 + local.get $3 i32.const 1 i32.sub local.tee $0 i32.const 0 i32.lt_s - local.tee $1 + local.tee $2 if i32.const 0 local.get $0 @@ -3409,56 +3421,56 @@ local.set $0 end local.get $0 - local.tee $2 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 + local.set $1 i32.const 3460 local.get $0 - local.get $2 + local.get $1 i32.const 1 i32.add local.tee $0 @@ -3466,7 +3478,7 @@ i32.const 3460 i32.const 45 i32.const 43 - local.get $1 + local.get $2 select i32.store16 local.get $0 @@ -3488,87 +3500,87 @@ local.get $1 i32.const 3456 i32.add - local.tee $1 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $1 + local.get $2 i32.const 4 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.tee $2 + local.tee $1 i32.const 0 i32.lt_s local.tee $4 if i32.const 0 - local.get $2 + local.get $1 i32.sub - local.set $2 + local.set $1 end - local.get $2 - local.tee $5 + local.get $1 + local.tee $3 i32.const 100000 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 100 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $5 + local.get $3 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $5 + local.get $3 i32.const 1000 i32.ge_u i32.add end else - local.get $5 + local.get $3 i32.const 10000000 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $5 + local.get $3 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $5 + local.get $3 i32.const 100000000 i32.ge_u i32.add end end - local.set $5 - local.get $2 - local.get $5 + local.set $3 + local.get $1 + local.get $3 i32.const 1 i32.add - local.tee $2 + local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $2 i32.const 45 i32.const 43 local.get $4 select i32.store16 offset=4 local.get $0 - local.get $2 + local.get $1 i32.add i32.const 2 i32.add @@ -3610,13 +3622,13 @@ call $start:number ) (func $start:number - (local $0 i32) + (local $0 i64) (local $1 i64) - (local $2 i64) + (local $2 i32) (local $3 i64) (local $4 i64) - (local $5 i64) - (local $6 i32) + (local $5 i32) + (local $6 i64) global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -3663,14 +3675,14 @@ global.set $~lib/rt/itcms/fromSpace global.get $number/a call $~lib/number/I32#toString - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store global.get $~lib/memory/__stack_pointer i32.const 3232 i32.store offset=4 - local.get $0 + local.get $2 i32.const 3232 call $~lib/string/String.__eq i32.eqz @@ -3702,22 +3714,22 @@ i32.load16_s global.set $~lib/util/number/_exp_pow global.get $~lib/util/number/_frc_pow - local.tee $2 + local.tee $1 i64.const 4294967295 i64.and - local.tee $3 + local.tee $0 i64.const 31 i64.shl local.tee $4 - local.set $1 - local.get $2 + local.set $3 + local.get $1 i64.const 32 i64.shr_u - local.tee $5 + local.tee $1 i64.const 31 i64.shl - local.tee $2 - local.get $3 + local.tee $6 + local.get $0 i64.const 10 i64.shl i64.const 32 @@ -3731,7 +3743,7 @@ local.get $4 i64.const 4294967295 i64.and - local.get $5 + local.get $1 i64.const 10 i64.shl i64.add @@ -3743,12 +3755,12 @@ i64.const 1 i64.sub local.set $4 - local.get $1 + local.get $3 i64.const 32 i64.shr_u - local.get $2 + local.get $6 i64.add - local.get $1 + local.get $3 i64.const 4294967295 i64.and i64.const 2147483647 @@ -3761,26 +3773,26 @@ i32.const 2 i32.add local.get $4 - local.get $5 + local.get $1 i64.const 2147483647 i64.mul - local.get $3 + local.get $0 i64.const 2147483647 i64.mul - local.get $3 + local.get $0 i64.const 4294966784 i64.mul i64.const 32 i64.shr_u i64.add - local.tee $1 + local.tee $0 i64.const 32 i64.shr_u i64.add - local.get $5 + local.get $1 i64.const 4294966784 i64.mul - local.get $1 + local.get $0 i64.const 4294967295 i64.and i64.add @@ -3797,28 +3809,28 @@ call $~lib/util/number/prettify i32.const 1 i32.shl - local.set $0 + local.set $5 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $5 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $2 i32.store - local.get $6 + local.get $2 i32.const 3456 - local.get $0 + local.get $5 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $6 + local.tee $5 + local.get $2 i32.store - local.get $0 + local.get $5 i32.const 4448 i32.store offset=4 - local.get $6 + local.get $2 i32.const 4448 call $~lib/string/String.__eq i32.eqz @@ -3832,15 +3844,15 @@ end i32.const 3 call $~lib/number/I32#toString - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.tee $6 - local.get $0 + local.tee $5 + local.get $2 i32.store - local.get $6 + local.get $5 i32.const 4480 i32.store offset=4 - local.get $0 + local.get $2 i32.const 4480 call $~lib/string/String.__eq i32.eqz @@ -3854,15 +3866,15 @@ end i32.const -5 call $~lib/number/I32#toString - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.tee $6 - local.get $0 + local.tee $5 + local.get $2 i32.store - local.get $6 + local.get $5 i32.const 4512 i32.store offset=4 - local.get $0 + local.get $2 i32.const 4512 call $~lib/string/String.__eq i32.eqz @@ -3876,15 +3888,15 @@ end i32.const 4 call $~lib/number/I32#toString - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.tee $6 - local.get $0 + local.tee $5 + local.get $2 i32.store - local.get $6 + local.get $5 i32.const 4544 i32.store offset=4 - local.get $0 + local.get $2 i32.const 4544 call $~lib/string/String.__eq i32.eqz @@ -3902,15 +3914,15 @@ global.set $number/a global.get $number/a call $~lib/number/I32#toString - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.tee $6 - local.get $0 + local.tee $5 + local.get $2 i32.store - local.get $6 + local.get $5 i32.const 4576 i32.store offset=4 - local.get $0 + local.get $2 i32.const 4576 call $~lib/string/String.__eq i32.eqz @@ -3928,15 +3940,15 @@ global.set $number/a global.get $number/a call $~lib/number/I32#toString - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.tee $6 - local.get $0 + local.tee $5 + local.get $2 i32.store - local.get $6 + local.get $5 i32.const 3232 i32.store offset=4 - local.get $0 + local.get $2 i32.const 3232 call $~lib/string/String.__eq i32.eqz @@ -3949,10 +3961,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i32.const 4608 i32.store - local.get $0 + local.get $2 i32.const 4608 i32.store offset=4 i32.const 4608 @@ -3968,10 +3980,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i32.const 4640 i32.store - local.get $0 + local.get $2 i32.const 4640 i32.store offset=4 i32.const 4640 @@ -3987,21 +3999,21 @@ unreachable end global.get $number/a - local.tee $0 + local.tee $2 i32.const 1 i32.add global.set $number/a - local.get $0 + local.get $2 call $~lib/number/I32#toString - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.tee $6 - local.get $0 + local.tee $5 + local.get $2 i32.store - local.get $6 + local.get $5 i32.const 3232 i32.store offset=4 - local.get $0 + local.get $2 i32.const 3232 call $~lib/string/String.__eq i32.eqz @@ -4014,21 +4026,21 @@ unreachable end global.get $number/a - local.tee $0 + local.tee $2 i32.const 1 i32.sub global.set $number/a - local.get $0 + local.get $2 call $~lib/number/I32#toString - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.tee $6 - local.get $0 + local.tee $5 + local.get $2 i32.store - local.get $6 + local.get $5 i32.const 4576 i32.store offset=4 - local.get $0 + local.get $2 i32.const 4576 call $~lib/string/String.__eq i32.eqz @@ -4061,19 +4073,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -4083,22 +4095,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 21068 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -4112,9 +4124,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -4124,23 +4136,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -4148,7 +4160,7 @@ else i32.const 4656 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1472 @@ -4158,7 +4170,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 4660 @@ -4173,28 +4185,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/object-literal.optimized.wat b/tests/compiler/object-literal.optimized.wat index 1909f3ca88..47801d5398 100644 --- a/tests/compiler/object-literal.optimized.wat +++ b/tests/compiler/object-literal.optimized.wat @@ -76,7 +76,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -99,7 +99,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -109,23 +109,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -133,7 +133,7 @@ else i32.const 1712 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1200 @@ -143,7 +143,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 1716 @@ -158,27 +158,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -311,19 +311,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -348,9 +348,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -358,17 +358,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -656,10 +656,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -671,15 +671,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -709,7 +709,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -745,12 +745,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -768,11 +768,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 18160 @@ -780,14 +780,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -797,17 +797,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -893,7 +893,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $2 + local.set $1 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -910,11 +910,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -956,9 +956,9 @@ if local.get $0 i32.load - local.tee $1 + local.tee $2 if - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -982,11 +982,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -1012,7 +1012,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $2 + local.get $1 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -1232,7 +1232,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $2 local.get $0 i32.const 1073741820 i32.gt_u @@ -1258,34 +1258,34 @@ i32.const 4 i32.sub end - local.tee $3 - call $~lib/rt/tlsf/searchBlock local.tee $0 + call $~lib/rt/tlsf/searchBlock + local.tee $1 i32.eqz if memory.size - local.tee $0 - local.get $3 + local.tee $1 + local.get $0 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $0 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $0 i32.add else - local.get $3 + local.get $0 end i32.const 4 - local.get $1 + local.get $2 i32.load offset=1568 - local.get $0 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1299,16 +1299,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 - local.get $0 - local.get $2 + local.tee $3 + local.get $1 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1316,18 +1316,18 @@ unreachable end end + local.get $2 local.get $1 - local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 - local.get $3 + local.get $2 + local.get $0 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1338,11 +1338,11 @@ unreachable end end - local.get $0 + local.get $1 i32.load i32.const -4 i32.and - local.get $3 + local.get $0 i32.lt_u if i32.const 0 @@ -1352,13 +1352,13 @@ call $~lib/builtins/abort unreachable end + local.get $2 local.get $1 - local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $0 + local.get $1 i32.load - local.set $4 - local.get $3 + local.set $3 + local.get $0 i32.const 4 i32.add i32.const 15 @@ -1371,59 +1371,59 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const -4 i32.and - local.get $3 + local.get $0 i32.sub - local.tee $2 + local.tee $4 i32.const 16 i32.ge_u if - local.get $0 - local.get $4 + local.get $1 + local.get $3 i32.const 2 i32.and - local.get $3 + local.get $0 i32.or i32.store - local.get $3 local.get $0 + local.get $1 i32.const 4 i32.add i32.add - local.tee $3 - local.get $2 + local.tee $0 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 - local.get $3 + local.get $2 + local.get $0 call $~lib/rt/tlsf/insertBlock else - local.get $0 - local.get $4 + local.get $1 + local.get $3 i32.const -2 i32.and i32.store - local.get $0 + local.get $1 i32.const 4 i32.add - local.get $0 + local.get $1 i32.load i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.load i32.const -3 i32.and i32.store end - local.get $0 + local.get $1 i32.const 4 i32.add ) @@ -1499,26 +1499,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1533,7 +1533,7 @@ local.get $2 i32.const 20 i32.add - local.tee $2 + local.tee $3 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1545,7 +1545,7 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1560,12 +1560,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $3 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $2 i32.const 3 i32.sub i32.const 0 @@ -1577,7 +1577,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 0 @@ -1592,25 +1592,25 @@ i32.sub i32.const 3 i32.and - local.tee $3 + local.tee $2 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $3 + local.get $2 i32.sub i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.add - local.tee $3 + local.tee $0 i32.const 4 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1620,17 +1620,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $0 i32.const 12 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 8 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1646,22 +1646,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $3 + local.get $0 i32.const 28 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 24 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 20 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 16 i32.sub i32.const 0 @@ -1672,11 +1672,11 @@ i32.and i32.const 24 i32.add - local.tee $3 + local.tee $0 i32.add local.set $1 + local.get $2 local.get $0 - local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1708,7 +1708,7 @@ end end end - local.get $2 + local.get $3 ) (func $~lib/string/String.__eq (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -1800,14 +1800,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2281,105 +2281,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2411,41 +2421,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2671,13 +2683,13 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 i32.const 1156 @@ -2712,7 +2724,7 @@ i32.store i32.const 1392 global.set $~lib/rt/itcms/fromSpace - local.get $0 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -2721,40 +2733,40 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 8 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.const 123 i32.store - local.get $1 + local.get $2 i32.const 1056 i32.store offset=4 - local.get $1 + local.get $2 i32.const 1056 call $byn-split-outlined-A$~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer local.tee $0 - local.get $1 + local.get $2 i32.store local.get $0 i32.const 8 @@ -2767,7 +2779,7 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - local.get $1 + local.get $2 i32.load i32.const 123 i32.ne @@ -2780,15 +2792,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.load offset=4 local.tee $1 + local.get $2 + i32.load offset=4 + local.tee $0 i32.store - local.get $0 + local.get $1 i32.const 1056 i32.store offset=4 - local.get $1 + local.get $0 i32.const 1056 call $~lib/string/String.__eq i32.eqz @@ -2835,37 +2847,37 @@ i32.load i32.const 1 i32.shr_u - local.tee $0 - local.get $0 + local.tee $3 + local.get $3 select local.tee $1 i32.const 5 - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 5 i32.gt_u select - local.tee $2 + local.tee $0 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s select i32.const 1 i32.shl - local.set $3 + local.set $2 block $__inlined_func$~lib/string/String#substring local.get $1 - local.get $2 + local.get $0 + local.get $0 local.get $1 - local.get $2 - i32.gt_s + i32.lt_s select i32.const 1 i32.shl local.tee $1 - local.get $3 + local.get $2 i32.sub - local.tee $4 + local.tee $0 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -2873,16 +2885,16 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1568 - local.set $5 + local.set $4 br $__inlined_func$~lib/string/String#substring end i32.const 0 - local.get $0 + local.get $3 i32.const 1 i32.shl local.get $1 i32.eq - local.get $3 + local.get $2 select if global.get $~lib/memory/__stack_pointer @@ -2890,19 +2902,21 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1056 - local.set $5 + local.set $4 br $__inlined_func$~lib/string/String#substring end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $0 i32.const 1 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $4 i32.store + local.get $0 + local.set $5 block $~lib/util/memory/memmove|inlined.0 - local.get $5 + local.get $4 local.tee $0 - local.get $3 + local.get $2 i32.const 1056 i32.add local.tee $1 @@ -2911,10 +2925,10 @@ local.get $1 local.get $0 i32.sub - local.get $4 + local.get $5 i32.sub i32.const 0 - local.get $4 + local.get $5 i32.const 1 i32.shl i32.sub @@ -2922,7 +2936,7 @@ if local.get $0 local.get $1 - local.get $4 + local.get $5 call $~lib/util/memory/memcpy br $~lib/util/memory/memmove|inlined.0 end @@ -2943,32 +2957,32 @@ i32.const 7 i32.and if - local.get $4 + local.get $5 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $4 + local.get $5 i32.const 1 i32.sub - local.set $4 + local.set $5 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 br $while-continue|0 end end loop $while-continue|1 - local.get $4 + local.get $5 i32.const 8 i32.ge_u if @@ -2976,10 +2990,10 @@ local.get $1 i64.load i64.store - local.get $4 + local.get $5 i32.const 8 i32.sub - local.set $4 + local.set $5 local.get $0 i32.const 8 i32.add @@ -2993,26 +3007,26 @@ end end loop $while-continue|2 - local.get $4 + local.get $5 if local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $4 + local.get $5 i32.const 1 i32.sub - local.set $4 + local.set $5 br $while-continue|2 end end @@ -3027,22 +3041,22 @@ if loop $while-continue|3 local.get $0 - local.get $4 + local.get $5 i32.add i32.const 7 i32.and if - local.get $4 + local.get $5 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 local.get $0 - local.get $4 + local.get $5 i32.const 1 i32.sub - local.tee $4 + local.tee $5 i32.add local.get $1 - local.get $4 + local.get $5 i32.add i32.load8_u i32.store8 @@ -3050,18 +3064,18 @@ end end loop $while-continue|4 - local.get $4 + local.get $5 i32.const 8 i32.ge_u if local.get $0 - local.get $4 + local.get $5 i32.const 8 i32.sub - local.tee $4 + local.tee $5 i32.add local.get $1 - local.get $4 + local.get $5 i32.add i64.load i64.store @@ -3070,16 +3084,16 @@ end end loop $while-continue|5 - local.get $4 + local.get $5 if local.get $0 - local.get $4 + local.get $5 i32.const 1 i32.sub - local.tee $4 + local.tee $5 i32.add local.get $1 - local.get $4 + local.get $5 i32.add i32.load8_u i32.store8 @@ -3094,7 +3108,7 @@ global.set $~lib/memory/__stack_pointer end local.get $6 - local.get $5 + local.get $4 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 @@ -3120,15 +3134,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 local.get $6 i32.load offset=4 - local.tee $1 + local.tee $0 i32.store - local.get $0 + local.get $1 i32.const 1600 i32.store offset=4 - local.get $1 + local.get $0 i32.const 1600 call $~lib/string/String.__eq i32.eqz @@ -3427,40 +3441,40 @@ i32.const 16 i32.const 5 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 0 i32.store offset=4 - local.get $0 + local.get $2 f64.const 0 f64.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=12 - local.get $0 + local.get $2 i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 1632 i32.store offset=4 - local.get $0 + local.get $2 i32.const 1632 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $0 + local.get $2 f64.const 0 f64.store offset=8 global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 + local.tee $0 + local.get $2 i32.store - local.get $1 + local.get $0 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -3471,7 +3485,7 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - local.get $0 + local.get $2 i32.load if i32.const 0 @@ -3483,14 +3497,14 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $0 + local.get $2 i32.load offset=4 - local.tee $2 + local.tee $0 i32.store local.get $1 i32.const 1632 i32.store offset=4 - local.get $2 + local.get $0 i32.const 1632 call $~lib/string/String.__eq i32.eqz @@ -3502,7 +3516,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 f64.load offset=8 f64.const 0 f64.ne @@ -3536,73 +3550,73 @@ i32.const 40 i32.const 6 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 i32.const 1664 i32.store - local.get $0 + local.get $2 i32.const 1664 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $0 + local.get $2 i32.const 1696 i32.store offset=4 - local.get $0 + local.get $2 i32.const 1696 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $0 + local.get $2 i32.const 0 i32.store offset=8 - local.get $0 + local.get $2 i32.const 0 i32.store offset=12 - local.get $0 + local.get $2 i32.const 0 i32.store offset=16 - local.get $0 + local.get $2 i32.const 0 i32.store offset=20 - local.get $0 + local.get $2 i32.const 0 i32.store offset=24 - local.get $0 + local.get $2 i32.const 0 i32.store offset=28 - local.get $0 + local.get $2 i32.const 0 i32.store offset=32 - local.get $0 + local.get $2 i32.const -1 i32.store offset=36 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=16 - local.get $0 + local.get $2 i32.const 0 i32.store offset=8 - local.get $0 + local.get $2 i32.const 0 i32.store offset=12 - local.get $0 + local.get $2 i32.const 0 i32.store offset=16 - local.get $0 + local.get $2 i32.const 0 i32.store offset=20 - local.get $0 + local.get $2 i32.const 0 i32.store offset=24 - local.get $0 + local.get $2 i32.const 0 i32.store offset=28 - local.get $0 + local.get $2 i32.const 0 i32.store offset=32 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store global.get $~lib/memory/__stack_pointer i32.const 8 @@ -3617,14 +3631,14 @@ i64.const 0 i64.store local.get $1 - local.get $0 + local.get $2 i32.load - local.tee $2 + local.tee $0 i32.store local.get $1 i32.const 1664 i32.store offset=4 - local.get $2 + local.get $0 i32.const 1664 call $~lib/string/String.__eq i32.eqz @@ -3638,14 +3652,14 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $0 + local.get $2 i32.load offset=4 - local.tee $2 + local.tee $0 i32.store local.get $1 i32.const 1696 i32.store offset=4 - local.get $2 + local.get $0 i32.const 1696 call $~lib/string/String.__eq i32.eqz @@ -3658,11 +3672,11 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.load offset=8 - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -3675,11 +3689,11 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.load offset=12 - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -3692,11 +3706,11 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.load offset=16 - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -3709,11 +3723,11 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.load offset=20 - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -3726,11 +3740,11 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.load offset=24 - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -3743,11 +3757,11 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.load offset=28 - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -3759,7 +3773,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.load offset=32 if i32.const 0 @@ -3769,7 +3783,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.load offset=36 i32.const -1 i32.ne diff --git a/tests/compiler/optional-typeparameters.optimized.wat b/tests/compiler/optional-typeparameters.optimized.wat index 3962bc59cb..5a6eff9ca6 100644 --- a/tests/compiler/optional-typeparameters.optimized.wat +++ b/tests/compiler/optional-typeparameters.optimized.wat @@ -182,19 +182,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -219,9 +219,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -229,17 +229,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -527,10 +527,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -542,15 +542,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -580,7 +580,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -616,12 +616,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -639,11 +639,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17872 @@ -651,14 +651,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -668,17 +668,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1151,17 +1151,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1170,19 +1170,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1208,26 +1208,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $0 + local.tee $2 i32.load offset=8 - local.set $2 + local.set $0 local.get $1 global.get $~lib/rt/itcms/white - local.get $0 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $2 + local.get $0 i32.store offset=8 - local.get $2 - local.get $2 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $0 + local.get $2 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1398,19 +1398,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1420,22 +1420,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17868 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1449,9 +1449,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1461,23 +1461,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1485,7 +1485,7 @@ else i32.const 1440 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1248 @@ -1495,7 +1495,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1444 @@ -1510,28 +1510,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/reexport.optimized.wat b/tests/compiler/reexport.optimized.wat index 6b3f09ea36..bc03965c32 100644 --- a/tests/compiler/reexport.optimized.wat +++ b/tests/compiler/reexport.optimized.wat @@ -256,19 +256,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -293,9 +293,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -303,17 +303,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -601,10 +601,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -616,15 +616,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -654,7 +654,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -690,12 +690,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -713,11 +713,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17920 @@ -725,14 +725,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -742,17 +742,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1225,17 +1225,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1244,19 +1244,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1282,26 +1282,26 @@ i32.const 4 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $0 + local.tee $2 i32.load offset=8 - local.set $2 + local.set $0 local.get $1 global.get $~lib/rt/itcms/white - local.get $0 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $2 + local.get $0 i32.store offset=8 - local.get $2 - local.get $2 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $0 + local.get $2 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1727,19 +1727,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1749,22 +1749,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17916 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1778,9 +1778,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1790,23 +1790,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1814,7 +1814,7 @@ else i32.const 1488 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1296 @@ -1824,7 +1824,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1492 @@ -1839,28 +1839,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/rereexport.optimized.wat b/tests/compiler/rereexport.optimized.wat index 2ee7f3eb0f..612fed1507 100644 --- a/tests/compiler/rereexport.optimized.wat +++ b/tests/compiler/rereexport.optimized.wat @@ -224,19 +224,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -261,9 +261,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -271,17 +271,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -569,10 +569,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -584,15 +584,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -622,7 +622,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -658,12 +658,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -681,11 +681,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17968 @@ -693,14 +693,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -710,17 +710,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1248,7 +1248,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1325,16 +1325,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $0 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1382,7 +1382,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $2 i32.const -4 i32.and i32.const 28 @@ -1392,7 +1392,7 @@ i32.ge_u if local.get $0 - local.get $3 + local.get $2 i32.const 2 i32.and i32.const 28 @@ -1401,7 +1401,7 @@ local.get $0 i32.const 32 i32.add - local.tee $3 + local.tee $2 local.get $4 i32.const 4 i32.sub @@ -1409,11 +1409,11 @@ i32.or i32.store local.get $1 - local.get $3 + local.get $2 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $2 i32.const -2 i32.and i32.store @@ -1439,26 +1439,26 @@ i32.const 4 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1500,7 +1500,7 @@ i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 local.get $0 i32.store local.get $0 @@ -1523,19 +1523,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1545,22 +1545,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17956 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1574,9 +1574,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1586,23 +1586,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1610,7 +1610,7 @@ else i32.const 1536 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1296 @@ -1620,7 +1620,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1540 @@ -1635,28 +1635,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-access.optimized.wat b/tests/compiler/resolve-access.optimized.wat index 234cc19300..26e64dbd19 100644 --- a/tests/compiler/resolve-access.optimized.wat +++ b/tests/compiler/resolve-access.optimized.wat @@ -129,7 +129,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -152,7 +152,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -162,23 +162,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -186,7 +186,7 @@ else i32.const 3296 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1280 @@ -196,7 +196,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 3300 @@ -211,27 +211,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -319,19 +319,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -356,9 +356,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -366,17 +366,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -664,10 +664,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -679,15 +679,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -717,7 +717,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -753,12 +753,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -776,11 +776,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 19744 @@ -788,14 +788,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -805,17 +805,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1295,7 +1295,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1321,32 +1321,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $3 i32.add else - local.get $4 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1379,7 +1379,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1387,8 +1387,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1405,7 +1405,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $3 i32.lt_u if i32.const 0 @@ -1415,13 +1415,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1437,7 +1437,7 @@ local.get $5 i32.const -4 i32.and - local.get $4 + local.get $3 i32.sub local.tee $6 i32.const 16 @@ -1447,23 +1447,23 @@ local.get $5 i32.const 2 i32.and - local.get $4 + local.get $3 i32.or i32.store - local.get $4 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 + local.tee $3 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1493,26 +1493,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1527,7 +1527,7 @@ local.get $2 i32.const 20 i32.add - local.tee $2 + local.tee $3 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1539,7 +1539,7 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1554,12 +1554,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $3 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $2 i32.const 3 i32.sub i32.const 0 @@ -1571,7 +1571,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 0 @@ -1586,25 +1586,25 @@ i32.sub i32.const 3 i32.and - local.tee $3 + local.tee $2 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $3 + local.get $2 i32.sub i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.add - local.tee $3 + local.tee $0 i32.const 4 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1614,17 +1614,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $0 i32.const 12 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 8 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1640,22 +1640,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $3 + local.get $0 i32.const 28 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 24 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 20 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 16 i32.sub i32.const 0 @@ -1666,11 +1666,11 @@ i32.and i32.const 24 i32.add - local.tee $3 + local.tee $0 i32.add local.set $1 + local.get $2 local.get $0 - local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1702,7 +1702,7 @@ end end end - local.get $2 + local.get $3 ) (func $~lib/util/memory/memcpy (param $0 i32) (local $1 i32) @@ -1711,7 +1711,7 @@ (local $4 i32) (local $5 i32) i32.const 8 - local.set $4 + local.set $5 i32.const 1056 local.set $1 loop $while-continue|0 @@ -1719,27 +1719,27 @@ i32.const 3 i32.and i32.const 0 - local.get $4 + local.get $5 select if local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $4 + local.get $5 i32.const 1 i32.sub - local.set $4 + local.set $5 br $while-continue|0 end end @@ -1749,7 +1749,7 @@ i32.eqz if loop $while-continue|1 - local.get $4 + local.get $5 i32.const 16 i32.ge_u if @@ -1777,14 +1777,14 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|1 end end - local.get $4 + local.get $5 i32.const 8 i32.and if @@ -1805,7 +1805,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 4 i32.and if @@ -1822,7 +1822,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 2 i32.and if @@ -1839,7 +1839,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 1 i32.and if @@ -1850,7 +1850,7 @@ end return end - local.get $4 + local.get $5 i32.const 32 i32.ge_u if @@ -1867,7 +1867,7 @@ end local.get $1 i32.load - local.set $5 + local.set $4 local.get $0 local.get $1 i32.load8_u @@ -1879,27 +1879,27 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $4 + local.get $5 i32.const 3 i32.sub - local.set $4 + local.set $5 loop $while-continue|3 - local.get $4 + local.get $5 i32.const 17 i32.ge_u if @@ -1909,7 +1909,7 @@ local.tee $2 i32.const 8 i32.shl - local.get $5 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -1939,7 +1939,7 @@ local.get $0 local.get $1 i32.load offset=13 - local.tee $5 + local.tee $4 i32.const 8 i32.shl local.get $2 @@ -1955,10 +1955,10 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|3 end end @@ -1966,31 +1966,31 @@ end local.get $1 i32.load - local.set $5 + local.set $4 local.get $0 local.get $1 i32.load8_u i32.store8 local.get $0 - local.tee $2 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $2 i32.const 2 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $5 i32.const 2 i32.sub - local.set $4 + local.set $5 loop $while-continue|4 - local.get $4 + local.get $5 i32.const 18 i32.ge_u if @@ -2000,7 +2000,7 @@ local.tee $2 i32.const 16 i32.shl - local.get $5 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -2030,7 +2030,7 @@ local.get $0 local.get $1 i32.load offset=14 - local.tee $5 + local.tee $4 i32.const 16 i32.shl local.get $2 @@ -2046,10 +2046,10 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|4 end end @@ -2057,27 +2057,27 @@ end local.get $1 i32.load - local.set $5 + local.set $4 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $4 + local.get $5 i32.const 1 i32.sub - local.set $4 + local.set $5 loop $while-continue|5 - local.get $4 + local.get $5 i32.const 19 i32.ge_u if @@ -2087,7 +2087,7 @@ local.tee $2 i32.const 24 i32.shl - local.get $5 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -2117,7 +2117,7 @@ local.get $0 local.get $1 i32.load offset=15 - local.tee $5 + local.tee $4 i32.const 24 i32.shl local.get $2 @@ -2133,16 +2133,16 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|5 end end end end - local.get $4 + local.get $5 i32.const 16 i32.and if @@ -2153,129 +2153,141 @@ local.get $0 i32.const 2 i32.add - local.set $2 + local.set $3 local.get $1 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $0 local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $2 - i32.const 2 - i32.add - local.set $0 local.get $3 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $3 local.get $2 - local.get $3 + local.tee $0 + i32.const 2 + i32.add + local.set $2 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $1 + local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $0 + local.get $3 + local.tee $1 i32.const 2 i32.add - local.set $2 - local.get $1 + local.set $3 + local.get $2 + local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $0 + local.set $2 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $2 - i32.const 2 - i32.add - local.set $0 local.get $3 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $3 local.get $2 - local.get $3 + local.tee $0 + i32.const 2 + i32.add + local.set $2 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $1 + local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $0 + local.get $3 + local.tee $1 i32.const 2 i32.add - local.set $2 - local.get $1 + local.set $3 + local.get $2 + local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $0 + local.set $2 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $2 - i32.const 2 - i32.add - local.set $0 local.get $3 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $3 local.get $2 - local.get $3 + local.tee $0 + i32.const 2 + i32.add + local.set $2 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $1 + local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $0 + local.get $3 + local.tee $1 i32.const 2 i32.add - local.set $2 - local.get $1 + local.set $3 + local.get $2 + local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $0 + local.set $2 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $2 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $4 + local.get $5 i32.const 8 i32.and if @@ -2286,65 +2298,69 @@ local.get $0 i32.const 2 i32.add - local.set $2 + local.set $3 local.get $1 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $0 local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $2 - i32.const 2 - i32.add - local.set $0 local.get $3 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $3 local.get $2 - local.get $3 + local.tee $0 + i32.const 2 + i32.add + local.set $2 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $1 + local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $0 + local.get $3 + local.tee $1 i32.const 2 i32.add - local.set $2 - local.get $1 + local.set $3 + local.get $2 + local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $0 + local.set $2 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $2 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $4 + local.get $5 i32.const 4 i32.and if @@ -2355,33 +2371,33 @@ local.get $0 i32.const 2 i32.add - local.set $2 + local.set $3 local.get $1 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $0 local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $2 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $4 + local.get $5 i32.const 2 i32.and if @@ -2390,21 +2406,21 @@ i32.load8_u i32.store8 local.get $0 - local.tee $2 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $2 i32.const 2 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $4 + local.get $5 i32.const 1 i32.and if @@ -2550,7 +2566,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1728 - local.set $2 + local.set $1 br $__inlined_func$~lib/util/number/utoa64 end local.get $0 @@ -2560,48 +2576,48 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.wrap_i64 - local.tee $1 local.tee $2 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -2612,10 +2628,10 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 local.get $1 + local.get $2 local.get $3 call $~lib/util/number/utoa32_dec_lut else @@ -2670,25 +2686,25 @@ i32.add end end - local.tee $1 + local.tee $2 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store loop $while-continue|0 local.get $0 i64.const 100000000 i64.ge_u if - local.get $1 + local.get $2 i32.const 4 i32.sub - local.tee $3 + local.tee $2 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.add local.get $0 local.get $0 @@ -2699,10 +2715,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $4 + local.tee $3 i32.const 10000 i32.rem_u - local.tee $1 + local.tee $4 i32.const 100 i32.div_u i32.const 2 @@ -2710,7 +2726,7 @@ i32.const 1740 i32.add i64.load32_u - local.get $1 + local.get $4 i32.const 100 i32.rem_u i32.const 2 @@ -2722,15 +2738,15 @@ i64.shl i64.or i64.store - local.get $3 + local.get $2 i32.const 4 i32.sub - local.tee $1 + local.tee $2 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.add - local.get $4 + local.get $3 i32.const 10000 i32.div_u local.tee $3 @@ -2756,10 +2772,10 @@ br $while-continue|0 end end - local.get $2 + local.get $1 local.get $0 i32.wrap_i64 - local.get $1 + local.get $2 call $~lib/util/number/utoa32_dec_lut end global.get $~lib/memory/__stack_pointer @@ -2767,7 +2783,7 @@ i32.add global.set $~lib/memory/__stack_pointer end - local.get $2 + local.get $1 ) (func $~lib/rt/__visit_members (param $0 i32) block $folding-inner0 @@ -3059,16 +3075,17 @@ end local.get $7 local.get $4 + local.tee $0 i32.store i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.store - local.get $4 + local.get $0 if - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -3079,50 +3096,50 @@ unreachable end global.get $~lib/rt/itcms/white - local.get $4 + local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $2 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $2 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $1 + local.get $2 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $2 + local.get $3 i32.const 3 i32.eq i32.and if - local.get $1 + local.get $2 call $~lib/rt/itcms/Object#makeGray end end end end + local.get $1 local.get $0 - local.get $4 i32.store offset=4 - local.get $0 + local.get $1 i32.const 8 i32.store offset=8 - local.get $0 + local.get $1 i32.const 1 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -3130,9 +3147,9 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $6 - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.load offset=12 i32.eqz if @@ -3143,7 +3160,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=4 i64.load call $~lib/number/U64#toString diff --git a/tests/compiler/resolve-binary.optimized.wat b/tests/compiler/resolve-binary.optimized.wat index 8f15dc1791..638264008e 100644 --- a/tests/compiler/resolve-binary.optimized.wat +++ b/tests/compiler/resolve-binary.optimized.wat @@ -328,14 +328,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -514,19 +514,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -551,9 +551,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -561,17 +561,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -859,10 +859,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -874,15 +874,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -912,7 +912,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -948,12 +948,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -971,11 +971,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 27680 @@ -983,14 +983,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -1000,17 +1000,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1490,7 +1490,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1516,32 +1516,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $3 i32.add else - local.get $4 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1574,7 +1574,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1582,8 +1582,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1600,7 +1600,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $3 i32.lt_u if i32.const 0 @@ -1610,13 +1610,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1632,7 +1632,7 @@ local.get $5 i32.const -4 i32.and - local.get $4 + local.get $3 i32.sub local.tee $6 i32.const 16 @@ -1642,23 +1642,23 @@ local.get $5 i32.const 2 i32.and - local.get $4 + local.get $3 i32.or i32.store - local.get $4 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 + local.tee $3 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1688,26 +1688,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1722,7 +1722,7 @@ local.get $2 i32.const 20 i32.add - local.tee $2 + local.tee $3 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1734,7 +1734,7 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1749,12 +1749,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $3 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $2 i32.const 3 i32.sub i32.const 0 @@ -1766,7 +1766,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 0 @@ -1781,25 +1781,25 @@ i32.sub i32.const 3 i32.and - local.tee $3 + local.tee $2 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $3 + local.get $2 i32.sub i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.add - local.tee $3 + local.tee $0 i32.const 4 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1809,17 +1809,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $0 i32.const 12 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 8 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1835,22 +1835,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $3 + local.get $0 i32.const 28 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 24 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 20 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 16 i32.sub i32.const 0 @@ -1861,11 +1861,11 @@ i32.and i32.const 24 i32.add - local.tee $3 + local.tee $0 i32.add local.set $1 + local.get $2 local.get $0 - local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1897,7 +1897,7 @@ end end end - local.get $2 + local.get $3 ) (func $~lib/util/number/utoa32_dec_lut (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -3004,105 +3004,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3134,41 +3144,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3459,17 +3471,17 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 21 i32.le_s local.get $0 - local.get $2 + local.get $3 i32.le_s i32.and if (result i32) loop $for-loop|0 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -3486,26 +3498,26 @@ br $for-loop|0 end end - local.get $2 + local.get $3 i32.const 1 i32.shl i32.const 9760 i32.add i32.const 3145774 i32.store - local.get $2 + local.get $3 i32.const 2 i32.add else - local.get $2 + local.get $3 i32.const 21 i32.le_s - local.get $2 + local.get $3 i32.const 0 i32.gt_s i32.and if (result i32) - local.get $2 + local.get $3 i32.const 1 i32.shl i32.const 9760 @@ -3527,16 +3539,16 @@ i32.const 1 i32.add else - local.get $2 + local.get $3 i32.const 0 i32.le_s - local.get $2 + local.get $3 i32.const -6 i32.gt_s i32.and if (result i32) i32.const 2 - local.get $2 + local.get $3 i32.sub local.tee $2 i32.const 1 @@ -3583,13 +3595,13 @@ i32.const 9762 i32.const 101 i32.store16 - local.get $2 + local.get $3 i32.const 1 i32.sub local.tee $0 i32.const 0 i32.lt_s - local.tee $1 + local.tee $2 if i32.const 0 local.get $0 @@ -3597,56 +3609,56 @@ local.set $0 end local.get $0 - local.tee $2 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 + local.set $1 i32.const 9764 local.get $0 - local.get $2 + local.get $1 i32.const 1 i32.add local.tee $0 @@ -3654,7 +3666,7 @@ i32.const 9764 i32.const 45 i32.const 43 - local.get $1 + local.get $2 select i32.store16 local.get $0 @@ -3676,87 +3688,87 @@ local.get $1 i32.const 9760 i32.add - local.tee $1 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $1 + local.get $2 i32.const 4 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.tee $2 + local.tee $1 i32.const 0 i32.lt_s local.tee $4 if i32.const 0 - local.get $2 + local.get $1 i32.sub - local.set $2 + local.set $1 end - local.get $2 - local.tee $5 + local.get $1 + local.tee $3 i32.const 100000 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 100 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $5 + local.get $3 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $5 + local.get $3 i32.const 1000 i32.ge_u i32.add end else - local.get $5 + local.get $3 i32.const 10000000 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $5 + local.get $3 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $5 + local.get $3 i32.const 100000000 i32.ge_u i32.add end end - local.set $5 - local.get $2 - local.get $5 + local.set $3 + local.get $1 + local.get $3 i32.const 1 i32.add - local.tee $2 + local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $2 i32.const 45 i32.const 43 local.get $4 select i32.store16 offset=4 local.get $0 - local.get $2 + local.get $1 i32.add i32.const 2 i32.add @@ -3767,11 +3779,11 @@ ) (func $~lib/number/F64#toString (result i32) (local $0 i64) - (local $1 i32) - (local $2 i32) + (local $1 i64) + (local $2 i64) (local $3 i64) - (local $4 i64) - (local $5 i64) + (local $4 i32) + (local $5 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -3799,36 +3811,36 @@ i32.load16_s global.set $~lib/util/number/_exp_pow global.get $~lib/util/number/_frc_pow - local.tee $3 + local.tee $1 i64.const 4294967295 i64.and - local.tee $4 + local.tee $0 i64.const 31 i64.shl - local.set $0 - local.get $3 + local.set $2 + local.get $1 i64.const 32 i64.shr_u - local.tee $3 + local.tee $1 i64.const 31 i64.shl - local.get $4 + local.get $0 i64.const 31 i64.shl - local.get $4 + local.get $0 i64.const 10 i64.shl i64.const 32 i64.shr_u i64.add - local.tee $5 + local.tee $3 i64.const 32 i64.shr_u i64.add - local.get $5 + local.get $3 i64.const 4294967295 i64.and - local.get $3 + local.get $1 i64.const 10 i64.shl i64.add @@ -3839,15 +3851,15 @@ i64.add i64.const 1 i64.sub - local.set $5 - local.get $3 + local.set $3 + local.get $1 i64.const 31 i64.shl - local.get $0 + local.get $2 i64.const 32 i64.shr_u i64.add - local.get $0 + local.get $2 i64.const 4294967295 i64.and i64.const 2147483647 @@ -3855,18 +3867,18 @@ i64.const 32 i64.shr_u i64.add - local.get $5 + local.get $3 global.get $~lib/util/number/_exp_pow i32.const 3 i32.add - local.get $5 local.get $3 + local.get $1 i64.const 2147483647 i64.mul - local.get $4 + local.get $0 i64.const 2147483647 i64.mul - local.get $4 + local.get $0 i64.const 4294966784 i64.mul i64.const 32 @@ -3876,7 +3888,7 @@ i64.const 32 i64.shr_u i64.add - local.get $3 + local.get $1 i64.const 4294966784 i64.mul local.get $0 @@ -3896,22 +3908,22 @@ call $~lib/util/number/prettify i32.const 1 i32.shl - local.set $1 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $4 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $5 i32.store - local.get $2 + local.get $5 i32.const 9760 - local.get $1 + local.get $4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $5 ) (func $~lib/rt/__visit_members (param $0 i32) block $invalid @@ -5347,19 +5359,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -5369,22 +5381,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 27676 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -5398,9 +5410,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -5410,23 +5422,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -5434,7 +5446,7 @@ else i32.const 11248 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1632 @@ -5444,7 +5456,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 11252 @@ -5459,28 +5471,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-elementaccess.optimized.wat b/tests/compiler/resolve-elementaccess.optimized.wat index 2cf4588e10..ac76a7a9fd 100644 --- a/tests/compiler/resolve-elementaccess.optimized.wat +++ b/tests/compiler/resolve-elementaccess.optimized.wat @@ -187,7 +187,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -210,7 +210,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -220,23 +220,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -244,7 +244,7 @@ else i32.const 4800 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1360 @@ -254,7 +254,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 4804 @@ -269,27 +269,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -377,19 +377,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -414,9 +414,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -424,17 +424,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -722,10 +722,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -737,15 +737,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -775,7 +775,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -811,12 +811,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -834,11 +834,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 21248 @@ -846,14 +846,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -863,17 +863,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1351,14 +1351,14 @@ i32.sub i32.const -4 i32.and - local.tee $1 - i32.add local.tee $2 + i32.add + local.tee $1 i32.const 4 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1368,17 +1368,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 12 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1394,22 +1394,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $2 + local.get $1 i32.const 28 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 20 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 16 i32.sub i32.const 0 @@ -1420,11 +1420,11 @@ i32.and i32.const 24 i32.add - local.tee $2 + local.tee $1 i32.add local.set $0 - local.get $1 local.get $2 + local.get $1 i32.sub local.set $1 loop $while-continue|0 @@ -1529,7 +1529,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1555,32 +1555,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1596,16 +1596,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1613,7 +1613,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1621,8 +1621,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1639,7 +1639,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1649,13 +1649,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1668,40 +1668,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -1727,26 +1727,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2696,105 +2696,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 + local.get $0 + i32.const 2 + i32.add + local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2826,41 +2836,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3379,82 +3391,83 @@ i32.const 101 i32.store16 offset=2 local.get $0 + local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $1 + local.tee $0 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $1 + local.get $0 i32.sub - local.set $1 + local.set $0 end - local.get $1 - local.tee $4 + local.get $0 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $4 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $4 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $4 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $4 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $4 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $4 - local.get $1 - local.get $4 + local.set $2 + local.get $0 + local.get $2 i32.const 1 i32.add - local.tee $1 + local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $1 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 - local.get $1 + local.get $0 i32.const 2 i32.add else @@ -3477,87 +3490,87 @@ local.get $0 local.get $2 i32.add - local.tee $0 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $0 + local.get $2 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $2 + local.tee $0 i32.const 0 i32.lt_s - local.tee $3 + local.tee $4 if i32.const 0 - local.get $2 + local.get $0 i32.sub - local.set $2 + local.set $0 end - local.get $2 - local.tee $5 + local.get $0 + local.tee $3 i32.const 100000 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 100 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $5 + local.get $3 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $5 + local.get $3 i32.const 1000 i32.ge_u i32.add end else - local.get $5 + local.get $3 i32.const 10000000 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $5 + local.get $3 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $5 + local.get $3 i32.const 100000000 i32.ge_u i32.add end end - local.set $5 - local.get $2 - local.get $5 + local.set $3 + local.get $0 + local.get $3 i32.const 1 i32.add - local.tee $2 + local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $2 i32.const 45 i32.const 43 - local.get $3 + local.get $4 select i32.store16 offset=4 + local.get $0 local.get $1 - local.get $2 i32.add i32.const 2 i32.add @@ -3567,24 +3580,25 @@ end ) (func $~lib/util/number/dtoa_core (param $0 f64) (result i32) - (local $1 i64) - (local $2 i32) - (local $3 i64) + (local $1 i32) + (local $2 i64) + (local $3 i32) (local $4 i64) (local $5 i64) (local $6 i64) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i64) - (local $11 i64) + (local $7 i64) + (local $8 i64) + (local $9 i64) + (local $10 i32) + (local $11 i32) (local $12 i64) (local $13 i64) (local $14 i64) + (local $15 i64) local.get $0 f64.const 0 f64.lt - local.tee $2 + local.tee $1 if (result f64) i32.const 1776 i32.const 45 @@ -3595,72 +3609,72 @@ local.get $0 end i64.reinterpret_f64 - local.tee $1 + local.tee $2 i64.const 9218868437227405312 i64.and i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $7 + local.tee $3 i32.const 1 - local.get $7 + local.get $3 select i32.const 1075 i32.sub - local.tee $8 + local.tee $10 i32.const 1 i32.sub - local.get $1 + local.get $2 i64.const 4503599627370495 i64.and - local.get $7 + local.get $3 i32.const 0 i32.ne i64.extend_i32_u i64.const 52 i64.shl i64.add - local.tee $1 + local.tee $2 i64.const 1 i64.shl i64.const 1 i64.add - local.tee $3 + local.tee $4 i64.clz i32.wrap_i64 - local.tee $7 + local.tee $11 i32.sub - local.set $9 - local.get $3 - local.get $7 + local.set $3 + local.get $4 + local.get $11 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus - local.get $1 - local.get $1 + local.get $2 + local.get $2 i64.const 4503599627370496 i64.eq i32.const 1 i32.add - local.tee $7 + local.tee $11 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $8 - local.get $7 + local.get $10 + local.get $11 i32.sub - local.get $9 + local.get $3 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $9 + local.get $3 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $7 + local.tee $3 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -3669,9 +3683,9 @@ f64.add local.tee $0 i32.trunc_f64_s - local.tee $8 + local.tee $10 local.get $0 - local.get $8 + local.get $10 f64.convert_i32_s f64.ne i32.add @@ -3679,106 +3693,106 @@ i32.shr_s i32.const 1 i32.add - local.tee $8 + local.tee $10 i32.const 3 i32.shl - local.tee $9 + local.tee $11 i32.sub global.set $~lib/util/number/_K - local.get $9 + local.get $11 i32.const 1832 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $8 + local.get $10 i32.const 1 i32.shl i32.const 2528 i32.add i32.load16_s global.set $~lib/util/number/_exp_pow - local.get $1 - local.get $1 + local.get $2 + local.get $2 i64.clz i64.shl - local.tee $1 + local.tee $2 i64.const 4294967295 i64.and - local.set $10 - local.get $1 + local.set $4 + local.get $2 i64.const 32 i64.shr_u - local.tee $11 + local.tee $12 global.get $~lib/util/number/_frc_pow - local.tee $4 + local.tee $13 i64.const 4294967295 i64.and - local.tee $12 - local.tee $1 + local.tee $2 + local.tee $5 i64.mul - local.get $1 - local.get $10 + local.get $4 + local.get $5 i64.mul i64.const 32 i64.shr_u i64.add - local.set $13 + local.set $5 global.get $~lib/util/number/_frc_plus - local.tee $3 + local.tee $7 i64.const 4294967295 i64.and - local.set $1 - local.get $3 + local.set $6 + local.get $7 i64.const 32 i64.shr_u - local.tee $5 - local.get $12 + local.tee $14 + local.get $2 i64.mul - local.get $1 - local.get $12 + local.get $2 + local.get $6 i64.mul i64.const 32 i64.shr_u i64.add - local.set $14 + local.set $7 global.get $~lib/util/number/_frc_minus - local.tee $6 + local.tee $9 i64.const 4294967295 i64.and - local.set $3 - local.get $6 + local.set $8 + local.get $9 i64.const 32 i64.shr_u - local.tee $6 - local.get $12 + local.tee $15 + local.get $2 i64.mul - local.get $3 - local.get $12 + local.get $2 + local.get $8 i64.mul i64.const 32 i64.shr_u i64.add - local.set $12 - local.get $2 + local.set $9 + local.get $1 i32.const 1 i32.shl i32.const 1776 i32.add - local.get $11 - local.get $4 + local.get $12 + local.get $13 i64.const 32 i64.shr_u - local.tee $4 - local.tee $11 + local.tee $2 + local.tee $12 i64.mul - local.get $13 + local.get $5 i64.const 32 i64.shr_u i64.add - local.get $10 - local.get $11 + local.get $4 + local.get $12 i64.mul - local.get $13 + local.get $5 i64.const 4294967295 i64.and i64.add @@ -3787,17 +3801,17 @@ i64.const 32 i64.shr_u i64.add - local.get $4 - local.get $5 - i64.mul + local.get $2 local.get $14 + i64.mul + local.get $7 i64.const 32 i64.shr_u i64.add - local.get $1 - local.get $4 + local.get $2 + local.get $6 i64.mul - local.get $14 + local.get $7 i64.const 4294967295 i64.and i64.add @@ -3808,24 +3822,24 @@ i64.add i64.const 1 i64.sub - local.tee $1 + local.tee $4 global.get $~lib/util/number/_exp_pow - local.get $7 + local.get $3 i32.add i32.const -64 i32.sub - local.get $1 local.get $4 - local.get $6 + local.get $2 + local.get $15 i64.mul - local.get $12 + local.get $9 i64.const 32 i64.shr_u i64.add - local.get $3 - local.get $4 + local.get $2 + local.get $8 i64.mul - local.get $12 + local.get $9 i64.const 4294967295 i64.and i64.add @@ -3837,13 +3851,13 @@ i64.const 1 i64.add i64.sub - local.get $2 + local.get $1 call $~lib/util/number/genDigits - local.get $2 + local.get $1 i32.sub global.get $~lib/util/number/_K call $~lib/util/number/prettify - local.get $2 + local.get $1 i32.add ) (func $~lib/number/F32#toString (param $0 f32) (result i32) @@ -4026,14 +4040,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -4374,22 +4388,22 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $resolve-elementaccess/arr local.tee $1 + global.get $resolve-elementaccess/arr + local.tee $0 i32.store offset=12 - local.get $0 local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 10 f32.add call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Float32Array#__get call $~lib/number/F32#toString @@ -4413,16 +4427,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $resolve-elementaccess/arr local.tee $1 + global.get $resolve-elementaccess/arr + local.tee $0 i32.store - local.get $0 local.get $1 + local.get $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 10 @@ -4574,22 +4588,22 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $resolve-elementaccess/buf local.tee $1 + global.get $resolve-elementaccess/buf + local.tee $0 i32.store offset=12 - local.get $0 local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 10 i32.add call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint8Array#__get call $~lib/number/U8#toString @@ -4613,16 +4627,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $resolve-elementaccess/buf local.tee $1 + global.get $resolve-elementaccess/buf + local.tee $0 i32.store - local.get $0 local.get $1 + local.get $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 10 @@ -4716,18 +4730,18 @@ i32.const 2 local.get $1 i32.shl - local.tee $1 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $1 i32.store offset=4 - local.get $4 local.get $1 + local.get $2 call $~lib/memory/memory.fill local.get $0 - local.get $4 + local.get $1 i32.store - local.get $4 + local.get $1 if local.get $0 i32.eqz @@ -4740,10 +4754,10 @@ unreachable end global.get $~lib/rt/itcms/white - local.get $4 + local.get $1 i32.const 20 i32.sub - local.tee $2 + local.tee $3 i32.load offset=4 i32.const 3 i32.and @@ -4755,33 +4769,33 @@ i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $4 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $2 + local.get $3 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $4 i32.const 3 i32.eq i32.and if - local.get $2 + local.get $3 call $~lib/rt/itcms/Object#makeGray end end end end local.get $0 - local.get $4 + local.get $1 i32.store offset=4 local.get $0 - local.get $1 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 diff --git a/tests/compiler/resolve-function-expression.optimized.wat b/tests/compiler/resolve-function-expression.optimized.wat index 31b856dabd..bd2b16c818 100644 --- a/tests/compiler/resolve-function-expression.optimized.wat +++ b/tests/compiler/resolve-function-expression.optimized.wat @@ -204,19 +204,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -241,9 +241,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -251,17 +251,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -549,10 +549,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -564,15 +564,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -602,7 +602,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -638,12 +638,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -661,11 +661,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 19856 @@ -673,14 +673,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -690,17 +690,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1180,7 +1180,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $3 local.get $1 i32.const 1073741820 i32.gt_u @@ -1206,32 +1206,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size local.tee $1 - local.get $3 + local.get $2 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $2 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $2 i32.add else - local.get $3 + local.get $2 end i32.const 4 - local.get $2 + local.get $3 i32.load offset=1568 local.get $1 i32.const 16 @@ -1264,7 +1264,7 @@ unreachable end end - local.get $2 + local.get $3 local.get $1 i32.const 16 i32.shl @@ -1272,8 +1272,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1290,7 +1290,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $2 i32.lt_u if i32.const 0 @@ -1300,13 +1300,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load local.set $4 - local.get $3 + local.get $2 i32.const 4 i32.add i32.const 15 @@ -1322,7 +1322,7 @@ local.get $4 i32.const -4 i32.and - local.get $3 + local.get $2 i32.sub local.tee $5 i32.const 16 @@ -1332,23 +1332,23 @@ local.get $4 i32.const 2 i32.and - local.get $3 + local.get $2 i32.or i32.store - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add i32.add - local.tee $3 + local.tee $2 local.get $5 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 local.get $3 + local.get $2 call $~lib/rt/tlsf/insertBlock else local.get $1 @@ -1378,26 +1378,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $2 local.get $1 global.get $~lib/rt/itcms/white - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $1 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $2 + local.get $3 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1412,7 +1412,7 @@ local.get $1 i32.const 20 i32.add - local.tee $2 + local.tee $3 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1424,7 +1424,7 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1439,12 +1439,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $3 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $2 i32.const 3 i32.sub i32.const 0 @@ -1456,7 +1456,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 0 @@ -1471,25 +1471,25 @@ i32.sub i32.const 3 i32.and - local.tee $3 + local.tee $2 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $3 + local.get $2 i32.sub i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.add - local.tee $3 + local.tee $0 i32.const 4 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1499,17 +1499,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $0 i32.const 12 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 8 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1525,22 +1525,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $3 + local.get $0 i32.const 28 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 24 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 20 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 16 i32.sub i32.const 0 @@ -1551,11 +1551,11 @@ i32.and i32.const 24 i32.add - local.tee $3 + local.tee $0 i32.add local.set $1 + local.get $2 local.get $0 - local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1587,7 +1587,7 @@ end end end - local.get $2 + local.get $3 ) (func $~lib/rt/__visit_members (param $0 i32) block $invalid @@ -2050,19 +2050,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -2072,22 +2072,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 19844 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -2101,9 +2101,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -2113,23 +2113,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -2137,7 +2137,7 @@ else i32.const 3424 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1648 @@ -2147,7 +2147,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 3428 @@ -2162,28 +2162,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-nested.optimized.wat b/tests/compiler/resolve-nested.optimized.wat index b0e9297adc..34ef58cfbf 100644 --- a/tests/compiler/resolve-nested.optimized.wat +++ b/tests/compiler/resolve-nested.optimized.wat @@ -173,19 +173,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -210,9 +210,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -220,17 +220,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -518,10 +518,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -533,15 +533,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -571,7 +571,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -607,12 +607,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -630,11 +630,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17888 @@ -642,14 +642,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -659,17 +659,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1142,17 +1142,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1161,19 +1161,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1199,26 +1199,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $0 + local.tee $2 i32.load offset=8 - local.set $2 + local.set $0 local.get $1 global.get $~lib/rt/itcms/white - local.get $0 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $2 + local.get $0 i32.store offset=8 - local.get $2 - local.get $2 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $0 + local.get $2 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1531,19 +1531,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1553,22 +1553,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17876 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1582,9 +1582,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1594,23 +1594,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1618,7 +1618,7 @@ else i32.const 1440 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1248 @@ -1628,7 +1628,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1444 @@ -1643,28 +1643,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-new.optimized.wat b/tests/compiler/resolve-new.optimized.wat index 46a25983f2..5a067e3028 100644 --- a/tests/compiler/resolve-new.optimized.wat +++ b/tests/compiler/resolve-new.optimized.wat @@ -172,19 +172,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -209,9 +209,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -219,17 +219,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -517,10 +517,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -532,15 +532,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -570,7 +570,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -606,12 +606,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -629,11 +629,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17872 @@ -641,14 +641,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -658,17 +658,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1123,7 +1123,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1200,16 +1200,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $0 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1257,7 +1257,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $2 i32.const -4 i32.and i32.const 28 @@ -1267,7 +1267,7 @@ i32.ge_u if local.get $0 - local.get $3 + local.get $2 i32.const 2 i32.and i32.const 28 @@ -1276,7 +1276,7 @@ local.get $0 i32.const 32 i32.add - local.tee $3 + local.tee $2 local.get $4 i32.const 4 i32.sub @@ -1284,11 +1284,11 @@ i32.or i32.store local.get $1 - local.get $3 + local.get $2 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $2 i32.const -2 i32.and i32.store @@ -1314,26 +1314,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1345,7 +1345,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $2 + local.get $3 local.get $0 i32.const 20 i32.add @@ -1365,19 +1365,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1387,22 +1387,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17860 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1416,9 +1416,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1428,23 +1428,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1452,7 +1452,7 @@ else i32.const 1440 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1248 @@ -1462,7 +1462,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1444 @@ -1477,28 +1477,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-propertyaccess.optimized.wat b/tests/compiler/resolve-propertyaccess.optimized.wat index 27ab99a740..71304dc61b 100644 --- a/tests/compiler/resolve-propertyaccess.optimized.wat +++ b/tests/compiler/resolve-propertyaccess.optimized.wat @@ -204,19 +204,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -241,9 +241,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -251,17 +251,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -549,10 +549,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -564,15 +564,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -602,7 +602,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -638,12 +638,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -661,11 +661,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 20112 @@ -673,14 +673,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -690,17 +690,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1180,7 +1180,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1206,32 +1206,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $3 i32.add else - local.get $4 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1264,7 +1264,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1272,8 +1272,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1290,7 +1290,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $3 i32.lt_u if i32.const 0 @@ -1300,13 +1300,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1322,7 +1322,7 @@ local.get $5 i32.const -4 i32.and - local.get $4 + local.get $3 i32.sub local.tee $6 i32.const 16 @@ -1332,23 +1332,23 @@ local.get $5 i32.const 2 i32.and - local.get $4 + local.get $3 i32.or i32.store - local.get $4 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 + local.tee $3 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1378,26 +1378,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1412,7 +1412,7 @@ local.get $2 i32.const 20 i32.add - local.tee $2 + local.tee $3 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1424,7 +1424,7 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1439,12 +1439,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $3 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $2 i32.const 3 i32.sub i32.const 0 @@ -1456,7 +1456,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 0 @@ -1471,25 +1471,25 @@ i32.sub i32.const 3 i32.and - local.tee $3 + local.tee $2 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $3 + local.get $2 i32.sub i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.add - local.tee $3 + local.tee $0 i32.const 4 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1499,17 +1499,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $0 i32.const 12 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 8 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1525,22 +1525,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $3 + local.get $0 i32.const 28 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 24 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 20 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 16 i32.sub i32.const 0 @@ -1551,11 +1551,11 @@ i32.and i32.const 24 i32.add - local.tee $3 + local.tee $0 i32.add local.set $1 + local.get $2 local.get $0 - local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1587,7 +1587,7 @@ end end end - local.get $2 + local.get $3 ) (func $~lib/number/I32#toString (param $0 i32) (result i32) (local $1 i32) @@ -1895,14 +1895,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2321,19 +2321,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -2343,22 +2343,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 20100 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -2372,9 +2372,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -2384,23 +2384,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -2408,7 +2408,7 @@ else i32.const 3680 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1472 @@ -2418,7 +2418,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 3684 @@ -2433,28 +2433,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-ternary.optimized.wat b/tests/compiler/resolve-ternary.optimized.wat index e45ae6420b..f982e9f3e0 100644 --- a/tests/compiler/resolve-ternary.optimized.wat +++ b/tests/compiler/resolve-ternary.optimized.wat @@ -208,19 +208,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -245,9 +245,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -255,17 +255,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -553,10 +553,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -568,15 +568,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -606,7 +606,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -642,12 +642,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -665,11 +665,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 21040 @@ -677,14 +677,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -694,17 +694,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1184,7 +1184,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $3 local.get $1 i32.const 1073741820 i32.gt_u @@ -1210,32 +1210,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size local.tee $1 - local.get $3 + local.get $2 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $2 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $2 i32.add else - local.get $3 + local.get $2 end i32.const 4 - local.get $2 + local.get $3 i32.load offset=1568 local.get $1 i32.const 16 @@ -1268,7 +1268,7 @@ unreachable end end - local.get $2 + local.get $3 local.get $1 i32.const 16 i32.shl @@ -1276,8 +1276,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1294,7 +1294,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $2 i32.lt_u if i32.const 0 @@ -1304,13 +1304,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load local.set $4 - local.get $3 + local.get $2 i32.const 4 i32.add i32.const 15 @@ -1326,7 +1326,7 @@ local.get $4 i32.const -4 i32.and - local.get $3 + local.get $2 i32.sub local.tee $5 i32.const 16 @@ -1336,23 +1336,23 @@ local.get $4 i32.const 2 i32.and - local.get $3 + local.get $2 i32.or i32.store - local.get $3 + local.get $2 local.get $1 i32.const 4 i32.add i32.add - local.tee $3 + local.tee $2 local.get $5 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 local.get $3 + local.get $2 call $~lib/rt/tlsf/insertBlock else local.get $1 @@ -1382,26 +1382,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $2 local.get $1 global.get $~lib/rt/itcms/white - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $1 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $2 + local.get $3 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1416,7 +1416,7 @@ local.get $1 i32.const 20 i32.add - local.tee $2 + local.tee $3 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1428,7 +1428,7 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1443,12 +1443,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $3 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $2 i32.const 3 i32.sub i32.const 0 @@ -1460,7 +1460,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 0 @@ -1475,25 +1475,25 @@ i32.sub i32.const 3 i32.and - local.tee $3 + local.tee $2 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $3 + local.get $2 i32.sub i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.add - local.tee $3 + local.tee $0 i32.const 4 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1503,17 +1503,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $0 i32.const 12 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 8 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1529,22 +1529,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $3 + local.get $0 i32.const 28 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 24 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 20 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 16 i32.sub i32.const 0 @@ -1555,11 +1555,11 @@ i32.and i32.const 24 i32.add - local.tee $3 + local.tee $0 i32.add local.set $1 + local.get $2 local.get $0 - local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1591,7 +1591,7 @@ end end end - local.get $2 + local.get $3 ) (func $~lib/util/number/utoa32_dec_lut (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -1787,14 +1787,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2697,105 +2697,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2827,41 +2837,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3152,17 +3164,17 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 21 i32.le_s local.get $0 - local.get $2 + local.get $3 i32.le_s i32.and if (result i32) loop $for-loop|0 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -3179,26 +3191,26 @@ br $for-loop|0 end end - local.get $2 + local.get $3 i32.const 1 i32.shl i32.const 3472 i32.add i32.const 3145774 i32.store - local.get $2 + local.get $3 i32.const 2 i32.add else - local.get $2 + local.get $3 i32.const 21 i32.le_s - local.get $2 + local.get $3 i32.const 0 i32.gt_s i32.and if (result i32) - local.get $2 + local.get $3 i32.const 1 i32.shl i32.const 3472 @@ -3220,16 +3232,16 @@ i32.const 1 i32.add else - local.get $2 + local.get $3 i32.const 0 i32.le_s - local.get $2 + local.get $3 i32.const -6 i32.gt_s i32.and if (result i32) i32.const 2 - local.get $2 + local.get $3 i32.sub local.tee $2 i32.const 1 @@ -3276,13 +3288,13 @@ i32.const 3474 i32.const 101 i32.store16 - local.get $2 + local.get $3 i32.const 1 i32.sub local.tee $0 i32.const 0 i32.lt_s - local.tee $1 + local.tee $2 if i32.const 0 local.get $0 @@ -3290,56 +3302,56 @@ local.set $0 end local.get $0 - local.tee $2 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 + local.set $1 i32.const 3476 local.get $0 - local.get $2 + local.get $1 i32.const 1 i32.add local.tee $0 @@ -3347,7 +3359,7 @@ i32.const 3476 i32.const 45 i32.const 43 - local.get $1 + local.get $2 select i32.store16 local.get $0 @@ -3369,87 +3381,87 @@ local.get $1 i32.const 3472 i32.add - local.tee $1 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $1 + local.get $2 i32.const 4 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.tee $2 + local.tee $1 i32.const 0 i32.lt_s local.tee $4 if i32.const 0 - local.get $2 + local.get $1 i32.sub - local.set $2 + local.set $1 end - local.get $2 - local.tee $5 + local.get $1 + local.tee $3 i32.const 100000 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 100 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $5 + local.get $3 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $5 + local.get $3 i32.const 1000 i32.ge_u i32.add end else - local.get $5 + local.get $3 i32.const 10000000 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $5 + local.get $3 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $5 + local.get $3 i32.const 100000000 i32.ge_u i32.add end end - local.set $5 - local.get $2 - local.get $5 + local.set $3 + local.get $1 + local.get $3 i32.const 1 i32.add - local.tee $2 + local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $2 i32.const 45 i32.const 43 local.get $4 select i32.store16 offset=4 local.get $0 - local.get $2 + local.get $1 i32.add i32.const 2 i32.add @@ -3521,9 +3533,9 @@ (local $0 i32) (local $1 i64) (local $2 i64) - (local $3 i32) + (local $3 i64) (local $4 i64) - (local $5 i64) + (local $5 i32) (local $6 i64) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -3596,10 +3608,10 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $5 local.get $0 i32.store - local.get $3 + local.get $5 i32.const 3232 i32.store offset=4 local.get $0 @@ -3637,33 +3649,33 @@ local.tee $2 i64.const 4294967295 i64.and - local.tee $4 + local.tee $1 i64.const 31 i64.shl - local.tee $5 - local.set $1 + local.tee $4 + local.set $3 local.get $2 i64.const 32 i64.shr_u - local.tee $6 + local.tee $2 i64.const 31 i64.shl - local.tee $2 - local.get $4 + local.tee $6 + local.get $1 i64.const 10 i64.shl i64.const 32 i64.shr_u - local.get $5 + local.get $4 i64.add - local.tee $5 + local.tee $4 i64.const 32 i64.shr_u i64.add - local.get $5 + local.get $4 i64.const 4294967295 i64.and - local.get $6 + local.get $2 i64.const 10 i64.shl i64.add @@ -3674,13 +3686,13 @@ i64.add i64.const 1 i64.sub - local.set $5 - local.get $1 + local.set $4 + local.get $3 i64.const 32 i64.shr_u - local.get $2 + local.get $6 i64.add - local.get $1 + local.get $3 i64.const 4294967295 i64.and i64.const 2147483647 @@ -3688,18 +3700,18 @@ i64.const 32 i64.shr_u i64.add - local.get $5 + local.get $4 global.get $~lib/util/number/_exp_pow i32.const 1 i32.add - local.get $5 - local.get $6 + local.get $4 + local.get $2 i64.const 2147483647 i64.mul - local.get $4 + local.get $1 i64.const 2147483647 i64.mul - local.get $4 + local.get $1 i64.const 4294966784 i64.mul i64.const 32 @@ -3709,7 +3721,7 @@ i64.const 32 i64.shr_u i64.add - local.get $6 + local.get $2 i64.const 4294966784 i64.mul local.get $1 @@ -3729,28 +3741,28 @@ call $~lib/util/number/prettify i32.const 1 i32.shl - local.set $0 + local.set $5 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $5 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $0 i32.store - local.get $3 - i32.const 3472 local.get $0 + i32.const 3472 + local.get $5 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $3 - i32.store + local.tee $5 local.get $0 + i32.store + local.get $5 i32.const 4464 i32.store offset=4 - local.get $3 + local.get $0 i32.const 4464 call $~lib/string/String.__eq i32.eqz @@ -3825,19 +3837,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -3847,22 +3859,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 21028 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -3876,9 +3888,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -3888,23 +3900,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -3912,7 +3924,7 @@ else i32.const 4608 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1472 @@ -3922,7 +3934,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 4612 @@ -3937,28 +3949,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-unary.optimized.wat b/tests/compiler/resolve-unary.optimized.wat index 3c400b361b..38fd3af707 100644 --- a/tests/compiler/resolve-unary.optimized.wat +++ b/tests/compiler/resolve-unary.optimized.wat @@ -230,19 +230,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -267,9 +267,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -277,17 +277,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -575,10 +575,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -590,15 +590,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -628,7 +628,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -664,12 +664,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -687,11 +687,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 20160 @@ -699,14 +699,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -716,17 +716,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1206,7 +1206,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1232,32 +1232,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $3 i32.add else - local.get $4 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1290,7 +1290,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1298,8 +1298,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1316,7 +1316,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $3 i32.lt_u if i32.const 0 @@ -1326,13 +1326,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1348,7 +1348,7 @@ local.get $5 i32.const -4 i32.and - local.get $4 + local.get $3 i32.sub local.tee $6 i32.const 16 @@ -1358,23 +1358,23 @@ local.get $5 i32.const 2 i32.and - local.get $4 + local.get $3 i32.or i32.store - local.get $4 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 + local.tee $3 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1404,26 +1404,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1438,7 +1438,7 @@ local.get $2 i32.const 20 i32.add - local.tee $2 + local.tee $3 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1450,7 +1450,7 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1465,12 +1465,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $3 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $2 i32.const 3 i32.sub i32.const 0 @@ -1482,7 +1482,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 0 @@ -1497,25 +1497,25 @@ i32.sub i32.const 3 i32.and - local.tee $3 + local.tee $2 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $3 + local.get $2 i32.sub i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.add - local.tee $3 + local.tee $0 i32.const 4 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1525,17 +1525,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $0 i32.const 12 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 8 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1551,22 +1551,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $3 + local.get $0 i32.const 28 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 24 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 20 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 16 i32.sub i32.const 0 @@ -1577,11 +1577,11 @@ i32.and i32.const 24 i32.add - local.tee $3 + local.tee $0 i32.add local.set $1 + local.get $2 local.get $0 - local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1613,7 +1613,7 @@ end end end - local.get $2 + local.get $3 ) (func $~lib/number/I32#toString (param $0 i32) (result i32) (local $1 i32) @@ -1921,14 +1921,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2426,16 +2426,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $resolve-unary/foo local.tee $1 + global.get $resolve-unary/foo + local.tee $0 i32.store offset=16 - local.get $1 - global.set $resolve-unary/foo local.get $0 + global.set $resolve-unary/foo local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 global.get $resolve-unary/foo i32.ne if @@ -2447,16 +2447,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $resolve-unary/foo local.tee $1 + global.get $resolve-unary/foo + local.tee $0 i32.store offset=16 - local.get $1 - global.set $resolve-unary/foo local.get $0 + global.set $resolve-unary/foo local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 global.get $resolve-unary/foo i32.ne if @@ -2619,19 +2619,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -2641,22 +2641,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 20156 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -2670,9 +2670,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -2682,23 +2682,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -2706,7 +2706,7 @@ else i32.const 3728 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1472 @@ -2716,7 +2716,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 3732 @@ -2731,28 +2731,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/rt/finalize.optimized.wat b/tests/compiler/rt/finalize.optimized.wat index 0314ca7727..d4a1dfba2d 100644 --- a/tests/compiler/rt/finalize.optimized.wat +++ b/tests/compiler/rt/finalize.optimized.wat @@ -167,19 +167,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -204,9 +204,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -214,17 +214,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -512,10 +512,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -527,15 +527,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -565,7 +565,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -601,12 +601,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -624,11 +624,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17920 @@ -636,14 +636,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -653,17 +653,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1069,7 +1069,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1146,16 +1146,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $0 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1203,7 +1203,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $2 i32.const -4 i32.and i32.const 28 @@ -1213,7 +1213,7 @@ i32.ge_u if local.get $0 - local.get $3 + local.get $2 i32.const 2 i32.and i32.const 28 @@ -1222,7 +1222,7 @@ local.get $0 i32.const 32 i32.add - local.tee $3 + local.tee $2 local.get $4 i32.const 4 i32.sub @@ -1230,11 +1230,11 @@ i32.or i32.store local.get $1 - local.get $3 + local.get $2 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $2 i32.const -2 i32.and i32.store @@ -1260,26 +1260,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1291,7 +1291,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $2 + local.get $3 local.get $0 i32.const 20 i32.add @@ -1396,19 +1396,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1418,22 +1418,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17908 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1447,9 +1447,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1459,23 +1459,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1483,7 +1483,7 @@ else i32.const 1488 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1248 @@ -1493,7 +1493,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1492 @@ -1508,28 +1508,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/rt/instanceof.optimized.wat b/tests/compiler/rt/instanceof.optimized.wat index de9834eaaa..c30654f4ba 100644 --- a/tests/compiler/rt/instanceof.optimized.wat +++ b/tests/compiler/rt/instanceof.optimized.wat @@ -225,19 +225,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -262,9 +262,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -272,17 +272,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -570,10 +570,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -585,15 +585,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -623,7 +623,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -659,12 +659,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -682,11 +682,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17952 @@ -694,14 +694,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -711,17 +711,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1194,17 +1194,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1213,19 +1213,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1251,26 +1251,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $0 + local.tee $2 i32.load offset=8 - local.set $2 + local.set $0 local.get $1 global.get $~lib/rt/itcms/white - local.get $0 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $2 + local.get $0 i32.store offset=8 - local.get $2 - local.get $2 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $0 + local.get $2 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2131,19 +2131,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -2153,22 +2153,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17940 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -2182,9 +2182,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -2194,23 +2194,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -2218,7 +2218,7 @@ else i32.const 1504 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1248 @@ -2228,7 +2228,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1508 @@ -2243,28 +2243,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/rt/runtime-incremental-export.optimized.wat b/tests/compiler/rt/runtime-incremental-export.optimized.wat index 0687dde3a8..1c79818c42 100644 --- a/tests/compiler/rt/runtime-incremental-export.optimized.wat +++ b/tests/compiler/rt/runtime-incremental-export.optimized.wat @@ -204,20 +204,20 @@ else i32.const 2 end - local.set $2 + local.set $3 local.get $1 i32.load offset=8 - local.set $3 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and @@ -312,19 +312,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -349,9 +349,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -359,17 +359,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -657,10 +657,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -672,15 +672,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -710,7 +710,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -746,12 +746,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -769,11 +769,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17984 @@ -781,14 +781,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -798,17 +798,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1288,7 +1288,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1314,32 +1314,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $3 i32.add else - local.get $4 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1372,7 +1372,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1380,8 +1380,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1398,7 +1398,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $3 i32.lt_u if i32.const 0 @@ -1408,13 +1408,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1430,7 +1430,7 @@ local.get $5 i32.const -4 i32.and - local.get $4 + local.get $3 i32.sub local.tee $6 i32.const 16 @@ -1440,23 +1440,23 @@ local.get $5 i32.const 2 i32.and - local.get $4 + local.get $3 i32.or i32.store - local.get $4 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 + local.tee $3 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1486,26 +1486,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1520,7 +1520,7 @@ local.get $2 i32.const 20 i32.add - local.tee $2 + local.tee $3 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1532,7 +1532,7 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1547,12 +1547,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $3 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $2 i32.const 3 i32.sub i32.const 0 @@ -1564,7 +1564,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 0 @@ -1579,25 +1579,25 @@ i32.sub i32.const 3 i32.and - local.tee $3 + local.tee $2 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $3 + local.get $2 i32.sub i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.add - local.tee $3 + local.tee $0 i32.const 4 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1607,17 +1607,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $0 i32.const 12 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 8 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1633,22 +1633,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $3 + local.get $0 i32.const 28 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 24 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 20 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 16 i32.sub i32.const 0 @@ -1659,11 +1659,11 @@ i32.and i32.const 24 i32.add - local.tee $3 + local.tee $0 i32.add local.set $1 + local.get $2 local.get $0 - local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1695,7 +1695,7 @@ end end end - local.get $2 + local.get $3 ) (func $~lib/rt/itcms/__pin (param $0 i32) (result i32) (local $1 i32) @@ -1759,7 +1759,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $2 + local.tee $0 i32.load offset=4 i32.const 3 i32.and @@ -1777,33 +1777,33 @@ i32.const 1 i32.eq if - local.get $2 + local.get $0 call $~lib/rt/itcms/Object#makeGray else - local.get $2 + local.get $0 call $~lib/rt/itcms/Object#unlink global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 - local.set $0 - local.get $2 + local.set $1 + local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store offset=4 - local.get $2 local.get $0 + local.get $1 i32.store offset=8 - local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 - local.get $1 local.get $2 + local.get $0 i32.store offset=8 end ) diff --git a/tests/compiler/rt/runtime-minimal-export.optimized.wat b/tests/compiler/rt/runtime-minimal-export.optimized.wat index f63a185774..504167515b 100644 --- a/tests/compiler/rt/runtime-minimal-export.optimized.wat +++ b/tests/compiler/rt/runtime-minimal-export.optimized.wat @@ -117,19 +117,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -154,9 +154,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -164,17 +164,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -462,10 +462,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -477,15 +477,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -515,7 +515,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -551,12 +551,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -574,11 +574,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 1488 @@ -586,14 +586,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -603,17 +603,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -781,7 +781,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -807,32 +807,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -848,16 +848,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -865,7 +865,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -873,8 +873,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -891,7 +891,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -901,13 +901,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -920,40 +920,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -979,26 +979,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/tcms/fromSpace - local.tee $0 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $0 local.get $2 global.get $~lib/rt/tcms/white - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $0 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/tcms/total @@ -1127,7 +1127,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $2 + local.tee $0 i32.load offset=4 i32.const 3 i32.and @@ -1141,30 +1141,30 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 call $~lib/rt/tcms/Object#unlink global.get $~lib/rt/tcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 - local.set $0 - local.get $2 + local.set $1 + local.get $0 global.get $~lib/rt/tcms/white - local.get $1 + local.get $2 i32.or i32.store offset=4 - local.get $2 local.get $0 + local.get $1 i32.store offset=8 - local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 - local.get $1 local.get $2 + local.get $0 i32.store offset=8 ) (func $~lib/rt/tcms/__collect @@ -1220,23 +1220,23 @@ end global.get $~lib/rt/tcms/white i32.eqz - local.set $5 + local.set $4 global.get $~lib/rt/tcms/toSpace - local.tee $4 + local.tee $3 i32.load offset=4 i32.const -4 i32.and local.set $1 loop $while-continue|1 local.get $1 - local.get $4 + local.get $3 i32.ne if local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $5 + local.get $4 i32.ne if i32.const 0 @@ -1310,7 +1310,7 @@ local.get $1 i32.const 4 i32.add - local.tee $2 + local.tee $5 i32.const 1484 i32.ge_u if @@ -1320,15 +1320,15 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $2 + local.get $5 i32.const 4 i32.sub local.set $1 - local.get $2 + local.get $5 i32.const 15 i32.and i32.const 1 - local.get $2 + local.get $5 select if (result i32) i32.const 1 @@ -1366,11 +1366,11 @@ local.get $6 local.get $6 i32.store offset=8 - local.get $4 + local.get $3 global.set $~lib/rt/tcms/fromSpace local.get $6 global.set $~lib/rt/tcms/toSpace - local.get $5 + local.get $4 global.set $~lib/rt/tcms/white ) (func $~lib/rt/__visit_members (param $0 i32) @@ -1435,37 +1435,37 @@ local.get $0 i32.const 20 i32.sub - local.tee $2 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $2 + local.get $0 call $~lib/rt/tcms/Object#unlink global.get $~lib/rt/tcms/toSpace - local.tee $1 + local.tee $2 i32.load offset=8 - local.set $0 - local.get $2 + local.set $1 + local.get $0 global.get $~lib/rt/tcms/white i32.eqz - local.get $1 + local.get $2 i32.or i32.store offset=4 - local.get $2 local.get $0 + local.get $1 i32.store offset=8 - local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 - local.get $1 local.get $2 + local.get $0 i32.store offset=8 end ) diff --git a/tests/compiler/rt/runtime-stub-export.optimized.wat b/tests/compiler/rt/runtime-stub-export.optimized.wat index 174191b564..aa8e2046f1 100644 --- a/tests/compiler/rt/runtime-stub-export.optimized.wat +++ b/tests/compiler/rt/runtime-stub-export.optimized.wat @@ -53,7 +53,7 @@ unreachable end global.get $~lib/rt/stub/offset - local.tee $4 + local.tee $6 i32.const 4 i32.add local.tee $2 @@ -64,23 +64,23 @@ i32.and i32.const 4 i32.sub - local.tee $5 + local.tee $7 i32.add local.tee $3 memory.size - local.tee $6 + local.tee $4 i32.const 16 i32.shl i32.const 15 i32.add i32.const -16 i32.and - local.tee $7 + local.tee $5 i32.gt_u if - local.get $6 + local.get $4 local.get $3 - local.get $7 + local.get $5 i32.sub i32.const 65535 i32.add @@ -88,16 +88,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $7 - local.get $6 - local.get $7 + local.tee $5 + local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $7 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -108,8 +108,8 @@ end local.get $3 global.set $~lib/rt/stub/offset - local.get $4 - local.get $5 + local.get $6 + local.get $7 i32.store local.get $2 i32.const 4 diff --git a/tests/compiler/std-wasi/console.optimized.wat b/tests/compiler/std-wasi/console.optimized.wat index 8b006932f0..fd9d2fde94 100644 --- a/tests/compiler/std-wasi/console.optimized.wat +++ b/tests/compiler/std-wasi/console.optimized.wat @@ -297,38 +297,38 @@ i32.shl local.get $0 i32.add - local.set $3 + local.set $4 local.get $2 local.set $1 loop $while-continue|0 local.get $0 - local.get $3 + local.get $4 i32.lt_u if local.get $0 i32.load16_u - local.tee $5 + local.tee $3 i32.const 128 i32.lt_u if (result i32) local.get $1 - local.get $5 + local.get $3 i32.store8 local.get $1 i32.const 1 i32.add else - local.get $5 + local.get $3 i32.const 2048 i32.lt_u if (result i32) local.get $1 - local.get $5 + local.get $3 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $5 + local.get $3 i32.const 63 i32.and i32.const 128 @@ -341,16 +341,16 @@ i32.const 2 i32.add else - local.get $5 + local.get $3 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $5 + local.get $3 i32.const 56320 i32.lt_u - local.get $3 + local.get $4 local.get $0 i32.const 2 i32.add @@ -359,32 +359,32 @@ if local.get $0 i32.load16_u offset=2 - local.tee $4 + local.tee $5 i32.const 64512 i32.and i32.const 56320 i32.eq if local.get $1 - local.get $5 + local.get $3 i32.const 1023 i32.and i32.const 10 i32.shl i32.const 65536 i32.add - local.get $4 + local.get $5 i32.const 1023 i32.and i32.or - local.tee $4 + local.tee $3 i32.const 63 i32.and i32.const 128 i32.or i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 6 i32.shr_u i32.const 63 @@ -394,7 +394,7 @@ i32.const 16 i32.shl i32.or - local.get $4 + local.get $3 i32.const 12 i32.shr_u i32.const 63 @@ -404,7 +404,7 @@ i32.const 8 i32.shl i32.or - local.get $4 + local.get $3 i32.const 18 i32.shr_u i32.const 240 @@ -424,12 +424,12 @@ end end local.get $1 - local.get $5 + local.get $3 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $5 + local.get $3 i32.const 6 i32.shr_u i32.const 63 @@ -441,7 +441,7 @@ i32.or i32.store16 local.get $1 - local.get $5 + local.get $3 i32.const 63 i32.and i32.const 128 @@ -1086,19 +1086,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -1123,9 +1123,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -1133,17 +1133,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -1431,10 +1431,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -1446,15 +1446,15 @@ call $~lib/wasi/index/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -1484,7 +1484,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -1520,12 +1520,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -1543,11 +1543,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 24368 @@ -1555,14 +1555,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -1572,17 +1572,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1734,7 +1734,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $2 local.get $0 i32.const 1073741820 i32.gt_u @@ -1760,34 +1760,34 @@ i32.const 4 i32.sub end - local.tee $3 - call $~lib/rt/tlsf/searchBlock local.tee $0 + call $~lib/rt/tlsf/searchBlock + local.tee $1 i32.eqz if memory.size - local.tee $0 - local.get $3 + local.tee $1 + local.get $0 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $0 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $0 i32.add else - local.get $3 + local.get $0 end i32.const 4 - local.get $1 + local.get $2 i32.load offset=1568 - local.get $0 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1801,16 +1801,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 - local.get $0 - local.get $2 + local.tee $3 + local.get $1 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1818,18 +1818,18 @@ unreachable end end + local.get $2 local.get $1 - local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 - local.get $3 + local.get $2 + local.get $0 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1840,11 +1840,11 @@ unreachable end end - local.get $0 + local.get $1 i32.load i32.const -4 i32.and - local.get $3 + local.get $0 i32.lt_u if i32.const 0 @@ -1854,13 +1854,13 @@ call $~lib/wasi/index/abort unreachable end + local.get $2 local.get $1 - local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $0 + local.get $1 i32.load - local.set $4 - local.get $3 + local.set $3 + local.get $0 i32.const 4 i32.add i32.const 15 @@ -1873,59 +1873,59 @@ call $~lib/wasi/index/abort unreachable end - local.get $4 + local.get $3 i32.const -4 i32.and - local.get $3 + local.get $0 i32.sub - local.tee $2 + local.tee $4 i32.const 16 i32.ge_u if - local.get $0 - local.get $4 + local.get $1 + local.get $3 i32.const 2 i32.and - local.get $3 + local.get $0 i32.or i32.store - local.get $3 local.get $0 + local.get $1 i32.const 4 i32.add i32.add - local.tee $3 - local.get $2 + local.tee $0 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 - local.get $3 + local.get $2 + local.get $0 call $~lib/rt/tlsf/insertBlock else - local.get $0 - local.get $4 + local.get $1 + local.get $3 i32.const -2 i32.and i32.store - local.get $0 + local.get $1 i32.const 4 i32.add - local.get $0 + local.get $1 i32.load i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.load i32.const -3 i32.and i32.store end - local.get $0 + local.get $1 i32.const 4 i32.add ) @@ -2282,7 +2282,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2305,7 +2305,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -2315,23 +2315,23 @@ call $~lib/wasi/index/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -2339,7 +2339,7 @@ else i32.const 7936 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 5120 @@ -2349,7 +2349,7 @@ call $~lib/wasi/index/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 7940 @@ -2364,27 +2364,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -2411,7 +2411,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $2 + local.set $1 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -2428,11 +2428,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -2474,9 +2474,9 @@ if local.get $0 i32.load - local.tee $1 + local.tee $2 if - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -2500,11 +2500,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -2530,7 +2530,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $2 + local.get $1 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -2681,14 +2681,14 @@ i32.sub i32.const -4 i32.and - local.tee $1 - i32.add local.tee $2 + i32.add + local.tee $1 i32.const 4 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -2698,17 +2698,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 12 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -2724,22 +2724,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $2 + local.get $1 i32.const 28 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 20 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 16 i32.sub i32.const 0 @@ -2750,11 +2750,11 @@ i32.and i32.const 24 i32.add - local.tee $2 + local.tee $1 i32.add local.set $0 - local.get $1 local.get $2 + local.get $1 i32.sub local.set $1 loop $while-continue|0 @@ -2859,26 +2859,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -3150,7 +3150,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -3158,7 +3158,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -3166,51 +3166,51 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $7 + local.tee $4 local.get $0 i32.load offset=16 i32.const 24 i32.mul i32.add - local.set $4 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 local.get $4 - local.get $7 + local.get $8 i32.ne if - local.get $7 + local.get $4 i32.load offset=16 i32.const 1 i32.and i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.load - local.tee $8 + local.tee $6 i32.store offset=8 local.get $2 - local.get $8 + local.get $6 i32.store local.get $2 - local.get $7 + local.get $4 i64.load offset=8 i64.store offset=8 local.get $2 - local.get $8 + local.get $6 call $~lib/util/hash/HASH<~lib/string/String> local.get $1 i32.and i32.const 2 i32.shl - local.get $6 + local.get $5 i32.add - local.tee $8 + local.tee $6 i32.load i32.store offset=16 - local.get $8 + local.get $6 local.get $2 i32.store local.get $2 @@ -3218,20 +3218,20 @@ i32.add local.set $2 end - local.get $7 + local.get $4 i32.const 24 i32.add - local.set $7 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $6 + local.get $5 i32.store - local.get $6 + local.get $5 if local.get $0 - local.get $6 + local.get $5 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -3249,7 +3249,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -3396,7 +3396,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 6000 - local.set $2 + local.set $1 br $__inlined_func$~lib/util/number/utoa64 end local.get $0 @@ -3406,48 +3406,48 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.wrap_i64 - local.tee $1 local.tee $2 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -3458,10 +3458,10 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 local.get $1 + local.get $2 local.get $3 call $~lib/util/number/utoa32_dec_lut else @@ -3516,25 +3516,25 @@ i32.add end end - local.tee $1 + local.tee $2 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store loop $while-continue|0 local.get $0 i64.const 100000000 i64.ge_u if - local.get $1 + local.get $2 i32.const 4 i32.sub - local.tee $3 + local.tee $2 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.add local.get $0 local.get $0 @@ -3545,10 +3545,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $4 + local.tee $3 i32.const 10000 i32.rem_u - local.tee $1 + local.tee $4 i32.const 100 i32.div_u i32.const 2 @@ -3556,7 +3556,7 @@ i32.const 6012 i32.add i64.load32_u - local.get $1 + local.get $4 i32.const 100 i32.rem_u i32.const 2 @@ -3568,15 +3568,15 @@ i64.shl i64.or i64.store - local.get $3 + local.get $2 i32.const 4 i32.sub - local.tee $1 + local.tee $2 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.add - local.get $4 + local.get $3 i32.const 10000 i32.div_u local.tee $3 @@ -3602,10 +3602,10 @@ br $while-continue|0 end end - local.get $2 + local.get $1 local.get $0 i32.wrap_i64 - local.get $1 + local.get $2 call $~lib/util/number/utoa32_dec_lut end global.get $~lib/memory/__stack_pointer @@ -3613,7 +3613,7 @@ i32.add global.set $~lib/memory/__stack_pointer end - local.get $2 + local.get $1 ) (func $~lib/rt/__visit_members (param $0 i32) (local $1 i32) @@ -3917,14 +3917,14 @@ if local.get $2 i32.load16_u - local.tee $7 + local.tee $3 local.get $4 i32.load16_u - local.tee $3 + local.tee $7 i32.ne if - local.get $3 local.get $7 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -3966,9 +3966,9 @@ i32.const 0 ) (func $~lib/console/console.time (param $0 i32) - (local $1 i64) + (local $1 i32) (local $2 i32) - (local $3 i32) + (local $3 i64) (local $4 i32) (local $5 i32) global.get $~lib/memory/__stack_pointer @@ -3981,14 +3981,14 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 global.get $~lib/console/timers - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 local.get $0 local.get $0 call $~lib/util/hash/HASH<~lib/string/String> @@ -4017,10 +4017,10 @@ end global.get $~lib/memory/__stack_pointer global.get $~lib/console/timers - local.tee $4 + local.tee $1 i32.store call $~lib/process/process.hrtime - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -4032,28 +4032,28 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $4 + local.get $1 local.get $0 local.get $0 call $~lib/util/hash/HASH<~lib/string/String> - local.tee $2 + local.tee $4 call $~lib/map/Map<~lib/string/String,u64>#find - local.tee $3 + local.tee $2 if + local.get $2 local.get $3 - local.get $1 i64.store offset=8 else - local.get $4 + local.get $1 i32.load offset=16 - local.get $4 + local.get $1 i32.load offset=12 i32.eq if - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.load offset=20 - local.get $4 + local.get $1 i32.load offset=12 i32.const 3 i32.mul @@ -4061,10 +4061,10 @@ i32.div_s i32.lt_s if (result i32) - local.get $4 + local.get $1 i32.load offset=4 else - local.get $4 + local.get $1 i32.load offset=4 i32.const 1 i32.shl @@ -4074,47 +4074,47 @@ call $~lib/map/Map<~lib/string/String,u64>#rehash end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.load offset=8 - local.tee $5 + local.tee $2 i32.store - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.load offset=16 - local.tee $3 + local.tee $5 i32.const 1 i32.add i32.store offset=16 - local.get $3 + local.get $5 i32.const 24 i32.mul - local.get $5 + local.get $2 i32.add - local.tee $3 + local.tee $2 local.get $0 i32.store local.get $0 if - local.get $4 + local.get $1 local.get $0 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $2 local.get $3 - local.get $1 i64.store offset=8 - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $3 - local.get $4 + local.get $2 + local.get $1 i32.load - local.get $4 + local.get $1 i32.load offset=4 - local.get $2 + local.get $4 i32.and i32.const 2 i32.shl @@ -4123,7 +4123,7 @@ i32.load i32.store offset=16 local.get $0 - local.get $3 + local.get $2 i32.store end global.get $~lib/memory/__stack_pointer @@ -4144,8 +4144,8 @@ unreachable ) (func $~lib/console/timeLogImpl (param $0 i32) - (local $1 i64) - (local $2 i32) + (local $1 i32) + (local $2 i64) global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -4162,22 +4162,22 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 global.get $~lib/console/timers - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 local.get $0 local.get $0 call $~lib/util/hash/HASH<~lib/string/String> call $~lib/map/Map<~lib/string/String,u64>#find - local.tee $2 + local.tee $1 i32.eqz if i32.const 5696 @@ -4187,19 +4187,19 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 + local.get $1 i64.load offset=8 - local.set $1 + local.set $2 call $~lib/process/process.hrtime - local.get $1 + local.get $2 i64.sub i64.const 1000000 i64.div_u - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 call $~lib/number/U64#toString - local.tee $2 + local.tee $1 i32.store offset=4 i32.const 1 local.get $0 @@ -4211,7 +4211,7 @@ i32.const 7584 call $~lib/process/writeString i32.const 1 - local.get $2 + local.get $1 call $~lib/process/writeString global.get $~lib/memory/__stack_pointer i32.const 7616 @@ -4822,16 +4822,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $0 i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $0 local.get $1 local.get $2 select @@ -4840,7 +4840,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $3 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std-wasi/crypto.optimized.wat b/tests/compiler/std-wasi/crypto.optimized.wat index 09424a5109..f2a24fb3c6 100644 --- a/tests/compiler/std-wasi/crypto.optimized.wat +++ b/tests/compiler/std-wasi/crypto.optimized.wat @@ -253,38 +253,38 @@ i32.shl local.get $0 i32.add - local.set $3 + local.set $4 local.get $2 local.set $1 loop $while-continue|0 local.get $0 - local.get $3 + local.get $4 i32.lt_u if local.get $0 i32.load16_u - local.tee $5 + local.tee $3 i32.const 128 i32.lt_u if (result i32) local.get $1 - local.get $5 + local.get $3 i32.store8 local.get $1 i32.const 1 i32.add else - local.get $5 + local.get $3 i32.const 2048 i32.lt_u if (result i32) local.get $1 - local.get $5 + local.get $3 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $5 + local.get $3 i32.const 63 i32.and i32.const 128 @@ -297,16 +297,16 @@ i32.const 2 i32.add else - local.get $5 + local.get $3 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $5 + local.get $3 i32.const 56320 i32.lt_u - local.get $3 + local.get $4 local.get $0 i32.const 2 i32.add @@ -315,32 +315,32 @@ if local.get $0 i32.load16_u offset=2 - local.tee $4 + local.tee $5 i32.const 64512 i32.and i32.const 56320 i32.eq if local.get $1 - local.get $5 + local.get $3 i32.const 1023 i32.and i32.const 10 i32.shl i32.const 65536 i32.add - local.get $4 + local.get $5 i32.const 1023 i32.and i32.or - local.tee $4 + local.tee $3 i32.const 63 i32.and i32.const 128 i32.or i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 6 i32.shr_u i32.const 63 @@ -350,7 +350,7 @@ i32.const 16 i32.shl i32.or - local.get $4 + local.get $3 i32.const 12 i32.shr_u i32.const 63 @@ -360,7 +360,7 @@ i32.const 8 i32.shl i32.or - local.get $4 + local.get $3 i32.const 18 i32.shr_u i32.const 240 @@ -380,12 +380,12 @@ end end local.get $1 - local.get $5 + local.get $3 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $5 + local.get $3 i32.const 6 i32.shr_u i32.const 63 @@ -397,7 +397,7 @@ i32.or i32.store16 local.get $1 - local.get $5 + local.get $3 i32.const 63 i32.and i32.const 128 @@ -758,7 +758,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -781,7 +781,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -791,23 +791,23 @@ call $~lib/wasi/index/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -815,7 +815,7 @@ else i32.const 6864 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1472 @@ -825,7 +825,7 @@ call $~lib/wasi/index/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 6868 @@ -840,27 +840,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -948,19 +948,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -985,9 +985,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -995,17 +995,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -1293,10 +1293,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -1308,15 +1308,15 @@ call $~lib/wasi/index/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -1346,7 +1346,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -1382,12 +1382,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -1405,11 +1405,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 23296 @@ -1417,14 +1417,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -1434,17 +1434,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1530,7 +1530,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $2 + local.set $1 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -1547,11 +1547,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -1593,9 +1593,9 @@ if local.get $0 i32.load - local.tee $1 + local.tee $2 if - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -1619,11 +1619,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -1649,7 +1649,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $2 + local.get $1 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -1869,7 +1869,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $2 local.get $0 i32.const 1073741820 i32.gt_u @@ -1895,34 +1895,34 @@ i32.const 4 i32.sub end - local.tee $3 - call $~lib/rt/tlsf/searchBlock local.tee $0 + call $~lib/rt/tlsf/searchBlock + local.tee $1 i32.eqz if memory.size - local.tee $0 - local.get $3 + local.tee $1 + local.get $0 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $0 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $0 i32.add else - local.get $3 + local.get $0 end i32.const 4 - local.get $1 + local.get $2 i32.load offset=1568 - local.get $0 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1936,16 +1936,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 - local.get $0 - local.get $2 + local.tee $3 + local.get $1 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1953,18 +1953,18 @@ unreachable end end + local.get $2 local.get $1 - local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 - local.get $3 + local.get $2 + local.get $0 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1975,11 +1975,11 @@ unreachable end end - local.get $0 + local.get $1 i32.load i32.const -4 i32.and - local.get $3 + local.get $0 i32.lt_u if i32.const 0 @@ -1989,13 +1989,13 @@ call $~lib/wasi/index/abort unreachable end + local.get $2 local.get $1 - local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $0 + local.get $1 i32.load - local.set $4 - local.get $3 + local.set $3 + local.get $0 i32.const 4 i32.add i32.const 15 @@ -2008,59 +2008,59 @@ call $~lib/wasi/index/abort unreachable end - local.get $4 + local.get $3 i32.const -4 i32.and - local.get $3 + local.get $0 i32.sub - local.tee $2 + local.tee $4 i32.const 16 i32.ge_u if - local.get $0 - local.get $4 + local.get $1 + local.get $3 i32.const 2 i32.and - local.get $3 + local.get $0 i32.or i32.store - local.get $3 local.get $0 + local.get $1 i32.const 4 i32.add i32.add - local.tee $3 - local.get $2 + local.tee $0 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 - local.get $3 + local.get $2 + local.get $0 call $~lib/rt/tlsf/insertBlock else - local.get $0 - local.get $4 + local.get $1 + local.get $3 i32.const -2 i32.and i32.store - local.get $0 + local.get $1 i32.const 4 i32.add - local.get $0 + local.get $1 i32.load i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.load i32.const -3 i32.and i32.store end - local.get $0 + local.get $1 i32.const 4 i32.add ) @@ -2134,14 +2134,14 @@ i32.sub i32.const -4 i32.and - local.tee $1 - i32.add local.tee $2 + i32.add + local.tee $1 i32.const 4 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -2151,17 +2151,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 12 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -2177,22 +2177,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $2 + local.get $1 i32.const 28 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 20 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 16 i32.sub i32.const 0 @@ -2203,11 +2203,11 @@ i32.and i32.const 24 i32.add - local.tee $2 + local.tee $1 i32.add local.set $0 - local.get $1 local.get $2 + local.get $1 i32.sub local.set $1 loop $while-continue|0 @@ -2312,26 +2312,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2819,59 +2819,59 @@ local.get $1 i32.const 255 i32.and - local.tee $1 local.tee $2 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $1 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $1 ) (func $~lib/util/memory/memcpy (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -3328,105 +3328,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3458,41 +3468,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3769,7 +3781,7 @@ (local $6 i32) local.get $0 i32.load offset=4 - local.set $4 + local.set $5 local.get $0 i32.load offset=8 local.set $1 @@ -3791,7 +3803,7 @@ local.get $1 i32.const 1 i32.sub - local.tee $5 + local.tee $6 i32.const 0 i32.lt_s if @@ -3804,13 +3816,13 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $5 + local.get $6 i32.eqz if block $__inlined_func$~lib/util/number/utoa32 (result i32) - local.get $4 + local.get $5 i32.load8_u - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -3822,7 +3834,7 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $0 + local.get $2 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -3833,79 +3845,79 @@ br $__inlined_func$~lib/util/number/utoa32 end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.tee $1 + local.tee $0 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store + local.get $1 local.get $2 local.get $0 - local.get $1 call $~lib/util/number/utoa32_dec_lut global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 end local.set $0 br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.const 6652 i32.load i32.const 1 i32.shr_u - local.tee $6 + local.tee $4 i32.const 10 i32.add i32.mul @@ -3920,7 +3932,7 @@ i32.store loop $for-loop|0 local.get $2 - local.get $5 + local.get $6 i32.lt_s if local.get $0 @@ -3929,14 +3941,14 @@ local.get $1 i32.add local.get $2 - local.get $4 + local.get $5 i32.add i32.load8_u call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $6 + local.get $4 if local.get $0 i32.const 1 @@ -3944,12 +3956,12 @@ local.get $1 i32.add i32.const 6656 - local.get $6 + local.get $4 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $6 + local.get $4 i32.add local.set $0 end @@ -3966,8 +3978,8 @@ i32.shl local.get $1 i32.add - local.get $4 local.get $5 + local.get $6 i32.add i32.load8_u call $~lib/util/number/itoa_buffered @@ -3996,43 +4008,43 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $1 - local.get $1 + local.tee $5 + local.get $5 select - local.tee $3 + local.tee $4 local.get $2 i32.const 0 local.get $2 i32.const 0 i32.gt_s select - local.tee $2 - local.get $1 + local.tee $1 + local.get $5 local.get $1 - local.get $2 - i32.gt_s + local.get $5 + i32.lt_s select - local.tee $2 - local.get $2 - local.get $3 + local.tee $1 + local.get $1 + local.get $4 i32.gt_s select i32.const 1 i32.shl - local.set $4 + local.set $3 block $__inlined_func$~lib/string/String#substring - local.get $3 - local.get $2 - local.get $2 - local.get $3 + local.get $4 + local.get $1 + local.get $1 + local.get $4 i32.lt_s select i32.const 1 i32.shl - local.tee $2 - local.get $4 + local.tee $1 + local.get $3 i32.sub - local.tee $3 + local.tee $2 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -4044,12 +4056,12 @@ br $__inlined_func$~lib/string/String#substring end i32.const 0 - local.get $1 + local.get $5 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.eq - local.get $4 + local.get $3 select if global.get $~lib/memory/__stack_pointer @@ -4059,16 +4071,16 @@ br $__inlined_func$~lib/string/String#substring end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 1 call $~lib/rt/itcms/__new local.tee $1 i32.store local.get $1 local.get $0 - local.get $4 - i32.add local.get $3 + i32.add + local.get $2 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 @@ -4194,7 +4206,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 br_table $case4|0 $case3|0 $case2|0 $case1|0 $case0|0 $break|0 end local.get $0 @@ -4213,7 +4225,7 @@ end local.get $0 i32.load16_u offset=2 - local.tee $3 + local.tee $4 i32.const 128 i32.ge_u br_if $break|0 @@ -4228,10 +4240,10 @@ i32.const 6680 i32.store i32.const 6676 - local.get $4 + local.get $3 i32.store i32.const 6680 - local.get $3 + local.get $4 i32.const 8 i32.shl local.get $5 @@ -4275,10 +4287,10 @@ i32.load offset=16 local.get $0 i32.add - local.set $3 + local.set $4 loop $while-continue|0 local.get $1 - local.get $3 + local.get $4 i32.lt_u if local.get $1 @@ -4304,7 +4316,7 @@ i32.and i32.const 55296 i32.eq - local.get $3 + local.get $4 local.get $1 i32.const 2 i32.add @@ -4348,7 +4360,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $4 + local.get $3 local.get $1 call $~lib/string/String.UTF8.encodeUnsafe@varargs local.get $2 @@ -4902,9 +4914,9 @@ i32.const 0 i32.gt_s select - local.set $4 + local.set $5 local.get $0 - local.get $4 + local.get $5 i32.sub local.tee $0 i32.const 0 @@ -4912,8 +4924,8 @@ i32.const 0 i32.gt_s select - local.tee $5 - local.set $7 + local.tee $6 + local.set $4 local.get $1 i32.const 4 i32.sub @@ -4963,7 +4975,7 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $7 + local.get $4 i32.const 1073741820 i32.gt_u if @@ -4975,13 +4987,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new local.tee $3 i32.store offset=4 local.get $3 - local.get $7 + local.get $4 call $~lib/memory/memory.fill local.get $0 local.get $3 @@ -4996,7 +5008,7 @@ local.get $3 i32.store offset=4 local.get $0 - local.get $7 + local.get $4 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 @@ -5013,11 +5025,11 @@ i32.store local.get $0 i32.load offset=4 - local.get $4 + local.get $5 local.get $2 i32.load offset=4 i32.add - local.get $5 + local.get $6 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 diff --git a/tests/compiler/std-wasi/process.optimized.wat b/tests/compiler/std-wasi/process.optimized.wat index 652a46555f..0d0f3bfdec 100644 --- a/tests/compiler/std-wasi/process.optimized.wat +++ b/tests/compiler/std-wasi/process.optimized.wat @@ -283,38 +283,38 @@ i32.shl local.get $0 i32.add - local.set $3 + local.set $4 local.get $2 local.set $1 loop $while-continue|0 local.get $0 - local.get $3 + local.get $4 i32.lt_u if local.get $0 i32.load16_u - local.tee $5 + local.tee $3 i32.const 128 i32.lt_u if (result i32) local.get $1 - local.get $5 + local.get $3 i32.store8 local.get $1 i32.const 1 i32.add else - local.get $5 + local.get $3 i32.const 2048 i32.lt_u if (result i32) local.get $1 - local.get $5 + local.get $3 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $5 + local.get $3 i32.const 63 i32.and i32.const 128 @@ -327,16 +327,16 @@ i32.const 2 i32.add else - local.get $5 + local.get $3 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $5 + local.get $3 i32.const 56320 i32.lt_u - local.get $3 + local.get $4 local.get $0 i32.const 2 i32.add @@ -345,32 +345,32 @@ if local.get $0 i32.load16_u offset=2 - local.tee $4 + local.tee $5 i32.const 64512 i32.and i32.const 56320 i32.eq if local.get $1 - local.get $5 + local.get $3 i32.const 1023 i32.and i32.const 10 i32.shl i32.const 65536 i32.add - local.get $4 + local.get $5 i32.const 1023 i32.and i32.or - local.tee $4 + local.tee $3 i32.const 63 i32.and i32.const 128 i32.or i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 6 i32.shr_u i32.const 63 @@ -380,7 +380,7 @@ i32.const 16 i32.shl i32.or - local.get $4 + local.get $3 i32.const 12 i32.shr_u i32.const 63 @@ -390,7 +390,7 @@ i32.const 8 i32.shl i32.or - local.get $4 + local.get $3 i32.const 18 i32.shr_u i32.const 240 @@ -410,12 +410,12 @@ end end local.get $1 - local.get $5 + local.get $3 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $5 + local.get $3 i32.const 6 i32.shr_u i32.const 63 @@ -427,7 +427,7 @@ i32.or i32.store16 local.get $1 - local.get $5 + local.get $3 i32.const 63 i32.and i32.const 128 @@ -1072,19 +1072,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -1109,9 +1109,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -1119,17 +1119,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -1417,10 +1417,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -1432,15 +1432,15 @@ call $~lib/wasi/index/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -1470,7 +1470,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -1506,12 +1506,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -1529,11 +1529,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 23792 @@ -1541,14 +1541,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -1558,17 +1558,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1720,7 +1720,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $2 local.get $0 i32.const 1073741820 i32.gt_u @@ -1746,34 +1746,34 @@ i32.const 4 i32.sub end - local.tee $3 - call $~lib/rt/tlsf/searchBlock local.tee $0 + call $~lib/rt/tlsf/searchBlock + local.tee $1 i32.eqz if memory.size - local.tee $0 - local.get $3 + local.tee $1 + local.get $0 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $0 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $0 i32.add else - local.get $3 + local.get $0 end i32.const 4 - local.get $1 + local.get $2 i32.load offset=1568 - local.get $0 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1787,16 +1787,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 - local.get $0 - local.get $2 + local.tee $3 + local.get $1 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1804,18 +1804,18 @@ unreachable end end + local.get $2 local.get $1 - local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 - local.get $3 + local.get $2 + local.get $0 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1826,11 +1826,11 @@ unreachable end end - local.get $0 + local.get $1 i32.load i32.const -4 i32.and - local.get $3 + local.get $0 i32.lt_u if i32.const 0 @@ -1840,13 +1840,13 @@ call $~lib/wasi/index/abort unreachable end + local.get $2 local.get $1 - local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $0 + local.get $1 i32.load - local.set $4 - local.get $3 + local.set $3 + local.get $0 i32.const 4 i32.add i32.const 15 @@ -1859,59 +1859,59 @@ call $~lib/wasi/index/abort unreachable end - local.get $4 + local.get $3 i32.const -4 i32.and - local.get $3 + local.get $0 i32.sub - local.tee $2 + local.tee $4 i32.const 16 i32.ge_u if - local.get $0 - local.get $4 + local.get $1 + local.get $3 i32.const 2 i32.and - local.get $3 + local.get $0 i32.or i32.store - local.get $3 local.get $0 + local.get $1 i32.const 4 i32.add i32.add - local.tee $3 - local.get $2 + local.tee $0 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 - local.get $3 + local.get $2 + local.get $0 call $~lib/rt/tlsf/insertBlock else - local.get $0 - local.get $4 + local.get $1 + local.get $3 i32.const -2 i32.and i32.store - local.get $0 + local.get $1 i32.const 4 i32.add - local.get $0 + local.get $1 i32.load i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.load i32.const -3 i32.and i32.store end - local.get $0 + local.get $1 i32.const 4 i32.add ) @@ -1983,7 +1983,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 br_table $case4|0 $case3|0 $case2|0 $case1|0 $case0|0 $break|0 end local.get $0 @@ -2002,7 +2002,7 @@ end local.get $0 i32.load16_u offset=2 - local.tee $3 + local.tee $4 i32.const 128 i32.ge_u br_if $break|0 @@ -2017,10 +2017,10 @@ i32.const 1096 i32.store i32.const 1092 - local.get $4 + local.get $3 i32.store i32.const 1096 - local.get $3 + local.get $4 i32.const 8 i32.shl local.get $5 @@ -2064,10 +2064,10 @@ i32.load offset=16 local.get $0 i32.add - local.set $3 + local.set $4 loop $while-continue|0 local.get $1 - local.get $3 + local.get $4 i32.lt_u if local.get $1 @@ -2093,7 +2093,7 @@ i32.and i32.const 55296 i32.eq - local.get $3 + local.get $4 local.get $1 i32.const 2 i32.add @@ -2137,7 +2137,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $4 + local.get $3 local.get $1 call $~lib/string/String.UTF8.encodeUnsafe@varargs local.get $2 @@ -2311,7 +2311,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2334,7 +2334,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -2344,23 +2344,23 @@ call $~lib/wasi/index/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -2368,7 +2368,7 @@ else i32.const 7360 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 4784 @@ -2378,7 +2378,7 @@ call $~lib/wasi/index/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 7364 @@ -2393,27 +2393,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -2440,7 +2440,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $2 + local.set $1 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -2457,11 +2457,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -2503,9 +2503,9 @@ if local.get $0 i32.load - local.tee $1 + local.tee $2 if - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -2529,11 +2529,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -2559,7 +2559,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $2 + local.get $1 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -2710,14 +2710,14 @@ i32.sub i32.const -4 i32.and - local.tee $1 - i32.add local.tee $2 + i32.add + local.tee $1 i32.const 4 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -2727,17 +2727,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 12 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -2753,22 +2753,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $2 + local.get $1 i32.const 28 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 20 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 16 i32.sub i32.const 0 @@ -2779,11 +2779,11 @@ i32.and i32.const 24 i32.add - local.tee $2 + local.tee $1 i32.add local.set $0 - local.get $1 local.get $2 + local.get $1 i32.sub local.set $1 loop $while-continue|0 @@ -2888,26 +2888,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -3382,105 +3382,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3512,41 +3522,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3820,7 +3832,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $2 i32.load i32.const -4 i32.and @@ -3829,20 +3841,20 @@ local.get $1 i32.ge_u if - local.get $3 + local.get $2 local.get $1 i32.store offset=16 local.get $0 return end local.get $1 - local.get $3 + local.get $2 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.load offset=16 local.tee $0 local.get $0 @@ -3850,7 +3862,7 @@ i32.gt_u select call $~lib/memory/memory.copy - local.get $2 + local.get $3 ) (func $~lib/array/ensureCapacity (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -4038,14 +4050,14 @@ if local.get $1 i32.load16_u - local.tee $4 + local.tee $0 local.get $2 i32.load16_u - local.tee $0 + local.tee $4 i32.ne if - local.get $4 local.get $0 + local.get $4 i32.sub return end @@ -4370,7 +4382,7 @@ local.get $2 i32.const 4 i32.sub - local.tee $3 + local.tee $2 i32.const 1 i32.shl local.get $0 @@ -4384,10 +4396,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $4 + local.tee $3 i32.const 10000 i32.rem_u - local.tee $2 + local.tee $4 i32.const 100 i32.div_u i32.const 2 @@ -4395,7 +4407,7 @@ i32.const 5708 i32.add i64.load32_u - local.get $2 + local.get $4 i32.const 100 i32.rem_u i32.const 2 @@ -4407,7 +4419,7 @@ i64.shl i64.or i64.store - local.get $3 + local.get $2 i32.const 4 i32.sub local.tee $2 @@ -4415,7 +4427,7 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $3 i32.const 10000 i32.div_u local.tee $3 @@ -4488,19 +4500,19 @@ i32.const 2 i32.shl i32.add - local.set $0 + local.set $3 loop $while-continue|0 - local.get $0 local.get $2 - i32.gt_u + local.get $3 + i32.lt_u if local.get $2 i32.load - local.tee $3 + local.tee $0 if - local.get $3 + local.get $0 if - local.get $3 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -4656,7 +4668,7 @@ if local.get $2 i32.load offset=8 - local.tee $0 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -4665,31 +4677,31 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.load - local.tee $4 + local.tee $0 i32.store block $__inlined_func$~lib/string/String.__eq (result i32) i32.const 1 + local.get $0 local.get $1 - local.get $4 i32.eq br_if $__inlined_func$~lib/string/String.__eq drop i32.const 0 local.get $1 i32.const 0 - local.get $4 + local.get $0 select i32.eqz br_if $__inlined_func$~lib/string/String.__eq drop i32.const 0 - local.get $4 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 local.get $1 i32.const 20 i32.sub @@ -4699,10 +4711,10 @@ i32.ne br_if $__inlined_func$~lib/string/String.__eq drop - local.get $4 + local.get $0 i32.const 0 local.get $1 - local.get $3 + local.get $4 call $~lib/util/string/compareImpl i32.eqz end @@ -4715,7 +4727,7 @@ local.get $2 return end - local.get $0 + local.get $3 i32.const -2 i32.and local.set $2 @@ -4771,18 +4783,18 @@ end i32.const 1088 i32.load - local.tee $6 + local.tee $7 i32.const 2 i32.shl local.tee $0 i32.const 1092 i32.load i32.add - local.tee $7 + local.tee $8 call $~lib/rt/tlsf/__alloc - local.tee $4 + local.tee $3 local.get $0 - local.get $4 + local.get $3 i32.add call $~lib/bindings/wasi_snapshot_preview1/environ_get local.tee $0 @@ -4860,95 +4872,95 @@ local.get $0 i32.store loop $for-loop|0 - local.get $5 - local.get $6 + local.get $4 + local.get $7 i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 2 i32.shl - local.get $4 + local.get $3 i32.add i32.load local.tee $1 local.get $1 - local.get $7 + local.get $8 i32.add - local.get $4 + local.get $3 i32.sub call $~lib/string/String.UTF8.decodeUnsafe - local.tee $3 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 5168 i32.store offset=8 i32.const 0 - local.set $8 + local.set $1 block $__inlined_func$~lib/string/String#indexOf i32.const 5164 i32.load i32.const 1 i32.shr_u - local.tee $2 + local.tee $6 i32.eqz br_if $__inlined_func$~lib/string/String#indexOf i32.const -1 - local.set $8 - local.get $3 + local.set $1 + local.get $2 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $1 + local.tee $5 i32.eqz br_if $__inlined_func$~lib/string/String#indexOf i32.const 0 - local.get $1 - local.get $1 + local.get $5 + local.get $5 select - local.set $8 - local.get $1 - local.get $2 - i32.sub local.set $1 + local.get $5 + local.get $6 + i32.sub + local.set $5 loop $for-loop|00 local.get $1 - local.get $8 - i32.ge_s + local.get $5 + i32.le_s if - local.get $3 - local.get $8 - i32.const 5168 local.get $2 + local.get $1 + i32.const 5168 + local.get $6 call $~lib/util/string/compareImpl i32.eqz br_if $__inlined_func$~lib/string/String#indexOf - local.get $8 + local.get $1 i32.const 1 i32.add - local.set $8 + local.set $1 br $for-loop|00 end end i32.const -1 - local.set $8 + local.set $1 end - local.get $8 + local.get $1 i32.const -1 i32.xor if - local.get $3 + local.get $2 i32.const 0 - local.get $8 + local.get $1 call $~lib/string/String#substring - local.set $2 + local.set $5 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $5 i32.store offset=8 - local.get $3 - local.get $8 + local.get $2 + local.get $1 i32.const 1 i32.add i32.const 2147483647 @@ -4958,7 +4970,7 @@ local.get $1 i32.store offset=12 local.get $0 - local.get $2 + local.get $5 local.get $1 call $~lib/map/Map<~lib/string/String,~lib/string/String>#set else @@ -4966,18 +4978,18 @@ i32.const 5200 i32.store offset=12 local.get $0 - local.get $3 + local.get $2 i32.const 5200 call $~lib/map/Map<~lib/string/String,~lib/string/String>#set end - local.get $5 + local.get $4 i32.const 1 i32.add - local.set $5 + local.set $4 br $for-loop|0 end end - local.get $4 + local.get $3 call $~lib/rt/tlsf/__free global.get $~lib/memory/__stack_pointer i32.const 16 @@ -4995,8 +5007,8 @@ ) (func $start:std-wasi/process (local $0 i32) - (local $1 i32) - (local $2 i64) + (local $1 i64) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -5012,13 +5024,13 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 i32.const 0 i32.store offset=8 - local.get $3 + local.get $2 i32.const 1056 i32.store i32.const 1056 @@ -5084,11 +5096,11 @@ i32.const 1088 i32.const 1092 call $~lib/bindings/wasi_snapshot_preview1/args_sizes_get - local.tee $3 + local.tee $2 i32.const 65535 i32.and if - local.get $3 + local.get $2 call $~lib/bindings/wasi_snapshot_preview1/errnoToString i32.const 4224 i32.const 64 @@ -5098,25 +5110,25 @@ end i32.const 1088 i32.load - local.tee $3 + local.tee $4 i32.const 2 i32.shl - local.tee $4 + local.tee $5 i32.const 1092 i32.load i32.add - local.tee $5 - call $~lib/rt/tlsf/__alloc local.tee $6 - local.get $4 - local.get $6 + call $~lib/rt/tlsf/__alloc + local.tee $2 + local.get $2 + local.get $5 i32.add call $~lib/bindings/wasi_snapshot_preview1/args_get - local.tee $4 + local.tee $5 i32.const 65535 i32.and if - local.get $4 + local.get $5 call $~lib/bindings/wasi_snapshot_preview1/errnoToString i32.const 4224 i32.const 71 @@ -5125,49 +5137,49 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 call $~lib/array/Array<~lib/string/String>#constructor - local.tee $4 + local.tee $5 i32.store loop $for-loop|0 - local.get $1 local.get $3 + local.get $4 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.const 2 i32.shl - local.get $6 + local.get $2 i32.add i32.load local.tee $7 - local.get $5 + local.get $6 local.get $7 i32.add - local.get $6 + local.get $2 i32.sub call $~lib/string/String.UTF8.decodeUnsafe local.tee $7 i32.store offset=4 - local.get $4 - local.get $1 + local.get $5 + local.get $3 local.get $7 call $~lib/array/Array<~lib/string/String>#__set - local.get $1 + local.get $3 i32.const 1 i32.add - local.set $1 + local.set $3 br $for-loop|0 end end - local.get $6 + local.get $2 call $~lib/rt/tlsf/__free global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $5 global.set $~lib/process/process.argv global.get $~lib/process/process.argv global.set $std-wasi/process/argv @@ -5178,28 +5190,28 @@ call $~lib/console/console.log global.get $~lib/memory/__stack_pointer global.get $std-wasi/process/argv - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.load offset=12 - local.set $1 + local.set $3 loop $for-loop|00 local.get $0 - local.get $1 + local.get $3 i32.lt_s if global.get $~lib/memory/__stack_pointer global.get $std-wasi/process/argv - local.tee $3 + local.tee $2 i32.store offset=4 - local.get $3 + local.get $2 local.get $0 call $~lib/array/Array<~lib/string/String>#__get - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store - local.get $3 + local.get $2 call $~lib/console/console.log local.get $0 i32.const 1 @@ -5213,15 +5225,15 @@ global.get $~lib/process/process.env global.set $std-wasi/process/env global.get $~lib/memory/__stack_pointer - local.tee $3 - global.get $std-wasi/process/env local.tee $4 + global.get $std-wasi/process/env + local.tee $3 i32.store i32.const 0 - local.set $1 + local.set $2 i32.const 0 local.set $0 - local.get $3 + local.get $4 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -5230,25 +5242,25 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $4 i64.const 0 i64.store - local.get $4 + local.get $3 i32.load offset=8 local.set $5 - local.get $3 local.get $4 + local.get $3 i32.load offset=16 - local.tee $3 - call $~lib/array/Array<~lib/string/String>#constructor local.tee $4 + call $~lib/array/Array<~lib/string/String>#constructor + local.tee $3 i32.store loop $for-loop|01 - local.get $1 - local.get $3 + local.get $2 + local.get $4 i32.lt_s if - local.get $1 + local.get $2 i32.const 12 i32.mul local.get $5 @@ -5264,7 +5276,7 @@ i32.load local.tee $6 i32.store offset=4 - local.get $4 + local.get $3 local.get $0 local.get $6 call $~lib/array/Array<~lib/string/String>#__set @@ -5273,25 +5285,25 @@ i32.add local.set $0 end - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|01 end end - local.get $4 + local.get $3 local.get $0 i32.const 0 call $~lib/array/ensureCapacity - local.get $4 + local.get $3 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $3 global.set $std-wasi/process/envKeys global.get $~lib/memory/__stack_pointer i32.const 5232 @@ -5302,33 +5314,33 @@ local.set $0 global.get $~lib/memory/__stack_pointer global.get $std-wasi/process/envKeys - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.load offset=12 - local.set $1 + local.set $3 loop $for-loop|1 local.get $0 - local.get $1 + local.get $3 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 global.get $std-wasi/process/envKeys local.tee $4 i32.store - local.get $3 + local.get $2 local.get $4 local.get $0 call $~lib/array/Array<~lib/string/String>#__get - local.tee $3 + local.tee $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 5280 i32.store offset=4 i32.const 5280 call $~lib/process/writeString - local.get $3 + local.get $2 call $~lib/console/console.log global.get $~lib/memory/__stack_pointer i32.const 5312 @@ -5340,11 +5352,11 @@ local.tee $4 i32.store offset=4 local.get $4 - local.get $3 - local.get $3 + local.get $2 + local.get $2 call $~lib/util/hash/HASH<~lib/string/String> call $~lib/map/Map<~lib/string/String,~lib/string/String>#find - local.tee $3 + local.tee $2 i32.eqz if i32.const 5344 @@ -5355,11 +5367,11 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.load offset=4 - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 call $~lib/console/console.log local.get $0 i32.const 1 @@ -5393,7 +5405,7 @@ i64.load i64.const 1000000 i64.div_u - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -5406,7 +5418,7 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/number/itoa64 - local.get $2 + local.get $1 i64.eqz if global.get $~lib/memory/__stack_pointer @@ -5418,21 +5430,21 @@ br $__inlined_func$~lib/util/number/itoa64 end i64.const 0 - local.get $2 + local.get $1 i64.sub - local.get $2 - local.get $2 + local.get $1 + local.get $1 i64.const 63 i64.shr_u i32.wrap_i64 - local.tee $1 - select local.tee $2 + select + local.tee $1 i64.const 4294967295 i64.le_u if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.wrap_i64 local.tee $3 local.tee $0 @@ -5481,7 +5493,7 @@ i32.add end end - local.get $1 + local.get $2 i32.add local.tee $4 i32.const 1 @@ -5496,57 +5508,57 @@ call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i64.const 1000000000000000 i64.lt_u if (result i32) - local.get $2 + local.get $1 i64.const 1000000000000 i64.lt_u if (result i32) - local.get $2 + local.get $1 i64.const 100000000000 i64.ge_u i32.const 10 i32.add - local.get $2 + local.get $1 i64.const 10000000000 i64.ge_u i32.add else - local.get $2 + local.get $1 i64.const 100000000000000 i64.ge_u i32.const 13 i32.add - local.get $2 + local.get $1 i64.const 10000000000000 i64.ge_u i32.add end else - local.get $2 + local.get $1 i64.const 100000000000000000 i64.lt_u if (result i32) - local.get $2 + local.get $1 i64.const 10000000000000000 i64.ge_u i32.const 16 i32.add else - local.get $2 + local.get $1 i64.const -8446744073709551616 i64.ge_u i32.const 18 i32.add - local.get $2 + local.get $1 i64.const 1000000000000000000 i64.ge_u i32.add end end - local.get $1 + local.get $2 i32.add local.tee $3 i32.const 1 @@ -5556,11 +5568,11 @@ local.tee $0 i32.store local.get $0 - local.get $2 + local.get $1 local.get $3 call $~lib/util/number/utoa64_dec_lut end - local.get $1 + local.get $2 if local.get $0 i32.const 45 @@ -5599,7 +5611,7 @@ end i32.const 1088 i64.load - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -5612,7 +5624,7 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/number/utoa64 - local.get $2 + local.get $1 i64.eqz if global.get $~lib/memory/__stack_pointer @@ -5623,14 +5635,14 @@ local.set $0 br $__inlined_func$~lib/util/number/utoa64 end - local.get $2 + local.get $1 i64.const 4294967295 i64.le_u if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.wrap_i64 - local.tee $1 + local.tee $2 local.tee $0 i32.const 100000 i32.lt_u @@ -5685,62 +5697,62 @@ local.tee $0 i32.store local.get $0 - local.get $1 + local.get $2 local.get $3 call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i64.const 1000000000000000 i64.lt_u if (result i32) - local.get $2 + local.get $1 i64.const 1000000000000 i64.lt_u if (result i32) - local.get $2 + local.get $1 i64.const 100000000000 i64.ge_u i32.const 10 i32.add - local.get $2 + local.get $1 i64.const 10000000000 i64.ge_u i32.add else - local.get $2 + local.get $1 i64.const 100000000000000 i64.ge_u i32.const 13 i32.add - local.get $2 + local.get $1 i64.const 10000000000000 i64.ge_u i32.add end else - local.get $2 + local.get $1 i64.const 100000000000000000 i64.lt_u if (result i32) - local.get $2 + local.get $1 i64.const 10000000000000000 i64.ge_u i32.const 16 i32.add else - local.get $2 + local.get $1 i64.const -8446744073709551616 i64.ge_u i32.const 18 i32.add - local.get $2 + local.get $1 i64.const 1000000000000000000 i64.ge_u i32.add end end - local.tee $1 + local.tee $2 i32.const 1 i32.shl i32.const 1 @@ -5748,8 +5760,8 @@ local.tee $0 i32.store local.get $0 - local.get $2 local.get $1 + local.get $2 call $~lib/util/number/utoa64_dec_lut end global.get $~lib/memory/__stack_pointer @@ -5779,12 +5791,12 @@ i32.const 20 i32.sub i32.load offset=16 - local.set $1 + local.set $2 i32.const 1088 local.get $0 i32.store i32.const 1092 - local.get $1 + local.get $2 i32.store i32.const 0 i32.const 1088 @@ -5846,18 +5858,18 @@ i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 0 i32.store offset=4 - local.get $3 + local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $1 i32.const 0 i32.store offset=12 local.get $0 @@ -5880,38 +5892,38 @@ select i32.const 2 i32.shl - local.tee $2 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $1 local.get $2 - call $~lib/memory/memory.fill local.get $3 + call $~lib/memory/memory.fill local.get $1 + local.get $2 i32.store - local.get $1 + local.get $2 if - local.get $3 local.get $1 + local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 local.get $1 + local.get $2 i32.store offset=4 + local.get $1 local.get $3 - local.get $2 i32.store offset=8 - local.get $3 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 ) (func $~lib/string/String.UTF8.decodeUnsafe (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -5969,12 +5981,12 @@ block $while-break|0 local.get $0 i32.load8_u - local.set $6 + local.set $3 local.get $0 i32.const 1 i32.add local.set $0 - local.get $6 + local.get $3 i32.const 128 i32.and if @@ -5986,20 +5998,20 @@ i32.load8_u i32.const 63 i32.and - local.set $3 + local.set $5 local.get $0 i32.const 1 i32.add local.set $0 - local.get $6 + local.get $3 i32.const 224 i32.and i32.const 192 i32.eq if local.get $1 + local.get $5 local.get $3 - local.get $6 i32.const 31 i32.and i32.const 6 @@ -6015,24 +6027,24 @@ i32.load8_u i32.const 63 i32.and - local.set $5 + local.set $6 local.get $0 i32.const 1 i32.add local.set $0 - local.get $6 + local.get $3 i32.const 240 i32.and i32.const 224 i32.eq if - local.get $5 local.get $6 + local.get $3 i32.const 15 i32.and i32.const 12 i32.shl - local.get $3 + local.get $5 i32.const 6 i32.shl i32.or @@ -6047,16 +6059,16 @@ i32.load8_u i32.const 63 i32.and - local.get $6 + local.get $3 i32.const 7 i32.and i32.const 18 i32.shl - local.get $3 + local.get $5 i32.const 12 i32.shl i32.or - local.get $5 + local.get $6 i32.const 6 i32.shl i32.or @@ -6100,11 +6112,11 @@ end end else - local.get $6 + local.get $3 i32.eqz br_if $while-break|0 local.get $1 - local.get $6 + local.get $3 i32.store16 end local.get $1 @@ -6255,51 +6267,51 @@ i32.const 0 i32.gt_s select - local.tee $1 + local.tee $3 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $1 local.get $1 local.get $3 - i32.lt_s + i32.gt_s select - local.tee $4 + local.tee $3 local.get $2 i32.const 0 local.get $2 i32.const 0 i32.gt_s select - local.tee $1 - local.get $3 + local.tee $2 local.get $1 - local.get $3 - i32.lt_s + local.get $1 + local.get $2 + i32.gt_s select local.tee $2 local.get $2 - local.get $4 + local.get $3 i32.gt_s select i32.const 1 i32.shl - local.set $1 - local.get $4 + local.set $4 + local.get $3 local.get $2 local.get $2 - local.get $4 + local.get $3 i32.lt_s select i32.const 1 i32.shl - local.tee $2 - local.get $1 + local.tee $3 + local.get $4 i32.sub - local.tee $4 + local.tee $2 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -6310,12 +6322,12 @@ return end i32.const 0 - local.get $3 + local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $3 i32.eq - local.get $1 + local.get $4 select if global.get $~lib/memory/__stack_pointer @@ -6326,22 +6338,22 @@ return end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 - local.get $0 local.get $1 - i32.add + local.get $0 local.get $4 + i32.add + local.get $2 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 ) (func $~lib/map/Map<~lib/string/String,~lib/string/String>#set (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -6369,7 +6381,7 @@ local.get $1 local.get $1 call $~lib/util/hash/HASH<~lib/string/String> - local.tee $7 + local.tee $9 call $~lib/map/Map<~lib/string/String,~lib/string/String>#find local.tee $3 if @@ -6410,7 +6422,7 @@ i32.const 1 i32.or end - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -6427,14 +6439,14 @@ i32.const 0 i32.store offset=8 local.get $3 - local.get $8 + local.get $7 i32.const 1 i32.add local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $9 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer local.get $3 @@ -6442,7 +6454,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $10 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -6450,51 +6462,51 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $10 + local.tee $5 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $5 + local.set $11 local.get $4 local.set $3 loop $while-continue|0 local.get $5 - local.get $10 + local.get $11 i32.ne if - local.get $10 + local.get $5 i32.load offset=8 i32.const 1 i32.and i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $5 i32.load - local.tee $11 + local.tee $8 i32.store offset=8 local.get $3 - local.get $11 + local.get $8 i32.store local.get $3 - local.get $10 + local.get $5 i32.load offset=4 i32.store offset=4 local.get $3 - local.get $11 - call $~lib/util/hash/HASH<~lib/string/String> local.get $8 + call $~lib/util/hash/HASH<~lib/string/String> + local.get $7 i32.and i32.const 2 i32.shl - local.get $9 + local.get $6 i32.add - local.tee $11 + local.tee $8 i32.load i32.store offset=8 - local.get $11 + local.get $8 local.get $3 i32.store local.get $3 @@ -6502,25 +6514,25 @@ i32.add local.set $3 end - local.get $10 + local.get $5 i32.const 12 i32.add - local.set $10 + local.set $5 br $while-continue|0 end end local.get $0 - local.get $9 + local.get $6 i32.store - local.get $9 + local.get $6 if local.get $0 - local.get $9 + local.get $6 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $8 + local.get $7 i32.store offset=4 local.get $0 local.get $4 @@ -6533,7 +6545,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 + local.get $10 i32.store offset=12 local.get $0 local.get $0 @@ -6592,7 +6604,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $7 + local.get $9 i32.and i32.const 2 i32.shl @@ -6661,16 +6673,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $0 i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $0 local.get $1 local.get $2 select @@ -6679,7 +6691,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $3 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/array-access.optimized.wat b/tests/compiler/std/array-access.optimized.wat index 93906c50d8..dbc8cfa038 100644 --- a/tests/compiler/std/array-access.optimized.wat +++ b/tests/compiler/std/array-access.optimized.wat @@ -34,9 +34,9 @@ local.tee $1 local.get $1 select - local.set $2 + local.set $3 local.get $1 - local.get $2 + local.get $3 i32.const 1292 i32.load i32.const 1 @@ -50,13 +50,13 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) i32.const 1296 - local.set $3 - local.get $2 + local.set $2 + local.get $3 i32.const 1 i32.shl local.get $0 i32.add - local.tee $2 + local.tee $3 i32.const 7 i32.and i32.const 1 @@ -68,20 +68,20 @@ i32.eqz if loop $do-loop|0 - local.get $2 - i64.load local.get $3 i64.load + local.get $2 + i64.load i64.eq if - local.get $2 - i32.const 8 - i32.add - local.set $2 local.get $3 i32.const 8 i32.add local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $2 local.get $0 i32.const 4 i32.sub @@ -100,10 +100,10 @@ local.set $0 local.get $1 if - local.get $3 + local.get $2 i32.load16_u local.tee $1 - local.get $2 + local.get $3 i32.load16_u local.tee $4 i32.ne @@ -113,14 +113,14 @@ i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $2 - i32.const 2 - i32.add - local.set $2 local.get $3 i32.const 2 i32.add local.set $3 + local.get $2 + i32.const 2 + i32.add + local.set $2 br $while-continue|1 end end diff --git a/tests/compiler/std/array-literal.optimized.wat b/tests/compiler/std/array-literal.optimized.wat index 2a60e619fa..684012354f 100644 --- a/tests/compiler/std/array-literal.optimized.wat +++ b/tests/compiler/std/array-literal.optimized.wat @@ -217,7 +217,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -240,7 +240,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -250,23 +250,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -274,7 +274,7 @@ else i32.const 1792 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1200 @@ -284,7 +284,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 1796 @@ -299,27 +299,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -407,19 +407,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -444,9 +444,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -454,17 +454,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -752,10 +752,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -767,15 +767,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -805,7 +805,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -841,12 +841,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -864,11 +864,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 18256 @@ -876,14 +876,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -893,17 +893,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1383,7 +1383,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1409,32 +1409,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $3 i32.add else - local.get $4 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1467,7 +1467,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1475,8 +1475,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1493,7 +1493,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $3 i32.lt_u if i32.const 0 @@ -1503,13 +1503,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1525,7 +1525,7 @@ local.get $5 i32.const -4 i32.and - local.get $4 + local.get $3 i32.sub local.tee $6 i32.const 16 @@ -1535,23 +1535,23 @@ local.get $5 i32.const 2 i32.and - local.get $4 + local.get $3 i32.or i32.store - local.get $4 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 + local.tee $3 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1581,26 +1581,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1615,7 +1615,7 @@ local.get $2 i32.const 20 i32.add - local.tee $2 + local.tee $3 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1627,7 +1627,7 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1642,12 +1642,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $3 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $2 i32.const 3 i32.sub i32.const 0 @@ -1659,7 +1659,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 0 @@ -1674,25 +1674,25 @@ i32.sub i32.const 3 i32.and - local.tee $3 + local.tee $2 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $3 + local.get $2 i32.sub i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.add - local.tee $3 + local.tee $0 i32.const 4 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1702,17 +1702,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $0 i32.const 12 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 8 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1728,22 +1728,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $3 + local.get $0 i32.const 28 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 24 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 20 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 16 i32.sub i32.const 0 @@ -1754,11 +1754,11 @@ i32.and i32.const 24 i32.add - local.tee $3 + local.tee $0 i32.add local.set $1 + local.get $2 local.get $0 - local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1790,7 +1790,7 @@ end end end - local.get $2 + local.get $3 ) (func $~lib/array/Array#__uset (param $0 i32) (param $1 i32) (param $2 i32) local.get $0 @@ -2620,16 +2620,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $0 i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $0 local.get $1 local.get $2 select @@ -2638,7 +2638,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $3 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index 46f51d88f6..21216c9696 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -825,7 +825,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -848,7 +848,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -858,23 +858,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -882,7 +882,7 @@ else i32.const 15264 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1344 @@ -892,7 +892,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 15268 @@ -907,27 +907,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -1015,19 +1015,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -1052,9 +1052,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -1062,17 +1062,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -1360,10 +1360,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -1375,15 +1375,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -1413,7 +1413,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -1449,12 +1449,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -1472,11 +1472,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 32048 @@ -1484,14 +1484,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -1501,17 +1501,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1597,7 +1597,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $2 + local.set $1 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -1614,11 +1614,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -1660,9 +1660,9 @@ if local.get $0 i32.load - local.tee $1 + local.tee $2 if - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -1686,11 +1686,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -1716,7 +1716,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $2 + local.get $1 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -1936,7 +1936,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $2 local.get $0 i32.const 1073741820 i32.gt_u @@ -1962,34 +1962,34 @@ i32.const 4 i32.sub end - local.tee $3 - call $~lib/rt/tlsf/searchBlock local.tee $0 + call $~lib/rt/tlsf/searchBlock + local.tee $1 i32.eqz if memory.size - local.tee $0 - local.get $3 + local.tee $1 + local.get $0 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $0 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $0 i32.add else - local.get $3 + local.get $0 end i32.const 4 - local.get $1 + local.get $2 i32.load offset=1568 - local.get $0 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -2003,16 +2003,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 - local.get $0 - local.get $2 + local.tee $3 + local.get $1 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -2020,18 +2020,18 @@ unreachable end end + local.get $2 local.get $1 - local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 - local.get $3 + local.get $2 + local.get $0 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -2042,11 +2042,11 @@ unreachable end end - local.get $0 + local.get $1 i32.load i32.const -4 i32.and - local.get $3 + local.get $0 i32.lt_u if i32.const 0 @@ -2056,13 +2056,13 @@ call $~lib/builtins/abort unreachable end + local.get $2 local.get $1 - local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $0 + local.get $1 i32.load - local.set $4 - local.get $3 + local.set $3 + local.get $0 i32.const 4 i32.add i32.const 15 @@ -2075,65 +2075,65 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const -4 i32.and - local.get $3 + local.get $0 i32.sub - local.tee $2 + local.tee $4 i32.const 16 i32.ge_u if - local.get $0 - local.get $4 + local.get $1 + local.get $3 i32.const 2 i32.and - local.get $3 + local.get $0 i32.or i32.store - local.get $3 local.get $0 + local.get $1 i32.const 4 i32.add i32.add - local.tee $3 - local.get $2 + local.tee $0 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 - local.get $3 + local.get $2 + local.get $0 call $~lib/rt/tlsf/insertBlock else - local.get $0 - local.get $4 + local.get $1 + local.get $3 i32.const -2 i32.and i32.store - local.get $0 + local.get $1 i32.const 4 i32.add - local.get $0 + local.get $1 i32.load i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.load i32.const -3 i32.and i32.store end - local.get $0 + local.get $1 i32.const 4 i32.add ) (func $~lib/memory/memory.fill (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i64) - (local $4 i32) + (local $3 i32) + (local $4 i64) (local $5 i32) block $~lib/util/memory/memset|inlined.0 local.get $2 @@ -2145,7 +2145,7 @@ local.get $0 local.get $2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.sub local.get $1 @@ -2160,12 +2160,12 @@ local.get $0 local.get $1 i32.store8 offset=2 - local.get $4 + local.get $3 i32.const 2 i32.sub local.get $1 i32.store8 - local.get $4 + local.get $3 i32.const 3 i32.sub local.get $1 @@ -2177,7 +2177,7 @@ local.get $0 local.get $1 i32.store8 offset=3 - local.get $4 + local.get $3 i32.const 4 i32.sub local.get $1 @@ -2192,19 +2192,19 @@ i32.sub i32.const 3 i32.and - local.tee $4 + local.tee $5 i32.add - local.tee $0 + local.tee $3 local.get $1 i32.const 255 i32.and i32.const 16843009 i32.mul - local.tee $5 + local.tee $0 i32.store - local.get $0 + local.get $3 local.get $2 - local.get $4 + local.get $5 i32.sub i32.const -4 i32.and @@ -2213,101 +2213,101 @@ local.tee $1 i32.const 4 i32.sub - local.get $5 + local.get $0 i32.store local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 + local.get $3 local.get $0 - local.get $5 i32.store offset=4 + local.get $3 local.get $0 - local.get $5 i32.store offset=8 local.get $1 i32.const 12 i32.sub - local.get $5 + local.get $0 i32.store local.get $1 i32.const 8 i32.sub - local.get $5 + local.get $0 i32.store local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 + local.get $3 local.get $0 - local.get $5 i32.store offset=12 + local.get $3 local.get $0 - local.get $5 i32.store offset=16 + local.get $3 local.get $0 - local.get $5 i32.store offset=20 + local.get $3 local.get $0 - local.get $5 i32.store offset=24 local.get $1 i32.const 28 i32.sub - local.get $5 + local.get $0 i32.store local.get $1 i32.const 24 i32.sub - local.get $5 + local.get $0 i32.store local.get $1 i32.const 20 i32.sub - local.get $5 + local.get $0 i32.store local.get $1 i32.const 16 i32.sub - local.get $5 - i32.store - local.get $0 local.get $0 + i32.store + local.get $3 + local.get $3 i32.const 4 i32.and i32.const 24 i32.add - local.tee $4 + local.tee $5 i32.add local.set $1 local.get $2 - local.get $4 + local.get $5 i32.sub local.set $2 - local.get $5 + local.get $0 i64.extend_i32_u - local.tee $3 + local.tee $4 i64.const 32 i64.shl - local.get $3 + local.get $4 i64.or - local.set $3 + local.set $4 loop $while-continue|0 local.get $2 i32.const 32 i32.ge_u if local.get $1 - local.get $3 + local.get $4 i64.store local.get $1 - local.get $3 + local.get $4 i64.store offset=8 local.get $1 - local.get $3 + local.get $4 i64.store offset=16 local.get $1 - local.get $3 + local.get $4 i64.store offset=24 local.get $2 i32.const 32 @@ -2394,26 +2394,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2889,105 +2889,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3019,41 +3029,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3709,13 +3721,13 @@ local.get $1 i32.const 1 i32.sub - local.tee $2 + local.tee $1 i32.const 2 i32.shl i32.add i32.load local.get $0 - local.get $2 + local.get $1 i32.store offset=12 ) (func $~lib/array/Array#__uset (param $0 i32) (param $1 i32) (param $2 i32) @@ -3952,9 +3964,9 @@ (func $~lib/array/Array#reverse (param $0 i32) (result i32) (local $1 i32) (local $2 i32) - (local $3 i64) + (local $3 i32) (local $4 i32) - (local $5 i32) + (local $5 i64) (local $6 i32) (local $7 i32) (local $8 i64) @@ -3963,15 +3975,15 @@ local.set $2 local.get $0 i32.load offset=12 - local.tee $5 + local.tee $3 i32.const 1 i32.gt_u if - local.get $5 + local.get $3 i32.const 1 i32.shr_u local.set $4 - local.get $5 + local.get $3 i32.const 8 i32.sub local.set $6 @@ -3987,18 +3999,18 @@ i32.add local.tee $7 i64.load - local.tee $3 + local.tee $5 i64.const 8 i64.shr_u i64.const 71777214294589695 i64.and - local.get $3 + local.get $5 i64.const 71777214294589695 i64.and i64.const 8 i64.shl i64.or - local.set $3 + local.set $5 local.get $7 local.get $2 local.get $6 @@ -4033,12 +4045,12 @@ i64.rotr i64.store local.get $7 - local.get $3 + local.get $5 i64.const 16 i64.shr_u i64.const 281470681808895 i64.and - local.get $3 + local.get $5 i64.const 281470681808895 i64.and i64.const 16 @@ -4054,10 +4066,10 @@ br $while-continue|0 end end - local.get $5 + local.get $3 i32.const 1 i32.sub - local.set $5 + local.set $3 loop $while-continue|1 local.get $1 local.get $4 @@ -4070,7 +4082,7 @@ i32.load8_u local.set $7 local.get $6 - local.get $5 + local.get $3 local.get $1 i32.sub local.get $2 @@ -4104,50 +4116,50 @@ local.set $2 local.get $0 i32.load offset=12 - local.tee $5 + local.tee $3 i32.const 1 i32.gt_u if - local.get $5 + local.get $3 i32.const 1 i32.shr_u - local.set $3 - local.get $5 + local.set $4 + local.get $3 i32.const 2 i32.sub - local.set $6 + local.set $5 loop $while-continue|0 - local.get $3 + local.get $4 local.get $1 i32.const 1 i32.add i32.gt_u if - local.get $6 + local.get $5 local.get $1 i32.sub i32.const 1 i32.shl local.get $2 i32.add - local.tee $7 + local.tee $6 i32.load i32.const 16 i32.rotr - local.set $4 - local.get $7 + local.set $7 + local.get $6 local.get $1 i32.const 1 i32.shl local.get $2 i32.add - local.tee $7 + local.tee $6 i32.load i32.const 16 i32.rotr i32.store + local.get $6 local.get $7 - local.get $4 i32.store local.get $1 i32.const 2 @@ -4156,13 +4168,13 @@ br $while-continue|0 end end - local.get $5 + local.get $3 i32.const 1 i32.sub - local.set $4 + local.set $3 loop $while-continue|1 local.get $1 - local.get $3 + local.get $4 i32.lt_u if local.get $1 @@ -4174,7 +4186,7 @@ i32.load16_u local.set $6 local.get $5 - local.get $4 + local.get $3 local.get $1 i32.sub i32.const 1 @@ -5094,13 +5106,13 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 f32) + (local $9 i32) (local $10 f32) - (local $11 i64) + (local $11 f32) (local $12 i32) (local $13 i32) (local $14 i32) - (local $15 i32) + (local $15 i64) local.get $1 i32.const 48 i32.le_s @@ -5128,14 +5140,14 @@ local.set $10 local.get $0 f32.load offset=4 - local.set $9 + local.set $11 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $9 + local.get $11 local.get $10 local.get $10 - local.get $9 + local.get $11 local.get $2 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -5145,20 +5157,20 @@ select f32.store local.get $10 - local.get $9 + local.get $11 local.get $1 select local.set $10 local.get $0 f32.load offset=8 - local.set $9 + local.set $11 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $9 + local.get $11 local.get $10 local.get $10 - local.get $9 + local.get $11 local.get $2 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -5169,7 +5181,7 @@ f32.store offset=4 local.get $0 local.get $10 - local.get $9 + local.get $11 local.get $1 select f32.store offset=8 @@ -5179,14 +5191,14 @@ local.set $10 local.get $0 f32.load offset=4 - local.set $9 + local.set $11 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $9 + local.get $11 local.get $10 local.get $10 - local.get $9 + local.get $11 local.get $2 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -5197,7 +5209,7 @@ f32.store local.get $0 local.get $10 - local.get $9 + local.get $11 local.get $1 select f32.store offset=4 @@ -5224,28 +5236,28 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $14 + local.tee $9 local.get $5 i32.add - local.set $13 + local.set $12 i32.const 0 - local.set $7 + local.set $5 loop $for-loop|1 + local.get $5 local.get $6 - local.get $7 - i32.gt_u + i32.lt_u if - local.get $7 + local.get $5 i32.const 2 i32.shl - local.get $14 + local.get $9 i32.add i32.const -1 i32.store - local.get $7 + local.get $5 i32.const 1 i32.add - local.set $7 + local.set $5 br $for-loop|1 end end @@ -5253,117 +5265,117 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $12 + local.set $13 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $15 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $6 + local.tee $1 i32.const 1 i32.add - local.tee $1 + local.tee $5 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $15 + local.get $8 i32.const 31 - local.get $15 + local.get $8 i32.const 31 i32.lt_s select - local.tee $6 - local.get $1 + local.tee $1 + local.get $5 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $6 - local.get $15 + local.get $1 + local.get $8 i32.lt_s if local.get $0 - local.get $6 + local.get $1 i32.const 1 i32.add - local.tee $5 - local.get $15 + local.tee $6 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $7 - local.get $5 + local.tee $5 + local.get $6 i32.sub i32.const 1 i32.add - local.tee $8 + local.tee $7 i32.const 32 i32.lt_s if local.get $0 - local.get $5 - local.get $15 - local.get $5 + local.get $6 + local.get $8 + local.get $6 i32.const 31 i32.add - local.tee $1 - local.get $1 - local.get $15 + local.tee $5 + local.get $5 + local.get $8 i32.gt_s select - local.tee $7 - local.get $8 + local.tee $5 + local.get $7 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $5 + local.get $6 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $15 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $11 + local.tee $15 i64.div_u local.get $5 - local.get $7 + local.get $6 i32.add i32.const 1 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $11 + local.get $15 i64.div_u i64.xor i32.wrap_i64 i32.clz - local.set $1 + local.set $7 loop $for-loop|3 - local.get $1 local.get $4 - i32.lt_u + local.get $7 + i32.gt_u if local.get $4 i32.const 2 i32.shl - local.get $14 + local.get $9 i32.add i32.load - local.tee $8 + local.tee $14 i32.const -1 i32.ne if local.get $0 - local.get $8 - local.get $13 + local.get $14 + local.get $12 local.get $4 i32.const 2 i32.shl @@ -5372,16 +5384,16 @@ i32.load i32.const 1 i32.add - local.get $6 - local.get $12 + local.get $1 + local.get $13 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $14 + local.get $9 i32.add i32.const -1 i32.store - local.get $8 + local.get $14 local.set $3 end local.get $4 @@ -5391,8 +5403,8 @@ br $for-loop|3 end end - local.get $14 - local.get $1 + local.get $9 + local.get $7 i32.const 2 i32.shl local.tee $4 @@ -5400,15 +5412,15 @@ local.get $3 i32.store local.get $4 - local.get $13 + local.get $12 i32.add - local.get $6 + local.get $1 i32.store - local.get $5 + local.get $6 local.set $3 + local.get $5 + local.set $1 local.get $7 - local.set $6 - local.get $1 local.set $4 br $while-continue|2 end @@ -5419,7 +5431,7 @@ local.get $4 i32.const 2 i32.shl - local.get $14 + local.get $9 i32.add i32.load local.tee $1 @@ -5431,13 +5443,13 @@ local.get $4 i32.const 2 i32.shl - local.get $13 + local.get $12 i32.add i32.load i32.const 1 i32.add - local.get $15 - local.get $12 + local.get $8 + local.get $13 local.get $2 call $~lib/util/sort/mergeRuns end @@ -5448,9 +5460,9 @@ br $for-loop|4 end end - local.get $12 + local.get $13 call $~lib/rt/tlsf/__free - local.get $14 + local.get $9 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 f32) (param $1 f32) (result i32) @@ -5484,11 +5496,11 @@ ) (func $std/array/isArraysEqual (param $0 i32) (param $1 i32) (result i32) (local $2 i32) - (local $3 f32) - (local $4 i32) + (local $3 i32) + (local $4 f32) local.get $0 i32.load offset=12 - local.tee $4 + local.tee $3 local.get $1 i32.load offset=12 i32.ne @@ -5505,21 +5517,21 @@ end loop $for-loop|0 local.get $2 - local.get $4 + local.get $3 i32.lt_s if local.get $0 local.get $2 call $~lib/array/Array#__get - local.tee $3 - local.get $3 + local.tee $4 + local.get $4 f32.ne if (result i32) local.get $1 local.get $2 call $~lib/array/Array#__get - local.tee $3 - local.get $3 + local.tee $4 + local.get $4 f32.ne else i32.const 0 @@ -5980,13 +5992,13 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 f64) + (local $9 i32) (local $10 f64) - (local $11 i64) + (local $11 f64) (local $12 i32) (local $13 i32) (local $14 i32) - (local $15 i32) + (local $15 i64) local.get $1 i32.const 48 i32.le_s @@ -6014,14 +6026,14 @@ local.set $10 local.get $0 f64.load offset=8 - local.set $9 + local.set $11 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $9 + local.get $11 local.get $10 local.get $10 - local.get $9 + local.get $11 local.get $2 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -6031,20 +6043,20 @@ select f64.store local.get $10 - local.get $9 + local.get $11 local.get $1 select local.set $10 local.get $0 f64.load offset=16 - local.set $9 + local.set $11 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $9 + local.get $11 local.get $10 local.get $10 - local.get $9 + local.get $11 local.get $2 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -6055,7 +6067,7 @@ f64.store offset=8 local.get $0 local.get $10 - local.get $9 + local.get $11 local.get $1 select f64.store offset=16 @@ -6065,14 +6077,14 @@ local.set $10 local.get $0 f64.load offset=8 - local.set $9 + local.set $11 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $9 + local.get $11 local.get $10 local.get $10 - local.get $9 + local.get $11 local.get $2 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -6083,7 +6095,7 @@ f64.store local.get $0 local.get $10 - local.get $9 + local.get $11 local.get $1 select f64.store offset=8 @@ -6110,28 +6122,28 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $14 + local.tee $9 local.get $5 i32.add - local.set $13 + local.set $12 i32.const 0 - local.set $7 + local.set $5 loop $for-loop|1 + local.get $5 local.get $6 - local.get $7 - i32.gt_u + i32.lt_u if - local.get $7 + local.get $5 i32.const 2 i32.shl - local.get $14 + local.get $9 i32.add i32.const -1 i32.store - local.get $7 + local.get $5 i32.const 1 i32.add - local.set $7 + local.set $5 br $for-loop|1 end end @@ -6139,117 +6151,117 @@ i32.const 3 i32.shl call $~lib/rt/tlsf/__alloc - local.set $12 + local.set $13 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $15 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $6 + local.tee $1 i32.const 1 i32.add - local.tee $1 + local.tee $5 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $15 + local.get $8 i32.const 31 - local.get $15 + local.get $8 i32.const 31 i32.lt_s select - local.tee $6 - local.get $1 + local.tee $1 + local.get $5 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $6 - local.get $15 + local.get $1 + local.get $8 i32.lt_s if local.get $0 - local.get $6 + local.get $1 i32.const 1 i32.add - local.tee $5 - local.get $15 + local.tee $6 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $7 - local.get $5 + local.tee $5 + local.get $6 i32.sub i32.const 1 i32.add - local.tee $8 + local.tee $7 i32.const 32 i32.lt_s if local.get $0 - local.get $5 - local.get $15 - local.get $5 + local.get $6 + local.get $8 + local.get $6 i32.const 31 i32.add - local.tee $1 - local.get $1 - local.get $15 + local.tee $5 + local.get $5 + local.get $8 i32.gt_s select - local.tee $7 - local.get $8 + local.tee $5 + local.get $7 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $5 + local.get $6 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $15 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $11 + local.tee $15 i64.div_u local.get $5 - local.get $7 + local.get $6 i32.add i32.const 1 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $11 + local.get $15 i64.div_u i64.xor i32.wrap_i64 i32.clz - local.set $1 + local.set $7 loop $for-loop|3 - local.get $1 local.get $4 - i32.lt_u + local.get $7 + i32.gt_u if local.get $4 i32.const 2 i32.shl - local.get $14 + local.get $9 i32.add i32.load - local.tee $8 + local.tee $14 i32.const -1 i32.ne if local.get $0 - local.get $8 - local.get $13 + local.get $14 + local.get $12 local.get $4 i32.const 2 i32.shl @@ -6258,16 +6270,16 @@ i32.load i32.const 1 i32.add - local.get $6 - local.get $12 + local.get $1 + local.get $13 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $14 + local.get $9 i32.add i32.const -1 i32.store - local.get $8 + local.get $14 local.set $3 end local.get $4 @@ -6277,8 +6289,8 @@ br $for-loop|3 end end - local.get $14 - local.get $1 + local.get $9 + local.get $7 i32.const 2 i32.shl local.tee $4 @@ -6286,15 +6298,15 @@ local.get $3 i32.store local.get $4 - local.get $13 + local.get $12 i32.add - local.get $6 + local.get $1 i32.store - local.get $5 + local.get $6 local.set $3 + local.get $5 + local.set $1 local.get $7 - local.set $6 - local.get $1 local.set $4 br $while-continue|2 end @@ -6305,7 +6317,7 @@ local.get $4 i32.const 2 i32.shl - local.get $14 + local.get $9 i32.add i32.load local.tee $1 @@ -6317,13 +6329,13 @@ local.get $4 i32.const 2 i32.shl - local.get $13 + local.get $12 i32.add i32.load i32.const 1 i32.add - local.get $15 - local.get $12 + local.get $8 + local.get $13 local.get $2 call $~lib/util/sort/mergeRuns end @@ -6334,9 +6346,9 @@ br $for-loop|4 end end - local.get $12 + local.get $13 call $~lib/rt/tlsf/__free - local.get $14 + local.get $9 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 f64) (param $1 f64) (result i32) @@ -6818,12 +6830,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) + (local $13 i64) local.get $1 i32.const 48 i32.le_s @@ -6947,7 +6959,7 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $11 + local.tee $9 local.get $5 i32.add local.set $10 @@ -6961,7 +6973,7 @@ local.get $5 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -6976,13 +6988,13 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $9 + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $12 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -6994,9 +7006,9 @@ if local.get $0 i32.const 0 - local.get $12 + local.get $8 i32.const 31 - local.get $12 + local.get $8 i32.const 31 i32.lt_s select @@ -7007,7 +7019,7 @@ end loop $while-continue|2 local.get $1 - local.get $12 + local.get $8 i32.lt_s if local.get $0 @@ -7015,7 +7027,7 @@ i32.const 1 i32.add local.tee $6 - local.get $12 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -7029,13 +7041,13 @@ if local.get $0 local.get $6 - local.get $12 + local.get $8 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $12 + local.get $8 i32.gt_s select local.tee $5 @@ -7049,11 +7061,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $8 + local.tee $13 i64.div_u local.get $5 local.get $6 @@ -7063,7 +7075,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $13 i64.div_u i64.xor i32.wrap_i64 @@ -7077,15 +7089,15 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load - local.tee $13 + local.tee $12 i32.const -1 i32.ne if local.get $0 - local.get $13 + local.get $12 local.get $10 local.get $4 i32.const 2 @@ -7096,15 +7108,15 @@ i32.const 1 i32.add local.get $1 - local.get $9 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $11 + local.get $9 i32.add i32.const -1 i32.store - local.get $13 + local.get $12 local.set $3 end local.get $4 @@ -7114,7 +7126,7 @@ br $for-loop|3 end end - local.get $11 + local.get $9 local.get $7 i32.const 2 i32.shl @@ -7142,7 +7154,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $1 @@ -7159,8 +7171,8 @@ i32.load i32.const 1 i32.add - local.get $12 - local.get $9 + local.get $8 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end @@ -7171,10 +7183,10 @@ br $for-loop|4 end end - local.get $9 - call $~lib/rt/tlsf/__free local.get $11 call $~lib/rt/tlsf/__free + local.get $9 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -7610,12 +7622,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) + (local $13 i64) local.get $1 i32.const 48 i32.le_s @@ -7739,7 +7751,7 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $11 + local.tee $9 local.get $5 i32.add local.set $10 @@ -7753,7 +7765,7 @@ local.get $5 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -7768,13 +7780,13 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $9 + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $12 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -7786,9 +7798,9 @@ if local.get $0 i32.const 0 - local.get $12 + local.get $8 i32.const 31 - local.get $12 + local.get $8 i32.const 31 i32.lt_s select @@ -7799,7 +7811,7 @@ end loop $while-continue|2 local.get $1 - local.get $12 + local.get $8 i32.lt_s if local.get $0 @@ -7807,7 +7819,7 @@ i32.const 1 i32.add local.tee $6 - local.get $12 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -7821,13 +7833,13 @@ if local.get $0 local.get $6 - local.get $12 + local.get $8 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $12 + local.get $8 i32.gt_s select local.tee $5 @@ -7841,11 +7853,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $8 + local.tee $13 i64.div_u local.get $5 local.get $6 @@ -7855,7 +7867,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $13 i64.div_u i64.xor i32.wrap_i64 @@ -7869,15 +7881,15 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load - local.tee $13 + local.tee $12 i32.const -1 i32.ne if local.get $0 - local.get $13 + local.get $12 local.get $10 local.get $4 i32.const 2 @@ -7888,15 +7900,15 @@ i32.const 1 i32.add local.get $1 - local.get $9 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $11 + local.get $9 i32.add i32.const -1 i32.store - local.get $13 + local.get $12 local.set $3 end local.get $4 @@ -7906,7 +7918,7 @@ br $for-loop|3 end end - local.get $11 + local.get $9 local.get $7 i32.const 2 i32.shl @@ -7934,7 +7946,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $1 @@ -7951,8 +7963,8 @@ i32.load i32.const 1 i32.add - local.get $12 - local.get $9 + local.get $8 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end @@ -7963,10 +7975,10 @@ br $for-loop|4 end end - local.get $9 - call $~lib/rt/tlsf/__free local.get $11 call $~lib/rt/tlsf/__free + local.get $9 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -8067,33 +8079,33 @@ select local.get $1 i32.add - local.set $8 + local.set $7 loop $for-loop|0 local.get $2 - local.get $8 + local.get $7 i32.ge_s if global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $8 + local.tee $5 + local.get $7 i32.const 2 i32.shl local.get $0 i32.add local.tee $6 i32.load - local.tee $5 + local.tee $3 i32.store - local.get $3 + local.get $5 local.get $6 i32.load offset=4 local.tee $6 i32.store offset=4 local.get $6 - local.set $3 + local.set $5 i32.const 2 global.set $~argumentsLength - local.get $5 + local.get $3 local.get $6 local.get $4 i32.load @@ -8101,12 +8113,12 @@ i32.const 0 i32.le_s if - local.get $5 - local.set $3 - local.get $6 + local.get $3 local.set $5 + local.get $6 + local.set $3 end - local.get $8 + local.get $7 i32.const 1 i32.sub local.set $6 @@ -8123,12 +8135,12 @@ local.get $0 i32.add i32.load - local.tee $7 + local.tee $8 i32.store i32.const 2 global.set $~argumentsLength - local.get $7 - local.get $5 + local.get $8 + local.get $3 local.get $4 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -8140,7 +8152,7 @@ i32.shl local.get $0 i32.add - local.get $7 + local.get $8 i32.store offset=8 local.get $6 i32.const 1 @@ -8155,7 +8167,7 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $3 i32.store offset=8 loop $while-continue|2 local.get $1 @@ -8170,12 +8182,12 @@ local.get $0 i32.add i32.load - local.tee $5 + local.tee $3 i32.store i32.const 2 global.set $~argumentsLength - local.get $5 local.get $3 + local.get $5 local.get $4 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -8187,7 +8199,7 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $3 i32.store offset=4 local.get $6 i32.const 1 @@ -8202,12 +8214,12 @@ i32.shl local.get $0 i32.add - local.get $3 + local.get $5 i32.store offset=4 - local.get $8 + local.get $7 i32.const 2 i32.add - local.set $8 + local.set $7 br $for-loop|0 end end @@ -8303,28 +8315,28 @@ i32.le_s if global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $8 local.get $6 i32.const 2 i32.shl local.get $4 i32.add i32.load - local.tee $8 + local.tee $7 i32.store - local.get $7 + local.get $8 local.get $2 i32.const 2 i32.shl local.get $4 i32.add i32.load - local.tee $7 + local.tee $8 i32.store offset=4 i32.const 2 global.set $~argumentsLength - local.get $8 local.get $7 + local.get $8 local.get $5 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -8336,7 +8348,7 @@ i32.shl local.get $0 i32.add - local.get $8 + local.get $7 i32.store local.get $6 i32.const 1 @@ -8348,7 +8360,7 @@ i32.shl local.get $0 i32.add - local.get $7 + local.get $8 i32.store local.get $2 i32.const 1 @@ -8374,11 +8386,11 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i64) + (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) + (local $13 i64) global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -8395,10 +8407,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $5 i64.const 0 i64.store - local.get $4 + local.get $5 i32.const 0 i32.store offset=8 block $folding-inner0 @@ -8423,23 +8435,23 @@ br $break|0 end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.load - local.tee $3 + local.tee $1 i32.store - local.get $1 + local.get $3 local.get $0 i32.load offset=4 - local.tee $1 + local.tee $3 i32.store offset=4 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $1 - local.get $3 local.get $3 local.get $1 + local.get $1 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -8449,8 +8461,8 @@ select i32.store global.get $~lib/memory/__stack_pointer - local.get $3 local.get $1 + local.get $3 local.get $4 select local.tee $1 @@ -8483,23 +8495,23 @@ i32.store offset=8 end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.load - local.tee $3 + local.tee $1 i32.store offset=8 - local.get $1 + local.get $3 local.get $0 i32.load offset=4 - local.tee $1 + local.tee $3 i32.store offset=4 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $1 - local.get $3 local.get $3 local.get $1 + local.get $1 + local.get $3 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -8509,8 +8521,8 @@ select i32.store local.get $0 - local.get $3 local.get $1 + local.get $3 local.get $2 select i32.store offset=4 @@ -8533,32 +8545,32 @@ local.tee $6 i32.const 2 i32.shl - local.tee $4 + local.tee $5 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $12 - local.get $4 + local.tee $9 + local.get $5 i32.add - local.set $11 + local.set $10 i32.const 0 - local.set $4 + local.set $5 loop $for-loop|1 - local.get $4 + local.get $5 local.get $6 i32.lt_u if - local.get $4 + local.get $5 i32.const 2 i32.shl - local.get $12 + local.get $9 i32.add i32.const -1 i32.store - local.get $4 + local.get $5 i32.const 1 i32.add - local.set $4 + local.set $5 br $for-loop|1 end end @@ -8566,38 +8578,38 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $10 + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $13 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 i32.const 1 i32.add - local.tee $4 + local.tee $5 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $13 + local.get $8 i32.const 31 - local.get $13 + local.get $8 i32.const 31 i32.lt_s select local.tee $1 - local.get $4 + local.get $5 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 local.get $1 - local.get $13 + local.get $8 i32.lt_s if local.get $0 @@ -8605,10 +8617,10 @@ i32.const 1 i32.add local.tee $6 - local.get $13 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $4 + local.tee $5 local.get $6 i32.sub i32.const 1 @@ -8619,16 +8631,16 @@ if local.get $0 local.get $6 - local.get $13 + local.get $8 local.get $6 i32.const 31 i32.add - local.tee $4 - local.get $4 - local.get $13 + local.tee $5 + local.get $5 + local.get $8 i32.gt_s select - local.tee $4 + local.tee $5 local.get $7 local.get $2 call $~lib/util/sort/insertionSort @@ -8639,13 +8651,13 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $9 + local.tee $13 i64.div_u - local.get $4 + local.get $5 local.get $6 i32.add i32.const 1 @@ -8653,31 +8665,31 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $9 + local.get $13 i64.div_u i64.xor i32.wrap_i64 i32.clz local.set $7 loop $for-loop|3 - local.get $5 + local.get $4 local.get $7 i32.gt_u if - local.get $5 + local.get $4 i32.const 2 i32.shl - local.get $12 + local.get $9 i32.add i32.load - local.tee $8 + local.tee $12 i32.const -1 i32.ne if local.get $0 - local.get $8 - local.get $11 - local.get $5 + local.get $12 + local.get $10 + local.get $4 i32.const 2 i32.shl local.tee $3 @@ -8686,53 +8698,53 @@ i32.const 1 i32.add local.get $1 - local.get $10 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $12 + local.get $9 i32.add i32.const -1 i32.store - local.get $8 + local.get $12 local.set $3 end - local.get $5 + local.get $4 i32.const 1 i32.sub - local.set $5 + local.set $4 br $for-loop|3 end end - local.get $12 + local.get $9 local.get $7 i32.const 2 i32.shl - local.tee $5 + local.tee $4 i32.add local.get $3 i32.store - local.get $5 - local.get $11 + local.get $4 + local.get $10 i32.add local.get $1 i32.store local.get $6 local.set $3 - local.get $4 + local.get $5 local.set $1 local.get $7 - local.set $5 + local.set $4 br $while-continue|2 end end loop $for-loop|4 - local.get $5 + local.get $4 if - local.get $5 + local.get $4 i32.const 2 i32.shl - local.get $12 + local.get $9 i32.add i32.load local.tee $1 @@ -8741,29 +8753,29 @@ if local.get $0 local.get $1 - local.get $5 + local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $10 i32.add i32.load i32.const 1 i32.add - local.get $13 - local.get $10 + local.get $8 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end - local.get $5 + local.get $4 i32.const 1 i32.sub - local.set $5 + local.set $4 br $for-loop|4 end end - local.get $10 + local.get $11 call $~lib/rt/tlsf/__free - local.get $12 + local.get $9 call $~lib/rt/tlsf/__free global.get $~lib/memory/__stack_pointer i32.const 12 @@ -8850,7 +8862,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $6 + local.tee $4 local.get $1 i32.const 20 i32.sub @@ -8864,7 +8876,7 @@ i32.const 0 return end - local.get $6 + local.get $4 i32.eqz if i32.const -1 @@ -8885,13 +8897,13 @@ i32.and i32.or i32.const 1 - local.get $6 + local.get $4 local.get $5 + local.get $4 local.get $5 - local.get $6 - i32.gt_s + i32.lt_s select - local.tee $3 + local.tee $2 i32.const 4 i32.ge_u select @@ -8912,10 +8924,10 @@ i32.const 8 i32.add local.set $1 - local.get $3 + local.get $2 i32.const 4 i32.sub - local.tee $3 + local.tee $2 i32.const 4 i32.ge_u br_if $do-loop|0 @@ -8923,23 +8935,23 @@ end end loop $while-continue|1 - local.get $3 - local.tee $2 + local.get $2 + local.tee $3 i32.const 1 i32.sub - local.set $3 - local.get $2 + local.set $2 + local.get $3 if local.get $0 i32.load16_u - local.tee $2 + local.tee $3 local.get $1 i32.load16_u - local.tee $4 + local.tee $6 i32.ne if - local.get $2 - local.get $4 + local.get $3 + local.get $6 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -8957,7 +8969,7 @@ i32.const 0 end local.tee $0 - local.get $6 + local.get $4 local.get $5 i32.sub local.get $0 @@ -9053,14 +9065,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -9355,7 +9367,7 @@ (local $7 i32) local.get $0 i32.load offset=4 - local.set $6 + local.set $4 local.get $0 i32.load offset=12 local.set $0 @@ -9381,7 +9393,7 @@ local.get $0 i32.const 1 i32.sub - local.tee $7 + local.tee $3 i32.const 0 i32.lt_s if @@ -9393,10 +9405,10 @@ local.set $0 br $__inlined_func$~lib/util/string/joinIntegerArray end - local.get $7 + local.get $3 i32.eqz if - local.get $6 + local.get $4 i32.load call $~lib/util/number/itoa32 local.set $0 @@ -9407,7 +9419,7 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $3 local.get $1 i32.const 20 i32.sub @@ -9420,7 +9432,7 @@ i32.mul i32.const 11 i32.add - local.tee $3 + local.tee $7 i32.const 1 i32.shl i32.const 1 @@ -9428,19 +9440,19 @@ local.tee $0 i32.store loop $for-loop|0 - local.get $4 - local.get $7 - i32.lt_s + local.get $3 + local.get $6 + i32.gt_s if local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.get $4 + local.get $6 i32.const 2 i32.shl - local.get $6 + local.get $4 i32.add i32.load call $~lib/util/number/itoa_buffered @@ -9464,23 +9476,23 @@ i32.add local.set $2 end - local.get $4 + local.get $6 i32.const 1 i32.add - local.set $4 + local.set $6 br $for-loop|0 end end - local.get $3 + local.get $7 local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.get $7 + local.get $3 i32.const 2 i32.shl - local.get $6 + local.get $4 i32.add i32.load call $~lib/util/number/itoa_buffered @@ -9580,7 +9592,7 @@ (local $7 i32) local.get $0 i32.load offset=4 - local.set $6 + local.set $4 local.get $0 i32.load offset=12 local.set $0 @@ -9606,7 +9618,7 @@ local.get $0 i32.const 1 i32.sub - local.tee $7 + local.tee $3 i32.const 0 i32.lt_s if @@ -9618,10 +9630,10 @@ local.set $0 br $__inlined_func$~lib/util/string/joinIntegerArray end - local.get $7 + local.get $3 i32.eqz if - local.get $6 + local.get $4 i32.load call $~lib/util/number/utoa32 local.set $0 @@ -9632,7 +9644,7 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $3 local.get $1 i32.const 20 i32.sub @@ -9645,7 +9657,7 @@ i32.mul i32.const 10 i32.add - local.tee $3 + local.tee $7 i32.const 1 i32.shl i32.const 1 @@ -9653,19 +9665,19 @@ local.tee $0 i32.store loop $for-loop|0 - local.get $4 - local.get $7 - i32.lt_s + local.get $3 + local.get $6 + i32.gt_s if local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.get $4 + local.get $6 i32.const 2 i32.shl - local.get $6 + local.get $4 i32.add i32.load call $~lib/util/number/itoa_buffered @@ -9689,23 +9701,23 @@ i32.add local.set $2 end - local.get $4 + local.get $6 i32.const 1 i32.add - local.set $4 + local.set $6 br $for-loop|0 end end - local.get $3 + local.get $7 local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.get $7 + local.get $3 i32.const 2 i32.shl - local.get $6 + local.get $4 i32.add i32.load call $~lib/util/number/itoa_buffered @@ -10310,82 +10322,83 @@ i32.const 101 i32.store16 offset=2 local.get $0 + local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $1 + local.tee $0 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $1 + local.get $0 i32.sub - local.set $1 + local.set $0 end - local.get $1 - local.tee $4 + local.get $0 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $4 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $4 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $4 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $4 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $4 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $4 - local.get $1 - local.get $4 + local.set $2 + local.get $0 + local.get $2 i32.const 1 i32.add - local.tee $1 + local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $1 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 - local.get $1 + local.get $0 i32.const 2 i32.add else @@ -10408,87 +10421,87 @@ local.get $0 local.get $2 i32.add - local.tee $0 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $0 + local.get $2 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $2 + local.tee $0 i32.const 0 i32.lt_s - local.tee $3 + local.tee $4 if i32.const 0 - local.get $2 + local.get $0 i32.sub - local.set $2 + local.set $0 end - local.get $2 - local.tee $5 + local.get $0 + local.tee $3 i32.const 100000 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 100 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $5 + local.get $3 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $5 + local.get $3 i32.const 1000 i32.ge_u i32.add end else - local.get $5 + local.get $3 i32.const 10000000 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $5 + local.get $3 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $5 + local.get $3 i32.const 100000000 i32.ge_u i32.add end end - local.set $5 - local.get $2 - local.get $5 + local.set $3 + local.get $0 + local.get $3 i32.const 1 i32.add - local.tee $2 + local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $2 i32.const 45 i32.const 43 - local.get $3 + local.get $4 select i32.store16 offset=4 + local.get $0 local.get $1 - local.get $2 i32.add i32.const 2 i32.add @@ -10501,14 +10514,14 @@ (local $2 i64) (local $3 i32) (local $4 i64) - (local $5 i64) + (local $5 i32) (local $6 i64) - (local $7 i32) - (local $8 i32) - (local $9 i32) + (local $7 i64) + (local $8 i64) + (local $9 i64) (local $10 i64) - (local $11 i64) - (local $12 i64) + (local $11 i32) + (local $12 i32) (local $13 i64) (local $14 i64) local.get $1 @@ -10531,11 +10544,11 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.set $7 + local.set $5 local.get $2 i64.const 4503599627370495 i64.and - local.get $7 + local.get $5 i32.const 0 i32.ne i64.extend_i32_u @@ -10543,13 +10556,13 @@ i64.shl i64.add local.set $2 - local.get $7 + local.get $5 i32.const 1 - local.get $7 + local.get $5 select i32.const 1075 i32.sub - local.tee $7 + local.tee $11 i32.const 1 i32.sub local.get $2 @@ -10560,11 +10573,11 @@ local.tee $4 i64.clz i32.wrap_i64 - local.tee $8 + local.tee $12 i32.sub - local.set $9 + local.set $5 local.get $4 - local.get $8 + local.get $12 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -10574,25 +10587,25 @@ i64.eq i32.const 1 i32.add - local.tee $8 + local.tee $12 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $7 - local.get $8 + local.get $11 + local.get $12 i32.sub - local.get $9 + local.get $5 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $9 + local.get $5 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $7 + local.tee $5 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -10601,9 +10614,9 @@ f64.add local.tee $1 i32.trunc_f64_s - local.tee $8 + local.tee $11 local.get $1 - local.get $8 + local.get $11 f64.convert_i32_s f64.ne i32.add @@ -10611,18 +10624,18 @@ i32.shr_s i32.const 1 i32.add - local.tee $8 + local.tee $11 i32.const 3 i32.shl - local.tee $9 + local.tee $12 i32.sub global.set $~lib/util/number/_K - local.get $9 + local.get $12 i32.const 11960 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $8 + local.get $11 i32.const 1 i32.shl i32.const 12656 @@ -10633,62 +10646,62 @@ local.get $2 i64.clz i64.shl - local.tee $4 + local.tee $2 i64.const 4294967295 i64.and - local.set $2 - local.get $4 + local.set $6 + local.get $2 i64.const 32 i64.shr_u - local.tee $6 + local.tee $13 global.get $~lib/util/number/_frc_pow - local.tee $5 + local.tee $4 i64.const 4294967295 i64.and - local.tee $10 - local.tee $4 + local.tee $2 + local.tee $7 i64.mul - local.get $2 - local.get $4 + local.get $6 + local.get $7 i64.mul i64.const 32 i64.shr_u i64.add - local.set $4 - local.get $5 + local.set $7 + local.get $4 i64.const 32 i64.shr_u - local.tee $11 - local.set $5 + local.tee $4 + local.set $8 global.get $~lib/util/number/_frc_plus - local.tee $12 + local.tee $10 i64.const 4294967295 i64.and - local.set $13 - local.get $12 + local.set $9 + local.get $10 i64.const 32 i64.shr_u - local.tee $12 - local.get $10 + local.tee $14 + local.get $2 i64.mul - local.get $10 - local.get $13 + local.get $2 + local.get $9 i64.mul i64.const 32 i64.shr_u i64.add - local.set $14 - local.get $11 - local.get $12 - i64.mul + local.set $10 + local.get $4 local.get $14 + i64.mul + local.get $10 i64.const 32 i64.shr_u i64.add - local.get $11 - local.get $13 + local.get $4 + local.get $9 i64.mul - local.get $14 + local.get $10 i64.const 4294967295 i64.and i64.add @@ -10699,42 +10712,42 @@ i64.add i64.const 1 i64.sub - local.set $12 + local.set $9 global.get $~lib/util/number/_frc_minus - local.tee $13 + local.tee $14 i64.const 4294967295 i64.and - local.set $14 - local.get $13 + local.set $10 + local.get $14 i64.const 32 i64.shr_u - local.tee $13 - local.get $10 + local.tee $14 + local.get $2 i64.mul + local.get $2 local.get $10 - local.get $14 i64.mul i64.const 32 i64.shr_u i64.add - local.set $10 + local.set $2 local.get $3 i32.const 1 i32.shl local.get $0 i32.add local.get $0 - local.get $5 - local.get $6 + local.get $8 + local.get $13 i64.mul - local.get $4 + local.get $7 i64.const 32 i64.shr_u i64.add - local.get $2 - local.get $5 + local.get $6 + local.get $8 i64.mul - local.get $4 + local.get $7 i64.const 4294967295 i64.and i64.add @@ -10743,24 +10756,24 @@ i64.const 32 i64.shr_u i64.add - local.get $12 + local.get $9 global.get $~lib/util/number/_exp_pow - local.get $7 + local.get $5 i32.add i32.const -64 i32.sub - local.get $12 - local.get $11 - local.get $13 + local.get $9 + local.get $4 + local.get $14 i64.mul - local.get $10 + local.get $2 i64.const 32 i64.shr_u i64.add - local.get $11 - local.get $14 - i64.mul + local.get $4 local.get $10 + i64.mul + local.get $2 i64.const 4294967295 i64.and i64.add @@ -11102,7 +11115,7 @@ local.set $4 local.get $0 i32.load offset=12 - local.set $5 + local.set $6 i32.const 0 local.set $0 global.get $~lib/memory/__stack_pointer @@ -11121,17 +11134,17 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $5 i64.const 0 i64.store - local.get $6 + local.get $5 i32.const 0 i32.store offset=8 block $__inlined_func$~lib/util/string/joinStringArray - local.get $5 + local.get $6 i32.const 1 i32.sub - local.tee $6 + local.tee $5 i32.const 0 i32.lt_s if @@ -11143,7 +11156,7 @@ local.set $0 br $__inlined_func$~lib/util/string/joinStringArray end - local.get $6 + local.get $5 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -11165,7 +11178,7 @@ end loop $for-loop|0 local.get $3 - local.get $5 + local.get $6 i32.lt_s if global.get $~lib/memory/__stack_pointer @@ -11197,14 +11210,14 @@ end end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $5 local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $5 + local.tee $6 i32.mul local.get $0 i32.add @@ -11218,7 +11231,7 @@ local.set $3 loop $for-loop|1 local.get $3 - local.get $6 + local.get $5 i32.lt_s if global.get $~lib/memory/__stack_pointer @@ -11253,7 +11266,7 @@ i32.add local.set $2 end - local.get $5 + local.get $6 if local.get $2 i32.const 1 @@ -11261,12 +11274,12 @@ local.get $0 i32.add local.get $1 - local.get $5 + local.get $6 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $2 - local.get $5 + local.get $6 i32.add local.set $2 end @@ -11278,7 +11291,7 @@ end end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $5 i32.const 2 i32.shl local.get $4 @@ -11319,7 +11332,7 @@ (local $5 i32) local.get $0 i32.load offset=4 - local.set $3 + local.set $1 local.get $0 i32.load offset=12 local.set $0 @@ -11349,7 +11362,7 @@ local.get $0 i32.const 1 i32.sub - local.tee $4 + local.tee $2 i32.const 0 i32.lt_s if @@ -11361,12 +11374,12 @@ local.set $0 br $__inlined_func$~lib/util/string/joinReferenceArray end - local.get $4 + local.get $2 i32.eqz if global.get $~lib/memory/__stack_pointer local.tee $0 - local.get $3 + local.get $1 i32.load local.tee $1 i32.store @@ -11390,17 +11403,17 @@ i32.load i32.const 1 i32.shr_u - local.set $2 + local.set $4 loop $for-loop|0 - local.get $1 - local.get $4 - i32.lt_s + local.get $2 + local.get $3 + i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.const 2 i32.shl - local.get $3 + local.get $1 i32.add i32.load local.tee $5 @@ -11418,7 +11431,7 @@ local.tee $0 i32.store offset=4 end - local.get $2 + local.get $4 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -11427,18 +11440,18 @@ local.tee $0 i32.store offset=4 end - local.get $1 + local.get $3 i32.const 1 i32.add - local.set $1 + local.set $3 br $for-loop|0 end end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.const 2 i32.shl - local.get $3 + local.get $1 i32.add i32.load local.tee $1 @@ -11502,58 +11515,58 @@ end local.get $1 i32.extend8_s - local.tee $1 local.tee $3 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $3 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $3 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $3 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $3 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $3 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.set $3 + local.set $1 local.get $0 + local.get $3 local.get $1 local.get $2 - local.get $3 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut @@ -11580,59 +11593,59 @@ local.get $1 i32.const 65535 i32.and - local.tee $1 local.tee $2 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $1 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $1 ) (func $~lib/util/number/utoa64_dec_lut (param $0 i32) (param $1 i64) (param $2 i32) (local $3 i32) @@ -11645,7 +11658,7 @@ local.get $2 i32.const 4 i32.sub - local.tee $3 + local.tee $2 i32.const 1 i32.shl local.get $0 @@ -11659,10 +11672,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $4 + local.tee $3 i32.const 10000 i32.rem_u - local.tee $2 + local.tee $4 i32.const 100 i32.div_u i32.const 2 @@ -11670,7 +11683,7 @@ i32.const 9836 i32.add i64.load32_u - local.get $2 + local.get $4 i32.const 100 i32.rem_u i32.const 2 @@ -11682,7 +11695,7 @@ i64.shl i64.or i64.store - local.get $3 + local.get $2 i32.const 4 i32.sub local.tee $2 @@ -11690,7 +11703,7 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $3 i32.const 10000 i32.div_u local.tee $3 @@ -11864,7 +11877,7 @@ (local $7 i32) local.get $0 i32.load offset=4 - local.set $3 + local.set $4 local.get $0 i32.load offset=12 local.set $1 @@ -11886,7 +11899,7 @@ local.get $1 i32.const 1 i32.sub - local.tee $7 + local.tee $3 i32.const 0 i32.lt_s if @@ -11899,10 +11912,10 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $7 + local.get $3 i32.eqz if - local.get $3 + local.get $4 i64.load local.set $2 global.get $~lib/memory/__stack_pointer @@ -12065,18 +12078,18 @@ br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $3 i32.const 9516 i32.load i32.const 1 i32.shr_u - local.tee $4 + local.tee $5 i32.const 20 i32.add i32.mul i32.const 20 i32.add - local.tee $6 + local.tee $7 i32.const 1 i32.shl i32.const 1 @@ -12084,26 +12097,26 @@ local.tee $1 i32.store loop $for-loop|0 - local.get $5 - local.get $7 - i32.lt_s + local.get $3 + local.get $6 + i32.gt_s if local.get $0 i32.const 1 i32.shl local.get $1 i32.add - local.get $5 + local.get $6 i32.const 3 i32.shl - local.get $3 + local.get $4 i32.add i64.load call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $4 + local.get $5 if local.get $0 i32.const 1 @@ -12111,32 +12124,32 @@ local.get $1 i32.add i32.const 9520 - local.get $4 + local.get $5 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $4 + local.get $5 i32.add local.set $0 end - local.get $5 + local.get $6 i32.const 1 i32.add - local.set $5 + local.set $6 br $for-loop|0 end end - local.get $6 + local.get $7 local.get $0 i32.const 1 i32.shl local.get $1 i32.add - local.get $7 + local.get $3 i32.const 3 i32.shl - local.get $3 + local.get $4 i32.add i64.load call $~lib/util/number/itoa_buffered @@ -12181,7 +12194,7 @@ local.get $1 i64.const 0 i64.lt_s - local.tee $2 + local.tee $3 if local.get $0 i32.const 45 @@ -12195,7 +12208,7 @@ i64.const 10 i64.lt_u if - local.get $2 + local.get $3 i32.const 1 i32.shl local.get $0 @@ -12204,7 +12217,7 @@ i64.const 48 i64.or i64.store16 - local.get $2 + local.get $3 i32.const 1 i32.add return @@ -12215,58 +12228,58 @@ if local.get $1 i32.wrap_i64 - local.tee $3 local.tee $4 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $4 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $4 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $4 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $4 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $4 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $4 + local.set $2 local.get $0 - local.get $3 - local.get $2 local.get $4 + local.get $2 + local.get $3 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut @@ -12323,7 +12336,7 @@ i32.add end end - local.get $2 + local.get $3 i32.add local.tee $0 call $~lib/util/number/utoa64_dec_lut @@ -12340,7 +12353,7 @@ (local $7 i32) local.get $0 i32.load offset=4 - local.set $5 + local.set $4 local.get $0 i32.load offset=12 local.set $1 @@ -12362,7 +12375,7 @@ local.get $1 i32.const 1 i32.sub - local.tee $4 + local.tee $3 i32.const 0 i32.lt_s if @@ -12375,10 +12388,10 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $4 + local.get $3 i32.eqz if - local.get $5 + local.get $4 i64.load i64.extend32_s local.set $2 @@ -12562,12 +12575,12 @@ br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 9516 i32.load i32.const 1 i32.shr_u - local.tee $6 + local.tee $5 i32.const 21 i32.add i32.mul @@ -12582,25 +12595,25 @@ i32.store loop $for-loop|0 local.get $3 - local.get $4 - i32.lt_s + local.get $6 + i32.gt_s if local.get $0 i32.const 1 i32.shl local.get $1 i32.add - local.get $3 + local.get $6 i32.const 3 i32.shl - local.get $5 + local.get $4 i32.add i64.load call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $6 + local.get $5 if local.get $0 i32.const 1 @@ -12608,19 +12621,19 @@ local.get $1 i32.add i32.const 9520 - local.get $6 + local.get $5 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $6 + local.get $5 i32.add local.set $0 end - local.get $3 + local.get $6 i32.const 1 i32.add - local.set $3 + local.set $6 br $for-loop|0 end end @@ -12630,10 +12643,10 @@ i32.shl local.get $1 i32.add - local.get $4 + local.get $3 i32.const 3 i32.shl - local.get $5 + local.get $4 i32.add i64.load call $~lib/util/number/itoa_buffered @@ -12692,59 +12705,59 @@ local.get $1 i32.const 255 i32.and - local.tee $1 local.tee $2 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $1 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $1 ) (func $~lib/array/Array#join (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -12755,7 +12768,7 @@ (local $7 i32) local.get $0 i32.load offset=4 - local.set $6 + local.set $4 local.get $0 i32.load offset=12 local.set $0 @@ -12781,7 +12794,7 @@ local.get $0 i32.const 1 i32.sub - local.tee $7 + local.tee $3 i32.const 0 i32.lt_s if @@ -12793,10 +12806,10 @@ local.set $0 br $__inlined_func$~lib/util/string/joinIntegerArray end - local.get $7 + local.get $3 i32.eqz if - local.get $6 + local.get $4 i32.load8_u call $~lib/util/number/utoa32 local.set $0 @@ -12807,7 +12820,7 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $3 local.get $1 i32.const 20 i32.sub @@ -12820,7 +12833,7 @@ i32.mul i32.const 10 i32.add - local.tee $3 + local.tee $7 i32.const 1 i32.shl i32.const 1 @@ -12828,9 +12841,9 @@ local.tee $0 i32.store loop $for-loop|0 - local.get $4 - local.get $7 - i32.lt_s + local.get $3 + local.get $6 + i32.gt_s if local.get $2 i32.const 1 @@ -12862,21 +12875,21 @@ i32.add local.set $2 end - local.get $4 + local.get $6 i32.const 1 i32.add - local.set $4 + local.set $6 br $for-loop|0 end end - local.get $3 + local.get $7 local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.get $6 - local.get $7 + local.get $3 + local.get $4 i32.add i32.load8_u call $~lib/util/number/itoa_buffered @@ -13345,12 +13358,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) + (local $13 i64) local.get $1 i32.const 48 i32.le_s @@ -13474,7 +13487,7 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $11 + local.tee $9 local.get $5 i32.add local.set $10 @@ -13488,7 +13501,7 @@ local.get $5 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -13501,13 +13514,13 @@ end local.get $1 call $~lib/rt/tlsf/__alloc - local.set $9 + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $12 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -13519,9 +13532,9 @@ if local.get $0 i32.const 0 - local.get $12 + local.get $8 i32.const 31 - local.get $12 + local.get $8 i32.const 31 i32.lt_s select @@ -13532,7 +13545,7 @@ end loop $while-continue|2 local.get $1 - local.get $12 + local.get $8 i32.lt_s if local.get $0 @@ -13540,7 +13553,7 @@ i32.const 1 i32.add local.tee $6 - local.get $12 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -13554,13 +13567,13 @@ if local.get $0 local.get $6 - local.get $12 + local.get $8 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $12 + local.get $8 i32.gt_s select local.tee $5 @@ -13574,11 +13587,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $8 + local.tee $13 i64.div_u local.get $5 local.get $6 @@ -13588,7 +13601,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $13 i64.div_u i64.xor i32.wrap_i64 @@ -13602,15 +13615,15 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load - local.tee $13 + local.tee $12 i32.const -1 i32.ne if local.get $0 - local.get $13 + local.get $12 local.get $10 local.get $4 i32.const 2 @@ -13621,15 +13634,15 @@ i32.const 1 i32.add local.get $1 - local.get $9 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $11 + local.get $9 i32.add i32.const -1 i32.store - local.get $13 + local.get $12 local.set $3 end local.get $4 @@ -13639,7 +13652,7 @@ br $for-loop|3 end end - local.get $11 + local.get $9 local.get $7 i32.const 2 i32.shl @@ -13667,7 +13680,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $1 @@ -13684,8 +13697,8 @@ i32.load i32.const 1 i32.add - local.get $12 - local.get $9 + local.get $8 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end @@ -13696,10 +13709,10 @@ br $for-loop|4 end end - local.get $9 - call $~lib/rt/tlsf/__free local.get $11 call $~lib/rt/tlsf/__free + local.get $9 + call $~lib/rt/tlsf/__free ) (func $~lib/array/Array<~lib/string/String>#push (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -14068,25 +14081,25 @@ i32.gt_s if (result i32) global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $5 local.get $4 i32.const 2 i32.shl local.get $0 i32.add - local.tee $7 + local.tee $6 i32.load offset=4 - local.tee $5 + local.tee $7 i32.store + local.get $5 local.get $6 - local.get $7 i32.load - local.tee $6 + local.tee $5 i32.store offset=4 i32.const 2 global.set $~argumentsLength + local.get $7 local.get $5 - local.get $6 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -14462,7 +14475,7 @@ i32.store local.get $0 i32.load offset=4 - local.set $4 + local.set $1 local.get $0 i32.load offset=12 local.set $0 @@ -14485,7 +14498,7 @@ local.get $0 i32.const 1 i32.sub - local.tee $5 + local.tee $2 i32.const 0 i32.lt_s if @@ -14497,11 +14510,11 @@ local.set $0 br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> end - local.get $5 + local.get $2 i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.load local.tee $0 i32.store @@ -14528,37 +14541,37 @@ i32.load i32.const 1 i32.shr_u - local.set $2 + local.set $5 loop $for-loop|0 - local.get $1 - local.get $5 - i32.lt_s + local.get $2 + local.get $3 + i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.const 2 i32.shl - local.get $4 + local.get $1 i32.add i32.load - local.tee $6 + local.tee $4 i32.store - local.get $6 + local.get $4 if global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $4 call $~lib/array/Array#toString - local.set $6 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.store offset=8 local.get $0 - local.get $6 + local.get $4 call $~lib/string/String.__concat local.tee $0 i32.store offset=4 end - local.get $2 + local.get $5 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -14567,18 +14580,18 @@ local.tee $0 i32.store offset=4 end - local.get $1 + local.get $3 i32.const 1 i32.add - local.set $1 + local.set $3 br $for-loop|0 end end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $2 i32.const 2 i32.shl - local.get $4 + local.get $1 i32.add i32.load local.tee $1 @@ -14622,10 +14635,10 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 f32) - (local $5 f64) - (local $6 i32) - (local $7 i32) + (local $4 i32) + (local $5 i32) + (local $6 f32) + (local $7 f64) (local $8 i32) (local $9 i32) (local $10 i32) @@ -14800,24 +14813,24 @@ i32.const 1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $~lib/memory/memory.fill local.get $0 - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 if local.get $0 - local.get $2 + local.get $1 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $2 + local.get $1 i32.store offset=4 local.get $0 i32.const 1 @@ -15002,36 +15015,36 @@ i32.const 7 i32.const 1888 call $~lib/rt/__newArray - local.tee $3 + local.tee $2 i32.store offset=12 - local.get $3 + local.get $2 i32.load offset=4 - local.set $0 + local.set $3 i32.const 1 - local.get $3 - i32.load offset=12 - local.tee $2 local.get $2 + i32.load offset=12 + local.tee $0 + local.get $0 i32.const 1 i32.gt_s select local.set $1 i32.const 3 - local.get $2 - local.get $2 + local.get $0 + local.get $0 i32.const 3 i32.gt_s select - local.set $2 + local.set $0 loop $for-loop|0 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if local.get $1 i32.const 2 i32.shl - local.get $0 + local.get $3 i32.add i32.const 1 i32.store @@ -15051,7 +15064,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $3 + local.get $2 local.get $0 call $std/array/isArraysEqual i32.eqz @@ -15063,34 +15076,34 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.load offset=4 - local.set $0 + local.set $3 i32.const 0 - local.get $3 + local.get $2 i32.load offset=12 local.tee $1 local.get $1 i32.const 0 i32.gt_s select - local.set $2 + local.set $0 loop $for-loop|04 + local.get $0 local.get $1 - local.get $2 - i32.gt_s + i32.lt_s if - local.get $2 + local.get $0 i32.const 2 i32.shl - local.get $0 + local.get $3 i32.add i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|04 end end @@ -15103,7 +15116,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $3 + local.get $2 local.get $0 call $std/array/isArraysEqual i32.eqz @@ -15115,37 +15128,37 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.load offset=4 - local.set $1 + local.set $3 i32.const 0 - local.get $3 - i32.load offset=12 - local.tee $2 local.get $2 + i32.load offset=12 + local.tee $1 + local.get $1 i32.const 0 i32.gt_s select local.set $0 - local.get $2 + local.get $1 i32.const 3 i32.sub - local.tee $2 + local.tee $1 i32.const 0 - local.get $2 + local.get $1 i32.const 0 i32.gt_s select - local.set $2 + local.set $1 loop $for-loop|06 local.get $0 - local.get $2 + local.get $1 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $3 i32.add i32.const 1 i32.store @@ -15165,7 +15178,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $3 + local.get $2 local.get $0 call $std/array/isArraysEqual i32.eqz @@ -15177,37 +15190,37 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.load offset=4 - local.set $0 - local.get $3 + local.set $1 + local.get $2 i32.load offset=12 - local.tee $1 + local.tee $3 i32.const 2 i32.sub - local.tee $2 + local.tee $0 i32.const 0 - local.get $2 + local.get $0 i32.const 0 i32.gt_s select - local.set $2 + local.set $0 loop $for-loop|08 - local.get $1 - local.get $2 - i32.gt_s + local.get $0 + local.get $3 + i32.lt_s if - local.get $2 + local.get $0 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.const 2 i32.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|08 end end @@ -15220,7 +15233,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $3 + local.get $2 local.get $0 call $std/array/isArraysEqual i32.eqz @@ -15232,34 +15245,34 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.load offset=4 - local.set $1 + local.set $3 i32.const 1 - local.get $3 - i32.load offset=12 - local.tee $2 local.get $2 + i32.load offset=12 + local.tee $1 + local.get $1 i32.const 1 i32.gt_s select local.set $0 i32.const 0 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.const 0 i32.gt_s select - local.set $2 + local.set $1 loop $for-loop|010 local.get $0 - local.get $2 + local.get $1 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $3 i32.add i32.const 0 i32.store @@ -15279,7 +15292,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $3 + local.get $2 local.get $0 call $std/array/isArraysEqual i32.eqz @@ -15647,40 +15660,40 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 2 i32.const 2 i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 i32.store offset=16 - local.get $1 + local.get $0 i32.const 0 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 1 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 local.get $1 + local.get $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $1 + local.get $0 i32.const 0 i32.store offset=12 - local.get $1 + local.get $0 i32.load offset=12 if i32.const 0 @@ -15753,17 +15766,17 @@ global.get $~lib/memory/__stack_pointer i32.const 0 call $~lib/array/Array#constructor - local.tee $0 + local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $1 local.get $0 + local.get $1 call $~lib/array/Array#concat - local.tee $1 + local.tee $0 i32.store offset=16 global.get $~lib/memory/__stack_pointer global.get $std/array/arr @@ -15797,7 +15810,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=12 i32.const 3 i32.ne @@ -15818,7 +15831,7 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.store offset=8 - local.get $1 + local.get $0 local.get $2 call $~lib/array/Array#concat drop @@ -15838,7 +15851,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 43 @@ -15851,7 +15864,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.const 44 @@ -15864,7 +15877,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/array/Array#__get i32.const 45 @@ -15877,24 +15890,24 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 46 call $~lib/array/Array#push drop - local.get $0 + local.get $1 i32.const 47 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 global.get $std/array/arr local.tee $2 i32.store - local.get $1 - local.get $2 local.get $0 + local.get $2 + local.get $1 call $~lib/array/Array#concat - local.tee $1 + local.tee $0 i32.store offset=16 global.get $~lib/memory/__stack_pointer global.get $std/array/arr @@ -15912,7 +15925,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=12 i32.const 2 i32.ne @@ -15924,7 +15937,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=12 i32.const 5 i32.ne @@ -15936,7 +15949,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 43 @@ -15949,7 +15962,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.const 44 @@ -15962,7 +15975,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/array/Array#__get i32.const 45 @@ -15975,7 +15988,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 call $~lib/array/Array#__get i32.const 46 @@ -15988,7 +16001,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 4 call $~lib/array/Array#__get i32.const 47 @@ -16001,10 +16014,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 call $~lib/array/Array#pop drop - local.get $1 + local.get $0 i32.load offset=12 i32.const 4 i32.ne @@ -16774,7 +16787,7 @@ i32.store local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.lt_s if @@ -16787,27 +16800,27 @@ end local.get $0 i32.load offset=4 - local.tee $2 + local.tee $1 i32.load - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.const 4 i32.add - local.get $1 + local.get $2 i32.const 1 i32.sub - local.tee $1 + local.tee $2 i32.const 2 i32.shl - local.tee $6 + local.tee $4 call $~lib/memory/memory.copy - local.get $2 - local.get $6 + local.get $1 + local.get $4 i32.add i32.const 0 i32.store local.get $0 - local.get $1 + local.get $2 i32.store offset=12 global.set $std/array/i global.get $std/array/i @@ -17035,19 +17048,19 @@ i32.const 2 i32.const 2147483647 call $~lib/array/Array#slice - local.tee $1 + local.tee $2 i32.store offset=16 i32.const 3 i32.const 2 i32.const 3 i32.const 3536 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $2 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17064,19 +17077,19 @@ i32.const 2 i32.const 4 call $~lib/array/Array#slice - local.tee $1 + local.tee $2 i32.store offset=16 i32.const 2 i32.const 2 i32.const 3 i32.const 3568 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $2 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17093,19 +17106,19 @@ i32.const 1 i32.const 5 call $~lib/array/Array#slice - local.tee $1 + local.tee $2 i32.store offset=16 i32.const 4 i32.const 2 i32.const 3 i32.const 3600 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $2 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17142,19 +17155,19 @@ i32.const -2 i32.const 2147483647 call $~lib/array/Array#slice - local.tee $1 + local.tee $2 i32.store offset=16 i32.const 2 i32.const 2 i32.const 3 i32.const 3648 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $2 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17171,19 +17184,19 @@ i32.const 2 i32.const -1 call $~lib/array/Array#slice - local.tee $1 + local.tee $2 i32.store offset=16 i32.const 2 i32.const 2 i32.const 3 i32.const 3680 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $2 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17200,19 +17213,19 @@ i32.const -3 i32.const -1 call $~lib/array/Array#slice - local.tee $1 + local.tee $2 i32.store offset=16 i32.const 2 i32.const 2 i32.const 3 i32.const 3712 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $2 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17293,10 +17306,10 @@ i32.shl local.get $2 i32.add - local.tee $6 + local.tee $4 i32.load - local.set $7 - local.get $6 + local.set $5 + local.get $4 local.get $1 local.get $0 i32.sub @@ -17304,11 +17317,11 @@ i32.shl local.get $2 i32.add - local.tee $6 + local.tee $4 i32.load i32.store - local.get $6 - local.get $7 + local.get $4 + local.get $5 i32.store local.get $0 i32.const 1 @@ -17423,11 +17436,11 @@ i32.const 6 i32.const 3744 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#reverse local.tee $1 i32.store offset=16 @@ -17472,11 +17485,11 @@ i32.const 6 i32.const 3776 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#reverse local.tee $1 i32.store offset=4 @@ -17521,11 +17534,11 @@ i32.const 6 i32.const 3808 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#reverse local.tee $1 i32.store offset=12 @@ -17570,11 +17583,11 @@ i32.const 9 i32.const 3856 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#reverse local.tee $1 i32.store offset=20 @@ -17619,11 +17632,11 @@ i32.const 9 i32.const 3904 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#reverse local.tee $1 i32.store offset=24 @@ -17668,11 +17681,11 @@ i32.const 9 i32.const 3952 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#reverse local.tee $1 i32.store offset=28 @@ -17951,23 +17964,23 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store block $__inlined_func$~lib/array/Array#indexOf19 - local.get $1 + local.get $2 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const -100 i32.le_s i32.const 1 - local.get $2 + local.get $1 select if i32.const -1 local.set $0 br $__inlined_func$~lib/array/Array#indexOf19 end - local.get $2 + local.get $1 i32.const 100 i32.sub local.tee $0 @@ -17977,18 +17990,18 @@ i32.gt_s select local.set $0 - local.get $1 + local.get $2 i32.load offset=4 - local.set $1 + local.set $2 loop $while-continue|020 local.get $0 - local.get $2 + local.get $1 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 43 @@ -18019,23 +18032,23 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store block $__inlined_func$~lib/array/Array#indexOf21 - local.get $1 + local.get $2 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const -2 i32.le_s i32.const 1 - local.get $2 + local.get $1 select if i32.const -1 local.set $0 br $__inlined_func$~lib/array/Array#indexOf21 end - local.get $2 + local.get $1 i32.const 2 i32.sub local.tee $0 @@ -18045,18 +18058,18 @@ i32.gt_s select local.set $0 - local.get $1 + local.get $2 i32.load offset=4 - local.set $1 + local.set $2 loop $while-continue|022 local.get $0 - local.get $2 + local.get $1 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 43 @@ -18087,23 +18100,23 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store block $__inlined_func$~lib/array/Array#indexOf23 - local.get $1 + local.get $2 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const -4 i32.le_s i32.const 1 - local.get $2 + local.get $1 select if i32.const -1 local.set $0 br $__inlined_func$~lib/array/Array#indexOf23 end - local.get $2 + local.get $1 i32.const 4 i32.sub local.tee $0 @@ -18113,18 +18126,18 @@ i32.gt_s select local.set $0 - local.get $1 + local.get $2 i32.load offset=4 - local.set $1 + local.set $2 loop $while-continue|024 local.get $0 - local.get $2 + local.get $1 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 43 @@ -19046,23 +19059,23 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store block $__inlined_func$~lib/array/Array#indexOf47 - local.get $1 + local.get $2 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const -100 i32.le_s i32.const 1 - local.get $2 + local.get $1 select if i32.const -1 local.set $0 br $__inlined_func$~lib/array/Array#indexOf47 end - local.get $2 + local.get $1 i32.const 100 i32.sub local.tee $0 @@ -19072,18 +19085,18 @@ i32.gt_s select local.set $0 - local.get $1 + local.get $2 i32.load offset=4 - local.set $1 + local.set $2 loop $while-continue|048 local.get $0 - local.get $2 + local.get $1 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 43 @@ -19112,23 +19125,23 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store block $__inlined_func$~lib/array/Array#indexOf49 - local.get $1 + local.get $2 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const -2 i32.le_s i32.const 1 - local.get $2 + local.get $1 select if i32.const -1 local.set $0 br $__inlined_func$~lib/array/Array#indexOf49 end - local.get $2 + local.get $1 i32.const 2 i32.sub local.tee $0 @@ -19138,18 +19151,18 @@ i32.gt_s select local.set $0 - local.get $1 + local.get $2 i32.load offset=4 - local.set $1 + local.set $2 loop $while-continue|050 local.get $0 - local.get $2 + local.get $1 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 43 @@ -19178,23 +19191,23 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store block $__inlined_func$~lib/array/Array#indexOf51 - local.get $1 + local.get $2 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const -4 i32.le_s i32.const 1 - local.get $2 + local.get $1 select if i32.const -1 local.set $0 br $__inlined_func$~lib/array/Array#indexOf51 end - local.get $2 + local.get $1 i32.const 4 i32.sub local.tee $0 @@ -19204,18 +19217,18 @@ i32.gt_s select local.set $0 - local.get $1 + local.get $2 i32.load offset=4 - local.set $1 + local.set $2 loop $while-continue|052 local.get $0 - local.get $2 + local.get $1 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 43 @@ -19454,11 +19467,11 @@ local.get $1 i32.add f32.load - local.tee $4 + local.tee $6 f32.const nan:0x400000 f32.eq - local.get $4 - local.get $4 + local.get $6 + local.get $6 f32.ne i32.or br_if $__inlined_func$~lib/array/Array#includes @@ -19519,11 +19532,11 @@ local.get $1 i32.add f64.load - local.tee $5 + local.tee $7 f64.const nan:0x8000000000000 f64.eq - local.get $5 - local.get $5 + local.get $7 + local.get $7 f64.ne i32.or br_if $__inlined_func$~lib/array/Array#includes @@ -20496,53 +20509,53 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 5 i32.const 2 i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 i32.store offset=4 - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 local.get $1 + local.get $0 i32.store offset=24 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 2 call $~lib/array/Array#splice - local.tee $0 + local.tee $1 i32.store offset=20 - local.get $0 + local.get $1 i32.load offset=12 i32.const 2 i32.ne @@ -20554,7 +20567,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#__get i32.load @@ -20568,7 +20581,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/array/Array#__get i32.load @@ -20582,7 +20595,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=12 i32.const 3 i32.ne @@ -20594,7 +20607,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.load @@ -20608,7 +20621,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.load @@ -20622,7 +20635,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/array/Array#__get i32.load @@ -20637,34 +20650,34 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 3 i32.const 2 i32.const 12 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 i32.store offset=12 - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 1 i32.const 0 call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 2 i32.const 2 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 local.get $1 + local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -20680,18 +20693,18 @@ i32.const 0 i32.store i32.const 0 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $3 - local.get $3 + local.tee $1 + local.get $1 i32.const 0 i32.gt_s select - local.set $6 + local.set $3 local.get $2 i32.const 1 + local.get $1 local.get $3 - local.get $6 i32.sub local.tee $2 local.get $2 @@ -20704,59 +20717,59 @@ i32.const 0 i32.gt_s select - local.tee $2 + local.tee $4 i32.const 2 i32.const 12 i32.const 0 call $~lib/rt/__newArray - local.tee $7 + local.tee $2 i32.store - local.get $7 + local.get $2 i32.load offset=4 - local.get $1 + local.get $0 i32.load offset=4 local.tee $8 - local.get $6 + local.get $3 i32.const 2 i32.shl i32.add local.tee $9 - local.get $2 + local.get $4 i32.const 2 i32.shl call $~lib/memory/memory.copy + local.get $1 local.get $3 - local.get $2 - local.get $6 + local.get $4 i32.add - local.tee $6 + local.tee $3 i32.ne if local.get $9 - local.get $6 + local.get $3 i32.const 2 i32.shl local.get $8 i32.add + local.get $1 local.get $3 - local.get $6 i32.sub i32.const 2 i32.shl call $~lib/memory/memory.copy end + local.get $0 local.get $1 - local.get $3 - local.get $2 + local.get $4 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $2 i32.store offset=4 - local.get $7 + local.get $2 i32.load offset=12 i32.const 1 i32.ne @@ -20769,12 +20782,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $2 i32.const 0 call $~lib/array/Array#__get - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.eqz if i32.const 6080 @@ -20784,7 +20797,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load i32.const 1 i32.ne @@ -20796,7 +20809,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=12 i32.const 2 i32.ne @@ -20808,7 +20821,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#__get if @@ -20820,7 +20833,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 1 call $~lib/array/Array#__get local.tee $0 @@ -21550,32 +21563,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $0 + local.get $1 i32.const 6512 i32.store offset=8 block $__inlined_func$~lib/array/Array#every (result i32) i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=12 - local.set $0 + local.set $2 loop $for-loop|072 - local.get $0 local.get $2 + local.get $0 i32.load offset=12 local.tee $3 - local.get $0 + local.get $2 local.get $3 i32.lt_s select local.get $1 i32.gt_s if - local.get $2 + local.get $0 i32.load offset=4 local.get $1 i32.const 2 @@ -21588,7 +21601,7 @@ i32.const 0 local.get $3 local.get $1 - local.get $2 + local.get $0 i32.const 6512 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21614,32 +21627,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $0 + local.get $1 i32.const 6544 i32.store offset=8 block $__inlined_func$~lib/array/Array#every73 (result i32) i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=12 - local.set $0 + local.set $2 loop $for-loop|074 - local.get $0 local.get $2 + local.get $0 i32.load offset=12 local.tee $3 - local.get $0 + local.get $2 local.get $3 i32.lt_s select local.get $1 i32.gt_s if - local.get $2 + local.get $0 i32.load offset=4 local.get $1 i32.const 2 @@ -21652,7 +21665,7 @@ i32.const 0 local.get $3 local.get $1 - local.get $2 + local.get $0 i32.const 6544 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21677,32 +21690,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $0 + local.get $1 i32.const 6576 i32.store offset=8 block $__inlined_func$~lib/array/Array#every75 (result i32) i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=12 - local.set $0 + local.set $2 loop $for-loop|076 - local.get $0 local.get $2 + local.get $0 i32.load offset=12 local.tee $3 - local.get $0 + local.get $2 local.get $3 i32.lt_s select local.get $1 i32.gt_s if - local.get $2 + local.get $0 i32.load offset=4 local.get $1 i32.const 2 @@ -21715,7 +21728,7 @@ i32.const 0 local.get $3 local.get $1 - local.get $2 + local.get $0 i32.const 6576 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21757,32 +21770,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $0 + local.get $1 i32.const 6608 i32.store offset=8 block $__inlined_func$~lib/array/Array#every77 (result i32) i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=12 - local.set $0 + local.set $2 loop $for-loop|078 - local.get $0 local.get $2 + local.get $0 i32.load offset=12 local.tee $3 - local.get $0 + local.get $2 local.get $3 i32.lt_s select local.get $1 i32.gt_s if - local.get $2 + local.get $0 i32.load offset=4 local.get $1 i32.const 2 @@ -21795,7 +21808,7 @@ i32.const 0 local.get $3 local.get $1 - local.get $2 + local.get $0 i32.const 6608 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -22005,32 +22018,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $0 + local.get $1 i32.const 6704 i32.store offset=8 block $__inlined_func$~lib/array/Array#some82 (result i32) i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=12 - local.set $0 + local.set $2 loop $for-loop|083 - local.get $0 local.get $2 + local.get $0 i32.load offset=12 local.tee $3 - local.get $0 + local.get $2 local.get $3 i32.lt_s select local.get $1 i32.gt_s if - local.get $2 + local.get $0 i32.load offset=4 local.get $1 i32.const 2 @@ -22043,7 +22056,7 @@ i32.const 1 local.get $3 local.get $1 - local.get $2 + local.get $0 i32.const 6704 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -22067,188 +22080,188 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $0 + local.get $1 i32.const 6736 i32.store offset=8 block $__inlined_func$~lib/array/Array#some84 (result i32) - i32.const 0 - local.set $1 - local.get $2 - i32.load offset=12 - local.set $0 - loop $for-loop|085 - local.get $0 - local.get $2 - i32.load offset=12 - local.tee $3 - local.get $0 - local.get $3 - i32.lt_s - select - local.get $1 - i32.gt_s - if - local.get $2 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $3 - i32.const 3 - global.set $~argumentsLength - i32.const 1 - local.get $3 - local.get $1 - local.get $2 - i32.const 6736 - i32.load - call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#some84 - drop - local.get $1 - i32.const 1 - i32.add - local.set $1 - br $for-loop|085 - end - end - i32.const 0 - end - if - i32.const 0 - i32.const 1552 - i32.const 657 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - global.get $std/array/arr - local.tee $0 - i32.store - local.get $0 - i32.load offset=12 - i32.const 8 - i32.ne - if - i32.const 0 - i32.const 1552 - i32.const 658 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/array/arr - local.tee $2 - i32.store - local.get $0 - i32.const 6768 - i32.store offset=8 - block $__inlined_func$~lib/array/Array#some86 (result i32) - i32.const 0 - local.set $1 - local.get $2 - i32.load offset=12 - local.set $0 - loop $for-loop|087 - local.get $0 - local.get $2 - i32.load offset=12 - local.tee $3 - local.get $0 - local.get $3 - i32.lt_s - select - local.get $1 - i32.gt_s - if - local.get $2 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $3 - i32.const 3 - global.set $~argumentsLength - i32.const 1 - local.get $3 - local.get $1 - local.get $2 - i32.const 6768 - i32.load - call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#some86 - drop - local.get $1 - i32.const 1 - i32.add - local.set $1 - br $for-loop|087 - end - end - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 1552 - i32.const 660 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - global.get $std/array/arr - local.tee $0 - i32.store - local.get $0 - call $~lib/array/Array#pop - drop - global.get $~lib/memory/__stack_pointer - global.get $std/array/arr - local.tee $0 - i32.store - local.get $0 - call $~lib/array/Array#pop - drop - global.get $~lib/memory/__stack_pointer - global.get $std/array/arr - local.tee $0 - i32.store - local.get $0 - call $~lib/array/Array#pop - drop - global.get $~lib/memory/__stack_pointer - global.get $std/array/arr - local.tee $0 - i32.store - local.get $0 - call $~lib/array/Array#pop - drop - global.get $~lib/memory/__stack_pointer - global.get $std/array/arr - local.tee $0 - i32.store - global.get $~lib/memory/__stack_pointer - i32.const 6800 - i32.store offset=8 - block $__inlined_func$~lib/array/Array#some88 (result i32) i32.const 0 local.set $1 local.get $0 i32.load offset=12 local.set $2 - loop $for-loop|089 + loop $for-loop|085 + local.get $2 + local.get $0 + i32.load offset=12 + local.tee $3 + local.get $2 + local.get $3 + i32.lt_s + select + local.get $1 + i32.gt_s + if + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $3 + i32.const 3 + global.set $~argumentsLength + i32.const 1 + local.get $3 + local.get $1 + local.get $0 + i32.const 6736 + i32.load + call_indirect $0 (type $i32_i32_i32_=>_i32) + br_if $__inlined_func$~lib/array/Array#some84 + drop + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $for-loop|085 + end + end + i32.const 0 + end + if + i32.const 0 + i32.const 1552 + i32.const 657 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + global.get $std/array/arr + local.tee $0 + i32.store + local.get $0 + i32.load offset=12 + i32.const 8 + i32.ne + if + i32.const 0 + i32.const 1552 + i32.const 658 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $1 + global.get $std/array/arr + local.tee $0 + i32.store + local.get $1 + i32.const 6768 + i32.store offset=8 + block $__inlined_func$~lib/array/Array#some86 (result i32) + i32.const 0 + local.set $1 + local.get $0 + i32.load offset=12 + local.set $2 + loop $for-loop|087 + local.get $2 + local.get $0 + i32.load offset=12 + local.tee $3 + local.get $2 + local.get $3 + i32.lt_s + select + local.get $1 + i32.gt_s + if + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $3 + i32.const 3 + global.set $~argumentsLength + i32.const 1 + local.get $3 + local.get $1 + local.get $0 + i32.const 6768 + i32.load + call_indirect $0 (type $i32_i32_i32_=>_i32) + br_if $__inlined_func$~lib/array/Array#some86 + drop + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $for-loop|087 + end + end + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 1552 + i32.const 660 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + global.get $std/array/arr + local.tee $0 + i32.store + local.get $0 + call $~lib/array/Array#pop + drop + global.get $~lib/memory/__stack_pointer + global.get $std/array/arr + local.tee $0 + i32.store + local.get $0 + call $~lib/array/Array#pop + drop + global.get $~lib/memory/__stack_pointer + global.get $std/array/arr + local.tee $0 + i32.store + local.get $0 + call $~lib/array/Array#pop + drop + global.get $~lib/memory/__stack_pointer + global.get $std/array/arr + local.tee $0 + i32.store + local.get $0 + call $~lib/array/Array#pop + drop + global.get $~lib/memory/__stack_pointer + global.get $std/array/arr + local.tee $0 + i32.store + global.get $~lib/memory/__stack_pointer + i32.const 6800 + i32.store offset=8 + block $__inlined_func$~lib/array/Array#some88 (result i32) + i32.const 0 + local.set $1 + local.get $0 + i32.load offset=12 + local.set $2 + loop $for-loop|089 local.get $2 local.get $0 i32.load offset=12 @@ -22389,31 +22402,31 @@ i32.const 0 global.set $std/array/i global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $0 + local.get $1 i32.const 6864 i32.store offset=8 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=12 - local.set $0 + local.set $2 loop $for-loop|07191 - local.get $0 local.get $2 + local.get $0 i32.load offset=12 local.tee $3 - local.get $0 + local.get $2 local.get $3 i32.lt_s select local.get $1 i32.gt_s if - local.get $2 + local.get $0 i32.load offset=4 local.get $1 i32.const 2 @@ -22423,7 +22436,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $2 + local.get $0 i32.const 6864 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) @@ -22464,31 +22477,31 @@ i32.const 0 global.set $std/array/i global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $0 + local.get $1 i32.const 6896 i32.store offset=8 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=12 - local.set $0 + local.set $2 loop $for-loop|07492 - local.get $0 local.get $2 + local.get $0 i32.load offset=12 local.tee $3 - local.get $0 + local.get $2 local.get $3 i32.lt_s select local.get $1 i32.gt_s if - local.get $2 + local.get $0 i32.load offset=4 local.get $1 i32.const 2 @@ -22498,7 +22511,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $2 + local.get $0 i32.const 6896 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) @@ -22771,10 +22784,10 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store - local.get $3 + local.get $2 local.get $0 i32.load offset=12 local.tee $3 @@ -22782,11 +22795,11 @@ i32.const 10 i32.const 0 call $~lib/rt/__newArray - local.tee $6 + local.tee $2 i32.store - local.get $6 + local.get $2 i32.load offset=4 - local.set $7 + local.set $5 loop $for-loop|08195 local.get $3 local.get $0 @@ -22810,7 +22823,7 @@ local.set $9 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $5 local.get $8 i32.add local.get $9 @@ -22831,9 +22844,9 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store offset=12 - local.get $6 + local.get $2 i32.load offset=12 i32.const 4 i32.ne @@ -22845,10 +22858,10 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $2 i32.const 0 call $~lib/array/Array#__get - local.set $4 + local.set $6 global.get $~lib/memory/__stack_pointer global.get $std/array/arr local.tee $0 @@ -22857,7 +22870,7 @@ i32.const 0 call $~lib/array/Array#__get f32.convert_i32_s - local.get $4 + local.get $6 f32.ne if i32.const 0 @@ -23191,48 +23204,48 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer i32.const 7248 i32.store offset=8 i32.const 0 - local.set $2 + local.set $0 i32.const 0 local.set $1 - local.get $0 + local.get $2 i32.load offset=12 local.set $3 loop $for-loop|096 local.get $3 - local.get $0 + local.get $2 i32.load offset=12 - local.tee $6 + local.tee $4 local.get $3 - local.get $6 + local.get $4 i32.lt_s select local.get $1 i32.gt_s if - local.get $0 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $4 i32.const 4 global.set $~argumentsLength - local.get $2 - local.get $6 - local.get $1 local.get $0 + local.get $4 + local.get $1 + local.get $2 i32.const 7248 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $2 + local.set $0 local.get $1 i32.const 1 i32.add @@ -23240,7 +23253,7 @@ br $for-loop|096 end end - local.get $2 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 6 @@ -23256,48 +23269,48 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $3 + local.tee $2 i32.store local.get $0 i32.const 7280 i32.store offset=8 i32.const 4 - local.set $2 + local.set $0 i32.const 0 local.set $1 - local.get $3 + local.get $2 i32.load offset=12 - local.set $0 + local.set $3 loop $for-loop|098 - local.get $0 local.get $3 + local.get $2 i32.load offset=12 - local.tee $6 - local.get $0 - local.get $6 + local.tee $4 + local.get $3 + local.get $4 i32.lt_s select local.get $1 i32.gt_s if - local.get $3 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $4 i32.const 4 global.set $~argumentsLength - local.get $2 - local.get $6 + local.get $0 + local.get $4 local.get $1 - local.get $3 + local.get $2 i32.const 7280 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $2 + local.set $0 local.get $1 i32.const 1 i32.add @@ -23305,7 +23318,7 @@ br $for-loop|098 end end - local.get $2 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 10 @@ -23321,48 +23334,48 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $3 + local.tee $2 i32.store local.get $0 i32.const 7312 i32.store offset=8 i32.const 0 - local.set $2 + local.set $0 i32.const 0 local.set $1 - local.get $3 + local.get $2 i32.load offset=12 - local.set $0 + local.set $3 loop $for-loop|0100 - local.get $0 local.get $3 + local.get $2 i32.load offset=12 - local.tee $6 - local.get $0 - local.get $6 + local.tee $4 + local.get $3 + local.get $4 i32.lt_s select local.get $1 i32.gt_s if - local.get $3 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $4 i32.const 4 global.set $~argumentsLength - local.get $2 - local.get $6 + local.get $0 + local.get $4 local.get $1 - local.get $3 + local.get $2 i32.const 7312 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $2 + local.set $0 local.get $1 i32.const 1 i32.add @@ -23370,7 +23383,7 @@ br $for-loop|0100 end end - local.get $2 + local.get $0 i32.eqz if i32.const 0 @@ -23383,48 +23396,48 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $3 + local.tee $2 i32.store local.get $0 i32.const 7344 i32.store offset=8 i32.const 0 - local.set $2 + local.set $0 i32.const 0 local.set $1 - local.get $3 + local.get $2 i32.load offset=12 - local.set $0 + local.set $3 loop $for-loop|0102 - local.get $0 local.get $3 + local.get $2 i32.load offset=12 - local.tee $6 - local.get $0 - local.get $6 + local.tee $4 + local.get $3 + local.get $4 i32.lt_s select local.get $1 i32.gt_s if - local.get $3 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $4 i32.const 4 global.set $~argumentsLength - local.get $2 - local.get $6 + local.get $0 + local.get $4 local.get $1 - local.get $3 + local.get $2 i32.const 7344 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $2 + local.set $0 local.get $1 i32.const 1 i32.add @@ -23432,7 +23445,7 @@ br $for-loop|0102 end end - local.get $2 + local.get $0 if i32.const 0 i32.const 1552 @@ -23444,48 +23457,48 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $3 + local.tee $2 i32.store local.get $0 i32.const 7376 i32.store offset=8 i32.const 0 - local.set $2 + local.set $0 i32.const 0 local.set $1 - local.get $3 + local.get $2 i32.load offset=12 - local.set $0 + local.set $3 loop $for-loop|0104 - local.get $0 local.get $3 + local.get $2 i32.load offset=12 - local.tee $6 - local.get $0 - local.get $6 + local.tee $4 + local.get $3 + local.get $4 i32.lt_s select local.get $1 i32.gt_s if - local.get $3 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $4 i32.const 4 global.set $~argumentsLength - local.get $2 - local.get $6 + local.get $0 + local.get $4 local.get $1 - local.get $3 + local.get $2 i32.const 7376 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $2 + local.set $0 local.get $1 i32.const 1 i32.add @@ -23493,7 +23506,7 @@ br $for-loop|0104 end end - local.get $2 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 6 @@ -23525,48 +23538,48 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $3 + local.tee $2 i32.store local.get $0 i32.const 7408 i32.store offset=8 i32.const 0 - local.set $2 + local.set $0 i32.const 0 local.set $1 - local.get $3 + local.get $2 i32.load offset=12 - local.set $0 + local.set $3 loop $for-loop|0106 - local.get $0 local.get $3 + local.get $2 i32.load offset=12 - local.tee $6 - local.get $0 - local.get $6 + local.tee $4 + local.get $3 + local.get $4 i32.lt_s select local.get $1 i32.gt_s if - local.get $3 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $4 i32.const 4 global.set $~argumentsLength - local.get $2 - local.get $6 + local.get $0 + local.get $4 local.get $1 - local.get $3 + local.get $2 i32.const 7408 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $2 + local.set $0 local.get $1 i32.const 1 i32.add @@ -23574,7 +23587,7 @@ br $for-loop|0106 end end - local.get $2 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 10 @@ -23617,48 +23630,48 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer i32.const 7440 i32.store offset=8 i32.const 0 - local.set $2 + local.set $0 i32.const 0 local.set $1 - local.get $0 + local.get $2 i32.load offset=12 local.set $3 loop $for-loop|0108 local.get $3 - local.get $0 + local.get $2 i32.load offset=12 - local.tee $6 + local.tee $4 local.get $3 - local.get $6 + local.get $4 i32.lt_s select local.get $1 i32.gt_s if - local.get $0 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $4 i32.const 4 global.set $~argumentsLength - local.get $2 - local.get $6 - local.get $1 local.get $0 + local.get $4 + local.get $1 + local.get $2 i32.const 7440 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $2 + local.set $0 local.get $1 i32.const 1 i32.add @@ -23666,7 +23679,7 @@ br $for-loop|0108 end end - local.get $2 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 1 @@ -24713,15 +24726,15 @@ local.get $1 local.get $0 call $~lib/array/Array#__get - local.tee $5 - local.get $5 + local.tee $7 + local.get $7 f64.ne if (result i32) local.get $2 local.get $0 call $~lib/array/Array#__get - local.tee $5 - local.get $5 + local.tee $7 + local.get $7 f64.ne else i32.const 0 @@ -24867,7 +24880,7 @@ i32.const 3 i32.const 8592 call $~lib/rt/__newArray - local.tee $1 + local.tee $10 i32.store offset=124 global.get $~lib/memory/__stack_pointer i32.const 1 @@ -24875,7 +24888,7 @@ i32.const 3 i32.const 8624 call $~lib/rt/__newArray - local.tee $2 + local.tee $1 i32.store offset=128 global.get $~lib/memory/__stack_pointer i32.const 2 @@ -24883,7 +24896,7 @@ i32.const 3 i32.const 8656 call $~lib/rt/__newArray - local.tee $3 + local.tee $2 i32.store offset=132 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -24891,7 +24904,7 @@ i32.const 3 i32.const 8688 call $~lib/rt/__newArray - local.tee $6 + local.tee $3 i32.store offset=136 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -24904,43 +24917,43 @@ global.get $~lib/memory/__stack_pointer i32.const 64 call $std/array/createReverseOrderedArray - local.tee $7 + local.tee $4 i32.store offset=144 global.get $~lib/memory/__stack_pointer i32.const 128 call $std/array/createReverseOrderedArray - local.tee $8 + local.tee $5 i32.store offset=148 global.get $~lib/memory/__stack_pointer i32.const 1024 call $std/array/createReverseOrderedArray - local.tee $9 + local.tee $8 i32.store offset=152 global.get $~lib/memory/__stack_pointer i32.const 10000 call $std/array/createReverseOrderedArray - local.tee $10 + local.tee $9 i32.store offset=156 global.get $~lib/memory/__stack_pointer i32.const 512 call $std/array/createRandomOrderedArray local.tee $11 i32.store offset=160 - local.get $1 + local.get $10 call $std/array/assertSortedDefault - local.get $2 + local.get $1 call $std/array/assertSortedDefault i32.const 1 i32.const 2 i32.const 3 i32.const 8816 call $~lib/rt/__newArray - local.set $1 + local.set $10 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $10 i32.store offset=8 - local.get $2 local.get $1 + local.get $10 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -24952,7 +24965,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 call $std/array/assertSortedDefault i32.const 2 i32.const 2 @@ -24963,7 +24976,7 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=8 - local.get $3 + local.get $2 local.get $1 i32.const 0 call $std/array/isArraysEqual @@ -24976,9 +24989,9 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $3 call $std/array/assertSortedDefault - local.get $6 + local.get $3 local.get $0 i32.const 0 call $std/array/isArraysEqual @@ -24991,9 +25004,9 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $4 call $std/array/assertSortedDefault - local.get $7 + local.get $4 local.get $0 i32.const 4 call $std/array/isArraysEqual @@ -25006,9 +25019,9 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $5 call $std/array/assertSortedDefault - local.get $8 + local.get $5 local.get $0 i32.const 4 call $std/array/isArraysEqual @@ -25021,9 +25034,9 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $8 call $std/array/assertSortedDefault - local.get $9 + local.get $8 local.get $0 i32.const 4 call $std/array/isArraysEqual @@ -25036,9 +25049,9 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $9 call $std/array/assertSortedDefault - local.get $10 + local.get $9 local.get $0 i32.const 4 call $std/array/isArraysEqual @@ -25056,7 +25069,7 @@ i32.const 0 local.set $2 i32.const 0 - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 24 i32.sub @@ -25066,20 +25079,20 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i64.const 0 i64.store - local.get $1 + local.get $3 i64.const 0 i64.store offset=8 - local.get $1 + local.get $3 i64.const 0 i64.store offset=16 - local.get $1 + local.get $3 global.get $std/array/inputStabArr - local.tee $3 + local.tee $4 i32.store offset=8 - local.get $1 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -25088,67 +25101,67 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $8 i32.const 0 i32.store i32.const 0 - local.get $3 + local.get $4 i32.load offset=12 - local.tee $7 - local.get $7 + local.tee $0 + local.get $0 i32.const 0 i32.gt_s select - local.set $8 - local.get $6 - local.get $7 + local.set $5 local.get $8 + local.get $0 + local.get $5 i32.sub - local.tee $6 + local.tee $0 i32.const 0 - local.get $6 + local.get $0 i32.const 0 i32.gt_s select - local.tee $6 + local.tee $8 i32.const 2 i32.const 20 i32.const 0 call $~lib/rt/__newArray - local.tee $7 + local.tee $0 i32.store - local.get $7 + local.get $0 i32.load offset=4 local.set $9 - local.get $3 + local.get $4 i32.load offset=4 - local.get $8 + local.get $5 i32.const 2 i32.shl i32.add - local.set $3 - local.get $6 + local.set $5 + local.get $8 i32.const 2 i32.shl - local.set $6 + local.set $8 loop $while-continue|011 local.get $2 - local.get $6 + local.get $8 i32.lt_u if local.get $2 local.get $9 i32.add local.get $2 - local.get $3 + local.get $5 i32.add i32.load - local.tee $8 + local.tee $4 i32.store - local.get $8 + local.get $4 if - local.get $7 - local.get $8 + local.get $0 + local.get $4 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -25165,54 +25178,54 @@ global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer local.tee $2 - local.get $7 + local.get $0 i32.store local.get $2 i32.const 8880 i32.store offset=4 - local.get $7 + local.get $0 i32.load offset=4 - local.get $7 + local.get $0 i32.load offset=12 i32.const 8880 call $~lib/util/sort/SORT - local.get $1 - local.get $7 + local.get $3 + local.get $0 i32.store offset=12 i32.const 1 local.set $2 global.get $~lib/memory/__stack_pointer global.get $std/array/inputStabArr - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.load offset=12 - local.set $1 + local.set $5 loop $for-loop|012 - local.get $0 local.get $1 + local.get $5 i32.lt_s if block $for-break0 global.get $~lib/memory/__stack_pointer - local.get $7 local.get $0 + local.get $1 call $~lib/array/Array#__get local.tee $3 i32.store offset=16 global.get $~lib/memory/__stack_pointer global.get $std/array/outputStabArr - local.tee $6 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 - local.get $0 + local.get $4 + local.get $1 call $~lib/array/Array#__get - local.tee $6 + local.tee $4 i32.store offset=20 local.get $3 i32.load - local.get $6 + local.get $4 i32.load i32.ne if (result i32) @@ -25220,7 +25233,7 @@ else local.get $3 i32.load offset=4 - local.get $6 + local.get $4 i32.load offset=4 i32.ne end @@ -25229,10 +25242,10 @@ local.set $2 br $for-break0 end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|012 end end @@ -25297,10 +25310,10 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -25309,62 +25322,62 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $0 i64.const 0 i64.store - local.get $3 + local.get $0 i32.const 16 i32.const 26 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $0 i32.store - local.get $3 + local.get $0 i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 0 i32.store offset=4 - local.get $3 + local.get $0 i32.const 0 i32.store offset=8 - local.get $3 + local.get $0 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 32 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $2 i32.store offset=4 - local.get $6 + local.get $2 i32.const 0 i32.const 32 call $~lib/memory/memory.fill - local.get $3 - local.get $6 + local.get $0 + local.get $2 i32.store - local.get $6 + local.get $2 if - local.get $3 - local.get $6 + local.get $0 + local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $6 + local.get $0 + local.get $2 i32.store offset=4 - local.get $3 + local.get $0 i32.const 32 i32.store offset=8 - local.get $3 + local.get $0 i32.const 2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 local.get $3 + local.get $0 i32.store loop $for-loop|0154 local.get $1 @@ -25382,7 +25395,7 @@ local.get $1 i32.sub call $~lib/array/Array#__set - local.get $3 + local.get $0 local.get $1 local.get $2 call $~lib/array/Array<~lib/array/Array>#__set @@ -25397,17 +25410,17 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.store offset=156 global.get $~lib/memory/__stack_pointer i32.const 9040 i32.store offset=8 - local.get $3 + local.get $0 i32.const 9040 call $std/array/assertSorted<~lib/array/Array> global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -25417,10 +25430,10 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i64.const 0 i64.store - local.get $1 + local.get $3 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -25429,65 +25442,65 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $1 i32.const 16 i32.const 29 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 0 i32.store offset=4 - local.get $3 + local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $1 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 2048 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $2 i32.store offset=4 - local.get $6 + local.get $2 i32.const 0 i32.const 2048 call $~lib/memory/memory.fill - local.get $3 - local.get $6 + local.get $1 + local.get $2 i32.store - local.get $6 + local.get $2 if - local.get $3 - local.get $6 + local.get $1 + local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $6 + local.get $1 + local.get $2 i32.store offset=4 - local.get $3 + local.get $1 i32.const 2048 i32.store offset=8 - local.get $3 + local.get $1 i32.const 512 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 local.get $3 + local.get $1 i32.store loop $for-loop|014 - local.get $2 + local.get $0 i32.const 512 i32.lt_s if @@ -25500,18 +25513,18 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 4 i32.const 28 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 - i32.const 511 local.get $2 + i32.const 511 + local.get $0 i32.sub i32.store global.get $~lib/memory/__stack_pointer @@ -25519,16 +25532,16 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $3 local.get $2 + i32.store offset=4 local.get $1 - call $~lib/array/Array<~lib/array/Array>#__set + local.get $0 local.get $2 + call $~lib/array/Array<~lib/array/Array>#__set + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|014 end end @@ -25536,12 +25549,12 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=156 global.get $~lib/memory/__stack_pointer i32.const 9072 i32.store offset=8 - local.get $3 + local.get $1 i32.const 9072 call $std/array/assertSorted<~lib/array/Array> global.get $~lib/memory/__stack_pointer @@ -25563,7 +25576,7 @@ i32.const 1 global.set $~argumentsLength i32.const 0 - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -25586,7 +25599,7 @@ unreachable end i32.const 9360 - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 9360 i32.store @@ -25606,14 +25619,14 @@ i32.load offset=4 local.get $1 i32.load offset=12 - local.get $2 + local.get $0 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 local.get $1 i32.store block $__inlined_func$std/array/isSorted<~lib/string/String|null> (result i32) - local.get $0 + local.get $2 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -25625,36 +25638,36 @@ i64.const 0 i64.store i32.const 1 - local.set $0 + local.set $2 local.get $1 i32.load offset=12 - local.set $6 + local.set $8 loop $for-loop|019 - local.get $0 - local.get $6 + local.get $2 + local.get $8 i32.lt_s if local.get $1 - local.get $0 + local.get $2 i32.const 1 i32.sub call $~lib/array/Array#__get - local.set $7 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.store local.get $1 - local.get $0 + local.get $2 call $~lib/array/Array#__get - local.set $8 + local.set $5 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $5 i32.store offset=4 i32.const 2 global.set $~argumentsLength - local.get $7 - local.get $8 - local.get $2 + local.get $4 + local.get $5 + local.get $0 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 @@ -25667,10 +25680,10 @@ i32.const 0 br $__inlined_func$std/array/isSorted<~lib/string/String|null> end - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|019 end end @@ -25715,7 +25728,7 @@ block $folding-inner020 local.get $1 i32.load offset=12 - local.tee $0 + local.tee $5 local.get $3 i32.load offset=12 i32.ne @@ -25725,26 +25738,26 @@ i32.eq br_if $folding-inner1 loop $for-loop|049 - local.get $0 local.get $2 - i32.gt_s + local.get $5 + i32.lt_s if local.get $1 local.get $2 call $~lib/array/Array#__get - local.set $6 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.store local.get $3 local.get $2 call $~lib/array/Array#__get - local.set $7 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.store offset=4 - local.get $6 - local.get $7 + local.get $0 + local.get $4 call $~lib/string/String.__eq i32.eqz br_if $folding-inner020 @@ -25810,9 +25823,9 @@ f64.const 32 f64.mul i32.trunc_f64_s - local.set $8 + local.set $9 i32.const 0 - local.set $6 + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -25834,14 +25847,14 @@ i32.const 9232 i32.store loop $for-loop|00 - local.get $6 - local.get $8 + local.get $4 + local.get $9 i32.lt_s if local.get $0 local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $10 i32.const 7696 i32.store offset=4 call $~lib/math/NativeMath.random @@ -25856,7 +25869,7 @@ f64.mul f64.floor i32.trunc_f64_s - local.set $10 + local.set $5 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -25873,7 +25886,7 @@ i32.load i32.const 1 i32.shr_u - local.get $10 + local.get $5 i32.le_u if global.get $~lib/memory/__stack_pointer @@ -25891,7 +25904,7 @@ local.tee $0 i32.store local.get $0 - local.get $10 + local.get $5 i32.const 1 i32.shl i32.const 7696 @@ -25906,16 +25919,16 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $9 + local.get $10 local.get $3 local.get $0 call $~lib/string/String.__concat local.tee $0 i32.store - local.get $6 + local.get $4 i32.const 1 i32.add - local.set $6 + local.set $4 br $for-loop|00 end end @@ -25997,14 +26010,14 @@ i32.store offset=168 local.get $0 i32.load offset=4 - local.set $2 + local.set $3 local.get $0 i32.load offset=12 - local.set $3 + local.set $2 i32.const 0 local.set $0 i32.const 0 - local.set $6 + local.set $4 local.get $1 i32.const 4 i32.sub @@ -26017,10 +26030,10 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/string/joinBooleanArray - local.get $3 + local.get $2 i32.const 1 i32.sub - local.tee $3 + local.tee $2 i32.const 0 i32.lt_s if @@ -26033,30 +26046,30 @@ br $__inlined_func$~lib/util/string/joinBooleanArray end block $folding-inner01 - local.get $3 + local.get $2 i32.eqz if i32.const 9456 i32.const 9488 - local.get $2 + local.get $3 i32.load8_u select local.set $1 br $folding-inner01 end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 9516 i32.load i32.const 1 i32.shr_u - local.tee $7 + local.tee $5 i32.const 5 i32.add i32.mul i32.const 5 i32.add - local.tee $8 + local.tee $9 i32.const 1 i32.shl i32.const 1 @@ -26064,19 +26077,19 @@ local.tee $1 i32.store loop $for-loop|13 - local.get $3 - local.get $6 + local.get $2 + local.get $4 i32.gt_s if - local.get $2 - local.get $6 + local.get $3 + local.get $4 i32.add i32.load8_u - local.tee $9 + local.tee $10 i32.eqz i32.const 4 i32.add - local.set $10 + local.set $8 local.get $0 i32.const 1 i32.shl @@ -26084,17 +26097,17 @@ i32.add i32.const 9456 i32.const 9488 - local.get $9 - select local.get $10 + select + local.get $8 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $10 + local.get $8 i32.add local.set $0 - local.get $7 + local.get $5 if local.get $0 i32.const 1 @@ -26102,19 +26115,19 @@ local.get $1 i32.add i32.const 9520 - local.get $7 + local.get $5 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $7 + local.get $5 i32.add local.set $0 end - local.get $6 + local.get $4 i32.const 1 i32.add - local.set $6 + local.set $4 br $for-loop|13 end end @@ -26122,11 +26135,11 @@ local.get $3 i32.add i32.load8_u - local.tee $2 + local.tee $3 i32.eqz i32.const 4 i32.add - local.set $3 + local.set $2 local.get $0 i32.const 1 i32.shl @@ -26134,15 +26147,15 @@ i32.add i32.const 9456 i32.const 9488 - local.get $2 - select local.get $3 + select + local.get $2 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $8 + local.get $9 local.get $0 - local.get $3 + local.get $2 i32.add local.tee $0 i32.gt_s @@ -26358,39 +26371,39 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 3 i32.const 2 i32.const 12 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=156 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 i32.store offset=152 - local.get $1 + local.get $0 i32.const 0 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 1 i32.const 0 call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 2 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 local.get $1 + local.get $0 i32.store offset=152 global.get $~lib/memory/__stack_pointer i32.const 9520 i32.store offset=168 - local.get $1 + local.get $0 call $~lib/array/Array#join local.set $0 global.get $~lib/memory/__stack_pointer @@ -26412,35 +26425,35 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 2 i32.const 2 i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=156 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 i32.store offset=160 - local.get $1 + local.get $0 i32.const 0 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 1 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 local.get $1 + local.get $0 i32.store offset=160 global.get $~lib/memory/__stack_pointer i32.const 9520 i32.store offset=168 - local.get $1 + local.get $0 call $~lib/array/Array#join local.set $0 global.get $~lib/memory/__stack_pointer @@ -26607,14 +26620,14 @@ i32.store local.get $0 i32.load offset=4 - local.set $2 + local.set $3 local.get $0 i32.load offset=12 - local.set $3 + local.set $2 i32.const 0 local.set $0 i32.const 0 - local.set $6 + local.set $4 local.get $1 i32.const 4 i32.sub @@ -26627,10 +26640,10 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/string/joinIntegerArray - local.get $3 + local.get $2 i32.const 1 i32.sub - local.tee $3 + local.tee $2 i32.const 0 i32.lt_s if @@ -26643,22 +26656,22 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner04 - local.get $3 + local.get $2 i32.eqz if - local.get $2 + local.get $3 i32.load8_s call $~lib/util/number/itoa32 local.set $1 br $folding-inner04 end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 9516 i32.load i32.const 1 i32.shr_u - local.tee $7 + local.tee $5 i32.const 11 i32.add i32.mul @@ -26672,8 +26685,8 @@ local.tee $1 i32.store loop $for-loop|06125 - local.get $3 - local.get $6 + local.get $2 + local.get $4 i32.gt_s if local.get $0 @@ -26681,15 +26694,15 @@ i32.shl local.get $1 i32.add - local.get $2 - local.get $6 + local.get $3 + local.get $4 i32.add i32.load8_s call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $7 + local.get $5 if local.get $0 i32.const 1 @@ -26697,19 +26710,19 @@ local.get $1 i32.add i32.const 9520 - local.get $7 + local.get $5 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $7 + local.get $5 i32.add local.set $0 end - local.get $6 + local.get $4 i32.const 1 i32.add - local.set $6 + local.set $4 br $for-loop|06125 end end @@ -26796,14 +26809,14 @@ i32.store local.get $0 i32.load offset=4 - local.set $2 + local.set $3 local.get $0 i32.load offset=12 - local.set $3 + local.set $2 i32.const 0 local.set $0 i32.const 0 - local.set $6 + local.set $4 local.get $1 i32.const 4 i32.sub @@ -26816,10 +26829,10 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/string/joinIntegerArray - local.get $3 + local.get $2 i32.const 1 i32.sub - local.tee $3 + local.tee $2 i32.const 0 i32.lt_s if @@ -26832,22 +26845,22 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner07 - local.get $3 + local.get $2 i32.eqz if - local.get $2 + local.get $3 i32.load16_u call $~lib/util/number/utoa32 local.set $1 br $folding-inner07 end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 9516 i32.load i32.const 1 i32.shr_u - local.tee $7 + local.tee $5 i32.const 10 i32.add i32.mul @@ -26861,8 +26874,8 @@ local.tee $1 i32.store loop $for-loop|09 - local.get $3 - local.get $6 + local.get $2 + local.get $4 i32.gt_s if local.get $0 @@ -26870,17 +26883,17 @@ i32.shl local.get $1 i32.add - local.get $6 + local.get $4 i32.const 1 i32.shl - local.get $2 + local.get $3 i32.add i32.load16_u call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $7 + local.get $5 if local.get $0 i32.const 1 @@ -26888,19 +26901,19 @@ local.get $1 i32.add i32.const 9520 - local.get $7 + local.get $5 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $7 + local.get $5 i32.add local.set $0 end - local.get $6 + local.get $4 i32.const 1 i32.add - local.set $6 + local.set $4 br $for-loop|09 end end @@ -26910,10 +26923,10 @@ i32.shl local.get $1 i32.add - local.get $3 + local.get $2 i32.const 1 i32.shl - local.get $2 + local.get $3 i32.add i32.load16_u call $~lib/util/number/itoa_buffered @@ -27122,19 +27135,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 2 i32.const 2 i32.const 26 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=136 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 i32.store offset=160 - local.get $1 + local.get $0 i32.const 0 i32.const 2 i32.const 2 @@ -27142,7 +27155,7 @@ i32.const 14240 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 1 i32.const 2 i32.const 2 @@ -27150,8 +27163,8 @@ i32.const 14272 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 local.get $1 + local.get $0 i32.store offset=160 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -27162,21 +27175,21 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 9520 i32.store - local.get $1 + local.get $0 i32.load offset=4 local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.set $3 + local.set $0 i32.const 0 local.set $1 - local.get $0 + local.get $3 i32.const 12 i32.sub global.set $~lib/memory/__stack_pointer @@ -27185,14 +27198,14 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i64.const 0 i64.store - local.get $0 + local.get $3 i32.const 0 i32.store offset=8 block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> - local.get $3 + local.get $0 i32.const 1 i32.sub local.tee $3 @@ -27238,7 +27251,7 @@ i32.load i32.const 1 i32.shr_u - local.set $6 + local.set $5 loop $for-loop|011132 local.get $1 local.get $3 @@ -27251,24 +27264,24 @@ local.get $2 i32.add i32.load - local.tee $7 + local.tee $4 i32.store - local.get $7 + local.get $4 if global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 call $~lib/array/Array#toString - local.set $7 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.store offset=8 local.get $0 - local.get $7 + local.get $4 call $~lib/string/String.__concat local.tee $0 i32.store offset=4 end - local.get $6 + local.get $5 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -27337,19 +27350,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 2 i32.const 2 i32.const 39 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=136 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 i32.store offset=132 - local.get $1 + local.get $0 i32.const 0 i32.const 2 i32.const 0 @@ -27357,7 +27370,7 @@ i32.const 14352 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 1 i32.const 2 i32.const 0 @@ -27365,8 +27378,8 @@ i32.const 14384 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 local.get $1 + local.get $0 i32.store offset=132 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -27377,21 +27390,21 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 9520 i32.store - local.get $1 + local.get $0 i32.load offset=4 local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.set $3 + local.set $0 i32.const 0 local.set $1 - local.get $0 + local.get $3 i32.const 12 i32.sub global.set $~lib/memory/__stack_pointer @@ -27400,14 +27413,14 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i64.const 0 i64.store - local.get $0 + local.get $3 i32.const 0 i32.store offset=8 block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> - local.get $3 + local.get $0 i32.const 1 i32.sub local.tee $3 @@ -27453,7 +27466,7 @@ i32.load i32.const 1 i32.shr_u - local.set $6 + local.set $5 loop $for-loop|013 local.get $1 local.get $3 @@ -27466,24 +27479,24 @@ local.get $2 i32.add i32.load - local.tee $7 + local.tee $4 i32.store - local.get $7 + local.get $4 if global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 call $~lib/array/Array#toString - local.set $7 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.store offset=8 local.get $0 - local.get $7 + local.get $4 call $~lib/string/String.__concat local.tee $0 i32.store offset=4 end - local.get $6 + local.get $5 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -27552,16 +27565,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i32.const 1 i32.const 2 i32.const 41 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=136 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 i32.store offset=128 global.get $~lib/memory/__stack_pointer @@ -27570,13 +27583,13 @@ i32.const 40 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $1 i32.store offset=124 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.load offset=4 i32.store offset=120 - local.get $2 + local.get $1 i32.const 0 i32.const 1 i32.const 2 @@ -27584,12 +27597,12 @@ i32.const 14416 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 0 - local.get $2 + local.get $1 call $~lib/array/Array#__uset + local.get $2 local.get $0 - local.get $1 i32.store offset=128 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -27600,21 +27613,21 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 9520 i32.store - local.get $1 + local.get $0 i32.load offset=4 local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.set $3 + local.set $0 i32.const 0 local.set $1 - local.get $0 + local.get $3 i32.const 12 i32.sub global.set $~lib/memory/__stack_pointer @@ -27623,14 +27636,14 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i64.const 0 i64.store - local.get $0 + local.get $3 i32.const 0 i32.store offset=8 block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array<~lib/array/Array>> - local.get $3 + local.get $0 i32.const 1 i32.sub local.tee $3 @@ -27676,7 +27689,7 @@ i32.load i32.const 1 i32.shr_u - local.set $6 + local.set $5 loop $for-loop|015 local.get $1 local.get $3 @@ -27689,24 +27702,24 @@ local.get $2 i32.add i32.load - local.tee $7 + local.tee $4 i32.store - local.get $7 + local.get $4 if global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 call $~lib/array/Array<~lib/array/Array>#toString - local.set $7 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.store offset=8 local.get $0 - local.get $7 + local.get $4 call $~lib/string/String.__concat local.tee $0 i32.store offset=4 end - local.get $6 + local.get $5 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -27775,19 +27788,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 4 i32.const 2 i32.const 26 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=128 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 i32.store offset=132 - local.get $1 + local.get $0 i32.const 0 i32.const 1 i32.const 2 @@ -27795,7 +27808,7 @@ i32.const 14448 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 1 i32.const 3 i32.const 2 @@ -27803,7 +27816,7 @@ i32.const 14480 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 2 i32.const 3 i32.const 2 @@ -27811,7 +27824,7 @@ i32.const 14512 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 3 i32.const 3 i32.const 2 @@ -27819,11 +27832,11 @@ i32.const 14544 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 local.get $1 + local.get $0 i32.store offset=132 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 call $~lib/array/Array<~lib/array/Array>#flat local.tee $1 i32.store offset=128 @@ -27867,19 +27880,19 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 4 i32.const 2 i32.const 42 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $0 i32.store offset=160 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.load offset=4 i32.store offset=140 - local.get $3 + local.get $0 i32.const 0 i32.const 1 i32.const 2 @@ -27887,7 +27900,7 @@ i32.const 14608 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $3 + local.get $0 i32.const 1 i32.const 3 i32.const 2 @@ -27895,7 +27908,7 @@ i32.const 14704 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $3 + local.get $0 i32.const 2 i32.const 3 i32.const 2 @@ -27903,7 +27916,7 @@ i32.const 14832 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $3 + local.get $0 i32.const 3 i32.const 1 i32.const 2 @@ -27911,14 +27924,14 @@ i32.const 14896 call $~lib/rt/__newArray call $~lib/array/Array#__uset + local.get $1 local.get $0 - local.get $3 i32.store offset=140 global.get $~lib/memory/__stack_pointer i32.const 0 local.set $1 i32.const 0 - local.set $6 + local.set $4 i32.const 0 local.set $2 global.get $~lib/memory/__stack_pointer @@ -27932,21 +27945,21 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - local.get $3 + local.get $0 i32.load offset=4 - local.set $8 - local.get $3 + local.set $5 + local.get $0 i32.load offset=12 - local.set $3 + local.set $8 loop $for-loop|0137 local.get $1 - local.get $3 + local.get $8 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $8 + local.get $5 i32.add i32.load local.tee $0 @@ -27956,9 +27969,9 @@ else i32.const 0 end - local.get $6 + local.get $4 i32.add - local.set $6 + local.set $4 local.get $1 i32.const 1 i32.add @@ -27967,13 +27980,13 @@ end end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.const 2 i32.shl local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer i32.const 16 @@ -27982,21 +27995,21 @@ local.tee $0 i32.store offset=4 local.get $0 - local.get $6 + local.get $4 i32.store offset=12 local.get $0 local.get $1 i32.store offset=8 local.get $0 - local.get $9 + local.get $3 i32.store offset=4 local.get $0 - local.get $9 + local.get $3 i32.store - local.get $9 + local.get $3 if local.get $0 - local.get $9 + local.get $3 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -28004,30 +28017,30 @@ local.set $1 loop $for-loop|1138 local.get $1 - local.get $3 + local.get $8 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $8 + local.get $5 i32.add i32.load - local.tee $10 + local.tee $9 if local.get $2 - local.get $9 + local.get $3 i32.add - local.get $10 + local.get $9 i32.load offset=4 - local.get $10 + local.get $9 i32.load offset=12 i32.const 2 i32.shl - local.tee $10 + local.tee $9 call $~lib/memory/memory.copy local.get $2 - local.get $10 + local.get $9 i32.add local.set $2 end @@ -28042,18 +28055,18 @@ local.set $1 loop $for-loop|2139 local.get $1 - local.get $6 + local.get $4 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $9 + local.get $3 i32.add i32.load local.tee $2 if - local.get $9 + local.get $3 local.get $2 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link @@ -28110,12 +28123,12 @@ local.get $2 local.get $0 call $~lib/array/Array#__get - local.set $6 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.store offset=8 local.get $3 - local.get $6 + local.get $4 call $~lib/string/String.__eq i32.eqz if @@ -28134,19 +28147,19 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 2 i32.const 2 i32.const 26 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=144 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load offset=4 i32.store offset=156 - local.get $1 + local.get $0 i32.const 0 i32.const 0 i32.const 2 @@ -28154,7 +28167,7 @@ i32.const 14992 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 + local.get $0 i32.const 1 i32.const 0 i32.const 2 @@ -28162,10 +28175,10 @@ i32.const 15024 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 local.get $1 + local.get $0 i32.store offset=156 - local.get $1 + local.get $0 call $~lib/array/Array<~lib/array/Array>#flat local.set $0 global.get $~lib/memory/__stack_pointer @@ -28228,39 +28241,39 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 i32.const 0 i32.store offset=8 - local.get $3 + local.get $2 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $4 i32.const 2 i32.const 26 i32.const 0 call $~lib/rt/__newArray - local.tee $6 + local.tee $2 i32.store - local.get $6 + local.get $2 i32.load offset=4 - local.set $7 + local.set $8 loop $for-loop|0163 - local.get $3 + local.get $4 local.get $1 i32.load offset=12 - local.tee $8 + local.tee $3 local.get $3 - local.get $8 - i32.lt_s + local.get $4 + i32.gt_s select local.get $0 i32.gt_s if global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $3 local.get $0 i32.const 2 i32.shl @@ -28273,24 +28286,24 @@ i32.store offset=4 i32.const 3 global.set $~argumentsLength - local.get $8 + local.get $3 local.get $10 local.get $0 local.get $1 i32.const 15120 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - local.tee $8 + local.tee $3 i32.store offset=8 - local.get $7 + local.get $8 local.get $9 i32.add - local.get $8 + local.get $3 i32.store - local.get $8 + local.get $3 if - local.get $6 - local.get $8 + local.get $2 + local.get $3 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -28306,9 +28319,9 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store - local.get $6 + local.get $2 call $~lib/array/Array<~lib/array/Array>#flat local.tee $0 i32.store offset=144 @@ -28484,7 +28497,7 @@ end local.get $0 i32.load offset=4 - local.set $4 + local.set $0 loop $while-continue|0 local.get $2 local.get $3 @@ -28494,12 +28507,12 @@ local.get $2 i32.const 2 i32.shl - local.get $4 + local.get $0 i32.add i32.load - local.tee $0 + local.tee $4 i32.store - local.get $0 + local.get $4 local.get $1 call $~lib/string/String.__eq if @@ -28550,18 +28563,18 @@ i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 0 i32.store offset=4 - local.get $3 + local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $1 i32.const 0 i32.store offset=12 local.get $0 @@ -28584,39 +28597,39 @@ select i32.const 2 i32.shl - local.tee $2 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $1 - i32.const 0 local.get $2 - call $~lib/memory/memory.fill + i32.const 0 local.get $3 + call $~lib/memory/memory.fill local.get $1 + local.get $2 i32.store - local.get $1 + local.get $2 if - local.get $3 local.get $1 + local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 local.get $1 + local.get $2 i32.store offset=4 + local.get $1 local.get $3 - local.get $2 i32.store offset=8 - local.get $3 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 ) (func $std/array/Ref#constructor (param $0 i32) (result i32) (local $1 i32) @@ -28674,46 +28687,46 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $5 i32.const 0 i32.store local.get $0 local.get $1 i32.shl - local.tee $1 - local.set $5 - local.get $1 + local.tee $4 + local.set $6 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.set $6 + local.set $1 local.get $3 if - local.get $6 + local.get $1 local.get $3 - local.get $5 + local.get $6 call $~lib/memory/memory.copy end - local.get $4 - local.get $6 + local.get $5 + local.get $1 i32.store i32.const 16 local.get $2 call $~lib/rt/itcms/__new local.tee $2 - local.get $6 + local.get $1 i32.store - local.get $6 + local.get $1 if local.get $2 - local.get $6 + local.get $1 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $2 - local.get $6 + local.get $1 i32.store offset=4 local.get $2 - local.get $1 + local.get $4 i32.store offset=8 local.get $2 local.get $0 @@ -28789,12 +28802,12 @@ i32.const 0 local.get $1 select - local.tee $2 + local.tee $3 local.get $0 i32.load offset=12 - local.tee $3 - i32.add local.tee $4 + i32.add + local.tee $2 i32.const 268435455 i32.gt_u if @@ -28806,29 +28819,29 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.const 2 i32.const 3 i32.const 0 call $~lib/rt/__newArray - local.tee $5 + local.tee $2 i32.store - local.get $5 + local.get $2 i32.load offset=4 - local.tee $4 + local.tee $5 local.get $0 i32.load offset=4 - local.get $3 + local.get $4 i32.const 2 i32.shl local.tee $0 call $~lib/memory/memory.copy local.get $0 - local.get $4 + local.get $5 i32.add local.get $1 i32.load offset=4 - local.get $2 + local.get $3 i32.const 2 i32.shl call $~lib/memory/memory.copy @@ -28836,7 +28849,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $2 ) (func $~lib/array/Array#slice (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -28913,14 +28926,14 @@ i32.const 0 i32.gt_s select - local.tee $2 + local.tee $3 i32.const 2 i32.const 3 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.load offset=4 local.get $0 i32.load offset=4 @@ -28928,7 +28941,7 @@ i32.const 2 i32.shl i32.add - local.get $2 + local.get $3 i32.const 2 i32.shl call $~lib/memory/memory.copy @@ -28936,7 +28949,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 ) (func $~lib/array/Array#splice (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -29001,39 +29014,39 @@ i32.const 0 i32.gt_s select - local.tee $5 + local.tee $1 i32.const 2 i32.const 3 i32.const 0 call $~lib/rt/__newArray - local.tee $6 + local.tee $2 i32.store - local.get $6 + local.get $2 i32.load offset=4 local.get $0 i32.load offset=4 - local.tee $1 + local.tee $5 local.get $4 i32.const 2 i32.shl i32.add - local.tee $2 - local.get $5 + local.tee $6 + local.get $1 i32.const 2 i32.shl call $~lib/memory/memory.copy local.get $3 + local.get $1 local.get $4 - local.get $5 i32.add local.tee $4 i32.ne if - local.get $2 + local.get $6 local.get $4 i32.const 2 i32.shl - local.get $1 + local.get $5 i32.add local.get $3 local.get $4 @@ -29044,14 +29057,14 @@ end local.get $0 local.get $3 - local.get $5 + local.get $1 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $2 ) (func $~lib/array/Array#splice (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -29104,7 +29117,7 @@ i32.lt_s select end - local.tee $5 + local.tee $3 i32.sub local.tee $1 local.get $1 @@ -29117,42 +29130,42 @@ i32.const 0 i32.gt_s select - local.tee $6 + local.tee $1 i32.const 2 i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.load offset=4 local.get $0 i32.load offset=4 - local.tee $3 - local.get $5 + local.tee $5 + local.get $3 i32.const 2 i32.shl i32.add - local.tee $4 - local.get $6 + local.tee $6 + local.get $1 i32.const 2 i32.shl call $~lib/memory/memory.copy local.get $2 - local.get $5 - local.get $6 + local.get $1 + local.get $3 i32.add - local.tee $5 + local.tee $3 i32.ne if - local.get $4 - local.get $5 + local.get $6 + local.get $3 i32.const 2 i32.shl - local.get $3 + local.get $5 i32.add local.get $2 - local.get $5 + local.get $3 i32.sub i32.const 2 i32.shl @@ -29160,14 +29173,14 @@ end local.get $0 local.get $2 - local.get $6 + local.get $1 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $4 ) (func $~lib/array/Array#__get (param $0 i32) (param $1 i32) (result i32) global.get $~lib/memory/__stack_pointer @@ -29303,24 +29316,24 @@ local.get $3 local.get $0 i32.load offset=12 - local.tee $4 + local.tee $3 i32.const 2 i32.const 3 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $4 i32.store - local.get $3 + local.get $4 i32.load offset=4 - local.set $5 + local.set $4 loop $for-loop|0 - local.get $4 + local.get $3 local.get $0 i32.load offset=12 - local.tee $3 + local.tee $5 local.get $3 - local.get $4 - i32.gt_s + local.get $5 + i32.lt_s select local.get $2 i32.gt_s @@ -29328,18 +29341,18 @@ local.get $2 i32.const 2 i32.shl - local.tee $6 + local.tee $5 local.get $0 i32.load offset=4 i32.add i32.load - local.set $3 + local.set $6 i32.const 3 global.set $~argumentsLength + local.get $4 local.get $5 - local.get $6 i32.add - local.get $3 + local.get $6 local.get $2 local.get $0 local.get $1 @@ -29388,17 +29401,17 @@ i32.const 3 i32.const 0 call $~lib/rt/__newArray - local.tee $4 + local.tee $3 i32.store local.get $0 i32.load offset=12 - local.set $3 + local.set $4 loop $for-loop|0 - local.get $3 + local.get $4 local.get $0 i32.load offset=12 local.tee $5 - local.get $3 + local.get $4 local.get $5 i32.lt_s select @@ -29422,7 +29435,7 @@ i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $4 + local.get $3 local.get $5 call $~lib/array/Array#push drop @@ -29438,7 +29451,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $3 ) (func $std/array/Dim#constructor (result i32) (local $0 i32) @@ -29817,26 +29830,26 @@ local.get $2 i32.lt_s select - local.tee $4 + local.tee $1 + local.get $1 local.get $3 - local.get $4 - i32.lt_s + i32.gt_s select i32.const 1 i32.shl - local.set $1 + local.set $4 local.get $3 - local.get $4 + local.get $1 + local.get $1 local.get $3 - local.get $4 - i32.gt_s + i32.lt_s select i32.const 1 i32.shl local.tee $3 - local.get $1 + local.get $4 i32.sub - local.tee $4 + local.tee $1 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -29852,7 +29865,7 @@ i32.shl local.get $3 i32.eq - local.get $1 + local.get $4 select if global.get $~lib/memory/__stack_pointer @@ -29863,16 +29876,16 @@ return end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.const 1 call $~lib/rt/itcms/__new local.tee $2 i32.store local.get $2 local.get $0 - local.get $1 - i32.add local.get $4 + i32.add + local.get $1 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 @@ -29920,71 +29933,71 @@ local.get $0 i32.const 31 i32.shr_u - local.tee $0 - select local.tee $1 + select local.tee $2 + local.tee $0 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.get $0 + local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $0 i32.store - local.get $3 - local.get $1 + local.get $0 local.get $2 + local.get $3 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $1 if - local.get $3 + local.get $0 i32.const 45 i32.store16 end @@ -29992,7 +30005,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $0 ) (func $~lib/util/number/utoa32 (param $0 i32) (result i32) (local $1 i32) @@ -30116,19 +30129,19 @@ i64.store local.get $0 i32.load offset=4 - local.set $4 + local.set $5 local.get $0 i32.load offset=12 - local.set $5 + local.set $6 loop $for-loop|0 local.get $2 - local.get $5 + local.get $6 i32.lt_s if local.get $2 i32.const 2 i32.shl - local.get $4 + local.get $5 i32.add i32.load local.tee $0 @@ -30138,9 +30151,9 @@ else i32.const 0 end - local.get $3 + local.get $4 i32.add - local.set $3 + local.set $4 local.get $2 i32.const 1 i32.add @@ -30149,36 +30162,36 @@ end end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.const 2 i32.shl local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $0 i32.store offset=4 - local.get $6 - local.get $3 + local.get $0 + local.get $4 i32.store offset=12 - local.get $6 + local.get $0 local.get $2 i32.store offset=8 - local.get $6 local.get $0 + local.get $3 i32.store offset=4 - local.get $6 local.get $0 + local.get $3 i32.store - local.get $0 + local.get $3 if - local.get $6 local.get $0 + local.get $3 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -30186,30 +30199,30 @@ local.set $2 loop $for-loop|1 local.get $2 - local.get $5 + local.get $6 i32.lt_s if local.get $2 i32.const 2 i32.shl - local.get $4 + local.get $5 i32.add i32.load - local.tee $3 + local.tee $4 if - local.get $0 local.get $1 - i32.add local.get $3 + i32.add + local.get $4 i32.load offset=4 - local.get $3 + local.get $4 i32.load offset=12 i32.const 2 i32.shl - local.tee $3 + local.tee $4 call $~lib/memory/memory.copy local.get $1 - local.get $3 + local.get $4 i32.add local.set $1 end @@ -30224,7 +30237,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $0 ) (func $export:~lib/array/Array#get:dataStart (param $0 i32) (result i32) (local $1 i32) @@ -30357,30 +30370,30 @@ select i32.const 2 i32.shl - local.tee $2 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $2 i32.store offset=4 - local.get $4 - i32.const 0 local.get $2 + i32.const 0 + local.get $3 call $~lib/memory/memory.fill local.get $0 - local.get $4 + local.get $2 i32.store - local.get $4 + local.get $2 if local.get $0 - local.get $4 + local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $4 + local.get $2 i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 local.get $0 local.get $1 @@ -30780,16 +30793,16 @@ local.get $0 local.tee $4 i32.load offset=4 - local.set $5 + local.set $6 local.get $0 i32.load offset=12 - local.set $6 + local.set $5 local.get $2 i32.const 0 i32.lt_s if (result i32) local.get $2 - local.get $6 + local.get $5 i32.add local.tee $0 i32.const 0 @@ -30799,9 +30812,9 @@ select else local.get $2 - local.get $6 + local.get $5 local.get $2 - local.get $6 + local.get $5 i32.lt_s select end @@ -30811,7 +30824,7 @@ i32.lt_s if (result i32) local.get $3 - local.get $6 + local.get $5 i32.add local.tee $2 i32.const 0 @@ -30821,9 +30834,9 @@ select else local.get $3 - local.get $6 + local.get $5 local.get $3 - local.get $6 + local.get $5 i32.lt_s select end @@ -30836,7 +30849,7 @@ local.get $0 i32.const 2 i32.shl - local.get $5 + local.get $6 i32.add local.get $1 i32.store @@ -31202,12 +31215,12 @@ i32.const 0 local.get $1 select - local.tee $2 + local.tee $3 local.get $0 i32.load offset=12 - local.tee $3 - i32.add local.tee $4 + i32.add + local.tee $2 i32.const 268435455 i32.gt_u if @@ -31219,29 +31232,29 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.const 2 i32.const 7 i32.const 0 call $~lib/rt/__newArray - local.tee $5 + local.tee $2 i32.store - local.get $5 + local.get $2 i32.load offset=4 - local.tee $4 + local.tee $5 local.get $0 i32.load offset=4 - local.get $3 + local.get $4 i32.const 2 i32.shl local.tee $0 call $~lib/memory/memory.copy local.get $0 - local.get $4 + local.get $5 i32.add local.get $1 i32.load offset=4 - local.get $2 + local.get $3 i32.const 2 i32.shl call $~lib/memory/memory.copy @@ -31253,7 +31266,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $2 return end i32.const 32064 @@ -31344,13 +31357,13 @@ local.get $1 i32.const 1 i32.sub - local.tee $2 + local.tee $1 i32.const 2 i32.shl i32.add i32.load local.get $0 - local.get $2 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -31463,17 +31476,17 @@ i32.const 7 i32.const 0 call $~lib/rt/__newArray - local.tee $4 + local.tee $3 i32.store local.get $0 i32.load offset=12 - local.set $3 + local.set $4 loop $for-loop|0 - local.get $3 + local.get $4 local.get $0 i32.load offset=12 local.tee $5 - local.get $3 + local.get $4 local.get $5 i32.lt_s select @@ -31497,7 +31510,7 @@ i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $4 + local.get $3 local.get $5 call $~lib/array/Array#push drop @@ -31517,7 +31530,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $3 return end i32.const 32064 @@ -31552,7 +31565,7 @@ i32.store local.get $0 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const 1 i32.lt_s if @@ -31571,21 +31584,21 @@ local.get $1 i32.const 4 i32.add - local.get $3 + local.get $2 i32.const 1 i32.sub - local.tee $4 + local.tee $2 i32.const 2 i32.shl - local.tee $3 + local.tee $4 call $~lib/memory/memory.copy local.get $1 - local.get $3 + local.get $4 i32.add i32.const 0 i32.store local.get $0 - local.get $4 + local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -31789,14 +31802,14 @@ i32.const 0 i32.gt_s select - local.tee $2 + local.tee $3 i32.const 2 i32.const 7 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.load offset=4 local.get $0 i32.load offset=4 @@ -31804,7 +31817,7 @@ i32.const 2 i32.shl i32.add - local.get $2 + local.get $3 i32.const 2 i32.shl call $~lib/memory/memory.copy @@ -31816,7 +31829,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 return end i32.const 32064 @@ -31907,39 +31920,39 @@ i32.const 0 i32.gt_s select - local.tee $5 + local.tee $1 i32.const 2 i32.const 7 i32.const 0 call $~lib/rt/__newArray - local.tee $6 + local.tee $2 i32.store - local.get $6 + local.get $2 i32.load offset=4 local.get $0 i32.load offset=4 - local.tee $1 + local.tee $5 local.get $4 i32.const 2 i32.shl i32.add - local.tee $2 - local.get $5 + local.tee $6 + local.get $1 i32.const 2 i32.shl call $~lib/memory/memory.copy local.get $3 + local.get $1 local.get $4 - local.get $5 i32.add local.tee $4 i32.ne if - local.get $2 + local.get $6 local.get $4 i32.const 2 i32.shl - local.get $1 + local.get $5 i32.add local.get $3 local.get $4 @@ -31950,7 +31963,7 @@ end local.get $0 local.get $3 - local.get $5 + local.get $1 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -31961,7 +31974,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $2 return end i32.const 32064 @@ -32001,21 +32014,21 @@ local.set $2 local.get $0 i32.load offset=12 - local.tee $4 + local.tee $3 i32.const 1 i32.gt_u if - local.get $4 + local.get $3 i32.const 1 i32.shr_u - local.set $3 - local.get $4 + local.set $4 + local.get $3 i32.const 1 i32.sub - local.set $5 + local.set $3 loop $while-continue|0 local.get $1 - local.get $3 + local.get $4 i32.lt_u if local.get $1 @@ -32023,22 +32036,22 @@ i32.shl local.get $2 i32.add - local.tee $6 + local.tee $5 i32.load - local.set $4 - local.get $6 + local.set $6 local.get $5 + local.get $3 local.get $1 i32.sub i32.const 2 i32.shl local.get $2 i32.add - local.tee $6 + local.tee $5 i32.load i32.store + local.get $5 local.get $6 - local.get $4 i32.store local.get $1 i32.const 1 @@ -32302,30 +32315,30 @@ i32.const 8 i32.gt_u select - local.tee $2 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $2 i32.store offset=4 - local.get $4 - i32.const 0 local.get $2 + i32.const 0 + local.get $3 call $~lib/memory/memory.fill local.get $0 - local.get $4 + local.get $2 i32.store - local.get $4 + local.get $2 if local.get $0 - local.get $4 + local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $4 + local.get $2 i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 local.get $0 local.get $1 @@ -33039,13 +33052,13 @@ i32.store local.get $0 i32.load offset=12 - local.tee $4 + local.tee $2 local.get $1 i32.load offset=12 i32.const 0 local.get $1 select - local.tee $2 + local.tee $4 i32.add local.tee $3 i32.const 1073741820 @@ -33064,21 +33077,21 @@ i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $5 + local.tee $3 i32.store - local.get $5 + local.get $3 i32.load offset=4 - local.tee $3 + local.tee $5 local.get $0 i32.load offset=4 - local.get $4 + local.get $2 call $~lib/memory/memory.copy - local.get $3 - local.get $4 + local.get $2 + local.get $5 i32.add local.get $1 i32.load offset=4 - local.get $2 + local.get $4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 @@ -33088,7 +33101,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $3 return end i32.const 32064 @@ -33268,13 +33281,13 @@ local.get $1 i32.const 1 i32.sub - local.tee $2 + local.tee $1 local.get $0 i32.load offset=4 i32.add i32.load8_u local.get $0 - local.get $2 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -33385,17 +33398,17 @@ i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $4 + local.tee $3 i32.store local.get $0 i32.load offset=12 - local.set $3 + local.set $4 loop $for-loop|0 - local.get $3 + local.get $4 local.get $0 i32.load offset=12 local.tee $5 - local.get $3 + local.get $4 local.get $5 i32.lt_s select @@ -33417,7 +33430,7 @@ i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $4 + local.get $3 local.get $5 call $~lib/array/Array#push drop @@ -33437,7 +33450,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $3 return end i32.const 32064 @@ -33471,7 +33484,7 @@ i32.store local.get $0 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const 1 i32.lt_s if @@ -33490,18 +33503,18 @@ local.get $1 i32.const 1 i32.add - local.get $3 + local.get $2 i32.const 1 i32.sub - local.tee $3 + local.tee $2 call $~lib/memory/memory.copy local.get $1 - local.get $3 + local.get $2 i32.add i32.const 0 i32.store8 local.get $0 - local.get $3 + local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -33728,20 +33741,20 @@ i32.const 0 i32.gt_s select - local.tee $2 + local.tee $3 i32.const 0 i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.load offset=4 local.get $1 local.get $0 i32.load offset=4 i32.add - local.get $2 + local.get $3 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 @@ -33751,7 +33764,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 return end i32.const 32064 @@ -33842,33 +33855,33 @@ i32.const 0 i32.gt_s select - local.tee $5 + local.tee $1 i32.const 0 i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $6 + local.tee $2 i32.store - local.get $6 + local.get $2 i32.load offset=4 local.get $4 local.get $0 i32.load offset=4 - local.tee $1 + local.tee $5 i32.add - local.tee $2 - local.get $5 + local.tee $6 + local.get $1 call $~lib/memory/memory.copy local.get $3 + local.get $1 local.get $4 - local.get $5 i32.add local.tee $4 i32.ne if - local.get $2 - local.get $1 + local.get $6 local.get $4 + local.get $5 i32.add local.get $3 local.get $4 @@ -33877,7 +33890,7 @@ end local.get $0 local.get $3 - local.get $5 + local.get $1 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -33888,7 +33901,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $2 return end i32.const 32064 @@ -34572,16 +34585,16 @@ end local.get $0 i32.load offset=4 - local.set $4 + local.set $5 local.get $0 i32.load offset=12 - local.set $5 + local.set $4 local.get $2 i32.const 0 i32.lt_s if (result i32) local.get $2 - local.get $5 + local.get $4 i32.add local.tee $2 i32.const 0 @@ -34591,9 +34604,9 @@ select else local.get $2 - local.get $5 + local.get $4 local.get $2 - local.get $5 + local.get $4 i32.lt_s select end @@ -34603,7 +34616,7 @@ i32.lt_s if (result i32) local.get $3 - local.get $5 + local.get $4 i32.add local.tee $3 i32.const 0 @@ -34613,9 +34626,9 @@ select else local.get $3 - local.get $5 + local.get $4 local.get $3 - local.get $5 + local.get $4 i32.lt_s select end @@ -34628,7 +34641,7 @@ local.get $2 i32.const 2 i32.shl - local.get $4 + local.get $5 i32.add local.get $1 i32.store @@ -34945,15 +34958,15 @@ i32.store local.get $0 i32.load offset=12 - local.tee $4 + local.tee $5 local.get $1 i32.load offset=12 i32.const 0 local.get $1 select - local.tee $3 + local.tee $6 i32.add - local.tee $5 + local.tee $3 i32.const 268435455 i32.gt_u if @@ -34965,41 +34978,41 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $3 i32.const 2 i32.const 33 i32.const 0 call $~lib/rt/__newArray - local.tee $5 + local.tee $3 i32.store - local.get $5 + local.get $3 i32.load offset=4 - local.set $6 - local.get $4 + local.set $4 + local.get $5 i32.const 2 i32.shl - local.set $4 + local.set $5 local.get $0 i32.load offset=4 - local.set $0 + local.set $7 loop $for-loop|0 local.get $2 - local.get $4 + local.get $5 i32.lt_u if local.get $2 - local.get $6 + local.get $4 i32.add - local.get $0 local.get $2 + local.get $7 i32.add i32.load - local.tee $7 + local.tee $0 i32.store - local.get $7 + local.get $0 if - local.get $5 - local.get $7 + local.get $3 + local.get $0 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -35011,36 +35024,36 @@ end end local.get $4 - local.get $6 + local.get $5 i32.add local.set $2 local.get $1 i32.load offset=4 - local.set $1 - local.get $3 + local.set $4 + local.get $6 i32.const 2 i32.shl - local.set $3 + local.set $5 i32.const 0 local.set $0 loop $for-loop|1 local.get $0 - local.get $3 + local.get $5 i32.lt_u if local.get $0 local.get $2 i32.add local.get $0 - local.get $1 + local.get $4 i32.add i32.load - local.tee $4 + local.tee $1 i32.store - local.get $4 + local.get $1 if - local.get $5 - local.get $4 + local.get $3 + local.get $1 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -35059,7 +35072,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $3 return end i32.const 32064 @@ -35099,7 +35112,7 @@ i32.store local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.lt_s if @@ -35111,23 +35124,23 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 local.get $0 i32.load offset=4 - local.get $2 + local.get $1 i32.const 1 i32.sub - local.tee $3 + local.tee $1 i32.const 2 i32.shl i32.add i32.load - local.tee $2 + local.tee $3 i32.store local.get $0 - local.get $3 - i32.store offset=12 local.get $1 + i32.store offset=12 + local.get $2 i32.const 4 i32.add global.set $~lib/memory/__stack_pointer @@ -35135,7 +35148,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 return end i32.const 32064 @@ -35272,17 +35285,17 @@ i32.const 33 i32.const 0 call $~lib/rt/__newArray - local.tee $4 + local.tee $3 i32.store local.get $0 i32.load offset=12 - local.set $3 + local.set $4 loop $for-loop|0 - local.get $3 + local.get $4 local.get $0 i32.load offset=12 local.tee $5 - local.get $3 + local.get $4 local.get $5 i32.lt_s select @@ -35308,7 +35321,7 @@ i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $4 + local.get $3 local.get $5 call $~lib/array/Array<~lib/string/String>#push drop @@ -35328,7 +35341,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $3 return end i32.const 32064 @@ -35383,29 +35396,29 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=4 - local.tee $3 - i32.load local.tee $1 + i32.load + local.tee $3 i32.store - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.const 4 i32.add local.get $2 i32.const 1 i32.sub - local.tee $4 + local.tee $2 i32.const 2 i32.shl - local.tee $2 + local.tee $4 call $~lib/memory/memory.copy - local.get $2 - local.get $3 + local.get $1 + local.get $4 i32.add i32.const 0 i32.store local.get $0 - local.get $4 + local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -35415,7 +35428,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $3 return end i32.const 32064 @@ -35554,23 +35567,23 @@ i32.load offset=12 i32.const 1 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.const 1 call $~lib/array/ensureCapacity local.get $0 i32.load offset=4 - local.tee $2 + local.tee $3 i32.const 4 i32.add - local.get $2 local.get $3 + local.get $2 i32.const 1 i32.sub i32.const 2 i32.shl call $~lib/memory/memory.copy - local.get $2 + local.get $3 local.get $1 i32.store local.get $1 @@ -35581,13 +35594,13 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $3 + local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 ) (func $export:~lib/array/Array<~lib/string/String>#slice@varargs (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -35686,47 +35699,47 @@ i32.const 0 i32.gt_s select - local.tee $3 + local.tee $2 i32.const 2 i32.const 33 i32.const 0 call $~lib/rt/__newArray - local.tee $5 + local.tee $1 i32.store - local.get $5 + local.get $1 i32.load offset=4 - local.set $1 + local.set $3 local.get $0 i32.load offset=4 local.get $4 i32.const 2 i32.shl i32.add - local.set $2 + local.set $4 i32.const 0 local.set $0 - local.get $3 + local.get $2 i32.const 2 i32.shl - local.set $3 + local.set $5 loop $while-continue|0 local.get $0 - local.get $3 + local.get $5 i32.lt_u if local.get $0 - local.get $1 + local.get $3 i32.add local.get $0 - local.get $2 + local.get $4 i32.add i32.load - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 if - local.get $5 - local.get $4 + local.get $1 + local.get $2 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -35745,7 +35758,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $1 return end i32.const 32064 @@ -35836,39 +35849,39 @@ i32.const 0 i32.gt_s select - local.tee $5 + local.tee $1 i32.const 2 i32.const 33 i32.const 0 call $~lib/rt/__newArray - local.tee $6 + local.tee $2 i32.store - local.get $6 + local.get $2 i32.load offset=4 local.get $0 i32.load offset=4 - local.tee $1 + local.tee $5 local.get $4 i32.const 2 i32.shl i32.add - local.tee $2 - local.get $5 + local.tee $6 + local.get $1 i32.const 2 i32.shl call $~lib/memory/memory.copy local.get $3 + local.get $1 local.get $4 - local.get $5 i32.add local.tee $4 i32.ne if - local.get $2 + local.get $6 local.get $4 i32.const 2 i32.shl - local.get $1 + local.get $5 i32.add local.get $3 local.get $4 @@ -35879,7 +35892,7 @@ end local.get $0 local.get $3 - local.get $5 + local.get $1 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -35890,7 +35903,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $2 return end i32.const 32064 @@ -35917,16 +35930,16 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $4 local.get $0 i32.store local.get $0 i32.load offset=4 - local.set $2 + local.set $3 local.get $0 i32.load offset=12 - local.set $4 - local.get $3 + local.set $2 + local.get $4 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -35937,46 +35950,46 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $4 + local.get $2 i32.const 1 i32.gt_u if - local.get $4 + local.get $2 i32.const 1 i32.shr_u - local.set $5 - local.get $4 + local.set $4 + local.get $2 i32.const 1 i32.sub - local.set $4 + local.set $2 loop $while-continue|0 local.get $1 - local.get $5 + local.get $4 i32.lt_u if global.get $~lib/memory/__stack_pointer local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add - local.tee $6 + local.tee $5 i32.load - local.tee $3 + local.tee $6 i32.store - local.get $6 - local.get $4 + local.get $5 + local.get $2 local.get $1 i32.sub i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add - local.tee $6 + local.tee $5 i32.load i32.store + local.get $5 local.get $6 - local.get $3 i32.store local.get $1 i32.const 1 @@ -36204,16 +36217,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $0 i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $0 local.get $1 local.get $2 select @@ -36222,7 +36235,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $3 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/arraybuffer.optimized.wat b/tests/compiler/std/arraybuffer.optimized.wat index 6fab8e3fb4..a6d92d83bd 100644 --- a/tests/compiler/std/arraybuffer.optimized.wat +++ b/tests/compiler/std/arraybuffer.optimized.wat @@ -119,7 +119,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -142,7 +142,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -152,23 +152,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -176,7 +176,7 @@ else i32.const 1712 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1360 @@ -186,7 +186,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 1716 @@ -201,27 +201,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -309,19 +309,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -346,9 +346,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -356,17 +356,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -654,10 +654,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -669,15 +669,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -707,7 +707,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -743,12 +743,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -766,11 +766,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 18240 @@ -778,14 +778,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -795,17 +795,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1283,14 +1283,14 @@ i32.sub i32.const -4 i32.and - local.tee $1 - i32.add local.tee $2 + i32.add + local.tee $1 i32.const 4 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1300,17 +1300,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 12 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1326,22 +1326,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $2 + local.get $1 i32.const 28 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 20 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 16 i32.sub i32.const 0 @@ -1352,11 +1352,11 @@ i32.and i32.const 24 i32.add - local.tee $2 + local.tee $1 i32.add local.set $0 - local.get $1 local.get $2 + local.get $1 i32.sub local.set $1 loop $while-continue|0 @@ -1461,7 +1461,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1487,32 +1487,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1528,16 +1528,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1545,7 +1545,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1553,8 +1553,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1571,7 +1571,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1581,13 +1581,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1600,40 +1600,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -1659,26 +1659,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2153,105 +2153,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2283,41 +2293,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2653,13 +2665,13 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 memory.size @@ -2694,7 +2706,7 @@ i32.store i32.const 1456 global.set $~lib/rt/itcms/fromSpace - local.get $0 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -2703,26 +2715,26 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 8 call $~lib/memory/memory.fill global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -2737,13 +2749,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 0 i32.const 1073741820 call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -2769,13 +2781,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 1 i32.const 1073741820 call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -2790,13 +2802,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const -1 i32.const 1073741820 call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -2811,13 +2823,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 1 i32.const 3 call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -2832,13 +2844,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 1 i32.const -1 call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -2853,13 +2865,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const -3 i32.const -1 call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -2874,13 +2886,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const -4 i32.const 42 call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -2895,7 +2907,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 42 i32.const 1073741820 call $~lib/arraybuffer/ArrayBuffer#slice @@ -2947,13 +2959,13 @@ local.get $0 i32.const 0 call $~lib/arraybuffer/ArrayBufferView#constructor - local.tee $0 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -2970,27 +2982,27 @@ i32.const 8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 i32.const 1632 i32.const 8 call $~lib/memory/memory.copy local.get $1 - local.get $2 + local.get $0 i32.store i32.const 16 i32.const 3 call $~lib/rt/itcms/__new local.tee $1 - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 if local.get $1 - local.get $2 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $1 - local.get $2 + local.get $0 i32.store offset=4 local.get $1 i32.const 8 @@ -3014,38 +3026,38 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 2 call $~lib/arraybuffer/ArrayBufferView#constructor - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.load - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -3055,31 +3067,31 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $0 i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 12 i32.const 15 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.store offset=4 - local.get $2 + local.get $0 i32.const 0 i32.store offset=8 + local.get $2 local.get $1 - local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.gt_u - local.get $1 + local.get $2 i32.const 1073741820 i32.gt_u i32.or @@ -3091,27 +3103,27 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 if - local.get $2 local.get $0 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 local.get $0 + local.get $1 i32.store offset=4 + local.get $0 local.get $2 - local.get $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=12 i32.const 18228 global.set $~lib/memory/__stack_pointer @@ -3238,22 +3250,22 @@ i32.const 0 i32.gt_s select - local.tee $2 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 local.get $0 local.get $1 i32.add - local.get $2 + local.get $3 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 ) (func $~lib/arraybuffer/ArrayBufferView#constructor (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -3311,28 +3323,28 @@ i32.const 1 local.get $1 i32.shl - local.tee $1 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $2 local.get $1 + local.get $2 call $~lib/memory/memory.fill local.get $0 - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 if local.get $0 - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $2 + local.get $1 i32.store offset=4 local.get $0 - local.get $1 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 diff --git a/tests/compiler/std/dataview.optimized.wat b/tests/compiler/std/dataview.optimized.wat index 9dfa64182e..1db53a8136 100644 --- a/tests/compiler/std/dataview.optimized.wat +++ b/tests/compiler/std/dataview.optimized.wat @@ -125,7 +125,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -148,7 +148,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -158,23 +158,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -182,7 +182,7 @@ else i32.const 1744 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1360 @@ -192,7 +192,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 1748 @@ -207,27 +207,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -315,19 +315,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -352,9 +352,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -362,17 +362,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -660,10 +660,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -675,15 +675,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -713,7 +713,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -749,12 +749,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -772,11 +772,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 18176 @@ -784,14 +784,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -801,17 +801,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1289,14 +1289,14 @@ i32.sub i32.const -4 i32.and - local.tee $1 - i32.add local.tee $2 + i32.add + local.tee $1 i32.const 4 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1306,17 +1306,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 12 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1332,22 +1332,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $2 + local.get $1 i32.const 28 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 20 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 16 i32.sub i32.const 0 @@ -1358,11 +1358,11 @@ i32.and i32.const 24 i32.add - local.tee $2 + local.tee $1 i32.add local.set $0 - local.get $1 local.get $2 + local.get $1 i32.sub local.set $1 loop $while-continue|0 @@ -1467,7 +1467,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1493,32 +1493,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1534,16 +1534,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1551,7 +1551,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1559,8 +1559,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1577,7 +1577,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1587,13 +1587,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1606,40 +1606,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -1665,26 +1665,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2476,10 +2476,10 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 memory.size @@ -2514,7 +2514,7 @@ i32.store i32.const 1456 global.set $~lib/rt/itcms/fromSpace - local.get $1 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -2530,7 +2530,7 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -2544,40 +2544,40 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - local.get $0 + local.get $1 i32.eqz if global.get $~lib/memory/__stack_pointer i32.const 12 i32.const 2 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store end - local.get $0 + local.get $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $0 i32.store offset=4 - local.get $5 + local.get $0 i32.const 8 call $~lib/memory/memory.fill + local.get $1 local.get $0 - local.get $5 i32.store - local.get $5 + local.get $0 if - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -2588,112 +2588,112 @@ unreachable end global.get $~lib/rt/itcms/white - local.get $5 + local.get $0 i32.const 20 i32.sub - local.tee $2 + local.tee $3 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $4 + local.tee $5 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $2 + local.get $3 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $4 + local.get $5 i32.const 3 i32.eq i32.and if - local.get $2 + local.get $3 call $~lib/rt/itcms/Object#makeGray end end end end + local.get $1 local.get $0 - local.get $5 i32.store offset=4 - local.get $0 + local.get $1 i32.const 8 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $1 - local.get $0 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 246 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 224 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 88 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 3 i32.const 159 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 4 i32.const 130 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 5 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 6 i32.const 67 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 7 i32.const 95 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load - local.tee $1 + local.tee $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub - local.get $0 + local.get $1 i32.load offset=8 call $~lib/dataview/DataView#constructor - local.tee $1 + local.tee $0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -2707,7 +2707,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -2721,7 +2721,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -2735,7 +2735,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -2749,7 +2749,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -2763,7 +2763,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -2777,7 +2777,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -2791,7 +2791,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -2805,7 +2805,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -2819,7 +2819,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -2833,7 +2833,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/dataview/DataView#getFloat64 f64.const 7936550095674706383278551e126 @@ -2846,7 +2846,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/dataview/DataView#getFloat64 f64.const -411777475818852546741639e241 @@ -2859,7 +2859,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/dataview/DataView#getInt8 i32.const -10 @@ -2872,7 +2872,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/dataview/DataView#getInt8 i32.const -32 @@ -2885,7 +2885,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/dataview/DataView#getInt8 i32.const 88 @@ -2898,7 +2898,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 call $~lib/dataview/DataView#getInt8 i32.const -97 @@ -2911,7 +2911,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 4 call $~lib/dataview/DataView#getInt8 i32.const -126 @@ -2924,7 +2924,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 5 call $~lib/dataview/DataView#getInt8 i32.const 101 @@ -2937,7 +2937,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 6 call $~lib/dataview/DataView#getInt8 i32.const 67 @@ -2950,7 +2950,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 7 call $~lib/dataview/DataView#getInt8 i32.const 95 @@ -2963,7 +2963,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -2979,7 +2979,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -2995,7 +2995,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3011,7 +3011,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3027,7 +3027,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3043,7 +3043,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 5 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3059,7 +3059,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 6 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3075,7 +3075,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3091,7 +3091,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3107,7 +3107,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3123,7 +3123,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3139,7 +3139,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3155,7 +3155,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 5 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3171,7 +3171,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 6 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3187,7 +3187,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -3201,7 +3201,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -3215,7 +3215,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -3229,7 +3229,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -3243,7 +3243,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -3257,7 +3257,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -3271,7 +3271,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -3285,7 +3285,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -3299,7 +3299,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -3313,7 +3313,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -3327,7 +3327,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/dataview/DataView#getInt64 i64.const 6864441868736323830 @@ -3340,7 +3340,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/dataview/DataView#getInt64 i64.const -657428103485373601 @@ -3353,7 +3353,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/dataview/DataView#getUint8 i32.const 246 @@ -3366,7 +3366,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/dataview/DataView#getUint8 i32.const 224 @@ -3379,7 +3379,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/dataview/DataView#getUint8 i32.const 88 @@ -3392,7 +3392,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 call $~lib/dataview/DataView#getUint8 i32.const 159 @@ -3405,7 +3405,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 4 call $~lib/dataview/DataView#getUint8 i32.const 130 @@ -3418,7 +3418,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 5 call $~lib/dataview/DataView#getUint8 i32.const 101 @@ -3431,7 +3431,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 6 call $~lib/dataview/DataView#getUint8 i32.const 67 @@ -3444,7 +3444,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 7 call $~lib/dataview/DataView#getUint8 i32.const 95 @@ -3457,7 +3457,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -3473,7 +3473,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -3489,7 +3489,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -3505,7 +3505,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -3521,7 +3521,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -3537,7 +3537,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 5 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -3553,7 +3553,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 6 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -3569,7 +3569,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -3585,7 +3585,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -3601,7 +3601,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -3617,7 +3617,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -3633,7 +3633,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -3649,7 +3649,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 5 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -3665,7 +3665,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 6 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -3681,7 +3681,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -3695,7 +3695,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -3709,7 +3709,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -3723,7 +3723,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -3737,7 +3737,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -3751,7 +3751,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -3765,7 +3765,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -3779,7 +3779,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -3793,7 +3793,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -3807,7 +3807,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -3821,7 +3821,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/dataview/DataView#getUint64 i64.const 6864441868736323830 @@ -3834,7 +3834,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/dataview/DataView#getUint64 i64.const -657428103485373601 @@ -3847,11 +3847,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 f32.const 1.5976661625240943e-18 i32.const 1 call $~lib/dataview/DataView#setFloat32 - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -3865,11 +3865,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 f32.const 1976281973381696323584 i32.const 0 call $~lib/dataview/DataView#setFloat32 - local.get $1 + local.get $0 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -3883,11 +3883,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 f64.const -1094252199637739024055454e124 i32.const 1 call $~lib/dataview/DataView#setFloat64 - local.get $1 + local.get $0 i32.const 1 call $~lib/dataview/DataView#getFloat64 f64.const -1094252199637739024055454e124 @@ -3900,11 +3900,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 f64.const 6.022586634778589e-103 i32.const 0 call $~lib/dataview/DataView#setFloat64 - local.get $1 + local.get $0 i32.const 0 call $~lib/dataview/DataView#getFloat64 f64.const 6.022586634778589e-103 @@ -3917,7 +3917,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.eqz if @@ -3928,11 +3928,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=4 i32.const 108 i32.store8 - local.get $1 + local.get $0 i32.const 0 call $~lib/dataview/DataView#getInt8 i32.const 108 @@ -3945,11 +3945,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const -13360 i32.const 1 call $~lib/dataview/DataView#setInt16 - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3965,11 +3965,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 14689 i32.const 0 call $~lib/dataview/DataView#setInt16 - local.get $1 + local.get $0 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3985,11 +3985,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1204680201 i32.const 1 call $~lib/dataview/DataView#setInt32 - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -4003,11 +4003,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 660673230 i32.const 0 call $~lib/dataview/DataView#setInt32 - local.get $1 + local.get $0 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -4021,11 +4021,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i64.const -3290739641816099749 i32.const 1 call $~lib/dataview/DataView#setInt64 - local.get $1 + local.get $0 i32.const 1 call $~lib/dataview/DataView#getInt64 i64.const -3290739641816099749 @@ -4038,11 +4038,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i64.const 8178932412950708047 i32.const 0 call $~lib/dataview/DataView#setInt64 - local.get $1 + local.get $0 i32.const 0 call $~lib/dataview/DataView#getInt64 i64.const 8178932412950708047 @@ -4055,7 +4055,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.eqz if @@ -4066,11 +4066,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=4 i32.const 238 i32.store8 - local.get $1 + local.get $0 i32.const 0 call $~lib/dataview/DataView#getUint8 i32.const 238 @@ -4083,11 +4083,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 58856 i32.const 1 call $~lib/dataview/DataView#setUint16 - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -4103,11 +4103,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 60400 i32.const 0 call $~lib/dataview/DataView#setUint16 - local.get $1 + local.get $0 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -4123,11 +4123,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const -846805744 i32.const 1 call $~lib/dataview/DataView#setUint32 - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -4141,11 +4141,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const -1510791631 i32.const 0 call $~lib/dataview/DataView#setUint32 - local.get $1 + local.get $0 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -4159,11 +4159,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i64.const 2334704782995986958 i32.const 1 call $~lib/dataview/DataView#setUint64 - local.get $1 + local.get $0 i32.const 1 call $~lib/dataview/DataView#getUint64 i64.const 2334704782995986958 @@ -4176,11 +4176,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i64.const -7123186897289856329 i32.const 0 call $~lib/dataview/DataView#setUint64 - local.get $1 + local.get $0 i32.const 0 call $~lib/dataview/DataView#getUint64 i64.const -7123186897289856329 @@ -4194,12 +4194,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 + local.tee $2 + local.get $1 i32.load local.tee $0 i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.const 0 local.get $0 @@ -4309,15 +4309,15 @@ i32.const 12 i32.const 4 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $3 i32.store - local.get $5 + local.get $3 i32.const 0 i32.store - local.get $5 + local.get $3 i32.const 0 i32.store offset=4 - local.get $5 + local.get $3 i32.const 0 i32.store offset=8 local.get $0 @@ -4340,12 +4340,12 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $3 local.get $0 i32.store local.get $0 if - local.get $5 + local.get $3 i32.eqz if i32.const 0 @@ -4359,53 +4359,53 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $4 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $5 + local.get $3 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $4 + local.tee $5 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $4 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $4 + local.get $5 i32.const 3 i32.eq i32.and if - local.get $3 + local.get $4 call $~lib/rt/itcms/Object#makeGray end end end end - local.get $5 + local.get $3 local.get $0 local.get $1 i32.add i32.store offset=4 - local.get $5 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $3 ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) global.get $~lib/rt/itcms/white diff --git a/tests/compiler/std/date.optimized.wat b/tests/compiler/std/date.optimized.wat index c554de81ae..e0ecf66113 100644 --- a/tests/compiler/std/date.optimized.wat +++ b/tests/compiler/std/date.optimized.wat @@ -239,17 +239,17 @@ i32.const 2 i32.le_s i32.sub - local.tee $7 - local.get $7 + local.tee $0 + local.get $0 i32.const 399 i32.sub - local.get $7 + local.get $0 i32.const 0 i32.ge_s select i32.const 400 i32.div_s - local.set $0 + local.set $7 local.get $6 i64.extend_i32_s local.get $5 @@ -280,24 +280,24 @@ i32.const 5 i32.div_u i32.add - local.get $7 local.get $0 + local.get $7 i32.const 400 i32.mul i32.sub - local.tee $1 + local.tee $0 i32.const 365 i32.mul - local.get $1 + local.get $0 i32.const 2 i32.shr_u i32.add - local.get $1 + local.get $0 i32.const 100 i32.div_u i32.sub i32.add - local.get $0 + local.get $7 i32.const 146097 i32.mul i32.add @@ -328,51 +328,51 @@ select i32.const 146097 i32.div_s - local.set $1 + local.set $2 local.get $0 - local.get $1 + local.get $2 i32.const 146097 i32.mul i32.sub - local.tee $2 - local.get $2 + local.tee $0 + local.get $0 i32.const 1460 i32.div_u i32.sub - local.get $2 + local.get $0 i32.const 36524 i32.div_u i32.add - local.get $2 + local.get $0 i32.const 146096 i32.div_u i32.sub i32.const 365 i32.div_u - local.set $0 - local.get $2 + local.set $1 local.get $0 + local.get $1 i32.const 365 i32.mul - local.get $0 + local.get $1 i32.const 2 i32.shr_u i32.add - local.get $0 + local.get $1 i32.const 100 i32.div_u i32.sub i32.sub - local.tee $2 + local.tee $3 i32.const 5 i32.mul i32.const 2 i32.add i32.const 153 i32.div_s - local.set $3 - local.get $2 + local.set $0 local.get $3 + local.get $0 i32.const 153 i32.mul i32.const 2 @@ -385,20 +385,20 @@ global.set $~lib/date/_day i32.const 3 i32.const -9 - local.get $3 + local.get $0 i32.const 10 i32.lt_s select - local.get $3 + local.get $0 i32.add - local.tee $2 + local.tee $0 global.set $~lib/date/_month - local.get $1 + local.get $2 i32.const 400 i32.mul - local.get $0 + local.get $1 i32.add - local.get $2 + local.get $0 i32.const 2 i32.le_s i32.add @@ -486,7 +486,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -509,7 +509,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -519,23 +519,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -543,7 +543,7 @@ else i32.const 7504 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1392 @@ -553,7 +553,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 7508 @@ -568,27 +568,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -676,19 +676,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -713,9 +713,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -723,17 +723,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -1021,10 +1021,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -1036,15 +1036,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -1074,7 +1074,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -1110,12 +1110,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -1133,11 +1133,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 23952 @@ -1145,14 +1145,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -1162,17 +1162,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1650,14 +1650,14 @@ i32.sub i32.const -4 i32.and - local.tee $1 - i32.add local.tee $2 + i32.add + local.tee $1 i32.const 4 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1667,17 +1667,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 12 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1693,22 +1693,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $2 + local.get $1 i32.const 28 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 20 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 16 i32.sub i32.const 0 @@ -1719,11 +1719,11 @@ i32.and i32.const 24 i32.add - local.tee $2 + local.tee $1 i32.add local.set $0 - local.get $1 local.get $2 + local.get $1 i32.sub local.set $1 loop $while-continue|0 @@ -1828,7 +1828,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1854,32 +1854,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1895,16 +1895,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1912,7 +1912,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1920,8 +1920,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1938,7 +1938,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1948,13 +1948,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1967,40 +1967,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -2026,26 +2026,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2304,8 +2304,8 @@ ) (func $~lib/date/Date#setUTCMonth (param $0 i32) (param $1 i32) (local $2 i32) - (local $3 i64) - (local $4 i32) + (local $3 i32) + (local $4 i64) local.get $1 local.get $0 i32.load offset=4 @@ -2318,30 +2318,30 @@ local.get $1 i32.const 1 i32.add - local.tee $1 + local.tee $2 i32.const 2 i32.le_s i32.sub - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 i32.const 399 i32.sub - local.get $4 + local.get $1 i32.const 0 i32.ge_s select i32.const 400 i32.div_s - local.set $2 + local.set $3 local.get $0 local.get $0 i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $3 + local.tee $4 i64.const 86400000 i64.const 0 - local.get $3 + local.get $4 i64.const 0 i64.lt_s select @@ -2350,11 +2350,11 @@ i32.load offset=8 i32.const -3 i32.const 9 - local.get $1 + local.get $2 i32.const 2 i32.gt_s select - local.get $1 + local.get $2 i32.add i32.const 153 i32.mul @@ -2363,8 +2363,8 @@ i32.const 5 i32.div_u i32.add - local.get $4 - local.get $2 + local.get $1 + local.get $3 i32.const 400 i32.mul i32.sub @@ -2380,7 +2380,7 @@ i32.div_u i32.sub i32.add - local.get $2 + local.get $3 i32.const 146097 i32.mul i32.add @@ -2394,8 +2394,8 @@ ) (func $~lib/date/Date#setUTCFullYear (param $0 i32) (param $1 i32) (local $2 i32) - (local $3 i64) - (local $4 i32) + (local $3 i32) + (local $4 i64) local.get $1 local.get $0 i32.load @@ -2406,30 +2406,30 @@ local.get $1 local.get $0 i32.load offset=4 - local.tee $1 + local.tee $2 i32.const 2 i32.le_s i32.sub - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 i32.const 399 i32.sub - local.get $4 + local.get $1 i32.const 0 i32.ge_s select i32.const 400 i32.div_s - local.set $2 + local.set $3 local.get $0 local.get $0 i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $3 + local.tee $4 i64.const 86400000 i64.const 0 - local.get $3 + local.get $4 i64.const 0 i64.lt_s select @@ -2438,11 +2438,11 @@ i32.load offset=8 i32.const -3 i32.const 9 - local.get $1 + local.get $2 i32.const 2 i32.gt_s select - local.get $1 + local.get $2 i32.add i32.const 153 i32.mul @@ -2451,8 +2451,8 @@ i32.const 5 i32.div_u i32.add - local.get $4 - local.get $2 + local.get $1 + local.get $3 i32.const 400 i32.mul i32.sub @@ -2468,7 +2468,7 @@ i32.div_u i32.sub i32.add - local.get $2 + local.get $3 i32.const 146097 i32.mul i32.add @@ -3151,105 +3151,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3281,41 +3291,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3715,14 +3727,14 @@ if local.get $1 i32.load16_u - local.tee $4 + local.tee $0 local.get $2 i32.load16_u - local.tee $0 + local.tee $4 i32.ne if - local.get $4 local.get $0 + local.get $4 i32.sub return end @@ -3791,7 +3803,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.eqz if i32.const 0 @@ -3803,7 +3815,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 i32.eqz if i32.const -1 @@ -3816,25 +3828,25 @@ i32.gt_s select local.tee $2 - local.get $4 + local.get $3 local.get $2 - local.get $4 + local.get $3 i32.lt_s select local.set $2 - local.get $4 local.get $3 + local.get $4 i32.sub - local.set $4 + local.set $3 loop $for-loop|0 local.get $2 - local.get $4 + local.get $3 i32.le_s if local.get $0 local.get $2 local.get $1 - local.get $3 + local.get $4 call $~lib/util/string/compareImpl i32.eqz if @@ -3862,10 +3874,10 @@ (local $10 i32) local.get $0 i32.load offset=12 - local.tee $7 + local.tee $8 i32.const 1 i32.add - local.tee $8 + local.tee $9 local.tee $2 local.get $0 i32.load offset=8 @@ -3909,15 +3921,15 @@ local.get $4 i32.lt_u select - local.tee $6 - local.tee $10 + local.tee $7 + local.tee $5 local.get $0 i32.load - local.tee $9 + local.tee $10 local.tee $2 i32.const 20 i32.sub - local.tee $5 + local.tee $6 i32.load i32.const -4 i32.and @@ -3925,23 +3937,23 @@ i32.sub i32.le_u if + local.get $6 local.get $5 - local.get $10 i32.store offset=16 br $__inlined_func$~lib/rt/itcms/__renew end - local.get $10 local.get $5 + local.get $6 i32.load offset=12 call $~lib/rt/itcms/__new local.tee $4 local.get $2 - local.get $10 local.get $5 + local.get $6 i32.load offset=16 local.tee $2 local.get $2 - local.get $10 + local.get $5 i32.gt_u select call $~lib/memory/memory.copy @@ -3951,12 +3963,12 @@ local.get $2 local.get $3 i32.add - local.get $6 + local.get $7 local.get $3 i32.sub call $~lib/memory/memory.fill local.get $2 - local.get $9 + local.get $10 i32.ne if local.get $0 @@ -3974,12 +3986,12 @@ end end local.get $0 - local.get $6 + local.get $7 i32.store offset=8 end local.get $0 i32.load offset=4 - local.get $7 + local.get $8 i32.const 2 i32.shl i32.add @@ -3993,7 +4005,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $8 + local.get $9 i32.store offset=12 ) (func $~lib/util/string/strtol (param $0 i32) (result i32) @@ -4002,13 +4014,14 @@ (local $3 i32) (local $4 i32) (local $5 i32) + (local $6 i32) local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $3 i32.eqz if i32.const 0 @@ -4016,28 +4029,28 @@ end local.get $0 i32.load16_u - local.set $1 + local.set $2 loop $while-continue|0 block $__inlined_func$~lib/util/string/isSpace (result i32) - local.get $1 - local.tee $3 + local.get $2 + local.tee $1 i32.const 128 i32.or i32.const 160 i32.eq - local.get $1 + local.get $2 i32.const 9 i32.sub i32.const 4 i32.le_u i32.or - local.get $1 + local.get $2 i32.const 5760 i32.lt_u br_if $__inlined_func$~lib/util/string/isSpace drop i32.const 1 - local.get $3 + local.get $1 i32.const -8192 i32.add i32.const 10 @@ -4046,31 +4059,31 @@ drop block $break|0 block $case6|0 - local.get $3 + local.get $1 i32.const 5760 i32.eq br_if $case6|0 - local.get $3 + local.get $1 i32.const 8232 i32.eq br_if $case6|0 - local.get $3 + local.get $1 i32.const 8233 i32.eq br_if $case6|0 - local.get $3 + local.get $1 i32.const 8239 i32.eq br_if $case6|0 - local.get $3 + local.get $1 i32.const 8287 i32.eq br_if $case6|0 - local.get $3 + local.get $1 i32.const 12288 i32.eq br_if $case6|0 - local.get $3 + local.get $1 i32.const 65279 i32.eq br_if $case6|0 @@ -4087,28 +4100,28 @@ i32.add local.tee $0 i32.load16_u - local.set $1 - local.get $2 + local.set $2 + local.get $3 i32.const 1 i32.sub - local.set $2 + local.set $3 br $while-continue|0 end end i32.const 1 - local.set $3 - local.get $1 + local.set $4 + local.get $2 i32.const 43 i32.eq - local.get $1 + local.get $2 i32.const 45 i32.eq i32.or if (result i32) - local.get $2 + local.get $3 i32.const 1 i32.sub - local.tee $2 + local.tee $3 i32.eqz if i32.const 0 @@ -4116,22 +4129,22 @@ end i32.const -1 i32.const 1 - local.get $1 + local.get $2 i32.const 45 i32.eq select - local.set $3 + local.set $4 local.get $0 i32.const 2 i32.add local.tee $0 i32.load16_u else - local.get $1 + local.get $2 end i32.const 48 i32.eq - local.get $2 + local.get $3 i32.const 2 i32.gt_s i32.and @@ -4161,50 +4174,50 @@ i32.const 4 i32.add local.set $0 - local.get $2 + local.get $3 i32.const 2 i32.sub - local.set $2 + local.set $3 i32.const 2 - local.set $4 + local.set $6 br $break|1 end local.get $0 i32.const 4 i32.add local.set $0 - local.get $2 + local.get $3 i32.const 2 i32.sub - local.set $2 + local.set $3 i32.const 8 - local.set $4 + local.set $6 br $break|1 end local.get $0 i32.const 4 i32.add local.set $0 - local.get $2 + local.get $3 i32.const 2 i32.sub - local.set $2 + local.set $3 i32.const 16 - local.set $4 + local.set $6 end end - local.get $4 + local.get $6 i32.const 10 - local.get $4 + local.get $6 select - local.set $4 + local.set $2 loop $while-continue|2 block $while-break|2 - local.get $2 + local.get $3 local.tee $1 i32.const 1 i32.sub - local.set $2 + local.set $3 local.get $1 if local.get $0 @@ -4242,7 +4255,7 @@ end end local.tee $1 - local.get $4 + local.get $2 i32.ge_u if local.get $5 @@ -4254,7 +4267,7 @@ br $while-break|2 end local.get $1 - local.get $4 + local.get $2 local.get $5 i32.mul i32.add @@ -4267,7 +4280,7 @@ end end end - local.get $3 + local.get $4 local.get $5 i32.mul ) @@ -4314,19 +4327,19 @@ i32.sub i32.load offset=16 i32.add - local.set $0 + local.set $2 loop $while-continue|0 - local.get $0 local.get $1 - i32.gt_u + local.get $2 + i32.lt_u if local.get $1 i32.load - local.tee $2 + local.tee $0 if - local.get $2 + local.get $0 if - local.get $2 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -4348,19 +4361,19 @@ i32.const 2 i32.shl i32.add - local.set $0 + local.set $3 loop $while-continue|01 - local.get $0 local.get $2 - i32.gt_u + local.get $3 + i32.lt_u if local.get $2 i32.load - local.tee $3 + local.tee $0 if - local.get $3 + local.get $0 if - local.get $3 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -4402,9 +4415,9 @@ ) (func $~lib/date/Date#toISOString (param $0 i32) (result i32) (local $1 i32) - (local $2 i64) + (local $2 i32) (local $3 i32) - (local $4 i32) + (local $4 i64) global.get $~lib/memory/__stack_pointer i32.const 112 i32.sub @@ -4468,19 +4481,19 @@ local.tee $1 i32.const 0 i32.lt_s - local.tee $3 + local.tee $2 local.get $1 i32.const 10000 i32.ge_s i32.or if global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i32.const 1616 i32.const 1648 - local.get $3 + local.get $2 select - local.tee $3 + local.tee $2 i32.store local.get $1 local.get $1 @@ -4505,8 +4518,8 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=4 - local.get $4 local.get $3 + local.get $2 local.get $1 call $~lib/string/String.__concat local.tee $1 @@ -4541,22 +4554,22 @@ local.get $0 i32.load offset=4 call $~lib/number/I32#toString - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=104 global.get $~lib/memory/__stack_pointer i32.const 1872 i32.store offset=108 - local.get $3 + local.get $2 i32.const 2 call $~lib/string/String#padStart - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=96 local.get $1 - local.get $3 + local.get $2 call $~lib/string/String.__concat local.set $1 global.get $~lib/memory/__stack_pointer @@ -4575,22 +4588,22 @@ local.get $0 i32.load offset=8 call $~lib/number/I32#toString - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=84 global.get $~lib/memory/__stack_pointer i32.const 1872 i32.store offset=92 - local.get $3 + local.get $2 i32.const 2 call $~lib/string/String#padStart - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=80 local.get $1 - local.get $3 + local.get $2 call $~lib/string/String.__concat local.set $1 global.get $~lib/memory/__stack_pointer @@ -4610,10 +4623,10 @@ i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $2 + local.tee $4 i64.const 86400000 i64.const 0 - local.get $2 + local.get $4 i64.const 0 i64.lt_s select @@ -4622,23 +4635,23 @@ i32.const 3600000 i32.div_s call $~lib/number/I32#toString - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $3 + local.get $2 i32.store offset=68 - local.get $4 + local.get $3 i32.const 1872 i32.store offset=76 - local.get $3 + local.get $2 i32.const 2 call $~lib/string/String#padStart - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=64 local.get $1 - local.get $3 + local.get $2 call $~lib/string/String.__concat local.set $1 global.get $~lib/memory/__stack_pointer @@ -4658,10 +4671,10 @@ i64.load offset=16 i64.const 3600000 i64.rem_s - local.tee $2 + local.tee $4 i64.const 3600000 i64.const 0 - local.get $2 + local.get $4 i64.const 0 i64.lt_s select @@ -4670,23 +4683,23 @@ i32.const 60000 i32.div_s call $~lib/number/I32#toString - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $3 + local.get $2 i32.store offset=52 - local.get $4 + local.get $3 i32.const 1872 i32.store offset=60 - local.get $3 + local.get $2 i32.const 2 call $~lib/string/String#padStart - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=48 local.get $1 - local.get $3 + local.get $2 call $~lib/string/String.__concat local.set $1 global.get $~lib/memory/__stack_pointer @@ -4706,10 +4719,10 @@ i64.load offset=16 i64.const 60000 i64.rem_s - local.tee $2 + local.tee $4 i64.const 60000 i64.const 0 - local.get $2 + local.get $4 i64.const 0 i64.lt_s select @@ -4718,23 +4731,23 @@ i32.const 1000 i32.div_s call $~lib/number/I32#toString - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $3 + local.get $2 i32.store offset=36 - local.get $4 + local.get $3 i32.const 1872 i32.store offset=44 - local.get $3 + local.get $2 i32.const 2 call $~lib/string/String#padStart - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=32 local.get $1 - local.get $3 + local.get $2 call $~lib/string/String.__concat local.set $1 global.get $~lib/memory/__stack_pointer @@ -4754,10 +4767,10 @@ i64.load offset=16 i64.const 1000 i64.rem_s - local.tee $2 + local.tee $4 i64.const 1000 i64.const 0 - local.get $2 + local.get $4 i64.const 0 i64.lt_s select @@ -4766,10 +4779,10 @@ call $~lib/number/I32#toString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 local.get $0 i32.store offset=12 - local.get $3 + local.get $2 i32.const 1872 i32.store offset=28 local.get $0 @@ -4805,7 +4818,6 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 44 i32.sub @@ -4854,43 +4866,43 @@ i32.const 48 i32.const 4 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $7 i32.const 4992 i32.const 48 call $~lib/memory/memory.copy - local.get $6 + local.get $7 i32.store offset=4 local.get $0 i32.load - local.tee $5 + local.tee $3 local.get $0 i32.load offset=4 - local.tee $8 + local.tee $6 i32.const 3 i32.lt_s i32.sub - local.tee $3 + local.tee $4 i32.const 0 i32.ge_s local.set $2 local.get $0 i32.load offset=8 - local.tee $7 - local.get $8 + local.tee $5 + local.get $6 i32.const 1579 i32.add i32.load8_u - local.get $3 - local.get $3 - local.get $3 + local.get $4 + local.get $4 + local.get $4 i32.const 3 i32.sub local.get $2 select i32.const 4 i32.div_s - local.get $3 - local.get $3 + local.get $4 + local.get $4 i32.const 99 i32.sub local.get $2 @@ -4898,8 +4910,8 @@ i32.const 100 i32.div_s i32.sub - local.get $3 - local.get $3 + local.get $4 + local.get $4 i32.const 399 i32.sub local.get $2 @@ -4922,8 +4934,8 @@ i32.add local.set $4 global.get $~lib/memory/__stack_pointer - local.get $5 - local.get $5 + local.get $3 + local.get $3 i32.const 31 i32.shr_s local.tee $0 @@ -4943,7 +4955,7 @@ call $~lib/string/String#padStart local.tee $0 i32.store offset=16 - local.get $5 + local.get $3 i32.const 0 i32.lt_s if @@ -4969,12 +4981,12 @@ local.tee $2 i32.store offset=32 local.get $3 - local.get $8 + local.get $6 i32.const 1 i32.sub i32.const 2 i32.shl - local.get $6 + local.get $7 i32.add i32.load local.tee $1 @@ -4986,7 +4998,7 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.store offset=24 - local.get $7 + local.get $5 call $~lib/number/I32#toString local.set $1 global.get $~lib/memory/__stack_pointer @@ -5028,9 +5040,9 @@ global.set $~lib/memory/__stack_pointer ) (func $~lib/date/Date#toTimeString (param $0 i32) (result i32) - (local $1 i64) + (local $1 i32) (local $2 i32) - (local $3 i32) + (local $3 i64) (local $4 i32) global.get $~lib/memory/__stack_pointer i32.const 40 @@ -5048,29 +5060,29 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i64.const 0 i64.store offset=8 - local.get $2 + local.get $1 i64.const 0 i64.store offset=16 - local.get $2 + local.get $1 i64.const 0 i64.store offset=24 - local.get $2 + local.get $1 i64.const 0 i64.store offset=32 local.get $0 i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 86400000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -5079,39 +5091,39 @@ i32.const 3600000 i32.div_s call $~lib/number/I32#toString - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $2 + local.tee $2 + local.get $1 i32.store offset=32 - local.get $3 + local.get $2 i32.const 1872 i32.store offset=36 - local.get $2 + local.get $1 i32.const 2 call $~lib/string/String#padStart - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=24 global.get $~lib/memory/__stack_pointer i32.const 3520 i32.store offset=28 - local.get $2 + local.get $1 i32.const 3520 call $~lib/string/String.__concat - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=16 local.get $0 i64.load offset=16 i64.const 3600000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 3600000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -5120,46 +5132,46 @@ i32.const 60000 i32.div_s call $~lib/number/I32#toString - local.set $4 + local.set $2 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $4 - i32.store offset=24 + local.tee $4 local.get $2 + i32.store offset=24 + local.get $4 i32.const 1872 i32.store offset=32 - local.get $4 + local.get $2 i32.const 2 call $~lib/string/String#padStart local.set $2 global.get $~lib/memory/__stack_pointer local.get $2 i32.store offset=20 - local.get $3 + local.get $1 local.get $2 call $~lib/string/String.__concat - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 3520 i32.store offset=12 - local.get $2 + local.get $1 i32.const 3520 call $~lib/string/String.__concat - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store local.get $0 i64.load offset=16 i64.const 60000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 60000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -5170,10 +5182,10 @@ call $~lib/number/I32#toString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 local.get $0 i32.store offset=8 - local.get $3 + local.get $2 i32.const 1872 i32.store offset=16 local.get $0 @@ -5183,7 +5195,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $2 + local.get $1 local.get $0 call $~lib/string/String.__concat global.get $~lib/memory/__stack_pointer @@ -5193,14 +5205,14 @@ ) (func $~lib/date/Date#toUTCString (param $0 i32) (result i32) (local $1 i32) - (local $2 i64) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) + (local $9 i64) global.get $~lib/memory/__stack_pointer i32.const 96 i32.sub @@ -5256,40 +5268,40 @@ i32.const 28 i32.const 4 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $4 i32.const 5616 i32.const 28 call $~lib/memory/memory.copy local.get $1 - local.get $7 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 48 i32.const 4 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $5 i32.const 6048 i32.const 48 call $~lib/memory/memory.copy - local.get $8 + local.get $5 i32.store offset=4 local.get $0 i32.load - local.tee $3 + local.tee $2 local.get $0 i32.load offset=4 - local.tee $4 + local.tee $6 i32.const 3 i32.lt_s i32.sub local.tee $1 i32.const 0 i32.ge_s - local.set $6 + local.set $3 local.get $0 i32.load offset=8 - local.tee $5 - local.get $4 + local.tee $7 + local.get $6 i32.const 1579 i32.add i32.load8_u @@ -5298,7 +5310,7 @@ local.get $1 i32.const 3 i32.sub - local.get $6 + local.get $3 select i32.const 4 i32.div_s @@ -5306,7 +5318,7 @@ local.get $1 i32.const 99 i32.sub - local.get $6 + local.get $3 select i32.const 100 i32.div_s @@ -5315,7 +5327,7 @@ local.get $1 i32.const 399 i32.sub - local.get $6 + local.get $3 select i32.const 400 i32.div_s @@ -5333,38 +5345,38 @@ i32.lt_s select i32.add - local.set $6 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.const 31 i32.shr_s - local.tee $9 + local.tee $1 i32.add - local.get $9 + local.get $1 i32.xor call $~lib/number/I32#toString - local.set $9 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 1872 i32.store offset=12 - local.get $9 + local.get $1 i32.const 4 call $~lib/string/String#padStart local.tee $1 i32.store offset=16 - local.get $3 + local.get $2 i32.const 0 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 1616 i32.store offset=8 - local.get $3 + local.get $2 i32.const 1616 local.get $1 call $~lib/string/String.__concat @@ -5372,56 +5384,56 @@ i32.store offset=16 end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $3 i32.const 2 i32.shl - local.get $7 + local.get $4 i32.add i32.load local.tee $3 i32.store offset=80 - local.get $5 + local.get $7 call $~lib/number/I32#toString - local.set $5 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $2 i32.store offset=88 global.get $~lib/memory/__stack_pointer i32.const 1872 i32.store offset=92 - local.get $5 + local.get $2 i32.const 2 call $~lib/string/String#padStart - local.set $5 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $2 i32.store offset=84 local.get $3 - local.get $5 + local.get $2 call $~lib/string/String.__concat - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=72 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.const 1 i32.sub i32.const 2 i32.shl - local.get $8 + local.get $5 i32.add i32.load - local.tee $4 + local.tee $3 i32.store offset=76 + local.get $2 local.get $3 - local.get $4 call $~lib/string/String.__concat - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=68 - local.get $3 + local.get $2 local.get $1 call $~lib/string/String.__concat local.set $1 @@ -5442,10 +5454,10 @@ i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $2 + local.tee $9 i64.const 86400000 i64.const 0 - local.get $2 + local.get $9 i64.const 0 i64.lt_s select @@ -5454,23 +5466,23 @@ i32.const 3600000 i32.div_s call $~lib/number/I32#toString - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $3 + local.get $2 i32.store offset=60 - local.get $4 + local.get $3 i32.const 1872 i32.store offset=68 - local.get $3 + local.get $2 i32.const 2 call $~lib/string/String#padStart - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=56 local.get $1 - local.get $3 + local.get $2 call $~lib/string/String.__concat local.set $1 global.get $~lib/memory/__stack_pointer @@ -5490,10 +5502,10 @@ i64.load offset=16 i64.const 3600000 i64.rem_s - local.tee $2 + local.tee $9 i64.const 3600000 i64.const 0 - local.get $2 + local.get $9 i64.const 0 i64.lt_s select @@ -5502,23 +5514,23 @@ i32.const 60000 i32.div_s call $~lib/number/I32#toString - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $3 + local.get $2 i32.store offset=44 - local.get $4 + local.get $3 i32.const 1872 i32.store offset=52 - local.get $3 + local.get $2 i32.const 2 call $~lib/string/String#padStart - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=40 local.get $1 - local.get $3 + local.get $2 call $~lib/string/String.__concat local.set $1 global.get $~lib/memory/__stack_pointer @@ -5538,10 +5550,10 @@ i64.load offset=16 i64.const 60000 i64.rem_s - local.tee $2 + local.tee $9 i64.const 60000 i64.const 0 - local.get $2 + local.get $9 i64.const 0 i64.lt_s select @@ -5552,10 +5564,10 @@ call $~lib/number/I32#toString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 local.get $0 i32.store offset=28 - local.get $3 + local.get $2 i32.const 1872 i32.store offset=36 local.get $0 @@ -5651,16 +5663,16 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.set $6 + local.set $4 local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $7 if - local.get $6 + local.get $4 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -5675,7 +5687,7 @@ br $folding-inner1 end else - local.get $6 + local.get $4 i32.eqz if i32.const 0 @@ -5684,56 +5696,56 @@ br $folding-inner1 end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.const 2147483647 - local.get $6 + local.get $4 i32.const 2147483647 i32.ne select - local.tee $2 + local.tee $4 call $~lib/rt/__newArray local.tee $1 i32.store local.get $1 i32.load offset=4 - local.set $4 + local.set $5 loop $for-loop|0 local.get $2 - local.get $3 - i32.gt_s + local.get $4 + i32.lt_s if global.get $~lib/memory/__stack_pointer i32.const 2 i32.const 1 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $3 i32.store offset=8 - local.get $5 local.get $3 + local.get $2 i32.const 1 i32.shl local.get $0 i32.add i32.load16_u i32.store16 - local.get $3 + local.get $2 i32.const 2 i32.shl - local.get $4 - i32.add local.get $5 + i32.add + local.get $3 i32.store - local.get $5 + local.get $3 if local.get $1 - local.get $5 + local.get $3 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 br $for-loop|0 end end @@ -5742,76 +5754,76 @@ global.get $~lib/memory/__stack_pointer i32.const 0 call $~lib/rt/__newArray - local.tee $7 + local.tee $2 i32.store offset=12 loop $while-continue|1 local.get $0 local.get $1 - local.get $2 + local.get $3 call $~lib/string/String#indexOf - local.tee $8 + local.tee $5 i32.const -1 i32.xor if - local.get $8 - local.get $2 + local.get $5 + local.get $3 i32.sub - local.tee $3 + local.tee $6 i32.const 0 i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $6 i32.const 1 i32.shl - local.tee $3 + local.tee $8 i32.const 1 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $6 i32.store offset=16 - local.get $9 - local.get $2 + local.get $6 + local.get $3 i32.const 1 i32.shl local.get $0 i32.add - local.get $3 + local.get $8 call $~lib/memory/memory.copy - local.get $7 - local.get $9 + local.get $2 + local.get $6 call $~lib/array/Array<~lib/string/String>#push else global.get $~lib/memory/__stack_pointer i32.const 3456 i32.store offset=20 - local.get $7 + local.get $2 i32.const 3456 call $~lib/array/Array<~lib/string/String>#push end - local.get $5 + local.get $9 i32.const 1 i32.add - local.tee $5 + local.tee $9 i32.const 2147483647 i32.eq br_if $folding-inner2 - local.get $4 - local.get $8 + local.get $5 + local.get $7 i32.add - local.set $2 + local.set $3 br $while-continue|1 end end - local.get $2 + local.get $3 i32.eqz if - local.get $7 + local.get $2 local.get $0 call $~lib/array/Array<~lib/string/String>#push br $folding-inner2 end - local.get $6 - local.get $2 + local.get $4 + local.get $3 i32.sub local.tee $1 i32.const 0 @@ -5821,27 +5833,27 @@ local.get $1 i32.const 1 i32.shl - local.tee $1 + local.tee $4 i32.const 1 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store offset=4 + local.get $1 local.get $3 - local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.get $1 + local.get $4 call $~lib/memory/memory.copy - local.get $7 - local.get $3 + local.get $2 + local.get $1 call $~lib/array/Array<~lib/string/String>#push else global.get $~lib/memory/__stack_pointer i32.const 3456 i32.store offset=20 - local.get $7 + local.get $2 i32.const 3456 call $~lib/array/Array<~lib/string/String>#push end @@ -5849,7 +5861,7 @@ i32.const 24 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $2 return end global.get $~lib/memory/__stack_pointer @@ -5870,7 +5882,7 @@ i32.const 24 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $2 ) (func $~lib/date/Date.fromString (param $0 i32) (result i32) (local $1 i32) @@ -5932,20 +5944,20 @@ i32.const 3488 i32.const 0 call $~lib/string/String#indexOf - local.tee $6 + local.tee $2 i32.const -1 i32.xor if global.get $~lib/memory/__stack_pointer local.get $0 i32.const 0 - local.get $6 + local.get $2 call $~lib/string/String#substring local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $0 - local.get $6 + local.get $2 i32.const 1 i32.add i32.const 2147483647 @@ -5963,7 +5975,7 @@ i32.store offset=12 local.get $0 i32.load offset=12 - local.tee $6 + local.tee $4 i32.const 1 i32.le_s if @@ -5977,24 +5989,24 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=16 - local.get $3 + local.get $2 call $~lib/util/string/strtol - local.set $3 + local.set $5 local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $4 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.store offset=16 - local.get $4 + local.get $2 call $~lib/util/string/strtol - local.set $4 - local.get $6 + local.set $6 + local.get $4 i32.const 3 i32.ge_s if @@ -6011,23 +6023,23 @@ i32.const 3552 i32.const 0 call $~lib/string/String#indexOf - local.tee $6 + local.tee $2 i32.const -1 i32.xor if local.get $0 i32.const 0 - local.get $6 + local.get $2 call $~lib/string/String#substring - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=16 - local.get $2 + local.get $3 call $~lib/util/string/strtol - local.set $2 + local.set $3 local.get $0 - local.get $6 + local.get $2 i32.const 1 i32.add i32.const 2147483647 @@ -6038,11 +6050,11 @@ i32.store offset=16 local.get $0 call $~lib/util/string/strtol - local.set $5 + local.set $7 else local.get $0 call $~lib/util/string/strtol - local.set $2 + local.set $3 end end end @@ -6054,26 +6066,26 @@ local.get $1 i32.const 1616 call $~lib/string/String#split - local.tee $6 + local.tee $0 i32.store offset=24 - local.get $6 + local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $0 + local.get $1 call $~lib/util/string/strtol i32.const 1 local.set $1 - local.get $6 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $4 i32.const 2 i32.ge_s if (result i32) - local.get $6 + local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get local.set $1 @@ -6083,11 +6095,11 @@ local.get $1 call $~lib/util/string/strtol local.set $1 - local.get $0 + local.get $4 i32.const 3 i32.ge_s if (result i32) - local.get $6 + local.get $0 i32.const 2 call $~lib/array/Array<~lib/string/String>#__get local.set $0 @@ -6105,10 +6117,10 @@ local.set $0 local.get $1 local.get $0 - local.get $3 - local.get $4 - local.get $2 local.get $5 + local.get $6 + local.get $3 + local.get $7 call $~lib/date/epochMillis call $~lib/date/Date#constructor global.get $~lib/memory/__stack_pointer @@ -6118,9 +6130,9 @@ ) (func $start:std/date (local $0 i32) - (local $1 i64) + (local $1 i32) (local $2 i32) - (local $3 i32) + (local $3 i64) (local $4 i32) global.get $~lib/memory/__stack_pointer i32.const 36 @@ -6162,15 +6174,15 @@ i32.const 0 i32.const 0 call $~lib/date/epochMillis - local.tee $1 + local.tee $3 i64.const -8640000000000000 i64.lt_s - local.get $1 + local.get $3 i64.const 8640000000000000 i64.gt_s i32.or br_if $folding-inner0 - local.get $1 + local.get $3 i64.eqz i32.eqz if @@ -6189,15 +6201,15 @@ i32.const 0 i32.const 0 call $~lib/date/epochMillis - local.tee $1 + local.tee $3 i64.const -8640000000000000 i64.lt_s - local.get $1 + local.get $3 i64.const 8640000000000000 i64.gt_s i32.or br_if $folding-inner0 - local.get $1 + local.get $3 i64.eqz i32.eqz if @@ -6216,15 +6228,15 @@ i32.const 0 i32.const 0 call $~lib/date/epochMillis - local.tee $1 + local.tee $3 i64.const -8640000000000000 i64.lt_s - local.get $1 + local.get $3 i64.const 8640000000000000 i64.gt_s i32.or br_if $folding-inner0 - local.get $1 + local.get $3 i64.eqz i32.eqz if @@ -6243,15 +6255,15 @@ i32.const 0 i32.const 0 call $~lib/date/epochMillis - local.tee $1 + local.tee $3 i64.const -8640000000000000 i64.lt_s - local.get $1 + local.get $3 i64.const 8640000000000000 i64.gt_s i32.or br_if $folding-inner0 - local.get $1 + local.get $3 i64.const 631152000000 i64.ne if @@ -6270,15 +6282,15 @@ i32.const 0 i32.const 0 call $~lib/date/epochMillis - local.tee $1 + local.tee $3 i64.const -8640000000000000 i64.lt_s - local.get $1 + local.get $3 i64.const 8640000000000000 i64.gt_s i32.or br_if $folding-inner0 - local.get $1 + local.get $3 i64.const -65007360000000 i64.ne if @@ -6297,15 +6309,15 @@ i32.const 0 i32.const 1 call $~lib/date/epochMillis - local.tee $1 + local.tee $3 i64.const -8640000000000000 i64.lt_s - local.get $1 + local.get $3 i64.const 8640000000000000 i64.gt_s i32.or br_if $folding-inner0 - local.get $1 + local.get $3 i64.const 1541847600001 i64.ne if @@ -6324,15 +6336,15 @@ i32.const 0 i32.const 0 call $~lib/date/epochMillis - local.tee $1 + local.tee $3 i64.const -8640000000000000 i64.lt_s - local.get $1 + local.get $3 i64.const 8640000000000000 i64.gt_s i32.or br_if $folding-inner0 - local.get $1 + local.get $3 i64.const 8640000000000000 i64.ne if @@ -6452,10 +6464,10 @@ i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 86400000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -6477,10 +6489,10 @@ i64.load offset=16 i64.const 3600000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 3600000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -6502,10 +6514,10 @@ i64.load offset=16 i64.const 60000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 60000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -6527,10 +6539,10 @@ i64.load offset=16 i64.const 1000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 1000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -6591,10 +6603,10 @@ i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 86400000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -6616,10 +6628,10 @@ i64.load offset=16 i64.const 3600000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 3600000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -6641,10 +6653,10 @@ i64.load offset=16 i64.const 60000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 60000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -6666,10 +6678,10 @@ i64.load offset=16 i64.const 1000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 1000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -6694,10 +6706,10 @@ i64.load offset=16 i64.const 1000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 1000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -6720,10 +6732,10 @@ i64.load offset=16 i64.const 1000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 1000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -6746,10 +6758,10 @@ i64.load offset=16 i64.const 1000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 1000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -6802,10 +6814,10 @@ i64.load offset=16 i64.const 1000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 1000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -6838,10 +6850,10 @@ i64.load offset=16 i64.const 1000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 1000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -6876,10 +6888,10 @@ i64.load offset=16 i64.const 60000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 60000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -6904,10 +6916,10 @@ i64.load offset=16 i64.const 60000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 60000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -6932,10 +6944,10 @@ i64.load offset=16 i64.const 60000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 60000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -6992,10 +7004,10 @@ i64.load offset=16 i64.const 3600000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 3600000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -7020,10 +7032,10 @@ i64.load offset=16 i64.const 3600000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 3600000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -7048,10 +7060,10 @@ i64.load offset=16 i64.const 3600000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 3600000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -7108,10 +7120,10 @@ i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 86400000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -7136,10 +7148,10 @@ i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 86400000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -7164,10 +7176,10 @@ i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 86400000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -7329,10 +7341,10 @@ i64.load offset=16 i64.const 3600000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 3600000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -7354,10 +7366,10 @@ i64.load offset=16 i64.const 60000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 60000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -7379,10 +7391,10 @@ i64.load offset=16 i64.const 1000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 1000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -7536,49 +7548,49 @@ global.get $~lib/memory/__stack_pointer i64.const 1467763200000 call $~lib/date/Date#constructor - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $0 + local.get $1 i32.load - local.get $0 + local.get $1 i32.load offset=4 - local.tee $2 + local.tee $4 i32.const 3 i32.lt_s i32.sub - local.tee $3 + local.tee $0 i32.const 0 i32.ge_s - local.set $4 - local.get $0 + local.set $2 + local.get $1 i32.load offset=8 - local.get $2 + local.get $4 i32.const 1579 i32.add i32.load8_u - local.get $3 - local.get $3 - local.get $3 + local.get $0 + local.get $0 + local.get $0 i32.const 3 i32.sub - local.get $4 + local.get $2 select i32.const 4 i32.div_s - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.const 99 i32.sub - local.get $4 + local.get $2 select i32.const 100 i32.div_s i32.sub - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.const 399 i32.sub - local.get $4 + local.get $2 select i32.const 400 i32.div_s @@ -7609,49 +7621,49 @@ global.get $~lib/memory/__stack_pointer i64.const 1467763199999 call $~lib/date/Date#constructor - local.tee $0 + local.tee $1 i32.store offset=8 - local.get $0 + local.get $1 i32.load - local.get $0 + local.get $1 i32.load offset=4 - local.tee $2 + local.tee $4 i32.const 3 i32.lt_s i32.sub - local.tee $3 + local.tee $0 i32.const 0 i32.ge_s - local.set $4 - local.get $0 + local.set $2 + local.get $1 i32.load offset=8 - local.get $2 + local.get $4 i32.const 1579 i32.add i32.load8_u - local.get $3 - local.get $3 - local.get $3 + local.get $0 + local.get $0 + local.get $0 i32.const 3 i32.sub - local.get $4 + local.get $2 select i32.const 4 i32.div_s - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.const 99 i32.sub - local.get $4 + local.get $2 select i32.const 100 i32.div_s i32.sub - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.const 399 i32.sub - local.get $4 + local.get $2 select i32.const 400 i32.div_s @@ -7682,49 +7694,49 @@ global.get $~lib/memory/__stack_pointer i64.const 1467849599999 call $~lib/date/Date#constructor - local.tee $0 + local.tee $1 i32.store offset=12 - local.get $0 + local.get $1 i32.load - local.get $0 + local.get $1 i32.load offset=4 - local.tee $2 + local.tee $4 i32.const 3 i32.lt_s i32.sub - local.tee $3 + local.tee $0 i32.const 0 i32.ge_s - local.set $4 - local.get $0 + local.set $2 + local.get $1 i32.load offset=8 - local.get $2 + local.get $4 i32.const 1579 i32.add i32.load8_u - local.get $3 - local.get $3 - local.get $3 + local.get $0 + local.get $0 + local.get $0 i32.const 3 i32.sub - local.get $4 + local.get $2 select i32.const 4 i32.div_s - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.const 99 i32.sub - local.get $4 + local.get $2 select i32.const 100 i32.div_s i32.sub - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.const 399 i32.sub - local.get $4 + local.get $2 select i32.const 400 i32.div_s @@ -7755,49 +7767,49 @@ global.get $~lib/memory/__stack_pointer i64.const 1467849600000 call $~lib/date/Date#constructor - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.load - local.get $0 + local.get $1 i32.load offset=4 - local.tee $2 + local.tee $4 i32.const 3 i32.lt_s i32.sub - local.tee $3 + local.tee $0 i32.const 0 i32.ge_s - local.set $4 - local.get $0 + local.set $2 + local.get $1 i32.load offset=8 - local.get $2 + local.get $4 i32.const 1579 i32.add i32.load8_u - local.get $3 - local.get $3 - local.get $3 + local.get $0 + local.get $0 + local.get $0 i32.const 3 i32.sub - local.get $4 + local.get $2 select i32.const 4 i32.div_s - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.const 99 i32.sub - local.get $4 + local.get $2 select i32.const 100 i32.div_s i32.sub - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.const 399 i32.sub - local.get $4 + local.get $2 select i32.const 400 i32.div_s @@ -7828,49 +7840,49 @@ global.get $~lib/memory/__stack_pointer i64.const 1468022400000 call $~lib/date/Date#constructor - local.tee $0 + local.tee $1 i32.store offset=20 - local.get $0 + local.get $1 i32.load - local.get $0 + local.get $1 i32.load offset=4 - local.tee $2 + local.tee $4 i32.const 3 i32.lt_s i32.sub - local.tee $3 + local.tee $0 i32.const 0 i32.ge_s - local.set $4 - local.get $0 + local.set $2 + local.get $1 i32.load offset=8 - local.get $2 + local.get $4 i32.const 1579 i32.add i32.load8_u - local.get $3 - local.get $3 - local.get $3 + local.get $0 + local.get $0 + local.get $0 i32.const 3 i32.sub - local.get $4 + local.get $2 select i32.const 4 i32.div_s - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.const 99 i32.sub - local.get $4 + local.get $2 select i32.const 100 i32.div_s i32.sub - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.const 399 i32.sub - local.get $4 + local.get $2 select i32.const 400 i32.div_s @@ -7901,49 +7913,49 @@ global.get $~lib/memory/__stack_pointer i64.const 1468022399999 call $~lib/date/Date#constructor - local.tee $0 + local.tee $1 i32.store offset=24 - local.get $0 + local.get $1 i32.load - local.get $0 + local.get $1 i32.load offset=4 - local.tee $2 + local.tee $4 i32.const 3 i32.lt_s i32.sub - local.tee $3 + local.tee $0 i32.const 0 i32.ge_s - local.set $4 - local.get $0 + local.set $2 + local.get $1 i32.load offset=8 - local.get $2 + local.get $4 i32.const 1579 i32.add i32.load8_u - local.get $3 - local.get $3 - local.get $3 + local.get $0 + local.get $0 + local.get $0 i32.const 3 i32.sub - local.get $4 + local.get $2 select i32.const 4 i32.div_s - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.const 99 i32.sub - local.get $4 + local.get $2 select i32.const 100 i32.div_s i32.sub - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.const 399 i32.sub - local.get $4 + local.get $2 select i32.const 400 i32.div_s @@ -7974,49 +7986,49 @@ global.get $~lib/memory/__stack_pointer i64.const 1468108799999 call $~lib/date/Date#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load - local.get $0 + local.get $1 i32.load offset=4 - local.tee $2 + local.tee $4 i32.const 3 i32.lt_s i32.sub - local.tee $3 + local.tee $0 i32.const 0 i32.ge_s - local.set $4 - local.get $0 + local.set $2 + local.get $1 i32.load offset=8 - local.get $2 + local.get $4 i32.const 1579 i32.add i32.load8_u - local.get $3 - local.get $3 - local.get $3 + local.get $0 + local.get $0 + local.get $0 i32.const 3 i32.sub - local.get $4 + local.get $2 select i32.const 4 i32.div_s - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.const 99 i32.sub - local.get $4 + local.get $2 select i32.const 100 i32.div_s i32.sub - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.const 399 i32.sub - local.get $4 + local.get $2 select i32.const 400 i32.div_s @@ -8047,49 +8059,49 @@ global.get $~lib/memory/__stack_pointer i64.const 1468108800000 call $~lib/date/Date#constructor - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $0 + local.get $1 i32.load - local.get $0 + local.get $1 i32.load offset=4 - local.tee $2 + local.tee $4 i32.const 3 i32.lt_s i32.sub - local.tee $3 + local.tee $0 i32.const 0 i32.ge_s - local.set $4 - local.get $0 + local.set $2 + local.get $1 i32.load offset=8 - local.get $2 + local.get $4 i32.const 1579 i32.add i32.load8_u - local.get $3 - local.get $3 - local.get $3 + local.get $0 + local.get $0 + local.get $0 i32.const 3 i32.sub - local.get $4 + local.get $2 select i32.const 4 i32.div_s - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.const 99 i32.sub - local.get $4 + local.get $2 select i32.const 100 i32.div_s i32.sub - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.const 399 i32.sub - local.get $4 + local.get $2 select i32.const 400 i32.div_s @@ -9007,7 +9019,7 @@ global.get $~lib/memory/__stack_pointer i64.const 8640000000000000 call $~lib/date/Date#constructor - local.tee $2 + local.tee $1 i32.store local.get $0 i64.load offset=16 @@ -9021,7 +9033,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i64.load offset=16 i64.const 8640000000000000 i64.ne @@ -9045,7 +9057,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.load i32.const 275760 i32.ne @@ -9069,7 +9081,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.load offset=4 i32.const 9 i32.ne @@ -9093,7 +9105,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.load offset=8 i32.const 13 i32.ne @@ -9109,10 +9121,10 @@ call $~lib/date/Date#toISOString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 local.get $0 i32.store offset=28 - local.get $3 + local.get $2 i32.const 7200 i32.store offset=32 local.get $0 @@ -9127,14 +9139,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 call $~lib/date/Date#toISOString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 local.get $0 i32.store offset=28 - local.get $2 + local.get $1 i32.const 7280 i32.store offset=32 local.get $0 @@ -9152,14 +9164,14 @@ global.get $~lib/memory/__stack_pointer i64.const 8639999999999999 call $~lib/date/Date#constructor - local.tee $0 + local.tee $1 i32.store offset=16 global.get $~lib/memory/__stack_pointer i64.const -8639999999999999 call $~lib/date/Date#constructor - local.tee $2 + local.tee $0 i32.store offset=12 - local.get $2 + local.get $0 i32.load i32.const -271821 i32.ne @@ -9171,7 +9183,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.load offset=4 i32.const 4 i32.ne @@ -9183,7 +9195,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.load offset=8 i32.const 20 i32.ne @@ -9195,14 +9207,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 86400000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -9218,14 +9230,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i64.load offset=16 i64.const 3600000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 3600000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -9241,14 +9253,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i64.load offset=16 i64.const 60000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 60000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -9264,14 +9276,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i64.load offset=16 i64.const 1000 i64.rem_s - local.tee $1 + local.tee $3 i64.const 1000 i64.const 0 - local.get $1 + local.get $3 i64.const 0 i64.lt_s select @@ -9287,17 +9299,17 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 call $~lib/date/Date#toISOString - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $0 + local.tee $2 + local.get $1 i32.store offset=28 - local.get $3 + local.get $2 i32.const 7360 i32.store offset=32 - local.get $0 + local.get $1 i32.const 7360 call $~lib/string/String.__eq i32.eqz @@ -9309,14 +9321,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 call $~lib/date/Date#toISOString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 local.get $0 i32.store offset=28 - local.get $2 + local.get $1 i32.const 7440 i32.store offset=32 local.get $0 @@ -9573,51 +9585,51 @@ i32.const 0 i32.gt_s select - local.tee $1 + local.tee $3 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $1 local.get $1 local.get $3 - i32.lt_s + i32.gt_s select - local.tee $4 + local.tee $3 local.get $2 i32.const 0 local.get $2 i32.const 0 i32.gt_s select - local.tee $1 - local.get $3 + local.tee $2 local.get $1 - local.get $3 - i32.lt_s + local.get $1 + local.get $2 + i32.gt_s select local.tee $2 local.get $2 - local.get $4 + local.get $3 i32.gt_s select i32.const 1 i32.shl - local.set $1 - local.get $4 + local.set $4 + local.get $3 local.get $2 local.get $2 - local.get $4 + local.get $3 i32.lt_s select i32.const 1 i32.shl - local.tee $2 - local.get $1 + local.tee $3 + local.get $4 i32.sub - local.tee $4 + local.tee $2 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -9628,12 +9640,12 @@ return end i32.const 0 - local.get $3 + local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $3 i32.eq - local.get $1 + local.get $4 select if global.get $~lib/memory/__stack_pointer @@ -9644,22 +9656,22 @@ return end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 - local.get $0 local.get $1 - i32.add + local.get $0 local.get $4 + i32.add + local.get $2 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 ) (func $~lib/rt/__newArray (param $0 i32) (result i32) (local $1 i32) @@ -9688,38 +9700,38 @@ local.get $0 i32.const 2 i32.shl - local.tee $2 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store i32.const 16 i32.const 5 call $~lib/rt/itcms/__new - local.tee $3 - local.get $1 + local.tee $1 + local.get $2 i32.store - local.get $1 + local.get $2 if - local.get $3 local.get $1 + local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 local.get $1 + local.get $2 i32.store offset=4 + local.get $1 local.get $3 - local.get $2 i32.store offset=8 - local.get $3 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 ) (func $~lib/array/Array<~lib/string/String>#__get (param $0 i32) (param $1 i32) (result i32) global.get $~lib/memory/__stack_pointer @@ -9822,16 +9834,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $0 i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $0 local.get $1 local.get $2 select @@ -9840,7 +9852,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $3 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/map.optimized.wat b/tests/compiler/std/map.optimized.wat index cf2b5dd196..617acc088c 100644 --- a/tests/compiler/std/map.optimized.wat +++ b/tests/compiler/std/map.optimized.wat @@ -133,7 +133,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -156,7 +156,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -166,23 +166,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -190,7 +190,7 @@ else i32.const 1760 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1248 @@ -200,7 +200,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 1764 @@ -215,27 +215,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -323,19 +323,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -360,9 +360,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -370,17 +370,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -668,10 +668,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -683,15 +683,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -721,7 +721,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -757,12 +757,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -780,11 +780,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 18416 @@ -792,14 +792,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -809,17 +809,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1297,14 +1297,14 @@ i32.sub i32.const -4 i32.and - local.tee $1 - i32.add local.tee $2 + i32.add + local.tee $1 i32.const 4 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1314,17 +1314,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 12 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1340,22 +1340,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $2 + local.get $1 i32.const 28 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 20 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 16 i32.sub i32.const 0 @@ -1366,11 +1366,11 @@ i32.and i32.const 24 i32.add - local.tee $2 + local.tee $1 i32.add local.set $0 - local.get $1 local.get $2 + local.get $1 i32.sub local.set $1 loop $while-continue|0 @@ -1475,7 +1475,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1501,32 +1501,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1542,16 +1542,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1559,7 +1559,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1567,8 +1567,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1585,7 +1585,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1595,13 +1595,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1614,40 +1614,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -1673,26 +1673,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2418,105 +2418,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 + local.get $0 + i32.const 2 + i32.add + local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2548,41 +2558,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3448,40 +3460,40 @@ i32.const 24 i32.const 3 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $16 i32.store - local.get $11 + local.get $16 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $3 i32.store local.get $3 if - local.get $11 + local.get $16 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $16 i32.const 3 i32.store offset=4 - local.get $11 + local.get $16 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $3 i32.store offset=8 local.get $3 if - local.get $11 + local.get $16 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $16 i32.const 4 i32.store offset=12 - local.get $11 + local.get $16 i32.const 0 i32.store offset=16 - local.get $11 + local.get $16 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer @@ -3489,7 +3501,7 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $11 + local.get $16 i32.store loop $for-loop|1 local.get $4 @@ -3497,9 +3509,9 @@ i32.const 100 i32.lt_s if - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $4 i32.extend8_s @@ -3575,7 +3587,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $4 local.get $4 i32.extend8_s @@ -3583,9 +3595,9 @@ i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $2 i32.const -1028477379 @@ -3661,7 +3673,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $4 call $~lib/map/Map#get local.get $4 @@ -3684,7 +3696,7 @@ br $for-loop|1 end end - local.get $11 + local.get $16 i32.load offset=20 i32.const 100 i32.ne @@ -3704,9 +3716,9 @@ i32.const 100 i32.lt_s if - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $4 i32.extend8_s @@ -3783,7 +3795,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $4 call $~lib/map/Map#get local.get $4 @@ -3799,7 +3811,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $4 local.get $4 i32.extend8_s @@ -3807,9 +3819,9 @@ i32.const 20 i32.add call $~lib/map/Map#set - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $2 i32.const -1028477379 @@ -3885,7 +3897,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $4 call $~lib/map/Map#get local.get $4 @@ -3908,7 +3920,7 @@ br $for-loop|3 end end - local.get $11 + local.get $16 i32.load offset=20 i32.const 100 i32.ne @@ -3934,13 +3946,13 @@ local.tee $2 i32.const 0 i32.store - local.get $11 + local.get $16 i32.load offset=8 - local.set $8 - local.get $11 + local.set $5 + local.get $16 i32.load offset=16 - local.tee $7 - local.set $6 + local.tee $4 + local.set $9 local.get $2 i32.const 8 i32.sub @@ -3957,21 +3969,21 @@ i32.const 16 i32.const 4 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $3 i32.store - local.get $4 + local.get $3 i32.const 0 i32.store - local.get $4 + local.get $3 i32.const 0 i32.store offset=4 - local.get $4 + local.get $3 i32.const 0 i32.store offset=8 - local.get $4 + local.get $3 i32.const 0 i32.store offset=12 - local.get $6 + local.get $9 i32.const 1073741820 i32.gt_u if @@ -3983,54 +3995,54 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $9 i32.const 8 - local.get $6 + local.get $9 i32.const 8 i32.gt_u select - local.tee $5 + local.tee $7 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $10 i32.store offset=4 - local.get $3 - local.get $5 + local.get $10 + local.get $7 call $~lib/memory/memory.fill - local.get $4 local.get $3 + local.get $10 i32.store - local.get $3 + local.get $10 if - local.get $4 local.get $3 + local.get $10 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 local.get $3 + local.get $10 i32.store offset=4 - local.get $4 - local.get $5 + local.get $3 + local.get $7 i32.store offset=8 - local.get $4 - local.get $6 + local.get $3 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $4 + local.get $3 i32.store loop $for-loop|0 - local.get $7 - local.get $10 + local.get $4 + local.get $8 i32.gt_s if - local.get $10 + local.get $8 i32.const 12 i32.mul - local.get $8 + local.get $5 i32.add local.tee $2 i32.load offset=8 @@ -4038,7 +4050,7 @@ i32.and i32.eqz if - local.get $4 + local.get $3 local.get $1 local.get $2 i32.load8_s @@ -4048,31 +4060,32 @@ i32.add local.set $1 end - local.get $10 + local.get $8 i32.const 1 i32.add - local.set $10 + local.set $8 br $for-loop|0 end end - local.get $4 + local.get $3 local.get $1 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $4 + local.get $3 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $3 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $16 call $~lib/map/Map#values - local.tee $15 + local.tee $9 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -4091,61 +4104,61 @@ i32.const 24 i32.const 6 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $15 i32.store - local.get $10 + local.get $15 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store local.get $1 if - local.get $10 + local.get $15 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $15 i32.const 3 i32.store offset=4 - local.get $10 + local.get $15 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=8 local.get $1 if - local.get $10 + local.get $15 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $15 i32.const 4 i32.store offset=12 - local.get $10 + local.get $15 i32.const 0 i32.store offset=16 - local.get $10 + local.get $15 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $15 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $9 + local.tee $11 i32.store offset=16 loop $for-loop|4 - local.get $4 + local.get $2 i32.load offset=12 local.get $0 i32.gt_s if local.get $0 - local.tee $3 - local.get $4 + local.tee $1 + local.get $2 i32.load offset=12 i32.ge_u if @@ -4156,21 +4169,21 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $4 + local.get $1 + local.get $2 i32.load offset=4 i32.add i32.load8_s - local.set $2 - local.get $15 - local.get $3 + local.set $0 + local.get $9 + local.get $1 call $~lib/array/Array#__get - local.set $8 - local.get $11 + local.set $10 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 - local.get $2 + local.get $0 i32.extend8_s i32.const -1028477379 i32.mul @@ -4180,24 +4193,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $3 i32.const 15 i32.shr_u - local.get $0 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $3 i32.const 13 i32.shr_u - local.get $0 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $3 i32.const 16 i32.shr_u - local.get $0 + local.get $3 i32.xor i32.and i32.const 2 @@ -4211,7 +4224,7 @@ if local.get $5 i32.load offset=8 - local.tee $0 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -4219,13 +4232,13 @@ else local.get $5 i32.load8_u - local.get $2 + local.get $0 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $0 + local.get $3 i32.const -2 i32.and local.set $5 @@ -4245,14 +4258,14 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 - local.get $8 + local.get $10 i32.const 20 i32.sub - local.tee $1 + local.tee $4 i32.extend8_s i32.const -1028477379 i32.mul @@ -4262,24 +4275,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $3 i32.const 15 i32.shr_u - local.get $0 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $3 i32.const 13 i32.shr_u - local.get $0 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $3 i32.const 16 i32.shr_u - local.get $0 + local.get $3 i32.xor i32.and i32.const 2 @@ -4293,7 +4306,7 @@ if local.get $5 i32.load offset=8 - local.tee $0 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -4301,13 +4314,13 @@ else local.get $5 i32.load8_u - local.get $1 + local.get $4 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $0 + local.get $3 i32.const -2 i32.and local.set $5 @@ -4338,9 +4351,10 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $10 + local.get $15 i32.load - local.get $2 + local.get $0 + local.tee $4 i32.extend8_s i32.const -1028477379 i32.mul @@ -4369,8 +4383,8 @@ i32.shr_u local.get $0 i32.xor - local.tee $14 - local.get $10 + local.tee $8 + local.get $15 i32.load offset=4 i32.and i32.const 2 @@ -4384,7 +4398,7 @@ if local.get $0 i32.load offset=4 - local.tee $1 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -4392,13 +4406,13 @@ else local.get $0 i32.load8_u - local.get $2 + local.get $4 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $1 + local.get $3 i32.const -2 i32.and local.set $0 @@ -4411,18 +4425,18 @@ local.get $0 if local.get $0 - local.get $2 + local.get $4 i32.store8 offset=1 else - local.get $10 + local.get $15 i32.load offset=16 - local.get $10 + local.get $15 i32.load offset=12 i32.eq if - local.get $10 + local.get $15 i32.load offset=20 - local.get $10 + local.get $15 i32.load offset=12 i32.const 3 i32.mul @@ -4430,17 +4444,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $10 + local.get $15 i32.load offset=4 else - local.get $10 + local.get $15 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $7 + local.set $12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -4454,14 +4468,14 @@ i64.const 0 i64.store local.get $0 - local.get $7 + local.get $12 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $13 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -4469,41 +4483,41 @@ i32.shl i32.const 3 i32.div_s - local.tee $13 + local.tee $7 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $3 i32.store offset=4 - local.get $10 + local.get $15 i32.load offset=8 - local.tee $16 - local.get $10 + local.tee $14 + local.get $15 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $12 - local.get $1 + local.set $6 + local.get $3 local.set $0 loop $while-continue|016 - local.get $12 - local.get $16 + local.get $6 + local.get $14 i32.ne if - local.get $16 + local.get $14 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $16 + local.get $14 i32.load8_s local.tee $5 i32.store8 local.get $0 - local.get $16 + local.get $14 i32.load8_s offset=1 i32.store8 offset=1 local.get $0 @@ -4536,11 +4550,11 @@ i32.shr_u local.get $5 i32.xor - local.get $7 + local.get $12 i32.and i32.const 2 i32.shl - local.get $6 + local.get $13 i32.add local.tee $5 i32.load @@ -4553,39 +4567,39 @@ i32.add local.set $0 end - local.get $16 + local.get $14 i32.const 8 i32.add - local.set $16 + local.set $14 br $while-continue|016 end end - local.get $10 - local.get $6 + local.get $15 + local.get $13 i32.store - local.get $6 + local.get $13 if - local.get $10 - local.get $6 + local.get $15 + local.get $13 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $7 + local.get $15 + local.get $12 i32.store offset=4 - local.get $10 - local.get $1 + local.get $15 + local.get $3 i32.store offset=8 - local.get $1 + local.get $3 if - local.get $10 - local.get $1 + local.get $15 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $13 + local.get $15 + local.get $7 i32.store offset=12 - local.get $10 - local.get $10 + local.get $15 + local.get $15 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -4594,12 +4608,12 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $15 i32.load offset=8 - local.tee $1 + local.tee $3 i32.store - local.get $10 - local.get $10 + local.get $15 + local.get $15 i32.load offset=16 local.tee $0 i32.const 1 @@ -4608,26 +4622,26 @@ local.get $0 i32.const 3 i32.shl - local.get $1 + local.get $3 i32.add - local.tee $1 - local.get $2 + local.tee $3 + local.get $4 i32.store8 - local.get $1 - local.get $2 + local.get $3 + local.get $4 i32.store8 offset=1 - local.get $10 - local.get $10 + local.get $15 + local.get $15 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $1 - local.get $10 + local.get $3 + local.get $15 i32.load - local.get $10 + local.get $15 i32.load offset=4 - local.get $14 + local.get $8 i32.and i32.const 2 i32.shl @@ -4636,28 +4650,28 @@ i32.load i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 - local.get $8 + local.get $11 + local.get $10 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $3 + local.get $1 i32.const 1 i32.add local.set $0 br $for-loop|4 end end - local.get $10 + local.get $15 i32.load offset=20 i32.const 100 i32.ne @@ -4669,7 +4683,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -4689,9 +4703,9 @@ i32.const 50 i32.lt_s if - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $0 i32.extend8_s @@ -4768,7 +4782,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $0 call $~lib/map/Map#get local.get $0 @@ -4784,12 +4798,12 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $0 call $~lib/map/Map#delete - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $0 i32.extend8_s @@ -4872,7 +4886,7 @@ br $for-loop|6 end end - local.get $11 + local.get $16 i32.load offset=20 i32.const 50 i32.ne @@ -4892,9 +4906,9 @@ i32.const 50 i32.lt_s if - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $0 i32.extend8_s @@ -4970,7 +4984,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $0 local.get $0 i32.extend8_s @@ -4978,9 +4992,9 @@ i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -5056,12 +5070,12 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $0 call $~lib/map/Map#delete - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $0 i32.extend8_s @@ -5144,7 +5158,7 @@ br $for-loop|8 end end - local.get $11 + local.get $16 i32.load offset=20 i32.const 50 i32.ne @@ -5156,9 +5170,9 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 call $~lib/map/Map#clear - local.get $11 + local.get $16 i32.load offset=20 if i32.const 0 @@ -5611,40 +5625,40 @@ i32.const 24 i32.const 8 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $16 i32.store - local.get $11 + local.get $16 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $3 i32.store local.get $3 if - local.get $11 + local.get $16 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $16 i32.const 3 i32.store offset=4 - local.get $11 + local.get $16 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $3 i32.store offset=8 local.get $3 if - local.get $11 + local.get $16 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $16 i32.const 4 i32.store offset=12 - local.get $11 + local.get $16 i32.const 0 i32.store offset=16 - local.get $11 + local.get $16 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer @@ -5652,7 +5666,7 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $11 + local.get $16 i32.store loop $for-loop|1 local.get $4 @@ -5661,9 +5675,9 @@ i32.const 100 i32.lt_u if - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $4 i32.const 255 @@ -5740,7 +5754,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $4 local.get $4 i32.const 255 @@ -5749,9 +5763,9 @@ i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $2 i32.const -1028477379 @@ -5827,7 +5841,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $4 call $~lib/map/Map#get local.get $4 @@ -5851,7 +5865,7 @@ br $for-loop|1 end end - local.get $11 + local.get $16 i32.load offset=20 i32.const 100 i32.ne @@ -5872,9 +5886,9 @@ i32.const 100 i32.lt_u if - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $4 i32.const 255 @@ -5952,7 +5966,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $4 call $~lib/map/Map#get local.get $4 @@ -5969,7 +5983,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $4 local.get $4 i32.const 255 @@ -5978,9 +5992,9 @@ i32.const 20 i32.add call $~lib/map/Map#set - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $2 i32.const -1028477379 @@ -6056,7 +6070,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $4 call $~lib/map/Map#get local.get $4 @@ -6080,7 +6094,7 @@ br $for-loop|3 end end - local.get $11 + local.get $16 i32.load offset=20 i32.const 100 i32.ne @@ -6106,13 +6120,13 @@ local.tee $2 i32.const 0 i32.store - local.get $11 + local.get $16 i32.load offset=8 - local.set $8 - local.get $11 + local.set $5 + local.get $16 i32.load offset=16 - local.tee $7 - local.set $6 + local.tee $4 + local.set $9 local.get $2 i32.const 8 i32.sub @@ -6129,21 +6143,21 @@ i32.const 16 i32.const 9 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $3 i32.store - local.get $4 + local.get $3 i32.const 0 i32.store - local.get $4 + local.get $3 i32.const 0 i32.store offset=4 - local.get $4 + local.get $3 i32.const 0 i32.store offset=8 - local.get $4 + local.get $3 i32.const 0 i32.store offset=12 - local.get $6 + local.get $9 i32.const 1073741820 i32.gt_u if @@ -6155,54 +6169,54 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $9 i32.const 8 - local.get $6 + local.get $9 i32.const 8 i32.gt_u select - local.tee $5 + local.tee $7 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $10 i32.store offset=4 - local.get $3 - local.get $5 + local.get $10 + local.get $7 call $~lib/memory/memory.fill - local.get $4 local.get $3 + local.get $10 i32.store - local.get $3 + local.get $10 if - local.get $4 local.get $3 + local.get $10 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 local.get $3 + local.get $10 i32.store offset=4 - local.get $4 - local.get $5 + local.get $3 + local.get $7 i32.store offset=8 - local.get $4 - local.get $6 + local.get $3 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $4 + local.get $3 i32.store loop $for-loop|0 - local.get $7 - local.get $10 + local.get $4 + local.get $8 i32.gt_s if - local.get $10 + local.get $8 i32.const 12 i32.mul - local.get $8 + local.get $5 i32.add local.tee $2 i32.load offset=8 @@ -6210,7 +6224,7 @@ i32.and i32.eqz if - local.get $4 + local.get $3 local.get $1 local.get $2 i32.load8_u @@ -6220,31 +6234,32 @@ i32.add local.set $1 end - local.get $10 + local.get $8 i32.const 1 i32.add - local.set $10 + local.set $8 br $for-loop|0 end end - local.get $4 + local.get $3 local.get $1 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $4 + local.get $3 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $3 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $16 call $~lib/map/Map#values - local.tee $15 + local.tee $9 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -6263,61 +6278,61 @@ i32.const 24 i32.const 10 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $15 i32.store - local.get $10 + local.get $15 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store local.get $1 if - local.get $10 + local.get $15 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $15 i32.const 3 i32.store offset=4 - local.get $10 + local.get $15 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=8 local.get $1 if - local.get $10 + local.get $15 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $15 i32.const 4 i32.store offset=12 - local.get $10 + local.get $15 i32.const 0 i32.store offset=16 - local.get $10 + local.get $15 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $15 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $9 + local.tee $11 i32.store offset=16 loop $for-loop|4 - local.get $4 + local.get $2 i32.load offset=12 local.get $0 i32.gt_s if local.get $0 - local.tee $3 - local.get $4 + local.tee $1 + local.get $2 i32.load offset=12 i32.ge_u if @@ -6328,21 +6343,21 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $4 + local.get $1 + local.get $2 i32.load offset=4 i32.add i32.load8_u - local.set $2 - local.get $15 - local.get $3 + local.set $0 + local.get $9 + local.get $1 call $~lib/array/Array#__get - local.set $8 - local.get $11 + local.set $10 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 - local.get $2 + local.get $0 i32.const -1028477379 i32.mul i32.const 374761394 @@ -6351,24 +6366,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $3 i32.const 15 i32.shr_u - local.get $0 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $3 i32.const 13 i32.shr_u - local.get $0 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $3 i32.const 16 i32.shr_u - local.get $0 + local.get $3 i32.xor i32.and i32.const 2 @@ -6382,7 +6397,7 @@ if local.get $5 i32.load offset=8 - local.tee $0 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -6390,13 +6405,13 @@ else local.get $5 i32.load8_u - local.get $2 + local.get $0 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $0 + local.get $3 i32.const -2 i32.and local.set $5 @@ -6416,14 +6431,14 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 - local.get $8 + local.get $10 i32.const 20 i32.sub - local.tee $1 + local.tee $4 i32.const 255 i32.and i32.const -1028477379 @@ -6434,24 +6449,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $3 i32.const 15 i32.shr_u - local.get $0 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $3 i32.const 13 i32.shr_u - local.get $0 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $3 i32.const 16 i32.shr_u - local.get $0 + local.get $3 i32.xor i32.and i32.const 2 @@ -6465,7 +6480,7 @@ if local.get $5 i32.load offset=8 - local.tee $0 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -6473,13 +6488,13 @@ else local.get $5 i32.load8_u - local.get $1 + local.get $4 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $0 + local.get $3 i32.const -2 i32.and local.set $5 @@ -6510,9 +6525,10 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $10 + local.get $15 i32.load - local.get $2 + local.get $0 + local.tee $4 i32.const -1028477379 i32.mul i32.const 374761394 @@ -6540,8 +6556,8 @@ i32.shr_u local.get $0 i32.xor - local.tee $14 - local.get $10 + local.tee $8 + local.get $15 i32.load offset=4 i32.and i32.const 2 @@ -6555,7 +6571,7 @@ if local.get $0 i32.load offset=4 - local.tee $1 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -6563,13 +6579,13 @@ else local.get $0 i32.load8_u - local.get $2 + local.get $4 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $1 + local.get $3 i32.const -2 i32.and local.set $0 @@ -6582,18 +6598,18 @@ local.get $0 if local.get $0 - local.get $2 + local.get $4 i32.store8 offset=1 else - local.get $10 + local.get $15 i32.load offset=16 - local.get $10 + local.get $15 i32.load offset=12 i32.eq if - local.get $10 + local.get $15 i32.load offset=20 - local.get $10 + local.get $15 i32.load offset=12 i32.const 3 i32.mul @@ -6601,17 +6617,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $10 + local.get $15 i32.load offset=4 else - local.get $10 + local.get $15 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $7 + local.set $12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -6625,14 +6641,14 @@ i64.const 0 i64.store local.get $0 - local.get $7 + local.get $12 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $13 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -6640,41 +6656,41 @@ i32.shl i32.const 3 i32.div_s - local.tee $13 + local.tee $7 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $3 i32.store offset=4 - local.get $10 + local.get $15 i32.load offset=8 - local.tee $16 - local.get $10 + local.tee $14 + local.get $15 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $12 - local.get $1 + local.set $6 + local.get $3 local.set $0 loop $while-continue|016 - local.get $12 - local.get $16 + local.get $6 + local.get $14 i32.ne if - local.get $16 + local.get $14 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $16 + local.get $14 i32.load8_u local.tee $5 i32.store8 local.get $0 - local.get $16 + local.get $14 i32.load8_u offset=1 i32.store8 offset=1 local.get $0 @@ -6706,11 +6722,11 @@ i32.shr_u local.get $5 i32.xor - local.get $7 + local.get $12 i32.and i32.const 2 i32.shl - local.get $6 + local.get $13 i32.add local.tee $5 i32.load @@ -6723,39 +6739,39 @@ i32.add local.set $0 end - local.get $16 + local.get $14 i32.const 8 i32.add - local.set $16 + local.set $14 br $while-continue|016 end end - local.get $10 - local.get $6 + local.get $15 + local.get $13 i32.store - local.get $6 + local.get $13 if - local.get $10 - local.get $6 + local.get $15 + local.get $13 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $7 + local.get $15 + local.get $12 i32.store offset=4 - local.get $10 - local.get $1 + local.get $15 + local.get $3 i32.store offset=8 - local.get $1 + local.get $3 if - local.get $10 - local.get $1 + local.get $15 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $13 + local.get $15 + local.get $7 i32.store offset=12 - local.get $10 - local.get $10 + local.get $15 + local.get $15 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -6764,12 +6780,12 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $15 i32.load offset=8 - local.tee $1 + local.tee $3 i32.store - local.get $10 - local.get $10 + local.get $15 + local.get $15 i32.load offset=16 local.tee $0 i32.const 1 @@ -6778,26 +6794,26 @@ local.get $0 i32.const 3 i32.shl - local.get $1 + local.get $3 i32.add - local.tee $1 - local.get $2 + local.tee $3 + local.get $4 i32.store8 - local.get $1 - local.get $2 + local.get $3 + local.get $4 i32.store8 offset=1 - local.get $10 - local.get $10 + local.get $15 + local.get $15 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $1 - local.get $10 + local.get $3 + local.get $15 i32.load - local.get $10 + local.get $15 i32.load offset=4 - local.get $14 + local.get $8 i32.and i32.const 2 i32.shl @@ -6806,28 +6822,28 @@ i32.load i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 - local.get $8 + local.get $11 + local.get $10 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $3 + local.get $1 i32.const 1 i32.add local.set $0 br $for-loop|4 end end - local.get $10 + local.get $15 i32.load offset=20 i32.const 100 i32.ne @@ -6839,7 +6855,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -6860,9 +6876,9 @@ i32.const 50 i32.lt_u if - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $0 i32.const 255 @@ -6940,7 +6956,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $0 call $~lib/map/Map#get local.get $0 @@ -6957,12 +6973,12 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $0 call $~lib/map/Map#delete - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $0 i32.const 255 @@ -7046,7 +7062,7 @@ br $for-loop|6 end end - local.get $11 + local.get $16 i32.load offset=20 i32.const 50 i32.ne @@ -7067,9 +7083,9 @@ i32.const 50 i32.lt_u if - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $0 i32.const 255 @@ -7146,7 +7162,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $0 local.get $0 i32.const 255 @@ -7155,9 +7171,9 @@ i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -7233,12 +7249,12 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $0 call $~lib/map/Map#delete - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $0 i32.const 255 @@ -7322,7 +7338,7 @@ br $for-loop|8 end end - local.get $11 + local.get $16 i32.load offset=20 i32.const 50 i32.ne @@ -7334,9 +7350,9 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 call $~lib/map/Map#clear - local.get $11 + local.get $16 i32.load offset=20 if i32.const 0 @@ -7827,40 +7843,40 @@ i32.const 24 i32.const 11 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $16 i32.store - local.get $11 + local.get $16 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $3 i32.store local.get $3 if - local.get $11 + local.get $16 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $16 i32.const 3 i32.store offset=4 - local.get $11 + local.get $16 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $3 i32.store offset=8 local.get $3 if - local.get $11 + local.get $16 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $16 i32.const 4 i32.store offset=12 - local.get $11 + local.get $16 i32.const 0 i32.store offset=16 - local.get $11 + local.get $16 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer @@ -7868,7 +7884,7 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $11 + local.get $16 i32.store loop $for-loop|1 local.get $4 @@ -7876,9 +7892,9 @@ i32.const 100 i32.lt_s if - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $4 i32.extend16_s @@ -7954,7 +7970,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $4 local.get $4 i32.extend16_s @@ -7962,9 +7978,9 @@ i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $2 i32.const -1028477379 @@ -8040,7 +8056,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $4 call $~lib/map/Map#get local.get $4 @@ -8063,7 +8079,7 @@ br $for-loop|1 end end - local.get $11 + local.get $16 i32.load offset=20 i32.const 100 i32.ne @@ -8083,9 +8099,9 @@ i32.const 100 i32.lt_s if - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $4 i32.extend16_s @@ -8162,7 +8178,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $4 call $~lib/map/Map#get local.get $4 @@ -8178,7 +8194,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $4 local.get $4 i32.extend16_s @@ -8186,9 +8202,9 @@ i32.const 20 i32.add call $~lib/map/Map#set - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $2 i32.const -1028477379 @@ -8264,7 +8280,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $4 call $~lib/map/Map#get local.get $4 @@ -8287,7 +8303,7 @@ br $for-loop|3 end end - local.get $11 + local.get $16 i32.load offset=20 i32.const 100 i32.ne @@ -8313,13 +8329,13 @@ local.tee $2 i32.const 0 i32.store - local.get $11 + local.get $16 i32.load offset=8 - local.set $8 - local.get $11 + local.set $5 + local.get $16 i32.load offset=16 - local.tee $7 - local.set $6 + local.tee $4 + local.set $9 local.get $2 i32.const 8 i32.sub @@ -8336,21 +8352,21 @@ i32.const 16 i32.const 12 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $3 i32.store - local.get $4 + local.get $3 i32.const 0 i32.store - local.get $4 + local.get $3 i32.const 0 i32.store offset=4 - local.get $4 + local.get $3 i32.const 0 i32.store offset=8 - local.get $4 + local.get $3 i32.const 0 i32.store offset=12 - local.get $6 + local.get $9 i32.const 536870910 i32.gt_u if @@ -8362,56 +8378,56 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $9 i32.const 8 - local.get $6 + local.get $9 i32.const 8 i32.gt_u select i32.const 1 i32.shl - local.tee $5 + local.tee $7 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $10 i32.store offset=4 - local.get $3 - local.get $5 + local.get $10 + local.get $7 call $~lib/memory/memory.fill - local.get $4 local.get $3 + local.get $10 i32.store - local.get $3 + local.get $10 if - local.get $4 local.get $3 + local.get $10 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 local.get $3 + local.get $10 i32.store offset=4 - local.get $4 - local.get $5 + local.get $3 + local.get $7 i32.store offset=8 - local.get $4 - local.get $6 + local.get $3 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $4 + local.get $3 i32.store loop $for-loop|0 - local.get $7 - local.get $10 + local.get $4 + local.get $8 i32.gt_s if - local.get $10 + local.get $8 i32.const 12 i32.mul - local.get $8 + local.get $5 i32.add local.tee $2 i32.load offset=8 @@ -8419,7 +8435,7 @@ i32.and i32.eqz if - local.get $4 + local.get $3 local.get $1 local.get $2 i32.load16_s @@ -8429,31 +8445,32 @@ i32.add local.set $1 end - local.get $10 + local.get $8 i32.const 1 i32.add - local.set $10 + local.set $8 br $for-loop|0 end end - local.get $4 + local.get $3 local.get $1 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity - local.get $4 + local.get $3 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $3 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $16 call $~lib/map/Map#values - local.tee $15 + local.tee $9 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -8472,61 +8489,61 @@ i32.const 24 i32.const 13 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $15 i32.store - local.get $10 + local.get $15 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store local.get $1 if - local.get $10 + local.get $15 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $15 i32.const 3 i32.store offset=4 - local.get $10 + local.get $15 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=8 local.get $1 if - local.get $10 + local.get $15 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $15 i32.const 4 i32.store offset=12 - local.get $10 + local.get $15 i32.const 0 i32.store offset=16 - local.get $10 + local.get $15 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $15 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $9 + local.tee $11 i32.store offset=16 loop $for-loop|4 - local.get $4 + local.get $2 i32.load offset=12 local.get $0 i32.gt_s if local.get $0 - local.tee $3 - local.get $4 + local.tee $1 + local.get $2 i32.load offset=12 i32.ge_u if @@ -8537,23 +8554,23 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 i32.load offset=4 - local.get $3 + local.get $1 i32.const 1 i32.shl i32.add i32.load16_s - local.set $2 - local.get $15 - local.get $3 + local.set $0 + local.get $9 + local.get $1 call $~lib/array/Array#__get - local.set $8 - local.get $11 + local.set $10 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 - local.get $2 + local.get $0 i32.extend16_s i32.const -1028477379 i32.mul @@ -8563,24 +8580,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $3 i32.const 15 i32.shr_u - local.get $0 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $3 i32.const 13 i32.shr_u - local.get $0 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $3 i32.const 16 i32.shr_u - local.get $0 + local.get $3 i32.xor i32.and i32.const 2 @@ -8594,7 +8611,7 @@ if local.get $5 i32.load offset=8 - local.tee $0 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -8602,13 +8619,13 @@ else local.get $5 i32.load16_u - local.get $2 + local.get $0 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $0 + local.get $3 i32.const -2 i32.and local.set $5 @@ -8628,14 +8645,14 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 - local.get $8 + local.get $10 i32.const 20 i32.sub - local.tee $1 + local.tee $4 i32.extend16_s i32.const -1028477379 i32.mul @@ -8645,24 +8662,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $3 i32.const 15 i32.shr_u - local.get $0 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $3 i32.const 13 i32.shr_u - local.get $0 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $3 i32.const 16 i32.shr_u - local.get $0 + local.get $3 i32.xor i32.and i32.const 2 @@ -8676,7 +8693,7 @@ if local.get $5 i32.load offset=8 - local.tee $0 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -8684,13 +8701,13 @@ else local.get $5 i32.load16_u - local.get $1 + local.get $4 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $0 + local.get $3 i32.const -2 i32.and local.set $5 @@ -8721,9 +8738,10 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $10 + local.get $15 i32.load - local.get $2 + local.get $0 + local.tee $4 i32.extend16_s i32.const -1028477379 i32.mul @@ -8752,8 +8770,8 @@ i32.shr_u local.get $0 i32.xor - local.tee $14 - local.get $10 + local.tee $8 + local.get $15 i32.load offset=4 i32.and i32.const 2 @@ -8767,7 +8785,7 @@ if local.get $0 i32.load offset=4 - local.tee $1 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -8775,13 +8793,13 @@ else local.get $0 i32.load16_u - local.get $2 + local.get $4 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $1 + local.get $3 i32.const -2 i32.and local.set $0 @@ -8794,18 +8812,18 @@ local.get $0 if local.get $0 - local.get $2 + local.get $4 i32.store16 offset=2 else - local.get $10 + local.get $15 i32.load offset=16 - local.get $10 + local.get $15 i32.load offset=12 i32.eq if - local.get $10 + local.get $15 i32.load offset=20 - local.get $10 + local.get $15 i32.load offset=12 i32.const 3 i32.mul @@ -8813,17 +8831,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $10 + local.get $15 i32.load offset=4 else - local.get $10 + local.get $15 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $7 + local.set $12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -8837,14 +8855,14 @@ i64.const 0 i64.store local.get $0 - local.get $7 + local.get $12 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $13 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -8852,41 +8870,41 @@ i32.shl i32.const 3 i32.div_s - local.tee $13 + local.tee $7 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $3 i32.store offset=4 - local.get $10 + local.get $15 i32.load offset=8 - local.tee $16 - local.get $10 + local.tee $14 + local.get $15 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $12 - local.get $1 + local.set $6 + local.get $3 local.set $0 loop $while-continue|016 - local.get $12 - local.get $16 + local.get $6 + local.get $14 i32.ne if - local.get $16 + local.get $14 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $16 + local.get $14 i32.load16_s local.tee $5 i32.store16 local.get $0 - local.get $16 + local.get $14 i32.load16_s offset=2 i32.store16 offset=2 local.get $0 @@ -8919,11 +8937,11 @@ i32.shr_u local.get $5 i32.xor - local.get $7 + local.get $12 i32.and i32.const 2 i32.shl - local.get $6 + local.get $13 i32.add local.tee $5 i32.load @@ -8936,39 +8954,39 @@ i32.add local.set $0 end - local.get $16 + local.get $14 i32.const 8 i32.add - local.set $16 + local.set $14 br $while-continue|016 end end - local.get $10 - local.get $6 + local.get $15 + local.get $13 i32.store - local.get $6 + local.get $13 if - local.get $10 - local.get $6 + local.get $15 + local.get $13 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $7 + local.get $15 + local.get $12 i32.store offset=4 - local.get $10 - local.get $1 + local.get $15 + local.get $3 i32.store offset=8 - local.get $1 + local.get $3 if - local.get $10 - local.get $1 + local.get $15 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $13 + local.get $15 + local.get $7 i32.store offset=12 - local.get $10 - local.get $10 + local.get $15 + local.get $15 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -8977,12 +8995,12 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $15 i32.load offset=8 - local.tee $1 + local.tee $3 i32.store - local.get $10 - local.get $10 + local.get $15 + local.get $15 i32.load offset=16 local.tee $0 i32.const 1 @@ -8991,26 +9009,26 @@ local.get $0 i32.const 3 i32.shl - local.get $1 + local.get $3 i32.add - local.tee $1 - local.get $2 + local.tee $3 + local.get $4 i32.store16 - local.get $1 - local.get $2 + local.get $3 + local.get $4 i32.store16 offset=2 - local.get $10 - local.get $10 + local.get $15 + local.get $15 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $1 - local.get $10 + local.get $3 + local.get $15 i32.load - local.get $10 + local.get $15 i32.load offset=4 - local.get $14 + local.get $8 i32.and i32.const 2 i32.shl @@ -9019,28 +9037,28 @@ i32.load i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 - local.get $8 + local.get $11 + local.get $10 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $3 + local.get $1 i32.const 1 i32.add local.set $0 br $for-loop|4 end end - local.get $10 + local.get $15 i32.load offset=20 i32.const 100 i32.ne @@ -9052,7 +9070,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -9072,9 +9090,9 @@ i32.const 50 i32.lt_s if - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $0 i32.extend16_s @@ -9151,7 +9169,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $0 call $~lib/map/Map#get local.get $0 @@ -9167,12 +9185,12 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $0 call $~lib/map/Map#delete - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $0 i32.extend16_s @@ -9255,7 +9273,7 @@ br $for-loop|6 end end - local.get $11 + local.get $16 i32.load offset=20 i32.const 50 i32.ne @@ -9275,9 +9293,9 @@ i32.const 50 i32.lt_s if - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $0 i32.extend16_s @@ -9353,7 +9371,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $0 local.get $0 i32.extend16_s @@ -9361,9 +9379,9 @@ i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -9439,12 +9457,12 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $0 call $~lib/map/Map#delete - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $0 i32.extend16_s @@ -9527,7 +9545,7 @@ br $for-loop|8 end end - local.get $11 + local.get $16 i32.load offset=20 i32.const 50 i32.ne @@ -9539,9 +9557,9 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 call $~lib/map/Map#clear - local.get $11 + local.get $16 i32.load offset=20 if i32.const 0 @@ -9994,40 +10012,40 @@ i32.const 24 i32.const 14 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $16 i32.store - local.get $11 + local.get $16 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $3 i32.store local.get $3 if - local.get $11 + local.get $16 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $16 i32.const 3 i32.store offset=4 - local.get $11 + local.get $16 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $3 i32.store offset=8 local.get $3 if - local.get $11 + local.get $16 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $16 i32.const 4 i32.store offset=12 - local.get $11 + local.get $16 i32.const 0 i32.store offset=16 - local.get $11 + local.get $16 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer @@ -10035,7 +10053,7 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $11 + local.get $16 i32.store loop $for-loop|1 local.get $4 @@ -10044,9 +10062,9 @@ i32.const 100 i32.lt_u if - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $4 i32.const 65535 @@ -10123,7 +10141,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $4 local.get $4 i32.const 65535 @@ -10132,9 +10150,9 @@ i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $2 i32.const -1028477379 @@ -10210,7 +10228,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $4 call $~lib/map/Map#get local.get $4 @@ -10234,7 +10252,7 @@ br $for-loop|1 end end - local.get $11 + local.get $16 i32.load offset=20 i32.const 100 i32.ne @@ -10255,9 +10273,9 @@ i32.const 100 i32.lt_u if - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $4 i32.const 65535 @@ -10335,7 +10353,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $4 call $~lib/map/Map#get local.get $4 @@ -10352,7 +10370,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $4 local.get $4 i32.const 65535 @@ -10361,9 +10379,9 @@ i32.const 20 i32.add call $~lib/map/Map#set - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $2 i32.const -1028477379 @@ -10439,7 +10457,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $4 call $~lib/map/Map#get local.get $4 @@ -10463,7 +10481,7 @@ br $for-loop|3 end end - local.get $11 + local.get $16 i32.load offset=20 i32.const 100 i32.ne @@ -10489,13 +10507,13 @@ local.tee $2 i32.const 0 i32.store - local.get $11 + local.get $16 i32.load offset=8 - local.set $8 - local.get $11 + local.set $5 + local.get $16 i32.load offset=16 - local.tee $7 - local.set $6 + local.tee $4 + local.set $9 local.get $2 i32.const 8 i32.sub @@ -10512,21 +10530,21 @@ i32.const 16 i32.const 15 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $3 i32.store - local.get $4 + local.get $3 i32.const 0 i32.store - local.get $4 + local.get $3 i32.const 0 i32.store offset=4 - local.get $4 + local.get $3 i32.const 0 i32.store offset=8 - local.get $4 + local.get $3 i32.const 0 i32.store offset=12 - local.get $6 + local.get $9 i32.const 536870910 i32.gt_u if @@ -10538,56 +10556,56 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $9 i32.const 8 - local.get $6 + local.get $9 i32.const 8 i32.gt_u select i32.const 1 i32.shl - local.tee $5 + local.tee $7 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $10 i32.store offset=4 - local.get $3 - local.get $5 + local.get $10 + local.get $7 call $~lib/memory/memory.fill - local.get $4 local.get $3 + local.get $10 i32.store - local.get $3 + local.get $10 if - local.get $4 local.get $3 + local.get $10 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 local.get $3 + local.get $10 i32.store offset=4 - local.get $4 - local.get $5 + local.get $3 + local.get $7 i32.store offset=8 - local.get $4 - local.get $6 + local.get $3 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $4 + local.get $3 i32.store loop $for-loop|0 - local.get $7 - local.get $10 + local.get $4 + local.get $8 i32.gt_s if - local.get $10 + local.get $8 i32.const 12 i32.mul - local.get $8 + local.get $5 i32.add local.tee $2 i32.load offset=8 @@ -10595,7 +10613,7 @@ i32.and i32.eqz if - local.get $4 + local.get $3 local.get $1 local.get $2 i32.load16_u @@ -10605,31 +10623,32 @@ i32.add local.set $1 end - local.get $10 + local.get $8 i32.const 1 i32.add - local.set $10 + local.set $8 br $for-loop|0 end end - local.get $4 + local.get $3 local.get $1 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity - local.get $4 + local.get $3 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $3 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $16 call $~lib/map/Map#values - local.tee $15 + local.tee $9 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -10648,61 +10667,61 @@ i32.const 24 i32.const 16 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $15 i32.store - local.get $10 + local.get $15 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store local.get $1 if - local.get $10 + local.get $15 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $15 i32.const 3 i32.store offset=4 - local.get $10 + local.get $15 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=8 local.get $1 if - local.get $10 + local.get $15 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $15 i32.const 4 i32.store offset=12 - local.get $10 + local.get $15 i32.const 0 i32.store offset=16 - local.get $10 + local.get $15 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $15 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $9 + local.tee $11 i32.store offset=16 loop $for-loop|4 - local.get $4 + local.get $2 i32.load offset=12 local.get $0 i32.gt_s if local.get $0 - local.tee $3 - local.get $4 + local.tee $1 + local.get $2 i32.load offset=12 i32.ge_u if @@ -10713,23 +10732,23 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 i32.load offset=4 - local.get $3 + local.get $1 i32.const 1 i32.shl i32.add i32.load16_u - local.set $2 - local.get $15 - local.get $3 + local.set $0 + local.get $9 + local.get $1 call $~lib/array/Array#__get - local.set $8 - local.get $11 + local.set $10 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 - local.get $2 + local.get $0 i32.const -1028477379 i32.mul i32.const 374761395 @@ -10738,24 +10757,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $3 i32.const 15 i32.shr_u - local.get $0 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $3 i32.const 13 i32.shr_u - local.get $0 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $3 i32.const 16 i32.shr_u - local.get $0 + local.get $3 i32.xor i32.and i32.const 2 @@ -10769,7 +10788,7 @@ if local.get $5 i32.load offset=8 - local.tee $0 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -10777,13 +10796,13 @@ else local.get $5 i32.load16_u - local.get $2 + local.get $0 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $0 + local.get $3 i32.const -2 i32.and local.set $5 @@ -10803,14 +10822,14 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 - local.get $8 + local.get $10 i32.const 20 i32.sub - local.tee $1 + local.tee $4 i32.const 65535 i32.and i32.const -1028477379 @@ -10821,24 +10840,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $3 i32.const 15 i32.shr_u - local.get $0 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $3 i32.const 13 i32.shr_u - local.get $0 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $3 i32.const 16 i32.shr_u - local.get $0 + local.get $3 i32.xor i32.and i32.const 2 @@ -10852,7 +10871,7 @@ if local.get $5 i32.load offset=8 - local.tee $0 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -10860,13 +10879,13 @@ else local.get $5 i32.load16_u - local.get $1 + local.get $4 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $0 + local.get $3 i32.const -2 i32.and local.set $5 @@ -10897,9 +10916,10 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $10 + local.get $15 i32.load - local.get $2 + local.get $0 + local.tee $4 i32.const -1028477379 i32.mul i32.const 374761395 @@ -10927,8 +10947,8 @@ i32.shr_u local.get $0 i32.xor - local.tee $14 - local.get $10 + local.tee $8 + local.get $15 i32.load offset=4 i32.and i32.const 2 @@ -10942,7 +10962,7 @@ if local.get $0 i32.load offset=4 - local.tee $1 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -10950,13 +10970,13 @@ else local.get $0 i32.load16_u - local.get $2 + local.get $4 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $1 + local.get $3 i32.const -2 i32.and local.set $0 @@ -10969,18 +10989,18 @@ local.get $0 if local.get $0 - local.get $2 + local.get $4 i32.store16 offset=2 else - local.get $10 + local.get $15 i32.load offset=16 - local.get $10 + local.get $15 i32.load offset=12 i32.eq if - local.get $10 + local.get $15 i32.load offset=20 - local.get $10 + local.get $15 i32.load offset=12 i32.const 3 i32.mul @@ -10988,17 +11008,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $10 + local.get $15 i32.load offset=4 else - local.get $10 + local.get $15 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $7 + local.set $12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -11012,14 +11032,14 @@ i64.const 0 i64.store local.get $0 - local.get $7 + local.get $12 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $13 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -11027,41 +11047,41 @@ i32.shl i32.const 3 i32.div_s - local.tee $13 + local.tee $7 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $3 i32.store offset=4 - local.get $10 + local.get $15 i32.load offset=8 - local.tee $16 - local.get $10 + local.tee $14 + local.get $15 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $12 - local.get $1 + local.set $6 + local.get $3 local.set $0 loop $while-continue|016 - local.get $12 - local.get $16 + local.get $6 + local.get $14 i32.ne if - local.get $16 + local.get $14 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $16 + local.get $14 i32.load16_u local.tee $5 i32.store16 local.get $0 - local.get $16 + local.get $14 i32.load16_u offset=2 i32.store16 offset=2 local.get $0 @@ -11093,11 +11113,11 @@ i32.shr_u local.get $5 i32.xor - local.get $7 + local.get $12 i32.and i32.const 2 i32.shl - local.get $6 + local.get $13 i32.add local.tee $5 i32.load @@ -11110,39 +11130,39 @@ i32.add local.set $0 end - local.get $16 + local.get $14 i32.const 8 i32.add - local.set $16 + local.set $14 br $while-continue|016 end end - local.get $10 - local.get $6 + local.get $15 + local.get $13 i32.store - local.get $6 + local.get $13 if - local.get $10 - local.get $6 + local.get $15 + local.get $13 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $7 + local.get $15 + local.get $12 i32.store offset=4 - local.get $10 - local.get $1 + local.get $15 + local.get $3 i32.store offset=8 - local.get $1 + local.get $3 if - local.get $10 - local.get $1 + local.get $15 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $13 + local.get $15 + local.get $7 i32.store offset=12 - local.get $10 - local.get $10 + local.get $15 + local.get $15 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -11151,12 +11171,12 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $15 i32.load offset=8 - local.tee $1 + local.tee $3 i32.store - local.get $10 - local.get $10 + local.get $15 + local.get $15 i32.load offset=16 local.tee $0 i32.const 1 @@ -11165,26 +11185,26 @@ local.get $0 i32.const 3 i32.shl - local.get $1 + local.get $3 i32.add - local.tee $1 - local.get $2 + local.tee $3 + local.get $4 i32.store16 - local.get $1 - local.get $2 + local.get $3 + local.get $4 i32.store16 offset=2 - local.get $10 - local.get $10 + local.get $15 + local.get $15 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $1 - local.get $10 + local.get $3 + local.get $15 i32.load - local.get $10 + local.get $15 i32.load offset=4 - local.get $14 + local.get $8 i32.and i32.const 2 i32.shl @@ -11193,28 +11213,28 @@ i32.load i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 - local.get $8 + local.get $11 + local.get $10 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $3 + local.get $1 i32.const 1 i32.add local.set $0 br $for-loop|4 end end - local.get $10 + local.get $15 i32.load offset=20 i32.const 100 i32.ne @@ -11226,7 +11246,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -11247,9 +11267,9 @@ i32.const 50 i32.lt_u if - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $0 i32.const 65535 @@ -11327,7 +11347,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $0 call $~lib/map/Map#get local.get $0 @@ -11344,12 +11364,12 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $0 call $~lib/map/Map#delete - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $0 i32.const 65535 @@ -11433,7 +11453,7 @@ br $for-loop|6 end end - local.get $11 + local.get $16 i32.load offset=20 i32.const 50 i32.ne @@ -11454,9 +11474,9 @@ i32.const 50 i32.lt_u if - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $0 i32.const 65535 @@ -11533,7 +11553,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $0 local.get $0 i32.const 65535 @@ -11542,9 +11562,9 @@ i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -11620,12 +11640,12 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 local.get $0 call $~lib/map/Map#delete - local.get $11 + local.get $16 i32.load - local.get $11 + local.get $16 i32.load offset=4 local.get $0 i32.const 65535 @@ -11709,7 +11729,7 @@ br $for-loop|8 end end - local.get $11 + local.get $16 i32.load offset=20 i32.const 50 i32.ne @@ -11721,9 +11741,9 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $16 call $~lib/map/Map#clear - local.get $11 + local.get $16 i32.load offset=20 if i32.const 0 @@ -11982,16 +12002,16 @@ i32.store offset=16 local.get $1 call $~lib/map/Map#constructor - local.tee $4 + local.tee $1 i32.store loop $for-loop|0 local.get $0 i32.const 100 i32.lt_s if - local.get $4 + local.get $1 i32.load - local.get $4 + local.get $1 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -12002,36 +12022,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $3 i32.const 15 i32.shr_u - local.get $1 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $3 i32.const 13 i32.shr_u - local.get $1 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $3 i32.const 16 i32.shr_u - local.get $1 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=8 local.tee $5 i32.const 1 @@ -12040,7 +12060,7 @@ i32.const 0 else local.get $0 - local.get $1 + local.get $3 i32.load i32.eq end @@ -12048,14 +12068,14 @@ local.get $5 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|0 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 if i32.const 0 i32.const 1568 @@ -12064,15 +12084,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $1 local.get $0 local.get $0 i32.const 10 i32.add call $~lib/map/Map#set - local.get $4 + local.get $1 i32.load - local.get $4 + local.get $1 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -12083,36 +12103,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $3 i32.const 15 i32.shr_u - local.get $1 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $3 i32.const 13 i32.shr_u - local.get $1 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $3 i32.const 16 i32.shr_u - local.get $1 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=8 local.tee $5 i32.const 1 @@ -12121,7 +12141,7 @@ i32.const 0 else local.get $0 - local.get $1 + local.get $3 i32.load i32.eq end @@ -12129,14 +12149,14 @@ local.get $5 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|02 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 i32.eqz if i32.const 0 @@ -12146,7 +12166,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $1 local.get $0 call $~lib/map/Map#get local.get $0 @@ -12168,7 +12188,7 @@ br $for-loop|0 end end - local.get $4 + local.get $1 i32.load offset=20 i32.const 100 i32.ne @@ -12187,9 +12207,9 @@ i32.const 100 i32.lt_s if - local.get $4 + local.get $1 i32.load - local.get $4 + local.get $1 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -12200,36 +12220,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $3 i32.const 15 i32.shr_u - local.get $1 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $3 i32.const 13 i32.shr_u - local.get $1 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $3 i32.const 16 i32.shr_u - local.get $1 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=8 local.tee $5 i32.const 1 @@ -12238,7 +12258,7 @@ i32.const 0 else local.get $0 - local.get $1 + local.get $3 i32.load i32.eq end @@ -12246,14 +12266,14 @@ local.get $5 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|05 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 i32.eqz if i32.const 0 @@ -12263,7 +12283,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $1 local.get $0 call $~lib/map/Map#get local.get $0 @@ -12278,15 +12298,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $1 local.get $0 local.get $0 i32.const 20 i32.add call $~lib/map/Map#set - local.get $4 + local.get $1 i32.load - local.get $4 + local.get $1 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -12297,36 +12317,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $3 i32.const 15 i32.shr_u - local.get $1 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $3 i32.const 13 i32.shr_u - local.get $1 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $3 i32.const 16 i32.shr_u - local.get $1 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=8 local.tee $5 i32.const 1 @@ -12335,7 +12355,7 @@ i32.const 0 else local.get $0 - local.get $1 + local.get $3 i32.load i32.eq end @@ -12343,14 +12363,14 @@ local.get $5 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|08 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 i32.eqz if i32.const 0 @@ -12360,7 +12380,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $1 local.get $0 call $~lib/map/Map#get local.get $0 @@ -12382,7 +12402,7 @@ br $for-loop|1 end end - local.get $4 + local.get $1 i32.load offset=20 i32.const 100 i32.ne @@ -12395,10 +12415,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i32.const 0 local.set $0 - local.get $1 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -12407,25 +12427,25 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i32.const 0 i32.store - local.get $4 + local.get $1 i32.load offset=8 local.set $6 + local.get $3 local.get $1 - local.get $4 i32.load offset=16 - local.tee $1 - call $~lib/array/Array#constructor local.tee $7 + call $~lib/array/Array#constructor + local.tee $3 i32.store loop $for-loop|01 - local.get $1 - local.get $2 - i32.gt_s + local.get $4 + local.get $7 + i32.lt_s if - local.get $2 + local.get $4 i32.const 12 i32.mul local.get $6 @@ -12436,7 +12456,7 @@ i32.and i32.eqz if - local.get $7 + local.get $3 local.get $0 local.get $8 i32.load @@ -12446,31 +12466,31 @@ i32.add local.set $0 end - local.get $2 + local.get $4 i32.const 1 i32.add - local.set $2 + local.set $4 br $for-loop|01 end end - local.get $7 + local.get $3 local.get $0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $7 + local.get $3 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 call $~lib/map/Map#values - local.tee $0 + local.tee $8 i32.store offset=8 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor @@ -12481,24 +12501,24 @@ local.tee $6 i32.store offset=16 loop $for-loop|2 - local.get $7 - i32.load offset=12 local.get $3 + i32.load offset=12 + local.get $2 i32.gt_s if - local.get $7 local.get $3 + local.get $2 call $~lib/array/Array#__get - local.set $8 - local.get $0 - local.get $3 + local.set $0 + local.get $8 + local.get $2 call $~lib/array/Array#__get - local.set $9 - local.get $4 + local.set $7 + local.get $1 i32.load - local.get $4 + local.get $1 i32.load offset=4 - local.get $8 + local.get $0 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12507,60 +12527,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $4 i32.const 15 i32.shr_u - local.get $1 + local.get $4 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $4 i32.const 13 i32.shr_u - local.get $1 + local.get $4 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $4 i32.const 16 i32.shr_u - local.get $1 + local.get $4 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $4 block $__inlined_func$~lib/map/Map#find10 loop $while-continue|011 - local.get $2 + local.get $4 if - local.get $2 + local.get $4 i32.load offset=8 - local.tee $1 + local.tee $9 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $8 - local.get $2 + local.get $0 + local.get $4 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $1 + local.get $9 i32.const -2 i32.and - local.set $2 + local.set $4 br $while-continue|011 end end i32.const 0 - local.set $2 + local.set $4 end - local.get $2 + local.get $4 i32.eqz if i32.const 0 @@ -12570,14 +12590,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $1 i32.load - local.get $4 + local.get $1 i32.load offset=4 - local.get $9 + local.get $7 i32.const 20 i32.sub - local.tee $10 + local.tee $9 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12586,60 +12606,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $4 i32.const 15 i32.shr_u - local.get $1 + local.get $4 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $4 i32.const 13 i32.shr_u - local.get $1 + local.get $4 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $4 i32.const 16 i32.shr_u - local.get $1 + local.get $4 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $4 block $__inlined_func$~lib/map/Map#find13 loop $while-continue|014 - local.get $2 + local.get $4 if - local.get $2 + local.get $4 i32.load offset=8 - local.tee $1 + local.tee $10 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $10 - local.get $2 + local.get $9 + local.get $4 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $1 + local.get $10 i32.const -2 i32.and - local.set $2 + local.set $4 br $while-continue|014 end end i32.const 0 - local.set $2 + local.set $4 end - local.get $2 + local.get $4 i32.eqz if i32.const 0 @@ -12650,20 +12670,20 @@ unreachable end local.get $5 - local.get $8 - local.get $8 + local.get $0 + local.get $0 call $~lib/map/Map#set local.get $6 - local.get $9 + local.get $7 i32.const 20 i32.sub - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 call $~lib/map/Map#set - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 br $for-loop|2 end end @@ -12692,17 +12712,17 @@ unreachable end i32.const 0 - local.set $3 + local.set $2 loop $for-loop|3 - local.get $3 + local.get $2 i32.const 50 i32.lt_s if - local.get $4 + local.get $1 i32.load - local.get $4 + local.get $1 i32.load offset=4 - local.get $3 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12742,19 +12762,19 @@ if local.get $0 i32.load offset=8 - local.tee $1 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $2 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find16 - local.get $1 + local.get $3 i32.const -2 i32.and local.set $0 @@ -12774,10 +12794,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $1 + local.get $2 call $~lib/map/Map#get - local.get $3 + local.get $2 i32.const 20 i32.add i32.ne @@ -12789,14 +12809,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $1 + local.get $2 call $~lib/map/Map#delete - local.get $4 + local.get $1 i32.load - local.get $4 + local.get $1 i32.load offset=4 - local.get $3 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12836,19 +12856,19 @@ if local.get $0 i32.load offset=8 - local.tee $1 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $2 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find19 - local.get $1 + local.get $3 i32.const -2 i32.and local.set $0 @@ -12867,14 +12887,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 br $for-loop|3 end end - local.get $4 + local.get $1 i32.load offset=20 i32.const 50 i32.ne @@ -12887,17 +12907,17 @@ unreachable end i32.const 0 - local.set $3 + local.set $2 loop $for-loop|4 - local.get $3 + local.get $2 i32.const 50 i32.lt_s if - local.get $4 + local.get $1 i32.load - local.get $4 + local.get $1 i32.load offset=4 - local.get $3 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12937,19 +12957,19 @@ if local.get $0 i32.load offset=8 - local.tee $1 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $2 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find22 - local.get $1 + local.get $3 i32.const -2 i32.and local.set $0 @@ -12968,17 +12988,17 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 - local.get $3 + local.get $1 + local.get $2 + local.get $2 i32.const 10 i32.add call $~lib/map/Map#set - local.get $4 + local.get $1 i32.load - local.get $4 + local.get $1 i32.load offset=4 - local.get $3 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13018,19 +13038,19 @@ if local.get $0 i32.load offset=8 - local.tee $1 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $2 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find25 - local.get $1 + local.get $3 i32.const -2 i32.and local.set $0 @@ -13050,14 +13070,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $1 + local.get $2 call $~lib/map/Map#delete - local.get $4 + local.get $1 i32.load - local.get $4 + local.get $1 i32.load offset=4 - local.get $3 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13097,19 +13117,19 @@ if local.get $0 i32.load offset=8 - local.tee $1 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $2 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find28 - local.get $1 + local.get $3 i32.const -2 i32.and local.set $0 @@ -13128,14 +13148,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 br $for-loop|4 end end - local.get $4 + local.get $1 i32.load offset=20 i32.const 50 i32.ne @@ -13147,9 +13167,9 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $1 call $~lib/map/Map#clear - local.get $4 + local.get $1 i32.load offset=20 if i32.const 0 @@ -13569,16 +13589,16 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $0 i64.const 0 i64.store - local.get $2 + local.get $0 i64.const 0 i64.store offset=8 - local.get $2 + local.get $0 i32.const 0 i32.store offset=16 - local.get $2 + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -13587,66 +13607,66 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.const 17 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $4 i32.store - local.get $10 + local.get $4 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 if - local.get $10 - local.get $0 + local.get $4 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $4 i32.const 3 i32.store offset=4 - local.get $10 + local.get $4 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $3 i32.store offset=8 - local.get $0 + local.get $3 if - local.get $10 - local.get $0 + local.get $4 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $4 i32.const 4 i32.store offset=12 - local.get $10 + local.get $4 i32.const 0 i32.store offset=16 - local.get $10 + local.get $4 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 - local.get $10 + local.get $0 + local.get $4 i32.store loop $for-loop|0 - local.get $3 + local.get $2 i32.const 100 i32.lt_u if - local.get $10 + local.get $4 i32.load - local.get $10 + local.get $4 i32.load offset=4 - local.get $3 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13686,19 +13706,19 @@ if local.get $0 i32.load offset=8 - local.tee $2 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $2 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $2 + local.get $3 i32.const -2 i32.and local.set $0 @@ -13717,17 +13737,17 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $3 - local.get $3 + local.get $4 + local.get $2 + local.get $2 i32.const 10 i32.add call $~lib/map/Map#set - local.get $10 + local.get $4 i32.load - local.get $10 + local.get $4 i32.load offset=4 - local.get $3 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13767,19 +13787,19 @@ if local.get $0 i32.load offset=8 - local.tee $2 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $2 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $2 + local.get $3 i32.const -2 i32.and local.set $0 @@ -13799,10 +13819,10 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $3 + local.get $4 + local.get $2 call $~lib/map/Map#get - local.get $3 + local.get $2 i32.const 10 i32.add i32.ne @@ -13814,14 +13834,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 br $for-loop|0 end end - local.get $10 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -13834,17 +13854,17 @@ unreachable end i32.const 0 - local.set $3 + local.set $2 loop $for-loop|1 - local.get $3 + local.get $2 i32.const 100 i32.lt_u if - local.get $10 + local.get $4 i32.load - local.get $10 + local.get $4 i32.load offset=4 - local.get $3 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13884,19 +13904,19 @@ if local.get $0 i32.load offset=8 - local.tee $2 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $2 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $2 + local.get $3 i32.const -2 i32.and local.set $0 @@ -13916,10 +13936,10 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $3 + local.get $4 + local.get $2 call $~lib/map/Map#get - local.get $3 + local.get $2 i32.const 10 i32.add i32.ne @@ -13931,17 +13951,17 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $3 - local.get $3 + local.get $4 + local.get $2 + local.get $2 i32.const 20 i32.add call $~lib/map/Map#set - local.get $10 + local.get $4 i32.load - local.get $10 + local.get $4 i32.load offset=4 - local.get $3 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13981,19 +14001,19 @@ if local.get $0 i32.load offset=8 - local.tee $2 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $2 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $2 + local.get $3 i32.const -2 i32.and local.set $0 @@ -14013,10 +14033,10 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $3 + local.get $4 + local.get $2 call $~lib/map/Map#get - local.get $3 + local.get $2 i32.const 20 i32.add i32.ne @@ -14028,14 +14048,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 br $for-loop|1 end end - local.get $10 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -14061,13 +14081,13 @@ local.tee $7 i32.const 0 i32.store - local.get $10 + local.get $4 i32.load offset=8 - local.set $6 - local.get $10 + local.set $10 + local.get $4 i32.load offset=16 - local.tee $5 - local.set $4 + local.tee $11 + local.set $3 local.get $7 i32.const 8 i32.sub @@ -14084,21 +14104,21 @@ i32.const 16 i32.const 18 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $0 i32.store - local.get $3 + local.get $0 i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 0 i32.store offset=4 - local.get $3 + local.get $0 i32.const 0 i32.store offset=8 - local.get $3 + local.get $0 i32.const 0 i32.store offset=12 - local.get $4 + local.get $3 i32.const 268435455 i32.gt_u if @@ -14110,66 +14130,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 8 - local.get $4 + local.get $3 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $2 + local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $2 i32.store offset=4 - local.get $0 local.get $2 + local.get $8 call $~lib/memory/memory.fill - local.get $3 local.get $0 + local.get $2 i32.store - local.get $0 + local.get $2 if - local.get $3 local.get $0 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 local.get $0 - i32.store offset=4 - local.get $3 local.get $2 + i32.store offset=4 + local.get $0 + local.get $8 i32.store offset=8 + local.get $0 local.get $3 - local.get $4 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $7 - local.get $3 + local.get $0 i32.store loop $for-loop|01 local.get $5 - local.get $9 - i32.gt_s + local.get $11 + i32.lt_s if - local.get $9 + local.get $5 i32.const 12 i32.mul - local.get $6 + local.get $10 i32.add - local.tee $0 + local.tee $2 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $3 - local.get $1 local.get $0 + local.get $1 + local.get $2 i32.load call $~lib/array/Array#__set local.get $1 @@ -14177,31 +14197,32 @@ i32.add local.set $1 end - local.get $9 + local.get $5 i32.const 1 i32.add - local.set $9 + local.set $5 br $for-loop|01 end end - local.get $3 + local.get $0 local.get $1 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 + local.get $0 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $0 + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $4 call $~lib/map/Map#values - local.tee $14 + local.tee $12 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -14220,61 +14241,61 @@ i32.const 24 i32.const 19 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $5 i32.store - local.get $9 + local.get $5 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store local.get $0 if - local.get $9 + local.get $5 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 + local.get $5 i32.const 3 i32.store offset=4 - local.get $9 + local.get $5 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store offset=8 local.get $0 if - local.get $9 + local.get $5 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 + local.get $5 i32.const 4 i32.store offset=12 - local.get $9 + local.get $5 i32.const 0 i32.store offset=16 - local.get $9 + local.get $5 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 + local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $8 + local.tee $10 i32.store offset=16 loop $for-loop|2 local.get $3 i32.load offset=12 - local.get $16 + local.get $6 i32.gt_s if local.get $3 i32.load offset=12 - local.get $16 + local.get $6 i32.le_u if i32.const 1248 @@ -14286,21 +14307,21 @@ end local.get $3 i32.load offset=4 - local.get $16 + local.get $6 i32.const 2 i32.shl i32.add i32.load - local.set $2 - local.get $14 - local.get $16 + local.set $1 + local.get $12 + local.get $6 call $~lib/array/Array#__get - local.set $7 - local.get $10 + local.set $11 + local.get $4 i32.load - local.get $10 + local.get $4 i32.load offset=4 - local.get $2 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14333,36 +14354,36 @@ i32.shl i32.add i32.load - local.set $4 + local.set $0 block $__inlined_func$~lib/map/Map#find10 loop $while-continue|011 - local.get $4 + local.get $0 if - local.get $4 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 - local.get $4 + local.get $1 + local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $0 + local.get $2 i32.const -2 i32.and - local.set $4 + local.set $0 br $while-continue|011 end end i32.const 0 - local.set $4 + local.set $0 end - local.get $4 + local.get $0 i32.eqz if i32.const 0 @@ -14372,14 +14393,14 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $4 i32.load - local.get $10 + local.get $4 i32.load offset=4 - local.get $7 + local.get $11 i32.const 20 i32.sub - local.tee $1 + local.tee $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14412,36 +14433,36 @@ i32.shl i32.add i32.load - local.set $4 + local.set $0 block $__inlined_func$~lib/map/Map#find13 loop $while-continue|014 - local.get $4 + local.get $0 if - local.get $4 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 - local.get $4 + local.get $2 + local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $0 + local.get $7 i32.const -2 i32.and - local.set $4 + local.set $0 br $while-continue|014 end end i32.const 0 - local.set $4 + local.set $0 end - local.get $4 + local.get $0 i32.eqz if i32.const 0 @@ -14462,9 +14483,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $9 + local.get $5 i32.load - local.get $2 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14493,7 +14514,7 @@ local.get $0 i32.xor local.tee $13 - local.get $9 + local.get $5 i32.load offset=4 i32.and i32.const 2 @@ -14507,19 +14528,19 @@ if local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $1 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find15 - local.get $1 + local.get $2 i32.const -2 i32.and local.set $0 @@ -14532,18 +14553,18 @@ local.get $0 if local.get $0 - local.get $2 + local.get $1 i32.store offset=4 else - local.get $9 + local.get $5 i32.load offset=16 - local.get $9 + local.get $5 i32.load offset=12 i32.eq if - local.get $9 + local.get $5 i32.load offset=20 - local.get $9 + local.get $5 i32.load offset=12 i32.const 3 i32.mul @@ -14551,17 +14572,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $9 + local.get $5 i32.load offset=4 else - local.get $9 + local.get $5 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $6 + local.set $9 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -14575,14 +14596,14 @@ i64.const 0 i64.store local.get $0 - local.get $6 + local.get $9 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $8 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -14590,45 +14611,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $12 + local.tee $14 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $9 + local.get $5 i32.load offset=8 - local.tee $15 - local.get $9 + local.tee $7 + local.get $5 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $11 - local.get $1 + local.set $15 + local.get $2 local.set $0 loop $while-continue|017 - local.get $11 + local.get $7 local.get $15 i32.ne if - local.get $15 + local.get $7 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $15 + local.get $7 i32.load - local.tee $4 + local.tee $16 i32.store local.get $0 - local.get $15 + local.get $7 i32.load offset=4 i32.store offset=4 local.get $0 - local.get $4 + local.get $16 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14637,35 +14658,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $16 i32.const 15 i32.shr_u - local.get $4 + local.get $16 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $16 i32.const 13 i32.shr_u - local.get $4 + local.get $16 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $16 i32.const 16 i32.shr_u - local.get $4 + local.get $16 i32.xor - local.get $6 + local.get $9 i32.and i32.const 2 i32.shl - local.get $5 + local.get $8 i32.add - local.tee $4 + local.tee $16 i32.load i32.store offset=8 - local.get $4 + local.get $16 local.get $0 i32.store local.get $0 @@ -14673,39 +14694,39 @@ i32.add local.set $0 end - local.get $15 + local.get $7 i32.const 12 i32.add - local.set $15 + local.set $7 br $while-continue|017 end end - local.get $9 local.get $5 + local.get $8 i32.store - local.get $5 + local.get $8 if - local.get $9 local.get $5 + local.get $8 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $5 local.get $9 - local.get $6 i32.store offset=4 - local.get $9 - local.get $1 + local.get $5 + local.get $2 i32.store offset=8 - local.get $1 + local.get $2 if - local.get $9 - local.get $1 + local.get $5 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 - local.get $12 + local.get $5 + local.get $14 i32.store offset=12 - local.get $9 - local.get $9 + local.get $5 + local.get $5 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -14714,70 +14735,70 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $5 i32.load offset=8 - local.tee $1 + local.tee $0 i32.store - local.get $9 - local.get $9 + local.get $5 + local.get $5 i32.load offset=16 - local.tee $0 + local.tee $2 i32.const 1 i32.add i32.store offset=16 - local.get $0 + local.get $2 i32.const 12 i32.mul - local.get $1 + local.get $0 i32.add - local.tee $1 - local.get $2 + local.tee $0 + local.get $1 i32.store + local.get $0 local.get $1 - local.get $2 i32.store offset=4 - local.get $9 - local.get $9 + local.get $5 + local.get $5 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $1 - local.get $9 + local.get $0 + local.get $5 i32.load - local.get $9 + local.get $5 i32.load offset=4 local.get $13 i32.and i32.const 2 i32.shl i32.add - local.tee $0 + local.tee $1 i32.load i32.store offset=8 - local.get $0 local.get $1 + local.get $0 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $7 + local.get $10 + local.get $11 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $16 + local.get $6 i32.const 1 i32.add - local.set $16 + local.set $6 br $for-loop|2 end end - local.get $9 + local.get $5 i32.load offset=20 i32.const 100 i32.ne @@ -14789,7 +14810,7 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -14802,17 +14823,17 @@ unreachable end i32.const 0 - local.set $16 + local.set $6 loop $for-loop|3 - local.get $16 + local.get $6 i32.const 50 i32.lt_u if - local.get $10 + local.get $4 i32.load - local.get $10 + local.get $4 i32.load offset=4 - local.get $16 + local.get $6 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14845,12 +14866,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/map/Map#find19 loop $while-continue|020 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=8 local.tee $0 i32.const 1 @@ -14858,8 +14879,8 @@ if (result i32) i32.const 0 else - local.get $16 - local.get $3 + local.get $6 + local.get $2 i32.load i32.eq end @@ -14867,14 +14888,14 @@ local.get $0 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|020 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -14884,10 +14905,10 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $16 + local.get $4 + local.get $6 call $~lib/map/Map#get - local.get $16 + local.get $6 i32.const 20 i32.add i32.ne @@ -14899,14 +14920,14 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $16 + local.get $4 + local.get $6 call $~lib/map/Map#delete - local.get $10 + local.get $4 i32.load - local.get $10 + local.get $4 i32.load offset=4 - local.get $16 + local.get $6 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14939,12 +14960,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/map/Map#find22 loop $while-continue|023 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=8 local.tee $0 i32.const 1 @@ -14952,8 +14973,8 @@ if (result i32) i32.const 0 else - local.get $16 - local.get $3 + local.get $6 + local.get $2 i32.load i32.eq end @@ -14961,14 +14982,14 @@ local.get $0 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|023 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 if i32.const 0 i32.const 1568 @@ -14977,14 +14998,14 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $6 i32.const 1 i32.add - local.set $16 + local.set $6 br $for-loop|3 end end - local.get $10 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -14997,17 +15018,17 @@ unreachable end i32.const 0 - local.set $16 + local.set $6 loop $for-loop|4 - local.get $16 + local.get $6 i32.const 50 i32.lt_u if - local.get $10 + local.get $4 i32.load - local.get $10 + local.get $4 i32.load offset=4 - local.get $16 + local.get $6 i32.const -1028477379 i32.mul i32.const 374761397 @@ -15040,12 +15061,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/map/Map#find25 loop $while-continue|026 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=8 local.tee $0 i32.const 1 @@ -15053,8 +15074,8 @@ if (result i32) i32.const 0 else - local.get $16 - local.get $3 + local.get $6 + local.get $2 i32.load i32.eq end @@ -15062,14 +15083,14 @@ local.get $0 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|026 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 if i32.const 0 i32.const 1568 @@ -15078,17 +15099,17 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $16 - local.get $16 + local.get $4 + local.get $6 + local.get $6 i32.const 10 i32.add call $~lib/map/Map#set - local.get $10 + local.get $4 i32.load - local.get $10 + local.get $4 i32.load offset=4 - local.get $16 + local.get $6 i32.const -1028477379 i32.mul i32.const 374761397 @@ -15121,12 +15142,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/map/Map#find28 loop $while-continue|029 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=8 local.tee $0 i32.const 1 @@ -15134,8 +15155,8 @@ if (result i32) i32.const 0 else - local.get $16 - local.get $3 + local.get $6 + local.get $2 i32.load i32.eq end @@ -15143,14 +15164,14 @@ local.get $0 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|029 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -15160,14 +15181,14 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $16 + local.get $4 + local.get $6 call $~lib/map/Map#delete - local.get $10 + local.get $4 i32.load - local.get $10 + local.get $4 i32.load offset=4 - local.get $16 + local.get $6 i32.const -1028477379 i32.mul i32.const 374761397 @@ -15200,12 +15221,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/map/Map#find31 loop $while-continue|032 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=8 local.tee $0 i32.const 1 @@ -15213,8 +15234,8 @@ if (result i32) i32.const 0 else - local.get $16 - local.get $3 + local.get $6 + local.get $2 i32.load i32.eq end @@ -15222,14 +15243,14 @@ local.get $0 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|032 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 if i32.const 0 i32.const 1568 @@ -15238,14 +15259,14 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $6 i32.const 1 i32.add - local.set $16 + local.set $6 br $for-loop|4 end end - local.get $10 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -15257,9 +15278,9 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $4 call $~lib/map/Map#clear - local.get $10 + local.get $4 i32.load offset=20 if i32.const 0 @@ -15402,7 +15423,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -15410,7 +15431,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -15418,13 +15439,13 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $8 + local.tee $4 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $4 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 @@ -15432,19 +15453,19 @@ local.get $8 i32.ne if - local.get $8 + local.get $4 i32.load offset=12 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $8 + local.get $4 i64.load local.tee $6 i64.store local.get $2 - local.get $8 + local.get $4 i32.load offset=8 i32.store offset=8 local.get $2 @@ -15492,7 +15513,7 @@ i32.and i32.const 2 i32.shl - local.get $7 + local.get $5 i32.add local.tee $9 i32.load @@ -15505,20 +15526,20 @@ i32.add local.set $2 end - local.get $8 + local.get $4 i32.const 16 i32.add - local.set $8 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $7 + local.get $5 i32.store - local.get $7 + local.get $5 if local.get $0 - local.get $7 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -15534,7 +15555,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -15851,19 +15872,19 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i32) + (local $3 i64) (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i64) + (local $7 i32) (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) + (local $12 i64) (local $13 i32) (local $14 i32) - (local $15 i64) + (local $15 i32) (local $16 i32) (local $17 i32) global.get $~lib/memory/__stack_pointer @@ -15876,16 +15897,16 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i64.const 0 i64.store offset=8 - local.get $2 + local.get $1 i32.const 0 i32.store offset=16 - local.get $2 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -15894,63 +15915,63 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.const 20 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $4 i32.store - local.get $11 + local.get $4 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if - local.get $11 - local.get $1 + local.get $4 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $4 i32.const 3 i32.store offset=4 - local.get $11 + local.get $4 i32.const 64 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=8 - local.get $1 + local.get $2 if - local.get $11 - local.get $1 + local.get $4 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $4 i32.const 4 i32.store offset=12 - local.get $11 + local.get $4 i32.const 0 i32.store offset=16 - local.get $11 + local.get $4 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 - local.get $11 + local.get $1 + local.get $4 i32.store loop $for-loop|0 - local.get $7 + local.get $3 i64.const 100 i64.lt_s if - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -15960,15 +15981,15 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 - local.get $7 + local.get $4 + local.get $3 + local.get $3 i32.wrap_i64 i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -15979,10 +16000,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $7 + local.get $3 i32.wrap_i64 i32.const 10 i32.add @@ -15995,14 +16016,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $3 i64.const 1 i64.add - local.set $7 + local.set $3 br $for-loop|0 end end - local.get $11 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -16015,14 +16036,14 @@ unreachable end i64.const 0 - local.set $7 + local.set $3 loop $for-loop|1 - local.get $7 + local.get $3 i64.const 100 i64.lt_s if - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -16033,10 +16054,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $7 + local.get $3 i32.wrap_i64 i32.const 10 i32.add @@ -16049,15 +16070,15 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 - local.get $7 + local.get $4 + local.get $3 + local.get $3 i32.wrap_i64 i32.const 20 i32.add call $~lib/map/Map#set - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -16068,10 +16089,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $7 + local.get $3 i32.wrap_i64 i32.const 20 i32.add @@ -16084,14 +16105,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $3 i64.const 1 i64.add - local.set $7 + local.set $3 br $for-loop|1 end end - local.get $11 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -16117,13 +16138,13 @@ local.tee $8 i32.const 0 i32.store - local.get $11 + local.get $4 i32.load offset=8 - local.set $6 - local.get $11 + local.set $11 + local.get $4 i32.load offset=16 - local.tee $5 - local.set $4 + local.tee $13 + local.set $5 local.get $8 i32.const 8 i32.sub @@ -16140,21 +16161,21 @@ i32.const 16 i32.const 21 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 0 i32.store offset=4 - local.get $2 + local.get $1 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 0 i32.store offset=12 - local.get $4 + local.get $5 i32.const 134217727 i32.gt_u if @@ -16166,66 +16187,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 8 - local.get $4 + local.get $5 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $3 + local.tee $9 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $1 - local.get $3 - call $~lib/memory/memory.fill local.get $2 + local.get $9 + call $~lib/memory/memory.fill local.get $1 + local.get $2 i32.store - local.get $1 + local.get $2 if - local.get $2 local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 local.get $1 - i32.store offset=4 local.get $2 - local.get $3 + i32.store offset=4 + local.get $1 + local.get $9 i32.store offset=8 - local.get $2 - local.get $4 + local.get $1 + local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $8 - local.get $2 + local.get $1 i32.store loop $for-loop|01 - local.get $5 - local.get $10 - i32.gt_s + local.get $6 + local.get $13 + i32.lt_s if - local.get $10 + local.get $6 i32.const 4 i32.shl - local.get $6 + local.get $11 i32.add - local.tee $1 + local.tee $2 i32.load offset=12 i32.const 1 i32.and i32.eqz if - local.get $2 - local.get $0 local.get $1 + local.get $0 + local.get $2 i64.load call $~lib/array/Array#__set local.get $0 @@ -16233,31 +16254,31 @@ i32.add local.set $0 end - local.get $10 + local.get $6 i32.const 1 i32.add - local.set $10 + local.set $6 br $for-loop|01 end end - local.get $2 + local.get $1 local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $2 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $4 call $~lib/map/Map#values - local.tee $10 + local.tee $13 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -16276,61 +16297,61 @@ i32.const 24 i32.const 22 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $5 i32.store - local.get $9 + local.get $5 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store local.get $0 if - local.get $9 + local.get $5 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 + local.get $5 i32.const 3 i32.store offset=4 - local.get $9 + local.get $5 i32.const 96 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store offset=8 local.get $0 if - local.get $9 + local.get $5 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 + local.get $5 i32.const 4 i32.store offset=12 - local.get $9 + local.get $5 i32.const 0 i32.store offset=16 - local.get $9 + local.get $5 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 + local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $8 + local.tee $10 i32.store offset=16 loop $for-loop|2 - local.get $2 + local.get $1 i32.load offset=12 - local.get $16 + local.get $7 i32.gt_s if - local.get $2 + local.get $1 i32.load offset=12 - local.get $16 + local.get $7 i32.le_u if i32.const 1248 @@ -16340,20 +16361,20 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.load offset=4 - local.get $16 + local.get $7 i32.const 3 i32.shl i32.add i64.load - local.set $7 - local.get $10 - local.get $16 - call $~lib/array/Array#__get - local.set $6 - local.get $11 + local.set $3 + local.get $13 local.get $7 + call $~lib/array/Array#__get + local.set $11 + local.get $4 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -16364,8 +16385,8 @@ call $~lib/builtins/abort unreachable end + local.get $4 local.get $11 - local.get $6 i32.const 20 i32.sub i64.extend_i32_s @@ -16390,9 +16411,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $9 + local.get $5 i32.load - local.get $7 + local.get $3 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -16402,7 +16423,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $7 + local.get $3 i64.const 32 i64.shr_u i32.wrap_i64 @@ -16433,7 +16454,7 @@ local.get $0 i32.xor local.tee $14 - local.get $9 + local.get $5 i32.load offset=4 i32.and i32.const 2 @@ -16447,19 +16468,19 @@ if local.get $0 i32.load offset=16 - local.tee $1 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $7 + local.get $3 local.get $0 i64.load i64.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $1 + local.get $2 i32.const -2 i32.and local.set $0 @@ -16472,18 +16493,18 @@ local.get $0 if local.get $0 - local.get $7 + local.get $3 i64.store offset=8 else - local.get $9 + local.get $5 i32.load offset=16 - local.get $9 + local.get $5 i32.load offset=12 i32.eq if - local.get $9 + local.get $5 i32.load offset=20 - local.get $9 + local.get $5 i32.load offset=12 i32.const 3 i32.mul @@ -16491,17 +16512,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $9 + local.get $5 i32.load offset=4 else - local.get $9 + local.get $5 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $5 + local.set $9 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -16515,14 +16536,14 @@ i64.const 0 i64.store local.get $0 - local.get $5 + local.get $9 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $4 + local.tee $8 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -16530,46 +16551,46 @@ i32.shl i32.const 3 i32.div_s - local.tee $13 + local.tee $15 i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $9 + local.get $5 i32.load offset=8 - local.tee $17 - local.get $9 + local.tee $6 + local.get $5 i32.load offset=16 i32.const 24 i32.mul i32.add - local.set $12 - local.get $1 + local.set $16 + local.get $2 local.set $0 loop $while-continue|00 - local.get $12 - local.get $17 + local.get $6 + local.get $16 i32.ne if - local.get $17 + local.get $6 i32.load offset=16 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $17 + local.get $6 i64.load - local.tee $15 + local.tee $12 i64.store local.get $0 - local.get $17 + local.get $6 i64.load offset=8 i64.store offset=8 local.get $0 - local.get $5 - local.get $15 + local.get $9 + local.get $12 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -16579,7 +16600,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $15 + local.get $12 i64.const 32 i64.shr_u i32.wrap_i64 @@ -16590,34 +16611,34 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $17 i32.const 15 i32.shr_u - local.get $3 + local.get $17 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $17 i32.const 13 i32.shr_u - local.get $3 + local.get $17 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $17 i32.const 16 i32.shr_u - local.get $3 + local.get $17 i32.xor i32.and i32.const 2 i32.shl - local.get $4 + local.get $8 i32.add - local.tee $3 + local.tee $17 i32.load i32.store offset=16 - local.get $3 + local.get $17 local.get $0 i32.store local.get $0 @@ -16625,39 +16646,39 @@ i32.add local.set $0 end - local.get $17 + local.get $6 i32.const 24 i32.add - local.set $17 + local.set $6 br $while-continue|00 end end - local.get $9 - local.get $4 + local.get $5 + local.get $8 i32.store - local.get $4 + local.get $8 if - local.get $9 - local.get $4 + local.get $5 + local.get $8 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 local.get $5 - i32.store offset=4 local.get $9 - local.get $1 + i32.store offset=4 + local.get $5 + local.get $2 i32.store offset=8 - local.get $1 + local.get $2 if - local.get $9 - local.get $1 + local.get $5 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 - local.get $13 + local.get $5 + local.get $15 i32.store offset=12 - local.get $9 - local.get $9 + local.get $5 + local.get $5 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -16666,70 +16687,70 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $5 i32.load offset=8 - local.tee $1 + local.tee $0 i32.store - local.get $9 - local.get $9 + local.get $5 + local.get $5 i32.load offset=16 - local.tee $0 + local.tee $2 i32.const 1 i32.add i32.store offset=16 - local.get $0 + local.get $2 i32.const 24 i32.mul - local.get $1 + local.get $0 i32.add - local.tee $1 - local.get $7 + local.tee $0 + local.get $3 i64.store - local.get $1 - local.get $7 + local.get $0 + local.get $3 i64.store offset=8 - local.get $9 - local.get $9 + local.get $5 + local.get $5 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $1 - local.get $9 + local.get $0 + local.get $5 i32.load - local.get $9 + local.get $5 i32.load offset=4 local.get $14 i32.and i32.const 2 i32.shl i32.add - local.tee $0 + local.tee $2 i32.load i32.store offset=16 + local.get $2 local.get $0 - local.get $1 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $6 + local.get $10 + local.get $11 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $16 + local.get $7 i32.const 1 i32.add - local.set $16 + local.set $7 br $for-loop|2 end end - local.get $9 + local.get $5 i32.load offset=20 i32.const 100 i32.ne @@ -16741,7 +16762,7 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -16754,14 +16775,14 @@ unreachable end i64.const 0 - local.set $7 + local.set $3 loop $for-loop|3 - local.get $7 + local.get $3 i64.const 50 i64.lt_s if - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -16772,10 +16793,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $7 + local.get $3 i32.wrap_i64 i32.const 20 i32.add @@ -16788,11 +16809,11 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#delete - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -16802,14 +16823,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $3 i64.const 1 i64.add - local.set $7 + local.set $3 br $for-loop|3 end end - local.get $11 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -16822,14 +16843,14 @@ unreachable end i64.const 0 - local.set $7 + local.set $3 loop $for-loop|4 - local.get $7 + local.get $3 i64.const 50 i64.lt_s if - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -16839,15 +16860,15 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 - local.get $7 + local.get $4 + local.get $3 + local.get $3 i32.wrap_i64 i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -16858,11 +16879,11 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#delete - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -16872,14 +16893,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $3 i64.const 1 i64.add - local.set $7 + local.set $3 br $for-loop|4 end end - local.get $11 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -16891,9 +16912,9 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $4 call $~lib/map/Map#clear - local.get $11 + local.get $4 i32.load offset=20 if i32.const 0 @@ -17036,7 +17057,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -17044,7 +17065,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -17052,13 +17073,13 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $8 + local.tee $4 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $4 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 @@ -17066,19 +17087,19 @@ local.get $8 i32.ne if - local.get $8 + local.get $4 i32.load offset=12 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $8 + local.get $4 i64.load local.tee $6 i64.store local.get $2 - local.get $8 + local.get $4 i32.load offset=8 i32.store offset=8 local.get $2 @@ -17126,7 +17147,7 @@ i32.and i32.const 2 i32.shl - local.get $7 + local.get $5 i32.add local.tee $9 i32.load @@ -17139,20 +17160,20 @@ i32.add local.set $2 end - local.get $8 + local.get $4 i32.const 16 i32.add - local.set $8 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $7 + local.get $5 i32.store - local.get $7 + local.get $5 if local.get $0 - local.get $7 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -17168,7 +17189,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -17409,19 +17430,19 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i32) + (local $3 i64) (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i64) + (local $7 i32) (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) + (local $12 i64) (local $13 i32) (local $14 i32) - (local $15 i64) + (local $15 i32) (local $16 i32) (local $17 i32) global.get $~lib/memory/__stack_pointer @@ -17434,16 +17455,16 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i64.const 0 i64.store offset=8 - local.get $2 + local.get $1 i32.const 0 i32.store offset=16 - local.get $2 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -17452,63 +17473,63 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.const 23 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $4 i32.store - local.get $11 + local.get $4 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if - local.get $11 - local.get $1 + local.get $4 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $4 i32.const 3 i32.store offset=4 - local.get $11 + local.get $4 i32.const 64 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=8 - local.get $1 + local.get $2 if - local.get $11 - local.get $1 + local.get $4 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $4 i32.const 4 i32.store offset=12 - local.get $11 + local.get $4 i32.const 0 i32.store offset=16 - local.get $11 + local.get $4 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 - local.get $11 + local.get $1 + local.get $4 i32.store loop $for-loop|0 - local.get $7 + local.get $3 i64.const 100 i64.lt_u if - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -17518,15 +17539,15 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 - local.get $7 + local.get $4 + local.get $3 + local.get $3 i32.wrap_i64 i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -17537,10 +17558,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $7 + local.get $3 i32.wrap_i64 i32.const 10 i32.add @@ -17553,14 +17574,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $3 i64.const 1 i64.add - local.set $7 + local.set $3 br $for-loop|0 end end - local.get $11 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -17573,14 +17594,14 @@ unreachable end i64.const 0 - local.set $7 + local.set $3 loop $for-loop|1 - local.get $7 + local.get $3 i64.const 100 i64.lt_u if - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -17591,10 +17612,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $7 + local.get $3 i32.wrap_i64 i32.const 10 i32.add @@ -17607,15 +17628,15 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 - local.get $7 + local.get $4 + local.get $3 + local.get $3 i32.wrap_i64 i32.const 20 i32.add call $~lib/map/Map#set - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -17626,10 +17647,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $7 + local.get $3 i32.wrap_i64 i32.const 20 i32.add @@ -17642,14 +17663,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $3 i64.const 1 i64.add - local.set $7 + local.set $3 br $for-loop|1 end end - local.get $11 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -17675,13 +17696,13 @@ local.tee $8 i32.const 0 i32.store - local.get $11 + local.get $4 i32.load offset=8 - local.set $6 - local.get $11 + local.set $11 + local.get $4 i32.load offset=16 - local.tee $5 - local.set $4 + local.tee $13 + local.set $5 local.get $8 i32.const 8 i32.sub @@ -17698,21 +17719,21 @@ i32.const 16 i32.const 24 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 0 i32.store offset=4 - local.get $2 + local.get $1 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 0 i32.store offset=12 - local.get $4 + local.get $5 i32.const 134217727 i32.gt_u if @@ -17724,66 +17745,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 8 - local.get $4 + local.get $5 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $3 + local.tee $9 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $1 - local.get $3 - call $~lib/memory/memory.fill local.get $2 + local.get $9 + call $~lib/memory/memory.fill local.get $1 + local.get $2 i32.store - local.get $1 + local.get $2 if - local.get $2 local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 local.get $1 - i32.store offset=4 local.get $2 - local.get $3 + i32.store offset=4 + local.get $1 + local.get $9 i32.store offset=8 - local.get $2 - local.get $4 + local.get $1 + local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $8 - local.get $2 + local.get $1 i32.store loop $for-loop|01 - local.get $5 - local.get $10 - i32.gt_s + local.get $6 + local.get $13 + i32.lt_s if - local.get $10 + local.get $6 i32.const 4 i32.shl - local.get $6 + local.get $11 i32.add - local.tee $1 + local.tee $2 i32.load offset=12 i32.const 1 i32.and i32.eqz if - local.get $2 - local.get $0 local.get $1 + local.get $0 + local.get $2 i64.load call $~lib/array/Array#__set local.get $0 @@ -17791,31 +17812,31 @@ i32.add local.set $0 end - local.get $10 + local.get $6 i32.const 1 i32.add - local.set $10 + local.set $6 br $for-loop|01 end end - local.get $2 + local.get $1 local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $2 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $4 call $~lib/map/Map#values - local.tee $10 + local.tee $13 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -17834,61 +17855,61 @@ i32.const 24 i32.const 25 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $5 i32.store - local.get $9 + local.get $5 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store local.get $0 if - local.get $9 + local.get $5 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 + local.get $5 i32.const 3 i32.store offset=4 - local.get $9 + local.get $5 i32.const 96 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store offset=8 local.get $0 if - local.get $9 + local.get $5 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 + local.get $5 i32.const 4 i32.store offset=12 - local.get $9 + local.get $5 i32.const 0 i32.store offset=16 - local.get $9 + local.get $5 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 + local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $8 + local.tee $10 i32.store offset=16 loop $for-loop|2 - local.get $2 + local.get $1 i32.load offset=12 - local.get $16 + local.get $7 i32.gt_s if - local.get $2 + local.get $1 i32.load offset=12 - local.get $16 + local.get $7 i32.le_u if i32.const 1248 @@ -17898,20 +17919,20 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.load offset=4 - local.get $16 + local.get $7 i32.const 3 i32.shl i32.add i64.load - local.set $7 - local.get $10 - local.get $16 - call $~lib/array/Array#__get - local.set $6 - local.get $11 + local.set $3 + local.get $13 local.get $7 + call $~lib/array/Array#__get + local.set $11 + local.get $4 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -17922,8 +17943,8 @@ call $~lib/builtins/abort unreachable end + local.get $4 local.get $11 - local.get $6 i32.const 20 i32.sub i64.extend_i32_s @@ -17948,9 +17969,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $9 + local.get $5 i32.load - local.get $7 + local.get $3 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -17960,7 +17981,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $7 + local.get $3 i64.const 32 i64.shr_u i32.wrap_i64 @@ -17991,7 +18012,7 @@ local.get $0 i32.xor local.tee $14 - local.get $9 + local.get $5 i32.load offset=4 i32.and i32.const 2 @@ -18005,19 +18026,19 @@ if local.get $0 i32.load offset=16 - local.tee $1 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $7 + local.get $3 local.get $0 i64.load i64.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $1 + local.get $2 i32.const -2 i32.and local.set $0 @@ -18030,18 +18051,18 @@ local.get $0 if local.get $0 - local.get $7 + local.get $3 i64.store offset=8 else - local.get $9 + local.get $5 i32.load offset=16 - local.get $9 + local.get $5 i32.load offset=12 i32.eq if - local.get $9 + local.get $5 i32.load offset=20 - local.get $9 + local.get $5 i32.load offset=12 i32.const 3 i32.mul @@ -18049,17 +18070,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $9 + local.get $5 i32.load offset=4 else - local.get $9 + local.get $5 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $5 + local.set $9 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -18073,14 +18094,14 @@ i64.const 0 i64.store local.get $0 - local.get $5 + local.get $9 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $4 + local.tee $8 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -18088,46 +18109,46 @@ i32.shl i32.const 3 i32.div_s - local.tee $13 + local.tee $15 i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $9 + local.get $5 i32.load offset=8 - local.tee $17 - local.get $9 + local.tee $6 + local.get $5 i32.load offset=16 i32.const 24 i32.mul i32.add - local.set $12 - local.get $1 + local.set $16 + local.get $2 local.set $0 loop $while-continue|00 - local.get $12 - local.get $17 + local.get $6 + local.get $16 i32.ne if - local.get $17 + local.get $6 i32.load offset=16 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $17 + local.get $6 i64.load - local.tee $15 + local.tee $12 i64.store local.get $0 - local.get $17 + local.get $6 i64.load offset=8 i64.store offset=8 local.get $0 - local.get $5 - local.get $15 + local.get $9 + local.get $12 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -18137,7 +18158,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $15 + local.get $12 i64.const 32 i64.shr_u i32.wrap_i64 @@ -18148,34 +18169,34 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $17 i32.const 15 i32.shr_u - local.get $3 + local.get $17 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $17 i32.const 13 i32.shr_u - local.get $3 + local.get $17 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $17 i32.const 16 i32.shr_u - local.get $3 + local.get $17 i32.xor i32.and i32.const 2 i32.shl - local.get $4 + local.get $8 i32.add - local.tee $3 + local.tee $17 i32.load i32.store offset=16 - local.get $3 + local.get $17 local.get $0 i32.store local.get $0 @@ -18183,39 +18204,39 @@ i32.add local.set $0 end - local.get $17 + local.get $6 i32.const 24 i32.add - local.set $17 + local.set $6 br $while-continue|00 end end - local.get $9 - local.get $4 + local.get $5 + local.get $8 i32.store - local.get $4 + local.get $8 if - local.get $9 - local.get $4 + local.get $5 + local.get $8 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 local.get $5 - i32.store offset=4 local.get $9 - local.get $1 + i32.store offset=4 + local.get $5 + local.get $2 i32.store offset=8 - local.get $1 + local.get $2 if - local.get $9 - local.get $1 + local.get $5 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 - local.get $13 + local.get $5 + local.get $15 i32.store offset=12 - local.get $9 - local.get $9 + local.get $5 + local.get $5 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -18224,70 +18245,70 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $5 i32.load offset=8 - local.tee $1 + local.tee $0 i32.store - local.get $9 - local.get $9 + local.get $5 + local.get $5 i32.load offset=16 - local.tee $0 + local.tee $2 i32.const 1 i32.add i32.store offset=16 - local.get $0 + local.get $2 i32.const 24 i32.mul - local.get $1 + local.get $0 i32.add - local.tee $1 - local.get $7 + local.tee $0 + local.get $3 i64.store - local.get $1 - local.get $7 + local.get $0 + local.get $3 i64.store offset=8 - local.get $9 - local.get $9 + local.get $5 + local.get $5 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $1 - local.get $9 + local.get $0 + local.get $5 i32.load - local.get $9 + local.get $5 i32.load offset=4 local.get $14 i32.and i32.const 2 i32.shl i32.add - local.tee $0 + local.tee $2 i32.load i32.store offset=16 + local.get $2 local.get $0 - local.get $1 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $6 + local.get $10 + local.get $11 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $16 + local.get $7 i32.const 1 i32.add - local.set $16 + local.set $7 br $for-loop|2 end end - local.get $9 + local.get $5 i32.load offset=20 i32.const 100 i32.ne @@ -18299,7 +18320,7 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -18312,14 +18333,14 @@ unreachable end i64.const 0 - local.set $7 + local.set $3 loop $for-loop|3 - local.get $7 + local.get $3 i64.const 50 i64.lt_u if - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -18330,10 +18351,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $7 + local.get $3 i32.wrap_i64 i32.const 20 i32.add @@ -18346,11 +18367,11 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#delete - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -18360,14 +18381,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $3 i64.const 1 i64.add - local.set $7 + local.set $3 br $for-loop|3 end end - local.get $11 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -18380,14 +18401,14 @@ unreachable end i64.const 0 - local.set $7 + local.set $3 loop $for-loop|4 - local.get $7 + local.get $3 i64.const 50 i64.lt_u if - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -18397,15 +18418,15 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 - local.get $7 + local.get $4 + local.get $3 + local.get $3 i32.wrap_i64 i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -18416,11 +18437,11 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#delete - local.get $11 - local.get $7 + local.get $4 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -18430,14 +18451,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $3 i64.const 1 i64.add - local.set $7 + local.set $3 br $for-loop|4 end end - local.get $11 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -18449,9 +18470,9 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $4 call $~lib/map/Map#clear - local.get $11 + local.get $4 i32.load offset=20 if i32.const 0 @@ -18477,11 +18498,11 @@ (func $~lib/map/Map#rehash (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 f32) + (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 f32) (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -18510,7 +18531,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -18526,37 +18547,37 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $8 + local.tee $4 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $5 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 - local.get $5 - local.get $8 + local.get $4 + local.get $7 i32.ne if - local.get $8 + local.get $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $8 + local.get $4 f32.load - local.tee $4 + local.tee $8 f32.store local.get $2 - local.get $8 + local.get $4 i32.load offset=4 i32.store offset=4 local.get $2 - local.get $4 + local.get $8 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -18589,7 +18610,7 @@ i32.and i32.const 2 i32.shl - local.get $7 + local.get $5 i32.add local.tee $9 i32.load @@ -18602,20 +18623,20 @@ i32.add local.set $2 end - local.get $8 + local.get $4 i32.const 12 i32.add - local.set $8 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $7 + local.get $5 i32.store - local.get $7 + local.get $5 if local.get $0 - local.get $7 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -18851,17 +18872,17 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) + (local $4 f32) (local $5 i32) - (local $6 f32) + (local $6 i32) (local $7 i32) (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) - (local $14 f32) + (local $13 f32) + (local $14 i32) (local $15 i32) (local $16 i32) (local $17 i32) @@ -18900,40 +18921,40 @@ i32.const 24 i32.const 26 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $3 i32.store - local.get $9 + local.get $3 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $2 i32.store local.get $2 if - local.get $9 + local.get $3 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 + local.get $3 i32.const 3 i32.store offset=4 - local.get $9 + local.get $3 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $2 i32.store offset=8 local.get $2 if - local.get $9 + local.get $3 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 + local.get $3 i32.const 4 i32.store offset=12 - local.get $9 + local.get $3 i32.const 0 i32.store offset=16 - local.get $9 + local.get $3 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer @@ -18941,18 +18962,18 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $1 - local.get $9 + local.get $3 i32.store loop $for-loop|0 - local.get $6 + local.get $4 f32.const 100 f32.lt if - local.get $9 + local.get $3 i32.load - local.get $9 + local.get $3 i32.load offset=4 - local.get $6 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -18999,7 +19020,7 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $4 local.get $1 f32.load f32.eq @@ -19024,18 +19045,18 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $6 - local.get $6 + local.get $3 + local.get $4 + local.get $4 i32.trunc_f32_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $9 + local.get $3 i32.load - local.get $9 + local.get $3 i32.load offset=4 - local.get $6 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19082,7 +19103,7 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $4 local.get $1 f32.load f32.eq @@ -19108,10 +19129,10 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $6 + local.get $3 + local.get $4 call $~lib/map/Map#get - local.get $6 + local.get $4 i32.trunc_f32_s i32.const 10 i32.add @@ -19124,14 +19145,14 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $4 f32.const 1 f32.add - local.set $6 + local.set $4 br $for-loop|0 end end - local.get $9 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -19144,17 +19165,17 @@ unreachable end f32.const 0 - local.set $6 + local.set $4 loop $for-loop|1 - local.get $6 + local.get $4 f32.const 100 f32.lt if - local.get $9 + local.get $3 i32.load - local.get $9 + local.get $3 i32.load offset=4 - local.get $6 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19201,7 +19222,7 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $4 local.get $1 f32.load f32.eq @@ -19227,10 +19248,10 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $6 + local.get $3 + local.get $4 call $~lib/map/Map#get - local.get $6 + local.get $4 i32.trunc_f32_s i32.const 10 i32.add @@ -19243,18 +19264,18 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $6 - local.get $6 + local.get $3 + local.get $4 + local.get $4 i32.trunc_f32_s i32.const 20 i32.add call $~lib/map/Map#set - local.get $9 + local.get $3 i32.load - local.get $9 + local.get $3 i32.load offset=4 - local.get $6 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19301,7 +19322,7 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $4 local.get $1 f32.load f32.eq @@ -19327,10 +19348,10 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $6 + local.get $3 + local.get $4 call $~lib/map/Map#get - local.get $6 + local.get $4 i32.trunc_f32_s i32.const 20 i32.add @@ -19343,14 +19364,14 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $4 f32.const 1 f32.add - local.set $6 + local.set $4 br $for-loop|1 end end - local.get $9 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -19373,17 +19394,17 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $8 i32.const 0 i32.store - local.get $9 + local.get $3 i32.load offset=8 - local.set $5 - local.get $9 + local.set $11 + local.get $3 i32.load offset=16 - local.tee $8 - local.set $10 - local.get $2 + local.tee $12 + local.set $5 + local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -19413,7 +19434,7 @@ local.get $1 i32.const 0 i32.store offset=12 - local.get $10 + local.get $5 i32.const 268435455 i32.gt_u if @@ -19425,58 +19446,58 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $5 i32.const 8 - local.get $10 + local.get $5 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $11 + local.tee $9 i32.const 0 call $~lib/rt/itcms/__new - local.tee $12 + local.tee $2 i32.store offset=4 - local.get $12 - local.get $11 + local.get $2 + local.get $9 call $~lib/memory/memory.fill local.get $1 - local.get $12 + local.get $2 i32.store - local.get $12 + local.get $2 if local.get $1 - local.get $12 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $1 - local.get $12 + local.get $2 i32.store offset=4 local.get $1 - local.get $11 + local.get $9 i32.store offset=8 local.get $1 - local.get $10 + local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $8 local.get $1 i32.store loop $for-loop|01 - local.get $3 - local.get $8 + local.get $6 + local.get $12 i32.lt_s if - local.get $3 + local.get $6 i32.const 12 i32.mul - local.get $5 + local.get $11 i32.add - local.tee $10 + local.tee $5 i32.load offset=8 i32.const 1 i32.and @@ -19487,9 +19508,9 @@ i32.const 1 i32.add local.set $0 - local.get $10 + local.get $5 f32.load - local.set $6 + local.set $4 local.get $1 i32.load offset=12 local.get $2 @@ -19510,12 +19531,12 @@ local.get $2 i32.const 1 i32.add - local.tee $10 + local.tee $5 i32.const 2 i32.const 1 call $~lib/array/ensureCapacity local.get $1 - local.get $10 + local.get $5 i32.store offset=12 end local.get $1 @@ -19524,13 +19545,13 @@ i32.const 2 i32.shl i32.add - local.get $6 + local.get $4 f32.store end - local.get $3 + local.get $6 i32.const 1 i32.add - local.set $3 + local.set $6 br $for-loop|01 end end @@ -19549,9 +19570,9 @@ local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $3 call $~lib/map/Map#values - local.tee $10 + local.tee $12 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -19563,58 +19584,58 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $0 i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.const 28 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $5 i32.store - local.get $11 + local.get $5 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 if - local.get $11 - local.get $2 + local.get $5 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $5 i32.const 3 i32.store offset=4 - local.get $11 + local.get $5 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $0 i32.store offset=8 - local.get $2 + local.get $0 if - local.get $11 - local.get $2 + local.get $5 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $5 i32.const 4 i32.store offset=12 - local.get $11 + local.get $5 i32.const 0 i32.store offset=16 - local.get $11 + local.get $5 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 + local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $12 + local.tee $10 i32.store offset=16 loop $for-loop|2 local.get $1 @@ -19641,16 +19662,16 @@ i32.shl i32.add f32.load - local.set $6 - local.get $10 + local.set $4 + local.get $12 local.get $7 call $~lib/array/Array#__get - local.set $13 - local.get $9 + local.set $11 + local.get $3 i32.load - local.get $9 + local.get $3 i32.load offset=4 - local.get $6 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19697,7 +19718,7 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $4 local.get $0 f32.load f32.eq @@ -19723,15 +19744,15 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $3 i32.load - local.get $9 + local.get $3 i32.load offset=4 - local.get $13 + local.get $11 i32.const 20 i32.sub f32.convert_i32_s - local.tee $14 + local.tee $13 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19778,7 +19799,7 @@ if (result i32) i32.const 0 else - local.get $14 + local.get $13 local.get $0 f32.load f32.eq @@ -19815,9 +19836,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $11 + local.get $5 i32.load - local.get $6 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19846,8 +19867,8 @@ i32.shr_u local.get $0 i32.xor - local.tee $5 - local.get $11 + local.tee $14 + local.get $5 i32.load offset=4 i32.and i32.const 2 @@ -19867,7 +19888,7 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $4 local.get $0 f32.load f32.eq @@ -19886,18 +19907,18 @@ local.get $0 if local.get $0 - local.get $6 + local.get $4 f32.store offset=4 else - local.get $11 + local.get $5 i32.load offset=16 - local.get $11 + local.get $5 i32.load offset=12 i32.eq if - local.get $11 + local.get $5 i32.load offset=20 - local.get $11 + local.get $5 i32.load offset=12 i32.const 3 i32.mul @@ -19905,17 +19926,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $11 + local.get $5 i32.load offset=4 else - local.get $11 + local.get $5 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $15 + local.set $9 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -19929,14 +19950,14 @@ i64.const 0 i64.store local.get $0 - local.get $15 + local.get $9 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $16 + local.tee $8 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -19944,45 +19965,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $4 + local.tee $15 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $2 i32.store offset=4 - local.get $11 + local.get $5 i32.load offset=8 - local.tee $8 - local.get $11 + local.tee $6 + local.get $5 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $3 + local.set $16 local.get $2 local.set $0 loop $while-continue|017 - local.get $3 - local.get $8 + local.get $6 + local.get $16 i32.ne if - local.get $8 + local.get $6 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $8 + local.get $6 f32.load - local.tee $14 + local.tee $13 f32.store local.get $0 - local.get $8 + local.get $6 f32.load offset=4 f32.store offset=4 local.get $0 - local.get $14 + local.get $13 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20011,11 +20032,11 @@ i32.shr_u local.get $17 i32.xor - local.get $15 + local.get $9 i32.and i32.const 2 i32.shl - local.get $16 + local.get $8 i32.add local.tee $17 i32.load @@ -20028,39 +20049,39 @@ i32.add local.set $0 end - local.get $8 + local.get $6 i32.const 12 i32.add - local.set $8 + local.set $6 br $while-continue|017 end end - local.get $11 - local.get $16 + local.get $5 + local.get $8 i32.store - local.get $16 + local.get $8 if - local.get $11 - local.get $16 + local.get $5 + local.get $8 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 - local.get $15 + local.get $5 + local.get $9 i32.store offset=4 - local.get $11 + local.get $5 local.get $2 i32.store offset=8 local.get $2 if - local.get $11 + local.get $5 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 - local.get $4 + local.get $5 + local.get $15 i32.store offset=12 - local.get $11 - local.get $11 + local.get $5 + local.get $5 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -20069,12 +20090,12 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $5 i32.load offset=8 local.tee $0 i32.store - local.get $11 - local.get $11 + local.get $5 + local.get $5 i32.load offset=16 local.tee $2 i32.const 1 @@ -20086,23 +20107,23 @@ local.get $0 i32.add local.tee $0 - local.get $6 + local.get $4 f32.store local.get $0 - local.get $6 + local.get $4 f32.store offset=4 - local.get $11 - local.get $11 + local.get $5 + local.get $5 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $11 + local.get $5 i32.load - local.get $11 - i32.load offset=4 local.get $5 + i32.load offset=4 + local.get $14 i32.and i32.const 2 i32.shl @@ -20118,8 +20139,8 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $12 - local.get $13 + local.get $10 + local.get $11 i32.const 20 i32.sub local.tee $0 @@ -20132,7 +20153,7 @@ br $for-loop|2 end end - local.get $11 + local.get $5 i32.load offset=20 i32.const 100 i32.ne @@ -20144,7 +20165,7 @@ call $~lib/builtins/abort unreachable end - local.get $12 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -20157,17 +20178,17 @@ unreachable end f32.const 0 - local.set $6 + local.set $4 loop $for-loop|3 - local.get $6 + local.get $4 f32.const 50 f32.lt if - local.get $9 + local.get $3 i32.load - local.get $9 + local.get $3 i32.load offset=4 - local.get $6 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20214,7 +20235,7 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $4 local.get $1 f32.load f32.eq @@ -20240,10 +20261,10 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $6 + local.get $3 + local.get $4 call $~lib/map/Map#get - local.get $6 + local.get $4 i32.trunc_f32_s i32.const 20 i32.add @@ -20256,14 +20277,14 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $6 + local.get $3 + local.get $4 call $~lib/map/Map#delete - local.get $9 + local.get $3 i32.load - local.get $9 + local.get $3 i32.load offset=4 - local.get $6 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20310,7 +20331,7 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $4 local.get $1 f32.load f32.eq @@ -20335,14 +20356,14 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $4 f32.const 1 f32.add - local.set $6 + local.set $4 br $for-loop|3 end end - local.get $9 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -20355,17 +20376,17 @@ unreachable end f32.const 0 - local.set $6 + local.set $4 loop $for-loop|4 - local.get $6 + local.get $4 f32.const 50 f32.lt if - local.get $9 + local.get $3 i32.load - local.get $9 + local.get $3 i32.load offset=4 - local.get $6 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20412,7 +20433,7 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $4 local.get $1 f32.load f32.eq @@ -20437,18 +20458,18 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $6 - local.get $6 + local.get $3 + local.get $4 + local.get $4 i32.trunc_f32_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $9 + local.get $3 i32.load - local.get $9 + local.get $3 i32.load offset=4 - local.get $6 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20495,7 +20516,7 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $4 local.get $1 f32.load f32.eq @@ -20521,14 +20542,14 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $6 + local.get $3 + local.get $4 call $~lib/map/Map#delete - local.get $9 + local.get $3 i32.load - local.get $9 + local.get $3 i32.load offset=4 - local.get $6 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20575,7 +20596,7 @@ if (result i32) i32.const 0 else - local.get $6 + local.get $4 local.get $1 f32.load f32.eq @@ -20600,14 +20621,14 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $4 f32.const 1 f32.add - local.set $6 + local.set $4 br $for-loop|4 end end - local.get $9 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -20619,9 +20640,9 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $3 call $~lib/map/Map#clear - local.get $9 + local.get $3 i32.load offset=20 if i32.const 0 @@ -20734,12 +20755,12 @@ (func $~lib/map/Map#rehash (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 i64) - (local $5 f64) + (local $4 i32) + (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) - (local $9 i32) + (local $8 f64) + (local $9 i64) (local $10 i32) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -20768,7 +20789,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $8 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -20776,7 +20797,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -20784,40 +20805,40 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $9 + local.tee $4 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $6 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 - local.get $6 - local.get $9 + local.get $4 + local.get $7 i32.ne if - local.get $9 + local.get $4 i32.load offset=12 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $9 + local.get $4 f64.load - local.tee $5 + local.tee $8 f64.store local.get $2 - local.get $9 + local.get $4 i32.load offset=8 i32.store offset=8 local.get $2 local.get $1 - local.get $5 + local.get $8 i64.reinterpret_f64 - local.tee $4 + local.tee $9 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -20827,7 +20848,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $4 + local.get $9 i64.const 32 i64.shr_u i32.wrap_i64 @@ -20860,7 +20881,7 @@ i32.and i32.const 2 i32.shl - local.get $8 + local.get $5 i32.add local.tee $10 i32.load @@ -20873,20 +20894,20 @@ i32.add local.set $2 end - local.get $9 + local.get $4 i32.const 16 i32.add - local.set $9 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $8 + local.get $5 i32.store - local.get $8 + local.get $5 if local.get $0 - local.get $8 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -20902,7 +20923,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -21153,17 +21174,17 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i64) + (local $7 i32) (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) - (local $14 f64) + (local $13 i64) + (local $14 i32) (local $15 i32) (local $16 i32) - (local $17 i32) + (local $17 f64) (local $18 i32) global.get $~lib/memory/__stack_pointer i32.const 20 @@ -21200,40 +21221,40 @@ i32.const 24 i32.const 29 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $4 i32.store - local.get $10 + local.get $4 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $2 i32.store local.get $2 if - local.get $10 + local.get $4 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $4 i32.const 3 i32.store offset=4 - local.get $10 + local.get $4 i32.const 64 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $2 i32.store offset=8 local.get $2 if - local.get $10 + local.get $4 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $4 i32.const 4 i32.store offset=12 - local.get $10 + local.get $4 i32.const 0 i32.store offset=16 - local.get $10 + local.get $4 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer @@ -21241,14 +21262,14 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $1 - local.get $10 + local.get $4 i32.store loop $for-loop|0 local.get $3 f64.const 100 f64.lt if - local.get $10 + local.get $4 local.get $3 call $~lib/map/Map#has if @@ -21259,14 +21280,14 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $4 local.get $3 local.get $3 i32.trunc_f64_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $10 + local.get $4 local.get $3 call $~lib/map/Map#has i32.eqz @@ -21278,7 +21299,7 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $4 local.get $3 call $~lib/map/Map#get local.get $3 @@ -21301,7 +21322,7 @@ br $for-loop|0 end end - local.get $10 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -21320,7 +21341,7 @@ f64.const 100 f64.lt if - local.get $10 + local.get $4 local.get $3 call $~lib/map/Map#has i32.eqz @@ -21332,7 +21353,7 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $4 local.get $3 call $~lib/map/Map#get local.get $3 @@ -21348,14 +21369,14 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $4 local.get $3 local.get $3 i32.trunc_f64_s i32.const 20 i32.add call $~lib/map/Map#set - local.get $10 + local.get $4 local.get $3 call $~lib/map/Map#has i32.eqz @@ -21367,7 +21388,7 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $4 local.get $3 call $~lib/map/Map#get local.get $3 @@ -21390,7 +21411,7 @@ br $for-loop|1 end end - local.get $10 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -21413,17 +21434,17 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $8 i32.const 0 i32.store - local.get $10 + local.get $4 i32.load offset=8 - local.set $6 - local.get $10 - i32.load offset=16 - local.tee $9 local.set $11 - local.get $2 + local.get $4 + i32.load offset=16 + local.tee $12 + local.set $5 + local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -21453,7 +21474,7 @@ local.get $1 i32.const 0 i32.store offset=12 - local.get $11 + local.get $5 i32.const 134217727 i32.gt_u if @@ -21465,58 +21486,58 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $5 i32.const 8 - local.get $11 + local.get $5 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $12 + local.tee $9 i32.const 0 call $~lib/rt/itcms/__new - local.tee $13 + local.tee $2 i32.store offset=4 - local.get $13 - local.get $12 + local.get $2 + local.get $9 call $~lib/memory/memory.fill local.get $1 - local.get $13 + local.get $2 i32.store - local.get $13 + local.get $2 if local.get $1 - local.get $13 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $1 - local.get $13 + local.get $2 i32.store offset=4 local.get $1 - local.get $12 + local.get $9 i32.store offset=8 local.get $1 - local.get $11 + local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $8 local.get $1 i32.store loop $for-loop|01 - local.get $4 - local.get $9 + local.get $6 + local.get $12 i32.lt_s if - local.get $4 + local.get $6 i32.const 4 i32.shl - local.get $6 + local.get $11 i32.add - local.tee $11 + local.tee $5 i32.load offset=12 i32.const 1 i32.and @@ -21527,7 +21548,7 @@ i32.const 1 i32.add local.set $0 - local.get $11 + local.get $5 f64.load local.set $3 local.get $1 @@ -21550,12 +21571,12 @@ local.get $2 i32.const 1 i32.add - local.tee $11 + local.tee $5 i32.const 3 i32.const 1 call $~lib/array/ensureCapacity local.get $1 - local.get $11 + local.get $5 i32.store offset=12 end local.get $1 @@ -21567,10 +21588,10 @@ local.get $3 f64.store end - local.get $4 + local.get $6 i32.const 1 i32.add - local.set $4 + local.set $6 br $for-loop|01 end end @@ -21589,9 +21610,9 @@ local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $4 call $~lib/map/Map#values - local.tee $11 + local.tee $12 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -21603,68 +21624,68 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $0 i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.const 31 call $~lib/rt/itcms/__new - local.tee $12 + local.tee $5 i32.store - local.get $12 + local.get $5 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 if - local.get $12 - local.get $2 + local.get $5 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $12 + local.get $5 i32.const 3 i32.store offset=4 - local.get $12 + local.get $5 i32.const 96 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $0 i32.store offset=8 - local.get $2 + local.get $0 if - local.get $12 - local.get $2 + local.get $5 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $12 + local.get $5 i32.const 4 i32.store offset=12 - local.get $12 + local.get $5 i32.const 0 i32.store offset=16 - local.get $12 + local.get $5 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $12 + local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $13 + local.tee $10 i32.store offset=16 loop $for-loop|2 local.get $1 i32.load offset=12 - local.get $8 + local.get $7 i32.gt_s if local.get $1 i32.load offset=12 - local.get $8 + local.get $7 i32.le_u if i32.const 1248 @@ -21676,18 +21697,18 @@ end local.get $1 i32.load offset=4 - local.get $8 + local.get $7 i32.const 3 i32.shl i32.add f64.load - local.set $14 - local.get $11 - local.get $8 + local.set $3 + local.get $12 + local.get $7 call $~lib/array/Array#__get - local.set $15 - local.get $10 - local.get $14 + local.set $11 + local.get $4 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -21698,8 +21719,8 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $15 + local.get $4 + local.get $11 i32.const 20 i32.sub f64.convert_i32_s @@ -21724,11 +21745,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $12 + local.get $5 i32.load - local.get $14 + local.get $3 i64.reinterpret_f64 - local.tee $7 + local.tee $13 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -21738,7 +21759,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $7 + local.get $13 i64.const 32 i64.shr_u i32.wrap_i64 @@ -21768,8 +21789,8 @@ i32.shr_u local.get $0 i32.xor - local.tee $6 - local.get $12 + local.tee $14 + local.get $5 i32.load offset=4 i32.and i32.const 2 @@ -21789,7 +21810,7 @@ if (result i32) i32.const 0 else - local.get $14 + local.get $3 local.get $0 f64.load f64.eq @@ -21808,18 +21829,18 @@ local.get $0 if local.get $0 - local.get $14 + local.get $3 f64.store offset=8 else - local.get $12 + local.get $5 i32.load offset=16 - local.get $12 + local.get $5 i32.load offset=12 i32.eq if - local.get $12 + local.get $5 i32.load offset=20 - local.get $12 + local.get $5 i32.load offset=12 i32.const 3 i32.mul @@ -21827,17 +21848,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $12 + local.get $5 i32.load offset=4 else - local.get $12 + local.get $5 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $16 + local.set $9 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -21851,14 +21872,14 @@ i64.const 0 i64.store local.get $0 - local.get $16 + local.get $9 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $17 + local.tee $8 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -21866,48 +21887,48 @@ i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $15 i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $2 i32.store offset=4 - local.get $12 + local.get $5 i32.load offset=8 - local.tee $9 - local.get $12 + local.tee $6 + local.get $5 i32.load offset=16 i32.const 24 i32.mul i32.add - local.set $4 + local.set $16 local.get $2 local.set $0 loop $while-continue|00 - local.get $4 - local.get $9 + local.get $6 + local.get $16 i32.ne if - local.get $9 + local.get $6 i32.load offset=16 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $9 + local.get $6 f64.load - local.tee $3 + local.tee $17 f64.store local.get $0 - local.get $9 + local.get $6 f64.load offset=8 f64.store offset=8 local.get $0 - local.get $16 - local.get $3 + local.get $9 + local.get $17 i64.reinterpret_f64 - local.tee $7 + local.tee $13 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -21917,7 +21938,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $7 + local.get $13 i64.const 32 i64.shr_u i32.wrap_i64 @@ -21950,7 +21971,7 @@ i32.and i32.const 2 i32.shl - local.get $17 + local.get $8 i32.add local.tee $18 i32.load @@ -21963,39 +21984,39 @@ i32.add local.set $0 end - local.get $9 + local.get $6 i32.const 24 i32.add - local.set $9 + local.set $6 br $while-continue|00 end end - local.get $12 - local.get $17 + local.get $5 + local.get $8 i32.store - local.get $17 + local.get $8 if - local.get $12 - local.get $17 + local.get $5 + local.get $8 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $12 - local.get $16 + local.get $5 + local.get $9 i32.store offset=4 - local.get $12 + local.get $5 local.get $2 i32.store offset=8 local.get $2 if - local.get $12 + local.get $5 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $12 local.get $5 + local.get $15 i32.store offset=12 - local.get $12 - local.get $12 + local.get $5 + local.get $5 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -22004,12 +22025,12 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $12 + local.get $5 i32.load offset=8 local.tee $0 i32.store - local.get $12 - local.get $12 + local.get $5 + local.get $5 i32.load offset=16 local.tee $2 i32.const 1 @@ -22021,23 +22042,23 @@ local.get $0 i32.add local.tee $0 - local.get $14 + local.get $3 f64.store local.get $0 - local.get $14 + local.get $3 f64.store offset=8 - local.get $12 - local.get $12 + local.get $5 + local.get $5 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $12 + local.get $5 i32.load - local.get $12 + local.get $5 i32.load offset=4 - local.get $6 + local.get $14 i32.and i32.const 2 i32.shl @@ -22053,21 +22074,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $13 - local.get $15 + local.get $10 + local.get $11 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $8 + local.get $7 i32.const 1 i32.add - local.set $8 + local.set $7 br $for-loop|2 end end - local.get $12 + local.get $5 i32.load offset=20 i32.const 100 i32.ne @@ -22079,7 +22100,7 @@ call $~lib/builtins/abort unreachable end - local.get $13 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -22098,7 +22119,7 @@ f64.const 50 f64.lt if - local.get $10 + local.get $4 local.get $3 call $~lib/map/Map#has i32.eqz @@ -22110,7 +22131,7 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $4 local.get $3 call $~lib/map/Map#get local.get $3 @@ -22126,10 +22147,10 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $4 local.get $3 call $~lib/map/Map#delete - local.get $10 + local.get $4 local.get $3 call $~lib/map/Map#has if @@ -22147,7 +22168,7 @@ br $for-loop|3 end end - local.get $10 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -22166,7 +22187,7 @@ f64.const 50 f64.lt if - local.get $10 + local.get $4 local.get $3 call $~lib/map/Map#has if @@ -22177,14 +22198,14 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $4 local.get $3 local.get $3 i32.trunc_f64_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $10 + local.get $4 local.get $3 call $~lib/map/Map#has i32.eqz @@ -22196,10 +22217,10 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $4 local.get $3 call $~lib/map/Map#delete - local.get $10 + local.get $4 local.get $3 call $~lib/map/Map#has if @@ -22217,7 +22238,7 @@ br $for-loop|4 end end - local.get $10 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -22229,9 +22250,9 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $4 call $~lib/map/Map#clear - local.get $10 + local.get $4 i32.load offset=20 if i32.const 0 @@ -22639,18 +22660,18 @@ i32.const 16 i32.const 5 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 0 i32.store offset=4 - local.get $3 + local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $1 i32.const 0 i32.store offset=12 local.get $0 @@ -22673,37 +22694,37 @@ select i32.const 2 i32.shl - local.tee $2 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $1 local.get $2 - call $~lib/memory/memory.fill local.get $3 + call $~lib/memory/memory.fill local.get $1 + local.get $2 i32.store - local.get $1 + local.get $2 if - local.get $3 local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 local.get $1 + local.get $2 i32.store offset=4 + local.get $1 local.get $3 - local.get $2 i32.store offset=8 - local.get $3 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 ) (func $~lib/map/Map#values (param $0 i32) (result i32) (local $1 i32) @@ -22727,38 +22748,38 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i32.const 0 i32.store local.get $0 i32.load offset=8 - local.set $3 - local.get $4 + local.set $4 + local.get $3 local.get $0 i32.load offset=16 - local.tee $4 + local.tee $3 call $~lib/array/Array#constructor - local.tee $5 + local.tee $0 i32.store loop $for-loop|0 local.get $2 - local.get $4 + local.get $3 i32.lt_s if local.get $2 i32.const 12 i32.mul - local.get $3 + local.get $4 i32.add - local.tee $0 + local.tee $5 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $5 - local.get $1 local.get $0 + local.get $1 + local.get $5 i32.load offset=4 call $~lib/array/Array#__set local.get $1 @@ -22773,19 +22794,19 @@ br $for-loop|0 end end - local.get $5 + local.get $0 local.get $1 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $5 + local.get $0 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $0 ) (func $~lib/map/Map#constructor (result i32) (local $0 i32) @@ -23955,38 +23976,38 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i32.const 0 i32.store local.get $0 i32.load offset=8 - local.set $3 - local.get $4 + local.set $4 + local.get $3 local.get $0 i32.load offset=16 - local.tee $4 + local.tee $3 call $~lib/array/Array#constructor - local.tee $5 + local.tee $0 i32.store loop $for-loop|0 local.get $2 - local.get $4 + local.get $3 i32.lt_s if local.get $2 i32.const 4 i32.shl - local.get $3 + local.get $4 i32.add - local.tee $0 + local.tee $5 i32.load offset=12 i32.const 1 i32.and i32.eqz if - local.get $5 - local.get $1 local.get $0 + local.get $1 + local.get $5 i32.load offset=8 call $~lib/array/Array#__set local.get $1 @@ -24001,19 +24022,19 @@ br $for-loop|0 end end - local.get $5 + local.get $0 local.get $1 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $5 + local.get $0 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $0 ) (func $~lib/map/Map#set (param $0 i32) (param $1 i64) (param $2 i32) (local $3 i32) diff --git a/tests/compiler/std/math.optimized.wat b/tests/compiler/std/math.optimized.wat index 2a3db3be81..dbb9bfb772 100644 --- a/tests/compiler/std/math.optimized.wat +++ b/tests/compiler/std/math.optimized.wat @@ -562,15 +562,15 @@ ) (func $~lib/math/NativeMath.acos (param $0 f64) (result f64) (local $1 i32) - (local $2 i32) - (local $3 f64) + (local $2 f64) + (local $3 i32) (local $4 f64) local.get $0 i64.reinterpret_f64 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $2 + local.tee $3 i32.const 2147483647 i32.and local.tee $1 @@ -586,7 +586,7 @@ i32.or i32.eqz if - local.get $2 + local.get $3 i32.const 31 i32.shr_u if @@ -668,7 +668,7 @@ f64.sub return end - local.get $2 + local.get $3 i32.const 31 i32.shr_u if @@ -680,7 +680,7 @@ f64.add local.tee $0 f64.sqrt - local.tee $3 + local.tee $2 local.get $0 local.get $0 local.get $0 @@ -722,7 +722,7 @@ f64.const 1 f64.add f64.div - local.get $3 + local.get $2 f64.mul f64.const 6.123233995736766e-17 f64.sub @@ -737,20 +737,20 @@ f64.const 0.5 f64.mul f64.sub - local.tee $3 - f64.sqrt local.tee $0 + f64.sqrt + local.tee $4 i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $4 - local.get $3 - local.get $3 - local.get $3 - local.get $3 - local.get $3 - local.get $3 + local.tee $2 + local.get $0 + local.get $0 + local.get $0 + local.get $0 + local.get $0 + local.get $0 f64.const 3.479331075960212e-05 f64.mul f64.const 7.915349942898145e-04 @@ -768,10 +768,10 @@ f64.const 0.16666666666666666 f64.add f64.mul - local.get $3 - local.get $3 - local.get $3 - local.get $3 + local.get $0 + local.get $0 + local.get $0 + local.get $0 f64.const 0.07703815055590194 f64.mul f64.const -0.6882839716054533 @@ -786,15 +786,15 @@ f64.const 1 f64.add f64.div - local.get $0 - f64.mul - local.get $3 - local.get $4 local.get $4 f64.mul - f64.sub local.get $0 + local.get $2 + local.get $2 + f64.mul + f64.sub local.get $4 + local.get $2 f64.add f64.div f64.add @@ -966,28 +966,28 @@ ) (func $~lib/math/NativeMath.log1p (param $0 f64) (result f64) (local $1 f64) - (local $2 i32) - (local $3 i64) - (local $4 f64) - (local $5 i32) - (local $6 f64) + (local $2 f64) + (local $3 f64) + (local $4 i32) + (local $5 i64) + (local $6 i32) (local $7 f64) i32.const 1 - local.set $2 + local.set $6 local.get $0 i64.reinterpret_f64 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $5 + local.tee $4 i32.const 31 i32.shr_u - local.get $5 + local.get $4 i32.const 1071284858 i32.lt_u i32.or if - local.get $5 + local.get $4 i32.const -1074790400 i32.ge_u if @@ -1007,7 +1007,7 @@ f64.div return end - local.get $5 + local.get $4 i32.const 1 i32.shl i32.const 2034237440 @@ -1016,19 +1016,19 @@ local.get $0 return end - local.get $5 + local.get $4 i32.const -1076707644 i32.le_u if (result f64) i32.const 0 - local.set $2 + local.set $6 local.get $0 else f64.const 0 end local.set $1 else - local.get $5 + local.get $4 i32.const 2146435072 i32.ge_u if @@ -1036,29 +1036,29 @@ return end end - local.get $2 + local.get $6 if local.get $0 f64.const 1 f64.add i64.reinterpret_f64 - local.tee $3 + local.tee $5 i64.const 32 i64.shr_u i32.wrap_i64 i32.const 614242 i32.add - local.tee $5 + local.tee $4 i32.const 20 i32.shr_u i32.const 1023 i32.sub - local.tee $2 + local.tee $6 i32.const 54 i32.lt_s if (result f64) f64.const 1 - local.get $3 + local.get $5 f64.reinterpret_i64 local.tee $1 local.get $0 @@ -1069,7 +1069,7 @@ f64.const 1 f64.sub f64.sub - local.get $2 + local.get $6 i32.const 2 i32.ge_s select @@ -1078,11 +1078,11 @@ else f64.const 0 end - local.set $4 - local.get $3 + local.set $3 + local.get $5 i64.const 4294967295 i64.and - local.get $5 + local.get $4 i32.const 1048575 i32.and i32.const 1072079006 @@ -1101,20 +1101,20 @@ f64.const 2 f64.add f64.div - local.tee $6 - local.get $6 + local.tee $2 + local.get $2 f64.mul local.tee $0 local.get $0 f64.mul local.set $7 - local.get $6 + local.get $2 local.get $1 f64.const 0.5 f64.mul local.get $1 f64.mul - local.tee $6 + local.tee $2 local.get $0 local.get $7 local.get $7 @@ -1144,15 +1144,15 @@ f64.add f64.add f64.mul - local.get $2 + local.get $6 f64.convert_i32_s local.tee $0 f64.const 1.9082149292705877e-10 f64.mul - local.get $4 + local.get $3 f64.add f64.add - local.get $6 + local.get $2 f64.sub local.get $1 f64.add @@ -1163,10 +1163,10 @@ ) (func $~lib/math/NativeMath.log (param $0 f64) (result f64) (local $1 i64) - (local $2 i32) - (local $3 i64) - (local $4 f64) - (local $5 f64) + (local $2 f64) + (local $3 f64) + (local $4 i32) + (local $5 i64) (local $6 f64) (local $7 i32) block $~lib/util/math/log_lut|inlined.0 (result f64) @@ -1184,40 +1184,40 @@ local.tee $0 local.get $0 f64.mul - local.tee $4 + local.tee $2 local.get $0 f64.mul - local.tee $5 + local.tee $3 local.get $0 f64.const -0.24999999999998432 f64.mul f64.const 0.3333333333333352 f64.add - local.get $4 + local.get $2 f64.const 0.19999999999320328 f64.mul f64.add - local.get $5 + local.get $3 local.get $0 f64.const 0.14285715076560868 f64.mul f64.const -0.16666666669929706 f64.add - local.get $4 + local.get $2 f64.const -0.12499997863982555 f64.mul f64.add - local.get $5 + local.get $3 local.get $0 f64.const -0.10000486757818193 f64.mul f64.const 0.11110712032936046 f64.add - local.get $4 + local.get $2 f64.const 0.09181994006195467 f64.mul f64.add - local.get $5 + local.get $3 f64.const -0.08328363062289341 f64.mul f64.add @@ -1232,27 +1232,27 @@ local.get $0 f64.const 134217728 f64.mul - local.tee $4 + local.tee $2 f64.add - local.get $4 + local.get $2 f64.sub - local.tee $4 - local.get $4 + local.tee $2 + local.get $2 f64.mul f64.const -0.5 f64.mul - local.tee $5 + local.tee $3 f64.add local.tee $6 f64.sub - local.get $5 + local.get $3 f64.add local.get $0 - local.get $4 + local.get $2 f64.sub f64.const -0.5 f64.mul - local.get $4 + local.get $2 local.get $0 f64.add f64.mul @@ -1266,7 +1266,7 @@ i64.const 48 i64.shr_u i32.wrap_i64 - local.tee $2 + local.tee $4 i32.const 16 i32.sub i32.const 32736 @@ -1290,12 +1290,12 @@ br_if $~lib/util/math/log_lut|inlined.0 drop i32.const 1 - local.get $2 + local.get $4 i32.const 32752 i32.and i32.const 32752 i32.eq - local.get $2 + local.get $4 i32.const 32768 i32.and select @@ -1319,7 +1319,7 @@ local.get $1 i64.const 4604367669032910848 i64.sub - local.tee $3 + local.tee $5 i64.const 45 i64.shr_u i64.const 127 @@ -1330,20 +1330,20 @@ local.tee $7 i32.const 1088 i32.add - local.set $2 - local.get $3 + local.set $4 + local.get $5 i64.const 52 i64.shr_s f64.convert_i64_s - local.tee $0 + local.tee $3 f64.const 0.6931471805598903 f64.mul - local.get $2 + local.get $4 f64.load offset=8 f64.add - local.tee $4 + local.tee $6 local.get $1 - local.get $3 + local.get $5 i64.const -4503599627370496 i64.and i64.sub @@ -1357,38 +1357,38 @@ local.get $7 f64.load offset=8 f64.sub - local.get $2 + local.get $4 f64.load f64.mul - local.tee $5 + local.tee $0 f64.add - local.set $6 - local.get $4 + local.set $2 local.get $6 + local.get $2 f64.sub - local.get $5 - f64.add local.get $0 + f64.add + local.get $3 f64.const 5.497923018708371e-14 f64.mul f64.add - local.get $5 - local.get $5 + local.get $0 + local.get $0 f64.mul - local.tee $0 + local.tee $3 f64.const -0.5000000000000001 f64.mul f64.add - local.get $5 local.get $0 + local.get $3 f64.mul - local.get $5 + local.get $0 f64.const -0.2499999999622955 f64.mul f64.const 0.33333333331825593 f64.add + local.get $3 local.get $0 - local.get $5 f64.const -0.16667054827627667 f64.mul f64.const 0.20000304511814496 @@ -1397,7 +1397,7 @@ f64.add f64.mul f64.add - local.get $6 + local.get $2 f64.add end ) @@ -1485,13 +1485,13 @@ ) (func $~lib/math/NativeMathf.log1p (param $0 f32) (result f32) (local $1 f32) - (local $2 i32) + (local $2 f32) (local $3 f32) (local $4 i32) (local $5 f32) - (local $6 f32) + (local $6 i32) i32.const 1 - local.set $2 + local.set $6 local.get $0 i32.reinterpret_f32 local.tee $4 @@ -1536,7 +1536,7 @@ i32.le_u if (result f32) i32.const 0 - local.set $2 + local.set $6 local.get $0 else f32.const 0 @@ -1551,7 +1551,7 @@ return end end - local.get $2 + local.get $6 if local.get $0 f32.const 1 @@ -1565,7 +1565,7 @@ i32.shr_u i32.const 127 i32.sub - local.tee $2 + local.tee $6 i32.const 25 i32.lt_s if (result f32) @@ -1579,7 +1579,7 @@ f32.const 1 f32.sub f32.sub - local.get $2 + local.get $6 i32.const 2 i32.ge_s select @@ -1604,29 +1604,29 @@ f32.const 2 f32.add f32.div - local.tee $5 - local.get $5 + local.tee $2 + local.get $2 f32.mul - local.tee $6 - local.get $6 + local.tee $0 + local.get $0 f32.mul - local.set $0 - local.get $5 + local.set $5 + local.get $2 local.get $1 f32.const 0.5 f32.mul local.get $1 f32.mul - local.tee $5 - local.get $6 + local.tee $2 local.get $0 + local.get $5 f32.const 0.2849878668785095 f32.mul f32.const 0.6666666269302368 f32.add f32.mul - local.get $0 - local.get $0 + local.get $5 + local.get $5 f32.const 0.24279078841209412 f32.mul f32.const 0.40000972151756287 @@ -1635,7 +1635,7 @@ f32.add f32.add f32.mul - local.get $2 + local.get $6 f32.convert_i32_s local.tee $0 f32.const 9.05800061445916e-06 @@ -1643,7 +1643,7 @@ local.get $3 f32.add f32.add - local.get $5 + local.get $2 f32.sub local.get $1 f32.add @@ -1709,7 +1709,7 @@ local.get $1 i32.const 1060306944 i32.sub - local.tee $3 + local.tee $4 i32.const 19 i32.shr_u i32.const 15 @@ -1718,44 +1718,44 @@ i32.shl i32.const 5184 i32.add - local.set $4 + local.set $3 local.get $1 - local.get $3 + local.get $4 i32.const -8388608 i32.and i32.sub f32.reinterpret_i32 f64.promote_f32 - local.get $4 + local.get $3 f64.load f64.mul f64.const 1 f64.sub - local.tee $2 - local.get $2 + local.tee $5 + local.get $5 f64.mul - local.set $5 - local.get $2 + local.set $2 + local.get $5 f64.const 0.333456765744066 f64.mul f64.const -0.4999997485802103 f64.add - local.get $5 + local.get $2 f64.const -0.25089342214237154 f64.mul f64.add - local.get $5 + local.get $2 f64.mul - local.get $4 - f64.load offset=8 local.get $3 + f64.load offset=8 + local.get $4 i32.const 23 i32.shr_s f64.convert_i32_s f64.const 0.6931471805599453 f64.mul f64.add - local.get $2 + local.get $5 f64.add f64.add f32.demote_f64 @@ -1817,26 +1817,26 @@ call $std/math/check ) (func $~lib/math/NativeMath.asin (param $0 f64) (result f64) - (local $1 i32) - (local $2 f64) - (local $3 i32) - (local $4 f64) + (local $1 f64) + (local $2 i32) + (local $3 f64) + (local $4 i32) local.get $0 i64.reinterpret_f64 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $3 + local.tee $4 i32.const 2147483647 i32.and - local.tee $1 + local.tee $2 i32.const 1072693248 i32.ge_u if local.get $0 i64.reinterpret_f64 i32.wrap_i64 - local.get $1 + local.get $2 i32.const 1072693248 i32.sub i32.or @@ -1856,14 +1856,14 @@ f64.div return end - local.get $1 + local.get $2 i32.const 1071644672 i32.lt_u if - local.get $1 + local.get $2 i32.const 1045430272 i32.lt_u - local.get $1 + local.get $2 i32.const 1048576 i32.ge_u i32.and @@ -1927,15 +1927,15 @@ f64.const 0.5 f64.mul f64.sub - local.tee $4 + local.tee $0 f64.sqrt - local.set $0 - local.get $4 - local.get $4 - local.get $4 - local.get $4 - local.get $4 - local.get $4 + local.set $1 + local.get $0 + local.get $0 + local.get $0 + local.get $0 + local.get $0 + local.get $0 f64.const 3.479331075960212e-05 f64.mul f64.const 7.915349942898145e-04 @@ -1953,10 +1953,10 @@ f64.const 0.16666666666666666 f64.add f64.mul - local.get $4 - local.get $4 - local.get $4 - local.get $4 + local.get $0 + local.get $0 + local.get $0 + local.get $0 f64.const 0.07703815055590194 f64.mul f64.const -0.6882839716054533 @@ -1971,15 +1971,15 @@ f64.const 1 f64.add f64.div - local.set $2 - local.get $1 + local.set $3 + local.get $2 i32.const 1072640819 i32.ge_u if (result f64) f64.const 1.5707963267948966 - local.get $0 - local.get $0 - local.get $2 + local.get $1 + local.get $1 + local.get $3 f64.mul f64.add f64.const 2 @@ -1989,24 +1989,24 @@ f64.sub else f64.const 0.7853981633974483 - local.get $0 - local.get $0 + local.get $1 + local.get $1 f64.add - local.get $2 + local.get $3 f64.mul f64.const 6.123233995736766e-17 - local.get $4 local.get $0 + local.get $1 i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $2 - local.get $2 + local.tee $0 + local.get $0 f64.mul f64.sub + local.get $1 local.get $0 - local.get $2 f64.add f64.div f64.const 2 @@ -2014,15 +2014,15 @@ f64.sub f64.sub f64.const 0.7853981633974483 - local.get $2 - local.get $2 + local.get $0 + local.get $0 f64.add f64.sub f64.sub f64.sub end local.set $0 - local.get $3 + local.get $4 i32.const 31 i32.shr_u if @@ -2143,61 +2143,61 @@ f32.copysign ) (func $std/math/test_asinh (param $0 f64) (param $1 f64) (param $2 f64) (result i32) - (local $3 i64) + (local $3 f64) (local $4 i64) - (local $5 f64) + (local $5 i64) local.get $0 i64.reinterpret_f64 - local.tee $4 + local.tee $5 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.set $3 - local.get $4 + local.set $4 + local.get $5 i64.const 9223372036854775807 i64.and f64.reinterpret_i64 - local.set $5 - local.get $3 + local.set $3 + local.get $4 i64.const 1049 i64.ge_u if (result f64) - local.get $5 + local.get $3 call $~lib/math/NativeMath.log f64.const 0.6931471805599453 f64.add else - local.get $3 + local.get $4 i64.const 1024 i64.ge_u if (result f64) - local.get $5 - local.get $5 + local.get $3 + local.get $3 f64.add f64.const 1 - local.get $5 - local.get $5 + local.get $3 + local.get $3 f64.mul f64.const 1 f64.add f64.sqrt - local.get $5 + local.get $3 f64.add f64.div f64.add call $~lib/math/NativeMath.log else - local.get $3 + local.get $4 i64.const 997 i64.ge_u if (result f64) - local.get $5 - local.get $5 - local.get $5 + local.get $3 + local.get $3 + local.get $3 f64.mul - local.tee $5 - local.get $5 + local.tee $3 + local.get $3 f64.const 1 f64.add f64.sqrt @@ -2207,7 +2207,7 @@ f64.add call $~lib/math/NativeMath.log1p else - local.get $5 + local.get $3 end end end @@ -2227,54 +2227,54 @@ end ) (func $std/math/test_asinhf (param $0 f32) (param $1 f32) (param $2 f32) (result i32) - (local $3 i32) - (local $4 f32) + (local $3 f32) + (local $4 i32) local.get $0 i32.reinterpret_f32 i32.const 2147483647 i32.and - local.tee $3 + local.tee $4 f32.reinterpret_i32 - local.set $4 - local.get $3 + local.set $3 + local.get $4 i32.const 1166016512 i32.ge_u if (result f32) - local.get $4 + local.get $3 call $~lib/math/NativeMathf.log f32.const 0.6931471824645996 f32.add else - local.get $3 + local.get $4 i32.const 1073741824 i32.ge_u if (result f32) - local.get $4 - local.get $4 + local.get $3 + local.get $3 f32.add f32.const 1 - local.get $4 - local.get $4 + local.get $3 + local.get $3 f32.mul f32.const 1 f32.add f32.sqrt - local.get $4 + local.get $3 f32.add f32.div f32.add call $~lib/math/NativeMathf.log else - local.get $3 + local.get $4 i32.const 964689920 i32.ge_u if (result f32) - local.get $4 - local.get $4 - local.get $4 + local.get $3 + local.get $3 + local.get $3 f32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 f32.const 1 f32.add f32.sqrt @@ -2284,7 +2284,7 @@ f32.add call $~lib/math/NativeMathf.log1p else - local.get $4 + local.get $3 end end end @@ -2296,9 +2296,9 @@ ) (func $~lib/math/NativeMath.atan (param $0 f64) (result f64) (local $1 f64) - (local $2 i32) + (local $2 f64) (local $3 i32) - (local $4 f64) + (local $4 i32) (local $5 f64) local.get $0 local.set $1 @@ -2309,7 +2309,7 @@ i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $2 + local.tee $3 i32.const 1141899264 i32.ge_u if @@ -2325,11 +2325,11 @@ f64.copysign return end - local.get $2 + local.get $3 i32.const 1071382528 i32.lt_u if - local.get $2 + local.get $3 i32.const 1044381696 i32.lt_u if @@ -2337,16 +2337,16 @@ return end i32.const -1 - local.set $3 + local.set $4 else local.get $0 f64.abs local.set $0 - local.get $2 + local.get $3 i32.const 1072889856 i32.lt_u if (result f64) - local.get $2 + local.get $3 i32.const 1072037888 i32.lt_u if (result f64) @@ -2361,7 +2361,7 @@ f64.div else i32.const 1 - local.set $3 + local.set $4 local.get $0 f64.const 1 f64.sub @@ -2371,12 +2371,12 @@ f64.div end else - local.get $2 + local.get $3 i32.const 1073971200 i32.lt_u if (result f64) i32.const 2 - local.set $3 + local.set $4 local.get $0 f64.const 1.5 f64.sub @@ -2388,7 +2388,7 @@ f64.div else i32.const 3 - local.set $3 + local.set $4 f64.const -1 local.get $0 f64.div @@ -2399,17 +2399,17 @@ local.get $0 local.get $0 f64.mul - local.tee $4 - local.get $4 + local.tee $5 + local.get $5 f64.mul - local.set $5 + local.set $2 local.get $0 - local.get $4 - local.get $5 - local.get $5 - local.get $5 - local.get $5 local.get $5 + local.get $2 + local.get $2 + local.get $2 + local.get $2 + local.get $2 f64.const 0.016285820115365782 f64.mul f64.const 0.049768779946159324 @@ -2427,11 +2427,11 @@ f64.const 0.3333333333333293 f64.add f64.mul - local.get $5 - local.get $5 - local.get $5 - local.get $5 - local.get $5 + local.get $2 + local.get $2 + local.get $2 + local.get $2 + local.get $2 f64.const -0.036531572744216916 f64.mul f64.const -0.058335701337905735 @@ -2448,13 +2448,13 @@ f64.mul f64.add f64.mul - local.set $4 - local.get $3 + local.set $2 + local.get $4 i32.const 0 i32.lt_s if local.get $0 - local.get $4 + local.get $2 f64.sub return end @@ -2464,11 +2464,11 @@ block $case2|0 block $case1|0 block $case0|0 - local.get $3 + local.get $4 br_table $case0|0 $case1|0 $case2|0 $case3|0 $case4|0 end f64.const 0.4636476090008061 - local.get $4 + local.get $2 f64.const 2.2698777452961687e-17 f64.sub local.get $0 @@ -2478,7 +2478,7 @@ br $break|0 end f64.const 0.7853981633974483 - local.get $4 + local.get $2 f64.const 3.061616997868383e-17 f64.sub local.get $0 @@ -2488,7 +2488,7 @@ br $break|0 end f64.const 0.982793723247329 - local.get $4 + local.get $2 f64.const 1.3903311031230998e-17 f64.sub local.get $0 @@ -2498,7 +2498,7 @@ br $break|0 end f64.const 1.5707963267948966 - local.get $4 + local.get $2 f64.const 6.123233995736766e-17 f64.sub local.get $0 @@ -2615,14 +2615,14 @@ local.get $0 local.get $0 f32.mul - local.tee $4 - local.get $4 + local.tee $5 + local.get $5 f32.mul - local.set $5 + local.set $4 local.get $0 - local.get $4 - local.get $5 local.get $5 + local.get $4 + local.get $4 f32.const 0.06168760731816292 f32.mul f32.const 0.14253635704517365 @@ -2631,8 +2631,8 @@ f32.const 0.333333283662796 f32.add f32.mul - local.get $5 - local.get $5 + local.get $4 + local.get $4 f32.const -0.106480173766613 f32.mul f32.const -0.19999158382415771 @@ -2825,9 +2825,9 @@ (func $std/math/test_atan2 (param $0 f64) (param $1 f64) (param $2 f64) (param $3 f64) (result i32) (local $4 f64) (local $5 i32) - (local $6 i64) + (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) (local $9 i32) (local $10 i32) block $__inlined_func$~lib/math/NativeMath.atan2 @@ -2848,25 +2848,25 @@ end local.get $4 i64.reinterpret_f64 - local.tee $6 + local.tee $8 i64.const 32 i64.shr_u i32.wrap_i64 local.set $7 - local.get $6 + local.get $8 i32.wrap_i64 local.set $9 local.get $1 i64.reinterpret_f64 - local.tee $6 + local.tee $8 i64.const 32 i64.shr_u i32.wrap_i64 - local.set $10 - local.get $6 + local.set $6 + local.get $8 i32.wrap_i64 - local.tee $8 - local.get $10 + local.tee $10 + local.get $6 i32.const 1072693248 i32.sub i32.or @@ -2877,7 +2877,7 @@ local.set $4 br $__inlined_func$~lib/math/NativeMath.atan2 end - local.get $10 + local.get $6 i32.const 30 i32.shr_u i32.const 2 @@ -2887,10 +2887,10 @@ i32.shr_u i32.or local.set $5 - local.get $10 + local.get $6 i32.const 2147483647 i32.and - local.set $10 + local.set $6 local.get $7 i32.const 2147483647 i32.and @@ -2915,12 +2915,12 @@ end end block $folding-inner0 - local.get $8 + local.get $6 local.get $10 i32.or i32.eqz br_if $folding-inner0 - local.get $10 + local.get $6 i32.const 2146435072 i32.eq if @@ -2956,13 +2956,13 @@ i32.const 2146435072 i32.eq local.get $7 - local.get $10 + local.get $6 i32.const 67108864 i32.add i32.gt_u i32.or br_if $folding-inner0 - local.get $10 + local.get $6 local.get $7 i32.const 67108864 i32.add @@ -3058,10 +3058,10 @@ end local.get $0 i32.reinterpret_f32 - local.set $3 + local.set $4 local.get $1 i32.reinterpret_f32 - local.tee $4 + local.tee $3 i32.const 1065353216 i32.eq if @@ -3069,24 +3069,24 @@ call $~lib/math/NativeMathf.atan return end - local.get $4 + local.get $3 i32.const 30 i32.shr_u i32.const 2 i32.and - local.get $3 + local.get $4 i32.const 31 i32.shr_u i32.or local.set $2 - local.get $4 + local.get $3 i32.const 2147483647 i32.and - local.set $4 - local.get $3 + local.set $3 + local.get $4 i32.const 2147483647 i32.and - local.tee $3 + local.tee $4 i32.eqz if block $break|0 @@ -3106,14 +3106,14 @@ return end end - local.get $4 + local.get $3 i32.eqz br_if $folding-inner0 - local.get $4 + local.get $3 i32.const 2139095040 i32.eq if - local.get $3 + local.get $4 i32.const 2139095040 i32.eq if (result f32) @@ -3147,18 +3147,18 @@ end return end - local.get $3 + local.get $4 i32.const 2139095040 i32.eq - local.get $3 local.get $4 + local.get $3 i32.const 218103808 i32.add i32.gt_u i32.or br_if $folding-inner0 - local.get $4 local.get $3 + local.get $4 i32.const 218103808 i32.add i32.gt_u @@ -3216,10 +3216,10 @@ select ) (func $~lib/math/NativeMath.cbrt (param $0 f64) (result f64) - (local $1 i32) + (local $1 f64) (local $2 f64) (local $3 i64) - (local $4 f64) + (local $4 i32) local.get $0 i64.reinterpret_f64 local.tee $3 @@ -3228,7 +3228,7 @@ i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $1 + local.tee $4 i32.const 2146435072 i32.ge_u if @@ -3237,7 +3237,7 @@ f64.add return end - local.get $1 + local.get $4 i32.const 1048576 i32.lt_u if (result i32) @@ -3251,29 +3251,29 @@ i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $1 + local.tee $4 i32.eqz if local.get $0 return end - local.get $1 + local.get $4 i32.const 3 i32.div_u i32.const 696219795 i32.add else - local.get $1 + local.get $4 i32.const 3 i32.div_u i32.const 715094163 i32.add end - local.set $1 + local.set $4 local.get $3 i64.const -9223372036854775808 i64.and - local.get $1 + local.get $4 i64.extend_i32_u i64.const 32 i64.shl @@ -3286,11 +3286,11 @@ local.get $0 f64.div f64.mul - local.set $4 + local.set $1 local.get $0 local.get $2 - local.get $4 - local.get $4 + local.get $1 + local.get $1 f64.const 1.6214297201053545 f64.mul f64.const -1.8849797954337717 @@ -3298,12 +3298,12 @@ f64.mul f64.const 1.87595182427177 f64.add - local.get $4 - local.get $4 + local.get $1 + local.get $1 f64.mul - local.get $4 + local.get $1 f64.mul - local.get $4 + local.get $1 f64.const 0.14599619288661245 f64.mul f64.const -0.758397934778766 @@ -3321,27 +3321,27 @@ local.get $0 f64.mul f64.div - local.set $2 + local.set $1 local.get $0 local.get $0 - local.get $2 + local.get $1 local.get $0 f64.sub local.get $0 local.get $0 f64.add - local.get $2 + local.get $1 f64.add f64.div f64.mul f64.add ) (func $std/math/test_cbrtf (param $0 f32) (param $1 f32) (param $2 f32) (result i32) - (local $3 f64) - (local $4 i32) - (local $5 i32) + (local $3 i32) + (local $4 f64) + (local $5 f64) (local $6 f64) - (local $7 f64) + (local $7 i32) (local $8 f64) block $__inlined_func$~lib/math/NativeMathf.cbrt (result f32) local.get $0 @@ -3349,20 +3349,20 @@ f32.add local.get $0 i32.reinterpret_f32 - local.tee $5 + local.tee $7 i32.const 2147483647 i32.and - local.tee $4 + local.tee $3 i32.const 2139095040 i32.ge_u br_if $__inlined_func$~lib/math/NativeMathf.cbrt drop - local.get $4 + local.get $3 i32.const 8388608 i32.lt_u if (result i32) local.get $0 - local.get $4 + local.get $3 i32.eqz br_if $__inlined_func$~lib/math/NativeMathf.cbrt drop @@ -3370,7 +3370,7 @@ f32.const 16777216 f32.mul i32.reinterpret_f32 - local.tee $5 + local.tee $7 i32.const 2147483647 i32.and i32.const 3 @@ -3378,55 +3378,55 @@ i32.const 642849266 i32.add else - local.get $4 + local.get $3 i32.const 3 i32.div_u i32.const 709958130 i32.add end - local.get $5 + local.get $7 i32.const -2147483648 i32.and i32.or f32.reinterpret_i32 f64.promote_f32 - local.tee $3 - local.get $3 + local.tee $4 + local.get $4 f64.mul - local.get $3 + local.get $4 f64.mul - local.set $7 - local.get $3 + local.set $5 + local.get $4 local.get $0 f64.promote_f32 - local.tee $3 - local.get $3 + local.tee $4 + local.get $4 f64.add - local.tee $6 - local.get $7 + local.tee $8 + local.get $5 f64.add f64.mul - local.get $3 - local.get $7 + local.get $4 + local.get $5 f64.add - local.get $7 + local.get $5 f64.add f64.div - local.tee $7 - local.get $7 + local.tee $5 + local.get $5 f64.mul - local.get $7 + local.get $5 f64.mul - local.set $8 - local.get $7 - local.get $6 + local.set $6 + local.get $5 local.get $8 + local.get $6 f64.add f64.mul - local.get $3 - local.get $8 + local.get $4 + local.get $6 f64.add - local.get $8 + local.get $6 f64.add f64.div f32.demote_f64 @@ -3440,14 +3440,14 @@ (local $2 i64) (local $3 i64) (local $4 i32) - (local $5 f64) + (local $5 i64) (local $6 i64) (local $7 i64) (local $8 i64) (local $9 i64) (local $10 i64) (local $11 i64) - (local $12 i64) + (local $12 f64) local.get $0 i64.const 9223372036854775807 i64.and @@ -3458,7 +3458,7 @@ local.tee $1 i64.const 63 i64.and - local.set $6 + local.set $2 local.get $1 i64.const 6 i64.shr_s @@ -3469,42 +3469,42 @@ i32.add local.tee $4 i64.load - local.set $3 + local.set $5 local.get $4 i64.load offset=8 - local.set $2 + local.set $3 local.get $4 i64.load offset=16 local.set $1 - local.get $6 + local.get $2 i64.const 0 i64.ne if - local.get $3 - local.get $6 - i64.shl + local.get $5 local.get $2 + i64.shl + local.get $3 i64.const 64 - local.get $6 + local.get $2 i64.sub - local.tee $7 + local.tee $6 i64.shr_u i64.or - local.set $3 + local.set $5 + local.get $3 local.get $2 - local.get $6 i64.shl local.get $1 - local.get $7 + local.get $6 i64.shr_u i64.or - local.set $2 + local.set $3 local.get $1 - local.get $6 + local.get $2 i64.shl local.get $4 i64.load offset=24 - local.get $7 + local.get $6 i64.shr_u i64.or local.set $1 @@ -3514,46 +3514,46 @@ i64.and i64.const 4503599627370496 i64.or - local.tee $6 + local.tee $2 i64.const 4294967295 i64.and - local.tee $7 - local.get $2 + local.tee $6 + local.get $3 i64.const 32 i64.shr_u - local.tee $8 + local.tee $7 i64.mul - local.get $2 + local.get $6 + local.get $3 i64.const 4294967295 i64.and - local.tee $2 - local.get $7 + local.tee $6 i64.mul - local.tee $7 + local.tee $8 i64.const 32 i64.shr_u i64.add - local.set $9 - local.get $2 + local.set $3 local.get $6 + local.get $2 i64.const 32 i64.shr_u + local.tee $9 local.tee $10 - local.tee $11 i64.mul - local.get $9 + local.get $3 i64.const 4294967295 i64.and i64.add - local.set $2 - local.get $8 - local.get $11 + local.set $6 + local.get $7 + local.get $10 i64.mul - local.get $9 + local.get $3 i64.const 32 i64.shr_u i64.add - local.get $2 + local.get $6 i64.const 32 i64.shr_u i64.add @@ -3561,131 +3561,131 @@ local.get $1 i64.const 32 i64.shr_u - local.get $10 + local.get $9 i64.mul local.tee $1 - local.get $7 + local.get $8 i64.const 4294967295 i64.and - local.get $2 + local.get $6 i64.const 32 i64.shl i64.add i64.add - local.tee $2 + local.tee $3 local.get $1 i64.lt_u i64.extend_i32_u global.get $~lib/math/res128_hi - local.get $3 - local.get $6 + local.get $2 + local.get $5 i64.mul i64.add i64.add - local.tee $3 + local.tee $7 i64.const 2 i64.shl - local.get $2 + local.get $3 i64.const 62 i64.shr_u i64.or - local.tee $6 + local.tee $2 i64.const 63 i64.shr_s - local.tee $7 + local.tee $5 i64.const 1 i64.shr_s - local.get $6 + local.get $2 i64.xor - local.tee $1 + local.tee $6 i64.clz - local.set $8 + local.set $1 + local.get $6 local.get $1 - local.get $8 i64.shl - local.get $7 - local.get $2 + local.get $5 + local.get $3 i64.const 2 i64.shl i64.xor - local.tee $2 + local.tee $8 i64.const 64 - local.get $8 + local.get $1 i64.sub i64.shr_u i64.or - local.tee $9 + local.tee $3 i64.const 4294967295 i64.and - local.set $1 - local.get $9 + local.set $6 + local.get $3 i64.const 32 i64.shr_u - local.tee $10 + local.tee $9 i64.const 560513588 i64.mul - local.get $1 + local.get $6 i64.const 3373259426 i64.mul - local.get $1 + local.get $6 i64.const 560513588 i64.mul - local.tee $11 + local.tee $10 i64.const 32 i64.shr_u i64.add - local.tee $1 + local.tee $11 i64.const 4294967295 i64.and i64.add - local.set $12 - local.get $10 + local.set $6 + local.get $9 i64.const 3373259426 i64.mul - local.get $1 + local.get $11 i64.const 32 i64.shr_u i64.add - local.get $12 + local.get $6 i64.const 32 i64.shr_u i64.add global.set $~lib/math/res128_hi - local.get $11 + local.get $10 i64.const 4294967295 i64.and - local.get $12 + local.get $6 i64.const 32 i64.shl i64.add - local.tee $1 - local.get $9 + local.tee $6 + local.get $3 f64.convert_i64_u f64.const 3.753184150245214e-04 f64.mul - local.get $2 local.get $8 + local.get $1 i64.shl f64.convert_i64_u f64.const 3.834951969714103e-04 f64.mul f64.add i64.trunc_f64_u - local.tee $2 + local.tee $3 i64.lt_u i64.extend_i32_u global.get $~lib/math/res128_hi - local.tee $9 + local.tee $8 i64.const 11 i64.shr_u i64.add f64.convert_i64_u global.set $~lib/math/rempio2_y0 - local.get $2 - local.get $9 + local.get $3 + local.get $8 i64.const 53 i64.shl - local.get $1 + local.get $6 i64.const 11 i64.shr_u i64.or @@ -3696,44 +3696,44 @@ global.set $~lib/math/rempio2_y1 global.get $~lib/math/rempio2_y0 i64.const 4372995238176751616 - local.get $8 + local.get $1 i64.const 52 i64.shl i64.sub local.get $0 - local.get $6 + local.get $2 i64.xor i64.const -9223372036854775808 i64.and i64.or f64.reinterpret_i64 - local.tee $5 + local.tee $12 f64.mul global.set $~lib/math/rempio2_y0 global.get $~lib/math/rempio2_y1 - local.get $5 + local.get $12 f64.mul global.set $~lib/math/rempio2_y1 - local.get $3 + local.get $7 i64.const 62 i64.shr_s - local.get $7 + local.get $5 i64.sub i32.wrap_i64 ) (func $~lib/math/NativeMath.cos (param $0 f64) (result f64) (local $1 f64) - (local $2 i64) + (local $2 f64) (local $3 f64) (local $4 i32) - (local $5 i32) + (local $5 i64) (local $6 i32) - (local $7 f64) + (local $7 i32) (local $8 f64) (local $9 f64) local.get $0 i64.reinterpret_f64 - local.tee $2 + local.tee $5 i64.const 32 i64.shr_u i32.wrap_i64 @@ -3761,18 +3761,18 @@ local.tee $1 local.get $1 f64.mul - local.set $3 + local.set $2 f64.const 1 local.get $1 f64.const 0.5 f64.mul - local.tee $7 + local.tee $3 f64.sub local.tee $8 f64.const 1 local.get $8 f64.sub - local.get $7 + local.get $3 f64.sub local.get $1 local.get $1 @@ -3786,8 +3786,8 @@ f64.const 0.0416666666666666 f64.add f64.mul - local.get $3 - local.get $3 + local.get $2 + local.get $2 f64.mul local.get $1 local.get $1 @@ -3819,18 +3819,18 @@ return end block $~lib/math/rempio2|inlined.0 (result i32) - local.get $2 + local.get $5 i64.const 32 i64.shr_u i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $5 + local.tee $4 i32.const 1073928572 i32.lt_u if i32.const 1 - local.set $4 + local.set $7 local.get $6 if (result f64) local.get $0 @@ -3838,8 +3838,8 @@ f64.add local.set $0 i32.const -1 - local.set $4 - local.get $5 + local.set $7 + local.get $4 i32.const 1073291771 i32.ne if (result f64) @@ -3870,7 +3870,7 @@ f64.const 1.5707963267341256 f64.sub local.set $0 - local.get $5 + local.get $4 i32.const 1073291771 i32.ne if (result f64) @@ -3900,14 +3900,14 @@ local.get $0 global.set $~lib/math/rempio2_y0 global.set $~lib/math/rempio2_y1 - local.get $4 + local.get $7 br $~lib/math/rempio2|inlined.0 end - local.get $5 + local.get $4 i32.const 1094263291 i32.lt_u if - local.get $5 + local.get $4 i32.const 20 i32.shr_u local.tee $4 @@ -3916,12 +3916,12 @@ f64.const 0.6366197723675814 f64.mul f64.nearest - local.tee $7 + local.tee $2 f64.const 1.5707963267341256 f64.mul f64.sub local.tee $0 - local.get $7 + local.get $2 f64.const 6.077100506506192e-11 f64.mul local.tee $3 @@ -3939,12 +3939,12 @@ i32.const 16 i32.gt_u if - local.get $7 + local.get $2 f64.const 2.0222662487959506e-21 f64.mul local.get $0 local.get $0 - local.get $7 + local.get $2 f64.const 6.077100506303966e-11 f64.mul local.tee $1 @@ -3972,12 +3972,12 @@ i32.const 49 i32.gt_u if (result f64) - local.get $7 + local.get $2 f64.const 8.4784276603689e-32 f64.mul local.get $0 local.get $0 - local.get $7 + local.get $2 f64.const 2.0222662487111665e-21 f64.mul local.tee $1 @@ -4004,12 +4004,12 @@ local.get $3 f64.sub global.set $~lib/math/rempio2_y1 - local.get $7 + local.get $2 i32.trunc_f64_s br $~lib/math/rempio2|inlined.0 end i32.const 0 - local.get $2 + local.get $5 call $~lib/math/pio2_large_quot local.tee $4 i32.sub @@ -4021,7 +4021,7 @@ global.get $~lib/math/rempio2_y0 local.set $1 global.get $~lib/math/rempio2_y1 - local.set $3 + local.set $2 local.get $4 i32.const 1 i32.and @@ -4032,13 +4032,13 @@ local.tee $0 local.get $1 f64.mul - local.set $7 + local.set $3 local.get $1 local.get $0 - local.get $3 + local.get $2 f64.const 0.5 f64.mul - local.get $7 + local.get $3 local.get $0 local.get $0 f64.const 2.7557313707070068e-06 @@ -4063,9 +4063,9 @@ f64.mul f64.sub f64.mul - local.get $3 + local.get $2 f64.sub - local.get $7 + local.get $3 f64.const -0.16666666666666632 f64.mul f64.sub @@ -4074,26 +4074,26 @@ local.get $1 local.get $1 f64.mul - local.tee $7 - local.get $7 + local.tee $0 + local.get $0 f64.mul - local.set $8 + local.set $3 f64.const 1 - local.get $7 + local.get $0 f64.const 0.5 f64.mul - local.tee $9 + local.tee $8 f64.sub - local.tee $0 + local.tee $9 f64.const 1 - local.get $0 - f64.sub local.get $9 f64.sub - local.get $7 - local.get $7 - local.get $7 - local.get $7 + local.get $8 + f64.sub + local.get $0 + local.get $0 + local.get $0 + local.get $0 f64.const 2.480158728947673e-05 f64.mul f64.const -0.001388888888887411 @@ -4102,11 +4102,11 @@ f64.const 0.0416666666666666 f64.add f64.mul - local.get $8 - local.get $8 + local.get $3 + local.get $3 f64.mul - local.get $7 - local.get $7 + local.get $0 + local.get $0 f64.const -1.1359647557788195e-11 f64.mul f64.const 2.087572321298175e-09 @@ -4118,7 +4118,7 @@ f64.add f64.mul local.get $1 - local.get $3 + local.get $2 f64.mul f64.sub f64.add @@ -4141,8 +4141,8 @@ (local $4 i64) (local $5 i32) (local $6 f64) - (local $7 i32) - (local $8 i64) + (local $7 i64) + (local $8 i32) (local $9 i64) block $folding-inner0 local.get $0 @@ -4170,10 +4170,10 @@ local.tee $2 local.get $2 f64.mul - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 f64.mul - local.set $2 + local.set $3 br $folding-inner0 end local.get $1 @@ -4230,28 +4230,28 @@ f64.promote_f32 f64.const 1.5707963267948966 f64.add - local.tee $3 - local.get $3 - f64.mul local.tee $2 - local.get $3 + local.get $2 + f64.mul + local.tee $3 + local.get $2 f64.mul else f64.const 1.5707963267948966 local.get $0 f64.promote_f32 f64.sub - local.tee $3 - local.get $3 - f64.mul local.tee $2 - local.get $3 + local.get $2 + f64.mul + local.tee $3 + local.get $2 f64.mul end local.set $6 - local.get $3 - local.get $6 local.get $2 + local.get $6 + local.get $3 f64.const 0.008333329385889463 f64.mul f64.const -0.16666666641626524 @@ -4259,11 +4259,11 @@ f64.mul f64.add local.get $6 - local.get $2 - local.get $2 + local.get $3 + local.get $3 f64.mul f64.mul - local.get $2 + local.get $3 f64.const 2.718311493989822e-06 f64.mul f64.const -1.9839334836096632e-04 @@ -4296,10 +4296,10 @@ local.tee $2 local.get $2 f64.mul - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 f64.mul - local.set $2 + local.set $3 br $folding-inner0 else local.get $5 @@ -4309,28 +4309,28 @@ f64.promote_f32 f64.const 4.71238898038469 f64.sub - local.tee $3 - local.get $3 - f64.mul local.tee $2 - local.get $3 + local.get $2 + f64.mul + local.tee $3 + local.get $2 f64.mul else local.get $0 f64.promote_f32 f64.const 4.71238898038469 f64.sub - local.tee $3 - local.get $3 - f64.mul local.tee $2 - local.get $3 + local.get $2 + f64.mul + local.tee $3 + local.get $2 f64.mul end local.set $6 - local.get $3 - local.get $6 local.get $2 + local.get $6 + local.get $3 f64.const 0.008333329385889463 f64.mul f64.const -0.16666666641626524 @@ -4338,11 +4338,11 @@ f64.mul f64.add local.get $6 - local.get $2 - local.get $2 + local.get $3 + local.get $3 f64.mul f64.mul - local.get $2 + local.get $3 f64.const 2.718311493989822e-06 f64.mul f64.const -1.9839334836096632e-04 @@ -4370,22 +4370,22 @@ if local.get $0 f64.promote_f32 - local.tee $2 + local.tee $3 f64.const 0.6366197723675814 f64.mul f64.nearest - local.set $3 - local.get $2 + local.set $2 local.get $3 + local.get $2 f64.const 1.5707963109016418 f64.mul f64.sub - local.get $3 + local.get $2 f64.const 1.5893254773528196e-08 f64.mul f64.sub global.set $~lib/math/rempio2f_y - local.get $3 + local.get $2 i32.trunc_f64_s br $~lib/math/rempio2f|inlined.0 end @@ -4394,11 +4394,11 @@ i32.shr_s i32.const 152 i32.sub - local.tee $7 + local.tee $8 i32.const 63 i32.and i64.extend_i32_s - local.set $8 + local.set $4 f64.const 8.515303950216386e-20 local.get $0 f64.promote_f32 @@ -4410,7 +4410,7 @@ i32.or i64.extend_i32_s local.tee $9 - local.get $7 + local.get $8 i32.const 6 i32.shr_s i32.const 3 @@ -4419,37 +4419,37 @@ i32.add local.tee $1 i64.load - local.get $8 + local.get $4 i64.shl local.get $1 i64.load offset=8 - local.tee $4 + local.tee $7 i64.const 64 - local.get $8 + local.get $4 i64.sub i64.shr_u i64.or i64.mul - local.get $8 + local.get $4 i64.const 32 i64.gt_u if (result i64) + local.get $7 local.get $4 - local.get $8 i64.const 32 i64.sub i64.shl local.get $1 i64.load offset=16 i64.const 96 - local.get $8 + local.get $4 i64.sub i64.shr_u i64.or else - local.get $4 + local.get $7 i64.const 32 - local.get $8 + local.get $4 i64.sub i64.shr_u end @@ -4461,7 +4461,7 @@ local.tee $4 i64.const 2 i64.shl - local.tee $8 + local.tee $7 f64.convert_i64_s f64.mul global.set $~lib/math/rempio2f_y @@ -4469,7 +4469,7 @@ local.get $4 i64.const 62 i64.shr_u - local.get $8 + local.get $7 i64.const 63 i64.shr_u i64.add @@ -4555,19 +4555,19 @@ select return end - local.get $3 + local.get $2 f64.const -0.499999997251031 f64.mul f64.const 1 f64.add - local.get $2 + local.get $3 f64.const 0.04166662332373906 f64.mul f64.add - local.get $2 local.get $3 + local.get $2 f64.mul - local.get $3 + local.get $2 f64.const 2.439044879627741e-05 f64.mul f64.const -0.001388676377460993 @@ -4577,29 +4577,29 @@ f32.demote_f64 ) (func $~lib/math/NativeMath.expm1 (param $0 f64) (result f64) - (local $1 i32) + (local $1 f64) (local $2 f64) - (local $3 i32) - (local $4 i32) - (local $5 i64) - (local $6 f64) + (local $3 i64) + (local $4 f64) + (local $5 i32) + (local $6 i32) (local $7 f64) - (local $8 f64) + (local $8 i32) local.get $0 i64.reinterpret_f64 - local.tee $5 + local.tee $3 i64.const 32 i64.shr_u i64.const 2147483647 i64.and i32.wrap_i64 - local.set $3 - local.get $5 + local.set $6 + local.get $3 i64.const 63 i64.shr_u i32.wrap_i64 - local.set $4 - local.get $3 + local.set $5 + local.get $6 i32.const 1078159482 i32.ge_u if @@ -4610,7 +4610,7 @@ local.get $0 return end - local.get $4 + local.get $5 if f64.const -1 return @@ -4625,13 +4625,13 @@ return end end - local.get $3 + local.get $6 i32.const 1071001154 i32.gt_u if local.get $0 i32.const 1 - local.get $4 + local.get $5 i32.const 1 i32.shl i32.sub @@ -4643,30 +4643,30 @@ f64.copysign f64.add i32.trunc_f64_s - local.get $3 + local.get $6 i32.const 1072734898 i32.lt_u select - local.tee $1 + local.tee $8 f64.convert_i32_s - local.tee $0 + local.tee $1 f64.const 0.6931471803691238 f64.mul f64.sub - local.tee $2 - local.get $2 + local.tee $0 local.get $0 + local.get $1 f64.const 1.9082149292705877e-10 f64.mul - local.tee $2 + local.tee $1 f64.sub local.tee $0 f64.sub - local.get $2 + local.get $1 f64.sub - local.set $2 + local.set $4 else - local.get $3 + local.get $6 i32.const 1016070144 i32.lt_u if @@ -4678,25 +4678,25 @@ local.get $0 f64.const 0.5 f64.mul - local.tee $6 + local.tee $2 f64.mul local.tee $7 local.get $7 f64.mul - local.set $8 + local.set $1 f64.const 3 local.get $7 f64.const -0.03333333333333313 f64.mul f64.const 1 f64.add - local.get $8 + local.get $1 local.get $7 f64.const -7.93650757867488e-05 f64.mul f64.const 1.5873015872548146e-03 f64.add - local.get $8 + local.get $1 local.get $7 f64.const -2.0109921818362437e-07 f64.mul @@ -4706,29 +4706,29 @@ f64.add f64.mul f64.add - local.tee $8 - local.get $6 + local.tee $1 + local.get $2 f64.mul f64.sub - local.set $6 + local.set $2 local.get $7 - local.get $8 - local.get $6 + local.get $1 + local.get $2 f64.sub f64.const 6 local.get $0 - local.get $6 + local.get $2 f64.mul f64.sub f64.div f64.mul - local.set $6 - local.get $1 + local.set $1 + local.get $8 i32.eqz if local.get $0 local.get $0 - local.get $6 + local.get $1 f64.mul local.get $7 f64.sub @@ -4736,16 +4736,16 @@ return end local.get $0 - local.get $6 - local.get $2 + local.get $1 + local.get $4 f64.sub f64.mul - local.get $2 + local.get $4 f64.sub local.get $7 f64.sub local.set $2 - local.get $1 + local.get $8 i32.const -1 i32.eq if @@ -4758,7 +4758,7 @@ f64.sub return end - local.get $1 + local.get $8 i32.const 1 i32.eq if @@ -4784,18 +4784,18 @@ f64.add return end - local.get $1 + local.get $8 i64.extend_i32_s i64.const 1023 i64.add i64.const 52 i64.shl f64.reinterpret_i64 - local.set $6 - local.get $1 + local.set $1 + local.get $8 i32.const 0 i32.lt_s - local.get $1 + local.get $8 i32.const 56 i32.gt_s i32.or @@ -4811,9 +4811,9 @@ f64.const 8988465674311579538646525e283 f64.mul local.get $0 - local.get $6 - f64.mul local.get $1 + f64.mul + local.get $8 i32.const 1024 i32.eq select @@ -4824,7 +4824,7 @@ local.get $0 f64.const 1 i64.const 1023 - local.get $1 + local.get $8 i64.extend_i32_s i64.sub i64.const 52 @@ -4839,27 +4839,27 @@ local.get $0 f64.add f64.sub - local.get $1 + local.get $8 i32.const 20 i32.lt_s select f64.add - local.get $6 + local.get $1 f64.mul ) (func $~lib/math/NativeMath.exp (param $0 f64) (result f64) (local $1 i32) - (local $2 i64) - (local $3 f64) - (local $4 i32) - (local $5 f64) - (local $6 i64) - (local $7 f64) + (local $2 f64) + (local $3 i64) + (local $4 f64) + (local $5 i64) + (local $6 f64) + (local $7 i32) (local $8 f64) block $~lib/util/math/exp_lut|inlined.0 (result f64) local.get $0 i64.reinterpret_f64 - local.tee $2 + local.tee $3 i64.const 52 i64.shr_u i64.const 2047 @@ -4884,7 +4884,7 @@ i32.ge_u if f64.const 0 - local.get $2 + local.get $3 i64.const -4503599627370496 i64.eq br_if $~lib/util/math/exp_lut|inlined.0 @@ -4899,7 +4899,7 @@ drop f64.const 0 f64.const inf - local.get $2 + local.get $3 i64.const 63 i64.shr_u i32.wrap_i64 @@ -4914,9 +4914,9 @@ f64.mul f64.const 6755399441055744 f64.add - local.tee $3 - i64.reinterpret_f64 local.tee $2 + i64.reinterpret_f64 + local.tee $5 i64.const 127 i64.and i64.const 1 @@ -4926,15 +4926,15 @@ i32.shl i32.const 5664 i32.add - local.tee $4 + local.tee $7 i64.load offset=8 - local.get $2 + local.get $5 i64.const 45 i64.shl i64.add - local.set $6 + local.set $3 local.get $0 - local.get $3 + local.get $2 f64.const 6755399441055744 f64.sub local.tee $0 @@ -4948,12 +4948,12 @@ local.tee $0 local.get $0 f64.mul - local.set $3 - local.get $4 + local.set $2 + local.get $7 f64.load local.get $0 f64.add - local.get $3 + local.get $2 local.get $0 f64.const 0.16666666666665886 f64.mul @@ -4961,8 +4961,8 @@ f64.add f64.mul f64.add - local.get $3 - local.get $3 + local.get $2 + local.get $2 f64.mul local.get $0 f64.const 0.008333335853059549 @@ -4971,72 +4971,72 @@ f64.add f64.mul f64.add - local.set $7 + local.set $2 local.get $1 i32.eqz if block $~lib/util/math/specialcase|inlined.0 (result f64) - local.get $2 + local.get $5 i64.const 2147483648 i64.and i64.eqz if - local.get $6 + local.get $3 i64.const 4544132024016830464 i64.sub f64.reinterpret_i64 local.tee $0 local.get $0 - local.get $7 + local.get $2 f64.mul f64.add f64.const 5486124068793688683255936e279 f64.mul br $~lib/util/math/specialcase|inlined.0 end - local.get $6 + local.get $3 i64.const 4602678819172646912 i64.add - local.tee $2 + local.tee $3 f64.reinterpret_i64 - local.tee $0 - local.get $0 - local.get $7 + local.tee $4 + local.get $4 + local.get $2 f64.mul f64.add - local.tee $8 + local.tee $0 f64.abs f64.const 1 f64.lt if (result f64) f64.const 1 - local.get $8 + local.get $0 f64.copysign - local.tee $3 - local.get $8 + local.tee $6 + local.get $0 f64.add - local.tee $5 - local.get $3 - local.get $5 - f64.sub + local.tee $8 + local.get $6 local.get $8 + f64.sub + local.get $0 f64.add + local.get $4 local.get $0 - local.get $8 f64.sub - local.get $0 - local.get $7 + local.get $4 + local.get $2 f64.mul f64.add f64.add f64.add - local.get $3 + local.get $6 f64.sub local.tee $0 f64.const 0 f64.eq if (result f64) - local.get $2 + local.get $3 i64.const -9223372036854775808 i64.and f64.reinterpret_i64 @@ -5044,55 +5044,55 @@ local.get $0 end else - local.get $8 + local.get $0 end f64.const 2.2250738585072014e-308 f64.mul end br $~lib/util/math/exp_lut|inlined.0 end - local.get $6 + local.get $3 f64.reinterpret_i64 local.tee $0 local.get $0 - local.get $7 + local.get $2 f64.mul f64.add end ) (func $std/math/test_cosh (param $0 f64) (param $1 f64) (param $2 f64) (result i32) - (local $3 i32) - (local $4 i64) - (local $5 f64) + (local $3 f64) + (local $4 i32) + (local $5 i64) block $__inlined_func$~lib/math/NativeMath.cosh (result f64) local.get $0 i64.reinterpret_f64 i64.const 9223372036854775807 i64.and - local.tee $4 + local.tee $5 f64.reinterpret_i64 - local.set $5 - local.get $4 + local.set $3 + local.get $5 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $3 + local.tee $4 i32.const 1072049730 i32.lt_u if f64.const 1 - local.get $3 + local.get $4 i32.const 1045430272 i32.lt_u br_if $__inlined_func$~lib/math/NativeMath.cosh drop - local.get $5 + local.get $3 call $~lib/math/NativeMath.expm1 - local.tee $5 - local.get $5 + local.tee $3 + local.get $3 f64.mul - local.get $5 - local.get $5 + local.get $3 + local.get $3 f64.add f64.const 2 f64.add @@ -5101,22 +5101,22 @@ f64.add br $__inlined_func$~lib/math/NativeMath.cosh end - local.get $3 + local.get $4 i32.const 1082535490 i32.lt_u if - local.get $5 + local.get $3 call $~lib/math/NativeMath.exp - local.tee $5 + local.tee $3 f64.const 1 - local.get $5 + local.get $3 f64.div f64.add f64.const 0.5 f64.mul br $__inlined_func$~lib/math/NativeMath.cosh end - local.get $5 + local.get $3 f64.const 1416.0996898839683 f64.sub call $~lib/math/NativeMath.exp @@ -5140,39 +5140,39 @@ ) (func $~lib/math/NativeMathf.expm1 (param $0 f32) (result f32) (local $1 i32) - (local $2 f32) - (local $3 i32) - (local $4 f32) - (local $5 i32) + (local $2 i32) + (local $3 f32) + (local $4 i32) + (local $5 f32) (local $6 f32) (local $7 f32) local.get $0 i32.reinterpret_f32 - local.tee $5 + local.tee $4 i32.const 2147483647 i32.and - local.set $3 - local.get $5 + local.set $2 + local.get $4 i32.const 31 i32.shr_u - local.set $5 - local.get $3 + local.set $4 + local.get $2 i32.const 1100331076 i32.ge_u if - local.get $3 + local.get $2 i32.const 2139095040 i32.gt_u if local.get $0 return end - local.get $5 + local.get $4 if f32.const -1 return end - local.get $3 + local.get $2 i32.const 1118925335 i32.gt_u if @@ -5182,13 +5182,13 @@ return end end - local.get $3 + local.get $2 i32.const 1051816472 i32.gt_u if local.get $0 i32.const 1 - local.get $5 + local.get $4 i32.const 1 i32.shl i32.sub @@ -5200,7 +5200,7 @@ f32.copysign f32.add i32.trunc_f32_s - local.get $3 + local.get $2 i32.const 1065686418 i32.lt_u select @@ -5210,20 +5210,20 @@ f32.const 0.6931381225585938 f32.mul f32.sub - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 local.get $0 f32.const 9.05800061445916e-06 f32.mul - local.tee $2 + local.tee $3 f32.sub local.tee $0 f32.sub - local.get $2 + local.get $3 f32.sub - local.set $2 + local.set $5 else - local.get $3 + local.get $2 i32.const 855638016 i32.lt_u if @@ -5238,8 +5238,8 @@ f32.mul local.tee $6 f32.mul - local.tee $7 - local.get $7 + local.tee $3 + local.get $3 f32.const 1.5807170420885086e-03 f32.mul f32.const -0.03333321213722229 @@ -5247,13 +5247,13 @@ f32.mul f32.const 1 f32.add - local.tee $4 + local.tee $7 local.get $6 f32.mul f32.sub local.set $6 + local.get $3 local.get $7 - local.get $4 local.get $6 f32.sub f32.const 6 @@ -5263,35 +5263,35 @@ f32.sub f32.div f32.mul - local.set $4 + local.set $6 local.get $1 i32.eqz if local.get $0 local.get $0 - local.get $4 + local.get $6 f32.mul - local.get $7 + local.get $3 f32.sub f32.sub return end local.get $0 - local.get $4 - local.get $2 + local.get $6 + local.get $5 f32.sub f32.mul - local.get $2 + local.get $5 f32.sub - local.get $7 + local.get $3 f32.sub - local.set $2 + local.set $3 local.get $1 i32.const -1 i32.eq if local.get $0 - local.get $2 + local.get $3 f32.sub f32.const 0.5 f32.mul @@ -5307,7 +5307,7 @@ f32.const -0.25 f32.lt if - local.get $2 + local.get $3 local.get $0 f32.const 0.5 f32.add @@ -5317,7 +5317,7 @@ return end local.get $0 - local.get $2 + local.get $3 f32.sub f32.const 2 f32.mul @@ -5331,7 +5331,7 @@ i32.const 23 i32.shl f32.reinterpret_i32 - local.set $4 + local.set $5 local.get $1 i32.const 0 i32.lt_s @@ -5341,7 +5341,7 @@ i32.or if local.get $0 - local.get $2 + local.get $3 f32.sub f32.const 1 f32.add @@ -5351,7 +5351,7 @@ f32.const 1701411834604692317316873e14 f32.mul local.get $0 - local.get $4 + local.get $5 f32.mul local.get $1 i32.const 128 @@ -5371,10 +5371,10 @@ f32.reinterpret_i32 local.tee $0 f32.sub - local.get $2 + local.get $3 f32.sub f32.const 1 - local.get $2 + local.get $3 local.get $0 f32.add f32.sub @@ -5383,7 +5383,7 @@ i32.lt_s select f32.add - local.get $4 + local.get $5 f32.mul ) (func $~lib/math/NativeMathf.exp (param $0 f32) (result f32) @@ -5437,14 +5437,14 @@ end f64.const 46.16624130844683 f64.mul - local.tee $5 + local.tee $1 f64.const 6755399441055744 f64.add - local.tee $1 + local.tee $5 i64.reinterpret_f64 local.set $2 - local.get $5 local.get $1 + local.get $5 f64.const 6755399441055744 f64.sub f64.sub @@ -5549,9 +5549,9 @@ (local $4 f64) (local $5 i64) (local $6 f64) - (local $7 i32) - (local $8 f64) - (local $9 i64) + (local $7 f64) + (local $8 i64) + (local $9 i32) (local $10 f64) block $~lib/util/math/exp2_lut|inlined.0 (result f64) local.get $0 @@ -5623,7 +5623,7 @@ f64.add local.tee $4 i64.reinterpret_f64 - local.tee $5 + local.tee $8 i64.const 127 i64.and i64.const 1 @@ -5633,13 +5633,13 @@ i32.shl i32.const 5664 i32.add - local.tee $7 + local.tee $9 i64.load offset=8 - local.get $5 + local.get $8 i64.const 45 i64.shl i64.add - local.set $9 + local.set $5 local.get $0 local.get $4 f64.const 52776558133248 @@ -5649,7 +5649,7 @@ local.get $4 f64.mul local.set $6 - local.get $7 + local.get $9 f64.load local.get $4 f64.const 0.6931471805599453 @@ -5673,22 +5673,22 @@ f64.add f64.mul f64.add - local.set $10 + local.set $6 local.get $3 i32.eqz if block $~lib/util/math/specialcase2|inlined.0 (result f64) - local.get $5 + local.get $8 i64.const 2147483648 i64.and i64.eqz if - local.get $9 + local.get $5 i64.const 4503599627370496 i64.sub f64.reinterpret_i64 local.tee $4 - local.get $10 + local.get $6 f64.mul local.get $4 f64.add @@ -5696,14 +5696,14 @@ f64.mul br $~lib/util/math/specialcase2|inlined.0 end - local.get $9 + local.get $5 i64.const 4602678819172646912 i64.add f64.reinterpret_i64 - local.tee $6 - local.get $10 - f64.mul + local.tee $7 local.get $6 + f64.mul + local.get $7 f64.add local.tee $4 f64.const 1 @@ -5712,17 +5712,17 @@ local.get $4 f64.const 1 f64.add - local.tee $8 + local.tee $10 f64.const 1 - local.get $8 + local.get $10 f64.sub local.get $4 f64.add - local.get $6 + local.get $7 local.get $4 f64.sub + local.get $7 local.get $6 - local.get $10 f64.mul f64.add f64.add @@ -5737,10 +5737,10 @@ end br $~lib/util/math/exp2_lut|inlined.0 end - local.get $9 + local.get $5 f64.reinterpret_i64 local.tee $4 - local.get $10 + local.get $6 f64.mul local.get $4 f64.add @@ -5768,7 +5768,7 @@ block $~lib/util/math/exp2f_lut|inlined.0 (result f32) local.get $0 f64.promote_f32 - local.set $7 + local.set $3 local.get $0 i32.reinterpret_f32 local.tee $5 @@ -5809,14 +5809,14 @@ br_if $~lib/util/math/exp2f_lut|inlined.0 drop end - local.get $7 + local.get $3 f64.const 211106232532992 f64.add - local.tee $3 + local.tee $7 i64.reinterpret_f64 local.set $4 - local.get $7 local.get $3 + local.get $7 f64.const 211106232532992 f64.sub f64.sub @@ -5860,11 +5860,11 @@ (local $2 i64) (local $3 i64) (local $4 i64) - (local $5 i32) + (local $5 f64) (local $6 f64) - (local $7 i32) - (local $8 f64) - (local $9 f64) + (local $7 f64) + (local $8 i32) + (local $9 i32) (local $10 f64) (local $11 f64) local.get $1 @@ -5891,7 +5891,7 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $5 + local.tee $8 i32.const 2047 i32.eq if @@ -5907,7 +5907,7 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $7 + local.tee $9 i32.const 2047 i32.eq i32.or @@ -5915,8 +5915,8 @@ local.get $0 return end - local.get $7 - local.get $5 + local.get $9 + local.get $8 i32.sub i32.const 64 i32.gt_s @@ -5927,13 +5927,13 @@ return end f64.const 1 - local.set $6 - local.get $7 + local.set $7 + local.get $9 i32.const 1533 i32.gt_u if (result f64) f64.const 5260135901548373507240989e186 - local.set $6 + local.set $7 local.get $1 f64.const 1.90109156629516e-211 f64.mul @@ -5942,12 +5942,12 @@ f64.const 1.90109156629516e-211 f64.mul else - local.get $5 + local.get $8 i32.const 573 i32.lt_u if (result f64) f64.const 1.90109156629516e-211 - local.set $6 + local.set $7 local.get $1 f64.const 5260135901548373507240989e186 f64.mul @@ -5959,67 +5959,67 @@ local.get $0 end end - local.tee $10 - local.get $10 - local.get $10 + local.tee $0 + local.get $0 + local.get $0 f64.const 134217729 f64.mul - local.tee $0 + local.tee $5 f64.sub - local.get $0 + local.get $5 f64.add - local.tee $9 + local.tee $5 f64.sub - local.set $0 + local.set $10 local.get $1 local.get $1 local.get $1 f64.const 134217729 f64.mul - local.tee $8 + local.tee $6 f64.sub - local.get $8 + local.get $6 f64.add - local.tee $8 + local.tee $6 f64.sub local.set $11 + local.get $7 + local.get $6 local.get $6 - local.get $8 - local.get $8 f64.mul local.get $1 local.get $1 f64.mul local.tee $1 f64.sub - local.get $8 - local.get $8 + local.get $6 + local.get $6 f64.add local.get $11 f64.add local.get $11 f64.mul f64.add - local.get $9 - local.get $9 + local.get $5 + local.get $5 f64.mul - local.get $10 - local.get $10 + local.get $0 + local.get $0 f64.mul - local.tee $6 + local.tee $0 f64.sub - local.get $9 - local.get $9 + local.get $5 + local.get $5 f64.add - local.get $0 + local.get $10 f64.add - local.get $0 + local.get $10 f64.mul f64.add f64.add local.get $1 f64.add - local.get $6 + local.get $0 f64.add f64.sqrt f64.mul @@ -6028,8 +6028,8 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 f64) - (local $8 f32) + (local $7 f32) + (local $8 f64) block $__inlined_func$~lib/math/NativeMathf.hypot (result f32) local.get $1 i32.reinterpret_f32 @@ -6050,7 +6050,7 @@ end local.get $4 f32.reinterpret_i32 - local.set $8 + local.set $0 local.get $5 f32.reinterpret_i32 local.tee $1 @@ -6059,7 +6059,7 @@ i32.eq br_if $__inlined_func$~lib/math/NativeMathf.hypot drop - local.get $8 + local.get $0 local.get $1 f32.add local.get $5 @@ -6077,18 +6077,18 @@ br_if $__inlined_func$~lib/math/NativeMathf.hypot drop f32.const 1 - local.set $0 + local.set $7 local.get $4 i32.const 1568669696 i32.ge_u if (result f32) f32.const 1237940039285380274899124e3 - local.set $0 + local.set $7 local.get $1 f32.const 8.077935669463161e-28 f32.mul local.set $1 - local.get $8 + local.get $0 f32.const 8.077935669463161e-28 f32.mul else @@ -6097,29 +6097,29 @@ i32.lt_u if (result f32) f32.const 8.077935669463161e-28 - local.set $0 + local.set $7 local.get $1 f32.const 1237940039285380274899124e3 f32.mul local.set $1 - local.get $8 + local.get $0 f32.const 1237940039285380274899124e3 f32.mul else - local.get $8 + local.get $0 end end - local.set $8 + local.set $0 + local.get $7 local.get $0 - local.get $8 f64.promote_f32 - local.tee $7 - local.get $7 + local.tee $8 + local.get $8 f64.mul local.get $1 f64.promote_f32 - local.tee $7 - local.get $7 + local.tee $8 + local.get $8 f64.mul f64.add f32.demote_f64 @@ -6132,16 +6132,16 @@ ) (func $~lib/math/NativeMath.log10 (param $0 f64) (result f64) (local $1 i32) - (local $2 i64) - (local $3 i32) + (local $2 f64) + (local $3 i64) (local $4 f64) (local $5 f64) (local $6 f64) - (local $7 f64) + (local $7 i32) (local $8 f64) local.get $0 i64.reinterpret_f64 - local.tee $2 + local.tee $3 i64.const 32 i64.shr_u i32.wrap_i64 @@ -6153,7 +6153,7 @@ i32.lt_u i32.or if - local.get $2 + local.get $3 i64.const 1 i64.shl i64.eqz @@ -6177,12 +6177,12 @@ return end i32.const -54 - local.set $3 + local.set $7 local.get $0 f64.const 18014398509481984 f64.mul i64.reinterpret_f64 - local.tee $2 + local.tee $3 i64.const 32 i64.shr_u i32.wrap_i64 @@ -6195,7 +6195,7 @@ local.get $0 return else - local.get $2 + local.get $3 i64.const 32 i64.shl i64.eqz @@ -6209,7 +6209,7 @@ end end end - local.get $2 + local.get $3 i64.const 4294967295 i64.and local.get $1 @@ -6227,14 +6227,14 @@ f64.reinterpret_i64 f64.const 1 f64.sub - local.tee $0 + local.tee $2 f64.const 0.5 f64.mul - local.get $0 + local.get $2 f64.mul local.set $4 - local.get $0 - local.get $0 + local.get $2 + local.get $2 f64.const 2 f64.add f64.div @@ -6244,25 +6244,25 @@ local.tee $6 local.get $6 f64.mul - local.set $7 - local.get $0 - local.get $0 + local.set $0 + local.get $2 + local.get $2 local.get $4 f64.sub i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $0 + local.tee $2 f64.sub local.get $4 f64.sub local.get $5 local.get $4 local.get $6 - local.get $7 - local.get $7 - local.get $7 + local.get $0 + local.get $0 + local.get $0 f64.const 0.14798198605116586 f64.mul f64.const 0.1818357216161805 @@ -6274,9 +6274,9 @@ f64.const 0.6666666666666735 f64.add f64.mul - local.get $7 - local.get $7 - local.get $7 + local.get $0 + local.get $0 + local.get $0 f64.const 0.15313837699209373 f64.mul f64.const 0.22222198432149784 @@ -6289,45 +6289,45 @@ f64.add f64.mul f64.add - local.set $4 + local.set $0 local.get $1 i32.const 20 i32.shr_u i32.const 1023 i32.sub - local.get $3 + local.get $7 i32.add f64.convert_i32_s local.tee $5 f64.const 0.30102999566361177 f64.mul local.tee $6 - local.get $0 + local.get $2 f64.const 0.4342944818781689 f64.mul - local.tee $7 + local.tee $8 f64.add - local.set $8 + local.set $4 local.get $5 f64.const 3.694239077158931e-13 f64.mul - local.get $4 local.get $0 + local.get $2 f64.add f64.const 2.5082946711645275e-11 f64.mul f64.add - local.get $4 + local.get $0 f64.const 0.4342944818781689 f64.mul f64.add local.get $6 - local.get $8 + local.get $4 f64.sub - local.get $7 + local.get $8 f64.add f64.add - local.get $8 + local.get $4 f64.add ) (func $~lib/math/NativeMathf.log10 (param $0 f32) (result f32) @@ -6335,8 +6335,8 @@ (local $2 f32) (local $3 f32) (local $4 f32) - (local $5 i32) - (local $6 f32) + (local $5 f32) + (local $6 i32) (local $7 f32) local.get $0 i32.reinterpret_f32 @@ -6372,7 +6372,7 @@ return end i32.const -25 - local.set $5 + local.set $6 local.get $0 f32.const 33554432 f32.mul @@ -6406,57 +6406,57 @@ f32.reinterpret_i32 f32.const 1 f32.sub - local.tee $4 - local.get $4 + local.tee $0 + local.get $0 f32.const 2 f32.add f32.div - local.tee $2 - local.get $2 - f32.mul local.tee $3 local.get $3 f32.mul - local.set $0 + local.tee $4 + local.get $4 + f32.mul + local.set $2 local.get $1 i32.const 23 i32.shr_u i32.const 127 i32.sub - local.get $5 + local.get $6 i32.add f32.convert_i32_s - local.tee $6 + local.tee $7 f32.const 7.903415166765626e-07 f32.mul - local.get $4 - local.get $4 - local.get $4 + local.get $0 + local.get $0 + local.get $0 f32.const 0.5 f32.mul - local.get $4 + local.get $0 f32.mul - local.tee $7 + local.tee $0 f32.sub i32.reinterpret_f32 i32.const -4096 i32.and f32.reinterpret_i32 - local.tee $4 + local.tee $5 f32.sub - local.get $7 + local.get $0 f32.sub - local.get $2 - local.get $7 local.get $3 local.get $0 + local.get $4 + local.get $2 f32.const 0.2849878668785095 f32.mul f32.const 0.6666666269302368 f32.add f32.mul - local.get $0 - local.get $0 + local.get $2 + local.get $2 f32.const 0.24279078841209412 f32.mul f32.const 0.40000972151756287 @@ -6467,7 +6467,7 @@ f32.mul f32.add local.tee $0 - local.get $4 + local.get $5 f32.add f32.const -3.168997136526741e-05 f32.mul @@ -6476,22 +6476,22 @@ f32.const 0.434326171875 f32.mul f32.add - local.get $4 + local.get $5 f32.const 0.434326171875 f32.mul f32.add - local.get $6 + local.get $7 f32.const 0.3010292053222656 f32.mul f32.add ) (func $~lib/math/NativeMath.log2 (param $0 f64) (result f64) (local $1 i64) - (local $2 i32) - (local $3 i64) + (local $2 f64) + (local $3 f64) (local $4 f64) - (local $5 f64) - (local $6 f64) + (local $5 i32) + (local $6 i64) (local $7 f64) (local $8 f64) (local $9 f64) @@ -6508,70 +6508,70 @@ local.get $0 f64.const 1 f64.sub - local.tee $4 + local.tee $0 i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $5 + local.tee $7 f64.const 1.4426950407214463 f64.mul - local.set $6 - local.get $4 - local.get $4 + local.set $3 + local.get $0 + local.get $0 f64.mul - local.tee $7 - local.get $7 + local.tee $2 + local.get $2 f64.mul - local.set $8 - local.get $6 - local.get $7 - local.get $4 + local.set $4 + local.get $3 + local.get $2 + local.get $0 f64.const 0.48089834696298744 f64.mul f64.const -0.7213475204444817 f64.add f64.mul - local.tee $9 + local.tee $8 f64.add - local.tee $0 - local.get $4 - local.get $5 + local.tee $9 + local.get $0 + local.get $7 f64.sub f64.const 1.4426950407214463 f64.mul - local.get $4 + local.get $0 f64.const 1.6751713164886512e-10 f64.mul f64.add - local.get $6 - local.get $0 - f64.sub + local.get $3 local.get $9 + f64.sub + local.get $8 f64.add f64.add - local.get $8 local.get $4 + local.get $0 f64.const 0.2885390081805197 f64.mul f64.const -0.360673760222145 f64.add - local.get $7 - local.get $4 + local.get $2 + local.get $0 f64.const 0.2060992861022954 f64.mul f64.const -0.24044917405728863 f64.add f64.mul f64.add - local.get $8 local.get $4 + local.get $0 f64.const 0.1603032746063156 f64.mul f64.const -0.18033596705327856 f64.add - local.get $7 - local.get $4 + local.get $2 + local.get $0 f64.const 0.13046826811283835 f64.mul f64.const -0.14483316576701266 @@ -6589,7 +6589,7 @@ i64.const 48 i64.shr_u i32.wrap_i64 - local.tee $2 + local.tee $5 i32.const 16 i32.sub i32.const 32736 @@ -6613,12 +6613,12 @@ br_if $~lib/util/math/log2_lut|inlined.0 drop i32.const 1 - local.get $2 + local.get $5 i32.const 32752 i32.and i32.const 32752 i32.eq - local.get $2 + local.get $5 i32.const 32768 i32.and select @@ -6642,7 +6642,7 @@ local.get $1 i64.const 4604367669032910848 i64.sub - local.tee $3 + local.tee $6 i64.const 46 i64.shr_u i64.const 63 @@ -6653,17 +6653,17 @@ local.tee $10 i32.const 7968 i32.add - local.set $2 - local.get $3 + local.set $5 + local.get $6 i64.const 52 i64.shr_s f64.convert_i64_s - local.get $2 + local.get $5 f64.load offset=8 f64.add - local.tee $0 + local.tee $2 local.get $1 - local.get $3 + local.get $6 i64.const -4503599627370496 i64.and i64.sub @@ -6677,56 +6677,56 @@ local.get $10 f64.load offset=8 f64.sub - local.get $2 + local.get $5 f64.load f64.mul - local.tee $4 + local.tee $0 i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $5 + local.tee $4 f64.const 1.4426950407214463 f64.mul - local.tee $6 + local.tee $7 f64.add - local.set $7 - local.get $0 - local.get $7 + local.set $3 + local.get $2 + local.get $3 f64.sub - local.get $6 + local.get $7 f64.add + local.get $0 local.get $4 - local.get $5 f64.sub f64.const 1.4426950407214463 f64.mul - local.get $4 + local.get $0 f64.const 1.6751713164886512e-10 f64.mul f64.add f64.add - local.get $4 - local.get $4 + local.get $0 + local.get $0 f64.mul - local.tee $0 - local.get $4 + local.tee $2 + local.get $0 f64.const 0.4808983469629985 f64.mul f64.const -0.7213475204444882 f64.add + local.get $2 local.get $0 - local.get $4 f64.const 0.2885390073180969 f64.mul f64.const -0.36067375954075914 f64.add f64.mul f64.add - local.get $0 - local.get $0 + local.get $2 + local.get $2 f64.mul - local.get $4 + local.get $0 f64.const 0.2061202382173603 f64.mul f64.const -0.2404693555628422 @@ -6735,7 +6735,7 @@ f64.add f64.mul f64.add - local.get $7 + local.get $3 f64.add end ) @@ -6796,7 +6796,7 @@ local.get $3 i32.const 1060306944 i32.sub - local.tee $5 + local.tee $6 i32.const 19 i32.shr_u i32.const 15 @@ -6805,40 +6805,40 @@ i32.shl i32.const 10016 i32.add - local.set $6 + local.set $5 local.get $3 - local.get $5 + local.get $6 i32.const -8388608 i32.and i32.sub f32.reinterpret_i32 f64.promote_f32 - local.get $6 + local.get $5 f64.load f64.mul f64.const 1 f64.sub - local.tee $4 - local.get $4 + local.tee $7 + local.get $7 f64.mul - local.set $7 - local.get $4 + local.set $4 + local.get $7 f64.const 0.4811247078767291 f64.mul f64.const -0.7213476299867769 f64.add - local.get $7 + local.get $4 f64.const -0.36051725506874704 f64.mul f64.add - local.get $7 - f64.mul local.get $4 + f64.mul + local.get $7 f64.const 1.4426950186867042 f64.mul - local.get $6 - f64.load offset=8 local.get $5 + f64.load offset=8 + local.get $6 i32.const 23 i32.shr_s f64.convert_i32_s @@ -6891,9 +6891,9 @@ (local $3 i64) (local $4 i64) (local $5 i64) - (local $6 f64) + (local $6 i64) (local $7 i64) - (local $8 i64) + (local $8 f64) (local $9 i64) block $__inlined_func$~lib/math/NativeMath.mod (result f64) local.get $0 @@ -6910,20 +6910,20 @@ drop local.get $1 i64.reinterpret_f64 - local.tee $7 + local.tee $5 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.set $5 - local.get $7 + local.set $6 + local.get $5 i64.const 1 i64.shl - local.tee $8 + local.tee $7 i64.eqz local.get $0 i64.reinterpret_f64 - local.tee $9 + local.tee $3 i64.const 52 i64.shr_u i64.const 2047 @@ -6940,37 +6940,37 @@ local.get $0 local.get $1 f64.mul - local.tee $6 - local.get $6 + local.tee $8 + local.get $8 f64.div br $__inlined_func$~lib/math/NativeMath.mod end - local.get $8 - local.get $9 + local.get $7 + local.get $3 i64.const 1 i64.shl - local.tee $3 + local.tee $9 i64.ge_u if local.get $0 - local.get $3 - local.get $8 + local.get $7 + local.get $9 i64.ne f64.convert_i32_u f64.mul br $__inlined_func$~lib/math/NativeMath.mod end - local.get $9 + local.get $3 i64.const 63 i64.shr_u - local.set $8 + local.set $7 local.get $4 i64.eqz if (result i64) - local.get $9 + local.get $3 i64.const 1 local.get $4 - local.get $9 + local.get $3 i64.const 12 i64.shl i64.clz @@ -6979,51 +6979,51 @@ i64.sub i64.shl else - local.get $9 + local.get $3 i64.const 4503599627370495 i64.and i64.const 4503599627370496 i64.or end local.set $3 - local.get $5 + local.get $6 i64.eqz if (result i64) - local.get $7 + local.get $5 i64.const 1 + local.get $6 local.get $5 - local.get $7 i64.const 12 i64.shl i64.clz i64.sub - local.tee $5 + local.tee $6 i64.sub i64.shl else - local.get $7 + local.get $5 i64.const 4503599627370495 i64.and i64.const 4503599627370496 i64.or end - local.set $7 + local.set $5 block $folding-inner0 loop $while-continue|0 local.get $4 - local.get $5 + local.get $6 i64.gt_s if local.get $3 - local.get $7 + local.get $5 i64.ge_u if (result i64) local.get $3 - local.get $7 + local.get $5 i64.eq br_if $folding-inner0 local.get $3 - local.get $7 + local.get $5 i64.sub else local.get $3 @@ -7040,15 +7040,15 @@ end local.get $4 local.get $3 - local.get $7 + local.get $5 i64.ge_u if local.get $3 - local.get $7 + local.get $5 i64.eq br_if $folding-inner0 local.get $3 - local.get $7 + local.get $5 i64.sub local.set $3 end @@ -7056,32 +7056,32 @@ i64.const 11 i64.shl i64.clz - local.tee $4 + local.tee $5 i64.sub - local.set $5 + local.set $4 local.get $3 - local.get $4 + local.get $5 i64.shl local.set $3 - local.get $5 + local.get $4 i64.const 0 i64.gt_s if (result i64) local.get $3 i64.const 4503599627370496 i64.sub - local.get $5 + local.get $4 i64.const 52 i64.shl i64.or else local.get $3 i64.const 1 - local.get $5 + local.get $4 i64.sub i64.shr_u end - local.get $8 + local.get $7 i64.const 63 i64.shl i64.or @@ -7113,6 +7113,7 @@ (local $5 i32) (local $6 i32) (local $7 i32) + (local $8 i32) local.get $1 f32.abs f32.const 1 @@ -7128,31 +7129,31 @@ end local.get $1 i32.reinterpret_f32 - local.tee $4 + local.tee $6 i32.const 23 i32.shr_u i32.const 255 i32.and - local.set $6 + local.set $5 i32.const 1 local.get $1 local.get $1 f32.ne local.get $0 i32.reinterpret_f32 - local.tee $3 + local.tee $7 i32.const 23 i32.shr_u i32.const 255 i32.and - local.tee $7 + local.tee $8 i32.const 255 i32.eq i32.const 1 - local.get $4 + local.get $6 i32.const 1 i32.shl - local.tee $2 + local.tee $3 select select if @@ -7164,71 +7165,71 @@ f32.div return end - local.get $2 local.get $3 + local.get $7 i32.const 1 i32.shl - local.tee $5 + local.tee $2 i32.ge_u if local.get $0 local.get $2 - local.get $5 + local.get $3 i32.ne f32.convert_i32_u f32.mul return end - local.get $3 + local.get $7 i32.const -2147483648 i32.and - local.set $5 - local.get $7 + local.set $4 + local.get $8 if (result i32) - local.get $3 + local.get $7 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $3 + local.get $7 i32.const 1 + local.get $8 local.get $7 - local.get $3 i32.const 9 i32.shl i32.clz i32.sub - local.tee $7 + local.tee $8 i32.sub i32.shl end local.set $2 - local.get $6 + local.get $5 if (result i32) - local.get $4 + local.get $6 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $4 + local.get $6 i32.const 1 + local.get $5 local.get $6 - local.get $4 i32.const 9 i32.shl i32.clz i32.sub - local.tee $6 + local.tee $5 i32.sub i32.shl end local.set $3 block $folding-inner0 loop $while-continue|0 - local.get $6 - local.get $7 + local.get $5 + local.get $8 i32.lt_s if local.get $2 @@ -7248,14 +7249,14 @@ i32.const 1 i32.shl local.set $2 - local.get $7 + local.get $8 i32.const 1 i32.sub - local.set $7 + local.set $8 br $while-continue|0 end end - local.get $7 + local.get $8 local.get $2 local.get $3 i32.ge_u @@ -7273,32 +7274,32 @@ i32.const 8 i32.shl i32.clz - local.tee $4 + local.tee $3 i32.sub - local.set $3 + local.set $5 local.get $2 - local.get $4 + local.get $3 i32.shl local.set $2 - local.get $3 + local.get $5 i32.const 0 i32.gt_s if (result i32) local.get $2 i32.const 8388608 i32.sub - local.get $3 + local.get $5 i32.const 23 i32.shl i32.or else local.get $2 i32.const 1 - local.get $3 + local.get $5 i32.sub i32.shr_u end - local.get $5 + local.get $4 i32.or f32.reinterpret_i32 return @@ -7317,8 +7318,8 @@ (local $8 f64) (local $9 f64) (local $10 f64) - (local $11 f64) - (local $12 i64) + (local $11 i64) + (local $12 f64) (local $13 f64) (local $14 f64) (local $15 f64) @@ -7383,14 +7384,14 @@ local.tee $4 i64.const 52 i64.shr_u - local.set $7 + local.set $5 block $~lib/util/math/exp_inline|inlined.0 (result f64) local.get $0 i64.reinterpret_f64 local.tee $2 i64.const 52 i64.shr_u - local.tee $5 + local.tee $7 i64.const 1 i64.sub i64.const 2046 @@ -7398,7 +7399,7 @@ if (result i32) i32.const 1 else - local.get $7 + local.get $5 i64.const 2047 i64.and i64.const 958 @@ -7561,13 +7562,13 @@ i64.shr_u i64.const 2047 i64.and - local.tee $12 + local.tee $11 i64.const 1023 i64.lt_u br_if $~lib/util/math/checkint|inlined.1 drop i32.const 2 - local.get $12 + local.get $11 i64.const 1075 i64.gt_u br_if $~lib/util/math/checkint|inlined.1 @@ -7575,10 +7576,10 @@ i32.const 0 i64.const 1 i64.const 1075 - local.get $12 + local.get $11 i64.sub i64.shl - local.tee $12 + local.tee $11 i64.const 1 i64.sub local.get $4 @@ -7589,7 +7590,7 @@ drop i32.const 1 local.get $4 - local.get $12 + local.get $11 i64.and i64.const 0 i64.ne @@ -7608,10 +7609,10 @@ f64.div br $~lib/util/math/pow_lut|inlined.0 end - local.get $5 + local.get $7 i64.const 2047 i64.and - local.set $5 + local.set $7 i32.const 262144 i32.const 0 local.get $3 @@ -7624,7 +7625,7 @@ i64.and local.set $2 end - local.get $7 + local.get $5 i64.const 2047 i64.and i64.const 958 @@ -7639,7 +7640,7 @@ br_if $~lib/util/math/pow_lut|inlined.0 drop f64.const 1 - local.get $7 + local.get $5 i64.const 2047 i64.and i64.const 958 @@ -7648,7 +7649,7 @@ drop f64.const inf f64.const 0 - local.get $7 + local.get $5 i64.const 2048 i64.lt_u local.get $2 @@ -7658,7 +7659,7 @@ select br $~lib/util/math/pow_lut|inlined.0 end - local.get $5 + local.get $7 i64.eqz if (result i64) local.get $0 @@ -7701,91 +7702,91 @@ i32.add local.tee $3 f64.load - local.tee $8 + local.tee $9 f64.mul f64.const 1 f64.sub - local.set $13 + local.set $8 local.get $2 i64.const 52 i64.shr_s f64.convert_i64_s - local.tee $10 + local.tee $12 f64.const 0.6931471805598903 f64.mul local.get $3 f64.load offset=16 f64.add - local.tee $11 - local.get $13 + local.tee $13 + local.get $8 local.get $5 f64.reinterpret_i64 local.get $0 f64.sub - local.get $8 + local.get $9 f64.mul local.tee $14 f64.add local.tee $0 f64.add - local.set $8 + local.set $9 local.get $0 local.get $0 f64.const -0.5 f64.mul local.tee $15 f64.mul - local.set $9 + local.set $10 + local.get $9 + local.get $8 local.get $8 - local.get $13 - local.get $13 f64.const -0.5 f64.mul - local.tee $13 - f64.mul local.tee $16 - f64.add + f64.mul local.tee $17 - local.get $17 - local.get $10 + f64.add + local.tee $8 + local.get $8 + local.get $12 f64.const 5.497923018708371e-14 f64.mul local.get $3 f64.load offset=24 f64.add - local.get $11 - local.get $8 + local.get $13 + local.get $9 f64.sub local.get $0 f64.add f64.add local.get $14 local.get $15 - local.get $13 + local.get $16 f64.add f64.mul f64.add + local.get $9 local.get $8 - local.get $17 f64.sub - local.get $16 + local.get $17 f64.add f64.add local.get $0 - local.get $9 + local.get $10 f64.mul local.get $0 f64.const 0.5000000000000007 f64.mul f64.const -0.6666666666666679 f64.add - local.get $9 + local.get $10 local.get $0 f64.const -0.6666666663487739 f64.mul f64.const 0.7999999995323976 f64.add - local.get $9 + local.get $10 local.get $0 f64.const 1.0000415263675542 f64.mul @@ -7808,7 +7809,7 @@ i64.const -134217728 i64.and f64.reinterpret_i64 - local.tee $0 + local.tee $10 local.get $8 i64.reinterpret_f64 i64.const -134217728 @@ -7816,9 +7817,9 @@ f64.reinterpret_i64 local.tee $9 f64.mul - local.set $10 + local.set $0 local.get $1 - local.get $0 + local.get $10 f64.sub local.get $9 f64.mul @@ -7830,8 +7831,8 @@ f64.add f64.mul f64.add - local.set $0 - local.get $10 + local.set $1 + local.get $0 i64.reinterpret_f64 local.tee $2 i64.const 52 @@ -7883,14 +7884,14 @@ i32.const 0 local.set $3 end - local.get $10 + local.get $0 f64.const 184.6649652337873 f64.mul f64.const 6755399441055744 f64.add - local.tee $1 + local.tee $8 i64.reinterpret_f64 - local.tee $2 + local.tee $4 i64.const 127 i64.and i64.const 1 @@ -7904,25 +7905,25 @@ i64.load offset=8 local.get $6 i64.extend_i32_u - local.get $2 + local.get $4 i64.add i64.const 45 i64.shl i64.add - local.set $4 - local.get $10 - local.get $1 + local.set $2 + local.get $0 + local.get $8 f64.const 6755399441055744 f64.sub - local.tee $1 + local.tee $0 f64.const -0.005415212348111709 f64.mul f64.add - local.get $1 + local.get $0 f64.const -1.2864023111638346e-14 f64.mul f64.add - local.get $0 + local.get $1 f64.add local.tee $0 local.get $0 @@ -7950,61 +7951,61 @@ f64.add f64.mul f64.add - local.set $0 + local.set $1 local.get $3 i32.eqz if block $~lib/util/math/specialcase|inlined.1 (result f64) - local.get $2 + local.get $4 i64.const 2147483648 i64.and i64.eqz if - local.get $4 + local.get $2 i64.const 4544132024016830464 i64.sub f64.reinterpret_i64 - local.tee $1 - local.get $1 + local.tee $0 local.get $0 + local.get $1 f64.mul f64.add f64.const 5486124068793688683255936e279 f64.mul br $~lib/util/math/specialcase|inlined.1 end - local.get $4 + local.get $2 i64.const 4602678819172646912 i64.add local.tee $2 f64.reinterpret_i64 - local.tee $1 + local.tee $8 + local.get $8 local.get $1 - local.get $0 f64.mul f64.add - local.tee $8 + local.tee $0 f64.abs f64.const 1 f64.lt if (result f64) f64.const 1 - local.get $8 + local.get $0 f64.copysign local.tee $9 - local.get $8 + local.get $0 f64.add local.tee $10 local.get $9 local.get $10 f64.sub - local.get $8 + local.get $0 f64.add - local.get $1 local.get $8 + local.get $0 f64.sub + local.get $8 local.get $1 - local.get $0 f64.mul f64.add f64.add @@ -8023,18 +8024,18 @@ local.get $0 end else - local.get $8 + local.get $0 end f64.const 2.2250738585072014e-308 f64.mul end br $~lib/util/math/exp_inline|inlined.0 end - local.get $4 + local.get $2 f64.reinterpret_i64 - local.tee $1 - local.get $1 + local.tee $0 local.get $0 + local.get $1 f64.mul f64.add end @@ -8128,7 +8129,7 @@ i32.sub i32.const -16777217 i32.ge_u - local.tee $7 + local.tee $5 local.get $0 i32.reinterpret_f32 local.tee $2 @@ -8138,7 +8139,7 @@ i32.ge_u i32.or if - local.get $7 + local.get $5 if f32.const 1 local.get $3 @@ -8328,7 +8329,7 @@ i32.const 1 i32.eq select - local.set $5 + local.set $7 local.get $2 i32.const 2147483647 i32.and @@ -8376,22 +8377,22 @@ f64.mul f64.const 1 f64.sub - local.tee $4 - local.get $4 + local.tee $8 + local.get $8 f64.mul - local.set $8 + local.set $4 local.get $1 f64.promote_f32 - local.get $4 + local.get $8 f64.const 0.288457581109214 f64.mul f64.const -0.36092606229713164 f64.add - local.get $8 - local.get $8 + local.get $4 + local.get $4 f64.mul f64.mul - local.get $4 + local.get $8 f64.const 1.4426950408774342 f64.mul local.get $2 @@ -8402,17 +8403,17 @@ f64.convert_i32_s f64.add f64.add - local.get $4 + local.get $8 f64.const 0.480898481472577 f64.mul f64.const -0.7213474675006291 f64.add - local.get $8 + local.get $4 f64.mul f64.add f64.add f64.mul - local.tee $4 + local.tee $8 i64.reinterpret_f64 i64.const 47 i64.shr_u @@ -8423,35 +8424,35 @@ if f32.const -1584563250285286751870879e5 f32.const 1584563250285286751870879e5 - local.get $5 + local.get $7 select f32.const 1584563250285286751870879e5 f32.mul - local.get $4 + local.get $8 f64.const 127.99999995700433 f64.gt br_if $~lib/util/math/powf_lut|inlined.0 drop f32.const -2.524354896707238e-29 f32.const 2.524354896707238e-29 - local.get $5 + local.get $7 select f32.const 2.524354896707238e-29 f32.mul - local.get $4 + local.get $8 f64.const -150 f64.le br_if $~lib/util/math/powf_lut|inlined.0 drop end - local.get $4 + local.get $8 f64.const 211106232532992 f64.add - local.tee $8 + local.tee $4 i64.reinterpret_f64 local.set $6 - local.get $4 local.get $8 + local.get $4 f64.const 211106232532992 f64.sub f64.sub @@ -8479,7 +8480,7 @@ i32.const 7712 i32.add i64.load - local.get $5 + local.get $7 i64.extend_i32_u local.get $6 i64.add @@ -8690,18 +8691,18 @@ (local $3 i64) (local $4 i64) (local $5 i32) - (local $6 i32) - (local $7 i64) - (local $8 f64) + (local $6 i64) + (local $7 f64) + (local $8 i32) local.get $1 i64.reinterpret_f64 - local.tee $7 + local.tee $6 i64.const 52 i64.shr_u i64.const 2047 i64.and local.set $4 - local.get $7 + local.get $6 i64.const 1 i64.shl i64.eqz @@ -8741,7 +8742,7 @@ i64.const 63 i64.shr_u i32.wrap_i64 - local.set $6 + local.set $8 local.get $3 i64.eqz if (result i64) @@ -8767,10 +8768,10 @@ local.get $4 i64.eqz if (result i64) - local.get $7 + local.get $6 i64.const 1 local.get $4 - local.get $7 + local.get $6 i64.const 12 i64.shl i64.clz @@ -8779,13 +8780,13 @@ i64.sub i64.shl else - local.get $7 + local.get $6 i64.const 4503599627370495 i64.and i64.const 4503599627370496 i64.or end - local.set $7 + local.set $6 block $do-break|0 local.get $3 local.get $4 @@ -8806,7 +8807,7 @@ i64.gt_s if local.get $2 - local.get $7 + local.get $6 i64.ge_u if (result i64) local.get $5 @@ -8814,7 +8815,7 @@ i32.add local.set $5 local.get $2 - local.get $7 + local.get $6 i64.sub else local.get $2 @@ -8834,7 +8835,7 @@ end end local.get $2 - local.get $7 + local.get $6 i64.ge_u if local.get $5 @@ -8842,7 +8843,7 @@ i32.add local.set $5 local.get $2 - local.get $7 + local.get $6 i64.sub local.set $2 end @@ -8857,18 +8858,18 @@ i64.const 11 i64.shl i64.clz - local.tee $7 + local.tee $6 i64.sub local.set $3 local.get $2 - local.get $7 + local.get $6 i64.shl local.set $2 end end local.get $1 f64.abs - local.set $1 + local.set $0 local.get $3 i64.const 0 i64.gt_s @@ -8888,14 +8889,14 @@ i64.shr_u end f64.reinterpret_i64 - local.tee $8 - local.get $8 + local.tee $1 + local.get $1 f64.add - local.set $0 - local.get $8 + local.set $7 local.get $1 + local.get $0 f64.sub - local.get $8 + local.get $1 local.get $3 local.get $4 i64.eq @@ -8912,12 +8913,12 @@ i32.const 1 i32.and local.get $0 - local.get $1 + local.get $7 f64.eq i32.and local.get $0 - local.get $1 - f64.gt + local.get $7 + f64.lt i32.or else i32.const 0 @@ -8927,7 +8928,7 @@ local.tee $0 f64.neg local.get $0 - local.get $6 + local.get $8 select ) (func $~lib/math/NativeMathf.rem (param $0 f32) (param $1 f32) (result f32) @@ -8936,11 +8937,11 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) - (local $8 f32) + (local $7 f32) + (local $8 i32) local.get $1 i32.reinterpret_f32 - local.tee $7 + local.tee $6 i32.const 23 i32.shr_u i32.const 255 @@ -8961,7 +8962,7 @@ i32.const 255 i32.eq i32.const 1 - local.get $7 + local.get $6 i32.const 1 i32.shl select @@ -8986,7 +8987,7 @@ local.get $2 i32.const 31 i32.shr_u - local.set $6 + local.set $8 local.get $3 if (result i32) local.get $2 @@ -9010,16 +9011,16 @@ local.set $2 local.get $4 if (result i32) - local.get $7 + local.get $6 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $7 + local.get $6 i32.const 1 local.get $4 - local.get $7 + local.get $6 i32.const 9 i32.shl i32.clz @@ -9028,7 +9029,7 @@ i32.sub i32.shl end - local.set $7 + local.set $6 block $do-break|0 local.get $3 local.get $4 @@ -9049,7 +9050,7 @@ i32.gt_s if local.get $2 - local.get $7 + local.get $6 i32.ge_u if (result i32) local.get $5 @@ -9057,7 +9058,7 @@ i32.add local.set $5 local.get $2 - local.get $7 + local.get $6 i32.sub else local.get $2 @@ -9077,7 +9078,7 @@ end end local.get $2 - local.get $7 + local.get $6 i32.ge_u if local.get $5 @@ -9085,7 +9086,7 @@ i32.add local.set $5 local.get $2 - local.get $7 + local.get $6 i32.sub local.set $2 end @@ -9096,11 +9097,11 @@ i32.const 8 i32.shl i32.clz - local.tee $7 + local.tee $6 i32.sub local.set $3 local.get $2 - local.get $7 + local.get $6 i32.shl local.set $2 else @@ -9110,7 +9111,7 @@ end local.get $1 f32.abs - local.set $1 + local.set $0 local.get $3 i32.const 0 i32.gt_s @@ -9130,14 +9131,14 @@ i32.shr_u end f32.reinterpret_i32 - local.tee $8 - local.get $8 + local.tee $1 + local.get $1 f32.add - local.set $0 - local.get $8 + local.set $7 local.get $1 + local.get $0 f32.sub - local.get $8 + local.get $1 local.get $3 local.get $4 i32.eq @@ -9154,12 +9155,12 @@ i32.const 1 i32.and local.get $0 - local.get $1 + local.get $7 f32.eq i32.and local.get $0 - local.get $1 - f32.gt + local.get $7 + f32.lt i32.or else i32.const 0 @@ -9169,22 +9170,22 @@ local.tee $0 f32.neg local.get $0 - local.get $6 + local.get $8 select ) (func $~lib/math/NativeMath.sin (param $0 f64) (result f64) (local $1 f64) - (local $2 i64) + (local $2 f64) (local $3 f64) (local $4 i32) - (local $5 i32) + (local $5 i64) (local $6 i32) - (local $7 f64) + (local $7 i32) (local $8 f64) (local $9 f64) local.get $0 i64.reinterpret_f64 - local.tee $2 + local.tee $5 i64.const 32 i64.shr_u i32.wrap_i64 @@ -9252,18 +9253,18 @@ return end block $~lib/math/rempio2|inlined.1 (result i32) - local.get $2 + local.get $5 i64.const 32 i64.shr_u i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $5 + local.tee $4 i32.const 1073928572 i32.lt_u if i32.const 1 - local.set $4 + local.set $7 local.get $6 if (result f64) local.get $0 @@ -9271,8 +9272,8 @@ f64.add local.set $0 i32.const -1 - local.set $4 - local.get $5 + local.set $7 + local.get $4 i32.const 1073291771 i32.ne if (result f64) @@ -9303,7 +9304,7 @@ f64.const 1.5707963267341256 f64.sub local.set $0 - local.get $5 + local.get $4 i32.const 1073291771 i32.ne if (result f64) @@ -9333,14 +9334,14 @@ local.get $0 global.set $~lib/math/rempio2_y0 global.set $~lib/math/rempio2_y1 - local.get $4 + local.get $7 br $~lib/math/rempio2|inlined.1 end - local.get $5 + local.get $4 i32.const 1094263291 i32.lt_u if - local.get $5 + local.get $4 i32.const 20 i32.shr_u local.tee $4 @@ -9349,12 +9350,12 @@ f64.const 0.6366197723675814 f64.mul f64.nearest - local.tee $7 + local.tee $2 f64.const 1.5707963267341256 f64.mul f64.sub local.tee $0 - local.get $7 + local.get $2 f64.const 6.077100506506192e-11 f64.mul local.tee $3 @@ -9372,12 +9373,12 @@ i32.const 16 i32.gt_u if - local.get $7 + local.get $2 f64.const 2.0222662487959506e-21 f64.mul local.get $0 local.get $0 - local.get $7 + local.get $2 f64.const 6.077100506303966e-11 f64.mul local.tee $1 @@ -9405,12 +9406,12 @@ i32.const 49 i32.gt_u if (result f64) - local.get $7 + local.get $2 f64.const 8.4784276603689e-32 f64.mul local.get $0 local.get $0 - local.get $7 + local.get $2 f64.const 2.0222662487111665e-21 f64.mul local.tee $1 @@ -9437,12 +9438,12 @@ local.get $3 f64.sub global.set $~lib/math/rempio2_y1 - local.get $7 + local.get $2 i32.trunc_f64_s br $~lib/math/rempio2|inlined.1 end i32.const 0 - local.get $2 + local.get $5 call $~lib/math/pio2_large_quot local.tee $4 i32.sub @@ -9452,36 +9453,36 @@ end local.set $4 global.get $~lib/math/rempio2_y0 - local.set $3 + local.set $1 global.get $~lib/math/rempio2_y1 - local.set $7 + local.set $2 local.get $4 i32.const 1 i32.and if (result f64) - local.get $3 - local.get $3 + local.get $1 + local.get $1 f64.mul - local.tee $8 - local.get $8 + local.tee $0 + local.get $0 f64.mul - local.set $9 + local.set $3 f64.const 1 - local.get $8 + local.get $0 f64.const 0.5 f64.mul - local.tee $0 + local.tee $8 f64.sub - local.tee $1 + local.tee $9 f64.const 1 - local.get $1 - f64.sub - local.get $0 + local.get $9 f64.sub local.get $8 - local.get $8 - local.get $8 - local.get $8 + f64.sub + local.get $0 + local.get $0 + local.get $0 + local.get $0 f64.const 2.480158728947673e-05 f64.mul f64.const -0.001388888888887411 @@ -9490,11 +9491,11 @@ f64.const 0.0416666666666666 f64.add f64.mul - local.get $9 - local.get $9 + local.get $3 + local.get $3 f64.mul - local.get $8 - local.get $8 + local.get $0 + local.get $0 f64.const -1.1359647557788195e-11 f64.mul f64.const 2.087572321298175e-09 @@ -9505,26 +9506,26 @@ f64.mul f64.add f64.mul - local.get $3 - local.get $7 + local.get $1 + local.get $2 f64.mul f64.sub f64.add f64.add else - local.get $3 - local.get $3 + local.get $1 + local.get $1 f64.mul local.tee $0 - local.get $3 + local.get $1 f64.mul - local.set $1 - local.get $3 + local.set $3 + local.get $1 local.get $0 - local.get $7 + local.get $2 f64.const 0.5 f64.mul - local.get $1 + local.get $3 local.get $0 local.get $0 f64.const 2.7557313707070068e-06 @@ -9549,9 +9550,9 @@ f64.mul f64.sub f64.mul - local.get $7 + local.get $2 f64.sub - local.get $1 + local.get $3 f64.const -0.16666666666666632 f64.mul f64.sub @@ -9569,11 +9570,11 @@ (local $1 i32) (local $2 f64) (local $3 f64) - (local $4 f64) - (local $5 i64) - (local $6 i32) - (local $7 i32) - (local $8 i64) + (local $4 i64) + (local $5 i32) + (local $6 f64) + (local $7 i64) + (local $8 i32) (local $9 i64) block $folding-inner0 local.get $0 @@ -9581,7 +9582,7 @@ local.tee $1 i32.const 31 i32.shr_u - local.set $6 + local.set $5 local.get $1 i32.const 2147483647 i32.and @@ -9601,10 +9602,10 @@ local.tee $2 local.get $2 f64.mul - local.tee $4 + local.tee $3 local.get $2 f64.mul - local.set $3 + local.set $6 br $folding-inner0 end local.get $1 @@ -9615,7 +9616,7 @@ i32.const 1075235811 i32.le_u if - local.get $6 + local.get $5 if (result f32) local.get $0 f64.promote_f32 @@ -9692,16 +9693,16 @@ local.get $2 f64.const 3.141592653589793 f64.sub - local.get $6 + local.get $5 select f64.neg local.tee $2 local.get $2 f64.mul - local.tee $4 + local.tee $3 local.get $2 f64.mul - local.set $3 + local.set $6 br $folding-inner0 end local.get $1 @@ -9712,7 +9713,7 @@ i32.const 1085271519 i32.le_u if - local.get $6 + local.get $5 if (result f32) local.get $0 f64.promote_f32 @@ -9789,15 +9790,15 @@ local.get $2 f64.const 6.283185307179586 f64.sub - local.get $6 + local.get $5 select local.tee $2 local.get $2 f64.mul - local.tee $4 + local.tee $3 local.get $2 f64.mul - local.set $3 + local.set $6 br $folding-inner0 end local.get $1 @@ -9816,22 +9817,22 @@ if local.get $0 f64.promote_f32 - local.tee $2 + local.tee $3 f64.const 0.6366197723675814 f64.mul f64.nearest - local.set $3 - local.get $2 + local.set $2 local.get $3 + local.get $2 f64.const 1.5707963109016418 f64.mul f64.sub - local.get $3 + local.get $2 f64.const 1.5893254773528196e-08 f64.mul f64.sub global.set $~lib/math/rempio2f_y - local.get $3 + local.get $2 i32.trunc_f64_s br $~lib/math/rempio2f|inlined.1 end @@ -9840,11 +9841,11 @@ i32.shr_s i32.const 152 i32.sub - local.tee $7 + local.tee $8 i32.const 63 i32.and i64.extend_i32_s - local.set $8 + local.set $4 f64.const 8.515303950216386e-20 local.get $0 f64.promote_f32 @@ -9856,7 +9857,7 @@ i32.or i64.extend_i32_s local.tee $9 - local.get $7 + local.get $8 i32.const 6 i32.shr_s i32.const 3 @@ -9865,37 +9866,37 @@ i32.add local.tee $1 i64.load - local.get $8 + local.get $4 i64.shl local.get $1 i64.load offset=8 - local.tee $5 + local.tee $7 i64.const 64 - local.get $8 + local.get $4 i64.sub i64.shr_u i64.or i64.mul - local.get $8 + local.get $4 i64.const 32 i64.gt_u if (result i64) - local.get $5 - local.get $8 + local.get $7 + local.get $4 i64.const 32 i64.sub i64.shl local.get $1 i64.load offset=16 i64.const 96 - local.get $8 + local.get $4 i64.sub i64.shr_u i64.or else - local.get $5 + local.get $7 i64.const 32 - local.get $8 + local.get $4 i64.sub i64.shr_u end @@ -9904,18 +9905,18 @@ i64.const 32 i64.shr_u i64.add - local.tee $5 + local.tee $4 i64.const 2 i64.shl - local.tee $8 + local.tee $7 f64.convert_i64_s f64.mul global.set $~lib/math/rempio2f_y i32.const 0 - local.get $5 + local.get $4 i64.const 62 i64.shr_u - local.get $8 + local.get $7 i64.const 63 i64.shr_u i64.add @@ -9923,7 +9924,7 @@ local.tee $1 i32.sub local.get $1 - local.get $6 + local.get $5 select end local.set $1 @@ -10000,20 +10001,20 @@ return end local.get $2 + local.get $6 local.get $3 - local.get $4 f64.const 0.008333329385889463 f64.mul f64.const -0.16666666641626524 f64.add f64.mul f64.add + local.get $6 + local.get $3 local.get $3 - local.get $4 - local.get $4 f64.mul f64.mul - local.get $4 + local.get $3 f64.const 2.718311493989822e-06 f64.mul f64.const -1.9839334836096632e-04 @@ -10024,50 +10025,50 @@ ) (func $std/math/test_sinh (param $0 f64) (param $1 f64) (param $2 f64) (result i32) (local $3 f64) - (local $4 i32) - (local $5 i64) - (local $6 f64) + (local $4 f64) + (local $5 i32) + (local $6 i64) block $__inlined_func$~lib/math/NativeMath.sinh (result f64) local.get $0 i64.reinterpret_f64 i64.const 9223372036854775807 i64.and - local.tee $5 + local.tee $6 f64.reinterpret_i64 - local.set $6 + local.set $3 f64.const 0.5 local.get $0 f64.copysign - local.set $3 - local.get $5 + local.set $4 + local.get $6 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $4 + local.tee $5 i32.const 1082535490 i32.lt_u if - local.get $6 + local.get $3 call $~lib/math/NativeMath.expm1 - local.set $6 - local.get $4 + local.set $3 + local.get $5 i32.const 1072693248 i32.lt_u if local.get $0 - local.get $4 + local.get $5 i32.const 1045430272 i32.lt_u br_if $__inlined_func$~lib/math/NativeMath.sinh drop + local.get $4 + local.get $3 local.get $3 - local.get $6 - local.get $6 f64.add - local.get $6 - local.get $6 + local.get $3 + local.get $3 f64.mul - local.get $6 + local.get $3 f64.const 1 f64.add f64.div @@ -10075,10 +10076,10 @@ f64.mul br $__inlined_func$~lib/math/NativeMath.sinh end + local.get $4 + local.get $3 + local.get $3 local.get $3 - local.get $6 - local.get $6 - local.get $6 f64.const 1 f64.add f64.div @@ -10086,12 +10087,12 @@ f64.mul br $__inlined_func$~lib/math/NativeMath.sinh end - local.get $6 + local.get $3 f64.const 1416.0996898839683 f64.sub call $~lib/math/NativeMath.exp - local.get $3 - local.get $3 + local.get $4 + local.get $4 f64.add f64.const 2247116418577894884661631e283 f64.mul @@ -10114,45 +10115,45 @@ ) (func $std/math/test_sinhf (param $0 f32) (param $1 f32) (param $2 f32) (result i32) (local $3 f32) - (local $4 i32) - (local $5 f32) + (local $4 f32) + (local $5 i32) block $__inlined_func$~lib/math/NativeMathf.sinh (result f32) local.get $0 i32.reinterpret_f32 i32.const 2147483647 i32.and - local.tee $4 + local.tee $5 f32.reinterpret_i32 - local.set $5 + local.set $3 f32.const 0.5 local.get $0 f32.copysign - local.set $3 - local.get $4 + local.set $4 + local.get $5 i32.const 1118925335 i32.lt_u if - local.get $5 + local.get $3 call $~lib/math/NativeMathf.expm1 - local.set $5 - local.get $4 + local.set $3 + local.get $5 i32.const 1065353216 i32.lt_u if local.get $0 - local.get $4 + local.get $5 i32.const 964689920 i32.lt_u br_if $__inlined_func$~lib/math/NativeMathf.sinh drop + local.get $4 + local.get $3 local.get $3 - local.get $5 - local.get $5 f32.add - local.get $5 - local.get $5 + local.get $3 + local.get $3 f32.mul - local.get $5 + local.get $3 f32.const 1 f32.add f32.div @@ -10160,10 +10161,10 @@ f32.mul br $__inlined_func$~lib/math/NativeMathf.sinh end + local.get $4 + local.get $3 + local.get $3 local.get $3 - local.get $5 - local.get $5 - local.get $5 f32.const 1 f32.add f32.div @@ -10171,12 +10172,12 @@ f32.mul br $__inlined_func$~lib/math/NativeMathf.sinh end - local.get $5 + local.get $3 f32.const 162.88958740234375 f32.sub call $~lib/math/NativeMathf.exp - local.get $3 - local.get $3 + local.get $4 + local.get $4 f32.add f32.const 1661534994731144841129758e11 f32.mul @@ -10189,25 +10190,25 @@ call $std/math/check ) (func $~lib/math/tan_kern (param $0 f64) (param $1 f64) (param $2 i32) (result f64) - (local $3 i32) - (local $4 i32) - (local $5 f64) - (local $6 f64) + (local $3 f64) + (local $4 f64) + (local $5 i32) + (local $6 i32) (local $7 f64) local.get $0 i64.reinterpret_f64 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $3 + local.tee $5 i32.const 2147483647 i32.and i32.const 1072010280 i32.ge_u - local.tee $4 + local.tee $6 if f64.const 0.7853981633974483 - local.get $3 + local.get $5 i32.const 0 i32.lt_s if (result f64) @@ -10231,22 +10232,22 @@ local.get $0 local.get $0 f64.mul - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 f64.mul - local.set $6 + local.set $3 local.get $0 local.get $1 - local.get $5 - local.get $5 + local.get $4 + local.get $4 local.get $0 f64.mul local.tee $7 - local.get $6 - local.get $6 - local.get $6 - local.get $6 - local.get $6 + local.get $3 + local.get $3 + local.get $3 + local.get $3 + local.get $3 f64.const -1.8558637485527546e-05 f64.mul f64.const 7.817944429395571e-05 @@ -10263,12 +10264,12 @@ f64.mul f64.const 0.13333333333320124 f64.add - local.get $5 - local.get $6 - local.get $6 - local.get $6 - local.get $6 - local.get $6 + local.get $4 + local.get $3 + local.get $3 + local.get $3 + local.get $3 + local.get $3 f64.const 2.590730518636337e-05 f64.mul f64.const 7.140724913826082e-05 @@ -10296,13 +10297,13 @@ f64.const 0.3333333333333341 f64.mul f64.add - local.tee $1 + local.tee $3 f64.add - local.set $5 - local.get $4 + local.set $1 + local.get $6 if f64.const 1 - local.get $3 + local.get $5 i32.const 30 i32.shr_s i32.const 2 @@ -10311,16 +10312,16 @@ f64.sub local.get $2 f64.convert_i32_s - local.tee $6 + local.tee $4 local.get $0 - local.get $5 - local.get $5 + local.get $1 + local.get $1 f64.mul - local.get $5 - local.get $6 + local.get $1 + local.get $4 f64.add f64.div - local.get $1 + local.get $3 f64.sub f64.sub f64.const 2 @@ -10333,32 +10334,32 @@ i32.const 1 i32.eq if - local.get $5 + local.get $1 return end f64.const -1 - local.get $5 + local.get $1 f64.div - local.tee $6 + local.tee $7 i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $7 - local.get $6 + local.tee $4 local.get $7 - local.get $5 + local.get $4 + local.get $1 i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $5 + local.tee $1 f64.mul f64.const 1 f64.add - local.get $7 + local.get $4 + local.get $3 local.get $1 - local.get $5 local.get $0 f64.sub f64.sub @@ -10370,29 +10371,29 @@ (func $~lib/math/NativeMath.tan (param $0 f64) (result f64) (local $1 i32) (local $2 f64) - (local $3 i64) - (local $4 i32) + (local $3 f64) + (local $4 f64) (local $5 i32) - (local $6 f64) - (local $7 f64) + (local $6 i32) + (local $7 i64) local.get $0 i64.reinterpret_f64 - local.tee $3 + local.tee $7 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $4 + local.tee $5 i32.const 31 i32.shr_u local.set $1 - local.get $4 + local.get $5 i32.const 2147483647 i32.and - local.tee $4 + local.tee $5 i32.const 1072243195 i32.le_u if - local.get $4 + local.get $5 i32.const 1044381696 i32.lt_u if @@ -10405,7 +10406,7 @@ call $~lib/math/tan_kern return end - local.get $4 + local.get $5 i32.const 2146435072 i32.ge_u if @@ -10415,7 +10416,7 @@ return end block $~lib/math/rempio2|inlined.2 - local.get $3 + local.get $7 i64.const 32 i64.shr_u i32.wrap_i64 @@ -10426,7 +10427,7 @@ i32.lt_u if i32.const 1 - local.set $4 + local.set $6 local.get $1 if (result f64) local.get $0 @@ -10434,7 +10435,7 @@ f64.add local.set $0 i32.const -1 - local.set $4 + local.set $6 local.get $5 i32.const 1073291771 i32.ne @@ -10511,15 +10512,15 @@ f64.const 0.6366197723675814 f64.mul f64.nearest - local.tee $6 + local.tee $3 f64.const 1.5707963267341256 f64.mul f64.sub local.tee $0 - local.get $6 + local.get $3 f64.const 6.077100506506192e-11 f64.mul - local.tee $7 + local.tee $4 f64.sub local.tee $2 i64.reinterpret_f64 @@ -10534,12 +10535,12 @@ i32.const 16 i32.gt_u if - local.get $6 + local.get $3 f64.const 2.0222662487959506e-21 f64.mul local.get $0 local.get $0 - local.get $6 + local.get $3 f64.const 6.077100506303966e-11 f64.mul local.tee $2 @@ -10549,10 +10550,10 @@ local.get $2 f64.sub f64.sub - local.set $7 + local.set $4 local.get $1 local.get $0 - local.get $7 + local.get $4 f64.sub local.tee $2 i64.reinterpret_f64 @@ -10567,12 +10568,12 @@ i32.const 49 i32.gt_u if (result f64) - local.get $6 + local.get $3 f64.const 8.4784276603689e-32 f64.mul local.get $0 local.get $0 - local.get $6 + local.get $3 f64.const 2.0222662487111665e-21 f64.mul local.tee $2 @@ -10582,9 +10583,9 @@ local.get $2 f64.sub f64.sub - local.set $7 + local.set $4 local.get $0 - local.get $7 + local.get $4 f64.sub else local.get $2 @@ -10596,28 +10597,28 @@ local.get $0 local.get $2 f64.sub - local.get $7 + local.get $4 f64.sub global.set $~lib/math/rempio2_y1 - local.get $6 + local.get $3 i32.trunc_f64_s - local.set $4 + local.set $6 br $~lib/math/rempio2|inlined.2 end i32.const 0 - local.get $3 + local.get $7 call $~lib/math/pio2_large_quot - local.tee $4 + local.tee $5 i32.sub - local.get $4 + local.get $5 local.get $1 select - local.set $4 + local.set $6 end global.get $~lib/math/rempio2_y0 global.get $~lib/math/rempio2_y1 i32.const 1 - local.get $4 + local.get $6 i32.const 1 i32.and i32.const 1 @@ -10632,8 +10633,8 @@ (local $4 f64) (local $5 i64) (local $6 i32) - (local $7 i32) - (local $8 i64) + (local $7 i64) + (local $8 i32) (local $9 i64) block $folding-inner1 block $folding-inner0 @@ -10659,12 +10660,12 @@ end local.get $0 f64.promote_f32 - local.tee $2 - local.get $2 - f64.mul local.tee $3 local.get $3 f64.mul + local.tee $2 + local.get $2 + f64.mul local.set $4 br $folding-inner0 end @@ -10686,12 +10687,12 @@ f64.sub local.get $6 select - local.tee $2 - local.get $2 - f64.mul local.tee $3 local.get $3 f64.mul + local.tee $2 + local.get $2 + f64.mul local.set $4 br $folding-inner1 else @@ -10705,12 +10706,12 @@ f64.sub local.get $6 select - local.tee $2 - local.get $2 - f64.mul local.tee $3 local.get $3 f64.mul + local.tee $2 + local.get $2 + f64.mul local.set $4 br $folding-inner0 end @@ -10734,12 +10735,12 @@ f64.sub local.get $6 select - local.tee $2 - local.get $2 - f64.mul local.tee $3 local.get $3 f64.mul + local.tee $2 + local.get $2 + f64.mul local.set $4 br $folding-inner1 else @@ -10753,12 +10754,12 @@ f64.sub local.get $6 select - local.tee $2 - local.get $2 - f64.mul local.tee $3 local.get $3 f64.mul + local.tee $2 + local.get $2 + f64.mul local.set $4 br $folding-inner0 end @@ -10780,22 +10781,22 @@ if local.get $0 f64.promote_f32 - local.tee $2 + local.tee $3 f64.const 0.6366197723675814 f64.mul f64.nearest - local.set $3 - local.get $2 + local.set $2 local.get $3 + local.get $2 f64.const 1.5707963109016418 f64.mul f64.sub - local.get $3 + local.get $2 f64.const 1.5893254773528196e-08 f64.mul f64.sub global.set $~lib/math/rempio2f_y - local.get $3 + local.get $2 i32.trunc_f64_s br $~lib/math/rempio2f|inlined.2 end @@ -10804,11 +10805,11 @@ i32.shr_s i32.const 152 i32.sub - local.tee $7 + local.tee $8 i32.const 63 i32.and i64.extend_i32_s - local.set $8 + local.set $5 f64.const 8.515303950216386e-20 local.get $0 f64.promote_f32 @@ -10820,7 +10821,7 @@ i32.or i64.extend_i32_s local.tee $9 - local.get $7 + local.get $8 i32.const 6 i32.shr_s i32.const 3 @@ -10829,37 +10830,37 @@ i32.add local.tee $1 i64.load - local.get $8 + local.get $5 i64.shl local.get $1 i64.load offset=8 - local.tee $5 + local.tee $7 i64.const 64 - local.get $8 + local.get $5 i64.sub i64.shr_u i64.or i64.mul - local.get $8 + local.get $5 i64.const 32 i64.gt_u if (result i64) + local.get $7 local.get $5 - local.get $8 i64.const 32 i64.sub i64.shl local.get $1 i64.load offset=16 i64.const 96 - local.get $8 + local.get $5 i64.sub i64.shr_u i64.or else - local.get $5 + local.get $7 i64.const 32 - local.get $8 + local.get $5 i64.sub i64.shr_u end @@ -10871,7 +10872,7 @@ local.tee $5 i64.const 2 i64.shl - local.tee $8 + local.tee $7 f64.convert_i64_s f64.mul global.set $~lib/math/rempio2f_y @@ -10879,7 +10880,7 @@ local.get $5 i64.const 62 i64.shr_u - local.get $8 + local.get $7 i64.const 63 i64.shr_u i64.add @@ -10892,36 +10893,36 @@ end local.set $1 global.get $~lib/math/rempio2f_y - local.tee $2 - local.get $2 - f64.mul local.tee $3 local.get $3 f64.mul + local.tee $2 + local.get $2 + f64.mul local.set $4 f64.const -1 - local.get $2 local.get $3 local.get $2 - f64.mul - local.tee $2 local.get $3 + f64.mul + local.tee $3 + local.get $2 f64.const 0.13339200271297674 f64.mul f64.const 0.3333313950307914 f64.add f64.mul f64.add - local.get $2 + local.get $3 local.get $4 f64.mul - local.get $3 + local.get $2 f64.const 0.024528318116654728 f64.mul f64.const 0.05338123784456704 f64.add local.get $4 - local.get $3 + local.get $2 f64.const 0.009465647849436732 f64.mul f64.const 0.002974357433599673 @@ -10940,28 +10941,28 @@ f32.demote_f64 return end - local.get $2 local.get $3 local.get $2 - f64.mul - local.tee $2 local.get $3 + f64.mul + local.tee $3 + local.get $2 f64.const 0.13339200271297674 f64.mul f64.const 0.3333313950307914 f64.add f64.mul f64.add - local.get $2 + local.get $3 local.get $4 f64.mul - local.get $3 + local.get $2 f64.const 0.024528318116654728 f64.mul f64.const 0.05338123784456704 f64.add local.get $4 - local.get $3 + local.get $2 f64.const 0.009465647849436732 f64.mul f64.const 0.002974357433599673 @@ -10974,28 +10975,28 @@ return end f64.const -1 - local.get $2 local.get $3 local.get $2 - f64.mul - local.tee $2 local.get $3 + f64.mul + local.tee $3 + local.get $2 f64.const 0.13339200271297674 f64.mul f64.const 0.3333313950307914 f64.add f64.mul f64.add - local.get $2 + local.get $3 local.get $4 f64.mul - local.get $3 + local.get $2 f64.const 0.024528318116654728 f64.mul f64.const 0.05338123784456704 f64.add local.get $4 - local.get $3 + local.get $2 f64.const 0.009465647849436732 f64.mul f64.const 0.002974357433599673 @@ -11008,38 +11009,38 @@ f32.demote_f64 ) (func $std/math/test_tanh (param $0 f64) (param $1 f64) (param $2 f64) (result i32) - (local $3 i32) - (local $4 i64) - (local $5 f64) + (local $3 f64) + (local $4 i32) + (local $5 i64) local.get $0 i64.reinterpret_f64 i64.const 9223372036854775807 i64.and - local.tee $4 + local.tee $5 f64.reinterpret_i64 - local.set $5 - local.get $4 + local.set $3 + local.get $5 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $3 + local.tee $4 i32.const 1071748074 i32.gt_u if (result f64) - local.get $3 + local.get $4 i32.const 1077149696 i32.gt_u if (result f64) f64.const 1 f64.const 0 - local.get $5 + local.get $3 f64.div f64.sub else f64.const 1 f64.const 2 - local.get $5 - local.get $5 + local.get $3 + local.get $3 f64.add call $~lib/math/NativeMath.expm1 f64.const 2 @@ -11048,36 +11049,36 @@ f64.sub end else - local.get $3 + local.get $4 i32.const 1070618798 i32.gt_u if (result f64) - local.get $5 - local.get $5 + local.get $3 + local.get $3 f64.add call $~lib/math/NativeMath.expm1 - local.tee $5 - local.get $5 + local.tee $3 + local.get $3 f64.const 2 f64.add f64.div else - local.get $3 + local.get $4 i32.const 1048576 i32.ge_u if (result f64) - local.get $5 + local.get $3 f64.const -2 f64.mul call $~lib/math/NativeMath.expm1 - local.tee $5 + local.tee $3 f64.neg - local.get $5 + local.get $3 f64.const 2 f64.add f64.div else - local.get $5 + local.get $3 end end end @@ -11097,33 +11098,33 @@ end ) (func $std/math/test_tanhf (param $0 f32) (param $1 f32) (param $2 f32) (result i32) - (local $3 i32) - (local $4 f32) + (local $3 f32) + (local $4 i32) local.get $0 i32.reinterpret_f32 i32.const 2147483647 i32.and - local.tee $3 + local.tee $4 f32.reinterpret_i32 - local.set $4 - local.get $3 + local.set $3 + local.get $4 i32.const 1057791828 i32.gt_u if (result f32) - local.get $3 + local.get $4 i32.const 1092616192 i32.gt_u if (result f32) f32.const 0 - local.get $4 + local.get $3 f32.div f32.const 1 f32.add else f32.const 1 f32.const 2 - local.get $4 - local.get $4 + local.get $3 + local.get $3 f32.add call $~lib/math/NativeMathf.expm1 f32.const 2 @@ -11132,36 +11133,36 @@ f32.sub end else - local.get $3 + local.get $4 i32.const 1048757624 i32.gt_u if (result f32) - local.get $4 - local.get $4 + local.get $3 + local.get $3 f32.add call $~lib/math/NativeMathf.expm1 - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 f32.const 2 f32.add f32.div else - local.get $3 + local.get $4 i32.const 8388608 i32.ge_u if (result f32) - local.get $4 + local.get $3 f32.const -2 f32.mul call $~lib/math/NativeMathf.expm1 - local.tee $4 + local.tee $3 f32.neg - local.get $4 + local.get $3 f32.const 2 f32.add f32.div else - local.get $4 + local.get $3 end end end @@ -11174,17 +11175,17 @@ (func $~lib/math/NativeMath.sincos (param $0 f64) (local $1 f64) (local $2 f64) - (local $3 i64) + (local $3 f64) (local $4 i32) - (local $5 i32) + (local $5 i64) (local $6 i32) - (local $7 f64) + (local $7 i32) (local $8 f64) (local $9 f64) (local $10 f64) local.get $0 i64.reinterpret_f64 - local.tee $3 + local.tee $5 i64.const 32 i64.shr_u i32.wrap_i64 @@ -11253,9 +11254,9 @@ f64.mul local.tee $2 f64.sub - local.tee $7 + local.tee $3 f64.const 1 - local.get $7 + local.get $3 f64.sub local.get $2 f64.sub @@ -11312,18 +11313,18 @@ return end block $~lib/math/rempio2|inlined.3 (result i32) - local.get $3 + local.get $5 i64.const 32 i64.shr_u i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $5 + local.tee $4 i32.const 1073928572 i32.lt_u if i32.const 1 - local.set $4 + local.set $7 local.get $6 if (result f64) local.get $0 @@ -11331,8 +11332,8 @@ f64.add local.set $0 i32.const -1 - local.set $4 - local.get $5 + local.set $7 + local.get $4 i32.const 1073291771 i32.ne if (result f64) @@ -11363,7 +11364,7 @@ f64.const 1.5707963267341256 f64.sub local.set $0 - local.get $5 + local.get $4 i32.const 1073291771 i32.ne if (result f64) @@ -11393,14 +11394,14 @@ local.get $0 global.set $~lib/math/rempio2_y0 global.set $~lib/math/rempio2_y1 - local.get $4 + local.get $7 br $~lib/math/rempio2|inlined.3 end - local.get $5 + local.get $4 i32.const 1094263291 i32.lt_u if - local.get $5 + local.get $4 i32.const 20 i32.shr_u local.tee $4 @@ -11409,12 +11410,12 @@ f64.const 0.6366197723675814 f64.mul f64.nearest - local.tee $7 + local.tee $3 f64.const 1.5707963267341256 f64.mul f64.sub local.tee $0 - local.get $7 + local.get $3 f64.const 6.077100506506192e-11 f64.mul local.tee $1 @@ -11432,12 +11433,12 @@ i32.const 16 i32.gt_u if - local.get $7 + local.get $3 f64.const 2.0222662487959506e-21 f64.mul local.get $0 local.get $0 - local.get $7 + local.get $3 f64.const 6.077100506303966e-11 f64.mul local.tee $1 @@ -11465,12 +11466,12 @@ i32.const 49 i32.gt_u if (result f64) - local.get $7 + local.get $3 f64.const 8.4784276603689e-32 f64.mul local.get $0 local.get $0 - local.get $7 + local.get $3 f64.const 2.0222662487111665e-21 f64.mul local.tee $1 @@ -11497,12 +11498,12 @@ local.get $1 f64.sub global.set $~lib/math/rempio2_y1 - local.get $7 + local.get $3 i32.trunc_f64_s br $~lib/math/rempio2|inlined.3 end i32.const 0 - local.get $3 + local.get $5 call $~lib/math/pio2_large_quot local.tee $4 i32.sub @@ -11515,18 +11516,18 @@ local.tee $2 local.get $2 f64.mul - local.tee $7 + local.tee $1 local.tee $0 local.get $2 f64.mul - local.set $1 + local.set $3 local.get $2 local.get $0 global.get $~lib/math/rempio2_y1 local.tee $8 f64.const 0.5 f64.mul - local.get $1 + local.get $3 local.get $0 local.get $0 f64.const 2.7557313707070068e-06 @@ -11553,29 +11554,29 @@ f64.mul local.get $8 f64.sub - local.get $1 + local.get $3 f64.const -0.16666666666666632 f64.mul f64.sub f64.sub - local.tee $9 + local.tee $3 local.set $0 f64.const 1 - local.get $7 + local.get $1 f64.const 0.5 f64.mul - local.tee $1 + local.tee $9 f64.sub local.tee $10 f64.const 1 local.get $10 f64.sub - local.get $1 + local.get $9 f64.sub - local.get $7 - local.get $7 - local.get $7 - local.get $7 + local.get $1 + local.get $1 + local.get $1 + local.get $1 f64.const 2.480158728947673e-05 f64.mul f64.const -0.001388888888887411 @@ -11584,14 +11585,14 @@ f64.const 0.0416666666666666 f64.add f64.mul - local.get $7 - local.get $7 - f64.mul - local.tee $1 + local.get $1 local.get $1 f64.mul - local.get $7 - local.get $7 + local.tee $9 + local.get $9 + f64.mul + local.get $1 + local.get $1 f64.const -1.1359647557788195e-11 f64.mul f64.const 2.087572321298175e-09 @@ -11615,7 +11616,7 @@ if local.get $1 local.set $0 - local.get $9 + local.get $3 f64.neg local.set $1 end @@ -11663,9 +11664,9 @@ ) (func $~lib/math/NativeMath.imul (param $0 f64) (param $1 f64) (result f64) (local $2 i64) - (local $3 i32) + (local $3 i64) (local $4 f64) - (local $5 i64) + (local $5 i32) local.get $0 local.get $1 f64.add @@ -11685,14 +11686,14 @@ i64.shr_u i64.const 2047 i64.and - local.tee $5 + local.tee $3 i64.const 1053 i64.le_u if (result i32) local.get $0 i32.trunc_f64_s else - local.get $5 + local.get $3 i64.const 1106 i64.le_u if (result i32) @@ -11702,16 +11703,16 @@ i64.and i64.const 4503599627370496 i64.or - local.get $5 + local.get $3 i64.const 1043 i64.sub i64.shl i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $3 + local.tee $5 i32.sub - local.get $3 + local.get $5 local.get $2 i64.const 63 i64.shr_u @@ -11728,14 +11729,14 @@ i64.shr_u i64.const 2047 i64.and - local.tee $5 + local.tee $3 i64.const 1053 i64.le_u if (result i32) local.get $1 i32.trunc_f64_s else - local.get $5 + local.get $3 i64.const 1106 i64.le_u if (result i32) @@ -11745,16 +11746,16 @@ i64.and i64.const 4503599627370496 i64.or - local.get $5 + local.get $3 i64.const 1043 i64.sub i64.shl i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $3 + local.tee $5 i32.sub - local.get $3 + local.get $5 local.get $2 i64.const 63 i64.shr_u @@ -12170,13 +12171,13 @@ local.get $2 ) (func $start:std/math - (local $0 f64) - (local $1 i32) + (local $0 i32) + (local $1 i64) (local $2 i64) (local $3 i32) (local $4 i32) - (local $5 f32) - (local $6 i64) + (local $5 f64) + (local $6 f32) f64.const 2.718281828459045 global.get $~lib/bindings/Math/E f64.const 0 @@ -40729,8 +40730,8 @@ f64.const nan:0x8000000000000 f64.const 1 call $~lib/math/NativeMath.pow - local.tee $0 - local.get $0 + local.tee $5 + local.get $5 f64.eq if i32.const 0 @@ -40834,8 +40835,8 @@ f64.const nan:0x8000000000000 f64.const -1 call $~lib/math/NativeMath.pow - local.tee $0 - local.get $0 + local.tee $5 + local.get $5 f64.eq if i32.const 0 @@ -40939,8 +40940,8 @@ f64.const nan:0x8000000000000 f64.const 2 call $~lib/math/NativeMath.pow - local.tee $0 - local.get $0 + local.tee $5 + local.get $5 f64.eq if i32.const 0 @@ -40979,8 +40980,8 @@ f64.const -1 f64.const 0.5 call $~lib/math/NativeMath.pow - local.tee $0 - local.get $0 + local.tee $5 + local.get $5 f64.eq if i32.const 0 @@ -41045,8 +41046,8 @@ f64.const nan:0x8000000000000 f64.const 0.5 call $~lib/math/NativeMath.pow - local.tee $0 - local.get $0 + local.tee $5 + local.get $5 f64.eq if i32.const 0 @@ -44480,7 +44481,7 @@ i64.reinterpret_f64 call $~lib/math/NativeMath.seedRandom loop $for-loop|0 - local.get $1 + local.get $0 f64.convert_i32_s f64.const 1e6 f64.lt @@ -44493,28 +44494,28 @@ call $~lib/math/NativeMath.seedRandom end global.get $~lib/math/random_state0_64 - local.set $6 + local.set $2 global.get $~lib/math/random_state1_64 - local.tee $2 + local.tee $1 global.set $~lib/math/random_state0_64 + local.get $1 local.get $2 - local.get $6 i64.const 23 i64.shl - local.get $6 + local.get $2 i64.xor - local.tee $6 + local.tee $2 i64.const 17 i64.shr_u - local.get $6 + local.get $2 i64.xor i64.xor - local.get $2 + local.get $1 i64.const 26 i64.shr_u i64.xor global.set $~lib/math/random_state1_64 - local.get $2 + local.get $1 i64.const 12 i64.shr_u i64.const 4607182418800017408 @@ -44522,10 +44523,10 @@ f64.reinterpret_i64 f64.const 1 f64.sub - local.tee $0 + local.tee $5 f64.const 1 f64.lt - local.get $0 + local.get $5 f64.const 0 f64.ge i32.and @@ -44538,10 +44539,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -44549,9 +44550,9 @@ i64.reinterpret_f64 call $~lib/math/NativeMath.seedRandom i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 f64.convert_i32_s f64.const 1e6 f64.lt @@ -44564,24 +44565,24 @@ call $~lib/math/NativeMath.seedRandom end global.get $~lib/math/random_state0_32 - local.tee $4 + local.tee $3 global.get $~lib/math/random_state1_32 i32.xor - local.tee $3 - local.get $4 + local.tee $4 + local.get $3 i32.const 26 i32.rotl i32.xor - local.get $3 + local.get $4 i32.const 9 i32.shl i32.xor global.set $~lib/math/random_state0_32 - local.get $3 + local.get $4 i32.const 13 i32.rotl global.set $~lib/math/random_state1_32 - local.get $4 + local.get $3 i32.const -1640531525 i32.mul i32.const 5 @@ -44595,10 +44596,10 @@ f32.reinterpret_i32 f32.const 1 f32.sub - local.tee $5 + local.tee $6 f32.const 1 f32.lt - local.get $5 + local.get $6 f32.const 0 f32.ge i32.and @@ -44611,10 +44612,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end diff --git a/tests/compiler/std/mod.optimized.wat b/tests/compiler/std/mod.optimized.wat index 3846b15198..0253cb7e8e 100644 --- a/tests/compiler/std/mod.optimized.wat +++ b/tests/compiler/std/mod.optimized.wat @@ -17,9 +17,9 @@ (local $4 i64) (local $5 i64) (local $6 i64) - (local $7 i64) + (local $7 f64) (local $8 i64) - (local $9 f64) + (local $9 i64) block $__inlined_func$std/mod/check (result i32) block $__inlined_func$~lib/math/NativeMath.mod (result f64) local.get $0 @@ -36,20 +36,20 @@ drop local.get $1 i64.reinterpret_f64 - local.tee $6 + local.tee $5 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.set $5 - local.get $6 + local.set $6 + local.get $5 i64.const 1 i64.shl - local.tee $7 + local.tee $8 i64.eqz local.get $0 i64.reinterpret_f64 - local.tee $8 + local.tee $3 i64.const 52 i64.shr_u i64.const 2047 @@ -66,37 +66,37 @@ local.get $0 local.get $1 f64.mul - local.tee $9 - local.get $9 + local.tee $7 + local.get $7 f64.div br $__inlined_func$~lib/math/NativeMath.mod end - local.get $7 local.get $8 + local.get $3 i64.const 1 i64.shl - local.tee $3 + local.tee $9 i64.ge_u if local.get $0 - local.get $3 - local.get $7 + local.get $8 + local.get $9 i64.ne f64.convert_i32_u f64.mul br $__inlined_func$~lib/math/NativeMath.mod end - local.get $8 + local.get $3 i64.const 63 i64.shr_u - local.set $7 + local.set $8 local.get $4 i64.eqz if (result i64) - local.get $8 + local.get $3 i64.const 1 local.get $4 - local.get $8 + local.get $3 i64.const 12 i64.shl i64.clz @@ -105,51 +105,51 @@ i64.sub i64.shl else - local.get $8 + local.get $3 i64.const 4503599627370495 i64.and i64.const 4503599627370496 i64.or end local.set $3 - local.get $5 + local.get $6 i64.eqz if (result i64) - local.get $6 - i64.const 1 local.get $5 + i64.const 1 local.get $6 + local.get $5 i64.const 12 i64.shl i64.clz i64.sub - local.tee $5 + local.tee $6 i64.sub i64.shl else - local.get $6 + local.get $5 i64.const 4503599627370495 i64.and i64.const 4503599627370496 i64.or end - local.set $6 + local.set $5 block $folding-inner0 loop $while-continue|0 local.get $4 - local.get $5 + local.get $6 i64.gt_s if local.get $3 - local.get $6 + local.get $5 i64.ge_u if (result i64) local.get $3 - local.get $6 + local.get $5 i64.eq br_if $folding-inner0 local.get $3 - local.get $6 + local.get $5 i64.sub else local.get $3 @@ -166,15 +166,15 @@ end local.get $4 local.get $3 - local.get $6 + local.get $5 i64.ge_u if local.get $3 - local.get $6 + local.get $5 i64.eq br_if $folding-inner0 local.get $3 - local.get $6 + local.get $5 i64.sub local.set $3 end @@ -182,32 +182,32 @@ i64.const 11 i64.shl i64.clz - local.tee $4 + local.tee $5 i64.sub - local.set $5 + local.set $4 local.get $3 - local.get $4 + local.get $5 i64.shl local.set $3 - local.get $5 + local.get $4 i64.const 0 i64.gt_s if (result i64) local.get $3 i64.const 4503599627370496 i64.sub - local.get $5 + local.get $4 i64.const 52 i64.shl i64.or else local.get $3 i64.const 1 - local.get $5 + local.get $4 i64.sub i64.shr_u end - local.get $7 + local.get $8 i64.const 63 i64.shl i64.or @@ -218,8 +218,8 @@ f64.const 0 f64.mul end - local.tee $9 - local.get $9 + local.tee $7 + local.get $7 f64.ne local.get $2 local.get $2 @@ -230,7 +230,7 @@ local.get $2 f64.div f64.const 1 - local.get $9 + local.get $7 f64.div f64.eq local.get $2 @@ -239,7 +239,7 @@ br_if $__inlined_func$std/mod/check drop local.get $2 - local.get $9 + local.get $7 f64.eq end if (result i32) @@ -298,19 +298,19 @@ drop local.get $1 i32.reinterpret_f32 - local.tee $6 + local.tee $5 i32.const 23 i32.shr_u i32.const 255 i32.and - local.set $5 + local.set $6 i32.const 1 local.get $1 local.get $1 f32.ne local.get $0 i32.reinterpret_f32 - local.tee $7 + local.tee $3 i32.const 23 i32.shr_u i32.const 255 @@ -319,10 +319,10 @@ i32.const 255 i32.eq i32.const 1 - local.get $6 + local.get $5 i32.const 1 i32.shl - local.tee $8 + local.tee $7 select select if @@ -334,37 +334,37 @@ f32.div br $__inlined_func$~lib/math/NativeMathf.mod end - local.get $8 local.get $7 + local.get $3 i32.const 1 i32.shl - local.tee $3 + local.tee $8 i32.ge_u if local.get $0 - local.get $3 + local.get $7 local.get $8 i32.ne f32.convert_i32_u f32.mul br $__inlined_func$~lib/math/NativeMathf.mod end - local.get $7 + local.get $3 i32.const -2147483648 i32.and - local.set $8 + local.set $7 local.get $4 if (result i32) - local.get $7 + local.get $3 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $7 + local.get $3 i32.const 1 local.get $4 - local.get $7 + local.get $3 i32.const 9 i32.shl i32.clz @@ -374,43 +374,43 @@ i32.shl end local.set $3 - local.get $5 + local.get $6 if (result i32) - local.get $6 + local.get $5 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $6 - i32.const 1 local.get $5 + i32.const 1 local.get $6 + local.get $5 i32.const 9 i32.shl i32.clz i32.sub - local.tee $5 + local.tee $6 i32.sub i32.shl end - local.set $6 + local.set $5 block $folding-inner0 loop $while-continue|0 local.get $4 - local.get $5 + local.get $6 i32.gt_s if local.get $3 - local.get $6 + local.get $5 i32.ge_u if (result i32) local.get $3 - local.get $6 + local.get $5 i32.eq br_if $folding-inner0 local.get $3 - local.get $6 + local.get $5 i32.sub else local.get $3 @@ -427,15 +427,15 @@ end local.get $4 local.get $3 - local.get $6 + local.get $5 i32.ge_u if local.get $3 - local.get $6 + local.get $5 i32.eq br_if $folding-inner0 local.get $3 - local.get $6 + local.get $5 i32.sub local.set $3 end @@ -443,32 +443,32 @@ i32.const 8 i32.shl i32.clz - local.tee $4 + local.tee $5 i32.sub - local.set $5 + local.set $4 local.get $3 - local.get $4 + local.get $5 i32.shl local.set $3 - local.get $5 + local.get $4 i32.const 0 i32.gt_s if (result i32) local.get $3 i32.const 8388608 i32.sub - local.get $5 + local.get $4 i32.const 23 i32.shl i32.or else local.get $3 i32.const 1 - local.get $5 + local.get $4 i32.sub i32.shr_u end - local.get $8 + local.get $7 i32.or f32.reinterpret_i32 br $__inlined_func$~lib/math/NativeMathf.mod diff --git a/tests/compiler/std/new.optimized.wat b/tests/compiler/std/new.optimized.wat index aaa56faf34..4d8873a64e 100644 --- a/tests/compiler/std/new.optimized.wat +++ b/tests/compiler/std/new.optimized.wat @@ -172,19 +172,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -209,9 +209,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -219,17 +219,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -517,10 +517,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -532,15 +532,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -570,7 +570,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -606,12 +606,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -629,11 +629,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17872 @@ -641,14 +641,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -658,17 +658,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1059,7 +1059,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1136,16 +1136,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $0 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1193,7 +1193,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $2 i32.const -4 i32.and i32.const 28 @@ -1203,7 +1203,7 @@ i32.ge_u if local.get $0 - local.get $3 + local.get $2 i32.const 2 i32.and i32.const 28 @@ -1212,7 +1212,7 @@ local.get $0 i32.const 32 i32.add - local.tee $3 + local.tee $2 local.get $4 i32.const 4 i32.sub @@ -1220,11 +1220,11 @@ i32.or i32.store local.get $1 - local.get $3 + local.get $2 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $2 i32.const -2 i32.and i32.store @@ -1250,26 +1250,26 @@ i32.const 8 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1319,7 +1319,7 @@ i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 local.get $0 i32.store local.get $0 @@ -1387,19 +1387,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1409,22 +1409,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17860 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1438,9 +1438,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1450,23 +1450,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1474,7 +1474,7 @@ else i32.const 1440 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1248 @@ -1484,7 +1484,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1444 @@ -1499,28 +1499,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/std/object.optimized.wat b/tests/compiler/std/object.optimized.wat index 179a69a586..a44f371dfd 100644 --- a/tests/compiler/std/object.optimized.wat +++ b/tests/compiler/std/object.optimized.wat @@ -107,14 +107,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end diff --git a/tests/compiler/std/operator-overloading.optimized.wat b/tests/compiler/std/operator-overloading.optimized.wat index 6c622c3e0d..a566145f77 100644 --- a/tests/compiler/std/operator-overloading.optimized.wat +++ b/tests/compiler/std/operator-overloading.optimized.wat @@ -228,19 +228,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -265,9 +265,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -275,17 +275,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -573,10 +573,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -588,15 +588,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -626,7 +626,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -662,12 +662,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -685,11 +685,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17968 @@ -697,14 +697,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -714,17 +714,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1197,17 +1197,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1216,19 +1216,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1254,26 +1254,26 @@ i32.const 8 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $0 + local.tee $2 i32.load offset=8 - local.set $2 + local.set $0 local.get $1 global.get $~lib/rt/itcms/white - local.get $0 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $2 + local.get $0 i32.store offset=8 - local.get $2 - local.get $2 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $0 + local.get $2 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2204,23 +2204,23 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/s2 global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/s1 local.tee $1 + global.get $std/operator-overloading/s1 + local.tee $0 i32.store - local.get $0 + local.get $1 global.get $std/operator-overloading/s2 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load - i32.sub local.get $1 - i32.load offset=4 + i32.load + i32.sub local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.sub call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/s @@ -2252,23 +2252,23 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/m2 global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/m1 local.tee $1 + global.get $std/operator-overloading/m1 + local.tee $0 i32.store - local.get $0 + local.get $1 global.get $std/operator-overloading/m2 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load - i32.mul local.get $1 - i32.load offset=4 + i32.load + i32.mul local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.mul call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/m @@ -2302,23 +2302,23 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/d2 global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/d1 local.tee $1 + global.get $std/operator-overloading/d1 + local.tee $0 i32.store - local.get $0 + local.get $1 global.get $std/operator-overloading/d2 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load - i32.div_s local.get $1 - i32.load offset=4 + i32.load + i32.div_s local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.div_s call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/d @@ -2352,23 +2352,23 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/f2 global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/f1 local.tee $1 + global.get $std/operator-overloading/f1 + local.tee $0 i32.store - local.get $0 + local.get $1 global.get $std/operator-overloading/f2 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load - i32.rem_s local.get $1 - i32.load offset=4 + i32.load + i32.rem_s local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.rem_s call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/f @@ -2399,23 +2399,23 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/p2 global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/p1 local.tee $1 + global.get $std/operator-overloading/p1 + local.tee $0 i32.store - local.get $0 + local.get $1 global.get $std/operator-overloading/p2 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load - call $~lib/math/ipow32 local.get $1 - i32.load offset=4 + i32.load + call $~lib/math/ipow32 local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 call $~lib/math/ipow32 call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/p @@ -2449,23 +2449,23 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/n2 global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/n1 local.tee $1 + global.get $std/operator-overloading/n1 + local.tee $0 i32.store - local.get $0 + local.get $1 global.get $std/operator-overloading/n2 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load - i32.and local.get $1 - i32.load offset=4 + i32.load + i32.and local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.and call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/n @@ -2499,23 +2499,23 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/o2 global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/o1 local.tee $1 + global.get $std/operator-overloading/o1 + local.tee $0 i32.store - local.get $0 + local.get $1 global.get $std/operator-overloading/o2 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load - i32.or local.get $1 - i32.load offset=4 + i32.load + i32.or local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.or call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/o @@ -2549,23 +2549,23 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/x2 global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/x1 local.tee $1 + global.get $std/operator-overloading/x1 + local.tee $0 i32.store - local.get $0 + local.get $1 global.get $std/operator-overloading/x2 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load - i32.xor local.get $1 - i32.load offset=4 + i32.load + i32.xor local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.xor call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/x @@ -2599,24 +2599,24 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/eq2 global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/eq1 local.tee $1 + global.get $std/operator-overloading/eq1 + local.tee $0 i32.store - local.get $0 + local.get $1 global.get $std/operator-overloading/eq2 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load + local.get $1 + i32.load i32.eq if (result i32) - local.get $1 - i32.load offset=4 local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.eq else i32.const 0 @@ -2642,24 +2642,24 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/eq4 global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/eq3 local.tee $1 + global.get $std/operator-overloading/eq3 + local.tee $0 i32.store - local.get $0 + local.get $1 global.get $std/operator-overloading/eq4 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load + local.get $1 + i32.load i32.eq if (result i32) - local.get $1 - i32.load offset=4 local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.eq else i32.const 0 @@ -2675,24 +2675,24 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/eq1 local.tee $1 + global.get $std/operator-overloading/eq1 + local.tee $0 i32.store - local.get $0 + local.get $1 global.get $std/operator-overloading/eq2 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load + local.get $1 + i32.load i32.ne if (result i32) - local.get $1 - i32.load offset=4 local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.ne else i32.const 0 @@ -2708,24 +2708,24 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/eq3 local.tee $1 + global.get $std/operator-overloading/eq3 + local.tee $0 i32.store - local.get $0 + local.get $1 global.get $std/operator-overloading/eq4 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load + local.get $1 + i32.load i32.ne if (result i32) - local.get $1 - i32.load offset=4 local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.ne else i32.const 0 @@ -2751,24 +2751,24 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/gt2 global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/gt1 local.tee $1 + global.get $std/operator-overloading/gt1 + local.tee $0 i32.store - local.get $0 + local.get $1 global.get $std/operator-overloading/gt2 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load + local.get $1 + i32.load i32.gt_s if (result i32) - local.get $1 - i32.load offset=4 local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.gt_s else i32.const 0 @@ -2794,24 +2794,24 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/gte2 global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/gte1 local.tee $1 + global.get $std/operator-overloading/gte1 + local.tee $0 i32.store - local.get $0 + local.get $1 global.get $std/operator-overloading/gte2 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load + local.get $1 + i32.load i32.ge_s if (result i32) - local.get $1 - i32.load offset=4 local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.ge_s else i32.const 0 @@ -2837,24 +2837,24 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/le2 global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/le1 local.tee $1 + global.get $std/operator-overloading/le1 + local.tee $0 i32.store - local.get $0 + local.get $1 global.get $std/operator-overloading/le2 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load + local.get $1 + i32.load i32.lt_s if (result i32) - local.get $1 - i32.load offset=4 local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.lt_s else i32.const 0 @@ -2880,24 +2880,24 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/leq2 global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/leq1 local.tee $1 + global.get $std/operator-overloading/leq1 + local.tee $0 i32.store - local.get $0 + local.get $1 global.get $std/operator-overloading/leq2 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load + local.get $1 + i32.load i32.le_s if (result i32) - local.get $1 - i32.load offset=4 local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.le_s else i32.const 0 @@ -3407,18 +3407,18 @@ call $std/operator-overloading/TesterInlineStatic#constructor global.set $std/operator-overloading/ais1 global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/ais1 local.tee $1 + global.get $std/operator-overloading/ais1 + local.tee $0 i32.store - local.get $0 local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load i32.const 1 i32.add - local.get $1 + local.get $0 i32.load offset=4 i32.const 1 i32.add @@ -3659,19 +3659,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -3681,22 +3681,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17956 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -3710,9 +3710,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -3722,23 +3722,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -3746,7 +3746,7 @@ else i32.const 1520 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1248 @@ -3756,7 +3756,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1524 @@ -3771,28 +3771,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/std/pointer.optimized.wat b/tests/compiler/std/pointer.optimized.wat index 19a9eeae86..af6d52a5cd 100644 --- a/tests/compiler/std/pointer.optimized.wat +++ b/tests/compiler/std/pointer.optimized.wat @@ -20,33 +20,33 @@ (local $4 i32) (local $5 i32) i32.const 8 - local.set $4 + local.set $5 loop $while-continue|0 local.get $1 i32.const 3 i32.and i32.const 0 - local.get $4 + local.get $5 select if local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $4 + local.get $5 i32.const 1 i32.sub - local.set $4 + local.set $5 br $while-continue|0 end end @@ -56,7 +56,7 @@ i32.eqz if loop $while-continue|1 - local.get $4 + local.get $5 i32.const 16 i32.ge_u if @@ -84,14 +84,14 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|1 end end - local.get $4 + local.get $5 i32.const 8 i32.and if @@ -112,7 +112,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 4 i32.and if @@ -129,7 +129,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 2 i32.and if @@ -146,7 +146,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 1 i32.and if @@ -157,7 +157,7 @@ end return end - local.get $4 + local.get $5 i32.const 32 i32.ge_u if @@ -174,7 +174,7 @@ end local.get $1 i32.load - local.set $5 + local.set $4 local.get $0 local.get $1 i32.load8_u @@ -186,27 +186,27 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $4 + local.get $5 i32.const 3 i32.sub - local.set $4 + local.set $5 loop $while-continue|3 - local.get $4 + local.get $5 i32.const 17 i32.ge_u if @@ -216,7 +216,7 @@ local.tee $2 i32.const 8 i32.shl - local.get $5 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -246,7 +246,7 @@ local.get $0 local.get $1 i32.load offset=13 - local.tee $5 + local.tee $4 i32.const 8 i32.shl local.get $2 @@ -262,10 +262,10 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|3 end end @@ -273,31 +273,31 @@ end local.get $1 i32.load - local.set $5 + local.set $4 local.get $0 local.get $1 i32.load8_u i32.store8 local.get $0 - local.tee $2 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $2 i32.const 2 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $5 i32.const 2 i32.sub - local.set $4 + local.set $5 loop $while-continue|4 - local.get $4 + local.get $5 i32.const 18 i32.ge_u if @@ -307,7 +307,7 @@ local.tee $2 i32.const 16 i32.shl - local.get $5 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -337,7 +337,7 @@ local.get $0 local.get $1 i32.load offset=14 - local.tee $5 + local.tee $4 i32.const 16 i32.shl local.get $2 @@ -353,10 +353,10 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|4 end end @@ -364,27 +364,27 @@ end local.get $1 i32.load - local.set $5 + local.set $4 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $4 + local.get $5 i32.const 1 i32.sub - local.set $4 + local.set $5 loop $while-continue|5 - local.get $4 + local.get $5 i32.const 19 i32.ge_u if @@ -394,7 +394,7 @@ local.tee $2 i32.const 24 i32.shl - local.get $5 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -424,7 +424,7 @@ local.get $0 local.get $1 i32.load offset=15 - local.tee $5 + local.tee $4 i32.const 24 i32.shl local.get $2 @@ -440,16 +440,16 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|5 end end end end - local.get $4 + local.get $5 i32.const 16 i32.and if @@ -460,129 +460,141 @@ local.get $0 i32.const 2 i32.add - local.set $2 + local.set $3 local.get $1 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $0 local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $2 - i32.const 2 - i32.add - local.set $0 local.get $3 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $3 local.get $2 - local.get $3 + local.tee $0 + i32.const 2 + i32.add + local.set $2 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $1 + local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $0 + local.get $3 + local.tee $1 i32.const 2 i32.add - local.set $2 - local.get $1 + local.set $3 + local.get $2 + local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $0 + local.set $2 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $2 - i32.const 2 - i32.add - local.set $0 local.get $3 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $3 local.get $2 - local.get $3 + local.tee $0 + i32.const 2 + i32.add + local.set $2 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $1 + local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $0 + local.get $3 + local.tee $1 i32.const 2 i32.add - local.set $2 - local.get $1 + local.set $3 + local.get $2 + local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $0 + local.set $2 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $2 - i32.const 2 - i32.add - local.set $0 local.get $3 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $3 local.get $2 - local.get $3 + local.tee $0 + i32.const 2 + i32.add + local.set $2 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $1 + local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $0 + local.get $3 + local.tee $1 i32.const 2 i32.add - local.set $2 - local.get $1 + local.set $3 + local.get $2 + local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $0 + local.set $2 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $2 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $4 + local.get $5 i32.const 8 i32.and if @@ -593,65 +605,69 @@ local.get $0 i32.const 2 i32.add - local.set $2 + local.set $3 local.get $1 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $0 local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $2 - i32.const 2 - i32.add - local.set $0 local.get $3 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $3 local.get $2 - local.get $3 + local.tee $0 + i32.const 2 + i32.add + local.set $2 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 - local.get $1 + local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $0 + local.get $3 + local.tee $1 i32.const 2 i32.add - local.set $2 - local.get $1 + local.set $3 + local.get $2 + local.tee $0 i32.const 2 i32.add - local.set $3 - local.get $0 + local.set $2 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $2 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $4 + local.get $5 i32.const 4 i32.and if @@ -662,33 +678,33 @@ local.get $0 i32.const 2 i32.add - local.set $2 + local.set $3 local.get $1 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $0 local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $2 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $4 + local.get $5 i32.const 2 i32.and if @@ -697,21 +713,21 @@ i32.load8_u i32.store8 local.get $0 - local.tee $2 + local.tee $3 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $2 i32.const 2 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $4 + local.get $5 i32.const 1 i32.and if @@ -886,9 +902,9 @@ unreachable end global.get $std/pointer/one - local.set $0 + local.set $1 global.get $std/pointer/two - local.tee $1 + local.tee $0 if block $~lib/util/memory/memmove|inlined.0 i32.const 8 @@ -897,33 +913,33 @@ local.get $1 i32.eq br_if $~lib/util/memory/memmove|inlined.0 - local.get $1 local.get $0 + local.get $1 i32.sub i32.const 8 i32.sub i32.const -16 i32.le_u if - local.get $0 local.get $1 + local.get $0 call $~lib/util/memory/memcpy br $~lib/util/memory/memmove|inlined.0 end local.get $0 local.get $1 - i32.lt_u + i32.gt_u if - local.get $1 + local.get $0 i32.const 7 i32.and - local.get $0 + local.get $1 i32.const 7 i32.and i32.eq if loop $while-continue|0 - local.get $0 + local.get $1 i32.const 7 i32.and if @@ -934,16 +950,16 @@ i32.const 1 i32.sub local.set $4 - local.get $0 + local.get $1 local.tee $3 i32.const 1 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.tee $2 i32.const 1 i32.add - local.set $1 + local.set $0 local.get $3 local.get $2 i32.load8_u @@ -956,22 +972,22 @@ i32.const 8 i32.ge_u if - local.get $0 local.get $1 + local.get $0 i64.load i64.store local.get $4 i32.const 8 i32.sub local.set $4 - local.get $0 - i32.const 8 - i32.add - local.set $0 local.get $1 i32.const 8 i32.add local.set $1 + local.get $0 + i32.const 8 + i32.add + local.set $0 br $while-continue|1 end end @@ -979,16 +995,16 @@ loop $while-continue|2 local.get $4 if - local.get $0 + local.get $1 local.tee $3 i32.const 1 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.tee $2 i32.const 1 i32.add - local.set $1 + local.set $0 local.get $3 local.get $2 i32.load8_u @@ -1001,16 +1017,16 @@ end end else - local.get $1 + local.get $0 i32.const 7 i32.and - local.get $0 + local.get $1 i32.const 7 i32.and i32.eq if loop $while-continue|3 - local.get $0 + local.get $1 local.get $4 i32.add i32.const 7 @@ -1023,9 +1039,9 @@ i32.const 1 i32.sub local.tee $4 - local.get $0 - i32.add local.get $1 + i32.add + local.get $0 local.get $4 i32.add i32.load8_u @@ -1042,9 +1058,9 @@ i32.const 8 i32.sub local.tee $4 - local.get $0 - i32.add local.get $1 + i32.add + local.get $0 local.get $4 i32.add i64.load @@ -1060,9 +1076,9 @@ i32.const 1 i32.sub local.tee $4 - local.get $0 - i32.add local.get $1 + i32.add + local.get $0 local.get $4 i32.add i32.load8_u @@ -1073,37 +1089,37 @@ end end else - local.get $0 + local.get $1 i32.const 0 i32.store8 - local.get $0 + local.get $1 i32.const 8 i32.add - local.tee $1 + local.tee $0 i32.const 1 i32.sub i32.const 0 i32.store8 - local.get $0 + local.get $1 i32.const 0 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 0 i32.store8 offset=2 - local.get $1 + local.get $0 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 3 i32.sub i32.const 0 i32.store8 - local.get $0 + local.get $1 i32.const 0 i32.store8 offset=3 - local.get $1 + local.get $0 i32.const 4 i32.sub i32.const 0 diff --git a/tests/compiler/std/set.optimized.wat b/tests/compiler/std/set.optimized.wat index 0b186d7271..12d61f3acd 100644 --- a/tests/compiler/std/set.optimized.wat +++ b/tests/compiler/std/set.optimized.wat @@ -126,7 +126,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -149,7 +149,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -159,23 +159,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -183,7 +183,7 @@ else i32.const 1648 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1248 @@ -193,7 +193,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 1652 @@ -208,27 +208,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -316,19 +316,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -353,9 +353,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -363,17 +363,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -661,10 +661,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -676,15 +676,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -714,7 +714,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -750,12 +750,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -773,11 +773,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 18224 @@ -785,14 +785,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -802,17 +802,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1290,14 +1290,14 @@ i32.sub i32.const -4 i32.and - local.tee $1 - i32.add local.tee $2 + i32.add + local.tee $1 i32.const 4 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1307,17 +1307,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 12 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1333,22 +1333,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $2 + local.get $1 i32.const 28 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 20 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 16 i32.sub i32.const 0 @@ -1359,11 +1359,11 @@ i32.and i32.const 24 i32.add - local.tee $2 + local.tee $1 i32.add local.set $0 - local.get $1 local.get $2 + local.get $1 i32.sub local.set $1 loop $while-continue|0 @@ -1468,7 +1468,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1494,32 +1494,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1535,16 +1535,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1552,7 +1552,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1560,8 +1560,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1578,7 +1578,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1588,13 +1588,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1607,40 +1607,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -1666,26 +1666,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2471,105 +2471,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 + local.get $0 + i32.const 2 + i32.add + local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2601,41 +2611,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3272,7 +3284,7 @@ i32.store offset=8 local.get $2 call $~lib/set/Set#constructor - local.tee $7 + local.tee $2 i32.store loop $for-loop|1 local.get $1 @@ -3280,9 +3292,9 @@ i32.const 100 i32.lt_s if - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 local.get $1 i32.extend8_s @@ -3294,36 +3306,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $5 i32.const 1 @@ -3331,7 +3343,7 @@ if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u local.get $1 i32.const 255 @@ -3342,14 +3354,14 @@ local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|0 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -3358,12 +3370,12 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $2 local.get $1 call $~lib/set/Set#add - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 local.get $1 i32.extend8_s @@ -3375,36 +3387,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $5 i32.const 1 @@ -3412,7 +3424,7 @@ if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u local.get $1 i32.const 255 @@ -3423,14 +3435,14 @@ local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|02 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -3447,7 +3459,7 @@ br $for-loop|1 end end - local.get $7 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -3467,9 +3479,9 @@ i32.const 100 i32.lt_s if - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 local.get $1 i32.extend8_s @@ -3481,36 +3493,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $5 i32.const 1 @@ -3518,7 +3530,7 @@ if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u local.get $1 i32.const 255 @@ -3529,14 +3541,14 @@ local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|05 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -3546,12 +3558,12 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $2 local.get $1 call $~lib/set/Set#add - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 local.get $1 i32.extend8_s @@ -3563,36 +3575,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $5 i32.const 1 @@ -3600,7 +3612,7 @@ if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u local.get $1 i32.const 255 @@ -3611,14 +3623,14 @@ local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|08 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -3635,7 +3647,7 @@ br $for-loop|3 end end - local.get $7 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -3658,17 +3670,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $7 i32.const 0 i32.store - local.get $7 + local.get $2 i32.load offset=8 + local.set $10 + local.get $2 + i32.load offset=16 + local.tee $11 local.set $5 local.get $7 - i32.load offset=16 - local.tee $6 - local.set $9 - local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -3684,21 +3696,21 @@ i32.const 16 i32.const 4 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $1 i32.store - local.get $10 + local.get $1 i32.const 0 i32.store - local.get $10 + local.get $1 i32.const 0 i32.store offset=4 - local.get $10 + local.get $1 i32.const 0 i32.store offset=8 - local.get $10 + local.get $1 i32.const 0 i32.store offset=12 - local.get $9 + local.get $5 i32.const 1073741820 i32.gt_u if @@ -3710,64 +3722,64 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $5 i32.const 8 - local.get $9 + local.get $5 i32.const 8 i32.gt_u select - local.tee $1 + local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $3 i32.store offset=4 - local.get $11 - local.get $1 + local.get $3 + local.get $8 call $~lib/memory/memory.fill - local.get $10 - local.get $11 + local.get $1 + local.get $3 i32.store - local.get $11 + local.get $3 if - local.get $10 - local.get $11 + local.get $1 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $11 + local.get $1 + local.get $3 i32.store offset=4 - local.get $10 local.get $1 + local.get $8 i32.store offset=8 - local.get $10 - local.get $9 + local.get $1 + local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $10 + local.get $7 + local.get $1 i32.store loop $for-loop|0 - local.get $4 local.get $6 + local.get $11 i32.lt_s if - local.get $4 + local.get $6 i32.const 3 i32.shl - local.get $5 + local.get $10 i32.add - local.tee $1 + local.tee $3 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $10 - local.get $0 local.get $1 + local.get $0 + local.get $3 i32.load8_s call $~lib/array/Array#__set local.get $0 @@ -3775,41 +3787,41 @@ i32.add local.set $0 end - local.get $4 + local.get $6 i32.const 1 i32.add - local.set $4 + local.set $6 br $for-loop|0 end end - local.get $10 + local.get $1 local.get $0 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $10 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|4 - local.get $10 + local.get $1 i32.load offset=12 - local.get $3 + local.get $4 i32.gt_s if - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/array/Array#__get - local.tee $1 + local.tee $5 i32.extend8_s i32.const -1028477379 i32.mul @@ -3819,67 +3831,67 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.set $2 - local.get $7 + local.set $3 + local.get $2 i32.load - local.get $7 - i32.load offset=4 local.get $2 + i32.load offset=4 + local.get $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $4 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u - local.get $1 + local.get $5 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $4 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|011 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -3890,20 +3902,20 @@ unreachable end local.get $0 - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|4 end end local.get $0 i32.load offset=20 - local.get $7 + local.get $2 i32.load offset=20 i32.ne if @@ -3915,18 +3927,18 @@ unreachable end i32.const 0 - local.set $3 + local.set $4 loop $for-loop|6 - local.get $3 + local.get $4 i32.extend8_s i32.const 50 i32.lt_s if - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.extend8_s i32.const -1028477379 i32.mul @@ -3975,7 +3987,7 @@ else local.get $1 i32.load8_u - local.get $3 + local.get $4 i32.const 255 i32.and i32.eq @@ -4001,14 +4013,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $2 + local.get $4 call $~lib/set/Set#delete - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.extend8_s i32.const -1028477379 i32.mul @@ -4057,7 +4069,7 @@ else local.get $1 i32.load8_u - local.get $3 + local.get $4 i32.const 255 i32.and i32.eq @@ -4082,14 +4094,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|6 end end - local.get $7 + local.get $2 i32.load offset=20 i32.const 50 i32.ne @@ -4102,18 +4114,18 @@ unreachable end i32.const 0 - local.set $3 + local.set $4 loop $for-loop|8 - local.get $3 + local.get $4 i32.extend8_s i32.const 50 i32.lt_s if - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.extend8_s i32.const -1028477379 i32.mul @@ -4162,7 +4174,7 @@ else local.get $1 i32.load8_u - local.get $3 + local.get $4 i32.const 255 i32.and i32.eq @@ -4187,14 +4199,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $2 + local.get $4 call $~lib/set/Set#add - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.extend8_s i32.const -1028477379 i32.mul @@ -4243,7 +4255,7 @@ else local.get $1 i32.load8_u - local.get $3 + local.get $4 i32.const 255 i32.and i32.eq @@ -4269,14 +4281,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $2 + local.get $4 call $~lib/set/Set#delete - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.extend8_s i32.const -1028477379 i32.mul @@ -4325,7 +4337,7 @@ else local.get $1 i32.load8_u - local.get $3 + local.get $4 i32.const 255 i32.and i32.eq @@ -4350,14 +4362,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|8 end end - local.get $7 + local.get $2 i32.load offset=20 i32.const 50 i32.ne @@ -4369,9 +4381,9 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $2 call $~lib/set/Set#clear - local.get $7 + local.get $2 i32.load offset=20 if i32.const 0 @@ -4881,7 +4893,7 @@ i32.store offset=8 local.get $2 call $~lib/set/Set#constructor - local.tee $7 + local.tee $2 i32.store loop $for-loop|1 local.get $1 @@ -4890,9 +4902,9 @@ i32.const 100 i32.lt_u if - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 local.get $1 i32.const 255 @@ -4905,36 +4917,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $5 i32.const 1 @@ -4942,7 +4954,7 @@ if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u local.get $1 i32.const 255 @@ -4953,14 +4965,14 @@ local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|0 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -4969,12 +4981,12 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $2 local.get $1 call $~lib/set/Set#add - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 local.get $1 i32.const 255 @@ -4987,36 +4999,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $5 i32.const 1 @@ -5024,7 +5036,7 @@ if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u local.get $1 i32.const 255 @@ -5035,14 +5047,14 @@ local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|02 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -5059,7 +5071,7 @@ br $for-loop|1 end end - local.get $7 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -5080,9 +5092,9 @@ i32.const 100 i32.lt_u if - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 local.get $1 i32.const 255 @@ -5095,36 +5107,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $5 i32.const 1 @@ -5132,7 +5144,7 @@ if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u local.get $1 i32.const 255 @@ -5143,14 +5155,14 @@ local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|05 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -5160,12 +5172,12 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $2 local.get $1 call $~lib/set/Set#add - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 local.get $1 i32.const 255 @@ -5178,36 +5190,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $5 i32.const 1 @@ -5215,7 +5227,7 @@ if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u local.get $1 i32.const 255 @@ -5226,14 +5238,14 @@ local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|08 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -5250,7 +5262,7 @@ br $for-loop|3 end end - local.get $7 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -5273,17 +5285,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $7 i32.const 0 i32.store - local.get $7 + local.get $2 i32.load offset=8 + local.set $10 + local.get $2 + i32.load offset=16 + local.tee $11 local.set $5 local.get $7 - i32.load offset=16 - local.tee $6 - local.set $9 - local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -5299,21 +5311,21 @@ i32.const 16 i32.const 6 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $1 i32.store - local.get $10 + local.get $1 i32.const 0 i32.store - local.get $10 + local.get $1 i32.const 0 i32.store offset=4 - local.get $10 + local.get $1 i32.const 0 i32.store offset=8 - local.get $10 + local.get $1 i32.const 0 i32.store offset=12 - local.get $9 + local.get $5 i32.const 1073741820 i32.gt_u if @@ -5325,64 +5337,64 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $5 i32.const 8 - local.get $9 + local.get $5 i32.const 8 i32.gt_u select - local.tee $1 + local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $3 i32.store offset=4 - local.get $11 - local.get $1 + local.get $3 + local.get $8 call $~lib/memory/memory.fill - local.get $10 - local.get $11 + local.get $1 + local.get $3 i32.store - local.get $11 + local.get $3 if - local.get $10 - local.get $11 + local.get $1 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $11 + local.get $1 + local.get $3 i32.store offset=4 - local.get $10 local.get $1 + local.get $8 i32.store offset=8 - local.get $10 - local.get $9 + local.get $1 + local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $10 + local.get $7 + local.get $1 i32.store loop $for-loop|0 - local.get $4 local.get $6 + local.get $11 i32.lt_s if - local.get $4 + local.get $6 i32.const 3 i32.shl - local.get $5 + local.get $10 i32.add - local.tee $1 + local.tee $3 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $10 - local.get $0 local.get $1 + local.get $0 + local.get $3 i32.load8_u call $~lib/array/Array#__set local.get $0 @@ -5390,41 +5402,41 @@ i32.add local.set $0 end - local.get $4 + local.get $6 i32.const 1 i32.add - local.set $4 + local.set $6 br $for-loop|0 end end - local.get $10 + local.get $1 local.get $0 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $10 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|4 - local.get $10 + local.get $1 i32.load offset=12 - local.get $3 + local.get $4 i32.gt_s if - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/array/Array#__get - local.tee $1 + local.tee $5 i32.const 255 i32.and i32.const -1028477379 @@ -5435,67 +5447,67 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.set $2 - local.get $7 + local.set $3 + local.get $2 i32.load - local.get $7 - i32.load offset=4 local.get $2 + i32.load offset=4 + local.get $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $4 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u - local.get $1 + local.get $5 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $4 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|011 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -5506,20 +5518,20 @@ unreachable end local.get $0 - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|4 end end local.get $0 i32.load offset=20 - local.get $7 + local.get $2 i32.load offset=20 i32.ne if @@ -5531,19 +5543,19 @@ unreachable end i32.const 0 - local.set $3 + local.set $4 loop $for-loop|6 - local.get $3 + local.get $4 i32.const 255 i32.and i32.const 50 i32.lt_u if - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.const 255 i32.and i32.const -1028477379 @@ -5593,7 +5605,7 @@ else local.get $1 i32.load8_u - local.get $3 + local.get $4 i32.const 255 i32.and i32.eq @@ -5619,14 +5631,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $2 + local.get $4 call $~lib/set/Set#delete - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.const 255 i32.and i32.const -1028477379 @@ -5676,7 +5688,7 @@ else local.get $1 i32.load8_u - local.get $3 + local.get $4 i32.const 255 i32.and i32.eq @@ -5701,14 +5713,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|6 end end - local.get $7 + local.get $2 i32.load offset=20 i32.const 50 i32.ne @@ -5721,19 +5733,19 @@ unreachable end i32.const 0 - local.set $3 + local.set $4 loop $for-loop|8 - local.get $3 + local.get $4 i32.const 255 i32.and i32.const 50 i32.lt_u if - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.const 255 i32.and i32.const -1028477379 @@ -5783,7 +5795,7 @@ else local.get $1 i32.load8_u - local.get $3 + local.get $4 i32.const 255 i32.and i32.eq @@ -5808,14 +5820,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $2 + local.get $4 call $~lib/set/Set#add - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.const 255 i32.and i32.const -1028477379 @@ -5865,7 +5877,7 @@ else local.get $1 i32.load8_u - local.get $3 + local.get $4 i32.const 255 i32.and i32.eq @@ -5891,14 +5903,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $2 + local.get $4 call $~lib/set/Set#delete - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.const 255 i32.and i32.const -1028477379 @@ -5948,7 +5960,7 @@ else local.get $1 i32.load8_u - local.get $3 + local.get $4 i32.const 255 i32.and i32.eq @@ -5973,14 +5985,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|8 end end - local.get $7 + local.get $2 i32.load offset=20 i32.const 50 i32.ne @@ -5992,9 +6004,9 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $2 call $~lib/set/Set#clear - local.get $7 + local.get $2 i32.load offset=20 if i32.const 0 @@ -6544,7 +6556,7 @@ i32.store offset=8 local.get $2 call $~lib/set/Set#constructor - local.tee $7 + local.tee $2 i32.store loop $for-loop|1 local.get $1 @@ -6552,9 +6564,9 @@ i32.const 100 i32.lt_s if - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 local.get $1 i32.extend16_s @@ -6566,36 +6578,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $5 i32.const 1 @@ -6603,7 +6615,7 @@ if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u local.get $1 i32.const 65535 @@ -6614,14 +6626,14 @@ local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|0 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -6630,12 +6642,12 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $2 local.get $1 call $~lib/set/Set#add - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 local.get $1 i32.extend16_s @@ -6647,36 +6659,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $5 i32.const 1 @@ -6684,7 +6696,7 @@ if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u local.get $1 i32.const 65535 @@ -6695,14 +6707,14 @@ local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|02 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -6719,7 +6731,7 @@ br $for-loop|1 end end - local.get $7 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -6739,9 +6751,9 @@ i32.const 100 i32.lt_s if - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 local.get $1 i32.extend16_s @@ -6753,36 +6765,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $5 i32.const 1 @@ -6790,7 +6802,7 @@ if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u local.get $1 i32.const 65535 @@ -6801,14 +6813,14 @@ local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|05 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -6818,12 +6830,12 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $2 local.get $1 call $~lib/set/Set#add - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 local.get $1 i32.extend16_s @@ -6835,36 +6847,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $5 i32.const 1 @@ -6872,7 +6884,7 @@ if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u local.get $1 i32.const 65535 @@ -6883,14 +6895,14 @@ local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|08 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -6907,7 +6919,7 @@ br $for-loop|3 end end - local.get $7 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -6930,17 +6942,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $7 i32.const 0 i32.store - local.get $7 + local.get $2 i32.load offset=8 + local.set $10 + local.get $2 + i32.load offset=16 + local.tee $11 local.set $5 local.get $7 - i32.load offset=16 - local.tee $6 - local.set $9 - local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -6956,21 +6968,21 @@ i32.const 16 i32.const 8 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $1 i32.store - local.get $10 + local.get $1 i32.const 0 i32.store - local.get $10 + local.get $1 i32.const 0 i32.store offset=4 - local.get $10 + local.get $1 i32.const 0 i32.store offset=8 - local.get $10 + local.get $1 i32.const 0 i32.store offset=12 - local.get $9 + local.get $5 i32.const 536870910 i32.gt_u if @@ -6982,66 +6994,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $5 i32.const 8 - local.get $9 + local.get $5 i32.const 8 i32.gt_u select i32.const 1 i32.shl - local.tee $1 + local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $3 i32.store offset=4 - local.get $11 - local.get $1 + local.get $3 + local.get $8 call $~lib/memory/memory.fill - local.get $10 - local.get $11 + local.get $1 + local.get $3 i32.store - local.get $11 + local.get $3 if - local.get $10 - local.get $11 + local.get $1 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $11 + local.get $1 + local.get $3 i32.store offset=4 - local.get $10 local.get $1 + local.get $8 i32.store offset=8 - local.get $10 - local.get $9 + local.get $1 + local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $10 + local.get $7 + local.get $1 i32.store loop $for-loop|0 - local.get $4 local.get $6 + local.get $11 i32.lt_s if - local.get $4 + local.get $6 i32.const 3 i32.shl - local.get $5 + local.get $10 i32.add - local.tee $1 + local.tee $3 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $10 - local.get $0 local.get $1 + local.get $0 + local.get $3 i32.load16_s call $~lib/array/Array#__set local.get $0 @@ -7049,41 +7061,41 @@ i32.add local.set $0 end - local.get $4 + local.get $6 i32.const 1 i32.add - local.set $4 + local.set $6 br $for-loop|0 end end - local.get $10 + local.get $1 local.get $0 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity - local.get $10 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|4 - local.get $10 + local.get $1 i32.load offset=12 - local.get $3 + local.get $4 i32.gt_s if - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/array/Array#__get - local.tee $1 + local.tee $5 i32.extend16_s i32.const -1028477379 i32.mul @@ -7093,67 +7105,67 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.set $2 - local.get $7 + local.set $3 + local.get $2 i32.load - local.get $7 - i32.load offset=4 local.get $2 + i32.load offset=4 + local.get $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $4 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u - local.get $1 + local.get $5 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $4 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|011 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -7164,20 +7176,20 @@ unreachable end local.get $0 - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|4 end end local.get $0 i32.load offset=20 - local.get $7 + local.get $2 i32.load offset=20 i32.ne if @@ -7189,18 +7201,18 @@ unreachable end i32.const 0 - local.set $3 + local.set $4 loop $for-loop|6 - local.get $3 + local.get $4 i32.extend16_s i32.const 50 i32.lt_s if - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.extend16_s i32.const -1028477379 i32.mul @@ -7249,7 +7261,7 @@ else local.get $1 i32.load16_u - local.get $3 + local.get $4 i32.const 65535 i32.and i32.eq @@ -7275,14 +7287,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $2 + local.get $4 call $~lib/set/Set#delete - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.extend16_s i32.const -1028477379 i32.mul @@ -7331,7 +7343,7 @@ else local.get $1 i32.load16_u - local.get $3 + local.get $4 i32.const 65535 i32.and i32.eq @@ -7356,14 +7368,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|6 end end - local.get $7 + local.get $2 i32.load offset=20 i32.const 50 i32.ne @@ -7376,18 +7388,18 @@ unreachable end i32.const 0 - local.set $3 + local.set $4 loop $for-loop|8 - local.get $3 + local.get $4 i32.extend16_s i32.const 50 i32.lt_s if - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.extend16_s i32.const -1028477379 i32.mul @@ -7436,7 +7448,7 @@ else local.get $1 i32.load16_u - local.get $3 + local.get $4 i32.const 65535 i32.and i32.eq @@ -7461,14 +7473,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $2 + local.get $4 call $~lib/set/Set#add - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.extend16_s i32.const -1028477379 i32.mul @@ -7517,7 +7529,7 @@ else local.get $1 i32.load16_u - local.get $3 + local.get $4 i32.const 65535 i32.and i32.eq @@ -7543,14 +7555,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $2 + local.get $4 call $~lib/set/Set#delete - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.extend16_s i32.const -1028477379 i32.mul @@ -7599,7 +7611,7 @@ else local.get $1 i32.load16_u - local.get $3 + local.get $4 i32.const 65535 i32.and i32.eq @@ -7624,14 +7636,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|8 end end - local.get $7 + local.get $2 i32.load offset=20 i32.const 50 i32.ne @@ -7643,9 +7655,9 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $2 call $~lib/set/Set#clear - local.get $7 + local.get $2 i32.load offset=20 if i32.const 0 @@ -8157,7 +8169,7 @@ i32.store offset=8 local.get $2 call $~lib/set/Set#constructor - local.tee $7 + local.tee $2 i32.store loop $for-loop|1 local.get $1 @@ -8166,9 +8178,9 @@ i32.const 100 i32.lt_u if - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 local.get $1 i32.const 65535 @@ -8181,36 +8193,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $5 i32.const 1 @@ -8218,7 +8230,7 @@ if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u local.get $1 i32.const 65535 @@ -8229,14 +8241,14 @@ local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|0 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -8245,12 +8257,12 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $2 local.get $1 call $~lib/set/Set#add - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 local.get $1 i32.const 65535 @@ -8263,36 +8275,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $5 i32.const 1 @@ -8300,7 +8312,7 @@ if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u local.get $1 i32.const 65535 @@ -8311,14 +8323,14 @@ local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|02 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -8335,7 +8347,7 @@ br $for-loop|1 end end - local.get $7 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -8356,9 +8368,9 @@ i32.const 100 i32.lt_u if - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 local.get $1 i32.const 65535 @@ -8371,36 +8383,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $5 i32.const 1 @@ -8408,7 +8420,7 @@ if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u local.get $1 i32.const 65535 @@ -8419,14 +8431,14 @@ local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|05 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -8436,12 +8448,12 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $2 local.get $1 call $~lib/set/Set#add - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 local.get $1 i32.const 65535 @@ -8454,36 +8466,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $5 i32.const 1 @@ -8491,7 +8503,7 @@ if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u local.get $1 i32.const 65535 @@ -8502,14 +8514,14 @@ local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|08 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -8526,7 +8538,7 @@ br $for-loop|3 end end - local.get $7 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -8549,17 +8561,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $7 i32.const 0 i32.store - local.get $7 + local.get $2 i32.load offset=8 + local.set $10 + local.get $2 + i32.load offset=16 + local.tee $11 local.set $5 local.get $7 - i32.load offset=16 - local.tee $6 - local.set $9 - local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -8575,21 +8587,21 @@ i32.const 16 i32.const 10 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $1 i32.store - local.get $10 + local.get $1 i32.const 0 i32.store - local.get $10 + local.get $1 i32.const 0 i32.store offset=4 - local.get $10 + local.get $1 i32.const 0 i32.store offset=8 - local.get $10 + local.get $1 i32.const 0 i32.store offset=12 - local.get $9 + local.get $5 i32.const 536870910 i32.gt_u if @@ -8601,66 +8613,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $5 i32.const 8 - local.get $9 + local.get $5 i32.const 8 i32.gt_u select i32.const 1 i32.shl - local.tee $1 + local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $3 i32.store offset=4 - local.get $11 - local.get $1 + local.get $3 + local.get $8 call $~lib/memory/memory.fill - local.get $10 - local.get $11 + local.get $1 + local.get $3 i32.store - local.get $11 + local.get $3 if - local.get $10 - local.get $11 + local.get $1 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $11 + local.get $1 + local.get $3 i32.store offset=4 - local.get $10 local.get $1 + local.get $8 i32.store offset=8 - local.get $10 - local.get $9 + local.get $1 + local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $10 + local.get $7 + local.get $1 i32.store loop $for-loop|0 - local.get $4 local.get $6 + local.get $11 i32.lt_s if - local.get $4 + local.get $6 i32.const 3 i32.shl - local.get $5 + local.get $10 i32.add - local.tee $1 + local.tee $3 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $10 - local.get $0 local.get $1 + local.get $0 + local.get $3 i32.load16_u call $~lib/array/Array#__set local.get $0 @@ -8668,41 +8680,41 @@ i32.add local.set $0 end - local.get $4 + local.get $6 i32.const 1 i32.add - local.set $4 + local.set $6 br $for-loop|0 end end - local.get $10 + local.get $1 local.get $0 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity - local.get $10 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|4 - local.get $10 + local.get $1 i32.load offset=12 - local.get $3 + local.get $4 i32.gt_s if - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/array/Array#__get - local.tee $1 + local.tee $5 i32.const 65535 i32.and i32.const -1028477379 @@ -8713,67 +8725,67 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.set $2 - local.get $7 + local.set $3 + local.get $2 i32.load - local.get $7 - i32.load offset=4 local.get $2 + i32.load offset=4 + local.get $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $4 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u - local.get $1 + local.get $5 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $4 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|011 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -8784,20 +8796,20 @@ unreachable end local.get $0 - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|4 end end local.get $0 i32.load offset=20 - local.get $7 + local.get $2 i32.load offset=20 i32.ne if @@ -8809,19 +8821,19 @@ unreachable end i32.const 0 - local.set $3 + local.set $4 loop $for-loop|6 - local.get $3 + local.get $4 i32.const 65535 i32.and i32.const 50 i32.lt_u if - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.const 65535 i32.and i32.const -1028477379 @@ -8871,7 +8883,7 @@ else local.get $1 i32.load16_u - local.get $3 + local.get $4 i32.const 65535 i32.and i32.eq @@ -8897,14 +8909,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $2 + local.get $4 call $~lib/set/Set#delete - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.const 65535 i32.and i32.const -1028477379 @@ -8954,7 +8966,7 @@ else local.get $1 i32.load16_u - local.get $3 + local.get $4 i32.const 65535 i32.and i32.eq @@ -8979,14 +8991,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|6 end end - local.get $7 + local.get $2 i32.load offset=20 i32.const 50 i32.ne @@ -8999,19 +9011,19 @@ unreachable end i32.const 0 - local.set $3 + local.set $4 loop $for-loop|8 - local.get $3 + local.get $4 i32.const 65535 i32.and i32.const 50 i32.lt_u if - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.const 65535 i32.and i32.const -1028477379 @@ -9061,7 +9073,7 @@ else local.get $1 i32.load16_u - local.get $3 + local.get $4 i32.const 65535 i32.and i32.eq @@ -9086,14 +9098,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $2 + local.get $4 call $~lib/set/Set#add - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.const 65535 i32.and i32.const -1028477379 @@ -9143,7 +9155,7 @@ else local.get $1 i32.load16_u - local.get $3 + local.get $4 i32.const 65535 i32.and i32.eq @@ -9169,14 +9181,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $2 + local.get $4 call $~lib/set/Set#delete - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.const 65535 i32.and i32.const -1028477379 @@ -9226,7 +9238,7 @@ else local.get $1 i32.load16_u - local.get $3 + local.get $4 i32.const 65535 i32.and i32.eq @@ -9251,14 +9263,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|8 end end - local.get $7 + local.get $2 i32.load offset=20 i32.const 50 i32.ne @@ -9270,9 +9282,9 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $2 call $~lib/set/Set#clear - local.get $7 + local.get $2 i32.load offset=20 if i32.const 0 @@ -9815,16 +9827,16 @@ i32.store offset=8 local.get $2 call $~lib/set/Set#constructor - local.tee $7 + local.tee $2 i32.store loop $for-loop|0 local.get $1 i32.const 100 i32.lt_s if - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -9835,36 +9847,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $5 i32.const 1 @@ -9873,7 +9885,7 @@ i32.const 0 else local.get $1 - local.get $2 + local.get $3 i32.load i32.eq end @@ -9881,14 +9893,14 @@ local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|0 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -9897,12 +9909,12 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $2 local.get $1 call $~lib/set/Set#add - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -9913,36 +9925,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $5 i32.const 1 @@ -9951,7 +9963,7 @@ i32.const 0 else local.get $1 - local.get $2 + local.get $3 i32.load i32.eq end @@ -9959,14 +9971,14 @@ local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|02 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -9983,7 +9995,7 @@ br $for-loop|0 end end - local.get $7 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -10002,9 +10014,9 @@ i32.const 100 i32.lt_s if - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -10015,36 +10027,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $5 i32.const 1 @@ -10053,7 +10065,7 @@ i32.const 0 else local.get $1 - local.get $2 + local.get $3 i32.load i32.eq end @@ -10061,14 +10073,14 @@ local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|05 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -10078,12 +10090,12 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $2 local.get $1 call $~lib/set/Set#add - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -10094,36 +10106,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $5 i32.const 1 @@ -10132,7 +10144,7 @@ i32.const 0 else local.get $1 - local.get $2 + local.get $3 i32.load i32.eq end @@ -10140,14 +10152,14 @@ local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|08 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -10164,7 +10176,7 @@ br $for-loop|1 end end - local.get $7 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -10187,17 +10199,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $7 i32.const 0 i32.store - local.get $7 + local.get $2 i32.load offset=8 + local.set $10 + local.get $2 + i32.load offset=16 + local.tee $11 local.set $5 local.get $7 - i32.load offset=16 - local.tee $6 - local.set $9 - local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -10213,21 +10225,21 @@ i32.const 16 i32.const 12 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $1 i32.store - local.get $10 + local.get $1 i32.const 0 i32.store - local.get $10 + local.get $1 i32.const 0 i32.store offset=4 - local.get $10 + local.get $1 i32.const 0 i32.store offset=8 - local.get $10 + local.get $1 i32.const 0 i32.store offset=12 - local.get $9 + local.get $5 i32.const 268435455 i32.gt_u if @@ -10239,66 +10251,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $5 i32.const 8 - local.get $9 + local.get $5 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $1 + local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $3 i32.store offset=4 - local.get $11 - local.get $1 + local.get $3 + local.get $8 call $~lib/memory/memory.fill - local.get $10 - local.get $11 + local.get $1 + local.get $3 i32.store - local.get $11 + local.get $3 if - local.get $10 - local.get $11 + local.get $1 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $11 + local.get $1 + local.get $3 i32.store offset=4 - local.get $10 local.get $1 + local.get $8 i32.store offset=8 - local.get $10 - local.get $9 + local.get $1 + local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $10 + local.get $7 + local.get $1 i32.store loop $for-loop|01 - local.get $4 local.get $6 + local.get $11 i32.lt_s if - local.get $4 + local.get $6 i32.const 3 i32.shl - local.get $5 + local.get $10 i32.add - local.tee $1 + local.tee $3 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $10 - local.get $0 local.get $1 + local.get $0 + local.get $3 i32.load call $~lib/array/Array#__set local.get $0 @@ -10306,41 +10318,41 @@ i32.add local.set $0 end - local.get $4 + local.get $6 i32.const 1 i32.add - local.set $4 + local.set $6 br $for-loop|01 end end - local.get $10 + local.get $1 local.get $0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $10 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|2 - local.get $10 + local.get $1 i32.load offset=12 - local.get $3 + local.get $4 i32.gt_s if - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/array/Array#__get - local.tee $1 + local.tee $5 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10349,65 +10361,65 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.set $2 - local.get $7 + local.set $3 + local.get $2 i32.load - local.get $7 - i32.load offset=4 local.get $2 + i32.load offset=4 + local.get $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $4 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 - local.get $2 + local.get $5 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $4 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|011 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -10418,20 +10430,20 @@ unreachable end local.get $0 - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|2 end end local.get $0 i32.load offset=20 - local.get $7 + local.get $2 i32.load offset=20 i32.ne if @@ -10443,17 +10455,17 @@ unreachable end i32.const 0 - local.set $3 + local.set $4 loop $for-loop|3 - local.get $3 + local.get $4 i32.const 50 i32.lt_s if - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10499,7 +10511,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $4 local.get $1 i32.load i32.eq @@ -10525,14 +10537,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $2 + local.get $4 call $~lib/set/Set#delete - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10578,7 +10590,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $4 local.get $1 i32.load i32.eq @@ -10603,14 +10615,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|3 end end - local.get $7 + local.get $2 i32.load offset=20 i32.const 50 i32.ne @@ -10623,17 +10635,17 @@ unreachable end i32.const 0 - local.set $3 + local.set $4 loop $for-loop|4 - local.get $3 + local.get $4 i32.const 50 i32.lt_s if - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10679,7 +10691,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $4 local.get $1 i32.load i32.eq @@ -10704,14 +10716,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $2 + local.get $4 call $~lib/set/Set#add - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10757,7 +10769,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $4 local.get $1 i32.load i32.eq @@ -10783,14 +10795,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $2 + local.get $4 call $~lib/set/Set#delete - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10836,7 +10848,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $4 local.get $1 i32.load i32.eq @@ -10861,14 +10873,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|4 end end - local.get $7 + local.get $2 i32.load offset=20 i32.const 50 i32.ne @@ -10880,9 +10892,9 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $2 call $~lib/set/Set#clear - local.get $7 + local.get $2 i32.load offset=20 if i32.const 0 @@ -11386,16 +11398,16 @@ i32.store offset=8 local.get $2 call $~lib/set/Set#constructor - local.tee $7 + local.tee $2 i32.store loop $for-loop|0 local.get $1 i32.const 100 i32.lt_u if - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -11406,36 +11418,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $5 i32.const 1 @@ -11444,7 +11456,7 @@ i32.const 0 else local.get $1 - local.get $2 + local.get $3 i32.load i32.eq end @@ -11452,14 +11464,14 @@ local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|0 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -11468,12 +11480,12 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $2 local.get $1 call $~lib/set/Set#add - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -11484,36 +11496,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $5 i32.const 1 @@ -11522,7 +11534,7 @@ i32.const 0 else local.get $1 - local.get $2 + local.get $3 i32.load i32.eq end @@ -11530,14 +11542,14 @@ local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|02 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -11554,7 +11566,7 @@ br $for-loop|0 end end - local.get $7 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -11573,9 +11585,9 @@ i32.const 100 i32.lt_u if - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -11586,36 +11598,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $5 i32.const 1 @@ -11624,7 +11636,7 @@ i32.const 0 else local.get $1 - local.get $2 + local.get $3 i32.load i32.eq end @@ -11632,14 +11644,14 @@ local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|05 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -11649,12 +11661,12 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $2 local.get $1 call $~lib/set/Set#add - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -11665,36 +11677,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $5 i32.const 1 @@ -11703,7 +11715,7 @@ i32.const 0 else local.get $1 - local.get $2 + local.get $3 i32.load i32.eq end @@ -11711,14 +11723,14 @@ local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|08 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -11735,7 +11747,7 @@ br $for-loop|1 end end - local.get $7 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -11758,17 +11770,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $7 i32.const 0 i32.store - local.get $7 + local.get $2 i32.load offset=8 + local.set $10 + local.get $2 + i32.load offset=16 + local.tee $11 local.set $5 local.get $7 - i32.load offset=16 - local.tee $6 - local.set $9 - local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -11784,21 +11796,21 @@ i32.const 16 i32.const 14 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $1 i32.store - local.get $10 + local.get $1 i32.const 0 i32.store - local.get $10 + local.get $1 i32.const 0 i32.store offset=4 - local.get $10 + local.get $1 i32.const 0 i32.store offset=8 - local.get $10 + local.get $1 i32.const 0 i32.store offset=12 - local.get $9 + local.get $5 i32.const 268435455 i32.gt_u if @@ -11810,66 +11822,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $5 i32.const 8 - local.get $9 + local.get $5 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $1 + local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $3 i32.store offset=4 - local.get $11 - local.get $1 + local.get $3 + local.get $8 call $~lib/memory/memory.fill - local.get $10 - local.get $11 + local.get $1 + local.get $3 i32.store - local.get $11 + local.get $3 if - local.get $10 - local.get $11 + local.get $1 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $11 + local.get $1 + local.get $3 i32.store offset=4 - local.get $10 local.get $1 + local.get $8 i32.store offset=8 - local.get $10 - local.get $9 + local.get $1 + local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $10 + local.get $7 + local.get $1 i32.store loop $for-loop|01 - local.get $4 local.get $6 + local.get $11 i32.lt_s if - local.get $4 + local.get $6 i32.const 3 i32.shl - local.get $5 + local.get $10 i32.add - local.tee $1 + local.tee $3 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $10 - local.get $0 local.get $1 + local.get $0 + local.get $3 i32.load call $~lib/array/Array#__set local.get $0 @@ -11877,41 +11889,41 @@ i32.add local.set $0 end - local.get $4 + local.get $6 i32.const 1 i32.add - local.set $4 + local.set $6 br $for-loop|01 end end - local.get $10 + local.get $1 local.get $0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $10 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|2 - local.get $10 + local.get $1 i32.load offset=12 - local.get $3 + local.get $4 i32.gt_s if - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/array/Array#__get - local.tee $1 + local.tee $5 i32.const -1028477379 i32.mul i32.const 374761397 @@ -11920,65 +11932,65 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 i32.const 15 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 i32.const 13 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.set $2 - local.get $7 + local.set $3 + local.get $2 i32.load - local.get $7 - i32.load offset=4 local.get $2 + i32.load offset=4 + local.get $3 i32.const 16 i32.shr_u - local.get $2 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $4 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 - local.get $2 + local.get $5 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $4 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|011 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -11989,20 +12001,20 @@ unreachable end local.get $0 - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|2 end end local.get $0 i32.load offset=20 - local.get $7 + local.get $2 i32.load offset=20 i32.ne if @@ -12014,17 +12026,17 @@ unreachable end i32.const 0 - local.set $3 + local.set $4 loop $for-loop|3 - local.get $3 + local.get $4 i32.const 50 i32.lt_u if - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12070,7 +12082,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $4 local.get $1 i32.load i32.eq @@ -12096,14 +12108,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $2 + local.get $4 call $~lib/set/Set#delete - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12149,7 +12161,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $4 local.get $1 i32.load i32.eq @@ -12174,14 +12186,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|3 end end - local.get $7 + local.get $2 i32.load offset=20 i32.const 50 i32.ne @@ -12194,17 +12206,17 @@ unreachable end i32.const 0 - local.set $3 + local.set $4 loop $for-loop|4 - local.get $3 + local.get $4 i32.const 50 i32.lt_u if - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12250,7 +12262,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $4 local.get $1 i32.load i32.eq @@ -12275,14 +12287,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $2 + local.get $4 call $~lib/set/Set#add - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12328,7 +12340,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $4 local.get $1 i32.load i32.eq @@ -12354,14 +12366,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $2 + local.get $4 call $~lib/set/Set#delete - local.get $7 + local.get $2 i32.load - local.get $7 + local.get $2 i32.load offset=4 - local.get $3 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12407,7 +12419,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $4 local.get $1 i32.load i32.eq @@ -12432,14 +12444,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|4 end end - local.get $7 + local.get $2 i32.load offset=20 i32.const 50 i32.ne @@ -12451,9 +12463,9 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $2 call $~lib/set/Set#clear - local.get $7 + local.get $2 i32.load offset=20 if i32.const 0 @@ -12596,7 +12608,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -12604,7 +12616,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -12612,13 +12624,13 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $8 + local.tee $4 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $4 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 @@ -12626,14 +12638,14 @@ local.get $8 i32.ne if - local.get $8 + local.get $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $8 + local.get $4 i64.load local.tee $6 i64.store @@ -12682,7 +12694,7 @@ i32.and i32.const 2 i32.shl - local.get $7 + local.get $5 i32.add local.tee $9 i32.load @@ -12695,20 +12707,20 @@ i32.add local.set $2 end - local.get $8 + local.get $4 i32.const 16 i32.add - local.set $8 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $7 + local.get $5 i32.store - local.get $7 + local.get $5 if local.get $0 - local.get $7 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -12724,7 +12736,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -13270,17 +13282,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $11 + local.tee $8 i32.const 0 i32.store local.get $2 i32.load offset=8 - local.set $9 + local.set $11 local.get $2 i32.load offset=16 - local.tee $10 - local.set $4 - local.get $11 + local.tee $12 + local.set $5 + local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -13296,21 +13308,21 @@ i32.const 16 i32.const 16 call $~lib/rt/itcms/__new - local.tee $12 + local.tee $3 i32.store - local.get $12 + local.get $3 i32.const 0 i32.store - local.get $12 + local.get $3 i32.const 0 i32.store offset=4 - local.get $12 + local.get $3 i32.const 0 i32.store offset=8 - local.get $12 + local.get $3 i32.const 0 i32.store offset=12 - local.get $4 + local.get $5 i32.const 134217727 i32.gt_u if @@ -13322,66 +13334,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 8 - local.get $4 + local.get $5 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $7 + local.tee $9 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $4 i32.store offset=4 - local.get $3 - local.get $7 + local.get $4 + local.get $9 call $~lib/memory/memory.fill - local.get $12 local.get $3 + local.get $4 i32.store - local.get $3 + local.get $4 if - local.get $12 local.get $3 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $12 local.get $3 + local.get $4 i32.store offset=4 - local.get $12 - local.get $7 + local.get $3 + local.get $9 i32.store offset=8 - local.get $12 - local.get $4 + local.get $3 + local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 - local.get $12 + local.get $8 + local.get $3 i32.store loop $for-loop|01 - local.get $6 - local.get $10 + local.get $7 + local.get $12 i32.lt_s if - local.get $6 + local.get $7 i32.const 4 i32.shl - local.get $9 + local.get $11 i32.add - local.tee $3 + local.tee $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $12 - local.get $0 local.get $3 + local.get $0 + local.get $4 i64.load call $~lib/array/Array#__set local.get $0 @@ -13389,40 +13401,40 @@ i32.add local.set $0 end - local.get $6 + local.get $7 i32.const 1 i32.add - local.set $6 + local.set $7 br $for-loop|01 end end - local.get $12 + local.get $3 local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $12 + local.get $3 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $12 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|2 - local.get $12 + local.get $3 i32.load offset=12 - local.get $5 + local.get $6 i32.gt_s if local.get $2 - local.get $12 - local.get $5 + local.get $3 + local.get $6 call $~lib/array/Array#__get call $~lib/set/Set#has i32.eqz @@ -13435,14 +13447,14 @@ unreachable end local.get $0 - local.get $12 - local.get $5 + local.get $3 + local.get $6 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $5 + local.get $6 i32.const 1 i32.add - local.set $5 + local.set $6 br $for-loop|2 end end @@ -13722,7 +13734,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -13730,7 +13742,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -13738,13 +13750,13 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $8 + local.tee $4 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $4 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 @@ -13752,14 +13764,14 @@ local.get $8 i32.ne if - local.get $8 + local.get $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $8 + local.get $4 i64.load local.tee $6 i64.store @@ -13808,7 +13820,7 @@ i32.and i32.const 2 i32.shl - local.get $7 + local.get $5 i32.add local.tee $9 i32.load @@ -13821,20 +13833,20 @@ i32.add local.set $2 end - local.get $8 + local.get $4 i32.const 16 i32.add - local.set $8 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $7 + local.get $5 i32.store - local.get $7 + local.get $5 if local.get $0 - local.get $7 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -13850,7 +13862,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -14320,17 +14332,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $11 + local.tee $8 i32.const 0 i32.store local.get $2 i32.load offset=8 - local.set $9 + local.set $11 local.get $2 i32.load offset=16 - local.tee $10 - local.set $4 - local.get $11 + local.tee $12 + local.set $5 + local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -14346,21 +14358,21 @@ i32.const 16 i32.const 18 call $~lib/rt/itcms/__new - local.tee $12 + local.tee $3 i32.store - local.get $12 + local.get $3 i32.const 0 i32.store - local.get $12 + local.get $3 i32.const 0 i32.store offset=4 - local.get $12 + local.get $3 i32.const 0 i32.store offset=8 - local.get $12 + local.get $3 i32.const 0 i32.store offset=12 - local.get $4 + local.get $5 i32.const 134217727 i32.gt_u if @@ -14372,66 +14384,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 8 - local.get $4 + local.get $5 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $7 + local.tee $9 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $4 i32.store offset=4 - local.get $3 - local.get $7 + local.get $4 + local.get $9 call $~lib/memory/memory.fill - local.get $12 local.get $3 + local.get $4 i32.store - local.get $3 + local.get $4 if - local.get $12 local.get $3 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $12 local.get $3 + local.get $4 i32.store offset=4 - local.get $12 - local.get $7 + local.get $3 + local.get $9 i32.store offset=8 - local.get $12 - local.get $4 + local.get $3 + local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 - local.get $12 + local.get $8 + local.get $3 i32.store loop $for-loop|01 - local.get $6 - local.get $10 + local.get $7 + local.get $12 i32.lt_s if - local.get $6 + local.get $7 i32.const 4 i32.shl - local.get $9 + local.get $11 i32.add - local.tee $3 + local.tee $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $12 - local.get $0 local.get $3 + local.get $0 + local.get $4 i64.load call $~lib/array/Array#__set local.get $0 @@ -14439,40 +14451,40 @@ i32.add local.set $0 end - local.get $6 + local.get $7 i32.const 1 i32.add - local.set $6 + local.set $7 br $for-loop|01 end end - local.get $12 + local.get $3 local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $12 + local.get $3 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $12 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|2 - local.get $12 + local.get $3 i32.load offset=12 - local.get $5 + local.get $6 i32.gt_s if local.get $2 - local.get $12 - local.get $5 + local.get $3 + local.get $6 call $~lib/array/Array#__get call $~lib/set/Set#has i32.eqz @@ -14485,14 +14497,14 @@ unreachable end local.get $0 - local.get $12 - local.get $5 + local.get $3 + local.get $6 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $5 + local.get $6 i32.const 1 i32.add - local.set $5 + local.set $6 br $for-loop|2 end end @@ -14655,11 +14667,11 @@ (func $~lib/set/Set#rehash (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 f32) + (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 f32) (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -14688,7 +14700,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -14704,33 +14716,33 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $8 + local.tee $4 local.get $0 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $5 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 - local.get $5 - local.get $8 + local.get $4 + local.get $7 i32.ne if - local.get $8 + local.get $4 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $8 + local.get $4 f32.load - local.tee $4 + local.tee $8 f32.store local.get $2 - local.get $4 + local.get $8 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -14763,7 +14775,7 @@ i32.and i32.const 2 i32.shl - local.get $7 + local.get $5 i32.add local.tee $9 i32.load @@ -14776,20 +14788,20 @@ i32.add local.set $2 end - local.get $8 + local.get $4 i32.const 8 i32.add - local.set $8 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $7 + local.get $5 i32.store - local.get $7 + local.get $5 if local.get $0 - local.get $7 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -15137,16 +15149,16 @@ i32.store offset=8 local.get $0 call $~lib/set/Set#constructor - local.tee $5 + local.tee $3 i32.store loop $for-loop|0 local.get $2 f32.const 100 f32.lt if - local.get $5 + local.get $3 i32.load - local.get $5 + local.get $3 i32.load offset=4 local.get $2 i32.reinterpret_f32 @@ -15182,36 +15194,36 @@ i32.shl i32.add i32.load - local.set $3 + local.set $0 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $3 + local.get $0 if - local.get $3 + local.get $0 i32.load offset=4 - local.tee $0 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $2 - local.get $3 + local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $0 + local.get $4 i32.const -2 i32.and - local.set $3 + local.set $0 br $while-continue|0 end end i32.const 0 - local.set $3 + local.set $0 end - local.get $3 + local.get $0 if i32.const 0 i32.const 1568 @@ -15220,12 +15232,12 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $3 local.get $2 call $~lib/set/Set#add - local.get $5 + local.get $3 i32.load - local.get $5 + local.get $3 i32.load offset=4 local.get $2 i32.reinterpret_f32 @@ -15261,36 +15273,36 @@ i32.shl i32.add i32.load - local.set $3 + local.set $0 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $3 + local.get $0 if - local.get $3 + local.get $0 i32.load offset=4 - local.tee $0 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $2 - local.get $3 + local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find1 - local.get $0 + local.get $4 i32.const -2 i32.and - local.set $3 + local.set $0 br $while-continue|02 end end i32.const 0 - local.set $3 + local.set $0 end - local.get $3 + local.get $0 i32.eqz if i32.const 0 @@ -15307,7 +15319,7 @@ br $for-loop|0 end end - local.get $5 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -15326,9 +15338,9 @@ f32.const 100 f32.lt if - local.get $5 + local.get $3 i32.load - local.get $5 + local.get $3 i32.load offset=4 local.get $2 i32.reinterpret_f32 @@ -15364,36 +15376,36 @@ i32.shl i32.add i32.load - local.set $3 + local.set $0 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $3 + local.get $0 if - local.get $3 + local.get $0 i32.load offset=4 - local.tee $0 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $2 - local.get $3 + local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find4 - local.get $0 + local.get $4 i32.const -2 i32.and - local.set $3 + local.set $0 br $while-continue|05 end end i32.const 0 - local.set $3 + local.set $0 end - local.get $3 + local.get $0 i32.eqz if i32.const 0 @@ -15403,12 +15415,12 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $3 local.get $2 call $~lib/set/Set#add - local.get $5 + local.get $3 i32.load - local.get $5 + local.get $3 i32.load offset=4 local.get $2 i32.reinterpret_f32 @@ -15444,36 +15456,36 @@ i32.shl i32.add i32.load - local.set $3 + local.set $0 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $3 + local.get $0 if - local.get $3 + local.get $0 i32.load offset=4 - local.tee $0 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $2 - local.get $3 + local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find7 - local.get $0 + local.get $4 i32.const -2 i32.and - local.set $3 + local.set $0 br $while-continue|08 end end i32.const 0 - local.set $3 + local.set $0 end - local.get $3 + local.get $0 i32.eqz if i32.const 0 @@ -15490,7 +15502,7 @@ br $for-loop|1 end end - local.get $5 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -15516,13 +15528,13 @@ local.tee $8 i32.const 0 i32.store - local.get $5 + local.get $3 i32.load offset=8 local.set $11 - local.get $5 + local.get $3 i32.load offset=16 local.tee $12 - local.set $3 + local.set $5 local.get $8 i32.const 8 i32.sub @@ -15553,7 +15565,7 @@ local.get $4 i32.const 0 i32.store offset=12 - local.get $3 + local.get $5 i32.const 268435455 i32.gt_u if @@ -15565,9 +15577,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $5 i32.const 8 - local.get $3 + local.get $5 i32.const 8 i32.gt_u select @@ -15597,7 +15609,7 @@ local.get $9 i32.store offset=8 local.get $4 - local.get $3 + local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 @@ -15607,16 +15619,16 @@ local.get $4 i32.store loop $for-loop|01 - local.get $6 + local.get $7 local.get $12 i32.lt_s if - local.get $6 + local.get $7 i32.const 3 i32.shl local.get $11 i32.add - local.tee $3 + local.tee $5 i32.load offset=4 i32.const 1 i32.and @@ -15627,7 +15639,7 @@ i32.const 1 i32.add local.set $1 - local.get $3 + local.get $5 f32.load local.set $2 local.get $4 @@ -15650,12 +15662,12 @@ local.get $0 i32.const 1 i32.add - local.tee $3 + local.tee $5 i32.const 2 i32.const 1 call $~lib/array/ensureCapacity local.get $4 - local.get $3 + local.get $5 i32.store offset=12 end local.get $4 @@ -15667,10 +15679,10 @@ local.get $2 f32.store end - local.get $6 + local.get $7 i32.const 1 i32.add - local.set $6 + local.set $7 br $for-loop|01 end end @@ -15695,11 +15707,11 @@ loop $for-loop|2 local.get $4 i32.load offset=12 - local.get $7 + local.get $6 i32.gt_s if local.get $4 - local.get $7 + local.get $6 call $~lib/array/Array#__get local.tee $2 i32.reinterpret_f32 @@ -15726,9 +15738,9 @@ i32.const -1028477379 i32.mul local.set $0 - local.get $5 + local.get $3 i32.load - local.get $5 + local.get $3 i32.load offset=4 local.get $0 i32.const 16 @@ -15740,36 +15752,36 @@ i32.shl i32.add i32.load - local.set $3 + local.set $0 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $3 + local.get $0 if - local.get $3 + local.get $0 i32.load offset=4 - local.tee $0 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $2 - local.get $3 + local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $0 + local.get $5 i32.const -2 i32.and - local.set $3 + local.set $0 br $while-continue|011 end end i32.const 0 - local.set $3 + local.set $0 end - local.get $3 + local.get $0 i32.eqz if i32.const 0 @@ -15781,19 +15793,19 @@ end local.get $1 local.get $4 - local.get $7 + local.get $6 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $7 + local.get $6 i32.const 1 i32.add - local.set $7 + local.set $6 br $for-loop|2 end end local.get $1 i32.load offset=20 - local.get $5 + local.get $3 i32.load offset=20 i32.ne if @@ -15811,9 +15823,9 @@ f32.const 50 f32.lt if - local.get $5 + local.get $3 i32.load - local.get $5 + local.get $3 i32.load offset=4 local.get $2 i32.reinterpret_f32 @@ -15849,36 +15861,36 @@ i32.shl i32.add i32.load - local.set $3 + local.set $0 block $__inlined_func$~lib/set/Set#find13 loop $while-continue|014 - local.get $3 + local.get $0 if - local.get $3 + local.get $0 i32.load offset=4 - local.tee $0 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $2 - local.get $3 + local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find13 - local.get $0 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $0 br $while-continue|014 end end i32.const 0 - local.set $3 + local.set $0 end - local.get $3 + local.get $0 i32.eqz if i32.const 0 @@ -15888,12 +15900,12 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $3 local.get $2 call $~lib/set/Set#delete - local.get $5 + local.get $3 i32.load - local.get $5 + local.get $3 i32.load offset=4 local.get $2 i32.reinterpret_f32 @@ -15929,36 +15941,36 @@ i32.shl i32.add i32.load - local.set $3 + local.set $0 block $__inlined_func$~lib/set/Set#find16 loop $while-continue|017 - local.get $3 + local.get $0 if - local.get $3 + local.get $0 i32.load offset=4 - local.tee $0 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $2 - local.get $3 + local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find16 - local.get $0 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $0 br $while-continue|017 end end i32.const 0 - local.set $3 + local.set $0 end - local.get $3 + local.get $0 if i32.const 0 i32.const 1568 @@ -15974,7 +15986,7 @@ br $for-loop|3 end end - local.get $5 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -15993,9 +16005,9 @@ f32.const 50 f32.lt if - local.get $5 + local.get $3 i32.load - local.get $5 + local.get $3 i32.load offset=4 local.get $2 i32.reinterpret_f32 @@ -16031,36 +16043,36 @@ i32.shl i32.add i32.load - local.set $3 + local.set $0 block $__inlined_func$~lib/set/Set#find19 loop $while-continue|020 - local.get $3 + local.get $0 if - local.get $3 + local.get $0 i32.load offset=4 - local.tee $0 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $2 - local.get $3 + local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find19 - local.get $0 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $0 br $while-continue|020 end end i32.const 0 - local.set $3 + local.set $0 end - local.get $3 + local.get $0 if i32.const 0 i32.const 1568 @@ -16069,12 +16081,12 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $3 local.get $2 call $~lib/set/Set#add - local.get $5 + local.get $3 i32.load - local.get $5 + local.get $3 i32.load offset=4 local.get $2 i32.reinterpret_f32 @@ -16110,36 +16122,36 @@ i32.shl i32.add i32.load - local.set $3 + local.set $0 block $__inlined_func$~lib/set/Set#find22 loop $while-continue|023 - local.get $3 + local.get $0 if - local.get $3 + local.get $0 i32.load offset=4 - local.tee $0 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $2 - local.get $3 + local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find22 - local.get $0 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $0 br $while-continue|023 end end i32.const 0 - local.set $3 + local.set $0 end - local.get $3 + local.get $0 i32.eqz if i32.const 0 @@ -16149,12 +16161,12 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $3 local.get $2 call $~lib/set/Set#delete - local.get $5 + local.get $3 i32.load - local.get $5 + local.get $3 i32.load offset=4 local.get $2 i32.reinterpret_f32 @@ -16190,36 +16202,36 @@ i32.shl i32.add i32.load - local.set $3 + local.set $0 block $__inlined_func$~lib/set/Set#find25 loop $while-continue|026 - local.get $3 + local.get $0 if - local.get $3 + local.get $0 i32.load offset=4 - local.tee $0 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $2 - local.get $3 + local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find25 - local.get $0 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $0 br $while-continue|026 end end i32.const 0 - local.set $3 + local.set $0 end - local.get $3 + local.get $0 if i32.const 0 i32.const 1568 @@ -16235,7 +16247,7 @@ br $for-loop|4 end end - local.get $5 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -16247,9 +16259,9 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $3 call $~lib/set/Set#clear - local.get $5 + local.get $3 i32.load offset=20 if i32.const 0 @@ -16362,12 +16374,12 @@ (func $~lib/set/Set#rehash (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 i64) - (local $5 f64) + (local $4 i32) + (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) - (local $9 i32) + (local $8 f64) + (local $9 i64) (local $10 i32) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -16396,7 +16408,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $8 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -16404,7 +16416,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -16412,36 +16424,36 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $9 + local.tee $4 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $6 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 - local.get $6 - local.get $9 + local.get $4 + local.get $7 i32.ne if - local.get $9 + local.get $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $9 + local.get $4 f64.load - local.tee $5 + local.tee $8 f64.store local.get $2 local.get $1 - local.get $5 + local.get $8 i64.reinterpret_f64 - local.tee $4 + local.tee $9 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -16451,7 +16463,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $4 + local.get $9 i64.const 32 i64.shr_u i32.wrap_i64 @@ -16484,7 +16496,7 @@ i32.and i32.const 2 i32.shl - local.get $8 + local.get $5 i32.add local.tee $10 i32.load @@ -16497,20 +16509,20 @@ i32.add local.set $2 end - local.get $9 + local.get $4 i32.const 16 i32.add - local.set $9 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $8 + local.get $5 i32.store - local.get $8 + local.get $5 if local.get $0 - local.get $8 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -16526,7 +16538,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -16878,13 +16890,13 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 call $~lib/set/Set#constructor local.tee $3 i32.store @@ -16992,8 +17004,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -17002,17 +17014,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $10 + local.tee $8 i32.const 0 i32.store local.get $3 i32.load offset=8 - local.set $8 + local.set $11 local.get $3 i32.load offset=16 - local.tee $9 - local.set $1 - local.get $10 + local.tee $12 + local.set $5 + local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -17021,28 +17033,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $0 i64.const 0 i64.store - local.get $6 + local.get $0 i32.const 16 i32.const 22 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $4 i32.store - local.get $11 + local.get $4 i32.const 0 i32.store - local.get $11 + local.get $4 i32.const 0 i32.store offset=4 - local.get $11 + local.get $4 i32.const 0 i32.store offset=8 - local.get $11 + local.get $4 i32.const 0 i32.store offset=12 - local.get $1 + local.get $5 i32.const 134217727 i32.gt_u if @@ -17054,77 +17066,77 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $5 i32.const 8 - local.get $1 + local.get $5 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $6 + local.tee $9 i32.const 0 call $~lib/rt/itcms/__new - local.tee $12 + local.tee $0 i32.store offset=4 - local.get $12 - local.get $6 + local.get $0 + local.get $9 call $~lib/memory/memory.fill - local.get $11 - local.get $12 + local.get $4 + local.get $0 i32.store - local.get $12 + local.get $0 if - local.get $11 - local.get $12 + local.get $4 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 - local.get $12 + local.get $4 + local.get $0 i32.store offset=4 - local.get $11 - local.get $6 + local.get $4 + local.get $9 i32.store offset=8 - local.get $11 - local.get $1 + local.get $4 + local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 - local.get $11 + local.get $8 + local.get $4 i32.store loop $for-loop|01 - local.get $5 - local.get $9 + local.get $7 + local.get $12 i32.lt_s if - local.get $5 + local.get $7 i32.const 4 i32.shl - local.get $8 + local.get $11 i32.add - local.tee $6 + local.tee $5 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.add - local.set $0 - local.get $6 + local.set $1 + local.get $5 f64.load local.set $2 - local.get $11 + local.get $4 i32.load offset=12 - local.get $1 + local.get $0 i32.le_u if - local.get $1 + local.get $0 i32.const 0 i32.lt_s if @@ -17135,61 +17147,61 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $1 + local.get $4 + local.get $0 i32.const 1 i32.add - local.tee $6 + local.tee $5 i32.const 3 i32.const 1 call $~lib/array/ensureCapacity - local.get $11 - local.get $6 + local.get $4 + local.get $5 i32.store offset=12 end - local.get $11 + local.get $4 i32.load offset=4 - local.get $1 + local.get $0 i32.const 3 i32.shl i32.add local.get $2 f64.store end - local.get $5 + local.get $7 i32.const 1 i32.add - local.set $5 + local.set $7 br $for-loop|01 end end - local.get $11 - local.get $0 + local.get $4 + local.get $1 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $11 - local.get $0 + local.get $4 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 + local.get $4 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|2 - local.get $11 - i32.load offset=12 local.get $4 + i32.load offset=12 + local.get $6 i32.gt_s if local.get $3 - local.get $11 local.get $4 + local.get $6 call $~lib/array/Array#__get call $~lib/set/Set#has i32.eqz @@ -17202,14 +17214,14 @@ unreachable end local.get $0 - local.get $11 local.get $4 + local.get $6 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $4 + local.get $6 i32.const 1 i32.add - local.set $4 + local.set $6 br $for-loop|2 end end diff --git a/tests/compiler/std/static-array.optimized.wat b/tests/compiler/std/static-array.optimized.wat index ab8c0f7278..5a4c5989f6 100644 --- a/tests/compiler/std/static-array.optimized.wat +++ b/tests/compiler/std/static-array.optimized.wat @@ -164,7 +164,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -187,7 +187,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -197,23 +197,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -221,7 +221,7 @@ else i32.const 1952 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1472 @@ -231,7 +231,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 1956 @@ -246,27 +246,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -354,19 +354,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -391,9 +391,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -401,17 +401,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -699,10 +699,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -714,15 +714,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -752,7 +752,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -788,12 +788,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -811,11 +811,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 18400 @@ -823,14 +823,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -840,17 +840,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1328,14 +1328,14 @@ i32.sub i32.const -4 i32.and - local.tee $1 - i32.add local.tee $2 + i32.add + local.tee $1 i32.const 4 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1345,17 +1345,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 12 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1371,22 +1371,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $2 + local.get $1 i32.const 28 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 20 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 16 i32.sub i32.const 0 @@ -1397,11 +1397,11 @@ i32.and i32.const 24 i32.add - local.tee $2 + local.tee $1 i32.add local.set $0 - local.get $1 local.get $2 + local.get $1 i32.sub local.set $1 loop $while-continue|0 @@ -1889,105 +1889,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2019,41 +2029,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2141,7 +2153,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $5 + local.tee $7 i32.load i32.const -4 i32.and @@ -2150,17 +2162,17 @@ local.get $1 i32.ge_u if - local.get $5 + local.get $7 local.get $1 i32.store offset=16 local.get $0 return end - local.get $5 + local.get $7 i32.load offset=12 - local.set $4 + local.set $5 local.get $1 - local.tee $2 + local.tee $3 i32.const 1073741804 i32.ge_u if @@ -2216,18 +2228,18 @@ global.set $~lib/rt/itcms/threshold end end - local.get $2 + local.get $3 i32.const 16 i32.add - local.set $1 + local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $7 - local.get $1 + local.tee $8 + local.get $2 i32.const 1073741820 i32.gt_u if @@ -2238,13 +2250,13 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $1 + local.get $2 i32.const 19 i32.add i32.const -16 @@ -2252,34 +2264,34 @@ i32.const 4 i32.sub end - local.tee $3 - call $~lib/rt/tlsf/searchBlock local.tee $1 + call $~lib/rt/tlsf/searchBlock + local.tee $2 i32.eqz if memory.size - local.tee $1 - local.get $3 + local.tee $4 + local.get $1 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $1 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $1 i32.add else - local.get $3 + local.get $1 end i32.const 4 - local.get $7 + local.get $8 i32.load offset=1568 - local.get $1 + local.get $4 i32.const 16 i32.shl i32.const 4 @@ -2293,16 +2305,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $6 - local.get $1 - local.get $6 - i32.gt_s + local.tee $2 + local.get $2 + local.get $4 + i32.lt_s select memory.grow i32.const 0 i32.lt_s if - local.get $6 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -2310,18 +2322,18 @@ unreachable end end - local.get $7 - local.get $1 + local.get $8 + local.get $4 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $7 - local.get $3 + local.get $8 + local.get $1 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2332,11 +2344,11 @@ unreachable end end - local.get $1 + local.get $2 i32.load i32.const -4 i32.and - local.get $3 + local.get $1 i32.lt_u if i32.const 0 @@ -2346,13 +2358,13 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $1 + local.get $8 + local.get $2 call $~lib/rt/tlsf/removeBlock - local.get $1 + local.get $2 i32.load - local.set $8 - local.get $3 + local.set $6 + local.get $1 i32.const 4 i32.add i32.const 15 @@ -2365,74 +2377,74 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $1 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if - local.get $1 - local.get $8 + local.get $2 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $1 i32.or i32.store - local.get $3 local.get $1 + local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $1 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $7 - local.get $3 + local.get $8 + local.get $1 call $~lib/rt/tlsf/insertBlock else - local.get $1 - local.get $8 + local.get $2 + local.get $6 i32.const -2 i32.and i32.store - local.get $1 + local.get $2 i32.const 4 i32.add - local.get $1 + local.get $2 i32.load i32.const -4 i32.and i32.add - local.tee $3 - local.get $3 + local.tee $1 + local.get $1 i32.load i32.const -3 i32.and i32.store end - local.get $1 - local.get $4 + local.get $2 + local.get $5 i32.store offset=12 - local.get $1 local.get $2 + local.get $3 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 local.set $4 - local.get $1 + local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $4 i32.store offset=8 local.get $4 @@ -2440,14 +2452,14 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 - local.get $3 local.get $1 + local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total - local.get $1 + local.get $2 i32.load i32.const -4 i32.and @@ -2455,18 +2467,18 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $1 + local.get $2 i32.const 20 i32.add local.tee $4 - local.get $2 + local.get $3 call $~lib/memory/memory.fill - local.get $2 - local.get $5 + local.get $3 + local.get $7 i32.load offset=16 local.tee $1 local.get $1 - local.get $2 + local.get $3 i32.gt_u select local.set $5 @@ -2519,17 +2531,17 @@ i32.sub local.set $5 local.get $1 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $1 local.get $0 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $0 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 br $while-continue|0 @@ -2564,17 +2576,17 @@ local.get $5 if local.get $1 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $1 local.get $0 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $0 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 local.get $5 @@ -2686,35 +2698,35 @@ local.get $2 local.get $0 i32.load - local.tee $3 + local.tee $4 local.get $2 i32.const 1 i32.shl - local.tee $4 + local.tee $3 i32.const 1073741820 - local.get $4 + local.get $3 i32.const 1073741820 i32.lt_u select - local.tee $4 + local.tee $3 i32.const 8 local.get $1 i32.shl local.tee $1 local.get $1 - local.get $4 + local.get $3 i32.lt_u select - local.tee $4 + local.tee $3 call $~lib/rt/itcms/__renew local.tee $1 i32.add - local.get $4 + local.get $3 local.get $2 i32.sub call $~lib/memory/memory.fill local.get $1 - local.get $3 + local.get $4 i32.ne if local.get $0 @@ -2775,7 +2787,7 @@ end end local.get $0 - local.get $4 + local.get $3 i32.store offset=8 end ) diff --git a/tests/compiler/std/staticarray.optimized.wat b/tests/compiler/std/staticarray.optimized.wat index cdfd15723e..11b069fabb 100644 --- a/tests/compiler/std/staticarray.optimized.wat +++ b/tests/compiler/std/staticarray.optimized.wat @@ -305,7 +305,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -328,7 +328,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -338,23 +338,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -362,7 +362,7 @@ else i32.const 3728 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1088 @@ -372,7 +372,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 3732 @@ -387,27 +387,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -495,19 +495,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -532,9 +532,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -542,17 +542,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -840,10 +840,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -855,15 +855,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -893,7 +893,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -929,12 +929,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -952,11 +952,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 20256 @@ -964,14 +964,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -981,17 +981,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1077,7 +1077,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $2 + local.set $1 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -1094,11 +1094,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -1140,9 +1140,9 @@ if local.get $0 i32.load - local.tee $1 + local.tee $2 if - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -1166,11 +1166,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -1196,7 +1196,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $2 + local.get $1 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -1416,7 +1416,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $2 local.get $0 i32.const 1073741820 i32.gt_u @@ -1442,34 +1442,34 @@ i32.const 4 i32.sub end - local.tee $3 - call $~lib/rt/tlsf/searchBlock local.tee $0 + call $~lib/rt/tlsf/searchBlock + local.tee $1 i32.eqz if memory.size - local.tee $0 - local.get $3 + local.tee $1 + local.get $0 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $0 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $0 i32.add else - local.get $3 + local.get $0 end i32.const 4 - local.get $1 + local.get $2 i32.load offset=1568 - local.get $0 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1483,16 +1483,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 - local.get $0 - local.get $2 + local.tee $3 + local.get $1 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1500,18 +1500,18 @@ unreachable end end + local.get $2 local.get $1 - local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 - local.get $3 + local.get $2 + local.get $0 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1522,11 +1522,11 @@ unreachable end end - local.get $0 + local.get $1 i32.load i32.const -4 i32.and - local.get $3 + local.get $0 i32.lt_u if i32.const 0 @@ -1536,13 +1536,13 @@ call $~lib/builtins/abort unreachable end + local.get $2 local.get $1 - local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $0 + local.get $1 i32.load - local.set $4 - local.get $3 + local.set $3 + local.get $0 i32.const 4 i32.add i32.const 15 @@ -1555,59 +1555,59 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const -4 i32.and - local.get $3 + local.get $0 i32.sub - local.tee $2 + local.tee $4 i32.const 16 i32.ge_u if - local.get $0 - local.get $4 + local.get $1 + local.get $3 i32.const 2 i32.and - local.get $3 + local.get $0 i32.or i32.store - local.get $3 local.get $0 + local.get $1 i32.const 4 i32.add i32.add - local.tee $3 - local.get $2 + local.tee $0 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 - local.get $3 + local.get $2 + local.get $0 call $~lib/rt/tlsf/insertBlock else - local.get $0 - local.get $4 + local.get $1 + local.get $3 i32.const -2 i32.and i32.store - local.get $0 + local.get $1 i32.const 4 i32.add - local.get $0 + local.get $1 i32.load i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.load i32.const -3 i32.and i32.store end - local.get $0 + local.get $1 i32.const 4 i32.add ) @@ -1681,14 +1681,14 @@ i32.sub i32.const -4 i32.and - local.tee $1 - i32.add local.tee $2 + i32.add + local.tee $1 i32.const 4 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1698,17 +1698,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 12 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1724,22 +1724,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $2 + local.get $1 i32.const 28 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 20 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 16 i32.sub i32.const 0 @@ -1750,11 +1750,11 @@ i32.and i32.const 24 i32.add - local.tee $2 + local.tee $1 i32.add local.set $0 - local.get $1 local.get $2 + local.get $1 i32.sub local.set $1 loop $while-continue|0 @@ -1859,26 +1859,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2353,105 +2353,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 - i32.load8_u - i32.store8 - local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 + local.get $3 local.get $4 - i32.const 2 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 + i32.load8_u + i32.store8 + local.get $1 + local.tee $3 + i32.const 2 i32.add local.set $1 + local.get $0 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2483,41 +2493,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2912,14 +2924,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -3733,12 +3745,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) + (local $13 i64) local.get $1 i32.const 48 i32.le_s @@ -3862,7 +3874,7 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $11 + local.tee $9 local.get $5 i32.add local.set $10 @@ -3876,7 +3888,7 @@ local.get $5 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -3891,13 +3903,13 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $9 + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $12 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -3909,9 +3921,9 @@ if local.get $0 i32.const 0 - local.get $12 + local.get $8 i32.const 31 - local.get $12 + local.get $8 i32.const 31 i32.lt_s select @@ -3922,7 +3934,7 @@ end loop $while-continue|2 local.get $1 - local.get $12 + local.get $8 i32.lt_s if local.get $0 @@ -3930,7 +3942,7 @@ i32.const 1 i32.add local.tee $6 - local.get $12 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -3944,13 +3956,13 @@ if local.get $0 local.get $6 - local.get $12 + local.get $8 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $12 + local.get $8 i32.gt_s select local.tee $5 @@ -3964,11 +3976,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $8 + local.tee $13 i64.div_u local.get $5 local.get $6 @@ -3978,7 +3990,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $13 i64.div_u i64.xor i32.wrap_i64 @@ -3992,15 +4004,15 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load - local.tee $13 + local.tee $12 i32.const -1 i32.ne if local.get $0 - local.get $13 + local.get $12 local.get $10 local.get $4 i32.const 2 @@ -4011,15 +4023,15 @@ i32.const 1 i32.add local.get $1 - local.get $9 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $11 + local.get $9 i32.add i32.const -1 i32.store - local.get $13 + local.get $12 local.set $3 end local.get $4 @@ -4029,7 +4041,7 @@ br $for-loop|3 end end - local.get $11 + local.get $9 local.get $7 i32.const 2 i32.shl @@ -4057,7 +4069,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $1 @@ -4074,8 +4086,8 @@ i32.load i32.const 1 i32.add - local.get $12 - local.get $9 + local.get $8 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end @@ -4086,10 +4098,10 @@ br $for-loop|4 end end - local.get $9 - call $~lib/rt/tlsf/__free local.get $11 call $~lib/rt/tlsf/__free + local.get $9 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -4246,10 +4258,10 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 f64) - (local $7 f32) - (local $8 i32) - (local $9 i32) + (local $6 i32) + (local $7 i32) + (local $8 f64) + (local $9 f32) (local $10 i32) (local $11 i32) (local $12 i32) @@ -4718,11 +4730,11 @@ i32.const 6 i32.const 1824 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 call $~lib/staticarray/StaticArray.fromArray local.tee $0 i32.store offset=4 @@ -4744,29 +4756,29 @@ i32.const 8 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.const 1856 i32.const 8 call $~lib/memory/memory.copy - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.const 3 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.const 1888 i32.const 4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=12 + local.get $0 local.get $1 - local.get $3 call $~lib/staticarray/StaticArray.concat - local.tee $0 + local.tee $1 i32.store offset=8 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -4786,25 +4798,25 @@ i32.const 0 i32.const 3 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.const 1920 i32.const 0 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=12 + local.get $0 local.get $1 - local.get $3 call $~lib/staticarray/StaticArray.concat - local.tee $0 + local.tee $1 i32.store offset=8 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -4823,26 +4835,26 @@ i32.const 20 i32.const 8 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $0 i32.const 2128 i32.const 20 call $~lib/memory/memory.copy - local.get $3 + local.get $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.const 0 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $0 + local.tee $3 i32.store offset=4 - local.get $0 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.get $3 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -4860,7 +4872,7 @@ i32.const 0 local.set $1 loop $for-loop|2 - local.get $3 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -4869,14 +4881,14 @@ local.get $1 i32.gt_s if - local.get $3 + local.get $0 local.get $1 call $~lib/staticarray/StaticArray<~lib/string/String>#__get local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 i32.store - local.get $0 + local.get $3 local.get $1 call $~lib/staticarray/StaticArray<~lib/string/String>#__get local.set $5 @@ -4903,13 +4915,13 @@ end end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.const 1 i32.const 3 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -4925,18 +4937,18 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer local.tee $4 - local.get $1 + local.get $3 i32.store local.get $4 i32.const 1984 i32.store offset=12 - local.get $1 + local.get $3 i32.const 1984 call $~lib/string/String.__eq i32.eqz @@ -4948,18 +4960,18 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store + local.tee $3 local.get $1 + i32.store + local.get $3 i32.const 2016 i32.store offset=12 - local.get $0 + local.get $1 i32.const 2016 call $~lib/string/String.__eq i32.eqz @@ -4972,13 +4984,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.const 1 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $3 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -4986,7 +4998,7 @@ i32.shr_u i32.const 1 i32.sub - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -5002,19 +5014,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.const 0 i32.const 50 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.get $3 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -5030,13 +5042,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.const 100 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -5051,13 +5063,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.const -1 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -5073,18 +5085,18 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store + local.tee $3 local.get $1 + i32.store + local.get $3 i32.const 2080 i32.store offset=12 - local.get $0 + local.get $1 i32.const 2080 call $~lib/string/String.__eq i32.eqz @@ -5097,13 +5109,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.const -2 i32.const -2 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -5118,7 +5130,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.const 2 i32.const -2 call $~lib/staticarray/StaticArray.slice<~lib/string/String> @@ -5167,30 +5179,30 @@ i32.const 20 i32.const 8 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.const 2304 i32.const 20 call $~lib/memory/memory.copy - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 0 i32.const 9 i32.const 2352 call $~lib/rt/__newArray - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=12 + local.get $0 local.get $1 - local.get $3 call $~lib/staticarray/StaticArray<~lib/string/String>#concat - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 - i32.load offset=12 local.get $1 - i32.const 20 + i32.load offset=12 + local.get $0 + i32.const 20 i32.sub i32.load offset=16 i32.const 2 @@ -5209,18 +5221,18 @@ i32.const 9 i32.const 2416 call $~lib/rt/__newArray - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=12 + local.get $0 local.get $1 - local.get $3 call $~lib/staticarray/StaticArray<~lib/string/String>#concat - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 - i32.load offset=12 local.get $1 + i32.load offset=12 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -5241,16 +5253,16 @@ i32.const 20 i32.const 8 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.const 2448 i32.const 20 call $~lib/memory/memory.copy - local.get $1 + local.get $0 i32.store offset=16 global.get $~lib/memory/__stack_pointer i32.const 1984 i32.store offset=12 - local.get $1 + local.get $0 i32.const 1984 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#includes @@ -5267,7 +5279,7 @@ global.get $~lib/memory/__stack_pointer i32.const 2384 i32.store offset=12 - local.get $1 + local.get $0 i32.const 2384 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#includes @@ -5282,7 +5294,7 @@ global.get $~lib/memory/__stack_pointer i32.const 2080 i32.store offset=12 - local.get $1 + local.get $0 i32.const 2080 i32.const 5 call $~lib/staticarray/StaticArray<~lib/string/String>#includes @@ -5297,7 +5309,7 @@ global.get $~lib/memory/__stack_pointer i32.const 2080 i32.store offset=12 - local.get $1 + local.get $0 i32.const 2080 i32.const -1 call $~lib/staticarray/StaticArray<~lib/string/String>#includes @@ -5348,11 +5360,11 @@ local.get $0 i32.add f64.load - local.tee $6 + local.tee $8 f64.const nan:0x8000000000000 f64.eq - local.get $6 - local.get $6 + local.get $8 + local.get $8 f64.ne i32.or br_if $__inlined_func$~lib/staticarray/StaticArray#includes @@ -5414,11 +5426,11 @@ local.get $0 i32.add f32.load - local.tee $7 + local.tee $9 f32.const nan:0x400000 f32.eq - local.get $7 - local.get $7 + local.get $9 + local.get $9 f32.ne i32.or br_if $__inlined_func$~lib/staticarray/StaticArray#includes @@ -6103,26 +6115,26 @@ i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.const 2736 i32.const 12 call $~lib/memory/memory.copy - local.get $1 + local.get $0 i32.store offset=16 global.get $~lib/memory/__stack_pointer i32.const 2800 i32.store offset=20 - local.get $1 + local.get $0 i32.const 2800 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 2832 i32.store offset=12 - local.get $0 + local.get $1 i32.const 2832 call $~lib/string/String.__eq i32.eqz @@ -6137,17 +6149,17 @@ global.get $~lib/memory/__stack_pointer i32.const 2768 i32.store offset=20 - local.get $1 + local.get $0 i32.const 2768 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 2880 i32.store offset=12 - local.get $0 + local.get $1 i32.const 2880 call $~lib/string/String.__eq i32.eqz @@ -6162,17 +6174,17 @@ global.get $~lib/memory/__stack_pointer i32.const 2928 i32.store offset=20 - local.get $1 + local.get $0 i32.const 2928 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 2960 i32.store offset=12 - local.get $0 + local.get $1 i32.const 2960 call $~lib/string/String.__eq i32.eqz @@ -6187,17 +6199,17 @@ global.get $~lib/memory/__stack_pointer i32.const 3008 i32.store offset=20 - local.get $1 + local.get $0 i32.const 3008 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 3040 i32.store offset=12 - local.get $0 + local.get $1 i32.const 3040 call $~lib/string/String.__eq i32.eqz @@ -6212,12 +6224,12 @@ global.get $~lib/memory/__stack_pointer i32.const 2800 i32.store offset=20 - local.get $1 + local.get $0 i32.const 2800 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 @@ -6234,19 +6246,19 @@ local.get $2 i32.const 2800 i32.store - local.get $1 + local.get $0 i32.const 2800 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=12 local.get $0 + i32.store offset=12 local.get $1 + local.get $0 call $~lib/string/String.__eq i32.eqz if @@ -6261,34 +6273,34 @@ i32.const 8 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.const 3104 i32.const 8 call $~lib/memory/memory.copy - local.get $1 + local.get $0 i32.store offset=16 i32.const 1 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.const 1 i32.gt_u select local.set $2 loop $for-loop|024 - local.get $0 + local.get $1 local.get $2 i32.gt_s if local.get $2 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add i32.const 1 i32.store @@ -6299,7 +6311,7 @@ br $for-loop|024 end end - local.get $1 + local.get $0 i32.const 0 call $~lib/staticarray/StaticArray#__get if @@ -6310,7 +6322,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 1 @@ -6327,32 +6339,32 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.const 3136 i32.const 12 call $~lib/memory/memory.copy - local.get $1 + local.get $0 i32.store offset=16 i32.const 0 local.set $2 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $0 + local.tee $1 i32.const 1 i32.gt_u if - local.get $0 + local.get $1 i32.const 1 i32.shr_u local.set $3 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 loop $while-continue|02633 local.get $2 local.get $3 @@ -6361,18 +6373,18 @@ local.get $2 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add local.tee $4 i32.load local.set $5 local.get $4 - local.get $0 + local.get $1 local.get $2 i32.sub i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add local.tee $4 i32.load @@ -6388,7 +6400,7 @@ end end end - local.get $1 + local.get $0 i32.const 0 call $~lib/staticarray/StaticArray#__get i32.const 3 @@ -6401,7 +6413,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 2 @@ -6414,7 +6426,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/staticarray/StaticArray#__get i32.const 1 @@ -6431,56 +6443,56 @@ i32.const 20 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.const 3168 i32.const 20 call $~lib/memory/memory.copy - local.get $1 + local.get $0 i32.store offset=16 i32.const 0 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 select local.set $2 - local.get $0 + local.get $1 i32.const 3 - local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.const 3 i32.gt_u select - local.tee $3 + local.tee $4 i32.sub - local.set $4 + local.set $3 local.get $2 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add - local.get $3 + local.get $4 i32.const 2 i32.shl - local.get $1 - i32.add - local.get $4 local.get $0 + i32.add + local.get $3 + local.get $1 local.get $2 i32.sub - local.tee $0 - local.get $0 - local.get $4 + local.tee $1 + local.get $1 + local.get $3 i32.gt_s select i32.const 2 i32.shl call $~lib/memory/memory.copy - local.get $1 + local.get $0 i32.const 0 call $~lib/staticarray/StaticArray#__get i32.const 4 @@ -6493,7 +6505,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 5 @@ -6506,7 +6518,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/staticarray/StaticArray#__get i32.const 3 @@ -6519,7 +6531,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 call $~lib/staticarray/StaticArray#__get i32.const 4 @@ -6532,7 +6544,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 4 call $~lib/staticarray/StaticArray#__get i32.const 5 @@ -6556,12 +6568,12 @@ local.get $3 i32.store offset=16 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 3248 i32.store offset=12 i32.const 0 local.set $2 - local.get $0 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -6570,44 +6582,44 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $1 + local.tee $4 i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $4 + local.tee $0 i32.store - local.get $4 + local.get $0 i32.load offset=4 local.set $5 loop $for-loop|027 - local.get $1 local.get $2 - i32.gt_s + local.get $4 + i32.lt_s if local.get $3 local.get $2 i32.const 2 i32.shl - local.tee $8 + local.tee $6 i32.add i32.load - local.set $9 + local.set $7 i32.const 3 global.set $~argumentsLength local.get $5 - local.get $8 + local.get $6 i32.add - local.get $9 + local.get $7 local.get $2 local.get $3 i32.const 3248 @@ -6625,10 +6637,10 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $1 local.get $0 - local.get $4 i32.store offset=4 - local.get $4 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 2 @@ -6641,7 +6653,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.const 3 @@ -6654,7 +6666,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $0 i32.const 2 call $~lib/array/Array#__get i32.const 4 @@ -6739,7 +6751,7 @@ i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $12 + local.tee $4 i32.store local.get $3 i32.const 20 @@ -6747,10 +6759,10 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.set $9 + local.set $13 loop $for-loop|028 local.get $2 - local.get $9 + local.get $13 i32.lt_s if local.get $2 @@ -6759,26 +6771,26 @@ local.get $3 i32.add i32.load - local.set $13 + local.set $10 i32.const 3 global.set $~argumentsLength - local.get $13 + local.get $10 local.get $2 local.get $3 i32.const 3312 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $12 + local.get $4 i32.load offset=12 - local.tee $10 + local.tee $14 i32.const 1 i32.add - local.tee $11 + local.tee $15 local.tee $0 - local.get $12 + local.get $4 i32.load offset=8 - local.tee $4 + local.tee $6 i32.const 2 i32.shr_u i32.gt_u @@ -6795,7 +6807,7 @@ unreachable end block $__inlined_func$~lib/rt/itcms/__renew - local.get $4 + local.get $6 i32.const 1 i32.shl local.tee $1 @@ -6818,15 +6830,15 @@ local.get $1 i32.lt_u select - local.tee $14 - local.tee $15 - local.get $12 + local.tee $11 + local.tee $5 + local.get $4 i32.load local.tee $16 local.tee $0 i32.const 20 i32.sub - local.tee $5 + local.tee $7 i32.load i32.const -4 i32.and @@ -6834,68 +6846,68 @@ i32.sub i32.le_u if + local.get $7 local.get $5 - local.get $15 i32.store offset=16 local.get $0 local.set $1 br $__inlined_func$~lib/rt/itcms/__renew end - local.get $15 local.get $5 + local.get $7 i32.load offset=12 call $~lib/rt/itcms/__new local.tee $1 local.get $0 - local.get $15 local.get $5 + local.get $7 i32.load offset=16 local.tee $0 local.get $0 - local.get $15 + local.get $5 i32.gt_u select call $~lib/memory/memory.copy end local.get $1 - local.get $4 + local.get $6 i32.add - local.get $14 - local.get $4 + local.get $11 + local.get $6 i32.sub call $~lib/memory/memory.fill local.get $1 local.get $16 i32.ne if - local.get $12 + local.get $4 local.get $1 i32.store - local.get $12 + local.get $4 local.get $1 i32.store offset=4 local.get $1 if - local.get $12 + local.get $4 local.get $1 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end end - local.get $12 - local.get $14 + local.get $4 + local.get $11 i32.store offset=8 end - local.get $12 + local.get $4 i32.load offset=4 - local.get $10 + local.get $14 i32.const 2 i32.shl i32.add - local.get $13 + local.get $10 i32.store - local.get $12 - local.get $11 + local.get $4 + local.get $15 i32.store offset=12 end local.get $2 @@ -6909,9 +6921,9 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $12 + local.get $4 i32.store offset=24 - local.get $12 + local.get $4 i32.load offset=12 i32.const 2 i32.ne @@ -6923,7 +6935,7 @@ call $~lib/builtins/abort unreachable end - local.get $12 + local.get $4 i32.const 0 call $~lib/array/Array#__get i32.const 2 @@ -6936,7 +6948,7 @@ call $~lib/builtins/abort unreachable end - local.get $12 + local.get $4 i32.const 1 call $~lib/array/Array#__get i32.const 3 @@ -7489,11 +7501,11 @@ i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.const 3664 i32.const 16 call $~lib/memory/memory.copy - local.get $1 + local.get $0 i32.store offset=28 i32.const 0 global.set $~argumentsLength @@ -7524,8 +7536,8 @@ i32.const 3712 i32.store end - local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -7537,7 +7549,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 0 call $~lib/staticarray/StaticArray#__get if @@ -7548,7 +7560,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 1 @@ -7561,7 +7573,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/staticarray/StaticArray#__get i32.const 2 @@ -7574,7 +7586,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 call $~lib/staticarray/StaticArray#__get i32.const 3 @@ -7695,9 +7707,9 @@ local.get $0 i32.const 2 i32.shl - local.tee $4 - local.set $6 - local.get $4 + local.tee $6 + local.set $4 + local.get $6 i32.const 0 call $~lib/rt/itcms/__new local.set $3 @@ -7705,7 +7717,7 @@ if local.get $3 local.get $2 - local.get $6 + local.get $4 call $~lib/memory/memory.copy end local.get $5 @@ -7728,7 +7740,7 @@ local.get $3 i32.store offset=4 local.get $1 - local.get $4 + local.get $6 i32.store offset=8 local.get $1 local.get $0 @@ -7766,21 +7778,21 @@ i32.load offset=12 i32.const 2 i32.shl - local.tee $1 + local.tee $2 i32.const 3 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 local.get $0 i32.load offset=4 - local.get $1 + local.get $2 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 ) (func $~lib/staticarray/StaticArray.concat (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -7813,16 +7825,16 @@ i32.const 0 local.get $1 select - local.tee $2 + local.tee $3 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $3 - i32.add local.tee $4 + i32.add + local.tee $2 i32.const 268435455 i32.gt_u if @@ -7834,25 +7846,25 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.const 2 i32.shl i32.const 3 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 local.get $0 - local.get $3 + local.get $4 i32.const 2 i32.shl local.tee $0 call $~lib/memory/memory.copy local.get $0 - local.get $4 + local.get $2 i32.add local.get $1 - local.get $2 + local.get $3 i32.const 2 i32.shl call $~lib/memory/memory.copy @@ -7860,7 +7872,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $2 ) (func $~lib/staticarray/StaticArray.slice<~lib/string/String> (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -7911,7 +7923,7 @@ i32.lt_s select end - local.set $1 + local.set $4 global.get $~lib/memory/__stack_pointer local.get $2 i32.const 0 @@ -7920,9 +7932,9 @@ local.get $2 local.get $3 i32.add - local.tee $2 + local.tee $1 i32.const 0 - local.get $2 + local.get $1 i32.const 0 i32.gt_s select @@ -7934,47 +7946,47 @@ i32.lt_s select end - local.get $1 + local.get $4 i32.sub - local.tee $2 + local.tee $1 i32.const 0 - local.get $2 + local.get $1 i32.const 0 i32.gt_s select i32.const 2 i32.shl - local.tee $2 + local.tee $3 i32.const 8 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store - local.get $1 + local.get $4 i32.const 2 i32.shl local.get $0 i32.add - local.set $1 + local.set $4 i32.const 0 local.set $0 loop $while-continue|0 local.get $0 - local.get $2 + local.get $3 i32.lt_u if local.get $0 - local.get $3 + local.get $1 i32.add local.get $0 - local.get $1 + local.get $4 i32.add i32.load - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 if - local.get $3 - local.get $4 + local.get $1 + local.get $2 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -7989,7 +8001,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 ) (func $~lib/staticarray/StaticArray<~lib/string/String>#__get (param $0 i32) (param $1 i32) (result i32) global.get $~lib/memory/__stack_pointer @@ -8082,15 +8094,15 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.tee $3 + local.tee $5 local.get $1 i32.load offset=12 i32.const 0 local.get $1 select - local.tee $4 + local.tee $7 i32.add - local.tee $5 + local.tee $2 i32.const 268435455 i32.gt_u if @@ -8102,78 +8114,78 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $2 i32.const 9 i32.const 0 call $~lib/rt/__newArray - local.tee $5 + local.tee $2 i32.store - local.get $5 + local.get $2 i32.load offset=4 - local.set $6 - local.get $3 + local.set $4 + local.get $5 i32.const 2 i32.shl - local.set $3 + local.set $5 loop $for-loop|0 - local.get $2 local.get $3 + local.get $5 i32.lt_u if - local.get $2 - local.get $6 + local.get $3 + local.get $4 i32.add local.get $0 - local.get $2 + local.get $3 i32.add i32.load - local.tee $7 + local.tee $6 i32.store - local.get $7 + local.get $6 if - local.get $5 - local.get $7 + local.get $2 + local.get $6 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 + local.get $3 i32.const 4 i32.add - local.set $2 + local.set $3 br $for-loop|0 end end - local.get $3 - local.get $6 + local.get $4 + local.get $5 i32.add - local.set $2 + local.set $3 local.get $1 i32.load offset=4 - local.set $1 - local.get $4 + local.set $4 + local.get $7 i32.const 2 i32.shl - local.set $3 + local.set $5 i32.const 0 local.set $0 loop $for-loop|1 local.get $0 - local.get $3 + local.get $5 i32.lt_u if local.get $0 - local.get $2 + local.get $3 i32.add local.get $0 - local.get $1 + local.get $4 i32.add i32.load - local.tee $4 + local.tee $1 i32.store - local.get $4 + local.get $1 if - local.get $5 - local.get $4 + local.get $2 + local.get $1 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -8188,7 +8200,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $2 ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) global.get $~lib/rt/itcms/white @@ -8234,16 +8246,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $0 i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $0 local.get $1 local.get $2 select @@ -8252,7 +8264,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $3 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/string-casemapping.optimized.wat b/tests/compiler/std/string-casemapping.optimized.wat index 302add0bf9..bb8e3bc68a 100644 --- a/tests/compiler/std/string-casemapping.optimized.wat +++ b/tests/compiler/std/string-casemapping.optimized.wat @@ -617,19 +617,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -654,9 +654,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -664,17 +664,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -962,10 +962,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -977,15 +977,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -1015,7 +1015,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -1051,12 +1051,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -1074,11 +1074,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 37488 @@ -1086,14 +1086,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -1103,17 +1103,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1593,7 +1593,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1619,32 +1619,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $3 i32.add else - local.get $4 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1677,7 +1677,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1685,8 +1685,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1703,7 +1703,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $3 i32.lt_u if i32.const 0 @@ -1713,13 +1713,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1735,7 +1735,7 @@ local.get $5 i32.const -4 i32.and - local.get $4 + local.get $3 i32.sub local.tee $6 i32.const 16 @@ -1745,23 +1745,23 @@ local.get $5 i32.const 2 i32.and - local.get $4 + local.get $3 i32.or i32.store - local.get $4 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 + local.tee $3 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1791,26 +1791,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1825,7 +1825,7 @@ local.get $2 i32.const 20 i32.add - local.tee $2 + local.tee $3 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1837,7 +1837,7 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1852,12 +1852,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $3 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $2 i32.const 3 i32.sub i32.const 0 @@ -1869,7 +1869,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 0 @@ -1884,25 +1884,25 @@ i32.sub i32.const 3 i32.and - local.tee $3 + local.tee $2 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $3 + local.get $2 i32.sub i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.add - local.tee $3 + local.tee $0 i32.const 4 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1912,17 +1912,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $0 i32.const 12 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 8 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1938,22 +1938,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $3 + local.get $0 i32.const 28 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 24 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 20 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 16 i32.sub i32.const 0 @@ -1964,11 +1964,11 @@ i32.and i32.const 24 i32.add - local.tee $3 + local.tee $0 i32.add local.set $1 + local.get $2 local.get $0 - local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -2000,7 +2000,7 @@ end end end - local.get $2 + local.get $3 ) (func $~lib/util/casemap/casemap (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -2026,12 +2026,12 @@ local.get $0 i32.const 255 i32.and - local.tee $4 + local.tee $5 i32.const 3 i32.div_u i32.add i32.load8_u - local.get $4 + local.get $5 i32.const 3 i32.rem_u i32.const 2 @@ -2050,45 +2050,45 @@ i32.const 5124 i32.add i32.load - local.tee $2 + local.tee $3 i32.const 255 i32.and - local.set $3 - local.get $2 + local.set $2 + local.get $3 i32.const 8 i32.shr_s - local.set $5 - local.get $3 + local.set $3 + local.get $2 i32.const 2 i32.lt_u if i32.const 0 local.get $1 - local.get $3 + local.get $2 i32.xor i32.sub - local.get $5 + local.get $3 i32.and local.get $0 i32.add return end - local.get $5 + local.get $3 i32.const 255 i32.and local.set $2 - local.get $5 + local.get $3 i32.const 8 i32.shr_u local.set $3 loop $while-continue|0 local.get $2 if - local.get $4 + local.get $5 local.get $2 i32.const 1 i32.shr_u - local.tee $6 + local.tee $4 local.get $3 i32.add i32.const 1 @@ -2096,11 +2096,11 @@ i32.const 6596 i32.add i32.load8_u - local.tee $5 + local.tee $6 i32.eq if (result i32) local.get $3 - local.get $6 + local.get $4 i32.add i32.const 1 i32.shl @@ -2112,24 +2112,24 @@ i32.const 5124 i32.add i32.load - local.tee $2 + local.tee $3 i32.const 255 i32.and - local.set $3 - local.get $2 - i32.const 8 - i32.shr_s local.set $2 local.get $3 + i32.const 8 + i32.shr_s + local.set $3 + local.get $2 i32.const 2 i32.lt_u if i32.const 0 local.get $1 - local.get $3 + local.get $2 i32.xor i32.sub - local.get $2 + local.get $3 i32.and local.get $0 i32.add @@ -2144,18 +2144,18 @@ i32.sub return else - local.get $4 local.get $5 + local.get $6 i32.lt_u if (result i32) - local.get $6 + local.get $4 else local.get $3 - local.get $6 + local.get $4 i32.add local.set $3 local.get $2 - local.get $6 + local.get $4 i32.sub end end @@ -2620,105 +2620,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2750,41 +2760,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3058,7 +3070,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $2 i32.load i32.const -4 i32.and @@ -3067,20 +3079,20 @@ local.get $1 i32.ge_u if - local.get $3 + local.get $2 local.get $1 i32.store offset=16 local.get $0 return end local.get $1 - local.get $3 + local.get $2 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.load offset=16 local.tee $0 local.get $0 @@ -3088,7 +3100,7 @@ i32.gt_u select call $~lib/memory/memory.copy - local.get $2 + local.get $3 ) (func $~lib/string/String.__eq (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -3180,14 +3192,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -3354,7 +3366,7 @@ i64.const 63 i64.shr_u i32.wrap_i64 - local.tee $3 + local.tee $2 select local.tee $0 i64.const 4294967295 @@ -3363,7 +3375,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.wrap_i64 - local.tee $2 + local.tee $3 local.tee $1 i32.const 100000 i32.lt_u @@ -3410,7 +3422,7 @@ i32.add end end - local.get $3 + local.get $2 i32.add local.tee $4 i32.const 1 @@ -3420,7 +3432,7 @@ local.tee $1 i32.store local.get $1 - local.get $2 + local.get $3 local.get $4 call $~lib/util/number/utoa32_dec_lut else @@ -3475,9 +3487,9 @@ i32.add end end - local.get $3 + local.get $2 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.shl i32.const 1 @@ -3489,10 +3501,10 @@ i64.const 100000000 i64.ge_u if - local.get $2 + local.get $3 i32.const 4 i32.sub - local.tee $4 + local.tee $3 i32.const 1 i32.shl local.get $1 @@ -3506,10 +3518,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $5 + local.tee $4 i32.const 10000 i32.rem_u - local.tee $2 + local.tee $5 i32.const 100 i32.div_u i32.const 2 @@ -3517,7 +3529,7 @@ i32.const 19212 i32.add i64.load32_u - local.get $2 + local.get $5 i32.const 100 i32.rem_u i32.const 2 @@ -3529,15 +3541,15 @@ i64.shl i64.or i64.store - local.get $4 + local.get $3 i32.const 4 i32.sub - local.tee $2 + local.tee $3 i32.const 1 i32.shl local.get $1 i32.add - local.get $5 + local.get $4 i32.const 10000 i32.div_u local.tee $4 @@ -3566,10 +3578,10 @@ local.get $1 local.get $0 i32.wrap_i64 - local.get $2 + local.get $3 call $~lib/util/number/utoa32_dec_lut end - local.get $3 + local.get $2 if local.get $1 i32.const 45 @@ -3744,7 +3756,7 @@ i32.mul i32.const 1 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer i32.const 1488 @@ -3755,22 +3767,22 @@ i32.shr_u local.set $3 loop $for-loop|0 - local.get $7 + local.get $6 local.get $8 i32.lt_u if - local.get $7 + local.get $6 i32.const 1 i32.shl local.get $0 i32.add i32.load16_u - local.tee $2 + local.tee $1 i32.const 7 i32.shr_u if block $for-continue|0 - local.get $2 + local.get $1 i32.const 55295 i32.sub i32.const 1025 @@ -3778,31 +3790,31 @@ local.get $8 i32.const 1 i32.sub - local.get $7 + local.get $6 i32.gt_u i32.and if - local.get $7 + local.get $6 i32.const 1 i32.shl local.get $0 i32.add i32.load16_u offset=2 - local.tee $4 + local.tee $7 i32.const 56319 i32.sub i32.const 1025 i32.lt_u if - local.get $7 + local.get $6 i32.const 1 i32.add - local.set $7 - local.get $4 + local.set $6 + local.get $7 i32.const 1023 i32.and - local.get $2 - local.tee $1 + local.get $1 + local.tee $2 i32.const 1023 i32.and i32.const 10 @@ -3810,75 +3822,75 @@ i32.or i32.const 65536 i32.add - local.tee $2 + local.tee $1 i32.const 131072 i32.ge_u if - local.get $5 + local.get $4 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add - local.get $4 + local.get $7 i32.const 16 i32.shl - local.get $1 + local.get $2 i32.or i32.store - local.get $5 + local.get $4 i32.const 1 i32.add - local.set $5 + local.set $4 br $for-continue|0 end end end - local.get $2 + local.get $1 i32.const 9424 i32.sub i32.const 25 i32.le_u if - local.get $5 + local.get $4 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add - local.get $2 + local.get $1 i32.const 26 i32.sub i32.store16 else - local.get $2 + local.get $1 i32.const 223 i32.sub i32.const 64056 i32.le_u if (result i32) local.get $3 - local.set $1 + local.set $2 i32.const 0 local.set $9 block $~lib/util/casemap/bsearch|inlined.0 loop $while-continue|1 - local.get $1 + local.get $2 local.get $9 i32.ge_s if - local.get $1 + local.get $2 local.get $9 i32.add i32.const 3 i32.shr_u i32.const 2 i32.shl - local.tee $4 + local.tee $7 i32.const 1 i32.shl i32.const 1488 i32.add i32.load16_u - local.get $2 + local.get $1 i32.sub local.tee $10 i32.eqz @@ -3887,60 +3899,60 @@ i32.const 31 i32.shr_u if - local.get $4 + local.get $7 i32.const 4 i32.add local.set $9 else - local.get $4 + local.get $7 i32.const 4 i32.sub - local.set $1 + local.set $2 end br $while-continue|1 end end i32.const -1 - local.set $4 + local.set $7 end - local.get $4 + local.get $7 else i32.const -1 end - local.tee $1 + local.tee $2 i32.const -1 i32.xor if - local.get $1 + local.get $2 i32.const 1 i32.shl i32.const 1488 i32.add - local.tee $1 + local.tee $2 i32.load16_u offset=6 - local.set $2 - local.get $5 + local.set $1 + local.get $4 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add - local.tee $4 - local.get $1 + local.tee $7 + local.get $2 i32.load offset=2 i32.store - local.get $4 - local.get $2 + local.get $7 + local.get $1 i32.store16 offset=4 - local.get $2 + local.get $1 i32.const 0 i32.ne i32.const 1 i32.add - local.get $5 + local.get $4 i32.add - local.set $5 + local.set $4 else - local.get $2 + local.get $1 i32.const 1 call $~lib/util/casemap/casemap i32.const 2097151 @@ -3949,18 +3961,18 @@ i32.const 65536 i32.lt_u if - local.get $5 + local.get $4 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add local.get $1 i32.store16 else - local.get $5 + local.get $4 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add local.get $1 i32.const 65536 @@ -3979,39 +3991,39 @@ i32.shl i32.or i32.store - local.get $5 + local.get $4 i32.const 1 i32.add - local.set $5 + local.set $4 end end end end else - local.get $5 + local.get $4 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add - local.get $2 + local.get $1 i32.const 2316 i32.add i32.load8_u i32.store16 end - local.get $7 + local.get $6 i32.const 1 i32.add - local.set $7 - local.get $5 + local.set $6 + local.get $4 i32.const 1 i32.add - local.set $5 + local.set $4 br $for-loop|0 end end - local.get $6 local.get $5 + local.get $4 i32.const 1 i32.shl call $~lib/rt/itcms/__renew @@ -6704,7 +6716,7 @@ local.get $0 i32.add i32.load16_u offset=2 - local.tee $4 + local.tee $5 i32.const 56319 i32.sub i32.const 1025 @@ -6714,7 +6726,7 @@ i32.const 1 i32.add local.set $3 - local.get $4 + local.get $5 i32.const 1023 i32.and local.get $2 @@ -6730,21 +6742,21 @@ i32.const 131072 i32.ge_u if - local.get $5 + local.get $4 i32.const 1 i32.shl local.get $6 i32.add - local.get $4 + local.get $5 i32.const 16 i32.shl local.get $1 i32.or i32.store - local.get $5 + local.get $4 i32.const 1 i32.add - local.set $5 + local.set $4 br $for-continue|0 end end @@ -6753,23 +6765,23 @@ i32.const 304 i32.eq if - local.get $5 + local.get $4 i32.const 1 i32.shl local.get $6 i32.add i32.const 50790505 i32.store - local.get $5 + local.get $4 i32.const 1 i32.add - local.set $5 + local.set $4 else local.get $2 i32.const 931 i32.eq if - local.get $5 + local.get $4 i32.const 1 i32.shl local.get $6 @@ -6788,19 +6800,19 @@ local.tee $2 i32.const 30 i32.sub - local.tee $4 - local.get $4 + local.tee $5 + local.get $5 i32.const 0 i32.lt_s select - local.set $8 + local.set $9 loop $while-continue|1 local.get $2 - local.get $8 + local.get $9 i32.gt_s if i32.const -1 - local.set $4 + local.set $5 block $~lib/util/string/codePointBefore|inlined.0 local.get $2 i32.const 0 @@ -6814,7 +6826,7 @@ local.get $0 i32.add i32.load16_u - local.tee $10 + local.tee $8 i32.const 64512 i32.and i32.const 56320 @@ -6826,7 +6838,7 @@ i32.ge_s i32.and if - local.get $10 + local.get $8 i32.const 1023 i32.and local.get $2 @@ -6837,7 +6849,7 @@ local.get $0 i32.add i32.load16_u - local.tee $9 + local.tee $10 i32.const 1023 i32.and i32.const 10 @@ -6845,8 +6857,8 @@ i32.add i32.const 65536 i32.add - local.set $4 - local.get $9 + local.set $5 + local.get $10 i32.const 64512 i32.and i32.const 55296 @@ -6854,20 +6866,20 @@ br_if $~lib/util/string/codePointBefore|inlined.0 end i32.const 65533 - local.get $10 - local.get $10 + local.get $8 + local.get $8 i32.const 63488 i32.and i32.const 55296 i32.eq select - local.set $4 + local.set $5 end - local.get $4 + local.get $5 i32.const 918000 i32.lt_u if (result i32) - local.get $4 + local.get $5 i32.const 8 i32.shr_u i32.const 7212 @@ -6877,14 +6889,14 @@ i32.shl i32.const 7212 i32.add - local.get $4 + local.get $5 i32.const 255 i32.and i32.const 3 i32.shr_u i32.add i32.load8_u - local.get $4 + local.get $5 i32.const 7 i32.and i32.shr_u @@ -6896,11 +6908,11 @@ i32.eqz if i32.const 0 - local.get $4 + local.get $5 i32.const 127370 i32.lt_u if (result i32) - local.get $4 + local.get $5 i32.const 8 i32.shr_u i32.const 10220 @@ -6910,14 +6922,14 @@ i32.shl i32.const 10220 i32.add - local.get $4 + local.get $5 i32.const 255 i32.and i32.const 3 i32.shr_u i32.add i32.load8_u - local.get $4 + local.get $5 i32.const 7 i32.and i32.shr_u @@ -6933,7 +6945,7 @@ local.set $1 end local.get $2 - local.get $4 + local.get $5 i32.const 65536 i32.ge_s i32.const 1 @@ -6960,10 +6972,10 @@ local.get $7 i32.lt_s select - local.set $4 + local.set $5 loop $while-continue|2 local.get $2 - local.get $4 + local.get $5 i32.lt_s if local.get $2 @@ -7096,7 +7108,7 @@ i32.const 25 i32.le_u if - local.get $5 + local.get $4 i32.const 1 i32.shl local.get $6 @@ -7115,7 +7127,7 @@ i32.const 65536 i32.lt_u if - local.get $5 + local.get $4 i32.const 1 i32.shl local.get $6 @@ -7123,7 +7135,7 @@ local.get $1 i32.store16 else - local.get $5 + local.get $4 i32.const 1 i32.shl local.get $6 @@ -7145,17 +7157,17 @@ i32.shl i32.or i32.store - local.get $5 + local.get $4 i32.const 1 i32.add - local.set $5 + local.set $4 end end end end end else - local.get $5 + local.get $4 i32.const 1 i32.shl local.get $6 @@ -7170,15 +7182,15 @@ i32.const 1 i32.add local.set $3 - local.get $5 + local.get $4 i32.const 1 i32.add - local.set $5 + local.set $4 br $for-loop|0 end end local.get $6 - local.get $5 + local.get $4 i32.const 1 i32.shl call $~lib/rt/itcms/__renew @@ -7214,13 +7226,13 @@ local.get $0 i32.const 65535 i32.gt_u - local.tee $1 + local.tee $2 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $1 + local.get $2 if local.get $0 i32.const 1114111 @@ -7233,7 +7245,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 local.get $0 i32.const 65536 i32.sub @@ -7252,7 +7264,7 @@ i32.or i32.store else - local.get $2 + local.get $1 local.get $0 i32.store16 end @@ -7260,7 +7272,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) (local $1 i32) @@ -7270,19 +7282,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -7292,22 +7304,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 37476 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -7321,9 +7333,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -7333,23 +7345,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -7357,7 +7369,7 @@ else i32.const 21056 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1280 @@ -7367,7 +7379,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 21060 @@ -7382,28 +7394,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/std/string-encoding.optimized.wat b/tests/compiler/std/string-encoding.optimized.wat index 6741c3ba0c..8c229bf0ee 100644 --- a/tests/compiler/std/string-encoding.optimized.wat +++ b/tests/compiler/std/string-encoding.optimized.wat @@ -202,19 +202,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -239,9 +239,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -249,17 +249,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -547,10 +547,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -562,15 +562,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -600,7 +600,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -636,12 +636,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -659,11 +659,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 38928 @@ -671,14 +671,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -688,17 +688,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1178,7 +1178,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1204,32 +1204,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $3 i32.add else - local.get $4 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1262,7 +1262,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1270,8 +1270,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1288,7 +1288,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $3 i32.lt_u if i32.const 0 @@ -1298,13 +1298,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1320,7 +1320,7 @@ local.get $5 i32.const -4 i32.and - local.get $4 + local.get $3 i32.sub local.tee $6 i32.const 16 @@ -1330,23 +1330,23 @@ local.get $5 i32.const 2 i32.and - local.get $4 + local.get $3 i32.or i32.store - local.get $4 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 + local.tee $3 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1376,26 +1376,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1410,7 +1410,7 @@ local.get $2 i32.const 20 i32.add - local.tee $2 + local.tee $3 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1422,7 +1422,7 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1437,12 +1437,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $3 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $2 i32.const 3 i32.sub i32.const 0 @@ -1454,7 +1454,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 0 @@ -1469,25 +1469,25 @@ i32.sub i32.const 3 i32.and - local.tee $3 + local.tee $2 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $3 + local.get $2 i32.sub i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.add - local.tee $3 + local.tee $0 i32.const 4 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1497,17 +1497,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $0 i32.const 12 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 8 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1523,22 +1523,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $3 + local.get $0 i32.const 28 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 24 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 20 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 16 i32.sub i32.const 0 @@ -1549,11 +1549,11 @@ i32.and i32.const 24 i32.add - local.tee $3 + local.tee $0 i32.add local.set $1 + local.get $2 local.get $0 - local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1585,7 +1585,7 @@ end end end - local.get $2 + local.get $3 ) (func $~lib/util/memory/memcpy (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -2042,105 +2042,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2172,41 +2182,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2564,14 +2576,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -3067,18 +3079,18 @@ i32.store i32.const 1052 i32.load - local.set $1 + local.set $2 local.get $0 i32.const 0 call $~lib/string/String.UTF16.decodeUnsafe - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 1552 i32.store offset=8 - local.get $2 + local.get $1 i32.const 1552 call $~lib/string/String.__eq i32.eqz @@ -3091,7 +3103,7 @@ unreachable end local.get $0 - local.get $1 + local.get $2 call $~lib/string/String.UTF16.decodeUnsafe local.set $1 global.get $~lib/memory/__stack_pointer @@ -3672,20 +3684,20 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 1824 i32.store offset=4 i32.const 1824 i32.const 0 i32.const 1 call $~lib/string/String.UTF8.encode - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store local.get $0 + i32.store local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -3709,20 +3721,20 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 1888 i32.store offset=4 i32.const 1888 i32.const 0 i32.const 0 call $~lib/string/String.UTF8.encode - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store local.get $0 + i32.store local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -3746,20 +3758,20 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 1888 i32.store offset=4 i32.const 1888 i32.const 0 i32.const 1 call $~lib/string/String.UTF8.encode - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store local.get $0 + i32.store local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -4114,19 +4126,19 @@ i32.const 1056 i32.const 0 call $~lib/string/String.UTF8.byteLength - local.set $1 + local.set $2 local.get $0 i32.const 0 i32.const 0 call $~lib/string/String.UTF8.decodeUnsafe - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 1552 i32.store offset=8 - local.get $2 + local.get $1 i32.const 1552 call $~lib/string/String.__eq i32.eqz @@ -4139,7 +4151,7 @@ unreachable end local.get $0 - local.get $1 + local.get $2 i32.const 0 call $~lib/string/String.UTF8.decodeUnsafe local.set $1 @@ -4506,20 +4518,20 @@ local.get $1 i32.const -2 i32.and - local.tee $1 + local.tee $2 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 - local.get $0 local.get $1 + local.get $0 + local.get $2 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 ) (func $~lib/string/String.UTF8.encode (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -4552,13 +4564,13 @@ call $~lib/string/String.UTF8.byteLength i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $3 i32.store local.get $0 - local.set $3 - local.get $4 - local.set $0 + local.set $5 local.get $3 + local.set $0 + local.get $5 i32.const 20 i32.sub i32.load offset=16 @@ -4566,38 +4578,38 @@ i32.shr_u i32.const 1 i32.shl - local.get $3 + local.get $5 i32.add - local.set $6 + local.set $7 loop $while-continue|0 - local.get $3 - local.get $6 + local.get $5 + local.get $7 i32.lt_u if - local.get $3 + local.get $5 i32.load16_u - local.tee $5 + local.tee $4 i32.const 128 i32.lt_u if (result i32) local.get $0 - local.get $5 + local.get $4 i32.store8 local.get $0 i32.const 1 i32.add else - local.get $5 + local.get $4 i32.const 2048 i32.lt_u if (result i32) local.get $0 - local.get $5 + local.get $4 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $5 + local.get $4 i32.const 63 i32.and i32.const 128 @@ -4610,50 +4622,50 @@ i32.const 2 i32.add else - local.get $5 + local.get $4 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $5 + local.get $4 i32.const 56320 i32.lt_u - local.get $6 - local.get $3 + local.get $7 + local.get $5 i32.const 2 i32.add i32.gt_u i32.and if - local.get $3 + local.get $5 i32.load16_u offset=2 - local.tee $7 + local.tee $6 i32.const 64512 i32.and i32.const 56320 i32.eq if local.get $0 - local.get $5 + local.get $4 i32.const 1023 i32.and i32.const 10 i32.shl i32.const 65536 i32.add - local.get $7 + local.get $6 i32.const 1023 i32.and i32.or - local.tee $5 + local.tee $4 i32.const 63 i32.and i32.const 128 i32.or i32.const 24 i32.shl - local.get $5 + local.get $4 i32.const 6 i32.shr_u i32.const 63 @@ -4663,7 +4675,7 @@ i32.const 16 i32.shl i32.or - local.get $5 + local.get $4 i32.const 12 i32.shr_u i32.const 63 @@ -4673,7 +4685,7 @@ i32.const 8 i32.shl i32.or - local.get $5 + local.get $4 i32.const 18 i32.shr_u i32.const 240 @@ -4684,10 +4696,10 @@ i32.const 4 i32.add local.set $0 - local.get $3 + local.get $5 i32.const 4 i32.add - local.set $3 + local.set $5 br $while-continue|0 end end @@ -4706,17 +4718,17 @@ end i32.const 65533 else - local.get $5 + local.get $4 end - local.set $5 + local.set $4 end local.get $0 - local.get $5 + local.get $4 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $5 + local.get $4 i32.const 6 i32.shr_u i32.const 63 @@ -4728,7 +4740,7 @@ i32.or i32.store16 local.get $0 - local.get $5 + local.get $4 i32.const 63 i32.and i32.const 128 @@ -4740,10 +4752,10 @@ end end local.set $0 - local.get $3 + local.get $5 i32.const 2 i32.add - local.set $3 + local.set $5 br $while-continue|0 end end @@ -4757,7 +4769,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $3 ) (func $~lib/string/String.UTF8.decodeUnsafe (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -4817,12 +4829,12 @@ block $while-break|0 local.get $3 i32.load8_u - local.set $7 + local.set $4 local.get $3 i32.const 1 i32.add local.set $3 - local.get $7 + local.get $4 i32.const 128 i32.and if @@ -4834,20 +4846,20 @@ i32.load8_u i32.const 63 i32.and - local.set $4 + local.set $6 local.get $3 i32.const 1 i32.add local.set $3 - local.get $7 + local.get $4 i32.const 224 i32.and i32.const 192 i32.eq if local.get $1 + local.get $6 local.get $4 - local.get $7 i32.const 31 i32.and i32.const 6 @@ -4863,24 +4875,24 @@ i32.load8_u i32.const 63 i32.and - local.set $6 + local.set $7 local.get $3 i32.const 1 i32.add local.set $3 - local.get $7 + local.get $4 i32.const 240 i32.and i32.const 224 i32.eq if - local.get $6 local.get $7 + local.get $4 i32.const 15 i32.and i32.const 12 i32.shl - local.get $4 + local.get $6 i32.const 6 i32.shl i32.or @@ -4895,16 +4907,16 @@ i32.load8_u i32.const 63 i32.and - local.get $7 + local.get $4 i32.const 7 i32.and i32.const 18 i32.shl - local.get $4 + local.get $6 i32.const 12 i32.shl i32.or - local.get $6 + local.get $7 i32.const 6 i32.shl i32.or @@ -4948,13 +4960,13 @@ end end else - local.get $7 + local.get $4 i32.eqz local.get $2 i32.and br_if $while-break|0 local.get $1 - local.get $7 + local.get $4 i32.store16 end local.get $1 @@ -5018,19 +5030,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -5040,22 +5052,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 38924 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -5069,9 +5081,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -5081,23 +5093,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -5105,7 +5117,7 @@ else i32.const 22512 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1344 @@ -5115,7 +5127,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 22516 @@ -5130,28 +5142,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/std/string.optimized.wat b/tests/compiler/std/string.optimized.wat index 089815cf53..898b7cdc66 100644 --- a/tests/compiler/std/string.optimized.wat +++ b/tests/compiler/std/string.optimized.wat @@ -998,14 +998,14 @@ if local.get $1 i32.load16_u - local.tee $4 + local.tee $0 local.get $2 i32.load16_u - local.tee $0 + local.tee $4 i32.ne if - local.get $4 local.get $0 + local.get $4 i32.sub return end @@ -1155,7 +1155,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1178,7 +1178,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1188,23 +1188,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1212,7 +1212,7 @@ else i32.const 25840 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1264 @@ -1222,7 +1222,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 25844 @@ -1237,27 +1237,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -1345,19 +1345,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -1382,9 +1382,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -1392,17 +1392,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -1690,10 +1690,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -1705,15 +1705,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -1743,7 +1743,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -1779,12 +1779,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -1802,11 +1802,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 42272 @@ -1814,14 +1814,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -1831,17 +1831,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -2319,14 +2319,14 @@ i32.sub i32.const -4 i32.and - local.tee $1 - i32.add local.tee $2 + i32.add + local.tee $1 i32.const 4 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -2336,17 +2336,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 12 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -2362,22 +2362,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $2 + local.get $1 i32.const 28 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 20 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 16 i32.sub i32.const 0 @@ -2388,11 +2388,11 @@ i32.and i32.const 24 i32.add - local.tee $2 + local.tee $1 i32.add local.set $0 - local.get $1 local.get $2 + local.get $1 i32.sub local.set $1 loop $while-continue|0 @@ -2497,7 +2497,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -2523,32 +2523,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -2564,16 +2564,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -2581,7 +2581,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -2589,8 +2589,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -2607,7 +2607,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -2617,13 +2617,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -2636,40 +2636,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -2695,26 +2695,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -3248,105 +3248,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 - i32.load8_u - i32.store8 - local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $4 - i32.const 2 - i32.add - local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 + local.get $3 + local.get $4 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + local.get $0 + i32.load8_u + i32.store8 + local.get $1 + local.tee $3 + i32.const 2 + i32.add + local.set $1 + local.get $0 + i32.const 2 + i32.add + local.set $4 local.get $3 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3378,41 +3388,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3689,7 +3701,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.eqz if i32.const 0 @@ -3701,7 +3713,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 i32.eqz if i32.const -1 @@ -3714,25 +3726,25 @@ i32.gt_s select local.tee $2 - local.get $4 + local.get $3 local.get $2 - local.get $4 + local.get $3 i32.lt_s select local.set $2 - local.get $4 local.get $3 + local.get $4 i32.sub - local.set $4 + local.set $3 loop $for-loop|0 local.get $2 - local.get $4 + local.get $3 i32.le_s if local.get $0 local.get $2 local.get $1 - local.get $3 + local.get $4 call $~lib/util/string/compareImpl i32.eqz if @@ -3989,7 +4001,7 @@ end end f64.const 1 - local.set $5 + local.set $4 local.get $2 i32.const 43 i32.eq @@ -4013,7 +4025,7 @@ i32.const 45 i32.eq select - local.set $5 + local.set $4 local.get $0 i32.const 2 i32.add @@ -4185,7 +4197,7 @@ local.tee $2 i32.le_u if - local.get $4 + local.get $5 i64.reinterpret_f64 i64.const 1 i64.shl @@ -4199,14 +4211,14 @@ end br $while-break|2 end - local.get $4 + local.get $5 local.get $1 f64.convert_i32_s f64.mul local.get $2 f64.convert_i32_u f64.add - local.set $4 + local.set $5 local.get $0 i32.const 2 i32.add @@ -4215,8 +4227,8 @@ end end end - local.get $5 local.get $4 + local.get $5 f64.mul ) (func $~lib/util/string/strtol (result i32) @@ -4237,7 +4249,7 @@ return end i32.const 4240 - local.set $3 + local.set $5 i32.const 4240 i32.load16_u local.set $0 @@ -4305,10 +4317,10 @@ i32.const 0 end if - local.get $3 + local.get $5 i32.const 2 i32.add - local.tee $3 + local.tee $5 i32.load16_u local.set $0 local.get $1 @@ -4319,7 +4331,7 @@ end end i32.const 1 - local.set $5 + local.set $3 local.get $0 i32.const 43 i32.eq @@ -4343,11 +4355,11 @@ i32.const 45 i32.eq select - local.set $5 - local.get $3 + local.set $3 + local.get $5 i32.const 2 i32.add - local.tee $3 + local.tee $5 i32.load16_u else local.get $0 @@ -4362,7 +4374,7 @@ block $break|1 block $case2|1 block $case1|1 - local.get $3 + local.get $5 i32.load16_u offset=2 i32.const 32 i32.or @@ -4380,10 +4392,10 @@ br_if $case2|1 br $break|1 end - local.get $3 + local.get $5 i32.const 4 i32.add - local.set $3 + local.set $5 local.get $1 i32.const 2 i32.sub @@ -4392,10 +4404,10 @@ local.set $2 br $break|1 end - local.get $3 + local.get $5 i32.const 4 i32.add - local.set $3 + local.set $5 local.get $1 i32.const 2 i32.sub @@ -4404,10 +4416,10 @@ local.set $2 br $break|1 end - local.get $3 + local.get $5 i32.const 4 i32.add - local.set $3 + local.set $5 local.get $1 i32.const 2 i32.sub @@ -4430,7 +4442,7 @@ local.set $1 local.get $0 if - local.get $3 + local.get $5 i32.load16_u local.tee $0 i32.const 48 @@ -4482,25 +4494,25 @@ i32.mul i32.add local.set $4 - local.get $3 + local.get $5 i32.const 2 i32.add - local.set $3 + local.set $5 br $while-continue|2 end end end + local.get $3 local.get $4 - local.get $5 i32.mul ) (func $~lib/util/string/strtol (result i64) (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i32) + (local $3 i64) (local $4 i64) - (local $5 i64) + (local $5 i32) i32.const 4284 i32.load i32.const 1 @@ -4512,7 +4524,7 @@ return end i32.const 4288 - local.set $3 + local.set $5 i32.const 4288 i32.load16_u local.set $0 @@ -4580,10 +4592,10 @@ i32.const 0 end if - local.get $3 + local.get $5 i32.const 2 i32.add - local.tee $3 + local.tee $5 i32.load16_u local.set $0 local.get $1 @@ -4594,7 +4606,7 @@ end end i64.const 1 - local.set $5 + local.set $3 local.get $0 i32.const 43 i32.eq @@ -4618,11 +4630,11 @@ i32.const 45 i32.eq select - local.set $5 - local.get $3 + local.set $3 + local.get $5 i32.const 2 i32.add - local.tee $3 + local.tee $5 i32.load16_u else local.get $0 @@ -4637,7 +4649,7 @@ block $break|1 block $case2|1 block $case1|1 - local.get $3 + local.get $5 i32.load16_u offset=2 i32.const 32 i32.or @@ -4655,10 +4667,10 @@ br_if $case2|1 br $break|1 end - local.get $3 + local.get $5 i32.const 4 i32.add - local.set $3 + local.set $5 local.get $1 i32.const 2 i32.sub @@ -4667,10 +4679,10 @@ local.set $2 br $break|1 end - local.get $3 + local.get $5 i32.const 4 i32.add - local.set $3 + local.set $5 local.get $1 i32.const 2 i32.sub @@ -4679,10 +4691,10 @@ local.set $2 br $break|1 end - local.get $3 + local.get $5 i32.const 4 i32.add - local.set $3 + local.set $5 local.get $1 i32.const 2 i32.sub @@ -4705,7 +4717,7 @@ local.set $1 local.get $0 if - local.get $3 + local.get $5 i32.load16_u local.tee $0 i32.const 48 @@ -4759,16 +4771,16 @@ i64.mul i64.add local.set $4 - local.get $3 + local.get $5 i32.const 2 i32.add - local.set $3 + local.set $5 br $while-continue|2 end end end + local.get $3 local.get $4 - local.get $5 i64.mul ) (func $~lib/math/ipow32 (param $0 i32) (result i32) @@ -5010,10 +5022,10 @@ (local $5 i32) (local $6 i64) (local $7 i32) - (local $8 i64) + (local $8 f64) (local $9 f64) - (local $10 f64) - (local $11 i32) + (local $10 i32) + (local $11 i64) (local $12 i64) (local $13 i64) (local $14 i64) @@ -5031,7 +5043,7 @@ i32.load16_u local.set $5 f64.const 1 - local.set $10 + local.set $9 loop $while-continue|0 local.get $7 if (result i32) @@ -5128,7 +5140,7 @@ i32.eqz br_if $folding-inner0 f64.const -1 - local.set $10 + local.set $9 local.get $0 i32.const 2 i32.add @@ -5175,7 +5187,7 @@ i32.const 0 end if - local.get $10 + local.get $9 f64.const inf f64.mul return @@ -5240,7 +5252,7 @@ select br_if $folding-inner0 i32.const 1 - local.set $11 + local.set $10 loop $for-loop|2 local.get $0 i32.load16_u @@ -5288,7 +5300,7 @@ i32.sub local.set $4 loop $for-loop|3 - local.get $11 + local.get $10 i32.eqz local.get $5 i32.const 46 @@ -5331,7 +5343,7 @@ local.get $1 local.set $2 i32.const 1 - local.set $11 + local.set $10 end local.get $7 i32.const 1 @@ -5358,7 +5370,7 @@ i64.eqz local.get $2 local.get $1 - local.get $11 + local.get $10 select i32.const 19 local.get $1 @@ -5516,7 +5528,7 @@ drop local.get $6 f64.convert_i64_u - local.tee $9 + local.tee $8 local.get $0 i32.eqz br_if $~lib/util/string/scientific|inlined.0 @@ -5529,7 +5541,7 @@ i32.gt_s i32.and if - local.get $9 + local.get $8 local.get $0 i32.const 3 i32.shl @@ -5537,7 +5549,7 @@ i32.add f64.load f64.mul - local.set $9 + local.set $8 i32.const 22 local.set $0 end @@ -5563,7 +5575,7 @@ i32.const 0 i32.gt_s if - local.get $9 + local.get $8 local.get $0 i32.const 3 i32.shl @@ -5573,7 +5585,7 @@ f64.mul br $~lib/util/string/scientific|inlined.0 end - local.get $9 + local.get $8 i32.const 0 local.get $0 i32.sub @@ -5591,15 +5603,15 @@ local.get $6 local.get $6 i64.clz - local.tee $8 + local.tee $11 i64.shl local.set $6 local.get $0 local.tee $1 i64.extend_i32_s - local.get $8 + local.get $11 i64.sub - local.set $8 + local.set $11 loop $for-loop|6 local.get $1 i32.const -14 @@ -5627,10 +5639,10 @@ i64.shl i64.add local.set $6 - local.get $8 + local.get $11 local.get $12 i64.sub - local.set $8 + local.set $11 local.get $1 i32.const 14 i32.add @@ -5646,15 +5658,15 @@ i64.extend_i32_s local.tee $13 i64.div_u - local.tee $12 + local.tee $14 i64.clz - local.set $14 + local.set $12 local.get $6 local.get $13 i64.rem_u f64.convert_i64_u i64.reinterpret_f64 - local.get $14 + local.get $12 i64.const 52 i64.shl i64.add @@ -5663,13 +5675,13 @@ f64.convert_i64_u f64.div i64.trunc_f64_u - local.get $12 local.get $14 + local.get $12 i64.shl i64.add f64.convert_i64_u - local.get $8 - local.get $14 + local.get $11 + local.get $12 i64.sub i32.wrap_i64 call $~lib/math/NativeMath.scalbn @@ -5677,13 +5689,13 @@ local.get $6 local.get $6 i64.ctz - local.tee $8 + local.tee $11 i64.shr_u local.set $6 local.get $0 local.tee $3 i64.extend_i32_s - local.get $8 + local.get $11 i64.add global.set $~lib/util/string/__fixmulShift loop $for-loop|7 @@ -5706,27 +5718,27 @@ i64.const 32 i64.shr_u i64.add - local.tee $8 + local.tee $12 i64.const 32 i64.shr_u i32.wrap_i64 i32.clz i64.extend_i32_u - local.tee $12 + local.tee $11 i64.sub local.tee $13 global.get $~lib/util/string/__fixmulShift i64.add global.set $~lib/util/string/__fixmulShift local.get $6 - local.get $12 + local.get $11 i64.shl i64.const 31 i64.shr_u i64.const 1 i64.and - local.get $8 local.get $12 + local.get $11 i64.shl local.get $6 i64.const 4294967295 @@ -5746,45 +5758,45 @@ local.get $3 call $~lib/math/ipow32 i64.extend_i32_u - local.tee $8 + local.tee $12 local.get $6 i64.const 4294967295 i64.and i64.mul - local.set $12 + local.set $11 i64.const 32 - local.get $8 + local.get $12 local.get $6 i64.const 32 i64.shr_u i64.mul - local.get $12 + local.get $11 i64.const 32 i64.shr_u i64.add - local.tee $6 + local.tee $12 i64.const 32 i64.shr_u i32.wrap_i64 i32.clz i64.extend_i32_u - local.tee $8 + local.tee $6 i64.sub local.tee $13 global.get $~lib/util/string/__fixmulShift i64.add global.set $~lib/util/string/__fixmulShift - local.get $12 - local.get $8 + local.get $11 + local.get $6 i64.shl i64.const 31 i64.shr_u i64.const 1 i64.and + local.get $12 local.get $6 - local.get $8 i64.shl - local.get $12 + local.get $11 i64.const 4294967295 i64.and local.get $13 @@ -5798,7 +5810,7 @@ end end end - local.get $10 + local.get $9 f64.copysign return end @@ -5915,7 +5927,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $2 i32.load i32.const -4 i32.and @@ -5924,20 +5936,20 @@ local.get $1 i32.ge_u if - local.get $3 + local.get $2 local.get $1 i32.store offset=16 local.get $0 return end local.get $1 - local.get $3 + local.get $2 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.load offset=16 local.tee $0 local.get $0 @@ -5945,7 +5957,7 @@ i32.gt_u select call $~lib/memory/memory.copy - local.get $2 + local.get $3 ) (func $~lib/array/Array<~lib/string/String>#push (param $0 i32) (param $1 i32) (local $2 i32) @@ -5956,19 +5968,19 @@ (local $7 i32) local.get $0 i32.load offset=12 - local.tee $3 + local.tee $5 i32.const 1 i32.add - local.tee $4 local.tee $6 + local.tee $2 local.get $0 i32.load offset=8 - local.tee $2 + local.tee $3 i32.const 2 i32.shr_u i32.gt_u if - local.get $6 + local.get $2 i32.const 268435455 i32.gt_u if @@ -5979,66 +5991,66 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $0 i32.load - local.tee $5 - local.get $2 + local.tee $7 + local.get $3 i32.const 1 i32.shl - local.tee $7 + local.tee $4 i32.const 1073741820 - local.get $7 + local.get $4 i32.const 1073741820 i32.lt_u select - local.tee $7 - local.get $6 + local.tee $4 + local.get $2 i32.const 8 - local.get $6 + local.get $2 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $6 - local.get $6 - local.get $7 + local.tee $2 + local.get $2 + local.get $4 i32.lt_u select - local.tee $6 + local.tee $4 call $~lib/rt/itcms/__renew - local.tee $7 + local.tee $2 i32.add - local.get $6 - local.get $2 + local.get $4 + local.get $3 i32.sub call $~lib/memory/memory.fill - local.get $5 + local.get $2 local.get $7 i32.ne if local.get $0 - local.get $7 + local.get $2 i32.store local.get $0 - local.get $7 + local.get $2 i32.store offset=4 - local.get $7 + local.get $2 if local.get $0 - local.get $7 + local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end end local.get $0 - local.get $6 + local.get $4 i32.store offset=8 end local.get $0 i32.load offset=4 - local.get $3 + local.get $5 i32.const 2 i32.shl i32.add @@ -6052,7 +6064,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $4 + local.get $6 i32.store offset=12 ) (func $~lib/util/number/utoa32_dec_lut (param $0 i32) (param $1 i32) (param $2 i32) @@ -6251,7 +6263,7 @@ local.get $2 i32.const 4 i32.sub - local.tee $3 + local.tee $2 i32.const 1 i32.shl local.get $0 @@ -6265,10 +6277,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $4 + local.tee $3 i32.const 10000 i32.rem_u - local.tee $2 + local.tee $4 i32.const 100 i32.div_u i32.const 2 @@ -6276,7 +6288,7 @@ i32.const 15804 i32.add i64.load32_u - local.get $2 + local.get $4 i32.const 100 i32.rem_u i32.const 2 @@ -6288,7 +6300,7 @@ i64.shl i64.or i64.store - local.get $3 + local.get $2 i32.const 4 i32.sub local.tee $2 @@ -6296,7 +6308,7 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $3 i32.const 10000 i32.div_u local.tee $3 @@ -6903,82 +6915,83 @@ i32.const 101 i32.store16 offset=2 local.get $0 + local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $1 + local.tee $0 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $1 + local.get $0 i32.sub - local.set $1 + local.set $0 end - local.get $1 - local.tee $4 + local.get $0 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $4 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $4 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $4 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $4 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $4 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $4 - local.get $1 - local.get $4 + local.set $2 + local.get $0 + local.get $2 i32.const 1 i32.add - local.tee $1 + local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $1 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 - local.get $1 + local.get $0 i32.const 2 i32.add else @@ -7001,87 +7014,87 @@ local.get $0 local.get $2 i32.add - local.tee $0 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $0 + local.get $2 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $2 + local.tee $0 i32.const 0 i32.lt_s - local.tee $3 + local.tee $4 if i32.const 0 - local.get $2 + local.get $0 i32.sub - local.set $2 + local.set $0 end - local.get $2 - local.tee $5 + local.get $0 + local.tee $3 i32.const 100000 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 100 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $5 + local.get $3 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $5 + local.get $3 i32.const 1000 i32.ge_u i32.add end else - local.get $5 + local.get $3 i32.const 10000000 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $5 + local.get $3 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $5 + local.get $3 i32.const 100000000 i32.ge_u i32.add end end - local.set $5 - local.get $2 - local.get $5 + local.set $3 + local.get $0 + local.get $3 i32.const 1 i32.add - local.tee $2 + local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $2 i32.const 45 i32.const 43 - local.get $3 + local.get $4 select i32.store16 offset=4 + local.get $0 local.get $1 - local.get $2 i32.add i32.const 2 i32.add @@ -7091,24 +7104,25 @@ end ) (func $~lib/util/number/dtoa_core (param $0 f64) (result i32) - (local $1 i64) - (local $2 i32) - (local $3 i64) + (local $1 i32) + (local $2 i64) + (local $3 i32) (local $4 i64) (local $5 i64) (local $6 i64) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i64) - (local $11 i64) + (local $7 i64) + (local $8 i64) + (local $9 i64) + (local $10 i32) + (local $11 i32) (local $12 i64) (local $13 i64) (local $14 i64) + (local $15 i64) local.get $0 f64.const 0 f64.lt - local.tee $2 + local.tee $1 if (result f64) i32.const 22864 i32.const 45 @@ -7119,72 +7133,72 @@ local.get $0 end i64.reinterpret_f64 - local.tee $1 + local.tee $2 i64.const 9218868437227405312 i64.and i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $7 + local.tee $3 i32.const 1 - local.get $7 + local.get $3 select i32.const 1075 i32.sub - local.tee $8 + local.tee $10 i32.const 1 i32.sub - local.get $1 + local.get $2 i64.const 4503599627370495 i64.and - local.get $7 + local.get $3 i32.const 0 i32.ne i64.extend_i32_u i64.const 52 i64.shl i64.add - local.tee $1 + local.tee $2 i64.const 1 i64.shl i64.const 1 i64.add - local.tee $3 + local.tee $4 i64.clz i32.wrap_i64 - local.tee $7 + local.tee $11 i32.sub - local.set $9 - local.get $3 - local.get $7 + local.set $3 + local.get $4 + local.get $11 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus - local.get $1 - local.get $1 + local.get $2 + local.get $2 i64.const 4503599627370496 i64.eq i32.const 1 i32.add - local.tee $7 + local.tee $11 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $8 - local.get $7 + local.get $10 + local.get $11 i32.sub - local.get $9 + local.get $3 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $9 + local.get $3 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $7 + local.tee $3 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -7193,9 +7207,9 @@ f64.add local.tee $0 i32.trunc_f64_s - local.tee $8 + local.tee $10 local.get $0 - local.get $8 + local.get $10 f64.convert_i32_s f64.ne i32.add @@ -7203,106 +7217,106 @@ i32.shr_s i32.const 1 i32.add - local.tee $8 + local.tee $10 i32.const 3 i32.shl - local.tee $9 + local.tee $11 i32.sub global.set $~lib/util/number/_K - local.get $9 + local.get $11 i32.const 22920 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $8 + local.get $10 i32.const 1 i32.shl i32.const 23616 i32.add i32.load16_s global.set $~lib/util/number/_exp_pow - local.get $1 - local.get $1 + local.get $2 + local.get $2 i64.clz i64.shl - local.tee $1 + local.tee $2 i64.const 4294967295 i64.and - local.set $10 - local.get $1 + local.set $4 + local.get $2 i64.const 32 i64.shr_u - local.tee $11 + local.tee $12 global.get $~lib/util/number/_frc_pow - local.tee $4 + local.tee $13 i64.const 4294967295 i64.and - local.tee $12 - local.tee $1 + local.tee $2 + local.tee $5 i64.mul - local.get $1 - local.get $10 + local.get $4 + local.get $5 i64.mul i64.const 32 i64.shr_u i64.add - local.set $13 + local.set $5 global.get $~lib/util/number/_frc_plus - local.tee $3 + local.tee $7 i64.const 4294967295 i64.and - local.set $1 - local.get $3 + local.set $6 + local.get $7 i64.const 32 i64.shr_u - local.tee $5 - local.get $12 + local.tee $14 + local.get $2 i64.mul - local.get $1 - local.get $12 + local.get $2 + local.get $6 i64.mul i64.const 32 i64.shr_u i64.add - local.set $14 + local.set $7 global.get $~lib/util/number/_frc_minus - local.tee $6 + local.tee $9 i64.const 4294967295 i64.and - local.set $3 - local.get $6 + local.set $8 + local.get $9 i64.const 32 i64.shr_u - local.tee $6 - local.get $12 + local.tee $15 + local.get $2 i64.mul - local.get $3 - local.get $12 + local.get $2 + local.get $8 i64.mul i64.const 32 i64.shr_u i64.add - local.set $12 - local.get $2 + local.set $9 + local.get $1 i32.const 1 i32.shl i32.const 22864 i32.add - local.get $11 - local.get $4 + local.get $12 + local.get $13 i64.const 32 i64.shr_u - local.tee $4 - local.tee $11 + local.tee $2 + local.tee $12 i64.mul - local.get $13 + local.get $5 i64.const 32 i64.shr_u i64.add - local.get $10 - local.get $11 + local.get $4 + local.get $12 i64.mul - local.get $13 + local.get $5 i64.const 4294967295 i64.and i64.add @@ -7311,17 +7325,17 @@ i64.const 32 i64.shr_u i64.add - local.get $4 - local.get $5 - i64.mul + local.get $2 local.get $14 + i64.mul + local.get $7 i64.const 32 i64.shr_u i64.add - local.get $1 - local.get $4 + local.get $2 + local.get $6 i64.mul - local.get $14 + local.get $7 i64.const 4294967295 i64.and i64.add @@ -7332,24 +7346,24 @@ i64.add i64.const 1 i64.sub - local.tee $1 + local.tee $4 global.get $~lib/util/number/_exp_pow - local.get $7 + local.get $3 i32.add i32.const -64 i32.sub - local.get $1 local.get $4 - local.get $6 + local.get $2 + local.get $15 i64.mul - local.get $12 + local.get $9 i64.const 32 i64.shr_u i64.add - local.get $3 - local.get $4 + local.get $2 + local.get $8 i64.mul - local.get $12 + local.get $9 i64.const 4294967295 i64.and i64.add @@ -7361,13 +7375,13 @@ i64.const 1 i64.add i64.sub - local.get $2 + local.get $1 call $~lib/util/number/genDigits - local.get $2 + local.get $1 i32.sub global.get $~lib/util/number/_K call $~lib/util/number/prettify - local.get $2 + local.get $1 i32.add ) (func $std/string/getString (result i32) @@ -7423,19 +7437,19 @@ i32.const 2 i32.shl i32.add - local.set $0 + local.set $3 loop $while-continue|0 - local.get $0 local.get $2 - i32.gt_u + local.get $3 + i32.lt_u if local.get $2 i32.load - local.tee $3 + local.tee $0 if - local.get $3 + local.get $0 if - local.get $3 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -7485,13 +7499,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $4 i64.const 0 i64.store - local.get $5 + local.get $4 i64.const 0 i64.store offset=8 - local.get $5 + local.get $4 i64.const 0 i64.store offset=16 block $folding-inner3 @@ -7539,23 +7553,23 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.set $8 + local.set $4 i32.const 2147483647 local.get $2 local.get $2 i32.const 0 i32.lt_s select - local.set $5 + local.set $6 local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $6 + local.tee $8 if - local.get $8 + local.get $4 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -7572,17 +7586,17 @@ br $folding-inner1 end else - local.get $8 + local.get $4 i32.eqz br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.get $8 - local.get $5 - local.get $5 - local.get $8 - i32.gt_s + local.get $4 + local.get $6 + local.get $4 + local.get $6 + i32.lt_s select - local.tee $1 + local.tee $3 i32.const 4 i32.const 0 call $~lib/rt/__newArray @@ -7590,44 +7604,44 @@ i32.store local.get $2 i32.load offset=4 - local.set $3 + local.set $4 loop $for-loop|0 - local.get $1 - local.get $4 + local.get $3 + local.get $5 i32.gt_s if global.get $~lib/memory/__stack_pointer i32.const 2 i32.const 1 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $1 i32.store offset=8 + local.get $1 local.get $5 - local.get $4 i32.const 1 i32.shl local.get $0 i32.add i32.load16_u i32.store16 - local.get $4 + local.get $5 i32.const 2 i32.shl - local.get $3 + local.get $4 i32.add - local.get $5 + local.get $1 i32.store - local.get $5 + local.get $1 if local.get $2 - local.get $5 + local.get $1 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $5 i32.const 1 i32.add - local.set $4 + local.set $5 br $for-loop|0 end end @@ -7645,36 +7659,36 @@ local.get $1 local.get $3 call $~lib/string/String#indexOf - local.tee $9 + local.tee $5 i32.const -1 i32.xor if - local.get $9 + local.get $5 local.get $3 i32.sub - local.tee $4 + local.tee $7 i32.const 0 i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.const 1 i32.shl - local.tee $4 + local.tee $9 i32.const 1 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $7 i32.store offset=16 - local.get $10 + local.get $7 local.get $3 i32.const 1 i32.shl local.get $0 i32.add - local.get $4 + local.get $9 call $~lib/memory/memory.copy local.get $2 - local.get $10 + local.get $7 call $~lib/array/Array<~lib/string/String>#push else global.get $~lib/memory/__stack_pointer @@ -7684,15 +7698,15 @@ i32.const 1712 call $~lib/array/Array<~lib/string/String>#push end - local.get $7 + local.get $10 i32.const 1 i32.add - local.tee $7 - local.get $5 + local.tee $10 + local.get $6 i32.eq br_if $folding-inner2 - local.get $6 - local.get $9 + local.get $5 + local.get $8 i32.add local.set $3 br $while-continue|1 @@ -7706,7 +7720,7 @@ call $~lib/array/Array<~lib/string/String>#push br $folding-inner2 end - local.get $8 + local.get $4 local.get $3 i32.sub local.tee $1 @@ -7717,21 +7731,21 @@ local.get $1 i32.const 1 i32.shl - local.tee $1 + local.tee $4 i32.const 1 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $1 i32.store offset=4 - local.get $4 + local.get $1 local.get $3 i32.const 1 i32.shl local.get $0 i32.add - local.get $1 + local.get $4 call $~lib/memory/memory.copy local.get $2 - local.get $4 + local.get $1 call $~lib/array/Array<~lib/string/String>#push else global.get $~lib/memory/__stack_pointer @@ -7771,11 +7785,11 @@ ) (func $start:std/string (local $0 i32) - (local $1 f64) - (local $2 f32) + (local $1 i32) + (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) + (local $4 f64) + (local $5 f32) global.get $~lib/memory/__stack_pointer i32.const 44 i32.sub @@ -7926,25 +7940,25 @@ end global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $3 + local.tee $1 i32.store i32.const -1 local.set $0 block $__inlined_func$~lib/string/String#codePointAt - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $2 i32.const 1 i32.le_u br_if $__inlined_func$~lib/string/String#codePointAt - local.get $4 + local.get $2 i32.const 2 i32.eq - local.get $3 + local.get $1 i32.load16_u offset=2 local.tee $0 i32.const 64512 @@ -7953,15 +7967,15 @@ i32.ne i32.or br_if $__inlined_func$~lib/string/String#codePointAt - local.get $3 + local.get $1 i32.load16_u offset=4 - local.tee $3 + local.tee $1 i32.const 64512 i32.and i32.const 56320 i32.ne br_if $__inlined_func$~lib/string/String#codePointAt - local.get $3 + local.get $1 local.get $0 i32.const 10 i32.shl @@ -8026,17 +8040,17 @@ i32.store global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $3 + local.tee $1 i32.store offset=8 - local.get $3 + local.get $1 i32.const 15 call $~lib/string/String#charAt - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=4 local.get $0 - local.get $3 + local.get $1 call $~lib/string/String.__eq i32.eqz if @@ -8060,14 +8074,14 @@ i32.store global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $3 + local.tee $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $4 + local.tee $2 i32.store offset=12 - local.get $3 - local.get $4 + local.get $1 + local.get $2 i32.const 20 i32.sub i32.load offset=16 @@ -8076,12 +8090,12 @@ i32.const 1 i32.sub call $~lib/string/String#charAt - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=4 local.get $0 - local.get $3 + local.get $1 call $~lib/string/String.__eq i32.eqz if @@ -8093,16 +8107,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/string/str - local.tee $3 + local.tee $0 i32.store offset=8 + local.get $1 local.get $0 - local.get $3 i32.store offset=12 - local.get $3 + local.get $0 i32.const 0 - local.get $3 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -8182,10 +8196,10 @@ call $~lib/string/String.fromCharCode@varargs local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 1776 i32.store offset=4 local.get $0 @@ -8206,10 +8220,10 @@ call $~lib/string/String.fromCharCode@varargs local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 1840 i32.store offset=4 local.get $0 @@ -8230,10 +8244,10 @@ call $~lib/string/String.fromCharCode@varargs local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 1872 i32.store offset=4 local.get $0 @@ -8254,10 +8268,10 @@ call $~lib/string/String.fromCharCode@varargs local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 1872 i32.store offset=4 local.get $0 @@ -8277,10 +8291,10 @@ call $~lib/string/String.fromCharCode local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 1904 i32.store offset=4 local.get $0 @@ -8386,10 +8400,10 @@ call $~lib/string/String.fromCodePoint local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 1776 i32.store offset=4 local.get $0 @@ -8408,10 +8422,10 @@ call $~lib/string/String.fromCodePoint local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 1872 i32.store offset=4 local.get $0 @@ -8430,10 +8444,10 @@ call $~lib/string/String.fromCodePoint local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 2144 i32.store offset=4 local.get $0 @@ -8449,39 +8463,39 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/string/str - local.tee $3 + local.tee $0 i32.store - local.get $0 + local.get $1 i32.const 2176 i32.store offset=4 i32.const 0 - local.get $3 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 select - local.tee $4 + local.tee $2 i32.const 2172 i32.load i32.const 1 i32.shr_u - local.tee $5 + local.tee $3 i32.add - local.get $0 + local.get $1 i32.gt_s if (result i32) i32.const 1 else - local.get $3 - local.get $4 + local.get $0 + local.get $2 i32.const 2176 - local.get $5 + local.get $3 call $~lib/util/string/compareImpl end if @@ -8493,22 +8507,22 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/string/str - local.tee $3 + local.tee $0 i32.store - local.get $0 + local.get $1 i32.const 2208 i32.store offset=4 i32.const 536870910 - local.get $3 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.const 536870910 i32.gt_u select @@ -8516,18 +8530,18 @@ i32.load i32.const 1 i32.shr_u - local.tee $0 + local.tee $1 i32.sub - local.tee $4 + local.tee $2 i32.const 0 i32.lt_s if (result i32) i32.const 1 else - local.get $3 - local.get $4 - i32.const 2208 local.get $0 + local.get $2 + i32.const 2208 + local.get $1 call $~lib/util/string/compareImpl end if @@ -8541,12 +8555,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $3 + local.tee $1 i32.store local.get $0 i32.const 2240 i32.store offset=4 - local.get $3 + local.get $1 i32.const 2240 i32.const 0 call $~lib/string/String#indexOf @@ -8563,12 +8577,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $3 + local.tee $1 i32.store offset=8 local.get $0 i32.const 2272 i32.store offset=16 - local.get $3 + local.get $1 i32.const 0 i32.const 2272 call $~lib/string/String#padStart @@ -8578,10 +8592,10 @@ i32.store global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $3 + local.tee $1 i32.store offset=4 local.get $0 - local.get $3 + local.get $1 call $~lib/string/String.__eq i32.eqz if @@ -8595,12 +8609,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $3 + local.tee $1 i32.store offset=8 local.get $0 i32.const 2272 i32.store offset=16 - local.get $3 + local.get $1 i32.const 15 i32.const 2272 call $~lib/string/String#padStart @@ -8610,10 +8624,10 @@ i32.store global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $3 + local.tee $1 i32.store offset=4 local.get $0 - local.get $3 + local.get $1 call $~lib/string/String.__eq i32.eqz if @@ -8807,12 +8821,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $3 + local.tee $1 i32.store offset=8 local.get $0 i32.const 2272 i32.store offset=16 - local.get $3 + local.get $1 i32.const 0 i32.const 2272 call $~lib/string/String#padEnd @@ -8822,10 +8836,10 @@ i32.store global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $3 + local.tee $1 i32.store offset=4 local.get $0 - local.get $3 + local.get $1 call $~lib/string/String.__eq i32.eqz if @@ -8839,12 +8853,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $3 + local.tee $1 i32.store offset=8 local.get $0 i32.const 2272 i32.store offset=16 - local.get $3 + local.get $1 i32.const 15 i32.const 2272 call $~lib/string/String#padEnd @@ -8854,10 +8868,10 @@ i32.store global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $3 + local.tee $1 i32.store offset=4 local.get $0 - local.get $3 + local.get $1 call $~lib/string/String.__eq i32.eqz if @@ -9108,15 +9122,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/string/str - local.tee $3 + local.tee $0 i32.store + local.get $1 local.get $0 - local.get $3 i32.store offset=4 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.const 0 call $~lib/string/String#indexOf if @@ -9130,12 +9144,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $3 + local.tee $1 i32.store local.get $0 i32.const 1712 i32.store offset=4 - local.get $3 + local.get $1 i32.const 1712 i32.const 0 call $~lib/string/String#indexOf @@ -9150,12 +9164,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $3 + local.tee $1 i32.store local.get $0 i32.const 2624 i32.store offset=4 - local.get $3 + local.get $1 i32.const 2624 i32.const 0 call $~lib/string/String#indexOf @@ -9172,12 +9186,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $3 + local.tee $1 i32.store local.get $0 i32.const 2656 i32.store offset=4 - local.get $3 + local.get $1 i32.const 2656 i32.const 0 call $~lib/string/String#indexOf @@ -9194,12 +9208,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $3 + local.tee $1 i32.store local.get $0 i32.const 2624 i32.store offset=4 - local.get $3 + local.get $1 i32.const 2624 i32.const 2 call $~lib/string/String#indexOf @@ -9216,12 +9230,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $3 + local.tee $1 i32.store local.get $0 i32.const 2624 i32.store offset=4 - local.get $3 + local.get $1 i32.const 2624 i32.const 3 call $~lib/string/String#indexOf @@ -9238,12 +9252,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $3 + local.tee $1 i32.store local.get $0 i32.const 2688 i32.store offset=4 - local.get $3 + local.get $1 i32.const 2688 i32.const -1 call $~lib/string/String#indexOf @@ -9300,21 +9314,21 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $3 + local.tee $1 i32.store local.get $0 i32.const 1712 i32.store offset=4 - local.get $3 + local.get $1 i32.const 1712 i32.const 2147483647 call $~lib/string/String#lastIndexOf local.set $0 global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -9333,12 +9347,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $3 + local.tee $1 i32.store local.get $0 i32.const 2624 i32.store offset=4 - local.get $3 + local.get $1 i32.const 2624 i32.const 2147483647 call $~lib/string/String#lastIndexOf @@ -9355,12 +9369,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $3 + local.tee $1 i32.store local.get $0 i32.const 2656 i32.store offset=4 - local.get $3 + local.get $1 i32.const 2656 i32.const 2147483647 call $~lib/string/String#lastIndexOf @@ -9377,12 +9391,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $3 + local.tee $1 i32.store local.get $0 i32.const 2720 i32.store offset=4 - local.get $3 + local.get $1 i32.const 2720 i32.const 2147483647 call $~lib/string/String#lastIndexOf @@ -9399,12 +9413,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $3 + local.tee $1 i32.store local.get $0 i32.const 2624 i32.store offset=4 - local.get $3 + local.get $1 i32.const 2624 i32.const 2 call $~lib/string/String#lastIndexOf @@ -9421,12 +9435,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $3 + local.tee $1 i32.store local.get $0 i32.const 2624 i32.store offset=4 - local.get $3 + local.get $1 i32.const 2624 i32.const 3 call $~lib/string/String#lastIndexOf @@ -9443,12 +9457,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $3 + local.tee $1 i32.store local.get $0 i32.const 2688 i32.store offset=4 - local.get $3 + local.get $1 i32.const 2688 i32.const -1 call $~lib/string/String#lastIndexOf @@ -9465,12 +9479,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $3 + local.tee $1 i32.store local.get $0 i32.const 2752 i32.store offset=4 - local.get $3 + local.get $1 i32.const 2752 i32.const 0 call $~lib/string/String#lastIndexOf @@ -9487,12 +9501,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $3 + local.tee $1 i32.store local.get $0 i32.const 2176 i32.store offset=4 - local.get $3 + local.get $1 i32.const 2176 i32.const 0 call $~lib/string/String#lastIndexOf @@ -10244,14 +10258,14 @@ i32.const 3664 i32.const 0 call $~lib/util/string/strtol - local.set $1 + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 3712 i32.store i32.const 3712 i32.const 16 call $~lib/util/string/strtol - local.get $1 + local.get $4 f64.ne if i32.const 0 @@ -10395,8 +10409,8 @@ i32.const 1712 i32.const 0 call $~lib/util/string/strtol - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -10412,8 +10426,8 @@ i32.const 4112 i32.const 0 call $~lib/util/string/strtol - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -10429,8 +10443,8 @@ i32.const 4144 i32.const 0 call $~lib/util/string/strtol - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -10446,8 +10460,8 @@ i32.const 2400 i32.const 37 call $~lib/util/string/strtol - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -10463,8 +10477,8 @@ i32.const 4176 i32.const 0 call $~lib/util/string/strtol - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -10480,8 +10494,8 @@ i32.const 4208 i32.const 0 call $~lib/util/string/strtol - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -10498,8 +10512,8 @@ i32.const 0 call $~lib/util/string/strtol f32.demote_f64 - local.tee $2 - local.get $2 + local.tee $5 + local.get $5 f32.eq if i32.const 0 @@ -10515,8 +10529,8 @@ i32.const 4208 i32.const 0 call $~lib/util/string/strtol - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -10844,8 +10858,8 @@ i32.store i32.const 1712 call $~lib/util/string/strtod - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -11670,8 +11684,8 @@ i32.store i32.const 4144 call $~lib/util/string/strtod - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -11686,8 +11700,8 @@ i32.store i32.const 4112 call $~lib/util/string/strtod - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -11702,8 +11716,8 @@ i32.store i32.const 7056 call $~lib/util/string/strtod - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -11718,8 +11732,8 @@ i32.store i32.const 7088 call $~lib/util/string/strtod - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -11734,8 +11748,8 @@ i32.store i32.const 7120 call $~lib/util/string/strtod - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -11750,8 +11764,8 @@ i32.store i32.const 7152 call $~lib/util/string/strtod - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -11766,8 +11780,8 @@ i32.store i32.const 7184 call $~lib/util/string/strtod - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -11782,8 +11796,8 @@ i32.store i32.const 7216 call $~lib/util/string/strtod - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -11798,8 +11812,8 @@ i32.store i32.const 7248 call $~lib/util/string/strtod - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -11814,8 +11828,8 @@ i32.store i32.const 7280 call $~lib/util/string/strtod - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -11830,8 +11844,8 @@ i32.store i32.const 7312 call $~lib/util/string/strtod - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -11846,8 +11860,8 @@ i32.store i32.const 7344 call $~lib/util/string/strtod - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -11862,8 +11876,8 @@ i32.store i32.const 7376 call $~lib/util/string/strtod - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -11878,8 +11892,8 @@ i32.store i32.const 7408 call $~lib/util/string/strtod - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -11894,8 +11908,8 @@ i32.store i32.const 7440 call $~lib/util/string/strtod - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -11910,8 +11924,8 @@ i32.store i32.const 7472 call $~lib/util/string/strtod - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -12301,8 +12315,8 @@ i32.store i32.const 8688 call $~lib/util/string/strtod - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -12317,8 +12331,8 @@ i32.store i32.const 8720 call $~lib/util/string/strtod - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -12333,8 +12347,8 @@ i32.store i32.const 8768 call $~lib/util/string/strtod - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -12810,8 +12824,8 @@ i32.store i32.const 12880 call $~lib/util/string/strtod - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 f64.eq if i32.const 0 @@ -13742,28 +13756,28 @@ global.get $~lib/memory/__stack_pointer i32.const 65377 call $~lib/string/String.fromCodePoint - local.tee $0 + local.tee $2 i32.store offset=36 global.get $~lib/memory/__stack_pointer i32.const 55296 call $~lib/string/String.fromCodePoint - local.set $4 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $0 i32.store i32.const 56322 call $~lib/string/String.fromCodePoint - local.set $5 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $1 i32.store offset=4 - local.get $4 - local.get $5 + local.get $0 + local.get $1 call $~lib/string/String#concat - local.tee $3 + local.tee $0 i32.store offset=40 + local.get $2 local.get $0 - local.get $3 call $~lib/string/String.__gt i32.eqz if @@ -16021,10 +16035,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 1712 i32.store offset=4 local.get $0 @@ -16090,10 +16104,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 1712 i32.store offset=4 local.get $0 @@ -16135,10 +16149,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 15424 i32.store offset=4 local.get $0 @@ -16178,15 +16192,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $2 + local.get $1 i32.store - local.get $4 + local.get $2 i32.const 1808 i32.store offset=4 - local.get $3 + local.get $1 i32.const 1808 call $~lib/string/String.__eq else @@ -16196,15 +16210,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $2 + local.get $1 i32.store - local.get $4 + local.get $2 i32.const 12944 i32.store offset=4 - local.get $3 + local.get $1 i32.const 12944 call $~lib/string/String.__eq else @@ -16216,10 +16230,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 14048 i32.store offset=4 local.get $0 @@ -16259,15 +16273,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $2 + local.get $1 i32.store - local.get $4 + local.get $2 i32.const 1808 i32.store offset=4 - local.get $3 + local.get $1 i32.const 1808 call $~lib/string/String.__eq else @@ -16277,15 +16291,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $2 + local.get $1 i32.store - local.get $4 + local.get $2 i32.const 12944 i32.store offset=4 - local.get $3 + local.get $1 i32.const 12944 call $~lib/string/String.__eq else @@ -16297,10 +16311,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 14048 i32.store offset=4 local.get $0 @@ -16340,15 +16354,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $2 + local.get $1 i32.store - local.get $4 + local.get $2 i32.const 1808 i32.store offset=4 - local.get $3 + local.get $1 i32.const 1808 call $~lib/string/String.__eq else @@ -16358,15 +16372,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $2 + local.get $1 i32.store - local.get $4 + local.get $2 i32.const 12944 i32.store offset=4 - local.get $3 + local.get $1 i32.const 12944 call $~lib/string/String.__eq else @@ -16376,15 +16390,15 @@ local.get $0 i32.const 2 call $~lib/array/Array<~lib/string/String>#__get - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $2 + local.get $1 i32.store - local.get $4 + local.get $2 i32.const 1712 i32.store offset=4 - local.get $3 + local.get $1 i32.const 1712 call $~lib/string/String.__eq else @@ -16396,10 +16410,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 14048 i32.store offset=4 local.get $0 @@ -16439,15 +16453,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $2 + local.get $1 i32.store - local.get $4 + local.get $2 i32.const 1712 i32.store offset=4 - local.get $3 + local.get $1 i32.const 1712 call $~lib/string/String.__eq else @@ -16457,15 +16471,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $2 + local.get $1 i32.store - local.get $4 + local.get $2 i32.const 1808 i32.store offset=4 - local.get $3 + local.get $1 i32.const 1808 call $~lib/string/String.__eq else @@ -16475,15 +16489,15 @@ local.get $0 i32.const 2 call $~lib/array/Array<~lib/string/String>#__get - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $2 + local.get $1 i32.store - local.get $4 + local.get $2 i32.const 12944 i32.store offset=4 - local.get $3 + local.get $1 i32.const 12944 call $~lib/string/String.__eq else @@ -16495,10 +16509,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 14048 i32.store offset=4 local.get $0 @@ -16538,15 +16552,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $2 + local.get $1 i32.store - local.get $4 + local.get $2 i32.const 1808 i32.store offset=4 - local.get $3 + local.get $1 i32.const 1808 call $~lib/string/String.__eq else @@ -16556,15 +16570,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $2 + local.get $1 i32.store - local.get $4 + local.get $2 i32.const 12944 i32.store offset=4 - local.get $3 + local.get $1 i32.const 12944 call $~lib/string/String.__eq else @@ -16574,15 +16588,15 @@ local.get $0 i32.const 2 call $~lib/array/Array<~lib/string/String>#__get - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $2 + local.get $1 i32.store - local.get $4 + local.get $2 i32.const 14048 i32.store offset=4 - local.get $3 + local.get $1 i32.const 14048 call $~lib/string/String.__eq else @@ -16594,10 +16608,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 1712 i32.store offset=4 local.get $0 @@ -16637,15 +16651,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $2 + local.get $1 i32.store - local.get $4 + local.get $2 i32.const 1808 i32.store offset=4 - local.get $3 + local.get $1 i32.const 1808 call $~lib/string/String.__eq else @@ -16655,15 +16669,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $2 + local.get $1 i32.store - local.get $4 + local.get $2 i32.const 12944 i32.store offset=4 - local.get $3 + local.get $1 i32.const 12944 call $~lib/string/String.__eq else @@ -16675,10 +16689,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 14048 i32.store offset=4 local.get $0 @@ -16744,10 +16758,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 1808 i32.store offset=4 local.get $0 @@ -16789,10 +16803,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 1808 i32.store offset=4 local.get $0 @@ -16832,15 +16846,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $2 + local.get $1 i32.store - local.get $4 + local.get $2 i32.const 1808 i32.store offset=4 - local.get $3 + local.get $1 i32.const 1808 call $~lib/string/String.__eq else @@ -16850,15 +16864,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $2 + local.get $1 i32.store - local.get $4 + local.get $2 i32.const 12944 i32.store offset=4 - local.get $3 + local.get $1 i32.const 12944 call $~lib/string/String.__eq else @@ -16870,10 +16884,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 14048 i32.store offset=4 local.get $0 @@ -16913,15 +16927,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $2 + local.get $1 i32.store - local.get $4 + local.get $2 i32.const 1808 i32.store offset=4 - local.get $3 + local.get $1 i32.const 1808 call $~lib/string/String.__eq else @@ -16931,15 +16945,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $2 + local.get $1 i32.store - local.get $4 + local.get $2 i32.const 12944 i32.store offset=4 - local.get $3 + local.get $1 i32.const 12944 call $~lib/string/String.__eq else @@ -16951,10 +16965,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 14048 i32.store offset=4 local.get $0 @@ -16994,15 +17008,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $2 + local.get $1 i32.store - local.get $4 + local.get $2 i32.const 1808 i32.store offset=4 - local.get $3 + local.get $1 i32.const 1808 call $~lib/string/String.__eq else @@ -17012,15 +17026,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $3 + local.tee $2 + local.get $1 i32.store - local.get $4 + local.get $2 i32.const 12944 i32.store offset=4 - local.get $3 + local.get $1 i32.const 12944 call $~lib/string/String.__eq else @@ -17032,10 +17046,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 14048 i32.store offset=4 local.get $0 @@ -17058,10 +17072,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 3056 i32.store offset=4 local.get $0 @@ -17081,10 +17095,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 3120 i32.store offset=4 local.get $0 @@ -17104,10 +17118,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17376 i32.store offset=4 local.get $0 @@ -17127,10 +17141,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17408 i32.store offset=4 local.get $0 @@ -17150,10 +17164,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 2400 i32.store offset=4 local.get $0 @@ -17173,10 +17187,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17440 i32.store offset=4 local.get $0 @@ -17196,10 +17210,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 13584 i32.store offset=4 local.get $0 @@ -17219,10 +17233,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17472 i32.store offset=4 local.get $0 @@ -17242,10 +17256,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17504 i32.store offset=4 local.get $0 @@ -17265,10 +17279,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17536 i32.store offset=4 local.get $0 @@ -17288,10 +17302,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17584 i32.store offset=4 local.get $0 @@ -17311,10 +17325,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17632 i32.store offset=4 local.get $0 @@ -17334,10 +17348,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17680 i32.store offset=4 local.get $0 @@ -17357,10 +17371,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17728 i32.store offset=4 local.get $0 @@ -17380,10 +17394,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17776 i32.store offset=4 local.get $0 @@ -17403,10 +17417,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17824 i32.store offset=4 local.get $0 @@ -17426,10 +17440,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17872 i32.store offset=4 local.get $0 @@ -17449,10 +17463,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 3056 i32.store offset=4 local.get $0 @@ -17472,10 +17486,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17904 i32.store offset=4 local.get $0 @@ -17495,10 +17509,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17776 i32.store offset=4 local.get $0 @@ -17518,10 +17532,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17936 i32.store offset=4 local.get $0 @@ -17541,10 +17555,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17984 i32.store offset=4 local.get $0 @@ -17564,10 +17578,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 3056 i32.store offset=4 local.get $0 @@ -17587,10 +17601,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 3120 i32.store offset=4 local.get $0 @@ -17610,10 +17624,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17376 i32.store offset=4 local.get $0 @@ -17633,10 +17647,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 14048 i32.store offset=4 local.get $0 @@ -17656,10 +17670,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18032 i32.store offset=4 local.get $0 @@ -17679,10 +17693,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18064 i32.store offset=4 local.get $0 @@ -17702,10 +17716,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18096 i32.store offset=4 local.get $0 @@ -17725,10 +17739,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18128 i32.store offset=4 local.get $0 @@ -17748,10 +17762,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18160 i32.store offset=4 local.get $0 @@ -17771,10 +17785,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18192 i32.store offset=4 local.get $0 @@ -17794,10 +17808,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18224 i32.store offset=4 local.get $0 @@ -17817,10 +17831,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18256 i32.store offset=4 local.get $0 @@ -17840,10 +17854,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18304 i32.store offset=4 local.get $0 @@ -17863,10 +17877,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18352 i32.store offset=4 local.get $0 @@ -17886,10 +17900,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18400 i32.store offset=4 local.get $0 @@ -17909,10 +17923,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18448 i32.store offset=4 local.get $0 @@ -17932,10 +17946,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 3056 i32.store offset=4 local.get $0 @@ -17955,10 +17969,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17440 i32.store offset=4 local.get $0 @@ -17978,10 +17992,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18352 i32.store offset=4 local.get $0 @@ -18001,10 +18015,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18496 i32.store offset=4 local.get $0 @@ -18024,10 +18038,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18544 i32.store offset=4 local.get $0 @@ -18047,10 +18061,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18592 i32.store offset=4 local.get $0 @@ -18070,10 +18084,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18592 i32.store offset=4 local.get $0 @@ -18093,10 +18107,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 3056 i32.store offset=4 local.get $0 @@ -18116,10 +18130,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 3120 i32.store offset=4 local.get $0 @@ -18139,10 +18153,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 13488 i32.store offset=4 local.get $0 @@ -18162,10 +18176,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18640 i32.store offset=4 local.get $0 @@ -18185,10 +18199,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18672 i32.store offset=4 local.get $0 @@ -18208,10 +18222,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18704 i32.store offset=4 local.get $0 @@ -18231,10 +18245,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18736 i32.store offset=4 local.get $0 @@ -18254,10 +18268,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18768 i32.store offset=4 local.get $0 @@ -18277,10 +18291,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18816 i32.store offset=4 local.get $0 @@ -18300,10 +18314,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18896 i32.store offset=4 local.get $0 @@ -18323,10 +18337,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18992 i32.store offset=4 local.get $0 @@ -18346,10 +18360,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 19088 i32.store offset=4 local.get $0 @@ -18369,10 +18383,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 19184 i32.store offset=4 local.get $0 @@ -18392,10 +18406,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 19280 i32.store offset=4 local.get $0 @@ -18415,10 +18429,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 19328 i32.store offset=4 local.get $0 @@ -18438,10 +18452,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 19392 i32.store offset=4 local.get $0 @@ -18461,10 +18475,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 19456 i32.store offset=4 local.get $0 @@ -18484,10 +18498,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 19504 i32.store offset=4 local.get $0 @@ -18507,10 +18521,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 19552 i32.store offset=4 local.get $0 @@ -18530,10 +18544,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 19600 i32.store offset=4 local.get $0 @@ -18553,10 +18567,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 19648 i32.store offset=4 local.get $0 @@ -18576,10 +18590,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 19696 i32.store offset=4 local.get $0 @@ -18599,10 +18613,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 19744 i32.store offset=4 local.get $0 @@ -18622,10 +18636,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 19792 i32.store offset=4 local.get $0 @@ -18645,10 +18659,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 19840 i32.store offset=4 local.get $0 @@ -18668,10 +18682,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 3056 i32.store offset=4 local.get $0 @@ -18691,10 +18705,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17408 i32.store offset=4 local.get $0 @@ -18714,10 +18728,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 2400 i32.store offset=4 local.get $0 @@ -18737,10 +18751,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 13584 i32.store offset=4 local.get $0 @@ -18760,10 +18774,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17472 i32.store offset=4 local.get $0 @@ -18783,10 +18797,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17504 i32.store offset=4 local.get $0 @@ -18806,10 +18820,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17584 i32.store offset=4 local.get $0 @@ -18829,10 +18843,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 19888 i32.store offset=4 local.get $0 @@ -18852,10 +18866,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 19936 i32.store offset=4 local.get $0 @@ -18875,10 +18889,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17984 i32.store offset=4 local.get $0 @@ -18898,10 +18912,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 19984 i32.store offset=4 local.get $0 @@ -18921,10 +18935,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 20032 i32.store offset=4 local.get $0 @@ -18944,10 +18958,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 20080 i32.store offset=4 local.get $0 @@ -18967,10 +18981,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 20128 i32.store offset=4 local.get $0 @@ -18990,10 +19004,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 20176 i32.store offset=4 local.get $0 @@ -19013,10 +19027,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 20224 i32.store offset=4 local.get $0 @@ -19036,10 +19050,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 20288 i32.store offset=4 local.get $0 @@ -19059,10 +19073,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 20352 i32.store offset=4 local.get $0 @@ -19082,10 +19096,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 20416 i32.store offset=4 local.get $0 @@ -19105,10 +19119,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 20480 i32.store offset=4 local.get $0 @@ -19128,10 +19142,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 20544 i32.store offset=4 local.get $0 @@ -19151,10 +19165,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 3056 i32.store offset=4 local.get $0 @@ -19174,10 +19188,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 20608 i32.store offset=4 local.get $0 @@ -19197,10 +19211,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 17984 i32.store offset=4 local.get $0 @@ -19220,10 +19234,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 19984 i32.store offset=4 local.get $0 @@ -19243,10 +19257,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 20640 i32.store offset=4 local.get $0 @@ -19266,10 +19280,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 20032 i32.store offset=4 local.get $0 @@ -19289,10 +19303,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 20688 i32.store offset=4 local.get $0 @@ -19312,10 +19326,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 20736 i32.store offset=4 local.get $0 @@ -19335,10 +19349,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 20784 i32.store offset=4 local.get $0 @@ -19358,10 +19372,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 20848 i32.store offset=4 local.get $0 @@ -19381,10 +19395,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 20912 i32.store offset=4 local.get $0 @@ -19404,10 +19418,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 20976 i32.store offset=4 local.get $0 @@ -19427,10 +19441,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 3056 i32.store offset=4 local.get $0 @@ -19450,10 +19464,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 3120 i32.store offset=4 local.get $0 @@ -19473,10 +19487,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 14048 i32.store offset=4 local.get $0 @@ -19496,10 +19510,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18064 i32.store offset=4 local.get $0 @@ -19519,10 +19533,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18160 i32.store offset=4 local.get $0 @@ -19542,10 +19556,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 21040 i32.store offset=4 local.get $0 @@ -19565,10 +19579,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 21088 i32.store offset=4 local.get $0 @@ -19588,10 +19602,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 21136 i32.store offset=4 local.get $0 @@ -19611,10 +19625,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 21184 i32.store offset=4 local.get $0 @@ -19634,10 +19648,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 21232 i32.store offset=4 local.get $0 @@ -19657,10 +19671,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 21280 i32.store offset=4 local.get $0 @@ -19680,10 +19694,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 21344 i32.store offset=4 local.get $0 @@ -19703,10 +19717,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 21408 i32.store offset=4 local.get $0 @@ -19726,10 +19740,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 21472 i32.store offset=4 local.get $0 @@ -19749,10 +19763,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 21536 i32.store offset=4 local.get $0 @@ -19772,10 +19786,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 21600 i32.store offset=4 local.get $0 @@ -19795,10 +19809,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 21600 i32.store offset=4 local.get $0 @@ -19818,10 +19832,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 3056 i32.store offset=4 local.get $0 @@ -19841,10 +19855,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 3120 i32.store offset=4 local.get $0 @@ -19864,10 +19878,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18640 i32.store offset=4 local.get $0 @@ -19887,10 +19901,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18672 i32.store offset=4 local.get $0 @@ -19910,10 +19924,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18736 i32.store offset=4 local.get $0 @@ -19933,10 +19947,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 18768 i32.store offset=4 local.get $0 @@ -19956,10 +19970,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 19184 i32.store offset=4 local.get $0 @@ -19979,10 +19993,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 21664 i32.store offset=4 local.get $0 @@ -20002,10 +20016,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 21792 i32.store offset=4 local.get $0 @@ -20025,10 +20039,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 21952 i32.store offset=4 local.get $0 @@ -20048,10 +20062,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 22048 i32.store offset=4 local.get $0 @@ -20071,10 +20085,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 22160 i32.store offset=4 local.get $0 @@ -20094,10 +20108,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 22256 i32.store offset=4 local.get $0 @@ -20117,10 +20131,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 22336 i32.store offset=4 local.get $0 @@ -20140,10 +20154,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 22400 i32.store offset=4 local.get $0 @@ -20163,10 +20177,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 22464 i32.store offset=4 local.get $0 @@ -20186,10 +20200,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 22528 i32.store offset=4 local.get $0 @@ -20209,10 +20223,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 22592 i32.store offset=4 local.get $0 @@ -20232,10 +20246,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 22656 i32.store offset=4 local.get $0 @@ -20255,10 +20269,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 22704 i32.store offset=4 local.get $0 @@ -20278,10 +20292,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 22752 i32.store offset=4 local.get $0 @@ -20300,10 +20314,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 22800 i32.store offset=4 local.get $0 @@ -20322,10 +20336,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 22800 i32.store offset=4 local.get $0 @@ -20344,10 +20358,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 7248 i32.store offset=4 local.get $0 @@ -20366,10 +20380,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 22832 i32.store offset=4 local.get $0 @@ -20388,10 +20402,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 8544 i32.store offset=4 local.get $0 @@ -20410,10 +20424,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 7760 i32.store offset=4 local.get $0 @@ -20432,10 +20446,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 23856 i32.store offset=4 local.get $0 @@ -20454,10 +20468,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 7824 i32.store offset=4 local.get $0 @@ -20476,10 +20490,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 23920 i32.store offset=4 local.get $0 @@ -20498,10 +20512,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 24000 i32.store offset=4 local.get $0 @@ -20520,10 +20534,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 24064 i32.store offset=4 local.get $0 @@ -20542,10 +20556,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 24144 i32.store offset=4 local.get $0 @@ -20564,10 +20578,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 24192 i32.store offset=4 local.get $0 @@ -20586,10 +20600,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 24256 i32.store offset=4 local.get $0 @@ -20608,10 +20622,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 24320 i32.store offset=4 local.get $0 @@ -20630,10 +20644,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 7904 i32.store offset=4 local.get $0 @@ -20652,10 +20666,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 24384 i32.store offset=4 local.get $0 @@ -20674,10 +20688,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 4832 i32.store offset=4 local.get $0 @@ -20696,10 +20710,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 24416 i32.store offset=4 local.get $0 @@ -20718,10 +20732,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 24448 i32.store offset=4 local.get $0 @@ -20740,10 +20754,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 24480 i32.store offset=4 local.get $0 @@ -20762,10 +20776,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 24528 i32.store offset=4 local.get $0 @@ -20784,10 +20798,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 24576 i32.store offset=4 local.get $0 @@ -20806,10 +20820,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 24624 i32.store offset=4 local.get $0 @@ -20828,10 +20842,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 24672 i32.store offset=4 local.get $0 @@ -20850,10 +20864,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 24720 i32.store offset=4 local.get $0 @@ -20872,10 +20886,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 5120 i32.store offset=4 local.get $0 @@ -20894,10 +20908,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 24752 i32.store offset=4 local.get $0 @@ -20916,10 +20930,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 22832 i32.store offset=4 local.get $0 @@ -20938,10 +20952,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 8544 i32.store offset=4 local.get $0 @@ -20960,10 +20974,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 24800 i32.store offset=4 local.get $0 @@ -20982,10 +20996,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 24832 i32.store offset=4 local.get $0 @@ -21004,10 +21018,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 24880 i32.store offset=4 local.get $0 @@ -21026,10 +21040,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 24912 i32.store offset=4 local.get $0 @@ -21048,10 +21062,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 22800 i32.store offset=4 local.get $0 @@ -21070,10 +21084,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 24960 i32.store offset=4 local.get $0 @@ -21092,10 +21106,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 25008 i32.store offset=4 local.get $0 @@ -21114,10 +21128,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 25072 i32.store offset=4 local.get $0 @@ -21136,10 +21150,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 25136 i32.store offset=4 local.get $0 @@ -21158,10 +21172,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 24384 i32.store offset=4 local.get $0 @@ -21180,10 +21194,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 25200 i32.store offset=4 local.get $0 @@ -21202,10 +21216,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 25232 i32.store offset=4 local.get $0 @@ -21224,10 +21238,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 25296 i32.store offset=4 local.get $0 @@ -21246,10 +21260,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 25376 i32.store offset=4 local.get $0 @@ -21268,10 +21282,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 25424 i32.store offset=4 local.get $0 @@ -21290,10 +21304,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 25472 i32.store offset=4 local.get $0 @@ -21312,10 +21326,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 25520 i32.store offset=4 local.get $0 @@ -21334,10 +21348,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 25568 i32.store offset=4 local.get $0 @@ -21356,10 +21370,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 25616 i32.store offset=4 local.get $0 @@ -21378,10 +21392,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.store - local.get $3 + local.get $1 i32.const 25664 i32.store offset=4 local.get $0 @@ -21637,18 +21651,18 @@ local.get $1 i32.const 0 i32.gt_s - local.tee $2 + local.tee $3 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 local.get $0 i32.store16 - local.get $2 + local.get $3 if - local.get $3 + local.get $2 local.get $1 i32.store16 offset=2 end @@ -21656,7 +21670,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 ) (func $~lib/rt/__newArray (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -21685,9 +21699,9 @@ local.get $0 i32.const 2 i32.shl - local.tee $4 - local.set $6 - local.get $4 + local.tee $6 + local.set $4 + local.get $6 i32.const 0 call $~lib/rt/itcms/__new local.set $3 @@ -21695,7 +21709,7 @@ if local.get $3 local.get $2 - local.get $6 + local.get $4 call $~lib/memory/memory.copy end local.get $5 @@ -21718,7 +21732,7 @@ local.get $3 i32.store offset=4 local.get $1 - local.get $4 + local.get $6 i32.store offset=8 local.get $1 local.get $0 @@ -21755,25 +21769,25 @@ local.get $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 i32.store local.get $0 i32.load offset=4 local.set $0 loop $for-loop|0 local.get $1 - local.get $2 + local.get $3 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $3 + local.get $2 i32.add local.get $1 i32.const 2 @@ -21793,7 +21807,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 ) (func $~lib/string/String.fromCodePoint (param $0 i32) (result i32) (local $1 i32) @@ -21822,13 +21836,13 @@ local.get $0 i32.const 65535 i32.gt_u - local.tee $1 + local.tee $2 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $1 + local.get $2 if local.get $0 i32.const 1114111 @@ -21841,7 +21855,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 local.get $0 i32.const 65536 i32.sub @@ -21860,7 +21874,7 @@ i32.or i32.store else - local.get $2 + local.get $1 local.get $0 i32.store16 end @@ -21868,7 +21882,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 ) (func $~lib/string/String#padStart (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -21912,11 +21926,11 @@ i32.shr_u i32.const 1 i32.shl - local.tee $4 + local.tee $5 local.get $1 i32.const 1 i32.shl - local.tee $1 + local.tee $4 i32.gt_u i32.or if @@ -21928,57 +21942,57 @@ return end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $4 i32.const 1 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $1 i32.store local.get $3 - local.get $1 local.get $4 + local.get $5 i32.sub - local.tee $7 + local.tee $4 i32.lt_u if local.get $3 - local.get $7 + local.get $4 i32.const 2 i32.sub local.get $3 i32.div_u - local.tee $5 + local.tee $7 i32.mul - local.set $1 - local.get $6 + local.set $6 + local.get $1 local.get $2 local.get $3 - local.get $5 + local.get $7 call $~lib/memory/memory.repeat local.get $1 local.get $6 i32.add local.get $2 - local.get $7 - local.get $1 + local.get $4 + local.get $6 i32.sub call $~lib/memory/memory.copy else - local.get $6 + local.get $1 local.get $2 - local.get $7 + local.get $4 call $~lib/memory/memory.copy end - local.get $6 - local.get $7 + local.get $1 + local.get $4 i32.add local.get $0 - local.get $4 + local.get $5 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $1 ) (func $~lib/string/String#padEnd (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -22025,7 +22039,7 @@ local.get $1 i32.const 1 i32.shl - local.tee $1 + local.tee $5 i32.gt_u i32.or if @@ -22037,60 +22051,60 @@ return end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $5 i32.const 1 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $1 i32.store - local.get $5 + local.get $1 local.get $0 local.get $4 call $~lib/memory/memory.copy local.get $3 - local.get $1 + local.get $5 local.get $4 i32.sub - local.tee $1 + local.tee $0 i32.lt_u if local.get $3 - local.get $1 + local.get $0 i32.const 2 i32.sub local.get $3 i32.div_u - local.tee $0 + local.tee $6 i32.mul - local.set $6 + local.set $5 + local.get $1 local.get $4 - local.get $5 i32.add local.tee $4 local.get $2 local.get $3 - local.get $0 + local.get $6 call $~lib/memory/memory.repeat local.get $4 - local.get $6 + local.get $5 i32.add local.get $2 - local.get $1 - local.get $6 + local.get $0 + local.get $5 i32.sub call $~lib/memory/memory.copy else + local.get $1 local.get $4 - local.get $5 i32.add local.get $2 - local.get $1 + local.get $0 call $~lib/memory/memory.copy end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $1 ) (func $~lib/string/String#trimStart (param $0 i32) (result i32) (local $1 i32) @@ -22122,27 +22136,27 @@ i32.shr_u i32.const 1 i32.shl - local.set $2 + local.set $3 loop $while-continue|0 - local.get $1 local.get $2 + local.get $3 i32.lt_u if (result i32) block $__inlined_func$~lib/util/string/isSpace (result i32) local.get $0 - local.get $1 + local.get $2 i32.add i32.load16_u - local.tee $3 + local.tee $1 i32.const 5760 i32.lt_u if - local.get $3 + local.get $1 i32.const 128 i32.or i32.const 160 i32.eq - local.get $3 + local.get $1 i32.const 9 i32.sub i32.const 4 @@ -22151,7 +22165,7 @@ br $__inlined_func$~lib/util/string/isSpace end i32.const 1 - local.get $3 + local.get $1 i32.const -8192 i32.add i32.const 10 @@ -22160,31 +22174,31 @@ drop block $break|0 block $case6|0 - local.get $3 + local.get $1 i32.const 5760 i32.eq br_if $case6|0 - local.get $3 + local.get $1 i32.const 8232 i32.eq br_if $case6|0 - local.get $3 + local.get $1 i32.const 8233 i32.eq br_if $case6|0 - local.get $3 + local.get $1 i32.const 8239 i32.eq br_if $case6|0 - local.get $3 + local.get $1 i32.const 8287 i32.eq br_if $case6|0 - local.get $3 + local.get $1 i32.const 12288 i32.eq br_if $case6|0 - local.get $3 + local.get $1 i32.const 65279 i32.eq br_if $case6|0 @@ -22199,14 +22213,14 @@ i32.const 0 end if - local.get $1 + local.get $2 i32.const 2 i32.add - local.set $1 + local.set $2 br $while-continue|0 end end - local.get $1 + local.get $2 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -22216,10 +22230,10 @@ local.get $0 return end + local.get $3 local.get $2 - local.get $1 i32.sub - local.tee $2 + local.tee $1 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -22230,16 +22244,16 @@ return end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 1 call $~lib/rt/itcms/__new local.tee $3 i32.store local.get $3 local.get $0 - local.get $1 - i32.add local.get $2 + i32.add + local.get $1 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 @@ -22277,28 +22291,28 @@ i32.shr_u i32.const 1 i32.shl - local.tee $2 - local.set $1 + local.tee $3 + local.set $2 loop $while-continue|0 - local.get $1 + local.get $2 if (result i32) block $__inlined_func$~lib/util/string/isSpace (result i32) local.get $0 - local.get $1 + local.get $2 i32.add i32.const 2 i32.sub i32.load16_u - local.tee $3 + local.tee $1 i32.const 5760 i32.lt_u if - local.get $3 + local.get $1 i32.const 128 i32.or i32.const 160 i32.eq - local.get $3 + local.get $1 i32.const 9 i32.sub i32.const 4 @@ -22307,7 +22321,7 @@ br $__inlined_func$~lib/util/string/isSpace end i32.const 1 - local.get $3 + local.get $1 i32.const -8192 i32.add i32.const 10 @@ -22316,31 +22330,31 @@ drop block $break|0 block $case6|0 - local.get $3 + local.get $1 i32.const 5760 i32.eq br_if $case6|0 - local.get $3 + local.get $1 i32.const 8232 i32.eq br_if $case6|0 - local.get $3 + local.get $1 i32.const 8233 i32.eq br_if $case6|0 - local.get $3 + local.get $1 i32.const 8239 i32.eq br_if $case6|0 - local.get $3 + local.get $1 i32.const 8287 i32.eq br_if $case6|0 - local.get $3 + local.get $1 i32.const 12288 i32.eq br_if $case6|0 - local.get $3 + local.get $1 i32.const 65279 i32.eq br_if $case6|0 @@ -22355,14 +22369,14 @@ i32.const 0 end if - local.get $1 + local.get $2 i32.const 2 i32.sub - local.set $1 + local.set $2 br $while-continue|0 end end - local.get $1 + local.get $2 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -22372,8 +22386,8 @@ i32.const 1712 return end - local.get $1 local.get $2 + local.get $3 i32.eq if global.get $~lib/memory/__stack_pointer @@ -22384,20 +22398,20 @@ return end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 - local.get $0 local.get $1 + local.get $0 + local.get $2 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 ) (func $~lib/string/String#trim (param $0 i32) (result i32) (local $1 i32) @@ -22428,7 +22442,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.const 1 i32.shl local.set $1 @@ -22442,16 +22456,16 @@ i32.const 2 i32.sub i32.load16_u - local.tee $4 + local.tee $2 i32.const 5760 i32.lt_u if - local.get $4 + local.get $2 i32.const 128 i32.or i32.const 160 i32.eq - local.get $4 + local.get $2 i32.const 9 i32.sub i32.const 4 @@ -22460,7 +22474,7 @@ br $__inlined_func$~lib/util/string/isSpace end i32.const 1 - local.get $4 + local.get $2 i32.const -8192 i32.add i32.const 10 @@ -22469,31 +22483,31 @@ drop block $break|0 block $case6|0 - local.get $4 + local.get $2 i32.const 5760 i32.eq br_if $case6|0 - local.get $4 + local.get $2 i32.const 8232 i32.eq br_if $case6|0 - local.get $4 + local.get $2 i32.const 8233 i32.eq br_if $case6|0 - local.get $4 + local.get $2 i32.const 8239 i32.eq br_if $case6|0 - local.get $4 + local.get $2 i32.const 8287 i32.eq br_if $case6|0 - local.get $4 + local.get $2 i32.const 12288 i32.eq br_if $case6|0 - local.get $4 + local.get $2 i32.const 65279 i32.eq br_if $case6|0 @@ -22517,24 +22531,24 @@ end loop $while-continue|1 local.get $1 - local.get $2 + local.get $3 i32.gt_u if (result i32) block $__inlined_func$~lib/util/string/isSpace0 (result i32) local.get $0 - local.get $2 + local.get $3 i32.add i32.load16_u - local.tee $4 + local.tee $2 i32.const 5760 i32.lt_u if - local.get $4 + local.get $2 i32.const 128 i32.or i32.const 160 i32.eq - local.get $4 + local.get $2 i32.const 9 i32.sub i32.const 4 @@ -22543,7 +22557,7 @@ br $__inlined_func$~lib/util/string/isSpace0 end i32.const 1 - local.get $4 + local.get $2 i32.const -8192 i32.add i32.const 10 @@ -22552,31 +22566,31 @@ drop block $break|01 block $case6|02 - local.get $4 + local.get $2 i32.const 5760 i32.eq br_if $case6|02 - local.get $4 + local.get $2 i32.const 8232 i32.eq br_if $case6|02 - local.get $4 + local.get $2 i32.const 8233 i32.eq br_if $case6|02 - local.get $4 + local.get $2 i32.const 8239 i32.eq br_if $case6|02 - local.get $4 + local.get $2 i32.const 8287 i32.eq br_if $case6|02 - local.get $4 + local.get $2 i32.const 12288 i32.eq br_if $case6|02 - local.get $4 + local.get $2 i32.const 65279 i32.eq br_if $case6|02 @@ -22591,10 +22605,10 @@ i32.const 0 end if - local.get $2 + local.get $3 i32.const 2 i32.add - local.set $2 + local.set $3 local.get $1 i32.const 2 i32.sub @@ -22613,12 +22627,12 @@ return end i32.const 0 - local.get $3 + local.get $4 i32.const 1 i32.shl local.get $1 i32.eq - local.get $2 + local.get $3 select if global.get $~lib/memory/__stack_pointer @@ -22632,11 +22646,11 @@ local.get $1 i32.const 1 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 i32.store - local.get $3 - local.get $0 local.get $2 + local.get $0 + local.get $3 i32.add local.get $1 call $~lib/memory/memory.copy @@ -22644,7 +22658,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 ) (func $~lib/string/String#concat (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -22676,7 +22690,7 @@ i32.shr_u i32.const 1 i32.shl - local.tee $2 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -22685,9 +22699,9 @@ i32.shr_u i32.const 1 i32.shl - local.tee $3 - i32.add local.tee $4 + i32.add + local.tee $2 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -22698,26 +22712,26 @@ return end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.const 1 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $2 i32.store - local.get $4 - local.get $0 local.get $2 + local.get $0 + local.get $3 call $~lib/memory/memory.copy local.get $2 - local.get $4 + local.get $3 i32.add local.get $1 - local.get $3 + local.get $4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $2 ) (func $~lib/string/String#repeat (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -22846,19 +22860,19 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 i32.ge_u if local.get $3 local.get $4 - i32.le_u + i32.ge_u if local.get $2 local.get $0 @@ -22879,7 +22893,7 @@ local.get $1 i32.const 0 call $~lib/string/String#indexOf - local.tee $6 + local.tee $1 i32.const -1 i32.xor if @@ -22889,53 +22903,53 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $1 - local.get $4 + local.tee $5 local.get $3 + local.get $4 i32.sub - local.tee $4 + local.tee $6 i32.add - local.tee $5 + local.tee $3 if global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $3 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $3 i32.store - local.get $7 + local.get $3 local.get $0 - local.get $6 + local.get $1 i32.const 1 i32.shl - local.tee $5 + local.tee $7 call $~lib/memory/memory.copy - local.get $5 + local.get $3 local.get $7 i32.add local.get $2 - local.get $1 + local.get $5 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $1 - local.get $6 + local.get $5 i32.add i32.const 1 i32.shl - local.get $7 - i32.add local.get $3 - local.get $6 + i32.add + local.get $1 + local.get $4 i32.add i32.const 1 i32.shl local.get $0 i32.add - local.get $4 local.get $6 + local.get $1 i32.sub i32.const 1 i32.shl @@ -22944,7 +22958,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $3 return end end @@ -22989,18 +23003,18 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $7 + local.tee $9 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $5 + local.tee $4 i32.ge_u if - local.get $5 - local.get $7 + local.get $4 + local.get $9 i32.ge_u if local.get $2 @@ -23020,7 +23034,7 @@ i32.const 1 i32.shr_u local.set $3 - local.get $7 + local.get $9 i32.eqz if local.get $3 @@ -23028,19 +23042,19 @@ br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.get $3 - local.get $5 + local.get $4 i32.const 1 i32.add i32.mul - local.get $5 + local.get $4 i32.add i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store - local.get $6 + local.get $5 local.get $2 local.get $3 i32.const 1 @@ -23050,15 +23064,15 @@ local.set $1 loop $for-loop|0 local.get $4 - local.get $5 - i32.lt_u + local.get $10 + i32.gt_u if local.get $1 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add - local.get $4 + local.get $10 i32.const 1 i32.shl local.get $0 @@ -23071,7 +23085,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add local.get $2 local.get $3 @@ -23082,10 +23096,10 @@ local.get $3 i32.add local.set $1 - local.get $4 + local.get $10 i32.const 1 i32.add - local.set $4 + local.set $10 br $for-loop|0 end end @@ -23093,49 +23107,49 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $5 return end local.get $3 - local.get $7 + local.get $9 i32.eq if global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 1 i32.shl - local.tee $4 + local.tee $5 i32.const 1 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $4 i32.store - local.get $5 - local.get $0 local.get $4 + local.get $0 + local.get $5 call $~lib/memory/memory.copy loop $while-continue|1 local.get $0 local.get $1 - local.get $9 + local.get $7 call $~lib/string/String#indexOf - local.tee $4 + local.tee $5 i32.const -1 i32.xor if - local.get $4 + local.get $5 i32.const 1 i32.shl - local.get $5 + local.get $4 i32.add local.get $2 local.get $3 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $4 - local.get $7 + local.get $5 + local.get $9 i32.add - local.set $9 + local.set $7 br $while-continue|1 end end @@ -23143,23 +23157,23 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $4 return end - local.get $5 - local.set $4 + local.get $4 + local.set $5 loop $while-continue|2 local.get $0 local.get $1 - local.get $9 + local.get $7 call $~lib/string/String#indexOf - local.tee $11 + local.tee $10 i32.const -1 i32.xor if - local.get $10 + local.get $6 if (result i32) - local.get $10 + local.get $6 i32.const 20 i32.sub i32.load offset=16 @@ -23171,58 +23185,58 @@ i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $6 i32.store offset=4 end - local.get $4 + local.get $5 local.get $3 local.get $8 - local.get $11 - local.get $9 + local.get $10 + local.get $7 i32.sub - local.tee $6 + local.tee $11 i32.add i32.add i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $10 - local.get $4 + local.get $6 + local.get $5 i32.const 1 i32.shl - local.tee $4 + local.tee $5 i32.const 1 i32.shl call $~lib/rt/itcms/__renew - local.tee $10 + local.tee $6 i32.store offset=4 end local.get $8 i32.const 1 i32.shl - local.get $10 + local.get $6 i32.add - local.get $9 + local.get $7 i32.const 1 i32.shl local.get $0 i32.add - local.get $6 + local.get $11 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $6 local.get $8 + local.get $11 i32.add - local.tee $6 + local.tee $7 i32.const 1 i32.shl - local.get $10 + local.get $6 i32.add local.get $2 local.get $3 @@ -23230,37 +23244,37 @@ i32.shl call $~lib/memory/memory.copy local.get $3 - local.get $6 + local.get $7 i32.add local.set $8 - local.get $7 - local.get $11 + local.get $9 + local.get $10 i32.add - local.set $9 + local.set $7 br $while-continue|2 end end - local.get $10 + local.get $6 if - local.get $4 - local.get $8 local.get $5 - local.get $9 + local.get $8 + local.get $4 + local.get $7 i32.sub local.tee $1 i32.add i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $10 - local.get $4 + local.get $6 + local.get $5 i32.const 1 i32.shl - local.tee $4 + local.tee $5 i32.const 1 i32.shl call $~lib/rt/itcms/__renew - local.tee $10 + local.tee $6 i32.store offset=4 end local.get $1 @@ -23268,9 +23282,9 @@ local.get $8 i32.const 1 i32.shl - local.get $10 + local.get $6 i32.add - local.get $9 + local.get $7 i32.const 1 i32.shl local.get $0 @@ -23280,7 +23294,7 @@ i32.shl call $~lib/memory/memory.copy end - local.get $4 + local.get $5 local.get $1 local.get $8 i32.add @@ -23288,19 +23302,19 @@ i32.gt_u if global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $6 local.get $0 i32.const 1 i32.shl call $~lib/rt/itcms/__renew - local.tee $10 + local.tee $6 i32.store offset=4 end global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $6 return end global.get $~lib/memory/__stack_pointer @@ -23403,24 +23417,24 @@ local.get $2 i32.const 1 i32.shl - local.tee $2 + local.tee $3 i32.const 1 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 local.get $1 i32.const 1 i32.shl local.get $0 i32.add - local.get $2 + local.get $3 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 ) (func $~lib/string/String#substr (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -23538,51 +23552,51 @@ i32.const 0 i32.gt_s select - local.tee $1 + local.tee $3 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $1 local.get $1 local.get $3 - i32.lt_s + i32.gt_s select - local.tee $4 + local.tee $3 local.get $2 i32.const 0 local.get $2 i32.const 0 i32.gt_s select - local.tee $1 - local.get $3 + local.tee $2 local.get $1 - local.get $3 - i32.lt_s + local.get $1 + local.get $2 + i32.gt_s select local.tee $2 local.get $2 - local.get $4 + local.get $3 i32.gt_s select i32.const 1 i32.shl - local.set $1 - local.get $4 + local.set $4 + local.get $3 local.get $2 local.get $2 - local.get $4 + local.get $3 i32.lt_s select i32.const 1 i32.shl - local.tee $2 - local.get $1 + local.tee $3 + local.get $4 i32.sub - local.tee $4 + local.tee $2 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -23593,12 +23607,12 @@ return end i32.const 0 - local.get $3 + local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $3 i32.eq - local.get $1 + local.get $4 select if global.get $~lib/memory/__stack_pointer @@ -23609,22 +23623,22 @@ return end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 - local.get $0 local.get $1 - i32.add + local.get $0 local.get $4 + i32.add + local.get $2 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 ) (func $~lib/array/Array<~lib/string/String>#__get (param $0 i32) (param $1 i32) (result i32) global.get $~lib/memory/__stack_pointer @@ -23832,7 +23846,7 @@ i32.store local.get $2 i64.extend_i32_u - local.set $3 + local.set $7 loop $while-continue|0 local.get $1 i32.const 2 @@ -23846,7 +23860,7 @@ i32.shl local.get $0 i32.add - local.get $3 + local.get $7 i32.wrap_i64 i32.const 255 i32.and @@ -23856,10 +23870,10 @@ i32.add i32.load i32.store - local.get $3 + local.get $7 i64.const 8 i64.shr_u - local.set $3 + local.set $7 br $while-continue|0 end end @@ -23868,7 +23882,7 @@ i32.and if local.get $0 - local.get $3 + local.get $7 i32.wrap_i64 i32.const 6 i32.shl @@ -23882,15 +23896,15 @@ block $__inlined_func$~lib/util/number/ulog_base (result i32) local.get $2 i64.extend_i32_u - local.tee $6 - local.set $3 + local.tee $4 + local.set $7 local.get $1 i32.popcnt i32.const 1 i32.eq if i32.const 63 - local.get $3 + local.get $7 i64.clz i32.wrap_i64 i32.sub @@ -23905,23 +23919,23 @@ end local.get $1 i64.extend_i32_s - local.tee $7 - local.set $4 + local.tee $3 + local.set $6 i32.const 1 local.set $0 loop $while-continue|00 - local.get $3 - local.get $4 - i64.ge_u + local.get $6 + local.get $7 + i64.le_u if - local.get $3 - local.get $4 + local.get $7 + local.get $6 i64.div_u - local.set $3 - local.get $4 - local.get $4 + local.set $7 + local.get $6 + local.get $6 i64.mul - local.set $4 + local.set $6 local.get $0 i32.const 1 i32.shl @@ -23930,14 +23944,14 @@ end end loop $while-continue|1 - local.get $3 + local.get $7 i64.const 1 i64.ge_u if - local.get $3 local.get $7 + local.get $3 i64.div_u - local.set $3 + local.set $7 local.get $0 i32.const 1 i32.add @@ -23959,7 +23973,7 @@ local.tee $0 i32.store local.get $0 - local.get $6 + local.get $4 local.get $2 local.get $1 call $~lib/util/number/utoa64_any_core @@ -24254,8 +24268,8 @@ (local $2 i64) (local $3 i32) (local $4 i64) - (local $5 i64) - (local $6 i32) + (local $5 i32) + (local $6 i64) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -24310,54 +24324,54 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.wrap_i64 + local.tee $5 local.tee $1 - local.tee $3 i32.const 100000 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $3 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $3 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $3 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $3 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $3 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.tee $6 + local.tee $1 i32.const 1 i32.shl i32.const 1 @@ -24365,8 +24379,8 @@ local.tee $3 i32.store local.get $3 + local.get $5 local.get $1 - local.get $6 call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer @@ -24524,7 +24538,7 @@ end local.get $1 i64.extend_i32_s - local.tee $5 + local.tee $6 local.set $4 i32.const 1 local.set $3 @@ -24554,7 +24568,7 @@ i64.ge_u if local.get $2 - local.get $5 + local.get $6 i64.div_u local.set $2 local.get $3 @@ -24568,7 +24582,7 @@ i32.const 1 i32.sub end - local.tee $6 + local.tee $5 i32.const 1 i32.shl i32.const 1 @@ -24577,7 +24591,7 @@ i32.store local.get $3 local.get $0 - local.get $6 + local.get $5 local.get $1 call $~lib/util/number/utoa64_any_core end @@ -24593,8 +24607,8 @@ (local $3 i32) (local $4 i32) (local $5 i64) - (local $6 i64) - (local $7 i32) + (local $6 i32) + (local $7 i64) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -24709,7 +24723,7 @@ end local.get $4 i32.add - local.tee $7 + local.tee $6 i32.const 1 i32.shl i32.const 1 @@ -24718,7 +24732,7 @@ i32.store local.get $1 local.get $3 - local.get $7 + local.get $6 call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer @@ -24881,7 +24895,7 @@ end local.get $3 i64.extend_i32_s - local.tee $6 + local.tee $7 local.set $5 i32.const 1 local.set $1 @@ -24911,7 +24925,7 @@ i64.ge_u if local.get $2 - local.get $6 + local.get $7 i64.div_u local.set $2 local.get $1 @@ -24927,7 +24941,7 @@ end local.get $4 i32.add - local.tee $7 + local.tee $6 i32.const 1 i32.shl i32.const 1 @@ -24936,7 +24950,7 @@ i32.store local.get $1 local.get $0 - local.get $7 + local.get $6 local.get $3 call $~lib/util/number/utoa64_any_core end @@ -25079,16 +25093,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $0 i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $0 local.get $1 local.get $2 select @@ -25097,7 +25111,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $3 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/symbol.optimized.wat b/tests/compiler/std/symbol.optimized.wat index e5a0779f40..c595263cb2 100644 --- a/tests/compiler/std/symbol.optimized.wat +++ b/tests/compiler/std/symbol.optimized.wat @@ -228,7 +228,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -251,7 +251,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -261,23 +261,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -285,7 +285,7 @@ else i32.const 2656 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1328 @@ -295,7 +295,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 2660 @@ -310,27 +310,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -418,19 +418,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -455,9 +455,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -465,17 +465,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -763,10 +763,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -778,15 +778,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -816,7 +816,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -852,12 +852,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -875,11 +875,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 19088 @@ -887,14 +887,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -904,17 +904,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1392,14 +1392,14 @@ i32.sub i32.const -4 i32.and - local.tee $1 - i32.add local.tee $2 + i32.add + local.tee $1 i32.const 4 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1409,17 +1409,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 12 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1435,22 +1435,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $2 + local.get $1 i32.const 28 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 20 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 16 i32.sub i32.const 0 @@ -1461,11 +1461,11 @@ i32.and i32.const 24 i32.add - local.tee $2 + local.tee $1 i32.add local.set $0 - local.get $1 local.get $2 + local.get $1 i32.sub local.set $1 loop $while-continue|0 @@ -1570,7 +1570,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1596,32 +1596,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1637,16 +1637,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1654,7 +1654,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1662,8 +1662,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1680,7 +1680,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1690,13 +1690,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1709,40 +1709,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -1768,26 +1768,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2090,14 +2090,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2652,105 +2652,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2782,41 +2792,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3568,7 +3580,7 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $~lib/symbol/stringToId - local.tee $4 + local.tee $3 i32.store local.get $0 i32.const 4 @@ -3581,10 +3593,10 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $4 + local.get $3 i32.const 1056 call $~lib/util/hash/HASH<~lib/string/String> - local.tee $5 + local.tee $8 call $~lib/map/Map<~lib/string/String,usize>#find local.tee $0 if @@ -3592,15 +3604,15 @@ local.get $1 i32.store offset=4 else - local.get $4 + local.get $3 i32.load offset=16 - local.get $4 + local.get $3 i32.load offset=12 i32.eq if - local.get $4 + local.get $3 i32.load offset=20 - local.get $4 + local.get $3 i32.load offset=12 i32.const 3 i32.mul @@ -3608,10 +3620,10 @@ i32.div_s i32.lt_s if (result i32) - local.get $4 + local.get $3 i32.load offset=4 else - local.get $4 + local.get $3 i32.load offset=4 i32.const 1 i32.shl @@ -3642,7 +3654,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -3650,59 +3662,59 @@ i32.shl i32.const 3 i32.div_s - local.tee $8 + local.tee $9 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $2 i32.store offset=4 - local.get $4 + local.get $3 i32.load offset=8 - local.tee $3 - local.get $4 + local.tee $4 + local.get $3 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $9 + local.set $10 local.get $2 local.set $0 loop $while-continue|0 - local.get $3 - local.get $9 + local.get $4 + local.get $10 i32.ne if - local.get $3 + local.get $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.load - local.tee $10 + local.tee $7 i32.store offset=8 local.get $0 - local.get $10 + local.get $7 i32.store local.get $0 - local.get $3 + local.get $4 i32.load offset=4 i32.store offset=4 local.get $0 - local.get $10 + local.get $7 call $~lib/util/hash/HASH<~lib/string/String> local.get $6 i32.and i32.const 2 i32.shl - local.get $7 + local.get $5 i32.add - local.tee $10 + local.tee $7 i32.load i32.store offset=8 - local.get $10 + local.get $7 local.get $0 i32.store local.get $0 @@ -3710,41 +3722,41 @@ i32.add local.set $0 end - local.get $3 + local.get $4 i32.const 12 i32.add - local.set $3 + local.set $4 br $while-continue|0 end end - local.get $4 - local.get $7 + local.get $3 + local.get $5 i32.store - local.get $7 + local.get $5 if - local.get $4 - local.get $7 + local.get $3 + local.get $5 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $3 local.get $6 i32.store offset=4 - local.get $4 + local.get $3 local.get $2 i32.store offset=8 local.get $2 if - local.get $4 + local.get $3 local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $8 + local.get $3 + local.get $9 i32.store offset=12 - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -3753,12 +3765,12 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.load offset=8 local.tee $0 i32.store - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=16 local.tee $2 i32.const 1 @@ -3772,25 +3784,25 @@ local.tee $0 i32.const 1056 i32.store - local.get $4 + local.get $3 i32.const 1056 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link local.get $0 local.get $1 i32.store offset=4 - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $4 + local.get $3 i32.load - local.get $4 + local.get $3 i32.load offset=4 - local.get $5 + local.get $8 i32.and i32.const 2 i32.shl @@ -3809,7 +3821,7 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $~lib/symbol/idToString - local.tee $4 + local.tee $3 i32.store local.get $0 i32.const 4 @@ -3822,9 +3834,10 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $4 + local.get $3 i32.load local.get $1 + local.tee $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -3852,8 +3865,8 @@ i32.shr_u local.get $0 i32.xor - local.tee $5 - local.get $4 + local.tee $7 + local.get $3 i32.load offset=4 i32.and i32.const 2 @@ -3867,19 +3880,19 @@ if local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $2 + local.get $1 i32.const -2 i32.and local.set $0 @@ -3894,20 +3907,20 @@ local.get $0 i32.const 1056 i32.store offset=4 - local.get $4 + local.get $3 i32.const 1056 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link else - local.get $4 + local.get $3 i32.load offset=16 - local.get $4 + local.get $3 i32.load offset=12 i32.eq if - local.get $4 + local.get $3 i32.load offset=20 - local.get $4 + local.get $3 i32.load offset=12 i32.const 3 i32.mul @@ -3915,10 +3928,10 @@ i32.div_s i32.lt_s if (result i32) - local.get $4 + local.get $3 i32.load offset=4 else - local.get $4 + local.get $3 i32.load offset=4 i32.const 1 i32.shl @@ -3946,7 +3959,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -3958,37 +3971,37 @@ i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $4 + local.get $3 i32.load offset=8 - local.tee $3 - local.get $4 + local.tee $4 + local.get $3 i32.load offset=16 i32.const 12 i32.mul i32.add local.set $9 - local.get $2 + local.get $1 local.set $0 loop $while-continue|01 - local.get $3 + local.get $4 local.get $9 i32.ne if - local.get $3 + local.get $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $3 + local.get $4 i32.load local.tee $10 i32.store local.get $0 - local.get $3 + local.get $4 i32.load offset=4 i32.store offset=4 local.get $0 @@ -4024,7 +4037,7 @@ i32.and i32.const 2 i32.shl - local.get $7 + local.get $5 i32.add local.tee $10 i32.load @@ -4037,41 +4050,41 @@ i32.add local.set $0 end - local.get $3 + local.get $4 i32.const 12 i32.add - local.set $3 + local.set $4 br $while-continue|01 end end - local.get $4 - local.get $7 + local.get $3 + local.get $5 i32.store - local.get $7 + local.get $5 if - local.get $4 - local.get $7 + local.get $3 + local.get $5 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $3 local.get $6 i32.store offset=4 - local.get $4 - local.get $2 + local.get $3 + local.get $1 i32.store offset=8 - local.get $2 + local.get $1 if - local.get $4 - local.get $2 + local.get $3 + local.get $1 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $3 local.get $8 i32.store offset=12 - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -4080,52 +4093,52 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.load offset=8 local.tee $0 i32.store - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=16 - local.tee $2 + local.tee $1 i32.const 1 i32.add i32.store offset=16 - local.get $2 + local.get $1 i32.const 12 i32.mul local.get $0 i32.add local.tee $0 - local.get $1 + local.get $2 i32.store local.get $0 i32.const 1056 i32.store offset=4 - local.get $4 + local.get $3 i32.const 1056 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $4 + local.get $3 i32.load - local.get $4 + local.get $3 i32.load offset=4 - local.get $5 + local.get $7 i32.and i32.const 2 i32.shl i32.add - local.tee $2 + local.tee $1 i32.load i32.store offset=8 - local.get $2 + local.get $1 local.get $0 i32.store end @@ -4137,7 +4150,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 return end i32.const 19104 @@ -4280,15 +4293,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i64.const 0 i64.store offset=8 i32.const 1824 - local.set $2 - local.get $1 + local.set $1 + local.get $2 i32.const 1824 i32.store block $break|0 @@ -4310,77 +4323,77 @@ br_table $case0|0 $case1|0 $case2|0 $case3|0 $case4|0 $case5|0 $case6|0 $case7|0 $case8|0 $case9|0 $case10|0 $case11|0 end i32.const 1856 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 1856 i32.store br $break|0 end i32.const 1904 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 1904 i32.store br $break|0 end i32.const 1968 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 1968 i32.store br $break|0 end i32.const 2016 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 2016 i32.store br $break|0 end i32.const 2048 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 2048 i32.store br $break|0 end i32.const 2096 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 2096 i32.store br $break|0 end i32.const 2128 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 2128 i32.store br $break|0 end i32.const 2176 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 2176 i32.store br $break|0 end i32.const 2208 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 2208 i32.store br $break|0 end i32.const 2256 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 2256 i32.store br $break|0 end i32.const 2304 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 2304 i32.store @@ -4390,11 +4403,11 @@ if (result i32) global.get $~lib/memory/__stack_pointer global.get $~lib/symbol/idToString - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $1 + local.get $2 i32.load - local.get $1 + local.get $2 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -4405,36 +4418,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 i32.const 15 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 i32.const 13 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 i32.const 16 i32.shr_u - local.get $1 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=8 local.tee $3 i32.const 1 @@ -4443,7 +4456,7 @@ i32.const 0 else local.get $0 - local.get $1 + local.get $2 i32.load i32.eq end @@ -4451,14 +4464,14 @@ local.get $3 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|0 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 else i32.const 0 end @@ -4472,7 +4485,7 @@ local.get $2 local.get $0 call $~lib/map/Map#get - local.tee $2 + local.tee $1 i32.store end end @@ -4480,7 +4493,7 @@ i32.const 2352 i32.store offset=12 i32.const 2352 - local.get $2 + local.get $1 call $~lib/string/String.__concat local.set $0 global.get $~lib/memory/__stack_pointer @@ -4910,16 +4923,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $0 i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $0 local.get $1 local.get $2 select @@ -4928,7 +4941,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $3 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/typedarray.optimized.wat b/tests/compiler/std/typedarray.optimized.wat index 9b5b0965d0..d4139325ec 100644 --- a/tests/compiler/std/typedarray.optimized.wat +++ b/tests/compiler/std/typedarray.optimized.wat @@ -770,7 +770,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -793,7 +793,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -803,23 +803,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -827,7 +827,7 @@ else i32.const 16000 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1360 @@ -837,7 +837,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 16004 @@ -852,27 +852,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -960,19 +960,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -997,9 +997,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -1007,17 +1007,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -1305,10 +1305,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -1320,15 +1320,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -1358,7 +1358,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -1394,12 +1394,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -1417,11 +1417,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 33024 @@ -1429,14 +1429,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -1446,17 +1446,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1542,7 +1542,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $2 + local.set $1 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -1559,11 +1559,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -1605,9 +1605,9 @@ if local.get $0 i32.load - local.tee $1 + local.tee $2 if - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -1631,11 +1631,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -1661,7 +1661,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $2 + local.get $1 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -1881,7 +1881,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $2 local.get $0 i32.const 1073741820 i32.gt_u @@ -1907,34 +1907,34 @@ i32.const 4 i32.sub end - local.tee $3 - call $~lib/rt/tlsf/searchBlock local.tee $0 + call $~lib/rt/tlsf/searchBlock + local.tee $1 i32.eqz if memory.size - local.tee $0 - local.get $3 + local.tee $1 + local.get $0 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $0 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $0 i32.add else - local.get $3 + local.get $0 end i32.const 4 - local.get $1 + local.get $2 i32.load offset=1568 - local.get $0 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1948,16 +1948,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 - local.get $0 - local.get $2 + local.tee $3 + local.get $1 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1965,18 +1965,18 @@ unreachable end end + local.get $2 local.get $1 - local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 - local.get $3 + local.get $2 + local.get $0 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1987,11 +1987,11 @@ unreachable end end - local.get $0 + local.get $1 i32.load i32.const -4 i32.and - local.get $3 + local.get $0 i32.lt_u if i32.const 0 @@ -2001,13 +2001,13 @@ call $~lib/builtins/abort unreachable end + local.get $2 local.get $1 - local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $0 + local.get $1 i32.load - local.set $4 - local.get $3 + local.set $3 + local.get $0 i32.const 4 i32.add i32.const 15 @@ -2020,65 +2020,65 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const -4 i32.and - local.get $3 + local.get $0 i32.sub - local.tee $2 + local.tee $4 i32.const 16 i32.ge_u if - local.get $0 - local.get $4 + local.get $1 + local.get $3 i32.const 2 i32.and - local.get $3 + local.get $0 i32.or i32.store - local.get $3 local.get $0 + local.get $1 i32.const 4 i32.add i32.add - local.tee $3 - local.get $2 + local.tee $0 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 - local.get $3 + local.get $2 + local.get $0 call $~lib/rt/tlsf/insertBlock else - local.get $0 - local.get $4 + local.get $1 + local.get $3 i32.const -2 i32.and i32.store - local.get $0 + local.get $1 i32.const 4 i32.add - local.get $0 + local.get $1 i32.load i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.load i32.const -3 i32.and i32.store end - local.get $0 + local.get $1 i32.const 4 i32.add ) (func $~lib/memory/memory.fill (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i64) - (local $4 i32) + (local $3 i32) + (local $4 i64) (local $5 i32) block $~lib/util/memory/memset|inlined.0 local.get $2 @@ -2090,7 +2090,7 @@ local.get $0 local.get $2 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.sub local.get $1 @@ -2105,12 +2105,12 @@ local.get $0 local.get $1 i32.store8 offset=2 - local.get $4 + local.get $3 i32.const 2 i32.sub local.get $1 i32.store8 - local.get $4 + local.get $3 i32.const 3 i32.sub local.get $1 @@ -2122,7 +2122,7 @@ local.get $0 local.get $1 i32.store8 offset=3 - local.get $4 + local.get $3 i32.const 4 i32.sub local.get $1 @@ -2137,19 +2137,19 @@ i32.sub i32.const 3 i32.and - local.tee $4 + local.tee $5 i32.add - local.tee $0 + local.tee $3 local.get $1 i32.const 255 i32.and i32.const 16843009 i32.mul - local.tee $5 + local.tee $0 i32.store - local.get $0 + local.get $3 local.get $2 - local.get $4 + local.get $5 i32.sub i32.const -4 i32.and @@ -2158,101 +2158,101 @@ local.tee $1 i32.const 4 i32.sub - local.get $5 + local.get $0 i32.store local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 + local.get $3 local.get $0 - local.get $5 i32.store offset=4 + local.get $3 local.get $0 - local.get $5 i32.store offset=8 local.get $1 i32.const 12 i32.sub - local.get $5 + local.get $0 i32.store local.get $1 i32.const 8 i32.sub - local.get $5 + local.get $0 i32.store local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 + local.get $3 local.get $0 - local.get $5 i32.store offset=12 + local.get $3 local.get $0 - local.get $5 i32.store offset=16 + local.get $3 local.get $0 - local.get $5 i32.store offset=20 + local.get $3 local.get $0 - local.get $5 i32.store offset=24 local.get $1 i32.const 28 i32.sub - local.get $5 + local.get $0 i32.store local.get $1 i32.const 24 i32.sub - local.get $5 + local.get $0 i32.store local.get $1 i32.const 20 i32.sub - local.get $5 + local.get $0 i32.store local.get $1 i32.const 16 i32.sub - local.get $5 - i32.store - local.get $0 local.get $0 + i32.store + local.get $3 + local.get $3 i32.const 4 i32.and i32.const 24 i32.add - local.tee $4 + local.tee $5 i32.add local.set $1 local.get $2 - local.get $4 + local.get $5 i32.sub local.set $2 - local.get $5 + local.get $0 i64.extend_i32_u - local.tee $3 + local.tee $4 i64.const 32 i64.shl - local.get $3 + local.get $4 i64.or - local.set $3 + local.set $4 loop $while-continue|0 local.get $2 i32.const 32 i32.ge_u if local.get $1 - local.get $3 + local.get $4 i64.store local.get $1 - local.get $3 + local.get $4 i64.store offset=8 local.get $1 - local.get $3 + local.get $4 i64.store offset=16 local.get $1 - local.get $3 + local.get $4 i64.store offset=24 local.get $2 i32.const 32 @@ -2339,26 +2339,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -3418,13 +3418,13 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 f64) + (local $9 i32) (local $10 f64) - (local $11 i64) + (local $11 f64) (local $12 i32) (local $13 i32) (local $14 i32) - (local $15 i32) + (local $15 i64) local.get $1 i32.const 48 i32.le_s @@ -3452,14 +3452,14 @@ local.set $10 local.get $0 f64.load offset=8 - local.set $9 + local.set $11 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $9 + local.get $11 local.get $10 local.get $10 - local.get $9 + local.get $11 local.get $2 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -3469,20 +3469,20 @@ select f64.store local.get $10 - local.get $9 + local.get $11 local.get $1 select local.set $10 local.get $0 f64.load offset=16 - local.set $9 + local.set $11 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $9 + local.get $11 local.get $10 local.get $10 - local.get $9 + local.get $11 local.get $2 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -3493,7 +3493,7 @@ f64.store offset=8 local.get $0 local.get $10 - local.get $9 + local.get $11 local.get $1 select f64.store offset=16 @@ -3503,14 +3503,14 @@ local.set $10 local.get $0 f64.load offset=8 - local.set $9 + local.set $11 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $9 + local.get $11 local.get $10 local.get $10 - local.get $9 + local.get $11 local.get $2 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -3521,7 +3521,7 @@ f64.store local.get $0 local.get $10 - local.get $9 + local.get $11 local.get $1 select f64.store offset=8 @@ -3548,28 +3548,28 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $14 + local.tee $9 local.get $5 i32.add - local.set $13 + local.set $12 i32.const 0 - local.set $7 + local.set $5 loop $for-loop|1 + local.get $5 local.get $6 - local.get $7 - i32.gt_u + i32.lt_u if - local.get $7 + local.get $5 i32.const 2 i32.shl - local.get $14 + local.get $9 i32.add i32.const -1 i32.store - local.get $7 + local.get $5 i32.const 1 i32.add - local.set $7 + local.set $5 br $for-loop|1 end end @@ -3577,117 +3577,117 @@ i32.const 3 i32.shl call $~lib/rt/tlsf/__alloc - local.set $12 + local.set $13 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $15 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $6 + local.tee $1 i32.const 1 i32.add - local.tee $1 + local.tee $5 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $15 + local.get $8 i32.const 31 - local.get $15 + local.get $8 i32.const 31 i32.lt_s select - local.tee $6 - local.get $1 + local.tee $1 + local.get $5 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $6 - local.get $15 + local.get $1 + local.get $8 i32.lt_s if local.get $0 - local.get $6 + local.get $1 i32.const 1 i32.add - local.tee $5 - local.get $15 + local.tee $6 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $7 - local.get $5 + local.tee $5 + local.get $6 i32.sub i32.const 1 i32.add - local.tee $8 + local.tee $7 i32.const 32 i32.lt_s if local.get $0 - local.get $5 - local.get $15 - local.get $5 + local.get $6 + local.get $8 + local.get $6 i32.const 31 i32.add - local.tee $1 - local.get $1 - local.get $15 + local.tee $5 + local.get $5 + local.get $8 i32.gt_s select - local.tee $7 - local.get $8 + local.tee $5 + local.get $7 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $5 + local.get $6 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $15 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $11 + local.tee $15 i64.div_u local.get $5 - local.get $7 + local.get $6 i32.add i32.const 1 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $11 + local.get $15 i64.div_u i64.xor i32.wrap_i64 i32.clz - local.set $1 + local.set $7 loop $for-loop|3 - local.get $1 local.get $4 - i32.lt_u + local.get $7 + i32.gt_u if local.get $4 i32.const 2 i32.shl - local.get $14 + local.get $9 i32.add i32.load - local.tee $8 + local.tee $14 i32.const -1 i32.ne if local.get $0 - local.get $8 - local.get $13 + local.get $14 + local.get $12 local.get $4 i32.const 2 i32.shl @@ -3696,16 +3696,16 @@ i32.load i32.const 1 i32.add - local.get $6 - local.get $12 + local.get $1 + local.get $13 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $14 + local.get $9 i32.add i32.const -1 i32.store - local.get $8 + local.get $14 local.set $3 end local.get $4 @@ -3715,8 +3715,8 @@ br $for-loop|3 end end - local.get $14 - local.get $1 + local.get $9 + local.get $7 i32.const 2 i32.shl local.tee $4 @@ -3724,15 +3724,15 @@ local.get $3 i32.store local.get $4 - local.get $13 + local.get $12 i32.add - local.get $6 + local.get $1 i32.store - local.get $5 + local.get $6 local.set $3 + local.get $5 + local.set $1 local.get $7 - local.set $6 - local.get $1 local.set $4 br $while-continue|2 end @@ -3743,7 +3743,7 @@ local.get $4 i32.const 2 i32.shl - local.get $14 + local.get $9 i32.add i32.load local.tee $1 @@ -3755,13 +3755,13 @@ local.get $4 i32.const 2 i32.shl - local.get $13 + local.get $12 i32.add i32.load i32.const 1 i32.add - local.get $15 - local.get $12 + local.get $8 + local.get $13 local.get $2 call $~lib/util/sort/mergeRuns end @@ -3772,9 +3772,9 @@ br $for-loop|4 end end - local.get $12 + local.get $13 call $~lib/rt/tlsf/__free - local.get $14 + local.get $9 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 f64) (param $1 f64) (result i32) @@ -4419,105 +4419,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -4549,41 +4559,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -5818,7 +5830,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $2 i32.load i32.const -4 i32.and @@ -5827,20 +5839,20 @@ local.get $1 i32.ge_u if - local.get $3 + local.get $2 local.get $1 i32.store offset=16 local.get $0 return end local.get $1 - local.get $3 + local.get $2 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.load offset=16 local.tee $0 local.get $0 @@ -5848,7 +5860,7 @@ i32.gt_u select call $~lib/memory/memory.copy - local.get $2 + local.get $3 ) (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint8Array,u8>~anonymous|0 (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 @@ -6142,28 +6154,28 @@ i32.const 8 i32.shl i32.clz - local.tee $2 + local.tee $4 i32.sub - local.set $4 + local.set $2 local.get $1 - local.get $2 + local.get $4 i32.shl local.set $1 - local.get $4 + local.get $2 i32.const 0 i32.gt_s if (result i32) local.get $1 i32.const 8388608 i32.sub - local.get $4 + local.get $2 i32.const 23 i32.shl i32.or else local.get $1 i32.const 1 - local.get $4 + local.get $2 i32.sub i32.shr_u end @@ -6187,7 +6199,7 @@ i64.shr_u i64.const 2047 i64.and - local.tee $5 + local.tee $6 i64.const 2047 i64.eq if @@ -6217,19 +6229,19 @@ local.get $4 i64.const 63 i64.shr_u - local.set $6 - local.get $5 + local.set $5 + local.get $6 i64.eqz if (result i64) local.get $4 i64.const 1 - local.get $5 + local.get $6 local.get $4 i64.const 12 i64.shl i64.clz i64.sub - local.tee $5 + local.tee $6 i64.sub i64.shl else @@ -6241,7 +6253,7 @@ end local.set $3 loop $while-continue|0 - local.get $5 + local.get $6 i64.const 1024 i64.gt_s if @@ -6266,14 +6278,14 @@ i64.const 1 i64.shl local.set $3 - local.get $5 + local.get $6 i64.const 1 i64.sub - local.set $5 + local.set $6 br $while-continue|0 end end - local.get $5 + local.get $6 local.get $3 i64.const 4503599627370496 i64.ge_u @@ -6295,32 +6307,32 @@ i64.const 11 i64.shl i64.clz - local.tee $5 + local.tee $4 i64.sub - local.set $4 + local.set $6 local.get $3 - local.get $5 + local.get $4 i64.shl local.set $3 - local.get $4 + local.get $6 i64.const 0 i64.gt_s if (result i64) local.get $3 i64.const 4503599627370496 i64.sub - local.get $4 + local.get $6 i64.const 52 i64.shl i64.or else local.get $3 i64.const 1 - local.get $4 + local.get $6 i64.sub i64.shr_u end - local.get $6 + local.get $5 i64.const 63 i64.shl i64.or @@ -6332,9 +6344,9 @@ (func $~lib/typedarray/Int8Array#reverse (param $0 i32) (result i32) (local $1 i32) (local $2 i32) - (local $3 i64) + (local $3 i32) (local $4 i32) - (local $5 i32) + (local $5 i64) (local $6 i32) (local $7 i32) (local $8 i64) @@ -6343,15 +6355,15 @@ local.set $2 local.get $0 i32.load offset=8 - local.tee $5 + local.tee $3 i32.const 1 i32.gt_u if - local.get $5 + local.get $3 i32.const 1 i32.shr_u local.set $4 - local.get $5 + local.get $3 i32.const 8 i32.sub local.set $6 @@ -6367,18 +6379,18 @@ i32.add local.tee $7 i64.load - local.tee $3 + local.tee $5 i64.const 8 i64.shr_u i64.const 71777214294589695 i64.and - local.get $3 + local.get $5 i64.const 71777214294589695 i64.and i64.const 8 i64.shl i64.or - local.set $3 + local.set $5 local.get $7 local.get $2 local.get $6 @@ -6413,12 +6425,12 @@ i64.rotr i64.store local.get $7 - local.get $3 + local.get $5 i64.const 16 i64.shr_u i64.const 281470681808895 i64.and - local.get $3 + local.get $5 i64.const 281470681808895 i64.and i64.const 16 @@ -6434,10 +6446,10 @@ br $while-continue|0 end end - local.get $5 + local.get $3 i32.const 1 i32.sub - local.set $5 + local.set $3 loop $while-continue|1 local.get $1 local.get $4 @@ -6450,7 +6462,7 @@ i32.load8_u local.set $7 local.get $6 - local.get $5 + local.get $3 local.get $1 i32.sub local.get $2 @@ -6486,50 +6498,50 @@ i32.load offset=8 i32.const 1 i32.shr_u - local.tee $5 + local.tee $3 i32.const 1 i32.gt_u if - local.get $5 + local.get $3 i32.const 1 i32.shr_u - local.set $3 - local.get $5 + local.set $4 + local.get $3 i32.const 2 i32.sub - local.set $6 + local.set $5 loop $while-continue|0 - local.get $3 + local.get $4 local.get $1 i32.const 1 i32.add i32.gt_u if - local.get $6 + local.get $5 local.get $1 i32.sub i32.const 1 i32.shl local.get $2 i32.add - local.tee $7 + local.tee $6 i32.load i32.const 16 i32.rotr - local.set $4 - local.get $7 + local.set $7 + local.get $6 local.get $1 i32.const 1 i32.shl local.get $2 i32.add - local.tee $7 + local.tee $6 i32.load i32.const 16 i32.rotr i32.store + local.get $6 local.get $7 - local.get $4 i32.store local.get $1 i32.const 2 @@ -6538,13 +6550,13 @@ br $while-continue|0 end end - local.get $5 + local.get $3 i32.const 1 i32.sub - local.set $4 + local.set $3 loop $while-continue|1 local.get $1 - local.get $3 + local.get $4 i32.lt_u if local.get $1 @@ -6556,7 +6568,7 @@ i32.load16_u local.set $6 local.get $5 - local.get $4 + local.get $3 local.get $1 i32.sub i32.const 1 @@ -24113,58 +24125,58 @@ end local.get $1 i32.extend8_s - local.tee $1 local.tee $3 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $3 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $3 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $3 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $3 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $3 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.set $3 + local.set $1 local.get $0 + local.get $3 local.get $1 local.get $2 - local.get $3 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut @@ -24417,14 +24429,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -24464,59 +24476,59 @@ local.get $1 i32.const 255 i32.and - local.tee $1 local.tee $2 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $1 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $1 ) (func $~lib/typedarray/Uint8Array#join (param $0 i32) (result i32) (local $1 i32) @@ -24714,58 +24726,58 @@ end local.get $1 i32.extend16_s - local.tee $1 local.tee $3 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $3 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $3 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $3 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $3 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $3 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.set $3 + local.set $1 local.get $0 + local.get $3 local.get $1 local.get $2 - local.get $3 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut @@ -24955,59 +24967,59 @@ local.get $1 i32.const 65535 i32.and - local.tee $1 local.tee $2 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $1 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $1 ) (func $~lib/typedarray/Uint16Array#join (param $0 i32) (result i32) (local $1 i32) @@ -25661,7 +25673,7 @@ local.get $2 i32.const 4 i32.sub - local.tee $3 + local.tee $2 i32.const 1 i32.shl local.get $0 @@ -25675,10 +25687,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $4 + local.tee $3 i32.const 10000 i32.rem_u - local.tee $2 + local.tee $4 i32.const 100 i32.div_u i32.const 2 @@ -25686,7 +25698,7 @@ i32.const 8012 i32.add i64.load32_u - local.get $2 + local.get $4 i32.const 100 i32.rem_u i32.const 2 @@ -25698,7 +25710,7 @@ i64.shl i64.or i64.store - local.get $3 + local.get $2 i32.const 4 i32.sub local.tee $2 @@ -25706,7 +25718,7 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $3 i32.const 10000 i32.div_u local.tee $3 @@ -25745,7 +25757,7 @@ local.get $1 i64.const 0 i64.lt_s - local.tee $2 + local.tee $3 if local.get $0 i32.const 45 @@ -25759,7 +25771,7 @@ i64.const 10 i64.lt_u if - local.get $2 + local.get $3 i32.const 1 i32.shl local.get $0 @@ -25768,7 +25780,7 @@ i64.const 48 i64.or i64.store16 - local.get $2 + local.get $3 i32.const 1 i32.add return @@ -25779,58 +25791,58 @@ if local.get $1 i32.wrap_i64 - local.tee $3 local.tee $4 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $4 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $4 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $4 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $4 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $4 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $4 + local.set $2 local.get $0 - local.get $3 - local.get $2 local.get $4 + local.get $2 + local.get $3 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut @@ -25887,7 +25899,7 @@ i32.add end end - local.get $2 + local.get $3 i32.add local.tee $0 call $~lib/util/number/utoa64_dec_lut @@ -25904,7 +25916,7 @@ (local $7 i32) local.get $0 i32.load offset=4 - local.set $5 + local.set $4 local.get $0 i32.load offset=8 i32.const 3 @@ -25928,7 +25940,7 @@ local.get $1 i32.const 1 i32.sub - local.tee $4 + local.tee $3 i32.const 0 i32.lt_s if @@ -25941,10 +25953,10 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $4 + local.get $3 i32.eqz if - local.get $5 + local.get $4 i64.load i64.extend32_s local.set $2 @@ -26128,12 +26140,12 @@ br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 9580 i32.load i32.const 1 i32.shr_u - local.tee $6 + local.tee $5 i32.const 21 i32.add i32.mul @@ -26148,25 +26160,25 @@ i32.store loop $for-loop|0 local.get $3 - local.get $4 - i32.lt_s + local.get $6 + i32.gt_s if local.get $0 i32.const 1 i32.shl local.get $1 i32.add - local.get $3 + local.get $6 i32.const 3 i32.shl - local.get $5 + local.get $4 i32.add i64.load call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $6 + local.get $5 if local.get $0 i32.const 1 @@ -26174,19 +26186,19 @@ local.get $1 i32.add i32.const 9584 - local.get $6 + local.get $5 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $6 + local.get $5 i32.add local.set $0 end - local.get $3 + local.get $6 i32.const 1 i32.add - local.set $3 + local.set $6 br $for-loop|0 end end @@ -26196,10 +26208,10 @@ i32.shl local.get $1 i32.add - local.get $4 + local.get $3 i32.const 3 i32.shl - local.get $5 + local.get $4 i32.add i64.load call $~lib/util/number/itoa_buffered @@ -26379,7 +26391,7 @@ (local $7 i32) local.get $0 i32.load offset=4 - local.set $3 + local.set $4 local.get $0 i32.load offset=8 i32.const 3 @@ -26403,7 +26415,7 @@ local.get $1 i32.const 1 i32.sub - local.tee $7 + local.tee $3 i32.const 0 i32.lt_s if @@ -26416,10 +26428,10 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $7 + local.get $3 i32.eqz if - local.get $3 + local.get $4 i64.load local.set $2 global.get $~lib/memory/__stack_pointer @@ -26582,18 +26594,18 @@ br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $3 i32.const 9580 i32.load i32.const 1 i32.shr_u - local.tee $4 + local.tee $5 i32.const 20 i32.add i32.mul i32.const 20 i32.add - local.tee $6 + local.tee $7 i32.const 1 i32.shl i32.const 1 @@ -26601,26 +26613,26 @@ local.tee $1 i32.store loop $for-loop|0 - local.get $5 - local.get $7 - i32.lt_s + local.get $3 + local.get $6 + i32.gt_s if local.get $0 i32.const 1 i32.shl local.get $1 i32.add - local.get $5 + local.get $6 i32.const 3 i32.shl - local.get $3 + local.get $4 i32.add i64.load call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $4 + local.get $5 if local.get $0 i32.const 1 @@ -26628,32 +26640,32 @@ local.get $1 i32.add i32.const 9584 - local.get $4 + local.get $5 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $4 + local.get $5 i32.add local.set $0 end - local.get $5 + local.get $6 i32.const 1 i32.add - local.set $5 + local.set $6 br $for-loop|0 end end - local.get $6 + local.get $7 local.get $0 i32.const 1 i32.shl local.get $1 i32.add - local.get $7 + local.get $3 i32.const 3 i32.shl - local.get $3 + local.get $4 i32.add i64.load call $~lib/util/number/itoa_buffered @@ -27270,82 +27282,83 @@ i32.const 101 i32.store16 offset=2 local.get $0 + local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $1 + local.tee $0 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $1 + local.get $0 i32.sub - local.set $1 + local.set $0 end - local.get $1 - local.tee $4 + local.get $0 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $4 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $4 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $4 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $4 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $4 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $4 - local.get $1 - local.get $4 + local.set $2 + local.get $0 + local.get $2 i32.const 1 i32.add - local.tee $1 + local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $1 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 - local.get $1 + local.get $0 i32.const 2 i32.add else @@ -27368,87 +27381,87 @@ local.get $0 local.get $2 i32.add - local.tee $0 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $0 + local.get $2 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $2 + local.tee $0 i32.const 0 i32.lt_s - local.tee $3 + local.tee $4 if i32.const 0 - local.get $2 + local.get $0 i32.sub - local.set $2 + local.set $0 end - local.get $2 - local.tee $5 + local.get $0 + local.tee $3 i32.const 100000 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 100 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $5 + local.get $3 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $5 + local.get $3 i32.const 1000 i32.ge_u i32.add end else - local.get $5 + local.get $3 i32.const 10000000 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $5 + local.get $3 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $5 + local.get $3 i32.const 100000000 i32.ge_u i32.add end end - local.set $5 - local.get $2 - local.get $5 + local.set $3 + local.get $0 + local.get $3 i32.const 1 i32.add - local.tee $2 + local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $2 i32.const 45 i32.const 43 - local.get $3 + local.get $4 select i32.store16 offset=4 + local.get $0 local.get $1 - local.get $2 i32.add i32.const 2 i32.add @@ -27461,14 +27474,14 @@ (local $2 i64) (local $3 i32) (local $4 i64) - (local $5 i64) + (local $5 i32) (local $6 i64) - (local $7 i32) - (local $8 i32) - (local $9 i32) + (local $7 i64) + (local $8 i64) + (local $9 i64) (local $10 i64) - (local $11 i64) - (local $12 i64) + (local $11 i32) + (local $12 i32) (local $13 i64) (local $14 i64) local.get $1 @@ -27491,11 +27504,11 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.set $7 + local.set $5 local.get $2 i64.const 4503599627370495 i64.and - local.get $7 + local.get $5 i32.const 0 i32.ne i64.extend_i32_u @@ -27503,13 +27516,13 @@ i64.shl i64.add local.set $2 - local.get $7 + local.get $5 i32.const 1 - local.get $7 + local.get $5 select i32.const 1075 i32.sub - local.tee $7 + local.tee $11 i32.const 1 i32.sub local.get $2 @@ -27520,11 +27533,11 @@ local.tee $4 i64.clz i32.wrap_i64 - local.tee $8 + local.tee $12 i32.sub - local.set $9 + local.set $5 local.get $4 - local.get $8 + local.get $12 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -27534,25 +27547,25 @@ i64.eq i32.const 1 i32.add - local.tee $8 + local.tee $12 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $7 - local.get $8 + local.get $11 + local.get $12 i32.sub - local.get $9 + local.get $5 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $9 + local.get $5 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $7 + local.tee $5 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -27561,9 +27574,9 @@ f64.add local.tee $1 i32.trunc_f64_s - local.tee $8 + local.tee $11 local.get $1 - local.get $8 + local.get $11 f64.convert_i32_s f64.ne i32.add @@ -27571,18 +27584,18 @@ i32.shr_s i32.const 1 i32.add - local.tee $8 + local.tee $11 i32.const 3 i32.shl - local.tee $9 + local.tee $12 i32.sub global.set $~lib/util/number/_K - local.get $9 + local.get $12 i32.const 9864 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $8 + local.get $11 i32.const 1 i32.shl i32.const 10560 @@ -27593,62 +27606,62 @@ local.get $2 i64.clz i64.shl - local.tee $4 + local.tee $2 i64.const 4294967295 i64.and - local.set $2 - local.get $4 + local.set $6 + local.get $2 i64.const 32 i64.shr_u - local.tee $6 + local.tee $13 global.get $~lib/util/number/_frc_pow - local.tee $5 + local.tee $4 i64.const 4294967295 i64.and - local.tee $10 - local.tee $4 + local.tee $2 + local.tee $7 i64.mul - local.get $2 - local.get $4 + local.get $6 + local.get $7 i64.mul i64.const 32 i64.shr_u i64.add - local.set $4 - local.get $5 + local.set $7 + local.get $4 i64.const 32 i64.shr_u - local.tee $11 - local.set $5 + local.tee $4 + local.set $8 global.get $~lib/util/number/_frc_plus - local.tee $12 + local.tee $10 i64.const 4294967295 i64.and - local.set $13 - local.get $12 + local.set $9 + local.get $10 i64.const 32 i64.shr_u - local.tee $12 - local.get $10 + local.tee $14 + local.get $2 i64.mul - local.get $10 - local.get $13 + local.get $2 + local.get $9 i64.mul i64.const 32 i64.shr_u i64.add - local.set $14 - local.get $11 - local.get $12 - i64.mul + local.set $10 + local.get $4 local.get $14 + i64.mul + local.get $10 i64.const 32 i64.shr_u i64.add - local.get $11 - local.get $13 + local.get $4 + local.get $9 i64.mul - local.get $14 + local.get $10 i64.const 4294967295 i64.and i64.add @@ -27659,42 +27672,42 @@ i64.add i64.const 1 i64.sub - local.set $12 + local.set $9 global.get $~lib/util/number/_frc_minus - local.tee $13 + local.tee $14 i64.const 4294967295 i64.and - local.set $14 - local.get $13 + local.set $10 + local.get $14 i64.const 32 i64.shr_u - local.tee $13 - local.get $10 + local.tee $14 + local.get $2 i64.mul + local.get $2 local.get $10 - local.get $14 i64.mul i64.const 32 i64.shr_u i64.add - local.set $10 + local.set $2 local.get $3 i32.const 1 i32.shl local.get $0 i32.add local.get $0 - local.get $5 - local.get $6 + local.get $8 + local.get $13 i64.mul - local.get $4 + local.get $7 i64.const 32 i64.shr_u i64.add - local.get $2 - local.get $5 + local.get $6 + local.get $8 i64.mul - local.get $4 + local.get $7 i64.const 4294967295 i64.and i64.add @@ -27703,24 +27716,24 @@ i64.const 32 i64.shr_u i64.add - local.get $12 + local.get $9 global.get $~lib/util/number/_exp_pow - local.get $7 + local.get $5 i32.add i32.const -64 i32.sub - local.get $12 - local.get $11 - local.get $13 + local.get $9 + local.get $4 + local.get $14 i64.mul - local.get $10 + local.get $2 i64.const 32 i64.shr_u i64.add - local.get $11 - local.get $14 - i64.mul + local.get $4 local.get $10 + i64.mul + local.get $2 i64.const 4294967295 i64.and i64.add @@ -28278,25 +28291,25 @@ end local.get $0 i32.load offset=4 - local.set $3 + local.set $0 i32.const 11012 i32.load - local.set $0 + local.set $2 i32.const 11020 i32.load - local.set $2 + local.set $3 loop $for-loop|0 local.get $1 - local.get $2 + local.get $3 i32.lt_s if + local.get $0 local.get $1 - local.get $3 i32.add local.get $1 i32.const 2 i32.shl - local.get $0 + local.get $2 i32.add i32.load i32.store8 @@ -28332,10 +28345,10 @@ i32.load offset=4 i32.const 6 i32.add - local.set $3 + local.set $0 local.get $1 i32.load offset=4 - local.set $0 + local.set $3 local.get $1 i32.load offset=8 i32.const 3 @@ -28346,13 +28359,13 @@ local.get $2 i32.gt_s if + local.get $0 local.get $2 - local.get $3 i32.add local.get $2 i32.const 3 i32.shl - local.get $0 + local.get $3 i32.add i64.load i64.store8 @@ -28410,10 +28423,10 @@ i32.load offset=4 i32.const 4 i32.add - local.set $3 + local.set $0 local.get $1 i32.load offset=4 - local.set $0 + local.set $3 local.get $1 i32.load offset=8 i32.const 1 @@ -28424,13 +28437,13 @@ local.get $2 i32.gt_s if + local.get $0 local.get $2 - local.get $3 i32.add local.get $2 i32.const 1 i32.shl - local.get $0 + local.get $3 i32.add i32.load16_s i32.store8 @@ -28504,10 +28517,10 @@ local.get $0 i32.load offset=4 i32.add - local.set $2 + local.set $0 local.get $1 i32.load offset=4 - local.set $0 + local.set $2 local.get $1 i32.load offset=8 i32.const 3 @@ -28518,13 +28531,13 @@ local.get $3 i32.gt_s if - local.get $2 + local.get $0 local.get $3 i32.add local.get $3 i32.const 3 i32.shl - local.get $0 + local.get $2 i32.add i64.load local.tee $4 @@ -28591,7 +28604,7 @@ local.set $2 local.get $1 i32.load offset=4 - local.set $0 + local.set $4 local.get $1 i32.load offset=8 i32.const 1 @@ -28608,17 +28621,17 @@ local.get $3 i32.const 1 i32.shl - local.get $0 + local.get $4 i32.add i32.load16_s - local.tee $4 + local.tee $0 i32.const 255 - local.get $4 + local.get $0 i32.sub i32.const 31 i32.shr_s i32.or - local.get $4 + local.get $0 i32.const 31 i32.shr_s i32.const -1 @@ -28654,27 +28667,27 @@ end local.get $0 i32.load offset=4 - local.set $3 + local.set $0 i32.const 11012 i32.load - local.set $0 + local.set $2 i32.const 11020 i32.load - local.set $2 + local.set $3 loop $for-loop|0 local.get $1 - local.get $2 + local.get $3 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $3 + local.get $0 i32.add local.get $1 i32.const 2 i32.shl - local.get $0 + local.get $2 i32.add i32.load i32.store16 @@ -28712,10 +28725,10 @@ i32.load offset=4 i32.const 12 i32.add - local.set $3 + local.set $0 local.get $1 i32.load offset=4 - local.set $0 + local.set $3 local.get $1 i32.load offset=8 i32.const 3 @@ -28729,12 +28742,12 @@ local.get $2 i32.const 1 i32.shl - local.get $3 + local.get $0 i32.add local.get $2 i32.const 3 i32.shl - local.get $0 + local.get $3 i32.add i64.load i64.store16 @@ -28766,10 +28779,10 @@ end local.get $0 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=4 - local.set $0 + local.set $3 local.get $1 i32.load offset=8 local.set $1 @@ -28781,10 +28794,10 @@ local.get $2 i32.const 1 i32.shl - local.get $3 - i32.add local.get $0 + i32.add local.get $2 + local.get $3 i32.add i32.load8_u i32.store16 @@ -28851,25 +28864,25 @@ i32.load offset=4 i32.const 14 i32.add - local.set $3 + local.set $0 i32.const 11268 i32.load - local.set $0 + local.set $2 i32.const 11276 i32.load - local.set $2 + local.set $3 loop $for-loop|0 local.get $1 - local.get $2 + local.get $3 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $3 - i32.add local.get $0 + i32.add local.get $1 + local.get $2 i32.add i32.load8_s i32.store16 @@ -28948,10 +28961,10 @@ i32.load offset=4 i32.const 24 i32.add - local.set $3 + local.set $0 local.get $1 i32.load offset=4 - local.set $0 + local.set $3 local.get $1 i32.load offset=8 i32.const 3 @@ -28965,12 +28978,12 @@ local.get $2 i32.const 2 i32.shl - local.get $3 + local.get $0 i32.add local.get $2 i32.const 3 i32.shl - local.get $0 + local.get $3 i32.add i64.load i64.store32 @@ -29002,10 +29015,10 @@ end local.get $0 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=4 - local.set $0 + local.set $3 local.get $1 i32.load offset=8 local.set $1 @@ -29017,10 +29030,10 @@ local.get $2 i32.const 2 i32.shl - local.get $3 - i32.add local.get $0 + i32.add local.get $2 + local.get $3 i32.add i32.load8_u i32.store @@ -29058,10 +29071,10 @@ i32.load offset=4 i32.const 16 i32.add - local.set $3 + local.set $0 local.get $1 i32.load offset=4 - local.set $0 + local.set $3 local.get $1 i32.load offset=8 i32.const 1 @@ -29075,12 +29088,12 @@ local.get $2 i32.const 2 i32.shl - local.get $3 + local.get $0 i32.add local.get $2 i32.const 1 i32.shl - local.get $0 + local.get $3 i32.add i32.load16_s i32.store @@ -29117,25 +29130,25 @@ i32.load offset=4 i32.const 28 i32.add - local.set $3 + local.set $0 i32.const 11268 i32.load - local.set $0 + local.set $2 i32.const 11276 i32.load - local.set $2 + local.set $3 loop $for-loop|0 local.get $1 - local.get $2 + local.get $3 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $3 - i32.add local.get $0 + i32.add local.get $1 + local.get $2 i32.add i32.load8_s i32.store @@ -29168,27 +29181,27 @@ end local.get $0 i32.load offset=4 - local.set $3 + local.set $0 i32.const 11012 i32.load - local.set $0 + local.set $2 i32.const 11020 i32.load - local.set $2 + local.set $3 loop $for-loop|0 local.get $1 - local.get $2 + local.get $3 i32.lt_s if local.get $1 i32.const 3 i32.shl - local.get $3 + local.get $0 i32.add local.get $1 i32.const 2 i32.shl - local.get $0 + local.get $2 i32.add i64.load32_s i64.store @@ -29250,10 +29263,10 @@ end local.get $0 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=4 - local.set $0 + local.set $3 local.get $1 i32.load offset=8 local.set $1 @@ -29265,10 +29278,10 @@ local.get $2 i32.const 3 i32.shl - local.get $3 - i32.add local.get $0 + i32.add local.get $2 + local.get $3 i32.add i64.load8_u i64.store @@ -29306,10 +29319,10 @@ i32.load offset=4 i32.const 32 i32.add - local.set $3 + local.set $0 local.get $1 i32.load offset=4 - local.set $0 + local.set $3 local.get $1 i32.load offset=8 i32.const 1 @@ -29323,12 +29336,12 @@ local.get $2 i32.const 3 i32.shl - local.get $3 + local.get $0 i32.add local.get $2 i32.const 1 i32.shl - local.get $0 + local.get $3 i32.add i64.load16_s i64.store @@ -29365,25 +29378,25 @@ i32.load offset=4 i32.const 56 i32.add - local.set $3 + local.set $0 i32.const 11268 i32.load - local.set $0 + local.set $2 i32.const 11276 i32.load - local.set $2 + local.set $3 loop $for-loop|0 local.get $1 - local.get $2 + local.get $3 i32.lt_s if local.get $1 i32.const 3 i32.shl - local.get $3 - i32.add local.get $0 + i32.add local.get $1 + local.get $2 i32.add i64.load8_s i64.store @@ -29783,12 +29796,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) + (local $13 i64) local.get $1 i32.const 48 i32.le_s @@ -29912,7 +29925,7 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $11 + local.tee $9 local.get $5 i32.add local.set $10 @@ -29926,7 +29939,7 @@ local.get $5 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -29939,13 +29952,13 @@ end local.get $1 call $~lib/rt/tlsf/__alloc - local.set $9 + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $12 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -29957,9 +29970,9 @@ if local.get $0 i32.const 0 - local.get $12 + local.get $8 i32.const 31 - local.get $12 + local.get $8 i32.const 31 i32.lt_s select @@ -29970,7 +29983,7 @@ end loop $while-continue|2 local.get $1 - local.get $12 + local.get $8 i32.lt_s if local.get $0 @@ -29978,7 +29991,7 @@ i32.const 1 i32.add local.tee $6 - local.get $12 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -29992,13 +30005,13 @@ if local.get $0 local.get $6 - local.get $12 + local.get $8 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $12 + local.get $8 i32.gt_s select local.tee $5 @@ -30012,11 +30025,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $8 + local.tee $13 i64.div_u local.get $5 local.get $6 @@ -30026,7 +30039,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $13 i64.div_u i64.xor i32.wrap_i64 @@ -30040,15 +30053,15 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load - local.tee $13 + local.tee $12 i32.const -1 i32.ne if local.get $0 - local.get $13 + local.get $12 local.get $10 local.get $4 i32.const 2 @@ -30059,15 +30072,15 @@ i32.const 1 i32.add local.get $1 - local.get $9 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $11 + local.get $9 i32.add i32.const -1 i32.store - local.get $13 + local.get $12 local.set $3 end local.get $4 @@ -30077,7 +30090,7 @@ br $for-loop|3 end end - local.get $11 + local.get $9 local.get $7 i32.const 2 i32.shl @@ -30105,7 +30118,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $1 @@ -30122,8 +30135,8 @@ i32.load i32.const 1 i32.add - local.get $12 - local.get $9 + local.get $8 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end @@ -30134,10 +30147,10 @@ br $for-loop|4 end end - local.get $9 - call $~lib/rt/tlsf/__free local.get $11 call $~lib/rt/tlsf/__free + local.get $9 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -30547,12 +30560,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) + (local $13 i64) local.get $1 i32.const 48 i32.le_s @@ -30676,7 +30689,7 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $11 + local.tee $9 local.get $5 i32.add local.set $10 @@ -30690,7 +30703,7 @@ local.get $5 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -30703,13 +30716,13 @@ end local.get $1 call $~lib/rt/tlsf/__alloc - local.set $9 + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $12 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -30721,9 +30734,9 @@ if local.get $0 i32.const 0 - local.get $12 + local.get $8 i32.const 31 - local.get $12 + local.get $8 i32.const 31 i32.lt_s select @@ -30734,7 +30747,7 @@ end loop $while-continue|2 local.get $1 - local.get $12 + local.get $8 i32.lt_s if local.get $0 @@ -30742,7 +30755,7 @@ i32.const 1 i32.add local.tee $6 - local.get $12 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -30756,13 +30769,13 @@ if local.get $0 local.get $6 - local.get $12 + local.get $8 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $12 + local.get $8 i32.gt_s select local.tee $5 @@ -30776,11 +30789,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $8 + local.tee $13 i64.div_u local.get $5 local.get $6 @@ -30790,7 +30803,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $13 i64.div_u i64.xor i32.wrap_i64 @@ -30804,15 +30817,15 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load - local.tee $13 + local.tee $12 i32.const -1 i32.ne if local.get $0 - local.get $13 + local.get $12 local.get $10 local.get $4 i32.const 2 @@ -30823,15 +30836,15 @@ i32.const 1 i32.add local.get $1 - local.get $9 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $11 + local.get $9 i32.add i32.const -1 i32.store - local.get $13 + local.get $12 local.set $3 end local.get $4 @@ -30841,7 +30854,7 @@ br $for-loop|3 end end - local.get $11 + local.get $9 local.get $7 i32.const 2 i32.shl @@ -30869,7 +30882,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $1 @@ -30886,8 +30899,8 @@ i32.load i32.const 1 i32.add - local.get $12 - local.get $9 + local.get $8 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end @@ -30898,10 +30911,10 @@ br $for-loop|4 end end - local.get $9 - call $~lib/rt/tlsf/__free local.get $11 call $~lib/rt/tlsf/__free + local.get $9 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -31362,12 +31375,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) + (local $13 i64) local.get $1 i32.const 48 i32.le_s @@ -31491,7 +31504,7 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $11 + local.tee $9 local.get $5 i32.add local.set $10 @@ -31505,7 +31518,7 @@ local.get $5 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -31520,13 +31533,13 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.set $9 + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $12 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -31538,9 +31551,9 @@ if local.get $0 i32.const 0 - local.get $12 + local.get $8 i32.const 31 - local.get $12 + local.get $8 i32.const 31 i32.lt_s select @@ -31551,7 +31564,7 @@ end loop $while-continue|2 local.get $1 - local.get $12 + local.get $8 i32.lt_s if local.get $0 @@ -31559,7 +31572,7 @@ i32.const 1 i32.add local.tee $6 - local.get $12 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -31573,13 +31586,13 @@ if local.get $0 local.get $6 - local.get $12 + local.get $8 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $12 + local.get $8 i32.gt_s select local.tee $5 @@ -31593,11 +31606,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $8 + local.tee $13 i64.div_u local.get $5 local.get $6 @@ -31607,7 +31620,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $13 i64.div_u i64.xor i32.wrap_i64 @@ -31621,15 +31634,15 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load - local.tee $13 + local.tee $12 i32.const -1 i32.ne if local.get $0 - local.get $13 + local.get $12 local.get $10 local.get $4 i32.const 2 @@ -31640,15 +31653,15 @@ i32.const 1 i32.add local.get $1 - local.get $9 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $11 + local.get $9 i32.add i32.const -1 i32.store - local.get $13 + local.get $12 local.set $3 end local.get $4 @@ -31658,7 +31671,7 @@ br $for-loop|3 end end - local.get $11 + local.get $9 local.get $7 i32.const 2 i32.shl @@ -31686,7 +31699,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $1 @@ -31703,8 +31716,8 @@ i32.load i32.const 1 i32.add - local.get $12 - local.get $9 + local.get $8 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end @@ -31715,10 +31728,10 @@ br $for-loop|4 end end - local.get $9 - call $~lib/rt/tlsf/__free local.get $11 call $~lib/rt/tlsf/__free + local.get $9 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -32169,12 +32182,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) + (local $13 i64) local.get $1 i32.const 48 i32.le_s @@ -32298,7 +32311,7 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $11 + local.tee $9 local.get $5 i32.add local.set $10 @@ -32312,7 +32325,7 @@ local.get $5 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -32327,13 +32340,13 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.set $9 + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $12 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -32345,9 +32358,9 @@ if local.get $0 i32.const 0 - local.get $12 + local.get $8 i32.const 31 - local.get $12 + local.get $8 i32.const 31 i32.lt_s select @@ -32358,7 +32371,7 @@ end loop $while-continue|2 local.get $1 - local.get $12 + local.get $8 i32.lt_s if local.get $0 @@ -32366,7 +32379,7 @@ i32.const 1 i32.add local.tee $6 - local.get $12 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -32380,13 +32393,13 @@ if local.get $0 local.get $6 - local.get $12 + local.get $8 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $12 + local.get $8 i32.gt_s select local.tee $5 @@ -32400,11 +32413,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $8 + local.tee $13 i64.div_u local.get $5 local.get $6 @@ -32414,7 +32427,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $13 i64.div_u i64.xor i32.wrap_i64 @@ -32428,15 +32441,15 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load - local.tee $13 + local.tee $12 i32.const -1 i32.ne if local.get $0 - local.get $13 + local.get $12 local.get $10 local.get $4 i32.const 2 @@ -32447,15 +32460,15 @@ i32.const 1 i32.add local.get $1 - local.get $9 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $11 + local.get $9 i32.add i32.const -1 i32.store - local.get $13 + local.get $12 local.set $3 end local.get $4 @@ -32465,7 +32478,7 @@ br $for-loop|3 end end - local.get $11 + local.get $9 local.get $7 i32.const 2 i32.shl @@ -32493,7 +32506,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $1 @@ -32510,8 +32523,8 @@ i32.load i32.const 1 i32.add - local.get $12 - local.get $9 + local.get $8 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end @@ -32522,10 +32535,10 @@ br $for-loop|4 end end - local.get $9 - call $~lib/rt/tlsf/__free local.get $11 call $~lib/rt/tlsf/__free + local.get $9 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -32986,12 +32999,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) + (local $13 i64) local.get $1 i32.const 48 i32.le_s @@ -33115,7 +33128,7 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $11 + local.tee $9 local.get $5 i32.add local.set $10 @@ -33129,7 +33142,7 @@ local.get $5 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -33144,13 +33157,13 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $9 + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $12 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -33162,9 +33175,9 @@ if local.get $0 i32.const 0 - local.get $12 + local.get $8 i32.const 31 - local.get $12 + local.get $8 i32.const 31 i32.lt_s select @@ -33175,7 +33188,7 @@ end loop $while-continue|2 local.get $1 - local.get $12 + local.get $8 i32.lt_s if local.get $0 @@ -33183,7 +33196,7 @@ i32.const 1 i32.add local.tee $6 - local.get $12 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -33197,13 +33210,13 @@ if local.get $0 local.get $6 - local.get $12 + local.get $8 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $12 + local.get $8 i32.gt_s select local.tee $5 @@ -33217,11 +33230,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $8 + local.tee $13 i64.div_u local.get $5 local.get $6 @@ -33231,7 +33244,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $13 i64.div_u i64.xor i32.wrap_i64 @@ -33245,15 +33258,15 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load - local.tee $13 + local.tee $12 i32.const -1 i32.ne if local.get $0 - local.get $13 + local.get $12 local.get $10 local.get $4 i32.const 2 @@ -33264,15 +33277,15 @@ i32.const 1 i32.add local.get $1 - local.get $9 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $11 + local.get $9 i32.add i32.const -1 i32.store - local.get $13 + local.get $12 local.set $3 end local.get $4 @@ -33282,7 +33295,7 @@ br $for-loop|3 end end - local.get $11 + local.get $9 local.get $7 i32.const 2 i32.shl @@ -33310,7 +33323,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $1 @@ -33327,8 +33340,8 @@ i32.load i32.const 1 i32.add - local.get $12 - local.get $9 + local.get $8 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end @@ -33339,10 +33352,10 @@ br $for-loop|4 end end - local.get $9 - call $~lib/rt/tlsf/__free local.get $11 call $~lib/rt/tlsf/__free + local.get $9 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -33787,12 +33800,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) + (local $13 i64) local.get $1 i32.const 48 i32.le_s @@ -33916,7 +33929,7 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $11 + local.tee $9 local.get $5 i32.add local.set $10 @@ -33930,7 +33943,7 @@ local.get $5 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -33945,13 +33958,13 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $9 + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $12 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -33963,9 +33976,9 @@ if local.get $0 i32.const 0 - local.get $12 + local.get $8 i32.const 31 - local.get $12 + local.get $8 i32.const 31 i32.lt_s select @@ -33976,7 +33989,7 @@ end loop $while-continue|2 local.get $1 - local.get $12 + local.get $8 i32.lt_s if local.get $0 @@ -33984,7 +33997,7 @@ i32.const 1 i32.add local.tee $6 - local.get $12 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -33998,13 +34011,13 @@ if local.get $0 local.get $6 - local.get $12 + local.get $8 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $12 + local.get $8 i32.gt_s select local.tee $5 @@ -34018,11 +34031,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $8 + local.tee $13 i64.div_u local.get $5 local.get $6 @@ -34032,7 +34045,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $13 i64.div_u i64.xor i32.wrap_i64 @@ -34046,15 +34059,15 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load - local.tee $13 + local.tee $12 i32.const -1 i32.ne if local.get $0 - local.get $13 + local.get $12 local.get $10 local.get $4 i32.const 2 @@ -34065,15 +34078,15 @@ i32.const 1 i32.add local.get $1 - local.get $9 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $11 + local.get $9 i32.add i32.const -1 i32.store - local.get $13 + local.get $12 local.set $3 end local.get $4 @@ -34083,7 +34096,7 @@ br $for-loop|3 end end - local.get $11 + local.get $9 local.get $7 i32.const 2 i32.shl @@ -34111,7 +34124,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $1 @@ -34128,8 +34141,8 @@ i32.load i32.const 1 i32.add - local.get $12 - local.get $9 + local.get $8 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end @@ -34140,10 +34153,10 @@ br $for-loop|4 end end - local.get $9 - call $~lib/rt/tlsf/__free local.get $11 call $~lib/rt/tlsf/__free + local.get $9 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -34596,9 +34609,9 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i64) + (local $9 i32) (local $10 i64) - (local $11 i32) + (local $11 i64) (local $12 i32) (local $13 i32) (local $14 i32) @@ -34629,14 +34642,14 @@ local.set $10 local.get $0 i64.load offset=8 - local.set $9 + local.set $11 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $9 + local.get $11 local.get $10 local.get $10 - local.get $9 + local.get $11 local.get $2 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -34646,20 +34659,20 @@ select i64.store local.get $10 - local.get $9 + local.get $11 local.get $1 select local.set $10 local.get $0 i64.load offset=16 - local.set $9 + local.set $11 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $9 + local.get $11 local.get $10 local.get $10 - local.get $9 + local.get $11 local.get $2 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -34670,7 +34683,7 @@ i64.store offset=8 local.get $0 local.get $10 - local.get $9 + local.get $11 local.get $1 select i64.store offset=16 @@ -34680,14 +34693,14 @@ local.set $10 local.get $0 i64.load offset=8 - local.set $9 + local.set $11 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $9 + local.get $11 local.get $10 local.get $10 - local.get $9 + local.get $11 local.get $2 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -34698,7 +34711,7 @@ i64.store local.get $0 local.get $10 - local.get $9 + local.get $11 local.get $1 select i64.store offset=8 @@ -34725,28 +34738,28 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $13 + local.tee $9 local.get $5 i32.add local.set $12 i32.const 0 - local.set $7 + local.set $5 loop $for-loop|1 + local.get $5 local.get $6 - local.get $7 - i32.gt_u + i32.lt_u if - local.get $7 + local.get $5 i32.const 2 i32.shl - local.get $13 + local.get $9 i32.add i32.const -1 i32.store - local.get $7 + local.get $5 i32.const 1 i32.add - local.set $7 + local.set $5 br $for-loop|1 end end @@ -34754,116 +34767,116 @@ i32.const 3 i32.shl call $~lib/rt/tlsf/__alloc - local.set $11 + local.set $13 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $14 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $6 + local.tee $1 i32.const 1 i32.add - local.tee $1 + local.tee $5 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $14 + local.get $8 i32.const 31 - local.get $14 + local.get $8 i32.const 31 i32.lt_s select - local.tee $6 - local.get $1 + local.tee $1 + local.get $5 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $6 - local.get $14 + local.get $1 + local.get $8 i32.lt_s if local.get $0 - local.get $6 + local.get $1 i32.const 1 i32.add - local.tee $5 - local.get $14 + local.tee $6 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $7 - local.get $5 + local.tee $5 + local.get $6 i32.sub i32.const 1 i32.add - local.tee $8 + local.tee $7 i32.const 32 i32.lt_s if local.get $0 - local.get $5 - local.get $14 - local.get $5 + local.get $6 + local.get $8 + local.get $6 i32.const 31 i32.add - local.tee $1 - local.get $1 - local.get $14 + local.tee $5 + local.get $5 + local.get $8 i32.gt_s select - local.tee $7 - local.get $8 + local.tee $5 + local.get $7 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $5 + local.get $6 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $14 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $9 + local.tee $10 i64.div_u local.get $5 - local.get $7 + local.get $6 i32.add i32.const 1 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $9 + local.get $10 i64.div_u i64.xor i32.wrap_i64 i32.clz - local.set $1 + local.set $7 loop $for-loop|3 - local.get $1 local.get $4 - i32.lt_u + local.get $7 + i32.gt_u if local.get $4 i32.const 2 i32.shl - local.get $13 + local.get $9 i32.add i32.load - local.tee $8 + local.tee $14 i32.const -1 i32.ne if local.get $0 - local.get $8 + local.get $14 local.get $12 local.get $4 i32.const 2 @@ -34873,16 +34886,16 @@ i32.load i32.const 1 i32.add - local.get $6 - local.get $11 + local.get $1 + local.get $13 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $13 + local.get $9 i32.add i32.const -1 i32.store - local.get $8 + local.get $14 local.set $3 end local.get $4 @@ -34892,8 +34905,8 @@ br $for-loop|3 end end - local.get $13 - local.get $1 + local.get $9 + local.get $7 i32.const 2 i32.shl local.tee $4 @@ -34903,13 +34916,13 @@ local.get $4 local.get $12 i32.add - local.get $6 + local.get $1 i32.store - local.get $5 + local.get $6 local.set $3 + local.get $5 + local.set $1 local.get $7 - local.set $6 - local.get $1 local.set $4 br $while-continue|2 end @@ -34920,7 +34933,7 @@ local.get $4 i32.const 2 i32.shl - local.get $13 + local.get $9 i32.add i32.load local.tee $1 @@ -34937,8 +34950,8 @@ i32.load i32.const 1 i32.add - local.get $14 - local.get $11 + local.get $8 + local.get $13 local.get $2 call $~lib/util/sort/mergeRuns end @@ -34949,10 +34962,10 @@ br $for-loop|4 end end - local.get $11 - call $~lib/rt/tlsf/__free local.get $13 call $~lib/rt/tlsf/__free + local.get $9 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i64) (param $1 i64) (result i32) local.get $0 @@ -35405,9 +35418,9 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i64) + (local $9 i32) (local $10 i64) - (local $11 i32) + (local $11 i64) (local $12 i32) (local $13 i32) (local $14 i32) @@ -35438,14 +35451,14 @@ local.set $10 local.get $0 i64.load offset=8 - local.set $9 + local.set $11 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $9 + local.get $11 local.get $10 local.get $10 - local.get $9 + local.get $11 local.get $2 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -35455,20 +35468,20 @@ select i64.store local.get $10 - local.get $9 + local.get $11 local.get $1 select local.set $10 local.get $0 i64.load offset=16 - local.set $9 + local.set $11 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $9 + local.get $11 local.get $10 local.get $10 - local.get $9 + local.get $11 local.get $2 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -35479,7 +35492,7 @@ i64.store offset=8 local.get $0 local.get $10 - local.get $9 + local.get $11 local.get $1 select i64.store offset=16 @@ -35489,14 +35502,14 @@ local.set $10 local.get $0 i64.load offset=8 - local.set $9 + local.set $11 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $9 + local.get $11 local.get $10 local.get $10 - local.get $9 + local.get $11 local.get $2 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -35507,7 +35520,7 @@ i64.store local.get $0 local.get $10 - local.get $9 + local.get $11 local.get $1 select i64.store offset=8 @@ -35534,28 +35547,28 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $13 + local.tee $9 local.get $5 i32.add local.set $12 i32.const 0 - local.set $7 + local.set $5 loop $for-loop|1 + local.get $5 local.get $6 - local.get $7 - i32.gt_u + i32.lt_u if - local.get $7 + local.get $5 i32.const 2 i32.shl - local.get $13 + local.get $9 i32.add i32.const -1 i32.store - local.get $7 + local.get $5 i32.const 1 i32.add - local.set $7 + local.set $5 br $for-loop|1 end end @@ -35563,116 +35576,116 @@ i32.const 3 i32.shl call $~lib/rt/tlsf/__alloc - local.set $11 + local.set $13 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $14 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $6 + local.tee $1 i32.const 1 i32.add - local.tee $1 + local.tee $5 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $14 + local.get $8 i32.const 31 - local.get $14 + local.get $8 i32.const 31 i32.lt_s select - local.tee $6 - local.get $1 + local.tee $1 + local.get $5 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $6 - local.get $14 + local.get $1 + local.get $8 i32.lt_s if local.get $0 - local.get $6 + local.get $1 i32.const 1 i32.add - local.tee $5 - local.get $14 + local.tee $6 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $7 - local.get $5 + local.tee $5 + local.get $6 i32.sub i32.const 1 i32.add - local.tee $8 + local.tee $7 i32.const 32 i32.lt_s if local.get $0 - local.get $5 - local.get $14 - local.get $5 + local.get $6 + local.get $8 + local.get $6 i32.const 31 i32.add - local.tee $1 - local.get $1 - local.get $14 + local.tee $5 + local.get $5 + local.get $8 i32.gt_s select - local.tee $7 - local.get $8 + local.tee $5 + local.get $7 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $5 + local.get $6 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $14 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $9 + local.tee $10 i64.div_u local.get $5 - local.get $7 + local.get $6 i32.add i32.const 1 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $9 + local.get $10 i64.div_u i64.xor i32.wrap_i64 i32.clz - local.set $1 + local.set $7 loop $for-loop|3 - local.get $1 local.get $4 - i32.lt_u + local.get $7 + i32.gt_u if local.get $4 i32.const 2 i32.shl - local.get $13 + local.get $9 i32.add i32.load - local.tee $8 + local.tee $14 i32.const -1 i32.ne if local.get $0 - local.get $8 + local.get $14 local.get $12 local.get $4 i32.const 2 @@ -35682,16 +35695,16 @@ i32.load i32.const 1 i32.add - local.get $6 - local.get $11 + local.get $1 + local.get $13 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $13 + local.get $9 i32.add i32.const -1 i32.store - local.get $8 + local.get $14 local.set $3 end local.get $4 @@ -35701,8 +35714,8 @@ br $for-loop|3 end end - local.get $13 - local.get $1 + local.get $9 + local.get $7 i32.const 2 i32.shl local.tee $4 @@ -35712,13 +35725,13 @@ local.get $4 local.get $12 i32.add - local.get $6 + local.get $1 i32.store - local.get $5 + local.get $6 local.set $3 + local.get $5 + local.set $1 local.get $7 - local.set $6 - local.get $1 local.set $4 br $while-continue|2 end @@ -35729,7 +35742,7 @@ local.get $4 i32.const 2 i32.shl - local.get $13 + local.get $9 i32.add i32.load local.tee $1 @@ -35746,8 +35759,8 @@ i32.load i32.const 1 i32.add - local.get $14 - local.get $11 + local.get $8 + local.get $13 local.get $2 call $~lib/util/sort/mergeRuns end @@ -35758,10 +35771,10 @@ br $for-loop|4 end end - local.get $11 - call $~lib/rt/tlsf/__free local.get $13 call $~lib/rt/tlsf/__free + local.get $9 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i64) (param $1 i64) (result i32) local.get $0 @@ -36214,13 +36227,13 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 f32) + (local $9 i32) (local $10 f32) - (local $11 i64) + (local $11 f32) (local $12 i32) (local $13 i32) (local $14 i32) - (local $15 i32) + (local $15 i64) local.get $1 i32.const 48 i32.le_s @@ -36248,14 +36261,14 @@ local.set $10 local.get $0 f32.load offset=4 - local.set $9 + local.set $11 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $9 + local.get $11 local.get $10 local.get $10 - local.get $9 + local.get $11 local.get $2 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -36265,20 +36278,20 @@ select f32.store local.get $10 - local.get $9 + local.get $11 local.get $1 select local.set $10 local.get $0 f32.load offset=8 - local.set $9 + local.set $11 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $9 + local.get $11 local.get $10 local.get $10 - local.get $9 + local.get $11 local.get $2 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -36289,7 +36302,7 @@ f32.store offset=4 local.get $0 local.get $10 - local.get $9 + local.get $11 local.get $1 select f32.store offset=8 @@ -36299,14 +36312,14 @@ local.set $10 local.get $0 f32.load offset=4 - local.set $9 + local.set $11 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $9 + local.get $11 local.get $10 local.get $10 - local.get $9 + local.get $11 local.get $2 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -36317,7 +36330,7 @@ f32.store local.get $0 local.get $10 - local.get $9 + local.get $11 local.get $1 select f32.store offset=4 @@ -36344,28 +36357,28 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $14 + local.tee $9 local.get $5 i32.add - local.set $13 + local.set $12 i32.const 0 - local.set $7 + local.set $5 loop $for-loop|1 + local.get $5 local.get $6 - local.get $7 - i32.gt_u + i32.lt_u if - local.get $7 + local.get $5 i32.const 2 i32.shl - local.get $14 + local.get $9 i32.add i32.const -1 i32.store - local.get $7 + local.get $5 i32.const 1 i32.add - local.set $7 + local.set $5 br $for-loop|1 end end @@ -36373,117 +36386,117 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $12 + local.set $13 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $15 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $6 + local.tee $1 i32.const 1 i32.add - local.tee $1 + local.tee $5 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $15 + local.get $8 i32.const 31 - local.get $15 + local.get $8 i32.const 31 i32.lt_s select - local.tee $6 - local.get $1 + local.tee $1 + local.get $5 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $6 - local.get $15 + local.get $1 + local.get $8 i32.lt_s if local.get $0 - local.get $6 + local.get $1 i32.const 1 i32.add - local.tee $5 - local.get $15 + local.tee $6 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $7 - local.get $5 + local.tee $5 + local.get $6 i32.sub i32.const 1 i32.add - local.tee $8 + local.tee $7 i32.const 32 i32.lt_s if local.get $0 - local.get $5 - local.get $15 - local.get $5 + local.get $6 + local.get $8 + local.get $6 i32.const 31 i32.add - local.tee $1 - local.get $1 - local.get $15 + local.tee $5 + local.get $5 + local.get $8 i32.gt_s select - local.tee $7 - local.get $8 + local.tee $5 + local.get $7 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $5 + local.get $6 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $15 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $11 + local.tee $15 i64.div_u local.get $5 - local.get $7 + local.get $6 i32.add i32.const 1 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $11 + local.get $15 i64.div_u i64.xor i32.wrap_i64 i32.clz - local.set $1 + local.set $7 loop $for-loop|3 - local.get $1 local.get $4 - i32.lt_u + local.get $7 + i32.gt_u if local.get $4 i32.const 2 i32.shl - local.get $14 + local.get $9 i32.add i32.load - local.tee $8 + local.tee $14 i32.const -1 i32.ne if local.get $0 - local.get $8 - local.get $13 + local.get $14 + local.get $12 local.get $4 i32.const 2 i32.shl @@ -36492,16 +36505,16 @@ i32.load i32.const 1 i32.add - local.get $6 - local.get $12 + local.get $1 + local.get $13 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $14 + local.get $9 i32.add i32.const -1 i32.store - local.get $8 + local.get $14 local.set $3 end local.get $4 @@ -36511,8 +36524,8 @@ br $for-loop|3 end end - local.get $14 - local.get $1 + local.get $9 + local.get $7 i32.const 2 i32.shl local.tee $4 @@ -36520,15 +36533,15 @@ local.get $3 i32.store local.get $4 - local.get $13 + local.get $12 i32.add - local.get $6 + local.get $1 i32.store - local.get $5 + local.get $6 local.set $3 + local.get $5 + local.set $1 local.get $7 - local.set $6 - local.get $1 local.set $4 br $while-continue|2 end @@ -36539,7 +36552,7 @@ local.get $4 i32.const 2 i32.shl - local.get $14 + local.get $9 i32.add i32.load local.tee $1 @@ -36551,13 +36564,13 @@ local.get $4 i32.const 2 i32.shl - local.get $13 + local.get $12 i32.add i32.load i32.const 1 i32.add - local.get $15 - local.get $12 + local.get $8 + local.get $13 local.get $2 call $~lib/util/sort/mergeRuns end @@ -36568,9 +36581,9 @@ br $for-loop|4 end end - local.get $12 + local.get $13 call $~lib/rt/tlsf/__free - local.get $14 + local.get $9 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 f32) (param $1 f32) (result i32) @@ -36692,34 +36705,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 6 call $~lib/typedarray/Int8Array#constructor - local.tee $9 + local.tee $3 i32.store - local.get $9 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $9 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $9 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set - local.get $9 + local.get $3 i32.const 3 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $9 + local.get $3 i32.const 5 i32.const 5 call $~lib/typedarray/Int8Array#__set @@ -36736,91 +36749,91 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $3 i32.load offset=8 - local.set $4 - local.get $1 + local.set $5 + local.get $0 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $6 i32.store offset=4 - local.get $9 + local.get $3 i32.load offset=4 - local.set $8 + local.set $9 loop $for-loop|0 - local.get $3 local.get $4 + local.get $5 i32.lt_s if - local.get $3 - local.get $8 + local.get $4 + local.get $9 i32.add i32.load8_s - local.set $6 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $6 + local.get $7 + local.get $4 local.get $3 - local.get $9 i32.const 3952 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $0 + local.get $1 local.tee $2 i32.const 1 i32.add - local.set $0 + local.set $1 local.get $2 - local.get $5 - i32.add local.get $6 + i32.add + local.get $7 i32.store8 end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|0 end end - local.get $1 - local.get $5 local.get $0 + local.get $6 + local.get $1 call $~lib/rt/itcms/__renew local.tee $2 i32.store local.get $2 if - local.get $1 + local.get $0 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 + local.get $0 local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -36831,7 +36844,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.ne @@ -36843,7 +36856,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 3 @@ -36856,7 +36869,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 4 @@ -36869,7 +36882,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 5 @@ -36916,34 +36929,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 6 call $~lib/typedarray/Uint8Array#constructor - local.tee $9 + local.tee $3 i32.store - local.get $9 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $9 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $9 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set - local.get $9 + local.get $3 i32.const 3 i32.const 4 call $~lib/typedarray/Uint8Array#__set - local.get $9 + local.get $3 i32.const 5 i32.const 5 call $~lib/typedarray/Uint8Array#__set @@ -36960,91 +36973,91 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $3 i32.load offset=8 - local.set $4 - local.get $1 + local.set $5 + local.get $0 i32.const 12 i32.const 4 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $6 i32.store offset=4 - local.get $9 + local.get $3 i32.load offset=4 - local.set $8 + local.set $9 loop $for-loop|0 - local.get $3 local.get $4 + local.get $5 i32.lt_s if - local.get $3 - local.get $8 + local.get $4 + local.get $9 i32.add i32.load8_u - local.set $6 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $6 + local.get $7 + local.get $4 local.get $3 - local.get $9 i32.const 3984 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $0 + local.get $1 local.tee $2 i32.const 1 i32.add - local.set $0 + local.set $1 local.get $2 - local.get $5 - i32.add local.get $6 + i32.add + local.get $7 i32.store8 end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|0 end end - local.get $1 - local.get $5 local.get $0 + local.get $6 + local.get $1 call $~lib/rt/itcms/__renew local.tee $2 i32.store local.get $2 if - local.get $1 + local.get $0 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 + local.get $0 local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -37055,7 +37068,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.ne @@ -37067,7 +37080,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 3 @@ -37080,7 +37093,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 4 @@ -37093,7 +37106,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 5 @@ -37140,34 +37153,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 6 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $9 + local.tee $3 i32.store - local.get $9 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $9 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $9 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $9 + local.get $3 i32.const 3 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $9 + local.get $3 i32.const 5 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#__set @@ -37184,91 +37197,91 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $3 i32.load offset=8 - local.set $4 - local.get $1 + local.set $5 + local.get $0 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $6 i32.store offset=4 - local.get $9 + local.get $3 i32.load offset=4 - local.set $8 + local.set $9 loop $for-loop|0 - local.get $3 local.get $4 + local.get $5 i32.lt_s if - local.get $3 - local.get $8 + local.get $4 + local.get $9 i32.add i32.load8_u - local.set $6 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $6 + local.get $7 + local.get $4 local.get $3 - local.get $9 i32.const 4016 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $0 + local.get $1 local.tee $2 i32.const 1 i32.add - local.set $0 + local.set $1 local.get $2 - local.get $5 - i32.add local.get $6 + i32.add + local.get $7 i32.store8 end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|0 end end - local.get $1 - local.get $5 local.get $0 + local.get $6 + local.get $1 call $~lib/rt/itcms/__renew local.tee $2 i32.store local.get $2 if - local.get $1 + local.get $0 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 + local.get $0 local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -37279,7 +37292,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.ne @@ -37291,7 +37304,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 3 @@ -37304,7 +37317,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 4 @@ -37317,7 +37330,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 5 @@ -37364,34 +37377,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 6 call $~lib/typedarray/Int16Array#constructor - local.tee $9 + local.tee $3 i32.store - local.get $9 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $9 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $9 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set - local.get $9 + local.get $3 i32.const 3 i32.const 4 call $~lib/typedarray/Int16Array#__set - local.get $9 + local.get $3 i32.const 5 i32.const 5 call $~lib/typedarray/Int16Array#__set @@ -37408,102 +37421,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.set $4 - local.get $1 + local.set $5 + local.get $0 i32.const 12 i32.const 6 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 1 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $6 i32.store offset=4 - local.get $9 + local.get $3 i32.load offset=4 - local.set $8 + local.set $9 loop $for-loop|0 - local.get $3 local.get $4 + local.get $5 i32.lt_s if - local.get $3 + local.get $4 i32.const 1 i32.shl - local.get $8 + local.get $9 i32.add i32.load16_s - local.set $6 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $6 + local.get $7 + local.get $4 local.get $3 - local.get $9 i32.const 4048 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $0 + local.get $1 local.tee $2 i32.const 1 i32.add - local.set $0 + local.set $1 local.get $2 i32.const 1 i32.shl - local.get $5 - i32.add local.get $6 + i32.add + local.get $7 i32.store16 end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|0 end end - local.get $1 - local.get $5 local.get $0 + local.get $6 + local.get $1 i32.const 1 i32.shl - local.tee $0 - call $~lib/rt/itcms/__renew local.tee $2 + call $~lib/rt/itcms/__renew + local.tee $1 i32.store - local.get $2 + local.get $1 if + local.get $0 local.get $1 - local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 + local.get $2 i32.store offset=8 + local.get $0 local.get $1 - local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -37514,7 +37527,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u @@ -37528,7 +37541,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 3 @@ -37541,7 +37554,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 4 @@ -37554,7 +37567,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 5 @@ -37601,34 +37614,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 6 call $~lib/typedarray/Uint16Array#constructor - local.tee $9 + local.tee $3 i32.store - local.get $9 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $9 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $9 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set - local.get $9 + local.get $3 i32.const 3 i32.const 4 call $~lib/typedarray/Uint16Array#__set - local.get $9 + local.get $3 i32.const 5 i32.const 5 call $~lib/typedarray/Uint16Array#__set @@ -37645,102 +37658,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.set $4 - local.get $1 + local.set $5 + local.get $0 i32.const 12 i32.const 7 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 1 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $6 i32.store offset=4 - local.get $9 + local.get $3 i32.load offset=4 - local.set $8 + local.set $9 loop $for-loop|0 - local.get $3 local.get $4 + local.get $5 i32.lt_s if - local.get $3 + local.get $4 i32.const 1 i32.shl - local.get $8 + local.get $9 i32.add i32.load16_u - local.set $6 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $6 + local.get $7 + local.get $4 local.get $3 - local.get $9 i32.const 4080 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $0 + local.get $1 local.tee $2 i32.const 1 i32.add - local.set $0 + local.set $1 local.get $2 i32.const 1 i32.shl - local.get $5 - i32.add local.get $6 + i32.add + local.get $7 i32.store16 end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|0 end end - local.get $1 - local.get $5 local.get $0 + local.get $6 + local.get $1 i32.const 1 i32.shl - local.tee $0 - call $~lib/rt/itcms/__renew local.tee $2 + call $~lib/rt/itcms/__renew + local.tee $1 i32.store - local.get $2 + local.get $1 if + local.get $0 local.get $1 - local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 + local.get $2 i32.store offset=8 + local.get $0 local.get $1 - local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -37751,7 +37764,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u @@ -37765,7 +37778,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 3 @@ -37778,7 +37791,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 4 @@ -37791,7 +37804,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 5 @@ -37838,34 +37851,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 6 call $~lib/typedarray/Int32Array#constructor - local.tee $9 + local.tee $3 i32.store - local.get $9 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $9 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $9 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $9 + local.get $3 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $9 + local.get $3 i32.const 5 i32.const 5 call $~lib/typedarray/Int32Array#__set @@ -37882,102 +37895,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $4 - local.get $1 + local.set $5 + local.get $0 i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 2 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $6 i32.store offset=4 - local.get $9 + local.get $3 i32.load offset=4 - local.set $8 + local.set $9 loop $for-loop|0 - local.get $3 local.get $4 + local.get $5 i32.lt_s if - local.get $3 + local.get $4 i32.const 2 i32.shl - local.get $8 + local.get $9 i32.add i32.load - local.set $6 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $6 + local.get $7 + local.get $4 local.get $3 - local.get $9 i32.const 4112 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $0 + local.get $1 local.tee $2 i32.const 1 i32.add - local.set $0 + local.set $1 local.get $2 i32.const 2 i32.shl - local.get $5 - i32.add local.get $6 + i32.add + local.get $7 i32.store end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|0 end end - local.get $1 - local.get $5 local.get $0 + local.get $6 + local.get $1 i32.const 2 i32.shl - local.tee $0 - call $~lib/rt/itcms/__renew local.tee $2 + call $~lib/rt/itcms/__renew + local.tee $1 i32.store - local.get $2 + local.get $1 if + local.get $0 local.get $1 - local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 + local.get $2 i32.store offset=8 + local.get $0 local.get $1 - local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -37988,7 +38001,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u @@ -38002,7 +38015,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 3 @@ -38015,7 +38028,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 4 @@ -38028,7 +38041,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 5 @@ -38075,34 +38088,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 6 call $~lib/typedarray/Uint32Array#constructor - local.tee $9 + local.tee $3 i32.store - local.get $9 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $9 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $9 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set - local.get $9 + local.get $3 i32.const 3 i32.const 4 call $~lib/typedarray/Uint32Array#__set - local.get $9 + local.get $3 i32.const 5 i32.const 5 call $~lib/typedarray/Uint32Array#__set @@ -38119,102 +38132,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $4 - local.get $1 + local.set $5 + local.get $0 i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 2 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $6 i32.store offset=4 - local.get $9 + local.get $3 i32.load offset=4 - local.set $8 + local.set $9 loop $for-loop|0 - local.get $3 local.get $4 + local.get $5 i32.lt_s if - local.get $3 + local.get $4 i32.const 2 i32.shl - local.get $8 + local.get $9 i32.add i32.load - local.set $6 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $6 + local.get $7 + local.get $4 local.get $3 - local.get $9 i32.const 4144 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $0 + local.get $1 local.tee $2 i32.const 1 i32.add - local.set $0 + local.set $1 local.get $2 i32.const 2 i32.shl - local.get $5 - i32.add local.get $6 + i32.add + local.get $7 i32.store end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|0 end end - local.get $1 - local.get $5 local.get $0 + local.get $6 + local.get $1 i32.const 2 i32.shl - local.tee $0 - call $~lib/rt/itcms/__renew local.tee $2 + call $~lib/rt/itcms/__renew + local.tee $1 i32.store - local.get $2 + local.get $1 if + local.get $0 local.get $1 - local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 + local.get $2 i32.store offset=8 + local.get $0 local.get $1 - local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -38225,7 +38238,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u @@ -38239,7 +38252,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 3 @@ -38252,7 +38265,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 4 @@ -38265,7 +38278,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 5 @@ -38298,8 +38311,8 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i64) - (local $7 i32) + (local $6 i32) + (local $7 i64) (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer @@ -38312,34 +38325,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 6 call $~lib/typedarray/Int64Array#constructor - local.tee $9 + local.tee $3 i32.store - local.get $9 + local.get $3 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $9 + local.get $3 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $9 + local.get $3 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set - local.get $9 + local.get $3 i32.const 3 i64.const 4 call $~lib/typedarray/Int64Array#__set - local.get $9 + local.get $3 i32.const 5 i64.const 5 call $~lib/typedarray/Int64Array#__set @@ -38356,102 +38369,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $4 - local.get $1 + local.set $5 + local.get $0 i32.const 12 i32.const 10 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 3 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $6 i32.store offset=4 - local.get $9 + local.get $3 i32.load offset=4 - local.set $8 + local.set $9 loop $for-loop|0 - local.get $3 local.get $4 + local.get $5 i32.lt_s if - local.get $3 + local.get $4 i32.const 3 i32.shl - local.get $8 + local.get $9 i32.add i64.load - local.set $6 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $6 + local.get $7 + local.get $4 local.get $3 - local.get $9 i32.const 4176 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) if - local.get $0 + local.get $1 local.tee $2 i32.const 1 i32.add - local.set $0 + local.set $1 local.get $2 i32.const 3 i32.shl - local.get $5 - i32.add local.get $6 + i32.add + local.get $7 i64.store end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|0 end end - local.get $1 - local.get $5 local.get $0 + local.get $6 + local.get $1 i32.const 3 i32.shl - local.tee $0 - call $~lib/rt/itcms/__renew local.tee $2 + call $~lib/rt/itcms/__renew + local.tee $1 i32.store - local.get $2 + local.get $1 if + local.get $0 local.get $1 - local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 + local.get $2 i32.store offset=8 + local.get $0 local.get $1 - local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -38462,7 +38475,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u @@ -38476,7 +38489,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 3 @@ -38489,7 +38502,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 4 @@ -38502,7 +38515,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 5 @@ -38535,8 +38548,8 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i64) - (local $7 i32) + (local $6 i32) + (local $7 i64) (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer @@ -38549,34 +38562,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 6 call $~lib/typedarray/Uint64Array#constructor - local.tee $9 + local.tee $3 i32.store - local.get $9 + local.get $3 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $9 + local.get $3 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $9 + local.get $3 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set - local.get $9 + local.get $3 i32.const 3 i64.const 4 call $~lib/typedarray/Uint64Array#__set - local.get $9 + local.get $3 i32.const 5 i64.const 5 call $~lib/typedarray/Uint64Array#__set @@ -38593,102 +38606,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $4 - local.get $1 + local.set $5 + local.get $0 i32.const 12 i32.const 11 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 3 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $6 i32.store offset=4 - local.get $9 + local.get $3 i32.load offset=4 - local.set $8 + local.set $9 loop $for-loop|0 - local.get $3 local.get $4 + local.get $5 i32.lt_s if - local.get $3 + local.get $4 i32.const 3 i32.shl - local.get $8 + local.get $9 i32.add i64.load - local.set $6 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $6 + local.get $7 + local.get $4 local.get $3 - local.get $9 i32.const 4208 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) if - local.get $0 + local.get $1 local.tee $2 i32.const 1 i32.add - local.set $0 + local.set $1 local.get $2 i32.const 3 i32.shl - local.get $5 - i32.add local.get $6 + i32.add + local.get $7 i64.store end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|0 end end - local.get $1 - local.get $5 local.get $0 + local.get $6 + local.get $1 i32.const 3 i32.shl - local.tee $0 - call $~lib/rt/itcms/__renew local.tee $2 + call $~lib/rt/itcms/__renew + local.tee $1 i32.store - local.get $2 + local.get $1 if + local.get $0 local.get $1 - local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 + local.get $2 i32.store offset=8 + local.get $0 local.get $1 - local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -38699,7 +38712,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u @@ -38713,7 +38726,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 3 @@ -38726,7 +38739,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 4 @@ -38739,7 +38752,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 5 @@ -38772,8 +38785,8 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 f32) - (local $7 i32) + (local $6 i32) + (local $7 f32) (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer @@ -38786,34 +38799,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 6 call $~lib/typedarray/Float32Array#constructor - local.tee $9 + local.tee $3 i32.store - local.get $9 + local.get $3 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $9 + local.get $3 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $9 + local.get $3 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set - local.get $9 + local.get $3 i32.const 3 f32.const 4 call $~lib/typedarray/Float32Array#__set - local.get $9 + local.get $3 i32.const 5 f32.const 5 call $~lib/typedarray/Float32Array#__set @@ -38830,102 +38843,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $4 - local.get $1 + local.set $5 + local.get $0 i32.const 12 i32.const 12 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 2 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $6 i32.store offset=4 - local.get $9 + local.get $3 i32.load offset=4 - local.set $8 + local.set $9 loop $for-loop|0 - local.get $3 local.get $4 + local.get $5 i32.lt_s if - local.get $3 + local.get $4 i32.const 2 i32.shl - local.get $8 + local.get $9 i32.add f32.load - local.set $6 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $6 + local.get $7 + local.get $4 local.get $3 - local.get $9 i32.const 4240 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) if - local.get $0 + local.get $1 local.tee $2 i32.const 1 i32.add - local.set $0 + local.set $1 local.get $2 i32.const 2 i32.shl - local.get $5 - i32.add local.get $6 + i32.add + local.get $7 f32.store end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|0 end end - local.get $1 - local.get $5 local.get $0 + local.get $6 + local.get $1 i32.const 2 i32.shl - local.tee $0 - call $~lib/rt/itcms/__renew local.tee $2 + call $~lib/rt/itcms/__renew + local.tee $1 i32.store - local.get $2 + local.get $1 if + local.get $0 local.get $1 - local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 + local.get $2 i32.store offset=8 + local.get $0 local.get $1 - local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -38936,7 +38949,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u @@ -38950,7 +38963,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 3 @@ -38963,7 +38976,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 4 @@ -38976,7 +38989,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 5 @@ -39009,8 +39022,8 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 f64) - (local $7 i32) + (local $6 i32) + (local $7 f64) (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer @@ -39023,34 +39036,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 6 call $~lib/typedarray/Float64Array#constructor - local.tee $9 + local.tee $3 i32.store - local.get $9 + local.get $3 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $9 + local.get $3 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $9 + local.get $3 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set - local.get $9 + local.get $3 i32.const 3 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $9 + local.get $3 i32.const 5 f64.const 5 call $~lib/typedarray/Float64Array#__set @@ -39067,102 +39080,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $4 - local.get $1 + local.set $5 + local.get $0 i32.const 12 i32.const 13 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 3 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $6 i32.store offset=4 - local.get $9 + local.get $3 i32.load offset=4 - local.set $8 + local.set $9 loop $for-loop|0 - local.get $3 local.get $4 + local.get $5 i32.lt_s if - local.get $3 + local.get $4 i32.const 3 i32.shl - local.get $8 + local.get $9 i32.add f64.load - local.set $6 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $6 + local.get $7 + local.get $4 local.get $3 - local.get $9 i32.const 4272 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) if - local.get $0 + local.get $1 local.tee $2 i32.const 1 i32.add - local.set $0 + local.set $1 local.get $2 i32.const 3 i32.shl - local.get $5 - i32.add local.get $6 + i32.add + local.get $7 f64.store end - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|0 end end - local.get $1 - local.get $5 local.get $0 + local.get $6 + local.get $1 i32.const 3 i32.shl - local.tee $0 - call $~lib/rt/itcms/__renew local.tee $2 + call $~lib/rt/itcms/__renew + local.tee $1 i32.store - local.get $2 + local.get $1 if + local.get $0 local.get $1 - local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 + local.get $2 i32.store offset=8 + local.get $0 local.get $1 - local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -39173,7 +39186,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u @@ -39187,7 +39200,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 3 @@ -39200,7 +39213,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 4 @@ -39213,7 +39226,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 5 @@ -39699,27 +39712,27 @@ local.get $1 i32.const 7628 i32.load - local.tee $2 + local.tee $1 call $~lib/typedarray/Int32Array#constructor - local.tee $3 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 call $~lib/typedarray/Int32Array#constructor - local.tee $4 + local.tee $3 i32.store offset=8 loop $for-loop|0 local.get $0 - local.get $2 + local.get $1 i32.lt_s if - local.get $3 + local.get $2 local.get $0 i32.const 7616 local.get $0 call $~lib/array/Array#__get call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $3 local.get $0 i32.const 7616 local.get $0 @@ -39734,25 +39747,25 @@ end i32.const 0 local.set $0 - local.get $3 + local.get $2 i32.load offset=4 - local.set $5 - local.get $3 + local.set $4 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $1 + local.tee $5 i32.const 1 i32.gt_u if - local.get $1 + local.get $5 i32.const 1 i32.shr_u local.set $6 - local.get $1 + local.get $5 i32.const 1 i32.sub - local.set $7 + local.set $5 loop $while-continue|0 local.get $0 local.get $6 @@ -39761,24 +39774,24 @@ local.get $0 i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add - local.tee $8 + local.tee $7 i32.load - local.set $1 - local.get $8 + local.set $8 local.get $7 + local.get $5 local.get $0 i32.sub i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add - local.tee $8 + local.tee $7 i32.load i32.store + local.get $7 local.get $8 - local.get $1 i32.store local.get $0 i32.const 1 @@ -39792,14 +39805,14 @@ local.set $0 loop $for-loop|1 local.get $0 - local.get $2 + local.get $1 i32.lt_s if - local.get $3 + local.get $2 local.get $0 call $~lib/typedarray/Int32Array#__get i32.const 7616 - local.get $2 + local.get $1 i32.const 1 i32.sub local.get $0 @@ -39822,55 +39835,55 @@ end end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 4 i32.const 8 call $~lib/typedarray/Int32Array#subarray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=12 i32.const 0 - local.set $0 - local.get $2 + local.set $1 + local.get $0 i32.load offset=4 - local.set $3 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 + local.tee $3 i32.const 1 i32.gt_u if - local.get $4 + local.get $3 i32.const 1 i32.shr_u local.set $5 - local.get $4 + local.get $3 i32.const 1 i32.sub - local.set $4 + local.set $3 loop $while-continue|01 - local.get $0 + local.get $1 local.get $5 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add local.tee $6 i32.load local.set $7 local.get $6 - local.get $4 - local.get $0 + local.get $3 + local.get $1 i32.sub i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add local.tee $6 i32.load @@ -39878,17 +39891,17 @@ local.get $6 local.get $7 i32.store - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|01 end end end - local.get $2 + local.get $0 i32.store offset=16 - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 8 @@ -39901,7 +39914,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 7 @@ -39914,7 +39927,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 6 @@ -39927,7 +39940,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#__get i32.const 5 @@ -39986,27 +39999,27 @@ local.get $1 i32.const 7628 i32.load - local.tee $2 + local.tee $1 call $~lib/typedarray/Uint32Array#constructor - local.tee $3 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 call $~lib/typedarray/Uint32Array#constructor - local.tee $4 + local.tee $3 i32.store offset=8 loop $for-loop|0 local.get $0 - local.get $2 + local.get $1 i32.lt_s if - local.get $3 + local.get $2 local.get $0 i32.const 7616 local.get $0 call $~lib/array/Array#__get call $~lib/typedarray/Uint32Array#__set - local.get $4 + local.get $3 local.get $0 i32.const 7616 local.get $0 @@ -40021,25 +40034,25 @@ end i32.const 0 local.set $0 - local.get $3 + local.get $2 i32.load offset=4 - local.set $5 - local.get $3 + local.set $4 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $1 + local.tee $5 i32.const 1 i32.gt_u if - local.get $1 + local.get $5 i32.const 1 i32.shr_u local.set $6 - local.get $1 + local.get $5 i32.const 1 i32.sub - local.set $7 + local.set $5 loop $while-continue|0 local.get $0 local.get $6 @@ -40048,24 +40061,24 @@ local.get $0 i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add - local.tee $8 + local.tee $7 i32.load - local.set $1 - local.get $8 + local.set $8 local.get $7 + local.get $5 local.get $0 i32.sub i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add - local.tee $8 + local.tee $7 i32.load i32.store + local.get $7 local.get $8 - local.get $1 i32.store local.get $0 i32.const 1 @@ -40079,14 +40092,14 @@ local.set $0 loop $for-loop|1 local.get $0 - local.get $2 + local.get $1 i32.lt_s if - local.get $3 + local.get $2 local.get $0 call $~lib/typedarray/Uint32Array#__get i32.const 7616 - local.get $2 + local.get $1 i32.const 1 i32.sub local.get $0 @@ -40109,54 +40122,54 @@ end end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 8 call $~lib/typedarray/Uint32Array#subarray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=12 i32.const 0 - local.set $0 - local.get $2 + local.set $1 + local.get $0 i32.load offset=4 - local.set $3 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 + local.tee $3 i32.const 1 i32.gt_u if - local.get $4 + local.get $3 i32.const 1 i32.shr_u local.set $5 - local.get $4 + local.get $3 i32.const 1 i32.sub - local.set $4 + local.set $3 loop $while-continue|01 - local.get $0 + local.get $1 local.get $5 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add local.tee $6 i32.load local.set $7 local.get $6 - local.get $4 - local.get $0 + local.get $3 + local.get $1 i32.sub i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add local.tee $6 i32.load @@ -40164,17 +40177,17 @@ local.get $6 local.get $7 i32.store - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|01 end end end - local.get $2 + local.get $0 i32.store offset=16 - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 8 @@ -40187,7 +40200,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 7 @@ -40200,7 +40213,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 6 @@ -40213,7 +40226,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#__get i32.const 5 @@ -40233,14 +40246,14 @@ ) (func $std/typedarray/testArrayReverse<~lib/typedarray/Int64Array,i64> (local $0 i32) - (local $1 i64) + (local $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -40257,43 +40270,43 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i64.const 0 i64.store offset=8 - local.get $2 + local.get $1 i32.const 0 i32.store offset=16 - local.get $2 + local.get $1 i32.const 7616 i32.store - local.get $2 + local.get $1 i32.const 7628 i32.load - local.tee $2 + local.tee $1 call $~lib/typedarray/Int64Array#constructor - local.tee $3 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 call $~lib/typedarray/Int64Array#constructor - local.tee $4 + local.tee $3 i32.store offset=8 loop $for-loop|0 local.get $0 - local.get $2 + local.get $1 i32.lt_s if - local.get $3 + local.get $2 local.get $0 i32.const 7616 local.get $0 call $~lib/array/Array#__get i64.extend_i32_s call $~lib/typedarray/Int64Array#__set - local.get $4 + local.get $3 local.get $0 i32.const 7616 local.get $0 @@ -40309,51 +40322,51 @@ end i32.const 0 local.set $0 - local.get $3 + local.get $2 i32.load offset=4 - local.set $5 - local.get $3 + local.set $4 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $6 + local.tee $5 i32.const 1 i32.gt_u if - local.get $6 + local.get $5 i32.const 1 i32.shr_u - local.set $7 - local.get $6 + local.set $6 + local.get $5 i32.const 1 i32.sub - local.set $6 + local.set $5 loop $while-continue|0 local.get $0 - local.get $7 + local.get $6 i32.lt_u if local.get $0 i32.const 3 i32.shl - local.get $5 + local.get $4 i32.add - local.tee $8 + local.tee $7 i64.load - local.set $1 - local.get $8 - local.get $6 + local.set $8 + local.get $7 + local.get $5 local.get $0 i32.sub i32.const 3 i32.shl - local.get $5 + local.get $4 i32.add - local.tee $8 + local.tee $7 i64.load i64.store + local.get $7 local.get $8 - local.get $1 i64.store local.get $0 i32.const 1 @@ -40367,14 +40380,14 @@ local.set $0 loop $for-loop|1 local.get $0 - local.get $2 + local.get $1 i32.lt_s if - local.get $3 + local.get $2 local.get $0 call $~lib/typedarray/Int64Array#__get i32.const 7616 - local.get $2 + local.get $1 i32.const 1 i32.sub local.get $0 @@ -40398,72 +40411,72 @@ end end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 8 call $~lib/typedarray/Int64Array#subarray - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.store offset=12 i32.const 0 - local.set $0 - local.get $3 + local.set $1 + local.get $0 i32.load offset=4 - local.set $4 - local.get $3 + local.set $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $5 + local.tee $3 i32.const 1 i32.gt_u if - local.get $5 + local.get $3 i32.const 1 i32.shr_u - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 1 i32.sub - local.set $5 + local.set $3 loop $while-continue|01 - local.get $0 - local.get $6 + local.get $1 + local.get $5 i32.lt_u if - local.get $0 + local.get $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add - local.tee $7 + local.tee $6 i64.load - local.set $1 - local.get $7 - local.get $5 - local.get $0 + local.set $8 + local.get $6 + local.get $3 + local.get $1 i32.sub i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add - local.tee $7 + local.tee $6 i64.load i64.store - local.get $7 - local.get $1 + local.get $6 + local.get $8 i64.store - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|01 end end end - local.get $3 + local.get $0 i32.store offset=16 - local.get $3 + local.get $0 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 8 @@ -40476,7 +40489,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 7 @@ -40489,7 +40502,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 6 @@ -40502,7 +40515,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#__get i64.const 5 @@ -40522,14 +40535,14 @@ ) (func $std/typedarray/testArrayReverse<~lib/typedarray/Uint64Array,u64> (local $0 i32) - (local $1 i64) + (local $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -40546,43 +40559,43 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i64.const 0 i64.store offset=8 - local.get $2 + local.get $1 i32.const 0 i32.store offset=16 - local.get $2 + local.get $1 i32.const 7616 i32.store - local.get $2 + local.get $1 i32.const 7628 i32.load - local.tee $2 + local.tee $1 call $~lib/typedarray/Uint64Array#constructor - local.tee $3 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 call $~lib/typedarray/Uint64Array#constructor - local.tee $4 + local.tee $3 i32.store offset=8 loop $for-loop|0 local.get $0 - local.get $2 + local.get $1 i32.lt_s if - local.get $3 + local.get $2 local.get $0 i32.const 7616 local.get $0 call $~lib/array/Array#__get i64.extend_i32_s call $~lib/typedarray/Uint64Array#__set - local.get $4 + local.get $3 local.get $0 i32.const 7616 local.get $0 @@ -40598,51 +40611,51 @@ end i32.const 0 local.set $0 - local.get $3 + local.get $2 i32.load offset=4 - local.set $5 - local.get $3 + local.set $4 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $6 + local.tee $5 i32.const 1 i32.gt_u if - local.get $6 + local.get $5 i32.const 1 i32.shr_u - local.set $7 - local.get $6 + local.set $6 + local.get $5 i32.const 1 i32.sub - local.set $6 + local.set $5 loop $while-continue|0 local.get $0 - local.get $7 + local.get $6 i32.lt_u if local.get $0 i32.const 3 i32.shl - local.get $5 + local.get $4 i32.add - local.tee $8 + local.tee $7 i64.load - local.set $1 - local.get $8 - local.get $6 + local.set $8 + local.get $7 + local.get $5 local.get $0 i32.sub i32.const 3 i32.shl - local.get $5 + local.get $4 i32.add - local.tee $8 + local.tee $7 i64.load i64.store + local.get $7 local.get $8 - local.get $1 i64.store local.get $0 i32.const 1 @@ -40656,14 +40669,14 @@ local.set $0 loop $for-loop|1 local.get $0 - local.get $2 + local.get $1 i32.lt_s if - local.get $3 + local.get $2 local.get $0 call $~lib/typedarray/Uint64Array#__get i32.const 7616 - local.get $2 + local.get $1 i32.const 1 i32.sub local.get $0 @@ -40687,72 +40700,72 @@ end end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 8 call $~lib/typedarray/Uint64Array#subarray - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.store offset=12 i32.const 0 - local.set $0 - local.get $3 + local.set $1 + local.get $0 i32.load offset=4 - local.set $4 - local.get $3 + local.set $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $5 + local.tee $3 i32.const 1 i32.gt_u if - local.get $5 + local.get $3 i32.const 1 i32.shr_u - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 1 i32.sub - local.set $5 + local.set $3 loop $while-continue|01 - local.get $0 - local.get $6 + local.get $1 + local.get $5 i32.lt_u if - local.get $0 + local.get $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add - local.tee $7 + local.tee $6 i64.load - local.set $1 - local.get $7 - local.get $5 - local.get $0 + local.set $8 + local.get $6 + local.get $3 + local.get $1 i32.sub i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add - local.tee $7 + local.tee $6 i64.load i64.store - local.get $7 - local.get $1 + local.get $6 + local.get $8 i64.store - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|01 end end end - local.get $3 + local.get $0 i32.store offset=16 - local.get $3 + local.get $0 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 8 @@ -40765,7 +40778,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 7 @@ -40778,7 +40791,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 6 @@ -40791,7 +40804,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#__get i64.const 5 @@ -40811,14 +40824,14 @@ ) (func $std/typedarray/testArrayReverse<~lib/typedarray/Float32Array,f32> (local $0 i32) - (local $1 f32) + (local $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 f32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -40835,43 +40848,43 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i64.const 0 i64.store offset=8 - local.get $2 + local.get $1 i32.const 0 i32.store offset=16 - local.get $2 + local.get $1 i32.const 7616 i32.store - local.get $2 + local.get $1 i32.const 7628 i32.load - local.tee $2 + local.tee $1 call $~lib/typedarray/Float32Array#constructor - local.tee $3 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 call $~lib/typedarray/Float32Array#constructor - local.tee $4 + local.tee $3 i32.store offset=8 loop $for-loop|0 local.get $0 - local.get $2 + local.get $1 i32.lt_s if - local.get $3 + local.get $2 local.get $0 i32.const 7616 local.get $0 call $~lib/array/Array#__get f32.convert_i32_s call $~lib/typedarray/Float32Array#__set - local.get $4 + local.get $3 local.get $0 i32.const 7616 local.get $0 @@ -40887,51 +40900,51 @@ end i32.const 0 local.set $0 - local.get $3 + local.get $2 i32.load offset=4 - local.set $5 - local.get $3 + local.set $4 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $6 + local.tee $5 i32.const 1 i32.gt_u if - local.get $6 + local.get $5 i32.const 1 i32.shr_u - local.set $7 - local.get $6 + local.set $6 + local.get $5 i32.const 1 i32.sub - local.set $6 + local.set $5 loop $while-continue|0 local.get $0 - local.get $7 + local.get $6 i32.lt_u if local.get $0 i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add - local.tee $8 + local.tee $7 f32.load - local.set $1 - local.get $8 - local.get $6 + local.set $8 + local.get $7 + local.get $5 local.get $0 i32.sub i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add - local.tee $8 + local.tee $7 f32.load f32.store + local.get $7 local.get $8 - local.get $1 f32.store local.get $0 i32.const 1 @@ -40945,14 +40958,14 @@ local.set $0 loop $for-loop|1 local.get $0 - local.get $2 + local.get $1 i32.lt_s if - local.get $3 + local.get $2 local.get $0 call $~lib/typedarray/Float32Array#__get i32.const 7616 - local.get $2 + local.get $1 i32.const 1 i32.sub local.get $0 @@ -40976,72 +40989,72 @@ end end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 8 call $~lib/typedarray/Float32Array#subarray - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.store offset=12 i32.const 0 - local.set $0 - local.get $3 + local.set $1 + local.get $0 i32.load offset=4 - local.set $4 - local.get $3 + local.set $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $5 + local.tee $3 i32.const 1 i32.gt_u if - local.get $5 + local.get $3 i32.const 1 i32.shr_u - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 1 i32.sub - local.set $5 + local.set $3 loop $while-continue|01 - local.get $0 - local.get $6 + local.get $1 + local.get $5 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add - local.tee $7 + local.tee $6 f32.load - local.set $1 - local.get $7 - local.get $5 - local.get $0 + local.set $8 + local.get $6 + local.get $3 + local.get $1 i32.sub i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add - local.tee $7 + local.tee $6 f32.load f32.store - local.get $7 - local.get $1 + local.get $6 + local.get $8 f32.store - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|01 end end end - local.get $3 + local.get $0 i32.store offset=16 - local.get $3 + local.get $0 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 8 @@ -41054,7 +41067,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 7 @@ -41067,7 +41080,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 6 @@ -41080,7 +41093,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#__get f32.const 5 @@ -41100,14 +41113,14 @@ ) (func $std/typedarray/testArrayReverse<~lib/typedarray/Float64Array,f64> (local $0 i32) - (local $1 f64) + (local $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 f64) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -41124,43 +41137,43 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i64.const 0 i64.store offset=8 - local.get $2 + local.get $1 i32.const 0 i32.store offset=16 - local.get $2 + local.get $1 i32.const 7616 i32.store - local.get $2 + local.get $1 i32.const 7628 i32.load - local.tee $2 + local.tee $1 call $~lib/typedarray/Float64Array#constructor - local.tee $3 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 call $~lib/typedarray/Float64Array#constructor - local.tee $4 + local.tee $3 i32.store offset=8 loop $for-loop|0 local.get $0 - local.get $2 + local.get $1 i32.lt_s if - local.get $3 + local.get $2 local.get $0 i32.const 7616 local.get $0 call $~lib/array/Array#__get f64.convert_i32_s call $~lib/typedarray/Float64Array#__set - local.get $4 + local.get $3 local.get $0 i32.const 7616 local.get $0 @@ -41176,51 +41189,51 @@ end i32.const 0 local.set $0 - local.get $3 + local.get $2 i32.load offset=4 - local.set $5 - local.get $3 + local.set $4 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $6 + local.tee $5 i32.const 1 i32.gt_u if - local.get $6 + local.get $5 i32.const 1 i32.shr_u - local.set $7 - local.get $6 + local.set $6 + local.get $5 i32.const 1 i32.sub - local.set $6 + local.set $5 loop $while-continue|0 local.get $0 - local.get $7 + local.get $6 i32.lt_u if local.get $0 i32.const 3 i32.shl - local.get $5 + local.get $4 i32.add - local.tee $8 + local.tee $7 f64.load - local.set $1 - local.get $8 - local.get $6 + local.set $8 + local.get $7 + local.get $5 local.get $0 i32.sub i32.const 3 i32.shl - local.get $5 + local.get $4 i32.add - local.tee $8 + local.tee $7 f64.load f64.store + local.get $7 local.get $8 - local.get $1 f64.store local.get $0 i32.const 1 @@ -41234,14 +41247,14 @@ local.set $0 loop $for-loop|1 local.get $0 - local.get $2 + local.get $1 i32.lt_s if - local.get $3 + local.get $2 local.get $0 call $~lib/typedarray/Float64Array#__get i32.const 7616 - local.get $2 + local.get $1 i32.const 1 i32.sub local.get $0 @@ -41265,73 +41278,73 @@ end end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 4 i32.const 8 call $~lib/typedarray/Float64Array#subarray - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.store offset=12 i32.const 0 - local.set $0 - local.get $3 + local.set $1 + local.get $0 i32.load offset=4 - local.set $4 - local.get $3 + local.set $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $5 + local.tee $3 i32.const 1 i32.gt_u if - local.get $5 + local.get $3 i32.const 1 i32.shr_u - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 1 i32.sub - local.set $5 + local.set $3 loop $while-continue|01 - local.get $0 - local.get $6 + local.get $1 + local.get $5 i32.lt_u if - local.get $0 + local.get $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add - local.tee $7 + local.tee $6 f64.load - local.set $1 - local.get $7 - local.get $5 - local.get $0 + local.set $8 + local.get $6 + local.get $3 + local.get $1 i32.sub i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add - local.tee $7 + local.tee $6 f64.load f64.store - local.get $7 - local.get $1 + local.get $6 + local.get $8 f64.store - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|01 end end end - local.get $3 + local.get $0 i32.store offset=16 - local.get $3 + local.get $0 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 8 @@ -41344,7 +41357,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 7 @@ -41357,7 +41370,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 6 @@ -41370,7 +41383,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#__get f64.const 5 @@ -41511,12 +41524,12 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Int8Array> (local $0 i32) (local $1 i32) - (local $2 f32) - (local $3 f64) + (local $2 i32) + (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) + (local $6 f32) + (local $7 f64) (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer @@ -41535,97 +41548,97 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $4 + local.get $2 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $4 + local.get $2 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $5 + local.tee $1 i32.store offset=4 - local.get $5 + local.get $1 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $1 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $1 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $1 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $1 + local.tee $3 i32.store offset=8 - local.get $1 + local.get $3 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $3 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $3 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Int8Array#constructor - local.tee $6 + local.tee $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $6 + local.get $0 call $~lib/typedarray/Int8Array#set<~lib/array/Array> i32.const 10 i32.const 0 i32.const 15 i32.const 11312 call $~lib/rt/__newArray - local.set $7 + local.set $5 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $5 i32.store offset=16 - local.get $6 - local.get $7 + local.get $0 + local.get $5 call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 block $folding-inner0 - local.get $6 + local.get $0 i32.load offset=8 i32.const 11100 i32.load @@ -41633,11 +41646,11 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $6 + local.get $0 i32.load offset=4 i32.const 3 i32.add - local.set $7 + local.set $5 i32.const 11092 i32.load local.set $8 @@ -41645,35 +41658,35 @@ i32.load local.set $9 loop $for-loop|0 - local.get $0 + local.get $4 local.get $9 i32.lt_s if - local.get $0 - local.get $7 + local.get $4 + local.get $5 i32.add - local.get $0 + local.get $4 i32.const 2 i32.shl local.get $8 i32.add f32.load - local.tee $2 - local.get $2 + local.tee $6 + local.get $6 f32.sub f32.const 0 f32.eq if (result i32) - local.get $2 + local.get $6 i32.trunc_f32_s else i32.const 0 end i32.store8 - local.get $0 + local.get $4 i32.const 1 i32.add - local.set $0 + local.set $4 br $for-loop|0 end end @@ -41682,34 +41695,34 @@ i32.const 15 i32.const 11392 call $~lib/rt/__newArray - local.set $0 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $4 i32.store offset=16 - local.get $6 local.get $0 - call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> - local.get $6 local.get $4 + call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> + local.get $0 + local.get $2 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 0 i32.const 15 i32.const 11424 call $~lib/rt/__newArray - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=16 - local.get $6 local.get $0 + local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $0 - local.get $6 + local.set $2 + local.get $0 i32.load offset=8 i32.const 11196 i32.load @@ -41717,47 +41730,47 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $6 + local.get $0 i32.load offset=4 i32.const 2 i32.add local.set $4 i32.const 11188 i32.load - local.set $7 + local.set $5 i32.const 11196 i32.load local.set $8 loop $for-loop|04 - local.get $0 + local.get $2 local.get $8 i32.lt_s if - local.get $0 + local.get $2 local.get $4 i32.add - local.get $0 + local.get $2 i32.const 3 i32.shl - local.get $7 + local.get $5 i32.add f64.load - local.tee $3 - local.get $3 + local.tee $7 + local.get $7 f64.sub f64.const 0 f64.eq if (result i32) - local.get $3 + local.get $7 i32.trunc_f64_s else i32.const 0 end i32.store8 - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|04 end end @@ -41766,35 +41779,35 @@ i32.const 15 i32.const 11456 call $~lib/rt/__newArray - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=16 - local.get $6 local.get $0 + local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> - local.get $6 - local.get $5 - call $~lib/typedarray/Int8Array#set<~lib/typedarray/Uint8Array> - local.get $6 + local.get $0 local.get $1 + call $~lib/typedarray/Int8Array#set<~lib/typedarray/Uint8Array> + local.get $0 + local.get $3 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $6 + local.get $0 call $~lib/typedarray/Int8Array#set<~lib/array/Array> i32.const 10 i32.const 0 i32.const 15 i32.const 11488 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -41901,12 +41914,12 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint8Array> (local $0 i32) (local $1 i32) - (local $2 f32) - (local $3 f64) + (local $2 i32) + (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) + (local $6 f32) + (local $7 f64) (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer @@ -41925,97 +41938,97 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $4 + local.get $2 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $4 + local.get $2 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $5 + local.tee $1 i32.store offset=4 - local.get $5 + local.get $1 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $1 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $1 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $1 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $1 + local.tee $3 i32.store offset=8 - local.get $1 + local.get $3 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $3 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $3 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint8Array#constructor - local.tee $6 + local.tee $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $6 + local.get $0 call $~lib/typedarray/Int8Array#set<~lib/array/Array> i32.const 10 i32.const 0 i32.const 63 i32.const 11520 call $~lib/rt/__newArray - local.set $7 + local.set $5 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $5 i32.store offset=16 - local.get $6 - local.get $7 + local.get $0 + local.get $5 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 block $folding-inner0 - local.get $6 + local.get $0 i32.load offset=8 i32.const 11100 i32.load @@ -42023,11 +42036,11 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $6 + local.get $0 i32.load offset=4 i32.const 3 i32.add - local.set $7 + local.set $5 i32.const 11092 i32.load local.set $8 @@ -42035,35 +42048,35 @@ i32.load local.set $9 loop $for-loop|0 - local.get $0 + local.get $4 local.get $9 i32.lt_s if - local.get $0 - local.get $7 + local.get $4 + local.get $5 i32.add - local.get $0 + local.get $4 i32.const 2 i32.shl local.get $8 i32.add f32.load - local.tee $2 - local.get $2 + local.tee $6 + local.get $6 f32.sub f32.const 0 f32.eq if (result i32) - local.get $2 + local.get $6 i32.trunc_f32_u else i32.const 0 end i32.store8 - local.get $0 + local.get $4 i32.const 1 i32.add - local.set $0 + local.set $4 br $for-loop|0 end end @@ -42072,34 +42085,34 @@ i32.const 63 i32.const 11600 call $~lib/rt/__newArray - local.set $0 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $4 i32.store offset=16 - local.get $6 local.get $0 - call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> - local.get $6 local.get $4 + call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> + local.get $0 + local.get $2 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 0 i32.const 63 i32.const 11632 call $~lib/rt/__newArray - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=16 - local.get $6 local.get $0 + local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $0 - local.get $6 + local.set $2 + local.get $0 i32.load offset=8 i32.const 11196 i32.load @@ -42107,47 +42120,47 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $6 + local.get $0 i32.load offset=4 i32.const 2 i32.add local.set $4 i32.const 11188 i32.load - local.set $7 + local.set $5 i32.const 11196 i32.load local.set $8 loop $for-loop|04 - local.get $0 + local.get $2 local.get $8 i32.lt_s if - local.get $0 + local.get $2 local.get $4 i32.add - local.get $0 + local.get $2 i32.const 3 i32.shl - local.get $7 + local.get $5 i32.add f64.load - local.tee $3 - local.get $3 + local.tee $7 + local.get $7 f64.sub f64.const 0 f64.eq if (result i32) - local.get $3 + local.get $7 i32.trunc_f64_u else i32.const 0 end i32.store8 - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|04 end end @@ -42156,35 +42169,35 @@ i32.const 63 i32.const 11664 call $~lib/rt/__newArray - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=16 - local.get $6 local.get $0 + local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> - local.get $6 - local.get $5 - call $~lib/typedarray/Int8Array#set<~lib/typedarray/Uint8Array> - local.get $6 + local.get $0 local.get $1 + call $~lib/typedarray/Int8Array#set<~lib/typedarray/Uint8Array> + local.get $0 + local.get $3 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $6 + local.get $0 call $~lib/typedarray/Int8Array#set<~lib/array/Array> i32.const 10 i32.const 0 i32.const 63 i32.const 11696 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -42290,13 +42303,13 @@ ) (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint8ClampedArray> (local $0 i32) - (local $1 f32) - (local $2 f64) + (local $1 i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) + (local $6 f32) + (local $7 f64) (local $8 i32) (local $9 i32) (local $10 i32) @@ -42316,16 +42329,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $1 i64.const 0 i64.store offset=8 - local.get $3 + local.get $1 i32.const 0 i32.store offset=16 - local.get $3 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor local.tee $3 @@ -42345,45 +42358,45 @@ global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 - local.get $4 + local.get $2 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $4 + local.get $2 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $4 + local.get $2 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $4 + local.get $2 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $5 + local.tee $4 i32.store offset=8 - local.get $5 + local.get $4 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $4 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $4 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $6 + local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 @@ -42391,41 +42404,41 @@ block $folding-inner0 i32.const 11020 i32.load - local.get $6 + local.get $1 i32.load offset=8 i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $1 i32.load offset=4 - local.set $7 + local.set $8 i32.const 11012 i32.load - local.set $8 + local.set $9 i32.const 11020 i32.load - local.set $9 + local.set $10 loop $for-loop|0 local.get $0 - local.get $9 + local.get $10 i32.lt_s if local.get $0 - local.get $7 + local.get $8 i32.add i32.const 255 local.get $0 i32.const 2 i32.shl - local.get $8 + local.get $9 i32.add i32.load - local.tee $10 + local.tee $5 i32.sub i32.const 31 i32.shr_s - local.get $10 + local.get $5 i32.or - local.get $10 + local.get $5 i32.const 31 i32.shr_s i32.const -1 @@ -42448,7 +42461,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $6 + local.get $1 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> global.get $~lib/memory/__stack_pointer @@ -42456,7 +42469,7 @@ i32.store offset=16 i32.const 0 local.set $0 - local.get $6 + local.get $1 i32.load offset=8 i32.const 11100 i32.load @@ -42464,11 +42477,11 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $6 + local.get $1 i32.load offset=4 i32.const 3 i32.add - local.set $7 + local.set $5 i32.const 11092 i32.load local.set $8 @@ -42481,7 +42494,7 @@ i32.lt_s if local.get $0 - local.get $7 + local.get $5 i32.add local.get $0 i32.const 2 @@ -42489,15 +42502,15 @@ local.get $8 i32.add f32.load - local.tee $1 - local.get $1 + local.tee $6 + local.get $6 f32.sub f32.const 0 f32.eq if (result i32) f32.const 0 f32.const 255 - local.get $1 + local.get $6 f32.min f32.max i32.trunc_f32_u @@ -42521,10 +42534,10 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $6 + local.get $1 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> - local.get $6 + local.get $1 local.get $3 i32.const 6 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int64Array> @@ -42537,7 +42550,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $6 + local.get $1 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> global.get $~lib/memory/__stack_pointer @@ -42545,7 +42558,7 @@ i32.store offset=16 i32.const 0 local.set $0 - local.get $6 + local.get $1 i32.load offset=8 i32.const 11196 i32.load @@ -42553,14 +42566,14 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $6 + local.get $1 i32.load offset=4 i32.const 2 i32.add local.set $3 i32.const 11188 i32.load - local.set $7 + local.set $5 i32.const 11196 i32.load local.set $8 @@ -42575,18 +42588,18 @@ local.get $0 i32.const 3 i32.shl - local.get $7 + local.get $5 i32.add f64.load - local.tee $2 - local.get $2 + local.tee $7 + local.get $7 f64.sub f64.const 0 f64.eq if (result i32) f64.const 0 f64.const 255 - local.get $2 + local.get $7 f64.min f64.max i32.trunc_f64_u @@ -42610,14 +42623,14 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $6 + local.get $1 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> - local.get $6 - local.get $4 + local.get $1 + local.get $2 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Uint8Array> - local.get $6 - local.get $5 + local.get $1 + local.get $4 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer @@ -42625,7 +42638,7 @@ i32.store offset=16 i32.const 0 local.set $0 - local.get $6 + local.get $1 i32.load offset=8 i32.const 11276 i32.load @@ -42633,7 +42646,7 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $6 + local.get $1 i32.load offset=4 i32.const 7 i32.add @@ -42657,13 +42670,13 @@ local.get $4 i32.add i32.load8_s - local.tee $7 + local.tee $2 i32.sub i32.const 31 i32.shr_s - local.get $7 + local.get $2 i32.or - local.get $7 + local.get $2 i32.const 31 i32.shr_s i32.const -1 @@ -42686,7 +42699,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $6 + local.get $1 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> global.get $~lib/memory/__stack_pointer @@ -42749,18 +42762,18 @@ local.get $2 i32.const 1 i32.shl - local.tee $5 + local.tee $4 local.get $0 i32.load offset=4 i32.add i32.load16_s - local.tee $4 + local.tee $5 local.get $1 i32.load offset=4 - local.get $5 + local.get $4 i32.add i32.load16_s - local.tee $5 + local.tee $4 i32.ne if global.get $~lib/memory/__stack_pointer @@ -42770,10 +42783,10 @@ i32.const 3 local.get $2 f64.convert_i32_s - local.get $4 - f64.convert_i32_s local.get $5 f64.convert_i32_s + local.get $4 + f64.convert_i32_s f64.const 0 f64.const 0 call $~lib/builtins/trace @@ -42799,12 +42812,12 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Int16Array> (local $0 i32) (local $1 i32) - (local $2 f32) - (local $3 f64) + (local $2 i32) + (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) + (local $6 f32) + (local $7 f64) (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer @@ -42823,91 +42836,91 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $4 + local.get $2 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $4 + local.get $2 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $5 + local.tee $1 i32.store offset=4 - local.get $5 + local.get $1 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $1 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $1 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $1 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $1 + local.tee $3 i32.store offset=8 - local.get $1 + local.get $3 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $3 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $3 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Int16Array#constructor - local.tee $6 + local.tee $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $6 + local.get $0 call $~lib/typedarray/Int16Array#set<~lib/array/Array> i32.const 10 i32.const 1 i32.const 64 i32.const 11952 call $~lib/rt/__newArray - local.set $7 + local.set $5 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $5 i32.store offset=16 - local.get $6 - local.get $7 + local.get $0 + local.get $5 call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11088 @@ -42917,17 +42930,17 @@ i32.load i32.const 3 i32.add - local.get $6 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $0 i32.load offset=4 i32.const 6 i32.add - local.set $7 + local.set $5 i32.const 11092 i32.load local.set $8 @@ -42935,37 +42948,37 @@ i32.load local.set $9 loop $for-loop|0 - local.get $0 + local.get $4 local.get $9 i32.lt_s if - local.get $0 + local.get $4 i32.const 1 i32.shl - local.get $7 + local.get $5 i32.add - local.get $0 + local.get $4 i32.const 2 i32.shl local.get $8 i32.add f32.load - local.tee $2 - local.get $2 + local.tee $6 + local.get $6 f32.sub f32.const 0 f32.eq if (result i32) - local.get $2 + local.get $6 i32.trunc_f32_s else i32.const 0 end i32.store16 - local.get $0 + local.get $4 i32.const 1 i32.add - local.set $0 + local.set $4 br $for-loop|0 end end @@ -42974,86 +42987,86 @@ i32.const 64 i32.const 12048 call $~lib/rt/__newArray - local.set $0 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $4 i32.store offset=16 - local.get $6 local.get $0 - call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> - local.get $6 local.get $4 + call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> + local.get $0 + local.get $2 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 1 i32.const 64 i32.const 12096 call $~lib/rt/__newArray - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=16 - local.get $6 local.get $0 + local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $0 + local.set $2 i32.const 11196 i32.load i32.const 2 i32.add - local.get $6 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $0 i32.load offset=4 i32.const 4 i32.add local.set $4 i32.const 11188 i32.load - local.set $7 + local.set $5 i32.const 11196 i32.load local.set $8 loop $for-loop|04 - local.get $0 + local.get $2 local.get $8 i32.lt_s if - local.get $0 + local.get $2 i32.const 1 i32.shl local.get $4 i32.add - local.get $0 + local.get $2 i32.const 3 i32.shl - local.get $7 + local.get $5 i32.add f64.load - local.tee $3 - local.get $3 + local.tee $7 + local.get $7 f64.sub f64.const 0 f64.eq if (result i32) - local.get $3 + local.get $7 i32.trunc_f64_s else i32.const 0 end i32.store16 - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|04 end end @@ -43062,35 +43075,35 @@ i32.const 64 i32.const 12144 call $~lib/rt/__newArray - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=16 - local.get $6 local.get $0 + local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> - local.get $6 - local.get $5 - call $~lib/typedarray/Int16Array#set<~lib/typedarray/Uint8Array> - local.get $6 + local.get $0 local.get $1 + call $~lib/typedarray/Int16Array#set<~lib/typedarray/Uint8Array> + local.get $0 + local.get $3 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $6 + local.get $0 call $~lib/typedarray/Int16Array#set<~lib/array/Array> i32.const 10 i32.const 1 i32.const 64 i32.const 12192 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -43152,18 +43165,18 @@ local.get $2 i32.const 1 i32.shl - local.tee $5 + local.tee $4 local.get $0 i32.load offset=4 i32.add i32.load16_u - local.tee $4 + local.tee $5 local.get $1 i32.load offset=4 - local.get $5 + local.get $4 i32.add i32.load16_u - local.tee $5 + local.tee $4 i32.ne if global.get $~lib/memory/__stack_pointer @@ -43173,10 +43186,10 @@ i32.const 3 local.get $2 f64.convert_i32_s - local.get $4 - f64.convert_i32_u local.get $5 f64.convert_i32_u + local.get $4 + f64.convert_i32_u f64.const 0 f64.const 0 call $~lib/builtins/trace @@ -43202,12 +43215,12 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint16Array> (local $0 i32) (local $1 i32) - (local $2 f32) - (local $3 f64) + (local $2 i32) + (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) + (local $6 f32) + (local $7 f64) (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer @@ -43226,91 +43239,91 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $4 + local.get $2 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $4 + local.get $2 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $5 + local.tee $1 i32.store offset=4 - local.get $5 + local.get $1 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $1 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $1 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $1 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $1 + local.tee $3 i32.store offset=8 - local.get $1 + local.get $3 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $3 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $3 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint16Array#constructor - local.tee $6 + local.tee $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $6 + local.get $0 call $~lib/typedarray/Int16Array#set<~lib/array/Array> i32.const 10 i32.const 1 i32.const 65 i32.const 12240 call $~lib/rt/__newArray - local.set $7 + local.set $5 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $5 i32.store offset=16 - local.get $6 - local.get $7 + local.get $0 + local.get $5 call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> global.get $~lib/memory/__stack_pointer i32.const 11088 @@ -43320,17 +43333,17 @@ i32.load i32.const 3 i32.add - local.get $6 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $0 i32.load offset=4 i32.const 6 i32.add - local.set $7 + local.set $5 i32.const 11092 i32.load local.set $8 @@ -43338,37 +43351,37 @@ i32.load local.set $9 loop $for-loop|0 - local.get $0 + local.get $4 local.get $9 i32.lt_s if - local.get $0 + local.get $4 i32.const 1 i32.shl - local.get $7 + local.get $5 i32.add - local.get $0 + local.get $4 i32.const 2 i32.shl local.get $8 i32.add f32.load - local.tee $2 - local.get $2 + local.tee $6 + local.get $6 f32.sub f32.const 0 f32.eq if (result i32) - local.get $2 + local.get $6 i32.trunc_f32_u else i32.const 0 end i32.store16 - local.get $0 + local.get $4 i32.const 1 i32.add - local.set $0 + local.set $4 br $for-loop|0 end end @@ -43377,86 +43390,86 @@ i32.const 65 i32.const 12336 call $~lib/rt/__newArray - local.set $0 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $4 i32.store offset=16 - local.get $6 local.get $0 - call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> - local.get $6 local.get $4 + call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> + local.get $0 + local.get $2 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 1 i32.const 65 i32.const 12384 call $~lib/rt/__newArray - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=16 - local.get $6 local.get $0 + local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $0 + local.set $2 i32.const 11196 i32.load i32.const 2 i32.add - local.get $6 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $0 i32.load offset=4 i32.const 4 i32.add local.set $4 i32.const 11188 i32.load - local.set $7 + local.set $5 i32.const 11196 i32.load local.set $8 loop $for-loop|04 - local.get $0 + local.get $2 local.get $8 i32.lt_s if - local.get $0 + local.get $2 i32.const 1 i32.shl local.get $4 i32.add - local.get $0 + local.get $2 i32.const 3 i32.shl - local.get $7 + local.get $5 i32.add f64.load - local.tee $3 - local.get $3 + local.tee $7 + local.get $7 f64.sub f64.const 0 f64.eq if (result i32) - local.get $3 + local.get $7 i32.trunc_f64_u else i32.const 0 end i32.store16 - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|04 end end @@ -43465,35 +43478,35 @@ i32.const 65 i32.const 12432 call $~lib/rt/__newArray - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=16 - local.get $6 local.get $0 + local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> - local.get $6 - local.get $5 - call $~lib/typedarray/Int16Array#set<~lib/typedarray/Uint8Array> - local.get $6 + local.get $0 local.get $1 + call $~lib/typedarray/Int16Array#set<~lib/typedarray/Uint8Array> + local.get $0 + local.get $3 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $6 + local.get $0 call $~lib/typedarray/Int16Array#set<~lib/array/Array> i32.const 10 i32.const 1 i32.const 65 i32.const 12480 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -43555,18 +43568,18 @@ local.get $2 i32.const 2 i32.shl - local.tee $5 + local.tee $4 local.get $0 i32.load offset=4 i32.add i32.load - local.tee $4 + local.tee $5 local.get $1 i32.load offset=4 - local.get $5 + local.get $4 i32.add i32.load - local.tee $5 + local.tee $4 i32.ne if global.get $~lib/memory/__stack_pointer @@ -43576,10 +43589,10 @@ i32.const 3 local.get $2 f64.convert_i32_s - local.get $4 - f64.convert_i32_s local.get $5 f64.convert_i32_s + local.get $4 + f64.convert_i32_s f64.const 0 f64.const 0 call $~lib/builtins/trace @@ -43605,12 +43618,12 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Int32Array> (local $0 i32) (local $1 i32) - (local $2 f32) - (local $3 f64) + (local $2 i32) + (local $3 i32) (local $4 i32) - (local $5 i32) + (local $5 f32) (local $6 i32) - (local $7 i32) + (local $7 f64) (local $8 i32) (local $9 i32) (local $10 i32) @@ -43630,79 +43643,79 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $5 + local.tee $2 i32.store - local.get $5 + local.get $2 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $5 + local.get $2 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $5 + local.get $2 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $6 + local.tee $1 i32.store offset=4 - local.get $6 + local.get $1 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $6 + local.get $1 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $6 + local.get $1 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $6 + local.get $1 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $1 + local.tee $3 i32.store offset=8 - local.get $1 + local.get $3 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $3 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $3 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Int32Array#constructor - local.tee $7 + local.tee $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $7 + local.get $0 i32.const 11008 i32.const 0 call $~lib/typedarray/Int32Array#set<~lib/array/Array> @@ -43711,12 +43724,12 @@ i32.const 16 i32.const 12528 call $~lib/rt/__newArray - local.set $4 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store offset=16 - local.get $7 - local.get $4 + local.get $0 + local.get $6 call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> global.get $~lib/memory/__stack_pointer i32.const 11088 @@ -43726,55 +43739,55 @@ i32.load i32.const 3 i32.add - local.get $7 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $7 + local.get $0 i32.load offset=4 i32.const 12 i32.add - local.set $8 + local.set $6 i32.const 11092 i32.load - local.set $9 + local.set $8 i32.const 11100 i32.load - local.set $4 + local.set $9 loop $for-loop|0 - local.get $0 local.get $4 + local.get $9 i32.lt_s if - local.get $9 - local.get $0 + local.get $8 + local.get $4 i32.const 2 i32.shl local.tee $10 i32.add f32.load - local.set $2 - local.get $8 + local.set $5 + local.get $6 local.get $10 i32.add - local.get $2 - local.get $2 + local.get $5 + local.get $5 f32.sub f32.const 0 f32.eq if (result i32) - local.get $2 + local.get $5 i32.trunc_f32_s else i32.const 0 end i32.store - local.get $0 + local.get $4 i32.const 1 i32.add - local.set $0 + local.set $4 br $for-loop|0 end end @@ -43783,86 +43796,86 @@ i32.const 16 i32.const 12640 call $~lib/rt/__newArray - local.set $0 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $4 i32.store offset=16 - local.get $7 local.get $0 + local.get $4 call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> - local.get $7 - local.get $5 + local.get $0 + local.get $2 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 2 i32.const 16 i32.const 12704 call $~lib/rt/__newArray - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=16 - local.get $7 local.get $0 + local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $0 + local.set $2 i32.const 11196 i32.load i32.const 2 i32.add - local.get $7 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $7 + local.get $0 i32.load offset=4 i32.const 8 i32.add local.set $4 i32.const 11188 i32.load - local.set $5 + local.set $6 i32.const 11196 i32.load local.set $8 loop $for-loop|04 - local.get $0 + local.get $2 local.get $8 i32.lt_s if - local.get $0 + local.get $2 i32.const 2 i32.shl local.get $4 i32.add - local.get $0 + local.get $2 i32.const 3 i32.shl - local.get $5 + local.get $6 i32.add f64.load - local.tee $3 - local.get $3 + local.tee $7 + local.get $7 f64.sub f64.const 0 f64.eq if (result i32) - local.get $3 + local.get $7 i32.trunc_f64_s else i32.const 0 end i32.store - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|04 end end @@ -43871,35 +43884,35 @@ i32.const 16 i32.const 12768 call $~lib/rt/__newArray - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=16 - local.get $7 local.get $0 + local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> - local.get $7 - local.get $6 - call $~lib/typedarray/Int32Array#set<~lib/typedarray/Uint8Array> - local.get $7 + local.get $0 local.get $1 + call $~lib/typedarray/Int32Array#set<~lib/typedarray/Uint8Array> + local.get $0 + local.get $3 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $7 + local.get $0 call $~lib/typedarray/Int32Array#set<~lib/array/Array> i32.const 10 i32.const 2 i32.const 16 i32.const 12832 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $7 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -43961,18 +43974,18 @@ local.get $2 i32.const 2 i32.shl - local.tee $5 + local.tee $4 local.get $0 i32.load offset=4 i32.add i32.load - local.tee $4 + local.tee $5 local.get $1 i32.load offset=4 - local.get $5 + local.get $4 i32.add i32.load - local.tee $5 + local.tee $4 i32.ne if global.get $~lib/memory/__stack_pointer @@ -43982,10 +43995,10 @@ i32.const 3 local.get $2 f64.convert_i32_s - local.get $4 - f64.convert_i32_u local.get $5 f64.convert_i32_u + local.get $4 + f64.convert_i32_u f64.const 0 f64.const 0 call $~lib/builtins/trace @@ -44011,12 +44024,12 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint32Array> (local $0 i32) (local $1 i32) - (local $2 f32) - (local $3 f64) + (local $2 i32) + (local $3 i32) (local $4 i32) - (local $5 i32) + (local $5 f32) (local $6 i32) - (local $7 i32) + (local $7 f64) (local $8 i32) (local $9 i32) (local $10 i32) @@ -44036,79 +44049,79 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $5 + local.tee $2 i32.store - local.get $5 + local.get $2 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $5 + local.get $2 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $5 + local.get $2 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $6 + local.tee $1 i32.store offset=4 - local.get $6 + local.get $1 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $6 + local.get $1 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $6 + local.get $1 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $6 + local.get $1 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $1 + local.tee $3 i32.store offset=8 - local.get $1 + local.get $3 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $3 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $3 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint32Array#constructor - local.tee $7 + local.tee $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $7 + local.get $0 i32.const 11008 i32.const 0 call $~lib/typedarray/Int32Array#set<~lib/array/Array> @@ -44117,12 +44130,12 @@ i32.const 66 i32.const 12896 call $~lib/rt/__newArray - local.set $4 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store offset=16 - local.get $7 - local.get $4 + local.get $0 + local.get $6 call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> global.get $~lib/memory/__stack_pointer i32.const 11088 @@ -44132,55 +44145,55 @@ i32.load i32.const 3 i32.add - local.get $7 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $7 + local.get $0 i32.load offset=4 i32.const 12 i32.add - local.set $8 + local.set $6 i32.const 11092 i32.load - local.set $9 + local.set $8 i32.const 11100 i32.load - local.set $4 + local.set $9 loop $for-loop|0 - local.get $0 local.get $4 + local.get $9 i32.lt_s if - local.get $9 - local.get $0 + local.get $8 + local.get $4 i32.const 2 i32.shl local.tee $10 i32.add f32.load - local.set $2 - local.get $8 + local.set $5 + local.get $6 local.get $10 i32.add - local.get $2 - local.get $2 + local.get $5 + local.get $5 f32.sub f32.const 0 f32.eq if (result i32) - local.get $2 + local.get $5 i32.trunc_f32_u else i32.const 0 end i32.store - local.get $0 + local.get $4 i32.const 1 i32.add - local.set $0 + local.set $4 br $for-loop|0 end end @@ -44189,86 +44202,86 @@ i32.const 66 i32.const 13008 call $~lib/rt/__newArray - local.set $0 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $4 i32.store offset=16 - local.get $7 local.get $0 + local.get $4 call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> - local.get $7 - local.get $5 + local.get $0 + local.get $2 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 2 i32.const 66 i32.const 13072 call $~lib/rt/__newArray - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=16 - local.get $7 local.get $0 + local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $0 + local.set $2 i32.const 11196 i32.load i32.const 2 i32.add - local.get $7 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $7 + local.get $0 i32.load offset=4 i32.const 8 i32.add local.set $4 i32.const 11188 i32.load - local.set $5 + local.set $6 i32.const 11196 i32.load local.set $8 loop $for-loop|04 - local.get $0 + local.get $2 local.get $8 i32.lt_s if - local.get $0 + local.get $2 i32.const 2 i32.shl local.get $4 i32.add - local.get $0 + local.get $2 i32.const 3 i32.shl - local.get $5 + local.get $6 i32.add f64.load - local.tee $3 - local.get $3 + local.tee $7 + local.get $7 f64.sub f64.const 0 f64.eq if (result i32) - local.get $3 + local.get $7 i32.trunc_f64_u else i32.const 0 end i32.store - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|04 end end @@ -44277,35 +44290,35 @@ i32.const 66 i32.const 13136 call $~lib/rt/__newArray - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=16 - local.get $7 local.get $0 + local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> - local.get $7 - local.get $6 - call $~lib/typedarray/Int32Array#set<~lib/typedarray/Uint8Array> - local.get $7 + local.get $0 local.get $1 + call $~lib/typedarray/Int32Array#set<~lib/typedarray/Uint8Array> + local.get $0 + local.get $3 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $7 + local.get $0 call $~lib/typedarray/Int32Array#set<~lib/array/Array> i32.const 10 i32.const 2 i32.const 66 i32.const 13200 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $7 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -44418,12 +44431,12 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Int64Array> (local $0 i32) (local $1 i32) - (local $2 f64) - (local $3 f32) + (local $2 i32) + (local $3 i32) (local $4 i32) - (local $5 i32) + (local $5 f64) (local $6 i32) - (local $7 i32) + (local $7 f32) (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer @@ -44442,91 +44455,91 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $4 + local.get $2 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $4 + local.get $2 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $5 + local.tee $1 i32.store offset=4 - local.get $5 + local.get $1 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $1 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $1 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $1 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $1 + local.tee $3 i32.store offset=8 - local.get $1 + local.get $3 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $3 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $3 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Int64Array#constructor - local.tee $6 + local.tee $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $6 + local.get $0 call $~lib/typedarray/Int64Array#set<~lib/array/Array> i32.const 10 i32.const 3 i32.const 67 i32.const 13264 call $~lib/rt/__newArray - local.set $7 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $6 i32.store offset=16 + local.get $0 local.get $6 - local.get $7 call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> global.get $~lib/memory/__stack_pointer i32.const 11088 @@ -44536,17 +44549,17 @@ i32.load i32.const 3 i32.add - local.get $6 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $0 i32.load offset=4 i32.const 24 i32.add - local.set $7 + local.set $6 i32.const 11092 i32.load local.set $8 @@ -44554,37 +44567,37 @@ i32.load local.set $9 loop $for-loop|0 - local.get $0 + local.get $4 local.get $9 i32.lt_s if - local.get $0 + local.get $4 i32.const 3 i32.shl - local.get $7 + local.get $6 i32.add - local.get $0 + local.get $4 i32.const 2 i32.shl local.get $8 i32.add f32.load - local.tee $3 - local.get $3 + local.tee $7 + local.get $7 f32.sub f32.const 0 f32.eq if (result i64) - local.get $3 + local.get $7 i64.trunc_f32_s else i64.const 0 end i64.store - local.get $0 + local.get $4 i32.const 1 i32.add - local.set $0 + local.set $4 br $for-loop|0 end end @@ -44593,86 +44606,86 @@ i32.const 67 i32.const 13424 call $~lib/rt/__newArray - local.set $0 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $4 i32.store offset=16 - local.get $6 local.get $0 - call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> - local.get $6 local.get $4 + call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> + local.get $0 + local.get $2 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 3 i32.const 67 i32.const 13536 call $~lib/rt/__newArray - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=16 - local.get $6 local.get $0 + local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $0 + local.set $2 i32.const 11196 i32.load i32.const 2 i32.add - local.get $6 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $0 i32.load offset=4 i32.const 16 i32.add local.set $4 i32.const 11188 i32.load - local.set $7 + local.set $6 i32.const 11196 i32.load local.set $8 loop $for-loop|04 - local.get $0 + local.get $2 local.get $8 i32.lt_s if - local.get $7 - local.get $0 + local.get $6 + local.get $2 i32.const 3 i32.shl local.tee $9 i32.add f64.load - local.set $2 + local.set $5 local.get $4 local.get $9 i32.add - local.get $2 - local.get $2 + local.get $5 + local.get $5 f64.sub f64.const 0 f64.eq if (result i64) - local.get $2 + local.get $5 i64.trunc_f64_s else i64.const 0 end i64.store - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|04 end end @@ -44681,35 +44694,35 @@ i32.const 67 i32.const 13648 call $~lib/rt/__newArray - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=16 - local.get $6 local.get $0 + local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> - local.get $6 - local.get $5 - call $~lib/typedarray/Int64Array#set<~lib/typedarray/Uint8Array> - local.get $6 + local.get $0 local.get $1 + call $~lib/typedarray/Int64Array#set<~lib/typedarray/Uint8Array> + local.get $0 + local.get $3 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $6 + local.get $0 call $~lib/typedarray/Int64Array#set<~lib/array/Array> i32.const 10 i32.const 3 i32.const 67 i32.const 13760 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -44822,12 +44835,12 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint64Array> (local $0 i32) (local $1 i32) - (local $2 f64) - (local $3 f32) + (local $2 i32) + (local $3 i32) (local $4 i32) - (local $5 i32) + (local $5 f64) (local $6 i32) - (local $7 i32) + (local $7 f32) (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer @@ -44846,91 +44859,91 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $4 + local.get $2 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $4 + local.get $2 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $5 + local.tee $1 i32.store offset=4 - local.get $5 + local.get $1 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $1 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $1 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $1 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $1 + local.tee $3 i32.store offset=8 - local.get $1 + local.get $3 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $3 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $3 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint64Array#constructor - local.tee $6 + local.tee $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $6 + local.get $0 call $~lib/typedarray/Int64Array#set<~lib/array/Array> i32.const 10 i32.const 3 i32.const 68 i32.const 13872 call $~lib/rt/__newArray - local.set $7 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $6 i32.store offset=16 + local.get $0 local.get $6 - local.get $7 call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> global.get $~lib/memory/__stack_pointer i32.const 11088 @@ -44940,17 +44953,17 @@ i32.load i32.const 3 i32.add - local.get $6 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $0 i32.load offset=4 i32.const 24 i32.add - local.set $7 + local.set $6 i32.const 11092 i32.load local.set $8 @@ -44958,37 +44971,37 @@ i32.load local.set $9 loop $for-loop|0 - local.get $0 + local.get $4 local.get $9 i32.lt_s if - local.get $0 + local.get $4 i32.const 3 i32.shl - local.get $7 + local.get $6 i32.add - local.get $0 + local.get $4 i32.const 2 i32.shl local.get $8 i32.add f32.load - local.tee $3 - local.get $3 + local.tee $7 + local.get $7 f32.sub f32.const 0 f32.eq if (result i64) - local.get $3 + local.get $7 i64.trunc_f32_u else i64.const 0 end i64.store - local.get $0 + local.get $4 i32.const 1 i32.add - local.set $0 + local.set $4 br $for-loop|0 end end @@ -44997,86 +45010,86 @@ i32.const 68 i32.const 14032 call $~lib/rt/__newArray - local.set $0 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $4 i32.store offset=16 - local.get $6 local.get $0 - call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> - local.get $6 local.get $4 + call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> + local.get $0 + local.get $2 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 3 i32.const 68 i32.const 14144 call $~lib/rt/__newArray - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=16 - local.get $6 local.get $0 + local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $0 + local.set $2 i32.const 11196 i32.load i32.const 2 i32.add - local.get $6 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $0 i32.load offset=4 i32.const 16 i32.add local.set $4 i32.const 11188 i32.load - local.set $7 + local.set $6 i32.const 11196 i32.load local.set $8 loop $for-loop|04 - local.get $0 + local.get $2 local.get $8 i32.lt_s if - local.get $7 - local.get $0 + local.get $6 + local.get $2 i32.const 3 i32.shl local.tee $9 i32.add f64.load - local.set $2 + local.set $5 local.get $4 local.get $9 i32.add - local.get $2 - local.get $2 + local.get $5 + local.get $5 f64.sub f64.const 0 f64.eq if (result i64) - local.get $2 + local.get $5 i64.trunc_f64_u else i64.const 0 end i64.store - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|04 end end @@ -45085,35 +45098,35 @@ i32.const 68 i32.const 14256 call $~lib/rt/__newArray - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=16 - local.get $6 local.get $0 + local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> - local.get $6 - local.get $5 - call $~lib/typedarray/Int64Array#set<~lib/typedarray/Uint8Array> - local.get $6 + local.get $0 local.get $1 + call $~lib/typedarray/Int64Array#set<~lib/typedarray/Uint8Array> + local.get $0 + local.get $3 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $6 + local.get $0 call $~lib/typedarray/Int64Array#set<~lib/array/Array> i32.const 10 i32.const 3 i32.const 68 i32.const 14368 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -45249,16 +45262,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor local.tee $3 @@ -45278,45 +45291,45 @@ global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 - local.get $4 + local.get $2 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $4 + local.get $2 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $4 + local.get $2 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $4 + local.get $2 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $5 + local.tee $4 i32.store offset=8 - local.get $5 + local.get $4 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $4 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $4 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Float32Array#constructor - local.tee $6 + local.tee $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 @@ -45324,42 +45337,42 @@ block $folding-inner0 i32.const 11020 i32.load - local.get $6 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $0 i32.load offset=4 - local.set $7 + local.set $5 i32.const 11012 i32.load - local.set $8 + local.set $6 i32.const 11020 i32.load - local.set $1 + local.set $7 loop $for-loop|0 - local.get $0 local.get $1 + local.get $7 i32.lt_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.tee $2 - local.get $7 + local.tee $8 + local.get $5 i32.add - local.get $2 + local.get $6 local.get $8 i32.add i32.load f32.convert_i32_s f32.store - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -45368,17 +45381,17 @@ i32.const 61 i32.const 14480 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Float32Array> global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 - local.get $6 + local.get $0 i32.const 11088 i32.const 3 call $~lib/typedarray/Int32Array#set<~lib/array/Array> @@ -45387,62 +45400,62 @@ i32.const 61 i32.const 14592 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Float32Array> i32.const 0 - local.set $0 + local.set $1 local.get $3 i32.load offset=8 i32.const 3 i32.shr_u i32.const 6 i32.add - local.get $6 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $0 i32.load offset=4 i32.const 24 i32.add - local.set $1 + local.set $5 local.get $3 i32.load offset=4 - local.set $2 + local.set $6 local.get $3 i32.load offset=8 i32.const 3 i32.shr_u local.set $3 loop $for-loop|01 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $5 i32.add - local.get $0 + local.get $1 i32.const 3 i32.shl - local.get $2 + local.get $6 i32.add i64.load f32.convert_i64_s f32.store - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|01 end end @@ -45451,104 +45464,104 @@ i32.const 61 i32.const 14656 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Float32Array> i32.const 0 - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=8 - local.get $6 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $0 i32.load offset=4 - local.set $1 - local.get $4 + local.set $3 + local.get $2 i32.load offset=4 - local.set $2 - local.get $4 + local.set $5 + local.get $2 i32.load offset=8 - local.set $3 + local.set $2 loop $for-loop|03 - local.get $0 - local.get $3 + local.get $1 + local.get $2 i32.lt_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $3 i32.add - local.get $0 - local.get $2 + local.get $1 + local.get $5 i32.add i32.load8_u f32.convert_i32_u f32.store - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|03 end end i32.const 0 - local.set $0 - local.get $5 + local.set $1 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u i32.const 4 i32.add - local.get $6 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $0 i32.load offset=4 i32.const 16 i32.add - local.set $1 - local.get $5 - i32.load offset=4 local.set $2 - local.get $5 + local.get $4 + i32.load offset=4 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.set $3 + local.set $4 loop $for-loop|05 - local.get $0 - local.get $3 + local.get $1 + local.get $4 i32.lt_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add - local.get $0 + local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $3 i32.add i32.load16_s f32.convert_i32_s f32.store - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|05 end end @@ -45556,48 +45569,48 @@ i32.const 11264 i32.store offset=16 i32.const 0 - local.set $0 + local.set $1 i32.const 11276 i32.load i32.const 7 i32.add - local.get $6 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $0 i32.load offset=4 i32.const 28 i32.add - local.set $1 + local.set $2 i32.const 11268 i32.load - local.set $2 + local.set $3 i32.const 11276 i32.load - local.set $3 + local.set $4 loop $for-loop|09 - local.get $0 - local.get $3 + local.get $1 + local.get $4 i32.lt_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $1 - i32.add - local.get $0 local.get $2 i32.add + local.get $1 + local.get $3 + i32.add i32.load8_s f32.convert_i32_s f32.store - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|09 end end @@ -45606,12 +45619,12 @@ i32.const 61 i32.const 14720 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Float32Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -45756,17 +45769,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $3 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $3 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set @@ -45794,24 +45807,24 @@ global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $3 + local.tee $4 i32.store offset=8 - local.get $3 + local.get $4 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $4 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $4 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Float64Array#constructor - local.tee $4 + local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 @@ -45819,13 +45832,13 @@ block $folding-inner0 i32.const 11020 i32.load - local.get $4 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $4 + local.get $1 i32.load offset=4 local.set $5 i32.const 11012 @@ -45868,7 +45881,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $4 + local.get $1 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Float64Array> global.get $~lib/memory/__stack_pointer @@ -45880,13 +45893,13 @@ i32.load i32.const 3 i32.add - local.get $4 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $4 + local.get $1 i32.load offset=4 i32.const 24 i32.add @@ -45931,39 +45944,39 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $4 + local.get $1 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Float64Array> i32.const 0 local.set $0 - local.get $1 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u i32.const 6 i32.add - local.get $4 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $4 + local.get $1 i32.load offset=4 i32.const 48 i32.add local.set $5 - local.get $1 + local.get $3 i32.load offset=4 local.set $6 - local.get $1 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $3 loop $for-loop|06 local.get $0 - local.get $1 + local.get $3 i32.lt_s if local.get $5 @@ -45994,22 +46007,22 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $4 + local.get $1 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Float64Array> i32.const 0 local.set $0 local.get $2 i32.load offset=8 - local.get $4 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $4 + local.get $1 i32.load offset=4 - local.set $1 + local.set $3 local.get $2 i32.load offset=4 local.set $5 @@ -46024,7 +46037,7 @@ local.get $0 i32.const 3 i32.shl - local.get $1 + local.get $3 i32.add local.get $0 local.get $5 @@ -46041,45 +46054,45 @@ end i32.const 0 local.set $0 - local.get $3 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u i32.const 4 i32.add - local.get $4 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $4 + local.get $1 i32.load offset=4 i32.const 32 i32.add - local.set $1 - local.get $3 - i32.load offset=4 local.set $2 - local.get $3 + local.get $4 + i32.load offset=4 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.set $3 + local.set $4 loop $for-loop|010 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 i32.const 3 i32.shl - local.get $1 + local.get $2 i32.add local.get $0 i32.const 1 i32.shl - local.get $2 + local.get $3 i32.add i32.load16_s f64.convert_i32_s @@ -46100,35 +46113,35 @@ i32.load i32.const 7 i32.add - local.get $4 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $4 + local.get $1 i32.load offset=4 i32.const 56 i32.add - local.set $1 + local.set $2 i32.const 11268 i32.load - local.set $2 + local.set $3 i32.const 11276 i32.load - local.set $3 + local.set $4 loop $for-loop|014 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 i32.const 3 i32.shl - local.get $1 + local.get $2 i32.add local.get $0 - local.get $2 + local.get $3 i32.add i32.load8_s f64.convert_i32_s @@ -46149,7 +46162,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $4 + local.get $1 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Float64Array> global.get $~lib/memory/__stack_pointer @@ -46170,18 +46183,18 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) + (local $4 f64) (local $5 f32) - (local $6 i32) - (local $7 f64) - (local $8 i64) + (local $6 i64) + (local $7 i32) + (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) - (local $13 i64) - (local $14 f32) - (local $15 f64) + (local $12 f64) + (local $13 f32) + (local $14 i32) + (local $15 i64) (local $16 i32) global.get $~lib/memory/__stack_pointer i32.const 32 @@ -46868,33 +46881,33 @@ global.get $~lib/memory/__stack_pointer i32.const 5 call $~lib/typedarray/Int32Array#constructor - local.tee $4 + local.tee $7 i32.store offset=8 - local.get $4 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $7 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $7 i32.const 4 i32.const 5 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $7 i32.load offset=4 local.set $2 i32.const 1 - local.get $4 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u @@ -46939,7 +46952,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $4 + local.get $7 local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz @@ -46951,27 +46964,27 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $7 i32.load offset=4 - local.set $2 + local.set $1 i32.const 0 - local.get $4 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 select local.set $0 loop $for-loop|01 local.get $0 - local.get $1 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add i32.const 0 i32.store @@ -46991,7 +47004,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $4 + local.get $7 local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz @@ -47003,11 +47016,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $7 i32.load offset=4 local.set $2 i32.const 0 - local.get $4 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u @@ -47053,7 +47066,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $4 + local.get $7 local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz @@ -47065,10 +47078,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $7 i32.load offset=4 local.set $2 - local.get $4 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u @@ -47110,7 +47123,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $4 + local.get $7 local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz @@ -47122,11 +47135,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $7 i32.load offset=4 local.set $2 i32.const 1 - local.get $4 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u @@ -47169,7 +47182,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $4 + local.get $7 local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz @@ -47182,7 +47195,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#subarray @@ -47190,25 +47203,25 @@ i32.store offset=12 local.get $3 i32.load offset=4 - local.set $2 + local.set $1 i32.const 0 local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 select local.set $0 loop $for-loop|09 local.get $0 - local.get $1 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add i32.const 0 i32.store @@ -47290,7 +47303,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $4 + local.get $7 local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz @@ -48007,9 +48020,9 @@ i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#subarray - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u @@ -48023,9 +48036,9 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub i32.const 4 @@ -48038,7 +48051,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 12 i32.ne @@ -48055,9 +48068,9 @@ i32.const 1 i32.const 3 call $~lib/typedarray/Int32Array#slice - local.tee $0 + local.tee $1 i32.store offset=8 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 2 @@ -48070,7 +48083,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 3 @@ -48083,7 +48096,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u @@ -48097,9 +48110,9 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub if @@ -48110,7 +48123,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 8 i32.ne @@ -48123,7 +48136,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#slice @@ -48288,32 +48301,32 @@ local.set $1 loop $for-loop|011 local.get $1 - local.get $10 + local.get $11 i32.gt_s if local.get $2 - local.get $10 + local.get $11 i32.add i32.load8_s local.set $0 i32.const 4 global.set $~argumentsLength - local.get $9 - local.get $0 local.get $10 + local.get $0 + local.get $11 local.get $3 i32.const 2896 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $10 + local.set $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|011 end end - local.get $9 + local.get $10 i32.const 255 i32.and i32.const 6 @@ -48356,9 +48369,9 @@ i32.const 2928 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 i32.const 0 - local.set $9 + local.set $10 local.get $3 i32.load offset=4 local.set $2 @@ -48367,32 +48380,32 @@ local.set $1 loop $for-loop|010 local.get $1 - local.get $10 + local.get $11 i32.gt_s if local.get $2 - local.get $10 + local.get $11 i32.add i32.load8_u local.set $0 i32.const 4 global.set $~argumentsLength - local.get $9 - local.get $0 local.get $10 + local.get $0 + local.get $11 local.get $3 i32.const 2928 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $10 + local.set $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|010 end end - local.get $9 + local.get $10 i32.const 255 i32.and i32.const 6 @@ -48435,9 +48448,9 @@ i32.const 2960 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 i32.const 0 - local.set $9 + local.set $10 local.get $3 i32.load offset=4 local.set $2 @@ -48446,32 +48459,32 @@ local.set $1 loop $for-loop|013 local.get $1 - local.get $10 + local.get $11 i32.gt_s if local.get $2 - local.get $10 + local.get $11 i32.add i32.load8_u local.set $0 i32.const 4 global.set $~argumentsLength - local.get $9 - local.get $0 local.get $10 + local.get $0 + local.get $11 local.get $3 i32.const 2960 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $10 + local.set $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|013 end end - local.get $9 + local.get $10 i32.const 255 i32.and i32.const 6 @@ -48514,9 +48527,9 @@ i32.const 2992 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 i32.const 0 - local.set $9 + local.set $10 local.get $3 i32.load offset=4 local.set $2 @@ -48527,10 +48540,10 @@ local.set $1 loop $for-loop|014 local.get $1 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 1 i32.shl local.get $2 @@ -48539,22 +48552,22 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $9 - local.get $0 local.get $10 + local.get $0 + local.get $11 local.get $3 i32.const 2992 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $10 + local.set $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|014 end end - local.get $9 + local.get $10 i32.const 65535 i32.and i32.const 6 @@ -48597,9 +48610,9 @@ i32.const 3024 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 i32.const 0 - local.set $9 + local.set $10 local.get $3 i32.load offset=4 local.set $2 @@ -48610,10 +48623,10 @@ local.set $1 loop $for-loop|016 local.get $1 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 1 i32.shl local.get $2 @@ -48622,22 +48635,22 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $9 - local.get $0 local.get $10 + local.get $0 + local.get $11 local.get $3 i32.const 3024 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $10 + local.set $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|016 end end - local.get $9 + local.get $10 i32.const 65535 i32.and i32.const 6 @@ -48680,9 +48693,9 @@ i32.const 3056 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 i32.const 0 - local.set $9 + local.set $10 local.get $3 i32.load offset=4 local.set $2 @@ -48693,10 +48706,10 @@ local.set $1 loop $for-loop|018 local.get $1 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 2 i32.shl local.get $2 @@ -48705,22 +48718,22 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $9 - local.get $0 local.get $10 + local.get $0 + local.get $11 local.get $3 i32.const 3056 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $10 + local.set $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|018 end end - local.get $9 + local.get $10 i32.const 6 i32.ne br_if $folding-inner1 @@ -48761,9 +48774,9 @@ i32.const 3088 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 i32.const 0 - local.set $9 + local.set $10 local.get $3 i32.load offset=4 local.set $2 @@ -48774,10 +48787,10 @@ local.set $1 loop $for-loop|021 local.get $1 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 2 i32.shl local.get $2 @@ -48786,22 +48799,22 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $9 - local.get $0 local.get $10 + local.get $0 + local.get $11 local.get $3 i32.const 3088 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $10 + local.set $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|021 end end - local.get $9 + local.get $10 i32.const 6 i32.ne br_if $folding-inner1 @@ -48842,7 +48855,7 @@ i32.const 3120 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 local.get $2 i32.load offset=4 local.set $1 @@ -48853,34 +48866,34 @@ local.set $0 loop $for-loop|023 local.get $0 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 3 i32.shl local.get $1 i32.add i64.load - local.set $8 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $13 - local.get $8 - local.get $10 + local.get $15 + local.get $6 + local.get $11 local.get $2 i32.const 3120 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $13 - local.get $10 + local.set $15 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|023 end end - local.get $13 + local.get $15 i64.const 6 i64.ne br_if $folding-inner1 @@ -48921,9 +48934,9 @@ i32.const 3152 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 i64.const 0 - local.set $13 + local.set $15 local.get $2 i32.load offset=4 local.set $1 @@ -48934,34 +48947,34 @@ local.set $0 loop $for-loop|025 local.get $0 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 3 i32.shl local.get $1 i32.add i64.load - local.set $8 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $13 - local.get $8 - local.get $10 + local.get $15 + local.get $6 + local.get $11 local.get $2 i32.const 3152 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $13 - local.get $10 + local.set $15 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|025 end end - local.get $13 + local.get $15 i64.const 6 i64.ne br_if $folding-inner1 @@ -49002,7 +49015,7 @@ i32.const 3184 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 local.get $2 i32.load offset=4 local.set $1 @@ -49013,10 +49026,10 @@ local.set $0 loop $for-loop|027 local.get $0 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 2 i32.shl local.get $1 @@ -49025,22 +49038,22 @@ local.set $5 i32.const 4 global.set $~argumentsLength - local.get $14 + local.get $13 local.get $5 - local.get $10 + local.get $11 local.get $2 i32.const 3184 i32.load call_indirect $0 (type $f32_f32_i32_i32_=>_f32) - local.set $14 - local.get $10 + local.set $13 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|027 end end - local.get $14 + local.get $13 f32.const 6 f32.ne br_if $folding-inner1 @@ -49081,7 +49094,7 @@ i32.const 3216 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 local.get $2 i32.load offset=4 local.set $1 @@ -49092,34 +49105,34 @@ local.set $0 loop $for-loop|029 local.get $0 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 3 i32.shl local.get $1 i32.add f64.load - local.set $7 + local.set $4 i32.const 4 global.set $~argumentsLength - local.get $15 - local.get $7 - local.get $10 + local.get $12 + local.get $4 + local.get $11 local.get $2 i32.const 3216 i32.load call_indirect $0 (type $f64_f64_i32_i32_=>_f64) - local.set $15 - local.get $10 + local.set $12 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|029 end end - local.get $15 + local.get $12 f64.const 6 f64.ne br_if $folding-inner1 @@ -49721,7 +49734,7 @@ i32.const 3248 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 local.get $2 i32.load offset=4 local.set $1 @@ -49742,14 +49755,14 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $10 + local.get $11 local.get $0 local.get $3 local.get $2 i32.const 3248 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $10 + local.set $11 local.get $3 i32.const 1 i32.sub @@ -49757,7 +49770,7 @@ br $for-loop|031 end end - local.get $10 + local.get $11 i32.const 255 i32.and i32.const 6 @@ -49800,7 +49813,7 @@ i32.const 3280 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 local.get $2 i32.load offset=4 local.set $1 @@ -49821,14 +49834,14 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $10 + local.get $11 local.get $0 local.get $3 local.get $2 i32.const 3280 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $10 + local.set $11 local.get $3 i32.const 1 i32.sub @@ -49836,7 +49849,7 @@ br $for-loop|033 end end - local.get $10 + local.get $11 i32.const 255 i32.and i32.const 6 @@ -49879,7 +49892,7 @@ i32.const 3312 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 local.get $2 i32.load offset=4 local.set $1 @@ -49900,14 +49913,14 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $10 + local.get $11 local.get $0 local.get $3 local.get $2 i32.const 3312 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $10 + local.set $11 local.get $3 i32.const 1 i32.sub @@ -49915,7 +49928,7 @@ br $for-loop|036 end end - local.get $10 + local.get $11 i32.const 255 i32.and i32.const 6 @@ -49958,7 +49971,7 @@ i32.const 3344 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 local.get $2 i32.load offset=4 local.set $1 @@ -49983,14 +49996,14 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $10 + local.get $11 local.get $0 local.get $3 local.get $2 i32.const 3344 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $10 + local.set $11 local.get $3 i32.const 1 i32.sub @@ -49998,7 +50011,7 @@ br $for-loop|038 end end - local.get $10 + local.get $11 i32.const 65535 i32.and i32.const 6 @@ -50041,7 +50054,7 @@ i32.const 3376 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 local.get $2 i32.load offset=4 local.set $1 @@ -50066,14 +50079,14 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $10 + local.get $11 local.get $0 local.get $3 local.get $2 i32.const 3376 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $10 + local.set $11 local.get $3 i32.const 1 i32.sub @@ -50081,7 +50094,7 @@ br $for-loop|040 end end - local.get $10 + local.get $11 i32.const 65535 i32.and i32.const 6 @@ -50124,7 +50137,7 @@ i32.const 3408 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 local.get $2 i32.load offset=4 local.set $1 @@ -50149,14 +50162,14 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $10 + local.get $11 local.get $0 local.get $3 local.get $2 i32.const 3408 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $10 + local.set $11 local.get $3 i32.const 1 i32.sub @@ -50164,7 +50177,7 @@ br $for-loop|042 end end - local.get $10 + local.get $11 i32.const 6 i32.ne br_if $folding-inner5 @@ -50205,7 +50218,7 @@ i32.const 3440 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 local.get $2 i32.load offset=4 local.set $1 @@ -50230,14 +50243,14 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $10 + local.get $11 local.get $0 local.get $3 local.get $2 i32.const 3440 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $10 + local.set $11 local.get $3 i32.const 1 i32.sub @@ -50245,7 +50258,7 @@ br $for-loop|044 end end - local.get $10 + local.get $11 i32.const 6 i32.ne br_if $folding-inner5 @@ -50286,7 +50299,7 @@ i32.const 3472 i32.store offset=4 i64.const 0 - local.set $13 + local.set $15 local.get $1 i32.load offset=4 local.set $0 @@ -50308,17 +50321,17 @@ local.get $0 i32.add i64.load - local.set $8 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $13 - local.get $8 + local.get $15 + local.get $6 local.get $3 local.get $1 i32.const 3472 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $13 + local.set $15 local.get $3 i32.const 1 i32.sub @@ -50326,7 +50339,7 @@ br $for-loop|046 end end - local.get $13 + local.get $15 i64.const 6 i64.ne br_if $folding-inner5 @@ -50367,7 +50380,7 @@ i32.const 3504 i32.store offset=4 i64.const 0 - local.set $13 + local.set $15 local.get $1 i32.load offset=4 local.set $0 @@ -50389,17 +50402,17 @@ local.get $0 i32.add i64.load - local.set $8 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $13 - local.get $8 + local.get $15 + local.get $6 local.get $3 local.get $1 i32.const 3504 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $13 + local.set $15 local.get $3 i32.const 1 i32.sub @@ -50407,7 +50420,7 @@ br $for-loop|048 end end - local.get $13 + local.get $15 i64.const 6 i64.ne br_if $folding-inner5 @@ -50448,7 +50461,7 @@ i32.const 3536 i32.store offset=4 f32.const 0 - local.set $14 + local.set $13 local.get $1 i32.load offset=4 local.set $0 @@ -50473,14 +50486,14 @@ local.set $5 i32.const 4 global.set $~argumentsLength - local.get $14 + local.get $13 local.get $5 local.get $3 local.get $1 i32.const 3536 i32.load call_indirect $0 (type $f32_f32_i32_i32_=>_f32) - local.set $14 + local.set $13 local.get $3 i32.const 1 i32.sub @@ -50488,7 +50501,7 @@ br $for-loop|050 end end - local.get $14 + local.get $13 f32.const 6 f32.ne br_if $folding-inner5 @@ -50529,7 +50542,7 @@ i32.const 3568 i32.store offset=4 f64.const 0 - local.set $15 + local.set $12 local.get $1 i32.load offset=4 local.set $0 @@ -50551,17 +50564,17 @@ local.get $0 i32.add f64.load - local.set $7 + local.set $4 i32.const 4 global.set $~argumentsLength - local.get $15 - local.get $7 + local.get $12 + local.get $4 local.get $3 local.get $1 i32.const 3568 i32.load call_indirect $0 (type $f64_f64_i32_i32_=>_f64) - local.set $15 + local.set $12 local.get $3 i32.const 1 i32.sub @@ -50569,7 +50582,7 @@ br $for-loop|052 end end - local.get $15 + local.get $12 f64.const 6 f64.ne br_if $folding-inner5 @@ -50578,7 +50591,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $10 + local.set $11 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -50597,17 +50610,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $9 + local.tee $8 i32.store - local.get $9 + local.get $8 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $9 + local.get $8 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $9 + local.get $8 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set @@ -50627,87 +50640,87 @@ local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $8 i32.load offset=8 - local.set $4 - local.get $9 - i32.load offset=4 local.set $3 + local.get $8 + i32.load offset=4 + local.set $1 local.get $0 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $10 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $7 i32.store offset=4 loop $for-loop|02 - local.get $4 - local.get $10 + local.get $3 + local.get $11 i32.gt_s if - local.get $3 - local.get $10 + local.get $1 + local.get $11 i32.add i32.load8_s local.set $0 i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $10 + local.get $7 + local.get $11 i32.add local.get $0 - local.get $10 - local.get $9 + local.get $11 + local.get $8 i32.const 3600 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store8 - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|02 end end - local.get $2 - local.get $1 + local.get $10 + local.get $7 i32.store - local.get $1 + local.get $7 if - local.get $2 - local.get $1 + local.get $10 + local.get $7 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 - local.get $1 + local.get $10 + local.get $7 i32.store offset=4 - local.get $2 - local.get $4 + local.get $10 + local.get $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $10 i32.store offset=8 - local.get $2 + local.get $10 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $2 + local.get $10 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $2 + local.get $10 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 9 @@ -50718,7 +50731,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $10 + local.set $11 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -50737,17 +50750,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $9 + local.tee $8 i32.store - local.get $9 + local.get $8 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $9 + local.get $8 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $9 + local.get $8 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -50767,87 +50780,87 @@ local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $8 i32.load offset=8 - local.set $4 - local.get $9 - i32.load offset=4 local.set $3 + local.get $8 + i32.load offset=4 + local.set $1 local.get $0 i32.const 12 i32.const 4 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $10 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $7 i32.store offset=4 loop $for-loop|04 - local.get $4 - local.get $10 + local.get $3 + local.get $11 i32.gt_s if - local.get $3 - local.get $10 + local.get $1 + local.get $11 i32.add i32.load8_u local.set $0 i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $10 + local.get $7 + local.get $11 i32.add local.get $0 - local.get $10 - local.get $9 + local.get $11 + local.get $8 i32.const 3632 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store8 - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|04 end end - local.get $2 - local.get $1 + local.get $10 + local.get $7 i32.store - local.get $1 + local.get $7 if - local.get $2 - local.get $1 + local.get $10 + local.get $7 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 - local.get $1 + local.get $10 + local.get $7 i32.store offset=4 - local.get $2 - local.get $4 + local.get $10 + local.get $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $10 i32.store offset=8 - local.get $2 + local.get $10 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $2 + local.get $10 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $2 + local.get $10 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 9 @@ -50858,7 +50871,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $10 + local.set $11 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -50877,17 +50890,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $9 + local.tee $8 i32.store - local.get $9 + local.get $8 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $9 + local.get $8 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $9 + local.get $8 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -50907,87 +50920,87 @@ local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $8 i32.load offset=8 - local.set $4 - local.get $9 - i32.load offset=4 local.set $3 + local.get $8 + i32.load offset=4 + local.set $1 local.get $0 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $10 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $7 i32.store offset=4 loop $for-loop|06 - local.get $4 - local.get $10 + local.get $3 + local.get $11 i32.gt_s if - local.get $3 - local.get $10 + local.get $1 + local.get $11 i32.add i32.load8_u local.set $0 i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $10 + local.get $7 + local.get $11 i32.add local.get $0 - local.get $10 - local.get $9 + local.get $11 + local.get $8 i32.const 3664 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store8 - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|06 end end - local.get $2 - local.get $1 + local.get $10 + local.get $7 i32.store - local.get $1 + local.get $7 if - local.get $2 - local.get $1 + local.get $10 + local.get $7 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 - local.get $1 + local.get $10 + local.get $7 i32.store offset=4 - local.get $2 - local.get $4 + local.get $10 + local.get $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $10 i32.store offset=8 - local.get $2 + local.get $10 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $2 + local.get $10 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $2 + local.get $10 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 9 @@ -51049,32 +51062,32 @@ i32.load offset=8 i32.const 1 i32.shr_u - local.set $9 + local.set $8 local.get $11 i32.load offset=4 - local.set $6 + local.set $3 local.get $0 i32.const 12 i32.const 6 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $14 i32.store global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.const 1 i32.shl - local.tee $3 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $10 i32.store offset=4 loop $for-loop|08 - local.get $9 - local.get $12 + local.get $8 + local.get $16 i32.gt_s if - local.get $6 - local.get $12 + local.get $3 + local.get $16 i32.const 1 i32.shl local.tee $1 @@ -51084,56 +51097,56 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $2 + local.get $10 i32.add local.get $0 - local.get $12 + local.get $16 local.get $11 i32.const 3696 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store16 - local.get $12 + local.get $16 i32.const 1 i32.add - local.set $12 + local.set $16 br $for-loop|08 end end - local.get $4 - local.get $2 + local.get $14 + local.get $10 i32.store - local.get $2 + local.get $10 if - local.get $4 - local.get $2 + local.get $14 + local.get $10 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $2 + local.get $14 + local.get $10 i32.store offset=4 - local.get $4 - local.get $3 + local.get $14 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $14 i32.store offset=8 - local.get $4 + local.get $14 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $4 + local.get $14 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $4 + local.get $14 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 9 @@ -51144,7 +51157,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $12 + local.set $16 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51197,32 +51210,32 @@ i32.load offset=8 i32.const 1 i32.shr_u - local.set $9 + local.set $8 local.get $11 i32.load offset=4 - local.set $6 + local.set $3 local.get $0 i32.const 12 i32.const 7 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $14 i32.store global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.const 1 i32.shl - local.tee $3 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $10 i32.store offset=4 loop $for-loop|012 - local.get $9 - local.get $12 + local.get $8 + local.get $16 i32.gt_s if - local.get $6 - local.get $12 + local.get $3 + local.get $16 i32.const 1 i32.shl local.tee $1 @@ -51232,56 +51245,56 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $2 + local.get $10 i32.add local.get $0 - local.get $12 + local.get $16 local.get $11 i32.const 3728 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store16 - local.get $12 + local.get $16 i32.const 1 i32.add - local.set $12 + local.set $16 br $for-loop|012 end end - local.get $4 - local.get $2 + local.get $14 + local.get $10 i32.store - local.get $2 + local.get $10 if - local.get $4 - local.get $2 + local.get $14 + local.get $10 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $2 + local.get $14 + local.get $10 i32.store offset=4 - local.get $4 - local.get $3 + local.get $14 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $14 i32.store offset=8 - local.get $4 + local.get $14 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $4 + local.get $14 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $4 + local.get $14 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 9 @@ -51292,7 +51305,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $12 + local.set $16 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51345,32 +51358,32 @@ i32.load offset=8 i32.const 2 i32.shr_u - local.set $9 + local.set $8 local.get $11 i32.load offset=4 - local.set $6 + local.set $3 local.get $0 i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $14 i32.store global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.const 2 i32.shl - local.tee $3 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $10 i32.store offset=4 loop $for-loop|015 - local.get $9 - local.get $12 + local.get $8 + local.get $16 i32.gt_s if - local.get $6 - local.get $12 + local.get $3 + local.get $16 i32.const 2 i32.shl local.tee $1 @@ -51380,56 +51393,56 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $2 + local.get $10 i32.add local.get $0 - local.get $12 + local.get $16 local.get $11 i32.const 3760 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store - local.get $12 + local.get $16 i32.const 1 i32.add - local.set $12 + local.set $16 br $for-loop|015 end end - local.get $4 - local.get $2 + local.get $14 + local.get $10 i32.store - local.get $2 + local.get $10 if - local.get $4 - local.get $2 + local.get $14 + local.get $10 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $2 + local.get $14 + local.get $10 i32.store offset=4 - local.get $4 - local.get $3 + local.get $14 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $14 i32.store offset=8 - local.get $4 + local.get $14 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $4 + local.get $14 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $4 + local.get $14 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 9 @@ -51440,7 +51453,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $12 + local.set $16 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51493,32 +51506,32 @@ i32.load offset=8 i32.const 2 i32.shr_u - local.set $9 + local.set $8 local.get $11 i32.load offset=4 - local.set $6 + local.set $3 local.get $0 i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $14 i32.store global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.const 2 i32.shl - local.tee $3 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $10 i32.store offset=4 loop $for-loop|017 - local.get $9 - local.get $12 + local.get $8 + local.get $16 i32.gt_s if - local.get $6 - local.get $12 + local.get $3 + local.get $16 i32.const 2 i32.shl local.tee $1 @@ -51528,56 +51541,56 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $2 + local.get $10 i32.add local.get $0 - local.get $12 + local.get $16 local.get $11 i32.const 3792 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store - local.get $12 + local.get $16 i32.const 1 i32.add - local.set $12 + local.set $16 br $for-loop|017 end end - local.get $4 - local.get $2 + local.get $14 + local.get $10 i32.store - local.get $2 + local.get $10 if - local.get $4 - local.get $2 + local.get $14 + local.get $10 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $2 + local.get $14 + local.get $10 i32.store offset=4 - local.get $4 - local.get $3 + local.get $14 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $14 i32.store offset=8 - local.get $4 + local.get $14 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $4 + local.get $14 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $4 + local.get $14 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 9 @@ -51588,7 +51601,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $11 + local.set $14 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51641,91 +51654,91 @@ i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $7 local.get $10 i32.load offset=4 - local.set $4 + local.set $2 local.get $0 i32.const 12 i32.const 10 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $11 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $7 i32.const 3 i32.shl - local.tee $2 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $8 i32.store offset=4 loop $for-loop|019 - local.get $6 - local.get $11 + local.get $7 + local.get $14 i32.gt_s if - local.get $4 - local.get $11 + local.get $2 + local.get $14 i32.const 3 i32.shl local.tee $0 i32.add i64.load - local.set $8 + local.set $6 i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 - i32.add local.get $8 - local.get $11 + i32.add + local.get $6 + local.get $14 local.get $10 i32.const 3824 i32.load call_indirect $0 (type $i64_i32_i32_=>_i64) i64.store - local.get $11 + local.get $14 i32.const 1 i32.add - local.set $11 + local.set $14 br $for-loop|019 end end - local.get $3 - local.get $1 + local.get $11 + local.get $8 i32.store - local.get $1 + local.get $8 if - local.get $3 - local.get $1 + local.get $11 + local.get $8 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $1 + local.get $11 + local.get $8 i32.store offset=4 - local.get $3 - local.get $2 + local.get $11 + local.get $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $11 i32.store offset=8 - local.get $3 + local.get $11 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 1 i64.ne br_if $folding-inner20 - local.get $3 + local.get $11 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 4 i64.ne br_if $folding-inner21 - local.get $3 + local.get $11 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 9 @@ -51736,7 +51749,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $11 + local.set $14 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51789,91 +51802,91 @@ i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $7 local.get $10 i32.load offset=4 - local.set $4 + local.set $2 local.get $0 i32.const 12 i32.const 11 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $11 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $7 i32.const 3 i32.shl - local.tee $2 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $8 i32.store offset=4 loop $for-loop|022 - local.get $6 - local.get $11 + local.get $7 + local.get $14 i32.gt_s if - local.get $4 - local.get $11 + local.get $2 + local.get $14 i32.const 3 i32.shl local.tee $0 i32.add i64.load - local.set $8 + local.set $6 i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 - i32.add local.get $8 - local.get $11 + i32.add + local.get $6 + local.get $14 local.get $10 i32.const 3856 i32.load call_indirect $0 (type $i64_i32_i32_=>_i64) i64.store - local.get $11 + local.get $14 i32.const 1 i32.add - local.set $11 + local.set $14 br $for-loop|022 end end - local.get $3 - local.get $1 + local.get $11 + local.get $8 i32.store - local.get $1 + local.get $8 if - local.get $3 - local.get $1 + local.get $11 + local.get $8 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $1 + local.get $11 + local.get $8 i32.store offset=4 - local.get $3 - local.get $2 + local.get $11 + local.get $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $11 i32.store offset=8 - local.get $3 + local.get $11 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 1 i64.ne br_if $folding-inner20 - local.get $3 + local.get $11 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 4 i64.ne br_if $folding-inner21 - local.get $3 + local.get $11 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 9 @@ -51884,7 +51897,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $11 + local.set $14 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51937,32 +51950,32 @@ i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 + local.set $7 local.get $10 i32.load offset=4 - local.set $4 + local.set $2 local.get $0 i32.const 12 i32.const 12 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $11 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $7 i32.const 2 i32.shl - local.tee $2 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $8 i32.store offset=4 loop $for-loop|024 - local.get $6 - local.get $11 + local.get $7 + local.get $14 i32.gt_s if - local.get $4 - local.get $11 + local.get $2 + local.get $14 i32.const 2 i32.shl local.tee $0 @@ -51972,56 +51985,56 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $8 i32.add local.get $5 - local.get $11 + local.get $14 local.get $10 i32.const 3888 i32.load call_indirect $0 (type $f32_i32_i32_=>_f32) f32.store - local.get $11 + local.get $14 i32.const 1 i32.add - local.set $11 + local.set $14 br $for-loop|024 end end - local.get $3 - local.get $1 + local.get $11 + local.get $8 i32.store - local.get $1 + local.get $8 if - local.get $3 - local.get $1 + local.get $11 + local.get $8 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $1 + local.get $11 + local.get $8 i32.store offset=4 - local.get $3 - local.get $2 + local.get $11 + local.get $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $11 i32.store offset=8 - local.get $3 + local.get $11 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 1 f32.ne br_if $folding-inner20 - local.get $3 + local.get $11 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 4 f32.ne br_if $folding-inner21 - local.get $3 + local.get $11 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 9 @@ -52032,7 +52045,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $11 + local.set $14 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -52085,91 +52098,91 @@ i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $7 local.get $10 i32.load offset=4 - local.set $4 + local.set $2 local.get $0 i32.const 12 i32.const 13 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $11 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $7 i32.const 3 i32.shl - local.tee $2 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $8 i32.store offset=4 loop $for-loop|026 - local.get $6 - local.get $11 + local.get $7 + local.get $14 i32.gt_s if - local.get $4 - local.get $11 + local.get $2 + local.get $14 i32.const 3 i32.shl local.tee $0 i32.add f64.load - local.set $7 + local.set $4 i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $8 i32.add - local.get $7 - local.get $11 + local.get $4 + local.get $14 local.get $10 i32.const 3920 i32.load call_indirect $0 (type $f64_i32_i32_=>_f64) f64.store - local.get $11 + local.get $14 i32.const 1 i32.add - local.set $11 + local.set $14 br $for-loop|026 end end - local.get $3 - local.get $1 + local.get $11 + local.get $8 i32.store - local.get $1 + local.get $8 if - local.get $3 - local.get $1 + local.get $11 + local.get $8 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $1 + local.get $11 + local.get $8 i32.store offset=4 - local.get $3 - local.get $2 + local.get $11 + local.get $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $11 i32.store offset=8 - local.get $3 + local.get $11 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 1 f64.ne br_if $folding-inner20 - local.get $3 + local.get $11 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 4 f64.ne br_if $folding-inner21 - local.get $3 + local.get $11 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 9 @@ -52223,7 +52236,7 @@ i32.const 4304 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.0 (result i32) local.get $3 i32.load offset=4 @@ -52233,11 +52246,11 @@ local.set $1 loop $for-loop|045 local.get $1 - local.get $9 + local.get $10 i32.gt_s if local.get $2 - local.get $9 + local.get $10 i32.add i32.load8_s local.set $0 @@ -52245,17 +52258,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 4304 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.0 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|045 end end @@ -52267,7 +52280,7 @@ i32.const 4336 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.047 (result i32) local.get $3 i32.load offset=4 @@ -52277,11 +52290,11 @@ local.set $1 loop $for-loop|049 local.get $1 - local.get $9 + local.get $10 i32.gt_s if local.get $2 - local.get $9 + local.get $10 i32.add i32.load8_s local.set $0 @@ -52289,17 +52302,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 4336 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.047 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|049 end end @@ -52343,7 +52356,7 @@ i32.const 4368 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.0 (result i32) local.get $3 i32.load offset=4 @@ -52353,11 +52366,11 @@ local.set $1 loop $for-loop|051 local.get $1 - local.get $9 + local.get $10 i32.gt_s if local.get $2 - local.get $9 + local.get $10 i32.add i32.load8_u local.set $0 @@ -52365,17 +52378,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 4368 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.0 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|051 end end @@ -52387,7 +52400,7 @@ i32.const 4400 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.053 (result i32) local.get $3 i32.load offset=4 @@ -52397,11 +52410,11 @@ local.set $1 loop $for-loop|054 local.get $1 - local.get $9 + local.get $10 i32.gt_s if local.get $2 - local.get $9 + local.get $10 i32.add i32.load8_u local.set $0 @@ -52409,17 +52422,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 4400 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.053 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|054 end end @@ -52463,7 +52476,7 @@ i32.const 4432 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.057 (result i32) local.get $3 i32.load offset=4 @@ -52473,11 +52486,11 @@ local.set $1 loop $for-loop|058 local.get $1 - local.get $9 + local.get $10 i32.gt_s if local.get $2 - local.get $9 + local.get $10 i32.add i32.load8_u local.set $0 @@ -52485,17 +52498,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 4432 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.057 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|058 end end @@ -52507,7 +52520,7 @@ i32.const 4464 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.060 (result i32) local.get $3 i32.load offset=4 @@ -52517,11 +52530,11 @@ local.set $1 loop $for-loop|061 local.get $1 - local.get $9 + local.get $10 i32.gt_s if local.get $2 - local.get $9 + local.get $10 i32.add i32.load8_u local.set $0 @@ -52529,17 +52542,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 4464 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.060 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|061 end end @@ -52583,7 +52596,7 @@ i32.const 4496 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.0 (result i32) local.get $3 i32.load offset=4 @@ -52595,10 +52608,10 @@ local.set $1 loop $for-loop|063 local.get $1 - local.get $9 + local.get $10 i32.gt_s if - local.get $9 + local.get $10 i32.const 1 i32.shl local.get $2 @@ -52609,17 +52622,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 4496 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.0 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|063 end end @@ -52631,7 +52644,7 @@ i32.const 4528 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.065 (result i32) local.get $3 i32.load offset=4 @@ -52643,10 +52656,10 @@ local.set $1 loop $for-loop|066 local.get $1 - local.get $9 + local.get $10 i32.gt_s if - local.get $9 + local.get $10 i32.const 1 i32.shl local.get $2 @@ -52657,17 +52670,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 4528 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.065 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|066 end end @@ -52711,7 +52724,7 @@ i32.const 4560 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.0 (result i32) local.get $3 i32.load offset=4 @@ -52723,10 +52736,10 @@ local.set $1 loop $for-loop|068 local.get $1 - local.get $9 + local.get $10 i32.gt_s if - local.get $9 + local.get $10 i32.const 1 i32.shl local.get $2 @@ -52737,17 +52750,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 4560 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.0 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|068 end end @@ -52759,7 +52772,7 @@ i32.const 4592 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.070 (result i32) local.get $3 i32.load offset=4 @@ -52771,10 +52784,10 @@ local.set $1 loop $for-loop|071 local.get $1 - local.get $9 + local.get $10 i32.gt_s if - local.get $9 + local.get $10 i32.const 1 i32.shl local.get $2 @@ -52785,17 +52798,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 4592 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.070 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|071 end end @@ -52839,7 +52852,7 @@ i32.const 4624 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) local.get $3 i32.load offset=4 @@ -52851,10 +52864,10 @@ local.set $1 loop $for-loop|073 local.get $1 - local.get $9 + local.get $10 i32.gt_s if - local.get $9 + local.get $10 i32.const 2 i32.shl local.get $2 @@ -52865,17 +52878,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 4624 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.0 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|073 end end @@ -52887,7 +52900,7 @@ i32.const 4656 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.075 (result i32) local.get $3 i32.load offset=4 @@ -52899,10 +52912,10 @@ local.set $1 loop $for-loop|076 local.get $1 - local.get $9 + local.get $10 i32.gt_s if - local.get $9 + local.get $10 i32.const 2 i32.shl local.get $2 @@ -52913,17 +52926,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 4656 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.075 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|076 end end @@ -52967,7 +52980,7 @@ i32.const 4688 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) local.get $3 i32.load offset=4 @@ -52979,10 +52992,10 @@ local.set $1 loop $for-loop|078 local.get $1 - local.get $9 + local.get $10 i32.gt_s if - local.get $9 + local.get $10 i32.const 2 i32.shl local.get $2 @@ -52993,17 +53006,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 4688 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.0 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|078 end end @@ -53015,7 +53028,7 @@ i32.const 4720 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.080 (result i32) local.get $3 i32.load offset=4 @@ -53027,10 +53040,10 @@ local.set $1 loop $for-loop|081 local.get $1 - local.get $9 + local.get $10 i32.gt_s if - local.get $9 + local.get $10 i32.const 2 i32.shl local.get $2 @@ -53041,17 +53054,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 4720 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.080 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|081 end end @@ -53095,7 +53108,7 @@ i32.const 4752 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 block $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.0 (result i32) local.get $2 i32.load offset=4 @@ -53107,31 +53120,31 @@ local.set $0 loop $for-loop|083 local.get $0 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 3 i32.shl local.get $1 i32.add i64.load - local.set $8 + local.set $6 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 - local.get $10 + local.get $6 + local.get $11 local.get $2 i32.const 4752 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.0 drop - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|083 end end @@ -53143,7 +53156,7 @@ i32.const 4784 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 block $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.085 (result i32) local.get $2 i32.load offset=4 @@ -53155,31 +53168,31 @@ local.set $0 loop $for-loop|086 local.get $0 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 3 i32.shl local.get $1 i32.add i64.load - local.set $8 + local.set $6 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 - local.get $10 + local.get $6 + local.get $11 local.get $2 i32.const 4784 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.085 drop - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|086 end end @@ -53223,7 +53236,7 @@ i32.const 4816 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 block $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.0 (result i32) local.get $2 i32.load offset=4 @@ -53235,31 +53248,31 @@ local.set $0 loop $for-loop|088 local.get $0 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 3 i32.shl local.get $1 i32.add i64.load - local.set $8 + local.set $6 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 - local.get $10 + local.get $6 + local.get $11 local.get $2 i32.const 4816 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.0 drop - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|088 end end @@ -53271,7 +53284,7 @@ i32.const 4848 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 block $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.090 (result i32) local.get $2 i32.load offset=4 @@ -53283,31 +53296,31 @@ local.set $0 loop $for-loop|091 local.get $0 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 3 i32.shl local.get $1 i32.add i64.load - local.set $8 + local.set $6 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 - local.get $10 + local.get $6 + local.get $11 local.get $2 i32.const 4848 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.090 drop - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|091 end end @@ -53351,7 +53364,7 @@ i32.const 4880 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 block $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) local.get $2 i32.load offset=4 @@ -53363,10 +53376,10 @@ local.set $0 loop $for-loop|093 local.get $0 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 2 i32.shl local.get $1 @@ -53377,17 +53390,17 @@ global.set $~argumentsLength i32.const 1 local.get $5 - local.get $10 + local.get $11 local.get $2 i32.const 4880 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|093 end end @@ -53399,7 +53412,7 @@ i32.const 4912 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 block $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.095 (result i32) local.get $2 i32.load offset=4 @@ -53411,10 +53424,10 @@ local.set $0 loop $for-loop|096 local.get $0 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 2 i32.shl local.get $1 @@ -53425,17 +53438,17 @@ global.set $~argumentsLength i32.const 1 local.get $5 - local.get $10 + local.get $11 local.get $2 i32.const 4912 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.095 drop - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|096 end end @@ -53479,7 +53492,7 @@ i32.const 4944 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 block $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) local.get $2 i32.load offset=4 @@ -53491,31 +53504,31 @@ local.set $0 loop $for-loop|098 local.get $0 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 3 i32.shl local.get $1 i32.add f64.load - local.set $7 + local.set $4 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $7 - local.get $10 + local.get $4 + local.get $11 local.get $2 i32.const 4944 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|098 end end @@ -53527,7 +53540,7 @@ i32.const 4976 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 block $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0100 (result i32) local.get $2 i32.load offset=4 @@ -53539,31 +53552,31 @@ local.set $0 loop $for-loop|0101 local.get $0 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 3 i32.shl local.get $1 i32.add f64.load - local.set $7 + local.set $4 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $7 - local.get $10 + local.get $4 + local.get $11 local.get $2 i32.const 4976 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0100 drop - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|0101 end end @@ -53589,17 +53602,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $4 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $4 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set @@ -53608,10 +53621,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $7 i32.load offset=4 local.set $3 - local.get $4 + local.get $7 i32.load offset=8 local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0 @@ -53627,7 +53640,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $7 i32.const 5008 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53651,10 +53664,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $7 i32.load offset=4 local.set $3 - local.get $4 + local.get $7 i32.load offset=8 local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0105 @@ -53670,7 +53683,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $7 i32.const 5040 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53708,17 +53721,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $4 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $4 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -53727,10 +53740,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $7 i32.load offset=4 local.set $3 - local.get $4 + local.get $7 i32.load offset=8 local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0 @@ -53746,7 +53759,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $7 i32.const 5072 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53770,10 +53783,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $7 i32.load offset=4 local.set $3 - local.get $4 + local.get $7 i32.load offset=8 local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0110 @@ -53789,7 +53802,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $7 i32.const 5104 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53827,17 +53840,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $4 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $4 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -53846,10 +53859,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $7 i32.load offset=4 local.set $3 - local.get $4 + local.get $7 i32.load offset=8 local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0114 @@ -53865,7 +53878,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $7 i32.const 5136 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53889,10 +53902,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $7 i32.load offset=4 local.set $3 - local.get $4 + local.get $7 i32.load offset=8 local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0117 @@ -53908,7 +53921,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $7 i32.const 5168 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53946,17 +53959,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -53965,10 +53978,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $7 i32.load offset=4 local.set $3 - local.get $4 + local.get $7 i32.load offset=8 i32.const 1 i32.shr_u @@ -53988,7 +54001,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $7 i32.const 5200 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54012,10 +54025,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $7 i32.load offset=4 local.set $3 - local.get $4 + local.get $7 i32.load offset=8 i32.const 1 i32.shr_u @@ -54035,7 +54048,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $7 i32.const 5232 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54073,17 +54086,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $4 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $4 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -54092,10 +54105,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $7 i32.load offset=4 local.set $3 - local.get $4 + local.get $7 i32.load offset=8 i32.const 1 i32.shr_u @@ -54115,7 +54128,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $7 i32.const 5264 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54139,10 +54152,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $7 i32.load offset=4 local.set $3 - local.get $4 + local.get $7 i32.load offset=8 i32.const 1 i32.shr_u @@ -54162,7 +54175,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $7 i32.const 5296 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54200,17 +54213,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -54219,10 +54232,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $7 i32.load offset=4 local.set $3 - local.get $4 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u @@ -54242,7 +54255,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $7 i32.const 5328 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54266,10 +54279,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $7 i32.load offset=4 local.set $3 - local.get $4 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u @@ -54289,7 +54302,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $7 i32.const 5360 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54327,17 +54340,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $4 + local.get $7 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $4 + local.get $7 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -54346,10 +54359,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $7 i32.load offset=4 local.set $3 - local.get $4 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u @@ -54369,7 +54382,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $7 i32.const 5392 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54393,10 +54406,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $4 + local.get $7 i32.load offset=4 local.set $3 - local.get $4 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u @@ -54416,7 +54429,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $4 + local.get $7 i32.const 5424 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -56353,7 +56366,7 @@ i32.const 6416 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.0 (result i32) local.get $3 i32.load offset=4 @@ -56363,11 +56376,11 @@ local.set $1 loop $for-loop|0217 local.get $1 - local.get $9 + local.get $10 i32.gt_s if local.get $2 - local.get $9 + local.get $10 i32.add i32.load8_s local.set $0 @@ -56375,7 +56388,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 6416 i32.load @@ -56383,10 +56396,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.0 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|0217 end end @@ -56398,7 +56411,7 @@ i32.const 6448 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.0219 (result i32) local.get $3 i32.load offset=4 @@ -56408,11 +56421,11 @@ local.set $1 loop $for-loop|0220 local.get $1 - local.get $9 + local.get $10 i32.gt_s if local.get $2 - local.get $9 + local.get $10 i32.add i32.load8_s local.set $0 @@ -56420,7 +56433,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 6448 i32.load @@ -56428,10 +56441,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.0219 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|0220 end end @@ -56475,7 +56488,7 @@ i32.const 6480 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0 (result i32) local.get $3 i32.load offset=4 @@ -56485,11 +56498,11 @@ local.set $1 loop $for-loop|0222 local.get $1 - local.get $9 + local.get $10 i32.gt_s if local.get $2 - local.get $9 + local.get $10 i32.add i32.load8_u local.set $0 @@ -56497,7 +56510,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 6480 i32.load @@ -56505,10 +56518,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|0222 end end @@ -56520,7 +56533,7 @@ i32.const 6512 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0224 (result i32) local.get $3 i32.load offset=4 @@ -56530,11 +56543,11 @@ local.set $1 loop $for-loop|0225 local.get $1 - local.get $9 + local.get $10 i32.gt_s if local.get $2 - local.get $9 + local.get $10 i32.add i32.load8_u local.set $0 @@ -56542,7 +56555,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 6512 i32.load @@ -56550,10 +56563,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0224 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|0225 end end @@ -56597,7 +56610,7 @@ i32.const 6544 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0228 (result i32) local.get $3 i32.load offset=4 @@ -56607,11 +56620,11 @@ local.set $1 loop $for-loop|0229 local.get $1 - local.get $9 + local.get $10 i32.gt_s if local.get $2 - local.get $9 + local.get $10 i32.add i32.load8_u local.set $0 @@ -56619,7 +56632,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 6544 i32.load @@ -56627,10 +56640,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0228 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|0229 end end @@ -56642,7 +56655,7 @@ i32.const 6576 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0231 (result i32) local.get $3 i32.load offset=4 @@ -56652,11 +56665,11 @@ local.set $1 loop $for-loop|0232 local.get $1 - local.get $9 + local.get $10 i32.gt_s if local.get $2 - local.get $9 + local.get $10 i32.add i32.load8_u local.set $0 @@ -56664,7 +56677,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 6576 i32.load @@ -56672,10 +56685,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0231 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|0232 end end @@ -56719,7 +56732,7 @@ i32.const 6608 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.0 (result i32) local.get $3 i32.load offset=4 @@ -56731,10 +56744,10 @@ local.set $1 loop $for-loop|0234 local.get $1 - local.get $9 + local.get $10 i32.gt_s if - local.get $9 + local.get $10 i32.const 1 i32.shl local.get $2 @@ -56745,7 +56758,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 6608 i32.load @@ -56753,10 +56766,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.0 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|0234 end end @@ -56768,7 +56781,7 @@ i32.const 6640 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.0236 (result i32) local.get $3 i32.load offset=4 @@ -56780,10 +56793,10 @@ local.set $1 loop $for-loop|0237 local.get $1 - local.get $9 + local.get $10 i32.gt_s if - local.get $9 + local.get $10 i32.const 1 i32.shl local.get $2 @@ -56794,7 +56807,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 6640 i32.load @@ -56802,10 +56815,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.0236 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|0237 end end @@ -56849,7 +56862,7 @@ i32.const 6672 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.0 (result i32) local.get $3 i32.load offset=4 @@ -56861,10 +56874,10 @@ local.set $1 loop $for-loop|0239 local.get $1 - local.get $9 + local.get $10 i32.gt_s if - local.get $9 + local.get $10 i32.const 1 i32.shl local.get $2 @@ -56875,7 +56888,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 6672 i32.load @@ -56883,10 +56896,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.0 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|0239 end end @@ -56898,7 +56911,7 @@ i32.const 6704 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.0241 (result i32) local.get $3 i32.load offset=4 @@ -56910,10 +56923,10 @@ local.set $1 loop $for-loop|0242 local.get $1 - local.get $9 + local.get $10 i32.gt_s if - local.get $9 + local.get $10 i32.const 1 i32.shl local.get $2 @@ -56924,7 +56937,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 6704 i32.load @@ -56932,10 +56945,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.0241 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|0242 end end @@ -56979,7 +56992,7 @@ i32.const 6736 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) local.get $3 i32.load offset=4 @@ -56991,10 +57004,10 @@ local.set $1 loop $for-loop|0244 local.get $1 - local.get $9 + local.get $10 i32.gt_s if - local.get $9 + local.get $10 i32.const 2 i32.shl local.get $2 @@ -57005,7 +57018,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 6736 i32.load @@ -57013,10 +57026,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.0 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|0244 end end @@ -57028,7 +57041,7 @@ i32.const 6768 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.0246 (result i32) local.get $3 i32.load offset=4 @@ -57040,10 +57053,10 @@ local.set $1 loop $for-loop|0247 local.get $1 - local.get $9 + local.get $10 i32.gt_s if - local.get $9 + local.get $10 i32.const 2 i32.shl local.get $2 @@ -57054,7 +57067,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 6768 i32.load @@ -57062,10 +57075,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.0246 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|0247 end end @@ -57109,7 +57122,7 @@ i32.const 6800 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) local.get $3 i32.load offset=4 @@ -57121,10 +57134,10 @@ local.set $1 loop $for-loop|0249 local.get $1 - local.get $9 + local.get $10 i32.gt_s if - local.get $9 + local.get $10 i32.const 2 i32.shl local.get $2 @@ -57135,7 +57148,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 6800 i32.load @@ -57143,10 +57156,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.0 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|0249 end end @@ -57158,7 +57171,7 @@ i32.const 6832 i32.store offset=4 i32.const 0 - local.set $9 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.0251 (result i32) local.get $3 i32.load offset=4 @@ -57170,10 +57183,10 @@ local.set $1 loop $for-loop|0252 local.get $1 - local.get $9 + local.get $10 i32.gt_s if - local.get $9 + local.get $10 i32.const 2 i32.shl local.get $2 @@ -57184,7 +57197,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $9 + local.get $10 local.get $3 i32.const 6832 i32.load @@ -57192,10 +57205,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.0251 drop - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|0252 end end @@ -57239,7 +57252,7 @@ i32.const 6864 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 block $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0 (result i32) local.get $2 i32.load offset=4 @@ -57251,21 +57264,21 @@ local.set $0 loop $for-loop|0254 local.get $0 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 3 i32.shl local.get $1 i32.add i64.load - local.set $8 + local.set $6 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 - local.get $10 + local.get $6 + local.get $11 local.get $2 i32.const 6864 i32.load @@ -57273,10 +57286,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0 drop - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|0254 end end @@ -57288,7 +57301,7 @@ i32.const 6896 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 block $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0256 (result i32) local.get $2 i32.load offset=4 @@ -57300,21 +57313,21 @@ local.set $0 loop $for-loop|0257 local.get $0 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 3 i32.shl local.get $1 i32.add i64.load - local.set $8 + local.set $6 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 - local.get $10 + local.get $6 + local.get $11 local.get $2 i32.const 6896 i32.load @@ -57322,10 +57335,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0256 drop - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|0257 end end @@ -57369,7 +57382,7 @@ i32.const 6928 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 block $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0 (result i32) local.get $2 i32.load offset=4 @@ -57381,21 +57394,21 @@ local.set $0 loop $for-loop|0259 local.get $0 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 3 i32.shl local.get $1 i32.add i64.load - local.set $8 + local.set $6 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 - local.get $10 + local.get $6 + local.get $11 local.get $2 i32.const 6928 i32.load @@ -57403,10 +57416,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0 drop - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|0259 end end @@ -57418,7 +57431,7 @@ i32.const 6960 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 block $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0261 (result i32) local.get $2 i32.load offset=4 @@ -57430,21 +57443,21 @@ local.set $0 loop $for-loop|0262 local.get $0 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 3 i32.shl local.get $1 i32.add i64.load - local.set $8 + local.set $6 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 - local.get $10 + local.get $6 + local.get $11 local.get $2 i32.const 6960 i32.load @@ -57452,10 +57465,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0261 drop - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|0262 end end @@ -57499,7 +57512,7 @@ i32.const 6992 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 block $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) local.get $2 i32.load offset=4 @@ -57511,10 +57524,10 @@ local.set $0 loop $for-loop|0264 local.get $0 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 2 i32.shl local.get $1 @@ -57525,7 +57538,7 @@ global.set $~argumentsLength i32.const 0 local.get $5 - local.get $10 + local.get $11 local.get $2 i32.const 6992 i32.load @@ -57533,10 +57546,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|0264 end end @@ -57548,7 +57561,7 @@ i32.const 7024 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 block $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0266 (result i32) local.get $2 i32.load offset=4 @@ -57560,10 +57573,10 @@ local.set $0 loop $for-loop|0267 local.get $0 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 2 i32.shl local.get $1 @@ -57574,7 +57587,7 @@ global.set $~argumentsLength i32.const 0 local.get $5 - local.get $10 + local.get $11 local.get $2 i32.const 7024 i32.load @@ -57582,10 +57595,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0266 drop - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|0267 end end @@ -57629,7 +57642,7 @@ i32.const 7056 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 block $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) local.get $2 i32.load offset=4 @@ -57641,21 +57654,21 @@ local.set $0 loop $for-loop|0269 local.get $0 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 3 i32.shl local.get $1 i32.add f64.load - local.set $7 + local.set $4 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $7 - local.get $10 + local.get $4 + local.get $11 local.get $2 i32.const 7056 i32.load @@ -57663,10 +57676,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|0269 end end @@ -57678,7 +57691,7 @@ i32.const 7088 i32.store offset=4 i32.const 0 - local.set $10 + local.set $11 block $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0271 (result i32) local.get $2 i32.load offset=4 @@ -57690,21 +57703,21 @@ local.set $0 loop $for-loop|0272 local.get $0 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 3 i32.shl local.get $1 i32.add f64.load - local.set $7 + local.set $4 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $7 - local.get $10 + local.get $4 + local.get $11 local.get $2 i32.const 7088 i32.load @@ -57712,10 +57725,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0271 drop - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|0272 end end @@ -57784,7 +57797,7 @@ i32.const 7200 i32.store offset=8 i32.const 0 - local.set $10 + local.set $11 local.get $3 i32.load offset=4 local.set $2 @@ -57793,24 +57806,24 @@ local.set $1 loop $for-loop|054274 local.get $1 - local.get $10 + local.get $11 i32.gt_s if local.get $2 - local.get $10 + local.get $11 i32.add i32.load8_s i32.const 3 global.set $~argumentsLength - local.get $10 + local.get $11 local.get $3 i32.const 7200 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|054274 end end @@ -57883,7 +57896,7 @@ i32.const 7232 i32.store offset=8 i32.const 0 - local.set $10 + local.set $11 local.get $3 i32.load offset=4 local.set $2 @@ -57892,24 +57905,24 @@ local.set $1 loop $for-loop|056 local.get $1 - local.get $10 + local.get $11 i32.gt_s if local.get $2 - local.get $10 + local.get $11 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength - local.get $10 + local.get $11 local.get $3 i32.const 7232 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|056 end end @@ -57982,7 +57995,7 @@ i32.const 7264 i32.store offset=8 i32.const 0 - local.set $10 + local.set $11 local.get $3 i32.load offset=4 local.set $2 @@ -57991,24 +58004,24 @@ local.set $1 loop $for-loop|059 local.get $1 - local.get $10 + local.get $11 i32.gt_s if local.get $2 - local.get $10 + local.get $11 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength - local.get $10 + local.get $11 local.get $3 i32.const 7264 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|059 end end @@ -58078,7 +58091,7 @@ i32.const 7296 i32.store offset=8 i32.const 0 - local.set $10 + local.set $11 local.get $3 i32.load offset=4 local.set $2 @@ -58089,10 +58102,10 @@ local.set $1 loop $for-loop|061278 local.get $1 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 1 i32.shl local.get $2 @@ -58100,15 +58113,15 @@ i32.load16_s i32.const 3 global.set $~argumentsLength - local.get $10 + local.get $11 local.get $3 i32.const 7296 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|061278 end end @@ -58181,7 +58194,7 @@ i32.const 7328 i32.store offset=8 i32.const 0 - local.set $10 + local.set $11 local.get $3 i32.load offset=4 local.set $2 @@ -58192,10 +58205,10 @@ local.set $1 loop $for-loop|063280 local.get $1 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 1 i32.shl local.get $2 @@ -58203,15 +58216,15 @@ i32.load16_u i32.const 3 global.set $~argumentsLength - local.get $10 + local.get $11 local.get $3 i32.const 7328 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|063280 end end @@ -58278,7 +58291,7 @@ i32.const 7360 i32.store offset=8 i32.const 0 - local.set $10 + local.set $11 local.get $3 i32.load offset=4 local.set $2 @@ -58289,10 +58302,10 @@ local.set $1 loop $for-loop|065 local.get $1 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 2 i32.shl local.get $2 @@ -58300,15 +58313,15 @@ i32.load i32.const 3 global.set $~argumentsLength - local.get $10 + local.get $11 local.get $3 i32.const 7360 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|065 end end @@ -58375,7 +58388,7 @@ i32.const 7392 i32.store offset=8 i32.const 0 - local.set $10 + local.set $11 local.get $3 i32.load offset=4 local.set $2 @@ -58386,10 +58399,10 @@ local.set $1 loop $for-loop|067 local.get $1 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 2 i32.shl local.get $2 @@ -58397,15 +58410,15 @@ i32.load i32.const 3 global.set $~argumentsLength - local.get $10 + local.get $11 local.get $3 i32.const 7392 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|067 end end @@ -58475,7 +58488,7 @@ i32.const 7424 i32.store offset=8 i32.const 0 - local.set $10 + local.set $11 local.get $2 i32.load offset=4 local.set $1 @@ -58486,10 +58499,10 @@ local.set $0 loop $for-loop|069 local.get $0 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 3 i32.shl local.get $1 @@ -58497,15 +58510,15 @@ i64.load i32.const 3 global.set $~argumentsLength - local.get $10 + local.get $11 local.get $2 i32.const 7424 i32.load call_indirect $0 (type $i64_i32_i32_=>_none) - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|069 end end @@ -58575,7 +58588,7 @@ i32.const 7456 i32.store offset=8 i32.const 0 - local.set $10 + local.set $11 local.get $2 i32.load offset=4 local.set $1 @@ -58586,10 +58599,10 @@ local.set $0 loop $for-loop|071285 local.get $0 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 3 i32.shl local.get $1 @@ -58597,15 +58610,15 @@ i64.load i32.const 3 global.set $~argumentsLength - local.get $10 + local.get $11 local.get $2 i32.const 7456 i32.load call_indirect $0 (type $i64_i32_i32_=>_none) - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|071285 end end @@ -58675,7 +58688,7 @@ i32.const 7488 i32.store offset=8 i32.const 0 - local.set $10 + local.set $11 local.get $2 i32.load offset=4 local.set $1 @@ -58686,10 +58699,10 @@ local.set $0 loop $for-loop|073287 local.get $0 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 2 i32.shl local.get $1 @@ -58697,15 +58710,15 @@ f32.load i32.const 3 global.set $~argumentsLength - local.get $10 + local.get $11 local.get $2 i32.const 7488 i32.load call_indirect $0 (type $f32_i32_i32_=>_none) - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|073287 end end @@ -58775,7 +58788,7 @@ i32.const 7520 i32.store offset=8 i32.const 0 - local.set $10 + local.set $11 local.get $2 i32.load offset=4 local.set $1 @@ -58786,10 +58799,10 @@ local.set $0 loop $for-loop|075 local.get $0 - local.get $10 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 3 i32.shl local.get $1 @@ -58797,15 +58810,15 @@ f64.load i32.const 3 global.set $~argumentsLength - local.get $10 + local.get $11 local.get $2 i32.const 7520 i32.load call_indirect $0 (type $f64_i32_i32_=>_none) - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|075 end end @@ -58845,26 +58858,26 @@ i32.load local.tee $2 call $~lib/typedarray/Int8Array#constructor - local.tee $1 + local.tee $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $2 call $~lib/typedarray/Int8Array#constructor - local.tee $0 + local.tee $1 i32.store offset=8 loop $for-loop|028 local.get $2 local.get $3 i32.gt_s if - local.get $1 + local.get $0 local.get $3 i32.const 7616 local.get $3 call $~lib/array/Array#__get i32.extend8_s call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $1 local.get $3 i32.const 7616 local.get $3 @@ -58878,7 +58891,7 @@ br $for-loop|028 end end - local.get $1 + local.get $0 call $~lib/typedarray/Int8Array#reverse drop i32.const 0 @@ -58888,7 +58901,7 @@ local.get $3 i32.gt_s if - local.get $1 + local.get $0 local.get $3 call $~lib/typedarray/Int8Array#__get i32.const 7616 @@ -58909,15 +58922,15 @@ end end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 4 i32.const 8 call $~lib/typedarray/Int8Array#subarray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Int8Array#reverse local.tee $0 i32.store offset=16 @@ -58977,19 +58990,19 @@ i32.load local.tee $2 call $~lib/typedarray/Uint8Array#constructor - local.tee $1 + local.tee $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $2 call $~lib/typedarray/Uint8Array#constructor - local.tee $0 + local.tee $1 i32.store offset=8 loop $for-loop|030 local.get $2 local.get $3 i32.gt_s if - local.get $1 + local.get $0 local.get $3 i32.const 7616 local.get $3 @@ -58997,7 +59010,7 @@ i32.const 255 i32.and call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 local.get $3 i32.const 7616 local.get $3 @@ -59012,7 +59025,7 @@ br $for-loop|030 end end - local.get $1 + local.get $0 call $~lib/typedarray/Int8Array#reverse drop i32.const 0 @@ -59022,7 +59035,7 @@ local.get $3 i32.gt_s if - local.get $1 + local.get $0 local.get $3 call $~lib/typedarray/Uint8Array#__get i32.const 7616 @@ -59044,14 +59057,14 @@ end end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 8 call $~lib/typedarray/Uint8Array#subarray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Int8Array#reverse local.tee $0 i32.store offset=16 @@ -59111,19 +59124,19 @@ i32.load local.tee $2 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $1 + local.tee $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $2 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 + local.tee $1 i32.store offset=8 loop $for-loop|032 local.get $2 local.get $3 i32.gt_s if - local.get $1 + local.get $0 local.get $3 i32.const 7616 local.get $3 @@ -59131,7 +59144,7 @@ i32.const 255 i32.and call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $1 local.get $3 i32.const 7616 local.get $3 @@ -59146,7 +59159,7 @@ br $for-loop|032 end end - local.get $1 + local.get $0 call $~lib/typedarray/Int8Array#reverse drop i32.const 0 @@ -59156,7 +59169,7 @@ local.get $3 i32.gt_s if - local.get $1 + local.get $0 local.get $3 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 7616 @@ -59178,14 +59191,14 @@ end end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 8 call $~lib/typedarray/Uint8ClampedArray#subarray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Int8Array#reverse local.tee $0 i32.store offset=16 @@ -59245,26 +59258,26 @@ i32.load local.tee $2 call $~lib/typedarray/Int16Array#constructor - local.tee $1 + local.tee $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $2 call $~lib/typedarray/Int16Array#constructor - local.tee $0 + local.tee $1 i32.store offset=8 loop $for-loop|034 local.get $2 local.get $3 i32.gt_s if - local.get $1 + local.get $0 local.get $3 i32.const 7616 local.get $3 call $~lib/array/Array#__get i32.extend16_s call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $1 local.get $3 i32.const 7616 local.get $3 @@ -59278,7 +59291,7 @@ br $for-loop|034 end end - local.get $1 + local.get $0 call $~lib/typedarray/Int16Array#reverse drop i32.const 0 @@ -59288,7 +59301,7 @@ local.get $3 i32.gt_s if - local.get $1 + local.get $0 local.get $3 call $~lib/typedarray/Int16Array#__get i32.const 7616 @@ -59309,14 +59322,14 @@ end end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 8 call $~lib/typedarray/Int16Array#subarray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Int16Array#reverse local.tee $0 i32.store offset=16 @@ -59376,19 +59389,19 @@ i32.load local.tee $2 call $~lib/typedarray/Uint16Array#constructor - local.tee $1 + local.tee $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $2 call $~lib/typedarray/Uint16Array#constructor - local.tee $0 + local.tee $1 i32.store offset=8 loop $for-loop|037 local.get $2 local.get $3 i32.gt_s if - local.get $1 + local.get $0 local.get $3 i32.const 7616 local.get $3 @@ -59396,7 +59409,7 @@ i32.const 65535 i32.and call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $1 local.get $3 i32.const 7616 local.get $3 @@ -59411,7 +59424,7 @@ br $for-loop|037 end end - local.get $1 + local.get $0 call $~lib/typedarray/Int16Array#reverse drop i32.const 0 @@ -59421,7 +59434,7 @@ local.get $3 i32.gt_s if - local.get $1 + local.get $0 local.get $3 call $~lib/typedarray/Uint16Array#__get i32.const 7616 @@ -59443,14 +59456,14 @@ end end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 8 call $~lib/typedarray/Uint16Array#subarray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Int16Array#reverse local.tee $0 i32.store offset=16 @@ -59502,9 +59515,9 @@ global.get $~lib/memory/__stack_pointer i32.const 1 call $~lib/typedarray/Float64Array#constructor - local.tee $4 + local.tee $7 i32.store offset=12 - local.get $4 + local.get $7 i32.const 0 f64.const nan:0x8000000000000 call $~lib/typedarray/Float64Array#__set @@ -59513,7 +59526,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $4 + local.get $7 i32.load offset=8 i32.const 3 i32.shr_u @@ -59523,7 +59536,7 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $4 + local.get $7 i32.load offset=4 local.set $2 loop $while-continue|0 @@ -59563,10 +59576,10 @@ unreachable end i32.const 0 - local.set $10 + local.set $11 block $~lib/typedarray/INCLUDES<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) i32.const 0 - local.get $4 + local.get $7 i32.load offset=8 i32.const 3 i32.shr_u @@ -59577,34 +59590,34 @@ i32.eqz br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $4 + local.get $7 i32.load offset=4 local.set $0 loop $while-continue|0289 local.get $1 - local.get $10 + local.get $11 i32.gt_s if i32.const 1 - local.get $10 + local.get $11 i32.const 3 i32.shl local.get $0 i32.add f64.load - local.tee $7 + local.tee $4 f64.const nan:0x8000000000000 f64.eq - local.get $7 - local.get $7 + local.get $4 + local.get $4 f64.ne i32.or br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $while-continue|0289 end end @@ -59622,9 +59635,9 @@ global.get $~lib/memory/__stack_pointer i32.const 1 call $~lib/typedarray/Float32Array#constructor - local.tee $4 + local.tee $7 i32.store offset=24 - local.get $4 + local.get $7 i32.const 0 f32.const nan:0x400000 call $~lib/typedarray/Float32Array#__set @@ -59633,7 +59646,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $4 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u @@ -59643,7 +59656,7 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $4 + local.get $7 i32.load offset=4 local.set $2 loop $while-continue|0290 @@ -59683,10 +59696,10 @@ unreachable end i32.const 0 - local.set $10 + local.set $11 block $~lib/typedarray/INCLUDES<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) i32.const 0 - local.get $4 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u @@ -59697,16 +59710,16 @@ i32.eqz br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $4 + local.get $7 i32.load offset=4 local.set $0 loop $while-continue|078 local.get $1 - local.get $10 + local.get $11 i32.gt_s if i32.const 1 - local.get $10 + local.get $11 i32.const 2 i32.shl local.get $0 @@ -59721,10 +59734,10 @@ i32.or br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $while-continue|078 end end @@ -60793,7 +60806,7 @@ unreachable end i32.const 0 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -60818,49 +60831,49 @@ local.get $0 i32.const 10940 i32.load - local.tee $6 + local.tee $3 call $~lib/typedarray/Int8Array#constructor - local.tee $4 + local.tee $8 i32.store offset=4 loop $for-loop|041 - local.get $1 - local.get $6 + local.get $2 + local.get $3 i32.lt_s if - local.get $4 - local.get $1 + local.get $8 + local.get $2 i32.const 10928 - local.get $1 + local.get $2 call $~lib/array/Array#__get i32.extend8_s call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|041 end end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $8 i32.load local.tee $0 i32.store offset=8 local.get $1 local.get $0 - local.get $4 + local.get $8 i32.load offset=4 - local.get $4 + local.get $8 i32.load i32.sub local.tee $0 - local.get $4 + local.get $8 i32.load offset=8 local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $7 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -60874,60 +60887,60 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $3 + local.get $7 i32.const 20 i32.sub i32.load offset=16 - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store - local.get $0 - local.get $3 + local.get $1 + local.get $7 i32.store - local.get $3 + local.get $7 if - local.get $0 - local.get $3 + local.get $1 + local.get $7 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 local.get $1 - i32.store offset=8 local.get $0 - local.get $3 + i32.store offset=8 + local.get $1 + local.get $7 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 i32.const 0 - local.set $1 + local.set $2 loop $for-loop|142 - local.get $1 - local.get $6 + local.get $2 + local.get $3 i32.lt_s if - local.get $4 - local.get $1 + local.get $8 + local.get $2 call $~lib/typedarray/Int8Array#__get - local.get $0 local.get $1 + local.get $2 call $~lib/typedarray/Int8Array#__get i32.ne br_if $folding-inner29 - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|142 end end @@ -60961,16 +60974,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $3 - call $~lib/typedarray/Uint8Array#constructor local.tee $2 + call $~lib/typedarray/Uint8Array#constructor + local.tee $3 i32.store offset=4 loop $for-loop|043 local.get $1 - local.get $3 + local.get $2 i32.lt_s if - local.get $2 + local.get $3 local.get $1 i32.const 10928 local.get $1 @@ -60987,20 +61000,20 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $2 + local.get $3 i32.load local.tee $0 i32.store offset=8 local.get $1 local.get $0 - local.get $2 + local.get $3 i32.load offset=4 - local.get $2 + local.get $3 i32.load i32.sub local.tee $0 local.get $0 - local.get $2 + local.get $3 i32.load offset=8 i32.add call $~lib/arraybuffer/ArrayBuffer#slice @@ -61018,10 +61031,10 @@ local.set $1 loop $for-loop|144 local.get $1 - local.get $3 + local.get $2 i32.lt_s if - local.get $2 + local.get $3 local.get $1 call $~lib/typedarray/Uint8Array#__get local.get $0 @@ -61041,7 +61054,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -61066,50 +61079,50 @@ local.get $0 i32.const 10940 i32.load - local.tee $6 + local.tee $3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $4 + local.tee $8 i32.store offset=4 loop $for-loop|047 - local.get $1 - local.get $6 + local.get $2 + local.get $3 i32.lt_s if - local.get $4 - local.get $1 + local.get $8 + local.get $2 i32.const 10928 - local.get $1 + local.get $2 call $~lib/array/Array#__get i32.const 255 i32.and call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|047 end end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $8 i32.load local.tee $0 i32.store offset=8 local.get $1 local.get $0 - local.get $4 + local.get $8 i32.load offset=4 - local.get $4 + local.get $8 i32.load i32.sub local.tee $0 - local.get $4 + local.get $8 i32.load offset=8 local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $7 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61123,60 +61136,60 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $3 + local.get $7 i32.const 20 i32.sub i32.load offset=16 - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store - local.get $0 - local.get $3 + local.get $1 + local.get $7 i32.store - local.get $3 + local.get $7 if - local.get $0 - local.get $3 + local.get $1 + local.get $7 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 local.get $1 - i32.store offset=8 local.get $0 - local.get $3 + i32.store offset=8 + local.get $1 + local.get $7 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 i32.const 0 - local.set $1 + local.set $2 loop $for-loop|148 - local.get $1 - local.get $6 + local.get $2 + local.get $3 i32.lt_s if - local.get $4 - local.get $1 + local.get $8 + local.get $2 call $~lib/typedarray/Uint8ClampedArray#__get - local.get $0 local.get $1 + local.get $2 call $~lib/typedarray/Uint8ClampedArray#__get i32.ne br_if $folding-inner29 - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|148 end end @@ -61210,16 +61223,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $6 + local.tee $2 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $8 i32.store offset=4 loop $for-loop|053 local.get $1 - local.get $6 + local.get $2 i32.lt_s if - local.get $4 + local.get $8 local.get $1 i32.const 10928 local.get $1 @@ -61235,19 +61248,19 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $8 i32.load local.tee $0 i32.store offset=8 local.get $1 local.get $0 - local.get $4 + local.get $8 i32.load offset=4 - local.get $4 + local.get $8 i32.load i32.sub local.tee $0 - local.get $4 + local.get $8 i32.load offset=8 local.get $0 i32.add @@ -61272,7 +61285,7 @@ i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $0 i32.const 1 i32.and br_if $folding-inner30 @@ -61280,40 +61293,40 @@ i32.const 12 i32.const 6 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $7 i32.store - local.get $0 + local.get $7 local.get $3 i32.store local.get $3 if - local.get $0 + local.get $7 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $7 local.get $0 - local.get $1 i32.store offset=8 - local.get $0 + local.get $7 local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $7 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|154 local.get $1 - local.get $6 + local.get $2 i32.lt_s if - local.get $4 + local.get $8 local.get $1 call $~lib/typedarray/Int16Array#__get - local.get $0 + local.get $7 local.get $1 call $~lib/typedarray/Int16Array#__get i32.ne @@ -61355,16 +61368,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $6 + local.tee $2 call $~lib/typedarray/Uint16Array#constructor - local.tee $4 + local.tee $8 i32.store offset=4 loop $for-loop|057 local.get $1 - local.get $6 + local.get $2 i32.lt_s if - local.get $4 + local.get $8 local.get $1 i32.const 10928 local.get $1 @@ -61381,19 +61394,19 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $8 i32.load local.tee $0 i32.store offset=8 local.get $1 local.get $0 - local.get $4 + local.get $8 i32.load offset=4 - local.get $4 + local.get $8 i32.load i32.sub local.tee $0 - local.get $4 + local.get $8 i32.load offset=8 local.get $0 i32.add @@ -61418,7 +61431,7 @@ i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $0 i32.const 1 i32.and br_if $folding-inner30 @@ -61426,40 +61439,40 @@ i32.const 12 i32.const 7 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $7 i32.store - local.get $0 + local.get $7 local.get $3 i32.store local.get $3 if - local.get $0 + local.get $7 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $7 local.get $0 - local.get $1 i32.store offset=8 - local.get $0 + local.get $7 local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $7 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|158 local.get $1 - local.get $6 + local.get $2 i32.lt_s if - local.get $4 + local.get $8 local.get $1 call $~lib/typedarray/Uint16Array#__get - local.get $0 + local.get $7 local.get $1 call $~lib/typedarray/Uint16Array#__get i32.ne @@ -61501,16 +61514,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $6 + local.tee $2 call $~lib/typedarray/Int32Array#constructor - local.tee $4 + local.tee $8 i32.store offset=4 loop $for-loop|060 local.get $1 - local.get $6 + local.get $2 i32.lt_s if - local.get $4 + local.get $8 local.get $1 i32.const 10928 local.get $1 @@ -61525,19 +61538,19 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $8 i32.load local.tee $0 i32.store offset=8 local.get $1 local.get $0 - local.get $4 + local.get $8 i32.load offset=4 - local.get $4 + local.get $8 i32.load i32.sub local.tee $0 - local.get $4 + local.get $8 i32.load offset=8 local.get $0 i32.add @@ -61562,7 +61575,7 @@ i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $0 i32.const 3 i32.and br_if $folding-inner30 @@ -61570,40 +61583,40 @@ i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $7 i32.store - local.get $0 + local.get $7 local.get $3 i32.store local.get $3 if - local.get $0 + local.get $7 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $7 local.get $0 - local.get $1 i32.store offset=8 - local.get $0 + local.get $7 local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $7 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|161 local.get $1 - local.get $6 + local.get $2 i32.lt_s if - local.get $4 + local.get $8 local.get $1 call $~lib/typedarray/Int32Array#__get - local.get $0 + local.get $7 local.get $1 call $~lib/typedarray/Int32Array#__get i32.ne @@ -61645,16 +61658,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $6 + local.tee $2 call $~lib/typedarray/Uint32Array#constructor - local.tee $4 + local.tee $8 i32.store offset=4 loop $for-loop|064 local.get $1 - local.get $6 + local.get $2 i32.lt_s if - local.get $4 + local.get $8 local.get $1 i32.const 10928 local.get $1 @@ -61669,19 +61682,19 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $8 i32.load local.tee $0 i32.store offset=8 local.get $1 local.get $0 - local.get $4 + local.get $8 i32.load offset=4 - local.get $4 + local.get $8 i32.load i32.sub local.tee $0 - local.get $4 + local.get $8 i32.load offset=8 local.get $0 i32.add @@ -61706,7 +61719,7 @@ i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $0 i32.const 3 i32.and br_if $folding-inner30 @@ -61714,40 +61727,40 @@ i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $7 i32.store - local.get $0 + local.get $7 local.get $3 i32.store local.get $3 if - local.get $0 + local.get $7 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $7 local.get $0 - local.get $1 i32.store offset=8 - local.get $0 + local.get $7 local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $7 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|165 local.get $1 - local.get $6 + local.get $2 i32.lt_s if - local.get $4 + local.get $8 local.get $1 call $~lib/typedarray/Uint32Array#__get - local.get $0 + local.get $7 local.get $1 call $~lib/typedarray/Uint32Array#__get i32.ne @@ -61789,16 +61802,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $6 + local.tee $2 call $~lib/typedarray/Int64Array#constructor - local.tee $4 + local.tee $8 i32.store offset=4 loop $for-loop|070 local.get $1 - local.get $6 + local.get $2 i32.lt_s if - local.get $4 + local.get $8 local.get $1 i32.const 10928 local.get $1 @@ -61814,19 +61827,19 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $8 i32.load local.tee $0 i32.store offset=8 local.get $1 local.get $0 - local.get $4 + local.get $8 i32.load offset=4 - local.get $4 + local.get $8 i32.load i32.sub local.tee $0 - local.get $4 + local.get $8 i32.load offset=8 local.get $0 i32.add @@ -61851,7 +61864,7 @@ i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $0 i32.const 7 i32.and br_if $folding-inner30 @@ -61859,40 +61872,40 @@ i32.const 12 i32.const 10 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $7 i32.store - local.get $0 + local.get $7 local.get $3 i32.store local.get $3 if - local.get $0 + local.get $7 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $7 local.get $0 - local.get $1 i32.store offset=8 - local.get $0 + local.get $7 local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $7 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|171 local.get $1 - local.get $6 + local.get $2 i32.lt_s if - local.get $4 + local.get $8 local.get $1 call $~lib/typedarray/Int64Array#__get - local.get $0 + local.get $7 local.get $1 call $~lib/typedarray/Int64Array#__get i64.ne @@ -61934,16 +61947,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $6 + local.tee $2 call $~lib/typedarray/Uint64Array#constructor - local.tee $4 + local.tee $8 i32.store offset=4 loop $for-loop|074 local.get $1 - local.get $6 + local.get $2 i32.lt_s if - local.get $4 + local.get $8 local.get $1 i32.const 10928 local.get $1 @@ -61959,19 +61972,19 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $8 i32.load local.tee $0 i32.store offset=8 local.get $1 local.get $0 - local.get $4 + local.get $8 i32.load offset=4 - local.get $4 + local.get $8 i32.load i32.sub local.tee $0 - local.get $4 + local.get $8 i32.load offset=8 local.get $0 i32.add @@ -61996,7 +62009,7 @@ i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $0 i32.const 7 i32.and br_if $folding-inner30 @@ -62004,40 +62017,40 @@ i32.const 12 i32.const 11 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $7 i32.store - local.get $0 + local.get $7 local.get $3 i32.store local.get $3 if - local.get $0 + local.get $7 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $7 local.get $0 - local.get $1 i32.store offset=8 - local.get $0 + local.get $7 local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $7 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|175 local.get $1 - local.get $6 + local.get $2 i32.lt_s if - local.get $4 + local.get $8 local.get $1 call $~lib/typedarray/Uint64Array#__get - local.get $0 + local.get $7 local.get $1 call $~lib/typedarray/Uint64Array#__get i64.ne @@ -62079,16 +62092,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $6 + local.tee $2 call $~lib/typedarray/Float32Array#constructor - local.tee $4 + local.tee $8 i32.store offset=4 loop $for-loop|077 local.get $1 - local.get $6 + local.get $2 i32.lt_s if - local.get $4 + local.get $8 local.get $1 i32.const 10928 local.get $1 @@ -62104,19 +62117,19 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $8 i32.load local.tee $0 i32.store offset=8 local.get $1 local.get $0 - local.get $4 + local.get $8 i32.load offset=4 - local.get $4 + local.get $8 i32.load i32.sub local.tee $0 - local.get $4 + local.get $8 i32.load offset=8 local.get $0 i32.add @@ -62141,7 +62154,7 @@ i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $0 i32.const 3 i32.and br_if $folding-inner30 @@ -62149,40 +62162,40 @@ i32.const 12 i32.const 12 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $7 i32.store - local.get $0 + local.get $7 local.get $3 i32.store local.get $3 if - local.get $0 + local.get $7 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $7 local.get $0 - local.get $1 i32.store offset=8 - local.get $0 + local.get $7 local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $7 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|178 local.get $1 - local.get $6 + local.get $2 i32.lt_s if - local.get $4 + local.get $8 local.get $1 call $~lib/typedarray/Float32Array#__get - local.get $0 + local.get $7 local.get $1 call $~lib/typedarray/Float32Array#__get f32.ne @@ -62224,16 +62237,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $6 + local.tee $2 call $~lib/typedarray/Float64Array#constructor - local.tee $4 + local.tee $8 i32.store offset=4 loop $for-loop|080 local.get $1 - local.get $6 + local.get $2 i32.lt_s if - local.get $4 + local.get $8 local.get $1 i32.const 10928 local.get $1 @@ -62249,19 +62262,19 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $8 i32.load local.tee $0 i32.store offset=8 local.get $1 local.get $0 - local.get $4 + local.get $8 i32.load offset=4 - local.get $4 + local.get $8 i32.load i32.sub local.tee $0 - local.get $4 + local.get $8 i32.load offset=8 local.get $0 i32.add @@ -62286,7 +62299,7 @@ i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $0 i32.const 7 i32.and br_if $folding-inner30 @@ -62294,40 +62307,40 @@ i32.const 12 i32.const 13 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $7 i32.store - local.get $0 + local.get $7 local.get $3 i32.store local.get $3 if - local.get $0 + local.get $7 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $7 local.get $0 - local.get $1 i32.store offset=8 - local.get $0 + local.get $7 local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $7 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|181 local.get $1 - local.get $6 + local.get $2 i32.lt_s if - local.get $4 + local.get $8 local.get $1 call $~lib/typedarray/Float64Array#__get - local.get $0 + local.get $7 local.get $1 call $~lib/typedarray/Float64Array#__get f64.ne @@ -62357,7 +62370,7 @@ global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $6 + local.tee $8 i32.store offset=24 global.get $~lib/memory/__stack_pointer i32.const 3 @@ -62379,38 +62392,38 @@ global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Int64Array#constructor - local.tee $3 + local.tee $7 i32.store offset=8 - local.get $3 + local.get $7 i32.const 0 i64.const -10 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $7 i32.const 1 i64.const 100 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $7 i32.const 2 i64.const 10 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $7 i32.const 3 i64.const 300 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 2 call $~lib/typedarray/Int32Array#constructor - local.tee $4 + local.tee $3 i32.store offset=16 - local.get $4 + local.get $3 i32.const 0 i32.const 300 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $3 i32.const 1 i32.const -1 call $~lib/typedarray/Int32Array#__set - local.get $6 + local.get $8 i32.load offset=8 local.get $0 i32.load offset=8 @@ -62420,7 +62433,7 @@ i32.add i32.lt_s br_if $folding-inner19 - local.get $6 + local.get $8 i32.load offset=4 i32.const 1 i32.add @@ -62435,13 +62448,13 @@ local.set $0 loop $for-loop|082 local.get $0 - local.get $16 + local.get $9 i32.gt_s if local.get $2 - local.get $16 + local.get $9 i32.add - local.get $16 + local.get $9 i32.const 2 i32.shl local.get $1 @@ -62463,22 +62476,22 @@ i32.const 0 end i32.store8 - local.get $16 + local.get $9 i32.const 1 i32.add - local.set $16 + local.set $9 br $for-loop|082 end end - local.get $6 - local.get $3 + local.get $8 + local.get $7 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int64Array> i32.const 0 - local.set $9 - local.get $6 + local.set $10 + local.get $8 i32.load offset=8 - local.get $4 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -62486,51 +62499,51 @@ i32.add i32.lt_s br_if $folding-inner19 - local.get $6 + local.get $8 i32.load offset=4 i32.const 8 i32.add - local.set $3 - local.get $4 - i32.load offset=4 local.set $2 - local.get $4 + local.get $3 + i32.load offset=4 + local.set $1 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|086311 - local.get $1 - local.get $9 + local.get $0 + local.get $10 i32.gt_s if - local.get $3 - local.get $9 + local.get $2 + local.get $10 i32.add - local.get $9 + local.get $10 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add i32.load - local.tee $0 + local.tee $3 i32.const 255 - local.get $0 + local.get $3 i32.sub i32.const 31 i32.shr_s i32.or - local.get $0 + local.get $3 i32.const 31 i32.shr_s i32.const -1 i32.xor i32.and i32.store8 - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|086311 end end @@ -62543,7 +62556,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $6 + local.get $8 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> global.get $~lib/memory/__stack_pointer @@ -62570,27 +62583,27 @@ global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 i32.const 0 i32.const -10 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $7 i32.const 1 i32.const 100 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $7 i32.const 2 i32.const 10 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $7 i32.const 3 i32.const 300 call $~lib/typedarray/Int16Array#__set i32.const 0 - local.set $9 - local.get $6 + local.set $10 + local.get $8 i32.load offset=8 local.get $0 i32.load offset=8 @@ -62598,7 +62611,7 @@ i32.shr_u i32.lt_s br_if $folding-inner19 - local.get $6 + local.get $8 i32.load offset=4 local.set $3 local.get $0 @@ -62611,14 +62624,14 @@ local.set $1 loop $for-loop|090 local.get $1 - local.get $9 + local.get $10 i32.gt_s if local.get $3 - local.get $9 + local.get $10 i32.add i32.const 255 - local.get $9 + local.get $10 i32.const 2 i32.shl local.get $2 @@ -62630,15 +62643,15 @@ i32.gt_u select i32.store8 - local.get $9 + local.get $10 i32.const 1 i32.add - local.set $9 + local.set $10 br $for-loop|090 end end - local.get $6 - local.get $4 + local.get $8 + local.get $7 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int16Array> i32.const 10 @@ -62650,7 +62663,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $6 + local.get $8 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> i32.const 0 @@ -64349,29 +64362,29 @@ local.get $1 local.get $2 i32.shl - local.tee $1 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $2 - i32.const 0 local.get $1 + i32.const 0 + local.get $2 call $~lib/memory/memory.fill local.get $0 - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 if local.get $0 - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $2 + local.get $1 i32.store offset=4 local.get $0 - local.get $1 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 @@ -65346,11 +65359,11 @@ i32.const 0 i32.gt_s select - local.tee $2 - call $~lib/typedarray/Int32Array#constructor local.tee $3 + call $~lib/typedarray/Int32Array#constructor + local.tee $2 i32.store - local.get $3 + local.get $2 i32.load offset=4 local.get $0 i32.load offset=4 @@ -65358,7 +65371,7 @@ i32.const 2 i32.shl i32.add - local.get $2 + local.get $3 i32.const 2 i32.shl call $~lib/memory/memory.copy @@ -65366,7 +65379,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 ) (func $~lib/typedarray/Uint8Array#subarray (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -66180,71 +66193,71 @@ local.get $0 i32.const 31 i32.shr_u - local.tee $0 - select local.tee $1 + select local.tee $2 + local.tee $0 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.get $0 + local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $0 i32.store - local.get $3 - local.get $1 + local.get $0 local.get $2 + local.get $3 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $1 if - local.get $3 + local.get $0 i32.const 45 i32.store16 end @@ -66252,7 +66265,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $0 ) (func $~lib/string/String#substring (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -66299,26 +66312,26 @@ local.get $2 i32.lt_s select - local.tee $4 + local.tee $1 + local.get $1 local.get $3 - local.get $4 - i32.lt_s + i32.gt_s select i32.const 1 i32.shl - local.set $1 + local.set $4 local.get $3 - local.get $4 + local.get $1 + local.get $1 local.get $3 - local.get $4 - i32.gt_s + i32.lt_s select i32.const 1 i32.shl local.tee $3 - local.get $1 + local.get $4 i32.sub - local.tee $4 + local.tee $1 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -66334,7 +66347,7 @@ i32.shl local.get $3 i32.eq - local.get $1 + local.get $4 select if global.get $~lib/memory/__stack_pointer @@ -66345,16 +66358,16 @@ return end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.const 1 call $~lib/rt/itcms/__new local.tee $2 i32.store local.get $2 local.get $0 - local.get $1 - i32.add local.get $4 + i32.add + local.get $1 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 @@ -66664,22 +66677,22 @@ i32.const 0 i32.gt_s select - local.tee $2 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 local.get $0 local.get $1 i32.add - local.get $2 + local.get $3 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) global.get $~lib/rt/itcms/white diff --git a/tests/compiler/std/uri.optimized.wat b/tests/compiler/std/uri.optimized.wat index 0189ba6c25..63966f28e2 100644 --- a/tests/compiler/std/uri.optimized.wat +++ b/tests/compiler/std/uri.optimized.wat @@ -283,19 +283,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -320,9 +320,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -330,17 +330,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -628,10 +628,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -643,15 +643,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -681,7 +681,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -717,12 +717,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -740,11 +740,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 20752 @@ -752,14 +752,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -769,17 +769,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1259,7 +1259,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1285,32 +1285,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $3 i32.add else - local.get $4 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1343,7 +1343,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1351,8 +1351,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1369,7 +1369,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $3 i32.lt_u if i32.const 0 @@ -1379,13 +1379,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1401,7 +1401,7 @@ local.get $5 i32.const -4 i32.and - local.get $4 + local.get $3 i32.sub local.tee $6 i32.const 16 @@ -1411,23 +1411,23 @@ local.get $5 i32.const 2 i32.and - local.get $4 + local.get $3 i32.or i32.store - local.get $4 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 + local.tee $3 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1457,26 +1457,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1491,7 +1491,7 @@ local.get $2 i32.const 20 i32.add - local.tee $2 + local.tee $3 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1503,7 +1503,7 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1518,12 +1518,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $3 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $2 i32.const 3 i32.sub i32.const 0 @@ -1535,7 +1535,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 0 @@ -1550,25 +1550,25 @@ i32.sub i32.const 3 i32.and - local.tee $3 + local.tee $2 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $3 + local.get $2 i32.sub i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.add - local.tee $3 + local.tee $0 i32.const 4 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1578,17 +1578,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $0 i32.const 12 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 8 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1604,22 +1604,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $3 + local.get $0 i32.const 28 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 24 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 20 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 16 i32.sub i32.const 0 @@ -1630,11 +1630,11 @@ i32.and i32.const 24 i32.add - local.tee $3 + local.tee $0 i32.add local.set $1 + local.get $2 local.get $0 - local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1666,7 +1666,7 @@ end end end - local.get $2 + local.get $3 ) (func $~lib/util/memory/memcpy (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -2123,105 +2123,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2253,41 +2263,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2561,7 +2573,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $2 i32.load i32.const -4 i32.and @@ -2570,20 +2582,20 @@ local.get $1 i32.ge_u if - local.get $3 + local.get $2 local.get $1 i32.store offset=16 local.get $0 return end local.get $1 - local.get $3 + local.get $2 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.load offset=16 local.tee $0 local.get $0 @@ -2591,7 +2603,7 @@ i32.gt_u select call $~lib/memory/memory.copy - local.get $2 + local.get $3 ) (func $~lib/util/uri/encode (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -2621,7 +2633,7 @@ if block $while-break|0 local.get $7 - local.set $5 + local.set $4 loop $do-loop|1 block $do-break|1 local.get $7 @@ -2630,13 +2642,13 @@ local.get $0 i32.add i32.load16_u - local.tee $4 + local.tee $6 i32.const 33 i32.sub i32.const 94 i32.ge_u br_if $do-break|1 - local.get $4 + local.get $6 i32.const 33 i32.sub local.get $2 @@ -2652,14 +2664,14 @@ br_if $do-loop|1 end end - local.get $5 + local.get $4 local.get $7 i32.lt_u if local.get $9 - local.get $6 - local.get $7 local.get $5 + local.get $7 + local.get $4 i32.sub i32.const 1 i32.shl @@ -2668,7 +2680,7 @@ i32.lt_u if local.get $3 - local.get $6 + local.get $5 local.get $8 i32.add local.tee $9 @@ -2676,36 +2688,36 @@ local.set $3 end local.get $3 - local.get $6 - i32.add local.get $5 + i32.add + local.get $4 i32.const 1 i32.shl local.get $0 i32.add local.get $8 call $~lib/memory/memory.copy - local.get $6 + local.get $5 local.get $8 i32.add - local.set $6 + local.set $5 local.get $1 local.get $7 i32.le_u br_if $while-break|0 end local.get $9 - local.get $6 + local.get $5 i32.const 6 i32.const 24 - local.get $4 + local.get $6 i32.const 55296 i32.ge_u if - local.get $4 + local.get $6 i32.const 57343 i32.le_u - local.get $4 + local.get $6 i32.const 56320 i32.ge_u i32.and @@ -2717,7 +2729,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 i32.const 56319 i32.le_u if (result i32) @@ -2741,10 +2753,10 @@ local.get $0 i32.add i32.load16_u - local.tee $5 + local.tee $4 i32.const 56320 i32.lt_u - local.get $5 + local.get $4 i32.const 57343 i32.gt_u i32.or @@ -2756,10 +2768,10 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $4 i32.const 1023 i32.and - local.get $4 + local.get $6 i32.const 1023 i32.and i32.const 10 @@ -2768,23 +2780,23 @@ i32.const 65536 i32.add else - local.get $4 + local.get $6 end - local.set $4 + local.set $6 end - local.get $4 + local.get $6 i32.const 128 i32.lt_u select i32.add - local.tee $5 + local.tee $4 i32.lt_u if local.get $3 - local.get $5 + local.get $4 i32.const 1 i32.shl - local.get $5 + local.get $4 local.get $1 i32.const 1 i32.gt_u @@ -2793,18 +2805,18 @@ call $~lib/rt/itcms/__renew local.set $3 end - local.get $4 + local.get $6 i32.const 128 i32.lt_u if (result i32) local.get $3 - local.get $6 + local.get $5 i32.add - local.tee $5 + local.tee $4 i32.const 37 i32.store16 - local.get $5 local.get $4 + local.get $6 i32.const 4 i32.shr_u i32.const 15 @@ -2812,7 +2824,7 @@ i32.const 1676 i32.add i32.load8_u - local.get $4 + local.get $6 i32.const 15 i32.and i32.const 1676 @@ -2822,28 +2834,28 @@ i32.shl i32.or i32.store offset=2 - local.get $6 + local.get $5 i32.const 6 i32.add else local.get $3 - local.get $4 + local.get $6 i32.const 2048 i32.lt_u if (result i32) local.get $3 - local.get $6 + local.get $5 i32.add - local.tee $5 + local.tee $4 i32.const 37 i32.store16 - local.get $5 local.get $4 + local.get $6 i32.const 6 i32.shr_u i32.const 192 i32.or - local.tee $5 + local.tee $4 i32.const 4 i32.shr_u i32.const 15 @@ -2851,7 +2863,7 @@ i32.const 1676 i32.add i32.load8_u - local.get $5 + local.get $4 i32.const 15 i32.and i32.const 1676 @@ -2861,28 +2873,28 @@ i32.shl i32.or i32.store offset=2 - local.get $6 + local.get $5 i32.const 6 i32.add else local.get $3 - local.get $4 + local.get $6 i32.const 65536 i32.lt_u if local.get $3 - local.get $6 + local.get $5 i32.add - local.tee $5 + local.tee $4 i32.const 37 i32.store16 - local.get $5 local.get $4 + local.get $6 i32.const 12 i32.shr_u i32.const 224 i32.or - local.tee $5 + local.tee $4 i32.const 4 i32.shr_u i32.const 15 @@ -2890,7 +2902,7 @@ i32.const 1676 i32.add i32.load8_u - local.get $5 + local.get $4 i32.const 15 i32.and i32.const 1676 @@ -2902,18 +2914,18 @@ i32.store offset=2 else local.get $3 - local.get $6 + local.get $5 i32.add - local.tee $5 + local.tee $4 i32.const 37 i32.store16 - local.get $5 local.get $4 + local.get $6 i32.const 18 i32.shr_u i32.const 240 i32.or - local.tee $5 + local.tee $4 i32.const 4 i32.shr_u i32.const 15 @@ -2921,7 +2933,7 @@ i32.const 1676 i32.add i32.load8_u - local.get $5 + local.get $4 i32.const 15 i32.and i32.const 1676 @@ -2932,29 +2944,29 @@ i32.or i32.store offset=2 local.get $3 - local.get $6 + local.get $5 i32.const 6 i32.add - local.tee $6 - i32.add local.tee $5 + i32.add + local.tee $4 i32.const 37 i32.store16 - local.get $5 local.get $4 + local.get $6 i32.const 12 i32.shr_u i32.const 63 i32.and i32.const 128 i32.or - local.tee $5 + local.tee $4 i32.const 4 i32.shr_u i32.const 1676 i32.add i32.load8_u - local.get $5 + local.get $4 i32.const 15 i32.and i32.const 1676 @@ -2965,29 +2977,29 @@ i32.or i32.store offset=2 end - local.get $6 + local.get $5 i32.const 6 i32.add - local.tee $6 - i32.add local.tee $5 + i32.add + local.tee $4 i32.const 37 i32.store16 - local.get $5 local.get $4 + local.get $6 i32.const 6 i32.shr_u i32.const 63 i32.and i32.const 128 i32.or - local.tee $5 + local.tee $4 i32.const 4 i32.shr_u i32.const 1676 i32.add i32.load8_u - local.get $5 + local.get $4 i32.const 15 i32.and i32.const 1676 @@ -2997,17 +3009,17 @@ i32.shl i32.or i32.store offset=2 - local.get $6 + local.get $5 i32.const 6 i32.add end - local.tee $6 - i32.add local.tee $5 + i32.add + local.tee $4 i32.const 37 i32.store16 - local.get $5 local.get $4 + local.get $6 i32.const 63 i32.and i32.const 128 @@ -3028,11 +3040,11 @@ i32.shl i32.or i32.store offset=2 - local.get $6 + local.get $5 i32.const 6 i32.add end - local.set $6 + local.set $5 local.get $7 i32.const 1 i32.add @@ -3041,12 +3053,12 @@ end end end - local.get $6 + local.get $5 local.get $9 i32.lt_u if (result i32) local.get $3 - local.get $6 + local.get $5 call $~lib/rt/itcms/__renew else local.get $3 @@ -3142,14 +3154,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -3188,7 +3200,7 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.set $8 + local.set $7 loop $while-continue|0 local.get $1 local.get $3 @@ -3227,7 +3239,7 @@ i32.gt_u if local.get $6 - local.get $8 + local.get $7 i32.add local.get $4 i32.const 1 @@ -3269,18 +3281,18 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $5 i32.load16_u - local.set $5 - local.get $4 - i32.load16_u offset=2 local.set $4 local.get $5 + i32.load16_u offset=2 + local.set $5 + local.get $4 i32.const 48 i32.sub i32.const 10 i32.lt_u - local.get $5 + local.get $4 i32.const 32 i32.or i32.const 97 @@ -3289,12 +3301,12 @@ i32.lt_u i32.or if (result i32) - local.get $4 + local.get $5 i32.const 48 i32.sub i32.const 10 i32.lt_u - local.get $4 + local.get $5 i32.const 32 i32.or i32.const 97 @@ -3306,14 +3318,14 @@ i32.const 0 end if (result i32) - local.get $4 + local.get $5 i32.const 32 i32.or i32.const 39 i32.rem_u i32.const 9 i32.sub - local.get $5 + local.get $4 i32.const 32 i32.or i32.const 39 @@ -3395,7 +3407,7 @@ i32.const 1 i32.sub i32.shl - local.set $9 + local.set $10 i32.const 128 local.get $4 i32.shr_u @@ -3441,18 +3453,18 @@ i32.shl local.get $0 i32.add - local.tee $7 + local.tee $9 i32.load16_u - local.set $10 - local.get $7 + local.set $8 + local.get $9 i32.load16_u offset=2 - local.set $7 - local.get $10 + local.set $9 + local.get $8 i32.const 48 i32.sub i32.const 10 i32.lt_u - local.get $10 + local.get $8 i32.const 32 i32.or i32.const 97 @@ -3461,12 +3473,12 @@ i32.lt_u i32.or if (result i32) - local.get $7 + local.get $9 i32.const 48 i32.sub i32.const 10 i32.lt_u - local.get $7 + local.get $9 i32.const 32 i32.or i32.const 97 @@ -3478,14 +3490,14 @@ i32.const 0 end if (result i32) - local.get $7 + local.get $9 i32.const 32 i32.or i32.const 39 i32.rem_u i32.const 9 i32.sub - local.get $10 + local.get $8 i32.const 32 i32.or i32.const 39 @@ -3498,7 +3510,7 @@ else i32.const -1 end - local.tee $7 + local.tee $8 i32.const -1 i32.eq end @@ -3514,7 +3526,7 @@ i32.const 3 i32.add local.set $3 - local.get $7 + local.get $8 i32.const 192 i32.and i32.const 128 @@ -3524,7 +3536,7 @@ local.set $5 br $while-break|2 end - local.get $7 + local.get $8 i32.const 63 i32.and local.get $5 @@ -3543,11 +3555,11 @@ i32.const 55296 i32.ge_u i32.and - local.get $9 + local.get $10 i32.const -1 i32.eq local.get $5 - local.get $9 + local.get $10 i32.lt_u i32.or local.get $5 @@ -3568,7 +3580,7 @@ i32.ge_u if local.get $6 - local.get $8 + local.get $7 i32.add local.get $5 i32.const 65536 @@ -3595,7 +3607,7 @@ end end local.get $6 - local.get $8 + local.get $7 i32.add local.get $5 i32.store16 @@ -3626,11 +3638,11 @@ i32.shl i32.lt_u if (result i32) - local.get $8 + local.get $7 local.get $6 call $~lib/rt/itcms/__renew else - local.get $8 + local.get $7 end ) (func $~lib/rt/__visit_members (param $0 i32) @@ -5250,19 +5262,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -5272,22 +5284,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 20748 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -5301,9 +5313,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -5313,23 +5325,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -5337,7 +5349,7 @@ else i32.const 4336 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1376 @@ -5347,7 +5359,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 4340 @@ -5362,28 +5374,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/super-inline.optimized.wat b/tests/compiler/super-inline.optimized.wat index 4732b92236..fe3237a923 100644 --- a/tests/compiler/super-inline.optimized.wat +++ b/tests/compiler/super-inline.optimized.wat @@ -182,19 +182,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -219,9 +219,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -229,17 +229,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -527,10 +527,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -542,15 +542,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -580,7 +580,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -616,12 +616,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -639,11 +639,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17872 @@ -651,14 +651,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -668,17 +668,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1151,17 +1151,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1170,19 +1170,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1208,26 +1208,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $0 + local.tee $2 i32.load offset=8 - local.set $2 + local.set $0 local.get $1 global.get $~lib/rt/itcms/white - local.get $0 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $2 + local.get $0 i32.store offset=8 - local.get $2 - local.get $2 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $0 + local.get $2 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1427,19 +1427,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1449,22 +1449,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17868 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1478,9 +1478,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1490,23 +1490,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1514,7 +1514,7 @@ else i32.const 1440 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1248 @@ -1524,7 +1524,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1444 @@ -1539,28 +1539,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/templateliteral.optimized.wat b/tests/compiler/templateliteral.optimized.wat index 88967d9a2a..b8ef571174 100644 --- a/tests/compiler/templateliteral.optimized.wat +++ b/tests/compiler/templateliteral.optimized.wat @@ -226,14 +226,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -329,7 +329,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -352,7 +352,7 @@ end local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -362,23 +362,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -386,7 +386,7 @@ else i32.const 5680 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1408 @@ -396,7 +396,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 5684 @@ -411,27 +411,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -519,19 +519,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -556,9 +556,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -566,17 +566,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -864,10 +864,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -879,15 +879,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -917,7 +917,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -953,12 +953,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -976,11 +976,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 22128 @@ -988,14 +988,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -1005,17 +1005,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1495,7 +1495,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1521,32 +1521,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $3 i32.add else - local.get $4 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1579,7 +1579,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1587,8 +1587,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1605,7 +1605,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $3 i32.lt_u if i32.const 0 @@ -1615,13 +1615,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1637,7 +1637,7 @@ local.get $5 i32.const -4 i32.and - local.get $4 + local.get $3 i32.sub local.tee $6 i32.const 16 @@ -1647,23 +1647,23 @@ local.get $5 i32.const 2 i32.and - local.get $4 + local.get $3 i32.or i32.store - local.get $4 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 + local.tee $3 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1693,26 +1693,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 global.get $~lib/rt/itcms/white - local.get $1 + local.get $3 i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1727,7 +1727,7 @@ local.get $2 i32.const 20 i32.add - local.tee $2 + local.tee $3 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1739,7 +1739,7 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1754,12 +1754,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $3 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $2 i32.const 3 i32.sub i32.const 0 @@ -1771,7 +1771,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 0 @@ -1786,25 +1786,25 @@ i32.sub i32.const 3 i32.and - local.tee $3 + local.tee $2 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $3 + local.get $2 i32.sub i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.add - local.tee $3 + local.tee $0 i32.const 4 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1814,17 +1814,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $0 i32.const 12 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 8 i32.sub i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1840,22 +1840,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $3 + local.get $0 i32.const 28 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 24 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 20 i32.sub i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 16 i32.sub i32.const 0 @@ -1866,11 +1866,11 @@ i32.and i32.const 24 i32.add - local.tee $3 + local.tee $0 i32.add local.set $1 + local.get $2 local.get $0 - local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1902,7 +1902,7 @@ end end end - local.get $2 + local.get $3 ) (func $~lib/util/memory/memcpy (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -2359,101 +2359,64 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 - i32.load8_u - i32.store8 - local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $4 - i32.const 2 - i32.add - local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 - i32.load8_u - i32.store8 - local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 - local.get $4 - i32.const 2 - i32.add - local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 - i32.load8_u - i32.store8 - local.get $3 + local.tee $4 i32.const 2 i32.add local.set $0 @@ -2461,7 +2424,54 @@ local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $1 + local.get $0 + i32.load8_u + i32.store8 + local.get $1 + local.tee $3 + i32.const 2 + i32.add + local.set $1 + local.get $0 + local.tee $4 + i32.const 2 + i32.add + local.set $0 + local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 + i32.load8_u + i32.store8 + local.get $1 + local.tee $3 + i32.const 2 + i32.add + local.set $1 + local.get $0 + i32.const 2 + i32.add + local.set $4 + local.get $3 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $4 + i32.load8_u + i32.store8 + local.get $1 + i32.const 2 + i32.add + local.set $0 + local.get $1 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $4 i32.const 2 i32.add local.set $1 @@ -2489,41 +2499,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2820,7 +2832,7 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.set $4 + local.set $5 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -2837,17 +2849,17 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $4 i64.const 0 i64.store - local.get $5 + local.get $4 i32.const 0 i32.store offset=8 block $__inlined_func$~lib/util/string/joinStringArray - local.get $4 + local.get $5 i32.const 1 i32.sub - local.tee $5 + local.tee $4 i32.const 0 i32.lt_s if @@ -2859,7 +2871,7 @@ local.set $1 br $__inlined_func$~lib/util/string/joinStringArray end - local.get $5 + local.get $4 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -2881,7 +2893,7 @@ end loop $for-loop|0 local.get $3 - local.get $4 + local.get $5 i32.lt_s if global.get $~lib/memory/__stack_pointer @@ -2913,12 +2925,12 @@ end end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 1180 i32.load i32.const 1 i32.shr_u - local.tee $4 + local.tee $5 i32.mul local.get $1 i32.add @@ -2932,7 +2944,7 @@ local.set $3 loop $for-loop|1 local.get $3 - local.get $5 + local.get $4 i32.lt_s if global.get $~lib/memory/__stack_pointer @@ -2967,7 +2979,7 @@ i32.add local.set $2 end - local.get $4 + local.get $5 if local.get $2 i32.const 1 @@ -2975,12 +2987,12 @@ local.get $1 i32.add i32.const 1184 - local.get $4 + local.get $5 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $2 - local.get $4 + local.get $5 i32.add local.set $2 end @@ -2992,7 +3004,7 @@ end end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 2 i32.shl local.get $0 @@ -3821,82 +3833,83 @@ i32.const 101 i32.store16 offset=2 local.get $0 + local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $1 + local.tee $0 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $1 + local.get $0 i32.sub - local.set $1 + local.set $0 end - local.get $1 - local.tee $4 + local.get $0 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $4 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $4 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $4 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $4 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $4 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $4 - local.get $1 - local.get $4 + local.set $2 + local.get $0 + local.get $2 i32.const 1 i32.add - local.tee $1 + local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $1 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 - local.get $1 + local.get $0 i32.const 2 i32.add else @@ -3919,87 +3932,87 @@ local.get $0 local.get $2 i32.add - local.tee $0 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $0 + local.get $2 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $2 + local.tee $0 i32.const 0 i32.lt_s - local.tee $3 + local.tee $4 if i32.const 0 - local.get $2 + local.get $0 i32.sub - local.set $2 + local.set $0 end - local.get $2 - local.tee $5 + local.get $0 + local.tee $3 i32.const 100000 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 100 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $5 + local.get $3 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $5 + local.get $3 i32.const 1000 i32.ge_u i32.add end else - local.get $5 + local.get $3 i32.const 10000000 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $5 + local.get $3 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $5 + local.get $3 i32.const 100000000 i32.ge_u i32.add end end - local.set $5 - local.get $2 - local.get $5 + local.set $3 + local.get $0 + local.get $3 i32.const 1 i32.add - local.tee $2 + local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $2 i32.const 45 i32.const 43 - local.get $3 + local.get $4 select i32.store16 offset=4 + local.get $0 local.get $1 - local.get $2 i32.add i32.const 2 i32.add @@ -4009,24 +4022,25 @@ end ) (func $~lib/util/number/dtoa_core (param $0 f64) (result i32) - (local $1 i64) - (local $2 i32) - (local $3 i64) + (local $1 i32) + (local $2 i64) + (local $3 i32) (local $4 i64) (local $5 i64) (local $6 i64) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i64) - (local $11 i64) + (local $7 i64) + (local $8 i64) + (local $9 i64) + (local $10 i32) + (local $11 i32) (local $12 i64) (local $13 i64) (local $14 i64) + (local $15 i64) local.get $0 f64.const 0 f64.lt - local.tee $2 + local.tee $1 if (result f64) i32.const 3920 i32.const 45 @@ -4037,72 +4051,72 @@ local.get $0 end i64.reinterpret_f64 - local.tee $1 + local.tee $2 i64.const 9218868437227405312 i64.and i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $7 + local.tee $3 i32.const 1 - local.get $7 + local.get $3 select i32.const 1075 i32.sub - local.tee $8 + local.tee $10 i32.const 1 i32.sub - local.get $1 + local.get $2 i64.const 4503599627370495 i64.and - local.get $7 + local.get $3 i32.const 0 i32.ne i64.extend_i32_u i64.const 52 i64.shl i64.add - local.tee $1 + local.tee $2 i64.const 1 i64.shl i64.const 1 i64.add - local.tee $3 + local.tee $4 i64.clz i32.wrap_i64 - local.tee $7 + local.tee $11 i32.sub - local.set $9 - local.get $3 - local.get $7 + local.set $3 + local.get $4 + local.get $11 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus - local.get $1 - local.get $1 + local.get $2 + local.get $2 i64.const 4503599627370496 i64.eq i32.const 1 i32.add - local.tee $7 + local.tee $11 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $8 - local.get $7 + local.get $10 + local.get $11 i32.sub - local.get $9 + local.get $3 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $9 + local.get $3 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $7 + local.tee $3 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -4111,9 +4125,9 @@ f64.add local.tee $0 i32.trunc_f64_s - local.tee $8 + local.tee $10 local.get $0 - local.get $8 + local.get $10 f64.convert_i32_s f64.ne i32.add @@ -4121,106 +4135,106 @@ i32.shr_s i32.const 1 i32.add - local.tee $8 + local.tee $10 i32.const 3 i32.shl - local.tee $9 + local.tee $11 i32.sub global.set $~lib/util/number/_K - local.get $9 + local.get $11 i32.const 3976 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $8 + local.get $10 i32.const 1 i32.shl i32.const 4672 i32.add i32.load16_s global.set $~lib/util/number/_exp_pow - local.get $1 - local.get $1 + local.get $2 + local.get $2 i64.clz i64.shl - local.tee $1 + local.tee $2 i64.const 4294967295 i64.and - local.set $10 - local.get $1 + local.set $4 + local.get $2 i64.const 32 i64.shr_u - local.tee $11 + local.tee $12 global.get $~lib/util/number/_frc_pow - local.tee $4 + local.tee $13 i64.const 4294967295 i64.and - local.tee $12 - local.tee $1 + local.tee $2 + local.tee $5 i64.mul - local.get $1 - local.get $10 + local.get $4 + local.get $5 i64.mul i64.const 32 i64.shr_u i64.add - local.set $13 + local.set $5 global.get $~lib/util/number/_frc_plus - local.tee $3 + local.tee $7 i64.const 4294967295 i64.and - local.set $1 - local.get $3 + local.set $6 + local.get $7 i64.const 32 i64.shr_u - local.tee $5 - local.get $12 + local.tee $14 + local.get $2 i64.mul - local.get $1 - local.get $12 + local.get $2 + local.get $6 i64.mul i64.const 32 i64.shr_u i64.add - local.set $14 + local.set $7 global.get $~lib/util/number/_frc_minus - local.tee $6 + local.tee $9 i64.const 4294967295 i64.and - local.set $3 - local.get $6 + local.set $8 + local.get $9 i64.const 32 i64.shr_u - local.tee $6 - local.get $12 + local.tee $15 + local.get $2 i64.mul - local.get $3 - local.get $12 + local.get $2 + local.get $8 i64.mul i64.const 32 i64.shr_u i64.add - local.set $12 - local.get $2 + local.set $9 + local.get $1 i32.const 1 i32.shl i32.const 3920 i32.add - local.get $11 - local.get $4 + local.get $12 + local.get $13 i64.const 32 i64.shr_u - local.tee $4 - local.tee $11 + local.tee $2 + local.tee $12 i64.mul - local.get $13 + local.get $5 i64.const 32 i64.shr_u i64.add - local.get $10 - local.get $11 + local.get $4 + local.get $12 i64.mul - local.get $13 + local.get $5 i64.const 4294967295 i64.and i64.add @@ -4229,17 +4243,17 @@ i64.const 32 i64.shr_u i64.add - local.get $4 - local.get $5 - i64.mul + local.get $2 local.get $14 + i64.mul + local.get $7 i64.const 32 i64.shr_u i64.add - local.get $1 - local.get $4 + local.get $2 + local.get $6 i64.mul - local.get $14 + local.get $7 i64.const 4294967295 i64.and i64.add @@ -4250,24 +4264,24 @@ i64.add i64.const 1 i64.sub - local.tee $1 + local.tee $4 global.get $~lib/util/number/_exp_pow - local.get $7 + local.get $3 i32.add i32.const -64 i32.sub - local.get $1 local.get $4 - local.get $6 + local.get $2 + local.get $15 i64.mul - local.get $12 + local.get $9 i64.const 32 i64.shr_u i64.add - local.get $3 - local.get $4 + local.get $2 + local.get $8 i64.mul - local.get $12 + local.get $9 i64.const 4294967295 i64.and i64.add @@ -4279,13 +4293,13 @@ i64.const 1 i64.add i64.sub - local.get $2 + local.get $1 call $~lib/util/number/genDigits - local.get $2 + local.get $1 i32.sub global.get $~lib/util/number/_K call $~lib/util/number/prettify - local.get $2 + local.get $1 i32.add ) (func $~lib/number/F64#toString (param $0 f64) (result i32) @@ -5002,23 +5016,23 @@ local.get $0 i32.const 1 call $templateliteral/Ref#constructor - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 2 call $templateliteral/Ref#constructor - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $1 + local.get $0 call $templateliteral/Ref#toString - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 5360 i32.store offset=12 - local.get $0 + local.get $2 i32.const 5360 call $~lib/string/String.__eq i32.eqz @@ -5030,29 +5044,29 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 call $templateliteral/Ref#toString - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 - i32.store offset=16 local.get $2 + i32.store offset=16 + local.get $1 call $templateliteral/Ref#toString - local.set $0 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=20 + local.get $2 local.get $3 - local.get $0 call $~lib/string/String#concat - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 5392 i32.store offset=12 - local.get $0 + local.get $2 i32.const 5392 call $~lib/string/String.__eq i32.eqz @@ -5065,12 +5079,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 call $templateliteral/Ref#toString local.tee $0 i32.store offset=24 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 call $templateliteral/Ref#toString local.tee $1 i32.store offset=28 @@ -5237,19 +5251,19 @@ i32.sub i32.load offset=16 i32.add - local.set $0 + local.set $2 loop $while-continue|0 - local.get $0 local.get $1 - i32.gt_u + local.get $2 + i32.lt_u if local.get $1 i32.load - local.tee $2 + local.tee $0 if - local.get $2 + local.get $0 if - local.get $2 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -5367,9 +5381,9 @@ local.get $1 local.get $0 i32.load offset=4 - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -5381,13 +5395,13 @@ return end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 local.get $0 i32.load local.tee $0 i32.store offset=4 - local.get $1 local.get $2 + local.get $1 call $templateliteral/RecursiveObject#toString local.tee $1 i32.store offset=8 @@ -5448,7 +5462,7 @@ i32.shr_u i32.const 1 i32.shl - local.tee $2 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -5457,9 +5471,9 @@ i32.shr_u i32.const 1 i32.shl - local.tee $3 - i32.add local.tee $4 + i32.add + local.tee $2 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -5470,26 +5484,26 @@ return end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.const 1 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $2 i32.store - local.get $4 - local.get $0 local.get $2 + local.get $0 + local.get $3 call $~lib/memory/memory.copy local.get $2 - local.get $4 + local.get $3 i32.add local.get $1 - local.get $3 + local.get $4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $2 ) (func $templateliteral/Ref#constructor (param $0 i32) (result i32) (local $1 i32) @@ -5624,16 +5638,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $0 i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $0 local.get $1 local.get $2 select @@ -5642,7 +5656,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $3 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/throw.optimized.wat b/tests/compiler/throw.optimized.wat index 2053a68bb4..fc376b8106 100644 --- a/tests/compiler/throw.optimized.wat +++ b/tests/compiler/throw.optimized.wat @@ -172,19 +172,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -209,9 +209,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -219,17 +219,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -692,7 +692,7 @@ local.get $0 i32.const 4 i32.add - local.tee $3 + local.tee $2 i32.const 18140 i32.ge_u if @@ -808,7 +808,7 @@ if (result i32) local.get $0 i32.load - local.set $2 + local.set $3 i32.const 19708 else i32.const 19724 @@ -823,7 +823,7 @@ i32.ge_u if local.get $0 - local.get $2 + local.get $3 i32.const 2 i32.and local.get $1 @@ -859,20 +859,20 @@ global.set $~lib/rt/tlsf/ROOT end global.get $~lib/rt/tlsf/ROOT - local.get $3 + local.get $2 i32.const 4 i32.sub - local.set $1 - local.get $3 + local.set $0 + local.get $2 i32.const 15 i32.and i32.const 1 - local.get $3 + local.get $2 select if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.load i32.const 1 i32.and @@ -885,13 +885,13 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.load i32.const 1 i32.or i32.store - local.get $1 + local.get $0 call $~lib/rt/tlsf/insertBlock end end @@ -1234,20 +1234,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and diff --git a/tests/compiler/typeof.optimized.wat b/tests/compiler/typeof.optimized.wat index a51412cdb1..c9886e390e 100644 --- a/tests/compiler/typeof.optimized.wat +++ b/tests/compiler/typeof.optimized.wat @@ -144,14 +144,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -310,19 +310,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -347,9 +347,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -357,17 +357,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -655,10 +655,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -670,15 +670,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -708,7 +708,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -744,12 +744,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -767,11 +767,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 18224 @@ -779,14 +779,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -796,17 +796,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1595,7 +1595,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1672,16 +1672,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $0 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1729,7 +1729,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $2 i32.const -4 i32.and i32.const 28 @@ -1739,7 +1739,7 @@ i32.ge_u if local.get $0 - local.get $3 + local.get $2 i32.const 2 i32.and i32.const 28 @@ -1748,7 +1748,7 @@ local.get $0 i32.const 32 i32.add - local.tee $3 + local.tee $2 local.get $4 i32.const 4 i32.sub @@ -1756,11 +1756,11 @@ i32.or i32.store local.get $1 - local.get $3 + local.get $2 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $2 i32.const -2 i32.and i32.store @@ -1786,26 +1786,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1817,7 +1817,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $2 + local.get $3 local.get $0 i32.const 20 i32.add @@ -1945,19 +1945,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1967,22 +1967,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 18220 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1996,9 +1996,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -2008,23 +2008,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -2032,7 +2032,7 @@ else i32.const 1792 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1552 @@ -2042,7 +2042,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1796 @@ -2057,28 +2057,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/wasi/abort.optimized.wat b/tests/compiler/wasi/abort.optimized.wat index bee6e75d84..2c3c6b08d9 100644 --- a/tests/compiler/wasi/abort.optimized.wat +++ b/tests/compiler/wasi/abort.optimized.wat @@ -36,38 +36,38 @@ i32.shl local.get $0 i32.add - local.set $3 + local.set $4 local.get $2 local.set $1 loop $while-continue|0 local.get $0 - local.get $3 + local.get $4 i32.lt_u if local.get $0 i32.load16_u - local.tee $5 + local.tee $3 i32.const 128 i32.lt_u if (result i32) local.get $1 - local.get $5 + local.get $3 i32.store8 local.get $1 i32.const 1 i32.add else - local.get $5 + local.get $3 i32.const 2048 i32.lt_u if (result i32) local.get $1 - local.get $5 + local.get $3 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $5 + local.get $3 i32.const 63 i32.and i32.const 128 @@ -80,16 +80,16 @@ i32.const 2 i32.add else - local.get $5 + local.get $3 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $5 + local.get $3 i32.const 56320 i32.lt_u - local.get $3 + local.get $4 local.get $0 i32.const 2 i32.add @@ -98,32 +98,32 @@ if local.get $0 i32.load16_u offset=2 - local.tee $4 + local.tee $5 i32.const 64512 i32.and i32.const 56320 i32.eq if local.get $1 - local.get $5 + local.get $3 i32.const 1023 i32.and i32.const 10 i32.shl i32.const 65536 i32.add - local.get $4 + local.get $5 i32.const 1023 i32.and i32.or - local.tee $4 + local.tee $3 i32.const 63 i32.and i32.const 128 i32.or i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 6 i32.shr_u i32.const 63 @@ -133,7 +133,7 @@ i32.const 16 i32.shl i32.or - local.get $4 + local.get $3 i32.const 12 i32.shr_u i32.const 63 @@ -143,7 +143,7 @@ i32.const 8 i32.shl i32.or - local.get $4 + local.get $3 i32.const 18 i32.shr_u i32.const 240 @@ -163,12 +163,12 @@ end end local.get $1 - local.get $5 + local.get $3 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $5 + local.get $3 i32.const 6 i32.shr_u i32.const 63 @@ -180,7 +180,7 @@ i32.or i32.store16 local.get $1 - local.get $5 + local.get $3 i32.const 63 i32.and i32.const 128 @@ -231,19 +231,19 @@ call $~lib/string/String.UTF8.encodeUnsafe@varargs i32.const 19 i32.add - local.tee $3 + local.tee $0 i32.const 544106784 i32.store i32.const 1212 i32.load i32.const 1 i32.shr_u - local.set $0 + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 1216 - local.get $0 local.get $3 + local.get $0 i32.const 4 i32.add local.tee $0 diff --git a/tests/compiler/wasi/seed.optimized.wat b/tests/compiler/wasi/seed.optimized.wat index 1dd4b8acc5..a6ca0dc2a0 100644 --- a/tests/compiler/wasi/seed.optimized.wat +++ b/tests/compiler/wasi/seed.optimized.wat @@ -12,8 +12,7 @@ (export "_start" (func $~start)) (func $wasi/seed/test (result f64) (local $0 i64) - (local $1 i32) - (local $2 i64) + (local $1 i64) global.get $~lib/math/random_seeded i32.eqz if @@ -80,28 +79,28 @@ global.set $~lib/math/random_seeded end global.get $~lib/math/random_state0_64 - local.set $0 + local.set $1 global.get $~lib/math/random_state1_64 - local.tee $2 + local.tee $0 global.set $~lib/math/random_state0_64 - local.get $2 local.get $0 + local.get $1 i64.const 23 i64.shl - local.get $0 + local.get $1 i64.xor - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i64.const 17 i64.shr_u i64.xor i64.xor - local.get $2 + local.get $0 i64.const 26 i64.shr_u i64.xor global.set $~lib/math/random_state1_64 - local.get $2 + local.get $0 i64.const 12 i64.shr_u i64.const 4607182418800017408 diff --git a/tests/compiler/wasi/trace.optimized.wat b/tests/compiler/wasi/trace.optimized.wat index 68d9959d02..6cb52f0066 100644 --- a/tests/compiler/wasi/trace.optimized.wat +++ b/tests/compiler/wasi/trace.optimized.wat @@ -57,38 +57,38 @@ i32.shl local.get $0 i32.add - local.set $3 + local.set $4 local.get $2 local.set $1 loop $while-continue|0 local.get $0 - local.get $3 + local.get $4 i32.lt_u if local.get $0 i32.load16_u - local.tee $5 + local.tee $3 i32.const 128 i32.lt_u if (result i32) local.get $1 - local.get $5 + local.get $3 i32.store8 local.get $1 i32.const 1 i32.add else - local.get $5 + local.get $3 i32.const 2048 i32.lt_u if (result i32) local.get $1 - local.get $5 + local.get $3 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $5 + local.get $3 i32.const 63 i32.and i32.const 128 @@ -101,16 +101,16 @@ i32.const 2 i32.add else - local.get $5 + local.get $3 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $5 + local.get $3 i32.const 56320 i32.lt_u - local.get $3 + local.get $4 local.get $0 i32.const 2 i32.add @@ -119,32 +119,32 @@ if local.get $0 i32.load16_u offset=2 - local.tee $4 + local.tee $5 i32.const 64512 i32.and i32.const 56320 i32.eq if local.get $1 - local.get $5 + local.get $3 i32.const 1023 i32.and i32.const 10 i32.shl i32.const 65536 i32.add - local.get $4 + local.get $5 i32.const 1023 i32.and i32.or - local.tee $4 + local.tee $3 i32.const 63 i32.and i32.const 128 i32.or i32.const 24 i32.shl - local.get $4 + local.get $3 i32.const 6 i32.shr_u i32.const 63 @@ -154,7 +154,7 @@ i32.const 16 i32.shl i32.or - local.get $4 + local.get $3 i32.const 12 i32.shr_u i32.const 63 @@ -164,7 +164,7 @@ i32.const 8 i32.shl i32.or - local.get $4 + local.get $3 i32.const 18 i32.shr_u i32.const 240 @@ -184,12 +184,12 @@ end end local.get $1 - local.get $5 + local.get $3 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $5 + local.get $3 i32.const 6 i32.shr_u i32.const 63 @@ -201,7 +201,7 @@ i32.or i32.store16 local.get $1 - local.get $5 + local.get $3 i32.const 63 i32.and i32.const 128 @@ -529,19 +529,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -566,9 +566,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -576,17 +576,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -874,10 +874,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -889,15 +889,15 @@ call $~lib/wasi/index/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -927,7 +927,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -963,12 +963,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -986,11 +986,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 19024 @@ -998,14 +998,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -1015,17 +1015,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -2053,105 +2053,115 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $3 local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $4 + local.set $1 local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 + local.tee $4 + i32.const 2 + i32.add + local.set $0 local.get $3 local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $3 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $0 + local.tee $4 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 local.get $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2183,41 +2193,43 @@ i32.load8_u i32.store8 local.get $0 + local.tee $1 i32.const 2 i32.add - local.set $1 + local.set $0 local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 + local.get $0 i32.load8_u i32.store8 - local.get $0 + local.get $1 + local.tee $3 i32.const 2 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 2 i32.add local.set $4 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 local.get $4 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 - local.get $3 + local.get $1 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2736,82 +2748,83 @@ i32.const 101 i32.store16 offset=2 local.get $0 + local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $1 + local.tee $0 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $1 + local.get $0 i32.sub - local.set $1 + local.set $0 end - local.get $1 - local.tee $4 + local.get $0 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $4 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $4 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $4 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $4 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $4 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $4 - local.get $1 - local.get $4 + local.set $2 + local.get $0 + local.get $2 i32.const 1 i32.add - local.tee $1 + local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $1 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 - local.get $1 + local.get $0 i32.const 2 i32.add else @@ -2834,87 +2847,87 @@ local.get $0 local.get $2 i32.add - local.tee $0 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $0 + local.get $2 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $2 + local.tee $0 i32.const 0 i32.lt_s - local.tee $3 + local.tee $4 if i32.const 0 - local.get $2 + local.get $0 i32.sub - local.set $2 + local.set $0 end - local.get $2 - local.tee $5 + local.get $0 + local.tee $3 i32.const 100000 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 100 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $5 + local.get $3 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $5 + local.get $3 i32.const 1000 i32.ge_u i32.add end else - local.get $5 + local.get $3 i32.const 10000000 i32.lt_u if (result i32) - local.get $5 + local.get $3 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $5 + local.get $3 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $5 + local.get $3 i32.const 100000000 i32.ge_u i32.add end end - local.set $5 - local.get $2 - local.get $5 + local.set $3 + local.get $0 + local.get $3 i32.const 1 i32.add - local.tee $2 + local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $2 i32.const 45 i32.const 43 - local.get $3 + local.get $4 select i32.store16 offset=4 + local.get $0 local.get $1 - local.get $2 i32.add i32.const 2 i32.add @@ -2927,14 +2940,14 @@ (local $2 i64) (local $3 i32) (local $4 i64) - (local $5 i64) + (local $5 i32) (local $6 i64) - (local $7 i32) - (local $8 i32) - (local $9 i32) + (local $7 i64) + (local $8 i64) + (local $9 i64) (local $10 i64) - (local $11 i64) - (local $12 i64) + (local $11 i32) + (local $12 i32) (local $13 i64) (local $14 i64) local.get $1 @@ -2957,11 +2970,11 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.set $7 + local.set $5 local.get $2 i64.const 4503599627370495 i64.and - local.get $7 + local.get $5 i32.const 0 i32.ne i64.extend_i32_u @@ -2969,13 +2982,13 @@ i64.shl i64.add local.set $2 - local.get $7 + local.get $5 i32.const 1 - local.get $7 + local.get $5 select i32.const 1075 i32.sub - local.tee $7 + local.tee $11 i32.const 1 i32.sub local.get $2 @@ -2986,11 +2999,11 @@ local.tee $4 i64.clz i32.wrap_i64 - local.tee $8 + local.tee $12 i32.sub - local.set $9 + local.set $5 local.get $4 - local.get $8 + local.get $12 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -3000,25 +3013,25 @@ i64.eq i32.const 1 i32.add - local.tee $8 + local.tee $12 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $7 - local.get $8 + local.get $11 + local.get $12 i32.sub - local.get $9 + local.get $5 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $9 + local.get $5 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $7 + local.tee $5 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -3027,9 +3040,9 @@ f64.add local.tee $1 i32.trunc_f64_s - local.tee $8 + local.tee $11 local.get $1 - local.get $8 + local.get $11 f64.convert_i32_s f64.ne i32.add @@ -3037,18 +3050,18 @@ i32.shr_s i32.const 1 i32.add - local.tee $8 + local.tee $11 i32.const 3 i32.shl - local.tee $9 + local.tee $12 i32.sub global.set $~lib/util/number/_K - local.get $9 + local.get $12 i32.const 1328 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $8 + local.get $11 i32.const 1 i32.shl i32.const 2024 @@ -3059,62 +3072,62 @@ local.get $2 i64.clz i64.shl - local.tee $4 + local.tee $2 i64.const 4294967295 i64.and - local.set $2 - local.get $4 + local.set $6 + local.get $2 i64.const 32 i64.shr_u - local.tee $6 + local.tee $13 global.get $~lib/util/number/_frc_pow - local.tee $5 + local.tee $4 i64.const 4294967295 i64.and - local.tee $10 - local.tee $4 + local.tee $2 + local.tee $7 i64.mul - local.get $2 - local.get $4 + local.get $6 + local.get $7 i64.mul i64.const 32 i64.shr_u i64.add - local.set $4 - local.get $5 + local.set $7 + local.get $4 i64.const 32 i64.shr_u - local.tee $11 - local.set $5 + local.tee $4 + local.set $8 global.get $~lib/util/number/_frc_plus - local.tee $12 + local.tee $10 i64.const 4294967295 i64.and - local.set $13 - local.get $12 + local.set $9 + local.get $10 i64.const 32 i64.shr_u - local.tee $12 - local.get $10 + local.tee $14 + local.get $2 i64.mul - local.get $10 - local.get $13 + local.get $2 + local.get $9 i64.mul i64.const 32 i64.shr_u i64.add - local.set $14 - local.get $11 - local.get $12 - i64.mul + local.set $10 + local.get $4 local.get $14 + i64.mul + local.get $10 i64.const 32 i64.shr_u i64.add - local.get $11 - local.get $13 + local.get $4 + local.get $9 i64.mul - local.get $14 + local.get $10 i64.const 4294967295 i64.and i64.add @@ -3125,42 +3138,42 @@ i64.add i64.const 1 i64.sub - local.set $12 + local.set $9 global.get $~lib/util/number/_frc_minus - local.tee $13 + local.tee $14 i64.const 4294967295 i64.and - local.set $14 - local.get $13 + local.set $10 + local.get $14 i64.const 32 i64.shr_u - local.tee $13 - local.get $10 + local.tee $14 + local.get $2 i64.mul + local.get $2 local.get $10 - local.get $14 i64.mul i64.const 32 i64.shr_u i64.add - local.set $10 + local.set $2 local.get $3 i32.const 1 i32.shl local.get $0 i32.add local.get $0 - local.get $5 - local.get $6 + local.get $8 + local.get $13 i64.mul - local.get $4 + local.get $7 i64.const 32 i64.shr_u i64.add - local.get $2 - local.get $5 + local.get $6 + local.get $8 i64.mul - local.get $4 + local.get $7 i64.const 4294967295 i64.and i64.add @@ -3169,24 +3182,24 @@ i64.const 32 i64.shr_u i64.add - local.get $12 + local.get $9 global.get $~lib/util/number/_exp_pow - local.get $7 + local.get $5 i32.add i32.const -64 i32.sub - local.get $12 - local.get $11 - local.get $13 + local.get $9 + local.get $4 + local.get $14 i64.mul - local.get $10 + local.get $2 i64.const 32 i64.shr_u i64.add - local.get $11 - local.get $14 - i64.mul + local.get $4 local.get $10 + i64.mul + local.get $2 i64.const 4294967295 i64.and i64.add @@ -3371,7 +3384,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $9 + local.tee $8 local.get $6 i32.const 1073741820 i32.gt_u @@ -3422,7 +3435,7 @@ local.get $7 end i32.const 4 - local.get $9 + local.get $8 i32.load offset=1568 local.get $6 i32.const 16 @@ -3438,16 +3451,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $8 + local.tee $9 local.get $6 - local.get $8 + local.get $9 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $8 + local.get $9 memory.grow i32.const 0 i32.lt_s @@ -3455,7 +3468,7 @@ unreachable end end - local.get $9 + local.get $8 local.get $6 i32.const 16 i32.shl @@ -3463,7 +3476,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $9 + local.get $8 local.get $7 call $~lib/rt/tlsf/searchBlock local.tee $6 @@ -3491,12 +3504,12 @@ call $~lib/wasi/index/abort unreachable end - local.get $9 + local.get $8 local.get $6 call $~lib/rt/tlsf/removeBlock local.get $6 i32.load - local.set $10 + local.set $9 local.get $7 i32.const 4 i32.add @@ -3510,17 +3523,17 @@ call $~lib/wasi/index/abort unreachable end - local.get $10 + local.get $9 i32.const -4 i32.and local.get $7 i32.sub - local.tee $8 + local.tee $10 i32.const 16 i32.ge_u if local.get $6 - local.get $10 + local.get $9 i32.const 2 i32.and local.get $7 @@ -3532,18 +3545,18 @@ i32.add i32.add local.tee $7 - local.get $8 + local.get $10 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $9 + local.get $8 local.get $7 call $~lib/rt/tlsf/insertBlock else local.get $6 - local.get $10 + local.get $9 i32.const -2 i32.and i32.store @@ -3764,7 +3777,7 @@ local.get $7 i32.const 4 i32.sub - local.set $6 + local.set $0 local.get $7 i32.const 15 i32.and @@ -3774,7 +3787,7 @@ if (result i32) i32.const 1 else - local.get $6 + local.get $0 i32.load i32.const 1 i32.and @@ -3787,13 +3800,13 @@ call $~lib/wasi/index/abort unreachable end - local.get $6 - local.get $6 + local.get $0 + local.get $0 i32.load i32.const 1 i32.or i32.store - local.get $6 + local.get $0 call $~lib/rt/tlsf/insertBlock end ) diff --git a/tests/compiler/while.optimized.wat b/tests/compiler/while.optimized.wat index d1ff6fb472..8a83039fd2 100644 --- a/tests/compiler/while.optimized.wat +++ b/tests/compiler/while.optimized.wat @@ -164,19 +164,19 @@ end local.get $1 i32.load offset=8 - local.set $5 + local.set $4 local.get $1 i32.load offset=4 - local.tee $4 + local.tee $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=8 end - local.get $5 + local.get $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=4 end local.get $2 @@ -201,9 +201,9 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $4 i32.store offset=96 - local.get $5 + local.get $4 i32.eqz if local.get $3 @@ -211,17 +211,17 @@ i32.shl local.get $0 i32.add - local.tee $1 + local.tee $4 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $2 + local.set $1 + local.get $4 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -509,10 +509,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $4 + local.tee $2 if local.get $1 - local.get $4 + local.get $2 i32.const 4 i32.add i32.lt_u @@ -524,15 +524,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $4 + local.get $2 i32.load - local.set $3 + local.set $4 local.get $1 i32.const 16 i32.sub @@ -562,7 +562,7 @@ return end local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and local.get $2 @@ -598,12 +598,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $0 + local.get $1 i32.sub memory.grow i32.const 0 @@ -621,11 +621,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $1 + local.get $0 i32.const 23 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 17920 @@ -633,14 +633,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 16 i32.lt_u if - local.get $0 local.get $1 + local.get $0 i32.const 4 i32.shl i32.add @@ -650,17 +650,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -1002,14 +1002,14 @@ (local $1 i32) (local $2 i32) i32.const 10 - local.set $0 + local.set $1 loop $while-continue|0 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 local.get $2 i32.const 1 i32.add @@ -1017,7 +1017,7 @@ br $while-continue|0 end end - local.get $0 + local.get $1 if i32.const 0 i32.const 1056 @@ -1040,25 +1040,25 @@ i32.const 0 local.set $2 i32.const 10 - local.set $0 + local.set $1 loop $while-continue|00 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 loop $while-continue|1 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 local.get $2 i32.const 1 i32.add @@ -1066,7 +1066,7 @@ br $while-continue|1 end end - local.get $0 + local.get $1 if i32.const 0 i32.const 1056 @@ -1089,7 +1089,7 @@ br $while-continue|00 end end - local.get $0 + local.get $1 if i32.const 0 i32.const 1056 @@ -1098,7 +1098,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -1123,14 +1123,14 @@ i32.const 0 local.set $2 i32.const 1 - local.set $0 + local.set $1 loop $while-continue|01 - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.sub - local.set $0 - local.get $1 + local.set $1 + local.get $0 if (result i32) local.get $2 i32.const 1 @@ -1141,7 +1141,7 @@ end br_if $while-continue|01 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -1164,17 +1164,17 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $while-continue|02 - local.get $0 + local.get $1 i32.const 1 i32.add - local.tee $0 + local.tee $1 i32.const 10 i32.ne br_if $while-continue|02 end - local.get $0 + local.get $1 i32.const 10 i32.ne if @@ -1186,17 +1186,17 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $while-continue|03 - local.get $0 + local.get $1 i32.const 1 i32.add - local.tee $0 + local.tee $1 i32.const 10 i32.ne br_if $while-continue|03 end - local.get $0 + local.get $1 i32.const 10 i32.ne if @@ -1208,18 +1208,18 @@ unreachable end i32.const 10 - local.set $0 + local.set $1 loop $while-continue|04 - local.get $0 + local.get $1 if - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|04 end end - local.get $0 + local.get $1 if i32.const 0 i32.const 1056 @@ -1229,11 +1229,11 @@ unreachable end i32.const 10 - local.set $0 + local.set $1 i32.const 10 local.set $2 loop $while-continue|05 - local.get $0 + local.get $1 if loop $while-continue|16 local.get $2 @@ -1245,14 +1245,14 @@ br $while-continue|16 end end - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|05 end end - local.get $0 + local.get $1 if i32.const 0 i32.const 1056 @@ -1319,10 +1319,10 @@ i32.store local.get $0 call $while/Ref#constructor - local.tee $0 + local.tee $1 i32.store loop $while-continue|07 - local.get $0 + local.get $1 if local.get $2 i32.const 1 @@ -1332,11 +1332,11 @@ i32.eq if i32.const 0 - local.set $0 + local.set $1 else global.get $~lib/memory/__stack_pointer call $while/Ref#constructor - local.tee $0 + local.tee $1 i32.store end br $while-continue|07 @@ -1353,7 +1353,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 if i32.const 0 i32.const 1056 @@ -1382,7 +1382,7 @@ i32.store local.get $0 call $while/Ref#constructor - local.tee $0 + local.tee $1 i32.store loop $while-continue|06 call $while/Ref#constructor @@ -1396,7 +1396,7 @@ i32.eq if i32.const 0 - local.set $0 + local.set $1 br $while-break|07 end br $while-continue|06 @@ -1414,7 +1414,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 if i32.const 0 i32.const 1056 @@ -1428,39 +1428,39 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $0 + local.set $1 loop $while-continue|08 - local.get $0 + local.get $1 i32.const 1 i32.add - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s br_if $while-continue|08 end i32.const 0 - local.set $0 + local.set $1 loop $while-continue|010 - local.get $0 + local.get $1 i32.const 1 i32.add - local.tee $0 + local.tee $1 i32.const 1 i32.lt_s br_if $while-continue|010 end i32.const 0 - local.set $0 + local.set $1 loop $do-loop|0 - local.get $0 + local.get $1 i32.const 1 i32.add - local.tee $0 + local.tee $1 i32.const 3 i32.lt_s br_if $do-loop|0 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -1570,7 +1570,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1647,16 +1647,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $0 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1704,7 +1704,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $2 i32.const -4 i32.and i32.const 28 @@ -1714,7 +1714,7 @@ i32.ge_u if local.get $0 - local.get $3 + local.get $2 i32.const 2 i32.and i32.const 28 @@ -1723,7 +1723,7 @@ local.get $0 i32.const 32 i32.add - local.tee $3 + local.tee $2 local.get $4 i32.const 4 i32.sub @@ -1731,11 +1731,11 @@ i32.or i32.store local.get $1 - local.get $3 + local.get $2 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $2 i32.const -2 i32.and i32.store @@ -1761,26 +1761,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1792,7 +1792,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $2 + local.get $3 local.get $0 i32.const 20 i32.add @@ -1812,19 +1812,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1834,22 +1834,22 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17908 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1863,9 +1863,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1875,23 +1875,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -1899,7 +1899,7 @@ else i32.const 1488 i32.load - local.get $0 + local.get $2 i32.lt_u if i32.const 1296 @@ -1909,7 +1909,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 i32.shl i32.const 1492 @@ -1924,28 +1924,28 @@ else i32.const 2 end - local.set $0 - local.get $2 - i32.load offset=8 local.set $3 local.get $1 + i32.load offset=8 + local.set $2 local.get $0 - local.get $2 - i32.or - i32.store offset=4 local.get $1 local.get $3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 - local.get $2 local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 From bdfbe8d547c6552221ac3f079418ed660bd68a3c Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Mon, 20 Sep 2021 12:14:41 +0300 Subject: [PATCH 13/54] Revert "add reorder-locals" This reverts commit 80cc26afb70ead710a01ebff113174833b779ae5. --- src/module.ts | 1 - tests/compiler/NonNullable.optimized.wat | 6 +- tests/compiler/builtins.optimized.wat | 6 +- tests/compiler/call-super.optimized.wat | 204 +- tests/compiler/class-implements.optimized.wat | 144 +- .../class-overloading-cast.optimized.wat | 150 +- .../compiler/class-overloading.optimized.wat | 150 +- tests/compiler/class.optimized.wat | 232 +- tests/compiler/constructor.optimized.wat | 204 +- tests/compiler/do.optimized.wat | 279 +- .../empty-exportruntime.optimized.wat | 180 +- tests/compiler/empty-new.optimized.wat | 130 +- tests/compiler/exports.optimized.wat | 144 +- .../exportstar-rereexport.optimized.wat | 150 +- .../extends-baseaggregate.optimized.wat | 328 +- .../compiler/extends-recursive.optimized.wat | 124 +- tests/compiler/features/simd.optimized.wat | 140 +- .../field-initialization.optimized.wat | 398 +- tests/compiler/field.optimized.wat | 556 +- tests/compiler/for.optimized.wat | 150 +- tests/compiler/function-call.optimized.wat | 150 +- .../function-expression.optimized.wat | 162 +- tests/compiler/getter-call.optimized.wat | 150 +- tests/compiler/heap.optimized.wat | 288 +- .../implicit-getter-setter.optimized.wat | 120 +- tests/compiler/infer-array.optimized.wat | 438 +- tests/compiler/infer-generic.optimized.wat | 170 +- tests/compiler/inlining.optimized.wat | 204 +- tests/compiler/instanceof-class.optimized.wat | 144 +- tests/compiler/issues/1095.optimized.wat | 246 +- tests/compiler/issues/1225.optimized.wat | 142 +- tests/compiler/issues/1699.optimized.wat | 368 +- tests/compiler/logical.optimized.wat | 150 +- tests/compiler/managed-cast.optimized.wat | 238 +- tests/compiler/memcpy.optimized.wat | 108 +- tests/compiler/new.optimized.wat | 144 +- tests/compiler/number.optimized.wat | 564 +- tests/compiler/object-literal.optimized.wat | 646 +- .../optional-typeparameters.optimized.wat | 144 +- tests/compiler/reexport.optimized.wat | 144 +- tests/compiler/rereexport.optimized.wat | 150 +- tests/compiler/resolve-access.optimized.wat | 545 +- tests/compiler/resolve-binary.optimized.wat | 470 +- .../resolve-elementaccess.optimized.wat | 634 +- .../resolve-function-expression.optimized.wat | 204 +- tests/compiler/resolve-nested.optimized.wat | 144 +- tests/compiler/resolve-new.optimized.wat | 150 +- .../resolve-propertyaccess.optimized.wat | 210 +- tests/compiler/resolve-ternary.optimized.wat | 478 +- tests/compiler/resolve-unary.optimized.wat | 230 +- tests/compiler/rt/finalize.optimized.wat | 150 +- tests/compiler/rt/instanceof.optimized.wat | 144 +- .../runtime-incremental-export.optimized.wat | 180 +- .../rt/runtime-minimal-export.optimized.wat | 186 +- .../rt/runtime-stub-export.optimized.wat | 24 +- tests/compiler/std-wasi/console.optimized.wat | 480 +- tests/compiler/std-wasi/crypto.optimized.wat | 540 +- tests/compiler/std-wasi/process.optimized.wat | 926 +- tests/compiler/std/array-access.optimized.wat | 34 +- .../compiler/std/array-literal.optimized.wat | 188 +- tests/compiler/std/array.optimized.wat | 4639 +++++----- tests/compiler/std/arraybuffer.optimized.wat | 444 +- tests/compiler/std/dataview.optimized.wat | 532 +- tests/compiler/std/date.optimized.wat | 1676 ++-- tests/compiler/std/map.optimized.wat | 4817 +++++----- tests/compiler/std/math.optimized.wat | 2989 +++--- tests/compiler/std/mod.optimized.wat | 150 +- tests/compiler/std/new.optimized.wat | 150 +- tests/compiler/std/object.optimized.wat | 6 +- .../std/operator-overloading.optimized.wat | 410 +- tests/compiler/std/pointer.optimized.wat | 354 +- tests/compiler/std/set.optimized.wat | 3114 ++++--- tests/compiler/std/static-array.optimized.wat | 392 +- tests/compiler/std/staticarray.optimized.wat | 994 +- .../std/string-casemapping.optimized.wat | 638 +- .../std/string-encoding.optimized.wat | 478 +- tests/compiler/std/string.optimized.wat | 2998 +++--- tests/compiler/std/symbol.optimized.wat | 581 +- tests/compiler/std/typedarray.optimized.wat | 8105 ++++++++--------- tests/compiler/std/uri.optimized.wat | 532 +- tests/compiler/super-inline.optimized.wat | 144 +- tests/compiler/templateliteral.optimized.wat | 702 +- tests/compiler/throw.optimized.wat | 56 +- tests/compiler/typeof.optimized.wat | 156 +- tests/compiler/wasi/abort.optimized.wat | 46 +- tests/compiler/wasi/seed.optimized.wat | 19 +- tests/compiler/wasi/trace.optimized.wat | 481 +- tests/compiler/while.optimized.wat | 268 +- 88 files changed, 24969 insertions(+), 25365 deletions(-) diff --git a/src/module.ts b/src/module.ts index 2c8d7d5116..b1bb1325a7 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2395,7 +2395,6 @@ export class Module { passes.push("vacuum"); passes.push("ssa-nomerge"); - passes.push("reorder-locals"); passes.push("coalesce-locals"); } passes.push("remove-unused-brs"); diff --git a/tests/compiler/NonNullable.optimized.wat b/tests/compiler/NonNullable.optimized.wat index 3e45916c50..7d8d404b30 100644 --- a/tests/compiler/NonNullable.optimized.wat +++ b/tests/compiler/NonNullable.optimized.wat @@ -109,14 +109,14 @@ if local.get $2 i32.load16_u - local.tee $3 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $3 i32.ne if - local.get $3 local.get $4 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end diff --git a/tests/compiler/builtins.optimized.wat b/tests/compiler/builtins.optimized.wat index d59379e408..a699bb0ef9 100644 --- a/tests/compiler/builtins.optimized.wat +++ b/tests/compiler/builtins.optimized.wat @@ -165,14 +165,14 @@ if local.get $2 i32.load16_u - local.tee $3 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $3 i32.ne if - local.get $3 local.get $4 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end diff --git a/tests/compiler/call-super.optimized.wat b/tests/compiler/call-super.optimized.wat index 61883a6b64..24cac8516c 100644 --- a/tests/compiler/call-super.optimized.wat +++ b/tests/compiler/call-super.optimized.wat @@ -164,19 +164,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -201,9 +201,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -211,17 +211,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -509,10 +509,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -524,15 +524,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -562,7 +562,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -598,12 +598,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -621,11 +621,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17984 @@ -633,14 +633,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -650,17 +650,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1140,7 +1140,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1166,32 +1166,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1224,7 +1224,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1232,8 +1232,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1250,7 +1250,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1260,13 +1260,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1282,7 +1282,7 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub local.tee $6 i32.const 16 @@ -1292,23 +1292,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 + local.tee $4 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1338,26 +1338,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1372,7 +1372,7 @@ local.get $2 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1384,7 +1384,7 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1399,12 +1399,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1416,7 +1416,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $2 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1431,25 +1431,25 @@ i32.sub i32.const 3 i32.and - local.tee $2 + local.tee $3 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1459,17 +1459,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1485,22 +1485,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 @@ -1511,11 +1511,11 @@ i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1547,7 +1547,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/rt/__visit_members (param $0 i32) block $invalid @@ -2231,19 +2231,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -2253,22 +2253,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17980 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -2282,9 +2282,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2294,23 +2294,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -2318,7 +2318,7 @@ else i32.const 1488 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1296 @@ -2328,7 +2328,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1492 @@ -2343,28 +2343,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/class-implements.optimized.wat b/tests/compiler/class-implements.optimized.wat index 8336410aae..7de51a98c0 100644 --- a/tests/compiler/class-implements.optimized.wat +++ b/tests/compiler/class-implements.optimized.wat @@ -192,19 +192,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -229,9 +229,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -239,17 +239,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -537,10 +537,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -552,15 +552,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -590,7 +590,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -626,12 +626,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -649,11 +649,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17952 @@ -661,14 +661,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -678,17 +678,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1161,17 +1161,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1180,19 +1180,19 @@ local.get $1 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1218,26 +1218,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $0 i32.load offset=8 - local.set $0 + local.set $2 local.get $1 global.get $~lib/rt/itcms/white - local.get $2 + local.get $0 i32.or i32.store offset=4 local.get $1 - local.get $0 + local.get $2 i32.store offset=8 - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $2 + local.get $0 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1576,19 +1576,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1598,22 +1598,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17948 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1627,9 +1627,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1639,23 +1639,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1663,7 +1663,7 @@ else i32.const 1504 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1248 @@ -1673,7 +1673,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1508 @@ -1688,28 +1688,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/class-overloading-cast.optimized.wat b/tests/compiler/class-overloading-cast.optimized.wat index 50c46aece1..ae4f1b1bd2 100644 --- a/tests/compiler/class-overloading-cast.optimized.wat +++ b/tests/compiler/class-overloading-cast.optimized.wat @@ -212,19 +212,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -249,9 +249,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -259,17 +259,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -557,10 +557,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -572,15 +572,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -610,7 +610,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -646,12 +646,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -669,11 +669,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 18096 @@ -681,14 +681,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -698,17 +698,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1181,17 +1181,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1200,19 +1200,19 @@ local.get $1 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1238,26 +1238,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $0 i32.load offset=8 - local.set $0 + local.set $2 local.get $1 global.get $~lib/rt/itcms/white - local.get $2 + local.get $0 i32.or i32.store offset=4 local.get $1 - local.get $0 + local.get $2 i32.store offset=8 - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $2 + local.get $0 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1363,14 +1363,14 @@ if local.get $2 i32.load16_u - local.tee $3 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $3 i32.ne if - local.get $3 local.get $4 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -1874,19 +1874,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1896,22 +1896,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18084 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1925,9 +1925,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1937,23 +1937,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1961,7 +1961,7 @@ else i32.const 1616 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1248 @@ -1971,7 +1971,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1620 @@ -1986,28 +1986,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/class-overloading.optimized.wat b/tests/compiler/class-overloading.optimized.wat index abc263d53d..493b78dc33 100644 --- a/tests/compiler/class-overloading.optimized.wat +++ b/tests/compiler/class-overloading.optimized.wat @@ -242,19 +242,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -279,9 +279,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -289,17 +289,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -587,10 +587,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -602,15 +602,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -640,7 +640,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -676,12 +676,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -699,11 +699,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 18320 @@ -711,14 +711,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -728,17 +728,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1211,17 +1211,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1230,19 +1230,19 @@ local.get $1 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1268,26 +1268,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $0 i32.load offset=8 - local.set $0 + local.set $2 local.get $1 global.get $~lib/rt/itcms/white - local.get $2 + local.get $0 i32.or i32.store offset=4 local.get $1 - local.get $0 + local.get $2 i32.store offset=8 - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $2 + local.get $0 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1393,14 +1393,14 @@ if local.get $2 i32.load16_u - local.tee $3 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $3 i32.ne if - local.get $3 local.get $4 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -3006,19 +3006,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -3028,22 +3028,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18316 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -3057,9 +3057,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -3069,23 +3069,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -3093,7 +3093,7 @@ else i32.const 1792 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1280 @@ -3103,7 +3103,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1796 @@ -3118,28 +3118,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/class.optimized.wat b/tests/compiler/class.optimized.wat index 4385aa5ac9..55b631b18a 100644 --- a/tests/compiler/class.optimized.wat +++ b/tests/compiler/class.optimized.wat @@ -116,7 +116,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -139,7 +139,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -149,23 +149,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -173,7 +173,7 @@ else i32.const 1536 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1248 @@ -183,7 +183,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 1540 @@ -198,27 +198,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -306,19 +306,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -343,9 +343,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -353,17 +353,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -651,10 +651,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -666,15 +666,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -704,7 +704,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -740,12 +740,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -763,11 +763,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17984 @@ -775,14 +775,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -792,17 +792,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1280,14 +1280,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1297,17 +1297,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1323,22 +1323,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1349,11 +1349,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1458,7 +1458,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1484,32 +1484,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1525,16 +1525,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1542,7 +1542,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1550,8 +1550,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1568,7 +1568,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -1578,13 +1578,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1597,40 +1597,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -1656,26 +1656,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1737,82 +1737,82 @@ i32.const 16 i32.const 5 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 0 i32.store offset=4 - local.get $0 + local.get $3 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 32 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $4 i32.store offset=4 - local.get $1 + local.get $4 i32.const 32 call $~lib/memory/memory.fill - local.get $0 - local.get $1 + local.get $3 + local.get $4 i32.store - local.get $1 + local.get $4 if - local.get $0 + local.get $3 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white - local.get $1 + local.get $4 i32.const 20 i32.sub - local.tee $3 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $0 + local.get $3 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $4 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $1 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $4 + local.get $0 i32.const 3 i32.eq i32.and if - local.get $3 + local.get $1 call $~lib/rt/itcms/Object#makeGray end end end end - local.get $0 - local.get $1 + local.get $3 + local.get $4 i32.store offset=4 - local.get $0 + local.get $3 i32.const 32 i32.store offset=8 - local.get $0 + local.get $3 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -1820,15 +1820,15 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $0 + local.get $3 i32.store - local.get $0 + local.get $3 if local.get $2 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white - local.get $0 + local.get $3 i32.const 20 i32.sub local.tee $0 diff --git a/tests/compiler/constructor.optimized.wat b/tests/compiler/constructor.optimized.wat index 8d968b13a4..b622a2ee03 100644 --- a/tests/compiler/constructor.optimized.wat +++ b/tests/compiler/constructor.optimized.wat @@ -274,19 +274,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -311,9 +311,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -321,17 +321,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -619,10 +619,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -634,15 +634,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -672,7 +672,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -708,12 +708,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -731,11 +731,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 18000 @@ -743,14 +743,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -760,17 +760,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1250,7 +1250,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1276,32 +1276,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1334,7 +1334,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1342,8 +1342,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1360,7 +1360,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1370,13 +1370,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1392,7 +1392,7 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub local.tee $6 i32.const 16 @@ -1402,23 +1402,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 + local.tee $4 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1448,26 +1448,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1482,7 +1482,7 @@ local.get $2 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1494,7 +1494,7 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1509,12 +1509,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1526,7 +1526,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $2 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1541,25 +1541,25 @@ i32.sub i32.const 3 i32.and - local.tee $2 + local.tee $3 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1569,17 +1569,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1595,22 +1595,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 @@ -1621,11 +1621,11 @@ i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1657,7 +1657,7 @@ end end end - local.get $3 + local.get $2 ) (func $start:constructor (local $0 i32) @@ -2120,19 +2120,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -2142,22 +2142,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17988 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -2171,9 +2171,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2183,23 +2183,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -2207,7 +2207,7 @@ else i32.const 1488 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1248 @@ -2217,7 +2217,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1492 @@ -2232,28 +2232,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/do.optimized.wat b/tests/compiler/do.optimized.wat index 2615511e5b..739e5cc2c2 100644 --- a/tests/compiler/do.optimized.wat +++ b/tests/compiler/do.optimized.wat @@ -164,19 +164,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -201,9 +201,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -211,17 +211,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -509,10 +509,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -524,15 +524,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -562,7 +562,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -598,12 +598,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -621,11 +621,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17904 @@ -633,14 +633,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -650,17 +650,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1001,21 +1001,20 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i32) i32.const 10 - local.set $1 + local.set $0 loop $do-loop|0 - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 1 i32.sub - local.tee $1 + local.tee $0 br_if $do-loop|0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1056 @@ -1024,7 +1023,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i32.const 10 i32.ne if @@ -1036,17 +1035,17 @@ unreachable end i32.const 10 - local.set $1 + local.set $0 loop $do-loop|00 - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 1 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 br_if $do-loop|00 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -1058,30 +1057,30 @@ unreachable end i32.const 0 - local.set $3 - i32.const 10 local.set $1 + i32.const 10 + local.set $0 loop $do-loop|01 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 local.get $2 i32.const 1 i32.add local.set $2 loop $do-loop|1 - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 - local.get $1 + local.set $1 + local.get $0 i32.const 1 i32.sub - local.tee $1 + local.tee $0 br_if $do-loop|1 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1056 @@ -1090,7 +1089,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i32.const 9 i32.ne if @@ -1101,10 +1100,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 br_if $do-loop|01 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1056 @@ -1124,7 +1123,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i32.const 9 i32.ne if @@ -1136,17 +1135,17 @@ unreachable end i32.const 0 - local.set $1 + local.set $0 loop $do-loop|02 - local.get $1 + local.get $0 i32.const 1 i32.add - local.tee $1 + local.tee $0 i32.const 10 i32.ne br_if $do-loop|02 end - local.get $1 + local.get $0 i32.const 10 i32.ne if @@ -1158,17 +1157,17 @@ unreachable end i32.const 0 - local.set $1 + local.set $0 loop $do-loop|03 - local.get $1 + local.get $0 i32.const 1 i32.add - local.tee $1 + local.tee $0 i32.const 10 i32.ne br_if $do-loop|03 end - local.get $1 + local.get $0 i32.const 10 i32.ne if @@ -1180,20 +1179,20 @@ unreachable end i32.const 0 - local.set $1 + local.set $0 loop $do-loop|04 - local.get $1 + local.get $0 i32.const 1 i32.add - local.tee $1 + local.tee $0 i32.const 10 i32.ne i32.const 0 - local.get $1 + local.get $0 select br_if $do-loop|04 end - local.get $1 + local.get $0 i32.const 10 i32.ne if @@ -1205,34 +1204,34 @@ unreachable end i32.const 0 - local.set $1 + local.set $0 i32.const 0 - local.set $3 + local.set $1 loop $do-loop|06 - local.get $1 + local.get $0 i32.const 1 i32.add - local.tee $1 + local.tee $0 i32.const 10 i32.ne if loop $do-loop|18 - local.get $3 + local.get $1 i32.const 1 i32.add - local.tee $3 + local.tee $1 i32.const 10 i32.rem_s i32.const 0 - local.get $3 + local.get $1 select br_if $do-loop|18 end - local.get $1 + local.get $0 br_if $do-loop|06 end end - local.get $1 + local.get $0 i32.const 10 i32.ne if @@ -1243,7 +1242,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i32.const 90 i32.ne if @@ -1287,7 +1286,7 @@ i32.const 1376 global.set $~lib/rt/itcms/fromSpace i32.const 0 - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -1305,25 +1304,25 @@ call $do/Ref#constructor i32.store loop $do-loop|09 - local.get $3 + local.get $1 i32.const 1 i32.add - local.tee $3 + local.tee $1 i32.const 10 i32.eq if i32.const 0 - local.set $1 + local.set $0 else global.get $~lib/memory/__stack_pointer call $do/Ref#constructor - local.tee $1 + local.tee $0 i32.store end - local.get $1 + local.get $0 br_if $do-loop|09 end - local.get $3 + local.get $1 i32.const 10 i32.ne if @@ -1334,7 +1333,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 if i32.const 0 i32.const 1056 @@ -1348,7 +1347,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -1363,26 +1362,26 @@ i32.store local.get $0 call $do/Ref#constructor - local.tee $1 + local.tee $0 i32.store loop $do-loop|07 block $do-break|08 - local.get $3 + local.get $1 i32.const 1 i32.add - local.tee $3 + local.tee $1 i32.const 10 i32.eq if i32.const 0 - local.set $1 + local.set $0 br $do-break|08 end call $do/Ref#constructor br_if $do-loop|07 end end - local.get $3 + local.get $1 i32.const 10 i32.ne if @@ -1393,7 +1392,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 if i32.const 0 i32.const 1056 @@ -1505,7 +1504,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1582,16 +1581,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $0 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1639,7 +1638,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $2 + local.tee $3 i32.const -4 i32.and i32.const 28 @@ -1649,7 +1648,7 @@ i32.ge_u if local.get $0 - local.get $2 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1658,7 +1657,7 @@ local.get $0 i32.const 32 i32.add - local.tee $2 + local.tee $3 local.get $4 i32.const 4 i32.sub @@ -1666,11 +1665,11 @@ i32.or i32.store local.get $1 - local.get $2 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $2 + local.get $3 i32.const -2 i32.and i32.store @@ -1696,26 +1695,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 global.get $~lib/rt/itcms/white - local.get $2 + local.get $1 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1727,7 +1726,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $3 + local.get $2 local.get $0 i32.const 20 i32.add @@ -1747,19 +1746,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1769,22 +1768,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17892 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1798,9 +1797,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1810,23 +1809,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1834,7 +1833,7 @@ else i32.const 1472 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1280 @@ -1844,7 +1843,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1476 @@ -1859,28 +1858,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/empty-exportruntime.optimized.wat b/tests/compiler/empty-exportruntime.optimized.wat index 1c79818c42..0687dde3a8 100644 --- a/tests/compiler/empty-exportruntime.optimized.wat +++ b/tests/compiler/empty-exportruntime.optimized.wat @@ -204,20 +204,20 @@ else i32.const 2 end - local.set $3 + local.set $2 local.get $1 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -312,19 +312,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -349,9 +349,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -359,17 +359,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -657,10 +657,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -672,15 +672,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -710,7 +710,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -746,12 +746,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -769,11 +769,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17984 @@ -781,14 +781,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -798,17 +798,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1288,7 +1288,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1314,32 +1314,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1372,7 +1372,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1380,8 +1380,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1398,7 +1398,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1408,13 +1408,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1430,7 +1430,7 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub local.tee $6 i32.const 16 @@ -1440,23 +1440,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 + local.tee $4 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1486,26 +1486,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1520,7 +1520,7 @@ local.get $2 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1532,7 +1532,7 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1547,12 +1547,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1564,7 +1564,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $2 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1579,25 +1579,25 @@ i32.sub i32.const 3 i32.and - local.tee $2 + local.tee $3 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1607,17 +1607,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1633,22 +1633,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 @@ -1659,11 +1659,11 @@ i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1695,7 +1695,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/rt/itcms/__pin (param $0 i32) (result i32) (local $1 i32) @@ -1759,7 +1759,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $2 i32.load offset=4 i32.const 3 i32.and @@ -1777,33 +1777,33 @@ i32.const 1 i32.eq if - local.get $0 + local.get $2 call $~lib/rt/itcms/Object#makeGray else - local.get $0 + local.get $2 call $~lib/rt/itcms/Object#unlink global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $1 i32.load offset=8 - local.set $1 - local.get $0 - global.get $~lib/rt/itcms/white + local.set $0 local.get $2 + global.get $~lib/rt/itcms/white + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $0 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 + local.get $1 local.get $2 - local.get $0 i32.store offset=8 end ) diff --git a/tests/compiler/empty-new.optimized.wat b/tests/compiler/empty-new.optimized.wat index 5f078233f5..94ad7bec6b 100644 --- a/tests/compiler/empty-new.optimized.wat +++ b/tests/compiler/empty-new.optimized.wat @@ -160,19 +160,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -197,9 +197,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -207,17 +207,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -505,10 +505,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -520,15 +520,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -558,7 +558,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -594,12 +594,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -617,11 +617,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17856 @@ -629,14 +629,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -646,17 +646,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1247,26 +1247,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $2 local.get $0 global.get $~lib/rt/itcms/white - local.get $2 + local.get $1 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1287,19 +1287,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1309,22 +1309,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17852 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1338,9 +1338,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1350,23 +1350,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1374,7 +1374,7 @@ else i32.const 1440 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1248 @@ -1384,7 +1384,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1444 @@ -1399,28 +1399,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/exports.optimized.wat b/tests/compiler/exports.optimized.wat index 3c69f08331..d450a6294d 100644 --- a/tests/compiler/exports.optimized.wat +++ b/tests/compiler/exports.optimized.wat @@ -214,19 +214,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -251,9 +251,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -261,17 +261,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -559,10 +559,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -574,15 +574,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -612,7 +612,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -648,12 +648,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -671,11 +671,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17872 @@ -683,14 +683,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -700,17 +700,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1183,17 +1183,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1202,19 +1202,19 @@ local.get $1 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1240,26 +1240,26 @@ i32.const 4 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $0 i32.load offset=8 - local.set $0 + local.set $2 local.get $1 global.get $~lib/rt/itcms/white - local.get $2 + local.get $0 i32.or i32.store offset=4 local.get $1 - local.get $0 + local.get $2 i32.store offset=8 - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $2 + local.get $0 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1626,19 +1626,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1648,22 +1648,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17868 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1677,9 +1677,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1689,23 +1689,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1713,7 +1713,7 @@ else i32.const 1440 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1248 @@ -1723,7 +1723,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1444 @@ -1738,28 +1738,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/exportstar-rereexport.optimized.wat b/tests/compiler/exportstar-rereexport.optimized.wat index 20d5276ccb..5af6c3056b 100644 --- a/tests/compiler/exportstar-rereexport.optimized.wat +++ b/tests/compiler/exportstar-rereexport.optimized.wat @@ -224,19 +224,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -261,9 +261,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -271,17 +271,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -569,10 +569,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -584,15 +584,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -622,7 +622,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -658,12 +658,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -681,11 +681,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17968 @@ -693,14 +693,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -710,17 +710,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1250,7 +1250,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1327,16 +1327,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $0 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1384,7 +1384,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $2 + local.tee $3 i32.const -4 i32.and i32.const 28 @@ -1394,7 +1394,7 @@ i32.ge_u if local.get $0 - local.get $2 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1403,7 +1403,7 @@ local.get $0 i32.const 32 i32.add - local.tee $2 + local.tee $3 local.get $4 i32.const 4 i32.sub @@ -1411,11 +1411,11 @@ i32.or i32.store local.get $1 - local.get $2 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $2 + local.get $3 i32.const -2 i32.and i32.store @@ -1441,26 +1441,26 @@ i32.const 4 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 global.get $~lib/rt/itcms/white - local.get $2 + local.get $1 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1502,7 +1502,7 @@ i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $2 local.get $0 i32.store local.get $0 @@ -1525,19 +1525,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1547,22 +1547,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17956 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1576,9 +1576,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1588,23 +1588,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1612,7 +1612,7 @@ else i32.const 1536 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1296 @@ -1622,7 +1622,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1540 @@ -1637,28 +1637,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/extends-baseaggregate.optimized.wat b/tests/compiler/extends-baseaggregate.optimized.wat index 7c8d40ab3c..c63a03c99d 100644 --- a/tests/compiler/extends-baseaggregate.optimized.wat +++ b/tests/compiler/extends-baseaggregate.optimized.wat @@ -122,7 +122,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -145,7 +145,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -155,23 +155,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -179,7 +179,7 @@ else i32.const 1696 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1408 @@ -189,7 +189,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 1700 @@ -204,27 +204,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -312,19 +312,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -349,9 +349,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -359,17 +359,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -657,10 +657,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -672,15 +672,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -710,7 +710,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -746,12 +746,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -769,11 +769,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 18160 @@ -781,14 +781,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -798,17 +798,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1286,14 +1286,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1303,17 +1303,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1329,22 +1329,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1355,11 +1355,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1464,7 +1464,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1490,32 +1490,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1531,16 +1531,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1548,7 +1548,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1556,8 +1556,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1574,7 +1574,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -1584,13 +1584,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1603,40 +1603,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -1662,26 +1662,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2156,115 +2156,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2296,43 +2286,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2427,7 +2415,7 @@ i32.const 1 i32.add local.tee $10 - local.tee $1 + local.tee $3 i32.const 1176 i32.load local.tee $7 @@ -2435,7 +2423,7 @@ i32.shr_u i32.gt_u if - local.get $1 + local.get $3 i32.const 268435455 i32.gt_u if @@ -2450,16 +2438,16 @@ local.get $7 i32.const 1 i32.shl - local.tee $2 + local.tee $1 i32.const 1073741820 - local.get $2 + local.get $1 i32.const 1073741820 i32.lt_u select local.tee $2 - local.get $1 + local.get $3 i32.const 8 - local.get $1 + local.get $3 i32.const 8 i32.gt_u select @@ -2471,14 +2459,14 @@ i32.lt_u select local.tee $8 - local.tee $3 + local.tee $4 i32.const 1168 i32.load local.tee $11 local.tee $1 i32.const 20 i32.sub - local.tee $4 + local.tee $3 i32.load i32.const -4 i32.and @@ -2486,24 +2474,24 @@ i32.sub i32.le_u if - local.get $4 local.get $3 + local.get $4 i32.store offset=16 br $__inlined_func$~lib/rt/itcms/__renew end - local.get $3 local.get $4 + local.get $3 i32.load offset=12 call $~lib/rt/itcms/__new local.tee $5 local.set $2 - local.get $3 local.get $4 + local.get $3 i32.load offset=16 - local.tee $4 + local.tee $3 local.get $3 local.get $4 - i32.lt_u + i32.gt_u select local.set $6 block $~lib/util/memory/memmove|inlined.0 @@ -2554,17 +2542,17 @@ i32.sub local.set $6 local.get $2 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $2 local.get $1 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $1 - local.get $3 local.get $4 + local.get $3 i32.load8_u i32.store8 br $while-continue|0 @@ -2599,17 +2587,17 @@ local.get $6 if local.get $2 - local.tee $3 + local.tee $4 i32.const 1 i32.add local.set $2 local.get $1 - local.tee $4 + local.tee $3 i32.const 1 i32.add local.set $1 - local.get $3 local.get $4 + local.get $3 i32.load8_u i32.store8 local.get $6 diff --git a/tests/compiler/extends-recursive.optimized.wat b/tests/compiler/extends-recursive.optimized.wat index 8adb6b7bf9..bef86b226c 100644 --- a/tests/compiler/extends-recursive.optimized.wat +++ b/tests/compiler/extends-recursive.optimized.wat @@ -111,7 +111,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -134,7 +134,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -144,23 +144,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -168,7 +168,7 @@ else i32.const 1440 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1248 @@ -178,7 +178,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 1444 @@ -193,27 +193,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -301,19 +301,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -338,9 +338,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -348,17 +348,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -646,10 +646,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -661,15 +661,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -699,7 +699,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -735,12 +735,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -758,11 +758,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17872 @@ -770,14 +770,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -787,17 +787,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1270,17 +1270,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1289,19 +1289,19 @@ local.get $1 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1327,26 +1327,26 @@ i32.const 4 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $0 i32.load offset=8 - local.set $0 + local.set $2 local.get $1 global.get $~lib/rt/itcms/white - local.get $2 + local.get $0 i32.or i32.store offset=4 local.get $1 - local.get $0 + local.get $2 i32.store offset=8 - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $2 + local.get $0 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1599,8 +1599,8 @@ i32.store end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/features/simd.optimized.wat b/tests/compiler/features/simd.optimized.wat index f00de0af49..4db18e2d61 100644 --- a/tests/compiler/features/simd.optimized.wat +++ b/tests/compiler/features/simd.optimized.wat @@ -101,19 +101,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -138,9 +138,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -148,17 +148,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -446,10 +446,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -461,15 +461,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -499,7 +499,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -535,12 +535,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -558,11 +558,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17616 @@ -570,14 +570,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -587,17 +587,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -749,7 +749,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $1 local.get $0 i32.const 1073741820 i32.gt_u @@ -775,34 +775,34 @@ i32.const 4 i32.sub end - local.tee $0 + local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if memory.size - local.tee $1 - local.get $0 + local.tee $0 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $0 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $0 + local.get $3 i32.add else - local.get $0 + local.get $3 end i32.const 4 - local.get $2 - i32.load offset=1568 local.get $1 + i32.load offset=1568 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -816,16 +816,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $1 - local.get $3 + local.tee $2 + local.get $0 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -833,18 +833,18 @@ unreachable end end - local.get $2 local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 - local.get $0 + local.get $1 + local.get $3 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -855,11 +855,11 @@ unreachable end end - local.get $1 + local.get $0 i32.load i32.const -4 i32.and - local.get $0 + local.get $3 i32.lt_u if i32.const 0 @@ -869,13 +869,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $1 - i32.load - local.set $3 local.get $0 + i32.load + local.set $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -888,59 +888,59 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const -4 i32.and - local.get $0 + local.get $3 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.const 2 i32.and - local.get $0 + local.get $3 i32.or i32.store + local.get $3 local.get $0 - local.get $1 i32.const 4 i32.add i32.add - local.tee $0 - local.get $4 + local.tee $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 - local.get $0 - call $~lib/rt/tlsf/insertBlock - else local.get $1 local.get $3 + call $~lib/rt/tlsf/insertBlock + else + local.get $0 + local.get $4 i32.const -2 i32.and i32.store - local.get $1 + local.get $0 i32.const 4 i32.add - local.get $1 + local.get $0 i32.load i32.const -4 i32.and i32.add - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.load i32.const -3 i32.and i32.store end - local.get $1 + local.get $0 i32.const 4 i32.add ) diff --git a/tests/compiler/field-initialization.optimized.wat b/tests/compiler/field-initialization.optimized.wat index e2354c20c5..6bd313f01c 100644 --- a/tests/compiler/field-initialization.optimized.wat +++ b/tests/compiler/field-initialization.optimized.wat @@ -129,7 +129,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -152,7 +152,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -162,23 +162,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -186,7 +186,7 @@ else i32.const 1792 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1248 @@ -196,7 +196,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 1796 @@ -211,27 +211,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -319,19 +319,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -356,9 +356,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -366,17 +366,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -664,10 +664,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -679,15 +679,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -717,7 +717,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -753,12 +753,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -776,11 +776,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 18384 @@ -788,14 +788,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -805,17 +805,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1293,14 +1293,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1310,17 +1310,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1336,22 +1336,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1362,11 +1362,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1471,7 +1471,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1497,32 +1497,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1538,16 +1538,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1555,7 +1555,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1563,8 +1563,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1581,7 +1581,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -1591,13 +1591,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1610,40 +1610,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -1669,26 +1669,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1798,14 +1798,14 @@ if local.get $2 i32.load16_u - local.tee $3 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $3 i32.ne if - local.get $3 local.get $4 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2082,12 +2082,12 @@ i32.store local.get $0 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if local.get $0 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end global.get $~lib/memory/__stack_pointer @@ -2129,12 +2129,12 @@ i32.store local.get $0 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if local.get $0 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end global.get $~lib/memory/__stack_pointer @@ -2339,12 +2339,12 @@ i32.store local.get $0 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if local.get $0 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end global.get $~lib/memory/__stack_pointer @@ -2389,12 +2389,12 @@ i32.store local.get $0 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if local.get $0 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end global.get $~lib/memory/__stack_pointer @@ -2428,21 +2428,21 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 4 i32.const 13 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 local.get $0 i32.store local.get $0 if - local.get $1 + local.get $2 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -2450,9 +2450,9 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.load local.get $0 i32.ne @@ -2525,12 +2525,12 @@ i32.store local.get $0 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if local.get $0 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end global.get $~lib/memory/__stack_pointer @@ -2575,12 +2575,12 @@ i32.store local.get $0 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if local.get $0 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end global.get $~lib/memory/__stack_pointer @@ -2685,21 +2685,21 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 call $field-initialization/SomeObject#constructor - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=4 - local.get $1 local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.load if i32.const 0 @@ -2710,7 +2710,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 local.tee $0 i32.store offset=8 @@ -2727,21 +2727,21 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 call $field-initialization/SomeObject#constructor - local.tee $0 + local.tee $1 i32.store offset=12 - local.get $0 + local.get $1 i32.const 1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=4 - local.get $1 local.get $0 + local.get $1 i32.store offset=16 - local.get $0 + local.get $1 i32.load i32.const 1 i32.ne @@ -2754,7 +2754,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 local.tee $0 i32.store offset=8 @@ -2771,24 +2771,24 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 call $field-initialization/SomeObject#constructor - local.tee $0 + local.tee $1 i32.store offset=20 - local.get $0 + local.get $1 i32.const 1648 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1648 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $0 + local.get $1 i32.const 0 i32.store - local.get $1 local.get $0 + local.get $1 i32.store offset=24 - local.get $0 + local.get $1 i32.load if i32.const 0 @@ -2799,15 +2799,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.load offset=4 local.tee $0 - i32.store offset=8 local.get $1 + i32.load offset=4 + local.tee $1 + i32.store offset=8 + local.get $0 i32.const 1648 i32.store offset=28 - local.get $0 + local.get $1 i32.const 1648 call $~lib/string/String.__eq i32.eqz @@ -2820,24 +2820,24 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 call $field-initialization/SomeObject#constructor - local.tee $0 + local.tee $1 i32.store offset=32 - local.get $0 + local.get $1 i32.const 2 i32.store - local.get $0 + local.get $1 i32.const 1680 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1680 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $1 local.get $0 + local.get $1 i32.store offset=36 - local.get $0 + local.get $1 i32.load i32.const 2 i32.ne @@ -2850,15 +2850,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.load offset=4 local.tee $0 - i32.store offset=8 local.get $1 + i32.load offset=4 + local.tee $1 + i32.store offset=8 + local.get $0 i32.const 1680 i32.store offset=28 - local.get $0 + local.get $1 i32.const 1680 call $~lib/string/String.__eq i32.eqz @@ -2871,26 +2871,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - call $field-initialization/SomeOtherObject#constructor local.tee $0 + call $field-initialization/SomeOtherObject#constructor + local.tee $1 i32.store offset=36 - local.get $0 + local.get $1 i32.const 1712 i32.store offset=8 - local.get $0 + local.get $1 i32.const 1712 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $0 + local.get $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=4 - local.get $1 local.get $0 + local.get $1 i32.store offset=24 - local.get $0 + local.get $1 i32.load if i32.const 0 @@ -2901,11 +2901,11 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 - local.tee $1 + local.tee $0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -2918,15 +2918,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.load offset=8 local.tee $0 - i32.store offset=8 local.get $1 + i32.load offset=8 + local.tee $1 + i32.store offset=8 + local.get $0 i32.const 1712 i32.store offset=28 - local.get $0 + local.get $1 i32.const 1712 call $~lib/string/String.__eq i32.eqz @@ -2939,29 +2939,29 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - call $field-initialization/SomeOtherObject#constructor local.tee $0 + call $field-initialization/SomeOtherObject#constructor + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 3 i32.store - local.get $0 + local.get $1 i32.const 1744 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1744 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $0 + local.get $1 i32.const 1776 i32.store offset=8 - local.get $0 + local.get $1 i32.const 1776 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $1 local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.load i32.const 3 i32.ne @@ -2974,12 +2974,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load offset=4 local.tee $2 i32.store offset=8 - local.get $1 + local.get $0 i32.const 1744 i32.store offset=28 local.get $2 @@ -2995,15 +2995,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.load offset=8 local.tee $0 - i32.store offset=8 local.get $1 + i32.load offset=8 + local.tee $1 + i32.store offset=8 + local.get $0 i32.const 1776 i32.store offset=28 - local.get $0 + local.get $1 i32.const 1776 call $~lib/string/String.__eq i32.eqz @@ -3040,12 +3040,12 @@ i32.store local.get $0 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if local.get $0 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end global.get $~lib/memory/__stack_pointer @@ -3075,12 +3075,12 @@ i32.store offset=24 local.get $0 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if local.get $0 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -3109,12 +3109,12 @@ i32.store local.get $0 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if local.get $0 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 diff --git a/tests/compiler/field.optimized.wat b/tests/compiler/field.optimized.wat index e7c21802fa..9e2efdc85a 100644 --- a/tests/compiler/field.optimized.wat +++ b/tests/compiler/field.optimized.wat @@ -107,7 +107,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -130,7 +130,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -140,23 +140,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -164,7 +164,7 @@ else i32.const 1472 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1248 @@ -174,7 +174,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 1476 @@ -189,27 +189,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -297,19 +297,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -334,9 +334,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -344,17 +344,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -642,10 +642,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -657,15 +657,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -695,7 +695,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -731,12 +731,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -754,11 +754,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17920 @@ -766,14 +766,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -783,17 +783,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1273,7 +1273,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1299,32 +1299,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1357,7 +1357,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1365,8 +1365,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1383,7 +1383,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1393,13 +1393,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1415,7 +1415,7 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub local.tee $6 i32.const 16 @@ -1425,23 +1425,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 + local.tee $4 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1471,26 +1471,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1505,7 +1505,7 @@ local.get $2 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1517,7 +1517,7 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1532,12 +1532,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1549,7 +1549,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $2 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1564,25 +1564,25 @@ i32.sub i32.const 3 i32.and - local.tee $2 + local.tee $3 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1592,17 +1592,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1618,22 +1618,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 @@ -1644,11 +1644,11 @@ i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1680,7 +1680,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/util/memory/memcpy (param $0 i32) (local $1 i32) @@ -1695,27 +1695,27 @@ i32.const 3 i32.and i32.const 0 - local.get $5 + local.get $4 select if local.get $0 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $5 + local.get $4 i32.const 1 i32.sub - local.set $5 + local.set $4 br $while-continue|0 end end @@ -1725,7 +1725,7 @@ i32.eqz if loop $while-continue|1 - local.get $5 + local.get $4 i32.const 16 i32.ge_u if @@ -1753,14 +1753,14 @@ i32.const 16 i32.add local.set $0 - local.get $5 + local.get $4 i32.const 16 i32.sub - local.set $5 + local.set $4 br $while-continue|1 end end - local.get $5 + local.get $4 i32.const 8 i32.and if @@ -1781,7 +1781,7 @@ i32.add local.set $0 end - local.get $5 + local.get $4 i32.const 4 i32.and if @@ -1798,7 +1798,7 @@ i32.add local.set $0 end - local.get $5 + local.get $4 i32.const 2 i32.and if @@ -1815,7 +1815,7 @@ i32.add local.set $0 end - local.get $5 + local.get $4 i32.const 1 i32.and if @@ -1826,7 +1826,7 @@ end return end - local.get $5 + local.get $4 i32.const 32 i32.ge_u if @@ -1843,7 +1843,7 @@ end local.get $1 i32.load - local.set $4 + local.set $5 local.get $0 local.get $1 i32.load8_u @@ -1855,27 +1855,27 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $5 + local.get $4 i32.const 3 i32.sub - local.set $5 + local.set $4 loop $while-continue|3 - local.get $5 + local.get $4 i32.const 17 i32.ge_u if @@ -1885,7 +1885,7 @@ local.tee $2 i32.const 8 i32.shl - local.get $4 + local.get $5 i32.const 24 i32.shr_u i32.or @@ -1915,7 +1915,7 @@ local.get $0 local.get $1 i32.load offset=13 - local.tee $4 + local.tee $5 i32.const 8 i32.shl local.get $2 @@ -1931,10 +1931,10 @@ i32.const 16 i32.add local.set $0 - local.get $5 + local.get $4 i32.const 16 i32.sub - local.set $5 + local.set $4 br $while-continue|3 end end @@ -1942,31 +1942,31 @@ end local.get $1 i32.load - local.set $4 + local.set $5 local.get $0 local.get $1 i32.load8_u i32.store8 local.get $0 - local.tee $3 + local.tee $2 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $2 + local.tee $3 i32.const 2 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $5 + local.get $4 i32.const 2 i32.sub - local.set $5 + local.set $4 loop $while-continue|4 - local.get $5 + local.get $4 i32.const 18 i32.ge_u if @@ -1976,7 +1976,7 @@ local.tee $2 i32.const 16 i32.shl - local.get $4 + local.get $5 i32.const 16 i32.shr_u i32.or @@ -2006,7 +2006,7 @@ local.get $0 local.get $1 i32.load offset=14 - local.tee $4 + local.tee $5 i32.const 16 i32.shl local.get $2 @@ -2022,10 +2022,10 @@ i32.const 16 i32.add local.set $0 - local.get $5 + local.get $4 i32.const 16 i32.sub - local.set $5 + local.set $4 br $while-continue|4 end end @@ -2033,27 +2033,27 @@ end local.get $1 i32.load - local.set $4 + local.set $5 local.get $0 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $5 + local.get $4 i32.const 1 i32.sub - local.set $5 + local.set $4 loop $while-continue|5 - local.get $5 + local.get $4 i32.const 19 i32.ge_u if @@ -2063,7 +2063,7 @@ local.tee $2 i32.const 24 i32.shl - local.get $4 + local.get $5 i32.const 8 i32.shr_u i32.or @@ -2093,7 +2093,7 @@ local.get $0 local.get $1 i32.load offset=15 - local.tee $4 + local.tee $5 i32.const 24 i32.shl local.get $2 @@ -2109,16 +2109,16 @@ i32.const 16 i32.add local.set $0 - local.get $5 + local.get $4 i32.const 16 i32.sub - local.set $5 + local.set $4 br $while-continue|5 end end end end - local.get $5 + local.get $4 i32.const 16 i32.and if @@ -2129,141 +2129,129 @@ local.get $0 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add - local.set $2 + local.set $3 local.get $0 local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $2 i32.const 2 i32.add - local.set $3 - local.get $2 - local.tee $0 + local.set $0 + local.get $3 i32.const 2 i32.add - local.set $2 - local.get $1 - local.get $0 + local.set $1 + local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - local.get $2 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $2 - local.tee $0 + local.get $0 i32.const 2 i32.add local.set $2 local.get $1 + i32.const 2 + i32.add + local.set $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $2 i32.const 2 i32.add - local.set $3 - local.get $2 - local.tee $0 + local.set $0 + local.get $3 i32.const 2 i32.add - local.set $2 - local.get $1 - local.get $0 + local.set $1 + local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - local.get $2 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $2 - local.tee $0 + local.get $0 i32.const 2 i32.add local.set $2 local.get $1 + i32.const 2 + i32.add + local.set $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $2 i32.const 2 i32.add - local.set $3 - local.get $2 - local.tee $0 + local.set $0 + local.get $3 i32.const 2 i32.add - local.set $2 - local.get $1 - local.get $0 + local.set $1 + local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - local.get $2 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $2 - local.tee $0 + local.get $0 i32.const 2 i32.add local.set $2 local.get $1 + i32.const 2 + i32.add + local.set $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $0 - local.get $2 + local.get $3 i32.const 2 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $5 + local.get $4 i32.const 8 i32.and if @@ -2274,69 +2262,65 @@ local.get $0 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add - local.set $2 + local.set $3 local.get $0 local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $2 i32.const 2 i32.add - local.set $3 - local.get $2 - local.tee $0 + local.set $0 + local.get $3 i32.const 2 i32.add - local.set $2 - local.get $1 - local.get $0 + local.set $1 + local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - local.get $2 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $2 - local.tee $0 + local.get $0 i32.const 2 i32.add local.set $2 local.get $1 + i32.const 2 + i32.add + local.set $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $0 - local.get $2 + local.get $3 i32.const 2 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $5 + local.get $4 i32.const 4 i32.and if @@ -2347,33 +2331,33 @@ local.get $0 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add - local.set $2 + local.set $3 local.get $0 local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $0 - local.get $2 + local.get $3 i32.const 2 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $5 + local.get $4 i32.const 2 i32.and if @@ -2382,21 +2366,21 @@ i32.load8_u i32.store8 local.get $0 - local.tee $3 + local.tee $2 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $2 + local.tee $3 i32.const 2 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $5 + local.get $4 i32.const 1 i32.and if @@ -2461,35 +2445,35 @@ i32.const 0 i32.store i32.const 1456 - local.set $0 + local.set $1 block $~lib/util/memory/memmove|inlined.0 i32.const 0 i32.const 0 call $~lib/rt/itcms/__new local.tee $4 - local.tee $1 + local.tee $0 i32.const 1456 i32.eq br_if $~lib/util/memory/memmove|inlined.0 - local.get $1 + local.get $0 i32.const 1456 i32.eq if - local.get $1 + local.get $0 call $~lib/util/memory/memcpy br $~lib/util/memory/memmove|inlined.0 end - local.get $1 + local.get $0 i32.const 1456 i32.lt_u if - local.get $1 + local.get $0 i32.const 7 i32.and i32.eqz if loop $while-continue|0 - local.get $1 + local.get $0 i32.const 7 i32.and if @@ -2500,18 +2484,18 @@ i32.const 1 i32.sub local.set $8 - local.get $1 - local.tee $3 - i32.const 1 - i32.add - local.set $1 local.get $0 local.tee $2 i32.const 1 i32.add local.set $0 - local.get $3 + local.get $1 + local.tee $3 + i32.const 1 + i32.add + local.set $1 local.get $2 + local.get $3 i32.load8_u i32.store8 br $while-continue|0 @@ -2522,22 +2506,22 @@ i32.const 8 i32.ge_u if - local.get $1 local.get $0 + local.get $1 i64.load i64.store local.get $8 i32.const 8 i32.sub local.set $8 - local.get $1 - i32.const 8 - i32.add - local.set $1 local.get $0 i32.const 8 i32.add local.set $0 + local.get $1 + i32.const 8 + i32.add + local.set $1 br $while-continue|1 end end @@ -2545,18 +2529,18 @@ loop $while-continue|2 local.get $8 if - local.get $1 - local.tee $3 - i32.const 1 - i32.add - local.set $1 local.get $0 local.tee $2 i32.const 1 i32.add local.set $0 - local.get $3 + local.get $1 + local.tee $3 + i32.const 1 + i32.add + local.set $1 local.get $2 + local.get $3 i32.load8_u i32.store8 local.get $8 @@ -2567,13 +2551,13 @@ end end else - local.get $1 + local.get $0 i32.const 7 i32.and i32.eqz if loop $while-continue|3 - local.get $1 + local.get $0 local.get $8 i32.add i32.const 7 @@ -2582,7 +2566,7 @@ local.get $8 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $1 + local.get $0 local.get $8 i32.const 1 i32.sub @@ -2601,7 +2585,7 @@ i32.const 8 i32.ge_u if - local.get $1 + local.get $0 local.get $8 i32.const 8 i32.sub @@ -2619,7 +2603,7 @@ loop $while-continue|5 local.get $8 if - local.get $1 + local.get $0 local.get $8 i32.const 1 i32.sub @@ -2641,12 +2625,12 @@ i32.const 16 i32.const 4 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 local.get $4 i32.store local.get $4 if - local.get $2 + local.get $0 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white @@ -2659,13 +2643,13 @@ i32.and i32.eq if - local.get $2 + local.get $0 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $2 global.get $~lib/rt/itcms/white i32.eqz i32.eq @@ -2676,7 +2660,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $2 i32.const 3 i32.eq i32.and @@ -2687,13 +2671,13 @@ end end end - local.get $2 + local.get $0 local.get $4 i32.store offset=4 - local.get $2 + local.get $0 i32.const 0 i32.store offset=8 - local.get $2 + local.get $0 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -2701,18 +2685,18 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $5 - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 if local.get $5 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white - local.get $2 + local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and @@ -2724,23 +2708,23 @@ i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $1 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $1 + local.get $0 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $1 i32.const 3 i32.eq i32.and if - local.get $1 + local.get $0 call $~lib/rt/itcms/Object#makeGray end end @@ -2802,19 +2786,19 @@ i32.const 2 i32.shl i32.add - local.set $3 + local.set $0 loop $while-continue|0 + local.get $0 local.get $2 - local.get $3 - i32.lt_u + i32.gt_u if local.get $2 i32.load - local.tee $0 + local.tee $3 if - local.get $0 + local.get $3 if - local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end diff --git a/tests/compiler/for.optimized.wat b/tests/compiler/for.optimized.wat index 7f8f1917e4..9f124c1092 100644 --- a/tests/compiler/for.optimized.wat +++ b/tests/compiler/for.optimized.wat @@ -164,19 +164,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -201,9 +201,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -211,17 +211,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -509,10 +509,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -524,15 +524,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -562,7 +562,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -598,12 +598,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -621,11 +621,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17904 @@ -633,14 +633,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -650,17 +650,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1500,7 +1500,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1577,16 +1577,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $0 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1634,7 +1634,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $2 + local.tee $3 i32.const -4 i32.and i32.const 28 @@ -1644,7 +1644,7 @@ i32.ge_u if local.get $0 - local.get $2 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1653,7 +1653,7 @@ local.get $0 i32.const 32 i32.add - local.tee $2 + local.tee $3 local.get $4 i32.const 4 i32.sub @@ -1661,11 +1661,11 @@ i32.or i32.store local.get $1 - local.get $2 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $2 + local.get $3 i32.const -2 i32.and i32.store @@ -1691,26 +1691,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 global.get $~lib/rt/itcms/white - local.get $2 + local.get $1 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1722,7 +1722,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $3 + local.get $2 local.get $0 i32.const 20 i32.add @@ -1742,19 +1742,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1764,22 +1764,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17892 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1793,9 +1793,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1805,23 +1805,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1829,7 +1829,7 @@ else i32.const 1472 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1280 @@ -1839,7 +1839,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1476 @@ -1854,28 +1854,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/function-call.optimized.wat b/tests/compiler/function-call.optimized.wat index 4f181a9c0e..513af5e95a 100644 --- a/tests/compiler/function-call.optimized.wat +++ b/tests/compiler/function-call.optimized.wat @@ -205,19 +205,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -242,9 +242,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -252,17 +252,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -550,10 +550,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -565,15 +565,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -603,7 +603,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -639,12 +639,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -662,11 +662,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 18224 @@ -674,14 +674,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -691,17 +691,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1196,7 +1196,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1273,16 +1273,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $0 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1330,7 +1330,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $2 + local.tee $3 i32.const -4 i32.and i32.const 28 @@ -1340,7 +1340,7 @@ i32.ge_u if local.get $0 - local.get $2 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1349,7 +1349,7 @@ local.get $0 i32.const 32 i32.add - local.tee $2 + local.tee $3 local.get $4 i32.const 4 i32.sub @@ -1357,11 +1357,11 @@ i32.or i32.store local.get $1 - local.get $2 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $2 + local.get $3 i32.const -2 i32.and i32.store @@ -1387,26 +1387,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 global.get $~lib/rt/itcms/white - local.get $2 + local.get $1 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1418,7 +1418,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $3 + local.get $2 local.get $0 i32.const 20 i32.add @@ -1493,19 +1493,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1515,22 +1515,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18220 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1544,9 +1544,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1556,23 +1556,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1580,7 +1580,7 @@ else i32.const 1760 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1472 @@ -1590,7 +1590,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1764 @@ -1605,28 +1605,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/function-expression.optimized.wat b/tests/compiler/function-expression.optimized.wat index f62ea355b2..b5a1e92e0f 100644 --- a/tests/compiler/function-expression.optimized.wat +++ b/tests/compiler/function-expression.optimized.wat @@ -175,7 +175,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -198,7 +198,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -208,23 +208,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -232,7 +232,7 @@ else i32.const 2112 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1792 @@ -242,7 +242,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 2116 @@ -257,27 +257,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -365,19 +365,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -402,9 +402,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -412,17 +412,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -710,10 +710,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -725,15 +725,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -763,7 +763,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -799,12 +799,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -822,11 +822,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 18592 @@ -834,14 +834,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -851,17 +851,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1288,16 +1288,16 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 2032 i32.store - local.get $2 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -1306,7 +1306,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1360,7 +1360,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1368,7 +1368,7 @@ memory.size local.tee $0 i32.const 4 - local.get $1 + local.get $2 i32.load offset=1568 local.get $0 i32.const 16 @@ -1383,16 +1383,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $4 local.get $0 - local.get $3 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1400,7 +1400,7 @@ unreachable end end - local.get $1 + local.get $2 local.get $0 i32.const 16 i32.shl @@ -1408,7 +1408,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1435,12 +1435,12 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 @@ -1450,7 +1450,7 @@ i32.ge_u if local.get $0 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1459,19 +1459,19 @@ local.get $0 i32.const 32 i32.add - local.tee $3 + local.tee $4 local.get $5 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 - local.get $3 + local.get $2 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1483,8 +1483,8 @@ i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.load i32.const -3 i32.and @@ -1497,26 +1497,26 @@ i32.const 4 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $2 i32.load offset=8 - local.set $1 + local.set $4 local.get $0 global.get $~lib/rt/itcms/white - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $4 i32.store offset=8 - local.get $1 - local.get $1 + local.get $4 + local.get $4 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $3 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1537,7 +1537,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1548,17 +1548,17 @@ local.get $0 i32.const 0 i32.store8 offset=2 - local.get $1 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $2 i32.const 3 i32.sub i32.const 0 i32.store8 - local.get $4 + local.get $3 local.get $0 i32.store local.get $0 @@ -1587,7 +1587,7 @@ i32.load offset=4 i32.const 3 i32.and - local.tee $1 + local.tee $2 global.get $~lib/rt/itcms/white i32.eqz i32.eq @@ -1598,7 +1598,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $1 + local.get $2 i32.const 3 i32.eq i32.and @@ -1612,7 +1612,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer diff --git a/tests/compiler/getter-call.optimized.wat b/tests/compiler/getter-call.optimized.wat index 84c7a62ba2..96b2f6e2bf 100644 --- a/tests/compiler/getter-call.optimized.wat +++ b/tests/compiler/getter-call.optimized.wat @@ -167,19 +167,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -204,9 +204,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -214,17 +214,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -512,10 +512,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -527,15 +527,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -565,7 +565,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -601,12 +601,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -624,11 +624,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17904 @@ -636,14 +636,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -653,17 +653,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1108,7 +1108,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1185,16 +1185,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $4 local.get $0 - local.get $3 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1242,7 +1242,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 @@ -1252,7 +1252,7 @@ i32.ge_u if local.get $0 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1261,7 +1261,7 @@ local.get $0 i32.const 32 i32.add - local.tee $3 + local.tee $4 local.get $5 i32.const 4 i32.sub @@ -1269,11 +1269,11 @@ i32.or i32.store local.get $1 - local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1299,26 +1299,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $4 local.get $0 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $4 i32.store offset=8 - local.get $1 - local.get $1 + local.get $4 + local.get $4 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1330,7 +1330,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $4 + local.get $3 local.get $0 i32.const 20 i32.add @@ -1367,19 +1367,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1389,22 +1389,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17900 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1418,9 +1418,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1430,23 +1430,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1454,7 +1454,7 @@ else i32.const 1472 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1248 @@ -1464,7 +1464,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1476 @@ -1479,28 +1479,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/heap.optimized.wat b/tests/compiler/heap.optimized.wat index 0bb800d02b..2bf2e3abb5 100644 --- a/tests/compiler/heap.optimized.wat +++ b/tests/compiler/heap.optimized.wat @@ -109,19 +109,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -146,9 +146,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -156,17 +156,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -454,10 +454,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -469,15 +469,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -507,7 +507,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -543,12 +543,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -566,11 +566,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17664 @@ -578,14 +578,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -595,17 +595,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -851,34 +851,34 @@ local.get $0 local.get $1 call $~lib/rt/tlsf/prepareSize - local.tee $1 - call $~lib/rt/tlsf/searchBlock local.tee $2 + call $~lib/rt/tlsf/searchBlock + local.tee $1 i32.eqz if memory.size - local.tee $2 - local.get $1 + local.tee $1 + local.get $2 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $1 + local.get $2 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $1 + local.get $2 i32.add else - local.get $1 + local.get $2 end i32.const 4 local.get $0 i32.load offset=1568 - local.get $2 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -893,7 +893,7 @@ i32.const 16 i32.shr_u local.tee $3 - local.get $2 + local.get $1 local.get $3 i32.gt_s select @@ -910,7 +910,7 @@ end end local.get $0 - local.get $2 + local.get $1 i32.const 16 i32.shl memory.size @@ -918,9 +918,9 @@ i32.shl call $~lib/rt/tlsf/addMemory local.get $0 - local.get $1 + local.get $2 call $~lib/rt/tlsf/searchBlock - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -931,11 +931,11 @@ unreachable end end - local.get $2 + local.get $1 i32.load i32.const -4 i32.and - local.get $1 + local.get $2 i32.lt_u if i32.const 0 @@ -946,13 +946,13 @@ unreachable end local.get $0 - local.get $2 + local.get $1 call $~lib/rt/tlsf/removeBlock local.get $0 - local.get $2 local.get $1 - call $~lib/rt/tlsf/prepareBlock local.get $2 + call $~lib/rt/tlsf/prepareBlock + local.get $1 ) (func $~lib/memory/heap.alloc (param $0 i32) (result i32) global.get $~lib/rt/tlsf/ROOT @@ -1451,115 +1451,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -1591,43 +1581,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -1713,7 +1701,7 @@ local.get $0 local.get $2 call $~lib/rt/tlsf/allocateBlock - local.tee $6 + local.tee $7 i32.const 4 i32.add local.set $2 @@ -1721,7 +1709,7 @@ i32.load i32.const -4 i32.and - local.set $7 + local.set $6 block $~lib/util/memory/memmove|inlined.0 local.get $2 local.get $1 @@ -1733,10 +1721,10 @@ local.get $3 local.get $2 i32.sub - local.get $7 + local.get $6 i32.sub i32.const 0 - local.get $7 + local.get $6 i32.const 1 i32.shl i32.sub @@ -1744,7 +1732,7 @@ if local.get $2 local.get $3 - local.get $7 + local.get $6 call $~lib/util/memory/memcpy br $~lib/util/memory/memmove|inlined.0 end @@ -1765,32 +1753,32 @@ i32.const 7 i32.and if - local.get $7 + local.get $6 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $7 + local.get $6 i32.const 1 i32.sub - local.set $7 + local.set $6 local.get $2 - local.tee $5 + local.tee $4 i32.const 1 i32.add local.set $2 local.get $3 - local.tee $4 + local.tee $5 i32.const 1 i32.add local.set $3 - local.get $5 local.get $4 + local.get $5 i32.load8_u i32.store8 br $while-continue|0 end end loop $while-continue|1 - local.get $7 + local.get $6 i32.const 8 i32.ge_u if @@ -1798,10 +1786,10 @@ local.get $3 i64.load i64.store - local.get $7 + local.get $6 i32.const 8 i32.sub - local.set $7 + local.set $6 local.get $2 i32.const 8 i32.add @@ -1815,26 +1803,26 @@ end end loop $while-continue|2 - local.get $7 + local.get $6 if local.get $2 - local.tee $5 + local.tee $4 i32.const 1 i32.add local.set $2 local.get $3 - local.tee $4 + local.tee $5 i32.const 1 i32.add local.set $3 - local.get $5 local.get $4 + local.get $5 i32.load8_u i32.store8 - local.get $7 + local.get $6 i32.const 1 i32.sub - local.set $7 + local.set $6 br $while-continue|2 end end @@ -1849,22 +1837,22 @@ if loop $while-continue|3 local.get $2 - local.get $7 + local.get $6 i32.add i32.const 7 i32.and if - local.get $7 + local.get $6 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 local.get $2 - local.get $7 + local.get $6 i32.const 1 i32.sub - local.tee $7 + local.tee $6 i32.add local.get $3 - local.get $7 + local.get $6 i32.add i32.load8_u i32.store8 @@ -1872,18 +1860,18 @@ end end loop $while-continue|4 - local.get $7 + local.get $6 i32.const 8 i32.ge_u if local.get $2 - local.get $7 + local.get $6 i32.const 8 i32.sub - local.tee $7 + local.tee $6 i32.add local.get $3 - local.get $7 + local.get $6 i32.add i64.load i64.store @@ -1892,16 +1880,16 @@ end end loop $while-continue|5 - local.get $7 + local.get $6 if local.get $2 - local.get $7 + local.get $6 i32.const 1 i32.sub - local.tee $7 + local.tee $6 i32.add local.get $3 - local.get $7 + local.get $6 i32.add i32.load8_u i32.store8 @@ -1924,7 +1912,7 @@ local.get $1 call $~lib/rt/tlsf/insertBlock end - local.get $6 + local.get $7 ) (func $~lib/memory/heap.realloc (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -1957,13 +1945,13 @@ block $folding-inner0 local.get $1 call $~lib/rt/tlsf/prepareSize - local.tee $3 + local.tee $6 local.get $0 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and - local.tee $5 + local.tee $7 i32.le_u br_if $folding-inner0 local.get $0 @@ -1974,17 +1962,17 @@ i32.const -4 i32.and i32.add - local.tee $6 + local.tee $4 i32.load - local.tee $7 + local.tee $5 i32.const 1 i32.and if - local.get $3 - local.get $5 + local.get $6 + local.get $7 i32.const 4 i32.add - local.get $7 + local.get $5 i32.const -4 i32.and i32.add @@ -1992,11 +1980,11 @@ i32.le_u if local.get $2 - local.get $6 + local.get $4 call $~lib/rt/tlsf/removeBlock local.get $0 local.get $5 - local.get $4 + local.get $3 i32.const 3 i32.and i32.or @@ -2012,7 +2000,7 @@ end local.get $2 local.get $0 - local.get $3 + local.get $6 call $~lib/rt/tlsf/prepareBlock local.get $0 end diff --git a/tests/compiler/implicit-getter-setter.optimized.wat b/tests/compiler/implicit-getter-setter.optimized.wat index 4f20075881..8944071924 100644 --- a/tests/compiler/implicit-getter-setter.optimized.wat +++ b/tests/compiler/implicit-getter-setter.optimized.wat @@ -117,7 +117,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -140,7 +140,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -150,23 +150,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -174,7 +174,7 @@ else i32.const 1440 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1248 @@ -184,7 +184,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 1444 @@ -199,27 +199,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -307,19 +307,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -344,9 +344,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -354,17 +354,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -652,10 +652,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -667,15 +667,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -705,7 +705,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -741,12 +741,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -764,11 +764,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17872 @@ -776,14 +776,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -793,17 +793,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1276,17 +1276,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1295,19 +1295,19 @@ local.get $1 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1333,26 +1333,26 @@ i32.const 4 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $0 i32.load offset=8 - local.set $0 + local.set $2 local.get $1 global.get $~lib/rt/itcms/white - local.get $2 + local.get $0 i32.or i32.store offset=4 local.get $1 - local.get $0 + local.get $2 i32.store offset=8 - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $2 + local.get $0 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total diff --git a/tests/compiler/infer-array.optimized.wat b/tests/compiler/infer-array.optimized.wat index 1d9c3e02dc..afa647c89b 100644 --- a/tests/compiler/infer-array.optimized.wat +++ b/tests/compiler/infer-array.optimized.wat @@ -143,7 +143,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -166,7 +166,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -176,23 +176,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -200,7 +200,7 @@ else i32.const 2112 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1280 @@ -210,7 +210,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 2116 @@ -225,27 +225,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -333,19 +333,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -370,9 +370,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -380,17 +380,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -678,10 +678,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -693,15 +693,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -731,7 +731,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -767,12 +767,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -790,11 +790,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 18608 @@ -802,14 +802,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -819,17 +819,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1309,7 +1309,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1335,32 +1335,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1393,7 +1393,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1401,8 +1401,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1419,7 +1419,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1429,13 +1429,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1451,7 +1451,7 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub local.tee $6 i32.const 16 @@ -1461,23 +1461,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 + local.tee $4 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1507,26 +1507,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1541,7 +1541,7 @@ local.get $2 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1553,7 +1553,7 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1568,12 +1568,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1585,7 +1585,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $2 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1600,25 +1600,25 @@ i32.sub i32.const 3 i32.and - local.tee $2 + local.tee $3 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1628,17 +1628,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1654,22 +1654,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 @@ -1680,11 +1680,11 @@ i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1716,7 +1716,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/util/memory/memcpy (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -2173,115 +2173,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2313,43 +2303,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2569,11 +2557,11 @@ drop global.get $~lib/memory/__stack_pointer call $infer-array/Ref#constructor - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer call $infer-array/Ref#constructor - local.tee $2 + local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -2582,29 +2570,29 @@ i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.load offset=4 i32.store offset=12 - local.get $0 + local.get $3 i32.const 0 - local.get $1 - call $~lib/array/Array#__uset local.get $0 + call $~lib/array/Array#__uset + local.get $3 i32.const 1 - local.get $2 + local.get $1 call $~lib/array/Array#__uset - local.get $0 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $infer-array/Ref#constructor - local.tee $1 + local.tee $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $infer-array/Ref#constructor - local.tee $2 + local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -2613,25 +2601,25 @@ i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.load offset=4 i32.store offset=8 - local.get $0 + local.get $3 i32.const 0 - local.get $1 - call $~lib/array/Array#__uset local.get $0 + call $~lib/array/Array#__uset + local.get $3 i32.const 1 - local.get $2 + local.get $1 call $~lib/array/Array#__uset - local.get $0 + local.get $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer call $infer-array/Ref#constructor - local.tee $1 + local.tee $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -2640,21 +2628,21 @@ i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.load offset=4 i32.store offset=12 - local.get $0 + local.get $2 i32.const 0 - local.get $1 - call $~lib/array/Array#__uset local.get $0 + call $~lib/array/Array#__uset + local.get $2 i32.const 1 i32.const 0 call $~lib/array/Array#__uset - local.get $0 + local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 2 @@ -2698,13 +2686,13 @@ i32.const 11 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 i32.store offset=12 - local.get $0 + local.get $1 i32.const 0 i32.const 1 i32.const 2 @@ -2712,7 +2700,7 @@ i32.const 1936 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 1 i32.const 1 i32.const 2 @@ -2720,7 +2708,7 @@ i32.const 1968 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 16 @@ -2790,19 +2778,19 @@ i32.const 2 i32.shl i32.add - local.set $3 + local.set $0 loop $while-continue|0 + local.get $0 local.get $2 - local.get $3 - i32.lt_u + i32.gt_u if local.get $2 i32.load - local.tee $0 + local.tee $3 if - local.get $0 + local.get $3 if - local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -2853,9 +2841,9 @@ local.get $0 local.get $1 i32.shl - local.tee $8 - local.set $9 - local.get $8 + local.tee $9 + local.set $8 + local.get $9 i32.const 0 call $~lib/rt/itcms/__new local.set $4 @@ -2870,10 +2858,10 @@ local.get $3 local.get $1 i32.sub - local.get $9 + local.get $8 i32.sub i32.const 0 - local.get $9 + local.get $8 i32.const 1 i32.shl i32.sub @@ -2881,7 +2869,7 @@ if local.get $1 local.get $3 - local.get $9 + local.get $8 call $~lib/util/memory/memcpy br $~lib/util/memory/memmove|inlined.0 end @@ -2902,32 +2890,32 @@ i32.const 7 i32.and if - local.get $9 + local.get $8 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $9 + local.get $8 i32.const 1 i32.sub - local.set $9 + local.set $8 local.get $1 - local.tee $6 + local.tee $5 i32.const 1 i32.add local.set $1 local.get $3 - local.tee $5 + local.tee $6 i32.const 1 i32.add local.set $3 - local.get $6 local.get $5 + local.get $6 i32.load8_u i32.store8 br $while-continue|0 end end loop $while-continue|1 - local.get $9 + local.get $8 i32.const 8 i32.ge_u if @@ -2935,10 +2923,10 @@ local.get $3 i64.load i64.store - local.get $9 + local.get $8 i32.const 8 i32.sub - local.set $9 + local.set $8 local.get $1 i32.const 8 i32.add @@ -2952,26 +2940,26 @@ end end loop $while-continue|2 - local.get $9 + local.get $8 if local.get $1 - local.tee $6 + local.tee $5 i32.const 1 i32.add local.set $1 local.get $3 - local.tee $5 + local.tee $6 i32.const 1 i32.add local.set $3 - local.get $6 local.get $5 + local.get $6 i32.load8_u i32.store8 - local.get $9 + local.get $8 i32.const 1 i32.sub - local.set $9 + local.set $8 br $while-continue|2 end end @@ -2986,22 +2974,22 @@ if loop $while-continue|3 local.get $1 - local.get $9 + local.get $8 i32.add i32.const 7 i32.and if - local.get $9 + local.get $8 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 local.get $1 - local.get $9 + local.get $8 i32.const 1 i32.sub - local.tee $9 + local.tee $8 i32.add local.get $3 - local.get $9 + local.get $8 i32.add i32.load8_u i32.store8 @@ -3009,18 +2997,18 @@ end end loop $while-continue|4 - local.get $9 + local.get $8 i32.const 8 i32.ge_u if local.get $1 - local.get $9 + local.get $8 i32.const 8 i32.sub - local.tee $9 + local.tee $8 i32.add local.get $3 - local.get $9 + local.get $8 i32.add i64.load i64.store @@ -3029,16 +3017,16 @@ end end loop $while-continue|5 - local.get $9 + local.get $8 if local.get $1 - local.get $9 + local.get $8 i32.const 1 i32.sub - local.tee $9 + local.tee $8 i32.add local.get $3 - local.get $9 + local.get $8 i32.add i32.load8_u i32.store8 @@ -3068,7 +3056,7 @@ local.get $4 i32.store offset=4 local.get $1 - local.get $8 + local.get $9 i32.store offset=8 local.get $1 local.get $0 @@ -3156,16 +3144,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $3 i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $3 local.get $1 local.get $2 select @@ -3174,7 +3162,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $0 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/infer-generic.optimized.wat b/tests/compiler/infer-generic.optimized.wat index 0ffbc3de7e..ffd7fb9291 100644 --- a/tests/compiler/infer-generic.optimized.wat +++ b/tests/compiler/infer-generic.optimized.wat @@ -189,19 +189,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -226,9 +226,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -236,17 +236,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -534,10 +534,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -549,15 +549,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -587,7 +587,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -623,12 +623,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -646,11 +646,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 18080 @@ -658,14 +658,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -675,17 +675,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1093,34 +1093,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 1152 i32.store - local.get $1 + local.get $2 i32.const 1200 i32.store offset=4 i32.const 1164 i32.load - local.set $1 + local.set $2 loop $for-loop|0 - local.get $1 + local.get $2 i32.const 1164 i32.load - local.tee $2 - local.get $1 + local.tee $3 local.get $2 + local.get $3 i32.lt_s select local.get $0 i32.gt_s if - local.get $3 + local.get $1 i32.const 1156 i32.load local.get $0 @@ -1133,7 +1133,7 @@ i32.const 1200 i32.load call_indirect $0 (type $i32_f32_i32_i32_=>_i32) - local.set $3 + local.set $1 local.get $0 i32.const 1 i32.add @@ -1184,7 +1184,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1261,16 +1261,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $4 local.get $0 - local.get $2 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1318,7 +1318,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $2 + local.tee $4 i32.const -4 i32.and i32.const 28 @@ -1328,7 +1328,7 @@ i32.ge_u if local.get $0 - local.get $2 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1337,7 +1337,7 @@ local.get $0 i32.const 32 i32.add - local.tee $2 + local.tee $4 local.get $5 i32.const 4 i32.sub @@ -1345,11 +1345,11 @@ i32.or i32.store local.get $1 - local.get $2 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $2 + local.get $4 i32.const -2 i32.and i32.store @@ -1375,26 +1375,26 @@ i32.const 4 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $4 local.get $0 global.get $~lib/rt/itcms/white - local.get $2 + local.get $1 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $4 i32.store offset=8 - local.get $1 - local.get $1 + local.get $4 + local.get $4 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1436,7 +1436,7 @@ i32.sub i32.const 0 i32.store8 - local.get $4 + local.get $3 local.get $0 i32.store local.get $0 @@ -1503,19 +1503,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1525,22 +1525,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18068 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1554,9 +1554,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1566,23 +1566,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1590,7 +1590,7 @@ else i32.const 1616 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1424 @@ -1600,7 +1600,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1620 @@ -1615,28 +1615,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/inlining.optimized.wat b/tests/compiler/inlining.optimized.wat index de83a638dc..56f66ed08c 100644 --- a/tests/compiler/inlining.optimized.wat +++ b/tests/compiler/inlining.optimized.wat @@ -176,19 +176,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -213,9 +213,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -223,17 +223,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -521,10 +521,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -536,15 +536,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -574,7 +574,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -610,12 +610,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -633,11 +633,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17968 @@ -645,14 +645,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -662,17 +662,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1152,7 +1152,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1178,32 +1178,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1236,7 +1236,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1244,8 +1244,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1262,7 +1262,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1272,13 +1272,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1294,7 +1294,7 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub local.tee $6 i32.const 16 @@ -1304,23 +1304,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 + local.tee $4 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1350,26 +1350,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1384,7 +1384,7 @@ local.get $2 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1396,7 +1396,7 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1411,12 +1411,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1428,7 +1428,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $2 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1443,25 +1443,25 @@ i32.sub i32.const 3 i32.and - local.tee $2 + local.tee $3 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1471,17 +1471,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1497,22 +1497,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 @@ -1523,11 +1523,11 @@ i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1559,7 +1559,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/rt/__visit_members (param $0 i32) block $invalid @@ -1805,19 +1805,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1827,22 +1827,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17964 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1856,9 +1856,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1868,23 +1868,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1892,7 +1892,7 @@ else i32.const 1520 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1328 @@ -1902,7 +1902,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1524 @@ -1917,28 +1917,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/instanceof-class.optimized.wat b/tests/compiler/instanceof-class.optimized.wat index 70c3baba31..ec2733c6ae 100644 --- a/tests/compiler/instanceof-class.optimized.wat +++ b/tests/compiler/instanceof-class.optimized.wat @@ -184,19 +184,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -221,9 +221,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -231,17 +231,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -529,10 +529,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -544,15 +544,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -582,7 +582,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -618,12 +618,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -641,11 +641,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17952 @@ -653,14 +653,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -670,17 +670,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1153,17 +1153,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1172,19 +1172,19 @@ local.get $1 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1210,26 +1210,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $0 i32.load offset=8 - local.set $0 + local.set $2 local.get $1 global.get $~lib/rt/itcms/white - local.get $2 + local.get $0 i32.or i32.store offset=4 local.get $1 - local.get $0 + local.get $2 i32.store offset=8 - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $2 + local.get $0 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1524,19 +1524,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1546,22 +1546,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17948 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1575,9 +1575,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1587,23 +1587,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1611,7 +1611,7 @@ else i32.const 1504 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1248 @@ -1621,7 +1621,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1508 @@ -1636,28 +1636,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/issues/1095.optimized.wat b/tests/compiler/issues/1095.optimized.wat index 548d222dd1..9ab8c0f6bd 100644 --- a/tests/compiler/issues/1095.optimized.wat +++ b/tests/compiler/issues/1095.optimized.wat @@ -111,7 +111,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -134,7 +134,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -144,23 +144,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -168,7 +168,7 @@ else i32.const 1584 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1248 @@ -178,7 +178,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 1588 @@ -193,27 +193,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -301,19 +301,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -338,9 +338,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -348,17 +348,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -646,10 +646,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -661,15 +661,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -699,7 +699,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -735,12 +735,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -758,11 +758,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 18016 @@ -770,14 +770,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -787,17 +787,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1226,19 +1226,18 @@ local.tee $0 i32.const 0 i32.store - local.get $0 global.get $~lib/rt/itcms/total global.get $~lib/rt/itcms/threshold i32.ge_u if block $__inlined_func$~lib/rt/itcms/interrupt i32.const 2048 - local.set $0 + local.set $1 loop $do-loop|0 - local.get $0 + local.get $1 call $~lib/rt/itcms/step i32.sub - local.set $0 + local.set $1 global.get $~lib/rt/itcms/state i32.eqz if @@ -1254,14 +1253,14 @@ global.set $~lib/rt/itcms/threshold br $__inlined_func$~lib/rt/itcms/interrupt end - local.get $0 + local.get $1 i32.const 0 i32.gt_s br_if $do-loop|0 end global.get $~lib/rt/itcms/total - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 @@ -1278,17 +1277,17 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if memory.size - local.tee $0 + local.tee $1 i32.const 4 - local.get $2 + local.get $3 i32.load offset=1568 - local.get $0 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1301,16 +1300,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $0 - local.get $3 + local.tee $2 + local.get $1 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1318,17 +1317,17 @@ unreachable end end - local.get $2 - local.get $0 + local.get $3 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $3 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1339,7 +1338,7 @@ unreachable end end - local.get $0 + local.get $1 i32.load i32.const -4 i32.and @@ -1353,50 +1352,50 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $0 + local.get $3 + local.get $1 call $~lib/rt/tlsf/removeBlock - local.get $0 + local.get $1 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if - local.get $0 - local.get $3 + local.get $1 + local.get $4 i32.const 2 i32.and i32.const 28 i32.or i32.store - local.get $0 + local.get $1 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else - local.get $0 - local.get $3 + local.get $1 + local.get $4 i32.const -2 i32.and i32.store - local.get $0 + local.get $1 i32.const 4 i32.add - local.get $0 + local.get $1 i32.load i32.const -4 i32.and @@ -1408,37 +1407,37 @@ i32.and i32.store end - local.get $0 + local.get $1 i32.const 3 i32.store offset=12 - local.get $0 + local.get $1 i32.const 4 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $2 i32.load offset=8 - local.set $2 - local.get $0 + local.set $3 + local.get $1 global.get $~lib/rt/itcms/white - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 - local.get $3 - local.get $0 + local.get $2 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total - local.get $0 + local.get $1 i32.load i32.const -4 i32.and @@ -1446,13 +1445,13 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $0 + local.get $1 i32.const 20 i32.add - local.tee $0 + local.tee $1 i32.const 0 i32.store8 - local.get $0 + local.get $1 i32.const 4 i32.add local.tee $2 @@ -1460,10 +1459,10 @@ i32.sub i32.const 0 i32.store8 - local.get $0 + local.get $1 i32.const 0 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 0 i32.store8 offset=2 local.get $2 @@ -1477,11 +1476,12 @@ i32.const 0 i32.store8 local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.const 1456 i32.store - local.get $0 + local.get $1 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white @@ -1491,13 +1491,13 @@ i32.and i32.eq if - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $1 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq @@ -1508,7 +1508,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $1 + local.get $0 i32.const 3 i32.eq i32.and @@ -1523,10 +1523,10 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store + local.tee $0 local.get $1 + i32.store + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -1535,15 +1535,15 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 local.get $0 + local.get $1 i32.load - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.eqz if i32.const 1488 @@ -1553,47 +1553,47 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 if - local.get $0 + local.get $1 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white - local.get $1 + local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $1 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $1 + local.get $0 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $1 i32.const 3 i32.eq i32.and if - local.get $1 + local.get $0 call $~lib/rt/itcms/Object#makeGray end end diff --git a/tests/compiler/issues/1225.optimized.wat b/tests/compiler/issues/1225.optimized.wat index 7675482de1..febd93c8f9 100644 --- a/tests/compiler/issues/1225.optimized.wat +++ b/tests/compiler/issues/1225.optimized.wat @@ -176,19 +176,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -213,9 +213,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -223,17 +223,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -521,10 +521,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -536,15 +536,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -574,7 +574,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -610,12 +610,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -633,11 +633,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17920 @@ -645,14 +645,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -662,17 +662,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1203,26 +1203,26 @@ i32.const 12 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $2 local.get $0 global.get $~lib/rt/itcms/white - local.get $2 + local.get $1 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1237,7 +1237,7 @@ local.get $0 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.tee $0 i32.const 0 i32.store8 @@ -1289,7 +1289,7 @@ i32.sub i32.const -4 i32.and - local.tee $2 + local.tee $3 local.get $0 i32.add local.tee $1 @@ -1298,7 +1298,7 @@ i32.const 0 i32.store block $~lib/util/memory/memset|inlined.0 - local.get $2 + local.get $3 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1318,7 +1318,7 @@ i32.sub i32.const 0 i32.store - local.get $2 + local.get $3 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1363,7 +1363,7 @@ local.tee $4 i32.add local.set $1 - local.get $2 + local.get $3 local.get $4 i32.sub local.set $0 @@ -1396,7 +1396,7 @@ end end end - local.get $3 + local.get $2 ) (func $issues/1225/normal (result i32) global.get $issues/1225/x @@ -1585,19 +1585,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1607,22 +1607,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17908 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1636,9 +1636,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1648,23 +1648,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1672,7 +1672,7 @@ else i32.const 1488 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1248 @@ -1682,7 +1682,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1492 @@ -1697,28 +1697,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/issues/1699.optimized.wat b/tests/compiler/issues/1699.optimized.wat index 289c58d3ee..8806728f23 100644 --- a/tests/compiler/issues/1699.optimized.wat +++ b/tests/compiler/issues/1699.optimized.wat @@ -118,7 +118,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -141,7 +141,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -151,23 +151,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -175,7 +175,7 @@ else i32.const 1712 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1344 @@ -185,7 +185,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 1716 @@ -200,27 +200,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -308,19 +308,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -345,9 +345,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -355,17 +355,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -653,10 +653,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -668,15 +668,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -706,7 +706,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -742,12 +742,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -765,11 +765,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 18144 @@ -777,14 +777,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -794,17 +794,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1282,14 +1282,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1299,17 +1299,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1325,22 +1325,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1351,11 +1351,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1460,7 +1460,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1486,32 +1486,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1527,16 +1527,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1544,7 +1544,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1552,8 +1552,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1570,7 +1570,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -1580,13 +1580,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1599,40 +1599,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -1658,26 +1658,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2152,115 +2152,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2292,43 +2282,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2436,7 +2424,7 @@ i32.const 1 i32.add local.tee $11 - local.tee $3 + local.tee $5 local.get $0 i32.load offset=8 local.tee $9 @@ -2444,7 +2432,7 @@ i32.shr_u i32.gt_u if - local.get $3 + local.get $5 i32.const 268435455 i32.gt_u if @@ -2459,16 +2447,16 @@ local.get $9 i32.const 1 i32.shl - local.tee $4 + local.tee $3 i32.const 1073741820 - local.get $4 + local.get $3 i32.const 1073741820 i32.lt_u select local.tee $4 - local.get $3 + local.get $5 i32.const 8 - local.get $3 + local.get $5 i32.const 8 i32.gt_u select @@ -2480,14 +2468,14 @@ i32.lt_u select local.tee $10 - local.tee $5 + local.tee $6 local.get $0 i32.load local.tee $12 local.tee $3 i32.const 20 i32.sub - local.tee $6 + local.tee $5 i32.load i32.const -4 i32.and @@ -2495,24 +2483,24 @@ i32.sub i32.le_u if - local.get $6 local.get $5 + local.get $6 i32.store offset=16 br $__inlined_func$~lib/rt/itcms/__renew end - local.get $5 local.get $6 + local.get $5 i32.load offset=12 call $~lib/rt/itcms/__new local.tee $7 local.set $4 - local.get $5 local.get $6 + local.get $5 i32.load offset=16 - local.tee $6 + local.tee $5 local.get $5 local.get $6 - i32.lt_u + i32.gt_u select local.set $8 block $~lib/util/memory/memmove|inlined.0 @@ -2563,17 +2551,17 @@ i32.sub local.set $8 local.get $4 - local.tee $5 + local.tee $6 i32.const 1 i32.add local.set $4 local.get $3 - local.tee $6 + local.tee $5 i32.const 1 i32.add local.set $3 - local.get $5 local.get $6 + local.get $5 i32.load8_u i32.store8 br $while-continue|0 @@ -2608,17 +2596,17 @@ local.get $8 if local.get $4 - local.tee $5 + local.tee $6 i32.const 1 i32.add local.set $4 local.get $3 - local.tee $6 + local.tee $5 i32.const 1 i32.add local.set $3 - local.get $5 local.get $6 + local.get $5 i32.load8_u i32.store8 local.get $8 @@ -2798,13 +2786,13 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i64.const 0 i64.store offset=8 - local.get $2 + local.get $1 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -2838,23 +2826,23 @@ i32.const 32 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $1 + local.get $2 i32.const 32 call $~lib/memory/memory.fill local.get $0 - local.get $1 + local.get $2 i32.store - local.get $1 + local.get $2 if local.get $0 - local.get $1 + local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $1 + local.get $2 i32.store offset=4 local.get $0 i32.const 32 @@ -2866,7 +2854,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 local.get $0 i32.store call $issues/1699/MultiAssignmentTest#constructor @@ -3003,19 +2991,19 @@ i32.const 2 i32.shl i32.add - local.set $3 + local.set $0 loop $while-continue|0 + local.get $0 local.get $2 - local.get $3 - i32.lt_u + i32.gt_u if local.get $2 i32.load - local.tee $0 + local.tee $3 if - local.get $0 + local.get $3 if - local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -3177,16 +3165,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $3 i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $3 local.get $1 local.get $2 select @@ -3195,7 +3183,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $0 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/logical.optimized.wat b/tests/compiler/logical.optimized.wat index b7d590ba5c..e78eb6abf4 100644 --- a/tests/compiler/logical.optimized.wat +++ b/tests/compiler/logical.optimized.wat @@ -164,19 +164,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -201,9 +201,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -211,17 +211,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -509,10 +509,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -524,15 +524,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -562,7 +562,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -598,12 +598,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -621,11 +621,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17920 @@ -633,14 +633,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -650,17 +650,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1173,7 +1173,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1250,16 +1250,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $0 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1307,7 +1307,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $2 + local.tee $3 i32.const -4 i32.and i32.const 28 @@ -1317,7 +1317,7 @@ i32.ge_u if local.get $0 - local.get $2 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1326,7 +1326,7 @@ local.get $0 i32.const 32 i32.add - local.tee $2 + local.tee $3 local.get $4 i32.const 4 i32.sub @@ -1334,11 +1334,11 @@ i32.or i32.store local.get $1 - local.get $2 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $2 + local.get $3 i32.const -2 i32.and i32.store @@ -1364,26 +1364,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 global.get $~lib/rt/itcms/white - local.get $2 + local.get $1 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1395,7 +1395,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $3 + local.get $2 local.get $0 i32.const 20 i32.add @@ -1415,19 +1415,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1437,22 +1437,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17908 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1466,9 +1466,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1478,23 +1478,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1502,7 +1502,7 @@ else i32.const 1488 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1296 @@ -1512,7 +1512,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1492 @@ -1527,28 +1527,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/managed-cast.optimized.wat b/tests/compiler/managed-cast.optimized.wat index d695396e9a..c27b7d86f8 100644 --- a/tests/compiler/managed-cast.optimized.wat +++ b/tests/compiler/managed-cast.optimized.wat @@ -168,19 +168,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -205,9 +205,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -215,17 +215,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -513,10 +513,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -528,15 +528,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -566,7 +566,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -602,12 +602,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -625,11 +625,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 18064 @@ -637,14 +637,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -654,17 +654,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1137,17 +1137,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1156,19 +1156,19 @@ local.get $1 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1194,26 +1194,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $0 i32.load offset=8 - local.set $0 + local.set $2 local.get $1 global.get $~lib/rt/itcms/white - local.get $2 + local.get $0 i32.or i32.store offset=4 local.get $1 - local.get $0 + local.get $2 i32.store offset=8 - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $2 + local.get $0 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1362,9 +1362,9 @@ local.get $0 i32.store call $managed-cast/Cat#constructor - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 @@ -1378,29 +1378,29 @@ i32.const 0 i32.store block $__inlined_func$~lib/rt/__instanceof (result i32) - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1632 i32.load i32.le_u if loop $do-loop|0 i32.const 1 - local.get $0 + local.get $1 i32.const 3 i32.eq br_if $__inlined_func$~lib/rt/__instanceof drop - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1636 i32.add i32.load offset=4 - local.tee $0 + local.tee $1 br_if $do-loop|0 end end @@ -1416,20 +1416,20 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 4 i32.add global.set $~lib/memory/__stack_pointer call $managed-cast/Cat#constructor - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store + local.tee $0 local.get $1 + i32.store + local.get $0 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -1438,10 +1438,10 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $0 + local.get $1 i32.eqz if i32.const 1456 @@ -1451,33 +1451,33 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $0 + local.get $1 i32.store offset=4 block $__inlined_func$~lib/rt/__instanceof11 (result i32) - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1632 i32.load i32.le_u if loop $do-loop|012 i32.const 1 - local.get $1 + local.get $0 i32.const 3 i32.eq br_if $__inlined_func$~lib/rt/__instanceof11 drop - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1636 i32.add i32.load offset=4 - local.tee $1 + local.tee $0 br_if $do-loop|012 end end @@ -1493,20 +1493,20 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store + local.tee $0 local.get $1 + i32.store + local.get $0 i32.const 8 i32.add global.set $~lib/memory/__stack_pointer call $managed-cast/Cat#constructor - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -1519,29 +1519,29 @@ i32.const 0 i32.store block $__inlined_func$~lib/rt/__instanceof14 (result i32) - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1632 i32.load i32.le_u if loop $do-loop|015 i32.const 1 - local.get $0 + local.get $1 i32.const 3 i32.eq br_if $__inlined_func$~lib/rt/__instanceof14 drop - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1636 i32.add i32.load offset=4 - local.tee $0 + local.tee $1 br_if $do-loop|015 end end @@ -1557,19 +1557,19 @@ unreachable end local.get $2 - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer call $managed-cast/Cat#constructor - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -1581,32 +1581,32 @@ local.tee $2 i32.const 0 i32.store - local.get $1 + local.get $0 if block $__inlined_func$~lib/rt/__instanceof17 (result i32) - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1632 i32.load i32.le_u if loop $do-loop|018 i32.const 1 - local.get $0 + local.get $1 i32.const 3 i32.eq br_if $__inlined_func$~lib/rt/__instanceof17 drop - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1636 i32.add i32.load offset=4 - local.tee $0 + local.tee $1 br_if $do-loop|018 end end @@ -1623,10 +1623,10 @@ end else i32.const 0 - local.set $1 + local.set $0 end local.get $2 - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 @@ -1750,19 +1750,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1772,22 +1772,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18060 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1801,9 +1801,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1813,23 +1813,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1837,7 +1837,7 @@ else i32.const 1632 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1248 @@ -1847,7 +1847,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1636 @@ -1862,28 +1862,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/memcpy.optimized.wat b/tests/compiler/memcpy.optimized.wat index 4fc70c45a0..6c4100c920 100644 --- a/tests/compiler/memcpy.optimized.wat +++ b/tests/compiler/memcpy.optimized.wat @@ -469,115 +469,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -609,43 +599,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 diff --git a/tests/compiler/new.optimized.wat b/tests/compiler/new.optimized.wat index 07d49c75a0..fb2deaeeee 100644 --- a/tests/compiler/new.optimized.wat +++ b/tests/compiler/new.optimized.wat @@ -222,19 +222,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -259,9 +259,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -269,17 +269,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -567,10 +567,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -582,15 +582,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -620,7 +620,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -656,12 +656,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -679,11 +679,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17888 @@ -691,14 +691,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -708,17 +708,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1191,17 +1191,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1210,19 +1210,19 @@ local.get $1 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1248,26 +1248,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $0 i32.load offset=8 - local.set $0 + local.set $2 local.get $1 global.get $~lib/rt/itcms/white - local.get $2 + local.get $0 i32.or i32.store offset=4 local.get $1 - local.get $0 + local.get $2 i32.store offset=8 - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $2 + local.get $0 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1566,19 +1566,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1588,22 +1588,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17884 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1617,9 +1617,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1629,23 +1629,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1653,7 +1653,7 @@ else i32.const 1440 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1248 @@ -1663,7 +1663,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1444 @@ -1678,28 +1678,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/number.optimized.wat b/tests/compiler/number.optimized.wat index 4eed6a3b94..9d9b665b8f 100644 --- a/tests/compiler/number.optimized.wat +++ b/tests/compiler/number.optimized.wat @@ -211,19 +211,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -248,9 +248,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -258,17 +258,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -556,10 +556,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -571,15 +571,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -609,7 +609,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -645,12 +645,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -668,11 +668,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 21072 @@ -680,14 +680,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -697,17 +697,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1187,7 +1187,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 local.get $1 i32.const 1073741820 i32.gt_u @@ -1213,32 +1213,32 @@ i32.const 4 i32.sub end - local.tee $2 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size local.tee $1 - local.get $2 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $2 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $2 + local.get $3 i32.add else - local.get $2 + local.get $3 end i32.const 4 - local.get $3 + local.get $2 i32.load offset=1568 local.get $1 i32.const 16 @@ -1271,7 +1271,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $1 i32.const 16 i32.shl @@ -1279,8 +1279,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $2 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1297,7 +1297,7 @@ i32.load i32.const -4 i32.and - local.get $2 + local.get $3 i32.lt_u if i32.const 0 @@ -1307,13 +1307,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load local.set $4 - local.get $2 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1329,7 +1329,7 @@ local.get $4 i32.const -4 i32.and - local.get $2 + local.get $3 i32.sub local.tee $5 i32.const 16 @@ -1339,23 +1339,23 @@ local.get $4 i32.const 2 i32.and - local.get $2 + local.get $3 i32.or i32.store - local.get $2 + local.get $3 local.get $1 i32.const 4 i32.add i32.add - local.tee $2 + local.tee $3 local.get $5 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $2 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $1 @@ -1385,26 +1385,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $1 global.get $~lib/rt/itcms/white - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $3 + local.get $2 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1419,7 +1419,7 @@ local.get $1 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1431,7 +1431,7 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1446,12 +1446,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1463,7 +1463,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $2 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1478,25 +1478,25 @@ i32.sub i32.const 3 i32.and - local.tee $2 + local.tee $3 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1506,17 +1506,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1532,22 +1532,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 @@ -1558,11 +1558,11 @@ i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1594,7 +1594,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/util/number/utoa32_dec_lut (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -1906,14 +1906,14 @@ if local.get $2 i32.load16_u - local.tee $3 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $3 i32.ne if - local.get $3 local.get $4 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2816,115 +2816,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2956,43 +2946,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3283,17 +3271,17 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 21 i32.le_s local.get $0 - local.get $3 + local.get $2 i32.le_s i32.and if (result i32) loop $for-loop|0 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -3310,26 +3298,26 @@ br $for-loop|0 end end - local.get $3 + local.get $2 i32.const 1 i32.shl i32.const 3456 i32.add i32.const 3145774 i32.store - local.get $3 + local.get $2 i32.const 2 i32.add else - local.get $3 + local.get $2 i32.const 21 i32.le_s - local.get $3 + local.get $2 i32.const 0 i32.gt_s i32.and if (result i32) - local.get $3 + local.get $2 i32.const 1 i32.shl i32.const 3456 @@ -3351,16 +3339,16 @@ i32.const 1 i32.add else - local.get $3 + local.get $2 i32.const 0 i32.le_s - local.get $3 + local.get $2 i32.const -6 i32.gt_s i32.and if (result i32) i32.const 2 - local.get $3 + local.get $2 i32.sub local.tee $2 i32.const 1 @@ -3407,13 +3395,13 @@ i32.const 3458 i32.const 101 i32.store16 - local.get $3 + local.get $2 i32.const 1 i32.sub local.tee $0 i32.const 0 i32.lt_s - local.tee $2 + local.tee $1 if i32.const 0 local.get $0 @@ -3421,56 +3409,56 @@ local.set $0 end local.get $0 - local.tee $1 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $2 i32.const 3460 local.get $0 - local.get $1 + local.get $2 i32.const 1 i32.add local.tee $0 @@ -3478,7 +3466,7 @@ i32.const 3460 i32.const 45 i32.const 43 - local.get $2 + local.get $1 select i32.store16 local.get $0 @@ -3500,87 +3488,87 @@ local.get $1 i32.const 3456 i32.add - local.tee $2 + local.tee $1 i32.const 101 i32.store16 offset=2 - local.get $2 + local.get $1 i32.const 4 i32.add - local.get $3 + local.get $2 i32.const 1 i32.sub - local.tee $1 + local.tee $2 i32.const 0 i32.lt_s local.tee $4 if i32.const 0 - local.get $1 + local.get $2 i32.sub - local.set $1 + local.set $2 end - local.get $1 - local.tee $3 + local.get $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 100 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $3 + local.get $5 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $3 + local.get $5 i32.const 1000 i32.ge_u i32.add end else - local.get $3 + local.get $5 i32.const 10000000 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $3 + local.get $5 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $3 + local.get $5 i32.const 100000000 i32.ge_u i32.add end end - local.set $3 - local.get $1 - local.get $3 + local.set $5 + local.get $2 + local.get $5 i32.const 1 i32.add - local.tee $1 + local.tee $2 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $1 i32.const 45 i32.const 43 local.get $4 select i32.store16 offset=4 local.get $0 - local.get $1 + local.get $2 i32.add i32.const 2 i32.add @@ -3622,13 +3610,13 @@ call $start:number ) (func $start:number - (local $0 i64) + (local $0 i32) (local $1 i64) - (local $2 i32) + (local $2 i64) (local $3 i64) (local $4 i64) - (local $5 i32) - (local $6 i64) + (local $5 i64) + (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -3675,14 +3663,14 @@ global.set $~lib/rt/itcms/fromSpace global.get $number/a call $~lib/number/I32#toString - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 3232 i32.store offset=4 - local.get $2 + local.get $0 i32.const 3232 call $~lib/string/String.__eq i32.eqz @@ -3714,22 +3702,22 @@ i32.load16_s global.set $~lib/util/number/_exp_pow global.get $~lib/util/number/_frc_pow - local.tee $1 + local.tee $2 i64.const 4294967295 i64.and - local.tee $0 + local.tee $3 i64.const 31 i64.shl local.tee $4 - local.set $3 - local.get $1 + local.set $1 + local.get $2 i64.const 32 i64.shr_u - local.tee $1 + local.tee $5 i64.const 31 i64.shl - local.tee $6 - local.get $0 + local.tee $2 + local.get $3 i64.const 10 i64.shl i64.const 32 @@ -3743,7 +3731,7 @@ local.get $4 i64.const 4294967295 i64.and - local.get $1 + local.get $5 i64.const 10 i64.shl i64.add @@ -3755,12 +3743,12 @@ i64.const 1 i64.sub local.set $4 - local.get $3 + local.get $1 i64.const 32 i64.shr_u - local.get $6 + local.get $2 i64.add - local.get $3 + local.get $1 i64.const 4294967295 i64.and i64.const 2147483647 @@ -3773,26 +3761,26 @@ i32.const 2 i32.add local.get $4 - local.get $1 + local.get $5 i64.const 2147483647 i64.mul - local.get $0 + local.get $3 i64.const 2147483647 i64.mul - local.get $0 + local.get $3 i64.const 4294966784 i64.mul i64.const 32 i64.shr_u i64.add - local.tee $0 + local.tee $1 i64.const 32 i64.shr_u i64.add - local.get $1 + local.get $5 i64.const 4294966784 i64.mul - local.get $0 + local.get $1 i64.const 4294967295 i64.and i64.add @@ -3809,28 +3797,28 @@ call $~lib/util/number/prettify i32.const 1 i32.shl - local.set $5 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $6 i32.store - local.get $2 + local.get $6 i32.const 3456 - local.get $5 + local.get $0 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $5 - local.get $2 + local.tee $0 + local.get $6 i32.store - local.get $5 + local.get $0 i32.const 4448 i32.store offset=4 - local.get $2 + local.get $6 i32.const 4448 call $~lib/string/String.__eq i32.eqz @@ -3844,15 +3832,15 @@ end i32.const 3 call $~lib/number/I32#toString - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $5 - local.get $2 + local.tee $6 + local.get $0 i32.store - local.get $5 + local.get $6 i32.const 4480 i32.store offset=4 - local.get $2 + local.get $0 i32.const 4480 call $~lib/string/String.__eq i32.eqz @@ -3866,15 +3854,15 @@ end i32.const -5 call $~lib/number/I32#toString - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $5 - local.get $2 + local.tee $6 + local.get $0 i32.store - local.get $5 + local.get $6 i32.const 4512 i32.store offset=4 - local.get $2 + local.get $0 i32.const 4512 call $~lib/string/String.__eq i32.eqz @@ -3888,15 +3876,15 @@ end i32.const 4 call $~lib/number/I32#toString - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $5 - local.get $2 + local.tee $6 + local.get $0 i32.store - local.get $5 + local.get $6 i32.const 4544 i32.store offset=4 - local.get $2 + local.get $0 i32.const 4544 call $~lib/string/String.__eq i32.eqz @@ -3914,15 +3902,15 @@ global.set $number/a global.get $number/a call $~lib/number/I32#toString - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $5 - local.get $2 + local.tee $6 + local.get $0 i32.store - local.get $5 + local.get $6 i32.const 4576 i32.store offset=4 - local.get $2 + local.get $0 i32.const 4576 call $~lib/string/String.__eq i32.eqz @@ -3940,15 +3928,15 @@ global.set $number/a global.get $number/a call $~lib/number/I32#toString - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $5 - local.get $2 + local.tee $6 + local.get $0 i32.store - local.get $5 + local.get $6 i32.const 3232 i32.store offset=4 - local.get $2 + local.get $0 i32.const 3232 call $~lib/string/String.__eq i32.eqz @@ -3961,10 +3949,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $0 i32.const 4608 i32.store - local.get $2 + local.get $0 i32.const 4608 i32.store offset=4 i32.const 4608 @@ -3980,10 +3968,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $0 i32.const 4640 i32.store - local.get $2 + local.get $0 i32.const 4640 i32.store offset=4 i32.const 4640 @@ -3999,21 +3987,21 @@ unreachable end global.get $number/a - local.tee $2 + local.tee $0 i32.const 1 i32.add global.set $number/a - local.get $2 + local.get $0 call $~lib/number/I32#toString - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $5 - local.get $2 + local.tee $6 + local.get $0 i32.store - local.get $5 + local.get $6 i32.const 3232 i32.store offset=4 - local.get $2 + local.get $0 i32.const 3232 call $~lib/string/String.__eq i32.eqz @@ -4026,21 +4014,21 @@ unreachable end global.get $number/a - local.tee $2 + local.tee $0 i32.const 1 i32.sub global.set $number/a - local.get $2 + local.get $0 call $~lib/number/I32#toString - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $5 - local.get $2 + local.tee $6 + local.get $0 i32.store - local.get $5 + local.get $6 i32.const 4576 i32.store offset=4 - local.get $2 + local.get $0 i32.const 4576 call $~lib/string/String.__eq i32.eqz @@ -4073,19 +4061,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -4095,22 +4083,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 21068 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -4124,9 +4112,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -4136,23 +4124,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -4160,7 +4148,7 @@ else i32.const 4656 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1472 @@ -4170,7 +4158,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 4660 @@ -4185,28 +4173,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/object-literal.optimized.wat b/tests/compiler/object-literal.optimized.wat index 47801d5398..1909f3ca88 100644 --- a/tests/compiler/object-literal.optimized.wat +++ b/tests/compiler/object-literal.optimized.wat @@ -76,7 +76,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -99,7 +99,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -109,23 +109,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -133,7 +133,7 @@ else i32.const 1712 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1200 @@ -143,7 +143,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 1716 @@ -158,27 +158,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -311,19 +311,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -348,9 +348,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -358,17 +358,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -656,10 +656,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -671,15 +671,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -709,7 +709,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -745,12 +745,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -768,11 +768,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 18160 @@ -780,14 +780,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -797,17 +797,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -893,7 +893,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $1 + local.set $2 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -910,11 +910,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -956,9 +956,9 @@ if local.get $0 i32.load - local.tee $2 + local.tee $1 if - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -982,11 +982,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -1012,7 +1012,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $1 + local.get $2 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -1232,7 +1232,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $1 local.get $0 i32.const 1073741820 i32.gt_u @@ -1258,34 +1258,34 @@ i32.const 4 i32.sub end - local.tee $0 + local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if memory.size - local.tee $1 - local.get $0 + local.tee $0 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $0 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $0 + local.get $3 i32.add else - local.get $0 + local.get $3 end i32.const 4 - local.get $2 - i32.load offset=1568 local.get $1 + i32.load offset=1568 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1299,16 +1299,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $1 - local.get $3 + local.tee $2 + local.get $0 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1316,18 +1316,18 @@ unreachable end end - local.get $2 local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 - local.get $0 + local.get $1 + local.get $3 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1338,11 +1338,11 @@ unreachable end end - local.get $1 + local.get $0 i32.load i32.const -4 i32.and - local.get $0 + local.get $3 i32.lt_u if i32.const 0 @@ -1352,13 +1352,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $1 - i32.load - local.set $3 local.get $0 + i32.load + local.set $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1371,59 +1371,59 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const -4 i32.and - local.get $0 + local.get $3 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.const 2 i32.and - local.get $0 + local.get $3 i32.or i32.store + local.get $3 local.get $0 - local.get $1 i32.const 4 i32.add i32.add - local.tee $0 - local.get $4 + local.tee $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 - local.get $0 - call $~lib/rt/tlsf/insertBlock - else local.get $1 local.get $3 + call $~lib/rt/tlsf/insertBlock + else + local.get $0 + local.get $4 i32.const -2 i32.and i32.store - local.get $1 + local.get $0 i32.const 4 i32.add - local.get $1 + local.get $0 i32.load i32.const -4 i32.and i32.add - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.load i32.const -3 i32.and i32.store end - local.get $1 + local.get $0 i32.const 4 i32.add ) @@ -1499,26 +1499,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1533,7 +1533,7 @@ local.get $2 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1545,7 +1545,7 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1560,12 +1560,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1577,7 +1577,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $2 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1592,25 +1592,25 @@ i32.sub i32.const 3 i32.and - local.tee $2 + local.tee $3 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1620,17 +1620,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1646,22 +1646,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 @@ -1672,11 +1672,11 @@ i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1708,7 +1708,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/string/String.__eq (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -1800,14 +1800,14 @@ if local.get $2 i32.load16_u - local.tee $3 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $3 i32.ne if - local.get $3 local.get $4 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2281,115 +2281,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2421,43 +2411,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2683,13 +2671,13 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 0 i32.store offset=16 i32.const 1156 @@ -2724,7 +2712,7 @@ i32.store i32.const 1392 global.set $~lib/rt/itcms/fromSpace - local.get $1 + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -2733,40 +2721,40 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 8 i32.const 3 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 local.get $1 - local.get $2 i32.store offset=4 - local.get $2 + local.get $1 i32.const 123 i32.store - local.get $2 + local.get $1 i32.const 1056 i32.store offset=4 - local.get $2 + local.get $1 i32.const 1056 call $byn-split-outlined-A$~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer local.tee $0 - local.get $2 + local.get $1 i32.store local.get $0 i32.const 8 @@ -2779,7 +2767,7 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - local.get $2 + local.get $1 i32.load i32.const 123 i32.ne @@ -2792,15 +2780,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $2 - i32.load offset=4 local.tee $0 - i32.store local.get $1 + i32.load offset=4 + local.tee $1 + i32.store + local.get $0 i32.const 1056 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1056 call $~lib/string/String.__eq i32.eqz @@ -2847,37 +2835,37 @@ i32.load i32.const 1 i32.shr_u - local.tee $3 - local.get $3 + local.tee $0 + local.get $0 select local.tee $1 i32.const 5 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.const 5 i32.gt_u select - local.tee $0 - local.get $0 + local.tee $2 local.get $1 - i32.gt_s + local.get $2 + i32.lt_s select i32.const 1 i32.shl - local.set $2 + local.set $3 block $__inlined_func$~lib/string/String#substring local.get $1 - local.get $0 - local.get $0 + local.get $2 local.get $1 - i32.lt_s + local.get $2 + i32.gt_s select i32.const 1 i32.shl local.tee $1 - local.get $2 + local.get $3 i32.sub - local.tee $0 + local.tee $4 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -2885,16 +2873,16 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1568 - local.set $4 + local.set $5 br $__inlined_func$~lib/string/String#substring end i32.const 0 - local.get $3 + local.get $0 i32.const 1 i32.shl local.get $1 i32.eq - local.get $2 + local.get $3 select if global.get $~lib/memory/__stack_pointer @@ -2902,21 +2890,19 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1056 - local.set $4 + local.set $5 br $__inlined_func$~lib/string/String#substring end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $4 i32.const 1 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $5 i32.store - local.get $0 - local.set $5 block $~lib/util/memory/memmove|inlined.0 - local.get $4 + local.get $5 local.tee $0 - local.get $2 + local.get $3 i32.const 1056 i32.add local.tee $1 @@ -2925,10 +2911,10 @@ local.get $1 local.get $0 i32.sub - local.get $5 + local.get $4 i32.sub i32.const 0 - local.get $5 + local.get $4 i32.const 1 i32.shl i32.sub @@ -2936,7 +2922,7 @@ if local.get $0 local.get $1 - local.get $5 + local.get $4 call $~lib/util/memory/memcpy br $~lib/util/memory/memmove|inlined.0 end @@ -2957,32 +2943,32 @@ i32.const 7 i32.and if - local.get $5 + local.get $4 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $5 + local.get $4 i32.const 1 i32.sub - local.set $5 + local.set $4 local.get $0 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 br $while-continue|0 end end loop $while-continue|1 - local.get $5 + local.get $4 i32.const 8 i32.ge_u if @@ -2990,10 +2976,10 @@ local.get $1 i64.load i64.store - local.get $5 + local.get $4 i32.const 8 i32.sub - local.set $5 + local.set $4 local.get $0 i32.const 8 i32.add @@ -3007,26 +2993,26 @@ end end loop $while-continue|2 - local.get $5 + local.get $4 if local.get $0 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $5 + local.get $4 i32.const 1 i32.sub - local.set $5 + local.set $4 br $while-continue|2 end end @@ -3041,22 +3027,22 @@ if loop $while-continue|3 local.get $0 - local.get $5 + local.get $4 i32.add i32.const 7 i32.and if - local.get $5 + local.get $4 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 local.get $0 - local.get $5 + local.get $4 i32.const 1 i32.sub - local.tee $5 + local.tee $4 i32.add local.get $1 - local.get $5 + local.get $4 i32.add i32.load8_u i32.store8 @@ -3064,18 +3050,18 @@ end end loop $while-continue|4 - local.get $5 + local.get $4 i32.const 8 i32.ge_u if local.get $0 - local.get $5 + local.get $4 i32.const 8 i32.sub - local.tee $5 + local.tee $4 i32.add local.get $1 - local.get $5 + local.get $4 i32.add i64.load i64.store @@ -3084,16 +3070,16 @@ end end loop $while-continue|5 - local.get $5 + local.get $4 if local.get $0 - local.get $5 + local.get $4 i32.const 1 i32.sub - local.tee $5 + local.tee $4 i32.add local.get $1 - local.get $5 + local.get $4 i32.add i32.load8_u i32.store8 @@ -3108,7 +3094,7 @@ global.set $~lib/memory/__stack_pointer end local.get $6 - local.get $4 + local.get $5 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 @@ -3134,15 +3120,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 local.get $6 i32.load offset=4 - local.tee $0 + local.tee $1 i32.store - local.get $1 + local.get $0 i32.const 1600 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1600 call $~lib/string/String.__eq i32.eqz @@ -3441,40 +3427,40 @@ i32.const 16 i32.const 5 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.store offset=4 - local.get $2 + local.get $0 f64.const 0 f64.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=12 - local.get $2 + local.get $0 i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 1632 i32.store offset=4 - local.get $2 + local.get $0 i32.const 1632 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $2 + local.get $0 f64.const 0 f64.store offset=8 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $2 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -3485,7 +3471,7 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - local.get $2 + local.get $0 i32.load if i32.const 0 @@ -3497,14 +3483,14 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $2 + local.get $0 i32.load offset=4 - local.tee $0 + local.tee $2 i32.store local.get $1 i32.const 1632 i32.store offset=4 - local.get $0 + local.get $2 i32.const 1632 call $~lib/string/String.__eq i32.eqz @@ -3516,7 +3502,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 f64.load offset=8 f64.const 0 f64.ne @@ -3550,73 +3536,73 @@ i32.const 40 i32.const 6 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 1664 i32.store - local.get $2 + local.get $0 i32.const 1664 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $2 + local.get $0 i32.const 1696 i32.store offset=4 - local.get $2 + local.get $0 i32.const 1696 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $2 + local.get $0 i32.const 0 i32.store offset=8 - local.get $2 + local.get $0 i32.const 0 i32.store offset=12 - local.get $2 + local.get $0 i32.const 0 i32.store offset=16 - local.get $2 + local.get $0 i32.const 0 i32.store offset=20 - local.get $2 + local.get $0 i32.const 0 i32.store offset=24 - local.get $2 + local.get $0 i32.const 0 i32.store offset=28 - local.get $2 + local.get $0 i32.const 0 i32.store offset=32 - local.get $2 + local.get $0 i32.const -1 i32.store offset=36 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 - local.get $2 + local.get $0 i32.const 0 i32.store offset=8 - local.get $2 + local.get $0 i32.const 0 i32.store offset=12 - local.get $2 + local.get $0 i32.const 0 i32.store offset=16 - local.get $2 + local.get $0 i32.const 0 i32.store offset=20 - local.get $2 + local.get $0 i32.const 0 i32.store offset=24 - local.get $2 + local.get $0 i32.const 0 i32.store offset=28 - local.get $2 + local.get $0 i32.const 0 i32.store offset=32 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 8 @@ -3631,14 +3617,14 @@ i64.const 0 i64.store local.get $1 - local.get $2 + local.get $0 i32.load - local.tee $0 + local.tee $2 i32.store local.get $1 i32.const 1664 i32.store offset=4 - local.get $0 + local.get $2 i32.const 1664 call $~lib/string/String.__eq i32.eqz @@ -3652,14 +3638,14 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $2 + local.get $0 i32.load offset=4 - local.tee $0 + local.tee $2 i32.store local.get $1 i32.const 1696 i32.store offset=4 - local.get $0 + local.get $2 i32.const 1696 call $~lib/string/String.__eq i32.eqz @@ -3672,11 +3658,11 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -3689,11 +3675,11 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -3706,11 +3692,11 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.load offset=16 - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -3723,11 +3709,11 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.load offset=20 - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -3740,11 +3726,11 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.load offset=24 - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -3757,11 +3743,11 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.load offset=28 - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 call $~lib/string/String.__eq i32.eqz @@ -3773,7 +3759,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.load offset=32 if i32.const 0 @@ -3783,7 +3769,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.load offset=36 i32.const -1 i32.ne diff --git a/tests/compiler/optional-typeparameters.optimized.wat b/tests/compiler/optional-typeparameters.optimized.wat index 5a6eff9ca6..3962bc59cb 100644 --- a/tests/compiler/optional-typeparameters.optimized.wat +++ b/tests/compiler/optional-typeparameters.optimized.wat @@ -182,19 +182,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -219,9 +219,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -229,17 +229,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -527,10 +527,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -542,15 +542,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -580,7 +580,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -616,12 +616,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -639,11 +639,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17872 @@ -651,14 +651,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -668,17 +668,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1151,17 +1151,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1170,19 +1170,19 @@ local.get $1 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1208,26 +1208,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $0 i32.load offset=8 - local.set $0 + local.set $2 local.get $1 global.get $~lib/rt/itcms/white - local.get $2 + local.get $0 i32.or i32.store offset=4 local.get $1 - local.get $0 + local.get $2 i32.store offset=8 - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $2 + local.get $0 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1398,19 +1398,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1420,22 +1420,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17868 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1449,9 +1449,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1461,23 +1461,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1485,7 +1485,7 @@ else i32.const 1440 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1248 @@ -1495,7 +1495,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1444 @@ -1510,28 +1510,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/reexport.optimized.wat b/tests/compiler/reexport.optimized.wat index bc03965c32..6b3f09ea36 100644 --- a/tests/compiler/reexport.optimized.wat +++ b/tests/compiler/reexport.optimized.wat @@ -256,19 +256,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -293,9 +293,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -303,17 +303,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -601,10 +601,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -616,15 +616,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -654,7 +654,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -690,12 +690,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -713,11 +713,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17920 @@ -725,14 +725,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -742,17 +742,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1225,17 +1225,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1244,19 +1244,19 @@ local.get $1 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1282,26 +1282,26 @@ i32.const 4 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $0 i32.load offset=8 - local.set $0 + local.set $2 local.get $1 global.get $~lib/rt/itcms/white - local.get $2 + local.get $0 i32.or i32.store offset=4 local.get $1 - local.get $0 + local.get $2 i32.store offset=8 - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $2 + local.get $0 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1727,19 +1727,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1749,22 +1749,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17916 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1778,9 +1778,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1790,23 +1790,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1814,7 +1814,7 @@ else i32.const 1488 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1296 @@ -1824,7 +1824,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1492 @@ -1839,28 +1839,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/rereexport.optimized.wat b/tests/compiler/rereexport.optimized.wat index 612fed1507..2ee7f3eb0f 100644 --- a/tests/compiler/rereexport.optimized.wat +++ b/tests/compiler/rereexport.optimized.wat @@ -224,19 +224,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -261,9 +261,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -271,17 +271,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -569,10 +569,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -584,15 +584,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -622,7 +622,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -658,12 +658,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -681,11 +681,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17968 @@ -693,14 +693,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -710,17 +710,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1248,7 +1248,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1325,16 +1325,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $0 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1382,7 +1382,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $2 + local.tee $3 i32.const -4 i32.and i32.const 28 @@ -1392,7 +1392,7 @@ i32.ge_u if local.get $0 - local.get $2 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1401,7 +1401,7 @@ local.get $0 i32.const 32 i32.add - local.tee $2 + local.tee $3 local.get $4 i32.const 4 i32.sub @@ -1409,11 +1409,11 @@ i32.or i32.store local.get $1 - local.get $2 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $2 + local.get $3 i32.const -2 i32.and i32.store @@ -1439,26 +1439,26 @@ i32.const 4 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 global.get $~lib/rt/itcms/white - local.get $2 + local.get $1 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1500,7 +1500,7 @@ i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $2 local.get $0 i32.store local.get $0 @@ -1523,19 +1523,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1545,22 +1545,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17956 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1574,9 +1574,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1586,23 +1586,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1610,7 +1610,7 @@ else i32.const 1536 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1296 @@ -1620,7 +1620,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1540 @@ -1635,28 +1635,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-access.optimized.wat b/tests/compiler/resolve-access.optimized.wat index 26e64dbd19..234cc19300 100644 --- a/tests/compiler/resolve-access.optimized.wat +++ b/tests/compiler/resolve-access.optimized.wat @@ -129,7 +129,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -152,7 +152,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -162,23 +162,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -186,7 +186,7 @@ else i32.const 3296 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1280 @@ -196,7 +196,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 3300 @@ -211,27 +211,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -319,19 +319,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -356,9 +356,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -366,17 +366,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -664,10 +664,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -679,15 +679,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -717,7 +717,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -753,12 +753,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -776,11 +776,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 19744 @@ -788,14 +788,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -805,17 +805,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1295,7 +1295,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1321,32 +1321,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1379,7 +1379,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1387,8 +1387,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1405,7 +1405,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1415,13 +1415,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1437,7 +1437,7 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub local.tee $6 i32.const 16 @@ -1447,23 +1447,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 + local.tee $4 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1493,26 +1493,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1527,7 +1527,7 @@ local.get $2 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1539,7 +1539,7 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1554,12 +1554,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1571,7 +1571,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $2 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1586,25 +1586,25 @@ i32.sub i32.const 3 i32.and - local.tee $2 + local.tee $3 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1614,17 +1614,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1640,22 +1640,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 @@ -1666,11 +1666,11 @@ i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1702,7 +1702,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/util/memory/memcpy (param $0 i32) (local $1 i32) @@ -1711,7 +1711,7 @@ (local $4 i32) (local $5 i32) i32.const 8 - local.set $5 + local.set $4 i32.const 1056 local.set $1 loop $while-continue|0 @@ -1719,27 +1719,27 @@ i32.const 3 i32.and i32.const 0 - local.get $5 + local.get $4 select if local.get $0 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $5 + local.get $4 i32.const 1 i32.sub - local.set $5 + local.set $4 br $while-continue|0 end end @@ -1749,7 +1749,7 @@ i32.eqz if loop $while-continue|1 - local.get $5 + local.get $4 i32.const 16 i32.ge_u if @@ -1777,14 +1777,14 @@ i32.const 16 i32.add local.set $0 - local.get $5 + local.get $4 i32.const 16 i32.sub - local.set $5 + local.set $4 br $while-continue|1 end end - local.get $5 + local.get $4 i32.const 8 i32.and if @@ -1805,7 +1805,7 @@ i32.add local.set $0 end - local.get $5 + local.get $4 i32.const 4 i32.and if @@ -1822,7 +1822,7 @@ i32.add local.set $0 end - local.get $5 + local.get $4 i32.const 2 i32.and if @@ -1839,7 +1839,7 @@ i32.add local.set $0 end - local.get $5 + local.get $4 i32.const 1 i32.and if @@ -1850,7 +1850,7 @@ end return end - local.get $5 + local.get $4 i32.const 32 i32.ge_u if @@ -1867,7 +1867,7 @@ end local.get $1 i32.load - local.set $4 + local.set $5 local.get $0 local.get $1 i32.load8_u @@ -1879,27 +1879,27 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $5 + local.get $4 i32.const 3 i32.sub - local.set $5 + local.set $4 loop $while-continue|3 - local.get $5 + local.get $4 i32.const 17 i32.ge_u if @@ -1909,7 +1909,7 @@ local.tee $2 i32.const 8 i32.shl - local.get $4 + local.get $5 i32.const 24 i32.shr_u i32.or @@ -1939,7 +1939,7 @@ local.get $0 local.get $1 i32.load offset=13 - local.tee $4 + local.tee $5 i32.const 8 i32.shl local.get $2 @@ -1955,10 +1955,10 @@ i32.const 16 i32.add local.set $0 - local.get $5 + local.get $4 i32.const 16 i32.sub - local.set $5 + local.set $4 br $while-continue|3 end end @@ -1966,31 +1966,31 @@ end local.get $1 i32.load - local.set $4 + local.set $5 local.get $0 local.get $1 i32.load8_u i32.store8 local.get $0 - local.tee $3 + local.tee $2 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $2 + local.tee $3 i32.const 2 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $5 + local.get $4 i32.const 2 i32.sub - local.set $5 + local.set $4 loop $while-continue|4 - local.get $5 + local.get $4 i32.const 18 i32.ge_u if @@ -2000,7 +2000,7 @@ local.tee $2 i32.const 16 i32.shl - local.get $4 + local.get $5 i32.const 16 i32.shr_u i32.or @@ -2030,7 +2030,7 @@ local.get $0 local.get $1 i32.load offset=14 - local.tee $4 + local.tee $5 i32.const 16 i32.shl local.get $2 @@ -2046,10 +2046,10 @@ i32.const 16 i32.add local.set $0 - local.get $5 + local.get $4 i32.const 16 i32.sub - local.set $5 + local.set $4 br $while-continue|4 end end @@ -2057,27 +2057,27 @@ end local.get $1 i32.load - local.set $4 + local.set $5 local.get $0 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $5 + local.get $4 i32.const 1 i32.sub - local.set $5 + local.set $4 loop $while-continue|5 - local.get $5 + local.get $4 i32.const 19 i32.ge_u if @@ -2087,7 +2087,7 @@ local.tee $2 i32.const 24 i32.shl - local.get $4 + local.get $5 i32.const 8 i32.shr_u i32.or @@ -2117,7 +2117,7 @@ local.get $0 local.get $1 i32.load offset=15 - local.tee $4 + local.tee $5 i32.const 24 i32.shl local.get $2 @@ -2133,16 +2133,16 @@ i32.const 16 i32.add local.set $0 - local.get $5 + local.get $4 i32.const 16 i32.sub - local.set $5 + local.set $4 br $while-continue|5 end end end end - local.get $5 + local.get $4 i32.const 16 i32.and if @@ -2153,141 +2153,129 @@ local.get $0 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add - local.set $2 + local.set $3 local.get $0 local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $2 i32.const 2 i32.add - local.set $3 - local.get $2 - local.tee $0 + local.set $0 + local.get $3 i32.const 2 i32.add - local.set $2 - local.get $1 - local.get $0 + local.set $1 + local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - local.get $2 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $2 - local.tee $0 + local.get $0 i32.const 2 i32.add local.set $2 local.get $1 + i32.const 2 + i32.add + local.set $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $2 i32.const 2 i32.add - local.set $3 - local.get $2 - local.tee $0 + local.set $0 + local.get $3 i32.const 2 i32.add - local.set $2 - local.get $1 - local.get $0 + local.set $1 + local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - local.get $2 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $2 - local.tee $0 + local.get $0 i32.const 2 i32.add local.set $2 local.get $1 + i32.const 2 + i32.add + local.set $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $2 i32.const 2 i32.add - local.set $3 - local.get $2 - local.tee $0 + local.set $0 + local.get $3 i32.const 2 i32.add - local.set $2 - local.get $1 - local.get $0 + local.set $1 + local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - local.get $2 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $2 - local.tee $0 + local.get $0 i32.const 2 i32.add local.set $2 local.get $1 + i32.const 2 + i32.add + local.set $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $0 - local.get $2 + local.get $3 i32.const 2 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $5 + local.get $4 i32.const 8 i32.and if @@ -2298,69 +2286,65 @@ local.get $0 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add - local.set $2 + local.set $3 local.get $0 local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $2 i32.const 2 i32.add - local.set $3 - local.get $2 - local.tee $0 + local.set $0 + local.get $3 i32.const 2 i32.add - local.set $2 - local.get $1 - local.get $0 + local.set $1 + local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - local.get $2 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $2 - local.tee $0 + local.get $0 i32.const 2 i32.add local.set $2 local.get $1 + i32.const 2 + i32.add + local.set $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $0 - local.get $2 + local.get $3 i32.const 2 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $5 + local.get $4 i32.const 4 i32.and if @@ -2371,33 +2355,33 @@ local.get $0 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add - local.set $2 + local.set $3 local.get $0 local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $0 - local.get $2 + local.get $3 i32.const 2 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $5 + local.get $4 i32.const 2 i32.and if @@ -2406,21 +2390,21 @@ i32.load8_u i32.store8 local.get $0 - local.tee $3 + local.tee $2 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $2 + local.tee $3 i32.const 2 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $5 + local.get $4 i32.const 1 i32.and if @@ -2566,7 +2550,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1728 - local.set $1 + local.set $2 br $__inlined_func$~lib/util/number/utoa64 end local.get $0 @@ -2576,48 +2560,48 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.wrap_i64 - local.tee $2 local.tee $1 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $2 i32.const 100000000 i32.ge_u i32.add @@ -2628,10 +2612,10 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 local.get $2 + local.get $1 local.get $3 call $~lib/util/number/utoa32_dec_lut else @@ -2686,25 +2670,25 @@ i32.add end end - local.tee $2 + local.tee $1 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store loop $while-continue|0 local.get $0 i64.const 100000000 i64.ge_u if - local.get $2 + local.get $1 i32.const 4 i32.sub - local.tee $2 + local.tee $3 i32.const 1 i32.shl - local.get $1 + local.get $2 i32.add local.get $0 local.get $0 @@ -2715,10 +2699,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $3 + local.tee $4 i32.const 10000 i32.rem_u - local.tee $4 + local.tee $1 i32.const 100 i32.div_u i32.const 2 @@ -2726,7 +2710,7 @@ i32.const 1740 i32.add i64.load32_u - local.get $4 + local.get $1 i32.const 100 i32.rem_u i32.const 2 @@ -2738,15 +2722,15 @@ i64.shl i64.or i64.store - local.get $2 + local.get $3 i32.const 4 i32.sub - local.tee $2 + local.tee $1 i32.const 1 i32.shl - local.get $1 + local.get $2 i32.add - local.get $3 + local.get $4 i32.const 10000 i32.div_u local.tee $3 @@ -2772,10 +2756,10 @@ br $while-continue|0 end end - local.get $1 + local.get $2 local.get $0 i32.wrap_i64 - local.get $2 + local.get $1 call $~lib/util/number/utoa32_dec_lut end global.get $~lib/memory/__stack_pointer @@ -2783,7 +2767,7 @@ i32.add global.set $~lib/memory/__stack_pointer end - local.get $1 + local.get $2 ) (func $~lib/rt/__visit_members (param $0 i32) block $folding-inner0 @@ -3075,17 +3059,16 @@ end local.get $7 local.get $4 - local.tee $0 i32.store i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 - local.get $0 + local.tee $0 + local.get $4 i32.store - local.get $0 + local.get $4 if - local.get $1 + local.get $0 i32.eqz if i32.const 0 @@ -3096,50 +3079,50 @@ unreachable end global.get $~lib/rt/itcms/white - local.get $0 + local.get $4 i32.const 20 i32.sub - local.tee $2 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $2 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $2 + local.get $1 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $2 i32.const 3 i32.eq i32.and if - local.get $2 + local.get $1 call $~lib/rt/itcms/Object#makeGray end end end end - local.get $1 local.get $0 + local.get $4 i32.store offset=4 - local.get $1 + local.get $0 i32.const 8 i32.store offset=8 - local.get $1 + local.get $0 i32.const 1 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -3147,9 +3130,9 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $6 - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 i32.load offset=12 i32.eqz if @@ -3160,7 +3143,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=4 i64.load call $~lib/number/U64#toString diff --git a/tests/compiler/resolve-binary.optimized.wat b/tests/compiler/resolve-binary.optimized.wat index 638264008e..8f15dc1791 100644 --- a/tests/compiler/resolve-binary.optimized.wat +++ b/tests/compiler/resolve-binary.optimized.wat @@ -328,14 +328,14 @@ if local.get $2 i32.load16_u - local.tee $3 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $3 i32.ne if - local.get $3 local.get $4 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -514,19 +514,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -551,9 +551,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -561,17 +561,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -859,10 +859,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -874,15 +874,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -912,7 +912,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -948,12 +948,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -971,11 +971,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 27680 @@ -983,14 +983,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -1000,17 +1000,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1490,7 +1490,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1516,32 +1516,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1574,7 +1574,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1582,8 +1582,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1600,7 +1600,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1610,13 +1610,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1632,7 +1632,7 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub local.tee $6 i32.const 16 @@ -1642,23 +1642,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 + local.tee $4 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1688,26 +1688,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1722,7 +1722,7 @@ local.get $2 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1734,7 +1734,7 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1749,12 +1749,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1766,7 +1766,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $2 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1781,25 +1781,25 @@ i32.sub i32.const 3 i32.and - local.tee $2 + local.tee $3 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1809,17 +1809,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1835,22 +1835,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 @@ -1861,11 +1861,11 @@ i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1897,7 +1897,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/util/number/utoa32_dec_lut (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -3004,115 +3004,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3144,43 +3134,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3471,17 +3459,17 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 21 i32.le_s local.get $0 - local.get $3 + local.get $2 i32.le_s i32.and if (result i32) loop $for-loop|0 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -3498,26 +3486,26 @@ br $for-loop|0 end end - local.get $3 + local.get $2 i32.const 1 i32.shl i32.const 9760 i32.add i32.const 3145774 i32.store - local.get $3 + local.get $2 i32.const 2 i32.add else - local.get $3 + local.get $2 i32.const 21 i32.le_s - local.get $3 + local.get $2 i32.const 0 i32.gt_s i32.and if (result i32) - local.get $3 + local.get $2 i32.const 1 i32.shl i32.const 9760 @@ -3539,16 +3527,16 @@ i32.const 1 i32.add else - local.get $3 + local.get $2 i32.const 0 i32.le_s - local.get $3 + local.get $2 i32.const -6 i32.gt_s i32.and if (result i32) i32.const 2 - local.get $3 + local.get $2 i32.sub local.tee $2 i32.const 1 @@ -3595,13 +3583,13 @@ i32.const 9762 i32.const 101 i32.store16 - local.get $3 + local.get $2 i32.const 1 i32.sub local.tee $0 i32.const 0 i32.lt_s - local.tee $2 + local.tee $1 if i32.const 0 local.get $0 @@ -3609,56 +3597,56 @@ local.set $0 end local.get $0 - local.tee $1 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $2 i32.const 9764 local.get $0 - local.get $1 + local.get $2 i32.const 1 i32.add local.tee $0 @@ -3666,7 +3654,7 @@ i32.const 9764 i32.const 45 i32.const 43 - local.get $2 + local.get $1 select i32.store16 local.get $0 @@ -3688,87 +3676,87 @@ local.get $1 i32.const 9760 i32.add - local.tee $2 + local.tee $1 i32.const 101 i32.store16 offset=2 - local.get $2 + local.get $1 i32.const 4 i32.add - local.get $3 + local.get $2 i32.const 1 i32.sub - local.tee $1 + local.tee $2 i32.const 0 i32.lt_s local.tee $4 if i32.const 0 - local.get $1 + local.get $2 i32.sub - local.set $1 + local.set $2 end - local.get $1 - local.tee $3 + local.get $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 100 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $3 + local.get $5 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $3 + local.get $5 i32.const 1000 i32.ge_u i32.add end else - local.get $3 + local.get $5 i32.const 10000000 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $3 + local.get $5 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $3 + local.get $5 i32.const 100000000 i32.ge_u i32.add end end - local.set $3 - local.get $1 - local.get $3 + local.set $5 + local.get $2 + local.get $5 i32.const 1 i32.add - local.tee $1 + local.tee $2 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $1 i32.const 45 i32.const 43 local.get $4 select i32.store16 offset=4 local.get $0 - local.get $1 + local.get $2 i32.add i32.const 2 i32.add @@ -3779,11 +3767,11 @@ ) (func $~lib/number/F64#toString (result i32) (local $0 i64) - (local $1 i64) - (local $2 i64) + (local $1 i32) + (local $2 i32) (local $3 i64) - (local $4 i32) - (local $5 i32) + (local $4 i64) + (local $5 i64) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -3811,36 +3799,36 @@ i32.load16_s global.set $~lib/util/number/_exp_pow global.get $~lib/util/number/_frc_pow - local.tee $1 + local.tee $3 i64.const 4294967295 i64.and - local.tee $0 + local.tee $4 i64.const 31 i64.shl - local.set $2 - local.get $1 + local.set $0 + local.get $3 i64.const 32 i64.shr_u - local.tee $1 + local.tee $3 i64.const 31 i64.shl - local.get $0 + local.get $4 i64.const 31 i64.shl - local.get $0 + local.get $4 i64.const 10 i64.shl i64.const 32 i64.shr_u i64.add - local.tee $3 + local.tee $5 i64.const 32 i64.shr_u i64.add - local.get $3 + local.get $5 i64.const 4294967295 i64.and - local.get $1 + local.get $3 i64.const 10 i64.shl i64.add @@ -3851,15 +3839,15 @@ i64.add i64.const 1 i64.sub - local.set $3 - local.get $1 + local.set $5 + local.get $3 i64.const 31 i64.shl - local.get $2 + local.get $0 i64.const 32 i64.shr_u i64.add - local.get $2 + local.get $0 i64.const 4294967295 i64.and i64.const 2147483647 @@ -3867,18 +3855,18 @@ i64.const 32 i64.shr_u i64.add - local.get $3 + local.get $5 global.get $~lib/util/number/_exp_pow i32.const 3 i32.add + local.get $5 local.get $3 - local.get $1 i64.const 2147483647 i64.mul - local.get $0 + local.get $4 i64.const 2147483647 i64.mul - local.get $0 + local.get $4 i64.const 4294966784 i64.mul i64.const 32 @@ -3888,7 +3876,7 @@ i64.const 32 i64.shr_u i64.add - local.get $1 + local.get $3 i64.const 4294966784 i64.mul local.get $0 @@ -3908,22 +3896,22 @@ call $~lib/util/number/prettify i32.const 1 i32.shl - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.const 1 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $2 i32.store - local.get $5 + local.get $2 i32.const 9760 - local.get $4 + local.get $1 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $2 ) (func $~lib/rt/__visit_members (param $0 i32) block $invalid @@ -5359,19 +5347,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -5381,22 +5369,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 27676 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -5410,9 +5398,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -5422,23 +5410,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -5446,7 +5434,7 @@ else i32.const 11248 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1632 @@ -5456,7 +5444,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 11252 @@ -5471,28 +5459,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-elementaccess.optimized.wat b/tests/compiler/resolve-elementaccess.optimized.wat index ac76a7a9fd..2cf4588e10 100644 --- a/tests/compiler/resolve-elementaccess.optimized.wat +++ b/tests/compiler/resolve-elementaccess.optimized.wat @@ -187,7 +187,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -210,7 +210,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -220,23 +220,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -244,7 +244,7 @@ else i32.const 4800 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1360 @@ -254,7 +254,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 4804 @@ -269,27 +269,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -377,19 +377,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -414,9 +414,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -424,17 +424,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -722,10 +722,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -737,15 +737,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -775,7 +775,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -811,12 +811,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -834,11 +834,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 21248 @@ -846,14 +846,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -863,17 +863,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1351,14 +1351,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1368,17 +1368,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1394,22 +1394,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1420,11 +1420,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1529,7 +1529,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1555,32 +1555,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1596,16 +1596,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1613,7 +1613,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1621,8 +1621,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1639,7 +1639,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -1649,13 +1649,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1668,40 +1668,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -1727,26 +1727,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2696,115 +2696,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 - i32.const 2 - i32.add - local.set $1 local.get $0 i32.const 2 i32.add - local.set $4 - local.get $3 + local.set $3 + local.get $1 + i32.const 2 + i32.add + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2836,43 +2826,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3391,83 +3379,82 @@ i32.const 101 i32.store16 offset=2 local.get $0 - local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $1 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $0 + local.get $1 i32.sub - local.set $0 + local.set $1 end - local.get $0 - local.tee $2 + local.get $1 + local.tee $4 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $4 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $4 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $4 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $4 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $4 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 - local.get $0 - local.get $2 + local.set $4 + local.get $1 + local.get $4 i32.const 1 i32.add - local.tee $0 + local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $0 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.add else @@ -3490,87 +3477,87 @@ local.get $0 local.get $2 i32.add - local.tee $2 + local.tee $0 i32.const 101 i32.store16 offset=2 - local.get $2 + local.get $0 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $2 i32.const 0 i32.lt_s - local.tee $4 + local.tee $3 if i32.const 0 - local.get $0 + local.get $2 i32.sub - local.set $0 + local.set $2 end - local.get $0 - local.tee $3 + local.get $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 100 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $3 + local.get $5 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $3 + local.get $5 i32.const 1000 i32.ge_u i32.add end else - local.get $3 + local.get $5 i32.const 10000000 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $3 + local.get $5 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $3 + local.get $5 i32.const 100000000 i32.ge_u i32.add end end - local.set $3 - local.get $0 - local.get $3 + local.set $5 + local.get $2 + local.get $5 i32.const 1 i32.add - local.tee $0 + local.tee $2 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $0 i32.const 45 i32.const 43 - local.get $4 + local.get $3 select i32.store16 offset=4 - local.get $0 local.get $1 + local.get $2 i32.add i32.const 2 i32.add @@ -3580,25 +3567,24 @@ end ) (func $~lib/util/number/dtoa_core (param $0 f64) (result i32) - (local $1 i32) - (local $2 i64) - (local $3 i32) + (local $1 i64) + (local $2 i32) + (local $3 i64) (local $4 i64) (local $5 i64) (local $6 i64) - (local $7 i64) - (local $8 i64) - (local $9 i64) - (local $10 i32) - (local $11 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i64) + (local $11 i64) (local $12 i64) (local $13 i64) (local $14 i64) - (local $15 i64) local.get $0 f64.const 0 f64.lt - local.tee $1 + local.tee $2 if (result f64) i32.const 1776 i32.const 45 @@ -3609,72 +3595,72 @@ local.get $0 end i64.reinterpret_f64 - local.tee $2 + local.tee $1 i64.const 9218868437227405312 i64.and i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $3 + local.tee $7 i32.const 1 - local.get $3 + local.get $7 select i32.const 1075 i32.sub - local.tee $10 + local.tee $8 i32.const 1 i32.sub - local.get $2 + local.get $1 i64.const 4503599627370495 i64.and - local.get $3 + local.get $7 i32.const 0 i32.ne i64.extend_i32_u i64.const 52 i64.shl i64.add - local.tee $2 + local.tee $1 i64.const 1 i64.shl i64.const 1 i64.add - local.tee $4 + local.tee $3 i64.clz i32.wrap_i64 - local.tee $11 + local.tee $7 i32.sub - local.set $3 - local.get $4 - local.get $11 + local.set $9 + local.get $3 + local.get $7 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus - local.get $2 - local.get $2 + local.get $1 + local.get $1 i64.const 4503599627370496 i64.eq i32.const 1 i32.add - local.tee $11 + local.tee $7 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $10 - local.get $11 + local.get $8 + local.get $7 i32.sub - local.get $3 + local.get $9 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $3 + local.get $9 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $3 + local.tee $7 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -3683,9 +3669,9 @@ f64.add local.tee $0 i32.trunc_f64_s - local.tee $10 + local.tee $8 local.get $0 - local.get $10 + local.get $8 f64.convert_i32_s f64.ne i32.add @@ -3693,106 +3679,106 @@ i32.shr_s i32.const 1 i32.add - local.tee $10 + local.tee $8 i32.const 3 i32.shl - local.tee $11 + local.tee $9 i32.sub global.set $~lib/util/number/_K - local.get $11 + local.get $9 i32.const 1832 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $10 + local.get $8 i32.const 1 i32.shl i32.const 2528 i32.add i32.load16_s global.set $~lib/util/number/_exp_pow - local.get $2 - local.get $2 + local.get $1 + local.get $1 i64.clz i64.shl - local.tee $2 + local.tee $1 i64.const 4294967295 i64.and - local.set $4 - local.get $2 + local.set $10 + local.get $1 i64.const 32 i64.shr_u - local.tee $12 + local.tee $11 global.get $~lib/util/number/_frc_pow - local.tee $13 + local.tee $4 i64.const 4294967295 i64.and - local.tee $2 - local.tee $5 + local.tee $12 + local.tee $1 i64.mul - local.get $4 - local.get $5 + local.get $1 + local.get $10 i64.mul i64.const 32 i64.shr_u i64.add - local.set $5 + local.set $13 global.get $~lib/util/number/_frc_plus - local.tee $7 + local.tee $3 i64.const 4294967295 i64.and - local.set $6 - local.get $7 + local.set $1 + local.get $3 i64.const 32 i64.shr_u - local.tee $14 - local.get $2 + local.tee $5 + local.get $12 i64.mul - local.get $2 - local.get $6 + local.get $1 + local.get $12 i64.mul i64.const 32 i64.shr_u i64.add - local.set $7 + local.set $14 global.get $~lib/util/number/_frc_minus - local.tee $9 + local.tee $6 i64.const 4294967295 i64.and - local.set $8 - local.get $9 + local.set $3 + local.get $6 i64.const 32 i64.shr_u - local.tee $15 - local.get $2 + local.tee $6 + local.get $12 i64.mul - local.get $2 - local.get $8 + local.get $3 + local.get $12 i64.mul i64.const 32 i64.shr_u i64.add - local.set $9 - local.get $1 + local.set $12 + local.get $2 i32.const 1 i32.shl i32.const 1776 i32.add - local.get $12 - local.get $13 + local.get $11 + local.get $4 i64.const 32 i64.shr_u - local.tee $2 - local.tee $12 + local.tee $4 + local.tee $11 i64.mul - local.get $5 + local.get $13 i64.const 32 i64.shr_u i64.add - local.get $4 - local.get $12 + local.get $10 + local.get $11 i64.mul - local.get $5 + local.get $13 i64.const 4294967295 i64.and i64.add @@ -3801,17 +3787,17 @@ i64.const 32 i64.shr_u i64.add - local.get $2 - local.get $14 + local.get $4 + local.get $5 i64.mul - local.get $7 + local.get $14 i64.const 32 i64.shr_u i64.add - local.get $2 - local.get $6 + local.get $1 + local.get $4 i64.mul - local.get $7 + local.get $14 i64.const 4294967295 i64.and i64.add @@ -3822,24 +3808,24 @@ i64.add i64.const 1 i64.sub - local.tee $4 + local.tee $1 global.get $~lib/util/number/_exp_pow - local.get $3 + local.get $7 i32.add i32.const -64 i32.sub + local.get $1 local.get $4 - local.get $2 - local.get $15 + local.get $6 i64.mul - local.get $9 + local.get $12 i64.const 32 i64.shr_u i64.add - local.get $2 - local.get $8 + local.get $3 + local.get $4 i64.mul - local.get $9 + local.get $12 i64.const 4294967295 i64.and i64.add @@ -3851,13 +3837,13 @@ i64.const 1 i64.add i64.sub - local.get $1 + local.get $2 call $~lib/util/number/genDigits - local.get $1 + local.get $2 i32.sub global.get $~lib/util/number/_K call $~lib/util/number/prettify - local.get $1 + local.get $2 i32.add ) (func $~lib/number/F32#toString (param $0 f32) (result i32) @@ -4040,14 +4026,14 @@ if local.get $2 i32.load16_u - local.tee $3 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $3 i32.ne if - local.get $3 local.get $4 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -4388,22 +4374,22 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $resolve-elementaccess/arr local.tee $0 + global.get $resolve-elementaccess/arr + local.tee $1 i32.store offset=12 - local.get $1 local.get $0 + local.get $1 i32.store offset=8 - local.get $0 + local.get $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 10 f32.add call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Float32Array#__get call $~lib/number/F32#toString @@ -4427,16 +4413,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $resolve-elementaccess/arr local.tee $0 + global.get $resolve-elementaccess/arr + local.tee $1 i32.store - local.get $1 local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 10 @@ -4588,22 +4574,22 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $resolve-elementaccess/buf local.tee $0 + global.get $resolve-elementaccess/buf + local.tee $1 i32.store offset=12 - local.get $1 local.get $0 + local.get $1 i32.store offset=8 - local.get $0 + local.get $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 10 i32.add call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8Array#__get call $~lib/number/U8#toString @@ -4627,16 +4613,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $resolve-elementaccess/buf local.tee $0 + global.get $resolve-elementaccess/buf + local.tee $1 i32.store - local.get $1 local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 10 @@ -4730,18 +4716,18 @@ i32.const 2 local.get $1 i32.shl - local.tee $2 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $4 i32.store offset=4 + local.get $4 local.get $1 - local.get $2 call $~lib/memory/memory.fill local.get $0 - local.get $1 + local.get $4 i32.store - local.get $1 + local.get $4 if local.get $0 i32.eqz @@ -4754,10 +4740,10 @@ unreachable end global.get $~lib/rt/itcms/white - local.get $1 + local.get $4 i32.const 20 i32.sub - local.tee $3 + local.tee $2 i32.load offset=4 i32.const 3 i32.and @@ -4769,33 +4755,33 @@ i32.load offset=4 i32.const 3 i32.and - local.tee $4 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $2 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $4 + local.get $3 i32.const 3 i32.eq i32.and if - local.get $3 + local.get $2 call $~lib/rt/itcms/Object#makeGray end end end end local.get $0 - local.get $1 + local.get $4 i32.store offset=4 local.get $0 - local.get $2 + local.get $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 diff --git a/tests/compiler/resolve-function-expression.optimized.wat b/tests/compiler/resolve-function-expression.optimized.wat index bd2b16c818..31b856dabd 100644 --- a/tests/compiler/resolve-function-expression.optimized.wat +++ b/tests/compiler/resolve-function-expression.optimized.wat @@ -204,19 +204,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -241,9 +241,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -251,17 +251,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -549,10 +549,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -564,15 +564,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -602,7 +602,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -638,12 +638,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -661,11 +661,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 19856 @@ -673,14 +673,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -690,17 +690,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1180,7 +1180,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 local.get $1 i32.const 1073741820 i32.gt_u @@ -1206,32 +1206,32 @@ i32.const 4 i32.sub end - local.tee $2 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size local.tee $1 - local.get $2 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $2 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $2 + local.get $3 i32.add else - local.get $2 + local.get $3 end i32.const 4 - local.get $3 + local.get $2 i32.load offset=1568 local.get $1 i32.const 16 @@ -1264,7 +1264,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $1 i32.const 16 i32.shl @@ -1272,8 +1272,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $2 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1290,7 +1290,7 @@ i32.load i32.const -4 i32.and - local.get $2 + local.get $3 i32.lt_u if i32.const 0 @@ -1300,13 +1300,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load local.set $4 - local.get $2 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1322,7 +1322,7 @@ local.get $4 i32.const -4 i32.and - local.get $2 + local.get $3 i32.sub local.tee $5 i32.const 16 @@ -1332,23 +1332,23 @@ local.get $4 i32.const 2 i32.and - local.get $2 + local.get $3 i32.or i32.store - local.get $2 + local.get $3 local.get $1 i32.const 4 i32.add i32.add - local.tee $2 + local.tee $3 local.get $5 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $2 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $1 @@ -1378,26 +1378,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $1 global.get $~lib/rt/itcms/white - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $3 + local.get $2 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1412,7 +1412,7 @@ local.get $1 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1424,7 +1424,7 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1439,12 +1439,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1456,7 +1456,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $2 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1471,25 +1471,25 @@ i32.sub i32.const 3 i32.and - local.tee $2 + local.tee $3 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1499,17 +1499,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1525,22 +1525,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 @@ -1551,11 +1551,11 @@ i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1587,7 +1587,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/rt/__visit_members (param $0 i32) block $invalid @@ -2050,19 +2050,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -2072,22 +2072,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 19844 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -2101,9 +2101,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2113,23 +2113,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -2137,7 +2137,7 @@ else i32.const 3424 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1648 @@ -2147,7 +2147,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 3428 @@ -2162,28 +2162,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-nested.optimized.wat b/tests/compiler/resolve-nested.optimized.wat index 34ef58cfbf..b0e9297adc 100644 --- a/tests/compiler/resolve-nested.optimized.wat +++ b/tests/compiler/resolve-nested.optimized.wat @@ -173,19 +173,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -210,9 +210,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -220,17 +220,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -518,10 +518,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -533,15 +533,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -571,7 +571,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -607,12 +607,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -630,11 +630,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17888 @@ -642,14 +642,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -659,17 +659,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1142,17 +1142,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1161,19 +1161,19 @@ local.get $1 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1199,26 +1199,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $0 i32.load offset=8 - local.set $0 + local.set $2 local.get $1 global.get $~lib/rt/itcms/white - local.get $2 + local.get $0 i32.or i32.store offset=4 local.get $1 - local.get $0 + local.get $2 i32.store offset=8 - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $2 + local.get $0 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1531,19 +1531,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1553,22 +1553,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17876 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1582,9 +1582,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1594,23 +1594,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1618,7 +1618,7 @@ else i32.const 1440 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1248 @@ -1628,7 +1628,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1444 @@ -1643,28 +1643,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-new.optimized.wat b/tests/compiler/resolve-new.optimized.wat index 5a067e3028..46a25983f2 100644 --- a/tests/compiler/resolve-new.optimized.wat +++ b/tests/compiler/resolve-new.optimized.wat @@ -172,19 +172,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -209,9 +209,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -219,17 +219,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -517,10 +517,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -532,15 +532,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -570,7 +570,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -606,12 +606,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -629,11 +629,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17872 @@ -641,14 +641,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -658,17 +658,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1123,7 +1123,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1200,16 +1200,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $0 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1257,7 +1257,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $2 + local.tee $3 i32.const -4 i32.and i32.const 28 @@ -1267,7 +1267,7 @@ i32.ge_u if local.get $0 - local.get $2 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1276,7 +1276,7 @@ local.get $0 i32.const 32 i32.add - local.tee $2 + local.tee $3 local.get $4 i32.const 4 i32.sub @@ -1284,11 +1284,11 @@ i32.or i32.store local.get $1 - local.get $2 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $2 + local.get $3 i32.const -2 i32.and i32.store @@ -1314,26 +1314,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 global.get $~lib/rt/itcms/white - local.get $2 + local.get $1 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1345,7 +1345,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $3 + local.get $2 local.get $0 i32.const 20 i32.add @@ -1365,19 +1365,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1387,22 +1387,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17860 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1416,9 +1416,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1428,23 +1428,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1452,7 +1452,7 @@ else i32.const 1440 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1248 @@ -1462,7 +1462,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1444 @@ -1477,28 +1477,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-propertyaccess.optimized.wat b/tests/compiler/resolve-propertyaccess.optimized.wat index 71304dc61b..27ab99a740 100644 --- a/tests/compiler/resolve-propertyaccess.optimized.wat +++ b/tests/compiler/resolve-propertyaccess.optimized.wat @@ -204,19 +204,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -241,9 +241,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -251,17 +251,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -549,10 +549,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -564,15 +564,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -602,7 +602,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -638,12 +638,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -661,11 +661,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 20112 @@ -673,14 +673,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -690,17 +690,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1180,7 +1180,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1206,32 +1206,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1264,7 +1264,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1272,8 +1272,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1290,7 +1290,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1300,13 +1300,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1322,7 +1322,7 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub local.tee $6 i32.const 16 @@ -1332,23 +1332,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 + local.tee $4 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1378,26 +1378,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1412,7 +1412,7 @@ local.get $2 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1424,7 +1424,7 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1439,12 +1439,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1456,7 +1456,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $2 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1471,25 +1471,25 @@ i32.sub i32.const 3 i32.and - local.tee $2 + local.tee $3 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1499,17 +1499,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1525,22 +1525,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 @@ -1551,11 +1551,11 @@ i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1587,7 +1587,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/number/I32#toString (param $0 i32) (result i32) (local $1 i32) @@ -1895,14 +1895,14 @@ if local.get $2 i32.load16_u - local.tee $3 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $3 i32.ne if - local.get $3 local.get $4 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2321,19 +2321,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -2343,22 +2343,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 20100 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -2372,9 +2372,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2384,23 +2384,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -2408,7 +2408,7 @@ else i32.const 3680 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1472 @@ -2418,7 +2418,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 3684 @@ -2433,28 +2433,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-ternary.optimized.wat b/tests/compiler/resolve-ternary.optimized.wat index f982e9f3e0..e45ae6420b 100644 --- a/tests/compiler/resolve-ternary.optimized.wat +++ b/tests/compiler/resolve-ternary.optimized.wat @@ -208,19 +208,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -245,9 +245,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -255,17 +255,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -553,10 +553,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -568,15 +568,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -606,7 +606,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -642,12 +642,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -665,11 +665,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 21040 @@ -677,14 +677,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -694,17 +694,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1184,7 +1184,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 local.get $1 i32.const 1073741820 i32.gt_u @@ -1210,32 +1210,32 @@ i32.const 4 i32.sub end - local.tee $2 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size local.tee $1 - local.get $2 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $2 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $2 + local.get $3 i32.add else - local.get $2 + local.get $3 end i32.const 4 - local.get $3 + local.get $2 i32.load offset=1568 local.get $1 i32.const 16 @@ -1268,7 +1268,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $1 i32.const 16 i32.shl @@ -1276,8 +1276,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $2 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1294,7 +1294,7 @@ i32.load i32.const -4 i32.and - local.get $2 + local.get $3 i32.lt_u if i32.const 0 @@ -1304,13 +1304,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load local.set $4 - local.get $2 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1326,7 +1326,7 @@ local.get $4 i32.const -4 i32.and - local.get $2 + local.get $3 i32.sub local.tee $5 i32.const 16 @@ -1336,23 +1336,23 @@ local.get $4 i32.const 2 i32.and - local.get $2 + local.get $3 i32.or i32.store - local.get $2 + local.get $3 local.get $1 i32.const 4 i32.add i32.add - local.tee $2 + local.tee $3 local.get $5 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $2 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $1 @@ -1382,26 +1382,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $1 global.get $~lib/rt/itcms/white - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $1 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $3 + local.get $2 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1416,7 +1416,7 @@ local.get $1 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1428,7 +1428,7 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1443,12 +1443,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1460,7 +1460,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $2 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1475,25 +1475,25 @@ i32.sub i32.const 3 i32.and - local.tee $2 + local.tee $3 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1503,17 +1503,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1529,22 +1529,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 @@ -1555,11 +1555,11 @@ i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1591,7 +1591,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/util/number/utoa32_dec_lut (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -1787,14 +1787,14 @@ if local.get $2 i32.load16_u - local.tee $3 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $3 i32.ne if - local.get $3 local.get $4 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2697,115 +2697,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2837,43 +2827,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3164,17 +3152,17 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 21 i32.le_s local.get $0 - local.get $3 + local.get $2 i32.le_s i32.and if (result i32) loop $for-loop|0 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -3191,26 +3179,26 @@ br $for-loop|0 end end - local.get $3 + local.get $2 i32.const 1 i32.shl i32.const 3472 i32.add i32.const 3145774 i32.store - local.get $3 + local.get $2 i32.const 2 i32.add else - local.get $3 + local.get $2 i32.const 21 i32.le_s - local.get $3 + local.get $2 i32.const 0 i32.gt_s i32.and if (result i32) - local.get $3 + local.get $2 i32.const 1 i32.shl i32.const 3472 @@ -3232,16 +3220,16 @@ i32.const 1 i32.add else - local.get $3 + local.get $2 i32.const 0 i32.le_s - local.get $3 + local.get $2 i32.const -6 i32.gt_s i32.and if (result i32) i32.const 2 - local.get $3 + local.get $2 i32.sub local.tee $2 i32.const 1 @@ -3288,13 +3276,13 @@ i32.const 3474 i32.const 101 i32.store16 - local.get $3 + local.get $2 i32.const 1 i32.sub local.tee $0 i32.const 0 i32.lt_s - local.tee $2 + local.tee $1 if i32.const 0 local.get $0 @@ -3302,56 +3290,56 @@ local.set $0 end local.get $0 - local.tee $1 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $2 i32.const 3476 local.get $0 - local.get $1 + local.get $2 i32.const 1 i32.add local.tee $0 @@ -3359,7 +3347,7 @@ i32.const 3476 i32.const 45 i32.const 43 - local.get $2 + local.get $1 select i32.store16 local.get $0 @@ -3381,87 +3369,87 @@ local.get $1 i32.const 3472 i32.add - local.tee $2 + local.tee $1 i32.const 101 i32.store16 offset=2 - local.get $2 + local.get $1 i32.const 4 i32.add - local.get $3 + local.get $2 i32.const 1 i32.sub - local.tee $1 + local.tee $2 i32.const 0 i32.lt_s local.tee $4 if i32.const 0 - local.get $1 + local.get $2 i32.sub - local.set $1 + local.set $2 end - local.get $1 - local.tee $3 + local.get $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 100 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $3 + local.get $5 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $3 + local.get $5 i32.const 1000 i32.ge_u i32.add end else - local.get $3 + local.get $5 i32.const 10000000 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $3 + local.get $5 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $3 + local.get $5 i32.const 100000000 i32.ge_u i32.add end end - local.set $3 - local.get $1 - local.get $3 + local.set $5 + local.get $2 + local.get $5 i32.const 1 i32.add - local.tee $1 + local.tee $2 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $1 i32.const 45 i32.const 43 local.get $4 select i32.store16 offset=4 local.get $0 - local.get $1 + local.get $2 i32.add i32.const 2 i32.add @@ -3533,9 +3521,9 @@ (local $0 i32) (local $1 i64) (local $2 i64) - (local $3 i64) + (local $3 i32) (local $4 i64) - (local $5 i32) + (local $5 i64) (local $6 i64) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -3608,10 +3596,10 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $3 local.get $0 i32.store - local.get $5 + local.get $3 i32.const 3232 i32.store offset=4 local.get $0 @@ -3649,33 +3637,33 @@ local.tee $2 i64.const 4294967295 i64.and - local.tee $1 + local.tee $4 i64.const 31 i64.shl - local.tee $4 - local.set $3 + local.tee $5 + local.set $1 local.get $2 i64.const 32 i64.shr_u - local.tee $2 + local.tee $6 i64.const 31 i64.shl - local.tee $6 - local.get $1 + local.tee $2 + local.get $4 i64.const 10 i64.shl i64.const 32 i64.shr_u - local.get $4 + local.get $5 i64.add - local.tee $4 + local.tee $5 i64.const 32 i64.shr_u i64.add - local.get $4 + local.get $5 i64.const 4294967295 i64.and - local.get $2 + local.get $6 i64.const 10 i64.shl i64.add @@ -3686,13 +3674,13 @@ i64.add i64.const 1 i64.sub - local.set $4 - local.get $3 + local.set $5 + local.get $1 i64.const 32 i64.shr_u - local.get $6 + local.get $2 i64.add - local.get $3 + local.get $1 i64.const 4294967295 i64.and i64.const 2147483647 @@ -3700,18 +3688,18 @@ i64.const 32 i64.shr_u i64.add - local.get $4 + local.get $5 global.get $~lib/util/number/_exp_pow i32.const 1 i32.add - local.get $4 - local.get $2 + local.get $5 + local.get $6 i64.const 2147483647 i64.mul - local.get $1 + local.get $4 i64.const 2147483647 i64.mul - local.get $1 + local.get $4 i64.const 4294966784 i64.mul i64.const 32 @@ -3721,7 +3709,7 @@ i64.const 32 i64.shr_u i64.add - local.get $2 + local.get $6 i64.const 4294966784 i64.mul local.get $1 @@ -3741,28 +3729,28 @@ call $~lib/util/number/prettify i32.const 1 i32.shl - local.set $5 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 i32.const 3472 - local.get $5 + local.get $0 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $5 - local.get $0 + local.tee $0 + local.get $3 i32.store - local.get $5 + local.get $0 i32.const 4464 i32.store offset=4 - local.get $0 + local.get $3 i32.const 4464 call $~lib/string/String.__eq i32.eqz @@ -3837,19 +3825,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -3859,22 +3847,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 21028 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -3888,9 +3876,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -3900,23 +3888,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -3924,7 +3912,7 @@ else i32.const 4608 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1472 @@ -3934,7 +3922,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 4612 @@ -3949,28 +3937,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-unary.optimized.wat b/tests/compiler/resolve-unary.optimized.wat index 38fd3af707..3c400b361b 100644 --- a/tests/compiler/resolve-unary.optimized.wat +++ b/tests/compiler/resolve-unary.optimized.wat @@ -230,19 +230,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -267,9 +267,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -277,17 +277,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -575,10 +575,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -590,15 +590,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -628,7 +628,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -664,12 +664,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -687,11 +687,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 20160 @@ -699,14 +699,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -716,17 +716,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1206,7 +1206,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1232,32 +1232,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1290,7 +1290,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1298,8 +1298,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1316,7 +1316,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1326,13 +1326,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1348,7 +1348,7 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub local.tee $6 i32.const 16 @@ -1358,23 +1358,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 + local.tee $4 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1404,26 +1404,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1438,7 +1438,7 @@ local.get $2 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1450,7 +1450,7 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1465,12 +1465,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1482,7 +1482,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $2 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1497,25 +1497,25 @@ i32.sub i32.const 3 i32.and - local.tee $2 + local.tee $3 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1525,17 +1525,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1551,22 +1551,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 @@ -1577,11 +1577,11 @@ i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1613,7 +1613,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/number/I32#toString (param $0 i32) (result i32) (local $1 i32) @@ -1921,14 +1921,14 @@ if local.get $2 i32.load16_u - local.tee $3 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $3 i32.ne if - local.get $3 local.get $4 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2426,16 +2426,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $resolve-unary/foo local.tee $0 + global.get $resolve-unary/foo + local.tee $1 i32.store offset=16 - local.get $0 - global.set $resolve-unary/foo local.get $1 + global.set $resolve-unary/foo local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 global.get $resolve-unary/foo i32.ne if @@ -2447,16 +2447,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $resolve-unary/foo local.tee $0 + global.get $resolve-unary/foo + local.tee $1 i32.store offset=16 - local.get $0 - global.set $resolve-unary/foo local.get $1 + global.set $resolve-unary/foo local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 global.get $resolve-unary/foo i32.ne if @@ -2619,19 +2619,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -2641,22 +2641,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 20156 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -2670,9 +2670,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2682,23 +2682,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -2706,7 +2706,7 @@ else i32.const 3728 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1472 @@ -2716,7 +2716,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 3732 @@ -2731,28 +2731,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/rt/finalize.optimized.wat b/tests/compiler/rt/finalize.optimized.wat index d4a1dfba2d..0314ca7727 100644 --- a/tests/compiler/rt/finalize.optimized.wat +++ b/tests/compiler/rt/finalize.optimized.wat @@ -167,19 +167,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -204,9 +204,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -214,17 +214,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -512,10 +512,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -527,15 +527,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -565,7 +565,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -601,12 +601,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -624,11 +624,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17920 @@ -636,14 +636,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -653,17 +653,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1069,7 +1069,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1146,16 +1146,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $0 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1203,7 +1203,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $2 + local.tee $3 i32.const -4 i32.and i32.const 28 @@ -1213,7 +1213,7 @@ i32.ge_u if local.get $0 - local.get $2 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1222,7 +1222,7 @@ local.get $0 i32.const 32 i32.add - local.tee $2 + local.tee $3 local.get $4 i32.const 4 i32.sub @@ -1230,11 +1230,11 @@ i32.or i32.store local.get $1 - local.get $2 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $2 + local.get $3 i32.const -2 i32.and i32.store @@ -1260,26 +1260,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 global.get $~lib/rt/itcms/white - local.get $2 + local.get $1 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1291,7 +1291,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $3 + local.get $2 local.get $0 i32.const 20 i32.add @@ -1396,19 +1396,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1418,22 +1418,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17908 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1447,9 +1447,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1459,23 +1459,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1483,7 +1483,7 @@ else i32.const 1488 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1248 @@ -1493,7 +1493,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1492 @@ -1508,28 +1508,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/rt/instanceof.optimized.wat b/tests/compiler/rt/instanceof.optimized.wat index c30654f4ba..de9834eaaa 100644 --- a/tests/compiler/rt/instanceof.optimized.wat +++ b/tests/compiler/rt/instanceof.optimized.wat @@ -225,19 +225,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -262,9 +262,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -272,17 +272,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -570,10 +570,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -585,15 +585,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -623,7 +623,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -659,12 +659,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -682,11 +682,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17952 @@ -694,14 +694,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -711,17 +711,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1194,17 +1194,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1213,19 +1213,19 @@ local.get $1 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1251,26 +1251,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $0 i32.load offset=8 - local.set $0 + local.set $2 local.get $1 global.get $~lib/rt/itcms/white - local.get $2 + local.get $0 i32.or i32.store offset=4 local.get $1 - local.get $0 + local.get $2 i32.store offset=8 - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $2 + local.get $0 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2131,19 +2131,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -2153,22 +2153,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17940 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -2182,9 +2182,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2194,23 +2194,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -2218,7 +2218,7 @@ else i32.const 1504 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1248 @@ -2228,7 +2228,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1508 @@ -2243,28 +2243,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/rt/runtime-incremental-export.optimized.wat b/tests/compiler/rt/runtime-incremental-export.optimized.wat index 1c79818c42..0687dde3a8 100644 --- a/tests/compiler/rt/runtime-incremental-export.optimized.wat +++ b/tests/compiler/rt/runtime-incremental-export.optimized.wat @@ -204,20 +204,20 @@ else i32.const 2 end - local.set $3 + local.set $2 local.get $1 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and @@ -312,19 +312,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -349,9 +349,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -359,17 +359,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -657,10 +657,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -672,15 +672,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -710,7 +710,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -746,12 +746,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -769,11 +769,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17984 @@ -781,14 +781,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -798,17 +798,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1288,7 +1288,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1314,32 +1314,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1372,7 +1372,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1380,8 +1380,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1398,7 +1398,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1408,13 +1408,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1430,7 +1430,7 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub local.tee $6 i32.const 16 @@ -1440,23 +1440,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 + local.tee $4 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1486,26 +1486,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1520,7 +1520,7 @@ local.get $2 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1532,7 +1532,7 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1547,12 +1547,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1564,7 +1564,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $2 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1579,25 +1579,25 @@ i32.sub i32.const 3 i32.and - local.tee $2 + local.tee $3 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1607,17 +1607,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1633,22 +1633,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 @@ -1659,11 +1659,11 @@ i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1695,7 +1695,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/rt/itcms/__pin (param $0 i32) (result i32) (local $1 i32) @@ -1759,7 +1759,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $2 i32.load offset=4 i32.const 3 i32.and @@ -1777,33 +1777,33 @@ i32.const 1 i32.eq if - local.get $0 + local.get $2 call $~lib/rt/itcms/Object#makeGray else - local.get $0 + local.get $2 call $~lib/rt/itcms/Object#unlink global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $1 i32.load offset=8 - local.set $1 - local.get $0 - global.get $~lib/rt/itcms/white + local.set $0 local.get $2 + global.get $~lib/rt/itcms/white + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $0 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 + local.get $1 local.get $2 - local.get $0 i32.store offset=8 end ) diff --git a/tests/compiler/rt/runtime-minimal-export.optimized.wat b/tests/compiler/rt/runtime-minimal-export.optimized.wat index 504167515b..f63a185774 100644 --- a/tests/compiler/rt/runtime-minimal-export.optimized.wat +++ b/tests/compiler/rt/runtime-minimal-export.optimized.wat @@ -117,19 +117,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -154,9 +154,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -164,17 +164,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -462,10 +462,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -477,15 +477,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -515,7 +515,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -551,12 +551,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -574,11 +574,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 1488 @@ -586,14 +586,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -603,17 +603,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -781,7 +781,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -807,32 +807,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -848,16 +848,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -865,7 +865,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -873,8 +873,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -891,7 +891,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -901,13 +901,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -920,40 +920,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -979,26 +979,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/tcms/fromSpace - local.tee $1 + local.tee $0 i32.load offset=8 - local.set $0 + local.set $1 local.get $2 global.get $~lib/rt/tcms/white - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 - local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $2 i32.store offset=8 global.get $~lib/rt/tcms/total @@ -1127,7 +1127,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $2 i32.load offset=4 i32.const 3 i32.and @@ -1141,30 +1141,30 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 call $~lib/rt/tcms/Object#unlink global.get $~lib/rt/tcms/fromSpace - local.tee $2 + local.tee $1 i32.load offset=8 - local.set $1 - local.get $0 - global.get $~lib/rt/tcms/white + local.set $0 local.get $2 + global.get $~lib/rt/tcms/white + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $0 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 + local.get $1 local.get $2 - local.get $0 i32.store offset=8 ) (func $~lib/rt/tcms/__collect @@ -1220,23 +1220,23 @@ end global.get $~lib/rt/tcms/white i32.eqz - local.set $4 + local.set $5 global.get $~lib/rt/tcms/toSpace - local.tee $3 + local.tee $4 i32.load offset=4 i32.const -4 i32.and local.set $1 loop $while-continue|1 local.get $1 - local.get $3 + local.get $4 i32.ne if local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $4 + local.get $5 i32.ne if i32.const 0 @@ -1310,7 +1310,7 @@ local.get $1 i32.const 4 i32.add - local.tee $5 + local.tee $2 i32.const 1484 i32.ge_u if @@ -1320,15 +1320,15 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $5 + local.get $2 i32.const 4 i32.sub local.set $1 - local.get $5 + local.get $2 i32.const 15 i32.and i32.const 1 - local.get $5 + local.get $2 select if (result i32) i32.const 1 @@ -1366,11 +1366,11 @@ local.get $6 local.get $6 i32.store offset=8 - local.get $3 + local.get $4 global.set $~lib/rt/tcms/fromSpace local.get $6 global.set $~lib/rt/tcms/toSpace - local.get $4 + local.get $5 global.set $~lib/rt/tcms/white ) (func $~lib/rt/__visit_members (param $0 i32) @@ -1435,37 +1435,37 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $2 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $0 + local.get $2 call $~lib/rt/tcms/Object#unlink global.get $~lib/rt/tcms/toSpace - local.tee $2 + local.tee $1 i32.load offset=8 - local.set $1 - local.get $0 + local.set $0 + local.get $2 global.get $~lib/rt/tcms/white i32.eqz - local.get $2 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $0 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 + local.get $1 local.get $2 - local.get $0 i32.store offset=8 end ) diff --git a/tests/compiler/rt/runtime-stub-export.optimized.wat b/tests/compiler/rt/runtime-stub-export.optimized.wat index aa8e2046f1..174191b564 100644 --- a/tests/compiler/rt/runtime-stub-export.optimized.wat +++ b/tests/compiler/rt/runtime-stub-export.optimized.wat @@ -53,7 +53,7 @@ unreachable end global.get $~lib/rt/stub/offset - local.tee $6 + local.tee $4 i32.const 4 i32.add local.tee $2 @@ -64,23 +64,23 @@ i32.and i32.const 4 i32.sub - local.tee $7 + local.tee $5 i32.add local.tee $3 memory.size - local.tee $4 + local.tee $6 i32.const 16 i32.shl i32.const 15 i32.add i32.const -16 i32.and - local.tee $5 + local.tee $7 i32.gt_u if - local.get $4 + local.get $6 local.get $3 - local.get $5 + local.get $7 i32.sub i32.const 65535 i32.add @@ -88,16 +88,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 - local.get $4 - local.get $5 + local.tee $7 + local.get $6 + local.get $7 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $7 memory.grow i32.const 0 i32.lt_s @@ -108,8 +108,8 @@ end local.get $3 global.set $~lib/rt/stub/offset - local.get $6 - local.get $7 + local.get $4 + local.get $5 i32.store local.get $2 i32.const 4 diff --git a/tests/compiler/std-wasi/console.optimized.wat b/tests/compiler/std-wasi/console.optimized.wat index fd9d2fde94..8b006932f0 100644 --- a/tests/compiler/std-wasi/console.optimized.wat +++ b/tests/compiler/std-wasi/console.optimized.wat @@ -297,38 +297,38 @@ i32.shl local.get $0 i32.add - local.set $4 + local.set $3 local.get $2 local.set $1 loop $while-continue|0 local.get $0 - local.get $4 + local.get $3 i32.lt_u if local.get $0 i32.load16_u - local.tee $3 + local.tee $5 i32.const 128 i32.lt_u if (result i32) local.get $1 - local.get $3 + local.get $5 i32.store8 local.get $1 i32.const 1 i32.add else - local.get $3 + local.get $5 i32.const 2048 i32.lt_u if (result i32) local.get $1 - local.get $3 + local.get $5 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $3 + local.get $5 i32.const 63 i32.and i32.const 128 @@ -341,16 +341,16 @@ i32.const 2 i32.add else - local.get $3 + local.get $5 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $3 + local.get $5 i32.const 56320 i32.lt_u - local.get $4 + local.get $3 local.get $0 i32.const 2 i32.add @@ -359,32 +359,32 @@ if local.get $0 i32.load16_u offset=2 - local.tee $5 + local.tee $4 i32.const 64512 i32.and i32.const 56320 i32.eq if local.get $1 - local.get $3 + local.get $5 i32.const 1023 i32.and i32.const 10 i32.shl i32.const 65536 i32.add - local.get $5 + local.get $4 i32.const 1023 i32.and i32.or - local.tee $3 + local.tee $4 i32.const 63 i32.and i32.const 128 i32.or i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 6 i32.shr_u i32.const 63 @@ -394,7 +394,7 @@ i32.const 16 i32.shl i32.or - local.get $3 + local.get $4 i32.const 12 i32.shr_u i32.const 63 @@ -404,7 +404,7 @@ i32.const 8 i32.shl i32.or - local.get $3 + local.get $4 i32.const 18 i32.shr_u i32.const 240 @@ -424,12 +424,12 @@ end end local.get $1 - local.get $3 + local.get $5 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $3 + local.get $5 i32.const 6 i32.shr_u i32.const 63 @@ -441,7 +441,7 @@ i32.or i32.store16 local.get $1 - local.get $3 + local.get $5 i32.const 63 i32.and i32.const 128 @@ -1086,19 +1086,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -1123,9 +1123,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -1133,17 +1133,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -1431,10 +1431,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -1446,15 +1446,15 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -1484,7 +1484,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1520,12 +1520,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -1543,11 +1543,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 24368 @@ -1555,14 +1555,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -1572,17 +1572,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1734,7 +1734,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $1 local.get $0 i32.const 1073741820 i32.gt_u @@ -1760,34 +1760,34 @@ i32.const 4 i32.sub end - local.tee $0 + local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if memory.size - local.tee $1 - local.get $0 + local.tee $0 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $0 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $0 + local.get $3 i32.add else - local.get $0 + local.get $3 end i32.const 4 - local.get $2 - i32.load offset=1568 local.get $1 + i32.load offset=1568 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1801,16 +1801,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $1 - local.get $3 + local.tee $2 + local.get $0 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1818,18 +1818,18 @@ unreachable end end - local.get $2 local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 - local.get $0 + local.get $1 + local.get $3 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1840,11 +1840,11 @@ unreachable end end - local.get $1 + local.get $0 i32.load i32.const -4 i32.and - local.get $0 + local.get $3 i32.lt_u if i32.const 0 @@ -1854,13 +1854,13 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 local.get $1 + local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $1 - i32.load - local.set $3 local.get $0 + i32.load + local.set $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1873,59 +1873,59 @@ call $~lib/wasi/index/abort unreachable end - local.get $3 + local.get $4 i32.const -4 i32.and - local.get $0 + local.get $3 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.const 2 i32.and - local.get $0 + local.get $3 i32.or i32.store + local.get $3 local.get $0 - local.get $1 i32.const 4 i32.add i32.add - local.tee $0 - local.get $4 + local.tee $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 - local.get $0 - call $~lib/rt/tlsf/insertBlock - else local.get $1 local.get $3 + call $~lib/rt/tlsf/insertBlock + else + local.get $0 + local.get $4 i32.const -2 i32.and i32.store - local.get $1 + local.get $0 i32.const 4 i32.add - local.get $1 + local.get $0 i32.load i32.const -4 i32.and i32.add - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.load i32.const -3 i32.and i32.store end - local.get $1 + local.get $0 i32.const 4 i32.add ) @@ -2282,7 +2282,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -2305,7 +2305,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2315,23 +2315,23 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -2339,7 +2339,7 @@ else i32.const 7936 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 5120 @@ -2349,7 +2349,7 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 7940 @@ -2364,27 +2364,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -2411,7 +2411,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $1 + local.set $2 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -2428,11 +2428,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -2474,9 +2474,9 @@ if local.get $0 i32.load - local.tee $2 + local.tee $1 if - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -2500,11 +2500,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -2530,7 +2530,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $1 + local.get $2 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -2681,14 +2681,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -2698,17 +2698,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -2724,22 +2724,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -2750,11 +2750,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -2859,26 +2859,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -3150,7 +3150,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -3158,7 +3158,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $5 i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -3166,51 +3166,51 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $7 local.get $0 i32.load offset=16 i32.const 24 i32.mul i32.add - local.set $8 + local.set $4 local.get $3 local.set $2 loop $while-continue|0 local.get $4 - local.get $8 + local.get $7 i32.ne if - local.get $4 + local.get $7 i32.load offset=16 i32.const 1 i32.and i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.load - local.tee $6 + local.tee $8 i32.store offset=8 local.get $2 - local.get $6 + local.get $8 i32.store local.get $2 - local.get $4 + local.get $7 i64.load offset=8 i64.store offset=8 local.get $2 - local.get $6 + local.get $8 call $~lib/util/hash/HASH<~lib/string/String> local.get $1 i32.and i32.const 2 i32.shl - local.get $5 + local.get $6 i32.add - local.tee $6 + local.tee $8 i32.load i32.store offset=16 - local.get $6 + local.get $8 local.get $2 i32.store local.get $2 @@ -3218,20 +3218,20 @@ i32.add local.set $2 end - local.get $4 + local.get $7 i32.const 24 i32.add - local.set $4 + local.set $7 br $while-continue|0 end end local.get $0 - local.get $5 + local.get $6 i32.store - local.get $5 + local.get $6 if local.get $0 - local.get $5 + local.get $6 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -3249,7 +3249,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $5 i32.store offset=12 local.get $0 local.get $0 @@ -3396,7 +3396,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 6000 - local.set $1 + local.set $2 br $__inlined_func$~lib/util/number/utoa64 end local.get $0 @@ -3406,48 +3406,48 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.wrap_i64 - local.tee $2 local.tee $1 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $2 i32.const 100000000 i32.ge_u i32.add @@ -3458,10 +3458,10 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 local.get $2 + local.get $1 local.get $3 call $~lib/util/number/utoa32_dec_lut else @@ -3516,25 +3516,25 @@ i32.add end end - local.tee $2 + local.tee $1 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store loop $while-continue|0 local.get $0 i64.const 100000000 i64.ge_u if - local.get $2 + local.get $1 i32.const 4 i32.sub - local.tee $2 + local.tee $3 i32.const 1 i32.shl - local.get $1 + local.get $2 i32.add local.get $0 local.get $0 @@ -3545,10 +3545,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $3 + local.tee $4 i32.const 10000 i32.rem_u - local.tee $4 + local.tee $1 i32.const 100 i32.div_u i32.const 2 @@ -3556,7 +3556,7 @@ i32.const 6012 i32.add i64.load32_u - local.get $4 + local.get $1 i32.const 100 i32.rem_u i32.const 2 @@ -3568,15 +3568,15 @@ i64.shl i64.or i64.store - local.get $2 + local.get $3 i32.const 4 i32.sub - local.tee $2 + local.tee $1 i32.const 1 i32.shl - local.get $1 + local.get $2 i32.add - local.get $3 + local.get $4 i32.const 10000 i32.div_u local.tee $3 @@ -3602,10 +3602,10 @@ br $while-continue|0 end end - local.get $1 + local.get $2 local.get $0 i32.wrap_i64 - local.get $2 + local.get $1 call $~lib/util/number/utoa32_dec_lut end global.get $~lib/memory/__stack_pointer @@ -3613,7 +3613,7 @@ i32.add global.set $~lib/memory/__stack_pointer end - local.get $1 + local.get $2 ) (func $~lib/rt/__visit_members (param $0 i32) (local $1 i32) @@ -3917,14 +3917,14 @@ if local.get $2 i32.load16_u - local.tee $3 + local.tee $7 local.get $4 i32.load16_u - local.tee $7 + local.tee $3 i32.ne if - local.get $7 local.get $3 + local.get $7 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -3966,9 +3966,9 @@ i32.const 0 ) (func $~lib/console/console.time (param $0 i32) - (local $1 i32) + (local $1 i64) (local $2 i32) - (local $3 i64) + (local $3 i32) (local $4 i32) (local $5 i32) global.get $~lib/memory/__stack_pointer @@ -3981,14 +3981,14 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 global.get $~lib/console/timers - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 local.get $0 local.get $0 call $~lib/util/hash/HASH<~lib/string/String> @@ -4017,10 +4017,10 @@ end global.get $~lib/memory/__stack_pointer global.get $~lib/console/timers - local.tee $1 + local.tee $4 i32.store call $~lib/process/process.hrtime - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -4032,28 +4032,28 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $1 + local.get $4 local.get $0 local.get $0 call $~lib/util/hash/HASH<~lib/string/String> - local.tee $4 - call $~lib/map/Map<~lib/string/String,u64>#find local.tee $2 + call $~lib/map/Map<~lib/string/String,u64>#find + local.tee $3 if - local.get $2 local.get $3 + local.get $1 i64.store offset=8 else - local.get $1 + local.get $4 i32.load offset=16 - local.get $1 + local.get $4 i32.load offset=12 i32.eq if - local.get $1 - local.get $1 + local.get $4 + local.get $4 i32.load offset=20 - local.get $1 + local.get $4 i32.load offset=12 i32.const 3 i32.mul @@ -4061,10 +4061,10 @@ i32.div_s i32.lt_s if (result i32) - local.get $1 + local.get $4 i32.load offset=4 else - local.get $1 + local.get $4 i32.load offset=4 i32.const 1 i32.shl @@ -4074,47 +4074,47 @@ call $~lib/map/Map<~lib/string/String,u64>#rehash end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $5 i32.store - local.get $1 - local.get $1 + local.get $4 + local.get $4 i32.load offset=16 - local.tee $5 + local.tee $3 i32.const 1 i32.add i32.store offset=16 - local.get $5 + local.get $3 i32.const 24 i32.mul - local.get $2 + local.get $5 i32.add - local.tee $2 + local.tee $3 local.get $0 i32.store local.get $0 if - local.get $1 + local.get $4 local.get $0 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 local.get $3 - i64.store offset=8 - local.get $1 local.get $1 + i64.store offset=8 + local.get $4 + local.get $4 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $2 - local.get $1 + local.get $3 + local.get $4 i32.load - local.get $1 - i32.load offset=4 local.get $4 + i32.load offset=4 + local.get $2 i32.and i32.const 2 i32.shl @@ -4123,7 +4123,7 @@ i32.load i32.store offset=16 local.get $0 - local.get $2 + local.get $3 i32.store end global.get $~lib/memory/__stack_pointer @@ -4144,8 +4144,8 @@ unreachable ) (func $~lib/console/timeLogImpl (param $0 i32) - (local $1 i32) - (local $2 i64) + (local $1 i64) + (local $2 i32) global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -4162,22 +4162,22 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 global.get $~lib/console/timers - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 local.get $0 local.get $0 call $~lib/util/hash/HASH<~lib/string/String> call $~lib/map/Map<~lib/string/String,u64>#find - local.tee $1 + local.tee $2 i32.eqz if i32.const 5696 @@ -4187,19 +4187,19 @@ call $~lib/wasi/index/abort unreachable end - local.get $1 + local.get $2 i64.load offset=8 - local.set $2 + local.set $1 call $~lib/process/process.hrtime - local.get $2 + local.get $1 i64.sub i64.const 1000000 i64.div_u - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 call $~lib/number/U64#toString - local.tee $1 + local.tee $2 i32.store offset=4 i32.const 1 local.get $0 @@ -4211,7 +4211,7 @@ i32.const 7584 call $~lib/process/writeString i32.const 1 - local.get $1 + local.get $2 call $~lib/process/writeString global.get $~lib/memory/__stack_pointer i32.const 7616 @@ -4822,16 +4822,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $3 i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $3 local.get $1 local.get $2 select @@ -4840,7 +4840,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $0 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std-wasi/crypto.optimized.wat b/tests/compiler/std-wasi/crypto.optimized.wat index f2a24fb3c6..09424a5109 100644 --- a/tests/compiler/std-wasi/crypto.optimized.wat +++ b/tests/compiler/std-wasi/crypto.optimized.wat @@ -253,38 +253,38 @@ i32.shl local.get $0 i32.add - local.set $4 + local.set $3 local.get $2 local.set $1 loop $while-continue|0 local.get $0 - local.get $4 + local.get $3 i32.lt_u if local.get $0 i32.load16_u - local.tee $3 + local.tee $5 i32.const 128 i32.lt_u if (result i32) local.get $1 - local.get $3 + local.get $5 i32.store8 local.get $1 i32.const 1 i32.add else - local.get $3 + local.get $5 i32.const 2048 i32.lt_u if (result i32) local.get $1 - local.get $3 + local.get $5 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $3 + local.get $5 i32.const 63 i32.and i32.const 128 @@ -297,16 +297,16 @@ i32.const 2 i32.add else - local.get $3 + local.get $5 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $3 + local.get $5 i32.const 56320 i32.lt_u - local.get $4 + local.get $3 local.get $0 i32.const 2 i32.add @@ -315,32 +315,32 @@ if local.get $0 i32.load16_u offset=2 - local.tee $5 + local.tee $4 i32.const 64512 i32.and i32.const 56320 i32.eq if local.get $1 - local.get $3 + local.get $5 i32.const 1023 i32.and i32.const 10 i32.shl i32.const 65536 i32.add - local.get $5 + local.get $4 i32.const 1023 i32.and i32.or - local.tee $3 + local.tee $4 i32.const 63 i32.and i32.const 128 i32.or i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 6 i32.shr_u i32.const 63 @@ -350,7 +350,7 @@ i32.const 16 i32.shl i32.or - local.get $3 + local.get $4 i32.const 12 i32.shr_u i32.const 63 @@ -360,7 +360,7 @@ i32.const 8 i32.shl i32.or - local.get $3 + local.get $4 i32.const 18 i32.shr_u i32.const 240 @@ -380,12 +380,12 @@ end end local.get $1 - local.get $3 + local.get $5 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $3 + local.get $5 i32.const 6 i32.shr_u i32.const 63 @@ -397,7 +397,7 @@ i32.or i32.store16 local.get $1 - local.get $3 + local.get $5 i32.const 63 i32.and i32.const 128 @@ -758,7 +758,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -781,7 +781,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -791,23 +791,23 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -815,7 +815,7 @@ else i32.const 6864 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1472 @@ -825,7 +825,7 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 6868 @@ -840,27 +840,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -948,19 +948,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -985,9 +985,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -995,17 +995,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -1293,10 +1293,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -1308,15 +1308,15 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -1346,7 +1346,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1382,12 +1382,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -1405,11 +1405,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 23296 @@ -1417,14 +1417,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -1434,17 +1434,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1530,7 +1530,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $1 + local.set $2 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -1547,11 +1547,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -1593,9 +1593,9 @@ if local.get $0 i32.load - local.tee $2 + local.tee $1 if - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -1619,11 +1619,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -1649,7 +1649,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $1 + local.get $2 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -1869,7 +1869,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $1 local.get $0 i32.const 1073741820 i32.gt_u @@ -1895,34 +1895,34 @@ i32.const 4 i32.sub end - local.tee $0 + local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if memory.size - local.tee $1 - local.get $0 + local.tee $0 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $0 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $0 + local.get $3 i32.add else - local.get $0 + local.get $3 end i32.const 4 - local.get $2 - i32.load offset=1568 local.get $1 + i32.load offset=1568 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1936,16 +1936,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $1 - local.get $3 + local.tee $2 + local.get $0 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1953,18 +1953,18 @@ unreachable end end - local.get $2 local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 - local.get $0 + local.get $1 + local.get $3 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1975,11 +1975,11 @@ unreachable end end - local.get $1 + local.get $0 i32.load i32.const -4 i32.and - local.get $0 + local.get $3 i32.lt_u if i32.const 0 @@ -1989,13 +1989,13 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 local.get $1 + local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $1 - i32.load - local.set $3 local.get $0 + i32.load + local.set $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -2008,59 +2008,59 @@ call $~lib/wasi/index/abort unreachable end - local.get $3 + local.get $4 i32.const -4 i32.and - local.get $0 + local.get $3 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.const 2 i32.and - local.get $0 + local.get $3 i32.or i32.store + local.get $3 local.get $0 - local.get $1 i32.const 4 i32.add i32.add - local.tee $0 - local.get $4 + local.tee $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 - local.get $0 - call $~lib/rt/tlsf/insertBlock - else local.get $1 local.get $3 + call $~lib/rt/tlsf/insertBlock + else + local.get $0 + local.get $4 i32.const -2 i32.and i32.store - local.get $1 + local.get $0 i32.const 4 i32.add - local.get $1 + local.get $0 i32.load i32.const -4 i32.and i32.add - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.load i32.const -3 i32.and i32.store end - local.get $1 + local.get $0 i32.const 4 i32.add ) @@ -2134,14 +2134,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -2151,17 +2151,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -2177,22 +2177,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -2203,11 +2203,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -2312,26 +2312,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2819,59 +2819,59 @@ local.get $1 i32.const 255 i32.and - local.tee $2 local.tee $1 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $2 local.get $0 - local.get $2 local.get $1 + local.get $2 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $2 ) (func $~lib/util/memory/memcpy (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -3328,115 +3328,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3468,43 +3458,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3781,7 +3769,7 @@ (local $6 i32) local.get $0 i32.load offset=4 - local.set $5 + local.set $4 local.get $0 i32.load offset=8 local.set $1 @@ -3803,7 +3791,7 @@ local.get $1 i32.const 1 i32.sub - local.tee $6 + local.tee $5 i32.const 0 i32.lt_s if @@ -3816,13 +3804,13 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $6 + local.get $5 i32.eqz if block $__inlined_func$~lib/util/number/utoa32 (result i32) - local.get $5 + local.get $4 i32.load8_u - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -3834,7 +3822,7 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $2 + local.get $0 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -3845,79 +3833,79 @@ br $__inlined_func$~lib/util/number/utoa32 end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.tee $0 + local.tee $1 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 local.get $2 local.get $0 + local.get $1 call $~lib/util/number/utoa32_dec_lut global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 end local.set $0 br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $5 i32.const 6652 i32.load i32.const 1 i32.shr_u - local.tee $4 + local.tee $6 i32.const 10 i32.add i32.mul @@ -3932,7 +3920,7 @@ i32.store loop $for-loop|0 local.get $2 - local.get $6 + local.get $5 i32.lt_s if local.get $0 @@ -3941,14 +3929,14 @@ local.get $1 i32.add local.get $2 - local.get $5 + local.get $4 i32.add i32.load8_u call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $4 + local.get $6 if local.get $0 i32.const 1 @@ -3956,12 +3944,12 @@ local.get $1 i32.add i32.const 6656 - local.get $4 + local.get $6 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $4 + local.get $6 i32.add local.set $0 end @@ -3978,8 +3966,8 @@ i32.shl local.get $1 i32.add + local.get $4 local.get $5 - local.get $6 i32.add i32.load8_u call $~lib/util/number/itoa_buffered @@ -4008,43 +3996,43 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $5 - local.get $5 + local.tee $1 + local.get $1 select - local.tee $4 + local.tee $3 local.get $2 i32.const 0 local.get $2 i32.const 0 i32.gt_s select - local.tee $1 - local.get $5 + local.tee $2 local.get $1 - local.get $5 - i32.lt_s - select - local.tee $1 local.get $1 - local.get $4 + local.get $2 + i32.gt_s + select + local.tee $2 + local.get $2 + local.get $3 i32.gt_s select i32.const 1 i32.shl - local.set $3 + local.set $4 block $__inlined_func$~lib/string/String#substring - local.get $4 - local.get $1 - local.get $1 - local.get $4 + local.get $3 + local.get $2 + local.get $2 + local.get $3 i32.lt_s select i32.const 1 i32.shl - local.tee $1 - local.get $3 - i32.sub local.tee $2 + local.get $4 + i32.sub + local.tee $3 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -4056,12 +4044,12 @@ br $__inlined_func$~lib/string/String#substring end i32.const 0 - local.get $5 + local.get $1 i32.const 1 i32.shl - local.get $1 + local.get $2 i32.eq - local.get $3 + local.get $4 select if global.get $~lib/memory/__stack_pointer @@ -4071,16 +4059,16 @@ br $__inlined_func$~lib/string/String#substring end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 1 call $~lib/rt/itcms/__new local.tee $1 i32.store local.get $1 local.get $0 - local.get $3 + local.get $4 i32.add - local.get $2 + local.get $3 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 @@ -4206,7 +4194,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 br_table $case4|0 $case3|0 $case2|0 $case1|0 $case0|0 $break|0 end local.get $0 @@ -4225,7 +4213,7 @@ end local.get $0 i32.load16_u offset=2 - local.tee $4 + local.tee $3 i32.const 128 i32.ge_u br_if $break|0 @@ -4240,10 +4228,10 @@ i32.const 6680 i32.store i32.const 6676 - local.get $3 + local.get $4 i32.store i32.const 6680 - local.get $4 + local.get $3 i32.const 8 i32.shl local.get $5 @@ -4287,10 +4275,10 @@ i32.load offset=16 local.get $0 i32.add - local.set $4 + local.set $3 loop $while-continue|0 local.get $1 - local.get $4 + local.get $3 i32.lt_u if local.get $1 @@ -4316,7 +4304,7 @@ i32.and i32.const 55296 i32.eq - local.get $4 + local.get $3 local.get $1 i32.const 2 i32.add @@ -4360,7 +4348,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $3 + local.get $4 local.get $1 call $~lib/string/String.UTF8.encodeUnsafe@varargs local.get $2 @@ -4914,9 +4902,9 @@ i32.const 0 i32.gt_s select - local.set $5 + local.set $4 local.get $0 - local.get $5 + local.get $4 i32.sub local.tee $0 i32.const 0 @@ -4924,8 +4912,8 @@ i32.const 0 i32.gt_s select - local.tee $6 - local.set $4 + local.tee $5 + local.set $7 local.get $1 i32.const 4 i32.sub @@ -4975,7 +4963,7 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $4 + local.get $7 i32.const 1073741820 i32.gt_u if @@ -4987,13 +4975,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.const 0 call $~lib/rt/itcms/__new local.tee $3 i32.store offset=4 local.get $3 - local.get $4 + local.get $7 call $~lib/memory/memory.fill local.get $0 local.get $3 @@ -5008,7 +4996,7 @@ local.get $3 i32.store offset=4 local.get $0 - local.get $4 + local.get $7 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 @@ -5025,11 +5013,11 @@ i32.store local.get $0 i32.load offset=4 - local.get $5 + local.get $4 local.get $2 i32.load offset=4 i32.add - local.get $6 + local.get $5 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 diff --git a/tests/compiler/std-wasi/process.optimized.wat b/tests/compiler/std-wasi/process.optimized.wat index 0d0f3bfdec..652a46555f 100644 --- a/tests/compiler/std-wasi/process.optimized.wat +++ b/tests/compiler/std-wasi/process.optimized.wat @@ -283,38 +283,38 @@ i32.shl local.get $0 i32.add - local.set $4 + local.set $3 local.get $2 local.set $1 loop $while-continue|0 local.get $0 - local.get $4 + local.get $3 i32.lt_u if local.get $0 i32.load16_u - local.tee $3 + local.tee $5 i32.const 128 i32.lt_u if (result i32) local.get $1 - local.get $3 + local.get $5 i32.store8 local.get $1 i32.const 1 i32.add else - local.get $3 + local.get $5 i32.const 2048 i32.lt_u if (result i32) local.get $1 - local.get $3 + local.get $5 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $3 + local.get $5 i32.const 63 i32.and i32.const 128 @@ -327,16 +327,16 @@ i32.const 2 i32.add else - local.get $3 + local.get $5 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $3 + local.get $5 i32.const 56320 i32.lt_u - local.get $4 + local.get $3 local.get $0 i32.const 2 i32.add @@ -345,32 +345,32 @@ if local.get $0 i32.load16_u offset=2 - local.tee $5 + local.tee $4 i32.const 64512 i32.and i32.const 56320 i32.eq if local.get $1 - local.get $3 + local.get $5 i32.const 1023 i32.and i32.const 10 i32.shl i32.const 65536 i32.add - local.get $5 + local.get $4 i32.const 1023 i32.and i32.or - local.tee $3 + local.tee $4 i32.const 63 i32.and i32.const 128 i32.or i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 6 i32.shr_u i32.const 63 @@ -380,7 +380,7 @@ i32.const 16 i32.shl i32.or - local.get $3 + local.get $4 i32.const 12 i32.shr_u i32.const 63 @@ -390,7 +390,7 @@ i32.const 8 i32.shl i32.or - local.get $3 + local.get $4 i32.const 18 i32.shr_u i32.const 240 @@ -410,12 +410,12 @@ end end local.get $1 - local.get $3 + local.get $5 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $3 + local.get $5 i32.const 6 i32.shr_u i32.const 63 @@ -427,7 +427,7 @@ i32.or i32.store16 local.get $1 - local.get $3 + local.get $5 i32.const 63 i32.and i32.const 128 @@ -1072,19 +1072,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -1109,9 +1109,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -1119,17 +1119,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -1417,10 +1417,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -1432,15 +1432,15 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -1470,7 +1470,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1506,12 +1506,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -1529,11 +1529,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 23792 @@ -1541,14 +1541,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -1558,17 +1558,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1720,7 +1720,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $1 local.get $0 i32.const 1073741820 i32.gt_u @@ -1746,34 +1746,34 @@ i32.const 4 i32.sub end - local.tee $0 + local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if memory.size - local.tee $1 - local.get $0 + local.tee $0 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $0 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $0 + local.get $3 i32.add else - local.get $0 + local.get $3 end i32.const 4 - local.get $2 - i32.load offset=1568 local.get $1 + i32.load offset=1568 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1787,16 +1787,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $1 - local.get $3 + local.tee $2 + local.get $0 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1804,18 +1804,18 @@ unreachable end end - local.get $2 local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 - local.get $0 + local.get $1 + local.get $3 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1826,11 +1826,11 @@ unreachable end end - local.get $1 + local.get $0 i32.load i32.const -4 i32.and - local.get $0 + local.get $3 i32.lt_u if i32.const 0 @@ -1840,13 +1840,13 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 local.get $1 + local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $1 - i32.load - local.set $3 local.get $0 + i32.load + local.set $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1859,59 +1859,59 @@ call $~lib/wasi/index/abort unreachable end - local.get $3 + local.get $4 i32.const -4 i32.and - local.get $0 + local.get $3 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.const 2 i32.and - local.get $0 + local.get $3 i32.or i32.store + local.get $3 local.get $0 - local.get $1 i32.const 4 i32.add i32.add - local.tee $0 - local.get $4 + local.tee $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 - local.get $0 - call $~lib/rt/tlsf/insertBlock - else local.get $1 local.get $3 + call $~lib/rt/tlsf/insertBlock + else + local.get $0 + local.get $4 i32.const -2 i32.and i32.store - local.get $1 + local.get $0 i32.const 4 i32.add - local.get $1 + local.get $0 i32.load i32.const -4 i32.and i32.add - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.load i32.const -3 i32.and i32.store end - local.get $1 + local.get $0 i32.const 4 i32.add ) @@ -1983,7 +1983,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 br_table $case4|0 $case3|0 $case2|0 $case1|0 $case0|0 $break|0 end local.get $0 @@ -2002,7 +2002,7 @@ end local.get $0 i32.load16_u offset=2 - local.tee $4 + local.tee $3 i32.const 128 i32.ge_u br_if $break|0 @@ -2017,10 +2017,10 @@ i32.const 1096 i32.store i32.const 1092 - local.get $3 + local.get $4 i32.store i32.const 1096 - local.get $4 + local.get $3 i32.const 8 i32.shl local.get $5 @@ -2064,10 +2064,10 @@ i32.load offset=16 local.get $0 i32.add - local.set $4 + local.set $3 loop $while-continue|0 local.get $1 - local.get $4 + local.get $3 i32.lt_u if local.get $1 @@ -2093,7 +2093,7 @@ i32.and i32.const 55296 i32.eq - local.get $4 + local.get $3 local.get $1 i32.const 2 i32.add @@ -2137,7 +2137,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $3 + local.get $4 local.get $1 call $~lib/string/String.UTF8.encodeUnsafe@varargs local.get $2 @@ -2311,7 +2311,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -2334,7 +2334,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2344,23 +2344,23 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -2368,7 +2368,7 @@ else i32.const 7360 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 4784 @@ -2378,7 +2378,7 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 7364 @@ -2393,27 +2393,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -2440,7 +2440,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $1 + local.set $2 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -2457,11 +2457,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -2503,9 +2503,9 @@ if local.get $0 i32.load - local.tee $2 + local.tee $1 if - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -2529,11 +2529,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -2559,7 +2559,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $1 + local.get $2 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -2710,14 +2710,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -2727,17 +2727,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -2753,22 +2753,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -2779,11 +2779,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -2888,26 +2888,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -3382,115 +3382,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3522,43 +3512,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3832,7 +3820,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $2 + local.tee $3 i32.load i32.const -4 i32.and @@ -3841,20 +3829,20 @@ local.get $1 i32.ge_u if - local.get $2 + local.get $3 local.get $1 i32.store offset=16 local.get $0 return end local.get $1 - local.get $2 + local.get $3 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.load offset=16 local.tee $0 local.get $0 @@ -3862,7 +3850,7 @@ i32.gt_u select call $~lib/memory/memory.copy - local.get $3 + local.get $2 ) (func $~lib/array/ensureCapacity (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -4050,14 +4038,14 @@ if local.get $1 i32.load16_u - local.tee $0 + local.tee $4 local.get $2 i32.load16_u - local.tee $4 + local.tee $0 i32.ne if - local.get $0 local.get $4 + local.get $0 i32.sub return end @@ -4382,7 +4370,7 @@ local.get $2 i32.const 4 i32.sub - local.tee $2 + local.tee $3 i32.const 1 i32.shl local.get $0 @@ -4396,10 +4384,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $3 + local.tee $4 i32.const 10000 i32.rem_u - local.tee $4 + local.tee $2 i32.const 100 i32.div_u i32.const 2 @@ -4407,7 +4395,7 @@ i32.const 5708 i32.add i64.load32_u - local.get $4 + local.get $2 i32.const 100 i32.rem_u i32.const 2 @@ -4419,7 +4407,7 @@ i64.shl i64.or i64.store - local.get $2 + local.get $3 i32.const 4 i32.sub local.tee $2 @@ -4427,7 +4415,7 @@ i32.shl local.get $0 i32.add - local.get $3 + local.get $4 i32.const 10000 i32.div_u local.tee $3 @@ -4500,19 +4488,19 @@ i32.const 2 i32.shl i32.add - local.set $3 + local.set $0 loop $while-continue|0 + local.get $0 local.get $2 - local.get $3 - i32.lt_u + i32.gt_u if local.get $2 i32.load - local.tee $0 + local.tee $3 if - local.get $0 + local.get $3 if - local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -4668,7 +4656,7 @@ if local.get $2 i32.load offset=8 - local.tee $3 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -4677,31 +4665,31 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.load - local.tee $0 + local.tee $4 i32.store block $__inlined_func$~lib/string/String.__eq (result i32) i32.const 1 - local.get $0 local.get $1 + local.get $4 i32.eq br_if $__inlined_func$~lib/string/String.__eq drop i32.const 0 local.get $1 i32.const 0 - local.get $0 + local.get $4 select i32.eqz br_if $__inlined_func$~lib/string/String.__eq drop i32.const 0 - local.get $0 + local.get $4 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 local.get $1 i32.const 20 i32.sub @@ -4711,10 +4699,10 @@ i32.ne br_if $__inlined_func$~lib/string/String.__eq drop - local.get $0 + local.get $4 i32.const 0 local.get $1 - local.get $4 + local.get $3 call $~lib/util/string/compareImpl i32.eqz end @@ -4727,7 +4715,7 @@ local.get $2 return end - local.get $3 + local.get $0 i32.const -2 i32.and local.set $2 @@ -4783,18 +4771,18 @@ end i32.const 1088 i32.load - local.tee $7 + local.tee $6 i32.const 2 i32.shl local.tee $0 i32.const 1092 i32.load i32.add - local.tee $8 + local.tee $7 call $~lib/rt/tlsf/__alloc - local.tee $3 + local.tee $4 local.get $0 - local.get $3 + local.get $4 i32.add call $~lib/bindings/wasi_snapshot_preview1/environ_get local.tee $0 @@ -4872,95 +4860,95 @@ local.get $0 i32.store loop $for-loop|0 - local.get $4 - local.get $7 + local.get $5 + local.get $6 i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 2 i32.shl - local.get $3 + local.get $4 i32.add i32.load local.tee $1 local.get $1 - local.get $8 + local.get $7 i32.add - local.get $3 + local.get $4 i32.sub call $~lib/string/String.UTF8.decodeUnsafe - local.tee $2 + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 5168 i32.store offset=8 i32.const 0 - local.set $1 + local.set $8 block $__inlined_func$~lib/string/String#indexOf i32.const 5164 i32.load i32.const 1 i32.shr_u - local.tee $6 + local.tee $2 i32.eqz br_if $__inlined_func$~lib/string/String#indexOf i32.const -1 - local.set $1 - local.get $2 + local.set $8 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $5 + local.tee $1 i32.eqz br_if $__inlined_func$~lib/string/String#indexOf i32.const 0 - local.get $5 - local.get $5 + local.get $1 + local.get $1 select - local.set $1 - local.get $5 - local.get $6 + local.set $8 + local.get $1 + local.get $2 i32.sub - local.set $5 + local.set $1 loop $for-loop|00 local.get $1 - local.get $5 - i32.le_s + local.get $8 + i32.ge_s if - local.get $2 - local.get $1 + local.get $3 + local.get $8 i32.const 5168 - local.get $6 + local.get $2 call $~lib/util/string/compareImpl i32.eqz br_if $__inlined_func$~lib/string/String#indexOf - local.get $1 + local.get $8 i32.const 1 i32.add - local.set $1 + local.set $8 br $for-loop|00 end end i32.const -1 - local.set $1 + local.set $8 end - local.get $1 + local.get $8 i32.const -1 i32.xor if - local.get $2 + local.get $3 i32.const 0 - local.get $1 + local.get $8 call $~lib/string/String#substring - local.set $5 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=8 local.get $2 - local.get $1 + i32.store offset=8 + local.get $3 + local.get $8 i32.const 1 i32.add i32.const 2147483647 @@ -4970,7 +4958,7 @@ local.get $1 i32.store offset=12 local.get $0 - local.get $5 + local.get $2 local.get $1 call $~lib/map/Map<~lib/string/String,~lib/string/String>#set else @@ -4978,18 +4966,18 @@ i32.const 5200 i32.store offset=12 local.get $0 - local.get $2 + local.get $3 i32.const 5200 call $~lib/map/Map<~lib/string/String,~lib/string/String>#set end - local.get $4 + local.get $5 i32.const 1 i32.add - local.set $4 + local.set $5 br $for-loop|0 end end - local.get $3 + local.get $4 call $~lib/rt/tlsf/__free global.get $~lib/memory/__stack_pointer i32.const 16 @@ -5007,8 +4995,8 @@ ) (func $start:std-wasi/process (local $0 i32) - (local $1 i64) - (local $2 i32) + (local $1 i32) + (local $2 i64) (local $3 i32) (local $4 i32) (local $5 i32) @@ -5024,13 +5012,13 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 i32.const 1056 i32.store i32.const 1056 @@ -5096,11 +5084,11 @@ i32.const 1088 i32.const 1092 call $~lib/bindings/wasi_snapshot_preview1/args_sizes_get - local.tee $2 + local.tee $3 i32.const 65535 i32.and if - local.get $2 + local.get $3 call $~lib/bindings/wasi_snapshot_preview1/errnoToString i32.const 4224 i32.const 64 @@ -5110,25 +5098,25 @@ end i32.const 1088 i32.load - local.tee $4 + local.tee $3 i32.const 2 i32.shl - local.tee $5 + local.tee $4 i32.const 1092 i32.load i32.add - local.tee $6 + local.tee $5 call $~lib/rt/tlsf/__alloc - local.tee $2 - local.get $2 - local.get $5 + local.tee $6 + local.get $4 + local.get $6 i32.add call $~lib/bindings/wasi_snapshot_preview1/args_get - local.tee $5 + local.tee $4 i32.const 65535 i32.and if - local.get $5 + local.get $4 call $~lib/bindings/wasi_snapshot_preview1/errnoToString i32.const 4224 i32.const 71 @@ -5137,49 +5125,49 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 call $~lib/array/Array<~lib/string/String>#constructor - local.tee $5 + local.tee $4 i32.store loop $for-loop|0 + local.get $1 local.get $3 - local.get $4 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $6 i32.add i32.load local.tee $7 - local.get $6 + local.get $5 local.get $7 i32.add - local.get $2 + local.get $6 i32.sub call $~lib/string/String.UTF8.decodeUnsafe local.tee $7 i32.store offset=4 - local.get $5 - local.get $3 + local.get $4 + local.get $1 local.get $7 call $~lib/array/Array<~lib/string/String>#__set - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 + local.set $1 br $for-loop|0 end end - local.get $2 + local.get $6 call $~lib/rt/tlsf/__free global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $4 global.set $~lib/process/process.argv global.get $~lib/process/process.argv global.set $std-wasi/process/argv @@ -5190,28 +5178,28 @@ call $~lib/console/console.log global.get $~lib/memory/__stack_pointer global.get $std-wasi/process/argv - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.load offset=12 - local.set $3 + local.set $1 loop $for-loop|00 local.get $0 - local.get $3 + local.get $1 i32.lt_s if global.get $~lib/memory/__stack_pointer global.get $std-wasi/process/argv - local.tee $2 + local.tee $3 i32.store offset=4 - local.get $2 + local.get $3 local.get $0 call $~lib/array/Array<~lib/string/String>#__get - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store - local.get $2 + local.get $3 call $~lib/console/console.log local.get $0 i32.const 1 @@ -5225,15 +5213,15 @@ global.get $~lib/process/process.env global.set $std-wasi/process/env global.get $~lib/memory/__stack_pointer - local.tee $4 - global.get $std-wasi/process/env local.tee $3 + global.get $std-wasi/process/env + local.tee $4 i32.store i32.const 0 - local.set $2 + local.set $1 i32.const 0 local.set $0 - local.get $4 + local.get $3 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -5242,25 +5230,25 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i64.const 0 i64.store - local.get $3 + local.get $4 i32.load offset=8 local.set $5 - local.get $4 local.get $3 + local.get $4 i32.load offset=16 - local.tee $4 - call $~lib/array/Array<~lib/string/String>#constructor local.tee $3 + call $~lib/array/Array<~lib/string/String>#constructor + local.tee $4 i32.store loop $for-loop|01 - local.get $2 - local.get $4 + local.get $1 + local.get $3 i32.lt_s if - local.get $2 + local.get $1 i32.const 12 i32.mul local.get $5 @@ -5276,7 +5264,7 @@ i32.load local.tee $6 i32.store offset=4 - local.get $3 + local.get $4 local.get $0 local.get $6 call $~lib/array/Array<~lib/string/String>#__set @@ -5285,25 +5273,25 @@ i32.add local.set $0 end - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|01 end end - local.get $3 + local.get $4 local.get $0 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 + local.get $4 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $4 global.set $std-wasi/process/envKeys global.get $~lib/memory/__stack_pointer i32.const 5232 @@ -5314,33 +5302,33 @@ local.set $0 global.get $~lib/memory/__stack_pointer global.get $std-wasi/process/envKeys - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.load offset=12 - local.set $3 + local.set $1 loop $for-loop|1 local.get $0 - local.get $3 + local.get $1 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 global.get $std-wasi/process/envKeys local.tee $4 i32.store - local.get $2 + local.get $3 local.get $4 local.get $0 call $~lib/array/Array<~lib/string/String>#__get - local.tee $2 + local.tee $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 5280 i32.store offset=4 i32.const 5280 call $~lib/process/writeString - local.get $2 + local.get $3 call $~lib/console/console.log global.get $~lib/memory/__stack_pointer i32.const 5312 @@ -5352,11 +5340,11 @@ local.tee $4 i32.store offset=4 local.get $4 - local.get $2 - local.get $2 + local.get $3 + local.get $3 call $~lib/util/hash/HASH<~lib/string/String> call $~lib/map/Map<~lib/string/String,~lib/string/String>#find - local.tee $2 + local.tee $3 i32.eqz if i32.const 5344 @@ -5367,11 +5355,11 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.load offset=4 - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 call $~lib/console/console.log local.get $0 i32.const 1 @@ -5405,7 +5393,7 @@ i64.load i64.const 1000000 i64.div_u - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -5418,7 +5406,7 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/number/itoa64 - local.get $1 + local.get $2 i64.eqz if global.get $~lib/memory/__stack_pointer @@ -5430,21 +5418,21 @@ br $__inlined_func$~lib/util/number/itoa64 end i64.const 0 - local.get $1 + local.get $2 i64.sub - local.get $1 - local.get $1 + local.get $2 + local.get $2 i64.const 63 i64.shr_u i32.wrap_i64 - local.tee $2 - select local.tee $1 + select + local.tee $2 i64.const 4294967295 i64.le_u if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.wrap_i64 local.tee $3 local.tee $0 @@ -5493,7 +5481,7 @@ i32.add end end - local.get $2 + local.get $1 i32.add local.tee $4 i32.const 1 @@ -5508,57 +5496,57 @@ call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i64.const 1000000000000000 i64.lt_u if (result i32) - local.get $1 + local.get $2 i64.const 1000000000000 i64.lt_u if (result i32) - local.get $1 + local.get $2 i64.const 100000000000 i64.ge_u i32.const 10 i32.add - local.get $1 + local.get $2 i64.const 10000000000 i64.ge_u i32.add else - local.get $1 + local.get $2 i64.const 100000000000000 i64.ge_u i32.const 13 i32.add - local.get $1 + local.get $2 i64.const 10000000000000 i64.ge_u i32.add end else - local.get $1 + local.get $2 i64.const 100000000000000000 i64.lt_u if (result i32) - local.get $1 + local.get $2 i64.const 10000000000000000 i64.ge_u i32.const 16 i32.add else - local.get $1 + local.get $2 i64.const -8446744073709551616 i64.ge_u i32.const 18 i32.add - local.get $1 + local.get $2 i64.const 1000000000000000000 i64.ge_u i32.add end end - local.get $2 + local.get $1 i32.add local.tee $3 i32.const 1 @@ -5568,11 +5556,11 @@ local.tee $0 i32.store local.get $0 - local.get $1 + local.get $2 local.get $3 call $~lib/util/number/utoa64_dec_lut end - local.get $2 + local.get $1 if local.get $0 i32.const 45 @@ -5611,7 +5599,7 @@ end i32.const 1088 i64.load - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -5624,7 +5612,7 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/number/utoa64 - local.get $1 + local.get $2 i64.eqz if global.get $~lib/memory/__stack_pointer @@ -5635,14 +5623,14 @@ local.set $0 br $__inlined_func$~lib/util/number/utoa64 end - local.get $1 + local.get $2 i64.const 4294967295 i64.le_u if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.wrap_i64 - local.tee $2 + local.tee $1 local.tee $0 i32.const 100000 i32.lt_u @@ -5697,62 +5685,62 @@ local.tee $0 i32.store local.get $0 - local.get $2 + local.get $1 local.get $3 call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i64.const 1000000000000000 i64.lt_u if (result i32) - local.get $1 + local.get $2 i64.const 1000000000000 i64.lt_u if (result i32) - local.get $1 + local.get $2 i64.const 100000000000 i64.ge_u i32.const 10 i32.add - local.get $1 + local.get $2 i64.const 10000000000 i64.ge_u i32.add else - local.get $1 + local.get $2 i64.const 100000000000000 i64.ge_u i32.const 13 i32.add - local.get $1 + local.get $2 i64.const 10000000000000 i64.ge_u i32.add end else - local.get $1 + local.get $2 i64.const 100000000000000000 i64.lt_u if (result i32) - local.get $1 + local.get $2 i64.const 10000000000000000 i64.ge_u i32.const 16 i32.add else - local.get $1 + local.get $2 i64.const -8446744073709551616 i64.ge_u i32.const 18 i32.add - local.get $1 + local.get $2 i64.const 1000000000000000000 i64.ge_u i32.add end end - local.tee $2 + local.tee $1 i32.const 1 i32.shl i32.const 1 @@ -5760,8 +5748,8 @@ local.tee $0 i32.store local.get $0 - local.get $1 local.get $2 + local.get $1 call $~lib/util/number/utoa64_dec_lut end global.get $~lib/memory/__stack_pointer @@ -5791,12 +5779,12 @@ i32.const 20 i32.sub i32.load offset=16 - local.set $2 + local.set $1 i32.const 1088 local.get $0 i32.store i32.const 1092 - local.get $2 + local.get $1 i32.store i32.const 0 i32.const 1088 @@ -5858,18 +5846,18 @@ i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 i32.store - local.get $1 + local.get $3 i32.const 0 i32.store offset=4 - local.get $1 + local.get $3 i32.const 0 i32.store offset=8 - local.get $1 + local.get $3 i32.const 0 i32.store offset=12 local.get $0 @@ -5892,38 +5880,38 @@ select i32.const 2 i32.shl - local.tee $3 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store offset=4 + local.get $1 local.get $2 - local.get $3 call $~lib/memory/memory.fill + local.get $3 local.get $1 - local.get $2 i32.store - local.get $2 + local.get $1 if + local.get $3 local.get $1 - local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $3 local.get $1 - local.get $2 i32.store offset=4 - local.get $1 local.get $3 + local.get $2 i32.store offset=8 - local.get $1 + local.get $3 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $3 ) (func $~lib/string/String.UTF8.decodeUnsafe (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -5981,12 +5969,12 @@ block $while-break|0 local.get $0 i32.load8_u - local.set $3 + local.set $6 local.get $0 i32.const 1 i32.add local.set $0 - local.get $3 + local.get $6 i32.const 128 i32.and if @@ -5998,20 +5986,20 @@ i32.load8_u i32.const 63 i32.and - local.set $5 + local.set $3 local.get $0 i32.const 1 i32.add local.set $0 - local.get $3 + local.get $6 i32.const 224 i32.and i32.const 192 i32.eq if local.get $1 - local.get $5 local.get $3 + local.get $6 i32.const 31 i32.and i32.const 6 @@ -6027,24 +6015,24 @@ i32.load8_u i32.const 63 i32.and - local.set $6 + local.set $5 local.get $0 i32.const 1 i32.add local.set $0 - local.get $3 + local.get $6 i32.const 240 i32.and i32.const 224 i32.eq if + local.get $5 local.get $6 - local.get $3 i32.const 15 i32.and i32.const 12 i32.shl - local.get $5 + local.get $3 i32.const 6 i32.shl i32.or @@ -6059,16 +6047,16 @@ i32.load8_u i32.const 63 i32.and - local.get $3 + local.get $6 i32.const 7 i32.and i32.const 18 i32.shl - local.get $5 + local.get $3 i32.const 12 i32.shl i32.or - local.get $6 + local.get $5 i32.const 6 i32.shl i32.or @@ -6112,11 +6100,11 @@ end end else - local.get $3 + local.get $6 i32.eqz br_if $while-break|0 local.get $1 - local.get $3 + local.get $6 i32.store16 end local.get $1 @@ -6267,51 +6255,51 @@ i32.const 0 i32.gt_s select - local.tee $3 + local.tee $1 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $1 + local.tee $3 local.get $1 local.get $3 - i32.gt_s + i32.lt_s select - local.tee $3 + local.tee $4 local.get $2 i32.const 0 local.get $2 i32.const 0 i32.gt_s select - local.tee $2 - local.get $1 + local.tee $1 + local.get $3 local.get $1 - local.get $2 - i32.gt_s + local.get $3 + i32.lt_s select local.tee $2 local.get $2 - local.get $3 + local.get $4 i32.gt_s select i32.const 1 i32.shl - local.set $4 - local.get $3 + local.set $1 + local.get $4 local.get $2 local.get $2 - local.get $3 + local.get $4 i32.lt_s select i32.const 1 i32.shl - local.tee $3 - local.get $4 - i32.sub local.tee $2 + local.get $1 + i32.sub + local.tee $4 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -6322,12 +6310,12 @@ return end i32.const 0 - local.get $1 + local.get $3 i32.const 1 i32.shl - local.get $3 + local.get $2 i32.eq - local.get $4 + local.get $1 select if global.get $~lib/memory/__stack_pointer @@ -6338,22 +6326,22 @@ return end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 local.get $0 - local.get $4 + local.get $1 i32.add - local.get $2 + local.get $4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 ) (func $~lib/map/Map<~lib/string/String,~lib/string/String>#set (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -6381,7 +6369,7 @@ local.get $1 local.get $1 call $~lib/util/hash/HASH<~lib/string/String> - local.tee $9 + local.tee $7 call $~lib/map/Map<~lib/string/String,~lib/string/String>#find local.tee $3 if @@ -6422,7 +6410,7 @@ i32.const 1 i32.or end - local.set $7 + local.set $8 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -6439,14 +6427,14 @@ i32.const 0 i32.store offset=8 local.get $3 - local.get $7 + local.get $8 i32.const 1 i32.add local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $9 i32.store global.get $~lib/memory/__stack_pointer local.get $3 @@ -6454,7 +6442,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $10 + local.tee $6 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -6462,51 +6450,51 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $5 + local.tee $10 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $11 + local.set $5 local.get $4 local.set $3 loop $while-continue|0 local.get $5 - local.get $11 + local.get $10 i32.ne if - local.get $5 + local.get $10 i32.load offset=8 i32.const 1 i32.and i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $10 i32.load - local.tee $8 + local.tee $11 i32.store offset=8 local.get $3 - local.get $8 + local.get $11 i32.store local.get $3 - local.get $5 + local.get $10 i32.load offset=4 i32.store offset=4 local.get $3 - local.get $8 + local.get $11 call $~lib/util/hash/HASH<~lib/string/String> - local.get $7 + local.get $8 i32.and i32.const 2 i32.shl - local.get $6 + local.get $9 i32.add - local.tee $8 + local.tee $11 i32.load i32.store offset=8 - local.get $8 + local.get $11 local.get $3 i32.store local.get $3 @@ -6514,25 +6502,25 @@ i32.add local.set $3 end - local.get $5 + local.get $10 i32.const 12 i32.add - local.set $5 + local.set $10 br $while-continue|0 end end local.get $0 - local.get $6 + local.get $9 i32.store - local.get $6 + local.get $9 if local.get $0 - local.get $6 + local.get $9 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $8 i32.store offset=4 local.get $0 local.get $4 @@ -6545,7 +6533,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $10 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -6604,7 +6592,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $9 + local.get $7 i32.and i32.const 2 i32.shl @@ -6673,16 +6661,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $3 i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $3 local.get $1 local.get $2 select @@ -6691,7 +6679,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $0 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/array-access.optimized.wat b/tests/compiler/std/array-access.optimized.wat index dbc8cfa038..93906c50d8 100644 --- a/tests/compiler/std/array-access.optimized.wat +++ b/tests/compiler/std/array-access.optimized.wat @@ -34,9 +34,9 @@ local.tee $1 local.get $1 select - local.set $3 + local.set $2 local.get $1 - local.get $3 + local.get $2 i32.const 1292 i32.load i32.const 1 @@ -50,13 +50,13 @@ end block $__inlined_func$~lib/util/string/compareImpl (result i32) i32.const 1296 - local.set $2 - local.get $3 + local.set $3 + local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.tee $3 + local.tee $2 i32.const 7 i32.and i32.const 1 @@ -68,20 +68,20 @@ i32.eqz if loop $do-loop|0 - local.get $3 - i64.load local.get $2 i64.load + local.get $3 + i64.load i64.eq if - local.get $3 - i32.const 8 - i32.add - local.set $3 local.get $2 i32.const 8 i32.add local.set $2 + local.get $3 + i32.const 8 + i32.add + local.set $3 local.get $0 i32.const 4 i32.sub @@ -100,10 +100,10 @@ local.set $0 local.get $1 if - local.get $2 + local.get $3 i32.load16_u local.tee $1 - local.get $3 + local.get $2 i32.load16_u local.tee $4 i32.ne @@ -113,14 +113,14 @@ i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 - i32.const 2 - i32.add - local.set $3 local.get $2 i32.const 2 i32.add local.set $2 + local.get $3 + i32.const 2 + i32.add + local.set $3 br $while-continue|1 end end diff --git a/tests/compiler/std/array-literal.optimized.wat b/tests/compiler/std/array-literal.optimized.wat index 684012354f..2a60e619fa 100644 --- a/tests/compiler/std/array-literal.optimized.wat +++ b/tests/compiler/std/array-literal.optimized.wat @@ -217,7 +217,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -240,7 +240,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -250,23 +250,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -274,7 +274,7 @@ else i32.const 1792 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1200 @@ -284,7 +284,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 1796 @@ -299,27 +299,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -407,19 +407,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -444,9 +444,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -454,17 +454,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -752,10 +752,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -767,15 +767,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -805,7 +805,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -841,12 +841,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -864,11 +864,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 18256 @@ -876,14 +876,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -893,17 +893,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1383,7 +1383,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1409,32 +1409,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1467,7 +1467,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1475,8 +1475,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1493,7 +1493,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1503,13 +1503,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1525,7 +1525,7 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub local.tee $6 i32.const 16 @@ -1535,23 +1535,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 + local.tee $4 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1581,26 +1581,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1615,7 +1615,7 @@ local.get $2 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1627,7 +1627,7 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1642,12 +1642,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1659,7 +1659,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $2 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1674,25 +1674,25 @@ i32.sub i32.const 3 i32.and - local.tee $2 + local.tee $3 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1702,17 +1702,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1728,22 +1728,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 @@ -1754,11 +1754,11 @@ i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1790,7 +1790,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/array/Array#__uset (param $0 i32) (param $1 i32) (param $2 i32) local.get $0 @@ -2620,16 +2620,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $3 i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $3 local.get $1 local.get $2 select @@ -2638,7 +2638,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $0 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index 21216c9696..46f51d88f6 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -825,7 +825,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -848,7 +848,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -858,23 +858,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -882,7 +882,7 @@ else i32.const 15264 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1344 @@ -892,7 +892,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 15268 @@ -907,27 +907,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -1015,19 +1015,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -1052,9 +1052,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -1062,17 +1062,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -1360,10 +1360,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -1375,15 +1375,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -1413,7 +1413,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1449,12 +1449,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -1472,11 +1472,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 32048 @@ -1484,14 +1484,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -1501,17 +1501,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1597,7 +1597,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $1 + local.set $2 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -1614,11 +1614,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -1660,9 +1660,9 @@ if local.get $0 i32.load - local.tee $2 + local.tee $1 if - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -1686,11 +1686,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -1716,7 +1716,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $1 + local.get $2 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -1936,7 +1936,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $1 local.get $0 i32.const 1073741820 i32.gt_u @@ -1962,34 +1962,34 @@ i32.const 4 i32.sub end - local.tee $0 + local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if memory.size - local.tee $1 - local.get $0 + local.tee $0 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $0 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $0 + local.get $3 i32.add else - local.get $0 + local.get $3 end i32.const 4 - local.get $2 - i32.load offset=1568 local.get $1 + i32.load offset=1568 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -2003,16 +2003,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $1 - local.get $3 + local.tee $2 + local.get $0 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -2020,18 +2020,18 @@ unreachable end end - local.get $2 local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 - local.get $0 + local.get $1 + local.get $3 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -2042,11 +2042,11 @@ unreachable end end - local.get $1 + local.get $0 i32.load i32.const -4 i32.and - local.get $0 + local.get $3 i32.lt_u if i32.const 0 @@ -2056,13 +2056,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $1 - i32.load - local.set $3 local.get $0 + i32.load + local.set $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -2075,65 +2075,65 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const -4 i32.and - local.get $0 + local.get $3 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.const 2 i32.and - local.get $0 + local.get $3 i32.or i32.store + local.get $3 local.get $0 - local.get $1 i32.const 4 i32.add i32.add - local.tee $0 - local.get $4 + local.tee $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 - local.get $0 - call $~lib/rt/tlsf/insertBlock - else local.get $1 local.get $3 + call $~lib/rt/tlsf/insertBlock + else + local.get $0 + local.get $4 i32.const -2 i32.and i32.store - local.get $1 + local.get $0 i32.const 4 i32.add - local.get $1 + local.get $0 i32.load i32.const -4 i32.and i32.add - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.load i32.const -3 i32.and i32.store end - local.get $1 + local.get $0 i32.const 4 i32.add ) (func $~lib/memory/memory.fill (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i64) + (local $3 i64) + (local $4 i32) (local $5 i32) block $~lib/util/memory/memset|inlined.0 local.get $2 @@ -2145,7 +2145,7 @@ local.get $0 local.get $2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.sub local.get $1 @@ -2160,12 +2160,12 @@ local.get $0 local.get $1 i32.store8 offset=2 - local.get $3 + local.get $4 i32.const 2 i32.sub local.get $1 i32.store8 - local.get $3 + local.get $4 i32.const 3 i32.sub local.get $1 @@ -2177,7 +2177,7 @@ local.get $0 local.get $1 i32.store8 offset=3 - local.get $3 + local.get $4 i32.const 4 i32.sub local.get $1 @@ -2192,19 +2192,19 @@ i32.sub i32.const 3 i32.and - local.tee $5 + local.tee $4 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 255 i32.and i32.const 16843009 i32.mul - local.tee $0 + local.tee $5 i32.store - local.get $3 + local.get $0 local.get $2 - local.get $5 + local.get $4 i32.sub i32.const -4 i32.and @@ -2213,101 +2213,101 @@ local.tee $1 i32.const 4 i32.sub - local.get $0 + local.get $5 i32.store local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $3 local.get $0 + local.get $5 i32.store offset=4 - local.get $3 local.get $0 + local.get $5 i32.store offset=8 local.get $1 i32.const 12 i32.sub - local.get $0 + local.get $5 i32.store local.get $1 i32.const 8 i32.sub - local.get $0 + local.get $5 i32.store local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $3 local.get $0 + local.get $5 i32.store offset=12 - local.get $3 local.get $0 + local.get $5 i32.store offset=16 - local.get $3 local.get $0 + local.get $5 i32.store offset=20 - local.get $3 local.get $0 + local.get $5 i32.store offset=24 local.get $1 i32.const 28 i32.sub - local.get $0 + local.get $5 i32.store local.get $1 i32.const 24 i32.sub - local.get $0 + local.get $5 i32.store local.get $1 i32.const 20 i32.sub - local.get $0 + local.get $5 i32.store local.get $1 i32.const 16 i32.sub - local.get $0 + local.get $5 i32.store - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.const 4 i32.and i32.const 24 i32.add - local.tee $5 + local.tee $4 i32.add local.set $1 local.get $2 - local.get $5 + local.get $4 i32.sub local.set $2 - local.get $0 + local.get $5 i64.extend_i32_u - local.tee $4 + local.tee $3 i64.const 32 i64.shl - local.get $4 + local.get $3 i64.or - local.set $4 + local.set $3 loop $while-continue|0 local.get $2 i32.const 32 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i64.store local.get $1 - local.get $4 + local.get $3 i64.store offset=8 local.get $1 - local.get $4 + local.get $3 i64.store offset=16 local.get $1 - local.get $4 + local.get $3 i64.store offset=24 local.get $2 i32.const 32 @@ -2394,26 +2394,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2889,115 +2889,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3029,43 +3019,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3721,13 +3709,13 @@ local.get $1 i32.const 1 i32.sub - local.tee $1 + local.tee $2 i32.const 2 i32.shl i32.add i32.load local.get $0 - local.get $1 + local.get $2 i32.store offset=12 ) (func $~lib/array/Array#__uset (param $0 i32) (param $1 i32) (param $2 i32) @@ -3964,9 +3952,9 @@ (func $~lib/array/Array#reverse (param $0 i32) (result i32) (local $1 i32) (local $2 i32) - (local $3 i32) + (local $3 i64) (local $4 i32) - (local $5 i64) + (local $5 i32) (local $6 i32) (local $7 i32) (local $8 i64) @@ -3975,15 +3963,15 @@ local.set $2 local.get $0 i32.load offset=12 - local.tee $3 + local.tee $5 i32.const 1 i32.gt_u if - local.get $3 + local.get $5 i32.const 1 i32.shr_u local.set $4 - local.get $3 + local.get $5 i32.const 8 i32.sub local.set $6 @@ -3999,18 +3987,18 @@ i32.add local.tee $7 i64.load - local.tee $5 + local.tee $3 i64.const 8 i64.shr_u i64.const 71777214294589695 i64.and - local.get $5 + local.get $3 i64.const 71777214294589695 i64.and i64.const 8 i64.shl i64.or - local.set $5 + local.set $3 local.get $7 local.get $2 local.get $6 @@ -4045,12 +4033,12 @@ i64.rotr i64.store local.get $7 - local.get $5 + local.get $3 i64.const 16 i64.shr_u i64.const 281470681808895 i64.and - local.get $5 + local.get $3 i64.const 281470681808895 i64.and i64.const 16 @@ -4066,10 +4054,10 @@ br $while-continue|0 end end - local.get $3 + local.get $5 i32.const 1 i32.sub - local.set $3 + local.set $5 loop $while-continue|1 local.get $1 local.get $4 @@ -4082,7 +4070,7 @@ i32.load8_u local.set $7 local.get $6 - local.get $3 + local.get $5 local.get $1 i32.sub local.get $2 @@ -4116,50 +4104,50 @@ local.set $2 local.get $0 i32.load offset=12 - local.tee $3 + local.tee $5 i32.const 1 i32.gt_u if - local.get $3 + local.get $5 i32.const 1 i32.shr_u - local.set $4 - local.get $3 + local.set $3 + local.get $5 i32.const 2 i32.sub - local.set $5 + local.set $6 loop $while-continue|0 - local.get $4 + local.get $3 local.get $1 i32.const 1 i32.add i32.gt_u if - local.get $5 + local.get $6 local.get $1 i32.sub i32.const 1 i32.shl local.get $2 i32.add - local.tee $6 + local.tee $7 i32.load i32.const 16 i32.rotr - local.set $7 - local.get $6 + local.set $4 + local.get $7 local.get $1 i32.const 1 i32.shl local.get $2 i32.add - local.tee $6 + local.tee $7 i32.load i32.const 16 i32.rotr i32.store - local.get $6 local.get $7 + local.get $4 i32.store local.get $1 i32.const 2 @@ -4168,13 +4156,13 @@ br $while-continue|0 end end - local.get $3 + local.get $5 i32.const 1 i32.sub - local.set $3 + local.set $4 loop $while-continue|1 local.get $1 - local.get $4 + local.get $3 i32.lt_u if local.get $1 @@ -4186,7 +4174,7 @@ i32.load16_u local.set $6 local.get $5 - local.get $3 + local.get $4 local.get $1 i32.sub i32.const 1 @@ -5106,13 +5094,13 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) + (local $9 f32) (local $10 f32) - (local $11 f32) + (local $11 i64) (local $12 i32) (local $13 i32) (local $14 i32) - (local $15 i64) + (local $15 i32) local.get $1 i32.const 48 i32.le_s @@ -5140,14 +5128,14 @@ local.set $10 local.get $0 f32.load offset=4 - local.set $11 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $9 local.get $10 local.get $10 - local.get $11 + local.get $9 local.get $2 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -5157,20 +5145,20 @@ select f32.store local.get $10 - local.get $11 + local.get $9 local.get $1 select local.set $10 local.get $0 f32.load offset=8 - local.set $11 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $9 local.get $10 local.get $10 - local.get $11 + local.get $9 local.get $2 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -5181,7 +5169,7 @@ f32.store offset=4 local.get $0 local.get $10 - local.get $11 + local.get $9 local.get $1 select f32.store offset=8 @@ -5191,14 +5179,14 @@ local.set $10 local.get $0 f32.load offset=4 - local.set $11 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $9 local.get $10 local.get $10 - local.get $11 + local.get $9 local.get $2 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -5209,7 +5197,7 @@ f32.store local.get $0 local.get $10 - local.get $11 + local.get $9 local.get $1 select f32.store offset=4 @@ -5236,28 +5224,28 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $9 + local.tee $14 local.get $5 i32.add - local.set $12 + local.set $13 i32.const 0 - local.set $5 + local.set $7 loop $for-loop|1 - local.get $5 local.get $6 - i32.lt_u + local.get $7 + i32.gt_u if - local.get $5 + local.get $7 i32.const 2 i32.shl - local.get $9 + local.get $14 i32.add i32.const -1 i32.store - local.get $5 + local.get $7 i32.const 1 i32.add - local.set $5 + local.set $7 br $for-loop|1 end end @@ -5265,117 +5253,117 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $13 + local.set $12 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $8 + local.tee $15 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $1 + local.tee $6 i32.const 1 i32.add - local.tee $5 + local.tee $1 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $8 + local.get $15 i32.const 31 - local.get $8 + local.get $15 i32.const 31 i32.lt_s select - local.tee $1 - local.get $5 + local.tee $6 + local.get $1 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $1 - local.get $8 + local.get $6 + local.get $15 i32.lt_s if local.get $0 - local.get $1 + local.get $6 i32.const 1 i32.add - local.tee $6 - local.get $8 + local.tee $5 + local.get $15 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $5 - local.get $6 + local.tee $7 + local.get $5 i32.sub i32.const 1 i32.add - local.tee $7 + local.tee $8 i32.const 32 i32.lt_s if local.get $0 - local.get $6 - local.get $8 - local.get $6 + local.get $5 + local.get $15 + local.get $5 i32.const 31 i32.add - local.tee $5 - local.get $5 - local.get $8 + local.tee $1 + local.get $1 + local.get $15 i32.gt_s select - local.tee $5 - local.get $7 + local.tee $7 + local.get $8 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $6 + local.get $5 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $15 i32.const 1 i32.add i64.extend_i32_u - local.tee $15 + local.tee $11 i64.div_u local.get $5 - local.get $6 + local.get $7 i32.add i32.const 1 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $15 + local.get $11 i64.div_u i64.xor i32.wrap_i64 i32.clz - local.set $7 + local.set $1 loop $for-loop|3 + local.get $1 local.get $4 - local.get $7 - i32.gt_u + i32.lt_u if local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $14 i32.add i32.load - local.tee $14 + local.tee $8 i32.const -1 i32.ne if local.get $0 - local.get $14 - local.get $12 + local.get $8 + local.get $13 local.get $4 i32.const 2 i32.shl @@ -5384,16 +5372,16 @@ i32.load i32.const 1 i32.add - local.get $1 - local.get $13 + local.get $6 + local.get $12 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $9 + local.get $14 i32.add i32.const -1 i32.store - local.get $14 + local.get $8 local.set $3 end local.get $4 @@ -5403,8 +5391,8 @@ br $for-loop|3 end end - local.get $9 - local.get $7 + local.get $14 + local.get $1 i32.const 2 i32.shl local.tee $4 @@ -5412,15 +5400,15 @@ local.get $3 i32.store local.get $4 - local.get $12 + local.get $13 i32.add - local.get $1 - i32.store local.get $6 - local.set $3 + i32.store local.get $5 - local.set $1 + local.set $3 local.get $7 + local.set $6 + local.get $1 local.set $4 br $while-continue|2 end @@ -5431,7 +5419,7 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $14 i32.add i32.load local.tee $1 @@ -5443,13 +5431,13 @@ local.get $4 i32.const 2 i32.shl - local.get $12 + local.get $13 i32.add i32.load i32.const 1 i32.add - local.get $8 - local.get $13 + local.get $15 + local.get $12 local.get $2 call $~lib/util/sort/mergeRuns end @@ -5460,9 +5448,9 @@ br $for-loop|4 end end - local.get $13 + local.get $12 call $~lib/rt/tlsf/__free - local.get $9 + local.get $14 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 f32) (param $1 f32) (result i32) @@ -5496,11 +5484,11 @@ ) (func $std/array/isArraysEqual (param $0 i32) (param $1 i32) (result i32) (local $2 i32) - (local $3 i32) - (local $4 f32) + (local $3 f32) + (local $4 i32) local.get $0 i32.load offset=12 - local.tee $3 + local.tee $4 local.get $1 i32.load offset=12 i32.ne @@ -5517,21 +5505,21 @@ end loop $for-loop|0 local.get $2 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.get $2 call $~lib/array/Array#__get - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 f32.ne if (result i32) local.get $1 local.get $2 call $~lib/array/Array#__get - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 f32.ne else i32.const 0 @@ -5992,13 +5980,13 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) + (local $9 f64) (local $10 f64) - (local $11 f64) + (local $11 i64) (local $12 i32) (local $13 i32) (local $14 i32) - (local $15 i64) + (local $15 i32) local.get $1 i32.const 48 i32.le_s @@ -6026,14 +6014,14 @@ local.set $10 local.get $0 f64.load offset=8 - local.set $11 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $9 local.get $10 local.get $10 - local.get $11 + local.get $9 local.get $2 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -6043,20 +6031,20 @@ select f64.store local.get $10 - local.get $11 + local.get $9 local.get $1 select local.set $10 local.get $0 f64.load offset=16 - local.set $11 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $9 local.get $10 local.get $10 - local.get $11 + local.get $9 local.get $2 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -6067,7 +6055,7 @@ f64.store offset=8 local.get $0 local.get $10 - local.get $11 + local.get $9 local.get $1 select f64.store offset=16 @@ -6077,14 +6065,14 @@ local.set $10 local.get $0 f64.load offset=8 - local.set $11 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $9 local.get $10 local.get $10 - local.get $11 + local.get $9 local.get $2 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -6095,7 +6083,7 @@ f64.store local.get $0 local.get $10 - local.get $11 + local.get $9 local.get $1 select f64.store offset=8 @@ -6122,28 +6110,28 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $9 + local.tee $14 local.get $5 i32.add - local.set $12 + local.set $13 i32.const 0 - local.set $5 + local.set $7 loop $for-loop|1 - local.get $5 local.get $6 - i32.lt_u + local.get $7 + i32.gt_u if - local.get $5 + local.get $7 i32.const 2 i32.shl - local.get $9 + local.get $14 i32.add i32.const -1 i32.store - local.get $5 + local.get $7 i32.const 1 i32.add - local.set $5 + local.set $7 br $for-loop|1 end end @@ -6151,117 +6139,117 @@ i32.const 3 i32.shl call $~lib/rt/tlsf/__alloc - local.set $13 + local.set $12 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $8 + local.tee $15 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $1 + local.tee $6 i32.const 1 i32.add - local.tee $5 + local.tee $1 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $8 + local.get $15 i32.const 31 - local.get $8 + local.get $15 i32.const 31 i32.lt_s select - local.tee $1 - local.get $5 + local.tee $6 + local.get $1 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $1 - local.get $8 + local.get $6 + local.get $15 i32.lt_s if local.get $0 - local.get $1 + local.get $6 i32.const 1 i32.add - local.tee $6 - local.get $8 + local.tee $5 + local.get $15 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $5 - local.get $6 + local.tee $7 + local.get $5 i32.sub i32.const 1 i32.add - local.tee $7 + local.tee $8 i32.const 32 i32.lt_s if local.get $0 - local.get $6 - local.get $8 - local.get $6 + local.get $5 + local.get $15 + local.get $5 i32.const 31 i32.add - local.tee $5 - local.get $5 - local.get $8 + local.tee $1 + local.get $1 + local.get $15 i32.gt_s select - local.tee $5 - local.get $7 + local.tee $7 + local.get $8 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $6 + local.get $5 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $15 i32.const 1 i32.add i64.extend_i32_u - local.tee $15 + local.tee $11 i64.div_u local.get $5 - local.get $6 + local.get $7 i32.add i32.const 1 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $15 + local.get $11 i64.div_u i64.xor i32.wrap_i64 i32.clz - local.set $7 + local.set $1 loop $for-loop|3 + local.get $1 local.get $4 - local.get $7 - i32.gt_u + i32.lt_u if local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $14 i32.add i32.load - local.tee $14 + local.tee $8 i32.const -1 i32.ne if local.get $0 - local.get $14 - local.get $12 + local.get $8 + local.get $13 local.get $4 i32.const 2 i32.shl @@ -6270,16 +6258,16 @@ i32.load i32.const 1 i32.add - local.get $1 - local.get $13 + local.get $6 + local.get $12 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $9 + local.get $14 i32.add i32.const -1 i32.store - local.get $14 + local.get $8 local.set $3 end local.get $4 @@ -6289,8 +6277,8 @@ br $for-loop|3 end end - local.get $9 - local.get $7 + local.get $14 + local.get $1 i32.const 2 i32.shl local.tee $4 @@ -6298,15 +6286,15 @@ local.get $3 i32.store local.get $4 - local.get $12 + local.get $13 i32.add - local.get $1 - i32.store local.get $6 - local.set $3 + i32.store local.get $5 - local.set $1 + local.set $3 local.get $7 + local.set $6 + local.get $1 local.set $4 br $while-continue|2 end @@ -6317,7 +6305,7 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $14 i32.add i32.load local.tee $1 @@ -6329,13 +6317,13 @@ local.get $4 i32.const 2 i32.shl - local.get $12 + local.get $13 i32.add i32.load i32.const 1 i32.add - local.get $8 - local.get $13 + local.get $15 + local.get $12 local.get $2 call $~lib/util/sort/mergeRuns end @@ -6346,9 +6334,9 @@ br $for-loop|4 end end - local.get $13 + local.get $12 call $~lib/rt/tlsf/__free - local.get $9 + local.get $14 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 f64) (param $1 f64) (result i32) @@ -6830,12 +6818,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) local.get $1 i32.const 48 i32.le_s @@ -6959,7 +6947,7 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $9 + local.tee $11 local.get $5 i32.add local.set $10 @@ -6973,7 +6961,7 @@ local.get $5 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.const -1 i32.store @@ -6988,13 +6976,13 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $11 + local.set $9 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $8 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -7006,9 +6994,9 @@ if local.get $0 i32.const 0 - local.get $8 + local.get $12 i32.const 31 - local.get $8 + local.get $12 i32.const 31 i32.lt_s select @@ -7019,7 +7007,7 @@ end loop $while-continue|2 local.get $1 - local.get $8 + local.get $12 i32.lt_s if local.get $0 @@ -7027,7 +7015,7 @@ i32.const 1 i32.add local.tee $6 - local.get $8 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -7041,13 +7029,13 @@ if local.get $0 local.get $6 - local.get $8 + local.get $12 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $8 + local.get $12 i32.gt_s select local.tee $5 @@ -7061,11 +7049,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $12 i32.const 1 i32.add i64.extend_i32_u - local.tee $13 + local.tee $8 i64.div_u local.get $5 local.get $6 @@ -7075,7 +7063,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $8 i64.div_u i64.xor i32.wrap_i64 @@ -7089,15 +7077,15 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.load - local.tee $12 + local.tee $13 i32.const -1 i32.ne if local.get $0 - local.get $12 + local.get $13 local.get $10 local.get $4 i32.const 2 @@ -7108,15 +7096,15 @@ i32.const 1 i32.add local.get $1 - local.get $11 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $9 + local.get $11 i32.add i32.const -1 i32.store - local.get $12 + local.get $13 local.set $3 end local.get $4 @@ -7126,7 +7114,7 @@ br $for-loop|3 end end - local.get $9 + local.get $11 local.get $7 i32.const 2 i32.shl @@ -7154,7 +7142,7 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.load local.tee $1 @@ -7171,8 +7159,8 @@ i32.load i32.const 1 i32.add - local.get $8 - local.get $11 + local.get $12 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns end @@ -7183,10 +7171,10 @@ br $for-loop|4 end end - local.get $11 - call $~lib/rt/tlsf/__free local.get $9 call $~lib/rt/tlsf/__free + local.get $11 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -7622,12 +7610,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) local.get $1 i32.const 48 i32.le_s @@ -7751,7 +7739,7 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $9 + local.tee $11 local.get $5 i32.add local.set $10 @@ -7765,7 +7753,7 @@ local.get $5 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.const -1 i32.store @@ -7780,13 +7768,13 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $11 + local.set $9 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $8 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -7798,9 +7786,9 @@ if local.get $0 i32.const 0 - local.get $8 + local.get $12 i32.const 31 - local.get $8 + local.get $12 i32.const 31 i32.lt_s select @@ -7811,7 +7799,7 @@ end loop $while-continue|2 local.get $1 - local.get $8 + local.get $12 i32.lt_s if local.get $0 @@ -7819,7 +7807,7 @@ i32.const 1 i32.add local.tee $6 - local.get $8 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -7833,13 +7821,13 @@ if local.get $0 local.get $6 - local.get $8 + local.get $12 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $8 + local.get $12 i32.gt_s select local.tee $5 @@ -7853,11 +7841,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $12 i32.const 1 i32.add i64.extend_i32_u - local.tee $13 + local.tee $8 i64.div_u local.get $5 local.get $6 @@ -7867,7 +7855,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $8 i64.div_u i64.xor i32.wrap_i64 @@ -7881,15 +7869,15 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.load - local.tee $12 + local.tee $13 i32.const -1 i32.ne if local.get $0 - local.get $12 + local.get $13 local.get $10 local.get $4 i32.const 2 @@ -7900,15 +7888,15 @@ i32.const 1 i32.add local.get $1 - local.get $11 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $9 + local.get $11 i32.add i32.const -1 i32.store - local.get $12 + local.get $13 local.set $3 end local.get $4 @@ -7918,7 +7906,7 @@ br $for-loop|3 end end - local.get $9 + local.get $11 local.get $7 i32.const 2 i32.shl @@ -7946,7 +7934,7 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.load local.tee $1 @@ -7963,8 +7951,8 @@ i32.load i32.const 1 i32.add - local.get $8 - local.get $11 + local.get $12 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns end @@ -7975,10 +7963,10 @@ br $for-loop|4 end end - local.get $11 - call $~lib/rt/tlsf/__free local.get $9 call $~lib/rt/tlsf/__free + local.get $11 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -8079,33 +8067,33 @@ select local.get $1 i32.add - local.set $7 + local.set $8 loop $for-loop|0 local.get $2 - local.get $7 + local.get $8 i32.ge_s if global.get $~lib/memory/__stack_pointer - local.tee $5 - local.get $7 + local.tee $3 + local.get $8 i32.const 2 i32.shl local.get $0 i32.add local.tee $6 i32.load - local.tee $3 + local.tee $5 i32.store - local.get $5 + local.get $3 local.get $6 i32.load offset=4 local.tee $6 i32.store offset=4 local.get $6 - local.set $5 + local.set $3 i32.const 2 global.set $~argumentsLength - local.get $3 + local.get $5 local.get $6 local.get $4 i32.load @@ -8113,12 +8101,12 @@ i32.const 0 i32.le_s if - local.get $3 - local.set $5 - local.get $6 + local.get $5 local.set $3 + local.get $6 + local.set $5 end - local.get $7 + local.get $8 i32.const 1 i32.sub local.set $6 @@ -8135,12 +8123,12 @@ local.get $0 i32.add i32.load - local.tee $8 + local.tee $7 i32.store i32.const 2 global.set $~argumentsLength - local.get $8 - local.get $3 + local.get $7 + local.get $5 local.get $4 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -8152,7 +8140,7 @@ i32.shl local.get $0 i32.add - local.get $8 + local.get $7 i32.store offset=8 local.get $6 i32.const 1 @@ -8167,7 +8155,7 @@ i32.shl local.get $0 i32.add - local.get $3 + local.get $5 i32.store offset=8 loop $while-continue|2 local.get $1 @@ -8182,12 +8170,12 @@ local.get $0 i32.add i32.load - local.tee $3 + local.tee $5 i32.store i32.const 2 global.set $~argumentsLength - local.get $3 local.get $5 + local.get $3 local.get $4 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -8199,7 +8187,7 @@ i32.shl local.get $0 i32.add - local.get $3 + local.get $5 i32.store offset=4 local.get $6 i32.const 1 @@ -8214,12 +8202,12 @@ i32.shl local.get $0 i32.add - local.get $5 + local.get $3 i32.store offset=4 - local.get $7 + local.get $8 i32.const 2 i32.add - local.set $7 + local.set $8 br $for-loop|0 end end @@ -8315,28 +8303,28 @@ i32.le_s if global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $7 local.get $6 i32.const 2 i32.shl local.get $4 i32.add i32.load - local.tee $7 + local.tee $8 i32.store - local.get $8 + local.get $7 local.get $2 i32.const 2 i32.shl local.get $4 i32.add i32.load - local.tee $8 + local.tee $7 i32.store offset=4 i32.const 2 global.set $~argumentsLength - local.get $7 local.get $8 + local.get $7 local.get $5 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -8348,7 +8336,7 @@ i32.shl local.get $0 i32.add - local.get $7 + local.get $8 i32.store local.get $6 i32.const 1 @@ -8360,7 +8348,7 @@ i32.shl local.get $0 i32.add - local.get $8 + local.get $7 i32.store local.get $2 i32.const 1 @@ -8386,11 +8374,11 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) + (local $9 i64) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -8407,10 +8395,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $4 i64.const 0 i64.store - local.get $5 + local.get $4 i32.const 0 i32.store offset=8 block $folding-inner0 @@ -8435,23 +8423,23 @@ br $break|0 end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.load - local.tee $1 + local.tee $3 i32.store - local.get $3 + local.get $1 local.get $0 i32.load offset=4 - local.tee $3 + local.tee $1 i32.store offset=4 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $3 - local.get $1 local.get $1 local.get $3 + local.get $3 + local.get $1 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -8461,8 +8449,8 @@ select i32.store global.get $~lib/memory/__stack_pointer - local.get $1 local.get $3 + local.get $1 local.get $4 select local.tee $1 @@ -8495,23 +8483,23 @@ i32.store offset=8 end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 local.get $0 i32.load - local.tee $1 + local.tee $3 i32.store offset=8 - local.get $3 + local.get $1 local.get $0 i32.load offset=4 - local.tee $3 + local.tee $1 i32.store offset=4 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $3 - local.get $1 local.get $1 local.get $3 + local.get $3 + local.get $1 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -8521,8 +8509,8 @@ select i32.store local.get $0 - local.get $1 local.get $3 + local.get $1 local.get $2 select i32.store offset=4 @@ -8545,32 +8533,32 @@ local.tee $6 i32.const 2 i32.shl - local.tee $5 + local.tee $4 i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $9 - local.get $5 + local.tee $12 + local.get $4 i32.add - local.set $10 + local.set $11 i32.const 0 - local.set $5 + local.set $4 loop $for-loop|1 - local.get $5 + local.get $4 local.get $6 i32.lt_u if - local.get $5 + local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $12 i32.add i32.const -1 i32.store - local.get $5 + local.get $4 i32.const 1 i32.add - local.set $5 + local.set $4 br $for-loop|1 end end @@ -8578,38 +8566,38 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $11 + local.set $10 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $8 + local.tee $13 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 i32.const 1 i32.add - local.tee $5 + local.tee $4 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $8 + local.get $13 i32.const 31 - local.get $8 + local.get $13 i32.const 31 i32.lt_s select local.tee $1 - local.get $5 + local.get $4 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 local.get $1 - local.get $8 + local.get $13 i32.lt_s if local.get $0 @@ -8617,10 +8605,10 @@ i32.const 1 i32.add local.tee $6 - local.get $8 + local.get $13 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $5 + local.tee $4 local.get $6 i32.sub i32.const 1 @@ -8631,16 +8619,16 @@ if local.get $0 local.get $6 - local.get $8 + local.get $13 local.get $6 i32.const 31 i32.add - local.tee $5 - local.get $5 - local.get $8 + local.tee $4 + local.get $4 + local.get $13 i32.gt_s select - local.tee $5 + local.tee $4 local.get $7 local.get $2 call $~lib/util/sort/insertionSort @@ -8651,13 +8639,13 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $13 i32.const 1 i32.add i64.extend_i32_u - local.tee $13 + local.tee $9 i64.div_u - local.get $5 + local.get $4 local.get $6 i32.add i32.const 1 @@ -8665,31 +8653,31 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $9 i64.div_u i64.xor i32.wrap_i64 i32.clz local.set $7 loop $for-loop|3 - local.get $4 + local.get $5 local.get $7 i32.gt_u if - local.get $4 + local.get $5 i32.const 2 i32.shl - local.get $9 + local.get $12 i32.add i32.load - local.tee $12 + local.tee $8 i32.const -1 i32.ne if local.get $0 - local.get $12 - local.get $10 - local.get $4 + local.get $8 + local.get $11 + local.get $5 i32.const 2 i32.shl local.tee $3 @@ -8698,53 +8686,53 @@ i32.const 1 i32.add local.get $1 - local.get $11 + local.get $10 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $9 + local.get $12 i32.add i32.const -1 i32.store - local.get $12 + local.get $8 local.set $3 end - local.get $4 + local.get $5 i32.const 1 i32.sub - local.set $4 + local.set $5 br $for-loop|3 end end - local.get $9 + local.get $12 local.get $7 i32.const 2 i32.shl - local.tee $4 + local.tee $5 i32.add local.get $3 i32.store - local.get $4 - local.get $10 + local.get $5 + local.get $11 i32.add local.get $1 i32.store local.get $6 local.set $3 - local.get $5 + local.get $4 local.set $1 local.get $7 - local.set $4 + local.set $5 br $while-continue|2 end end loop $for-loop|4 - local.get $4 + local.get $5 if - local.get $4 + local.get $5 i32.const 2 i32.shl - local.get $9 + local.get $12 i32.add i32.load local.tee $1 @@ -8753,29 +8741,29 @@ if local.get $0 local.get $1 - local.get $4 + local.get $5 i32.const 2 i32.shl - local.get $10 + local.get $11 i32.add i32.load i32.const 1 i32.add - local.get $8 - local.get $11 + local.get $13 + local.get $10 local.get $2 call $~lib/util/sort/mergeRuns end - local.get $4 + local.get $5 i32.const 1 i32.sub - local.set $4 + local.set $5 br $for-loop|4 end end - local.get $11 + local.get $10 call $~lib/rt/tlsf/__free - local.get $9 + local.get $12 call $~lib/rt/tlsf/__free global.get $~lib/memory/__stack_pointer i32.const 12 @@ -8862,7 +8850,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $6 local.get $1 i32.const 20 i32.sub @@ -8876,7 +8864,7 @@ i32.const 0 return end - local.get $4 + local.get $6 i32.eqz if i32.const -1 @@ -8897,13 +8885,13 @@ i32.and i32.or i32.const 1 - local.get $4 + local.get $6 local.get $5 - local.get $4 local.get $5 - i32.lt_s + local.get $6 + i32.gt_s select - local.tee $2 + local.tee $3 i32.const 4 i32.ge_u select @@ -8924,10 +8912,10 @@ i32.const 8 i32.add local.set $1 - local.get $2 + local.get $3 i32.const 4 i32.sub - local.tee $2 + local.tee $3 i32.const 4 i32.ge_u br_if $do-loop|0 @@ -8935,23 +8923,23 @@ end end loop $while-continue|1 - local.get $2 - local.tee $3 + local.get $3 + local.tee $2 i32.const 1 i32.sub - local.set $2 - local.get $3 + local.set $3 + local.get $2 if local.get $0 i32.load16_u - local.tee $3 + local.tee $2 local.get $1 i32.load16_u - local.tee $6 + local.tee $4 i32.ne if - local.get $3 - local.get $6 + local.get $2 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -8969,7 +8957,7 @@ i32.const 0 end local.tee $0 - local.get $4 + local.get $6 local.get $5 i32.sub local.get $0 @@ -9065,14 +9053,14 @@ if local.get $2 i32.load16_u - local.tee $3 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $3 i32.ne if - local.get $3 local.get $4 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -9367,7 +9355,7 @@ (local $7 i32) local.get $0 i32.load offset=4 - local.set $4 + local.set $6 local.get $0 i32.load offset=12 local.set $0 @@ -9393,7 +9381,7 @@ local.get $0 i32.const 1 i32.sub - local.tee $3 + local.tee $7 i32.const 0 i32.lt_s if @@ -9405,10 +9393,10 @@ local.set $0 br $__inlined_func$~lib/util/string/joinIntegerArray end - local.get $3 + local.get $7 i32.eqz if - local.get $4 + local.get $6 i32.load call $~lib/util/number/itoa32 local.set $0 @@ -9419,7 +9407,7 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 local.get $1 i32.const 20 i32.sub @@ -9432,7 +9420,7 @@ i32.mul i32.const 11 i32.add - local.tee $7 + local.tee $3 i32.const 1 i32.shl i32.const 1 @@ -9440,19 +9428,19 @@ local.tee $0 i32.store loop $for-loop|0 - local.get $3 - local.get $6 - i32.gt_s + local.get $4 + local.get $7 + i32.lt_s if local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.get $6 + local.get $4 i32.const 2 i32.shl - local.get $4 + local.get $6 i32.add i32.load call $~lib/util/number/itoa_buffered @@ -9476,23 +9464,23 @@ i32.add local.set $2 end - local.get $6 + local.get $4 i32.const 1 i32.add - local.set $6 + local.set $4 br $for-loop|0 end end - local.get $7 + local.get $3 local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.get $3 + local.get $7 i32.const 2 i32.shl - local.get $4 + local.get $6 i32.add i32.load call $~lib/util/number/itoa_buffered @@ -9592,7 +9580,7 @@ (local $7 i32) local.get $0 i32.load offset=4 - local.set $4 + local.set $6 local.get $0 i32.load offset=12 local.set $0 @@ -9618,7 +9606,7 @@ local.get $0 i32.const 1 i32.sub - local.tee $3 + local.tee $7 i32.const 0 i32.lt_s if @@ -9630,10 +9618,10 @@ local.set $0 br $__inlined_func$~lib/util/string/joinIntegerArray end - local.get $3 + local.get $7 i32.eqz if - local.get $4 + local.get $6 i32.load call $~lib/util/number/utoa32 local.set $0 @@ -9644,7 +9632,7 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 local.get $1 i32.const 20 i32.sub @@ -9657,7 +9645,7 @@ i32.mul i32.const 10 i32.add - local.tee $7 + local.tee $3 i32.const 1 i32.shl i32.const 1 @@ -9665,19 +9653,19 @@ local.tee $0 i32.store loop $for-loop|0 - local.get $3 - local.get $6 - i32.gt_s + local.get $4 + local.get $7 + i32.lt_s if local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.get $6 + local.get $4 i32.const 2 i32.shl - local.get $4 + local.get $6 i32.add i32.load call $~lib/util/number/itoa_buffered @@ -9701,23 +9689,23 @@ i32.add local.set $2 end - local.get $6 + local.get $4 i32.const 1 i32.add - local.set $6 + local.set $4 br $for-loop|0 end end - local.get $7 + local.get $3 local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.get $3 + local.get $7 i32.const 2 i32.shl - local.get $4 + local.get $6 i32.add i32.load call $~lib/util/number/itoa_buffered @@ -10322,83 +10310,82 @@ i32.const 101 i32.store16 offset=2 local.get $0 - local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $1 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $0 + local.get $1 i32.sub - local.set $0 + local.set $1 end - local.get $0 - local.tee $2 + local.get $1 + local.tee $4 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $4 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $4 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $4 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $4 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $4 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 - local.get $0 - local.get $2 + local.set $4 + local.get $1 + local.get $4 i32.const 1 i32.add - local.tee $0 + local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $0 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.add else @@ -10421,87 +10408,87 @@ local.get $0 local.get $2 i32.add - local.tee $2 + local.tee $0 i32.const 101 i32.store16 offset=2 - local.get $2 + local.get $0 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $2 i32.const 0 i32.lt_s - local.tee $4 + local.tee $3 if i32.const 0 - local.get $0 + local.get $2 i32.sub - local.set $0 + local.set $2 end - local.get $0 - local.tee $3 + local.get $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 100 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $3 + local.get $5 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $3 + local.get $5 i32.const 1000 i32.ge_u i32.add end else - local.get $3 + local.get $5 i32.const 10000000 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $3 + local.get $5 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $3 + local.get $5 i32.const 100000000 i32.ge_u i32.add end end - local.set $3 - local.get $0 - local.get $3 + local.set $5 + local.get $2 + local.get $5 i32.const 1 i32.add - local.tee $0 + local.tee $2 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $0 i32.const 45 i32.const 43 - local.get $4 + local.get $3 select i32.store16 offset=4 - local.get $0 local.get $1 + local.get $2 i32.add i32.const 2 i32.add @@ -10514,14 +10501,14 @@ (local $2 i64) (local $3 i32) (local $4 i64) - (local $5 i32) + (local $5 i64) (local $6 i64) - (local $7 i64) - (local $8 i64) - (local $9 i64) + (local $7 i32) + (local $8 i32) + (local $9 i32) (local $10 i64) - (local $11 i32) - (local $12 i32) + (local $11 i64) + (local $12 i64) (local $13 i64) (local $14 i64) local.get $1 @@ -10544,11 +10531,11 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.set $5 + local.set $7 local.get $2 i64.const 4503599627370495 i64.and - local.get $5 + local.get $7 i32.const 0 i32.ne i64.extend_i32_u @@ -10556,13 +10543,13 @@ i64.shl i64.add local.set $2 - local.get $5 + local.get $7 i32.const 1 - local.get $5 + local.get $7 select i32.const 1075 i32.sub - local.tee $11 + local.tee $7 i32.const 1 i32.sub local.get $2 @@ -10573,11 +10560,11 @@ local.tee $4 i64.clz i32.wrap_i64 - local.tee $12 + local.tee $8 i32.sub - local.set $5 + local.set $9 local.get $4 - local.get $12 + local.get $8 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -10587,25 +10574,25 @@ i64.eq i32.const 1 i32.add - local.tee $12 + local.tee $8 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $11 - local.get $12 + local.get $7 + local.get $8 i32.sub - local.get $5 + local.get $9 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $5 + local.get $9 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $5 + local.tee $7 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -10614,9 +10601,9 @@ f64.add local.tee $1 i32.trunc_f64_s - local.tee $11 + local.tee $8 local.get $1 - local.get $11 + local.get $8 f64.convert_i32_s f64.ne i32.add @@ -10624,18 +10611,18 @@ i32.shr_s i32.const 1 i32.add - local.tee $11 + local.tee $8 i32.const 3 i32.shl - local.tee $12 + local.tee $9 i32.sub global.set $~lib/util/number/_K - local.get $12 + local.get $9 i32.const 11960 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $11 + local.get $8 i32.const 1 i32.shl i32.const 12656 @@ -10646,62 +10633,62 @@ local.get $2 i64.clz i64.shl - local.tee $2 + local.tee $4 i64.const 4294967295 i64.and - local.set $6 - local.get $2 + local.set $2 + local.get $4 i64.const 32 i64.shr_u - local.tee $13 + local.tee $6 global.get $~lib/util/number/_frc_pow - local.tee $4 + local.tee $5 i64.const 4294967295 i64.and - local.tee $2 - local.tee $7 + local.tee $10 + local.tee $4 i64.mul - local.get $6 - local.get $7 + local.get $2 + local.get $4 i64.mul i64.const 32 i64.shr_u i64.add - local.set $7 - local.get $4 + local.set $4 + local.get $5 i64.const 32 i64.shr_u - local.tee $4 - local.set $8 + local.tee $11 + local.set $5 global.get $~lib/util/number/_frc_plus - local.tee $10 + local.tee $12 i64.const 4294967295 i64.and - local.set $9 - local.get $10 + local.set $13 + local.get $12 i64.const 32 i64.shr_u - local.tee $14 - local.get $2 + local.tee $12 + local.get $10 i64.mul - local.get $2 - local.get $9 + local.get $10 + local.get $13 i64.mul i64.const 32 i64.shr_u i64.add - local.set $10 - local.get $4 - local.get $14 + local.set $14 + local.get $11 + local.get $12 i64.mul - local.get $10 + local.get $14 i64.const 32 i64.shr_u i64.add - local.get $4 - local.get $9 + local.get $11 + local.get $13 i64.mul - local.get $10 + local.get $14 i64.const 4294967295 i64.and i64.add @@ -10712,42 +10699,42 @@ i64.add i64.const 1 i64.sub - local.set $9 + local.set $12 global.get $~lib/util/number/_frc_minus - local.tee $14 + local.tee $13 i64.const 4294967295 i64.and - local.set $10 - local.get $14 + local.set $14 + local.get $13 i64.const 32 i64.shr_u - local.tee $14 - local.get $2 + local.tee $13 + local.get $10 i64.mul - local.get $2 local.get $10 + local.get $14 i64.mul i64.const 32 i64.shr_u i64.add - local.set $2 + local.set $10 local.get $3 i32.const 1 i32.shl local.get $0 i32.add local.get $0 - local.get $8 - local.get $13 + local.get $5 + local.get $6 i64.mul - local.get $7 + local.get $4 i64.const 32 i64.shr_u i64.add - local.get $6 - local.get $8 + local.get $2 + local.get $5 i64.mul - local.get $7 + local.get $4 i64.const 4294967295 i64.and i64.add @@ -10756,24 +10743,24 @@ i64.const 32 i64.shr_u i64.add - local.get $9 + local.get $12 global.get $~lib/util/number/_exp_pow - local.get $5 + local.get $7 i32.add i32.const -64 i32.sub - local.get $9 - local.get $4 - local.get $14 + local.get $12 + local.get $11 + local.get $13 i64.mul - local.get $2 + local.get $10 i64.const 32 i64.shr_u i64.add - local.get $4 - local.get $10 + local.get $11 + local.get $14 i64.mul - local.get $2 + local.get $10 i64.const 4294967295 i64.and i64.add @@ -11115,7 +11102,7 @@ local.set $4 local.get $0 i32.load offset=12 - local.set $6 + local.set $5 i32.const 0 local.set $0 global.get $~lib/memory/__stack_pointer @@ -11134,17 +11121,17 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $6 i64.const 0 i64.store - local.get $5 + local.get $6 i32.const 0 i32.store offset=8 block $__inlined_func$~lib/util/string/joinStringArray - local.get $6 + local.get $5 i32.const 1 i32.sub - local.tee $5 + local.tee $6 i32.const 0 i32.lt_s if @@ -11156,7 +11143,7 @@ local.set $0 br $__inlined_func$~lib/util/string/joinStringArray end - local.get $5 + local.get $6 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -11178,7 +11165,7 @@ end loop $for-loop|0 local.get $3 - local.get $6 + local.get $5 i32.lt_s if global.get $~lib/memory/__stack_pointer @@ -11210,14 +11197,14 @@ end end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $6 + local.tee $5 i32.mul local.get $0 i32.add @@ -11231,7 +11218,7 @@ local.set $3 loop $for-loop|1 local.get $3 - local.get $5 + local.get $6 i32.lt_s if global.get $~lib/memory/__stack_pointer @@ -11266,7 +11253,7 @@ i32.add local.set $2 end - local.get $6 + local.get $5 if local.get $2 i32.const 1 @@ -11274,12 +11261,12 @@ local.get $0 i32.add local.get $1 - local.get $6 + local.get $5 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $2 - local.get $6 + local.get $5 i32.add local.set $2 end @@ -11291,7 +11278,7 @@ end end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.const 2 i32.shl local.get $4 @@ -11332,7 +11319,7 @@ (local $5 i32) local.get $0 i32.load offset=4 - local.set $1 + local.set $3 local.get $0 i32.load offset=12 local.set $0 @@ -11362,7 +11349,7 @@ local.get $0 i32.const 1 i32.sub - local.tee $2 + local.tee $4 i32.const 0 i32.lt_s if @@ -11374,12 +11361,12 @@ local.set $0 br $__inlined_func$~lib/util/string/joinReferenceArray end - local.get $2 + local.get $4 i32.eqz if global.get $~lib/memory/__stack_pointer local.tee $0 - local.get $1 + local.get $3 i32.load local.tee $1 i32.store @@ -11403,17 +11390,17 @@ i32.load i32.const 1 i32.shr_u - local.set $4 + local.set $2 loop $for-loop|0 - local.get $2 - local.get $3 - i32.gt_s + local.get $1 + local.get $4 + i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $3 i32.add i32.load local.tee $5 @@ -11431,7 +11418,7 @@ local.tee $0 i32.store offset=4 end - local.get $4 + local.get $2 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -11440,18 +11427,18 @@ local.tee $0 i32.store offset=4 end - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 + local.set $1 br $for-loop|0 end end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 2 i32.shl - local.get $1 + local.get $3 i32.add i32.load local.tee $1 @@ -11515,58 +11502,58 @@ end local.get $1 i32.extend8_s - local.tee $3 local.tee $1 + local.tee $3 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $3 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $3 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $3 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $3 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $3 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $3 local.get $0 - local.get $3 local.get $1 local.get $2 + local.get $3 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut @@ -11593,59 +11580,59 @@ local.get $1 i32.const 65535 i32.and - local.tee $2 local.tee $1 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $2 local.get $0 - local.get $2 local.get $1 + local.get $2 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $2 ) (func $~lib/util/number/utoa64_dec_lut (param $0 i32) (param $1 i64) (param $2 i32) (local $3 i32) @@ -11658,7 +11645,7 @@ local.get $2 i32.const 4 i32.sub - local.tee $2 + local.tee $3 i32.const 1 i32.shl local.get $0 @@ -11672,10 +11659,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $3 + local.tee $4 i32.const 10000 i32.rem_u - local.tee $4 + local.tee $2 i32.const 100 i32.div_u i32.const 2 @@ -11683,7 +11670,7 @@ i32.const 9836 i32.add i64.load32_u - local.get $4 + local.get $2 i32.const 100 i32.rem_u i32.const 2 @@ -11695,7 +11682,7 @@ i64.shl i64.or i64.store - local.get $2 + local.get $3 i32.const 4 i32.sub local.tee $2 @@ -11703,7 +11690,7 @@ i32.shl local.get $0 i32.add - local.get $3 + local.get $4 i32.const 10000 i32.div_u local.tee $3 @@ -11877,7 +11864,7 @@ (local $7 i32) local.get $0 i32.load offset=4 - local.set $4 + local.set $3 local.get $0 i32.load offset=12 local.set $1 @@ -11899,7 +11886,7 @@ local.get $1 i32.const 1 i32.sub - local.tee $3 + local.tee $7 i32.const 0 i32.lt_s if @@ -11912,10 +11899,10 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $3 + local.get $7 i32.eqz if - local.get $4 + local.get $3 i64.load local.set $2 global.get $~lib/memory/__stack_pointer @@ -12078,18 +12065,18 @@ br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.const 9516 i32.load i32.const 1 i32.shr_u - local.tee $5 + local.tee $4 i32.const 20 i32.add i32.mul i32.const 20 i32.add - local.tee $7 + local.tee $6 i32.const 1 i32.shl i32.const 1 @@ -12097,26 +12084,26 @@ local.tee $1 i32.store loop $for-loop|0 - local.get $3 - local.get $6 - i32.gt_s + local.get $5 + local.get $7 + i32.lt_s if local.get $0 i32.const 1 i32.shl local.get $1 i32.add - local.get $6 + local.get $5 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add i64.load call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $5 + local.get $4 if local.get $0 i32.const 1 @@ -12124,32 +12111,32 @@ local.get $1 i32.add i32.const 9520 - local.get $5 + local.get $4 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $5 + local.get $4 i32.add local.set $0 end - local.get $6 + local.get $5 i32.const 1 i32.add - local.set $6 + local.set $5 br $for-loop|0 end end - local.get $7 + local.get $6 local.get $0 i32.const 1 i32.shl local.get $1 i32.add - local.get $3 + local.get $7 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add i64.load call $~lib/util/number/itoa_buffered @@ -12194,7 +12181,7 @@ local.get $1 i64.const 0 i64.lt_s - local.tee $3 + local.tee $2 if local.get $0 i32.const 45 @@ -12208,7 +12195,7 @@ i64.const 10 i64.lt_u if - local.get $3 + local.get $2 i32.const 1 i32.shl local.get $0 @@ -12217,7 +12204,7 @@ i64.const 48 i64.or i64.store16 - local.get $3 + local.get $2 i32.const 1 i32.add return @@ -12228,58 +12215,58 @@ if local.get $1 i32.wrap_i64 + local.tee $3 local.tee $4 - local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $4 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $4 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $4 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $4 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $4 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 + local.set $4 local.get $0 - local.get $4 - local.get $2 local.get $3 + local.get $2 + local.get $4 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut @@ -12336,7 +12323,7 @@ i32.add end end - local.get $3 + local.get $2 i32.add local.tee $0 call $~lib/util/number/utoa64_dec_lut @@ -12353,7 +12340,7 @@ (local $7 i32) local.get $0 i32.load offset=4 - local.set $4 + local.set $5 local.get $0 i32.load offset=12 local.set $1 @@ -12375,7 +12362,7 @@ local.get $1 i32.const 1 i32.sub - local.tee $3 + local.tee $4 i32.const 0 i32.lt_s if @@ -12388,10 +12375,10 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $3 + local.get $4 i32.eqz if - local.get $4 + local.get $5 i64.load i64.extend32_s local.set $2 @@ -12575,12 +12562,12 @@ br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.const 9516 i32.load i32.const 1 i32.shr_u - local.tee $5 + local.tee $6 i32.const 21 i32.add i32.mul @@ -12595,25 +12582,25 @@ i32.store loop $for-loop|0 local.get $3 - local.get $6 - i32.gt_s + local.get $4 + i32.lt_s if local.get $0 i32.const 1 i32.shl local.get $1 i32.add - local.get $6 + local.get $3 i32.const 3 i32.shl - local.get $4 + local.get $5 i32.add i64.load call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $5 + local.get $6 if local.get $0 i32.const 1 @@ -12621,19 +12608,19 @@ local.get $1 i32.add i32.const 9520 - local.get $5 + local.get $6 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $5 + local.get $6 i32.add local.set $0 end - local.get $6 + local.get $3 i32.const 1 i32.add - local.set $6 + local.set $3 br $for-loop|0 end end @@ -12643,10 +12630,10 @@ i32.shl local.get $1 i32.add - local.get $3 + local.get $4 i32.const 3 i32.shl - local.get $4 + local.get $5 i32.add i64.load call $~lib/util/number/itoa_buffered @@ -12705,59 +12692,59 @@ local.get $1 i32.const 255 i32.and - local.tee $2 local.tee $1 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $2 local.get $0 - local.get $2 local.get $1 + local.get $2 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $2 ) (func $~lib/array/Array#join (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -12768,7 +12755,7 @@ (local $7 i32) local.get $0 i32.load offset=4 - local.set $4 + local.set $6 local.get $0 i32.load offset=12 local.set $0 @@ -12794,7 +12781,7 @@ local.get $0 i32.const 1 i32.sub - local.tee $3 + local.tee $7 i32.const 0 i32.lt_s if @@ -12806,10 +12793,10 @@ local.set $0 br $__inlined_func$~lib/util/string/joinIntegerArray end - local.get $3 + local.get $7 i32.eqz if - local.get $4 + local.get $6 i32.load8_u call $~lib/util/number/utoa32 local.set $0 @@ -12820,7 +12807,7 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 local.get $1 i32.const 20 i32.sub @@ -12833,7 +12820,7 @@ i32.mul i32.const 10 i32.add - local.tee $7 + local.tee $3 i32.const 1 i32.shl i32.const 1 @@ -12841,9 +12828,9 @@ local.tee $0 i32.store loop $for-loop|0 - local.get $3 - local.get $6 - i32.gt_s + local.get $4 + local.get $7 + i32.lt_s if local.get $2 i32.const 1 @@ -12875,21 +12862,21 @@ i32.add local.set $2 end - local.get $6 + local.get $4 i32.const 1 i32.add - local.set $6 + local.set $4 br $for-loop|0 end end - local.get $7 + local.get $3 local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.get $3 - local.get $4 + local.get $6 + local.get $7 i32.add i32.load8_u call $~lib/util/number/itoa_buffered @@ -13358,12 +13345,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) local.get $1 i32.const 48 i32.le_s @@ -13487,7 +13474,7 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $9 + local.tee $11 local.get $5 i32.add local.set $10 @@ -13501,7 +13488,7 @@ local.get $5 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.const -1 i32.store @@ -13514,13 +13501,13 @@ end local.get $1 call $~lib/rt/tlsf/__alloc - local.set $11 + local.set $9 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $8 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -13532,9 +13519,9 @@ if local.get $0 i32.const 0 - local.get $8 + local.get $12 i32.const 31 - local.get $8 + local.get $12 i32.const 31 i32.lt_s select @@ -13545,7 +13532,7 @@ end loop $while-continue|2 local.get $1 - local.get $8 + local.get $12 i32.lt_s if local.get $0 @@ -13553,7 +13540,7 @@ i32.const 1 i32.add local.tee $6 - local.get $8 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -13567,13 +13554,13 @@ if local.get $0 local.get $6 - local.get $8 + local.get $12 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $8 + local.get $12 i32.gt_s select local.tee $5 @@ -13587,11 +13574,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $12 i32.const 1 i32.add i64.extend_i32_u - local.tee $13 + local.tee $8 i64.div_u local.get $5 local.get $6 @@ -13601,7 +13588,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $8 i64.div_u i64.xor i32.wrap_i64 @@ -13615,15 +13602,15 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.load - local.tee $12 + local.tee $13 i32.const -1 i32.ne if local.get $0 - local.get $12 + local.get $13 local.get $10 local.get $4 i32.const 2 @@ -13634,15 +13621,15 @@ i32.const 1 i32.add local.get $1 - local.get $11 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $9 + local.get $11 i32.add i32.const -1 i32.store - local.get $12 + local.get $13 local.set $3 end local.get $4 @@ -13652,7 +13639,7 @@ br $for-loop|3 end end - local.get $9 + local.get $11 local.get $7 i32.const 2 i32.shl @@ -13680,7 +13667,7 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.load local.tee $1 @@ -13697,8 +13684,8 @@ i32.load i32.const 1 i32.add - local.get $8 - local.get $11 + local.get $12 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns end @@ -13709,10 +13696,10 @@ br $for-loop|4 end end - local.get $11 - call $~lib/rt/tlsf/__free local.get $9 call $~lib/rt/tlsf/__free + local.get $11 + call $~lib/rt/tlsf/__free ) (func $~lib/array/Array<~lib/string/String>#push (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -14081,25 +14068,25 @@ i32.gt_s if (result i32) global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $6 local.get $4 i32.const 2 i32.shl local.get $0 i32.add - local.tee $6 - i32.load offset=4 local.tee $7 + i32.load offset=4 + local.tee $5 i32.store - local.get $5 local.get $6 + local.get $7 i32.load - local.tee $5 + local.tee $6 i32.store offset=4 i32.const 2 global.set $~argumentsLength - local.get $7 local.get $5 + local.get $6 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -14475,7 +14462,7 @@ i32.store local.get $0 i32.load offset=4 - local.set $1 + local.set $4 local.get $0 i32.load offset=12 local.set $0 @@ -14498,7 +14485,7 @@ local.get $0 i32.const 1 i32.sub - local.tee $2 + local.tee $5 i32.const 0 i32.lt_s if @@ -14510,11 +14497,11 @@ local.set $0 br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> end - local.get $2 + local.get $5 i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $4 i32.load local.tee $0 i32.store @@ -14541,37 +14528,37 @@ i32.load i32.const 1 i32.shr_u - local.set $5 + local.set $2 loop $for-loop|0 - local.get $2 - local.get $3 - i32.gt_s + local.get $1 + local.get $5 + i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $4 i32.add i32.load - local.tee $4 + local.tee $6 i32.store - local.get $4 + local.get $6 if global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 call $~lib/array/Array#toString - local.set $4 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store offset=8 local.get $0 - local.get $4 + local.get $6 call $~lib/string/String.__concat local.tee $0 i32.store offset=4 end - local.get $5 + local.get $2 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -14580,18 +14567,18 @@ local.tee $0 i32.store offset=4 end - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 + local.set $1 br $for-loop|0 end end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $5 i32.const 2 i32.shl - local.get $1 + local.get $4 i32.add i32.load local.tee $1 @@ -14635,10 +14622,10 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 f32) - (local $7 f64) + (local $4 f32) + (local $5 f64) + (local $6 i32) + (local $7 i32) (local $8 i32) (local $9 i32) (local $10 i32) @@ -14813,24 +14800,24 @@ i32.const 1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $1 + local.get $2 i32.const 0 i32.const 1 call $~lib/memory/memory.fill local.get $0 - local.get $1 + local.get $2 i32.store - local.get $1 + local.get $2 if local.get $0 - local.get $1 + local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $1 + local.get $2 i32.store offset=4 local.get $0 i32.const 1 @@ -15015,36 +15002,36 @@ i32.const 7 i32.const 1888 call $~lib/rt/__newArray - local.tee $2 + local.tee $3 i32.store offset=12 - local.get $2 + local.get $3 i32.load offset=4 - local.set $3 + local.set $0 i32.const 1 - local.get $2 + local.get $3 i32.load offset=12 - local.tee $0 - local.get $0 + local.tee $2 + local.get $2 i32.const 1 i32.gt_s select local.set $1 i32.const 3 - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.const 3 i32.gt_s select - local.set $0 + local.set $2 loop $for-loop|0 - local.get $0 local.get $1 - i32.gt_s + local.get $2 + i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $3 + local.get $0 i32.add i32.const 1 i32.store @@ -15064,7 +15051,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $2 + local.get $3 local.get $0 call $std/array/isArraysEqual i32.eqz @@ -15076,34 +15063,34 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.load offset=4 - local.set $3 + local.set $0 i32.const 0 - local.get $2 + local.get $3 i32.load offset=12 local.tee $1 local.get $1 i32.const 0 i32.gt_s select - local.set $0 + local.set $2 loop $for-loop|04 - local.get $0 local.get $1 - i32.lt_s + local.get $2 + i32.gt_s if - local.get $0 + local.get $2 i32.const 2 i32.shl - local.get $3 + local.get $0 i32.add i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|04 end end @@ -15116,7 +15103,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $2 + local.get $3 local.get $0 call $std/array/isArraysEqual i32.eqz @@ -15128,37 +15115,37 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.load offset=4 - local.set $3 + local.set $1 i32.const 0 - local.get $2 + local.get $3 i32.load offset=12 - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 0 i32.gt_s select local.set $0 - local.get $1 + local.get $2 i32.const 3 i32.sub - local.tee $1 + local.tee $2 i32.const 0 - local.get $1 + local.get $2 i32.const 0 i32.gt_s select - local.set $1 + local.set $2 loop $for-loop|06 local.get $0 - local.get $1 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $3 + local.get $1 i32.add i32.const 1 i32.store @@ -15178,7 +15165,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $2 + local.get $3 local.get $0 call $std/array/isArraysEqual i32.eqz @@ -15190,37 +15177,37 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.load offset=4 - local.set $1 - local.get $2 + local.set $0 + local.get $3 i32.load offset=12 - local.tee $3 + local.tee $1 i32.const 2 i32.sub - local.tee $0 + local.tee $2 i32.const 0 - local.get $0 + local.get $2 i32.const 0 i32.gt_s select - local.set $0 + local.set $2 loop $for-loop|08 - local.get $0 - local.get $3 - i32.lt_s + local.get $1 + local.get $2 + i32.gt_s if - local.get $0 + local.get $2 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add i32.const 2 i32.store - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|08 end end @@ -15233,7 +15220,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $2 + local.get $3 local.get $0 call $std/array/isArraysEqual i32.eqz @@ -15245,34 +15232,34 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.load offset=4 - local.set $3 + local.set $1 i32.const 1 - local.get $2 + local.get $3 i32.load offset=12 - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 1 i32.gt_s select local.set $0 i32.const 0 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.const 0 i32.gt_s select - local.set $1 + local.set $2 loop $for-loop|010 local.get $0 - local.get $1 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $3 + local.get $1 i32.add i32.const 0 i32.store @@ -15292,7 +15279,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $2 + local.get $3 local.get $0 call $std/array/isArraysEqual i32.eqz @@ -15660,40 +15647,40 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 2 i32.const 2 i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 i32.store offset=16 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 1 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 local.get $0 + local.get $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $0 + local.get $1 i32.const 0 i32.store offset=12 - local.get $0 + local.get $1 i32.load offset=12 if i32.const 0 @@ -15766,17 +15753,17 @@ global.get $~lib/memory/__stack_pointer i32.const 0 call $~lib/array/Array#constructor - local.tee $1 + local.tee $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 local.get $1 + local.get $0 call $~lib/array/Array#concat - local.tee $0 + local.tee $1 i32.store offset=16 global.get $~lib/memory/__stack_pointer global.get $std/array/arr @@ -15810,7 +15797,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=12 i32.const 3 i32.ne @@ -15831,7 +15818,7 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.store offset=8 - local.get $0 + local.get $1 local.get $2 call $~lib/array/Array#concat drop @@ -15851,7 +15838,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#__get i32.const 43 @@ -15864,7 +15851,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/array/Array#__get i32.const 44 @@ -15877,7 +15864,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/array/Array#__get i32.const 45 @@ -15890,24 +15877,24 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 46 call $~lib/array/Array#push drop - local.get $1 + local.get $0 i32.const 47 call $~lib/array/Array#push drop global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 global.get $std/array/arr local.tee $2 i32.store - local.get $0 - local.get $2 local.get $1 + local.get $2 + local.get $0 call $~lib/array/Array#concat - local.tee $0 + local.tee $1 i32.store offset=16 global.get $~lib/memory/__stack_pointer global.get $std/array/arr @@ -15925,7 +15912,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=12 i32.const 2 i32.ne @@ -15937,7 +15924,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=12 i32.const 5 i32.ne @@ -15949,7 +15936,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#__get i32.const 43 @@ -15962,7 +15949,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/array/Array#__get i32.const 44 @@ -15975,7 +15962,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/array/Array#__get i32.const 45 @@ -15988,7 +15975,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 call $~lib/array/Array#__get i32.const 46 @@ -16001,7 +15988,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 call $~lib/array/Array#__get i32.const 47 @@ -16014,10 +16001,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 call $~lib/array/Array#pop drop - local.get $0 + local.get $1 i32.load offset=12 i32.const 4 i32.ne @@ -16787,7 +16774,7 @@ i32.store local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.lt_s if @@ -16800,27 +16787,27 @@ end local.get $0 i32.load offset=4 - local.tee $1 + local.tee $2 i32.load - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.const 4 i32.add - local.get $2 + local.get $1 i32.const 1 i32.sub - local.tee $2 + local.tee $1 i32.const 2 i32.shl - local.tee $4 + local.tee $6 call $~lib/memory/memory.copy - local.get $1 - local.get $4 + local.get $2 + local.get $6 i32.add i32.const 0 i32.store local.get $0 - local.get $2 + local.get $1 i32.store offset=12 global.set $std/array/i global.get $std/array/i @@ -17048,19 +17035,19 @@ i32.const 2 i32.const 2147483647 call $~lib/array/Array#slice - local.tee $2 + local.tee $1 i32.store offset=16 i32.const 3 i32.const 2 i32.const 3 i32.const 3536 call $~lib/rt/__newArray - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=8 local.get $2 + i32.store offset=8 local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17077,19 +17064,19 @@ i32.const 2 i32.const 4 call $~lib/array/Array#slice - local.tee $2 + local.tee $1 i32.store offset=16 i32.const 2 i32.const 2 i32.const 3 i32.const 3568 call $~lib/rt/__newArray - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=8 local.get $2 + i32.store offset=8 local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17106,19 +17093,19 @@ i32.const 1 i32.const 5 call $~lib/array/Array#slice - local.tee $2 + local.tee $1 i32.store offset=16 i32.const 4 i32.const 2 i32.const 3 i32.const 3600 call $~lib/rt/__newArray - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=8 local.get $2 + i32.store offset=8 local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17155,19 +17142,19 @@ i32.const -2 i32.const 2147483647 call $~lib/array/Array#slice - local.tee $2 + local.tee $1 i32.store offset=16 i32.const 2 i32.const 2 i32.const 3 i32.const 3648 call $~lib/rt/__newArray - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=8 local.get $2 + i32.store offset=8 local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17184,19 +17171,19 @@ i32.const 2 i32.const -1 call $~lib/array/Array#slice - local.tee $2 + local.tee $1 i32.store offset=16 i32.const 2 i32.const 2 i32.const 3 i32.const 3680 call $~lib/rt/__newArray - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=8 local.get $2 + i32.store offset=8 local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17213,19 +17200,19 @@ i32.const -3 i32.const -1 call $~lib/array/Array#slice - local.tee $2 + local.tee $1 i32.store offset=16 i32.const 2 i32.const 2 i32.const 3 i32.const 3712 call $~lib/rt/__newArray - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=8 local.get $2 + i32.store offset=8 local.get $1 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -17306,10 +17293,10 @@ i32.shl local.get $2 i32.add - local.tee $4 + local.tee $6 i32.load - local.set $5 - local.get $4 + local.set $7 + local.get $6 local.get $1 local.get $0 i32.sub @@ -17317,11 +17304,11 @@ i32.shl local.get $2 i32.add - local.tee $4 + local.tee $6 i32.load i32.store - local.get $4 - local.get $5 + local.get $6 + local.get $7 i32.store local.get $0 i32.const 1 @@ -17436,11 +17423,11 @@ i32.const 6 i32.const 3744 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#reverse local.tee $1 i32.store offset=16 @@ -17485,11 +17472,11 @@ i32.const 6 i32.const 3776 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#reverse local.tee $1 i32.store offset=4 @@ -17534,11 +17521,11 @@ i32.const 6 i32.const 3808 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#reverse local.tee $1 i32.store offset=12 @@ -17583,11 +17570,11 @@ i32.const 9 i32.const 3856 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#reverse local.tee $1 i32.store offset=20 @@ -17632,11 +17619,11 @@ i32.const 9 i32.const 3904 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#reverse local.tee $1 i32.store offset=24 @@ -17681,11 +17668,11 @@ i32.const 9 i32.const 3952 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#reverse local.tee $1 i32.store offset=28 @@ -17964,23 +17951,23 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $1 i32.store block $__inlined_func$~lib/array/Array#indexOf19 - local.get $2 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const -100 i32.le_s i32.const 1 - local.get $1 + local.get $2 select if i32.const -1 local.set $0 br $__inlined_func$~lib/array/Array#indexOf19 end - local.get $1 + local.get $2 i32.const 100 i32.sub local.tee $0 @@ -17990,18 +17977,18 @@ i32.gt_s select local.set $0 - local.get $2 + local.get $1 i32.load offset=4 - local.set $2 + local.set $1 loop $while-continue|020 local.get $0 - local.get $1 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add i32.load i32.const 43 @@ -18032,23 +18019,23 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $1 i32.store block $__inlined_func$~lib/array/Array#indexOf21 - local.get $2 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const -2 i32.le_s i32.const 1 - local.get $1 + local.get $2 select if i32.const -1 local.set $0 br $__inlined_func$~lib/array/Array#indexOf21 end - local.get $1 + local.get $2 i32.const 2 i32.sub local.tee $0 @@ -18058,18 +18045,18 @@ i32.gt_s select local.set $0 - local.get $2 + local.get $1 i32.load offset=4 - local.set $2 + local.set $1 loop $while-continue|022 local.get $0 - local.get $1 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add i32.load i32.const 43 @@ -18100,23 +18087,23 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $1 i32.store block $__inlined_func$~lib/array/Array#indexOf23 - local.get $2 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const -4 i32.le_s i32.const 1 - local.get $1 + local.get $2 select if i32.const -1 local.set $0 br $__inlined_func$~lib/array/Array#indexOf23 end - local.get $1 + local.get $2 i32.const 4 i32.sub local.tee $0 @@ -18126,18 +18113,18 @@ i32.gt_s select local.set $0 - local.get $2 + local.get $1 i32.load offset=4 - local.set $2 + local.set $1 loop $while-continue|024 local.get $0 - local.get $1 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add i32.load i32.const 43 @@ -19059,23 +19046,23 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $1 i32.store block $__inlined_func$~lib/array/Array#indexOf47 - local.get $2 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const -100 i32.le_s i32.const 1 - local.get $1 + local.get $2 select if i32.const -1 local.set $0 br $__inlined_func$~lib/array/Array#indexOf47 end - local.get $1 + local.get $2 i32.const 100 i32.sub local.tee $0 @@ -19085,18 +19072,18 @@ i32.gt_s select local.set $0 - local.get $2 + local.get $1 i32.load offset=4 - local.set $2 + local.set $1 loop $while-continue|048 local.get $0 - local.get $1 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add i32.load i32.const 43 @@ -19125,23 +19112,23 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $1 i32.store block $__inlined_func$~lib/array/Array#indexOf49 - local.get $2 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const -2 i32.le_s i32.const 1 - local.get $1 + local.get $2 select if i32.const -1 local.set $0 br $__inlined_func$~lib/array/Array#indexOf49 end - local.get $1 + local.get $2 i32.const 2 i32.sub local.tee $0 @@ -19151,18 +19138,18 @@ i32.gt_s select local.set $0 - local.get $2 + local.get $1 i32.load offset=4 - local.set $2 + local.set $1 loop $while-continue|050 local.get $0 - local.get $1 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add i32.load i32.const 43 @@ -19191,23 +19178,23 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $1 i32.store block $__inlined_func$~lib/array/Array#indexOf51 - local.get $2 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const -4 i32.le_s i32.const 1 - local.get $1 + local.get $2 select if i32.const -1 local.set $0 br $__inlined_func$~lib/array/Array#indexOf51 end - local.get $1 + local.get $2 i32.const 4 i32.sub local.tee $0 @@ -19217,18 +19204,18 @@ i32.gt_s select local.set $0 - local.get $2 + local.get $1 i32.load offset=4 - local.set $2 + local.set $1 loop $while-continue|052 local.get $0 - local.get $1 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add i32.load i32.const 43 @@ -19467,11 +19454,11 @@ local.get $1 i32.add f32.load - local.tee $6 + local.tee $4 f32.const nan:0x400000 f32.eq - local.get $6 - local.get $6 + local.get $4 + local.get $4 f32.ne i32.or br_if $__inlined_func$~lib/array/Array#includes @@ -19532,11 +19519,11 @@ local.get $1 i32.add f64.load - local.tee $7 + local.tee $5 f64.const nan:0x8000000000000 f64.eq - local.get $7 - local.get $7 + local.get $5 + local.get $5 f64.ne i32.or br_if $__inlined_func$~lib/array/Array#includes @@ -20509,53 +20496,53 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 5 i32.const 2 i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 4 i32.const 5 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 local.get $0 + local.get $1 i32.store offset=24 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 2 call $~lib/array/Array#splice - local.tee $1 + local.tee $0 i32.store offset=20 - local.get $1 + local.get $0 i32.load offset=12 i32.const 2 i32.ne @@ -20567,7 +20554,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.load @@ -20581,7 +20568,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.load @@ -20595,7 +20582,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=12 i32.const 3 i32.ne @@ -20607,7 +20594,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#__get i32.load @@ -20621,7 +20608,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/array/Array#__get i32.load @@ -20635,7 +20622,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/array/Array#__get i32.load @@ -20650,34 +20637,34 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 3 i32.const 2 i32.const 12 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 i32.store offset=12 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 1 i32.const 0 call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 2 i32.const 2 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 local.get $0 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -20693,18 +20680,18 @@ i32.const 0 i32.store i32.const 0 - local.get $0 - i32.load offset=12 - local.tee $1 local.get $1 + i32.load offset=12 + local.tee $3 + local.get $3 i32.const 0 i32.gt_s select - local.set $3 + local.set $6 local.get $2 i32.const 1 - local.get $1 local.get $3 + local.get $6 i32.sub local.tee $2 local.get $2 @@ -20717,59 +20704,59 @@ i32.const 0 i32.gt_s select - local.tee $4 + local.tee $2 i32.const 2 i32.const 12 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $7 i32.store - local.get $2 + local.get $7 i32.load offset=4 - local.get $0 + local.get $1 i32.load offset=4 local.tee $8 - local.get $3 + local.get $6 i32.const 2 i32.shl i32.add local.tee $9 - local.get $4 + local.get $2 i32.const 2 i32.shl call $~lib/memory/memory.copy - local.get $1 local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.add - local.tee $3 + local.tee $6 i32.ne if local.get $9 - local.get $3 + local.get $6 i32.const 2 i32.shl local.get $8 i32.add - local.get $1 local.get $3 + local.get $6 i32.sub i32.const 2 i32.shl call $~lib/memory/memory.copy end - local.get $0 local.get $1 - local.get $4 + local.get $3 + local.get $2 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $7 i32.store offset=4 - local.get $2 + local.get $7 i32.load offset=12 i32.const 1 i32.ne @@ -20782,12 +20769,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $7 i32.const 0 call $~lib/array/Array#__get - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.eqz if i32.const 6080 @@ -20797,7 +20784,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load i32.const 1 i32.ne @@ -20809,7 +20796,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=12 i32.const 2 i32.ne @@ -20821,7 +20808,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/array/Array#__get if @@ -20833,7 +20820,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 1 call $~lib/array/Array#__get local.tee $0 @@ -21563,32 +21550,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/array/arr local.tee $0 + global.get $std/array/arr + local.tee $2 i32.store - local.get $1 + local.get $0 i32.const 6512 i32.store offset=8 block $__inlined_func$~lib/array/Array#every (result i32) i32.const 0 local.set $1 - local.get $0 + local.get $2 i32.load offset=12 - local.set $2 + local.set $0 loop $for-loop|072 - local.get $2 local.get $0 + local.get $2 i32.load offset=12 local.tee $3 - local.get $2 + local.get $0 local.get $3 i32.lt_s select local.get $1 i32.gt_s if - local.get $0 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 @@ -21601,7 +21588,7 @@ i32.const 0 local.get $3 local.get $1 - local.get $0 + local.get $2 i32.const 6512 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21627,32 +21614,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/array/arr local.tee $0 + global.get $std/array/arr + local.tee $2 i32.store - local.get $1 + local.get $0 i32.const 6544 i32.store offset=8 block $__inlined_func$~lib/array/Array#every73 (result i32) i32.const 0 local.set $1 - local.get $0 + local.get $2 i32.load offset=12 - local.set $2 + local.set $0 loop $for-loop|074 - local.get $2 local.get $0 + local.get $2 i32.load offset=12 local.tee $3 - local.get $2 + local.get $0 local.get $3 i32.lt_s select local.get $1 i32.gt_s if - local.get $0 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 @@ -21665,7 +21652,7 @@ i32.const 0 local.get $3 local.get $1 - local.get $0 + local.get $2 i32.const 6544 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21690,32 +21677,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/array/arr local.tee $0 + global.get $std/array/arr + local.tee $2 i32.store - local.get $1 + local.get $0 i32.const 6576 i32.store offset=8 block $__inlined_func$~lib/array/Array#every75 (result i32) i32.const 0 local.set $1 - local.get $0 + local.get $2 i32.load offset=12 - local.set $2 + local.set $0 loop $for-loop|076 - local.get $2 local.get $0 + local.get $2 i32.load offset=12 local.tee $3 - local.get $2 + local.get $0 local.get $3 i32.lt_s select local.get $1 i32.gt_s if - local.get $0 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 @@ -21728,7 +21715,7 @@ i32.const 0 local.get $3 local.get $1 - local.get $0 + local.get $2 i32.const 6576 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -21770,32 +21757,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/array/arr local.tee $0 + global.get $std/array/arr + local.tee $2 i32.store - local.get $1 + local.get $0 i32.const 6608 i32.store offset=8 block $__inlined_func$~lib/array/Array#every77 (result i32) i32.const 0 local.set $1 - local.get $0 + local.get $2 i32.load offset=12 - local.set $2 + local.set $0 loop $for-loop|078 - local.get $2 local.get $0 + local.get $2 i32.load offset=12 local.tee $3 - local.get $2 + local.get $0 local.get $3 i32.lt_s select local.get $1 i32.gt_s if - local.get $0 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 @@ -21808,7 +21795,7 @@ i32.const 0 local.get $3 local.get $1 - local.get $0 + local.get $2 i32.const 6608 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -22018,32 +22005,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/array/arr local.tee $0 + global.get $std/array/arr + local.tee $2 i32.store - local.get $1 + local.get $0 i32.const 6704 i32.store offset=8 block $__inlined_func$~lib/array/Array#some82 (result i32) i32.const 0 local.set $1 - local.get $0 + local.get $2 i32.load offset=12 - local.set $2 + local.set $0 loop $for-loop|083 - local.get $2 local.get $0 + local.get $2 i32.load offset=12 local.tee $3 - local.get $2 + local.get $0 local.get $3 i32.lt_s select local.get $1 i32.gt_s if - local.get $0 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 @@ -22056,7 +22043,7 @@ i32.const 1 local.get $3 local.get $1 - local.get $0 + local.get $2 i32.const 6704 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -22080,188 +22067,188 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/array/arr local.tee $0 + global.get $std/array/arr + local.tee $2 i32.store - local.get $1 + local.get $0 i32.const 6736 i32.store offset=8 block $__inlined_func$~lib/array/Array#some84 (result i32) + i32.const 0 + local.set $1 + local.get $2 + i32.load offset=12 + local.set $0 + loop $for-loop|085 + local.get $0 + local.get $2 + i32.load offset=12 + local.tee $3 + local.get $0 + local.get $3 + i32.lt_s + select + local.get $1 + i32.gt_s + if + local.get $2 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $3 + i32.const 3 + global.set $~argumentsLength + i32.const 1 + local.get $3 + local.get $1 + local.get $2 + i32.const 6736 + i32.load + call_indirect $0 (type $i32_i32_i32_=>_i32) + br_if $__inlined_func$~lib/array/Array#some84 + drop + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $for-loop|085 + end + end + i32.const 0 + end + if + i32.const 0 + i32.const 1552 + i32.const 657 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + global.get $std/array/arr + local.tee $0 + i32.store + local.get $0 + i32.load offset=12 + i32.const 8 + i32.ne + if + i32.const 0 + i32.const 1552 + i32.const 658 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $0 + global.get $std/array/arr + local.tee $2 + i32.store + local.get $0 + i32.const 6768 + i32.store offset=8 + block $__inlined_func$~lib/array/Array#some86 (result i32) + i32.const 0 + local.set $1 + local.get $2 + i32.load offset=12 + local.set $0 + loop $for-loop|087 + local.get $0 + local.get $2 + i32.load offset=12 + local.tee $3 + local.get $0 + local.get $3 + i32.lt_s + select + local.get $1 + i32.gt_s + if + local.get $2 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $3 + i32.const 3 + global.set $~argumentsLength + i32.const 1 + local.get $3 + local.get $1 + local.get $2 + i32.const 6768 + i32.load + call_indirect $0 (type $i32_i32_i32_=>_i32) + br_if $__inlined_func$~lib/array/Array#some86 + drop + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $for-loop|087 + end + end + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 1552 + i32.const 660 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + global.get $std/array/arr + local.tee $0 + i32.store + local.get $0 + call $~lib/array/Array#pop + drop + global.get $~lib/memory/__stack_pointer + global.get $std/array/arr + local.tee $0 + i32.store + local.get $0 + call $~lib/array/Array#pop + drop + global.get $~lib/memory/__stack_pointer + global.get $std/array/arr + local.tee $0 + i32.store + local.get $0 + call $~lib/array/Array#pop + drop + global.get $~lib/memory/__stack_pointer + global.get $std/array/arr + local.tee $0 + i32.store + local.get $0 + call $~lib/array/Array#pop + drop + global.get $~lib/memory/__stack_pointer + global.get $std/array/arr + local.tee $0 + i32.store + global.get $~lib/memory/__stack_pointer + i32.const 6800 + i32.store offset=8 + block $__inlined_func$~lib/array/Array#some88 (result i32) i32.const 0 local.set $1 local.get $0 i32.load offset=12 local.set $2 - loop $for-loop|085 - local.get $2 - local.get $0 - i32.load offset=12 - local.tee $3 - local.get $2 - local.get $3 - i32.lt_s - select - local.get $1 - i32.gt_s - if - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $3 - i32.const 3 - global.set $~argumentsLength - i32.const 1 - local.get $3 - local.get $1 - local.get $0 - i32.const 6736 - i32.load - call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#some84 - drop - local.get $1 - i32.const 1 - i32.add - local.set $1 - br $for-loop|085 - end - end - i32.const 0 - end - if - i32.const 0 - i32.const 1552 - i32.const 657 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - global.get $std/array/arr - local.tee $0 - i32.store - local.get $0 - i32.load offset=12 - i32.const 8 - i32.ne - if - i32.const 0 - i32.const 1552 - i32.const 658 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/array/arr - local.tee $0 - i32.store - local.get $1 - i32.const 6768 - i32.store offset=8 - block $__inlined_func$~lib/array/Array#some86 (result i32) - i32.const 0 - local.set $1 - local.get $0 - i32.load offset=12 - local.set $2 - loop $for-loop|087 - local.get $2 - local.get $0 - i32.load offset=12 - local.tee $3 - local.get $2 - local.get $3 - i32.lt_s - select - local.get $1 - i32.gt_s - if - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $3 - i32.const 3 - global.set $~argumentsLength - i32.const 1 - local.get $3 - local.get $1 - local.get $0 - i32.const 6768 - i32.load - call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#some86 - drop - local.get $1 - i32.const 1 - i32.add - local.set $1 - br $for-loop|087 - end - end - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 1552 - i32.const 660 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - global.get $std/array/arr - local.tee $0 - i32.store - local.get $0 - call $~lib/array/Array#pop - drop - global.get $~lib/memory/__stack_pointer - global.get $std/array/arr - local.tee $0 - i32.store - local.get $0 - call $~lib/array/Array#pop - drop - global.get $~lib/memory/__stack_pointer - global.get $std/array/arr - local.tee $0 - i32.store - local.get $0 - call $~lib/array/Array#pop - drop - global.get $~lib/memory/__stack_pointer - global.get $std/array/arr - local.tee $0 - i32.store - local.get $0 - call $~lib/array/Array#pop - drop - global.get $~lib/memory/__stack_pointer - global.get $std/array/arr - local.tee $0 - i32.store - global.get $~lib/memory/__stack_pointer - i32.const 6800 - i32.store offset=8 - block $__inlined_func$~lib/array/Array#some88 (result i32) - i32.const 0 - local.set $1 - local.get $0 - i32.load offset=12 - local.set $2 - loop $for-loop|089 + loop $for-loop|089 local.get $2 local.get $0 i32.load offset=12 @@ -22402,31 +22389,31 @@ i32.const 0 global.set $std/array/i global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/array/arr local.tee $0 + global.get $std/array/arr + local.tee $2 i32.store - local.get $1 + local.get $0 i32.const 6864 i32.store offset=8 i32.const 0 local.set $1 - local.get $0 + local.get $2 i32.load offset=12 - local.set $2 + local.set $0 loop $for-loop|07191 - local.get $2 local.get $0 + local.get $2 i32.load offset=12 local.tee $3 - local.get $2 + local.get $0 local.get $3 i32.lt_s select local.get $1 i32.gt_s if - local.get $0 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 @@ -22436,7 +22423,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $0 + local.get $2 i32.const 6864 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) @@ -22477,31 +22464,31 @@ i32.const 0 global.set $std/array/i global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/array/arr local.tee $0 + global.get $std/array/arr + local.tee $2 i32.store - local.get $1 + local.get $0 i32.const 6896 i32.store offset=8 i32.const 0 local.set $1 - local.get $0 + local.get $2 i32.load offset=12 - local.set $2 + local.set $0 loop $for-loop|07492 - local.get $2 local.get $0 + local.get $2 i32.load offset=12 local.tee $3 - local.get $2 + local.get $0 local.get $3 i32.lt_s select local.get $1 i32.gt_s if - local.get $0 + local.get $2 i32.load offset=4 local.get $1 i32.const 2 @@ -22511,7 +22498,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $0 + local.get $2 i32.const 6896 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) @@ -22784,10 +22771,10 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 0 i32.store - local.get $2 + local.get $3 local.get $0 i32.load offset=12 local.tee $3 @@ -22795,11 +22782,11 @@ i32.const 10 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $6 i32.store - local.get $2 + local.get $6 i32.load offset=4 - local.set $5 + local.set $7 loop $for-loop|08195 local.get $3 local.get $0 @@ -22823,7 +22810,7 @@ local.set $9 i32.const 3 global.set $~argumentsLength - local.get $5 + local.get $7 local.get $8 i32.add local.get $9 @@ -22844,9 +22831,9 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $6 i32.store offset=12 - local.get $2 + local.get $6 i32.load offset=12 i32.const 4 i32.ne @@ -22858,10 +22845,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $6 i32.const 0 call $~lib/array/Array#__get - local.set $6 + local.set $4 global.get $~lib/memory/__stack_pointer global.get $std/array/arr local.tee $0 @@ -22870,7 +22857,7 @@ i32.const 0 call $~lib/array/Array#__get f32.convert_i32_s - local.get $6 + local.get $4 f32.ne if i32.const 0 @@ -23204,48 +23191,48 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 7248 i32.store offset=8 i32.const 0 - local.set $0 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=12 local.set $3 loop $for-loop|096 local.get $3 - local.get $2 + local.get $0 i32.load offset=12 - local.tee $4 + local.tee $6 local.get $3 - local.get $4 + local.get $6 i32.lt_s select local.get $1 i32.gt_s if - local.get $2 + local.get $0 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $0 - local.get $4 - local.get $1 local.get $2 + local.get $6 + local.get $1 + local.get $0 i32.const 7248 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $0 + local.set $2 local.get $1 i32.const 1 i32.add @@ -23253,7 +23240,7 @@ br $for-loop|096 end end - local.get $0 + local.get $2 global.set $std/array/i global.get $std/array/i i32.const 6 @@ -23269,48 +23256,48 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $2 + local.tee $3 i32.store local.get $0 i32.const 7280 i32.store offset=8 i32.const 4 - local.set $0 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $3 i32.load offset=12 - local.set $3 + local.set $0 loop $for-loop|098 + local.get $0 local.get $3 - local.get $2 i32.load offset=12 - local.tee $4 - local.get $3 - local.get $4 + local.tee $6 + local.get $0 + local.get $6 i32.lt_s select local.get $1 i32.gt_s if - local.get $2 + local.get $3 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $0 - local.get $4 - local.get $1 local.get $2 + local.get $6 + local.get $1 + local.get $3 i32.const 7280 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $0 + local.set $2 local.get $1 i32.const 1 i32.add @@ -23318,7 +23305,7 @@ br $for-loop|098 end end - local.get $0 + local.get $2 global.set $std/array/i global.get $std/array/i i32.const 10 @@ -23334,48 +23321,48 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $2 + local.tee $3 i32.store local.get $0 i32.const 7312 i32.store offset=8 i32.const 0 - local.set $0 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $3 i32.load offset=12 - local.set $3 + local.set $0 loop $for-loop|0100 + local.get $0 local.get $3 - local.get $2 i32.load offset=12 - local.tee $4 - local.get $3 - local.get $4 + local.tee $6 + local.get $0 + local.get $6 i32.lt_s select local.get $1 i32.gt_s if - local.get $2 + local.get $3 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $0 - local.get $4 - local.get $1 local.get $2 + local.get $6 + local.get $1 + local.get $3 i32.const 7312 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $0 + local.set $2 local.get $1 i32.const 1 i32.add @@ -23383,7 +23370,7 @@ br $for-loop|0100 end end - local.get $0 + local.get $2 i32.eqz if i32.const 0 @@ -23396,48 +23383,48 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $2 + local.tee $3 i32.store local.get $0 i32.const 7344 i32.store offset=8 i32.const 0 - local.set $0 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $3 i32.load offset=12 - local.set $3 + local.set $0 loop $for-loop|0102 + local.get $0 local.get $3 - local.get $2 i32.load offset=12 - local.tee $4 - local.get $3 - local.get $4 + local.tee $6 + local.get $0 + local.get $6 i32.lt_s select local.get $1 i32.gt_s if - local.get $2 + local.get $3 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $0 - local.get $4 - local.get $1 local.get $2 + local.get $6 + local.get $1 + local.get $3 i32.const 7344 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $0 + local.set $2 local.get $1 i32.const 1 i32.add @@ -23445,7 +23432,7 @@ br $for-loop|0102 end end - local.get $0 + local.get $2 if i32.const 0 i32.const 1552 @@ -23457,48 +23444,48 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $2 + local.tee $3 i32.store local.get $0 i32.const 7376 i32.store offset=8 i32.const 0 - local.set $0 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $3 i32.load offset=12 - local.set $3 + local.set $0 loop $for-loop|0104 + local.get $0 local.get $3 - local.get $2 i32.load offset=12 - local.tee $4 - local.get $3 - local.get $4 + local.tee $6 + local.get $0 + local.get $6 i32.lt_s select local.get $1 i32.gt_s if - local.get $2 + local.get $3 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $0 - local.get $4 - local.get $1 local.get $2 + local.get $6 + local.get $1 + local.get $3 i32.const 7376 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $0 + local.set $2 local.get $1 i32.const 1 i32.add @@ -23506,7 +23493,7 @@ br $for-loop|0104 end end - local.get $0 + local.get $2 global.set $std/array/i global.get $std/array/i i32.const 6 @@ -23538,48 +23525,48 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $2 + local.tee $3 i32.store local.get $0 i32.const 7408 i32.store offset=8 i32.const 0 - local.set $0 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $3 i32.load offset=12 - local.set $3 + local.set $0 loop $for-loop|0106 + local.get $0 local.get $3 - local.get $2 i32.load offset=12 - local.tee $4 - local.get $3 - local.get $4 + local.tee $6 + local.get $0 + local.get $6 i32.lt_s select local.get $1 i32.gt_s if - local.get $2 + local.get $3 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $0 - local.get $4 - local.get $1 local.get $2 + local.get $6 + local.get $1 + local.get $3 i32.const 7408 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $0 + local.set $2 local.get $1 i32.const 1 i32.add @@ -23587,7 +23574,7 @@ br $for-loop|0106 end end - local.get $0 + local.get $2 global.set $std/array/i global.get $std/array/i i32.const 10 @@ -23630,48 +23617,48 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 7440 i32.store offset=8 i32.const 0 - local.set $0 + local.set $2 i32.const 0 local.set $1 - local.get $2 + local.get $0 i32.load offset=12 local.set $3 loop $for-loop|0108 local.get $3 - local.get $2 + local.get $0 i32.load offset=12 - local.tee $4 + local.tee $6 local.get $3 - local.get $4 + local.get $6 i32.lt_s select local.get $1 i32.gt_s if - local.get $2 + local.get $0 i32.load offset=4 local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $0 - local.get $4 - local.get $1 local.get $2 + local.get $6 + local.get $1 + local.get $0 i32.const 7440 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $0 + local.set $2 local.get $1 i32.const 1 i32.add @@ -23679,7 +23666,7 @@ br $for-loop|0108 end end - local.get $0 + local.get $2 global.set $std/array/i global.get $std/array/i i32.const 1 @@ -24726,15 +24713,15 @@ local.get $1 local.get $0 call $~lib/array/Array#__get - local.tee $7 - local.get $7 + local.tee $5 + local.get $5 f64.ne if (result i32) local.get $2 local.get $0 call $~lib/array/Array#__get - local.tee $7 - local.get $7 + local.tee $5 + local.get $5 f64.ne else i32.const 0 @@ -24880,7 +24867,7 @@ i32.const 3 i32.const 8592 call $~lib/rt/__newArray - local.tee $10 + local.tee $1 i32.store offset=124 global.get $~lib/memory/__stack_pointer i32.const 1 @@ -24888,7 +24875,7 @@ i32.const 3 i32.const 8624 call $~lib/rt/__newArray - local.tee $1 + local.tee $2 i32.store offset=128 global.get $~lib/memory/__stack_pointer i32.const 2 @@ -24896,7 +24883,7 @@ i32.const 3 i32.const 8656 call $~lib/rt/__newArray - local.tee $2 + local.tee $3 i32.store offset=132 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -24904,7 +24891,7 @@ i32.const 3 i32.const 8688 call $~lib/rt/__newArray - local.tee $3 + local.tee $6 i32.store offset=136 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -24917,43 +24904,43 @@ global.get $~lib/memory/__stack_pointer i32.const 64 call $std/array/createReverseOrderedArray - local.tee $4 + local.tee $7 i32.store offset=144 global.get $~lib/memory/__stack_pointer i32.const 128 call $std/array/createReverseOrderedArray - local.tee $5 + local.tee $8 i32.store offset=148 global.get $~lib/memory/__stack_pointer i32.const 1024 call $std/array/createReverseOrderedArray - local.tee $8 + local.tee $9 i32.store offset=152 global.get $~lib/memory/__stack_pointer i32.const 10000 call $std/array/createReverseOrderedArray - local.tee $9 + local.tee $10 i32.store offset=156 global.get $~lib/memory/__stack_pointer i32.const 512 call $std/array/createRandomOrderedArray local.tee $11 i32.store offset=160 - local.get $10 - call $std/array/assertSortedDefault local.get $1 call $std/array/assertSortedDefault + local.get $2 + call $std/array/assertSortedDefault i32.const 1 i32.const 2 i32.const 3 i32.const 8816 call $~lib/rt/__newArray - local.set $10 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $1 i32.store offset=8 + local.get $2 local.get $1 - local.get $10 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -24965,7 +24952,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 call $std/array/assertSortedDefault i32.const 2 i32.const 2 @@ -24976,7 +24963,7 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=8 - local.get $2 + local.get $3 local.get $1 i32.const 0 call $std/array/isArraysEqual @@ -24989,9 +24976,9 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $6 call $std/array/assertSortedDefault - local.get $3 + local.get $6 local.get $0 i32.const 0 call $std/array/isArraysEqual @@ -25004,9 +24991,9 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $7 call $std/array/assertSortedDefault - local.get $4 + local.get $7 local.get $0 i32.const 4 call $std/array/isArraysEqual @@ -25019,9 +25006,9 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $8 call $std/array/assertSortedDefault - local.get $5 + local.get $8 local.get $0 i32.const 4 call $std/array/isArraysEqual @@ -25034,9 +25021,9 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $9 call $std/array/assertSortedDefault - local.get $8 + local.get $9 local.get $0 i32.const 4 call $std/array/isArraysEqual @@ -25049,9 +25036,9 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $10 call $std/array/assertSortedDefault - local.get $9 + local.get $10 local.get $0 i32.const 4 call $std/array/isArraysEqual @@ -25069,7 +25056,7 @@ i32.const 0 local.set $2 i32.const 0 - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 24 i32.sub @@ -25079,20 +25066,20 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $1 i64.const 0 i64.store offset=8 - local.get $3 + local.get $1 i64.const 0 i64.store offset=16 - local.get $3 + local.get $1 global.get $std/array/inputStabArr - local.tee $4 + local.tee $3 i32.store offset=8 - local.get $3 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -25101,67 +25088,67 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $6 i32.const 0 i32.store i32.const 0 - local.get $4 + local.get $3 i32.load offset=12 - local.tee $0 - local.get $0 + local.tee $7 + local.get $7 i32.const 0 i32.gt_s select - local.set $5 + local.set $8 + local.get $6 + local.get $7 local.get $8 - local.get $0 - local.get $5 i32.sub - local.tee $0 + local.tee $6 i32.const 0 - local.get $0 + local.get $6 i32.const 0 i32.gt_s select - local.tee $8 + local.tee $6 i32.const 2 i32.const 20 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $7 i32.store - local.get $0 + local.get $7 i32.load offset=4 local.set $9 - local.get $4 + local.get $3 i32.load offset=4 - local.get $5 + local.get $8 i32.const 2 i32.shl i32.add - local.set $5 - local.get $8 + local.set $3 + local.get $6 i32.const 2 i32.shl - local.set $8 + local.set $6 loop $while-continue|011 local.get $2 - local.get $8 + local.get $6 i32.lt_u if local.get $2 local.get $9 i32.add local.get $2 - local.get $5 + local.get $3 i32.add i32.load - local.tee $4 + local.tee $8 i32.store - local.get $4 + local.get $8 if - local.get $0 - local.get $4 + local.get $7 + local.get $8 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -25178,54 +25165,54 @@ global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer local.tee $2 - local.get $0 + local.get $7 i32.store local.get $2 i32.const 8880 i32.store offset=4 - local.get $0 + local.get $7 i32.load offset=4 - local.get $0 + local.get $7 i32.load offset=12 i32.const 8880 call $~lib/util/sort/SORT - local.get $3 - local.get $0 + local.get $1 + local.get $7 i32.store offset=12 i32.const 1 local.set $2 global.get $~lib/memory/__stack_pointer global.get $std/array/inputStabArr - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.load offset=12 - local.set $5 + local.set $1 loop $for-loop|012 + local.get $0 local.get $1 - local.get $5 i32.lt_s if block $for-break0 global.get $~lib/memory/__stack_pointer + local.get $7 local.get $0 - local.get $1 call $~lib/array/Array#__get local.tee $3 i32.store offset=16 global.get $~lib/memory/__stack_pointer global.get $std/array/outputStabArr - local.tee $4 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 - local.get $1 + local.get $6 + local.get $0 call $~lib/array/Array#__get - local.tee $4 + local.tee $6 i32.store offset=20 local.get $3 i32.load - local.get $4 + local.get $6 i32.load i32.ne if (result i32) @@ -25233,7 +25220,7 @@ else local.get $3 i32.load offset=4 - local.get $4 + local.get $6 i32.load offset=4 i32.ne end @@ -25242,10 +25229,10 @@ local.set $2 br $for-break0 end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|012 end end @@ -25310,10 +25297,10 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -25322,62 +25309,62 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i64.const 0 i64.store - local.get $0 + local.get $3 i32.const 16 i32.const 26 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 0 i32.store offset=4 - local.get $0 + local.get $3 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 32 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $6 i32.store offset=4 - local.get $2 + local.get $6 i32.const 0 i32.const 32 call $~lib/memory/memory.fill - local.get $0 - local.get $2 + local.get $3 + local.get $6 i32.store - local.get $2 + local.get $6 if - local.get $0 - local.get $2 + local.get $3 + local.get $6 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $2 + local.get $3 + local.get $6 i32.store offset=4 - local.get $0 + local.get $3 i32.const 32 i32.store offset=8 - local.get $0 + local.get $3 i32.const 2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $3 - local.get $0 i32.store loop $for-loop|0154 local.get $1 @@ -25395,7 +25382,7 @@ local.get $1 i32.sub call $~lib/array/Array#__set - local.get $0 + local.get $3 local.get $1 local.get $2 call $~lib/array/Array<~lib/array/Array>#__set @@ -25410,17 +25397,17 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=156 global.get $~lib/memory/__stack_pointer i32.const 9040 i32.store offset=8 - local.get $0 + local.get $3 i32.const 9040 call $std/array/assertSorted<~lib/array/Array> global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -25430,10 +25417,10 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $1 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -25442,65 +25429,65 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i64.const 0 i64.store - local.get $1 + local.get $3 i32.const 16 i32.const 29 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 i32.store - local.get $1 + local.get $3 i32.const 0 i32.store offset=4 - local.get $1 + local.get $3 i32.const 0 i32.store offset=8 - local.get $1 + local.get $3 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 2048 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $6 i32.store offset=4 - local.get $2 + local.get $6 i32.const 0 i32.const 2048 call $~lib/memory/memory.fill - local.get $1 - local.get $2 + local.get $3 + local.get $6 i32.store - local.get $2 + local.get $6 if - local.get $1 - local.get $2 + local.get $3 + local.get $6 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 - local.get $2 + local.get $3 + local.get $6 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2048 i32.store offset=8 - local.get $1 + local.get $3 i32.const 512 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 local.get $1 + local.get $3 i32.store loop $for-loop|014 - local.get $0 + local.get $2 i32.const 512 i32.lt_s if @@ -25513,18 +25500,18 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 4 i32.const 28 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 511 - local.get $0 + local.get $2 i32.sub i32.store global.get $~lib/memory/__stack_pointer @@ -25532,16 +25519,16 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 local.get $1 - local.get $0 + i32.store offset=4 + local.get $3 local.get $2 + local.get $1 call $~lib/array/Array<~lib/array/Array>#__set - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|014 end end @@ -25549,12 +25536,12 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=156 global.get $~lib/memory/__stack_pointer i32.const 9072 i32.store offset=8 - local.get $1 + local.get $3 i32.const 9072 call $std/array/assertSorted<~lib/array/Array> global.get $~lib/memory/__stack_pointer @@ -25576,7 +25563,7 @@ i32.const 1 global.set $~argumentsLength i32.const 0 - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -25599,7 +25586,7 @@ unreachable end i32.const 9360 - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 9360 i32.store @@ -25619,14 +25606,14 @@ i32.load offset=4 local.get $1 i32.load offset=12 - local.get $0 + local.get $2 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $0 local.get $1 i32.store block $__inlined_func$std/array/isSorted<~lib/string/String|null> (result i32) - local.get $2 + local.get $0 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -25638,36 +25625,36 @@ i64.const 0 i64.store i32.const 1 - local.set $2 + local.set $0 local.get $1 i32.load offset=12 - local.set $8 + local.set $6 loop $for-loop|019 - local.get $2 - local.get $8 + local.get $0 + local.get $6 i32.lt_s if local.get $1 - local.get $2 + local.get $0 i32.const 1 i32.sub call $~lib/array/Array#__get - local.set $4 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.store local.get $1 - local.get $2 + local.get $0 call $~lib/array/Array#__get - local.set $5 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $8 i32.store offset=4 i32.const 2 global.set $~argumentsLength - local.get $4 - local.get $5 - local.get $0 + local.get $7 + local.get $8 + local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 @@ -25680,10 +25667,10 @@ i32.const 0 br $__inlined_func$std/array/isSorted<~lib/string/String|null> end - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|019 end end @@ -25728,7 +25715,7 @@ block $folding-inner020 local.get $1 i32.load offset=12 - local.tee $5 + local.tee $0 local.get $3 i32.load offset=12 i32.ne @@ -25738,26 +25725,26 @@ i32.eq br_if $folding-inner1 loop $for-loop|049 + local.get $0 local.get $2 - local.get $5 - i32.lt_s + i32.gt_s if local.get $1 local.get $2 call $~lib/array/Array#__get - local.set $0 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $6 i32.store local.get $3 local.get $2 call $~lib/array/Array#__get - local.set $4 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.store offset=4 - local.get $0 - local.get $4 + local.get $6 + local.get $7 call $~lib/string/String.__eq i32.eqz br_if $folding-inner020 @@ -25823,9 +25810,9 @@ f64.const 32 f64.mul i32.trunc_f64_s - local.set $9 + local.set $8 i32.const 0 - local.set $4 + local.set $6 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -25847,14 +25834,14 @@ i32.const 9232 i32.store loop $for-loop|00 - local.get $4 - local.get $9 + local.get $6 + local.get $8 i32.lt_s if local.get $0 local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $10 + local.tee $9 i32.const 7696 i32.store offset=4 call $~lib/math/NativeMath.random @@ -25869,7 +25856,7 @@ f64.mul f64.floor i32.trunc_f64_s - local.set $5 + local.set $10 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -25886,7 +25873,7 @@ i32.load i32.const 1 i32.shr_u - local.get $5 + local.get $10 i32.le_u if global.get $~lib/memory/__stack_pointer @@ -25904,7 +25891,7 @@ local.tee $0 i32.store local.get $0 - local.get $5 + local.get $10 i32.const 1 i32.shl i32.const 7696 @@ -25919,16 +25906,16 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $10 + local.get $9 local.get $3 local.get $0 call $~lib/string/String.__concat local.tee $0 i32.store - local.get $4 + local.get $6 i32.const 1 i32.add - local.set $4 + local.set $6 br $for-loop|00 end end @@ -26010,14 +25997,14 @@ i32.store offset=168 local.get $0 i32.load offset=4 - local.set $3 + local.set $2 local.get $0 i32.load offset=12 - local.set $2 + local.set $3 i32.const 0 local.set $0 i32.const 0 - local.set $4 + local.set $6 local.get $1 i32.const 4 i32.sub @@ -26030,10 +26017,10 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/string/joinBooleanArray - local.get $2 + local.get $3 i32.const 1 i32.sub - local.tee $2 + local.tee $3 i32.const 0 i32.lt_s if @@ -26046,30 +26033,30 @@ br $__inlined_func$~lib/util/string/joinBooleanArray end block $folding-inner01 - local.get $2 + local.get $3 i32.eqz if i32.const 9456 i32.const 9488 - local.get $3 + local.get $2 i32.load8_u select local.set $1 br $folding-inner01 end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 9516 i32.load i32.const 1 i32.shr_u - local.tee $5 + local.tee $7 i32.const 5 i32.add i32.mul i32.const 5 i32.add - local.tee $9 + local.tee $8 i32.const 1 i32.shl i32.const 1 @@ -26077,19 +26064,19 @@ local.tee $1 i32.store loop $for-loop|13 - local.get $2 - local.get $4 + local.get $3 + local.get $6 i32.gt_s if - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.add i32.load8_u - local.tee $10 + local.tee $9 i32.eqz i32.const 4 i32.add - local.set $8 + local.set $10 local.get $0 i32.const 1 i32.shl @@ -26097,17 +26084,17 @@ i32.add i32.const 9456 i32.const 9488 - local.get $10 + local.get $9 select - local.get $8 + local.get $10 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $8 + local.get $10 i32.add local.set $0 - local.get $5 + local.get $7 if local.get $0 i32.const 1 @@ -26115,19 +26102,19 @@ local.get $1 i32.add i32.const 9520 - local.get $5 + local.get $7 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $5 + local.get $7 i32.add local.set $0 end - local.get $4 + local.get $6 i32.const 1 i32.add - local.set $4 + local.set $6 br $for-loop|13 end end @@ -26135,11 +26122,11 @@ local.get $3 i32.add i32.load8_u - local.tee $3 + local.tee $2 i32.eqz i32.const 4 i32.add - local.set $2 + local.set $3 local.get $0 i32.const 1 i32.shl @@ -26147,15 +26134,15 @@ i32.add i32.const 9456 i32.const 9488 - local.get $3 - select local.get $2 + select + local.get $3 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $9 + local.get $8 local.get $0 - local.get $2 + local.get $3 i32.add local.tee $0 i32.gt_s @@ -26371,39 +26358,39 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 3 i32.const 2 i32.const 12 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=156 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 i32.store offset=152 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 1 i32.const 0 call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 2 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 local.get $0 + local.get $1 i32.store offset=152 global.get $~lib/memory/__stack_pointer i32.const 9520 i32.store offset=168 - local.get $0 + local.get $1 call $~lib/array/Array#join local.set $0 global.get $~lib/memory/__stack_pointer @@ -26425,35 +26412,35 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 2 i32.const 2 i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=156 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 i32.store offset=160 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 1 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__uset - local.get $1 local.get $0 + local.get $1 i32.store offset=160 global.get $~lib/memory/__stack_pointer i32.const 9520 i32.store offset=168 - local.get $0 + local.get $1 call $~lib/array/Array#join local.set $0 global.get $~lib/memory/__stack_pointer @@ -26620,14 +26607,14 @@ i32.store local.get $0 i32.load offset=4 - local.set $3 + local.set $2 local.get $0 i32.load offset=12 - local.set $2 + local.set $3 i32.const 0 local.set $0 i32.const 0 - local.set $4 + local.set $6 local.get $1 i32.const 4 i32.sub @@ -26640,10 +26627,10 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/string/joinIntegerArray - local.get $2 + local.get $3 i32.const 1 i32.sub - local.tee $2 + local.tee $3 i32.const 0 i32.lt_s if @@ -26656,22 +26643,22 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner04 - local.get $2 + local.get $3 i32.eqz if - local.get $3 + local.get $2 i32.load8_s call $~lib/util/number/itoa32 local.set $1 br $folding-inner04 end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 9516 i32.load i32.const 1 i32.shr_u - local.tee $5 + local.tee $7 i32.const 11 i32.add i32.mul @@ -26685,8 +26672,8 @@ local.tee $1 i32.store loop $for-loop|06125 - local.get $2 - local.get $4 + local.get $3 + local.get $6 i32.gt_s if local.get $0 @@ -26694,15 +26681,15 @@ i32.shl local.get $1 i32.add - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.add i32.load8_s call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $5 + local.get $7 if local.get $0 i32.const 1 @@ -26710,19 +26697,19 @@ local.get $1 i32.add i32.const 9520 - local.get $5 + local.get $7 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $5 + local.get $7 i32.add local.set $0 end - local.get $4 + local.get $6 i32.const 1 i32.add - local.set $4 + local.set $6 br $for-loop|06125 end end @@ -26809,14 +26796,14 @@ i32.store local.get $0 i32.load offset=4 - local.set $3 + local.set $2 local.get $0 i32.load offset=12 - local.set $2 + local.set $3 i32.const 0 local.set $0 i32.const 0 - local.set $4 + local.set $6 local.get $1 i32.const 4 i32.sub @@ -26829,10 +26816,10 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/string/joinIntegerArray - local.get $2 + local.get $3 i32.const 1 i32.sub - local.tee $2 + local.tee $3 i32.const 0 i32.lt_s if @@ -26845,22 +26832,22 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner07 - local.get $2 + local.get $3 i32.eqz if - local.get $3 + local.get $2 i32.load16_u call $~lib/util/number/utoa32 local.set $1 br $folding-inner07 end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 9516 i32.load i32.const 1 i32.shr_u - local.tee $5 + local.tee $7 i32.const 10 i32.add i32.mul @@ -26874,8 +26861,8 @@ local.tee $1 i32.store loop $for-loop|09 - local.get $2 - local.get $4 + local.get $3 + local.get $6 i32.gt_s if local.get $0 @@ -26883,17 +26870,17 @@ i32.shl local.get $1 i32.add - local.get $4 + local.get $6 i32.const 1 i32.shl - local.get $3 + local.get $2 i32.add i32.load16_u call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $5 + local.get $7 if local.get $0 i32.const 1 @@ -26901,19 +26888,19 @@ local.get $1 i32.add i32.const 9520 - local.get $5 + local.get $7 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $5 + local.get $7 i32.add local.set $0 end - local.get $4 + local.get $6 i32.const 1 i32.add - local.set $4 + local.set $6 br $for-loop|09 end end @@ -26923,10 +26910,10 @@ i32.shl local.get $1 i32.add - local.get $2 + local.get $3 i32.const 1 i32.shl - local.get $3 + local.get $2 i32.add i32.load16_u call $~lib/util/number/itoa_buffered @@ -27135,19 +27122,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 2 i32.const 2 i32.const 26 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=136 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 i32.store offset=160 - local.get $0 + local.get $1 i32.const 0 i32.const 2 i32.const 2 @@ -27155,7 +27142,7 @@ i32.const 14240 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 1 i32.const 2 i32.const 2 @@ -27163,8 +27150,8 @@ i32.const 14272 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 local.get $0 + local.get $1 i32.store offset=160 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -27175,21 +27162,21 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $0 i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 9520 i32.store - local.get $0 + local.get $1 i32.load offset=4 local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.set $0 + local.set $3 i32.const 0 local.set $1 - local.get $3 + local.get $0 i32.const 12 i32.sub global.set $~lib/memory/__stack_pointer @@ -27198,14 +27185,14 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $0 i64.const 0 i64.store - local.get $3 + local.get $0 i32.const 0 i32.store offset=8 block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> - local.get $0 + local.get $3 i32.const 1 i32.sub local.tee $3 @@ -27251,7 +27238,7 @@ i32.load i32.const 1 i32.shr_u - local.set $5 + local.set $6 loop $for-loop|011132 local.get $1 local.get $3 @@ -27264,24 +27251,24 @@ local.get $2 i32.add i32.load - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 if global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 call $~lib/array/Array#toString - local.set $4 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.store offset=8 local.get $0 - local.get $4 + local.get $7 call $~lib/string/String.__concat local.tee $0 i32.store offset=4 end - local.get $5 + local.get $6 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -27350,19 +27337,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 2 i32.const 2 i32.const 39 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=136 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 i32.store offset=132 - local.get $0 + local.get $1 i32.const 0 i32.const 2 i32.const 0 @@ -27370,7 +27357,7 @@ i32.const 14352 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 1 i32.const 2 i32.const 0 @@ -27378,8 +27365,8 @@ i32.const 14384 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 local.get $0 + local.get $1 i32.store offset=132 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -27390,21 +27377,21 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $0 i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 9520 i32.store - local.get $0 + local.get $1 i32.load offset=4 local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.set $0 + local.set $3 i32.const 0 local.set $1 - local.get $3 + local.get $0 i32.const 12 i32.sub global.set $~lib/memory/__stack_pointer @@ -27413,14 +27400,14 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $0 i64.const 0 i64.store - local.get $3 + local.get $0 i32.const 0 i32.store offset=8 block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> - local.get $0 + local.get $3 i32.const 1 i32.sub local.tee $3 @@ -27466,7 +27453,7 @@ i32.load i32.const 1 i32.shr_u - local.set $5 + local.set $6 loop $for-loop|013 local.get $1 local.get $3 @@ -27479,24 +27466,24 @@ local.get $2 i32.add i32.load - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 if global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 call $~lib/array/Array#toString - local.set $4 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.store offset=8 local.get $0 - local.get $4 + local.get $7 call $~lib/string/String.__concat local.tee $0 i32.store offset=4 end - local.get $5 + local.get $6 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -27565,16 +27552,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $0 i32.const 1 i32.const 2 i32.const 41 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=136 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 i32.store offset=128 global.get $~lib/memory/__stack_pointer @@ -27583,13 +27570,13 @@ i32.const 40 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $2 i32.store offset=124 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.load offset=4 i32.store offset=120 - local.get $1 + local.get $2 i32.const 0 i32.const 1 i32.const 2 @@ -27597,12 +27584,12 @@ i32.const 14416 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 - i32.const 0 local.get $1 - call $~lib/array/Array#__uset + i32.const 0 local.get $2 + call $~lib/array/Array#__uset local.get $0 + local.get $1 i32.store offset=128 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -27613,21 +27600,21 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $0 i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 9520 i32.store - local.get $0 + local.get $1 i32.load offset=4 local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.set $0 + local.set $3 i32.const 0 local.set $1 - local.get $3 + local.get $0 i32.const 12 i32.sub global.set $~lib/memory/__stack_pointer @@ -27636,14 +27623,14 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $0 i64.const 0 i64.store - local.get $3 + local.get $0 i32.const 0 i32.store offset=8 block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array<~lib/array/Array>> - local.get $0 + local.get $3 i32.const 1 i32.sub local.tee $3 @@ -27689,7 +27676,7 @@ i32.load i32.const 1 i32.shr_u - local.set $5 + local.set $6 loop $for-loop|015 local.get $1 local.get $3 @@ -27702,24 +27689,24 @@ local.get $2 i32.add i32.load - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 if global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 call $~lib/array/Array<~lib/array/Array>#toString - local.set $4 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.store offset=8 local.get $0 - local.get $4 + local.get $7 call $~lib/string/String.__concat local.tee $0 i32.store offset=4 end - local.get $5 + local.get $6 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -27788,19 +27775,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 4 i32.const 2 i32.const 26 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=128 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 i32.store offset=132 - local.get $0 + local.get $1 i32.const 0 i32.const 1 i32.const 2 @@ -27808,7 +27795,7 @@ i32.const 14448 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 1 i32.const 3 i32.const 2 @@ -27816,7 +27803,7 @@ i32.const 14480 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 2 i32.const 3 i32.const 2 @@ -27824,7 +27811,7 @@ i32.const 14512 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 3 i32.const 3 i32.const 2 @@ -27832,11 +27819,11 @@ i32.const 14544 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 local.get $0 + local.get $1 i32.store offset=132 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 call $~lib/array/Array<~lib/array/Array>#flat local.tee $1 i32.store offset=128 @@ -27880,19 +27867,19 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 4 i32.const 2 i32.const 42 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $3 i32.store offset=160 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.load offset=4 i32.store offset=140 - local.get $0 + local.get $3 i32.const 0 i32.const 1 i32.const 2 @@ -27900,7 +27887,7 @@ i32.const 14608 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 + local.get $3 i32.const 1 i32.const 3 i32.const 2 @@ -27908,7 +27895,7 @@ i32.const 14704 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 + local.get $3 i32.const 2 i32.const 3 i32.const 2 @@ -27916,7 +27903,7 @@ i32.const 14832 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 + local.get $3 i32.const 3 i32.const 1 i32.const 2 @@ -27924,14 +27911,14 @@ i32.const 14896 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 local.get $0 + local.get $3 i32.store offset=140 global.get $~lib/memory/__stack_pointer i32.const 0 local.set $1 i32.const 0 - local.set $4 + local.set $6 i32.const 0 local.set $2 global.get $~lib/memory/__stack_pointer @@ -27945,21 +27932,21 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - local.get $0 + local.get $3 i32.load offset=4 - local.set $5 - local.get $0 - i32.load offset=12 local.set $8 + local.get $3 + i32.load offset=12 + local.set $3 loop $for-loop|0137 local.get $1 - local.get $8 + local.get $3 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $5 + local.get $8 i32.add i32.load local.tee $0 @@ -27969,9 +27956,9 @@ else i32.const 0 end - local.get $4 + local.get $6 i32.add - local.set $4 + local.set $6 local.get $1 i32.const 1 i32.add @@ -27980,13 +27967,13 @@ end end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.const 2 i32.shl local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $9 i32.store global.get $~lib/memory/__stack_pointer i32.const 16 @@ -27995,21 +27982,21 @@ local.tee $0 i32.store offset=4 local.get $0 - local.get $4 + local.get $6 i32.store offset=12 local.get $0 local.get $1 i32.store offset=8 local.get $0 - local.get $3 + local.get $9 i32.store offset=4 local.get $0 - local.get $3 + local.get $9 i32.store - local.get $3 + local.get $9 if local.get $0 - local.get $3 + local.get $9 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -28017,30 +28004,30 @@ local.set $1 loop $for-loop|1138 local.get $1 - local.get $8 + local.get $3 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $5 + local.get $8 i32.add i32.load - local.tee $9 + local.tee $10 if local.get $2 - local.get $3 - i32.add local.get $9 + i32.add + local.get $10 i32.load offset=4 - local.get $9 + local.get $10 i32.load offset=12 i32.const 2 i32.shl - local.tee $9 + local.tee $10 call $~lib/memory/memory.copy local.get $2 - local.get $9 + local.get $10 i32.add local.set $2 end @@ -28055,18 +28042,18 @@ local.set $1 loop $for-loop|2139 local.get $1 - local.get $4 + local.get $6 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $3 + local.get $9 i32.add i32.load local.tee $2 if - local.get $3 + local.get $9 local.get $2 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link @@ -28123,12 +28110,12 @@ local.get $2 local.get $0 call $~lib/array/Array#__get - local.set $4 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store offset=8 local.get $3 - local.get $4 + local.get $6 call $~lib/string/String.__eq i32.eqz if @@ -28147,19 +28134,19 @@ end end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 2 i32.const 2 i32.const 26 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=144 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load offset=4 i32.store offset=156 - local.get $0 + local.get $1 i32.const 0 i32.const 0 i32.const 2 @@ -28167,7 +28154,7 @@ i32.const 14992 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $0 + local.get $1 i32.const 1 i32.const 0 i32.const 2 @@ -28175,10 +28162,10 @@ i32.const 15024 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $1 local.get $0 + local.get $1 i32.store offset=156 - local.get $0 + local.get $1 call $~lib/array/Array<~lib/array/Array>#flat local.set $0 global.get $~lib/memory/__stack_pointer @@ -28241,39 +28228,39 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 local.get $1 i32.load offset=12 - local.tee $4 + local.tee $3 i32.const 2 i32.const 26 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $6 i32.store - local.get $2 + local.get $6 i32.load offset=4 - local.set $8 + local.set $7 loop $for-loop|0163 - local.get $4 + local.get $3 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 local.get $3 - local.get $4 - i32.gt_s + local.get $8 + i32.lt_s select local.get $0 i32.gt_s if global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $8 local.get $0 i32.const 2 i32.shl @@ -28286,24 +28273,24 @@ i32.store offset=4 i32.const 3 global.set $~argumentsLength - local.get $3 + local.get $8 local.get $10 local.get $0 local.get $1 i32.const 15120 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - local.tee $3 + local.tee $8 i32.store offset=8 - local.get $8 + local.get $7 local.get $9 i32.add - local.get $3 + local.get $8 i32.store - local.get $3 + local.get $8 if - local.get $2 - local.get $3 + local.get $6 + local.get $8 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -28319,9 +28306,9 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $6 i32.store - local.get $2 + local.get $6 call $~lib/array/Array<~lib/array/Array>#flat local.tee $0 i32.store offset=144 @@ -28497,7 +28484,7 @@ end local.get $0 i32.load offset=4 - local.set $0 + local.set $4 loop $while-continue|0 local.get $2 local.get $3 @@ -28507,12 +28494,12 @@ local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $4 i32.add i32.load - local.tee $4 + local.tee $0 i32.store - local.get $4 + local.get $0 local.get $1 call $~lib/string/String.__eq if @@ -28563,18 +28550,18 @@ i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 i32.store - local.get $1 + local.get $3 i32.const 0 i32.store offset=4 - local.get $1 + local.get $3 i32.const 0 i32.store offset=8 - local.get $1 + local.get $3 i32.const 0 i32.store offset=12 local.get $0 @@ -28597,39 +28584,39 @@ select i32.const 2 i32.shl - local.tee $3 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $2 + local.get $1 i32.const 0 - local.get $3 + local.get $2 call $~lib/memory/memory.fill + local.get $3 local.get $1 - local.get $2 i32.store - local.get $2 + local.get $1 if + local.get $3 local.get $1 - local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $3 local.get $1 - local.get $2 i32.store offset=4 - local.get $1 local.get $3 + local.get $2 i32.store offset=8 - local.get $1 + local.get $3 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $3 ) (func $std/array/Ref#constructor (param $0 i32) (result i32) (local $1 i32) @@ -28687,46 +28674,46 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $4 i32.const 0 i32.store local.get $0 local.get $1 i32.shl - local.tee $4 - local.set $6 - local.get $4 + local.tee $1 + local.set $5 + local.get $1 i32.const 0 call $~lib/rt/itcms/__new - local.set $1 + local.set $6 local.get $3 if - local.get $1 - local.get $3 local.get $6 + local.get $3 + local.get $5 call $~lib/memory/memory.copy end - local.get $5 - local.get $1 + local.get $4 + local.get $6 i32.store i32.const 16 local.get $2 call $~lib/rt/itcms/__new local.tee $2 - local.get $1 + local.get $6 i32.store - local.get $1 + local.get $6 if local.get $2 - local.get $1 + local.get $6 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $2 - local.get $1 + local.get $6 i32.store offset=4 local.get $2 - local.get $4 + local.get $1 i32.store offset=8 local.get $2 local.get $0 @@ -28802,12 +28789,12 @@ i32.const 0 local.get $1 select - local.tee $3 + local.tee $2 local.get $0 i32.load offset=12 - local.tee $4 + local.tee $3 i32.add - local.tee $2 + local.tee $4 i32.const 268435455 i32.gt_u if @@ -28819,29 +28806,29 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 2 i32.const 3 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $5 i32.store - local.get $2 + local.get $5 i32.load offset=4 - local.tee $5 + local.tee $4 local.get $0 i32.load offset=4 - local.get $4 + local.get $3 i32.const 2 i32.shl local.tee $0 call $~lib/memory/memory.copy local.get $0 - local.get $5 + local.get $4 i32.add local.get $1 i32.load offset=4 - local.get $3 + local.get $2 i32.const 2 i32.shl call $~lib/memory/memory.copy @@ -28849,7 +28836,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $5 ) (func $~lib/array/Array#slice (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -28926,14 +28913,14 @@ i32.const 0 i32.gt_s select - local.tee $3 + local.tee $2 i32.const 2 i32.const 3 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 i32.load offset=4 local.get $0 i32.load offset=4 @@ -28941,7 +28928,7 @@ i32.const 2 i32.shl i32.add - local.get $3 + local.get $2 i32.const 2 i32.shl call $~lib/memory/memory.copy @@ -28949,7 +28936,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 ) (func $~lib/array/Array#splice (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -29014,39 +29001,39 @@ i32.const 0 i32.gt_s select - local.tee $1 + local.tee $5 i32.const 2 i32.const 3 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $6 i32.store - local.get $2 + local.get $6 i32.load offset=4 local.get $0 i32.load offset=4 - local.tee $5 + local.tee $1 local.get $4 i32.const 2 i32.shl i32.add - local.tee $6 - local.get $1 + local.tee $2 + local.get $5 i32.const 2 i32.shl call $~lib/memory/memory.copy local.get $3 - local.get $1 local.get $4 + local.get $5 i32.add local.tee $4 i32.ne if - local.get $6 + local.get $2 local.get $4 i32.const 2 i32.shl - local.get $5 + local.get $1 i32.add local.get $3 local.get $4 @@ -29057,14 +29044,14 @@ end local.get $0 local.get $3 - local.get $1 + local.get $5 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $6 ) (func $~lib/array/Array#splice (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -29117,7 +29104,7 @@ i32.lt_s select end - local.tee $3 + local.tee $5 i32.sub local.tee $1 local.get $1 @@ -29130,42 +29117,42 @@ i32.const 0 i32.gt_s select - local.tee $1 + local.tee $6 i32.const 2 i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $4 + local.tee $1 i32.store - local.get $4 + local.get $1 i32.load offset=4 local.get $0 i32.load offset=4 - local.tee $5 - local.get $3 + local.tee $3 + local.get $5 i32.const 2 i32.shl i32.add - local.tee $6 - local.get $1 + local.tee $4 + local.get $6 i32.const 2 i32.shl call $~lib/memory/memory.copy local.get $2 - local.get $1 - local.get $3 + local.get $5 + local.get $6 i32.add - local.tee $3 + local.tee $5 i32.ne if - local.get $6 - local.get $3 + local.get $4 + local.get $5 i32.const 2 i32.shl - local.get $5 + local.get $3 i32.add local.get $2 - local.get $3 + local.get $5 i32.sub i32.const 2 i32.shl @@ -29173,14 +29160,14 @@ end local.get $0 local.get $2 - local.get $1 + local.get $6 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $1 ) (func $~lib/array/Array#__get (param $0 i32) (param $1 i32) (result i32) global.get $~lib/memory/__stack_pointer @@ -29316,24 +29303,24 @@ local.get $3 local.get $0 i32.load offset=12 - local.tee $3 + local.tee $4 i32.const 2 i32.const 3 i32.const 0 call $~lib/rt/__newArray - local.tee $4 + local.tee $3 i32.store - local.get $4 + local.get $3 i32.load offset=4 - local.set $4 + local.set $5 loop $for-loop|0 - local.get $3 + local.get $4 local.get $0 i32.load offset=12 - local.tee $5 + local.tee $3 local.get $3 - local.get $5 - i32.lt_s + local.get $4 + i32.gt_s select local.get $2 i32.gt_s @@ -29341,18 +29328,18 @@ local.get $2 i32.const 2 i32.shl - local.tee $5 + local.tee $6 local.get $0 i32.load offset=4 i32.add i32.load - local.set $6 + local.set $3 i32.const 3 global.set $~argumentsLength - local.get $4 local.get $5 - i32.add local.get $6 + i32.add + local.get $3 local.get $2 local.get $0 local.get $1 @@ -29401,17 +29388,17 @@ i32.const 3 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $4 i32.store local.get $0 i32.load offset=12 - local.set $4 + local.set $3 loop $for-loop|0 - local.get $4 + local.get $3 local.get $0 i32.load offset=12 local.tee $5 - local.get $4 + local.get $3 local.get $5 i32.lt_s select @@ -29435,7 +29422,7 @@ i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $3 + local.get $4 local.get $5 call $~lib/array/Array#push drop @@ -29451,7 +29438,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $4 ) (func $std/array/Dim#constructor (result i32) (local $0 i32) @@ -29830,26 +29817,26 @@ local.get $2 i32.lt_s select - local.tee $1 - local.get $1 + local.tee $4 local.get $3 - i32.gt_s + local.get $4 + i32.lt_s select i32.const 1 i32.shl - local.set $4 + local.set $1 local.get $3 - local.get $1 - local.get $1 + local.get $4 local.get $3 - i32.lt_s + local.get $4 + i32.gt_s select i32.const 1 i32.shl local.tee $3 - local.get $4 + local.get $1 i32.sub - local.tee $1 + local.tee $4 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -29865,7 +29852,7 @@ i32.shl local.get $3 i32.eq - local.get $4 + local.get $1 select if global.get $~lib/memory/__stack_pointer @@ -29876,16 +29863,16 @@ return end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $4 i32.const 1 call $~lib/rt/itcms/__new local.tee $2 i32.store local.get $2 local.get $0 - local.get $4 - i32.add local.get $1 + i32.add + local.get $4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 @@ -29933,71 +29920,71 @@ local.get $0 i32.const 31 i32.shr_u - local.tee $1 + local.tee $0 select + local.tee $1 local.tee $2 - local.tee $0 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.get $1 + local.get $0 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store - local.get $0 - local.get $2 local.get $3 - call $~lib/util/number/utoa32_dec_lut local.get $1 + local.get $2 + call $~lib/util/number/utoa32_dec_lut + local.get $0 if - local.get $0 + local.get $3 i32.const 45 i32.store16 end @@ -30005,7 +29992,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $3 ) (func $~lib/util/number/utoa32 (param $0 i32) (result i32) (local $1 i32) @@ -30129,19 +30116,19 @@ i64.store local.get $0 i32.load offset=4 - local.set $5 + local.set $4 local.get $0 i32.load offset=12 - local.set $6 + local.set $5 loop $for-loop|0 local.get $2 - local.get $6 + local.get $5 i32.lt_s if local.get $2 i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add i32.load local.tee $0 @@ -30151,9 +30138,9 @@ else i32.const 0 end - local.get $4 + local.get $3 i32.add - local.set $4 + local.set $3 local.get $2 i32.const 1 i32.add @@ -30162,36 +30149,36 @@ end end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 2 i32.shl local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $6 i32.store offset=4 - local.get $0 - local.get $4 + local.get $6 + local.get $3 i32.store offset=12 - local.get $0 + local.get $6 local.get $2 i32.store offset=8 + local.get $6 local.get $0 - local.get $3 i32.store offset=4 + local.get $6 local.get $0 - local.get $3 i32.store - local.get $3 + local.get $0 if + local.get $6 local.get $0 - local.get $3 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -30199,30 +30186,30 @@ local.set $2 loop $for-loop|1 local.get $2 - local.get $6 + local.get $5 i32.lt_s if local.get $2 i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add i32.load - local.tee $4 + local.tee $3 if + local.get $0 local.get $1 - local.get $3 i32.add - local.get $4 + local.get $3 i32.load offset=4 - local.get $4 + local.get $3 i32.load offset=12 i32.const 2 i32.shl - local.tee $4 + local.tee $3 call $~lib/memory/memory.copy local.get $1 - local.get $4 + local.get $3 i32.add local.set $1 end @@ -30237,7 +30224,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $6 ) (func $export:~lib/array/Array#get:dataStart (param $0 i32) (result i32) (local $1 i32) @@ -30370,30 +30357,30 @@ select i32.const 2 i32.shl - local.tee $3 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $4 i32.store offset=4 - local.get $2 + local.get $4 i32.const 0 - local.get $3 + local.get $2 call $~lib/memory/memory.fill local.get $0 - local.get $2 + local.get $4 i32.store - local.get $2 + local.get $4 if local.get $0 - local.get $2 + local.get $4 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $2 + local.get $4 i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 local.get $0 local.get $1 @@ -30793,16 +30780,16 @@ local.get $0 local.tee $4 i32.load offset=4 - local.set $6 + local.set $5 local.get $0 i32.load offset=12 - local.set $5 + local.set $6 local.get $2 i32.const 0 i32.lt_s if (result i32) local.get $2 - local.get $5 + local.get $6 i32.add local.tee $0 i32.const 0 @@ -30812,9 +30799,9 @@ select else local.get $2 - local.get $5 + local.get $6 local.get $2 - local.get $5 + local.get $6 i32.lt_s select end @@ -30824,7 +30811,7 @@ i32.lt_s if (result i32) local.get $3 - local.get $5 + local.get $6 i32.add local.tee $2 i32.const 0 @@ -30834,9 +30821,9 @@ select else local.get $3 - local.get $5 + local.get $6 local.get $3 - local.get $5 + local.get $6 i32.lt_s select end @@ -30849,7 +30836,7 @@ local.get $0 i32.const 2 i32.shl - local.get $6 + local.get $5 i32.add local.get $1 i32.store @@ -31215,12 +31202,12 @@ i32.const 0 local.get $1 select - local.tee $3 + local.tee $2 local.get $0 i32.load offset=12 - local.tee $4 + local.tee $3 i32.add - local.tee $2 + local.tee $4 i32.const 268435455 i32.gt_u if @@ -31232,29 +31219,29 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 2 i32.const 7 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $5 i32.store - local.get $2 + local.get $5 i32.load offset=4 - local.tee $5 + local.tee $4 local.get $0 i32.load offset=4 - local.get $4 + local.get $3 i32.const 2 i32.shl local.tee $0 call $~lib/memory/memory.copy local.get $0 - local.get $5 + local.get $4 i32.add local.get $1 i32.load offset=4 - local.get $3 + local.get $2 i32.const 2 i32.shl call $~lib/memory/memory.copy @@ -31266,7 +31253,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $5 return end i32.const 32064 @@ -31357,13 +31344,13 @@ local.get $1 i32.const 1 i32.sub - local.tee $1 + local.tee $2 i32.const 2 i32.shl i32.add i32.load local.get $0 - local.get $1 + local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -31476,17 +31463,17 @@ i32.const 7 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $4 i32.store local.get $0 i32.load offset=12 - local.set $4 + local.set $3 loop $for-loop|0 - local.get $4 + local.get $3 local.get $0 i32.load offset=12 local.tee $5 - local.get $4 + local.get $3 local.get $5 i32.lt_s select @@ -31510,7 +31497,7 @@ i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $3 + local.get $4 local.get $5 call $~lib/array/Array#push drop @@ -31530,7 +31517,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $4 return end i32.const 32064 @@ -31565,7 +31552,7 @@ i32.store local.get $0 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 1 i32.lt_s if @@ -31584,21 +31571,21 @@ local.get $1 i32.const 4 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.tee $2 + local.tee $4 i32.const 2 i32.shl - local.tee $4 + local.tee $3 call $~lib/memory/memory.copy local.get $1 - local.get $4 + local.get $3 i32.add i32.const 0 i32.store local.get $0 - local.get $2 + local.get $4 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -31802,14 +31789,14 @@ i32.const 0 i32.gt_s select - local.tee $3 + local.tee $2 i32.const 2 i32.const 7 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 i32.load offset=4 local.get $0 i32.load offset=4 @@ -31817,7 +31804,7 @@ i32.const 2 i32.shl i32.add - local.get $3 + local.get $2 i32.const 2 i32.shl call $~lib/memory/memory.copy @@ -31829,7 +31816,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 return end i32.const 32064 @@ -31920,39 +31907,39 @@ i32.const 0 i32.gt_s select - local.tee $1 + local.tee $5 i32.const 2 i32.const 7 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $6 i32.store - local.get $2 + local.get $6 i32.load offset=4 local.get $0 i32.load offset=4 - local.tee $5 + local.tee $1 local.get $4 i32.const 2 i32.shl i32.add - local.tee $6 - local.get $1 + local.tee $2 + local.get $5 i32.const 2 i32.shl call $~lib/memory/memory.copy local.get $3 - local.get $1 local.get $4 + local.get $5 i32.add local.tee $4 i32.ne if - local.get $6 + local.get $2 local.get $4 i32.const 2 i32.shl - local.get $5 + local.get $1 i32.add local.get $3 local.get $4 @@ -31963,7 +31950,7 @@ end local.get $0 local.get $3 - local.get $1 + local.get $5 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -31974,7 +31961,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $6 return end i32.const 32064 @@ -32014,21 +32001,21 @@ local.set $2 local.get $0 i32.load offset=12 - local.tee $3 + local.tee $4 i32.const 1 i32.gt_u if - local.get $3 + local.get $4 i32.const 1 i32.shr_u - local.set $4 - local.get $3 + local.set $3 + local.get $4 i32.const 1 i32.sub - local.set $3 + local.set $5 loop $while-continue|0 local.get $1 - local.get $4 + local.get $3 i32.lt_u if local.get $1 @@ -32036,22 +32023,22 @@ i32.shl local.get $2 i32.add - local.tee $5 + local.tee $6 i32.load - local.set $6 + local.set $4 + local.get $6 local.get $5 - local.get $3 local.get $1 i32.sub i32.const 2 i32.shl local.get $2 i32.add - local.tee $5 + local.tee $6 i32.load i32.store - local.get $5 local.get $6 + local.get $4 i32.store local.get $1 i32.const 1 @@ -32315,30 +32302,30 @@ i32.const 8 i32.gt_u select - local.tee $3 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $4 i32.store offset=4 - local.get $2 + local.get $4 i32.const 0 - local.get $3 + local.get $2 call $~lib/memory/memory.fill local.get $0 - local.get $2 + local.get $4 i32.store - local.get $2 + local.get $4 if local.get $0 - local.get $2 + local.get $4 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $2 + local.get $4 i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 local.get $0 local.get $1 @@ -33052,13 +33039,13 @@ i32.store local.get $0 i32.load offset=12 - local.tee $2 + local.tee $4 local.get $1 i32.load offset=12 i32.const 0 local.get $1 select - local.tee $4 + local.tee $2 i32.add local.tee $3 i32.const 1073741820 @@ -33077,21 +33064,21 @@ i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $5 i32.store - local.get $3 + local.get $5 i32.load offset=4 - local.tee $5 + local.tee $3 local.get $0 i32.load offset=4 - local.get $2 + local.get $4 call $~lib/memory/memory.copy - local.get $2 - local.get $5 + local.get $3 + local.get $4 i32.add local.get $1 i32.load offset=4 - local.get $4 + local.get $2 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 @@ -33101,7 +33088,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $5 return end i32.const 32064 @@ -33281,13 +33268,13 @@ local.get $1 i32.const 1 i32.sub - local.tee $1 + local.tee $2 local.get $0 i32.load offset=4 i32.add i32.load8_u local.get $0 - local.get $1 + local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -33398,17 +33385,17 @@ i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $4 i32.store local.get $0 i32.load offset=12 - local.set $4 + local.set $3 loop $for-loop|0 - local.get $4 + local.get $3 local.get $0 i32.load offset=12 local.tee $5 - local.get $4 + local.get $3 local.get $5 i32.lt_s select @@ -33430,7 +33417,7 @@ i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $3 + local.get $4 local.get $5 call $~lib/array/Array#push drop @@ -33450,7 +33437,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $4 return end i32.const 32064 @@ -33484,7 +33471,7 @@ i32.store local.get $0 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 1 i32.lt_s if @@ -33503,18 +33490,18 @@ local.get $1 i32.const 1 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.tee $2 + local.tee $3 call $~lib/memory/memory.copy local.get $1 - local.get $2 + local.get $3 i32.add i32.const 0 i32.store8 local.get $0 - local.get $2 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -33741,20 +33728,20 @@ i32.const 0 i32.gt_s select - local.tee $3 + local.tee $2 i32.const 0 i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 i32.load offset=4 local.get $1 local.get $0 i32.load offset=4 i32.add - local.get $3 + local.get $2 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 @@ -33764,7 +33751,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 return end i32.const 32064 @@ -33855,33 +33842,33 @@ i32.const 0 i32.gt_s select - local.tee $1 + local.tee $5 i32.const 0 i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $6 i32.store - local.get $2 + local.get $6 i32.load offset=4 local.get $4 local.get $0 i32.load offset=4 - local.tee $5 + local.tee $1 i32.add - local.tee $6 - local.get $1 + local.tee $2 + local.get $5 call $~lib/memory/memory.copy local.get $3 - local.get $1 local.get $4 + local.get $5 i32.add local.tee $4 i32.ne if - local.get $6 + local.get $2 + local.get $1 local.get $4 - local.get $5 i32.add local.get $3 local.get $4 @@ -33890,7 +33877,7 @@ end local.get $0 local.get $3 - local.get $1 + local.get $5 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -33901,7 +33888,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $6 return end i32.const 32064 @@ -34585,16 +34572,16 @@ end local.get $0 i32.load offset=4 - local.set $5 + local.set $4 local.get $0 i32.load offset=12 - local.set $4 + local.set $5 local.get $2 i32.const 0 i32.lt_s if (result i32) local.get $2 - local.get $4 + local.get $5 i32.add local.tee $2 i32.const 0 @@ -34604,9 +34591,9 @@ select else local.get $2 - local.get $4 + local.get $5 local.get $2 - local.get $4 + local.get $5 i32.lt_s select end @@ -34616,7 +34603,7 @@ i32.lt_s if (result i32) local.get $3 - local.get $4 + local.get $5 i32.add local.tee $3 i32.const 0 @@ -34626,9 +34613,9 @@ select else local.get $3 - local.get $4 + local.get $5 local.get $3 - local.get $4 + local.get $5 i32.lt_s select end @@ -34641,7 +34628,7 @@ local.get $2 i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add local.get $1 i32.store @@ -34958,15 +34945,15 @@ i32.store local.get $0 i32.load offset=12 - local.tee $5 + local.tee $4 local.get $1 i32.load offset=12 i32.const 0 local.get $1 select - local.tee $6 - i32.add local.tee $3 + i32.add + local.tee $5 i32.const 268435455 i32.gt_u if @@ -34978,41 +34965,41 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $5 i32.const 2 i32.const 33 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $5 i32.store - local.get $3 - i32.load offset=4 - local.set $4 local.get $5 + i32.load offset=4 + local.set $6 + local.get $4 i32.const 2 i32.shl - local.set $5 + local.set $4 local.get $0 i32.load offset=4 - local.set $7 + local.set $0 loop $for-loop|0 local.get $2 - local.get $5 + local.get $4 i32.lt_u if local.get $2 - local.get $4 + local.get $6 i32.add + local.get $0 local.get $2 - local.get $7 i32.add i32.load - local.tee $0 + local.tee $7 i32.store - local.get $0 + local.get $7 if - local.get $3 - local.get $0 + local.get $5 + local.get $7 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -35024,36 +35011,36 @@ end end local.get $4 - local.get $5 + local.get $6 i32.add local.set $2 local.get $1 i32.load offset=4 - local.set $4 - local.get $6 + local.set $1 + local.get $3 i32.const 2 i32.shl - local.set $5 + local.set $3 i32.const 0 local.set $0 loop $for-loop|1 local.get $0 - local.get $5 + local.get $3 i32.lt_u if local.get $0 local.get $2 i32.add local.get $0 - local.get $4 + local.get $1 i32.add i32.load - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 if - local.get $3 - local.get $1 + local.get $5 + local.get $4 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -35072,7 +35059,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $5 return end i32.const 32064 @@ -35112,7 +35099,7 @@ i32.store local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.lt_s if @@ -35124,23 +35111,23 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 local.get $0 i32.load offset=4 - local.get $1 + local.get $2 i32.const 1 i32.sub - local.tee $1 + local.tee $3 i32.const 2 i32.shl i32.add i32.load - local.tee $3 + local.tee $2 i32.store local.get $0 - local.get $1 + local.get $3 i32.store offset=12 - local.get $2 + local.get $1 i32.const 4 i32.add global.set $~lib/memory/__stack_pointer @@ -35148,7 +35135,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 return end i32.const 32064 @@ -35285,17 +35272,17 @@ i32.const 33 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $4 i32.store local.get $0 i32.load offset=12 - local.set $4 + local.set $3 loop $for-loop|0 - local.get $4 + local.get $3 local.get $0 i32.load offset=12 local.tee $5 - local.get $4 + local.get $3 local.get $5 i32.lt_s select @@ -35321,7 +35308,7 @@ i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $3 + local.get $4 local.get $5 call $~lib/array/Array<~lib/string/String>#push drop @@ -35341,7 +35328,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $4 return end i32.const 32064 @@ -35396,29 +35383,29 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=4 - local.tee $1 - i32.load local.tee $3 + i32.load + local.tee $1 i32.store - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.const 4 i32.add local.get $2 i32.const 1 i32.sub - local.tee $2 + local.tee $4 i32.const 2 i32.shl - local.tee $4 + local.tee $2 call $~lib/memory/memory.copy - local.get $1 - local.get $4 + local.get $2 + local.get $3 i32.add i32.const 0 i32.store local.get $0 - local.get $2 + local.get $4 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -35428,7 +35415,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 return end i32.const 32064 @@ -35567,23 +35554,23 @@ i32.load offset=12 i32.const 1 i32.add - local.tee $2 + local.tee $3 i32.const 2 i32.const 1 call $~lib/array/ensureCapacity local.get $0 i32.load offset=4 - local.tee $3 + local.tee $2 i32.const 4 i32.add - local.get $3 local.get $2 + local.get $3 i32.const 1 i32.sub i32.const 2 i32.shl call $~lib/memory/memory.copy - local.get $3 + local.get $2 local.get $1 i32.store local.get $1 @@ -35594,13 +35581,13 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $2 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 ) (func $export:~lib/array/Array<~lib/string/String>#slice@varargs (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -35699,47 +35686,47 @@ i32.const 0 i32.gt_s select - local.tee $2 + local.tee $3 i32.const 2 i32.const 33 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $5 i32.store - local.get $1 + local.get $5 i32.load offset=4 - local.set $3 + local.set $1 local.get $0 i32.load offset=4 local.get $4 i32.const 2 i32.shl i32.add - local.set $4 + local.set $2 i32.const 0 local.set $0 - local.get $2 + local.get $3 i32.const 2 i32.shl - local.set $5 + local.set $3 loop $while-continue|0 local.get $0 - local.get $5 + local.get $3 i32.lt_u if local.get $0 - local.get $3 + local.get $1 i32.add local.get $0 - local.get $4 + local.get $2 i32.add i32.load - local.tee $2 + local.tee $4 i32.store - local.get $2 + local.get $4 if - local.get $1 - local.get $2 + local.get $5 + local.get $4 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -35758,7 +35745,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $5 return end i32.const 32064 @@ -35849,39 +35836,39 @@ i32.const 0 i32.gt_s select - local.tee $1 + local.tee $5 i32.const 2 i32.const 33 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $6 i32.store - local.get $2 + local.get $6 i32.load offset=4 local.get $0 i32.load offset=4 - local.tee $5 + local.tee $1 local.get $4 i32.const 2 i32.shl i32.add - local.tee $6 - local.get $1 + local.tee $2 + local.get $5 i32.const 2 i32.shl call $~lib/memory/memory.copy local.get $3 - local.get $1 local.get $4 + local.get $5 i32.add local.tee $4 i32.ne if - local.get $6 + local.get $2 local.get $4 i32.const 2 i32.shl - local.get $5 + local.get $1 i32.add local.get $3 local.get $4 @@ -35892,7 +35879,7 @@ end local.get $0 local.get $3 - local.get $1 + local.get $5 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -35903,7 +35890,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $6 return end i32.const 32064 @@ -35930,16 +35917,16 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 local.get $0 i32.store local.get $0 i32.load offset=4 - local.set $3 + local.set $2 local.get $0 i32.load offset=12 - local.set $2 - local.get $4 + local.set $4 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -35950,46 +35937,46 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $2 + local.get $4 i32.const 1 i32.gt_u if - local.get $2 + local.get $4 i32.const 1 i32.shr_u - local.set $4 - local.get $2 + local.set $5 + local.get $4 i32.const 1 i32.sub - local.set $2 + local.set $4 loop $while-continue|0 local.get $1 - local.get $4 + local.get $5 i32.lt_u if global.get $~lib/memory/__stack_pointer local.get $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add - local.tee $5 - i32.load local.tee $6 + i32.load + local.tee $3 i32.store - local.get $5 - local.get $2 + local.get $6 + local.get $4 local.get $1 i32.sub i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add - local.tee $5 + local.tee $6 i32.load i32.store - local.get $5 local.get $6 + local.get $3 i32.store local.get $1 i32.const 1 @@ -36217,16 +36204,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $3 i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $3 local.get $1 local.get $2 select @@ -36235,7 +36222,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $0 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/arraybuffer.optimized.wat b/tests/compiler/std/arraybuffer.optimized.wat index a6d92d83bd..6fab8e3fb4 100644 --- a/tests/compiler/std/arraybuffer.optimized.wat +++ b/tests/compiler/std/arraybuffer.optimized.wat @@ -119,7 +119,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -142,7 +142,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -152,23 +152,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -176,7 +176,7 @@ else i32.const 1712 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1360 @@ -186,7 +186,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 1716 @@ -201,27 +201,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -309,19 +309,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -346,9 +346,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -356,17 +356,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -654,10 +654,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -669,15 +669,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -707,7 +707,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -743,12 +743,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -766,11 +766,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 18240 @@ -778,14 +778,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -795,17 +795,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1283,14 +1283,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1300,17 +1300,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1326,22 +1326,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1352,11 +1352,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1461,7 +1461,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1487,32 +1487,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1528,16 +1528,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1545,7 +1545,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1553,8 +1553,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1571,7 +1571,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -1581,13 +1581,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1600,40 +1600,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -1659,26 +1659,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2153,115 +2153,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2293,43 +2283,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2665,13 +2653,13 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i32.const 0 i32.store offset=16 memory.size @@ -2706,7 +2694,7 @@ i32.store i32.const 1456 global.set $~lib/rt/itcms/fromSpace - local.get $1 + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -2715,26 +2703,26 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 8 call $~lib/memory/memory.fill global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -2749,13 +2737,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 0 i32.const 1073741820 call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -2781,13 +2769,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 1 i32.const 1073741820 call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -2802,13 +2790,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const -1 i32.const 1073741820 call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -2823,13 +2811,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 1 i32.const 3 call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -2844,13 +2832,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 1 i32.const -1 call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -2865,13 +2853,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const -3 i32.const -1 call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -2886,13 +2874,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const -4 i32.const 42 call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -2907,7 +2895,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 42 i32.const 1073741820 call $~lib/arraybuffer/ArrayBuffer#slice @@ -2959,13 +2947,13 @@ local.get $0 i32.const 0 call $~lib/arraybuffer/ArrayBufferView#constructor - local.tee $2 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -2982,27 +2970,27 @@ i32.const 8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $2 i32.const 1632 i32.const 8 call $~lib/memory/memory.copy local.get $1 - local.get $0 + local.get $2 i32.store i32.const 16 i32.const 3 call $~lib/rt/itcms/__new local.tee $1 - local.get $0 + local.get $2 i32.store - local.get $0 + local.get $2 if local.get $1 - local.get $0 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $1 - local.get $0 + local.get $2 i32.store offset=4 local.get $1 i32.const 8 @@ -3026,38 +3014,38 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 2 call $~lib/arraybuffer/ArrayBufferView#constructor - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.load - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -3067,31 +3055,31 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 12 i32.const 15 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 0 i32.store offset=4 - local.get $0 + local.get $2 i32.const 0 i32.store offset=8 - local.get $2 local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.gt_u - local.get $2 + local.get $1 i32.const 1073741820 i32.gt_u i32.or @@ -3103,27 +3091,27 @@ call $~lib/builtins/abort unreachable end + local.get $2 local.get $0 - local.get $1 i32.store - local.get $1 + local.get $0 if + local.get $2 local.get $0 - local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $2 local.get $0 - local.get $1 i32.store offset=4 - local.get $0 local.get $2 + local.get $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=12 i32.const 18228 global.set $~lib/memory/__stack_pointer @@ -3250,22 +3238,22 @@ i32.const 0 i32.gt_s select - local.tee $3 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 local.get $0 local.get $1 i32.add - local.get $3 + local.get $2 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 ) (func $~lib/arraybuffer/ArrayBufferView#constructor (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -3323,28 +3311,28 @@ i32.const 1 local.get $1 i32.shl - local.tee $2 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $1 local.get $2 + local.get $1 call $~lib/memory/memory.fill local.get $0 - local.get $1 + local.get $2 i32.store - local.get $1 + local.get $2 if local.get $0 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $1 + local.get $2 i32.store offset=4 local.get $0 - local.get $2 + local.get $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 diff --git a/tests/compiler/std/dataview.optimized.wat b/tests/compiler/std/dataview.optimized.wat index 1db53a8136..9dfa64182e 100644 --- a/tests/compiler/std/dataview.optimized.wat +++ b/tests/compiler/std/dataview.optimized.wat @@ -125,7 +125,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -148,7 +148,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -158,23 +158,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -182,7 +182,7 @@ else i32.const 1744 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1360 @@ -192,7 +192,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 1748 @@ -207,27 +207,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -315,19 +315,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -352,9 +352,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -362,17 +362,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -660,10 +660,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -675,15 +675,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -713,7 +713,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -749,12 +749,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -772,11 +772,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 18176 @@ -784,14 +784,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -801,17 +801,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1289,14 +1289,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1306,17 +1306,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1332,22 +1332,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1358,11 +1358,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1467,7 +1467,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1493,32 +1493,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1534,16 +1534,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1551,7 +1551,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1559,8 +1559,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1577,7 +1577,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -1587,13 +1587,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1606,40 +1606,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -1665,26 +1665,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2476,10 +2476,10 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i32.const 0 i32.store offset=8 memory.size @@ -2514,7 +2514,7 @@ i32.store i32.const 1456 global.set $~lib/rt/itcms/fromSpace - local.get $2 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -2530,7 +2530,7 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -2544,40 +2544,40 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - local.get $1 + local.get $0 i32.eqz if global.get $~lib/memory/__stack_pointer i32.const 12 i32.const 2 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store end - local.get $1 + local.get $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $5 i32.store offset=4 - local.get $0 + local.get $5 i32.const 8 call $~lib/memory/memory.fill - local.get $1 local.get $0 + local.get $5 i32.store - local.get $0 + local.get $5 if - local.get $1 + local.get $0 i32.eqz if i32.const 0 @@ -2588,112 +2588,112 @@ unreachable end global.get $~lib/rt/itcms/white - local.get $0 + local.get $5 i32.const 20 i32.sub - local.tee $3 + local.tee $2 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $5 + local.tee $4 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $2 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $5 + local.get $4 i32.const 3 i32.eq i32.and if - local.get $3 + local.get $2 call $~lib/rt/itcms/Object#makeGray end end end end - local.get $1 local.get $0 + local.get $5 i32.store offset=4 - local.get $1 + local.get $0 i32.const 8 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 246 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 224 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 88 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 3 i32.const 159 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 4 i32.const 130 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 5 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 6 i32.const 67 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 7 i32.const 95 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load - local.tee $0 + local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub - local.get $1 + local.get $0 i32.load offset=8 call $~lib/dataview/DataView#constructor - local.tee $0 + local.tee $1 i32.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -2707,7 +2707,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -2721,7 +2721,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -2735,7 +2735,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -2749,7 +2749,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -2763,7 +2763,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -2777,7 +2777,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -2791,7 +2791,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -2805,7 +2805,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -2819,7 +2819,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -2833,7 +2833,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getFloat64 f64.const 7936550095674706383278551e126 @@ -2846,7 +2846,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getFloat64 f64.const -411777475818852546741639e241 @@ -2859,7 +2859,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getInt8 i32.const -10 @@ -2872,7 +2872,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getInt8 i32.const -32 @@ -2885,7 +2885,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/dataview/DataView#getInt8 i32.const 88 @@ -2898,7 +2898,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 call $~lib/dataview/DataView#getInt8 i32.const -97 @@ -2911,7 +2911,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 call $~lib/dataview/DataView#getInt8 i32.const -126 @@ -2924,7 +2924,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 5 call $~lib/dataview/DataView#getInt8 i32.const 101 @@ -2937,7 +2937,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 6 call $~lib/dataview/DataView#getInt8 i32.const 67 @@ -2950,7 +2950,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 7 call $~lib/dataview/DataView#getInt8 i32.const 95 @@ -2963,7 +2963,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -2979,7 +2979,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -2995,7 +2995,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3011,7 +3011,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3027,7 +3027,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3043,7 +3043,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 5 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3059,7 +3059,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 6 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3075,7 +3075,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3091,7 +3091,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3107,7 +3107,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3123,7 +3123,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3139,7 +3139,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3155,7 +3155,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 5 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3171,7 +3171,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 6 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3187,7 +3187,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -3201,7 +3201,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -3215,7 +3215,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -3229,7 +3229,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -3243,7 +3243,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -3257,7 +3257,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -3271,7 +3271,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -3285,7 +3285,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -3299,7 +3299,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -3313,7 +3313,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -3327,7 +3327,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getInt64 i64.const 6864441868736323830 @@ -3340,7 +3340,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getInt64 i64.const -657428103485373601 @@ -3353,7 +3353,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getUint8 i32.const 246 @@ -3366,7 +3366,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getUint8 i32.const 224 @@ -3379,7 +3379,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/dataview/DataView#getUint8 i32.const 88 @@ -3392,7 +3392,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 call $~lib/dataview/DataView#getUint8 i32.const 159 @@ -3405,7 +3405,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 call $~lib/dataview/DataView#getUint8 i32.const 130 @@ -3418,7 +3418,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 5 call $~lib/dataview/DataView#getUint8 i32.const 101 @@ -3431,7 +3431,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 6 call $~lib/dataview/DataView#getUint8 i32.const 67 @@ -3444,7 +3444,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 7 call $~lib/dataview/DataView#getUint8 i32.const 95 @@ -3457,7 +3457,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -3473,7 +3473,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -3489,7 +3489,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -3505,7 +3505,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -3521,7 +3521,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -3537,7 +3537,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 5 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -3553,7 +3553,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 6 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -3569,7 +3569,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -3585,7 +3585,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -3601,7 +3601,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -3617,7 +3617,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -3633,7 +3633,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -3649,7 +3649,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 5 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -3665,7 +3665,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 6 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -3681,7 +3681,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -3695,7 +3695,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -3709,7 +3709,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -3723,7 +3723,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -3737,7 +3737,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -3751,7 +3751,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -3765,7 +3765,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -3779,7 +3779,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -3793,7 +3793,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -3807,7 +3807,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -3821,7 +3821,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getUint64 i64.const 6864441868736323830 @@ -3834,7 +3834,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getUint64 i64.const -657428103485373601 @@ -3847,11 +3847,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 f32.const 1.5976661625240943e-18 i32.const 1 call $~lib/dataview/DataView#setFloat32 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -3865,11 +3865,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 f32.const 1976281973381696323584 i32.const 0 call $~lib/dataview/DataView#setFloat32 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -3883,11 +3883,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 f64.const -1094252199637739024055454e124 i32.const 1 call $~lib/dataview/DataView#setFloat64 - local.get $0 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getFloat64 f64.const -1094252199637739024055454e124 @@ -3900,11 +3900,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 f64.const 6.022586634778589e-103 i32.const 0 call $~lib/dataview/DataView#setFloat64 - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getFloat64 f64.const 6.022586634778589e-103 @@ -3917,7 +3917,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.eqz if @@ -3928,11 +3928,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=4 i32.const 108 i32.store8 - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getInt8 i32.const 108 @@ -3945,11 +3945,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const -13360 i32.const 1 call $~lib/dataview/DataView#setInt16 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3965,11 +3965,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 14689 i32.const 0 call $~lib/dataview/DataView#setInt16 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3985,11 +3985,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1204680201 i32.const 1 call $~lib/dataview/DataView#setInt32 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -4003,11 +4003,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 660673230 i32.const 0 call $~lib/dataview/DataView#setInt32 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -4021,11 +4021,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i64.const -3290739641816099749 i32.const 1 call $~lib/dataview/DataView#setInt64 - local.get $0 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getInt64 i64.const -3290739641816099749 @@ -4038,11 +4038,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i64.const 8178932412950708047 i32.const 0 call $~lib/dataview/DataView#setInt64 - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getInt64 i64.const 8178932412950708047 @@ -4055,7 +4055,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.eqz if @@ -4066,11 +4066,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=4 i32.const 238 i32.store8 - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getUint8 i32.const 238 @@ -4083,11 +4083,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 58856 i32.const 1 call $~lib/dataview/DataView#setUint16 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -4103,11 +4103,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 60400 i32.const 0 call $~lib/dataview/DataView#setUint16 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -4123,11 +4123,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const -846805744 i32.const 1 call $~lib/dataview/DataView#setUint32 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -4141,11 +4141,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const -1510791631 i32.const 0 call $~lib/dataview/DataView#setUint32 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -4159,11 +4159,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i64.const 2334704782995986958 i32.const 1 call $~lib/dataview/DataView#setUint64 - local.get $0 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getUint64 i64.const 2334704782995986958 @@ -4176,11 +4176,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i64.const -7123186897289856329 i32.const 0 call $~lib/dataview/DataView#setUint64 - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getUint64 i64.const -7123186897289856329 @@ -4194,12 +4194,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $1 + local.get $0 i32.load local.tee $0 i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.const 0 local.get $0 @@ -4309,15 +4309,15 @@ i32.const 12 i32.const 4 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $5 i32.store - local.get $3 + local.get $5 i32.const 0 i32.store - local.get $3 + local.get $5 i32.const 0 i32.store offset=4 - local.get $3 + local.get $5 i32.const 0 i32.store offset=8 local.get $0 @@ -4340,12 +4340,12 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 local.get $0 i32.store local.get $0 if - local.get $3 + local.get $5 i32.eqz if i32.const 0 @@ -4359,53 +4359,53 @@ local.get $0 i32.const 20 i32.sub - local.tee $4 + local.tee $3 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $3 + local.get $5 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $5 + local.tee $4 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $4 + local.get $3 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $5 + local.get $4 i32.const 3 i32.eq i32.and if - local.get $4 + local.get $3 call $~lib/rt/itcms/Object#makeGray end end end end - local.get $3 + local.get $5 local.get $0 local.get $1 i32.add i32.store offset=4 - local.get $3 + local.get $5 local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $5 ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) global.get $~lib/rt/itcms/white diff --git a/tests/compiler/std/date.optimized.wat b/tests/compiler/std/date.optimized.wat index e0ecf66113..c554de81ae 100644 --- a/tests/compiler/std/date.optimized.wat +++ b/tests/compiler/std/date.optimized.wat @@ -239,17 +239,17 @@ i32.const 2 i32.le_s i32.sub - local.tee $0 - local.get $0 + local.tee $7 + local.get $7 i32.const 399 i32.sub - local.get $0 + local.get $7 i32.const 0 i32.ge_s select i32.const 400 i32.div_s - local.set $7 + local.set $0 local.get $6 i64.extend_i32_s local.get $5 @@ -280,24 +280,24 @@ i32.const 5 i32.div_u i32.add - local.get $0 local.get $7 + local.get $0 i32.const 400 i32.mul i32.sub - local.tee $0 + local.tee $1 i32.const 365 i32.mul - local.get $0 + local.get $1 i32.const 2 i32.shr_u i32.add - local.get $0 + local.get $1 i32.const 100 i32.div_u i32.sub i32.add - local.get $7 + local.get $0 i32.const 146097 i32.mul i32.add @@ -328,51 +328,51 @@ select i32.const 146097 i32.div_s - local.set $2 + local.set $1 local.get $0 - local.get $2 + local.get $1 i32.const 146097 i32.mul i32.sub - local.tee $0 - local.get $0 + local.tee $2 + local.get $2 i32.const 1460 i32.div_u i32.sub - local.get $0 + local.get $2 i32.const 36524 i32.div_u i32.add - local.get $0 + local.get $2 i32.const 146096 i32.div_u i32.sub i32.const 365 i32.div_u - local.set $1 + local.set $0 + local.get $2 local.get $0 - local.get $1 i32.const 365 i32.mul - local.get $1 + local.get $0 i32.const 2 i32.shr_u i32.add - local.get $1 + local.get $0 i32.const 100 i32.div_u i32.sub i32.sub - local.tee $3 + local.tee $2 i32.const 5 i32.mul i32.const 2 i32.add i32.const 153 i32.div_s - local.set $0 + local.set $3 + local.get $2 local.get $3 - local.get $0 i32.const 153 i32.mul i32.const 2 @@ -385,20 +385,20 @@ global.set $~lib/date/_day i32.const 3 i32.const -9 - local.get $0 + local.get $3 i32.const 10 i32.lt_s select - local.get $0 + local.get $3 i32.add - local.tee $0 + local.tee $2 global.set $~lib/date/_month - local.get $2 + local.get $1 i32.const 400 i32.mul - local.get $1 - i32.add local.get $0 + i32.add + local.get $2 i32.const 2 i32.le_s i32.add @@ -486,7 +486,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -509,7 +509,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -519,23 +519,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -543,7 +543,7 @@ else i32.const 7504 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1392 @@ -553,7 +553,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 7508 @@ -568,27 +568,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -676,19 +676,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -713,9 +713,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -723,17 +723,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -1021,10 +1021,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -1036,15 +1036,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -1074,7 +1074,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1110,12 +1110,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -1133,11 +1133,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 23952 @@ -1145,14 +1145,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -1162,17 +1162,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1650,14 +1650,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1667,17 +1667,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1693,22 +1693,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1719,11 +1719,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1828,7 +1828,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1854,32 +1854,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1895,16 +1895,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1912,7 +1912,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1920,8 +1920,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1938,7 +1938,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -1948,13 +1948,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1967,40 +1967,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -2026,26 +2026,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2304,8 +2304,8 @@ ) (func $~lib/date/Date#setUTCMonth (param $0 i32) (param $1 i32) (local $2 i32) - (local $3 i32) - (local $4 i64) + (local $3 i64) + (local $4 i32) local.get $1 local.get $0 i32.load offset=4 @@ -2318,30 +2318,30 @@ local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $1 i32.const 2 i32.le_s i32.sub - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 i32.const 399 i32.sub - local.get $1 + local.get $4 i32.const 0 i32.ge_s select i32.const 400 i32.div_s - local.set $3 + local.set $2 local.get $0 local.get $0 i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $4 + local.tee $3 i64.const 86400000 i64.const 0 - local.get $4 + local.get $3 i64.const 0 i64.lt_s select @@ -2350,11 +2350,11 @@ i32.load offset=8 i32.const -3 i32.const 9 - local.get $2 + local.get $1 i32.const 2 i32.gt_s select - local.get $2 + local.get $1 i32.add i32.const 153 i32.mul @@ -2363,8 +2363,8 @@ i32.const 5 i32.div_u i32.add - local.get $1 - local.get $3 + local.get $4 + local.get $2 i32.const 400 i32.mul i32.sub @@ -2380,7 +2380,7 @@ i32.div_u i32.sub i32.add - local.get $3 + local.get $2 i32.const 146097 i32.mul i32.add @@ -2394,8 +2394,8 @@ ) (func $~lib/date/Date#setUTCFullYear (param $0 i32) (param $1 i32) (local $2 i32) - (local $3 i32) - (local $4 i64) + (local $3 i64) + (local $4 i32) local.get $1 local.get $0 i32.load @@ -2406,30 +2406,30 @@ local.get $1 local.get $0 i32.load offset=4 - local.tee $2 + local.tee $1 i32.const 2 i32.le_s i32.sub - local.tee $1 - local.get $1 + local.tee $4 + local.get $4 i32.const 399 i32.sub - local.get $1 + local.get $4 i32.const 0 i32.ge_s select i32.const 400 i32.div_s - local.set $3 + local.set $2 local.get $0 local.get $0 i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $4 + local.tee $3 i64.const 86400000 i64.const 0 - local.get $4 + local.get $3 i64.const 0 i64.lt_s select @@ -2438,11 +2438,11 @@ i32.load offset=8 i32.const -3 i32.const 9 - local.get $2 + local.get $1 i32.const 2 i32.gt_s select - local.get $2 + local.get $1 i32.add i32.const 153 i32.mul @@ -2451,8 +2451,8 @@ i32.const 5 i32.div_u i32.add - local.get $1 - local.get $3 + local.get $4 + local.get $2 i32.const 400 i32.mul i32.sub @@ -2468,7 +2468,7 @@ i32.div_u i32.sub i32.add - local.get $3 + local.get $2 i32.const 146097 i32.mul i32.add @@ -3151,115 +3151,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3291,43 +3281,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3727,14 +3715,14 @@ if local.get $1 i32.load16_u - local.tee $0 + local.tee $4 local.get $2 i32.load16_u - local.tee $4 + local.tee $0 i32.ne if - local.get $0 local.get $4 + local.get $0 i32.sub return end @@ -3803,7 +3791,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 i32.eqz if i32.const 0 @@ -3815,7 +3803,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.eqz if i32.const -1 @@ -3828,25 +3816,25 @@ i32.gt_s select local.tee $2 - local.get $3 + local.get $4 local.get $2 - local.get $3 + local.get $4 i32.lt_s select local.set $2 - local.get $3 local.get $4 + local.get $3 i32.sub - local.set $3 + local.set $4 loop $for-loop|0 local.get $2 - local.get $3 + local.get $4 i32.le_s if local.get $0 local.get $2 local.get $1 - local.get $4 + local.get $3 call $~lib/util/string/compareImpl i32.eqz if @@ -3874,10 +3862,10 @@ (local $10 i32) local.get $0 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 1 i32.add - local.tee $9 + local.tee $8 local.tee $2 local.get $0 i32.load offset=8 @@ -3921,15 +3909,15 @@ local.get $4 i32.lt_u select - local.tee $7 - local.tee $5 + local.tee $6 + local.tee $10 local.get $0 i32.load - local.tee $10 + local.tee $9 local.tee $2 i32.const 20 i32.sub - local.tee $6 + local.tee $5 i32.load i32.const -4 i32.and @@ -3937,23 +3925,23 @@ i32.sub i32.le_u if - local.get $6 local.get $5 + local.get $10 i32.store offset=16 br $__inlined_func$~lib/rt/itcms/__renew end + local.get $10 local.get $5 - local.get $6 i32.load offset=12 call $~lib/rt/itcms/__new local.tee $4 local.get $2 + local.get $10 local.get $5 - local.get $6 i32.load offset=16 local.tee $2 local.get $2 - local.get $5 + local.get $10 i32.gt_u select call $~lib/memory/memory.copy @@ -3963,12 +3951,12 @@ local.get $2 local.get $3 i32.add - local.get $7 + local.get $6 local.get $3 i32.sub call $~lib/memory/memory.fill local.get $2 - local.get $10 + local.get $9 i32.ne if local.get $0 @@ -3986,12 +3974,12 @@ end end local.get $0 - local.get $7 + local.get $6 i32.store offset=8 end local.get $0 i32.load offset=4 - local.get $8 + local.get $7 i32.const 2 i32.shl i32.add @@ -4005,7 +3993,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $9 + local.get $8 i32.store offset=12 ) (func $~lib/util/string/strtol (param $0 i32) (result i32) @@ -4014,14 +4002,13 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $2 i32.eqz if i32.const 0 @@ -4029,28 +4016,28 @@ end local.get $0 i32.load16_u - local.set $2 + local.set $1 loop $while-continue|0 block $__inlined_func$~lib/util/string/isSpace (result i32) - local.get $2 - local.tee $1 + local.get $1 + local.tee $3 i32.const 128 i32.or i32.const 160 i32.eq - local.get $2 + local.get $1 i32.const 9 i32.sub i32.const 4 i32.le_u i32.or - local.get $2 + local.get $1 i32.const 5760 i32.lt_u br_if $__inlined_func$~lib/util/string/isSpace drop i32.const 1 - local.get $1 + local.get $3 i32.const -8192 i32.add i32.const 10 @@ -4059,31 +4046,31 @@ drop block $break|0 block $case6|0 - local.get $1 + local.get $3 i32.const 5760 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 8232 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 8233 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 8239 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 8287 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 12288 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 65279 i32.eq br_if $case6|0 @@ -4100,28 +4087,28 @@ i32.add local.tee $0 i32.load16_u - local.set $2 - local.get $3 + local.set $1 + local.get $2 i32.const 1 i32.sub - local.set $3 + local.set $2 br $while-continue|0 end end i32.const 1 - local.set $4 - local.get $2 + local.set $3 + local.get $1 i32.const 43 i32.eq - local.get $2 + local.get $1 i32.const 45 i32.eq i32.or if (result i32) - local.get $3 + local.get $2 i32.const 1 i32.sub - local.tee $3 + local.tee $2 i32.eqz if i32.const 0 @@ -4129,22 +4116,22 @@ end i32.const -1 i32.const 1 - local.get $2 + local.get $1 i32.const 45 i32.eq select - local.set $4 + local.set $3 local.get $0 i32.const 2 i32.add local.tee $0 i32.load16_u else - local.get $2 + local.get $1 end i32.const 48 i32.eq - local.get $3 + local.get $2 i32.const 2 i32.gt_s i32.and @@ -4174,50 +4161,50 @@ i32.const 4 i32.add local.set $0 - local.get $3 + local.get $2 i32.const 2 i32.sub - local.set $3 + local.set $2 i32.const 2 - local.set $6 + local.set $4 br $break|1 end local.get $0 i32.const 4 i32.add local.set $0 - local.get $3 + local.get $2 i32.const 2 i32.sub - local.set $3 + local.set $2 i32.const 8 - local.set $6 + local.set $4 br $break|1 end local.get $0 i32.const 4 i32.add local.set $0 - local.get $3 + local.get $2 i32.const 2 i32.sub - local.set $3 + local.set $2 i32.const 16 - local.set $6 + local.set $4 end end - local.get $6 + local.get $4 i32.const 10 - local.get $6 + local.get $4 select - local.set $2 + local.set $4 loop $while-continue|2 block $while-break|2 - local.get $3 + local.get $2 local.tee $1 i32.const 1 i32.sub - local.set $3 + local.set $2 local.get $1 if local.get $0 @@ -4255,7 +4242,7 @@ end end local.tee $1 - local.get $2 + local.get $4 i32.ge_u if local.get $5 @@ -4267,7 +4254,7 @@ br $while-break|2 end local.get $1 - local.get $2 + local.get $4 local.get $5 i32.mul i32.add @@ -4280,7 +4267,7 @@ end end end - local.get $4 + local.get $3 local.get $5 i32.mul ) @@ -4327,19 +4314,19 @@ i32.sub i32.load offset=16 i32.add - local.set $2 + local.set $0 loop $while-continue|0 + local.get $0 local.get $1 - local.get $2 - i32.lt_u + i32.gt_u if local.get $1 i32.load - local.tee $0 + local.tee $2 if - local.get $0 + local.get $2 if - local.get $0 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -4361,19 +4348,19 @@ i32.const 2 i32.shl i32.add - local.set $3 + local.set $0 loop $while-continue|01 + local.get $0 local.get $2 - local.get $3 - i32.lt_u + i32.gt_u if local.get $2 i32.load - local.tee $0 + local.tee $3 if - local.get $0 + local.get $3 if - local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -4415,9 +4402,9 @@ ) (func $~lib/date/Date#toISOString (param $0 i32) (result i32) (local $1 i32) - (local $2 i32) + (local $2 i64) (local $3 i32) - (local $4 i64) + (local $4 i32) global.get $~lib/memory/__stack_pointer i32.const 112 i32.sub @@ -4481,19 +4468,19 @@ local.tee $1 i32.const 0 i32.lt_s - local.tee $2 + local.tee $3 local.get $1 i32.const 10000 i32.ge_s i32.or if global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $4 i32.const 1616 i32.const 1648 - local.get $2 + local.get $3 select - local.tee $2 + local.tee $3 i32.store local.get $1 local.get $1 @@ -4518,8 +4505,8 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=4 + local.get $4 local.get $3 - local.get $2 local.get $1 call $~lib/string/String.__concat local.tee $1 @@ -4554,22 +4541,22 @@ local.get $0 i32.load offset=4 call $~lib/number/I32#toString - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=104 global.get $~lib/memory/__stack_pointer i32.const 1872 i32.store offset=108 - local.get $2 + local.get $3 i32.const 2 call $~lib/string/String#padStart - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=96 local.get $1 - local.get $2 + local.get $3 call $~lib/string/String.__concat local.set $1 global.get $~lib/memory/__stack_pointer @@ -4588,22 +4575,22 @@ local.get $0 i32.load offset=8 call $~lib/number/I32#toString - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=84 global.get $~lib/memory/__stack_pointer i32.const 1872 i32.store offset=92 - local.get $2 + local.get $3 i32.const 2 call $~lib/string/String#padStart - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=80 local.get $1 - local.get $2 + local.get $3 call $~lib/string/String.__concat local.set $1 global.get $~lib/memory/__stack_pointer @@ -4623,10 +4610,10 @@ i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $4 + local.tee $2 i64.const 86400000 i64.const 0 - local.get $4 + local.get $2 i64.const 0 i64.lt_s select @@ -4635,23 +4622,23 @@ i32.const 3600000 i32.div_s call $~lib/number/I32#toString - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $2 - i32.store offset=68 + local.tee $4 local.get $3 + i32.store offset=68 + local.get $4 i32.const 1872 i32.store offset=76 - local.get $2 + local.get $3 i32.const 2 call $~lib/string/String#padStart - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=64 local.get $1 - local.get $2 + local.get $3 call $~lib/string/String.__concat local.set $1 global.get $~lib/memory/__stack_pointer @@ -4671,10 +4658,10 @@ i64.load offset=16 i64.const 3600000 i64.rem_s - local.tee $4 + local.tee $2 i64.const 3600000 i64.const 0 - local.get $4 + local.get $2 i64.const 0 i64.lt_s select @@ -4683,23 +4670,23 @@ i32.const 60000 i32.div_s call $~lib/number/I32#toString - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $2 - i32.store offset=52 + local.tee $4 local.get $3 + i32.store offset=52 + local.get $4 i32.const 1872 i32.store offset=60 - local.get $2 + local.get $3 i32.const 2 call $~lib/string/String#padStart - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=48 local.get $1 - local.get $2 + local.get $3 call $~lib/string/String.__concat local.set $1 global.get $~lib/memory/__stack_pointer @@ -4719,10 +4706,10 @@ i64.load offset=16 i64.const 60000 i64.rem_s - local.tee $4 + local.tee $2 i64.const 60000 i64.const 0 - local.get $4 + local.get $2 i64.const 0 i64.lt_s select @@ -4731,23 +4718,23 @@ i32.const 1000 i32.div_s call $~lib/number/I32#toString - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $2 - i32.store offset=36 + local.tee $4 local.get $3 + i32.store offset=36 + local.get $4 i32.const 1872 i32.store offset=44 - local.get $2 + local.get $3 i32.const 2 call $~lib/string/String#padStart - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=32 local.get $1 - local.get $2 + local.get $3 call $~lib/string/String.__concat local.set $1 global.get $~lib/memory/__stack_pointer @@ -4767,10 +4754,10 @@ i64.load offset=16 i64.const 1000 i64.rem_s - local.tee $4 + local.tee $2 i64.const 1000 i64.const 0 - local.get $4 + local.get $2 i64.const 0 i64.lt_s select @@ -4779,10 +4766,10 @@ call $~lib/number/I32#toString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 local.get $0 i32.store offset=12 - local.get $2 + local.get $3 i32.const 1872 i32.store offset=28 local.get $0 @@ -4818,6 +4805,7 @@ (local $5 i32) (local $6 i32) (local $7 i32) + (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 44 i32.sub @@ -4866,43 +4854,43 @@ i32.const 48 i32.const 4 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $6 i32.const 4992 i32.const 48 call $~lib/memory/memory.copy - local.get $7 + local.get $6 i32.store offset=4 local.get $0 i32.load - local.tee $3 + local.tee $5 local.get $0 i32.load offset=4 - local.tee $6 + local.tee $8 i32.const 3 i32.lt_s i32.sub - local.tee $4 + local.tee $3 i32.const 0 i32.ge_s local.set $2 local.get $0 i32.load offset=8 - local.tee $5 - local.get $6 + local.tee $7 + local.get $8 i32.const 1579 i32.add i32.load8_u - local.get $4 - local.get $4 - local.get $4 + local.get $3 + local.get $3 + local.get $3 i32.const 3 i32.sub local.get $2 select i32.const 4 i32.div_s - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.const 99 i32.sub local.get $2 @@ -4910,8 +4898,8 @@ i32.const 100 i32.div_s i32.sub - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.const 399 i32.sub local.get $2 @@ -4934,8 +4922,8 @@ i32.add local.set $4 global.get $~lib/memory/__stack_pointer - local.get $3 - local.get $3 + local.get $5 + local.get $5 i32.const 31 i32.shr_s local.tee $0 @@ -4955,7 +4943,7 @@ call $~lib/string/String#padStart local.tee $0 i32.store offset=16 - local.get $3 + local.get $5 i32.const 0 i32.lt_s if @@ -4981,12 +4969,12 @@ local.tee $2 i32.store offset=32 local.get $3 - local.get $6 + local.get $8 i32.const 1 i32.sub i32.const 2 i32.shl - local.get $7 + local.get $6 i32.add i32.load local.tee $1 @@ -4998,7 +4986,7 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.store offset=24 - local.get $5 + local.get $7 call $~lib/number/I32#toString local.set $1 global.get $~lib/memory/__stack_pointer @@ -5040,9 +5028,9 @@ global.set $~lib/memory/__stack_pointer ) (func $~lib/date/Date#toTimeString (param $0 i32) (result i32) - (local $1 i32) + (local $1 i64) (local $2 i32) - (local $3 i64) + (local $3 i32) (local $4 i32) global.get $~lib/memory/__stack_pointer i32.const 40 @@ -5060,29 +5048,29 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i64.const 0 i64.store offset=8 - local.get $1 + local.get $2 i64.const 0 i64.store offset=16 - local.get $1 + local.get $2 i64.const 0 i64.store offset=24 - local.get $1 + local.get $2 i64.const 0 i64.store offset=32 local.get $0 i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 86400000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -5091,39 +5079,39 @@ i32.const 3600000 i32.div_s call $~lib/number/I32#toString - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 - i32.store offset=32 + local.tee $3 local.get $2 + i32.store offset=32 + local.get $3 i32.const 1872 i32.store offset=36 - local.get $1 + local.get $2 i32.const 2 call $~lib/string/String#padStart - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=24 global.get $~lib/memory/__stack_pointer i32.const 3520 i32.store offset=28 - local.get $1 + local.get $2 i32.const 3520 call $~lib/string/String.__concat - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=16 local.get $0 i64.load offset=16 i64.const 3600000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 3600000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -5132,46 +5120,46 @@ i32.const 60000 i32.div_s call $~lib/number/I32#toString - local.set $2 + local.set $4 global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $2 - i32.store offset=24 + local.tee $2 local.get $4 + i32.store offset=24 + local.get $2 i32.const 1872 i32.store offset=32 - local.get $2 + local.get $4 i32.const 2 call $~lib/string/String#padStart local.set $2 global.get $~lib/memory/__stack_pointer local.get $2 i32.store offset=20 - local.get $1 + local.get $3 local.get $2 call $~lib/string/String.__concat - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 3520 i32.store offset=12 - local.get $1 + local.get $2 i32.const 3520 call $~lib/string/String.__concat - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store local.get $0 i64.load offset=16 i64.const 60000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 60000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -5182,10 +5170,10 @@ call $~lib/number/I32#toString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 local.get $0 i32.store offset=8 - local.get $2 + local.get $3 i32.const 1872 i32.store offset=16 local.get $0 @@ -5195,7 +5183,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $1 + local.get $2 local.get $0 call $~lib/string/String.__concat global.get $~lib/memory/__stack_pointer @@ -5205,14 +5193,14 @@ ) (func $~lib/date/Date#toUTCString (param $0 i32) (result i32) (local $1 i32) - (local $2 i32) + (local $2 i64) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i64) + (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 96 i32.sub @@ -5268,40 +5256,40 @@ i32.const 28 i32.const 4 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $7 i32.const 5616 i32.const 28 call $~lib/memory/memory.copy local.get $1 - local.get $4 + local.get $7 i32.store global.get $~lib/memory/__stack_pointer i32.const 48 i32.const 4 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $8 i32.const 6048 i32.const 48 call $~lib/memory/memory.copy - local.get $5 + local.get $8 i32.store offset=4 local.get $0 i32.load - local.tee $2 + local.tee $3 local.get $0 i32.load offset=4 - local.tee $6 + local.tee $4 i32.const 3 i32.lt_s i32.sub local.tee $1 i32.const 0 i32.ge_s - local.set $3 + local.set $6 local.get $0 i32.load offset=8 - local.tee $7 - local.get $6 + local.tee $5 + local.get $4 i32.const 1579 i32.add i32.load8_u @@ -5310,7 +5298,7 @@ local.get $1 i32.const 3 i32.sub - local.get $3 + local.get $6 select i32.const 4 i32.div_s @@ -5318,7 +5306,7 @@ local.get $1 i32.const 99 i32.sub - local.get $3 + local.get $6 select i32.const 100 i32.div_s @@ -5327,7 +5315,7 @@ local.get $1 i32.const 399 i32.sub - local.get $3 + local.get $6 select i32.const 400 i32.div_s @@ -5345,38 +5333,38 @@ i32.lt_s select i32.add - local.set $3 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.const 31 i32.shr_s - local.tee $1 + local.tee $9 i32.add - local.get $1 + local.get $9 i32.xor call $~lib/number/I32#toString - local.set $1 + local.set $9 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $9 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 1872 i32.store offset=12 - local.get $1 + local.get $9 i32.const 4 call $~lib/string/String#padStart local.tee $1 i32.store offset=16 - local.get $2 + local.get $3 i32.const 0 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 1616 i32.store offset=8 - local.get $2 + local.get $3 i32.const 1616 local.get $1 call $~lib/string/String.__concat @@ -5384,56 +5372,56 @@ i32.store offset=16 end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $6 i32.const 2 i32.shl - local.get $4 + local.get $7 i32.add i32.load local.tee $3 i32.store offset=80 - local.get $7 + local.get $5 call $~lib/number/I32#toString - local.set $2 + local.set $5 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $5 i32.store offset=88 global.get $~lib/memory/__stack_pointer i32.const 1872 i32.store offset=92 - local.get $2 + local.get $5 i32.const 2 call $~lib/string/String#padStart - local.set $2 + local.set $5 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $5 i32.store offset=84 local.get $3 - local.get $2 + local.get $5 call $~lib/string/String.__concat - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=72 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.const 1 i32.sub i32.const 2 i32.shl - local.get $5 + local.get $8 i32.add i32.load - local.tee $3 + local.tee $4 i32.store offset=76 - local.get $2 local.get $3 + local.get $4 call $~lib/string/String.__concat - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=68 - local.get $2 + local.get $3 local.get $1 call $~lib/string/String.__concat local.set $1 @@ -5454,10 +5442,10 @@ i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $9 + local.tee $2 i64.const 86400000 i64.const 0 - local.get $9 + local.get $2 i64.const 0 i64.lt_s select @@ -5466,23 +5454,23 @@ i32.const 3600000 i32.div_s call $~lib/number/I32#toString - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $2 - i32.store offset=60 + local.tee $4 local.get $3 + i32.store offset=60 + local.get $4 i32.const 1872 i32.store offset=68 - local.get $2 + local.get $3 i32.const 2 call $~lib/string/String#padStart - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=56 local.get $1 - local.get $2 + local.get $3 call $~lib/string/String.__concat local.set $1 global.get $~lib/memory/__stack_pointer @@ -5502,10 +5490,10 @@ i64.load offset=16 i64.const 3600000 i64.rem_s - local.tee $9 + local.tee $2 i64.const 3600000 i64.const 0 - local.get $9 + local.get $2 i64.const 0 i64.lt_s select @@ -5514,23 +5502,23 @@ i32.const 60000 i32.div_s call $~lib/number/I32#toString - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $2 - i32.store offset=44 + local.tee $4 local.get $3 + i32.store offset=44 + local.get $4 i32.const 1872 i32.store offset=52 - local.get $2 + local.get $3 i32.const 2 call $~lib/string/String#padStart - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=40 local.get $1 - local.get $2 + local.get $3 call $~lib/string/String.__concat local.set $1 global.get $~lib/memory/__stack_pointer @@ -5550,10 +5538,10 @@ i64.load offset=16 i64.const 60000 i64.rem_s - local.tee $9 + local.tee $2 i64.const 60000 i64.const 0 - local.get $9 + local.get $2 i64.const 0 i64.lt_s select @@ -5564,10 +5552,10 @@ call $~lib/number/I32#toString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 local.get $0 i32.store offset=28 - local.get $2 + local.get $3 i32.const 1872 i32.store offset=36 local.get $0 @@ -5663,16 +5651,16 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.set $4 + local.set $6 local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $7 + local.tee $4 if - local.get $4 + local.get $6 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -5687,7 +5675,7 @@ br $folding-inner1 end else - local.get $4 + local.get $6 i32.eqz if i32.const 0 @@ -5696,56 +5684,56 @@ br $folding-inner1 end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.const 2147483647 - local.get $4 + local.get $6 i32.const 2147483647 i32.ne select - local.tee $4 + local.tee $2 call $~lib/rt/__newArray local.tee $1 i32.store local.get $1 i32.load offset=4 - local.set $5 + local.set $4 loop $for-loop|0 local.get $2 - local.get $4 - i32.lt_s + local.get $3 + i32.gt_s if global.get $~lib/memory/__stack_pointer i32.const 2 i32.const 1 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $5 i32.store offset=8 + local.get $5 local.get $3 - local.get $2 i32.const 1 i32.shl local.get $0 i32.add i32.load16_u i32.store16 - local.get $2 + local.get $3 i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add - local.get $3 + local.get $5 i32.store - local.get $3 + local.get $5 if local.get $1 - local.get $3 + local.get $5 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 + local.get $3 i32.const 1 i32.add - local.set $2 + local.set $3 br $for-loop|0 end end @@ -5754,76 +5742,76 @@ global.get $~lib/memory/__stack_pointer i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $7 i32.store offset=12 loop $while-continue|1 local.get $0 local.get $1 - local.get $3 + local.get $2 call $~lib/string/String#indexOf - local.tee $5 + local.tee $8 i32.const -1 i32.xor if - local.get $5 - local.get $3 + local.get $8 + local.get $2 i32.sub - local.tee $6 + local.tee $3 i32.const 0 i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $3 i32.const 1 i32.shl - local.tee $8 + local.tee $3 i32.const 1 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $9 i32.store offset=16 - local.get $6 - local.get $3 + local.get $9 + local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.get $8 + local.get $3 call $~lib/memory/memory.copy - local.get $2 - local.get $6 + local.get $7 + local.get $9 call $~lib/array/Array<~lib/string/String>#push else global.get $~lib/memory/__stack_pointer i32.const 3456 i32.store offset=20 - local.get $2 + local.get $7 i32.const 3456 call $~lib/array/Array<~lib/string/String>#push end - local.get $9 + local.get $5 i32.const 1 i32.add - local.tee $9 + local.tee $5 i32.const 2147483647 i32.eq br_if $folding-inner2 - local.get $5 - local.get $7 + local.get $4 + local.get $8 i32.add - local.set $3 + local.set $2 br $while-continue|1 end end - local.get $3 + local.get $2 i32.eqz if - local.get $2 + local.get $7 local.get $0 call $~lib/array/Array<~lib/string/String>#push br $folding-inner2 end - local.get $4 - local.get $3 + local.get $6 + local.get $2 i32.sub local.tee $1 i32.const 0 @@ -5833,27 +5821,27 @@ local.get $1 i32.const 1 i32.shl - local.tee $4 + local.tee $1 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.store offset=4 - local.get $1 local.get $3 + local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.get $4 - call $~lib/memory/memory.copy - local.get $2 local.get $1 + call $~lib/memory/memory.copy + local.get $7 + local.get $3 call $~lib/array/Array<~lib/string/String>#push else global.get $~lib/memory/__stack_pointer i32.const 3456 i32.store offset=20 - local.get $2 + local.get $7 i32.const 3456 call $~lib/array/Array<~lib/string/String>#push end @@ -5861,7 +5849,7 @@ i32.const 24 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $7 return end global.get $~lib/memory/__stack_pointer @@ -5882,7 +5870,7 @@ i32.const 24 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $7 ) (func $~lib/date/Date.fromString (param $0 i32) (result i32) (local $1 i32) @@ -5944,20 +5932,20 @@ i32.const 3488 i32.const 0 call $~lib/string/String#indexOf - local.tee $2 + local.tee $6 i32.const -1 i32.xor if global.get $~lib/memory/__stack_pointer local.get $0 i32.const 0 - local.get $2 + local.get $6 call $~lib/string/String#substring local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $0 - local.get $2 + local.get $6 i32.const 1 i32.add i32.const 2147483647 @@ -5975,7 +5963,7 @@ i32.store offset=12 local.get $0 i32.load offset=12 - local.tee $4 + local.tee $6 i32.const 1 i32.le_s if @@ -5989,24 +5977,24 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $2 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=16 - local.get $2 + local.get $3 call $~lib/util/string/strtol - local.set $5 + local.set $3 local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $2 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.store offset=16 - local.get $2 - call $~lib/util/string/strtol - local.set $6 local.get $4 + call $~lib/util/string/strtol + local.set $4 + local.get $6 i32.const 3 i32.ge_s if @@ -6023,23 +6011,23 @@ i32.const 3552 i32.const 0 call $~lib/string/String#indexOf - local.tee $2 + local.tee $6 i32.const -1 i32.xor if local.get $0 i32.const 0 - local.get $2 + local.get $6 call $~lib/string/String#substring - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=16 - local.get $3 + local.get $2 call $~lib/util/string/strtol - local.set $3 + local.set $2 local.get $0 - local.get $2 + local.get $6 i32.const 1 i32.add i32.const 2147483647 @@ -6050,11 +6038,11 @@ i32.store offset=16 local.get $0 call $~lib/util/string/strtol - local.set $7 + local.set $5 else local.get $0 call $~lib/util/string/strtol - local.set $3 + local.set $2 end end end @@ -6066,26 +6054,26 @@ local.get $1 i32.const 1616 call $~lib/string/String#split - local.tee $0 + local.tee $6 i32.store offset=24 - local.get $0 + local.get $6 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 - local.get $1 + local.get $0 call $~lib/util/string/strtol i32.const 1 local.set $1 - local.get $0 + local.get $6 i32.load offset=12 - local.tee $4 + local.tee $0 i32.const 2 i32.ge_s if (result i32) - local.get $0 + local.get $6 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get local.set $1 @@ -6095,11 +6083,11 @@ local.get $1 call $~lib/util/string/strtol local.set $1 - local.get $4 + local.get $0 i32.const 3 i32.ge_s if (result i32) - local.get $0 + local.get $6 i32.const 2 call $~lib/array/Array<~lib/string/String>#__get local.set $0 @@ -6117,10 +6105,10 @@ local.set $0 local.get $1 local.get $0 - local.get $5 - local.get $6 local.get $3 - local.get $7 + local.get $4 + local.get $2 + local.get $5 call $~lib/date/epochMillis call $~lib/date/Date#constructor global.get $~lib/memory/__stack_pointer @@ -6130,9 +6118,9 @@ ) (func $start:std/date (local $0 i32) - (local $1 i32) + (local $1 i64) (local $2 i32) - (local $3 i64) + (local $3 i32) (local $4 i32) global.get $~lib/memory/__stack_pointer i32.const 36 @@ -6174,15 +6162,15 @@ i32.const 0 i32.const 0 call $~lib/date/epochMillis - local.tee $3 + local.tee $1 i64.const -8640000000000000 i64.lt_s - local.get $3 + local.get $1 i64.const 8640000000000000 i64.gt_s i32.or br_if $folding-inner0 - local.get $3 + local.get $1 i64.eqz i32.eqz if @@ -6201,15 +6189,15 @@ i32.const 0 i32.const 0 call $~lib/date/epochMillis - local.tee $3 + local.tee $1 i64.const -8640000000000000 i64.lt_s - local.get $3 + local.get $1 i64.const 8640000000000000 i64.gt_s i32.or br_if $folding-inner0 - local.get $3 + local.get $1 i64.eqz i32.eqz if @@ -6228,15 +6216,15 @@ i32.const 0 i32.const 0 call $~lib/date/epochMillis - local.tee $3 + local.tee $1 i64.const -8640000000000000 i64.lt_s - local.get $3 + local.get $1 i64.const 8640000000000000 i64.gt_s i32.or br_if $folding-inner0 - local.get $3 + local.get $1 i64.eqz i32.eqz if @@ -6255,15 +6243,15 @@ i32.const 0 i32.const 0 call $~lib/date/epochMillis - local.tee $3 + local.tee $1 i64.const -8640000000000000 i64.lt_s - local.get $3 + local.get $1 i64.const 8640000000000000 i64.gt_s i32.or br_if $folding-inner0 - local.get $3 + local.get $1 i64.const 631152000000 i64.ne if @@ -6282,15 +6270,15 @@ i32.const 0 i32.const 0 call $~lib/date/epochMillis - local.tee $3 + local.tee $1 i64.const -8640000000000000 i64.lt_s - local.get $3 + local.get $1 i64.const 8640000000000000 i64.gt_s i32.or br_if $folding-inner0 - local.get $3 + local.get $1 i64.const -65007360000000 i64.ne if @@ -6309,15 +6297,15 @@ i32.const 0 i32.const 1 call $~lib/date/epochMillis - local.tee $3 + local.tee $1 i64.const -8640000000000000 i64.lt_s - local.get $3 + local.get $1 i64.const 8640000000000000 i64.gt_s i32.or br_if $folding-inner0 - local.get $3 + local.get $1 i64.const 1541847600001 i64.ne if @@ -6336,15 +6324,15 @@ i32.const 0 i32.const 0 call $~lib/date/epochMillis - local.tee $3 + local.tee $1 i64.const -8640000000000000 i64.lt_s - local.get $3 + local.get $1 i64.const 8640000000000000 i64.gt_s i32.or br_if $folding-inner0 - local.get $3 + local.get $1 i64.const 8640000000000000 i64.ne if @@ -6464,10 +6452,10 @@ i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 86400000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -6489,10 +6477,10 @@ i64.load offset=16 i64.const 3600000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 3600000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -6514,10 +6502,10 @@ i64.load offset=16 i64.const 60000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 60000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -6539,10 +6527,10 @@ i64.load offset=16 i64.const 1000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 1000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -6603,10 +6591,10 @@ i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 86400000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -6628,10 +6616,10 @@ i64.load offset=16 i64.const 3600000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 3600000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -6653,10 +6641,10 @@ i64.load offset=16 i64.const 60000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 60000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -6678,10 +6666,10 @@ i64.load offset=16 i64.const 1000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 1000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -6706,10 +6694,10 @@ i64.load offset=16 i64.const 1000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 1000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -6732,10 +6720,10 @@ i64.load offset=16 i64.const 1000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 1000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -6758,10 +6746,10 @@ i64.load offset=16 i64.const 1000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 1000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -6814,10 +6802,10 @@ i64.load offset=16 i64.const 1000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 1000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -6850,10 +6838,10 @@ i64.load offset=16 i64.const 1000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 1000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -6888,10 +6876,10 @@ i64.load offset=16 i64.const 60000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 60000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -6916,10 +6904,10 @@ i64.load offset=16 i64.const 60000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 60000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -6944,10 +6932,10 @@ i64.load offset=16 i64.const 60000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 60000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -7004,10 +6992,10 @@ i64.load offset=16 i64.const 3600000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 3600000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -7032,10 +7020,10 @@ i64.load offset=16 i64.const 3600000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 3600000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -7060,10 +7048,10 @@ i64.load offset=16 i64.const 3600000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 3600000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -7120,10 +7108,10 @@ i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 86400000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -7148,10 +7136,10 @@ i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 86400000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -7176,10 +7164,10 @@ i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 86400000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -7341,10 +7329,10 @@ i64.load offset=16 i64.const 3600000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 3600000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -7366,10 +7354,10 @@ i64.load offset=16 i64.const 60000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 60000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -7391,10 +7379,10 @@ i64.load offset=16 i64.const 1000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 1000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -7548,49 +7536,49 @@ global.get $~lib/memory/__stack_pointer i64.const 1467763200000 call $~lib/date/Date#constructor - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.load - local.get $1 + local.get $0 i32.load offset=4 - local.tee $4 + local.tee $2 i32.const 3 i32.lt_s i32.sub - local.tee $0 + local.tee $3 i32.const 0 i32.ge_s - local.set $2 - local.get $1 + local.set $4 + local.get $0 i32.load offset=8 - local.get $4 + local.get $2 i32.const 1579 i32.add i32.load8_u - local.get $0 - local.get $0 - local.get $0 + local.get $3 + local.get $3 + local.get $3 i32.const 3 i32.sub - local.get $2 + local.get $4 select i32.const 4 i32.div_s - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 99 i32.sub - local.get $2 + local.get $4 select i32.const 100 i32.div_s i32.sub - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 399 i32.sub - local.get $2 + local.get $4 select i32.const 400 i32.div_s @@ -7621,49 +7609,49 @@ global.get $~lib/memory/__stack_pointer i64.const 1467763199999 call $~lib/date/Date#constructor - local.tee $1 + local.tee $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load - local.get $1 + local.get $0 i32.load offset=4 - local.tee $4 + local.tee $2 i32.const 3 i32.lt_s i32.sub - local.tee $0 + local.tee $3 i32.const 0 i32.ge_s - local.set $2 - local.get $1 + local.set $4 + local.get $0 i32.load offset=8 - local.get $4 + local.get $2 i32.const 1579 i32.add i32.load8_u - local.get $0 - local.get $0 - local.get $0 + local.get $3 + local.get $3 + local.get $3 i32.const 3 i32.sub - local.get $2 + local.get $4 select i32.const 4 i32.div_s - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 99 i32.sub - local.get $2 + local.get $4 select i32.const 100 i32.div_s i32.sub - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 399 i32.sub - local.get $2 + local.get $4 select i32.const 400 i32.div_s @@ -7694,49 +7682,49 @@ global.get $~lib/memory/__stack_pointer i64.const 1467849599999 call $~lib/date/Date#constructor - local.tee $1 + local.tee $0 i32.store offset=12 - local.get $1 + local.get $0 i32.load - local.get $1 + local.get $0 i32.load offset=4 - local.tee $4 + local.tee $2 i32.const 3 i32.lt_s i32.sub - local.tee $0 + local.tee $3 i32.const 0 i32.ge_s - local.set $2 - local.get $1 + local.set $4 + local.get $0 i32.load offset=8 - local.get $4 + local.get $2 i32.const 1579 i32.add i32.load8_u - local.get $0 - local.get $0 - local.get $0 + local.get $3 + local.get $3 + local.get $3 i32.const 3 i32.sub - local.get $2 + local.get $4 select i32.const 4 i32.div_s - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 99 i32.sub - local.get $2 + local.get $4 select i32.const 100 i32.div_s i32.sub - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 399 i32.sub - local.get $2 + local.get $4 select i32.const 400 i32.div_s @@ -7767,49 +7755,49 @@ global.get $~lib/memory/__stack_pointer i64.const 1467849600000 call $~lib/date/Date#constructor - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 + local.get $0 i32.load - local.get $1 + local.get $0 i32.load offset=4 - local.tee $4 + local.tee $2 i32.const 3 i32.lt_s i32.sub - local.tee $0 + local.tee $3 i32.const 0 i32.ge_s - local.set $2 - local.get $1 + local.set $4 + local.get $0 i32.load offset=8 - local.get $4 + local.get $2 i32.const 1579 i32.add i32.load8_u - local.get $0 - local.get $0 - local.get $0 + local.get $3 + local.get $3 + local.get $3 i32.const 3 i32.sub - local.get $2 + local.get $4 select i32.const 4 i32.div_s - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 99 i32.sub - local.get $2 + local.get $4 select i32.const 100 i32.div_s i32.sub - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 399 i32.sub - local.get $2 + local.get $4 select i32.const 400 i32.div_s @@ -7840,49 +7828,49 @@ global.get $~lib/memory/__stack_pointer i64.const 1468022400000 call $~lib/date/Date#constructor - local.tee $1 + local.tee $0 i32.store offset=20 - local.get $1 + local.get $0 i32.load - local.get $1 + local.get $0 i32.load offset=4 - local.tee $4 + local.tee $2 i32.const 3 i32.lt_s i32.sub - local.tee $0 + local.tee $3 i32.const 0 i32.ge_s - local.set $2 - local.get $1 + local.set $4 + local.get $0 i32.load offset=8 - local.get $4 + local.get $2 i32.const 1579 i32.add i32.load8_u - local.get $0 - local.get $0 - local.get $0 + local.get $3 + local.get $3 + local.get $3 i32.const 3 i32.sub - local.get $2 + local.get $4 select i32.const 4 i32.div_s - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 99 i32.sub - local.get $2 + local.get $4 select i32.const 100 i32.div_s i32.sub - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 399 i32.sub - local.get $2 + local.get $4 select i32.const 400 i32.div_s @@ -7913,49 +7901,49 @@ global.get $~lib/memory/__stack_pointer i64.const 1468022399999 call $~lib/date/Date#constructor - local.tee $1 + local.tee $0 i32.store offset=24 - local.get $1 + local.get $0 i32.load - local.get $1 + local.get $0 i32.load offset=4 - local.tee $4 + local.tee $2 i32.const 3 i32.lt_s i32.sub - local.tee $0 + local.tee $3 i32.const 0 i32.ge_s - local.set $2 - local.get $1 + local.set $4 + local.get $0 i32.load offset=8 - local.get $4 + local.get $2 i32.const 1579 i32.add i32.load8_u - local.get $0 - local.get $0 - local.get $0 + local.get $3 + local.get $3 + local.get $3 i32.const 3 i32.sub - local.get $2 + local.get $4 select i32.const 4 i32.div_s - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 99 i32.sub - local.get $2 + local.get $4 select i32.const 100 i32.div_s i32.sub - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 399 i32.sub - local.get $2 + local.get $4 select i32.const 400 i32.div_s @@ -7986,49 +7974,49 @@ global.get $~lib/memory/__stack_pointer i64.const 1468108799999 call $~lib/date/Date#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load - local.get $1 + local.get $0 i32.load offset=4 - local.tee $4 + local.tee $2 i32.const 3 i32.lt_s i32.sub - local.tee $0 + local.tee $3 i32.const 0 i32.ge_s - local.set $2 - local.get $1 + local.set $4 + local.get $0 i32.load offset=8 - local.get $4 + local.get $2 i32.const 1579 i32.add i32.load8_u - local.get $0 - local.get $0 - local.get $0 + local.get $3 + local.get $3 + local.get $3 i32.const 3 i32.sub - local.get $2 + local.get $4 select i32.const 4 i32.div_s - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 99 i32.sub - local.get $2 + local.get $4 select i32.const 100 i32.div_s i32.sub - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 399 i32.sub - local.get $2 + local.get $4 select i32.const 400 i32.div_s @@ -8059,49 +8047,49 @@ global.get $~lib/memory/__stack_pointer i64.const 1468108800000 call $~lib/date/Date#constructor - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.load - local.get $1 + local.get $0 i32.load offset=4 - local.tee $4 + local.tee $2 i32.const 3 i32.lt_s i32.sub - local.tee $0 + local.tee $3 i32.const 0 i32.ge_s - local.set $2 - local.get $1 + local.set $4 + local.get $0 i32.load offset=8 - local.get $4 + local.get $2 i32.const 1579 i32.add i32.load8_u - local.get $0 - local.get $0 - local.get $0 + local.get $3 + local.get $3 + local.get $3 i32.const 3 i32.sub - local.get $2 + local.get $4 select i32.const 4 i32.div_s - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 99 i32.sub - local.get $2 + local.get $4 select i32.const 100 i32.div_s i32.sub - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 399 i32.sub - local.get $2 + local.get $4 select i32.const 400 i32.div_s @@ -9019,7 +9007,7 @@ global.get $~lib/memory/__stack_pointer i64.const 8640000000000000 call $~lib/date/Date#constructor - local.tee $1 + local.tee $2 i32.store local.get $0 i64.load offset=16 @@ -9033,7 +9021,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i64.load offset=16 i64.const 8640000000000000 i64.ne @@ -9057,7 +9045,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.load i32.const 275760 i32.ne @@ -9081,7 +9069,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.load offset=4 i32.const 9 i32.ne @@ -9105,7 +9093,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.load offset=8 i32.const 13 i32.ne @@ -9121,10 +9109,10 @@ call $~lib/date/Date#toISOString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 local.get $0 i32.store offset=28 - local.get $2 + local.get $3 i32.const 7200 i32.store offset=32 local.get $0 @@ -9139,14 +9127,14 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 call $~lib/date/Date#toISOString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 local.get $0 i32.store offset=28 - local.get $1 + local.get $2 i32.const 7280 i32.store offset=32 local.get $0 @@ -9164,14 +9152,14 @@ global.get $~lib/memory/__stack_pointer i64.const 8639999999999999 call $~lib/date/Date#constructor - local.tee $1 + local.tee $0 i32.store offset=16 global.get $~lib/memory/__stack_pointer i64.const -8639999999999999 call $~lib/date/Date#constructor - local.tee $0 + local.tee $2 i32.store offset=12 - local.get $0 + local.get $2 i32.load i32.const -271821 i32.ne @@ -9183,7 +9171,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.load offset=4 i32.const 4 i32.ne @@ -9195,7 +9183,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.load offset=8 i32.const 20 i32.ne @@ -9207,14 +9195,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 86400000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -9230,14 +9218,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i64.load offset=16 i64.const 3600000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 3600000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -9253,14 +9241,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i64.load offset=16 i64.const 60000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 60000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -9276,14 +9264,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i64.load offset=16 i64.const 1000 i64.rem_s - local.tee $3 + local.tee $1 i64.const 1000 i64.const 0 - local.get $3 + local.get $1 i64.const 0 i64.lt_s select @@ -9299,17 +9287,17 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 call $~lib/date/Date#toISOString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $3 + local.get $0 i32.store offset=28 - local.get $2 + local.get $3 i32.const 7360 i32.store offset=32 - local.get $1 + local.get $0 i32.const 7360 call $~lib/string/String.__eq i32.eqz @@ -9321,14 +9309,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 call $~lib/date/Date#toISOString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 local.get $0 i32.store offset=28 - local.get $1 + local.get $2 i32.const 7440 i32.store offset=32 local.get $0 @@ -9585,51 +9573,51 @@ i32.const 0 i32.gt_s select - local.tee $3 + local.tee $1 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $1 + local.tee $3 local.get $1 local.get $3 - i32.gt_s + i32.lt_s select - local.tee $3 + local.tee $4 local.get $2 i32.const 0 local.get $2 i32.const 0 i32.gt_s select - local.tee $2 - local.get $1 + local.tee $1 + local.get $3 local.get $1 - local.get $2 - i32.gt_s + local.get $3 + i32.lt_s select local.tee $2 local.get $2 - local.get $3 + local.get $4 i32.gt_s select i32.const 1 i32.shl - local.set $4 - local.get $3 + local.set $1 + local.get $4 local.get $2 local.get $2 - local.get $3 + local.get $4 i32.lt_s select i32.const 1 i32.shl - local.tee $3 - local.get $4 - i32.sub local.tee $2 + local.get $1 + i32.sub + local.tee $4 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -9640,12 +9628,12 @@ return end i32.const 0 - local.get $1 + local.get $3 i32.const 1 i32.shl - local.get $3 + local.get $2 i32.eq - local.get $4 + local.get $1 select if global.get $~lib/memory/__stack_pointer @@ -9656,22 +9644,22 @@ return end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 local.get $0 - local.get $4 + local.get $1 i32.add - local.get $2 + local.get $4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 ) (func $~lib/rt/__newArray (param $0 i32) (result i32) (local $1 i32) @@ -9700,38 +9688,38 @@ local.get $0 i32.const 2 i32.shl - local.tee $3 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store i32.const 16 i32.const 5 call $~lib/rt/itcms/__new - local.tee $1 - local.get $2 + local.tee $3 + local.get $1 i32.store - local.get $2 + local.get $1 if + local.get $3 local.get $1 - local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $3 local.get $1 - local.get $2 i32.store offset=4 - local.get $1 local.get $3 + local.get $2 i32.store offset=8 - local.get $1 + local.get $3 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $3 ) (func $~lib/array/Array<~lib/string/String>#__get (param $0 i32) (param $1 i32) (result i32) global.get $~lib/memory/__stack_pointer @@ -9834,16 +9822,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $3 i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $3 local.get $1 local.get $2 select @@ -9852,7 +9840,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $0 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/map.optimized.wat b/tests/compiler/std/map.optimized.wat index 617acc088c..cf2b5dd196 100644 --- a/tests/compiler/std/map.optimized.wat +++ b/tests/compiler/std/map.optimized.wat @@ -133,7 +133,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -156,7 +156,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -166,23 +166,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -190,7 +190,7 @@ else i32.const 1760 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1248 @@ -200,7 +200,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 1764 @@ -215,27 +215,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -323,19 +323,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -360,9 +360,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -370,17 +370,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -668,10 +668,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -683,15 +683,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -721,7 +721,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -757,12 +757,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -780,11 +780,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 18416 @@ -792,14 +792,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -809,17 +809,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1297,14 +1297,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1314,17 +1314,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1340,22 +1340,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1366,11 +1366,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1475,7 +1475,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1501,32 +1501,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1542,16 +1542,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1559,7 +1559,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1567,8 +1567,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1585,7 +1585,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -1595,13 +1595,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1614,40 +1614,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -1673,26 +1673,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2418,115 +2418,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 - i32.const 2 - i32.add - local.set $1 local.get $0 i32.const 2 i32.add - local.set $4 - local.get $3 + local.set $3 + local.get $1 + i32.const 2 + i32.add + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2558,43 +2548,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3460,40 +3448,40 @@ i32.const 24 i32.const 3 call $~lib/rt/itcms/__new - local.tee $16 + local.tee $11 i32.store - local.get $16 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $3 i32.store local.get $3 if - local.get $16 + local.get $11 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $16 + local.get $11 i32.const 3 i32.store offset=4 - local.get $16 + local.get $11 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $3 i32.store offset=8 local.get $3 if - local.get $16 + local.get $11 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $16 + local.get $11 i32.const 4 i32.store offset=12 - local.get $16 + local.get $11 i32.const 0 i32.store offset=16 - local.get $16 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer @@ -3501,7 +3489,7 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $16 + local.get $11 i32.store loop $for-loop|1 local.get $4 @@ -3509,9 +3497,9 @@ i32.const 100 i32.lt_s if - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $4 i32.extend8_s @@ -3587,7 +3575,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $4 local.get $4 i32.extend8_s @@ -3595,9 +3583,9 @@ i32.const 10 i32.add call $~lib/map/Map#set - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $2 i32.const -1028477379 @@ -3673,7 +3661,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $4 call $~lib/map/Map#get local.get $4 @@ -3696,7 +3684,7 @@ br $for-loop|1 end end - local.get $16 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -3716,9 +3704,9 @@ i32.const 100 i32.lt_s if - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $4 i32.extend8_s @@ -3795,7 +3783,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $4 call $~lib/map/Map#get local.get $4 @@ -3811,7 +3799,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $4 local.get $4 i32.extend8_s @@ -3819,9 +3807,9 @@ i32.const 20 i32.add call $~lib/map/Map#set - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $2 i32.const -1028477379 @@ -3897,7 +3885,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $4 call $~lib/map/Map#get local.get $4 @@ -3920,7 +3908,7 @@ br $for-loop|3 end end - local.get $16 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -3946,13 +3934,13 @@ local.tee $2 i32.const 0 i32.store - local.get $16 + local.get $11 i32.load offset=8 - local.set $5 - local.get $16 + local.set $8 + local.get $11 i32.load offset=16 - local.tee $4 - local.set $9 + local.tee $7 + local.set $6 local.get $2 i32.const 8 i32.sub @@ -3969,21 +3957,21 @@ i32.const 16 i32.const 4 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $4 i32.store - local.get $3 + local.get $4 i32.const 0 i32.store - local.get $3 + local.get $4 i32.const 0 i32.store offset=4 - local.get $3 + local.get $4 i32.const 0 i32.store offset=8 - local.get $3 + local.get $4 i32.const 0 i32.store offset=12 - local.get $9 + local.get $6 i32.const 1073741820 i32.gt_u if @@ -3995,54 +3983,54 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $6 i32.const 8 - local.get $9 + local.get $6 i32.const 8 i32.gt_u select - local.tee $7 + local.tee $5 i32.const 0 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $3 i32.store offset=4 - local.get $10 - local.get $7 + local.get $3 + local.get $5 call $~lib/memory/memory.fill + local.get $4 local.get $3 - local.get $10 i32.store - local.get $10 + local.get $3 if + local.get $4 local.get $3 - local.get $10 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $4 local.get $3 - local.get $10 i32.store offset=4 - local.get $3 - local.get $7 + local.get $4 + local.get $5 i32.store offset=8 - local.get $3 - local.get $9 + local.get $4 + local.get $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $3 + local.get $4 i32.store loop $for-loop|0 - local.get $4 - local.get $8 + local.get $7 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 12 i32.mul - local.get $5 + local.get $8 i32.add local.tee $2 i32.load offset=8 @@ -4050,7 +4038,7 @@ i32.and i32.eqz if - local.get $3 + local.get $4 local.get $1 local.get $2 i32.load8_s @@ -4060,32 +4048,31 @@ i32.add local.set $1 end - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|0 end end - local.get $3 + local.get $4 local.get $1 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 + local.get $4 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 - local.tee $2 + local.get $4 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $11 call $~lib/map/Map#values - local.tee $9 + local.tee $15 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -4104,61 +4091,61 @@ i32.const 24 i32.const 6 call $~lib/rt/itcms/__new - local.tee $15 + local.tee $10 i32.store - local.get $15 + local.get $10 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store local.get $1 if - local.get $15 + local.get $10 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $15 + local.get $10 i32.const 3 i32.store offset=4 - local.get $15 + local.get $10 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=8 local.get $1 if - local.get $15 + local.get $10 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $15 + local.get $10 i32.const 4 i32.store offset=12 - local.get $15 + local.get $10 i32.const 0 i32.store offset=16 - local.get $15 + local.get $10 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $15 + local.get $10 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $11 + local.tee $9 i32.store offset=16 loop $for-loop|4 - local.get $2 + local.get $4 i32.load offset=12 local.get $0 i32.gt_s if local.get $0 - local.tee $1 - local.get $2 + local.tee $3 + local.get $4 i32.load offset=12 i32.ge_u if @@ -4169,21 +4156,21 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $2 + local.get $3 + local.get $4 i32.load offset=4 i32.add i32.load8_s - local.set $0 - local.get $9 - local.get $1 + local.set $2 + local.get $15 + local.get $3 call $~lib/array/Array#__get - local.set $10 - local.get $16 + local.set $8 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 - local.get $0 + local.get $2 i32.extend8_s i32.const -1028477379 i32.mul @@ -4193,24 +4180,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $0 i32.const 15 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $0 i32.const 13 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $0 i32.const 16 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.and i32.const 2 @@ -4224,7 +4211,7 @@ if local.get $5 i32.load offset=8 - local.tee $3 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -4232,13 +4219,13 @@ else local.get $5 i32.load8_u - local.get $0 + local.get $2 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $3 + local.get $0 i32.const -2 i32.and local.set $5 @@ -4258,14 +4245,14 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 - local.get $10 + local.get $8 i32.const 20 i32.sub - local.tee $4 + local.tee $1 i32.extend8_s i32.const -1028477379 i32.mul @@ -4275,24 +4262,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $0 i32.const 15 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $0 i32.const 13 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $0 i32.const 16 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.and i32.const 2 @@ -4306,7 +4293,7 @@ if local.get $5 i32.load offset=8 - local.tee $3 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -4314,13 +4301,13 @@ else local.get $5 i32.load8_u - local.get $4 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $3 + local.get $0 i32.const -2 i32.and local.set $5 @@ -4351,10 +4338,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $15 + local.get $10 i32.load - local.get $0 - local.tee $4 + local.get $2 i32.extend8_s i32.const -1028477379 i32.mul @@ -4383,8 +4369,8 @@ i32.shr_u local.get $0 i32.xor - local.tee $8 - local.get $15 + local.tee $14 + local.get $10 i32.load offset=4 i32.and i32.const 2 @@ -4398,7 +4384,7 @@ if local.get $0 i32.load offset=4 - local.tee $3 + local.tee $1 i32.const 1 i32.and if (result i32) @@ -4406,13 +4392,13 @@ else local.get $0 i32.load8_u - local.get $4 + local.get $2 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $3 + local.get $1 i32.const -2 i32.and local.set $0 @@ -4425,18 +4411,18 @@ local.get $0 if local.get $0 - local.get $4 + local.get $2 i32.store8 offset=1 else - local.get $15 + local.get $10 i32.load offset=16 - local.get $15 + local.get $10 i32.load offset=12 i32.eq if - local.get $15 + local.get $10 i32.load offset=20 - local.get $15 + local.get $10 i32.load offset=12 i32.const 3 i32.mul @@ -4444,17 +4430,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $15 + local.get $10 i32.load offset=4 else - local.get $15 + local.get $10 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $12 + local.set $7 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -4468,14 +4454,14 @@ i64.const 0 i64.store local.get $0 - local.get $12 + local.get $7 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $13 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -4483,41 +4469,41 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $13 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $1 i32.store offset=4 - local.get $15 + local.get $10 i32.load offset=8 - local.tee $14 - local.get $15 + local.tee $16 + local.get $10 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $6 - local.get $3 + local.set $12 + local.get $1 local.set $0 loop $while-continue|016 - local.get $6 - local.get $14 + local.get $12 + local.get $16 i32.ne if - local.get $14 + local.get $16 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $14 + local.get $16 i32.load8_s local.tee $5 i32.store8 local.get $0 - local.get $14 + local.get $16 i32.load8_s offset=1 i32.store8 offset=1 local.get $0 @@ -4550,11 +4536,11 @@ i32.shr_u local.get $5 i32.xor - local.get $12 + local.get $7 i32.and i32.const 2 i32.shl - local.get $13 + local.get $6 i32.add local.tee $5 i32.load @@ -4567,39 +4553,39 @@ i32.add local.set $0 end - local.get $14 + local.get $16 i32.const 8 i32.add - local.set $14 + local.set $16 br $while-continue|016 end end - local.get $15 - local.get $13 + local.get $10 + local.get $6 i32.store - local.get $13 + local.get $6 if - local.get $15 - local.get $13 + local.get $10 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $15 - local.get $12 + local.get $10 + local.get $7 i32.store offset=4 - local.get $15 - local.get $3 + local.get $10 + local.get $1 i32.store offset=8 - local.get $3 + local.get $1 if - local.get $15 - local.get $3 + local.get $10 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $15 - local.get $7 + local.get $10 + local.get $13 i32.store offset=12 - local.get $15 - local.get $15 + local.get $10 + local.get $10 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -4608,12 +4594,12 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $15 + local.get $10 i32.load offset=8 - local.tee $3 + local.tee $1 i32.store - local.get $15 - local.get $15 + local.get $10 + local.get $10 i32.load offset=16 local.tee $0 i32.const 1 @@ -4622,26 +4608,26 @@ local.get $0 i32.const 3 i32.shl - local.get $3 + local.get $1 i32.add - local.tee $3 - local.get $4 + local.tee $1 + local.get $2 i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $2 i32.store8 offset=1 - local.get $15 - local.get $15 + local.get $10 + local.get $10 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $3 - local.get $15 + local.get $1 + local.get $10 i32.load - local.get $15 + local.get $10 i32.load offset=4 - local.get $8 + local.get $14 i32.and i32.const 2 i32.shl @@ -4650,28 +4636,28 @@ i32.load i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 - local.get $10 + local.get $9 + local.get $8 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $1 + local.get $3 i32.const 1 i32.add local.set $0 br $for-loop|4 end end - local.get $15 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -4683,7 +4669,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -4703,9 +4689,9 @@ i32.const 50 i32.lt_s if - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $0 i32.extend8_s @@ -4782,7 +4768,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $0 call $~lib/map/Map#get local.get $0 @@ -4798,12 +4784,12 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $0 call $~lib/map/Map#delete - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $0 i32.extend8_s @@ -4886,7 +4872,7 @@ br $for-loop|6 end end - local.get $16 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -4906,9 +4892,9 @@ i32.const 50 i32.lt_s if - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $0 i32.extend8_s @@ -4984,7 +4970,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $0 local.get $0 i32.extend8_s @@ -4992,9 +4978,9 @@ i32.const 10 i32.add call $~lib/map/Map#set - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -5070,12 +5056,12 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $0 call $~lib/map/Map#delete - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $0 i32.extend8_s @@ -5158,7 +5144,7 @@ br $for-loop|8 end end - local.get $16 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -5170,9 +5156,9 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 call $~lib/map/Map#clear - local.get $16 + local.get $11 i32.load offset=20 if i32.const 0 @@ -5625,40 +5611,40 @@ i32.const 24 i32.const 8 call $~lib/rt/itcms/__new - local.tee $16 + local.tee $11 i32.store - local.get $16 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $3 i32.store local.get $3 if - local.get $16 + local.get $11 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $16 + local.get $11 i32.const 3 i32.store offset=4 - local.get $16 + local.get $11 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $3 i32.store offset=8 local.get $3 if - local.get $16 + local.get $11 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $16 + local.get $11 i32.const 4 i32.store offset=12 - local.get $16 + local.get $11 i32.const 0 i32.store offset=16 - local.get $16 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer @@ -5666,7 +5652,7 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $16 + local.get $11 i32.store loop $for-loop|1 local.get $4 @@ -5675,9 +5661,9 @@ i32.const 100 i32.lt_u if - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $4 i32.const 255 @@ -5754,7 +5740,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $4 local.get $4 i32.const 255 @@ -5763,9 +5749,9 @@ i32.const 10 i32.add call $~lib/map/Map#set - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $2 i32.const -1028477379 @@ -5841,7 +5827,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $4 call $~lib/map/Map#get local.get $4 @@ -5865,7 +5851,7 @@ br $for-loop|1 end end - local.get $16 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -5886,9 +5872,9 @@ i32.const 100 i32.lt_u if - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $4 i32.const 255 @@ -5966,7 +5952,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $4 call $~lib/map/Map#get local.get $4 @@ -5983,7 +5969,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $4 local.get $4 i32.const 255 @@ -5992,9 +5978,9 @@ i32.const 20 i32.add call $~lib/map/Map#set - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $2 i32.const -1028477379 @@ -6070,7 +6056,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $4 call $~lib/map/Map#get local.get $4 @@ -6094,7 +6080,7 @@ br $for-loop|3 end end - local.get $16 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -6120,13 +6106,13 @@ local.tee $2 i32.const 0 i32.store - local.get $16 + local.get $11 i32.load offset=8 - local.set $5 - local.get $16 + local.set $8 + local.get $11 i32.load offset=16 - local.tee $4 - local.set $9 + local.tee $7 + local.set $6 local.get $2 i32.const 8 i32.sub @@ -6143,21 +6129,21 @@ i32.const 16 i32.const 9 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $4 i32.store - local.get $3 + local.get $4 i32.const 0 i32.store - local.get $3 + local.get $4 i32.const 0 i32.store offset=4 - local.get $3 + local.get $4 i32.const 0 i32.store offset=8 - local.get $3 + local.get $4 i32.const 0 i32.store offset=12 - local.get $9 + local.get $6 i32.const 1073741820 i32.gt_u if @@ -6169,54 +6155,54 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $6 i32.const 8 - local.get $9 + local.get $6 i32.const 8 i32.gt_u select - local.tee $7 + local.tee $5 i32.const 0 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $3 i32.store offset=4 - local.get $10 - local.get $7 + local.get $3 + local.get $5 call $~lib/memory/memory.fill + local.get $4 local.get $3 - local.get $10 i32.store - local.get $10 + local.get $3 if + local.get $4 local.get $3 - local.get $10 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $4 local.get $3 - local.get $10 i32.store offset=4 - local.get $3 - local.get $7 + local.get $4 + local.get $5 i32.store offset=8 - local.get $3 - local.get $9 + local.get $4 + local.get $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $3 + local.get $4 i32.store loop $for-loop|0 - local.get $4 - local.get $8 + local.get $7 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 12 i32.mul - local.get $5 + local.get $8 i32.add local.tee $2 i32.load offset=8 @@ -6224,7 +6210,7 @@ i32.and i32.eqz if - local.get $3 + local.get $4 local.get $1 local.get $2 i32.load8_u @@ -6234,32 +6220,31 @@ i32.add local.set $1 end - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|0 end end - local.get $3 + local.get $4 local.get $1 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 + local.get $4 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 - local.tee $2 + local.get $4 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $11 call $~lib/map/Map#values - local.tee $9 + local.tee $15 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -6278,61 +6263,61 @@ i32.const 24 i32.const 10 call $~lib/rt/itcms/__new - local.tee $15 + local.tee $10 i32.store - local.get $15 + local.get $10 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store local.get $1 if - local.get $15 + local.get $10 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $15 + local.get $10 i32.const 3 i32.store offset=4 - local.get $15 + local.get $10 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=8 local.get $1 if - local.get $15 + local.get $10 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $15 + local.get $10 i32.const 4 i32.store offset=12 - local.get $15 + local.get $10 i32.const 0 i32.store offset=16 - local.get $15 + local.get $10 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $15 + local.get $10 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $11 + local.tee $9 i32.store offset=16 loop $for-loop|4 - local.get $2 + local.get $4 i32.load offset=12 local.get $0 i32.gt_s if local.get $0 - local.tee $1 - local.get $2 + local.tee $3 + local.get $4 i32.load offset=12 i32.ge_u if @@ -6343,21 +6328,21 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $2 + local.get $3 + local.get $4 i32.load offset=4 i32.add i32.load8_u - local.set $0 - local.get $9 - local.get $1 + local.set $2 + local.get $15 + local.get $3 call $~lib/array/Array#__get - local.set $10 - local.get $16 + local.set $8 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 - local.get $0 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761394 @@ -6366,24 +6351,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $0 i32.const 15 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $0 i32.const 13 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $0 i32.const 16 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.and i32.const 2 @@ -6397,7 +6382,7 @@ if local.get $5 i32.load offset=8 - local.tee $3 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -6405,13 +6390,13 @@ else local.get $5 i32.load8_u - local.get $0 + local.get $2 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $3 + local.get $0 i32.const -2 i32.and local.set $5 @@ -6431,14 +6416,14 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 - local.get $10 + local.get $8 i32.const 20 i32.sub - local.tee $4 + local.tee $1 i32.const 255 i32.and i32.const -1028477379 @@ -6449,24 +6434,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $0 i32.const 15 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $0 i32.const 13 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $0 i32.const 16 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.and i32.const 2 @@ -6480,7 +6465,7 @@ if local.get $5 i32.load offset=8 - local.tee $3 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -6488,13 +6473,13 @@ else local.get $5 i32.load8_u - local.get $4 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $3 + local.get $0 i32.const -2 i32.and local.set $5 @@ -6525,10 +6510,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $15 + local.get $10 i32.load - local.get $0 - local.tee $4 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761394 @@ -6556,8 +6540,8 @@ i32.shr_u local.get $0 i32.xor - local.tee $8 - local.get $15 + local.tee $14 + local.get $10 i32.load offset=4 i32.and i32.const 2 @@ -6571,7 +6555,7 @@ if local.get $0 i32.load offset=4 - local.tee $3 + local.tee $1 i32.const 1 i32.and if (result i32) @@ -6579,13 +6563,13 @@ else local.get $0 i32.load8_u - local.get $4 + local.get $2 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $3 + local.get $1 i32.const -2 i32.and local.set $0 @@ -6598,18 +6582,18 @@ local.get $0 if local.get $0 - local.get $4 + local.get $2 i32.store8 offset=1 else - local.get $15 + local.get $10 i32.load offset=16 - local.get $15 + local.get $10 i32.load offset=12 i32.eq if - local.get $15 + local.get $10 i32.load offset=20 - local.get $15 + local.get $10 i32.load offset=12 i32.const 3 i32.mul @@ -6617,17 +6601,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $15 + local.get $10 i32.load offset=4 else - local.get $15 + local.get $10 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $12 + local.set $7 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -6641,14 +6625,14 @@ i64.const 0 i64.store local.get $0 - local.get $12 + local.get $7 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $13 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -6656,41 +6640,41 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $13 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $1 i32.store offset=4 - local.get $15 + local.get $10 i32.load offset=8 - local.tee $14 - local.get $15 + local.tee $16 + local.get $10 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $6 - local.get $3 + local.set $12 + local.get $1 local.set $0 loop $while-continue|016 - local.get $6 - local.get $14 + local.get $12 + local.get $16 i32.ne if - local.get $14 + local.get $16 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $14 + local.get $16 i32.load8_u local.tee $5 i32.store8 local.get $0 - local.get $14 + local.get $16 i32.load8_u offset=1 i32.store8 offset=1 local.get $0 @@ -6722,11 +6706,11 @@ i32.shr_u local.get $5 i32.xor - local.get $12 + local.get $7 i32.and i32.const 2 i32.shl - local.get $13 + local.get $6 i32.add local.tee $5 i32.load @@ -6739,39 +6723,39 @@ i32.add local.set $0 end - local.get $14 + local.get $16 i32.const 8 i32.add - local.set $14 + local.set $16 br $while-continue|016 end end - local.get $15 - local.get $13 + local.get $10 + local.get $6 i32.store - local.get $13 + local.get $6 if - local.get $15 - local.get $13 + local.get $10 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $15 - local.get $12 + local.get $10 + local.get $7 i32.store offset=4 - local.get $15 - local.get $3 + local.get $10 + local.get $1 i32.store offset=8 - local.get $3 + local.get $1 if - local.get $15 - local.get $3 + local.get $10 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $15 - local.get $7 + local.get $10 + local.get $13 i32.store offset=12 - local.get $15 - local.get $15 + local.get $10 + local.get $10 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -6780,12 +6764,12 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $15 + local.get $10 i32.load offset=8 - local.tee $3 + local.tee $1 i32.store - local.get $15 - local.get $15 + local.get $10 + local.get $10 i32.load offset=16 local.tee $0 i32.const 1 @@ -6794,26 +6778,26 @@ local.get $0 i32.const 3 i32.shl - local.get $3 + local.get $1 i32.add - local.tee $3 - local.get $4 + local.tee $1 + local.get $2 i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $2 i32.store8 offset=1 - local.get $15 - local.get $15 + local.get $10 + local.get $10 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $3 - local.get $15 + local.get $1 + local.get $10 i32.load - local.get $15 + local.get $10 i32.load offset=4 - local.get $8 + local.get $14 i32.and i32.const 2 i32.shl @@ -6822,28 +6806,28 @@ i32.load i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 - local.get $10 + local.get $9 + local.get $8 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $1 + local.get $3 i32.const 1 i32.add local.set $0 br $for-loop|4 end end - local.get $15 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -6855,7 +6839,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -6876,9 +6860,9 @@ i32.const 50 i32.lt_u if - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $0 i32.const 255 @@ -6956,7 +6940,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $0 call $~lib/map/Map#get local.get $0 @@ -6973,12 +6957,12 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $0 call $~lib/map/Map#delete - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $0 i32.const 255 @@ -7062,7 +7046,7 @@ br $for-loop|6 end end - local.get $16 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -7083,9 +7067,9 @@ i32.const 50 i32.lt_u if - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $0 i32.const 255 @@ -7162,7 +7146,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $0 local.get $0 i32.const 255 @@ -7171,9 +7155,9 @@ i32.const 10 i32.add call $~lib/map/Map#set - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -7249,12 +7233,12 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $0 call $~lib/map/Map#delete - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $0 i32.const 255 @@ -7338,7 +7322,7 @@ br $for-loop|8 end end - local.get $16 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -7350,9 +7334,9 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 call $~lib/map/Map#clear - local.get $16 + local.get $11 i32.load offset=20 if i32.const 0 @@ -7843,40 +7827,40 @@ i32.const 24 i32.const 11 call $~lib/rt/itcms/__new - local.tee $16 + local.tee $11 i32.store - local.get $16 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $3 i32.store local.get $3 if - local.get $16 + local.get $11 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $16 + local.get $11 i32.const 3 i32.store offset=4 - local.get $16 + local.get $11 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $3 i32.store offset=8 local.get $3 if - local.get $16 + local.get $11 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $16 + local.get $11 i32.const 4 i32.store offset=12 - local.get $16 + local.get $11 i32.const 0 i32.store offset=16 - local.get $16 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer @@ -7884,7 +7868,7 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $16 + local.get $11 i32.store loop $for-loop|1 local.get $4 @@ -7892,9 +7876,9 @@ i32.const 100 i32.lt_s if - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $4 i32.extend16_s @@ -7970,7 +7954,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $4 local.get $4 i32.extend16_s @@ -7978,9 +7962,9 @@ i32.const 10 i32.add call $~lib/map/Map#set - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $2 i32.const -1028477379 @@ -8056,7 +8040,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $4 call $~lib/map/Map#get local.get $4 @@ -8079,7 +8063,7 @@ br $for-loop|1 end end - local.get $16 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -8099,9 +8083,9 @@ i32.const 100 i32.lt_s if - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $4 i32.extend16_s @@ -8178,7 +8162,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $4 call $~lib/map/Map#get local.get $4 @@ -8194,7 +8178,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $4 local.get $4 i32.extend16_s @@ -8202,9 +8186,9 @@ i32.const 20 i32.add call $~lib/map/Map#set - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $2 i32.const -1028477379 @@ -8280,7 +8264,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $4 call $~lib/map/Map#get local.get $4 @@ -8303,7 +8287,7 @@ br $for-loop|3 end end - local.get $16 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -8329,13 +8313,13 @@ local.tee $2 i32.const 0 i32.store - local.get $16 + local.get $11 i32.load offset=8 - local.set $5 - local.get $16 + local.set $8 + local.get $11 i32.load offset=16 - local.tee $4 - local.set $9 + local.tee $7 + local.set $6 local.get $2 i32.const 8 i32.sub @@ -8352,21 +8336,21 @@ i32.const 16 i32.const 12 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $4 i32.store - local.get $3 + local.get $4 i32.const 0 i32.store - local.get $3 + local.get $4 i32.const 0 i32.store offset=4 - local.get $3 + local.get $4 i32.const 0 i32.store offset=8 - local.get $3 + local.get $4 i32.const 0 i32.store offset=12 - local.get $9 + local.get $6 i32.const 536870910 i32.gt_u if @@ -8378,56 +8362,56 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $6 i32.const 8 - local.get $9 + local.get $6 i32.const 8 i32.gt_u select i32.const 1 i32.shl - local.tee $7 + local.tee $5 i32.const 0 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $3 i32.store offset=4 - local.get $10 - local.get $7 + local.get $3 + local.get $5 call $~lib/memory/memory.fill + local.get $4 local.get $3 - local.get $10 i32.store - local.get $10 + local.get $3 if + local.get $4 local.get $3 - local.get $10 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $4 local.get $3 - local.get $10 i32.store offset=4 - local.get $3 - local.get $7 + local.get $4 + local.get $5 i32.store offset=8 - local.get $3 - local.get $9 + local.get $4 + local.get $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $3 + local.get $4 i32.store loop $for-loop|0 - local.get $4 - local.get $8 + local.get $7 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 12 i32.mul - local.get $5 + local.get $8 i32.add local.tee $2 i32.load offset=8 @@ -8435,7 +8419,7 @@ i32.and i32.eqz if - local.get $3 + local.get $4 local.get $1 local.get $2 i32.load16_s @@ -8445,32 +8429,31 @@ i32.add local.set $1 end - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|0 end end - local.get $3 + local.get $4 local.get $1 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 + local.get $4 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 - local.tee $2 + local.get $4 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $11 call $~lib/map/Map#values - local.tee $9 + local.tee $15 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -8489,61 +8472,61 @@ i32.const 24 i32.const 13 call $~lib/rt/itcms/__new - local.tee $15 + local.tee $10 i32.store - local.get $15 + local.get $10 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store local.get $1 if - local.get $15 + local.get $10 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $15 + local.get $10 i32.const 3 i32.store offset=4 - local.get $15 + local.get $10 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=8 local.get $1 if - local.get $15 + local.get $10 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $15 + local.get $10 i32.const 4 i32.store offset=12 - local.get $15 + local.get $10 i32.const 0 i32.store offset=16 - local.get $15 + local.get $10 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $15 + local.get $10 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $11 + local.tee $9 i32.store offset=16 loop $for-loop|4 - local.get $2 + local.get $4 i32.load offset=12 local.get $0 i32.gt_s if local.get $0 - local.tee $1 - local.get $2 + local.tee $3 + local.get $4 i32.load offset=12 i32.ge_u if @@ -8554,23 +8537,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 i32.load offset=4 - local.get $1 + local.get $3 i32.const 1 i32.shl i32.add i32.load16_s - local.set $0 - local.get $9 - local.get $1 + local.set $2 + local.get $15 + local.get $3 call $~lib/array/Array#__get - local.set $10 - local.get $16 + local.set $8 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 - local.get $0 + local.get $2 i32.extend16_s i32.const -1028477379 i32.mul @@ -8580,24 +8563,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $0 i32.const 15 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $0 i32.const 13 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $0 i32.const 16 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.and i32.const 2 @@ -8611,7 +8594,7 @@ if local.get $5 i32.load offset=8 - local.tee $3 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -8619,13 +8602,13 @@ else local.get $5 i32.load16_u - local.get $0 + local.get $2 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $3 + local.get $0 i32.const -2 i32.and local.set $5 @@ -8645,14 +8628,14 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 - local.get $10 + local.get $8 i32.const 20 i32.sub - local.tee $4 + local.tee $1 i32.extend16_s i32.const -1028477379 i32.mul @@ -8662,24 +8645,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $0 i32.const 15 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $0 i32.const 13 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $0 i32.const 16 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.and i32.const 2 @@ -8693,7 +8676,7 @@ if local.get $5 i32.load offset=8 - local.tee $3 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -8701,13 +8684,13 @@ else local.get $5 i32.load16_u - local.get $4 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $3 + local.get $0 i32.const -2 i32.and local.set $5 @@ -8738,10 +8721,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $15 + local.get $10 i32.load - local.get $0 - local.tee $4 + local.get $2 i32.extend16_s i32.const -1028477379 i32.mul @@ -8770,8 +8752,8 @@ i32.shr_u local.get $0 i32.xor - local.tee $8 - local.get $15 + local.tee $14 + local.get $10 i32.load offset=4 i32.and i32.const 2 @@ -8785,7 +8767,7 @@ if local.get $0 i32.load offset=4 - local.tee $3 + local.tee $1 i32.const 1 i32.and if (result i32) @@ -8793,13 +8775,13 @@ else local.get $0 i32.load16_u - local.get $4 + local.get $2 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $3 + local.get $1 i32.const -2 i32.and local.set $0 @@ -8812,18 +8794,18 @@ local.get $0 if local.get $0 - local.get $4 + local.get $2 i32.store16 offset=2 else - local.get $15 + local.get $10 i32.load offset=16 - local.get $15 + local.get $10 i32.load offset=12 i32.eq if - local.get $15 + local.get $10 i32.load offset=20 - local.get $15 + local.get $10 i32.load offset=12 i32.const 3 i32.mul @@ -8831,17 +8813,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $15 + local.get $10 i32.load offset=4 else - local.get $15 + local.get $10 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $12 + local.set $7 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -8855,14 +8837,14 @@ i64.const 0 i64.store local.get $0 - local.get $12 + local.get $7 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $13 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -8870,41 +8852,41 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $13 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $1 i32.store offset=4 - local.get $15 + local.get $10 i32.load offset=8 - local.tee $14 - local.get $15 + local.tee $16 + local.get $10 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $6 - local.get $3 + local.set $12 + local.get $1 local.set $0 loop $while-continue|016 - local.get $6 - local.get $14 + local.get $12 + local.get $16 i32.ne if - local.get $14 + local.get $16 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $14 + local.get $16 i32.load16_s local.tee $5 i32.store16 local.get $0 - local.get $14 + local.get $16 i32.load16_s offset=2 i32.store16 offset=2 local.get $0 @@ -8937,11 +8919,11 @@ i32.shr_u local.get $5 i32.xor - local.get $12 + local.get $7 i32.and i32.const 2 i32.shl - local.get $13 + local.get $6 i32.add local.tee $5 i32.load @@ -8954,39 +8936,39 @@ i32.add local.set $0 end - local.get $14 + local.get $16 i32.const 8 i32.add - local.set $14 + local.set $16 br $while-continue|016 end end - local.get $15 - local.get $13 + local.get $10 + local.get $6 i32.store - local.get $13 + local.get $6 if - local.get $15 - local.get $13 + local.get $10 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $15 - local.get $12 + local.get $10 + local.get $7 i32.store offset=4 - local.get $15 - local.get $3 + local.get $10 + local.get $1 i32.store offset=8 - local.get $3 + local.get $1 if - local.get $15 - local.get $3 + local.get $10 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $15 - local.get $7 + local.get $10 + local.get $13 i32.store offset=12 - local.get $15 - local.get $15 + local.get $10 + local.get $10 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -8995,12 +8977,12 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $15 + local.get $10 i32.load offset=8 - local.tee $3 + local.tee $1 i32.store - local.get $15 - local.get $15 + local.get $10 + local.get $10 i32.load offset=16 local.tee $0 i32.const 1 @@ -9009,26 +8991,26 @@ local.get $0 i32.const 3 i32.shl - local.get $3 + local.get $1 i32.add - local.tee $3 - local.get $4 + local.tee $1 + local.get $2 i32.store16 - local.get $3 - local.get $4 + local.get $1 + local.get $2 i32.store16 offset=2 - local.get $15 - local.get $15 + local.get $10 + local.get $10 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $3 - local.get $15 + local.get $1 + local.get $10 i32.load - local.get $15 + local.get $10 i32.load offset=4 - local.get $8 + local.get $14 i32.and i32.const 2 i32.shl @@ -9037,28 +9019,28 @@ i32.load i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 - local.get $10 + local.get $9 + local.get $8 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $1 + local.get $3 i32.const 1 i32.add local.set $0 br $for-loop|4 end end - local.get $15 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -9070,7 +9052,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -9090,9 +9072,9 @@ i32.const 50 i32.lt_s if - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $0 i32.extend16_s @@ -9169,7 +9151,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $0 call $~lib/map/Map#get local.get $0 @@ -9185,12 +9167,12 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $0 call $~lib/map/Map#delete - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $0 i32.extend16_s @@ -9273,7 +9255,7 @@ br $for-loop|6 end end - local.get $16 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -9293,9 +9275,9 @@ i32.const 50 i32.lt_s if - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $0 i32.extend16_s @@ -9371,7 +9353,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $0 local.get $0 i32.extend16_s @@ -9379,9 +9361,9 @@ i32.const 10 i32.add call $~lib/map/Map#set - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -9457,12 +9439,12 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $0 call $~lib/map/Map#delete - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $0 i32.extend16_s @@ -9545,7 +9527,7 @@ br $for-loop|8 end end - local.get $16 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -9557,9 +9539,9 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 call $~lib/map/Map#clear - local.get $16 + local.get $11 i32.load offset=20 if i32.const 0 @@ -10012,40 +9994,40 @@ i32.const 24 i32.const 14 call $~lib/rt/itcms/__new - local.tee $16 + local.tee $11 i32.store - local.get $16 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $3 i32.store local.get $3 if - local.get $16 + local.get $11 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $16 + local.get $11 i32.const 3 i32.store offset=4 - local.get $16 + local.get $11 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $3 i32.store offset=8 local.get $3 if - local.get $16 + local.get $11 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $16 + local.get $11 i32.const 4 i32.store offset=12 - local.get $16 + local.get $11 i32.const 0 i32.store offset=16 - local.get $16 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer @@ -10053,7 +10035,7 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $16 + local.get $11 i32.store loop $for-loop|1 local.get $4 @@ -10062,9 +10044,9 @@ i32.const 100 i32.lt_u if - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $4 i32.const 65535 @@ -10141,7 +10123,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $4 local.get $4 i32.const 65535 @@ -10150,9 +10132,9 @@ i32.const 10 i32.add call $~lib/map/Map#set - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $2 i32.const -1028477379 @@ -10228,7 +10210,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $4 call $~lib/map/Map#get local.get $4 @@ -10252,7 +10234,7 @@ br $for-loop|1 end end - local.get $16 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -10273,9 +10255,9 @@ i32.const 100 i32.lt_u if - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $4 i32.const 65535 @@ -10353,7 +10335,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $4 call $~lib/map/Map#get local.get $4 @@ -10370,7 +10352,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $4 local.get $4 i32.const 65535 @@ -10379,9 +10361,9 @@ i32.const 20 i32.add call $~lib/map/Map#set - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $2 i32.const -1028477379 @@ -10457,7 +10439,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $4 call $~lib/map/Map#get local.get $4 @@ -10481,7 +10463,7 @@ br $for-loop|3 end end - local.get $16 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -10507,13 +10489,13 @@ local.tee $2 i32.const 0 i32.store - local.get $16 + local.get $11 i32.load offset=8 - local.set $5 - local.get $16 + local.set $8 + local.get $11 i32.load offset=16 - local.tee $4 - local.set $9 + local.tee $7 + local.set $6 local.get $2 i32.const 8 i32.sub @@ -10530,21 +10512,21 @@ i32.const 16 i32.const 15 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $4 i32.store - local.get $3 + local.get $4 i32.const 0 i32.store - local.get $3 + local.get $4 i32.const 0 i32.store offset=4 - local.get $3 + local.get $4 i32.const 0 i32.store offset=8 - local.get $3 + local.get $4 i32.const 0 i32.store offset=12 - local.get $9 + local.get $6 i32.const 536870910 i32.gt_u if @@ -10556,56 +10538,56 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $6 i32.const 8 - local.get $9 + local.get $6 i32.const 8 i32.gt_u select i32.const 1 i32.shl - local.tee $7 + local.tee $5 i32.const 0 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $3 i32.store offset=4 - local.get $10 - local.get $7 + local.get $3 + local.get $5 call $~lib/memory/memory.fill + local.get $4 local.get $3 - local.get $10 i32.store - local.get $10 + local.get $3 if + local.get $4 local.get $3 - local.get $10 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $4 local.get $3 - local.get $10 i32.store offset=4 - local.get $3 - local.get $7 + local.get $4 + local.get $5 i32.store offset=8 - local.get $3 - local.get $9 + local.get $4 + local.get $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $3 + local.get $4 i32.store loop $for-loop|0 - local.get $4 - local.get $8 + local.get $7 + local.get $10 i32.gt_s if - local.get $8 + local.get $10 i32.const 12 i32.mul - local.get $5 + local.get $8 i32.add local.tee $2 i32.load offset=8 @@ -10613,7 +10595,7 @@ i32.and i32.eqz if - local.get $3 + local.get $4 local.get $1 local.get $2 i32.load16_u @@ -10623,32 +10605,31 @@ i32.add local.set $1 end - local.get $8 + local.get $10 i32.const 1 i32.add - local.set $8 + local.set $10 br $for-loop|0 end end - local.get $3 + local.get $4 local.get $1 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 + local.get $4 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 - local.tee $2 + local.get $4 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $16 + local.get $11 call $~lib/map/Map#values - local.tee $9 + local.tee $15 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -10667,61 +10648,61 @@ i32.const 24 i32.const 16 call $~lib/rt/itcms/__new - local.tee $15 + local.tee $10 i32.store - local.get $15 + local.get $10 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store local.get $1 if - local.get $15 + local.get $10 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $15 + local.get $10 i32.const 3 i32.store offset=4 - local.get $15 + local.get $10 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=8 local.get $1 if - local.get $15 + local.get $10 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $15 + local.get $10 i32.const 4 i32.store offset=12 - local.get $15 + local.get $10 i32.const 0 i32.store offset=16 - local.get $15 + local.get $10 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $15 + local.get $10 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $11 + local.tee $9 i32.store offset=16 loop $for-loop|4 - local.get $2 + local.get $4 i32.load offset=12 local.get $0 i32.gt_s if local.get $0 - local.tee $1 - local.get $2 + local.tee $3 + local.get $4 i32.load offset=12 i32.ge_u if @@ -10732,23 +10713,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 i32.load offset=4 - local.get $1 + local.get $3 i32.const 1 i32.shl i32.add i32.load16_u - local.set $0 - local.get $9 - local.get $1 + local.set $2 + local.get $15 + local.get $3 call $~lib/array/Array#__get - local.set $10 - local.get $16 + local.set $8 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 - local.get $0 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761395 @@ -10757,24 +10738,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $0 i32.const 15 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $0 i32.const 13 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $0 i32.const 16 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.and i32.const 2 @@ -10788,7 +10769,7 @@ if local.get $5 i32.load offset=8 - local.tee $3 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -10796,13 +10777,13 @@ else local.get $5 i32.load16_u - local.get $0 + local.get $2 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $3 + local.get $0 i32.const -2 i32.and local.set $5 @@ -10822,14 +10803,14 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 - local.get $10 + local.get $8 i32.const 20 i32.sub - local.tee $4 + local.tee $1 i32.const 65535 i32.and i32.const -1028477379 @@ -10840,24 +10821,24 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $0 i32.const 15 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $0 i32.const 13 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $0 i32.const 16 i32.shr_u - local.get $3 + local.get $0 i32.xor i32.and i32.const 2 @@ -10871,7 +10852,7 @@ if local.get $5 i32.load offset=8 - local.tee $3 + local.tee $0 i32.const 1 i32.and if (result i32) @@ -10879,13 +10860,13 @@ else local.get $5 i32.load16_u - local.get $4 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $3 + local.get $0 i32.const -2 i32.and local.set $5 @@ -10916,10 +10897,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $15 + local.get $10 i32.load - local.get $0 - local.tee $4 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761395 @@ -10947,8 +10927,8 @@ i32.shr_u local.get $0 i32.xor - local.tee $8 - local.get $15 + local.tee $14 + local.get $10 i32.load offset=4 i32.and i32.const 2 @@ -10962,7 +10942,7 @@ if local.get $0 i32.load offset=4 - local.tee $3 + local.tee $1 i32.const 1 i32.and if (result i32) @@ -10970,13 +10950,13 @@ else local.get $0 i32.load16_u - local.get $4 + local.get $2 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $3 + local.get $1 i32.const -2 i32.and local.set $0 @@ -10989,18 +10969,18 @@ local.get $0 if local.get $0 - local.get $4 + local.get $2 i32.store16 offset=2 else - local.get $15 + local.get $10 i32.load offset=16 - local.get $15 + local.get $10 i32.load offset=12 i32.eq if - local.get $15 + local.get $10 i32.load offset=20 - local.get $15 + local.get $10 i32.load offset=12 i32.const 3 i32.mul @@ -11008,17 +10988,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $15 + local.get $10 i32.load offset=4 else - local.get $15 + local.get $10 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $12 + local.set $7 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -11032,14 +11012,14 @@ i64.const 0 i64.store local.get $0 - local.get $12 + local.get $7 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $13 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -11047,41 +11027,41 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $13 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $1 i32.store offset=4 - local.get $15 + local.get $10 i32.load offset=8 - local.tee $14 - local.get $15 + local.tee $16 + local.get $10 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $6 - local.get $3 + local.set $12 + local.get $1 local.set $0 loop $while-continue|016 - local.get $6 - local.get $14 + local.get $12 + local.get $16 i32.ne if - local.get $14 + local.get $16 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $14 + local.get $16 i32.load16_u local.tee $5 i32.store16 local.get $0 - local.get $14 + local.get $16 i32.load16_u offset=2 i32.store16 offset=2 local.get $0 @@ -11113,11 +11093,11 @@ i32.shr_u local.get $5 i32.xor - local.get $12 + local.get $7 i32.and i32.const 2 i32.shl - local.get $13 + local.get $6 i32.add local.tee $5 i32.load @@ -11130,39 +11110,39 @@ i32.add local.set $0 end - local.get $14 + local.get $16 i32.const 8 i32.add - local.set $14 + local.set $16 br $while-continue|016 end end - local.get $15 - local.get $13 + local.get $10 + local.get $6 i32.store - local.get $13 + local.get $6 if - local.get $15 - local.get $13 + local.get $10 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $15 - local.get $12 + local.get $10 + local.get $7 i32.store offset=4 - local.get $15 - local.get $3 + local.get $10 + local.get $1 i32.store offset=8 - local.get $3 + local.get $1 if - local.get $15 - local.get $3 + local.get $10 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $15 - local.get $7 + local.get $10 + local.get $13 i32.store offset=12 - local.get $15 - local.get $15 + local.get $10 + local.get $10 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -11171,12 +11151,12 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $15 + local.get $10 i32.load offset=8 - local.tee $3 + local.tee $1 i32.store - local.get $15 - local.get $15 + local.get $10 + local.get $10 i32.load offset=16 local.tee $0 i32.const 1 @@ -11185,26 +11165,26 @@ local.get $0 i32.const 3 i32.shl - local.get $3 + local.get $1 i32.add - local.tee $3 - local.get $4 + local.tee $1 + local.get $2 i32.store16 - local.get $3 - local.get $4 + local.get $1 + local.get $2 i32.store16 offset=2 - local.get $15 - local.get $15 + local.get $10 + local.get $10 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $3 - local.get $15 + local.get $1 + local.get $10 i32.load - local.get $15 + local.get $10 i32.load offset=4 - local.get $8 + local.get $14 i32.and i32.const 2 i32.shl @@ -11213,28 +11193,28 @@ i32.load i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 - local.get $10 + local.get $9 + local.get $8 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $1 + local.get $3 i32.const 1 i32.add local.set $0 br $for-loop|4 end end - local.get $15 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -11246,7 +11226,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -11267,9 +11247,9 @@ i32.const 50 i32.lt_u if - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $0 i32.const 65535 @@ -11347,7 +11327,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $0 call $~lib/map/Map#get local.get $0 @@ -11364,12 +11344,12 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $0 call $~lib/map/Map#delete - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $0 i32.const 65535 @@ -11453,7 +11433,7 @@ br $for-loop|6 end end - local.get $16 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -11474,9 +11454,9 @@ i32.const 50 i32.lt_u if - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $0 i32.const 65535 @@ -11553,7 +11533,7 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $0 local.get $0 i32.const 65535 @@ -11562,9 +11542,9 @@ i32.const 10 i32.add call $~lib/map/Map#set - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -11640,12 +11620,12 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 local.get $0 call $~lib/map/Map#delete - local.get $16 + local.get $11 i32.load - local.get $16 + local.get $11 i32.load offset=4 local.get $0 i32.const 65535 @@ -11729,7 +11709,7 @@ br $for-loop|8 end end - local.get $16 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -11741,9 +11721,9 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $11 call $~lib/map/Map#clear - local.get $16 + local.get $11 i32.load offset=20 if i32.const 0 @@ -12002,16 +11982,16 @@ i32.store offset=16 local.get $1 call $~lib/map/Map#constructor - local.tee $1 + local.tee $4 i32.store loop $for-loop|0 local.get $0 i32.const 100 i32.lt_s if - local.get $1 + local.get $4 i32.load - local.get $1 + local.get $4 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -12022,36 +12002,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $1 i32.const 15 i32.shr_u - local.get $3 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $1 i32.const 13 i32.shr_u - local.get $3 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $1 i32.const 16 i32.shr_u - local.get $3 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $1 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $3 + local.get $1 if - local.get $3 + local.get $1 i32.load offset=8 local.tee $5 i32.const 1 @@ -12060,7 +12040,7 @@ i32.const 0 else local.get $0 - local.get $3 + local.get $1 i32.load i32.eq end @@ -12068,14 +12048,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $1 br $while-continue|0 end end i32.const 0 - local.set $3 + local.set $1 end - local.get $3 + local.get $1 if i32.const 0 i32.const 1568 @@ -12084,15 +12064,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $4 local.get $0 local.get $0 i32.const 10 i32.add call $~lib/map/Map#set - local.get $1 + local.get $4 i32.load - local.get $1 + local.get $4 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -12103,36 +12083,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $1 i32.const 15 i32.shr_u - local.get $3 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $1 i32.const 13 i32.shr_u - local.get $3 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $1 i32.const 16 i32.shr_u - local.get $3 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $1 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $3 + local.get $1 if - local.get $3 + local.get $1 i32.load offset=8 local.tee $5 i32.const 1 @@ -12141,7 +12121,7 @@ i32.const 0 else local.get $0 - local.get $3 + local.get $1 i32.load i32.eq end @@ -12149,14 +12129,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $1 br $while-continue|02 end end i32.const 0 - local.set $3 + local.set $1 end - local.get $3 + local.get $1 i32.eqz if i32.const 0 @@ -12166,7 +12146,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $4 local.get $0 call $~lib/map/Map#get local.get $0 @@ -12188,7 +12168,7 @@ br $for-loop|0 end end - local.get $1 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -12207,9 +12187,9 @@ i32.const 100 i32.lt_s if - local.get $1 + local.get $4 i32.load - local.get $1 + local.get $4 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -12220,36 +12200,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $1 i32.const 15 i32.shr_u - local.get $3 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $1 i32.const 13 i32.shr_u - local.get $3 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $1 i32.const 16 i32.shr_u - local.get $3 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $1 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $3 + local.get $1 if - local.get $3 + local.get $1 i32.load offset=8 local.tee $5 i32.const 1 @@ -12258,7 +12238,7 @@ i32.const 0 else local.get $0 - local.get $3 + local.get $1 i32.load i32.eq end @@ -12266,14 +12246,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $1 br $while-continue|05 end end i32.const 0 - local.set $3 + local.set $1 end - local.get $3 + local.get $1 i32.eqz if i32.const 0 @@ -12283,7 +12263,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $4 local.get $0 call $~lib/map/Map#get local.get $0 @@ -12298,15 +12278,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $4 local.get $0 local.get $0 i32.const 20 i32.add call $~lib/map/Map#set - local.get $1 + local.get $4 i32.load - local.get $1 + local.get $4 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -12317,36 +12297,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $1 i32.const 15 i32.shr_u - local.get $3 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $1 i32.const 13 i32.shr_u - local.get $3 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $1 i32.const 16 i32.shr_u - local.get $3 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $1 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $3 + local.get $1 if - local.get $3 + local.get $1 i32.load offset=8 local.tee $5 i32.const 1 @@ -12355,7 +12335,7 @@ i32.const 0 else local.get $0 - local.get $3 + local.get $1 i32.load i32.eq end @@ -12363,14 +12343,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $1 br $while-continue|08 end end i32.const 0 - local.set $3 + local.set $1 end - local.get $3 + local.get $1 i32.eqz if i32.const 0 @@ -12380,7 +12360,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $4 local.get $0 call $~lib/map/Map#get local.get $0 @@ -12402,7 +12382,7 @@ br $for-loop|1 end end - local.get $1 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -12415,10 +12395,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i32.const 0 local.set $0 - local.get $3 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -12427,25 +12407,25 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i32.const 0 i32.store - local.get $1 + local.get $4 i32.load offset=8 local.set $6 - local.get $3 local.get $1 + local.get $4 i32.load offset=16 - local.tee $7 + local.tee $1 call $~lib/array/Array#constructor - local.tee $3 + local.tee $7 i32.store loop $for-loop|01 - local.get $4 - local.get $7 - i32.lt_s + local.get $1 + local.get $2 + i32.gt_s if - local.get $4 + local.get $2 i32.const 12 i32.mul local.get $6 @@ -12456,7 +12436,7 @@ i32.and i32.eqz if - local.get $3 + local.get $7 local.get $0 local.get $8 i32.load @@ -12466,31 +12446,31 @@ i32.add local.set $0 end - local.get $4 + local.get $2 i32.const 1 i32.add - local.set $4 + local.set $2 br $for-loop|01 end end - local.get $3 + local.get $7 local.get $0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 + local.get $7 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $4 call $~lib/map/Map#values - local.tee $8 + local.tee $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor @@ -12501,24 +12481,24 @@ local.tee $6 i32.store offset=16 loop $for-loop|2 - local.get $3 + local.get $7 i32.load offset=12 - local.get $2 + local.get $3 i32.gt_s if + local.get $7 local.get $3 - local.get $2 call $~lib/array/Array#__get - local.set $0 - local.get $8 - local.get $2 + local.set $8 + local.get $0 + local.get $3 call $~lib/array/Array#__get - local.set $7 - local.get $1 + local.set $9 + local.get $4 i32.load - local.get $1 + local.get $4 i32.load offset=4 - local.get $0 + local.get $8 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12527,60 +12507,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $1 i32.const 15 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $1 i32.const 13 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $1 i32.const 16 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $2 block $__inlined_func$~lib/map/Map#find10 loop $while-continue|011 - local.get $4 + local.get $2 if - local.get $4 + local.get $2 i32.load offset=8 - local.tee $9 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 - local.get $4 + local.get $8 + local.get $2 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $9 + local.get $1 i32.const -2 i32.and - local.set $4 + local.set $2 br $while-continue|011 end end i32.const 0 - local.set $4 + local.set $2 end - local.get $4 + local.get $2 i32.eqz if i32.const 0 @@ -12590,14 +12570,14 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $4 i32.load - local.get $1 + local.get $4 i32.load offset=4 - local.get $7 + local.get $9 i32.const 20 i32.sub - local.tee $9 + local.tee $10 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12606,60 +12586,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $1 i32.const 15 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $1 i32.const 13 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $1 i32.const 16 i32.shr_u - local.get $4 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $2 block $__inlined_func$~lib/map/Map#find13 loop $while-continue|014 - local.get $4 + local.get $2 if - local.get $4 + local.get $2 i32.load offset=8 - local.tee $10 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $9 - local.get $4 + local.get $10 + local.get $2 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $10 + local.get $1 i32.const -2 i32.and - local.set $4 + local.set $2 br $while-continue|014 end end i32.const 0 - local.set $4 + local.set $2 end - local.get $4 + local.get $2 i32.eqz if i32.const 0 @@ -12670,20 +12650,20 @@ unreachable end local.get $5 - local.get $0 - local.get $0 + local.get $8 + local.get $8 call $~lib/map/Map#set local.get $6 - local.get $7 + local.get $9 i32.const 20 i32.sub - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 call $~lib/map/Map#set - local.get $2 + local.get $3 i32.const 1 i32.add - local.set $2 + local.set $3 br $for-loop|2 end end @@ -12712,17 +12692,17 @@ unreachable end i32.const 0 - local.set $2 + local.set $3 loop $for-loop|3 - local.get $2 + local.get $3 i32.const 50 i32.lt_s if - local.get $1 + local.get $4 i32.load - local.get $1 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12762,19 +12742,19 @@ if local.get $0 i32.load offset=8 - local.tee $3 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find16 - local.get $3 + local.get $1 i32.const -2 i32.and local.set $0 @@ -12794,10 +12774,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $2 + local.get $4 + local.get $3 call $~lib/map/Map#get - local.get $2 + local.get $3 i32.const 20 i32.add i32.ne @@ -12809,14 +12789,14 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $2 + local.get $4 + local.get $3 call $~lib/map/Map#delete - local.get $1 + local.get $4 i32.load - local.get $1 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12856,19 +12836,19 @@ if local.get $0 i32.load offset=8 - local.tee $3 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find19 - local.get $3 + local.get $1 i32.const -2 i32.and local.set $0 @@ -12887,14 +12867,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 1 i32.add - local.set $2 + local.set $3 br $for-loop|3 end end - local.get $1 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -12907,17 +12887,17 @@ unreachable end i32.const 0 - local.set $2 + local.set $3 loop $for-loop|4 - local.get $2 + local.get $3 i32.const 50 i32.lt_s if - local.get $1 + local.get $4 i32.load - local.get $1 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12957,19 +12937,19 @@ if local.get $0 i32.load offset=8 - local.tee $3 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find22 - local.get $3 + local.get $1 i32.const -2 i32.and local.set $0 @@ -12988,17 +12968,17 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $2 - local.get $2 + local.get $4 + local.get $3 + local.get $3 i32.const 10 i32.add call $~lib/map/Map#set - local.get $1 + local.get $4 i32.load - local.get $1 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13038,19 +13018,19 @@ if local.get $0 i32.load offset=8 - local.tee $3 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find25 - local.get $3 + local.get $1 i32.const -2 i32.and local.set $0 @@ -13070,14 +13050,14 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $2 + local.get $4 + local.get $3 call $~lib/map/Map#delete - local.get $1 + local.get $4 i32.load - local.get $1 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13117,19 +13097,19 @@ if local.get $0 i32.load offset=8 - local.tee $3 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find28 - local.get $3 + local.get $1 i32.const -2 i32.and local.set $0 @@ -13148,14 +13128,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 1 i32.add - local.set $2 + local.set $3 br $for-loop|4 end end - local.get $1 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -13167,9 +13147,9 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $4 call $~lib/map/Map#clear - local.get $1 + local.get $4 i32.load offset=20 if i32.const 0 @@ -13589,16 +13569,16 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i64.const 0 i64.store - local.get $0 + local.get $2 i64.const 0 i64.store offset=8 - local.get $0 + local.get $2 i32.const 0 i32.store offset=16 - local.get $0 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -13607,66 +13587,66 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $0 i32.const 0 i32.store - local.get $3 + local.get $0 i32.const 24 i32.const 17 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $10 i32.store - local.get $4 + local.get $10 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $0 i32.store - local.get $3 + local.get $0 if - local.get $4 - local.get $3 + local.get $10 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $10 i32.const 3 i32.store offset=4 - local.get $4 + local.get $10 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $0 i32.store offset=8 - local.get $3 + local.get $0 if - local.get $4 - local.get $3 + local.get $10 + local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $10 i32.const 4 i32.store offset=12 - local.get $4 + local.get $10 i32.const 0 i32.store offset=16 - local.get $4 + local.get $10 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 - local.get $4 + local.get $2 + local.get $10 i32.store loop $for-loop|0 - local.get $2 + local.get $3 i32.const 100 i32.lt_u if - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 - local.get $2 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13706,19 +13686,19 @@ if local.get $0 i32.load offset=8 - local.tee $3 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $3 + local.get $2 i32.const -2 i32.and local.set $0 @@ -13737,17 +13717,17 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $2 - local.get $2 + local.get $10 + local.get $3 + local.get $3 i32.const 10 i32.add call $~lib/map/Map#set - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 - local.get $2 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13787,19 +13767,19 @@ if local.get $0 i32.load offset=8 - local.tee $3 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $3 + local.get $2 i32.const -2 i32.and local.set $0 @@ -13819,10 +13799,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $2 + local.get $10 + local.get $3 call $~lib/map/Map#get - local.get $2 + local.get $3 i32.const 10 i32.add i32.ne @@ -13834,14 +13814,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 1 i32.add - local.set $2 + local.set $3 br $for-loop|0 end end - local.get $4 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -13854,17 +13834,17 @@ unreachable end i32.const 0 - local.set $2 + local.set $3 loop $for-loop|1 - local.get $2 + local.get $3 i32.const 100 i32.lt_u if - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 - local.get $2 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13904,19 +13884,19 @@ if local.get $0 i32.load offset=8 - local.tee $3 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $3 + local.get $2 i32.const -2 i32.and local.set $0 @@ -13936,10 +13916,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $2 + local.get $10 + local.get $3 call $~lib/map/Map#get - local.get $2 + local.get $3 i32.const 10 i32.add i32.ne @@ -13951,17 +13931,17 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $2 - local.get $2 + local.get $10 + local.get $3 + local.get $3 i32.const 20 i32.add call $~lib/map/Map#set - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 - local.get $2 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14001,19 +13981,19 @@ if local.get $0 i32.load offset=8 - local.tee $3 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $3 + local.get $2 i32.const -2 i32.and local.set $0 @@ -14033,10 +14013,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $2 + local.get $10 + local.get $3 call $~lib/map/Map#get - local.get $2 + local.get $3 i32.const 20 i32.add i32.ne @@ -14048,14 +14028,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 1 i32.add - local.set $2 + local.set $3 br $for-loop|1 end end - local.get $4 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -14081,13 +14061,13 @@ local.tee $7 i32.const 0 i32.store - local.get $4 + local.get $10 i32.load offset=8 - local.set $10 - local.get $4 + local.set $6 + local.get $10 i32.load offset=16 - local.tee $11 - local.set $3 + local.tee $5 + local.set $4 local.get $7 i32.const 8 i32.sub @@ -14104,21 +14084,21 @@ i32.const 16 i32.const 18 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 0 i32.store offset=4 - local.get $0 + local.get $3 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 0 i32.store offset=12 - local.get $3 + local.get $4 i32.const 268435455 i32.gt_u if @@ -14130,66 +14110,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.const 8 - local.get $3 + local.get $4 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $8 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 i32.store offset=4 + local.get $0 local.get $2 - local.get $8 call $~lib/memory/memory.fill + local.get $3 local.get $0 - local.get $2 i32.store - local.get $2 + local.get $0 if + local.get $3 local.get $0 - local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $3 local.get $0 - local.get $2 i32.store offset=4 - local.get $0 - local.get $8 + local.get $3 + local.get $2 i32.store offset=8 - local.get $0 local.get $3 + local.get $4 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $7 - local.get $0 + local.get $3 i32.store loop $for-loop|01 local.get $5 - local.get $11 - i32.lt_s + local.get $9 + i32.gt_s if - local.get $5 + local.get $9 i32.const 12 i32.mul - local.get $10 + local.get $6 i32.add - local.tee $2 + local.tee $0 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $0 + local.get $3 local.get $1 - local.get $2 + local.get $0 i32.load call $~lib/array/Array#__set local.get $1 @@ -14197,32 +14177,31 @@ i32.add local.set $1 end - local.get $5 + local.get $9 i32.const 1 i32.add - local.set $5 + local.set $9 br $for-loop|01 end end - local.get $0 + local.get $3 local.get $1 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $0 + local.get $3 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 - local.tee $3 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $10 call $~lib/map/Map#values - local.tee $12 + local.tee $14 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -14241,61 +14220,61 @@ i32.const 24 i32.const 19 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $9 i32.store - local.get $5 + local.get $9 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store local.get $0 if - local.get $5 + local.get $9 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 + local.get $9 i32.const 3 i32.store offset=4 - local.get $5 + local.get $9 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store offset=8 local.get $0 if - local.get $5 + local.get $9 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 + local.get $9 i32.const 4 i32.store offset=12 - local.get $5 + local.get $9 i32.const 0 i32.store offset=16 - local.get $5 + local.get $9 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $10 + local.tee $8 i32.store offset=16 loop $for-loop|2 local.get $3 i32.load offset=12 - local.get $6 + local.get $16 i32.gt_s if local.get $3 i32.load offset=12 - local.get $6 + local.get $16 i32.le_u if i32.const 1248 @@ -14307,21 +14286,21 @@ end local.get $3 i32.load offset=4 - local.get $6 + local.get $16 i32.const 2 i32.shl i32.add i32.load - local.set $1 - local.get $12 - local.get $6 + local.set $2 + local.get $14 + local.get $16 call $~lib/array/Array#__get - local.set $11 - local.get $4 + local.set $7 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 - local.get $1 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14354,36 +14333,36 @@ i32.shl i32.add i32.load - local.set $0 + local.set $4 block $__inlined_func$~lib/map/Map#find10 loop $while-continue|011 - local.get $0 + local.get $4 if - local.get $0 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 - local.get $0 + local.get $2 + local.get $4 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $2 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $4 br $while-continue|011 end end i32.const 0 - local.set $0 + local.set $4 end - local.get $0 + local.get $4 i32.eqz if i32.const 0 @@ -14393,14 +14372,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 - local.get $11 + local.get $7 i32.const 20 i32.sub - local.tee $2 + local.tee $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14433,36 +14412,36 @@ i32.shl i32.add i32.load - local.set $0 + local.set $4 block $__inlined_func$~lib/map/Map#find13 loop $while-continue|014 - local.get $0 + local.get $4 if - local.get $0 + local.get $4 i32.load offset=8 - local.tee $7 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 - local.get $0 + local.get $1 + local.get $4 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $7 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $4 br $while-continue|014 end end i32.const 0 - local.set $0 + local.set $4 end - local.get $0 + local.get $4 i32.eqz if i32.const 0 @@ -14483,9 +14462,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $5 + local.get $9 i32.load - local.get $1 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14514,7 +14493,7 @@ local.get $0 i32.xor local.tee $13 - local.get $5 + local.get $9 i32.load offset=4 i32.and i32.const 2 @@ -14528,19 +14507,19 @@ if local.get $0 i32.load offset=8 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find15 - local.get $2 + local.get $1 i32.const -2 i32.and local.set $0 @@ -14553,18 +14532,18 @@ local.get $0 if local.get $0 - local.get $1 + local.get $2 i32.store offset=4 else - local.get $5 + local.get $9 i32.load offset=16 - local.get $5 + local.get $9 i32.load offset=12 i32.eq if - local.get $5 + local.get $9 i32.load offset=20 - local.get $5 + local.get $9 i32.load offset=12 i32.const 3 i32.mul @@ -14572,17 +14551,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $5 + local.get $9 i32.load offset=4 else - local.get $5 + local.get $9 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $9 + local.set $6 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -14596,14 +14575,14 @@ i64.const 0 i64.store local.get $0 - local.get $9 + local.get $6 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $8 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -14611,45 +14590,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $14 + local.tee $12 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $5 + local.get $9 i32.load offset=8 - local.tee $7 - local.get $5 + local.tee $15 + local.get $9 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $15 - local.get $2 + local.set $11 + local.get $1 local.set $0 loop $while-continue|017 - local.get $7 + local.get $11 local.get $15 i32.ne if - local.get $7 + local.get $15 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $7 + local.get $15 i32.load - local.tee $16 + local.tee $4 i32.store local.get $0 - local.get $7 + local.get $15 i32.load offset=4 i32.store offset=4 local.get $0 - local.get $16 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14658,35 +14637,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $16 + local.tee $4 i32.const 15 i32.shr_u - local.get $16 + local.get $4 i32.xor i32.const -2048144777 i32.mul - local.tee $16 + local.tee $4 i32.const 13 i32.shr_u - local.get $16 + local.get $4 i32.xor i32.const -1028477379 i32.mul - local.tee $16 + local.tee $4 i32.const 16 i32.shr_u - local.get $16 + local.get $4 i32.xor - local.get $9 + local.get $6 i32.and i32.const 2 i32.shl - local.get $8 + local.get $5 i32.add - local.tee $16 + local.tee $4 i32.load i32.store offset=8 - local.get $16 + local.get $4 local.get $0 i32.store local.get $0 @@ -14694,39 +14673,39 @@ i32.add local.set $0 end - local.get $7 + local.get $15 i32.const 12 i32.add - local.set $7 + local.set $15 br $while-continue|017 end end + local.get $9 local.get $5 - local.get $8 i32.store - local.get $8 + local.get $5 if + local.get $9 local.get $5 - local.get $8 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 local.get $9 + local.get $6 i32.store offset=4 - local.get $5 - local.get $2 + local.get $9 + local.get $1 i32.store offset=8 - local.get $2 + local.get $1 if - local.get $5 - local.get $2 + local.get $9 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 - local.get $14 + local.get $9 + local.get $12 i32.store offset=12 - local.get $5 - local.get $5 + local.get $9 + local.get $9 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -14735,70 +14714,70 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $9 i32.load offset=8 - local.tee $0 + local.tee $1 i32.store - local.get $5 - local.get $5 + local.get $9 + local.get $9 i32.load offset=16 - local.tee $2 + local.tee $0 i32.const 1 i32.add i32.store offset=16 - local.get $2 + local.get $0 i32.const 12 i32.mul - local.get $0 - i32.add - local.tee $0 local.get $1 + i32.add + local.tee $1 + local.get $2 i32.store - local.get $0 local.get $1 + local.get $2 i32.store offset=4 - local.get $5 - local.get $5 + local.get $9 + local.get $9 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $0 - local.get $5 + local.get $1 + local.get $9 i32.load - local.get $5 + local.get $9 i32.load offset=4 local.get $13 i32.and i32.const 2 i32.shl i32.add - local.tee $1 + local.tee $0 i32.load i32.store offset=8 - local.get $1 local.get $0 + local.get $1 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 - local.get $11 + local.get $8 + local.get $7 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $6 + local.get $16 i32.const 1 i32.add - local.set $6 + local.set $16 br $for-loop|2 end end - local.get $5 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -14810,7 +14789,7 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $8 i32.load offset=20 i32.const 100 i32.ne @@ -14823,17 +14802,17 @@ unreachable end i32.const 0 - local.set $6 + local.set $16 loop $for-loop|3 - local.get $6 + local.get $16 i32.const 50 i32.lt_u if - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 - local.get $6 + local.get $16 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14866,12 +14845,12 @@ i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find19 loop $while-continue|020 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 local.tee $0 i32.const 1 @@ -14879,8 +14858,8 @@ if (result i32) i32.const 0 else - local.get $6 - local.get $2 + local.get $16 + local.get $3 i32.load i32.eq end @@ -14888,14 +14867,14 @@ local.get $0 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|020 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -14905,10 +14884,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $6 + local.get $10 + local.get $16 call $~lib/map/Map#get - local.get $6 + local.get $16 i32.const 20 i32.add i32.ne @@ -14920,14 +14899,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $6 + local.get $10 + local.get $16 call $~lib/map/Map#delete - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 - local.get $6 + local.get $16 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14960,12 +14939,12 @@ i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find22 loop $while-continue|023 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 local.tee $0 i32.const 1 @@ -14973,8 +14952,8 @@ if (result i32) i32.const 0 else - local.get $6 - local.get $2 + local.get $16 + local.get $3 i32.load i32.eq end @@ -14982,14 +14961,14 @@ local.get $0 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|023 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -14998,14 +14977,14 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $16 i32.const 1 i32.add - local.set $6 + local.set $16 br $for-loop|3 end end - local.get $4 + local.get $10 i32.load offset=20 i32.const 50 i32.ne @@ -15018,17 +14997,17 @@ unreachable end i32.const 0 - local.set $6 + local.set $16 loop $for-loop|4 - local.get $6 + local.get $16 i32.const 50 i32.lt_u if - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 - local.get $6 + local.get $16 i32.const -1028477379 i32.mul i32.const 374761397 @@ -15061,12 +15040,12 @@ i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find25 loop $while-continue|026 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 local.tee $0 i32.const 1 @@ -15074,8 +15053,8 @@ if (result i32) i32.const 0 else - local.get $6 - local.get $2 + local.get $16 + local.get $3 i32.load i32.eq end @@ -15083,14 +15062,14 @@ local.get $0 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|026 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -15099,17 +15078,17 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $6 - local.get $6 + local.get $10 + local.get $16 + local.get $16 i32.const 10 i32.add call $~lib/map/Map#set - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 - local.get $6 + local.get $16 i32.const -1028477379 i32.mul i32.const 374761397 @@ -15142,12 +15121,12 @@ i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find28 loop $while-continue|029 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 local.tee $0 i32.const 1 @@ -15155,8 +15134,8 @@ if (result i32) i32.const 0 else - local.get $6 - local.get $2 + local.get $16 + local.get $3 i32.load i32.eq end @@ -15164,14 +15143,14 @@ local.get $0 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|029 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -15181,14 +15160,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $6 + local.get $10 + local.get $16 call $~lib/map/Map#delete - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 - local.get $6 + local.get $16 i32.const -1028477379 i32.mul i32.const 374761397 @@ -15221,12 +15200,12 @@ i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find31 loop $while-continue|032 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 local.tee $0 i32.const 1 @@ -15234,8 +15213,8 @@ if (result i32) i32.const 0 else - local.get $6 - local.get $2 + local.get $16 + local.get $3 i32.load i32.eq end @@ -15243,14 +15222,14 @@ local.get $0 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|032 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -15259,14 +15238,14 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $16 i32.const 1 i32.add - local.set $6 + local.set $16 br $for-loop|4 end end - local.get $4 + local.get $10 i32.load offset=20 i32.const 50 i32.ne @@ -15278,9 +15257,9 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 call $~lib/map/Map#clear - local.get $4 + local.get $10 i32.load offset=20 if i32.const 0 @@ -15423,7 +15402,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -15431,7 +15410,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $5 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -15439,13 +15418,13 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $8 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $8 + local.set $4 local.get $3 local.set $2 loop $while-continue|0 @@ -15453,19 +15432,19 @@ local.get $8 i32.ne if - local.get $4 + local.get $8 i32.load offset=12 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $4 + local.get $8 i64.load local.tee $6 i64.store local.get $2 - local.get $4 + local.get $8 i32.load offset=8 i32.store offset=8 local.get $2 @@ -15513,7 +15492,7 @@ i32.and i32.const 2 i32.shl - local.get $5 + local.get $7 i32.add local.tee $9 i32.load @@ -15526,20 +15505,20 @@ i32.add local.set $2 end - local.get $4 + local.get $8 i32.const 16 i32.add - local.set $4 + local.set $8 br $while-continue|0 end end local.get $0 - local.get $5 + local.get $7 i32.store - local.get $5 + local.get $7 if local.get $0 - local.get $5 + local.get $7 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -15555,7 +15534,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $5 i32.store offset=12 local.get $0 local.get $0 @@ -15872,19 +15851,19 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i64) + (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) + (local $7 i64) (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i64) + (local $12 i32) (local $13 i32) (local $14 i32) - (local $15 i32) + (local $15 i64) (local $16 i32) (local $17 i32) global.get $~lib/memory/__stack_pointer @@ -15897,16 +15876,16 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i64.const 0 i64.store offset=8 - local.get $1 + local.get $2 i32.const 0 i32.store offset=16 - local.get $1 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -15915,63 +15894,63 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.const 20 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $11 i32.store - local.get $4 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if - local.get $4 - local.get $2 + local.get $11 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $11 i32.const 3 i32.store offset=4 - local.get $4 + local.get $11 i32.const 64 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store offset=8 - local.get $2 + local.get $1 if - local.get $4 - local.get $2 + local.get $11 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $11 i32.const 4 i32.store offset=12 - local.get $4 + local.get $11 i32.const 0 i32.store offset=16 - local.get $4 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $4 + local.get $2 + local.get $11 i32.store loop $for-loop|0 - local.get $3 + local.get $7 i64.const 100 i64.lt_s if - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has if i32.const 0 @@ -15981,15 +15960,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 - local.get $3 + local.get $11 + local.get $7 + local.get $7 i32.wrap_i64 i32.const 10 i32.add call $~lib/map/Map#set - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has i32.eqz if @@ -16000,10 +15979,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#get - local.get $3 + local.get $7 i32.wrap_i64 i32.const 10 i32.add @@ -16016,14 +15995,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 i64.const 1 i64.add - local.set $3 + local.set $7 br $for-loop|0 end end - local.get $4 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -16036,14 +16015,14 @@ unreachable end i64.const 0 - local.set $3 + local.set $7 loop $for-loop|1 - local.get $3 + local.get $7 i64.const 100 i64.lt_s if - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has i32.eqz if @@ -16054,10 +16033,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#get - local.get $3 + local.get $7 i32.wrap_i64 i32.const 10 i32.add @@ -16070,15 +16049,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 - local.get $3 + local.get $11 + local.get $7 + local.get $7 i32.wrap_i64 i32.const 20 i32.add call $~lib/map/Map#set - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has i32.eqz if @@ -16089,10 +16068,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#get - local.get $3 + local.get $7 i32.wrap_i64 i32.const 20 i32.add @@ -16105,14 +16084,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 i64.const 1 i64.add - local.set $3 + local.set $7 br $for-loop|1 end end - local.get $4 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -16138,13 +16117,13 @@ local.tee $8 i32.const 0 i32.store - local.get $4 + local.get $11 i32.load offset=8 - local.set $11 - local.get $4 + local.set $6 + local.get $11 i32.load offset=16 - local.tee $13 - local.set $5 + local.tee $5 + local.set $4 local.get $8 i32.const 8 i32.sub @@ -16161,21 +16140,21 @@ i32.const 16 i32.const 21 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 0 i32.store offset=4 - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 0 i32.store offset=12 - local.get $5 + local.get $4 i32.const 134217727 i32.gt_u if @@ -16187,66 +16166,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 8 - local.get $5 + local.get $4 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $9 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $2 - local.get $9 - call $~lib/memory/memory.fill local.get $1 + local.get $3 + call $~lib/memory/memory.fill local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 if - local.get $1 local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $2 - i32.store offset=4 local.get $1 - local.get $9 + i32.store offset=4 + local.get $2 + local.get $3 i32.store offset=8 - local.get $1 - local.get $5 + local.get $2 + local.get $4 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $8 - local.get $1 + local.get $2 i32.store loop $for-loop|01 - local.get $6 - local.get $13 - i32.lt_s + local.get $5 + local.get $10 + i32.gt_s if - local.get $6 + local.get $10 i32.const 4 i32.shl - local.get $11 + local.get $6 i32.add - local.tee $2 + local.tee $1 i32.load offset=12 i32.const 1 i32.and i32.eqz if - local.get $1 - local.get $0 local.get $2 + local.get $0 + local.get $1 i64.load call $~lib/array/Array#__set local.get $0 @@ -16254,31 +16233,31 @@ i32.add local.set $0 end - local.get $6 + local.get $10 i32.const 1 i32.add - local.set $6 + local.set $10 br $for-loop|01 end end - local.get $1 + local.get $2 local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $1 + local.get $2 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $11 call $~lib/map/Map#values - local.tee $13 + local.tee $10 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -16297,61 +16276,61 @@ i32.const 24 i32.const 22 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $9 i32.store - local.get $5 + local.get $9 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store local.get $0 if - local.get $5 + local.get $9 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 + local.get $9 i32.const 3 i32.store offset=4 - local.get $5 + local.get $9 i32.const 96 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store offset=8 local.get $0 if - local.get $5 + local.get $9 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 + local.get $9 i32.const 4 i32.store offset=12 - local.get $5 + local.get $9 i32.const 0 i32.store offset=16 - local.get $5 + local.get $9 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $10 + local.tee $8 i32.store offset=16 loop $for-loop|2 - local.get $1 + local.get $2 i32.load offset=12 - local.get $7 + local.get $16 i32.gt_s if - local.get $1 + local.get $2 i32.load offset=12 - local.get $7 + local.get $16 i32.le_u if i32.const 1248 @@ -16361,20 +16340,20 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.load offset=4 - local.get $7 + local.get $16 i32.const 3 i32.shl i32.add i64.load - local.set $3 - local.get $13 - local.get $7 + local.set $7 + local.get $10 + local.get $16 call $~lib/array/Array#__get - local.set $11 - local.get $4 - local.get $3 + local.set $6 + local.get $11 + local.get $7 call $~lib/map/Map#has i32.eqz if @@ -16385,8 +16364,8 @@ call $~lib/builtins/abort unreachable end - local.get $4 local.get $11 + local.get $6 i32.const 20 i32.sub i64.extend_i32_s @@ -16411,9 +16390,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $5 + local.get $9 i32.load - local.get $3 + local.get $7 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -16423,7 +16402,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $3 + local.get $7 i64.const 32 i64.shr_u i32.wrap_i64 @@ -16454,7 +16433,7 @@ local.get $0 i32.xor local.tee $14 - local.get $5 + local.get $9 i32.load offset=4 i32.and i32.const 2 @@ -16468,19 +16447,19 @@ if local.get $0 i32.load offset=16 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $7 local.get $0 i64.load i64.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $2 + local.get $1 i32.const -2 i32.and local.set $0 @@ -16493,18 +16472,18 @@ local.get $0 if local.get $0 - local.get $3 + local.get $7 i64.store offset=8 else - local.get $5 + local.get $9 i32.load offset=16 - local.get $5 + local.get $9 i32.load offset=12 i32.eq if - local.get $5 + local.get $9 i32.load offset=20 - local.get $5 + local.get $9 i32.load offset=12 i32.const 3 i32.mul @@ -16512,17 +16491,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $5 + local.get $9 i32.load offset=4 else - local.get $5 + local.get $9 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $9 + local.set $5 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -16536,14 +16515,14 @@ i64.const 0 i64.store local.get $0 - local.get $9 + local.get $5 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $8 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -16551,46 +16530,46 @@ i32.shl i32.const 3 i32.div_s - local.tee $15 + local.tee $13 i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $5 + local.get $9 i32.load offset=8 - local.tee $6 - local.get $5 + local.tee $17 + local.get $9 i32.load offset=16 i32.const 24 i32.mul i32.add - local.set $16 - local.get $2 + local.set $12 + local.get $1 local.set $0 loop $while-continue|00 - local.get $6 - local.get $16 + local.get $12 + local.get $17 i32.ne if - local.get $6 + local.get $17 i32.load offset=16 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $6 + local.get $17 i64.load - local.tee $12 + local.tee $15 i64.store local.get $0 - local.get $6 + local.get $17 i64.load offset=8 i64.store offset=8 local.get $0 - local.get $9 - local.get $12 + local.get $5 + local.get $15 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -16600,7 +16579,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $12 + local.get $15 i64.const 32 i64.shr_u i32.wrap_i64 @@ -16611,34 +16590,34 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $17 + local.tee $3 i32.const 15 i32.shr_u - local.get $17 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $17 + local.tee $3 i32.const 13 i32.shr_u - local.get $17 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $17 + local.tee $3 i32.const 16 i32.shr_u - local.get $17 + local.get $3 i32.xor i32.and i32.const 2 i32.shl - local.get $8 + local.get $4 i32.add - local.tee $17 + local.tee $3 i32.load i32.store offset=16 - local.get $17 + local.get $3 local.get $0 i32.store local.get $0 @@ -16646,39 +16625,39 @@ i32.add local.set $0 end - local.get $6 + local.get $17 i32.const 24 i32.add - local.set $6 + local.set $17 br $while-continue|00 end end - local.get $5 - local.get $8 + local.get $9 + local.get $4 i32.store - local.get $8 + local.get $4 if - local.get $5 - local.get $8 + local.get $9 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 local.get $9 - i32.store offset=4 local.get $5 - local.get $2 + i32.store offset=4 + local.get $9 + local.get $1 i32.store offset=8 - local.get $2 + local.get $1 if - local.get $5 - local.get $2 + local.get $9 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 - local.get $15 + local.get $9 + local.get $13 i32.store offset=12 - local.get $5 - local.get $5 + local.get $9 + local.get $9 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -16687,70 +16666,70 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $9 i32.load offset=8 - local.tee $0 + local.tee $1 i32.store - local.get $5 - local.get $5 + local.get $9 + local.get $9 i32.load offset=16 - local.tee $2 + local.tee $0 i32.const 1 i32.add i32.store offset=16 - local.get $2 + local.get $0 i32.const 24 i32.mul - local.get $0 + local.get $1 i32.add - local.tee $0 - local.get $3 + local.tee $1 + local.get $7 i64.store - local.get $0 - local.get $3 + local.get $1 + local.get $7 i64.store offset=8 - local.get $5 - local.get $5 + local.get $9 + local.get $9 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $0 - local.get $5 + local.get $1 + local.get $9 i32.load - local.get $5 + local.get $9 i32.load offset=4 local.get $14 i32.and i32.const 2 i32.shl i32.add - local.tee $2 + local.tee $0 i32.load i32.store offset=16 - local.get $2 local.get $0 + local.get $1 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 - local.get $11 + local.get $8 + local.get $6 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $7 + local.get $16 i32.const 1 i32.add - local.set $7 + local.set $16 br $for-loop|2 end end - local.get $5 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -16762,7 +16741,7 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $8 i32.load offset=20 i32.const 100 i32.ne @@ -16775,14 +16754,14 @@ unreachable end i64.const 0 - local.set $3 + local.set $7 loop $for-loop|3 - local.get $3 + local.get $7 i64.const 50 i64.lt_s if - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has i32.eqz if @@ -16793,10 +16772,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#get - local.get $3 + local.get $7 i32.wrap_i64 i32.const 20 i32.add @@ -16809,11 +16788,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#delete - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has if i32.const 0 @@ -16823,14 +16802,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 i64.const 1 i64.add - local.set $3 + local.set $7 br $for-loop|3 end end - local.get $4 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -16843,14 +16822,14 @@ unreachable end i64.const 0 - local.set $3 + local.set $7 loop $for-loop|4 - local.get $3 + local.get $7 i64.const 50 i64.lt_s if - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has if i32.const 0 @@ -16860,15 +16839,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 - local.get $3 + local.get $11 + local.get $7 + local.get $7 i32.wrap_i64 i32.const 10 i32.add call $~lib/map/Map#set - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has i32.eqz if @@ -16879,11 +16858,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#delete - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has if i32.const 0 @@ -16893,14 +16872,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 i64.const 1 i64.add - local.set $3 + local.set $7 br $for-loop|4 end end - local.get $4 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -16912,9 +16891,9 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 call $~lib/map/Map#clear - local.get $4 + local.get $11 i32.load offset=20 if i32.const 0 @@ -17057,7 +17036,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -17065,7 +17044,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $5 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -17073,13 +17052,13 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $8 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $8 + local.set $4 local.get $3 local.set $2 loop $while-continue|0 @@ -17087,19 +17066,19 @@ local.get $8 i32.ne if - local.get $4 + local.get $8 i32.load offset=12 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $4 + local.get $8 i64.load local.tee $6 i64.store local.get $2 - local.get $4 + local.get $8 i32.load offset=8 i32.store offset=8 local.get $2 @@ -17147,7 +17126,7 @@ i32.and i32.const 2 i32.shl - local.get $5 + local.get $7 i32.add local.tee $9 i32.load @@ -17160,20 +17139,20 @@ i32.add local.set $2 end - local.get $4 + local.get $8 i32.const 16 i32.add - local.set $4 + local.set $8 br $while-continue|0 end end local.get $0 - local.get $5 + local.get $7 i32.store - local.get $5 + local.get $7 if local.get $0 - local.get $5 + local.get $7 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -17189,7 +17168,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $5 i32.store offset=12 local.get $0 local.get $0 @@ -17430,19 +17409,19 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i64) + (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) + (local $7 i64) (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i64) + (local $12 i32) (local $13 i32) (local $14 i32) - (local $15 i32) + (local $15 i64) (local $16 i32) (local $17 i32) global.get $~lib/memory/__stack_pointer @@ -17455,16 +17434,16 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i64.const 0 i64.store offset=8 - local.get $1 + local.get $2 i32.const 0 i32.store offset=16 - local.get $1 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -17473,63 +17452,63 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.const 23 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $11 i32.store - local.get $4 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if - local.get $4 - local.get $2 + local.get $11 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $11 i32.const 3 i32.store offset=4 - local.get $4 + local.get $11 i32.const 64 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store offset=8 - local.get $2 + local.get $1 if - local.get $4 - local.get $2 + local.get $11 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $11 i32.const 4 i32.store offset=12 - local.get $4 + local.get $11 i32.const 0 i32.store offset=16 - local.get $4 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $4 + local.get $2 + local.get $11 i32.store loop $for-loop|0 - local.get $3 + local.get $7 i64.const 100 i64.lt_u if - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has if i32.const 0 @@ -17539,15 +17518,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 - local.get $3 + local.get $11 + local.get $7 + local.get $7 i32.wrap_i64 i32.const 10 i32.add call $~lib/map/Map#set - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has i32.eqz if @@ -17558,10 +17537,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#get - local.get $3 + local.get $7 i32.wrap_i64 i32.const 10 i32.add @@ -17574,14 +17553,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 i64.const 1 i64.add - local.set $3 + local.set $7 br $for-loop|0 end end - local.get $4 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -17594,14 +17573,14 @@ unreachable end i64.const 0 - local.set $3 + local.set $7 loop $for-loop|1 - local.get $3 + local.get $7 i64.const 100 i64.lt_u if - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has i32.eqz if @@ -17612,10 +17591,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#get - local.get $3 + local.get $7 i32.wrap_i64 i32.const 10 i32.add @@ -17628,15 +17607,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 - local.get $3 + local.get $11 + local.get $7 + local.get $7 i32.wrap_i64 i32.const 20 i32.add call $~lib/map/Map#set - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has i32.eqz if @@ -17647,10 +17626,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#get - local.get $3 + local.get $7 i32.wrap_i64 i32.const 20 i32.add @@ -17663,14 +17642,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 i64.const 1 i64.add - local.set $3 + local.set $7 br $for-loop|1 end end - local.get $4 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -17696,13 +17675,13 @@ local.tee $8 i32.const 0 i32.store - local.get $4 + local.get $11 i32.load offset=8 - local.set $11 - local.get $4 + local.set $6 + local.get $11 i32.load offset=16 - local.tee $13 - local.set $5 + local.tee $5 + local.set $4 local.get $8 i32.const 8 i32.sub @@ -17719,21 +17698,21 @@ i32.const 16 i32.const 24 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 0 i32.store offset=4 - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 0 i32.store offset=12 - local.get $5 + local.get $4 i32.const 134217727 i32.gt_u if @@ -17745,66 +17724,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 8 - local.get $5 + local.get $4 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $9 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $2 - local.get $9 - call $~lib/memory/memory.fill local.get $1 + local.get $3 + call $~lib/memory/memory.fill local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 if - local.get $1 local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $2 - i32.store offset=4 local.get $1 - local.get $9 + i32.store offset=4 + local.get $2 + local.get $3 i32.store offset=8 - local.get $1 - local.get $5 + local.get $2 + local.get $4 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $8 - local.get $1 + local.get $2 i32.store loop $for-loop|01 - local.get $6 - local.get $13 - i32.lt_s + local.get $5 + local.get $10 + i32.gt_s if - local.get $6 + local.get $10 i32.const 4 i32.shl - local.get $11 + local.get $6 i32.add - local.tee $2 + local.tee $1 i32.load offset=12 i32.const 1 i32.and i32.eqz if - local.get $1 - local.get $0 local.get $2 + local.get $0 + local.get $1 i64.load call $~lib/array/Array#__set local.get $0 @@ -17812,31 +17791,31 @@ i32.add local.set $0 end - local.get $6 + local.get $10 i32.const 1 i32.add - local.set $6 + local.set $10 br $for-loop|01 end end - local.get $1 + local.get $2 local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $1 + local.get $2 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $11 call $~lib/map/Map#values - local.tee $13 + local.tee $10 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -17855,61 +17834,61 @@ i32.const 24 i32.const 25 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $9 i32.store - local.get $5 + local.get $9 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store local.get $0 if - local.get $5 + local.get $9 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 + local.get $9 i32.const 3 i32.store offset=4 - local.get $5 + local.get $9 i32.const 96 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store offset=8 local.get $0 if - local.get $5 + local.get $9 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 + local.get $9 i32.const 4 i32.store offset=12 - local.get $5 + local.get $9 i32.const 0 i32.store offset=16 - local.get $5 + local.get $9 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $10 + local.tee $8 i32.store offset=16 loop $for-loop|2 - local.get $1 + local.get $2 i32.load offset=12 - local.get $7 + local.get $16 i32.gt_s if - local.get $1 + local.get $2 i32.load offset=12 - local.get $7 + local.get $16 i32.le_u if i32.const 1248 @@ -17919,20 +17898,20 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.load offset=4 - local.get $7 + local.get $16 i32.const 3 i32.shl i32.add i64.load - local.set $3 - local.get $13 - local.get $7 + local.set $7 + local.get $10 + local.get $16 call $~lib/array/Array#__get - local.set $11 - local.get $4 - local.get $3 + local.set $6 + local.get $11 + local.get $7 call $~lib/map/Map#has i32.eqz if @@ -17943,8 +17922,8 @@ call $~lib/builtins/abort unreachable end - local.get $4 local.get $11 + local.get $6 i32.const 20 i32.sub i64.extend_i32_s @@ -17969,9 +17948,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $5 + local.get $9 i32.load - local.get $3 + local.get $7 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -17981,7 +17960,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $3 + local.get $7 i64.const 32 i64.shr_u i32.wrap_i64 @@ -18012,7 +17991,7 @@ local.get $0 i32.xor local.tee $14 - local.get $5 + local.get $9 i32.load offset=4 i32.and i32.const 2 @@ -18026,19 +18005,19 @@ if local.get $0 i32.load offset=16 - local.tee $2 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $7 local.get $0 i64.load i64.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $2 + local.get $1 i32.const -2 i32.and local.set $0 @@ -18051,18 +18030,18 @@ local.get $0 if local.get $0 - local.get $3 + local.get $7 i64.store offset=8 else - local.get $5 + local.get $9 i32.load offset=16 - local.get $5 + local.get $9 i32.load offset=12 i32.eq if - local.get $5 + local.get $9 i32.load offset=20 - local.get $5 + local.get $9 i32.load offset=12 i32.const 3 i32.mul @@ -18070,17 +18049,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $5 + local.get $9 i32.load offset=4 else - local.get $5 + local.get $9 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $9 + local.set $5 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -18094,14 +18073,14 @@ i64.const 0 i64.store local.get $0 - local.get $9 + local.get $5 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $8 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -18109,46 +18088,46 @@ i32.shl i32.const 3 i32.div_s - local.tee $15 + local.tee $13 i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $5 + local.get $9 i32.load offset=8 - local.tee $6 - local.get $5 + local.tee $17 + local.get $9 i32.load offset=16 i32.const 24 i32.mul i32.add - local.set $16 - local.get $2 + local.set $12 + local.get $1 local.set $0 loop $while-continue|00 - local.get $6 - local.get $16 + local.get $12 + local.get $17 i32.ne if - local.get $6 + local.get $17 i32.load offset=16 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $6 + local.get $17 i64.load - local.tee $12 + local.tee $15 i64.store local.get $0 - local.get $6 + local.get $17 i64.load offset=8 i64.store offset=8 local.get $0 - local.get $9 - local.get $12 + local.get $5 + local.get $15 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -18158,7 +18137,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $12 + local.get $15 i64.const 32 i64.shr_u i32.wrap_i64 @@ -18169,34 +18148,34 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $17 + local.tee $3 i32.const 15 i32.shr_u - local.get $17 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $17 + local.tee $3 i32.const 13 i32.shr_u - local.get $17 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $17 + local.tee $3 i32.const 16 i32.shr_u - local.get $17 + local.get $3 i32.xor i32.and i32.const 2 i32.shl - local.get $8 + local.get $4 i32.add - local.tee $17 + local.tee $3 i32.load i32.store offset=16 - local.get $17 + local.get $3 local.get $0 i32.store local.get $0 @@ -18204,39 +18183,39 @@ i32.add local.set $0 end - local.get $6 + local.get $17 i32.const 24 i32.add - local.set $6 + local.set $17 br $while-continue|00 end end - local.get $5 - local.get $8 + local.get $9 + local.get $4 i32.store - local.get $8 + local.get $4 if - local.get $5 - local.get $8 + local.get $9 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 local.get $9 - i32.store offset=4 local.get $5 - local.get $2 + i32.store offset=4 + local.get $9 + local.get $1 i32.store offset=8 - local.get $2 + local.get $1 if - local.get $5 - local.get $2 + local.get $9 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 - local.get $15 + local.get $9 + local.get $13 i32.store offset=12 - local.get $5 - local.get $5 + local.get $9 + local.get $9 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -18245,70 +18224,70 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $9 i32.load offset=8 - local.tee $0 + local.tee $1 i32.store - local.get $5 - local.get $5 + local.get $9 + local.get $9 i32.load offset=16 - local.tee $2 + local.tee $0 i32.const 1 i32.add i32.store offset=16 - local.get $2 + local.get $0 i32.const 24 i32.mul - local.get $0 + local.get $1 i32.add - local.tee $0 - local.get $3 + local.tee $1 + local.get $7 i64.store - local.get $0 - local.get $3 + local.get $1 + local.get $7 i64.store offset=8 - local.get $5 - local.get $5 + local.get $9 + local.get $9 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $0 - local.get $5 + local.get $1 + local.get $9 i32.load - local.get $5 + local.get $9 i32.load offset=4 local.get $14 i32.and i32.const 2 i32.shl i32.add - local.tee $2 + local.tee $0 i32.load i32.store offset=16 - local.get $2 local.get $0 + local.get $1 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 - local.get $11 + local.get $8 + local.get $6 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $7 + local.get $16 i32.const 1 i32.add - local.set $7 + local.set $16 br $for-loop|2 end end - local.get $5 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -18320,7 +18299,7 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $8 i32.load offset=20 i32.const 100 i32.ne @@ -18333,14 +18312,14 @@ unreachable end i64.const 0 - local.set $3 + local.set $7 loop $for-loop|3 - local.get $3 + local.get $7 i64.const 50 i64.lt_u if - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has i32.eqz if @@ -18351,10 +18330,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#get - local.get $3 + local.get $7 i32.wrap_i64 i32.const 20 i32.add @@ -18367,11 +18346,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#delete - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has if i32.const 0 @@ -18381,14 +18360,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 i64.const 1 i64.add - local.set $3 + local.set $7 br $for-loop|3 end end - local.get $4 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -18401,14 +18380,14 @@ unreachable end i64.const 0 - local.set $3 + local.set $7 loop $for-loop|4 - local.get $3 + local.get $7 i64.const 50 i64.lt_u if - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has if i32.const 0 @@ -18418,15 +18397,15 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 - local.get $3 + local.get $11 + local.get $7 + local.get $7 i32.wrap_i64 i32.const 10 i32.add call $~lib/map/Map#set - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has i32.eqz if @@ -18437,11 +18416,11 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#delete - local.get $4 - local.get $3 + local.get $11 + local.get $7 call $~lib/map/Map#has if i32.const 0 @@ -18451,14 +18430,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 i64.const 1 i64.add - local.set $3 + local.set $7 br $for-loop|4 end end - local.get $4 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -18470,9 +18449,9 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $11 call $~lib/map/Map#clear - local.get $4 + local.get $11 i32.load offset=20 if i32.const 0 @@ -18498,11 +18477,11 @@ (func $~lib/map/Map#rehash (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) + (local $4 f32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 f32) + (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -18531,7 +18510,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -18547,37 +18526,37 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $8 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $7 + local.set $5 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $5 + local.get $8 i32.ne if - local.get $4 + local.get $8 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $4 + local.get $8 f32.load - local.tee $8 + local.tee $4 f32.store local.get $2 - local.get $4 + local.get $8 i32.load offset=4 i32.store offset=4 local.get $2 - local.get $8 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -18610,7 +18589,7 @@ i32.and i32.const 2 i32.shl - local.get $5 + local.get $7 i32.add local.tee $9 i32.load @@ -18623,20 +18602,20 @@ i32.add local.set $2 end - local.get $4 + local.get $8 i32.const 12 i32.add - local.set $4 + local.set $8 br $while-continue|0 end end local.get $0 - local.get $5 + local.get $7 i32.store - local.get $5 + local.get $7 if local.get $0 - local.get $5 + local.get $7 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -18872,17 +18851,17 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 f32) + (local $4 i32) (local $5 i32) - (local $6 i32) + (local $6 f32) (local $7 i32) (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 f32) - (local $14 i32) + (local $13 i32) + (local $14 f32) (local $15 i32) (local $16 i32) (local $17 i32) @@ -18921,40 +18900,40 @@ i32.const 24 i32.const 26 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $9 i32.store - local.get $3 + local.get $9 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $2 i32.store local.get $2 if - local.get $3 + local.get $9 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 + local.get $9 i32.const 3 i32.store offset=4 - local.get $3 + local.get $9 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $2 i32.store offset=8 local.get $2 if - local.get $3 + local.get $9 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 + local.get $9 i32.const 4 i32.store offset=12 - local.get $3 + local.get $9 i32.const 0 i32.store offset=16 - local.get $3 + local.get $9 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer @@ -18962,18 +18941,18 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $1 - local.get $3 + local.get $9 i32.store loop $for-loop|0 - local.get $4 + local.get $6 f32.const 100 f32.lt if - local.get $3 + local.get $9 i32.load - local.get $3 + local.get $9 i32.load offset=4 - local.get $4 + local.get $6 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19020,7 +18999,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $6 local.get $1 f32.load f32.eq @@ -19045,18 +19024,18 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $4 - local.get $4 + local.get $9 + local.get $6 + local.get $6 i32.trunc_f32_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $3 + local.get $9 i32.load - local.get $3 + local.get $9 i32.load offset=4 - local.get $4 + local.get $6 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19103,7 +19082,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $6 local.get $1 f32.load f32.eq @@ -19129,10 +19108,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $4 + local.get $9 + local.get $6 call $~lib/map/Map#get - local.get $4 + local.get $6 i32.trunc_f32_s i32.const 10 i32.add @@ -19145,14 +19124,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 f32.const 1 f32.add - local.set $4 + local.set $6 br $for-loop|0 end end - local.get $3 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -19165,17 +19144,17 @@ unreachable end f32.const 0 - local.set $4 + local.set $6 loop $for-loop|1 - local.get $4 + local.get $6 f32.const 100 f32.lt if - local.get $3 + local.get $9 i32.load - local.get $3 + local.get $9 i32.load offset=4 - local.get $4 + local.get $6 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19222,7 +19201,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $6 local.get $1 f32.load f32.eq @@ -19248,10 +19227,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $4 + local.get $9 + local.get $6 call $~lib/map/Map#get - local.get $4 + local.get $6 i32.trunc_f32_s i32.const 10 i32.add @@ -19264,18 +19243,18 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $4 - local.get $4 + local.get $9 + local.get $6 + local.get $6 i32.trunc_f32_s i32.const 20 i32.add call $~lib/map/Map#set - local.get $3 + local.get $9 i32.load - local.get $3 + local.get $9 i32.load offset=4 - local.get $4 + local.get $6 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19322,7 +19301,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $6 local.get $1 f32.load f32.eq @@ -19348,10 +19327,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $4 + local.get $9 + local.get $6 call $~lib/map/Map#get - local.get $4 + local.get $6 i32.trunc_f32_s i32.const 20 i32.add @@ -19364,14 +19343,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 f32.const 1 f32.add - local.set $4 + local.set $6 br $for-loop|1 end end - local.get $3 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -19394,17 +19373,17 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $2 i32.const 0 i32.store - local.get $3 + local.get $9 i32.load offset=8 - local.set $11 - local.get $3 - i32.load offset=16 - local.tee $12 local.set $5 - local.get $8 + local.get $9 + i32.load offset=16 + local.tee $8 + local.set $10 + local.get $2 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -19434,7 +19413,7 @@ local.get $1 i32.const 0 i32.store offset=12 - local.get $5 + local.get $10 i32.const 268435455 i32.gt_u if @@ -19446,58 +19425,58 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $10 i32.const 8 - local.get $5 + local.get $10 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $9 + local.tee $11 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $12 i32.store offset=4 - local.get $2 - local.get $9 + local.get $12 + local.get $11 call $~lib/memory/memory.fill local.get $1 - local.get $2 + local.get $12 i32.store - local.get $2 + local.get $12 if local.get $1 - local.get $2 + local.get $12 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $1 - local.get $2 + local.get $12 i32.store offset=4 local.get $1 - local.get $9 + local.get $11 i32.store offset=8 local.get $1 - local.get $5 + local.get $10 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 + local.get $2 local.get $1 i32.store loop $for-loop|01 - local.get $6 - local.get $12 + local.get $3 + local.get $8 i32.lt_s if - local.get $6 + local.get $3 i32.const 12 i32.mul - local.get $11 + local.get $5 i32.add - local.tee $5 + local.tee $10 i32.load offset=8 i32.const 1 i32.and @@ -19508,9 +19487,9 @@ i32.const 1 i32.add local.set $0 - local.get $5 + local.get $10 f32.load - local.set $4 + local.set $6 local.get $1 i32.load offset=12 local.get $2 @@ -19531,12 +19510,12 @@ local.get $2 i32.const 1 i32.add - local.tee $5 + local.tee $10 i32.const 2 i32.const 1 call $~lib/array/ensureCapacity local.get $1 - local.get $5 + local.get $10 i32.store offset=12 end local.get $1 @@ -19545,13 +19524,13 @@ i32.const 2 i32.shl i32.add - local.get $4 + local.get $6 f32.store end - local.get $6 + local.get $3 i32.const 1 i32.add - local.set $6 + local.set $3 br $for-loop|01 end end @@ -19570,9 +19549,9 @@ local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $9 call $~lib/map/Map#values - local.tee $12 + local.tee $10 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -19584,58 +19563,58 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.const 28 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $11 i32.store - local.get $5 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 if - local.get $5 - local.get $0 + local.get $11 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 + local.get $11 i32.const 3 i32.store offset=4 - local.get $5 + local.get $11 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $2 i32.store offset=8 - local.get $0 + local.get $2 if - local.get $5 - local.get $0 + local.get $11 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 + local.get $11 i32.const 4 i32.store offset=12 - local.get $5 + local.get $11 i32.const 0 i32.store offset=16 - local.get $5 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $11 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $10 + local.tee $12 i32.store offset=16 loop $for-loop|2 local.get $1 @@ -19662,16 +19641,16 @@ i32.shl i32.add f32.load - local.set $4 - local.get $12 + local.set $6 + local.get $10 local.get $7 call $~lib/array/Array#__get - local.set $11 - local.get $3 + local.set $13 + local.get $9 i32.load - local.get $3 + local.get $9 i32.load offset=4 - local.get $4 + local.get $6 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19718,7 +19697,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $6 local.get $0 f32.load f32.eq @@ -19744,15 +19723,15 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $9 i32.load - local.get $3 + local.get $9 i32.load offset=4 - local.get $11 + local.get $13 i32.const 20 i32.sub f32.convert_i32_s - local.tee $13 + local.tee $14 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19799,7 +19778,7 @@ if (result i32) i32.const 0 else - local.get $13 + local.get $14 local.get $0 f32.load f32.eq @@ -19836,9 +19815,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $5 + local.get $11 i32.load - local.get $4 + local.get $6 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19867,8 +19846,8 @@ i32.shr_u local.get $0 i32.xor - local.tee $14 - local.get $5 + local.tee $5 + local.get $11 i32.load offset=4 i32.and i32.const 2 @@ -19888,7 +19867,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $6 local.get $0 f32.load f32.eq @@ -19907,18 +19886,18 @@ local.get $0 if local.get $0 - local.get $4 + local.get $6 f32.store offset=4 else - local.get $5 + local.get $11 i32.load offset=16 - local.get $5 + local.get $11 i32.load offset=12 i32.eq if - local.get $5 + local.get $11 i32.load offset=20 - local.get $5 + local.get $11 i32.load offset=12 i32.const 3 i32.mul @@ -19926,17 +19905,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $5 + local.get $11 i32.load offset=4 else - local.get $5 + local.get $11 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $9 + local.set $15 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -19950,14 +19929,14 @@ i64.const 0 i64.store local.get $0 - local.get $9 + local.get $15 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $8 + local.tee $16 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -19965,45 +19944,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $15 + local.tee $4 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $2 i32.store offset=4 - local.get $5 + local.get $11 i32.load offset=8 - local.tee $6 - local.get $5 + local.tee $8 + local.get $11 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $16 + local.set $3 local.get $2 local.set $0 loop $while-continue|017 - local.get $6 - local.get $16 + local.get $3 + local.get $8 i32.ne if - local.get $6 + local.get $8 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $6 + local.get $8 f32.load - local.tee $13 + local.tee $14 f32.store local.get $0 - local.get $6 + local.get $8 f32.load offset=4 f32.store offset=4 local.get $0 - local.get $13 + local.get $14 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20032,11 +20011,11 @@ i32.shr_u local.get $17 i32.xor - local.get $9 + local.get $15 i32.and i32.const 2 i32.shl - local.get $8 + local.get $16 i32.add local.tee $17 i32.load @@ -20049,39 +20028,39 @@ i32.add local.set $0 end - local.get $6 + local.get $8 i32.const 12 i32.add - local.set $6 + local.set $8 br $while-continue|017 end end - local.get $5 - local.get $8 + local.get $11 + local.get $16 i32.store - local.get $8 + local.get $16 if - local.get $5 - local.get $8 + local.get $11 + local.get $16 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 - local.get $9 + local.get $11 + local.get $15 i32.store offset=4 - local.get $5 + local.get $11 local.get $2 i32.store offset=8 local.get $2 if - local.get $5 + local.get $11 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 - local.get $15 + local.get $11 + local.get $4 i32.store offset=12 - local.get $5 - local.get $5 + local.get $11 + local.get $11 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -20090,12 +20069,12 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $11 i32.load offset=8 local.tee $0 i32.store - local.get $5 - local.get $5 + local.get $11 + local.get $11 i32.load offset=16 local.tee $2 i32.const 1 @@ -20107,23 +20086,23 @@ local.get $0 i32.add local.tee $0 - local.get $4 + local.get $6 f32.store local.get $0 - local.get $4 + local.get $6 f32.store offset=4 - local.get $5 - local.get $5 + local.get $11 + local.get $11 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $5 + local.get $11 i32.load - local.get $5 + local.get $11 i32.load offset=4 - local.get $14 + local.get $5 i32.and i32.const 2 i32.shl @@ -20139,8 +20118,8 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 - local.get $11 + local.get $12 + local.get $13 i32.const 20 i32.sub local.tee $0 @@ -20153,7 +20132,7 @@ br $for-loop|2 end end - local.get $5 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -20165,7 +20144,7 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $12 i32.load offset=20 i32.const 100 i32.ne @@ -20178,17 +20157,17 @@ unreachable end f32.const 0 - local.set $4 + local.set $6 loop $for-loop|3 - local.get $4 + local.get $6 f32.const 50 f32.lt if - local.get $3 + local.get $9 i32.load - local.get $3 + local.get $9 i32.load offset=4 - local.get $4 + local.get $6 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20235,7 +20214,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $6 local.get $1 f32.load f32.eq @@ -20261,10 +20240,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $4 + local.get $9 + local.get $6 call $~lib/map/Map#get - local.get $4 + local.get $6 i32.trunc_f32_s i32.const 20 i32.add @@ -20277,14 +20256,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $4 + local.get $9 + local.get $6 call $~lib/map/Map#delete - local.get $3 + local.get $9 i32.load - local.get $3 + local.get $9 i32.load offset=4 - local.get $4 + local.get $6 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20331,7 +20310,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $6 local.get $1 f32.load f32.eq @@ -20356,14 +20335,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 f32.const 1 f32.add - local.set $4 + local.set $6 br $for-loop|3 end end - local.get $3 + local.get $9 i32.load offset=20 i32.const 50 i32.ne @@ -20376,17 +20355,17 @@ unreachable end f32.const 0 - local.set $4 + local.set $6 loop $for-loop|4 - local.get $4 + local.get $6 f32.const 50 f32.lt if - local.get $3 + local.get $9 i32.load - local.get $3 + local.get $9 i32.load offset=4 - local.get $4 + local.get $6 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20433,7 +20412,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $6 local.get $1 f32.load f32.eq @@ -20458,18 +20437,18 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $4 - local.get $4 + local.get $9 + local.get $6 + local.get $6 i32.trunc_f32_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $3 + local.get $9 i32.load - local.get $3 + local.get $9 i32.load offset=4 - local.get $4 + local.get $6 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20516,7 +20495,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $6 local.get $1 f32.load f32.eq @@ -20542,14 +20521,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $4 + local.get $9 + local.get $6 call $~lib/map/Map#delete - local.get $3 + local.get $9 i32.load - local.get $3 + local.get $9 i32.load offset=4 - local.get $4 + local.get $6 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20596,7 +20575,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $6 local.get $1 f32.load f32.eq @@ -20621,14 +20600,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 f32.const 1 f32.add - local.set $4 + local.set $6 br $for-loop|4 end end - local.get $3 + local.get $9 i32.load offset=20 i32.const 50 i32.ne @@ -20640,9 +20619,9 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $9 call $~lib/map/Map#clear - local.get $3 + local.get $9 i32.load offset=20 if i32.const 0 @@ -20755,12 +20734,12 @@ (func $~lib/map/Map#rehash (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) + (local $4 i64) + (local $5 f64) (local $6 i32) (local $7 i32) - (local $8 f64) - (local $9 i64) + (local $8 i32) + (local $9 i32) (local $10 i32) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -20789,7 +20768,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $8 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -20797,7 +20776,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $7 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -20805,40 +20784,40 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $9 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $7 + local.set $6 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $6 + local.get $9 i32.ne if - local.get $4 + local.get $9 i32.load offset=12 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $4 + local.get $9 f64.load - local.tee $8 + local.tee $5 f64.store local.get $2 - local.get $4 + local.get $9 i32.load offset=8 i32.store offset=8 local.get $2 local.get $1 - local.get $8 + local.get $5 i64.reinterpret_f64 - local.tee $9 + local.tee $4 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -20848,7 +20827,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $9 + local.get $4 i64.const 32 i64.shr_u i32.wrap_i64 @@ -20881,7 +20860,7 @@ i32.and i32.const 2 i32.shl - local.get $5 + local.get $8 i32.add local.tee $10 i32.load @@ -20894,20 +20873,20 @@ i32.add local.set $2 end - local.get $4 + local.get $9 i32.const 16 i32.add - local.set $4 + local.set $9 br $while-continue|0 end end local.get $0 - local.get $5 + local.get $8 i32.store - local.get $5 + local.get $8 if local.get $0 - local.get $5 + local.get $8 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -20923,7 +20902,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -21174,17 +21153,17 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) + (local $7 i64) (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) - (local $14 i32) + (local $13 i32) + (local $14 f64) (local $15 i32) (local $16 i32) - (local $17 f64) + (local $17 i32) (local $18 i32) global.get $~lib/memory/__stack_pointer i32.const 20 @@ -21221,40 +21200,40 @@ i32.const 24 i32.const 29 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $10 i32.store - local.get $4 + local.get $10 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $2 i32.store local.get $2 if - local.get $4 + local.get $10 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $10 i32.const 3 i32.store offset=4 - local.get $4 + local.get $10 i32.const 64 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $2 i32.store offset=8 local.get $2 if - local.get $4 + local.get $10 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 + local.get $10 i32.const 4 i32.store offset=12 - local.get $4 + local.get $10 i32.const 0 i32.store offset=16 - local.get $4 + local.get $10 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer @@ -21262,14 +21241,14 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $1 - local.get $4 + local.get $10 i32.store loop $for-loop|0 local.get $3 f64.const 100 f64.lt if - local.get $4 + local.get $10 local.get $3 call $~lib/map/Map#has if @@ -21280,14 +21259,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 local.get $3 local.get $3 i32.trunc_f64_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $4 + local.get $10 local.get $3 call $~lib/map/Map#has i32.eqz @@ -21299,7 +21278,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 local.get $3 call $~lib/map/Map#get local.get $3 @@ -21322,7 +21301,7 @@ br $for-loop|0 end end - local.get $4 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -21341,7 +21320,7 @@ f64.const 100 f64.lt if - local.get $4 + local.get $10 local.get $3 call $~lib/map/Map#has i32.eqz @@ -21353,7 +21332,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 local.get $3 call $~lib/map/Map#get local.get $3 @@ -21369,14 +21348,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 local.get $3 local.get $3 i32.trunc_f64_s i32.const 20 i32.add call $~lib/map/Map#set - local.get $4 + local.get $10 local.get $3 call $~lib/map/Map#has i32.eqz @@ -21388,7 +21367,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 local.get $3 call $~lib/map/Map#get local.get $3 @@ -21411,7 +21390,7 @@ br $for-loop|1 end end - local.get $4 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -21434,17 +21413,17 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $2 i32.const 0 i32.store - local.get $4 + local.get $10 i32.load offset=8 - local.set $11 - local.get $4 + local.set $6 + local.get $10 i32.load offset=16 - local.tee $12 - local.set $5 - local.get $8 + local.tee $9 + local.set $11 + local.get $2 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -21474,7 +21453,7 @@ local.get $1 i32.const 0 i32.store offset=12 - local.get $5 + local.get $11 i32.const 134217727 i32.gt_u if @@ -21486,58 +21465,58 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $11 i32.const 8 - local.get $5 + local.get $11 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $9 + local.tee $12 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $13 i32.store offset=4 - local.get $2 - local.get $9 + local.get $13 + local.get $12 call $~lib/memory/memory.fill local.get $1 - local.get $2 + local.get $13 i32.store - local.get $2 + local.get $13 if local.get $1 - local.get $2 + local.get $13 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $1 - local.get $2 + local.get $13 i32.store offset=4 local.get $1 - local.get $9 + local.get $12 i32.store offset=8 local.get $1 - local.get $5 + local.get $11 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 + local.get $2 local.get $1 i32.store loop $for-loop|01 - local.get $6 - local.get $12 + local.get $4 + local.get $9 i32.lt_s if - local.get $6 + local.get $4 i32.const 4 i32.shl - local.get $11 + local.get $6 i32.add - local.tee $5 + local.tee $11 i32.load offset=12 i32.const 1 i32.and @@ -21548,7 +21527,7 @@ i32.const 1 i32.add local.set $0 - local.get $5 + local.get $11 f64.load local.set $3 local.get $1 @@ -21571,12 +21550,12 @@ local.get $2 i32.const 1 i32.add - local.tee $5 + local.tee $11 i32.const 3 i32.const 1 call $~lib/array/ensureCapacity local.get $1 - local.get $5 + local.get $11 i32.store offset=12 end local.get $1 @@ -21588,10 +21567,10 @@ local.get $3 f64.store end - local.get $6 + local.get $4 i32.const 1 i32.add - local.set $6 + local.set $4 br $for-loop|01 end end @@ -21610,9 +21589,9 @@ local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $10 call $~lib/map/Map#values - local.tee $12 + local.tee $11 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -21624,68 +21603,68 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.const 31 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $12 i32.store - local.get $5 + local.get $12 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 if - local.get $5 - local.get $0 + local.get $12 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 + local.get $12 i32.const 3 i32.store offset=4 - local.get $5 + local.get $12 i32.const 96 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $2 i32.store offset=8 - local.get $0 + local.get $2 if - local.get $5 - local.get $0 + local.get $12 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 + local.get $12 i32.const 4 i32.store offset=12 - local.get $5 + local.get $12 i32.const 0 i32.store offset=16 - local.get $5 + local.get $12 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $12 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $10 + local.tee $13 i32.store offset=16 loop $for-loop|2 local.get $1 i32.load offset=12 - local.get $7 + local.get $8 i32.gt_s if local.get $1 i32.load offset=12 - local.get $7 + local.get $8 i32.le_u if i32.const 1248 @@ -21697,18 +21676,18 @@ end local.get $1 i32.load offset=4 - local.get $7 + local.get $8 i32.const 3 i32.shl i32.add f64.load - local.set $3 - local.get $12 - local.get $7 + local.set $14 + local.get $11 + local.get $8 call $~lib/array/Array#__get - local.set $11 - local.get $4 - local.get $3 + local.set $15 + local.get $10 + local.get $14 call $~lib/map/Map#has i32.eqz if @@ -21719,8 +21698,8 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $11 + local.get $10 + local.get $15 i32.const 20 i32.sub f64.convert_i32_s @@ -21745,11 +21724,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $5 + local.get $12 i32.load - local.get $3 + local.get $14 i64.reinterpret_f64 - local.tee $13 + local.tee $7 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -21759,7 +21738,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $13 + local.get $7 i64.const 32 i64.shr_u i32.wrap_i64 @@ -21789,8 +21768,8 @@ i32.shr_u local.get $0 i32.xor - local.tee $14 - local.get $5 + local.tee $6 + local.get $12 i32.load offset=4 i32.and i32.const 2 @@ -21810,7 +21789,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $14 local.get $0 f64.load f64.eq @@ -21829,18 +21808,18 @@ local.get $0 if local.get $0 - local.get $3 + local.get $14 f64.store offset=8 else - local.get $5 + local.get $12 i32.load offset=16 - local.get $5 + local.get $12 i32.load offset=12 i32.eq if - local.get $5 + local.get $12 i32.load offset=20 - local.get $5 + local.get $12 i32.load offset=12 i32.const 3 i32.mul @@ -21848,17 +21827,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $5 + local.get $12 i32.load offset=4 else - local.get $5 + local.get $12 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $9 + local.set $16 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -21872,14 +21851,14 @@ i64.const 0 i64.store local.get $0 - local.get $9 + local.get $16 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $8 + local.tee $17 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -21887,48 +21866,48 @@ i32.shl i32.const 3 i32.div_s - local.tee $15 + local.tee $5 i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $2 i32.store offset=4 - local.get $5 + local.get $12 i32.load offset=8 - local.tee $6 - local.get $5 + local.tee $9 + local.get $12 i32.load offset=16 i32.const 24 i32.mul i32.add - local.set $16 + local.set $4 local.get $2 local.set $0 loop $while-continue|00 - local.get $6 - local.get $16 + local.get $4 + local.get $9 i32.ne if - local.get $6 + local.get $9 i32.load offset=16 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $6 + local.get $9 f64.load - local.tee $17 + local.tee $3 f64.store local.get $0 - local.get $6 + local.get $9 f64.load offset=8 f64.store offset=8 local.get $0 - local.get $9 - local.get $17 + local.get $16 + local.get $3 i64.reinterpret_f64 - local.tee $13 + local.tee $7 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -21938,7 +21917,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $13 + local.get $7 i64.const 32 i64.shr_u i32.wrap_i64 @@ -21971,7 +21950,7 @@ i32.and i32.const 2 i32.shl - local.get $8 + local.get $17 i32.add local.tee $18 i32.load @@ -21984,39 +21963,39 @@ i32.add local.set $0 end - local.get $6 + local.get $9 i32.const 24 i32.add - local.set $6 + local.set $9 br $while-continue|00 end end - local.get $5 - local.get $8 + local.get $12 + local.get $17 i32.store - local.get $8 + local.get $17 if - local.get $5 - local.get $8 + local.get $12 + local.get $17 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 - local.get $9 + local.get $12 + local.get $16 i32.store offset=4 - local.get $5 + local.get $12 local.get $2 i32.store offset=8 local.get $2 if - local.get $5 + local.get $12 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $12 local.get $5 - local.get $15 i32.store offset=12 - local.get $5 - local.get $5 + local.get $12 + local.get $12 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -22025,12 +22004,12 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $12 i32.load offset=8 local.tee $0 i32.store - local.get $5 - local.get $5 + local.get $12 + local.get $12 i32.load offset=16 local.tee $2 i32.const 1 @@ -22042,23 +22021,23 @@ local.get $0 i32.add local.tee $0 - local.get $3 + local.get $14 f64.store local.get $0 - local.get $3 + local.get $14 f64.store offset=8 - local.get $5 - local.get $5 + local.get $12 + local.get $12 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $5 + local.get $12 i32.load - local.get $5 + local.get $12 i32.load offset=4 - local.get $14 + local.get $6 i32.and i32.const 2 i32.shl @@ -22074,21 +22053,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 - local.get $11 + local.get $13 + local.get $15 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $7 + local.get $8 i32.const 1 i32.add - local.set $7 + local.set $8 br $for-loop|2 end end - local.get $5 + local.get $12 i32.load offset=20 i32.const 100 i32.ne @@ -22100,7 +22079,7 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $13 i32.load offset=20 i32.const 100 i32.ne @@ -22119,7 +22098,7 @@ f64.const 50 f64.lt if - local.get $4 + local.get $10 local.get $3 call $~lib/map/Map#has i32.eqz @@ -22131,7 +22110,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 local.get $3 call $~lib/map/Map#get local.get $3 @@ -22147,10 +22126,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 local.get $3 call $~lib/map/Map#delete - local.get $4 + local.get $10 local.get $3 call $~lib/map/Map#has if @@ -22168,7 +22147,7 @@ br $for-loop|3 end end - local.get $4 + local.get $10 i32.load offset=20 i32.const 50 i32.ne @@ -22187,7 +22166,7 @@ f64.const 50 f64.lt if - local.get $4 + local.get $10 local.get $3 call $~lib/map/Map#has if @@ -22198,14 +22177,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 local.get $3 local.get $3 i32.trunc_f64_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $4 + local.get $10 local.get $3 call $~lib/map/Map#has i32.eqz @@ -22217,10 +22196,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 local.get $3 call $~lib/map/Map#delete - local.get $4 + local.get $10 local.get $3 call $~lib/map/Map#has if @@ -22238,7 +22217,7 @@ br $for-loop|4 end end - local.get $4 + local.get $10 i32.load offset=20 i32.const 50 i32.ne @@ -22250,9 +22229,9 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 call $~lib/map/Map#clear - local.get $4 + local.get $10 i32.load offset=20 if i32.const 0 @@ -22660,18 +22639,18 @@ i32.const 16 i32.const 5 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 i32.store - local.get $1 + local.get $3 i32.const 0 i32.store offset=4 - local.get $1 + local.get $3 i32.const 0 i32.store offset=8 - local.get $1 + local.get $3 i32.const 0 i32.store offset=12 local.get $0 @@ -22694,37 +22673,37 @@ select i32.const 2 i32.shl - local.tee $3 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store offset=4 + local.get $1 local.get $2 - local.get $3 call $~lib/memory/memory.fill + local.get $3 local.get $1 - local.get $2 i32.store - local.get $2 + local.get $1 if + local.get $3 local.get $1 - local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $3 local.get $1 - local.get $2 i32.store offset=4 - local.get $1 local.get $3 + local.get $2 i32.store offset=8 - local.get $1 + local.get $3 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $3 ) (func $~lib/map/Map#values (param $0 i32) (result i32) (local $1 i32) @@ -22748,38 +22727,38 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $4 i32.const 0 i32.store local.get $0 i32.load offset=8 - local.set $4 - local.get $3 + local.set $3 + local.get $4 local.get $0 i32.load offset=16 - local.tee $3 + local.tee $4 call $~lib/array/Array#constructor - local.tee $0 + local.tee $5 i32.store loop $for-loop|0 local.get $2 - local.get $3 + local.get $4 i32.lt_s if local.get $2 i32.const 12 i32.mul - local.get $4 + local.get $3 i32.add - local.tee $5 + local.tee $0 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $0 - local.get $1 local.get $5 + local.get $1 + local.get $0 i32.load offset=4 call $~lib/array/Array#__set local.get $1 @@ -22794,19 +22773,19 @@ br $for-loop|0 end end - local.get $0 + local.get $5 local.get $1 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $0 + local.get $5 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $5 ) (func $~lib/map/Map#constructor (result i32) (local $0 i32) @@ -23976,38 +23955,38 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $4 i32.const 0 i32.store local.get $0 i32.load offset=8 - local.set $4 - local.get $3 + local.set $3 + local.get $4 local.get $0 i32.load offset=16 - local.tee $3 + local.tee $4 call $~lib/array/Array#constructor - local.tee $0 + local.tee $5 i32.store loop $for-loop|0 local.get $2 - local.get $3 + local.get $4 i32.lt_s if local.get $2 i32.const 4 i32.shl - local.get $4 + local.get $3 i32.add - local.tee $5 + local.tee $0 i32.load offset=12 i32.const 1 i32.and i32.eqz if - local.get $0 - local.get $1 local.get $5 + local.get $1 + local.get $0 i32.load offset=8 call $~lib/array/Array#__set local.get $1 @@ -24022,19 +24001,19 @@ br $for-loop|0 end end - local.get $0 + local.get $5 local.get $1 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $0 + local.get $5 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $5 ) (func $~lib/map/Map#set (param $0 i32) (param $1 i64) (param $2 i32) (local $3 i32) diff --git a/tests/compiler/std/math.optimized.wat b/tests/compiler/std/math.optimized.wat index dbb9bfb772..2a3db3be81 100644 --- a/tests/compiler/std/math.optimized.wat +++ b/tests/compiler/std/math.optimized.wat @@ -562,15 +562,15 @@ ) (func $~lib/math/NativeMath.acos (param $0 f64) (result f64) (local $1 i32) - (local $2 f64) - (local $3 i32) + (local $2 i32) + (local $3 f64) (local $4 f64) local.get $0 i64.reinterpret_f64 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $3 + local.tee $2 i32.const 2147483647 i32.and local.tee $1 @@ -586,7 +586,7 @@ i32.or i32.eqz if - local.get $3 + local.get $2 i32.const 31 i32.shr_u if @@ -668,7 +668,7 @@ f64.sub return end - local.get $3 + local.get $2 i32.const 31 i32.shr_u if @@ -680,7 +680,7 @@ f64.add local.tee $0 f64.sqrt - local.tee $2 + local.tee $3 local.get $0 local.get $0 local.get $0 @@ -722,7 +722,7 @@ f64.const 1 f64.add f64.div - local.get $2 + local.get $3 f64.mul f64.const 6.123233995736766e-17 f64.sub @@ -737,20 +737,20 @@ f64.const 0.5 f64.mul f64.sub - local.tee $0 + local.tee $3 f64.sqrt - local.tee $4 + local.tee $0 i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $2 - local.get $0 - local.get $0 - local.get $0 - local.get $0 - local.get $0 - local.get $0 + local.tee $4 + local.get $3 + local.get $3 + local.get $3 + local.get $3 + local.get $3 + local.get $3 f64.const 3.479331075960212e-05 f64.mul f64.const 7.915349942898145e-04 @@ -768,10 +768,10 @@ f64.const 0.16666666666666666 f64.add f64.mul - local.get $0 - local.get $0 - local.get $0 - local.get $0 + local.get $3 + local.get $3 + local.get $3 + local.get $3 f64.const 0.07703815055590194 f64.mul f64.const -0.6882839716054533 @@ -786,15 +786,15 @@ f64.const 1 f64.add f64.div - local.get $4 - f64.mul local.get $0 - local.get $2 - local.get $2 + f64.mul + local.get $3 + local.get $4 + local.get $4 f64.mul f64.sub + local.get $0 local.get $4 - local.get $2 f64.add f64.div f64.add @@ -966,28 +966,28 @@ ) (func $~lib/math/NativeMath.log1p (param $0 f64) (result f64) (local $1 f64) - (local $2 f64) - (local $3 f64) - (local $4 i32) - (local $5 i64) - (local $6 i32) + (local $2 i32) + (local $3 i64) + (local $4 f64) + (local $5 i32) + (local $6 f64) (local $7 f64) i32.const 1 - local.set $6 + local.set $2 local.get $0 i64.reinterpret_f64 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $4 + local.tee $5 i32.const 31 i32.shr_u - local.get $4 + local.get $5 i32.const 1071284858 i32.lt_u i32.or if - local.get $4 + local.get $5 i32.const -1074790400 i32.ge_u if @@ -1007,7 +1007,7 @@ f64.div return end - local.get $4 + local.get $5 i32.const 1 i32.shl i32.const 2034237440 @@ -1016,19 +1016,19 @@ local.get $0 return end - local.get $4 + local.get $5 i32.const -1076707644 i32.le_u if (result f64) i32.const 0 - local.set $6 + local.set $2 local.get $0 else f64.const 0 end local.set $1 else - local.get $4 + local.get $5 i32.const 2146435072 i32.ge_u if @@ -1036,29 +1036,29 @@ return end end - local.get $6 + local.get $2 if local.get $0 f64.const 1 f64.add i64.reinterpret_f64 - local.tee $5 + local.tee $3 i64.const 32 i64.shr_u i32.wrap_i64 i32.const 614242 i32.add - local.tee $4 + local.tee $5 i32.const 20 i32.shr_u i32.const 1023 i32.sub - local.tee $6 + local.tee $2 i32.const 54 i32.lt_s if (result f64) f64.const 1 - local.get $5 + local.get $3 f64.reinterpret_i64 local.tee $1 local.get $0 @@ -1069,7 +1069,7 @@ f64.const 1 f64.sub f64.sub - local.get $6 + local.get $2 i32.const 2 i32.ge_s select @@ -1078,11 +1078,11 @@ else f64.const 0 end - local.set $3 - local.get $5 + local.set $4 + local.get $3 i64.const 4294967295 i64.and - local.get $4 + local.get $5 i32.const 1048575 i32.and i32.const 1072079006 @@ -1101,20 +1101,20 @@ f64.const 2 f64.add f64.div - local.tee $2 - local.get $2 + local.tee $6 + local.get $6 f64.mul local.tee $0 local.get $0 f64.mul local.set $7 - local.get $2 + local.get $6 local.get $1 f64.const 0.5 f64.mul local.get $1 f64.mul - local.tee $2 + local.tee $6 local.get $0 local.get $7 local.get $7 @@ -1144,15 +1144,15 @@ f64.add f64.add f64.mul - local.get $6 + local.get $2 f64.convert_i32_s local.tee $0 f64.const 1.9082149292705877e-10 f64.mul - local.get $3 + local.get $4 f64.add f64.add - local.get $2 + local.get $6 f64.sub local.get $1 f64.add @@ -1163,10 +1163,10 @@ ) (func $~lib/math/NativeMath.log (param $0 f64) (result f64) (local $1 i64) - (local $2 f64) - (local $3 f64) - (local $4 i32) - (local $5 i64) + (local $2 i32) + (local $3 i64) + (local $4 f64) + (local $5 f64) (local $6 f64) (local $7 i32) block $~lib/util/math/log_lut|inlined.0 (result f64) @@ -1184,40 +1184,40 @@ local.tee $0 local.get $0 f64.mul - local.tee $2 + local.tee $4 local.get $0 f64.mul - local.tee $3 + local.tee $5 local.get $0 f64.const -0.24999999999998432 f64.mul f64.const 0.3333333333333352 f64.add - local.get $2 + local.get $4 f64.const 0.19999999999320328 f64.mul f64.add - local.get $3 + local.get $5 local.get $0 f64.const 0.14285715076560868 f64.mul f64.const -0.16666666669929706 f64.add - local.get $2 + local.get $4 f64.const -0.12499997863982555 f64.mul f64.add - local.get $3 + local.get $5 local.get $0 f64.const -0.10000486757818193 f64.mul f64.const 0.11110712032936046 f64.add - local.get $2 + local.get $4 f64.const 0.09181994006195467 f64.mul f64.add - local.get $3 + local.get $5 f64.const -0.08328363062289341 f64.mul f64.add @@ -1232,27 +1232,27 @@ local.get $0 f64.const 134217728 f64.mul - local.tee $2 + local.tee $4 f64.add - local.get $2 + local.get $4 f64.sub - local.tee $2 - local.get $2 + local.tee $4 + local.get $4 f64.mul f64.const -0.5 f64.mul - local.tee $3 + local.tee $5 f64.add local.tee $6 f64.sub - local.get $3 + local.get $5 f64.add local.get $0 - local.get $2 + local.get $4 f64.sub f64.const -0.5 f64.mul - local.get $2 + local.get $4 local.get $0 f64.add f64.mul @@ -1266,7 +1266,7 @@ i64.const 48 i64.shr_u i32.wrap_i64 - local.tee $4 + local.tee $2 i32.const 16 i32.sub i32.const 32736 @@ -1290,12 +1290,12 @@ br_if $~lib/util/math/log_lut|inlined.0 drop i32.const 1 - local.get $4 + local.get $2 i32.const 32752 i32.and i32.const 32752 i32.eq - local.get $4 + local.get $2 i32.const 32768 i32.and select @@ -1319,7 +1319,7 @@ local.get $1 i64.const 4604367669032910848 i64.sub - local.tee $5 + local.tee $3 i64.const 45 i64.shr_u i64.const 127 @@ -1330,20 +1330,20 @@ local.tee $7 i32.const 1088 i32.add - local.set $4 - local.get $5 + local.set $2 + local.get $3 i64.const 52 i64.shr_s f64.convert_i64_s - local.tee $3 + local.tee $0 f64.const 0.6931471805598903 f64.mul - local.get $4 + local.get $2 f64.load offset=8 f64.add - local.tee $6 + local.tee $4 local.get $1 - local.get $5 + local.get $3 i64.const -4503599627370496 i64.and i64.sub @@ -1357,38 +1357,38 @@ local.get $7 f64.load offset=8 f64.sub - local.get $4 + local.get $2 f64.load f64.mul - local.tee $0 + local.tee $5 f64.add - local.set $2 + local.set $6 + local.get $4 local.get $6 - local.get $2 f64.sub - local.get $0 + local.get $5 f64.add - local.get $3 + local.get $0 f64.const 5.497923018708371e-14 f64.mul f64.add - local.get $0 - local.get $0 + local.get $5 + local.get $5 f64.mul - local.tee $3 + local.tee $0 f64.const -0.5000000000000001 f64.mul f64.add + local.get $5 local.get $0 - local.get $3 f64.mul - local.get $0 + local.get $5 f64.const -0.2499999999622955 f64.mul f64.const 0.33333333331825593 f64.add - local.get $3 local.get $0 + local.get $5 f64.const -0.16667054827627667 f64.mul f64.const 0.20000304511814496 @@ -1397,7 +1397,7 @@ f64.add f64.mul f64.add - local.get $2 + local.get $6 f64.add end ) @@ -1485,13 +1485,13 @@ ) (func $~lib/math/NativeMathf.log1p (param $0 f32) (result f32) (local $1 f32) - (local $2 f32) + (local $2 i32) (local $3 f32) (local $4 i32) (local $5 f32) - (local $6 i32) + (local $6 f32) i32.const 1 - local.set $6 + local.set $2 local.get $0 i32.reinterpret_f32 local.tee $4 @@ -1536,7 +1536,7 @@ i32.le_u if (result f32) i32.const 0 - local.set $6 + local.set $2 local.get $0 else f32.const 0 @@ -1551,7 +1551,7 @@ return end end - local.get $6 + local.get $2 if local.get $0 f32.const 1 @@ -1565,7 +1565,7 @@ i32.shr_u i32.const 127 i32.sub - local.tee $6 + local.tee $2 i32.const 25 i32.lt_s if (result f32) @@ -1579,7 +1579,7 @@ f32.const 1 f32.sub f32.sub - local.get $6 + local.get $2 i32.const 2 i32.ge_s select @@ -1604,29 +1604,29 @@ f32.const 2 f32.add f32.div - local.tee $2 - local.get $2 + local.tee $5 + local.get $5 f32.mul - local.tee $0 - local.get $0 + local.tee $6 + local.get $6 f32.mul - local.set $5 - local.get $2 + local.set $0 + local.get $5 local.get $1 f32.const 0.5 f32.mul local.get $1 f32.mul - local.tee $2 + local.tee $5 + local.get $6 local.get $0 - local.get $5 f32.const 0.2849878668785095 f32.mul f32.const 0.6666666269302368 f32.add f32.mul - local.get $5 - local.get $5 + local.get $0 + local.get $0 f32.const 0.24279078841209412 f32.mul f32.const 0.40000972151756287 @@ -1635,7 +1635,7 @@ f32.add f32.add f32.mul - local.get $6 + local.get $2 f32.convert_i32_s local.tee $0 f32.const 9.05800061445916e-06 @@ -1643,7 +1643,7 @@ local.get $3 f32.add f32.add - local.get $2 + local.get $5 f32.sub local.get $1 f32.add @@ -1709,7 +1709,7 @@ local.get $1 i32.const 1060306944 i32.sub - local.tee $4 + local.tee $3 i32.const 19 i32.shr_u i32.const 15 @@ -1718,44 +1718,44 @@ i32.shl i32.const 5184 i32.add - local.set $3 + local.set $4 local.get $1 - local.get $4 + local.get $3 i32.const -8388608 i32.and i32.sub f32.reinterpret_i32 f64.promote_f32 - local.get $3 + local.get $4 f64.load f64.mul f64.const 1 f64.sub - local.tee $5 - local.get $5 + local.tee $2 + local.get $2 f64.mul - local.set $2 - local.get $5 + local.set $5 + local.get $2 f64.const 0.333456765744066 f64.mul f64.const -0.4999997485802103 f64.add - local.get $2 + local.get $5 f64.const -0.25089342214237154 f64.mul f64.add - local.get $2 + local.get $5 f64.mul - local.get $3 - f64.load offset=8 local.get $4 + f64.load offset=8 + local.get $3 i32.const 23 i32.shr_s f64.convert_i32_s f64.const 0.6931471805599453 f64.mul f64.add - local.get $5 + local.get $2 f64.add f64.add f32.demote_f64 @@ -1817,26 +1817,26 @@ call $std/math/check ) (func $~lib/math/NativeMath.asin (param $0 f64) (result f64) - (local $1 f64) - (local $2 i32) - (local $3 f64) - (local $4 i32) + (local $1 i32) + (local $2 f64) + (local $3 i32) + (local $4 f64) local.get $0 i64.reinterpret_f64 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $4 + local.tee $3 i32.const 2147483647 i32.and - local.tee $2 + local.tee $1 i32.const 1072693248 i32.ge_u if local.get $0 i64.reinterpret_f64 i32.wrap_i64 - local.get $2 + local.get $1 i32.const 1072693248 i32.sub i32.or @@ -1856,14 +1856,14 @@ f64.div return end - local.get $2 + local.get $1 i32.const 1071644672 i32.lt_u if - local.get $2 + local.get $1 i32.const 1045430272 i32.lt_u - local.get $2 + local.get $1 i32.const 1048576 i32.ge_u i32.and @@ -1927,15 +1927,15 @@ f64.const 0.5 f64.mul f64.sub - local.tee $0 + local.tee $4 f64.sqrt - local.set $1 - local.get $0 - local.get $0 - local.get $0 - local.get $0 - local.get $0 - local.get $0 + local.set $0 + local.get $4 + local.get $4 + local.get $4 + local.get $4 + local.get $4 + local.get $4 f64.const 3.479331075960212e-05 f64.mul f64.const 7.915349942898145e-04 @@ -1953,10 +1953,10 @@ f64.const 0.16666666666666666 f64.add f64.mul - local.get $0 - local.get $0 - local.get $0 - local.get $0 + local.get $4 + local.get $4 + local.get $4 + local.get $4 f64.const 0.07703815055590194 f64.mul f64.const -0.6882839716054533 @@ -1971,15 +1971,15 @@ f64.const 1 f64.add f64.div - local.set $3 - local.get $2 + local.set $2 + local.get $1 i32.const 1072640819 i32.ge_u if (result f64) f64.const 1.5707963267948966 - local.get $1 - local.get $1 - local.get $3 + local.get $0 + local.get $0 + local.get $2 f64.mul f64.add f64.const 2 @@ -1989,24 +1989,24 @@ f64.sub else f64.const 0.7853981633974483 - local.get $1 - local.get $1 + local.get $0 + local.get $0 f64.add - local.get $3 + local.get $2 f64.mul f64.const 6.123233995736766e-17 + local.get $4 local.get $0 - local.get $1 i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $0 - local.get $0 + local.tee $2 + local.get $2 f64.mul f64.sub - local.get $1 local.get $0 + local.get $2 f64.add f64.div f64.const 2 @@ -2014,15 +2014,15 @@ f64.sub f64.sub f64.const 0.7853981633974483 - local.get $0 - local.get $0 + local.get $2 + local.get $2 f64.add f64.sub f64.sub f64.sub end local.set $0 - local.get $4 + local.get $3 i32.const 31 i32.shr_u if @@ -2143,61 +2143,61 @@ f32.copysign ) (func $std/math/test_asinh (param $0 f64) (param $1 f64) (param $2 f64) (result i32) - (local $3 f64) + (local $3 i64) (local $4 i64) - (local $5 i64) + (local $5 f64) local.get $0 i64.reinterpret_f64 - local.tee $5 + local.tee $4 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.set $4 - local.get $5 + local.set $3 + local.get $4 i64.const 9223372036854775807 i64.and f64.reinterpret_i64 - local.set $3 - local.get $4 + local.set $5 + local.get $3 i64.const 1049 i64.ge_u if (result f64) - local.get $3 + local.get $5 call $~lib/math/NativeMath.log f64.const 0.6931471805599453 f64.add else - local.get $4 + local.get $3 i64.const 1024 i64.ge_u if (result f64) - local.get $3 - local.get $3 + local.get $5 + local.get $5 f64.add f64.const 1 - local.get $3 - local.get $3 + local.get $5 + local.get $5 f64.mul f64.const 1 f64.add f64.sqrt - local.get $3 + local.get $5 f64.add f64.div f64.add call $~lib/math/NativeMath.log else - local.get $4 + local.get $3 i64.const 997 i64.ge_u if (result f64) - local.get $3 - local.get $3 - local.get $3 + local.get $5 + local.get $5 + local.get $5 f64.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 f64.const 1 f64.add f64.sqrt @@ -2207,7 +2207,7 @@ f64.add call $~lib/math/NativeMath.log1p else - local.get $3 + local.get $5 end end end @@ -2227,54 +2227,54 @@ end ) (func $std/math/test_asinhf (param $0 f32) (param $1 f32) (param $2 f32) (result i32) - (local $3 f32) - (local $4 i32) + (local $3 i32) + (local $4 f32) local.get $0 i32.reinterpret_f32 i32.const 2147483647 i32.and - local.tee $4 + local.tee $3 f32.reinterpret_i32 - local.set $3 - local.get $4 + local.set $4 + local.get $3 i32.const 1166016512 i32.ge_u if (result f32) - local.get $3 + local.get $4 call $~lib/math/NativeMathf.log f32.const 0.6931471824645996 f32.add else - local.get $4 + local.get $3 i32.const 1073741824 i32.ge_u if (result f32) - local.get $3 - local.get $3 + local.get $4 + local.get $4 f32.add f32.const 1 - local.get $3 - local.get $3 + local.get $4 + local.get $4 f32.mul f32.const 1 f32.add f32.sqrt - local.get $3 + local.get $4 f32.add f32.div f32.add call $~lib/math/NativeMathf.log else - local.get $4 + local.get $3 i32.const 964689920 i32.ge_u if (result f32) - local.get $3 - local.get $3 - local.get $3 + local.get $4 + local.get $4 + local.get $4 f32.mul - local.tee $3 - local.get $3 + local.tee $4 + local.get $4 f32.const 1 f32.add f32.sqrt @@ -2284,7 +2284,7 @@ f32.add call $~lib/math/NativeMathf.log1p else - local.get $3 + local.get $4 end end end @@ -2296,9 +2296,9 @@ ) (func $~lib/math/NativeMath.atan (param $0 f64) (result f64) (local $1 f64) - (local $2 f64) + (local $2 i32) (local $3 i32) - (local $4 i32) + (local $4 f64) (local $5 f64) local.get $0 local.set $1 @@ -2309,7 +2309,7 @@ i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $3 + local.tee $2 i32.const 1141899264 i32.ge_u if @@ -2325,11 +2325,11 @@ f64.copysign return end - local.get $3 + local.get $2 i32.const 1071382528 i32.lt_u if - local.get $3 + local.get $2 i32.const 1044381696 i32.lt_u if @@ -2337,16 +2337,16 @@ return end i32.const -1 - local.set $4 + local.set $3 else local.get $0 f64.abs local.set $0 - local.get $3 + local.get $2 i32.const 1072889856 i32.lt_u if (result f64) - local.get $3 + local.get $2 i32.const 1072037888 i32.lt_u if (result f64) @@ -2361,7 +2361,7 @@ f64.div else i32.const 1 - local.set $4 + local.set $3 local.get $0 f64.const 1 f64.sub @@ -2371,12 +2371,12 @@ f64.div end else - local.get $3 + local.get $2 i32.const 1073971200 i32.lt_u if (result f64) i32.const 2 - local.set $4 + local.set $3 local.get $0 f64.const 1.5 f64.sub @@ -2388,7 +2388,7 @@ f64.div else i32.const 3 - local.set $4 + local.set $3 f64.const -1 local.get $0 f64.div @@ -2399,17 +2399,17 @@ local.get $0 local.get $0 f64.mul - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 f64.mul - local.set $2 + local.set $5 local.get $0 + local.get $4 + local.get $5 + local.get $5 + local.get $5 + local.get $5 local.get $5 - local.get $2 - local.get $2 - local.get $2 - local.get $2 - local.get $2 f64.const 0.016285820115365782 f64.mul f64.const 0.049768779946159324 @@ -2427,11 +2427,11 @@ f64.const 0.3333333333333293 f64.add f64.mul - local.get $2 - local.get $2 - local.get $2 - local.get $2 - local.get $2 + local.get $5 + local.get $5 + local.get $5 + local.get $5 + local.get $5 f64.const -0.036531572744216916 f64.mul f64.const -0.058335701337905735 @@ -2448,13 +2448,13 @@ f64.mul f64.add f64.mul - local.set $2 - local.get $4 + local.set $4 + local.get $3 i32.const 0 i32.lt_s if local.get $0 - local.get $2 + local.get $4 f64.sub return end @@ -2464,11 +2464,11 @@ block $case2|0 block $case1|0 block $case0|0 - local.get $4 + local.get $3 br_table $case0|0 $case1|0 $case2|0 $case3|0 $case4|0 end f64.const 0.4636476090008061 - local.get $2 + local.get $4 f64.const 2.2698777452961687e-17 f64.sub local.get $0 @@ -2478,7 +2478,7 @@ br $break|0 end f64.const 0.7853981633974483 - local.get $2 + local.get $4 f64.const 3.061616997868383e-17 f64.sub local.get $0 @@ -2488,7 +2488,7 @@ br $break|0 end f64.const 0.982793723247329 - local.get $2 + local.get $4 f64.const 1.3903311031230998e-17 f64.sub local.get $0 @@ -2498,7 +2498,7 @@ br $break|0 end f64.const 1.5707963267948966 - local.get $2 + local.get $4 f64.const 6.123233995736766e-17 f64.sub local.get $0 @@ -2615,14 +2615,14 @@ local.get $0 local.get $0 f32.mul - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 f32.mul - local.set $4 + local.set $5 local.get $0 - local.get $5 - local.get $4 local.get $4 + local.get $5 + local.get $5 f32.const 0.06168760731816292 f32.mul f32.const 0.14253635704517365 @@ -2631,8 +2631,8 @@ f32.const 0.333333283662796 f32.add f32.mul - local.get $4 - local.get $4 + local.get $5 + local.get $5 f32.const -0.106480173766613 f32.mul f32.const -0.19999158382415771 @@ -2825,9 +2825,9 @@ (func $std/math/test_atan2 (param $0 f64) (param $1 f64) (param $2 f64) (param $3 f64) (result i32) (local $4 f64) (local $5 i32) - (local $6 i32) + (local $6 i64) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) (local $10 i32) block $__inlined_func$~lib/math/NativeMath.atan2 @@ -2848,25 +2848,25 @@ end local.get $4 i64.reinterpret_f64 - local.tee $8 + local.tee $6 i64.const 32 i64.shr_u i32.wrap_i64 local.set $7 - local.get $8 + local.get $6 i32.wrap_i64 local.set $9 local.get $1 i64.reinterpret_f64 - local.tee $8 + local.tee $6 i64.const 32 i64.shr_u i32.wrap_i64 - local.set $6 - local.get $8 - i32.wrap_i64 - local.tee $10 + local.set $10 local.get $6 + i32.wrap_i64 + local.tee $8 + local.get $10 i32.const 1072693248 i32.sub i32.or @@ -2877,7 +2877,7 @@ local.set $4 br $__inlined_func$~lib/math/NativeMath.atan2 end - local.get $6 + local.get $10 i32.const 30 i32.shr_u i32.const 2 @@ -2887,10 +2887,10 @@ i32.shr_u i32.or local.set $5 - local.get $6 + local.get $10 i32.const 2147483647 i32.and - local.set $6 + local.set $10 local.get $7 i32.const 2147483647 i32.and @@ -2915,12 +2915,12 @@ end end block $folding-inner0 - local.get $6 + local.get $8 local.get $10 i32.or i32.eqz br_if $folding-inner0 - local.get $6 + local.get $10 i32.const 2146435072 i32.eq if @@ -2956,13 +2956,13 @@ i32.const 2146435072 i32.eq local.get $7 - local.get $6 + local.get $10 i32.const 67108864 i32.add i32.gt_u i32.or br_if $folding-inner0 - local.get $6 + local.get $10 local.get $7 i32.const 67108864 i32.add @@ -3058,10 +3058,10 @@ end local.get $0 i32.reinterpret_f32 - local.set $4 + local.set $3 local.get $1 i32.reinterpret_f32 - local.tee $3 + local.tee $4 i32.const 1065353216 i32.eq if @@ -3069,24 +3069,24 @@ call $~lib/math/NativeMathf.atan return end - local.get $3 + local.get $4 i32.const 30 i32.shr_u i32.const 2 i32.and - local.get $4 + local.get $3 i32.const 31 i32.shr_u i32.or local.set $2 - local.get $3 + local.get $4 i32.const 2147483647 i32.and - local.set $3 - local.get $4 + local.set $4 + local.get $3 i32.const 2147483647 i32.and - local.tee $4 + local.tee $3 i32.eqz if block $break|0 @@ -3106,14 +3106,14 @@ return end end - local.get $3 + local.get $4 i32.eqz br_if $folding-inner0 - local.get $3 + local.get $4 i32.const 2139095040 i32.eq if - local.get $4 + local.get $3 i32.const 2139095040 i32.eq if (result f32) @@ -3147,18 +3147,18 @@ end return end - local.get $4 + local.get $3 i32.const 2139095040 i32.eq - local.get $4 local.get $3 + local.get $4 i32.const 218103808 i32.add i32.gt_u i32.or br_if $folding-inner0 - local.get $3 local.get $4 + local.get $3 i32.const 218103808 i32.add i32.gt_u @@ -3216,10 +3216,10 @@ select ) (func $~lib/math/NativeMath.cbrt (param $0 f64) (result f64) - (local $1 f64) + (local $1 i32) (local $2 f64) (local $3 i64) - (local $4 i32) + (local $4 f64) local.get $0 i64.reinterpret_f64 local.tee $3 @@ -3228,7 +3228,7 @@ i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $4 + local.tee $1 i32.const 2146435072 i32.ge_u if @@ -3237,7 +3237,7 @@ f64.add return end - local.get $4 + local.get $1 i32.const 1048576 i32.lt_u if (result i32) @@ -3251,29 +3251,29 @@ i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $4 + local.tee $1 i32.eqz if local.get $0 return end - local.get $4 + local.get $1 i32.const 3 i32.div_u i32.const 696219795 i32.add else - local.get $4 + local.get $1 i32.const 3 i32.div_u i32.const 715094163 i32.add end - local.set $4 + local.set $1 local.get $3 i64.const -9223372036854775808 i64.and - local.get $4 + local.get $1 i64.extend_i32_u i64.const 32 i64.shl @@ -3286,11 +3286,11 @@ local.get $0 f64.div f64.mul - local.set $1 + local.set $4 local.get $0 local.get $2 - local.get $1 - local.get $1 + local.get $4 + local.get $4 f64.const 1.6214297201053545 f64.mul f64.const -1.8849797954337717 @@ -3298,12 +3298,12 @@ f64.mul f64.const 1.87595182427177 f64.add - local.get $1 - local.get $1 + local.get $4 + local.get $4 f64.mul - local.get $1 + local.get $4 f64.mul - local.get $1 + local.get $4 f64.const 0.14599619288661245 f64.mul f64.const -0.758397934778766 @@ -3321,27 +3321,27 @@ local.get $0 f64.mul f64.div - local.set $1 + local.set $2 local.get $0 local.get $0 - local.get $1 + local.get $2 local.get $0 f64.sub local.get $0 local.get $0 f64.add - local.get $1 + local.get $2 f64.add f64.div f64.mul f64.add ) (func $std/math/test_cbrtf (param $0 f32) (param $1 f32) (param $2 f32) (result i32) - (local $3 i32) - (local $4 f64) - (local $5 f64) + (local $3 f64) + (local $4 i32) + (local $5 i32) (local $6 f64) - (local $7 i32) + (local $7 f64) (local $8 f64) block $__inlined_func$~lib/math/NativeMathf.cbrt (result f32) local.get $0 @@ -3349,20 +3349,20 @@ f32.add local.get $0 i32.reinterpret_f32 - local.tee $7 + local.tee $5 i32.const 2147483647 i32.and - local.tee $3 + local.tee $4 i32.const 2139095040 i32.ge_u br_if $__inlined_func$~lib/math/NativeMathf.cbrt drop - local.get $3 + local.get $4 i32.const 8388608 i32.lt_u if (result i32) local.get $0 - local.get $3 + local.get $4 i32.eqz br_if $__inlined_func$~lib/math/NativeMathf.cbrt drop @@ -3370,7 +3370,7 @@ f32.const 16777216 f32.mul i32.reinterpret_f32 - local.tee $7 + local.tee $5 i32.const 2147483647 i32.and i32.const 3 @@ -3378,55 +3378,55 @@ i32.const 642849266 i32.add else - local.get $3 + local.get $4 i32.const 3 i32.div_u i32.const 709958130 i32.add end - local.get $7 + local.get $5 i32.const -2147483648 i32.and i32.or f32.reinterpret_i32 f64.promote_f32 - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 f64.mul - local.get $4 + local.get $3 f64.mul - local.set $5 - local.get $4 + local.set $7 + local.get $3 local.get $0 f64.promote_f32 - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 f64.add - local.tee $8 - local.get $5 + local.tee $6 + local.get $7 f64.add f64.mul - local.get $4 - local.get $5 + local.get $3 + local.get $7 f64.add - local.get $5 + local.get $7 f64.add f64.div - local.tee $5 - local.get $5 + local.tee $7 + local.get $7 f64.mul - local.get $5 + local.get $7 f64.mul - local.set $6 - local.get $5 - local.get $8 + local.set $8 + local.get $7 local.get $6 + local.get $8 f64.add f64.mul - local.get $4 - local.get $6 + local.get $3 + local.get $8 f64.add - local.get $6 + local.get $8 f64.add f64.div f32.demote_f64 @@ -3440,14 +3440,14 @@ (local $2 i64) (local $3 i64) (local $4 i32) - (local $5 i64) + (local $5 f64) (local $6 i64) (local $7 i64) (local $8 i64) (local $9 i64) (local $10 i64) (local $11 i64) - (local $12 f64) + (local $12 i64) local.get $0 i64.const 9223372036854775807 i64.and @@ -3458,7 +3458,7 @@ local.tee $1 i64.const 63 i64.and - local.set $2 + local.set $6 local.get $1 i64.const 6 i64.shr_s @@ -3469,42 +3469,42 @@ i32.add local.tee $4 i64.load - local.set $5 + local.set $3 local.get $4 i64.load offset=8 - local.set $3 + local.set $2 local.get $4 i64.load offset=16 local.set $1 - local.get $2 + local.get $6 i64.const 0 i64.ne if - local.get $5 - local.get $2 - i64.shl local.get $3 - i64.const 64 + local.get $6 + i64.shl local.get $2 + i64.const 64 + local.get $6 i64.sub - local.tee $6 + local.tee $7 i64.shr_u i64.or - local.set $5 - local.get $3 + local.set $3 local.get $2 + local.get $6 i64.shl local.get $1 - local.get $6 + local.get $7 i64.shr_u i64.or - local.set $3 + local.set $2 local.get $1 - local.get $2 + local.get $6 i64.shl local.get $4 i64.load offset=24 - local.get $6 + local.get $7 i64.shr_u i64.or local.set $1 @@ -3514,46 +3514,46 @@ i64.and i64.const 4503599627370496 i64.or - local.tee $2 + local.tee $6 i64.const 4294967295 i64.and - local.tee $6 - local.get $3 + local.tee $7 + local.get $2 i64.const 32 i64.shr_u - local.tee $7 + local.tee $8 i64.mul - local.get $6 - local.get $3 + local.get $2 i64.const 4294967295 i64.and - local.tee $6 + local.tee $2 + local.get $7 i64.mul - local.tee $8 + local.tee $7 i64.const 32 i64.shr_u i64.add - local.set $3 - local.get $6 + local.set $9 local.get $2 + local.get $6 i64.const 32 i64.shr_u - local.tee $9 local.tee $10 + local.tee $11 i64.mul - local.get $3 + local.get $9 i64.const 4294967295 i64.and i64.add - local.set $6 - local.get $7 - local.get $10 + local.set $2 + local.get $8 + local.get $11 i64.mul - local.get $3 + local.get $9 i64.const 32 i64.shr_u i64.add - local.get $6 + local.get $2 i64.const 32 i64.shr_u i64.add @@ -3561,131 +3561,131 @@ local.get $1 i64.const 32 i64.shr_u - local.get $9 + local.get $10 i64.mul local.tee $1 - local.get $8 + local.get $7 i64.const 4294967295 i64.and - local.get $6 + local.get $2 i64.const 32 i64.shl i64.add i64.add - local.tee $3 + local.tee $2 local.get $1 i64.lt_u i64.extend_i32_u global.get $~lib/math/res128_hi - local.get $2 - local.get $5 + local.get $3 + local.get $6 i64.mul i64.add i64.add - local.tee $7 + local.tee $3 i64.const 2 i64.shl - local.get $3 + local.get $2 i64.const 62 i64.shr_u i64.or - local.tee $2 + local.tee $6 i64.const 63 i64.shr_s - local.tee $5 + local.tee $7 i64.const 1 i64.shr_s - local.get $2 + local.get $6 i64.xor - local.tee $6 + local.tee $1 i64.clz - local.set $1 - local.get $6 + local.set $8 local.get $1 + local.get $8 i64.shl - local.get $5 - local.get $3 + local.get $7 + local.get $2 i64.const 2 i64.shl i64.xor - local.tee $8 + local.tee $2 i64.const 64 - local.get $1 + local.get $8 i64.sub i64.shr_u i64.or - local.tee $3 + local.tee $9 i64.const 4294967295 i64.and - local.set $6 - local.get $3 + local.set $1 + local.get $9 i64.const 32 i64.shr_u - local.tee $9 + local.tee $10 i64.const 560513588 i64.mul - local.get $6 + local.get $1 i64.const 3373259426 i64.mul - local.get $6 + local.get $1 i64.const 560513588 i64.mul - local.tee $10 + local.tee $11 i64.const 32 i64.shr_u i64.add - local.tee $11 + local.tee $1 i64.const 4294967295 i64.and i64.add - local.set $6 - local.get $9 + local.set $12 + local.get $10 i64.const 3373259426 i64.mul - local.get $11 + local.get $1 i64.const 32 i64.shr_u i64.add - local.get $6 + local.get $12 i64.const 32 i64.shr_u i64.add global.set $~lib/math/res128_hi - local.get $10 + local.get $11 i64.const 4294967295 i64.and - local.get $6 + local.get $12 i64.const 32 i64.shl i64.add - local.tee $6 - local.get $3 + local.tee $1 + local.get $9 f64.convert_i64_u f64.const 3.753184150245214e-04 f64.mul + local.get $2 local.get $8 - local.get $1 i64.shl f64.convert_i64_u f64.const 3.834951969714103e-04 f64.mul f64.add i64.trunc_f64_u - local.tee $3 + local.tee $2 i64.lt_u i64.extend_i32_u global.get $~lib/math/res128_hi - local.tee $8 + local.tee $9 i64.const 11 i64.shr_u i64.add f64.convert_i64_u global.set $~lib/math/rempio2_y0 - local.get $3 - local.get $8 + local.get $2 + local.get $9 i64.const 53 i64.shl - local.get $6 + local.get $1 i64.const 11 i64.shr_u i64.or @@ -3696,44 +3696,44 @@ global.set $~lib/math/rempio2_y1 global.get $~lib/math/rempio2_y0 i64.const 4372995238176751616 - local.get $1 + local.get $8 i64.const 52 i64.shl i64.sub local.get $0 - local.get $2 + local.get $6 i64.xor i64.const -9223372036854775808 i64.and i64.or f64.reinterpret_i64 - local.tee $12 + local.tee $5 f64.mul global.set $~lib/math/rempio2_y0 global.get $~lib/math/rempio2_y1 - local.get $12 + local.get $5 f64.mul global.set $~lib/math/rempio2_y1 - local.get $7 + local.get $3 i64.const 62 i64.shr_s - local.get $5 + local.get $7 i64.sub i32.wrap_i64 ) (func $~lib/math/NativeMath.cos (param $0 f64) (result f64) (local $1 f64) - (local $2 f64) + (local $2 i64) (local $3 f64) (local $4 i32) - (local $5 i64) + (local $5 i32) (local $6 i32) - (local $7 i32) + (local $7 f64) (local $8 f64) (local $9 f64) local.get $0 i64.reinterpret_f64 - local.tee $5 + local.tee $2 i64.const 32 i64.shr_u i32.wrap_i64 @@ -3761,18 +3761,18 @@ local.tee $1 local.get $1 f64.mul - local.set $2 + local.set $3 f64.const 1 local.get $1 f64.const 0.5 f64.mul - local.tee $3 + local.tee $7 f64.sub local.tee $8 f64.const 1 local.get $8 f64.sub - local.get $3 + local.get $7 f64.sub local.get $1 local.get $1 @@ -3786,8 +3786,8 @@ f64.const 0.0416666666666666 f64.add f64.mul - local.get $2 - local.get $2 + local.get $3 + local.get $3 f64.mul local.get $1 local.get $1 @@ -3819,18 +3819,18 @@ return end block $~lib/math/rempio2|inlined.0 (result i32) - local.get $5 + local.get $2 i64.const 32 i64.shr_u i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $4 + local.tee $5 i32.const 1073928572 i32.lt_u if i32.const 1 - local.set $7 + local.set $4 local.get $6 if (result f64) local.get $0 @@ -3838,8 +3838,8 @@ f64.add local.set $0 i32.const -1 - local.set $7 - local.get $4 + local.set $4 + local.get $5 i32.const 1073291771 i32.ne if (result f64) @@ -3870,7 +3870,7 @@ f64.const 1.5707963267341256 f64.sub local.set $0 - local.get $4 + local.get $5 i32.const 1073291771 i32.ne if (result f64) @@ -3900,14 +3900,14 @@ local.get $0 global.set $~lib/math/rempio2_y0 global.set $~lib/math/rempio2_y1 - local.get $7 + local.get $4 br $~lib/math/rempio2|inlined.0 end - local.get $4 + local.get $5 i32.const 1094263291 i32.lt_u if - local.get $4 + local.get $5 i32.const 20 i32.shr_u local.tee $4 @@ -3916,12 +3916,12 @@ f64.const 0.6366197723675814 f64.mul f64.nearest - local.tee $2 + local.tee $7 f64.const 1.5707963267341256 f64.mul f64.sub local.tee $0 - local.get $2 + local.get $7 f64.const 6.077100506506192e-11 f64.mul local.tee $3 @@ -3939,12 +3939,12 @@ i32.const 16 i32.gt_u if - local.get $2 + local.get $7 f64.const 2.0222662487959506e-21 f64.mul local.get $0 local.get $0 - local.get $2 + local.get $7 f64.const 6.077100506303966e-11 f64.mul local.tee $1 @@ -3972,12 +3972,12 @@ i32.const 49 i32.gt_u if (result f64) - local.get $2 + local.get $7 f64.const 8.4784276603689e-32 f64.mul local.get $0 local.get $0 - local.get $2 + local.get $7 f64.const 2.0222662487111665e-21 f64.mul local.tee $1 @@ -4004,12 +4004,12 @@ local.get $3 f64.sub global.set $~lib/math/rempio2_y1 - local.get $2 + local.get $7 i32.trunc_f64_s br $~lib/math/rempio2|inlined.0 end i32.const 0 - local.get $5 + local.get $2 call $~lib/math/pio2_large_quot local.tee $4 i32.sub @@ -4021,7 +4021,7 @@ global.get $~lib/math/rempio2_y0 local.set $1 global.get $~lib/math/rempio2_y1 - local.set $2 + local.set $3 local.get $4 i32.const 1 i32.and @@ -4032,13 +4032,13 @@ local.tee $0 local.get $1 f64.mul - local.set $3 + local.set $7 local.get $1 local.get $0 - local.get $2 + local.get $3 f64.const 0.5 f64.mul - local.get $3 + local.get $7 local.get $0 local.get $0 f64.const 2.7557313707070068e-06 @@ -4063,9 +4063,9 @@ f64.mul f64.sub f64.mul - local.get $2 - f64.sub local.get $3 + f64.sub + local.get $7 f64.const -0.16666666666666632 f64.mul f64.sub @@ -4074,26 +4074,26 @@ local.get $1 local.get $1 f64.mul - local.tee $0 - local.get $0 + local.tee $7 + local.get $7 f64.mul - local.set $3 + local.set $8 f64.const 1 - local.get $0 + local.get $7 f64.const 0.5 f64.mul - local.tee $8 - f64.sub local.tee $9 + f64.sub + local.tee $0 f64.const 1 - local.get $9 + local.get $0 f64.sub - local.get $8 + local.get $9 f64.sub - local.get $0 - local.get $0 - local.get $0 - local.get $0 + local.get $7 + local.get $7 + local.get $7 + local.get $7 f64.const 2.480158728947673e-05 f64.mul f64.const -0.001388888888887411 @@ -4102,11 +4102,11 @@ f64.const 0.0416666666666666 f64.add f64.mul - local.get $3 - local.get $3 + local.get $8 + local.get $8 f64.mul - local.get $0 - local.get $0 + local.get $7 + local.get $7 f64.const -1.1359647557788195e-11 f64.mul f64.const 2.087572321298175e-09 @@ -4118,7 +4118,7 @@ f64.add f64.mul local.get $1 - local.get $2 + local.get $3 f64.mul f64.sub f64.add @@ -4141,8 +4141,8 @@ (local $4 i64) (local $5 i32) (local $6 f64) - (local $7 i64) - (local $8 i32) + (local $7 i32) + (local $8 i64) (local $9 i64) block $folding-inner0 local.get $0 @@ -4170,10 +4170,10 @@ local.tee $2 local.get $2 f64.mul - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 f64.mul - local.set $3 + local.set $2 br $folding-inner0 end local.get $1 @@ -4230,28 +4230,28 @@ f64.promote_f32 f64.const 1.5707963267948966 f64.add - local.tee $2 - local.get $2 - f64.mul local.tee $3 - local.get $2 + local.get $3 + f64.mul + local.tee $2 + local.get $3 f64.mul else f64.const 1.5707963267948966 local.get $0 f64.promote_f32 f64.sub - local.tee $2 - local.get $2 - f64.mul local.tee $3 - local.get $2 + local.get $3 + f64.mul + local.tee $2 + local.get $3 f64.mul end local.set $6 - local.get $2 - local.get $6 local.get $3 + local.get $6 + local.get $2 f64.const 0.008333329385889463 f64.mul f64.const -0.16666666641626524 @@ -4259,11 +4259,11 @@ f64.mul f64.add local.get $6 - local.get $3 - local.get $3 + local.get $2 + local.get $2 f64.mul f64.mul - local.get $3 + local.get $2 f64.const 2.718311493989822e-06 f64.mul f64.const -1.9839334836096632e-04 @@ -4296,10 +4296,10 @@ local.tee $2 local.get $2 f64.mul - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 f64.mul - local.set $3 + local.set $2 br $folding-inner0 else local.get $5 @@ -4309,28 +4309,28 @@ f64.promote_f32 f64.const 4.71238898038469 f64.sub - local.tee $2 - local.get $2 - f64.mul local.tee $3 - local.get $2 + local.get $3 + f64.mul + local.tee $2 + local.get $3 f64.mul else local.get $0 f64.promote_f32 f64.const 4.71238898038469 f64.sub - local.tee $2 - local.get $2 - f64.mul local.tee $3 - local.get $2 + local.get $3 + f64.mul + local.tee $2 + local.get $3 f64.mul end local.set $6 - local.get $2 - local.get $6 local.get $3 + local.get $6 + local.get $2 f64.const 0.008333329385889463 f64.mul f64.const -0.16666666641626524 @@ -4338,11 +4338,11 @@ f64.mul f64.add local.get $6 - local.get $3 - local.get $3 + local.get $2 + local.get $2 f64.mul f64.mul - local.get $3 + local.get $2 f64.const 2.718311493989822e-06 f64.mul f64.const -1.9839334836096632e-04 @@ -4370,22 +4370,22 @@ if local.get $0 f64.promote_f32 - local.tee $3 + local.tee $2 f64.const 0.6366197723675814 f64.mul f64.nearest - local.set $2 - local.get $3 + local.set $3 local.get $2 + local.get $3 f64.const 1.5707963109016418 f64.mul f64.sub - local.get $2 + local.get $3 f64.const 1.5893254773528196e-08 f64.mul f64.sub global.set $~lib/math/rempio2f_y - local.get $2 + local.get $3 i32.trunc_f64_s br $~lib/math/rempio2f|inlined.0 end @@ -4394,11 +4394,11 @@ i32.shr_s i32.const 152 i32.sub - local.tee $8 + local.tee $7 i32.const 63 i32.and i64.extend_i32_s - local.set $4 + local.set $8 f64.const 8.515303950216386e-20 local.get $0 f64.promote_f32 @@ -4410,7 +4410,7 @@ i32.or i64.extend_i32_s local.tee $9 - local.get $8 + local.get $7 i32.const 6 i32.shr_s i32.const 3 @@ -4419,37 +4419,37 @@ i32.add local.tee $1 i64.load - local.get $4 + local.get $8 i64.shl local.get $1 i64.load offset=8 - local.tee $7 + local.tee $4 i64.const 64 - local.get $4 + local.get $8 i64.sub i64.shr_u i64.or i64.mul - local.get $4 + local.get $8 i64.const 32 i64.gt_u if (result i64) - local.get $7 local.get $4 + local.get $8 i64.const 32 i64.sub i64.shl local.get $1 i64.load offset=16 i64.const 96 - local.get $4 + local.get $8 i64.sub i64.shr_u i64.or else - local.get $7 - i64.const 32 local.get $4 + i64.const 32 + local.get $8 i64.sub i64.shr_u end @@ -4461,7 +4461,7 @@ local.tee $4 i64.const 2 i64.shl - local.tee $7 + local.tee $8 f64.convert_i64_s f64.mul global.set $~lib/math/rempio2f_y @@ -4469,7 +4469,7 @@ local.get $4 i64.const 62 i64.shr_u - local.get $7 + local.get $8 i64.const 63 i64.shr_u i64.add @@ -4555,19 +4555,19 @@ select return end - local.get $2 + local.get $3 f64.const -0.499999997251031 f64.mul f64.const 1 f64.add - local.get $3 + local.get $2 f64.const 0.04166662332373906 f64.mul f64.add - local.get $3 local.get $2 + local.get $3 f64.mul - local.get $2 + local.get $3 f64.const 2.439044879627741e-05 f64.mul f64.const -0.001388676377460993 @@ -4577,29 +4577,29 @@ f32.demote_f64 ) (func $~lib/math/NativeMath.expm1 (param $0 f64) (result f64) - (local $1 f64) + (local $1 i32) (local $2 f64) - (local $3 i64) - (local $4 f64) - (local $5 i32) - (local $6 i32) + (local $3 i32) + (local $4 i32) + (local $5 i64) + (local $6 f64) (local $7 f64) - (local $8 i32) + (local $8 f64) local.get $0 i64.reinterpret_f64 - local.tee $3 + local.tee $5 i64.const 32 i64.shr_u i64.const 2147483647 i64.and i32.wrap_i64 - local.set $6 - local.get $3 + local.set $3 + local.get $5 i64.const 63 i64.shr_u i32.wrap_i64 - local.set $5 - local.get $6 + local.set $4 + local.get $3 i32.const 1078159482 i32.ge_u if @@ -4610,7 +4610,7 @@ local.get $0 return end - local.get $5 + local.get $4 if f64.const -1 return @@ -4625,13 +4625,13 @@ return end end - local.get $6 + local.get $3 i32.const 1071001154 i32.gt_u if local.get $0 i32.const 1 - local.get $5 + local.get $4 i32.const 1 i32.shl i32.sub @@ -4643,30 +4643,30 @@ f64.copysign f64.add i32.trunc_f64_s - local.get $6 + local.get $3 i32.const 1072734898 i32.lt_u select - local.tee $8 - f64.convert_i32_s local.tee $1 + f64.convert_i32_s + local.tee $0 f64.const 0.6931471803691238 f64.mul f64.sub - local.tee $0 + local.tee $2 + local.get $2 local.get $0 - local.get $1 f64.const 1.9082149292705877e-10 f64.mul - local.tee $1 + local.tee $2 f64.sub local.tee $0 f64.sub - local.get $1 + local.get $2 f64.sub - local.set $4 + local.set $2 else - local.get $6 + local.get $3 i32.const 1016070144 i32.lt_u if @@ -4678,25 +4678,25 @@ local.get $0 f64.const 0.5 f64.mul - local.tee $2 + local.tee $6 f64.mul local.tee $7 local.get $7 f64.mul - local.set $1 + local.set $8 f64.const 3 local.get $7 f64.const -0.03333333333333313 f64.mul f64.const 1 f64.add - local.get $1 + local.get $8 local.get $7 f64.const -7.93650757867488e-05 f64.mul f64.const 1.5873015872548146e-03 f64.add - local.get $1 + local.get $8 local.get $7 f64.const -2.0109921818362437e-07 f64.mul @@ -4706,29 +4706,29 @@ f64.add f64.mul f64.add - local.tee $1 - local.get $2 + local.tee $8 + local.get $6 f64.mul f64.sub - local.set $2 + local.set $6 local.get $7 - local.get $1 - local.get $2 + local.get $8 + local.get $6 f64.sub f64.const 6 local.get $0 - local.get $2 + local.get $6 f64.mul f64.sub f64.div f64.mul - local.set $1 - local.get $8 + local.set $6 + local.get $1 i32.eqz if local.get $0 local.get $0 - local.get $1 + local.get $6 f64.mul local.get $7 f64.sub @@ -4736,16 +4736,16 @@ return end local.get $0 - local.get $1 - local.get $4 + local.get $6 + local.get $2 f64.sub f64.mul - local.get $4 + local.get $2 f64.sub local.get $7 f64.sub local.set $2 - local.get $8 + local.get $1 i32.const -1 i32.eq if @@ -4758,7 +4758,7 @@ f64.sub return end - local.get $8 + local.get $1 i32.const 1 i32.eq if @@ -4784,18 +4784,18 @@ f64.add return end - local.get $8 + local.get $1 i64.extend_i32_s i64.const 1023 i64.add i64.const 52 i64.shl f64.reinterpret_i64 - local.set $1 - local.get $8 + local.set $6 + local.get $1 i32.const 0 i32.lt_s - local.get $8 + local.get $1 i32.const 56 i32.gt_s i32.or @@ -4811,9 +4811,9 @@ f64.const 8988465674311579538646525e283 f64.mul local.get $0 - local.get $1 + local.get $6 f64.mul - local.get $8 + local.get $1 i32.const 1024 i32.eq select @@ -4824,7 +4824,7 @@ local.get $0 f64.const 1 i64.const 1023 - local.get $8 + local.get $1 i64.extend_i32_s i64.sub i64.const 52 @@ -4839,27 +4839,27 @@ local.get $0 f64.add f64.sub - local.get $8 + local.get $1 i32.const 20 i32.lt_s select f64.add - local.get $1 + local.get $6 f64.mul ) (func $~lib/math/NativeMath.exp (param $0 f64) (result f64) (local $1 i32) - (local $2 f64) - (local $3 i64) - (local $4 f64) - (local $5 i64) - (local $6 f64) - (local $7 i32) + (local $2 i64) + (local $3 f64) + (local $4 i32) + (local $5 f64) + (local $6 i64) + (local $7 f64) (local $8 f64) block $~lib/util/math/exp_lut|inlined.0 (result f64) local.get $0 i64.reinterpret_f64 - local.tee $3 + local.tee $2 i64.const 52 i64.shr_u i64.const 2047 @@ -4884,7 +4884,7 @@ i32.ge_u if f64.const 0 - local.get $3 + local.get $2 i64.const -4503599627370496 i64.eq br_if $~lib/util/math/exp_lut|inlined.0 @@ -4899,7 +4899,7 @@ drop f64.const 0 f64.const inf - local.get $3 + local.get $2 i64.const 63 i64.shr_u i32.wrap_i64 @@ -4914,9 +4914,9 @@ f64.mul f64.const 6755399441055744 f64.add - local.tee $2 + local.tee $3 i64.reinterpret_f64 - local.tee $5 + local.tee $2 i64.const 127 i64.and i64.const 1 @@ -4926,15 +4926,15 @@ i32.shl i32.const 5664 i32.add - local.tee $7 + local.tee $4 i64.load offset=8 - local.get $5 + local.get $2 i64.const 45 i64.shl i64.add - local.set $3 + local.set $6 local.get $0 - local.get $2 + local.get $3 f64.const 6755399441055744 f64.sub local.tee $0 @@ -4948,12 +4948,12 @@ local.tee $0 local.get $0 f64.mul - local.set $2 - local.get $7 + local.set $3 + local.get $4 f64.load local.get $0 f64.add - local.get $2 + local.get $3 local.get $0 f64.const 0.16666666666665886 f64.mul @@ -4961,8 +4961,8 @@ f64.add f64.mul f64.add - local.get $2 - local.get $2 + local.get $3 + local.get $3 f64.mul local.get $0 f64.const 0.008333335853059549 @@ -4971,72 +4971,72 @@ f64.add f64.mul f64.add - local.set $2 + local.set $7 local.get $1 i32.eqz if block $~lib/util/math/specialcase|inlined.0 (result f64) - local.get $5 + local.get $2 i64.const 2147483648 i64.and i64.eqz if - local.get $3 + local.get $6 i64.const 4544132024016830464 i64.sub f64.reinterpret_i64 local.tee $0 local.get $0 - local.get $2 + local.get $7 f64.mul f64.add f64.const 5486124068793688683255936e279 f64.mul br $~lib/util/math/specialcase|inlined.0 end - local.get $3 + local.get $6 i64.const 4602678819172646912 i64.add - local.tee $3 + local.tee $2 f64.reinterpret_i64 - local.tee $4 - local.get $4 - local.get $2 + local.tee $0 + local.get $0 + local.get $7 f64.mul f64.add - local.tee $0 + local.tee $8 f64.abs f64.const 1 f64.lt if (result f64) f64.const 1 - local.get $0 + local.get $8 f64.copysign - local.tee $6 - local.get $0 - f64.add - local.tee $8 - local.get $6 + local.tee $3 local.get $8 + f64.add + local.tee $5 + local.get $3 + local.get $5 f64.sub - local.get $0 + local.get $8 f64.add - local.get $4 local.get $0 + local.get $8 f64.sub - local.get $4 - local.get $2 + local.get $0 + local.get $7 f64.mul f64.add f64.add f64.add - local.get $6 + local.get $3 f64.sub local.tee $0 f64.const 0 f64.eq if (result f64) - local.get $3 + local.get $2 i64.const -9223372036854775808 i64.and f64.reinterpret_i64 @@ -5044,55 +5044,55 @@ local.get $0 end else - local.get $0 + local.get $8 end f64.const 2.2250738585072014e-308 f64.mul end br $~lib/util/math/exp_lut|inlined.0 end - local.get $3 + local.get $6 f64.reinterpret_i64 local.tee $0 local.get $0 - local.get $2 + local.get $7 f64.mul f64.add end ) (func $std/math/test_cosh (param $0 f64) (param $1 f64) (param $2 f64) (result i32) - (local $3 f64) - (local $4 i32) - (local $5 i64) + (local $3 i32) + (local $4 i64) + (local $5 f64) block $__inlined_func$~lib/math/NativeMath.cosh (result f64) local.get $0 i64.reinterpret_f64 i64.const 9223372036854775807 i64.and - local.tee $5 + local.tee $4 f64.reinterpret_i64 - local.set $3 - local.get $5 + local.set $5 + local.get $4 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $4 + local.tee $3 i32.const 1072049730 i32.lt_u if f64.const 1 - local.get $4 + local.get $3 i32.const 1045430272 i32.lt_u br_if $__inlined_func$~lib/math/NativeMath.cosh drop - local.get $3 + local.get $5 call $~lib/math/NativeMath.expm1 - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 f64.mul - local.get $3 - local.get $3 + local.get $5 + local.get $5 f64.add f64.const 2 f64.add @@ -5101,22 +5101,22 @@ f64.add br $__inlined_func$~lib/math/NativeMath.cosh end - local.get $4 + local.get $3 i32.const 1082535490 i32.lt_u if - local.get $3 + local.get $5 call $~lib/math/NativeMath.exp - local.tee $3 + local.tee $5 f64.const 1 - local.get $3 + local.get $5 f64.div f64.add f64.const 0.5 f64.mul br $__inlined_func$~lib/math/NativeMath.cosh end - local.get $3 + local.get $5 f64.const 1416.0996898839683 f64.sub call $~lib/math/NativeMath.exp @@ -5140,39 +5140,39 @@ ) (func $~lib/math/NativeMathf.expm1 (param $0 f32) (result f32) (local $1 i32) - (local $2 i32) - (local $3 f32) - (local $4 i32) - (local $5 f32) + (local $2 f32) + (local $3 i32) + (local $4 f32) + (local $5 i32) (local $6 f32) (local $7 f32) local.get $0 i32.reinterpret_f32 - local.tee $4 + local.tee $5 i32.const 2147483647 i32.and - local.set $2 - local.get $4 + local.set $3 + local.get $5 i32.const 31 i32.shr_u - local.set $4 - local.get $2 + local.set $5 + local.get $3 i32.const 1100331076 i32.ge_u if - local.get $2 + local.get $3 i32.const 2139095040 i32.gt_u if local.get $0 return end - local.get $4 + local.get $5 if f32.const -1 return end - local.get $2 + local.get $3 i32.const 1118925335 i32.gt_u if @@ -5182,13 +5182,13 @@ return end end - local.get $2 + local.get $3 i32.const 1051816472 i32.gt_u if local.get $0 i32.const 1 - local.get $4 + local.get $5 i32.const 1 i32.shl i32.sub @@ -5200,7 +5200,7 @@ f32.copysign f32.add i32.trunc_f32_s - local.get $2 + local.get $3 i32.const 1065686418 i32.lt_u select @@ -5210,20 +5210,20 @@ f32.const 0.6931381225585938 f32.mul f32.sub - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 local.get $0 f32.const 9.05800061445916e-06 f32.mul - local.tee $3 + local.tee $2 f32.sub local.tee $0 f32.sub - local.get $3 + local.get $2 f32.sub - local.set $5 + local.set $2 else - local.get $2 + local.get $3 i32.const 855638016 i32.lt_u if @@ -5238,8 +5238,8 @@ f32.mul local.tee $6 f32.mul - local.tee $3 - local.get $3 + local.tee $7 + local.get $7 f32.const 1.5807170420885086e-03 f32.mul f32.const -0.03333321213722229 @@ -5247,13 +5247,13 @@ f32.mul f32.const 1 f32.add - local.tee $7 + local.tee $4 local.get $6 f32.mul f32.sub local.set $6 - local.get $3 local.get $7 + local.get $4 local.get $6 f32.sub f32.const 6 @@ -5263,35 +5263,35 @@ f32.sub f32.div f32.mul - local.set $6 + local.set $4 local.get $1 i32.eqz if local.get $0 local.get $0 - local.get $6 + local.get $4 f32.mul - local.get $3 + local.get $7 f32.sub f32.sub return end local.get $0 - local.get $6 - local.get $5 + local.get $4 + local.get $2 f32.sub f32.mul - local.get $5 + local.get $2 f32.sub - local.get $3 + local.get $7 f32.sub - local.set $3 + local.set $2 local.get $1 i32.const -1 i32.eq if local.get $0 - local.get $3 + local.get $2 f32.sub f32.const 0.5 f32.mul @@ -5307,7 +5307,7 @@ f32.const -0.25 f32.lt if - local.get $3 + local.get $2 local.get $0 f32.const 0.5 f32.add @@ -5317,7 +5317,7 @@ return end local.get $0 - local.get $3 + local.get $2 f32.sub f32.const 2 f32.mul @@ -5331,7 +5331,7 @@ i32.const 23 i32.shl f32.reinterpret_i32 - local.set $5 + local.set $4 local.get $1 i32.const 0 i32.lt_s @@ -5341,7 +5341,7 @@ i32.or if local.get $0 - local.get $3 + local.get $2 f32.sub f32.const 1 f32.add @@ -5351,7 +5351,7 @@ f32.const 1701411834604692317316873e14 f32.mul local.get $0 - local.get $5 + local.get $4 f32.mul local.get $1 i32.const 128 @@ -5371,10 +5371,10 @@ f32.reinterpret_i32 local.tee $0 f32.sub - local.get $3 + local.get $2 f32.sub f32.const 1 - local.get $3 + local.get $2 local.get $0 f32.add f32.sub @@ -5383,7 +5383,7 @@ i32.lt_s select f32.add - local.get $5 + local.get $4 f32.mul ) (func $~lib/math/NativeMathf.exp (param $0 f32) (result f32) @@ -5437,14 +5437,14 @@ end f64.const 46.16624130844683 f64.mul - local.tee $1 + local.tee $5 f64.const 6755399441055744 f64.add - local.tee $5 + local.tee $1 i64.reinterpret_f64 local.set $2 - local.get $1 local.get $5 + local.get $1 f64.const 6755399441055744 f64.sub f64.sub @@ -5549,9 +5549,9 @@ (local $4 f64) (local $5 i64) (local $6 f64) - (local $7 f64) - (local $8 i64) - (local $9 i32) + (local $7 i32) + (local $8 f64) + (local $9 i64) (local $10 f64) block $~lib/util/math/exp2_lut|inlined.0 (result f64) local.get $0 @@ -5623,7 +5623,7 @@ f64.add local.tee $4 i64.reinterpret_f64 - local.tee $8 + local.tee $5 i64.const 127 i64.and i64.const 1 @@ -5633,13 +5633,13 @@ i32.shl i32.const 5664 i32.add - local.tee $9 + local.tee $7 i64.load offset=8 - local.get $8 + local.get $5 i64.const 45 i64.shl i64.add - local.set $5 + local.set $9 local.get $0 local.get $4 f64.const 52776558133248 @@ -5649,7 +5649,7 @@ local.get $4 f64.mul local.set $6 - local.get $9 + local.get $7 f64.load local.get $4 f64.const 0.6931471805599453 @@ -5673,22 +5673,22 @@ f64.add f64.mul f64.add - local.set $6 + local.set $10 local.get $3 i32.eqz if block $~lib/util/math/specialcase2|inlined.0 (result f64) - local.get $8 + local.get $5 i64.const 2147483648 i64.and i64.eqz if - local.get $5 + local.get $9 i64.const 4503599627370496 i64.sub f64.reinterpret_i64 local.tee $4 - local.get $6 + local.get $10 f64.mul local.get $4 f64.add @@ -5696,14 +5696,14 @@ f64.mul br $~lib/util/math/specialcase2|inlined.0 end - local.get $5 + local.get $9 i64.const 4602678819172646912 i64.add f64.reinterpret_i64 - local.tee $7 - local.get $6 + local.tee $6 + local.get $10 f64.mul - local.get $7 + local.get $6 f64.add local.tee $4 f64.const 1 @@ -5712,17 +5712,17 @@ local.get $4 f64.const 1 f64.add - local.tee $10 + local.tee $8 f64.const 1 - local.get $10 + local.get $8 f64.sub local.get $4 f64.add - local.get $7 + local.get $6 local.get $4 f64.sub - local.get $7 local.get $6 + local.get $10 f64.mul f64.add f64.add @@ -5737,10 +5737,10 @@ end br $~lib/util/math/exp2_lut|inlined.0 end - local.get $5 + local.get $9 f64.reinterpret_i64 local.tee $4 - local.get $6 + local.get $10 f64.mul local.get $4 f64.add @@ -5768,7 +5768,7 @@ block $~lib/util/math/exp2f_lut|inlined.0 (result f32) local.get $0 f64.promote_f32 - local.set $3 + local.set $7 local.get $0 i32.reinterpret_f32 local.tee $5 @@ -5809,14 +5809,14 @@ br_if $~lib/util/math/exp2f_lut|inlined.0 drop end - local.get $3 + local.get $7 f64.const 211106232532992 f64.add - local.tee $7 + local.tee $3 i64.reinterpret_f64 local.set $4 - local.get $3 local.get $7 + local.get $3 f64.const 211106232532992 f64.sub f64.sub @@ -5860,11 +5860,11 @@ (local $2 i64) (local $3 i64) (local $4 i64) - (local $5 f64) + (local $5 i32) (local $6 f64) - (local $7 f64) - (local $8 i32) - (local $9 i32) + (local $7 i32) + (local $8 f64) + (local $9 f64) (local $10 f64) (local $11 f64) local.get $1 @@ -5891,7 +5891,7 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $8 + local.tee $5 i32.const 2047 i32.eq if @@ -5907,7 +5907,7 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $9 + local.tee $7 i32.const 2047 i32.eq i32.or @@ -5915,8 +5915,8 @@ local.get $0 return end - local.get $9 - local.get $8 + local.get $7 + local.get $5 i32.sub i32.const 64 i32.gt_s @@ -5927,13 +5927,13 @@ return end f64.const 1 - local.set $7 - local.get $9 + local.set $6 + local.get $7 i32.const 1533 i32.gt_u if (result f64) f64.const 5260135901548373507240989e186 - local.set $7 + local.set $6 local.get $1 f64.const 1.90109156629516e-211 f64.mul @@ -5942,12 +5942,12 @@ f64.const 1.90109156629516e-211 f64.mul else - local.get $8 + local.get $5 i32.const 573 i32.lt_u if (result f64) f64.const 1.90109156629516e-211 - local.set $7 + local.set $6 local.get $1 f64.const 5260135901548373507240989e186 f64.mul @@ -5959,67 +5959,67 @@ local.get $0 end end - local.tee $0 - local.get $0 - local.get $0 + local.tee $10 + local.get $10 + local.get $10 f64.const 134217729 f64.mul - local.tee $5 + local.tee $0 f64.sub - local.get $5 + local.get $0 f64.add - local.tee $5 + local.tee $9 f64.sub - local.set $10 + local.set $0 local.get $1 local.get $1 local.get $1 f64.const 134217729 f64.mul - local.tee $6 + local.tee $8 f64.sub - local.get $6 + local.get $8 f64.add - local.tee $6 + local.tee $8 f64.sub local.set $11 - local.get $7 - local.get $6 local.get $6 + local.get $8 + local.get $8 f64.mul local.get $1 local.get $1 f64.mul local.tee $1 f64.sub - local.get $6 - local.get $6 + local.get $8 + local.get $8 f64.add local.get $11 f64.add local.get $11 f64.mul f64.add - local.get $5 - local.get $5 + local.get $9 + local.get $9 f64.mul - local.get $0 - local.get $0 + local.get $10 + local.get $10 f64.mul - local.tee $0 + local.tee $6 f64.sub - local.get $5 - local.get $5 + local.get $9 + local.get $9 f64.add - local.get $10 + local.get $0 f64.add - local.get $10 + local.get $0 f64.mul f64.add f64.add local.get $1 f64.add - local.get $0 + local.get $6 f64.add f64.sqrt f64.mul @@ -6028,8 +6028,8 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 f32) - (local $8 f64) + (local $7 f64) + (local $8 f32) block $__inlined_func$~lib/math/NativeMathf.hypot (result f32) local.get $1 i32.reinterpret_f32 @@ -6050,7 +6050,7 @@ end local.get $4 f32.reinterpret_i32 - local.set $0 + local.set $8 local.get $5 f32.reinterpret_i32 local.tee $1 @@ -6059,7 +6059,7 @@ i32.eq br_if $__inlined_func$~lib/math/NativeMathf.hypot drop - local.get $0 + local.get $8 local.get $1 f32.add local.get $5 @@ -6077,18 +6077,18 @@ br_if $__inlined_func$~lib/math/NativeMathf.hypot drop f32.const 1 - local.set $7 + local.set $0 local.get $4 i32.const 1568669696 i32.ge_u if (result f32) f32.const 1237940039285380274899124e3 - local.set $7 + local.set $0 local.get $1 f32.const 8.077935669463161e-28 f32.mul local.set $1 - local.get $0 + local.get $8 f32.const 8.077935669463161e-28 f32.mul else @@ -6097,29 +6097,29 @@ i32.lt_u if (result f32) f32.const 8.077935669463161e-28 - local.set $7 + local.set $0 local.get $1 f32.const 1237940039285380274899124e3 f32.mul local.set $1 - local.get $0 + local.get $8 f32.const 1237940039285380274899124e3 f32.mul else - local.get $0 + local.get $8 end end - local.set $0 - local.get $7 + local.set $8 local.get $0 - f64.promote_f32 - local.tee $8 local.get $8 + f64.promote_f32 + local.tee $7 + local.get $7 f64.mul local.get $1 f64.promote_f32 - local.tee $8 - local.get $8 + local.tee $7 + local.get $7 f64.mul f64.add f32.demote_f64 @@ -6132,16 +6132,16 @@ ) (func $~lib/math/NativeMath.log10 (param $0 f64) (result f64) (local $1 i32) - (local $2 f64) - (local $3 i64) + (local $2 i64) + (local $3 i32) (local $4 f64) (local $5 f64) (local $6 f64) - (local $7 i32) + (local $7 f64) (local $8 f64) local.get $0 i64.reinterpret_f64 - local.tee $3 + local.tee $2 i64.const 32 i64.shr_u i32.wrap_i64 @@ -6153,7 +6153,7 @@ i32.lt_u i32.or if - local.get $3 + local.get $2 i64.const 1 i64.shl i64.eqz @@ -6177,12 +6177,12 @@ return end i32.const -54 - local.set $7 + local.set $3 local.get $0 f64.const 18014398509481984 f64.mul i64.reinterpret_f64 - local.tee $3 + local.tee $2 i64.const 32 i64.shr_u i32.wrap_i64 @@ -6195,7 +6195,7 @@ local.get $0 return else - local.get $3 + local.get $2 i64.const 32 i64.shl i64.eqz @@ -6209,7 +6209,7 @@ end end end - local.get $3 + local.get $2 i64.const 4294967295 i64.and local.get $1 @@ -6227,14 +6227,14 @@ f64.reinterpret_i64 f64.const 1 f64.sub - local.tee $2 + local.tee $0 f64.const 0.5 f64.mul - local.get $2 + local.get $0 f64.mul local.set $4 - local.get $2 - local.get $2 + local.get $0 + local.get $0 f64.const 2 f64.add f64.div @@ -6244,25 +6244,25 @@ local.tee $6 local.get $6 f64.mul - local.set $0 - local.get $2 - local.get $2 + local.set $7 + local.get $0 + local.get $0 local.get $4 f64.sub i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $2 + local.tee $0 f64.sub local.get $4 f64.sub local.get $5 local.get $4 local.get $6 - local.get $0 - local.get $0 - local.get $0 + local.get $7 + local.get $7 + local.get $7 f64.const 0.14798198605116586 f64.mul f64.const 0.1818357216161805 @@ -6274,9 +6274,9 @@ f64.const 0.6666666666666735 f64.add f64.mul - local.get $0 - local.get $0 - local.get $0 + local.get $7 + local.get $7 + local.get $7 f64.const 0.15313837699209373 f64.mul f64.const 0.22222198432149784 @@ -6289,45 +6289,45 @@ f64.add f64.mul f64.add - local.set $0 + local.set $4 local.get $1 i32.const 20 i32.shr_u i32.const 1023 i32.sub - local.get $7 + local.get $3 i32.add f64.convert_i32_s local.tee $5 f64.const 0.30102999566361177 f64.mul local.tee $6 - local.get $2 + local.get $0 f64.const 0.4342944818781689 f64.mul - local.tee $8 + local.tee $7 f64.add - local.set $4 + local.set $8 local.get $5 f64.const 3.694239077158931e-13 f64.mul + local.get $4 local.get $0 - local.get $2 f64.add f64.const 2.5082946711645275e-11 f64.mul f64.add - local.get $0 + local.get $4 f64.const 0.4342944818781689 f64.mul f64.add local.get $6 - local.get $4 - f64.sub local.get $8 + f64.sub + local.get $7 f64.add f64.add - local.get $4 + local.get $8 f64.add ) (func $~lib/math/NativeMathf.log10 (param $0 f32) (result f32) @@ -6335,8 +6335,8 @@ (local $2 f32) (local $3 f32) (local $4 f32) - (local $5 f32) - (local $6 i32) + (local $5 i32) + (local $6 f32) (local $7 f32) local.get $0 i32.reinterpret_f32 @@ -6372,7 +6372,7 @@ return end i32.const -25 - local.set $6 + local.set $5 local.get $0 f32.const 33554432 f32.mul @@ -6406,57 +6406,57 @@ f32.reinterpret_i32 f32.const 1 f32.sub - local.tee $0 - local.get $0 + local.tee $4 + local.get $4 f32.const 2 f32.add f32.div + local.tee $2 + local.get $2 + f32.mul local.tee $3 local.get $3 f32.mul - local.tee $4 - local.get $4 - f32.mul - local.set $2 + local.set $0 local.get $1 i32.const 23 i32.shr_u i32.const 127 i32.sub - local.get $6 + local.get $5 i32.add f32.convert_i32_s - local.tee $7 + local.tee $6 f32.const 7.903415166765626e-07 f32.mul - local.get $0 - local.get $0 - local.get $0 + local.get $4 + local.get $4 + local.get $4 f32.const 0.5 f32.mul - local.get $0 + local.get $4 f32.mul - local.tee $0 + local.tee $7 f32.sub i32.reinterpret_f32 i32.const -4096 i32.and f32.reinterpret_i32 - local.tee $5 + local.tee $4 f32.sub - local.get $0 + local.get $7 f32.sub + local.get $2 + local.get $7 local.get $3 local.get $0 - local.get $4 - local.get $2 f32.const 0.2849878668785095 f32.mul f32.const 0.6666666269302368 f32.add f32.mul - local.get $2 - local.get $2 + local.get $0 + local.get $0 f32.const 0.24279078841209412 f32.mul f32.const 0.40000972151756287 @@ -6467,7 +6467,7 @@ f32.mul f32.add local.tee $0 - local.get $5 + local.get $4 f32.add f32.const -3.168997136526741e-05 f32.mul @@ -6476,22 +6476,22 @@ f32.const 0.434326171875 f32.mul f32.add - local.get $5 + local.get $4 f32.const 0.434326171875 f32.mul f32.add - local.get $7 + local.get $6 f32.const 0.3010292053222656 f32.mul f32.add ) (func $~lib/math/NativeMath.log2 (param $0 f64) (result f64) (local $1 i64) - (local $2 f64) - (local $3 f64) + (local $2 i32) + (local $3 i64) (local $4 f64) - (local $5 i32) - (local $6 i64) + (local $5 f64) + (local $6 f64) (local $7 f64) (local $8 f64) (local $9 f64) @@ -6508,70 +6508,70 @@ local.get $0 f64.const 1 f64.sub - local.tee $0 + local.tee $4 i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $7 + local.tee $5 f64.const 1.4426950407214463 f64.mul - local.set $3 - local.get $0 - local.get $0 + local.set $6 + local.get $4 + local.get $4 f64.mul - local.tee $2 - local.get $2 + local.tee $7 + local.get $7 f64.mul - local.set $4 - local.get $3 - local.get $2 - local.get $0 + local.set $8 + local.get $6 + local.get $7 + local.get $4 f64.const 0.48089834696298744 f64.mul f64.const -0.7213475204444817 f64.add f64.mul - local.tee $8 - f64.add local.tee $9 - local.get $0 - local.get $7 + f64.add + local.tee $0 + local.get $4 + local.get $5 f64.sub f64.const 1.4426950407214463 f64.mul - local.get $0 + local.get $4 f64.const 1.6751713164886512e-10 f64.mul f64.add - local.get $3 - local.get $9 + local.get $6 + local.get $0 f64.sub - local.get $8 + local.get $9 f64.add f64.add + local.get $8 local.get $4 - local.get $0 f64.const 0.2885390081805197 f64.mul f64.const -0.360673760222145 f64.add - local.get $2 - local.get $0 + local.get $7 + local.get $4 f64.const 0.2060992861022954 f64.mul f64.const -0.24044917405728863 f64.add f64.mul f64.add + local.get $8 local.get $4 - local.get $0 f64.const 0.1603032746063156 f64.mul f64.const -0.18033596705327856 f64.add - local.get $2 - local.get $0 + local.get $7 + local.get $4 f64.const 0.13046826811283835 f64.mul f64.const -0.14483316576701266 @@ -6589,7 +6589,7 @@ i64.const 48 i64.shr_u i32.wrap_i64 - local.tee $5 + local.tee $2 i32.const 16 i32.sub i32.const 32736 @@ -6613,12 +6613,12 @@ br_if $~lib/util/math/log2_lut|inlined.0 drop i32.const 1 - local.get $5 + local.get $2 i32.const 32752 i32.and i32.const 32752 i32.eq - local.get $5 + local.get $2 i32.const 32768 i32.and select @@ -6642,7 +6642,7 @@ local.get $1 i64.const 4604367669032910848 i64.sub - local.tee $6 + local.tee $3 i64.const 46 i64.shr_u i64.const 63 @@ -6653,17 +6653,17 @@ local.tee $10 i32.const 7968 i32.add - local.set $5 - local.get $6 + local.set $2 + local.get $3 i64.const 52 i64.shr_s f64.convert_i64_s - local.get $5 + local.get $2 f64.load offset=8 f64.add - local.tee $2 + local.tee $0 local.get $1 - local.get $6 + local.get $3 i64.const -4503599627370496 i64.and i64.sub @@ -6677,56 +6677,56 @@ local.get $10 f64.load offset=8 f64.sub - local.get $5 + local.get $2 f64.load f64.mul - local.tee $0 + local.tee $4 i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $4 + local.tee $5 f64.const 1.4426950407214463 f64.mul - local.tee $7 + local.tee $6 f64.add - local.set $3 - local.get $2 - local.get $3 - f64.sub + local.set $7 + local.get $0 local.get $7 + f64.sub + local.get $6 f64.add - local.get $0 local.get $4 + local.get $5 f64.sub f64.const 1.4426950407214463 f64.mul - local.get $0 + local.get $4 f64.const 1.6751713164886512e-10 f64.mul f64.add f64.add - local.get $0 - local.get $0 + local.get $4 + local.get $4 f64.mul - local.tee $2 - local.get $0 + local.tee $0 + local.get $4 f64.const 0.4808983469629985 f64.mul f64.const -0.7213475204444882 f64.add - local.get $2 local.get $0 + local.get $4 f64.const 0.2885390073180969 f64.mul f64.const -0.36067375954075914 f64.add f64.mul f64.add - local.get $2 - local.get $2 - f64.mul local.get $0 + local.get $0 + f64.mul + local.get $4 f64.const 0.2061202382173603 f64.mul f64.const -0.2404693555628422 @@ -6735,7 +6735,7 @@ f64.add f64.mul f64.add - local.get $3 + local.get $7 f64.add end ) @@ -6796,7 +6796,7 @@ local.get $3 i32.const 1060306944 i32.sub - local.tee $6 + local.tee $5 i32.const 19 i32.shr_u i32.const 15 @@ -6805,40 +6805,40 @@ i32.shl i32.const 10016 i32.add - local.set $5 + local.set $6 local.get $3 - local.get $6 + local.get $5 i32.const -8388608 i32.and i32.sub f32.reinterpret_i32 f64.promote_f32 - local.get $5 + local.get $6 f64.load f64.mul f64.const 1 f64.sub - local.tee $7 - local.get $7 + local.tee $4 + local.get $4 f64.mul - local.set $4 - local.get $7 + local.set $7 + local.get $4 f64.const 0.4811247078767291 f64.mul f64.const -0.7213476299867769 f64.add - local.get $4 + local.get $7 f64.const -0.36051725506874704 f64.mul f64.add - local.get $4 - f64.mul local.get $7 + f64.mul + local.get $4 f64.const 1.4426950186867042 f64.mul - local.get $5 - f64.load offset=8 local.get $6 + f64.load offset=8 + local.get $5 i32.const 23 i32.shr_s f64.convert_i32_s @@ -6891,9 +6891,9 @@ (local $3 i64) (local $4 i64) (local $5 i64) - (local $6 i64) + (local $6 f64) (local $7 i64) - (local $8 f64) + (local $8 i64) (local $9 i64) block $__inlined_func$~lib/math/NativeMath.mod (result f64) local.get $0 @@ -6910,20 +6910,20 @@ drop local.get $1 i64.reinterpret_f64 - local.tee $5 + local.tee $7 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.set $6 - local.get $5 + local.set $5 + local.get $7 i64.const 1 i64.shl - local.tee $7 + local.tee $8 i64.eqz local.get $0 i64.reinterpret_f64 - local.tee $3 + local.tee $9 i64.const 52 i64.shr_u i64.const 2047 @@ -6940,37 +6940,37 @@ local.get $0 local.get $1 f64.mul - local.tee $8 - local.get $8 + local.tee $6 + local.get $6 f64.div br $__inlined_func$~lib/math/NativeMath.mod end - local.get $7 - local.get $3 + local.get $8 + local.get $9 i64.const 1 i64.shl - local.tee $9 + local.tee $3 i64.ge_u if local.get $0 - local.get $7 - local.get $9 + local.get $3 + local.get $8 i64.ne f64.convert_i32_u f64.mul br $__inlined_func$~lib/math/NativeMath.mod end - local.get $3 + local.get $9 i64.const 63 i64.shr_u - local.set $7 + local.set $8 local.get $4 i64.eqz if (result i64) - local.get $3 + local.get $9 i64.const 1 local.get $4 - local.get $3 + local.get $9 i64.const 12 i64.shl i64.clz @@ -6979,51 +6979,51 @@ i64.sub i64.shl else - local.get $3 + local.get $9 i64.const 4503599627370495 i64.and i64.const 4503599627370496 i64.or end local.set $3 - local.get $6 + local.get $5 i64.eqz if (result i64) - local.get $5 + local.get $7 i64.const 1 - local.get $6 local.get $5 + local.get $7 i64.const 12 i64.shl i64.clz i64.sub - local.tee $6 + local.tee $5 i64.sub i64.shl else - local.get $5 + local.get $7 i64.const 4503599627370495 i64.and i64.const 4503599627370496 i64.or end - local.set $5 + local.set $7 block $folding-inner0 loop $while-continue|0 local.get $4 - local.get $6 + local.get $5 i64.gt_s if local.get $3 - local.get $5 + local.get $7 i64.ge_u if (result i64) local.get $3 - local.get $5 + local.get $7 i64.eq br_if $folding-inner0 local.get $3 - local.get $5 + local.get $7 i64.sub else local.get $3 @@ -7040,15 +7040,15 @@ end local.get $4 local.get $3 - local.get $5 + local.get $7 i64.ge_u if local.get $3 - local.get $5 + local.get $7 i64.eq br_if $folding-inner0 local.get $3 - local.get $5 + local.get $7 i64.sub local.set $3 end @@ -7056,32 +7056,32 @@ i64.const 11 i64.shl i64.clz - local.tee $5 + local.tee $4 i64.sub - local.set $4 + local.set $5 local.get $3 - local.get $5 + local.get $4 i64.shl local.set $3 - local.get $4 + local.get $5 i64.const 0 i64.gt_s if (result i64) local.get $3 i64.const 4503599627370496 i64.sub - local.get $4 + local.get $5 i64.const 52 i64.shl i64.or else local.get $3 i64.const 1 - local.get $4 + local.get $5 i64.sub i64.shr_u end - local.get $7 + local.get $8 i64.const 63 i64.shl i64.or @@ -7113,7 +7113,6 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) local.get $1 f32.abs f32.const 1 @@ -7129,31 +7128,31 @@ end local.get $1 i32.reinterpret_f32 - local.tee $6 + local.tee $4 i32.const 23 i32.shr_u i32.const 255 i32.and - local.set $5 + local.set $6 i32.const 1 local.get $1 local.get $1 f32.ne local.get $0 i32.reinterpret_f32 - local.tee $7 + local.tee $3 i32.const 23 i32.shr_u i32.const 255 i32.and - local.tee $8 + local.tee $7 i32.const 255 i32.eq i32.const 1 - local.get $6 + local.get $4 i32.const 1 i32.shl - local.tee $3 + local.tee $2 select select if @@ -7165,71 +7164,71 @@ f32.div return end + local.get $2 local.get $3 - local.get $7 i32.const 1 i32.shl - local.tee $2 + local.tee $5 i32.ge_u if local.get $0 local.get $2 - local.get $3 + local.get $5 i32.ne f32.convert_i32_u f32.mul return end - local.get $7 + local.get $3 i32.const -2147483648 i32.and - local.set $4 - local.get $8 + local.set $5 + local.get $7 if (result i32) - local.get $7 + local.get $3 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $7 + local.get $3 i32.const 1 - local.get $8 local.get $7 + local.get $3 i32.const 9 i32.shl i32.clz i32.sub - local.tee $8 + local.tee $7 i32.sub i32.shl end local.set $2 - local.get $5 + local.get $6 if (result i32) - local.get $6 + local.get $4 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $6 + local.get $4 i32.const 1 - local.get $5 local.get $6 + local.get $4 i32.const 9 i32.shl i32.clz i32.sub - local.tee $5 + local.tee $6 i32.sub i32.shl end local.set $3 block $folding-inner0 loop $while-continue|0 - local.get $5 - local.get $8 + local.get $6 + local.get $7 i32.lt_s if local.get $2 @@ -7249,14 +7248,14 @@ i32.const 1 i32.shl local.set $2 - local.get $8 + local.get $7 i32.const 1 i32.sub - local.set $8 + local.set $7 br $while-continue|0 end end - local.get $8 + local.get $7 local.get $2 local.get $3 i32.ge_u @@ -7274,32 +7273,32 @@ i32.const 8 i32.shl i32.clz - local.tee $3 + local.tee $4 i32.sub - local.set $5 + local.set $3 local.get $2 - local.get $3 + local.get $4 i32.shl local.set $2 - local.get $5 + local.get $3 i32.const 0 i32.gt_s if (result i32) local.get $2 i32.const 8388608 i32.sub - local.get $5 + local.get $3 i32.const 23 i32.shl i32.or else local.get $2 i32.const 1 - local.get $5 + local.get $3 i32.sub i32.shr_u end - local.get $4 + local.get $5 i32.or f32.reinterpret_i32 return @@ -7318,8 +7317,8 @@ (local $8 f64) (local $9 f64) (local $10 f64) - (local $11 i64) - (local $12 f64) + (local $11 f64) + (local $12 i64) (local $13 f64) (local $14 f64) (local $15 f64) @@ -7384,14 +7383,14 @@ local.tee $4 i64.const 52 i64.shr_u - local.set $5 + local.set $7 block $~lib/util/math/exp_inline|inlined.0 (result f64) local.get $0 i64.reinterpret_f64 local.tee $2 i64.const 52 i64.shr_u - local.tee $7 + local.tee $5 i64.const 1 i64.sub i64.const 2046 @@ -7399,7 +7398,7 @@ if (result i32) i32.const 1 else - local.get $5 + local.get $7 i64.const 2047 i64.and i64.const 958 @@ -7562,13 +7561,13 @@ i64.shr_u i64.const 2047 i64.and - local.tee $11 + local.tee $12 i64.const 1023 i64.lt_u br_if $~lib/util/math/checkint|inlined.1 drop i32.const 2 - local.get $11 + local.get $12 i64.const 1075 i64.gt_u br_if $~lib/util/math/checkint|inlined.1 @@ -7576,10 +7575,10 @@ i32.const 0 i64.const 1 i64.const 1075 - local.get $11 + local.get $12 i64.sub i64.shl - local.tee $11 + local.tee $12 i64.const 1 i64.sub local.get $4 @@ -7590,7 +7589,7 @@ drop i32.const 1 local.get $4 - local.get $11 + local.get $12 i64.and i64.const 0 i64.ne @@ -7609,10 +7608,10 @@ f64.div br $~lib/util/math/pow_lut|inlined.0 end - local.get $7 + local.get $5 i64.const 2047 i64.and - local.set $7 + local.set $5 i32.const 262144 i32.const 0 local.get $3 @@ -7625,7 +7624,7 @@ i64.and local.set $2 end - local.get $5 + local.get $7 i64.const 2047 i64.and i64.const 958 @@ -7640,7 +7639,7 @@ br_if $~lib/util/math/pow_lut|inlined.0 drop f64.const 1 - local.get $5 + local.get $7 i64.const 2047 i64.and i64.const 958 @@ -7649,7 +7648,7 @@ drop f64.const inf f64.const 0 - local.get $5 + local.get $7 i64.const 2048 i64.lt_u local.get $2 @@ -7659,7 +7658,7 @@ select br $~lib/util/math/pow_lut|inlined.0 end - local.get $7 + local.get $5 i64.eqz if (result i64) local.get $0 @@ -7702,91 +7701,91 @@ i32.add local.tee $3 f64.load - local.tee $9 + local.tee $8 f64.mul f64.const 1 f64.sub - local.set $8 + local.set $13 local.get $2 i64.const 52 i64.shr_s f64.convert_i64_s - local.tee $12 + local.tee $10 f64.const 0.6931471805598903 f64.mul local.get $3 f64.load offset=16 f64.add - local.tee $13 - local.get $8 + local.tee $11 + local.get $13 local.get $5 f64.reinterpret_i64 local.get $0 f64.sub - local.get $9 + local.get $8 f64.mul local.tee $14 f64.add local.tee $0 f64.add - local.set $9 + local.set $8 local.get $0 local.get $0 f64.const -0.5 f64.mul local.tee $15 f64.mul - local.set $10 - local.get $9 - local.get $8 + local.set $9 local.get $8 + local.get $13 + local.get $13 f64.const -0.5 f64.mul - local.tee $16 + local.tee $13 f64.mul - local.tee $17 + local.tee $16 f64.add - local.tee $8 - local.get $8 - local.get $12 + local.tee $17 + local.get $17 + local.get $10 f64.const 5.497923018708371e-14 f64.mul local.get $3 f64.load offset=24 f64.add - local.get $13 - local.get $9 + local.get $11 + local.get $8 f64.sub local.get $0 f64.add f64.add local.get $14 local.get $15 - local.get $16 + local.get $13 f64.add f64.mul f64.add - local.get $9 local.get $8 - f64.sub local.get $17 + f64.sub + local.get $16 f64.add f64.add local.get $0 - local.get $10 + local.get $9 f64.mul local.get $0 f64.const 0.5000000000000007 f64.mul f64.const -0.6666666666666679 f64.add - local.get $10 + local.get $9 local.get $0 f64.const -0.6666666663487739 f64.mul f64.const 0.7999999995323976 f64.add - local.get $10 + local.get $9 local.get $0 f64.const 1.0000415263675542 f64.mul @@ -7809,7 +7808,7 @@ i64.const -134217728 i64.and f64.reinterpret_i64 - local.tee $10 + local.tee $0 local.get $8 i64.reinterpret_f64 i64.const -134217728 @@ -7817,9 +7816,9 @@ f64.reinterpret_i64 local.tee $9 f64.mul - local.set $0 + local.set $10 local.get $1 - local.get $10 + local.get $0 f64.sub local.get $9 f64.mul @@ -7831,8 +7830,8 @@ f64.add f64.mul f64.add - local.set $1 - local.get $0 + local.set $0 + local.get $10 i64.reinterpret_f64 local.tee $2 i64.const 52 @@ -7884,14 +7883,14 @@ i32.const 0 local.set $3 end - local.get $0 + local.get $10 f64.const 184.6649652337873 f64.mul f64.const 6755399441055744 f64.add - local.tee $8 + local.tee $1 i64.reinterpret_f64 - local.tee $4 + local.tee $2 i64.const 127 i64.and i64.const 1 @@ -7905,25 +7904,25 @@ i64.load offset=8 local.get $6 i64.extend_i32_u - local.get $4 + local.get $2 i64.add i64.const 45 i64.shl i64.add - local.set $2 - local.get $0 - local.get $8 + local.set $4 + local.get $10 + local.get $1 f64.const 6755399441055744 f64.sub - local.tee $0 + local.tee $1 f64.const -0.005415212348111709 f64.mul f64.add - local.get $0 + local.get $1 f64.const -1.2864023111638346e-14 f64.mul f64.add - local.get $1 + local.get $0 f64.add local.tee $0 local.get $0 @@ -7951,61 +7950,61 @@ f64.add f64.mul f64.add - local.set $1 + local.set $0 local.get $3 i32.eqz if block $~lib/util/math/specialcase|inlined.1 (result f64) - local.get $4 + local.get $2 i64.const 2147483648 i64.and i64.eqz if - local.get $2 + local.get $4 i64.const 4544132024016830464 i64.sub f64.reinterpret_i64 - local.tee $0 - local.get $0 + local.tee $1 local.get $1 + local.get $0 f64.mul f64.add f64.const 5486124068793688683255936e279 f64.mul br $~lib/util/math/specialcase|inlined.1 end - local.get $2 + local.get $4 i64.const 4602678819172646912 i64.add local.tee $2 f64.reinterpret_i64 - local.tee $8 - local.get $8 + local.tee $1 local.get $1 + local.get $0 f64.mul f64.add - local.tee $0 + local.tee $8 f64.abs f64.const 1 f64.lt if (result f64) f64.const 1 - local.get $0 + local.get $8 f64.copysign local.tee $9 - local.get $0 + local.get $8 f64.add local.tee $10 local.get $9 local.get $10 f64.sub - local.get $0 + local.get $8 f64.add + local.get $1 local.get $8 - local.get $0 f64.sub - local.get $8 local.get $1 + local.get $0 f64.mul f64.add f64.add @@ -8024,18 +8023,18 @@ local.get $0 end else - local.get $0 + local.get $8 end f64.const 2.2250738585072014e-308 f64.mul end br $~lib/util/math/exp_inline|inlined.0 end - local.get $2 + local.get $4 f64.reinterpret_i64 - local.tee $0 - local.get $0 + local.tee $1 local.get $1 + local.get $0 f64.mul f64.add end @@ -8129,7 +8128,7 @@ i32.sub i32.const -16777217 i32.ge_u - local.tee $5 + local.tee $7 local.get $0 i32.reinterpret_f32 local.tee $2 @@ -8139,7 +8138,7 @@ i32.ge_u i32.or if - local.get $5 + local.get $7 if f32.const 1 local.get $3 @@ -8329,7 +8328,7 @@ i32.const 1 i32.eq select - local.set $7 + local.set $5 local.get $2 i32.const 2147483647 i32.and @@ -8377,22 +8376,22 @@ f64.mul f64.const 1 f64.sub - local.tee $8 - local.get $8 + local.tee $4 + local.get $4 f64.mul - local.set $4 + local.set $8 local.get $1 f64.promote_f32 - local.get $8 + local.get $4 f64.const 0.288457581109214 f64.mul f64.const -0.36092606229713164 f64.add - local.get $4 - local.get $4 + local.get $8 + local.get $8 f64.mul f64.mul - local.get $8 + local.get $4 f64.const 1.4426950408774342 f64.mul local.get $2 @@ -8403,17 +8402,17 @@ f64.convert_i32_s f64.add f64.add - local.get $8 + local.get $4 f64.const 0.480898481472577 f64.mul f64.const -0.7213474675006291 f64.add - local.get $4 + local.get $8 f64.mul f64.add f64.add f64.mul - local.tee $8 + local.tee $4 i64.reinterpret_f64 i64.const 47 i64.shr_u @@ -8424,35 +8423,35 @@ if f32.const -1584563250285286751870879e5 f32.const 1584563250285286751870879e5 - local.get $7 + local.get $5 select f32.const 1584563250285286751870879e5 f32.mul - local.get $8 + local.get $4 f64.const 127.99999995700433 f64.gt br_if $~lib/util/math/powf_lut|inlined.0 drop f32.const -2.524354896707238e-29 f32.const 2.524354896707238e-29 - local.get $7 + local.get $5 select f32.const 2.524354896707238e-29 f32.mul - local.get $8 + local.get $4 f64.const -150 f64.le br_if $~lib/util/math/powf_lut|inlined.0 drop end - local.get $8 + local.get $4 f64.const 211106232532992 f64.add - local.tee $4 + local.tee $8 i64.reinterpret_f64 local.set $6 - local.get $8 local.get $4 + local.get $8 f64.const 211106232532992 f64.sub f64.sub @@ -8480,7 +8479,7 @@ i32.const 7712 i32.add i64.load - local.get $7 + local.get $5 i64.extend_i32_u local.get $6 i64.add @@ -8691,18 +8690,18 @@ (local $3 i64) (local $4 i64) (local $5 i32) - (local $6 i64) - (local $7 f64) - (local $8 i32) + (local $6 i32) + (local $7 i64) + (local $8 f64) local.get $1 i64.reinterpret_f64 - local.tee $6 + local.tee $7 i64.const 52 i64.shr_u i64.const 2047 i64.and local.set $4 - local.get $6 + local.get $7 i64.const 1 i64.shl i64.eqz @@ -8742,7 +8741,7 @@ i64.const 63 i64.shr_u i32.wrap_i64 - local.set $8 + local.set $6 local.get $3 i64.eqz if (result i64) @@ -8768,10 +8767,10 @@ local.get $4 i64.eqz if (result i64) - local.get $6 + local.get $7 i64.const 1 local.get $4 - local.get $6 + local.get $7 i64.const 12 i64.shl i64.clz @@ -8780,13 +8779,13 @@ i64.sub i64.shl else - local.get $6 + local.get $7 i64.const 4503599627370495 i64.and i64.const 4503599627370496 i64.or end - local.set $6 + local.set $7 block $do-break|0 local.get $3 local.get $4 @@ -8807,7 +8806,7 @@ i64.gt_s if local.get $2 - local.get $6 + local.get $7 i64.ge_u if (result i64) local.get $5 @@ -8815,7 +8814,7 @@ i32.add local.set $5 local.get $2 - local.get $6 + local.get $7 i64.sub else local.get $2 @@ -8835,7 +8834,7 @@ end end local.get $2 - local.get $6 + local.get $7 i64.ge_u if local.get $5 @@ -8843,7 +8842,7 @@ i32.add local.set $5 local.get $2 - local.get $6 + local.get $7 i64.sub local.set $2 end @@ -8858,18 +8857,18 @@ i64.const 11 i64.shl i64.clz - local.tee $6 + local.tee $7 i64.sub local.set $3 local.get $2 - local.get $6 + local.get $7 i64.shl local.set $2 end end local.get $1 f64.abs - local.set $0 + local.set $1 local.get $3 i64.const 0 i64.gt_s @@ -8889,14 +8888,14 @@ i64.shr_u end f64.reinterpret_i64 - local.tee $1 - local.get $1 + local.tee $8 + local.get $8 f64.add - local.set $7 + local.set $0 + local.get $8 local.get $1 - local.get $0 f64.sub - local.get $1 + local.get $8 local.get $3 local.get $4 i64.eq @@ -8913,12 +8912,12 @@ i32.const 1 i32.and local.get $0 - local.get $7 + local.get $1 f64.eq i32.and local.get $0 - local.get $7 - f64.lt + local.get $1 + f64.gt i32.or else i32.const 0 @@ -8928,7 +8927,7 @@ local.tee $0 f64.neg local.get $0 - local.get $8 + local.get $6 select ) (func $~lib/math/NativeMathf.rem (param $0 f32) (param $1 f32) (result f32) @@ -8937,11 +8936,11 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 f32) - (local $8 i32) + (local $7 i32) + (local $8 f32) local.get $1 i32.reinterpret_f32 - local.tee $6 + local.tee $7 i32.const 23 i32.shr_u i32.const 255 @@ -8962,7 +8961,7 @@ i32.const 255 i32.eq i32.const 1 - local.get $6 + local.get $7 i32.const 1 i32.shl select @@ -8987,7 +8986,7 @@ local.get $2 i32.const 31 i32.shr_u - local.set $8 + local.set $6 local.get $3 if (result i32) local.get $2 @@ -9011,16 +9010,16 @@ local.set $2 local.get $4 if (result i32) - local.get $6 + local.get $7 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $6 + local.get $7 i32.const 1 local.get $4 - local.get $6 + local.get $7 i32.const 9 i32.shl i32.clz @@ -9029,7 +9028,7 @@ i32.sub i32.shl end - local.set $6 + local.set $7 block $do-break|0 local.get $3 local.get $4 @@ -9050,7 +9049,7 @@ i32.gt_s if local.get $2 - local.get $6 + local.get $7 i32.ge_u if (result i32) local.get $5 @@ -9058,7 +9057,7 @@ i32.add local.set $5 local.get $2 - local.get $6 + local.get $7 i32.sub else local.get $2 @@ -9078,7 +9077,7 @@ end end local.get $2 - local.get $6 + local.get $7 i32.ge_u if local.get $5 @@ -9086,7 +9085,7 @@ i32.add local.set $5 local.get $2 - local.get $6 + local.get $7 i32.sub local.set $2 end @@ -9097,11 +9096,11 @@ i32.const 8 i32.shl i32.clz - local.tee $6 + local.tee $7 i32.sub local.set $3 local.get $2 - local.get $6 + local.get $7 i32.shl local.set $2 else @@ -9111,7 +9110,7 @@ end local.get $1 f32.abs - local.set $0 + local.set $1 local.get $3 i32.const 0 i32.gt_s @@ -9131,14 +9130,14 @@ i32.shr_u end f32.reinterpret_i32 - local.tee $1 - local.get $1 + local.tee $8 + local.get $8 f32.add - local.set $7 + local.set $0 + local.get $8 local.get $1 - local.get $0 f32.sub - local.get $1 + local.get $8 local.get $3 local.get $4 i32.eq @@ -9155,12 +9154,12 @@ i32.const 1 i32.and local.get $0 - local.get $7 + local.get $1 f32.eq i32.and local.get $0 - local.get $7 - f32.lt + local.get $1 + f32.gt i32.or else i32.const 0 @@ -9170,22 +9169,22 @@ local.tee $0 f32.neg local.get $0 - local.get $8 + local.get $6 select ) (func $~lib/math/NativeMath.sin (param $0 f64) (result f64) (local $1 f64) - (local $2 f64) + (local $2 i64) (local $3 f64) (local $4 i32) - (local $5 i64) + (local $5 i32) (local $6 i32) - (local $7 i32) + (local $7 f64) (local $8 f64) (local $9 f64) local.get $0 i64.reinterpret_f64 - local.tee $5 + local.tee $2 i64.const 32 i64.shr_u i32.wrap_i64 @@ -9253,18 +9252,18 @@ return end block $~lib/math/rempio2|inlined.1 (result i32) - local.get $5 + local.get $2 i64.const 32 i64.shr_u i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $4 + local.tee $5 i32.const 1073928572 i32.lt_u if i32.const 1 - local.set $7 + local.set $4 local.get $6 if (result f64) local.get $0 @@ -9272,8 +9271,8 @@ f64.add local.set $0 i32.const -1 - local.set $7 - local.get $4 + local.set $4 + local.get $5 i32.const 1073291771 i32.ne if (result f64) @@ -9304,7 +9303,7 @@ f64.const 1.5707963267341256 f64.sub local.set $0 - local.get $4 + local.get $5 i32.const 1073291771 i32.ne if (result f64) @@ -9334,14 +9333,14 @@ local.get $0 global.set $~lib/math/rempio2_y0 global.set $~lib/math/rempio2_y1 - local.get $7 + local.get $4 br $~lib/math/rempio2|inlined.1 end - local.get $4 + local.get $5 i32.const 1094263291 i32.lt_u if - local.get $4 + local.get $5 i32.const 20 i32.shr_u local.tee $4 @@ -9350,12 +9349,12 @@ f64.const 0.6366197723675814 f64.mul f64.nearest - local.tee $2 + local.tee $7 f64.const 1.5707963267341256 f64.mul f64.sub local.tee $0 - local.get $2 + local.get $7 f64.const 6.077100506506192e-11 f64.mul local.tee $3 @@ -9373,12 +9372,12 @@ i32.const 16 i32.gt_u if - local.get $2 + local.get $7 f64.const 2.0222662487959506e-21 f64.mul local.get $0 local.get $0 - local.get $2 + local.get $7 f64.const 6.077100506303966e-11 f64.mul local.tee $1 @@ -9406,12 +9405,12 @@ i32.const 49 i32.gt_u if (result f64) - local.get $2 + local.get $7 f64.const 8.4784276603689e-32 f64.mul local.get $0 local.get $0 - local.get $2 + local.get $7 f64.const 2.0222662487111665e-21 f64.mul local.tee $1 @@ -9438,12 +9437,12 @@ local.get $3 f64.sub global.set $~lib/math/rempio2_y1 - local.get $2 + local.get $7 i32.trunc_f64_s br $~lib/math/rempio2|inlined.1 end i32.const 0 - local.get $5 + local.get $2 call $~lib/math/pio2_large_quot local.tee $4 i32.sub @@ -9453,36 +9452,36 @@ end local.set $4 global.get $~lib/math/rempio2_y0 - local.set $1 + local.set $3 global.get $~lib/math/rempio2_y1 - local.set $2 + local.set $7 local.get $4 i32.const 1 i32.and if (result f64) - local.get $1 - local.get $1 + local.get $3 + local.get $3 f64.mul - local.tee $0 - local.get $0 + local.tee $8 + local.get $8 f64.mul - local.set $3 + local.set $9 f64.const 1 - local.get $0 + local.get $8 f64.const 0.5 f64.mul - local.tee $8 + local.tee $0 f64.sub - local.tee $9 + local.tee $1 f64.const 1 - local.get $9 - f64.sub - local.get $8 + local.get $1 f64.sub local.get $0 - local.get $0 - local.get $0 - local.get $0 + f64.sub + local.get $8 + local.get $8 + local.get $8 + local.get $8 f64.const 2.480158728947673e-05 f64.mul f64.const -0.001388888888887411 @@ -9491,11 +9490,11 @@ f64.const 0.0416666666666666 f64.add f64.mul - local.get $3 - local.get $3 + local.get $9 + local.get $9 f64.mul - local.get $0 - local.get $0 + local.get $8 + local.get $8 f64.const -1.1359647557788195e-11 f64.mul f64.const 2.087572321298175e-09 @@ -9506,26 +9505,26 @@ f64.mul f64.add f64.mul - local.get $1 - local.get $2 + local.get $3 + local.get $7 f64.mul f64.sub f64.add f64.add else - local.get $1 - local.get $1 + local.get $3 + local.get $3 f64.mul local.tee $0 - local.get $1 + local.get $3 f64.mul - local.set $3 - local.get $1 + local.set $1 + local.get $3 local.get $0 - local.get $2 + local.get $7 f64.const 0.5 f64.mul - local.get $3 + local.get $1 local.get $0 local.get $0 f64.const 2.7557313707070068e-06 @@ -9550,9 +9549,9 @@ f64.mul f64.sub f64.mul - local.get $2 + local.get $7 f64.sub - local.get $3 + local.get $1 f64.const -0.16666666666666632 f64.mul f64.sub @@ -9570,11 +9569,11 @@ (local $1 i32) (local $2 f64) (local $3 f64) - (local $4 i64) - (local $5 i32) - (local $6 f64) - (local $7 i64) - (local $8 i32) + (local $4 f64) + (local $5 i64) + (local $6 i32) + (local $7 i32) + (local $8 i64) (local $9 i64) block $folding-inner0 local.get $0 @@ -9582,7 +9581,7 @@ local.tee $1 i32.const 31 i32.shr_u - local.set $5 + local.set $6 local.get $1 i32.const 2147483647 i32.and @@ -9602,10 +9601,10 @@ local.tee $2 local.get $2 f64.mul - local.tee $3 + local.tee $4 local.get $2 f64.mul - local.set $6 + local.set $3 br $folding-inner0 end local.get $1 @@ -9616,7 +9615,7 @@ i32.const 1075235811 i32.le_u if - local.get $5 + local.get $6 if (result f32) local.get $0 f64.promote_f32 @@ -9693,16 +9692,16 @@ local.get $2 f64.const 3.141592653589793 f64.sub - local.get $5 + local.get $6 select f64.neg local.tee $2 local.get $2 f64.mul - local.tee $3 + local.tee $4 local.get $2 f64.mul - local.set $6 + local.set $3 br $folding-inner0 end local.get $1 @@ -9713,7 +9712,7 @@ i32.const 1085271519 i32.le_u if - local.get $5 + local.get $6 if (result f32) local.get $0 f64.promote_f32 @@ -9790,15 +9789,15 @@ local.get $2 f64.const 6.283185307179586 f64.sub - local.get $5 + local.get $6 select local.tee $2 local.get $2 f64.mul - local.tee $3 + local.tee $4 local.get $2 f64.mul - local.set $6 + local.set $3 br $folding-inner0 end local.get $1 @@ -9817,22 +9816,22 @@ if local.get $0 f64.promote_f32 - local.tee $3 + local.tee $2 f64.const 0.6366197723675814 f64.mul f64.nearest - local.set $2 - local.get $3 + local.set $3 local.get $2 + local.get $3 f64.const 1.5707963109016418 f64.mul f64.sub - local.get $2 + local.get $3 f64.const 1.5893254773528196e-08 f64.mul f64.sub global.set $~lib/math/rempio2f_y - local.get $2 + local.get $3 i32.trunc_f64_s br $~lib/math/rempio2f|inlined.1 end @@ -9841,11 +9840,11 @@ i32.shr_s i32.const 152 i32.sub - local.tee $8 + local.tee $7 i32.const 63 i32.and i64.extend_i32_s - local.set $4 + local.set $8 f64.const 8.515303950216386e-20 local.get $0 f64.promote_f32 @@ -9857,7 +9856,7 @@ i32.or i64.extend_i32_s local.tee $9 - local.get $8 + local.get $7 i32.const 6 i32.shr_s i32.const 3 @@ -9866,37 +9865,37 @@ i32.add local.tee $1 i64.load - local.get $4 + local.get $8 i64.shl local.get $1 i64.load offset=8 - local.tee $7 + local.tee $5 i64.const 64 - local.get $4 + local.get $8 i64.sub i64.shr_u i64.or i64.mul - local.get $4 + local.get $8 i64.const 32 i64.gt_u if (result i64) - local.get $7 - local.get $4 + local.get $5 + local.get $8 i64.const 32 i64.sub i64.shl local.get $1 i64.load offset=16 i64.const 96 - local.get $4 + local.get $8 i64.sub i64.shr_u i64.or else - local.get $7 + local.get $5 i64.const 32 - local.get $4 + local.get $8 i64.sub i64.shr_u end @@ -9905,18 +9904,18 @@ i64.const 32 i64.shr_u i64.add - local.tee $4 + local.tee $5 i64.const 2 i64.shl - local.tee $7 + local.tee $8 f64.convert_i64_s f64.mul global.set $~lib/math/rempio2f_y i32.const 0 - local.get $4 + local.get $5 i64.const 62 i64.shr_u - local.get $7 + local.get $8 i64.const 63 i64.shr_u i64.add @@ -9924,7 +9923,7 @@ local.tee $1 i32.sub local.get $1 - local.get $5 + local.get $6 select end local.set $1 @@ -10001,20 +10000,20 @@ return end local.get $2 - local.get $6 local.get $3 + local.get $4 f64.const 0.008333329385889463 f64.mul f64.const -0.16666666641626524 f64.add f64.mul f64.add - local.get $6 - local.get $3 local.get $3 + local.get $4 + local.get $4 f64.mul f64.mul - local.get $3 + local.get $4 f64.const 2.718311493989822e-06 f64.mul f64.const -1.9839334836096632e-04 @@ -10025,50 +10024,50 @@ ) (func $std/math/test_sinh (param $0 f64) (param $1 f64) (param $2 f64) (result i32) (local $3 f64) - (local $4 f64) - (local $5 i32) - (local $6 i64) + (local $4 i32) + (local $5 i64) + (local $6 f64) block $__inlined_func$~lib/math/NativeMath.sinh (result f64) local.get $0 i64.reinterpret_f64 i64.const 9223372036854775807 i64.and - local.tee $6 + local.tee $5 f64.reinterpret_i64 - local.set $3 + local.set $6 f64.const 0.5 local.get $0 f64.copysign - local.set $4 - local.get $6 + local.set $3 + local.get $5 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $5 + local.tee $4 i32.const 1082535490 i32.lt_u if - local.get $3 + local.get $6 call $~lib/math/NativeMath.expm1 - local.set $3 - local.get $5 + local.set $6 + local.get $4 i32.const 1072693248 i32.lt_u if local.get $0 - local.get $5 + local.get $4 i32.const 1045430272 i32.lt_u br_if $__inlined_func$~lib/math/NativeMath.sinh drop - local.get $4 - local.get $3 local.get $3 + local.get $6 + local.get $6 f64.add - local.get $3 - local.get $3 + local.get $6 + local.get $6 f64.mul - local.get $3 + local.get $6 f64.const 1 f64.add f64.div @@ -10076,10 +10075,10 @@ f64.mul br $__inlined_func$~lib/math/NativeMath.sinh end - local.get $4 - local.get $3 - local.get $3 local.get $3 + local.get $6 + local.get $6 + local.get $6 f64.const 1 f64.add f64.div @@ -10087,12 +10086,12 @@ f64.mul br $__inlined_func$~lib/math/NativeMath.sinh end - local.get $3 + local.get $6 f64.const 1416.0996898839683 f64.sub call $~lib/math/NativeMath.exp - local.get $4 - local.get $4 + local.get $3 + local.get $3 f64.add f64.const 2247116418577894884661631e283 f64.mul @@ -10115,45 +10114,45 @@ ) (func $std/math/test_sinhf (param $0 f32) (param $1 f32) (param $2 f32) (result i32) (local $3 f32) - (local $4 f32) - (local $5 i32) + (local $4 i32) + (local $5 f32) block $__inlined_func$~lib/math/NativeMathf.sinh (result f32) local.get $0 i32.reinterpret_f32 i32.const 2147483647 i32.and - local.tee $5 + local.tee $4 f32.reinterpret_i32 - local.set $3 + local.set $5 f32.const 0.5 local.get $0 f32.copysign - local.set $4 - local.get $5 + local.set $3 + local.get $4 i32.const 1118925335 i32.lt_u if - local.get $3 - call $~lib/math/NativeMathf.expm1 - local.set $3 local.get $5 + call $~lib/math/NativeMathf.expm1 + local.set $5 + local.get $4 i32.const 1065353216 i32.lt_u if local.get $0 - local.get $5 + local.get $4 i32.const 964689920 i32.lt_u br_if $__inlined_func$~lib/math/NativeMathf.sinh drop - local.get $4 - local.get $3 local.get $3 + local.get $5 + local.get $5 f32.add - local.get $3 - local.get $3 + local.get $5 + local.get $5 f32.mul - local.get $3 + local.get $5 f32.const 1 f32.add f32.div @@ -10161,10 +10160,10 @@ f32.mul br $__inlined_func$~lib/math/NativeMathf.sinh end - local.get $4 - local.get $3 - local.get $3 local.get $3 + local.get $5 + local.get $5 + local.get $5 f32.const 1 f32.add f32.div @@ -10172,12 +10171,12 @@ f32.mul br $__inlined_func$~lib/math/NativeMathf.sinh end - local.get $3 + local.get $5 f32.const 162.88958740234375 f32.sub call $~lib/math/NativeMathf.exp - local.get $4 - local.get $4 + local.get $3 + local.get $3 f32.add f32.const 1661534994731144841129758e11 f32.mul @@ -10190,25 +10189,25 @@ call $std/math/check ) (func $~lib/math/tan_kern (param $0 f64) (param $1 f64) (param $2 i32) (result f64) - (local $3 f64) - (local $4 f64) - (local $5 i32) - (local $6 i32) + (local $3 i32) + (local $4 i32) + (local $5 f64) + (local $6 f64) (local $7 f64) local.get $0 i64.reinterpret_f64 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $5 + local.tee $3 i32.const 2147483647 i32.and i32.const 1072010280 i32.ge_u - local.tee $6 + local.tee $4 if f64.const 0.7853981633974483 - local.get $5 + local.get $3 i32.const 0 i32.lt_s if (result f64) @@ -10232,22 +10231,22 @@ local.get $0 local.get $0 f64.mul - local.tee $4 - local.get $4 + local.tee $5 + local.get $5 f64.mul - local.set $3 + local.set $6 local.get $0 local.get $1 - local.get $4 - local.get $4 + local.get $5 + local.get $5 local.get $0 f64.mul local.tee $7 - local.get $3 - local.get $3 - local.get $3 - local.get $3 - local.get $3 + local.get $6 + local.get $6 + local.get $6 + local.get $6 + local.get $6 f64.const -1.8558637485527546e-05 f64.mul f64.const 7.817944429395571e-05 @@ -10264,12 +10263,12 @@ f64.mul f64.const 0.13333333333320124 f64.add - local.get $4 - local.get $3 - local.get $3 - local.get $3 - local.get $3 - local.get $3 + local.get $5 + local.get $6 + local.get $6 + local.get $6 + local.get $6 + local.get $6 f64.const 2.590730518636337e-05 f64.mul f64.const 7.140724913826082e-05 @@ -10297,13 +10296,13 @@ f64.const 0.3333333333333341 f64.mul f64.add - local.tee $3 + local.tee $1 f64.add - local.set $1 - local.get $6 + local.set $5 + local.get $4 if f64.const 1 - local.get $5 + local.get $3 i32.const 30 i32.shr_s i32.const 2 @@ -10312,16 +10311,16 @@ f64.sub local.get $2 f64.convert_i32_s - local.tee $4 + local.tee $6 local.get $0 - local.get $1 - local.get $1 + local.get $5 + local.get $5 f64.mul - local.get $1 - local.get $4 + local.get $5 + local.get $6 f64.add f64.div - local.get $3 + local.get $1 f64.sub f64.sub f64.const 2 @@ -10334,32 +10333,32 @@ i32.const 1 i32.eq if - local.get $1 + local.get $5 return end f64.const -1 - local.get $1 + local.get $5 f64.div - local.tee $7 + local.tee $6 i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $4 + local.tee $7 + local.get $6 local.get $7 - local.get $4 - local.get $1 + local.get $5 i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $1 + local.tee $5 f64.mul f64.const 1 f64.add - local.get $4 - local.get $3 + local.get $7 local.get $1 + local.get $5 local.get $0 f64.sub f64.sub @@ -10371,29 +10370,29 @@ (func $~lib/math/NativeMath.tan (param $0 f64) (result f64) (local $1 i32) (local $2 f64) - (local $3 f64) - (local $4 f64) + (local $3 i64) + (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i64) + (local $6 f64) + (local $7 f64) local.get $0 i64.reinterpret_f64 - local.tee $7 + local.tee $3 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $5 + local.tee $4 i32.const 31 i32.shr_u local.set $1 - local.get $5 + local.get $4 i32.const 2147483647 i32.and - local.tee $5 + local.tee $4 i32.const 1072243195 i32.le_u if - local.get $5 + local.get $4 i32.const 1044381696 i32.lt_u if @@ -10406,7 +10405,7 @@ call $~lib/math/tan_kern return end - local.get $5 + local.get $4 i32.const 2146435072 i32.ge_u if @@ -10416,7 +10415,7 @@ return end block $~lib/math/rempio2|inlined.2 - local.get $7 + local.get $3 i64.const 32 i64.shr_u i32.wrap_i64 @@ -10427,7 +10426,7 @@ i32.lt_u if i32.const 1 - local.set $6 + local.set $4 local.get $1 if (result f64) local.get $0 @@ -10435,7 +10434,7 @@ f64.add local.set $0 i32.const -1 - local.set $6 + local.set $4 local.get $5 i32.const 1073291771 i32.ne @@ -10512,15 +10511,15 @@ f64.const 0.6366197723675814 f64.mul f64.nearest - local.tee $3 + local.tee $6 f64.const 1.5707963267341256 f64.mul f64.sub local.tee $0 - local.get $3 + local.get $6 f64.const 6.077100506506192e-11 f64.mul - local.tee $4 + local.tee $7 f64.sub local.tee $2 i64.reinterpret_f64 @@ -10535,12 +10534,12 @@ i32.const 16 i32.gt_u if - local.get $3 + local.get $6 f64.const 2.0222662487959506e-21 f64.mul local.get $0 local.get $0 - local.get $3 + local.get $6 f64.const 6.077100506303966e-11 f64.mul local.tee $2 @@ -10550,10 +10549,10 @@ local.get $2 f64.sub f64.sub - local.set $4 + local.set $7 local.get $1 local.get $0 - local.get $4 + local.get $7 f64.sub local.tee $2 i64.reinterpret_f64 @@ -10568,12 +10567,12 @@ i32.const 49 i32.gt_u if (result f64) - local.get $3 + local.get $6 f64.const 8.4784276603689e-32 f64.mul local.get $0 local.get $0 - local.get $3 + local.get $6 f64.const 2.0222662487111665e-21 f64.mul local.tee $2 @@ -10583,9 +10582,9 @@ local.get $2 f64.sub f64.sub - local.set $4 + local.set $7 local.get $0 - local.get $4 + local.get $7 f64.sub else local.get $2 @@ -10597,28 +10596,28 @@ local.get $0 local.get $2 f64.sub - local.get $4 + local.get $7 f64.sub global.set $~lib/math/rempio2_y1 - local.get $3 + local.get $6 i32.trunc_f64_s - local.set $6 + local.set $4 br $~lib/math/rempio2|inlined.2 end i32.const 0 - local.get $7 + local.get $3 call $~lib/math/pio2_large_quot - local.tee $5 + local.tee $4 i32.sub - local.get $5 + local.get $4 local.get $1 select - local.set $6 + local.set $4 end global.get $~lib/math/rempio2_y0 global.get $~lib/math/rempio2_y1 i32.const 1 - local.get $6 + local.get $4 i32.const 1 i32.and i32.const 1 @@ -10633,8 +10632,8 @@ (local $4 f64) (local $5 i64) (local $6 i32) - (local $7 i64) - (local $8 i32) + (local $7 i32) + (local $8 i64) (local $9 i64) block $folding-inner1 block $folding-inner0 @@ -10660,12 +10659,12 @@ end local.get $0 f64.promote_f32 - local.tee $3 - local.get $3 - f64.mul local.tee $2 local.get $2 f64.mul + local.tee $3 + local.get $3 + f64.mul local.set $4 br $folding-inner0 end @@ -10687,12 +10686,12 @@ f64.sub local.get $6 select - local.tee $3 - local.get $3 - f64.mul local.tee $2 local.get $2 f64.mul + local.tee $3 + local.get $3 + f64.mul local.set $4 br $folding-inner1 else @@ -10706,12 +10705,12 @@ f64.sub local.get $6 select - local.tee $3 - local.get $3 - f64.mul local.tee $2 local.get $2 f64.mul + local.tee $3 + local.get $3 + f64.mul local.set $4 br $folding-inner0 end @@ -10735,12 +10734,12 @@ f64.sub local.get $6 select - local.tee $3 - local.get $3 - f64.mul local.tee $2 local.get $2 f64.mul + local.tee $3 + local.get $3 + f64.mul local.set $4 br $folding-inner1 else @@ -10754,12 +10753,12 @@ f64.sub local.get $6 select - local.tee $3 - local.get $3 - f64.mul local.tee $2 local.get $2 f64.mul + local.tee $3 + local.get $3 + f64.mul local.set $4 br $folding-inner0 end @@ -10781,22 +10780,22 @@ if local.get $0 f64.promote_f32 - local.tee $3 + local.tee $2 f64.const 0.6366197723675814 f64.mul f64.nearest - local.set $2 - local.get $3 + local.set $3 local.get $2 + local.get $3 f64.const 1.5707963109016418 f64.mul f64.sub - local.get $2 + local.get $3 f64.const 1.5893254773528196e-08 f64.mul f64.sub global.set $~lib/math/rempio2f_y - local.get $2 + local.get $3 i32.trunc_f64_s br $~lib/math/rempio2f|inlined.2 end @@ -10805,11 +10804,11 @@ i32.shr_s i32.const 152 i32.sub - local.tee $8 + local.tee $7 i32.const 63 i32.and i64.extend_i32_s - local.set $5 + local.set $8 f64.const 8.515303950216386e-20 local.get $0 f64.promote_f32 @@ -10821,7 +10820,7 @@ i32.or i64.extend_i32_s local.tee $9 - local.get $8 + local.get $7 i32.const 6 i32.shr_s i32.const 3 @@ -10830,37 +10829,37 @@ i32.add local.tee $1 i64.load - local.get $5 + local.get $8 i64.shl local.get $1 i64.load offset=8 - local.tee $7 + local.tee $5 i64.const 64 - local.get $5 + local.get $8 i64.sub i64.shr_u i64.or i64.mul - local.get $5 + local.get $8 i64.const 32 i64.gt_u if (result i64) - local.get $7 local.get $5 + local.get $8 i64.const 32 i64.sub i64.shl local.get $1 i64.load offset=16 i64.const 96 - local.get $5 + local.get $8 i64.sub i64.shr_u i64.or else - local.get $7 - i64.const 32 local.get $5 + i64.const 32 + local.get $8 i64.sub i64.shr_u end @@ -10872,7 +10871,7 @@ local.tee $5 i64.const 2 i64.shl - local.tee $7 + local.tee $8 f64.convert_i64_s f64.mul global.set $~lib/math/rempio2f_y @@ -10880,7 +10879,7 @@ local.get $5 i64.const 62 i64.shr_u - local.get $7 + local.get $8 i64.const 63 i64.shr_u i64.add @@ -10893,36 +10892,36 @@ end local.set $1 global.get $~lib/math/rempio2f_y - local.tee $3 - local.get $3 - f64.mul local.tee $2 local.get $2 f64.mul + local.tee $3 + local.get $3 + f64.mul local.set $4 f64.const -1 - local.get $3 local.get $2 local.get $3 - f64.mul - local.tee $3 local.get $2 + f64.mul + local.tee $2 + local.get $3 f64.const 0.13339200271297674 f64.mul f64.const 0.3333313950307914 f64.add f64.mul f64.add - local.get $3 + local.get $2 local.get $4 f64.mul - local.get $2 + local.get $3 f64.const 0.024528318116654728 f64.mul f64.const 0.05338123784456704 f64.add local.get $4 - local.get $2 + local.get $3 f64.const 0.009465647849436732 f64.mul f64.const 0.002974357433599673 @@ -10941,28 +10940,28 @@ f32.demote_f64 return end - local.get $3 local.get $2 local.get $3 - f64.mul - local.tee $3 local.get $2 + f64.mul + local.tee $2 + local.get $3 f64.const 0.13339200271297674 f64.mul f64.const 0.3333313950307914 f64.add f64.mul f64.add - local.get $3 + local.get $2 local.get $4 f64.mul - local.get $2 + local.get $3 f64.const 0.024528318116654728 f64.mul f64.const 0.05338123784456704 f64.add local.get $4 - local.get $2 + local.get $3 f64.const 0.009465647849436732 f64.mul f64.const 0.002974357433599673 @@ -10975,28 +10974,28 @@ return end f64.const -1 - local.get $3 local.get $2 local.get $3 - f64.mul - local.tee $3 local.get $2 + f64.mul + local.tee $2 + local.get $3 f64.const 0.13339200271297674 f64.mul f64.const 0.3333313950307914 f64.add f64.mul f64.add - local.get $3 + local.get $2 local.get $4 f64.mul - local.get $2 + local.get $3 f64.const 0.024528318116654728 f64.mul f64.const 0.05338123784456704 f64.add local.get $4 - local.get $2 + local.get $3 f64.const 0.009465647849436732 f64.mul f64.const 0.002974357433599673 @@ -11009,38 +11008,38 @@ f32.demote_f64 ) (func $std/math/test_tanh (param $0 f64) (param $1 f64) (param $2 f64) (result i32) - (local $3 f64) - (local $4 i32) - (local $5 i64) + (local $3 i32) + (local $4 i64) + (local $5 f64) local.get $0 i64.reinterpret_f64 i64.const 9223372036854775807 i64.and - local.tee $5 + local.tee $4 f64.reinterpret_i64 - local.set $3 - local.get $5 + local.set $5 + local.get $4 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $4 + local.tee $3 i32.const 1071748074 i32.gt_u if (result f64) - local.get $4 + local.get $3 i32.const 1077149696 i32.gt_u if (result f64) f64.const 1 f64.const 0 - local.get $3 + local.get $5 f64.div f64.sub else f64.const 1 f64.const 2 - local.get $3 - local.get $3 + local.get $5 + local.get $5 f64.add call $~lib/math/NativeMath.expm1 f64.const 2 @@ -11049,36 +11048,36 @@ f64.sub end else - local.get $4 + local.get $3 i32.const 1070618798 i32.gt_u if (result f64) - local.get $3 - local.get $3 + local.get $5 + local.get $5 f64.add call $~lib/math/NativeMath.expm1 - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 f64.const 2 f64.add f64.div else - local.get $4 + local.get $3 i32.const 1048576 i32.ge_u if (result f64) - local.get $3 + local.get $5 f64.const -2 f64.mul call $~lib/math/NativeMath.expm1 - local.tee $3 + local.tee $5 f64.neg - local.get $3 + local.get $5 f64.const 2 f64.add f64.div else - local.get $3 + local.get $5 end end end @@ -11098,33 +11097,33 @@ end ) (func $std/math/test_tanhf (param $0 f32) (param $1 f32) (param $2 f32) (result i32) - (local $3 f32) - (local $4 i32) + (local $3 i32) + (local $4 f32) local.get $0 i32.reinterpret_f32 i32.const 2147483647 i32.and - local.tee $4 + local.tee $3 f32.reinterpret_i32 - local.set $3 - local.get $4 + local.set $4 + local.get $3 i32.const 1057791828 i32.gt_u if (result f32) - local.get $4 + local.get $3 i32.const 1092616192 i32.gt_u if (result f32) f32.const 0 - local.get $3 + local.get $4 f32.div f32.const 1 f32.add else f32.const 1 f32.const 2 - local.get $3 - local.get $3 + local.get $4 + local.get $4 f32.add call $~lib/math/NativeMathf.expm1 f32.const 2 @@ -11133,36 +11132,36 @@ f32.sub end else - local.get $4 + local.get $3 i32.const 1048757624 i32.gt_u if (result f32) - local.get $3 - local.get $3 + local.get $4 + local.get $4 f32.add call $~lib/math/NativeMathf.expm1 - local.tee $3 - local.get $3 + local.tee $4 + local.get $4 f32.const 2 f32.add f32.div else - local.get $4 + local.get $3 i32.const 8388608 i32.ge_u if (result f32) - local.get $3 + local.get $4 f32.const -2 f32.mul call $~lib/math/NativeMathf.expm1 - local.tee $3 + local.tee $4 f32.neg - local.get $3 + local.get $4 f32.const 2 f32.add f32.div else - local.get $3 + local.get $4 end end end @@ -11175,17 +11174,17 @@ (func $~lib/math/NativeMath.sincos (param $0 f64) (local $1 f64) (local $2 f64) - (local $3 f64) + (local $3 i64) (local $4 i32) - (local $5 i64) + (local $5 i32) (local $6 i32) - (local $7 i32) + (local $7 f64) (local $8 f64) (local $9 f64) (local $10 f64) local.get $0 i64.reinterpret_f64 - local.tee $5 + local.tee $3 i64.const 32 i64.shr_u i32.wrap_i64 @@ -11254,9 +11253,9 @@ f64.mul local.tee $2 f64.sub - local.tee $3 + local.tee $7 f64.const 1 - local.get $3 + local.get $7 f64.sub local.get $2 f64.sub @@ -11313,18 +11312,18 @@ return end block $~lib/math/rempio2|inlined.3 (result i32) - local.get $5 + local.get $3 i64.const 32 i64.shr_u i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $4 + local.tee $5 i32.const 1073928572 i32.lt_u if i32.const 1 - local.set $7 + local.set $4 local.get $6 if (result f64) local.get $0 @@ -11332,8 +11331,8 @@ f64.add local.set $0 i32.const -1 - local.set $7 - local.get $4 + local.set $4 + local.get $5 i32.const 1073291771 i32.ne if (result f64) @@ -11364,7 +11363,7 @@ f64.const 1.5707963267341256 f64.sub local.set $0 - local.get $4 + local.get $5 i32.const 1073291771 i32.ne if (result f64) @@ -11394,14 +11393,14 @@ local.get $0 global.set $~lib/math/rempio2_y0 global.set $~lib/math/rempio2_y1 - local.get $7 + local.get $4 br $~lib/math/rempio2|inlined.3 end - local.get $4 + local.get $5 i32.const 1094263291 i32.lt_u if - local.get $4 + local.get $5 i32.const 20 i32.shr_u local.tee $4 @@ -11410,12 +11409,12 @@ f64.const 0.6366197723675814 f64.mul f64.nearest - local.tee $3 + local.tee $7 f64.const 1.5707963267341256 f64.mul f64.sub local.tee $0 - local.get $3 + local.get $7 f64.const 6.077100506506192e-11 f64.mul local.tee $1 @@ -11433,12 +11432,12 @@ i32.const 16 i32.gt_u if - local.get $3 + local.get $7 f64.const 2.0222662487959506e-21 f64.mul local.get $0 local.get $0 - local.get $3 + local.get $7 f64.const 6.077100506303966e-11 f64.mul local.tee $1 @@ -11466,12 +11465,12 @@ i32.const 49 i32.gt_u if (result f64) - local.get $3 + local.get $7 f64.const 8.4784276603689e-32 f64.mul local.get $0 local.get $0 - local.get $3 + local.get $7 f64.const 2.0222662487111665e-21 f64.mul local.tee $1 @@ -11498,12 +11497,12 @@ local.get $1 f64.sub global.set $~lib/math/rempio2_y1 - local.get $3 + local.get $7 i32.trunc_f64_s br $~lib/math/rempio2|inlined.3 end i32.const 0 - local.get $5 + local.get $3 call $~lib/math/pio2_large_quot local.tee $4 i32.sub @@ -11516,18 +11515,18 @@ local.tee $2 local.get $2 f64.mul - local.tee $1 + local.tee $7 local.tee $0 local.get $2 f64.mul - local.set $3 + local.set $1 local.get $2 local.get $0 global.get $~lib/math/rempio2_y1 local.tee $8 f64.const 0.5 f64.mul - local.get $3 + local.get $1 local.get $0 local.get $0 f64.const 2.7557313707070068e-06 @@ -11554,29 +11553,29 @@ f64.mul local.get $8 f64.sub - local.get $3 + local.get $1 f64.const -0.16666666666666632 f64.mul f64.sub f64.sub - local.tee $3 + local.tee $9 local.set $0 f64.const 1 - local.get $1 + local.get $7 f64.const 0.5 f64.mul - local.tee $9 + local.tee $1 f64.sub local.tee $10 f64.const 1 local.get $10 f64.sub - local.get $9 - f64.sub - local.get $1 - local.get $1 - local.get $1 local.get $1 + f64.sub + local.get $7 + local.get $7 + local.get $7 + local.get $7 f64.const 2.480158728947673e-05 f64.mul f64.const -0.001388888888887411 @@ -11585,14 +11584,14 @@ f64.const 0.0416666666666666 f64.add f64.mul - local.get $1 - local.get $1 - f64.mul - local.tee $9 - local.get $9 + local.get $7 + local.get $7 f64.mul + local.tee $1 local.get $1 - local.get $1 + f64.mul + local.get $7 + local.get $7 f64.const -1.1359647557788195e-11 f64.mul f64.const 2.087572321298175e-09 @@ -11616,7 +11615,7 @@ if local.get $1 local.set $0 - local.get $3 + local.get $9 f64.neg local.set $1 end @@ -11664,9 +11663,9 @@ ) (func $~lib/math/NativeMath.imul (param $0 f64) (param $1 f64) (result f64) (local $2 i64) - (local $3 i64) + (local $3 i32) (local $4 f64) - (local $5 i32) + (local $5 i64) local.get $0 local.get $1 f64.add @@ -11686,14 +11685,14 @@ i64.shr_u i64.const 2047 i64.and - local.tee $3 + local.tee $5 i64.const 1053 i64.le_u if (result i32) local.get $0 i32.trunc_f64_s else - local.get $3 + local.get $5 i64.const 1106 i64.le_u if (result i32) @@ -11703,16 +11702,16 @@ i64.and i64.const 4503599627370496 i64.or - local.get $3 + local.get $5 i64.const 1043 i64.sub i64.shl i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $5 + local.tee $3 i32.sub - local.get $5 + local.get $3 local.get $2 i64.const 63 i64.shr_u @@ -11729,14 +11728,14 @@ i64.shr_u i64.const 2047 i64.and - local.tee $3 + local.tee $5 i64.const 1053 i64.le_u if (result i32) local.get $1 i32.trunc_f64_s else - local.get $3 + local.get $5 i64.const 1106 i64.le_u if (result i32) @@ -11746,16 +11745,16 @@ i64.and i64.const 4503599627370496 i64.or - local.get $3 + local.get $5 i64.const 1043 i64.sub i64.shl i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $5 + local.tee $3 i32.sub - local.get $5 + local.get $3 local.get $2 i64.const 63 i64.shr_u @@ -12171,13 +12170,13 @@ local.get $2 ) (func $start:std/math - (local $0 i32) - (local $1 i64) + (local $0 f64) + (local $1 i32) (local $2 i64) (local $3 i32) (local $4 i32) - (local $5 f64) - (local $6 f32) + (local $5 f32) + (local $6 i64) f64.const 2.718281828459045 global.get $~lib/bindings/Math/E f64.const 0 @@ -40730,8 +40729,8 @@ f64.const nan:0x8000000000000 f64.const 1 call $~lib/math/NativeMath.pow - local.tee $5 - local.get $5 + local.tee $0 + local.get $0 f64.eq if i32.const 0 @@ -40835,8 +40834,8 @@ f64.const nan:0x8000000000000 f64.const -1 call $~lib/math/NativeMath.pow - local.tee $5 - local.get $5 + local.tee $0 + local.get $0 f64.eq if i32.const 0 @@ -40940,8 +40939,8 @@ f64.const nan:0x8000000000000 f64.const 2 call $~lib/math/NativeMath.pow - local.tee $5 - local.get $5 + local.tee $0 + local.get $0 f64.eq if i32.const 0 @@ -40980,8 +40979,8 @@ f64.const -1 f64.const 0.5 call $~lib/math/NativeMath.pow - local.tee $5 - local.get $5 + local.tee $0 + local.get $0 f64.eq if i32.const 0 @@ -41046,8 +41045,8 @@ f64.const nan:0x8000000000000 f64.const 0.5 call $~lib/math/NativeMath.pow - local.tee $5 - local.get $5 + local.tee $0 + local.get $0 f64.eq if i32.const 0 @@ -44481,7 +44480,7 @@ i64.reinterpret_f64 call $~lib/math/NativeMath.seedRandom loop $for-loop|0 - local.get $0 + local.get $1 f64.convert_i32_s f64.const 1e6 f64.lt @@ -44494,28 +44493,28 @@ call $~lib/math/NativeMath.seedRandom end global.get $~lib/math/random_state0_64 - local.set $2 + local.set $6 global.get $~lib/math/random_state1_64 - local.tee $1 + local.tee $2 global.set $~lib/math/random_state0_64 - local.get $1 local.get $2 + local.get $6 i64.const 23 i64.shl - local.get $2 + local.get $6 i64.xor - local.tee $2 + local.tee $6 i64.const 17 i64.shr_u - local.get $2 + local.get $6 i64.xor i64.xor - local.get $1 + local.get $2 i64.const 26 i64.shr_u i64.xor global.set $~lib/math/random_state1_64 - local.get $1 + local.get $2 i64.const 12 i64.shr_u i64.const 4607182418800017408 @@ -44523,10 +44522,10 @@ f64.reinterpret_i64 f64.const 1 f64.sub - local.tee $5 + local.tee $0 f64.const 1 f64.lt - local.get $5 + local.get $0 f64.const 0 f64.ge i32.and @@ -44539,10 +44538,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -44550,9 +44549,9 @@ i64.reinterpret_f64 call $~lib/math/NativeMath.seedRandom i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 f64.convert_i32_s f64.const 1e6 f64.lt @@ -44565,24 +44564,24 @@ call $~lib/math/NativeMath.seedRandom end global.get $~lib/math/random_state0_32 - local.tee $3 + local.tee $4 global.get $~lib/math/random_state1_32 i32.xor - local.tee $4 - local.get $3 + local.tee $3 + local.get $4 i32.const 26 i32.rotl i32.xor - local.get $4 + local.get $3 i32.const 9 i32.shl i32.xor global.set $~lib/math/random_state0_32 - local.get $4 + local.get $3 i32.const 13 i32.rotl global.set $~lib/math/random_state1_32 - local.get $3 + local.get $4 i32.const -1640531525 i32.mul i32.const 5 @@ -44596,10 +44595,10 @@ f32.reinterpret_i32 f32.const 1 f32.sub - local.tee $6 + local.tee $5 f32.const 1 f32.lt - local.get $6 + local.get $5 f32.const 0 f32.ge i32.and @@ -44612,10 +44611,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end diff --git a/tests/compiler/std/mod.optimized.wat b/tests/compiler/std/mod.optimized.wat index 0253cb7e8e..3846b15198 100644 --- a/tests/compiler/std/mod.optimized.wat +++ b/tests/compiler/std/mod.optimized.wat @@ -17,9 +17,9 @@ (local $4 i64) (local $5 i64) (local $6 i64) - (local $7 f64) + (local $7 i64) (local $8 i64) - (local $9 i64) + (local $9 f64) block $__inlined_func$std/mod/check (result i32) block $__inlined_func$~lib/math/NativeMath.mod (result f64) local.get $0 @@ -36,20 +36,20 @@ drop local.get $1 i64.reinterpret_f64 - local.tee $5 + local.tee $6 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.set $6 - local.get $5 + local.set $5 + local.get $6 i64.const 1 i64.shl - local.tee $8 + local.tee $7 i64.eqz local.get $0 i64.reinterpret_f64 - local.tee $3 + local.tee $8 i64.const 52 i64.shr_u i64.const 2047 @@ -66,37 +66,37 @@ local.get $0 local.get $1 f64.mul - local.tee $7 - local.get $7 + local.tee $9 + local.get $9 f64.div br $__inlined_func$~lib/math/NativeMath.mod end + local.get $7 local.get $8 - local.get $3 i64.const 1 i64.shl - local.tee $9 + local.tee $3 i64.ge_u if local.get $0 - local.get $8 - local.get $9 + local.get $3 + local.get $7 i64.ne f64.convert_i32_u f64.mul br $__inlined_func$~lib/math/NativeMath.mod end - local.get $3 + local.get $8 i64.const 63 i64.shr_u - local.set $8 + local.set $7 local.get $4 i64.eqz if (result i64) - local.get $3 + local.get $8 i64.const 1 local.get $4 - local.get $3 + local.get $8 i64.const 12 i64.shl i64.clz @@ -105,51 +105,51 @@ i64.sub i64.shl else - local.get $3 + local.get $8 i64.const 4503599627370495 i64.and i64.const 4503599627370496 i64.or end local.set $3 - local.get $6 + local.get $5 i64.eqz if (result i64) - local.get $5 - i64.const 1 local.get $6 + i64.const 1 local.get $5 + local.get $6 i64.const 12 i64.shl i64.clz i64.sub - local.tee $6 + local.tee $5 i64.sub i64.shl else - local.get $5 + local.get $6 i64.const 4503599627370495 i64.and i64.const 4503599627370496 i64.or end - local.set $5 + local.set $6 block $folding-inner0 loop $while-continue|0 local.get $4 - local.get $6 + local.get $5 i64.gt_s if local.get $3 - local.get $5 + local.get $6 i64.ge_u if (result i64) local.get $3 - local.get $5 + local.get $6 i64.eq br_if $folding-inner0 local.get $3 - local.get $5 + local.get $6 i64.sub else local.get $3 @@ -166,15 +166,15 @@ end local.get $4 local.get $3 - local.get $5 + local.get $6 i64.ge_u if local.get $3 - local.get $5 + local.get $6 i64.eq br_if $folding-inner0 local.get $3 - local.get $5 + local.get $6 i64.sub local.set $3 end @@ -182,32 +182,32 @@ i64.const 11 i64.shl i64.clz - local.tee $5 + local.tee $4 i64.sub - local.set $4 + local.set $5 local.get $3 - local.get $5 + local.get $4 i64.shl local.set $3 - local.get $4 + local.get $5 i64.const 0 i64.gt_s if (result i64) local.get $3 i64.const 4503599627370496 i64.sub - local.get $4 + local.get $5 i64.const 52 i64.shl i64.or else local.get $3 i64.const 1 - local.get $4 + local.get $5 i64.sub i64.shr_u end - local.get $8 + local.get $7 i64.const 63 i64.shl i64.or @@ -218,8 +218,8 @@ f64.const 0 f64.mul end - local.tee $7 - local.get $7 + local.tee $9 + local.get $9 f64.ne local.get $2 local.get $2 @@ -230,7 +230,7 @@ local.get $2 f64.div f64.const 1 - local.get $7 + local.get $9 f64.div f64.eq local.get $2 @@ -239,7 +239,7 @@ br_if $__inlined_func$std/mod/check drop local.get $2 - local.get $7 + local.get $9 f64.eq end if (result i32) @@ -298,19 +298,19 @@ drop local.get $1 i32.reinterpret_f32 - local.tee $5 + local.tee $6 i32.const 23 i32.shr_u i32.const 255 i32.and - local.set $6 + local.set $5 i32.const 1 local.get $1 local.get $1 f32.ne local.get $0 i32.reinterpret_f32 - local.tee $3 + local.tee $7 i32.const 23 i32.shr_u i32.const 255 @@ -319,10 +319,10 @@ i32.const 255 i32.eq i32.const 1 - local.get $5 + local.get $6 i32.const 1 i32.shl - local.tee $7 + local.tee $8 select select if @@ -334,37 +334,37 @@ f32.div br $__inlined_func$~lib/math/NativeMathf.mod end + local.get $8 local.get $7 - local.get $3 i32.const 1 i32.shl - local.tee $8 + local.tee $3 i32.ge_u if local.get $0 - local.get $7 + local.get $3 local.get $8 i32.ne f32.convert_i32_u f32.mul br $__inlined_func$~lib/math/NativeMathf.mod end - local.get $3 + local.get $7 i32.const -2147483648 i32.and - local.set $7 + local.set $8 local.get $4 if (result i32) - local.get $3 + local.get $7 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $3 + local.get $7 i32.const 1 local.get $4 - local.get $3 + local.get $7 i32.const 9 i32.shl i32.clz @@ -374,43 +374,43 @@ i32.shl end local.set $3 - local.get $6 + local.get $5 if (result i32) - local.get $5 + local.get $6 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $5 - i32.const 1 local.get $6 + i32.const 1 local.get $5 + local.get $6 i32.const 9 i32.shl i32.clz i32.sub - local.tee $6 + local.tee $5 i32.sub i32.shl end - local.set $5 + local.set $6 block $folding-inner0 loop $while-continue|0 local.get $4 - local.get $6 + local.get $5 i32.gt_s if local.get $3 - local.get $5 + local.get $6 i32.ge_u if (result i32) local.get $3 - local.get $5 + local.get $6 i32.eq br_if $folding-inner0 local.get $3 - local.get $5 + local.get $6 i32.sub else local.get $3 @@ -427,15 +427,15 @@ end local.get $4 local.get $3 - local.get $5 + local.get $6 i32.ge_u if local.get $3 - local.get $5 + local.get $6 i32.eq br_if $folding-inner0 local.get $3 - local.get $5 + local.get $6 i32.sub local.set $3 end @@ -443,32 +443,32 @@ i32.const 8 i32.shl i32.clz - local.tee $5 + local.tee $4 i32.sub - local.set $4 + local.set $5 local.get $3 - local.get $5 + local.get $4 i32.shl local.set $3 - local.get $4 + local.get $5 i32.const 0 i32.gt_s if (result i32) local.get $3 i32.const 8388608 i32.sub - local.get $4 + local.get $5 i32.const 23 i32.shl i32.or else local.get $3 i32.const 1 - local.get $4 + local.get $5 i32.sub i32.shr_u end - local.get $7 + local.get $8 i32.or f32.reinterpret_i32 br $__inlined_func$~lib/math/NativeMathf.mod diff --git a/tests/compiler/std/new.optimized.wat b/tests/compiler/std/new.optimized.wat index 4d8873a64e..aaa56faf34 100644 --- a/tests/compiler/std/new.optimized.wat +++ b/tests/compiler/std/new.optimized.wat @@ -172,19 +172,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -209,9 +209,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -219,17 +219,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -517,10 +517,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -532,15 +532,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -570,7 +570,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -606,12 +606,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -629,11 +629,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17872 @@ -641,14 +641,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -658,17 +658,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1059,7 +1059,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1136,16 +1136,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $0 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1193,7 +1193,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $2 + local.tee $3 i32.const -4 i32.and i32.const 28 @@ -1203,7 +1203,7 @@ i32.ge_u if local.get $0 - local.get $2 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1212,7 +1212,7 @@ local.get $0 i32.const 32 i32.add - local.tee $2 + local.tee $3 local.get $4 i32.const 4 i32.sub @@ -1220,11 +1220,11 @@ i32.or i32.store local.get $1 - local.get $2 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $2 + local.get $3 i32.const -2 i32.and i32.store @@ -1250,26 +1250,26 @@ i32.const 8 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 global.get $~lib/rt/itcms/white - local.get $2 + local.get $1 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1319,7 +1319,7 @@ i32.sub i32.const 0 i32.store8 - local.get $3 + local.get $2 local.get $0 i32.store local.get $0 @@ -1387,19 +1387,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1409,22 +1409,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17860 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1438,9 +1438,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1450,23 +1450,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1474,7 +1474,7 @@ else i32.const 1440 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1248 @@ -1484,7 +1484,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1444 @@ -1499,28 +1499,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/std/object.optimized.wat b/tests/compiler/std/object.optimized.wat index a44f371dfd..179a69a586 100644 --- a/tests/compiler/std/object.optimized.wat +++ b/tests/compiler/std/object.optimized.wat @@ -107,14 +107,14 @@ if local.get $2 i32.load16_u - local.tee $3 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $3 i32.ne if - local.get $3 local.get $4 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end diff --git a/tests/compiler/std/operator-overloading.optimized.wat b/tests/compiler/std/operator-overloading.optimized.wat index a566145f77..6c622c3e0d 100644 --- a/tests/compiler/std/operator-overloading.optimized.wat +++ b/tests/compiler/std/operator-overloading.optimized.wat @@ -228,19 +228,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -265,9 +265,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -275,17 +275,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -573,10 +573,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -588,15 +588,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -626,7 +626,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -662,12 +662,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -685,11 +685,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17968 @@ -697,14 +697,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -714,17 +714,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1197,17 +1197,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1216,19 +1216,19 @@ local.get $1 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1254,26 +1254,26 @@ i32.const 8 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $0 i32.load offset=8 - local.set $0 + local.set $2 local.get $1 global.get $~lib/rt/itcms/white - local.get $2 + local.get $0 i32.or i32.store offset=4 local.get $1 - local.get $0 + local.get $2 i32.store offset=8 - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $2 + local.get $0 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2204,23 +2204,23 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/s2 global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/s1 local.tee $0 + global.get $std/operator-overloading/s1 + local.tee $1 i32.store - local.get $1 + local.get $0 global.get $std/operator-overloading/s2 - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 - i32.load local.get $1 i32.load - i32.sub local.get $0 - i32.load offset=4 + i32.load + i32.sub local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 i32.sub call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/s @@ -2252,23 +2252,23 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/m2 global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/m1 local.tee $0 + global.get $std/operator-overloading/m1 + local.tee $1 i32.store - local.get $1 + local.get $0 global.get $std/operator-overloading/m2 - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 - i32.load local.get $1 i32.load - i32.mul local.get $0 - i32.load offset=4 + i32.load + i32.mul local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 i32.mul call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/m @@ -2302,23 +2302,23 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/d2 global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/d1 local.tee $0 + global.get $std/operator-overloading/d1 + local.tee $1 i32.store - local.get $1 + local.get $0 global.get $std/operator-overloading/d2 - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 - i32.load local.get $1 i32.load - i32.div_s local.get $0 - i32.load offset=4 + i32.load + i32.div_s local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 i32.div_s call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/d @@ -2352,23 +2352,23 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/f2 global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/f1 local.tee $0 + global.get $std/operator-overloading/f1 + local.tee $1 i32.store - local.get $1 + local.get $0 global.get $std/operator-overloading/f2 - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 - i32.load local.get $1 i32.load - i32.rem_s local.get $0 - i32.load offset=4 + i32.load + i32.rem_s local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 i32.rem_s call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/f @@ -2399,23 +2399,23 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/p2 global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/p1 local.tee $0 + global.get $std/operator-overloading/p1 + local.tee $1 i32.store - local.get $1 + local.get $0 global.get $std/operator-overloading/p2 - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 - i32.load local.get $1 i32.load - call $~lib/math/ipow32 local.get $0 - i32.load offset=4 + i32.load + call $~lib/math/ipow32 local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 call $~lib/math/ipow32 call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/p @@ -2449,23 +2449,23 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/n2 global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/n1 local.tee $0 + global.get $std/operator-overloading/n1 + local.tee $1 i32.store - local.get $1 + local.get $0 global.get $std/operator-overloading/n2 - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 - i32.load local.get $1 i32.load - i32.and local.get $0 - i32.load offset=4 + i32.load + i32.and local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 i32.and call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/n @@ -2499,23 +2499,23 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/o2 global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/o1 local.tee $0 + global.get $std/operator-overloading/o1 + local.tee $1 i32.store - local.get $1 + local.get $0 global.get $std/operator-overloading/o2 - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 - i32.load local.get $1 i32.load - i32.or local.get $0 - i32.load offset=4 + i32.load + i32.or local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 i32.or call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/o @@ -2549,23 +2549,23 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/x2 global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/x1 local.tee $0 + global.get $std/operator-overloading/x1 + local.tee $1 i32.store - local.get $1 + local.get $0 global.get $std/operator-overloading/x2 - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 - i32.load local.get $1 i32.load - i32.xor local.get $0 - i32.load offset=4 + i32.load + i32.xor local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 i32.xor call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/x @@ -2599,24 +2599,24 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/eq2 global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/eq1 local.tee $0 + global.get $std/operator-overloading/eq1 + local.tee $1 i32.store - local.get $1 + local.get $0 global.get $std/operator-overloading/eq2 - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 - i32.load local.get $1 i32.load + local.get $0 + i32.load i32.eq if (result i32) - local.get $0 - i32.load offset=4 local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 i32.eq else i32.const 0 @@ -2642,24 +2642,24 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/eq4 global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/eq3 local.tee $0 + global.get $std/operator-overloading/eq3 + local.tee $1 i32.store - local.get $1 + local.get $0 global.get $std/operator-overloading/eq4 - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 - i32.load local.get $1 i32.load + local.get $0 + i32.load i32.eq if (result i32) - local.get $0 - i32.load offset=4 local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 i32.eq else i32.const 0 @@ -2675,24 +2675,24 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/eq1 local.tee $0 + global.get $std/operator-overloading/eq1 + local.tee $1 i32.store - local.get $1 + local.get $0 global.get $std/operator-overloading/eq2 - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 - i32.load local.get $1 i32.load + local.get $0 + i32.load i32.ne if (result i32) - local.get $0 - i32.load offset=4 local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 i32.ne else i32.const 0 @@ -2708,24 +2708,24 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/eq3 local.tee $0 + global.get $std/operator-overloading/eq3 + local.tee $1 i32.store - local.get $1 + local.get $0 global.get $std/operator-overloading/eq4 - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 - i32.load local.get $1 i32.load + local.get $0 + i32.load i32.ne if (result i32) - local.get $0 - i32.load offset=4 local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 i32.ne else i32.const 0 @@ -2751,24 +2751,24 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/gt2 global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/gt1 local.tee $0 + global.get $std/operator-overloading/gt1 + local.tee $1 i32.store - local.get $1 + local.get $0 global.get $std/operator-overloading/gt2 - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 - i32.load local.get $1 i32.load + local.get $0 + i32.load i32.gt_s if (result i32) - local.get $0 - i32.load offset=4 local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 i32.gt_s else i32.const 0 @@ -2794,24 +2794,24 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/gte2 global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/gte1 local.tee $0 + global.get $std/operator-overloading/gte1 + local.tee $1 i32.store - local.get $1 + local.get $0 global.get $std/operator-overloading/gte2 - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 - i32.load local.get $1 i32.load + local.get $0 + i32.load i32.ge_s if (result i32) - local.get $0 - i32.load offset=4 local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 i32.ge_s else i32.const 0 @@ -2837,24 +2837,24 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/le2 global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/le1 local.tee $0 + global.get $std/operator-overloading/le1 + local.tee $1 i32.store - local.get $1 + local.get $0 global.get $std/operator-overloading/le2 - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 - i32.load local.get $1 i32.load + local.get $0 + i32.load i32.lt_s if (result i32) - local.get $0 - i32.load offset=4 local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 i32.lt_s else i32.const 0 @@ -2880,24 +2880,24 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/leq2 global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/leq1 local.tee $0 + global.get $std/operator-overloading/leq1 + local.tee $1 i32.store - local.get $1 + local.get $0 global.get $std/operator-overloading/leq2 - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 - i32.load local.get $1 i32.load + local.get $0 + i32.load i32.le_s if (result i32) - local.get $0 - i32.load offset=4 local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 i32.le_s else i32.const 0 @@ -3407,18 +3407,18 @@ call $std/operator-overloading/TesterInlineStatic#constructor global.set $std/operator-overloading/ais1 global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/ais1 local.tee $0 + global.get $std/operator-overloading/ais1 + local.tee $1 i32.store - local.get $1 local.get $0 + local.get $1 i32.store offset=8 - local.get $0 + local.get $1 i32.load i32.const 1 i32.add - local.get $0 + local.get $1 i32.load offset=4 i32.const 1 i32.add @@ -3659,19 +3659,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -3681,22 +3681,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17956 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -3710,9 +3710,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -3722,23 +3722,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -3746,7 +3746,7 @@ else i32.const 1520 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1248 @@ -3756,7 +3756,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1524 @@ -3771,28 +3771,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/std/pointer.optimized.wat b/tests/compiler/std/pointer.optimized.wat index af6d52a5cd..19a9eeae86 100644 --- a/tests/compiler/std/pointer.optimized.wat +++ b/tests/compiler/std/pointer.optimized.wat @@ -20,33 +20,33 @@ (local $4 i32) (local $5 i32) i32.const 8 - local.set $5 + local.set $4 loop $while-continue|0 local.get $1 i32.const 3 i32.and i32.const 0 - local.get $5 + local.get $4 select if local.get $0 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $5 + local.get $4 i32.const 1 i32.sub - local.set $5 + local.set $4 br $while-continue|0 end end @@ -56,7 +56,7 @@ i32.eqz if loop $while-continue|1 - local.get $5 + local.get $4 i32.const 16 i32.ge_u if @@ -84,14 +84,14 @@ i32.const 16 i32.add local.set $0 - local.get $5 + local.get $4 i32.const 16 i32.sub - local.set $5 + local.set $4 br $while-continue|1 end end - local.get $5 + local.get $4 i32.const 8 i32.and if @@ -112,7 +112,7 @@ i32.add local.set $0 end - local.get $5 + local.get $4 i32.const 4 i32.and if @@ -129,7 +129,7 @@ i32.add local.set $0 end - local.get $5 + local.get $4 i32.const 2 i32.and if @@ -146,7 +146,7 @@ i32.add local.set $0 end - local.get $5 + local.get $4 i32.const 1 i32.and if @@ -157,7 +157,7 @@ end return end - local.get $5 + local.get $4 i32.const 32 i32.ge_u if @@ -174,7 +174,7 @@ end local.get $1 i32.load - local.set $4 + local.set $5 local.get $0 local.get $1 i32.load8_u @@ -186,27 +186,27 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $0 local.get $1 i32.const 2 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $5 + local.get $4 i32.const 3 i32.sub - local.set $5 + local.set $4 loop $while-continue|3 - local.get $5 + local.get $4 i32.const 17 i32.ge_u if @@ -216,7 +216,7 @@ local.tee $2 i32.const 8 i32.shl - local.get $4 + local.get $5 i32.const 24 i32.shr_u i32.or @@ -246,7 +246,7 @@ local.get $0 local.get $1 i32.load offset=13 - local.tee $4 + local.tee $5 i32.const 8 i32.shl local.get $2 @@ -262,10 +262,10 @@ i32.const 16 i32.add local.set $0 - local.get $5 + local.get $4 i32.const 16 i32.sub - local.set $5 + local.set $4 br $while-continue|3 end end @@ -273,31 +273,31 @@ end local.get $1 i32.load - local.set $4 + local.set $5 local.get $0 local.get $1 i32.load8_u i32.store8 local.get $0 - local.tee $3 + local.tee $2 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $2 + local.tee $3 i32.const 2 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $5 + local.get $4 i32.const 2 i32.sub - local.set $5 + local.set $4 loop $while-continue|4 - local.get $5 + local.get $4 i32.const 18 i32.ge_u if @@ -307,7 +307,7 @@ local.tee $2 i32.const 16 i32.shl - local.get $4 + local.get $5 i32.const 16 i32.shr_u i32.or @@ -337,7 +337,7 @@ local.get $0 local.get $1 i32.load offset=14 - local.tee $4 + local.tee $5 i32.const 16 i32.shl local.get $2 @@ -353,10 +353,10 @@ i32.const 16 i32.add local.set $0 - local.get $5 + local.get $4 i32.const 16 i32.sub - local.set $5 + local.set $4 br $while-continue|4 end end @@ -364,27 +364,27 @@ end local.get $1 i32.load - local.set $4 + local.set $5 local.get $0 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $5 + local.get $4 i32.const 1 i32.sub - local.set $5 + local.set $4 loop $while-continue|5 - local.get $5 + local.get $4 i32.const 19 i32.ge_u if @@ -394,7 +394,7 @@ local.tee $2 i32.const 24 i32.shl - local.get $4 + local.get $5 i32.const 8 i32.shr_u i32.or @@ -424,7 +424,7 @@ local.get $0 local.get $1 i32.load offset=15 - local.tee $4 + local.tee $5 i32.const 24 i32.shl local.get $2 @@ -440,16 +440,16 @@ i32.const 16 i32.add local.set $0 - local.get $5 + local.get $4 i32.const 16 i32.sub - local.set $5 + local.set $4 br $while-continue|5 end end end end - local.get $5 + local.get $4 i32.const 16 i32.and if @@ -460,141 +460,129 @@ local.get $0 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add - local.set $2 + local.set $3 local.get $0 local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $2 i32.const 2 i32.add - local.set $3 - local.get $2 - local.tee $0 + local.set $0 + local.get $3 i32.const 2 i32.add - local.set $2 - local.get $1 - local.get $0 + local.set $1 + local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - local.get $2 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $2 - local.tee $0 + local.get $0 i32.const 2 i32.add local.set $2 local.get $1 + i32.const 2 + i32.add + local.set $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $2 i32.const 2 i32.add - local.set $3 - local.get $2 - local.tee $0 + local.set $0 + local.get $3 i32.const 2 i32.add - local.set $2 - local.get $1 - local.get $0 + local.set $1 + local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - local.get $2 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $2 - local.tee $0 + local.get $0 i32.const 2 i32.add local.set $2 local.get $1 + i32.const 2 + i32.add + local.set $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $2 i32.const 2 i32.add - local.set $3 - local.get $2 - local.tee $0 + local.set $0 + local.get $3 i32.const 2 i32.add - local.set $2 - local.get $1 - local.get $0 + local.set $1 + local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - local.get $2 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $2 - local.tee $0 + local.get $0 i32.const 2 i32.add local.set $2 local.get $1 + i32.const 2 + i32.add + local.set $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $0 - local.get $2 + local.get $3 i32.const 2 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $5 + local.get $4 i32.const 8 i32.and if @@ -605,69 +593,65 @@ local.get $0 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add - local.set $2 + local.set $3 local.get $0 local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $3 - local.tee $1 + local.get $2 i32.const 2 i32.add - local.set $3 - local.get $2 - local.tee $0 + local.set $0 + local.get $3 i32.const 2 i32.add - local.set $2 - local.get $1 - local.get $0 + local.set $1 + local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - local.get $2 + local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $3 - local.tee $1 - i32.const 2 - i32.add - local.set $3 - local.get $2 - local.tee $0 + local.get $0 i32.const 2 i32.add local.set $2 local.get $1 + i32.const 2 + i32.add + local.set $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $0 - local.get $2 + local.get $3 i32.const 2 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $5 + local.get $4 i32.const 4 i32.and if @@ -678,33 +662,33 @@ local.get $0 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.add - local.set $2 + local.set $3 local.get $0 local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $0 - local.get $2 + local.get $3 i32.const 2 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $5 + local.get $4 i32.const 2 i32.and if @@ -713,21 +697,21 @@ i32.load8_u i32.store8 local.get $0 - local.tee $3 + local.tee $2 i32.const 2 i32.add local.set $0 local.get $1 - local.tee $2 + local.tee $3 i32.const 2 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u offset=1 i32.store8 offset=1 end - local.get $5 + local.get $4 i32.const 1 i32.and if @@ -902,9 +886,9 @@ unreachable end global.get $std/pointer/one - local.set $1 + local.set $0 global.get $std/pointer/two - local.tee $0 + local.tee $1 if block $~lib/util/memory/memmove|inlined.0 i32.const 8 @@ -913,33 +897,33 @@ local.get $1 i32.eq br_if $~lib/util/memory/memmove|inlined.0 - local.get $0 local.get $1 + local.get $0 i32.sub i32.const 8 i32.sub i32.const -16 i32.le_u if - local.get $1 local.get $0 + local.get $1 call $~lib/util/memory/memcpy br $~lib/util/memory/memmove|inlined.0 end local.get $0 local.get $1 - i32.gt_u + i32.lt_u if - local.get $0 + local.get $1 i32.const 7 i32.and - local.get $1 + local.get $0 i32.const 7 i32.and i32.eq if loop $while-continue|0 - local.get $1 + local.get $0 i32.const 7 i32.and if @@ -950,16 +934,16 @@ i32.const 1 i32.sub local.set $4 - local.get $1 + local.get $0 local.tee $3 i32.const 1 i32.add - local.set $1 - local.get $0 + local.set $0 + local.get $1 local.tee $2 i32.const 1 i32.add - local.set $0 + local.set $1 local.get $3 local.get $2 i32.load8_u @@ -972,22 +956,22 @@ i32.const 8 i32.ge_u if - local.get $1 local.get $0 + local.get $1 i64.load i64.store local.get $4 i32.const 8 i32.sub local.set $4 - local.get $1 - i32.const 8 - i32.add - local.set $1 local.get $0 i32.const 8 i32.add local.set $0 + local.get $1 + i32.const 8 + i32.add + local.set $1 br $while-continue|1 end end @@ -995,16 +979,16 @@ loop $while-continue|2 local.get $4 if - local.get $1 + local.get $0 local.tee $3 i32.const 1 i32.add - local.set $1 - local.get $0 + local.set $0 + local.get $1 local.tee $2 i32.const 1 i32.add - local.set $0 + local.set $1 local.get $3 local.get $2 i32.load8_u @@ -1017,16 +1001,16 @@ end end else - local.get $0 + local.get $1 i32.const 7 i32.and - local.get $1 + local.get $0 i32.const 7 i32.and i32.eq if loop $while-continue|3 - local.get $1 + local.get $0 local.get $4 i32.add i32.const 7 @@ -1039,9 +1023,9 @@ i32.const 1 i32.sub local.tee $4 - local.get $1 - i32.add local.get $0 + i32.add + local.get $1 local.get $4 i32.add i32.load8_u @@ -1058,9 +1042,9 @@ i32.const 8 i32.sub local.tee $4 - local.get $1 - i32.add local.get $0 + i32.add + local.get $1 local.get $4 i32.add i64.load @@ -1076,9 +1060,9 @@ i32.const 1 i32.sub local.tee $4 - local.get $1 - i32.add local.get $0 + i32.add + local.get $1 local.get $4 i32.add i32.load8_u @@ -1089,37 +1073,37 @@ end end else - local.get $1 + local.get $0 i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 8 i32.add - local.tee $0 + local.tee $1 i32.const 1 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=2 - local.get $0 + local.get $1 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $0 + local.get $1 i32.const 3 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $0 i32.const 0 i32.store8 offset=3 - local.get $0 + local.get $1 i32.const 4 i32.sub i32.const 0 diff --git a/tests/compiler/std/set.optimized.wat b/tests/compiler/std/set.optimized.wat index 12d61f3acd..0b186d7271 100644 --- a/tests/compiler/std/set.optimized.wat +++ b/tests/compiler/std/set.optimized.wat @@ -126,7 +126,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -149,7 +149,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -159,23 +159,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -183,7 +183,7 @@ else i32.const 1648 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1248 @@ -193,7 +193,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 1652 @@ -208,27 +208,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -316,19 +316,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -353,9 +353,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -363,17 +363,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -661,10 +661,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -676,15 +676,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -714,7 +714,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -750,12 +750,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -773,11 +773,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 18224 @@ -785,14 +785,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -802,17 +802,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1290,14 +1290,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1307,17 +1307,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1333,22 +1333,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1359,11 +1359,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1468,7 +1468,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1494,32 +1494,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1535,16 +1535,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1552,7 +1552,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1560,8 +1560,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1578,7 +1578,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -1588,13 +1588,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1607,40 +1607,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -1666,26 +1666,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2471,115 +2471,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 - i32.const 2 - i32.add - local.set $1 local.get $0 i32.const 2 i32.add - local.set $4 - local.get $3 + local.set $3 + local.get $1 + i32.const 2 + i32.add + local.set $4 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2611,43 +2601,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3284,7 +3272,7 @@ i32.store offset=8 local.get $2 call $~lib/set/Set#constructor - local.tee $2 + local.tee $7 i32.store loop $for-loop|1 local.get $1 @@ -3292,9 +3280,9 @@ i32.const 100 i32.lt_s if - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 local.get $1 i32.extend8_s @@ -3306,36 +3294,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $5 i32.const 1 @@ -3343,7 +3331,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $2 i32.load8_u local.get $1 i32.const 255 @@ -3354,14 +3342,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|0 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 if i32.const 0 i32.const 1568 @@ -3370,12 +3358,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 local.get $1 i32.extend8_s @@ -3387,36 +3375,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $5 i32.const 1 @@ -3424,7 +3412,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $2 i32.load8_u local.get $1 i32.const 255 @@ -3435,14 +3423,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|02 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -3459,7 +3447,7 @@ br $for-loop|1 end end - local.get $2 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -3479,9 +3467,9 @@ i32.const 100 i32.lt_s if - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 local.get $1 i32.extend8_s @@ -3493,36 +3481,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $5 i32.const 1 @@ -3530,7 +3518,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $2 i32.load8_u local.get $1 i32.const 255 @@ -3541,14 +3529,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|05 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -3558,12 +3546,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 local.get $1 i32.extend8_s @@ -3575,36 +3563,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $5 i32.const 1 @@ -3612,7 +3600,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $2 i32.load8_u local.get $1 i32.const 255 @@ -3623,14 +3611,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|08 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -3647,7 +3635,7 @@ br $for-loop|3 end end - local.get $2 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -3670,17 +3658,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $8 i32.const 0 i32.store - local.get $2 + local.get $7 i32.load offset=8 - local.set $10 - local.get $2 - i32.load offset=16 - local.tee $11 local.set $5 local.get $7 + i32.load offset=16 + local.tee $6 + local.set $9 + local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -3696,21 +3684,21 @@ i32.const 16 i32.const 4 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $10 i32.store - local.get $1 + local.get $10 i32.const 0 i32.store - local.get $1 + local.get $10 i32.const 0 i32.store offset=4 - local.get $1 + local.get $10 i32.const 0 i32.store offset=8 - local.get $1 + local.get $10 i32.const 0 i32.store offset=12 - local.get $5 + local.get $9 i32.const 1073741820 i32.gt_u if @@ -3722,64 +3710,64 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $9 i32.const 8 - local.get $5 + local.get $9 i32.const 8 i32.gt_u select - local.tee $8 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $11 i32.store offset=4 - local.get $3 - local.get $8 - call $~lib/memory/memory.fill + local.get $11 local.get $1 - local.get $3 + call $~lib/memory/memory.fill + local.get $10 + local.get $11 i32.store - local.get $3 + local.get $11 if - local.get $1 - local.get $3 + local.get $10 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 - local.get $3 + local.get $10 + local.get $11 i32.store offset=4 + local.get $10 local.get $1 - local.get $8 i32.store offset=8 - local.get $1 - local.get $5 + local.get $10 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 - local.get $1 + local.get $8 + local.get $10 i32.store loop $for-loop|0 + local.get $4 local.get $6 - local.get $11 i32.lt_s if - local.get $6 + local.get $4 i32.const 3 i32.shl - local.get $10 + local.get $5 i32.add - local.tee $3 + local.tee $1 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $1 + local.get $10 local.get $0 - local.get $3 + local.get $1 i32.load8_s call $~lib/array/Array#__set local.get $0 @@ -3787,41 +3775,41 @@ i32.add local.set $0 end - local.get $6 + local.get $4 i32.const 1 i32.add - local.set $6 + local.set $4 br $for-loop|0 end end - local.get $1 + local.get $10 local.get $0 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $1 + local.get $10 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $10 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|4 - local.get $1 + local.get $10 i32.load offset=12 - local.get $4 + local.get $3 i32.gt_s if - local.get $1 - local.get $4 + local.get $10 + local.get $3 call $~lib/array/Array#__get - local.tee $5 + local.tee $1 i32.extend8_s i32.const -1028477379 i32.mul @@ -3831,67 +3819,67 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.set $3 - local.get $2 + local.set $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $3 + local.get $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 - local.tee $6 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $2 i32.load8_u - local.get $5 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $6 + local.get $4 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|011 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -3902,20 +3890,20 @@ unreachable end local.get $0 - local.get $1 - local.get $4 + local.get $10 + local.get $3 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|4 end end local.get $0 i32.load offset=20 - local.get $2 + local.get $7 i32.load offset=20 i32.ne if @@ -3927,18 +3915,18 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|6 - local.get $4 + local.get $3 i32.extend8_s i32.const 50 i32.lt_s if - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.extend8_s i32.const -1028477379 i32.mul @@ -3987,7 +3975,7 @@ else local.get $1 i32.load8_u - local.get $4 + local.get $3 i32.const 255 i32.and i32.eq @@ -4013,14 +4001,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $4 + local.get $7 + local.get $3 call $~lib/set/Set#delete - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.extend8_s i32.const -1028477379 i32.mul @@ -4069,7 +4057,7 @@ else local.get $1 i32.load8_u - local.get $4 + local.get $3 i32.const 255 i32.and i32.eq @@ -4094,14 +4082,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|6 end end - local.get $2 + local.get $7 i32.load offset=20 i32.const 50 i32.ne @@ -4114,18 +4102,18 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|8 - local.get $4 + local.get $3 i32.extend8_s i32.const 50 i32.lt_s if - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.extend8_s i32.const -1028477379 i32.mul @@ -4174,7 +4162,7 @@ else local.get $1 i32.load8_u - local.get $4 + local.get $3 i32.const 255 i32.and i32.eq @@ -4199,14 +4187,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $4 + local.get $7 + local.get $3 call $~lib/set/Set#add - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.extend8_s i32.const -1028477379 i32.mul @@ -4255,7 +4243,7 @@ else local.get $1 i32.load8_u - local.get $4 + local.get $3 i32.const 255 i32.and i32.eq @@ -4281,14 +4269,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $4 + local.get $7 + local.get $3 call $~lib/set/Set#delete - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.extend8_s i32.const -1028477379 i32.mul @@ -4337,7 +4325,7 @@ else local.get $1 i32.load8_u - local.get $4 + local.get $3 i32.const 255 i32.and i32.eq @@ -4362,14 +4350,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|8 end end - local.get $2 + local.get $7 i32.load offset=20 i32.const 50 i32.ne @@ -4381,9 +4369,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 call $~lib/set/Set#clear - local.get $2 + local.get $7 i32.load offset=20 if i32.const 0 @@ -4893,7 +4881,7 @@ i32.store offset=8 local.get $2 call $~lib/set/Set#constructor - local.tee $2 + local.tee $7 i32.store loop $for-loop|1 local.get $1 @@ -4902,9 +4890,9 @@ i32.const 100 i32.lt_u if - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 local.get $1 i32.const 255 @@ -4917,36 +4905,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $5 i32.const 1 @@ -4954,7 +4942,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $2 i32.load8_u local.get $1 i32.const 255 @@ -4965,14 +4953,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|0 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 if i32.const 0 i32.const 1568 @@ -4981,12 +4969,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 local.get $1 i32.const 255 @@ -4999,36 +4987,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $5 i32.const 1 @@ -5036,7 +5024,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $2 i32.load8_u local.get $1 i32.const 255 @@ -5047,14 +5035,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|02 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -5071,7 +5059,7 @@ br $for-loop|1 end end - local.get $2 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -5092,9 +5080,9 @@ i32.const 100 i32.lt_u if - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 local.get $1 i32.const 255 @@ -5107,36 +5095,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $5 i32.const 1 @@ -5144,7 +5132,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $2 i32.load8_u local.get $1 i32.const 255 @@ -5155,14 +5143,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|05 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -5172,12 +5160,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 local.get $1 i32.const 255 @@ -5190,36 +5178,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $5 i32.const 1 @@ -5227,7 +5215,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $2 i32.load8_u local.get $1 i32.const 255 @@ -5238,14 +5226,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|08 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -5262,7 +5250,7 @@ br $for-loop|3 end end - local.get $2 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -5285,17 +5273,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $8 i32.const 0 i32.store - local.get $2 + local.get $7 i32.load offset=8 - local.set $10 - local.get $2 - i32.load offset=16 - local.tee $11 local.set $5 local.get $7 + i32.load offset=16 + local.tee $6 + local.set $9 + local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -5311,21 +5299,21 @@ i32.const 16 i32.const 6 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $10 i32.store - local.get $1 + local.get $10 i32.const 0 i32.store - local.get $1 + local.get $10 i32.const 0 i32.store offset=4 - local.get $1 + local.get $10 i32.const 0 i32.store offset=8 - local.get $1 + local.get $10 i32.const 0 i32.store offset=12 - local.get $5 + local.get $9 i32.const 1073741820 i32.gt_u if @@ -5337,64 +5325,64 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $9 i32.const 8 - local.get $5 + local.get $9 i32.const 8 i32.gt_u select - local.tee $8 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $11 i32.store offset=4 - local.get $3 - local.get $8 - call $~lib/memory/memory.fill + local.get $11 local.get $1 - local.get $3 + call $~lib/memory/memory.fill + local.get $10 + local.get $11 i32.store - local.get $3 + local.get $11 if - local.get $1 - local.get $3 + local.get $10 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 - local.get $3 + local.get $10 + local.get $11 i32.store offset=4 + local.get $10 local.get $1 - local.get $8 i32.store offset=8 - local.get $1 - local.get $5 + local.get $10 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 - local.get $1 + local.get $8 + local.get $10 i32.store loop $for-loop|0 + local.get $4 local.get $6 - local.get $11 i32.lt_s if - local.get $6 + local.get $4 i32.const 3 i32.shl - local.get $10 + local.get $5 i32.add - local.tee $3 + local.tee $1 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $1 + local.get $10 local.get $0 - local.get $3 + local.get $1 i32.load8_u call $~lib/array/Array#__set local.get $0 @@ -5402,41 +5390,41 @@ i32.add local.set $0 end - local.get $6 + local.get $4 i32.const 1 i32.add - local.set $6 + local.set $4 br $for-loop|0 end end - local.get $1 + local.get $10 local.get $0 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $1 + local.get $10 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $10 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|4 - local.get $1 + local.get $10 i32.load offset=12 - local.get $4 + local.get $3 i32.gt_s if - local.get $1 - local.get $4 + local.get $10 + local.get $3 call $~lib/array/Array#__get - local.tee $5 + local.tee $1 i32.const 255 i32.and i32.const -1028477379 @@ -5447,67 +5435,67 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.set $3 - local.get $2 + local.set $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $3 + local.get $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 - local.tee $6 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $2 i32.load8_u - local.get $5 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $6 + local.get $4 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|011 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -5518,20 +5506,20 @@ unreachable end local.get $0 - local.get $1 - local.get $4 + local.get $10 + local.get $3 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|4 end end local.get $0 i32.load offset=20 - local.get $2 + local.get $7 i32.load offset=20 i32.ne if @@ -5543,19 +5531,19 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|6 - local.get $4 + local.get $3 i32.const 255 i32.and i32.const 50 i32.lt_u if - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const 255 i32.and i32.const -1028477379 @@ -5605,7 +5593,7 @@ else local.get $1 i32.load8_u - local.get $4 + local.get $3 i32.const 255 i32.and i32.eq @@ -5631,14 +5619,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $4 + local.get $7 + local.get $3 call $~lib/set/Set#delete - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const 255 i32.and i32.const -1028477379 @@ -5688,7 +5676,7 @@ else local.get $1 i32.load8_u - local.get $4 + local.get $3 i32.const 255 i32.and i32.eq @@ -5713,14 +5701,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|6 end end - local.get $2 + local.get $7 i32.load offset=20 i32.const 50 i32.ne @@ -5733,19 +5721,19 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|8 - local.get $4 + local.get $3 i32.const 255 i32.and i32.const 50 i32.lt_u if - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const 255 i32.and i32.const -1028477379 @@ -5795,7 +5783,7 @@ else local.get $1 i32.load8_u - local.get $4 + local.get $3 i32.const 255 i32.and i32.eq @@ -5820,14 +5808,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $4 + local.get $7 + local.get $3 call $~lib/set/Set#add - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const 255 i32.and i32.const -1028477379 @@ -5877,7 +5865,7 @@ else local.get $1 i32.load8_u - local.get $4 + local.get $3 i32.const 255 i32.and i32.eq @@ -5903,14 +5891,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $4 + local.get $7 + local.get $3 call $~lib/set/Set#delete - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const 255 i32.and i32.const -1028477379 @@ -5960,7 +5948,7 @@ else local.get $1 i32.load8_u - local.get $4 + local.get $3 i32.const 255 i32.and i32.eq @@ -5985,14 +5973,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|8 end end - local.get $2 + local.get $7 i32.load offset=20 i32.const 50 i32.ne @@ -6004,9 +5992,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 call $~lib/set/Set#clear - local.get $2 + local.get $7 i32.load offset=20 if i32.const 0 @@ -6556,7 +6544,7 @@ i32.store offset=8 local.get $2 call $~lib/set/Set#constructor - local.tee $2 + local.tee $7 i32.store loop $for-loop|1 local.get $1 @@ -6564,9 +6552,9 @@ i32.const 100 i32.lt_s if - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 local.get $1 i32.extend16_s @@ -6578,36 +6566,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $5 i32.const 1 @@ -6615,7 +6603,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $2 i32.load16_u local.get $1 i32.const 65535 @@ -6626,14 +6614,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|0 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 if i32.const 0 i32.const 1568 @@ -6642,12 +6630,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 local.get $1 i32.extend16_s @@ -6659,36 +6647,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $5 i32.const 1 @@ -6696,7 +6684,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $2 i32.load16_u local.get $1 i32.const 65535 @@ -6707,14 +6695,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|02 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -6731,7 +6719,7 @@ br $for-loop|1 end end - local.get $2 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -6751,9 +6739,9 @@ i32.const 100 i32.lt_s if - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 local.get $1 i32.extend16_s @@ -6765,36 +6753,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $5 i32.const 1 @@ -6802,7 +6790,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $2 i32.load16_u local.get $1 i32.const 65535 @@ -6813,14 +6801,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|05 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -6830,12 +6818,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 local.get $1 i32.extend16_s @@ -6847,36 +6835,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $5 i32.const 1 @@ -6884,7 +6872,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $2 i32.load16_u local.get $1 i32.const 65535 @@ -6895,14 +6883,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|08 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -6919,7 +6907,7 @@ br $for-loop|3 end end - local.get $2 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -6942,17 +6930,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $8 i32.const 0 i32.store - local.get $2 + local.get $7 i32.load offset=8 - local.set $10 - local.get $2 - i32.load offset=16 - local.tee $11 local.set $5 local.get $7 + i32.load offset=16 + local.tee $6 + local.set $9 + local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -6968,21 +6956,21 @@ i32.const 16 i32.const 8 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $10 i32.store - local.get $1 + local.get $10 i32.const 0 i32.store - local.get $1 + local.get $10 i32.const 0 i32.store offset=4 - local.get $1 + local.get $10 i32.const 0 i32.store offset=8 - local.get $1 + local.get $10 i32.const 0 i32.store offset=12 - local.get $5 + local.get $9 i32.const 536870910 i32.gt_u if @@ -6994,66 +6982,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $9 i32.const 8 - local.get $5 + local.get $9 i32.const 8 i32.gt_u select i32.const 1 i32.shl - local.tee $8 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $11 i32.store offset=4 - local.get $3 - local.get $8 - call $~lib/memory/memory.fill + local.get $11 local.get $1 - local.get $3 + call $~lib/memory/memory.fill + local.get $10 + local.get $11 i32.store - local.get $3 + local.get $11 if - local.get $1 - local.get $3 + local.get $10 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 - local.get $3 + local.get $10 + local.get $11 i32.store offset=4 + local.get $10 local.get $1 - local.get $8 i32.store offset=8 - local.get $1 - local.get $5 + local.get $10 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 - local.get $1 + local.get $8 + local.get $10 i32.store loop $for-loop|0 + local.get $4 local.get $6 - local.get $11 i32.lt_s if - local.get $6 + local.get $4 i32.const 3 i32.shl - local.get $10 + local.get $5 i32.add - local.tee $3 + local.tee $1 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $1 + local.get $10 local.get $0 - local.get $3 + local.get $1 i32.load16_s call $~lib/array/Array#__set local.get $0 @@ -7061,41 +7049,41 @@ i32.add local.set $0 end - local.get $6 + local.get $4 i32.const 1 i32.add - local.set $6 + local.set $4 br $for-loop|0 end end - local.get $1 + local.get $10 local.get $0 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity - local.get $1 + local.get $10 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $10 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|4 - local.get $1 + local.get $10 i32.load offset=12 - local.get $4 + local.get $3 i32.gt_s if - local.get $1 - local.get $4 + local.get $10 + local.get $3 call $~lib/array/Array#__get - local.tee $5 + local.tee $1 i32.extend16_s i32.const -1028477379 i32.mul @@ -7105,67 +7093,67 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.set $3 - local.get $2 + local.set $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $3 + local.get $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 - local.tee $6 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $2 i32.load16_u - local.get $5 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $6 + local.get $4 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|011 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -7176,20 +7164,20 @@ unreachable end local.get $0 - local.get $1 - local.get $4 + local.get $10 + local.get $3 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|4 end end local.get $0 i32.load offset=20 - local.get $2 + local.get $7 i32.load offset=20 i32.ne if @@ -7201,18 +7189,18 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|6 - local.get $4 + local.get $3 i32.extend16_s i32.const 50 i32.lt_s if - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.extend16_s i32.const -1028477379 i32.mul @@ -7261,7 +7249,7 @@ else local.get $1 i32.load16_u - local.get $4 + local.get $3 i32.const 65535 i32.and i32.eq @@ -7287,14 +7275,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $4 + local.get $7 + local.get $3 call $~lib/set/Set#delete - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.extend16_s i32.const -1028477379 i32.mul @@ -7343,7 +7331,7 @@ else local.get $1 i32.load16_u - local.get $4 + local.get $3 i32.const 65535 i32.and i32.eq @@ -7368,14 +7356,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|6 end end - local.get $2 + local.get $7 i32.load offset=20 i32.const 50 i32.ne @@ -7388,18 +7376,18 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|8 - local.get $4 + local.get $3 i32.extend16_s i32.const 50 i32.lt_s if - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.extend16_s i32.const -1028477379 i32.mul @@ -7448,7 +7436,7 @@ else local.get $1 i32.load16_u - local.get $4 + local.get $3 i32.const 65535 i32.and i32.eq @@ -7473,14 +7461,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $4 + local.get $7 + local.get $3 call $~lib/set/Set#add - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.extend16_s i32.const -1028477379 i32.mul @@ -7529,7 +7517,7 @@ else local.get $1 i32.load16_u - local.get $4 + local.get $3 i32.const 65535 i32.and i32.eq @@ -7555,14 +7543,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $4 + local.get $7 + local.get $3 call $~lib/set/Set#delete - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.extend16_s i32.const -1028477379 i32.mul @@ -7611,7 +7599,7 @@ else local.get $1 i32.load16_u - local.get $4 + local.get $3 i32.const 65535 i32.and i32.eq @@ -7636,14 +7624,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|8 end end - local.get $2 + local.get $7 i32.load offset=20 i32.const 50 i32.ne @@ -7655,9 +7643,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 call $~lib/set/Set#clear - local.get $2 + local.get $7 i32.load offset=20 if i32.const 0 @@ -8169,7 +8157,7 @@ i32.store offset=8 local.get $2 call $~lib/set/Set#constructor - local.tee $2 + local.tee $7 i32.store loop $for-loop|1 local.get $1 @@ -8178,9 +8166,9 @@ i32.const 100 i32.lt_u if - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 local.get $1 i32.const 65535 @@ -8193,36 +8181,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $5 i32.const 1 @@ -8230,7 +8218,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $2 i32.load16_u local.get $1 i32.const 65535 @@ -8241,14 +8229,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|0 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 if i32.const 0 i32.const 1568 @@ -8257,12 +8245,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 local.get $1 i32.const 65535 @@ -8275,36 +8263,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $5 i32.const 1 @@ -8312,7 +8300,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $2 i32.load16_u local.get $1 i32.const 65535 @@ -8323,14 +8311,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|02 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -8347,7 +8335,7 @@ br $for-loop|1 end end - local.get $2 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -8368,9 +8356,9 @@ i32.const 100 i32.lt_u if - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 local.get $1 i32.const 65535 @@ -8383,36 +8371,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $5 i32.const 1 @@ -8420,7 +8408,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $2 i32.load16_u local.get $1 i32.const 65535 @@ -8431,14 +8419,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|05 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -8448,12 +8436,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 local.get $1 i32.const 65535 @@ -8466,36 +8454,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $5 i32.const 1 @@ -8503,7 +8491,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $2 i32.load16_u local.get $1 i32.const 65535 @@ -8514,14 +8502,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|08 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -8538,7 +8526,7 @@ br $for-loop|3 end end - local.get $2 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -8561,17 +8549,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $8 i32.const 0 i32.store - local.get $2 + local.get $7 i32.load offset=8 - local.set $10 - local.get $2 - i32.load offset=16 - local.tee $11 local.set $5 local.get $7 + i32.load offset=16 + local.tee $6 + local.set $9 + local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -8587,21 +8575,21 @@ i32.const 16 i32.const 10 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $10 i32.store - local.get $1 + local.get $10 i32.const 0 i32.store - local.get $1 + local.get $10 i32.const 0 i32.store offset=4 - local.get $1 + local.get $10 i32.const 0 i32.store offset=8 - local.get $1 + local.get $10 i32.const 0 i32.store offset=12 - local.get $5 + local.get $9 i32.const 536870910 i32.gt_u if @@ -8613,66 +8601,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $9 i32.const 8 - local.get $5 + local.get $9 i32.const 8 i32.gt_u select i32.const 1 i32.shl - local.tee $8 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $11 i32.store offset=4 - local.get $3 - local.get $8 - call $~lib/memory/memory.fill + local.get $11 local.get $1 - local.get $3 + call $~lib/memory/memory.fill + local.get $10 + local.get $11 i32.store - local.get $3 + local.get $11 if - local.get $1 - local.get $3 + local.get $10 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 - local.get $3 + local.get $10 + local.get $11 i32.store offset=4 + local.get $10 local.get $1 - local.get $8 i32.store offset=8 - local.get $1 - local.get $5 + local.get $10 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 - local.get $1 + local.get $8 + local.get $10 i32.store loop $for-loop|0 + local.get $4 local.get $6 - local.get $11 i32.lt_s if - local.get $6 + local.get $4 i32.const 3 i32.shl - local.get $10 + local.get $5 i32.add - local.tee $3 + local.tee $1 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $1 + local.get $10 local.get $0 - local.get $3 + local.get $1 i32.load16_u call $~lib/array/Array#__set local.get $0 @@ -8680,41 +8668,41 @@ i32.add local.set $0 end - local.get $6 + local.get $4 i32.const 1 i32.add - local.set $6 + local.set $4 br $for-loop|0 end end - local.get $1 + local.get $10 local.get $0 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity - local.get $1 + local.get $10 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $10 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|4 - local.get $1 + local.get $10 i32.load offset=12 - local.get $4 + local.get $3 i32.gt_s if - local.get $1 - local.get $4 + local.get $10 + local.get $3 call $~lib/array/Array#__get - local.tee $5 + local.tee $1 i32.const 65535 i32.and i32.const -1028477379 @@ -8725,67 +8713,67 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.set $3 - local.get $2 + local.set $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $3 + local.get $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 - local.tee $6 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $2 i32.load16_u - local.get $5 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $6 + local.get $4 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|011 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -8796,20 +8784,20 @@ unreachable end local.get $0 - local.get $1 - local.get $4 + local.get $10 + local.get $3 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|4 end end local.get $0 i32.load offset=20 - local.get $2 + local.get $7 i32.load offset=20 i32.ne if @@ -8821,19 +8809,19 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|6 - local.get $4 + local.get $3 i32.const 65535 i32.and i32.const 50 i32.lt_u if - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const 65535 i32.and i32.const -1028477379 @@ -8883,7 +8871,7 @@ else local.get $1 i32.load16_u - local.get $4 + local.get $3 i32.const 65535 i32.and i32.eq @@ -8909,14 +8897,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $4 + local.get $7 + local.get $3 call $~lib/set/Set#delete - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const 65535 i32.and i32.const -1028477379 @@ -8966,7 +8954,7 @@ else local.get $1 i32.load16_u - local.get $4 + local.get $3 i32.const 65535 i32.and i32.eq @@ -8991,14 +8979,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|6 end end - local.get $2 + local.get $7 i32.load offset=20 i32.const 50 i32.ne @@ -9011,19 +8999,19 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|8 - local.get $4 + local.get $3 i32.const 65535 i32.and i32.const 50 i32.lt_u if - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const 65535 i32.and i32.const -1028477379 @@ -9073,7 +9061,7 @@ else local.get $1 i32.load16_u - local.get $4 + local.get $3 i32.const 65535 i32.and i32.eq @@ -9098,14 +9086,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $4 + local.get $7 + local.get $3 call $~lib/set/Set#add - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const 65535 i32.and i32.const -1028477379 @@ -9155,7 +9143,7 @@ else local.get $1 i32.load16_u - local.get $4 + local.get $3 i32.const 65535 i32.and i32.eq @@ -9181,14 +9169,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $4 + local.get $7 + local.get $3 call $~lib/set/Set#delete - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const 65535 i32.and i32.const -1028477379 @@ -9238,7 +9226,7 @@ else local.get $1 i32.load16_u - local.get $4 + local.get $3 i32.const 65535 i32.and i32.eq @@ -9263,14 +9251,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|8 end end - local.get $2 + local.get $7 i32.load offset=20 i32.const 50 i32.ne @@ -9282,9 +9270,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 call $~lib/set/Set#clear - local.get $2 + local.get $7 i32.load offset=20 if i32.const 0 @@ -9827,16 +9815,16 @@ i32.store offset=8 local.get $2 call $~lib/set/Set#constructor - local.tee $2 + local.tee $7 i32.store loop $for-loop|0 local.get $1 i32.const 100 i32.lt_s if - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -9847,36 +9835,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $5 i32.const 1 @@ -9885,7 +9873,7 @@ i32.const 0 else local.get $1 - local.get $3 + local.get $2 i32.load i32.eq end @@ -9893,14 +9881,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|0 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 if i32.const 0 i32.const 1568 @@ -9909,12 +9897,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -9925,36 +9913,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $5 i32.const 1 @@ -9963,7 +9951,7 @@ i32.const 0 else local.get $1 - local.get $3 + local.get $2 i32.load i32.eq end @@ -9971,14 +9959,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|02 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -9995,7 +9983,7 @@ br $for-loop|0 end end - local.get $2 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -10014,9 +10002,9 @@ i32.const 100 i32.lt_s if - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -10027,36 +10015,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $5 i32.const 1 @@ -10065,7 +10053,7 @@ i32.const 0 else local.get $1 - local.get $3 + local.get $2 i32.load i32.eq end @@ -10073,14 +10061,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|05 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -10090,12 +10078,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -10106,36 +10094,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $5 i32.const 1 @@ -10144,7 +10132,7 @@ i32.const 0 else local.get $1 - local.get $3 + local.get $2 i32.load i32.eq end @@ -10152,14 +10140,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|08 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -10176,7 +10164,7 @@ br $for-loop|1 end end - local.get $2 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -10199,17 +10187,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $8 i32.const 0 i32.store - local.get $2 + local.get $7 i32.load offset=8 - local.set $10 - local.get $2 - i32.load offset=16 - local.tee $11 local.set $5 local.get $7 + i32.load offset=16 + local.tee $6 + local.set $9 + local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -10225,21 +10213,21 @@ i32.const 16 i32.const 12 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $10 i32.store - local.get $1 + local.get $10 i32.const 0 i32.store - local.get $1 + local.get $10 i32.const 0 i32.store offset=4 - local.get $1 + local.get $10 i32.const 0 i32.store offset=8 - local.get $1 + local.get $10 i32.const 0 i32.store offset=12 - local.get $5 + local.get $9 i32.const 268435455 i32.gt_u if @@ -10251,66 +10239,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $9 i32.const 8 - local.get $5 + local.get $9 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $8 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $11 i32.store offset=4 - local.get $3 - local.get $8 - call $~lib/memory/memory.fill + local.get $11 local.get $1 - local.get $3 + call $~lib/memory/memory.fill + local.get $10 + local.get $11 i32.store - local.get $3 + local.get $11 if - local.get $1 - local.get $3 + local.get $10 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 - local.get $3 + local.get $10 + local.get $11 i32.store offset=4 + local.get $10 local.get $1 - local.get $8 i32.store offset=8 - local.get $1 - local.get $5 + local.get $10 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 - local.get $1 + local.get $8 + local.get $10 i32.store loop $for-loop|01 + local.get $4 local.get $6 - local.get $11 i32.lt_s if - local.get $6 + local.get $4 i32.const 3 i32.shl - local.get $10 + local.get $5 i32.add - local.tee $3 + local.tee $1 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $1 + local.get $10 local.get $0 - local.get $3 + local.get $1 i32.load call $~lib/array/Array#__set local.get $0 @@ -10318,41 +10306,41 @@ i32.add local.set $0 end - local.get $6 + local.get $4 i32.const 1 i32.add - local.set $6 + local.set $4 br $for-loop|01 end end - local.get $1 + local.get $10 local.get $0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $1 + local.get $10 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $10 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|2 - local.get $1 + local.get $10 i32.load offset=12 - local.get $4 + local.get $3 i32.gt_s if - local.get $1 - local.get $4 + local.get $10 + local.get $3 call $~lib/array/Array#__get - local.tee $5 + local.tee $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10361,65 +10349,65 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.set $3 - local.get $2 + local.set $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $3 + local.get $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 - local.tee $6 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 - local.get $3 + local.get $1 + local.get $2 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $6 + local.get $4 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|011 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -10430,20 +10418,20 @@ unreachable end local.get $0 - local.get $1 - local.get $4 + local.get $10 + local.get $3 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|2 end end local.get $0 i32.load offset=20 - local.get $2 + local.get $7 i32.load offset=20 i32.ne if @@ -10455,17 +10443,17 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|3 - local.get $4 + local.get $3 i32.const 50 i32.lt_s if - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10511,7 +10499,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $1 i32.load i32.eq @@ -10537,14 +10525,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $4 + local.get $7 + local.get $3 call $~lib/set/Set#delete - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10590,7 +10578,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $1 i32.load i32.eq @@ -10615,14 +10603,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|3 end end - local.get $2 + local.get $7 i32.load offset=20 i32.const 50 i32.ne @@ -10635,17 +10623,17 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|4 - local.get $4 + local.get $3 i32.const 50 i32.lt_s if - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10691,7 +10679,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $1 i32.load i32.eq @@ -10716,14 +10704,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $4 + local.get $7 + local.get $3 call $~lib/set/Set#add - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10769,7 +10757,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $1 i32.load i32.eq @@ -10795,14 +10783,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $4 + local.get $7 + local.get $3 call $~lib/set/Set#delete - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10848,7 +10836,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $1 i32.load i32.eq @@ -10873,14 +10861,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|4 end end - local.get $2 + local.get $7 i32.load offset=20 i32.const 50 i32.ne @@ -10892,9 +10880,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 call $~lib/set/Set#clear - local.get $2 + local.get $7 i32.load offset=20 if i32.const 0 @@ -11398,16 +11386,16 @@ i32.store offset=8 local.get $2 call $~lib/set/Set#constructor - local.tee $2 + local.tee $7 i32.store loop $for-loop|0 local.get $1 i32.const 100 i32.lt_u if - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -11418,36 +11406,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $5 i32.const 1 @@ -11456,7 +11444,7 @@ i32.const 0 else local.get $1 - local.get $3 + local.get $2 i32.load i32.eq end @@ -11464,14 +11452,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|0 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 if i32.const 0 i32.const 1568 @@ -11480,12 +11468,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -11496,36 +11484,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $5 i32.const 1 @@ -11534,7 +11522,7 @@ i32.const 0 else local.get $1 - local.get $3 + local.get $2 i32.load i32.eq end @@ -11542,14 +11530,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|02 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -11566,7 +11554,7 @@ br $for-loop|0 end end - local.get $2 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -11585,9 +11573,9 @@ i32.const 100 i32.lt_u if - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -11598,36 +11586,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $5 i32.const 1 @@ -11636,7 +11624,7 @@ i32.const 0 else local.get $1 - local.get $3 + local.get $2 i32.load i32.eq end @@ -11644,14 +11632,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|05 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -11661,12 +11649,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -11677,36 +11665,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $5 i32.const 1 @@ -11715,7 +11703,7 @@ i32.const 0 else local.get $1 - local.get $3 + local.get $2 i32.load i32.eq end @@ -11723,14 +11711,14 @@ local.get $5 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|08 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -11747,7 +11735,7 @@ br $for-loop|1 end end - local.get $2 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -11770,17 +11758,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $8 i32.const 0 i32.store - local.get $2 + local.get $7 i32.load offset=8 - local.set $10 - local.get $2 - i32.load offset=16 - local.tee $11 local.set $5 local.get $7 + i32.load offset=16 + local.tee $6 + local.set $9 + local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -11796,21 +11784,21 @@ i32.const 16 i32.const 14 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $10 i32.store - local.get $1 + local.get $10 i32.const 0 i32.store - local.get $1 + local.get $10 i32.const 0 i32.store offset=4 - local.get $1 + local.get $10 i32.const 0 i32.store offset=8 - local.get $1 + local.get $10 i32.const 0 i32.store offset=12 - local.get $5 + local.get $9 i32.const 268435455 i32.gt_u if @@ -11822,66 +11810,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $9 i32.const 8 - local.get $5 + local.get $9 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $8 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $11 i32.store offset=4 - local.get $3 - local.get $8 - call $~lib/memory/memory.fill + local.get $11 local.get $1 - local.get $3 + call $~lib/memory/memory.fill + local.get $10 + local.get $11 i32.store - local.get $3 + local.get $11 if - local.get $1 - local.get $3 + local.get $10 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 - local.get $3 + local.get $10 + local.get $11 i32.store offset=4 + local.get $10 local.get $1 - local.get $8 i32.store offset=8 - local.get $1 - local.get $5 + local.get $10 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 - local.get $1 + local.get $8 + local.get $10 i32.store loop $for-loop|01 + local.get $4 local.get $6 - local.get $11 i32.lt_s if - local.get $6 + local.get $4 i32.const 3 i32.shl - local.get $10 + local.get $5 i32.add - local.tee $3 + local.tee $1 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $1 + local.get $10 local.get $0 - local.get $3 + local.get $1 i32.load call $~lib/array/Array#__set local.get $0 @@ -11889,41 +11877,41 @@ i32.add local.set $0 end - local.get $6 + local.get $4 i32.const 1 i32.add - local.set $6 + local.set $4 br $for-loop|01 end end - local.get $1 + local.get $10 local.get $0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $1 + local.get $10 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $10 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|2 - local.get $1 + local.get $10 i32.load offset=12 - local.get $4 + local.get $3 i32.gt_s if - local.get $1 - local.get $4 + local.get $10 + local.get $3 call $~lib/array/Array#__get - local.tee $5 + local.tee $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -11932,65 +11920,65 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.set $3 - local.get $2 + local.set $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $3 + local.get $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 - local.tee $6 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 - local.get $3 + local.get $1 + local.get $2 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $6 + local.get $4 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|011 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -12001,20 +11989,20 @@ unreachable end local.get $0 - local.get $1 - local.get $4 + local.get $10 + local.get $3 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|2 end end local.get $0 i32.load offset=20 - local.get $2 + local.get $7 i32.load offset=20 i32.ne if @@ -12026,17 +12014,17 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|3 - local.get $4 + local.get $3 i32.const 50 i32.lt_u if - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12082,7 +12070,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $1 i32.load i32.eq @@ -12108,14 +12096,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $4 + local.get $7 + local.get $3 call $~lib/set/Set#delete - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12161,7 +12149,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $1 i32.load i32.eq @@ -12186,14 +12174,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|3 end end - local.get $2 + local.get $7 i32.load offset=20 i32.const 50 i32.ne @@ -12206,17 +12194,17 @@ unreachable end i32.const 0 - local.set $4 + local.set $3 loop $for-loop|4 - local.get $4 + local.get $3 i32.const 50 i32.lt_u if - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12262,7 +12250,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $1 i32.load i32.eq @@ -12287,14 +12275,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $4 + local.get $7 + local.get $3 call $~lib/set/Set#add - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12340,7 +12328,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $1 i32.load i32.eq @@ -12366,14 +12354,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $4 + local.get $7 + local.get $3 call $~lib/set/Set#delete - local.get $2 + local.get $7 i32.load - local.get $2 + local.get $7 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12419,7 +12407,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $1 i32.load i32.eq @@ -12444,14 +12432,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|4 end end - local.get $2 + local.get $7 i32.load offset=20 i32.const 50 i32.ne @@ -12463,9 +12451,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 call $~lib/set/Set#clear - local.get $2 + local.get $7 i32.load offset=20 if i32.const 0 @@ -12608,7 +12596,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -12616,7 +12604,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $5 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -12624,13 +12612,13 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $8 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $8 + local.set $4 local.get $3 local.set $2 loop $while-continue|0 @@ -12638,14 +12626,14 @@ local.get $8 i32.ne if - local.get $4 + local.get $8 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $4 + local.get $8 i64.load local.tee $6 i64.store @@ -12694,7 +12682,7 @@ i32.and i32.const 2 i32.shl - local.get $5 + local.get $7 i32.add local.tee $9 i32.load @@ -12707,20 +12695,20 @@ i32.add local.set $2 end - local.get $4 + local.get $8 i32.const 16 i32.add - local.set $4 + local.set $8 br $while-continue|0 end end local.get $0 - local.get $5 + local.get $7 i32.store - local.get $5 + local.get $7 if local.get $0 - local.get $5 + local.get $7 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -12736,7 +12724,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $5 i32.store offset=12 local.get $0 local.get $0 @@ -13282,17 +13270,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $11 i32.const 0 i32.store local.get $2 i32.load offset=8 - local.set $11 + local.set $9 local.get $2 i32.load offset=16 - local.tee $12 - local.set $5 - local.get $8 + local.tee $10 + local.set $4 + local.get $11 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -13308,21 +13296,21 @@ i32.const 16 i32.const 16 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $12 i32.store - local.get $3 + local.get $12 i32.const 0 i32.store - local.get $3 + local.get $12 i32.const 0 i32.store offset=4 - local.get $3 + local.get $12 i32.const 0 i32.store offset=8 - local.get $3 + local.get $12 i32.const 0 i32.store offset=12 - local.get $5 + local.get $4 i32.const 134217727 i32.gt_u if @@ -13334,66 +13322,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 8 - local.get $5 + local.get $4 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $9 + local.tee $7 i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $3 i32.store offset=4 - local.get $4 - local.get $9 + local.get $3 + local.get $7 call $~lib/memory/memory.fill + local.get $12 local.get $3 - local.get $4 i32.store - local.get $4 + local.get $3 if + local.get $12 local.get $3 - local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $12 local.get $3 - local.get $4 i32.store offset=4 - local.get $3 - local.get $9 + local.get $12 + local.get $7 i32.store offset=8 - local.get $3 - local.get $5 + local.get $12 + local.get $4 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $3 + local.get $11 + local.get $12 i32.store loop $for-loop|01 - local.get $7 - local.get $12 + local.get $6 + local.get $10 i32.lt_s if - local.get $7 + local.get $6 i32.const 4 i32.shl - local.get $11 + local.get $9 i32.add - local.tee $4 + local.tee $3 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $3 + local.get $12 local.get $0 - local.get $4 + local.get $3 i64.load call $~lib/array/Array#__set local.get $0 @@ -13401,40 +13389,40 @@ i32.add local.set $0 end - local.get $7 + local.get $6 i32.const 1 i32.add - local.set $7 + local.set $6 br $for-loop|01 end end - local.get $3 + local.get $12 local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 + local.get $12 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $12 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|2 - local.get $3 + local.get $12 i32.load offset=12 - local.get $6 + local.get $5 i32.gt_s if local.get $2 - local.get $3 - local.get $6 + local.get $12 + local.get $5 call $~lib/array/Array#__get call $~lib/set/Set#has i32.eqz @@ -13447,14 +13435,14 @@ unreachable end local.get $0 - local.get $3 - local.get $6 + local.get $12 + local.get $5 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $6 + local.get $5 i32.const 1 i32.add - local.set $6 + local.set $5 br $for-loop|2 end end @@ -13734,7 +13722,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -13742,7 +13730,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $5 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -13750,13 +13738,13 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $8 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $8 + local.set $4 local.get $3 local.set $2 loop $while-continue|0 @@ -13764,14 +13752,14 @@ local.get $8 i32.ne if - local.get $4 + local.get $8 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $4 + local.get $8 i64.load local.tee $6 i64.store @@ -13820,7 +13808,7 @@ i32.and i32.const 2 i32.shl - local.get $5 + local.get $7 i32.add local.tee $9 i32.load @@ -13833,20 +13821,20 @@ i32.add local.set $2 end - local.get $4 + local.get $8 i32.const 16 i32.add - local.set $4 + local.set $8 br $while-continue|0 end end local.get $0 - local.get $5 + local.get $7 i32.store - local.get $5 + local.get $7 if local.get $0 - local.get $5 + local.get $7 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -13862,7 +13850,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $5 i32.store offset=12 local.get $0 local.get $0 @@ -14332,17 +14320,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $11 i32.const 0 i32.store local.get $2 i32.load offset=8 - local.set $11 + local.set $9 local.get $2 i32.load offset=16 - local.tee $12 - local.set $5 - local.get $8 + local.tee $10 + local.set $4 + local.get $11 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -14358,21 +14346,21 @@ i32.const 16 i32.const 18 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $12 i32.store - local.get $3 + local.get $12 i32.const 0 i32.store - local.get $3 + local.get $12 i32.const 0 i32.store offset=4 - local.get $3 + local.get $12 i32.const 0 i32.store offset=8 - local.get $3 + local.get $12 i32.const 0 i32.store offset=12 - local.get $5 + local.get $4 i32.const 134217727 i32.gt_u if @@ -14384,66 +14372,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 8 - local.get $5 + local.get $4 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $9 + local.tee $7 i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $3 i32.store offset=4 - local.get $4 - local.get $9 + local.get $3 + local.get $7 call $~lib/memory/memory.fill + local.get $12 local.get $3 - local.get $4 i32.store - local.get $4 + local.get $3 if + local.get $12 local.get $3 - local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $12 local.get $3 - local.get $4 i32.store offset=4 - local.get $3 - local.get $9 + local.get $12 + local.get $7 i32.store offset=8 - local.get $3 - local.get $5 + local.get $12 + local.get $4 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $3 + local.get $11 + local.get $12 i32.store loop $for-loop|01 - local.get $7 - local.get $12 + local.get $6 + local.get $10 i32.lt_s if - local.get $7 + local.get $6 i32.const 4 i32.shl - local.get $11 + local.get $9 i32.add - local.tee $4 + local.tee $3 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $3 + local.get $12 local.get $0 - local.get $4 + local.get $3 i64.load call $~lib/array/Array#__set local.get $0 @@ -14451,40 +14439,40 @@ i32.add local.set $0 end - local.get $7 + local.get $6 i32.const 1 i32.add - local.set $7 + local.set $6 br $for-loop|01 end end - local.get $3 + local.get $12 local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 + local.get $12 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $12 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|2 - local.get $3 + local.get $12 i32.load offset=12 - local.get $6 + local.get $5 i32.gt_s if local.get $2 - local.get $3 - local.get $6 + local.get $12 + local.get $5 call $~lib/array/Array#__get call $~lib/set/Set#has i32.eqz @@ -14497,14 +14485,14 @@ unreachable end local.get $0 - local.get $3 - local.get $6 + local.get $12 + local.get $5 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $6 + local.get $5 i32.const 1 i32.add - local.set $6 + local.set $5 br $for-loop|2 end end @@ -14667,11 +14655,11 @@ (func $~lib/set/Set#rehash (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) + (local $4 f32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 f32) + (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -14700,7 +14688,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -14716,33 +14704,33 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $8 local.get $0 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $7 + local.set $5 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $5 + local.get $8 i32.ne if - local.get $4 + local.get $8 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $4 + local.get $8 f32.load - local.tee $8 + local.tee $4 f32.store local.get $2 - local.get $8 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -14775,7 +14763,7 @@ i32.and i32.const 2 i32.shl - local.get $5 + local.get $7 i32.add local.tee $9 i32.load @@ -14788,20 +14776,20 @@ i32.add local.set $2 end - local.get $4 + local.get $8 i32.const 8 i32.add - local.set $4 + local.set $8 br $while-continue|0 end end local.get $0 - local.get $5 + local.get $7 i32.store - local.get $5 + local.get $7 if local.get $0 - local.get $5 + local.get $7 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -15149,16 +15137,16 @@ i32.store offset=8 local.get $0 call $~lib/set/Set#constructor - local.tee $3 + local.tee $5 i32.store loop $for-loop|0 local.get $2 f32.const 100 f32.lt if - local.get $3 + local.get $5 i32.load - local.get $3 + local.get $5 i32.load offset=4 local.get $2 i32.reinterpret_f32 @@ -15194,36 +15182,36 @@ i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=4 - local.tee $4 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $2 - local.get $0 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $4 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|0 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 if i32.const 0 i32.const 1568 @@ -15232,12 +15220,12 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 local.get $2 call $~lib/set/Set#add - local.get $3 + local.get $5 i32.load - local.get $3 + local.get $5 i32.load offset=4 local.get $2 i32.reinterpret_f32 @@ -15273,36 +15261,36 @@ i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=4 - local.tee $4 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $2 - local.get $0 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find1 - local.get $4 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|02 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 i32.eqz if i32.const 0 @@ -15319,7 +15307,7 @@ br $for-loop|0 end end - local.get $3 + local.get $5 i32.load offset=20 i32.const 100 i32.ne @@ -15338,9 +15326,9 @@ f32.const 100 f32.lt if - local.get $3 + local.get $5 i32.load - local.get $3 + local.get $5 i32.load offset=4 local.get $2 i32.reinterpret_f32 @@ -15376,36 +15364,36 @@ i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=4 - local.tee $4 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $2 - local.get $0 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find4 - local.get $4 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|05 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 i32.eqz if i32.const 0 @@ -15415,12 +15403,12 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 local.get $2 call $~lib/set/Set#add - local.get $3 + local.get $5 i32.load - local.get $3 + local.get $5 i32.load offset=4 local.get $2 i32.reinterpret_f32 @@ -15456,36 +15444,36 @@ i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=4 - local.tee $4 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $2 - local.get $0 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find7 - local.get $4 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|08 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 i32.eqz if i32.const 0 @@ -15502,7 +15490,7 @@ br $for-loop|1 end end - local.get $3 + local.get $5 i32.load offset=20 i32.const 100 i32.ne @@ -15528,13 +15516,13 @@ local.tee $8 i32.const 0 i32.store - local.get $3 + local.get $5 i32.load offset=8 local.set $11 - local.get $3 + local.get $5 i32.load offset=16 local.tee $12 - local.set $5 + local.set $3 local.get $8 i32.const 8 i32.sub @@ -15565,7 +15553,7 @@ local.get $4 i32.const 0 i32.store offset=12 - local.get $5 + local.get $3 i32.const 268435455 i32.gt_u if @@ -15577,9 +15565,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $3 i32.const 8 - local.get $5 + local.get $3 i32.const 8 i32.gt_u select @@ -15609,7 +15597,7 @@ local.get $9 i32.store offset=8 local.get $4 - local.get $5 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 @@ -15619,16 +15607,16 @@ local.get $4 i32.store loop $for-loop|01 - local.get $7 + local.get $6 local.get $12 i32.lt_s if - local.get $7 + local.get $6 i32.const 3 i32.shl local.get $11 i32.add - local.tee $5 + local.tee $3 i32.load offset=4 i32.const 1 i32.and @@ -15639,7 +15627,7 @@ i32.const 1 i32.add local.set $1 - local.get $5 + local.get $3 f32.load local.set $2 local.get $4 @@ -15662,12 +15650,12 @@ local.get $0 i32.const 1 i32.add - local.tee $5 + local.tee $3 i32.const 2 i32.const 1 call $~lib/array/ensureCapacity local.get $4 - local.get $5 + local.get $3 i32.store offset=12 end local.get $4 @@ -15679,10 +15667,10 @@ local.get $2 f32.store end - local.get $7 + local.get $6 i32.const 1 i32.add - local.set $7 + local.set $6 br $for-loop|01 end end @@ -15707,11 +15695,11 @@ loop $for-loop|2 local.get $4 i32.load offset=12 - local.get $6 + local.get $7 i32.gt_s if local.get $4 - local.get $6 + local.get $7 call $~lib/array/Array#__get local.tee $2 i32.reinterpret_f32 @@ -15738,9 +15726,9 @@ i32.const -1028477379 i32.mul local.set $0 - local.get $3 + local.get $5 i32.load - local.get $3 + local.get $5 i32.load offset=4 local.get $0 i32.const 16 @@ -15752,36 +15740,36 @@ i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=4 - local.tee $5 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $2 - local.get $0 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $5 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|011 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 i32.eqz if i32.const 0 @@ -15793,19 +15781,19 @@ end local.get $1 local.get $4 - local.get $6 + local.get $7 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $6 + local.get $7 i32.const 1 i32.add - local.set $6 + local.set $7 br $for-loop|2 end end local.get $1 i32.load offset=20 - local.get $3 + local.get $5 i32.load offset=20 i32.ne if @@ -15823,9 +15811,9 @@ f32.const 50 f32.lt if - local.get $3 + local.get $5 i32.load - local.get $3 + local.get $5 i32.load offset=4 local.get $2 i32.reinterpret_f32 @@ -15861,36 +15849,36 @@ i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/set/Set#find13 loop $while-continue|014 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=4 - local.tee $1 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $2 - local.get $0 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find13 - local.get $1 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|014 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 i32.eqz if i32.const 0 @@ -15900,12 +15888,12 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 local.get $2 call $~lib/set/Set#delete - local.get $3 + local.get $5 i32.load - local.get $3 + local.get $5 i32.load offset=4 local.get $2 i32.reinterpret_f32 @@ -15941,36 +15929,36 @@ i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/set/Set#find16 loop $while-continue|017 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=4 - local.tee $1 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $2 - local.get $0 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find16 - local.get $1 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|017 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 if i32.const 0 i32.const 1568 @@ -15986,7 +15974,7 @@ br $for-loop|3 end end - local.get $3 + local.get $5 i32.load offset=20 i32.const 50 i32.ne @@ -16005,9 +15993,9 @@ f32.const 50 f32.lt if - local.get $3 + local.get $5 i32.load - local.get $3 + local.get $5 i32.load offset=4 local.get $2 i32.reinterpret_f32 @@ -16043,36 +16031,36 @@ i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/set/Set#find19 loop $while-continue|020 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=4 - local.tee $1 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $2 - local.get $0 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find19 - local.get $1 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|020 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 if i32.const 0 i32.const 1568 @@ -16081,12 +16069,12 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 local.get $2 call $~lib/set/Set#add - local.get $3 + local.get $5 i32.load - local.get $3 + local.get $5 i32.load offset=4 local.get $2 i32.reinterpret_f32 @@ -16122,36 +16110,36 @@ i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/set/Set#find22 loop $while-continue|023 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=4 - local.tee $1 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $2 - local.get $0 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find22 - local.get $1 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|023 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 i32.eqz if i32.const 0 @@ -16161,12 +16149,12 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 local.get $2 call $~lib/set/Set#delete - local.get $3 + local.get $5 i32.load - local.get $3 + local.get $5 i32.load offset=4 local.get $2 i32.reinterpret_f32 @@ -16202,36 +16190,36 @@ i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/set/Set#find25 loop $while-continue|026 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=4 - local.tee $1 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $2 - local.get $0 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find25 - local.get $1 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|026 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 if i32.const 0 i32.const 1568 @@ -16247,7 +16235,7 @@ br $for-loop|4 end end - local.get $3 + local.get $5 i32.load offset=20 i32.const 50 i32.ne @@ -16259,9 +16247,9 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 call $~lib/set/Set#clear - local.get $3 + local.get $5 i32.load offset=20 if i32.const 0 @@ -16374,12 +16362,12 @@ (func $~lib/set/Set#rehash (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) + (local $4 i64) + (local $5 f64) (local $6 i32) (local $7 i32) - (local $8 f64) - (local $9 i64) + (local $8 i32) + (local $9 i32) (local $10 i32) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -16408,7 +16396,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $8 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -16416,7 +16404,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $7 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -16424,36 +16412,36 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $9 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $7 + local.set $6 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $6 + local.get $9 i32.ne if - local.get $4 + local.get $9 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $4 + local.get $9 f64.load - local.tee $8 + local.tee $5 f64.store local.get $2 local.get $1 - local.get $8 + local.get $5 i64.reinterpret_f64 - local.tee $9 + local.tee $4 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -16463,7 +16451,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $9 + local.get $4 i64.const 32 i64.shr_u i32.wrap_i64 @@ -16496,7 +16484,7 @@ i32.and i32.const 2 i32.shl - local.get $5 + local.get $8 i32.add local.tee $10 i32.load @@ -16509,20 +16497,20 @@ i32.add local.set $2 end - local.get $4 + local.get $9 i32.const 16 i32.add - local.set $4 + local.set $9 br $while-continue|0 end end local.get $0 - local.get $5 + local.get $8 i32.store - local.get $5 + local.get $8 if local.get $0 - local.get $5 + local.get $8 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -16538,7 +16526,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -16890,13 +16878,13 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 call $~lib/set/Set#constructor local.tee $3 i32.store @@ -17004,8 +16992,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -17014,17 +17002,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $10 i32.const 0 i32.store local.get $3 i32.load offset=8 - local.set $11 + local.set $8 local.get $3 i32.load offset=16 - local.tee $12 - local.set $5 - local.get $8 + local.tee $9 + local.set $1 + local.get $10 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -17033,28 +17021,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $6 i64.const 0 i64.store - local.get $0 + local.get $6 i32.const 16 i32.const 22 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $11 i32.store - local.get $4 + local.get $11 i32.const 0 i32.store - local.get $4 + local.get $11 i32.const 0 i32.store offset=4 - local.get $4 + local.get $11 i32.const 0 i32.store offset=8 - local.get $4 + local.get $11 i32.const 0 i32.store offset=12 - local.get $5 + local.get $1 i32.const 134217727 i32.gt_u if @@ -17066,77 +17054,77 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $1 i32.const 8 - local.get $5 + local.get $1 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $9 + local.tee $6 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $12 i32.store offset=4 - local.get $0 - local.get $9 + local.get $12 + local.get $6 call $~lib/memory/memory.fill - local.get $4 - local.get $0 + local.get $11 + local.get $12 i32.store - local.get $0 + local.get $12 if - local.get $4 - local.get $0 + local.get $11 + local.get $12 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $0 + local.get $11 + local.get $12 i32.store offset=4 - local.get $4 - local.get $9 + local.get $11 + local.get $6 i32.store offset=8 - local.get $4 - local.get $5 + local.get $11 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $4 + local.get $10 + local.get $11 i32.store loop $for-loop|01 - local.get $7 - local.get $12 + local.get $5 + local.get $9 i32.lt_s if - local.get $7 + local.get $5 i32.const 4 i32.shl - local.get $11 + local.get $8 i32.add - local.tee $5 + local.tee $6 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 1 i32.add - local.set $1 - local.get $5 + local.set $0 + local.get $6 f64.load local.set $2 - local.get $4 + local.get $11 i32.load offset=12 - local.get $0 + local.get $1 i32.le_u if - local.get $0 + local.get $1 i32.const 0 i32.lt_s if @@ -17147,61 +17135,61 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $0 + local.get $11 + local.get $1 i32.const 1 i32.add - local.tee $5 + local.tee $6 i32.const 3 i32.const 1 call $~lib/array/ensureCapacity - local.get $4 - local.get $5 + local.get $11 + local.get $6 i32.store offset=12 end - local.get $4 + local.get $11 i32.load offset=4 - local.get $0 + local.get $1 i32.const 3 i32.shl i32.add local.get $2 f64.store end - local.get $7 + local.get $5 i32.const 1 i32.add - local.set $7 + local.set $5 br $for-loop|01 end end - local.get $4 - local.get $1 + local.get $11 + local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $4 - local.get $1 + local.get $11 + local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $11 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|2 - local.get $4 + local.get $11 i32.load offset=12 - local.get $6 + local.get $4 i32.gt_s if local.get $3 + local.get $11 local.get $4 - local.get $6 call $~lib/array/Array#__get call $~lib/set/Set#has i32.eqz @@ -17214,14 +17202,14 @@ unreachable end local.get $0 + local.get $11 local.get $4 - local.get $6 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $6 + local.get $4 i32.const 1 i32.add - local.set $6 + local.set $4 br $for-loop|2 end end diff --git a/tests/compiler/std/static-array.optimized.wat b/tests/compiler/std/static-array.optimized.wat index 5a4c5989f6..ab8c0f7278 100644 --- a/tests/compiler/std/static-array.optimized.wat +++ b/tests/compiler/std/static-array.optimized.wat @@ -164,7 +164,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -187,7 +187,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -197,23 +197,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -221,7 +221,7 @@ else i32.const 1952 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1472 @@ -231,7 +231,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 1956 @@ -246,27 +246,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -354,19 +354,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -391,9 +391,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -401,17 +401,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -699,10 +699,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -714,15 +714,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -752,7 +752,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -788,12 +788,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -811,11 +811,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 18400 @@ -823,14 +823,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -840,17 +840,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1328,14 +1328,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1345,17 +1345,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1371,22 +1371,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1397,11 +1397,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1889,115 +1889,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2029,43 +2019,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2153,7 +2141,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $7 + local.tee $5 i32.load i32.const -4 i32.and @@ -2162,17 +2150,17 @@ local.get $1 i32.ge_u if - local.get $7 + local.get $5 local.get $1 i32.store offset=16 local.get $0 return end - local.get $7 + local.get $5 i32.load offset=12 - local.set $5 + local.set $4 local.get $1 - local.tee $3 + local.tee $2 i32.const 1073741804 i32.ge_u if @@ -2228,18 +2216,18 @@ global.set $~lib/rt/itcms/threshold end end - local.get $3 + local.get $2 i32.const 16 i32.add - local.set $2 + local.set $1 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $8 - local.get $2 + local.tee $7 + local.get $1 i32.const 1073741820 i32.gt_u if @@ -2250,13 +2238,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $1 i32.const 19 i32.add i32.const -16 @@ -2264,34 +2252,34 @@ i32.const 4 i32.sub end - local.tee $1 + local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $2 + local.tee $1 i32.eqz if memory.size - local.tee $4 - local.get $1 + local.tee $1 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $1 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $1 + local.get $3 i32.add else - local.get $1 + local.get $3 end i32.const 4 - local.get $8 + local.get $7 i32.load offset=1568 - local.get $4 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -2305,16 +2293,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 - local.get $2 - local.get $4 - i32.lt_s + local.tee $6 + local.get $1 + local.get $6 + i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $6 memory.grow i32.const 0 i32.lt_s @@ -2322,18 +2310,18 @@ unreachable end end - local.get $8 - local.get $4 + local.get $7 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $8 - local.get $1 + local.get $7 + local.get $3 call $~lib/rt/tlsf/searchBlock - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -2344,11 +2332,11 @@ unreachable end end - local.get $2 + local.get $1 i32.load i32.const -4 i32.and - local.get $1 + local.get $3 i32.lt_u if i32.const 0 @@ -2358,13 +2346,13 @@ call $~lib/builtins/abort unreachable end - local.get $8 - local.get $2 + local.get $7 + local.get $1 call $~lib/rt/tlsf/removeBlock - local.get $2 - i32.load - local.set $6 local.get $1 + i32.load + local.set $8 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -2377,74 +2365,74 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $8 i32.const -4 i32.and - local.get $1 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if - local.get $2 - local.get $6 + local.get $1 + local.get $8 i32.const 2 i32.and - local.get $1 + local.get $3 i32.or i32.store + local.get $3 local.get $1 - local.get $2 i32.const 4 i32.add i32.add - local.tee $1 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $8 - local.get $1 + local.get $7 + local.get $3 call $~lib/rt/tlsf/insertBlock else - local.get $2 - local.get $6 + local.get $1 + local.get $8 i32.const -2 i32.and i32.store - local.get $2 + local.get $1 i32.const 4 i32.add - local.get $2 + local.get $1 i32.load i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $3 + local.get $3 i32.load i32.const -3 i32.and i32.store end - local.get $2 - local.get $5 + local.get $1 + local.get $4 i32.store offset=12 + local.get $1 local.get $2 - local.get $3 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 local.set $4 - local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white + local.get $3 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $4 i32.store offset=8 local.get $4 @@ -2452,14 +2440,14 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 + local.get $3 local.get $1 - local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total - local.get $2 + local.get $1 i32.load i32.const -4 i32.and @@ -2467,18 +2455,18 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $2 + local.get $1 i32.const 20 i32.add local.tee $4 - local.get $3 + local.get $2 call $~lib/memory/memory.fill - local.get $3 - local.get $7 + local.get $2 + local.get $5 i32.load offset=16 local.tee $1 local.get $1 - local.get $3 + local.get $2 i32.gt_u select local.set $5 @@ -2531,17 +2519,17 @@ i32.sub local.set $5 local.get $1 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $0 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 br $while-continue|0 @@ -2576,17 +2564,17 @@ local.get $5 if local.get $1 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $0 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 local.get $5 @@ -2698,35 +2686,35 @@ local.get $2 local.get $0 i32.load - local.tee $4 + local.tee $3 local.get $2 i32.const 1 i32.shl - local.tee $3 + local.tee $4 i32.const 1073741820 - local.get $3 + local.get $4 i32.const 1073741820 i32.lt_u select - local.tee $3 + local.tee $4 i32.const 8 local.get $1 i32.shl local.tee $1 local.get $1 - local.get $3 + local.get $4 i32.lt_u select - local.tee $3 + local.tee $4 call $~lib/rt/itcms/__renew local.tee $1 i32.add - local.get $3 + local.get $4 local.get $2 i32.sub call $~lib/memory/memory.fill local.get $1 - local.get $4 + local.get $3 i32.ne if local.get $0 @@ -2787,7 +2775,7 @@ end end local.get $0 - local.get $3 + local.get $4 i32.store offset=8 end ) diff --git a/tests/compiler/std/staticarray.optimized.wat b/tests/compiler/std/staticarray.optimized.wat index 11b069fabb..cdfd15723e 100644 --- a/tests/compiler/std/staticarray.optimized.wat +++ b/tests/compiler/std/staticarray.optimized.wat @@ -305,7 +305,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -328,7 +328,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -338,23 +338,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -362,7 +362,7 @@ else i32.const 3728 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1088 @@ -372,7 +372,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 3732 @@ -387,27 +387,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -495,19 +495,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -532,9 +532,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -542,17 +542,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -840,10 +840,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -855,15 +855,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -893,7 +893,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -929,12 +929,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -952,11 +952,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 20256 @@ -964,14 +964,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -981,17 +981,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1077,7 +1077,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $1 + local.set $2 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -1094,11 +1094,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -1140,9 +1140,9 @@ if local.get $0 i32.load - local.tee $2 + local.tee $1 if - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -1166,11 +1166,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -1196,7 +1196,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $1 + local.get $2 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -1416,7 +1416,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $1 local.get $0 i32.const 1073741820 i32.gt_u @@ -1442,34 +1442,34 @@ i32.const 4 i32.sub end - local.tee $0 + local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if memory.size - local.tee $1 - local.get $0 + local.tee $0 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $0 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $0 + local.get $3 i32.add else - local.get $0 + local.get $3 end i32.const 4 - local.get $2 - i32.load offset=1568 local.get $1 + i32.load offset=1568 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1483,16 +1483,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $1 - local.get $3 + local.tee $2 + local.get $0 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1500,18 +1500,18 @@ unreachable end end - local.get $2 local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 - local.get $0 + local.get $1 + local.get $3 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1522,11 +1522,11 @@ unreachable end end - local.get $1 + local.get $0 i32.load i32.const -4 i32.and - local.get $0 + local.get $3 i32.lt_u if i32.const 0 @@ -1536,13 +1536,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $1 - i32.load - local.set $3 local.get $0 + i32.load + local.set $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1555,59 +1555,59 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const -4 i32.and - local.get $0 + local.get $3 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.const 2 i32.and - local.get $0 + local.get $3 i32.or i32.store + local.get $3 local.get $0 - local.get $1 i32.const 4 i32.add i32.add - local.tee $0 - local.get $4 + local.tee $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 - local.get $0 - call $~lib/rt/tlsf/insertBlock - else local.get $1 local.get $3 + call $~lib/rt/tlsf/insertBlock + else + local.get $0 + local.get $4 i32.const -2 i32.and i32.store - local.get $1 + local.get $0 i32.const 4 i32.add - local.get $1 + local.get $0 i32.load i32.const -4 i32.and i32.add - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.load i32.const -3 i32.and i32.store end - local.get $1 + local.get $0 i32.const 4 i32.add ) @@ -1681,14 +1681,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1698,17 +1698,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1724,22 +1724,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1750,11 +1750,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1859,26 +1859,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2353,115 +2353,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2493,43 +2483,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2924,14 +2912,14 @@ if local.get $2 i32.load16_u - local.tee $3 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $3 i32.ne if - local.get $3 local.get $4 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -3745,12 +3733,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) local.get $1 i32.const 48 i32.le_s @@ -3874,7 +3862,7 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $9 + local.tee $11 local.get $5 i32.add local.set $10 @@ -3888,7 +3876,7 @@ local.get $5 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.const -1 i32.store @@ -3903,13 +3891,13 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $11 + local.set $9 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $8 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -3921,9 +3909,9 @@ if local.get $0 i32.const 0 - local.get $8 + local.get $12 i32.const 31 - local.get $8 + local.get $12 i32.const 31 i32.lt_s select @@ -3934,7 +3922,7 @@ end loop $while-continue|2 local.get $1 - local.get $8 + local.get $12 i32.lt_s if local.get $0 @@ -3942,7 +3930,7 @@ i32.const 1 i32.add local.tee $6 - local.get $8 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -3956,13 +3944,13 @@ if local.get $0 local.get $6 - local.get $8 + local.get $12 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $8 + local.get $12 i32.gt_s select local.tee $5 @@ -3976,11 +3964,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $12 i32.const 1 i32.add i64.extend_i32_u - local.tee $13 + local.tee $8 i64.div_u local.get $5 local.get $6 @@ -3990,7 +3978,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $8 i64.div_u i64.xor i32.wrap_i64 @@ -4004,15 +3992,15 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.load - local.tee $12 + local.tee $13 i32.const -1 i32.ne if local.get $0 - local.get $12 + local.get $13 local.get $10 local.get $4 i32.const 2 @@ -4023,15 +4011,15 @@ i32.const 1 i32.add local.get $1 - local.get $11 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $9 + local.get $11 i32.add i32.const -1 i32.store - local.get $12 + local.get $13 local.set $3 end local.get $4 @@ -4041,7 +4029,7 @@ br $for-loop|3 end end - local.get $9 + local.get $11 local.get $7 i32.const 2 i32.shl @@ -4069,7 +4057,7 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.load local.tee $1 @@ -4086,8 +4074,8 @@ i32.load i32.const 1 i32.add - local.get $8 - local.get $11 + local.get $12 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns end @@ -4098,10 +4086,10 @@ br $for-loop|4 end end - local.get $11 - call $~lib/rt/tlsf/__free local.get $9 call $~lib/rt/tlsf/__free + local.get $11 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -4258,10 +4246,10 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 f64) - (local $9 f32) + (local $6 f64) + (local $7 f32) + (local $8 i32) + (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) @@ -4730,11 +4718,11 @@ i32.const 6 i32.const 1824 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 call $~lib/staticarray/StaticArray.fromArray local.tee $0 i32.store offset=4 @@ -4756,29 +4744,29 @@ i32.const 8 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.const 1856 i32.const 8 call $~lib/memory/memory.copy - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.const 1888 i32.const 4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=12 - local.get $0 local.get $1 + local.get $3 call $~lib/staticarray/StaticArray.concat - local.tee $1 + local.tee $0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -4798,25 +4786,25 @@ i32.const 0 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.const 1920 i32.const 0 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=12 - local.get $0 local.get $1 + local.get $3 call $~lib/staticarray/StaticArray.concat - local.tee $1 + local.tee $0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -4835,26 +4823,26 @@ i32.const 20 i32.const 8 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.const 2128 i32.const 20 call $~lib/memory/memory.copy - local.get $0 + local.get $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.const 0 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $3 + local.tee $0 i32.store offset=4 - local.get $3 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.get $0 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -4872,7 +4860,7 @@ i32.const 0 local.set $1 loop $for-loop|2 - local.get $0 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -4881,14 +4869,14 @@ local.get $1 i32.gt_s if - local.get $0 + local.get $3 local.get $1 call $~lib/staticarray/StaticArray<~lib/string/String>#__get local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 i32.store - local.get $3 + local.get $0 local.get $1 call $~lib/staticarray/StaticArray<~lib/string/String>#__get local.set $5 @@ -4915,13 +4903,13 @@ end end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.const 1 i32.const 3 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -4937,18 +4925,18 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer local.tee $4 - local.get $3 + local.get $1 i32.store local.get $4 i32.const 1984 i32.store offset=12 - local.get $3 + local.get $1 i32.const 1984 call $~lib/string/String.__eq i32.eqz @@ -4960,18 +4948,18 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.store - local.get $3 + local.get $1 i32.const 2016 i32.store offset=12 - local.get $1 + local.get $0 i32.const 2016 call $~lib/string/String.__eq i32.eqz @@ -4984,13 +4972,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.const 1 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -4998,7 +4986,7 @@ i32.shr_u i32.const 1 i32.sub - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -5014,19 +5002,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.const 0 i32.const 50 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.get $0 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -5042,13 +5030,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.const 100 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -5063,13 +5051,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.const -1 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -5085,18 +5073,18 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.store - local.get $3 + local.get $1 i32.const 2080 i32.store offset=12 - local.get $1 + local.get $0 i32.const 2080 call $~lib/string/String.__eq i32.eqz @@ -5109,13 +5097,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.const -2 i32.const -2 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -5130,7 +5118,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.const 2 i32.const -2 call $~lib/staticarray/StaticArray.slice<~lib/string/String> @@ -5179,29 +5167,29 @@ i32.const 20 i32.const 8 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.const 2304 i32.const 20 call $~lib/memory/memory.copy - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 0 i32.const 9 i32.const 2352 call $~lib/rt/__newArray - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=12 - local.get $0 local.get $1 + local.get $3 call $~lib/staticarray/StaticArray<~lib/string/String>#concat - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 - i32.load offset=12 local.get $0 + i32.load offset=12 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -5221,18 +5209,18 @@ i32.const 9 i32.const 2416 call $~lib/rt/__newArray - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=12 - local.get $0 local.get $1 + local.get $3 call $~lib/staticarray/StaticArray<~lib/string/String>#concat - local.tee $1 + local.tee $0 i32.store offset=16 - local.get $1 - i32.load offset=12 local.get $0 + i32.load offset=12 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -5253,16 +5241,16 @@ i32.const 20 i32.const 8 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.const 2448 i32.const 20 call $~lib/memory/memory.copy - local.get $0 + local.get $1 i32.store offset=16 global.get $~lib/memory/__stack_pointer i32.const 1984 i32.store offset=12 - local.get $0 + local.get $1 i32.const 1984 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#includes @@ -5279,7 +5267,7 @@ global.get $~lib/memory/__stack_pointer i32.const 2384 i32.store offset=12 - local.get $0 + local.get $1 i32.const 2384 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#includes @@ -5294,7 +5282,7 @@ global.get $~lib/memory/__stack_pointer i32.const 2080 i32.store offset=12 - local.get $0 + local.get $1 i32.const 2080 i32.const 5 call $~lib/staticarray/StaticArray<~lib/string/String>#includes @@ -5309,7 +5297,7 @@ global.get $~lib/memory/__stack_pointer i32.const 2080 i32.store offset=12 - local.get $0 + local.get $1 i32.const 2080 i32.const -1 call $~lib/staticarray/StaticArray<~lib/string/String>#includes @@ -5360,11 +5348,11 @@ local.get $0 i32.add f64.load - local.tee $8 + local.tee $6 f64.const nan:0x8000000000000 f64.eq - local.get $8 - local.get $8 + local.get $6 + local.get $6 f64.ne i32.or br_if $__inlined_func$~lib/staticarray/StaticArray#includes @@ -5426,11 +5414,11 @@ local.get $0 i32.add f32.load - local.tee $9 + local.tee $7 f32.const nan:0x400000 f32.eq - local.get $9 - local.get $9 + local.get $7 + local.get $7 f32.ne i32.or br_if $__inlined_func$~lib/staticarray/StaticArray#includes @@ -6115,26 +6103,26 @@ i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.const 2736 i32.const 12 call $~lib/memory/memory.copy - local.get $0 + local.get $1 i32.store offset=16 global.get $~lib/memory/__stack_pointer i32.const 2800 i32.store offset=20 - local.get $0 + local.get $1 i32.const 2800 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 2832 i32.store offset=12 - local.get $1 + local.get $0 i32.const 2832 call $~lib/string/String.__eq i32.eqz @@ -6149,17 +6137,17 @@ global.get $~lib/memory/__stack_pointer i32.const 2768 i32.store offset=20 - local.get $0 + local.get $1 i32.const 2768 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 2880 i32.store offset=12 - local.get $1 + local.get $0 i32.const 2880 call $~lib/string/String.__eq i32.eqz @@ -6174,17 +6162,17 @@ global.get $~lib/memory/__stack_pointer i32.const 2928 i32.store offset=20 - local.get $0 + local.get $1 i32.const 2928 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 2960 i32.store offset=12 - local.get $1 + local.get $0 i32.const 2960 call $~lib/string/String.__eq i32.eqz @@ -6199,17 +6187,17 @@ global.get $~lib/memory/__stack_pointer i32.const 3008 i32.store offset=20 - local.get $0 + local.get $1 i32.const 3008 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 3040 i32.store offset=12 - local.get $1 + local.get $0 i32.const 3040 call $~lib/string/String.__eq i32.eqz @@ -6224,12 +6212,12 @@ global.get $~lib/memory/__stack_pointer i32.const 2800 i32.store offset=20 - local.get $0 + local.get $1 i32.const 2800 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 @@ -6246,19 +6234,19 @@ local.get $2 i32.const 2800 i32.store - local.get $0 + local.get $1 i32.const 2800 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=12 local.get $1 + i32.store offset=12 local.get $0 + local.get $1 call $~lib/string/String.__eq i32.eqz if @@ -6273,34 +6261,34 @@ i32.const 8 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.const 3104 i32.const 8 call $~lib/memory/memory.copy - local.get $0 + local.get $1 i32.store offset=16 i32.const 1 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.const 1 i32.gt_u select local.set $2 loop $for-loop|024 - local.get $1 + local.get $0 local.get $2 i32.gt_s if local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.const 1 i32.store @@ -6311,7 +6299,7 @@ br $for-loop|024 end end - local.get $0 + local.get $1 i32.const 0 call $~lib/staticarray/StaticArray#__get if @@ -6322,7 +6310,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 1 @@ -6339,32 +6327,32 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.const 3136 i32.const 12 call $~lib/memory/memory.copy - local.get $0 + local.get $1 i32.store offset=16 i32.const 0 local.set $2 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $1 + local.tee $0 i32.const 1 i32.gt_u if - local.get $1 + local.get $0 i32.const 1 i32.shr_u local.set $3 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 loop $while-continue|02633 local.get $2 local.get $3 @@ -6373,18 +6361,18 @@ local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add local.tee $4 i32.load local.set $5 local.get $4 - local.get $1 + local.get $0 local.get $2 i32.sub i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add local.tee $4 i32.load @@ -6400,7 +6388,7 @@ end end end - local.get $0 + local.get $1 i32.const 0 call $~lib/staticarray/StaticArray#__get i32.const 3 @@ -6413,7 +6401,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 2 @@ -6426,7 +6414,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/staticarray/StaticArray#__get i32.const 1 @@ -6443,56 +6431,56 @@ i32.const 20 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.const 3168 i32.const 20 call $~lib/memory/memory.copy - local.get $0 + local.get $1 i32.store offset=16 i32.const 0 - local.get $0 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 select local.set $2 - local.get $1 + local.get $0 i32.const 3 - local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.const 3 i32.gt_u select - local.tee $4 + local.tee $3 i32.sub - local.set $3 + local.set $4 local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add - local.get $4 + local.get $3 i32.const 2 i32.shl - local.get $0 - i32.add - local.get $3 local.get $1 + i32.add + local.get $4 + local.get $0 local.get $2 i32.sub - local.tee $1 - local.get $1 - local.get $3 + local.tee $0 + local.get $0 + local.get $4 i32.gt_s select i32.const 2 i32.shl call $~lib/memory/memory.copy - local.get $0 + local.get $1 i32.const 0 call $~lib/staticarray/StaticArray#__get i32.const 4 @@ -6505,7 +6493,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 5 @@ -6518,7 +6506,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/staticarray/StaticArray#__get i32.const 3 @@ -6531,7 +6519,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 call $~lib/staticarray/StaticArray#__get i32.const 4 @@ -6544,7 +6532,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 4 call $~lib/staticarray/StaticArray#__get i32.const 5 @@ -6568,12 +6556,12 @@ local.get $3 i32.store offset=16 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 3248 i32.store offset=12 i32.const 0 local.set $2 - local.get $1 + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -6582,44 +6570,44 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $4 + local.tee $1 i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $0 + local.tee $4 i32.store - local.get $0 + local.get $4 i32.load offset=4 local.set $5 loop $for-loop|027 + local.get $1 local.get $2 - local.get $4 - i32.lt_s + i32.gt_s if local.get $3 local.get $2 i32.const 2 i32.shl - local.tee $6 + local.tee $8 i32.add i32.load - local.set $7 + local.set $9 i32.const 3 global.set $~argumentsLength local.get $5 - local.get $6 + local.get $8 i32.add - local.get $7 + local.get $9 local.get $2 local.get $3 i32.const 3248 @@ -6637,10 +6625,10 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 local.get $0 + local.get $4 i32.store offset=4 - local.get $0 + local.get $4 i32.const 0 call $~lib/array/Array#__get i32.const 2 @@ -6653,7 +6641,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $4 i32.const 1 call $~lib/array/Array#__get i32.const 3 @@ -6666,7 +6654,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $4 i32.const 2 call $~lib/array/Array#__get i32.const 4 @@ -6751,7 +6739,7 @@ i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $4 + local.tee $12 i32.store local.get $3 i32.const 20 @@ -6759,10 +6747,10 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.set $13 + local.set $9 loop $for-loop|028 local.get $2 - local.get $13 + local.get $9 i32.lt_s if local.get $2 @@ -6771,26 +6759,26 @@ local.get $3 i32.add i32.load - local.set $10 + local.set $13 i32.const 3 global.set $~argumentsLength - local.get $10 + local.get $13 local.get $2 local.get $3 i32.const 3312 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $4 + local.get $12 i32.load offset=12 - local.tee $14 + local.tee $10 i32.const 1 i32.add - local.tee $15 + local.tee $11 local.tee $0 - local.get $4 + local.get $12 i32.load offset=8 - local.tee $6 + local.tee $4 i32.const 2 i32.shr_u i32.gt_u @@ -6807,7 +6795,7 @@ unreachable end block $__inlined_func$~lib/rt/itcms/__renew - local.get $6 + local.get $4 i32.const 1 i32.shl local.tee $1 @@ -6830,15 +6818,15 @@ local.get $1 i32.lt_u select - local.tee $11 - local.tee $5 - local.get $4 + local.tee $14 + local.tee $15 + local.get $12 i32.load local.tee $16 local.tee $0 i32.const 20 i32.sub - local.tee $7 + local.tee $5 i32.load i32.const -4 i32.and @@ -6846,68 +6834,68 @@ i32.sub i32.le_u if - local.get $7 local.get $5 + local.get $15 i32.store offset=16 local.get $0 local.set $1 br $__inlined_func$~lib/rt/itcms/__renew end + local.get $15 local.get $5 - local.get $7 i32.load offset=12 call $~lib/rt/itcms/__new local.tee $1 local.get $0 + local.get $15 local.get $5 - local.get $7 i32.load offset=16 local.tee $0 local.get $0 - local.get $5 + local.get $15 i32.gt_u select call $~lib/memory/memory.copy end local.get $1 - local.get $6 + local.get $4 i32.add - local.get $11 - local.get $6 + local.get $14 + local.get $4 i32.sub call $~lib/memory/memory.fill local.get $1 local.get $16 i32.ne if - local.get $4 + local.get $12 local.get $1 i32.store - local.get $4 + local.get $12 local.get $1 i32.store offset=4 local.get $1 if - local.get $4 + local.get $12 local.get $1 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end end - local.get $4 - local.get $11 + local.get $12 + local.get $14 i32.store offset=8 end - local.get $4 + local.get $12 i32.load offset=4 - local.get $14 + local.get $10 i32.const 2 i32.shl i32.add - local.get $10 + local.get $13 i32.store - local.get $4 - local.get $15 + local.get $12 + local.get $11 i32.store offset=12 end local.get $2 @@ -6921,9 +6909,9 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $12 i32.store offset=24 - local.get $4 + local.get $12 i32.load offset=12 i32.const 2 i32.ne @@ -6935,7 +6923,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $12 i32.const 0 call $~lib/array/Array#__get i32.const 2 @@ -6948,7 +6936,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $12 i32.const 1 call $~lib/array/Array#__get i32.const 3 @@ -7501,11 +7489,11 @@ i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.const 3664 i32.const 16 call $~lib/memory/memory.copy - local.get $0 + local.get $1 i32.store offset=28 i32.const 0 global.set $~argumentsLength @@ -7536,8 +7524,8 @@ i32.const 3712 i32.store end - local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -7549,7 +7537,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 0 call $~lib/staticarray/StaticArray#__get if @@ -7560,7 +7548,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 1 @@ -7573,7 +7561,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/staticarray/StaticArray#__get i32.const 2 @@ -7586,7 +7574,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 call $~lib/staticarray/StaticArray#__get i32.const 3 @@ -7707,9 +7695,9 @@ local.get $0 i32.const 2 i32.shl - local.tee $6 - local.set $4 - local.get $6 + local.tee $4 + local.set $6 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new local.set $3 @@ -7717,7 +7705,7 @@ if local.get $3 local.get $2 - local.get $4 + local.get $6 call $~lib/memory/memory.copy end local.get $5 @@ -7740,7 +7728,7 @@ local.get $3 i32.store offset=4 local.get $1 - local.get $6 + local.get $4 i32.store offset=8 local.get $1 local.get $0 @@ -7778,21 +7766,21 @@ i32.load offset=12 i32.const 2 i32.shl - local.tee $2 + local.tee $1 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 local.get $0 i32.load offset=4 - local.get $2 + local.get $1 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 ) (func $~lib/staticarray/StaticArray.concat (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -7825,16 +7813,16 @@ i32.const 0 local.get $1 select - local.tee $3 + local.tee $2 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $4 + local.tee $3 i32.add - local.tee $2 + local.tee $4 i32.const 268435455 i32.gt_u if @@ -7846,25 +7834,25 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 2 i32.shl i32.const 3 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $4 i32.store - local.get $2 - local.get $0 local.get $4 + local.get $0 + local.get $3 i32.const 2 i32.shl local.tee $0 call $~lib/memory/memory.copy local.get $0 - local.get $2 + local.get $4 i32.add local.get $1 - local.get $3 + local.get $2 i32.const 2 i32.shl call $~lib/memory/memory.copy @@ -7872,7 +7860,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $4 ) (func $~lib/staticarray/StaticArray.slice<~lib/string/String> (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -7923,7 +7911,7 @@ i32.lt_s select end - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer local.get $2 i32.const 0 @@ -7932,9 +7920,9 @@ local.get $2 local.get $3 i32.add - local.tee $1 + local.tee $2 i32.const 0 - local.get $1 + local.get $2 i32.const 0 i32.gt_s select @@ -7946,47 +7934,47 @@ i32.lt_s select end - local.get $4 + local.get $1 i32.sub - local.tee $1 + local.tee $2 i32.const 0 - local.get $1 + local.get $2 i32.const 0 i32.gt_s select i32.const 2 i32.shl - local.tee $3 + local.tee $2 i32.const 8 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.store - local.get $4 + local.get $1 i32.const 2 i32.shl local.get $0 i32.add - local.set $4 + local.set $1 i32.const 0 local.set $0 loop $while-continue|0 local.get $0 - local.get $3 + local.get $2 i32.lt_u if local.get $0 - local.get $1 + local.get $3 i32.add local.get $0 - local.get $4 + local.get $1 i32.add i32.load - local.tee $2 + local.tee $4 i32.store - local.get $2 + local.get $4 if - local.get $1 - local.get $2 + local.get $3 + local.get $4 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -8001,7 +7989,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $3 ) (func $~lib/staticarray/StaticArray<~lib/string/String>#__get (param $0 i32) (param $1 i32) (result i32) global.get $~lib/memory/__stack_pointer @@ -8094,15 +8082,15 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.tee $5 + local.tee $3 local.get $1 i32.load offset=12 i32.const 0 local.get $1 select - local.tee $7 + local.tee $4 i32.add - local.tee $2 + local.tee $5 i32.const 268435455 i32.gt_u if @@ -8114,78 +8102,78 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $5 i32.const 9 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $5 i32.store - local.get $2 - i32.load offset=4 - local.set $4 local.get $5 + i32.load offset=4 + local.set $6 + local.get $3 i32.const 2 i32.shl - local.set $5 + local.set $3 loop $for-loop|0 + local.get $2 local.get $3 - local.get $5 i32.lt_u if - local.get $3 - local.get $4 + local.get $2 + local.get $6 i32.add local.get $0 - local.get $3 + local.get $2 i32.add i32.load - local.tee $6 + local.tee $7 i32.store - local.get $6 + local.get $7 if - local.get $2 - local.get $6 + local.get $5 + local.get $7 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 + local.get $2 i32.const 4 i32.add - local.set $3 + local.set $2 br $for-loop|0 end end - local.get $4 - local.get $5 + local.get $3 + local.get $6 i32.add - local.set $3 + local.set $2 local.get $1 i32.load offset=4 - local.set $4 - local.get $7 + local.set $1 + local.get $4 i32.const 2 i32.shl - local.set $5 + local.set $3 i32.const 0 local.set $0 loop $for-loop|1 local.get $0 - local.get $5 + local.get $3 i32.lt_u if local.get $0 - local.get $3 + local.get $2 i32.add local.get $0 - local.get $4 + local.get $1 i32.add i32.load - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 if - local.get $2 - local.get $1 + local.get $5 + local.get $4 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -8200,7 +8188,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $5 ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) global.get $~lib/rt/itcms/white @@ -8246,16 +8234,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $3 i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $3 local.get $1 local.get $2 select @@ -8264,7 +8252,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $0 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/string-casemapping.optimized.wat b/tests/compiler/std/string-casemapping.optimized.wat index bb8e3bc68a..302add0bf9 100644 --- a/tests/compiler/std/string-casemapping.optimized.wat +++ b/tests/compiler/std/string-casemapping.optimized.wat @@ -617,19 +617,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -654,9 +654,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -664,17 +664,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -962,10 +962,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -977,15 +977,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -1015,7 +1015,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1051,12 +1051,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -1074,11 +1074,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 37488 @@ -1086,14 +1086,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -1103,17 +1103,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1593,7 +1593,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1619,32 +1619,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1677,7 +1677,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1685,8 +1685,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1703,7 +1703,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1713,13 +1713,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1735,7 +1735,7 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub local.tee $6 i32.const 16 @@ -1745,23 +1745,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 + local.tee $4 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1791,26 +1791,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1825,7 +1825,7 @@ local.get $2 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1837,7 +1837,7 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1852,12 +1852,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1869,7 +1869,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $2 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1884,25 +1884,25 @@ i32.sub i32.const 3 i32.and - local.tee $2 + local.tee $3 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1912,17 +1912,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1938,22 +1938,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 @@ -1964,11 +1964,11 @@ i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -2000,7 +2000,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/util/casemap/casemap (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -2026,12 +2026,12 @@ local.get $0 i32.const 255 i32.and - local.tee $5 + local.tee $4 i32.const 3 i32.div_u i32.add i32.load8_u - local.get $5 + local.get $4 i32.const 3 i32.rem_u i32.const 2 @@ -2050,45 +2050,45 @@ i32.const 5124 i32.add i32.load - local.tee $3 + local.tee $2 i32.const 255 i32.and - local.set $2 - local.get $3 - i32.const 8 - i32.shr_s local.set $3 local.get $2 + i32.const 8 + i32.shr_s + local.set $5 + local.get $3 i32.const 2 i32.lt_u if i32.const 0 local.get $1 - local.get $2 + local.get $3 i32.xor i32.sub - local.get $3 + local.get $5 i32.and local.get $0 i32.add return end - local.get $3 + local.get $5 i32.const 255 i32.and local.set $2 - local.get $3 + local.get $5 i32.const 8 i32.shr_u local.set $3 loop $while-continue|0 local.get $2 if - local.get $5 + local.get $4 local.get $2 i32.const 1 i32.shr_u - local.tee $4 + local.tee $6 local.get $3 i32.add i32.const 1 @@ -2096,11 +2096,11 @@ i32.const 6596 i32.add i32.load8_u - local.tee $6 + local.tee $5 i32.eq if (result i32) local.get $3 - local.get $4 + local.get $6 i32.add i32.const 1 i32.shl @@ -2112,24 +2112,24 @@ i32.const 5124 i32.add i32.load - local.tee $3 + local.tee $2 i32.const 255 i32.and - local.set $2 - local.get $3 - i32.const 8 - i32.shr_s local.set $3 local.get $2 + i32.const 8 + i32.shr_s + local.set $2 + local.get $3 i32.const 2 i32.lt_u if i32.const 0 local.get $1 - local.get $2 + local.get $3 i32.xor i32.sub - local.get $3 + local.get $2 i32.and local.get $0 i32.add @@ -2144,18 +2144,18 @@ i32.sub return else + local.get $4 local.get $5 - local.get $6 i32.lt_u if (result i32) - local.get $4 + local.get $6 else local.get $3 - local.get $4 + local.get $6 i32.add local.set $3 local.get $2 - local.get $4 + local.get $6 i32.sub end end @@ -2620,115 +2620,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2760,43 +2750,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3070,7 +3058,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $2 + local.tee $3 i32.load i32.const -4 i32.and @@ -3079,20 +3067,20 @@ local.get $1 i32.ge_u if - local.get $2 + local.get $3 local.get $1 i32.store offset=16 local.get $0 return end local.get $1 - local.get $2 + local.get $3 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.load offset=16 local.tee $0 local.get $0 @@ -3100,7 +3088,7 @@ i32.gt_u select call $~lib/memory/memory.copy - local.get $3 + local.get $2 ) (func $~lib/string/String.__eq (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -3192,14 +3180,14 @@ if local.get $2 i32.load16_u - local.tee $3 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $3 i32.ne if - local.get $3 local.get $4 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -3366,7 +3354,7 @@ i64.const 63 i64.shr_u i32.wrap_i64 - local.tee $2 + local.tee $3 select local.tee $0 i64.const 4294967295 @@ -3375,7 +3363,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.wrap_i64 - local.tee $3 + local.tee $2 local.tee $1 i32.const 100000 i32.lt_u @@ -3422,7 +3410,7 @@ i32.add end end - local.get $2 + local.get $3 i32.add local.tee $4 i32.const 1 @@ -3432,7 +3420,7 @@ local.tee $1 i32.store local.get $1 - local.get $3 + local.get $2 local.get $4 call $~lib/util/number/utoa32_dec_lut else @@ -3487,9 +3475,9 @@ i32.add end end - local.get $2 + local.get $3 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.shl i32.const 1 @@ -3501,10 +3489,10 @@ i64.const 100000000 i64.ge_u if - local.get $3 + local.get $2 i32.const 4 i32.sub - local.tee $3 + local.tee $4 i32.const 1 i32.shl local.get $1 @@ -3518,10 +3506,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $4 + local.tee $5 i32.const 10000 i32.rem_u - local.tee $5 + local.tee $2 i32.const 100 i32.div_u i32.const 2 @@ -3529,7 +3517,7 @@ i32.const 19212 i32.add i64.load32_u - local.get $5 + local.get $2 i32.const 100 i32.rem_u i32.const 2 @@ -3541,15 +3529,15 @@ i64.shl i64.or i64.store - local.get $3 + local.get $4 i32.const 4 i32.sub - local.tee $3 + local.tee $2 i32.const 1 i32.shl local.get $1 i32.add - local.get $4 + local.get $5 i32.const 10000 i32.div_u local.tee $4 @@ -3578,10 +3566,10 @@ local.get $1 local.get $0 i32.wrap_i64 - local.get $3 + local.get $2 call $~lib/util/number/utoa32_dec_lut end - local.get $2 + local.get $3 if local.get $1 i32.const 45 @@ -3756,7 +3744,7 @@ i32.mul i32.const 1 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer i32.const 1488 @@ -3767,22 +3755,22 @@ i32.shr_u local.set $3 loop $for-loop|0 - local.get $6 + local.get $7 local.get $8 i32.lt_u if - local.get $6 + local.get $7 i32.const 1 i32.shl local.get $0 i32.add i32.load16_u - local.tee $1 + local.tee $2 i32.const 7 i32.shr_u if block $for-continue|0 - local.get $1 + local.get $2 i32.const 55295 i32.sub i32.const 1025 @@ -3790,31 +3778,31 @@ local.get $8 i32.const 1 i32.sub - local.get $6 + local.get $7 i32.gt_u i32.and if - local.get $6 + local.get $7 i32.const 1 i32.shl local.get $0 i32.add i32.load16_u offset=2 - local.tee $7 + local.tee $4 i32.const 56319 i32.sub i32.const 1025 i32.lt_u if - local.get $6 + local.get $7 i32.const 1 i32.add - local.set $6 - local.get $7 + local.set $7 + local.get $4 i32.const 1023 i32.and - local.get $1 - local.tee $2 + local.get $2 + local.tee $1 i32.const 1023 i32.and i32.const 10 @@ -3822,75 +3810,75 @@ i32.or i32.const 65536 i32.add - local.tee $1 + local.tee $2 i32.const 131072 i32.ge_u if - local.get $4 + local.get $5 i32.const 1 i32.shl - local.get $5 + local.get $6 i32.add - local.get $7 + local.get $4 i32.const 16 i32.shl - local.get $2 + local.get $1 i32.or i32.store - local.get $4 + local.get $5 i32.const 1 i32.add - local.set $4 + local.set $5 br $for-continue|0 end end end - local.get $1 + local.get $2 i32.const 9424 i32.sub i32.const 25 i32.le_u if - local.get $4 + local.get $5 i32.const 1 i32.shl - local.get $5 + local.get $6 i32.add - local.get $1 + local.get $2 i32.const 26 i32.sub i32.store16 else - local.get $1 + local.get $2 i32.const 223 i32.sub i32.const 64056 i32.le_u if (result i32) local.get $3 - local.set $2 + local.set $1 i32.const 0 local.set $9 block $~lib/util/casemap/bsearch|inlined.0 loop $while-continue|1 - local.get $2 + local.get $1 local.get $9 i32.ge_s if - local.get $2 + local.get $1 local.get $9 i32.add i32.const 3 i32.shr_u i32.const 2 i32.shl - local.tee $7 + local.tee $4 i32.const 1 i32.shl i32.const 1488 i32.add i32.load16_u - local.get $1 + local.get $2 i32.sub local.tee $10 i32.eqz @@ -3899,60 +3887,60 @@ i32.const 31 i32.shr_u if - local.get $7 + local.get $4 i32.const 4 i32.add local.set $9 else - local.get $7 + local.get $4 i32.const 4 i32.sub - local.set $2 + local.set $1 end br $while-continue|1 end end i32.const -1 - local.set $7 + local.set $4 end - local.get $7 + local.get $4 else i32.const -1 end - local.tee $2 + local.tee $1 i32.const -1 i32.xor if - local.get $2 + local.get $1 i32.const 1 i32.shl i32.const 1488 i32.add - local.tee $2 + local.tee $1 i32.load16_u offset=6 - local.set $1 - local.get $4 + local.set $2 + local.get $5 i32.const 1 i32.shl - local.get $5 + local.get $6 i32.add - local.tee $7 - local.get $2 + local.tee $4 + local.get $1 i32.load offset=2 i32.store - local.get $7 - local.get $1 + local.get $4 + local.get $2 i32.store16 offset=4 - local.get $1 + local.get $2 i32.const 0 i32.ne i32.const 1 i32.add - local.get $4 + local.get $5 i32.add - local.set $4 + local.set $5 else - local.get $1 + local.get $2 i32.const 1 call $~lib/util/casemap/casemap i32.const 2097151 @@ -3961,18 +3949,18 @@ i32.const 65536 i32.lt_u if - local.get $4 + local.get $5 i32.const 1 i32.shl - local.get $5 + local.get $6 i32.add local.get $1 i32.store16 else - local.get $4 + local.get $5 i32.const 1 i32.shl - local.get $5 + local.get $6 i32.add local.get $1 i32.const 65536 @@ -3991,39 +3979,39 @@ i32.shl i32.or i32.store - local.get $4 + local.get $5 i32.const 1 i32.add - local.set $4 + local.set $5 end end end end else - local.get $4 + local.get $5 i32.const 1 i32.shl - local.get $5 + local.get $6 i32.add - local.get $1 + local.get $2 i32.const 2316 i32.add i32.load8_u i32.store16 end - local.get $6 + local.get $7 i32.const 1 i32.add - local.set $6 - local.get $4 + local.set $7 + local.get $5 i32.const 1 i32.add - local.set $4 + local.set $5 br $for-loop|0 end end + local.get $6 local.get $5 - local.get $4 i32.const 1 i32.shl call $~lib/rt/itcms/__renew @@ -6716,7 +6704,7 @@ local.get $0 i32.add i32.load16_u offset=2 - local.tee $5 + local.tee $4 i32.const 56319 i32.sub i32.const 1025 @@ -6726,7 +6714,7 @@ i32.const 1 i32.add local.set $3 - local.get $5 + local.get $4 i32.const 1023 i32.and local.get $2 @@ -6742,21 +6730,21 @@ i32.const 131072 i32.ge_u if - local.get $4 + local.get $5 i32.const 1 i32.shl local.get $6 i32.add - local.get $5 + local.get $4 i32.const 16 i32.shl local.get $1 i32.or i32.store - local.get $4 + local.get $5 i32.const 1 i32.add - local.set $4 + local.set $5 br $for-continue|0 end end @@ -6765,23 +6753,23 @@ i32.const 304 i32.eq if - local.get $4 + local.get $5 i32.const 1 i32.shl local.get $6 i32.add i32.const 50790505 i32.store - local.get $4 + local.get $5 i32.const 1 i32.add - local.set $4 + local.set $5 else local.get $2 i32.const 931 i32.eq if - local.get $4 + local.get $5 i32.const 1 i32.shl local.get $6 @@ -6800,19 +6788,19 @@ local.tee $2 i32.const 30 i32.sub - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 i32.const 0 i32.lt_s select - local.set $9 + local.set $8 loop $while-continue|1 local.get $2 - local.get $9 + local.get $8 i32.gt_s if i32.const -1 - local.set $5 + local.set $4 block $~lib/util/string/codePointBefore|inlined.0 local.get $2 i32.const 0 @@ -6826,7 +6814,7 @@ local.get $0 i32.add i32.load16_u - local.tee $8 + local.tee $10 i32.const 64512 i32.and i32.const 56320 @@ -6838,7 +6826,7 @@ i32.ge_s i32.and if - local.get $8 + local.get $10 i32.const 1023 i32.and local.get $2 @@ -6849,7 +6837,7 @@ local.get $0 i32.add i32.load16_u - local.tee $10 + local.tee $9 i32.const 1023 i32.and i32.const 10 @@ -6857,8 +6845,8 @@ i32.add i32.const 65536 i32.add - local.set $5 - local.get $10 + local.set $4 + local.get $9 i32.const 64512 i32.and i32.const 55296 @@ -6866,20 +6854,20 @@ br_if $~lib/util/string/codePointBefore|inlined.0 end i32.const 65533 - local.get $8 - local.get $8 + local.get $10 + local.get $10 i32.const 63488 i32.and i32.const 55296 i32.eq select - local.set $5 + local.set $4 end - local.get $5 + local.get $4 i32.const 918000 i32.lt_u if (result i32) - local.get $5 + local.get $4 i32.const 8 i32.shr_u i32.const 7212 @@ -6889,14 +6877,14 @@ i32.shl i32.const 7212 i32.add - local.get $5 + local.get $4 i32.const 255 i32.and i32.const 3 i32.shr_u i32.add i32.load8_u - local.get $5 + local.get $4 i32.const 7 i32.and i32.shr_u @@ -6908,11 +6896,11 @@ i32.eqz if i32.const 0 - local.get $5 + local.get $4 i32.const 127370 i32.lt_u if (result i32) - local.get $5 + local.get $4 i32.const 8 i32.shr_u i32.const 10220 @@ -6922,14 +6910,14 @@ i32.shl i32.const 10220 i32.add - local.get $5 + local.get $4 i32.const 255 i32.and i32.const 3 i32.shr_u i32.add i32.load8_u - local.get $5 + local.get $4 i32.const 7 i32.and i32.shr_u @@ -6945,7 +6933,7 @@ local.set $1 end local.get $2 - local.get $5 + local.get $4 i32.const 65536 i32.ge_s i32.const 1 @@ -6972,10 +6960,10 @@ local.get $7 i32.lt_s select - local.set $5 + local.set $4 loop $while-continue|2 local.get $2 - local.get $5 + local.get $4 i32.lt_s if local.get $2 @@ -7108,7 +7096,7 @@ i32.const 25 i32.le_u if - local.get $4 + local.get $5 i32.const 1 i32.shl local.get $6 @@ -7127,7 +7115,7 @@ i32.const 65536 i32.lt_u if - local.get $4 + local.get $5 i32.const 1 i32.shl local.get $6 @@ -7135,7 +7123,7 @@ local.get $1 i32.store16 else - local.get $4 + local.get $5 i32.const 1 i32.shl local.get $6 @@ -7157,17 +7145,17 @@ i32.shl i32.or i32.store - local.get $4 + local.get $5 i32.const 1 i32.add - local.set $4 + local.set $5 end end end end end else - local.get $4 + local.get $5 i32.const 1 i32.shl local.get $6 @@ -7182,15 +7170,15 @@ i32.const 1 i32.add local.set $3 - local.get $4 + local.get $5 i32.const 1 i32.add - local.set $4 + local.set $5 br $for-loop|0 end end local.get $6 - local.get $4 + local.get $5 i32.const 1 i32.shl call $~lib/rt/itcms/__renew @@ -7226,13 +7214,13 @@ local.get $0 i32.const 65535 i32.gt_u - local.tee $2 + local.tee $1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $2 + local.get $1 if local.get $0 i32.const 1114111 @@ -7245,7 +7233,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 local.get $0 i32.const 65536 i32.sub @@ -7264,7 +7252,7 @@ i32.or i32.store else - local.get $1 + local.get $2 local.get $0 i32.store16 end @@ -7272,7 +7260,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) (local $1 i32) @@ -7282,19 +7270,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -7304,22 +7292,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 37476 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -7333,9 +7321,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -7345,23 +7333,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -7369,7 +7357,7 @@ else i32.const 21056 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1280 @@ -7379,7 +7367,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 21060 @@ -7394,28 +7382,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/std/string-encoding.optimized.wat b/tests/compiler/std/string-encoding.optimized.wat index 8c229bf0ee..6741c3ba0c 100644 --- a/tests/compiler/std/string-encoding.optimized.wat +++ b/tests/compiler/std/string-encoding.optimized.wat @@ -202,19 +202,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -239,9 +239,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -249,17 +249,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -547,10 +547,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -562,15 +562,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -600,7 +600,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -636,12 +636,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -659,11 +659,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 38928 @@ -671,14 +671,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -688,17 +688,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1178,7 +1178,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1204,32 +1204,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1262,7 +1262,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1270,8 +1270,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1288,7 +1288,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1298,13 +1298,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1320,7 +1320,7 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub local.tee $6 i32.const 16 @@ -1330,23 +1330,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 + local.tee $4 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1376,26 +1376,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1410,7 +1410,7 @@ local.get $2 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1422,7 +1422,7 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1437,12 +1437,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1454,7 +1454,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $2 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1469,25 +1469,25 @@ i32.sub i32.const 3 i32.and - local.tee $2 + local.tee $3 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1497,17 +1497,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1523,22 +1523,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 @@ -1549,11 +1549,11 @@ i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1585,7 +1585,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/util/memory/memcpy (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -2042,115 +2042,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2182,43 +2172,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2576,14 +2564,14 @@ if local.get $2 i32.load16_u - local.tee $3 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $3 i32.ne if - local.get $3 local.get $4 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -3079,18 +3067,18 @@ i32.store i32.const 1052 i32.load - local.set $2 + local.set $1 local.get $0 i32.const 0 call $~lib/string/String.UTF16.decodeUnsafe - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store global.get $~lib/memory/__stack_pointer i32.const 1552 i32.store offset=8 - local.get $1 + local.get $2 i32.const 1552 call $~lib/string/String.__eq i32.eqz @@ -3103,7 +3091,7 @@ unreachable end local.get $0 - local.get $2 + local.get $1 call $~lib/string/String.UTF16.decodeUnsafe local.set $1 global.get $~lib/memory/__stack_pointer @@ -3684,20 +3672,20 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 1824 i32.store offset=4 i32.const 1824 i32.const 0 i32.const 1 call $~lib/string/String.UTF8.encode - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store local.get $1 + i32.store local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -3721,20 +3709,20 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 1888 i32.store offset=4 i32.const 1888 i32.const 0 i32.const 0 call $~lib/string/String.UTF8.encode - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store local.get $1 + i32.store local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -3758,20 +3746,20 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 1888 i32.store offset=4 i32.const 1888 i32.const 0 i32.const 1 call $~lib/string/String.UTF8.encode - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store local.get $1 + i32.store local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -4126,19 +4114,19 @@ i32.const 1056 i32.const 0 call $~lib/string/String.UTF8.byteLength - local.set $2 + local.set $1 local.get $0 i32.const 0 i32.const 0 call $~lib/string/String.UTF8.decodeUnsafe - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store global.get $~lib/memory/__stack_pointer i32.const 1552 i32.store offset=8 - local.get $1 + local.get $2 i32.const 1552 call $~lib/string/String.__eq i32.eqz @@ -4151,7 +4139,7 @@ unreachable end local.get $0 - local.get $2 + local.get $1 i32.const 0 call $~lib/string/String.UTF8.decodeUnsafe local.set $1 @@ -4518,20 +4506,20 @@ local.get $1 i32.const -2 i32.and - local.tee $2 + local.tee $1 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 - local.get $0 local.get $2 + local.get $0 + local.get $1 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 ) (func $~lib/string/String.UTF8.encode (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -4564,13 +4552,13 @@ call $~lib/string/String.UTF8.byteLength i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $4 i32.store local.get $0 - local.set $5 - local.get $3 + local.set $3 + local.get $4 local.set $0 - local.get $5 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -4578,38 +4566,38 @@ i32.shr_u i32.const 1 i32.shl - local.get $5 + local.get $3 i32.add - local.set $7 + local.set $6 loop $while-continue|0 - local.get $5 - local.get $7 + local.get $3 + local.get $6 i32.lt_u if - local.get $5 + local.get $3 i32.load16_u - local.tee $4 + local.tee $5 i32.const 128 i32.lt_u if (result i32) local.get $0 - local.get $4 + local.get $5 i32.store8 local.get $0 i32.const 1 i32.add else - local.get $4 + local.get $5 i32.const 2048 i32.lt_u if (result i32) local.get $0 - local.get $4 + local.get $5 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $4 + local.get $5 i32.const 63 i32.and i32.const 128 @@ -4622,50 +4610,50 @@ i32.const 2 i32.add else - local.get $4 + local.get $5 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $4 + local.get $5 i32.const 56320 i32.lt_u - local.get $7 - local.get $5 + local.get $6 + local.get $3 i32.const 2 i32.add i32.gt_u i32.and if - local.get $5 + local.get $3 i32.load16_u offset=2 - local.tee $6 + local.tee $7 i32.const 64512 i32.and i32.const 56320 i32.eq if local.get $0 - local.get $4 + local.get $5 i32.const 1023 i32.and i32.const 10 i32.shl i32.const 65536 i32.add - local.get $6 + local.get $7 i32.const 1023 i32.and i32.or - local.tee $4 + local.tee $5 i32.const 63 i32.and i32.const 128 i32.or i32.const 24 i32.shl - local.get $4 + local.get $5 i32.const 6 i32.shr_u i32.const 63 @@ -4675,7 +4663,7 @@ i32.const 16 i32.shl i32.or - local.get $4 + local.get $5 i32.const 12 i32.shr_u i32.const 63 @@ -4685,7 +4673,7 @@ i32.const 8 i32.shl i32.or - local.get $4 + local.get $5 i32.const 18 i32.shr_u i32.const 240 @@ -4696,10 +4684,10 @@ i32.const 4 i32.add local.set $0 - local.get $5 + local.get $3 i32.const 4 i32.add - local.set $5 + local.set $3 br $while-continue|0 end end @@ -4718,17 +4706,17 @@ end i32.const 65533 else - local.get $4 + local.get $5 end - local.set $4 + local.set $5 end local.get $0 - local.get $4 + local.get $5 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $4 + local.get $5 i32.const 6 i32.shr_u i32.const 63 @@ -4740,7 +4728,7 @@ i32.or i32.store16 local.get $0 - local.get $4 + local.get $5 i32.const 63 i32.and i32.const 128 @@ -4752,10 +4740,10 @@ end end local.set $0 - local.get $5 + local.get $3 i32.const 2 i32.add - local.set $5 + local.set $3 br $while-continue|0 end end @@ -4769,7 +4757,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $4 ) (func $~lib/string/String.UTF8.decodeUnsafe (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -4829,12 +4817,12 @@ block $while-break|0 local.get $3 i32.load8_u - local.set $4 + local.set $7 local.get $3 i32.const 1 i32.add local.set $3 - local.get $4 + local.get $7 i32.const 128 i32.and if @@ -4846,20 +4834,20 @@ i32.load8_u i32.const 63 i32.and - local.set $6 + local.set $4 local.get $3 i32.const 1 i32.add local.set $3 - local.get $4 + local.get $7 i32.const 224 i32.and i32.const 192 i32.eq if local.get $1 - local.get $6 local.get $4 + local.get $7 i32.const 31 i32.and i32.const 6 @@ -4875,24 +4863,24 @@ i32.load8_u i32.const 63 i32.and - local.set $7 + local.set $6 local.get $3 i32.const 1 i32.add local.set $3 - local.get $4 + local.get $7 i32.const 240 i32.and i32.const 224 i32.eq if + local.get $6 local.get $7 - local.get $4 i32.const 15 i32.and i32.const 12 i32.shl - local.get $6 + local.get $4 i32.const 6 i32.shl i32.or @@ -4907,16 +4895,16 @@ i32.load8_u i32.const 63 i32.and - local.get $4 + local.get $7 i32.const 7 i32.and i32.const 18 i32.shl - local.get $6 + local.get $4 i32.const 12 i32.shl i32.or - local.get $7 + local.get $6 i32.const 6 i32.shl i32.or @@ -4960,13 +4948,13 @@ end end else - local.get $4 + local.get $7 i32.eqz local.get $2 i32.and br_if $while-break|0 local.get $1 - local.get $4 + local.get $7 i32.store16 end local.get $1 @@ -5030,19 +5018,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -5052,22 +5040,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 38924 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -5081,9 +5069,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -5093,23 +5081,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -5117,7 +5105,7 @@ else i32.const 22512 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1344 @@ -5127,7 +5115,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 22516 @@ -5142,28 +5130,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/std/string.optimized.wat b/tests/compiler/std/string.optimized.wat index 898b7cdc66..089815cf53 100644 --- a/tests/compiler/std/string.optimized.wat +++ b/tests/compiler/std/string.optimized.wat @@ -998,14 +998,14 @@ if local.get $1 i32.load16_u - local.tee $0 + local.tee $4 local.get $2 i32.load16_u - local.tee $4 + local.tee $0 i32.ne if - local.get $0 local.get $4 + local.get $0 i32.sub return end @@ -1155,7 +1155,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1178,7 +1178,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1188,23 +1188,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1212,7 +1212,7 @@ else i32.const 25840 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1264 @@ -1222,7 +1222,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 25844 @@ -1237,27 +1237,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -1345,19 +1345,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -1382,9 +1382,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -1392,17 +1392,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -1690,10 +1690,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -1705,15 +1705,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -1743,7 +1743,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1779,12 +1779,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -1802,11 +1802,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 42272 @@ -1814,14 +1814,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -1831,17 +1831,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -2319,14 +2319,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -2336,17 +2336,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -2362,22 +2362,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -2388,11 +2388,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -2497,7 +2497,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -2523,32 +2523,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -2564,16 +2564,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -2581,7 +2581,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -2589,8 +2589,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -2607,7 +2607,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -2617,13 +2617,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -2636,40 +2636,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -2695,26 +2695,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -3248,115 +3248,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 + local.get $0 + i32.const 2 + i32.add + local.set $3 local.get $1 - local.tee $3 i32.const 2 i32.add - local.set $1 + local.set $4 local.get $0 - local.tee $4 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 + local.get $4 + i32.load8_u + i32.store8 + local.get $3 i32.const 2 i32.add local.set $0 + local.get $4 + i32.const 2 + i32.add + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 + local.get $0 + i32.const 2 + i32.add + local.set $3 local.get $1 - local.tee $3 i32.const 2 i32.add - local.set $1 + local.set $4 local.get $0 - local.tee $4 - i32.const 2 - i32.add - local.set $0 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 local.get $1 - local.get $0 - i32.load8_u - i32.store8 - local.get $1 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $0 - i32.const 2 - i32.add - local.set $4 - local.get $3 - local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3388,43 +3378,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3701,7 +3689,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 i32.eqz if i32.const 0 @@ -3713,7 +3701,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.eqz if i32.const -1 @@ -3726,25 +3714,25 @@ i32.gt_s select local.tee $2 - local.get $3 + local.get $4 local.get $2 - local.get $3 + local.get $4 i32.lt_s select local.set $2 - local.get $3 local.get $4 + local.get $3 i32.sub - local.set $3 + local.set $4 loop $for-loop|0 local.get $2 - local.get $3 + local.get $4 i32.le_s if local.get $0 local.get $2 local.get $1 - local.get $4 + local.get $3 call $~lib/util/string/compareImpl i32.eqz if @@ -4001,7 +3989,7 @@ end end f64.const 1 - local.set $4 + local.set $5 local.get $2 i32.const 43 i32.eq @@ -4025,7 +4013,7 @@ i32.const 45 i32.eq select - local.set $4 + local.set $5 local.get $0 i32.const 2 i32.add @@ -4197,7 +4185,7 @@ local.tee $2 i32.le_u if - local.get $5 + local.get $4 i64.reinterpret_f64 i64.const 1 i64.shl @@ -4211,14 +4199,14 @@ end br $while-break|2 end - local.get $5 + local.get $4 local.get $1 f64.convert_i32_s f64.mul local.get $2 f64.convert_i32_u f64.add - local.set $5 + local.set $4 local.get $0 i32.const 2 i32.add @@ -4227,8 +4215,8 @@ end end end - local.get $4 local.get $5 + local.get $4 f64.mul ) (func $~lib/util/string/strtol (result i32) @@ -4249,7 +4237,7 @@ return end i32.const 4240 - local.set $5 + local.set $3 i32.const 4240 i32.load16_u local.set $0 @@ -4317,10 +4305,10 @@ i32.const 0 end if - local.get $5 + local.get $3 i32.const 2 i32.add - local.tee $5 + local.tee $3 i32.load16_u local.set $0 local.get $1 @@ -4331,7 +4319,7 @@ end end i32.const 1 - local.set $3 + local.set $5 local.get $0 i32.const 43 i32.eq @@ -4355,11 +4343,11 @@ i32.const 45 i32.eq select - local.set $3 - local.get $5 + local.set $5 + local.get $3 i32.const 2 i32.add - local.tee $5 + local.tee $3 i32.load16_u else local.get $0 @@ -4374,7 +4362,7 @@ block $break|1 block $case2|1 block $case1|1 - local.get $5 + local.get $3 i32.load16_u offset=2 i32.const 32 i32.or @@ -4392,10 +4380,10 @@ br_if $case2|1 br $break|1 end - local.get $5 + local.get $3 i32.const 4 i32.add - local.set $5 + local.set $3 local.get $1 i32.const 2 i32.sub @@ -4404,10 +4392,10 @@ local.set $2 br $break|1 end - local.get $5 + local.get $3 i32.const 4 i32.add - local.set $5 + local.set $3 local.get $1 i32.const 2 i32.sub @@ -4416,10 +4404,10 @@ local.set $2 br $break|1 end - local.get $5 + local.get $3 i32.const 4 i32.add - local.set $5 + local.set $3 local.get $1 i32.const 2 i32.sub @@ -4442,7 +4430,7 @@ local.set $1 local.get $0 if - local.get $5 + local.get $3 i32.load16_u local.tee $0 i32.const 48 @@ -4494,25 +4482,25 @@ i32.mul i32.add local.set $4 - local.get $5 + local.get $3 i32.const 2 i32.add - local.set $5 + local.set $3 br $while-continue|2 end end end - local.get $3 local.get $4 + local.get $5 i32.mul ) (func $~lib/util/string/strtol (result i64) (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i64) + (local $3 i32) (local $4 i64) - (local $5 i32) + (local $5 i64) i32.const 4284 i32.load i32.const 1 @@ -4524,7 +4512,7 @@ return end i32.const 4288 - local.set $5 + local.set $3 i32.const 4288 i32.load16_u local.set $0 @@ -4592,10 +4580,10 @@ i32.const 0 end if - local.get $5 + local.get $3 i32.const 2 i32.add - local.tee $5 + local.tee $3 i32.load16_u local.set $0 local.get $1 @@ -4606,7 +4594,7 @@ end end i64.const 1 - local.set $3 + local.set $5 local.get $0 i32.const 43 i32.eq @@ -4630,11 +4618,11 @@ i32.const 45 i32.eq select - local.set $3 - local.get $5 + local.set $5 + local.get $3 i32.const 2 i32.add - local.tee $5 + local.tee $3 i32.load16_u else local.get $0 @@ -4649,7 +4637,7 @@ block $break|1 block $case2|1 block $case1|1 - local.get $5 + local.get $3 i32.load16_u offset=2 i32.const 32 i32.or @@ -4667,10 +4655,10 @@ br_if $case2|1 br $break|1 end - local.get $5 + local.get $3 i32.const 4 i32.add - local.set $5 + local.set $3 local.get $1 i32.const 2 i32.sub @@ -4679,10 +4667,10 @@ local.set $2 br $break|1 end - local.get $5 + local.get $3 i32.const 4 i32.add - local.set $5 + local.set $3 local.get $1 i32.const 2 i32.sub @@ -4691,10 +4679,10 @@ local.set $2 br $break|1 end - local.get $5 + local.get $3 i32.const 4 i32.add - local.set $5 + local.set $3 local.get $1 i32.const 2 i32.sub @@ -4717,7 +4705,7 @@ local.set $1 local.get $0 if - local.get $5 + local.get $3 i32.load16_u local.tee $0 i32.const 48 @@ -4771,16 +4759,16 @@ i64.mul i64.add local.set $4 - local.get $5 + local.get $3 i32.const 2 i32.add - local.set $5 + local.set $3 br $while-continue|2 end end end - local.get $3 local.get $4 + local.get $5 i64.mul ) (func $~lib/math/ipow32 (param $0 i32) (result i32) @@ -5022,10 +5010,10 @@ (local $5 i32) (local $6 i64) (local $7 i32) - (local $8 f64) + (local $8 i64) (local $9 f64) - (local $10 i32) - (local $11 i64) + (local $10 f64) + (local $11 i32) (local $12 i64) (local $13 i64) (local $14 i64) @@ -5043,7 +5031,7 @@ i32.load16_u local.set $5 f64.const 1 - local.set $9 + local.set $10 loop $while-continue|0 local.get $7 if (result i32) @@ -5140,7 +5128,7 @@ i32.eqz br_if $folding-inner0 f64.const -1 - local.set $9 + local.set $10 local.get $0 i32.const 2 i32.add @@ -5187,7 +5175,7 @@ i32.const 0 end if - local.get $9 + local.get $10 f64.const inf f64.mul return @@ -5252,7 +5240,7 @@ select br_if $folding-inner0 i32.const 1 - local.set $10 + local.set $11 loop $for-loop|2 local.get $0 i32.load16_u @@ -5300,7 +5288,7 @@ i32.sub local.set $4 loop $for-loop|3 - local.get $10 + local.get $11 i32.eqz local.get $5 i32.const 46 @@ -5343,7 +5331,7 @@ local.get $1 local.set $2 i32.const 1 - local.set $10 + local.set $11 end local.get $7 i32.const 1 @@ -5370,7 +5358,7 @@ i64.eqz local.get $2 local.get $1 - local.get $10 + local.get $11 select i32.const 19 local.get $1 @@ -5528,7 +5516,7 @@ drop local.get $6 f64.convert_i64_u - local.tee $8 + local.tee $9 local.get $0 i32.eqz br_if $~lib/util/string/scientific|inlined.0 @@ -5541,7 +5529,7 @@ i32.gt_s i32.and if - local.get $8 + local.get $9 local.get $0 i32.const 3 i32.shl @@ -5549,7 +5537,7 @@ i32.add f64.load f64.mul - local.set $8 + local.set $9 i32.const 22 local.set $0 end @@ -5575,7 +5563,7 @@ i32.const 0 i32.gt_s if - local.get $8 + local.get $9 local.get $0 i32.const 3 i32.shl @@ -5585,7 +5573,7 @@ f64.mul br $~lib/util/string/scientific|inlined.0 end - local.get $8 + local.get $9 i32.const 0 local.get $0 i32.sub @@ -5603,15 +5591,15 @@ local.get $6 local.get $6 i64.clz - local.tee $11 + local.tee $8 i64.shl local.set $6 local.get $0 local.tee $1 i64.extend_i32_s - local.get $11 + local.get $8 i64.sub - local.set $11 + local.set $8 loop $for-loop|6 local.get $1 i32.const -14 @@ -5639,10 +5627,10 @@ i64.shl i64.add local.set $6 - local.get $11 + local.get $8 local.get $12 i64.sub - local.set $11 + local.set $8 local.get $1 i32.const 14 i32.add @@ -5658,15 +5646,15 @@ i64.extend_i32_s local.tee $13 i64.div_u - local.tee $14 + local.tee $12 i64.clz - local.set $12 + local.set $14 local.get $6 local.get $13 i64.rem_u f64.convert_i64_u i64.reinterpret_f64 - local.get $12 + local.get $14 i64.const 52 i64.shl i64.add @@ -5675,13 +5663,13 @@ f64.convert_i64_u f64.div i64.trunc_f64_u - local.get $14 local.get $12 + local.get $14 i64.shl i64.add f64.convert_i64_u - local.get $11 - local.get $12 + local.get $8 + local.get $14 i64.sub i32.wrap_i64 call $~lib/math/NativeMath.scalbn @@ -5689,13 +5677,13 @@ local.get $6 local.get $6 i64.ctz - local.tee $11 + local.tee $8 i64.shr_u local.set $6 local.get $0 local.tee $3 i64.extend_i32_s - local.get $11 + local.get $8 i64.add global.set $~lib/util/string/__fixmulShift loop $for-loop|7 @@ -5718,27 +5706,27 @@ i64.const 32 i64.shr_u i64.add - local.tee $12 + local.tee $8 i64.const 32 i64.shr_u i32.wrap_i64 i32.clz i64.extend_i32_u - local.tee $11 + local.tee $12 i64.sub local.tee $13 global.get $~lib/util/string/__fixmulShift i64.add global.set $~lib/util/string/__fixmulShift local.get $6 - local.get $11 + local.get $12 i64.shl i64.const 31 i64.shr_u i64.const 1 i64.and + local.get $8 local.get $12 - local.get $11 i64.shl local.get $6 i64.const 4294967295 @@ -5758,45 +5746,45 @@ local.get $3 call $~lib/math/ipow32 i64.extend_i32_u - local.tee $12 + local.tee $8 local.get $6 i64.const 4294967295 i64.and i64.mul - local.set $11 + local.set $12 i64.const 32 - local.get $12 + local.get $8 local.get $6 i64.const 32 i64.shr_u i64.mul - local.get $11 + local.get $12 i64.const 32 i64.shr_u i64.add - local.tee $12 + local.tee $6 i64.const 32 i64.shr_u i32.wrap_i64 i32.clz i64.extend_i32_u - local.tee $6 + local.tee $8 i64.sub local.tee $13 global.get $~lib/util/string/__fixmulShift i64.add global.set $~lib/util/string/__fixmulShift - local.get $11 - local.get $6 + local.get $12 + local.get $8 i64.shl i64.const 31 i64.shr_u i64.const 1 i64.and - local.get $12 local.get $6 + local.get $8 i64.shl - local.get $11 + local.get $12 i64.const 4294967295 i64.and local.get $13 @@ -5810,7 +5798,7 @@ end end end - local.get $9 + local.get $10 f64.copysign return end @@ -5927,7 +5915,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $2 + local.tee $3 i32.load i32.const -4 i32.and @@ -5936,20 +5924,20 @@ local.get $1 i32.ge_u if - local.get $2 + local.get $3 local.get $1 i32.store offset=16 local.get $0 return end local.get $1 - local.get $2 + local.get $3 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.load offset=16 local.tee $0 local.get $0 @@ -5957,7 +5945,7 @@ i32.gt_u select call $~lib/memory/memory.copy - local.get $3 + local.get $2 ) (func $~lib/array/Array<~lib/string/String>#push (param $0 i32) (param $1 i32) (local $2 i32) @@ -5968,19 +5956,19 @@ (local $7 i32) local.get $0 i32.load offset=12 - local.tee $5 + local.tee $3 i32.const 1 i32.add + local.tee $4 local.tee $6 - local.tee $2 local.get $0 i32.load offset=8 - local.tee $3 + local.tee $2 i32.const 2 i32.shr_u i32.gt_u if - local.get $2 + local.get $6 i32.const 268435455 i32.gt_u if @@ -5991,66 +5979,66 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $0 i32.load - local.tee $7 - local.get $3 + local.tee $5 + local.get $2 i32.const 1 i32.shl - local.tee $4 + local.tee $7 i32.const 1073741820 - local.get $4 + local.get $7 i32.const 1073741820 i32.lt_u select - local.tee $4 - local.get $2 + local.tee $7 + local.get $6 i32.const 8 - local.get $2 + local.get $6 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $2 - local.get $2 - local.get $4 + local.tee $6 + local.get $6 + local.get $7 i32.lt_u select - local.tee $4 + local.tee $6 call $~lib/rt/itcms/__renew - local.tee $2 + local.tee $7 i32.add - local.get $4 - local.get $3 + local.get $6 + local.get $2 i32.sub call $~lib/memory/memory.fill - local.get $2 + local.get $5 local.get $7 i32.ne if local.get $0 - local.get $2 + local.get $7 i32.store local.get $0 - local.get $2 + local.get $7 i32.store offset=4 - local.get $2 + local.get $7 if local.get $0 - local.get $2 + local.get $7 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end end local.get $0 - local.get $4 + local.get $6 i32.store offset=8 end local.get $0 i32.load offset=4 - local.get $5 + local.get $3 i32.const 2 i32.shl i32.add @@ -6064,7 +6052,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 + local.get $4 i32.store offset=12 ) (func $~lib/util/number/utoa32_dec_lut (param $0 i32) (param $1 i32) (param $2 i32) @@ -6263,7 +6251,7 @@ local.get $2 i32.const 4 i32.sub - local.tee $2 + local.tee $3 i32.const 1 i32.shl local.get $0 @@ -6277,10 +6265,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $3 + local.tee $4 i32.const 10000 i32.rem_u - local.tee $4 + local.tee $2 i32.const 100 i32.div_u i32.const 2 @@ -6288,7 +6276,7 @@ i32.const 15804 i32.add i64.load32_u - local.get $4 + local.get $2 i32.const 100 i32.rem_u i32.const 2 @@ -6300,7 +6288,7 @@ i64.shl i64.or i64.store - local.get $2 + local.get $3 i32.const 4 i32.sub local.tee $2 @@ -6308,7 +6296,7 @@ i32.shl local.get $0 i32.add - local.get $3 + local.get $4 i32.const 10000 i32.div_u local.tee $3 @@ -6915,83 +6903,82 @@ i32.const 101 i32.store16 offset=2 local.get $0 - local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $1 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $0 + local.get $1 i32.sub - local.set $0 + local.set $1 end - local.get $0 - local.tee $2 + local.get $1 + local.tee $4 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $4 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $4 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $4 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $4 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $4 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 - local.get $0 - local.get $2 + local.set $4 + local.get $1 + local.get $4 i32.const 1 i32.add - local.tee $0 + local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $0 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.add else @@ -7014,87 +7001,87 @@ local.get $0 local.get $2 i32.add - local.tee $2 + local.tee $0 i32.const 101 i32.store16 offset=2 - local.get $2 + local.get $0 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $2 i32.const 0 i32.lt_s - local.tee $4 + local.tee $3 if i32.const 0 - local.get $0 + local.get $2 i32.sub - local.set $0 + local.set $2 end - local.get $0 - local.tee $3 + local.get $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 100 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $3 + local.get $5 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $3 + local.get $5 i32.const 1000 i32.ge_u i32.add end else - local.get $3 + local.get $5 i32.const 10000000 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $3 + local.get $5 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $3 + local.get $5 i32.const 100000000 i32.ge_u i32.add end end - local.set $3 - local.get $0 - local.get $3 + local.set $5 + local.get $2 + local.get $5 i32.const 1 i32.add - local.tee $0 + local.tee $2 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $0 i32.const 45 i32.const 43 - local.get $4 + local.get $3 select i32.store16 offset=4 - local.get $0 local.get $1 + local.get $2 i32.add i32.const 2 i32.add @@ -7104,25 +7091,24 @@ end ) (func $~lib/util/number/dtoa_core (param $0 f64) (result i32) - (local $1 i32) - (local $2 i64) - (local $3 i32) + (local $1 i64) + (local $2 i32) + (local $3 i64) (local $4 i64) (local $5 i64) (local $6 i64) - (local $7 i64) - (local $8 i64) - (local $9 i64) - (local $10 i32) - (local $11 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i64) + (local $11 i64) (local $12 i64) (local $13 i64) (local $14 i64) - (local $15 i64) local.get $0 f64.const 0 f64.lt - local.tee $1 + local.tee $2 if (result f64) i32.const 22864 i32.const 45 @@ -7133,72 +7119,72 @@ local.get $0 end i64.reinterpret_f64 - local.tee $2 + local.tee $1 i64.const 9218868437227405312 i64.and i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $3 + local.tee $7 i32.const 1 - local.get $3 + local.get $7 select i32.const 1075 i32.sub - local.tee $10 + local.tee $8 i32.const 1 i32.sub - local.get $2 + local.get $1 i64.const 4503599627370495 i64.and - local.get $3 + local.get $7 i32.const 0 i32.ne i64.extend_i32_u i64.const 52 i64.shl i64.add - local.tee $2 + local.tee $1 i64.const 1 i64.shl i64.const 1 i64.add - local.tee $4 + local.tee $3 i64.clz i32.wrap_i64 - local.tee $11 + local.tee $7 i32.sub - local.set $3 - local.get $4 - local.get $11 + local.set $9 + local.get $3 + local.get $7 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus - local.get $2 - local.get $2 + local.get $1 + local.get $1 i64.const 4503599627370496 i64.eq i32.const 1 i32.add - local.tee $11 + local.tee $7 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $10 - local.get $11 + local.get $8 + local.get $7 i32.sub - local.get $3 + local.get $9 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $3 + local.get $9 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $3 + local.tee $7 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -7207,9 +7193,9 @@ f64.add local.tee $0 i32.trunc_f64_s - local.tee $10 + local.tee $8 local.get $0 - local.get $10 + local.get $8 f64.convert_i32_s f64.ne i32.add @@ -7217,106 +7203,106 @@ i32.shr_s i32.const 1 i32.add - local.tee $10 + local.tee $8 i32.const 3 i32.shl - local.tee $11 + local.tee $9 i32.sub global.set $~lib/util/number/_K - local.get $11 + local.get $9 i32.const 22920 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $10 + local.get $8 i32.const 1 i32.shl i32.const 23616 i32.add i32.load16_s global.set $~lib/util/number/_exp_pow - local.get $2 - local.get $2 + local.get $1 + local.get $1 i64.clz i64.shl - local.tee $2 + local.tee $1 i64.const 4294967295 i64.and - local.set $4 - local.get $2 + local.set $10 + local.get $1 i64.const 32 i64.shr_u - local.tee $12 + local.tee $11 global.get $~lib/util/number/_frc_pow - local.tee $13 + local.tee $4 i64.const 4294967295 i64.and - local.tee $2 - local.tee $5 + local.tee $12 + local.tee $1 i64.mul - local.get $4 - local.get $5 + local.get $1 + local.get $10 i64.mul i64.const 32 i64.shr_u i64.add - local.set $5 + local.set $13 global.get $~lib/util/number/_frc_plus - local.tee $7 + local.tee $3 i64.const 4294967295 i64.and - local.set $6 - local.get $7 + local.set $1 + local.get $3 i64.const 32 i64.shr_u - local.tee $14 - local.get $2 + local.tee $5 + local.get $12 i64.mul - local.get $2 - local.get $6 + local.get $1 + local.get $12 i64.mul i64.const 32 i64.shr_u i64.add - local.set $7 + local.set $14 global.get $~lib/util/number/_frc_minus - local.tee $9 + local.tee $6 i64.const 4294967295 i64.and - local.set $8 - local.get $9 + local.set $3 + local.get $6 i64.const 32 i64.shr_u - local.tee $15 - local.get $2 + local.tee $6 + local.get $12 i64.mul - local.get $2 - local.get $8 + local.get $3 + local.get $12 i64.mul i64.const 32 i64.shr_u i64.add - local.set $9 - local.get $1 + local.set $12 + local.get $2 i32.const 1 i32.shl i32.const 22864 i32.add - local.get $12 - local.get $13 + local.get $11 + local.get $4 i64.const 32 i64.shr_u - local.tee $2 - local.tee $12 + local.tee $4 + local.tee $11 i64.mul - local.get $5 + local.get $13 i64.const 32 i64.shr_u i64.add - local.get $4 - local.get $12 + local.get $10 + local.get $11 i64.mul - local.get $5 + local.get $13 i64.const 4294967295 i64.and i64.add @@ -7325,17 +7311,17 @@ i64.const 32 i64.shr_u i64.add - local.get $2 - local.get $14 + local.get $4 + local.get $5 i64.mul - local.get $7 + local.get $14 i64.const 32 i64.shr_u i64.add - local.get $2 - local.get $6 + local.get $1 + local.get $4 i64.mul - local.get $7 + local.get $14 i64.const 4294967295 i64.and i64.add @@ -7346,24 +7332,24 @@ i64.add i64.const 1 i64.sub - local.tee $4 + local.tee $1 global.get $~lib/util/number/_exp_pow - local.get $3 + local.get $7 i32.add i32.const -64 i32.sub + local.get $1 local.get $4 - local.get $2 - local.get $15 + local.get $6 i64.mul - local.get $9 + local.get $12 i64.const 32 i64.shr_u i64.add - local.get $2 - local.get $8 + local.get $3 + local.get $4 i64.mul - local.get $9 + local.get $12 i64.const 4294967295 i64.and i64.add @@ -7375,13 +7361,13 @@ i64.const 1 i64.add i64.sub - local.get $1 + local.get $2 call $~lib/util/number/genDigits - local.get $1 + local.get $2 i32.sub global.get $~lib/util/number/_K call $~lib/util/number/prettify - local.get $1 + local.get $2 i32.add ) (func $std/string/getString (result i32) @@ -7437,19 +7423,19 @@ i32.const 2 i32.shl i32.add - local.set $3 + local.set $0 loop $while-continue|0 + local.get $0 local.get $2 - local.get $3 - i32.lt_u + i32.gt_u if local.get $2 i32.load - local.tee $0 + local.tee $3 if - local.get $0 + local.get $3 if - local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -7499,13 +7485,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $5 i64.const 0 i64.store - local.get $4 + local.get $5 i64.const 0 i64.store offset=8 - local.get $4 + local.get $5 i64.const 0 i64.store offset=16 block $folding-inner3 @@ -7553,23 +7539,23 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.set $4 + local.set $8 i32.const 2147483647 local.get $2 local.get $2 i32.const 0 i32.lt_s select - local.set $6 + local.set $5 local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $8 + local.tee $6 if - local.get $4 + local.get $8 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -7586,17 +7572,17 @@ br $folding-inner1 end else - local.get $4 + local.get $8 i32.eqz br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.get $4 - local.get $6 - local.get $4 - local.get $6 - i32.lt_s + local.get $8 + local.get $5 + local.get $5 + local.get $8 + i32.gt_s select - local.tee $3 + local.tee $1 i32.const 4 i32.const 0 call $~lib/rt/__newArray @@ -7604,44 +7590,44 @@ i32.store local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $for-loop|0 - local.get $3 - local.get $5 + local.get $1 + local.get $4 i32.gt_s if global.get $~lib/memory/__stack_pointer i32.const 2 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $5 i32.store offset=8 - local.get $1 local.get $5 + local.get $4 i32.const 1 i32.shl local.get $0 i32.add i32.load16_u i32.store16 - local.get $5 + local.get $4 i32.const 2 i32.shl - local.get $4 + local.get $3 i32.add - local.get $1 + local.get $5 i32.store - local.get $1 + local.get $5 if local.get $2 - local.get $1 + local.get $5 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $5 + local.get $4 i32.const 1 i32.add - local.set $5 + local.set $4 br $for-loop|0 end end @@ -7659,36 +7645,36 @@ local.get $1 local.get $3 call $~lib/string/String#indexOf - local.tee $5 + local.tee $9 i32.const -1 i32.xor if - local.get $5 + local.get $9 local.get $3 i32.sub - local.tee $7 + local.tee $4 i32.const 0 i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.const 1 i32.shl - local.tee $9 + local.tee $4 i32.const 1 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $10 i32.store offset=16 - local.get $7 + local.get $10 local.get $3 i32.const 1 i32.shl local.get $0 i32.add - local.get $9 + local.get $4 call $~lib/memory/memory.copy local.get $2 - local.get $7 + local.get $10 call $~lib/array/Array<~lib/string/String>#push else global.get $~lib/memory/__stack_pointer @@ -7698,15 +7684,15 @@ i32.const 1712 call $~lib/array/Array<~lib/string/String>#push end - local.get $10 + local.get $7 i32.const 1 i32.add - local.tee $10 - local.get $6 + local.tee $7 + local.get $5 i32.eq br_if $folding-inner2 - local.get $5 - local.get $8 + local.get $6 + local.get $9 i32.add local.set $3 br $while-continue|1 @@ -7720,7 +7706,7 @@ call $~lib/array/Array<~lib/string/String>#push br $folding-inner2 end - local.get $4 + local.get $8 local.get $3 i32.sub local.tee $1 @@ -7731,21 +7717,21 @@ local.get $1 i32.const 1 i32.shl - local.tee $4 + local.tee $1 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $4 i32.store offset=4 - local.get $1 + local.get $4 local.get $3 i32.const 1 i32.shl local.get $0 i32.add - local.get $4 + local.get $1 call $~lib/memory/memory.copy local.get $2 - local.get $1 + local.get $4 call $~lib/array/Array<~lib/string/String>#push else global.get $~lib/memory/__stack_pointer @@ -7785,11 +7771,11 @@ ) (func $start:std/string (local $0 i32) - (local $1 i32) - (local $2 i32) + (local $1 f64) + (local $2 f32) (local $3 i32) - (local $4 f64) - (local $5 f32) + (local $4 i32) + (local $5 i32) global.get $~lib/memory/__stack_pointer i32.const 44 i32.sub @@ -7940,25 +7926,25 @@ end global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $1 + local.tee $3 i32.store i32.const -1 local.set $0 block $__inlined_func$~lib/string/String#codePointAt - local.get $1 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $4 i32.const 1 i32.le_u br_if $__inlined_func$~lib/string/String#codePointAt - local.get $2 + local.get $4 i32.const 2 i32.eq - local.get $1 + local.get $3 i32.load16_u offset=2 local.tee $0 i32.const 64512 @@ -7967,15 +7953,15 @@ i32.ne i32.or br_if $__inlined_func$~lib/string/String#codePointAt - local.get $1 + local.get $3 i32.load16_u offset=4 - local.tee $1 + local.tee $3 i32.const 64512 i32.and i32.const 56320 i32.ne br_if $__inlined_func$~lib/string/String#codePointAt - local.get $1 + local.get $3 local.get $0 i32.const 10 i32.shl @@ -8040,17 +8026,17 @@ i32.store global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $1 + local.tee $3 i32.store offset=8 - local.get $1 + local.get $3 i32.const 15 call $~lib/string/String#charAt - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=4 local.get $0 - local.get $1 + local.get $3 call $~lib/string/String.__eq i32.eqz if @@ -8074,14 +8060,14 @@ i32.store global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $1 + local.tee $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $2 + local.tee $4 i32.store offset=12 - local.get $1 - local.get $2 + local.get $3 + local.get $4 i32.const 20 i32.sub i32.load offset=16 @@ -8090,12 +8076,12 @@ i32.const 1 i32.sub call $~lib/string/String#charAt - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=4 local.get $0 - local.get $1 + local.get $3 call $~lib/string/String.__eq i32.eqz if @@ -8107,16 +8093,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/string/str local.tee $0 + global.get $std/string/str + local.tee $3 i32.store offset=8 - local.get $1 local.get $0 + local.get $3 i32.store offset=12 - local.get $0 + local.get $3 i32.const 0 - local.get $0 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -8196,10 +8182,10 @@ call $~lib/string/String.fromCharCode@varargs local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 1776 i32.store offset=4 local.get $0 @@ -8220,10 +8206,10 @@ call $~lib/string/String.fromCharCode@varargs local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 1840 i32.store offset=4 local.get $0 @@ -8244,10 +8230,10 @@ call $~lib/string/String.fromCharCode@varargs local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 1872 i32.store offset=4 local.get $0 @@ -8268,10 +8254,10 @@ call $~lib/string/String.fromCharCode@varargs local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 1872 i32.store offset=4 local.get $0 @@ -8291,10 +8277,10 @@ call $~lib/string/String.fromCharCode local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 1904 i32.store offset=4 local.get $0 @@ -8400,10 +8386,10 @@ call $~lib/string/String.fromCodePoint local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 1776 i32.store offset=4 local.get $0 @@ -8422,10 +8408,10 @@ call $~lib/string/String.fromCodePoint local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 1872 i32.store offset=4 local.get $0 @@ -8444,10 +8430,10 @@ call $~lib/string/String.fromCodePoint local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 2144 i32.store offset=4 local.get $0 @@ -8463,39 +8449,39 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/string/str local.tee $0 + global.get $std/string/str + local.tee $3 i32.store - local.get $1 + local.get $0 i32.const 2176 i32.store offset=4 i32.const 0 - local.get $0 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 select - local.tee $2 + local.tee $4 i32.const 2172 i32.load i32.const 1 i32.shr_u - local.tee $3 + local.tee $5 i32.add - local.get $1 + local.get $0 i32.gt_s if (result i32) i32.const 1 else - local.get $0 - local.get $2 - i32.const 2176 local.get $3 + local.get $4 + i32.const 2176 + local.get $5 call $~lib/util/string/compareImpl end if @@ -8507,22 +8493,22 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/string/str local.tee $0 + global.get $std/string/str + local.tee $3 i32.store - local.get $1 + local.get $0 i32.const 2208 i32.store offset=4 i32.const 536870910 - local.get $0 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.const 536870910 i32.gt_u select @@ -8530,18 +8516,18 @@ i32.load i32.const 1 i32.shr_u - local.tee $1 + local.tee $0 i32.sub - local.tee $2 + local.tee $4 i32.const 0 i32.lt_s if (result i32) i32.const 1 else - local.get $0 - local.get $2 + local.get $3 + local.get $4 i32.const 2208 - local.get $1 + local.get $0 call $~lib/util/string/compareImpl end if @@ -8555,12 +8541,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2240 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2240 i32.const 0 call $~lib/string/String#indexOf @@ -8577,12 +8563,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store offset=8 local.get $0 i32.const 2272 i32.store offset=16 - local.get $1 + local.get $3 i32.const 0 i32.const 2272 call $~lib/string/String#padStart @@ -8592,10 +8578,10 @@ i32.store global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $1 + local.tee $3 i32.store offset=4 local.get $0 - local.get $1 + local.get $3 call $~lib/string/String.__eq i32.eqz if @@ -8609,12 +8595,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store offset=8 local.get $0 i32.const 2272 i32.store offset=16 - local.get $1 + local.get $3 i32.const 15 i32.const 2272 call $~lib/string/String#padStart @@ -8624,10 +8610,10 @@ i32.store global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $1 + local.tee $3 i32.store offset=4 local.get $0 - local.get $1 + local.get $3 call $~lib/string/String.__eq i32.eqz if @@ -8821,12 +8807,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store offset=8 local.get $0 i32.const 2272 i32.store offset=16 - local.get $1 + local.get $3 i32.const 0 i32.const 2272 call $~lib/string/String#padEnd @@ -8836,10 +8822,10 @@ i32.store global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $1 + local.tee $3 i32.store offset=4 local.get $0 - local.get $1 + local.get $3 call $~lib/string/String.__eq i32.eqz if @@ -8853,12 +8839,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store offset=8 local.get $0 i32.const 2272 i32.store offset=16 - local.get $1 + local.get $3 i32.const 15 i32.const 2272 call $~lib/string/String#padEnd @@ -8868,10 +8854,10 @@ i32.store global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $1 + local.tee $3 i32.store offset=4 local.get $0 - local.get $1 + local.get $3 call $~lib/string/String.__eq i32.eqz if @@ -9122,15 +9108,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/string/str local.tee $0 + global.get $std/string/str + local.tee $3 i32.store - local.get $1 local.get $0 + local.get $3 i32.store offset=4 - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 0 call $~lib/string/String#indexOf if @@ -9144,12 +9130,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 1712 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1712 i32.const 0 call $~lib/string/String#indexOf @@ -9164,12 +9150,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2624 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2624 i32.const 0 call $~lib/string/String#indexOf @@ -9186,12 +9172,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2656 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2656 i32.const 0 call $~lib/string/String#indexOf @@ -9208,12 +9194,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2624 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2624 i32.const 2 call $~lib/string/String#indexOf @@ -9230,12 +9216,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2624 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2624 i32.const 3 call $~lib/string/String#indexOf @@ -9252,12 +9238,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2688 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2688 i32.const -1 call $~lib/string/String#indexOf @@ -9314,21 +9300,21 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 1712 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1712 i32.const 2147483647 call $~lib/string/String#lastIndexOf local.set $0 global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -9347,12 +9333,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2624 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2624 i32.const 2147483647 call $~lib/string/String#lastIndexOf @@ -9369,12 +9355,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2656 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2656 i32.const 2147483647 call $~lib/string/String#lastIndexOf @@ -9391,12 +9377,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2720 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2720 i32.const 2147483647 call $~lib/string/String#lastIndexOf @@ -9413,12 +9399,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2624 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2624 i32.const 2 call $~lib/string/String#lastIndexOf @@ -9435,12 +9421,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2624 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2624 i32.const 3 call $~lib/string/String#lastIndexOf @@ -9457,12 +9443,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2688 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2688 i32.const -1 call $~lib/string/String#lastIndexOf @@ -9479,12 +9465,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2752 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2752 i32.const 0 call $~lib/string/String#lastIndexOf @@ -9501,12 +9487,12 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/string/str - local.tee $1 + local.tee $3 i32.store local.get $0 i32.const 2176 i32.store offset=4 - local.get $1 + local.get $3 i32.const 2176 i32.const 0 call $~lib/string/String#lastIndexOf @@ -10258,14 +10244,14 @@ i32.const 3664 i32.const 0 call $~lib/util/string/strtol - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 3712 i32.store i32.const 3712 i32.const 16 call $~lib/util/string/strtol - local.get $4 + local.get $1 f64.ne if i32.const 0 @@ -10409,8 +10395,8 @@ i32.const 1712 i32.const 0 call $~lib/util/string/strtol - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -10426,8 +10412,8 @@ i32.const 4112 i32.const 0 call $~lib/util/string/strtol - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -10443,8 +10429,8 @@ i32.const 4144 i32.const 0 call $~lib/util/string/strtol - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -10460,8 +10446,8 @@ i32.const 2400 i32.const 37 call $~lib/util/string/strtol - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -10477,8 +10463,8 @@ i32.const 4176 i32.const 0 call $~lib/util/string/strtol - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -10494,8 +10480,8 @@ i32.const 4208 i32.const 0 call $~lib/util/string/strtol - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -10512,8 +10498,8 @@ i32.const 0 call $~lib/util/string/strtol f32.demote_f64 - local.tee $5 - local.get $5 + local.tee $2 + local.get $2 f32.eq if i32.const 0 @@ -10529,8 +10515,8 @@ i32.const 4208 i32.const 0 call $~lib/util/string/strtol - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -10858,8 +10844,8 @@ i32.store i32.const 1712 call $~lib/util/string/strtod - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11684,8 +11670,8 @@ i32.store i32.const 4144 call $~lib/util/string/strtod - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11700,8 +11686,8 @@ i32.store i32.const 4112 call $~lib/util/string/strtod - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11716,8 +11702,8 @@ i32.store i32.const 7056 call $~lib/util/string/strtod - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11732,8 +11718,8 @@ i32.store i32.const 7088 call $~lib/util/string/strtod - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11748,8 +11734,8 @@ i32.store i32.const 7120 call $~lib/util/string/strtod - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11764,8 +11750,8 @@ i32.store i32.const 7152 call $~lib/util/string/strtod - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11780,8 +11766,8 @@ i32.store i32.const 7184 call $~lib/util/string/strtod - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11796,8 +11782,8 @@ i32.store i32.const 7216 call $~lib/util/string/strtod - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11812,8 +11798,8 @@ i32.store i32.const 7248 call $~lib/util/string/strtod - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11828,8 +11814,8 @@ i32.store i32.const 7280 call $~lib/util/string/strtod - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11844,8 +11830,8 @@ i32.store i32.const 7312 call $~lib/util/string/strtod - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11860,8 +11846,8 @@ i32.store i32.const 7344 call $~lib/util/string/strtod - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11876,8 +11862,8 @@ i32.store i32.const 7376 call $~lib/util/string/strtod - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11892,8 +11878,8 @@ i32.store i32.const 7408 call $~lib/util/string/strtod - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11908,8 +11894,8 @@ i32.store i32.const 7440 call $~lib/util/string/strtod - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -11924,8 +11910,8 @@ i32.store i32.const 7472 call $~lib/util/string/strtod - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -12315,8 +12301,8 @@ i32.store i32.const 8688 call $~lib/util/string/strtod - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -12331,8 +12317,8 @@ i32.store i32.const 8720 call $~lib/util/string/strtod - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -12347,8 +12333,8 @@ i32.store i32.const 8768 call $~lib/util/string/strtod - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -12824,8 +12810,8 @@ i32.store i32.const 12880 call $~lib/util/string/strtod - local.tee $4 - local.get $4 + local.tee $1 + local.get $1 f64.eq if i32.const 0 @@ -13756,28 +13742,28 @@ global.get $~lib/memory/__stack_pointer i32.const 65377 call $~lib/string/String.fromCodePoint - local.tee $2 + local.tee $0 i32.store offset=36 global.get $~lib/memory/__stack_pointer i32.const 55296 call $~lib/string/String.fromCodePoint - local.set $0 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $4 i32.store i32.const 56322 call $~lib/string/String.fromCodePoint - local.set $1 + local.set $5 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $5 i32.store offset=4 - local.get $0 - local.get $1 + local.get $4 + local.get $5 call $~lib/string/String#concat - local.tee $0 + local.tee $3 i32.store offset=40 - local.get $2 local.get $0 + local.get $3 call $~lib/string/String.__gt i32.eqz if @@ -16035,10 +16021,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 1712 i32.store offset=4 local.get $0 @@ -16104,10 +16090,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 1712 i32.store offset=4 local.get $0 @@ -16149,10 +16135,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 15424 i32.store offset=4 local.get $0 @@ -16192,15 +16178,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $4 + local.get $3 i32.store - local.get $2 + local.get $4 i32.const 1808 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1808 call $~lib/string/String.__eq else @@ -16210,15 +16196,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $4 + local.get $3 i32.store - local.get $2 + local.get $4 i32.const 12944 i32.store offset=4 - local.get $1 + local.get $3 i32.const 12944 call $~lib/string/String.__eq else @@ -16230,10 +16216,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 14048 i32.store offset=4 local.get $0 @@ -16273,15 +16259,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $4 + local.get $3 i32.store - local.get $2 + local.get $4 i32.const 1808 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1808 call $~lib/string/String.__eq else @@ -16291,15 +16277,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $4 + local.get $3 i32.store - local.get $2 + local.get $4 i32.const 12944 i32.store offset=4 - local.get $1 + local.get $3 i32.const 12944 call $~lib/string/String.__eq else @@ -16311,10 +16297,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 14048 i32.store offset=4 local.get $0 @@ -16354,15 +16340,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $4 + local.get $3 i32.store - local.get $2 + local.get $4 i32.const 1808 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1808 call $~lib/string/String.__eq else @@ -16372,15 +16358,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $4 + local.get $3 i32.store - local.get $2 + local.get $4 i32.const 12944 i32.store offset=4 - local.get $1 + local.get $3 i32.const 12944 call $~lib/string/String.__eq else @@ -16390,15 +16376,15 @@ local.get $0 i32.const 2 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $4 + local.get $3 i32.store - local.get $2 + local.get $4 i32.const 1712 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1712 call $~lib/string/String.__eq else @@ -16410,10 +16396,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 14048 i32.store offset=4 local.get $0 @@ -16453,15 +16439,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $4 + local.get $3 i32.store - local.get $2 + local.get $4 i32.const 1712 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1712 call $~lib/string/String.__eq else @@ -16471,15 +16457,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $4 + local.get $3 i32.store - local.get $2 + local.get $4 i32.const 1808 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1808 call $~lib/string/String.__eq else @@ -16489,15 +16475,15 @@ local.get $0 i32.const 2 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $4 + local.get $3 i32.store - local.get $2 + local.get $4 i32.const 12944 i32.store offset=4 - local.get $1 + local.get $3 i32.const 12944 call $~lib/string/String.__eq else @@ -16509,10 +16495,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 14048 i32.store offset=4 local.get $0 @@ -16552,15 +16538,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $4 + local.get $3 i32.store - local.get $2 + local.get $4 i32.const 1808 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1808 call $~lib/string/String.__eq else @@ -16570,15 +16556,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $4 + local.get $3 i32.store - local.get $2 + local.get $4 i32.const 12944 i32.store offset=4 - local.get $1 + local.get $3 i32.const 12944 call $~lib/string/String.__eq else @@ -16588,15 +16574,15 @@ local.get $0 i32.const 2 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $4 + local.get $3 i32.store - local.get $2 + local.get $4 i32.const 14048 i32.store offset=4 - local.get $1 + local.get $3 i32.const 14048 call $~lib/string/String.__eq else @@ -16608,10 +16594,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 1712 i32.store offset=4 local.get $0 @@ -16651,15 +16637,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $4 + local.get $3 i32.store - local.get $2 + local.get $4 i32.const 1808 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1808 call $~lib/string/String.__eq else @@ -16669,15 +16655,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $4 + local.get $3 i32.store - local.get $2 + local.get $4 i32.const 12944 i32.store offset=4 - local.get $1 + local.get $3 i32.const 12944 call $~lib/string/String.__eq else @@ -16689,10 +16675,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 14048 i32.store offset=4 local.get $0 @@ -16758,10 +16744,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 1808 i32.store offset=4 local.get $0 @@ -16803,10 +16789,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 1808 i32.store offset=4 local.get $0 @@ -16846,15 +16832,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $4 + local.get $3 i32.store - local.get $2 + local.get $4 i32.const 1808 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1808 call $~lib/string/String.__eq else @@ -16864,15 +16850,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $4 + local.get $3 i32.store - local.get $2 + local.get $4 i32.const 12944 i32.store offset=4 - local.get $1 + local.get $3 i32.const 12944 call $~lib/string/String.__eq else @@ -16884,10 +16870,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 14048 i32.store offset=4 local.get $0 @@ -16927,15 +16913,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $4 + local.get $3 i32.store - local.get $2 + local.get $4 i32.const 1808 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1808 call $~lib/string/String.__eq else @@ -16945,15 +16931,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $4 + local.get $3 i32.store - local.get $2 + local.get $4 i32.const 12944 i32.store offset=4 - local.get $1 + local.get $3 i32.const 12944 call $~lib/string/String.__eq else @@ -16965,10 +16951,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 14048 i32.store offset=4 local.get $0 @@ -17008,15 +16994,15 @@ local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $4 + local.get $3 i32.store - local.get $2 + local.get $4 i32.const 1808 i32.store offset=4 - local.get $1 + local.get $3 i32.const 1808 call $~lib/string/String.__eq else @@ -17026,15 +17012,15 @@ local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $4 + local.get $3 i32.store - local.get $2 + local.get $4 i32.const 12944 i32.store offset=4 - local.get $1 + local.get $3 i32.const 12944 call $~lib/string/String.__eq else @@ -17046,10 +17032,10 @@ call $~lib/array/Array<~lib/string/String>#__get local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 14048 i32.store offset=4 local.get $0 @@ -17072,10 +17058,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3056 i32.store offset=4 local.get $0 @@ -17095,10 +17081,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3120 i32.store offset=4 local.get $0 @@ -17118,10 +17104,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17376 i32.store offset=4 local.get $0 @@ -17141,10 +17127,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17408 i32.store offset=4 local.get $0 @@ -17164,10 +17150,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 2400 i32.store offset=4 local.get $0 @@ -17187,10 +17173,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17440 i32.store offset=4 local.get $0 @@ -17210,10 +17196,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 13584 i32.store offset=4 local.get $0 @@ -17233,10 +17219,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17472 i32.store offset=4 local.get $0 @@ -17256,10 +17242,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17504 i32.store offset=4 local.get $0 @@ -17279,10 +17265,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17536 i32.store offset=4 local.get $0 @@ -17302,10 +17288,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17584 i32.store offset=4 local.get $0 @@ -17325,10 +17311,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17632 i32.store offset=4 local.get $0 @@ -17348,10 +17334,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17680 i32.store offset=4 local.get $0 @@ -17371,10 +17357,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17728 i32.store offset=4 local.get $0 @@ -17394,10 +17380,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17776 i32.store offset=4 local.get $0 @@ -17417,10 +17403,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17824 i32.store offset=4 local.get $0 @@ -17440,10 +17426,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17872 i32.store offset=4 local.get $0 @@ -17463,10 +17449,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3056 i32.store offset=4 local.get $0 @@ -17486,10 +17472,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17904 i32.store offset=4 local.get $0 @@ -17509,10 +17495,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17776 i32.store offset=4 local.get $0 @@ -17532,10 +17518,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17936 i32.store offset=4 local.get $0 @@ -17555,10 +17541,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17984 i32.store offset=4 local.get $0 @@ -17578,10 +17564,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3056 i32.store offset=4 local.get $0 @@ -17601,10 +17587,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3120 i32.store offset=4 local.get $0 @@ -17624,10 +17610,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17376 i32.store offset=4 local.get $0 @@ -17647,10 +17633,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 14048 i32.store offset=4 local.get $0 @@ -17670,10 +17656,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18032 i32.store offset=4 local.get $0 @@ -17693,10 +17679,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18064 i32.store offset=4 local.get $0 @@ -17716,10 +17702,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18096 i32.store offset=4 local.get $0 @@ -17739,10 +17725,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18128 i32.store offset=4 local.get $0 @@ -17762,10 +17748,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18160 i32.store offset=4 local.get $0 @@ -17785,10 +17771,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18192 i32.store offset=4 local.get $0 @@ -17808,10 +17794,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18224 i32.store offset=4 local.get $0 @@ -17831,10 +17817,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18256 i32.store offset=4 local.get $0 @@ -17854,10 +17840,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18304 i32.store offset=4 local.get $0 @@ -17877,10 +17863,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18352 i32.store offset=4 local.get $0 @@ -17900,10 +17886,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18400 i32.store offset=4 local.get $0 @@ -17923,10 +17909,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18448 i32.store offset=4 local.get $0 @@ -17946,10 +17932,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3056 i32.store offset=4 local.get $0 @@ -17969,10 +17955,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17440 i32.store offset=4 local.get $0 @@ -17992,10 +17978,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18352 i32.store offset=4 local.get $0 @@ -18015,10 +18001,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18496 i32.store offset=4 local.get $0 @@ -18038,10 +18024,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18544 i32.store offset=4 local.get $0 @@ -18061,10 +18047,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18592 i32.store offset=4 local.get $0 @@ -18084,10 +18070,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18592 i32.store offset=4 local.get $0 @@ -18107,10 +18093,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3056 i32.store offset=4 local.get $0 @@ -18130,10 +18116,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3120 i32.store offset=4 local.get $0 @@ -18153,10 +18139,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 13488 i32.store offset=4 local.get $0 @@ -18176,10 +18162,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18640 i32.store offset=4 local.get $0 @@ -18199,10 +18185,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18672 i32.store offset=4 local.get $0 @@ -18222,10 +18208,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18704 i32.store offset=4 local.get $0 @@ -18245,10 +18231,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18736 i32.store offset=4 local.get $0 @@ -18268,10 +18254,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18768 i32.store offset=4 local.get $0 @@ -18291,10 +18277,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18816 i32.store offset=4 local.get $0 @@ -18314,10 +18300,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18896 i32.store offset=4 local.get $0 @@ -18337,10 +18323,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18992 i32.store offset=4 local.get $0 @@ -18360,10 +18346,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19088 i32.store offset=4 local.get $0 @@ -18383,10 +18369,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19184 i32.store offset=4 local.get $0 @@ -18406,10 +18392,10 @@ call $~lib/util/number/itoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19280 i32.store offset=4 local.get $0 @@ -18429,10 +18415,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19328 i32.store offset=4 local.get $0 @@ -18452,10 +18438,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19392 i32.store offset=4 local.get $0 @@ -18475,10 +18461,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19456 i32.store offset=4 local.get $0 @@ -18498,10 +18484,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19504 i32.store offset=4 local.get $0 @@ -18521,10 +18507,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19552 i32.store offset=4 local.get $0 @@ -18544,10 +18530,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19600 i32.store offset=4 local.get $0 @@ -18567,10 +18553,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19648 i32.store offset=4 local.get $0 @@ -18590,10 +18576,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19696 i32.store offset=4 local.get $0 @@ -18613,10 +18599,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19744 i32.store offset=4 local.get $0 @@ -18636,10 +18622,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19792 i32.store offset=4 local.get $0 @@ -18659,10 +18645,10 @@ call $~lib/util/number/utoa32 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19840 i32.store offset=4 local.get $0 @@ -18682,10 +18668,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3056 i32.store offset=4 local.get $0 @@ -18705,10 +18691,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17408 i32.store offset=4 local.get $0 @@ -18728,10 +18714,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 2400 i32.store offset=4 local.get $0 @@ -18751,10 +18737,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 13584 i32.store offset=4 local.get $0 @@ -18774,10 +18760,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17472 i32.store offset=4 local.get $0 @@ -18797,10 +18783,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17504 i32.store offset=4 local.get $0 @@ -18820,10 +18806,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17584 i32.store offset=4 local.get $0 @@ -18843,10 +18829,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19888 i32.store offset=4 local.get $0 @@ -18866,10 +18852,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19936 i32.store offset=4 local.get $0 @@ -18889,10 +18875,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17984 i32.store offset=4 local.get $0 @@ -18912,10 +18898,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19984 i32.store offset=4 local.get $0 @@ -18935,10 +18921,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20032 i32.store offset=4 local.get $0 @@ -18958,10 +18944,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20080 i32.store offset=4 local.get $0 @@ -18981,10 +18967,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20128 i32.store offset=4 local.get $0 @@ -19004,10 +18990,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20176 i32.store offset=4 local.get $0 @@ -19027,10 +19013,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20224 i32.store offset=4 local.get $0 @@ -19050,10 +19036,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20288 i32.store offset=4 local.get $0 @@ -19073,10 +19059,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20352 i32.store offset=4 local.get $0 @@ -19096,10 +19082,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20416 i32.store offset=4 local.get $0 @@ -19119,10 +19105,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20480 i32.store offset=4 local.get $0 @@ -19142,10 +19128,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20544 i32.store offset=4 local.get $0 @@ -19165,10 +19151,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3056 i32.store offset=4 local.get $0 @@ -19188,10 +19174,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20608 i32.store offset=4 local.get $0 @@ -19211,10 +19197,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 17984 i32.store offset=4 local.get $0 @@ -19234,10 +19220,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19984 i32.store offset=4 local.get $0 @@ -19257,10 +19243,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20640 i32.store offset=4 local.get $0 @@ -19280,10 +19266,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20032 i32.store offset=4 local.get $0 @@ -19303,10 +19289,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20688 i32.store offset=4 local.get $0 @@ -19326,10 +19312,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20736 i32.store offset=4 local.get $0 @@ -19349,10 +19335,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20784 i32.store offset=4 local.get $0 @@ -19372,10 +19358,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20848 i32.store offset=4 local.get $0 @@ -19395,10 +19381,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20912 i32.store offset=4 local.get $0 @@ -19418,10 +19404,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 20976 i32.store offset=4 local.get $0 @@ -19441,10 +19427,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3056 i32.store offset=4 local.get $0 @@ -19464,10 +19450,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3120 i32.store offset=4 local.get $0 @@ -19487,10 +19473,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 14048 i32.store offset=4 local.get $0 @@ -19510,10 +19496,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18064 i32.store offset=4 local.get $0 @@ -19533,10 +19519,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18160 i32.store offset=4 local.get $0 @@ -19556,10 +19542,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21040 i32.store offset=4 local.get $0 @@ -19579,10 +19565,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21088 i32.store offset=4 local.get $0 @@ -19602,10 +19588,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21136 i32.store offset=4 local.get $0 @@ -19625,10 +19611,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21184 i32.store offset=4 local.get $0 @@ -19648,10 +19634,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21232 i32.store offset=4 local.get $0 @@ -19671,10 +19657,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21280 i32.store offset=4 local.get $0 @@ -19694,10 +19680,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21344 i32.store offset=4 local.get $0 @@ -19717,10 +19703,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21408 i32.store offset=4 local.get $0 @@ -19740,10 +19726,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21472 i32.store offset=4 local.get $0 @@ -19763,10 +19749,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21536 i32.store offset=4 local.get $0 @@ -19786,10 +19772,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21600 i32.store offset=4 local.get $0 @@ -19809,10 +19795,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21600 i32.store offset=4 local.get $0 @@ -19832,10 +19818,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3056 i32.store offset=4 local.get $0 @@ -19855,10 +19841,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 3120 i32.store offset=4 local.get $0 @@ -19878,10 +19864,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18640 i32.store offset=4 local.get $0 @@ -19901,10 +19887,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18672 i32.store offset=4 local.get $0 @@ -19924,10 +19910,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18736 i32.store offset=4 local.get $0 @@ -19947,10 +19933,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 18768 i32.store offset=4 local.get $0 @@ -19970,10 +19956,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 19184 i32.store offset=4 local.get $0 @@ -19993,10 +19979,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21664 i32.store offset=4 local.get $0 @@ -20016,10 +20002,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21792 i32.store offset=4 local.get $0 @@ -20039,10 +20025,10 @@ call $~lib/util/number/itoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 21952 i32.store offset=4 local.get $0 @@ -20062,10 +20048,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22048 i32.store offset=4 local.get $0 @@ -20085,10 +20071,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22160 i32.store offset=4 local.get $0 @@ -20108,10 +20094,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22256 i32.store offset=4 local.get $0 @@ -20131,10 +20117,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22336 i32.store offset=4 local.get $0 @@ -20154,10 +20140,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22400 i32.store offset=4 local.get $0 @@ -20177,10 +20163,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22464 i32.store offset=4 local.get $0 @@ -20200,10 +20186,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22528 i32.store offset=4 local.get $0 @@ -20223,10 +20209,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22592 i32.store offset=4 local.get $0 @@ -20246,10 +20232,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22656 i32.store offset=4 local.get $0 @@ -20269,10 +20255,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22704 i32.store offset=4 local.get $0 @@ -20292,10 +20278,10 @@ call $~lib/util/number/utoa64 local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22752 i32.store offset=4 local.get $0 @@ -20314,10 +20300,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22800 i32.store offset=4 local.get $0 @@ -20336,10 +20322,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22800 i32.store offset=4 local.get $0 @@ -20358,10 +20344,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 7248 i32.store offset=4 local.get $0 @@ -20380,10 +20366,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22832 i32.store offset=4 local.get $0 @@ -20402,10 +20388,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 8544 i32.store offset=4 local.get $0 @@ -20424,10 +20410,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 7760 i32.store offset=4 local.get $0 @@ -20446,10 +20432,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 23856 i32.store offset=4 local.get $0 @@ -20468,10 +20454,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 7824 i32.store offset=4 local.get $0 @@ -20490,10 +20476,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 23920 i32.store offset=4 local.get $0 @@ -20512,10 +20498,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24000 i32.store offset=4 local.get $0 @@ -20534,10 +20520,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24064 i32.store offset=4 local.get $0 @@ -20556,10 +20542,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24144 i32.store offset=4 local.get $0 @@ -20578,10 +20564,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24192 i32.store offset=4 local.get $0 @@ -20600,10 +20586,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24256 i32.store offset=4 local.get $0 @@ -20622,10 +20608,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24320 i32.store offset=4 local.get $0 @@ -20644,10 +20630,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 7904 i32.store offset=4 local.get $0 @@ -20666,10 +20652,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24384 i32.store offset=4 local.get $0 @@ -20688,10 +20674,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 4832 i32.store offset=4 local.get $0 @@ -20710,10 +20696,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24416 i32.store offset=4 local.get $0 @@ -20732,10 +20718,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24448 i32.store offset=4 local.get $0 @@ -20754,10 +20740,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24480 i32.store offset=4 local.get $0 @@ -20776,10 +20762,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24528 i32.store offset=4 local.get $0 @@ -20798,10 +20784,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24576 i32.store offset=4 local.get $0 @@ -20820,10 +20806,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24624 i32.store offset=4 local.get $0 @@ -20842,10 +20828,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24672 i32.store offset=4 local.get $0 @@ -20864,10 +20850,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24720 i32.store offset=4 local.get $0 @@ -20886,10 +20872,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 5120 i32.store offset=4 local.get $0 @@ -20908,10 +20894,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24752 i32.store offset=4 local.get $0 @@ -20930,10 +20916,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22832 i32.store offset=4 local.get $0 @@ -20952,10 +20938,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 8544 i32.store offset=4 local.get $0 @@ -20974,10 +20960,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24800 i32.store offset=4 local.get $0 @@ -20996,10 +20982,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24832 i32.store offset=4 local.get $0 @@ -21018,10 +21004,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24880 i32.store offset=4 local.get $0 @@ -21040,10 +21026,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24912 i32.store offset=4 local.get $0 @@ -21062,10 +21048,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 22800 i32.store offset=4 local.get $0 @@ -21084,10 +21070,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24960 i32.store offset=4 local.get $0 @@ -21106,10 +21092,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25008 i32.store offset=4 local.get $0 @@ -21128,10 +21114,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25072 i32.store offset=4 local.get $0 @@ -21150,10 +21136,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25136 i32.store offset=4 local.get $0 @@ -21172,10 +21158,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 24384 i32.store offset=4 local.get $0 @@ -21194,10 +21180,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25200 i32.store offset=4 local.get $0 @@ -21216,10 +21202,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25232 i32.store offset=4 local.get $0 @@ -21238,10 +21224,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25296 i32.store offset=4 local.get $0 @@ -21260,10 +21246,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25376 i32.store offset=4 local.get $0 @@ -21282,10 +21268,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25424 i32.store offset=4 local.get $0 @@ -21304,10 +21290,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25472 i32.store offset=4 local.get $0 @@ -21326,10 +21312,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25520 i32.store offset=4 local.get $0 @@ -21348,10 +21334,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25568 i32.store offset=4 local.get $0 @@ -21370,10 +21356,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25616 i32.store offset=4 local.get $0 @@ -21392,10 +21378,10 @@ call $~lib/util/number/dtoa local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 local.get $0 i32.store - local.get $1 + local.get $3 i32.const 25664 i32.store offset=4 local.get $0 @@ -21651,18 +21637,18 @@ local.get $1 i32.const 0 i32.gt_s - local.tee $3 + local.tee $2 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 local.get $0 i32.store16 - local.get $3 + local.get $2 if - local.get $2 + local.get $3 local.get $1 i32.store16 offset=2 end @@ -21670,7 +21656,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 ) (func $~lib/rt/__newArray (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -21699,9 +21685,9 @@ local.get $0 i32.const 2 i32.shl - local.tee $6 - local.set $4 - local.get $6 + local.tee $4 + local.set $6 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new local.set $3 @@ -21709,7 +21695,7 @@ if local.get $3 local.get $2 - local.get $4 + local.get $6 call $~lib/memory/memory.copy end local.get $5 @@ -21732,7 +21718,7 @@ local.get $3 i32.store offset=4 local.get $1 - local.get $6 + local.get $4 i32.store offset=8 local.get $1 local.get $0 @@ -21769,25 +21755,25 @@ local.get $2 local.get $0 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 i32.store local.get $0 i32.load offset=4 local.set $0 loop $for-loop|0 local.get $1 - local.get $3 + local.get $2 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $3 i32.add local.get $1 i32.const 2 @@ -21807,7 +21793,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 ) (func $~lib/string/String.fromCodePoint (param $0 i32) (result i32) (local $1 i32) @@ -21836,13 +21822,13 @@ local.get $0 i32.const 65535 i32.gt_u - local.tee $2 + local.tee $1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $2 + local.get $1 if local.get $0 i32.const 1114111 @@ -21855,7 +21841,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 local.get $0 i32.const 65536 i32.sub @@ -21874,7 +21860,7 @@ i32.or i32.store else - local.get $1 + local.get $2 local.get $0 i32.store16 end @@ -21882,7 +21868,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 ) (func $~lib/string/String#padStart (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -21926,11 +21912,11 @@ i32.shr_u i32.const 1 i32.shl - local.tee $5 + local.tee $4 local.get $1 i32.const 1 i32.shl - local.tee $4 + local.tee $1 i32.gt_u i32.or if @@ -21942,57 +21928,57 @@ return end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $6 i32.store local.get $3 + local.get $1 local.get $4 - local.get $5 i32.sub - local.tee $4 + local.tee $7 i32.lt_u if local.get $3 - local.get $4 + local.get $7 i32.const 2 i32.sub local.get $3 i32.div_u - local.tee $7 + local.tee $5 i32.mul - local.set $6 - local.get $1 + local.set $1 + local.get $6 local.get $2 local.get $3 - local.get $7 + local.get $5 call $~lib/memory/memory.repeat local.get $1 local.get $6 i32.add local.get $2 - local.get $4 - local.get $6 + local.get $7 + local.get $1 i32.sub call $~lib/memory/memory.copy else - local.get $1 + local.get $6 local.get $2 - local.get $4 + local.get $7 call $~lib/memory/memory.copy end - local.get $1 - local.get $4 + local.get $6 + local.get $7 i32.add local.get $0 - local.get $5 + local.get $4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $6 ) (func $~lib/string/String#padEnd (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -22039,7 +22025,7 @@ local.get $1 i32.const 1 i32.shl - local.tee $5 + local.tee $1 i32.gt_u i32.or if @@ -22051,60 +22037,60 @@ return end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $1 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $5 i32.store - local.get $1 + local.get $5 local.get $0 local.get $4 call $~lib/memory/memory.copy local.get $3 - local.get $5 + local.get $1 local.get $4 i32.sub - local.tee $0 + local.tee $1 i32.lt_u if local.get $3 - local.get $0 + local.get $1 i32.const 2 i32.sub local.get $3 i32.div_u - local.tee $6 + local.tee $0 i32.mul - local.set $5 - local.get $1 + local.set $6 local.get $4 + local.get $5 i32.add local.tee $4 local.get $2 local.get $3 - local.get $6 + local.get $0 call $~lib/memory/memory.repeat local.get $4 - local.get $5 + local.get $6 i32.add local.get $2 - local.get $0 - local.get $5 + local.get $1 + local.get $6 i32.sub call $~lib/memory/memory.copy else - local.get $1 local.get $4 + local.get $5 i32.add local.get $2 - local.get $0 + local.get $1 call $~lib/memory/memory.copy end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $5 ) (func $~lib/string/String#trimStart (param $0 i32) (result i32) (local $1 i32) @@ -22136,27 +22122,27 @@ i32.shr_u i32.const 1 i32.shl - local.set $3 + local.set $2 loop $while-continue|0 + local.get $1 local.get $2 - local.get $3 i32.lt_u if (result i32) block $__inlined_func$~lib/util/string/isSpace (result i32) local.get $0 - local.get $2 + local.get $1 i32.add i32.load16_u - local.tee $1 + local.tee $3 i32.const 5760 i32.lt_u if - local.get $1 + local.get $3 i32.const 128 i32.or i32.const 160 i32.eq - local.get $1 + local.get $3 i32.const 9 i32.sub i32.const 4 @@ -22165,7 +22151,7 @@ br $__inlined_func$~lib/util/string/isSpace end i32.const 1 - local.get $1 + local.get $3 i32.const -8192 i32.add i32.const 10 @@ -22174,31 +22160,31 @@ drop block $break|0 block $case6|0 - local.get $1 + local.get $3 i32.const 5760 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 8232 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 8233 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 8239 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 8287 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 12288 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 65279 i32.eq br_if $case6|0 @@ -22213,14 +22199,14 @@ i32.const 0 end if - local.get $2 + local.get $1 i32.const 2 i32.add - local.set $2 + local.set $1 br $while-continue|0 end end - local.get $2 + local.get $1 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -22230,10 +22216,10 @@ local.get $0 return end - local.get $3 local.get $2 + local.get $1 i32.sub - local.tee $1 + local.tee $2 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -22244,16 +22230,16 @@ return end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.const 1 call $~lib/rt/itcms/__new local.tee $3 i32.store local.get $3 local.get $0 - local.get $2 - i32.add local.get $1 + i32.add + local.get $2 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 @@ -22291,28 +22277,28 @@ i32.shr_u i32.const 1 i32.shl - local.tee $3 - local.set $2 + local.tee $2 + local.set $1 loop $while-continue|0 - local.get $2 + local.get $1 if (result i32) block $__inlined_func$~lib/util/string/isSpace (result i32) local.get $0 - local.get $2 + local.get $1 i32.add i32.const 2 i32.sub i32.load16_u - local.tee $1 + local.tee $3 i32.const 5760 i32.lt_u if - local.get $1 + local.get $3 i32.const 128 i32.or i32.const 160 i32.eq - local.get $1 + local.get $3 i32.const 9 i32.sub i32.const 4 @@ -22321,7 +22307,7 @@ br $__inlined_func$~lib/util/string/isSpace end i32.const 1 - local.get $1 + local.get $3 i32.const -8192 i32.add i32.const 10 @@ -22330,31 +22316,31 @@ drop block $break|0 block $case6|0 - local.get $1 + local.get $3 i32.const 5760 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 8232 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 8233 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 8239 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 8287 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 12288 i32.eq br_if $case6|0 - local.get $1 + local.get $3 i32.const 65279 i32.eq br_if $case6|0 @@ -22369,14 +22355,14 @@ i32.const 0 end if - local.get $2 + local.get $1 i32.const 2 i32.sub - local.set $2 + local.set $1 br $while-continue|0 end end - local.get $2 + local.get $1 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -22386,8 +22372,8 @@ i32.const 1712 return end + local.get $1 local.get $2 - local.get $3 i32.eq if global.get $~lib/memory/__stack_pointer @@ -22398,20 +22384,20 @@ return end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 - local.get $0 local.get $2 + local.get $0 + local.get $1 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 ) (func $~lib/string/String#trim (param $0 i32) (result i32) (local $1 i32) @@ -22442,7 +22428,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 i32.const 1 i32.shl local.set $1 @@ -22456,16 +22442,16 @@ i32.const 2 i32.sub i32.load16_u - local.tee $2 + local.tee $4 i32.const 5760 i32.lt_u if - local.get $2 + local.get $4 i32.const 128 i32.or i32.const 160 i32.eq - local.get $2 + local.get $4 i32.const 9 i32.sub i32.const 4 @@ -22474,7 +22460,7 @@ br $__inlined_func$~lib/util/string/isSpace end i32.const 1 - local.get $2 + local.get $4 i32.const -8192 i32.add i32.const 10 @@ -22483,31 +22469,31 @@ drop block $break|0 block $case6|0 - local.get $2 + local.get $4 i32.const 5760 i32.eq br_if $case6|0 - local.get $2 + local.get $4 i32.const 8232 i32.eq br_if $case6|0 - local.get $2 + local.get $4 i32.const 8233 i32.eq br_if $case6|0 - local.get $2 + local.get $4 i32.const 8239 i32.eq br_if $case6|0 - local.get $2 + local.get $4 i32.const 8287 i32.eq br_if $case6|0 - local.get $2 + local.get $4 i32.const 12288 i32.eq br_if $case6|0 - local.get $2 + local.get $4 i32.const 65279 i32.eq br_if $case6|0 @@ -22531,24 +22517,24 @@ end loop $while-continue|1 local.get $1 - local.get $3 + local.get $2 i32.gt_u if (result i32) block $__inlined_func$~lib/util/string/isSpace0 (result i32) local.get $0 - local.get $3 + local.get $2 i32.add i32.load16_u - local.tee $2 + local.tee $4 i32.const 5760 i32.lt_u if - local.get $2 + local.get $4 i32.const 128 i32.or i32.const 160 i32.eq - local.get $2 + local.get $4 i32.const 9 i32.sub i32.const 4 @@ -22557,7 +22543,7 @@ br $__inlined_func$~lib/util/string/isSpace0 end i32.const 1 - local.get $2 + local.get $4 i32.const -8192 i32.add i32.const 10 @@ -22566,31 +22552,31 @@ drop block $break|01 block $case6|02 - local.get $2 + local.get $4 i32.const 5760 i32.eq br_if $case6|02 - local.get $2 + local.get $4 i32.const 8232 i32.eq br_if $case6|02 - local.get $2 + local.get $4 i32.const 8233 i32.eq br_if $case6|02 - local.get $2 + local.get $4 i32.const 8239 i32.eq br_if $case6|02 - local.get $2 + local.get $4 i32.const 8287 i32.eq br_if $case6|02 - local.get $2 + local.get $4 i32.const 12288 i32.eq br_if $case6|02 - local.get $2 + local.get $4 i32.const 65279 i32.eq br_if $case6|02 @@ -22605,10 +22591,10 @@ i32.const 0 end if - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 local.get $1 i32.const 2 i32.sub @@ -22627,12 +22613,12 @@ return end i32.const 0 - local.get $4 + local.get $3 i32.const 1 i32.shl local.get $1 i32.eq - local.get $3 + local.get $2 select if global.get $~lib/memory/__stack_pointer @@ -22646,11 +22632,11 @@ local.get $1 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 i32.store - local.get $2 - local.get $0 local.get $3 + local.get $0 + local.get $2 i32.add local.get $1 call $~lib/memory/memory.copy @@ -22658,7 +22644,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 ) (func $~lib/string/String#concat (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -22690,7 +22676,7 @@ i32.shr_u i32.const 1 i32.shl - local.tee $3 + local.tee $2 local.get $1 i32.const 20 i32.sub @@ -22699,9 +22685,9 @@ i32.shr_u i32.const 1 i32.shl - local.tee $4 + local.tee $3 i32.add - local.tee $2 + local.tee $4 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -22712,26 +22698,26 @@ return end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $4 i32.store - local.get $2 + local.get $4 local.get $0 - local.get $3 + local.get $2 call $~lib/memory/memory.copy local.get $2 - local.get $3 + local.get $4 i32.add local.get $1 - local.get $4 + local.get $3 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $4 ) (func $~lib/string/String#repeat (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -22860,19 +22846,19 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.ge_u if local.get $3 local.get $4 - i32.ge_u + i32.le_u if local.get $2 local.get $0 @@ -22893,7 +22879,7 @@ local.get $1 i32.const 0 call $~lib/string/String#indexOf - local.tee $1 + local.tee $6 i32.const -1 i32.xor if @@ -22903,53 +22889,53 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $5 - local.get $3 + local.tee $1 local.get $4 + local.get $3 i32.sub - local.tee $6 + local.tee $4 i32.add - local.tee $3 + local.tee $5 if global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $5 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $7 i32.store - local.get $3 + local.get $7 local.get $0 - local.get $1 + local.get $6 i32.const 1 i32.shl - local.tee $7 + local.tee $5 call $~lib/memory/memory.copy - local.get $3 + local.get $5 local.get $7 i32.add local.get $2 - local.get $5 + local.get $1 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $1 - local.get $5 + local.get $6 i32.add i32.const 1 i32.shl - local.get $3 + local.get $7 i32.add - local.get $1 - local.get $4 + local.get $3 + local.get $6 i32.add i32.const 1 i32.shl local.get $0 i32.add + local.get $4 local.get $6 - local.get $1 i32.sub i32.const 1 i32.shl @@ -22958,7 +22944,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $7 return end end @@ -23003,18 +22989,18 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $9 + local.tee $7 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $5 i32.ge_u if - local.get $4 - local.get $9 + local.get $5 + local.get $7 i32.ge_u if local.get $2 @@ -23034,7 +23020,7 @@ i32.const 1 i32.shr_u local.set $3 - local.get $9 + local.get $7 i32.eqz if local.get $3 @@ -23042,19 +23028,19 @@ br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.get $3 - local.get $4 + local.get $5 i32.const 1 i32.add i32.mul - local.get $4 + local.get $5 i32.add i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $6 i32.store - local.get $5 + local.get $6 local.get $2 local.get $3 i32.const 1 @@ -23064,15 +23050,15 @@ local.set $1 loop $for-loop|0 local.get $4 - local.get $10 - i32.gt_u + local.get $5 + i32.lt_u if local.get $1 i32.const 1 i32.shl - local.get $5 + local.get $6 i32.add - local.get $10 + local.get $4 i32.const 1 i32.shl local.get $0 @@ -23085,7 +23071,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $5 + local.get $6 i32.add local.get $2 local.get $3 @@ -23096,10 +23082,10 @@ local.get $3 i32.add local.set $1 - local.get $10 + local.get $4 i32.const 1 i32.add - local.set $10 + local.set $4 br $for-loop|0 end end @@ -23107,49 +23093,49 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $6 return end local.get $3 - local.get $9 + local.get $7 i32.eq if global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 1 i32.shl - local.tee $5 + local.tee $4 i32.const 1 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $5 i32.store - local.get $4 - local.get $0 local.get $5 + local.get $0 + local.get $4 call $~lib/memory/memory.copy loop $while-continue|1 local.get $0 local.get $1 - local.get $7 + local.get $9 call $~lib/string/String#indexOf - local.tee $5 + local.tee $4 i32.const -1 i32.xor if - local.get $5 + local.get $4 i32.const 1 i32.shl - local.get $4 + local.get $5 i32.add local.get $2 local.get $3 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $5 - local.get $9 + local.get $4 + local.get $7 i32.add - local.set $7 + local.set $9 br $while-continue|1 end end @@ -23157,23 +23143,23 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $5 return end - local.get $4 - local.set $5 + local.get $5 + local.set $4 loop $while-continue|2 local.get $0 local.get $1 - local.get $7 + local.get $9 call $~lib/string/String#indexOf - local.tee $10 + local.tee $11 i32.const -1 i32.xor if - local.get $6 + local.get $10 if (result i32) - local.get $6 + local.get $10 i32.const 20 i32.sub i32.load offset=16 @@ -23185,58 +23171,58 @@ i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $10 i32.store offset=4 end - local.get $5 + local.get $4 local.get $3 local.get $8 - local.get $10 - local.get $7 + local.get $11 + local.get $9 i32.sub - local.tee $11 + local.tee $6 i32.add i32.add i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $6 - local.get $5 + local.get $10 + local.get $4 i32.const 1 i32.shl - local.tee $5 + local.tee $4 i32.const 1 i32.shl call $~lib/rt/itcms/__renew - local.tee $6 + local.tee $10 i32.store offset=4 end local.get $8 i32.const 1 i32.shl - local.get $6 + local.get $10 i32.add - local.get $7 + local.get $9 i32.const 1 i32.shl local.get $0 i32.add - local.get $11 + local.get $6 i32.const 1 i32.shl call $~lib/memory/memory.copy + local.get $6 local.get $8 - local.get $11 i32.add - local.tee $7 + local.tee $6 i32.const 1 i32.shl - local.get $6 + local.get $10 i32.add local.get $2 local.get $3 @@ -23244,37 +23230,37 @@ i32.shl call $~lib/memory/memory.copy local.get $3 - local.get $7 + local.get $6 i32.add local.set $8 - local.get $9 - local.get $10 + local.get $7 + local.get $11 i32.add - local.set $7 + local.set $9 br $while-continue|2 end end - local.get $6 + local.get $10 if - local.get $5 - local.get $8 local.get $4 - local.get $7 + local.get $8 + local.get $5 + local.get $9 i32.sub local.tee $1 i32.add i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $6 - local.get $5 + local.get $10 + local.get $4 i32.const 1 i32.shl - local.tee $5 + local.tee $4 i32.const 1 i32.shl call $~lib/rt/itcms/__renew - local.tee $6 + local.tee $10 i32.store offset=4 end local.get $1 @@ -23282,9 +23268,9 @@ local.get $8 i32.const 1 i32.shl - local.get $6 + local.get $10 i32.add - local.get $7 + local.get $9 i32.const 1 i32.shl local.get $0 @@ -23294,7 +23280,7 @@ i32.shl call $~lib/memory/memory.copy end - local.get $5 + local.get $4 local.get $1 local.get $8 i32.add @@ -23302,19 +23288,19 @@ i32.gt_u if global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $10 local.get $0 i32.const 1 i32.shl call $~lib/rt/itcms/__renew - local.tee $6 + local.tee $10 i32.store offset=4 end global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $10 return end global.get $~lib/memory/__stack_pointer @@ -23417,24 +23403,24 @@ local.get $2 i32.const 1 i32.shl - local.tee $3 + local.tee $2 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 local.get $1 i32.const 1 i32.shl local.get $0 i32.add - local.get $3 + local.get $2 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 ) (func $~lib/string/String#substr (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -23552,51 +23538,51 @@ i32.const 0 i32.gt_s select - local.tee $3 + local.tee $1 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $1 + local.tee $3 local.get $1 local.get $3 - i32.gt_s + i32.lt_s select - local.tee $3 + local.tee $4 local.get $2 i32.const 0 local.get $2 i32.const 0 i32.gt_s select - local.tee $2 - local.get $1 + local.tee $1 + local.get $3 local.get $1 - local.get $2 - i32.gt_s + local.get $3 + i32.lt_s select local.tee $2 local.get $2 - local.get $3 + local.get $4 i32.gt_s select i32.const 1 i32.shl - local.set $4 - local.get $3 + local.set $1 + local.get $4 local.get $2 local.get $2 - local.get $3 + local.get $4 i32.lt_s select i32.const 1 i32.shl - local.tee $3 - local.get $4 - i32.sub local.tee $2 + local.get $1 + i32.sub + local.tee $4 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -23607,12 +23593,12 @@ return end i32.const 0 - local.get $1 + local.get $3 i32.const 1 i32.shl - local.get $3 + local.get $2 i32.eq - local.get $4 + local.get $1 select if global.get $~lib/memory/__stack_pointer @@ -23623,22 +23609,22 @@ return end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 local.get $0 - local.get $4 + local.get $1 i32.add - local.get $2 + local.get $4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 ) (func $~lib/array/Array<~lib/string/String>#__get (param $0 i32) (param $1 i32) (result i32) global.get $~lib/memory/__stack_pointer @@ -23846,7 +23832,7 @@ i32.store local.get $2 i64.extend_i32_u - local.set $7 + local.set $3 loop $while-continue|0 local.get $1 i32.const 2 @@ -23860,7 +23846,7 @@ i32.shl local.get $0 i32.add - local.get $7 + local.get $3 i32.wrap_i64 i32.const 255 i32.and @@ -23870,10 +23856,10 @@ i32.add i32.load i32.store - local.get $7 + local.get $3 i64.const 8 i64.shr_u - local.set $7 + local.set $3 br $while-continue|0 end end @@ -23882,7 +23868,7 @@ i32.and if local.get $0 - local.get $7 + local.get $3 i32.wrap_i64 i32.const 6 i32.shl @@ -23896,15 +23882,15 @@ block $__inlined_func$~lib/util/number/ulog_base (result i32) local.get $2 i64.extend_i32_u - local.tee $4 - local.set $7 + local.tee $6 + local.set $3 local.get $1 i32.popcnt i32.const 1 i32.eq if i32.const 63 - local.get $7 + local.get $3 i64.clz i32.wrap_i64 i32.sub @@ -23919,23 +23905,23 @@ end local.get $1 i64.extend_i32_s - local.tee $3 - local.set $6 + local.tee $7 + local.set $4 i32.const 1 local.set $0 loop $while-continue|00 - local.get $6 - local.get $7 - i64.le_u + local.get $3 + local.get $4 + i64.ge_u if - local.get $7 - local.get $6 + local.get $3 + local.get $4 i64.div_u - local.set $7 - local.get $6 - local.get $6 + local.set $3 + local.get $4 + local.get $4 i64.mul - local.set $6 + local.set $4 local.get $0 i32.const 1 i32.shl @@ -23944,14 +23930,14 @@ end end loop $while-continue|1 - local.get $7 + local.get $3 i64.const 1 i64.ge_u if - local.get $7 local.get $3 + local.get $7 i64.div_u - local.set $7 + local.set $3 local.get $0 i32.const 1 i32.add @@ -23973,7 +23959,7 @@ local.tee $0 i32.store local.get $0 - local.get $4 + local.get $6 local.get $2 local.get $1 call $~lib/util/number/utoa64_any_core @@ -24268,8 +24254,8 @@ (local $2 i64) (local $3 i32) (local $4 i64) - (local $5 i32) - (local $6 i64) + (local $5 i64) + (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -24324,54 +24310,54 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.wrap_i64 - local.tee $5 local.tee $1 + local.tee $3 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $3 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $3 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $3 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $3 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $3 i32.const 100000000 i32.ge_u i32.add end end - local.tee $1 + local.tee $6 i32.const 1 i32.shl i32.const 1 @@ -24379,8 +24365,8 @@ local.tee $3 i32.store local.get $3 - local.get $5 local.get $1 + local.get $6 call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer @@ -24538,7 +24524,7 @@ end local.get $1 i64.extend_i32_s - local.tee $6 + local.tee $5 local.set $4 i32.const 1 local.set $3 @@ -24568,7 +24554,7 @@ i64.ge_u if local.get $2 - local.get $6 + local.get $5 i64.div_u local.set $2 local.get $3 @@ -24582,7 +24568,7 @@ i32.const 1 i32.sub end - local.tee $5 + local.tee $6 i32.const 1 i32.shl i32.const 1 @@ -24591,7 +24577,7 @@ i32.store local.get $3 local.get $0 - local.get $5 + local.get $6 local.get $1 call $~lib/util/number/utoa64_any_core end @@ -24607,8 +24593,8 @@ (local $3 i32) (local $4 i32) (local $5 i64) - (local $6 i32) - (local $7 i64) + (local $6 i64) + (local $7 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -24723,7 +24709,7 @@ end local.get $4 i32.add - local.tee $6 + local.tee $7 i32.const 1 i32.shl i32.const 1 @@ -24732,7 +24718,7 @@ i32.store local.get $1 local.get $3 - local.get $6 + local.get $7 call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer @@ -24895,7 +24881,7 @@ end local.get $3 i64.extend_i32_s - local.tee $7 + local.tee $6 local.set $5 i32.const 1 local.set $1 @@ -24925,7 +24911,7 @@ i64.ge_u if local.get $2 - local.get $7 + local.get $6 i64.div_u local.set $2 local.get $1 @@ -24941,7 +24927,7 @@ end local.get $4 i32.add - local.tee $6 + local.tee $7 i32.const 1 i32.shl i32.const 1 @@ -24950,7 +24936,7 @@ i32.store local.get $1 local.get $0 - local.get $6 + local.get $7 local.get $3 call $~lib/util/number/utoa64_any_core end @@ -25093,16 +25079,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $3 i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $3 local.get $1 local.get $2 select @@ -25111,7 +25097,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $0 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/symbol.optimized.wat b/tests/compiler/std/symbol.optimized.wat index c595263cb2..e5a0779f40 100644 --- a/tests/compiler/std/symbol.optimized.wat +++ b/tests/compiler/std/symbol.optimized.wat @@ -228,7 +228,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -251,7 +251,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -261,23 +261,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -285,7 +285,7 @@ else i32.const 2656 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1328 @@ -295,7 +295,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 2660 @@ -310,27 +310,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -418,19 +418,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -455,9 +455,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -465,17 +465,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -763,10 +763,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -778,15 +778,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -816,7 +816,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -852,12 +852,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -875,11 +875,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 19088 @@ -887,14 +887,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -904,17 +904,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1392,14 +1392,14 @@ i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $1 + i32.add + local.tee $2 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1409,17 +1409,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1435,22 +1435,22 @@ local.get $0 i32.const 0 i32.store offset=24 - local.get $1 + local.get $2 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 16 i32.sub i32.const 0 @@ -1461,11 +1461,11 @@ i32.and i32.const 24 i32.add - local.tee $1 + local.tee $2 i32.add local.set $0 - local.get $2 local.get $1 + local.get $2 i32.sub local.set $1 loop $while-continue|0 @@ -1570,7 +1570,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1596,32 +1596,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1637,16 +1637,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1654,7 +1654,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1662,8 +1662,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1680,7 +1680,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -1690,13 +1690,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1709,40 +1709,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -1768,26 +1768,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2090,14 +2090,14 @@ if local.get $2 i32.load16_u - local.tee $3 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $3 i32.ne if - local.get $3 local.get $4 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2652,115 +2652,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2792,43 +2782,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -3580,7 +3568,7 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $~lib/symbol/stringToId - local.tee $3 + local.tee $4 i32.store local.get $0 i32.const 4 @@ -3593,10 +3581,10 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $4 i32.const 1056 call $~lib/util/hash/HASH<~lib/string/String> - local.tee $8 + local.tee $5 call $~lib/map/Map<~lib/string/String,usize>#find local.tee $0 if @@ -3604,15 +3592,15 @@ local.get $1 i32.store offset=4 else - local.get $3 + local.get $4 i32.load offset=16 - local.get $3 + local.get $4 i32.load offset=12 i32.eq if - local.get $3 + local.get $4 i32.load offset=20 - local.get $3 + local.get $4 i32.load offset=12 i32.const 3 i32.mul @@ -3620,10 +3608,10 @@ i32.div_s i32.lt_s if (result i32) - local.get $3 + local.get $4 i32.load offset=4 else - local.get $3 + local.get $4 i32.load offset=4 i32.const 1 i32.shl @@ -3654,7 +3642,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -3662,59 +3650,59 @@ i32.shl i32.const 3 i32.div_s - local.tee $9 + local.tee $8 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $2 i32.store offset=4 - local.get $3 + local.get $4 i32.load offset=8 - local.tee $4 - local.get $3 + local.tee $3 + local.get $4 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $10 + local.set $9 local.get $2 local.set $0 loop $while-continue|0 - local.get $4 - local.get $10 + local.get $3 + local.get $9 i32.ne if - local.get $4 + local.get $3 i32.load offset=8 i32.const 1 i32.and i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.load - local.tee $7 + local.tee $10 i32.store offset=8 local.get $0 - local.get $7 + local.get $10 i32.store local.get $0 - local.get $4 + local.get $3 i32.load offset=4 i32.store offset=4 local.get $0 - local.get $7 + local.get $10 call $~lib/util/hash/HASH<~lib/string/String> local.get $6 i32.and i32.const 2 i32.shl - local.get $5 + local.get $7 i32.add - local.tee $7 + local.tee $10 i32.load i32.store offset=8 - local.get $7 + local.get $10 local.get $0 i32.store local.get $0 @@ -3722,41 +3710,41 @@ i32.add local.set $0 end - local.get $4 + local.get $3 i32.const 12 i32.add - local.set $4 + local.set $3 br $while-continue|0 end end - local.get $3 - local.get $5 + local.get $4 + local.get $7 i32.store - local.get $5 + local.get $7 if - local.get $3 - local.get $5 + local.get $4 + local.get $7 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 + local.get $4 local.get $6 i32.store offset=4 - local.get $3 + local.get $4 local.get $2 i32.store offset=8 local.get $2 if - local.get $3 + local.get $4 local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $9 + local.get $4 + local.get $8 i32.store offset=12 - local.get $3 - local.get $3 + local.get $4 + local.get $4 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -3765,12 +3753,12 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.load offset=8 local.tee $0 i32.store - local.get $3 - local.get $3 + local.get $4 + local.get $4 i32.load offset=16 local.tee $2 i32.const 1 @@ -3784,25 +3772,25 @@ local.tee $0 i32.const 1056 i32.store - local.get $3 + local.get $4 i32.const 1056 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link local.get $0 local.get $1 i32.store offset=4 - local.get $3 - local.get $3 + local.get $4 + local.get $4 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $3 + local.get $4 i32.load - local.get $3 + local.get $4 i32.load offset=4 - local.get $8 + local.get $5 i32.and i32.const 2 i32.shl @@ -3821,7 +3809,7 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $~lib/symbol/idToString - local.tee $3 + local.tee $4 i32.store local.get $0 i32.const 4 @@ -3834,10 +3822,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $4 i32.load local.get $1 - local.tee $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -3865,8 +3852,8 @@ i32.shr_u local.get $0 i32.xor - local.tee $7 - local.get $3 + local.tee $5 + local.get $4 i32.load offset=4 i32.and i32.const 2 @@ -3880,19 +3867,19 @@ if local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $1 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $1 + local.get $2 i32.const -2 i32.and local.set $0 @@ -3907,20 +3894,20 @@ local.get $0 i32.const 1056 i32.store offset=4 - local.get $3 + local.get $4 i32.const 1056 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link else - local.get $3 + local.get $4 i32.load offset=16 - local.get $3 + local.get $4 i32.load offset=12 i32.eq if - local.get $3 + local.get $4 i32.load offset=20 - local.get $3 + local.get $4 i32.load offset=12 i32.const 3 i32.mul @@ -3928,10 +3915,10 @@ i32.div_s i32.lt_s if (result i32) - local.get $3 + local.get $4 i32.load offset=4 else - local.get $3 + local.get $4 i32.load offset=4 i32.const 1 i32.shl @@ -3959,7 +3946,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -3971,37 +3958,37 @@ i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $3 + local.get $4 i32.load offset=8 - local.tee $4 - local.get $3 + local.tee $3 + local.get $4 i32.load offset=16 i32.const 12 i32.mul i32.add local.set $9 - local.get $1 + local.get $2 local.set $0 loop $while-continue|01 - local.get $4 + local.get $3 local.get $9 i32.ne if - local.get $4 + local.get $3 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $4 + local.get $3 i32.load local.tee $10 i32.store local.get $0 - local.get $4 + local.get $3 i32.load offset=4 i32.store offset=4 local.get $0 @@ -4037,7 +4024,7 @@ i32.and i32.const 2 i32.shl - local.get $5 + local.get $7 i32.add local.tee $10 i32.load @@ -4050,41 +4037,41 @@ i32.add local.set $0 end - local.get $4 + local.get $3 i32.const 12 i32.add - local.set $4 + local.set $3 br $while-continue|01 end end - local.get $3 - local.get $5 + local.get $4 + local.get $7 i32.store - local.get $5 + local.get $7 if - local.get $3 - local.get $5 + local.get $4 + local.get $7 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 + local.get $4 local.get $6 i32.store offset=4 - local.get $3 - local.get $1 + local.get $4 + local.get $2 i32.store offset=8 - local.get $1 + local.get $2 if - local.get $3 - local.get $1 + local.get $4 + local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 + local.get $4 local.get $8 i32.store offset=12 - local.get $3 - local.get $3 + local.get $4 + local.get $4 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -4093,52 +4080,52 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.load offset=8 local.tee $0 i32.store - local.get $3 - local.get $3 + local.get $4 + local.get $4 i32.load offset=16 - local.tee $1 + local.tee $2 i32.const 1 i32.add i32.store offset=16 - local.get $1 + local.get $2 i32.const 12 i32.mul local.get $0 i32.add local.tee $0 - local.get $2 + local.get $1 i32.store local.get $0 i32.const 1056 i32.store offset=4 - local.get $3 + local.get $4 i32.const 1056 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $3 - local.get $3 + local.get $4 + local.get $4 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $3 + local.get $4 i32.load - local.get $3 + local.get $4 i32.load offset=4 - local.get $7 + local.get $5 i32.and i32.const 2 i32.shl i32.add - local.tee $1 + local.tee $2 i32.load i32.store offset=8 - local.get $1 + local.get $2 local.get $0 i32.store end @@ -4150,7 +4137,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 return end i32.const 19104 @@ -4293,15 +4280,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i64.const 0 i64.store offset=8 i32.const 1824 - local.set $1 - local.get $2 + local.set $2 + local.get $1 i32.const 1824 i32.store block $break|0 @@ -4323,77 +4310,77 @@ br_table $case0|0 $case1|0 $case2|0 $case3|0 $case4|0 $case5|0 $case6|0 $case7|0 $case8|0 $case9|0 $case10|0 $case11|0 end i32.const 1856 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 1856 i32.store br $break|0 end i32.const 1904 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 1904 i32.store br $break|0 end i32.const 1968 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 1968 i32.store br $break|0 end i32.const 2016 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 2016 i32.store br $break|0 end i32.const 2048 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 2048 i32.store br $break|0 end i32.const 2096 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 2096 i32.store br $break|0 end i32.const 2128 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 2128 i32.store br $break|0 end i32.const 2176 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 2176 i32.store br $break|0 end i32.const 2208 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 2208 i32.store br $break|0 end i32.const 2256 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 2256 i32.store br $break|0 end i32.const 2304 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 2304 i32.store @@ -4403,11 +4390,11 @@ if (result i32) global.get $~lib/memory/__stack_pointer global.get $~lib/symbol/idToString - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $2 + local.get $1 i32.load - local.get $2 + local.get $1 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -4418,36 +4405,36 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $1 i32.const 15 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $1 i32.const 13 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $1 i32.const 16 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $1 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $2 + local.get $1 if - local.get $2 + local.get $1 i32.load offset=8 local.tee $3 i32.const 1 @@ -4456,7 +4443,7 @@ i32.const 0 else local.get $0 - local.get $2 + local.get $1 i32.load i32.eq end @@ -4464,14 +4451,14 @@ local.get $3 i32.const -2 i32.and - local.set $2 + local.set $1 br $while-continue|0 end end i32.const 0 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 else i32.const 0 end @@ -4485,7 +4472,7 @@ local.get $2 local.get $0 call $~lib/map/Map#get - local.tee $1 + local.tee $2 i32.store end end @@ -4493,7 +4480,7 @@ i32.const 2352 i32.store offset=12 i32.const 2352 - local.get $1 + local.get $2 call $~lib/string/String.__concat local.set $0 global.get $~lib/memory/__stack_pointer @@ -4923,16 +4910,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $3 i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $3 local.get $1 local.get $2 select @@ -4941,7 +4928,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $0 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/typedarray.optimized.wat b/tests/compiler/std/typedarray.optimized.wat index d4139325ec..9b5b0965d0 100644 --- a/tests/compiler/std/typedarray.optimized.wat +++ b/tests/compiler/std/typedarray.optimized.wat @@ -770,7 +770,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -793,7 +793,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -803,23 +803,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -827,7 +827,7 @@ else i32.const 16000 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1360 @@ -837,7 +837,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 16004 @@ -852,27 +852,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -960,19 +960,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -997,9 +997,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -1007,17 +1007,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -1305,10 +1305,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -1320,15 +1320,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -1358,7 +1358,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -1394,12 +1394,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -1417,11 +1417,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 33024 @@ -1429,14 +1429,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -1446,17 +1446,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1542,7 +1542,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $1 + local.set $2 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -1559,11 +1559,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -1605,9 +1605,9 @@ if local.get $0 i32.load - local.tee $2 + local.tee $1 if - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -1631,11 +1631,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.ne if local.get $0 - local.get $1 + local.get $2 local.get $0 i32.load offset=4 i32.const -4 @@ -1661,7 +1661,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $1 + local.get $2 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -1881,7 +1881,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $1 local.get $0 i32.const 1073741820 i32.gt_u @@ -1907,34 +1907,34 @@ i32.const 4 i32.sub end - local.tee $0 + local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if memory.size - local.tee $1 - local.get $0 + local.tee $0 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $0 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $0 + local.get $3 i32.add else - local.get $0 + local.get $3 end i32.const 4 - local.get $2 - i32.load offset=1568 local.get $1 + i32.load offset=1568 + local.get $0 i32.const 16 i32.shl i32.const 4 @@ -1948,16 +1948,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 - local.get $1 - local.get $3 + local.tee $2 + local.get $0 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1965,18 +1965,18 @@ unreachable end end - local.get $2 local.get $1 + local.get $0 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 - local.get $0 + local.get $1 + local.get $3 call $~lib/rt/tlsf/searchBlock - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1987,11 +1987,11 @@ unreachable end end - local.get $1 + local.get $0 i32.load i32.const -4 i32.and - local.get $0 + local.get $3 i32.lt_u if i32.const 0 @@ -2001,13 +2001,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $0 call $~lib/rt/tlsf/removeBlock - local.get $1 - i32.load - local.set $3 local.get $0 + i32.load + local.set $4 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -2020,65 +2020,65 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.const -4 i32.and - local.get $0 + local.get $3 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.const 2 i32.and - local.get $0 + local.get $3 i32.or i32.store + local.get $3 local.get $0 - local.get $1 i32.const 4 i32.add i32.add - local.tee $0 - local.get $4 + local.tee $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 - local.get $0 - call $~lib/rt/tlsf/insertBlock - else local.get $1 local.get $3 + call $~lib/rt/tlsf/insertBlock + else + local.get $0 + local.get $4 i32.const -2 i32.and i32.store - local.get $1 + local.get $0 i32.const 4 i32.add - local.get $1 + local.get $0 i32.load i32.const -4 i32.and i32.add - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.load i32.const -3 i32.and i32.store end - local.get $1 + local.get $0 i32.const 4 i32.add ) (func $~lib/memory/memory.fill (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i64) + (local $3 i64) + (local $4 i32) (local $5 i32) block $~lib/util/memory/memset|inlined.0 local.get $2 @@ -2090,7 +2090,7 @@ local.get $0 local.get $2 i32.add - local.tee $3 + local.tee $4 i32.const 1 i32.sub local.get $1 @@ -2105,12 +2105,12 @@ local.get $0 local.get $1 i32.store8 offset=2 - local.get $3 + local.get $4 i32.const 2 i32.sub local.get $1 i32.store8 - local.get $3 + local.get $4 i32.const 3 i32.sub local.get $1 @@ -2122,7 +2122,7 @@ local.get $0 local.get $1 i32.store8 offset=3 - local.get $3 + local.get $4 i32.const 4 i32.sub local.get $1 @@ -2137,19 +2137,19 @@ i32.sub i32.const 3 i32.and - local.tee $5 + local.tee $4 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 255 i32.and i32.const 16843009 i32.mul - local.tee $0 + local.tee $5 i32.store - local.get $3 + local.get $0 local.get $2 - local.get $5 + local.get $4 i32.sub i32.const -4 i32.and @@ -2158,101 +2158,101 @@ local.tee $1 i32.const 4 i32.sub - local.get $0 + local.get $5 i32.store local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $3 local.get $0 + local.get $5 i32.store offset=4 - local.get $3 local.get $0 + local.get $5 i32.store offset=8 local.get $1 i32.const 12 i32.sub - local.get $0 + local.get $5 i32.store local.get $1 i32.const 8 i32.sub - local.get $0 + local.get $5 i32.store local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $3 local.get $0 + local.get $5 i32.store offset=12 - local.get $3 local.get $0 + local.get $5 i32.store offset=16 - local.get $3 local.get $0 + local.get $5 i32.store offset=20 - local.get $3 local.get $0 + local.get $5 i32.store offset=24 local.get $1 i32.const 28 i32.sub - local.get $0 + local.get $5 i32.store local.get $1 i32.const 24 i32.sub - local.get $0 + local.get $5 i32.store local.get $1 i32.const 20 i32.sub - local.get $0 + local.get $5 i32.store local.get $1 i32.const 16 i32.sub - local.get $0 + local.get $5 i32.store - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.const 4 i32.and i32.const 24 i32.add - local.tee $5 + local.tee $4 i32.add local.set $1 local.get $2 - local.get $5 + local.get $4 i32.sub local.set $2 - local.get $0 + local.get $5 i64.extend_i32_u - local.tee $4 + local.tee $3 i64.const 32 i64.shl - local.get $4 + local.get $3 i64.or - local.set $4 + local.set $3 loop $while-continue|0 local.get $2 i32.const 32 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i64.store local.get $1 - local.get $4 + local.get $3 i64.store offset=8 local.get $1 - local.get $4 + local.get $3 i64.store offset=16 local.get $1 - local.get $4 + local.get $3 i64.store offset=24 local.get $2 i32.const 32 @@ -2339,26 +2339,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -3418,13 +3418,13 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) + (local $9 f64) (local $10 f64) - (local $11 f64) + (local $11 i64) (local $12 i32) (local $13 i32) (local $14 i32) - (local $15 i64) + (local $15 i32) local.get $1 i32.const 48 i32.le_s @@ -3452,14 +3452,14 @@ local.set $10 local.get $0 f64.load offset=8 - local.set $11 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $9 local.get $10 local.get $10 - local.get $11 + local.get $9 local.get $2 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -3469,20 +3469,20 @@ select f64.store local.get $10 - local.get $11 + local.get $9 local.get $1 select local.set $10 local.get $0 f64.load offset=16 - local.set $11 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $9 local.get $10 local.get $10 - local.get $11 + local.get $9 local.get $2 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -3493,7 +3493,7 @@ f64.store offset=8 local.get $0 local.get $10 - local.get $11 + local.get $9 local.get $1 select f64.store offset=16 @@ -3503,14 +3503,14 @@ local.set $10 local.get $0 f64.load offset=8 - local.set $11 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $9 local.get $10 local.get $10 - local.get $11 + local.get $9 local.get $2 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -3521,7 +3521,7 @@ f64.store local.get $0 local.get $10 - local.get $11 + local.get $9 local.get $1 select f64.store offset=8 @@ -3548,28 +3548,28 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $9 + local.tee $14 local.get $5 i32.add - local.set $12 + local.set $13 i32.const 0 - local.set $5 + local.set $7 loop $for-loop|1 - local.get $5 local.get $6 - i32.lt_u + local.get $7 + i32.gt_u if - local.get $5 + local.get $7 i32.const 2 i32.shl - local.get $9 + local.get $14 i32.add i32.const -1 i32.store - local.get $5 + local.get $7 i32.const 1 i32.add - local.set $5 + local.set $7 br $for-loop|1 end end @@ -3577,117 +3577,117 @@ i32.const 3 i32.shl call $~lib/rt/tlsf/__alloc - local.set $13 + local.set $12 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $8 + local.tee $15 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $1 + local.tee $6 i32.const 1 i32.add - local.tee $5 + local.tee $1 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $8 + local.get $15 i32.const 31 - local.get $8 + local.get $15 i32.const 31 i32.lt_s select - local.tee $1 - local.get $5 + local.tee $6 + local.get $1 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $1 - local.get $8 + local.get $6 + local.get $15 i32.lt_s if local.get $0 - local.get $1 + local.get $6 i32.const 1 i32.add - local.tee $6 - local.get $8 + local.tee $5 + local.get $15 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $5 - local.get $6 + local.tee $7 + local.get $5 i32.sub i32.const 1 i32.add - local.tee $7 + local.tee $8 i32.const 32 i32.lt_s if local.get $0 - local.get $6 - local.get $8 - local.get $6 + local.get $5 + local.get $15 + local.get $5 i32.const 31 i32.add - local.tee $5 - local.get $5 - local.get $8 + local.tee $1 + local.get $1 + local.get $15 i32.gt_s select - local.tee $5 - local.get $7 + local.tee $7 + local.get $8 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $6 + local.get $5 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $15 i32.const 1 i32.add i64.extend_i32_u - local.tee $15 + local.tee $11 i64.div_u local.get $5 - local.get $6 + local.get $7 i32.add i32.const 1 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $15 + local.get $11 i64.div_u i64.xor i32.wrap_i64 i32.clz - local.set $7 + local.set $1 loop $for-loop|3 + local.get $1 local.get $4 - local.get $7 - i32.gt_u + i32.lt_u if local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $14 i32.add i32.load - local.tee $14 + local.tee $8 i32.const -1 i32.ne if local.get $0 - local.get $14 - local.get $12 + local.get $8 + local.get $13 local.get $4 i32.const 2 i32.shl @@ -3696,16 +3696,16 @@ i32.load i32.const 1 i32.add - local.get $1 - local.get $13 + local.get $6 + local.get $12 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $9 + local.get $14 i32.add i32.const -1 i32.store - local.get $14 + local.get $8 local.set $3 end local.get $4 @@ -3715,8 +3715,8 @@ br $for-loop|3 end end - local.get $9 - local.get $7 + local.get $14 + local.get $1 i32.const 2 i32.shl local.tee $4 @@ -3724,15 +3724,15 @@ local.get $3 i32.store local.get $4 - local.get $12 + local.get $13 i32.add - local.get $1 - i32.store local.get $6 - local.set $3 + i32.store local.get $5 - local.set $1 + local.set $3 local.get $7 + local.set $6 + local.get $1 local.set $4 br $while-continue|2 end @@ -3743,7 +3743,7 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $14 i32.add i32.load local.tee $1 @@ -3755,13 +3755,13 @@ local.get $4 i32.const 2 i32.shl - local.get $12 + local.get $13 i32.add i32.load i32.const 1 i32.add - local.get $8 - local.get $13 + local.get $15 + local.get $12 local.get $2 call $~lib/util/sort/mergeRuns end @@ -3772,9 +3772,9 @@ br $for-loop|4 end end - local.get $13 + local.get $12 call $~lib/rt/tlsf/__free - local.get $9 + local.get $14 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 f64) (param $1 f64) (result i32) @@ -4419,115 +4419,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -4559,43 +4549,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -5830,7 +5818,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $2 + local.tee $3 i32.load i32.const -4 i32.and @@ -5839,20 +5827,20 @@ local.get $1 i32.ge_u if - local.get $2 + local.get $3 local.get $1 i32.store offset=16 local.get $0 return end local.get $1 - local.get $2 + local.get $3 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.load offset=16 local.tee $0 local.get $0 @@ -5860,7 +5848,7 @@ i32.gt_u select call $~lib/memory/memory.copy - local.get $3 + local.get $2 ) (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint8Array,u8>~anonymous|0 (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 @@ -6154,28 +6142,28 @@ i32.const 8 i32.shl i32.clz - local.tee $4 + local.tee $2 i32.sub - local.set $2 + local.set $4 local.get $1 - local.get $4 + local.get $2 i32.shl local.set $1 - local.get $2 + local.get $4 i32.const 0 i32.gt_s if (result i32) local.get $1 i32.const 8388608 i32.sub - local.get $2 + local.get $4 i32.const 23 i32.shl i32.or else local.get $1 i32.const 1 - local.get $2 + local.get $4 i32.sub i32.shr_u end @@ -6199,7 +6187,7 @@ i64.shr_u i64.const 2047 i64.and - local.tee $6 + local.tee $5 i64.const 2047 i64.eq if @@ -6229,19 +6217,19 @@ local.get $4 i64.const 63 i64.shr_u - local.set $5 - local.get $6 + local.set $6 + local.get $5 i64.eqz if (result i64) local.get $4 i64.const 1 - local.get $6 + local.get $5 local.get $4 i64.const 12 i64.shl i64.clz i64.sub - local.tee $6 + local.tee $5 i64.sub i64.shl else @@ -6253,7 +6241,7 @@ end local.set $3 loop $while-continue|0 - local.get $6 + local.get $5 i64.const 1024 i64.gt_s if @@ -6278,14 +6266,14 @@ i64.const 1 i64.shl local.set $3 - local.get $6 + local.get $5 i64.const 1 i64.sub - local.set $6 + local.set $5 br $while-continue|0 end end - local.get $6 + local.get $5 local.get $3 i64.const 4503599627370496 i64.ge_u @@ -6307,32 +6295,32 @@ i64.const 11 i64.shl i64.clz - local.tee $4 + local.tee $5 i64.sub - local.set $6 + local.set $4 local.get $3 - local.get $4 + local.get $5 i64.shl local.set $3 - local.get $6 + local.get $4 i64.const 0 i64.gt_s if (result i64) local.get $3 i64.const 4503599627370496 i64.sub - local.get $6 + local.get $4 i64.const 52 i64.shl i64.or else local.get $3 i64.const 1 - local.get $6 + local.get $4 i64.sub i64.shr_u end - local.get $5 + local.get $6 i64.const 63 i64.shl i64.or @@ -6344,9 +6332,9 @@ (func $~lib/typedarray/Int8Array#reverse (param $0 i32) (result i32) (local $1 i32) (local $2 i32) - (local $3 i32) + (local $3 i64) (local $4 i32) - (local $5 i64) + (local $5 i32) (local $6 i32) (local $7 i32) (local $8 i64) @@ -6355,15 +6343,15 @@ local.set $2 local.get $0 i32.load offset=8 - local.tee $3 + local.tee $5 i32.const 1 i32.gt_u if - local.get $3 + local.get $5 i32.const 1 i32.shr_u local.set $4 - local.get $3 + local.get $5 i32.const 8 i32.sub local.set $6 @@ -6379,18 +6367,18 @@ i32.add local.tee $7 i64.load - local.tee $5 + local.tee $3 i64.const 8 i64.shr_u i64.const 71777214294589695 i64.and - local.get $5 + local.get $3 i64.const 71777214294589695 i64.and i64.const 8 i64.shl i64.or - local.set $5 + local.set $3 local.get $7 local.get $2 local.get $6 @@ -6425,12 +6413,12 @@ i64.rotr i64.store local.get $7 - local.get $5 + local.get $3 i64.const 16 i64.shr_u i64.const 281470681808895 i64.and - local.get $5 + local.get $3 i64.const 281470681808895 i64.and i64.const 16 @@ -6446,10 +6434,10 @@ br $while-continue|0 end end - local.get $3 + local.get $5 i32.const 1 i32.sub - local.set $3 + local.set $5 loop $while-continue|1 local.get $1 local.get $4 @@ -6462,7 +6450,7 @@ i32.load8_u local.set $7 local.get $6 - local.get $3 + local.get $5 local.get $1 i32.sub local.get $2 @@ -6498,50 +6486,50 @@ i32.load offset=8 i32.const 1 i32.shr_u - local.tee $3 + local.tee $5 i32.const 1 i32.gt_u if - local.get $3 + local.get $5 i32.const 1 i32.shr_u - local.set $4 - local.get $3 + local.set $3 + local.get $5 i32.const 2 i32.sub - local.set $5 + local.set $6 loop $while-continue|0 - local.get $4 + local.get $3 local.get $1 i32.const 1 i32.add i32.gt_u if - local.get $5 + local.get $6 local.get $1 i32.sub i32.const 1 i32.shl local.get $2 i32.add - local.tee $6 + local.tee $7 i32.load i32.const 16 i32.rotr - local.set $7 - local.get $6 + local.set $4 + local.get $7 local.get $1 i32.const 1 i32.shl local.get $2 i32.add - local.tee $6 + local.tee $7 i32.load i32.const 16 i32.rotr i32.store - local.get $6 local.get $7 + local.get $4 i32.store local.get $1 i32.const 2 @@ -6550,13 +6538,13 @@ br $while-continue|0 end end - local.get $3 + local.get $5 i32.const 1 i32.sub - local.set $3 + local.set $4 loop $while-continue|1 local.get $1 - local.get $4 + local.get $3 i32.lt_u if local.get $1 @@ -6568,7 +6556,7 @@ i32.load16_u local.set $6 local.get $5 - local.get $3 + local.get $4 local.get $1 i32.sub i32.const 1 @@ -24125,58 +24113,58 @@ end local.get $1 i32.extend8_s - local.tee $3 local.tee $1 + local.tee $3 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $3 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $3 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $3 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $3 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $3 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $3 local.get $0 - local.get $3 local.get $1 local.get $2 + local.get $3 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut @@ -24429,14 +24417,14 @@ if local.get $2 i32.load16_u - local.tee $3 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $3 i32.ne if - local.get $3 local.get $4 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -24476,59 +24464,59 @@ local.get $1 i32.const 255 i32.and - local.tee $2 local.tee $1 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $2 local.get $0 - local.get $2 local.get $1 + local.get $2 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $2 ) (func $~lib/typedarray/Uint8Array#join (param $0 i32) (result i32) (local $1 i32) @@ -24726,58 +24714,58 @@ end local.get $1 i32.extend16_s - local.tee $3 local.tee $1 + local.tee $3 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $3 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $3 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $3 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $3 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $3 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $3 local.get $0 - local.get $3 local.get $1 local.get $2 + local.get $3 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut @@ -24967,59 +24955,59 @@ local.get $1 i32.const 65535 i32.and - local.tee $2 local.tee $1 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $1 + local.set $2 local.get $0 - local.get $2 local.get $1 + local.get $2 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $2 ) (func $~lib/typedarray/Uint16Array#join (param $0 i32) (result i32) (local $1 i32) @@ -25673,7 +25661,7 @@ local.get $2 i32.const 4 i32.sub - local.tee $2 + local.tee $3 i32.const 1 i32.shl local.get $0 @@ -25687,10 +25675,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $3 + local.tee $4 i32.const 10000 i32.rem_u - local.tee $4 + local.tee $2 i32.const 100 i32.div_u i32.const 2 @@ -25698,7 +25686,7 @@ i32.const 8012 i32.add i64.load32_u - local.get $4 + local.get $2 i32.const 100 i32.rem_u i32.const 2 @@ -25710,7 +25698,7 @@ i64.shl i64.or i64.store - local.get $2 + local.get $3 i32.const 4 i32.sub local.tee $2 @@ -25718,7 +25706,7 @@ i32.shl local.get $0 i32.add - local.get $3 + local.get $4 i32.const 10000 i32.div_u local.tee $3 @@ -25757,7 +25745,7 @@ local.get $1 i64.const 0 i64.lt_s - local.tee $3 + local.tee $2 if local.get $0 i32.const 45 @@ -25771,7 +25759,7 @@ i64.const 10 i64.lt_u if - local.get $3 + local.get $2 i32.const 1 i32.shl local.get $0 @@ -25780,7 +25768,7 @@ i64.const 48 i64.or i64.store16 - local.get $3 + local.get $2 i32.const 1 i32.add return @@ -25791,58 +25779,58 @@ if local.get $1 i32.wrap_i64 + local.tee $3 local.tee $4 - local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $4 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $4 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $4 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $4 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $4 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 + local.set $4 local.get $0 - local.get $4 - local.get $2 local.get $3 + local.get $2 + local.get $4 i32.add local.tee $0 call $~lib/util/number/utoa32_dec_lut @@ -25899,7 +25887,7 @@ i32.add end end - local.get $3 + local.get $2 i32.add local.tee $0 call $~lib/util/number/utoa64_dec_lut @@ -25916,7 +25904,7 @@ (local $7 i32) local.get $0 i32.load offset=4 - local.set $4 + local.set $5 local.get $0 i32.load offset=8 i32.const 3 @@ -25940,7 +25928,7 @@ local.get $1 i32.const 1 i32.sub - local.tee $3 + local.tee $4 i32.const 0 i32.lt_s if @@ -25953,10 +25941,10 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $3 + local.get $4 i32.eqz if - local.get $4 + local.get $5 i64.load i64.extend32_s local.set $2 @@ -26140,12 +26128,12 @@ br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.const 9580 i32.load i32.const 1 i32.shr_u - local.tee $5 + local.tee $6 i32.const 21 i32.add i32.mul @@ -26160,25 +26148,25 @@ i32.store loop $for-loop|0 local.get $3 - local.get $6 - i32.gt_s + local.get $4 + i32.lt_s if local.get $0 i32.const 1 i32.shl local.get $1 i32.add - local.get $6 + local.get $3 i32.const 3 i32.shl - local.get $4 + local.get $5 i32.add i64.load call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $5 + local.get $6 if local.get $0 i32.const 1 @@ -26186,19 +26174,19 @@ local.get $1 i32.add i32.const 9584 - local.get $5 + local.get $6 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $5 + local.get $6 i32.add local.set $0 end - local.get $6 + local.get $3 i32.const 1 i32.add - local.set $6 + local.set $3 br $for-loop|0 end end @@ -26208,10 +26196,10 @@ i32.shl local.get $1 i32.add - local.get $3 + local.get $4 i32.const 3 i32.shl - local.get $4 + local.get $5 i32.add i64.load call $~lib/util/number/itoa_buffered @@ -26391,7 +26379,7 @@ (local $7 i32) local.get $0 i32.load offset=4 - local.set $4 + local.set $3 local.get $0 i32.load offset=8 i32.const 3 @@ -26415,7 +26403,7 @@ local.get $1 i32.const 1 i32.sub - local.tee $3 + local.tee $7 i32.const 0 i32.lt_s if @@ -26428,10 +26416,10 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $3 + local.get $7 i32.eqz if - local.get $4 + local.get $3 i64.load local.set $2 global.get $~lib/memory/__stack_pointer @@ -26594,18 +26582,18 @@ br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.const 9580 i32.load i32.const 1 i32.shr_u - local.tee $5 + local.tee $4 i32.const 20 i32.add i32.mul i32.const 20 i32.add - local.tee $7 + local.tee $6 i32.const 1 i32.shl i32.const 1 @@ -26613,26 +26601,26 @@ local.tee $1 i32.store loop $for-loop|0 - local.get $3 - local.get $6 - i32.gt_s + local.get $5 + local.get $7 + i32.lt_s if local.get $0 i32.const 1 i32.shl local.get $1 i32.add - local.get $6 + local.get $5 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add i64.load call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $5 + local.get $4 if local.get $0 i32.const 1 @@ -26640,32 +26628,32 @@ local.get $1 i32.add i32.const 9584 - local.get $5 + local.get $4 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $5 + local.get $4 i32.add local.set $0 end - local.get $6 + local.get $5 i32.const 1 i32.add - local.set $6 + local.set $5 br $for-loop|0 end end - local.get $7 + local.get $6 local.get $0 i32.const 1 i32.shl local.get $1 i32.add - local.get $3 + local.get $7 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add i64.load call $~lib/util/number/itoa_buffered @@ -27282,83 +27270,82 @@ i32.const 101 i32.store16 offset=2 local.get $0 - local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $1 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $0 + local.get $1 i32.sub - local.set $0 + local.set $1 end - local.get $0 - local.tee $2 + local.get $1 + local.tee $4 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $4 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $4 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $4 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $4 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $4 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 - local.get $0 - local.get $2 + local.set $4 + local.get $1 + local.get $4 i32.const 1 i32.add - local.tee $0 + local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $0 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.add else @@ -27381,87 +27368,87 @@ local.get $0 local.get $2 i32.add - local.tee $2 + local.tee $0 i32.const 101 i32.store16 offset=2 - local.get $2 + local.get $0 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $2 i32.const 0 i32.lt_s - local.tee $4 + local.tee $3 if i32.const 0 - local.get $0 + local.get $2 i32.sub - local.set $0 + local.set $2 end - local.get $0 - local.tee $3 + local.get $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 100 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $3 + local.get $5 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $3 + local.get $5 i32.const 1000 i32.ge_u i32.add end else - local.get $3 + local.get $5 i32.const 10000000 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $3 + local.get $5 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $3 + local.get $5 i32.const 100000000 i32.ge_u i32.add end end - local.set $3 - local.get $0 - local.get $3 + local.set $5 + local.get $2 + local.get $5 i32.const 1 i32.add - local.tee $0 + local.tee $2 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $0 i32.const 45 i32.const 43 - local.get $4 + local.get $3 select i32.store16 offset=4 - local.get $0 local.get $1 + local.get $2 i32.add i32.const 2 i32.add @@ -27474,14 +27461,14 @@ (local $2 i64) (local $3 i32) (local $4 i64) - (local $5 i32) + (local $5 i64) (local $6 i64) - (local $7 i64) - (local $8 i64) - (local $9 i64) + (local $7 i32) + (local $8 i32) + (local $9 i32) (local $10 i64) - (local $11 i32) - (local $12 i32) + (local $11 i64) + (local $12 i64) (local $13 i64) (local $14 i64) local.get $1 @@ -27504,11 +27491,11 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.set $5 + local.set $7 local.get $2 i64.const 4503599627370495 i64.and - local.get $5 + local.get $7 i32.const 0 i32.ne i64.extend_i32_u @@ -27516,13 +27503,13 @@ i64.shl i64.add local.set $2 - local.get $5 + local.get $7 i32.const 1 - local.get $5 + local.get $7 select i32.const 1075 i32.sub - local.tee $11 + local.tee $7 i32.const 1 i32.sub local.get $2 @@ -27533,11 +27520,11 @@ local.tee $4 i64.clz i32.wrap_i64 - local.tee $12 + local.tee $8 i32.sub - local.set $5 + local.set $9 local.get $4 - local.get $12 + local.get $8 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -27547,25 +27534,25 @@ i64.eq i32.const 1 i32.add - local.tee $12 + local.tee $8 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $11 - local.get $12 + local.get $7 + local.get $8 i32.sub - local.get $5 + local.get $9 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $5 + local.get $9 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $5 + local.tee $7 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -27574,9 +27561,9 @@ f64.add local.tee $1 i32.trunc_f64_s - local.tee $11 + local.tee $8 local.get $1 - local.get $11 + local.get $8 f64.convert_i32_s f64.ne i32.add @@ -27584,18 +27571,18 @@ i32.shr_s i32.const 1 i32.add - local.tee $11 + local.tee $8 i32.const 3 i32.shl - local.tee $12 + local.tee $9 i32.sub global.set $~lib/util/number/_K - local.get $12 + local.get $9 i32.const 9864 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $11 + local.get $8 i32.const 1 i32.shl i32.const 10560 @@ -27606,62 +27593,62 @@ local.get $2 i64.clz i64.shl - local.tee $2 + local.tee $4 i64.const 4294967295 i64.and - local.set $6 - local.get $2 + local.set $2 + local.get $4 i64.const 32 i64.shr_u - local.tee $13 + local.tee $6 global.get $~lib/util/number/_frc_pow - local.tee $4 + local.tee $5 i64.const 4294967295 i64.and - local.tee $2 - local.tee $7 + local.tee $10 + local.tee $4 i64.mul - local.get $6 - local.get $7 + local.get $2 + local.get $4 i64.mul i64.const 32 i64.shr_u i64.add - local.set $7 - local.get $4 + local.set $4 + local.get $5 i64.const 32 i64.shr_u - local.tee $4 - local.set $8 + local.tee $11 + local.set $5 global.get $~lib/util/number/_frc_plus - local.tee $10 + local.tee $12 i64.const 4294967295 i64.and - local.set $9 - local.get $10 + local.set $13 + local.get $12 i64.const 32 i64.shr_u - local.tee $14 - local.get $2 + local.tee $12 + local.get $10 i64.mul - local.get $2 - local.get $9 + local.get $10 + local.get $13 i64.mul i64.const 32 i64.shr_u i64.add - local.set $10 - local.get $4 - local.get $14 + local.set $14 + local.get $11 + local.get $12 i64.mul - local.get $10 + local.get $14 i64.const 32 i64.shr_u i64.add - local.get $4 - local.get $9 + local.get $11 + local.get $13 i64.mul - local.get $10 + local.get $14 i64.const 4294967295 i64.and i64.add @@ -27672,42 +27659,42 @@ i64.add i64.const 1 i64.sub - local.set $9 + local.set $12 global.get $~lib/util/number/_frc_minus - local.tee $14 + local.tee $13 i64.const 4294967295 i64.and - local.set $10 - local.get $14 + local.set $14 + local.get $13 i64.const 32 i64.shr_u - local.tee $14 - local.get $2 + local.tee $13 + local.get $10 i64.mul - local.get $2 local.get $10 + local.get $14 i64.mul i64.const 32 i64.shr_u i64.add - local.set $2 + local.set $10 local.get $3 i32.const 1 i32.shl local.get $0 i32.add local.get $0 - local.get $8 - local.get $13 + local.get $5 + local.get $6 i64.mul - local.get $7 + local.get $4 i64.const 32 i64.shr_u i64.add - local.get $6 - local.get $8 + local.get $2 + local.get $5 i64.mul - local.get $7 + local.get $4 i64.const 4294967295 i64.and i64.add @@ -27716,24 +27703,24 @@ i64.const 32 i64.shr_u i64.add - local.get $9 + local.get $12 global.get $~lib/util/number/_exp_pow - local.get $5 + local.get $7 i32.add i32.const -64 i32.sub - local.get $9 - local.get $4 - local.get $14 + local.get $12 + local.get $11 + local.get $13 i64.mul - local.get $2 + local.get $10 i64.const 32 i64.shr_u i64.add - local.get $4 - local.get $10 + local.get $11 + local.get $14 i64.mul - local.get $2 + local.get $10 i64.const 4294967295 i64.and i64.add @@ -28291,25 +28278,25 @@ end local.get $0 i32.load offset=4 - local.set $0 + local.set $3 i32.const 11012 i32.load - local.set $2 + local.set $0 i32.const 11020 i32.load - local.set $3 + local.set $2 loop $for-loop|0 local.get $1 - local.get $3 + local.get $2 i32.lt_s if - local.get $0 local.get $1 + local.get $3 i32.add local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $0 i32.add i32.load i32.store8 @@ -28345,10 +28332,10 @@ i32.load offset=4 i32.const 6 i32.add - local.set $0 + local.set $3 local.get $1 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=8 i32.const 3 @@ -28359,13 +28346,13 @@ local.get $2 i32.gt_s if - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 3 i32.shl - local.get $3 + local.get $0 i32.add i64.load i64.store8 @@ -28423,10 +28410,10 @@ i32.load offset=4 i32.const 4 i32.add - local.set $0 + local.set $3 local.get $1 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=8 i32.const 1 @@ -28437,13 +28424,13 @@ local.get $2 i32.gt_s if - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.shl - local.get $3 + local.get $0 i32.add i32.load16_s i32.store8 @@ -28517,10 +28504,10 @@ local.get $0 i32.load offset=4 i32.add - local.set $0 + local.set $2 local.get $1 i32.load offset=4 - local.set $2 + local.set $0 local.get $1 i32.load offset=8 i32.const 3 @@ -28531,13 +28518,13 @@ local.get $3 i32.gt_s if - local.get $0 + local.get $2 local.get $3 i32.add local.get $3 i32.const 3 i32.shl - local.get $2 + local.get $0 i32.add i64.load local.tee $4 @@ -28604,7 +28591,7 @@ local.set $2 local.get $1 i32.load offset=4 - local.set $4 + local.set $0 local.get $1 i32.load offset=8 i32.const 1 @@ -28621,17 +28608,17 @@ local.get $3 i32.const 1 i32.shl - local.get $4 + local.get $0 i32.add i32.load16_s - local.tee $0 + local.tee $4 i32.const 255 - local.get $0 + local.get $4 i32.sub i32.const 31 i32.shr_s i32.or - local.get $0 + local.get $4 i32.const 31 i32.shr_s i32.const -1 @@ -28667,27 +28654,27 @@ end local.get $0 i32.load offset=4 - local.set $0 + local.set $3 i32.const 11012 i32.load - local.set $2 + local.set $0 i32.const 11020 i32.load - local.set $3 + local.set $2 loop $for-loop|0 local.get $1 - local.get $3 + local.get $2 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $0 + local.get $3 i32.add local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $0 i32.add i32.load i32.store16 @@ -28725,10 +28712,10 @@ i32.load offset=4 i32.const 12 i32.add - local.set $0 + local.set $3 local.get $1 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=8 i32.const 3 @@ -28742,12 +28729,12 @@ local.get $2 i32.const 1 i32.shl - local.get $0 + local.get $3 i32.add local.get $2 i32.const 3 i32.shl - local.get $3 + local.get $0 i32.add i64.load i64.store16 @@ -28779,10 +28766,10 @@ end local.get $0 i32.load offset=4 - local.set $0 + local.set $3 local.get $1 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=8 local.set $1 @@ -28794,10 +28781,10 @@ local.get $2 i32.const 1 i32.shl - local.get $0 + local.get $3 i32.add + local.get $0 local.get $2 - local.get $3 i32.add i32.load8_u i32.store16 @@ -28864,25 +28851,25 @@ i32.load offset=4 i32.const 14 i32.add - local.set $0 + local.set $3 i32.const 11268 i32.load - local.set $2 + local.set $0 i32.const 11276 i32.load - local.set $3 + local.set $2 loop $for-loop|0 local.get $1 - local.get $3 + local.get $2 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $0 + local.get $3 i32.add + local.get $0 local.get $1 - local.get $2 i32.add i32.load8_s i32.store16 @@ -28961,10 +28948,10 @@ i32.load offset=4 i32.const 24 i32.add - local.set $0 + local.set $3 local.get $1 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=8 i32.const 3 @@ -28978,12 +28965,12 @@ local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $3 i32.add local.get $2 i32.const 3 i32.shl - local.get $3 + local.get $0 i32.add i64.load i64.store32 @@ -29015,10 +29002,10 @@ end local.get $0 i32.load offset=4 - local.set $0 + local.set $3 local.get $1 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=8 local.set $1 @@ -29030,10 +29017,10 @@ local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $3 i32.add + local.get $0 local.get $2 - local.get $3 i32.add i32.load8_u i32.store @@ -29071,10 +29058,10 @@ i32.load offset=4 i32.const 16 i32.add - local.set $0 + local.set $3 local.get $1 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=8 i32.const 1 @@ -29088,12 +29075,12 @@ local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $3 i32.add local.get $2 i32.const 1 i32.shl - local.get $3 + local.get $0 i32.add i32.load16_s i32.store @@ -29130,25 +29117,25 @@ i32.load offset=4 i32.const 28 i32.add - local.set $0 + local.set $3 i32.const 11268 i32.load - local.set $2 + local.set $0 i32.const 11276 i32.load - local.set $3 + local.set $2 loop $for-loop|0 local.get $1 - local.get $3 + local.get $2 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $0 + local.get $3 i32.add + local.get $0 local.get $1 - local.get $2 i32.add i32.load8_s i32.store @@ -29181,27 +29168,27 @@ end local.get $0 i32.load offset=4 - local.set $0 + local.set $3 i32.const 11012 i32.load - local.set $2 + local.set $0 i32.const 11020 i32.load - local.set $3 + local.set $2 loop $for-loop|0 local.get $1 - local.get $3 + local.get $2 i32.lt_s if local.get $1 i32.const 3 i32.shl - local.get $0 + local.get $3 i32.add local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $0 i32.add i64.load32_s i64.store @@ -29263,10 +29250,10 @@ end local.get $0 i32.load offset=4 - local.set $0 + local.set $3 local.get $1 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=8 local.set $1 @@ -29278,10 +29265,10 @@ local.get $2 i32.const 3 i32.shl - local.get $0 + local.get $3 i32.add + local.get $0 local.get $2 - local.get $3 i32.add i64.load8_u i64.store @@ -29319,10 +29306,10 @@ i32.load offset=4 i32.const 32 i32.add - local.set $0 + local.set $3 local.get $1 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=8 i32.const 1 @@ -29336,12 +29323,12 @@ local.get $2 i32.const 3 i32.shl - local.get $0 + local.get $3 i32.add local.get $2 i32.const 1 i32.shl - local.get $3 + local.get $0 i32.add i64.load16_s i64.store @@ -29378,25 +29365,25 @@ i32.load offset=4 i32.const 56 i32.add - local.set $0 + local.set $3 i32.const 11268 i32.load - local.set $2 + local.set $0 i32.const 11276 i32.load - local.set $3 + local.set $2 loop $for-loop|0 local.get $1 - local.get $3 + local.get $2 i32.lt_s if local.get $1 i32.const 3 i32.shl - local.get $0 + local.get $3 i32.add + local.get $0 local.get $1 - local.get $2 i32.add i64.load8_s i64.store @@ -29796,12 +29783,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) local.get $1 i32.const 48 i32.le_s @@ -29925,7 +29912,7 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $9 + local.tee $11 local.get $5 i32.add local.set $10 @@ -29939,7 +29926,7 @@ local.get $5 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.const -1 i32.store @@ -29952,13 +29939,13 @@ end local.get $1 call $~lib/rt/tlsf/__alloc - local.set $11 + local.set $9 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $8 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -29970,9 +29957,9 @@ if local.get $0 i32.const 0 - local.get $8 + local.get $12 i32.const 31 - local.get $8 + local.get $12 i32.const 31 i32.lt_s select @@ -29983,7 +29970,7 @@ end loop $while-continue|2 local.get $1 - local.get $8 + local.get $12 i32.lt_s if local.get $0 @@ -29991,7 +29978,7 @@ i32.const 1 i32.add local.tee $6 - local.get $8 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -30005,13 +29992,13 @@ if local.get $0 local.get $6 - local.get $8 + local.get $12 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $8 + local.get $12 i32.gt_s select local.tee $5 @@ -30025,11 +30012,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $12 i32.const 1 i32.add i64.extend_i32_u - local.tee $13 + local.tee $8 i64.div_u local.get $5 local.get $6 @@ -30039,7 +30026,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $8 i64.div_u i64.xor i32.wrap_i64 @@ -30053,15 +30040,15 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.load - local.tee $12 + local.tee $13 i32.const -1 i32.ne if local.get $0 - local.get $12 + local.get $13 local.get $10 local.get $4 i32.const 2 @@ -30072,15 +30059,15 @@ i32.const 1 i32.add local.get $1 - local.get $11 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $9 + local.get $11 i32.add i32.const -1 i32.store - local.get $12 + local.get $13 local.set $3 end local.get $4 @@ -30090,7 +30077,7 @@ br $for-loop|3 end end - local.get $9 + local.get $11 local.get $7 i32.const 2 i32.shl @@ -30118,7 +30105,7 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.load local.tee $1 @@ -30135,8 +30122,8 @@ i32.load i32.const 1 i32.add - local.get $8 - local.get $11 + local.get $12 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns end @@ -30147,10 +30134,10 @@ br $for-loop|4 end end - local.get $11 - call $~lib/rt/tlsf/__free local.get $9 call $~lib/rt/tlsf/__free + local.get $11 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -30560,12 +30547,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) local.get $1 i32.const 48 i32.le_s @@ -30689,7 +30676,7 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $9 + local.tee $11 local.get $5 i32.add local.set $10 @@ -30703,7 +30690,7 @@ local.get $5 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.const -1 i32.store @@ -30716,13 +30703,13 @@ end local.get $1 call $~lib/rt/tlsf/__alloc - local.set $11 + local.set $9 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $8 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -30734,9 +30721,9 @@ if local.get $0 i32.const 0 - local.get $8 + local.get $12 i32.const 31 - local.get $8 + local.get $12 i32.const 31 i32.lt_s select @@ -30747,7 +30734,7 @@ end loop $while-continue|2 local.get $1 - local.get $8 + local.get $12 i32.lt_s if local.get $0 @@ -30755,7 +30742,7 @@ i32.const 1 i32.add local.tee $6 - local.get $8 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -30769,13 +30756,13 @@ if local.get $0 local.get $6 - local.get $8 + local.get $12 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $8 + local.get $12 i32.gt_s select local.tee $5 @@ -30789,11 +30776,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $12 i32.const 1 i32.add i64.extend_i32_u - local.tee $13 + local.tee $8 i64.div_u local.get $5 local.get $6 @@ -30803,7 +30790,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $8 i64.div_u i64.xor i32.wrap_i64 @@ -30817,15 +30804,15 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.load - local.tee $12 + local.tee $13 i32.const -1 i32.ne if local.get $0 - local.get $12 + local.get $13 local.get $10 local.get $4 i32.const 2 @@ -30836,15 +30823,15 @@ i32.const 1 i32.add local.get $1 - local.get $11 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $9 + local.get $11 i32.add i32.const -1 i32.store - local.get $12 + local.get $13 local.set $3 end local.get $4 @@ -30854,7 +30841,7 @@ br $for-loop|3 end end - local.get $9 + local.get $11 local.get $7 i32.const 2 i32.shl @@ -30882,7 +30869,7 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.load local.tee $1 @@ -30899,8 +30886,8 @@ i32.load i32.const 1 i32.add - local.get $8 - local.get $11 + local.get $12 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns end @@ -30911,10 +30898,10 @@ br $for-loop|4 end end - local.get $11 - call $~lib/rt/tlsf/__free local.get $9 call $~lib/rt/tlsf/__free + local.get $11 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -31375,12 +31362,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) local.get $1 i32.const 48 i32.le_s @@ -31504,7 +31491,7 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $9 + local.tee $11 local.get $5 i32.add local.set $10 @@ -31518,7 +31505,7 @@ local.get $5 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.const -1 i32.store @@ -31533,13 +31520,13 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.set $11 + local.set $9 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $8 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -31551,9 +31538,9 @@ if local.get $0 i32.const 0 - local.get $8 + local.get $12 i32.const 31 - local.get $8 + local.get $12 i32.const 31 i32.lt_s select @@ -31564,7 +31551,7 @@ end loop $while-continue|2 local.get $1 - local.get $8 + local.get $12 i32.lt_s if local.get $0 @@ -31572,7 +31559,7 @@ i32.const 1 i32.add local.tee $6 - local.get $8 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -31586,13 +31573,13 @@ if local.get $0 local.get $6 - local.get $8 + local.get $12 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $8 + local.get $12 i32.gt_s select local.tee $5 @@ -31606,11 +31593,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $12 i32.const 1 i32.add i64.extend_i32_u - local.tee $13 + local.tee $8 i64.div_u local.get $5 local.get $6 @@ -31620,7 +31607,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $8 i64.div_u i64.xor i32.wrap_i64 @@ -31634,15 +31621,15 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.load - local.tee $12 + local.tee $13 i32.const -1 i32.ne if local.get $0 - local.get $12 + local.get $13 local.get $10 local.get $4 i32.const 2 @@ -31653,15 +31640,15 @@ i32.const 1 i32.add local.get $1 - local.get $11 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $9 + local.get $11 i32.add i32.const -1 i32.store - local.get $12 + local.get $13 local.set $3 end local.get $4 @@ -31671,7 +31658,7 @@ br $for-loop|3 end end - local.get $9 + local.get $11 local.get $7 i32.const 2 i32.shl @@ -31699,7 +31686,7 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.load local.tee $1 @@ -31716,8 +31703,8 @@ i32.load i32.const 1 i32.add - local.get $8 - local.get $11 + local.get $12 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns end @@ -31728,10 +31715,10 @@ br $for-loop|4 end end - local.get $11 - call $~lib/rt/tlsf/__free local.get $9 call $~lib/rt/tlsf/__free + local.get $11 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -32182,12 +32169,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) local.get $1 i32.const 48 i32.le_s @@ -32311,7 +32298,7 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $9 + local.tee $11 local.get $5 i32.add local.set $10 @@ -32325,7 +32312,7 @@ local.get $5 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.const -1 i32.store @@ -32340,13 +32327,13 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.set $11 + local.set $9 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $8 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -32358,9 +32345,9 @@ if local.get $0 i32.const 0 - local.get $8 + local.get $12 i32.const 31 - local.get $8 + local.get $12 i32.const 31 i32.lt_s select @@ -32371,7 +32358,7 @@ end loop $while-continue|2 local.get $1 - local.get $8 + local.get $12 i32.lt_s if local.get $0 @@ -32379,7 +32366,7 @@ i32.const 1 i32.add local.tee $6 - local.get $8 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -32393,13 +32380,13 @@ if local.get $0 local.get $6 - local.get $8 + local.get $12 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $8 + local.get $12 i32.gt_s select local.tee $5 @@ -32413,11 +32400,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $12 i32.const 1 i32.add i64.extend_i32_u - local.tee $13 + local.tee $8 i64.div_u local.get $5 local.get $6 @@ -32427,7 +32414,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $8 i64.div_u i64.xor i32.wrap_i64 @@ -32441,15 +32428,15 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.load - local.tee $12 + local.tee $13 i32.const -1 i32.ne if local.get $0 - local.get $12 + local.get $13 local.get $10 local.get $4 i32.const 2 @@ -32460,15 +32447,15 @@ i32.const 1 i32.add local.get $1 - local.get $11 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $9 + local.get $11 i32.add i32.const -1 i32.store - local.get $12 + local.get $13 local.set $3 end local.get $4 @@ -32478,7 +32465,7 @@ br $for-loop|3 end end - local.get $9 + local.get $11 local.get $7 i32.const 2 i32.shl @@ -32506,7 +32493,7 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.load local.tee $1 @@ -32523,8 +32510,8 @@ i32.load i32.const 1 i32.add - local.get $8 - local.get $11 + local.get $12 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns end @@ -32535,10 +32522,10 @@ br $for-loop|4 end end - local.get $11 - call $~lib/rt/tlsf/__free local.get $9 call $~lib/rt/tlsf/__free + local.get $11 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -32999,12 +32986,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) local.get $1 i32.const 48 i32.le_s @@ -33128,7 +33115,7 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $9 + local.tee $11 local.get $5 i32.add local.set $10 @@ -33142,7 +33129,7 @@ local.get $5 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.const -1 i32.store @@ -33157,13 +33144,13 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $11 + local.set $9 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $8 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -33175,9 +33162,9 @@ if local.get $0 i32.const 0 - local.get $8 + local.get $12 i32.const 31 - local.get $8 + local.get $12 i32.const 31 i32.lt_s select @@ -33188,7 +33175,7 @@ end loop $while-continue|2 local.get $1 - local.get $8 + local.get $12 i32.lt_s if local.get $0 @@ -33196,7 +33183,7 @@ i32.const 1 i32.add local.tee $6 - local.get $8 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -33210,13 +33197,13 @@ if local.get $0 local.get $6 - local.get $8 + local.get $12 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $8 + local.get $12 i32.gt_s select local.tee $5 @@ -33230,11 +33217,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $12 i32.const 1 i32.add i64.extend_i32_u - local.tee $13 + local.tee $8 i64.div_u local.get $5 local.get $6 @@ -33244,7 +33231,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $8 i64.div_u i64.xor i32.wrap_i64 @@ -33258,15 +33245,15 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.load - local.tee $12 + local.tee $13 i32.const -1 i32.ne if local.get $0 - local.get $12 + local.get $13 local.get $10 local.get $4 i32.const 2 @@ -33277,15 +33264,15 @@ i32.const 1 i32.add local.get $1 - local.get $11 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $9 + local.get $11 i32.add i32.const -1 i32.store - local.get $12 + local.get $13 local.set $3 end local.get $4 @@ -33295,7 +33282,7 @@ br $for-loop|3 end end - local.get $9 + local.get $11 local.get $7 i32.const 2 i32.shl @@ -33323,7 +33310,7 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.load local.tee $1 @@ -33340,8 +33327,8 @@ i32.load i32.const 1 i32.add - local.get $8 - local.get $11 + local.get $12 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns end @@ -33352,10 +33339,10 @@ br $for-loop|4 end end - local.get $11 - call $~lib/rt/tlsf/__free local.get $9 call $~lib/rt/tlsf/__free + local.get $11 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -33800,12 +33787,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) local.get $1 i32.const 48 i32.le_s @@ -33929,7 +33916,7 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $9 + local.tee $11 local.get $5 i32.add local.set $10 @@ -33943,7 +33930,7 @@ local.get $5 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.const -1 i32.store @@ -33958,13 +33945,13 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $11 + local.set $9 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $8 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -33976,9 +33963,9 @@ if local.get $0 i32.const 0 - local.get $8 + local.get $12 i32.const 31 - local.get $8 + local.get $12 i32.const 31 i32.lt_s select @@ -33989,7 +33976,7 @@ end loop $while-continue|2 local.get $1 - local.get $8 + local.get $12 i32.lt_s if local.get $0 @@ -33997,7 +33984,7 @@ i32.const 1 i32.add local.tee $6 - local.get $8 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -34011,13 +33998,13 @@ if local.get $0 local.get $6 - local.get $8 + local.get $12 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $8 + local.get $12 i32.gt_s select local.tee $5 @@ -34031,11 +34018,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $12 i32.const 1 i32.add i64.extend_i32_u - local.tee $13 + local.tee $8 i64.div_u local.get $5 local.get $6 @@ -34045,7 +34032,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $8 i64.div_u i64.xor i32.wrap_i64 @@ -34059,15 +34046,15 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.load - local.tee $12 + local.tee $13 i32.const -1 i32.ne if local.get $0 - local.get $12 + local.get $13 local.get $10 local.get $4 i32.const 2 @@ -34078,15 +34065,15 @@ i32.const 1 i32.add local.get $1 - local.get $11 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $9 + local.get $11 i32.add i32.const -1 i32.store - local.get $12 + local.get $13 local.set $3 end local.get $4 @@ -34096,7 +34083,7 @@ br $for-loop|3 end end - local.get $9 + local.get $11 local.get $7 i32.const 2 i32.shl @@ -34124,7 +34111,7 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add i32.load local.tee $1 @@ -34141,8 +34128,8 @@ i32.load i32.const 1 i32.add - local.get $8 - local.get $11 + local.get $12 + local.get $9 local.get $2 call $~lib/util/sort/mergeRuns end @@ -34153,10 +34140,10 @@ br $for-loop|4 end end - local.get $11 - call $~lib/rt/tlsf/__free local.get $9 call $~lib/rt/tlsf/__free + local.get $11 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -34609,9 +34596,9 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) + (local $9 i64) (local $10 i64) - (local $11 i64) + (local $11 i32) (local $12 i32) (local $13 i32) (local $14 i32) @@ -34642,14 +34629,14 @@ local.set $10 local.get $0 i64.load offset=8 - local.set $11 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $9 local.get $10 local.get $10 - local.get $11 + local.get $9 local.get $2 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -34659,20 +34646,20 @@ select i64.store local.get $10 - local.get $11 + local.get $9 local.get $1 select local.set $10 local.get $0 i64.load offset=16 - local.set $11 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $9 local.get $10 local.get $10 - local.get $11 + local.get $9 local.get $2 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -34683,7 +34670,7 @@ i64.store offset=8 local.get $0 local.get $10 - local.get $11 + local.get $9 local.get $1 select i64.store offset=16 @@ -34693,14 +34680,14 @@ local.set $10 local.get $0 i64.load offset=8 - local.set $11 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $9 local.get $10 local.get $10 - local.get $11 + local.get $9 local.get $2 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -34711,7 +34698,7 @@ i64.store local.get $0 local.get $10 - local.get $11 + local.get $9 local.get $1 select i64.store offset=8 @@ -34738,28 +34725,28 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $9 + local.tee $13 local.get $5 i32.add local.set $12 i32.const 0 - local.set $5 + local.set $7 loop $for-loop|1 - local.get $5 local.get $6 - i32.lt_u + local.get $7 + i32.gt_u if - local.get $5 + local.get $7 i32.const 2 i32.shl - local.get $9 + local.get $13 i32.add i32.const -1 i32.store - local.get $5 + local.get $7 i32.const 1 i32.add - local.set $5 + local.set $7 br $for-loop|1 end end @@ -34767,116 +34754,116 @@ i32.const 3 i32.shl call $~lib/rt/tlsf/__alloc - local.set $13 + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $8 + local.tee $14 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $1 + local.tee $6 i32.const 1 i32.add - local.tee $5 + local.tee $1 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $8 + local.get $14 i32.const 31 - local.get $8 + local.get $14 i32.const 31 i32.lt_s select - local.tee $1 - local.get $5 + local.tee $6 + local.get $1 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $1 - local.get $8 + local.get $6 + local.get $14 i32.lt_s if local.get $0 - local.get $1 + local.get $6 i32.const 1 i32.add - local.tee $6 - local.get $8 + local.tee $5 + local.get $14 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $5 - local.get $6 + local.tee $7 + local.get $5 i32.sub i32.const 1 i32.add - local.tee $7 + local.tee $8 i32.const 32 i32.lt_s if local.get $0 - local.get $6 - local.get $8 - local.get $6 + local.get $5 + local.get $14 + local.get $5 i32.const 31 i32.add - local.tee $5 - local.get $5 - local.get $8 + local.tee $1 + local.get $1 + local.get $14 i32.gt_s select - local.tee $5 - local.get $7 + local.tee $7 + local.get $8 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $6 + local.get $5 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $14 i32.const 1 i32.add i64.extend_i32_u - local.tee $10 + local.tee $9 i64.div_u local.get $5 - local.get $6 + local.get $7 i32.add i32.const 1 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $10 + local.get $9 i64.div_u i64.xor i32.wrap_i64 i32.clz - local.set $7 + local.set $1 loop $for-loop|3 + local.get $1 local.get $4 - local.get $7 - i32.gt_u + i32.lt_u if local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $13 i32.add i32.load - local.tee $14 + local.tee $8 i32.const -1 i32.ne if local.get $0 - local.get $14 + local.get $8 local.get $12 local.get $4 i32.const 2 @@ -34886,16 +34873,16 @@ i32.load i32.const 1 i32.add - local.get $1 - local.get $13 + local.get $6 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $9 + local.get $13 i32.add i32.const -1 i32.store - local.get $14 + local.get $8 local.set $3 end local.get $4 @@ -34905,8 +34892,8 @@ br $for-loop|3 end end - local.get $9 - local.get $7 + local.get $13 + local.get $1 i32.const 2 i32.shl local.tee $4 @@ -34916,13 +34903,13 @@ local.get $4 local.get $12 i32.add - local.get $1 - i32.store local.get $6 - local.set $3 + i32.store local.get $5 - local.set $1 + local.set $3 local.get $7 + local.set $6 + local.get $1 local.set $4 br $while-continue|2 end @@ -34933,7 +34920,7 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $13 i32.add i32.load local.tee $1 @@ -34950,8 +34937,8 @@ i32.load i32.const 1 i32.add - local.get $8 - local.get $13 + local.get $14 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end @@ -34962,9 +34949,9 @@ br $for-loop|4 end end - local.get $13 + local.get $11 call $~lib/rt/tlsf/__free - local.get $9 + local.get $13 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i64) (param $1 i64) (result i32) @@ -35418,9 +35405,9 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) + (local $9 i64) (local $10 i64) - (local $11 i64) + (local $11 i32) (local $12 i32) (local $13 i32) (local $14 i32) @@ -35451,14 +35438,14 @@ local.set $10 local.get $0 i64.load offset=8 - local.set $11 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $9 local.get $10 local.get $10 - local.get $11 + local.get $9 local.get $2 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -35468,20 +35455,20 @@ select i64.store local.get $10 - local.get $11 + local.get $9 local.get $1 select local.set $10 local.get $0 i64.load offset=16 - local.set $11 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $9 local.get $10 local.get $10 - local.get $11 + local.get $9 local.get $2 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -35492,7 +35479,7 @@ i64.store offset=8 local.get $0 local.get $10 - local.get $11 + local.get $9 local.get $1 select i64.store offset=16 @@ -35502,14 +35489,14 @@ local.set $10 local.get $0 i64.load offset=8 - local.set $11 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $9 local.get $10 local.get $10 - local.get $11 + local.get $9 local.get $2 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -35520,7 +35507,7 @@ i64.store local.get $0 local.get $10 - local.get $11 + local.get $9 local.get $1 select i64.store offset=8 @@ -35547,28 +35534,28 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $9 + local.tee $13 local.get $5 i32.add local.set $12 i32.const 0 - local.set $5 + local.set $7 loop $for-loop|1 - local.get $5 local.get $6 - i32.lt_u + local.get $7 + i32.gt_u if - local.get $5 + local.get $7 i32.const 2 i32.shl - local.get $9 + local.get $13 i32.add i32.const -1 i32.store - local.get $5 + local.get $7 i32.const 1 i32.add - local.set $5 + local.set $7 br $for-loop|1 end end @@ -35576,116 +35563,116 @@ i32.const 3 i32.shl call $~lib/rt/tlsf/__alloc - local.set $13 + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $8 + local.tee $14 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $1 + local.tee $6 i32.const 1 i32.add - local.tee $5 + local.tee $1 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $8 + local.get $14 i32.const 31 - local.get $8 + local.get $14 i32.const 31 i32.lt_s select - local.tee $1 - local.get $5 + local.tee $6 + local.get $1 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $1 - local.get $8 + local.get $6 + local.get $14 i32.lt_s if local.get $0 - local.get $1 + local.get $6 i32.const 1 i32.add - local.tee $6 - local.get $8 + local.tee $5 + local.get $14 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $5 - local.get $6 + local.tee $7 + local.get $5 i32.sub i32.const 1 i32.add - local.tee $7 + local.tee $8 i32.const 32 i32.lt_s if local.get $0 - local.get $6 - local.get $8 - local.get $6 + local.get $5 + local.get $14 + local.get $5 i32.const 31 i32.add - local.tee $5 - local.get $5 - local.get $8 + local.tee $1 + local.get $1 + local.get $14 i32.gt_s select - local.tee $5 - local.get $7 + local.tee $7 + local.get $8 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $6 + local.get $5 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $14 i32.const 1 i32.add i64.extend_i32_u - local.tee $10 + local.tee $9 i64.div_u local.get $5 - local.get $6 + local.get $7 i32.add i32.const 1 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $10 + local.get $9 i64.div_u i64.xor i32.wrap_i64 i32.clz - local.set $7 + local.set $1 loop $for-loop|3 + local.get $1 local.get $4 - local.get $7 - i32.gt_u + i32.lt_u if local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $13 i32.add i32.load - local.tee $14 + local.tee $8 i32.const -1 i32.ne if local.get $0 - local.get $14 + local.get $8 local.get $12 local.get $4 i32.const 2 @@ -35695,16 +35682,16 @@ i32.load i32.const 1 i32.add - local.get $1 - local.get $13 + local.get $6 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $9 + local.get $13 i32.add i32.const -1 i32.store - local.get $14 + local.get $8 local.set $3 end local.get $4 @@ -35714,8 +35701,8 @@ br $for-loop|3 end end - local.get $9 - local.get $7 + local.get $13 + local.get $1 i32.const 2 i32.shl local.tee $4 @@ -35725,13 +35712,13 @@ local.get $4 local.get $12 i32.add - local.get $1 - i32.store local.get $6 - local.set $3 + i32.store local.get $5 - local.set $1 + local.set $3 local.get $7 + local.set $6 + local.get $1 local.set $4 br $while-continue|2 end @@ -35742,7 +35729,7 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $13 i32.add i32.load local.tee $1 @@ -35759,8 +35746,8 @@ i32.load i32.const 1 i32.add - local.get $8 - local.get $13 + local.get $14 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end @@ -35771,9 +35758,9 @@ br $for-loop|4 end end - local.get $13 + local.get $11 call $~lib/rt/tlsf/__free - local.get $9 + local.get $13 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i64) (param $1 i64) (result i32) @@ -36227,13 +36214,13 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) + (local $9 f32) (local $10 f32) - (local $11 f32) + (local $11 i64) (local $12 i32) (local $13 i32) (local $14 i32) - (local $15 i64) + (local $15 i32) local.get $1 i32.const 48 i32.le_s @@ -36261,14 +36248,14 @@ local.set $10 local.get $0 f32.load offset=4 - local.set $11 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $9 local.get $10 local.get $10 - local.get $11 + local.get $9 local.get $2 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -36278,20 +36265,20 @@ select f32.store local.get $10 - local.get $11 + local.get $9 local.get $1 select local.set $10 local.get $0 f32.load offset=8 - local.set $11 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $9 local.get $10 local.get $10 - local.get $11 + local.get $9 local.get $2 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -36302,7 +36289,7 @@ f32.store offset=4 local.get $0 local.get $10 - local.get $11 + local.get $9 local.get $1 select f32.store offset=8 @@ -36312,14 +36299,14 @@ local.set $10 local.get $0 f32.load offset=4 - local.set $11 + local.set $9 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $11 + local.get $9 local.get $10 local.get $10 - local.get $11 + local.get $9 local.get $2 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -36330,7 +36317,7 @@ f32.store local.get $0 local.get $10 - local.get $11 + local.get $9 local.get $1 select f32.store offset=4 @@ -36357,28 +36344,28 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $9 + local.tee $14 local.get $5 i32.add - local.set $12 + local.set $13 i32.const 0 - local.set $5 + local.set $7 loop $for-loop|1 - local.get $5 local.get $6 - i32.lt_u + local.get $7 + i32.gt_u if - local.get $5 + local.get $7 i32.const 2 i32.shl - local.get $9 + local.get $14 i32.add i32.const -1 i32.store - local.get $5 + local.get $7 i32.const 1 i32.add - local.set $5 + local.set $7 br $for-loop|1 end end @@ -36386,117 +36373,117 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $13 + local.set $12 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $8 + local.tee $15 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $1 + local.tee $6 i32.const 1 i32.add - local.tee $5 + local.tee $1 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $8 + local.get $15 i32.const 31 - local.get $8 + local.get $15 i32.const 31 i32.lt_s select - local.tee $1 - local.get $5 + local.tee $6 + local.get $1 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $1 - local.get $8 + local.get $6 + local.get $15 i32.lt_s if local.get $0 - local.get $1 + local.get $6 i32.const 1 i32.add - local.tee $6 - local.get $8 + local.tee $5 + local.get $15 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $5 - local.get $6 + local.tee $7 + local.get $5 i32.sub i32.const 1 i32.add - local.tee $7 + local.tee $8 i32.const 32 i32.lt_s if local.get $0 - local.get $6 - local.get $8 - local.get $6 + local.get $5 + local.get $15 + local.get $5 i32.const 31 i32.add - local.tee $5 - local.get $5 - local.get $8 + local.tee $1 + local.get $1 + local.get $15 i32.gt_s select - local.tee $5 - local.get $7 + local.tee $7 + local.get $8 local.get $2 call $~lib/util/sort/insertionSort end local.get $3 - local.get $6 + local.get $5 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $15 i32.const 1 i32.add i64.extend_i32_u - local.tee $15 + local.tee $11 i64.div_u local.get $5 - local.get $6 + local.get $7 i32.add i32.const 1 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $15 + local.get $11 i64.div_u i64.xor i32.wrap_i64 i32.clz - local.set $7 + local.set $1 loop $for-loop|3 + local.get $1 local.get $4 - local.get $7 - i32.gt_u + i32.lt_u if local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $14 i32.add i32.load - local.tee $14 + local.tee $8 i32.const -1 i32.ne if local.get $0 - local.get $14 - local.get $12 + local.get $8 + local.get $13 local.get $4 i32.const 2 i32.shl @@ -36505,16 +36492,16 @@ i32.load i32.const 1 i32.add - local.get $1 - local.get $13 + local.get $6 + local.get $12 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $9 + local.get $14 i32.add i32.const -1 i32.store - local.get $14 + local.get $8 local.set $3 end local.get $4 @@ -36524,8 +36511,8 @@ br $for-loop|3 end end - local.get $9 - local.get $7 + local.get $14 + local.get $1 i32.const 2 i32.shl local.tee $4 @@ -36533,15 +36520,15 @@ local.get $3 i32.store local.get $4 - local.get $12 + local.get $13 i32.add - local.get $1 - i32.store local.get $6 - local.set $3 + i32.store local.get $5 - local.set $1 + local.set $3 local.get $7 + local.set $6 + local.get $1 local.set $4 br $while-continue|2 end @@ -36552,7 +36539,7 @@ local.get $4 i32.const 2 i32.shl - local.get $9 + local.get $14 i32.add i32.load local.tee $1 @@ -36564,13 +36551,13 @@ local.get $4 i32.const 2 i32.shl - local.get $12 + local.get $13 i32.add i32.load i32.const 1 i32.add - local.get $8 - local.get $13 + local.get $15 + local.get $12 local.get $2 call $~lib/util/sort/mergeRuns end @@ -36581,9 +36568,9 @@ br $for-loop|4 end end - local.get $13 + local.get $12 call $~lib/rt/tlsf/__free - local.get $9 + local.get $14 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 f32) (param $1 f32) (result i32) @@ -36705,34 +36692,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 6 call $~lib/typedarray/Int8Array#constructor - local.tee $3 + local.tee $9 i32.store - local.get $3 + local.get $9 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $3 + local.get $9 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $3 + local.get $9 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set - local.get $3 + local.get $9 i32.const 3 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $3 + local.get $9 i32.const 5 i32.const 5 call $~lib/typedarray/Int8Array#__set @@ -36749,91 +36736,91 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $9 i32.load offset=8 - local.set $5 - local.get $0 + local.set $4 + local.get $1 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store offset=4 - local.get $3 + local.get $9 i32.load offset=4 - local.set $9 + local.set $8 loop $for-loop|0 + local.get $3 local.get $4 - local.get $5 i32.lt_s if - local.get $4 - local.get $9 + local.get $3 + local.get $8 i32.add i32.load8_s - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $4 + local.get $6 local.get $3 + local.get $9 i32.const 3952 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $1 + local.get $0 local.tee $2 i32.const 1 i32.add - local.set $1 + local.set $0 local.get $2 - local.get $6 + local.get $5 i32.add - local.get $7 + local.get $6 i32.store8 end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|0 end end - local.get $0 - local.get $6 local.get $1 + local.get $5 + local.get $0 call $~lib/rt/itcms/__renew local.tee $2 i32.store local.get $2 if - local.get $0 + local.get $1 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 local.get $1 - i32.store offset=8 local.get $0 + i32.store offset=8 + local.get $1 local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub if @@ -36844,7 +36831,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 3 i32.ne @@ -36856,7 +36843,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 3 @@ -36869,7 +36856,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 4 @@ -36882,7 +36869,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 5 @@ -36929,34 +36916,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 6 call $~lib/typedarray/Uint8Array#constructor - local.tee $3 + local.tee $9 i32.store - local.get $3 + local.get $9 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $9 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $9 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $9 i32.const 3 i32.const 4 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $9 i32.const 5 i32.const 5 call $~lib/typedarray/Uint8Array#__set @@ -36973,91 +36960,91 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $9 i32.load offset=8 - local.set $5 - local.get $0 + local.set $4 + local.get $1 i32.const 12 i32.const 4 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store offset=4 - local.get $3 + local.get $9 i32.load offset=4 - local.set $9 + local.set $8 loop $for-loop|0 + local.get $3 local.get $4 - local.get $5 i32.lt_s if - local.get $4 - local.get $9 + local.get $3 + local.get $8 i32.add i32.load8_u - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $4 + local.get $6 local.get $3 + local.get $9 i32.const 3984 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $1 + local.get $0 local.tee $2 i32.const 1 i32.add - local.set $1 + local.set $0 local.get $2 - local.get $6 + local.get $5 i32.add - local.get $7 + local.get $6 i32.store8 end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|0 end end - local.get $0 - local.get $6 local.get $1 + local.get $5 + local.get $0 call $~lib/rt/itcms/__renew local.tee $2 i32.store local.get $2 if - local.get $0 + local.get $1 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 local.get $1 - i32.store offset=8 local.get $0 + i32.store offset=8 + local.get $1 local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub if @@ -37068,7 +37055,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 3 i32.ne @@ -37080,7 +37067,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 3 @@ -37093,7 +37080,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 4 @@ -37106,7 +37093,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 5 @@ -37153,34 +37140,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 6 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $3 + local.tee $9 i32.store - local.get $3 + local.get $9 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $3 + local.get $9 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $3 + local.get $9 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $3 + local.get $9 i32.const 3 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $3 + local.get $9 i32.const 5 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#__set @@ -37197,91 +37184,91 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $9 i32.load offset=8 - local.set $5 - local.get $0 + local.set $4 + local.get $1 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store offset=4 - local.get $3 + local.get $9 i32.load offset=4 - local.set $9 + local.set $8 loop $for-loop|0 + local.get $3 local.get $4 - local.get $5 i32.lt_s if - local.get $4 - local.get $9 + local.get $3 + local.get $8 i32.add i32.load8_u - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $4 + local.get $6 local.get $3 + local.get $9 i32.const 4016 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $1 + local.get $0 local.tee $2 i32.const 1 i32.add - local.set $1 + local.set $0 local.get $2 - local.get $6 + local.get $5 i32.add - local.get $7 + local.get $6 i32.store8 end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|0 end end - local.get $0 - local.get $6 local.get $1 + local.get $5 + local.get $0 call $~lib/rt/itcms/__renew local.tee $2 i32.store local.get $2 if - local.get $0 + local.get $1 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 local.get $1 - i32.store offset=8 local.get $0 + i32.store offset=8 + local.get $1 local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub if @@ -37292,7 +37279,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 3 i32.ne @@ -37304,7 +37291,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 3 @@ -37317,7 +37304,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 4 @@ -37330,7 +37317,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 5 @@ -37377,34 +37364,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 6 call $~lib/typedarray/Int16Array#constructor - local.tee $3 + local.tee $9 i32.store - local.get $3 + local.get $9 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $9 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $9 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $9 i32.const 3 i32.const 4 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $9 i32.const 5 i32.const 5 call $~lib/typedarray/Int16Array#__set @@ -37421,102 +37408,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $9 i32.load offset=8 i32.const 1 i32.shr_u - local.set $5 - local.get $0 + local.set $4 + local.get $1 i32.const 12 i32.const 6 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 1 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store offset=4 - local.get $3 + local.get $9 i32.load offset=4 - local.set $9 + local.set $8 loop $for-loop|0 + local.get $3 local.get $4 - local.get $5 i32.lt_s if - local.get $4 + local.get $3 i32.const 1 i32.shl - local.get $9 + local.get $8 i32.add i32.load16_s - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $4 + local.get $6 local.get $3 + local.get $9 i32.const 4048 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $1 + local.get $0 local.tee $2 i32.const 1 i32.add - local.set $1 + local.set $0 local.get $2 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add - local.get $7 + local.get $6 i32.store16 end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|0 end end - local.get $0 - local.get $6 local.get $1 + local.get $5 + local.get $0 i32.const 1 i32.shl - local.tee $2 + local.tee $0 call $~lib/rt/itcms/__renew - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if - local.get $0 local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $1 local.get $0 - local.get $2 i32.store offset=8 - local.get $0 local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub if @@ -37527,7 +37514,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u @@ -37541,7 +37528,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 3 @@ -37554,7 +37541,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 4 @@ -37567,7 +37554,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 5 @@ -37614,34 +37601,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 6 call $~lib/typedarray/Uint16Array#constructor - local.tee $3 + local.tee $9 i32.store - local.get $3 + local.get $9 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $3 + local.get $9 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $3 + local.get $9 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set - local.get $3 + local.get $9 i32.const 3 i32.const 4 call $~lib/typedarray/Uint16Array#__set - local.get $3 + local.get $9 i32.const 5 i32.const 5 call $~lib/typedarray/Uint16Array#__set @@ -37658,102 +37645,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $9 i32.load offset=8 i32.const 1 i32.shr_u - local.set $5 - local.get $0 + local.set $4 + local.get $1 i32.const 12 i32.const 7 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 1 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store offset=4 - local.get $3 + local.get $9 i32.load offset=4 - local.set $9 + local.set $8 loop $for-loop|0 + local.get $3 local.get $4 - local.get $5 i32.lt_s if - local.get $4 + local.get $3 i32.const 1 i32.shl - local.get $9 + local.get $8 i32.add i32.load16_u - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $4 + local.get $6 local.get $3 + local.get $9 i32.const 4080 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $1 + local.get $0 local.tee $2 i32.const 1 i32.add - local.set $1 + local.set $0 local.get $2 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add - local.get $7 + local.get $6 i32.store16 end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|0 end end - local.get $0 - local.get $6 local.get $1 + local.get $5 + local.get $0 i32.const 1 i32.shl - local.tee $2 + local.tee $0 call $~lib/rt/itcms/__renew - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if - local.get $0 local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $1 local.get $0 - local.get $2 i32.store offset=8 - local.get $0 local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub if @@ -37764,7 +37751,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u @@ -37778,7 +37765,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 3 @@ -37791,7 +37778,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 4 @@ -37804,7 +37791,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 5 @@ -37851,34 +37838,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 6 call $~lib/typedarray/Int32Array#constructor - local.tee $3 + local.tee $9 i32.store - local.get $3 + local.get $9 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $3 + local.get $9 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $3 + local.get $9 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $3 + local.get $9 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $3 + local.get $9 i32.const 5 i32.const 5 call $~lib/typedarray/Int32Array#__set @@ -37895,102 +37882,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $9 i32.load offset=8 i32.const 2 i32.shr_u - local.set $5 - local.get $0 + local.set $4 + local.get $1 i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 2 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store offset=4 - local.get $3 + local.get $9 i32.load offset=4 - local.set $9 + local.set $8 loop $for-loop|0 + local.get $3 local.get $4 - local.get $5 i32.lt_s if - local.get $4 + local.get $3 i32.const 2 i32.shl - local.get $9 + local.get $8 i32.add i32.load - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $4 + local.get $6 local.get $3 + local.get $9 i32.const 4112 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $1 + local.get $0 local.tee $2 i32.const 1 i32.add - local.set $1 + local.set $0 local.get $2 i32.const 2 i32.shl - local.get $6 + local.get $5 i32.add - local.get $7 + local.get $6 i32.store end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|0 end end - local.get $0 - local.get $6 local.get $1 + local.get $5 + local.get $0 i32.const 2 i32.shl - local.tee $2 + local.tee $0 call $~lib/rt/itcms/__renew - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if - local.get $0 local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $1 local.get $0 - local.get $2 i32.store offset=8 - local.get $0 local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub if @@ -38001,7 +37988,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u @@ -38015,7 +38002,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 3 @@ -38028,7 +38015,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 4 @@ -38041,7 +38028,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 5 @@ -38088,34 +38075,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 6 call $~lib/typedarray/Uint32Array#constructor - local.tee $3 + local.tee $9 i32.store - local.get $3 + local.get $9 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $3 + local.get $9 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $3 + local.get $9 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set - local.get $3 + local.get $9 i32.const 3 i32.const 4 call $~lib/typedarray/Uint32Array#__set - local.get $3 + local.get $9 i32.const 5 i32.const 5 call $~lib/typedarray/Uint32Array#__set @@ -38132,102 +38119,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $9 i32.load offset=8 i32.const 2 i32.shr_u - local.set $5 - local.get $0 + local.set $4 + local.get $1 i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 2 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store offset=4 - local.get $3 + local.get $9 i32.load offset=4 - local.set $9 + local.set $8 loop $for-loop|0 + local.get $3 local.get $4 - local.get $5 i32.lt_s if - local.get $4 + local.get $3 i32.const 2 i32.shl - local.get $9 + local.get $8 i32.add i32.load - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $4 + local.get $6 local.get $3 + local.get $9 i32.const 4144 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $1 + local.get $0 local.tee $2 i32.const 1 i32.add - local.set $1 + local.set $0 local.get $2 i32.const 2 i32.shl - local.get $6 + local.get $5 i32.add - local.get $7 + local.get $6 i32.store end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|0 end end - local.get $0 - local.get $6 local.get $1 + local.get $5 + local.get $0 i32.const 2 i32.shl - local.tee $2 + local.tee $0 call $~lib/rt/itcms/__renew - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if - local.get $0 local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $1 local.get $0 - local.get $2 i32.store offset=8 - local.get $0 local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub if @@ -38238,7 +38225,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u @@ -38252,7 +38239,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 3 @@ -38265,7 +38252,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 4 @@ -38278,7 +38265,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 5 @@ -38311,8 +38298,8 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i64) + (local $6 i64) + (local $7 i32) (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer @@ -38325,34 +38312,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 6 call $~lib/typedarray/Int64Array#constructor - local.tee $3 + local.tee $9 i32.store - local.get $3 + local.get $9 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $9 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $9 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $9 i32.const 3 i64.const 4 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $9 i32.const 5 i64.const 5 call $~lib/typedarray/Int64Array#__set @@ -38369,102 +38356,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $9 i32.load offset=8 i32.const 3 i32.shr_u - local.set $5 - local.get $0 + local.set $4 + local.get $1 i32.const 12 i32.const 10 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 3 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store offset=4 - local.get $3 + local.get $9 i32.load offset=4 - local.set $9 + local.set $8 loop $for-loop|0 + local.get $3 local.get $4 - local.get $5 i32.lt_s if - local.get $4 + local.get $3 i32.const 3 i32.shl - local.get $9 + local.get $8 i32.add i64.load - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $4 + local.get $6 local.get $3 + local.get $9 i32.const 4176 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) if - local.get $1 + local.get $0 local.tee $2 i32.const 1 i32.add - local.set $1 + local.set $0 local.get $2 i32.const 3 i32.shl - local.get $6 + local.get $5 i32.add - local.get $7 + local.get $6 i64.store end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|0 end end - local.get $0 - local.get $6 local.get $1 + local.get $5 + local.get $0 i32.const 3 i32.shl - local.tee $2 + local.tee $0 call $~lib/rt/itcms/__renew - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if - local.get $0 local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $1 local.get $0 - local.get $2 i32.store offset=8 - local.get $0 local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub if @@ -38475,7 +38462,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u @@ -38489,7 +38476,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 3 @@ -38502,7 +38489,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 4 @@ -38515,7 +38502,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 5 @@ -38548,8 +38535,8 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i64) + (local $6 i64) + (local $7 i32) (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer @@ -38562,34 +38549,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 6 call $~lib/typedarray/Uint64Array#constructor - local.tee $3 + local.tee $9 i32.store - local.get $3 + local.get $9 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $9 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $9 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $9 i32.const 3 i64.const 4 call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $9 i32.const 5 i64.const 5 call $~lib/typedarray/Uint64Array#__set @@ -38606,102 +38593,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $9 i32.load offset=8 i32.const 3 i32.shr_u - local.set $5 - local.get $0 + local.set $4 + local.get $1 i32.const 12 i32.const 11 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 3 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store offset=4 - local.get $3 + local.get $9 i32.load offset=4 - local.set $9 + local.set $8 loop $for-loop|0 + local.get $3 local.get $4 - local.get $5 i32.lt_s if - local.get $4 + local.get $3 i32.const 3 i32.shl - local.get $9 + local.get $8 i32.add i64.load - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $4 + local.get $6 local.get $3 + local.get $9 i32.const 4208 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) if - local.get $1 + local.get $0 local.tee $2 i32.const 1 i32.add - local.set $1 + local.set $0 local.get $2 i32.const 3 i32.shl - local.get $6 + local.get $5 i32.add - local.get $7 + local.get $6 i64.store end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|0 end end - local.get $0 - local.get $6 local.get $1 + local.get $5 + local.get $0 i32.const 3 i32.shl - local.tee $2 + local.tee $0 call $~lib/rt/itcms/__renew - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if - local.get $0 local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $1 local.get $0 - local.get $2 i32.store offset=8 - local.get $0 local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub if @@ -38712,7 +38699,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u @@ -38726,7 +38713,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 3 @@ -38739,7 +38726,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 4 @@ -38752,7 +38739,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 5 @@ -38785,8 +38772,8 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 f32) + (local $6 f32) + (local $7 i32) (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer @@ -38799,34 +38786,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 6 call $~lib/typedarray/Float32Array#constructor - local.tee $3 + local.tee $9 i32.store - local.get $3 + local.get $9 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $3 + local.get $9 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $3 + local.get $9 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set - local.get $3 + local.get $9 i32.const 3 f32.const 4 call $~lib/typedarray/Float32Array#__set - local.get $3 + local.get $9 i32.const 5 f32.const 5 call $~lib/typedarray/Float32Array#__set @@ -38843,102 +38830,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $9 i32.load offset=8 i32.const 2 i32.shr_u - local.set $5 - local.get $0 + local.set $4 + local.get $1 i32.const 12 i32.const 12 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 2 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store offset=4 - local.get $3 + local.get $9 i32.load offset=4 - local.set $9 + local.set $8 loop $for-loop|0 + local.get $3 local.get $4 - local.get $5 i32.lt_s if - local.get $4 + local.get $3 i32.const 2 i32.shl - local.get $9 + local.get $8 i32.add f32.load - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $4 + local.get $6 local.get $3 + local.get $9 i32.const 4240 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) if - local.get $1 + local.get $0 local.tee $2 i32.const 1 i32.add - local.set $1 + local.set $0 local.get $2 i32.const 2 i32.shl - local.get $6 + local.get $5 i32.add - local.get $7 + local.get $6 f32.store end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|0 end end - local.get $0 - local.get $6 local.get $1 + local.get $5 + local.get $0 i32.const 2 i32.shl - local.tee $2 + local.tee $0 call $~lib/rt/itcms/__renew - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if - local.get $0 local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $1 local.get $0 - local.get $2 i32.store offset=8 - local.get $0 local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub if @@ -38949,7 +38936,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u @@ -38963,7 +38950,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 3 @@ -38976,7 +38963,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 4 @@ -38989,7 +38976,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 5 @@ -39022,8 +39009,8 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 f64) + (local $6 f64) + (local $7 i32) (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer @@ -39036,34 +39023,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 6 call $~lib/typedarray/Float64Array#constructor - local.tee $3 + local.tee $9 i32.store - local.get $3 + local.get $9 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $3 + local.get $9 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $3 + local.get $9 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set - local.get $3 + local.get $9 i32.const 3 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $3 + local.get $9 i32.const 5 f64.const 5 call $~lib/typedarray/Float64Array#__set @@ -39080,102 +39067,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $9 i32.load offset=8 i32.const 3 i32.shr_u - local.set $5 - local.get $0 + local.set $4 + local.get $1 i32.const 12 i32.const 13 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 3 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store offset=4 - local.get $3 + local.get $9 i32.load offset=4 - local.set $9 + local.set $8 loop $for-loop|0 + local.get $3 local.get $4 - local.get $5 i32.lt_s if - local.get $4 + local.get $3 i32.const 3 i32.shl - local.get $9 + local.get $8 i32.add f64.load - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $4 + local.get $6 local.get $3 + local.get $9 i32.const 4272 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) if - local.get $1 + local.get $0 local.tee $2 i32.const 1 i32.add - local.set $1 + local.set $0 local.get $2 i32.const 3 i32.shl - local.get $6 + local.get $5 i32.add - local.get $7 + local.get $6 f64.store end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|0 end end - local.get $0 - local.get $6 local.get $1 + local.get $5 + local.get $0 i32.const 3 i32.shl - local.tee $2 + local.tee $0 call $~lib/rt/itcms/__renew - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if - local.get $0 local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $1 local.get $0 - local.get $2 i32.store offset=8 - local.get $0 local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub if @@ -39186,7 +39173,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u @@ -39200,7 +39187,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 3 @@ -39213,7 +39200,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 4 @@ -39226,7 +39213,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 5 @@ -39712,27 +39699,27 @@ local.get $1 i32.const 7628 i32.load - local.tee $1 - call $~lib/typedarray/Int32Array#constructor local.tee $2 + call $~lib/typedarray/Int32Array#constructor + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 call $~lib/typedarray/Int32Array#constructor - local.tee $3 + local.tee $4 i32.store offset=8 loop $for-loop|0 local.get $0 - local.get $1 + local.get $2 i32.lt_s if - local.get $2 + local.get $3 local.get $0 i32.const 7616 local.get $0 call $~lib/array/Array#__get call $~lib/typedarray/Int32Array#__set - local.get $3 + local.get $4 local.get $0 i32.const 7616 local.get $0 @@ -39747,25 +39734,25 @@ end i32.const 0 local.set $0 - local.get $2 + local.get $3 i32.load offset=4 - local.set $4 - local.get $2 + local.set $5 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $5 + local.tee $1 i32.const 1 i32.gt_u if - local.get $5 + local.get $1 i32.const 1 i32.shr_u local.set $6 - local.get $5 + local.get $1 i32.const 1 i32.sub - local.set $5 + local.set $7 loop $while-continue|0 local.get $0 local.get $6 @@ -39774,24 +39761,24 @@ local.get $0 i32.const 2 i32.shl - local.get $4 + local.get $5 i32.add - local.tee $7 + local.tee $8 i32.load - local.set $8 + local.set $1 + local.get $8 local.get $7 - local.get $5 local.get $0 i32.sub i32.const 2 i32.shl - local.get $4 + local.get $5 i32.add - local.tee $7 + local.tee $8 i32.load i32.store - local.get $7 local.get $8 + local.get $1 i32.store local.get $0 i32.const 1 @@ -39805,14 +39792,14 @@ local.set $0 loop $for-loop|1 local.get $0 - local.get $1 + local.get $2 i32.lt_s if - local.get $2 + local.get $3 local.get $0 call $~lib/typedarray/Int32Array#__get i32.const 7616 - local.get $1 + local.get $2 i32.const 1 i32.sub local.get $0 @@ -39835,55 +39822,55 @@ end end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.const 4 i32.const 8 call $~lib/typedarray/Int32Array#subarray - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=12 i32.const 0 - local.set $1 - local.get $0 + local.set $0 + local.get $2 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 1 i32.gt_u if - local.get $3 + local.get $4 i32.const 1 i32.shr_u local.set $5 - local.get $3 + local.get $4 i32.const 1 i32.sub - local.set $3 + local.set $4 loop $while-continue|01 - local.get $1 + local.get $0 local.get $5 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add local.tee $6 i32.load local.set $7 local.get $6 - local.get $3 - local.get $1 + local.get $4 + local.get $0 i32.sub i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add local.tee $6 i32.load @@ -39891,17 +39878,17 @@ local.get $6 local.get $7 i32.store - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|01 end end end - local.get $0 + local.get $2 i32.store offset=16 - local.get $0 + local.get $2 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 8 @@ -39914,7 +39901,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 7 @@ -39927,7 +39914,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 6 @@ -39940,7 +39927,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 call $~lib/typedarray/Int32Array#__get i32.const 5 @@ -39999,27 +39986,27 @@ local.get $1 i32.const 7628 i32.load - local.tee $1 - call $~lib/typedarray/Uint32Array#constructor local.tee $2 + call $~lib/typedarray/Uint32Array#constructor + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 call $~lib/typedarray/Uint32Array#constructor - local.tee $3 + local.tee $4 i32.store offset=8 loop $for-loop|0 local.get $0 - local.get $1 + local.get $2 i32.lt_s if - local.get $2 + local.get $3 local.get $0 i32.const 7616 local.get $0 call $~lib/array/Array#__get call $~lib/typedarray/Uint32Array#__set - local.get $3 + local.get $4 local.get $0 i32.const 7616 local.get $0 @@ -40034,25 +40021,25 @@ end i32.const 0 local.set $0 - local.get $2 + local.get $3 i32.load offset=4 - local.set $4 - local.get $2 + local.set $5 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $5 + local.tee $1 i32.const 1 i32.gt_u if - local.get $5 + local.get $1 i32.const 1 i32.shr_u local.set $6 - local.get $5 + local.get $1 i32.const 1 i32.sub - local.set $5 + local.set $7 loop $while-continue|0 local.get $0 local.get $6 @@ -40061,24 +40048,24 @@ local.get $0 i32.const 2 i32.shl - local.get $4 + local.get $5 i32.add - local.tee $7 + local.tee $8 i32.load - local.set $8 + local.set $1 + local.get $8 local.get $7 - local.get $5 local.get $0 i32.sub i32.const 2 i32.shl - local.get $4 + local.get $5 i32.add - local.tee $7 + local.tee $8 i32.load i32.store - local.get $7 local.get $8 + local.get $1 i32.store local.get $0 i32.const 1 @@ -40092,14 +40079,14 @@ local.set $0 loop $for-loop|1 local.get $0 - local.get $1 + local.get $2 i32.lt_s if - local.get $2 + local.get $3 local.get $0 call $~lib/typedarray/Uint32Array#__get i32.const 7616 - local.get $1 + local.get $2 i32.const 1 i32.sub local.get $0 @@ -40122,54 +40109,54 @@ end end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.const 8 call $~lib/typedarray/Uint32Array#subarray - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=12 i32.const 0 - local.set $1 - local.get $0 + local.set $0 + local.get $2 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 1 i32.gt_u if - local.get $3 + local.get $4 i32.const 1 i32.shr_u local.set $5 - local.get $3 + local.get $4 i32.const 1 i32.sub - local.set $3 + local.set $4 loop $while-continue|01 - local.get $1 + local.get $0 local.get $5 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add local.tee $6 i32.load local.set $7 local.get $6 - local.get $3 - local.get $1 + local.get $4 + local.get $0 i32.sub i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add local.tee $6 i32.load @@ -40177,17 +40164,17 @@ local.get $6 local.get $7 i32.store - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|01 end end end - local.get $0 + local.get $2 i32.store offset=16 - local.get $0 + local.get $2 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 8 @@ -40200,7 +40187,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 7 @@ -40213,7 +40200,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 6 @@ -40226,7 +40213,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 3 call $~lib/typedarray/Uint32Array#__get i32.const 5 @@ -40246,14 +40233,14 @@ ) (func $std/typedarray/testArrayReverse<~lib/typedarray/Int64Array,i64> (local $0 i32) - (local $1 i32) + (local $1 i64) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i64) + (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -40270,43 +40257,43 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i64.const 0 i64.store offset=8 - local.get $1 + local.get $2 i32.const 0 i32.store offset=16 - local.get $1 + local.get $2 i32.const 7616 i32.store - local.get $1 + local.get $2 i32.const 7628 i32.load - local.tee $1 - call $~lib/typedarray/Int64Array#constructor local.tee $2 + call $~lib/typedarray/Int64Array#constructor + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 call $~lib/typedarray/Int64Array#constructor - local.tee $3 + local.tee $4 i32.store offset=8 loop $for-loop|0 local.get $0 - local.get $1 + local.get $2 i32.lt_s if - local.get $2 + local.get $3 local.get $0 i32.const 7616 local.get $0 call $~lib/array/Array#__get i64.extend_i32_s call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $4 local.get $0 i32.const 7616 local.get $0 @@ -40322,51 +40309,51 @@ end i32.const 0 local.set $0 - local.get $2 + local.get $3 i32.load offset=4 - local.set $4 - local.get $2 + local.set $5 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $5 + local.tee $6 i32.const 1 i32.gt_u if - local.get $5 + local.get $6 i32.const 1 i32.shr_u - local.set $6 - local.get $5 + local.set $7 + local.get $6 i32.const 1 i32.sub - local.set $5 + local.set $6 loop $while-continue|0 local.get $0 - local.get $6 + local.get $7 i32.lt_u if local.get $0 i32.const 3 i32.shl - local.get $4 + local.get $5 i32.add - local.tee $7 + local.tee $8 i64.load - local.set $8 - local.get $7 - local.get $5 + local.set $1 + local.get $8 + local.get $6 local.get $0 i32.sub i32.const 3 i32.shl - local.get $4 + local.get $5 i32.add - local.tee $7 + local.tee $8 i64.load i64.store - local.get $7 local.get $8 + local.get $1 i64.store local.get $0 i32.const 1 @@ -40380,14 +40367,14 @@ local.set $0 loop $for-loop|1 local.get $0 - local.get $1 + local.get $2 i32.lt_s if - local.get $2 + local.get $3 local.get $0 call $~lib/typedarray/Int64Array#__get i32.const 7616 - local.get $1 + local.get $2 i32.const 1 i32.sub local.get $0 @@ -40411,72 +40398,72 @@ end end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.const 8 call $~lib/typedarray/Int64Array#subarray - local.set $0 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=12 i32.const 0 - local.set $1 - local.get $0 + local.set $0 + local.get $3 i32.load offset=4 - local.set $2 - local.get $0 + local.set $4 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $5 i32.const 1 i32.gt_u if - local.get $3 + local.get $5 i32.const 1 i32.shr_u - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 1 i32.sub - local.set $3 + local.set $5 loop $while-continue|01 - local.get $1 - local.get $5 + local.get $0 + local.get $6 i32.lt_u if - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add - local.tee $6 + local.tee $7 i64.load - local.set $8 - local.get $6 - local.get $3 - local.get $1 + local.set $1 + local.get $7 + local.get $5 + local.get $0 i32.sub i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add - local.tee $6 + local.tee $7 i64.load i64.store - local.get $6 - local.get $8 - i64.store + local.get $7 local.get $1 + i64.store + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|01 end end end - local.get $0 + local.get $3 i32.store offset=16 - local.get $0 + local.get $3 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 8 @@ -40489,7 +40476,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 7 @@ -40502,7 +40489,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 6 @@ -40515,7 +40502,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 3 call $~lib/typedarray/Int64Array#__get i64.const 5 @@ -40535,14 +40522,14 @@ ) (func $std/typedarray/testArrayReverse<~lib/typedarray/Uint64Array,u64> (local $0 i32) - (local $1 i32) + (local $1 i64) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i64) + (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -40559,43 +40546,43 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i64.const 0 i64.store offset=8 - local.get $1 + local.get $2 i32.const 0 i32.store offset=16 - local.get $1 + local.get $2 i32.const 7616 i32.store - local.get $1 + local.get $2 i32.const 7628 i32.load - local.tee $1 - call $~lib/typedarray/Uint64Array#constructor local.tee $2 + call $~lib/typedarray/Uint64Array#constructor + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 call $~lib/typedarray/Uint64Array#constructor - local.tee $3 + local.tee $4 i32.store offset=8 loop $for-loop|0 local.get $0 - local.get $1 + local.get $2 i32.lt_s if - local.get $2 + local.get $3 local.get $0 i32.const 7616 local.get $0 call $~lib/array/Array#__get i64.extend_i32_s call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $4 local.get $0 i32.const 7616 local.get $0 @@ -40611,51 +40598,51 @@ end i32.const 0 local.set $0 - local.get $2 + local.get $3 i32.load offset=4 - local.set $4 - local.get $2 + local.set $5 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $5 + local.tee $6 i32.const 1 i32.gt_u if - local.get $5 + local.get $6 i32.const 1 i32.shr_u - local.set $6 - local.get $5 + local.set $7 + local.get $6 i32.const 1 i32.sub - local.set $5 + local.set $6 loop $while-continue|0 local.get $0 - local.get $6 + local.get $7 i32.lt_u if local.get $0 i32.const 3 i32.shl - local.get $4 + local.get $5 i32.add - local.tee $7 + local.tee $8 i64.load - local.set $8 - local.get $7 - local.get $5 + local.set $1 + local.get $8 + local.get $6 local.get $0 i32.sub i32.const 3 i32.shl - local.get $4 + local.get $5 i32.add - local.tee $7 + local.tee $8 i64.load i64.store - local.get $7 local.get $8 + local.get $1 i64.store local.get $0 i32.const 1 @@ -40669,14 +40656,14 @@ local.set $0 loop $for-loop|1 local.get $0 - local.get $1 + local.get $2 i32.lt_s if - local.get $2 + local.get $3 local.get $0 call $~lib/typedarray/Uint64Array#__get i32.const 7616 - local.get $1 + local.get $2 i32.const 1 i32.sub local.get $0 @@ -40700,72 +40687,72 @@ end end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.const 8 call $~lib/typedarray/Uint64Array#subarray - local.set $0 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=12 i32.const 0 - local.set $1 - local.get $0 + local.set $0 + local.get $3 i32.load offset=4 - local.set $2 - local.get $0 + local.set $4 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $5 i32.const 1 i32.gt_u if - local.get $3 + local.get $5 i32.const 1 i32.shr_u - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 1 i32.sub - local.set $3 + local.set $5 loop $while-continue|01 - local.get $1 - local.get $5 + local.get $0 + local.get $6 i32.lt_u if - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add - local.tee $6 + local.tee $7 i64.load - local.set $8 - local.get $6 - local.get $3 - local.get $1 + local.set $1 + local.get $7 + local.get $5 + local.get $0 i32.sub i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add - local.tee $6 + local.tee $7 i64.load i64.store - local.get $6 - local.get $8 - i64.store + local.get $7 local.get $1 + i64.store + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|01 end end end - local.get $0 + local.get $3 i32.store offset=16 - local.get $0 + local.get $3 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 8 @@ -40778,7 +40765,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 7 @@ -40791,7 +40778,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 6 @@ -40804,7 +40791,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 3 call $~lib/typedarray/Uint64Array#__get i64.const 5 @@ -40824,14 +40811,14 @@ ) (func $std/typedarray/testArrayReverse<~lib/typedarray/Float32Array,f32> (local $0 i32) - (local $1 i32) + (local $1 f32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 f32) + (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -40848,43 +40835,43 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i64.const 0 i64.store offset=8 - local.get $1 + local.get $2 i32.const 0 i32.store offset=16 - local.get $1 + local.get $2 i32.const 7616 i32.store - local.get $1 + local.get $2 i32.const 7628 i32.load - local.tee $1 - call $~lib/typedarray/Float32Array#constructor local.tee $2 + call $~lib/typedarray/Float32Array#constructor + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 call $~lib/typedarray/Float32Array#constructor - local.tee $3 + local.tee $4 i32.store offset=8 loop $for-loop|0 local.get $0 - local.get $1 + local.get $2 i32.lt_s if - local.get $2 + local.get $3 local.get $0 i32.const 7616 local.get $0 call $~lib/array/Array#__get f32.convert_i32_s call $~lib/typedarray/Float32Array#__set - local.get $3 + local.get $4 local.get $0 i32.const 7616 local.get $0 @@ -40900,51 +40887,51 @@ end i32.const 0 local.set $0 - local.get $2 + local.get $3 i32.load offset=4 - local.set $4 - local.get $2 + local.set $5 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $5 + local.tee $6 i32.const 1 i32.gt_u if - local.get $5 + local.get $6 i32.const 1 i32.shr_u - local.set $6 - local.get $5 + local.set $7 + local.get $6 i32.const 1 i32.sub - local.set $5 + local.set $6 loop $while-continue|0 local.get $0 - local.get $6 + local.get $7 i32.lt_u if local.get $0 i32.const 2 i32.shl - local.get $4 + local.get $5 i32.add - local.tee $7 + local.tee $8 f32.load - local.set $8 - local.get $7 - local.get $5 + local.set $1 + local.get $8 + local.get $6 local.get $0 i32.sub i32.const 2 i32.shl - local.get $4 + local.get $5 i32.add - local.tee $7 + local.tee $8 f32.load f32.store - local.get $7 local.get $8 + local.get $1 f32.store local.get $0 i32.const 1 @@ -40958,14 +40945,14 @@ local.set $0 loop $for-loop|1 local.get $0 - local.get $1 + local.get $2 i32.lt_s if - local.get $2 + local.get $3 local.get $0 call $~lib/typedarray/Float32Array#__get i32.const 7616 - local.get $1 + local.get $2 i32.const 1 i32.sub local.get $0 @@ -40989,72 +40976,72 @@ end end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.const 8 call $~lib/typedarray/Float32Array#subarray - local.set $0 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=12 i32.const 0 - local.set $1 - local.get $0 + local.set $0 + local.get $3 i32.load offset=4 - local.set $2 - local.get $0 + local.set $4 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $5 i32.const 1 i32.gt_u if - local.get $3 + local.get $5 i32.const 1 i32.shr_u - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 1 i32.sub - local.set $3 + local.set $5 loop $while-continue|01 - local.get $1 - local.get $5 + local.get $0 + local.get $6 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $4 i32.add - local.tee $6 + local.tee $7 f32.load - local.set $8 - local.get $6 - local.get $3 - local.get $1 + local.set $1 + local.get $7 + local.get $5 + local.get $0 i32.sub i32.const 2 i32.shl - local.get $2 + local.get $4 i32.add - local.tee $6 + local.tee $7 f32.load f32.store - local.get $6 - local.get $8 - f32.store + local.get $7 local.get $1 + f32.store + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|01 end end end - local.get $0 + local.get $3 i32.store offset=16 - local.get $0 + local.get $3 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 8 @@ -41067,7 +41054,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 7 @@ -41080,7 +41067,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 6 @@ -41093,7 +41080,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 3 call $~lib/typedarray/Float32Array#__get f32.const 5 @@ -41113,14 +41100,14 @@ ) (func $std/typedarray/testArrayReverse<~lib/typedarray/Float64Array,f64> (local $0 i32) - (local $1 i32) + (local $1 f64) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 f64) + (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -41137,43 +41124,43 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i64.const 0 i64.store offset=8 - local.get $1 + local.get $2 i32.const 0 i32.store offset=16 - local.get $1 + local.get $2 i32.const 7616 i32.store - local.get $1 + local.get $2 i32.const 7628 i32.load - local.tee $1 - call $~lib/typedarray/Float64Array#constructor local.tee $2 + call $~lib/typedarray/Float64Array#constructor + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 call $~lib/typedarray/Float64Array#constructor - local.tee $3 + local.tee $4 i32.store offset=8 loop $for-loop|0 local.get $0 - local.get $1 + local.get $2 i32.lt_s if - local.get $2 + local.get $3 local.get $0 i32.const 7616 local.get $0 call $~lib/array/Array#__get f64.convert_i32_s call $~lib/typedarray/Float64Array#__set - local.get $3 + local.get $4 local.get $0 i32.const 7616 local.get $0 @@ -41189,51 +41176,51 @@ end i32.const 0 local.set $0 - local.get $2 + local.get $3 i32.load offset=4 - local.set $4 - local.get $2 + local.set $5 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $5 + local.tee $6 i32.const 1 i32.gt_u if - local.get $5 + local.get $6 i32.const 1 i32.shr_u - local.set $6 - local.get $5 + local.set $7 + local.get $6 i32.const 1 i32.sub - local.set $5 + local.set $6 loop $while-continue|0 local.get $0 - local.get $6 + local.get $7 i32.lt_u if local.get $0 i32.const 3 i32.shl - local.get $4 + local.get $5 i32.add - local.tee $7 + local.tee $8 f64.load - local.set $8 - local.get $7 - local.get $5 + local.set $1 + local.get $8 + local.get $6 local.get $0 i32.sub i32.const 3 i32.shl - local.get $4 + local.get $5 i32.add - local.tee $7 + local.tee $8 f64.load f64.store - local.get $7 local.get $8 + local.get $1 f64.store local.get $0 i32.const 1 @@ -41247,14 +41234,14 @@ local.set $0 loop $for-loop|1 local.get $0 - local.get $1 + local.get $2 i32.lt_s if - local.get $2 + local.get $3 local.get $0 call $~lib/typedarray/Float64Array#__get i32.const 7616 - local.get $1 + local.get $2 i32.const 1 i32.sub local.get $0 @@ -41278,73 +41265,73 @@ end end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.const 4 i32.const 8 call $~lib/typedarray/Float64Array#subarray - local.set $0 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=12 i32.const 0 - local.set $1 - local.get $0 + local.set $0 + local.get $3 i32.load offset=4 - local.set $2 - local.get $0 + local.set $4 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $5 i32.const 1 i32.gt_u if - local.get $3 + local.get $5 i32.const 1 i32.shr_u - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 1 i32.sub - local.set $3 + local.set $5 loop $while-continue|01 - local.get $1 - local.get $5 + local.get $0 + local.get $6 i32.lt_u if - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add - local.tee $6 + local.tee $7 f64.load - local.set $8 - local.get $6 - local.get $3 - local.get $1 + local.set $1 + local.get $7 + local.get $5 + local.get $0 i32.sub i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add - local.tee $6 + local.tee $7 f64.load f64.store - local.get $6 - local.get $8 - f64.store + local.get $7 local.get $1 + f64.store + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|01 end end end - local.get $0 + local.get $3 i32.store offset=16 - local.get $0 + local.get $3 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 8 @@ -41357,7 +41344,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 7 @@ -41370,7 +41357,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 6 @@ -41383,7 +41370,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 3 call $~lib/typedarray/Float64Array#__get f64.const 5 @@ -41524,12 +41511,12 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Int8Array> (local $0 i32) (local $1 i32) - (local $2 i32) - (local $3 i32) + (local $2 f32) + (local $3 f64) (local $4 i32) (local $5 i32) - (local $6 f32) - (local $7 f64) + (local $6 i32) + (local $7 i32) (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer @@ -41548,97 +41535,97 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $4 i32.store - local.get $2 + local.get $4 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $4 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $4 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $1 + local.tee $5 i32.store offset=4 - local.get $1 + local.get $5 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $5 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $5 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $5 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $3 + local.tee $1 i32.store offset=8 - local.get $3 + local.get $1 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $1 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $1 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Int8Array#constructor - local.tee $0 + local.tee $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $0 + local.get $6 call $~lib/typedarray/Int8Array#set<~lib/array/Array> i32.const 10 i32.const 0 i32.const 15 i32.const 11312 call $~lib/rt/__newArray - local.set $5 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $7 i32.store offset=16 - local.get $0 - local.get $5 + local.get $6 + local.get $7 call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 block $folding-inner0 - local.get $0 + local.get $6 i32.load offset=8 i32.const 11100 i32.load @@ -41646,11 +41633,11 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 3 i32.add - local.set $5 + local.set $7 i32.const 11092 i32.load local.set $8 @@ -41658,35 +41645,35 @@ i32.load local.set $9 loop $for-loop|0 - local.get $4 + local.get $0 local.get $9 i32.lt_s if - local.get $4 - local.get $5 + local.get $0 + local.get $7 i32.add - local.get $4 + local.get $0 i32.const 2 i32.shl local.get $8 i32.add f32.load - local.tee $6 - local.get $6 + local.tee $2 + local.get $2 f32.sub f32.const 0 f32.eq if (result i32) - local.get $6 + local.get $2 i32.trunc_f32_s else i32.const 0 end i32.store8 - local.get $4 + local.get $0 i32.const 1 i32.add - local.set $4 + local.set $0 br $for-loop|0 end end @@ -41695,34 +41682,34 @@ i32.const 15 i32.const 11392 call $~lib/rt/__newArray - local.set $4 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $4 call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> - local.get $0 - local.get $2 + local.get $6 + local.get $4 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 0 i32.const 15 i32.const 11424 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $2 - local.get $0 + local.set $0 + local.get $6 i32.load offset=8 i32.const 11196 i32.load @@ -41730,47 +41717,47 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 2 i32.add local.set $4 i32.const 11188 i32.load - local.set $5 + local.set $7 i32.const 11196 i32.load local.set $8 loop $for-loop|04 - local.get $2 + local.get $0 local.get $8 i32.lt_s if - local.get $2 + local.get $0 local.get $4 i32.add - local.get $2 + local.get $0 i32.const 3 i32.shl - local.get $5 + local.get $7 i32.add f64.load - local.tee $7 - local.get $7 + local.tee $3 + local.get $3 f64.sub f64.const 0 f64.eq if (result i32) - local.get $7 + local.get $3 i32.trunc_f64_s else i32.const 0 end i32.store8 - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|04 end end @@ -41779,35 +41766,35 @@ i32.const 15 i32.const 11456 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> - local.get $0 - local.get $1 + local.get $6 + local.get $5 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Uint8Array> - local.get $0 - local.get $3 + local.get $6 + local.get $1 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $0 + local.get $6 call $~lib/typedarray/Int8Array#set<~lib/array/Array> i32.const 10 i32.const 0 i32.const 15 i32.const 11488 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -41914,12 +41901,12 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint8Array> (local $0 i32) (local $1 i32) - (local $2 i32) - (local $3 i32) + (local $2 f32) + (local $3 f64) (local $4 i32) (local $5 i32) - (local $6 f32) - (local $7 f64) + (local $6 i32) + (local $7 i32) (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer @@ -41938,97 +41925,97 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $4 i32.store - local.get $2 + local.get $4 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $4 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $4 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $1 + local.tee $5 i32.store offset=4 - local.get $1 + local.get $5 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $5 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $5 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $5 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $3 + local.tee $1 i32.store offset=8 - local.get $3 + local.get $1 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $1 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $1 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint8Array#constructor - local.tee $0 + local.tee $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $0 + local.get $6 call $~lib/typedarray/Int8Array#set<~lib/array/Array> i32.const 10 i32.const 0 i32.const 63 i32.const 11520 call $~lib/rt/__newArray - local.set $5 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $7 i32.store offset=16 - local.get $0 - local.get $5 + local.get $6 + local.get $7 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 block $folding-inner0 - local.get $0 + local.get $6 i32.load offset=8 i32.const 11100 i32.load @@ -42036,11 +42023,11 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 3 i32.add - local.set $5 + local.set $7 i32.const 11092 i32.load local.set $8 @@ -42048,35 +42035,35 @@ i32.load local.set $9 loop $for-loop|0 - local.get $4 + local.get $0 local.get $9 i32.lt_s if - local.get $4 - local.get $5 + local.get $0 + local.get $7 i32.add - local.get $4 + local.get $0 i32.const 2 i32.shl local.get $8 i32.add f32.load - local.tee $6 - local.get $6 + local.tee $2 + local.get $2 f32.sub f32.const 0 f32.eq if (result i32) - local.get $6 + local.get $2 i32.trunc_f32_u else i32.const 0 end i32.store8 - local.get $4 + local.get $0 i32.const 1 i32.add - local.set $4 + local.set $0 br $for-loop|0 end end @@ -42085,34 +42072,34 @@ i32.const 63 i32.const 11600 call $~lib/rt/__newArray - local.set $4 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $4 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> - local.get $0 - local.get $2 + local.get $6 + local.get $4 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 0 i32.const 63 i32.const 11632 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $2 - local.get $0 + local.set $0 + local.get $6 i32.load offset=8 i32.const 11196 i32.load @@ -42120,47 +42107,47 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 2 i32.add local.set $4 i32.const 11188 i32.load - local.set $5 + local.set $7 i32.const 11196 i32.load local.set $8 loop $for-loop|04 - local.get $2 + local.get $0 local.get $8 i32.lt_s if - local.get $2 + local.get $0 local.get $4 i32.add - local.get $2 + local.get $0 i32.const 3 i32.shl - local.get $5 + local.get $7 i32.add f64.load - local.tee $7 - local.get $7 + local.tee $3 + local.get $3 f64.sub f64.const 0 f64.eq if (result i32) - local.get $7 + local.get $3 i32.trunc_f64_u else i32.const 0 end i32.store8 - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|04 end end @@ -42169,35 +42156,35 @@ i32.const 63 i32.const 11664 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> - local.get $0 - local.get $1 + local.get $6 + local.get $5 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Uint8Array> - local.get $0 - local.get $3 + local.get $6 + local.get $1 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $0 + local.get $6 call $~lib/typedarray/Int8Array#set<~lib/array/Array> i32.const 10 i32.const 0 i32.const 63 i32.const 11696 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -42303,13 +42290,13 @@ ) (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint8ClampedArray> (local $0 i32) - (local $1 i32) - (local $2 i32) + (local $1 f32) + (local $2 f64) (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 f32) - (local $7 f64) + (local $6 i32) + (local $7 i32) (local $8 i32) (local $9 i32) (local $10 i32) @@ -42329,16 +42316,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i64.const 0 i64.store - local.get $1 + local.get $3 i64.const 0 i64.store offset=8 - local.get $1 + local.get $3 i32.const 0 i32.store offset=16 - local.get $1 + local.get $3 i32.const 3 call $~lib/typedarray/Int64Array#constructor local.tee $3 @@ -42358,45 +42345,45 @@ global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $2 + local.tee $4 i32.store offset=4 - local.get $2 + local.get $4 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $4 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $4 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $4 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $5 i32.store offset=8 - local.get $4 + local.get $5 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $5 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $5 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $1 + local.tee $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 @@ -42404,41 +42391,41 @@ block $folding-inner0 i32.const 11020 i32.load - local.get $1 + local.get $6 i32.load offset=8 i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $6 i32.load offset=4 - local.set $8 + local.set $7 i32.const 11012 i32.load - local.set $9 + local.set $8 i32.const 11020 i32.load - local.set $10 + local.set $9 loop $for-loop|0 local.get $0 - local.get $10 + local.get $9 i32.lt_s if local.get $0 - local.get $8 + local.get $7 i32.add i32.const 255 local.get $0 i32.const 2 i32.shl - local.get $9 + local.get $8 i32.add i32.load - local.tee $5 + local.tee $10 i32.sub i32.const 31 i32.shr_s - local.get $5 + local.get $10 i32.or - local.get $5 + local.get $10 i32.const 31 i32.shr_s i32.const -1 @@ -42461,7 +42448,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $1 + local.get $6 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> global.get $~lib/memory/__stack_pointer @@ -42469,7 +42456,7 @@ i32.store offset=16 i32.const 0 local.set $0 - local.get $1 + local.get $6 i32.load offset=8 i32.const 11100 i32.load @@ -42477,11 +42464,11 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $1 + local.get $6 i32.load offset=4 i32.const 3 i32.add - local.set $5 + local.set $7 i32.const 11092 i32.load local.set $8 @@ -42494,7 +42481,7 @@ i32.lt_s if local.get $0 - local.get $5 + local.get $7 i32.add local.get $0 i32.const 2 @@ -42502,15 +42489,15 @@ local.get $8 i32.add f32.load - local.tee $6 - local.get $6 + local.tee $1 + local.get $1 f32.sub f32.const 0 f32.eq if (result i32) f32.const 0 f32.const 255 - local.get $6 + local.get $1 f32.min f32.max i32.trunc_f32_u @@ -42534,10 +42521,10 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $1 + local.get $6 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> - local.get $1 + local.get $6 local.get $3 i32.const 6 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int64Array> @@ -42550,7 +42537,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $1 + local.get $6 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> global.get $~lib/memory/__stack_pointer @@ -42558,7 +42545,7 @@ i32.store offset=16 i32.const 0 local.set $0 - local.get $1 + local.get $6 i32.load offset=8 i32.const 11196 i32.load @@ -42566,14 +42553,14 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $1 + local.get $6 i32.load offset=4 i32.const 2 i32.add local.set $3 i32.const 11188 i32.load - local.set $5 + local.set $7 i32.const 11196 i32.load local.set $8 @@ -42588,18 +42575,18 @@ local.get $0 i32.const 3 i32.shl - local.get $5 + local.get $7 i32.add f64.load - local.tee $7 - local.get $7 + local.tee $2 + local.get $2 f64.sub f64.const 0 f64.eq if (result i32) f64.const 0 f64.const 255 - local.get $7 + local.get $2 f64.min f64.max i32.trunc_f64_u @@ -42623,14 +42610,14 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $1 + local.get $6 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> - local.get $1 - local.get $2 - call $~lib/typedarray/Int8Array#set<~lib/typedarray/Uint8Array> - local.get $1 + local.get $6 local.get $4 + call $~lib/typedarray/Int8Array#set<~lib/typedarray/Uint8Array> + local.get $6 + local.get $5 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer @@ -42638,7 +42625,7 @@ i32.store offset=16 i32.const 0 local.set $0 - local.get $1 + local.get $6 i32.load offset=8 i32.const 11276 i32.load @@ -42646,7 +42633,7 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $1 + local.get $6 i32.load offset=4 i32.const 7 i32.add @@ -42670,13 +42657,13 @@ local.get $4 i32.add i32.load8_s - local.tee $2 + local.tee $7 i32.sub i32.const 31 i32.shr_s - local.get $2 + local.get $7 i32.or - local.get $2 + local.get $7 i32.const 31 i32.shr_s i32.const -1 @@ -42699,7 +42686,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $1 + local.get $6 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> global.get $~lib/memory/__stack_pointer @@ -42762,18 +42749,18 @@ local.get $2 i32.const 1 i32.shl - local.tee $4 + local.tee $5 local.get $0 i32.load offset=4 i32.add i32.load16_s - local.tee $5 + local.tee $4 local.get $1 i32.load offset=4 - local.get $4 + local.get $5 i32.add i32.load16_s - local.tee $4 + local.tee $5 i32.ne if global.get $~lib/memory/__stack_pointer @@ -42783,10 +42770,10 @@ i32.const 3 local.get $2 f64.convert_i32_s - local.get $5 - f64.convert_i32_s local.get $4 f64.convert_i32_s + local.get $5 + f64.convert_i32_s f64.const 0 f64.const 0 call $~lib/builtins/trace @@ -42812,12 +42799,12 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Int16Array> (local $0 i32) (local $1 i32) - (local $2 i32) - (local $3 i32) + (local $2 f32) + (local $3 f64) (local $4 i32) (local $5 i32) - (local $6 f32) - (local $7 f64) + (local $6 i32) + (local $7 i32) (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer @@ -42836,91 +42823,91 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $4 i32.store - local.get $2 + local.get $4 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $4 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $4 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $1 + local.tee $5 i32.store offset=4 - local.get $1 + local.get $5 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $5 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $5 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $5 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $3 + local.tee $1 i32.store offset=8 - local.get $3 + local.get $1 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $1 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $1 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Int16Array#constructor - local.tee $0 + local.tee $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $0 + local.get $6 call $~lib/typedarray/Int16Array#set<~lib/array/Array> i32.const 10 i32.const 1 i32.const 64 i32.const 11952 call $~lib/rt/__newArray - local.set $5 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $7 i32.store offset=16 - local.get $0 - local.get $5 + local.get $6 + local.get $7 call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11088 @@ -42930,17 +42917,17 @@ i32.load i32.const 3 i32.add - local.get $0 + local.get $6 i32.load offset=8 i32.const 1 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 6 i32.add - local.set $5 + local.set $7 i32.const 11092 i32.load local.set $8 @@ -42948,37 +42935,37 @@ i32.load local.set $9 loop $for-loop|0 - local.get $4 + local.get $0 local.get $9 i32.lt_s if - local.get $4 + local.get $0 i32.const 1 i32.shl - local.get $5 + local.get $7 i32.add - local.get $4 + local.get $0 i32.const 2 i32.shl local.get $8 i32.add f32.load - local.tee $6 - local.get $6 + local.tee $2 + local.get $2 f32.sub f32.const 0 f32.eq if (result i32) - local.get $6 + local.get $2 i32.trunc_f32_s else i32.const 0 end i32.store16 - local.get $4 + local.get $0 i32.const 1 i32.add - local.set $4 + local.set $0 br $for-loop|0 end end @@ -42987,86 +42974,86 @@ i32.const 64 i32.const 12048 call $~lib/rt/__newArray - local.set $4 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $4 call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> - local.get $0 - local.get $2 + local.get $6 + local.get $4 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 1 i32.const 64 i32.const 12096 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $2 + local.set $0 i32.const 11196 i32.load i32.const 2 i32.add - local.get $0 + local.get $6 i32.load offset=8 i32.const 1 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 4 i32.add local.set $4 i32.const 11188 i32.load - local.set $5 + local.set $7 i32.const 11196 i32.load local.set $8 loop $for-loop|04 - local.get $2 + local.get $0 local.get $8 i32.lt_s if - local.get $2 + local.get $0 i32.const 1 i32.shl local.get $4 i32.add - local.get $2 + local.get $0 i32.const 3 i32.shl - local.get $5 + local.get $7 i32.add f64.load - local.tee $7 - local.get $7 + local.tee $3 + local.get $3 f64.sub f64.const 0 f64.eq if (result i32) - local.get $7 + local.get $3 i32.trunc_f64_s else i32.const 0 end i32.store16 - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|04 end end @@ -43075,35 +43062,35 @@ i32.const 64 i32.const 12144 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> - local.get $0 - local.get $1 + local.get $6 + local.get $5 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Uint8Array> - local.get $0 - local.get $3 + local.get $6 + local.get $1 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $0 + local.get $6 call $~lib/typedarray/Int16Array#set<~lib/array/Array> i32.const 10 i32.const 1 i32.const 64 i32.const 12192 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -43165,18 +43152,18 @@ local.get $2 i32.const 1 i32.shl - local.tee $4 + local.tee $5 local.get $0 i32.load offset=4 i32.add i32.load16_u - local.tee $5 + local.tee $4 local.get $1 i32.load offset=4 - local.get $4 + local.get $5 i32.add i32.load16_u - local.tee $4 + local.tee $5 i32.ne if global.get $~lib/memory/__stack_pointer @@ -43186,10 +43173,10 @@ i32.const 3 local.get $2 f64.convert_i32_s - local.get $5 - f64.convert_i32_u local.get $4 f64.convert_i32_u + local.get $5 + f64.convert_i32_u f64.const 0 f64.const 0 call $~lib/builtins/trace @@ -43215,12 +43202,12 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint16Array> (local $0 i32) (local $1 i32) - (local $2 i32) - (local $3 i32) + (local $2 f32) + (local $3 f64) (local $4 i32) (local $5 i32) - (local $6 f32) - (local $7 f64) + (local $6 i32) + (local $7 i32) (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer @@ -43239,91 +43226,91 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $4 i32.store - local.get $2 + local.get $4 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $4 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $4 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $1 + local.tee $5 i32.store offset=4 - local.get $1 + local.get $5 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $5 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $5 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $5 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $3 + local.tee $1 i32.store offset=8 - local.get $3 + local.get $1 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $1 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $1 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint16Array#constructor - local.tee $0 + local.tee $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $0 + local.get $6 call $~lib/typedarray/Int16Array#set<~lib/array/Array> i32.const 10 i32.const 1 i32.const 65 i32.const 12240 call $~lib/rt/__newArray - local.set $5 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $7 i32.store offset=16 - local.get $0 - local.get $5 + local.get $6 + local.get $7 call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> global.get $~lib/memory/__stack_pointer i32.const 11088 @@ -43333,17 +43320,17 @@ i32.load i32.const 3 i32.add - local.get $0 + local.get $6 i32.load offset=8 i32.const 1 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 6 i32.add - local.set $5 + local.set $7 i32.const 11092 i32.load local.set $8 @@ -43351,37 +43338,37 @@ i32.load local.set $9 loop $for-loop|0 - local.get $4 + local.get $0 local.get $9 i32.lt_s if - local.get $4 + local.get $0 i32.const 1 i32.shl - local.get $5 + local.get $7 i32.add - local.get $4 + local.get $0 i32.const 2 i32.shl local.get $8 i32.add f32.load - local.tee $6 - local.get $6 + local.tee $2 + local.get $2 f32.sub f32.const 0 f32.eq if (result i32) - local.get $6 + local.get $2 i32.trunc_f32_u else i32.const 0 end i32.store16 - local.get $4 + local.get $0 i32.const 1 i32.add - local.set $4 + local.set $0 br $for-loop|0 end end @@ -43390,86 +43377,86 @@ i32.const 65 i32.const 12336 call $~lib/rt/__newArray - local.set $4 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $4 call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> - local.get $0 - local.get $2 + local.get $6 + local.get $4 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 1 i32.const 65 i32.const 12384 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $2 + local.set $0 i32.const 11196 i32.load i32.const 2 i32.add - local.get $0 + local.get $6 i32.load offset=8 i32.const 1 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 4 i32.add local.set $4 i32.const 11188 i32.load - local.set $5 + local.set $7 i32.const 11196 i32.load local.set $8 loop $for-loop|04 - local.get $2 + local.get $0 local.get $8 i32.lt_s if - local.get $2 + local.get $0 i32.const 1 i32.shl local.get $4 i32.add - local.get $2 + local.get $0 i32.const 3 i32.shl - local.get $5 + local.get $7 i32.add f64.load - local.tee $7 - local.get $7 + local.tee $3 + local.get $3 f64.sub f64.const 0 f64.eq if (result i32) - local.get $7 + local.get $3 i32.trunc_f64_u else i32.const 0 end i32.store16 - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|04 end end @@ -43478,35 +43465,35 @@ i32.const 65 i32.const 12432 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> - local.get $0 - local.get $1 + local.get $6 + local.get $5 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Uint8Array> - local.get $0 - local.get $3 + local.get $6 + local.get $1 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $0 + local.get $6 call $~lib/typedarray/Int16Array#set<~lib/array/Array> i32.const 10 i32.const 1 i32.const 65 i32.const 12480 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -43568,18 +43555,18 @@ local.get $2 i32.const 2 i32.shl - local.tee $4 + local.tee $5 local.get $0 i32.load offset=4 i32.add i32.load - local.tee $5 + local.tee $4 local.get $1 i32.load offset=4 - local.get $4 + local.get $5 i32.add i32.load - local.tee $4 + local.tee $5 i32.ne if global.get $~lib/memory/__stack_pointer @@ -43589,10 +43576,10 @@ i32.const 3 local.get $2 f64.convert_i32_s - local.get $5 - f64.convert_i32_s local.get $4 f64.convert_i32_s + local.get $5 + f64.convert_i32_s f64.const 0 f64.const 0 call $~lib/builtins/trace @@ -43618,12 +43605,12 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Int32Array> (local $0 i32) (local $1 i32) - (local $2 i32) - (local $3 i32) + (local $2 f32) + (local $3 f64) (local $4 i32) - (local $5 f32) + (local $5 i32) (local $6 i32) - (local $7 f64) + (local $7 i32) (local $8 i32) (local $9 i32) (local $10 i32) @@ -43643,79 +43630,79 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $5 i32.store - local.get $2 + local.get $5 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $5 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $5 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $1 + local.tee $6 i32.store offset=4 - local.get $1 + local.get $6 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $6 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $6 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $6 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $3 + local.tee $1 i32.store offset=8 - local.get $3 + local.get $1 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $1 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $1 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Int32Array#constructor - local.tee $0 + local.tee $7 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $0 + local.get $7 i32.const 11008 i32.const 0 call $~lib/typedarray/Int32Array#set<~lib/array/Array> @@ -43724,12 +43711,12 @@ i32.const 16 i32.const 12528 call $~lib/rt/__newArray - local.set $6 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.store offset=16 - local.get $0 - local.get $6 + local.get $7 + local.get $4 call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> global.get $~lib/memory/__stack_pointer i32.const 11088 @@ -43739,55 +43726,55 @@ i32.load i32.const 3 i32.add - local.get $0 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $7 i32.load offset=4 i32.const 12 i32.add - local.set $6 + local.set $8 i32.const 11092 i32.load - local.set $8 + local.set $9 i32.const 11100 i32.load - local.set $9 + local.set $4 loop $for-loop|0 + local.get $0 local.get $4 - local.get $9 i32.lt_s if - local.get $8 - local.get $4 + local.get $9 + local.get $0 i32.const 2 i32.shl local.tee $10 i32.add f32.load - local.set $5 - local.get $6 + local.set $2 + local.get $8 local.get $10 i32.add - local.get $5 - local.get $5 + local.get $2 + local.get $2 f32.sub f32.const 0 f32.eq if (result i32) - local.get $5 + local.get $2 i32.trunc_f32_s else i32.const 0 end i32.store - local.get $4 + local.get $0 i32.const 1 i32.add - local.set $4 + local.set $0 br $for-loop|0 end end @@ -43796,86 +43783,86 @@ i32.const 16 i32.const 12640 call $~lib/rt/__newArray - local.set $4 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $0 i32.store offset=16 + local.get $7 local.get $0 - local.get $4 call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> - local.get $0 - local.get $2 + local.get $7 + local.get $5 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 2 i32.const 16 i32.const 12704 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 + local.get $7 local.get $0 - local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $2 + local.set $0 i32.const 11196 i32.load i32.const 2 i32.add - local.get $0 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $7 i32.load offset=4 i32.const 8 i32.add local.set $4 i32.const 11188 i32.load - local.set $6 + local.set $5 i32.const 11196 i32.load local.set $8 loop $for-loop|04 - local.get $2 + local.get $0 local.get $8 i32.lt_s if - local.get $2 + local.get $0 i32.const 2 i32.shl local.get $4 i32.add - local.get $2 + local.get $0 i32.const 3 i32.shl - local.get $6 + local.get $5 i32.add f64.load - local.tee $7 - local.get $7 + local.tee $3 + local.get $3 f64.sub f64.const 0 f64.eq if (result i32) - local.get $7 + local.get $3 i32.trunc_f64_s else i32.const 0 end i32.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|04 end end @@ -43884,35 +43871,35 @@ i32.const 16 i32.const 12768 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 + local.get $7 local.get $0 - local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> - local.get $0 - local.get $1 + local.get $7 + local.get $6 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Uint8Array> - local.get $0 - local.get $3 + local.get $7 + local.get $1 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $0 + local.get $7 call $~lib/typedarray/Int32Array#set<~lib/array/Array> i32.const 10 i32.const 2 i32.const 16 i32.const 12832 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $7 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -43974,18 +43961,18 @@ local.get $2 i32.const 2 i32.shl - local.tee $4 + local.tee $5 local.get $0 i32.load offset=4 i32.add i32.load - local.tee $5 + local.tee $4 local.get $1 i32.load offset=4 - local.get $4 + local.get $5 i32.add i32.load - local.tee $4 + local.tee $5 i32.ne if global.get $~lib/memory/__stack_pointer @@ -43995,10 +43982,10 @@ i32.const 3 local.get $2 f64.convert_i32_s - local.get $5 - f64.convert_i32_u local.get $4 f64.convert_i32_u + local.get $5 + f64.convert_i32_u f64.const 0 f64.const 0 call $~lib/builtins/trace @@ -44024,12 +44011,12 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint32Array> (local $0 i32) (local $1 i32) - (local $2 i32) - (local $3 i32) + (local $2 f32) + (local $3 f64) (local $4 i32) - (local $5 f32) + (local $5 i32) (local $6 i32) - (local $7 f64) + (local $7 i32) (local $8 i32) (local $9 i32) (local $10 i32) @@ -44049,79 +44036,79 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $5 i32.store - local.get $2 + local.get $5 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $5 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $5 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $1 + local.tee $6 i32.store offset=4 - local.get $1 + local.get $6 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $6 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $6 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $6 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $3 + local.tee $1 i32.store offset=8 - local.get $3 + local.get $1 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $1 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $1 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint32Array#constructor - local.tee $0 + local.tee $7 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $0 + local.get $7 i32.const 11008 i32.const 0 call $~lib/typedarray/Int32Array#set<~lib/array/Array> @@ -44130,12 +44117,12 @@ i32.const 66 i32.const 12896 call $~lib/rt/__newArray - local.set $6 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.store offset=16 - local.get $0 - local.get $6 + local.get $7 + local.get $4 call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> global.get $~lib/memory/__stack_pointer i32.const 11088 @@ -44145,55 +44132,55 @@ i32.load i32.const 3 i32.add - local.get $0 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $7 i32.load offset=4 i32.const 12 i32.add - local.set $6 + local.set $8 i32.const 11092 i32.load - local.set $8 + local.set $9 i32.const 11100 i32.load - local.set $9 + local.set $4 loop $for-loop|0 + local.get $0 local.get $4 - local.get $9 i32.lt_s if - local.get $8 - local.get $4 + local.get $9 + local.get $0 i32.const 2 i32.shl local.tee $10 i32.add f32.load - local.set $5 - local.get $6 + local.set $2 + local.get $8 local.get $10 i32.add - local.get $5 - local.get $5 + local.get $2 + local.get $2 f32.sub f32.const 0 f32.eq if (result i32) - local.get $5 + local.get $2 i32.trunc_f32_u else i32.const 0 end i32.store - local.get $4 + local.get $0 i32.const 1 i32.add - local.set $4 + local.set $0 br $for-loop|0 end end @@ -44202,86 +44189,86 @@ i32.const 66 i32.const 13008 call $~lib/rt/__newArray - local.set $4 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $0 i32.store offset=16 + local.get $7 local.get $0 - local.get $4 call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> - local.get $0 - local.get $2 + local.get $7 + local.get $5 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 2 i32.const 66 i32.const 13072 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 + local.get $7 local.get $0 - local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $2 + local.set $0 i32.const 11196 i32.load i32.const 2 i32.add - local.get $0 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $7 i32.load offset=4 i32.const 8 i32.add local.set $4 i32.const 11188 i32.load - local.set $6 + local.set $5 i32.const 11196 i32.load local.set $8 loop $for-loop|04 - local.get $2 + local.get $0 local.get $8 i32.lt_s if - local.get $2 + local.get $0 i32.const 2 i32.shl local.get $4 i32.add - local.get $2 + local.get $0 i32.const 3 i32.shl - local.get $6 + local.get $5 i32.add f64.load - local.tee $7 - local.get $7 + local.tee $3 + local.get $3 f64.sub f64.const 0 f64.eq if (result i32) - local.get $7 + local.get $3 i32.trunc_f64_u else i32.const 0 end i32.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|04 end end @@ -44290,35 +44277,35 @@ i32.const 66 i32.const 13136 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 + local.get $7 local.get $0 - local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> - local.get $0 - local.get $1 + local.get $7 + local.get $6 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Uint8Array> - local.get $0 - local.get $3 + local.get $7 + local.get $1 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $0 + local.get $7 call $~lib/typedarray/Int32Array#set<~lib/array/Array> i32.const 10 i32.const 2 i32.const 66 i32.const 13200 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $7 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -44431,12 +44418,12 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Int64Array> (local $0 i32) (local $1 i32) - (local $2 i32) - (local $3 i32) + (local $2 f64) + (local $3 f32) (local $4 i32) - (local $5 f64) + (local $5 i32) (local $6 i32) - (local $7 f32) + (local $7 i32) (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer @@ -44455,91 +44442,91 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $4 i32.store - local.get $2 + local.get $4 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $4 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $4 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $1 + local.tee $5 i32.store offset=4 - local.get $1 + local.get $5 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $5 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $5 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $5 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $3 + local.tee $1 i32.store offset=8 - local.get $3 + local.get $1 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $1 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $1 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Int64Array#constructor - local.tee $0 + local.tee $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $0 + local.get $6 call $~lib/typedarray/Int64Array#set<~lib/array/Array> i32.const 10 i32.const 3 i32.const 67 i32.const 13264 call $~lib/rt/__newArray - local.set $6 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $7 i32.store offset=16 - local.get $0 local.get $6 + local.get $7 call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> global.get $~lib/memory/__stack_pointer i32.const 11088 @@ -44549,17 +44536,17 @@ i32.load i32.const 3 i32.add - local.get $0 + local.get $6 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 24 i32.add - local.set $6 + local.set $7 i32.const 11092 i32.load local.set $8 @@ -44567,37 +44554,37 @@ i32.load local.set $9 loop $for-loop|0 - local.get $4 + local.get $0 local.get $9 i32.lt_s if - local.get $4 + local.get $0 i32.const 3 i32.shl - local.get $6 + local.get $7 i32.add - local.get $4 + local.get $0 i32.const 2 i32.shl local.get $8 i32.add f32.load - local.tee $7 - local.get $7 + local.tee $3 + local.get $3 f32.sub f32.const 0 f32.eq if (result i64) - local.get $7 + local.get $3 i64.trunc_f32_s else i64.const 0 end i64.store - local.get $4 + local.get $0 i32.const 1 i32.add - local.set $4 + local.set $0 br $for-loop|0 end end @@ -44606,86 +44593,86 @@ i32.const 67 i32.const 13424 call $~lib/rt/__newArray - local.set $4 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $4 call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> - local.get $0 - local.get $2 + local.get $6 + local.get $4 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 3 i32.const 67 i32.const 13536 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $2 + local.set $0 i32.const 11196 i32.load i32.const 2 i32.add - local.get $0 + local.get $6 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 16 i32.add local.set $4 i32.const 11188 i32.load - local.set $6 + local.set $7 i32.const 11196 i32.load local.set $8 loop $for-loop|04 - local.get $2 + local.get $0 local.get $8 i32.lt_s if - local.get $6 - local.get $2 + local.get $7 + local.get $0 i32.const 3 i32.shl local.tee $9 i32.add f64.load - local.set $5 + local.set $2 local.get $4 local.get $9 i32.add - local.get $5 - local.get $5 + local.get $2 + local.get $2 f64.sub f64.const 0 f64.eq if (result i64) - local.get $5 + local.get $2 i64.trunc_f64_s else i64.const 0 end i64.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|04 end end @@ -44694,35 +44681,35 @@ i32.const 67 i32.const 13648 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> - local.get $0 - local.get $1 + local.get $6 + local.get $5 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Uint8Array> - local.get $0 - local.get $3 + local.get $6 + local.get $1 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $0 + local.get $6 call $~lib/typedarray/Int64Array#set<~lib/array/Array> i32.const 10 i32.const 3 i32.const 67 i32.const 13760 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -44835,12 +44822,12 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint64Array> (local $0 i32) (local $1 i32) - (local $2 i32) - (local $3 i32) + (local $2 f64) + (local $3 f32) (local $4 i32) - (local $5 f64) + (local $5 i32) (local $6 i32) - (local $7 f32) + (local $7 i32) (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer @@ -44859,91 +44846,91 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $4 i32.store - local.get $2 + local.get $4 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $4 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $4 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $1 + local.tee $5 i32.store offset=4 - local.get $1 + local.get $5 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $5 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $5 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $5 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $3 + local.tee $1 i32.store offset=8 - local.get $3 + local.get $1 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $1 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $1 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint64Array#constructor - local.tee $0 + local.tee $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $0 + local.get $6 call $~lib/typedarray/Int64Array#set<~lib/array/Array> i32.const 10 i32.const 3 i32.const 68 i32.const 13872 call $~lib/rt/__newArray - local.set $6 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $7 i32.store offset=16 - local.get $0 local.get $6 + local.get $7 call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> global.get $~lib/memory/__stack_pointer i32.const 11088 @@ -44953,17 +44940,17 @@ i32.load i32.const 3 i32.add - local.get $0 + local.get $6 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 24 i32.add - local.set $6 + local.set $7 i32.const 11092 i32.load local.set $8 @@ -44971,37 +44958,37 @@ i32.load local.set $9 loop $for-loop|0 - local.get $4 + local.get $0 local.get $9 i32.lt_s if - local.get $4 + local.get $0 i32.const 3 i32.shl - local.get $6 + local.get $7 i32.add - local.get $4 + local.get $0 i32.const 2 i32.shl local.get $8 i32.add f32.load - local.tee $7 - local.get $7 + local.tee $3 + local.get $3 f32.sub f32.const 0 f32.eq if (result i64) - local.get $7 + local.get $3 i64.trunc_f32_u else i64.const 0 end i64.store - local.get $4 + local.get $0 i32.const 1 i32.add - local.set $4 + local.set $0 br $for-loop|0 end end @@ -45010,86 +44997,86 @@ i32.const 68 i32.const 14032 call $~lib/rt/__newArray - local.set $4 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $4 call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> - local.get $0 - local.get $2 + local.get $6 + local.get $4 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 3 i32.const 68 i32.const 14144 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $2 + local.set $0 i32.const 11196 i32.load i32.const 2 i32.add - local.get $0 + local.get $6 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 16 i32.add local.set $4 i32.const 11188 i32.load - local.set $6 + local.set $7 i32.const 11196 i32.load local.set $8 loop $for-loop|04 - local.get $2 + local.get $0 local.get $8 i32.lt_s if - local.get $6 - local.get $2 + local.get $7 + local.get $0 i32.const 3 i32.shl local.tee $9 i32.add f64.load - local.set $5 + local.set $2 local.get $4 local.get $9 i32.add - local.get $5 - local.get $5 + local.get $2 + local.get $2 f64.sub f64.const 0 f64.eq if (result i64) - local.get $5 + local.get $2 i64.trunc_f64_u else i64.const 0 end i64.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|04 end end @@ -45098,35 +45085,35 @@ i32.const 68 i32.const 14256 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> - local.get $0 - local.get $1 + local.get $6 + local.get $5 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Uint8Array> - local.get $0 - local.get $3 + local.get $6 + local.get $1 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $0 + local.get $6 call $~lib/typedarray/Int64Array#set<~lib/array/Array> i32.const 10 i32.const 3 i32.const 68 i32.const 14368 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -45262,16 +45249,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor local.tee $3 @@ -45291,45 +45278,45 @@ global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $2 + local.tee $4 i32.store offset=4 - local.get $2 + local.get $4 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $4 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $4 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $4 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $5 i32.store offset=8 - local.get $4 + local.get $5 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $5 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $5 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Float32Array#constructor - local.tee $0 + local.tee $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 @@ -45337,42 +45324,42 @@ block $folding-inner0 i32.const 11020 i32.load - local.get $0 + local.get $6 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 - local.set $5 + local.set $7 i32.const 11012 i32.load - local.set $6 + local.set $8 i32.const 11020 i32.load - local.set $7 + local.set $1 loop $for-loop|0 + local.get $0 local.get $1 - local.get $7 i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.tee $8 - local.get $5 + local.tee $2 + local.get $7 i32.add - local.get $6 + local.get $2 local.get $8 i32.add i32.load f32.convert_i32_s f32.store - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -45381,17 +45368,17 @@ i32.const 61 i32.const 14480 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Float32Array> global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 - local.get $0 + local.get $6 i32.const 11088 i32.const 3 call $~lib/typedarray/Int32Array#set<~lib/array/Array> @@ -45400,62 +45387,62 @@ i32.const 61 i32.const 14592 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Float32Array> i32.const 0 - local.set $1 + local.set $0 local.get $3 i32.load offset=8 i32.const 3 i32.shr_u i32.const 6 i32.add - local.get $0 + local.get $6 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 24 i32.add - local.set $5 + local.set $1 local.get $3 i32.load offset=4 - local.set $6 + local.set $2 local.get $3 i32.load offset=8 i32.const 3 i32.shr_u local.set $3 loop $for-loop|01 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $5 - i32.add local.get $1 + i32.add + local.get $0 i32.const 3 i32.shl - local.get $6 + local.get $2 i32.add i64.load f32.convert_i64_s f32.store - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|01 end end @@ -45464,104 +45451,104 @@ i32.const 61 i32.const 14656 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Float32Array> i32.const 0 - local.set $1 - local.get $2 + local.set $0 + local.get $4 i32.load offset=8 - local.get $0 + local.get $6 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 - local.set $3 - local.get $2 + local.set $1 + local.get $4 i32.load offset=4 - local.set $5 - local.get $2 - i32.load offset=8 local.set $2 + local.get $4 + i32.load offset=8 + local.set $3 loop $for-loop|03 - local.get $1 - local.get $2 + local.get $0 + local.get $3 i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $3 - i32.add local.get $1 - local.get $5 + i32.add + local.get $0 + local.get $2 i32.add i32.load8_u f32.convert_i32_u f32.store - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|03 end end i32.const 0 - local.set $1 - local.get $4 + local.set $0 + local.get $5 i32.load offset=8 i32.const 1 i32.shr_u i32.const 4 i32.add - local.get $0 + local.get $6 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 16 i32.add - local.set $2 - local.get $4 + local.set $1 + local.get $5 i32.load offset=4 - local.set $3 - local.get $4 + local.set $2 + local.get $5 i32.load offset=8 i32.const 1 i32.shr_u - local.set $4 + local.set $3 loop $for-loop|05 - local.get $1 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $2 - i32.add local.get $1 + i32.add + local.get $0 i32.const 1 i32.shl - local.get $3 + local.get $2 i32.add i32.load16_s f32.convert_i32_s f32.store - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|05 end end @@ -45569,48 +45556,48 @@ i32.const 11264 i32.store offset=16 i32.const 0 - local.set $1 + local.set $0 i32.const 11276 i32.load i32.const 7 i32.add - local.get $0 + local.get $6 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $0 + local.get $6 i32.load offset=4 i32.const 28 i32.add - local.set $2 + local.set $1 i32.const 11268 i32.load - local.set $3 + local.set $2 i32.const 11276 i32.load - local.set $4 + local.set $3 loop $for-loop|09 - local.get $1 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $2 - i32.add local.get $1 - local.get $3 + i32.add + local.get $0 + local.get $2 i32.add i32.load8_s f32.convert_i32_s f32.store - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|09 end end @@ -45619,12 +45606,12 @@ i32.const 61 i32.const 14720 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $6 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Float32Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -45769,17 +45756,17 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $1 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $1 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set @@ -45807,24 +45794,24 @@ global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $3 i32.store offset=8 - local.get $4 + local.get $3 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $3 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $3 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Float64Array#constructor - local.tee $1 + local.tee $4 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 @@ -45832,13 +45819,13 @@ block $folding-inner0 i32.const 11020 i32.load - local.get $1 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $4 i32.load offset=4 local.set $5 i32.const 11012 @@ -45881,7 +45868,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $1 + local.get $4 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Float64Array> global.get $~lib/memory/__stack_pointer @@ -45893,13 +45880,13 @@ i32.load i32.const 3 i32.add - local.get $1 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $4 i32.load offset=4 i32.const 24 i32.add @@ -45944,39 +45931,39 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $1 + local.get $4 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Float64Array> i32.const 0 local.set $0 - local.get $3 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.const 6 i32.add - local.get $1 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $4 i32.load offset=4 i32.const 48 i32.add local.set $5 - local.get $3 + local.get $1 i32.load offset=4 local.set $6 - local.get $3 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $3 + local.set $1 loop $for-loop|06 local.get $0 - local.get $3 + local.get $1 i32.lt_s if local.get $5 @@ -46007,22 +45994,22 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $1 + local.get $4 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Float64Array> i32.const 0 local.set $0 local.get $2 i32.load offset=8 - local.get $1 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $4 i32.load offset=4 - local.set $3 + local.set $1 local.get $2 i32.load offset=4 local.set $5 @@ -46037,7 +46024,7 @@ local.get $0 i32.const 3 i32.shl - local.get $3 + local.get $1 i32.add local.get $0 local.get $5 @@ -46054,45 +46041,45 @@ end i32.const 0 local.set $0 - local.get $4 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u i32.const 4 i32.add - local.get $1 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $4 i32.load offset=4 i32.const 32 i32.add - local.set $2 - local.get $4 + local.set $1 + local.get $3 i32.load offset=4 - local.set $3 - local.get $4 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.set $4 + local.set $3 loop $for-loop|010 local.get $0 - local.get $4 + local.get $3 i32.lt_s if local.get $0 i32.const 3 i32.shl - local.get $2 + local.get $1 i32.add local.get $0 i32.const 1 i32.shl - local.get $3 + local.get $2 i32.add i32.load16_s f64.convert_i32_s @@ -46113,35 +46100,35 @@ i32.load i32.const 7 i32.add - local.get $1 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $4 i32.load offset=4 i32.const 56 i32.add - local.set $2 + local.set $1 i32.const 11268 i32.load - local.set $3 + local.set $2 i32.const 11276 i32.load - local.set $4 + local.set $3 loop $for-loop|014 local.get $0 - local.get $4 + local.get $3 i32.lt_s if local.get $0 i32.const 3 i32.shl - local.get $2 + local.get $1 i32.add local.get $0 - local.get $3 + local.get $2 i32.add i32.load8_s f64.convert_i32_s @@ -46162,7 +46149,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=16 - local.get $1 + local.get $4 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Float64Array> global.get $~lib/memory/__stack_pointer @@ -46183,18 +46170,18 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 f64) + (local $4 i32) (local $5 f32) - (local $6 i64) - (local $7 i32) - (local $8 i32) + (local $6 i32) + (local $7 f64) + (local $8 i64) (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 f64) - (local $13 f32) - (local $14 i32) - (local $15 i64) + (local $12 i32) + (local $13 i64) + (local $14 f32) + (local $15 f64) (local $16 i32) global.get $~lib/memory/__stack_pointer i32.const 32 @@ -46881,33 +46868,33 @@ global.get $~lib/memory/__stack_pointer i32.const 5 call $~lib/typedarray/Int32Array#constructor - local.tee $7 + local.tee $4 i32.store offset=8 - local.get $7 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $7 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $7 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $7 + local.get $4 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $7 + local.get $4 i32.const 4 i32.const 5 call $~lib/typedarray/Int32Array#__set - local.get $7 + local.get $4 i32.load offset=4 local.set $2 i32.const 1 - local.get $7 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -46952,7 +46939,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $7 + local.get $4 local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz @@ -46964,27 +46951,27 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $4 i32.load offset=4 - local.set $1 + local.set $2 i32.const 0 - local.get $7 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 select local.set $0 loop $for-loop|01 local.get $0 - local.get $2 + local.get $1 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.const 0 i32.store @@ -47004,7 +46991,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $7 + local.get $4 local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz @@ -47016,11 +47003,11 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $4 i32.load offset=4 local.set $2 i32.const 0 - local.get $7 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -47066,7 +47053,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $7 + local.get $4 local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz @@ -47078,10 +47065,10 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $4 i32.load offset=4 local.set $2 - local.get $7 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -47123,7 +47110,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $7 + local.get $4 local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz @@ -47135,11 +47122,11 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $4 i32.load offset=4 local.set $2 i32.const 1 - local.get $7 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -47182,7 +47169,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $7 + local.get $4 local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz @@ -47195,7 +47182,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#subarray @@ -47203,25 +47190,25 @@ i32.store offset=12 local.get $3 i32.load offset=4 - local.set $1 + local.set $2 i32.const 0 local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 select local.set $0 loop $for-loop|09 local.get $0 - local.get $2 + local.get $1 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.const 0 i32.store @@ -47303,7 +47290,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $7 + local.get $4 local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz @@ -48020,9 +48007,9 @@ i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#subarray - local.tee $0 + local.tee $1 i32.store offset=16 - local.get $0 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u @@ -48036,9 +48023,9 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub i32.const 4 @@ -48051,7 +48038,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 12 i32.ne @@ -48068,9 +48055,9 @@ i32.const 1 i32.const 3 call $~lib/typedarray/Int32Array#slice - local.tee $1 + local.tee $0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 2 @@ -48083,7 +48070,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 3 @@ -48096,7 +48083,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u @@ -48110,9 +48097,9 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -48123,7 +48110,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 8 i32.ne @@ -48136,7 +48123,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#slice @@ -48301,32 +48288,32 @@ local.set $1 loop $for-loop|011 local.get $1 - local.get $11 + local.get $10 i32.gt_s if local.get $2 - local.get $11 + local.get $10 i32.add i32.load8_s local.set $0 i32.const 4 global.set $~argumentsLength - local.get $10 + local.get $9 local.get $0 - local.get $11 + local.get $10 local.get $3 i32.const 2896 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $10 - local.get $11 + local.set $9 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|011 end end - local.get $10 + local.get $9 i32.const 255 i32.and i32.const 6 @@ -48369,9 +48356,9 @@ i32.const 2928 i32.store offset=4 i32.const 0 - local.set $11 - i32.const 0 local.set $10 + i32.const 0 + local.set $9 local.get $3 i32.load offset=4 local.set $2 @@ -48380,32 +48367,32 @@ local.set $1 loop $for-loop|010 local.get $1 - local.get $11 + local.get $10 i32.gt_s if local.get $2 - local.get $11 + local.get $10 i32.add i32.load8_u local.set $0 i32.const 4 global.set $~argumentsLength - local.get $10 + local.get $9 local.get $0 - local.get $11 + local.get $10 local.get $3 i32.const 2928 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $10 - local.get $11 + local.set $9 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|010 end end - local.get $10 + local.get $9 i32.const 255 i32.and i32.const 6 @@ -48448,9 +48435,9 @@ i32.const 2960 i32.store offset=4 i32.const 0 - local.set $11 - i32.const 0 local.set $10 + i32.const 0 + local.set $9 local.get $3 i32.load offset=4 local.set $2 @@ -48459,32 +48446,32 @@ local.set $1 loop $for-loop|013 local.get $1 - local.get $11 + local.get $10 i32.gt_s if local.get $2 - local.get $11 + local.get $10 i32.add i32.load8_u local.set $0 i32.const 4 global.set $~argumentsLength - local.get $10 + local.get $9 local.get $0 - local.get $11 + local.get $10 local.get $3 i32.const 2960 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $10 - local.get $11 + local.set $9 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|013 end end - local.get $10 + local.get $9 i32.const 255 i32.and i32.const 6 @@ -48527,9 +48514,9 @@ i32.const 2992 i32.store offset=4 i32.const 0 - local.set $11 - i32.const 0 local.set $10 + i32.const 0 + local.set $9 local.get $3 i32.load offset=4 local.set $2 @@ -48540,10 +48527,10 @@ local.set $1 loop $for-loop|014 local.get $1 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 1 i32.shl local.get $2 @@ -48552,22 +48539,22 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $10 + local.get $9 local.get $0 - local.get $11 + local.get $10 local.get $3 i32.const 2992 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $10 - local.get $11 + local.set $9 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|014 end end - local.get $10 + local.get $9 i32.const 65535 i32.and i32.const 6 @@ -48610,9 +48597,9 @@ i32.const 3024 i32.store offset=4 i32.const 0 - local.set $11 - i32.const 0 local.set $10 + i32.const 0 + local.set $9 local.get $3 i32.load offset=4 local.set $2 @@ -48623,10 +48610,10 @@ local.set $1 loop $for-loop|016 local.get $1 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 1 i32.shl local.get $2 @@ -48635,22 +48622,22 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $10 + local.get $9 local.get $0 - local.get $11 + local.get $10 local.get $3 i32.const 3024 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $10 - local.get $11 + local.set $9 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|016 end end - local.get $10 + local.get $9 i32.const 65535 i32.and i32.const 6 @@ -48693,9 +48680,9 @@ i32.const 3056 i32.store offset=4 i32.const 0 - local.set $11 - i32.const 0 local.set $10 + i32.const 0 + local.set $9 local.get $3 i32.load offset=4 local.set $2 @@ -48706,10 +48693,10 @@ local.set $1 loop $for-loop|018 local.get $1 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 2 i32.shl local.get $2 @@ -48718,22 +48705,22 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $10 + local.get $9 local.get $0 - local.get $11 + local.get $10 local.get $3 i32.const 3056 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $10 - local.get $11 + local.set $9 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|018 end end - local.get $10 + local.get $9 i32.const 6 i32.ne br_if $folding-inner1 @@ -48774,9 +48761,9 @@ i32.const 3088 i32.store offset=4 i32.const 0 - local.set $11 - i32.const 0 local.set $10 + i32.const 0 + local.set $9 local.get $3 i32.load offset=4 local.set $2 @@ -48787,10 +48774,10 @@ local.set $1 loop $for-loop|021 local.get $1 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 2 i32.shl local.get $2 @@ -48799,22 +48786,22 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $10 + local.get $9 local.get $0 - local.get $11 + local.get $10 local.get $3 i32.const 3088 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $10 - local.get $11 + local.set $9 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|021 end end - local.get $10 + local.get $9 i32.const 6 i32.ne br_if $folding-inner1 @@ -48855,7 +48842,7 @@ i32.const 3120 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 local.get $2 i32.load offset=4 local.set $1 @@ -48866,34 +48853,34 @@ local.set $0 loop $for-loop|023 local.get $0 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 3 i32.shl local.get $1 i32.add i64.load - local.set $6 + local.set $8 i32.const 4 global.set $~argumentsLength - local.get $15 - local.get $6 - local.get $11 + local.get $13 + local.get $8 + local.get $10 local.get $2 i32.const 3120 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $15 - local.get $11 + local.set $13 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|023 end end - local.get $15 + local.get $13 i64.const 6 i64.ne br_if $folding-inner1 @@ -48934,9 +48921,9 @@ i32.const 3152 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 i64.const 0 - local.set $15 + local.set $13 local.get $2 i32.load offset=4 local.set $1 @@ -48947,34 +48934,34 @@ local.set $0 loop $for-loop|025 local.get $0 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 3 i32.shl local.get $1 i32.add i64.load - local.set $6 + local.set $8 i32.const 4 global.set $~argumentsLength - local.get $15 - local.get $6 - local.get $11 + local.get $13 + local.get $8 + local.get $10 local.get $2 i32.const 3152 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $15 - local.get $11 + local.set $13 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|025 end end - local.get $15 + local.get $13 i64.const 6 i64.ne br_if $folding-inner1 @@ -49015,7 +49002,7 @@ i32.const 3184 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 local.get $2 i32.load offset=4 local.set $1 @@ -49026,10 +49013,10 @@ local.set $0 loop $for-loop|027 local.get $0 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 2 i32.shl local.get $1 @@ -49038,22 +49025,22 @@ local.set $5 i32.const 4 global.set $~argumentsLength - local.get $13 + local.get $14 local.get $5 - local.get $11 + local.get $10 local.get $2 i32.const 3184 i32.load call_indirect $0 (type $f32_f32_i32_i32_=>_f32) - local.set $13 - local.get $11 + local.set $14 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|027 end end - local.get $13 + local.get $14 f32.const 6 f32.ne br_if $folding-inner1 @@ -49094,7 +49081,7 @@ i32.const 3216 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 local.get $2 i32.load offset=4 local.set $1 @@ -49105,34 +49092,34 @@ local.set $0 loop $for-loop|029 local.get $0 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 3 i32.shl local.get $1 i32.add f64.load - local.set $4 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $12 - local.get $4 - local.get $11 + local.get $15 + local.get $7 + local.get $10 local.get $2 i32.const 3216 i32.load call_indirect $0 (type $f64_f64_i32_i32_=>_f64) - local.set $12 - local.get $11 + local.set $15 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|029 end end - local.get $12 + local.get $15 f64.const 6 f64.ne br_if $folding-inner1 @@ -49734,7 +49721,7 @@ i32.const 3248 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 local.get $2 i32.load offset=4 local.set $1 @@ -49755,14 +49742,14 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $11 + local.get $10 local.get $0 local.get $3 local.get $2 i32.const 3248 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $11 + local.set $10 local.get $3 i32.const 1 i32.sub @@ -49770,7 +49757,7 @@ br $for-loop|031 end end - local.get $11 + local.get $10 i32.const 255 i32.and i32.const 6 @@ -49813,7 +49800,7 @@ i32.const 3280 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 local.get $2 i32.load offset=4 local.set $1 @@ -49834,14 +49821,14 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $11 + local.get $10 local.get $0 local.get $3 local.get $2 i32.const 3280 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $11 + local.set $10 local.get $3 i32.const 1 i32.sub @@ -49849,7 +49836,7 @@ br $for-loop|033 end end - local.get $11 + local.get $10 i32.const 255 i32.and i32.const 6 @@ -49892,7 +49879,7 @@ i32.const 3312 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 local.get $2 i32.load offset=4 local.set $1 @@ -49913,14 +49900,14 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $11 + local.get $10 local.get $0 local.get $3 local.get $2 i32.const 3312 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $11 + local.set $10 local.get $3 i32.const 1 i32.sub @@ -49928,7 +49915,7 @@ br $for-loop|036 end end - local.get $11 + local.get $10 i32.const 255 i32.and i32.const 6 @@ -49971,7 +49958,7 @@ i32.const 3344 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 local.get $2 i32.load offset=4 local.set $1 @@ -49996,14 +49983,14 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $11 + local.get $10 local.get $0 local.get $3 local.get $2 i32.const 3344 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $11 + local.set $10 local.get $3 i32.const 1 i32.sub @@ -50011,7 +49998,7 @@ br $for-loop|038 end end - local.get $11 + local.get $10 i32.const 65535 i32.and i32.const 6 @@ -50054,7 +50041,7 @@ i32.const 3376 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 local.get $2 i32.load offset=4 local.set $1 @@ -50079,14 +50066,14 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $11 + local.get $10 local.get $0 local.get $3 local.get $2 i32.const 3376 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $11 + local.set $10 local.get $3 i32.const 1 i32.sub @@ -50094,7 +50081,7 @@ br $for-loop|040 end end - local.get $11 + local.get $10 i32.const 65535 i32.and i32.const 6 @@ -50137,7 +50124,7 @@ i32.const 3408 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 local.get $2 i32.load offset=4 local.set $1 @@ -50162,14 +50149,14 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $11 + local.get $10 local.get $0 local.get $3 local.get $2 i32.const 3408 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $11 + local.set $10 local.get $3 i32.const 1 i32.sub @@ -50177,7 +50164,7 @@ br $for-loop|042 end end - local.get $11 + local.get $10 i32.const 6 i32.ne br_if $folding-inner5 @@ -50218,7 +50205,7 @@ i32.const 3440 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 local.get $2 i32.load offset=4 local.set $1 @@ -50243,14 +50230,14 @@ local.set $0 i32.const 4 global.set $~argumentsLength - local.get $11 + local.get $10 local.get $0 local.get $3 local.get $2 i32.const 3440 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $11 + local.set $10 local.get $3 i32.const 1 i32.sub @@ -50258,7 +50245,7 @@ br $for-loop|044 end end - local.get $11 + local.get $10 i32.const 6 i32.ne br_if $folding-inner5 @@ -50299,7 +50286,7 @@ i32.const 3472 i32.store offset=4 i64.const 0 - local.set $15 + local.set $13 local.get $1 i32.load offset=4 local.set $0 @@ -50321,17 +50308,17 @@ local.get $0 i32.add i64.load - local.set $6 + local.set $8 i32.const 4 global.set $~argumentsLength - local.get $15 - local.get $6 + local.get $13 + local.get $8 local.get $3 local.get $1 i32.const 3472 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $15 + local.set $13 local.get $3 i32.const 1 i32.sub @@ -50339,7 +50326,7 @@ br $for-loop|046 end end - local.get $15 + local.get $13 i64.const 6 i64.ne br_if $folding-inner5 @@ -50380,7 +50367,7 @@ i32.const 3504 i32.store offset=4 i64.const 0 - local.set $15 + local.set $13 local.get $1 i32.load offset=4 local.set $0 @@ -50402,17 +50389,17 @@ local.get $0 i32.add i64.load - local.set $6 + local.set $8 i32.const 4 global.set $~argumentsLength - local.get $15 - local.get $6 + local.get $13 + local.get $8 local.get $3 local.get $1 i32.const 3504 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $15 + local.set $13 local.get $3 i32.const 1 i32.sub @@ -50420,7 +50407,7 @@ br $for-loop|048 end end - local.get $15 + local.get $13 i64.const 6 i64.ne br_if $folding-inner5 @@ -50461,7 +50448,7 @@ i32.const 3536 i32.store offset=4 f32.const 0 - local.set $13 + local.set $14 local.get $1 i32.load offset=4 local.set $0 @@ -50486,14 +50473,14 @@ local.set $5 i32.const 4 global.set $~argumentsLength - local.get $13 + local.get $14 local.get $5 local.get $3 local.get $1 i32.const 3536 i32.load call_indirect $0 (type $f32_f32_i32_i32_=>_f32) - local.set $13 + local.set $14 local.get $3 i32.const 1 i32.sub @@ -50501,7 +50488,7 @@ br $for-loop|050 end end - local.get $13 + local.get $14 f32.const 6 f32.ne br_if $folding-inner5 @@ -50542,7 +50529,7 @@ i32.const 3568 i32.store offset=4 f64.const 0 - local.set $12 + local.set $15 local.get $1 i32.load offset=4 local.set $0 @@ -50564,17 +50551,17 @@ local.get $0 i32.add f64.load - local.set $4 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $12 - local.get $4 + local.get $15 + local.get $7 local.get $3 local.get $1 i32.const 3568 i32.load call_indirect $0 (type $f64_f64_i32_i32_=>_f64) - local.set $12 + local.set $15 local.get $3 i32.const 1 i32.sub @@ -50582,7 +50569,7 @@ br $for-loop|052 end end - local.get $12 + local.get $15 f64.const 6 f64.ne br_if $folding-inner5 @@ -50591,7 +50578,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $11 + local.set $10 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -50610,17 +50597,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $8 + local.tee $9 i32.store - local.get $8 + local.get $9 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $8 + local.get $9 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $8 + local.get $9 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set @@ -50640,87 +50627,87 @@ local.tee $0 i64.const 0 i64.store - local.get $8 + local.get $9 i32.load offset=8 - local.set $3 - local.get $8 + local.set $4 + local.get $9 i32.load offset=4 - local.set $1 + local.set $3 local.get $0 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $1 i32.store offset=4 loop $for-loop|02 - local.get $3 - local.get $11 + local.get $4 + local.get $10 i32.gt_s if - local.get $1 - local.get $11 + local.get $3 + local.get $10 i32.add i32.load8_s local.set $0 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $11 + local.get $1 + local.get $10 i32.add local.get $0 - local.get $11 - local.get $8 + local.get $10 + local.get $9 i32.const 3600 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store8 - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|02 end end - local.get $10 - local.get $7 + local.get $2 + local.get $1 i32.store - local.get $7 + local.get $1 if - local.get $10 - local.get $7 + local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $7 + local.get $2 + local.get $1 i32.store offset=4 - local.get $10 - local.get $3 + local.get $2 + local.get $4 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $2 i32.store offset=8 - local.get $10 + local.get $2 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $10 + local.get $2 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $10 + local.get $2 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 9 @@ -50731,7 +50718,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $11 + local.set $10 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -50750,17 +50737,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $8 + local.tee $9 i32.store - local.get $8 + local.get $9 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $8 + local.get $9 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $8 + local.get $9 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -50780,87 +50767,87 @@ local.tee $0 i64.const 0 i64.store - local.get $8 + local.get $9 i32.load offset=8 - local.set $3 - local.get $8 + local.set $4 + local.get $9 i32.load offset=4 - local.set $1 + local.set $3 local.get $0 i32.const 12 i32.const 4 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $1 i32.store offset=4 loop $for-loop|04 - local.get $3 - local.get $11 + local.get $4 + local.get $10 i32.gt_s if - local.get $1 - local.get $11 + local.get $3 + local.get $10 i32.add i32.load8_u local.set $0 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $11 + local.get $1 + local.get $10 i32.add local.get $0 - local.get $11 - local.get $8 + local.get $10 + local.get $9 i32.const 3632 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store8 - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|04 end end - local.get $10 - local.get $7 + local.get $2 + local.get $1 i32.store - local.get $7 + local.get $1 if - local.get $10 - local.get $7 + local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $7 + local.get $2 + local.get $1 i32.store offset=4 - local.get $10 - local.get $3 + local.get $2 + local.get $4 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $2 i32.store offset=8 - local.get $10 + local.get $2 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $10 + local.get $2 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $10 + local.get $2 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 9 @@ -50871,7 +50858,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $11 + local.set $10 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -50890,17 +50877,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $8 + local.tee $9 i32.store - local.get $8 + local.get $9 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $8 + local.get $9 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $8 + local.get $9 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -50920,87 +50907,87 @@ local.tee $0 i64.const 0 i64.store - local.get $8 + local.get $9 i32.load offset=8 - local.set $3 - local.get $8 + local.set $4 + local.get $9 i32.load offset=4 - local.set $1 + local.set $3 local.get $0 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $1 i32.store offset=4 loop $for-loop|06 - local.get $3 - local.get $11 + local.get $4 + local.get $10 i32.gt_s if - local.get $1 - local.get $11 + local.get $3 + local.get $10 i32.add i32.load8_u local.set $0 i32.const 3 global.set $~argumentsLength - local.get $7 - local.get $11 + local.get $1 + local.get $10 i32.add local.get $0 - local.get $11 - local.get $8 + local.get $10 + local.get $9 i32.const 3664 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store8 - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|06 end end - local.get $10 - local.get $7 + local.get $2 + local.get $1 i32.store - local.get $7 + local.get $1 if - local.get $10 - local.get $7 + local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $7 + local.get $2 + local.get $1 i32.store offset=4 - local.get $10 - local.get $3 + local.get $2 + local.get $4 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $2 i32.store offset=8 - local.get $10 + local.get $2 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $10 + local.get $2 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $10 + local.get $2 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 9 @@ -51062,32 +51049,32 @@ i32.load offset=8 i32.const 1 i32.shr_u - local.set $8 + local.set $9 local.get $11 i32.load offset=4 - local.set $3 + local.set $6 local.get $0 i32.const 12 i32.const 6 call $~lib/rt/itcms/__new - local.tee $14 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $9 i32.const 1 i32.shl - local.tee $2 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $2 i32.store offset=4 loop $for-loop|08 - local.get $8 - local.get $16 + local.get $9 + local.get $12 i32.gt_s if - local.get $3 - local.get $16 + local.get $6 + local.get $12 i32.const 1 i32.shl local.tee $1 @@ -51097,56 +51084,56 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $10 + local.get $2 i32.add local.get $0 - local.get $16 + local.get $12 local.get $11 i32.const 3696 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store16 - local.get $16 + local.get $12 i32.const 1 i32.add - local.set $16 + local.set $12 br $for-loop|08 end end - local.get $14 - local.get $10 + local.get $4 + local.get $2 i32.store - local.get $10 + local.get $2 if - local.get $14 - local.get $10 + local.get $4 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $14 - local.get $10 - i32.store offset=4 - local.get $14 + local.get $4 local.get $2 + i32.store offset=4 + local.get $4 + local.get $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $14 + local.get $4 i32.store offset=8 - local.get $14 + local.get $4 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $14 + local.get $4 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $14 + local.get $4 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 9 @@ -51157,7 +51144,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $16 + local.set $12 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51210,32 +51197,32 @@ i32.load offset=8 i32.const 1 i32.shr_u - local.set $8 + local.set $9 local.get $11 i32.load offset=4 - local.set $3 + local.set $6 local.get $0 i32.const 12 i32.const 7 call $~lib/rt/itcms/__new - local.tee $14 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $9 i32.const 1 i32.shl - local.tee $2 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $2 i32.store offset=4 loop $for-loop|012 - local.get $8 - local.get $16 + local.get $9 + local.get $12 i32.gt_s if - local.get $3 - local.get $16 + local.get $6 + local.get $12 i32.const 1 i32.shl local.tee $1 @@ -51245,56 +51232,56 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $10 + local.get $2 i32.add local.get $0 - local.get $16 + local.get $12 local.get $11 i32.const 3728 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store16 - local.get $16 + local.get $12 i32.const 1 i32.add - local.set $16 + local.set $12 br $for-loop|012 end end - local.get $14 - local.get $10 + local.get $4 + local.get $2 i32.store - local.get $10 + local.get $2 if - local.get $14 - local.get $10 + local.get $4 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $14 - local.get $10 - i32.store offset=4 - local.get $14 + local.get $4 local.get $2 + i32.store offset=4 + local.get $4 + local.get $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $14 + local.get $4 i32.store offset=8 - local.get $14 + local.get $4 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $14 + local.get $4 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $14 + local.get $4 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 9 @@ -51305,7 +51292,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $16 + local.set $12 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51358,32 +51345,32 @@ i32.load offset=8 i32.const 2 i32.shr_u - local.set $8 + local.set $9 local.get $11 i32.load offset=4 - local.set $3 + local.set $6 local.get $0 i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $14 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $9 i32.const 2 i32.shl - local.tee $2 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $2 i32.store offset=4 loop $for-loop|015 - local.get $8 - local.get $16 + local.get $9 + local.get $12 i32.gt_s if - local.get $3 - local.get $16 + local.get $6 + local.get $12 i32.const 2 i32.shl local.tee $1 @@ -51393,56 +51380,56 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $10 + local.get $2 i32.add local.get $0 - local.get $16 + local.get $12 local.get $11 i32.const 3760 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store - local.get $16 + local.get $12 i32.const 1 i32.add - local.set $16 + local.set $12 br $for-loop|015 end end - local.get $14 - local.get $10 + local.get $4 + local.get $2 i32.store - local.get $10 + local.get $2 if - local.get $14 - local.get $10 + local.get $4 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $14 - local.get $10 - i32.store offset=4 - local.get $14 + local.get $4 local.get $2 + i32.store offset=4 + local.get $4 + local.get $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $14 + local.get $4 i32.store offset=8 - local.get $14 + local.get $4 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $14 + local.get $4 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $14 + local.get $4 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 9 @@ -51453,7 +51440,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $16 + local.set $12 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51506,32 +51493,32 @@ i32.load offset=8 i32.const 2 i32.shr_u - local.set $8 + local.set $9 local.get $11 i32.load offset=4 - local.set $3 + local.set $6 local.get $0 i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $14 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $9 i32.const 2 i32.shl - local.tee $2 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $2 i32.store offset=4 loop $for-loop|017 - local.get $8 - local.get $16 + local.get $9 + local.get $12 i32.gt_s if - local.get $3 - local.get $16 + local.get $6 + local.get $12 i32.const 2 i32.shl local.tee $1 @@ -51541,56 +51528,56 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $10 + local.get $2 i32.add local.get $0 - local.get $16 + local.get $12 local.get $11 i32.const 3792 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store - local.get $16 + local.get $12 i32.const 1 i32.add - local.set $16 + local.set $12 br $for-loop|017 end end - local.get $14 - local.get $10 + local.get $4 + local.get $2 i32.store - local.get $10 + local.get $2 if - local.get $14 - local.get $10 + local.get $4 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $14 - local.get $10 - i32.store offset=4 - local.get $14 + local.get $4 local.get $2 + i32.store offset=4 + local.get $4 + local.get $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $14 + local.get $4 i32.store offset=8 - local.get $14 + local.get $4 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 1 i32.ne br_if $folding-inner20 - local.get $14 + local.get $4 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 4 i32.ne br_if $folding-inner21 - local.get $14 + local.get $4 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 9 @@ -51601,7 +51588,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $14 + local.set $11 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51654,91 +51641,91 @@ i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 + local.set $6 local.get $10 i32.load offset=4 - local.set $2 + local.set $4 local.get $0 i32.const 12 i32.const 10 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $6 i32.const 3 i32.shl - local.tee $1 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $1 i32.store offset=4 loop $for-loop|019 - local.get $7 - local.get $14 + local.get $6 + local.get $11 i32.gt_s if - local.get $2 - local.get $14 + local.get $4 + local.get $11 i32.const 3 i32.shl local.tee $0 i32.add i64.load - local.set $6 + local.set $8 i32.const 3 global.set $~argumentsLength local.get $0 - local.get $8 + local.get $1 i32.add - local.get $6 - local.get $14 + local.get $8 + local.get $11 local.get $10 i32.const 3824 i32.load call_indirect $0 (type $i64_i32_i32_=>_i64) i64.store - local.get $14 + local.get $11 i32.const 1 i32.add - local.set $14 + local.set $11 br $for-loop|019 end end - local.get $11 - local.get $8 + local.get $3 + local.get $1 i32.store - local.get $8 + local.get $1 if - local.get $11 - local.get $8 + local.get $3 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 - local.get $8 - i32.store offset=4 - local.get $11 + local.get $3 local.get $1 + i32.store offset=4 + local.get $3 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 + local.get $3 i32.store offset=8 - local.get $11 + local.get $3 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 1 i64.ne br_if $folding-inner20 - local.get $11 + local.get $3 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 4 i64.ne br_if $folding-inner21 - local.get $11 + local.get $3 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 9 @@ -51749,7 +51736,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $14 + local.set $11 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51802,91 +51789,91 @@ i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 + local.set $6 local.get $10 i32.load offset=4 - local.set $2 + local.set $4 local.get $0 i32.const 12 i32.const 11 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $6 i32.const 3 i32.shl - local.tee $1 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $1 i32.store offset=4 loop $for-loop|022 - local.get $7 - local.get $14 + local.get $6 + local.get $11 i32.gt_s if - local.get $2 - local.get $14 + local.get $4 + local.get $11 i32.const 3 i32.shl local.tee $0 i32.add i64.load - local.set $6 + local.set $8 i32.const 3 global.set $~argumentsLength local.get $0 - local.get $8 + local.get $1 i32.add - local.get $6 - local.get $14 + local.get $8 + local.get $11 local.get $10 i32.const 3856 i32.load call_indirect $0 (type $i64_i32_i32_=>_i64) i64.store - local.get $14 + local.get $11 i32.const 1 i32.add - local.set $14 + local.set $11 br $for-loop|022 end end - local.get $11 - local.get $8 + local.get $3 + local.get $1 i32.store - local.get $8 + local.get $1 if - local.get $11 - local.get $8 + local.get $3 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 - local.get $8 - i32.store offset=4 - local.get $11 + local.get $3 local.get $1 + i32.store offset=4 + local.get $3 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 + local.get $3 i32.store offset=8 - local.get $11 + local.get $3 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 1 i64.ne br_if $folding-inner20 - local.get $11 + local.get $3 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 4 i64.ne br_if $folding-inner21 - local.get $11 + local.get $3 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 9 @@ -51897,7 +51884,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $14 + local.set $11 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51950,32 +51937,32 @@ i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 + local.set $6 local.get $10 i32.load offset=4 - local.set $2 + local.set $4 local.get $0 i32.const 12 i32.const 12 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $6 i32.const 2 i32.shl - local.tee $1 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $1 i32.store offset=4 loop $for-loop|024 - local.get $7 - local.get $14 + local.get $6 + local.get $11 i32.gt_s if - local.get $2 - local.get $14 + local.get $4 + local.get $11 i32.const 2 i32.shl local.tee $0 @@ -51985,56 +51972,56 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $8 + local.get $1 i32.add local.get $5 - local.get $14 + local.get $11 local.get $10 i32.const 3888 i32.load call_indirect $0 (type $f32_i32_i32_=>_f32) f32.store - local.get $14 + local.get $11 i32.const 1 i32.add - local.set $14 + local.set $11 br $for-loop|024 end end - local.get $11 - local.get $8 + local.get $3 + local.get $1 i32.store - local.get $8 + local.get $1 if - local.get $11 - local.get $8 + local.get $3 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 - local.get $8 - i32.store offset=4 - local.get $11 + local.get $3 local.get $1 + i32.store offset=4 + local.get $3 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 + local.get $3 i32.store offset=8 - local.get $11 + local.get $3 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 1 f32.ne br_if $folding-inner20 - local.get $11 + local.get $3 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 4 f32.ne br_if $folding-inner21 - local.get $11 + local.get $3 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 9 @@ -52045,7 +52032,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $14 + local.set $11 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -52098,91 +52085,91 @@ i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 + local.set $6 local.get $10 i32.load offset=4 - local.set $2 + local.set $4 local.get $0 i32.const 12 i32.const 13 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $6 i32.const 3 i32.shl - local.tee $1 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $1 i32.store offset=4 loop $for-loop|026 - local.get $7 - local.get $14 + local.get $6 + local.get $11 i32.gt_s if - local.get $2 - local.get $14 + local.get $4 + local.get $11 i32.const 3 i32.shl local.tee $0 i32.add f64.load - local.set $4 + local.set $7 i32.const 3 global.set $~argumentsLength local.get $0 - local.get $8 + local.get $1 i32.add - local.get $4 - local.get $14 + local.get $7 + local.get $11 local.get $10 i32.const 3920 i32.load call_indirect $0 (type $f64_i32_i32_=>_f64) f64.store - local.get $14 + local.get $11 i32.const 1 i32.add - local.set $14 + local.set $11 br $for-loop|026 end end - local.get $11 - local.get $8 + local.get $3 + local.get $1 i32.store - local.get $8 + local.get $1 if - local.get $11 - local.get $8 + local.get $3 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 - local.get $8 - i32.store offset=4 - local.get $11 + local.get $3 local.get $1 + i32.store offset=4 + local.get $3 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 + local.get $3 i32.store offset=8 - local.get $11 + local.get $3 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 1 f64.ne br_if $folding-inner20 - local.get $11 + local.get $3 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 4 f64.ne br_if $folding-inner21 - local.get $11 + local.get $3 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 9 @@ -52236,7 +52223,7 @@ i32.const 4304 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.0 (result i32) local.get $3 i32.load offset=4 @@ -52246,11 +52233,11 @@ local.set $1 loop $for-loop|045 local.get $1 - local.get $10 + local.get $9 i32.gt_s if local.get $2 - local.get $10 + local.get $9 i32.add i32.load8_s local.set $0 @@ -52258,17 +52245,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 4304 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.0 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|045 end end @@ -52280,7 +52267,7 @@ i32.const 4336 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.047 (result i32) local.get $3 i32.load offset=4 @@ -52290,11 +52277,11 @@ local.set $1 loop $for-loop|049 local.get $1 - local.get $10 + local.get $9 i32.gt_s if local.get $2 - local.get $10 + local.get $9 i32.add i32.load8_s local.set $0 @@ -52302,17 +52289,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 4336 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.047 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|049 end end @@ -52356,7 +52343,7 @@ i32.const 4368 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.0 (result i32) local.get $3 i32.load offset=4 @@ -52366,11 +52353,11 @@ local.set $1 loop $for-loop|051 local.get $1 - local.get $10 + local.get $9 i32.gt_s if local.get $2 - local.get $10 + local.get $9 i32.add i32.load8_u local.set $0 @@ -52378,17 +52365,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 4368 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.0 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|051 end end @@ -52400,7 +52387,7 @@ i32.const 4400 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.053 (result i32) local.get $3 i32.load offset=4 @@ -52410,11 +52397,11 @@ local.set $1 loop $for-loop|054 local.get $1 - local.get $10 + local.get $9 i32.gt_s if local.get $2 - local.get $10 + local.get $9 i32.add i32.load8_u local.set $0 @@ -52422,17 +52409,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 4400 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.053 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|054 end end @@ -52476,7 +52463,7 @@ i32.const 4432 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.057 (result i32) local.get $3 i32.load offset=4 @@ -52486,11 +52473,11 @@ local.set $1 loop $for-loop|058 local.get $1 - local.get $10 + local.get $9 i32.gt_s if local.get $2 - local.get $10 + local.get $9 i32.add i32.load8_u local.set $0 @@ -52498,17 +52485,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 4432 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.057 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|058 end end @@ -52520,7 +52507,7 @@ i32.const 4464 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.060 (result i32) local.get $3 i32.load offset=4 @@ -52530,11 +52517,11 @@ local.set $1 loop $for-loop|061 local.get $1 - local.get $10 + local.get $9 i32.gt_s if local.get $2 - local.get $10 + local.get $9 i32.add i32.load8_u local.set $0 @@ -52542,17 +52529,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 4464 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.060 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|061 end end @@ -52596,7 +52583,7 @@ i32.const 4496 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.0 (result i32) local.get $3 i32.load offset=4 @@ -52608,10 +52595,10 @@ local.set $1 loop $for-loop|063 local.get $1 - local.get $10 + local.get $9 i32.gt_s if - local.get $10 + local.get $9 i32.const 1 i32.shl local.get $2 @@ -52622,17 +52609,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 4496 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.0 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|063 end end @@ -52644,7 +52631,7 @@ i32.const 4528 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.065 (result i32) local.get $3 i32.load offset=4 @@ -52656,10 +52643,10 @@ local.set $1 loop $for-loop|066 local.get $1 - local.get $10 + local.get $9 i32.gt_s if - local.get $10 + local.get $9 i32.const 1 i32.shl local.get $2 @@ -52670,17 +52657,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 4528 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.065 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|066 end end @@ -52724,7 +52711,7 @@ i32.const 4560 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.0 (result i32) local.get $3 i32.load offset=4 @@ -52736,10 +52723,10 @@ local.set $1 loop $for-loop|068 local.get $1 - local.get $10 + local.get $9 i32.gt_s if - local.get $10 + local.get $9 i32.const 1 i32.shl local.get $2 @@ -52750,17 +52737,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 4560 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.0 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|068 end end @@ -52772,7 +52759,7 @@ i32.const 4592 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.070 (result i32) local.get $3 i32.load offset=4 @@ -52784,10 +52771,10 @@ local.set $1 loop $for-loop|071 local.get $1 - local.get $10 + local.get $9 i32.gt_s if - local.get $10 + local.get $9 i32.const 1 i32.shl local.get $2 @@ -52798,17 +52785,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 4592 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.070 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|071 end end @@ -52852,7 +52839,7 @@ i32.const 4624 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) local.get $3 i32.load offset=4 @@ -52864,10 +52851,10 @@ local.set $1 loop $for-loop|073 local.get $1 - local.get $10 + local.get $9 i32.gt_s if - local.get $10 + local.get $9 i32.const 2 i32.shl local.get $2 @@ -52878,17 +52865,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 4624 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.0 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|073 end end @@ -52900,7 +52887,7 @@ i32.const 4656 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.075 (result i32) local.get $3 i32.load offset=4 @@ -52912,10 +52899,10 @@ local.set $1 loop $for-loop|076 local.get $1 - local.get $10 + local.get $9 i32.gt_s if - local.get $10 + local.get $9 i32.const 2 i32.shl local.get $2 @@ -52926,17 +52913,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 4656 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.075 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|076 end end @@ -52980,7 +52967,7 @@ i32.const 4688 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) local.get $3 i32.load offset=4 @@ -52992,10 +52979,10 @@ local.set $1 loop $for-loop|078 local.get $1 - local.get $10 + local.get $9 i32.gt_s if - local.get $10 + local.get $9 i32.const 2 i32.shl local.get $2 @@ -53006,17 +52993,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 4688 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.0 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|078 end end @@ -53028,7 +53015,7 @@ i32.const 4720 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.080 (result i32) local.get $3 i32.load offset=4 @@ -53040,10 +53027,10 @@ local.set $1 loop $for-loop|081 local.get $1 - local.get $10 + local.get $9 i32.gt_s if - local.get $10 + local.get $9 i32.const 2 i32.shl local.get $2 @@ -53054,17 +53041,17 @@ global.set $~argumentsLength i32.const 1 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 4720 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.080 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|081 end end @@ -53108,7 +53095,7 @@ i32.const 4752 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.0 (result i32) local.get $2 i32.load offset=4 @@ -53120,31 +53107,31 @@ local.set $0 loop $for-loop|083 local.get $0 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 3 i32.shl local.get $1 i32.add i64.load - local.set $6 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $6 - local.get $11 + local.get $8 + local.get $10 local.get $2 i32.const 4752 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.0 drop - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|083 end end @@ -53156,7 +53143,7 @@ i32.const 4784 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.085 (result i32) local.get $2 i32.load offset=4 @@ -53168,31 +53155,31 @@ local.set $0 loop $for-loop|086 local.get $0 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 3 i32.shl local.get $1 i32.add i64.load - local.set $6 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $6 - local.get $11 + local.get $8 + local.get $10 local.get $2 i32.const 4784 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.085 drop - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|086 end end @@ -53236,7 +53223,7 @@ i32.const 4816 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.0 (result i32) local.get $2 i32.load offset=4 @@ -53248,31 +53235,31 @@ local.set $0 loop $for-loop|088 local.get $0 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 3 i32.shl local.get $1 i32.add i64.load - local.set $6 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $6 - local.get $11 + local.get $8 + local.get $10 local.get $2 i32.const 4816 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.0 drop - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|088 end end @@ -53284,7 +53271,7 @@ i32.const 4848 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.090 (result i32) local.get $2 i32.load offset=4 @@ -53296,31 +53283,31 @@ local.set $0 loop $for-loop|091 local.get $0 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 3 i32.shl local.get $1 i32.add i64.load - local.set $6 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $6 - local.get $11 + local.get $8 + local.get $10 local.get $2 i32.const 4848 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.090 drop - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|091 end end @@ -53364,7 +53351,7 @@ i32.const 4880 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) local.get $2 i32.load offset=4 @@ -53376,10 +53363,10 @@ local.set $0 loop $for-loop|093 local.get $0 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 2 i32.shl local.get $1 @@ -53390,17 +53377,17 @@ global.set $~argumentsLength i32.const 1 local.get $5 - local.get $11 + local.get $10 local.get $2 i32.const 4880 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|093 end end @@ -53412,7 +53399,7 @@ i32.const 4912 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.095 (result i32) local.get $2 i32.load offset=4 @@ -53424,10 +53411,10 @@ local.set $0 loop $for-loop|096 local.get $0 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 2 i32.shl local.get $1 @@ -53438,17 +53425,17 @@ global.set $~argumentsLength i32.const 1 local.get $5 - local.get $11 + local.get $10 local.get $2 i32.const 4912 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.095 drop - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|096 end end @@ -53492,7 +53479,7 @@ i32.const 4944 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) local.get $2 i32.load offset=4 @@ -53504,31 +53491,31 @@ local.set $0 loop $for-loop|098 local.get $0 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 3 i32.shl local.get $1 i32.add f64.load - local.set $4 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $4 - local.get $11 + local.get $7 + local.get $10 local.get $2 i32.const 4944 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|098 end end @@ -53540,7 +53527,7 @@ i32.const 4976 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0100 (result i32) local.get $2 i32.load offset=4 @@ -53552,31 +53539,31 @@ local.set $0 loop $for-loop|0101 local.get $0 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 3 i32.shl local.get $1 i32.add f64.load - local.set $4 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $4 - local.get $11 + local.get $7 + local.get $10 local.get $2 i32.const 4976 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0100 drop - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|0101 end end @@ -53602,17 +53589,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $7 + local.tee $4 i32.store - local.get $7 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $7 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $7 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set @@ -53621,10 +53608,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $4 i32.load offset=4 local.set $3 - local.get $7 + local.get $4 i32.load offset=8 local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0 @@ -53640,7 +53627,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $7 + local.get $4 i32.const 5008 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53664,10 +53651,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $4 i32.load offset=4 local.set $3 - local.get $7 + local.get $4 i32.load offset=8 local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0105 @@ -53683,7 +53670,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $7 + local.get $4 i32.const 5040 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53721,17 +53708,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $7 + local.tee $4 i32.store - local.get $7 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $7 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $7 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -53740,10 +53727,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $4 i32.load offset=4 local.set $3 - local.get $7 + local.get $4 i32.load offset=8 local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0 @@ -53759,7 +53746,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $7 + local.get $4 i32.const 5072 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53783,10 +53770,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $4 i32.load offset=4 local.set $3 - local.get $7 + local.get $4 i32.load offset=8 local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0110 @@ -53802,7 +53789,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $7 + local.get $4 i32.const 5104 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53840,17 +53827,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $7 + local.tee $4 i32.store - local.get $7 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $7 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $7 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -53859,10 +53846,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $4 i32.load offset=4 local.set $3 - local.get $7 + local.get $4 i32.load offset=8 local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0114 @@ -53878,7 +53865,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $7 + local.get $4 i32.const 5136 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53902,10 +53889,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $4 i32.load offset=4 local.set $3 - local.get $7 + local.get $4 i32.load offset=8 local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0117 @@ -53921,7 +53908,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $7 + local.get $4 i32.const 5168 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53959,17 +53946,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $7 + local.tee $4 i32.store - local.get $7 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $7 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $7 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -53978,10 +53965,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $4 i32.load offset=4 local.set $3 - local.get $7 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -54001,7 +53988,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $7 + local.get $4 i32.const 5200 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54025,10 +54012,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $4 i32.load offset=4 local.set $3 - local.get $7 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -54048,7 +54035,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $7 + local.get $4 i32.const 5232 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54086,17 +54073,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $7 + local.tee $4 i32.store - local.get $7 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $7 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $7 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -54105,10 +54092,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $4 i32.load offset=4 local.set $3 - local.get $7 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -54128,7 +54115,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $7 + local.get $4 i32.const 5264 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54152,10 +54139,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $4 i32.load offset=4 local.set $3 - local.get $7 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -54175,7 +54162,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $7 + local.get $4 i32.const 5296 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54213,17 +54200,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $7 + local.tee $4 i32.store - local.get $7 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $7 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $7 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -54232,10 +54219,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $4 i32.load offset=4 local.set $3 - local.get $7 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -54255,7 +54242,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $7 + local.get $4 i32.const 5328 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54279,10 +54266,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $4 i32.load offset=4 local.set $3 - local.get $7 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -54302,7 +54289,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $7 + local.get $4 i32.const 5360 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54340,17 +54327,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $7 + local.tee $4 i32.store - local.get $7 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $7 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $7 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -54359,10 +54346,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $4 i32.load offset=4 local.set $3 - local.get $7 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -54382,7 +54369,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $7 + local.get $4 i32.const 5392 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54406,10 +54393,10 @@ i32.store offset=4 i32.const 0 local.set $1 - local.get $7 + local.get $4 i32.load offset=4 local.set $3 - local.get $7 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -54429,7 +54416,7 @@ i32.const 3 global.set $~argumentsLength local.get $1 - local.get $7 + local.get $4 i32.const 5424 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -56366,7 +56353,7 @@ i32.const 6416 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.0 (result i32) local.get $3 i32.load offset=4 @@ -56376,11 +56363,11 @@ local.set $1 loop $for-loop|0217 local.get $1 - local.get $10 + local.get $9 i32.gt_s if local.get $2 - local.get $10 + local.get $9 i32.add i32.load8_s local.set $0 @@ -56388,7 +56375,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 6416 i32.load @@ -56396,10 +56383,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.0 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|0217 end end @@ -56411,7 +56398,7 @@ i32.const 6448 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.0219 (result i32) local.get $3 i32.load offset=4 @@ -56421,11 +56408,11 @@ local.set $1 loop $for-loop|0220 local.get $1 - local.get $10 + local.get $9 i32.gt_s if local.get $2 - local.get $10 + local.get $9 i32.add i32.load8_s local.set $0 @@ -56433,7 +56420,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 6448 i32.load @@ -56441,10 +56428,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.0219 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|0220 end end @@ -56488,7 +56475,7 @@ i32.const 6480 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0 (result i32) local.get $3 i32.load offset=4 @@ -56498,11 +56485,11 @@ local.set $1 loop $for-loop|0222 local.get $1 - local.get $10 + local.get $9 i32.gt_s if local.get $2 - local.get $10 + local.get $9 i32.add i32.load8_u local.set $0 @@ -56510,7 +56497,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 6480 i32.load @@ -56518,10 +56505,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|0222 end end @@ -56533,7 +56520,7 @@ i32.const 6512 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0224 (result i32) local.get $3 i32.load offset=4 @@ -56543,11 +56530,11 @@ local.set $1 loop $for-loop|0225 local.get $1 - local.get $10 + local.get $9 i32.gt_s if local.get $2 - local.get $10 + local.get $9 i32.add i32.load8_u local.set $0 @@ -56555,7 +56542,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 6512 i32.load @@ -56563,10 +56550,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0224 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|0225 end end @@ -56610,7 +56597,7 @@ i32.const 6544 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0228 (result i32) local.get $3 i32.load offset=4 @@ -56620,11 +56607,11 @@ local.set $1 loop $for-loop|0229 local.get $1 - local.get $10 + local.get $9 i32.gt_s if local.get $2 - local.get $10 + local.get $9 i32.add i32.load8_u local.set $0 @@ -56632,7 +56619,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 6544 i32.load @@ -56640,10 +56627,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0228 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|0229 end end @@ -56655,7 +56642,7 @@ i32.const 6576 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0231 (result i32) local.get $3 i32.load offset=4 @@ -56665,11 +56652,11 @@ local.set $1 loop $for-loop|0232 local.get $1 - local.get $10 + local.get $9 i32.gt_s if local.get $2 - local.get $10 + local.get $9 i32.add i32.load8_u local.set $0 @@ -56677,7 +56664,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 6576 i32.load @@ -56685,10 +56672,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0231 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|0232 end end @@ -56732,7 +56719,7 @@ i32.const 6608 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.0 (result i32) local.get $3 i32.load offset=4 @@ -56744,10 +56731,10 @@ local.set $1 loop $for-loop|0234 local.get $1 - local.get $10 + local.get $9 i32.gt_s if - local.get $10 + local.get $9 i32.const 1 i32.shl local.get $2 @@ -56758,7 +56745,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 6608 i32.load @@ -56766,10 +56753,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.0 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|0234 end end @@ -56781,7 +56768,7 @@ i32.const 6640 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.0236 (result i32) local.get $3 i32.load offset=4 @@ -56793,10 +56780,10 @@ local.set $1 loop $for-loop|0237 local.get $1 - local.get $10 + local.get $9 i32.gt_s if - local.get $10 + local.get $9 i32.const 1 i32.shl local.get $2 @@ -56807,7 +56794,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 6640 i32.load @@ -56815,10 +56802,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.0236 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|0237 end end @@ -56862,7 +56849,7 @@ i32.const 6672 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.0 (result i32) local.get $3 i32.load offset=4 @@ -56874,10 +56861,10 @@ local.set $1 loop $for-loop|0239 local.get $1 - local.get $10 + local.get $9 i32.gt_s if - local.get $10 + local.get $9 i32.const 1 i32.shl local.get $2 @@ -56888,7 +56875,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 6672 i32.load @@ -56896,10 +56883,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.0 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|0239 end end @@ -56911,7 +56898,7 @@ i32.const 6704 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.0241 (result i32) local.get $3 i32.load offset=4 @@ -56923,10 +56910,10 @@ local.set $1 loop $for-loop|0242 local.get $1 - local.get $10 + local.get $9 i32.gt_s if - local.get $10 + local.get $9 i32.const 1 i32.shl local.get $2 @@ -56937,7 +56924,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 6704 i32.load @@ -56945,10 +56932,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.0241 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|0242 end end @@ -56992,7 +56979,7 @@ i32.const 6736 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) local.get $3 i32.load offset=4 @@ -57004,10 +56991,10 @@ local.set $1 loop $for-loop|0244 local.get $1 - local.get $10 + local.get $9 i32.gt_s if - local.get $10 + local.get $9 i32.const 2 i32.shl local.get $2 @@ -57018,7 +57005,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 6736 i32.load @@ -57026,10 +57013,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.0 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|0244 end end @@ -57041,7 +57028,7 @@ i32.const 6768 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.0246 (result i32) local.get $3 i32.load offset=4 @@ -57053,10 +57040,10 @@ local.set $1 loop $for-loop|0247 local.get $1 - local.get $10 + local.get $9 i32.gt_s if - local.get $10 + local.get $9 i32.const 2 i32.shl local.get $2 @@ -57067,7 +57054,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 6768 i32.load @@ -57075,10 +57062,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.0246 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|0247 end end @@ -57122,7 +57109,7 @@ i32.const 6800 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) local.get $3 i32.load offset=4 @@ -57134,10 +57121,10 @@ local.set $1 loop $for-loop|0249 local.get $1 - local.get $10 + local.get $9 i32.gt_s if - local.get $10 + local.get $9 i32.const 2 i32.shl local.get $2 @@ -57148,7 +57135,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 6800 i32.load @@ -57156,10 +57143,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.0 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|0249 end end @@ -57171,7 +57158,7 @@ i32.const 6832 i32.store offset=4 i32.const 0 - local.set $10 + local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.0251 (result i32) local.get $3 i32.load offset=4 @@ -57183,10 +57170,10 @@ local.set $1 loop $for-loop|0252 local.get $1 - local.get $10 + local.get $9 i32.gt_s if - local.get $10 + local.get $9 i32.const 2 i32.shl local.get $2 @@ -57197,7 +57184,7 @@ global.set $~argumentsLength i32.const 0 local.get $0 - local.get $10 + local.get $9 local.get $3 i32.const 6832 i32.load @@ -57205,10 +57192,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.0251 drop - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|0252 end end @@ -57252,7 +57239,7 @@ i32.const 6864 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0 (result i32) local.get $2 i32.load offset=4 @@ -57264,21 +57251,21 @@ local.set $0 loop $for-loop|0254 local.get $0 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 3 i32.shl local.get $1 i32.add i64.load - local.set $6 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $6 - local.get $11 + local.get $8 + local.get $10 local.get $2 i32.const 6864 i32.load @@ -57286,10 +57273,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0 drop - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|0254 end end @@ -57301,7 +57288,7 @@ i32.const 6896 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0256 (result i32) local.get $2 i32.load offset=4 @@ -57313,21 +57300,21 @@ local.set $0 loop $for-loop|0257 local.get $0 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 3 i32.shl local.get $1 i32.add i64.load - local.set $6 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $6 - local.get $11 + local.get $8 + local.get $10 local.get $2 i32.const 6896 i32.load @@ -57335,10 +57322,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0256 drop - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|0257 end end @@ -57382,7 +57369,7 @@ i32.const 6928 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0 (result i32) local.get $2 i32.load offset=4 @@ -57394,21 +57381,21 @@ local.set $0 loop $for-loop|0259 local.get $0 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 3 i32.shl local.get $1 i32.add i64.load - local.set $6 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $6 - local.get $11 + local.get $8 + local.get $10 local.get $2 i32.const 6928 i32.load @@ -57416,10 +57403,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0 drop - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|0259 end end @@ -57431,7 +57418,7 @@ i32.const 6960 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0261 (result i32) local.get $2 i32.load offset=4 @@ -57443,21 +57430,21 @@ local.set $0 loop $for-loop|0262 local.get $0 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 3 i32.shl local.get $1 i32.add i64.load - local.set $6 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $6 - local.get $11 + local.get $8 + local.get $10 local.get $2 i32.const 6960 i32.load @@ -57465,10 +57452,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0261 drop - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|0262 end end @@ -57512,7 +57499,7 @@ i32.const 6992 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) local.get $2 i32.load offset=4 @@ -57524,10 +57511,10 @@ local.set $0 loop $for-loop|0264 local.get $0 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 2 i32.shl local.get $1 @@ -57538,7 +57525,7 @@ global.set $~argumentsLength i32.const 0 local.get $5 - local.get $11 + local.get $10 local.get $2 i32.const 6992 i32.load @@ -57546,10 +57533,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|0264 end end @@ -57561,7 +57548,7 @@ i32.const 7024 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0266 (result i32) local.get $2 i32.load offset=4 @@ -57573,10 +57560,10 @@ local.set $0 loop $for-loop|0267 local.get $0 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 2 i32.shl local.get $1 @@ -57587,7 +57574,7 @@ global.set $~argumentsLength i32.const 0 local.get $5 - local.get $11 + local.get $10 local.get $2 i32.const 7024 i32.load @@ -57595,10 +57582,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0266 drop - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|0267 end end @@ -57642,7 +57629,7 @@ i32.const 7056 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) local.get $2 i32.load offset=4 @@ -57654,21 +57641,21 @@ local.set $0 loop $for-loop|0269 local.get $0 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 3 i32.shl local.get $1 i32.add f64.load - local.set $4 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $4 - local.get $11 + local.get $7 + local.get $10 local.get $2 i32.const 7056 i32.load @@ -57676,10 +57663,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|0269 end end @@ -57691,7 +57678,7 @@ i32.const 7088 i32.store offset=4 i32.const 0 - local.set $11 + local.set $10 block $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0271 (result i32) local.get $2 i32.load offset=4 @@ -57703,21 +57690,21 @@ local.set $0 loop $for-loop|0272 local.get $0 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 3 i32.shl local.get $1 i32.add f64.load - local.set $4 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $4 - local.get $11 + local.get $7 + local.get $10 local.get $2 i32.const 7088 i32.load @@ -57725,10 +57712,10 @@ i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0271 drop - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|0272 end end @@ -57797,7 +57784,7 @@ i32.const 7200 i32.store offset=8 i32.const 0 - local.set $11 + local.set $10 local.get $3 i32.load offset=4 local.set $2 @@ -57806,24 +57793,24 @@ local.set $1 loop $for-loop|054274 local.get $1 - local.get $11 + local.get $10 i32.gt_s if local.get $2 - local.get $11 + local.get $10 i32.add i32.load8_s i32.const 3 global.set $~argumentsLength - local.get $11 + local.get $10 local.get $3 i32.const 7200 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|054274 end end @@ -57896,7 +57883,7 @@ i32.const 7232 i32.store offset=8 i32.const 0 - local.set $11 + local.set $10 local.get $3 i32.load offset=4 local.set $2 @@ -57905,24 +57892,24 @@ local.set $1 loop $for-loop|056 local.get $1 - local.get $11 + local.get $10 i32.gt_s if local.get $2 - local.get $11 + local.get $10 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength - local.get $11 + local.get $10 local.get $3 i32.const 7232 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|056 end end @@ -57995,7 +57982,7 @@ i32.const 7264 i32.store offset=8 i32.const 0 - local.set $11 + local.set $10 local.get $3 i32.load offset=4 local.set $2 @@ -58004,24 +57991,24 @@ local.set $1 loop $for-loop|059 local.get $1 - local.get $11 + local.get $10 i32.gt_s if local.get $2 - local.get $11 + local.get $10 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength - local.get $11 + local.get $10 local.get $3 i32.const 7264 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|059 end end @@ -58091,7 +58078,7 @@ i32.const 7296 i32.store offset=8 i32.const 0 - local.set $11 + local.set $10 local.get $3 i32.load offset=4 local.set $2 @@ -58102,10 +58089,10 @@ local.set $1 loop $for-loop|061278 local.get $1 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 1 i32.shl local.get $2 @@ -58113,15 +58100,15 @@ i32.load16_s i32.const 3 global.set $~argumentsLength - local.get $11 + local.get $10 local.get $3 i32.const 7296 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|061278 end end @@ -58194,7 +58181,7 @@ i32.const 7328 i32.store offset=8 i32.const 0 - local.set $11 + local.set $10 local.get $3 i32.load offset=4 local.set $2 @@ -58205,10 +58192,10 @@ local.set $1 loop $for-loop|063280 local.get $1 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 1 i32.shl local.get $2 @@ -58216,15 +58203,15 @@ i32.load16_u i32.const 3 global.set $~argumentsLength - local.get $11 + local.get $10 local.get $3 i32.const 7328 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|063280 end end @@ -58291,7 +58278,7 @@ i32.const 7360 i32.store offset=8 i32.const 0 - local.set $11 + local.set $10 local.get $3 i32.load offset=4 local.set $2 @@ -58302,10 +58289,10 @@ local.set $1 loop $for-loop|065 local.get $1 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 2 i32.shl local.get $2 @@ -58313,15 +58300,15 @@ i32.load i32.const 3 global.set $~argumentsLength - local.get $11 + local.get $10 local.get $3 i32.const 7360 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|065 end end @@ -58388,7 +58375,7 @@ i32.const 7392 i32.store offset=8 i32.const 0 - local.set $11 + local.set $10 local.get $3 i32.load offset=4 local.set $2 @@ -58399,10 +58386,10 @@ local.set $1 loop $for-loop|067 local.get $1 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 2 i32.shl local.get $2 @@ -58410,15 +58397,15 @@ i32.load i32.const 3 global.set $~argumentsLength - local.get $11 + local.get $10 local.get $3 i32.const 7392 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|067 end end @@ -58488,7 +58475,7 @@ i32.const 7424 i32.store offset=8 i32.const 0 - local.set $11 + local.set $10 local.get $2 i32.load offset=4 local.set $1 @@ -58499,10 +58486,10 @@ local.set $0 loop $for-loop|069 local.get $0 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 3 i32.shl local.get $1 @@ -58510,15 +58497,15 @@ i64.load i32.const 3 global.set $~argumentsLength - local.get $11 + local.get $10 local.get $2 i32.const 7424 i32.load call_indirect $0 (type $i64_i32_i32_=>_none) - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|069 end end @@ -58588,7 +58575,7 @@ i32.const 7456 i32.store offset=8 i32.const 0 - local.set $11 + local.set $10 local.get $2 i32.load offset=4 local.set $1 @@ -58599,10 +58586,10 @@ local.set $0 loop $for-loop|071285 local.get $0 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 3 i32.shl local.get $1 @@ -58610,15 +58597,15 @@ i64.load i32.const 3 global.set $~argumentsLength - local.get $11 + local.get $10 local.get $2 i32.const 7456 i32.load call_indirect $0 (type $i64_i32_i32_=>_none) - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|071285 end end @@ -58688,7 +58675,7 @@ i32.const 7488 i32.store offset=8 i32.const 0 - local.set $11 + local.set $10 local.get $2 i32.load offset=4 local.set $1 @@ -58699,10 +58686,10 @@ local.set $0 loop $for-loop|073287 local.get $0 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 2 i32.shl local.get $1 @@ -58710,15 +58697,15 @@ f32.load i32.const 3 global.set $~argumentsLength - local.get $11 + local.get $10 local.get $2 i32.const 7488 i32.load call_indirect $0 (type $f32_i32_i32_=>_none) - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|073287 end end @@ -58788,7 +58775,7 @@ i32.const 7520 i32.store offset=8 i32.const 0 - local.set $11 + local.set $10 local.get $2 i32.load offset=4 local.set $1 @@ -58799,10 +58786,10 @@ local.set $0 loop $for-loop|075 local.get $0 - local.get $11 + local.get $10 i32.gt_s if - local.get $11 + local.get $10 i32.const 3 i32.shl local.get $1 @@ -58810,15 +58797,15 @@ f64.load i32.const 3 global.set $~argumentsLength - local.get $11 + local.get $10 local.get $2 i32.const 7520 i32.load call_indirect $0 (type $f64_i32_i32_=>_none) - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $for-loop|075 end end @@ -58858,26 +58845,26 @@ i32.load local.tee $2 call $~lib/typedarray/Int8Array#constructor - local.tee $0 + local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $2 call $~lib/typedarray/Int8Array#constructor - local.tee $1 + local.tee $0 i32.store offset=8 loop $for-loop|028 local.get $2 local.get $3 i32.gt_s if - local.get $0 + local.get $1 local.get $3 i32.const 7616 local.get $3 call $~lib/array/Array#__get i32.extend8_s call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $0 local.get $3 i32.const 7616 local.get $3 @@ -58891,7 +58878,7 @@ br $for-loop|028 end end - local.get $0 + local.get $1 call $~lib/typedarray/Int8Array#reverse drop i32.const 0 @@ -58901,7 +58888,7 @@ local.get $3 i32.gt_s if - local.get $0 + local.get $1 local.get $3 call $~lib/typedarray/Int8Array#__get i32.const 7616 @@ -58922,15 +58909,15 @@ end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 4 i32.const 8 call $~lib/typedarray/Int8Array#subarray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int8Array#reverse local.tee $0 i32.store offset=16 @@ -58990,19 +58977,19 @@ i32.load local.tee $2 call $~lib/typedarray/Uint8Array#constructor - local.tee $0 + local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $2 call $~lib/typedarray/Uint8Array#constructor - local.tee $1 + local.tee $0 i32.store offset=8 loop $for-loop|030 local.get $2 local.get $3 i32.gt_s if - local.get $0 + local.get $1 local.get $3 i32.const 7616 local.get $3 @@ -59010,7 +58997,7 @@ i32.const 255 i32.and call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 local.get $3 i32.const 7616 local.get $3 @@ -59025,7 +59012,7 @@ br $for-loop|030 end end - local.get $0 + local.get $1 call $~lib/typedarray/Int8Array#reverse drop i32.const 0 @@ -59035,7 +59022,7 @@ local.get $3 i32.gt_s if - local.get $0 + local.get $1 local.get $3 call $~lib/typedarray/Uint8Array#__get i32.const 7616 @@ -59057,14 +59044,14 @@ end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 8 call $~lib/typedarray/Uint8Array#subarray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int8Array#reverse local.tee $0 i32.store offset=16 @@ -59124,19 +59111,19 @@ i32.load local.tee $2 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 + local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $2 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $1 + local.tee $0 i32.store offset=8 loop $for-loop|032 local.get $2 local.get $3 i32.gt_s if - local.get $0 + local.get $1 local.get $3 i32.const 7616 local.get $3 @@ -59144,7 +59131,7 @@ i32.const 255 i32.and call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $0 local.get $3 i32.const 7616 local.get $3 @@ -59159,7 +59146,7 @@ br $for-loop|032 end end - local.get $0 + local.get $1 call $~lib/typedarray/Int8Array#reverse drop i32.const 0 @@ -59169,7 +59156,7 @@ local.get $3 i32.gt_s if - local.get $0 + local.get $1 local.get $3 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 7616 @@ -59191,14 +59178,14 @@ end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 8 call $~lib/typedarray/Uint8ClampedArray#subarray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int8Array#reverse local.tee $0 i32.store offset=16 @@ -59258,26 +59245,26 @@ i32.load local.tee $2 call $~lib/typedarray/Int16Array#constructor - local.tee $0 + local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $2 call $~lib/typedarray/Int16Array#constructor - local.tee $1 + local.tee $0 i32.store offset=8 loop $for-loop|034 local.get $2 local.get $3 i32.gt_s if - local.get $0 + local.get $1 local.get $3 i32.const 7616 local.get $3 call $~lib/array/Array#__get i32.extend16_s call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $0 local.get $3 i32.const 7616 local.get $3 @@ -59291,7 +59278,7 @@ br $for-loop|034 end end - local.get $0 + local.get $1 call $~lib/typedarray/Int16Array#reverse drop i32.const 0 @@ -59301,7 +59288,7 @@ local.get $3 i32.gt_s if - local.get $0 + local.get $1 local.get $3 call $~lib/typedarray/Int16Array#__get i32.const 7616 @@ -59322,14 +59309,14 @@ end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 8 call $~lib/typedarray/Int16Array#subarray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int16Array#reverse local.tee $0 i32.store offset=16 @@ -59389,19 +59376,19 @@ i32.load local.tee $2 call $~lib/typedarray/Uint16Array#constructor - local.tee $0 + local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $2 call $~lib/typedarray/Uint16Array#constructor - local.tee $1 + local.tee $0 i32.store offset=8 loop $for-loop|037 local.get $2 local.get $3 i32.gt_s if - local.get $0 + local.get $1 local.get $3 i32.const 7616 local.get $3 @@ -59409,7 +59396,7 @@ i32.const 65535 i32.and call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $0 local.get $3 i32.const 7616 local.get $3 @@ -59424,7 +59411,7 @@ br $for-loop|037 end end - local.get $0 + local.get $1 call $~lib/typedarray/Int16Array#reverse drop i32.const 0 @@ -59434,7 +59421,7 @@ local.get $3 i32.gt_s if - local.get $0 + local.get $1 local.get $3 call $~lib/typedarray/Uint16Array#__get i32.const 7616 @@ -59456,14 +59443,14 @@ end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 8 call $~lib/typedarray/Uint16Array#subarray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int16Array#reverse local.tee $0 i32.store offset=16 @@ -59515,9 +59502,9 @@ global.get $~lib/memory/__stack_pointer i32.const 1 call $~lib/typedarray/Float64Array#constructor - local.tee $7 + local.tee $4 i32.store offset=12 - local.get $7 + local.get $4 i32.const 0 f64.const nan:0x8000000000000 call $~lib/typedarray/Float64Array#__set @@ -59526,7 +59513,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $7 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -59536,7 +59523,7 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $7 + local.get $4 i32.load offset=4 local.set $2 loop $while-continue|0 @@ -59576,10 +59563,10 @@ unreachable end i32.const 0 - local.set $11 + local.set $10 block $~lib/typedarray/INCLUDES<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) i32.const 0 - local.get $7 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -59590,34 +59577,34 @@ i32.eqz br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $7 + local.get $4 i32.load offset=4 local.set $0 loop $while-continue|0289 local.get $1 - local.get $11 + local.get $10 i32.gt_s if i32.const 1 - local.get $11 + local.get $10 i32.const 3 i32.shl local.get $0 i32.add f64.load - local.tee $4 + local.tee $7 f64.const nan:0x8000000000000 f64.eq - local.get $4 - local.get $4 + local.get $7 + local.get $7 f64.ne i32.or br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $while-continue|0289 end end @@ -59635,9 +59622,9 @@ global.get $~lib/memory/__stack_pointer i32.const 1 call $~lib/typedarray/Float32Array#constructor - local.tee $7 + local.tee $4 i32.store offset=24 - local.get $7 + local.get $4 i32.const 0 f32.const nan:0x400000 call $~lib/typedarray/Float32Array#__set @@ -59646,7 +59633,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $7 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -59656,7 +59643,7 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $7 + local.get $4 i32.load offset=4 local.set $2 loop $while-continue|0290 @@ -59696,10 +59683,10 @@ unreachable end i32.const 0 - local.set $11 + local.set $10 block $~lib/typedarray/INCLUDES<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) i32.const 0 - local.get $7 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -59710,16 +59697,16 @@ i32.eqz br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $7 + local.get $4 i32.load offset=4 local.set $0 loop $while-continue|078 local.get $1 - local.get $11 + local.get $10 i32.gt_s if i32.const 1 - local.get $11 + local.get $10 i32.const 2 i32.shl local.get $0 @@ -59734,10 +59721,10 @@ i32.or br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $11 + local.get $10 i32.const 1 i32.add - local.set $11 + local.set $10 br $while-continue|078 end end @@ -60806,7 +60793,7 @@ unreachable end i32.const 0 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -60831,49 +60818,49 @@ local.get $0 i32.const 10940 i32.load - local.tee $3 + local.tee $6 call $~lib/typedarray/Int8Array#constructor - local.tee $8 + local.tee $4 i32.store offset=4 loop $for-loop|041 - local.get $2 - local.get $3 + local.get $1 + local.get $6 i32.lt_s if - local.get $8 - local.get $2 + local.get $4 + local.get $1 i32.const 10928 - local.get $2 + local.get $1 call $~lib/array/Array#__get i32.extend8_s call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|041 end end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $8 + local.get $4 i32.load local.tee $0 i32.store offset=8 local.get $1 local.get $0 - local.get $8 + local.get $4 i32.load offset=4 - local.get $8 + local.get $4 i32.load i32.sub local.tee $0 - local.get $8 + local.get $4 i32.load offset=8 local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $7 + local.tee $3 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -60887,60 +60874,60 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $7 + local.get $3 i32.const 20 i32.sub i32.load offset=16 - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store - local.get $1 - local.get $7 + local.get $0 + local.get $3 i32.store - local.get $7 + local.get $3 if - local.get $1 - local.get $7 + local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 - i32.store offset=8 local.get $1 - local.get $7 + i32.store offset=8 + local.get $0 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 i32.const 0 - local.set $2 + local.set $1 loop $for-loop|142 - local.get $2 - local.get $3 + local.get $1 + local.get $6 i32.lt_s if - local.get $8 - local.get $2 + local.get $4 + local.get $1 call $~lib/typedarray/Int8Array#__get + local.get $0 local.get $1 - local.get $2 call $~lib/typedarray/Int8Array#__get i32.ne br_if $folding-inner29 - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|142 end end @@ -60974,16 +60961,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $2 - call $~lib/typedarray/Uint8Array#constructor local.tee $3 + call $~lib/typedarray/Uint8Array#constructor + local.tee $2 i32.store offset=4 loop $for-loop|043 local.get $1 - local.get $2 + local.get $3 i32.lt_s if - local.get $3 + local.get $2 local.get $1 i32.const 10928 local.get $1 @@ -61000,20 +60987,20 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $3 + local.get $2 i32.load local.tee $0 i32.store offset=8 local.get $1 local.get $0 - local.get $3 + local.get $2 i32.load offset=4 - local.get $3 + local.get $2 i32.load i32.sub local.tee $0 local.get $0 - local.get $3 + local.get $2 i32.load offset=8 i32.add call $~lib/arraybuffer/ArrayBuffer#slice @@ -61031,10 +61018,10 @@ local.set $1 loop $for-loop|144 local.get $1 - local.get $2 + local.get $3 i32.lt_s if - local.get $3 + local.get $2 local.get $1 call $~lib/typedarray/Uint8Array#__get local.get $0 @@ -61054,7 +61041,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -61079,50 +61066,50 @@ local.get $0 i32.const 10940 i32.load - local.tee $3 + local.tee $6 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $8 + local.tee $4 i32.store offset=4 loop $for-loop|047 - local.get $2 - local.get $3 + local.get $1 + local.get $6 i32.lt_s if - local.get $8 - local.get $2 + local.get $4 + local.get $1 i32.const 10928 - local.get $2 + local.get $1 call $~lib/array/Array#__get i32.const 255 i32.and call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|047 end end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $8 + local.get $4 i32.load local.tee $0 i32.store offset=8 local.get $1 local.get $0 - local.get $8 + local.get $4 i32.load offset=4 - local.get $8 + local.get $4 i32.load i32.sub local.tee $0 - local.get $8 + local.get $4 i32.load offset=8 local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $7 + local.tee $3 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61136,60 +61123,60 @@ i32.lt_s br_if $folding-inner23 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $7 + local.get $3 i32.const 20 i32.sub i32.load offset=16 - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store - local.get $1 - local.get $7 + local.get $0 + local.get $3 i32.store - local.get $7 + local.get $3 if - local.get $1 - local.get $7 + local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 - i32.store offset=8 local.get $1 - local.get $7 + i32.store offset=8 + local.get $0 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 i32.const 0 - local.set $2 + local.set $1 loop $for-loop|148 - local.get $2 - local.get $3 + local.get $1 + local.get $6 i32.lt_s if - local.get $8 - local.get $2 + local.get $4 + local.get $1 call $~lib/typedarray/Uint8ClampedArray#__get + local.get $0 local.get $1 - local.get $2 call $~lib/typedarray/Uint8ClampedArray#__get i32.ne br_if $folding-inner29 - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|148 end end @@ -61223,16 +61210,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $2 + local.tee $6 call $~lib/typedarray/Int16Array#constructor - local.tee $8 + local.tee $4 i32.store offset=4 loop $for-loop|053 local.get $1 - local.get $2 + local.get $6 i32.lt_s if - local.get $8 + local.get $4 local.get $1 i32.const 10928 local.get $1 @@ -61248,19 +61235,19 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $8 + local.get $4 i32.load local.tee $0 i32.store offset=8 local.get $1 local.get $0 - local.get $8 + local.get $4 i32.load offset=4 - local.get $8 + local.get $4 i32.load i32.sub local.tee $0 - local.get $8 + local.get $4 i32.load offset=8 local.get $0 i32.add @@ -61285,7 +61272,7 @@ i32.const 20 i32.sub i32.load offset=16 - local.tee $0 + local.tee $1 i32.const 1 i32.and br_if $folding-inner30 @@ -61293,40 +61280,40 @@ i32.const 12 i32.const 6 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $0 i32.store - local.get $7 + local.get $0 local.get $3 i32.store local.get $3 if - local.get $7 + local.get $0 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $7 local.get $0 + local.get $1 i32.store offset=8 - local.get $7 + local.get $0 local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|154 local.get $1 - local.get $2 + local.get $6 i32.lt_s if - local.get $8 + local.get $4 local.get $1 call $~lib/typedarray/Int16Array#__get - local.get $7 + local.get $0 local.get $1 call $~lib/typedarray/Int16Array#__get i32.ne @@ -61368,16 +61355,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $2 + local.tee $6 call $~lib/typedarray/Uint16Array#constructor - local.tee $8 + local.tee $4 i32.store offset=4 loop $for-loop|057 local.get $1 - local.get $2 + local.get $6 i32.lt_s if - local.get $8 + local.get $4 local.get $1 i32.const 10928 local.get $1 @@ -61394,19 +61381,19 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $8 + local.get $4 i32.load local.tee $0 i32.store offset=8 local.get $1 local.get $0 - local.get $8 + local.get $4 i32.load offset=4 - local.get $8 + local.get $4 i32.load i32.sub local.tee $0 - local.get $8 + local.get $4 i32.load offset=8 local.get $0 i32.add @@ -61431,7 +61418,7 @@ i32.const 20 i32.sub i32.load offset=16 - local.tee $0 + local.tee $1 i32.const 1 i32.and br_if $folding-inner30 @@ -61439,40 +61426,40 @@ i32.const 12 i32.const 7 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $0 i32.store - local.get $7 + local.get $0 local.get $3 i32.store local.get $3 if - local.get $7 + local.get $0 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $7 local.get $0 + local.get $1 i32.store offset=8 - local.get $7 + local.get $0 local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|158 local.get $1 - local.get $2 + local.get $6 i32.lt_s if - local.get $8 + local.get $4 local.get $1 call $~lib/typedarray/Uint16Array#__get - local.get $7 + local.get $0 local.get $1 call $~lib/typedarray/Uint16Array#__get i32.ne @@ -61514,16 +61501,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $2 + local.tee $6 call $~lib/typedarray/Int32Array#constructor - local.tee $8 + local.tee $4 i32.store offset=4 loop $for-loop|060 local.get $1 - local.get $2 + local.get $6 i32.lt_s if - local.get $8 + local.get $4 local.get $1 i32.const 10928 local.get $1 @@ -61538,19 +61525,19 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $8 + local.get $4 i32.load local.tee $0 i32.store offset=8 local.get $1 local.get $0 - local.get $8 + local.get $4 i32.load offset=4 - local.get $8 + local.get $4 i32.load i32.sub local.tee $0 - local.get $8 + local.get $4 i32.load offset=8 local.get $0 i32.add @@ -61575,7 +61562,7 @@ i32.const 20 i32.sub i32.load offset=16 - local.tee $0 + local.tee $1 i32.const 3 i32.and br_if $folding-inner30 @@ -61583,40 +61570,40 @@ i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $0 i32.store - local.get $7 + local.get $0 local.get $3 i32.store local.get $3 if - local.get $7 + local.get $0 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $7 local.get $0 + local.get $1 i32.store offset=8 - local.get $7 + local.get $0 local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|161 local.get $1 - local.get $2 + local.get $6 i32.lt_s if - local.get $8 + local.get $4 local.get $1 call $~lib/typedarray/Int32Array#__get - local.get $7 + local.get $0 local.get $1 call $~lib/typedarray/Int32Array#__get i32.ne @@ -61658,16 +61645,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $2 + local.tee $6 call $~lib/typedarray/Uint32Array#constructor - local.tee $8 + local.tee $4 i32.store offset=4 loop $for-loop|064 local.get $1 - local.get $2 + local.get $6 i32.lt_s if - local.get $8 + local.get $4 local.get $1 i32.const 10928 local.get $1 @@ -61682,19 +61669,19 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $8 + local.get $4 i32.load local.tee $0 i32.store offset=8 local.get $1 local.get $0 - local.get $8 + local.get $4 i32.load offset=4 - local.get $8 + local.get $4 i32.load i32.sub local.tee $0 - local.get $8 + local.get $4 i32.load offset=8 local.get $0 i32.add @@ -61719,7 +61706,7 @@ i32.const 20 i32.sub i32.load offset=16 - local.tee $0 + local.tee $1 i32.const 3 i32.and br_if $folding-inner30 @@ -61727,40 +61714,40 @@ i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $0 i32.store - local.get $7 + local.get $0 local.get $3 i32.store local.get $3 if - local.get $7 + local.get $0 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $7 local.get $0 + local.get $1 i32.store offset=8 - local.get $7 + local.get $0 local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|165 local.get $1 - local.get $2 + local.get $6 i32.lt_s if - local.get $8 + local.get $4 local.get $1 call $~lib/typedarray/Uint32Array#__get - local.get $7 + local.get $0 local.get $1 call $~lib/typedarray/Uint32Array#__get i32.ne @@ -61802,16 +61789,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $2 + local.tee $6 call $~lib/typedarray/Int64Array#constructor - local.tee $8 + local.tee $4 i32.store offset=4 loop $for-loop|070 local.get $1 - local.get $2 + local.get $6 i32.lt_s if - local.get $8 + local.get $4 local.get $1 i32.const 10928 local.get $1 @@ -61827,19 +61814,19 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $8 + local.get $4 i32.load local.tee $0 i32.store offset=8 local.get $1 local.get $0 - local.get $8 + local.get $4 i32.load offset=4 - local.get $8 + local.get $4 i32.load i32.sub local.tee $0 - local.get $8 + local.get $4 i32.load offset=8 local.get $0 i32.add @@ -61864,7 +61851,7 @@ i32.const 20 i32.sub i32.load offset=16 - local.tee $0 + local.tee $1 i32.const 7 i32.and br_if $folding-inner30 @@ -61872,40 +61859,40 @@ i32.const 12 i32.const 10 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $0 i32.store - local.get $7 + local.get $0 local.get $3 i32.store local.get $3 if - local.get $7 + local.get $0 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $7 local.get $0 + local.get $1 i32.store offset=8 - local.get $7 + local.get $0 local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|171 local.get $1 - local.get $2 + local.get $6 i32.lt_s if - local.get $8 + local.get $4 local.get $1 call $~lib/typedarray/Int64Array#__get - local.get $7 + local.get $0 local.get $1 call $~lib/typedarray/Int64Array#__get i64.ne @@ -61947,16 +61934,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $2 + local.tee $6 call $~lib/typedarray/Uint64Array#constructor - local.tee $8 + local.tee $4 i32.store offset=4 loop $for-loop|074 local.get $1 - local.get $2 + local.get $6 i32.lt_s if - local.get $8 + local.get $4 local.get $1 i32.const 10928 local.get $1 @@ -61972,19 +61959,19 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $8 + local.get $4 i32.load local.tee $0 i32.store offset=8 local.get $1 local.get $0 - local.get $8 + local.get $4 i32.load offset=4 - local.get $8 + local.get $4 i32.load i32.sub local.tee $0 - local.get $8 + local.get $4 i32.load offset=8 local.get $0 i32.add @@ -62009,7 +61996,7 @@ i32.const 20 i32.sub i32.load offset=16 - local.tee $0 + local.tee $1 i32.const 7 i32.and br_if $folding-inner30 @@ -62017,40 +62004,40 @@ i32.const 12 i32.const 11 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $0 i32.store - local.get $7 + local.get $0 local.get $3 i32.store local.get $3 if - local.get $7 + local.get $0 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $7 local.get $0 + local.get $1 i32.store offset=8 - local.get $7 + local.get $0 local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|175 local.get $1 - local.get $2 + local.get $6 i32.lt_s if - local.get $8 + local.get $4 local.get $1 call $~lib/typedarray/Uint64Array#__get - local.get $7 + local.get $0 local.get $1 call $~lib/typedarray/Uint64Array#__get i64.ne @@ -62092,16 +62079,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $2 + local.tee $6 call $~lib/typedarray/Float32Array#constructor - local.tee $8 + local.tee $4 i32.store offset=4 loop $for-loop|077 local.get $1 - local.get $2 + local.get $6 i32.lt_s if - local.get $8 + local.get $4 local.get $1 i32.const 10928 local.get $1 @@ -62117,19 +62104,19 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $8 + local.get $4 i32.load local.tee $0 i32.store offset=8 local.get $1 local.get $0 - local.get $8 + local.get $4 i32.load offset=4 - local.get $8 + local.get $4 i32.load i32.sub local.tee $0 - local.get $8 + local.get $4 i32.load offset=8 local.get $0 i32.add @@ -62154,7 +62141,7 @@ i32.const 20 i32.sub i32.load offset=16 - local.tee $0 + local.tee $1 i32.const 3 i32.and br_if $folding-inner30 @@ -62162,40 +62149,40 @@ i32.const 12 i32.const 12 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $0 i32.store - local.get $7 + local.get $0 local.get $3 i32.store local.get $3 if - local.get $7 + local.get $0 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $7 local.get $0 + local.get $1 i32.store offset=8 - local.get $7 + local.get $0 local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|178 local.get $1 - local.get $2 + local.get $6 i32.lt_s if - local.get $8 + local.get $4 local.get $1 call $~lib/typedarray/Float32Array#__get - local.get $7 + local.get $0 local.get $1 call $~lib/typedarray/Float32Array#__get f32.ne @@ -62237,16 +62224,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $2 + local.tee $6 call $~lib/typedarray/Float64Array#constructor - local.tee $8 + local.tee $4 i32.store offset=4 loop $for-loop|080 local.get $1 - local.get $2 + local.get $6 i32.lt_s if - local.get $8 + local.get $4 local.get $1 i32.const 10928 local.get $1 @@ -62262,19 +62249,19 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $8 + local.get $4 i32.load local.tee $0 i32.store offset=8 local.get $1 local.get $0 - local.get $8 + local.get $4 i32.load offset=4 - local.get $8 + local.get $4 i32.load i32.sub local.tee $0 - local.get $8 + local.get $4 i32.load offset=8 local.get $0 i32.add @@ -62299,7 +62286,7 @@ i32.const 20 i32.sub i32.load offset=16 - local.tee $0 + local.tee $1 i32.const 7 i32.and br_if $folding-inner30 @@ -62307,40 +62294,40 @@ i32.const 12 i32.const 13 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $0 i32.store - local.get $7 + local.get $0 local.get $3 i32.store local.get $3 if - local.get $7 + local.get $0 local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $7 local.get $0 + local.get $1 i32.store offset=8 - local.get $7 + local.get $0 local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|181 local.get $1 - local.get $2 + local.get $6 i32.lt_s if - local.get $8 + local.get $4 local.get $1 call $~lib/typedarray/Float64Array#__get - local.get $7 + local.get $0 local.get $1 call $~lib/typedarray/Float64Array#__get f64.ne @@ -62370,7 +62357,7 @@ global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $8 + local.tee $6 i32.store offset=24 global.get $~lib/memory/__stack_pointer i32.const 3 @@ -62392,38 +62379,38 @@ global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Int64Array#constructor - local.tee $7 + local.tee $3 i32.store offset=8 - local.get $7 + local.get $3 i32.const 0 i64.const -10 call $~lib/typedarray/Int64Array#__set - local.get $7 + local.get $3 i32.const 1 i64.const 100 call $~lib/typedarray/Int64Array#__set - local.get $7 + local.get $3 i32.const 2 i64.const 10 call $~lib/typedarray/Int64Array#__set - local.get $7 + local.get $3 i32.const 3 i64.const 300 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 2 call $~lib/typedarray/Int32Array#constructor - local.tee $3 + local.tee $4 i32.store offset=16 - local.get $3 + local.get $4 i32.const 0 i32.const 300 call $~lib/typedarray/Int32Array#__set - local.get $3 + local.get $4 i32.const 1 i32.const -1 call $~lib/typedarray/Int32Array#__set - local.get $8 + local.get $6 i32.load offset=8 local.get $0 i32.load offset=8 @@ -62433,7 +62420,7 @@ i32.add i32.lt_s br_if $folding-inner19 - local.get $8 + local.get $6 i32.load offset=4 i32.const 1 i32.add @@ -62448,13 +62435,13 @@ local.set $0 loop $for-loop|082 local.get $0 - local.get $9 + local.get $16 i32.gt_s if local.get $2 - local.get $9 + local.get $16 i32.add - local.get $9 + local.get $16 i32.const 2 i32.shl local.get $1 @@ -62476,22 +62463,22 @@ i32.const 0 end i32.store8 - local.get $9 + local.get $16 i32.const 1 i32.add - local.set $9 + local.set $16 br $for-loop|082 end end - local.get $8 - local.get $7 + local.get $6 + local.get $3 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int64Array> i32.const 0 - local.set $10 - local.get $8 + local.set $9 + local.get $6 i32.load offset=8 - local.get $3 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -62499,51 +62486,51 @@ i32.add i32.lt_s br_if $folding-inner19 - local.get $8 + local.get $6 i32.load offset=4 i32.const 8 i32.add - local.set $2 - local.get $3 + local.set $3 + local.get $4 i32.load offset=4 - local.set $1 - local.get $3 + local.set $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 + local.set $1 loop $for-loop|086311 - local.get $0 - local.get $10 + local.get $1 + local.get $9 i32.gt_s if - local.get $2 - local.get $10 + local.get $3 + local.get $9 i32.add - local.get $10 + local.get $9 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load - local.tee $3 + local.tee $0 i32.const 255 - local.get $3 + local.get $0 i32.sub i32.const 31 i32.shr_s i32.or - local.get $3 + local.get $0 i32.const 31 i32.shr_s i32.const -1 i32.xor i32.and i32.store8 - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|086311 end end @@ -62556,7 +62543,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $8 + local.get $6 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> global.get $~lib/memory/__stack_pointer @@ -62583,27 +62570,27 @@ global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Int16Array#constructor - local.tee $7 + local.tee $4 i32.store - local.get $7 + local.get $4 i32.const 0 i32.const -10 call $~lib/typedarray/Int16Array#__set - local.get $7 + local.get $4 i32.const 1 i32.const 100 call $~lib/typedarray/Int16Array#__set - local.get $7 + local.get $4 i32.const 2 i32.const 10 call $~lib/typedarray/Int16Array#__set - local.get $7 + local.get $4 i32.const 3 i32.const 300 call $~lib/typedarray/Int16Array#__set i32.const 0 - local.set $10 - local.get $8 + local.set $9 + local.get $6 i32.load offset=8 local.get $0 i32.load offset=8 @@ -62611,7 +62598,7 @@ i32.shr_u i32.lt_s br_if $folding-inner19 - local.get $8 + local.get $6 i32.load offset=4 local.set $3 local.get $0 @@ -62624,14 +62611,14 @@ local.set $1 loop $for-loop|090 local.get $1 - local.get $10 + local.get $9 i32.gt_s if local.get $3 - local.get $10 + local.get $9 i32.add i32.const 255 - local.get $10 + local.get $9 i32.const 2 i32.shl local.get $2 @@ -62643,15 +62630,15 @@ i32.gt_u select i32.store8 - local.get $10 + local.get $9 i32.const 1 i32.add - local.set $10 + local.set $9 br $for-loop|090 end end - local.get $8 - local.get $7 + local.get $6 + local.get $4 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int16Array> i32.const 10 @@ -62663,7 +62650,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $8 + local.get $6 local.get $0 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> i32.const 0 @@ -64362,29 +64349,29 @@ local.get $1 local.get $2 i32.shl - local.tee $2 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $1 - i32.const 0 local.get $2 + i32.const 0 + local.get $1 call $~lib/memory/memory.fill local.get $0 - local.get $1 + local.get $2 i32.store - local.get $1 + local.get $2 if local.get $0 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $1 + local.get $2 i32.store offset=4 local.get $0 - local.get $2 + local.get $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 @@ -65359,11 +65346,11 @@ i32.const 0 i32.gt_s select - local.tee $3 - call $~lib/typedarray/Int32Array#constructor local.tee $2 + call $~lib/typedarray/Int32Array#constructor + local.tee $3 i32.store - local.get $2 + local.get $3 i32.load offset=4 local.get $0 i32.load offset=4 @@ -65371,7 +65358,7 @@ i32.const 2 i32.shl i32.add - local.get $3 + local.get $2 i32.const 2 i32.shl call $~lib/memory/memory.copy @@ -65379,7 +65366,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 ) (func $~lib/typedarray/Uint8Array#subarray (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -66193,71 +66180,71 @@ local.get $0 i32.const 31 i32.shr_u - local.tee $1 + local.tee $0 select + local.tee $1 local.tee $2 - local.tee $0 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.get $1 + local.get $0 i32.add - local.tee $3 + local.tee $2 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store - local.get $0 - local.get $2 local.get $3 - call $~lib/util/number/utoa32_dec_lut local.get $1 + local.get $2 + call $~lib/util/number/utoa32_dec_lut + local.get $0 if - local.get $0 + local.get $3 i32.const 45 i32.store16 end @@ -66265,7 +66252,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $3 ) (func $~lib/string/String#substring (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -66312,26 +66299,26 @@ local.get $2 i32.lt_s select - local.tee $1 - local.get $1 + local.tee $4 local.get $3 - i32.gt_s + local.get $4 + i32.lt_s select i32.const 1 i32.shl - local.set $4 + local.set $1 local.get $3 - local.get $1 - local.get $1 + local.get $4 local.get $3 - i32.lt_s + local.get $4 + i32.gt_s select i32.const 1 i32.shl local.tee $3 - local.get $4 + local.get $1 i32.sub - local.tee $1 + local.tee $4 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -66347,7 +66334,7 @@ i32.shl local.get $3 i32.eq - local.get $4 + local.get $1 select if global.get $~lib/memory/__stack_pointer @@ -66358,16 +66345,16 @@ return end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $4 i32.const 1 call $~lib/rt/itcms/__new local.tee $2 i32.store local.get $2 local.get $0 - local.get $4 - i32.add local.get $1 + i32.add + local.get $4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 @@ -66677,22 +66664,22 @@ i32.const 0 i32.gt_s select - local.tee $3 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 local.get $0 local.get $1 i32.add - local.get $3 + local.get $2 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) global.get $~lib/rt/itcms/white diff --git a/tests/compiler/std/uri.optimized.wat b/tests/compiler/std/uri.optimized.wat index 63966f28e2..0189ba6c25 100644 --- a/tests/compiler/std/uri.optimized.wat +++ b/tests/compiler/std/uri.optimized.wat @@ -283,19 +283,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -320,9 +320,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -330,17 +330,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -628,10 +628,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -643,15 +643,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -681,7 +681,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -717,12 +717,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -740,11 +740,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 20752 @@ -752,14 +752,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -769,17 +769,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1259,7 +1259,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1285,32 +1285,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1343,7 +1343,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1351,8 +1351,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1369,7 +1369,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1379,13 +1379,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1401,7 +1401,7 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub local.tee $6 i32.const 16 @@ -1411,23 +1411,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 + local.tee $4 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1457,26 +1457,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1491,7 +1491,7 @@ local.get $2 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1503,7 +1503,7 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1518,12 +1518,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1535,7 +1535,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $2 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1550,25 +1550,25 @@ i32.sub i32.const 3 i32.and - local.tee $2 + local.tee $3 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1578,17 +1578,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1604,22 +1604,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 @@ -1630,11 +1630,11 @@ i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1666,7 +1666,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/util/memory/memcpy (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -2123,115 +2123,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2263,43 +2253,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2573,7 +2561,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $2 + local.tee $3 i32.load i32.const -4 i32.and @@ -2582,20 +2570,20 @@ local.get $1 i32.ge_u if - local.get $2 + local.get $3 local.get $1 i32.store offset=16 local.get $0 return end local.get $1 - local.get $2 + local.get $3 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.load offset=16 local.tee $0 local.get $0 @@ -2603,7 +2591,7 @@ i32.gt_u select call $~lib/memory/memory.copy - local.get $3 + local.get $2 ) (func $~lib/util/uri/encode (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -2633,7 +2621,7 @@ if block $while-break|0 local.get $7 - local.set $4 + local.set $5 loop $do-loop|1 block $do-break|1 local.get $7 @@ -2642,13 +2630,13 @@ local.get $0 i32.add i32.load16_u - local.tee $6 + local.tee $4 i32.const 33 i32.sub i32.const 94 i32.ge_u br_if $do-break|1 - local.get $6 + local.get $4 i32.const 33 i32.sub local.get $2 @@ -2664,14 +2652,14 @@ br_if $do-loop|1 end end - local.get $4 + local.get $5 local.get $7 i32.lt_u if local.get $9 - local.get $5 + local.get $6 local.get $7 - local.get $4 + local.get $5 i32.sub i32.const 1 i32.shl @@ -2680,7 +2668,7 @@ i32.lt_u if local.get $3 - local.get $5 + local.get $6 local.get $8 i32.add local.tee $9 @@ -2688,36 +2676,36 @@ local.set $3 end local.get $3 - local.get $5 + local.get $6 i32.add - local.get $4 + local.get $5 i32.const 1 i32.shl local.get $0 i32.add local.get $8 call $~lib/memory/memory.copy - local.get $5 + local.get $6 local.get $8 i32.add - local.set $5 + local.set $6 local.get $1 local.get $7 i32.le_u br_if $while-break|0 end local.get $9 - local.get $5 + local.get $6 i32.const 6 i32.const 24 - local.get $6 + local.get $4 i32.const 55296 i32.ge_u if - local.get $6 + local.get $4 i32.const 57343 i32.le_u - local.get $6 + local.get $4 i32.const 56320 i32.ge_u i32.and @@ -2729,7 +2717,7 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $4 i32.const 56319 i32.le_u if (result i32) @@ -2753,10 +2741,10 @@ local.get $0 i32.add i32.load16_u - local.tee $4 + local.tee $5 i32.const 56320 i32.lt_u - local.get $4 + local.get $5 i32.const 57343 i32.gt_u i32.or @@ -2768,10 +2756,10 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 i32.const 1023 i32.and - local.get $6 + local.get $4 i32.const 1023 i32.and i32.const 10 @@ -2780,23 +2768,23 @@ i32.const 65536 i32.add else - local.get $6 + local.get $4 end - local.set $6 + local.set $4 end - local.get $6 + local.get $4 i32.const 128 i32.lt_u select i32.add - local.tee $4 + local.tee $5 i32.lt_u if local.get $3 - local.get $4 + local.get $5 i32.const 1 i32.shl - local.get $4 + local.get $5 local.get $1 i32.const 1 i32.gt_u @@ -2805,18 +2793,18 @@ call $~lib/rt/itcms/__renew local.set $3 end - local.get $6 + local.get $4 i32.const 128 i32.lt_u if (result i32) local.get $3 - local.get $5 + local.get $6 i32.add - local.tee $4 + local.tee $5 i32.const 37 i32.store16 + local.get $5 local.get $4 - local.get $6 i32.const 4 i32.shr_u i32.const 15 @@ -2824,7 +2812,7 @@ i32.const 1676 i32.add i32.load8_u - local.get $6 + local.get $4 i32.const 15 i32.and i32.const 1676 @@ -2834,28 +2822,28 @@ i32.shl i32.or i32.store offset=2 - local.get $5 + local.get $6 i32.const 6 i32.add else local.get $3 - local.get $6 + local.get $4 i32.const 2048 i32.lt_u if (result i32) local.get $3 - local.get $5 + local.get $6 i32.add - local.tee $4 + local.tee $5 i32.const 37 i32.store16 + local.get $5 local.get $4 - local.get $6 i32.const 6 i32.shr_u i32.const 192 i32.or - local.tee $4 + local.tee $5 i32.const 4 i32.shr_u i32.const 15 @@ -2863,7 +2851,7 @@ i32.const 1676 i32.add i32.load8_u - local.get $4 + local.get $5 i32.const 15 i32.and i32.const 1676 @@ -2873,28 +2861,28 @@ i32.shl i32.or i32.store offset=2 - local.get $5 + local.get $6 i32.const 6 i32.add else local.get $3 - local.get $6 + local.get $4 i32.const 65536 i32.lt_u if local.get $3 - local.get $5 + local.get $6 i32.add - local.tee $4 + local.tee $5 i32.const 37 i32.store16 + local.get $5 local.get $4 - local.get $6 i32.const 12 i32.shr_u i32.const 224 i32.or - local.tee $4 + local.tee $5 i32.const 4 i32.shr_u i32.const 15 @@ -2902,7 +2890,7 @@ i32.const 1676 i32.add i32.load8_u - local.get $4 + local.get $5 i32.const 15 i32.and i32.const 1676 @@ -2914,18 +2902,18 @@ i32.store offset=2 else local.get $3 - local.get $5 + local.get $6 i32.add - local.tee $4 + local.tee $5 i32.const 37 i32.store16 + local.get $5 local.get $4 - local.get $6 i32.const 18 i32.shr_u i32.const 240 i32.or - local.tee $4 + local.tee $5 i32.const 4 i32.shr_u i32.const 15 @@ -2933,7 +2921,7 @@ i32.const 1676 i32.add i32.load8_u - local.get $4 + local.get $5 i32.const 15 i32.and i32.const 1676 @@ -2944,29 +2932,29 @@ i32.or i32.store offset=2 local.get $3 - local.get $5 + local.get $6 i32.const 6 i32.add - local.tee $5 + local.tee $6 i32.add - local.tee $4 + local.tee $5 i32.const 37 i32.store16 + local.get $5 local.get $4 - local.get $6 i32.const 12 i32.shr_u i32.const 63 i32.and i32.const 128 i32.or - local.tee $4 + local.tee $5 i32.const 4 i32.shr_u i32.const 1676 i32.add i32.load8_u - local.get $4 + local.get $5 i32.const 15 i32.and i32.const 1676 @@ -2977,29 +2965,29 @@ i32.or i32.store offset=2 end - local.get $5 + local.get $6 i32.const 6 i32.add - local.tee $5 + local.tee $6 i32.add - local.tee $4 + local.tee $5 i32.const 37 i32.store16 + local.get $5 local.get $4 - local.get $6 i32.const 6 i32.shr_u i32.const 63 i32.and i32.const 128 i32.or - local.tee $4 + local.tee $5 i32.const 4 i32.shr_u i32.const 1676 i32.add i32.load8_u - local.get $4 + local.get $5 i32.const 15 i32.and i32.const 1676 @@ -3009,17 +2997,17 @@ i32.shl i32.or i32.store offset=2 - local.get $5 + local.get $6 i32.const 6 i32.add end - local.tee $5 + local.tee $6 i32.add - local.tee $4 + local.tee $5 i32.const 37 i32.store16 + local.get $5 local.get $4 - local.get $6 i32.const 63 i32.and i32.const 128 @@ -3040,11 +3028,11 @@ i32.shl i32.or i32.store offset=2 - local.get $5 + local.get $6 i32.const 6 i32.add end - local.set $5 + local.set $6 local.get $7 i32.const 1 i32.add @@ -3053,12 +3041,12 @@ end end end - local.get $5 + local.get $6 local.get $9 i32.lt_u if (result i32) local.get $3 - local.get $5 + local.get $6 call $~lib/rt/itcms/__renew else local.get $3 @@ -3154,14 +3142,14 @@ if local.get $2 i32.load16_u - local.tee $3 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $3 i32.ne if - local.get $3 local.get $4 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -3200,7 +3188,7 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.set $7 + local.set $8 loop $while-continue|0 local.get $1 local.get $3 @@ -3239,7 +3227,7 @@ i32.gt_u if local.get $6 - local.get $7 + local.get $8 i32.add local.get $4 i32.const 1 @@ -3281,18 +3269,18 @@ i32.shl local.get $0 i32.add - local.tee $5 + local.tee $4 i32.load16_u - local.set $4 - local.get $5 - i32.load16_u offset=2 local.set $5 local.get $4 + i32.load16_u offset=2 + local.set $4 + local.get $5 i32.const 48 i32.sub i32.const 10 i32.lt_u - local.get $4 + local.get $5 i32.const 32 i32.or i32.const 97 @@ -3301,12 +3289,12 @@ i32.lt_u i32.or if (result i32) - local.get $5 + local.get $4 i32.const 48 i32.sub i32.const 10 i32.lt_u - local.get $5 + local.get $4 i32.const 32 i32.or i32.const 97 @@ -3318,14 +3306,14 @@ i32.const 0 end if (result i32) - local.get $5 + local.get $4 i32.const 32 i32.or i32.const 39 i32.rem_u i32.const 9 i32.sub - local.get $4 + local.get $5 i32.const 32 i32.or i32.const 39 @@ -3407,7 +3395,7 @@ i32.const 1 i32.sub i32.shl - local.set $10 + local.set $9 i32.const 128 local.get $4 i32.shr_u @@ -3453,18 +3441,18 @@ i32.shl local.get $0 i32.add - local.tee $9 + local.tee $7 i32.load16_u - local.set $8 - local.get $9 + local.set $10 + local.get $7 i32.load16_u offset=2 - local.set $9 - local.get $8 + local.set $7 + local.get $10 i32.const 48 i32.sub i32.const 10 i32.lt_u - local.get $8 + local.get $10 i32.const 32 i32.or i32.const 97 @@ -3473,12 +3461,12 @@ i32.lt_u i32.or if (result i32) - local.get $9 + local.get $7 i32.const 48 i32.sub i32.const 10 i32.lt_u - local.get $9 + local.get $7 i32.const 32 i32.or i32.const 97 @@ -3490,14 +3478,14 @@ i32.const 0 end if (result i32) - local.get $9 + local.get $7 i32.const 32 i32.or i32.const 39 i32.rem_u i32.const 9 i32.sub - local.get $8 + local.get $10 i32.const 32 i32.or i32.const 39 @@ -3510,7 +3498,7 @@ else i32.const -1 end - local.tee $8 + local.tee $7 i32.const -1 i32.eq end @@ -3526,7 +3514,7 @@ i32.const 3 i32.add local.set $3 - local.get $8 + local.get $7 i32.const 192 i32.and i32.const 128 @@ -3536,7 +3524,7 @@ local.set $5 br $while-break|2 end - local.get $8 + local.get $7 i32.const 63 i32.and local.get $5 @@ -3555,11 +3543,11 @@ i32.const 55296 i32.ge_u i32.and - local.get $10 + local.get $9 i32.const -1 i32.eq local.get $5 - local.get $10 + local.get $9 i32.lt_u i32.or local.get $5 @@ -3580,7 +3568,7 @@ i32.ge_u if local.get $6 - local.get $7 + local.get $8 i32.add local.get $5 i32.const 65536 @@ -3607,7 +3595,7 @@ end end local.get $6 - local.get $7 + local.get $8 i32.add local.get $5 i32.store16 @@ -3638,11 +3626,11 @@ i32.shl i32.lt_u if (result i32) - local.get $7 + local.get $8 local.get $6 call $~lib/rt/itcms/__renew else - local.get $7 + local.get $8 end ) (func $~lib/rt/__visit_members (param $0 i32) @@ -5262,19 +5250,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -5284,22 +5272,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 20748 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -5313,9 +5301,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -5325,23 +5313,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -5349,7 +5337,7 @@ else i32.const 4336 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1376 @@ -5359,7 +5347,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 4340 @@ -5374,28 +5362,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/super-inline.optimized.wat b/tests/compiler/super-inline.optimized.wat index fe3237a923..4732b92236 100644 --- a/tests/compiler/super-inline.optimized.wat +++ b/tests/compiler/super-inline.optimized.wat @@ -182,19 +182,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -219,9 +219,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -229,17 +229,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -527,10 +527,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -542,15 +542,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -580,7 +580,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -616,12 +616,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -639,11 +639,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17872 @@ -651,14 +651,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -668,17 +668,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1151,17 +1151,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $3 i32.const 16 i32.ge_u if local.get $1 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1170,19 +1170,19 @@ local.get $1 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store local.get $2 - local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1208,26 +1208,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $0 i32.load offset=8 - local.set $0 + local.set $2 local.get $1 global.get $~lib/rt/itcms/white - local.get $2 + local.get $0 i32.or i32.store offset=4 local.get $1 - local.get $0 + local.get $2 i32.store offset=8 - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $1 i32.or i32.store offset=4 - local.get $2 + local.get $0 local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1427,19 +1427,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1449,22 +1449,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17868 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1478,9 +1478,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1490,23 +1490,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1514,7 +1514,7 @@ else i32.const 1440 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1248 @@ -1524,7 +1524,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1444 @@ -1539,28 +1539,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/templateliteral.optimized.wat b/tests/compiler/templateliteral.optimized.wat index b8ef571174..88967d9a2a 100644 --- a/tests/compiler/templateliteral.optimized.wat +++ b/tests/compiler/templateliteral.optimized.wat @@ -226,14 +226,14 @@ if local.get $2 i32.load16_u - local.tee $3 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $3 i32.ne if - local.get $3 local.get $4 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -329,7 +329,7 @@ i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -352,7 +352,7 @@ end local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -362,23 +362,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -386,7 +386,7 @@ else i32.const 5680 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1408 @@ -396,7 +396,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 5684 @@ -411,27 +411,27 @@ else i32.const 2 end - local.set $3 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 - local.set $2 + local.set $3 local.get $0 local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 local.get $0 - local.get $2 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -519,19 +519,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -556,9 +556,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -566,17 +566,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -864,10 +864,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -879,15 +879,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -917,7 +917,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -953,12 +953,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -976,11 +976,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 22128 @@ -988,14 +988,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -1005,17 +1005,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1495,7 +1495,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 local.get $2 i32.const 1073741820 i32.gt_u @@ -1521,32 +1521,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1579,7 +1579,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1587,8 +1587,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1605,7 +1605,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1615,13 +1615,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $5 - local.get $3 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1637,7 +1637,7 @@ local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub local.tee $6 i32.const 16 @@ -1647,23 +1647,23 @@ local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 + local.tee $4 local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1693,26 +1693,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $3 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $2 global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $3 + local.get $1 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1727,7 +1727,7 @@ local.get $2 i32.const 20 i32.add - local.tee $3 + local.tee $2 local.set $1 block $~lib/util/memory/memset|inlined.0 local.get $0 @@ -1739,7 +1739,7 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 1 i32.sub i32.const 0 @@ -1754,12 +1754,12 @@ local.get $1 i32.const 0 i32.store8 offset=2 - local.get $2 + local.get $3 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $3 i32.const 3 i32.sub i32.const 0 @@ -1771,7 +1771,7 @@ local.get $1 i32.const 0 i32.store8 offset=3 - local.get $2 + local.get $3 i32.const 4 i32.sub i32.const 0 @@ -1786,25 +1786,25 @@ i32.sub i32.const 3 i32.and - local.tee $2 + local.tee $3 i32.add local.tee $1 i32.const 0 i32.store local.get $1 local.get $0 - local.get $2 + local.get $3 i32.sub i32.const -4 i32.and - local.tee $2 - i32.add local.tee $0 + i32.add + local.tee $3 i32.const 4 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1814,17 +1814,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 12 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 8 i32.sub i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 @@ -1840,22 +1840,22 @@ local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $3 i32.const 28 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 20 i32.sub i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 16 i32.sub i32.const 0 @@ -1866,11 +1866,11 @@ i32.and i32.const 24 i32.add - local.tee $0 + local.tee $3 i32.add local.set $1 - local.get $2 local.get $0 + local.get $3 i32.sub local.set $0 loop $while-continue|0 @@ -1902,7 +1902,7 @@ end end end - local.get $3 + local.get $2 ) (func $~lib/util/memory/memcpy (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -2359,64 +2359,101 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 + local.get $0 + i32.const 2 + i32.add + local.set $3 local.get $1 - local.tee $3 i32.const 2 i32.add - local.set $1 + local.set $4 local.get $0 - local.tee $4 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 + local.get $4 + i32.load8_u + i32.store8 + local.get $3 i32.const 2 i32.add local.set $0 + local.get $4 + i32.const 2 + i32.add + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 + local.get $0 + i32.const 2 + i32.add + local.set $3 local.get $1 - local.tee $3 i32.const 2 i32.add - local.set $1 + local.set $4 local.get $0 - local.tee $4 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 + local.get $4 + i32.load8_u + i32.store8 + local.get $3 i32.const 2 i32.add local.set $0 + local.get $4 + i32.const 2 + i32.add + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 + local.get $0 + i32.const 2 + i32.add + local.set $3 local.get $1 - local.tee $3 i32.const 2 i32.add - local.set $1 + local.set $4 local.get $0 - local.tee $4 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 + local.get $4 + i32.load8_u + i32.store8 + local.get $3 i32.const 2 i32.add local.set $0 @@ -2424,53 +2461,6 @@ local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 - i32.load8_u - i32.store8 - local.get $1 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $0 - local.tee $4 - i32.const 2 - i32.add - local.set $0 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $1 - local.get $0 - i32.load8_u - i32.store8 - local.get $1 - local.tee $3 - i32.const 2 - i32.add - local.set $1 - local.get $0 - i32.const 2 - i32.add - local.set $4 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $1 - local.get $4 - i32.load8_u - i32.store8 - local.get $1 - i32.const 2 - i32.add - local.set $0 - local.get $1 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 local.get $4 i32.const 2 i32.add @@ -2499,43 +2489,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2832,7 +2820,7 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.set $5 + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -2849,17 +2837,17 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $5 i64.const 0 i64.store - local.get $4 + local.get $5 i32.const 0 i32.store offset=8 block $__inlined_func$~lib/util/string/joinStringArray - local.get $5 + local.get $4 i32.const 1 i32.sub - local.tee $4 + local.tee $5 i32.const 0 i32.lt_s if @@ -2871,7 +2859,7 @@ local.set $1 br $__inlined_func$~lib/util/string/joinStringArray end - local.get $4 + local.get $5 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -2893,7 +2881,7 @@ end loop $for-loop|0 local.get $3 - local.get $5 + local.get $4 i32.lt_s if global.get $~lib/memory/__stack_pointer @@ -2925,12 +2913,12 @@ end end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 1180 i32.load i32.const 1 i32.shr_u - local.tee $5 + local.tee $4 i32.mul local.get $1 i32.add @@ -2944,7 +2932,7 @@ local.set $3 loop $for-loop|1 local.get $3 - local.get $4 + local.get $5 i32.lt_s if global.get $~lib/memory/__stack_pointer @@ -2979,7 +2967,7 @@ i32.add local.set $2 end - local.get $5 + local.get $4 if local.get $2 i32.const 1 @@ -2987,12 +2975,12 @@ local.get $1 i32.add i32.const 1184 - local.get $5 + local.get $4 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $2 - local.get $5 + local.get $4 i32.add local.set $2 end @@ -3004,7 +2992,7 @@ end end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 2 i32.shl local.get $0 @@ -3833,83 +3821,82 @@ i32.const 101 i32.store16 offset=2 local.get $0 - local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $1 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $0 + local.get $1 i32.sub - local.set $0 + local.set $1 end - local.get $0 - local.tee $2 + local.get $1 + local.tee $4 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $4 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $4 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $4 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $4 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $4 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 - local.get $0 - local.get $2 + local.set $4 + local.get $1 + local.get $4 i32.const 1 i32.add - local.tee $0 + local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $0 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.add else @@ -3932,87 +3919,87 @@ local.get $0 local.get $2 i32.add - local.tee $2 + local.tee $0 i32.const 101 i32.store16 offset=2 - local.get $2 + local.get $0 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $2 i32.const 0 i32.lt_s - local.tee $4 + local.tee $3 if i32.const 0 - local.get $0 + local.get $2 i32.sub - local.set $0 + local.set $2 end - local.get $0 - local.tee $3 + local.get $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 100 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $3 + local.get $5 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $3 + local.get $5 i32.const 1000 i32.ge_u i32.add end else - local.get $3 + local.get $5 i32.const 10000000 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $3 + local.get $5 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $3 + local.get $5 i32.const 100000000 i32.ge_u i32.add end end - local.set $3 - local.get $0 - local.get $3 + local.set $5 + local.get $2 + local.get $5 i32.const 1 i32.add - local.tee $0 + local.tee $2 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $0 i32.const 45 i32.const 43 - local.get $4 + local.get $3 select i32.store16 offset=4 - local.get $0 local.get $1 + local.get $2 i32.add i32.const 2 i32.add @@ -4022,25 +4009,24 @@ end ) (func $~lib/util/number/dtoa_core (param $0 f64) (result i32) - (local $1 i32) - (local $2 i64) - (local $3 i32) + (local $1 i64) + (local $2 i32) + (local $3 i64) (local $4 i64) (local $5 i64) (local $6 i64) - (local $7 i64) - (local $8 i64) - (local $9 i64) - (local $10 i32) - (local $11 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i64) + (local $11 i64) (local $12 i64) (local $13 i64) (local $14 i64) - (local $15 i64) local.get $0 f64.const 0 f64.lt - local.tee $1 + local.tee $2 if (result f64) i32.const 3920 i32.const 45 @@ -4051,72 +4037,72 @@ local.get $0 end i64.reinterpret_f64 - local.tee $2 + local.tee $1 i64.const 9218868437227405312 i64.and i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $3 + local.tee $7 i32.const 1 - local.get $3 + local.get $7 select i32.const 1075 i32.sub - local.tee $10 + local.tee $8 i32.const 1 i32.sub - local.get $2 + local.get $1 i64.const 4503599627370495 i64.and - local.get $3 + local.get $7 i32.const 0 i32.ne i64.extend_i32_u i64.const 52 i64.shl i64.add - local.tee $2 + local.tee $1 i64.const 1 i64.shl i64.const 1 i64.add - local.tee $4 + local.tee $3 i64.clz i32.wrap_i64 - local.tee $11 + local.tee $7 i32.sub - local.set $3 - local.get $4 - local.get $11 + local.set $9 + local.get $3 + local.get $7 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus - local.get $2 - local.get $2 + local.get $1 + local.get $1 i64.const 4503599627370496 i64.eq i32.const 1 i32.add - local.tee $11 + local.tee $7 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $10 - local.get $11 + local.get $8 + local.get $7 i32.sub - local.get $3 + local.get $9 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $3 + local.get $9 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $3 + local.tee $7 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -4125,9 +4111,9 @@ f64.add local.tee $0 i32.trunc_f64_s - local.tee $10 + local.tee $8 local.get $0 - local.get $10 + local.get $8 f64.convert_i32_s f64.ne i32.add @@ -4135,106 +4121,106 @@ i32.shr_s i32.const 1 i32.add - local.tee $10 + local.tee $8 i32.const 3 i32.shl - local.tee $11 + local.tee $9 i32.sub global.set $~lib/util/number/_K - local.get $11 + local.get $9 i32.const 3976 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $10 + local.get $8 i32.const 1 i32.shl i32.const 4672 i32.add i32.load16_s global.set $~lib/util/number/_exp_pow - local.get $2 - local.get $2 + local.get $1 + local.get $1 i64.clz i64.shl - local.tee $2 + local.tee $1 i64.const 4294967295 i64.and - local.set $4 - local.get $2 + local.set $10 + local.get $1 i64.const 32 i64.shr_u - local.tee $12 + local.tee $11 global.get $~lib/util/number/_frc_pow - local.tee $13 + local.tee $4 i64.const 4294967295 i64.and - local.tee $2 - local.tee $5 + local.tee $12 + local.tee $1 i64.mul - local.get $4 - local.get $5 + local.get $1 + local.get $10 i64.mul i64.const 32 i64.shr_u i64.add - local.set $5 + local.set $13 global.get $~lib/util/number/_frc_plus - local.tee $7 + local.tee $3 i64.const 4294967295 i64.and - local.set $6 - local.get $7 + local.set $1 + local.get $3 i64.const 32 i64.shr_u - local.tee $14 - local.get $2 + local.tee $5 + local.get $12 i64.mul - local.get $2 - local.get $6 + local.get $1 + local.get $12 i64.mul i64.const 32 i64.shr_u i64.add - local.set $7 + local.set $14 global.get $~lib/util/number/_frc_minus - local.tee $9 + local.tee $6 i64.const 4294967295 i64.and - local.set $8 - local.get $9 + local.set $3 + local.get $6 i64.const 32 i64.shr_u - local.tee $15 - local.get $2 + local.tee $6 + local.get $12 i64.mul - local.get $2 - local.get $8 + local.get $3 + local.get $12 i64.mul i64.const 32 i64.shr_u i64.add - local.set $9 - local.get $1 + local.set $12 + local.get $2 i32.const 1 i32.shl i32.const 3920 i32.add - local.get $12 - local.get $13 + local.get $11 + local.get $4 i64.const 32 i64.shr_u - local.tee $2 - local.tee $12 + local.tee $4 + local.tee $11 i64.mul - local.get $5 + local.get $13 i64.const 32 i64.shr_u i64.add - local.get $4 - local.get $12 + local.get $10 + local.get $11 i64.mul - local.get $5 + local.get $13 i64.const 4294967295 i64.and i64.add @@ -4243,17 +4229,17 @@ i64.const 32 i64.shr_u i64.add - local.get $2 - local.get $14 + local.get $4 + local.get $5 i64.mul - local.get $7 + local.get $14 i64.const 32 i64.shr_u i64.add - local.get $2 - local.get $6 + local.get $1 + local.get $4 i64.mul - local.get $7 + local.get $14 i64.const 4294967295 i64.and i64.add @@ -4264,24 +4250,24 @@ i64.add i64.const 1 i64.sub - local.tee $4 + local.tee $1 global.get $~lib/util/number/_exp_pow - local.get $3 + local.get $7 i32.add i32.const -64 i32.sub + local.get $1 local.get $4 - local.get $2 - local.get $15 + local.get $6 i64.mul - local.get $9 + local.get $12 i64.const 32 i64.shr_u i64.add - local.get $2 - local.get $8 + local.get $3 + local.get $4 i64.mul - local.get $9 + local.get $12 i64.const 4294967295 i64.and i64.add @@ -4293,13 +4279,13 @@ i64.const 1 i64.add i64.sub - local.get $1 + local.get $2 call $~lib/util/number/genDigits - local.get $1 + local.get $2 i32.sub global.get $~lib/util/number/_K call $~lib/util/number/prettify - local.get $1 + local.get $2 i32.add ) (func $~lib/number/F64#toString (param $0 f64) (result i32) @@ -5016,23 +5002,23 @@ local.get $0 i32.const 1 call $templateliteral/Ref#constructor - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 2 call $templateliteral/Ref#constructor - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $0 + local.get $1 call $templateliteral/Ref#toString - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 5360 i32.store offset=12 - local.get $2 + local.get $0 i32.const 5360 call $~lib/string/String.__eq i32.eqz @@ -5044,29 +5030,29 @@ call $~lib/builtins/abort unreachable end - local.get $0 - call $templateliteral/Ref#toString - local.set $2 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=16 local.get $1 call $templateliteral/Ref#toString local.set $3 global.get $~lib/memory/__stack_pointer local.get $3 - i32.store offset=20 + i32.store offset=16 local.get $2 + call $templateliteral/Ref#toString + local.set $0 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=20 local.get $3 + local.get $0 call $~lib/string/String#concat - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 5392 i32.store offset=12 - local.get $2 + local.get $0 i32.const 5392 call $~lib/string/String.__eq i32.eqz @@ -5079,12 +5065,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 call $templateliteral/Ref#toString local.tee $0 i32.store offset=24 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 call $templateliteral/Ref#toString local.tee $1 i32.store offset=28 @@ -5251,19 +5237,19 @@ i32.sub i32.load offset=16 i32.add - local.set $2 + local.set $0 loop $while-continue|0 + local.get $0 local.get $1 - local.get $2 - i32.lt_u + i32.gt_u if local.get $1 i32.load - local.tee $0 + local.tee $2 if - local.get $0 + local.get $2 if - local.get $0 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -5381,9 +5367,9 @@ local.get $1 local.get $0 i32.load offset=4 - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -5395,13 +5381,13 @@ return end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 local.get $0 i32.load local.tee $0 i32.store offset=4 - local.get $2 local.get $1 + local.get $2 call $templateliteral/RecursiveObject#toString local.tee $1 i32.store offset=8 @@ -5462,7 +5448,7 @@ i32.shr_u i32.const 1 i32.shl - local.tee $3 + local.tee $2 local.get $1 i32.const 20 i32.sub @@ -5471,9 +5457,9 @@ i32.shr_u i32.const 1 i32.shl - local.tee $4 + local.tee $3 i32.add - local.tee $2 + local.tee $4 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -5484,26 +5470,26 @@ return end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $4 i32.store - local.get $2 + local.get $4 local.get $0 - local.get $3 + local.get $2 call $~lib/memory/memory.copy local.get $2 - local.get $3 + local.get $4 i32.add local.get $1 - local.get $4 + local.get $3 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $4 ) (func $templateliteral/Ref#constructor (param $0 i32) (result i32) (local $1 i32) @@ -5638,16 +5624,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $3 i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $3 local.get $1 local.get $2 select @@ -5656,7 +5642,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $0 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/throw.optimized.wat b/tests/compiler/throw.optimized.wat index fc376b8106..2053a68bb4 100644 --- a/tests/compiler/throw.optimized.wat +++ b/tests/compiler/throw.optimized.wat @@ -172,19 +172,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -209,9 +209,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -219,17 +219,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -692,7 +692,7 @@ local.get $0 i32.const 4 i32.add - local.tee $2 + local.tee $3 i32.const 18140 i32.ge_u if @@ -808,7 +808,7 @@ if (result i32) local.get $0 i32.load - local.set $3 + local.set $2 i32.const 19708 else i32.const 19724 @@ -823,7 +823,7 @@ i32.ge_u if local.get $0 - local.get $3 + local.get $2 i32.const 2 i32.and local.get $1 @@ -859,20 +859,20 @@ global.set $~lib/rt/tlsf/ROOT end global.get $~lib/rt/tlsf/ROOT - local.get $2 + local.get $3 i32.const 4 i32.sub - local.set $0 - local.get $2 + local.set $1 + local.get $3 i32.const 15 i32.and i32.const 1 - local.get $2 + local.get $3 select if (result i32) i32.const 1 else - local.get $0 + local.get $1 i32.load i32.const 1 i32.and @@ -885,13 +885,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $1 call $~lib/rt/tlsf/insertBlock end end @@ -1234,20 +1234,20 @@ else i32.const 2 end - local.set $3 + local.set $1 local.get $2 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 + local.get $1 local.get $2 - local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and diff --git a/tests/compiler/typeof.optimized.wat b/tests/compiler/typeof.optimized.wat index c9886e390e..a51412cdb1 100644 --- a/tests/compiler/typeof.optimized.wat +++ b/tests/compiler/typeof.optimized.wat @@ -144,14 +144,14 @@ if local.get $2 i32.load16_u - local.tee $3 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $3 i32.ne if - local.get $3 local.get $4 + local.get $3 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -310,19 +310,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -347,9 +347,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -357,17 +357,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -655,10 +655,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -670,15 +670,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -708,7 +708,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -744,12 +744,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -767,11 +767,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 18224 @@ -779,14 +779,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -796,17 +796,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1595,7 +1595,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1672,16 +1672,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $0 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1729,7 +1729,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $2 + local.tee $3 i32.const -4 i32.and i32.const 28 @@ -1739,7 +1739,7 @@ i32.ge_u if local.get $0 - local.get $2 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1748,7 +1748,7 @@ local.get $0 i32.const 32 i32.add - local.tee $2 + local.tee $3 local.get $4 i32.const 4 i32.sub @@ -1756,11 +1756,11 @@ i32.or i32.store local.get $1 - local.get $2 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $2 + local.get $3 i32.const -2 i32.and i32.store @@ -1786,26 +1786,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 global.get $~lib/rt/itcms/white - local.get $2 + local.get $1 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1817,7 +1817,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $3 + local.get $2 local.get $0 i32.const 20 i32.add @@ -1945,19 +1945,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1967,22 +1967,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18220 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1996,9 +1996,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2008,23 +2008,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -2032,7 +2032,7 @@ else i32.const 1792 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1552 @@ -2042,7 +2042,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1796 @@ -2057,28 +2057,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/wasi/abort.optimized.wat b/tests/compiler/wasi/abort.optimized.wat index 2c3c6b08d9..bee6e75d84 100644 --- a/tests/compiler/wasi/abort.optimized.wat +++ b/tests/compiler/wasi/abort.optimized.wat @@ -36,38 +36,38 @@ i32.shl local.get $0 i32.add - local.set $4 + local.set $3 local.get $2 local.set $1 loop $while-continue|0 local.get $0 - local.get $4 + local.get $3 i32.lt_u if local.get $0 i32.load16_u - local.tee $3 + local.tee $5 i32.const 128 i32.lt_u if (result i32) local.get $1 - local.get $3 + local.get $5 i32.store8 local.get $1 i32.const 1 i32.add else - local.get $3 + local.get $5 i32.const 2048 i32.lt_u if (result i32) local.get $1 - local.get $3 + local.get $5 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $3 + local.get $5 i32.const 63 i32.and i32.const 128 @@ -80,16 +80,16 @@ i32.const 2 i32.add else - local.get $3 + local.get $5 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $3 + local.get $5 i32.const 56320 i32.lt_u - local.get $4 + local.get $3 local.get $0 i32.const 2 i32.add @@ -98,32 +98,32 @@ if local.get $0 i32.load16_u offset=2 - local.tee $5 + local.tee $4 i32.const 64512 i32.and i32.const 56320 i32.eq if local.get $1 - local.get $3 + local.get $5 i32.const 1023 i32.and i32.const 10 i32.shl i32.const 65536 i32.add - local.get $5 + local.get $4 i32.const 1023 i32.and i32.or - local.tee $3 + local.tee $4 i32.const 63 i32.and i32.const 128 i32.or i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 6 i32.shr_u i32.const 63 @@ -133,7 +133,7 @@ i32.const 16 i32.shl i32.or - local.get $3 + local.get $4 i32.const 12 i32.shr_u i32.const 63 @@ -143,7 +143,7 @@ i32.const 8 i32.shl i32.or - local.get $3 + local.get $4 i32.const 18 i32.shr_u i32.const 240 @@ -163,12 +163,12 @@ end end local.get $1 - local.get $3 + local.get $5 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $3 + local.get $5 i32.const 6 i32.shr_u i32.const 63 @@ -180,7 +180,7 @@ i32.or i32.store16 local.get $1 - local.get $3 + local.get $5 i32.const 63 i32.and i32.const 128 @@ -231,19 +231,19 @@ call $~lib/string/String.UTF8.encodeUnsafe@varargs i32.const 19 i32.add - local.tee $0 + local.tee $3 i32.const 544106784 i32.store i32.const 1212 i32.load i32.const 1 i32.shr_u - local.set $3 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1216 - local.get $3 local.get $0 + local.get $3 i32.const 4 i32.add local.tee $0 diff --git a/tests/compiler/wasi/seed.optimized.wat b/tests/compiler/wasi/seed.optimized.wat index a6ca0dc2a0..1dd4b8acc5 100644 --- a/tests/compiler/wasi/seed.optimized.wat +++ b/tests/compiler/wasi/seed.optimized.wat @@ -12,7 +12,8 @@ (export "_start" (func $~start)) (func $wasi/seed/test (result f64) (local $0 i64) - (local $1 i64) + (local $1 i32) + (local $2 i64) global.get $~lib/math/random_seeded i32.eqz if @@ -79,28 +80,28 @@ global.set $~lib/math/random_seeded end global.get $~lib/math/random_state0_64 - local.set $1 + local.set $0 global.get $~lib/math/random_state1_64 - local.tee $0 + local.tee $2 global.set $~lib/math/random_state0_64 + local.get $2 local.get $0 - local.get $1 i64.const 23 i64.shl - local.get $1 + local.get $0 i64.xor - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i64.const 17 i64.shr_u i64.xor i64.xor - local.get $0 + local.get $2 i64.const 26 i64.shr_u i64.xor global.set $~lib/math/random_state1_64 - local.get $0 + local.get $2 i64.const 12 i64.shr_u i64.const 4607182418800017408 diff --git a/tests/compiler/wasi/trace.optimized.wat b/tests/compiler/wasi/trace.optimized.wat index 6cb52f0066..68d9959d02 100644 --- a/tests/compiler/wasi/trace.optimized.wat +++ b/tests/compiler/wasi/trace.optimized.wat @@ -57,38 +57,38 @@ i32.shl local.get $0 i32.add - local.set $4 + local.set $3 local.get $2 local.set $1 loop $while-continue|0 local.get $0 - local.get $4 + local.get $3 i32.lt_u if local.get $0 i32.load16_u - local.tee $3 + local.tee $5 i32.const 128 i32.lt_u if (result i32) local.get $1 - local.get $3 + local.get $5 i32.store8 local.get $1 i32.const 1 i32.add else - local.get $3 + local.get $5 i32.const 2048 i32.lt_u if (result i32) local.get $1 - local.get $3 + local.get $5 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $3 + local.get $5 i32.const 63 i32.and i32.const 128 @@ -101,16 +101,16 @@ i32.const 2 i32.add else - local.get $3 + local.get $5 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $3 + local.get $5 i32.const 56320 i32.lt_u - local.get $4 + local.get $3 local.get $0 i32.const 2 i32.add @@ -119,32 +119,32 @@ if local.get $0 i32.load16_u offset=2 - local.tee $5 + local.tee $4 i32.const 64512 i32.and i32.const 56320 i32.eq if local.get $1 - local.get $3 + local.get $5 i32.const 1023 i32.and i32.const 10 i32.shl i32.const 65536 i32.add - local.get $5 + local.get $4 i32.const 1023 i32.and i32.or - local.tee $3 + local.tee $4 i32.const 63 i32.and i32.const 128 i32.or i32.const 24 i32.shl - local.get $3 + local.get $4 i32.const 6 i32.shr_u i32.const 63 @@ -154,7 +154,7 @@ i32.const 16 i32.shl i32.or - local.get $3 + local.get $4 i32.const 12 i32.shr_u i32.const 63 @@ -164,7 +164,7 @@ i32.const 8 i32.shl i32.or - local.get $3 + local.get $4 i32.const 18 i32.shr_u i32.const 240 @@ -184,12 +184,12 @@ end end local.get $1 - local.get $3 + local.get $5 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $3 + local.get $5 i32.const 6 i32.shr_u i32.const 63 @@ -201,7 +201,7 @@ i32.or i32.store16 local.get $1 - local.get $3 + local.get $5 i32.const 63 i32.and i32.const 128 @@ -529,19 +529,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -566,9 +566,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -576,17 +576,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -874,10 +874,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -889,15 +889,15 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -927,7 +927,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -963,12 +963,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -986,11 +986,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 19024 @@ -998,14 +998,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -1015,17 +1015,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -2053,115 +2053,105 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $3 + local.get $1 i32.const 2 i32.add - local.set $0 - local.get $3 - local.get $4 + local.set $4 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - local.get $0 + local.get $3 + local.get $4 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $3 i32.const 2 i32.add - local.set $1 - local.get $0 - local.tee $4 + local.set $0 + local.get $4 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 local.get $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2193,43 +2183,41 @@ i32.load8_u i32.store8 local.get $0 - local.tee $1 i32.const 2 i32.add - local.set $0 + local.set $1 local.get $3 - local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.load8_u i32.store8 - local.get $1 - local.tee $3 + local.get $0 i32.const 2 i32.add - local.set $1 - local.get $0 + local.set $3 + local.get $1 i32.const 2 i32.add local.set $4 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $3 local.get $4 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add local.set $0 - local.get $1 + local.get $3 local.get $4 i32.load8_u offset=1 i32.store8 offset=1 @@ -2748,83 +2736,82 @@ i32.const 101 i32.store16 offset=2 local.get $0 - local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $1 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $0 + local.get $1 i32.sub - local.set $0 + local.set $1 end - local.get $0 - local.tee $2 + local.get $1 + local.tee $4 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $4 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $4 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $4 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $4 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $4 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 - local.get $0 - local.get $2 + local.set $4 + local.get $1 + local.get $4 i32.const 1 i32.add - local.tee $0 + local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $0 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.add else @@ -2847,87 +2834,87 @@ local.get $0 local.get $2 i32.add - local.tee $2 + local.tee $0 i32.const 101 i32.store16 offset=2 - local.get $2 + local.get $0 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $2 i32.const 0 i32.lt_s - local.tee $4 + local.tee $3 if i32.const 0 - local.get $0 + local.get $2 i32.sub - local.set $0 + local.set $2 end - local.get $0 - local.tee $3 + local.get $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 100 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $3 + local.get $5 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $3 + local.get $5 i32.const 1000 i32.ge_u i32.add end else - local.get $3 + local.get $5 i32.const 10000000 i32.lt_u if (result i32) - local.get $3 + local.get $5 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $3 + local.get $5 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $3 + local.get $5 i32.const 100000000 i32.ge_u i32.add end end - local.set $3 - local.get $0 - local.get $3 + local.set $5 + local.get $2 + local.get $5 i32.const 1 i32.add - local.tee $0 + local.tee $2 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $0 i32.const 45 i32.const 43 - local.get $4 + local.get $3 select i32.store16 offset=4 - local.get $0 local.get $1 + local.get $2 i32.add i32.const 2 i32.add @@ -2940,14 +2927,14 @@ (local $2 i64) (local $3 i32) (local $4 i64) - (local $5 i32) + (local $5 i64) (local $6 i64) - (local $7 i64) - (local $8 i64) - (local $9 i64) + (local $7 i32) + (local $8 i32) + (local $9 i32) (local $10 i64) - (local $11 i32) - (local $12 i32) + (local $11 i64) + (local $12 i64) (local $13 i64) (local $14 i64) local.get $1 @@ -2970,11 +2957,11 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.set $5 + local.set $7 local.get $2 i64.const 4503599627370495 i64.and - local.get $5 + local.get $7 i32.const 0 i32.ne i64.extend_i32_u @@ -2982,13 +2969,13 @@ i64.shl i64.add local.set $2 - local.get $5 + local.get $7 i32.const 1 - local.get $5 + local.get $7 select i32.const 1075 i32.sub - local.tee $11 + local.tee $7 i32.const 1 i32.sub local.get $2 @@ -2999,11 +2986,11 @@ local.tee $4 i64.clz i32.wrap_i64 - local.tee $12 + local.tee $8 i32.sub - local.set $5 + local.set $9 local.get $4 - local.get $12 + local.get $8 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -3013,25 +3000,25 @@ i64.eq i32.const 1 i32.add - local.tee $12 + local.tee $8 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $11 - local.get $12 + local.get $7 + local.get $8 i32.sub - local.get $5 + local.get $9 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $5 + local.get $9 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $5 + local.tee $7 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -3040,9 +3027,9 @@ f64.add local.tee $1 i32.trunc_f64_s - local.tee $11 + local.tee $8 local.get $1 - local.get $11 + local.get $8 f64.convert_i32_s f64.ne i32.add @@ -3050,18 +3037,18 @@ i32.shr_s i32.const 1 i32.add - local.tee $11 + local.tee $8 i32.const 3 i32.shl - local.tee $12 + local.tee $9 i32.sub global.set $~lib/util/number/_K - local.get $12 + local.get $9 i32.const 1328 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $11 + local.get $8 i32.const 1 i32.shl i32.const 2024 @@ -3072,62 +3059,62 @@ local.get $2 i64.clz i64.shl - local.tee $2 + local.tee $4 i64.const 4294967295 i64.and - local.set $6 - local.get $2 + local.set $2 + local.get $4 i64.const 32 i64.shr_u - local.tee $13 + local.tee $6 global.get $~lib/util/number/_frc_pow - local.tee $4 + local.tee $5 i64.const 4294967295 i64.and - local.tee $2 - local.tee $7 + local.tee $10 + local.tee $4 i64.mul - local.get $6 - local.get $7 + local.get $2 + local.get $4 i64.mul i64.const 32 i64.shr_u i64.add - local.set $7 - local.get $4 + local.set $4 + local.get $5 i64.const 32 i64.shr_u - local.tee $4 - local.set $8 + local.tee $11 + local.set $5 global.get $~lib/util/number/_frc_plus - local.tee $10 + local.tee $12 i64.const 4294967295 i64.and - local.set $9 - local.get $10 + local.set $13 + local.get $12 i64.const 32 i64.shr_u - local.tee $14 - local.get $2 + local.tee $12 + local.get $10 i64.mul - local.get $2 - local.get $9 + local.get $10 + local.get $13 i64.mul i64.const 32 i64.shr_u i64.add - local.set $10 - local.get $4 - local.get $14 + local.set $14 + local.get $11 + local.get $12 i64.mul - local.get $10 + local.get $14 i64.const 32 i64.shr_u i64.add - local.get $4 - local.get $9 + local.get $11 + local.get $13 i64.mul - local.get $10 + local.get $14 i64.const 4294967295 i64.and i64.add @@ -3138,42 +3125,42 @@ i64.add i64.const 1 i64.sub - local.set $9 + local.set $12 global.get $~lib/util/number/_frc_minus - local.tee $14 + local.tee $13 i64.const 4294967295 i64.and - local.set $10 - local.get $14 + local.set $14 + local.get $13 i64.const 32 i64.shr_u - local.tee $14 - local.get $2 + local.tee $13 + local.get $10 i64.mul - local.get $2 local.get $10 + local.get $14 i64.mul i64.const 32 i64.shr_u i64.add - local.set $2 + local.set $10 local.get $3 i32.const 1 i32.shl local.get $0 i32.add local.get $0 - local.get $8 - local.get $13 + local.get $5 + local.get $6 i64.mul - local.get $7 + local.get $4 i64.const 32 i64.shr_u i64.add - local.get $6 - local.get $8 + local.get $2 + local.get $5 i64.mul - local.get $7 + local.get $4 i64.const 4294967295 i64.and i64.add @@ -3182,24 +3169,24 @@ i64.const 32 i64.shr_u i64.add - local.get $9 + local.get $12 global.get $~lib/util/number/_exp_pow - local.get $5 + local.get $7 i32.add i32.const -64 i32.sub - local.get $9 - local.get $4 - local.get $14 + local.get $12 + local.get $11 + local.get $13 i64.mul - local.get $2 + local.get $10 i64.const 32 i64.shr_u i64.add - local.get $4 - local.get $10 + local.get $11 + local.get $14 i64.mul - local.get $2 + local.get $10 i64.const 4294967295 i64.and i64.add @@ -3384,7 +3371,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $8 + local.tee $9 local.get $6 i32.const 1073741820 i32.gt_u @@ -3435,7 +3422,7 @@ local.get $7 end i32.const 4 - local.get $8 + local.get $9 i32.load offset=1568 local.get $6 i32.const 16 @@ -3451,16 +3438,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $9 + local.tee $8 local.get $6 - local.get $9 + local.get $8 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $9 + local.get $8 memory.grow i32.const 0 i32.lt_s @@ -3468,7 +3455,7 @@ unreachable end end - local.get $8 + local.get $9 local.get $6 i32.const 16 i32.shl @@ -3476,7 +3463,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $8 + local.get $9 local.get $7 call $~lib/rt/tlsf/searchBlock local.tee $6 @@ -3504,12 +3491,12 @@ call $~lib/wasi/index/abort unreachable end - local.get $8 + local.get $9 local.get $6 call $~lib/rt/tlsf/removeBlock local.get $6 i32.load - local.set $9 + local.set $10 local.get $7 i32.const 4 i32.add @@ -3523,17 +3510,17 @@ call $~lib/wasi/index/abort unreachable end - local.get $9 + local.get $10 i32.const -4 i32.and local.get $7 i32.sub - local.tee $10 + local.tee $8 i32.const 16 i32.ge_u if local.get $6 - local.get $9 + local.get $10 i32.const 2 i32.and local.get $7 @@ -3545,18 +3532,18 @@ i32.add i32.add local.tee $7 - local.get $10 + local.get $8 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $8 + local.get $9 local.get $7 call $~lib/rt/tlsf/insertBlock else local.get $6 - local.get $9 + local.get $10 i32.const -2 i32.and i32.store @@ -3777,7 +3764,7 @@ local.get $7 i32.const 4 i32.sub - local.set $0 + local.set $6 local.get $7 i32.const 15 i32.and @@ -3787,7 +3774,7 @@ if (result i32) i32.const 1 else - local.get $0 + local.get $6 i32.load i32.const 1 i32.and @@ -3800,13 +3787,13 @@ call $~lib/wasi/index/abort unreachable end - local.get $0 - local.get $0 + local.get $6 + local.get $6 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $6 call $~lib/rt/tlsf/insertBlock end ) diff --git a/tests/compiler/while.optimized.wat b/tests/compiler/while.optimized.wat index 8a83039fd2..d1ff6fb472 100644 --- a/tests/compiler/while.optimized.wat +++ b/tests/compiler/while.optimized.wat @@ -164,19 +164,19 @@ end local.get $1 i32.load offset=8 - local.set $4 + local.set $5 local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 if - local.get $5 local.get $4 + local.get $5 i32.store offset=8 end - local.get $4 + local.get $5 if - local.get $4 local.get $5 + local.get $4 i32.store offset=4 end local.get $2 @@ -201,9 +201,9 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $5 i32.store offset=96 - local.get $4 + local.get $5 i32.eqz if local.get $3 @@ -211,17 +211,17 @@ i32.shl local.get $0 i32.add - local.tee $4 + local.tee $1 i32.load offset=4 i32.const -2 local.get $2 i32.rotl i32.and - local.set $1 - local.get $4 + local.set $2 local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -509,10 +509,10 @@ i32.and local.get $0 i32.load offset=1568 - local.tee $2 + local.tee $4 if local.get $1 - local.get $2 + local.get $4 i32.const 4 i32.add i32.lt_u @@ -524,15 +524,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 local.get $1 i32.const 16 i32.sub i32.eq if - local.get $2 + local.get $4 i32.load - local.set $4 + local.set $3 local.get $1 i32.const 16 i32.sub @@ -562,7 +562,7 @@ return end local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and local.get $2 @@ -598,12 +598,12 @@ (local $0 i32) (local $1 i32) memory.size - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s if (result i32) i32.const 1 - local.get $1 + local.get $0 i32.sub memory.grow i32.const 0 @@ -621,11 +621,11 @@ i32.const 0 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 23 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl i32.const 17920 @@ -633,14 +633,14 @@ i32.const 0 i32.store offset=4 i32.const 0 - local.set $1 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $0 i32.const 16 i32.lt_u if - local.get $1 local.get $0 + local.get $1 i32.const 4 i32.shl i32.add @@ -650,17 +650,17 @@ i32.add i32.const 0 i32.store offset=96 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -1002,14 +1002,14 @@ (local $1 i32) (local $2 i32) i32.const 10 - local.set $1 + local.set $0 loop $while-continue|0 - local.get $1 + local.get $0 if - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 local.get $2 i32.const 1 i32.add @@ -1017,7 +1017,7 @@ br $while-continue|0 end end - local.get $1 + local.get $0 if i32.const 0 i32.const 1056 @@ -1040,25 +1040,25 @@ i32.const 0 local.set $2 i32.const 10 - local.set $1 + local.set $0 loop $while-continue|00 - local.get $1 + local.get $0 if - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 loop $while-continue|1 - local.get $1 + local.get $0 if - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 local.get $2 i32.const 1 i32.add @@ -1066,7 +1066,7 @@ br $while-continue|1 end end - local.get $1 + local.get $0 if i32.const 0 i32.const 1056 @@ -1089,7 +1089,7 @@ br $while-continue|00 end end - local.get $1 + local.get $0 if i32.const 0 i32.const 1056 @@ -1098,7 +1098,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.ne if @@ -1123,14 +1123,14 @@ i32.const 0 local.set $2 i32.const 1 - local.set $1 + local.set $0 loop $while-continue|01 - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 1 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 if (result i32) local.get $2 i32.const 1 @@ -1141,7 +1141,7 @@ end br_if $while-continue|01 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -1164,17 +1164,17 @@ unreachable end i32.const 0 - local.set $1 + local.set $0 loop $while-continue|02 - local.get $1 + local.get $0 i32.const 1 i32.add - local.tee $1 + local.tee $0 i32.const 10 i32.ne br_if $while-continue|02 end - local.get $1 + local.get $0 i32.const 10 i32.ne if @@ -1186,17 +1186,17 @@ unreachable end i32.const 0 - local.set $1 + local.set $0 loop $while-continue|03 - local.get $1 + local.get $0 i32.const 1 i32.add - local.tee $1 + local.tee $0 i32.const 10 i32.ne br_if $while-continue|03 end - local.get $1 + local.get $0 i32.const 10 i32.ne if @@ -1208,18 +1208,18 @@ unreachable end i32.const 10 - local.set $1 + local.set $0 loop $while-continue|04 - local.get $1 + local.get $0 if - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|04 end end - local.get $1 + local.get $0 if i32.const 0 i32.const 1056 @@ -1229,11 +1229,11 @@ unreachable end i32.const 10 - local.set $1 + local.set $0 i32.const 10 local.set $2 loop $while-continue|05 - local.get $1 + local.get $0 if loop $while-continue|16 local.get $2 @@ -1245,14 +1245,14 @@ br $while-continue|16 end end - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|05 end end - local.get $1 + local.get $0 if i32.const 0 i32.const 1056 @@ -1319,10 +1319,10 @@ i32.store local.get $0 call $while/Ref#constructor - local.tee $1 + local.tee $0 i32.store loop $while-continue|07 - local.get $1 + local.get $0 if local.get $2 i32.const 1 @@ -1332,11 +1332,11 @@ i32.eq if i32.const 0 - local.set $1 + local.set $0 else global.get $~lib/memory/__stack_pointer call $while/Ref#constructor - local.tee $1 + local.tee $0 i32.store end br $while-continue|07 @@ -1353,7 +1353,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 if i32.const 0 i32.const 1056 @@ -1382,7 +1382,7 @@ i32.store local.get $0 call $while/Ref#constructor - local.tee $1 + local.tee $0 i32.store loop $while-continue|06 call $while/Ref#constructor @@ -1396,7 +1396,7 @@ i32.eq if i32.const 0 - local.set $1 + local.set $0 br $while-break|07 end br $while-continue|06 @@ -1414,7 +1414,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 if i32.const 0 i32.const 1056 @@ -1428,39 +1428,39 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $1 + local.set $0 loop $while-continue|08 - local.get $1 + local.get $0 i32.const 1 i32.add - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s br_if $while-continue|08 end i32.const 0 - local.set $1 + local.set $0 loop $while-continue|010 - local.get $1 + local.get $0 i32.const 1 i32.add - local.tee $1 + local.tee $0 i32.const 1 i32.lt_s br_if $while-continue|010 end i32.const 0 - local.set $1 + local.set $0 loop $do-loop|0 - local.get $1 + local.get $0 i32.const 1 i32.add - local.tee $1 + local.tee $0 i32.const 3 i32.lt_s br_if $do-loop|0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -1570,7 +1570,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1647,16 +1647,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $0 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1704,7 +1704,7 @@ call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $2 + local.tee $3 i32.const -4 i32.and i32.const 28 @@ -1714,7 +1714,7 @@ i32.ge_u if local.get $0 - local.get $2 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1723,7 +1723,7 @@ local.get $0 i32.const 32 i32.add - local.tee $2 + local.tee $3 local.get $4 i32.const 4 i32.sub @@ -1731,11 +1731,11 @@ i32.or i32.store local.get $1 - local.get $2 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $2 + local.get $3 i32.const -2 i32.and i32.store @@ -1761,26 +1761,26 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $1 i32.load offset=8 - local.set $1 + local.set $3 local.get $0 global.get $~lib/rt/itcms/white - local.get $2 + local.get $1 i32.or i32.store offset=4 local.get $0 - local.get $1 + local.get $3 i32.store offset=8 - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1792,7 +1792,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $3 + local.get $2 local.get $0 i32.const 20 i32.add @@ -1812,19 +1812,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1834,22 +1834,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17908 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1863,9 +1863,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1875,23 +1875,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1899,7 +1899,7 @@ else i32.const 1488 i32.load - local.get $2 + local.get $0 i32.lt_u if i32.const 1296 @@ -1909,7 +1909,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 3 i32.shl i32.const 1492 @@ -1924,28 +1924,28 @@ else i32.const 2 end + local.set $0 + local.get $2 + i32.load offset=8 local.set $3 local.get $1 - i32.load offset=8 - local.set $2 local.get $0 - local.get $1 - local.get $3 + local.get $2 i32.or i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.store offset=8 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 + local.get $2 local.get $1 - local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 From 070985bdb0694ff63ef5e2129b6e26b184aaafba Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Mon, 20 Sep 2021 13:04:05 +0300 Subject: [PATCH 14/54] add simplify-locals --- src/module.ts | 1 + .../extends-baseaggregate.optimized.wat | 84 ++++----- tests/compiler/field.optimized.wat | 178 ++++++++---------- tests/compiler/heap.optimized.wat | 84 ++++----- tests/compiler/infer-array.optimized.wat | 84 ++++----- tests/compiler/issues/1699.optimized.wat | 84 ++++----- tests/compiler/memcpy.optimized.wat | 84 ++++----- tests/compiler/number.optimized.wat | 84 ++++----- tests/compiler/object-literal.optimized.wat | 84 ++++----- tests/compiler/resolve-access.optimized.wat | 178 ++++++++---------- tests/compiler/resolve-binary.optimized.wat | 84 ++++----- .../resolve-elementaccess.optimized.wat | 84 ++++----- tests/compiler/resolve-ternary.optimized.wat | 84 ++++----- tests/compiler/std-wasi/crypto.optimized.wat | 84 ++++----- tests/compiler/std-wasi/process.optimized.wat | 84 ++++----- tests/compiler/std/array.optimized.wat | 84 ++++----- tests/compiler/std/arraybuffer.optimized.wat | 84 ++++----- tests/compiler/std/date.optimized.wat | 84 ++++----- tests/compiler/std/map.optimized.wat | 84 ++++----- tests/compiler/std/pointer.optimized.wat | 178 ++++++++---------- tests/compiler/std/set.optimized.wat | 84 ++++----- tests/compiler/std/static-array.optimized.wat | 84 ++++----- tests/compiler/std/staticarray.optimized.wat | 84 ++++----- .../std/string-casemapping.optimized.wat | 84 ++++----- .../std/string-encoding.optimized.wat | 84 ++++----- tests/compiler/std/string.optimized.wat | 84 ++++----- tests/compiler/std/symbol.optimized.wat | 84 ++++----- tests/compiler/std/typedarray.optimized.wat | 84 ++++----- tests/compiler/std/uri.optimized.wat | 84 ++++----- tests/compiler/templateliteral.optimized.wat | 84 ++++----- tests/compiler/wasi/trace.optimized.wat | 84 ++++----- 31 files changed, 1207 insertions(+), 1596 deletions(-) diff --git a/src/module.ts b/src/module.ts index b1bb1325a7..55e432edf0 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2396,6 +2396,7 @@ export class Module { passes.push("ssa-nomerge"); passes.push("coalesce-locals"); + passes.push("simplify-locals"); } passes.push("remove-unused-brs"); passes.push("remove-unused-names"); diff --git a/tests/compiler/extends-baseaggregate.optimized.wat b/tests/compiler/extends-baseaggregate.optimized.wat index c63a03c99d..7ed6563ec7 100644 --- a/tests/compiler/extends-baseaggregate.optimized.wat +++ b/tests/compiler/extends-baseaggregate.optimized.wat @@ -2171,83 +2171,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -2301,19 +2291,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/field.optimized.wat b/tests/compiler/field.optimized.wat index 9e2efdc85a..2022e4561e 100644 --- a/tests/compiler/field.optimized.wat +++ b/tests/compiler/field.optimized.wat @@ -2127,121 +2127,103 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $2 + local.tee $2 local.get $1 i32.const 2 i32.add - local.set $3 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $2 - local.get $3 + local.tee $3 i32.load8_u i32.store8 local.get $2 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $2 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $3 i32.const 2 i32.add - local.set $1 - local.get $2 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $2 + local.tee $2 local.get $1 i32.const 2 i32.add - local.set $3 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $2 - local.get $3 + local.tee $3 i32.load8_u i32.store8 local.get $2 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $2 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $3 i32.const 2 i32.add - local.set $1 - local.get $2 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $2 + local.tee $2 local.get $1 i32.const 2 i32.add - local.set $3 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $2 - local.get $3 + local.tee $3 i32.load8_u i32.store8 local.get $2 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $2 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $3 i32.const 2 i32.add - local.set $1 - local.get $2 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $2 + local.tee $2 local.get $1 i32.const 2 i32.add - local.set $3 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $2 - local.get $3 + local.tee $3 i32.load8_u i32.store8 - local.get $2 - i32.const 2 - i32.add - local.set $0 local.get $3 i32.const 2 i32.add @@ -2250,6 +2232,10 @@ local.get $3 i32.load8_u offset=1 i32.store8 offset=1 + local.get $2 + i32.const 2 + i32.add + local.set $0 end local.get $4 i32.const 8 @@ -2260,57 +2246,47 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $2 + local.tee $2 local.get $1 i32.const 2 i32.add - local.set $3 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $2 - local.get $3 + local.tee $3 i32.load8_u i32.store8 local.get $2 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $2 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $3 i32.const 2 i32.add - local.set $1 - local.get $2 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $2 + local.tee $2 local.get $1 i32.const 2 i32.add - local.set $3 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $2 - local.get $3 + local.tee $3 i32.load8_u i32.store8 - local.get $2 - i32.const 2 - i32.add - local.set $0 local.get $3 i32.const 2 i32.add @@ -2319,6 +2295,10 @@ local.get $3 i32.load8_u offset=1 i32.store8 offset=1 + local.get $2 + i32.const 2 + i32.add + local.set $0 end local.get $4 i32.const 4 @@ -2329,25 +2309,19 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $2 + local.tee $2 local.get $1 i32.const 2 i32.add - local.set $3 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $2 - local.get $3 + local.tee $3 i32.load8_u i32.store8 - local.get $2 - i32.const 2 - i32.add - local.set $0 local.get $3 i32.const 2 i32.add @@ -2356,6 +2330,10 @@ local.get $3 i32.load8_u offset=1 i32.store8 offset=1 + local.get $2 + i32.const 2 + i32.add + local.set $0 end local.get $4 i32.const 2 diff --git a/tests/compiler/heap.optimized.wat b/tests/compiler/heap.optimized.wat index 2bf2e3abb5..5d043328d1 100644 --- a/tests/compiler/heap.optimized.wat +++ b/tests/compiler/heap.optimized.wat @@ -1466,83 +1466,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -1596,19 +1586,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/infer-array.optimized.wat b/tests/compiler/infer-array.optimized.wat index afa647c89b..42fe5f4a6f 100644 --- a/tests/compiler/infer-array.optimized.wat +++ b/tests/compiler/infer-array.optimized.wat @@ -2188,83 +2188,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -2318,19 +2308,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/issues/1699.optimized.wat b/tests/compiler/issues/1699.optimized.wat index 8806728f23..47054d78e5 100644 --- a/tests/compiler/issues/1699.optimized.wat +++ b/tests/compiler/issues/1699.optimized.wat @@ -2167,83 +2167,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -2297,19 +2287,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/memcpy.optimized.wat b/tests/compiler/memcpy.optimized.wat index 6c4100c920..aff35d147a 100644 --- a/tests/compiler/memcpy.optimized.wat +++ b/tests/compiler/memcpy.optimized.wat @@ -484,83 +484,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -614,19 +604,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/number.optimized.wat b/tests/compiler/number.optimized.wat index 9d9b665b8f..df3e20cffa 100644 --- a/tests/compiler/number.optimized.wat +++ b/tests/compiler/number.optimized.wat @@ -2831,83 +2831,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -2961,19 +2951,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/object-literal.optimized.wat b/tests/compiler/object-literal.optimized.wat index 1909f3ca88..958d8b733f 100644 --- a/tests/compiler/object-literal.optimized.wat +++ b/tests/compiler/object-literal.optimized.wat @@ -2296,83 +2296,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -2426,19 +2416,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/resolve-access.optimized.wat b/tests/compiler/resolve-access.optimized.wat index 234cc19300..fd9ab6d077 100644 --- a/tests/compiler/resolve-access.optimized.wat +++ b/tests/compiler/resolve-access.optimized.wat @@ -2151,121 +2151,103 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $2 + local.tee $2 local.get $1 i32.const 2 i32.add - local.set $3 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $2 - local.get $3 + local.tee $3 i32.load8_u i32.store8 local.get $2 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $2 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $3 i32.const 2 i32.add - local.set $1 - local.get $2 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $2 + local.tee $2 local.get $1 i32.const 2 i32.add - local.set $3 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $2 - local.get $3 + local.tee $3 i32.load8_u i32.store8 local.get $2 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $2 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $3 i32.const 2 i32.add - local.set $1 - local.get $2 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $2 + local.tee $2 local.get $1 i32.const 2 i32.add - local.set $3 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $2 - local.get $3 + local.tee $3 i32.load8_u i32.store8 local.get $2 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $2 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $3 i32.const 2 i32.add - local.set $1 - local.get $2 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $2 + local.tee $2 local.get $1 i32.const 2 i32.add - local.set $3 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $2 - local.get $3 + local.tee $3 i32.load8_u i32.store8 - local.get $2 - i32.const 2 - i32.add - local.set $0 local.get $3 i32.const 2 i32.add @@ -2274,6 +2256,10 @@ local.get $3 i32.load8_u offset=1 i32.store8 offset=1 + local.get $2 + i32.const 2 + i32.add + local.set $0 end local.get $4 i32.const 8 @@ -2284,57 +2270,47 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $2 + local.tee $2 local.get $1 i32.const 2 i32.add - local.set $3 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $2 - local.get $3 + local.tee $3 i32.load8_u i32.store8 local.get $2 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $2 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $3 i32.const 2 i32.add - local.set $1 - local.get $2 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $2 + local.tee $2 local.get $1 i32.const 2 i32.add - local.set $3 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $2 - local.get $3 + local.tee $3 i32.load8_u i32.store8 - local.get $2 - i32.const 2 - i32.add - local.set $0 local.get $3 i32.const 2 i32.add @@ -2343,6 +2319,10 @@ local.get $3 i32.load8_u offset=1 i32.store8 offset=1 + local.get $2 + i32.const 2 + i32.add + local.set $0 end local.get $4 i32.const 4 @@ -2353,25 +2333,19 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $2 + local.tee $2 local.get $1 i32.const 2 i32.add - local.set $3 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $2 - local.get $3 + local.tee $3 i32.load8_u i32.store8 - local.get $2 - i32.const 2 - i32.add - local.set $0 local.get $3 i32.const 2 i32.add @@ -2380,6 +2354,10 @@ local.get $3 i32.load8_u offset=1 i32.store8 offset=1 + local.get $2 + i32.const 2 + i32.add + local.set $0 end local.get $4 i32.const 2 diff --git a/tests/compiler/resolve-binary.optimized.wat b/tests/compiler/resolve-binary.optimized.wat index 8f15dc1791..eedd1ae9e3 100644 --- a/tests/compiler/resolve-binary.optimized.wat +++ b/tests/compiler/resolve-binary.optimized.wat @@ -3019,83 +3019,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -3149,19 +3139,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/resolve-elementaccess.optimized.wat b/tests/compiler/resolve-elementaccess.optimized.wat index 2cf4588e10..88bb7200be 100644 --- a/tests/compiler/resolve-elementaccess.optimized.wat +++ b/tests/compiler/resolve-elementaccess.optimized.wat @@ -2711,83 +2711,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -2841,19 +2831,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/resolve-ternary.optimized.wat b/tests/compiler/resolve-ternary.optimized.wat index e45ae6420b..1b82168358 100644 --- a/tests/compiler/resolve-ternary.optimized.wat +++ b/tests/compiler/resolve-ternary.optimized.wat @@ -2712,83 +2712,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -2842,19 +2832,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/std-wasi/crypto.optimized.wat b/tests/compiler/std-wasi/crypto.optimized.wat index 09424a5109..e71ba45e9f 100644 --- a/tests/compiler/std-wasi/crypto.optimized.wat +++ b/tests/compiler/std-wasi/crypto.optimized.wat @@ -3343,83 +3343,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -3473,19 +3463,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/std-wasi/process.optimized.wat b/tests/compiler/std-wasi/process.optimized.wat index 652a46555f..01ce05ee7d 100644 --- a/tests/compiler/std-wasi/process.optimized.wat +++ b/tests/compiler/std-wasi/process.optimized.wat @@ -3397,83 +3397,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -3527,19 +3517,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index 46f51d88f6..9e72c5cb0b 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -2904,83 +2904,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -3034,19 +3024,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/std/arraybuffer.optimized.wat b/tests/compiler/std/arraybuffer.optimized.wat index 6fab8e3fb4..7e026fd361 100644 --- a/tests/compiler/std/arraybuffer.optimized.wat +++ b/tests/compiler/std/arraybuffer.optimized.wat @@ -2168,83 +2168,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -2298,19 +2288,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/std/date.optimized.wat b/tests/compiler/std/date.optimized.wat index c554de81ae..b29b061d0f 100644 --- a/tests/compiler/std/date.optimized.wat +++ b/tests/compiler/std/date.optimized.wat @@ -3166,83 +3166,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -3296,19 +3286,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/std/map.optimized.wat b/tests/compiler/std/map.optimized.wat index cf2b5dd196..d944f4fba6 100644 --- a/tests/compiler/std/map.optimized.wat +++ b/tests/compiler/std/map.optimized.wat @@ -2433,83 +2433,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -2563,19 +2553,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/std/pointer.optimized.wat b/tests/compiler/std/pointer.optimized.wat index 19a9eeae86..ef929aeb77 100644 --- a/tests/compiler/std/pointer.optimized.wat +++ b/tests/compiler/std/pointer.optimized.wat @@ -458,121 +458,103 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $2 + local.tee $2 local.get $1 i32.const 2 i32.add - local.set $3 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $2 - local.get $3 + local.tee $3 i32.load8_u i32.store8 local.get $2 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $2 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $3 i32.const 2 i32.add - local.set $1 - local.get $2 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $2 + local.tee $2 local.get $1 i32.const 2 i32.add - local.set $3 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $2 - local.get $3 + local.tee $3 i32.load8_u i32.store8 local.get $2 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $2 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $3 i32.const 2 i32.add - local.set $1 - local.get $2 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $2 + local.tee $2 local.get $1 i32.const 2 i32.add - local.set $3 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $2 - local.get $3 + local.tee $3 i32.load8_u i32.store8 local.get $2 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $2 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $3 i32.const 2 i32.add - local.set $1 - local.get $2 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $2 + local.tee $2 local.get $1 i32.const 2 i32.add - local.set $3 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $2 - local.get $3 + local.tee $3 i32.load8_u i32.store8 - local.get $2 - i32.const 2 - i32.add - local.set $0 local.get $3 i32.const 2 i32.add @@ -581,6 +563,10 @@ local.get $3 i32.load8_u offset=1 i32.store8 offset=1 + local.get $2 + i32.const 2 + i32.add + local.set $0 end local.get $4 i32.const 8 @@ -591,57 +577,47 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $2 + local.tee $2 local.get $1 i32.const 2 i32.add - local.set $3 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $2 - local.get $3 + local.tee $3 i32.load8_u i32.store8 local.get $2 + local.get $3 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $2 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $3 i32.const 2 i32.add - local.set $1 - local.get $2 - local.get $3 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $2 + local.tee $2 local.get $1 i32.const 2 i32.add - local.set $3 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $2 - local.get $3 + local.tee $3 i32.load8_u i32.store8 - local.get $2 - i32.const 2 - i32.add - local.set $0 local.get $3 i32.const 2 i32.add @@ -650,6 +626,10 @@ local.get $3 i32.load8_u offset=1 i32.store8 offset=1 + local.get $2 + i32.const 2 + i32.add + local.set $0 end local.get $4 i32.const 4 @@ -660,25 +640,19 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $2 + local.tee $2 local.get $1 i32.const 2 i32.add - local.set $3 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $2 - local.get $3 + local.tee $3 i32.load8_u i32.store8 - local.get $2 - i32.const 2 - i32.add - local.set $0 local.get $3 i32.const 2 i32.add @@ -687,6 +661,10 @@ local.get $3 i32.load8_u offset=1 i32.store8 offset=1 + local.get $2 + i32.const 2 + i32.add + local.set $0 end local.get $4 i32.const 2 diff --git a/tests/compiler/std/set.optimized.wat b/tests/compiler/std/set.optimized.wat index 0b186d7271..6e0bb88009 100644 --- a/tests/compiler/std/set.optimized.wat +++ b/tests/compiler/std/set.optimized.wat @@ -2486,83 +2486,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -2616,19 +2606,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/std/static-array.optimized.wat b/tests/compiler/std/static-array.optimized.wat index ab8c0f7278..ee37c135f1 100644 --- a/tests/compiler/std/static-array.optimized.wat +++ b/tests/compiler/std/static-array.optimized.wat @@ -1904,83 +1904,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -2034,19 +2024,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/std/staticarray.optimized.wat b/tests/compiler/std/staticarray.optimized.wat index cdfd15723e..234a2b2b10 100644 --- a/tests/compiler/std/staticarray.optimized.wat +++ b/tests/compiler/std/staticarray.optimized.wat @@ -2368,83 +2368,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -2498,19 +2488,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/std/string-casemapping.optimized.wat b/tests/compiler/std/string-casemapping.optimized.wat index 302add0bf9..ab7ce90c22 100644 --- a/tests/compiler/std/string-casemapping.optimized.wat +++ b/tests/compiler/std/string-casemapping.optimized.wat @@ -2635,83 +2635,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -2765,19 +2755,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/std/string-encoding.optimized.wat b/tests/compiler/std/string-encoding.optimized.wat index 6741c3ba0c..9c19b57703 100644 --- a/tests/compiler/std/string-encoding.optimized.wat +++ b/tests/compiler/std/string-encoding.optimized.wat @@ -2057,83 +2057,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -2187,19 +2177,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/std/string.optimized.wat b/tests/compiler/std/string.optimized.wat index 089815cf53..28038d45f7 100644 --- a/tests/compiler/std/string.optimized.wat +++ b/tests/compiler/std/string.optimized.wat @@ -3263,83 +3263,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -3393,19 +3383,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/std/symbol.optimized.wat b/tests/compiler/std/symbol.optimized.wat index e5a0779f40..e7d9d9237e 100644 --- a/tests/compiler/std/symbol.optimized.wat +++ b/tests/compiler/std/symbol.optimized.wat @@ -2667,83 +2667,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -2797,19 +2787,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/std/typedarray.optimized.wat b/tests/compiler/std/typedarray.optimized.wat index 9b5b0965d0..dea1eb9b98 100644 --- a/tests/compiler/std/typedarray.optimized.wat +++ b/tests/compiler/std/typedarray.optimized.wat @@ -4434,83 +4434,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -4564,19 +4554,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/std/uri.optimized.wat b/tests/compiler/std/uri.optimized.wat index 0189ba6c25..449878d3a8 100644 --- a/tests/compiler/std/uri.optimized.wat +++ b/tests/compiler/std/uri.optimized.wat @@ -2138,83 +2138,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -2268,19 +2258,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/templateliteral.optimized.wat b/tests/compiler/templateliteral.optimized.wat index 88967d9a2a..398e4f5aa2 100644 --- a/tests/compiler/templateliteral.optimized.wat +++ b/tests/compiler/templateliteral.optimized.wat @@ -2374,83 +2374,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -2504,19 +2494,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 diff --git a/tests/compiler/wasi/trace.optimized.wat b/tests/compiler/wasi/trace.optimized.wat index 68d9959d02..671c64c8d5 100644 --- a/tests/compiler/wasi/trace.optimized.wat +++ b/tests/compiler/wasi/trace.optimized.wat @@ -2068,83 +2068,73 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 + local.get $4 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $3 i32.const 2 i32.add - local.set $0 + local.tee $0 local.get $4 i32.const 2 i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 @@ -2198,19 +2188,17 @@ i32.load8_u i32.store8 local.get $0 + local.get $1 + i32.load8_u offset=1 + i32.store8 offset=1 + local.get $0 i32.const 2 i32.add - local.set $3 + local.tee $3 local.get $1 i32.const 2 i32.add - local.set $4 - local.get $0 - local.get $1 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 - local.get $4 + local.tee $4 i32.load8_u i32.store8 local.get $3 From 786d1b3970799e6b06a2b2951c333e317e2c569e Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Mon, 20 Sep 2021 13:10:07 +0300 Subject: [PATCH 15/54] better --- src/module.ts | 2 +- tests/compiler/call-super.optimized.wat | 33 +- tests/compiler/class-implements.optimized.wat | 33 +- .../class-overloading-cast.optimized.wat | 33 +- .../compiler/class-overloading.optimized.wat | 33 +- tests/compiler/class.optimized.wat | 33 +- tests/compiler/constructor.optimized.wat | 33 +- tests/compiler/do.optimized.wat | 33 +- .../empty-exportruntime.optimized.wat | 33 +- tests/compiler/empty-new.optimized.wat | 33 +- tests/compiler/exports.optimized.wat | 33 +- .../exportstar-rereexport.optimized.wat | 33 +- .../extends-baseaggregate.optimized.wat | 153 ++--- .../compiler/extends-recursive.optimized.wat | 33 +- tests/compiler/features/simd.optimized.wat | 15 +- .../field-initialization.optimized.wat | 33 +- tests/compiler/field.optimized.wat | 111 ++- tests/compiler/for.optimized.wat | 33 +- tests/compiler/function-call.optimized.wat | 33 +- .../function-expression.optimized.wat | 33 +- tests/compiler/getter-call.optimized.wat | 33 +- tests/compiler/heap.optimized.wat | 125 ++-- .../implicit-getter-setter.optimized.wat | 33 +- tests/compiler/infer-array.optimized.wat | 143 ++-- tests/compiler/infer-generic.optimized.wat | 33 +- tests/compiler/inlining.optimized.wat | 33 +- tests/compiler/instanceof-class.optimized.wat | 33 +- tests/compiler/issues/1095.optimized.wat | 33 +- tests/compiler/issues/1225.optimized.wat | 33 +- tests/compiler/issues/1699.optimized.wat | 143 ++-- tests/compiler/logical.optimized.wat | 33 +- tests/compiler/managed-cast.optimized.wat | 33 +- tests/compiler/memcpy.optimized.wat | 110 ++- tests/compiler/new.optimized.wat | 33 +- tests/compiler/number.optimized.wat | 143 ++-- tests/compiler/object-literal.optimized.wat | 125 ++-- .../optional-typeparameters.optimized.wat | 33 +- tests/compiler/reexport.optimized.wat | 33 +- tests/compiler/rereexport.optimized.wat | 33 +- tests/compiler/resolve-access.optimized.wat | 111 ++- tests/compiler/resolve-binary.optimized.wat | 143 ++-- .../resolve-elementaccess.optimized.wat | 143 ++-- .../resolve-function-expression.optimized.wat | 33 +- tests/compiler/resolve-nested.optimized.wat | 33 +- tests/compiler/resolve-new.optimized.wat | 33 +- .../resolve-propertyaccess.optimized.wat | 33 +- tests/compiler/resolve-ternary.optimized.wat | 143 ++-- tests/compiler/resolve-unary.optimized.wat | 33 +- tests/compiler/rt/finalize.optimized.wat | 33 +- tests/compiler/rt/instanceof.optimized.wat | 33 +- .../runtime-incremental-export.optimized.wat | 33 +- .../rt/runtime-minimal-export.optimized.wat | 59 +- tests/compiler/std-wasi/console.optimized.wat | 26 +- tests/compiler/std-wasi/crypto.optimized.wat | 125 ++-- tests/compiler/std-wasi/process.optimized.wat | 125 ++-- .../compiler/std/array-literal.optimized.wat | 33 +- tests/compiler/std/array.optimized.wat | 452 ++++++------ tests/compiler/std/arraybuffer.optimized.wat | 143 ++-- tests/compiler/std/dataview.optimized.wat | 33 +- tests/compiler/std/date.optimized.wat | 232 +++---- tests/compiler/std/map.optimized.wat | 143 ++-- tests/compiler/std/math.optimized.wat | 226 +++--- tests/compiler/std/mod.optimized.wat | 84 +-- tests/compiler/std/new.optimized.wat | 33 +- .../std/operator-overloading.optimized.wat | 33 +- tests/compiler/std/pointer.optimized.wat | 78 +-- tests/compiler/std/set.optimized.wat | 143 ++-- tests/compiler/std/static-array.optimized.wat | 143 ++-- tests/compiler/std/staticarray.optimized.wat | 144 ++-- .../std/string-casemapping.optimized.wat | 143 ++-- .../std/string-encoding.optimized.wat | 143 ++-- tests/compiler/std/string.optimized.wat | 143 ++-- tests/compiler/std/symbol.optimized.wat | 143 ++-- tests/compiler/std/typedarray.optimized.wat | 645 +++++++++--------- tests/compiler/std/uri.optimized.wat | 143 ++-- tests/compiler/super-inline.optimized.wat | 33 +- tests/compiler/templateliteral.optimized.wat | 143 ++-- tests/compiler/throw.optimized.wat | 15 +- tests/compiler/typeof.optimized.wat | 33 +- tests/compiler/wasi/trace.optimized.wat | 353 +++++----- tests/compiler/while.optimized.wat | 33 +- 81 files changed, 3378 insertions(+), 3678 deletions(-) diff --git a/src/module.ts b/src/module.ts index 55e432edf0..f15c633a22 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2395,8 +2395,8 @@ export class Module { passes.push("vacuum"); passes.push("ssa-nomerge"); - passes.push("coalesce-locals"); passes.push("simplify-locals"); + passes.push("coalesce-locals"); } passes.push("remove-unused-brs"); passes.push("remove-unused-names"); diff --git a/tests/compiler/call-super.optimized.wat b/tests/compiler/call-super.optimized.wat index 24cac8516c..ff814c201d 100644 --- a/tests/compiler/call-super.optimized.wat +++ b/tests/compiler/call-super.optimized.wat @@ -116,11 +116,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -132,21 +131,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -875,7 +872,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17980 i32.ge_u if @@ -885,20 +882,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -911,13 +908,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/class-implements.optimized.wat b/tests/compiler/class-implements.optimized.wat index 7de51a98c0..207fbc5d85 100644 --- a/tests/compiler/class-implements.optimized.wat +++ b/tests/compiler/class-implements.optimized.wat @@ -144,11 +144,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -160,21 +159,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -903,7 +900,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17948 i32.ge_u if @@ -913,20 +910,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -939,13 +936,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/class-overloading-cast.optimized.wat b/tests/compiler/class-overloading-cast.optimized.wat index ae4f1b1bd2..6a4a6c6ed0 100644 --- a/tests/compiler/class-overloading-cast.optimized.wat +++ b/tests/compiler/class-overloading-cast.optimized.wat @@ -164,11 +164,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -180,21 +179,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -923,7 +920,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 18084 i32.ge_u if @@ -933,20 +930,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -959,13 +956,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/class-overloading.optimized.wat b/tests/compiler/class-overloading.optimized.wat index 493b78dc33..2aecef4880 100644 --- a/tests/compiler/class-overloading.optimized.wat +++ b/tests/compiler/class-overloading.optimized.wat @@ -194,11 +194,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -210,21 +209,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -953,7 +950,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 18316 i32.ge_u if @@ -963,20 +960,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -989,13 +986,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/class.optimized.wat b/tests/compiler/class.optimized.wat index 55b631b18a..7249c85819 100644 --- a/tests/compiler/class.optimized.wat +++ b/tests/compiler/class.optimized.wat @@ -258,11 +258,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -274,21 +273,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1017,7 +1014,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17972 i32.ge_u if @@ -1027,20 +1024,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1053,13 +1050,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/constructor.optimized.wat b/tests/compiler/constructor.optimized.wat index b622a2ee03..e4f7821678 100644 --- a/tests/compiler/constructor.optimized.wat +++ b/tests/compiler/constructor.optimized.wat @@ -226,11 +226,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -242,21 +241,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -985,7 +982,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17988 i32.ge_u if @@ -995,20 +992,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1021,13 +1018,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/do.optimized.wat b/tests/compiler/do.optimized.wat index 739e5cc2c2..e9d0897762 100644 --- a/tests/compiler/do.optimized.wat +++ b/tests/compiler/do.optimized.wat @@ -116,11 +116,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -132,21 +131,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -875,7 +872,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17892 i32.ge_u if @@ -885,20 +882,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -911,13 +908,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/empty-exportruntime.optimized.wat b/tests/compiler/empty-exportruntime.optimized.wat index 0687dde3a8..c5516f49e7 100644 --- a/tests/compiler/empty-exportruntime.optimized.wat +++ b/tests/compiler/empty-exportruntime.optimized.wat @@ -264,11 +264,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -280,21 +279,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1023,7 +1020,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17980 i32.ge_u if @@ -1033,20 +1030,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1059,13 +1056,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/empty-new.optimized.wat b/tests/compiler/empty-new.optimized.wat index 94ad7bec6b..d4c206589f 100644 --- a/tests/compiler/empty-new.optimized.wat +++ b/tests/compiler/empty-new.optimized.wat @@ -112,11 +112,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -128,21 +127,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -871,7 +868,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17852 i32.ge_u if @@ -881,20 +878,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -907,13 +904,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/exports.optimized.wat b/tests/compiler/exports.optimized.wat index d450a6294d..f092467718 100644 --- a/tests/compiler/exports.optimized.wat +++ b/tests/compiler/exports.optimized.wat @@ -166,11 +166,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -182,21 +181,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -925,7 +922,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17868 i32.ge_u if @@ -935,20 +932,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -961,13 +958,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/exportstar-rereexport.optimized.wat b/tests/compiler/exportstar-rereexport.optimized.wat index 5af6c3056b..029e737c34 100644 --- a/tests/compiler/exportstar-rereexport.optimized.wat +++ b/tests/compiler/exportstar-rereexport.optimized.wat @@ -176,11 +176,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -192,21 +191,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -935,7 +932,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17956 i32.ge_u if @@ -945,20 +942,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -971,13 +968,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/extends-baseaggregate.optimized.wat b/tests/compiler/extends-baseaggregate.optimized.wat index 7ed6563ec7..9d1452a827 100644 --- a/tests/compiler/extends-baseaggregate.optimized.wat +++ b/tests/compiler/extends-baseaggregate.optimized.wat @@ -264,11 +264,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -280,21 +279,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1023,7 +1020,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 18156 i32.ge_u if @@ -1033,20 +1030,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1059,13 +1056,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end @@ -2148,26 +2145,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -2181,74 +2163,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -2268,51 +2264,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -2963,7 +2958,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $2 i32.load offset=4 i32.const 3 i32.and @@ -2973,13 +2968,13 @@ i32.load i32.const 3 i32.and - local.tee $2 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if i32.const 1148 - local.get $0 + local.get $2 local.get $1 select call $~lib/rt/itcms/Object#makeGray @@ -2987,12 +2982,12 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $2 + local.get $0 i32.const 3 i32.eq i32.and if - local.get $0 + local.get $2 call $~lib/rt/itcms/Object#makeGray end end diff --git a/tests/compiler/extends-recursive.optimized.wat b/tests/compiler/extends-recursive.optimized.wat index bef86b226c..0624945390 100644 --- a/tests/compiler/extends-recursive.optimized.wat +++ b/tests/compiler/extends-recursive.optimized.wat @@ -253,11 +253,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -269,21 +268,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1012,7 +1009,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17868 i32.ge_u if @@ -1022,20 +1019,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1048,13 +1045,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/features/simd.optimized.wat b/tests/compiler/features/simd.optimized.wat index 4db18e2d61..9fecfff659 100644 --- a/tests/compiler/features/simd.optimized.wat +++ b/tests/compiler/features/simd.optimized.wat @@ -53,11 +53,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -69,21 +68,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 diff --git a/tests/compiler/field-initialization.optimized.wat b/tests/compiler/field-initialization.optimized.wat index 6bd313f01c..3dccc8f130 100644 --- a/tests/compiler/field-initialization.optimized.wat +++ b/tests/compiler/field-initialization.optimized.wat @@ -271,11 +271,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -287,21 +286,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1030,7 +1027,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 18380 i32.ge_u if @@ -1040,20 +1037,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1066,13 +1063,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/field.optimized.wat b/tests/compiler/field.optimized.wat index 2022e4561e..e4ce94b4d5 100644 --- a/tests/compiler/field.optimized.wat +++ b/tests/compiler/field.optimized.wat @@ -249,11 +249,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -265,21 +264,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1008,7 +1005,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17908 i32.ge_u if @@ -1018,20 +1015,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1044,13 +1041,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end @@ -2133,22 +2130,22 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $1 i32.load8_u i32.store8 - local.get $2 - local.get $3 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 + local.get $0 i32.const 2 i32.add local.tee $0 - local.get $3 + local.get $1 i32.const 2 i32.add local.tee $1 @@ -2161,22 +2158,22 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $1 i32.load8_u i32.store8 - local.get $2 - local.get $3 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 + local.get $0 i32.const 2 i32.add local.tee $0 - local.get $3 + local.get $1 i32.const 2 i32.add local.tee $1 @@ -2189,22 +2186,22 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $1 i32.load8_u i32.store8 - local.get $2 - local.get $3 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 + local.get $0 i32.const 2 i32.add local.tee $0 - local.get $3 + local.get $1 i32.const 2 i32.add local.tee $1 @@ -2217,22 +2214,22 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $2 i32.load8_u i32.store8 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $1 + local.get $0 local.get $2 - local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 + local.get $0 i32.const 2 i32.add local.set $0 @@ -2252,22 +2249,22 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $1 i32.load8_u i32.store8 - local.get $2 - local.get $3 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 + local.get $0 i32.const 2 i32.add local.tee $0 - local.get $3 + local.get $1 i32.const 2 i32.add local.tee $1 @@ -2280,22 +2277,22 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $2 i32.load8_u i32.store8 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $1 + local.get $0 local.get $2 - local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 + local.get $0 i32.const 2 i32.add local.set $0 @@ -2315,22 +2312,22 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $2 i32.load8_u i32.store8 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $1 + local.get $0 local.get $2 - local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 + local.get $0 i32.const 2 i32.add local.set $0 diff --git a/tests/compiler/for.optimized.wat b/tests/compiler/for.optimized.wat index 9f124c1092..e1f76cf939 100644 --- a/tests/compiler/for.optimized.wat +++ b/tests/compiler/for.optimized.wat @@ -116,11 +116,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -132,21 +131,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -875,7 +872,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17892 i32.ge_u if @@ -885,20 +882,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -911,13 +908,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/function-call.optimized.wat b/tests/compiler/function-call.optimized.wat index 513af5e95a..524c908d83 100644 --- a/tests/compiler/function-call.optimized.wat +++ b/tests/compiler/function-call.optimized.wat @@ -157,11 +157,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -173,21 +172,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -916,7 +913,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 18220 i32.ge_u if @@ -926,20 +923,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -952,13 +949,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/function-expression.optimized.wat b/tests/compiler/function-expression.optimized.wat index b5a1e92e0f..68cd1315e6 100644 --- a/tests/compiler/function-expression.optimized.wat +++ b/tests/compiler/function-expression.optimized.wat @@ -317,11 +317,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -333,21 +332,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1076,7 +1073,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 18580 i32.ge_u if @@ -1086,20 +1083,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1112,13 +1109,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/getter-call.optimized.wat b/tests/compiler/getter-call.optimized.wat index 96b2f6e2bf..57ab545b1b 100644 --- a/tests/compiler/getter-call.optimized.wat +++ b/tests/compiler/getter-call.optimized.wat @@ -119,11 +119,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -135,21 +134,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -878,7 +875,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17900 i32.ge_u if @@ -888,20 +885,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -914,13 +911,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/heap.optimized.wat b/tests/compiler/heap.optimized.wat index 5d043328d1..09e33516f4 100644 --- a/tests/compiler/heap.optimized.wat +++ b/tests/compiler/heap.optimized.wat @@ -61,11 +61,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -77,21 +76,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1443,26 +1440,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -1476,74 +1458,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -1563,51 +1559,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 diff --git a/tests/compiler/implicit-getter-setter.optimized.wat b/tests/compiler/implicit-getter-setter.optimized.wat index 8944071924..cf9d68706b 100644 --- a/tests/compiler/implicit-getter-setter.optimized.wat +++ b/tests/compiler/implicit-getter-setter.optimized.wat @@ -259,11 +259,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -275,21 +274,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1018,7 +1015,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17868 i32.ge_u if @@ -1028,20 +1025,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1054,13 +1051,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/infer-array.optimized.wat b/tests/compiler/infer-array.optimized.wat index 42fe5f4a6f..0231fefe00 100644 --- a/tests/compiler/infer-array.optimized.wat +++ b/tests/compiler/infer-array.optimized.wat @@ -285,11 +285,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -301,21 +300,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1044,7 +1041,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 18596 i32.ge_u if @@ -1054,20 +1051,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1080,13 +1077,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end @@ -2165,26 +2162,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -2198,74 +2180,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -2285,51 +2281,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 diff --git a/tests/compiler/infer-generic.optimized.wat b/tests/compiler/infer-generic.optimized.wat index ffd7fb9291..90f50013c7 100644 --- a/tests/compiler/infer-generic.optimized.wat +++ b/tests/compiler/infer-generic.optimized.wat @@ -141,11 +141,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -157,21 +156,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -900,7 +897,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 18068 i32.ge_u if @@ -910,20 +907,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -936,13 +933,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/inlining.optimized.wat b/tests/compiler/inlining.optimized.wat index 56f66ed08c..f6b5d6d2ce 100644 --- a/tests/compiler/inlining.optimized.wat +++ b/tests/compiler/inlining.optimized.wat @@ -128,11 +128,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -144,21 +143,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -887,7 +884,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17964 i32.ge_u if @@ -897,20 +894,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -923,13 +920,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/instanceof-class.optimized.wat b/tests/compiler/instanceof-class.optimized.wat index ec2733c6ae..2c2f76df5b 100644 --- a/tests/compiler/instanceof-class.optimized.wat +++ b/tests/compiler/instanceof-class.optimized.wat @@ -136,11 +136,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -152,21 +151,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -895,7 +892,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17948 i32.ge_u if @@ -905,20 +902,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -931,13 +928,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/issues/1095.optimized.wat b/tests/compiler/issues/1095.optimized.wat index 9ab8c0f6bd..047f574504 100644 --- a/tests/compiler/issues/1095.optimized.wat +++ b/tests/compiler/issues/1095.optimized.wat @@ -253,11 +253,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -269,21 +268,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1012,7 +1009,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 18004 i32.ge_u if @@ -1022,20 +1019,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1048,13 +1045,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/issues/1225.optimized.wat b/tests/compiler/issues/1225.optimized.wat index febd93c8f9..0e379f351a 100644 --- a/tests/compiler/issues/1225.optimized.wat +++ b/tests/compiler/issues/1225.optimized.wat @@ -128,11 +128,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -144,21 +143,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -887,7 +884,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17908 i32.ge_u if @@ -897,20 +894,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -923,13 +920,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/issues/1699.optimized.wat b/tests/compiler/issues/1699.optimized.wat index 47054d78e5..613b8c695d 100644 --- a/tests/compiler/issues/1699.optimized.wat +++ b/tests/compiler/issues/1699.optimized.wat @@ -260,11 +260,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -276,21 +275,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1019,7 +1016,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 18140 i32.ge_u if @@ -1029,20 +1026,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1055,13 +1052,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end @@ -2144,26 +2141,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -2177,74 +2159,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -2264,51 +2260,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 diff --git a/tests/compiler/logical.optimized.wat b/tests/compiler/logical.optimized.wat index e78eb6abf4..6e20512cfb 100644 --- a/tests/compiler/logical.optimized.wat +++ b/tests/compiler/logical.optimized.wat @@ -116,11 +116,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -132,21 +131,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -875,7 +872,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17908 i32.ge_u if @@ -885,20 +882,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -911,13 +908,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/managed-cast.optimized.wat b/tests/compiler/managed-cast.optimized.wat index c27b7d86f8..b42cc8d816 100644 --- a/tests/compiler/managed-cast.optimized.wat +++ b/tests/compiler/managed-cast.optimized.wat @@ -120,11 +120,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -136,21 +135,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -879,7 +876,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 18060 i32.ge_u if @@ -889,20 +886,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -915,13 +912,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/memcpy.optimized.wat b/tests/compiler/memcpy.optimized.wat index aff35d147a..a3b693ff75 100644 --- a/tests/compiler/memcpy.optimized.wat +++ b/tests/compiler/memcpy.optimized.wat @@ -461,26 +461,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -494,74 +479,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -581,51 +580,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 diff --git a/tests/compiler/new.optimized.wat b/tests/compiler/new.optimized.wat index fb2deaeeee..25df47817e 100644 --- a/tests/compiler/new.optimized.wat +++ b/tests/compiler/new.optimized.wat @@ -174,11 +174,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -190,21 +189,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -933,7 +930,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17884 i32.ge_u if @@ -943,20 +940,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -969,13 +966,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/number.optimized.wat b/tests/compiler/number.optimized.wat index df3e20cffa..33c808e718 100644 --- a/tests/compiler/number.optimized.wat +++ b/tests/compiler/number.optimized.wat @@ -163,11 +163,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -179,21 +178,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -922,7 +919,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 21068 i32.ge_u if @@ -932,20 +929,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -958,13 +955,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end @@ -2808,26 +2805,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -2841,74 +2823,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -2928,51 +2924,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 diff --git a/tests/compiler/object-literal.optimized.wat b/tests/compiler/object-literal.optimized.wat index 958d8b733f..3188c252bb 100644 --- a/tests/compiler/object-literal.optimized.wat +++ b/tests/compiler/object-literal.optimized.wat @@ -263,11 +263,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -279,21 +278,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -2273,26 +2270,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -2306,74 +2288,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -2393,51 +2389,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 diff --git a/tests/compiler/optional-typeparameters.optimized.wat b/tests/compiler/optional-typeparameters.optimized.wat index 3962bc59cb..2a9b1b7554 100644 --- a/tests/compiler/optional-typeparameters.optimized.wat +++ b/tests/compiler/optional-typeparameters.optimized.wat @@ -134,11 +134,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -150,21 +149,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -893,7 +890,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17868 i32.ge_u if @@ -903,20 +900,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -929,13 +926,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/reexport.optimized.wat b/tests/compiler/reexport.optimized.wat index 6b3f09ea36..d7d5c42339 100644 --- a/tests/compiler/reexport.optimized.wat +++ b/tests/compiler/reexport.optimized.wat @@ -208,11 +208,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -224,21 +223,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -967,7 +964,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17916 i32.ge_u if @@ -977,20 +974,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1003,13 +1000,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/rereexport.optimized.wat b/tests/compiler/rereexport.optimized.wat index 2ee7f3eb0f..7303574c23 100644 --- a/tests/compiler/rereexport.optimized.wat +++ b/tests/compiler/rereexport.optimized.wat @@ -176,11 +176,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -192,21 +191,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -935,7 +932,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17956 i32.ge_u if @@ -945,20 +942,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -971,13 +968,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/resolve-access.optimized.wat b/tests/compiler/resolve-access.optimized.wat index fd9ab6d077..0c0777e019 100644 --- a/tests/compiler/resolve-access.optimized.wat +++ b/tests/compiler/resolve-access.optimized.wat @@ -271,11 +271,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -287,21 +286,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1030,7 +1027,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 19732 i32.ge_u if @@ -1040,20 +1037,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1066,13 +1063,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end @@ -2157,22 +2154,22 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $1 i32.load8_u i32.store8 - local.get $2 - local.get $3 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 + local.get $0 i32.const 2 i32.add local.tee $0 - local.get $3 + local.get $1 i32.const 2 i32.add local.tee $1 @@ -2185,22 +2182,22 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $1 i32.load8_u i32.store8 - local.get $2 - local.get $3 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 + local.get $0 i32.const 2 i32.add local.tee $0 - local.get $3 + local.get $1 i32.const 2 i32.add local.tee $1 @@ -2213,22 +2210,22 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $1 i32.load8_u i32.store8 - local.get $2 - local.get $3 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 + local.get $0 i32.const 2 i32.add local.tee $0 - local.get $3 + local.get $1 i32.const 2 i32.add local.tee $1 @@ -2241,22 +2238,22 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $2 i32.load8_u i32.store8 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $1 + local.get $0 local.get $2 - local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 + local.get $0 i32.const 2 i32.add local.set $0 @@ -2276,22 +2273,22 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $1 i32.load8_u i32.store8 - local.get $2 - local.get $3 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 + local.get $0 i32.const 2 i32.add local.tee $0 - local.get $3 + local.get $1 i32.const 2 i32.add local.tee $1 @@ -2304,22 +2301,22 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $2 i32.load8_u i32.store8 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $1 + local.get $0 local.get $2 - local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 + local.get $0 i32.const 2 i32.add local.set $0 @@ -2339,22 +2336,22 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $2 i32.load8_u i32.store8 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $1 + local.get $0 local.get $2 - local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 + local.get $0 i32.const 2 i32.add local.set $0 diff --git a/tests/compiler/resolve-binary.optimized.wat b/tests/compiler/resolve-binary.optimized.wat index eedd1ae9e3..ae10f4ae0f 100644 --- a/tests/compiler/resolve-binary.optimized.wat +++ b/tests/compiler/resolve-binary.optimized.wat @@ -466,11 +466,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -482,21 +481,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1225,7 +1222,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 27676 i32.ge_u if @@ -1235,20 +1232,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1261,13 +1258,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end @@ -2996,26 +2993,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -3029,74 +3011,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -3116,51 +3112,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 diff --git a/tests/compiler/resolve-elementaccess.optimized.wat b/tests/compiler/resolve-elementaccess.optimized.wat index 88bb7200be..4afd363e03 100644 --- a/tests/compiler/resolve-elementaccess.optimized.wat +++ b/tests/compiler/resolve-elementaccess.optimized.wat @@ -329,11 +329,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -345,21 +344,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1088,7 +1085,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 21236 i32.ge_u if @@ -1098,20 +1095,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1124,13 +1121,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end @@ -2688,26 +2685,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -2721,74 +2703,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -2808,51 +2804,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 diff --git a/tests/compiler/resolve-function-expression.optimized.wat b/tests/compiler/resolve-function-expression.optimized.wat index 31b856dabd..f990625d3f 100644 --- a/tests/compiler/resolve-function-expression.optimized.wat +++ b/tests/compiler/resolve-function-expression.optimized.wat @@ -156,11 +156,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -172,21 +171,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -915,7 +912,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 19844 i32.ge_u if @@ -925,20 +922,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -951,13 +948,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/resolve-nested.optimized.wat b/tests/compiler/resolve-nested.optimized.wat index b0e9297adc..1378594621 100644 --- a/tests/compiler/resolve-nested.optimized.wat +++ b/tests/compiler/resolve-nested.optimized.wat @@ -125,11 +125,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -141,21 +140,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -884,7 +881,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17876 i32.ge_u if @@ -894,20 +891,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -920,13 +917,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/resolve-new.optimized.wat b/tests/compiler/resolve-new.optimized.wat index 46a25983f2..6d9d4a38d8 100644 --- a/tests/compiler/resolve-new.optimized.wat +++ b/tests/compiler/resolve-new.optimized.wat @@ -124,11 +124,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -140,21 +139,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -883,7 +880,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17860 i32.ge_u if @@ -893,20 +890,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -919,13 +916,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/resolve-propertyaccess.optimized.wat b/tests/compiler/resolve-propertyaccess.optimized.wat index 27ab99a740..37975d1fa2 100644 --- a/tests/compiler/resolve-propertyaccess.optimized.wat +++ b/tests/compiler/resolve-propertyaccess.optimized.wat @@ -156,11 +156,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -172,21 +171,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -915,7 +912,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 20100 i32.ge_u if @@ -925,20 +922,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -951,13 +948,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/resolve-ternary.optimized.wat b/tests/compiler/resolve-ternary.optimized.wat index 1b82168358..bb64793639 100644 --- a/tests/compiler/resolve-ternary.optimized.wat +++ b/tests/compiler/resolve-ternary.optimized.wat @@ -160,11 +160,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -176,21 +175,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -919,7 +916,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 21028 i32.ge_u if @@ -929,20 +926,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -955,13 +952,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end @@ -2689,26 +2686,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -2722,74 +2704,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -2809,51 +2805,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 diff --git a/tests/compiler/resolve-unary.optimized.wat b/tests/compiler/resolve-unary.optimized.wat index 3c400b361b..958ed6bd50 100644 --- a/tests/compiler/resolve-unary.optimized.wat +++ b/tests/compiler/resolve-unary.optimized.wat @@ -182,11 +182,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -198,21 +197,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -941,7 +938,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 20156 i32.ge_u if @@ -951,20 +948,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -977,13 +974,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/rt/finalize.optimized.wat b/tests/compiler/rt/finalize.optimized.wat index 0314ca7727..37eac78dea 100644 --- a/tests/compiler/rt/finalize.optimized.wat +++ b/tests/compiler/rt/finalize.optimized.wat @@ -119,11 +119,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -135,21 +134,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -893,7 +890,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17908 i32.ge_u if @@ -903,20 +900,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -929,13 +926,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/rt/instanceof.optimized.wat b/tests/compiler/rt/instanceof.optimized.wat index de9834eaaa..fe2b72ea6d 100644 --- a/tests/compiler/rt/instanceof.optimized.wat +++ b/tests/compiler/rt/instanceof.optimized.wat @@ -177,11 +177,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -193,21 +192,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -936,7 +933,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17940 i32.ge_u if @@ -946,20 +943,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -972,13 +969,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/rt/runtime-incremental-export.optimized.wat b/tests/compiler/rt/runtime-incremental-export.optimized.wat index 0687dde3a8..c5516f49e7 100644 --- a/tests/compiler/rt/runtime-incremental-export.optimized.wat +++ b/tests/compiler/rt/runtime-incremental-export.optimized.wat @@ -264,11 +264,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -280,21 +279,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1023,7 +1020,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17980 i32.ge_u if @@ -1033,20 +1030,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1059,13 +1056,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/rt/runtime-minimal-export.optimized.wat b/tests/compiler/rt/runtime-minimal-export.optimized.wat index f63a185774..fa13931f26 100644 --- a/tests/compiler/rt/runtime-minimal-export.optimized.wat +++ b/tests/compiler/rt/runtime-minimal-export.optimized.wat @@ -69,11 +69,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -85,21 +84,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1220,23 +1217,23 @@ end global.get $~lib/rt/tcms/white i32.eqz - local.set $5 + local.set $4 global.get $~lib/rt/tcms/toSpace - local.tee $4 + local.tee $3 i32.load offset=4 i32.const -4 i32.and local.set $1 loop $while-continue|1 local.get $1 - local.get $4 + local.get $3 i32.ne if local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $5 + local.get $4 i32.ne if i32.const 0 @@ -1259,14 +1256,14 @@ end end global.get $~lib/rt/tcms/fromSpace - local.tee $6 + local.tee $5 i32.load offset=4 i32.const -4 i32.and local.set $1 loop $while-continue|2 local.get $1 - local.get $6 + local.get $5 i32.ne if global.get $~lib/rt/tcms/white @@ -1310,7 +1307,7 @@ local.get $1 i32.const 4 i32.add - local.tee $2 + local.tee $1 i32.const 1484 i32.ge_u if @@ -1320,20 +1317,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $2 + local.get $1 i32.const 4 i32.sub - local.set $1 - local.get $2 + local.set $6 + local.get $1 i32.const 15 i32.and i32.const 1 - local.get $2 + local.get $1 select if (result i32) i32.const 1 else - local.get $1 + local.get $6 i32.load i32.const 1 i32.and @@ -1346,13 +1343,13 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $1 + local.get $6 + local.get $6 i32.load i32.const 1 i32.or i32.store - local.get $1 + local.get $6 call $~lib/rt/tlsf/insertBlock end end @@ -1360,17 +1357,17 @@ br $while-continue|2 end end - local.get $6 - local.get $6 + local.get $5 + local.get $5 i32.store offset=4 - local.get $6 - local.get $6 + local.get $5 + local.get $5 i32.store offset=8 - local.get $4 + local.get $3 global.set $~lib/rt/tcms/fromSpace - local.get $6 - global.set $~lib/rt/tcms/toSpace local.get $5 + global.set $~lib/rt/tcms/toSpace + local.get $4 global.set $~lib/rt/tcms/white ) (func $~lib/rt/__visit_members (param $0 i32) diff --git a/tests/compiler/std-wasi/console.optimized.wat b/tests/compiler/std-wasi/console.optimized.wat index 8b006932f0..cb33097e8a 100644 --- a/tests/compiler/std-wasi/console.optimized.wat +++ b/tests/compiler/std-wasi/console.optimized.wat @@ -1038,11 +1038,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -1054,21 +1053,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -2145,13 +2142,14 @@ end end local.get $2 + local.tee $4 call $~lib/rt/tlsf/__alloc - local.set $4 + local.set $5 i32.const 3 global.set $~argumentsLength local.get $1 local.get $3 - local.get $4 + local.get $5 call $~lib/string/String.UTF8.encodeUnsafe@varargs local.get $2 i32.ne @@ -2164,10 +2162,10 @@ unreachable end i32.const 1136 - local.get $4 + local.get $5 i32.store i32.const 1140 - local.get $2 + local.get $4 i32.store local.get $0 i32.const 1136 @@ -2175,7 +2173,7 @@ i32.const 1144 call $~lib/bindings/wasi_snapshot_preview1/fd_write local.set $0 - local.get $4 + local.get $5 call $~lib/rt/tlsf/__free local.get $0 i32.const 65535 diff --git a/tests/compiler/std-wasi/crypto.optimized.wat b/tests/compiler/std-wasi/crypto.optimized.wat index e71ba45e9f..c8566be5d0 100644 --- a/tests/compiler/std-wasi/crypto.optimized.wat +++ b/tests/compiler/std-wasi/crypto.optimized.wat @@ -900,11 +900,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -916,21 +915,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -3320,26 +3317,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -3353,74 +3335,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -3440,51 +3436,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 diff --git a/tests/compiler/std-wasi/process.optimized.wat b/tests/compiler/std-wasi/process.optimized.wat index 01ce05ee7d..313ada16d1 100644 --- a/tests/compiler/std-wasi/process.optimized.wat +++ b/tests/compiler/std-wasi/process.optimized.wat @@ -1024,11 +1024,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -1040,21 +1039,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -3374,26 +3371,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -3407,74 +3389,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -3494,51 +3490,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 diff --git a/tests/compiler/std/array-literal.optimized.wat b/tests/compiler/std/array-literal.optimized.wat index 2a60e619fa..f8322a4c5f 100644 --- a/tests/compiler/std/array-literal.optimized.wat +++ b/tests/compiler/std/array-literal.optimized.wat @@ -359,11 +359,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -375,21 +374,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1118,7 +1115,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 18252 i32.ge_u if @@ -1128,20 +1125,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1154,13 +1151,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index 9e72c5cb0b..4ae7e545fe 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -967,11 +967,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -983,21 +982,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -2881,26 +2878,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -2914,74 +2896,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -3001,51 +2997,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -5084,11 +5079,12 @@ (local $8 i32) (local $9 f32) (local $10 f32) - (local $11 i64) - (local $12 i32) + (local $11 f32) + (local $12 i64) (local $13 i32) (local $14 i32) (local $15 i32) + (local $16 i32) local.get $1 i32.const 48 i32.le_s @@ -5113,17 +5109,17 @@ end local.get $0 f32.load - local.set $10 + local.set $11 local.get $0 f32.load offset=4 - local.set $9 + local.set $10 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $9 local.get $10 + local.get $11 + local.get $11 local.get $10 - local.get $9 local.get $2 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -5132,11 +5128,6 @@ local.tee $1 select f32.store - local.get $10 - local.get $9 - local.get $1 - select - local.set $10 local.get $0 f32.load offset=8 local.set $9 @@ -5144,7 +5135,11 @@ global.set $~argumentsLength local.get $0 local.get $9 + local.get $11 local.get $10 + local.get $1 + select + local.tee $10 local.get $10 local.get $9 local.get $2 @@ -5212,10 +5207,10 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $14 + local.tee $15 local.get $5 i32.add - local.set $13 + local.set $14 i32.const 0 local.set $7 loop $for-loop|1 @@ -5226,7 +5221,7 @@ local.get $7 i32.const 2 i32.shl - local.get $14 + local.get $15 i32.add i32.const -1 i32.store @@ -5241,13 +5236,13 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $12 + local.set $13 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $15 + local.tee $16 local.get $2 call $~lib/util/sort/extendRunRight local.tee $6 @@ -5259,9 +5254,9 @@ if local.get $0 i32.const 0 - local.get $15 + local.get $16 i32.const 31 - local.get $15 + local.get $16 i32.const 31 i32.lt_s select @@ -5272,7 +5267,7 @@ end loop $while-continue|2 local.get $6 - local.get $15 + local.get $16 i32.lt_s if local.get $0 @@ -5280,7 +5275,7 @@ i32.const 1 i32.add local.tee $5 - local.get $15 + local.get $16 local.get $2 call $~lib/util/sort/extendRunRight local.tee $7 @@ -5294,13 +5289,13 @@ if local.get $0 local.get $5 - local.get $15 + local.get $16 local.get $5 i32.const 31 i32.add local.tee $1 local.get $1 - local.get $15 + local.get $16 i32.gt_s select local.tee $7 @@ -5314,11 +5309,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $15 + local.get $16 i32.const 1 i32.add i64.extend_i32_u - local.tee $11 + local.tee $12 i64.div_u local.get $5 local.get $7 @@ -5328,7 +5323,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $11 + local.get $12 i64.div_u i64.xor i32.wrap_i64 @@ -5342,7 +5337,7 @@ local.get $4 i32.const 2 i32.shl - local.get $14 + local.get $15 i32.add i32.load local.tee $8 @@ -5351,7 +5346,7 @@ if local.get $0 local.get $8 - local.get $13 + local.get $14 local.get $4 i32.const 2 i32.shl @@ -5361,11 +5356,11 @@ i32.const 1 i32.add local.get $6 - local.get $12 + local.get $13 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $14 + local.get $15 i32.add i32.const -1 i32.store @@ -5379,7 +5374,7 @@ br $for-loop|3 end end - local.get $14 + local.get $15 local.get $1 i32.const 2 i32.shl @@ -5388,7 +5383,7 @@ local.get $3 i32.store local.get $4 - local.get $13 + local.get $14 i32.add local.get $6 i32.store @@ -5407,7 +5402,7 @@ local.get $4 i32.const 2 i32.shl - local.get $14 + local.get $15 i32.add i32.load local.tee $1 @@ -5419,13 +5414,13 @@ local.get $4 i32.const 2 i32.shl - local.get $13 + local.get $14 i32.add i32.load i32.const 1 i32.add - local.get $15 - local.get $12 + local.get $16 + local.get $13 local.get $2 call $~lib/util/sort/mergeRuns end @@ -5436,9 +5431,9 @@ br $for-loop|4 end end - local.get $12 + local.get $13 call $~lib/rt/tlsf/__free - local.get $14 + local.get $15 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 f32) (param $1 f32) (result i32) @@ -5970,11 +5965,12 @@ (local $8 i32) (local $9 f64) (local $10 f64) - (local $11 i64) - (local $12 i32) + (local $11 f64) + (local $12 i64) (local $13 i32) (local $14 i32) (local $15 i32) + (local $16 i32) local.get $1 i32.const 48 i32.le_s @@ -5999,17 +5995,17 @@ end local.get $0 f64.load - local.set $10 + local.set $11 local.get $0 f64.load offset=8 - local.set $9 + local.set $10 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $9 local.get $10 + local.get $11 + local.get $11 local.get $10 - local.get $9 local.get $2 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -6018,11 +6014,6 @@ local.tee $1 select f64.store - local.get $10 - local.get $9 - local.get $1 - select - local.set $10 local.get $0 f64.load offset=16 local.set $9 @@ -6030,7 +6021,11 @@ global.set $~argumentsLength local.get $0 local.get $9 + local.get $11 local.get $10 + local.get $1 + select + local.tee $10 local.get $10 local.get $9 local.get $2 @@ -6098,10 +6093,10 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $14 + local.tee $15 local.get $5 i32.add - local.set $13 + local.set $14 i32.const 0 local.set $7 loop $for-loop|1 @@ -6112,7 +6107,7 @@ local.get $7 i32.const 2 i32.shl - local.get $14 + local.get $15 i32.add i32.const -1 i32.store @@ -6127,13 +6122,13 @@ i32.const 3 i32.shl call $~lib/rt/tlsf/__alloc - local.set $12 + local.set $13 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $15 + local.tee $16 local.get $2 call $~lib/util/sort/extendRunRight local.tee $6 @@ -6145,9 +6140,9 @@ if local.get $0 i32.const 0 - local.get $15 + local.get $16 i32.const 31 - local.get $15 + local.get $16 i32.const 31 i32.lt_s select @@ -6158,7 +6153,7 @@ end loop $while-continue|2 local.get $6 - local.get $15 + local.get $16 i32.lt_s if local.get $0 @@ -6166,7 +6161,7 @@ i32.const 1 i32.add local.tee $5 - local.get $15 + local.get $16 local.get $2 call $~lib/util/sort/extendRunRight local.tee $7 @@ -6180,13 +6175,13 @@ if local.get $0 local.get $5 - local.get $15 + local.get $16 local.get $5 i32.const 31 i32.add local.tee $1 local.get $1 - local.get $15 + local.get $16 i32.gt_s select local.tee $7 @@ -6200,11 +6195,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $15 + local.get $16 i32.const 1 i32.add i64.extend_i32_u - local.tee $11 + local.tee $12 i64.div_u local.get $5 local.get $7 @@ -6214,7 +6209,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $11 + local.get $12 i64.div_u i64.xor i32.wrap_i64 @@ -6228,7 +6223,7 @@ local.get $4 i32.const 2 i32.shl - local.get $14 + local.get $15 i32.add i32.load local.tee $8 @@ -6237,7 +6232,7 @@ if local.get $0 local.get $8 - local.get $13 + local.get $14 local.get $4 i32.const 2 i32.shl @@ -6247,11 +6242,11 @@ i32.const 1 i32.add local.get $6 - local.get $12 + local.get $13 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $14 + local.get $15 i32.add i32.const -1 i32.store @@ -6265,7 +6260,7 @@ br $for-loop|3 end end - local.get $14 + local.get $15 local.get $1 i32.const 2 i32.shl @@ -6274,7 +6269,7 @@ local.get $3 i32.store local.get $4 - local.get $13 + local.get $14 i32.add local.get $6 i32.store @@ -6293,7 +6288,7 @@ local.get $4 i32.const 2 i32.shl - local.get $14 + local.get $15 i32.add i32.load local.tee $1 @@ -6305,13 +6300,13 @@ local.get $4 i32.const 2 i32.shl - local.get $13 + local.get $14 i32.add i32.load i32.const 1 i32.add - local.get $15 - local.get $12 + local.get $16 + local.get $13 local.get $2 call $~lib/util/sort/mergeRuns end @@ -6322,9 +6317,9 @@ br $for-loop|4 end end - local.get $12 + local.get $13 call $~lib/rt/tlsf/__free - local.get $14 + local.get $15 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 f64) (param $1 f64) (result i32) @@ -6855,33 +6850,32 @@ local.tee $4 select i32.store - local.get $1 - local.get $3 - local.get $4 - select - local.set $1 local.get $0 i32.load offset=8 - local.set $3 + local.set $5 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $3 - local.get $1 + local.get $5 local.get $1 local.get $3 + local.get $4 + select + local.tee $1 + local.get $1 + local.get $5 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $4 + local.tee $3 select i32.store offset=4 local.get $0 local.get $1 + local.get $5 local.get $3 - local.get $4 select i32.store offset=8 end @@ -7647,33 +7641,32 @@ local.tee $4 select i32.store - local.get $1 - local.get $3 - local.get $4 - select - local.set $1 local.get $0 i32.load offset=8 - local.set $3 + local.set $5 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $3 - local.get $1 + local.get $5 local.get $1 local.get $3 + local.get $4 + select + local.tee $1 + local.get $1 + local.get $5 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $4 + local.tee $3 select i32.store offset=4 local.get $0 local.get $1 + local.get $5 local.get $3 - local.get $4 select i32.store offset=8 end @@ -10499,6 +10492,8 @@ (local $12 i64) (local $13 i64) (local $14 i64) + (local $15 i64) + (local $16 i64) local.get $1 f64.const 0 f64.lt @@ -10519,7 +10514,15 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.set $7 + local.tee $7 + i32.const 1 + local.get $7 + select + i32.const 1075 + i32.sub + local.tee $8 + i32.const 1 + i32.sub local.get $2 i64.const 4503599627370495 i64.and @@ -10530,17 +10533,7 @@ i64.const 52 i64.shl i64.add - local.set $2 - local.get $7 - i32.const 1 - local.get $7 - select - i32.const 1075 - i32.sub - local.tee $7 - i32.const 1 - i32.sub - local.get $2 + local.tee $2 i64.const 1 i64.shl i64.const 1 @@ -10548,11 +10541,11 @@ local.tee $4 i64.clz i32.wrap_i64 - local.tee $8 + local.tee $7 i32.sub local.set $9 local.get $4 - local.get $8 + local.get $7 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -10562,13 +10555,13 @@ i64.eq i32.const 1 i32.add - local.tee $8 + local.tee $7 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $7 local.get $8 + local.get $7 i32.sub local.get $9 i32.sub @@ -10643,77 +10636,54 @@ i64.shr_u i64.add local.set $4 - local.get $5 - i64.const 32 - i64.shr_u - local.tee $11 - local.set $5 global.get $~lib/util/number/_frc_plus - local.tee $12 + local.tee $11 i64.const 4294967295 i64.and - local.set $13 - local.get $12 + local.set $12 + local.get $11 i64.const 32 i64.shr_u - local.tee $12 + local.tee $11 local.get $10 i64.mul local.get $10 - local.get $13 - i64.mul - i64.const 32 - i64.shr_u - i64.add - local.set $14 - local.get $11 local.get $12 i64.mul - local.get $14 i64.const 32 i64.shr_u i64.add - local.get $11 - local.get $13 - i64.mul - local.get $14 - i64.const 4294967295 - i64.and - i64.add - i64.const 2147483647 - i64.add - i64.const 32 - i64.shr_u - i64.add - i64.const 1 - i64.sub - local.set $12 + local.set $13 global.get $~lib/util/number/_frc_minus - local.tee $13 + local.tee $14 i64.const 4294967295 i64.and - local.set $14 - local.get $13 + local.set $15 + local.get $14 i64.const 32 i64.shr_u - local.tee $13 + local.tee $14 local.get $10 i64.mul local.get $10 - local.get $14 + local.get $15 i64.mul i64.const 32 i64.shr_u i64.add - local.set $10 + local.set $16 local.get $3 i32.const 1 i32.shl local.get $0 i32.add local.get $0 - local.get $5 local.get $6 + local.get $5 + i64.const 32 + i64.shr_u + local.tee $10 + local.tee $5 i64.mul local.get $4 i64.const 32 @@ -10731,24 +10701,45 @@ i64.const 32 i64.shr_u i64.add + local.get $10 + local.get $11 + i64.mul + local.get $13 + i64.const 32 + i64.shr_u + i64.add + local.get $10 local.get $12 + i64.mul + local.get $13 + i64.const 4294967295 + i64.and + i64.add + i64.const 2147483647 + i64.add + i64.const 32 + i64.shr_u + i64.add + i64.const 1 + i64.sub + local.tee $2 global.get $~lib/util/number/_exp_pow local.get $7 i32.add i32.const -64 i32.sub - local.get $12 - local.get $11 - local.get $13 - i64.mul + local.get $2 local.get $10 + local.get $14 + i64.mul + local.get $16 i64.const 32 i64.shr_u i64.add - local.get $11 - local.get $14 - i64.mul local.get $10 + local.get $15 + i64.mul + local.get $16 i64.const 4294967295 i64.and i64.add @@ -13382,33 +13373,32 @@ local.tee $4 select i32.store8 - local.get $1 - local.get $3 - local.get $4 - select - local.set $1 local.get $0 i32.load8_u offset=2 - local.set $3 + local.set $5 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $3 - local.get $1 + local.get $5 local.get $1 local.get $3 + local.get $4 + select + local.tee $1 + local.get $1 + local.get $5 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $4 + local.tee $3 select i32.store8 offset=1 local.get $0 local.get $1 + local.get $5 local.get $3 - local.get $4 select i32.store8 offset=2 end diff --git a/tests/compiler/std/arraybuffer.optimized.wat b/tests/compiler/std/arraybuffer.optimized.wat index 7e026fd361..f25b5ce0c7 100644 --- a/tests/compiler/std/arraybuffer.optimized.wat +++ b/tests/compiler/std/arraybuffer.optimized.wat @@ -261,11 +261,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -277,21 +276,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1020,7 +1017,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 18228 i32.ge_u if @@ -1030,20 +1027,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1056,13 +1053,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end @@ -2145,26 +2142,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -2178,74 +2160,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -2265,51 +2261,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 diff --git a/tests/compiler/std/dataview.optimized.wat b/tests/compiler/std/dataview.optimized.wat index 9dfa64182e..f9ae16495f 100644 --- a/tests/compiler/std/dataview.optimized.wat +++ b/tests/compiler/std/dataview.optimized.wat @@ -267,11 +267,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -283,21 +282,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1026,7 +1023,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 18172 i32.ge_u if @@ -1036,20 +1033,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1062,13 +1059,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/std/date.optimized.wat b/tests/compiler/std/date.optimized.wat index b29b061d0f..c135ae287d 100644 --- a/tests/compiler/std/date.optimized.wat +++ b/tests/compiler/std/date.optimized.wat @@ -628,11 +628,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -644,21 +643,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1387,7 +1384,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 23948 i32.ge_u if @@ -1397,20 +1394,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1423,13 +1420,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end @@ -3143,26 +3140,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -3176,74 +3158,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -3263,51 +3259,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -4013,13 +4008,13 @@ i32.or i32.const 160 i32.eq - local.get $1 + local.get $3 i32.const 9 i32.sub i32.const 4 i32.le_u i32.or - local.get $1 + local.get $3 i32.const 5760 i32.lt_u br_if $__inlined_func$~lib/util/string/isSpace @@ -4793,7 +4788,6 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 44 i32.sub @@ -4842,55 +4836,55 @@ i32.const 48 i32.const 4 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $4 i32.const 4992 i32.const 48 call $~lib/memory/memory.copy - local.get $6 + local.get $4 i32.store offset=4 local.get $0 i32.load local.tee $5 local.get $0 i32.load offset=4 - local.tee $8 + local.tee $2 i32.const 3 i32.lt_s i32.sub - local.tee $3 + local.tee $6 i32.const 0 i32.ge_s - local.set $2 + local.set $7 local.get $0 i32.load offset=8 - local.tee $7 - local.get $8 + local.tee $3 + local.get $2 i32.const 1579 i32.add i32.load8_u - local.get $3 - local.get $3 - local.get $3 + local.get $6 + local.get $6 + local.get $6 i32.const 3 i32.sub - local.get $2 + local.get $7 select i32.const 4 i32.div_s - local.get $3 - local.get $3 + local.get $6 + local.get $6 i32.const 99 i32.sub - local.get $2 + local.get $7 select i32.const 100 i32.div_s i32.sub - local.get $3 - local.get $3 + local.get $6 + local.get $6 i32.const 399 i32.sub - local.get $2 + local.get $7 select i32.const 400 i32.div_s @@ -4908,25 +4902,25 @@ i32.lt_s select i32.add - local.set $4 + local.set $6 global.get $~lib/memory/__stack_pointer local.get $5 local.get $5 i32.const 31 i32.shr_s - local.tee $0 + local.tee $7 i32.add - local.get $0 + local.get $7 i32.xor call $~lib/number/I32#toString - local.set $0 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $7 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 1872 i32.store offset=12 - local.get $0 + local.get $7 i32.const 4 call $~lib/string/String#padStart local.tee $0 @@ -4936,10 +4930,10 @@ i32.lt_s if global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $5 i32.const 1616 i32.store offset=8 - local.get $2 + local.get $5 i32.const 1616 local.get $0 call $~lib/string/String.__concat @@ -4947,51 +4941,51 @@ i32.store offset=16 end global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $4 + local.tee $5 + local.get $6 i32.const 2 i32.shl local.get $1 i32.add i32.load - local.tee $2 + local.tee $1 i32.store offset=32 - local.get $3 - local.get $8 + local.get $5 + local.get $2 i32.const 1 i32.sub i32.const 2 i32.shl - local.get $6 + local.get $4 i32.add i32.load - local.tee $1 + local.tee $2 i32.store offset=36 - local.get $2 local.get $1 + local.get $2 call $~lib/string/String.__concat - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=24 - local.get $7 + local.get $3 call $~lib/number/I32#toString - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=32 global.get $~lib/memory/__stack_pointer i32.const 1872 i32.store offset=40 - local.get $1 + local.get $2 i32.const 2 call $~lib/string/String#padStart - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=28 local.get $2 + i32.store offset=28 local.get $1 + local.get $2 call $~lib/string/String.__concat local.set $1 global.get $~lib/memory/__stack_pointer diff --git a/tests/compiler/std/map.optimized.wat b/tests/compiler/std/map.optimized.wat index d944f4fba6..6019b6a0ed 100644 --- a/tests/compiler/std/map.optimized.wat +++ b/tests/compiler/std/map.optimized.wat @@ -275,11 +275,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -291,21 +290,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1034,7 +1031,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 18404 i32.ge_u if @@ -1044,20 +1041,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1070,13 +1067,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end @@ -2410,26 +2407,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -2443,74 +2425,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -2530,51 +2526,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 diff --git a/tests/compiler/std/math.optimized.wat b/tests/compiler/std/math.optimized.wat index 2a3db3be81..2288c4f123 100644 --- a/tests/compiler/std/math.optimized.wat +++ b/tests/compiler/std/math.optimized.wat @@ -5546,17 +5546,17 @@ ) (func $std/math/test_exp2 (param $0 f64) (param $1 f64) (param $2 f64) (result i32) (local $3 i32) - (local $4 f64) - (local $5 i64) - (local $6 f64) - (local $7 i32) - (local $8 f64) - (local $9 i64) + (local $4 i64) + (local $5 f64) + (local $6 i32) + (local $7 f64) + (local $8 i64) + (local $9 f64) (local $10 f64) block $~lib/util/math/exp2_lut|inlined.0 (result f64) local.get $0 i64.reinterpret_f64 - local.tee $5 + local.tee $4 i64.const 52 i64.shr_u i64.const 2047 @@ -5581,7 +5581,7 @@ i32.ge_u if f64.const 0 - local.get $5 + local.get $4 i64.const -4503599627370496 i64.eq br_if $~lib/util/math/exp2_lut|inlined.0 @@ -5595,14 +5595,14 @@ br_if $~lib/util/math/exp2_lut|inlined.0 drop f64.const inf - local.get $5 + local.get $4 i64.const 63 i64.shr_u i64.eqz br_if $~lib/util/math/exp2_lut|inlined.0 drop f64.const 0 - local.get $5 + local.get $4 i64.const -4570929321408987136 i64.ge_u br_if $~lib/util/math/exp2_lut|inlined.0 @@ -5610,7 +5610,7 @@ end i32.const 0 local.get $3 - local.get $5 + local.get $4 i64.const 1 i64.shl i64.const -9143996093422370816 @@ -5621,9 +5621,9 @@ local.get $0 f64.const 52776558133248 f64.add - local.tee $4 - i64.reinterpret_f64 local.tee $5 + i64.reinterpret_f64 + local.tee $4 i64.const 127 i64.and i64.const 1 @@ -5633,96 +5633,96 @@ i32.shl i32.const 5664 i32.add - local.tee $7 + local.tee $6 i64.load offset=8 - local.get $5 + local.get $4 i64.const 45 i64.shl i64.add - local.set $9 + local.set $8 local.get $0 - local.get $4 + local.get $5 f64.const 52776558133248 f64.sub f64.sub - local.tee $4 - local.get $4 + local.tee $5 + local.get $5 f64.mul - local.set $6 - local.get $7 + local.set $7 + local.get $6 f64.load - local.get $4 + local.get $5 f64.const 0.6931471805599453 f64.mul f64.add - local.get $6 - local.get $4 + local.get $7 + local.get $5 f64.const 0.0555041086686087 f64.mul f64.const 0.24022650695909065 f64.add f64.mul f64.add - local.get $6 - local.get $6 + local.get $7 + local.get $7 f64.mul - local.get $4 + local.get $5 f64.const 1.3332074570119598e-03 f64.mul f64.const 0.009618131975721055 f64.add f64.mul f64.add - local.set $10 + local.set $9 local.get $3 i32.eqz if block $~lib/util/math/specialcase2|inlined.0 (result f64) - local.get $5 + local.get $4 i64.const 2147483648 i64.and i64.eqz if - local.get $9 + local.get $8 i64.const 4503599627370496 i64.sub f64.reinterpret_i64 - local.tee $4 - local.get $10 + local.tee $5 + local.get $9 f64.mul - local.get $4 + local.get $5 f64.add f64.const 2 f64.mul br $~lib/util/math/specialcase2|inlined.0 end - local.get $9 + local.get $8 i64.const 4602678819172646912 i64.add f64.reinterpret_i64 - local.tee $6 - local.get $10 + local.tee $5 + local.get $9 f64.mul - local.get $6 + local.get $5 f64.add - local.tee $4 + local.tee $10 f64.const 1 f64.lt if (result f64) - local.get $4 + local.get $10 f64.const 1 f64.add - local.tee $8 + local.tee $7 f64.const 1 - local.get $8 + local.get $7 f64.sub - local.get $4 + local.get $10 f64.add - local.get $6 - local.get $4 - f64.sub - local.get $6 + local.get $5 local.get $10 + f64.sub + local.get $5 + local.get $9 f64.mul f64.add f64.add @@ -5730,19 +5730,19 @@ f64.const 1 f64.sub else - local.get $4 + local.get $10 end f64.const 2.2250738585072014e-308 f64.mul end br $~lib/util/math/exp2_lut|inlined.0 end - local.get $9 + local.get $8 f64.reinterpret_i64 - local.tee $4 - local.get $10 + local.tee $5 + local.get $9 f64.mul - local.get $4 + local.get $5 f64.add end local.get $1 @@ -6891,8 +6891,8 @@ (local $3 i64) (local $4 i64) (local $5 i64) - (local $6 f64) - (local $7 i64) + (local $6 i64) + (local $7 f64) (local $8 i64) (local $9 i64) block $__inlined_func$~lib/math/NativeMath.mod (result f64) @@ -6910,25 +6910,25 @@ drop local.get $1 i64.reinterpret_f64 - local.tee $7 + local.tee $5 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.set $5 - local.get $7 + local.set $8 + local.get $5 i64.const 1 i64.shl - local.tee $8 + local.tee $4 i64.eqz local.get $0 i64.reinterpret_f64 - local.tee $9 + local.tee $3 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.tee $4 + local.tee $9 i64.const 2047 i64.eq i32.or @@ -6940,90 +6940,90 @@ local.get $0 local.get $1 f64.mul - local.tee $6 - local.get $6 + local.tee $7 + local.get $7 f64.div br $__inlined_func$~lib/math/NativeMath.mod end - local.get $8 - local.get $9 + local.get $4 + local.get $3 i64.const 1 i64.shl - local.tee $3 + local.tee $6 i64.ge_u if local.get $0 - local.get $3 - local.get $8 + local.get $4 + local.get $6 i64.ne f64.convert_i32_u f64.mul br $__inlined_func$~lib/math/NativeMath.mod end - local.get $9 + local.get $3 i64.const 63 i64.shr_u - local.set $8 - local.get $4 + local.set $6 + local.get $9 i64.eqz if (result i64) - local.get $9 + local.get $3 i64.const 1 - local.get $4 local.get $9 + local.get $3 i64.const 12 i64.shl i64.clz i64.sub - local.tee $4 + local.tee $9 i64.sub i64.shl else - local.get $9 + local.get $3 i64.const 4503599627370495 i64.and i64.const 4503599627370496 i64.or end local.set $3 - local.get $5 + local.get $8 i64.eqz if (result i64) - local.get $7 + local.get $5 i64.const 1 + local.get $8 local.get $5 - local.get $7 i64.const 12 i64.shl i64.clz i64.sub - local.tee $5 + local.tee $8 i64.sub i64.shl else - local.get $7 + local.get $5 i64.const 4503599627370495 i64.and i64.const 4503599627370496 i64.or end - local.set $7 + local.set $4 block $folding-inner0 loop $while-continue|0 - local.get $4 - local.get $5 - i64.gt_s + local.get $8 + local.get $9 + i64.lt_s if local.get $3 - local.get $7 + local.get $4 i64.ge_u if (result i64) local.get $3 - local.get $7 + local.get $4 i64.eq br_if $folding-inner0 local.get $3 - local.get $7 + local.get $4 i64.sub else local.get $3 @@ -7031,24 +7031,24 @@ i64.const 1 i64.shl local.set $3 - local.get $4 + local.get $9 i64.const 1 i64.sub - local.set $4 + local.set $9 br $while-continue|0 end end - local.get $4 + local.get $9 local.get $3 - local.get $7 + local.get $4 i64.ge_u if local.get $3 - local.get $7 + local.get $4 i64.eq br_if $folding-inner0 local.get $3 - local.get $7 + local.get $4 i64.sub local.set $3 end @@ -7056,32 +7056,32 @@ i64.const 11 i64.shl i64.clz - local.tee $4 + local.tee $5 i64.sub - local.set $5 + local.set $4 local.get $3 - local.get $4 + local.get $5 i64.shl local.set $3 - local.get $5 + local.get $4 i64.const 0 i64.gt_s if (result i64) local.get $3 i64.const 4503599627370496 i64.sub - local.get $5 + local.get $4 i64.const 52 i64.shl i64.or else local.get $3 i64.const 1 - local.get $5 + local.get $4 i64.sub i64.shr_u end - local.get $8 + local.get $6 i64.const 63 i64.shl i64.or @@ -11210,14 +11210,12 @@ return end local.get $0 - local.tee $1 + local.get $0 local.get $0 f64.mul - local.tee $0 - local.set $2 - local.get $1 - local.get $2 - local.get $1 + local.tee $1 + local.tee $2 + local.get $0 f64.mul local.get $2 local.get $2 @@ -11248,7 +11246,7 @@ f64.add global.set $~lib/math/NativeMath.sincos_sin f64.const 1 - local.get $0 + local.get $1 f64.const 0.5 f64.mul local.tee $2 @@ -11259,10 +11257,10 @@ f64.sub local.get $2 f64.sub - local.get $0 - local.get $0 - local.get $0 - local.get $0 + local.get $1 + local.get $1 + local.get $1 + local.get $1 f64.const 2.480158728947673e-05 f64.mul f64.const -0.001388888888887411 @@ -11271,14 +11269,14 @@ f64.const 0.0416666666666666 f64.add f64.mul - local.get $0 - local.get $0 + local.get $1 + local.get $1 f64.mul local.tee $2 local.get $2 f64.mul - local.get $0 - local.get $0 + local.get $1 + local.get $1 f64.const -1.1359647557788195e-11 f64.mul f64.const 2.087572321298175e-09 @@ -11289,7 +11287,7 @@ f64.mul f64.add f64.mul - local.get $1 + local.get $0 f64.const 0 f64.mul f64.sub diff --git a/tests/compiler/std/mod.optimized.wat b/tests/compiler/std/mod.optimized.wat index 3846b15198..f662c12cf2 100644 --- a/tests/compiler/std/mod.optimized.wat +++ b/tests/compiler/std/mod.optimized.wat @@ -298,31 +298,31 @@ drop local.get $1 i32.reinterpret_f32 - local.tee $6 + local.tee $5 i32.const 23 i32.shr_u i32.const 255 i32.and - local.set $5 + local.set $7 i32.const 1 local.get $1 local.get $1 f32.ne local.get $0 i32.reinterpret_f32 - local.tee $7 + local.tee $4 i32.const 23 i32.shr_u i32.const 255 i32.and - local.tee $4 + local.tee $8 i32.const 255 i32.eq i32.const 1 - local.get $6 + local.get $5 i32.const 1 i32.shl - local.tee $8 + local.tee $3 select select if @@ -334,83 +334,83 @@ f32.div br $__inlined_func$~lib/math/NativeMathf.mod end - local.get $8 - local.get $7 + local.get $3 + local.get $4 i32.const 1 i32.shl - local.tee $3 + local.tee $6 i32.ge_u if local.get $0 local.get $3 - local.get $8 + local.get $6 i32.ne f32.convert_i32_u f32.mul br $__inlined_func$~lib/math/NativeMathf.mod end - local.get $7 + local.get $4 i32.const -2147483648 i32.and - local.set $8 - local.get $4 + local.set $6 + local.get $8 if (result i32) - local.get $7 + local.get $4 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $7 + local.get $4 i32.const 1 + local.get $8 local.get $4 - local.get $7 i32.const 9 i32.shl i32.clz i32.sub - local.tee $4 + local.tee $8 i32.sub i32.shl end local.set $3 - local.get $5 + local.get $7 if (result i32) - local.get $6 + local.get $5 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $6 + local.get $5 i32.const 1 + local.get $7 local.get $5 - local.get $6 i32.const 9 i32.shl i32.clz i32.sub - local.tee $5 + local.tee $7 i32.sub i32.shl end - local.set $6 + local.set $4 block $folding-inner0 loop $while-continue|0 - local.get $4 - local.get $5 - i32.gt_s + local.get $7 + local.get $8 + i32.lt_s if local.get $3 - local.get $6 + local.get $4 i32.ge_u if (result i32) local.get $3 - local.get $6 + local.get $4 i32.eq br_if $folding-inner0 local.get $3 - local.get $6 + local.get $4 i32.sub else local.get $3 @@ -418,24 +418,24 @@ i32.const 1 i32.shl local.set $3 - local.get $4 + local.get $8 i32.const 1 i32.sub - local.set $4 + local.set $8 br $while-continue|0 end end - local.get $4 + local.get $8 local.get $3 - local.get $6 + local.get $4 i32.ge_u if local.get $3 - local.get $6 + local.get $4 i32.eq br_if $folding-inner0 local.get $3 - local.get $6 + local.get $4 i32.sub local.set $3 end @@ -443,32 +443,32 @@ i32.const 8 i32.shl i32.clz - local.tee $4 + local.tee $5 i32.sub - local.set $5 + local.set $4 local.get $3 - local.get $4 + local.get $5 i32.shl local.set $3 - local.get $5 + local.get $4 i32.const 0 i32.gt_s if (result i32) local.get $3 i32.const 8388608 i32.sub - local.get $5 + local.get $4 i32.const 23 i32.shl i32.or else local.get $3 i32.const 1 - local.get $5 + local.get $4 i32.sub i32.shr_u end - local.get $8 + local.get $6 i32.or f32.reinterpret_i32 br $__inlined_func$~lib/math/NativeMathf.mod diff --git a/tests/compiler/std/new.optimized.wat b/tests/compiler/std/new.optimized.wat index aaa56faf34..297fe51ea9 100644 --- a/tests/compiler/std/new.optimized.wat +++ b/tests/compiler/std/new.optimized.wat @@ -124,11 +124,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -140,21 +139,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -883,7 +880,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17860 i32.ge_u if @@ -893,20 +890,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -919,13 +916,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/std/operator-overloading.optimized.wat b/tests/compiler/std/operator-overloading.optimized.wat index 6c622c3e0d..35224274cd 100644 --- a/tests/compiler/std/operator-overloading.optimized.wat +++ b/tests/compiler/std/operator-overloading.optimized.wat @@ -180,11 +180,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -196,21 +195,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -939,7 +936,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17956 i32.ge_u if @@ -949,20 +946,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -975,13 +972,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/std/pointer.optimized.wat b/tests/compiler/std/pointer.optimized.wat index ef929aeb77..816f97a8c3 100644 --- a/tests/compiler/std/pointer.optimized.wat +++ b/tests/compiler/std/pointer.optimized.wat @@ -464,22 +464,22 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $1 i32.load8_u i32.store8 - local.get $2 - local.get $3 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 + local.get $0 i32.const 2 i32.add local.tee $0 - local.get $3 + local.get $1 i32.const 2 i32.add local.tee $1 @@ -492,22 +492,22 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $1 i32.load8_u i32.store8 - local.get $2 - local.get $3 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 + local.get $0 i32.const 2 i32.add local.tee $0 - local.get $3 + local.get $1 i32.const 2 i32.add local.tee $1 @@ -520,22 +520,22 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $1 i32.load8_u i32.store8 - local.get $2 - local.get $3 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 + local.get $0 i32.const 2 i32.add local.tee $0 - local.get $3 + local.get $1 i32.const 2 i32.add local.tee $1 @@ -548,22 +548,22 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $2 i32.load8_u i32.store8 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $1 + local.get $0 local.get $2 - local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 + local.get $0 i32.const 2 i32.add local.set $0 @@ -583,22 +583,22 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $1 i32.load8_u i32.store8 - local.get $2 - local.get $3 + local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 + local.get $0 i32.const 2 i32.add local.tee $0 - local.get $3 + local.get $1 i32.const 2 i32.add local.tee $1 @@ -611,22 +611,22 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $2 i32.load8_u i32.store8 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $1 + local.get $0 local.get $2 - local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 + local.get $0 i32.const 2 i32.add local.set $0 @@ -646,22 +646,22 @@ local.get $0 i32.const 2 i32.add - local.tee $2 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $3 + local.tee $2 i32.load8_u i32.store8 - local.get $3 + local.get $2 i32.const 2 i32.add local.set $1 + local.get $0 local.get $2 - local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $2 + local.get $0 i32.const 2 i32.add local.set $0 diff --git a/tests/compiler/std/set.optimized.wat b/tests/compiler/std/set.optimized.wat index 6e0bb88009..ee6f098ffc 100644 --- a/tests/compiler/std/set.optimized.wat +++ b/tests/compiler/std/set.optimized.wat @@ -268,11 +268,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -284,21 +283,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1027,7 +1024,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 18220 i32.ge_u if @@ -1037,20 +1034,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1063,13 +1060,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end @@ -2463,26 +2460,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -2496,74 +2478,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -2583,51 +2579,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 diff --git a/tests/compiler/std/static-array.optimized.wat b/tests/compiler/std/static-array.optimized.wat index ee37c135f1..57f359ec70 100644 --- a/tests/compiler/std/static-array.optimized.wat +++ b/tests/compiler/std/static-array.optimized.wat @@ -306,11 +306,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -322,21 +321,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1065,7 +1062,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 18396 i32.ge_u if @@ -1075,20 +1072,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1101,13 +1098,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end @@ -1881,26 +1878,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -1914,74 +1896,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -2001,51 +1997,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 diff --git a/tests/compiler/std/staticarray.optimized.wat b/tests/compiler/std/staticarray.optimized.wat index 234a2b2b10..b76a6a8cd0 100644 --- a/tests/compiler/std/staticarray.optimized.wat +++ b/tests/compiler/std/staticarray.optimized.wat @@ -447,11 +447,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -463,21 +462,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -2345,26 +2342,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -2378,74 +2360,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -2465,51 +2461,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -3770,33 +3765,32 @@ local.tee $4 select i32.store - local.get $1 - local.get $3 - local.get $4 - select - local.set $1 local.get $0 i32.load offset=8 - local.set $3 + local.set $5 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $3 - local.get $1 + local.get $5 local.get $1 local.get $3 + local.get $4 + select + local.tee $1 + local.get $1 + local.get $5 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $4 + local.tee $3 select i32.store offset=4 local.get $0 local.get $1 + local.get $5 local.get $3 - local.get $4 select i32.store offset=8 end diff --git a/tests/compiler/std/string-casemapping.optimized.wat b/tests/compiler/std/string-casemapping.optimized.wat index ab7ce90c22..d3818b0aa9 100644 --- a/tests/compiler/std/string-casemapping.optimized.wat +++ b/tests/compiler/std/string-casemapping.optimized.wat @@ -569,11 +569,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -585,21 +584,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1328,7 +1325,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 37476 i32.ge_u if @@ -1338,20 +1335,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1364,13 +1361,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end @@ -2612,26 +2609,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -2645,74 +2627,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -2732,51 +2728,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 diff --git a/tests/compiler/std/string-encoding.optimized.wat b/tests/compiler/std/string-encoding.optimized.wat index 9c19b57703..2b55af46e0 100644 --- a/tests/compiler/std/string-encoding.optimized.wat +++ b/tests/compiler/std/string-encoding.optimized.wat @@ -154,11 +154,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -170,21 +169,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -913,7 +910,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 38924 i32.ge_u if @@ -923,20 +920,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -949,13 +946,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end @@ -2034,26 +2031,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -2067,74 +2049,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -2154,51 +2150,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 diff --git a/tests/compiler/std/string.optimized.wat b/tests/compiler/std/string.optimized.wat index 28038d45f7..c574cefe79 100644 --- a/tests/compiler/std/string.optimized.wat +++ b/tests/compiler/std/string.optimized.wat @@ -1297,11 +1297,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -1313,21 +1312,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -2056,7 +2053,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 42268 i32.ge_u if @@ -2066,20 +2063,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -2092,13 +2089,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end @@ -3240,26 +3237,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -3273,74 +3255,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -3360,51 +3356,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 diff --git a/tests/compiler/std/symbol.optimized.wat b/tests/compiler/std/symbol.optimized.wat index e7d9d9237e..0facb01057 100644 --- a/tests/compiler/std/symbol.optimized.wat +++ b/tests/compiler/std/symbol.optimized.wat @@ -370,11 +370,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -386,21 +385,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1129,7 +1126,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 19084 i32.ge_u if @@ -1139,20 +1136,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1165,13 +1162,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end @@ -2644,26 +2641,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -2677,74 +2659,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -2764,51 +2760,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 diff --git a/tests/compiler/std/typedarray.optimized.wat b/tests/compiler/std/typedarray.optimized.wat index dea1eb9b98..9b5dbe18b0 100644 --- a/tests/compiler/std/typedarray.optimized.wat +++ b/tests/compiler/std/typedarray.optimized.wat @@ -912,11 +912,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -928,21 +927,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -3420,11 +3417,12 @@ (local $8 i32) (local $9 f64) (local $10 f64) - (local $11 i64) - (local $12 i32) + (local $11 f64) + (local $12 i64) (local $13 i32) (local $14 i32) (local $15 i32) + (local $16 i32) local.get $1 i32.const 48 i32.le_s @@ -3449,17 +3447,17 @@ end local.get $0 f64.load - local.set $10 + local.set $11 local.get $0 f64.load offset=8 - local.set $9 + local.set $10 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $9 local.get $10 + local.get $11 + local.get $11 local.get $10 - local.get $9 local.get $2 i32.load call_indirect $0 (type $f64_f64_=>_i32) @@ -3468,11 +3466,6 @@ local.tee $1 select f64.store - local.get $10 - local.get $9 - local.get $1 - select - local.set $10 local.get $0 f64.load offset=16 local.set $9 @@ -3480,7 +3473,11 @@ global.set $~argumentsLength local.get $0 local.get $9 + local.get $11 local.get $10 + local.get $1 + select + local.tee $10 local.get $10 local.get $9 local.get $2 @@ -3548,10 +3545,10 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $14 + local.tee $15 local.get $5 i32.add - local.set $13 + local.set $14 i32.const 0 local.set $7 loop $for-loop|1 @@ -3562,7 +3559,7 @@ local.get $7 i32.const 2 i32.shl - local.get $14 + local.get $15 i32.add i32.const -1 i32.store @@ -3577,13 +3574,13 @@ i32.const 3 i32.shl call $~lib/rt/tlsf/__alloc - local.set $12 + local.set $13 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $15 + local.tee $16 local.get $2 call $~lib/util/sort/extendRunRight local.tee $6 @@ -3595,9 +3592,9 @@ if local.get $0 i32.const 0 - local.get $15 + local.get $16 i32.const 31 - local.get $15 + local.get $16 i32.const 31 i32.lt_s select @@ -3608,7 +3605,7 @@ end loop $while-continue|2 local.get $6 - local.get $15 + local.get $16 i32.lt_s if local.get $0 @@ -3616,7 +3613,7 @@ i32.const 1 i32.add local.tee $5 - local.get $15 + local.get $16 local.get $2 call $~lib/util/sort/extendRunRight local.tee $7 @@ -3630,13 +3627,13 @@ if local.get $0 local.get $5 - local.get $15 + local.get $16 local.get $5 i32.const 31 i32.add local.tee $1 local.get $1 - local.get $15 + local.get $16 i32.gt_s select local.tee $7 @@ -3650,11 +3647,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $15 + local.get $16 i32.const 1 i32.add i64.extend_i32_u - local.tee $11 + local.tee $12 i64.div_u local.get $5 local.get $7 @@ -3664,7 +3661,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $11 + local.get $12 i64.div_u i64.xor i32.wrap_i64 @@ -3678,7 +3675,7 @@ local.get $4 i32.const 2 i32.shl - local.get $14 + local.get $15 i32.add i32.load local.tee $8 @@ -3687,7 +3684,7 @@ if local.get $0 local.get $8 - local.get $13 + local.get $14 local.get $4 i32.const 2 i32.shl @@ -3697,11 +3694,11 @@ i32.const 1 i32.add local.get $6 - local.get $12 + local.get $13 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $14 + local.get $15 i32.add i32.const -1 i32.store @@ -3715,7 +3712,7 @@ br $for-loop|3 end end - local.get $14 + local.get $15 local.get $1 i32.const 2 i32.shl @@ -3724,7 +3721,7 @@ local.get $3 i32.store local.get $4 - local.get $13 + local.get $14 i32.add local.get $6 i32.store @@ -3743,7 +3740,7 @@ local.get $4 i32.const 2 i32.shl - local.get $14 + local.get $15 i32.add i32.load local.tee $1 @@ -3755,13 +3752,13 @@ local.get $4 i32.const 2 i32.shl - local.get $13 + local.get $14 i32.add i32.load i32.const 1 i32.add - local.get $15 - local.get $12 + local.get $16 + local.get $13 local.get $2 call $~lib/util/sort/mergeRuns end @@ -3772,9 +3769,9 @@ br $for-loop|4 end end - local.get $12 + local.get $13 call $~lib/rt/tlsf/__free - local.get $14 + local.get $15 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 f64) (param $1 f64) (result i32) @@ -4411,26 +4408,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -4444,74 +4426,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -4531,51 +4527,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -27459,6 +27454,8 @@ (local $12 i64) (local $13 i64) (local $14 i64) + (local $15 i64) + (local $16 i64) local.get $1 f64.const 0 f64.lt @@ -27479,7 +27476,15 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.set $7 + local.tee $7 + i32.const 1 + local.get $7 + select + i32.const 1075 + i32.sub + local.tee $8 + i32.const 1 + i32.sub local.get $2 i64.const 4503599627370495 i64.and @@ -27490,17 +27495,7 @@ i64.const 52 i64.shl i64.add - local.set $2 - local.get $7 - i32.const 1 - local.get $7 - select - i32.const 1075 - i32.sub - local.tee $7 - i32.const 1 - i32.sub - local.get $2 + local.tee $2 i64.const 1 i64.shl i64.const 1 @@ -27508,11 +27503,11 @@ local.tee $4 i64.clz i32.wrap_i64 - local.tee $8 + local.tee $7 i32.sub local.set $9 local.get $4 - local.get $8 + local.get $7 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -27522,13 +27517,13 @@ i64.eq i32.const 1 i32.add - local.tee $8 + local.tee $7 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $7 local.get $8 + local.get $7 i32.sub local.get $9 i32.sub @@ -27603,77 +27598,54 @@ i64.shr_u i64.add local.set $4 - local.get $5 - i64.const 32 - i64.shr_u - local.tee $11 - local.set $5 global.get $~lib/util/number/_frc_plus - local.tee $12 + local.tee $11 i64.const 4294967295 i64.and - local.set $13 - local.get $12 + local.set $12 + local.get $11 i64.const 32 i64.shr_u - local.tee $12 + local.tee $11 local.get $10 i64.mul local.get $10 - local.get $13 - i64.mul - i64.const 32 - i64.shr_u - i64.add - local.set $14 - local.get $11 local.get $12 i64.mul - local.get $14 i64.const 32 i64.shr_u i64.add - local.get $11 - local.get $13 - i64.mul - local.get $14 - i64.const 4294967295 - i64.and - i64.add - i64.const 2147483647 - i64.add - i64.const 32 - i64.shr_u - i64.add - i64.const 1 - i64.sub - local.set $12 + local.set $13 global.get $~lib/util/number/_frc_minus - local.tee $13 + local.tee $14 i64.const 4294967295 i64.and - local.set $14 - local.get $13 + local.set $15 + local.get $14 i64.const 32 i64.shr_u - local.tee $13 + local.tee $14 local.get $10 i64.mul local.get $10 - local.get $14 + local.get $15 i64.mul i64.const 32 i64.shr_u i64.add - local.set $10 + local.set $16 local.get $3 i32.const 1 i32.shl local.get $0 i32.add local.get $0 - local.get $5 local.get $6 + local.get $5 + i64.const 32 + i64.shr_u + local.tee $10 + local.tee $5 i64.mul local.get $4 i64.const 32 @@ -27691,24 +27663,45 @@ i64.const 32 i64.shr_u i64.add + local.get $10 + local.get $11 + i64.mul + local.get $13 + i64.const 32 + i64.shr_u + i64.add + local.get $10 local.get $12 + i64.mul + local.get $13 + i64.const 4294967295 + i64.and + i64.add + i64.const 2147483647 + i64.add + i64.const 32 + i64.shr_u + i64.add + i64.const 1 + i64.sub + local.tee $2 global.get $~lib/util/number/_exp_pow local.get $7 i32.add i32.const -64 i32.sub - local.get $12 - local.get $11 - local.get $13 - i64.mul + local.get $2 local.get $10 + local.get $14 + i64.mul + local.get $16 i64.const 32 i64.shr_u i64.add - local.get $11 - local.get $14 - i64.mul local.get $10 + local.get $15 + i64.mul + local.get $16 i64.const 4294967295 i64.and i64.add @@ -29820,33 +29813,32 @@ local.tee $4 select i32.store8 - local.get $1 - local.get $3 - local.get $4 - select - local.set $1 local.get $0 i32.load8_s offset=2 - local.set $3 + local.set $5 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $3 - local.get $1 + local.get $5 local.get $1 local.get $3 + local.get $4 + select + local.tee $1 + local.get $1 + local.get $5 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $4 + local.tee $3 select i32.store8 offset=1 local.get $0 local.get $1 + local.get $5 local.get $3 - local.get $4 select i32.store8 offset=2 end @@ -30584,33 +30576,32 @@ local.tee $4 select i32.store8 - local.get $1 - local.get $3 - local.get $4 - select - local.set $1 local.get $0 i32.load8_u offset=2 - local.set $3 + local.set $5 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $3 - local.get $1 + local.get $5 local.get $1 local.get $3 + local.get $4 + select + local.tee $1 + local.get $1 + local.get $5 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $4 + local.tee $3 select i32.store8 offset=1 local.get $0 local.get $1 + local.get $5 local.get $3 - local.get $4 select i32.store8 offset=2 end @@ -31399,33 +31390,32 @@ local.tee $4 select i32.store16 - local.get $1 - local.get $3 - local.get $4 - select - local.set $1 local.get $0 i32.load16_s offset=4 - local.set $3 + local.set $5 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $3 - local.get $1 + local.get $5 local.get $1 local.get $3 + local.get $4 + select + local.tee $1 + local.get $1 + local.get $5 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $4 + local.tee $3 select i32.store16 offset=2 local.get $0 local.get $1 + local.get $5 local.get $3 - local.get $4 select i32.store16 offset=4 end @@ -32206,33 +32196,32 @@ local.tee $4 select i32.store16 - local.get $1 - local.get $3 - local.get $4 - select - local.set $1 local.get $0 i32.load16_u offset=4 - local.set $3 + local.set $5 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $3 - local.get $1 + local.get $5 local.get $1 local.get $3 + local.get $4 + select + local.tee $1 + local.get $1 + local.get $5 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $4 + local.tee $3 select i32.store16 offset=2 local.get $0 local.get $1 + local.get $5 local.get $3 - local.get $4 select i32.store16 offset=4 end @@ -33023,33 +33012,32 @@ local.tee $4 select i32.store - local.get $1 - local.get $3 - local.get $4 - select - local.set $1 local.get $0 i32.load offset=8 - local.set $3 + local.set $5 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $3 - local.get $1 + local.get $5 local.get $1 local.get $3 + local.get $4 + select + local.tee $1 + local.get $1 + local.get $5 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $4 + local.tee $3 select i32.store offset=4 local.get $0 local.get $1 + local.get $5 local.get $3 - local.get $4 select i32.store offset=8 end @@ -33824,33 +33812,32 @@ local.tee $4 select i32.store - local.get $1 - local.get $3 - local.get $4 - select - local.set $1 local.get $0 i32.load offset=8 - local.set $3 + local.set $5 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $3 - local.get $1 + local.get $5 local.get $1 local.get $3 + local.get $4 + select + local.tee $1 + local.get $1 + local.get $5 local.get $2 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 i32.gt_s - local.tee $4 + local.tee $3 select i32.store offset=4 local.get $0 local.get $1 + local.get $5 local.get $3 - local.get $4 select i32.store offset=8 end @@ -34586,10 +34573,11 @@ (local $8 i32) (local $9 i64) (local $10 i64) - (local $11 i32) + (local $11 i64) (local $12 i32) (local $13 i32) (local $14 i32) + (local $15 i32) local.get $1 i32.const 48 i32.le_s @@ -34614,17 +34602,17 @@ end local.get $0 i64.load - local.set $10 + local.set $11 local.get $0 i64.load offset=8 - local.set $9 + local.set $10 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $9 local.get $10 + local.get $11 + local.get $11 local.get $10 - local.get $9 local.get $2 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -34633,11 +34621,6 @@ local.tee $1 select i64.store - local.get $10 - local.get $9 - local.get $1 - select - local.set $10 local.get $0 i64.load offset=16 local.set $9 @@ -34645,7 +34628,11 @@ global.set $~argumentsLength local.get $0 local.get $9 + local.get $11 local.get $10 + local.get $1 + select + local.tee $10 local.get $10 local.get $9 local.get $2 @@ -34713,10 +34700,10 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $13 + local.tee $14 local.get $5 i32.add - local.set $12 + local.set $13 i32.const 0 local.set $7 loop $for-loop|1 @@ -34727,7 +34714,7 @@ local.get $7 i32.const 2 i32.shl - local.get $13 + local.get $14 i32.add i32.const -1 i32.store @@ -34742,13 +34729,13 @@ i32.const 3 i32.shl call $~lib/rt/tlsf/__alloc - local.set $11 + local.set $12 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $14 + local.tee $15 local.get $2 call $~lib/util/sort/extendRunRight local.tee $6 @@ -34760,9 +34747,9 @@ if local.get $0 i32.const 0 - local.get $14 + local.get $15 i32.const 31 - local.get $14 + local.get $15 i32.const 31 i32.lt_s select @@ -34773,7 +34760,7 @@ end loop $while-continue|2 local.get $6 - local.get $14 + local.get $15 i32.lt_s if local.get $0 @@ -34781,7 +34768,7 @@ i32.const 1 i32.add local.tee $5 - local.get $14 + local.get $15 local.get $2 call $~lib/util/sort/extendRunRight local.tee $7 @@ -34795,13 +34782,13 @@ if local.get $0 local.get $5 - local.get $14 + local.get $15 local.get $5 i32.const 31 i32.add local.tee $1 local.get $1 - local.get $14 + local.get $15 i32.gt_s select local.tee $7 @@ -34815,7 +34802,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $14 + local.get $15 i32.const 1 i32.add i64.extend_i32_u @@ -34843,7 +34830,7 @@ local.get $4 i32.const 2 i32.shl - local.get $13 + local.get $14 i32.add i32.load local.tee $8 @@ -34852,7 +34839,7 @@ if local.get $0 local.get $8 - local.get $12 + local.get $13 local.get $4 i32.const 2 i32.shl @@ -34862,11 +34849,11 @@ i32.const 1 i32.add local.get $6 - local.get $11 + local.get $12 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $13 + local.get $14 i32.add i32.const -1 i32.store @@ -34880,7 +34867,7 @@ br $for-loop|3 end end - local.get $13 + local.get $14 local.get $1 i32.const 2 i32.shl @@ -34889,7 +34876,7 @@ local.get $3 i32.store local.get $4 - local.get $12 + local.get $13 i32.add local.get $6 i32.store @@ -34908,7 +34895,7 @@ local.get $4 i32.const 2 i32.shl - local.get $13 + local.get $14 i32.add i32.load local.tee $1 @@ -34920,13 +34907,13 @@ local.get $4 i32.const 2 i32.shl - local.get $12 + local.get $13 i32.add i32.load i32.const 1 i32.add - local.get $14 - local.get $11 + local.get $15 + local.get $12 local.get $2 call $~lib/util/sort/mergeRuns end @@ -34937,9 +34924,9 @@ br $for-loop|4 end end - local.get $11 + local.get $12 call $~lib/rt/tlsf/__free - local.get $13 + local.get $14 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i64) (param $1 i64) (result i32) @@ -35395,10 +35382,11 @@ (local $8 i32) (local $9 i64) (local $10 i64) - (local $11 i32) + (local $11 i64) (local $12 i32) (local $13 i32) (local $14 i32) + (local $15 i32) local.get $1 i32.const 48 i32.le_s @@ -35423,17 +35411,17 @@ end local.get $0 i64.load - local.set $10 + local.set $11 local.get $0 i64.load offset=8 - local.set $9 + local.set $10 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $9 local.get $10 + local.get $11 + local.get $11 local.get $10 - local.get $9 local.get $2 i32.load call_indirect $0 (type $i64_i64_=>_i32) @@ -35442,11 +35430,6 @@ local.tee $1 select i64.store - local.get $10 - local.get $9 - local.get $1 - select - local.set $10 local.get $0 i64.load offset=16 local.set $9 @@ -35454,7 +35437,11 @@ global.set $~argumentsLength local.get $0 local.get $9 + local.get $11 local.get $10 + local.get $1 + select + local.tee $10 local.get $10 local.get $9 local.get $2 @@ -35522,10 +35509,10 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $13 + local.tee $14 local.get $5 i32.add - local.set $12 + local.set $13 i32.const 0 local.set $7 loop $for-loop|1 @@ -35536,7 +35523,7 @@ local.get $7 i32.const 2 i32.shl - local.get $13 + local.get $14 i32.add i32.const -1 i32.store @@ -35551,13 +35538,13 @@ i32.const 3 i32.shl call $~lib/rt/tlsf/__alloc - local.set $11 + local.set $12 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $14 + local.tee $15 local.get $2 call $~lib/util/sort/extendRunRight local.tee $6 @@ -35569,9 +35556,9 @@ if local.get $0 i32.const 0 - local.get $14 + local.get $15 i32.const 31 - local.get $14 + local.get $15 i32.const 31 i32.lt_s select @@ -35582,7 +35569,7 @@ end loop $while-continue|2 local.get $6 - local.get $14 + local.get $15 i32.lt_s if local.get $0 @@ -35590,7 +35577,7 @@ i32.const 1 i32.add local.tee $5 - local.get $14 + local.get $15 local.get $2 call $~lib/util/sort/extendRunRight local.tee $7 @@ -35604,13 +35591,13 @@ if local.get $0 local.get $5 - local.get $14 + local.get $15 local.get $5 i32.const 31 i32.add local.tee $1 local.get $1 - local.get $14 + local.get $15 i32.gt_s select local.tee $7 @@ -35624,7 +35611,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $14 + local.get $15 i32.const 1 i32.add i64.extend_i32_u @@ -35652,7 +35639,7 @@ local.get $4 i32.const 2 i32.shl - local.get $13 + local.get $14 i32.add i32.load local.tee $8 @@ -35661,7 +35648,7 @@ if local.get $0 local.get $8 - local.get $12 + local.get $13 local.get $4 i32.const 2 i32.shl @@ -35671,11 +35658,11 @@ i32.const 1 i32.add local.get $6 - local.get $11 + local.get $12 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $13 + local.get $14 i32.add i32.const -1 i32.store @@ -35689,7 +35676,7 @@ br $for-loop|3 end end - local.get $13 + local.get $14 local.get $1 i32.const 2 i32.shl @@ -35698,7 +35685,7 @@ local.get $3 i32.store local.get $4 - local.get $12 + local.get $13 i32.add local.get $6 i32.store @@ -35717,7 +35704,7 @@ local.get $4 i32.const 2 i32.shl - local.get $13 + local.get $14 i32.add i32.load local.tee $1 @@ -35729,13 +35716,13 @@ local.get $4 i32.const 2 i32.shl - local.get $12 + local.get $13 i32.add i32.load i32.const 1 i32.add - local.get $14 - local.get $11 + local.get $15 + local.get $12 local.get $2 call $~lib/util/sort/mergeRuns end @@ -35746,9 +35733,9 @@ br $for-loop|4 end end - local.get $11 + local.get $12 call $~lib/rt/tlsf/__free - local.get $13 + local.get $14 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i64) (param $1 i64) (result i32) @@ -36204,11 +36191,12 @@ (local $8 i32) (local $9 f32) (local $10 f32) - (local $11 i64) - (local $12 i32) + (local $11 f32) + (local $12 i64) (local $13 i32) (local $14 i32) (local $15 i32) + (local $16 i32) local.get $1 i32.const 48 i32.le_s @@ -36233,17 +36221,17 @@ end local.get $0 f32.load - local.set $10 + local.set $11 local.get $0 f32.load offset=4 - local.set $9 + local.set $10 i32.const 2 global.set $~argumentsLength local.get $0 - local.get $9 local.get $10 + local.get $11 + local.get $11 local.get $10 - local.get $9 local.get $2 i32.load call_indirect $0 (type $f32_f32_=>_i32) @@ -36252,11 +36240,6 @@ local.tee $1 select f32.store - local.get $10 - local.get $9 - local.get $1 - select - local.set $10 local.get $0 f32.load offset=8 local.set $9 @@ -36264,7 +36247,11 @@ global.set $~argumentsLength local.get $0 local.get $9 + local.get $11 local.get $10 + local.get $1 + select + local.tee $10 local.get $10 local.get $9 local.get $2 @@ -36332,10 +36319,10 @@ i32.const 1 i32.shl call $~lib/rt/tlsf/__alloc - local.tee $14 + local.tee $15 local.get $5 i32.add - local.set $13 + local.set $14 i32.const 0 local.set $7 loop $for-loop|1 @@ -36346,7 +36333,7 @@ local.get $7 i32.const 2 i32.shl - local.get $14 + local.get $15 i32.add i32.const -1 i32.store @@ -36361,13 +36348,13 @@ i32.const 2 i32.shl call $~lib/rt/tlsf/__alloc - local.set $12 + local.set $13 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $15 + local.tee $16 local.get $2 call $~lib/util/sort/extendRunRight local.tee $6 @@ -36379,9 +36366,9 @@ if local.get $0 i32.const 0 - local.get $15 + local.get $16 i32.const 31 - local.get $15 + local.get $16 i32.const 31 i32.lt_s select @@ -36392,7 +36379,7 @@ end loop $while-continue|2 local.get $6 - local.get $15 + local.get $16 i32.lt_s if local.get $0 @@ -36400,7 +36387,7 @@ i32.const 1 i32.add local.tee $5 - local.get $15 + local.get $16 local.get $2 call $~lib/util/sort/extendRunRight local.tee $7 @@ -36414,13 +36401,13 @@ if local.get $0 local.get $5 - local.get $15 + local.get $16 local.get $5 i32.const 31 i32.add local.tee $1 local.get $1 - local.get $15 + local.get $16 i32.gt_s select local.tee $7 @@ -36434,11 +36421,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $15 + local.get $16 i32.const 1 i32.add i64.extend_i32_u - local.tee $11 + local.tee $12 i64.div_u local.get $5 local.get $7 @@ -36448,7 +36435,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $11 + local.get $12 i64.div_u i64.xor i32.wrap_i64 @@ -36462,7 +36449,7 @@ local.get $4 i32.const 2 i32.shl - local.get $14 + local.get $15 i32.add i32.load local.tee $8 @@ -36471,7 +36458,7 @@ if local.get $0 local.get $8 - local.get $13 + local.get $14 local.get $4 i32.const 2 i32.shl @@ -36481,11 +36468,11 @@ i32.const 1 i32.add local.get $6 - local.get $12 + local.get $13 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $14 + local.get $15 i32.add i32.const -1 i32.store @@ -36499,7 +36486,7 @@ br $for-loop|3 end end - local.get $14 + local.get $15 local.get $1 i32.const 2 i32.shl @@ -36508,7 +36495,7 @@ local.get $3 i32.store local.get $4 - local.get $13 + local.get $14 i32.add local.get $6 i32.store @@ -36527,7 +36514,7 @@ local.get $4 i32.const 2 i32.shl - local.get $14 + local.get $15 i32.add i32.load local.tee $1 @@ -36539,13 +36526,13 @@ local.get $4 i32.const 2 i32.shl - local.get $13 + local.get $14 i32.add i32.load i32.const 1 i32.add - local.get $15 - local.get $12 + local.get $16 + local.get $13 local.get $2 call $~lib/util/sort/mergeRuns end @@ -36556,9 +36543,9 @@ br $for-loop|4 end end - local.get $12 + local.get $13 call $~lib/rt/tlsf/__free - local.get $14 + local.get $15 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 f32) (param $1 f32) (result i32) diff --git a/tests/compiler/std/uri.optimized.wat b/tests/compiler/std/uri.optimized.wat index 449878d3a8..24e8e0f47b 100644 --- a/tests/compiler/std/uri.optimized.wat +++ b/tests/compiler/std/uri.optimized.wat @@ -235,11 +235,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -251,21 +250,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -994,7 +991,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 20748 i32.ge_u if @@ -1004,20 +1001,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1030,13 +1027,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end @@ -2115,26 +2112,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -2148,74 +2130,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -2235,51 +2231,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 diff --git a/tests/compiler/super-inline.optimized.wat b/tests/compiler/super-inline.optimized.wat index 4732b92236..a6026eebc5 100644 --- a/tests/compiler/super-inline.optimized.wat +++ b/tests/compiler/super-inline.optimized.wat @@ -134,11 +134,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -150,21 +149,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -893,7 +890,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17868 i32.ge_u if @@ -903,20 +900,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -929,13 +926,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/templateliteral.optimized.wat b/tests/compiler/templateliteral.optimized.wat index 398e4f5aa2..04f8866f9d 100644 --- a/tests/compiler/templateliteral.optimized.wat +++ b/tests/compiler/templateliteral.optimized.wat @@ -471,11 +471,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -487,21 +486,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1230,7 +1227,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 22116 i32.ge_u if @@ -1240,20 +1237,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1266,13 +1263,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end @@ -2351,26 +2348,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -2384,74 +2366,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -2471,51 +2467,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 diff --git a/tests/compiler/throw.optimized.wat b/tests/compiler/throw.optimized.wat index 2053a68bb4..0e045db816 100644 --- a/tests/compiler/throw.optimized.wat +++ b/tests/compiler/throw.optimized.wat @@ -124,11 +124,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -140,21 +139,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 diff --git a/tests/compiler/typeof.optimized.wat b/tests/compiler/typeof.optimized.wat index a51412cdb1..ec7708c66c 100644 --- a/tests/compiler/typeof.optimized.wat +++ b/tests/compiler/typeof.optimized.wat @@ -262,11 +262,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -278,21 +277,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -1021,7 +1018,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 18220 i32.ge_u if @@ -1031,20 +1028,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -1057,13 +1054,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end diff --git a/tests/compiler/wasi/trace.optimized.wat b/tests/compiler/wasi/trace.optimized.wat index 671c64c8d5..512db4d88a 100644 --- a/tests/compiler/wasi/trace.optimized.wat +++ b/tests/compiler/wasi/trace.optimized.wat @@ -481,11 +481,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -497,21 +496,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -2045,26 +2042,11 @@ local.get $0 i32.const 2 i32.add - local.tee $3 - local.get $1 - i32.const 2 - i32.add local.tee $0 - i32.load8_u - i32.store8 - local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 - i32.load8_u offset=1 - i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $1 + local.tee $1 i32.load8_u i32.store8 local.get $0 @@ -2078,74 +2060,88 @@ local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 local.get $3 - local.get $4 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 local.get $3 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $0 i32.load8_u i32.store8 - local.get $3 - local.get $4 + local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $1 i32.const 2 i32.add - local.tee $0 - local.get $4 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $1 + local.tee $0 i32.load8_u i32.store8 - local.get $0 local.get $1 + local.get $0 i32.load8_u offset=1 i32.store8 offset=1 + local.get $1 + i32.const 2 + i32.add + local.tee $1 local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 + i32.load8_u + i32.store8 + local.get $1 + local.get $0 + i32.load8_u offset=1 + i32.store8 offset=1 local.get $1 i32.const 2 i32.add - local.tee $4 + local.tee $1 + local.get $0 + i32.const 2 + i32.add + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -2165,51 +2161,50 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 local.get $0 - i32.const 2 - i32.add - local.set $1 - local.get $3 - local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $0 + local.tee $3 local.get $1 + i32.const 2 + i32.add + local.tee $0 i32.load8_u i32.store8 + local.get $3 local.get $0 - local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $3 i32.const 2 i32.add - local.tee $3 - local.get $1 + local.tee $1 + local.get $0 i32.const 2 i32.add - local.tee $4 + local.tee $3 i32.load8_u i32.store8 - local.get $3 + local.get $1 i32.const 2 i32.add local.set $0 + local.get $1 local.get $3 - local.get $4 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $3 i32.const 2 i32.add local.set $1 @@ -2925,6 +2920,8 @@ (local $12 i64) (local $13 i64) (local $14 i64) + (local $15 i64) + (local $16 i64) local.get $1 f64.const 0 f64.lt @@ -2945,7 +2942,15 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.set $7 + local.tee $7 + i32.const 1 + local.get $7 + select + i32.const 1075 + i32.sub + local.tee $8 + i32.const 1 + i32.sub local.get $2 i64.const 4503599627370495 i64.and @@ -2956,17 +2961,7 @@ i64.const 52 i64.shl i64.add - local.set $2 - local.get $7 - i32.const 1 - local.get $7 - select - i32.const 1075 - i32.sub - local.tee $7 - i32.const 1 - i32.sub - local.get $2 + local.tee $2 i64.const 1 i64.shl i64.const 1 @@ -2974,11 +2969,11 @@ local.tee $4 i64.clz i32.wrap_i64 - local.tee $8 + local.tee $7 i32.sub local.set $9 local.get $4 - local.get $8 + local.get $7 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -2988,13 +2983,13 @@ i64.eq i32.const 1 i32.add - local.tee $8 + local.tee $7 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $7 local.get $8 + local.get $7 i32.sub local.get $9 i32.sub @@ -3069,77 +3064,54 @@ i64.shr_u i64.add local.set $4 - local.get $5 - i64.const 32 - i64.shr_u - local.tee $11 - local.set $5 global.get $~lib/util/number/_frc_plus - local.tee $12 + local.tee $11 i64.const 4294967295 i64.and - local.set $13 - local.get $12 + local.set $12 + local.get $11 i64.const 32 i64.shr_u - local.tee $12 + local.tee $11 local.get $10 i64.mul local.get $10 - local.get $13 - i64.mul - i64.const 32 - i64.shr_u - i64.add - local.set $14 - local.get $11 local.get $12 i64.mul - local.get $14 - i64.const 32 - i64.shr_u - i64.add - local.get $11 - local.get $13 - i64.mul - local.get $14 - i64.const 4294967295 - i64.and - i64.add - i64.const 2147483647 - i64.add i64.const 32 i64.shr_u i64.add - i64.const 1 - i64.sub - local.set $12 + local.set $13 global.get $~lib/util/number/_frc_minus - local.tee $13 + local.tee $14 i64.const 4294967295 i64.and - local.set $14 - local.get $13 + local.set $15 + local.get $14 i64.const 32 i64.shr_u - local.tee $13 + local.tee $14 local.get $10 i64.mul local.get $10 - local.get $14 + local.get $15 i64.mul i64.const 32 i64.shr_u i64.add - local.set $10 + local.set $16 local.get $3 i32.const 1 i32.shl local.get $0 i32.add local.get $0 - local.get $5 local.get $6 + local.get $5 + i64.const 32 + i64.shr_u + local.tee $10 + local.tee $5 i64.mul local.get $4 i64.const 32 @@ -3157,24 +3129,45 @@ i64.const 32 i64.shr_u i64.add + local.get $10 + local.get $11 + i64.mul + local.get $13 + i64.const 32 + i64.shr_u + i64.add + local.get $10 local.get $12 + i64.mul + local.get $13 + i64.const 4294967295 + i64.and + i64.add + i64.const 2147483647 + i64.add + i64.const 32 + i64.shr_u + i64.add + i64.const 1 + i64.sub + local.tee $2 global.get $~lib/util/number/_exp_pow local.get $7 i32.add i32.const -64 i32.sub - local.get $12 - local.get $11 - local.get $13 - i64.mul + local.get $2 local.get $10 + local.get $14 + i64.mul + local.get $16 i64.const 32 i64.shr_u i64.add - local.get $11 - local.get $14 - i64.mul local.get $10 + local.get $15 + i64.mul + local.get $16 i64.const 4294967295 i64.and i64.add @@ -3553,26 +3546,26 @@ local.get $6 i32.const 4 i32.add - local.tee $7 + local.tee $6 i32.const 8 i32.add - local.tee $8 + local.tee $7 i32.const 4 i32.add - local.set $6 - local.get $7 + local.set $8 local.get $6 + local.get $8 i32.store - local.get $6 + local.get $8 i64.const 9071406388179572 i64.store - local.get $7 + local.get $6 i32.const 7 i32.store offset=4 i32.const 2 - local.get $7 + local.get $6 i32.const 1 - local.get $8 + local.get $7 call $~lib/bindings/wasi_snapshot_preview1/fd_write drop i32.const 1052 @@ -3582,164 +3575,164 @@ local.set $9 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 i32.const 1056 local.get $9 - local.get $6 + local.get $8 call $~lib/string/String.UTF8.encodeUnsafe@varargs i32.store offset=4 i32.const 2 - local.get $7 + local.get $6 i32.const 1 - local.get $8 + local.get $7 call $~lib/bindings/wasi_snapshot_preview1/fd_write drop local.get $0 if (result i32) - local.get $6 + local.get $8 i32.const 32 i32.store8 - local.get $6 + local.get $8 i32.const 1 i32.add - local.tee $6 + local.tee $8 local.get $1 call $~lib/util/number/dtoa_buffered local.set $9 i32.const 3 global.set $~argumentsLength - local.get $7 local.get $6 + local.get $8 local.get $9 - local.get $6 + local.get $8 call $~lib/string/String.UTF8.encodeUnsafe@varargs i32.const 1 i32.add i32.store offset=4 i32.const 2 - local.get $7 + local.get $6 i32.const 1 - local.get $8 + local.get $7 call $~lib/bindings/wasi_snapshot_preview1/fd_write drop local.get $0 i32.const 1 i32.gt_s if - local.get $6 + local.get $8 local.get $2 call $~lib/util/number/dtoa_buffered local.set $9 i32.const 3 global.set $~argumentsLength - local.get $7 local.get $6 + local.get $8 local.get $9 - local.get $6 + local.get $8 call $~lib/string/String.UTF8.encodeUnsafe@varargs i32.const 1 i32.add i32.store offset=4 i32.const 2 - local.get $7 + local.get $6 i32.const 1 - local.get $8 + local.get $7 call $~lib/bindings/wasi_snapshot_preview1/fd_write drop local.get $0 i32.const 2 i32.gt_s if - local.get $6 + local.get $8 local.get $3 call $~lib/util/number/dtoa_buffered local.set $9 i32.const 3 global.set $~argumentsLength - local.get $7 local.get $6 + local.get $8 local.get $9 - local.get $6 + local.get $8 call $~lib/string/String.UTF8.encodeUnsafe@varargs i32.const 1 i32.add i32.store offset=4 i32.const 2 - local.get $7 + local.get $6 i32.const 1 - local.get $8 + local.get $7 call $~lib/bindings/wasi_snapshot_preview1/fd_write drop local.get $0 i32.const 3 i32.gt_s if - local.get $6 + local.get $8 local.get $4 call $~lib/util/number/dtoa_buffered local.set $9 i32.const 3 global.set $~argumentsLength - local.get $7 local.get $6 + local.get $8 local.get $9 - local.get $6 + local.get $8 call $~lib/string/String.UTF8.encodeUnsafe@varargs i32.const 1 i32.add i32.store offset=4 i32.const 2 - local.get $7 + local.get $6 i32.const 1 - local.get $8 + local.get $7 call $~lib/bindings/wasi_snapshot_preview1/fd_write drop local.get $0 i32.const 4 i32.gt_s if - local.get $6 + local.get $8 local.get $5 call $~lib/util/number/dtoa_buffered local.set $0 i32.const 3 global.set $~argumentsLength - local.get $7 local.get $6 + local.get $8 local.get $0 - local.get $6 + local.get $8 call $~lib/string/String.UTF8.encodeUnsafe@varargs i32.const 1 i32.add i32.store offset=4 i32.const 2 - local.get $7 + local.get $6 i32.const 1 - local.get $8 + local.get $7 call $~lib/bindings/wasi_snapshot_preview1/fd_write drop end end end end - local.get $6 + local.get $8 i32.const 1 i32.sub else - local.get $6 + local.get $8 end i32.const 10 i32.store8 - local.get $7 + local.get $6 i32.const 1 i32.store offset=4 i32.const 2 - local.get $7 + local.get $6 i32.const 1 - local.get $8 + local.get $7 call $~lib/bindings/wasi_snapshot_preview1/fd_write drop - local.get $7 + local.get $6 i32.const 19024 i32.ge_u if @@ -3749,20 +3742,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $7 + local.get $6 i32.const 4 i32.sub - local.set $6 - local.get $7 + local.set $7 + local.get $6 i32.const 15 i32.and i32.const 1 - local.get $7 + local.get $6 select if (result i32) i32.const 1 else - local.get $6 + local.get $7 i32.load i32.const 1 i32.and @@ -3775,13 +3768,13 @@ call $~lib/wasi/index/abort unreachable end - local.get $6 - local.get $6 + local.get $7 + local.get $7 i32.load i32.const 1 i32.or i32.store - local.get $6 + local.get $7 call $~lib/rt/tlsf/insertBlock end ) diff --git a/tests/compiler/while.optimized.wat b/tests/compiler/while.optimized.wat index d1ff6fb472..75f1aa39f6 100644 --- a/tests/compiler/while.optimized.wat +++ b/tests/compiler/while.optimized.wat @@ -116,11 +116,10 @@ local.get $2 i32.const 256 i32.lt_u - if + if (result i32) local.get $2 i32.const 4 i32.shr_u - local.set $2 else i32.const 31 local.get $2 @@ -132,21 +131,19 @@ local.tee $2 i32.clz i32.sub + local.tee $4 + i32.const 7 + i32.sub local.set $3 local.get $2 - local.get $3 + local.get $4 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $2 - local.get $3 - i32.const 7 - i32.sub - local.set $3 end - local.get $2 + local.tee $2 i32.const 16 i32.lt_u local.get $3 @@ -875,7 +872,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 17908 i32.ge_u if @@ -885,20 +882,20 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 else - local.get $0 + local.get $2 i32.load i32.const 1 i32.and @@ -911,13 +908,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load i32.const 1 i32.or i32.store - local.get $0 + local.get $2 call $~lib/rt/tlsf/insertBlock end end From 8764c993d3d89310ef66b100cfbc54838ef24137 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Mon, 20 Sep 2021 16:15:21 +0300 Subject: [PATCH 16/54] remove merge-blocks --- src/module.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/src/module.ts b/src/module.ts index f15c633a22..27ff6e9b80 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2317,7 +2317,6 @@ export class Module { if (optimizeLevel >= 2 || shrinkLevel >= 1) { passes.push("simplify-globals-optimizing"); } - passes.push("merge-blocks"); passes.push("remove-unused-brs"); passes.push("remove-unused-names"); passes.push("merge-blocks"); From 93502c44e6428222d06de1c22a5aa26107852e0a Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Mon, 20 Sep 2021 16:18:42 +0300 Subject: [PATCH 17/54] add merge-block earlier --- src/module.ts | 1 + .../compiler/class-overloading.optimized.wat | 14 ++++++------- tests/compiler/std/array.optimized.wat | 21 ++++++++----------- 3 files changed, 17 insertions(+), 19 deletions(-) diff --git a/src/module.ts b/src/module.ts index 27ff6e9b80..d77cc03fbd 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2266,6 +2266,7 @@ export class Module { passes.push("ssa-nomerge"); passes.push("simplify-globals-optimizing"); passes.push("local-cse"); + passes.push("merge-blocks"); passes.push("remove-unused-brs"); passes.push("remove-unused-names"); passes.push("precompute-propagate"); diff --git a/tests/compiler/class-overloading.optimized.wat b/tests/compiler/class-overloading.optimized.wat index 2aecef4880..6a65e9241c 100644 --- a/tests/compiler/class-overloading.optimized.wat +++ b/tests/compiler/class-overloading.optimized.wat @@ -2639,9 +2639,9 @@ global.get $class-overloading/ic local.tee $0 i32.store - block $__inlined_func$class-overloading/IA#foo@virtual105 - block $default106 - block $case1107 + block $__inlined_func$class-overloading/IA#foo@virtual104 + block $default105 + block $case1106 local.get $0 i32.const 8 i32.sub @@ -2653,16 +2653,16 @@ local.get $0 i32.const 12 i32.eq - br_if $case1107 - br $default106 + br_if $case1106 + br $default105 end i32.const 1680 global.set $class-overloading/which - br $__inlined_func$class-overloading/IA#foo@virtual105 + br $__inlined_func$class-overloading/IA#foo@virtual104 end i32.const 1712 global.set $class-overloading/which - br $__inlined_func$class-overloading/IA#foo@virtual105 + br $__inlined_func$class-overloading/IA#foo@virtual104 end unreachable end diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index 4ae7e545fe..30fe0d2091 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -34902,14 +34902,11 @@ br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $3 - local.tee $2 local.get $0 i32.store - local.get $2 + local.get $3 local.get $1 i32.store offset=4 - i32.const 0 - local.set $2 local.get $3 i32.const 4 i32.sub @@ -34991,26 +34988,26 @@ local.get $4 local.get $6 i32.add - local.set $2 + local.set $0 local.get $1 i32.load offset=4 - local.set $1 + local.set $2 local.get $3 i32.const 2 i32.shl local.set $3 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 local.get $3 i32.lt_u if local.get $0 - local.get $2 + local.get $1 i32.add - local.get $0 local.get $1 + local.get $2 i32.add i32.load local.tee $4 @@ -35022,10 +35019,10 @@ i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 + local.get $1 i32.const 4 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end From 54dc7dc7854217f86df48de9b800100913edb306 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Mon, 20 Sep 2021 16:26:39 +0300 Subject: [PATCH 18/54] better --- src/module.ts | 2 +- .../compiler/class-overloading.optimized.wat | 14 +- tests/compiler/do.optimized.wat | 20 +- tests/compiler/std/array.optimized.wat | 120 +-- tests/compiler/std/math.optimized.wat | 710 +++++++++--------- tests/compiler/std/typedarray.optimized.wat | 120 +-- tests/compiler/wasi/trace.optimized.wat | 120 +-- 7 files changed, 553 insertions(+), 553 deletions(-) diff --git a/src/module.ts b/src/module.ts index d77cc03fbd..2cffda13b2 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2266,9 +2266,9 @@ export class Module { passes.push("ssa-nomerge"); passes.push("simplify-globals-optimizing"); passes.push("local-cse"); - passes.push("merge-blocks"); passes.push("remove-unused-brs"); passes.push("remove-unused-names"); + passes.push("merge-blocks"); passes.push("precompute-propagate"); } if (optimizeLevel >= 3) { diff --git a/tests/compiler/class-overloading.optimized.wat b/tests/compiler/class-overloading.optimized.wat index 6a65e9241c..2aecef4880 100644 --- a/tests/compiler/class-overloading.optimized.wat +++ b/tests/compiler/class-overloading.optimized.wat @@ -2639,9 +2639,9 @@ global.get $class-overloading/ic local.tee $0 i32.store - block $__inlined_func$class-overloading/IA#foo@virtual104 - block $default105 - block $case1106 + block $__inlined_func$class-overloading/IA#foo@virtual105 + block $default106 + block $case1107 local.get $0 i32.const 8 i32.sub @@ -2653,16 +2653,16 @@ local.get $0 i32.const 12 i32.eq - br_if $case1106 - br $default105 + br_if $case1107 + br $default106 end i32.const 1680 global.set $class-overloading/which - br $__inlined_func$class-overloading/IA#foo@virtual104 + br $__inlined_func$class-overloading/IA#foo@virtual105 end i32.const 1712 global.set $class-overloading/which - br $__inlined_func$class-overloading/IA#foo@virtual104 + br $__inlined_func$class-overloading/IA#foo@virtual105 end unreachable end diff --git a/tests/compiler/do.optimized.wat b/tests/compiler/do.optimized.wat index e9d0897762..548e8ca7b3 100644 --- a/tests/compiler/do.optimized.wat +++ b/tests/compiler/do.optimized.wat @@ -1204,7 +1204,7 @@ local.set $0 i32.const 0 local.set $1 - loop $do-loop|06 + loop $do-loop|05 local.get $0 i32.const 1 i32.add @@ -1212,7 +1212,7 @@ i32.const 10 i32.ne if - loop $do-loop|18 + loop $do-loop|17 local.get $1 i32.const 1 i32.add @@ -1222,10 +1222,10 @@ i32.const 0 local.get $1 select - br_if $do-loop|18 + br_if $do-loop|17 end local.get $0 - br_if $do-loop|06 + br_if $do-loop|05 end end local.get $0 @@ -1300,7 +1300,7 @@ local.get $0 call $do/Ref#constructor i32.store - loop $do-loop|09 + loop $do-loop|08 local.get $1 i32.const 1 i32.add @@ -1317,7 +1317,7 @@ i32.store end local.get $0 - br_if $do-loop|09 + br_if $do-loop|08 end local.get $1 i32.const 10 @@ -1361,8 +1361,8 @@ call $do/Ref#constructor local.tee $0 i32.store - loop $do-loop|07 - block $do-break|08 + loop $do-loop|06 + block $do-break|07 local.get $1 i32.const 1 i32.add @@ -1372,10 +1372,10 @@ if i32.const 0 local.set $0 - br $do-break|08 + br $do-break|07 end call $do/Ref#constructor - br_if $do-loop|07 + br_if $do-loop|06 end end local.get $1 diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index 30fe0d2091..6a401febcf 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -10484,14 +10484,14 @@ (local $4 i64) (local $5 i64) (local $6 i64) - (local $7 i32) - (local $8 i32) - (local $9 i32) + (local $7 i64) + (local $8 i64) + (local $9 i64) (local $10 i64) (local $11 i64) - (local $12 i64) - (local $13 i64) - (local $14 i64) + (local $12 i32) + (local $13 i32) + (local $14 i32) (local $15 i64) (local $16 i64) local.get $1 @@ -10514,19 +10514,19 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $7 + local.tee $12 i32.const 1 - local.get $7 + local.get $12 select i32.const 1075 i32.sub - local.tee $8 + local.tee $13 i32.const 1 i32.sub local.get $2 i64.const 4503599627370495 i64.and - local.get $7 + local.get $12 i32.const 0 i32.ne i64.extend_i32_u @@ -10541,11 +10541,11 @@ local.tee $4 i64.clz i32.wrap_i64 - local.tee $7 + local.tee $12 i32.sub - local.set $9 + local.set $14 local.get $4 - local.get $7 + local.get $12 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -10555,25 +10555,25 @@ i64.eq i32.const 1 i32.add - local.tee $7 + local.tee $12 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $8 - local.get $7 + local.get $13 + local.get $12 i32.sub - local.get $9 + local.get $14 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $9 + local.get $14 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $7 + local.tee $12 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -10582,9 +10582,9 @@ f64.add local.tee $1 i32.trunc_f64_s - local.tee $8 + local.tee $13 local.get $1 - local.get $8 + local.get $13 f64.convert_i32_s f64.ne i32.add @@ -10592,18 +10592,18 @@ i32.shr_s i32.const 1 i32.add - local.tee $8 + local.tee $13 i32.const 3 i32.shl - local.tee $9 + local.tee $14 i32.sub global.set $~lib/util/number/_K - local.get $9 + local.get $14 i32.const 11960 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $8 + local.get $13 i32.const 1 i32.shl i32.const 12656 @@ -10621,12 +10621,12 @@ local.get $4 i64.const 32 i64.shr_u - local.tee $6 + local.tee $9 global.get $~lib/util/number/_frc_pow - local.tee $5 + local.tee $15 i64.const 4294967295 i64.and - local.tee $10 + local.tee $8 local.tee $4 i64.mul local.get $2 @@ -10637,60 +10637,60 @@ i64.add local.set $4 global.get $~lib/util/number/_frc_plus - local.tee $11 + local.tee $6 i64.const 4294967295 i64.and - local.set $12 - local.get $11 + local.set $5 + local.get $6 i64.const 32 i64.shr_u - local.tee $11 - local.get $10 + local.tee $10 + local.get $8 i64.mul - local.get $10 - local.get $12 + local.get $5 + local.get $8 i64.mul i64.const 32 i64.shr_u i64.add - local.set $13 + local.set $6 global.get $~lib/util/number/_frc_minus - local.tee $14 + local.tee $11 i64.const 4294967295 i64.and - local.set $15 - local.get $14 + local.set $7 + local.get $11 i64.const 32 i64.shr_u - local.tee $14 - local.get $10 + local.tee $11 + local.get $8 i64.mul - local.get $10 - local.get $15 + local.get $7 + local.get $8 i64.mul i64.const 32 i64.shr_u i64.add - local.set $16 + local.set $8 local.get $3 i32.const 1 i32.shl local.get $0 i32.add local.get $0 - local.get $6 - local.get $5 + local.get $9 + local.get $15 i64.const 32 i64.shr_u - local.tee $10 - local.tee $5 + local.tee $15 + local.tee $16 i64.mul local.get $4 i64.const 32 i64.shr_u i64.add local.get $2 - local.get $5 + local.get $16 i64.mul local.get $4 i64.const 4294967295 @@ -10702,16 +10702,16 @@ i64.shr_u i64.add local.get $10 - local.get $11 + local.get $15 i64.mul - local.get $13 + local.get $6 i64.const 32 i64.shr_u i64.add - local.get $10 - local.get $12 + local.get $5 + local.get $15 i64.mul - local.get $13 + local.get $6 i64.const 4294967295 i64.and i64.add @@ -10724,22 +10724,22 @@ i64.sub local.tee $2 global.get $~lib/util/number/_exp_pow - local.get $7 + local.get $12 i32.add i32.const -64 i32.sub local.get $2 - local.get $10 - local.get $14 + local.get $11 + local.get $15 i64.mul - local.get $16 + local.get $8 i64.const 32 i64.shr_u i64.add - local.get $10 + local.get $7 local.get $15 i64.mul - local.get $16 + local.get $8 i64.const 4294967295 i64.and i64.add diff --git a/tests/compiler/std/math.optimized.wat b/tests/compiler/std/math.optimized.wat index 2288c4f123..c36682d380 100644 --- a/tests/compiler/std/math.optimized.wat +++ b/tests/compiler/std/math.optimized.wat @@ -7384,426 +7384,426 @@ i64.const 52 i64.shr_u local.set $7 - block $~lib/util/math/exp_inline|inlined.0 (result f64) - local.get $0 - i64.reinterpret_f64 - local.tee $2 - i64.const 52 - i64.shr_u - local.tee $5 + local.get $0 + i64.reinterpret_f64 + local.tee $2 + i64.const 52 + i64.shr_u + local.tee $5 + i64.const 1 + i64.sub + i64.const 2046 + i64.ge_u + if (result i32) + i32.const 1 + else + local.get $7 + i64.const 2047 + i64.and + i64.const 958 + i64.sub + i64.const 128 + i64.ge_u + end + if + local.get $4 + i64.const 1 + i64.shl i64.const 1 i64.sub - i64.const 2046 + i64.const -9007199254740993 i64.ge_u - if (result i32) - i32.const 1 - else - local.get $7 - i64.const 2047 - i64.and - i64.const 958 - i64.sub - i64.const 128 - i64.ge_u - end if + f64.const 1 local.get $4 i64.const 1 i64.shl + i64.eqz + br_if $~lib/util/math/pow_lut|inlined.0 + drop + f64.const nan:0x8000000000000 + local.get $2 + i64.const 4607182418800017408 + i64.eq + br_if $~lib/util/math/pow_lut|inlined.0 + drop + local.get $0 + local.get $1 + f64.add + local.get $4 i64.const 1 - i64.sub - i64.const -9007199254740993 - i64.ge_u - if - f64.const 1 - local.get $4 - i64.const 1 - i64.shl - i64.eqz - br_if $~lib/util/math/pow_lut|inlined.0 - drop - f64.const nan:0x8000000000000 - local.get $2 - i64.const 4607182418800017408 - i64.eq - br_if $~lib/util/math/pow_lut|inlined.0 - drop - local.get $0 - local.get $1 - f64.add - local.get $4 - i64.const 1 - i64.shl - i64.const -9007199254740992 - i64.gt_u - local.get $2 - i64.const 1 - i64.shl - i64.const -9007199254740992 - i64.gt_u - i32.or - br_if $~lib/util/math/pow_lut|inlined.0 - drop - f64.const nan:0x8000000000000 - local.get $2 - i64.const 1 - i64.shl - i64.const 9214364837600034816 - i64.eq - br_if $~lib/util/math/pow_lut|inlined.0 - drop - f64.const 0 - local.get $4 - i64.const 63 - i64.shr_u - i64.eqz - local.get $2 - i64.const 1 - i64.shl - i64.const 9214364837600034816 - i64.lt_u - i32.eq - br_if $~lib/util/math/pow_lut|inlined.0 - drop - local.get $1 - local.get $1 - f64.mul - br $~lib/util/math/pow_lut|inlined.0 - end + i64.shl + i64.const -9007199254740992 + i64.gt_u local.get $2 i64.const 1 i64.shl + i64.const -9007199254740992 + i64.gt_u + i32.or + br_if $~lib/util/math/pow_lut|inlined.0 + drop + f64.const nan:0x8000000000000 + local.get $2 i64.const 1 - i64.sub - i64.const -9007199254740993 - i64.ge_u - if - f64.const 1 - local.get $0 - local.get $0 - f64.mul - local.tee $0 - f64.neg - local.get $0 - local.get $2 - i64.const 63 - i64.shr_u - i32.wrap_i64 - if (result i32) - block $~lib/util/math/checkint|inlined.0 (result i32) - i32.const 0 - local.get $4 - i64.const 52 - i64.shr_u - i64.const 2047 - i64.and - local.tee $2 - i64.const 1023 - i64.lt_u - br_if $~lib/util/math/checkint|inlined.0 - drop - i32.const 2 - local.get $2 - i64.const 1075 - i64.gt_u - br_if $~lib/util/math/checkint|inlined.0 - drop - i32.const 0 - i64.const 1 - i64.const 1075 - local.get $2 - i64.sub - i64.shl - local.tee $2 - i64.const 1 - i64.sub - local.get $4 - i64.and - i64.const 0 - i64.ne - br_if $~lib/util/math/checkint|inlined.0 - drop - i32.const 1 - local.get $2 - local.get $4 - i64.and - i64.const 0 - i64.ne - br_if $~lib/util/math/checkint|inlined.0 - drop - i32.const 2 - end - i32.const 1 - i32.eq - else - i32.const 0 - end - select - local.tee $0 - f64.div - local.get $0 - local.get $4 - i64.const 63 - i64.shr_u - i32.wrap_i64 - select - br $~lib/util/math/pow_lut|inlined.0 - end + i64.shl + i64.const 9214364837600034816 + i64.eq + br_if $~lib/util/math/pow_lut|inlined.0 + drop + f64.const 0 + local.get $4 + i64.const 63 + i64.shr_u + i64.eqz + local.get $2 + i64.const 1 + i64.shl + i64.const 9214364837600034816 + i64.lt_u + i32.eq + br_if $~lib/util/math/pow_lut|inlined.0 + drop + local.get $1 + local.get $1 + f64.mul + br $~lib/util/math/pow_lut|inlined.0 + end + local.get $2 + i64.const 1 + i64.shl + i64.const 1 + i64.sub + i64.const -9007199254740993 + i64.ge_u + if + f64.const 1 + local.get $0 + local.get $0 + f64.mul + local.tee $0 + f64.neg + local.get $0 local.get $2 i64.const 63 i64.shr_u i32.wrap_i64 - if - block $~lib/util/math/checkint|inlined.1 (result i32) + if (result i32) + block $~lib/util/math/checkint|inlined.0 (result i32) i32.const 0 local.get $4 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.tee $12 + local.tee $2 i64.const 1023 i64.lt_u - br_if $~lib/util/math/checkint|inlined.1 + br_if $~lib/util/math/checkint|inlined.0 drop i32.const 2 - local.get $12 + local.get $2 i64.const 1075 i64.gt_u - br_if $~lib/util/math/checkint|inlined.1 + br_if $~lib/util/math/checkint|inlined.0 drop i32.const 0 i64.const 1 i64.const 1075 - local.get $12 + local.get $2 i64.sub i64.shl - local.tee $12 + local.tee $2 i64.const 1 i64.sub local.get $4 i64.and i64.const 0 i64.ne - br_if $~lib/util/math/checkint|inlined.1 + br_if $~lib/util/math/checkint|inlined.0 drop i32.const 1 + local.get $2 local.get $4 - local.get $12 i64.and i64.const 0 i64.ne - br_if $~lib/util/math/checkint|inlined.1 + br_if $~lib/util/math/checkint|inlined.0 drop i32.const 2 end - local.tee $3 - i32.eqz - if - local.get $0 - local.get $0 - f64.sub - local.tee $0 - local.get $0 - f64.div - br $~lib/util/math/pow_lut|inlined.0 - end - local.get $5 - i64.const 2047 - i64.and - local.set $5 - i32.const 262144 - i32.const 0 - local.get $3 i32.const 1 i32.eq - select - local.set $6 - local.get $2 - i64.const 9223372036854775807 - i64.and - local.set $2 + else + i32.const 0 end - local.get $7 - i64.const 2047 - i64.and - i64.const 958 - i64.sub - i64.const 128 - i64.ge_u - if - f64.const 1 - local.get $2 - i64.const 4607182418800017408 - i64.eq - br_if $~lib/util/math/pow_lut|inlined.0 - drop - f64.const 1 - local.get $7 + select + local.tee $0 + f64.div + local.get $0 + local.get $4 + i64.const 63 + i64.shr_u + i32.wrap_i64 + select + br $~lib/util/math/pow_lut|inlined.0 + end + local.get $2 + i64.const 63 + i64.shr_u + i32.wrap_i64 + if + block $~lib/util/math/checkint|inlined.1 (result i32) + i32.const 0 + local.get $4 + i64.const 52 + i64.shr_u i64.const 2047 i64.and - i64.const 958 + local.tee $12 + i64.const 1023 i64.lt_u - br_if $~lib/util/math/pow_lut|inlined.0 + br_if $~lib/util/math/checkint|inlined.1 drop - f64.const inf - f64.const 0 - local.get $7 - i64.const 2048 - i64.lt_u - local.get $2 - i64.const 4607182418800017408 + i32.const 2 + local.get $12 + i64.const 1075 i64.gt_u - i32.eq - select - br $~lib/util/math/pow_lut|inlined.0 + br_if $~lib/util/math/checkint|inlined.1 + drop + i32.const 0 + i64.const 1 + i64.const 1075 + local.get $12 + i64.sub + i64.shl + local.tee $12 + i64.const 1 + i64.sub + local.get $4 + i64.and + i64.const 0 + i64.ne + br_if $~lib/util/math/checkint|inlined.1 + drop + i32.const 1 + local.get $4 + local.get $12 + i64.and + i64.const 0 + i64.ne + br_if $~lib/util/math/checkint|inlined.1 + drop + i32.const 2 end - local.get $5 - i64.eqz - if (result i64) + local.tee $3 + i32.eqz + if local.get $0 - f64.const 4503599627370496 - f64.mul - i64.reinterpret_f64 - i64.const 9223372036854775807 - i64.and - i64.const 234187180623265792 - i64.sub - else - local.get $2 + local.get $0 + f64.sub + local.tee $0 + local.get $0 + f64.div + br $~lib/util/math/pow_lut|inlined.0 end + local.get $5 + i64.const 2047 + i64.and + local.set $5 + i32.const 262144 + i32.const 0 + local.get $3 + i32.const 1 + i32.eq + select + local.set $6 + local.get $2 + i64.const 9223372036854775807 + i64.and local.set $2 end - local.get $2 - local.get $2 - i64.const 4604531861337669632 - i64.sub - local.tee $2 - i64.const -4503599627370496 + local.get $7 + i64.const 2047 i64.and + i64.const 958 i64.sub - local.tee $5 - i64.const 2147483648 - i64.add - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.tee $0 - local.get $2 - i64.const 45 - i64.shr_u - i64.const 127 - i64.and - i32.wrap_i64 - i32.const 5 - i32.shl - i32.const 10272 - i32.add - local.tee $3 - f64.load - local.tee $8 - f64.mul - f64.const 1 - f64.sub - local.set $13 - local.get $2 - i64.const 52 - i64.shr_s - f64.convert_i64_s - local.tee $10 - f64.const 0.6931471805598903 - f64.mul - local.get $3 - f64.load offset=16 - f64.add - local.tee $11 - local.get $13 + i64.const 128 + i64.ge_u + if + f64.const 1 + local.get $2 + i64.const 4607182418800017408 + i64.eq + br_if $~lib/util/math/pow_lut|inlined.0 + drop + f64.const 1 + local.get $7 + i64.const 2047 + i64.and + i64.const 958 + i64.lt_u + br_if $~lib/util/math/pow_lut|inlined.0 + drop + f64.const inf + f64.const 0 + local.get $7 + i64.const 2048 + i64.lt_u + local.get $2 + i64.const 4607182418800017408 + i64.gt_u + i32.eq + select + br $~lib/util/math/pow_lut|inlined.0 + end local.get $5 - f64.reinterpret_i64 - local.get $0 - f64.sub - local.get $8 - f64.mul - local.tee $14 - f64.add - local.tee $0 - f64.add - local.set $8 - local.get $0 - local.get $0 - f64.const -0.5 - f64.mul - local.tee $15 - f64.mul - local.set $9 - local.get $8 - local.get $13 - local.get $13 - f64.const -0.5 - f64.mul - local.tee $13 - f64.mul - local.tee $16 - f64.add - local.tee $17 - local.get $17 - local.get $10 - f64.const 5.497923018708371e-14 - f64.mul - local.get $3 - f64.load offset=24 - f64.add - local.get $11 - local.get $8 - f64.sub - local.get $0 - f64.add - f64.add - local.get $14 - local.get $15 - local.get $13 - f64.add - f64.mul - f64.add - local.get $8 - local.get $17 - f64.sub - local.get $16 - f64.add - f64.add - local.get $0 - local.get $9 - f64.mul - local.get $0 - f64.const 0.5000000000000007 - f64.mul - f64.const -0.6666666666666679 - f64.add - local.get $9 - local.get $0 - f64.const -0.6666666663487739 - f64.mul - f64.const 0.7999999995323976 - f64.add - local.get $9 - local.get $0 - f64.const 1.0000415263675542 - f64.mul - f64.const -1.142909628459501 - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - local.tee $0 - f64.add - local.tee $8 - f64.sub - local.get $0 - f64.add - global.set $~lib/util/math/log_tail + i64.eqz + if (result i64) + local.get $0 + f64.const 4503599627370496 + f64.mul + i64.reinterpret_f64 + i64.const 9223372036854775807 + i64.and + i64.const 234187180623265792 + i64.sub + else + local.get $2 + end + local.set $2 + end + local.get $2 + local.get $2 + i64.const 4604531861337669632 + i64.sub + local.tee $2 + i64.const -4503599627370496 + i64.and + i64.sub + local.tee $5 + i64.const 2147483648 + i64.add + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.tee $0 + local.get $2 + i64.const 45 + i64.shr_u + i64.const 127 + i64.and + i32.wrap_i64 + i32.const 5 + i32.shl + i32.const 10272 + i32.add + local.tee $3 + f64.load + local.tee $8 + f64.mul + f64.const 1 + f64.sub + local.set $13 + local.get $2 + i64.const 52 + i64.shr_s + f64.convert_i64_s + local.tee $10 + f64.const 0.6931471805598903 + f64.mul + local.get $3 + f64.load offset=16 + f64.add + local.tee $11 + local.get $13 + local.get $5 + f64.reinterpret_i64 + local.get $0 + f64.sub + local.get $8 + f64.mul + local.tee $14 + f64.add + local.tee $0 + f64.add + local.set $8 + local.get $0 + local.get $0 + f64.const -0.5 + f64.mul + local.tee $15 + f64.mul + local.set $9 + local.get $8 + local.get $13 + local.get $13 + f64.const -0.5 + f64.mul + local.tee $13 + f64.mul + local.tee $16 + f64.add + local.tee $17 + local.get $17 + local.get $10 + f64.const 5.497923018708371e-14 + f64.mul + local.get $3 + f64.load offset=24 + f64.add + local.get $11 + local.get $8 + f64.sub + local.get $0 + f64.add + f64.add + local.get $14 + local.get $15 + local.get $13 + f64.add + f64.mul + f64.add + local.get $8 + local.get $17 + f64.sub + local.get $16 + f64.add + f64.add + local.get $0 + local.get $9 + f64.mul + local.get $0 + f64.const 0.5000000000000007 + f64.mul + f64.const -0.6666666666666679 + f64.add + local.get $9 + local.get $0 + f64.const -0.6666666663487739 + f64.mul + f64.const 0.7999999995323976 + f64.add + local.get $9 + local.get $0 + f64.const 1.0000415263675542 + f64.mul + f64.const -1.142909628459501 + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + local.tee $0 + f64.add + local.tee $8 + f64.sub + local.get $0 + f64.add + global.set $~lib/util/math/log_tail + block $~lib/util/math/exp_inline|inlined.0 (result f64) local.get $4 i64.const -134217728 i64.and diff --git a/tests/compiler/std/typedarray.optimized.wat b/tests/compiler/std/typedarray.optimized.wat index 9b5dbe18b0..8ea5a04338 100644 --- a/tests/compiler/std/typedarray.optimized.wat +++ b/tests/compiler/std/typedarray.optimized.wat @@ -27446,14 +27446,14 @@ (local $4 i64) (local $5 i64) (local $6 i64) - (local $7 i32) - (local $8 i32) - (local $9 i32) + (local $7 i64) + (local $8 i64) + (local $9 i64) (local $10 i64) (local $11 i64) - (local $12 i64) - (local $13 i64) - (local $14 i64) + (local $12 i32) + (local $13 i32) + (local $14 i32) (local $15 i64) (local $16 i64) local.get $1 @@ -27476,19 +27476,19 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $7 + local.tee $12 i32.const 1 - local.get $7 + local.get $12 select i32.const 1075 i32.sub - local.tee $8 + local.tee $13 i32.const 1 i32.sub local.get $2 i64.const 4503599627370495 i64.and - local.get $7 + local.get $12 i32.const 0 i32.ne i64.extend_i32_u @@ -27503,11 +27503,11 @@ local.tee $4 i64.clz i32.wrap_i64 - local.tee $7 + local.tee $12 i32.sub - local.set $9 + local.set $14 local.get $4 - local.get $7 + local.get $12 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -27517,25 +27517,25 @@ i64.eq i32.const 1 i32.add - local.tee $7 + local.tee $12 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $8 - local.get $7 + local.get $13 + local.get $12 i32.sub - local.get $9 + local.get $14 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $9 + local.get $14 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $7 + local.tee $12 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -27544,9 +27544,9 @@ f64.add local.tee $1 i32.trunc_f64_s - local.tee $8 + local.tee $13 local.get $1 - local.get $8 + local.get $13 f64.convert_i32_s f64.ne i32.add @@ -27554,18 +27554,18 @@ i32.shr_s i32.const 1 i32.add - local.tee $8 + local.tee $13 i32.const 3 i32.shl - local.tee $9 + local.tee $14 i32.sub global.set $~lib/util/number/_K - local.get $9 + local.get $14 i32.const 9864 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $8 + local.get $13 i32.const 1 i32.shl i32.const 10560 @@ -27583,12 +27583,12 @@ local.get $4 i64.const 32 i64.shr_u - local.tee $6 + local.tee $9 global.get $~lib/util/number/_frc_pow - local.tee $5 + local.tee $15 i64.const 4294967295 i64.and - local.tee $10 + local.tee $8 local.tee $4 i64.mul local.get $2 @@ -27599,60 +27599,60 @@ i64.add local.set $4 global.get $~lib/util/number/_frc_plus - local.tee $11 + local.tee $6 i64.const 4294967295 i64.and - local.set $12 - local.get $11 + local.set $5 + local.get $6 i64.const 32 i64.shr_u - local.tee $11 - local.get $10 + local.tee $10 + local.get $8 i64.mul - local.get $10 - local.get $12 + local.get $5 + local.get $8 i64.mul i64.const 32 i64.shr_u i64.add - local.set $13 + local.set $6 global.get $~lib/util/number/_frc_minus - local.tee $14 + local.tee $11 i64.const 4294967295 i64.and - local.set $15 - local.get $14 + local.set $7 + local.get $11 i64.const 32 i64.shr_u - local.tee $14 - local.get $10 + local.tee $11 + local.get $8 i64.mul - local.get $10 - local.get $15 + local.get $7 + local.get $8 i64.mul i64.const 32 i64.shr_u i64.add - local.set $16 + local.set $8 local.get $3 i32.const 1 i32.shl local.get $0 i32.add local.get $0 - local.get $6 - local.get $5 + local.get $9 + local.get $15 i64.const 32 i64.shr_u - local.tee $10 - local.tee $5 + local.tee $15 + local.tee $16 i64.mul local.get $4 i64.const 32 i64.shr_u i64.add local.get $2 - local.get $5 + local.get $16 i64.mul local.get $4 i64.const 4294967295 @@ -27664,16 +27664,16 @@ i64.shr_u i64.add local.get $10 - local.get $11 + local.get $15 i64.mul - local.get $13 + local.get $6 i64.const 32 i64.shr_u i64.add - local.get $10 - local.get $12 + local.get $5 + local.get $15 i64.mul - local.get $13 + local.get $6 i64.const 4294967295 i64.and i64.add @@ -27686,22 +27686,22 @@ i64.sub local.tee $2 global.get $~lib/util/number/_exp_pow - local.get $7 + local.get $12 i32.add i32.const -64 i32.sub local.get $2 - local.get $10 - local.get $14 + local.get $11 + local.get $15 i64.mul - local.get $16 + local.get $8 i64.const 32 i64.shr_u i64.add - local.get $10 + local.get $7 local.get $15 i64.mul - local.get $16 + local.get $8 i64.const 4294967295 i64.and i64.add diff --git a/tests/compiler/wasi/trace.optimized.wat b/tests/compiler/wasi/trace.optimized.wat index 512db4d88a..3ea907354d 100644 --- a/tests/compiler/wasi/trace.optimized.wat +++ b/tests/compiler/wasi/trace.optimized.wat @@ -2912,14 +2912,14 @@ (local $4 i64) (local $5 i64) (local $6 i64) - (local $7 i32) - (local $8 i32) - (local $9 i32) + (local $7 i64) + (local $8 i64) + (local $9 i64) (local $10 i64) (local $11 i64) - (local $12 i64) - (local $13 i64) - (local $14 i64) + (local $12 i32) + (local $13 i32) + (local $14 i32) (local $15 i64) (local $16 i64) local.get $1 @@ -2942,19 +2942,19 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $7 + local.tee $12 i32.const 1 - local.get $7 + local.get $12 select i32.const 1075 i32.sub - local.tee $8 + local.tee $13 i32.const 1 i32.sub local.get $2 i64.const 4503599627370495 i64.and - local.get $7 + local.get $12 i32.const 0 i32.ne i64.extend_i32_u @@ -2969,11 +2969,11 @@ local.tee $4 i64.clz i32.wrap_i64 - local.tee $7 + local.tee $12 i32.sub - local.set $9 + local.set $14 local.get $4 - local.get $7 + local.get $12 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -2983,25 +2983,25 @@ i64.eq i32.const 1 i32.add - local.tee $7 + local.tee $12 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $8 - local.get $7 + local.get $13 + local.get $12 i32.sub - local.get $9 + local.get $14 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $9 + local.get $14 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $7 + local.tee $12 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -3010,9 +3010,9 @@ f64.add local.tee $1 i32.trunc_f64_s - local.tee $8 + local.tee $13 local.get $1 - local.get $8 + local.get $13 f64.convert_i32_s f64.ne i32.add @@ -3020,18 +3020,18 @@ i32.shr_s i32.const 1 i32.add - local.tee $8 + local.tee $13 i32.const 3 i32.shl - local.tee $9 + local.tee $14 i32.sub global.set $~lib/util/number/_K - local.get $9 + local.get $14 i32.const 1328 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $8 + local.get $13 i32.const 1 i32.shl i32.const 2024 @@ -3049,12 +3049,12 @@ local.get $4 i64.const 32 i64.shr_u - local.tee $6 + local.tee $9 global.get $~lib/util/number/_frc_pow - local.tee $5 + local.tee $15 i64.const 4294967295 i64.and - local.tee $10 + local.tee $8 local.tee $4 i64.mul local.get $2 @@ -3065,60 +3065,60 @@ i64.add local.set $4 global.get $~lib/util/number/_frc_plus - local.tee $11 + local.tee $6 i64.const 4294967295 i64.and - local.set $12 - local.get $11 + local.set $5 + local.get $6 i64.const 32 i64.shr_u - local.tee $11 - local.get $10 + local.tee $10 + local.get $8 i64.mul - local.get $10 - local.get $12 + local.get $5 + local.get $8 i64.mul i64.const 32 i64.shr_u i64.add - local.set $13 + local.set $6 global.get $~lib/util/number/_frc_minus - local.tee $14 + local.tee $11 i64.const 4294967295 i64.and - local.set $15 - local.get $14 + local.set $7 + local.get $11 i64.const 32 i64.shr_u - local.tee $14 - local.get $10 + local.tee $11 + local.get $8 i64.mul - local.get $10 - local.get $15 + local.get $7 + local.get $8 i64.mul i64.const 32 i64.shr_u i64.add - local.set $16 + local.set $8 local.get $3 i32.const 1 i32.shl local.get $0 i32.add local.get $0 - local.get $6 - local.get $5 + local.get $9 + local.get $15 i64.const 32 i64.shr_u - local.tee $10 - local.tee $5 + local.tee $15 + local.tee $16 i64.mul local.get $4 i64.const 32 i64.shr_u i64.add local.get $2 - local.get $5 + local.get $16 i64.mul local.get $4 i64.const 4294967295 @@ -3130,16 +3130,16 @@ i64.shr_u i64.add local.get $10 - local.get $11 + local.get $15 i64.mul - local.get $13 + local.get $6 i64.const 32 i64.shr_u i64.add - local.get $10 - local.get $12 + local.get $5 + local.get $15 i64.mul - local.get $13 + local.get $6 i64.const 4294967295 i64.and i64.add @@ -3152,22 +3152,22 @@ i64.sub local.tee $2 global.get $~lib/util/number/_exp_pow - local.get $7 + local.get $12 i32.add i32.const -64 i32.sub local.get $2 - local.get $10 - local.get $14 + local.get $11 + local.get $15 i64.mul - local.get $16 + local.get $8 i64.const 32 i64.shr_u i64.add - local.get $10 + local.get $7 local.get $15 i64.mul - local.get $16 + local.get $8 i64.const 4294967295 i64.and i64.add From 436e57ba554abcc5b5295877b7afdfb45f402ecf Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 21 Sep 2021 08:18:04 +0300 Subject: [PATCH 19/54] update --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 9e9955736a..8c104a883e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "102.0.0-nightly.20210918", + "binaryen": "102.0.0-nightly.20210921", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" @@ -733,9 +733,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "102.0.0-nightly.20210918", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210918.tgz", - "integrity": "sha512-+V9ER3l087PLuAZ9SootE6hi6LApfIbs7qB03skM/EEDgemg+O4KkvxAWePwYpFqDfPKWGmxRaz4bVmSNzxr/A==", + "version": "102.0.0-nightly.20210921", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210921.tgz", + "integrity": "sha512-w55VaGHgyWyDus9c+7wmF5jRWpN/jYroCFFQAgQKvcw9r5rO+w1CnD8IF42vEv4tfvGzgGwut1z6a/wwTyoRMQ==", "bin": { "wasm-opt": "bin/wasm-opt" } @@ -3508,9 +3508,9 @@ "dev": true }, "binaryen": { - "version": "102.0.0-nightly.20210918", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210918.tgz", - "integrity": "sha512-+V9ER3l087PLuAZ9SootE6hi6LApfIbs7qB03skM/EEDgemg+O4KkvxAWePwYpFqDfPKWGmxRaz4bVmSNzxr/A==" + "version": "102.0.0-nightly.20210921", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210921.tgz", + "integrity": "sha512-w55VaGHgyWyDus9c+7wmF5jRWpN/jYroCFFQAgQKvcw9r5rO+w1CnD8IF42vEv4tfvGzgGwut1z6a/wwTyoRMQ==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index cbc0bf04ae..a6c49156ff 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "url": "https://github.com/AssemblyScript/assemblyscript/issues" }, "dependencies": { - "binaryen": "102.0.0-nightly.20210918", + "binaryen": "102.0.0-nightly.20210921", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" From ec9f31fab503a73b8c8c365d5dfb01a5bf28f2fd Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Thu, 23 Sep 2021 09:05:02 +0300 Subject: [PATCH 20/54] update --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 8c104a883e..82a803a744 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "102.0.0-nightly.20210921", + "binaryen": "102.0.0-nightly.20210923", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" @@ -733,9 +733,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "102.0.0-nightly.20210921", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210921.tgz", - "integrity": "sha512-w55VaGHgyWyDus9c+7wmF5jRWpN/jYroCFFQAgQKvcw9r5rO+w1CnD8IF42vEv4tfvGzgGwut1z6a/wwTyoRMQ==", + "version": "102.0.0-nightly.20210923", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210923.tgz", + "integrity": "sha512-rdW45DGXB8+u8rpwFU3qyg4/RNJya5Vj9O8Yw8bVdvB/dg/K0LBNcV3/oPO3zL14Y4gJfvP1vQvBz+5RuZIe+A==", "bin": { "wasm-opt": "bin/wasm-opt" } @@ -3508,9 +3508,9 @@ "dev": true }, "binaryen": { - "version": "102.0.0-nightly.20210921", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210921.tgz", - "integrity": "sha512-w55VaGHgyWyDus9c+7wmF5jRWpN/jYroCFFQAgQKvcw9r5rO+w1CnD8IF42vEv4tfvGzgGwut1z6a/wwTyoRMQ==" + "version": "102.0.0-nightly.20210923", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210923.tgz", + "integrity": "sha512-rdW45DGXB8+u8rpwFU3qyg4/RNJya5Vj9O8Yw8bVdvB/dg/K0LBNcV3/oPO3zL14Y4gJfvP1vQvBz+5RuZIe+A==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index a6c49156ff..9392b11498 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "url": "https://github.com/AssemblyScript/assemblyscript/issues" }, "dependencies": { - "binaryen": "102.0.0-nightly.20210921", + "binaryen": "102.0.0-nightly.20210923", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" From 459cce6fdc5fee63a8e45f53740ab83b186fa084 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Thu, 23 Sep 2021 21:31:07 +0300 Subject: [PATCH 21/54] add vacuum after simplify-locals-notee-nostructure --- src/module.ts | 1 + tests/compiler/assert-nonnull.optimized.wat | 116 +- tests/compiler/call-super.optimized.wat | 861 +- tests/compiler/class-implements.optimized.wat | 76 +- .../class-overloading-cast.optimized.wat | 98 +- .../compiler/class-overloading.optimized.wat | 281 +- tests/compiler/class.optimized.wat | 73 +- tests/compiler/constructor.optimized.wat | 117 +- tests/compiler/do.optimized.wat | 557 +- .../empty-exportruntime.optimized.wat | 18 +- tests/compiler/empty-new.optimized.wat | 45 +- tests/compiler/exports.optimized.wat | 83 +- .../exportstar-rereexport.optimized.wat | 281 +- .../extends-baseaggregate.optimized.wat | 682 +- .../compiler/extends-recursive.optimized.wat | 56 +- tests/compiler/features/simd.optimized.wat | 130 +- .../field-initialization.optimized.wat | 73 +- tests/compiler/field.optimized.wat | 150 +- tests/compiler/for.optimized.wat | 541 +- tests/compiler/function-call.optimized.wat | 45 +- .../function-expression.optimized.wat | 783 +- tests/compiler/function-types.optimized.wat | 11 +- tests/compiler/getter-call.optimized.wat | 511 +- tests/compiler/heap.optimized.wat | 16 +- .../implicit-getter-setter.optimized.wat | 59 +- tests/compiler/infer-array.optimized.wat | 173 +- tests/compiler/infer-generic.optimized.wat | 581 +- tests/compiler/inlining.optimized.wat | 383 +- tests/compiler/instanceof-class.optimized.wat | 147 +- tests/compiler/issues/1095.optimized.wat | 584 +- tests/compiler/issues/1225.optimized.wat | 55 +- tests/compiler/issues/1699.optimized.wat | 746 +- tests/compiler/logical.optimized.wat | 45 +- tests/compiler/loop-flow.optimized.wat | 18 +- tests/compiler/managed-cast.optimized.wat | 138 +- tests/compiler/memmove.optimized.wat | 251 +- tests/compiler/new.optimized.wat | 67 +- tests/compiler/number.optimized.wat | 274 +- tests/compiler/object-literal.optimized.wat | 874 +- .../optional-typeparameters.optimized.wat | 81 +- tests/compiler/reexport.optimized.wat | 75 +- tests/compiler/rereexport.optimized.wat | 53 +- tests/compiler/resolve-access.optimized.wat | 657 +- tests/compiler/resolve-binary.optimized.wat | 190 +- .../resolve-elementaccess.optimized.wat | 235 +- .../resolve-function-expression.optimized.wat | 157 +- tests/compiler/resolve-nested.optimized.wat | 83 +- tests/compiler/resolve-new.optimized.wat | 45 +- .../resolve-propertyaccess.optimized.wat | 99 +- tests/compiler/resolve-ternary.optimized.wat | 189 +- tests/compiler/resolve-unary.optimized.wat | 124 +- tests/compiler/return.optimized.wat | 4 + tests/compiler/rt/finalize.optimized.wat | 45 +- tests/compiler/rt/instanceof.optimized.wat | 67 +- .../runtime-incremental-export.optimized.wat | 18 +- .../rt/runtime-minimal-export.optimized.wat | 58 +- tests/compiler/std-wasi/console.optimized.wat | 1222 +- tests/compiler/std-wasi/crypto.optimized.wat | 455 +- tests/compiler/std-wasi/process.optimized.wat | 392 +- tests/compiler/std/array-access.optimized.wat | 40 +- .../compiler/std/array-literal.optimized.wat | 21 +- tests/compiler/std/array.optimized.wat | 8236 ++-- tests/compiler/std/arraybuffer.optimized.wat | 73 +- tests/compiler/std/dataview.optimized.wat | 73 +- tests/compiler/std/date.optimized.wat | 896 +- tests/compiler/std/map.optimized.wat | 12711 +++--- tests/compiler/std/math.optimized.wat | 2569 +- tests/compiler/std/mod.optimized.wat | 278 +- tests/compiler/std/new.optimized.wat | 45 +- .../std/operator-overloading.optimized.wat | 195 +- tests/compiler/std/set.optimized.wat | 8159 ++-- tests/compiler/std/static-array.optimized.wat | 23 +- tests/compiler/std/staticarray.optimized.wat | 1762 +- .../std/string-casemapping.optimized.wat | 1245 +- .../std/string-encoding.optimized.wat | 689 +- tests/compiler/std/string.optimized.wat | 1583 +- tests/compiler/std/symbol.optimized.wat | 532 +- tests/compiler/std/typedarray.optimized.wat | 31853 ++++++++-------- tests/compiler/std/uri.optimized.wat | 49 +- tests/compiler/super-inline.optimized.wat | 75 +- tests/compiler/templateliteral.optimized.wat | 864 +- tests/compiler/throw.optimized.wat | 238 +- tests/compiler/typeof.optimized.wat | 45 +- tests/compiler/wasi/trace.optimized.wat | 364 +- tests/compiler/while.optimized.wat | 645 +- 85 files changed, 43513 insertions(+), 43999 deletions(-) diff --git a/src/module.ts b/src/module.ts index 2cffda13b2..f1a322d5c7 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2276,6 +2276,7 @@ export class Module { passes.push("flatten"); passes.push("vacuum"); passes.push("simplify-locals-notee-nostructure"); + passes.push("vacuum"); passes.push("licm"); passes.push("merge-locals"); passes.push("reorder-locals"); diff --git a/tests/compiler/assert-nonnull.optimized.wat b/tests/compiler/assert-nonnull.optimized.wat index 7974350127..2a632a59f7 100644 --- a/tests/compiler/assert-nonnull.optimized.wat +++ b/tests/compiler/assert-nonnull.optimized.wat @@ -146,11 +146,11 @@ ) (func $export:assert-nonnull/testProp (param $0 i32) (result i32) (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1404 i32.lt_s @@ -206,11 +206,11 @@ ) (func $export:assert-nonnull/testArr (param $0 i32) (result i32) (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1404 i32.lt_s @@ -306,11 +306,11 @@ ) (func $export:assert-nonnull/testElem (param $0 i32) (result i32) (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1404 i32.lt_s @@ -366,21 +366,9 @@ ) (func $export:assert-nonnull/testAll (param $0 i32) (result i32) (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner1 global.get $~lib/memory/__stack_pointer - i32.const 1404 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store - local.get $1 - i32.const 8 + i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -389,9 +377,21 @@ br_if $folding-inner1 global.get $~lib/memory/__stack_pointer local.tee $1 - i64.const 0 - i64.store - block $__inlined_func$assert-nonnull/testAll + local.get $0 + i32.store + block $__inlined_func$assert-nonnull/testAll (result i32) + local.get $1 + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1404 + i32.lt_s + br_if $folding-inner1 + global.get $~lib/memory/__stack_pointer + local.tee $1 + i64.const 0 + i64.store block $folding-inner0 local.get $0 i32.eqz @@ -419,6 +419,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 br $__inlined_func$assert-nonnull/testAll end i32.const 1056 @@ -432,7 +433,6 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 return end i32.const 17808 @@ -444,21 +444,9 @@ ) (func $export:assert-nonnull/testAll2 (param $0 i32) (result i32) (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner1 global.get $~lib/memory/__stack_pointer - i32.const 1404 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store - local.get $1 - i32.const 8 + i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -467,9 +455,21 @@ br_if $folding-inner1 global.get $~lib/memory/__stack_pointer local.tee $1 - i64.const 0 - i64.store - block $__inlined_func$assert-nonnull/testAll2 + local.get $0 + i32.store + block $__inlined_func$assert-nonnull/testAll2 (result i32) + local.get $1 + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1404 + i32.lt_s + br_if $folding-inner1 + global.get $~lib/memory/__stack_pointer + local.tee $1 + i64.const 0 + i64.store block $folding-inner0 local.get $0 i32.eqz @@ -497,6 +497,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 br $__inlined_func$assert-nonnull/testAll2 end i32.const 1056 @@ -510,7 +511,6 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 return end i32.const 17808 @@ -549,11 +549,11 @@ ) (func $export:assert-nonnull/testFn2 (param $0 i32) (result i32) (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1404 i32.lt_s @@ -609,11 +609,11 @@ ) (func $export:assert-nonnull/testRet (param $0 i32) (result i32) (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1404 i32.lt_s @@ -698,11 +698,11 @@ ) (func $export:assert-nonnull/testObjRet (param $0 i32) (result i32) (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1404 i32.lt_s diff --git a/tests/compiler/call-super.optimized.wat b/tests/compiler/call-super.optimized.wat index ff814c201d..272c066c50 100644 --- a/tests/compiler/call-super.optimized.wat +++ b/tests/compiler/call-super.optimized.wat @@ -1339,8 +1339,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -1645,11 +1645,11 @@ i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 1596 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $1 i32.const 0 @@ -1661,7 +1661,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1596 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -1683,7 +1683,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1596 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -1781,437 +1781,435 @@ i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner00 - global.get $~lib/memory/__stack_pointer - i32.const 1596 - i32.lt_s - br_if $folding-inner00 + global.get $~lib/memory/__stack_pointer + i32.const 1596 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $1 + i32.const 0 + i32.store + local.get $1 + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1596 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i32.const 0 + i32.store + local.get $0 + i32.const 8 + i32.const 5 + call $~lib/rt/itcms/__new + local.tee $0 + i32.store + local.get $0 + i32.const 2 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1596 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store + local.get $0 + i32.eqz + if global.get $~lib/memory/__stack_pointer - local.tee $1 - i32.const 0 - i32.store - local.get $1 i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1596 - i32.lt_s - br_if $folding-inner00 - global.get $~lib/memory/__stack_pointer - local.tee $0 - i32.const 0 - i32.store - local.get $0 - i32.const 8 - i32.const 5 + i32.const 6 call $~lib/rt/itcms/__new local.tee $0 i32.store - local.get $0 - i32.const 2 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1596 - i32.lt_s - br_if $folding-inner00 - global.get $~lib/memory/__stack_pointer + end + local.get $0 + i32.const 1 + i32.store + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $0 + i32.store + local.get $0 + i32.load + i32.const 1 + i32.ne + if i32.const 0 - i32.store - local.get $0 - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.const 6 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store - end - local.get $0 - i32.const 1 - i32.store - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $0 - i32.store - local.get $0 - i32.load - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 38 - i32.const 5 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - i32.const 2 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 39 - i32.const 5 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $0 - i32.store - local.get $0 - i32.load - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 45 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - i32.const 2 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 46 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1596 - i32.lt_s - br_if $folding-inner00 - global.get $~lib/memory/__stack_pointer - local.tee $1 + i32.const 1056 + i32.const 38 + i32.const 5 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + i32.const 2 + i32.ne + if i32.const 0 - i32.store - local.get $1 - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1596 - i32.lt_s - br_if $folding-inner00 - global.get $~lib/memory/__stack_pointer - local.tee $0 + i32.const 1056 + i32.const 39 + i32.const 5 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $1 + local.get $0 + i32.store + local.get $0 + i32.load + i32.const 1 + i32.ne + if i32.const 0 - i32.store - local.get $0 + i32.const 1056 + i32.const 45 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + i32.const 2 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 46 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1596 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $1 + i32.const 0 + i32.store + local.get $1 + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1596 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i32.const 0 + i32.store + local.get $0 + i32.const 8 + i32.const 7 + call $~lib/rt/itcms/__new + local.tee $0 + i32.store + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1596 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store + local.get $0 + i32.eqz + if + global.get $~lib/memory/__stack_pointer + i32.const 4 i32.const 8 - i32.const 7 call $~lib/rt/itcms/__new local.tee $0 i32.store - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1596 - i32.lt_s - br_if $folding-inner00 - global.get $~lib/memory/__stack_pointer + end + local.get $0 + i32.const 1 + i32.store + local.get $0 + i32.load + i32.const 1 + i32.ne + if i32.const 0 - i32.store - local.get $0 - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.const 8 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store - end - local.get $0 - i32.const 1 - i32.store - local.get $0 - i32.load - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 56 - i32.const 5 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $0 - i32.store - local.get $0 - i32.const 2 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $0 - i32.store - local.get $0 - i32.load - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 66 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - i32.const 2 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 67 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1596 - i32.lt_s - br_if $folding-inner00 - global.get $~lib/memory/__stack_pointer - local.tee $1 + i32.const 1056 + i32.const 56 + i32.const 5 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $0 + i32.store + local.get $0 + i32.const 2 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $1 + local.get $0 + i32.store + local.get $0 + i32.load + i32.const 1 + i32.ne + if i32.const 0 - i32.store - local.get $1 - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1596 - i32.lt_s - br_if $folding-inner00 - global.get $~lib/memory/__stack_pointer - local.tee $0 + i32.const 1056 + i32.const 66 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + i32.const 2 + i32.ne + if i32.const 0 - i32.store - local.get $0 - i32.const 8 - i32.const 9 + i32.const 1056 + i32.const 67 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1596 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $1 + i32.const 0 + i32.store + local.get $1 + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1596 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i32.const 0 + i32.store + local.get $0 + i32.const 8 + i32.const 9 + call $~lib/rt/itcms/__new + local.tee $0 + i32.store + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1596 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store + local.get $0 + i32.eqz + if + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.const 10 call $~lib/rt/itcms/__new local.tee $0 i32.store - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1596 - i32.lt_s - br_if $folding-inner00 - global.get $~lib/memory/__stack_pointer + end + local.get $0 + i32.const 1 + i32.store + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $0 + i32.store + local.get $0 + i32.const 2 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $1 + local.get $0 + i32.store + local.get $0 + i32.load + i32.const 1 + i32.ne + if i32.const 0 - i32.store - local.get $0 - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.const 10 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store - end - local.get $0 - i32.const 1 - i32.store - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $0 - i32.store - local.get $0 - i32.const 2 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $0 - i32.store - local.get $0 - i32.load - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 84 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - i32.const 2 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 85 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1596 - i32.lt_s - br_if $folding-inner00 - global.get $~lib/memory/__stack_pointer - local.tee $1 + i32.const 1056 + i32.const 84 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + i32.const 2 + i32.ne + if i32.const 0 - i32.store - local.get $1 - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1596 - i32.lt_s - br_if $folding-inner00 + i32.const 1056 + i32.const 85 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1596 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $1 + i32.const 0 + i32.store + local.get $1 + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1596 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i32.const 0 + i32.store + local.get $0 + i32.const 8 + i32.const 11 + call $~lib/rt/itcms/__new + local.tee $0 + i32.store + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1596 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store + local.get $0 + i32.eqz + if global.get $~lib/memory/__stack_pointer - local.tee $0 - i32.const 0 - i32.store - local.get $0 - i32.const 8 - i32.const 11 + i32.const 4 + i32.const 12 call $~lib/rt/itcms/__new local.tee $0 i32.store - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1596 - i32.lt_s - br_if $folding-inner00 - global.get $~lib/memory/__stack_pointer + end + local.get $0 + i32.const 1 + i32.store + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $0 + i32.store + local.get $0 + i32.const 2 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $1 + local.get $0 + i32.store + local.get $0 + i32.load + i32.const 1 + i32.ne + if i32.const 0 - i32.store - local.get $0 - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.const 12 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store - end - local.get $0 - i32.const 1 - i32.store - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $0 - i32.store - local.get $0 - i32.const 2 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $0 - i32.store - local.get $0 - i32.load - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 104 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - i32.const 2 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 105 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - return + i32.const 1056 + i32.const 104 + i32.const 3 + call $~lib/builtins/abort + unreachable end + local.get $0 + i32.load offset=4 + i32.const 2 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 105 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + return end i32.const 18000 i32.const 18048 @@ -2228,19 +2226,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -2250,15 +2248,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -2281,7 +2280,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -2291,23 +2290,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -2315,7 +2314,7 @@ else i32.const 1488 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1296 @@ -2325,7 +2324,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1492 @@ -2340,16 +2339,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -2357,11 +2356,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/class-implements.optimized.wat b/tests/compiler/class-implements.optimized.wat index 207fbc5d85..5dd7aa0c53 100644 --- a/tests/compiler/class-implements.optimized.wat +++ b/tests/compiler/class-implements.optimized.wat @@ -1078,7 +1078,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1086,7 +1086,7 @@ memory.size local.tee $1 i32.const 4 - local.get $2 + local.get $3 i32.load offset=1568 local.get $1 i32.const 16 @@ -1101,16 +1101,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $1 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1118,7 +1118,7 @@ unreachable end end - local.get $2 + local.get $3 local.get $1 i32.const 16 i32.shl @@ -1126,7 +1126,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1153,7 +1153,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 @@ -1163,7 +1163,7 @@ i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $2 i32.const 16 i32.ge_u if @@ -1178,13 +1178,13 @@ i32.const 32 i32.add local.tee $4 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 + local.get $3 local.get $4 call $~lib/rt/tlsf/insertBlock else @@ -1219,8 +1219,8 @@ i32.load offset=8 local.set $2 local.get $1 - global.get $~lib/rt/itcms/white local.get $0 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $1 @@ -1395,12 +1395,11 @@ ) (func $class-implements/C#constructor (param $0 i32) (result i32) (local $1 i32) - (local $2 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1564 i32.lt_s @@ -1573,19 +1572,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1595,15 +1594,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1626,7 +1626,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1636,23 +1636,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1660,7 +1660,7 @@ else i32.const 1504 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1248 @@ -1670,7 +1670,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1508 @@ -1685,16 +1685,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -1702,11 +1702,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/class-overloading-cast.optimized.wat b/tests/compiler/class-overloading-cast.optimized.wat index 6a4a6c6ed0..1a9d683f96 100644 --- a/tests/compiler/class-overloading-cast.optimized.wat +++ b/tests/compiler/class-overloading-cast.optimized.wat @@ -1098,7 +1098,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1106,7 +1106,7 @@ memory.size local.tee $1 i32.const 4 - local.get $2 + local.get $3 i32.load offset=1568 local.get $1 i32.const 16 @@ -1121,16 +1121,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $1 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1138,7 +1138,7 @@ unreachable end end - local.get $2 + local.get $3 local.get $1 i32.const 16 i32.shl @@ -1146,7 +1146,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1173,7 +1173,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 @@ -1183,7 +1183,7 @@ i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $2 i32.const 16 i32.ge_u if @@ -1198,13 +1198,13 @@ i32.const 32 i32.add local.tee $4 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 + local.get $3 local.get $4 call $~lib/rt/tlsf/insertBlock else @@ -1239,8 +1239,8 @@ i32.load offset=8 local.set $2 local.get $1 - global.get $~lib/rt/itcms/white local.get $0 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $1 @@ -1448,11 +1448,12 @@ (func $start:class-overloading-cast (local $0 i32) (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer + (local $2 i32) block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1700 i32.lt_s @@ -1678,15 +1679,17 @@ local.tee $1 i32.store offset=8 local.get $0 - i32.const 1488 - i32.const 1456 local.get $1 i32.const 8 i32.sub i32.load i32.const 6 i32.eq - select + if (result i32) + i32.const 1488 + else + i32.const 1456 + end local.tee $1 i32.store local.get $0 @@ -1756,13 +1759,14 @@ global.set $class-overloading-cast/c global.get $~lib/memory/__stack_pointer local.tee $0 - global.get $class-overloading-cast/c local.tee $1 + global.get $class-overloading-cast/c + local.tee $2 i32.store offset=8 - local.get $0 + local.get $1 i32.const 1600 i32.store offset=12 - local.get $1 + local.get $2 i32.const 8 i32.sub i32.load @@ -1787,13 +1791,14 @@ end global.get $~lib/memory/__stack_pointer local.tee $0 - global.get $class-overloading-cast/c local.tee $1 + global.get $class-overloading-cast/c + local.tee $2 i32.store offset=8 - local.get $0 + local.get $1 i32.const 1600 i32.store offset=12 - local.get $1 + local.get $2 i32.const 8 i32.sub i32.load @@ -1871,19 +1876,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1893,15 +1898,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1924,7 +1930,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1934,23 +1940,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1958,7 +1964,7 @@ else i32.const 1616 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1248 @@ -1968,7 +1974,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1620 @@ -1983,16 +1989,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -2000,11 +2006,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/class-overloading.optimized.wat b/tests/compiler/class-overloading.optimized.wat index 2aecef4880..0de89ef3b0 100644 --- a/tests/compiler/class-overloading.optimized.wat +++ b/tests/compiler/class-overloading.optimized.wat @@ -1128,7 +1128,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1136,7 +1136,7 @@ memory.size local.tee $1 i32.const 4 - local.get $2 + local.get $3 i32.load offset=1568 local.get $1 i32.const 16 @@ -1151,16 +1151,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $1 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1168,7 +1168,7 @@ unreachable end end - local.get $2 + local.get $3 local.get $1 i32.const 16 i32.shl @@ -1176,7 +1176,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1203,7 +1203,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 @@ -1213,7 +1213,7 @@ i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $2 i32.const 16 i32.ge_u if @@ -1228,13 +1228,13 @@ i32.const 32 i32.add local.tee $4 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 + local.get $3 local.get $4 call $~lib/rt/tlsf/insertBlock else @@ -1269,8 +1269,8 @@ i32.load offset=8 local.set $2 local.get $1 - global.get $~lib/rt/itcms/white local.get $0 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $1 @@ -1574,11 +1574,11 @@ (func $start:class-overloading (local $0 i32) (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1932 i32.lt_s @@ -1973,30 +1973,30 @@ global.get $class-overloading/a local.tee $0 i32.store - block $__inlined_func$class-overloading/A#b@virtual21 - block $default22 - block $case223 - block $case124 - block $case025 + block $__inlined_func$class-overloading/A#b@virtual22 + block $default23 + block $case224 + block $case125 + block $case026 local.get $0 i32.const 8 i32.sub i32.load i32.const 4 i32.sub - br_table $case025 $case124 $case025 $case025 $case223 $default22 + br_table $case026 $case125 $case026 $case026 $case224 $default23 end i32.const 1520 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#b@virtual21 + br $__inlined_func$class-overloading/A#b@virtual22 end i32.const 1616 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#b@virtual21 + br $__inlined_func$class-overloading/A#b@virtual22 end i32.const 1648 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#b@virtual21 + br $__inlined_func$class-overloading/A#b@virtual22 end i32.const 1488 global.set $class-overloading/which @@ -2027,30 +2027,30 @@ global.get $class-overloading/a local.tee $0 i32.store - block $__inlined_func$class-overloading/A#get:c@virtual30 - block $default31 - block $case232 - block $case133 - block $case034 + block $__inlined_func$class-overloading/A#get:c@virtual31 + block $default32 + block $case233 + block $case134 + block $case035 local.get $0 i32.const 8 i32.sub i32.load i32.const 4 i32.sub - br_table $case034 $case133 $case034 $case034 $case232 $default31 + br_table $case035 $case134 $case035 $case035 $case233 $default32 end i32.const 1520 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#get:c@virtual30 + br $__inlined_func$class-overloading/A#get:c@virtual31 end i32.const 1616 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#get:c@virtual30 + br $__inlined_func$class-overloading/A#get:c@virtual31 end i32.const 1648 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#get:c@virtual30 + br $__inlined_func$class-overloading/A#get:c@virtual31 end i32.const 1488 global.set $class-overloading/which @@ -2079,30 +2079,30 @@ global.get $class-overloading/a local.tee $0 i32.store - block $__inlined_func$class-overloading/A#b@virtual39 - block $default40 - block $case241 - block $case142 - block $case043 + block $__inlined_func$class-overloading/A#b@virtual40 + block $default41 + block $case242 + block $case143 + block $case044 local.get $0 i32.const 8 i32.sub i32.load i32.const 4 i32.sub - br_table $case043 $case142 $case043 $case043 $case241 $default40 + br_table $case044 $case143 $case044 $case044 $case242 $default41 end i32.const 1520 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#b@virtual39 + br $__inlined_func$class-overloading/A#b@virtual40 end i32.const 1616 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#b@virtual39 + br $__inlined_func$class-overloading/A#b@virtual40 end i32.const 1648 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#b@virtual39 + br $__inlined_func$class-overloading/A#b@virtual40 end i32.const 1488 global.set $class-overloading/which @@ -2163,30 +2163,30 @@ global.get $class-overloading/a local.tee $0 i32.store - block $__inlined_func$class-overloading/A#b@virtual48 - block $default49 - block $case250 - block $case151 - block $case052 + block $__inlined_func$class-overloading/A#b@virtual49 + block $default50 + block $case251 + block $case152 + block $case053 local.get $0 i32.const 8 i32.sub i32.load i32.const 4 i32.sub - br_table $case052 $case151 $case052 $case052 $case250 $default49 + br_table $case053 $case152 $case053 $case053 $case251 $default50 end i32.const 1520 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#b@virtual48 + br $__inlined_func$class-overloading/A#b@virtual49 end i32.const 1616 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#b@virtual48 + br $__inlined_func$class-overloading/A#b@virtual49 end i32.const 1648 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#b@virtual48 + br $__inlined_func$class-overloading/A#b@virtual49 end i32.const 1488 global.set $class-overloading/which @@ -2217,30 +2217,30 @@ global.get $class-overloading/a local.tee $0 i32.store - block $__inlined_func$class-overloading/A#get:c@virtual57 - block $default58 - block $case259 - block $case160 - block $case061 + block $__inlined_func$class-overloading/A#get:c@virtual58 + block $default59 + block $case260 + block $case161 + block $case062 local.get $0 i32.const 8 i32.sub i32.load i32.const 4 i32.sub - br_table $case061 $case160 $case061 $case061 $case259 $default58 + br_table $case062 $case161 $case062 $case062 $case260 $default59 end i32.const 1520 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#get:c@virtual57 + br $__inlined_func$class-overloading/A#get:c@virtual58 end i32.const 1616 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#get:c@virtual57 + br $__inlined_func$class-overloading/A#get:c@virtual58 end i32.const 1648 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#get:c@virtual57 + br $__inlined_func$class-overloading/A#get:c@virtual58 end i32.const 1488 global.set $class-overloading/which @@ -2269,30 +2269,30 @@ global.get $class-overloading/a local.tee $0 i32.store - block $__inlined_func$class-overloading/A#b@virtual66 - block $default67 - block $case268 - block $case169 - block $case070 + block $__inlined_func$class-overloading/A#b@virtual67 + block $default68 + block $case269 + block $case170 + block $case071 local.get $0 i32.const 8 i32.sub i32.load i32.const 4 i32.sub - br_table $case070 $case169 $case070 $case070 $case268 $default67 + br_table $case071 $case170 $case071 $case071 $case269 $default68 end i32.const 1520 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#b@virtual66 + br $__inlined_func$class-overloading/A#b@virtual67 end i32.const 1616 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#b@virtual66 + br $__inlined_func$class-overloading/A#b@virtual67 end i32.const 1648 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#b@virtual66 + br $__inlined_func$class-overloading/A#b@virtual67 end i32.const 1488 global.set $class-overloading/which @@ -2378,30 +2378,30 @@ global.get $class-overloading/a local.tee $0 i32.store - block $__inlined_func$class-overloading/A#b@virtual75 - block $default76 - block $case277 - block $case178 - block $case079 + block $__inlined_func$class-overloading/A#b@virtual77 + block $default78 + block $case279 + block $case180 + block $case081 local.get $0 i32.const 8 i32.sub i32.load i32.const 4 i32.sub - br_table $case079 $case178 $case079 $case079 $case277 $default76 + br_table $case081 $case180 $case081 $case081 $case279 $default78 end i32.const 1520 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#b@virtual75 + br $__inlined_func$class-overloading/A#b@virtual77 end i32.const 1616 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#b@virtual75 + br $__inlined_func$class-overloading/A#b@virtual77 end i32.const 1648 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#b@virtual75 + br $__inlined_func$class-overloading/A#b@virtual77 end i32.const 1488 global.set $class-overloading/which @@ -2432,30 +2432,30 @@ global.get $class-overloading/a local.tee $0 i32.store - block $__inlined_func$class-overloading/A#get:c@virtual84 - block $default85 - block $case286 - block $case187 - block $case088 + block $__inlined_func$class-overloading/A#get:c@virtual86 + block $default87 + block $case288 + block $case189 + block $case090 local.get $0 i32.const 8 i32.sub i32.load i32.const 4 i32.sub - br_table $case088 $case187 $case088 $case088 $case286 $default85 + br_table $case090 $case189 $case090 $case090 $case288 $default87 end i32.const 1520 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#get:c@virtual84 + br $__inlined_func$class-overloading/A#get:c@virtual86 end i32.const 1616 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#get:c@virtual84 + br $__inlined_func$class-overloading/A#get:c@virtual86 end i32.const 1648 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#get:c@virtual84 + br $__inlined_func$class-overloading/A#get:c@virtual86 end i32.const 1488 global.set $class-overloading/which @@ -2486,30 +2486,30 @@ global.get $class-overloading/a local.tee $0 i32.store - block $__inlined_func$class-overloading/A#b@virtual93 - block $default94 - block $case295 - block $case196 - block $case097 + block $__inlined_func$class-overloading/A#b@virtual95 + block $default96 + block $case297 + block $case198 + block $case099 local.get $0 i32.const 8 i32.sub i32.load i32.const 4 i32.sub - br_table $case097 $case196 $case097 $case097 $case295 $default94 + br_table $case099 $case198 $case099 $case099 $case297 $default96 end i32.const 1520 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#b@virtual93 + br $__inlined_func$class-overloading/A#b@virtual95 end i32.const 1616 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#b@virtual93 + br $__inlined_func$class-overloading/A#b@virtual95 end i32.const 1648 global.set $class-overloading/which - br $__inlined_func$class-overloading/A#b@virtual93 + br $__inlined_func$class-overloading/A#b@virtual95 end i32.const 1488 global.set $class-overloading/which @@ -2564,8 +2564,8 @@ local.tee $0 i32.store block $__inlined_func$class-overloading/IA#foo@virtual - block $default102 - block $case1103 + block $default105 + block $case1106 local.get $0 i32.const 8 i32.sub @@ -2577,8 +2577,8 @@ local.get $0 i32.const 12 i32.eq - br_if $case1103 - br $default102 + br_if $case1106 + br $default105 end i32.const 1680 global.set $class-overloading/which @@ -2639,9 +2639,9 @@ global.get $class-overloading/ic local.tee $0 i32.store - block $__inlined_func$class-overloading/IA#foo@virtual105 - block $default106 - block $case1107 + block $__inlined_func$class-overloading/IA#foo@virtual109 + block $default110 + block $case1111 local.get $0 i32.const 8 i32.sub @@ -2653,16 +2653,16 @@ local.get $0 i32.const 12 i32.eq - br_if $case1107 - br $default106 + br_if $case1111 + br $default110 end i32.const 1680 global.set $class-overloading/which - br $__inlined_func$class-overloading/IA#foo@virtual105 + br $__inlined_func$class-overloading/IA#foo@virtual109 end i32.const 1712 global.set $class-overloading/which - br $__inlined_func$class-overloading/IA#foo@virtual105 + br $__inlined_func$class-overloading/IA#foo@virtual109 end unreachable end @@ -2740,7 +2740,7 @@ global.get $class-overloading/b2 local.tee $0 i32.store - block $__inlined_func$class-overloading/A2#foo@virtual + block $__inlined_func$class-overloading/A2#foo@virtual (result i32) local.get $0 i32.const 8 i32.sub @@ -2829,6 +2829,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + i32.const 3 br $__inlined_func$class-overloading/A2#foo@virtual end i32.const 1744 @@ -2838,6 +2839,16 @@ call $~lib/builtins/abort unreachable end + i32.const 3 + i32.ne + if + i32.const 0 + i32.const 1552 + i32.const 209 + i32.const 1 + call $~lib/builtins/abort + unreachable + end global.get $~lib/memory/__stack_pointer i32.const 8 i32.add @@ -2853,12 +2864,11 @@ ) (func $class-overloading/B#constructor (param $0 i32) (result i32) (local $1 i32) - (local $2 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1932 i32.lt_s @@ -3003,19 +3013,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -3025,15 +3035,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -3056,7 +3067,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -3066,23 +3077,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -3090,7 +3101,7 @@ else i32.const 1792 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1280 @@ -3100,7 +3111,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1796 @@ -3115,16 +3126,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -3132,11 +3143,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/class.optimized.wat b/tests/compiler/class.optimized.wat index 7249c85819..a23a1f7d2c 100644 --- a/tests/compiler/class.optimized.wat +++ b/tests/compiler/class.optimized.wat @@ -113,17 +113,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17972 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -137,9 +138,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -149,15 +150,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -1455,7 +1456,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1481,32 +1482,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1522,16 +1523,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1539,7 +1540,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1547,8 +1548,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1565,7 +1566,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1575,13 +1576,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1594,40 +1595,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -1657,8 +1658,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 diff --git a/tests/compiler/constructor.optimized.wat b/tests/compiler/constructor.optimized.wat index e4f7821678..9d4d7ecc44 100644 --- a/tests/compiler/constructor.optimized.wat +++ b/tests/compiler/constructor.optimized.wat @@ -1449,8 +1449,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -1658,43 +1658,43 @@ ) (func $start:constructor (local $0 i32) - memory.size - i32.const 16 - i32.shl - i32.const 17988 - i32.sub - i32.const 1 - i32.shr_u - global.set $~lib/rt/itcms/threshold - i32.const 1172 - i32.const 1168 - i32.store - i32.const 1176 - i32.const 1168 - i32.store - i32.const 1168 - global.set $~lib/rt/itcms/pinSpace - i32.const 1204 - i32.const 1200 - i32.store - i32.const 1208 - i32.const 1200 - i32.store - i32.const 1200 - global.set $~lib/rt/itcms/toSpace - i32.const 1348 - i32.const 1344 - i32.store - i32.const 1352 - i32.const 1344 - i32.store - i32.const 1344 - global.set $~lib/rt/itcms/fromSpace - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + memory.size + i32.const 16 + i32.shl + i32.const 17988 + i32.sub + i32.const 1 + i32.shr_u + global.set $~lib/rt/itcms/threshold + i32.const 1172 + i32.const 1168 + i32.store + i32.const 1176 + i32.const 1168 + i32.store + i32.const 1168 + global.set $~lib/rt/itcms/pinSpace + i32.const 1204 + i32.const 1200 + i32.store + i32.const 1208 + i32.const 1200 + i32.store + i32.const 1200 + global.set $~lib/rt/itcms/toSpace + i32.const 1348 + i32.const 1344 + i32.store + i32.const 1352 + i32.const 1344 + i32.store + i32.const 1344 + global.set $~lib/rt/itcms/fromSpace + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1604 i32.lt_s @@ -2117,19 +2117,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -2139,15 +2139,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -2170,7 +2171,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -2180,23 +2181,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -2204,7 +2205,7 @@ else i32.const 1488 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1248 @@ -2214,7 +2215,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1492 @@ -2229,16 +2230,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -2246,11 +2247,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/do.optimized.wat b/tests/compiler/do.optimized.wat index 548e8ca7b3..7f7bfbcc4d 100644 --- a/tests/compiler/do.optimized.wat +++ b/tests/compiler/do.optimized.wat @@ -998,75 +998,10 @@ (local $0 i32) (local $1 i32) (local $2 i32) - i32.const 10 - local.set $0 - loop $do-loop|0 - local.get $1 - i32.const 1 - i32.add - local.set $1 - local.get $0 - i32.const 1 - i32.sub - local.tee $0 - br_if $do-loop|0 - end - local.get $0 - if - i32.const 0 - i32.const 1056 + block $folding-inner0 i32.const 10 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 10 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 11 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 10 - local.set $0 - loop $do-loop|00 - local.get $0 - local.tee $1 - i32.const 1 - i32.sub - local.set $0 - local.get $1 - br_if $do-loop|00 - end - local.get $0 - i32.const -1 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 21 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.set $1 - i32.const 10 - local.set $0 - loop $do-loop|01 - local.get $0 - i32.const 1 - i32.sub local.set $0 - local.get $2 - i32.const 1 - i32.add - local.set $2 - loop $do-loop|1 + loop $do-loop|0 local.get $1 i32.const 1 i32.add @@ -1075,220 +1010,285 @@ i32.const 1 i32.sub local.tee $0 - br_if $do-loop|1 + br_if $do-loop|0 end local.get $0 if i32.const 0 i32.const 1056 - i32.const 39 - i32.const 5 + i32.const 10 + i32.const 3 call $~lib/builtins/abort unreachable end local.get $1 - i32.const 9 + i32.const 10 i32.ne if i32.const 0 i32.const 1056 - i32.const 40 - i32.const 5 + i32.const 11 + i32.const 3 call $~lib/builtins/abort unreachable end + i32.const 10 + local.set $0 + loop $do-loop|00 + local.get $0 + local.tee $1 + i32.const 1 + i32.sub + local.set $0 + local.get $1 + br_if $do-loop|00 + end local.get $0 - br_if $do-loop|01 - end - local.get $0 - if - i32.const 0 - i32.const 1056 - i32.const 42 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 43 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 9 - i32.ne - if + i32.const -1 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 21 + i32.const 3 + call $~lib/builtins/abort + unreachable + end i32.const 0 - i32.const 1056 - i32.const 44 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.set $0 - loop $do-loop|02 + local.set $1 + i32.const 10 + local.set $0 + loop $do-loop|01 + local.get $0 + i32.const 1 + i32.sub + local.set $0 + local.get $2 + i32.const 1 + i32.add + local.set $2 + loop $do-loop|1 + local.get $1 + i32.const 1 + i32.add + local.set $1 + local.get $0 + i32.const 1 + i32.sub + local.tee $0 + br_if $do-loop|1 + end + local.get $0 + if + i32.const 0 + i32.const 1056 + i32.const 39 + i32.const 5 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 9 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 40 + i32.const 5 + call $~lib/builtins/abort + unreachable + end + local.get $0 + br_if $do-loop|01 + end local.get $0 + if + i32.const 0 + i32.const 1056 + i32.const 42 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $2 i32.const 1 - i32.add - local.tee $0 - i32.const 10 i32.ne - br_if $do-loop|02 - end - local.get $0 - i32.const 10 - i32.ne - if + if + i32.const 0 + i32.const 1056 + i32.const 43 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 9 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 44 + i32.const 3 + call $~lib/builtins/abort + unreachable + end i32.const 0 - i32.const 1056 - i32.const 56 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.set $0 - loop $do-loop|03 + local.set $0 + loop $do-loop|02 + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.const 10 + i32.ne + br_if $do-loop|02 + end local.get $0 - i32.const 1 - i32.add - local.tee $0 i32.const 10 i32.ne - br_if $do-loop|03 - end - local.get $0 - i32.const 10 - i32.ne - if + if + i32.const 0 + i32.const 1056 + i32.const 56 + i32.const 3 + call $~lib/builtins/abort + unreachable + end i32.const 0 - i32.const 1056 - i32.const 70 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.set $0 - loop $do-loop|04 + local.set $0 + loop $do-loop|03 + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.const 10 + i32.ne + br_if $do-loop|03 + end local.get $0 - i32.const 1 - i32.add - local.tee $0 i32.const 10 i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 70 + i32.const 1 + call $~lib/builtins/abort + unreachable + end i32.const 0 + local.set $0 + loop $do-loop|04 + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.const 10 + i32.ne + i32.const 0 + local.get $0 + select + br_if $do-loop|04 + end local.get $0 - select - br_if $do-loop|04 - end - local.get $0 - i32.const 10 - i32.ne - if + i32.const 10 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 116 + i32.const 3 + call $~lib/builtins/abort + unreachable + end i32.const 0 - i32.const 1056 - i32.const 116 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.set $0 - i32.const 0 - local.set $1 - loop $do-loop|05 + local.set $0 + i32.const 0 + local.set $1 + loop $do-loop|05 + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.const 10 + i32.ne + if + loop $do-loop|17 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.const 10 + i32.rem_s + i32.const 0 + local.get $1 + select + br_if $do-loop|17 + end + local.get $0 + br_if $do-loop|05 + end + end local.get $0 - i32.const 1 - i32.add - local.tee $0 i32.const 10 i32.ne if - loop $do-loop|17 - local.get $1 - i32.const 1 - i32.add - local.tee $1 - i32.const 10 - i32.rem_s - i32.const 0 - local.get $1 - select - br_if $do-loop|17 - end - local.get $0 - br_if $do-loop|05 + i32.const 0 + i32.const 1056 + i32.const 134 + i32.const 3 + call $~lib/builtins/abort + unreachable end - end - local.get $0 - i32.const 10 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 134 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 90 - i32.ne - if + local.get $1 + i32.const 90 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 135 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + memory.size + i32.const 16 + i32.shl + i32.const 17892 + i32.sub + i32.const 1 + i32.shr_u + global.set $~lib/rt/itcms/threshold + i32.const 1204 + i32.const 1200 + i32.store + i32.const 1208 + i32.const 1200 + i32.store + i32.const 1200 + global.set $~lib/rt/itcms/pinSpace + i32.const 1236 + i32.const 1232 + i32.store + i32.const 1240 + i32.const 1232 + i32.store + i32.const 1232 + global.set $~lib/rt/itcms/toSpace + i32.const 1380 + i32.const 1376 + i32.store + i32.const 1384 + i32.const 1376 + i32.store + i32.const 1376 + global.set $~lib/rt/itcms/fromSpace i32.const 0 - i32.const 1056 - i32.const 135 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - memory.size - i32.const 16 - i32.shl - i32.const 17892 - i32.sub - i32.const 1 - i32.shr_u - global.set $~lib/rt/itcms/threshold - i32.const 1204 - i32.const 1200 - i32.store - i32.const 1208 - i32.const 1200 - i32.store - i32.const 1200 - global.set $~lib/rt/itcms/pinSpace - i32.const 1236 - i32.const 1232 - i32.store - i32.const 1240 - i32.const 1232 - i32.store - i32.const 1232 - global.set $~lib/rt/itcms/toSpace - i32.const 1380 - i32.const 1376 - i32.store - i32.const 1384 - i32.const 1376 - i32.store - i32.const 1376 - global.set $~lib/rt/itcms/fromSpace - i32.const 0 - local.set $1 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - block $folding-inner0 + local.set $1 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1508 i32.lt_s @@ -1300,7 +1300,7 @@ local.get $0 call $do/Ref#constructor i32.store - loop $do-loop|08 + loop $do-loop|06 local.get $1 i32.const 1 i32.add @@ -1317,7 +1317,7 @@ i32.store end local.get $0 - br_if $do-loop|08 + br_if $do-loop|06 end local.get $1 i32.const 10 @@ -1344,7 +1344,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -1359,26 +1359,26 @@ i32.store local.get $0 call $do/Ref#constructor - local.tee $0 + local.tee $1 i32.store - loop $do-loop|06 - block $do-break|07 - local.get $1 + loop $do-loop|08 + block $do-break|09 + local.get $2 i32.const 1 i32.add - local.tee $1 + local.tee $2 i32.const 10 i32.eq if i32.const 0 - local.set $0 - br $do-break|07 + local.set $1 + br $do-break|09 end call $do/Ref#constructor - br_if $do-loop|06 + br_if $do-loop|08 end end - local.get $1 + local.get $2 i32.const 10 i32.ne if @@ -1389,7 +1389,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 if i32.const 0 i32.const 1056 @@ -1696,8 +1696,8 @@ i32.load offset=8 local.set $3 local.get $0 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $0 @@ -1743,19 +1743,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1765,15 +1765,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1796,7 +1797,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1806,23 +1807,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1830,7 +1831,7 @@ else i32.const 1472 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1280 @@ -1840,7 +1841,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1476 @@ -1855,16 +1856,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -1872,11 +1873,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/empty-exportruntime.optimized.wat b/tests/compiler/empty-exportruntime.optimized.wat index c5516f49e7..1ecc400228 100644 --- a/tests/compiler/empty-exportruntime.optimized.wat +++ b/tests/compiler/empty-exportruntime.optimized.wat @@ -168,10 +168,10 @@ local.get $0 call $~lib/rt/itcms/Object#unlink global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -179,7 +179,7 @@ else i32.const 1568 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1248 @@ -189,7 +189,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 1572 @@ -204,8 +204,8 @@ else i32.const 2 end - local.set $2 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 local.set $3 local.get $0 @@ -224,7 +224,7 @@ local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -1487,8 +1487,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -1784,8 +1784,8 @@ i32.load offset=8 local.set $0 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 diff --git a/tests/compiler/empty-new.optimized.wat b/tests/compiler/empty-new.optimized.wat index d4c206589f..1a1cc24f49 100644 --- a/tests/compiler/empty-new.optimized.wat +++ b/tests/compiler/empty-new.optimized.wat @@ -1248,8 +1248,8 @@ i32.load offset=8 local.set $2 local.get $0 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $0 @@ -1284,19 +1284,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1306,15 +1306,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1337,7 +1338,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1347,23 +1348,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1371,7 +1372,7 @@ else i32.const 1440 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1248 @@ -1381,7 +1382,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1444 @@ -1396,16 +1397,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -1413,11 +1414,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/exports.optimized.wat b/tests/compiler/exports.optimized.wat index f092467718..e01425c2cb 100644 --- a/tests/compiler/exports.optimized.wat +++ b/tests/compiler/exports.optimized.wat @@ -1100,7 +1100,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1108,7 +1108,7 @@ memory.size local.tee $1 i32.const 4 - local.get $2 + local.get $3 i32.load offset=1568 local.get $1 i32.const 16 @@ -1123,16 +1123,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $1 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1140,7 +1140,7 @@ unreachable end end - local.get $2 + local.get $3 local.get $1 i32.const 16 i32.shl @@ -1148,7 +1148,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1175,7 +1175,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 @@ -1185,7 +1185,7 @@ i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $2 i32.const 16 i32.ge_u if @@ -1200,13 +1200,13 @@ i32.const 32 i32.add local.tee $4 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 + local.get $3 local.get $4 call $~lib/rt/tlsf/insertBlock else @@ -1241,8 +1241,8 @@ i32.load offset=8 local.set $2 local.get $1 - global.get $~lib/rt/itcms/white local.get $0 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $1 @@ -1454,11 +1454,11 @@ global.set $~lib/memory/__stack_pointer ) (func $export:exports/Car#constructor@varargs (param $0 i32) (param $1 i32) (result i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1484 i32.lt_s @@ -1548,11 +1548,11 @@ global.set $~lib/memory/__stack_pointer ) (func $export:exports/vehicles.Car#constructor@varargs (param $0 i32) (param $1 i32) (result i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1484 i32.lt_s @@ -1623,19 +1623,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1645,15 +1645,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1676,7 +1677,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1686,23 +1687,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1710,7 +1711,7 @@ else i32.const 1440 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1248 @@ -1720,7 +1721,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1444 @@ -1735,16 +1736,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -1752,11 +1753,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/exportstar-rereexport.optimized.wat b/tests/compiler/exportstar-rereexport.optimized.wat index 029e737c34..a21b20d668 100644 --- a/tests/compiler/exportstar-rereexport.optimized.wat +++ b/tests/compiler/exportstar-rereexport.optimized.wat @@ -1096,134 +1096,132 @@ ) (func $~start (local $0 i32) - block $__inlined_func$start:exportstar-rereexport + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + block $folding-inner0 global.get $~lib/memory/__stack_pointer + i32.const 1572 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i32.const 0 + i32.store + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner0 - global.get $~lib/memory/__stack_pointer - i32.const 1572 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $0 + global.get $~lib/memory/__stack_pointer + i32.const 1572 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store + memory.size + i32.const 16 + i32.shl + i32.const 17956 + i32.sub + i32.const 1 + i32.shr_u + global.set $~lib/rt/itcms/threshold + i32.const 1220 + i32.const 1216 + i32.store + i32.const 1224 + i32.const 1216 + i32.store + i32.const 1216 + global.set $~lib/rt/itcms/pinSpace + i32.const 1252 + i32.const 1248 + i32.store + i32.const 1256 + i32.const 1248 + i32.store + i32.const 1248 + global.set $~lib/rt/itcms/toSpace + i32.const 1396 + i32.const 1392 + i32.store + i32.const 1400 + i32.const 1392 + i32.store + i32.const 1392 + global.set $~lib/rt/itcms/fromSpace + call $exports/Car#constructor + global.set $reexport/car + global.get $~lib/memory/__stack_pointer + global.get $reexport/car + local.tee $0 + i32.store + local.get $0 + i32.load + i32.const 2 + i32.ne + if i32.const 0 - i32.store - local.get $0 - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1572 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer + i32.const 1056 + i32.const 40 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + call $exports/Car#constructor + global.set $rereexport/car + global.get $~lib/memory/__stack_pointer + global.get $rereexport/car + local.tee $0 + i32.store + local.get $0 + i32.load + i32.const 2 + i32.ne + if i32.const 0 - i32.store - memory.size - i32.const 16 - i32.shl - i32.const 17956 - i32.sub + i32.const 1504 + i32.const 18 i32.const 1 - i32.shr_u - global.set $~lib/rt/itcms/threshold - i32.const 1220 - i32.const 1216 - i32.store - i32.const 1224 - i32.const 1216 - i32.store - i32.const 1216 - global.set $~lib/rt/itcms/pinSpace - i32.const 1252 - i32.const 1248 - i32.store - i32.const 1256 - i32.const 1248 - i32.store - i32.const 1248 - global.set $~lib/rt/itcms/toSpace - i32.const 1396 - i32.const 1392 - i32.store - i32.const 1400 - i32.const 1392 - i32.store - i32.const 1392 - global.set $~lib/rt/itcms/fromSpace - call $exports/Car#constructor - global.set $reexport/car - global.get $~lib/memory/__stack_pointer - global.get $reexport/car - local.tee $0 - i32.store - local.get $0 - i32.load - i32.const 2 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 40 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - call $exports/Car#constructor - global.set $rereexport/car - global.get $~lib/memory/__stack_pointer - global.get $rereexport/car - local.tee $0 - i32.store - local.get $0 - i32.load - i32.const 2 - i32.ne - if - i32.const 0 - i32.const 1504 - i32.const 18 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - call $exports/Car#constructor - global.set $rereexport/exportsNamespaceCar - global.get $~lib/memory/__stack_pointer - global.get $rereexport/exportsNamespaceCar - local.tee $0 - i32.store - local.get $0 - i32.load - i32.const 2 - i32.ne - if - i32.const 0 - i32.const 1504 - i32.const 24 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - br $__inlined_func$start:exportstar-rereexport + call $~lib/builtins/abort + unreachable end - i32.const 17984 - i32.const 18032 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable + call $exports/Car#constructor + global.set $rereexport/exportsNamespaceCar + global.get $~lib/memory/__stack_pointer + global.get $rereexport/exportsNamespaceCar + local.tee $0 + i32.store + local.get $0 + i32.load + i32.const 2 + i32.ne + if + i32.const 0 + i32.const 1504 + i32.const 24 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + return end + i32.const 17984 + i32.const 18032 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable ) (func $exports/Car#constructor (result i32) (local $0 i32) @@ -1442,8 +1440,8 @@ i32.load offset=8 local.set $3 local.get $0 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $0 @@ -1522,19 +1520,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1544,15 +1542,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1575,7 +1574,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1585,23 +1584,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1609,7 +1608,7 @@ else i32.const 1536 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1296 @@ -1619,7 +1618,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1540 @@ -1634,16 +1633,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -1651,11 +1650,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/extends-baseaggregate.optimized.wat b/tests/compiler/extends-baseaggregate.optimized.wat index 9d1452a827..b5428a8730 100644 --- a/tests/compiler/extends-baseaggregate.optimized.wat +++ b/tests/compiler/extends-baseaggregate.optimized.wat @@ -2,8 +2,8 @@ (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) (type $none_=>_none (func)) - (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) + (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $none_=>_i32 (func (result i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) @@ -119,17 +119,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18156 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -143,9 +144,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -155,15 +156,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -1461,7 +1462,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1487,32 +1488,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1528,16 +1529,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1545,7 +1546,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1553,8 +1554,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1571,7 +1572,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1581,13 +1582,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1600,40 +1601,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -1663,8 +1664,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -2380,336 +2381,230 @@ i32.store8 end ) - (func $~lib/array/Array#push (param $0 i32) - (local $1 i32) + (func $~lib/rt/itcms/__renew (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - i32.const 1180 - i32.load - local.tee $9 - i32.const 1 - i32.add - local.tee $10 - local.tee $3 - i32.const 1176 + local.get $0 + i32.const 20 + i32.sub + local.tee $2 i32.load - local.tee $7 - i32.const 2 - i32.shr_u - i32.gt_u + i32.const -4 + i32.and + i32.const 16 + i32.sub + local.get $1 + i32.ge_u if - local.get $3 - i32.const 268435455 - i32.gt_u + local.get $2 + local.get $1 + i32.store offset=16 + local.get $0 + return + end + local.get $1 + local.get $2 + i32.load offset=12 + call $~lib/rt/itcms/__new + local.set $4 + local.get $1 + local.get $2 + i32.load offset=16 + local.tee $2 + local.get $1 + local.get $2 + i32.lt_u + select + local.set $5 + block $~lib/util/memory/memmove|inlined.0 + local.get $4 + local.tee $1 + local.get $0 + i32.eq + br_if $~lib/util/memory/memmove|inlined.0 + local.get $0 + local.get $1 + i32.sub + local.get $5 + i32.sub + i32.const 0 + local.get $5 + i32.const 1 + i32.shl + i32.sub + i32.le_u if - i32.const 1616 - i32.const 1664 - i32.const 18 - i32.const 48 - call $~lib/builtins/abort - unreachable - end - block $__inlined_func$~lib/rt/itcms/__renew - local.get $7 - i32.const 1 - i32.shl - local.tee $1 - i32.const 1073741820 local.get $1 - i32.const 1073741820 - i32.lt_u - select - local.tee $2 - local.get $3 - i32.const 8 - local.get $3 - i32.const 8 - i32.gt_u - select - i32.const 2 - i32.shl - local.tee $1 + local.get $0 + local.get $5 + call $~lib/util/memory/memcpy + br $~lib/util/memory/memmove|inlined.0 + end + local.get $0 + local.get $1 + i32.gt_u + if + local.get $0 + i32.const 7 + i32.and local.get $1 - local.get $2 - i32.lt_u - select - local.tee $8 - local.tee $4 - i32.const 1168 - i32.load - local.tee $11 - local.tee $1 - i32.const 20 - i32.sub - local.tee $3 - i32.load - i32.const -4 + i32.const 7 i32.and - i32.const 16 - i32.sub - i32.le_u + i32.eq if - local.get $3 - local.get $4 - i32.store offset=16 - br $__inlined_func$~lib/rt/itcms/__renew - end - local.get $4 - local.get $3 - i32.load offset=12 - call $~lib/rt/itcms/__new - local.tee $5 - local.set $2 - local.get $4 - local.get $3 - i32.load offset=16 - local.tee $3 - local.get $3 - local.get $4 - i32.gt_u - select - local.set $6 - block $~lib/util/memory/memmove|inlined.0 - local.get $1 - local.get $2 - i32.eq - br_if $~lib/util/memory/memmove|inlined.0 - local.get $1 - local.get $2 - i32.sub - local.get $6 - i32.sub - i32.const 0 - local.get $6 - i32.const 1 - i32.shl - i32.sub - i32.le_u - if - local.get $2 - local.get $1 - local.get $6 - call $~lib/util/memory/memcpy - br $~lib/util/memory/memmove|inlined.0 - end - local.get $1 - local.get $2 - i32.gt_u - if + loop $while-continue|0 local.get $1 i32.const 7 i32.and - local.get $2 - i32.const 7 - i32.and - i32.eq if - loop $while-continue|0 - local.get $2 - i32.const 7 - i32.and - if - local.get $6 - i32.eqz - br_if $~lib/util/memory/memmove|inlined.0 - local.get $6 - i32.const 1 - i32.sub - local.set $6 - local.get $2 - local.tee $4 - i32.const 1 - i32.add - local.set $2 - local.get $1 - local.tee $3 - i32.const 1 - i32.add - local.set $1 - local.get $4 - local.get $3 - i32.load8_u - i32.store8 - br $while-continue|0 - end - end - loop $while-continue|1 - local.get $6 - i32.const 8 - i32.ge_u - if - local.get $2 - local.get $1 - i64.load - i64.store - local.get $6 - i32.const 8 - i32.sub - local.set $6 - local.get $2 - i32.const 8 - i32.add - local.set $2 - local.get $1 - i32.const 8 - i32.add - local.set $1 - br $while-continue|1 - end - end + local.get $5 + i32.eqz + br_if $~lib/util/memory/memmove|inlined.0 + local.get $5 + i32.const 1 + i32.sub + local.set $5 + local.get $1 + local.tee $2 + i32.const 1 + i32.add + local.set $1 + local.get $0 + local.tee $3 + i32.const 1 + i32.add + local.set $0 + local.get $2 + local.get $3 + i32.load8_u + i32.store8 + br $while-continue|0 end - loop $while-continue|2 - local.get $6 - if - local.get $2 - local.tee $4 - i32.const 1 - i32.add - local.set $2 - local.get $1 - local.tee $3 - i32.const 1 - i32.add - local.set $1 - local.get $4 - local.get $3 - i32.load8_u - i32.store8 - local.get $6 - i32.const 1 - i32.sub - local.set $6 - br $while-continue|2 - end + end + loop $while-continue|1 + local.get $5 + i32.const 8 + i32.ge_u + if + local.get $1 + local.get $0 + i64.load + i64.store + local.get $5 + i32.const 8 + i32.sub + local.set $5 + local.get $1 + i32.const 8 + i32.add + local.set $1 + local.get $0 + i32.const 8 + i32.add + local.set $0 + br $while-continue|1 end - else + end + end + loop $while-continue|2 + local.get $5 + if local.get $1 - i32.const 7 - i32.and + local.tee $2 + i32.const 1 + i32.add + local.set $1 + local.get $0 + local.tee $3 + i32.const 1 + i32.add + local.set $0 local.get $2 + local.get $3 + i32.load8_u + i32.store8 + local.get $5 + i32.const 1 + i32.sub + local.set $5 + br $while-continue|2 + end + end + else + local.get $0 + i32.const 7 + i32.and + local.get $1 + i32.const 7 + i32.and + i32.eq + if + loop $while-continue|3 + local.get $1 + local.get $5 + i32.add i32.const 7 i32.and - i32.eq if - loop $while-continue|3 - local.get $2 - local.get $6 - i32.add - i32.const 7 - i32.and - if - local.get $6 - i32.eqz - br_if $~lib/util/memory/memmove|inlined.0 - local.get $2 - local.get $6 - i32.const 1 - i32.sub - local.tee $6 - i32.add - local.get $1 - local.get $6 - i32.add - i32.load8_u - i32.store8 - br $while-continue|3 - end - end - loop $while-continue|4 - local.get $6 - i32.const 8 - i32.ge_u - if - local.get $2 - local.get $6 - i32.const 8 - i32.sub - local.tee $6 - i32.add - local.get $1 - local.get $6 - i32.add - i64.load - i64.store - br $while-continue|4 - end - end + local.get $5 + i32.eqz + br_if $~lib/util/memory/memmove|inlined.0 + local.get $5 + i32.const 1 + i32.sub + local.tee $5 + local.get $1 + i32.add + local.get $0 + local.get $5 + i32.add + i32.load8_u + i32.store8 + br $while-continue|3 end - loop $while-continue|5 - local.get $6 - if - local.get $2 - local.get $6 - i32.const 1 - i32.sub - local.tee $6 - i32.add - local.get $1 - local.get $6 - i32.add - i32.load8_u - i32.store8 - br $while-continue|5 - end + end + loop $while-continue|4 + local.get $5 + i32.const 8 + i32.ge_u + if + local.get $5 + i32.const 8 + i32.sub + local.tee $5 + local.get $1 + i32.add + local.get $0 + local.get $5 + i32.add + i64.load + i64.store + br $while-continue|4 end end end - local.get $5 - local.set $1 - end - local.get $1 - local.get $7 - i32.add - local.get $8 - local.get $7 - i32.sub - call $~lib/memory/memory.fill - local.get $1 - local.get $11 - i32.ne - if - i32.const 1168 - local.get $1 - i32.store - i32.const 1172 - local.get $1 - i32.store - local.get $1 - if - local.get $1 - i32.const 0 - call $byn-split-outlined-A$~lib/rt/itcms/__link + loop $while-continue|5 + local.get $5 + if + local.get $5 + i32.const 1 + i32.sub + local.tee $5 + local.get $1 + i32.add + local.get $0 + local.get $5 + i32.add + i32.load8_u + i32.store8 + br $while-continue|5 + end end end - i32.const 1176 - local.get $8 - i32.store - end - i32.const 1172 - i32.load - local.get $9 - i32.const 2 - i32.shl - i32.add - local.get $0 - i32.store - local.get $0 - if - local.get $0 - i32.const 1 - call $byn-split-outlined-A$~lib/rt/itcms/__link end - i32.const 1180 - local.get $10 - i32.store + local.get $4 ) (func $~lib/array/Array~visit (param $0 i32) (local $1 i32) @@ -2808,11 +2703,16 @@ (func $~start (local $0 i32) (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1772 i32.lt_s @@ -2918,8 +2818,104 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 + i32.const 1180 + i32.load + local.tee $2 + i32.const 1 + i32.add + local.tee $3 + local.tee $1 + i32.const 1176 + i32.load + local.tee $5 + i32.const 2 + i32.shr_u + i32.gt_u + if + local.get $1 + i32.const 268435455 + i32.gt_u + if + i32.const 1616 + i32.const 1664 + i32.const 18 + i32.const 48 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 1168 + i32.load + local.tee $4 + local.get $5 + i32.const 1 + i32.shl + local.tee $6 + i32.const 1073741820 + local.get $6 + i32.const 1073741820 + i32.lt_u + select + local.tee $6 + local.get $1 + i32.const 8 + local.get $1 + i32.const 8 + i32.gt_u + select + i32.const 2 + i32.shl + local.tee $1 + local.get $1 + local.get $6 + i32.lt_u + select + local.tee $6 + call $~lib/rt/itcms/__renew + local.tee $1 + i32.add + local.get $6 + local.get $5 + i32.sub + call $~lib/memory/memory.fill + local.get $1 + local.get $4 + i32.ne + if + i32.const 1168 + local.get $1 + i32.store + i32.const 1172 + local.get $1 + i32.store + local.get $1 + if + local.get $1 + i32.const 0 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + end + i32.const 1176 + local.get $6 + i32.store + end + i32.const 1172 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add local.get $0 - call $~lib/array/Array#push + i32.store + local.get $0 + if + local.get $0 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + i32.const 1180 + local.get $3 + i32.store global.get $~lib/memory/__stack_pointer i32.const 8 i32.add diff --git a/tests/compiler/extends-recursive.optimized.wat b/tests/compiler/extends-recursive.optimized.wat index 0624945390..4654e175f5 100644 --- a/tests/compiler/extends-recursive.optimized.wat +++ b/tests/compiler/extends-recursive.optimized.wat @@ -108,17 +108,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17868 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -132,9 +133,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -144,15 +145,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -1187,7 +1188,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1195,7 +1196,7 @@ memory.size local.tee $1 i32.const 4 - local.get $2 + local.get $3 i32.load offset=1568 local.get $1 i32.const 16 @@ -1210,16 +1211,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $1 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1227,7 +1228,7 @@ unreachable end end - local.get $2 + local.get $3 local.get $1 i32.const 16 i32.shl @@ -1235,7 +1236,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1262,7 +1263,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 @@ -1272,7 +1273,7 @@ i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $2 i32.const 16 i32.ge_u if @@ -1287,13 +1288,13 @@ i32.const 32 i32.add local.tee $4 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 + local.get $3 local.get $4 call $~lib/rt/tlsf/insertBlock else @@ -1328,8 +1329,8 @@ i32.load offset=8 local.set $2 local.get $1 - global.get $~lib/rt/itcms/white local.get $0 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $1 @@ -1561,12 +1562,11 @@ ) (func $export:extends-recursive/Child#constructor (param $0 i32) (result i32) (local $1 i32) - (local $2 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1484 i32.lt_s @@ -1596,8 +1596,8 @@ i32.store end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/features/simd.optimized.wat b/tests/compiler/features/simd.optimized.wat index 9fecfff659..5b06cd3c04 100644 --- a/tests/compiler/features/simd.optimized.wat +++ b/tests/compiler/features/simd.optimized.wat @@ -1,10 +1,9 @@ (module (type $i32_i32_=>_none (func (param i32 i32))) (type $none_=>_none (func)) + (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) - (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) - (type $i32_=>_i32 (func (param i32) (result i32))) (type $i32_=>_none (func (param i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (global $~lib/rt/tlsf/ROOT (mut i32) (i32.const 0)) @@ -735,19 +734,12 @@ end end ) - (func $~lib/rt/tlsf/__alloc (param $0 i32) (result i32) - (local $1 i32) + (func $~lib/rt/tlsf/allocateBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - call $~lib/rt/tlsf/initialize - end - global.get $~lib/rt/tlsf/ROOT - local.tee $1 local.get $0 + local.get $1 i32.const 1073741820 i32.gt_u if @@ -758,13 +750,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $0 + local.get $1 i32.const 19 i32.add i32.const -16 @@ -774,11 +766,11 @@ end local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if memory.size - local.tee $0 + local.tee $1 local.get $3 i32.const 536870910 i32.lt_u @@ -797,9 +789,9 @@ local.get $3 end i32.const 4 - local.get $1 - i32.load offset=1568 local.get $0 + i32.load offset=1568 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -814,7 +806,7 @@ i32.const 16 i32.shr_u local.tee $2 - local.get $0 + local.get $1 local.get $2 i32.gt_s select @@ -830,18 +822,18 @@ unreachable end end - local.get $1 local.get $0 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $0 local.get $3 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -852,7 +844,7 @@ unreachable end end - local.get $0 + local.get $1 i32.load i32.const -4 i32.and @@ -866,10 +858,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $0 + local.get $1 call $~lib/rt/tlsf/removeBlock - local.get $0 + local.get $1 i32.load local.set $4 local.get $3 @@ -894,7 +886,7 @@ i32.const 16 i32.ge_u if - local.get $0 + local.get $1 local.get $4 i32.const 2 i32.and @@ -902,7 +894,7 @@ i32.or i32.store local.get $3 - local.get $0 + local.get $1 i32.const 4 i32.add i32.add @@ -913,33 +905,31 @@ i32.const 1 i32.or i32.store - local.get $1 + local.get $0 local.get $3 call $~lib/rt/tlsf/insertBlock else - local.get $0 + local.get $1 local.get $4 i32.const -2 i32.and i32.store - local.get $0 + local.get $1 i32.const 4 i32.add - local.get $0 + local.get $1 i32.load i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.load i32.const -3 i32.and i32.store end - local.get $0 - i32.const 4 - i32.add + local.get $1 ) (func $~lib/rt/tlsf/__free (param $0 i32) (local $1 i32) @@ -993,16 +983,32 @@ ) (func $~start (local $0 i32) + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT i32.const 64 - call $~lib/rt/tlsf/__alloc + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add local.tee $0 local.get $0 v128.load offset=16 v128.store offset=32 local.get $0 call $~lib/rt/tlsf/__free + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT i32.const 16 - call $~lib/rt/tlsf/__alloc + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add local.tee $0 i32.const 42 i32.store8 @@ -1022,8 +1028,16 @@ end local.get $0 call $~lib/rt/tlsf/__free + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT i32.const 16 - call $~lib/rt/tlsf/__alloc + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add local.tee $0 i32.const 42 i32.store16 @@ -1043,8 +1057,16 @@ end local.get $0 call $~lib/rt/tlsf/__free + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT i32.const 16 - call $~lib/rt/tlsf/__alloc + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add local.tee $0 i32.const 42 i32.store @@ -1064,8 +1086,16 @@ end local.get $0 call $~lib/rt/tlsf/__free + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT i32.const 16 - call $~lib/rt/tlsf/__alloc + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add local.tee $0 i64.const 42 i64.store @@ -1085,8 +1115,16 @@ end local.get $0 call $~lib/rt/tlsf/__free + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT i32.const 16 - call $~lib/rt/tlsf/__alloc + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add local.tee $0 i32.const 42 i32.store @@ -1106,8 +1144,16 @@ end local.get $0 call $~lib/rt/tlsf/__free + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT i32.const 16 - call $~lib/rt/tlsf/__alloc + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add local.tee $0 i64.const 42 i64.store diff --git a/tests/compiler/field-initialization.optimized.wat b/tests/compiler/field-initialization.optimized.wat index 3dccc8f130..8cc0273fd6 100644 --- a/tests/compiler/field-initialization.optimized.wat +++ b/tests/compiler/field-initialization.optimized.wat @@ -126,17 +126,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18380 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -150,9 +151,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -162,15 +163,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -1468,7 +1469,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1494,32 +1495,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1535,16 +1536,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1552,7 +1553,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1560,8 +1561,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1578,7 +1579,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1588,13 +1589,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1607,40 +1608,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -1670,8 +1671,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 diff --git a/tests/compiler/field.optimized.wat b/tests/compiler/field.optimized.wat index e4ce94b4d5..4555d26413 100644 --- a/tests/compiler/field.optimized.wat +++ b/tests/compiler/field.optimized.wat @@ -104,17 +104,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17908 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -128,9 +129,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -140,15 +141,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -1472,8 +1473,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -2373,23 +2374,22 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) - (local $8 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner1 block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1524 i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $0 i32.const 0 i32.store - local.get $7 + local.get $0 + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -2405,7 +2405,7 @@ i32.const 4 i32.const 3 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 @@ -2416,16 +2416,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $0 i32.const 0 i32.store + local.get $0 i32.const 1456 local.set $1 block $~lib/util/memory/memmove|inlined.0 i32.const 0 i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $5 local.tee $0 i32.const 1456 i32.eq @@ -2452,32 +2453,32 @@ i32.const 7 i32.and if - local.get $8 + local.get $6 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $8 + local.get $6 i32.const 1 i32.sub - local.set $8 + local.set $6 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 br $while-continue|0 end end loop $while-continue|1 - local.get $8 + local.get $6 i32.const 8 i32.ge_u if @@ -2485,10 +2486,10 @@ local.get $1 i64.load i64.store - local.get $8 + local.get $6 i32.const 8 i32.sub - local.set $8 + local.set $6 local.get $0 i32.const 8 i32.add @@ -2502,26 +2503,26 @@ end end loop $while-continue|2 - local.get $8 + local.get $6 if local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $1 - local.get $2 local.get $3 + local.get $2 i32.load8_u i32.store8 - local.get $8 + local.get $6 i32.const 1 i32.sub - local.set $8 + local.set $6 br $while-continue|2 end end @@ -2533,21 +2534,21 @@ if loop $while-continue|3 local.get $0 - local.get $8 + local.get $6 i32.add i32.const 7 i32.and if - local.get $8 + local.get $6 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $0 - local.get $8 + local.get $6 i32.const 1 i32.sub - local.tee $8 + local.tee $6 + local.get $0 i32.add - local.get $8 + local.get $6 i32.const 1456 i32.add i32.load8_u @@ -2556,17 +2557,17 @@ end end loop $while-continue|4 - local.get $8 + local.get $6 i32.const 8 i32.ge_u if - local.get $0 - local.get $8 + local.get $6 i32.const 8 i32.sub - local.tee $8 + local.tee $6 + local.get $0 i32.add - local.get $8 + local.get $6 i32.const 1456 i32.add i64.load @@ -2576,15 +2577,15 @@ end end loop $while-continue|5 - local.get $8 + local.get $6 if - local.get $0 - local.get $8 + local.get $6 i32.const 1 i32.sub - local.tee $8 + local.tee $6 + local.get $0 i32.add - local.get $8 + local.get $6 i32.const 1456 i32.add i32.load8_u @@ -2594,31 +2595,34 @@ end end end - local.get $6 - local.get $4 + local.get $5 + local.tee $1 i32.store i32.const 16 i32.const 4 call $~lib/rt/itcms/__new local.tee $0 - local.get $4 + local.get $1 i32.store - local.get $4 + local.get $0 + local.set $3 + local.get $1 + local.tee $2 if - local.get $0 + local.get $3 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white - local.get $4 + local.get $2 i32.const 20 i32.sub - local.tee $1 + local.tee $5 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $0 + local.get $3 i32.const 20 i32.sub i32.load offset=4 @@ -2629,7 +2633,7 @@ i32.eqz i32.eq if - local.get $1 + local.get $5 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state @@ -2640,14 +2644,14 @@ i32.eq i32.and if - local.get $1 + local.get $5 call $~lib/rt/itcms/Object#makeGray end end end end local.get $0 - local.get $4 + local.get $1 i32.store offset=4 local.get $0 i32.const 0 @@ -2659,47 +2663,48 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $4 + local.tee $1 local.get $0 i32.store local.get $0 if - local.get $5 + local.get $1 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $2 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $5 + local.get $1 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $1 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $2 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $1 + local.get $0 i32.const 3 i32.eq i32.and if - local.get $0 + local.get $2 call $~lib/rt/itcms/Object#makeGray end end @@ -2709,8 +2714,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 - local.get $5 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 diff --git a/tests/compiler/for.optimized.wat b/tests/compiler/for.optimized.wat index e1f76cf939..a3d1e9f8dc 100644 --- a/tests/compiler/for.optimized.wat +++ b/tests/compiler/for.optimized.wat @@ -998,281 +998,281 @@ (local $0 i32) (local $1 i32) (local $2 i32) - loop $for-loop|0 + block $folding-inner0 + loop $for-loop|0 + local.get $0 + i32.const 10 + i32.lt_s + if + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $for-loop|0 + end + end local.get $0 i32.const 10 - i32.lt_s + i32.ne if - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $for-loop|0 + i32.const 0 + i32.const 1056 + i32.const 8 + i32.const 3 + call $~lib/builtins/abort + unreachable end - end - local.get $0 - i32.const 10 - i32.ne - if i32.const 0 - i32.const 1056 - i32.const 8 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.set $0 - loop $for-loop|00 + local.set $0 + loop $for-loop|00 + local.get $0 + i32.const 10 + i32.lt_s + if + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $for-loop|00 + end + end local.get $0 i32.const 10 - i32.lt_s + i32.ne if + i32.const 0 + i32.const 1056 + i32.const 19 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + i32.const 10 + local.set $0 + loop $for-loop|01 local.get $0 - i32.const 1 - i32.add - local.set $0 - br $for-loop|00 + i32.const 0 + i32.gt_s + if + local.get $0 + i32.const 1 + i32.sub + local.set $0 + br $for-loop|01 + end end - end - local.get $0 - i32.const 10 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 19 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 10 - local.set $0 - loop $for-loop|01 local.get $0 - i32.const 0 - i32.gt_s if - local.get $0 - i32.const 1 - i32.sub - local.set $0 - br $for-loop|01 + i32.const 0 + i32.const 1056 + i32.const 29 + i32.const 3 + call $~lib/builtins/abort + unreachable end - end - local.get $0 - if i32.const 0 - i32.const 1056 - i32.const 29 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.set $0 - loop $for-loop|02 + local.set $0 + loop $for-loop|02 + local.get $0 + i32.const 10 + i32.ne + if + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $for-loop|02 + end + end local.get $0 i32.const 10 i32.ne if + i32.const 0 + i32.const 1056 + i32.const 39 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + i32.const 10 + local.set $0 + loop $for-loop|03 local.get $0 i32.const 1 - i32.add - local.set $0 - br $for-loop|02 + i32.sub + local.tee $0 + br_if $for-loop|03 end - end - local.get $0 - i32.const 10 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 39 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 10 - local.set $0 - loop $for-loop|03 local.get $0 - i32.const 1 - i32.sub - local.tee $0 - br_if $for-loop|03 - end - local.get $0 - if + if + i32.const 0 + i32.const 1056 + i32.const 49 + i32.const 3 + call $~lib/builtins/abort + unreachable + end i32.const 0 - i32.const 1056 - i32.const 49 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.set $0 - loop $for-loop|05 + local.set $0 + loop $for-loop|05 + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.const 10 + i32.ne + br_if $for-loop|05 + end local.get $0 - i32.const 1 - i32.add - local.tee $0 i32.const 10 i32.ne - br_if $for-loop|05 - end - local.get $0 - i32.const 10 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 61 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.set $0 - loop $for-loop|07 - local.get $0 - i32.const 10 - i32.lt_s if - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $for-loop|07 + i32.const 0 + i32.const 1056 + i32.const 61 + i32.const 3 + call $~lib/builtins/abort + unreachable end - end - local.get $0 - i32.const 10 - i32.ne - if i32.const 0 - i32.const 1056 - i32.const 80 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.set $0 - loop $for-loop|08 + local.set $0 + loop $for-loop|07 + local.get $0 + i32.const 10 + i32.lt_s + if + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $for-loop|07 + end + end local.get $0 i32.const 10 - i32.lt_s + i32.ne if + i32.const 0 + i32.const 1056 + i32.const 80 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + local.set $0 + loop $for-loop|08 local.get $0 - i32.const 2 - i32.ge_s + i32.const 10 + i32.lt_s if - i32.const 0 - local.set $1 - loop $for-loop|1 - local.get $1 - i32.const 10 - i32.lt_s - if - local.get $2 - i32.const 1 - i32.add - local.get $2 - local.get $0 + local.get $0 + i32.const 2 + i32.ge_s + if + i32.const 0 + local.set $1 + loop $for-loop|1 local.get $1 + i32.const 10 i32.lt_s - select - local.set $2 - local.get $1 - i32.const 1 - i32.add - local.set $1 - br $for-loop|1 + if + local.get $2 + i32.const 1 + i32.add + local.get $2 + local.get $0 + local.get $1 + i32.lt_s + select + local.set $2 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $for-loop|1 + end end end + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $for-loop|08 end - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $for-loop|08 end - end - local.get $0 - i32.const 10 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 120 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 10 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 121 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 28 - i32.ne - if + local.get $0 + i32.const 10 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 120 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 10 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 121 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 28 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 122 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + memory.size + i32.const 16 + i32.shl + i32.const 17892 + i32.sub + i32.const 1 + i32.shr_u + global.set $~lib/rt/itcms/threshold + i32.const 1204 + i32.const 1200 + i32.store + i32.const 1208 + i32.const 1200 + i32.store + i32.const 1200 + global.set $~lib/rt/itcms/pinSpace + i32.const 1236 + i32.const 1232 + i32.store + i32.const 1240 + i32.const 1232 + i32.store + i32.const 1232 + global.set $~lib/rt/itcms/toSpace + i32.const 1380 + i32.const 1376 + i32.store + i32.const 1384 + i32.const 1376 + i32.store + i32.const 1376 + global.set $~lib/rt/itcms/fromSpace i32.const 0 - i32.const 1056 - i32.const 122 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - memory.size - i32.const 16 - i32.shl - i32.const 17892 - i32.sub - i32.const 1 - i32.shr_u - global.set $~lib/rt/itcms/threshold - i32.const 1204 - i32.const 1200 - i32.store - i32.const 1208 - i32.const 1200 - i32.store - i32.const 1200 - global.set $~lib/rt/itcms/pinSpace - i32.const 1236 - i32.const 1232 - i32.store - i32.const 1240 - i32.const 1232 - i32.store - i32.const 1232 - global.set $~lib/rt/itcms/toSpace - i32.const 1380 - i32.const 1376 - i32.store - i32.const 1384 - i32.const 1376 - i32.store - i32.const 1376 - global.set $~lib/rt/itcms/fromSpace - i32.const 0 - local.set $1 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - block $folding-inner0 + local.set $2 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1508 i32.lt_s @@ -1283,30 +1283,30 @@ i32.store local.get $0 call $for/Ref#constructor - local.tee $0 + local.tee $1 i32.store - loop $for-loop|09 - local.get $0 + loop $for-loop|06 + local.get $1 if - local.get $1 + local.get $2 i32.const 1 i32.add - local.tee $1 + local.tee $2 i32.const 10 i32.eq if i32.const 0 - local.set $0 + local.set $1 else global.get $~lib/memory/__stack_pointer call $for/Ref#constructor - local.tee $0 + local.tee $1 i32.store end - br $for-loop|09 + br $for-loop|06 end end - local.get $1 + local.get $2 i32.const 10 i32.ne if @@ -1317,7 +1317,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 if i32.const 0 i32.const 1056 @@ -1351,10 +1351,10 @@ call $for/Ref#constructor local.tee $0 i32.store - loop $for-loop|06 + loop $for-loop|09 call $for/Ref#constructor if - block $for-break07 + block $for-break010 local.get $1 i32.const 1 i32.add @@ -1364,13 +1364,13 @@ if i32.const 0 local.set $0 - br $for-break07 + br $for-break010 end global.get $~lib/memory/__stack_pointer call $for/Ref#constructor local.tee $0 i32.store - br $for-loop|06 + br $for-loop|09 end end end @@ -1692,8 +1692,8 @@ i32.load offset=8 local.set $3 local.get $0 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $0 @@ -1739,19 +1739,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1761,15 +1761,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1792,7 +1793,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1802,23 +1803,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1826,7 +1827,7 @@ else i32.const 1472 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1280 @@ -1836,7 +1837,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1476 @@ -1851,16 +1852,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -1868,11 +1869,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/function-call.optimized.wat b/tests/compiler/function-call.optimized.wat index 524c908d83..e8f2033a31 100644 --- a/tests/compiler/function-call.optimized.wat +++ b/tests/compiler/function-call.optimized.wat @@ -1388,8 +1388,8 @@ i32.load offset=8 local.set $3 local.get $0 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $0 @@ -1490,19 +1490,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1512,15 +1512,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1543,7 +1544,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1553,23 +1554,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1577,7 +1578,7 @@ else i32.const 1760 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1472 @@ -1587,7 +1588,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1764 @@ -1602,16 +1603,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -1619,11 +1620,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/function-expression.optimized.wat b/tests/compiler/function-expression.optimized.wat index 68cd1315e6..1803df373a 100644 --- a/tests/compiler/function-expression.optimized.wat +++ b/tests/compiler/function-expression.optimized.wat @@ -172,17 +172,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18580 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -196,9 +197,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -208,15 +209,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -1195,6 +1196,262 @@ end end ) + (func $~lib/rt/itcms/__new (result i32) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/total + global.get $~lib/rt/itcms/threshold + i32.ge_u + if + block $__inlined_func$~lib/rt/itcms/interrupt + i32.const 2048 + local.set $0 + loop $do-loop|0 + local.get $0 + call $~lib/rt/itcms/step + i32.sub + local.set $0 + global.get $~lib/rt/itcms/state + i32.eqz + if + global.get $~lib/rt/itcms/total + i64.extend_i32_u + i64.const 200 + i64.mul + i64.const 100 + i64.div_u + i32.wrap_i64 + i32.const 1024 + i32.add + global.set $~lib/rt/itcms/threshold + br $__inlined_func$~lib/rt/itcms/interrupt + end + local.get $0 + i32.const 0 + i32.gt_s + br_if $do-loop|0 + end + global.get $~lib/rt/itcms/total + local.tee $0 + local.get $0 + global.get $~lib/rt/itcms/threshold + i32.sub + i32.const 1024 + i32.lt_u + i32.const 10 + i32.shl + i32.add + global.set $~lib/rt/itcms/threshold + end + end + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.tee $1 + call $~lib/rt/tlsf/searchBlock + local.tee $0 + i32.eqz + if + memory.size + local.tee $0 + i32.const 4 + local.get $1 + i32.load offset=1568 + local.get $0 + i32.const 16 + i32.shl + i32.const 4 + i32.sub + i32.ne + i32.shl + i32.const 65563 + i32.add + i32.const -65536 + i32.and + i32.const 16 + i32.shr_u + local.tee $2 + local.get $0 + local.get $2 + i32.gt_s + select + memory.grow + i32.const 0 + i32.lt_s + if + local.get $2 + memory.grow + i32.const 0 + i32.lt_s + if + unreachable + end + end + local.get $1 + local.get $0 + i32.const 16 + i32.shl + memory.size + i32.const 16 + i32.shl + call $~lib/rt/tlsf/addMemory + local.get $1 + call $~lib/rt/tlsf/searchBlock + local.tee $0 + i32.eqz + if + i32.const 0 + i32.const 1936 + i32.const 496 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + end + local.get $0 + i32.load + i32.const -4 + i32.and + i32.const 28 + i32.lt_u + if + i32.const 0 + i32.const 1936 + i32.const 498 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + local.get $1 + local.get $0 + call $~lib/rt/tlsf/removeBlock + local.get $0 + i32.load + local.tee $2 + i32.const -4 + i32.and + i32.const 28 + i32.sub + local.tee $3 + i32.const 16 + i32.ge_u + if + local.get $0 + local.get $2 + i32.const 2 + i32.and + i32.const 28 + i32.or + i32.store + local.get $0 + i32.const 32 + i32.add + local.tee $2 + local.get $3 + i32.const 4 + i32.sub + i32.const 1 + i32.or + i32.store + local.get $1 + local.get $2 + call $~lib/rt/tlsf/insertBlock + else + local.get $0 + local.get $2 + i32.const -2 + i32.and + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $0 + i32.load + i32.const -4 + i32.and + i32.add + local.tee $1 + local.get $1 + i32.load + i32.const -3 + i32.and + i32.store + end + local.get $0 + i32.const 8 + i32.store offset=12 + local.get $0 + i32.const 4 + i32.store offset=16 + global.get $~lib/rt/itcms/fromSpace + local.tee $1 + i32.load offset=8 + local.set $2 + local.get $0 + local.get $1 + global.get $~lib/rt/itcms/white + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.store offset=8 + local.get $2 + local.get $2 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $1 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/total + local.get $0 + i32.load + i32.const -4 + i32.and + i32.const 4 + i32.add + i32.add + global.set $~lib/rt/itcms/total + local.get $0 + i32.const 20 + i32.add + local.tee $0 + i32.const 0 + i32.store8 + local.get $0 + i32.const 4 + i32.add + local.tee $1 + i32.const 1 + i32.sub + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store8 offset=1 + local.get $0 + i32.const 0 + i32.store8 offset=2 + local.get $1 + i32.const 2 + i32.sub + i32.const 0 + i32.store8 + local.get $1 + i32.const 3 + i32.sub + i32.const 0 + i32.store8 + local.get $0 + ) (func $function-expression/semanticallyAnonymous~fnDecl|0 (param $0 i64) (result i64) local.get $0 ) @@ -1266,35 +1523,10 @@ end ) (func $~start - call $start:function-expression - ) - (func $function-expression/testField (local $0 i32) (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 global.get $~lib/memory/__stack_pointer - i32.const 2196 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $1 - i64.const 0 - i64.store - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $1 - i32.const 2032 - i32.store - local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -1303,369 +1535,14 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 i32.const 0 i32.store - global.get $~lib/rt/itcms/total - global.get $~lib/rt/itcms/threshold - i32.ge_u - if - block $__inlined_func$~lib/rt/itcms/interrupt - i32.const 2048 - local.set $0 - loop $do-loop|0 - local.get $0 - call $~lib/rt/itcms/step - i32.sub - local.set $0 - global.get $~lib/rt/itcms/state - i32.eqz - if - global.get $~lib/rt/itcms/total - i64.extend_i32_u - i64.const 200 - i64.mul - i64.const 100 - i64.div_u - i32.wrap_i64 - i32.const 1024 - i32.add - global.set $~lib/rt/itcms/threshold - br $__inlined_func$~lib/rt/itcms/interrupt - end - local.get $0 - i32.const 0 - i32.gt_s - br_if $do-loop|0 - end - global.get $~lib/rt/itcms/total - local.tee $0 - local.get $0 - global.get $~lib/rt/itcms/threshold - i32.sub - i32.const 1024 - i32.lt_u - i32.const 10 - i32.shl - i32.add - global.set $~lib/rt/itcms/threshold - end - end - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - call $~lib/rt/tlsf/initialize - end - global.get $~lib/rt/tlsf/ROOT - local.tee $2 - call $~lib/rt/tlsf/searchBlock - local.tee $0 - i32.eqz - if - memory.size - local.tee $0 - i32.const 4 - local.get $2 - i32.load offset=1568 - local.get $0 - i32.const 16 - i32.shl - i32.const 4 - i32.sub - i32.ne - i32.shl - i32.const 65563 - i32.add - i32.const -65536 - i32.and - i32.const 16 - i32.shr_u - local.tee $4 - local.get $0 - local.get $4 - i32.gt_s - select - memory.grow - i32.const 0 - i32.lt_s - if - local.get $4 - memory.grow - i32.const 0 - i32.lt_s - if - unreachable - end - end - local.get $2 - local.get $0 - i32.const 16 - i32.shl - memory.size - i32.const 16 - i32.shl - call $~lib/rt/tlsf/addMemory - local.get $2 - call $~lib/rt/tlsf/searchBlock - local.tee $0 - i32.eqz - if - i32.const 0 - i32.const 1936 - i32.const 496 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - end - local.get $0 - i32.load - i32.const -4 - i32.and - i32.const 28 - i32.lt_u - if - i32.const 0 - i32.const 1936 - i32.const 498 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $0 - call $~lib/rt/tlsf/removeBlock - local.get $0 - i32.load - local.tee $4 - i32.const -4 - i32.and - i32.const 28 - i32.sub - local.tee $5 - i32.const 16 - i32.ge_u - if - local.get $0 - local.get $4 - i32.const 2 - i32.and - i32.const 28 - i32.or - i32.store - local.get $0 - i32.const 32 - i32.add - local.tee $4 - local.get $5 - i32.const 4 - i32.sub - i32.const 1 - i32.or - i32.store - local.get $2 - local.get $4 - call $~lib/rt/tlsf/insertBlock - else - local.get $0 - local.get $4 - i32.const -2 - i32.and - i32.store - local.get $0 - i32.const 4 - i32.add - local.get $0 - i32.load - i32.const -4 - i32.and - i32.add - local.tee $2 - local.get $2 - i32.load - i32.const -3 - i32.and - i32.store - end - local.get $0 - i32.const 8 - i32.store offset=12 - local.get $0 - i32.const 4 - i32.store offset=16 - global.get $~lib/rt/itcms/fromSpace - local.tee $2 - i32.load offset=8 - local.set $4 - local.get $0 - global.get $~lib/rt/itcms/white - local.get $2 - i32.or - i32.store offset=4 - local.get $0 - local.get $4 - i32.store offset=8 - local.get $4 - local.get $4 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $2 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/total - local.get $0 - i32.load - i32.const -4 - i32.and - i32.const 4 - i32.add - i32.add - global.set $~lib/rt/itcms/total - local.get $0 - i32.const 20 - i32.add - local.tee $0 - i32.const 0 - i32.store8 - local.get $0 - i32.const 4 - i32.add - local.tee $2 - i32.const 1 - i32.sub - i32.const 0 - i32.store8 - local.get $0 - i32.const 0 - i32.store8 offset=1 - local.get $0 - i32.const 0 - i32.store8 offset=2 - local.get $2 - i32.const 2 - i32.sub - i32.const 0 - i32.store8 - local.get $2 - i32.const 3 - i32.sub - i32.const 0 - i32.store8 - local.get $3 - local.get $0 - i32.store - local.get $0 - i32.const 2032 - i32.store - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1664 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - i32.const 2016 - i32.load - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - i32.load offset=4 - i32.const 3 - i32.and - local.tee $2 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - i32.const 2012 - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $2 - i32.const 3 - i32.eq - i32.and - if - i32.const 2012 - call $~lib/rt/itcms/Object#makeGray - end - end - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.load - i32.load - call_indirect $0 (type $none_=>_i32) - local.tee $0 - i32.store offset=8 - i32.const 1 - local.get $0 - i32.load - call_indirect $0 (type $i32_=>_i32) - i32.const 25 - i32.ne - if - i32.const 0 - i32.const 1088 - i32.const 82 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.add - global.set $~lib/memory/__stack_pointer - return - end - i32.const 18608 - i32.const 18656 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - ) - (func $start:function-expression - (local $0 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - block $folding-inner0 - global.get $~lib/memory/__stack_pointer - i32.const 2196 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - i32.const 1 - i32.const 1056 - i32.load - call_indirect $0 (type $i32_=>_i32) - i32.const 1 - i32.ne + i32.const 1 + i32.const 1056 + i32.load + call_indirect $0 (type $i32_=>_i32) + i32.const 1 + i32.ne if i32.const 0 i32.const 1088 @@ -1910,7 +1787,121 @@ i32.store i32.const 1888 global.set $~lib/rt/itcms/fromSpace - call $function-expression/testField + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 2196 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 2032 + i32.store + local.get $0 + local.get $0 + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 2196 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i32.const 0 + i32.store + local.get $0 + call $~lib/rt/itcms/__new + local.tee $0 + i32.store + local.get $0 + i32.const 2032 + i32.store + local.get $0 + local.set $1 + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1664 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + i32.const 2016 + i32.load + i32.const 3 + i32.and + i32.eq + if + local.get $1 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $1 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + i32.const 2012 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $1 + i32.const 3 + i32.eq + i32.and + if + i32.const 2012 + call $~lib/rt/itcms/Object#makeGray + end + end + end + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.load + i32.load + call_indirect $0 (type $none_=>_i32) + local.tee $0 + i32.store offset=8 + i32.const 1 + local.get $0 + i32.load + call_indirect $0 (type $i32_=>_i32) + i32.const 25 + i32.ne + if + i32.const 0 + i32.const 1088 + i32.const 82 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.add + global.set $~lib/memory/__stack_pointer call $function-expression/semanticallyAnonymous global.get $~lib/memory/__stack_pointer i32.const 4 diff --git a/tests/compiler/function-types.optimized.wat b/tests/compiler/function-types.optimized.wat index 691bd94c4a..ea2e0791c3 100644 --- a/tests/compiler/function-types.optimized.wat +++ b/tests/compiler/function-types.optimized.wat @@ -40,11 +40,11 @@ ) (func $~start (local $0 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1228 i32.lt_s @@ -188,10 +188,9 @@ end unreachable end - i32.const 1056 - local.set $0 global.get $~lib/memory/__stack_pointer i32.const 1056 + local.tee $0 i32.store end i32.const 2 diff --git a/tests/compiler/getter-call.optimized.wat b/tests/compiler/getter-call.optimized.wat index 57ab545b1b..3b0fdb08cb 100644 --- a/tests/compiler/getter-call.optimized.wat +++ b/tests/compiler/getter-call.optimized.wat @@ -1076,285 +1076,293 @@ i32.const 1344 global.set $~lib/rt/itcms/fromSpace ) - (func $getter-call/test (result i32) + (func $getter-call/C#constructor (result i32) (local $0 i32) (local $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner0 - global.get $~lib/memory/__stack_pointer - i32.const 1516 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $2 - i32.const 0 - i32.store - local.get $2 - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1516 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $3 - i32.const 0 - i32.store - global.get $~lib/rt/itcms/total - global.get $~lib/rt/itcms/threshold - i32.ge_u - if - block $__inlined_func$~lib/rt/itcms/interrupt - i32.const 2048 + global.get $~lib/memory/__stack_pointer + i32.const 1516 + i32.lt_s + if + i32.const 17920 + i32.const 17968 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $2 + i32.const 0 + i32.store + global.get $~lib/rt/itcms/total + global.get $~lib/rt/itcms/threshold + i32.ge_u + if + block $__inlined_func$~lib/rt/itcms/interrupt + i32.const 2048 + local.set $0 + loop $do-loop|0 + local.get $0 + call $~lib/rt/itcms/step + i32.sub local.set $0 - loop $do-loop|0 - local.get $0 - call $~lib/rt/itcms/step - i32.sub - local.set $0 - global.get $~lib/rt/itcms/state - i32.eqz - if - global.get $~lib/rt/itcms/total - i64.extend_i32_u - i64.const 200 - i64.mul - i64.const 100 - i64.div_u - i32.wrap_i64 - i32.const 1024 - i32.add - global.set $~lib/rt/itcms/threshold - br $__inlined_func$~lib/rt/itcms/interrupt - end - local.get $0 - i32.const 0 - i32.gt_s - br_if $do-loop|0 + global.get $~lib/rt/itcms/state + i32.eqz + if + global.get $~lib/rt/itcms/total + i64.extend_i32_u + i64.const 200 + i64.mul + i64.const 100 + i64.div_u + i32.wrap_i64 + i32.const 1024 + i32.add + global.set $~lib/rt/itcms/threshold + br $__inlined_func$~lib/rt/itcms/interrupt end - global.get $~lib/rt/itcms/total - local.tee $0 local.get $0 - global.get $~lib/rt/itcms/threshold - i32.sub - i32.const 1024 - i32.lt_u - i32.const 10 - i32.shl - i32.add - global.set $~lib/rt/itcms/threshold + i32.const 0 + i32.gt_s + br_if $do-loop|0 end - end - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - call $~lib/rt/tlsf/initialize - end - global.get $~lib/rt/tlsf/ROOT - local.tee $1 - call $~lib/rt/tlsf/searchBlock - local.tee $0 - i32.eqz - if - memory.size + global.get $~lib/rt/itcms/total local.tee $0 - i32.const 4 - local.get $1 - i32.load offset=1568 local.get $0 - i32.const 16 - i32.shl - i32.const 4 + global.get $~lib/rt/itcms/threshold i32.sub - i32.ne + i32.const 1024 + i32.lt_u + i32.const 10 i32.shl - i32.const 65563 i32.add - i32.const -65536 - i32.and - i32.const 16 - i32.shr_u - local.tee $4 - local.get $0 - local.get $4 - i32.gt_s - select + global.set $~lib/rt/itcms/threshold + end + end + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.tee $1 + call $~lib/rt/tlsf/searchBlock + local.tee $0 + i32.eqz + if + memory.size + local.tee $0 + i32.const 4 + local.get $1 + i32.load offset=1568 + local.get $0 + i32.const 16 + i32.shl + i32.const 4 + i32.sub + i32.ne + i32.shl + i32.const 65563 + i32.add + i32.const -65536 + i32.and + i32.const 16 + i32.shr_u + local.tee $3 + local.get $0 + local.get $3 + i32.gt_s + select + memory.grow + i32.const 0 + i32.lt_s + if + local.get $3 memory.grow i32.const 0 i32.lt_s if - local.get $4 - memory.grow - i32.const 0 - i32.lt_s - if - unreachable - end - end - local.get $1 - local.get $0 - i32.const 16 - i32.shl - memory.size - i32.const 16 - i32.shl - call $~lib/rt/tlsf/addMemory - local.get $1 - call $~lib/rt/tlsf/searchBlock - local.tee $0 - i32.eqz - if - i32.const 0 - i32.const 1392 - i32.const 496 - i32.const 16 - call $~lib/builtins/abort unreachable end end + local.get $1 local.get $0 - i32.load - i32.const -4 - i32.and - i32.const 28 - i32.lt_u + i32.const 16 + i32.shl + memory.size + i32.const 16 + i32.shl + call $~lib/rt/tlsf/addMemory + local.get $1 + call $~lib/rt/tlsf/searchBlock + local.tee $0 + i32.eqz if i32.const 0 i32.const 1392 - i32.const 498 - i32.const 14 + i32.const 496 + i32.const 16 call $~lib/builtins/abort unreachable end - local.get $1 - local.get $0 - call $~lib/rt/tlsf/removeBlock + end + local.get $0 + i32.load + i32.const -4 + i32.and + i32.const 28 + i32.lt_u + if + i32.const 0 + i32.const 1392 + i32.const 498 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + local.get $1 + local.get $0 + call $~lib/rt/tlsf/removeBlock + local.get $0 + i32.load + local.tee $3 + i32.const -4 + i32.and + i32.const 28 + i32.sub + local.tee $4 + i32.const 16 + i32.ge_u + if local.get $0 - i32.load - local.tee $4 - i32.const -4 + local.get $3 + i32.const 2 i32.and i32.const 28 - i32.sub - local.tee $5 - i32.const 16 - i32.ge_u - if - local.get $0 - local.get $4 - i32.const 2 - i32.and - i32.const 28 - i32.or - i32.store - local.get $0 - i32.const 32 - i32.add - local.tee $4 - local.get $5 - i32.const 4 - i32.sub - i32.const 1 - i32.or - i32.store - local.get $1 - local.get $4 - call $~lib/rt/tlsf/insertBlock - else - local.get $0 - local.get $4 - i32.const -2 - i32.and - i32.store - local.get $0 - i32.const 4 - i32.add - local.get $0 - i32.load - i32.const -4 - i32.and - i32.add - local.tee $1 - local.get $1 - i32.load - i32.const -3 - i32.and - i32.store - end - local.get $0 - i32.const 3 - i32.store offset=12 - local.get $0 - i32.const 0 - i32.store offset=16 - global.get $~lib/rt/itcms/fromSpace - local.tee $1 - i32.load offset=8 - local.set $4 - local.get $0 - global.get $~lib/rt/itcms/white - local.get $1 i32.or - i32.store offset=4 + i32.store local.get $0 + i32.const 32 + i32.add + local.tee $3 local.get $4 - i32.store offset=8 - local.get $4 - local.get $4 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 + i32.const 4 + i32.sub + i32.const 1 i32.or - i32.store offset=4 + i32.store local.get $1 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/total - local.get $0 - i32.load - i32.const -4 - i32.and - i32.const 4 - i32.add - i32.add - global.set $~lib/rt/itcms/total local.get $3 + call $~lib/rt/tlsf/insertBlock + else local.get $0 - i32.const 20 - i32.add - local.tee $0 + local.get $3 + i32.const -2 + i32.and i32.store - global.get $~lib/memory/__stack_pointer + local.get $0 i32.const 4 i32.add - global.set $~lib/memory/__stack_pointer - local.get $2 local.get $0 - i32.store - i32.const 1456 i32.load - call_indirect $0 (type $none_=>_i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 + i32.const -4 + i32.and i32.add - global.set $~lib/memory/__stack_pointer - return + local.tee $1 + local.get $1 + i32.load + i32.const -3 + i32.and + i32.store end - i32.const 17920 - i32.const 17968 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable + local.get $0 + i32.const 3 + i32.store offset=12 + local.get $0 + i32.const 0 + i32.store offset=16 + global.get $~lib/rt/itcms/fromSpace + local.tee $1 + i32.load offset=8 + local.set $3 + local.get $0 + local.get $1 + global.get $~lib/rt/itcms/white + i32.or + i32.store offset=4 + local.get $0 + local.get $3 + i32.store offset=8 + local.get $3 + local.get $3 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $1 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/total + local.get $0 + i32.load + i32.const -4 + i32.and + i32.const 4 + i32.add + i32.add + global.set $~lib/rt/itcms/total + local.get $2 + local.get $0 + i32.const 20 + i32.add + local.tee $0 + i32.store + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $0 + ) + (func $getter-call/test (result i32) + (local $0 i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1516 + i32.lt_s + if + i32.const 17920 + i32.const 17968 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $0 + i32.const 0 + i32.store + local.get $0 + call $getter-call/C#constructor + i32.store + i32.const 1456 + i32.load + call_indirect $0 (type $none_=>_i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) (local $1 i32) @@ -1364,19 +1372,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1386,15 +1394,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1417,7 +1426,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1427,23 +1436,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1451,7 +1460,7 @@ else i32.const 1472 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1248 @@ -1461,7 +1470,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1476 @@ -1476,16 +1485,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -1493,11 +1502,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/heap.optimized.wat b/tests/compiler/heap.optimized.wat index 09e33516f4..2767075375 100644 --- a/tests/compiler/heap.optimized.wat +++ b/tests/compiler/heap.optimized.wat @@ -1684,17 +1684,17 @@ local.get $0 local.get $2 call $~lib/rt/tlsf/allocateBlock - local.tee $7 - i32.const 4 - i32.add - local.set $2 + local.set $7 local.get $1 i32.load i32.const -4 i32.and local.set $6 block $~lib/util/memory/memmove|inlined.0 - local.get $2 + local.get $7 + i32.const 4 + i32.add + local.tee $2 local.get $1 i32.const 4 i32.add @@ -1828,11 +1828,11 @@ local.get $6 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $2 local.get $6 i32.const 1 i32.sub local.tee $6 + local.get $2 i32.add local.get $3 local.get $6 @@ -1847,11 +1847,11 @@ i32.const 8 i32.ge_u if - local.get $2 local.get $6 i32.const 8 i32.sub local.tee $6 + local.get $2 i32.add local.get $3 local.get $6 @@ -1865,11 +1865,11 @@ loop $while-continue|5 local.get $6 if - local.get $2 local.get $6 i32.const 1 i32.sub local.tee $6 + local.get $2 i32.add local.get $3 local.get $6 diff --git a/tests/compiler/implicit-getter-setter.optimized.wat b/tests/compiler/implicit-getter-setter.optimized.wat index cf9d68706b..79b6b5b2d1 100644 --- a/tests/compiler/implicit-getter-setter.optimized.wat +++ b/tests/compiler/implicit-getter-setter.optimized.wat @@ -114,17 +114,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 17868 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -138,9 +139,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -150,15 +151,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -1193,7 +1194,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1201,7 +1202,7 @@ memory.size local.tee $1 i32.const 4 - local.get $2 + local.get $3 i32.load offset=1568 local.get $1 i32.const 16 @@ -1216,16 +1217,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $1 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1233,7 +1234,7 @@ unreachable end end - local.get $2 + local.get $3 local.get $1 i32.const 16 i32.shl @@ -1241,7 +1242,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1268,7 +1269,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 @@ -1278,7 +1279,7 @@ i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $2 i32.const 16 i32.ge_u if @@ -1293,13 +1294,13 @@ i32.const 32 i32.add local.tee $4 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 + local.get $3 local.get $4 call $~lib/rt/tlsf/insertBlock else @@ -1334,8 +1335,8 @@ i32.load offset=8 local.set $2 local.get $1 - global.get $~lib/rt/itcms/white local.get $0 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $1 @@ -1517,11 +1518,11 @@ ) (func $export:implicit-getter-setter/Basic#constructor (param $0 i32) (param $1 i32) (result i32) (local $2 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1484 i32.lt_s @@ -1639,11 +1640,11 @@ ) (func $export:implicit-getter-setter/Managed#constructor (param $0 i32) (param $1 i32) (result i32) (local $2 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1484 i32.lt_s diff --git a/tests/compiler/infer-array.optimized.wat b/tests/compiler/infer-array.optimized.wat index 0231fefe00..9704769a86 100644 --- a/tests/compiler/infer-array.optimized.wat +++ b/tests/compiler/infer-array.optimized.wat @@ -140,17 +140,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18596 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -164,9 +165,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -176,15 +177,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -1508,8 +1509,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -2419,83 +2420,83 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 2212 - i32.lt_s - if - i32.const 18624 - i32.const 18672 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $0 - i64.const 0 - i64.store - local.get $0 - i64.const 0 - i64.store offset=8 - memory.size - i32.const 16 - i32.shl - i32.const 18596 - i32.sub - i32.const 1 - i32.shr_u - global.set $~lib/rt/itcms/threshold - i32.const 1204 - i32.const 1200 - i32.store - i32.const 1208 - i32.const 1200 - i32.store - i32.const 1200 - global.set $~lib/rt/itcms/pinSpace - i32.const 1236 - i32.const 1232 - i32.store - i32.const 1240 - i32.const 1232 - i32.store - i32.const 1232 - global.set $~lib/rt/itcms/toSpace - i32.const 1380 - i32.const 1376 - i32.store - i32.const 1384 - i32.const 1376 - i32.store - i32.const 1376 - global.set $~lib/rt/itcms/fromSpace - local.get $0 - i32.const 3 - i32.const 2 - i32.const 3 - i32.const 1056 - call $~lib/rt/__newArray - i32.store - global.get $~lib/memory/__stack_pointer - i32.const 3 - i32.const 3 - i32.const 4 - i32.const 1536 - call $~lib/rt/__newArray - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 2 - i32.const 2 - i32.const 5 - i32.const 1584 - call $~lib/rt/__newArray - local.tee $0 - i32.store block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 2212 + i32.lt_s + if + i32.const 18624 + i32.const 18672 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i64.const 0 + i64.store offset=8 + memory.size + i32.const 16 + i32.shl + i32.const 18596 + i32.sub + i32.const 1 + i32.shr_u + global.set $~lib/rt/itcms/threshold + i32.const 1204 + i32.const 1200 + i32.store + i32.const 1208 + i32.const 1200 + i32.store + i32.const 1200 + global.set $~lib/rt/itcms/pinSpace + i32.const 1236 + i32.const 1232 + i32.store + i32.const 1240 + i32.const 1232 + i32.store + i32.const 1232 + global.set $~lib/rt/itcms/toSpace + i32.const 1380 + i32.const 1376 + i32.store + i32.const 1384 + i32.const 1376 + i32.store + i32.const 1376 + global.set $~lib/rt/itcms/fromSpace + local.get $0 + i32.const 3 + i32.const 2 + i32.const 3 + i32.const 1056 + call $~lib/rt/__newArray + i32.store + global.get $~lib/memory/__stack_pointer + i32.const 3 + i32.const 3 + i32.const 4 + i32.const 1536 + call $~lib/rt/__newArray + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + i32.const 2 + i32.const 2 + i32.const 5 + i32.const 1584 + call $~lib/rt/__newArray + local.tee $0 + i32.store local.get $0 i32.load offset=12 i32.const 1 diff --git a/tests/compiler/infer-generic.optimized.wat b/tests/compiler/infer-generic.optimized.wat index 90f50013c7..a1ecb29aa6 100644 --- a/tests/compiler/infer-generic.optimized.wat +++ b/tests/compiler/infer-generic.optimized.wat @@ -2,11 +2,11 @@ (type $none_=>_none (func)) (type $i32_f32_i32_i32_=>_i32 (func (param i32 f32 i32 i32) (result i32))) (type $i32_i32_=>_none (func (param i32 i32))) + (type $none_=>_i32 (func (result i32))) (type $i32_=>_i32 (func (param i32) (result i32))) (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) - (type $none_=>_i32 (func (result i32))) (type $f32_=>_f32 (func (param f32) (result f32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (global $~lib/rt/itcms/total (mut i32) (i32.const 0)) @@ -1019,6 +1019,262 @@ end end ) + (func $~lib/rt/itcms/__new (result i32) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/total + global.get $~lib/rt/itcms/threshold + i32.ge_u + if + block $__inlined_func$~lib/rt/itcms/interrupt + i32.const 2048 + local.set $0 + loop $do-loop|0 + local.get $0 + call $~lib/rt/itcms/step + i32.sub + local.set $0 + global.get $~lib/rt/itcms/state + i32.eqz + if + global.get $~lib/rt/itcms/total + i64.extend_i32_u + i64.const 200 + i64.mul + i64.const 100 + i64.div_u + i32.wrap_i64 + i32.const 1024 + i32.add + global.set $~lib/rt/itcms/threshold + br $__inlined_func$~lib/rt/itcms/interrupt + end + local.get $0 + i32.const 0 + i32.gt_s + br_if $do-loop|0 + end + global.get $~lib/rt/itcms/total + local.tee $0 + local.get $0 + global.get $~lib/rt/itcms/threshold + i32.sub + i32.const 1024 + i32.lt_u + i32.const 10 + i32.shl + i32.add + global.set $~lib/rt/itcms/threshold + end + end + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.tee $1 + call $~lib/rt/tlsf/searchBlock + local.tee $0 + i32.eqz + if + memory.size + local.tee $0 + i32.const 4 + local.get $1 + i32.load offset=1568 + local.get $0 + i32.const 16 + i32.shl + i32.const 4 + i32.sub + i32.ne + i32.shl + i32.const 65563 + i32.add + i32.const -65536 + i32.and + i32.const 16 + i32.shr_u + local.tee $2 + local.get $0 + local.get $2 + i32.gt_s + select + memory.grow + i32.const 0 + i32.lt_s + if + local.get $2 + memory.grow + i32.const 0 + i32.lt_s + if + unreachable + end + end + local.get $1 + local.get $0 + i32.const 16 + i32.shl + memory.size + i32.const 16 + i32.shl + call $~lib/rt/tlsf/addMemory + local.get $1 + call $~lib/rt/tlsf/searchBlock + local.tee $0 + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 496 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + end + local.get $0 + i32.load + i32.const -4 + i32.and + i32.const 28 + i32.lt_u + if + i32.const 0 + i32.const 1568 + i32.const 498 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + local.get $1 + local.get $0 + call $~lib/rt/tlsf/removeBlock + local.get $0 + i32.load + local.tee $2 + i32.const -4 + i32.and + i32.const 28 + i32.sub + local.tee $3 + i32.const 16 + i32.ge_u + if + local.get $0 + local.get $2 + i32.const 2 + i32.and + i32.const 28 + i32.or + i32.store + local.get $0 + i32.const 32 + i32.add + local.tee $2 + local.get $3 + i32.const 4 + i32.sub + i32.const 1 + i32.or + i32.store + local.get $1 + local.get $2 + call $~lib/rt/tlsf/insertBlock + else + local.get $0 + local.get $2 + i32.const -2 + i32.and + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $0 + i32.load + i32.const -4 + i32.and + i32.add + local.tee $1 + local.get $1 + i32.load + i32.const -3 + i32.and + i32.store + end + local.get $0 + i32.const 5 + i32.store offset=12 + local.get $0 + i32.const 4 + i32.store offset=16 + global.get $~lib/rt/itcms/fromSpace + local.tee $1 + i32.load offset=8 + local.set $2 + local.get $0 + local.get $1 + global.get $~lib/rt/itcms/white + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.store offset=8 + local.get $2 + local.get $2 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $1 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/total + local.get $0 + i32.load + i32.const -4 + i32.and + i32.const 4 + i32.add + i32.add + global.set $~lib/rt/itcms/total + local.get $0 + i32.const 20 + i32.add + local.tee $0 + i32.const 0 + i32.store8 + local.get $0 + i32.const 4 + i32.add + local.tee $1 + i32.const 1 + i32.sub + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store8 offset=1 + local.get $0 + i32.const 0 + i32.store8 offset=2 + local.get $1 + i32.const 2 + i32.sub + i32.const 0 + i32.store8 + local.get $1 + i32.const 3 + i32.sub + i32.const 0 + i32.store8 + local.get $0 + ) (func $infer-generic/test1 (param $0 f32) (result f32) local.get $0 ) @@ -1078,41 +1334,41 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1684 i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $0 i64.const 0 i64.store - local.get $2 + local.get $0 i32.const 0 i32.store offset=8 - local.get $2 + local.get $0 i32.const 1152 i32.store - local.get $2 + local.get $0 i32.const 1200 i32.store offset=4 + i32.const 0 + local.set $0 i32.const 1164 i32.load - local.set $2 + local.set $3 loop $for-loop|0 - local.get $2 + local.get $3 i32.const 1164 i32.load - local.tee $3 + local.tee $2 local.get $2 local.get $3 - i32.lt_s + i32.gt_s select local.get $0 i32.gt_s @@ -1181,260 +1437,12 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $0 i32.const 0 i32.store - global.get $~lib/rt/itcms/total - global.get $~lib/rt/itcms/threshold - i32.ge_u - if - block $__inlined_func$~lib/rt/itcms/interrupt - i32.const 2048 - local.set $0 - loop $do-loop|0 - local.get $0 - call $~lib/rt/itcms/step - i32.sub - local.set $0 - global.get $~lib/rt/itcms/state - i32.eqz - if - global.get $~lib/rt/itcms/total - i64.extend_i32_u - i64.const 200 - i64.mul - i64.const 100 - i64.div_u - i32.wrap_i64 - i32.const 1024 - i32.add - global.set $~lib/rt/itcms/threshold - br $__inlined_func$~lib/rt/itcms/interrupt - end - local.get $0 - i32.const 0 - i32.gt_s - br_if $do-loop|0 - end - global.get $~lib/rt/itcms/total - local.tee $0 - local.get $0 - global.get $~lib/rt/itcms/threshold - i32.sub - i32.const 1024 - i32.lt_u - i32.const 10 - i32.shl - i32.add - global.set $~lib/rt/itcms/threshold - end - end - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - call $~lib/rt/tlsf/initialize - end - global.get $~lib/rt/tlsf/ROOT - local.tee $1 - call $~lib/rt/tlsf/searchBlock - local.tee $0 - i32.eqz - if - memory.size - local.tee $0 - i32.const 4 - local.get $1 - i32.load offset=1568 - local.get $0 - i32.const 16 - i32.shl - i32.const 4 - i32.sub - i32.ne - i32.shl - i32.const 65563 - i32.add - i32.const -65536 - i32.and - i32.const 16 - i32.shr_u - local.tee $4 - local.get $0 - local.get $4 - i32.gt_s - select - memory.grow - i32.const 0 - i32.lt_s - if - local.get $4 - memory.grow - i32.const 0 - i32.lt_s - if - unreachable - end - end - local.get $1 - local.get $0 - i32.const 16 - i32.shl - memory.size - i32.const 16 - i32.shl - call $~lib/rt/tlsf/addMemory - local.get $1 - call $~lib/rt/tlsf/searchBlock - local.tee $0 - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 496 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - end - local.get $0 - i32.load - i32.const -4 - i32.and - i32.const 28 - i32.lt_u - if - i32.const 0 - i32.const 1568 - i32.const 498 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - local.get $1 - local.get $0 - call $~lib/rt/tlsf/removeBlock - local.get $0 - i32.load - local.tee $4 - i32.const -4 - i32.and - i32.const 28 - i32.sub - local.tee $5 - i32.const 16 - i32.ge_u - if - local.get $0 - local.get $4 - i32.const 2 - i32.and - i32.const 28 - i32.or - i32.store - local.get $0 - i32.const 32 - i32.add - local.tee $4 - local.get $5 - i32.const 4 - i32.sub - i32.const 1 - i32.or - i32.store - local.get $1 - local.get $4 - call $~lib/rt/tlsf/insertBlock - else - local.get $0 - local.get $4 - i32.const -2 - i32.and - i32.store - local.get $0 - i32.const 4 - i32.add - local.get $0 - i32.load - i32.const -4 - i32.and - i32.add - local.tee $1 - local.get $1 - i32.load - i32.const -3 - i32.and - i32.store - end - local.get $0 - i32.const 5 - i32.store offset=12 - local.get $0 - i32.const 4 - i32.store offset=16 - global.get $~lib/rt/itcms/fromSpace - local.tee $1 - i32.load offset=8 - local.set $4 local.get $0 - global.get $~lib/rt/itcms/white - local.get $1 - i32.or - i32.store offset=4 - local.get $0 - local.get $4 - i32.store offset=8 - local.get $4 - local.get $4 - i32.load offset=4 - i32.const 3 - i32.and - local.get $0 - i32.or - i32.store offset=4 - local.get $1 - local.get $0 - i32.store offset=8 - global.get $~lib/rt/itcms/total - local.get $0 - i32.load - i32.const -4 - i32.and - i32.const 4 - i32.add - i32.add - global.set $~lib/rt/itcms/total - local.get $0 - i32.const 20 - i32.add + call $~lib/rt/itcms/__new local.tee $0 - i32.const 0 - i32.store8 - local.get $0 - i32.const 4 - i32.add - local.tee $1 - i32.const 1 - i32.sub - i32.const 0 - i32.store8 - local.get $0 - i32.const 0 - i32.store8 offset=1 - local.get $0 - i32.const 0 - i32.store8 offset=2 - local.get $1 - i32.const 2 - i32.sub - i32.const 0 - i32.store8 - local.get $1 - i32.const 3 - i32.sub - i32.const 0 - i32.store8 - local.get $3 - local.get $0 i32.store local.get $0 i32.const 0 @@ -1500,19 +1508,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1522,15 +1530,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1553,7 +1562,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1563,23 +1572,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1587,7 +1596,7 @@ else i32.const 1616 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1424 @@ -1597,7 +1606,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1620 @@ -1612,16 +1621,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -1629,11 +1638,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/inlining.optimized.wat b/tests/compiler/inlining.optimized.wat index f6b5d6d2ce..aaaa9fcd6c 100644 --- a/tests/compiler/inlining.optimized.wat +++ b/tests/compiler/inlining.optimized.wat @@ -1351,8 +1351,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -1610,189 +1610,187 @@ (local $0 i32) (local $1 i32) (local $2 i32) - block $__inlined_func$start:inlining + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 1580 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store + i32.const 2 + i32.const 1104 + i32.load + call_indirect $0 (type $i32_=>_i32) + i32.const 2 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 68 + i32.const 3 + call $~lib/builtins/abort + unreachable + end global.get $~lib/memory/__stack_pointer + local.tee $0 + i32.const 123 + i32.store + local.get $0 i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + memory.size + i32.const 16 + i32.shl + i32.const 17964 + i32.sub + i32.const 1 + i32.shr_u + global.set $~lib/rt/itcms/threshold + i32.const 1252 + i32.const 1248 + i32.store + i32.const 1256 + i32.const 1248 + i32.store + i32.const 1248 + global.set $~lib/rt/itcms/pinSpace + i32.const 1284 + i32.const 1280 + i32.store + i32.const 1288 + i32.const 1280 + i32.store + i32.const 1280 + global.set $~lib/rt/itcms/toSpace + i32.const 1428 + i32.const 1424 + i32.store + i32.const 1432 + i32.const 1424 + i32.store + i32.const 1424 + global.set $~lib/rt/itcms/fromSpace + global.get $~lib/memory/__stack_pointer + i32.const 12 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner0 - global.get $~lib/memory/__stack_pointer - i32.const 1580 - i32.lt_s - br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 1580 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 16 + i32.const 5 + call $~lib/rt/itcms/__new + local.tee $2 + i32.store + local.get $2 + i32.const 3 + i32.store offset=8 + local.get $2 + i32.const 0 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + local.get $2 + i32.eqz + if global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.const 6 + call $~lib/rt/itcms/__new + local.tee $2 + i32.store offset=4 + end + local.get $2 + i32.const 1 + i32.store + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $2 + i32.const 2 + i32.store offset=4 + local.get $2 + i32.store + local.get $2 + i32.const 4 + i32.store offset=12 + local.get $0 + local.get $2 + i32.store offset=8 + local.get $2 + i32.load + i32.const 1 + i32.ne + if i32.const 0 - i32.store - i32.const 2 - i32.const 1104 - i32.load - call_indirect $0 (type $i32_=>_i32) - i32.const 2 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 68 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $0 - i32.const 123 - i32.store - local.get $0 - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - memory.size - i32.const 16 - i32.shl - i32.const 17964 - i32.sub - i32.const 1 - i32.shr_u - global.set $~lib/rt/itcms/threshold - i32.const 1252 - i32.const 1248 - i32.store - i32.const 1256 - i32.const 1248 - i32.store - i32.const 1248 - global.set $~lib/rt/itcms/pinSpace - i32.const 1284 - i32.const 1280 - i32.store - i32.const 1288 - i32.const 1280 - i32.store - i32.const 1280 - global.set $~lib/rt/itcms/toSpace - i32.const 1428 - i32.const 1424 - i32.store - i32.const 1432 - i32.const 1424 - i32.store - i32.const 1424 - global.set $~lib/rt/itcms/fromSpace - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1580 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $1 - i64.const 0 - i64.store - local.get $1 + i32.const 1056 + i32.const 95 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.load offset=4 + i32.const 2 + i32.ne + if i32.const 0 - i32.store offset=8 - local.get $1 - i32.const 16 - i32.const 5 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store - local.get $0 + i32.const 1056 + i32.const 96 i32.const 3 - i32.store offset=8 - local.get $0 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.load offset=8 + i32.const 3 + i32.ne + if i32.const 0 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.const 6 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store offset=4 - end - local.get $0 - i32.const 1 - i32.store - local.get $0 + i32.const 1056 + i32.const 97 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.load offset=12 + i32.const 4 + i32.ne + if i32.const 0 - i32.store offset=4 - local.get $0 - i32.const 2 - i32.store offset=4 - local.get $0 - i32.store - local.get $0 - i32.const 4 - i32.store offset=12 - local.get $1 - local.get $0 - i32.store offset=8 - local.get $0 - i32.load - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 95 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - i32.const 2 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 96 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=8 + i32.const 1056 + i32.const 98 i32.const 3 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 97 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=12 - i32.const 4 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 98 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.add - global.set $~lib/memory/__stack_pointer - br $__inlined_func$start:inlining + call $~lib/builtins/abort + unreachable end - i32.const 17984 - i32.const 18032 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.add + global.set $~lib/memory/__stack_pointer + return end + i32.const 17984 + i32.const 18032 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) (local $1 i32) @@ -1802,19 +1800,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1824,15 +1822,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1855,7 +1854,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1865,23 +1864,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1889,7 +1888,7 @@ else i32.const 1520 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1328 @@ -1899,7 +1898,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1524 @@ -1914,16 +1913,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -1931,11 +1930,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/instanceof-class.optimized.wat b/tests/compiler/instanceof-class.optimized.wat index 2c2f76df5b..be445b886e 100644 --- a/tests/compiler/instanceof-class.optimized.wat +++ b/tests/compiler/instanceof-class.optimized.wat @@ -1070,7 +1070,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1078,7 +1078,7 @@ memory.size local.tee $1 i32.const 4 - local.get $2 + local.get $3 i32.load offset=1568 local.get $1 i32.const 16 @@ -1093,16 +1093,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $1 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1110,7 +1110,7 @@ unreachable end end - local.get $2 + local.get $3 local.get $1 i32.const 16 i32.shl @@ -1118,7 +1118,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1145,7 +1145,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 @@ -1155,7 +1155,7 @@ i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $2 i32.const 16 i32.ge_u if @@ -1170,13 +1170,13 @@ i32.const 32 i32.add local.tee $4 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 + local.get $3 local.get $4 call $~lib/rt/tlsf/insertBlock else @@ -1211,8 +1211,8 @@ i32.load offset=8 local.set $2 local.get $1 - global.get $~lib/rt/itcms/white local.get $0 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $1 @@ -1245,43 +1245,43 @@ (func $start:instanceof-class (local $0 i32) (local $1 i32) - memory.size - i32.const 16 - i32.shl - i32.const 17948 - i32.sub - i32.const 1 - i32.shr_u - global.set $~lib/rt/itcms/threshold - i32.const 1172 - i32.const 1168 - i32.store - i32.const 1176 - i32.const 1168 - i32.store - i32.const 1168 - global.set $~lib/rt/itcms/pinSpace - i32.const 1204 - i32.const 1200 - i32.store - i32.const 1208 - i32.const 1200 - i32.store - i32.const 1200 - global.set $~lib/rt/itcms/toSpace - i32.const 1348 - i32.const 1344 - i32.store - i32.const 1352 - i32.const 1344 - i32.store - i32.const 1344 - global.set $~lib/rt/itcms/fromSpace - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + memory.size + i32.const 16 + i32.shl + i32.const 17948 + i32.sub + i32.const 1 + i32.shr_u + global.set $~lib/rt/itcms/threshold + i32.const 1172 + i32.const 1168 + i32.store + i32.const 1176 + i32.const 1168 + i32.store + i32.const 1168 + global.set $~lib/rt/itcms/pinSpace + i32.const 1204 + i32.const 1200 + i32.store + i32.const 1208 + i32.const 1200 + i32.store + i32.const 1200 + global.set $~lib/rt/itcms/toSpace + i32.const 1348 + i32.const 1344 + i32.store + i32.const 1352 + i32.const 1344 + i32.store + i32.const 1344 + global.set $~lib/rt/itcms/fromSpace + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1564 i32.lt_s @@ -1418,7 +1418,7 @@ br_if $__inlined_func$instanceof-class/Child~instanceof drop i32.const 1 - block $__inlined_func$~lib/rt/__instanceof6 (result i32) + block $__inlined_func$~lib/rt/__instanceof9 (result i32) local.get $1 i32.const 20 i32.sub @@ -1428,12 +1428,12 @@ i32.load i32.le_u if - loop $do-loop|07 + loop $do-loop|010 i32.const 1 local.get $0 i32.const 6 i32.eq - br_if $__inlined_func$~lib/rt/__instanceof6 + br_if $__inlined_func$~lib/rt/__instanceof9 drop local.get $0 i32.const 3 @@ -1442,7 +1442,7 @@ i32.add i32.load offset=4 local.tee $0 - br_if $do-loop|07 + br_if $do-loop|010 end end i32.const 0 @@ -1521,19 +1521,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1543,15 +1543,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1574,7 +1575,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1584,23 +1585,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1608,7 +1609,7 @@ else i32.const 1504 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1248 @@ -1618,7 +1619,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1508 @@ -1633,16 +1634,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -1650,11 +1651,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/issues/1095.optimized.wat b/tests/compiler/issues/1095.optimized.wat index 047f574504..9990f8ae53 100644 --- a/tests/compiler/issues/1095.optimized.wat +++ b/tests/compiler/issues/1095.optimized.wat @@ -2,9 +2,9 @@ (type $none_=>_none (func)) (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) + (type $none_=>_i32 (func (result i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) - (type $none_=>_i32 (func (result i32))) (type $i32_=>_i32 (func (param i32) (result i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (global $~lib/rt/itcms/total (mut i32) (i32.const 0)) @@ -108,17 +108,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18004 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -132,9 +133,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -144,15 +145,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -1131,6 +1132,262 @@ end end ) + (func $~lib/rt/itcms/__new (result i32) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/itcms/total + global.get $~lib/rt/itcms/threshold + i32.ge_u + if + block $__inlined_func$~lib/rt/itcms/interrupt + i32.const 2048 + local.set $0 + loop $do-loop|0 + local.get $0 + call $~lib/rt/itcms/step + i32.sub + local.set $0 + global.get $~lib/rt/itcms/state + i32.eqz + if + global.get $~lib/rt/itcms/total + i64.extend_i32_u + i64.const 200 + i64.mul + i64.const 100 + i64.div_u + i32.wrap_i64 + i32.const 1024 + i32.add + global.set $~lib/rt/itcms/threshold + br $__inlined_func$~lib/rt/itcms/interrupt + end + local.get $0 + i32.const 0 + i32.gt_s + br_if $do-loop|0 + end + global.get $~lib/rt/itcms/total + local.tee $0 + local.get $0 + global.get $~lib/rt/itcms/threshold + i32.sub + i32.const 1024 + i32.lt_u + i32.const 10 + i32.shl + i32.add + global.set $~lib/rt/itcms/threshold + end + end + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.tee $1 + call $~lib/rt/tlsf/searchBlock + local.tee $0 + i32.eqz + if + memory.size + local.tee $0 + i32.const 4 + local.get $1 + i32.load offset=1568 + local.get $0 + i32.const 16 + i32.shl + i32.const 4 + i32.sub + i32.ne + i32.shl + i32.const 65563 + i32.add + i32.const -65536 + i32.and + i32.const 16 + i32.shr_u + local.tee $2 + local.get $0 + local.get $2 + i32.gt_s + select + memory.grow + i32.const 0 + i32.lt_s + if + local.get $2 + memory.grow + i32.const 0 + i32.lt_s + if + unreachable + end + end + local.get $1 + local.get $0 + i32.const 16 + i32.shl + memory.size + i32.const 16 + i32.shl + call $~lib/rt/tlsf/addMemory + local.get $1 + call $~lib/rt/tlsf/searchBlock + local.tee $0 + i32.eqz + if + i32.const 0 + i32.const 1392 + i32.const 496 + i32.const 16 + call $~lib/builtins/abort + unreachable + end + end + local.get $0 + i32.load + i32.const -4 + i32.and + i32.const 28 + i32.lt_u + if + i32.const 0 + i32.const 1392 + i32.const 498 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + local.get $1 + local.get $0 + call $~lib/rt/tlsf/removeBlock + local.get $0 + i32.load + local.tee $2 + i32.const -4 + i32.and + i32.const 28 + i32.sub + local.tee $3 + i32.const 16 + i32.ge_u + if + local.get $0 + local.get $2 + i32.const 2 + i32.and + i32.const 28 + i32.or + i32.store + local.get $0 + i32.const 32 + i32.add + local.tee $2 + local.get $3 + i32.const 4 + i32.sub + i32.const 1 + i32.or + i32.store + local.get $1 + local.get $2 + call $~lib/rt/tlsf/insertBlock + else + local.get $0 + local.get $2 + i32.const -2 + i32.and + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $0 + i32.load + i32.const -4 + i32.and + i32.add + local.tee $1 + local.get $1 + i32.load + i32.const -3 + i32.and + i32.store + end + local.get $0 + i32.const 3 + i32.store offset=12 + local.get $0 + i32.const 4 + i32.store offset=16 + global.get $~lib/rt/itcms/fromSpace + local.tee $1 + i32.load offset=8 + local.set $2 + local.get $0 + local.get $1 + global.get $~lib/rt/itcms/white + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.store offset=8 + local.get $2 + local.get $2 + i32.load offset=4 + i32.const 3 + i32.and + local.get $0 + i32.or + i32.store offset=4 + local.get $1 + local.get $0 + i32.store offset=8 + global.get $~lib/rt/itcms/total + local.get $0 + i32.load + i32.const -4 + i32.and + i32.const 4 + i32.add + i32.add + global.set $~lib/rt/itcms/total + local.get $0 + i32.const 20 + i32.add + local.tee $0 + i32.const 0 + i32.store8 + local.get $0 + i32.const 4 + i32.add + local.tee $1 + i32.const 1 + i32.sub + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store8 offset=1 + local.get $0 + i32.const 0 + i32.store8 offset=2 + local.get $1 + i32.const 2 + i32.sub + i32.const 0 + i32.store8 + local.get $1 + i32.const 3 + i32.sub + i32.const 0 + i32.store8 + local.get $0 + ) (func $~lib/rt/__visit_members (param $0 i32) block $folding-inner0 block $invalid @@ -1162,15 +1419,12 @@ (func $~start (local $0 i32) (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner1 block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1620 i32.lt_s @@ -1223,262 +1477,16 @@ local.tee $0 i32.const 0 i32.store - global.get $~lib/rt/itcms/total - global.get $~lib/rt/itcms/threshold - i32.ge_u - if - block $__inlined_func$~lib/rt/itcms/interrupt - i32.const 2048 - local.set $1 - loop $do-loop|0 - local.get $1 - call $~lib/rt/itcms/step - i32.sub - local.set $1 - global.get $~lib/rt/itcms/state - i32.eqz - if - global.get $~lib/rt/itcms/total - i64.extend_i32_u - i64.const 200 - i64.mul - i64.const 100 - i64.div_u - i32.wrap_i64 - i32.const 1024 - i32.add - global.set $~lib/rt/itcms/threshold - br $__inlined_func$~lib/rt/itcms/interrupt - end - local.get $1 - i32.const 0 - i32.gt_s - br_if $do-loop|0 - end - global.get $~lib/rt/itcms/total - local.tee $1 - local.get $1 - global.get $~lib/rt/itcms/threshold - i32.sub - i32.const 1024 - i32.lt_u - i32.const 10 - i32.shl - i32.add - global.set $~lib/rt/itcms/threshold - end - end - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - call $~lib/rt/tlsf/initialize - end - global.get $~lib/rt/tlsf/ROOT - local.tee $3 - call $~lib/rt/tlsf/searchBlock - local.tee $1 - i32.eqz - if - memory.size - local.tee $1 - i32.const 4 - local.get $3 - i32.load offset=1568 - local.get $1 - i32.const 16 - i32.shl - i32.const 4 - i32.sub - i32.ne - i32.shl - i32.const 65563 - i32.add - i32.const -65536 - i32.and - i32.const 16 - i32.shr_u - local.tee $2 - local.get $1 - local.get $2 - i32.gt_s - select - memory.grow - i32.const 0 - i32.lt_s - if - local.get $2 - memory.grow - i32.const 0 - i32.lt_s - if - unreachable - end - end - local.get $3 - local.get $1 - i32.const 16 - i32.shl - memory.size - i32.const 16 - i32.shl - call $~lib/rt/tlsf/addMemory - local.get $3 - call $~lib/rt/tlsf/searchBlock - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1392 - i32.const 496 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - end - local.get $1 - i32.load - i32.const -4 - i32.and - i32.const 28 - i32.lt_u - if - i32.const 0 - i32.const 1392 - i32.const 498 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - local.get $3 - local.get $1 - call $~lib/rt/tlsf/removeBlock - local.get $1 - i32.load - local.tee $4 - i32.const -4 - i32.and - i32.const 28 - i32.sub - local.tee $2 - i32.const 16 - i32.ge_u - if - local.get $1 - local.get $4 - i32.const 2 - i32.and - i32.const 28 - i32.or - i32.store - local.get $1 - i32.const 32 - i32.add - local.tee $4 - local.get $2 - i32.const 4 - i32.sub - i32.const 1 - i32.or - i32.store - local.get $3 - local.get $4 - call $~lib/rt/tlsf/insertBlock - else - local.get $1 - local.get $4 - i32.const -2 - i32.and - i32.store - local.get $1 - i32.const 4 - i32.add - local.get $1 - i32.load - i32.const -4 - i32.and - i32.add - local.tee $2 - local.get $2 - i32.load - i32.const -3 - i32.and - i32.store - end - local.get $1 - i32.const 3 - i32.store offset=12 - local.get $1 - i32.const 4 - i32.store offset=16 - global.get $~lib/rt/itcms/fromSpace - local.tee $2 - i32.load offset=8 - local.set $3 - local.get $1 - global.get $~lib/rt/itcms/white - local.get $2 - i32.or - i32.store offset=4 - local.get $1 - local.get $3 - i32.store offset=8 - local.get $3 - local.get $3 - i32.load offset=4 - i32.const 3 - i32.and - local.get $1 - i32.or - i32.store offset=4 - local.get $2 - local.get $1 - i32.store offset=8 - global.get $~lib/rt/itcms/total - local.get $1 - i32.load - i32.const -4 - i32.and - i32.const 4 - i32.add - i32.add - global.set $~lib/rt/itcms/total - local.get $1 - i32.const 20 - i32.add - local.tee $1 - i32.const 0 - i32.store8 - local.get $1 - i32.const 4 - i32.add - local.tee $2 - i32.const 1 - i32.sub - i32.const 0 - i32.store8 - local.get $1 - i32.const 0 - i32.store8 offset=1 - local.get $1 - i32.const 0 - i32.store8 offset=2 - local.get $2 - i32.const 2 - i32.sub - i32.const 0 - i32.store8 - local.get $2 - i32.const 3 - i32.sub - i32.const 0 - i32.store8 local.get $0 - local.get $1 + call $~lib/rt/itcms/__new + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 1456 i32.store - local.get $1 + local.get $0 + local.set $1 + local.get $0 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white @@ -1494,7 +1502,7 @@ i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $1 global.get $~lib/rt/itcms/white i32.eqz i32.eq @@ -1505,7 +1513,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $1 i32.const 3 i32.eq i32.and @@ -1520,10 +1528,10 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -1532,15 +1540,15 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 local.get $1 + local.get $0 i32.load - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.eqz if i32.const 1488 @@ -1550,47 +1558,47 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 if - local.get $1 + local.get $0 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white - local.get $0 + local.get $1 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $1 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $1 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $1 + local.get $0 i32.const 3 i32.eq i32.and if - local.get $0 + local.get $1 call $~lib/rt/itcms/Object#makeGray end end diff --git a/tests/compiler/issues/1225.optimized.wat b/tests/compiler/issues/1225.optimized.wat index 0e379f351a..fd1144f30e 100644 --- a/tests/compiler/issues/1225.optimized.wat +++ b/tests/compiler/issues/1225.optimized.wat @@ -1018,12 +1018,12 @@ if block $__inlined_func$~lib/rt/itcms/interrupt i32.const 2048 - local.set $1 + local.set $0 loop $do-loop|0 - local.get $1 + local.get $0 call $~lib/rt/itcms/step i32.sub - local.set $1 + local.set $0 global.get $~lib/rt/itcms/state i32.eqz if @@ -1039,7 +1039,7 @@ global.set $~lib/rt/itcms/threshold br $__inlined_func$~lib/rt/itcms/interrupt end - local.get $1 + local.get $0 i32.const 0 i32.gt_s br_if $do-loop|0 @@ -1204,8 +1204,8 @@ i32.load offset=8 local.set $2 local.get $0 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $0 @@ -1281,13 +1281,13 @@ local.tee $0 i32.const 0 i32.store + local.get $0 i32.const 12 local.get $1 i32.sub i32.const -4 i32.and local.tee $3 - local.get $0 i32.add local.tee $1 i32.const 4 @@ -1582,19 +1582,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1604,15 +1604,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1635,7 +1636,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1645,23 +1646,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1669,7 +1670,7 @@ else i32.const 1488 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1248 @@ -1679,7 +1680,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1492 @@ -1694,16 +1695,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -1711,11 +1712,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/issues/1699.optimized.wat b/tests/compiler/issues/1699.optimized.wat index 613b8c695d..8bbe9de5a4 100644 --- a/tests/compiler/issues/1699.optimized.wat +++ b/tests/compiler/issues/1699.optimized.wat @@ -1,9 +1,9 @@ (module (type $none_=>_none (func)) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) + (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) - (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) (type $none_=>_i32 (func (result i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) @@ -115,17 +115,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18140 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -139,9 +140,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -151,15 +152,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -1457,7 +1458,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1483,32 +1484,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1524,16 +1525,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1541,7 +1542,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1549,8 +1550,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1567,7 +1568,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1577,13 +1578,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1596,40 +1597,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -1659,8 +1660,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -2376,6 +2377,231 @@ i32.store8 end ) + (func $~lib/rt/itcms/__renew (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $0 + i32.const 20 + i32.sub + local.tee $2 + i32.load + i32.const -4 + i32.and + i32.const 16 + i32.sub + local.get $1 + i32.ge_u + if + local.get $2 + local.get $1 + i32.store offset=16 + local.get $0 + return + end + local.get $1 + local.get $2 + i32.load offset=12 + call $~lib/rt/itcms/__new + local.set $4 + local.get $1 + local.get $2 + i32.load offset=16 + local.tee $2 + local.get $1 + local.get $2 + i32.lt_u + select + local.set $5 + block $~lib/util/memory/memmove|inlined.0 + local.get $4 + local.tee $1 + local.get $0 + i32.eq + br_if $~lib/util/memory/memmove|inlined.0 + local.get $0 + local.get $1 + i32.sub + local.get $5 + i32.sub + i32.const 0 + local.get $5 + i32.const 1 + i32.shl + i32.sub + i32.le_u + if + local.get $1 + local.get $0 + local.get $5 + call $~lib/util/memory/memcpy + br $~lib/util/memory/memmove|inlined.0 + end + local.get $0 + local.get $1 + i32.gt_u + if + local.get $0 + i32.const 7 + i32.and + local.get $1 + i32.const 7 + i32.and + i32.eq + if + loop $while-continue|0 + local.get $1 + i32.const 7 + i32.and + if + local.get $5 + i32.eqz + br_if $~lib/util/memory/memmove|inlined.0 + local.get $5 + i32.const 1 + i32.sub + local.set $5 + local.get $1 + local.tee $2 + i32.const 1 + i32.add + local.set $1 + local.get $0 + local.tee $3 + i32.const 1 + i32.add + local.set $0 + local.get $2 + local.get $3 + i32.load8_u + i32.store8 + br $while-continue|0 + end + end + loop $while-continue|1 + local.get $5 + i32.const 8 + i32.ge_u + if + local.get $1 + local.get $0 + i64.load + i64.store + local.get $5 + i32.const 8 + i32.sub + local.set $5 + local.get $1 + i32.const 8 + i32.add + local.set $1 + local.get $0 + i32.const 8 + i32.add + local.set $0 + br $while-continue|1 + end + end + end + loop $while-continue|2 + local.get $5 + if + local.get $1 + local.tee $2 + i32.const 1 + i32.add + local.set $1 + local.get $0 + local.tee $3 + i32.const 1 + i32.add + local.set $0 + local.get $2 + local.get $3 + i32.load8_u + i32.store8 + local.get $5 + i32.const 1 + i32.sub + local.set $5 + br $while-continue|2 + end + end + else + local.get $0 + i32.const 7 + i32.and + local.get $1 + i32.const 7 + i32.and + i32.eq + if + loop $while-continue|3 + local.get $1 + local.get $5 + i32.add + i32.const 7 + i32.and + if + local.get $5 + i32.eqz + br_if $~lib/util/memory/memmove|inlined.0 + local.get $5 + i32.const 1 + i32.sub + local.tee $5 + local.get $1 + i32.add + local.get $0 + local.get $5 + i32.add + i32.load8_u + i32.store8 + br $while-continue|3 + end + end + loop $while-continue|4 + local.get $5 + i32.const 8 + i32.ge_u + if + local.get $5 + i32.const 8 + i32.sub + local.tee $5 + local.get $1 + i32.add + local.get $0 + local.get $5 + i32.add + i64.load + i64.store + br $while-continue|4 + end + end + end + loop $while-continue|5 + local.get $5 + if + local.get $5 + i32.const 1 + i32.sub + local.tee $5 + local.get $1 + i32.add + local.get $0 + local.get $5 + i32.add + i32.load8_u + i32.store8 + br $while-continue|5 + end + end + end + end + local.get $4 + ) (func $~lib/array/Array#__set (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) @@ -2383,10 +2609,6 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) local.get $0 i32.load offset=12 local.get $1 @@ -2406,16 +2628,17 @@ local.get $1 i32.const 1 i32.add - local.tee $11 - local.tee $5 + local.tee $6 + local.tee $4 local.get $0 + local.tee $3 i32.load offset=8 - local.tee $9 + local.tee $5 i32.const 2 i32.shr_u i32.gt_u if - local.get $5 + local.get $4 i32.const 268435455 i32.gt_u if @@ -2426,285 +2649,65 @@ call $~lib/builtins/abort unreachable end - block $__inlined_func$~lib/rt/itcms/__renew - local.get $9 - i32.const 1 - i32.shl - local.tee $3 - i32.const 1073741820 - local.get $3 - i32.const 1073741820 - i32.lt_u - select - local.tee $4 - local.get $5 - i32.const 8 - local.get $5 - i32.const 8 - i32.gt_u - select - i32.const 2 - i32.shl - local.tee $3 - local.get $3 - local.get $4 - i32.lt_u - select - local.tee $10 - local.tee $6 - local.get $0 - i32.load - local.tee $12 - local.tee $3 - i32.const 20 - i32.sub - local.tee $5 - i32.load - i32.const -4 - i32.and - i32.const 16 - i32.sub - i32.le_u - if - local.get $5 - local.get $6 - i32.store offset=16 - br $__inlined_func$~lib/rt/itcms/__renew - end - local.get $6 - local.get $5 - i32.load offset=12 - call $~lib/rt/itcms/__new - local.tee $7 - local.set $4 - local.get $6 - local.get $5 - i32.load offset=16 - local.tee $5 - local.get $5 - local.get $6 - i32.gt_u - select - local.set $8 - block $~lib/util/memory/memmove|inlined.0 - local.get $3 - local.get $4 - i32.eq - br_if $~lib/util/memory/memmove|inlined.0 - local.get $3 - local.get $4 - i32.sub - local.get $8 - i32.sub - i32.const 0 - local.get $8 - i32.const 1 - i32.shl - i32.sub - i32.le_u - if - local.get $4 - local.get $3 - local.get $8 - call $~lib/util/memory/memcpy - br $~lib/util/memory/memmove|inlined.0 - end - local.get $3 - local.get $4 - i32.gt_u - if - local.get $3 - i32.const 7 - i32.and - local.get $4 - i32.const 7 - i32.and - i32.eq - if - loop $while-continue|0 - local.get $4 - i32.const 7 - i32.and - if - local.get $8 - i32.eqz - br_if $~lib/util/memory/memmove|inlined.0 - local.get $8 - i32.const 1 - i32.sub - local.set $8 - local.get $4 - local.tee $6 - i32.const 1 - i32.add - local.set $4 - local.get $3 - local.tee $5 - i32.const 1 - i32.add - local.set $3 - local.get $6 - local.get $5 - i32.load8_u - i32.store8 - br $while-continue|0 - end - end - loop $while-continue|1 - local.get $8 - i32.const 8 - i32.ge_u - if - local.get $4 - local.get $3 - i64.load - i64.store - local.get $8 - i32.const 8 - i32.sub - local.set $8 - local.get $4 - i32.const 8 - i32.add - local.set $4 - local.get $3 - i32.const 8 - i32.add - local.set $3 - br $while-continue|1 - end - end - end - loop $while-continue|2 - local.get $8 - if - local.get $4 - local.tee $6 - i32.const 1 - i32.add - local.set $4 - local.get $3 - local.tee $5 - i32.const 1 - i32.add - local.set $3 - local.get $6 - local.get $5 - i32.load8_u - i32.store8 - local.get $8 - i32.const 1 - i32.sub - local.set $8 - br $while-continue|2 - end - end - else - local.get $3 - i32.const 7 - i32.and - local.get $4 - i32.const 7 - i32.and - i32.eq - if - loop $while-continue|3 - local.get $4 - local.get $8 - i32.add - i32.const 7 - i32.and - if - local.get $8 - i32.eqz - br_if $~lib/util/memory/memmove|inlined.0 - local.get $4 - local.get $8 - i32.const 1 - i32.sub - local.tee $8 - i32.add - local.get $3 - local.get $8 - i32.add - i32.load8_u - i32.store8 - br $while-continue|3 - end - end - loop $while-continue|4 - local.get $8 - i32.const 8 - i32.ge_u - if - local.get $4 - local.get $8 - i32.const 8 - i32.sub - local.tee $8 - i32.add - local.get $3 - local.get $8 - i32.add - i64.load - i64.store - br $while-continue|4 - end - end - end - loop $while-continue|5 - local.get $8 - if - local.get $4 - local.get $8 - i32.const 1 - i32.sub - local.tee $8 - i32.add - local.get $3 - local.get $8 - i32.add - i32.load8_u - i32.store8 - br $while-continue|5 - end - end - end - end - local.get $7 - local.set $3 - end local.get $3 - local.get $9 + i32.load + local.tee $7 + local.get $5 + i32.const 1 + i32.shl + local.tee $8 + i32.const 1073741820 + local.get $8 + i32.const 1073741820 + i32.lt_u + select + local.tee $8 + local.get $4 + i32.const 8 + local.get $4 + i32.const 8 + i32.gt_u + select + i32.const 2 + i32.shl + local.tee $4 + local.get $4 + local.get $8 + i32.lt_u + select + local.tee $8 + call $~lib/rt/itcms/__renew + local.tee $4 + local.get $5 i32.add - local.get $10 - local.get $9 + local.get $8 + local.get $5 i32.sub call $~lib/memory/memory.fill - local.get $3 - local.get $12 + local.get $4 + local.get $7 i32.ne if - local.get $0 local.get $3 + local.get $4 i32.store - local.get $0 local.get $3 + local.get $4 i32.store offset=4 - local.get $3 + local.get $4 if - local.get $0 local.get $3 + local.get $4 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end end - local.get $0 - local.get $10 + local.get $3 + local.get $8 i32.store offset=8 end local.get $0 - local.get $11 + local.get $6 i32.store offset=12 end local.get $0 @@ -2727,6 +2730,8 @@ (local $0 i32) (local $1 i32) (local $2 i32) + (local $3 i32) + (local $4 i32) memory.size i32.const 16 i32.shl @@ -2769,13 +2774,13 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i64.const 0 i64.store offset=8 - local.get $1 + local.get $2 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -2791,107 +2796,150 @@ i32.const 16 i32.const 4 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 0 i32.store offset=4 - local.get $0 + local.get $3 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 32 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $4 i32.store offset=4 - local.get $2 + local.get $4 i32.const 32 call $~lib/memory/memory.fill - local.get $0 - local.get $2 + local.get $3 + local.get $4 i32.store - local.get $2 + local.get $4 if - local.get $0 - local.get $2 - i32.const 0 - call $byn-split-outlined-A$~lib/rt/itcms/__link + local.get $3 + i32.eqz + if + i32.const 0 + i32.const 1216 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $4 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $3 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $1 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $1 + i32.const 3 + i32.eq + i32.and + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + end + end + end end - local.get $0 - local.get $2 + local.get $3 + local.get $4 i32.store offset=4 - local.get $0 + local.get $3 i32.const 32 i32.store offset=8 - local.get $0 + local.get $3 i32.const 3 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $0 + local.get $2 + local.get $3 i32.store call $issues/1699/MultiAssignmentTest#constructor - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=8 local.get $0 + i32.store offset=8 + local.get $3 i32.const 1 - local.get $1 - call $~lib/array/Array#__set local.get $0 + call $~lib/array/Array#__set + local.get $3 i32.const 1 call $~lib/array/Array#__get - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 local.get $0 + i32.store offset=4 + local.get $3 i32.const 0 - local.get $1 + local.get $0 call $~lib/array/Array#__set i32.const 0 - local.set $1 + local.set $0 loop $for-loop|0 - local.get $0 + local.get $3 i32.load offset=12 - local.get $1 + local.get $0 i32.gt_s if global.get $~lib/memory/__stack_pointer call $issues/1699/MultiAssignmentTest#constructor - local.tee $2 + local.tee $1 i32.store offset=12 - local.get $1 + local.get $0 i32.const 1 i32.gt_s if + local.get $3 local.get $0 local.get $1 - local.get $2 call $~lib/array/Array#__set end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end - local.get $0 + local.get $3 i32.const 0 call $~lib/array/Array#__get - local.get $0 + local.get $3 i32.const 1 call $~lib/array/Array#__get i32.ne @@ -2903,10 +2951,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 2 call $~lib/array/Array#__get - local.get $0 + local.get $3 i32.const 1 call $~lib/array/Array#__get i32.eq diff --git a/tests/compiler/logical.optimized.wat b/tests/compiler/logical.optimized.wat index 6e20512cfb..af388e947c 100644 --- a/tests/compiler/logical.optimized.wat +++ b/tests/compiler/logical.optimized.wat @@ -1365,8 +1365,8 @@ i32.load offset=8 local.set $3 local.get $0 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $0 @@ -1412,19 +1412,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1434,15 +1434,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1465,7 +1466,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1475,23 +1476,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1499,7 +1500,7 @@ else i32.const 1488 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1296 @@ -1509,7 +1510,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1492 @@ -1524,16 +1525,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -1541,11 +1542,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/loop-flow.optimized.wat b/tests/compiler/loop-flow.optimized.wat index df5214e620..86b6f8db31 100644 --- a/tests/compiler/loop-flow.optimized.wat +++ b/tests/compiler/loop-flow.optimized.wat @@ -35,13 +35,17 @@ else local.get $0 i32.const 2 - i32.ne - br_if $while-continue|0 - i32.const 1104 - i32.const 1056 - i32.const 24 - i32.const 22 - call $~lib/builtins/abort + i32.eq + if + i32.const 1104 + i32.const 1056 + i32.const 24 + i32.const 22 + call $~lib/builtins/abort + unreachable + else + br $while-continue|0 + end unreachable end end diff --git a/tests/compiler/managed-cast.optimized.wat b/tests/compiler/managed-cast.optimized.wat index b42cc8d816..3a9372aceb 100644 --- a/tests/compiler/managed-cast.optimized.wat +++ b/tests/compiler/managed-cast.optimized.wat @@ -1054,7 +1054,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1062,7 +1062,7 @@ memory.size local.tee $1 i32.const 4 - local.get $2 + local.get $3 i32.load offset=1568 local.get $1 i32.const 16 @@ -1077,16 +1077,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $1 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1094,7 +1094,7 @@ unreachable end end - local.get $2 + local.get $3 local.get $1 i32.const 16 i32.shl @@ -1102,7 +1102,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1129,7 +1129,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 @@ -1139,7 +1139,7 @@ i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $2 i32.const 16 i32.ge_u if @@ -1154,13 +1154,13 @@ i32.const 32 i32.add local.tee $4 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 + local.get $3 local.get $4 call $~lib/rt/tlsf/insertBlock else @@ -1195,8 +1195,8 @@ i32.load offset=8 local.set $2 local.get $1 - global.get $~lib/rt/itcms/white local.get $0 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $1 @@ -1265,11 +1265,11 @@ (local $0 i32) (local $1 i32) (local $2 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1676 i32.lt_s @@ -1421,12 +1421,12 @@ i32.add global.set $~lib/memory/__stack_pointer call $managed-cast/Cat#constructor - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -1435,10 +1435,10 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $1 + local.get $0 i32.eqz if i32.const 1456 @@ -1448,34 +1448,34 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $1 + local.get $0 i32.store offset=4 - block $__inlined_func$~lib/rt/__instanceof11 (result i32) - local.get $1 + block $__inlined_func$~lib/rt/__instanceof14 (result i32) + local.get $0 i32.const 20 i32.sub i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1632 i32.load i32.le_u if - loop $do-loop|012 + loop $do-loop|015 i32.const 1 - local.get $0 + local.get $1 i32.const 3 i32.eq - br_if $__inlined_func$~lib/rt/__instanceof11 + br_if $__inlined_func$~lib/rt/__instanceof14 drop - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1636 i32.add i32.load offset=4 - local.tee $0 - br_if $do-loop|012 + local.tee $1 + br_if $do-loop|015 end end i32.const 0 @@ -1490,10 +1490,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 8 i32.add global.set $~lib/memory/__stack_pointer @@ -1515,7 +1515,7 @@ local.tee $2 i32.const 0 i32.store - block $__inlined_func$~lib/rt/__instanceof14 (result i32) + block $__inlined_func$~lib/rt/__instanceof18 (result i32) local.get $0 i32.const 20 i32.sub @@ -1525,12 +1525,12 @@ i32.load i32.le_u if - loop $do-loop|015 + loop $do-loop|019 i32.const 1 local.get $1 i32.const 3 i32.eq - br_if $__inlined_func$~lib/rt/__instanceof14 + br_if $__inlined_func$~lib/rt/__instanceof18 drop local.get $1 i32.const 3 @@ -1539,7 +1539,7 @@ i32.add i32.load offset=4 local.tee $1 - br_if $do-loop|015 + br_if $do-loop|019 end end i32.const 0 @@ -1580,7 +1580,7 @@ i32.store local.get $0 if - block $__inlined_func$~lib/rt/__instanceof17 (result i32) + block $__inlined_func$~lib/rt/__instanceof22 (result i32) local.get $0 i32.const 20 i32.sub @@ -1590,12 +1590,12 @@ i32.load i32.le_u if - loop $do-loop|018 + loop $do-loop|023 i32.const 1 local.get $1 i32.const 3 i32.eq - br_if $__inlined_func$~lib/rt/__instanceof17 + br_if $__inlined_func$~lib/rt/__instanceof22 drop local.get $1 i32.const 3 @@ -1604,7 +1604,7 @@ i32.add i32.load offset=4 local.tee $1 - br_if $do-loop|018 + br_if $do-loop|023 end end i32.const 0 @@ -1679,12 +1679,11 @@ ) (func $managed-cast/Cat#constructor (result i32) (local $0 i32) - (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1676 i32.lt_s @@ -1747,19 +1746,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1769,15 +1768,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1800,7 +1800,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1810,23 +1810,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1834,7 +1834,7 @@ else i32.const 1632 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1248 @@ -1844,7 +1844,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1636 @@ -1859,16 +1859,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -1876,11 +1876,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/memmove.optimized.wat b/tests/compiler/memmove.optimized.wat index 21ae653cfb..decfd1403c 100644 --- a/tests/compiler/memmove.optimized.wat +++ b/tests/compiler/memmove.optimized.wat @@ -14,80 +14,41 @@ (local $4 i32) (local $5 i32) local.get $0 - block $folding-inner0 - local.get $0 + local.set $5 + local.get $0 + local.get $1 + i32.eq + if + local.get $5 + return + end + local.get $0 + local.get $1 + i32.lt_u + if local.get $1 - i32.eq - br_if $folding-inner0 + i32.const 7 + i32.and local.get $0 - local.get $1 - i32.lt_u + i32.const 7 + i32.and + i32.eq if - local.get $1 - i32.const 7 - i32.and - local.get $0 - i32.const 7 - i32.and - i32.eq - if - loop $while-continue|0 - local.get $0 - i32.const 7 - i32.and - if - local.get $2 - i32.eqz - br_if $folding-inner0 - local.get $2 - i32.const 1 - i32.sub - local.set $2 - local.get $0 - local.tee $3 - i32.const 1 - i32.add - local.set $0 - local.get $1 - local.tee $4 - i32.const 1 - i32.add - local.set $1 - local.get $3 - local.get $4 - i32.load8_u - i32.store8 - br $while-continue|0 - end - end - loop $while-continue|1 + loop $while-continue|0 + local.get $0 + i32.const 7 + i32.and + if local.get $2 - i32.const 8 - i32.ge_u + i32.eqz if - local.get $0 - local.get $1 - i64.load - i64.store - local.get $2 - i32.const 8 - i32.sub - local.set $2 - local.get $0 - i32.const 8 - i32.add - local.set $0 - local.get $1 - i32.const 8 - i32.add - local.set $1 - br $while-continue|1 + local.get $5 + return end - end - end - loop $while-continue|2 - local.get $2 - if + local.get $2 + i32.const 1 + i32.sub + local.set $2 local.get $0 local.tee $3 i32.const 1 @@ -102,85 +63,133 @@ local.get $4 i32.load8_u i32.store8 + br $while-continue|0 + end + end + loop $while-continue|1 + local.get $2 + i32.const 8 + i32.ge_u + if + local.get $0 + local.get $1 + i64.load + i64.store local.get $2 - i32.const 1 + i32.const 8 i32.sub local.set $2 - br $while-continue|2 + local.get $0 + i32.const 8 + i32.add + local.set $0 + local.get $1 + i32.const 8 + i32.add + local.set $1 + br $while-continue|1 end end - else - local.get $1 - i32.const 7 - i32.and - local.get $0 - i32.const 7 - i32.and - i32.eq + end + loop $while-continue|2 + local.get $2 if - loop $while-continue|3 - local.get $0 + local.get $0 + local.tee $3 + i32.const 1 + i32.add + local.set $0 + local.get $1 + local.tee $4 + i32.const 1 + i32.add + local.set $1 + local.get $3 + local.get $4 + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + br $while-continue|2 + end + end + else + local.get $1 + i32.const 7 + i32.and + local.get $0 + i32.const 7 + i32.and + i32.eq + if + loop $while-continue|3 + local.get $0 + local.get $2 + i32.add + i32.const 7 + i32.and + if local.get $2 - i32.add - i32.const 7 - i32.and + i32.eqz if - local.get $2 - i32.eqz - br_if $folding-inner0 - local.get $0 - local.get $2 - i32.const 1 - i32.sub - local.tee $2 - i32.add - local.get $1 - local.get $2 - i32.add - i32.load8_u - i32.store8 - br $while-continue|3 + local.get $5 + return end - end - loop $while-continue|4 + local.get $0 local.get $2 - i32.const 8 - i32.ge_u - if - local.get $0 - local.get $2 - i32.const 8 - i32.sub - local.tee $2 - i32.add - local.get $1 - local.get $2 - i32.add - i64.load - i64.store - br $while-continue|4 - end + i32.const 1 + i32.sub + local.tee $2 + i32.add + local.get $1 + local.get $2 + i32.add + i32.load8_u + i32.store8 + br $while-continue|3 end end - loop $while-continue|5 + loop $while-continue|4 local.get $2 + i32.const 8 + i32.ge_u if local.get $0 local.get $2 - i32.const 1 + i32.const 8 i32.sub local.tee $2 i32.add local.get $1 local.get $2 i32.add - i32.load8_u - i32.store8 - br $while-continue|5 + i64.load + i64.store + br $while-continue|4 end end end + loop $while-continue|5 + local.get $2 + if + local.get $0 + local.get $2 + i32.const 1 + i32.sub + local.tee $2 + i32.add + local.get $1 + local.get $2 + i32.add + i32.load8_u + i32.store8 + br $while-continue|5 + end + end end + local.get $5 ) (func $~start i32.const 8 diff --git a/tests/compiler/new.optimized.wat b/tests/compiler/new.optimized.wat index 25df47817e..f16c43ce54 100644 --- a/tests/compiler/new.optimized.wat +++ b/tests/compiler/new.optimized.wat @@ -1108,7 +1108,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1116,7 +1116,7 @@ memory.size local.tee $1 i32.const 4 - local.get $2 + local.get $3 i32.load offset=1568 local.get $1 i32.const 16 @@ -1131,16 +1131,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $1 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1148,7 +1148,7 @@ unreachable end end - local.get $2 + local.get $3 local.get $1 i32.const 16 i32.shl @@ -1156,7 +1156,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1183,7 +1183,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 @@ -1193,7 +1193,7 @@ i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $2 i32.const 16 i32.ge_u if @@ -1208,13 +1208,13 @@ i32.const 32 i32.add local.tee $4 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 + local.get $3 local.get $4 call $~lib/rt/tlsf/insertBlock else @@ -1249,8 +1249,8 @@ i32.load offset=8 local.set $2 local.get $1 - global.get $~lib/rt/itcms/white local.get $0 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $1 @@ -1563,19 +1563,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1585,15 +1585,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1616,7 +1617,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1626,23 +1627,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1650,7 +1651,7 @@ else i32.const 1440 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1248 @@ -1660,7 +1661,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1444 @@ -1675,16 +1676,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -1692,11 +1693,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/number.optimized.wat b/tests/compiler/number.optimized.wat index 33c808e718..8ec2c58840 100644 --- a/tests/compiler/number.optimized.wat +++ b/tests/compiler/number.optimized.wat @@ -1386,8 +1386,8 @@ i32.load offset=8 local.set $3 local.get $1 - global.get $~lib/rt/itcms/white local.get $2 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $1 @@ -1701,25 +1701,25 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 4684 - i32.lt_s - if - i32.const 21088 - i32.const 21136 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/number/itoa32 + block $__inlined_func$~lib/util/number/itoa32 (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 4684 + i32.lt_s + if + i32.const 21088 + i32.const 21136 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store local.get $0 i32.eqz if @@ -1728,7 +1728,6 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1248 - local.set $0 br $__inlined_func$~lib/util/number/itoa32 end global.get $~lib/memory/__stack_pointer @@ -1739,70 +1738,70 @@ local.get $0 i32.const 31 i32.shr_u - local.tee $1 + local.tee $0 select local.tee $2 - local.tee $0 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.get $1 + local.get $0 i32.add - local.tee $3 + local.tee $1 i32.const 1 i32.shl call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store - local.get $0 - local.get $2 local.get $3 - call $~lib/util/number/utoa32_dec_lut + local.get $2 local.get $1 + call $~lib/util/number/utoa32_dec_lut + local.get $0 if - local.get $0 + local.get $3 i32.const 45 i32.store16 end @@ -1810,8 +1809,8 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $3 end - local.get $0 ) (func $~lib/string/String.__eq (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -1963,8 +1962,7 @@ i64.shr_u i32.wrap_i64 local.tee $2 - local.set $5 - local.get $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) @@ -3234,8 +3232,6 @@ (func $~lib/util/number/prettify (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) local.get $1 i32.eqz if @@ -3254,17 +3250,17 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 21 i32.le_s local.get $0 - local.get $2 + local.get $3 i32.le_s i32.and if (result i32) loop $for-loop|0 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -3281,26 +3277,26 @@ br $for-loop|0 end end - local.get $2 + local.get $3 i32.const 1 i32.shl i32.const 3456 i32.add i32.const 3145774 i32.store - local.get $2 + local.get $3 i32.const 2 i32.add else - local.get $2 + local.get $3 i32.const 21 i32.le_s - local.get $2 + local.get $3 i32.const 0 i32.gt_s i32.and if (result i32) - local.get $2 + local.get $3 i32.const 1 i32.shl i32.const 3456 @@ -3322,16 +3318,16 @@ i32.const 1 i32.add else - local.get $2 + local.get $3 i32.const 0 i32.le_s - local.get $2 + local.get $3 i32.const -6 i32.gt_s i32.and if (result i32) i32.const 2 - local.get $2 + local.get $3 i32.sub local.tee $2 i32.const 1 @@ -3378,7 +3374,8 @@ i32.const 3458 i32.const 101 i32.store16 - local.get $2 + i32.const 3460 + local.get $3 i32.const 1 i32.sub local.tee $0 @@ -3392,56 +3389,52 @@ local.set $0 end local.get $0 - local.tee $2 + local.get $0 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 - i32.const 3460 - local.get $0 - local.get $2 i32.const 1 i32.add local.tee $0 @@ -3471,87 +3464,84 @@ local.get $1 i32.const 3456 i32.add - local.tee $1 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $1 + local.get $2 i32.const 4 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.tee $2 + local.tee $1 i32.const 0 i32.lt_s - local.tee $4 + local.tee $3 if i32.const 0 - local.get $2 + local.get $1 i32.sub - local.set $2 + local.set $1 end - local.get $2 - local.tee $5 + local.get $1 + local.get $1 i32.const 100000 i32.lt_u if (result i32) - local.get $5 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $5 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $5 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $5 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $5 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $5 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $5 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $5 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.set $5 - local.get $2 - local.get $5 i32.const 1 i32.add - local.tee $2 + local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $2 i32.const 45 i32.const 43 - local.get $4 + local.get $3 select i32.store16 offset=4 local.get $0 - local.get $2 + local.get $1 i32.add i32.const 2 i32.add @@ -3598,8 +3588,7 @@ (local $2 i64) (local $3 i64) (local $4 i64) - (local $5 i64) - (local $6 i32) + (local $5 i32) global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -3691,21 +3680,21 @@ local.tee $3 i64.const 31 i64.shl - local.tee $4 local.set $1 local.get $2 i64.const 32 i64.shr_u - local.tee $5 + local.tee $2 + i64.const 31 + i64.shl + local.get $3 i64.const 31 i64.shl - local.tee $2 local.get $3 i64.const 10 i64.shl i64.const 32 i64.shr_u - local.get $4 i64.add local.tee $4 i64.const 32 @@ -3714,7 +3703,7 @@ local.get $4 i64.const 4294967295 i64.and - local.get $5 + local.get $2 i64.const 10 i64.shl i64.add @@ -3726,10 +3715,12 @@ i64.const 1 i64.sub local.set $4 + local.get $2 + i64.const 31 + i64.shl local.get $1 i64.const 32 i64.shr_u - local.get $2 i64.add local.get $1 i64.const 4294967295 @@ -3744,7 +3735,7 @@ i32.const 2 i32.add local.get $4 - local.get $5 + local.get $2 i64.const 2147483647 i64.mul local.get $3 @@ -3760,7 +3751,7 @@ i64.const 32 i64.shr_u i64.add - local.get $5 + local.get $2 i64.const 4294966784 i64.mul local.get $1 @@ -3784,9 +3775,9 @@ global.get $~lib/memory/__stack_pointer local.get $0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store - local.get $6 + local.get $5 i32.const 3456 local.get $0 call $~lib/memory/memory.copy @@ -3796,12 +3787,12 @@ global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer local.tee $0 - local.get $6 + local.get $5 i32.store local.get $0 i32.const 4448 i32.store offset=4 - local.get $6 + local.get $5 i32.const 4448 call $~lib/string/String.__eq i32.eqz @@ -3817,10 +3808,10 @@ call $~lib/number/I32#toString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $5 local.get $0 i32.store - local.get $6 + local.get $5 i32.const 4480 i32.store offset=4 local.get $0 @@ -3839,10 +3830,10 @@ call $~lib/number/I32#toString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $5 local.get $0 i32.store - local.get $6 + local.get $5 i32.const 4512 i32.store offset=4 local.get $0 @@ -3861,10 +3852,10 @@ call $~lib/number/I32#toString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $5 local.get $0 i32.store - local.get $6 + local.get $5 i32.const 4544 i32.store offset=4 local.get $0 @@ -3887,10 +3878,10 @@ call $~lib/number/I32#toString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $5 local.get $0 i32.store - local.get $6 + local.get $5 i32.const 4576 i32.store offset=4 local.get $0 @@ -3913,10 +3904,10 @@ call $~lib/number/I32#toString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $5 local.get $0 i32.store - local.get $6 + local.get $5 i32.const 3232 i32.store offset=4 local.get $0 @@ -3978,10 +3969,10 @@ call $~lib/number/I32#toString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $5 local.get $0 i32.store - local.get $6 + local.get $5 i32.const 3232 i32.store offset=4 local.get $0 @@ -4005,10 +3996,10 @@ call $~lib/number/I32#toString local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $5 local.get $0 i32.store - local.get $6 + local.get $5 i32.const 4576 i32.store offset=4 local.get $0 @@ -4044,19 +4035,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -4066,15 +4057,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -4097,7 +4089,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -4107,23 +4099,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -4131,7 +4123,7 @@ else i32.const 4656 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1472 @@ -4141,7 +4133,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 4660 @@ -4156,16 +4148,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -4173,11 +4165,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/object-literal.optimized.wat b/tests/compiler/object-literal.optimized.wat index 3188c252bb..c9915ce2bf 100644 --- a/tests/compiler/object-literal.optimized.wat +++ b/tests/compiler/object-literal.optimized.wat @@ -1,12 +1,11 @@ (module (type $i32_=>_none (func (param i32))) - (type $none_=>_none (func)) (type $i32_i32_=>_none (func (param i32 i32))) (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) + (type $none_=>_none (func)) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) - (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $none_=>_i32 (func (result i32))) - (type $i32_=>_i32 (func (param i32) (result i32))) + (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (global $~lib/rt/itcms/white (mut i32) (i32.const 0)) (global $~lib/rt/itcms/iter (mut i32) (i32.const 0)) @@ -73,17 +72,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18156 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -97,9 +97,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -109,15 +109,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -182,6 +182,61 @@ local.get $0 i32.store offset=8 ) + (func $object-literal/Managed#set:baz (param $0 i32) (param $1 i32) + local.get $0 + local.get $1 + i32.store offset=4 + local.get $1 + if + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1104 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $1 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $0 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $0 + i32.const 3 + i32.eq + i32.and + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + end + end + end + end + ) (func $~lib/rt/itcms/visitRoots (local $0 i32) (local $1 i32) @@ -1218,19 +1273,12 @@ end end ) - (func $~lib/rt/tlsf/__alloc (param $0 i32) (result i32) - (local $1 i32) + (func $~lib/rt/tlsf/allocateBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - call $~lib/rt/tlsf/initialize - end - global.get $~lib/rt/tlsf/ROOT - local.tee $1 local.get $0 + local.get $1 i32.const 1073741820 i32.gt_u if @@ -1241,13 +1289,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $0 + local.get $1 i32.const 19 i32.add i32.const -16 @@ -1257,11 +1305,11 @@ end local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if memory.size - local.tee $0 + local.tee $1 local.get $3 i32.const 536870910 i32.lt_u @@ -1280,9 +1328,9 @@ local.get $3 end i32.const 4 - local.get $1 - i32.load offset=1568 local.get $0 + i32.load offset=1568 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1297,7 +1345,7 @@ i32.const 16 i32.shr_u local.tee $2 - local.get $0 + local.get $1 local.get $2 i32.gt_s select @@ -1313,18 +1361,18 @@ unreachable end end - local.get $1 local.get $0 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $0 local.get $3 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1335,7 +1383,7 @@ unreachable end end - local.get $0 + local.get $1 i32.load i32.const -4 i32.and @@ -1349,10 +1397,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $0 + local.get $1 call $~lib/rt/tlsf/removeBlock - local.get $0 + local.get $1 i32.load local.set $4 local.get $3 @@ -1377,7 +1425,7 @@ i32.const 16 i32.ge_u if - local.get $0 + local.get $1 local.get $4 i32.const 2 i32.and @@ -1385,7 +1433,7 @@ i32.or i32.store local.get $3 - local.get $0 + local.get $1 i32.const 4 i32.add i32.add @@ -1396,33 +1444,31 @@ i32.const 1 i32.or i32.store - local.get $1 + local.get $0 local.get $3 call $~lib/rt/tlsf/insertBlock else - local.get $0 + local.get $1 local.get $4 i32.const -2 i32.and i32.store - local.get $0 + local.get $1 i32.const 4 i32.add - local.get $0 + local.get $1 i32.load i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.load i32.const -3 i32.and i32.store end - local.get $0 - i32.const 4 - i32.add + local.get $1 ) (func $~lib/rt/itcms/__new (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -1472,13 +1518,13 @@ end global.get $~lib/rt/itcms/total local.tee $2 - local.get $2 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl + local.get $2 i32.add global.set $~lib/rt/itcms/threshold end @@ -1486,9 +1532,15 @@ local.get $0 i32.const 16 i32.add - call $~lib/rt/tlsf/__alloc - i32.const 4 - i32.sub + local.set $2 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $2 + call $~lib/rt/tlsf/allocateBlock local.tee $2 local.get $1 i32.store offset=12 @@ -1500,8 +1552,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -2634,25 +2686,18 @@ end ) (func $~start - call $start:object-literal - ) - (func $start:object-literal (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 1772 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -2702,7 +2747,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1772 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $1 i32.const 0 @@ -2731,10 +2776,7 @@ i32.store local.get $1 i32.const 1056 - i32.store offset=4 - local.get $1 - i32.const 1056 - call $byn-split-outlined-A$~lib/rt/itcms/__link + call $object-literal/Managed#set:baz global.get $~lib/memory/__stack_pointer local.tee $0 local.get $1 @@ -2746,7 +2788,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1772 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store @@ -2787,335 +2829,68 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT i32.const 8 - call $~lib/rt/tlsf/__alloc - local.tee $6 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.tee $0 i32.const 0 i32.store - local.get $6 + local.get $0 i32.const 0 i32.store offset=4 - local.get $6 + local.get $0 i32.const 123 i32.store global.get $~lib/memory/__stack_pointer - local.tee $0 i32.const 1056 i32.store local.get $0 - i32.const 4 + call $~lib/string/String#substring + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1772 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - i32.const 0 - i32.const 1052 - i32.load - i32.const 1 - i32.shr_u - local.tee $0 + i64.const 0 + i64.store local.get $0 - select + i32.load + i32.const 123 + i32.ne + if + i32.const 0 + i32.const 1504 + i32.const 27 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer local.tee $1 - i32.const 5 - local.get $0 local.get $0 - i32.const 5 - i32.gt_u - select + i32.load offset=4 local.tee $2 + i32.store local.get $1 + i32.const 1600 + i32.store offset=4 local.get $2 - i32.lt_s - select - i32.const 1 - i32.shl - local.set $3 - block $__inlined_func$~lib/string/String#substring - local.get $1 - local.get $2 - local.get $1 - local.get $2 - i32.gt_s - select - i32.const 1 - i32.shl - local.tee $1 - local.get $3 - i32.sub - local.tee $4 - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - i32.const 1568 - local.set $5 - br $__inlined_func$~lib/string/String#substring - end - i32.const 0 - local.get $0 - i32.const 1 - i32.shl - local.get $1 - i32.eq - local.get $3 - select - if - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - i32.const 1056 - local.set $5 - br $__inlined_func$~lib/string/String#substring - end - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $5 - i32.store - block $~lib/util/memory/memmove|inlined.0 - local.get $5 - local.tee $0 - local.get $3 - i32.const 1056 - i32.add - local.tee $1 - i32.eq - br_if $~lib/util/memory/memmove|inlined.0 - local.get $1 - local.get $0 - i32.sub - local.get $4 - i32.sub - i32.const 0 - local.get $4 - i32.const 1 - i32.shl - i32.sub - i32.le_u - if - local.get $0 - local.get $1 - local.get $4 - call $~lib/util/memory/memcpy - br $~lib/util/memory/memmove|inlined.0 - end - local.get $0 - local.get $1 - i32.lt_u - if - local.get $1 - i32.const 7 - i32.and - local.get $0 - i32.const 7 - i32.and - i32.eq - if - loop $while-continue|0 - local.get $0 - i32.const 7 - i32.and - if - local.get $4 - i32.eqz - br_if $~lib/util/memory/memmove|inlined.0 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - local.get $0 - local.tee $2 - i32.const 1 - i32.add - local.set $0 - local.get $1 - local.tee $3 - i32.const 1 - i32.add - local.set $1 - local.get $2 - local.get $3 - i32.load8_u - i32.store8 - br $while-continue|0 - end - end - loop $while-continue|1 - local.get $4 - i32.const 8 - i32.ge_u - if - local.get $0 - local.get $1 - i64.load - i64.store - local.get $4 - i32.const 8 - i32.sub - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.set $0 - local.get $1 - i32.const 8 - i32.add - local.set $1 - br $while-continue|1 - end - end - end - loop $while-continue|2 - local.get $4 - if - local.get $0 - local.tee $2 - i32.const 1 - i32.add - local.set $0 - local.get $1 - local.tee $3 - i32.const 1 - i32.add - local.set $1 - local.get $2 - local.get $3 - i32.load8_u - i32.store8 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - br $while-continue|2 - end - end - else - local.get $1 - i32.const 7 - i32.and - local.get $0 - i32.const 7 - i32.and - i32.eq - if - loop $while-continue|3 - local.get $0 - local.get $4 - i32.add - i32.const 7 - i32.and - if - local.get $4 - i32.eqz - br_if $~lib/util/memory/memmove|inlined.0 - local.get $0 - local.get $4 - i32.const 1 - i32.sub - local.tee $4 - i32.add - local.get $1 - local.get $4 - i32.add - i32.load8_u - i32.store8 - br $while-continue|3 - end - end - loop $while-continue|4 - local.get $4 - i32.const 8 - i32.ge_u - if - local.get $0 - local.get $4 - i32.const 8 - i32.sub - local.tee $4 - i32.add - local.get $1 - local.get $4 - i32.add - i64.load - i64.store - br $while-continue|4 - end - end - end - loop $while-continue|5 - local.get $4 - if - local.get $0 - local.get $4 - i32.const 1 - i32.sub - local.tee $4 - i32.add - local.get $1 - local.get $4 - i32.add - i32.load8_u - i32.store8 - br $while-continue|5 - end - end - end - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - end - local.get $6 - local.get $5 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1772 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - local.get $6 - i32.load - i32.const 123 - i32.ne - if - i32.const 0 - i32.const 1504 - i32.const 27 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $6 - i32.load offset=4 - local.tee $1 - i32.store - local.get $0 - i32.const 1600 - i32.store offset=4 - local.get $1 - i32.const 1600 - call $~lib/string/String.__eq - i32.eqz - if + i32.const 1600 + call $~lib/string/String.__eq + i32.eqz + if i32.const 0 i32.const 1504 i32.const 28 @@ -3123,7 +2898,7 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $0 call $~lib/rt/tlsf/__free global.get $~lib/memory/__stack_pointer i32.const 8 @@ -3138,7 +2913,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1772 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -3401,7 +3176,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1772 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -3432,10 +3207,7 @@ i32.store local.get $0 i32.const 1632 - i32.store offset=4 - local.get $0 - i32.const 1632 - call $byn-split-outlined-A$~lib/rt/itcms/__link + call $object-literal/Managed#set:baz local.get $0 f64.const 0 f64.store offset=8 @@ -3450,7 +3222,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1772 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store @@ -3510,7 +3282,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1772 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -3526,13 +3298,13 @@ i32.store local.get $0 i32.const 1664 - call $byn-split-outlined-A$~lib/rt/itcms/__link + call $byn-split-outlined-A$~lib/rt/itcms/__link_0 local.get $0 i32.const 1696 i32.store offset=4 local.get $0 i32.const 1696 - call $byn-split-outlined-A$~lib/rt/itcms/__link + call $byn-split-outlined-A$~lib/rt/itcms/__link_0 local.get $0 i32.const 0 i32.store offset=8 @@ -3594,7 +3366,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1772 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -3774,23 +3546,23 @@ i32.const 0 i32.gt_s if - loop $while-continue|010 + loop $while-continue|0 global.get $~lib/rt/itcms/state if call $~lib/rt/itcms/step drop - br $while-continue|010 + br $while-continue|0 end end end call $~lib/rt/itcms/step drop - loop $while-continue|111 + loop $while-continue|1 global.get $~lib/rt/itcms/state if call $~lib/rt/itcms/step drop - br $while-continue|111 + br $while-continue|1 end end global.get $~lib/rt/itcms/total @@ -3816,7 +3588,314 @@ call $~lib/builtins/abort unreachable ) - (func $byn-split-outlined-A$~lib/rt/itcms/__link (param $0 i32) (param $1 i32) + (func $~lib/string/String#substring (result i32) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1772 + i32.lt_s + if + i32.const 18176 + i32.const 18224 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store + i32.const 0 + i32.const 1052 + i32.load + i32.const 1 + i32.shr_u + local.tee $0 + local.get $0 + i32.const 0 + i32.gt_s + select + local.tee $1 + i32.const 5 + local.get $0 + local.get $0 + i32.const 5 + i32.gt_s + select + local.tee $2 + local.get $1 + local.get $2 + i32.lt_s + select + i32.const 1 + i32.shl + local.set $3 + local.get $1 + local.get $2 + local.get $1 + local.get $2 + i32.gt_s + select + i32.const 1 + i32.shl + local.tee $1 + local.get $3 + i32.sub + local.tee $5 + i32.eqz + if + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + i32.const 1568 + return + end + i32.const 0 + local.get $0 + i32.const 1 + i32.shl + local.get $1 + i32.eq + local.get $3 + select + if + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + i32.const 1056 + return + end + global.get $~lib/memory/__stack_pointer + local.get $5 + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $4 + i32.store + block $~lib/util/memory/memmove|inlined.0 + local.get $4 + local.tee $0 + local.get $3 + i32.const 1056 + i32.add + local.tee $1 + i32.eq + br_if $~lib/util/memory/memmove|inlined.0 + local.get $1 + local.get $0 + i32.sub + local.get $5 + i32.sub + i32.const 0 + local.get $5 + i32.const 1 + i32.shl + i32.sub + i32.le_u + if + local.get $0 + local.get $1 + local.get $5 + call $~lib/util/memory/memcpy + br $~lib/util/memory/memmove|inlined.0 + end + local.get $0 + local.get $1 + i32.lt_u + if + local.get $1 + i32.const 7 + i32.and + local.get $0 + i32.const 7 + i32.and + i32.eq + if + loop $while-continue|0 + local.get $0 + i32.const 7 + i32.and + if + local.get $5 + i32.eqz + br_if $~lib/util/memory/memmove|inlined.0 + local.get $5 + i32.const 1 + i32.sub + local.set $5 + local.get $0 + local.tee $2 + i32.const 1 + i32.add + local.set $0 + local.get $1 + local.tee $3 + i32.const 1 + i32.add + local.set $1 + local.get $2 + local.get $3 + i32.load8_u + i32.store8 + br $while-continue|0 + end + end + loop $while-continue|1 + local.get $5 + i32.const 8 + i32.ge_u + if + local.get $0 + local.get $1 + i64.load + i64.store + local.get $5 + i32.const 8 + i32.sub + local.set $5 + local.get $0 + i32.const 8 + i32.add + local.set $0 + local.get $1 + i32.const 8 + i32.add + local.set $1 + br $while-continue|1 + end + end + end + loop $while-continue|2 + local.get $5 + if + local.get $0 + local.tee $2 + i32.const 1 + i32.add + local.set $0 + local.get $1 + local.tee $3 + i32.const 1 + i32.add + local.set $1 + local.get $2 + local.get $3 + i32.load8_u + i32.store8 + local.get $5 + i32.const 1 + i32.sub + local.set $5 + br $while-continue|2 + end + end + else + local.get $1 + i32.const 7 + i32.and + local.get $0 + i32.const 7 + i32.and + i32.eq + if + loop $while-continue|3 + local.get $0 + local.get $5 + i32.add + i32.const 7 + i32.and + if + local.get $5 + i32.eqz + br_if $~lib/util/memory/memmove|inlined.0 + local.get $5 + i32.const 1 + i32.sub + local.tee $5 + local.get $0 + i32.add + local.get $1 + local.get $5 + i32.add + i32.load8_u + i32.store8 + br $while-continue|3 + end + end + loop $while-continue|4 + local.get $5 + i32.const 8 + i32.ge_u + if + local.get $5 + i32.const 8 + i32.sub + local.tee $5 + local.get $0 + i32.add + local.get $1 + local.get $5 + i32.add + i64.load + i64.store + br $while-continue|4 + end + end + end + loop $while-continue|5 + local.get $5 + if + local.get $5 + i32.const 1 + i32.sub + local.tee $5 + local.get $0 + i32.add + local.get $1 + local.get $5 + i32.add + i32.load8_u + i32.store8 + br $while-continue|5 + end + end + end + end + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $4 + ) + (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) + global.get $~lib/rt/itcms/white + local.get $0 + i32.const 20 + i32.sub + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + call $~lib/rt/itcms/Object#makeGray + global.get $~lib/rt/itcms/visitCount + i32.const 1 + i32.add + global.set $~lib/rt/itcms/visitCount + end + ) + (func $byn-split-outlined-A$~lib/rt/itcms/__link_0 (param $0 i32) (param $1 i32) local.get $0 i32.eqz if @@ -3865,23 +3944,4 @@ end end ) - (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) - global.get $~lib/rt/itcms/white - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - call $~lib/rt/itcms/Object#makeGray - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) ) diff --git a/tests/compiler/optional-typeparameters.optimized.wat b/tests/compiler/optional-typeparameters.optimized.wat index 2a9b1b7554..a8bd891e31 100644 --- a/tests/compiler/optional-typeparameters.optimized.wat +++ b/tests/compiler/optional-typeparameters.optimized.wat @@ -1068,7 +1068,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1076,7 +1076,7 @@ memory.size local.tee $1 i32.const 4 - local.get $2 + local.get $3 i32.load offset=1568 local.get $1 i32.const 16 @@ -1091,16 +1091,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $1 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1108,7 +1108,7 @@ unreachable end end - local.get $2 + local.get $3 local.get $1 i32.const 16 i32.shl @@ -1116,7 +1116,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1143,7 +1143,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 @@ -1153,7 +1153,7 @@ i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $2 i32.const 16 i32.ge_u if @@ -1168,13 +1168,13 @@ i32.const 32 i32.add local.tee $4 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 + local.get $3 local.get $4 call $~lib/rt/tlsf/insertBlock else @@ -1209,8 +1209,8 @@ i32.load offset=8 local.set $2 local.get $1 - global.get $~lib/rt/itcms/white local.get $0 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $1 @@ -1277,11 +1277,11 @@ ) (func $~start (local $0 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1484 i32.lt_s @@ -1346,9 +1346,10 @@ local.get $0 global.set $optional-typeparameters/tConcrete global.get $~lib/memory/__stack_pointer + local.tee $0 global.get $optional-typeparameters/tConcrete i32.store - global.get $~lib/memory/__stack_pointer + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -1372,9 +1373,10 @@ local.get $0 global.set $optional-typeparameters/tDerived global.get $~lib/memory/__stack_pointer + local.tee $0 global.get $optional-typeparameters/tDerived i32.store - global.get $~lib/memory/__stack_pointer + local.get $0 i32.const 4 i32.add global.set $~lib/memory/__stack_pointer @@ -1395,19 +1397,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1417,15 +1419,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1448,7 +1451,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1458,23 +1461,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1482,7 +1485,7 @@ else i32.const 1440 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1248 @@ -1492,7 +1495,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1444 @@ -1507,16 +1510,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -1524,11 +1527,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/reexport.optimized.wat b/tests/compiler/reexport.optimized.wat index d7d5c42339..e930a4b035 100644 --- a/tests/compiler/reexport.optimized.wat +++ b/tests/compiler/reexport.optimized.wat @@ -1142,7 +1142,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1150,7 +1150,7 @@ memory.size local.tee $1 i32.const 4 - local.get $2 + local.get $3 i32.load offset=1568 local.get $1 i32.const 16 @@ -1165,16 +1165,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $1 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1182,7 +1182,7 @@ unreachable end end - local.get $2 + local.get $3 local.get $1 i32.const 16 i32.shl @@ -1190,7 +1190,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1217,7 +1217,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 @@ -1227,7 +1227,7 @@ i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $2 i32.const 16 i32.ge_u if @@ -1242,13 +1242,13 @@ i32.const 32 i32.add local.tee $4 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 + local.get $3 local.get $4 call $~lib/rt/tlsf/insertBlock else @@ -1283,8 +1283,8 @@ i32.load offset=8 local.set $2 local.get $1 - global.get $~lib/rt/itcms/white local.get $0 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $1 @@ -1649,11 +1649,11 @@ global.set $~lib/memory/__stack_pointer ) (func $export:exports/vehicles.Car#constructor@varargs (param $0 i32) (param $1 i32) (result i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1532 i32.lt_s @@ -1724,19 +1724,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1746,15 +1746,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1777,7 +1778,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1787,23 +1788,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1811,7 +1812,7 @@ else i32.const 1488 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1296 @@ -1821,7 +1822,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1492 @@ -1836,16 +1837,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -1853,11 +1854,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/rereexport.optimized.wat b/tests/compiler/rereexport.optimized.wat index 7303574c23..9e3e8fad8c 100644 --- a/tests/compiler/rereexport.optimized.wat +++ b/tests/compiler/rereexport.optimized.wat @@ -1096,11 +1096,11 @@ ) (func $~start (local $0 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1572 i32.lt_s @@ -1440,8 +1440,8 @@ i32.load offset=8 local.set $3 local.get $0 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $0 @@ -1520,19 +1520,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1542,15 +1542,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1573,7 +1574,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1583,23 +1584,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1607,7 +1608,7 @@ else i32.const 1536 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1296 @@ -1617,7 +1618,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1540 @@ -1632,16 +1633,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -1649,11 +1650,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-access.optimized.wat b/tests/compiler/resolve-access.optimized.wat index 0c0777e019..e3b9f0d71e 100644 --- a/tests/compiler/resolve-access.optimized.wat +++ b/tests/compiler/resolve-access.optimized.wat @@ -126,17 +126,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 19732 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -150,9 +151,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -162,15 +163,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -1494,8 +1495,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -2498,25 +2499,25 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 3348 - i32.lt_s - if - i32.const 19760 - i32.const 19808 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/number/utoa64 + block $__inlined_func$~lib/util/number/utoa64 (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 3348 + i32.lt_s + if + i32.const 19760 + i32.const 19808 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store local.get $0 i64.eqz if @@ -2525,7 +2526,6 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1728 - local.set $2 br $__inlined_func$~lib/util/number/utoa64 end local.get $0 @@ -2535,48 +2535,48 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.wrap_i64 - local.tee $1 local.tee $2 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -2587,10 +2587,10 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 local.get $1 + local.get $2 local.get $3 call $~lib/util/number/utoa32_dec_lut else @@ -2645,25 +2645,25 @@ i32.add end end - local.tee $1 + local.tee $2 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store loop $while-continue|0 local.get $0 i64.const 100000000 i64.ge_u if - local.get $1 + local.get $2 i32.const 4 i32.sub - local.tee $3 + local.tee $2 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.add local.get $0 local.get $0 @@ -2674,10 +2674,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $4 + local.tee $3 i32.const 10000 i32.rem_u - local.tee $1 + local.tee $4 i32.const 100 i32.div_u i32.const 2 @@ -2685,7 +2685,7 @@ i32.const 1740 i32.add i64.load32_u - local.get $1 + local.get $4 i32.const 100 i32.rem_u i32.const 2 @@ -2697,15 +2697,15 @@ i64.shl i64.or i64.store - local.get $3 + local.get $2 i32.const 4 i32.sub - local.tee $1 + local.tee $2 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.add - local.get $4 + local.get $3 i32.const 10000 i32.div_u local.tee $3 @@ -2731,18 +2731,18 @@ br $while-continue|0 end end - local.get $2 + local.get $1 local.get $0 i32.wrap_i64 - local.get $1 + local.get $2 call $~lib/util/number/utoa32_dec_lut end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $1 end - local.get $2 ) (func $~lib/rt/__visit_members (param $0 i32) block $folding-inner0 @@ -2819,321 +2819,333 @@ i32.const 1376 global.set $~lib/rt/itcms/fromSpace ) - (func $resolve-access/arrayAccess (result i32) + (func $~lib/rt/__newArray (result i32) (local $0 i32) (local $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner0 - global.get $~lib/memory/__stack_pointer - i32.const 3348 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $6 + global.get $~lib/memory/__stack_pointer + i32.const 3348 + i32.lt_s + if + i32.const 19760 + i32.const 19808 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $0 + i32.const 0 + i32.store + local.get $0 + i32.const 8 + local.set $5 + i32.const 1056 + local.set $0 + block $~lib/util/memory/memmove|inlined.0 + i32.const 8 i32.const 0 - i32.store - local.get $6 - i32.const 4 + call $~lib/rt/itcms/__new + local.tee $4 + local.tee $1 + i32.const 1056 + i32.eq + br_if $~lib/util/memory/memmove|inlined.0 + i32.const 1048 + local.get $1 i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 3348 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $7 - i32.const 0 - i32.store - i32.const 8 - local.set $5 + i32.const -16 + i32.le_u + if + local.get $1 + call $~lib/util/memory/memcpy + br $~lib/util/memory/memmove|inlined.0 + end + local.get $1 i32.const 1056 - local.set $1 - block $~lib/util/memory/memmove|inlined.0 - i32.const 8 - i32.const 0 - call $~lib/rt/itcms/__new - local.tee $4 - local.tee $0 - i32.const 1056 - i32.eq - br_if $~lib/util/memory/memmove|inlined.0 - i32.const 1048 - local.get $0 - i32.sub - i32.const -16 - i32.le_u - if - local.get $0 - call $~lib/util/memory/memcpy - br $~lib/util/memory/memmove|inlined.0 - end - local.get $0 - i32.const 1056 - i32.lt_u + i32.lt_u + if + local.get $1 + i32.const 7 + i32.and + i32.eqz if - local.get $0 - i32.const 7 - i32.and - i32.eqz - if - loop $while-continue|0 - local.get $0 - i32.const 7 - i32.and - if - local.get $5 - i32.eqz - br_if $~lib/util/memory/memmove|inlined.0 - local.get $5 - i32.const 1 - i32.sub - local.set $5 - local.get $0 - local.tee $2 - i32.const 1 - i32.add - local.set $0 - local.get $1 - local.tee $3 - i32.const 1 - i32.add - local.set $1 - local.get $2 - local.get $3 - i32.load8_u - i32.store8 - br $while-continue|0 - end - end - loop $while-continue|1 - local.get $5 - i32.const 8 - i32.ge_u - if - local.get $0 - local.get $1 - i64.load - i64.store - local.get $5 - i32.const 8 - i32.sub - local.set $5 - local.get $0 - i32.const 8 - i32.add - local.set $0 - local.get $1 - i32.const 8 - i32.add - local.set $1 - br $while-continue|1 - end - end - end - loop $while-continue|2 - local.get $5 + loop $while-continue|0 + local.get $1 + i32.const 7 + i32.and if - local.get $0 - local.tee $2 + local.get $5 + i32.eqz + br_if $~lib/util/memory/memmove|inlined.0 + local.get $5 i32.const 1 - i32.add - local.set $0 + i32.sub + local.set $5 local.get $1 local.tee $3 i32.const 1 i32.add local.set $1 - local.get $2 + local.get $0 + local.tee $2 + i32.const 1 + i32.add + local.set $0 local.get $3 + local.get $2 i32.load8_u i32.store8 + br $while-continue|0 + end + end + loop $while-continue|1 + local.get $5 + i32.const 8 + i32.ge_u + if + local.get $1 + local.get $0 + i64.load + i64.store local.get $5 - i32.const 1 + i32.const 8 i32.sub local.set $5 - br $while-continue|2 + local.get $1 + i32.const 8 + i32.add + local.set $1 + local.get $0 + i32.const 8 + i32.add + local.set $0 + br $while-continue|1 end end - else - local.get $0 - i32.const 7 - i32.and - i32.eqz + end + loop $while-continue|2 + local.get $5 if - loop $while-continue|3 - local.get $0 + local.get $1 + local.tee $3 + i32.const 1 + i32.add + local.set $1 + local.get $0 + local.tee $2 + i32.const 1 + i32.add + local.set $0 + local.get $3 + local.get $2 + i32.load8_u + i32.store8 + local.get $5 + i32.const 1 + i32.sub + local.set $5 + br $while-continue|2 + end + end + else + local.get $1 + i32.const 7 + i32.and + i32.eqz + if + loop $while-continue|3 + local.get $1 + local.get $5 + i32.add + i32.const 7 + i32.and + if local.get $5 + i32.eqz + br_if $~lib/util/memory/memmove|inlined.0 + local.get $5 + i32.const 1 + i32.sub + local.tee $5 + local.get $1 i32.add - i32.const 7 - i32.and - if - local.get $5 - i32.eqz - br_if $~lib/util/memory/memmove|inlined.0 - local.get $0 - local.get $5 - i32.const 1 - i32.sub - local.tee $5 - i32.add - local.get $5 - i32.const 1056 - i32.add - i32.load8_u - i32.store8 - br $while-continue|3 - end - end - loop $while-continue|4 local.get $5 - i32.const 8 - i32.ge_u - if - local.get $0 - local.get $5 - i32.const 8 - i32.sub - local.tee $5 - i32.add - local.get $5 - i32.const 1056 - i32.add - i64.load - i64.store - br $while-continue|4 - end + i32.const 1056 + i32.add + i32.load8_u + i32.store8 + br $while-continue|3 end end - loop $while-continue|5 + loop $while-continue|4 local.get $5 + i32.const 8 + i32.ge_u if - local.get $0 local.get $5 - i32.const 1 + i32.const 8 i32.sub local.tee $5 + local.get $1 i32.add local.get $5 i32.const 1056 i32.add - i32.load8_u - i32.store8 - br $while-continue|5 + i64.load + i64.store + br $while-continue|4 end end end + loop $while-continue|5 + local.get $5 + if + local.get $5 + i32.const 1 + i32.sub + local.tee $5 + local.get $1 + i32.add + local.get $5 + i32.const 1056 + i32.add + i32.load8_u + i32.store8 + br $while-continue|5 + end + end end - local.get $7 - local.get $4 - i32.store - i32.const 16 + end + local.get $4 + local.tee $0 + i32.store + i32.const 16 + i32.const 3 + call $~lib/rt/itcms/__new + local.tee $3 + local.get $0 + i32.store + local.get $3 + local.set $2 + local.get $0 + local.tee $1 + if + local.get $2 + i32.eqz + if + i32.const 0 + i32.const 1152 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $4 + i32.load offset=4 i32.const 3 - call $~lib/rt/itcms/__new - local.tee $0 - local.get $4 - i32.store - local.get $4 + i32.and + i32.eq if - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1152 - i32.const 294 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $4 + local.get $2 i32.const 20 i32.sub - local.tee $1 i32.load offset=4 i32.const 3 i32.and + local.tee $1 + global.get $~lib/rt/itcms/white + i32.eqz i32.eq if - local.get $0 - i32.const 20 - i32.sub - i32.load offset=4 + local.get $4 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $1 i32.const 3 - i32.and - local.tee $2 - global.get $~lib/rt/itcms/white - i32.eqz i32.eq + i32.and if - local.get $1 + local.get $4 call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $2 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end end end end - local.get $0 - local.get $4 - i32.store offset=4 - local.get $0 - i32.const 8 - i32.store offset=8 - local.get $0 - i32.const 1 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $6 - local.get $0 - i32.store - local.get $0 - i32.load offset=12 - i32.eqz - if - i32.const 1280 - i32.const 1488 - i32.const 107 - i32.const 42 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - i64.load - call $~lib/number/U64#toString - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - return end - i32.const 19760 - i32.const 19808 - i32.const 1 + local.get $3 + local.get $0 + i32.store offset=4 + local.get $3 + i32.const 8 + i32.store offset=8 + local.get $3 i32.const 1 - call $~lib/builtins/abort - unreachable + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $3 + ) + (func $resolve-access/arrayAccess (result i32) + (local $0 i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 3348 + i32.lt_s + if + i32.const 19760 + i32.const 19808 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $0 + i32.const 0 + i32.store + local.get $0 + call $~lib/rt/__newArray + local.tee $0 + i32.store + local.get $0 + i32.load offset=12 + i32.eqz + if + i32.const 1280 + i32.const 1488 + i32.const 107 + i32.const 42 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + i64.load + call $~lib/number/U64#toString + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer ) (func $resolve-access/Container#constructor (result i32) (local $0 i32) @@ -3211,11 +3223,11 @@ (local $0 i32) (local $1 i32) (local $2 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 3348 i32.lt_s @@ -3259,67 +3271,68 @@ end global.get $~lib/memory/__stack_pointer local.get $0 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.tee $2 + local.tee $1 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 - local.get $0 local.get $2 + local.get $0 + local.get $1 call $~lib/util/number/utoa32_dec_lut global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 end global.get $~lib/memory/__stack_pointer i32.const 4 diff --git a/tests/compiler/resolve-binary.optimized.wat b/tests/compiler/resolve-binary.optimized.wat index ae10f4ae0f..cd1608de96 100644 --- a/tests/compiler/resolve-binary.optimized.wat +++ b/tests/compiler/resolve-binary.optimized.wat @@ -1689,8 +1689,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -2004,25 +2004,25 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 11292 - i32.lt_s - if - i32.const 27696 - i32.const 27744 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/number/itoa32 + block $__inlined_func$~lib/util/number/itoa32 (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 11292 + i32.lt_s + if + i32.const 27696 + i32.const 27744 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store local.get $0 i32.eqz if @@ -2031,7 +2031,6 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1408 - local.set $0 br $__inlined_func$~lib/util/number/itoa32 end global.get $~lib/memory/__stack_pointer @@ -2042,71 +2041,71 @@ local.get $0 i32.const 31 i32.shr_u - local.tee $1 + local.tee $0 select local.tee $2 - local.tee $0 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.get $1 + local.get $0 i32.add - local.tee $3 + local.tee $1 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store - local.get $0 - local.get $2 local.get $3 - call $~lib/util/number/utoa32_dec_lut + local.get $2 local.get $1 + call $~lib/util/number/utoa32_dec_lut + local.get $0 if - local.get $0 + local.get $3 i32.const 45 i32.store16 end @@ -2114,8 +2113,8 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $3 end - local.get $0 ) (func $~lib/util/number/genDigits (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i64) (result i32) (local $4 i32) @@ -3937,11 +3936,12 @@ (func $start:resolve-binary (local $0 i32) (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.sub - global.set $~lib/memory/__stack_pointer + (local $2 i32) block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 20 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 11292 i32.lt_s @@ -4919,11 +4919,12 @@ end global.get $~lib/memory/__stack_pointer local.tee $0 - global.get $resolve-binary/foo local.tee $1 + global.get $resolve-binary/foo + local.tee $2 i32.store offset=12 - local.get $0 local.get $1 + local.get $2 i32.store offset=16 local.get $0 i32.const 10912 @@ -4948,11 +4949,12 @@ end global.get $~lib/memory/__stack_pointer local.tee $0 - global.get $resolve-binary/foo local.tee $1 + global.get $resolve-binary/foo + local.tee $2 i32.store offset=12 - local.get $0 local.get $1 + local.get $2 i32.store offset=16 local.get $0 i32.const 10944 @@ -4977,11 +4979,12 @@ end global.get $~lib/memory/__stack_pointer local.tee $0 - global.get $resolve-binary/foo local.tee $1 + global.get $resolve-binary/foo + local.tee $2 i32.store offset=12 - local.get $0 local.get $1 + local.get $2 i32.store offset=16 local.get $0 i32.const 10976 @@ -5006,11 +5009,12 @@ end global.get $~lib/memory/__stack_pointer local.tee $0 - global.get $resolve-binary/foo local.tee $1 + global.get $resolve-binary/foo + local.tee $2 i32.store offset=12 - local.get $0 local.get $1 + local.get $2 i32.store offset=16 local.get $0 i32.const 11008 @@ -5035,11 +5039,12 @@ end global.get $~lib/memory/__stack_pointer local.tee $0 - global.get $resolve-binary/foo local.tee $1 + global.get $resolve-binary/foo + local.tee $2 i32.store offset=12 - local.get $0 local.get $1 + local.get $2 i32.store offset=16 local.get $0 i32.const 11040 @@ -5064,11 +5069,12 @@ end global.get $~lib/memory/__stack_pointer local.tee $0 - global.get $resolve-binary/foo local.tee $1 + global.get $resolve-binary/foo + local.tee $2 i32.store offset=12 - local.get $0 local.get $1 + local.get $2 i32.store offset=16 local.get $0 i32.const 11072 @@ -5093,11 +5099,12 @@ end global.get $~lib/memory/__stack_pointer local.tee $0 - global.get $resolve-binary/foo local.tee $1 + global.get $resolve-binary/foo + local.tee $2 i32.store offset=12 - local.get $0 local.get $1 + local.get $2 i32.store offset=16 local.get $0 i32.const 11104 @@ -5122,11 +5129,12 @@ end global.get $~lib/memory/__stack_pointer local.tee $0 - global.get $resolve-binary/foo local.tee $1 + global.get $resolve-binary/foo + local.tee $2 i32.store offset=12 - local.get $0 local.get $1 + local.get $2 i32.store offset=16 local.get $0 i32.const 11136 @@ -5151,11 +5159,12 @@ end global.get $~lib/memory/__stack_pointer local.tee $0 - global.get $resolve-binary/foo local.tee $1 + global.get $resolve-binary/foo + local.tee $2 i32.store offset=12 - local.get $0 local.get $1 + local.get $2 i32.store offset=16 local.get $0 i32.const 11168 @@ -5180,11 +5189,12 @@ end global.get $~lib/memory/__stack_pointer local.tee $0 - global.get $resolve-binary/foo local.tee $1 + global.get $resolve-binary/foo + local.tee $2 i32.store offset=12 - local.get $0 local.get $1 + local.get $2 i32.store offset=16 local.get $0 i32.const 11200 @@ -5209,11 +5219,12 @@ end global.get $~lib/memory/__stack_pointer local.tee $0 - global.get $resolve-binary/foo local.tee $1 + global.get $resolve-binary/foo + local.tee $2 i32.store offset=12 - local.get $0 local.get $1 + local.get $2 i32.store offset=16 local.get $0 i32.const 11232 @@ -5242,13 +5253,15 @@ global.set $resolve-binary/bar2 global.get $~lib/memory/__stack_pointer local.tee $0 + local.tee $1 global.get $resolve-binary/bar i32.store offset=4 - local.get $0 + local.get $1 global.get $resolve-binary/bar2 local.tee $1 + local.tee $2 i32.store offset=8 - local.get $1 + local.get $2 global.set $resolve-binary/bar local.get $0 global.get $resolve-binary/bar @@ -5330,19 +5343,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -5352,15 +5365,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -5383,7 +5397,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -5393,23 +5407,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -5417,7 +5431,7 @@ else i32.const 11248 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1632 @@ -5427,7 +5441,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 11252 @@ -5442,16 +5456,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -5459,11 +5473,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-elementaccess.optimized.wat b/tests/compiler/resolve-elementaccess.optimized.wat index 4afd363e03..6380aaa0b6 100644 --- a/tests/compiler/resolve-elementaccess.optimized.wat +++ b/tests/compiler/resolve-elementaccess.optimized.wat @@ -184,17 +184,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 21236 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -208,9 +209,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -220,15 +221,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -1526,7 +1527,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1552,32 +1553,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1593,16 +1594,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1610,7 +1611,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1618,8 +1619,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1636,7 +1637,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1646,13 +1647,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1665,40 +1666,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -1728,8 +1729,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -1843,8 +1844,7 @@ i64.shr_u i32.wrap_i64 local.tee $2 - local.set $5 - local.get $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) @@ -3217,8 +3217,6 @@ ) (func $~lib/util/number/prettify (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) - (local $4 i32) - (local $5 i32) local.get $2 i32.eqz if @@ -3362,82 +3360,80 @@ i32.const 101 i32.store16 offset=2 local.get $0 + local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $1 + local.tee $0 i32.const 0 i32.lt_s - local.tee $3 + local.tee $2 if i32.const 0 - local.get $1 + local.get $0 i32.sub - local.set $1 + local.set $0 end - local.get $1 - local.tee $4 + local.get $0 + local.get $0 i32.const 100000 i32.lt_u if (result i32) - local.get $4 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $4 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $4 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $4 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $4 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $4 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $4 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $4 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $4 - local.get $1 - local.get $4 i32.const 1 i32.add - local.tee $1 + local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $1 i32.const 45 i32.const 43 - local.get $3 + local.get $2 select i32.store16 offset=4 - local.get $1 + local.get $0 i32.const 2 i32.add else @@ -3460,87 +3456,84 @@ local.get $0 local.get $2 i32.add - local.tee $0 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $0 + local.get $2 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $2 + local.tee $0 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $2 + local.get $0 i32.sub - local.set $2 + local.set $0 end - local.get $2 - local.tee $5 + local.get $0 + local.get $0 i32.const 100000 i32.lt_u if (result i32) - local.get $5 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $5 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $5 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $5 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $5 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $5 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $5 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $5 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $5 - local.get $2 - local.get $5 i32.const 1 i32.add - local.tee $2 + local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $2 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 + local.get $0 local.get $1 - local.get $2 i32.add i32.const 2 i32.add @@ -3833,25 +3826,25 @@ (local $1 f64) (local $2 i32) (local $3 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 4852 - i32.lt_s - if - i32.const 21264 - i32.const 21312 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/number/dtoa + block $__inlined_func$~lib/util/number/dtoa (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 4852 + i32.lt_s + if + i32.const 21264 + i32.const 21312 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store local.get $0 f64.promote_f32 local.tee $1 @@ -3863,7 +3856,6 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1632 - local.set $2 br $__inlined_func$~lib/util/number/dtoa end local.get $1 @@ -3881,7 +3873,6 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1664 - local.set $2 br $__inlined_func$~lib/util/number/dtoa end global.get $~lib/memory/__stack_pointer @@ -3894,30 +3885,29 @@ f64.const 0 f64.lt select - local.set $2 br $__inlined_func$~lib/util/number/dtoa end local.get $1 call $~lib/util/number/dtoa_core i32.const 1 i32.shl - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 i32.store - local.get $2 - i32.const 1776 local.get $3 + i32.const 1776 + local.get $2 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $3 end - local.get $2 ) (func $~lib/string/String.__eq (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -4111,46 +4101,47 @@ end global.get $~lib/memory/__stack_pointer local.get $0 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -4208,11 +4199,11 @@ (func $start:resolve-elementaccess (local $0 i32) (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 4852 i32.lt_s diff --git a/tests/compiler/resolve-function-expression.optimized.wat b/tests/compiler/resolve-function-expression.optimized.wat index f990625d3f..8fe6061e9c 100644 --- a/tests/compiler/resolve-function-expression.optimized.wat +++ b/tests/compiler/resolve-function-expression.optimized.wat @@ -1379,8 +1379,8 @@ i32.load offset=8 local.set $3 local.get $1 - global.get $~lib/rt/itcms/white local.get $2 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $1 @@ -1728,7 +1728,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1424 - local.set $2 + local.set $0 br $__inlined_func$~lib/util/number/itoa32 end i32.const 0 @@ -1740,50 +1740,50 @@ i32.shr_u local.tee $3 select - local.tee $0 - local.set $1 + local.tee $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $0 i32.const 100000000 i32.ge_u i32.add @@ -1791,32 +1791,32 @@ end local.get $3 i32.add - local.tee $1 + local.tee $2 i32.const 1 i32.shl call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 i32.store loop $while-continue|0 - local.get $0 + local.get $1 i32.const 10000 i32.ge_u if - local.get $0 + local.get $1 i32.const 10000 i32.rem_u local.set $4 - local.get $0 + local.get $1 i32.const 10000 i32.div_u - local.set $0 - local.get $1 + local.set $1 + local.get $2 i32.const 4 i32.sub - local.tee $1 + local.tee $2 i32.const 1 i32.shl - local.get $2 + local.get $0 i32.add local.get $4 i32.const 100 @@ -1841,19 +1841,19 @@ br $while-continue|0 end end - local.get $0 + local.get $1 i32.const 100 i32.ge_u if - local.get $1 + local.get $2 i32.const 2 i32.sub - local.tee $1 + local.tee $2 i32.const 1 i32.shl - local.get $2 - i32.add local.get $0 + i32.add + local.get $1 i32.const 100 i32.rem_u i32.const 2 @@ -1862,23 +1862,23 @@ i32.add i32.load i32.store - local.get $0 + local.get $1 i32.const 100 i32.div_u - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 10 i32.ge_u if - local.get $1 + local.get $2 i32.const 2 i32.sub i32.const 1 i32.shl - local.get $2 - i32.add local.get $0 + i32.add + local.get $1 i32.const 2 i32.shl i32.const 1836 @@ -1886,21 +1886,21 @@ i32.load i32.store else - local.get $1 + local.get $2 i32.const 1 i32.sub i32.const 1 i32.shl - local.get $2 - i32.add local.get $0 + i32.add + local.get $1 i32.const 48 i32.add i32.store16 end local.get $3 if - local.get $2 + local.get $0 i32.const 45 i32.store16 end @@ -1910,32 +1910,32 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $2 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 3408 i32.store offset=4 block $__inlined_func$~lib/string/String.__eq (result i32) i32.const 1 - local.get $2 + local.get $0 i32.const 3408 i32.eq br_if $__inlined_func$~lib/string/String.__eq drop i32.const 0 - local.get $2 + local.get $0 i32.eqz br_if $__inlined_func$~lib/string/String.__eq drop i32.const 0 - local.get $2 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $0 + local.tee $2 i32.const 3404 i32.load i32.const 1 @@ -1946,27 +1946,29 @@ block $__inlined_func$~lib/util/string/compareImpl (result i32) i32.const 3408 local.set $3 - local.get $2 + local.get $0 + local.tee $1 i32.const 7 i32.and i32.const 1 - local.get $0 + local.get $2 + local.tee $0 i32.const 4 i32.ge_u select i32.eqz if loop $do-loop|0 - local.get $2 + local.get $1 i64.load local.get $3 i64.load i64.eq if - local.get $2 + local.get $1 i32.const 8 i32.add - local.set $2 + local.set $1 local.get $3 i32.const 8 i32.add @@ -1983,29 +1985,29 @@ end loop $while-continue|1 local.get $0 - local.tee $1 + local.tee $2 i32.const 1 i32.sub local.set $0 - local.get $1 + local.get $2 if - local.get $2 + local.get $1 i32.load16_u - local.tee $1 + local.tee $2 local.get $3 i32.load16_u local.tee $4 i32.ne if - local.get $1 + local.get $2 local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $2 + local.get $1 i32.const 2 i32.add - local.set $2 + local.set $1 local.get $3 i32.const 2 i32.add @@ -2047,19 +2049,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -2069,15 +2071,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -2100,7 +2103,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -2110,23 +2113,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -2134,7 +2137,7 @@ else i32.const 3424 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1648 @@ -2144,7 +2147,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 3428 @@ -2159,16 +2162,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -2176,11 +2179,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-nested.optimized.wat b/tests/compiler/resolve-nested.optimized.wat index 1378594621..3a1b652542 100644 --- a/tests/compiler/resolve-nested.optimized.wat +++ b/tests/compiler/resolve-nested.optimized.wat @@ -1059,7 +1059,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1067,7 +1067,7 @@ memory.size local.tee $1 i32.const 4 - local.get $2 + local.get $3 i32.load offset=1568 local.get $1 i32.const 16 @@ -1082,16 +1082,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $1 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1099,7 +1099,7 @@ unreachable end end - local.get $2 + local.get $3 local.get $1 i32.const 16 i32.shl @@ -1107,7 +1107,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1134,7 +1134,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 @@ -1144,7 +1144,7 @@ i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $2 i32.const 16 i32.ge_u if @@ -1159,13 +1159,13 @@ i32.const 32 i32.add local.tee $4 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 + local.get $3 local.get $4 call $~lib/rt/tlsf/insertBlock else @@ -1200,8 +1200,8 @@ i32.load offset=8 local.set $2 local.get $1 - global.get $~lib/rt/itcms/white local.get $0 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $1 @@ -1305,11 +1305,11 @@ ) (func $export:resolve-nested/Outer.InnerClass#constructor (param $0 i32) (result i32) (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1492 i32.lt_s @@ -1358,11 +1358,11 @@ ) (func $export:resolve-nested/Outer.Inner.EvenInnerClass#constructor (param $0 i32) (result i32) (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1492 i32.lt_s @@ -1528,19 +1528,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1550,15 +1550,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1581,7 +1582,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1591,23 +1592,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1615,7 +1616,7 @@ else i32.const 1440 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1248 @@ -1625,7 +1626,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1444 @@ -1640,16 +1641,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -1657,11 +1658,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-new.optimized.wat b/tests/compiler/resolve-new.optimized.wat index 6d9d4a38d8..cfc75ea82f 100644 --- a/tests/compiler/resolve-new.optimized.wat +++ b/tests/compiler/resolve-new.optimized.wat @@ -1315,8 +1315,8 @@ i32.load offset=8 local.set $3 local.get $0 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $0 @@ -1362,19 +1362,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1384,15 +1384,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1415,7 +1416,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1425,23 +1426,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1449,7 +1450,7 @@ else i32.const 1440 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1248 @@ -1459,7 +1460,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1444 @@ -1474,16 +1475,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -1491,11 +1492,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-propertyaccess.optimized.wat b/tests/compiler/resolve-propertyaccess.optimized.wat index 37975d1fa2..3a9b5a77b3 100644 --- a/tests/compiler/resolve-propertyaccess.optimized.wat +++ b/tests/compiler/resolve-propertyaccess.optimized.wat @@ -1379,8 +1379,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -1591,25 +1591,25 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 3716 - i32.lt_s - if - i32.const 20128 - i32.const 20176 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/number/itoa32 + block $__inlined_func$~lib/util/number/itoa32 (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 3716 + i32.lt_s + if + i32.const 20128 + i32.const 20176 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store local.get $0 i32.eqz if @@ -1618,9 +1618,9 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1248 - local.set $1 br $__inlined_func$~lib/util/number/itoa32 end + global.get $~lib/memory/__stack_pointer i32.const 0 local.get $0 i32.sub @@ -1631,9 +1631,7 @@ local.tee $3 select local.tee $0 - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $0 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) @@ -1799,8 +1797,8 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $1 end - local.get $1 ) (func $~lib/string/String.__eq (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -1956,11 +1954,11 @@ (func $start:resolve-propertyaccess (local $0 i32) (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 3716 i32.lt_s @@ -2318,19 +2316,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -2340,15 +2338,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -2371,7 +2370,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -2381,23 +2380,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -2405,7 +2404,7 @@ else i32.const 3680 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1472 @@ -2415,7 +2414,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 3684 @@ -2430,16 +2429,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -2447,11 +2446,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-ternary.optimized.wat b/tests/compiler/resolve-ternary.optimized.wat index bb64793639..674f0201e0 100644 --- a/tests/compiler/resolve-ternary.optimized.wat +++ b/tests/compiler/resolve-ternary.optimized.wat @@ -1383,8 +1383,8 @@ i32.load offset=8 local.set $3 local.get $1 - global.get $~lib/rt/itcms/white local.get $2 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $1 @@ -1844,8 +1844,7 @@ i64.shr_u i32.wrap_i64 local.tee $2 - local.set $5 - local.get $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) @@ -3115,8 +3114,6 @@ (func $~lib/util/number/prettify (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) local.get $1 i32.eqz if @@ -3135,17 +3132,17 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 21 i32.le_s local.get $0 - local.get $2 + local.get $3 i32.le_s i32.and if (result i32) loop $for-loop|0 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -3162,26 +3159,26 @@ br $for-loop|0 end end - local.get $2 + local.get $3 i32.const 1 i32.shl i32.const 3472 i32.add i32.const 3145774 i32.store - local.get $2 + local.get $3 i32.const 2 i32.add else - local.get $2 + local.get $3 i32.const 21 i32.le_s - local.get $2 + local.get $3 i32.const 0 i32.gt_s i32.and if (result i32) - local.get $2 + local.get $3 i32.const 1 i32.shl i32.const 3472 @@ -3203,16 +3200,16 @@ i32.const 1 i32.add else - local.get $2 + local.get $3 i32.const 0 i32.le_s - local.get $2 + local.get $3 i32.const -6 i32.gt_s i32.and if (result i32) i32.const 2 - local.get $2 + local.get $3 i32.sub local.tee $2 i32.const 1 @@ -3259,7 +3256,8 @@ i32.const 3474 i32.const 101 i32.store16 - local.get $2 + i32.const 3476 + local.get $3 i32.const 1 i32.sub local.tee $0 @@ -3273,56 +3271,52 @@ local.set $0 end local.get $0 - local.tee $2 + local.get $0 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $2 - i32.const 3476 - local.get $0 - local.get $2 i32.const 1 i32.add local.tee $0 @@ -3352,87 +3346,84 @@ local.get $1 i32.const 3472 i32.add - local.tee $1 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $1 + local.get $2 i32.const 4 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.tee $2 + local.tee $1 i32.const 0 i32.lt_s - local.tee $4 + local.tee $3 if i32.const 0 - local.get $2 + local.get $1 i32.sub - local.set $2 + local.set $1 end - local.get $2 - local.tee $5 + local.get $1 + local.get $1 i32.const 100000 i32.lt_u if (result i32) - local.get $5 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $5 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $5 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $5 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $5 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $5 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $5 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $5 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.set $5 - local.get $2 - local.get $5 i32.const 1 i32.add - local.tee $2 + local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $2 i32.const 45 i32.const 43 - local.get $4 + local.get $3 select i32.store16 offset=4 local.get $0 - local.get $2 + local.get $1 i32.add i32.const 2 i32.add @@ -3503,20 +3494,19 @@ (func $~start (local $0 i32) (local $1 i64) - (local $2 i64) - (local $3 i32) + (local $2 i32) + (local $3 i64) (local $4 i64) (local $5 i64) - (local $6 i64) global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 4644 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -3560,7 +3550,7 @@ global.get $~lib/memory/__stack_pointer i32.const 4644 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -3579,10 +3569,10 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 local.get $0 i32.store - local.get $3 + local.get $2 i32.const 3232 i32.store offset=4 local.get $0 @@ -3604,7 +3594,7 @@ global.get $~lib/memory/__stack_pointer i32.const 4644 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -3617,27 +3607,27 @@ i32.load16_s global.set $~lib/util/number/_exp_pow global.get $~lib/util/number/_frc_pow - local.tee $2 + local.tee $3 i64.const 4294967295 i64.and local.tee $4 i64.const 31 i64.shl - local.tee $5 local.set $1 - local.get $2 + local.get $3 i64.const 32 i64.shr_u - local.tee $6 + local.tee $3 + i64.const 31 + i64.shl + local.get $4 i64.const 31 i64.shl - local.tee $2 local.get $4 i64.const 10 i64.shl i64.const 32 i64.shr_u - local.get $5 i64.add local.tee $5 i64.const 32 @@ -3646,7 +3636,7 @@ local.get $5 i64.const 4294967295 i64.and - local.get $6 + local.get $3 i64.const 10 i64.shl i64.add @@ -3658,10 +3648,12 @@ i64.const 1 i64.sub local.set $5 + local.get $3 + i64.const 31 + i64.shl local.get $1 i64.const 32 i64.shr_u - local.get $2 i64.add local.get $1 i64.const 4294967295 @@ -3676,7 +3668,7 @@ i32.const 1 i32.add local.get $5 - local.get $6 + local.get $3 i64.const 2147483647 i64.mul local.get $4 @@ -3692,7 +3684,7 @@ i64.const 32 i64.shr_u i64.add - local.get $6 + local.get $3 i64.const 4294966784 i64.mul local.get $1 @@ -3716,9 +3708,9 @@ global.get $~lib/memory/__stack_pointer local.get $0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 3472 local.get $0 call $~lib/memory/memory.copy @@ -3728,12 +3720,12 @@ global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer local.tee $0 - local.get $3 + local.get $2 i32.store local.get $0 i32.const 4464 i32.store offset=4 - local.get $3 + local.get $2 i32.const 4464 call $~lib/string/String.__eq i32.eqz @@ -3808,19 +3800,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -3830,15 +3822,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -3861,7 +3854,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -3871,23 +3864,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -3895,7 +3888,7 @@ else i32.const 4608 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1472 @@ -3905,7 +3898,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 4612 @@ -3920,16 +3913,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -3937,11 +3930,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-unary.optimized.wat b/tests/compiler/resolve-unary.optimized.wat index 958ed6bd50..3d253935e6 100644 --- a/tests/compiler/resolve-unary.optimized.wat +++ b/tests/compiler/resolve-unary.optimized.wat @@ -1405,8 +1405,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -1617,25 +1617,25 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 3772 - i32.lt_s - if - i32.const 20176 - i32.const 20224 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/number/itoa32 + block $__inlined_func$~lib/util/number/itoa32 (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 3772 + i32.lt_s + if + i32.const 20176 + i32.const 20224 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store local.get $0 i32.eqz if @@ -1644,9 +1644,9 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1248 - local.set $1 br $__inlined_func$~lib/util/number/itoa32 end + global.get $~lib/memory/__stack_pointer i32.const 0 local.get $0 i32.sub @@ -1657,9 +1657,7 @@ local.tee $3 select local.tee $0 - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $0 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) @@ -1825,8 +1823,8 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $1 end - local.get $1 ) (func $~lib/string/String.__eq (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -1985,11 +1983,12 @@ (func $start:resolve-unary (local $0 i32) (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.sub - global.set $~lib/memory/__stack_pointer + (local $2 i32) block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 20 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 3772 i32.lt_s @@ -2280,15 +2279,16 @@ local.get $0 global.set $resolve-unary/foo global.get $~lib/memory/__stack_pointer + local.tee $0 global.get $resolve-unary/foo i32.store offset=12 - global.get $~lib/memory/__stack_pointer + local.get $0 i32.const 3488 i32.store offset=8 - global.get $~lib/memory/__stack_pointer + local.get $0 i32.const 3488 i32.store - global.get $~lib/memory/__stack_pointer + local.get $0 i32.const 3488 i32.store offset=4 i32.const 3488 @@ -2489,15 +2489,16 @@ local.get $0 global.set $resolve-unary/bar global.get $~lib/memory/__stack_pointer + local.tee $0 global.get $resolve-unary/bar i32.store offset=12 - global.get $~lib/memory/__stack_pointer + local.get $0 i32.const 3616 i32.store offset=8 - global.get $~lib/memory/__stack_pointer + local.get $0 i32.const 3616 i32.store - global.get $~lib/memory/__stack_pointer + local.get $0 i32.const 3616 i32.store offset=4 i32.const 3616 @@ -2539,11 +2540,12 @@ end global.get $~lib/memory/__stack_pointer local.tee $0 - global.get $resolve-unary/bar local.tee $1 + global.get $resolve-unary/bar + local.tee $2 i32.store - local.get $0 local.get $1 + local.get $2 i32.store offset=12 local.get $0 i32.const 3680 @@ -2568,11 +2570,12 @@ end global.get $~lib/memory/__stack_pointer local.tee $0 - global.get $resolve-unary/bar local.tee $1 + global.get $resolve-unary/bar + local.tee $2 i32.store - local.get $0 local.get $1 + local.get $2 i32.store offset=12 local.get $0 i32.const 3712 @@ -2616,19 +2619,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -2638,15 +2641,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -2669,7 +2673,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -2679,23 +2683,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -2703,7 +2707,7 @@ else i32.const 3728 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1472 @@ -2713,7 +2717,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 3732 @@ -2728,16 +2732,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -2745,11 +2749,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/return.optimized.wat b/tests/compiler/return.optimized.wat index 64eb14b70d..646c3e3cd5 100644 --- a/tests/compiler/return.optimized.wat +++ b/tests/compiler/return.optimized.wat @@ -71,6 +71,10 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store + block $__inlined_func$return/testVoidReturnFunction + local.get $0 + br_if $__inlined_func$return/testVoidReturnFunction + end local.get $1 i32.load call_indirect $0 (type $none_=>_none) diff --git a/tests/compiler/rt/finalize.optimized.wat b/tests/compiler/rt/finalize.optimized.wat index 37eac78dea..cdbde1548a 100644 --- a/tests/compiler/rt/finalize.optimized.wat +++ b/tests/compiler/rt/finalize.optimized.wat @@ -1261,8 +1261,8 @@ i32.load offset=8 local.set $3 local.get $0 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $0 @@ -1393,19 +1393,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1415,15 +1415,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1446,7 +1447,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1456,23 +1457,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1480,7 +1481,7 @@ else i32.const 1488 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1248 @@ -1490,7 +1491,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1492 @@ -1505,16 +1506,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -1522,11 +1523,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/rt/instanceof.optimized.wat b/tests/compiler/rt/instanceof.optimized.wat index fe2b72ea6d..9f5e3a46ba 100644 --- a/tests/compiler/rt/instanceof.optimized.wat +++ b/tests/compiler/rt/instanceof.optimized.wat @@ -1111,7 +1111,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1119,7 +1119,7 @@ memory.size local.tee $1 i32.const 4 - local.get $2 + local.get $3 i32.load offset=1568 local.get $1 i32.const 16 @@ -1134,16 +1134,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $1 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1151,7 +1151,7 @@ unreachable end end - local.get $2 + local.get $3 local.get $1 i32.const 16 i32.shl @@ -1159,7 +1159,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1186,7 +1186,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 @@ -1196,7 +1196,7 @@ i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $2 i32.const 16 i32.ge_u if @@ -1211,13 +1211,13 @@ i32.const 32 i32.add local.tee $4 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 + local.get $3 local.get $4 call $~lib/rt/tlsf/insertBlock else @@ -1252,8 +1252,8 @@ i32.load offset=8 local.set $2 local.get $1 - global.get $~lib/rt/itcms/white local.get $0 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $1 @@ -2128,19 +2128,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -2150,15 +2150,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -2181,7 +2182,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -2191,23 +2192,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -2215,7 +2216,7 @@ else i32.const 1504 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1248 @@ -2225,7 +2226,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1508 @@ -2240,16 +2241,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -2257,11 +2258,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/rt/runtime-incremental-export.optimized.wat b/tests/compiler/rt/runtime-incremental-export.optimized.wat index c5516f49e7..1ecc400228 100644 --- a/tests/compiler/rt/runtime-incremental-export.optimized.wat +++ b/tests/compiler/rt/runtime-incremental-export.optimized.wat @@ -168,10 +168,10 @@ local.get $0 call $~lib/rt/itcms/Object#unlink global.get $~lib/rt/itcms/toSpace - local.set $1 + local.set $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -179,7 +179,7 @@ else i32.const 1568 i32.load - local.get $2 + local.get $1 i32.lt_u if i32.const 1248 @@ -189,7 +189,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.shl i32.const 1572 @@ -204,8 +204,8 @@ else i32.const 2 end - local.set $2 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 local.set $3 local.get $0 @@ -224,7 +224,7 @@ local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 ) @@ -1487,8 +1487,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -1784,8 +1784,8 @@ i32.load offset=8 local.set $0 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 diff --git a/tests/compiler/rt/runtime-minimal-export.optimized.wat b/tests/compiler/rt/runtime-minimal-export.optimized.wat index fa13931f26..1ca7c051d8 100644 --- a/tests/compiler/rt/runtime-minimal-export.optimized.wat +++ b/tests/compiler/rt/runtime-minimal-export.optimized.wat @@ -778,7 +778,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -804,32 +804,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -845,16 +845,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -862,7 +862,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -870,8 +870,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -888,7 +888,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -898,13 +898,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -917,40 +917,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -980,8 +980,8 @@ i32.load offset=8 local.set $1 local.get $2 - global.get $~lib/rt/tcms/white local.get $0 + global.get $~lib/rt/tcms/white i32.or i32.store offset=4 local.get $2 @@ -1145,8 +1145,8 @@ i32.load offset=8 local.set $0 local.get $2 - global.get $~lib/rt/tcms/white local.get $1 + global.get $~lib/rt/tcms/white i32.or i32.store offset=4 local.get $2 @@ -1445,9 +1445,9 @@ i32.load offset=8 local.set $0 local.get $2 + local.get $1 global.get $~lib/rt/tcms/white i32.eqz - local.get $1 i32.or i32.store offset=4 local.get $2 diff --git a/tests/compiler/std-wasi/console.optimized.wat b/tests/compiler/std-wasi/console.optimized.wat index cb33097e8a..6b53f4a141 100644 --- a/tests/compiler/std-wasi/console.optimized.wat +++ b/tests/compiler/std-wasi/console.optimized.wat @@ -2,10 +2,10 @@ (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) (type $i32_=>_i32 (func (param i32) (result i32))) - (type $none_=>_none (func)) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) - (type $i32_i32_i32_=>_i32 (func (param i32 i32 i32) (result i32))) + (type $none_=>_none (func)) (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) + (type $i32_i32_i32_=>_i32 (func (param i32 i32 i32) (result i32))) (type $i32_i32_i32_i32_=>_i32 (func (param i32 i32 i32 i32) (result i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $none_=>_i32 (func (result i32))) @@ -1720,19 +1720,12 @@ end end ) - (func $~lib/rt/tlsf/__alloc (param $0 i32) (result i32) - (local $1 i32) + (func $~lib/rt/tlsf/allocateBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - call $~lib/rt/tlsf/initialize - end - global.get $~lib/rt/tlsf/ROOT - local.tee $1 local.get $0 + local.get $1 i32.const 1073741820 i32.gt_u if @@ -1743,13 +1736,13 @@ call $~lib/wasi/index/abort unreachable end - local.get $0 + local.get $1 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $0 + local.get $1 i32.const 19 i32.add i32.const -16 @@ -1759,11 +1752,11 @@ end local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if memory.size - local.tee $0 + local.tee $1 local.get $3 i32.const 536870910 i32.lt_u @@ -1782,9 +1775,9 @@ local.get $3 end i32.const 4 - local.get $1 - i32.load offset=1568 local.get $0 + i32.load offset=1568 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1799,7 +1792,7 @@ i32.const 16 i32.shr_u local.tee $2 - local.get $0 + local.get $1 local.get $2 i32.gt_s select @@ -1815,18 +1808,18 @@ unreachable end end - local.get $1 local.get $0 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $0 local.get $3 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1837,7 +1830,7 @@ unreachable end end - local.get $0 + local.get $1 i32.load i32.const -4 i32.and @@ -1851,10 +1844,10 @@ call $~lib/wasi/index/abort unreachable end - local.get $1 local.get $0 + local.get $1 call $~lib/rt/tlsf/removeBlock - local.get $0 + local.get $1 i32.load local.set $4 local.get $3 @@ -1879,7 +1872,7 @@ i32.const 16 i32.ge_u if - local.get $0 + local.get $1 local.get $4 i32.const 2 i32.and @@ -1887,7 +1880,7 @@ i32.or i32.store local.get $3 - local.get $0 + local.get $1 i32.const 4 i32.add i32.add @@ -1898,33 +1891,31 @@ i32.const 1 i32.or i32.store - local.get $1 + local.get $0 local.get $3 call $~lib/rt/tlsf/insertBlock else - local.get $0 + local.get $1 local.get $4 i32.const -2 i32.and i32.store - local.get $0 + local.get $1 i32.const 4 i32.add - local.get $0 + local.get $1 i32.load i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.load i32.const -3 i32.and i32.store end - local.get $0 - i32.const 4 - i32.add + local.get $1 ) (func $~lib/rt/tlsf/__free (param $0 i32) (local $1 i32) @@ -1999,7 +1990,7 @@ end local.get $1 i32.load16_u offset=6 - local.tee $4 + local.tee $2 i32.const 128 i32.ge_u br_if $break|0 @@ -2013,7 +2004,7 @@ end local.get $1 i32.load16_u offset=2 - local.tee $2 + local.tee $4 i32.const 128 i32.ge_u br_if $break|0 @@ -2031,7 +2022,7 @@ local.get $3 i32.store i32.const 1144 - local.get $2 + local.get $4 i32.const 8 i32.shl local.get $6 @@ -2040,7 +2031,7 @@ i32.const 16 i32.shl i32.or - local.get $4 + local.get $2 i32.const 24 i32.shl i32.or @@ -2142,14 +2133,23 @@ end end local.get $2 - local.tee $4 - call $~lib/rt/tlsf/__alloc - local.set $5 + local.set $4 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $4 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.set $4 i32.const 3 global.set $~argumentsLength local.get $1 local.get $3 - local.get $5 + local.get $4 call $~lib/string/String.UTF8.encodeUnsafe@varargs local.get $2 i32.ne @@ -2162,10 +2162,10 @@ unreachable end i32.const 1136 - local.get $5 + local.get $4 i32.store i32.const 1140 - local.get $4 + local.get $2 i32.store local.get $0 i32.const 1136 @@ -2173,7 +2173,7 @@ i32.const 1144 call $~lib/bindings/wasi_snapshot_preview1/fd_write local.set $0 - local.get $5 + local.get $4 call $~lib/rt/tlsf/__free local.get $0 i32.const 65535 @@ -2277,17 +2277,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 24356 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -2301,9 +2302,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -2313,15 +2314,15 @@ call $~lib/wasi/index/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -2833,13 +2834,13 @@ end global.get $~lib/rt/itcms/total local.tee $2 - local.get $2 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl + local.get $2 i32.add global.set $~lib/rt/itcms/threshold end @@ -2847,9 +2848,15 @@ local.get $0 i32.const 16 i32.add - call $~lib/rt/tlsf/__alloc - i32.const 4 - i32.sub + local.set $2 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $2 + call $~lib/rt/tlsf/allocateBlock local.tee $2 local.get $1 i32.store offset=12 @@ -2861,8 +2868,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -3148,7 +3155,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -3156,7 +3163,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $6 i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -3164,28 +3171,28 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $7 + local.tee $5 local.get $0 i32.load offset=16 i32.const 24 i32.mul i32.add - local.set $4 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 + local.get $5 local.get $7 i32.ne if - local.get $7 + local.get $5 i32.load offset=16 i32.const 1 i32.and i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $5 i32.load local.tee $8 i32.store offset=8 @@ -3193,7 +3200,7 @@ local.get $8 i32.store local.get $2 - local.get $7 + local.get $5 i64.load offset=8 i64.store offset=8 local.get $2 @@ -3203,7 +3210,7 @@ i32.and i32.const 2 i32.shl - local.get $6 + local.get $4 i32.add local.tee $8 i32.load @@ -3216,20 +3223,20 @@ i32.add local.set $2 end - local.get $7 + local.get $5 i32.const 24 i32.add - local.set $7 + local.set $5 br $while-continue|0 end end local.get $0 - local.get $6 + local.get $4 i32.store - local.get $6 + local.get $4 if local.get $0 - local.get $6 + local.get $4 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -3247,7 +3254,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $5 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -3367,25 +3374,25 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 7972 - i32.lt_s - if - i32.const 24384 - i32.const 24432 - i32.const 1 - i32.const 1 - call $~lib/wasi/index/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/number/utoa64 + block $__inlined_func$~lib/util/number/utoa64 (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 7972 + i32.lt_s + if + i32.const 24384 + i32.const 24432 + i32.const 1 + i32.const 1 + call $~lib/wasi/index/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store local.get $0 i64.eqz if @@ -3394,7 +3401,6 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 6000 - local.set $2 br $__inlined_func$~lib/util/number/utoa64 end local.get $0 @@ -3404,48 +3410,48 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.wrap_i64 - local.tee $1 local.tee $2 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -3456,10 +3462,10 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 local.get $1 + local.get $2 local.get $3 call $~lib/util/number/utoa32_dec_lut else @@ -3514,25 +3520,25 @@ i32.add end end - local.tee $1 + local.tee $2 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store loop $while-continue|0 local.get $0 i64.const 100000000 i64.ge_u if - local.get $1 + local.get $2 i32.const 4 i32.sub - local.tee $3 + local.tee $2 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.add local.get $0 local.get $0 @@ -3543,10 +3549,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $4 + local.tee $3 i32.const 10000 i32.rem_u - local.tee $1 + local.tee $4 i32.const 100 i32.div_u i32.const 2 @@ -3554,7 +3560,7 @@ i32.const 6012 i32.add i64.load32_u - local.get $1 + local.get $4 i32.const 100 i32.rem_u i32.const 2 @@ -3566,15 +3572,15 @@ i64.shl i64.or i64.store - local.get $3 + local.get $2 i32.const 4 i32.sub - local.tee $1 + local.tee $2 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.add - local.get $4 + local.get $3 i32.const 10000 i32.div_u local.tee $3 @@ -3600,18 +3606,18 @@ br $while-continue|0 end end - local.get $2 + local.get $1 local.get $0 i32.wrap_i64 - local.get $1 + local.get $2 call $~lib/util/number/utoa32_dec_lut end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $1 end - local.get $2 ) (func $~lib/rt/__visit_members (param $0 i32) (local $1 i32) @@ -3697,31 +3703,355 @@ unreachable ) (func $~start - global.get $~started - if - return - end - i32.const 1 - global.set $~started - call $start:std-wasi/console - ) - (func $~lib/console/console.assert (param $0 i32) (param $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 7972 - i32.lt_s - if - i32.const 24384 - i32.const 24432 - i32.const 1 + (local $0 i32) + (local $1 i32) + block $folding-inner0 + global.get $~started + if + return + end i32.const 1 - call $~lib/wasi/index/abort - unreachable - end - global.get $~lib/memory/__stack_pointer + global.set $~started + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 7972 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i32.const 1056 + i32.store + i32.const 0 + i32.const 1056 + call $~lib/console/console.assert + global.get $~lib/memory/__stack_pointer + i32.const 4496 + i32.store + i32.const 1 + i32.const 4496 + call $~lib/console/console.assert + global.get $~lib/memory/__stack_pointer + i32.const 4528 + i32.store offset=4 + i32.const 4528 + call $~lib/console/console.log + global.get $~lib/memory/__stack_pointer + i32.const 4576 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 7972 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i32.const 0 + i32.store + local.get $0 + i32.const 4624 + i32.store + i32.const 1 + i32.const 4624 + call $~lib/process/writeString + i32.const 1 + i32.const 4576 + call $~lib/process/writeString + global.get $~lib/memory/__stack_pointer + i32.const 4464 + i32.store + i32.const 1 + i32.const 4464 + call $~lib/process/writeString + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 4672 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 7972 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i32.const 0 + i32.store + local.get $0 + i32.const 4720 + i32.store + i32.const 1 + i32.const 4720 + call $~lib/process/writeString + i32.const 1 + i32.const 4672 + call $~lib/process/writeString + global.get $~lib/memory/__stack_pointer + i32.const 4464 + i32.store + i32.const 1 + i32.const 4464 + call $~lib/process/writeString + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 4752 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 7972 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i32.const 0 + i32.store + local.get $0 + i32.const 4800 + i32.store + i32.const 1 + i32.const 4800 + call $~lib/process/writeString + i32.const 1 + i32.const 4752 + call $~lib/process/writeString + global.get $~lib/memory/__stack_pointer + i32.const 4464 + i32.store + i32.const 1 + i32.const 4464 + call $~lib/process/writeString + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 4848 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 7972 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i32.const 0 + i32.store + local.get $0 + i32.const 4896 + i32.store + i32.const 1 + i32.const 4896 + call $~lib/process/writeString + i32.const 1 + i32.const 4848 + call $~lib/process/writeString + global.get $~lib/memory/__stack_pointer + i32.const 4464 + i32.store + i32.const 1 + i32.const 4464 + call $~lib/process/writeString + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + memory.size + i32.const 16 + i32.shl + i32.const 24356 + i32.sub + i32.const 1 + i32.shr_u + global.set $~lib/rt/itcms/threshold + i32.const 5044 + i32.const 5040 + i32.store + i32.const 5048 + i32.const 5040 + i32.store + i32.const 5040 + global.set $~lib/rt/itcms/pinSpace + i32.const 5076 + i32.const 5072 + i32.store + i32.const 5080 + i32.const 5072 + i32.store + i32.const 5072 + global.set $~lib/rt/itcms/toSpace + i32.const 5220 + i32.const 5216 + i32.store + i32.const 5224 + i32.const 5216 + i32.store + i32.const 5216 + global.set $~lib/rt/itcms/fromSpace + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 7972 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i32.const 0 + i32.store + local.get $0 + i32.const 24 + i32.const 3 + call $~lib/rt/itcms/__new + local.tee $0 + i32.store + local.get $0 + i32.const 16 + call $~lib/arraybuffer/ArrayBuffer#constructor + local.tee $1 + i32.store + local.get $1 + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link_0 + end + local.get $0 + i32.const 3 + i32.store offset=4 + local.get $0 + i32.const 96 + call $~lib/arraybuffer/ArrayBuffer#constructor + local.tee $1 + i32.store offset=8 + local.get $1 + if + local.get $0 + local.get $1 + call $byn-split-outlined-A$~lib/rt/itcms/__link_0 + end + local.get $0 + i32.const 4 + i32.store offset=12 + local.get $0 + i32.const 0 + i32.store offset=16 + local.get $0 + i32.const 0 + i32.store offset=20 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $0 + global.set $~lib/console/timers + global.get $~lib/memory/__stack_pointer + i32.const 4944 + i32.store offset=4 + i32.const 4944 + call $~lib/console/console.time + global.get $~lib/memory/__stack_pointer + i32.const 4944 + i32.store offset=4 + i32.const 4944 + call $~lib/console/console.timeLog + global.get $~lib/memory/__stack_pointer + i32.const 4944 + i32.store offset=4 + i32.const 4944 + call $~lib/console/console.timeEnd + global.get $~lib/memory/__stack_pointer + i32.const 7728 + i32.store offset=4 + i32.const 7728 + call $~lib/console/console.timeLog + global.get $~lib/memory/__stack_pointer + i32.const 7728 + i32.store offset=4 + i32.const 7728 + call $~lib/console/console.timeEnd + global.get $~lib/memory/__stack_pointer + i32.const 7776 + i32.store offset=4 + i32.const 7776 + call $~lib/console/console.time + global.get $~lib/memory/__stack_pointer + i32.const 7776 + i32.store offset=4 + i32.const 7776 + call $~lib/console/console.time + global.get $~lib/memory/__stack_pointer + i32.const 7824 + i32.store offset=4 + i32.const 7824 + call $~lib/console/console.log + global.get $~lib/memory/__stack_pointer + i32.const 7856 + i32.store offset=4 + i32.const 7856 + call $~lib/console/console.log + global.get $~lib/memory/__stack_pointer + i32.const 7888 + i32.store offset=4 + i32.const 7888 + call $~lib/console/console.log + global.get $~lib/memory/__stack_pointer + i32.const 7920 + i32.store offset=4 + i32.const 7920 + call $~lib/console/console.log + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + return + end + i32.const 24384 + i32.const 24432 + i32.const 1 + i32.const 1 + call $~lib/wasi/index/abort + unreachable + ) + (func $~lib/console/console.assert (param $0 i32) (param $1 i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 7972 + i32.lt_s + if + i32.const 24384 + i32.const 24432 + i32.const 1 + i32.const 1 + call $~lib/wasi/index/abort + unreachable + end + global.get $~lib/memory/__stack_pointer i32.const 0 i32.store local.get $0 @@ -3830,26 +4160,26 @@ global.get $~lib/memory/__stack_pointer local.get $5 i32.load - local.tee $4 + local.tee $3 i32.store block $__inlined_func$~lib/string/String.__eq (result i32) i32.const 1 + local.get $3 local.get $1 local.tee $2 - local.get $4 i32.eq br_if $__inlined_func$~lib/string/String.__eq drop i32.const 0 local.get $2 i32.const 0 - local.get $4 + local.get $3 select i32.eqz br_if $__inlined_func$~lib/string/String.__eq drop i32.const 0 - local.get $4 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -3866,7 +4196,7 @@ br_if $__inlined_func$~lib/string/String.__eq drop block $__inlined_func$~lib/util/string/compareImpl (result i32) - local.get $4 + local.get $3 i32.const 7 i32.and local.get $2 @@ -3881,16 +4211,16 @@ i32.eqz if loop $do-loop|0 - local.get $4 + local.get $3 i64.load local.get $2 i64.load i64.eq if - local.get $4 + local.get $3 i32.const 8 i32.add - local.set $4 + local.set $3 local.get $2 i32.const 8 i32.add @@ -3907,29 +4237,29 @@ end loop $while-continue|1 local.get $0 - local.tee $3 + local.tee $4 i32.const 1 i32.sub local.set $0 - local.get $3 + local.get $4 if - local.get $2 + local.get $3 i32.load16_u local.tee $7 - local.get $4 + local.get $2 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $3 local.get $7 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $4 + local.get $3 i32.const 2 i32.add - local.set $4 + local.set $3 local.get $2 i32.const 2 i32.add @@ -3964,29 +4294,29 @@ i32.const 0 ) (func $~lib/console/console.time (param $0 i32) - (local $1 i64) + (local $1 i32) (local $2 i32) - (local $3 i32) + (local $3 i64) (local $4 i32) (local $5 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 7972 i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 global.get $~lib/console/timers - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 local.get $0 local.get $0 call $~lib/util/hash/HASH<~lib/string/String> @@ -4015,10 +4345,10 @@ end global.get $~lib/memory/__stack_pointer global.get $~lib/console/timers - local.tee $4 + local.tee $1 i32.store call $~lib/process/process.hrtime - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -4030,28 +4360,28 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $4 + local.get $1 local.get $0 local.get $0 call $~lib/util/hash/HASH<~lib/string/String> local.tee $2 call $~lib/map/Map<~lib/string/String,u64>#find - local.tee $3 + local.tee $4 if + local.get $4 local.get $3 - local.get $1 i64.store offset=8 else - local.get $4 + local.get $1 i32.load offset=16 - local.get $4 + local.get $1 i32.load offset=12 i32.eq if - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.load offset=20 - local.get $4 + local.get $1 i32.load offset=12 i32.const 3 i32.mul @@ -4059,10 +4389,10 @@ i32.div_s i32.lt_s if (result i32) - local.get $4 + local.get $1 i32.load offset=4 else - local.get $4 + local.get $1 i32.load offset=4 i32.const 1 i32.shl @@ -4072,45 +4402,45 @@ call $~lib/map/Map<~lib/string/String,u64>#rehash end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.load offset=8 - local.tee $5 + local.tee $4 i32.store - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.load offset=16 - local.tee $3 + local.tee $5 i32.const 1 i32.add i32.store offset=16 - local.get $3 + local.get $5 i32.const 24 i32.mul - local.get $5 + local.get $4 i32.add - local.tee $3 + local.tee $4 local.get $0 i32.store local.get $0 if - local.get $4 + local.get $1 local.get $0 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $4 local.get $3 - local.get $1 i64.store offset=8 - local.get $4 - local.get $4 + local.get $1 + local.get $1 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $3 local.get $4 + local.get $1 i32.load - local.get $4 + local.get $1 i32.load offset=4 local.get $2 i32.and @@ -4121,7 +4451,7 @@ i32.load i32.store offset=16 local.get $0 - local.get $3 + local.get $4 i32.store end global.get $~lib/memory/__stack_pointer @@ -4322,413 +4652,84 @@ i32.const 5536 call $~lib/process/writeString i32.const 1 - local.get $0 - call $~lib/process/writeString - global.get $~lib/memory/__stack_pointer - i32.const 7648 - i32.store offset=4 - i32.const 1 - i32.const 7648 - call $~lib/process/writeString - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - return - end - local.get $0 - call $~lib/console/timeLogImpl - global.get $~lib/memory/__stack_pointer - global.get $~lib/console/timers - local.tee $1 - i32.store - local.get $1 - local.get $0 - local.get $0 - call $~lib/util/hash/HASH<~lib/string/String> - call $~lib/map/Map<~lib/string/String,u64>#find - local.tee $0 - if - local.get $0 - local.get $0 - i32.load offset=16 - i32.const 1 - i32.or - i32.store offset=16 - local.get $1 - local.get $1 - i32.load offset=20 - i32.const 1 - i32.sub - i32.store offset=20 - local.get $1 - i32.load offset=4 - i32.const 1 - i32.shr_u - local.tee $0 - i32.const 1 - i32.add - i32.const 4 - local.get $1 - i32.load offset=20 - local.tee $2 - local.get $2 - i32.const 4 - i32.lt_u - select - i32.ge_u - if (result i32) - local.get $1 - i32.load offset=20 - local.get $1 - i32.load offset=12 - i32.const 3 - i32.mul - i32.const 4 - i32.div_s - i32.lt_s - else - i32.const 0 - end - if - local.get $1 - local.get $0 - call $~lib/map/Map<~lib/string/String,u64>#rehash - end - end - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - ) - (func $start:std-wasi/console - (local $0 i32) - (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - block $folding-inner0 - global.get $~lib/memory/__stack_pointer - i32.const 7972 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $0 - i64.const 0 - i64.store - local.get $0 - i32.const 1056 - i32.store - i32.const 0 - i32.const 1056 - call $~lib/console/console.assert - global.get $~lib/memory/__stack_pointer - i32.const 4496 - i32.store - i32.const 1 - i32.const 4496 - call $~lib/console/console.assert - global.get $~lib/memory/__stack_pointer - i32.const 4528 - i32.store offset=4 - i32.const 4528 - call $~lib/console/console.log - global.get $~lib/memory/__stack_pointer - i32.const 4576 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 7972 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $0 - i32.const 0 - i32.store - local.get $0 - i32.const 4624 - i32.store - i32.const 1 - i32.const 4624 - call $~lib/process/writeString - i32.const 1 - i32.const 4576 - call $~lib/process/writeString - global.get $~lib/memory/__stack_pointer - i32.const 4464 - i32.store - i32.const 1 - i32.const 4464 - call $~lib/process/writeString - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 4672 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 7972 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $0 - i32.const 0 - i32.store - local.get $0 - i32.const 4720 - i32.store - i32.const 1 - i32.const 4720 - call $~lib/process/writeString - i32.const 1 - i32.const 4672 - call $~lib/process/writeString - global.get $~lib/memory/__stack_pointer - i32.const 4464 - i32.store - i32.const 1 - i32.const 4464 - call $~lib/process/writeString - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 4752 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 7972 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $0 - i32.const 0 - i32.store - local.get $0 - i32.const 4800 - i32.store - i32.const 1 - i32.const 4800 - call $~lib/process/writeString - i32.const 1 - i32.const 4752 - call $~lib/process/writeString - global.get $~lib/memory/__stack_pointer - i32.const 4464 - i32.store - i32.const 1 - i32.const 4464 - call $~lib/process/writeString - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 4848 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 7972 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $0 - i32.const 0 - i32.store - local.get $0 - i32.const 4896 - i32.store - i32.const 1 - i32.const 4896 - call $~lib/process/writeString - i32.const 1 - i32.const 4848 + local.get $0 call $~lib/process/writeString global.get $~lib/memory/__stack_pointer - i32.const 4464 - i32.store + i32.const 7648 + i32.store offset=4 i32.const 1 - i32.const 4464 + i32.const 7648 call $~lib/process/writeString global.get $~lib/memory/__stack_pointer - i32.const 4 + i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - memory.size - i32.const 16 - i32.shl - i32.const 24356 + return + end + local.get $0 + call $~lib/console/timeLogImpl + global.get $~lib/memory/__stack_pointer + global.get $~lib/console/timers + local.tee $1 + i32.store + local.get $1 + local.get $0 + local.get $0 + call $~lib/util/hash/HASH<~lib/string/String> + call $~lib/map/Map<~lib/string/String,u64>#find + local.tee $0 + if + local.get $0 + local.get $0 + i32.load offset=16 + i32.const 1 + i32.or + i32.store offset=16 + local.get $1 + local.get $1 + i32.load offset=20 + i32.const 1 i32.sub + i32.store offset=20 + local.get $1 + i32.load offset=4 i32.const 1 i32.shr_u - global.set $~lib/rt/itcms/threshold - i32.const 5044 - i32.const 5040 - i32.store - i32.const 5048 - i32.const 5040 - i32.store - i32.const 5040 - global.set $~lib/rt/itcms/pinSpace - i32.const 5076 - i32.const 5072 - i32.store - i32.const 5080 - i32.const 5072 - i32.store - i32.const 5072 - global.set $~lib/rt/itcms/toSpace - i32.const 5220 - i32.const 5216 - i32.store - i32.const 5224 - i32.const 5216 - i32.store - i32.const 5216 - global.set $~lib/rt/itcms/fromSpace - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 7972 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $0 - i32.const 0 - i32.store - local.get $0 - i32.const 24 - i32.const 3 - call $~lib/rt/itcms/__new local.tee $0 - i32.store - local.get $0 - i32.const 16 - call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 - i32.store + i32.const 1 + i32.add + i32.const 4 local.get $1 - if - local.get $0 + i32.load offset=20 + local.tee $2 + local.get $2 + i32.const 4 + i32.lt_u + select + i32.ge_u + if (result i32) + local.get $1 + i32.load offset=20 local.get $1 + i32.load offset=12 + i32.const 3 + i32.mul + i32.const 4 + i32.div_s + i32.lt_s + else i32.const 0 - call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - i32.const 3 - i32.store offset=4 - local.get $0 - i32.const 96 - call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 - i32.store offset=8 - local.get $1 if - local.get $0 local.get $1 - i32.const 0 - call $byn-split-outlined-A$~lib/rt/itcms/__link + local.get $0 + call $~lib/map/Map<~lib/string/String,u64>#rehash end - local.get $0 - i32.const 4 - i32.store offset=12 - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $0 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $0 - global.set $~lib/console/timers - global.get $~lib/memory/__stack_pointer - i32.const 4944 - i32.store offset=4 - i32.const 4944 - call $~lib/console/console.time - global.get $~lib/memory/__stack_pointer - i32.const 4944 - i32.store offset=4 - i32.const 4944 - call $~lib/console/console.timeLog - global.get $~lib/memory/__stack_pointer - i32.const 4944 - i32.store offset=4 - i32.const 4944 - call $~lib/console/console.timeEnd - global.get $~lib/memory/__stack_pointer - i32.const 7728 - i32.store offset=4 - i32.const 7728 - call $~lib/console/console.timeLog - global.get $~lib/memory/__stack_pointer - i32.const 7728 - i32.store offset=4 - i32.const 7728 - call $~lib/console/console.timeEnd - global.get $~lib/memory/__stack_pointer - i32.const 7776 - i32.store offset=4 - i32.const 7776 - call $~lib/console/console.time - global.get $~lib/memory/__stack_pointer - i32.const 7776 - i32.store offset=4 - i32.const 7776 - call $~lib/console/console.time - global.get $~lib/memory/__stack_pointer - i32.const 7824 - i32.store offset=4 - i32.const 7824 - call $~lib/console/console.log - global.get $~lib/memory/__stack_pointer - i32.const 7856 - i32.store offset=4 - i32.const 7856 - call $~lib/console/console.log - global.get $~lib/memory/__stack_pointer - i32.const 7888 - i32.store offset=4 - i32.const 7888 - call $~lib/console/console.log - global.get $~lib/memory/__stack_pointer - i32.const 7920 - i32.store offset=4 - i32.const 7920 - call $~lib/console/console.log - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - return end - i32.const 24384 - i32.const 24432 - i32.const 1 - i32.const 1 - call $~lib/wasi/index/abort - unreachable + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer ) (func $~lib/arraybuffer/ArrayBuffer#constructor (param $0 i32) (result i32) (local $1 i32) @@ -4849,4 +4850,53 @@ end end ) + (func $byn-split-outlined-A$~lib/rt/itcms/__link_0 (param $0 i32) (param $1 i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 4992 + i32.const 294 + i32.const 14 + call $~lib/wasi/index/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $1 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $0 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $0 + i32.const 3 + i32.eq + i32.and + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + end + end + end + ) ) diff --git a/tests/compiler/std-wasi/crypto.optimized.wat b/tests/compiler/std-wasi/crypto.optimized.wat index c8566be5d0..17adffb932 100644 --- a/tests/compiler/std-wasi/crypto.optimized.wat +++ b/tests/compiler/std-wasi/crypto.optimized.wat @@ -1,7 +1,7 @@ (module (type $i32_=>_none (func (param i32))) - (type $i32_=>_i32 (func (param i32) (result i32))) (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) + (type $i32_=>_i32 (func (param i32) (result i32))) (type $none_=>_none (func)) (type $i32_i32_=>_none (func (param i32 i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) @@ -755,17 +755,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 23284 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -779,9 +780,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -791,15 +792,15 @@ call $~lib/wasi/index/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -1855,19 +1856,12 @@ end end ) - (func $~lib/rt/tlsf/__alloc (param $0 i32) (result i32) - (local $1 i32) + (func $~lib/rt/tlsf/allocateBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - call $~lib/rt/tlsf/initialize - end - global.get $~lib/rt/tlsf/ROOT - local.tee $1 local.get $0 + local.get $1 i32.const 1073741820 i32.gt_u if @@ -1878,13 +1872,13 @@ call $~lib/wasi/index/abort unreachable end - local.get $0 + local.get $1 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $0 + local.get $1 i32.const 19 i32.add i32.const -16 @@ -1894,11 +1888,11 @@ end local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if memory.size - local.tee $0 + local.tee $1 local.get $3 i32.const 536870910 i32.lt_u @@ -1917,9 +1911,9 @@ local.get $3 end i32.const 4 - local.get $1 - i32.load offset=1568 local.get $0 + i32.load offset=1568 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1934,7 +1928,7 @@ i32.const 16 i32.shr_u local.tee $2 - local.get $0 + local.get $1 local.get $2 i32.gt_s select @@ -1950,18 +1944,18 @@ unreachable end end - local.get $1 local.get $0 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $0 local.get $3 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1972,7 +1966,7 @@ unreachable end end - local.get $0 + local.get $1 i32.load i32.const -4 i32.and @@ -1986,10 +1980,10 @@ call $~lib/wasi/index/abort unreachable end - local.get $1 local.get $0 + local.get $1 call $~lib/rt/tlsf/removeBlock - local.get $0 + local.get $1 i32.load local.set $4 local.get $3 @@ -2014,7 +2008,7 @@ i32.const 16 i32.ge_u if - local.get $0 + local.get $1 local.get $4 i32.const 2 i32.and @@ -2022,7 +2016,7 @@ i32.or i32.store local.get $3 - local.get $0 + local.get $1 i32.const 4 i32.add i32.add @@ -2033,33 +2027,31 @@ i32.const 1 i32.or i32.store - local.get $1 + local.get $0 local.get $3 call $~lib/rt/tlsf/insertBlock else - local.get $0 + local.get $1 local.get $4 i32.const -2 i32.and i32.store - local.get $0 + local.get $1 i32.const 4 i32.add - local.get $0 + local.get $1 i32.load i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.load i32.const -3 i32.and i32.store end - local.get $0 - i32.const 4 - i32.add + local.get $1 ) (func $~lib/memory/memory.fill (param $0 i32) (param $1 i32) (local $2 i32) @@ -2285,13 +2277,13 @@ end global.get $~lib/rt/itcms/total local.tee $2 - local.get $2 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl + local.get $2 i32.add global.set $~lib/rt/itcms/threshold end @@ -2299,9 +2291,15 @@ local.get $0 i32.const 16 i32.add - call $~lib/rt/tlsf/__alloc - i32.const 4 - i32.sub + local.set $2 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $2 + call $~lib/rt/tlsf/allocateBlock local.tee $2 local.get $1 i32.store offset=12 @@ -2313,8 +2311,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -3750,31 +3748,27 @@ (local $4 i32) (local $5 i32) (local $6 i32) - local.get $0 - i32.load offset=4 - local.set $4 - local.get $0 - i32.load offset=8 - local.set $1 - i32.const 0 - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner1 - global.get $~lib/memory/__stack_pointer - i32.const 6900 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/string/joinIntegerArray - local.get $1 + block $__inlined_func$~lib/util/string/joinIntegerArray (result i32) + local.get $0 + i32.load offset=4 + local.set $3 + local.get $0 + i32.load offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 6900 + i32.lt_s + br_if $folding-inner1 + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store i32.const 1 i32.sub - local.tee $5 + local.tee $0 i32.const 0 i32.lt_s if @@ -3783,15 +3777,14 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 4848 - local.set $0 br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $5 + local.get $0 i32.eqz if block $__inlined_func$~lib/util/number/utoa32 (result i32) - local.get $4 + local.get $3 i32.load8_u local.set $0 global.get $~lib/memory/__stack_pointer @@ -3817,46 +3810,47 @@ end global.get $~lib/memory/__stack_pointer local.get $0 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -3883,58 +3877,58 @@ br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $0 i32.const 6652 i32.load i32.const 1 i32.shr_u - local.tee $6 + local.tee $4 i32.const 10 i32.add i32.mul i32.const 10 i32.add - local.tee $3 + local.tee $5 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $6 i32.store loop $for-loop|0 + local.get $0 local.get $2 - local.get $5 - i32.lt_s + i32.gt_s if - local.get $0 + local.get $1 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add local.get $2 - local.get $4 + local.get $3 i32.add i32.load8_u call $~lib/util/number/itoa_buffered - local.get $0 + local.get $1 i32.add - local.set $0 - local.get $6 + local.set $1 + local.get $4 if - local.get $0 + local.get $1 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add i32.const 6656 - local.get $6 + local.get $4 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $0 - local.get $6 + local.get $1 + local.get $4 i32.add - local.set $0 + local.set $1 end local.get $2 i32.const 1 @@ -3943,79 +3937,79 @@ br $for-loop|0 end end - local.get $3 - local.get $0 + local.get $5 + local.get $1 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add - local.get $4 - local.get $5 + local.get $0 + local.get $3 i32.add i32.load8_u call $~lib/util/number/itoa_buffered - local.get $0 + local.get $1 i32.add - local.tee $2 + local.tee $0 i32.gt_s if - local.get $1 - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 6900 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - i32.const 0 - local.get $0 - i32.const 20 - i32.sub - i32.load offset=16 - i32.const 1 - i32.shr_u - local.tee $1 - local.get $1 - select - local.tee $3 - local.get $2 - i32.const 0 - local.get $2 - i32.const 0 - i32.gt_s - select - local.tee $2 - local.get $1 - local.get $1 - local.get $2 - i32.gt_s - select - local.tee $2 - local.get $2 - local.get $3 - i32.gt_s - select - i32.const 1 - i32.shl - local.set $4 - block $__inlined_func$~lib/string/String#substring - local.get $3 + block $__inlined_func$~lib/string/String#substring (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 6900 + i32.lt_s + br_if $folding-inner1 + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store + i32.const 0 + local.get $6 + i32.const 20 + i32.sub + i32.load offset=16 + i32.const 1 + i32.shr_u + local.tee $1 + local.get $1 + i32.const 0 + i32.gt_s + select + local.tee $2 + local.get $0 + i32.const 0 + local.get $0 + i32.const 0 + i32.gt_s + select + local.tee $0 + local.get $1 + local.get $0 + local.get $1 + i32.lt_s + select + local.tee $0 + local.get $0 local.get $2 + i32.gt_s + select + i32.const 1 + i32.shl + local.set $3 + local.get $2 + local.get $0 + local.get $0 local.get $2 - local.get $3 i32.lt_s select i32.const 1 i32.shl - local.tee $2 - local.get $4 + local.tee $0 + local.get $3 i32.sub - local.tee $3 + local.tee $2 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -4023,59 +4017,58 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 4848 - local.set $0 br $__inlined_func$~lib/string/String#substring end i32.const 0 local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $0 i32.eq - local.get $4 + local.get $3 select if global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $6 br $__inlined_func$~lib/string/String#substring end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store - local.get $1 local.get $0 - local.get $4 - i32.add local.get $3 + local.get $6 + i32.add + local.get $2 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.set $0 + local.get $0 end + local.set $0 br $folding-inner0 end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.set $0 + local.get $6 br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 end - local.get $0 return end i32.const 23312 @@ -4089,32 +4082,32 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 6900 - i32.lt_s - if - i32.const 23312 - i32.const 23360 - i32.const 1 - i32.const 1 - call $~lib/wasi/index/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/string/String#concat + block $__inlined_func$~lib/string/String#concat (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 6900 + i32.lt_s + if + i32.const 23312 + i32.const 23360 + i32.const 1 + i32.const 1 + call $~lib/wasi/index/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store i32.const 4764 i32.load i32.const 1 i32.shr_u i32.const 1 i32.shl - local.tee $2 + local.tee $1 local.get $0 i32.const 20 i32.sub @@ -4123,9 +4116,9 @@ i32.shr_u i32.const 1 i32.shl - local.tee $3 + local.tee $2 i32.add - local.tee $1 + local.tee $3 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -4133,31 +4126,30 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 4848 - local.set $1 br $__inlined_func$~lib/string/String#concat end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 4768 - local.get $2 + local.get $1 call $~lib/memory/memory.copy local.get $1 - local.get $2 + local.get $3 i32.add local.get $0 - local.get $3 + local.get $2 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $3 end - local.get $1 ) (func $~lib/process/writeString (param $0 i32) (local $1 i32) @@ -4326,7 +4318,17 @@ end end local.get $2 - call $~lib/rt/tlsf/__alloc + local.set $1 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $1 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add local.set $1 i32.const 3 global.set $~argumentsLength @@ -4493,11 +4495,11 @@ (local $0 i32) (local $1 i32) (local $2 i32) - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 6900 i32.lt_s @@ -4862,18 +4864,17 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 6900 i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i32.const 0 i32.store i32.const 0 @@ -4886,6 +4887,7 @@ i32.gt_s select local.set $4 + local.get $3 local.get $0 local.get $4 i32.sub @@ -4896,8 +4898,8 @@ i32.gt_s select local.tee $5 - local.set $7 - local.get $1 + local.set $1 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -4946,7 +4948,7 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $7 + local.get $1 i32.const 1073741820 i32.gt_u if @@ -4958,41 +4960,42 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $6 i32.store offset=4 - local.get $3 - local.get $7 + local.get $6 + local.get $1 call $~lib/memory/memory.fill local.get $0 - local.get $3 + local.get $6 i32.store - local.get $3 + local.get $0 + local.set $3 + local.get $6 if - local.get $0 local.get $3 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 local.get $3 + local.get $6 i32.store offset=4 - local.get $0 - local.get $7 + local.get $3 + local.get $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $0 + local.get $3 i32.store local.get $0 i32.load offset=4 diff --git a/tests/compiler/std-wasi/process.optimized.wat b/tests/compiler/std-wasi/process.optimized.wat index 313ada16d1..fe72ce4fbe 100644 --- a/tests/compiler/std-wasi/process.optimized.wat +++ b/tests/compiler/std-wasi/process.optimized.wat @@ -1706,19 +1706,12 @@ end end ) - (func $~lib/rt/tlsf/__alloc (param $0 i32) (result i32) - (local $1 i32) + (func $~lib/rt/tlsf/allocateBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - call $~lib/rt/tlsf/initialize - end - global.get $~lib/rt/tlsf/ROOT - local.tee $1 local.get $0 + local.get $1 i32.const 1073741820 i32.gt_u if @@ -1729,13 +1722,13 @@ call $~lib/wasi/index/abort unreachable end - local.get $0 + local.get $1 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $0 + local.get $1 i32.const 19 i32.add i32.const -16 @@ -1745,11 +1738,11 @@ end local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if memory.size - local.tee $0 + local.tee $1 local.get $3 i32.const 536870910 i32.lt_u @@ -1768,9 +1761,9 @@ local.get $3 end i32.const 4 - local.get $1 - i32.load offset=1568 local.get $0 + i32.load offset=1568 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1785,7 +1778,7 @@ i32.const 16 i32.shr_u local.tee $2 - local.get $0 + local.get $1 local.get $2 i32.gt_s select @@ -1801,18 +1794,18 @@ unreachable end end - local.get $1 local.get $0 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $0 local.get $3 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1823,7 +1816,7 @@ unreachable end end - local.get $0 + local.get $1 i32.load i32.const -4 i32.and @@ -1837,10 +1830,10 @@ call $~lib/wasi/index/abort unreachable end - local.get $1 local.get $0 + local.get $1 call $~lib/rt/tlsf/removeBlock - local.get $0 + local.get $1 i32.load local.set $4 local.get $3 @@ -1865,7 +1858,7 @@ i32.const 16 i32.ge_u if - local.get $0 + local.get $1 local.get $4 i32.const 2 i32.and @@ -1873,7 +1866,7 @@ i32.or i32.store local.get $3 - local.get $0 + local.get $1 i32.const 4 i32.add i32.add @@ -1884,33 +1877,31 @@ i32.const 1 i32.or i32.store - local.get $1 + local.get $0 local.get $3 call $~lib/rt/tlsf/insertBlock else - local.get $0 + local.get $1 local.get $4 i32.const -2 i32.and i32.store - local.get $0 + local.get $1 i32.const 4 i32.add - local.get $0 + local.get $1 i32.load i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.load i32.const -3 i32.and i32.store end - local.get $0 - i32.const 4 - i32.add + local.get $1 ) (func $~lib/rt/tlsf/__free (param $0 i32) (local $1 i32) @@ -2129,7 +2120,17 @@ end end local.get $2 - call $~lib/rt/tlsf/__alloc + local.set $1 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $1 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add local.set $1 i32.const 3 global.set $~argumentsLength @@ -2305,17 +2306,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 23788 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -2329,9 +2331,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -2341,15 +2343,15 @@ call $~lib/wasi/index/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -2861,13 +2863,13 @@ end global.get $~lib/rt/itcms/total local.tee $2 - local.get $2 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl + local.get $2 i32.add global.set $~lib/rt/itcms/threshold end @@ -2875,9 +2877,15 @@ local.get $0 i32.const 16 i32.add - call $~lib/rt/tlsf/__alloc - i32.const 4 - i32.sub + local.set $2 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $2 + call $~lib/rt/tlsf/allocateBlock local.tee $2 local.get $1 i32.store offset=12 @@ -2889,8 +2897,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -4721,11 +4729,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer + (local $9 i32) block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 7404 i32.lt_s @@ -4754,18 +4763,28 @@ end i32.const 1088 i32.load - local.tee $6 + local.tee $4 i32.const 2 i32.shl local.tee $0 i32.const 1092 i32.load i32.add + local.tee $3 + local.set $1 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $1 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add local.tee $7 - call $~lib/rt/tlsf/__alloc - local.tee $4 local.get $0 - local.get $4 + local.get $7 i32.add call $~lib/bindings/wasi_snapshot_preview1/environ_get local.tee $0 @@ -4843,95 +4862,100 @@ local.get $0 i32.store loop $for-loop|0 + local.get $4 local.get $5 - local.get $6 - i32.lt_u + i32.gt_u if global.get $~lib/memory/__stack_pointer local.get $5 i32.const 2 i32.shl - local.get $4 + local.get $7 i32.add i32.load local.tee $1 local.get $1 - local.get $7 + local.get $3 i32.add - local.get $4 + local.get $7 i32.sub call $~lib/string/String.UTF8.decodeUnsafe - local.tee $3 + local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 5168 i32.store offset=8 - i32.const 0 - local.set $8 - block $__inlined_func$~lib/string/String#indexOf + block $__inlined_func$~lib/string/String#indexOf (result i32) + local.get $1 + local.set $2 + i32.const 0 i32.const 5164 i32.load i32.const 1 i32.shr_u - local.tee $2 + local.tee $8 i32.eqz br_if $__inlined_func$~lib/string/String#indexOf + drop i32.const -1 - local.set $8 - local.get $3 + local.get $2 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $1 + local.tee $9 i32.eqz br_if $__inlined_func$~lib/string/String#indexOf + drop i32.const 0 - local.get $1 - local.get $1 + local.get $9 + local.get $9 + i32.const 0 + i32.gt_s select - local.set $8 - local.get $1 - local.get $2 + local.set $6 + local.get $9 + local.get $8 i32.sub - local.set $1 - loop $for-loop|00 - local.get $1 - local.get $8 - i32.ge_s + local.set $9 + loop $for-loop|01 + local.get $6 + local.get $9 + i32.le_s if - local.get $3 - local.get $8 - i32.const 5168 + local.get $6 local.get $2 + local.get $6 + i32.const 5168 + local.get $8 call $~lib/util/string/compareImpl i32.eqz br_if $__inlined_func$~lib/string/String#indexOf - local.get $8 + drop + local.get $6 i32.const 1 i32.add - local.set $8 - br $for-loop|00 + local.set $6 + br $for-loop|01 end end i32.const -1 - local.set $8 end - local.get $8 + local.tee $2 i32.const -1 i32.xor if - local.get $3 + local.get $1 i32.const 0 - local.get $8 + local.get $2 call $~lib/string/String#substring - local.set $2 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $6 i32.store offset=8 - local.get $3 - local.get $8 + local.get $1 + local.get $2 i32.const 1 i32.add i32.const 2147483647 @@ -4941,7 +4965,7 @@ local.get $1 i32.store offset=12 local.get $0 - local.get $2 + local.get $6 local.get $1 call $~lib/map/Map<~lib/string/String,~lib/string/String>#set else @@ -4949,7 +4973,7 @@ i32.const 5200 i32.store offset=12 local.get $0 - local.get $3 + local.get $1 i32.const 5200 call $~lib/map/Map<~lib/string/String,~lib/string/String>#set end @@ -4960,7 +4984,7 @@ br $for-loop|0 end end - local.get $4 + local.get $7 call $~lib/rt/tlsf/__free global.get $~lib/memory/__stack_pointer i32.const 16 @@ -4978,8 +5002,8 @@ ) (func $start:std-wasi/process (local $0 i32) - (local $1 i32) - (local $2 i64) + (local $1 i64) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -5089,7 +5113,17 @@ i32.load i32.add local.tee $5 - call $~lib/rt/tlsf/__alloc + local.set $6 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $6 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add local.tee $6 local.get $4 local.get $6 @@ -5113,12 +5147,12 @@ local.tee $4 i32.store loop $for-loop|0 - local.get $1 + local.get $2 local.get $3 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.const 2 i32.shl local.get $6 @@ -5134,13 +5168,13 @@ local.tee $7 i32.store offset=4 local.get $4 - local.get $1 + local.get $2 local.get $7 call $~lib/array/Array<~lib/string/String>#__set - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|0 end end @@ -5161,14 +5195,14 @@ call $~lib/console/console.log global.get $~lib/memory/__stack_pointer global.get $std-wasi/process/argv - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.load offset=12 - local.set $1 + local.set $2 loop $for-loop|00 local.get $0 - local.get $1 + local.get $2 i32.lt_s if global.get $~lib/memory/__stack_pointer @@ -5201,7 +5235,7 @@ local.tee $4 i32.store i32.const 0 - local.set $1 + local.set $2 i32.const 0 local.set $0 local.get $3 @@ -5227,11 +5261,11 @@ local.tee $4 i32.store loop $for-loop|01 - local.get $1 + local.get $2 local.get $3 i32.lt_s if - local.get $1 + local.get $2 i32.const 12 i32.mul local.get $5 @@ -5256,10 +5290,10 @@ i32.add local.set $0 end - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|01 end end @@ -5285,14 +5319,14 @@ local.set $0 global.get $~lib/memory/__stack_pointer global.get $std-wasi/process/envKeys - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.load offset=12 - local.set $1 + local.set $2 loop $for-loop|1 local.get $0 - local.get $1 + local.get $2 i32.lt_s if global.get $~lib/memory/__stack_pointer @@ -5376,7 +5410,7 @@ i64.load i64.const 1000000 i64.div_u - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -5389,7 +5423,7 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/number/itoa64 - local.get $2 + local.get $1 i64.eqz if global.get $~lib/memory/__stack_pointer @@ -5401,21 +5435,21 @@ br $__inlined_func$~lib/util/number/itoa64 end i64.const 0 - local.get $2 + local.get $1 i64.sub - local.get $2 - local.get $2 + local.get $1 + local.get $1 i64.const 63 i64.shr_u i32.wrap_i64 - local.tee $1 - select local.tee $2 + select + local.tee $1 i64.const 4294967295 i64.le_u if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.wrap_i64 local.tee $3 local.tee $0 @@ -5464,7 +5498,7 @@ i32.add end end - local.get $1 + local.get $2 i32.add local.tee $4 i32.const 1 @@ -5479,57 +5513,57 @@ call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i64.const 1000000000000000 i64.lt_u if (result i32) - local.get $2 + local.get $1 i64.const 1000000000000 i64.lt_u if (result i32) - local.get $2 + local.get $1 i64.const 100000000000 i64.ge_u i32.const 10 i32.add - local.get $2 + local.get $1 i64.const 10000000000 i64.ge_u i32.add else - local.get $2 + local.get $1 i64.const 100000000000000 i64.ge_u i32.const 13 i32.add - local.get $2 + local.get $1 i64.const 10000000000000 i64.ge_u i32.add end else - local.get $2 + local.get $1 i64.const 100000000000000000 i64.lt_u if (result i32) - local.get $2 + local.get $1 i64.const 10000000000000000 i64.ge_u i32.const 16 i32.add else - local.get $2 + local.get $1 i64.const -8446744073709551616 i64.ge_u i32.const 18 i32.add - local.get $2 + local.get $1 i64.const 1000000000000000000 i64.ge_u i32.add end end - local.get $1 + local.get $2 i32.add local.tee $3 i32.const 1 @@ -5539,11 +5573,11 @@ local.tee $0 i32.store local.get $0 - local.get $2 + local.get $1 local.get $3 call $~lib/util/number/utoa64_dec_lut end - local.get $1 + local.get $2 if local.get $0 i32.const 45 @@ -5582,7 +5616,7 @@ end i32.const 1088 i64.load - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -5595,7 +5629,7 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/number/utoa64 - local.get $2 + local.get $1 i64.eqz if global.get $~lib/memory/__stack_pointer @@ -5606,14 +5640,14 @@ local.set $0 br $__inlined_func$~lib/util/number/utoa64 end - local.get $2 + local.get $1 i64.const 4294967295 i64.le_u if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.wrap_i64 - local.tee $1 + local.tee $2 local.tee $0 i32.const 100000 i32.lt_u @@ -5668,62 +5702,62 @@ local.tee $0 i32.store local.get $0 - local.get $1 + local.get $2 local.get $3 call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i64.const 1000000000000000 i64.lt_u if (result i32) - local.get $2 + local.get $1 i64.const 1000000000000 i64.lt_u if (result i32) - local.get $2 + local.get $1 i64.const 100000000000 i64.ge_u i32.const 10 i32.add - local.get $2 + local.get $1 i64.const 10000000000 i64.ge_u i32.add else - local.get $2 + local.get $1 i64.const 100000000000000 i64.ge_u i32.const 13 i32.add - local.get $2 + local.get $1 i64.const 10000000000000 i64.ge_u i32.add end else - local.get $2 + local.get $1 i64.const 100000000000000000 i64.lt_u if (result i32) - local.get $2 + local.get $1 i64.const 10000000000000000 i64.ge_u i32.const 16 i32.add else - local.get $2 + local.get $1 i64.const -8446744073709551616 i64.ge_u i32.const 18 i32.add - local.get $2 + local.get $1 i64.const 1000000000000000000 i64.ge_u i32.add end end - local.tee $1 + local.tee $2 i32.const 1 i32.shl i32.const 1 @@ -5731,8 +5765,8 @@ local.tee $0 i32.store local.get $0 - local.get $2 local.get $1 + local.get $2 call $~lib/util/number/utoa64_dec_lut end global.get $~lib/memory/__stack_pointer @@ -5762,12 +5796,12 @@ i32.const 20 i32.sub i32.load offset=16 - local.set $1 + local.set $2 i32.const 1088 local.get $0 i32.store i32.const 1092 - local.get $1 + local.get $2 i32.store i32.const 0 i32.const 1088 @@ -6352,7 +6386,7 @@ local.get $1 local.get $1 call $~lib/util/hash/HASH<~lib/string/String> - local.tee $7 + local.tee $8 call $~lib/map/Map<~lib/string/String,~lib/string/String>#find local.tee $3 if @@ -6393,7 +6427,7 @@ i32.const 1 i32.or end - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -6410,14 +6444,14 @@ i32.const 0 i32.store offset=8 local.get $3 - local.get $8 + local.get $7 i32.const 1 i32.add local.tee $3 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $9 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer local.get $3 @@ -6425,7 +6459,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $9 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -6433,13 +6467,13 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $10 + local.tee $5 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $5 + local.set $10 local.get $4 local.set $3 loop $while-continue|0 @@ -6447,14 +6481,14 @@ local.get $10 i32.ne if - local.get $10 + local.get $5 i32.load offset=8 i32.const 1 i32.and i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $5 i32.load local.tee $11 i32.store offset=8 @@ -6462,17 +6496,17 @@ local.get $11 i32.store local.get $3 - local.get $10 + local.get $5 i32.load offset=4 i32.store offset=4 local.get $3 local.get $11 call $~lib/util/hash/HASH<~lib/string/String> - local.get $8 + local.get $7 i32.and i32.const 2 i32.shl - local.get $9 + local.get $6 i32.add local.tee $11 i32.load @@ -6485,25 +6519,25 @@ i32.add local.set $3 end - local.get $10 + local.get $5 i32.const 12 i32.add - local.set $10 + local.set $5 br $while-continue|0 end end local.get $0 - local.get $9 + local.get $6 i32.store - local.get $9 + local.get $6 if local.get $0 - local.get $9 + local.get $6 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $8 + local.get $7 i32.store offset=4 local.get $0 local.get $4 @@ -6516,7 +6550,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 + local.get $9 i32.store offset=12 local.get $0 local.get $0 @@ -6575,7 +6609,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $7 + local.get $8 i32.and i32.const 2 i32.shl diff --git a/tests/compiler/std/array-access.optimized.wat b/tests/compiler/std/array-access.optimized.wat index 93906c50d8..7d641ecfa6 100644 --- a/tests/compiler/std/array-access.optimized.wat +++ b/tests/compiler/std/array-access.optimized.wat @@ -187,11 +187,11 @@ ) (func $export:std/array-access/i32ArrayArrayElementAccess (param $0 i32) (result i32) (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1308 i32.lt_s @@ -252,11 +252,11 @@ ) (func $export:std/array-access/stringArrayPropertyAccess (param $0 i32) (result i32) (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1308 i32.lt_s @@ -308,11 +308,11 @@ ) (func $export:std/array-access/stringArrayMethodCall (param $0 i32) (result i32) (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1308 i32.lt_s @@ -363,11 +363,11 @@ ) (func $export:std/array-access/stringArrayArrayPropertyAccess (param $0 i32) (result i32) (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1308 i32.lt_s @@ -426,11 +426,11 @@ ) (func $export:std/array-access/stringArrayArrayMethodCall (param $0 i32) (result i32) (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1308 i32.lt_s diff --git a/tests/compiler/std/array-literal.optimized.wat b/tests/compiler/std/array-literal.optimized.wat index f8322a4c5f..631deb1a26 100644 --- a/tests/compiler/std/array-literal.optimized.wat +++ b/tests/compiler/std/array-literal.optimized.wat @@ -214,17 +214,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18252 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -238,9 +239,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -250,15 +251,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -1582,8 +1583,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index 6a401febcf..1fa2d5ec37 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -1,12 +1,12 @@ (module (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) (type $i32_i32_i32_=>_i32 (func (param i32 i32 i32) (result i32))) - (type $i32_=>_i32 (func (param i32) (result i32))) (type $i32_i32_i32_i32_=>_i32 (func (param i32 i32 i32 i32) (result i32))) + (type $i32_=>_i32 (func (param i32) (result i32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) + (type $i32_i32_=>_none (func (param i32 i32))) (type $f32_f32_=>_i32 (func (param f32 f32) (result i32))) (type $f64_f64_=>_i32 (func (param f64 f64) (result i32))) - (type $i32_i32_=>_none (func (param i32 i32))) (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32 i32))) (type $i32_i32_i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32 i32 i32))) @@ -822,17 +822,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 32036 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -846,9 +847,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -858,15 +859,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -1922,19 +1923,12 @@ end end ) - (func $~lib/rt/tlsf/__alloc (param $0 i32) (result i32) - (local $1 i32) + (func $~lib/rt/tlsf/allocateBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - call $~lib/rt/tlsf/initialize - end - global.get $~lib/rt/tlsf/ROOT - local.tee $1 local.get $0 + local.get $1 i32.const 1073741820 i32.gt_u if @@ -1945,13 +1939,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $0 + local.get $1 i32.const 19 i32.add i32.const -16 @@ -1961,11 +1955,11 @@ end local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if memory.size - local.tee $0 + local.tee $1 local.get $3 i32.const 536870910 i32.lt_u @@ -1984,9 +1978,9 @@ local.get $3 end i32.const 4 - local.get $1 - i32.load offset=1568 local.get $0 + i32.load offset=1568 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -2001,7 +1995,7 @@ i32.const 16 i32.shr_u local.tee $2 - local.get $0 + local.get $1 local.get $2 i32.gt_s select @@ -2017,18 +2011,18 @@ unreachable end end - local.get $1 local.get $0 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $0 local.get $3 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -2039,7 +2033,7 @@ unreachable end end - local.get $0 + local.get $1 i32.load i32.const -4 i32.and @@ -2053,10 +2047,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $0 + local.get $1 call $~lib/rt/tlsf/removeBlock - local.get $0 + local.get $1 i32.load local.set $4 local.get $3 @@ -2081,7 +2075,7 @@ i32.const 16 i32.ge_u if - local.get $0 + local.get $1 local.get $4 i32.const 2 i32.and @@ -2089,7 +2083,7 @@ i32.or i32.store local.get $3 - local.get $0 + local.get $1 i32.const 4 i32.add i32.add @@ -2100,33 +2094,31 @@ i32.const 1 i32.or i32.store - local.get $1 + local.get $0 local.get $3 call $~lib/rt/tlsf/insertBlock else - local.get $0 + local.get $1 local.get $4 i32.const -2 i32.and i32.store - local.get $0 + local.get $1 i32.const 4 i32.add - local.get $0 + local.get $1 i32.load i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.load i32.const -3 i32.and i32.store end - local.get $0 - i32.const 4 - i32.add + local.get $1 ) (func $~lib/memory/memory.fill (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i64) @@ -2367,13 +2359,13 @@ end global.get $~lib/rt/itcms/total local.tee $2 - local.get $2 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl + local.get $2 i32.add global.set $~lib/rt/itcms/threshold end @@ -2381,9 +2373,15 @@ local.get $0 i32.const 16 i32.add - call $~lib/rt/tlsf/__alloc - i32.const 4 - i32.sub + local.set $2 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $2 + call $~lib/rt/tlsf/allocateBlock local.tee $2 local.get $1 i32.store offset=12 @@ -2395,8 +2393,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -3503,6 +3501,7 @@ (func $~lib/array/ensureCapacity (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (local $4 i32) (local $5 i32) + (local $6 i32) local.get $0 i32.load offset=8 local.tee $5 @@ -3536,9 +3535,9 @@ local.get $2 i32.shl local.set $1 - block $__inlined_func$~lib/rt/itcms/__renew + block $__inlined_func$~lib/rt/itcms/__renew (result i32) local.get $3 - if (result i32) + if local.get $5 i32.const 1 i32.shl @@ -3554,73 +3553,73 @@ local.get $2 i32.lt_u select - else - local.get $1 + local.set $1 end - local.tee $3 + local.get $1 + local.set $3 local.get $4 - local.tee $2 i32.const 20 i32.sub - local.tee $4 + local.tee $6 i32.load i32.const -4 i32.and i32.const 16 i32.sub - i32.le_u + local.get $1 + i32.ge_u if - local.get $4 + local.get $6 local.get $3 i32.store offset=16 - local.get $2 - local.set $1 + local.get $4 br $__inlined_func$~lib/rt/itcms/__renew end local.get $3 - local.get $4 + local.get $6 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $1 - local.get $2 - local.get $3 + local.tee $2 local.get $4 + local.get $3 + local.get $6 i32.load offset=16 - local.tee $4 + local.tee $6 local.get $3 - local.get $4 + local.get $6 i32.lt_u select call $~lib/memory/memory.copy + local.get $2 end - local.get $1 + local.tee $2 local.get $5 i32.add i32.const 0 - local.get $3 + local.get $1 local.get $5 i32.sub call $~lib/memory/memory.fill - local.get $1 local.get $2 + local.get $4 i32.ne if local.get $0 - local.get $1 + local.get $2 i32.store local.get $0 - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 if local.get $0 - local.get $1 + local.get $2 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end end local.get $0 - local.get $3 + local.get $1 i32.store offset=8 end ) @@ -3932,43 +3931,36 @@ i32.store offset=12 local.get $2 ) - (func $~lib/array/Array#reverse (param $0 i32) (result i32) - (local $1 i32) + (func $~lib/util/bytes/REVERSE (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i64) (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) - (local $8 i64) - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=12 - local.tee $5 + (local $7 i64) + local.get $1 i32.const 1 i32.gt_u if - local.get $5 + local.get $1 i32.const 1 i32.shr_u local.set $4 - local.get $5 + local.get $1 i32.const 8 i32.sub - local.set $6 + local.set $5 loop $while-continue|0 local.get $4 - local.get $1 + local.get $2 i32.const 7 i32.add i32.gt_u if - local.get $1 + local.get $0 local.get $2 i32.add - local.tee $7 + local.tee $6 i64.load local.tee $3 i64.const 8 @@ -3981,32 +3973,45 @@ i64.const 8 i64.shl i64.or + local.tee $3 + i64.const 16 + i64.shr_u + i64.const 281470681808895 + i64.and + local.get $3 + i64.const 281470681808895 + i64.and + i64.const 16 + i64.shl + i64.or + i64.const 32 + i64.rotr local.set $3 - local.get $7 - local.get $2 local.get $6 + local.get $0 + local.get $5 i32.add - local.get $1 + local.get $2 i32.sub - local.tee $7 + local.tee $6 i64.load - local.tee $8 + local.tee $7 i64.const 8 i64.shr_u i64.const 71777214294589695 i64.and - local.get $8 + local.get $7 i64.const 71777214294589695 i64.and i64.const 8 i64.shl i64.or - local.tee $8 + local.tee $7 i64.const 16 i64.shr_u i64.const 281470681808895 i64.and - local.get $8 + local.get $7 i64.const 281470681808895 i64.and i64.const 16 @@ -4015,64 +4020,51 @@ i64.const 32 i64.rotr i64.store - local.get $7 - local.get $3 - i64.const 16 - i64.shr_u - i64.const 281470681808895 - i64.and + local.get $6 local.get $3 - i64.const 281470681808895 - i64.and - i64.const 16 - i64.shl - i64.or - i64.const 32 - i64.rotr i64.store - local.get $1 + local.get $2 i32.const 8 i32.add - local.set $1 + local.set $2 br $while-continue|0 end end - local.get $5 + local.get $1 i32.const 1 i32.sub - local.set $5 + local.set $1 loop $while-continue|1 - local.get $1 + local.get $2 local.get $4 i32.lt_u if - local.get $1 + local.get $0 local.get $2 i32.add - local.tee $6 + local.tee $5 i32.load8_u - local.set $7 - local.get $6 + local.set $6 local.get $5 local.get $1 - i32.sub local.get $2 + i32.sub + local.get $0 i32.add - local.tee $6 + local.tee $5 i32.load8_u i32.store8 + local.get $5 local.get $6 - local.get $7 i32.store8 - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|1 end end end - local.get $0 ) (func $~lib/array/Array#reverse (param $0 i32) (result i32) (local $1 i32) @@ -5080,11 +5072,11 @@ (local $9 f32) (local $10 f32) (local $11 f32) - (local $12 i64) + (local $12 i32) (local $13 i32) (local $14 i32) (local $15 i32) - (local $16 i32) + (local $16 i64) local.get $1 i32.const 48 i32.le_s @@ -5200,52 +5192,72 @@ local.get $1 i32.clz i32.sub - local.tee $6 + local.tee $7 i32.const 2 i32.shl - local.tee $5 + local.tee $6 i32.const 1 i32.shl - call $~lib/rt/tlsf/__alloc - local.tee $15 + local.set $5 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT local.get $5 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.tee $13 + local.get $6 i32.add local.set $14 i32.const 0 - local.set $7 + local.set $6 loop $for-loop|1 local.get $6 local.get $7 - i32.gt_u + i32.lt_u if - local.get $7 + local.get $6 i32.const 2 i32.shl - local.get $15 + local.get $13 i32.add i32.const -1 i32.store - local.get $7 + local.get $6 i32.const 1 i32.add - local.set $7 + local.set $6 br $for-loop|1 end end local.get $1 i32.const 2 i32.shl - call $~lib/rt/tlsf/__alloc - local.set $13 + local.set $5 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $5 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.set $15 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $16 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $6 + local.tee $7 i32.const 1 i32.add local.tee $1 @@ -5254,31 +5266,31 @@ if local.get $0 i32.const 0 - local.get $16 + local.get $12 i32.const 31 - local.get $16 + local.get $12 i32.const 31 i32.lt_s select - local.tee $6 + local.tee $7 local.get $1 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $6 - local.get $16 + local.get $7 + local.get $12 i32.lt_s if local.get $0 - local.get $6 + local.get $7 i32.const 1 i32.add local.tee $5 - local.get $16 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $7 + local.tee $6 local.get $5 i32.sub i32.const 1 @@ -5289,16 +5301,16 @@ if local.get $0 local.get $5 - local.get $16 + local.get $12 local.get $5 i32.const 31 i32.add local.tee $1 local.get $1 - local.get $16 + local.get $12 i32.gt_s select - local.tee $7 + local.tee $6 local.get $8 local.get $2 call $~lib/util/sort/insertionSort @@ -5309,21 +5321,21 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $16 + local.get $12 i32.const 1 i32.add i64.extend_i32_u - local.tee $12 + local.tee $16 i64.div_u local.get $5 - local.get $7 + local.get $6 i32.add i32.const 1 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $16 i64.div_u i64.xor i32.wrap_i64 @@ -5337,7 +5349,7 @@ local.get $4 i32.const 2 i32.shl - local.get $15 + local.get $13 i32.add i32.load local.tee $8 @@ -5355,12 +5367,12 @@ i32.load i32.const 1 i32.add - local.get $6 - local.get $13 + local.get $7 + local.get $15 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $15 + local.get $13 i32.add i32.const -1 i32.store @@ -5374,7 +5386,7 @@ br $for-loop|3 end end - local.get $15 + local.get $13 local.get $1 i32.const 2 i32.shl @@ -5385,12 +5397,12 @@ local.get $4 local.get $14 i32.add - local.get $6 + local.get $7 i32.store local.get $5 local.set $3 - local.get $7 - local.set $6 + local.get $6 + local.set $7 local.get $1 local.set $4 br $while-continue|2 @@ -5402,7 +5414,7 @@ local.get $4 i32.const 2 i32.shl - local.get $15 + local.get $13 i32.add i32.load local.tee $1 @@ -5419,8 +5431,8 @@ i32.load i32.const 1 i32.add - local.get $16 - local.get $13 + local.get $12 + local.get $15 local.get $2 call $~lib/util/sort/mergeRuns end @@ -5431,10 +5443,10 @@ br $for-loop|4 end end - local.get $13 - call $~lib/rt/tlsf/__free local.get $15 call $~lib/rt/tlsf/__free + local.get $13 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 f32) (param $1 f32) (result i32) (local $2 i32) @@ -5966,11 +5978,11 @@ (local $9 f64) (local $10 f64) (local $11 f64) - (local $12 i64) + (local $12 i32) (local $13 i32) (local $14 i32) (local $15 i32) - (local $16 i32) + (local $16 i64) local.get $1 i32.const 48 i32.le_s @@ -6086,52 +6098,72 @@ local.get $1 i32.clz i32.sub - local.tee $6 + local.tee $7 i32.const 2 i32.shl - local.tee $5 + local.tee $6 i32.const 1 i32.shl - call $~lib/rt/tlsf/__alloc - local.tee $15 + local.set $5 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT local.get $5 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.tee $13 + local.get $6 i32.add local.set $14 i32.const 0 - local.set $7 + local.set $6 loop $for-loop|1 local.get $6 local.get $7 - i32.gt_u + i32.lt_u if - local.get $7 + local.get $6 i32.const 2 i32.shl - local.get $15 + local.get $13 i32.add i32.const -1 i32.store - local.get $7 + local.get $6 i32.const 1 i32.add - local.set $7 + local.set $6 br $for-loop|1 end end local.get $1 i32.const 3 i32.shl - call $~lib/rt/tlsf/__alloc - local.set $13 + local.set $5 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $5 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.set $15 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $16 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $6 + local.tee $7 i32.const 1 i32.add local.tee $1 @@ -6140,31 +6172,31 @@ if local.get $0 i32.const 0 - local.get $16 + local.get $12 i32.const 31 - local.get $16 + local.get $12 i32.const 31 i32.lt_s select - local.tee $6 + local.tee $7 local.get $1 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $6 - local.get $16 + local.get $7 + local.get $12 i32.lt_s if local.get $0 - local.get $6 + local.get $7 i32.const 1 i32.add local.tee $5 - local.get $16 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $7 + local.tee $6 local.get $5 i32.sub i32.const 1 @@ -6175,16 +6207,16 @@ if local.get $0 local.get $5 - local.get $16 + local.get $12 local.get $5 i32.const 31 i32.add local.tee $1 local.get $1 - local.get $16 + local.get $12 i32.gt_s select - local.tee $7 + local.tee $6 local.get $8 local.get $2 call $~lib/util/sort/insertionSort @@ -6195,21 +6227,21 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $16 + local.get $12 i32.const 1 i32.add i64.extend_i32_u - local.tee $12 + local.tee $16 i64.div_u local.get $5 - local.get $7 + local.get $6 i32.add i32.const 1 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $16 i64.div_u i64.xor i32.wrap_i64 @@ -6223,7 +6255,7 @@ local.get $4 i32.const 2 i32.shl - local.get $15 + local.get $13 i32.add i32.load local.tee $8 @@ -6241,12 +6273,12 @@ i32.load i32.const 1 i32.add - local.get $6 - local.get $13 + local.get $7 + local.get $15 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $15 + local.get $13 i32.add i32.const -1 i32.store @@ -6260,7 +6292,7 @@ br $for-loop|3 end end - local.get $15 + local.get $13 local.get $1 i32.const 2 i32.shl @@ -6271,12 +6303,12 @@ local.get $4 local.get $14 i32.add - local.get $6 + local.get $7 i32.store local.get $5 local.set $3 - local.get $7 - local.set $6 + local.get $6 + local.set $7 local.get $1 local.set $4 br $while-continue|2 @@ -6288,7 +6320,7 @@ local.get $4 i32.const 2 i32.shl - local.get $15 + local.get $13 i32.add i32.load local.tee $1 @@ -6305,8 +6337,8 @@ i32.load i32.const 1 i32.add - local.get $16 - local.get $13 + local.get $12 + local.get $15 local.get $2 call $~lib/util/sort/mergeRuns end @@ -6317,10 +6349,10 @@ br $for-loop|4 end end - local.get $13 - call $~lib/rt/tlsf/__free local.get $15 call $~lib/rt/tlsf/__free + local.get $13 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 f64) (param $1 f64) (result i32) (local $2 i64) @@ -6801,11 +6833,11 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) + (local $12 i64) (local $13 i32) local.get $1 i32.const 48 @@ -6928,8 +6960,18 @@ local.tee $5 i32.const 1 i32.shl - call $~lib/rt/tlsf/__alloc - local.tee $11 + local.set $7 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $7 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.tee $9 local.get $5 i32.add local.set $10 @@ -6943,7 +6985,7 @@ local.get $5 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -6957,14 +6999,24 @@ local.get $1 i32.const 2 i32.shl - call $~lib/rt/tlsf/__alloc - local.set $9 + local.set $5 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $5 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $12 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -6976,9 +7028,9 @@ if local.get $0 i32.const 0 - local.get $12 + local.get $8 i32.const 31 - local.get $12 + local.get $8 i32.const 31 i32.lt_s select @@ -6989,7 +7041,7 @@ end loop $while-continue|2 local.get $1 - local.get $12 + local.get $8 i32.lt_s if local.get $0 @@ -6997,7 +7049,7 @@ i32.const 1 i32.add local.tee $6 - local.get $12 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -7011,13 +7063,13 @@ if local.get $0 local.get $6 - local.get $12 + local.get $8 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $12 + local.get $8 i32.gt_s select local.tee $5 @@ -7031,11 +7083,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $8 + local.tee $12 i64.div_u local.get $5 local.get $6 @@ -7045,7 +7097,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $12 i64.div_u i64.xor i32.wrap_i64 @@ -7059,7 +7111,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $13 @@ -7078,11 +7130,11 @@ i32.const 1 i32.add local.get $1 - local.get $9 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -7096,7 +7148,7 @@ br $for-loop|3 end end - local.get $11 + local.get $9 local.get $7 i32.const 2 i32.shl @@ -7124,7 +7176,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $1 @@ -7141,8 +7193,8 @@ i32.load i32.const 1 i32.add - local.get $12 - local.get $9 + local.get $8 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end @@ -7153,10 +7205,10 @@ br $for-loop|4 end end - local.get $9 - call $~lib/rt/tlsf/__free local.get $11 call $~lib/rt/tlsf/__free + local.get $9 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -7592,11 +7644,11 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) + (local $12 i64) (local $13 i32) local.get $1 i32.const 48 @@ -7719,8 +7771,18 @@ local.tee $5 i32.const 1 i32.shl - call $~lib/rt/tlsf/__alloc - local.tee $11 + local.set $7 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $7 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.tee $9 local.get $5 i32.add local.set $10 @@ -7734,7 +7796,7 @@ local.get $5 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -7748,14 +7810,24 @@ local.get $1 i32.const 2 i32.shl - call $~lib/rt/tlsf/__alloc - local.set $9 + local.set $5 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $5 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $12 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -7767,9 +7839,9 @@ if local.get $0 i32.const 0 - local.get $12 + local.get $8 i32.const 31 - local.get $12 + local.get $8 i32.const 31 i32.lt_s select @@ -7780,7 +7852,7 @@ end loop $while-continue|2 local.get $1 - local.get $12 + local.get $8 i32.lt_s if local.get $0 @@ -7788,7 +7860,7 @@ i32.const 1 i32.add local.tee $6 - local.get $12 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -7802,13 +7874,13 @@ if local.get $0 local.get $6 - local.get $12 + local.get $8 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $12 + local.get $8 i32.gt_s select local.tee $5 @@ -7822,11 +7894,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $8 + local.tee $12 i64.div_u local.get $5 local.get $6 @@ -7836,7 +7908,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $12 i64.div_u i64.xor i32.wrap_i64 @@ -7850,7 +7922,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $13 @@ -7869,11 +7941,11 @@ i32.const 1 i32.add local.get $1 - local.get $9 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -7887,7 +7959,7 @@ br $for-loop|3 end end - local.get $11 + local.get $9 local.get $7 i32.const 2 i32.shl @@ -7915,7 +7987,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $1 @@ -7932,8 +8004,8 @@ i32.load i32.const 1 i32.add - local.get $12 - local.get $9 + local.get $8 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end @@ -7944,10 +8016,10 @@ br $for-loop|4 end end - local.get $9 - call $~lib/rt/tlsf/__free local.get $11 call $~lib/rt/tlsf/__free + local.get $9 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -8284,28 +8356,28 @@ i32.le_s if global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $8 local.get $6 i32.const 2 i32.shl local.get $4 i32.add i32.load - local.tee $8 + local.tee $7 i32.store - local.get $7 + local.get $8 local.get $2 i32.const 2 i32.shl local.get $4 i32.add i32.load - local.tee $7 + local.tee $8 i32.store offset=4 i32.const 2 global.set $~argumentsLength - local.get $8 local.get $7 + local.get $8 local.get $5 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -8317,7 +8389,7 @@ i32.shl local.get $0 i32.add - local.get $8 + local.get $7 i32.store local.get $6 i32.const 1 @@ -8329,7 +8401,7 @@ i32.shl local.get $0 i32.add - local.get $7 + local.get $8 i32.store local.get $2 i32.const 1 @@ -8355,10 +8427,10 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i64) + (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) + (local $12 i64) (local $13 i32) global.get $~lib/memory/__stack_pointer i32.const 12 @@ -8376,10 +8448,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $5 i64.const 0 i64.store - local.get $4 + local.get $5 i32.const 0 i32.store offset=8 block $folding-inner0 @@ -8514,71 +8586,91 @@ local.tee $6 i32.const 2 i32.shl - local.tee $4 + local.tee $5 i32.const 1 i32.shl - call $~lib/rt/tlsf/__alloc - local.tee $12 - local.get $4 + local.set $7 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $7 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 i32.add - local.set $11 + local.tee $9 + local.get $5 + i32.add + local.set $10 i32.const 0 - local.set $4 + local.set $5 loop $for-loop|1 - local.get $4 + local.get $5 local.get $6 i32.lt_u if - local.get $4 + local.get $5 i32.const 2 i32.shl - local.get $12 + local.get $9 i32.add i32.const -1 i32.store - local.get $4 + local.get $5 i32.const 1 i32.add - local.set $4 + local.set $5 br $for-loop|1 end end local.get $1 i32.const 2 i32.shl - call $~lib/rt/tlsf/__alloc - local.set $10 + local.set $5 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $5 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $13 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 i32.const 1 i32.add - local.tee $4 + local.tee $5 i32.const 32 i32.lt_s if local.get $0 i32.const 0 - local.get $13 + local.get $8 i32.const 31 - local.get $13 + local.get $8 i32.const 31 i32.lt_s select local.tee $1 - local.get $4 + local.get $5 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 local.get $1 - local.get $13 + local.get $8 i32.lt_s if local.get $0 @@ -8586,10 +8678,10 @@ i32.const 1 i32.add local.tee $6 - local.get $13 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $4 + local.tee $5 local.get $6 i32.sub i32.const 1 @@ -8600,16 +8692,16 @@ if local.get $0 local.get $6 - local.get $13 + local.get $8 local.get $6 i32.const 31 i32.add - local.tee $4 - local.get $4 - local.get $13 + local.tee $5 + local.get $5 + local.get $8 i32.gt_s select - local.tee $4 + local.tee $5 local.get $7 local.get $2 call $~lib/util/sort/insertionSort @@ -8620,13 +8712,13 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $13 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $9 + local.tee $12 i64.div_u - local.get $4 + local.get $5 local.get $6 i32.add i32.const 1 @@ -8634,31 +8726,31 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $9 + local.get $12 i64.div_u i64.xor i32.wrap_i64 i32.clz local.set $7 loop $for-loop|3 - local.get $5 + local.get $4 local.get $7 i32.gt_u if - local.get $5 + local.get $4 i32.const 2 i32.shl - local.get $12 + local.get $9 i32.add i32.load - local.tee $8 + local.tee $13 i32.const -1 i32.ne if local.get $0 - local.get $8 - local.get $11 - local.get $5 + local.get $13 + local.get $10 + local.get $4 i32.const 2 i32.shl local.tee $3 @@ -8667,53 +8759,53 @@ i32.const 1 i32.add local.get $1 - local.get $10 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $12 + local.get $9 i32.add i32.const -1 i32.store - local.get $8 + local.get $13 local.set $3 end - local.get $5 + local.get $4 i32.const 1 i32.sub - local.set $5 + local.set $4 br $for-loop|3 end end - local.get $12 + local.get $9 local.get $7 i32.const 2 i32.shl - local.tee $5 + local.tee $4 i32.add local.get $3 i32.store - local.get $5 - local.get $11 + local.get $4 + local.get $10 i32.add local.get $1 i32.store local.get $6 local.set $3 - local.get $4 + local.get $5 local.set $1 local.get $7 - local.set $5 + local.set $4 br $while-continue|2 end end loop $for-loop|4 - local.get $5 + local.get $4 if - local.get $5 + local.get $4 i32.const 2 i32.shl - local.get $12 + local.get $9 i32.add i32.load local.tee $1 @@ -8722,29 +8814,29 @@ if local.get $0 local.get $1 - local.get $5 + local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $10 i32.add i32.load i32.const 1 i32.add - local.get $13 - local.get $10 + local.get $8 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end - local.get $5 + local.get $4 i32.const 1 i32.sub - local.set $5 + local.set $4 br $for-loop|4 end end - local.get $10 + local.get $11 call $~lib/rt/tlsf/__free - local.get $12 + local.get $9 call $~lib/rt/tlsf/__free global.get $~lib/memory/__stack_pointer i32.const 12 @@ -9064,25 +9156,25 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 15652 - i32.lt_s - if - i32.const 32064 - i32.const 32112 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/string/String#concat + block $__inlined_func$~lib/string/String#concat (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 15652 + i32.lt_s + if + i32.const 32064 + i32.const 32112 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store local.get $0 i32.const 20 i32.sub @@ -9091,7 +9183,7 @@ i32.shr_u i32.const 1 i32.shl - local.tee $3 + local.tee $2 local.get $1 i32.const 20 i32.sub @@ -9100,9 +9192,9 @@ i32.shr_u i32.const 1 i32.shl - local.tee $4 + local.tee $3 i32.add - local.tee $2 + local.tee $4 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -9110,31 +9202,30 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $2 br $__inlined_func$~lib/string/String#concat end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $4 i32.store - local.get $2 + local.get $4 local.get $0 - local.get $3 + local.get $2 call $~lib/memory/memory.copy local.get $2 - local.get $3 + local.get $4 i32.add local.get $1 - local.get $4 + local.get $3 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $4 end - local.get $2 ) (func $~lib/util/number/utoa32_dec_lut (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -9334,35 +9425,35 @@ (local $5 i32) (local $6 i32) (local $7 i32) - local.get $0 - i32.load offset=4 - local.set $6 - local.get $0 - i32.load offset=12 - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 15652 - i32.lt_s - if - i32.const 32064 - i32.const 32112 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/string/joinIntegerArray + block $__inlined_func$~lib/util/string/joinIntegerArray (result i32) + local.get $0 + i32.load offset=4 + local.set $4 local.get $0 + i32.load offset=12 + i32.const 0 + local.set $0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 15652 + i32.lt_s + if + i32.const 32064 + i32.const 32112 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store i32.const 1 i32.sub - local.tee $7 + local.tee $3 i32.const 0 i32.lt_s if @@ -9371,16 +9462,14 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $0 br $__inlined_func$~lib/util/string/joinIntegerArray end - local.get $7 + local.get $3 i32.eqz if - local.get $6 + local.get $4 i32.load call $~lib/util/number/itoa32 - local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add @@ -9388,7 +9477,7 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $3 local.get $1 i32.const 20 i32.sub @@ -9401,79 +9490,78 @@ i32.mul i32.const 11 i32.add - local.tee $3 + local.tee $6 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $7 i32.store loop $for-loop|0 - local.get $4 - local.get $7 + local.get $2 + local.get $3 i32.lt_s if - local.get $2 + local.get $0 i32.const 1 i32.shl - local.get $0 + local.get $7 i32.add - local.get $4 + local.get $2 i32.const 2 i32.shl - local.get $6 + local.get $4 i32.add i32.load call $~lib/util/number/itoa_buffered - local.get $2 + local.get $0 i32.add - local.set $2 + local.set $0 local.get $5 if - local.get $2 + local.get $0 i32.const 1 i32.shl - local.get $0 + local.get $7 i32.add local.get $1 local.get $5 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $2 + local.get $0 local.get $5 i32.add - local.set $2 + local.set $0 end - local.get $4 + local.get $2 i32.const 1 i32.add - local.set $4 + local.set $2 br $for-loop|0 end end - local.get $3 - local.get $2 + local.get $6 + local.get $0 i32.const 1 i32.shl - local.get $0 - i32.add local.get $7 + i32.add + local.get $3 i32.const 2 i32.shl - local.get $6 + local.get $4 i32.add i32.load call $~lib/util/number/itoa_buffered - local.get $2 + local.get $0 i32.add - local.tee $1 + local.tee $0 i32.gt_s if + local.get $7 local.get $0 - local.get $1 call $~lib/string/String#substring - local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add @@ -9484,8 +9572,8 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $7 end - local.get $0 ) (func $~lib/util/number/itoa_buffered (param $0 i32) (param $1 i32) (result i32) local.get $1 @@ -9559,35 +9647,35 @@ (local $5 i32) (local $6 i32) (local $7 i32) - local.get $0 - i32.load offset=4 - local.set $6 - local.get $0 - i32.load offset=12 - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 15652 - i32.lt_s - if - i32.const 32064 - i32.const 32112 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/string/joinIntegerArray + block $__inlined_func$~lib/util/string/joinIntegerArray (result i32) local.get $0 + i32.load offset=4 + local.set $4 + local.get $0 + i32.load offset=12 + i32.const 0 + local.set $0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 15652 + i32.lt_s + if + i32.const 32064 + i32.const 32112 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store i32.const 1 i32.sub - local.tee $7 + local.tee $3 i32.const 0 i32.lt_s if @@ -9596,16 +9684,14 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $0 br $__inlined_func$~lib/util/string/joinIntegerArray end - local.get $7 + local.get $3 i32.eqz if - local.get $6 + local.get $4 i32.load call $~lib/util/number/utoa32 - local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add @@ -9613,7 +9699,7 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $3 local.get $1 i32.const 20 i32.sub @@ -9626,79 +9712,78 @@ i32.mul i32.const 10 i32.add - local.tee $3 + local.tee $6 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $7 i32.store loop $for-loop|0 - local.get $4 - local.get $7 + local.get $2 + local.get $3 i32.lt_s if - local.get $2 + local.get $0 i32.const 1 i32.shl - local.get $0 + local.get $7 i32.add - local.get $4 + local.get $2 i32.const 2 i32.shl - local.get $6 + local.get $4 i32.add i32.load call $~lib/util/number/itoa_buffered - local.get $2 + local.get $0 i32.add - local.set $2 + local.set $0 local.get $5 if - local.get $2 + local.get $0 i32.const 1 i32.shl - local.get $0 + local.get $7 i32.add local.get $1 local.get $5 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $2 + local.get $0 local.get $5 i32.add - local.set $2 + local.set $0 end - local.get $4 + local.get $2 i32.const 1 i32.add - local.set $4 + local.set $2 br $for-loop|0 end end - local.get $3 - local.get $2 + local.get $6 + local.get $0 i32.const 1 i32.shl - local.get $0 - i32.add local.get $7 + i32.add + local.get $3 i32.const 2 i32.shl - local.get $6 + local.get $4 i32.add i32.load call $~lib/util/number/itoa_buffered - local.get $2 + local.get $0 i32.add - local.tee $1 + local.tee $0 i32.gt_s if + local.get $7 local.get $0 - local.get $1 call $~lib/string/String#substring - local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add @@ -9709,84 +9794,83 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $7 end - local.get $0 ) (func $~lib/util/number/genDigits (param $0 i32) (param $1 i64) (param $2 i64) (param $3 i32) (param $4 i64) (param $5 i32) (result i32) (local $6 i32) (local $7 i64) (local $8 i32) (local $9 i32) - (local $10 i64) - (local $11 i32) + (local $10 i32) + (local $11 i64) (local $12 i64) (local $13 i64) local.get $2 local.get $1 i64.sub - local.set $10 + local.set $12 local.get $2 i64.const 1 i32.const 0 local.get $3 i32.sub - local.tee $11 + local.tee $10 i64.extend_i32_s local.tee $1 i64.shl - local.tee $12 + local.tee $13 i64.const 1 i64.sub - local.tee $13 + local.tee $11 i64.and local.set $7 local.get $2 local.get $1 i64.shr_u i32.wrap_i64 + local.tee $3 local.tee $6 - local.set $3 - local.get $6 i32.const 100000 i32.lt_u if (result i32) - local.get $3 + local.get $6 i32.const 100 i32.lt_u if (result i32) - local.get $3 + local.get $6 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $3 + local.get $6 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $3 + local.get $6 i32.const 1000 i32.ge_u i32.add end else - local.get $3 + local.get $6 i32.const 10000000 i32.lt_u if (result i32) - local.get $3 + local.get $6 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $3 + local.get $6 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $3 + local.get $6 i32.const 100000000 i32.ge_u i32.add @@ -9815,107 +9899,107 @@ i32.sub br_table $case9|1 $case8|1 $case7|1 $case6|1 $case5|1 $case4|1 $case3|1 $case2|1 $case1|1 $case0|1 $case10|1 end - local.get $6 + local.get $3 i32.const 1000000000 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 1000000000 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 + local.get $3 i32.const 100000000 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 100000000 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 + local.get $3 i32.const 10000000 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 10000000 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 + local.get $3 i32.const 1000000 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 1000000 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 + local.get $3 i32.const 100000 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 100000 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 + local.get $3 i32.const 10000 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 10000 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 + local.get $3 i32.const 1000 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 1000 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 + local.get $3 i32.const 100 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 100 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 + local.get $3 i32.const 10 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 10 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 - local.set $3 - i32.const 0 + local.get $3 local.set $6 + i32.const 0 + local.set $3 br $break|1 end i32.const 0 - local.set $3 + local.set $6 end - local.get $3 local.get $5 + local.get $6 i32.or if local.get $5 @@ -9928,7 +10012,7 @@ i32.shl local.get $0 i32.add - local.get $3 + local.get $6 i32.const 65535 i32.and i32.const 48 @@ -9939,16 +10023,16 @@ i32.const 1 i32.sub local.set $9 + local.get $4 local.get $7 - local.get $6 + local.get $3 i64.extend_i32_u - local.get $11 + local.get $10 i64.extend_i32_s i64.shl i64.add local.tee $1 - local.get $4 - i64.le_u + i64.ge_u if local.get $9 global.get $~lib/util/number/_K @@ -9960,7 +10044,7 @@ i32.const 12832 i32.add i64.load32_u - local.get $11 + local.get $10 i64.extend_i32_s i64.shl local.set $2 @@ -9973,10 +10057,10 @@ i32.add local.tee $0 i32.load16_u - local.set $3 + local.set $6 loop $while-continue|3 local.get $1 - local.get $10 + local.get $12 i64.lt_u local.get $2 local.get $4 @@ -9985,28 +10069,28 @@ i64.le_u i32.and if (result i32) - local.get $10 + local.get $12 local.get $1 i64.sub local.get $1 local.get $2 i64.add local.tee $7 - local.get $10 + local.get $12 i64.sub i64.gt_u local.get $7 - local.get $10 + local.get $12 i64.lt_u i32.or else i32.const 0 end if - local.get $3 + local.get $6 i32.const 1 i32.sub - local.set $3 + local.set $6 local.get $1 local.get $2 i64.add @@ -10015,7 +10099,7 @@ end end local.get $0 - local.get $3 + local.get $6 i32.store16 local.get $5 return @@ -10023,7 +10107,7 @@ br $while-continue|0 end end - loop $while-continue|4 + loop $while-continue|4 (result i32) local.get $4 i64.const 10 i64.mul @@ -10032,7 +10116,7 @@ i64.const 10 i64.mul local.tee $1 - local.get $11 + local.get $10 i64.extend_i32_s i64.shr_u local.tee $2 @@ -10064,90 +10148,88 @@ i32.const 1 i32.sub local.set $9 - local.get $4 local.get $1 - local.get $13 + local.get $11 i64.and local.tee $7 - i64.le_u + local.get $4 + i64.ge_u br_if $while-continue|4 - end - local.get $9 - global.get $~lib/util/number/_K - i32.add - global.set $~lib/util/number/_K - local.get $7 - local.set $1 - i32.const 0 - local.get $9 - i32.sub - i32.const 2 - i32.shl - i32.const 12832 - i32.add - i64.load32_u - local.get $10 - i64.mul - local.set $2 - local.get $5 - i32.const 1 - i32.sub - i32.const 1 - i32.shl - local.get $0 - i32.add - local.tee $0 - i32.load16_u - local.set $3 - loop $while-continue|6 - local.get $1 - local.get $2 - i64.lt_u + local.get $9 + global.get $~lib/util/number/_K + i32.add + global.set $~lib/util/number/_K + local.get $7 + local.set $1 + i32.const 0 + local.get $9 + i32.sub + i32.const 2 + i32.shl + i32.const 12832 + i32.add + i64.load32_u local.get $12 - local.get $4 - local.get $1 - i64.sub - i64.le_u - i32.and - if (result i32) - local.get $2 - local.get $1 - i64.sub + i64.mul + local.set $2 + local.get $5 + i32.const 1 + i32.sub + i32.const 1 + i32.shl + local.get $0 + i32.add + local.tee $0 + i32.load16_u + local.set $6 + loop $while-continue|6 local.get $1 - local.get $12 - i64.add - local.tee $7 - local.get $2 - i64.sub - i64.gt_u local.get $2 - local.get $7 - i64.gt_u - i32.or - else - i32.const 0 - end - if - local.get $3 - i32.const 1 - i32.sub - local.set $3 + i64.lt_u + local.get $13 + local.get $4 local.get $1 - local.get $12 - i64.add - local.set $1 - br $while-continue|6 + i64.sub + i64.le_u + i32.and + if (result i32) + local.get $2 + local.get $1 + i64.sub + local.get $1 + local.get $13 + i64.add + local.tee $7 + local.get $2 + i64.sub + i64.gt_u + local.get $2 + local.get $7 + i64.gt_u + i32.or + else + i32.const 0 + end + if + local.get $6 + i32.const 1 + i32.sub + local.set $6 + local.get $1 + local.get $13 + i64.add + local.set $1 + br $while-continue|6 + end end + local.get $0 + local.get $6 + i32.store16 + local.get $5 end - local.get $0 - local.get $3 - i32.store16 - local.get $5 ) (func $~lib/util/number/prettify (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) - (local $4 i32) - (local $5 i32) local.get $2 i32.eqz if @@ -10291,82 +10373,80 @@ i32.const 101 i32.store16 offset=2 local.get $0 + local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $1 + local.tee $0 i32.const 0 i32.lt_s - local.tee $3 + local.tee $2 if i32.const 0 - local.get $1 + local.get $0 i32.sub - local.set $1 + local.set $0 end - local.get $1 - local.tee $4 + local.get $0 + local.get $0 i32.const 100000 i32.lt_u if (result i32) - local.get $4 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $4 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $4 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $4 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $4 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $4 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $4 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $4 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $4 - local.get $1 - local.get $4 i32.const 1 i32.add - local.tee $1 + local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $1 i32.const 45 i32.const 43 - local.get $3 + local.get $2 select i32.store16 offset=4 - local.get $1 + local.get $0 i32.const 2 i32.add else @@ -10389,87 +10469,84 @@ local.get $0 local.get $2 i32.add - local.tee $0 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $0 + local.get $2 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $2 + local.tee $0 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $2 + local.get $0 i32.sub - local.set $2 + local.set $0 end - local.get $2 - local.tee $5 + local.get $0 + local.get $0 i32.const 100000 i32.lt_u if (result i32) - local.get $5 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $5 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $5 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $5 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $5 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $5 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $5 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $5 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $5 - local.get $2 - local.get $5 i32.const 1 i32.add - local.tee $2 + local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $2 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 + local.get $0 local.get $1 - local.get $2 i32.add i32.const 2 i32.add @@ -10831,35 +10908,33 @@ call $~lib/util/number/dtoa_core ) (func $~lib/array/Array#join (param $0 i32) (result i32) - (local $1 i32) - (local $2 f64) + (local $1 f64) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - local.get $0 - i32.load offset=4 - local.set $4 - local.get $0 - i32.load offset=12 - local.set $1 - i32.const 0 - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner1 - global.get $~lib/memory/__stack_pointer - i32.const 15652 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/string/joinFloatArray - local.get $1 + block $__inlined_func$~lib/util/string/joinFloatArray (result i32) + local.get $0 + i32.load offset=4 + local.set $6 + local.get $0 + i32.load offset=12 + i32.const 0 + local.set $0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 15652 + i32.lt_s + br_if $folding-inner1 + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store i32.const 1 i32.sub local.tee $3 @@ -10871,29 +10946,28 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $0 br $__inlined_func$~lib/util/string/joinFloatArray end block $folding-inner0 local.get $3 i32.eqz if - local.get $4 - f64.load - local.set $2 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 15652 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/number/dtoa - local.get $2 + block $__inlined_func$~lib/util/number/dtoa (result i32) + local.get $6 + f64.load + local.set $1 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 15652 + i32.lt_s + br_if $folding-inner1 + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store + local.get $1 f64.const 0 f64.eq if @@ -10902,17 +10976,16 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 11760 - local.set $0 br $__inlined_func$~lib/util/number/dtoa end - local.get $2 - local.get $2 + local.get $1 + local.get $1 f64.sub f64.const 0 f64.ne if - local.get $2 - local.get $2 + local.get $1 + local.get $1 f64.ne if global.get $~lib/memory/__stack_pointer @@ -10920,7 +10993,6 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 11792 - local.set $0 br $__inlined_func$~lib/util/number/dtoa end global.get $~lib/memory/__stack_pointer @@ -10929,34 +11001,35 @@ global.set $~lib/memory/__stack_pointer i32.const 11824 i32.const 11872 - local.get $2 + local.get $1 f64.const 0 f64.lt select - local.set $0 br $__inlined_func$~lib/util/number/dtoa end i32.const 11904 - local.get $2 + local.get $1 call $~lib/util/number/dtoa_core i32.const 1 i32.shl - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 i32.const 11904 - local.get $1 + local.get $0 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 end + local.set $0 br $folding-inner0 end global.get $~lib/memory/__stack_pointer @@ -10965,73 +11038,73 @@ i32.load i32.const 1 i32.shr_u - local.tee $5 + local.tee $4 i32.const 28 i32.add i32.mul i32.const 28 i32.add - local.tee $7 + local.tee $5 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $7 i32.store loop $for-loop|0 + local.get $2 local.get $3 - local.get $6 - i32.gt_s + i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $7 i32.add - local.get $6 + local.get $2 i32.const 3 i32.shl - local.get $4 + local.get $6 i32.add f64.load call $~lib/util/number/dtoa_buffered local.get $0 i32.add local.set $0 - local.get $5 + local.get $4 if local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $7 i32.add i32.const 11728 - local.get $5 + local.get $4 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $5 + local.get $4 i32.add local.set $0 end - local.get $6 + local.get $2 i32.const 1 i32.add - local.set $6 + local.set $2 br $for-loop|0 end end - local.get $7 + local.get $5 local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $7 i32.add local.get $3 i32.const 3 i32.shl - local.get $4 + local.get $6 i32.add f64.load call $~lib/util/number/dtoa_buffered @@ -11040,7 +11113,7 @@ local.tee $0 i32.gt_s if - local.get $1 + local.get $7 local.get $0 call $~lib/string/String#substring local.set $0 @@ -11050,16 +11123,15 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.set $0 + local.get $7 br $__inlined_func$~lib/util/string/joinFloatArray end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 end - local.get $0 return end i32.const 32064 @@ -11076,37 +11148,37 @@ (local $5 i32) (local $6 i32) (local $7 i32) - local.get $0 - i32.load offset=4 - local.set $4 - local.get $0 - i32.load offset=12 - local.set $5 - i32.const 0 - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 15652 - i32.lt_s - if - i32.const 32064 - i32.const 32112 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $6 - i64.const 0 - i64.store - local.get $6 - i32.const 0 - i32.store offset=8 - block $__inlined_func$~lib/util/string/joinStringArray + block $__inlined_func$~lib/util/string/joinStringArray (result i32) + local.get $0 + i32.load offset=4 + local.set $4 + local.get $0 + i32.load offset=12 + local.set $5 + i32.const 0 + local.set $0 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 15652 + i32.lt_s + if + i32.const 32064 + i32.const 32112 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $6 + i64.const 0 + i64.store + local.get $6 + i32.const 0 + i32.store offset=8 local.get $5 i32.const 1 i32.sub @@ -11119,36 +11191,34 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $0 br $__inlined_func$~lib/util/string/joinStringArray end local.get $6 i32.eqz if global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 local.get $4 i32.load - local.tee $0 + local.tee $1 i32.store local.get $0 - i32.const 9232 - local.get $0 - select - local.set $0 - local.get $1 i32.const 12 i32.add global.set $~lib/memory/__stack_pointer + local.get $1 + i32.const 9232 + local.get $1 + select br $__inlined_func$~lib/util/string/joinStringArray end loop $for-loop|0 - local.get $3 + local.get $0 local.get $5 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.const 2 i32.shl local.get $4 @@ -11164,18 +11234,19 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.get $0 + local.get $2 i32.add - local.set $0 + local.set $2 end - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|0 end end global.get $~lib/memory/__stack_pointer + local.get $2 local.get $6 local.get $1 i32.const 20 @@ -11183,25 +11254,24 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $5 + local.tee $2 i32.mul - local.get $0 i32.add i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $5 i32.store offset=8 i32.const 0 - local.set $3 + local.set $0 loop $for-loop|1 - local.get $3 + local.get $0 local.get $6 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.const 2 i32.shl local.get $4 @@ -11211,10 +11281,10 @@ i32.store offset=4 local.get $7 if - local.get $2 + local.get $3 i32.const 1 i32.shl - local.get $0 + local.get $5 i32.add local.get $7 local.get $7 @@ -11227,32 +11297,32 @@ i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $2 + local.get $3 local.get $7 i32.add - local.set $2 + local.set $3 end - local.get $5 + local.get $2 if - local.get $2 + local.get $3 i32.const 1 i32.shl - local.get $0 + local.get $5 i32.add local.get $1 - local.get $5 + local.get $2 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $2 - local.get $5 + local.get $3 i32.add - local.set $2 + local.set $3 end - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|1 end end @@ -11263,17 +11333,17 @@ local.get $4 i32.add i32.load - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 if - local.get $2 + local.get $3 i32.const 1 i32.shl - local.get $0 + local.get $5 i32.add - local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -11287,8 +11357,8 @@ i32.const 12 i32.add global.set $~lib/memory/__stack_pointer + local.get $5 end - local.get $0 ) (func $~lib/array/Array#join (param $0 i32) (result i32) (local $1 i32) @@ -11296,36 +11366,34 @@ (local $3 i32) (local $4 i32) (local $5 i32) - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=12 - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 15652 - i32.lt_s - if - i32.const 32064 - i32.const 32112 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $2 - i64.const 0 - i64.store - local.get $2 - i32.const 0 - i32.store offset=8 - block $__inlined_func$~lib/util/string/joinReferenceArray + block $__inlined_func$~lib/util/string/joinReferenceArray (result i32) local.get $0 + i32.load offset=4 + local.set $3 + local.get $0 + i32.load offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 15652 + i32.lt_s + if + i32.const 32064 + i32.const 32112 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $2 + i64.const 0 + i64.store + local.get $2 + i32.const 0 + i32.store offset=8 i32.const 1 i32.sub local.tee $4 @@ -11337,7 +11405,6 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $0 br $__inlined_func$~lib/util/string/joinReferenceArray end local.get $4 @@ -11357,7 +11424,6 @@ i32.const 9232 local.get $1 select - local.set $0 br $__inlined_func$~lib/util/string/joinReferenceArray end i32.const 9232 @@ -11426,9 +11492,9 @@ if global.get $~lib/memory/__stack_pointer local.tee $1 + local.get $1 i32.const 13072 i32.store offset=8 - local.get $1 local.get $0 i32.const 13072 call $~lib/string/String.__concat @@ -11439,8 +11505,8 @@ i32.const 12 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 end - local.get $0 ) (func $~lib/util/number/itoa_buffered (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -11528,15 +11594,14 @@ i32.add end end - local.set $3 + local.get $2 + i32.add + local.set $2 local.get $0 local.get $1 local.get $2 - local.get $3 - i32.add - local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $2 ) (func $~lib/util/number/itoa_buffered (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -11773,7 +11838,6 @@ local.get $0 local.get $3 local.get $2 - local.tee $0 call $~lib/util/number/utoa32_dec_lut else local.get $0 @@ -11828,10 +11892,10 @@ i32.add end end - local.tee $0 + local.tee $2 call $~lib/util/number/utoa64_dec_lut end - local.get $0 + local.get $2 ) (func $~lib/array/Array#join (param $0 i32) (result i32) (local $1 i32) @@ -11841,31 +11905,27 @@ (local $5 i32) (local $6 i32) (local $7 i32) - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=12 - local.set $1 - i32.const 0 - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner1 - global.get $~lib/memory/__stack_pointer - i32.const 15652 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/string/joinIntegerArray - local.get $1 + block $__inlined_func$~lib/util/string/joinIntegerArray (result i32) + local.get $0 + i32.load offset=4 + local.set $4 + local.get $0 + i32.load offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 15652 + i32.lt_s + br_if $folding-inner1 + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store i32.const 1 i32.sub - local.tee $7 + local.tee $0 i32.const 0 i32.lt_s if @@ -11874,28 +11934,27 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $0 br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $7 + local.get $0 i32.eqz if - local.get $3 - i64.load - local.set $2 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 15652 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/number/utoa64 + block $__inlined_func$~lib/util/number/utoa64 (result i32) + local.get $4 + i64.load + local.set $2 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 15652 + i32.lt_s + br_if $folding-inner1 + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store local.get $2 i64.eqz if @@ -11904,7 +11963,6 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9824 - local.set $0 br $__inlined_func$~lib/util/number/utoa64 end local.get $2 @@ -11914,63 +11972,63 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.wrap_i64 - local.tee $1 local.tee $0 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.tee $3 + local.tee $1 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store + local.get $3 local.get $0 local.get $1 - local.get $3 call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer @@ -12024,32 +12082,34 @@ i32.add end end - local.tee $1 + local.tee $0 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 local.get $2 - local.get $1 + local.get $0 call $~lib/util/number/utoa64_dec_lut end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $3 end + local.set $0 br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.const 9516 i32.load i32.const 1 i32.shr_u - local.tee $4 + local.tee $5 i32.const 20 i32.add i32.mul @@ -12060,71 +12120,71 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $7 i32.store loop $for-loop|0 - local.get $5 - local.get $7 - i32.lt_s + local.get $0 + local.get $3 + i32.gt_s if - local.get $0 + local.get $1 i32.const 1 i32.shl - local.get $1 + local.get $7 i32.add - local.get $5 + local.get $3 i32.const 3 i32.shl - local.get $3 + local.get $4 i32.add i64.load call $~lib/util/number/itoa_buffered - local.get $0 + local.get $1 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $5 if - local.get $0 + local.get $1 i32.const 1 i32.shl - local.get $1 + local.get $7 i32.add i32.const 9520 - local.get $4 + local.get $5 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $0 - local.get $4 + local.get $1 + local.get $5 i32.add - local.set $0 + local.set $1 end - local.get $5 + local.get $3 i32.const 1 i32.add - local.set $5 + local.set $3 br $for-loop|0 end end local.get $6 - local.get $0 + local.get $1 i32.const 1 i32.shl - local.get $1 - i32.add local.get $7 + i32.add + local.get $0 i32.const 3 i32.shl - local.get $3 + local.get $4 i32.add i64.load call $~lib/util/number/itoa_buffered - local.get $0 + local.get $1 i32.add local.tee $0 i32.gt_s if - local.get $1 + local.get $7 local.get $0 call $~lib/string/String#substring local.set $0 @@ -12134,16 +12194,15 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.set $0 + local.get $7 br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 end - local.get $0 return end i32.const 32064 @@ -12160,7 +12219,7 @@ local.get $1 i64.const 0 i64.lt_s - local.tee $2 + local.tee $4 if local.get $0 i32.const 45 @@ -12174,7 +12233,7 @@ i64.const 10 i64.lt_u if - local.get $2 + local.get $4 i32.const 1 i32.shl local.get $0 @@ -12183,7 +12242,7 @@ i64.const 48 i64.or i64.store16 - local.get $2 + local.get $4 i32.const 1 i32.add return @@ -12195,59 +12254,58 @@ local.get $1 i32.wrap_i64 local.tee $3 - local.tee $4 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $4 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $4 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $4 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $4 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $4 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $4 + local.get $4 + i32.add + local.set $2 local.get $0 local.get $3 local.get $2 - local.get $4 - i32.add - local.tee $0 call $~lib/util/number/utoa32_dec_lut else local.get $0 @@ -12302,572 +12360,228 @@ i32.add end end - local.get $2 + local.get $4 i32.add - local.tee $0 + local.tee $2 call $~lib/util/number/utoa64_dec_lut end + local.get $2 + ) + (func $~lib/util/number/itoa_buffered (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + i32.const 255 + i32.and + i32.const 10 + i32.lt_u + if + local.get $0 + local.get $1 + i32.const 255 + i32.and + i32.const 48 + i32.or + i32.store16 + i32.const 1 + return + end + local.get $1 + i32.const 255 + i32.and + local.tee $1 + local.tee $2 + i32.const 100000 + i32.lt_u + if (result i32) + local.get $2 + i32.const 100 + i32.lt_u + if (result i32) + local.get $2 + i32.const 10 + i32.ge_u + i32.const 1 + i32.add + else + local.get $2 + i32.const 10000 + i32.ge_u + i32.const 3 + i32.add + local.get $2 + i32.const 1000 + i32.ge_u + i32.add + end + else + local.get $2 + i32.const 10000000 + i32.lt_u + if (result i32) + local.get $2 + i32.const 1000000 + i32.ge_u + i32.const 6 + i32.add + else + local.get $2 + i32.const 1000000000 + i32.ge_u + i32.const 8 + i32.add + local.get $2 + i32.const 100000000 + i32.ge_u + i32.add + end + end + local.set $2 local.get $0 + local.get $1 + local.get $2 + call $~lib/util/number/utoa32_dec_lut + local.get $2 ) - (func $~lib/array/Array#join (param $0 i32) (result i32) - (local $1 i32) - (local $2 i64) + (func $~lib/array/Array#join (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - local.get $0 - i32.load offset=4 - local.set $5 - local.get $0 - i32.load offset=12 - local.set $1 - i32.const 0 - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $__inlined_func$~lib/util/string/joinIntegerArray (result i32) + local.get $0 + i32.load offset=4 + local.set $4 + local.get $0 + i32.load offset=12 + i32.const 0 + local.set $0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s - br_if $folding-inner1 + if + i32.const 32064 + i32.const 32112 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $__inlined_func$~lib/util/string/joinIntegerArray - local.get $1 - i32.const 1 - i32.sub - local.tee $4 - i32.const 0 + i32.const 1 + i32.sub + local.tee $3 + i32.const 0 + i32.lt_s + if + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + i32.const 9232 + br $__inlined_func$~lib/util/string/joinIntegerArray + end + local.get $3 + i32.eqz + if + local.get $4 + i32.load8_u + call $~lib/util/number/utoa32 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + br $__inlined_func$~lib/util/string/joinIntegerArray + end + global.get $~lib/memory/__stack_pointer + local.get $3 + local.get $1 + i32.const 20 + i32.sub + i32.load offset=16 + i32.const 1 + i32.shr_u + local.tee $5 + i32.const 10 + i32.add + i32.mul + i32.const 10 + i32.add + local.tee $6 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $7 + i32.store + loop $for-loop|0 + local.get $2 + local.get $3 i32.lt_s if - global.get $~lib/memory/__stack_pointer - i32.const 4 + local.get $0 + i32.const 1 + i32.shl + local.get $7 i32.add - global.set $~lib/memory/__stack_pointer - i32.const 9232 - local.set $0 - br $__inlined_func$~lib/util/string/joinIntegerArray - end - block $folding-inner0 + local.get $2 local.get $4 - i32.eqz + i32.add + i32.load8_u + call $~lib/util/number/itoa_buffered + local.get $0 + i32.add + local.set $0 + local.get $5 if - local.get $5 - i64.load - i64.extend32_s - local.set $2 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 15652 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/number/itoa64 - local.get $2 - i64.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - i32.const 9824 - local.set $0 - br $__inlined_func$~lib/util/number/itoa64 - end - i64.const 0 - local.get $2 - i64.sub - local.get $2 - local.get $2 - i64.const 63 - i64.shr_u - i32.wrap_i64 - local.tee $1 - select - local.tee $2 - i64.const 4294967295 - i64.le_u - if - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.wrap_i64 - local.tee $3 - local.tee $0 - i32.const 100000 - i32.lt_u - if (result i32) - local.get $0 - i32.const 100 - i32.lt_u - if (result i32) - local.get $0 - i32.const 10 - i32.ge_u - i32.const 1 - i32.add - else - local.get $0 - i32.const 10000 - i32.ge_u - i32.const 3 - i32.add - local.get $0 - i32.const 1000 - i32.ge_u - i32.add - end - else - local.get $0 - i32.const 10000000 - i32.lt_u - if (result i32) - local.get $0 - i32.const 1000000 - i32.ge_u - i32.const 6 - i32.add - else - local.get $0 - i32.const 1000000000 - i32.ge_u - i32.const 8 - i32.add - local.get $0 - i32.const 100000000 - i32.ge_u - i32.add - end - end - local.get $1 - i32.add - local.tee $4 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store - local.get $0 - local.get $3 - local.get $4 - call $~lib/util/number/utoa32_dec_lut - else - global.get $~lib/memory/__stack_pointer - local.get $2 - i64.const 1000000000000000 - i64.lt_u - if (result i32) - local.get $2 - i64.const 1000000000000 - i64.lt_u - if (result i32) - local.get $2 - i64.const 100000000000 - i64.ge_u - i32.const 10 - i32.add - local.get $2 - i64.const 10000000000 - i64.ge_u - i32.add - else - local.get $2 - i64.const 100000000000000 - i64.ge_u - i32.const 13 - i32.add - local.get $2 - i64.const 10000000000000 - i64.ge_u - i32.add - end - else - local.get $2 - i64.const 100000000000000000 - i64.lt_u - if (result i32) - local.get $2 - i64.const 10000000000000000 - i64.ge_u - i32.const 16 - i32.add - else - local.get $2 - i64.const -8446744073709551616 - i64.ge_u - i32.const 18 - i32.add - local.get $2 - i64.const 1000000000000000000 - i64.ge_u - i32.add - end - end - local.get $1 - i32.add - local.tee $3 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store - local.get $0 - local.get $2 - local.get $3 - call $~lib/util/number/utoa64_dec_lut - end - local.get $1 - if - local.get $0 - i32.const 45 - i32.store16 - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - end - br $folding-inner0 - end - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.const 9516 - i32.load - i32.const 1 - i32.shr_u - local.tee $6 - i32.const 21 - i32.add - i32.mul - i32.const 21 - i32.add - local.tee $7 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $1 - i32.store - loop $for-loop|0 - local.get $3 - local.get $4 - i32.lt_s - if - local.get $0 - i32.const 1 - i32.shl - local.get $1 - i32.add - local.get $3 - i32.const 3 - i32.shl - local.get $5 - i32.add - i64.load - call $~lib/util/number/itoa_buffered - local.get $0 - i32.add - local.set $0 - local.get $6 - if - local.get $0 - i32.const 1 - i32.shl - local.get $1 - i32.add - i32.const 9520 - local.get $6 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $0 - local.get $6 - i32.add - local.set $0 - end - local.get $3 - i32.const 1 - i32.add - local.set $3 - br $for-loop|0 - end - end - local.get $7 - local.get $0 - i32.const 1 - i32.shl - local.get $1 - i32.add - local.get $4 - i32.const 3 - i32.shl - local.get $5 - i32.add - i64.load - call $~lib/util/number/itoa_buffered - local.get $0 - i32.add - local.tee $0 - i32.gt_s - if - local.get $1 - local.get $0 - call $~lib/string/String#substring - local.set $0 - br $folding-inner0 - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $1 - local.set $0 - br $__inlined_func$~lib/util/string/joinIntegerArray - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - end - local.get $0 - return - end - i32.const 32064 - i32.const 32112 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - ) - (func $~lib/util/number/itoa_buffered (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - i32.const 255 - i32.and - i32.const 10 - i32.lt_u - if - local.get $0 - local.get $1 - i32.const 255 - i32.and - i32.const 48 - i32.or - i32.store16 - i32.const 1 - return - end - local.get $1 - i32.const 255 - i32.and - local.tee $1 - local.tee $2 - i32.const 100000 - i32.lt_u - if (result i32) - local.get $2 - i32.const 100 - i32.lt_u - if (result i32) - local.get $2 - i32.const 10 - i32.ge_u - i32.const 1 - i32.add - else - local.get $2 - i32.const 10000 - i32.ge_u - i32.const 3 - i32.add - local.get $2 - i32.const 1000 - i32.ge_u - i32.add - end - else - local.get $2 - i32.const 10000000 - i32.lt_u - if (result i32) - local.get $2 - i32.const 1000000 - i32.ge_u - i32.const 6 - i32.add - else - local.get $2 - i32.const 1000000000 - i32.ge_u - i32.const 8 - i32.add - local.get $2 - i32.const 100000000 - i32.ge_u - i32.add - end - end - local.set $2 - local.get $0 - local.get $1 - local.get $2 - call $~lib/util/number/utoa32_dec_lut - local.get $2 - ) - (func $~lib/array/Array#join (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - i32.load offset=4 - local.set $6 - local.get $0 - i32.load offset=12 - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 15652 - i32.lt_s - if - i32.const 32064 - i32.const 32112 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/string/joinIntegerArray - local.get $0 - i32.const 1 - i32.sub - local.tee $7 - i32.const 0 - i32.lt_s - if - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - i32.const 9232 - local.set $0 - br $__inlined_func$~lib/util/string/joinIntegerArray - end - local.get $7 - i32.eqz - if - local.get $6 - i32.load8_u - call $~lib/util/number/utoa32 - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray - end - global.get $~lib/memory/__stack_pointer - local.get $7 - local.get $1 - i32.const 20 - i32.sub - i32.load offset=16 - i32.const 1 - i32.shr_u - local.tee $5 - i32.const 10 - i32.add - i32.mul - i32.const 10 - i32.add - local.tee $3 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store - loop $for-loop|0 - local.get $4 - local.get $7 - i32.lt_s - if - local.get $2 - i32.const 1 - i32.shl - local.get $0 - i32.add - local.get $4 - local.get $6 - i32.add - i32.load8_u - call $~lib/util/number/itoa_buffered - local.get $2 - i32.add - local.set $2 - local.get $5 - if - local.get $2 - i32.const 1 - i32.shl - local.get $0 - i32.add - local.get $1 + local.get $0 + i32.const 1 + i32.shl + local.get $7 + i32.add + local.get $1 local.get $5 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $2 + local.get $0 local.get $5 i32.add - local.set $2 + local.set $0 end - local.get $4 + local.get $2 i32.const 1 i32.add - local.set $4 + local.set $2 br $for-loop|0 end end - local.get $3 - local.get $2 + local.get $6 + local.get $0 i32.const 1 i32.shl - local.get $0 - i32.add - local.get $6 local.get $7 i32.add + local.get $3 + local.get $4 + i32.add i32.load8_u call $~lib/util/number/itoa_buffered - local.get $2 + local.get $0 i32.add - local.tee $1 + local.tee $0 i32.gt_s if + local.get $7 local.get $0 - local.get $1 call $~lib/string/String#substring - local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add @@ -12878,8 +12592,8 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $7 end - local.get $0 ) (func $start:std/array~anonymous|53 (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 @@ -13324,11 +13038,11 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) + (local $12 i64) (local $13 i32) local.get $1 i32.const 48 @@ -13451,8 +13165,18 @@ local.tee $5 i32.const 1 i32.shl - call $~lib/rt/tlsf/__alloc - local.tee $11 + local.set $7 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $7 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.tee $9 local.get $5 i32.add local.set $10 @@ -13466,7 +13190,7 @@ local.get $5 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -13477,15 +13201,23 @@ br $for-loop|1 end end + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT local.get $1 - call $~lib/rt/tlsf/__alloc - local.set $9 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $12 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -13497,9 +13229,9 @@ if local.get $0 i32.const 0 - local.get $12 + local.get $8 i32.const 31 - local.get $12 + local.get $8 i32.const 31 i32.lt_s select @@ -13510,7 +13242,7 @@ end loop $while-continue|2 local.get $1 - local.get $12 + local.get $8 i32.lt_s if local.get $0 @@ -13518,7 +13250,7 @@ i32.const 1 i32.add local.tee $6 - local.get $12 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -13532,13 +13264,13 @@ if local.get $0 local.get $6 - local.get $12 + local.get $8 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $12 + local.get $8 i32.gt_s select local.tee $5 @@ -13552,11 +13284,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $8 + local.tee $12 i64.div_u local.get $5 local.get $6 @@ -13566,7 +13298,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $12 i64.div_u i64.xor i32.wrap_i64 @@ -13580,7 +13312,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $13 @@ -13599,11 +13331,11 @@ i32.const 1 i32.add local.get $1 - local.get $9 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -13617,7 +13349,7 @@ br $for-loop|3 end end - local.get $11 + local.get $9 local.get $7 i32.const 2 i32.shl @@ -13645,7 +13377,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $1 @@ -13662,8 +13394,8 @@ i32.load i32.const 1 i32.add - local.get $12 - local.get $9 + local.get $8 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end @@ -13674,10 +13406,10 @@ br $for-loop|4 end end - local.get $9 - call $~lib/rt/tlsf/__free local.get $11 call $~lib/rt/tlsf/__free + local.get $9 + call $~lib/rt/tlsf/__free ) (func $~lib/array/Array<~lib/string/String>#push (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -14046,25 +13778,25 @@ i32.gt_s if (result i32) global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $5 local.get $4 i32.const 2 i32.shl local.get $0 i32.add - local.tee $7 + local.tee $6 i32.load offset=4 - local.tee $5 + local.tee $7 i32.store + local.get $5 local.get $6 - local.get $7 i32.load - local.tee $6 + local.tee $5 i32.store offset=4 i32.const 2 global.set $~argumentsLength + local.get $7 local.get $5 - local.get $6 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -14170,16 +13902,232 @@ global.set $~lib/memory/__stack_pointer local.get $4 ) + (func $std/array/assertStableSortedForComplexObjects + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 24 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 15652 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $1 + i64.const 0 + i64.store + local.get $1 + i64.const 0 + i64.store offset=8 + local.get $1 + i64.const 0 + i64.store offset=16 + local.get $1 + local.tee $0 + global.get $std/array/inputStabArr + local.tee $2 + i32.store offset=8 + local.get $1 + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 15652 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $1 + i32.const 0 + i32.store + i32.const 0 + local.get $2 + i32.load offset=12 + local.tee $4 + local.get $4 + i32.const 0 + i32.gt_s + select + local.set $5 + local.get $1 + local.get $4 + local.get $5 + i32.sub + local.tee $1 + i32.const 0 + local.get $1 + i32.const 0 + i32.gt_s + select + local.tee $4 + i32.const 2 + i32.const 20 + i32.const 0 + call $~lib/rt/__newArray + local.tee $1 + i32.store + local.get $1 + i32.load offset=4 + local.set $6 + local.get $2 + i32.load offset=4 + local.get $5 + i32.const 2 + i32.shl + i32.add + local.set $5 + i32.const 0 + local.set $2 + local.get $4 + i32.const 2 + i32.shl + local.set $4 + loop $while-continue|0 + local.get $2 + local.get $4 + i32.lt_u + if + local.get $2 + local.get $6 + i32.add + local.get $2 + local.get $5 + i32.add + i32.load + local.tee $7 + i32.store + local.get $7 + if + local.get $1 + local.get $7 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $2 + i32.const 4 + i32.add + local.set $2 + br $while-continue|0 + end + end + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.tee $2 + local.get $1 + i32.store + local.get $2 + i32.const 8880 + i32.store offset=4 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load offset=12 + i32.const 8880 + call $~lib/util/sort/SORT + local.get $0 + local.get $1 + i32.store offset=12 + i32.const 1 + local.set $0 + global.get $~lib/memory/__stack_pointer + global.get $std/array/inputStabArr + local.tee $2 + i32.store + local.get $2 + i32.load offset=12 + local.set $2 + loop $for-loop|0 + local.get $2 + local.get $3 + i32.gt_s + if + block $for-break0 + global.get $~lib/memory/__stack_pointer + local.get $1 + local.get $3 + call $~lib/array/Array#__get + local.tee $4 + i32.store offset=16 + global.get $~lib/memory/__stack_pointer + global.get $std/array/outputStabArr + local.tee $5 + i32.store + global.get $~lib/memory/__stack_pointer + local.get $5 + local.get $3 + call $~lib/array/Array#__get + local.tee $5 + i32.store offset=20 + local.get $4 + i32.load + local.get $5 + i32.load + i32.ne + if (result i32) + i32.const 1 + else + local.get $4 + i32.load offset=4 + local.get $5 + i32.load offset=4 + i32.ne + end + if + i32.const 0 + local.set $0 + br $for-break0 + end + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $for-loop|0 + end + end + end + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1552 + i32.const 1042 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 24 + i32.add + global.set $~lib/memory/__stack_pointer + return + end + i32.const 32064 + i32.const 32112 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + ) (func $std/array/assertSorted<~lib/array/Array> (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -14422,11 +14370,11 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -14438,29 +14386,27 @@ local.get $2 i32.const 9520 i32.store - local.get $0 - i32.load offset=4 - local.set $4 - local.get $0 - i32.load offset=12 - local.set $0 - local.get $2 - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 15652 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $2 - i64.const 0 - i64.store - local.get $2 - i32.const 0 - i32.store offset=8 - block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> + block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> (result i32) local.get $0 + i32.load offset=4 + local.set $4 + local.get $0 + i32.load offset=12 + local.get $2 + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 15652 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $2 + i64.const 0 + i64.store + local.get $2 + i32.const 0 + i32.store offset=8 i32.const 1 i32.sub local.tee $5 @@ -14472,7 +14418,6 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $0 br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> end local.get $5 @@ -14490,7 +14435,6 @@ else i32.const 9232 end - local.set $0 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add @@ -14580,12 +14524,12 @@ i32.const 12 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 return end i32.const 32064 @@ -14602,12 +14546,13 @@ (local $3 i32) (local $4 f32) (local $5 f64) - (local $6 i32) + (local $6 i64) (local $7 i32) (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) + (local $12 i32) global.get $~lib/memory/__stack_pointer i32.const 172 i32.sub @@ -14741,7 +14686,7 @@ i32.const 12 i32.const 5 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -14755,23 +14700,23 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - local.get $0 + local.get $1 i32.eqz if global.get $~lib/memory/__stack_pointer i32.const 12 i32.const 2 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store end - local.get $0 + local.get $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 global.get $~lib/memory/__stack_pointer @@ -14784,40 +14729,39 @@ i32.const 0 i32.const 1 call $~lib/memory/memory.fill - local.get $0 + local.get $1 local.get $2 i32.store local.get $2 if - local.get $0 + local.get $1 local.get $2 - i32.const 0 - call $byn-split-outlined-A$~lib/rt/itcms/__link + call $byn-split-outlined-A$~lib/rt/itcms/__link_0 end - local.get $0 + local.get $1 local.get $2 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store + local.tee $0 local.get $1 + i32.store + local.get $0 i32.const 1664 i32.store - local.get $1 + local.get $0 global.get $std/array/arr local.tee $0 i32.store @@ -14980,43 +14924,43 @@ i32.const 7 i32.const 1888 call $~lib/rt/__newArray - local.tee $3 + local.tee $0 i32.store offset=12 - local.get $3 + local.get $0 i32.load offset=4 - local.set $0 + local.set $1 i32.const 1 - local.get $3 + local.get $0 i32.load offset=12 - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.const 1 i32.gt_s select - local.set $1 + local.set $2 i32.const 3 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.const 3 i32.gt_s select - local.set $2 + local.set $3 loop $for-loop|0 - local.get $1 local.get $2 + local.get $3 i32.lt_s if - local.get $1 + local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.const 1 i32.store - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|0 end end @@ -15025,12 +14969,12 @@ i32.const 7 i32.const 1936 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $3 local.get $0 + local.get $1 call $std/array/isArraysEqual i32.eqz if @@ -15041,27 +14985,27 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 i32.load offset=4 - local.set $0 + local.set $1 i32.const 0 - local.get $3 + local.get $0 i32.load offset=12 - local.tee $1 - local.get $1 + local.tee $3 + local.get $3 i32.const 0 i32.gt_s select local.set $2 - loop $for-loop|04 - local.get $1 + loop $for-loop|01 local.get $2 - i32.gt_s + local.get $3 + i32.lt_s if local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.const 0 i32.store @@ -15069,7 +15013,7 @@ i32.const 1 i32.add local.set $2 - br $for-loop|04 + br $for-loop|01 end end i32.const 5 @@ -15077,12 +15021,12 @@ i32.const 7 i32.const 1984 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $3 local.get $0 + local.get $1 call $std/array/isArraysEqual i32.eqz if @@ -15093,45 +15037,45 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 i32.load offset=4 local.set $1 i32.const 0 - local.get $3 + local.get $0 i32.load offset=12 - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.const 0 i32.gt_s select - local.set $0 - local.get $2 + local.set $2 + local.get $3 i32.const 3 i32.sub - local.tee $2 + local.tee $3 i32.const 0 - local.get $2 + local.get $3 i32.const 0 i32.gt_s select - local.set $2 - loop $for-loop|06 - local.get $0 + local.set $3 + loop $for-loop|03 local.get $2 + local.get $3 i32.lt_s if - local.get $0 + local.get $2 i32.const 2 i32.shl local.get $1 i32.add i32.const 1 i32.store - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 - br $for-loop|06 + local.set $2 + br $for-loop|03 end end i32.const 5 @@ -15139,12 +15083,12 @@ i32.const 7 i32.const 2032 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $3 local.get $0 + local.get $1 call $std/array/isArraysEqual i32.eqz if @@ -15155,12 +15099,12 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 i32.load offset=4 - local.set $0 - local.get $3 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $1 + local.tee $3 i32.const 2 i32.sub local.tee $2 @@ -15170,15 +15114,15 @@ i32.gt_s select local.set $2 - loop $for-loop|08 - local.get $1 + loop $for-loop|05 local.get $2 - i32.gt_s + local.get $3 + i32.lt_s if local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.const 2 i32.store @@ -15186,7 +15130,7 @@ i32.const 1 i32.add local.set $2 - br $for-loop|08 + br $for-loop|05 end end i32.const 5 @@ -15194,12 +15138,12 @@ i32.const 7 i32.const 2080 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $3 local.get $0 + local.get $1 call $std/array/isArraysEqual i32.eqz if @@ -15210,42 +15154,42 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 i32.load offset=4 local.set $1 i32.const 1 - local.get $3 + local.get $0 i32.load offset=12 - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.const 1 i32.gt_s select - local.set $0 + local.set $2 i32.const 0 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.const 0 i32.gt_s select - local.set $2 - loop $for-loop|010 - local.get $0 + local.set $3 + loop $for-loop|07 local.get $2 + local.get $3 i32.lt_s if - local.get $0 + local.get $2 i32.const 2 i32.shl local.get $1 i32.add i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 - br $for-loop|010 + local.set $2 + br $for-loop|07 end end i32.const 5 @@ -15253,12 +15197,12 @@ i32.const 7 i32.const 2128 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $3 local.get $0 + local.get $1 call $std/array/isArraysEqual i32.eqz if @@ -16777,10 +16721,10 @@ local.tee $1 i32.const 2 i32.shl - local.tee $6 + local.tee $7 call $~lib/memory/memory.copy local.get $2 - local.get $6 + local.get $7 i32.add i32.const 0 i32.store @@ -17240,58 +17184,58 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.load offset=4 local.set $2 i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.gt_u if - local.get $1 + local.get $0 i32.const 1 i32.shr_u local.set $3 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 loop $while-continue|0 - local.get $0 + local.get $1 local.get $3 i32.lt_u if - local.get $0 + local.get $1 i32.const 2 i32.shl local.get $2 i32.add - local.tee $6 + local.tee $7 i32.load - local.set $7 - local.get $6 - local.get $1 + local.set $8 + local.get $7 local.get $0 + local.get $1 i32.sub i32.const 2 i32.shl local.get $2 i32.add - local.tee $6 + local.tee $7 i32.load i32.store - local.get $6 local.get $7 + local.get $8 i32.store - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|0 end end @@ -17401,30 +17345,33 @@ i32.const 6 i32.const 3744 call $~lib/rt/__newArray - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store - local.get $1 - call $~lib/array/Array#reverse - local.tee $1 + local.get $2 + i32.load offset=4 + local.get $2 + i32.load offset=12 + call $~lib/util/bytes/REVERSE + local.get $2 i32.store offset=16 i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $2 i32.load offset=12 - local.set $2 - loop $for-loop|011 + local.set $0 + loop $for-loop|08 local.get $0 - local.get $2 - i32.lt_s + local.get $1 + i32.gt_s if + local.get $2 local.get $1 - local.get $0 call $~lib/array/Array#__get - local.get $1 + local.get $2 i32.load offset=12 - local.get $0 + local.get $1 i32.sub i32.const 1 i32.sub @@ -17437,11 +17384,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 - br $for-loop|011 + local.set $1 + br $for-loop|08 end end global.get $~lib/memory/__stack_pointer @@ -17450,30 +17397,33 @@ i32.const 6 i32.const 3776 call $~lib/rt/__newArray - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store - local.get $1 - call $~lib/array/Array#reverse - local.tee $1 + local.get $2 + i32.load offset=4 + local.get $2 + i32.load offset=12 + call $~lib/util/bytes/REVERSE + local.get $2 i32.store offset=4 i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $2 i32.load offset=12 - local.set $2 + local.set $0 loop $for-loop|1 local.get $0 - local.get $2 - i32.lt_s + local.get $1 + i32.gt_s if + local.get $2 local.get $1 - local.get $0 call $~lib/array/Array#__get - local.get $1 + local.get $2 i32.load offset=12 - local.get $0 + local.get $1 i32.sub i32.const 1 i32.sub @@ -17486,10 +17436,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end @@ -17499,30 +17449,33 @@ i32.const 6 i32.const 3808 call $~lib/rt/__newArray - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store - local.get $1 - call $~lib/array/Array#reverse - local.tee $1 + local.get $2 + i32.load offset=4 + local.get $2 + i32.load offset=12 + call $~lib/util/bytes/REVERSE + local.get $2 i32.store offset=12 i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $2 i32.load offset=12 - local.set $2 + local.set $0 loop $for-loop|2 local.get $0 - local.get $2 - i32.lt_s + local.get $1 + i32.gt_s if + local.get $2 local.get $1 - local.get $0 call $~lib/array/Array#__get - local.get $1 + local.get $2 i32.load offset=12 - local.get $0 + local.get $1 i32.sub i32.const 1 i32.sub @@ -17535,10 +17488,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|2 end end @@ -17554,24 +17507,24 @@ i32.store local.get $1 call $~lib/array/Array#reverse - local.tee $1 + local.tee $0 i32.store offset=20 i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 local.set $2 loop $for-loop|3 - local.get $0 + local.get $1 local.get $2 i32.lt_s if - local.get $1 local.get $0 - call $~lib/array/Array#__get local.get $1 - i32.load offset=12 + call $~lib/array/Array#__get local.get $0 + i32.load offset=12 + local.get $1 i32.sub i32.const 1 i32.sub @@ -17584,10 +17537,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|3 end end @@ -17603,24 +17556,24 @@ i32.store local.get $1 call $~lib/array/Array#reverse - local.tee $1 + local.tee $0 i32.store offset=24 i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 local.set $2 loop $for-loop|4 - local.get $0 + local.get $1 local.get $2 i32.lt_s if - local.get $1 local.get $0 - call $~lib/array/Array#__get local.get $1 - i32.load offset=12 + call $~lib/array/Array#__get local.get $0 + i32.load offset=12 + local.get $1 i32.sub i32.const 1 i32.sub @@ -17633,10 +17586,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|4 end end @@ -17652,24 +17605,24 @@ i32.store local.get $1 call $~lib/array/Array#reverse - local.tee $1 + local.tee $0 i32.store offset=28 i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 local.set $2 loop $for-loop|5 - local.get $0 + local.get $1 local.get $2 i32.lt_s if - local.get $1 local.get $0 - call $~lib/array/Array#__get local.get $1 - i32.load offset=12 + call $~lib/array/Array#__get local.get $0 + i32.load offset=12 + local.get $1 i32.sub i32.const 1 i32.sub @@ -17682,45 +17635,44 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|5 end end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store i32.const 0 + local.set $1 + i32.const -1 local.set $0 block $__inlined_func$~lib/array/Array#indexOf - local.get $1 + local.get $2 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 0 i32.le_s i32.const 1 - local.get $2 + local.get $3 select - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/array/Array#indexOf - end - local.get $1 + br_if $__inlined_func$~lib/array/Array#indexOf + local.get $2 i32.load offset=4 - local.set $1 + local.set $2 loop $while-continue|012 - local.get $0 - local.get $2 + local.get $1 + local.get $3 i32.lt_s if - local.get $0 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 44 @@ -17729,7 +17681,7 @@ local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|012 end end @@ -17749,46 +17701,45 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store i32.const 0 + local.set $1 + i32.const -1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf13 - local.get $1 + block $__inlined_func$~lib/array/Array#indexOf39 + local.get $2 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 0 i32.le_s i32.const 1 - local.get $2 + local.get $3 select - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/array/Array#indexOf13 - end - local.get $1 + br_if $__inlined_func$~lib/array/Array#indexOf39 + local.get $2 i32.load offset=4 - local.set $1 - loop $while-continue|014 - local.get $0 - local.get $2 + local.set $2 + loop $while-continue|040 + local.get $1 + local.get $3 i32.lt_s if - local.get $0 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 42 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf13 + br_if $__inlined_func$~lib/array/Array#indexOf39 local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|014 + local.set $1 + br $while-continue|040 end end i32.const -1 @@ -17809,46 +17760,45 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store i32.const 0 + local.set $1 + i32.const -1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf15 - local.get $1 + block $__inlined_func$~lib/array/Array#indexOf41 + local.get $2 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 0 i32.le_s i32.const 1 - local.get $2 + local.get $3 select - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/array/Array#indexOf15 - end - local.get $1 + br_if $__inlined_func$~lib/array/Array#indexOf41 + local.get $2 i32.load offset=4 - local.set $1 - loop $while-continue|016 - local.get $0 - local.get $2 + local.set $2 + loop $while-continue|042 + local.get $1 + local.get $3 i32.lt_s if - local.get $0 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 45 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf15 + br_if $__inlined_func$~lib/array/Array#indexOf41 local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|016 + local.set $1 + br $while-continue|042 end end i32.const -1 @@ -17869,46 +17819,45 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store i32.const 100 + local.set $1 + i32.const -1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf17 - local.get $1 + block $__inlined_func$~lib/array/Array#indexOf43 + local.get $2 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 100 i32.le_s i32.const 1 - local.get $2 + local.get $3 select - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/array/Array#indexOf17 - end - local.get $1 + br_if $__inlined_func$~lib/array/Array#indexOf43 + local.get $2 i32.load offset=4 - local.set $1 - loop $while-continue|018 - local.get $0 - local.get $2 + local.set $2 + loop $while-continue|044 + local.get $1 + local.get $3 i32.lt_s if - local.get $0 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf17 + br_if $__inlined_func$~lib/array/Array#indexOf43 local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|018 + local.set $1 + br $while-continue|044 end end i32.const -1 @@ -17929,10 +17878,12 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - block $__inlined_func$~lib/array/Array#indexOf19 - local.get $1 + i32.const -1 + local.set $1 + block $__inlined_func$~lib/array/Array#indexOf45 + local.get $0 i32.load offset=12 local.tee $2 i32.const -100 @@ -17940,49 +17891,45 @@ i32.const 1 local.get $2 select - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/array/Array#indexOf19 - end + br_if $__inlined_func$~lib/array/Array#indexOf45 local.get $2 i32.const 100 i32.sub - local.tee $0 + local.tee $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 i32.gt_s select - local.set $0 - local.get $1 - i32.load offset=4 local.set $1 - loop $while-continue|020 - local.get $0 + local.get $0 + i32.load offset=4 + local.set $0 + loop $while-continue|046 + local.get $1 local.get $2 i32.lt_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf19 - local.get $0 + br_if $__inlined_func$~lib/array/Array#indexOf45 + local.get $1 i32.const 1 i32.add - local.set $0 - br $while-continue|020 + local.set $1 + br $while-continue|046 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const 1 @@ -17997,10 +17944,12 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - block $__inlined_func$~lib/array/Array#indexOf21 - local.get $1 + i32.const -1 + local.set $1 + block $__inlined_func$~lib/array/Array#indexOf47 + local.get $0 i32.load offset=12 local.tee $2 i32.const -2 @@ -18008,49 +17957,45 @@ i32.const 1 local.get $2 select - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/array/Array#indexOf21 - end + br_if $__inlined_func$~lib/array/Array#indexOf47 local.get $2 i32.const 2 i32.sub - local.tee $0 + local.tee $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 i32.gt_s select - local.set $0 - local.get $1 - i32.load offset=4 local.set $1 - loop $while-continue|022 - local.get $0 + local.get $0 + i32.load offset=4 + local.set $0 + loop $while-continue|048 + local.get $1 local.get $2 i32.lt_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf21 - local.get $0 + br_if $__inlined_func$~lib/array/Array#indexOf47 + local.get $1 i32.const 1 i32.add - local.set $0 - br $while-continue|022 + local.set $1 + br $while-continue|048 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const 3 @@ -18065,10 +18010,12 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - block $__inlined_func$~lib/array/Array#indexOf23 - local.get $1 + i32.const -1 + local.set $1 + block $__inlined_func$~lib/array/Array#indexOf49 + local.get $0 i32.load offset=12 local.tee $2 i32.const -4 @@ -18076,49 +18023,45 @@ i32.const 1 local.get $2 select - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/array/Array#indexOf23 - end + br_if $__inlined_func$~lib/array/Array#indexOf49 local.get $2 i32.const 4 i32.sub - local.tee $0 + local.tee $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 i32.gt_s select - local.set $0 - local.get $1 - i32.load offset=4 local.set $1 - loop $while-continue|024 - local.get $0 + local.get $0 + i32.load offset=4 + local.set $0 + loop $while-continue|050 + local.get $1 local.get $2 i32.lt_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf23 - local.get $0 + br_if $__inlined_func$~lib/array/Array#indexOf49 + local.get $1 i32.const 1 i32.add - local.set $0 - br $while-continue|024 + local.set $1 + br $while-continue|050 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const 1 @@ -18133,46 +18076,45 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store i32.const 0 + local.set $1 + i32.const -1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf25 - local.get $1 + block $__inlined_func$~lib/array/Array#indexOf51 + local.get $2 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 0 i32.le_s i32.const 1 - local.get $2 + local.get $3 select - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/array/Array#indexOf25 - end - local.get $1 + br_if $__inlined_func$~lib/array/Array#indexOf51 + local.get $2 i32.load offset=4 - local.set $1 - loop $while-continue|026 - local.get $0 - local.get $2 + local.set $2 + loop $while-continue|052 + local.get $1 + local.get $3 i32.lt_s if - local.get $0 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf25 + br_if $__inlined_func$~lib/array/Array#indexOf51 local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|026 + local.set $1 + br $while-continue|052 end end i32.const -1 @@ -18193,46 +18135,45 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store i32.const 1 + local.set $1 + i32.const -1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf27 - local.get $1 + block $__inlined_func$~lib/array/Array#indexOf53 + local.get $2 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 1 i32.le_s i32.const 1 - local.get $2 + local.get $3 select - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/array/Array#indexOf27 - end - local.get $1 + br_if $__inlined_func$~lib/array/Array#indexOf53 + local.get $2 i32.load offset=4 - local.set $1 - loop $while-continue|028 - local.get $0 - local.get $2 + local.set $2 + loop $while-continue|054 + local.get $1 + local.get $3 i32.lt_s if - local.get $0 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf27 + br_if $__inlined_func$~lib/array/Array#indexOf53 local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|028 + local.set $1 + br $while-continue|054 end end i32.const -1 @@ -18253,46 +18194,45 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store i32.const 2 + local.set $1 + i32.const -1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf29 - local.get $1 + block $__inlined_func$~lib/array/Array#indexOf55 + local.get $2 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 2 i32.le_s i32.const 1 - local.get $2 + local.get $3 select - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/array/Array#indexOf29 - end - local.get $1 + br_if $__inlined_func$~lib/array/Array#indexOf55 + local.get $2 i32.load offset=4 - local.set $1 - loop $while-continue|030 - local.get $0 - local.get $2 + local.set $2 + loop $while-continue|056 + local.get $1 + local.get $3 i32.lt_s if - local.get $0 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf29 + br_if $__inlined_func$~lib/array/Array#indexOf55 local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|030 + local.set $1 + br $while-continue|056 end end i32.const -1 @@ -18321,9 +18261,9 @@ local.get $2 i32.store i32.const 0 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $__inlined_func$~lib/array/Array#indexOf local.get $2 i32.load offset=12 @@ -18337,13 +18277,13 @@ local.get $2 i32.load offset=4 local.set $2 - loop $while-continue|010 - local.get $0 + loop $while-continue|057 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 2 i32.shl local.get $2 @@ -18352,17 +18292,17 @@ f32.const nan:0x400000 f32.eq br_if $__inlined_func$~lib/array/Array#indexOf - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|010 + local.set $1 + br $while-continue|057 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -18383,9 +18323,9 @@ local.get $2 i32.store i32.const 0 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $__inlined_func$~lib/array/Array#indexOf local.get $2 i32.load offset=12 @@ -18399,13 +18339,13 @@ local.get $2 i32.load offset=4 local.set $2 - loop $while-continue|037 - local.get $0 + loop $while-continue|058 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl local.get $2 @@ -18414,17 +18354,17 @@ f64.const nan:0x8000000000000 f64.eq br_if $__inlined_func$~lib/array/Array#indexOf - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|037 + local.set $1 + br $while-continue|058 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -18441,16 +18381,16 @@ i32.const 3 i32.const 4064 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=24 i32.const 1 global.set $~argumentsLength - local.get $0 + local.get $1 i32.load offset=12 local.tee $2 local.set $3 i32.const -1 - local.set $1 + local.set $0 block $__inlined_func$~lib/array/Array#lastIndexOf local.get $2 i32.eqz @@ -18470,35 +18410,36 @@ i32.const 0 i32.lt_s select - local.set $1 - local.get $0 - i32.load offset=4 local.set $2 - loop $while-continue|00 - local.get $1 + local.get $1 + i32.load offset=4 + local.set $3 + loop $while-continue|09 + local.get $2 i32.const 0 i32.ge_s if - local.get $1 + local.get $2 + local.tee $0 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/array/Array#lastIndexOf - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $while-continue|00 + local.set $2 + br $while-continue|09 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -18511,54 +18452,57 @@ end i32.const 1 global.set $~argumentsLength - local.get $0 + local.get $1 + local.tee $0 i32.load offset=12 - local.tee $2 - local.set $3 + local.set $2 i32.const -1 local.set $1 - block $__inlined_func$~lib/array/Array#lastIndexOf5 - local.get $2 + block $__inlined_func$~lib/array/Array#lastIndexOf14 + local.get $0 + i32.load offset=12 + local.tee $3 i32.eqz - br_if $__inlined_func$~lib/array/Array#lastIndexOf5 + br_if $__inlined_func$~lib/array/Array#lastIndexOf14 local.get $2 local.get $3 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.get $3 + local.get $2 local.get $2 local.get $3 - i32.le_s + i32.ge_s select - local.get $3 + local.get $2 i32.const 0 i32.lt_s select - local.set $1 + local.set $2 local.get $0 i32.load offset=4 - local.set $2 - loop $while-continue|06 - local.get $1 + local.set $3 + loop $while-continue|015 + local.get $2 i32.const 0 i32.ge_s if - local.get $1 + local.get $2 + local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 7 i32.eq - br_if $__inlined_func$~lib/array/Array#lastIndexOf5 + br_if $__inlined_func$~lib/array/Array#lastIndexOf14 local.get $1 i32.const 1 i32.sub - local.set $1 - br $while-continue|06 + local.set $2 + br $while-continue|015 end end i32.const -1 @@ -18575,21 +18519,19 @@ call $~lib/builtins/abort unreachable end - block $__inlined_func$~lib/array/Array#lastIndexOf7 + i32.const -1 + local.set $1 + block $__inlined_func$~lib/array/Array#lastIndexOf16 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.eqz - if - i32.const -1 - local.set $1 - br $__inlined_func$~lib/array/Array#lastIndexOf7 - end - local.get $1 + br_if $__inlined_func$~lib/array/Array#lastIndexOf16 + local.get $2 i32.const 1 i32.sub i32.const 3 - local.get $1 + local.get $2 i32.const 3 i32.le_s select @@ -18597,7 +18539,7 @@ local.get $0 i32.load offset=4 local.set $2 - loop $while-continue|031 + loop $while-continue|059 local.get $1 i32.const 0 i32.ge_s @@ -18610,12 +18552,12 @@ i32.load i32.const 2 i32.eq - br_if $__inlined_func$~lib/array/Array#lastIndexOf7 + br_if $__inlined_func$~lib/array/Array#lastIndexOf16 local.get $1 i32.const 1 i32.sub local.set $1 - br $while-continue|031 + br $while-continue|059 end end i32.const -1 @@ -18632,21 +18574,19 @@ call $~lib/builtins/abort unreachable end - block $__inlined_func$~lib/array/Array#lastIndexOf32 + i32.const -1 + local.set $1 + block $__inlined_func$~lib/array/Array#lastIndexOf60 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.eqz - if - i32.const -1 - local.set $1 - br $__inlined_func$~lib/array/Array#lastIndexOf32 - end - local.get $1 + br_if $__inlined_func$~lib/array/Array#lastIndexOf60 + local.get $2 i32.const 1 i32.sub i32.const 2 - local.get $1 + local.get $2 i32.const 2 i32.le_s select @@ -18654,7 +18594,7 @@ local.get $0 i32.load offset=4 local.set $2 - loop $while-continue|033 + loop $while-continue|061 local.get $1 i32.const 0 i32.ge_s @@ -18667,12 +18607,12 @@ i32.load i32.const 2 i32.eq - br_if $__inlined_func$~lib/array/Array#lastIndexOf32 + br_if $__inlined_func$~lib/array/Array#lastIndexOf60 local.get $1 i32.const 1 i32.sub local.set $1 - br $while-continue|033 + br $while-continue|061 end end i32.const -1 @@ -18687,24 +18627,22 @@ call $~lib/builtins/abort unreachable end - block $__inlined_func$~lib/array/Array#lastIndexOf34 + i32.const -1 + local.set $1 + block $__inlined_func$~lib/array/Array#lastIndexOf62 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.eqz - if - i32.const -1 - local.set $1 - br $__inlined_func$~lib/array/Array#lastIndexOf34 - end - local.get $1 + br_if $__inlined_func$~lib/array/Array#lastIndexOf62 + local.get $2 i32.const 2 i32.sub local.set $1 local.get $0 i32.load offset=4 local.set $2 - loop $while-continue|035 + loop $while-continue|063 local.get $1 i32.const 0 i32.ge_s @@ -18717,12 +18655,12 @@ i32.load i32.const 2 i32.eq - br_if $__inlined_func$~lib/array/Array#lastIndexOf34 + br_if $__inlined_func$~lib/array/Array#lastIndexOf62 local.get $1 i32.const 1 i32.sub local.set $1 - br $while-continue|035 + br $while-continue|063 end end i32.const -1 @@ -18737,49 +18675,46 @@ call $~lib/builtins/abort unreachable end - block $__inlined_func$~lib/array/Array#lastIndexOf36 + i32.const -1 + local.set $1 + block $__inlined_func$~lib/array/Array#lastIndexOf64 local.get $0 - local.tee $1 i32.load offset=12 - local.tee $0 + local.tee $2 i32.eqz - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/array/Array#lastIndexOf36 - end - local.get $0 + br_if $__inlined_func$~lib/array/Array#lastIndexOf64 + local.get $2 i32.const 1 i32.sub - local.set $0 - local.get $1 - i32.load offset=4 local.set $1 - loop $while-continue|038 - local.get $0 + local.get $0 + i32.load offset=4 + local.set $0 + loop $while-continue|065 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add i32.load i32.const 2 i32.eq - br_if $__inlined_func$~lib/array/Array#lastIndexOf36 - local.get $0 + br_if $__inlined_func$~lib/array/Array#lastIndexOf64 + local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|038 + local.set $1 + br $while-continue|065 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -18795,30 +18730,29 @@ local.tee $1 i32.store i32.const 0 + local.set $2 + i32.const -1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf39 + block $__inlined_func$~lib/array/Array#indexOf17 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 0 i32.le_s i32.const 1 - local.get $2 + local.get $3 select - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/array/Array#indexOf39 - end + br_if $__inlined_func$~lib/array/Array#indexOf17 local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|040 - local.get $0 + loop $while-continue|018 local.get $2 + local.get $3 i32.lt_s if - local.get $0 + local.get $2 + local.tee $0 i32.const 2 i32.shl local.get $1 @@ -18826,12 +18760,12 @@ i32.load i32.const 44 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf39 + br_if $__inlined_func$~lib/array/Array#indexOf17 local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|040 + local.set $2 + br $while-continue|018 end end i32.const -1 @@ -18853,30 +18787,29 @@ local.tee $1 i32.store i32.const 0 + local.set $2 + i32.const -1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf41 + block $__inlined_func$~lib/array/Array#indexOf20 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 0 i32.le_s i32.const 1 - local.get $2 + local.get $3 select - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/array/Array#indexOf41 - end + br_if $__inlined_func$~lib/array/Array#indexOf20 local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|042 - local.get $0 + loop $while-continue|021 local.get $2 + local.get $3 i32.lt_s if - local.get $0 + local.get $2 + local.tee $0 i32.const 2 i32.shl local.get $1 @@ -18884,12 +18817,12 @@ i32.load i32.const 42 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf41 + br_if $__inlined_func$~lib/array/Array#indexOf20 local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|042 + local.set $2 + br $while-continue|021 end end i32.const -1 @@ -18911,30 +18844,29 @@ local.tee $1 i32.store i32.const 0 + local.set $2 + i32.const -1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf43 + block $__inlined_func$~lib/array/Array#indexOf23 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 0 i32.le_s i32.const 1 - local.get $2 + local.get $3 select - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/array/Array#indexOf43 - end + br_if $__inlined_func$~lib/array/Array#indexOf23 local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|044 - local.get $0 + loop $while-continue|024 local.get $2 + local.get $3 i32.lt_s if - local.get $0 + local.get $2 + local.tee $0 i32.const 2 i32.shl local.get $1 @@ -18942,12 +18874,12 @@ i32.load i32.const 45 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf43 + br_if $__inlined_func$~lib/array/Array#indexOf23 local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|044 + local.set $2 + br $while-continue|024 end end i32.const -1 @@ -18969,30 +18901,29 @@ local.tee $1 i32.store i32.const 100 + local.set $2 + i32.const -1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf45 + block $__inlined_func$~lib/array/Array#indexOf26 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 100 i32.le_s i32.const 1 - local.get $2 + local.get $3 select - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/array/Array#indexOf45 - end + br_if $__inlined_func$~lib/array/Array#indexOf26 local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|046 - local.get $0 + loop $while-continue|027 local.get $2 + local.get $3 i32.lt_s if - local.get $0 + local.get $2 + local.tee $0 i32.const 2 i32.shl local.get $1 @@ -19000,12 +18931,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf45 + br_if $__inlined_func$~lib/array/Array#indexOf26 local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|046 + local.set $2 + br $while-continue|027 end end i32.const -1 @@ -19026,7 +18957,9 @@ global.get $std/array/arr local.tee $1 i32.store - block $__inlined_func$~lib/array/Array#indexOf47 + i32.const -1 + local.set $0 + block $__inlined_func$~lib/array/Array#indexOf29 local.get $1 i32.load offset=12 local.tee $2 @@ -19035,11 +18968,7 @@ i32.const 1 local.get $2 select - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/array/Array#indexOf47 - end + br_if $__inlined_func$~lib/array/Array#indexOf29 local.get $2 i32.const 100 i32.sub @@ -19053,7 +18982,7 @@ local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|048 + loop $while-continue|030 local.get $0 local.get $2 i32.lt_s @@ -19066,12 +18995,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf47 + br_if $__inlined_func$~lib/array/Array#indexOf29 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|048 + br $while-continue|030 end end i32.const -1 @@ -19092,7 +19021,9 @@ global.get $std/array/arr local.tee $1 i32.store - block $__inlined_func$~lib/array/Array#indexOf49 + i32.const -1 + local.set $0 + block $__inlined_func$~lib/array/Array#indexOf32 local.get $1 i32.load offset=12 local.tee $2 @@ -19101,11 +19032,7 @@ i32.const 1 local.get $2 select - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/array/Array#indexOf49 - end + br_if $__inlined_func$~lib/array/Array#indexOf32 local.get $2 i32.const 2 i32.sub @@ -19119,7 +19046,7 @@ local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|050 + loop $while-continue|033 local.get $0 local.get $2 i32.lt_s @@ -19132,12 +19059,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf49 + br_if $__inlined_func$~lib/array/Array#indexOf32 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|050 + br $while-continue|033 end end i32.const -1 @@ -19158,7 +19085,9 @@ global.get $std/array/arr local.tee $1 i32.store - block $__inlined_func$~lib/array/Array#indexOf51 + i32.const -1 + local.set $0 + block $__inlined_func$~lib/array/Array#indexOf35 local.get $1 i32.load offset=12 local.tee $2 @@ -19167,11 +19096,7 @@ i32.const 1 local.get $2 select - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/array/Array#indexOf51 - end + br_if $__inlined_func$~lib/array/Array#indexOf35 local.get $2 i32.const 4 i32.sub @@ -19185,7 +19110,7 @@ local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|052 + loop $while-continue|036 local.get $0 local.get $2 i32.lt_s @@ -19198,12 +19123,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf51 + br_if $__inlined_func$~lib/array/Array#indexOf35 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|052 + br $while-continue|036 end end i32.const -1 @@ -19225,30 +19150,29 @@ local.tee $1 i32.store i32.const 0 + local.set $2 + i32.const -1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf53 + block $__inlined_func$~lib/array/Array#indexOf38 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 0 i32.le_s i32.const 1 - local.get $2 + local.get $3 select - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/array/Array#indexOf53 - end + br_if $__inlined_func$~lib/array/Array#indexOf38 local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|054 - local.get $0 + loop $while-continue|039 local.get $2 + local.get $3 i32.lt_s if - local.get $0 + local.get $2 + local.tee $0 i32.const 2 i32.shl local.get $1 @@ -19256,12 +19180,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf53 + br_if $__inlined_func$~lib/array/Array#indexOf38 local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|054 + local.set $2 + br $while-continue|039 end end i32.const -1 @@ -19283,30 +19207,29 @@ local.tee $1 i32.store i32.const 1 + local.set $2 + i32.const -1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf55 + block $__inlined_func$~lib/array/Array#indexOf42 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 1 i32.le_s i32.const 1 - local.get $2 + local.get $3 select - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/array/Array#indexOf55 - end + br_if $__inlined_func$~lib/array/Array#indexOf42 local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|056 - local.get $0 + loop $while-continue|043 local.get $2 + local.get $3 i32.lt_s if - local.get $0 + local.get $2 + local.tee $0 i32.const 2 i32.shl local.get $1 @@ -19314,12 +19237,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf55 + br_if $__inlined_func$~lib/array/Array#indexOf42 local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|056 + local.set $2 + br $while-continue|043 end end i32.const -1 @@ -19341,30 +19264,29 @@ local.tee $1 i32.store i32.const 2 + local.set $2 + i32.const -1 local.set $0 - block $__inlined_func$~lib/array/Array#indexOf57 + block $__inlined_func$~lib/array/Array#indexOf46 local.get $1 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 2 i32.le_s i32.const 1 - local.get $2 + local.get $3 select - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/array/Array#indexOf57 - end + br_if $__inlined_func$~lib/array/Array#indexOf46 local.get $1 i32.load offset=4 local.set $1 - loop $while-continue|058 - local.get $0 + loop $while-continue|047 local.get $2 + local.get $3 i32.lt_s if - local.get $0 + local.get $2 + local.tee $0 i32.const 2 i32.shl local.get $1 @@ -19372,12 +19294,12 @@ i32.load i32.const 43 i32.eq - br_if $__inlined_func$~lib/array/Array#indexOf57 + br_if $__inlined_func$~lib/array/Array#indexOf46 local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|058 + local.set $2 + br $while-continue|047 end end i32.const -1 @@ -19399,15 +19321,15 @@ i32.const 10 i32.const 4112 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store block $__inlined_func$~lib/array/Array#includes (result i32) i32.const 0 - local.set $0 + local.set $1 i32.const 0 - local.get $1 + local.get $0 i32.load offset=12 local.tee $2 i32.const 0 @@ -19417,19 +19339,19 @@ select br_if $__inlined_func$~lib/array/Array#includes drop - local.get $1 + local.get $0 i32.load offset=4 - local.set $1 - loop $while-continue|047 - local.get $0 + local.set $0 + loop $while-continue|066 + local.get $1 local.get $2 i32.lt_s if i32.const 1 - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add f32.load local.tee $4 @@ -19441,11 +19363,11 @@ i32.or br_if $__inlined_func$~lib/array/Array#includes drop - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 - br $while-continue|047 + local.set $1 + br $while-continue|066 end end i32.const 0 @@ -19464,15 +19386,15 @@ i32.const 11 i32.const 4144 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store block $__inlined_func$~lib/array/Array#includes (result i32) i32.const 0 - local.set $0 + local.set $1 i32.const 0 - local.get $1 + local.get $0 i32.load offset=12 local.tee $2 i32.const 0 @@ -19482,19 +19404,19 @@ select br_if $__inlined_func$~lib/array/Array#includes drop - local.get $1 + local.get $0 i32.load offset=4 - local.set $1 - loop $while-continue|04859 - local.get $0 + local.set $0 + loop $while-continue|067 + local.get $1 local.get $2 i32.lt_s if i32.const 1 - local.get $0 + local.get $1 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add f64.load local.tee $5 @@ -19506,11 +19428,11 @@ i32.or br_if $__inlined_func$~lib/array/Array#includes drop - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 - br $while-continue|04859 + local.set $1 + br $while-continue|067 end end i32.const 0 @@ -20665,11 +20587,11 @@ i32.const 0 i32.gt_s select - local.set $6 + local.set $7 local.get $2 i32.const 1 local.get $3 - local.get $6 + local.get $7 i32.sub local.tee $2 local.get $2 @@ -20687,37 +20609,37 @@ i32.const 12 i32.const 0 call $~lib/rt/__newArray - local.tee $7 + local.tee $8 i32.store - local.get $7 + local.get $8 i32.load offset=4 local.get $1 i32.load offset=4 - local.tee $8 - local.get $6 + local.tee $9 + local.get $7 i32.const 2 i32.shl i32.add - local.tee $9 + local.tee $10 local.get $2 i32.const 2 i32.shl call $~lib/memory/memory.copy local.get $3 local.get $2 - local.get $6 + local.get $7 i32.add - local.tee $6 + local.tee $7 i32.ne if - local.get $9 - local.get $6 + local.get $10 + local.get $7 i32.const 2 i32.shl - local.get $8 + local.get $9 i32.add local.get $3 - local.get $6 + local.get $7 i32.sub i32.const 2 i32.shl @@ -20732,9 +20654,9 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $8 i32.store offset=4 - local.get $7 + local.get $8 i32.load offset=12 i32.const 1 i32.ne @@ -20747,7 +20669,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $8 i32.const 0 call $~lib/array/Array#__get local.tee $0 @@ -20870,7 +20792,7 @@ i32.load offset=12 local.set $2 block $__inlined_func$~lib/array/Array#findIndex - loop $for-loop|061 + loop $for-loop|075 local.get $2 local.get $1 i32.load offset=12 @@ -20901,7 +20823,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|061 + br $for-loop|075 end end i32.const -1 @@ -20931,8 +20853,8 @@ local.get $1 i32.load offset=12 local.set $2 - block $__inlined_func$~lib/array/Array#findIndex62 - loop $for-loop|063 + block $__inlined_func$~lib/array/Array#findIndex76 + loop $for-loop|077 local.get $2 local.get $1 i32.load offset=12 @@ -20958,12 +20880,12 @@ i32.const 6176 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#findIndex62 + br_if $__inlined_func$~lib/array/Array#findIndex76 local.get $0 i32.const 1 i32.add local.set $0 - br $for-loop|063 + br $for-loop|077 end end i32.const -1 @@ -20995,8 +20917,8 @@ local.get $1 i32.load offset=12 local.set $2 - block $__inlined_func$~lib/array/Array#findIndex64 - loop $for-loop|065 + block $__inlined_func$~lib/array/Array#findIndex78 + loop $for-loop|079 local.get $2 local.get $1 i32.load offset=12 @@ -21022,12 +20944,12 @@ i32.const 6208 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#findIndex64 + br_if $__inlined_func$~lib/array/Array#findIndex78 local.get $0 i32.const 1 i32.add local.set $0 - br $for-loop|065 + br $for-loop|079 end end i32.const -1 @@ -21059,8 +20981,8 @@ local.get $1 i32.load offset=12 local.set $2 - block $__inlined_func$~lib/array/Array#findIndex66 - loop $for-loop|067 + block $__inlined_func$~lib/array/Array#findIndex80 + loop $for-loop|081 local.get $2 local.get $1 i32.load offset=12 @@ -21086,12 +21008,12 @@ i32.const 6240 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#findIndex66 + br_if $__inlined_func$~lib/array/Array#findIndex80 local.get $0 i32.const 1 i32.add local.set $0 - br $for-loop|067 + br $for-loop|081 end end i32.const -1 @@ -21139,8 +21061,8 @@ local.get $1 i32.load offset=12 local.set $2 - block $__inlined_func$~lib/array/Array#findIndex68 - loop $for-loop|069 + block $__inlined_func$~lib/array/Array#findIndex83 + loop $for-loop|084 local.get $2 local.get $1 i32.load offset=12 @@ -21166,12 +21088,12 @@ i32.const 6272 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#findIndex68 + br_if $__inlined_func$~lib/array/Array#findIndex83 local.get $0 i32.const 1 i32.add local.set $0 - br $for-loop|069 + br $for-loop|084 end end i32.const -1 @@ -21230,8 +21152,8 @@ local.get $1 i32.load offset=12 local.set $2 - block $__inlined_func$~lib/array/Array#findIndex70 - loop $for-loop|071 + block $__inlined_func$~lib/array/Array#findIndex85 + loop $for-loop|086 local.get $2 local.get $1 i32.load offset=12 @@ -21257,12 +21179,12 @@ i32.const 6304 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#findIndex70 + br_if $__inlined_func$~lib/array/Array#findIndex85 local.get $0 i32.const 1 i32.add local.set $0 - br $for-loop|071 + br $for-loop|086 end end i32.const -1 @@ -21328,39 +21250,39 @@ i32.load offset=12 i32.const 1 i32.sub - local.set $0 + local.set $1 block $__inlined_func$~lib/array/Array#findLastIndex - loop $for-loop|058 - local.get $0 + loop $for-loop|088 + local.get $1 i32.const 0 i32.ge_s if local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $0 + local.get $1 local.get $2 i32.const 6384 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#findLastIndex - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 - br $for-loop|058 + local.set $1 + br $for-loop|088 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i if @@ -21378,39 +21300,39 @@ i32.load offset=12 i32.const 1 i32.sub - local.set $0 - block $__inlined_func$~lib/array/Array#findLastIndex59 - loop $for-loop|060 - local.get $0 + local.set $1 + block $__inlined_func$~lib/array/Array#findLastIndex89 + loop $for-loop|090 + local.get $1 i32.const 0 i32.ge_s if local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $0 + local.get $1 local.get $2 i32.const 6416 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#findLastIndex59 - local.get $0 + br_if $__inlined_func$~lib/array/Array#findLastIndex89 + local.get $1 i32.const 1 i32.sub - local.set $0 - br $for-loop|060 + local.set $1 + br $for-loop|090 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const 1 @@ -21430,39 +21352,39 @@ i32.load offset=12 i32.const 1 i32.sub - local.set $0 - block $__inlined_func$~lib/array/Array#findLastIndex61 - loop $for-loop|062 - local.get $0 + local.set $1 + block $__inlined_func$~lib/array/Array#findLastIndex91 + loop $for-loop|092 + local.get $1 i32.const 0 i32.ge_s if local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $0 + local.get $1 local.get $2 i32.const 6448 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#findLastIndex61 - local.get $0 + br_if $__inlined_func$~lib/array/Array#findLastIndex91 + local.get $1 i32.const 1 i32.sub - local.set $0 - br $for-loop|062 + local.set $1 + br $for-loop|092 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const -1 @@ -21482,39 +21404,39 @@ i32.load offset=12 i32.const 1 i32.sub - local.set $1 - block $__inlined_func$~lib/array/Array#findLastIndex63 - loop $for-loop|064 - local.get $1 + local.set $0 + block $__inlined_func$~lib/array/Array#findLastIndex93 + loop $for-loop|094 + local.get $0 i32.const 0 i32.ge_s if local.get $2 i32.load offset=4 - local.get $1 + local.get $0 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $1 + local.get $0 local.get $2 i32.const 6480 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#findLastIndex63 - local.get $1 + br_if $__inlined_func$~lib/array/Array#findLastIndex93 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|064 + local.set $0 + br $for-loop|094 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const -1 @@ -21530,32 +21452,32 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $2 + local.tee $1 i32.store local.get $0 i32.const 6512 i32.store offset=8 block $__inlined_func$~lib/array/Array#every (result i32) i32.const 0 - local.set $1 - local.get $2 - i32.load offset=12 local.set $0 - loop $for-loop|072 - local.get $0 + local.get $1 + i32.load offset=12 + local.set $2 + loop $for-loop|095 local.get $2 + local.get $1 i32.load offset=12 local.tee $3 - local.get $0 + local.get $2 local.get $3 i32.lt_s select - local.get $1 + local.get $0 i32.gt_s if - local.get $2 - i32.load offset=4 local.get $1 + i32.load offset=4 + local.get $0 i32.const 2 i32.shl i32.add @@ -21565,19 +21487,19 @@ global.set $~argumentsLength i32.const 0 local.get $3 + local.get $0 local.get $1 - local.get $2 i32.const 6512 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $__inlined_func$~lib/array/Array#every drop - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|072 + local.set $0 + br $for-loop|095 end end i32.const 1 @@ -21594,32 +21516,32 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $2 + local.tee $1 i32.store local.get $0 i32.const 6544 i32.store offset=8 - block $__inlined_func$~lib/array/Array#every73 (result i32) + block $__inlined_func$~lib/array/Array#every96 (result i32) i32.const 0 - local.set $1 - local.get $2 - i32.load offset=12 local.set $0 - loop $for-loop|074 - local.get $0 + local.get $1 + i32.load offset=12 + local.set $2 + loop $for-loop|097 local.get $2 + local.get $1 i32.load offset=12 local.tee $3 - local.get $0 + local.get $2 local.get $3 i32.lt_s select - local.get $1 + local.get $0 i32.gt_s if - local.get $2 - i32.load offset=4 local.get $1 + i32.load offset=4 + local.get $0 i32.const 2 i32.shl i32.add @@ -21629,19 +21551,19 @@ global.set $~argumentsLength i32.const 0 local.get $3 + local.get $0 local.get $1 - local.get $2 i32.const 6544 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz - br_if $__inlined_func$~lib/array/Array#every73 + br_if $__inlined_func$~lib/array/Array#every96 drop - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|074 + local.set $0 + br $for-loop|097 end end i32.const 1 @@ -21657,32 +21579,32 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $2 + local.tee $1 i32.store local.get $0 i32.const 6576 i32.store offset=8 - block $__inlined_func$~lib/array/Array#every75 (result i32) + block $__inlined_func$~lib/array/Array#every98 (result i32) i32.const 0 - local.set $1 - local.get $2 - i32.load offset=12 local.set $0 - loop $for-loop|076 - local.get $0 + local.get $1 + i32.load offset=12 + local.set $2 + loop $for-loop|099 local.get $2 + local.get $1 i32.load offset=12 local.tee $3 - local.get $0 + local.get $2 local.get $3 i32.lt_s select - local.get $1 + local.get $0 i32.gt_s if - local.get $2 - i32.load offset=4 local.get $1 + i32.load offset=4 + local.get $0 i32.const 2 i32.shl i32.add @@ -21692,19 +21614,19 @@ global.set $~argumentsLength i32.const 0 local.get $3 + local.get $0 local.get $1 - local.get $2 i32.const 6576 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz - br_if $__inlined_func$~lib/array/Array#every75 + br_if $__inlined_func$~lib/array/Array#every98 drop - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|076 + local.set $0 + br $for-loop|099 end end i32.const 1 @@ -21737,32 +21659,32 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $2 + local.tee $1 i32.store local.get $0 i32.const 6608 i32.store offset=8 - block $__inlined_func$~lib/array/Array#every77 (result i32) + block $__inlined_func$~lib/array/Array#every101 (result i32) i32.const 0 - local.set $1 - local.get $2 - i32.load offset=12 local.set $0 - loop $for-loop|078 - local.get $0 + local.get $1 + i32.load offset=12 + local.set $2 + loop $for-loop|0102 local.get $2 + local.get $1 i32.load offset=12 local.tee $3 - local.get $0 + local.get $2 local.get $3 i32.lt_s select - local.get $1 + local.get $0 i32.gt_s if - local.get $2 - i32.load offset=4 local.get $1 + i32.load offset=4 + local.get $0 i32.const 2 i32.shl i32.add @@ -21772,19 +21694,19 @@ global.set $~argumentsLength i32.const 0 local.get $3 + local.get $0 local.get $1 - local.get $2 i32.const 6608 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz - br_if $__inlined_func$~lib/array/Array#every77 + br_if $__inlined_func$~lib/array/Array#every101 drop - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|078 + local.set $0 + br $for-loop|0102 end end i32.const 1 @@ -21827,32 +21749,32 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 6640 i32.store offset=8 - block $__inlined_func$~lib/array/Array#every79 (result i32) + block $__inlined_func$~lib/array/Array#every103 (result i32) i32.const 0 - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.load offset=12 local.set $2 - loop $for-loop|080 + loop $for-loop|0104 local.get $2 - local.get $0 + local.get $1 i32.load offset=12 local.tee $3 local.get $2 local.get $3 i32.lt_s select - local.get $1 + local.get $0 i32.gt_s if - local.get $0 - i32.load offset=4 local.get $1 + i32.load offset=4 + local.get $0 i32.const 2 i32.shl i32.add @@ -21862,19 +21784,19 @@ global.set $~argumentsLength i32.const 0 local.get $3 - local.get $1 local.get $0 + local.get $1 i32.const 6640 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz - br_if $__inlined_func$~lib/array/Array#every79 + br_if $__inlined_func$~lib/array/Array#every103 drop - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|080 + local.set $0 + br $for-loop|0104 end end i32.const 1 @@ -21922,32 +21844,32 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 6672 i32.store offset=8 block $__inlined_func$~lib/array/Array#some (result i32) i32.const 0 - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.load offset=12 local.set $2 - loop $for-loop|081 + loop $for-loop|0106 local.get $2 - local.get $0 + local.get $1 i32.load offset=12 local.tee $3 local.get $2 local.get $3 i32.lt_s select - local.get $1 + local.get $0 i32.gt_s if - local.get $0 - i32.load offset=4 local.get $1 + i32.load offset=4 + local.get $0 i32.const 2 i32.shl i32.add @@ -21957,18 +21879,18 @@ global.set $~argumentsLength i32.const 1 local.get $3 - local.get $1 local.get $0 + local.get $1 i32.const 6672 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#some drop - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|081 + local.set $0 + br $for-loop|0106 end end i32.const 0 @@ -21985,32 +21907,32 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $2 + local.tee $1 i32.store local.get $0 i32.const 6704 i32.store offset=8 - block $__inlined_func$~lib/array/Array#some82 (result i32) + block $__inlined_func$~lib/array/Array#some107 (result i32) i32.const 0 - local.set $1 - local.get $2 - i32.load offset=12 local.set $0 - loop $for-loop|083 - local.get $0 + local.get $1 + i32.load offset=12 + local.set $2 + loop $for-loop|0108 local.get $2 + local.get $1 i32.load offset=12 local.tee $3 - local.get $0 + local.get $2 local.get $3 i32.lt_s select - local.get $1 + local.get $0 i32.gt_s if - local.get $2 - i32.load offset=4 local.get $1 + i32.load offset=4 + local.get $0 i32.const 2 i32.shl i32.add @@ -22020,18 +21942,18 @@ global.set $~argumentsLength i32.const 1 local.get $3 + local.get $0 local.get $1 - local.get $2 i32.const 6704 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#some82 + br_if $__inlined_func$~lib/array/Array#some107 drop - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|083 + local.set $0 + br $for-loop|0108 end end i32.const 0 @@ -22047,32 +21969,32 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $2 + local.tee $1 i32.store local.get $0 i32.const 6736 i32.store offset=8 - block $__inlined_func$~lib/array/Array#some84 (result i32) + block $__inlined_func$~lib/array/Array#some109 (result i32) i32.const 0 - local.set $1 - local.get $2 - i32.load offset=12 local.set $0 - loop $for-loop|085 - local.get $0 + local.get $1 + i32.load offset=12 + local.set $2 + loop $for-loop|0110 local.get $2 + local.get $1 i32.load offset=12 local.tee $3 - local.get $0 + local.get $2 local.get $3 i32.lt_s select - local.get $1 + local.get $0 i32.gt_s if - local.get $2 - i32.load offset=4 local.get $1 + i32.load offset=4 + local.get $0 i32.const 2 i32.shl i32.add @@ -22082,18 +22004,18 @@ global.set $~argumentsLength i32.const 1 local.get $3 + local.get $0 local.get $1 - local.get $2 i32.const 6736 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#some84 + br_if $__inlined_func$~lib/array/Array#some109 drop - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|085 + local.set $0 + br $for-loop|0110 end end i32.const 0 @@ -22125,32 +22047,32 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $2 + local.tee $1 i32.store local.get $0 i32.const 6768 i32.store offset=8 - block $__inlined_func$~lib/array/Array#some86 (result i32) + block $__inlined_func$~lib/array/Array#some112 (result i32) i32.const 0 - local.set $1 - local.get $2 - i32.load offset=12 local.set $0 - loop $for-loop|087 - local.get $0 + local.get $1 + i32.load offset=12 + local.set $2 + loop $for-loop|0113 local.get $2 + local.get $1 i32.load offset=12 local.tee $3 - local.get $0 + local.get $2 local.get $3 i32.lt_s select - local.get $1 + local.get $0 i32.gt_s if - local.get $2 - i32.load offset=4 local.get $1 + i32.load offset=4 + local.get $0 i32.const 2 i32.shl i32.add @@ -22160,18 +22082,18 @@ global.set $~argumentsLength i32.const 1 local.get $3 + local.get $0 local.get $1 - local.get $2 i32.const 6768 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#some86 + br_if $__inlined_func$~lib/array/Array#some112 drop - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|087 + local.set $0 + br $for-loop|0113 end end i32.const 0 @@ -22215,32 +22137,32 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 6800 i32.store offset=8 - block $__inlined_func$~lib/array/Array#some88 (result i32) + block $__inlined_func$~lib/array/Array#some114 (result i32) i32.const 0 - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.load offset=12 local.set $2 - loop $for-loop|089 + loop $for-loop|0115 local.get $2 - local.get $0 + local.get $1 i32.load offset=12 local.tee $3 local.get $2 local.get $3 i32.lt_s select - local.get $1 + local.get $0 i32.gt_s if - local.get $0 - i32.load offset=4 local.get $1 + i32.load offset=4 + local.get $0 i32.const 2 i32.shl i32.add @@ -22250,18 +22172,18 @@ global.set $~argumentsLength i32.const 1 local.get $3 - local.get $1 local.get $0 + local.get $1 i32.const 6800 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/array/Array#some88 + br_if $__inlined_func$~lib/array/Array#some114 drop - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|089 + local.set $0 + br $for-loop|0115 end end i32.const 0 @@ -22310,47 +22232,47 @@ global.set $std/array/i global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 6832 i32.store offset=8 i32.const 0 - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.load offset=12 local.set $2 - loop $for-loop|06990 + loop $for-loop|0117 local.get $2 - local.get $0 + local.get $1 i32.load offset=12 local.tee $3 local.get $2 local.get $3 i32.lt_s select - local.get $1 + local.get $0 i32.gt_s if - local.get $0 - i32.load offset=4 local.get $1 + i32.load offset=4 + local.get $0 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $1 local.get $0 + local.get $1 i32.const 6832 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|06990 + local.set $0 + br $for-loop|0117 end end global.get $std/array/i @@ -22369,47 +22291,47 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $2 + local.tee $1 i32.store local.get $0 i32.const 6864 i32.store offset=8 i32.const 0 - local.set $1 - local.get $2 - i32.load offset=12 local.set $0 - loop $for-loop|07191 - local.get $0 + local.get $1 + i32.load offset=12 + local.set $2 + loop $for-loop|0119 local.get $2 + local.get $1 i32.load offset=12 local.tee $3 - local.get $0 + local.get $2 local.get $3 i32.lt_s select - local.get $1 + local.get $0 i32.gt_s if - local.get $2 - i32.load offset=4 local.get $1 + i32.load offset=4 + local.get $0 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $2 i32.const 6864 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|07191 + local.set $0 + br $for-loop|0119 end end global.get $std/array/i @@ -22444,47 +22366,47 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $2 + local.tee $1 i32.store local.get $0 i32.const 6896 i32.store offset=8 i32.const 0 - local.set $1 - local.get $2 - i32.load offset=12 local.set $0 - loop $for-loop|07492 - local.get $0 + local.get $1 + i32.load offset=12 + local.set $2 + loop $for-loop|0122 local.get $2 + local.get $1 i32.load offset=12 local.tee $3 - local.get $0 + local.get $2 local.get $3 i32.lt_s select - local.get $1 + local.get $0 i32.gt_s if - local.get $2 - i32.load offset=4 local.get $1 + i32.load offset=4 + local.get $0 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $2 i32.const 6896 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|07492 + local.set $0 + br $for-loop|0122 end end global.get $std/array/i @@ -22530,47 +22452,47 @@ global.set $std/array/i global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 6928 i32.store offset=8 i32.const 0 - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.load offset=12 local.set $2 - loop $for-loop|07693 + loop $for-loop|0124 local.get $2 - local.get $0 + local.get $1 i32.load offset=12 local.tee $3 local.get $2 local.get $3 i32.lt_s select - local.get $1 + local.get $0 i32.gt_s if - local.get $0 - i32.load offset=4 local.get $1 + i32.load offset=4 + local.get $0 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $1 local.get $0 + local.get $1 i32.const 6928 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|07693 + local.set $0 + br $for-loop|0124 end end global.get $std/array/i @@ -22618,47 +22540,47 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 6960 i32.store offset=8 i32.const 0 - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.load offset=12 local.set $2 - loop $for-loop|079 + loop $for-loop|0127 local.get $2 - local.get $0 + local.get $1 i32.load offset=12 local.tee $3 local.get $2 local.get $3 i32.lt_s select - local.get $1 + local.get $0 i32.gt_s if - local.get $0 - i32.load offset=4 local.get $1 + i32.load offset=4 + local.get $0 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $1 local.get $0 + local.get $1 i32.const 6960 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|079 + local.set $0 + br $for-loop|0127 end end global.get $~lib/memory/__stack_pointer @@ -22678,23 +22600,23 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $for-loop|6 - local.get $0 + local.get $1 i32.const 100 i32.lt_s if global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 call $~lib/array/Array#pop drop - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|6 end end @@ -22732,14 +22654,14 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 6992 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -22753,65 +22675,65 @@ i32.const 0 i32.store local.get $3 - local.get $0 + local.get $1 i32.load offset=12 local.tee $3 i32.const 2 i32.const 10 i32.const 0 call $~lib/rt/__newArray - local.tee $6 + local.tee $7 i32.store - local.get $6 + local.get $7 i32.load offset=4 - local.set $7 - loop $for-loop|08195 + local.set $8 + loop $for-loop|0129 local.get $3 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $8 + local.tee $9 local.get $3 - local.get $8 + local.get $9 i32.lt_s select - local.get $1 + local.get $0 i32.gt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.tee $8 - local.get $0 + local.tee $9 + local.get $1 i32.load offset=4 i32.add i32.load - local.set $9 + local.set $10 i32.const 3 global.set $~argumentsLength - local.get $7 local.get $8 - i32.add local.get $9 - local.get $1 + i32.add + local.get $10 local.get $0 + local.get $1 i32.const 6992 i32.load call_indirect $0 (type $i32_i32_i32_=>_f32) f32.store - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|08195 + local.set $0 + br $for-loop|0129 end end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $7 i32.store offset=12 - local.get $6 + local.get $7 i32.load offset=12 i32.const 4 i32.ne @@ -22823,7 +22745,7 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $7 i32.const 0 call $~lib/array/Array#__get local.set $4 @@ -23169,56 +23091,56 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer i32.const 7248 i32.store offset=8 i32.const 0 - local.set $2 + local.set $0 i32.const 0 local.set $1 - local.get $0 + local.get $2 i32.load offset=12 local.set $3 - loop $for-loop|096 + loop $for-loop|0136 local.get $3 - local.get $0 + local.get $2 i32.load offset=12 - local.tee $6 + local.tee $7 local.get $3 - local.get $6 + local.get $7 i32.lt_s select - local.get $1 + local.get $0 i32.gt_s if - local.get $0 + local.get $2 i32.load offset=4 - local.get $1 + local.get $0 i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $2 - local.get $6 local.get $1 + local.get $7 local.get $0 + local.get $2 i32.const 7248 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|096 + local.set $0 + br $for-loop|0136 end end - local.get $2 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const 6 @@ -23234,56 +23156,56 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $3 + local.tee $2 i32.store local.get $0 i32.const 7280 i32.store offset=8 - i32.const 4 - local.set $2 i32.const 0 + local.set $0 + i32.const 4 local.set $1 - local.get $3 + local.get $2 i32.load offset=12 - local.set $0 - loop $for-loop|098 - local.get $0 + local.set $3 + loop $for-loop|0138 local.get $3 + local.get $2 i32.load offset=12 - local.tee $6 - local.get $0 - local.get $6 + local.tee $7 + local.get $3 + local.get $7 i32.lt_s select - local.get $1 + local.get $0 i32.gt_s if - local.get $3 + local.get $2 i32.load offset=4 - local.get $1 + local.get $0 i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $2 - local.get $6 local.get $1 - local.get $3 + local.get $7 + local.get $0 + local.get $2 i32.const 7280 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|098 + local.set $0 + br $for-loop|0138 end end - local.get $2 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const 10 @@ -23299,56 +23221,56 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $3 + local.tee $2 i32.store local.get $0 i32.const 7312 i32.store offset=8 i32.const 0 - local.set $2 + local.set $0 i32.const 0 local.set $1 - local.get $3 + local.get $2 i32.load offset=12 - local.set $0 - loop $for-loop|0100 - local.get $0 + local.set $3 + loop $for-loop|0140 local.get $3 + local.get $2 i32.load offset=12 - local.tee $6 - local.get $0 - local.get $6 + local.tee $7 + local.get $3 + local.get $7 i32.lt_s select - local.get $1 + local.get $0 i32.gt_s if - local.get $3 + local.get $2 i32.load offset=4 - local.get $1 + local.get $0 i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $2 - local.get $6 local.get $1 - local.get $3 + local.get $7 + local.get $0 + local.get $2 i32.const 7312 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0100 + local.set $0 + br $for-loop|0140 end end - local.get $2 + local.get $1 i32.eqz if i32.const 0 @@ -23361,56 +23283,56 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $3 + local.tee $2 i32.store local.get $0 i32.const 7344 i32.store offset=8 i32.const 0 - local.set $2 + local.set $0 i32.const 0 local.set $1 - local.get $3 + local.get $2 i32.load offset=12 - local.set $0 - loop $for-loop|0102 - local.get $0 + local.set $3 + loop $for-loop|0142 local.get $3 + local.get $2 i32.load offset=12 - local.tee $6 - local.get $0 - local.get $6 + local.tee $7 + local.get $3 + local.get $7 i32.lt_s select - local.get $1 + local.get $0 i32.gt_s if - local.get $3 + local.get $2 i32.load offset=4 - local.get $1 + local.get $0 i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $2 - local.get $6 local.get $1 - local.get $3 + local.get $7 + local.get $0 + local.get $2 i32.const 7344 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0102 + local.set $0 + br $for-loop|0142 end end - local.get $2 + local.get $1 if i32.const 0 i32.const 1552 @@ -23422,56 +23344,56 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $3 + local.tee $2 i32.store local.get $0 i32.const 7376 i32.store offset=8 i32.const 0 - local.set $2 + local.set $0 i32.const 0 local.set $1 - local.get $3 + local.get $2 i32.load offset=12 - local.set $0 - loop $for-loop|0104 - local.get $0 + local.set $3 + loop $for-loop|0144 local.get $3 + local.get $2 i32.load offset=12 - local.tee $6 - local.get $0 - local.get $6 + local.tee $7 + local.get $3 + local.get $7 i32.lt_s select - local.get $1 + local.get $0 i32.gt_s if - local.get $3 + local.get $2 i32.load offset=4 - local.get $1 + local.get $0 i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $2 - local.get $6 local.get $1 - local.get $3 + local.get $7 + local.get $0 + local.get $2 i32.const 7376 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0104 + local.set $0 + br $for-loop|0144 end end - local.get $2 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const 6 @@ -23503,56 +23425,56 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $3 + local.tee $2 i32.store local.get $0 i32.const 7408 i32.store offset=8 i32.const 0 - local.set $2 + local.set $0 i32.const 0 local.set $1 - local.get $3 + local.get $2 i32.load offset=12 - local.set $0 - loop $for-loop|0106 - local.get $0 + local.set $3 + loop $for-loop|0147 local.get $3 + local.get $2 i32.load offset=12 - local.tee $6 - local.get $0 - local.get $6 + local.tee $7 + local.get $3 + local.get $7 i32.lt_s select - local.get $1 + local.get $0 i32.gt_s if - local.get $3 + local.get $2 i32.load offset=4 - local.get $1 + local.get $0 i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $2 - local.get $6 local.get $1 - local.get $3 + local.get $7 + local.get $0 + local.get $2 i32.const 7408 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0106 + local.set $0 + br $for-loop|0147 end end - local.get $2 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const 10 @@ -23595,56 +23517,56 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer i32.const 7440 i32.store offset=8 i32.const 0 - local.set $2 + local.set $0 i32.const 0 local.set $1 - local.get $0 + local.get $2 i32.load offset=12 local.set $3 - loop $for-loop|0108 + loop $for-loop|0149 local.get $3 - local.get $0 + local.get $2 i32.load offset=12 - local.tee $6 + local.tee $7 local.get $3 - local.get $6 + local.get $7 i32.lt_s select - local.get $1 + local.get $0 i32.gt_s if - local.get $0 + local.get $2 i32.load offset=4 - local.get $1 + local.get $0 i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $2 - local.get $6 local.get $1 + local.get $7 local.get $0 + local.get $2 i32.const 7440 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $2 - local.get $1 + local.set $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0108 + local.set $0 + br $for-loop|0149 end end - local.get $2 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const 1 @@ -23697,20 +23619,20 @@ i32.const 7472 i32.store offset=8 i32.const 0 - local.set $0 + local.set $1 local.get $2 i32.load offset=12 i32.const 1 i32.sub - local.set $1 - loop $for-loop|090 - local.get $1 + local.set $0 + loop $for-loop|0151 + local.get $0 i32.const 0 i32.ge_s if local.get $2 i32.load offset=4 - local.get $1 + local.get $0 i32.const 2 i32.shl i32.add @@ -23718,22 +23640,22 @@ local.set $3 i32.const 4 global.set $~argumentsLength - local.get $0 - local.get $3 local.get $1 + local.get $3 + local.get $0 local.get $2 i32.const 7472 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|090 + local.set $0 + br $for-loop|0151 end end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const 6 @@ -23755,20 +23677,20 @@ i32.const 7504 i32.store offset=8 i32.const 4 - local.set $0 + local.set $1 local.get $2 i32.load offset=12 i32.const 1 i32.sub - local.set $1 - loop $for-loop|092 - local.get $1 + local.set $0 + loop $for-loop|0153 + local.get $0 i32.const 0 i32.ge_s if local.get $2 i32.load offset=4 - local.get $1 + local.get $0 i32.const 2 i32.shl i32.add @@ -23776,22 +23698,22 @@ local.set $3 i32.const 4 global.set $~argumentsLength - local.get $0 - local.get $3 local.get $1 + local.get $3 + local.get $0 local.get $2 i32.const 7504 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|092 + local.set $0 + br $for-loop|0153 end end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const 10 @@ -23813,20 +23735,20 @@ i32.const 7536 i32.store offset=8 i32.const 0 - local.set $0 + local.set $1 local.get $2 i32.load offset=12 i32.const 1 i32.sub - local.set $1 - loop $for-loop|094 - local.get $1 + local.set $0 + loop $for-loop|0155 + local.get $0 i32.const 0 i32.ge_s if local.get $2 i32.load offset=4 - local.get $1 + local.get $0 i32.const 2 i32.shl i32.add @@ -23834,22 +23756,22 @@ local.set $3 i32.const 4 global.set $~argumentsLength - local.get $0 - local.get $3 local.get $1 + local.get $3 + local.get $0 local.get $2 i32.const 7536 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|094 + local.set $0 + br $for-loop|0155 end end - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -23868,20 +23790,20 @@ i32.const 7568 i32.store offset=8 i32.const 0 - local.set $0 + local.set $1 local.get $2 i32.load offset=12 i32.const 1 i32.sub - local.set $1 - loop $for-loop|096109 - local.get $1 + local.set $0 + loop $for-loop|0157 + local.get $0 i32.const 0 i32.ge_s if local.get $2 i32.load offset=4 - local.get $1 + local.get $0 i32.const 2 i32.shl i32.add @@ -23889,22 +23811,22 @@ local.set $3 i32.const 4 global.set $~argumentsLength - local.get $0 - local.get $3 local.get $1 + local.get $3 + local.get $0 local.get $2 i32.const 7568 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|096109 + local.set $0 + br $for-loop|0157 end end - local.get $0 + local.get $1 if i32.const 0 i32.const 1552 @@ -23922,20 +23844,20 @@ i32.const 7600 i32.store offset=8 i32.const 0 - local.set $0 + local.set $1 local.get $2 i32.load offset=12 i32.const 1 i32.sub - local.set $1 - loop $for-loop|098110 - local.get $1 + local.set $0 + loop $for-loop|0159 + local.get $0 i32.const 0 i32.ge_s if local.get $2 i32.load offset=4 - local.get $1 + local.get $0 i32.const 2 i32.shl i32.add @@ -23943,22 +23865,22 @@ local.set $3 i32.const 4 global.set $~argumentsLength - local.get $0 - local.get $3 local.get $1 + local.get $3 + local.get $0 local.get $2 i32.const 7600 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|098110 + local.set $0 + br $for-loop|0159 end end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const 6 @@ -23996,20 +23918,20 @@ i32.const 7632 i32.store offset=8 i32.const 0 - local.set $0 + local.set $1 local.get $2 i32.load offset=12 i32.const 1 i32.sub - local.set $1 - loop $for-loop|0101 - local.get $1 + local.set $0 + loop $for-loop|0162 + local.get $0 i32.const 0 i32.ge_s if local.get $2 i32.load offset=4 - local.get $1 + local.get $0 i32.const 2 i32.shl i32.add @@ -24017,22 +23939,22 @@ local.set $3 i32.const 4 global.set $~argumentsLength - local.get $0 - local.get $3 local.get $1 + local.get $3 + local.get $0 local.get $2 i32.const 7632 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|0101 + local.set $0 + br $for-loop|0162 end end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const 10 @@ -24081,20 +24003,20 @@ i32.const 7664 i32.store offset=8 i32.const 0 - local.set $0 + local.set $1 local.get $2 i32.load offset=12 i32.const 1 i32.sub - local.set $1 - loop $for-loop|0103 - local.get $1 + local.set $0 + loop $for-loop|0164 + local.get $0 i32.const 0 i32.ge_s if local.get $2 i32.load offset=4 - local.get $1 + local.get $0 i32.const 2 i32.shl i32.add @@ -24102,22 +24024,22 @@ local.set $3 i32.const 4 global.set $~argumentsLength - local.get $0 - local.get $3 local.get $1 + local.get $3 + local.get $0 local.get $2 i32.const 7664 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|0103 + local.set $0 + br $for-loop|0164 end end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const 6 @@ -24615,12 +24537,12 @@ i32.const 11 i32.const 8112 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=112 i32.const 0 global.set $~argumentsLength i32.const 0 - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -24632,25 +24554,25 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of18 - block $0of19 - block $outOfRange10 + block $1of148 + block $0of149 + block $outOfRange50 global.get $~argumentsLength - br_table $0of19 $1of18 $outOfRange10 + br_table $0of149 $1of148 $outOfRange50 end unreachable end i32.const 8208 - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8208 i32.store end - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 - i32.load offset=12 local.get $0 + i32.load offset=12 + local.get $1 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer i32.const 4 @@ -24667,9 +24589,9 @@ i32.store offset=8 block $__inlined_func$std/array/isArraysEqual (result i32) i32.const 0 - local.set $0 + local.set $1 i32.const 0 - local.get $1 + local.get $0 i32.load offset=12 local.tee $3 local.get $2 @@ -24678,25 +24600,25 @@ br_if $__inlined_func$std/array/isArraysEqual drop i32.const 1 - local.get $1 + local.get $0 local.get $2 i32.eq br_if $__inlined_func$std/array/isArraysEqual drop - loop $for-loop|038 - local.get $0 + loop $for-loop|028 + local.get $1 local.get $3 i32.lt_s if - local.get $1 local.get $0 + local.get $1 call $~lib/array/Array#__get local.tee $5 local.get $5 f64.ne if (result i32) local.get $2 - local.get $0 + local.get $1 call $~lib/array/Array#__get local.tee $5 local.get $5 @@ -24707,21 +24629,21 @@ i32.eqz if i32.const 0 - local.get $1 local.get $0 + local.get $1 call $~lib/array/Array#__get local.get $2 - local.get $0 + local.get $1 call $~lib/array/Array#__get f64.ne br_if $__inlined_func$std/array/isArraysEqual drop end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 - br $for-loop|038 + local.set $1 + br $for-loop|028 end end i32.const 1 @@ -24741,12 +24663,12 @@ i32.const 3 i32.const 8336 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=116 i32.const 0 global.set $~argumentsLength i32.const 0 - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -24758,25 +24680,25 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of1151 - block $0of1152 - block $outOfRange153 + block $1of1212 + block $0of1213 + block $outOfRange214 global.get $~argumentsLength - br_table $0of1152 $1of1151 $outOfRange153 + br_table $0of1213 $1of1212 $outOfRange214 end unreachable end i32.const 8384 - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8384 i32.store end - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 - i32.load offset=12 local.get $0 + i32.load offset=12 + local.get $1 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer i32.const 4 @@ -24787,12 +24709,12 @@ i32.const 3 i32.const 8416 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -24869,7 +24791,7 @@ i32.const 3 i32.const 8688 call $~lib/rt/__newArray - local.tee $6 + local.tee $7 i32.store offset=136 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -24877,32 +24799,32 @@ i32.const 3 i32.const 8736 call $~lib/rt/__newArray - local.tee $0 + local.tee $8 i32.store offset=140 global.get $~lib/memory/__stack_pointer i32.const 64 call $std/array/createReverseOrderedArray - local.tee $7 + local.tee $9 i32.store offset=144 global.get $~lib/memory/__stack_pointer i32.const 128 call $std/array/createReverseOrderedArray - local.tee $8 + local.tee $10 i32.store offset=148 global.get $~lib/memory/__stack_pointer i32.const 1024 call $std/array/createReverseOrderedArray - local.tee $9 + local.tee $11 i32.store offset=152 global.get $~lib/memory/__stack_pointer i32.const 10000 call $std/array/createReverseOrderedArray - local.tee $10 + local.tee $12 i32.store offset=156 global.get $~lib/memory/__stack_pointer i32.const 512 call $std/array/createRandomOrderedArray - local.tee $11 + local.tee $0 i32.store offset=160 local.get $1 call $std/array/assertSortedDefault @@ -24954,10 +24876,10 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $7 call $std/array/assertSortedDefault - local.get $6 - local.get $0 + local.get $7 + local.get $8 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -24969,10 +24891,10 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $9 call $std/array/assertSortedDefault - local.get $7 - local.get $0 + local.get $9 + local.get $8 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -24984,10 +24906,10 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $10 call $std/array/assertSortedDefault + local.get $10 local.get $8 - local.get $0 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -24999,10 +24921,10 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $11 call $std/array/assertSortedDefault - local.get $9 - local.get $0 + local.get $11 + local.get $8 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -25014,10 +24936,10 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $12 call $std/array/assertSortedDefault - local.get $10 - local.get $0 + local.get $12 + local.get $8 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -25029,206 +24951,9 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $0 call $std/array/assertSortedDefault - i32.const 0 - local.set $2 - i32.const 0 - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 24 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 15652 - i32.lt_s - br_if $folding-inner3 - global.get $~lib/memory/__stack_pointer - local.tee $1 - i64.const 0 - i64.store - local.get $1 - i64.const 0 - i64.store offset=8 - local.get $1 - i64.const 0 - i64.store offset=16 - local.get $1 - global.get $std/array/inputStabArr - local.tee $3 - i32.store offset=8 - local.get $1 - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 15652 - i32.lt_s - br_if $folding-inner3 - global.get $~lib/memory/__stack_pointer - local.tee $6 - i32.const 0 - i32.store - i32.const 0 - local.get $3 - i32.load offset=12 - local.tee $7 - local.get $7 - i32.const 0 - i32.gt_s - select - local.set $8 - local.get $6 - local.get $7 - local.get $8 - i32.sub - local.tee $6 - i32.const 0 - local.get $6 - i32.const 0 - i32.gt_s - select - local.tee $6 - i32.const 2 - i32.const 20 - i32.const 0 - call $~lib/rt/__newArray - local.tee $7 - i32.store - local.get $7 - i32.load offset=4 - local.set $9 - local.get $3 - i32.load offset=4 - local.get $8 - i32.const 2 - i32.shl - i32.add - local.set $3 - local.get $6 - i32.const 2 - i32.shl - local.set $6 - loop $while-continue|011 - local.get $2 - local.get $6 - i32.lt_u - if - local.get $2 - local.get $9 - i32.add - local.get $2 - local.get $3 - i32.add - i32.load - local.tee $8 - i32.store - local.get $8 - if - local.get $7 - local.get $8 - i32.const 1 - call $byn-split-outlined-A$~lib/rt/itcms/__link - end - local.get $2 - i32.const 4 - i32.add - local.set $2 - br $while-continue|011 - end - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $7 - i32.store - local.get $2 - i32.const 8880 - i32.store offset=4 - local.get $7 - i32.load offset=4 - local.get $7 - i32.load offset=12 - i32.const 8880 - call $~lib/util/sort/SORT - local.get $1 - local.get $7 - i32.store offset=12 - i32.const 1 - local.set $2 - global.get $~lib/memory/__stack_pointer - global.get $std/array/inputStabArr - local.tee $1 - i32.store - local.get $1 - i32.load offset=12 - local.set $1 - loop $for-loop|012 - local.get $0 - local.get $1 - i32.lt_s - if - block $for-break0 - global.get $~lib/memory/__stack_pointer - local.get $7 - local.get $0 - call $~lib/array/Array#__get - local.tee $3 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - global.get $std/array/outputStabArr - local.tee $6 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $6 - local.get $0 - call $~lib/array/Array#__get - local.tee $6 - i32.store offset=20 - local.get $3 - i32.load - local.get $6 - i32.load - i32.ne - if (result i32) - i32.const 1 - else - local.get $3 - i32.load offset=4 - local.get $6 - i32.load offset=4 - i32.ne - end - if - i32.const 0 - local.set $2 - br $for-break0 - end - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $for-loop|012 - end - end - end - local.get $2 - i32.eqz - if - i32.const 0 - i32.const 1552 - i32.const 1042 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 24 - i32.add - global.set $~lib/memory/__stack_pointer + call $std/array/assertStableSortedForComplexObjects global.get $~lib/memory/__stack_pointer i32.const 64 call $std/array/createRandomOrderedArray @@ -25265,7 +24990,7 @@ call $std/array/assertSorted global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -25275,10 +25000,10 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -25287,105 +25012,104 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 i32.const 16 i32.const 26 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 i32.const 0 i32.store - local.get $3 + local.get $2 i32.const 0 i32.store offset=4 - local.get $3 + local.get $2 i32.const 0 i32.store offset=8 - local.get $3 + local.get $2 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 32 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $7 i32.store offset=4 - local.get $6 + local.get $7 i32.const 0 i32.const 32 call $~lib/memory/memory.fill - local.get $3 - local.get $6 + local.get $2 + local.get $7 i32.store - local.get $6 + local.get $7 if - local.get $3 - local.get $6 - i32.const 0 - call $byn-split-outlined-A$~lib/rt/itcms/__link + local.get $2 + local.get $7 + call $byn-split-outlined-A$~lib/rt/itcms/__link_0 end - local.get $3 - local.get $6 + local.get $2 + local.get $7 i32.store offset=4 - local.get $3 + local.get $2 i32.const 32 i32.store offset=8 - local.get $3 + local.get $2 i32.const 2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $1 local.get $2 - local.get $3 i32.store - loop $for-loop|0154 - local.get $1 + loop $for-loop|0215 + local.get $3 i32.const 2 i32.lt_s if global.get $~lib/memory/__stack_pointer i32.const 1 call $~lib/array/Array#constructor - local.tee $2 + local.tee $1 i32.store offset=4 - local.get $2 + local.get $1 i32.const 0 i32.const 1 - local.get $1 + local.get $3 i32.sub call $~lib/array/Array#__set + local.get $2 local.get $3 local.get $1 - local.get $2 call $~lib/array/Array<~lib/array/Array>#__set - local.get $1 + local.get $3 i32.const 1 i32.add - local.set $1 - br $for-loop|0154 + local.set $3 + br $for-loop|0215 end end global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store offset=156 global.get $~lib/memory/__stack_pointer i32.const 9040 i32.store offset=8 - local.get $3 + local.get $2 i32.const 9040 call $std/array/assertSorted<~lib/array/Array> global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -25395,10 +25119,10 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -25432,24 +25156,24 @@ i32.const 2048 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $7 i32.store offset=4 - local.get $6 + local.get $7 i32.const 0 i32.const 2048 call $~lib/memory/memory.fill local.get $3 - local.get $6 + local.get $7 i32.store - local.get $6 + local.get $7 if local.get $3 - local.get $6 + local.get $7 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $3 - local.get $6 + local.get $7 i32.store offset=4 local.get $3 i32.const 2048 @@ -25461,14 +25185,18 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 local.get $3 i32.store - loop $for-loop|014 - local.get $2 + loop $for-loop|00 + local.get $1 i32.const 512 i32.lt_s if + i32.const 511 + local.get $1 + i32.sub + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -25478,36 +25206,34 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $7 i32.const 0 i32.store - local.get $1 + local.get $7 i32.const 4 i32.const 28 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $7 i32.store - local.get $1 - i32.const 511 + local.get $7 local.get $2 - i32.sub i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $7 i32.store offset=4 local.get $3 - local.get $2 local.get $1 + local.get $7 call $~lib/array/Array<~lib/array/Array>#__set - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 - br $for-loop|014 + local.set $1 + br $for-loop|00 end end global.get $~lib/memory/__stack_pointer @@ -25528,7 +25254,7 @@ i32.const 31 i32.const 9264 call $~lib/rt/__newArray - local.tee $1 + local.tee $0 i32.store offset=160 global.get $~lib/memory/__stack_pointer i32.const 7 @@ -25541,7 +25267,7 @@ i32.const 1 global.set $~argumentsLength i32.const 0 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -25553,18 +25279,18 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of116 - block $0of117 - block $outOfRange18 + block $1of151 + block $0of152 + block $outOfRange53 global.get $~argumentsLength i32.const 1 i32.sub - br_table $0of117 $1of116 $outOfRange18 + br_table $0of152 $1of151 $outOfRange53 end unreachable end i32.const 9360 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 9360 i32.store @@ -25580,18 +25306,18 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load offset=12 - local.get $2 + local.get $1 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 + local.tee $2 + local.get $0 i32.store block $__inlined_func$std/array/isSorted<~lib/string/String|null> (result i32) - local.get $0 + local.get $2 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -25603,36 +25329,36 @@ i64.const 0 i64.store i32.const 1 - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.load offset=12 - local.set $6 - loop $for-loop|019 - local.get $0 - local.get $6 + local.set $7 + loop $for-loop|054 + local.get $2 + local.get $7 i32.lt_s if - local.get $1 local.get $0 + local.get $2 i32.const 1 i32.sub call $~lib/array/Array#__get - local.set $7 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $8 i32.store - local.get $1 local.get $0 + local.get $2 call $~lib/array/Array#__get - local.set $8 + local.set $9 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $9 i32.store offset=4 i32.const 2 global.set $~argumentsLength - local.get $7 local.get $8 - local.get $2 + local.get $9 + local.get $1 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 @@ -25645,11 +25371,11 @@ i32.const 0 br $__inlined_func$std/array/isSorted<~lib/string/String|null> end - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 - br $for-loop|019 + local.set $2 + br $for-loop|054 end end global.get $~lib/memory/__stack_pointer @@ -25677,7 +25403,7 @@ global.set $~lib/memory/__stack_pointer block $__inlined_func$std/array/isArraysEqual<~lib/string/String|null> (result i32) i32.const 0 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -25690,47 +25416,47 @@ i64.const 0 i64.store block $folding-inner1 - block $folding-inner020 - local.get $1 + block $folding-inner01 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $2 local.get $3 i32.load offset=12 i32.ne - br_if $folding-inner020 - local.get $1 + br_if $folding-inner01 + local.get $0 local.get $3 i32.eq br_if $folding-inner1 - loop $for-loop|049 - local.get $0 + loop $for-loop|042 + local.get $1 local.get $2 - i32.gt_s + i32.lt_s if + local.get $0 local.get $1 - local.get $2 call $~lib/array/Array#__get - local.set $6 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $7 i32.store local.get $3 - local.get $2 + local.get $1 call $~lib/array/Array#__get - local.set $7 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $8 i32.store offset=4 - local.get $6 local.get $7 + local.get $8 call $~lib/string/String.__eq i32.eqz - br_if $folding-inner020 - local.get $2 + br_if $folding-inner01 + local.get $1 i32.const 1 i32.add - local.set $2 - br $for-loop|049 + local.set $1 + br $for-loop|042 end end br $folding-inner1 @@ -25777,9 +25503,9 @@ i32.const 0 i32.const 400 call $~lib/array/Array<~lib/string/String>#constructor - local.tee $1 + local.tee $8 i32.store - loop $for-loop|0155 + loop $for-loop|044 local.get $2 i32.const 400 i32.lt_s @@ -25788,9 +25514,9 @@ f64.const 32 f64.mul i32.trunc_f64_s - local.set $8 + local.set $9 i32.const 0 - local.set $6 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -25800,26 +25526,24 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $0 i64.const 0 i64.store - local.get $3 + local.get $0 i32.const 0 i32.store offset=8 i32.const 9232 - local.set $0 - local.get $3 + local.set $1 + local.get $0 i32.const 9232 i32.store - loop $for-loop|00 - local.get $6 - local.get $8 + loop $for-loop|04 + local.get $3 + local.get $9 i32.lt_s if - local.get $0 - local.set $3 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $10 i32.const 7696 i32.store offset=4 call $~lib/math/NativeMath.random @@ -25834,7 +25558,7 @@ f64.mul f64.floor i32.trunc_f64_s - local.set $10 + local.set $11 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -25851,7 +25575,7 @@ i32.load i32.const 1 i32.shr_u - local.get $10 + local.get $11 i32.le_u if global.get $~lib/memory/__stack_pointer @@ -25869,7 +25593,7 @@ local.tee $0 i32.store local.get $0 - local.get $10 + local.get $11 i32.const 1 i32.shl i32.const 7696 @@ -25884,17 +25608,17 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $9 - local.get $3 + local.get $10 + local.get $1 local.get $0 call $~lib/string/String.__concat - local.tee $0 + local.tee $1 i32.store - local.get $6 + local.get $3 i32.const 1 i32.add - local.set $6 - br $for-loop|00 + local.set $3 + br $for-loop|04 end end global.get $~lib/memory/__stack_pointer @@ -25902,30 +25626,29 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 local.get $1 + i32.store offset=4 + local.get $8 local.get $2 - local.get $0 + local.get $1 call $~lib/array/Array<~lib/array/Array>#__set local.get $2 i32.const 1 i32.add local.set $2 - br $for-loop|0155 + br $for-loop|044 end end global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.tee $0 + local.get $8 i32.store offset=156 i32.const 1 global.set $~argumentsLength i32.const 0 - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -25937,24 +25660,24 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of1156 - block $0of1157 - block $outOfRange158 + block $1of146 + block $0of147 + block $outOfRange48 global.get $~argumentsLength i32.const 1 i32.sub - br_table $0of1157 $1of1156 $outOfRange158 + br_table $0of147 $1of146 $outOfRange48 end unreachable end i32.const 9392 - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 9392 i32.store end + local.get $8 local.get $0 - local.get $1 call $std/array/assertSorted<~lib/array/Array> global.get $~lib/memory/__stack_pointer i32.const 4 @@ -25967,23 +25690,23 @@ call $~lib/rt/__newArray local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 local.get $0 i32.store offset=164 - local.get $1 + local.get $2 i32.const 9520 i32.store offset=168 local.get $0 i32.load offset=4 - local.set $2 + local.set $7 local.get $0 i32.load offset=12 - local.set $3 - i32.const 0 local.set $0 i32.const 0 - local.set $6 - local.get $1 + local.set $1 + i32.const 0 + local.set $3 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -25995,10 +25718,10 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/string/joinBooleanArray - local.get $3 + local.get $0 i32.const 1 i32.sub - local.tee $3 + local.tee $2 i32.const 0 i32.lt_s if @@ -26007,97 +25730,97 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $1 + local.set $0 br $__inlined_func$~lib/util/string/joinBooleanArray end - block $folding-inner01 - local.get $3 + block $folding-inner06 + local.get $2 i32.eqz if i32.const 9456 i32.const 9488 - local.get $2 + local.get $7 i32.load8_u select - local.set $1 - br $folding-inner01 + local.set $0 + br $folding-inner06 end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 9516 i32.load i32.const 1 i32.shr_u - local.tee $7 + local.tee $8 i32.const 5 i32.add i32.mul i32.const 5 i32.add - local.tee $8 + local.tee $9 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store - loop $for-loop|13 + loop $for-loop|18 + local.get $2 local.get $3 - local.get $6 i32.gt_s if - local.get $2 - local.get $6 + local.get $3 + local.get $7 i32.add i32.load8_u - local.tee $9 + local.tee $10 i32.eqz i32.const 4 i32.add - local.set $10 - local.get $0 + local.set $11 + local.get $1 i32.const 1 i32.shl - local.get $1 + local.get $0 i32.add i32.const 9456 i32.const 9488 - local.get $9 - select local.get $10 + select + local.get $11 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $0 - local.get $10 + local.get $1 + local.get $11 i32.add - local.set $0 - local.get $7 + local.set $1 + local.get $8 if - local.get $0 + local.get $1 i32.const 1 i32.shl - local.get $1 + local.get $0 i32.add i32.const 9520 - local.get $7 + local.get $8 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $0 - local.get $7 + local.get $1 + local.get $8 i32.add - local.set $0 + local.set $1 end - local.get $6 + local.get $3 i32.const 1 i32.add - local.set $6 - br $for-loop|13 + local.set $3 + br $for-loop|18 end end local.get $2 - local.get $3 + local.get $7 i32.add i32.load8_u local.tee $2 @@ -26105,10 +25828,10 @@ i32.const 4 i32.add local.set $3 - local.get $0 + local.get $1 i32.const 1 i32.shl - local.get $1 + local.get $0 i32.add i32.const 9456 i32.const 9488 @@ -26118,18 +25841,18 @@ i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $8 - local.get $0 + local.get $9 + local.get $1 local.get $3 i32.add - local.tee $0 + local.tee $1 i32.gt_s if - local.get $1 local.get $0 + local.get $1 call $~lib/string/String#substring - local.set $1 - br $folding-inner01 + local.set $0 + br $folding-inner06 end global.get $~lib/memory/__stack_pointer i32.const 4 @@ -26143,13 +25866,13 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 9552 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9552 call $~lib/string/String.__eq i32.eqz @@ -26577,23 +26300,23 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 9520 i32.store local.get $0 i32.load offset=4 - local.set $2 + local.set $7 local.get $0 i32.load offset=12 - local.set $3 - i32.const 0 local.set $0 i32.const 0 - local.set $6 - local.get $1 + local.set $1 + i32.const 0 + local.set $3 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -26605,10 +26328,10 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/string/joinIntegerArray - local.get $3 + local.get $0 i32.const 1 i32.sub - local.tee $3 + local.tee $2 i32.const 0 i32.lt_s if @@ -26617,101 +26340,101 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $1 + local.set $0 br $__inlined_func$~lib/util/string/joinIntegerArray end - block $folding-inner04 - local.get $3 + block $folding-inner010 + local.get $2 i32.eqz if - local.get $2 + local.get $7 i32.load8_s call $~lib/util/number/itoa32 - local.set $1 - br $folding-inner04 + local.set $0 + br $folding-inner010 end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 9516 i32.load i32.const 1 i32.shr_u - local.tee $7 + local.tee $8 i32.const 11 i32.add i32.mul i32.const 11 i32.add - local.tee $8 + local.tee $9 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store - loop $for-loop|06125 + loop $for-loop|012 + local.get $2 local.get $3 - local.get $6 i32.gt_s if - local.get $0 + local.get $1 i32.const 1 i32.shl - local.get $1 + local.get $0 i32.add - local.get $2 - local.get $6 + local.get $3 + local.get $7 i32.add i32.load8_s call $~lib/util/number/itoa_buffered - local.get $0 + local.get $1 i32.add - local.set $0 - local.get $7 + local.set $1 + local.get $8 if - local.get $0 + local.get $1 i32.const 1 i32.shl - local.get $1 + local.get $0 i32.add i32.const 9520 - local.get $7 + local.get $8 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $0 - local.get $7 + local.get $1 + local.get $8 i32.add - local.set $0 + local.set $1 end - local.get $6 + local.get $3 i32.const 1 i32.add - local.set $6 - br $for-loop|06125 + local.set $3 + br $for-loop|012 end end - local.get $8 - local.get $0 + local.get $9 + local.get $1 i32.const 1 i32.shl - local.get $1 + local.get $0 i32.add local.get $2 - local.get $3 + local.get $7 i32.add i32.load8_s call $~lib/util/number/itoa_buffered - local.get $0 + local.get $1 i32.add - local.tee $0 + local.tee $1 i32.gt_s if - local.get $1 local.get $0 + local.get $1 call $~lib/string/String#substring - local.set $1 - br $folding-inner04 + local.set $0 + br $folding-inner010 end global.get $~lib/memory/__stack_pointer i32.const 4 @@ -26729,13 +26452,13 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 13584 i32.store offset=8 - local.get $1 + local.get $0 i32.const 13584 call $~lib/string/String.__eq i32.eqz @@ -26766,23 +26489,23 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 9520 i32.store local.get $0 i32.load offset=4 - local.set $2 + local.set $7 local.get $0 i32.load offset=12 - local.set $3 - i32.const 0 local.set $0 i32.const 0 - local.set $6 - local.get $1 + local.set $1 + i32.const 0 + local.set $3 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -26794,10 +26517,10 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/string/joinIntegerArray - local.get $3 + local.get $0 i32.const 1 i32.sub - local.tee $3 + local.tee $2 i32.const 0 i32.lt_s if @@ -26806,105 +26529,105 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $1 + local.set $0 br $__inlined_func$~lib/util/string/joinIntegerArray end - block $folding-inner07 - local.get $3 + block $folding-inner015 + local.get $2 i32.eqz if - local.get $2 + local.get $7 i32.load16_u call $~lib/util/number/utoa32 - local.set $1 - br $folding-inner07 + local.set $0 + br $folding-inner015 end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 9516 i32.load i32.const 1 i32.shr_u - local.tee $7 + local.tee $8 i32.const 10 i32.add i32.mul i32.const 10 i32.add - local.tee $8 + local.tee $9 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store - loop $for-loop|09 + loop $for-loop|017 + local.get $2 local.get $3 - local.get $6 i32.gt_s if - local.get $0 + local.get $1 i32.const 1 i32.shl - local.get $1 + local.get $0 i32.add - local.get $6 + local.get $3 i32.const 1 i32.shl - local.get $2 + local.get $7 i32.add i32.load16_u call $~lib/util/number/itoa_buffered - local.get $0 + local.get $1 i32.add - local.set $0 - local.get $7 + local.set $1 + local.get $8 if - local.get $0 + local.get $1 i32.const 1 i32.shl - local.get $1 + local.get $0 i32.add i32.const 9520 - local.get $7 + local.get $8 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $0 - local.get $7 + local.get $1 + local.get $8 i32.add - local.set $0 + local.set $1 end - local.get $6 + local.get $3 i32.const 1 i32.add - local.set $6 - br $for-loop|09 + local.set $3 + br $for-loop|017 end end - local.get $8 - local.get $0 + local.get $9 + local.get $1 i32.const 1 i32.shl - local.get $1 + local.get $0 i32.add - local.get $3 + local.get $2 i32.const 1 i32.shl - local.get $2 + local.get $7 i32.add i32.load16_u call $~lib/util/number/itoa_buffered - local.get $0 + local.get $1 i32.add - local.tee $0 + local.tee $1 i32.gt_s if - local.get $1 local.get $0 + local.get $1 call $~lib/string/String#substring - local.set $1 - br $folding-inner07 + local.set $0 + br $folding-inner015 end global.get $~lib/memory/__stack_pointer i32.const 4 @@ -26922,13 +26645,13 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 13648 i32.store offset=8 - local.get $1 + local.get $0 i32.const 13648 call $~lib/string/String.__eq i32.eqz @@ -26973,9 +26696,10 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer + local.tee $1 local.get $0 i32.store - global.get $~lib/memory/__stack_pointer + local.get $1 i32.const 13744 i32.store offset=8 local.get $0 @@ -27009,23 +26733,343 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 9520 i32.store local.get $0 - call $~lib/array/Array#join + i32.load offset=4 + local.set $7 + local.get $0 + i32.load offset=12 local.set $0 + i32.const 0 + local.set $1 + i32.const 0 + local.set $3 + local.get $2 + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 15652 + i32.lt_s + br_if $folding-inner3 + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store + block $__inlined_func$~lib/util/string/joinIntegerArray + local.get $0 + i32.const 1 + i32.sub + local.tee $2 + i32.const 0 + i32.lt_s + if + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + i32.const 9232 + local.set $0 + br $__inlined_func$~lib/util/string/joinIntegerArray + end + block $folding-inner019 + local.get $2 + i32.eqz + if + local.get $7 + i64.load + i64.extend32_s + local.set $6 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 15652 + i32.lt_s + br_if $folding-inner3 + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store + block $__inlined_func$~lib/util/number/itoa64 + local.get $6 + i64.eqz + if + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + i32.const 9824 + local.set $0 + br $__inlined_func$~lib/util/number/itoa64 + end + i64.const 0 + local.get $6 + i64.sub + local.get $6 + local.get $6 + i64.const 63 + i64.shr_u + i32.wrap_i64 + local.tee $1 + select + local.tee $6 + i64.const 4294967295 + i64.le_u + if + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.wrap_i64 + local.tee $2 + local.tee $0 + i32.const 100000 + i32.lt_u + if (result i32) + local.get $0 + i32.const 100 + i32.lt_u + if (result i32) + local.get $0 + i32.const 10 + i32.ge_u + i32.const 1 + i32.add + else + local.get $0 + i32.const 10000 + i32.ge_u + i32.const 3 + i32.add + local.get $0 + i32.const 1000 + i32.ge_u + i32.add + end + else + local.get $0 + i32.const 10000000 + i32.lt_u + if (result i32) + local.get $0 + i32.const 1000000 + i32.ge_u + i32.const 6 + i32.add + else + local.get $0 + i32.const 1000000000 + i32.ge_u + i32.const 8 + i32.add + local.get $0 + i32.const 100000000 + i32.ge_u + i32.add + end + end + local.get $1 + i32.add + local.tee $3 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $0 + i32.store + local.get $0 + local.get $2 + local.get $3 + call $~lib/util/number/utoa32_dec_lut + else + global.get $~lib/memory/__stack_pointer + local.get $6 + i64.const 1000000000000000 + i64.lt_u + if (result i32) + local.get $6 + i64.const 1000000000000 + i64.lt_u + if (result i32) + local.get $6 + i64.const 100000000000 + i64.ge_u + i32.const 10 + i32.add + local.get $6 + i64.const 10000000000 + i64.ge_u + i32.add + else + local.get $6 + i64.const 100000000000000 + i64.ge_u + i32.const 13 + i32.add + local.get $6 + i64.const 10000000000000 + i64.ge_u + i32.add + end + else + local.get $6 + i64.const 100000000000000000 + i64.lt_u + if (result i32) + local.get $6 + i64.const 10000000000000000 + i64.ge_u + i32.const 16 + i32.add + else + local.get $6 + i64.const -8446744073709551616 + i64.ge_u + i32.const 18 + i32.add + local.get $6 + i64.const 1000000000000000000 + i64.ge_u + i32.add + end + end + local.get $1 + i32.add + local.tee $2 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $0 + i32.store + local.get $0 + local.get $6 + local.get $2 + call $~lib/util/number/utoa64_dec_lut + end + local.get $1 + if + local.get $0 + i32.const 45 + i32.store16 + end + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + end + br $folding-inner019 + end + global.get $~lib/memory/__stack_pointer + local.get $2 + i32.const 9516 + i32.load + i32.const 1 + i32.shr_u + local.tee $8 + i32.const 21 + i32.add + i32.mul + i32.const 21 + i32.add + local.tee $9 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $0 + i32.store + loop $for-loop|021 + local.get $2 + local.get $3 + i32.gt_s + if + local.get $1 + i32.const 1 + i32.shl + local.get $0 + i32.add + local.get $3 + i32.const 3 + i32.shl + local.get $7 + i32.add + i64.load + call $~lib/util/number/itoa_buffered + local.get $1 + i32.add + local.set $1 + local.get $8 + if + local.get $1 + i32.const 1 + i32.shl + local.get $0 + i32.add + i32.const 9520 + local.get $8 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $1 + local.get $8 + i32.add + local.set $1 + end + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $for-loop|021 + end + end + local.get $9 + local.get $1 + i32.const 1 + i32.shl + local.get $0 + i32.add + local.get $2 + i32.const 3 + i32.shl + local.get $7 + i32.add + i64.load + call $~lib/util/number/itoa_buffered + local.get $1 + i32.add + local.tee $1 + i32.gt_s + if + local.get $0 + local.get $1 + call $~lib/string/String#substring + local.set $0 + br $folding-inner019 + end + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + br $__inlined_func$~lib/util/string/joinIntegerArray + end + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer + local.tee $1 local.get $0 i32.store - global.get $~lib/memory/__stack_pointer + local.get $1 i32.const 13888 i32.store offset=8 local.get $0 @@ -27151,9 +27195,9 @@ local.set $2 local.get $1 i32.load offset=12 - local.set $3 - i32.const 0 local.set $1 + i32.const 0 + local.set $3 local.get $0 i32.const 12 i32.sub @@ -27170,10 +27214,10 @@ i32.const 0 i32.store offset=8 block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> - local.get $3 + local.get $1 i32.const 1 i32.sub - local.tee $3 + local.tee $0 i32.const 0 i32.lt_s if @@ -27182,10 +27226,10 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $0 + local.set $1 br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> end - local.get $3 + local.get $0 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -27200,7 +27244,7 @@ else i32.const 9232 end - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add @@ -27208,7 +27252,7 @@ br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> end i32.const 9232 - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 9232 i32.store offset=4 @@ -27216,74 +27260,74 @@ i32.load i32.const 1 i32.shr_u - local.set $6 - loop $for-loop|011132 - local.get $1 + local.set $7 + loop $for-loop|024 + local.get $0 local.get $3 - i32.lt_s + i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.const 2 i32.shl local.get $2 i32.add i32.load - local.tee $7 + local.tee $8 i32.store - local.get $7 + local.get $8 if global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $8 call $~lib/array/Array#toString - local.set $7 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $8 i32.store offset=8 - local.get $0 - local.get $7 + local.get $1 + local.get $8 call $~lib/string/String.__concat - local.tee $0 + local.tee $1 i32.store offset=4 end - local.get $6 + local.get $7 if global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 9520 call $~lib/string/String.__concat - local.tee $0 + local.tee $1 i32.store offset=4 end - local.get $1 + local.get $3 i32.const 1 i32.add - local.set $1 - br $for-loop|011132 + local.set $3 + br $for-loop|024 end end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.const 2 i32.shl local.get $2 i32.add i32.load - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 call $~lib/array/Array#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=8 local.get $0 + i32.store offset=8 local.get $1 + local.get $0 call $~lib/string/String.__concat - local.tee $0 + local.tee $1 i32.store offset=4 end global.get $~lib/memory/__stack_pointer @@ -27296,13 +27340,13 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store + local.tee $0 local.get $1 + i32.store + local.get $0 i32.const 14304 i32.store offset=8 - local.get $0 + local.get $1 i32.const 14304 call $~lib/string/String.__eq i32.eqz @@ -27366,9 +27410,9 @@ local.set $2 local.get $1 i32.load offset=12 - local.set $3 - i32.const 0 local.set $1 + i32.const 0 + local.set $3 local.get $0 i32.const 12 i32.sub @@ -27385,10 +27429,10 @@ i32.const 0 i32.store offset=8 block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> - local.get $3 + local.get $1 i32.const 1 i32.sub - local.tee $3 + local.tee $0 i32.const 0 i32.lt_s if @@ -27397,10 +27441,10 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $0 + local.set $1 br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> end - local.get $3 + local.get $0 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -27415,7 +27459,7 @@ else i32.const 9232 end - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add @@ -27423,7 +27467,7 @@ br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> end i32.const 9232 - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 9232 i32.store offset=4 @@ -27431,74 +27475,74 @@ i32.load i32.const 1 i32.shr_u - local.set $6 - loop $for-loop|013 - local.get $1 + local.set $7 + loop $for-loop|027 + local.get $0 local.get $3 - i32.lt_s + i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.const 2 i32.shl local.get $2 i32.add i32.load - local.tee $7 + local.tee $8 i32.store - local.get $7 + local.get $8 if global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $8 call $~lib/array/Array#toString - local.set $7 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $8 i32.store offset=8 - local.get $0 - local.get $7 + local.get $1 + local.get $8 call $~lib/string/String.__concat - local.tee $0 + local.tee $1 i32.store offset=4 end - local.get $6 + local.get $7 if global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 9520 call $~lib/string/String.__concat - local.tee $0 + local.tee $1 i32.store offset=4 end - local.get $1 + local.get $3 i32.const 1 i32.add - local.set $1 - br $for-loop|013 + local.set $3 + br $for-loop|027 end end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.const 2 i32.shl local.get $2 i32.add i32.load - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 call $~lib/array/Array#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=8 local.get $0 + i32.store offset=8 local.get $1 + local.get $0 call $~lib/string/String.__concat - local.tee $0 + local.tee $1 i32.store offset=4 end global.get $~lib/memory/__stack_pointer @@ -27511,13 +27555,13 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store + local.tee $0 local.get $1 + i32.store + local.get $0 i32.const 14304 i32.store offset=8 - local.get $0 + local.get $1 i32.const 14304 call $~lib/string/String.__eq i32.eqz @@ -27589,9 +27633,9 @@ local.set $2 local.get $1 i32.load offset=12 - local.set $3 - i32.const 0 local.set $1 + i32.const 0 + local.set $3 local.get $0 i32.const 12 i32.sub @@ -27608,10 +27652,10 @@ i32.const 0 i32.store offset=8 block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array<~lib/array/Array>> - local.get $3 + local.get $1 i32.const 1 i32.sub - local.tee $3 + local.tee $0 i32.const 0 i32.lt_s if @@ -27620,10 +27664,10 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $0 + local.set $1 br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array<~lib/array/Array>> end - local.get $3 + local.get $0 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -27638,7 +27682,7 @@ else i32.const 9232 end - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add @@ -27646,7 +27690,7 @@ br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array<~lib/array/Array>> end i32.const 9232 - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 9232 i32.store offset=4 @@ -27654,74 +27698,74 @@ i32.load i32.const 1 i32.shr_u - local.set $6 - loop $for-loop|015 - local.get $1 + local.set $7 + loop $for-loop|030 + local.get $0 local.get $3 - i32.lt_s + i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.const 2 i32.shl local.get $2 i32.add i32.load - local.tee $7 + local.tee $8 i32.store - local.get $7 + local.get $8 if global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $8 call $~lib/array/Array<~lib/array/Array>#toString - local.set $7 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $8 i32.store offset=8 - local.get $0 - local.get $7 + local.get $1 + local.get $8 call $~lib/string/String.__concat - local.tee $0 + local.tee $1 i32.store offset=4 end - local.get $6 + local.get $7 if global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 9520 call $~lib/string/String.__concat - local.tee $0 + local.tee $1 i32.store offset=4 end - local.get $1 + local.get $3 i32.const 1 i32.add - local.set $1 - br $for-loop|015 + local.set $3 + br $for-loop|030 end end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.const 2 i32.shl local.get $2 i32.add i32.load - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 call $~lib/array/Array<~lib/array/Array>#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=8 local.get $0 + i32.store offset=8 local.get $1 + local.get $0 call $~lib/string/String.__concat - local.tee $0 + local.tee $1 i32.store offset=4 end global.get $~lib/memory/__stack_pointer @@ -27734,13 +27778,13 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store + local.tee $0 local.get $1 + i32.store + local.get $0 i32.const 13008 i32.store offset=8 - local.get $0 + local.get $1 i32.const 13008 call $~lib/string/String.__eq i32.eqz @@ -27803,9 +27847,9 @@ global.get $~lib/memory/__stack_pointer local.get $1 call $~lib/array/Array<~lib/array/Array>#flat - local.tee $1 + local.tee $0 i32.store offset=128 - local.get $1 + local.get $0 i32.load offset=12 i32.const 10 i32.ne @@ -27818,16 +27862,16 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $for-loop|7 - local.get $0 + local.get $1 i32.const 10 i32.lt_s if - local.get $1 local.get $0 + local.get $1 call $~lib/array/Array#__get - local.get $0 + local.get $1 i32.ne if i32.const 0 @@ -27837,10 +27881,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|7 end end @@ -27851,13 +27895,13 @@ i32.const 42 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $7 i32.store offset=160 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.load offset=4 i32.store offset=140 - local.get $3 + local.get $7 i32.const 0 i32.const 1 i32.const 2 @@ -27865,7 +27909,7 @@ i32.const 14608 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $3 + local.get $7 i32.const 1 i32.const 3 i32.const 2 @@ -27873,7 +27917,7 @@ i32.const 14704 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $3 + local.get $7 i32.const 2 i32.const 3 i32.const 2 @@ -27881,7 +27925,7 @@ i32.const 14832 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $3 + local.get $7 i32.const 3 i32.const 1 i32.const 2 @@ -27890,13 +27934,13 @@ call $~lib/rt/__newArray call $~lib/array/Array#__uset local.get $0 - local.get $3 + local.get $7 i32.store offset=140 global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $1 + local.set $3 i32.const 0 - local.set $6 + local.set $1 i32.const 0 local.set $2 global.get $~lib/memory/__stack_pointer @@ -27910,45 +27954,45 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - local.get $3 + local.get $7 i32.load offset=4 local.set $8 - local.get $3 + local.get $7 i32.load offset=12 - local.set $3 - loop $for-loop|0137 - local.get $1 + local.set $7 + loop $for-loop|0217 local.get $3 + local.get $7 i32.lt_s if - local.get $1 + local.get $3 i32.const 2 i32.shl local.get $8 i32.add i32.load - local.tee $0 + local.tee $9 if (result i32) - local.get $0 + local.get $9 i32.load offset=12 else i32.const 0 end - local.get $6 - i32.add - local.set $6 local.get $1 - i32.const 1 i32.add local.set $1 - br $for-loop|0137 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $for-loop|0217 end end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $1 i32.const 2 i32.shl - local.tee $1 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new local.tee $9 @@ -27957,73 +28001,73 @@ i32.const 16 i32.const 31 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $10 i32.store offset=4 - local.get $0 - local.get $6 - i32.store offset=12 - local.get $0 + local.get $10 local.get $1 + i32.store offset=12 + local.get $10 + local.get $3 i32.store offset=8 - local.get $0 + local.get $10 local.get $9 i32.store offset=4 - local.get $0 + local.get $10 local.get $9 i32.store local.get $9 if - local.get $0 + local.get $10 local.get $9 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end i32.const 0 - local.set $1 - loop $for-loop|1138 - local.get $1 + local.set $3 + loop $for-loop|1218 local.get $3 + local.get $7 i32.lt_s if - local.get $1 + local.get $3 i32.const 2 i32.shl local.get $8 i32.add i32.load - local.tee $10 + local.tee $11 if local.get $2 local.get $9 i32.add - local.get $10 + local.get $11 i32.load offset=4 - local.get $10 + local.get $11 i32.load offset=12 i32.const 2 i32.shl - local.tee $10 + local.tee $11 call $~lib/memory/memory.copy local.get $2 - local.get $10 + local.get $11 i32.add local.set $2 end - local.get $1 + local.get $3 i32.const 1 i32.add - local.set $1 - br $for-loop|1138 + local.set $3 + br $for-loop|1218 end end i32.const 0 - local.set $1 - loop $for-loop|2139 + local.set $3 + loop $for-loop|2219 local.get $1 - local.get $6 - i32.lt_s + local.get $3 + i32.gt_s if - local.get $1 + local.get $3 i32.const 2 i32.shl local.get $9 @@ -28036,19 +28080,18 @@ i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $3 i32.const 1 i32.add - local.set $1 - br $for-loop|2139 + local.set $3 + br $for-loop|2219 end end global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 - local.tee $1 + local.get $10 i32.store offset=160 global.get $~lib/memory/__stack_pointer i32.const 8 @@ -28056,9 +28099,9 @@ i32.const 31 i32.const 14928 call $~lib/rt/__newArray - local.tee $2 + local.tee $0 i32.store offset=148 - local.get $0 + local.get $10 i32.load offset=12 i32.const 8 i32.ne @@ -28071,29 +28114,29 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $for-loop|8 - local.get $2 - i32.load offset=12 local.get $0 + i32.load offset=12 + local.get $1 i32.gt_s if + local.get $10 local.get $1 - local.get $0 call $~lib/array/Array#__get - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $3 - i32.store local.get $2 + i32.store local.get $0 + local.get $1 call $~lib/array/Array#__get - local.set $6 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $3 i32.store offset=8 + local.get $2 local.get $3 - local.get $6 call $~lib/string/String.__eq i32.eqz if @@ -28104,10 +28147,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|8 end end @@ -28196,7 +28239,7 @@ i32.const 15120 i32.store offset=164 i32.const 0 - local.set $0 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -28206,77 +28249,77 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 i32.const 0 i32.store offset=8 - local.get $3 + local.get $2 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $2 i32.const 2 i32.const 26 i32.const 0 call $~lib/rt/__newArray - local.tee $6 + local.tee $7 i32.store - local.get $6 + local.get $7 i32.load offset=4 - local.set $7 - loop $for-loop|0163 - local.get $3 + local.set $8 + loop $for-loop|033 + local.get $2 local.get $1 i32.load offset=12 - local.tee $8 - local.get $3 - local.get $8 + local.tee $9 + local.get $2 + local.get $9 i32.lt_s select - local.get $0 + local.get $3 i32.gt_s if global.get $~lib/memory/__stack_pointer - local.tee $8 - local.get $0 + local.tee $9 + local.get $3 i32.const 2 i32.shl - local.tee $9 + local.tee $10 local.get $1 i32.load offset=4 i32.add i32.load - local.tee $10 + local.tee $11 i32.store offset=4 i32.const 3 global.set $~argumentsLength - local.get $8 - local.get $10 - local.get $0 + local.get $9 + local.get $11 + local.get $3 local.get $1 i32.const 15120 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - local.tee $8 + local.tee $9 i32.store offset=8 - local.get $7 - local.get $9 - i32.add local.get $8 + local.get $10 + i32.add + local.get $9 i32.store - local.get $8 + local.get $9 if - local.get $6 - local.get $8 + local.get $7 + local.get $9 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 + local.get $3 i32.const 1 i32.add - local.set $0 - br $for-loop|0163 + local.set $3 + br $for-loop|033 end end global.get $~lib/memory/__stack_pointer @@ -28284,9 +28327,9 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $7 i32.store - local.get $6 + local.get $7 call $~lib/array/Array<~lib/array/Array>#flat local.tee $0 i32.store offset=144 @@ -28366,12 +28409,12 @@ i32.const 0 i32.gt_s if - loop $while-continue|0165 + loop $while-continue|0224 global.get $~lib/rt/itcms/state if call $~lib/rt/itcms/step drop - br $while-continue|0165 + br $while-continue|0224 end end end @@ -28462,7 +28505,7 @@ end local.get $0 i32.load offset=4 - local.set $4 + local.set $0 loop $while-continue|0 local.get $2 local.get $3 @@ -28472,12 +28515,12 @@ local.get $2 i32.const 2 i32.shl - local.get $4 + local.get $0 i32.add i32.load - local.tee $0 + local.tee $4 i32.store - local.get $0 + local.get $4 local.get $1 call $~lib/string/String.__eq if @@ -28635,7 +28678,6 @@ (func $~lib/rt/__newArray (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (local $4 i32) (local $5 i32) - (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -28655,43 +28697,43 @@ local.tee $4 i32.const 0 i32.store + local.get $4 local.get $0 local.get $1 i32.shl - local.tee $1 + local.tee $4 local.set $5 - local.get $1 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.set $6 + local.set $1 local.get $3 if - local.get $6 + local.get $1 local.get $3 local.get $5 call $~lib/memory/memory.copy end - local.get $4 - local.get $6 + local.get $1 i32.store i32.const 16 local.get $2 call $~lib/rt/itcms/__new local.tee $2 - local.get $6 + local.get $1 i32.store - local.get $6 + local.get $1 if local.get $2 - local.get $6 + local.get $1 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $2 - local.get $6 + local.get $1 i32.store offset=4 local.get $2 - local.get $1 + local.get $4 i32.store offset=8 local.get $2 local.get $0 @@ -28762,17 +28804,17 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store + local.get $0 + i32.load offset=12 + local.tee $4 local.get $1 i32.load offset=12 i32.const 0 local.get $1 select local.tee $2 - local.get $0 - i32.load offset=12 - local.tee $3 i32.add - local.tee $4 + local.tee $3 i32.const 268435455 i32.gt_u if @@ -28784,7 +28826,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 2 i32.const 3 i32.const 0 @@ -28793,16 +28835,16 @@ i32.store local.get $5 i32.load offset=4 - local.tee $4 + local.tee $3 local.get $0 i32.load offset=4 - local.get $3 + local.get $4 i32.const 2 i32.shl local.tee $0 call $~lib/memory/memory.copy local.get $0 - local.get $4 + local.get $3 i32.add local.get $1 i32.load offset=4 @@ -28979,39 +29021,39 @@ i32.const 0 i32.gt_s select - local.tee $5 + local.tee $2 i32.const 2 i32.const 3 i32.const 0 call $~lib/rt/__newArray - local.tee $6 + local.tee $5 i32.store - local.get $6 + local.get $5 i32.load offset=4 local.get $0 i32.load offset=4 - local.tee $1 + local.tee $6 local.get $4 i32.const 2 i32.shl i32.add - local.tee $2 - local.get $5 + local.tee $1 + local.get $2 i32.const 2 i32.shl call $~lib/memory/memory.copy local.get $3 + local.get $2 local.get $4 - local.get $5 i32.add local.tee $4 i32.ne if - local.get $2 + local.get $1 local.get $4 i32.const 2 i32.shl - local.get $1 + local.get $6 i32.add local.get $3 local.get $4 @@ -29022,14 +29064,14 @@ end local.get $0 local.get $3 - local.get $5 + local.get $2 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $5 ) (func $~lib/array/Array#splice (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -29281,24 +29323,24 @@ local.get $3 local.get $0 i32.load offset=12 - local.tee $4 + local.tee $3 i32.const 2 i32.const 3 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $4 i32.store - local.get $3 + local.get $4 i32.load offset=4 local.set $5 loop $for-loop|0 - local.get $4 + local.get $3 local.get $0 i32.load offset=12 - local.tee $3 + local.tee $4 local.get $3 local.get $4 - i32.gt_s + i32.lt_s select local.get $2 i32.gt_s @@ -29311,13 +29353,13 @@ i32.load offset=4 i32.add i32.load - local.set $3 + local.set $4 i32.const 3 global.set $~argumentsLength local.get $5 local.get $6 i32.add - local.get $3 + local.get $4 local.get $2 local.get $0 local.get $1 @@ -29366,17 +29408,17 @@ i32.const 3 i32.const 0 call $~lib/rt/__newArray - local.tee $4 + local.tee $3 i32.store local.get $0 i32.load offset=12 - local.set $3 + local.set $4 loop $for-loop|0 - local.get $3 + local.get $4 local.get $0 i32.load offset=12 local.tee $5 - local.get $3 + local.get $4 local.get $5 i32.lt_s select @@ -29400,7 +29442,7 @@ i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $4 + local.get $3 local.get $5 call $~lib/array/Array#push drop @@ -29416,7 +29458,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $3 ) (func $std/array/Dim#constructor (result i32) (local $0 i32) @@ -29781,6 +29823,8 @@ i32.shr_u local.tee $2 local.get $2 + i32.const 0 + i32.gt_s select local.tee $3 local.get $1 @@ -29900,48 +29944,48 @@ i32.shr_u local.tee $0 select - local.tee $1 local.tee $2 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -29949,7 +29993,7 @@ end local.get $0 i32.add - local.tee $2 + local.tee $1 i32.const 1 i32.shl i32.const 1 @@ -29957,8 +30001,8 @@ local.tee $3 i32.store local.get $3 - local.get $1 local.get $2 + local.get $1 call $~lib/util/number/utoa32_dec_lut local.get $0 if @@ -30005,46 +30049,47 @@ end global.get $~lib/memory/__stack_pointer local.get $0 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -30094,19 +30139,19 @@ i64.store local.get $0 i32.load offset=4 - local.set $4 + local.set $6 local.get $0 i32.load offset=12 local.set $5 loop $for-loop|0 - local.get $2 + local.get $4 local.get $5 i32.lt_s if - local.get $2 + local.get $4 i32.const 2 i32.shl - local.get $4 + local.get $6 i32.add i32.load local.tee $0 @@ -30119,10 +30164,10 @@ local.get $3 i32.add local.set $3 - local.get $2 + local.get $4 i32.const 1 i32.add - local.set $2 + local.set $4 br $for-loop|0 end end @@ -30130,7 +30175,7 @@ local.get $3 i32.const 2 i32.shl - local.tee $2 + local.tee $4 i32.const 0 call $~lib/rt/itcms/__new local.tee $0 @@ -30139,38 +30184,41 @@ i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $2 i32.store offset=4 - local.get $6 + local.get $2 local.get $3 i32.store offset=12 - local.get $6 local.get $2 + local.get $4 i32.store offset=8 - local.get $6 + local.get $2 local.get $0 i32.store offset=4 - local.get $6 + local.get $2 local.get $0 i32.store + local.get $2 + local.set $3 local.get $0 + local.tee $4 if - local.get $6 - local.get $0 + local.get $3 + local.get $4 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end i32.const 0 - local.set $2 + local.set $4 loop $for-loop|1 - local.get $2 + local.get $4 local.get $5 i32.lt_s if - local.get $2 + local.get $4 i32.const 2 i32.shl - local.get $4 + local.get $6 i32.add i32.load local.tee $3 @@ -30191,10 +30239,10 @@ i32.add local.set $1 end - local.get $2 + local.get $4 i32.const 1 i32.add - local.set $2 + local.set $4 br $for-loop|1 end end @@ -30202,7 +30250,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $2 ) (func $export:~lib/array/Array#get:dataStart (param $0 i32) (result i32) (local $1 i32) @@ -30240,11 +30288,11 @@ i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.get $0 i32.store @@ -30266,7 +30314,7 @@ global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -30289,7 +30337,7 @@ global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store @@ -30351,8 +30399,7 @@ if local.get $0 local.get $4 - i32.const 0 - call $byn-split-outlined-A$~lib/rt/itcms/__link + call $byn-split-outlined-A$~lib/rt/itcms/__link_0 end local.get $0 local.get $4 @@ -30467,13 +30514,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 local.get $0 i32.store - local.get $3 + local.get $2 local.get $1 i32.store offset=4 block $__inlined_func$~lib/array/Array#every (result i32) + i32.const 0 + local.set $2 local.get $0 i32.load offset=12 local.set $3 @@ -30543,16 +30592,18 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 local.get $0 i32.store - local.get $3 + local.get $2 local.get $1 i32.store offset=4 - local.get $0 - i32.load offset=12 - local.set $3 - block $__inlined_func$~lib/array/Array#findIndex + block $__inlined_func$~lib/array/Array#findIndex (result i32) + i32.const 0 + local.set $2 + local.get $0 + i32.load offset=12 + local.set $3 loop $for-loop|0 local.get $3 local.get $0 @@ -30572,14 +30623,18 @@ i32.shl i32.add i32.load + local.set $4 i32.const 3 global.set $~argumentsLength local.get $2 + local.get $4 + local.get $2 local.get $0 local.get $1 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#findIndex + drop local.get $2 i32.const 1 i32.add @@ -30588,13 +30643,11 @@ end end i32.const -1 - local.set $2 end global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 ) (func $export:~lib/array/Array#findLastIndex (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -30621,12 +30674,12 @@ local.get $2 local.get $1 i32.store offset=4 - local.get $0 - i32.load offset=12 - i32.const 1 - i32.sub - local.set $2 - block $__inlined_func$~lib/array/Array#findLastIndex + block $__inlined_func$~lib/array/Array#findLastIndex (result i32) + local.get $0 + i32.load offset=12 + i32.const 1 + i32.sub + local.set $2 loop $for-loop|0 local.get $2 i32.const 0 @@ -30639,14 +30692,18 @@ i32.shl i32.add i32.load + local.set $3 i32.const 3 global.set $~argumentsLength local.get $2 + local.get $3 + local.get $2 local.get $0 local.get $1 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#findLastIndex + drop local.get $2 i32.const 1 i32.sub @@ -30655,13 +30712,11 @@ end end i32.const -1 - local.set $2 end global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 ) (func $export:~lib/array/Array#at (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -30693,7 +30748,8 @@ select local.get $1 i32.add - local.tee $1 + local.set $1 + local.get $1 local.get $2 i32.ge_u if @@ -30864,7 +30920,8 @@ i32.const 0 local.set $2 end - block $__inlined_func$~lib/array/Array#indexOf + block $__inlined_func$~lib/array/Array#indexOf (result i32) + i32.const -1 local.get $2 local.get $0 i32.load offset=12 @@ -30873,11 +30930,8 @@ i32.const 1 local.get $3 select - if - i32.const -1 - local.set $2 - br $__inlined_func$~lib/array/Array#indexOf - end + br_if $__inlined_func$~lib/array/Array#indexOf + drop local.get $2 i32.const 0 i32.lt_s @@ -30901,6 +30955,7 @@ local.get $3 i32.lt_s if + local.get $2 local.get $1 local.get $2 i32.const 2 @@ -30910,6 +30965,7 @@ i32.load i32.eq br_if $__inlined_func$~lib/array/Array#indexOf + drop local.get $2 i32.const 1 i32.add @@ -30918,15 +30974,13 @@ end end i32.const -1 - local.set $2 end + i32.const 0 + i32.ge_s global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 - i32.const 0 - i32.ge_s ) (func $export:~lib/array/Array#indexOf@varargs (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -30961,7 +31015,8 @@ i32.const 0 local.set $2 end - block $__inlined_func$~lib/array/Array#indexOf + block $__inlined_func$~lib/array/Array#indexOf (result i32) + i32.const -1 local.get $2 local.get $0 i32.load offset=12 @@ -30970,11 +31025,8 @@ i32.const 1 local.get $3 select - if - i32.const -1 - local.set $2 - br $__inlined_func$~lib/array/Array#indexOf - end + br_if $__inlined_func$~lib/array/Array#indexOf + drop local.get $2 i32.const 0 i32.lt_s @@ -30998,6 +31050,7 @@ local.get $3 i32.lt_s if + local.get $2 local.get $1 local.get $2 i32.const 2 @@ -31007,6 +31060,7 @@ i32.load i32.eq br_if $__inlined_func$~lib/array/Array#indexOf + drop local.get $2 i32.const 1 i32.add @@ -31015,17 +31069,14 @@ end end i32.const -1 - local.set $2 end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 ) (func $export:~lib/array/Array#lastIndexOf@varargs (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) - (local $4 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -31058,23 +31109,23 @@ i32.load offset=12 local.set $2 end - i32.const -1 - local.set $3 - block $__inlined_func$~lib/array/Array#lastIndexOf + block $__inlined_func$~lib/array/Array#lastIndexOf (result i32) + i32.const -1 local.get $0 i32.load offset=12 - local.tee $4 + local.tee $3 i32.eqz br_if $__inlined_func$~lib/array/Array#lastIndexOf + drop local.get $2 - local.get $4 + local.get $3 i32.add - local.get $4 + local.get $3 i32.const 1 i32.sub local.get $2 local.get $2 - local.get $4 + local.get $3 i32.ge_s select local.get $2 @@ -31090,9 +31141,9 @@ i32.const 0 i32.ge_s if + local.get $2 local.get $1 local.get $2 - local.tee $3 i32.const 2 i32.shl local.get $0 @@ -31100,7 +31151,8 @@ i32.load i32.eq br_if $__inlined_func$~lib/array/Array#lastIndexOf - local.get $3 + drop + local.get $2 i32.const 1 i32.sub local.set $2 @@ -31108,13 +31160,11 @@ end end i32.const -1 - local.set $3 end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 ) (func $export:~lib/array/Array#push (param $0 i32) (param $1 i32) (result i32) global.get $~lib/memory/__stack_pointer @@ -31148,11 +31198,11 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -31175,17 +31225,17 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store + local.get $0 + i32.load offset=12 + local.tee $4 local.get $1 i32.load offset=12 i32.const 0 local.get $1 select local.tee $2 - local.get $0 - i32.load offset=12 - local.tee $3 i32.add - local.tee $4 + local.tee $3 i32.const 268435455 i32.gt_u if @@ -31197,7 +31247,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 2 i32.const 7 i32.const 0 @@ -31206,16 +31256,16 @@ i32.store local.get $5 i32.load offset=4 - local.tee $4 + local.tee $3 local.get $0 i32.load offset=4 - local.get $3 + local.get $4 i32.const 2 i32.shl local.tee $0 call $~lib/memory/memory.copy local.get $0 - local.get $4 + local.get $3 i32.add local.get $1 i32.load offset=4 @@ -31355,12 +31405,14 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 local.get $0 i32.store - local.get $3 + local.get $2 local.get $1 i32.store offset=4 + i32.const 0 + local.set $2 local.get $0 i32.load offset=12 local.set $3 @@ -31407,11 +31459,11 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -31441,17 +31493,17 @@ i32.const 7 i32.const 0 call $~lib/rt/__newArray - local.tee $4 + local.tee $3 i32.store local.get $0 i32.load offset=12 - local.set $3 + local.set $4 loop $for-loop|0 - local.get $3 + local.get $4 local.get $0 i32.load offset=12 local.tee $5 - local.get $3 + local.get $4 local.get $5 i32.lt_s select @@ -31475,7 +31527,7 @@ i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $4 + local.get $3 local.get $5 call $~lib/array/Array#push drop @@ -31495,7 +31547,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $3 return end i32.const 32064 @@ -31543,10 +31595,10 @@ end local.get $0 i32.load offset=4 - local.tee $1 + local.tee $2 i32.load - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.const 4 i32.add local.get $3 @@ -31557,7 +31609,7 @@ i32.shl local.tee $3 call $~lib/memory/memory.copy - local.get $1 + local.get $2 local.get $3 i32.add i32.const 0 @@ -31590,13 +31642,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 local.get $0 i32.store - local.get $3 + local.get $2 local.get $1 i32.store offset=4 block $__inlined_func$~lib/array/Array#some (result i32) + i32.const 0 + local.set $2 local.get $0 i32.load offset=12 local.set $3 @@ -31674,11 +31728,11 @@ ) (func $export:~lib/array/Array#slice@varargs (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -31809,11 +31863,11 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -31885,39 +31939,39 @@ i32.const 0 i32.gt_s select - local.tee $5 + local.tee $2 i32.const 2 i32.const 7 i32.const 0 call $~lib/rt/__newArray - local.tee $6 + local.tee $5 i32.store - local.get $6 + local.get $5 i32.load offset=4 local.get $0 i32.load offset=4 - local.tee $1 + local.tee $6 local.get $4 i32.const 2 i32.shl i32.add - local.tee $2 - local.get $5 + local.tee $1 + local.get $2 i32.const 2 i32.shl call $~lib/memory/memory.copy local.get $3 + local.get $2 local.get $4 - local.get $5 i32.add local.tee $4 i32.ne if - local.get $2 + local.get $1 local.get $4 i32.const 2 i32.shl - local.get $1 + local.get $6 i32.add local.get $3 local.get $4 @@ -31928,7 +31982,7 @@ end local.get $0 local.get $3 - local.get $5 + local.get $2 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -31939,7 +31993,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $5 return end i32.const 32064 @@ -31990,7 +32044,7 @@ local.get $4 i32.const 1 i32.sub - local.set $5 + local.set $4 loop $while-continue|0 local.get $1 local.get $3 @@ -32003,9 +32057,9 @@ i32.add local.tee $6 i32.load - local.set $4 + local.set $5 local.get $6 - local.get $5 + local.get $4 local.get $1 i32.sub i32.const 2 @@ -32016,7 +32070,7 @@ i32.load i32.store local.get $6 - local.get $4 + local.get $5 i32.store local.get $1 i32.const 1 @@ -32066,11 +32120,11 @@ ) (func $export:~lib/array/Array#join@varargs (param $0 i32) (param $1 i32) (result i32) (local $2 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -32187,11 +32241,11 @@ i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.get $0 i32.store @@ -32213,7 +32267,7 @@ global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -32236,7 +32290,7 @@ global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store @@ -32296,8 +32350,7 @@ if local.get $0 local.get $4 - i32.const 0 - call $byn-split-outlined-A$~lib/rt/itcms/__link + call $byn-split-outlined-A$~lib/rt/itcms/__link_0 end local.get $0 local.get $4 @@ -32384,13 +32437,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 local.get $0 i32.store - local.get $3 + local.get $2 local.get $1 i32.store offset=4 block $__inlined_func$~lib/array/Array#every (result i32) + i32.const 0 + local.set $2 local.get $0 i32.load offset=12 local.set $3 @@ -32458,16 +32513,18 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 local.get $0 i32.store - local.get $3 + local.get $2 local.get $1 i32.store offset=4 - local.get $0 - i32.load offset=12 - local.set $3 - block $__inlined_func$~lib/array/Array#findIndex + block $__inlined_func$~lib/array/Array#findIndex (result i32) + i32.const 0 + local.set $2 + local.get $0 + i32.load offset=12 + local.set $3 loop $for-loop|0 local.get $3 local.get $0 @@ -32485,14 +32542,18 @@ i32.load offset=4 i32.add i32.load8_u + local.set $4 i32.const 3 global.set $~argumentsLength local.get $2 + local.get $4 + local.get $2 local.get $0 local.get $1 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#findIndex + drop local.get $2 i32.const 1 i32.add @@ -32501,13 +32562,11 @@ end end i32.const -1 - local.set $2 end global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 ) (func $export:~lib/array/Array#findLastIndex (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -32534,12 +32593,12 @@ local.get $2 local.get $1 i32.store offset=4 - local.get $0 - i32.load offset=12 - i32.const 1 - i32.sub - local.set $2 - block $__inlined_func$~lib/array/Array#findLastIndex + block $__inlined_func$~lib/array/Array#findLastIndex (result i32) + local.get $0 + i32.load offset=12 + i32.const 1 + i32.sub + local.set $2 loop $for-loop|0 local.get $2 i32.const 0 @@ -32550,14 +32609,18 @@ i32.load offset=4 i32.add i32.load8_u + local.set $3 i32.const 3 global.set $~argumentsLength local.get $2 + local.get $3 + local.get $2 local.get $0 local.get $1 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#findLastIndex + drop local.get $2 i32.const 1 i32.sub @@ -32566,13 +32629,11 @@ end end i32.const -1 - local.set $2 end global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 ) (func $export:~lib/array/Array#at (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -32604,7 +32665,8 @@ select local.get $1 i32.add - local.tee $1 + local.set $1 + local.get $1 local.get $2 i32.ge_u if @@ -32704,7 +32766,8 @@ i32.const 0 local.set $2 end - block $__inlined_func$~lib/array/Array#indexOf + block $__inlined_func$~lib/array/Array#indexOf (result i32) + i32.const -1 local.get $2 local.get $0 i32.load offset=12 @@ -32713,11 +32776,8 @@ i32.const 1 local.get $3 select - if - i32.const -1 - local.set $2 - br $__inlined_func$~lib/array/Array#indexOf - end + br_if $__inlined_func$~lib/array/Array#indexOf + drop local.get $2 i32.const 0 i32.lt_s @@ -32741,6 +32801,7 @@ local.get $3 i32.lt_s if + local.get $2 local.get $0 local.get $2 i32.add @@ -32750,6 +32811,7 @@ i32.and i32.eq br_if $__inlined_func$~lib/array/Array#indexOf + drop local.get $2 i32.const 1 i32.add @@ -32758,15 +32820,13 @@ end end i32.const -1 - local.set $2 end + i32.const 0 + i32.ge_s global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 - i32.const 0 - i32.ge_s ) (func $export:~lib/array/Array#indexOf@varargs (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -32801,7 +32861,8 @@ i32.const 0 local.set $2 end - block $__inlined_func$~lib/array/Array#indexOf + block $__inlined_func$~lib/array/Array#indexOf (result i32) + i32.const -1 local.get $2 local.get $0 i32.load offset=12 @@ -32810,11 +32871,8 @@ i32.const 1 local.get $3 select - if - i32.const -1 - local.set $2 - br $__inlined_func$~lib/array/Array#indexOf - end + br_if $__inlined_func$~lib/array/Array#indexOf + drop local.get $2 i32.const 0 i32.lt_s @@ -32838,6 +32896,7 @@ local.get $3 i32.lt_s if + local.get $2 local.get $0 local.get $2 i32.add @@ -32847,6 +32906,7 @@ i32.and i32.eq br_if $__inlined_func$~lib/array/Array#indexOf + drop local.get $2 i32.const 1 i32.add @@ -32855,17 +32915,14 @@ end end i32.const -1 - local.set $2 end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 ) (func $export:~lib/array/Array#lastIndexOf@varargs (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) - (local $4 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -32898,23 +32955,23 @@ i32.load offset=12 local.set $2 end - i32.const -1 - local.set $3 - block $__inlined_func$~lib/array/Array#lastIndexOf + block $__inlined_func$~lib/array/Array#lastIndexOf (result i32) + i32.const -1 local.get $0 i32.load offset=12 - local.tee $4 + local.tee $3 i32.eqz br_if $__inlined_func$~lib/array/Array#lastIndexOf + drop local.get $2 - local.get $4 + local.get $3 i32.add - local.get $4 + local.get $3 i32.const 1 i32.sub local.get $2 local.get $2 - local.get $4 + local.get $3 i32.ge_s select local.get $2 @@ -32931,8 +32988,8 @@ i32.ge_s if local.get $2 - local.tee $3 local.get $0 + local.get $2 i32.add i32.load8_u local.get $1 @@ -32940,7 +32997,8 @@ i32.and i32.eq br_if $__inlined_func$~lib/array/Array#lastIndexOf - local.get $3 + drop + local.get $2 i32.const 1 i32.sub local.set $2 @@ -32948,13 +33006,11 @@ end end i32.const -1 - local.set $3 end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 ) (func $export:~lib/array/Array#push (param $0 i32) (param $1 i32) (result i32) global.get $~lib/memory/__stack_pointer @@ -32988,11 +33044,11 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -33017,15 +33073,15 @@ i32.store local.get $0 i32.load offset=12 - local.tee $4 + local.tee $2 local.get $1 i32.load offset=12 i32.const 0 local.get $1 select - local.tee $2 - i32.add local.tee $3 + i32.add + local.tee $4 i32.const 1073741820 i32.gt_u if @@ -33037,7 +33093,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.const 0 i32.const 6 i32.const 0 @@ -33046,17 +33102,17 @@ i32.store local.get $5 i32.load offset=4 - local.tee $3 + local.tee $4 local.get $0 i32.load offset=4 - local.get $4 + local.get $2 call $~lib/memory/memory.copy - local.get $3 + local.get $2 local.get $4 i32.add local.get $1 i32.load offset=4 - local.get $2 + local.get $3 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 @@ -33112,23 +33168,22 @@ end local.get $3 local.get $0 - local.tee $4 i32.load offset=12 - local.tee $5 + local.tee $4 local.get $3 - local.get $5 + local.get $4 i32.lt_s select local.set $3 local.get $0 i32.load offset=4 - local.tee $0 + local.tee $5 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $5 + local.get $4 i32.add local.tee $1 i32.const 0 @@ -33138,76 +33193,76 @@ select else local.get $1 - local.get $5 + local.get $4 local.get $1 - local.get $5 + local.get $4 i32.lt_s select end local.tee $1 i32.add - local.get $0 local.get $2 i32.const 0 i32.lt_s if (result i32) local.get $2 - local.get $5 + local.get $4 i32.add - local.tee $0 + local.tee $2 i32.const 0 - local.get $0 + local.get $2 i32.const 0 i32.gt_s select else local.get $2 - local.get $5 + local.get $4 local.get $2 - local.get $5 + local.get $4 i32.lt_s select end - local.tee $0 + local.tee $2 + local.get $5 i32.add local.get $3 i32.const 0 i32.lt_s if (result i32) local.get $3 - local.get $5 + local.get $4 i32.add - local.tee $2 + local.tee $3 i32.const 0 - local.get $2 + local.get $3 i32.const 0 i32.gt_s select else local.get $3 - local.get $5 + local.get $4 local.get $3 - local.get $5 + local.get $4 i32.lt_s select end - local.get $0 + local.get $2 i32.sub - local.tee $0 - local.get $5 + local.tee $2 + local.get $4 local.get $1 i32.sub local.tee $1 - local.get $0 local.get $1 - i32.lt_s + local.get $2 + i32.gt_s select call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $0 ) (func $export:~lib/array/Array#pop (param $0 i32) (result i32) (local $1 i32) @@ -33279,12 +33334,14 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 local.get $0 i32.store - local.get $3 + local.get $2 local.get $1 i32.store offset=4 + i32.const 0 + local.set $2 local.get $0 i32.load offset=12 local.set $3 @@ -33329,11 +33386,11 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -33363,17 +33420,17 @@ i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $4 + local.tee $3 i32.store local.get $0 i32.load offset=12 - local.set $3 + local.set $4 loop $for-loop|0 - local.get $3 + local.get $4 local.get $0 i32.load offset=12 local.tee $5 - local.get $3 + local.get $4 local.get $5 i32.lt_s select @@ -33395,7 +33452,7 @@ i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $4 + local.get $3 local.get $5 call $~lib/array/Array#push drop @@ -33415,7 +33472,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $3 return end i32.const 32064 @@ -33462,10 +33519,10 @@ end local.get $0 i32.load offset=4 - local.tee $1 + local.tee $2 i32.load8_u - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.const 1 i32.add local.get $3 @@ -33473,7 +33530,7 @@ i32.sub local.tee $3 call $~lib/memory/memory.copy - local.get $1 + local.get $2 local.get $3 i32.add i32.const 0 @@ -33506,13 +33563,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 local.get $0 i32.store - local.get $3 + local.get $2 local.get $1 i32.store offset=4 block $__inlined_func$~lib/array/Array#some (result i32) + i32.const 0 + local.set $2 local.get $0 i32.load offset=12 local.set $3 @@ -33613,11 +33672,11 @@ ) (func $export:~lib/array/Array#slice@varargs (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -33744,11 +33803,11 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -33820,33 +33879,33 @@ i32.const 0 i32.gt_s select - local.tee $5 + local.tee $2 i32.const 0 i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $6 + local.tee $5 i32.store - local.get $6 + local.get $5 i32.load offset=4 local.get $4 local.get $0 i32.load offset=4 - local.tee $1 + local.tee $6 i32.add - local.tee $2 - local.get $5 + local.tee $1 + local.get $2 call $~lib/memory/memory.copy local.get $3 + local.get $2 local.get $4 - local.get $5 i32.add local.tee $4 i32.ne if - local.get $2 local.get $1 local.get $4 + local.get $6 i32.add local.get $3 local.get $4 @@ -33855,7 +33914,7 @@ end local.get $0 local.get $3 - local.get $5 + local.get $2 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -33866,7 +33925,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $5 return end i32.const 32064 @@ -33896,19 +33955,23 @@ local.get $0 i32.store local.get $0 - call $~lib/array/Array#reverse + i32.load offset=4 + local.get $0 + i32.load offset=12 + call $~lib/util/bytes/REVERSE global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 ) (func $export:~lib/array/Array#sort@varargs (param $0 i32) (param $1 i32) (result i32) (local $2 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -33971,11 +34034,11 @@ ) (func $export:~lib/array/Array#join@varargs (param $0 i32) (param $1 i32) (result i32) (local $2 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -34059,11 +34122,11 @@ global.set $~lib/memory/__stack_pointer ) (func $export:std/array/ArrayStr#constructor@varargs (param $0 i32) (param $1 i32) (result i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -34131,11 +34194,11 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -34231,11 +34294,11 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -34247,21 +34310,21 @@ local.get $3 local.get $1 i32.store offset=4 - local.get $3 - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 15652 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - local.get $0 - i32.load offset=12 - local.set $3 - block $__inlined_func$~lib/array/Array<~lib/string/String>#findIndex + block $__inlined_func$~lib/array/Array<~lib/string/String>#findIndex (result i32) + local.get $3 + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 15652 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store + local.get $0 + i32.load offset=12 + local.set $3 loop $for-loop|0 local.get $3 local.get $0 @@ -34297,6 +34360,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 br $__inlined_func$~lib/array/Array<~lib/string/String>#findIndex end local.get $2 @@ -34311,13 +34375,11 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const -1 - local.set $2 end global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 return end i32.const 32064 @@ -34330,11 +34392,11 @@ (func $export:~lib/array/Array<~lib/string/String>#findLastIndex (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -34346,23 +34408,23 @@ local.get $2 local.get $1 i32.store offset=4 - local.get $2 - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 15652 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - local.get $0 - i32.load offset=12 - i32.const 1 - i32.sub - local.set $2 - block $__inlined_func$~lib/array/Array<~lib/string/String>#findLastIndex + block $__inlined_func$~lib/array/Array<~lib/string/String>#findLastIndex (result i32) + local.get $2 + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 15652 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store + local.get $0 + i32.load offset=12 + i32.const 1 + i32.sub + local.set $2 loop $for-loop|0 local.get $2 i32.const 0 @@ -34391,6 +34453,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 br $__inlined_func$~lib/array/Array<~lib/string/String>#findLastIndex end local.get $2 @@ -34405,13 +34468,11 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const -1 - local.set $2 end global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 return end i32.const 32064 @@ -34423,11 +34484,11 @@ ) (func $export:~lib/array/Array<~lib/string/String>#at (param $0 i32) (param $1 i32) (result i32) (local $2 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -34726,11 +34787,11 @@ ) (func $export:~lib/array/Array<~lib/string/String>#lastIndexOf@varargs (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -34756,18 +34817,18 @@ i32.load offset=12 local.set $2 end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 15652 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/array/Array<~lib/string/String>#lastIndexOf + block $__inlined_func$~lib/array/Array<~lib/string/String>#lastIndexOf (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 15652 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store local.get $0 i32.load offset=12 local.tee $3 @@ -34778,7 +34839,6 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const -1 - local.set $2 br $__inlined_func$~lib/array/Array<~lib/string/String>#lastIndexOf end local.get $2 @@ -34822,6 +34882,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 br $__inlined_func$~lib/array/Array<~lib/string/String>#lastIndexOf end local.get $2 @@ -34836,13 +34897,11 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const -1 - local.set $2 end global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 return end i32.const 32064 @@ -34891,11 +34950,11 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -34956,7 +35015,7 @@ local.set $4 local.get $0 i32.load offset=4 - local.set $0 + local.set $7 loop $for-loop|0 local.get $2 local.get $4 @@ -34965,16 +35024,16 @@ local.get $2 local.get $6 i32.add - local.get $0 local.get $2 + local.get $7 i32.add i32.load - local.tee $7 + local.tee $0 i32.store - local.get $7 + local.get $0 if local.get $5 - local.get $7 + local.get $0 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -34988,10 +35047,10 @@ local.get $4 local.get $6 i32.add - local.set $0 + local.set $2 local.get $1 i32.load offset=4 - local.set $2 + local.set $4 local.get $3 i32.const 2 i32.shl @@ -35003,19 +35062,19 @@ local.get $3 i32.lt_u if - local.get $0 local.get $1 + local.get $2 i32.add local.get $1 - local.get $2 + local.get $4 i32.add i32.load - local.tee $4 + local.tee $0 i32.store - local.get $4 + local.get $0 if local.get $5 - local.get $4 + local.get $0 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -35048,11 +35107,11 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -35074,7 +35133,7 @@ i32.store local.get $0 i32.load offset=12 - local.tee $2 + local.tee $1 i32.const 1 i32.lt_s if @@ -35086,10 +35145,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 local.get $0 i32.load offset=4 - local.get $2 + local.get $1 i32.const 1 i32.sub local.tee $3 @@ -35097,12 +35156,12 @@ i32.shl i32.add i32.load - local.tee $2 + local.tee $1 i32.store local.get $0 local.get $3 i32.store offset=12 - local.get $1 + local.get $2 i32.const 4 i32.add global.set $~lib/memory/__stack_pointer @@ -35110,7 +35169,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 return end i32.const 32064 @@ -35124,11 +35183,11 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -35213,11 +35272,11 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -35318,11 +35377,11 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -35404,11 +35463,11 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -35529,23 +35588,23 @@ i32.load offset=12 i32.const 1 i32.add - local.tee $3 + local.tee $2 i32.const 2 i32.const 1 call $~lib/array/ensureCapacity local.get $0 i32.load offset=4 - local.tee $2 + local.tee $3 i32.const 4 i32.add - local.get $2 local.get $3 + local.get $2 i32.const 1 i32.sub i32.const 2 i32.shl call $~lib/memory/memory.copy - local.get $2 + local.get $3 local.get $1 i32.store local.get $1 @@ -35556,13 +35615,13 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $3 + local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 ) (func $export:~lib/array/Array<~lib/string/String>#slice@varargs (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -35608,13 +35667,13 @@ i32.store local.get $0 i32.load offset=12 - local.set $3 + local.set $4 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $3 + local.get $4 i32.add local.tee $1 i32.const 0 @@ -35624,20 +35683,20 @@ select else local.get $1 - local.get $3 + local.get $4 local.get $1 - local.get $3 + local.get $4 i32.lt_s select end - local.set $4 + local.set $5 global.get $~lib/memory/__stack_pointer local.get $2 i32.const 0 i32.lt_s if (result i32) local.get $2 - local.get $3 + local.get $4 i32.add local.tee $1 i32.const 0 @@ -35647,13 +35706,13 @@ select else local.get $2 - local.get $3 + local.get $4 local.get $2 - local.get $3 + local.get $4 i32.lt_s select end - local.get $4 + local.get $5 i32.sub local.tee $1 i32.const 0 @@ -35661,54 +35720,52 @@ i32.const 0 i32.gt_s select - local.tee $3 + local.tee $2 i32.const 2 i32.const 33 i32.const 0 call $~lib/rt/__newArray - local.tee $5 + local.tee $4 i32.store - local.get $5 + local.get $4 i32.load offset=4 local.set $1 local.get $0 i32.load offset=4 - local.get $4 + local.get $5 i32.const 2 i32.shl i32.add - local.set $2 - i32.const 0 local.set $0 - local.get $3 + local.get $2 i32.const 2 i32.shl - local.set $3 + local.set $2 loop $while-continue|0 - local.get $0 + local.get $2 local.get $3 - i32.lt_u + i32.gt_u if - local.get $0 local.get $1 + local.get $3 i32.add local.get $0 - local.get $2 + local.get $3 i32.add i32.load - local.tee $4 + local.tee $5 i32.store - local.get $4 + local.get $5 if - local.get $5 local.get $4 + local.get $5 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 + local.get $3 i32.const 4 i32.add - local.set $0 + local.set $3 br $while-continue|0 end end @@ -35720,7 +35777,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $4 return end i32.const 32064 @@ -35735,11 +35792,11 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -35811,39 +35868,39 @@ i32.const 0 i32.gt_s select - local.tee $5 + local.tee $2 i32.const 2 i32.const 33 i32.const 0 call $~lib/rt/__newArray - local.tee $6 + local.tee $5 i32.store - local.get $6 + local.get $5 i32.load offset=4 local.get $0 i32.load offset=4 - local.tee $1 + local.tee $6 local.get $4 i32.const 2 i32.shl i32.add - local.tee $2 - local.get $5 + local.tee $1 + local.get $2 i32.const 2 i32.shl call $~lib/memory/memory.copy local.get $3 + local.get $2 local.get $4 - local.get $5 i32.add local.tee $4 i32.ne if - local.get $2 + local.get $1 local.get $4 i32.const 2 i32.shl - local.get $1 + local.get $6 i32.add local.get $3 local.get $4 @@ -35854,7 +35911,7 @@ end local.get $0 local.get $3 - local.get $5 + local.get $2 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -35865,7 +35922,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $5 return end i32.const 32064 @@ -35882,11 +35939,11 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -35919,14 +35976,14 @@ local.get $4 i32.const 1 i32.shr_u - local.set $5 + local.set $3 local.get $4 i32.const 1 i32.sub local.set $4 loop $while-continue|0 local.get $1 - local.get $5 + local.get $3 i32.lt_u if global.get $~lib/memory/__stack_pointer @@ -35935,11 +35992,11 @@ i32.shl local.get $2 i32.add - local.tee $6 + local.tee $5 i32.load - local.tee $3 + local.tee $6 i32.store - local.get $6 + local.get $5 local.get $4 local.get $1 i32.sub @@ -35947,11 +36004,11 @@ i32.shl local.get $2 i32.add - local.tee $6 + local.tee $5 i32.load i32.store + local.get $5 local.get $6 - local.get $3 i32.store local.get $1 i32.const 1 @@ -35981,11 +36038,11 @@ ) (func $export:~lib/array/Array<~lib/string/String>#sort@varargs (param $0 i32) (param $1 i32) (result i32) (local $2 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -36048,11 +36105,11 @@ ) (func $export:~lib/array/Array<~lib/string/String>#join@varargs (param $0 i32) (param $1 i32) (result i32) (local $2 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 15652 i32.lt_s @@ -36208,4 +36265,53 @@ end end ) + (func $byn-split-outlined-A$~lib/rt/itcms/__link_0 (param $0 i32) (param $1 i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1216 + i32.const 294 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $1 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $0 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $0 + i32.const 3 + i32.eq + i32.and + if + local.get $1 + call $~lib/rt/itcms/Object#makeGray + end + end + end + ) ) diff --git a/tests/compiler/std/arraybuffer.optimized.wat b/tests/compiler/std/arraybuffer.optimized.wat index f25b5ce0c7..31872fb3bc 100644 --- a/tests/compiler/std/arraybuffer.optimized.wat +++ b/tests/compiler/std/arraybuffer.optimized.wat @@ -116,17 +116,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18228 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -140,9 +141,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -152,15 +153,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -1458,7 +1459,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1484,32 +1485,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1525,16 +1526,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1542,7 +1543,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1550,8 +1551,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1568,7 +1569,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1578,13 +1579,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1597,40 +1598,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -1660,8 +1661,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 diff --git a/tests/compiler/std/dataview.optimized.wat b/tests/compiler/std/dataview.optimized.wat index f9ae16495f..d78abf3e74 100644 --- a/tests/compiler/std/dataview.optimized.wat +++ b/tests/compiler/std/dataview.optimized.wat @@ -122,17 +122,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18172 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -146,9 +147,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -158,15 +159,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -1464,7 +1465,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1490,32 +1491,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1531,16 +1532,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1548,7 +1549,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1556,8 +1557,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1574,7 +1575,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1584,13 +1585,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1603,40 +1604,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -1666,8 +1667,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 diff --git a/tests/compiler/std/date.optimized.wat b/tests/compiler/std/date.optimized.wat index c135ae287d..b628baba95 100644 --- a/tests/compiler/std/date.optimized.wat +++ b/tests/compiler/std/date.optimized.wat @@ -233,23 +233,6 @@ (export "memory" (memory $0)) (export "_start" (func $~start)) (func $~lib/date/epochMillis (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (param $5 i32) (param $6 i32) (result i64) - (local $7 i32) - local.get $0 - local.get $1 - i32.const 2 - i32.le_s - i32.sub - local.tee $7 - local.get $7 - i32.const 399 - i32.sub - local.get $7 - i32.const 0 - i32.ge_s - select - i32.const 400 - i32.div_s - local.set $0 local.get $6 i64.extend_i32_s local.get $5 @@ -264,6 +247,22 @@ i32.const 3600000 i32.mul i64.extend_i32_s + local.get $0 + local.get $1 + i32.const 2 + i32.le_s + i32.sub + local.tee $0 + local.get $0 + i32.const 399 + i32.sub + local.get $0 + i32.const 0 + i32.ge_s + select + i32.const 400 + i32.div_s + local.set $3 local.get $2 i32.const -3 i32.const 9 @@ -280,24 +279,24 @@ i32.const 5 i32.div_u i32.add - local.get $7 local.get $0 + local.get $3 i32.const 400 i32.mul i32.sub - local.tee $1 + local.tee $0 i32.const 365 i32.mul - local.get $1 + local.get $0 i32.const 2 i32.shr_u i32.add - local.get $1 + local.get $0 i32.const 100 i32.div_u i32.sub i32.add - local.get $0 + local.get $3 i32.const 146097 i32.mul i32.add @@ -483,17 +482,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 23948 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -507,9 +507,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -519,15 +519,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -1825,7 +1825,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1851,32 +1851,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1892,16 +1892,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1909,7 +1909,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1917,8 +1917,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1935,7 +1935,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1945,13 +1945,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1964,40 +1964,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -2027,8 +2027,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -2212,9 +2212,8 @@ ) (func $~lib/date/Date#setUTCDate (param $0 i32) (param $1 i32) (local $2 i32) - (local $3 i32) + (local $3 i64) (local $4 i32) - (local $5 i64) local.get $1 local.get $0 i32.load offset=8 @@ -2223,45 +2222,45 @@ return end local.get $0 + i64.const 86400000 + i64.const 0 + local.get $0 + i64.load offset=16 + i64.const 86400000 + i64.rem_s + local.tee $3 + i64.const 0 + i64.lt_s + select + local.get $3 + i64.add + local.get $0 i32.load local.get $0 i32.load offset=4 - local.tee $3 + local.tee $0 i32.const 2 i32.le_s i32.sub - local.tee $2 - local.get $2 + local.tee $4 + local.get $4 i32.const 399 i32.sub - local.get $2 + local.get $4 i32.const 0 i32.ge_s select i32.const 400 i32.div_s - local.set $4 - local.get $0 - local.get $0 - i64.load offset=16 - i64.const 86400000 - i64.rem_s - local.tee $5 - i64.const 86400000 - i64.const 0 - local.get $5 - i64.const 0 - i64.lt_s - select - i64.add + local.set $2 local.get $1 i32.const -3 i32.const 9 - local.get $3 + local.get $0 i32.const 2 i32.gt_s select - local.get $3 + local.get $0 i32.add i32.const 153 i32.mul @@ -2270,8 +2269,8 @@ i32.const 5 i32.div_u i32.add - local.get $2 local.get $4 + local.get $2 i32.const 400 i32.mul i32.sub @@ -2287,7 +2286,7 @@ i32.div_u i32.sub i32.add - local.get $4 + local.get $2 i32.const 146097 i32.mul i32.add @@ -2311,6 +2310,7 @@ return end local.get $0 + local.get $0 i32.load local.get $1 i32.const 1 @@ -2330,18 +2330,17 @@ i32.const 400 i32.div_s local.set $2 - local.get $0 + i64.const 86400000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 86400000 i64.rem_s local.tee $3 - i64.const 86400000 - i64.const 0 - local.get $3 i64.const 0 i64.lt_s select + local.get $3 i64.add local.get $0 i32.load offset=8 @@ -2400,6 +2399,7 @@ if return end + local.get $0 local.get $1 local.get $0 i32.load offset=4 @@ -2418,18 +2418,17 @@ i32.const 400 i32.div_s local.set $2 - local.get $0 + i64.const 86400000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 86400000 i64.rem_s local.tee $3 - i64.const 86400000 - i64.const 0 - local.get $3 i64.const 0 i64.lt_s select + local.get $3 i64.add local.get $0 i32.load offset=8 @@ -2482,25 +2481,25 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 7564 - i32.lt_s - if - i32.const 23968 - i32.const 24016 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/number/itoa32 + block $__inlined_func$~lib/util/number/itoa32 (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 7564 + i32.lt_s + if + i32.const 23968 + i32.const 24016 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store local.get $0 i32.eqz if @@ -2509,9 +2508,9 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1872 - local.set $1 br $__inlined_func$~lib/util/number/itoa32 end + global.get $~lib/memory/__stack_pointer i32.const 0 local.get $0 i32.sub @@ -2522,9 +2521,7 @@ local.tee $3 select local.tee $0 - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $0 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) @@ -2690,8 +2687,8 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $1 end - local.get $1 ) (func $~lib/util/memory/memcpy (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -3570,25 +3567,25 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 7564 - i32.lt_s - if - i32.const 23968 - i32.const 24016 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/string/String#concat + block $__inlined_func$~lib/string/String#concat (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 7564 + i32.lt_s + if + i32.const 23968 + i32.const 24016 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store local.get $0 i32.const 20 i32.sub @@ -3597,7 +3594,7 @@ i32.shr_u i32.const 1 i32.shl - local.tee $3 + local.tee $2 local.get $1 i32.const 20 i32.sub @@ -3606,9 +3603,9 @@ i32.shr_u i32.const 1 i32.shl - local.tee $4 + local.tee $3 i32.add - local.tee $2 + local.tee $4 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -3616,31 +3613,30 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 3456 - local.set $2 br $__inlined_func$~lib/string/String#concat end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $4 i32.store - local.get $2 + local.get $4 local.get $0 - local.get $3 + local.get $2 call $~lib/memory/memory.copy local.get $2 - local.get $3 + local.get $4 i32.add local.get $1 - local.get $4 + local.get $3 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $4 end - local.get $2 ) (func $~lib/util/string/compareImpl (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (local $4 i32) @@ -3843,21 +3839,23 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) local.get $0 + local.tee $2 i32.load offset=12 - local.tee $7 + local.tee $4 i32.const 1 i32.add - local.tee $8 - local.tee $2 - local.get $0 - i32.load offset=8 + local.tee $5 local.tee $3 + local.get $2 + i32.load offset=8 + local.tee $8 i32.const 2 i32.shr_u i32.gt_u if - local.get $2 + local.get $3 i32.const 268435455 i32.gt_u if @@ -3868,39 +3866,39 @@ call $~lib/builtins/abort unreachable end - block $__inlined_func$~lib/rt/itcms/__renew - local.get $3 + block $__inlined_func$~lib/rt/itcms/__renew (result i32) + local.get $8 i32.const 1 i32.shl - local.tee $4 + local.tee $6 i32.const 1073741820 - local.get $4 + local.get $6 i32.const 1073741820 i32.lt_u select - local.tee $4 - local.get $2 + local.tee $6 + local.get $3 i32.const 8 - local.get $2 + local.get $3 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $2 - local.get $2 - local.get $4 + local.tee $3 + local.get $3 + local.get $6 i32.lt_u select - local.tee $6 + local.tee $9 local.tee $10 - local.get $0 + local.get $2 i32.load - local.tee $9 - local.tee $2 + local.tee $6 + local.tee $3 i32.const 20 i32.sub - local.tee $5 + local.tee $11 i32.load i32.const -4 i32.and @@ -3908,61 +3906,61 @@ i32.sub i32.le_u if - local.get $5 + local.get $11 local.get $10 i32.store offset=16 + local.get $3 br $__inlined_func$~lib/rt/itcms/__renew end local.get $10 - local.get $5 + local.get $11 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $4 - local.get $2 + local.tee $7 + local.get $3 local.get $10 - local.get $5 + local.get $11 i32.load offset=16 - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 local.get $10 i32.gt_u select call $~lib/memory/memory.copy - local.get $4 - local.set $2 + local.get $7 end - local.get $2 - local.get $3 + local.tee $3 + local.get $8 i32.add - local.get $6 - local.get $3 + local.get $9 + local.get $8 i32.sub call $~lib/memory/memory.fill - local.get $2 - local.get $9 + local.get $3 + local.get $6 i32.ne if - local.get $0 local.get $2 + local.get $3 i32.store - local.get $0 local.get $2 + local.get $3 i32.store offset=4 - local.get $2 + local.get $3 if - local.get $0 local.get $2 + local.get $3 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end end - local.get $0 - local.get $6 + local.get $2 + local.get $9 i32.store offset=8 end local.get $0 i32.load offset=4 - local.get $7 + local.get $4 i32.const 2 i32.shl i32.add @@ -3970,13 +3968,13 @@ i32.store local.get $1 if - local.get $0 + local.get $2 local.get $1 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $8 + local.get $2 + local.get $5 i32.store offset=12 ) (func $~lib/util/string/strtol (param $0 i32) (result i32) @@ -4388,6 +4386,7 @@ (local $2 i64) (local $3 i32) (local $4 i32) + (local $5 i32) global.get $~lib/memory/__stack_pointer i32.const 112 i32.sub @@ -4448,64 +4447,64 @@ i64.store offset=104 local.get $0 i32.load - local.tee $1 + local.tee $3 i32.const 0 i32.lt_s - local.tee $3 - local.get $1 + local.tee $4 + local.get $3 i32.const 10000 i32.ge_s i32.or if global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $5 + local.get $5 i32.const 1616 i32.const 1648 - local.get $3 + local.get $4 select - local.tee $3 + local.tee $4 i32.store - local.get $1 - local.get $1 + local.get $3 i32.const 31 i32.shr_s - local.tee $1 + local.tee $5 + local.get $3 + local.get $5 i32.add - local.get $1 i32.xor call $~lib/number/I32#toString - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 1872 i32.store offset=12 - local.get $1 + local.get $3 i32.const 6 call $~lib/string/String#padStart - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=4 local.get $4 local.get $3 - local.get $1 call $~lib/string/String.__concat local.tee $1 i32.store offset=16 else global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 call $~lib/number/I32#toString - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store global.get $~lib/memory/__stack_pointer i32.const 1872 i32.store offset=8 - local.get $1 + local.get $3 i32.const 4 call $~lib/string/String#padStart local.tee $1 @@ -4589,17 +4588,17 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=60 + i64.const 86400000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 86400000 i64.rem_s local.tee $2 - i64.const 86400000 - i64.const 0 - local.get $2 i64.const 0 i64.lt_s select + local.get $2 i64.add i32.wrap_i64 i32.const 3600000 @@ -4637,17 +4636,17 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=44 + i64.const 3600000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 3600000 i64.rem_s local.tee $2 - i64.const 3600000 - i64.const 0 - local.get $2 i64.const 0 i64.lt_s select + local.get $2 i64.add i32.wrap_i64 i32.const 60000 @@ -4685,17 +4684,17 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=28 + i64.const 60000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 60000 i64.rem_s local.tee $2 - i64.const 60000 - i64.const 0 - local.get $2 i64.const 0 i64.lt_s select + local.get $2 i64.add i32.wrap_i64 i32.const 1000 @@ -4733,17 +4732,17 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=8 + i64.const 1000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 1000 i64.rem_s local.tee $2 - i64.const 1000 - i64.const 0 - local.get $2 i64.const 0 i64.lt_s select + local.get $2 i64.add i32.wrap_i64 call $~lib/number/I32#toString @@ -4864,7 +4863,6 @@ i32.load8_u local.get $6 local.get $6 - local.get $6 i32.const 3 i32.sub local.get $7 @@ -4889,6 +4887,7 @@ i32.const 400 i32.div_s i32.add + local.get $6 i32.add i32.add i32.add @@ -5045,17 +5044,17 @@ local.get $2 i64.const 0 i64.store offset=32 + i64.const 86400000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 86400000 i64.rem_s local.tee $1 - i64.const 86400000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 3600000 @@ -5086,17 +5085,17 @@ global.get $~lib/memory/__stack_pointer local.get $3 i32.store offset=16 + i64.const 3600000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 3600000 i64.rem_s local.tee $1 - i64.const 3600000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 60000 @@ -5134,17 +5133,17 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.store + i64.const 60000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 60000 i64.rem_s local.tee $1 - i64.const 60000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 1000 @@ -5277,7 +5276,6 @@ i32.load8_u local.get $1 local.get $1 - local.get $1 i32.const 3 i32.sub local.get $6 @@ -5302,6 +5300,7 @@ i32.const 400 i32.div_s i32.add + local.get $1 i32.add i32.add i32.add @@ -5590,13 +5589,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $5 i64.const 0 i64.store - local.get $4 + local.get $5 i64.const 0 i64.store offset=8 - local.get $4 + local.get $5 i64.const 0 i64.store offset=16 block $folding-inner2 @@ -5633,16 +5632,16 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.set $6 + local.set $5 local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $6 if - local.get $6 + local.get $5 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -5657,7 +5656,7 @@ br $folding-inner1 end else - local.get $6 + local.get $5 i32.eqz if i32.const 0 @@ -5666,31 +5665,31 @@ br $folding-inner1 end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $5 i32.const 2147483647 - local.get $6 + local.get $5 i32.const 2147483647 i32.ne select - local.tee $2 + local.tee $4 call $~lib/rt/__newArray local.tee $1 i32.store local.get $1 i32.load offset=4 - local.set $4 + local.set $5 loop $for-loop|0 - local.get $2 local.get $3 - i32.gt_s + local.get $4 + i32.lt_s if global.get $~lib/memory/__stack_pointer i32.const 2 i32.const 1 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $2 i32.store offset=8 - local.get $5 + local.get $2 local.get $3 i32.const 1 i32.shl @@ -5701,14 +5700,14 @@ local.get $3 i32.const 2 i32.shl - local.get $4 - i32.add local.get $5 + i32.add + local.get $2 i32.store - local.get $5 + local.get $2 if local.get $1 - local.get $5 + local.get $2 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -5770,14 +5769,14 @@ i32.const 3456 call $~lib/array/Array<~lib/string/String>#push end - local.get $5 + local.get $4 i32.const 1 i32.add - local.tee $5 + local.tee $4 i32.const 2147483647 i32.eq br_if $folding-inner2 - local.get $4 + local.get $6 local.get $8 i32.add local.set $2 @@ -5792,7 +5791,7 @@ call $~lib/array/Array<~lib/string/String>#push br $folding-inner2 end - local.get $6 + local.get $5 local.get $2 i32.sub local.tee $1 @@ -6103,7 +6102,6 @@ (local $1 i64) (local $2 i32) (local $3 i32) - (local $4 i32) global.get $~lib/memory/__stack_pointer i32.const 36 i32.sub @@ -6430,17 +6428,17 @@ call $~lib/builtins/abort unreachable end + i64.const 86400000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 86400000 i64.rem_s local.tee $1 - i64.const 86400000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 3600000 @@ -6455,17 +6453,17 @@ call $~lib/builtins/abort unreachable end + i64.const 3600000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 3600000 i64.rem_s local.tee $1 - i64.const 3600000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 60000 @@ -6480,17 +6478,17 @@ call $~lib/builtins/abort unreachable end + i64.const 60000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 60000 i64.rem_s local.tee $1 - i64.const 60000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 1000 @@ -6505,17 +6503,17 @@ call $~lib/builtins/abort unreachable end + i64.const 1000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 1000 i64.rem_s local.tee $1 - i64.const 1000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 706 @@ -6569,17 +6567,17 @@ call $~lib/builtins/abort unreachable end + i64.const 86400000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 86400000 i64.rem_s local.tee $1 - i64.const 86400000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 3600000 @@ -6594,17 +6592,17 @@ call $~lib/builtins/abort unreachable end + i64.const 3600000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 3600000 i64.rem_s local.tee $1 - i64.const 3600000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 60000 @@ -6619,17 +6617,17 @@ call $~lib/builtins/abort unreachable end + i64.const 60000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 60000 i64.rem_s local.tee $1 - i64.const 60000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 1000 @@ -6644,17 +6642,17 @@ call $~lib/builtins/abort unreachable end + i64.const 1000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 1000 i64.rem_s local.tee $1 - i64.const 1000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 274 @@ -6672,17 +6670,17 @@ call $~lib/date/Date#constructor local.tee $0 i32.store + i64.const 1000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 1000 i64.rem_s local.tee $1 - i64.const 1000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 984 @@ -6698,17 +6696,17 @@ local.get $0 i32.const 12 call $~lib/date/Date#setUTCMilliseconds + i64.const 1000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 1000 i64.rem_s local.tee $1 - i64.const 1000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 12 @@ -6724,17 +6722,17 @@ local.get $0 i32.const 568 call $~lib/date/Date#setUTCMilliseconds + i64.const 1000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 1000 i64.rem_s local.tee $1 - i64.const 1000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 568 @@ -6780,17 +6778,17 @@ local.get $0 i32.const 2000 call $~lib/date/Date#setUTCMilliseconds + i64.const 1000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 1000 i64.rem_s local.tee $1 - i64.const 1000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 if @@ -6816,17 +6814,17 @@ local.get $0 i32.const -2000 call $~lib/date/Date#setUTCMilliseconds + i64.const 1000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 1000 i64.rem_s local.tee $1 - i64.const 1000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 if @@ -6854,17 +6852,17 @@ call $~lib/date/Date#constructor local.tee $0 i32.store + i64.const 60000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 60000 i64.rem_s local.tee $1 - i64.const 60000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 1000 @@ -6882,17 +6880,17 @@ local.get $0 i32.const 12 call $~lib/date/Date#setUTCSeconds + i64.const 60000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 60000 i64.rem_s local.tee $1 - i64.const 60000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 1000 @@ -6910,17 +6908,17 @@ local.get $0 i32.const 50 call $~lib/date/Date#setUTCSeconds + i64.const 60000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 60000 i64.rem_s local.tee $1 - i64.const 60000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 1000 @@ -6970,17 +6968,17 @@ call $~lib/date/Date#constructor local.tee $0 i32.store + i64.const 3600000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 3600000 i64.rem_s local.tee $1 - i64.const 3600000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 60000 @@ -6998,17 +6996,17 @@ local.get $0 i32.const 12 call $~lib/date/Date#setUTCMinutes + i64.const 3600000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 3600000 i64.rem_s local.tee $1 - i64.const 3600000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 60000 @@ -7026,17 +7024,17 @@ local.get $0 i32.const 50 call $~lib/date/Date#setUTCMinutes + i64.const 3600000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 3600000 i64.rem_s local.tee $1 - i64.const 3600000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 60000 @@ -7086,17 +7084,17 @@ call $~lib/date/Date#constructor local.tee $0 i32.store + i64.const 86400000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 86400000 i64.rem_s local.tee $1 - i64.const 86400000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 3600000 @@ -7114,17 +7112,17 @@ local.get $0 i32.const 12 call $~lib/date/Date#setUTCHours + i64.const 86400000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 86400000 i64.rem_s local.tee $1 - i64.const 86400000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 3600000 @@ -7142,17 +7140,17 @@ local.get $0 i32.const 2 call $~lib/date/Date#setUTCHours + i64.const 86400000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 86400000 i64.rem_s local.tee $1 - i64.const 86400000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 3600000 @@ -7307,17 +7305,17 @@ call $~lib/builtins/abort unreachable end + i64.const 3600000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 3600000 i64.rem_s local.tee $1 - i64.const 3600000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 60000 @@ -7332,17 +7330,17 @@ call $~lib/builtins/abort unreachable end + i64.const 60000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 60000 i64.rem_s local.tee $1 - i64.const 60000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 1000 @@ -7357,17 +7355,17 @@ call $~lib/builtins/abort unreachable end + i64.const 1000 + i64.const 0 local.get $0 i64.load offset=16 i64.const 1000 i64.rem_s local.tee $1 - i64.const 1000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 274 @@ -7528,10 +7526,9 @@ i32.const 3 i32.lt_s i32.sub - local.tee $3 + local.set $3 + i32.const 7 i32.const 0 - i32.ge_s - local.set $4 local.get $0 i32.load offset=8 local.get $2 @@ -7540,10 +7537,12 @@ i32.load8_u local.get $3 local.get $3 - local.get $3 i32.const 3 i32.sub - local.get $4 + local.get $3 + i32.const 0 + i32.ge_s + local.tee $0 select i32.const 4 i32.div_s @@ -7551,7 +7550,7 @@ local.get $3 i32.const 99 i32.sub - local.get $4 + local.get $0 select i32.const 100 i32.div_s @@ -7560,23 +7559,22 @@ local.get $3 i32.const 399 i32.sub - local.get $4 + local.get $0 select i32.const 400 i32.div_s i32.add + local.get $3 i32.add i32.add i32.add i32.const 7 i32.rem_s local.tee $0 - i32.const 7 - i32.const 0 - local.get $0 i32.const 0 i32.lt_s select + local.get $0 i32.add i32.const 3 i32.ne @@ -7601,10 +7599,9 @@ i32.const 3 i32.lt_s i32.sub - local.tee $3 + local.set $3 + i32.const 7 i32.const 0 - i32.ge_s - local.set $4 local.get $0 i32.load offset=8 local.get $2 @@ -7613,10 +7610,12 @@ i32.load8_u local.get $3 local.get $3 - local.get $3 i32.const 3 i32.sub - local.get $4 + local.get $3 + i32.const 0 + i32.ge_s + local.tee $0 select i32.const 4 i32.div_s @@ -7624,7 +7623,7 @@ local.get $3 i32.const 99 i32.sub - local.get $4 + local.get $0 select i32.const 100 i32.div_s @@ -7633,23 +7632,22 @@ local.get $3 i32.const 399 i32.sub - local.get $4 + local.get $0 select i32.const 400 i32.div_s i32.add + local.get $3 i32.add i32.add i32.add i32.const 7 i32.rem_s local.tee $0 - i32.const 7 - i32.const 0 - local.get $0 i32.const 0 i32.lt_s select + local.get $0 i32.add i32.const 2 i32.ne @@ -7674,10 +7672,9 @@ i32.const 3 i32.lt_s i32.sub - local.tee $3 + local.set $3 + i32.const 7 i32.const 0 - i32.ge_s - local.set $4 local.get $0 i32.load offset=8 local.get $2 @@ -7686,10 +7683,12 @@ i32.load8_u local.get $3 local.get $3 - local.get $3 i32.const 3 i32.sub - local.get $4 + local.get $3 + i32.const 0 + i32.ge_s + local.tee $0 select i32.const 4 i32.div_s @@ -7697,7 +7696,7 @@ local.get $3 i32.const 99 i32.sub - local.get $4 + local.get $0 select i32.const 100 i32.div_s @@ -7706,23 +7705,22 @@ local.get $3 i32.const 399 i32.sub - local.get $4 + local.get $0 select i32.const 400 i32.div_s i32.add + local.get $3 i32.add i32.add i32.add i32.const 7 i32.rem_s local.tee $0 - i32.const 7 - i32.const 0 - local.get $0 i32.const 0 i32.lt_s select + local.get $0 i32.add i32.const 3 i32.ne @@ -7747,10 +7745,9 @@ i32.const 3 i32.lt_s i32.sub - local.tee $3 + local.set $3 + i32.const 7 i32.const 0 - i32.ge_s - local.set $4 local.get $0 i32.load offset=8 local.get $2 @@ -7759,10 +7756,12 @@ i32.load8_u local.get $3 local.get $3 - local.get $3 i32.const 3 i32.sub - local.get $4 + local.get $3 + i32.const 0 + i32.ge_s + local.tee $0 select i32.const 4 i32.div_s @@ -7770,7 +7769,7 @@ local.get $3 i32.const 99 i32.sub - local.get $4 + local.get $0 select i32.const 100 i32.div_s @@ -7779,23 +7778,22 @@ local.get $3 i32.const 399 i32.sub - local.get $4 + local.get $0 select i32.const 400 i32.div_s i32.add + local.get $3 i32.add i32.add i32.add i32.const 7 i32.rem_s local.tee $0 - i32.const 7 - i32.const 0 - local.get $0 i32.const 0 i32.lt_s select + local.get $0 i32.add i32.const 4 i32.ne @@ -7820,10 +7818,9 @@ i32.const 3 i32.lt_s i32.sub - local.tee $3 + local.set $3 + i32.const 7 i32.const 0 - i32.ge_s - local.set $4 local.get $0 i32.load offset=8 local.get $2 @@ -7832,10 +7829,12 @@ i32.load8_u local.get $3 local.get $3 - local.get $3 i32.const 3 i32.sub - local.get $4 + local.get $3 + i32.const 0 + i32.ge_s + local.tee $0 select i32.const 4 i32.div_s @@ -7843,7 +7842,7 @@ local.get $3 i32.const 99 i32.sub - local.get $4 + local.get $0 select i32.const 100 i32.div_s @@ -7852,23 +7851,22 @@ local.get $3 i32.const 399 i32.sub - local.get $4 + local.get $0 select i32.const 400 i32.div_s i32.add + local.get $3 i32.add i32.add i32.add i32.const 7 i32.rem_s local.tee $0 - i32.const 7 - i32.const 0 - local.get $0 i32.const 0 i32.lt_s select + local.get $0 i32.add i32.const 6 i32.ne @@ -7893,10 +7891,9 @@ i32.const 3 i32.lt_s i32.sub - local.tee $3 + local.set $3 + i32.const 7 i32.const 0 - i32.ge_s - local.set $4 local.get $0 i32.load offset=8 local.get $2 @@ -7905,10 +7902,12 @@ i32.load8_u local.get $3 local.get $3 - local.get $3 i32.const 3 i32.sub - local.get $4 + local.get $3 + i32.const 0 + i32.ge_s + local.tee $0 select i32.const 4 i32.div_s @@ -7916,7 +7915,7 @@ local.get $3 i32.const 99 i32.sub - local.get $4 + local.get $0 select i32.const 100 i32.div_s @@ -7925,23 +7924,22 @@ local.get $3 i32.const 399 i32.sub - local.get $4 + local.get $0 select i32.const 400 i32.div_s i32.add + local.get $3 i32.add i32.add i32.add i32.const 7 i32.rem_s local.tee $0 - i32.const 7 - i32.const 0 - local.get $0 i32.const 0 i32.lt_s select + local.get $0 i32.add i32.const 5 i32.ne @@ -7966,10 +7964,9 @@ i32.const 3 i32.lt_s i32.sub - local.tee $3 + local.set $3 + i32.const 7 i32.const 0 - i32.ge_s - local.set $4 local.get $0 i32.load offset=8 local.get $2 @@ -7978,10 +7975,12 @@ i32.load8_u local.get $3 local.get $3 - local.get $3 i32.const 3 i32.sub - local.get $4 + local.get $3 + i32.const 0 + i32.ge_s + local.tee $0 select i32.const 4 i32.div_s @@ -7989,7 +7988,7 @@ local.get $3 i32.const 99 i32.sub - local.get $4 + local.get $0 select i32.const 100 i32.div_s @@ -7998,23 +7997,22 @@ local.get $3 i32.const 399 i32.sub - local.get $4 + local.get $0 select i32.const 400 i32.div_s i32.add + local.get $3 i32.add i32.add i32.add i32.const 7 i32.rem_s local.tee $0 - i32.const 7 - i32.const 0 - local.get $0 i32.const 0 i32.lt_s select + local.get $0 i32.add i32.const 6 i32.ne @@ -8039,10 +8037,9 @@ i32.const 3 i32.lt_s i32.sub - local.tee $3 + local.set $3 + i32.const 7 i32.const 0 - i32.ge_s - local.set $4 local.get $0 i32.load offset=8 local.get $2 @@ -8051,10 +8048,12 @@ i32.load8_u local.get $3 local.get $3 - local.get $3 i32.const 3 i32.sub - local.get $4 + local.get $3 + i32.const 0 + i32.ge_s + local.tee $0 select i32.const 4 i32.div_s @@ -8062,7 +8061,7 @@ local.get $3 i32.const 99 i32.sub - local.get $4 + local.get $0 select i32.const 100 i32.div_s @@ -8071,23 +8070,22 @@ local.get $3 i32.const 399 i32.sub - local.get $4 + local.get $0 select i32.const 400 i32.div_s i32.add + local.get $3 i32.add i32.add i32.add i32.const 7 i32.rem_s local.tee $0 - i32.const 7 - i32.const 0 - local.get $0 i32.const 0 i32.lt_s select + local.get $0 i32.add if i32.const 0 @@ -9177,17 +9175,17 @@ call $~lib/builtins/abort unreachable end + i64.const 86400000 + i64.const 0 local.get $2 i64.load offset=16 i64.const 86400000 i64.rem_s local.tee $1 - i64.const 86400000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 3600000 @@ -9200,17 +9198,17 @@ call $~lib/builtins/abort unreachable end + i64.const 3600000 + i64.const 0 local.get $2 i64.load offset=16 i64.const 3600000 i64.rem_s local.tee $1 - i64.const 3600000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 60000 @@ -9223,17 +9221,17 @@ call $~lib/builtins/abort unreachable end + i64.const 60000 + i64.const 0 local.get $2 i64.load offset=16 i64.const 60000 i64.rem_s local.tee $1 - i64.const 60000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 1000 @@ -9246,17 +9244,17 @@ call $~lib/builtins/abort unreachable end + i64.const 1000 + i64.const 0 local.get $2 i64.load offset=16 i64.const 1000 i64.rem_s local.tee $1 - i64.const 1000 - i64.const 0 - local.get $1 i64.const 0 i64.lt_s select + local.get $1 i64.add i32.wrap_i64 i32.const 1 @@ -9447,11 +9445,11 @@ i32.shr_u i32.const 1 i32.shl - local.tee $5 + local.tee $4 local.get $1 i32.const 1 i32.shl - local.tee $3 + local.tee $1 i32.gt_u i32.or if @@ -9463,70 +9461,74 @@ return end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $5 i32.store local.get $2 - local.get $3 - local.get $5 + local.get $1 + local.get $4 i32.sub - local.tee $3 + local.tee $6 i32.lt_u if local.get $2 - local.get $3 + local.get $6 i32.const 2 i32.sub local.get $2 i32.div_u - i32.mul local.tee $7 - local.set $6 + i32.mul + local.set $1 + local.get $2 + local.get $7 + i32.mul + local.set $7 loop $while-continue|0 - local.get $4 + local.get $3 local.get $7 i32.lt_u if - local.get $1 - local.get $4 + local.get $3 + local.get $5 i32.add i32.const 1872 local.get $2 call $~lib/memory/memory.copy local.get $2 - local.get $4 + local.get $3 i32.add - local.set $4 + local.set $3 br $while-continue|0 end end local.get $1 - local.get $6 + local.get $5 i32.add i32.const 1872 - local.get $3 local.get $6 + local.get $1 i32.sub call $~lib/memory/memory.copy else - local.get $1 + local.get $5 i32.const 1872 - local.get $3 + local.get $6 call $~lib/memory/memory.copy end - local.get $1 - local.get $3 + local.get $5 + local.get $6 i32.add local.get $0 - local.get $5 + local.get $4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $5 ) (func $~lib/string/String#substring (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) diff --git a/tests/compiler/std/map.optimized.wat b/tests/compiler/std/map.optimized.wat index 6019b6a0ed..882f3635e4 100644 --- a/tests/compiler/std/map.optimized.wat +++ b/tests/compiler/std/map.optimized.wat @@ -130,17 +130,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18404 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -154,9 +155,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -166,15 +167,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -1472,7 +1473,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1498,32 +1499,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1539,16 +1540,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1556,7 +1557,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1564,8 +1565,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1582,7 +1583,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1592,13 +1593,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1611,40 +1612,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -1674,8 +1675,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -1744,7 +1745,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -1752,7 +1753,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $7 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -1760,33 +1761,33 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $5 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $7 + local.set $6 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $5 + local.get $6 i32.ne if - local.get $4 + local.get $5 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $4 + local.get $5 i32.load8_s local.tee $8 i32.store8 local.get $2 - local.get $4 + local.get $5 i32.load offset=4 i32.store offset=4 local.get $2 @@ -1801,29 +1802,29 @@ i32.const 668265263 i32.mul local.tee $8 - local.get $8 i32.const 15 i32.shr_u + local.get $8 i32.xor i32.const -2048144777 i32.mul local.tee $8 - local.get $8 i32.const 13 i32.shr_u + local.get $8 i32.xor i32.const -1028477379 i32.mul local.tee $8 - local.get $8 i32.const 16 i32.shr_u + local.get $8 i32.xor local.get $1 i32.and i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add local.tee $8 i32.load @@ -1836,20 +1837,20 @@ i32.add local.set $2 end - local.get $4 + local.get $5 i32.const 12 i32.add - local.set $4 + local.set $5 br $while-continue|0 end end local.get $0 - local.get $5 + local.get $4 i32.store - local.get $5 + local.get $4 if local.get $0 - local.get $5 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -1865,7 +1866,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -1878,49 +1879,50 @@ ) (func $~lib/map/Map#get (param $0 i32) (param $1 i32) (result i32) (local $2 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i32.extend8_s - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - local.get $0 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - local.get $0 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - local.get $0 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $0 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i32.extend8_s + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $0 + i32.const 15 + i32.shr_u + local.get $0 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $0 + i32.const 13 + i32.shr_u + local.get $0 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $0 + i32.const 16 + i32.shr_u + local.get $0 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $0 loop $while-continue|0 local.get $0 if + local.get $0 local.get $0 i32.load offset=8 local.tee $2 @@ -1937,6 +1939,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $2 i32.const -2 i32.and @@ -1945,9 +1948,8 @@ end end i32.const 0 - local.set $0 end - local.get $0 + local.tee $0 i32.eqz if i32.const 1616 @@ -2642,314 +2644,314 @@ i32.store8 end ) - (func $~lib/array/ensureCapacity (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) + (func $~lib/rt/itcms/__renew (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) local.get $0 - i32.load offset=8 - local.tee $8 - local.get $2 - i32.shr_u + i32.const 20 + i32.sub + local.tee $2 + i32.load + i32.const -4 + i32.and + i32.const 16 + i32.sub local.get $1 - i32.lt_u + i32.ge_u if - i32.const 1073741820 local.get $2 - i32.shr_u local.get $1 - i32.lt_u + i32.store offset=16 + local.get $0 + return + end + local.get $1 + local.get $2 + i32.load offset=12 + call $~lib/rt/itcms/__new + local.set $4 + local.get $1 + local.get $2 + i32.load offset=16 + local.tee $2 + local.get $1 + local.get $2 + i32.lt_u + select + local.set $5 + block $~lib/util/memory/memmove|inlined.0 + local.get $4 + local.tee $1 + local.get $0 + i32.eq + br_if $~lib/util/memory/memmove|inlined.0 + local.get $0 + local.get $1 + i32.sub + local.get $5 + i32.sub + i32.const 0 + local.get $5 + i32.const 1 + i32.shl + i32.sub + i32.le_u if - i32.const 1456 - i32.const 1728 - i32.const 18 - i32.const 48 - call $~lib/builtins/abort - unreachable + local.get $1 + local.get $0 + local.get $5 + call $~lib/util/memory/memcpy + br $~lib/util/memory/memmove|inlined.0 end local.get $0 - i32.load - local.set $4 - local.get $1 - i32.const 8 local.get $1 - i32.const 8 i32.gt_u - select - local.get $2 - i32.shl - local.set $6 - block $__inlined_func$~lib/rt/itcms/__renew (result i32) - local.get $3 + if + local.get $0 + i32.const 7 + i32.and + local.get $1 + i32.const 7 + i32.and + i32.eq if - local.get $8 - i32.const 1 - i32.shl - local.tee $1 - i32.const 1073741820 - local.get $1 - i32.const 1073741820 - i32.lt_u - select - local.tee $1 - local.get $6 - local.get $1 - local.get $6 - i32.gt_u - select - local.set $6 - end - local.get $6 - local.get $4 - local.tee $2 - i32.const 20 - i32.sub - local.tee $1 - i32.load - i32.const -4 - i32.and - i32.const 16 - i32.sub - i32.le_u - if - local.get $1 - local.get $6 - i32.store offset=16 - local.get $2 - br $__inlined_func$~lib/rt/itcms/__renew - end - local.get $6 - local.get $1 - i32.load offset=12 - call $~lib/rt/itcms/__new - local.tee $9 - local.set $3 - local.get $6 - local.get $1 - i32.load offset=16 - local.tee $1 - local.get $1 - local.get $6 - i32.gt_u - select - local.set $7 - block $~lib/util/memory/memmove|inlined.0 - local.get $3 - local.get $2 - local.tee $1 - i32.eq - br_if $~lib/util/memory/memmove|inlined.0 - local.get $1 - local.get $3 - i32.sub - local.get $7 - i32.sub - i32.const 0 - local.get $7 - i32.const 1 - i32.shl - i32.sub - i32.le_u - if - local.get $3 - local.get $1 - local.get $7 - call $~lib/util/memory/memcpy - br $~lib/util/memory/memmove|inlined.0 - end - local.get $1 - local.get $3 - i32.gt_u - if + loop $while-continue|0 local.get $1 i32.const 7 i32.and - local.get $3 - i32.const 7 - i32.and - i32.eq if - loop $while-continue|0 - local.get $3 - i32.const 7 - i32.and - if - local.get $7 - i32.eqz - br_if $~lib/util/memory/memmove|inlined.0 - local.get $7 - i32.const 1 - i32.sub - local.set $7 - local.get $3 - local.tee $4 - i32.const 1 - i32.add - local.set $3 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $4 - local.get $5 - i32.load8_u - i32.store8 - br $while-continue|0 - end - end - loop $while-continue|1 - local.get $7 - i32.const 8 - i32.ge_u - if - local.get $3 - local.get $1 - i64.load - i64.store - local.get $7 - i32.const 8 - i32.sub - local.set $7 - local.get $3 - i32.const 8 - i32.add - local.set $3 - local.get $1 - i32.const 8 - i32.add - local.set $1 - br $while-continue|1 - end - end + local.get $5 + i32.eqz + br_if $~lib/util/memory/memmove|inlined.0 + local.get $5 + i32.const 1 + i32.sub + local.set $5 + local.get $1 + local.tee $2 + i32.const 1 + i32.add + local.set $1 + local.get $0 + local.tee $3 + i32.const 1 + i32.add + local.set $0 + local.get $2 + local.get $3 + i32.load8_u + i32.store8 + br $while-continue|0 end - loop $while-continue|2 - local.get $7 - if - local.get $3 - local.tee $4 - i32.const 1 - i32.add - local.set $3 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $4 - local.get $5 - i32.load8_u - i32.store8 - local.get $7 - i32.const 1 - i32.sub - local.set $7 - br $while-continue|2 - end + end + loop $while-continue|1 + local.get $5 + i32.const 8 + i32.ge_u + if + local.get $1 + local.get $0 + i64.load + i64.store + local.get $5 + i32.const 8 + i32.sub + local.set $5 + local.get $1 + i32.const 8 + i32.add + local.set $1 + local.get $0 + i32.const 8 + i32.add + local.set $0 + br $while-continue|1 end - else + end + end + loop $while-continue|2 + local.get $5 + if local.get $1 - i32.const 7 - i32.and + local.tee $2 + i32.const 1 + i32.add + local.set $1 + local.get $0 + local.tee $3 + i32.const 1 + i32.add + local.set $0 + local.get $2 local.get $3 + i32.load8_u + i32.store8 + local.get $5 + i32.const 1 + i32.sub + local.set $5 + br $while-continue|2 + end + end + else + local.get $0 + i32.const 7 + i32.and + local.get $1 + i32.const 7 + i32.and + i32.eq + if + loop $while-continue|3 + local.get $1 + local.get $5 + i32.add i32.const 7 i32.and - i32.eq if - loop $while-continue|3 - local.get $3 - local.get $7 - i32.add - i32.const 7 - i32.and - if - local.get $7 - i32.eqz - br_if $~lib/util/memory/memmove|inlined.0 - local.get $3 - local.get $7 - i32.const 1 - i32.sub - local.tee $7 - i32.add - local.get $1 - local.get $7 - i32.add - i32.load8_u - i32.store8 - br $while-continue|3 - end - end - loop $while-continue|4 - local.get $7 - i32.const 8 - i32.ge_u - if - local.get $3 - local.get $7 - i32.const 8 - i32.sub - local.tee $7 - i32.add - local.get $1 - local.get $7 - i32.add - i64.load - i64.store - br $while-continue|4 - end - end + local.get $5 + i32.eqz + br_if $~lib/util/memory/memmove|inlined.0 + local.get $5 + i32.const 1 + i32.sub + local.tee $5 + local.get $1 + i32.add + local.get $0 + local.get $5 + i32.add + i32.load8_u + i32.store8 + br $while-continue|3 end - loop $while-continue|5 - local.get $7 - if - local.get $3 - local.get $7 - i32.const 1 - i32.sub - local.tee $7 - i32.add - local.get $1 - local.get $7 - i32.add - i32.load8_u - i32.store8 - br $while-continue|5 - end + end + loop $while-continue|4 + local.get $5 + i32.const 8 + i32.ge_u + if + local.get $5 + i32.const 8 + i32.sub + local.tee $5 + local.get $1 + i32.add + local.get $0 + local.get $5 + i32.add + i64.load + i64.store + br $while-continue|4 end end end - local.get $9 + loop $while-continue|5 + local.get $5 + if + local.get $5 + i32.const 1 + i32.sub + local.tee $5 + local.get $1 + i32.add + local.get $0 + local.get $5 + i32.add + i32.load8_u + i32.store8 + br $while-continue|5 + end + end end - local.tee $1 - local.get $8 + end + local.get $4 + ) + (func $~lib/array/ensureCapacity (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) + (local $4 i32) + (local $5 i32) + local.get $0 + i32.load offset=8 + local.tee $4 + local.get $2 + i32.shr_u + local.get $1 + i32.lt_u + if + i32.const 1073741820 + local.get $2 + i32.shr_u + local.get $1 + i32.lt_u + if + i32.const 1456 + i32.const 1728 + i32.const 18 + i32.const 48 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 8 + local.get $1 + i32.const 8 + i32.gt_u + select + local.get $2 + i32.shl + local.set $1 + local.get $0 + i32.load + local.tee $5 + local.get $3 + if + local.get $4 + i32.const 1 + i32.shl + local.tee $2 + i32.const 1073741820 + local.get $2 + i32.const 1073741820 + i32.lt_u + select + local.tee $2 + local.get $1 + local.get $1 + local.get $2 + i32.lt_u + select + local.set $1 + end + local.get $1 + call $~lib/rt/itcms/__renew + local.tee $2 + local.get $4 i32.add - local.get $6 - local.get $8 + local.get $1 + local.get $4 i32.sub call $~lib/memory/memory.fill - local.get $1 local.get $2 + local.get $5 i32.ne if local.get $0 - local.get $1 + local.get $2 i32.store local.get $0 - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 if local.get $0 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end end local.get $0 - local.get $6 + local.get $1 i32.store offset=8 end ) @@ -3085,7 +3087,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -3093,7 +3095,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $7 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -3101,33 +3103,33 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $5 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $7 + local.set $6 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $5 + local.get $6 i32.ne if - local.get $4 + local.get $5 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $4 + local.get $5 i32.load local.tee $8 i32.store local.get $2 - local.get $4 + local.get $5 i32.load offset=4 i32.store offset=4 local.get $2 @@ -3141,29 +3143,29 @@ i32.const 668265263 i32.mul local.tee $8 - local.get $8 i32.const 15 i32.shr_u + local.get $8 i32.xor i32.const -2048144777 i32.mul local.tee $8 - local.get $8 i32.const 13 i32.shr_u + local.get $8 i32.xor i32.const -1028477379 i32.mul local.tee $8 - local.get $8 i32.const 16 i32.shr_u + local.get $8 i32.xor local.get $1 i32.and i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add local.tee $8 i32.load @@ -3176,20 +3178,20 @@ i32.add local.set $2 end - local.get $4 + local.get $5 i32.const 12 i32.add - local.set $4 + local.set $5 br $while-continue|0 end end local.get $0 - local.get $5 + local.get $4 i32.store - local.get $5 + local.get $4 if local.get $0 - local.get $5 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -3205,7 +3207,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -3219,50 +3221,51 @@ (func $~lib/map/Map#delete (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - local.tee $2 - i32.extend8_s - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - local.get $1 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - local.get $1 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - local.get $1 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + local.tee $2 + i32.extend8_s + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $1 + i32.const 15 + i32.shr_u + local.get $1 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $1 + i32.const 13 + i32.shr_u + local.get $1 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $1 + i32.const 16 + i32.shr_u + local.get $1 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $1 loop $while-continue|0 local.get $1 if + local.get $1 local.get $1 i32.load offset=8 local.tee $3 @@ -3279,6 +3282,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $3 i32.const -2 i32.and @@ -3287,9 +3291,8 @@ end end i32.const 0 - local.set $1 end - local.get $1 + local.tee $1 i32.eqz if return @@ -3396,95 +3399,96 @@ (local $14 i32) (local $15 i32) (local $16 i32) + (local $17 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $4 i64.const 0 i64.store - local.get $2 + local.get $4 i64.const 0 i64.store offset=8 - local.get $2 + local.get $4 i32.const 0 i32.store offset=16 - local.get $2 + local.get $4 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store - local.get $3 + local.get $2 i32.const 24 i32.const 3 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $2 i32.store - local.get $11 + local.get $2 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $6 i32.store - local.get $3 + local.get $6 if - local.get $11 - local.get $3 + local.get $2 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $2 i32.const 3 i32.store offset=4 - local.get $11 + local.get $2 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $6 i32.store offset=8 - local.get $3 + local.get $6 if - local.get $11 - local.get $3 + local.get $2 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $2 i32.const 4 i32.store offset=12 - local.get $11 + local.get $2 i32.const 0 i32.store offset=16 - local.get $11 + local.get $2 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $4 local.get $2 - local.get $11 i32.store loop $for-loop|1 - local.get $4 + local.get $5 i32.extend8_s i32.const 100 i32.lt_s if - local.get $11 + local.get $2 i32.load - local.get $11 + local.get $2 i32.load offset=4 - local.get $4 + local.get $5 i32.extend8_s i32.const -1028477379 i32.mul @@ -3494,62 +3498,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $5 + local.set $4 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $5 + local.get $4 if - local.get $5 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 - i32.load8_u local.get $4 + i32.load8_u + local.get $5 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $2 + local.get $6 i32.const -2 i32.and - local.set $5 + local.set $4 br $while-continue|0 end end i32.const 0 - local.set $5 + local.set $4 end - local.get $5 + local.get $4 if i32.const 0 i32.const 1568 @@ -3558,19 +3562,19 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $4 - local.get $4 + local.get $2 + local.get $5 + local.get $5 i32.extend8_s - local.tee $2 + local.tee $4 i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 + local.get $2 i32.load - local.get $11 - i32.load offset=4 local.get $2 + i32.load offset=4 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761394 @@ -3579,62 +3583,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $5 + local.set $4 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $5 + local.get $4 if - local.get $5 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 - i32.load8_u local.get $4 + i32.load8_u + local.get $5 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $2 + local.get $6 i32.const -2 i32.and - local.set $5 + local.set $4 br $while-continue|02 end end i32.const 0 - local.set $5 + local.set $4 end - local.get $5 + local.get $4 i32.eqz if i32.const 0 @@ -3644,10 +3648,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $4 + local.get $2 + local.get $5 call $~lib/map/Map#get - local.get $4 + local.get $5 i32.extend8_s i32.const 10 i32.add @@ -3660,14 +3664,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 i32.const 1 i32.add - local.set $4 + local.set $5 br $for-loop|1 end end - local.get $11 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -3680,18 +3684,18 @@ unreachable end i32.const 0 - local.set $4 + local.set $5 loop $for-loop|3 - local.get $4 + local.get $5 i32.extend8_s i32.const 100 i32.lt_s if - local.get $11 + local.get $2 i32.load - local.get $11 + local.get $2 i32.load offset=4 - local.get $4 + local.get $5 i32.extend8_s i32.const -1028477379 i32.mul @@ -3701,62 +3705,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $5 + local.set $4 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $5 + local.get $4 if - local.get $5 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 - i32.load8_u local.get $4 + i32.load8_u + local.get $5 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $2 + local.get $6 i32.const -2 i32.and - local.set $5 + local.set $4 br $while-continue|05 end end i32.const 0 - local.set $5 + local.set $4 end - local.get $5 + local.get $4 i32.eqz if i32.const 0 @@ -3766,10 +3770,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $4 + local.get $2 + local.get $5 call $~lib/map/Map#get - local.get $4 + local.get $5 i32.extend8_s i32.const 10 i32.add @@ -3782,19 +3786,19 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $4 - local.get $4 + local.get $2 + local.get $5 + local.get $5 i32.extend8_s - local.tee $2 + local.tee $4 i32.const 20 i32.add call $~lib/map/Map#set - local.get $11 + local.get $2 i32.load - local.get $11 - i32.load offset=4 local.get $2 + i32.load offset=4 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761394 @@ -3803,62 +3807,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $5 + local.set $4 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $5 + local.get $4 if - local.get $5 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 - i32.load8_u local.get $4 + i32.load8_u + local.get $5 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $2 + local.get $6 i32.const -2 i32.and - local.set $5 + local.set $4 br $while-continue|08 end end i32.const 0 - local.set $5 + local.set $4 end - local.get $5 + local.get $4 i32.eqz if i32.const 0 @@ -3868,10 +3872,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $4 + local.get $2 + local.get $5 call $~lib/map/Map#get - local.get $4 + local.get $5 i32.extend8_s i32.const 20 i32.add @@ -3884,14 +3888,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 i32.const 1 i32.add - local.set $4 + local.set $5 br $for-loop|3 end end - local.get $11 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -3904,39 +3908,39 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $2 + local.tee $4 + local.get $4 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $6 i32.const 0 i32.store - local.get $11 + local.get $2 i32.load offset=8 - local.set $8 - local.get $11 - i32.load offset=16 - local.tee $7 - local.set $6 + local.set $7 local.get $2 + i32.load offset=16 + local.tee $8 + local.set $9 + local.get $6 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $4 i64.const 0 i64.store - local.get $3 + local.get $4 i32.const 16 i32.const 4 call $~lib/rt/itcms/__new @@ -3954,7 +3958,7 @@ local.get $4 i32.const 0 i32.store offset=12 - local.get $6 + local.get $9 i32.const 1073741820 i32.gt_u if @@ -3966,56 +3970,56 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $9 i32.const 8 - local.get $6 + local.get $9 i32.const 8 i32.gt_u select - local.tee $5 + local.tee $10 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $11 i32.store offset=4 - local.get $3 - local.get $5 + local.get $11 + local.get $10 call $~lib/memory/memory.fill local.get $4 - local.get $3 + local.get $11 i32.store - local.get $3 + local.get $11 if local.get $4 - local.get $3 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $4 - local.get $3 + local.get $11 i32.store offset=4 local.get $4 - local.get $5 + local.get $10 i32.store offset=8 local.get $4 - local.get $6 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $6 local.get $4 i32.store loop $for-loop|0 - local.get $7 - local.get $10 - i32.gt_s + local.get $3 + local.get $8 + i32.lt_s if - local.get $10 + local.get $3 i32.const 12 i32.mul - local.get $8 + local.get $7 i32.add - local.tee $2 + local.tee $6 i32.load offset=8 i32.const 1 i32.and @@ -4023,7 +4027,7 @@ if local.get $4 local.get $1 - local.get $2 + local.get $6 i32.load8_s call $~lib/array/Array#__set local.get $1 @@ -4031,10 +4035,10 @@ i32.add local.set $1 end - local.get $10 + local.get $3 i32.const 1 i32.add - local.set $10 + local.set $3 br $for-loop|0 end end @@ -4053,9 +4057,9 @@ local.get $4 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $2 call $~lib/map/Map#values - local.tee $15 + local.tee $10 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -4065,60 +4069,60 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i32.const 0 i32.store - local.get $1 + local.get $3 i32.const 24 i32.const 6 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $13 i32.store - local.get $10 + local.get $13 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 if - local.get $10 - local.get $1 + local.get $13 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $13 i32.const 3 i32.store offset=4 - local.get $10 + local.get $13 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $3 i32.store offset=8 - local.get $1 + local.get $3 if - local.get $10 - local.get $1 + local.get $13 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $13 i32.const 4 i32.store offset=12 - local.get $10 + local.get $13 i32.const 0 i32.store offset=16 - local.get $10 + local.get $13 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $13 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $9 + local.tee $8 i32.store offset=16 loop $for-loop|4 local.get $4 @@ -4127,7 +4131,7 @@ i32.gt_s if local.get $0 - local.tee $3 + local.tee $5 local.get $4 i32.load offset=12 i32.ge_u @@ -4139,21 +4143,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 local.get $4 i32.load offset=4 i32.add i32.load8_s - local.set $2 - local.get $15 - local.get $3 + local.set $6 + local.get $10 + local.get $5 call $~lib/array/Array#__get - local.set $8 - local.get $11 + local.set $9 + local.get $2 i32.load - local.get $11 - i32.load offset=4 local.get $2 + i32.load offset=4 + local.get $6 + local.tee $1 i32.extend8_s i32.const -1028477379 i32.mul @@ -4164,61 +4169,61 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $5 - block $__inlined_func$~lib/map/Map#find10 - loop $while-continue|011 - local.get $5 + local.set $0 + block $__inlined_func$~lib/map/Map#find12 + loop $while-continue|013 + local.get $0 if - local.get $5 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 + local.get $0 i32.load8_u - local.get $2 + local.get $1 i32.const 255 i32.and i32.eq end - br_if $__inlined_func$~lib/map/Map#find10 - local.get $0 + br_if $__inlined_func$~lib/map/Map#find12 + local.get $3 i32.const -2 i32.and - local.set $5 - br $while-continue|011 + local.set $0 + br $while-continue|013 end end i32.const 0 - local.set $5 + local.set $0 end - local.get $5 + local.get $0 i32.eqz if i32.const 0 @@ -4228,14 +4233,14 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $2 i32.load - local.get $11 + local.get $2 i32.load offset=4 - local.get $8 + local.get $9 i32.const 20 i32.sub - local.tee $1 + local.tee $3 i32.extend8_s i32.const -1028477379 i32.mul @@ -4246,61 +4251,61 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $5 - block $__inlined_func$~lib/map/Map#find13 - loop $while-continue|014 - local.get $5 + local.set $0 + block $__inlined_func$~lib/map/Map#find15 + loop $while-continue|016 + local.get $0 if - local.get $5 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 + local.get $0 i32.load8_u - local.get $1 + local.get $3 i32.const 255 i32.and i32.eq end - br_if $__inlined_func$~lib/map/Map#find13 - local.get $0 + br_if $__inlined_func$~lib/map/Map#find15 + local.get $7 i32.const -2 i32.and - local.set $5 - br $while-continue|014 + local.set $0 + br $while-continue|016 end end i32.const 0 - local.set $5 + local.set $0 end - local.get $5 + local.get $0 i32.eqz if i32.const 0 @@ -4317,13 +4322,13 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $10 + local.get $13 i32.load - local.get $2 + local.get $6 i32.extend8_s i32.const -1028477379 i32.mul @@ -4334,40 +4339,41 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor - local.tee $14 - local.get $10 + local.tee $11 + local.get $13 i32.load offset=4 i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/map/Map#find - loop $while-continue|015 - local.get $0 + loop $while-continue|017 + local.get $3 if - local.get $0 + local.get $3 + local.tee $0 i32.load offset=4 - local.tee $1 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -4375,17 +4381,17 @@ else local.get $0 i32.load8_u - local.get $2 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $1 + local.get $3 i32.const -2 i32.and - local.set $0 - br $while-continue|015 + local.set $3 + br $while-continue|017 end end i32.const 0 @@ -4394,18 +4400,18 @@ local.get $0 if local.get $0 - local.get $2 + local.get $1 i32.store8 offset=1 else - local.get $10 + local.get $13 i32.load offset=16 - local.get $10 + local.get $13 i32.load offset=12 i32.eq if - local.get $10 + local.get $13 i32.load offset=20 - local.get $10 + local.get $13 i32.load offset=12 i32.const 3 i32.mul @@ -4413,17 +4419,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $10 + local.get $13 i32.load offset=4 else - local.get $10 + local.get $13 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $7 + local.set $14 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -4431,20 +4437,20 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 i64.store local.get $0 - local.get $7 + local.get $14 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $15 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -4452,45 +4458,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $13 + local.tee $12 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $3 i32.store offset=4 - local.get $10 + local.get $13 i32.load offset=8 - local.tee $16 - local.get $10 + local.tee $7 + local.get $13 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $12 - local.get $1 + local.set $16 + local.get $3 local.set $0 - loop $while-continue|016 - local.get $12 + loop $while-continue|018 + local.get $7 local.get $16 i32.ne if - local.get $16 + local.get $7 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $16 + local.get $7 i32.load8_s - local.tee $5 + local.tee $17 i32.store8 local.get $0 - local.get $16 + local.get $7 i32.load8_s offset=1 i32.store8 offset=1 local.get $0 - local.get $5 + local.get $17 i32.extend8_s i32.const -1028477379 i32.mul @@ -4500,35 +4506,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $5 + local.tee $17 + local.get $17 i32.const 15 i32.shr_u - local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $5 + local.tee $17 + local.get $17 i32.const 13 i32.shr_u - local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $5 + local.tee $17 + local.get $17 i32.const 16 i32.shr_u - local.get $5 i32.xor - local.get $7 + local.get $14 i32.and i32.const 2 i32.shl - local.get $6 + local.get $15 i32.add - local.tee $5 + local.tee $17 i32.load i32.store offset=4 - local.get $5 + local.get $17 local.get $0 i32.store local.get $0 @@ -4536,39 +4542,39 @@ i32.add local.set $0 end - local.get $16 + local.get $7 i32.const 8 i32.add - local.set $16 - br $while-continue|016 + local.set $7 + br $while-continue|018 end end - local.get $10 - local.get $6 + local.get $13 + local.get $15 i32.store - local.get $6 + local.get $15 if - local.get $10 - local.get $6 + local.get $13 + local.get $15 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $7 + local.get $13 + local.get $14 i32.store offset=4 - local.get $10 - local.get $1 + local.get $13 + local.get $3 i32.store offset=8 - local.get $1 + local.get $3 if - local.get $10 - local.get $1 + local.get $13 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 local.get $13 + local.get $12 i32.store offset=12 - local.get $10 - local.get $10 + local.get $13 + local.get $13 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -4577,70 +4583,70 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $13 i32.load offset=8 - local.tee $1 + local.tee $0 i32.store - local.get $10 - local.get $10 + local.get $13 + local.get $13 i32.load offset=16 - local.tee $0 + local.tee $3 i32.const 1 i32.add i32.store offset=16 - local.get $0 + local.get $3 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add - local.tee $1 - local.get $2 + local.tee $0 + local.get $6 i32.store8 + local.get $0 local.get $1 - local.get $2 i32.store8 offset=1 - local.get $10 - local.get $10 + local.get $13 + local.get $13 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $1 - local.get $10 + local.get $0 + local.get $13 i32.load - local.get $10 + local.get $13 i32.load offset=4 - local.get $14 + local.get $11 i32.and i32.const 2 i32.shl i32.add - local.tee $0 + local.tee $1 i32.load i32.store offset=4 - local.get $0 local.get $1 + local.get $0 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 local.get $8 + local.get $9 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $3 + local.get $5 i32.const 1 i32.add local.set $0 br $for-loop|4 end end - local.get $10 + local.get $13 i32.load offset=20 i32.const 100 i32.ne @@ -4652,7 +4658,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $8 i32.load offset=20 i32.const 100 i32.ne @@ -4672,9 +4678,9 @@ i32.const 50 i32.lt_s if - local.get $11 + local.get $2 i32.load - local.get $11 + local.get $2 i32.load offset=4 local.get $0 i32.extend8_s @@ -4687,23 +4693,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 @@ -4711,8 +4717,8 @@ i32.add i32.load local.set $4 - block $__inlined_func$~lib/map/Map#find18 - loop $while-continue|019 + block $__inlined_func$~lib/map/Map#find20 + loop $while-continue|021 local.get $4 if local.get $4 @@ -4730,12 +4736,12 @@ i32.and i32.eq end - br_if $__inlined_func$~lib/map/Map#find18 + br_if $__inlined_func$~lib/map/Map#find20 local.get $1 i32.const -2 i32.and local.set $4 - br $while-continue|019 + br $while-continue|021 end end i32.const 0 @@ -4751,7 +4757,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $2 local.get $0 call $~lib/map/Map#get local.get $0 @@ -4767,12 +4773,12 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $2 local.get $0 call $~lib/map/Map#delete - local.get $11 + local.get $2 i32.load - local.get $11 + local.get $2 i32.load offset=4 local.get $0 i32.extend8_s @@ -4785,23 +4791,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 @@ -4809,8 +4815,8 @@ i32.add i32.load local.set $4 - block $__inlined_func$~lib/map/Map#find21 - loop $while-continue|022 + block $__inlined_func$~lib/map/Map#find23 + loop $while-continue|024 local.get $4 if local.get $4 @@ -4828,12 +4834,12 @@ i32.and i32.eq end - br_if $__inlined_func$~lib/map/Map#find21 + br_if $__inlined_func$~lib/map/Map#find23 local.get $1 i32.const -2 i32.and local.set $4 - br $while-continue|022 + br $while-continue|024 end end i32.const 0 @@ -4855,7 +4861,7 @@ br $for-loop|6 end end - local.get $11 + local.get $2 i32.load offset=20 i32.const 50 i32.ne @@ -4875,9 +4881,9 @@ i32.const 50 i32.lt_s if - local.get $11 + local.get $2 i32.load - local.get $11 + local.get $2 i32.load offset=4 local.get $0 i32.extend8_s @@ -4890,23 +4896,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 @@ -4914,8 +4920,8 @@ i32.add i32.load local.set $4 - block $__inlined_func$~lib/map/Map#find24 - loop $while-continue|025 + block $__inlined_func$~lib/map/Map#find26 + loop $while-continue|027 local.get $4 if local.get $4 @@ -4933,12 +4939,12 @@ i32.and i32.eq end - br_if $__inlined_func$~lib/map/Map#find24 + br_if $__inlined_func$~lib/map/Map#find26 local.get $1 i32.const -2 i32.and local.set $4 - br $while-continue|025 + br $while-continue|027 end end i32.const 0 @@ -4953,7 +4959,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $2 local.get $0 local.get $0 i32.extend8_s @@ -4961,9 +4967,9 @@ i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 + local.get $2 i32.load - local.get $11 + local.get $2 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -4975,23 +4981,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 @@ -4999,8 +5005,8 @@ i32.add i32.load local.set $4 - block $__inlined_func$~lib/map/Map#find27 - loop $while-continue|028 + block $__inlined_func$~lib/map/Map#find29 + loop $while-continue|030 local.get $4 if local.get $4 @@ -5018,12 +5024,12 @@ i32.and i32.eq end - br_if $__inlined_func$~lib/map/Map#find27 + br_if $__inlined_func$~lib/map/Map#find29 local.get $1 i32.const -2 i32.and local.set $4 - br $while-continue|028 + br $while-continue|030 end end i32.const 0 @@ -5039,12 +5045,12 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $2 local.get $0 call $~lib/map/Map#delete - local.get $11 + local.get $2 i32.load - local.get $11 + local.get $2 i32.load offset=4 local.get $0 i32.extend8_s @@ -5057,23 +5063,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 @@ -5081,8 +5087,8 @@ i32.add i32.load local.set $4 - block $__inlined_func$~lib/map/Map#find30 - loop $while-continue|031 + block $__inlined_func$~lib/map/Map#find32 + loop $while-continue|033 local.get $4 if local.get $4 @@ -5100,12 +5106,12 @@ i32.and i32.eq end - br_if $__inlined_func$~lib/map/Map#find30 + br_if $__inlined_func$~lib/map/Map#find32 local.get $1 i32.const -2 i32.and local.set $4 - br $while-continue|031 + br $while-continue|033 end end i32.const 0 @@ -5127,7 +5133,7 @@ br $for-loop|8 end end - local.get $11 + local.get $2 i32.load offset=20 i32.const 50 i32.ne @@ -5139,9 +5145,9 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $2 call $~lib/map/Map#clear - local.get $11 + local.get $2 i32.load offset=20 if i32.const 0 @@ -5199,7 +5205,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -5207,7 +5213,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $7 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -5215,37 +5221,39 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $5 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $7 + local.set $6 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $5 + local.get $6 i32.ne if - local.get $4 + local.get $5 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $4 + local.get $5 i32.load8_u local.tee $8 i32.store8 local.get $2 - local.get $4 + local.get $5 i32.load offset=4 i32.store offset=4 local.get $2 local.get $8 + i32.const 255 + i32.and i32.const -1028477379 i32.mul i32.const 374761394 @@ -5255,29 +5263,29 @@ i32.const 668265263 i32.mul local.tee $8 - local.get $8 i32.const 15 i32.shr_u + local.get $8 i32.xor i32.const -2048144777 i32.mul local.tee $8 - local.get $8 i32.const 13 i32.shr_u + local.get $8 i32.xor i32.const -1028477379 i32.mul local.tee $8 - local.get $8 i32.const 16 i32.shr_u + local.get $8 i32.xor local.get $1 i32.and i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add local.tee $8 i32.load @@ -5290,20 +5298,20 @@ i32.add local.set $2 end - local.get $4 + local.get $5 i32.const 12 i32.add - local.set $4 + local.set $5 br $while-continue|0 end end local.get $0 - local.get $5 + local.get $4 i32.store - local.get $5 + local.get $4 if local.get $0 - local.get $5 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -5319,7 +5327,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -5332,50 +5340,51 @@ ) (func $~lib/map/Map#get (param $0 i32) (param $1 i32) (result i32) (local $2 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 255 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - local.get $0 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - local.get $0 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - local.get $0 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $0 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $0 + i32.const 15 + i32.shr_u + local.get $0 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $0 + i32.const 13 + i32.shr_u + local.get $0 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $0 + i32.const 16 + i32.shr_u + local.get $0 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $0 loop $while-continue|0 local.get $0 if + local.get $0 local.get $0 i32.load offset=8 local.tee $2 @@ -5392,6 +5401,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $2 i32.const -2 i32.and @@ -5400,9 +5410,8 @@ end end i32.const 0 - local.set $0 end - local.get $0 + local.tee $0 i32.eqz if i32.const 1616 @@ -5418,51 +5427,52 @@ (func $~lib/map/Map#delete (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - local.tee $2 - i32.const 255 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - local.get $1 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - local.get $1 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - local.get $1 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + local.tee $2 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $1 + i32.const 15 + i32.shr_u + local.get $1 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $1 + i32.const 13 + i32.shr_u + local.get $1 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $1 + i32.const 16 + i32.shr_u + local.get $1 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $1 loop $while-continue|0 local.get $1 if + local.get $1 local.get $1 i32.load offset=8 local.tee $3 @@ -5479,6 +5489,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $3 i32.const -2 i32.and @@ -5487,9 +5498,8 @@ end end i32.const 0 - local.set $1 end - local.get $1 + local.tee $1 i32.eqz if return @@ -5559,33 +5569,34 @@ (local $14 i32) (local $15 i32) (local $16 i32) + (local $17 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $5 i64.const 0 i64.store - local.get $2 + local.get $5 i64.const 0 i64.store offset=8 - local.get $2 + local.get $5 i32.const 0 i32.store offset=16 - local.get $2 + local.get $5 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $3 i32.const 0 @@ -5594,127 +5605,128 @@ i32.const 24 i32.const 8 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $3 i32.store - local.get $11 + local.get $3 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $6 i32.store - local.get $3 + local.get $6 if - local.get $11 local.get $3 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $3 i32.const 3 i32.store offset=4 - local.get $11 + local.get $3 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $6 i32.store offset=8 - local.get $3 + local.get $6 if - local.get $11 local.get $3 - call $byn-split-outlined-A$~lib/rt/itcms/__link - end - local.get $11 - i32.const 4 - i32.store offset=12 - local.get $11 - i32.const 0 - i32.store offset=16 - local.get $11 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $2 - local.get $11 - i32.store - loop $for-loop|1 - local.get $4 - i32.const 255 - i32.and - i32.const 100 - i32.lt_u - if - local.get $11 - i32.load - local.get $11 - i32.load offset=4 - local.get $4 - i32.const 255 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - i32.const 15 - i32.shr_u - local.get $2 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - i32.const 13 - i32.shr_u - local.get $2 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - i32.const 16 - i32.shr_u - local.get $2 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - block $__inlined_func$~lib/map/Map#find + local.get $6 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $3 + i32.const 4 + i32.store offset=12 + local.get $3 + i32.const 0 + i32.store offset=16 + local.get $3 + i32.const 0 + i32.store offset=20 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $5 + local.get $3 + i32.store + loop $for-loop|1 + local.get $0 + i32.const 255 + i32.and + i32.const 100 + i32.lt_u + if + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + local.get $0 + local.tee $5 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $6 + i32.const 15 + i32.shr_u + local.get $6 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $6 + i32.const 13 + i32.shr_u + local.get $6 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $6 + i32.const 16 + i32.shr_u + local.get $6 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $6 loop $while-continue|0 - local.get $5 + local.get $6 if - local.get $5 + local.get $6 + local.get $6 i32.load offset=8 - local.tee $2 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 + local.get $6 i32.load8_u - local.get $4 + local.get $5 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $2 + drop + local.get $7 i32.const -2 i32.and - local.set $5 + local.set $6 br $while-continue|0 end end i32.const 0 - local.set $5 end - local.get $5 if i32.const 0 i32.const 1568 @@ -5723,84 +5735,86 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $4 - local.get $4 + local.get $3 + local.get $0 + local.get $0 i32.const 255 i32.and - local.tee $2 i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 - i32.load - local.get $11 - i32.load offset=4 - local.get $2 - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - i32.const 15 - i32.shr_u - local.get $2 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - i32.const 13 - i32.shr_u - local.get $2 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - i32.const 16 - i32.shr_u - local.get $2 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - block $__inlined_func$~lib/map/Map#find1 + block $__inlined_func$~lib/map/Map#find1 (result i32) + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + local.get $0 + local.tee $5 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $6 + i32.const 15 + i32.shr_u + local.get $6 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $6 + i32.const 13 + i32.shr_u + local.get $6 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $6 + i32.const 16 + i32.shr_u + local.get $6 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $6 loop $while-continue|02 - local.get $5 + local.get $6 if - local.get $5 + local.get $6 + local.get $6 i32.load offset=8 - local.tee $2 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 + local.get $6 i32.load8_u - local.get $4 + local.get $5 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $2 + drop + local.get $7 i32.const -2 i32.and - local.set $5 + local.set $6 br $while-continue|02 end end i32.const 0 - local.set $5 end - local.get $5 i32.eqz if i32.const 0 @@ -5810,10 +5824,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $4 + local.get $3 + local.get $0 call $~lib/map/Map#get - local.get $4 + local.get $0 i32.const 255 i32.and i32.const 10 @@ -5827,14 +5841,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $0 i32.const 1 i32.add - local.set $4 + local.set $0 br $for-loop|1 end end - local.get $11 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -5847,85 +5861,86 @@ unreachable end i32.const 0 - local.set $4 + local.set $0 loop $for-loop|3 - local.get $4 + local.get $0 i32.const 255 i32.and i32.const 100 i32.lt_u if - local.get $11 - i32.load - local.get $11 - i32.load offset=4 - local.get $4 - i32.const 255 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - i32.const 15 - i32.shr_u - local.get $2 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - i32.const 13 - i32.shr_u - local.get $2 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - i32.const 16 - i32.shr_u - local.get $2 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - block $__inlined_func$~lib/map/Map#find4 + block $__inlined_func$~lib/map/Map#find4 (result i32) + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + local.get $0 + local.tee $5 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $6 + i32.const 15 + i32.shr_u + local.get $6 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $6 + i32.const 13 + i32.shr_u + local.get $6 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $6 + i32.const 16 + i32.shr_u + local.get $6 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $6 loop $while-continue|05 - local.get $5 + local.get $6 if - local.get $5 + local.get $6 + local.get $6 i32.load offset=8 - local.tee $2 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 + local.get $6 i32.load8_u - local.get $4 + local.get $5 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $2 + drop + local.get $7 i32.const -2 i32.and - local.set $5 + local.set $6 br $while-continue|05 end end i32.const 0 - local.set $5 end - local.get $5 i32.eqz if i32.const 0 @@ -5934,11 +5949,11 @@ i32.const 5 call $~lib/builtins/abort unreachable - end - local.get $11 - local.get $4 + end + local.get $3 + local.get $0 call $~lib/map/Map#get - local.get $4 + local.get $0 i32.const 255 i32.and i32.const 10 @@ -5952,84 +5967,86 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $4 - local.get $4 + local.get $3 + local.get $0 + local.get $0 i32.const 255 i32.and - local.tee $2 i32.const 20 i32.add call $~lib/map/Map#set - local.get $11 - i32.load - local.get $11 - i32.load offset=4 - local.get $2 - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - i32.const 15 - i32.shr_u - local.get $2 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - i32.const 13 - i32.shr_u - local.get $2 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - i32.const 16 - i32.shr_u - local.get $2 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - block $__inlined_func$~lib/map/Map#find7 + block $__inlined_func$~lib/map/Map#find7 (result i32) + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + local.get $0 + local.tee $5 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $6 + i32.const 15 + i32.shr_u + local.get $6 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $6 + i32.const 13 + i32.shr_u + local.get $6 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $6 + i32.const 16 + i32.shr_u + local.get $6 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $6 loop $while-continue|08 - local.get $5 + local.get $6 if - local.get $5 + local.get $6 + local.get $6 i32.load offset=8 - local.tee $2 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 + local.get $6 i32.load8_u - local.get $4 + local.get $5 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $2 + drop + local.get $7 i32.const -2 i32.and - local.set $5 + local.set $6 br $while-continue|08 end end i32.const 0 - local.set $5 end - local.get $5 i32.eqz if i32.const 0 @@ -6039,10 +6056,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $4 + local.get $3 + local.get $0 call $~lib/map/Map#get - local.get $4 + local.get $0 i32.const 255 i32.and i32.const 20 @@ -6056,14 +6073,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $0 i32.const 1 i32.add - local.set $4 + local.set $0 br $for-loop|3 end end - local.get $11 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -6076,57 +6093,57 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $2 + local.tee $0 + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $5 i32.const 0 i32.store - local.get $11 + local.get $3 i32.load offset=8 - local.set $8 - local.get $11 + local.set $7 + local.get $3 i32.load offset=16 - local.tee $7 - local.set $6 - local.get $2 + local.tee $8 + local.set $9 + local.get $5 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $0 i64.const 0 i64.store - local.get $3 + local.get $0 i32.const 16 i32.const 9 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $0 i32.store - local.get $4 + local.get $0 i32.const 0 i32.store - local.get $4 + local.get $0 i32.const 0 i32.store offset=4 - local.get $4 + local.get $0 i32.const 0 i32.store offset=8 - local.get $4 + local.get $0 i32.const 0 i32.store offset=12 - local.get $6 + local.get $9 i32.const 1073741820 i32.gt_u if @@ -6138,96 +6155,97 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $9 i32.const 8 - local.get $6 + local.get $9 i32.const 8 i32.gt_u select - local.tee $5 + local.tee $10 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $11 i32.store offset=4 - local.get $3 - local.get $5 + local.get $11 + local.get $10 call $~lib/memory/memory.fill - local.get $4 - local.get $3 + local.get $0 + local.get $11 i32.store - local.get $3 + local.get $11 if - local.get $4 - local.get $3 + local.get $0 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $3 + local.get $0 + local.get $11 i32.store offset=4 - local.get $4 - local.get $5 + local.get $0 + local.get $10 i32.store offset=8 - local.get $4 - local.get $6 + local.get $0 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 - local.get $4 + local.get $5 + local.get $0 + local.tee $5 i32.store loop $for-loop|0 - local.get $7 - local.get $10 - i32.gt_s + local.get $4 + local.get $8 + i32.lt_s if - local.get $10 + local.get $4 i32.const 12 i32.mul - local.get $8 + local.get $7 i32.add - local.tee $2 + local.tee $0 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $4 - local.get $1 + local.get $5 local.get $2 + local.get $0 i32.load8_u call $~lib/array/Array#__set - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 end - local.get $10 + local.get $4 i32.const 1 i32.add - local.set $10 + local.set $4 br $for-loop|0 end end - local.get $4 - local.get $1 + local.get $5 + local.get $2 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $4 - local.get $1 + local.get $5 + local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $3 call $~lib/map/Map#values - local.tee $15 + local.tee $10 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -6237,72 +6255,71 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.const 10 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $13 i32.store - local.get $10 + local.get $13 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if - local.get $10 - local.get $1 + local.get $13 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $13 i32.const 3 i32.store offset=4 - local.get $10 + local.get $13 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=8 - local.get $1 + local.get $2 if - local.get $10 - local.get $1 + local.get $13 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $13 i32.const 4 i32.store offset=12 - local.get $10 + local.get $13 i32.const 0 i32.store offset=16 - local.get $10 + local.get $13 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $13 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $9 + local.tee $8 i32.store offset=16 loop $for-loop|4 - local.get $4 + local.get $5 i32.load offset=12 - local.get $0 + local.get $1 i32.gt_s if - local.get $0 - local.tee $3 - local.get $4 + local.get $5 i32.load offset=12 - i32.ge_u + local.get $1 + i32.le_u if i32.const 1248 i32.const 1728 @@ -6311,85 +6328,88 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $4 + local.get $1 + local.get $5 i32.load offset=4 i32.add i32.load8_u local.set $2 - local.get $15 - local.get $3 + local.get $10 + local.get $1 call $~lib/array/Array#__get - local.set $8 - local.get $11 - i32.load - local.get $11 - i32.load offset=4 - local.get $2 - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - i32.const 15 - i32.shr_u - local.get $0 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - i32.const 13 - i32.shr_u - local.get $0 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - i32.const 16 - i32.shr_u - local.get $0 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - block $__inlined_func$~lib/map/Map#find10 + local.set $9 + block $__inlined_func$~lib/map/Map#find10 (result i32) + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + local.get $2 + local.tee $0 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $4 + i32.const 15 + i32.shr_u + local.get $4 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $4 + i32.const 13 + i32.shr_u + local.get $4 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $4 + i32.const 16 + i32.shr_u + local.get $4 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $4 loop $while-continue|011 - local.get $5 + local.get $4 if - local.get $5 + local.get $4 + local.get $4 i32.load offset=8 - local.tee $0 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 + local.get $4 i32.load8_u - local.get $2 + local.get $0 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $0 + drop + local.get $6 i32.const -2 i32.and - local.set $5 + local.set $4 br $while-continue|011 end end i32.const 0 - local.set $5 end - local.get $5 i32.eqz if i32.const 0 @@ -6399,80 +6419,80 @@ call $~lib/builtins/abort unreachable end - local.get $11 - i32.load - local.get $11 - i32.load offset=4 - local.get $8 - i32.const 20 - i32.sub - local.tee $1 - i32.const 255 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - i32.const 15 - i32.shr_u - local.get $0 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - i32.const 13 - i32.shr_u - local.get $0 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - i32.const 16 - i32.shr_u - local.get $0 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - block $__inlined_func$~lib/map/Map#find13 + block $__inlined_func$~lib/map/Map#find13 (result i32) + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + local.get $9 + i32.const 20 + i32.sub + local.tee $4 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $0 + i32.const 15 + i32.shr_u + local.get $0 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $0 + i32.const 13 + i32.shr_u + local.get $0 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $0 + i32.const 16 + i32.shr_u + local.get $0 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $0 loop $while-continue|014 - local.get $5 + local.get $0 if - local.get $5 + local.get $0 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 + local.get $0 i32.load8_u - local.get $1 + local.get $4 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $0 + drop + local.get $6 i32.const -2 i32.and - local.set $5 + local.set $0 br $while-continue|014 end end i32.const 0 - local.set $5 end - local.get $5 i32.eqz if i32.const 0 @@ -6482,6 +6502,7 @@ call $~lib/builtins/abort unreachable end + local.get $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -6489,11 +6510,12 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $10 + local.set $6 + local.get $13 i32.load local.get $2 i32.const -1028477379 @@ -6505,40 +6527,41 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor - local.tee $14 - local.get $10 + local.tee $11 + local.get $13 i32.load offset=4 i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $4 block $__inlined_func$~lib/map/Map#find loop $while-continue|015 - local.get $0 + local.get $4 if - local.get $0 + local.get $4 + local.tee $0 i32.load offset=4 - local.tee $1 + local.tee $4 i32.const 1 i32.and if (result i32) @@ -6546,16 +6569,16 @@ else local.get $0 i32.load8_u - local.get $2 + local.get $6 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $1 + local.get $4 i32.const -2 i32.and - local.set $0 + local.set $4 br $while-continue|015 end end @@ -6565,18 +6588,18 @@ local.get $0 if local.get $0 - local.get $2 + local.get $6 i32.store8 offset=1 else - local.get $10 + local.get $13 i32.load offset=16 - local.get $10 + local.get $13 i32.load offset=12 i32.eq if - local.get $10 + local.get $13 i32.load offset=20 - local.get $10 + local.get $13 i32.load offset=12 i32.const 3 i32.mul @@ -6584,17 +6607,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $10 + local.get $13 i32.load offset=4 else - local.get $10 + local.get $13 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $7 + local.set $14 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -6602,20 +6625,20 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 i64.store local.get $0 - local.get $7 + local.get $14 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $15 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -6623,45 +6646,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $13 + local.tee $12 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $4 i32.store offset=4 - local.get $10 + local.get $13 i32.load offset=8 - local.tee $16 - local.get $10 + local.tee $7 + local.get $13 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $12 - local.get $1 + local.set $16 + local.get $4 local.set $0 - loop $while-continue|016 - local.get $12 + loop $while-continue|0216 + local.get $7 local.get $16 i32.ne if - local.get $16 + local.get $7 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $16 + local.get $7 i32.load8_u - local.tee $5 + local.tee $17 i32.store8 local.get $0 - local.get $16 + local.get $7 i32.load8_u offset=1 i32.store8 offset=1 local.get $0 - local.get $5 + local.get $17 i32.const -1028477379 i32.mul i32.const 374761394 @@ -6670,35 +6693,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $5 + local.tee $17 + local.get $17 i32.const 15 i32.shr_u - local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $5 + local.tee $17 + local.get $17 i32.const 13 i32.shr_u - local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $5 + local.tee $17 + local.get $17 i32.const 16 i32.shr_u - local.get $5 i32.xor - local.get $7 + local.get $14 i32.and i32.const 2 i32.shl - local.get $6 + local.get $15 i32.add - local.tee $5 + local.tee $17 i32.load i32.store offset=4 - local.get $5 + local.get $17 local.get $0 i32.store local.get $0 @@ -6706,39 +6729,39 @@ i32.add local.set $0 end - local.get $16 + local.get $7 i32.const 8 i32.add - local.set $16 - br $while-continue|016 + local.set $7 + br $while-continue|0216 end end - local.get $10 - local.get $6 + local.get $13 + local.get $15 i32.store - local.get $6 + local.get $15 if - local.get $10 - local.get $6 + local.get $13 + local.get $15 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $7 + local.get $13 + local.get $14 i32.store offset=4 - local.get $10 - local.get $1 + local.get $13 + local.get $4 i32.store offset=8 - local.get $1 + local.get $4 if - local.get $10 - local.get $1 + local.get $13 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 local.get $13 + local.get $12 i32.store offset=12 - local.get $10 - local.get $10 + local.get $13 + local.get $13 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -6747,70 +6770,70 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $13 i32.load offset=8 - local.tee $1 + local.tee $0 i32.store - local.get $10 - local.get $10 + local.get $13 + local.get $13 i32.load offset=16 - local.tee $0 + local.tee $4 i32.const 1 i32.add i32.store offset=16 - local.get $0 + local.get $4 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add - local.tee $1 + local.tee $0 local.get $2 i32.store8 - local.get $1 - local.get $2 + local.get $0 + local.get $6 i32.store8 offset=1 - local.get $10 - local.get $10 + local.get $13 + local.get $13 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $1 - local.get $10 + local.get $0 + local.get $13 i32.load - local.get $10 + local.get $13 i32.load offset=4 - local.get $14 + local.get $11 i32.and i32.const 2 i32.shl i32.add - local.tee $0 + local.tee $2 i32.load i32.store offset=4 + local.get $2 local.get $0 - local.get $1 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 local.get $8 + local.get $9 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|4 end end - local.get $10 + local.get $13 i32.load offset=20 i32.const 100 i32.ne @@ -6822,7 +6845,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $8 i32.load offset=20 i32.const 100 i32.ne @@ -6835,67 +6858,69 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $for-loop|6 - local.get $0 + local.get $1 i32.const 255 i32.and i32.const 50 i32.lt_u if - local.get $11 - i32.load - local.get $11 - i32.load offset=4 - local.get $0 - i32.const 255 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - i32.const 15 - i32.shr_u - local.get $1 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - i32.const 13 - i32.shr_u - local.get $1 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - i32.const 16 - i32.shr_u - local.get $1 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $4 - block $__inlined_func$~lib/map/Map#find18 + block $__inlined_func$~lib/map/Map#find18 (result i32) + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + local.get $1 + local.tee $0 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|019 - local.get $4 + local.get $2 if - local.get $4 + local.get $2 + local.get $2 i32.load offset=8 - local.tee $1 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $2 i32.load8_u local.get $0 i32.const 255 @@ -6903,17 +6928,16 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find18 - local.get $1 + drop + local.get $4 i32.const -2 i32.and - local.set $4 + local.set $2 br $while-continue|019 end end i32.const 0 - local.set $4 end - local.get $4 i32.eqz if i32.const 0 @@ -6923,10 +6947,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $0 + local.get $3 + local.get $1 call $~lib/map/Map#get - local.get $0 + local.get $1 i32.const 255 i32.and i32.const 20 @@ -6940,62 +6964,64 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $0 - call $~lib/map/Map#delete - local.get $11 - i32.load - local.get $11 - i32.load offset=4 - local.get $0 - i32.const 255 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - i32.const 15 - i32.shr_u - local.get $1 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - i32.const 13 - i32.shr_u - local.get $1 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - i32.const 16 - i32.shr_u + local.get $3 local.get $1 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $4 - block $__inlined_func$~lib/map/Map#find21 + call $~lib/map/Map#delete + block $__inlined_func$~lib/map/Map#find21 (result i32) + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + local.get $1 + local.tee $0 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|022 - local.get $4 + local.get $2 if - local.get $4 + local.get $2 + local.get $2 i32.load offset=8 - local.tee $1 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $2 i32.load8_u local.get $0 i32.const 255 @@ -7003,17 +7029,16 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find21 - local.get $1 + drop + local.get $4 i32.const -2 i32.and - local.set $4 + local.set $2 br $while-continue|022 end end i32.const 0 - local.set $4 end - local.get $4 if i32.const 0 i32.const 1568 @@ -7022,14 +7047,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|6 end end - local.get $11 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -7042,67 +7067,69 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $for-loop|8 - local.get $0 + local.get $1 i32.const 255 i32.and i32.const 50 i32.lt_u if - local.get $11 - i32.load - local.get $11 - i32.load offset=4 - local.get $0 - i32.const 255 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - i32.const 15 - i32.shr_u - local.get $1 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - i32.const 13 - i32.shr_u - local.get $1 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - i32.const 16 - i32.shr_u - local.get $1 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $4 - block $__inlined_func$~lib/map/Map#find24 + block $__inlined_func$~lib/map/Map#find24 (result i32) + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + local.get $1 + local.tee $0 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|025 - local.get $4 + local.get $2 if - local.get $4 + local.get $2 + local.get $2 i32.load offset=8 - local.tee $1 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $2 i32.load8_u local.get $0 i32.const 255 @@ -7110,17 +7137,16 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find24 - local.get $1 + drop + local.get $4 i32.const -2 i32.and - local.set $4 + local.set $2 br $while-continue|025 end end i32.const 0 - local.set $4 end - local.get $4 if i32.const 0 i32.const 1568 @@ -7129,66 +7155,69 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $0 - local.get $0 + local.get $3 + local.get $1 + local.get $1 i32.const 255 i32.and - local.tee $1 i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 - i32.load - local.get $11 - i32.load offset=4 - local.get $1 - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - i32.const 15 - i32.shr_u - local.get $1 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - i32.const 13 - i32.shr_u - local.get $1 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - i32.const 16 - i32.shr_u - local.get $1 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $4 - block $__inlined_func$~lib/map/Map#find27 + block $__inlined_func$~lib/map/Map#find27 (result i32) + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + local.get $1 + local.tee $0 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|028 - local.get $4 + local.get $2 if - local.get $4 + local.get $2 + local.get $2 i32.load offset=8 - local.tee $1 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $2 i32.load8_u local.get $0 i32.const 255 @@ -7196,17 +7225,16 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find27 - local.get $1 + drop + local.get $4 i32.const -2 i32.and - local.set $4 + local.set $2 br $while-continue|028 end end i32.const 0 - local.set $4 end - local.get $4 i32.eqz if i32.const 0 @@ -7216,62 +7244,64 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $0 - call $~lib/map/Map#delete - local.get $11 - i32.load - local.get $11 - i32.load offset=4 - local.get $0 - i32.const 255 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - i32.const 15 - i32.shr_u - local.get $1 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - i32.const 13 - i32.shr_u - local.get $1 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - i32.const 16 - i32.shr_u + local.get $3 local.get $1 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $4 - block $__inlined_func$~lib/map/Map#find30 + call $~lib/map/Map#delete + block $__inlined_func$~lib/map/Map#find30 (result i32) + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + local.get $1 + local.tee $0 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|031 - local.get $4 + local.get $2 if - local.get $4 + local.get $2 + local.get $2 i32.load offset=8 - local.tee $1 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $2 i32.load8_u local.get $0 i32.const 255 @@ -7279,17 +7309,16 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find30 - local.get $1 + drop + local.get $4 i32.const -2 i32.and - local.set $4 + local.set $2 br $while-continue|031 end end i32.const 0 - local.set $4 end - local.get $4 if i32.const 0 i32.const 1568 @@ -7298,14 +7327,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|8 end end - local.get $11 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -7317,9 +7346,9 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $3 call $~lib/map/Map#clear - local.get $11 + local.get $3 i32.load offset=20 if i32.const 0 @@ -7377,7 +7406,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -7385,7 +7414,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $7 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -7393,33 +7422,33 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $5 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $7 + local.set $6 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $5 + local.get $6 i32.ne if - local.get $4 + local.get $5 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $4 + local.get $5 i32.load16_s local.tee $8 i32.store16 local.get $2 - local.get $4 + local.get $5 i32.load offset=4 i32.store offset=4 local.get $2 @@ -7434,29 +7463,29 @@ i32.const 668265263 i32.mul local.tee $8 - local.get $8 i32.const 15 i32.shr_u + local.get $8 i32.xor i32.const -2048144777 i32.mul local.tee $8 - local.get $8 i32.const 13 i32.shr_u + local.get $8 i32.xor i32.const -1028477379 i32.mul local.tee $8 - local.get $8 i32.const 16 i32.shr_u + local.get $8 i32.xor local.get $1 i32.and i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add local.tee $8 i32.load @@ -7469,20 +7498,20 @@ i32.add local.set $2 end - local.get $4 + local.get $5 i32.const 12 i32.add - local.set $4 + local.set $5 br $while-continue|0 end end local.get $0 - local.get $5 + local.get $4 i32.store - local.get $5 + local.get $4 if local.get $0 - local.get $5 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -7498,7 +7527,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -7511,49 +7540,50 @@ ) (func $~lib/map/Map#get (param $0 i32) (param $1 i32) (result i32) (local $2 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i32.extend16_s - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - local.get $0 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - local.get $0 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - local.get $0 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $0 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i32.extend16_s + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $0 + i32.const 15 + i32.shr_u + local.get $0 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $0 + i32.const 13 + i32.shr_u + local.get $0 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $0 + i32.const 16 + i32.shr_u + local.get $0 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $0 loop $while-continue|0 local.get $0 if + local.get $0 local.get $0 i32.load offset=8 local.tee $2 @@ -7570,6 +7600,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $2 i32.const -2 i32.and @@ -7578,9 +7609,8 @@ end end i32.const 0 - local.set $0 end - local.get $0 + local.tee $0 i32.eqz if i32.const 1616 @@ -7635,50 +7665,51 @@ (func $~lib/map/Map#delete (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - local.tee $2 - i32.extend16_s - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - local.get $1 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - local.get $1 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - local.get $1 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + local.tee $2 + i32.extend16_s + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $1 + i32.const 15 + i32.shr_u + local.get $1 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $1 + i32.const 13 + i32.shr_u + local.get $1 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $1 + i32.const 16 + i32.shr_u + local.get $1 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $1 loop $while-continue|0 local.get $1 if + local.get $1 local.get $1 i32.load offset=8 local.tee $3 @@ -7695,6 +7726,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $3 i32.const -2 i32.and @@ -7703,9 +7735,8 @@ end end i32.const 0 - local.set $1 end - local.get $1 + local.tee $1 i32.eqz if return @@ -7775,95 +7806,96 @@ (local $14 i32) (local $15 i32) (local $16 i32) + (local $17 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $4 i64.const 0 i64.store - local.get $2 + local.get $4 i64.const 0 i64.store offset=8 - local.get $2 + local.get $4 i32.const 0 i32.store offset=16 - local.get $2 + local.get $4 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store - local.get $3 + local.get $2 i32.const 24 i32.const 11 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $2 i32.store - local.get $11 + local.get $2 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $6 i32.store - local.get $3 + local.get $6 if - local.get $11 - local.get $3 + local.get $2 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $2 i32.const 3 i32.store offset=4 - local.get $11 + local.get $2 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $6 i32.store offset=8 - local.get $3 + local.get $6 if - local.get $11 - local.get $3 + local.get $2 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $2 i32.const 4 i32.store offset=12 - local.get $11 + local.get $2 i32.const 0 i32.store offset=16 - local.get $11 + local.get $2 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $4 local.get $2 - local.get $11 i32.store loop $for-loop|1 - local.get $4 + local.get $5 i32.extend16_s i32.const 100 i32.lt_s if - local.get $11 + local.get $2 i32.load - local.get $11 + local.get $2 i32.load offset=4 - local.get $4 + local.get $5 i32.extend16_s i32.const -1028477379 i32.mul @@ -7873,62 +7905,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $5 + local.set $4 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $5 + local.get $4 if - local.get $5 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 - i32.load16_u local.get $4 + i32.load16_u + local.get $5 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $2 + local.get $6 i32.const -2 i32.and - local.set $5 + local.set $4 br $while-continue|0 end end i32.const 0 - local.set $5 + local.set $4 end - local.get $5 + local.get $4 if i32.const 0 i32.const 1568 @@ -7937,19 +7969,19 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $4 - local.get $4 + local.get $2 + local.get $5 + local.get $5 i32.extend16_s - local.tee $2 + local.tee $4 i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 + local.get $2 i32.load - local.get $11 - i32.load offset=4 local.get $2 + i32.load offset=4 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761395 @@ -7958,62 +7990,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $5 + local.set $4 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $5 + local.get $4 if - local.get $5 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 - i32.load16_u local.get $4 + i32.load16_u + local.get $5 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $2 + local.get $6 i32.const -2 i32.and - local.set $5 + local.set $4 br $while-continue|02 end end i32.const 0 - local.set $5 + local.set $4 end - local.get $5 + local.get $4 i32.eqz if i32.const 0 @@ -8023,10 +8055,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $4 + local.get $2 + local.get $5 call $~lib/map/Map#get - local.get $4 + local.get $5 i32.extend16_s i32.const 10 i32.add @@ -8039,14 +8071,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 i32.const 1 i32.add - local.set $4 + local.set $5 br $for-loop|1 end end - local.get $11 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -8059,18 +8091,18 @@ unreachable end i32.const 0 - local.set $4 + local.set $5 loop $for-loop|3 - local.get $4 + local.get $5 i32.extend16_s i32.const 100 i32.lt_s if - local.get $11 + local.get $2 i32.load - local.get $11 + local.get $2 i32.load offset=4 - local.get $4 + local.get $5 i32.extend16_s i32.const -1028477379 i32.mul @@ -8080,62 +8112,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $5 + local.set $4 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $5 + local.get $4 if - local.get $5 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 - i32.load16_u local.get $4 + i32.load16_u + local.get $5 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $2 + local.get $6 i32.const -2 i32.and - local.set $5 + local.set $4 br $while-continue|05 end end i32.const 0 - local.set $5 + local.set $4 end - local.get $5 + local.get $4 i32.eqz if i32.const 0 @@ -8145,10 +8177,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $4 + local.get $2 + local.get $5 call $~lib/map/Map#get - local.get $4 + local.get $5 i32.extend16_s i32.const 10 i32.add @@ -8161,19 +8193,19 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $4 - local.get $4 + local.get $2 + local.get $5 + local.get $5 i32.extend16_s - local.tee $2 + local.tee $4 i32.const 20 i32.add call $~lib/map/Map#set - local.get $11 + local.get $2 i32.load - local.get $11 - i32.load offset=4 local.get $2 + i32.load offset=4 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761395 @@ -8182,62 +8214,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $5 + local.set $4 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $5 + local.get $4 if - local.get $5 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 - i32.load16_u local.get $4 + i32.load16_u + local.get $5 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $2 + local.get $6 i32.const -2 i32.and - local.set $5 + local.set $4 br $while-continue|08 end end i32.const 0 - local.set $5 + local.set $4 end - local.get $5 + local.get $4 i32.eqz if i32.const 0 @@ -8247,10 +8279,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $4 + local.get $2 + local.get $5 call $~lib/map/Map#get - local.get $4 + local.get $5 i32.extend16_s i32.const 20 i32.add @@ -8263,14 +8295,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 i32.const 1 i32.add - local.set $4 + local.set $5 br $for-loop|3 end end - local.get $11 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -8283,39 +8315,39 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $2 + local.tee $4 + local.get $4 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $6 i32.const 0 i32.store - local.get $11 + local.get $2 i32.load offset=8 - local.set $8 - local.get $11 - i32.load offset=16 - local.tee $7 - local.set $6 + local.set $7 local.get $2 + i32.load offset=16 + local.tee $8 + local.set $9 + local.get $6 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $4 i64.const 0 i64.store - local.get $3 + local.get $4 i32.const 16 i32.const 12 call $~lib/rt/itcms/__new @@ -8333,7 +8365,7 @@ local.get $4 i32.const 0 i32.store offset=12 - local.get $6 + local.get $9 i32.const 536870910 i32.gt_u if @@ -8345,58 +8377,58 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $9 i32.const 8 - local.get $6 + local.get $9 i32.const 8 i32.gt_u select i32.const 1 i32.shl - local.tee $5 + local.tee $10 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $11 i32.store offset=4 - local.get $3 - local.get $5 + local.get $11 + local.get $10 call $~lib/memory/memory.fill local.get $4 - local.get $3 + local.get $11 i32.store - local.get $3 + local.get $11 if local.get $4 - local.get $3 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $4 - local.get $3 + local.get $11 i32.store offset=4 local.get $4 - local.get $5 + local.get $10 i32.store offset=8 local.get $4 - local.get $6 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $6 local.get $4 i32.store - loop $for-loop|0 - local.get $7 - local.get $10 - i32.gt_s + loop $for-loop|0 + local.get $3 + local.get $8 + i32.lt_s if - local.get $10 + local.get $3 i32.const 12 i32.mul - local.get $8 + local.get $7 i32.add - local.tee $2 + local.tee $6 i32.load offset=8 i32.const 1 i32.and @@ -8404,7 +8436,7 @@ if local.get $4 local.get $1 - local.get $2 + local.get $6 i32.load16_s call $~lib/array/Array#__set local.get $1 @@ -8412,10 +8444,10 @@ i32.add local.set $1 end - local.get $10 + local.get $3 i32.const 1 i32.add - local.set $10 + local.set $3 br $for-loop|0 end end @@ -8434,9 +8466,9 @@ local.get $4 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $2 call $~lib/map/Map#values - local.tee $15 + local.tee $10 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -8446,60 +8478,60 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i32.const 0 i32.store - local.get $1 + local.get $3 i32.const 24 i32.const 13 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $13 i32.store - local.get $10 + local.get $13 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 if - local.get $10 - local.get $1 + local.get $13 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $13 i32.const 3 i32.store offset=4 - local.get $10 + local.get $13 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $3 i32.store offset=8 - local.get $1 + local.get $3 if - local.get $10 - local.get $1 + local.get $13 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $13 i32.const 4 i32.store offset=12 - local.get $10 + local.get $13 i32.const 0 i32.store offset=16 - local.get $10 + local.get $13 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $13 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $9 + local.tee $8 i32.store offset=16 loop $for-loop|4 local.get $4 @@ -8508,7 +8540,7 @@ i32.gt_s if local.get $0 - local.tee $3 + local.tee $5 local.get $4 i32.load offset=12 i32.ge_u @@ -8522,21 +8554,22 @@ end local.get $4 i32.load offset=4 - local.get $3 + local.get $5 i32.const 1 i32.shl i32.add i32.load16_s - local.set $2 - local.get $15 - local.get $3 + local.set $6 + local.get $10 + local.get $5 call $~lib/array/Array#__get - local.set $8 - local.get $11 + local.set $9 + local.get $2 i32.load - local.get $11 - i32.load offset=4 local.get $2 + i32.load offset=4 + local.get $6 + local.tee $1 i32.extend16_s i32.const -1028477379 i32.mul @@ -8547,61 +8580,61 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $5 - block $__inlined_func$~lib/map/Map#find10 - loop $while-continue|011 - local.get $5 + local.set $0 + block $__inlined_func$~lib/map/Map#find12 + loop $while-continue|013 + local.get $0 if - local.get $5 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 + local.get $0 i32.load16_u - local.get $2 + local.get $1 i32.const 65535 i32.and i32.eq end - br_if $__inlined_func$~lib/map/Map#find10 - local.get $0 + br_if $__inlined_func$~lib/map/Map#find12 + local.get $3 i32.const -2 i32.and - local.set $5 - br $while-continue|011 + local.set $0 + br $while-continue|013 end end i32.const 0 - local.set $5 + local.set $0 end - local.get $5 + local.get $0 i32.eqz if i32.const 0 @@ -8611,14 +8644,14 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $2 i32.load - local.get $11 + local.get $2 i32.load offset=4 - local.get $8 + local.get $9 i32.const 20 i32.sub - local.tee $1 + local.tee $3 i32.extend16_s i32.const -1028477379 i32.mul @@ -8629,61 +8662,61 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $5 - block $__inlined_func$~lib/map/Map#find13 - loop $while-continue|014 - local.get $5 + local.set $0 + block $__inlined_func$~lib/map/Map#find15 + loop $while-continue|016 + local.get $0 if - local.get $5 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 + local.get $0 i32.load16_u - local.get $1 + local.get $3 i32.const 65535 i32.and i32.eq end - br_if $__inlined_func$~lib/map/Map#find13 - local.get $0 + br_if $__inlined_func$~lib/map/Map#find15 + local.get $7 i32.const -2 i32.and - local.set $5 - br $while-continue|014 + local.set $0 + br $while-continue|016 end end i32.const 0 - local.set $5 + local.set $0 end - local.get $5 + local.get $0 i32.eqz if i32.const 0 @@ -8700,13 +8733,13 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $10 + local.get $13 i32.load - local.get $2 + local.get $6 i32.extend16_s i32.const -1028477379 i32.mul @@ -8717,40 +8750,41 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor - local.tee $14 - local.get $10 + local.tee $11 + local.get $13 i32.load offset=4 i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/map/Map#find - loop $while-continue|015 - local.get $0 + loop $while-continue|017 + local.get $3 if - local.get $0 + local.get $3 + local.tee $0 i32.load offset=4 - local.tee $1 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -8758,17 +8792,17 @@ else local.get $0 i32.load16_u - local.get $2 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $1 + local.get $3 i32.const -2 i32.and - local.set $0 - br $while-continue|015 + local.set $3 + br $while-continue|017 end end i32.const 0 @@ -8777,18 +8811,18 @@ local.get $0 if local.get $0 - local.get $2 + local.get $1 i32.store16 offset=2 else - local.get $10 + local.get $13 i32.load offset=16 - local.get $10 + local.get $13 i32.load offset=12 i32.eq if - local.get $10 + local.get $13 i32.load offset=20 - local.get $10 + local.get $13 i32.load offset=12 i32.const 3 i32.mul @@ -8796,17 +8830,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $10 + local.get $13 i32.load offset=4 else - local.get $10 + local.get $13 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $7 + local.set $14 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -8814,20 +8848,20 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 i64.store local.get $0 - local.get $7 + local.get $14 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $15 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -8835,45 +8869,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $13 + local.tee $12 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $3 i32.store offset=4 - local.get $10 + local.get $13 i32.load offset=8 - local.tee $16 - local.get $10 + local.tee $7 + local.get $13 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $12 - local.get $1 + local.set $16 + local.get $3 local.set $0 - loop $while-continue|016 - local.get $12 + loop $while-continue|018 + local.get $7 local.get $16 i32.ne if - local.get $16 + local.get $7 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $16 + local.get $7 i32.load16_s - local.tee $5 + local.tee $17 i32.store16 local.get $0 - local.get $16 + local.get $7 i32.load16_s offset=2 i32.store16 offset=2 local.get $0 - local.get $5 + local.get $17 i32.extend16_s i32.const -1028477379 i32.mul @@ -8883,35 +8917,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $5 + local.tee $17 + local.get $17 i32.const 15 i32.shr_u - local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $5 + local.tee $17 + local.get $17 i32.const 13 i32.shr_u - local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $5 + local.tee $17 + local.get $17 i32.const 16 i32.shr_u - local.get $5 i32.xor - local.get $7 + local.get $14 i32.and i32.const 2 i32.shl - local.get $6 + local.get $15 i32.add - local.tee $5 + local.tee $17 i32.load i32.store offset=4 - local.get $5 + local.get $17 local.get $0 i32.store local.get $0 @@ -8919,39 +8953,39 @@ i32.add local.set $0 end - local.get $16 + local.get $7 i32.const 8 i32.add - local.set $16 - br $while-continue|016 + local.set $7 + br $while-continue|018 end end - local.get $10 - local.get $6 + local.get $13 + local.get $15 i32.store - local.get $6 + local.get $15 if - local.get $10 - local.get $6 + local.get $13 + local.get $15 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $7 + local.get $13 + local.get $14 i32.store offset=4 - local.get $10 - local.get $1 + local.get $13 + local.get $3 i32.store offset=8 - local.get $1 + local.get $3 if - local.get $10 - local.get $1 + local.get $13 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 local.get $13 + local.get $12 i32.store offset=12 - local.get $10 - local.get $10 + local.get $13 + local.get $13 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -8960,70 +8994,70 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $13 i32.load offset=8 - local.tee $1 + local.tee $0 i32.store - local.get $10 - local.get $10 + local.get $13 + local.get $13 i32.load offset=16 - local.tee $0 + local.tee $3 i32.const 1 i32.add i32.store offset=16 - local.get $0 + local.get $3 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add - local.tee $1 - local.get $2 + local.tee $0 + local.get $6 i32.store16 + local.get $0 local.get $1 - local.get $2 i32.store16 offset=2 - local.get $10 - local.get $10 + local.get $13 + local.get $13 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $1 - local.get $10 + local.get $0 + local.get $13 i32.load - local.get $10 + local.get $13 i32.load offset=4 - local.get $14 + local.get $11 i32.and i32.const 2 i32.shl i32.add - local.tee $0 + local.tee $1 i32.load i32.store offset=4 - local.get $0 local.get $1 + local.get $0 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 local.get $8 + local.get $9 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $3 + local.get $5 i32.const 1 i32.add local.set $0 br $for-loop|4 end end - local.get $10 + local.get $13 i32.load offset=20 i32.const 100 i32.ne @@ -9035,7 +9069,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $8 i32.load offset=20 i32.const 100 i32.ne @@ -9055,9 +9089,9 @@ i32.const 50 i32.lt_s if - local.get $11 + local.get $2 i32.load - local.get $11 + local.get $2 i32.load offset=4 local.get $0 i32.extend16_s @@ -9070,23 +9104,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 @@ -9094,8 +9128,8 @@ i32.add i32.load local.set $4 - block $__inlined_func$~lib/map/Map#find18 - loop $while-continue|019 + block $__inlined_func$~lib/map/Map#find20 + loop $while-continue|021 local.get $4 if local.get $4 @@ -9113,12 +9147,12 @@ i32.and i32.eq end - br_if $__inlined_func$~lib/map/Map#find18 + br_if $__inlined_func$~lib/map/Map#find20 local.get $1 i32.const -2 i32.and local.set $4 - br $while-continue|019 + br $while-continue|021 end end i32.const 0 @@ -9134,7 +9168,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $2 local.get $0 call $~lib/map/Map#get local.get $0 @@ -9150,12 +9184,12 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $2 local.get $0 call $~lib/map/Map#delete - local.get $11 + local.get $2 i32.load - local.get $11 + local.get $2 i32.load offset=4 local.get $0 i32.extend16_s @@ -9168,23 +9202,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 @@ -9192,8 +9226,8 @@ i32.add i32.load local.set $4 - block $__inlined_func$~lib/map/Map#find21 - loop $while-continue|022 + block $__inlined_func$~lib/map/Map#find23 + loop $while-continue|024 local.get $4 if local.get $4 @@ -9211,12 +9245,12 @@ i32.and i32.eq end - br_if $__inlined_func$~lib/map/Map#find21 + br_if $__inlined_func$~lib/map/Map#find23 local.get $1 i32.const -2 i32.and local.set $4 - br $while-continue|022 + br $while-continue|024 end end i32.const 0 @@ -9238,7 +9272,7 @@ br $for-loop|6 end end - local.get $11 + local.get $2 i32.load offset=20 i32.const 50 i32.ne @@ -9258,9 +9292,9 @@ i32.const 50 i32.lt_s if - local.get $11 + local.get $2 i32.load - local.get $11 + local.get $2 i32.load offset=4 local.get $0 i32.extend16_s @@ -9273,23 +9307,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 @@ -9297,8 +9331,8 @@ i32.add i32.load local.set $4 - block $__inlined_func$~lib/map/Map#find24 - loop $while-continue|025 + block $__inlined_func$~lib/map/Map#find26 + loop $while-continue|027 local.get $4 if local.get $4 @@ -9316,12 +9350,12 @@ i32.and i32.eq end - br_if $__inlined_func$~lib/map/Map#find24 + br_if $__inlined_func$~lib/map/Map#find26 local.get $1 i32.const -2 i32.and local.set $4 - br $while-continue|025 + br $while-continue|027 end end i32.const 0 @@ -9336,7 +9370,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $2 local.get $0 local.get $0 i32.extend16_s @@ -9344,9 +9378,9 @@ i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 + local.get $2 i32.load - local.get $11 + local.get $2 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -9358,23 +9392,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 @@ -9382,8 +9416,8 @@ i32.add i32.load local.set $4 - block $__inlined_func$~lib/map/Map#find27 - loop $while-continue|028 + block $__inlined_func$~lib/map/Map#find29 + loop $while-continue|030 local.get $4 if local.get $4 @@ -9401,12 +9435,12 @@ i32.and i32.eq end - br_if $__inlined_func$~lib/map/Map#find27 + br_if $__inlined_func$~lib/map/Map#find29 local.get $1 i32.const -2 i32.and local.set $4 - br $while-continue|028 + br $while-continue|030 end end i32.const 0 @@ -9422,12 +9456,12 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $2 local.get $0 call $~lib/map/Map#delete - local.get $11 + local.get $2 i32.load - local.get $11 + local.get $2 i32.load offset=4 local.get $0 i32.extend16_s @@ -9440,23 +9474,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 @@ -9464,8 +9498,8 @@ i32.add i32.load local.set $4 - block $__inlined_func$~lib/map/Map#find30 - loop $while-continue|031 + block $__inlined_func$~lib/map/Map#find32 + loop $while-continue|033 local.get $4 if local.get $4 @@ -9483,12 +9517,12 @@ i32.and i32.eq end - br_if $__inlined_func$~lib/map/Map#find30 + br_if $__inlined_func$~lib/map/Map#find32 local.get $1 i32.const -2 i32.and local.set $4 - br $while-continue|031 + br $while-continue|033 end end i32.const 0 @@ -9510,7 +9544,7 @@ br $for-loop|8 end end - local.get $11 + local.get $2 i32.load offset=20 i32.const 50 i32.ne @@ -9522,9 +9556,9 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $2 call $~lib/map/Map#clear - local.get $11 + local.get $2 i32.load offset=20 if i32.const 0 @@ -9582,7 +9616,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -9590,7 +9624,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $7 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -9598,37 +9632,39 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $5 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $7 + local.set $6 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $5 + local.get $6 i32.ne if - local.get $4 + local.get $5 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $4 + local.get $5 i32.load16_u local.tee $8 i32.store16 local.get $2 - local.get $4 + local.get $5 i32.load offset=4 i32.store offset=4 local.get $2 local.get $8 + i32.const 65535 + i32.and i32.const -1028477379 i32.mul i32.const 374761395 @@ -9638,29 +9674,29 @@ i32.const 668265263 i32.mul local.tee $8 - local.get $8 i32.const 15 i32.shr_u + local.get $8 i32.xor i32.const -2048144777 i32.mul local.tee $8 - local.get $8 i32.const 13 i32.shr_u + local.get $8 i32.xor i32.const -1028477379 i32.mul local.tee $8 - local.get $8 i32.const 16 i32.shr_u + local.get $8 i32.xor local.get $1 i32.and i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add local.tee $8 i32.load @@ -9673,20 +9709,20 @@ i32.add local.set $2 end - local.get $4 + local.get $5 i32.const 12 i32.add - local.set $4 + local.set $5 br $while-continue|0 end end local.get $0 - local.get $5 + local.get $4 i32.store - local.get $5 + local.get $4 if local.get $0 - local.get $5 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -9702,7 +9738,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -9715,50 +9751,51 @@ ) (func $~lib/map/Map#get (param $0 i32) (param $1 i32) (result i32) (local $2 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 65535 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - local.get $0 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - local.get $0 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - local.get $0 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $0 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $0 + i32.const 15 + i32.shr_u + local.get $0 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $0 + i32.const 13 + i32.shr_u + local.get $0 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $0 + i32.const 16 + i32.shr_u + local.get $0 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $0 loop $while-continue|0 local.get $0 if + local.get $0 local.get $0 i32.load offset=8 local.tee $2 @@ -9775,6 +9812,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $2 i32.const -2 i32.and @@ -9783,9 +9821,8 @@ end end i32.const 0 - local.set $0 end - local.get $0 + local.tee $0 i32.eqz if i32.const 1616 @@ -9796,56 +9833,57 @@ unreachable end local.get $0 - i32.load offset=4 - ) - (func $~lib/map/Map#delete (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - local.tee $2 - i32.const 65535 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - local.get $1 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - local.get $1 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - local.get $1 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/map/Map#find + i32.load offset=4 + ) + (func $~lib/map/Map#delete (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + local.tee $2 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $1 + i32.const 15 + i32.shr_u + local.get $1 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $1 + i32.const 13 + i32.shr_u + local.get $1 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $1 + i32.const 16 + i32.shr_u + local.get $1 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $1 loop $while-continue|0 local.get $1 if + local.get $1 local.get $1 i32.load offset=8 local.tee $3 @@ -9862,6 +9900,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $3 i32.const -2 i32.and @@ -9870,9 +9909,8 @@ end end i32.const 0 - local.set $1 end - local.get $1 + local.tee $1 i32.eqz if return @@ -9942,33 +9980,34 @@ (local $14 i32) (local $15 i32) (local $16 i32) + (local $17 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $5 i64.const 0 i64.store - local.get $2 + local.get $5 i64.const 0 i64.store offset=8 - local.get $2 + local.get $5 i32.const 0 i32.store offset=16 - local.get $2 + local.get $5 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $3 i32.const 0 @@ -9977,127 +10016,128 @@ i32.const 24 i32.const 14 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $3 i32.store - local.get $11 + local.get $3 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $6 i32.store - local.get $3 + local.get $6 if - local.get $11 local.get $3 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $3 i32.const 3 i32.store offset=4 - local.get $11 + local.get $3 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $6 i32.store offset=8 - local.get $3 + local.get $6 if - local.get $11 local.get $3 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $3 i32.const 4 i32.store offset=12 - local.get $11 + local.get $3 i32.const 0 i32.store offset=16 - local.get $11 + local.get $3 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 - local.get $11 + local.get $5 + local.get $3 i32.store loop $for-loop|1 - local.get $4 + local.get $0 i32.const 65535 i32.and i32.const 100 i32.lt_u if - local.get $11 - i32.load - local.get $11 - i32.load offset=4 - local.get $4 - i32.const 65535 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - i32.const 15 - i32.shr_u - local.get $2 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - i32.const 13 - i32.shr_u - local.get $2 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - i32.const 16 - i32.shr_u - local.get $2 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + local.get $0 + local.tee $5 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $6 + i32.const 15 + i32.shr_u + local.get $6 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $6 + i32.const 13 + i32.shr_u + local.get $6 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $6 + i32.const 16 + i32.shr_u + local.get $6 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $6 loop $while-continue|0 - local.get $5 + local.get $6 if - local.get $5 + local.get $6 + local.get $6 i32.load offset=8 - local.tee $2 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 + local.get $6 i32.load16_u - local.get $4 + local.get $5 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $2 + drop + local.get $7 i32.const -2 i32.and - local.set $5 + local.set $6 br $while-continue|0 end end i32.const 0 - local.set $5 end - local.get $5 if i32.const 0 i32.const 1568 @@ -10106,84 +10146,86 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $4 - local.get $4 + local.get $3 + local.get $0 + local.get $0 i32.const 65535 i32.and - local.tee $2 i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 - i32.load - local.get $11 - i32.load offset=4 - local.get $2 - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - i32.const 15 - i32.shr_u - local.get $2 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - i32.const 13 - i32.shr_u - local.get $2 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - i32.const 16 - i32.shr_u - local.get $2 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - block $__inlined_func$~lib/map/Map#find1 + block $__inlined_func$~lib/map/Map#find1 (result i32) + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + local.get $0 + local.tee $5 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $6 + i32.const 15 + i32.shr_u + local.get $6 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $6 + i32.const 13 + i32.shr_u + local.get $6 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $6 + i32.const 16 + i32.shr_u + local.get $6 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $6 loop $while-continue|02 - local.get $5 + local.get $6 if - local.get $5 + local.get $6 + local.get $6 i32.load offset=8 - local.tee $2 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 + local.get $6 i32.load16_u - local.get $4 + local.get $5 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $2 + drop + local.get $7 i32.const -2 i32.and - local.set $5 + local.set $6 br $while-continue|02 end end i32.const 0 - local.set $5 end - local.get $5 i32.eqz if i32.const 0 @@ -10193,10 +10235,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $4 + local.get $3 + local.get $0 call $~lib/map/Map#get - local.get $4 + local.get $0 i32.const 65535 i32.and i32.const 10 @@ -10210,14 +10252,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $0 i32.const 1 i32.add - local.set $4 + local.set $0 br $for-loop|1 end end - local.get $11 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -10230,85 +10272,86 @@ unreachable end i32.const 0 - local.set $4 + local.set $0 loop $for-loop|3 - local.get $4 + local.get $0 i32.const 65535 i32.and i32.const 100 i32.lt_u if - local.get $11 - i32.load - local.get $11 - i32.load offset=4 - local.get $4 - i32.const 65535 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - i32.const 15 - i32.shr_u - local.get $2 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - i32.const 13 - i32.shr_u - local.get $2 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - i32.const 16 - i32.shr_u - local.get $2 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - block $__inlined_func$~lib/map/Map#find4 + block $__inlined_func$~lib/map/Map#find4 (result i32) + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + local.get $0 + local.tee $5 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $6 + i32.const 15 + i32.shr_u + local.get $6 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $6 + i32.const 13 + i32.shr_u + local.get $6 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $6 + i32.const 16 + i32.shr_u + local.get $6 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $6 loop $while-continue|05 - local.get $5 + local.get $6 if - local.get $5 + local.get $6 + local.get $6 i32.load offset=8 - local.tee $2 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 + local.get $6 i32.load16_u - local.get $4 + local.get $5 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $2 + drop + local.get $7 i32.const -2 i32.and - local.set $5 + local.set $6 br $while-continue|05 end end i32.const 0 - local.set $5 end - local.get $5 i32.eqz if i32.const 0 @@ -10318,10 +10361,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $4 + local.get $3 + local.get $0 call $~lib/map/Map#get - local.get $4 + local.get $0 i32.const 65535 i32.and i32.const 10 @@ -10335,84 +10378,86 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $4 - local.get $4 + local.get $3 + local.get $0 + local.get $0 i32.const 65535 i32.and - local.tee $2 i32.const 20 i32.add call $~lib/map/Map#set - local.get $11 - i32.load - local.get $11 - i32.load offset=4 - local.get $2 - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - i32.const 15 - i32.shr_u - local.get $2 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - i32.const 13 - i32.shr_u - local.get $2 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - i32.const 16 - i32.shr_u - local.get $2 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - block $__inlined_func$~lib/map/Map#find7 + block $__inlined_func$~lib/map/Map#find7 (result i32) + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + local.get $0 + local.tee $5 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $6 + i32.const 15 + i32.shr_u + local.get $6 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $6 + i32.const 13 + i32.shr_u + local.get $6 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $6 + i32.const 16 + i32.shr_u + local.get $6 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $6 loop $while-continue|08 - local.get $5 + local.get $6 if - local.get $5 + local.get $6 + local.get $6 i32.load offset=8 - local.tee $2 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 + local.get $6 i32.load16_u - local.get $4 + local.get $5 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $2 + drop + local.get $7 i32.const -2 i32.and - local.set $5 + local.set $6 br $while-continue|08 end end i32.const 0 - local.set $5 end - local.get $5 i32.eqz if i32.const 0 @@ -10422,10 +10467,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $4 + local.get $3 + local.get $0 call $~lib/map/Map#get - local.get $4 + local.get $0 i32.const 65535 i32.and i32.const 20 @@ -10439,14 +10484,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $0 i32.const 1 i32.add - local.set $4 + local.set $0 br $for-loop|3 end end - local.get $11 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -10459,57 +10504,57 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $2 + local.tee $0 + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $5 i32.const 0 i32.store - local.get $11 + local.get $3 i32.load offset=8 - local.set $8 - local.get $11 + local.set $7 + local.get $3 i32.load offset=16 - local.tee $7 - local.set $6 - local.get $2 + local.tee $8 + local.set $9 + local.get $5 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $0 i64.const 0 i64.store - local.get $3 + local.get $0 i32.const 16 i32.const 15 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $0 i32.store - local.get $4 + local.get $0 i32.const 0 i32.store - local.get $4 + local.get $0 i32.const 0 i32.store offset=4 - local.get $4 + local.get $0 i32.const 0 i32.store offset=8 - local.get $4 + local.get $0 i32.const 0 i32.store offset=12 - local.get $6 + local.get $9 i32.const 536870910 i32.gt_u if @@ -10521,98 +10566,99 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $9 i32.const 8 - local.get $6 + local.get $9 i32.const 8 i32.gt_u select i32.const 1 i32.shl - local.tee $5 + local.tee $10 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $11 i32.store offset=4 - local.get $3 - local.get $5 - call $~lib/memory/memory.fill - local.get $4 - local.get $3 + local.get $11 + local.get $10 + call $~lib/memory/memory.fill + local.get $0 + local.get $11 i32.store - local.get $3 + local.get $11 if - local.get $4 - local.get $3 + local.get $0 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $3 + local.get $0 + local.get $11 i32.store offset=4 - local.get $4 - local.get $5 + local.get $0 + local.get $10 i32.store offset=8 - local.get $4 - local.get $6 + local.get $0 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 - local.get $4 + local.get $5 + local.get $0 + local.tee $5 i32.store loop $for-loop|0 - local.get $7 - local.get $10 - i32.gt_s + local.get $4 + local.get $8 + i32.lt_s if - local.get $10 + local.get $4 i32.const 12 i32.mul - local.get $8 + local.get $7 i32.add - local.tee $2 + local.tee $0 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $4 - local.get $1 + local.get $5 local.get $2 + local.get $0 i32.load16_u call $~lib/array/Array#__set - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 end - local.get $10 + local.get $4 i32.const 1 i32.add - local.set $10 + local.set $4 br $for-loop|0 end end - local.get $4 - local.get $1 + local.get $5 + local.get $2 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity - local.get $4 - local.get $1 + local.get $5 + local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $3 call $~lib/map/Map#values - local.tee $15 + local.tee $10 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -10622,72 +10668,71 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.const 16 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $13 i32.store - local.get $10 + local.get $13 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if - local.get $10 - local.get $1 + local.get $13 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $13 i32.const 3 i32.store offset=4 - local.get $10 + local.get $13 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=8 - local.get $1 + local.get $2 if - local.get $10 - local.get $1 + local.get $13 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $13 i32.const 4 i32.store offset=12 - local.get $10 + local.get $13 i32.const 0 i32.store offset=16 - local.get $10 + local.get $13 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $13 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $9 + local.tee $8 i32.store offset=16 loop $for-loop|4 - local.get $4 + local.get $5 i32.load offset=12 - local.get $0 + local.get $1 i32.gt_s if - local.get $0 - local.tee $3 - local.get $4 + local.get $5 i32.load offset=12 - i32.ge_u + local.get $1 + i32.le_u if i32.const 1248 i32.const 1728 @@ -10696,87 +10741,90 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 i32.load offset=4 - local.get $3 + local.get $1 i32.const 1 i32.shl i32.add i32.load16_u local.set $2 - local.get $15 - local.get $3 + local.get $10 + local.get $1 call $~lib/array/Array#__get - local.set $8 - local.get $11 - i32.load - local.get $11 - i32.load offset=4 - local.get $2 - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - i32.const 15 - i32.shr_u - local.get $0 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - i32.const 13 - i32.shr_u - local.get $0 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - i32.const 16 - i32.shr_u - local.get $0 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - block $__inlined_func$~lib/map/Map#find10 + local.set $9 + block $__inlined_func$~lib/map/Map#find10 (result i32) + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + local.get $2 + local.tee $0 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $4 + i32.const 15 + i32.shr_u + local.get $4 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $4 + i32.const 13 + i32.shr_u + local.get $4 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $4 + i32.const 16 + i32.shr_u + local.get $4 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $4 loop $while-continue|011 - local.get $5 + local.get $4 if - local.get $5 + local.get $4 + local.get $4 i32.load offset=8 - local.tee $0 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 + local.get $4 i32.load16_u - local.get $2 + local.get $0 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $0 + drop + local.get $6 i32.const -2 i32.and - local.set $5 + local.set $4 br $while-continue|011 end end i32.const 0 - local.set $5 end - local.get $5 i32.eqz if i32.const 0 @@ -10786,80 +10834,80 @@ call $~lib/builtins/abort unreachable end - local.get $11 - i32.load - local.get $11 - i32.load offset=4 - local.get $8 - i32.const 20 - i32.sub - local.tee $1 - i32.const 65535 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - i32.const 15 - i32.shr_u - local.get $0 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - i32.const 13 - i32.shr_u - local.get $0 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - i32.const 16 - i32.shr_u - local.get $0 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - block $__inlined_func$~lib/map/Map#find13 + block $__inlined_func$~lib/map/Map#find13 (result i32) + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + local.get $9 + i32.const 20 + i32.sub + local.tee $4 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $0 + i32.const 15 + i32.shr_u + local.get $0 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $0 + i32.const 13 + i32.shr_u + local.get $0 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $0 + i32.const 16 + i32.shr_u + local.get $0 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $0 loop $while-continue|014 - local.get $5 + local.get $0 if - local.get $5 + local.get $0 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 + local.get $0 i32.load16_u - local.get $1 + local.get $4 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $0 + drop + local.get $6 i32.const -2 i32.and - local.set $5 + local.set $0 br $while-continue|014 end end i32.const 0 - local.set $5 end - local.get $5 i32.eqz if i32.const 0 @@ -10869,6 +10917,7 @@ call $~lib/builtins/abort unreachable end + local.get $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -10876,11 +10925,12 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $10 + local.set $6 + local.get $13 i32.load local.get $2 i32.const -1028477379 @@ -10892,40 +10942,41 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor - local.tee $14 - local.get $10 + local.tee $11 + local.get $13 i32.load offset=4 i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $4 block $__inlined_func$~lib/map/Map#find loop $while-continue|015 - local.get $0 + local.get $4 if - local.get $0 + local.get $4 + local.tee $0 i32.load offset=4 - local.tee $1 + local.tee $4 i32.const 1 i32.and if (result i32) @@ -10933,16 +10984,16 @@ else local.get $0 i32.load16_u - local.get $2 + local.get $6 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $1 + local.get $4 i32.const -2 i32.and - local.set $0 + local.set $4 br $while-continue|015 end end @@ -10952,18 +11003,18 @@ local.get $0 if local.get $0 - local.get $2 + local.get $6 i32.store16 offset=2 else - local.get $10 + local.get $13 i32.load offset=16 - local.get $10 + local.get $13 i32.load offset=12 i32.eq if - local.get $10 + local.get $13 i32.load offset=20 - local.get $10 + local.get $13 i32.load offset=12 i32.const 3 i32.mul @@ -10971,17 +11022,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $10 + local.get $13 i32.load offset=4 else - local.get $10 + local.get $13 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $7 + local.set $14 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -10989,20 +11040,20 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 i64.store local.get $0 - local.get $7 + local.get $14 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $15 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -11010,45 +11061,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $13 + local.tee $12 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $4 i32.store offset=4 - local.get $10 + local.get $13 i32.load offset=8 - local.tee $16 - local.get $10 + local.tee $7 + local.get $13 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $12 - local.get $1 + local.set $16 + local.get $4 local.set $0 - loop $while-continue|016 - local.get $12 + loop $while-continue|0216 + local.get $7 local.get $16 i32.ne if - local.get $16 + local.get $7 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $16 + local.get $7 i32.load16_u - local.tee $5 + local.tee $17 i32.store16 local.get $0 - local.get $16 + local.get $7 i32.load16_u offset=2 i32.store16 offset=2 local.get $0 - local.get $5 + local.get $17 i32.const -1028477379 i32.mul i32.const 374761395 @@ -11057,35 +11108,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $5 + local.tee $17 + local.get $17 i32.const 15 i32.shr_u - local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $5 + local.tee $17 + local.get $17 i32.const 13 i32.shr_u - local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $5 + local.tee $17 + local.get $17 i32.const 16 i32.shr_u - local.get $5 i32.xor - local.get $7 + local.get $14 i32.and i32.const 2 i32.shl - local.get $6 + local.get $15 i32.add - local.tee $5 + local.tee $17 i32.load i32.store offset=4 - local.get $5 + local.get $17 local.get $0 i32.store local.get $0 @@ -11093,39 +11144,39 @@ i32.add local.set $0 end - local.get $16 + local.get $7 i32.const 8 i32.add - local.set $16 - br $while-continue|016 + local.set $7 + br $while-continue|0216 end end - local.get $10 - local.get $6 + local.get $13 + local.get $15 i32.store - local.get $6 + local.get $15 if - local.get $10 - local.get $6 + local.get $13 + local.get $15 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $7 + local.get $13 + local.get $14 i32.store offset=4 - local.get $10 - local.get $1 + local.get $13 + local.get $4 i32.store offset=8 - local.get $1 + local.get $4 if - local.get $10 - local.get $1 + local.get $13 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 local.get $13 + local.get $12 i32.store offset=12 - local.get $10 - local.get $10 + local.get $13 + local.get $13 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -11134,70 +11185,70 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $13 i32.load offset=8 - local.tee $1 + local.tee $0 i32.store - local.get $10 - local.get $10 + local.get $13 + local.get $13 i32.load offset=16 - local.tee $0 + local.tee $4 i32.const 1 i32.add i32.store offset=16 - local.get $0 + local.get $4 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add - local.tee $1 + local.tee $0 local.get $2 i32.store16 - local.get $1 - local.get $2 + local.get $0 + local.get $6 i32.store16 offset=2 - local.get $10 - local.get $10 + local.get $13 + local.get $13 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $1 - local.get $10 + local.get $0 + local.get $13 i32.load - local.get $10 + local.get $13 i32.load offset=4 - local.get $14 + local.get $11 i32.and i32.const 2 i32.shl i32.add - local.tee $0 + local.tee $2 i32.load i32.store offset=4 + local.get $2 local.get $0 - local.get $1 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 local.get $8 + local.get $9 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|4 end end - local.get $10 + local.get $13 i32.load offset=20 i32.const 100 i32.ne @@ -11209,7 +11260,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $8 i32.load offset=20 i32.const 100 i32.ne @@ -11222,67 +11273,69 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $for-loop|6 - local.get $0 + local.get $1 i32.const 65535 i32.and i32.const 50 i32.lt_u if - local.get $11 - i32.load - local.get $11 - i32.load offset=4 - local.get $0 - i32.const 65535 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - i32.const 15 - i32.shr_u - local.get $1 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - i32.const 13 - i32.shr_u - local.get $1 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - i32.const 16 - i32.shr_u - local.get $1 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $4 - block $__inlined_func$~lib/map/Map#find18 + block $__inlined_func$~lib/map/Map#find18 (result i32) + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + local.get $1 + local.tee $0 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|019 - local.get $4 + local.get $2 if - local.get $4 + local.get $2 + local.get $2 i32.load offset=8 - local.tee $1 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $2 i32.load16_u local.get $0 i32.const 65535 @@ -11290,17 +11343,16 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find18 - local.get $1 + drop + local.get $4 i32.const -2 i32.and - local.set $4 + local.set $2 br $while-continue|019 end end i32.const 0 - local.set $4 end - local.get $4 i32.eqz if i32.const 0 @@ -11310,10 +11362,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $0 + local.get $3 + local.get $1 call $~lib/map/Map#get - local.get $0 + local.get $1 i32.const 65535 i32.and i32.const 20 @@ -11327,62 +11379,64 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $0 - call $~lib/map/Map#delete - local.get $11 - i32.load - local.get $11 - i32.load offset=4 - local.get $0 - i32.const 65535 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - i32.const 15 - i32.shr_u - local.get $1 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - i32.const 13 - i32.shr_u - local.get $1 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - i32.const 16 - i32.shr_u + local.get $3 local.get $1 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $4 - block $__inlined_func$~lib/map/Map#find21 + call $~lib/map/Map#delete + block $__inlined_func$~lib/map/Map#find21 (result i32) + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + local.get $1 + local.tee $0 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|022 - local.get $4 + local.get $2 if - local.get $4 + local.get $2 + local.get $2 i32.load offset=8 - local.tee $1 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $2 i32.load16_u local.get $0 i32.const 65535 @@ -11390,17 +11444,16 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find21 - local.get $1 + drop + local.get $4 i32.const -2 i32.and - local.set $4 + local.set $2 br $while-continue|022 end end i32.const 0 - local.set $4 end - local.get $4 if i32.const 0 i32.const 1568 @@ -11409,14 +11462,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|6 end end - local.get $11 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -11429,67 +11482,69 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $for-loop|8 - local.get $0 + local.get $1 i32.const 65535 i32.and i32.const 50 i32.lt_u if - local.get $11 - i32.load - local.get $11 - i32.load offset=4 - local.get $0 - i32.const 65535 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - i32.const 15 - i32.shr_u - local.get $1 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - i32.const 13 - i32.shr_u - local.get $1 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - i32.const 16 - i32.shr_u - local.get $1 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $4 - block $__inlined_func$~lib/map/Map#find24 + block $__inlined_func$~lib/map/Map#find24 (result i32) + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + local.get $1 + local.tee $0 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|025 - local.get $4 + local.get $2 if - local.get $4 + local.get $2 + local.get $2 i32.load offset=8 - local.tee $1 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $2 i32.load16_u local.get $0 i32.const 65535 @@ -11497,17 +11552,16 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find24 - local.get $1 + drop + local.get $4 i32.const -2 i32.and - local.set $4 + local.set $2 br $while-continue|025 end end i32.const 0 - local.set $4 end - local.get $4 if i32.const 0 i32.const 1568 @@ -11515,67 +11569,70 @@ i32.const 5 call $~lib/builtins/abort unreachable - end - local.get $11 - local.get $0 - local.get $0 - i32.const 65535 - i32.and - local.tee $1 - i32.const 10 - i32.add - call $~lib/map/Map#set - local.get $11 - i32.load - local.get $11 - i32.load offset=4 - local.get $1 - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - i32.const 15 - i32.shr_u - local.get $1 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - i32.const 13 - i32.shr_u - local.get $1 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - i32.const 16 - i32.shr_u + end + local.get $3 local.get $1 - i32.xor + local.get $1 + i32.const 65535 i32.and - i32.const 2 - i32.shl + i32.const 10 i32.add - i32.load - local.set $4 - block $__inlined_func$~lib/map/Map#find27 + call $~lib/map/Map#set + block $__inlined_func$~lib/map/Map#find27 (result i32) + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + local.get $1 + local.tee $0 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|028 - local.get $4 + local.get $2 if - local.get $4 + local.get $2 + local.get $2 i32.load offset=8 - local.tee $1 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $2 i32.load16_u local.get $0 i32.const 65535 @@ -11583,17 +11640,16 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find27 - local.get $1 + drop + local.get $4 i32.const -2 i32.and - local.set $4 + local.set $2 br $while-continue|028 end end i32.const 0 - local.set $4 end - local.get $4 i32.eqz if i32.const 0 @@ -11603,62 +11659,64 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $0 - call $~lib/map/Map#delete - local.get $11 - i32.load - local.get $11 - i32.load offset=4 - local.get $0 - i32.const 65535 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - i32.const 15 - i32.shr_u - local.get $1 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - i32.const 13 - i32.shr_u - local.get $1 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - i32.const 16 - i32.shr_u + local.get $3 local.get $1 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $4 - block $__inlined_func$~lib/map/Map#find30 + call $~lib/map/Map#delete + block $__inlined_func$~lib/map/Map#find30 (result i32) + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + local.get $1 + local.tee $0 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|031 - local.get $4 + local.get $2 if - local.get $4 + local.get $2 + local.get $2 i32.load offset=8 - local.tee $1 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $2 i32.load16_u local.get $0 i32.const 65535 @@ -11666,17 +11724,16 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find30 - local.get $1 + drop + local.get $4 i32.const -2 i32.and - local.set $4 + local.set $2 br $while-continue|031 end end i32.const 0 - local.set $4 end - local.get $4 if i32.const 0 i32.const 1568 @@ -11685,14 +11742,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|8 end end - local.get $11 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -11704,9 +11761,9 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $3 call $~lib/map/Map#clear - local.get $11 + local.get $3 i32.load offset=20 if i32.const 0 @@ -11731,48 +11788,49 @@ ) (func $~lib/map/Map#get (param $0 i32) (param $1 i32) (result i32) (local $2 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i32.const -1028477379 - i32.mul - i32.const 374761397 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - local.get $0 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - local.get $0 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - local.get $0 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $0 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i32.const -1028477379 + i32.mul + i32.const 374761397 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $0 + i32.const 15 + i32.shr_u + local.get $0 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $0 + i32.const 13 + i32.shr_u + local.get $0 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $0 + i32.const 16 + i32.shr_u + local.get $0 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $0 loop $while-continue|0 local.get $0 if + local.get $0 local.get $0 i32.load offset=8 local.tee $2 @@ -11787,6 +11845,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $2 i32.const -2 i32.and @@ -11795,67 +11854,67 @@ end end i32.const 0 - local.set $0 end - local.get $0 + local.tee $0 i32.eqz if i32.const 1616 i32.const 1680 i32.const 105 i32.const 17 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - ) - (func $~lib/map/Map#delete (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - local.tee $2 - i32.const -1028477379 - i32.mul - i32.const 374761397 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - local.get $1 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - local.get $1 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - local.get $1 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/map/Map#find + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + ) + (func $~lib/map/Map#delete (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + local.tee $2 + i32.const -1028477379 + i32.mul + i32.const 374761397 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $1 + i32.const 15 + i32.shr_u + local.get $1 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $1 + i32.const 13 + i32.shr_u + local.get $1 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $1 + i32.const 16 + i32.shr_u + local.get $1 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $1 loop $while-continue|0 local.get $1 if + local.get $1 local.get $1 i32.load offset=8 local.tee $3 @@ -11870,6 +11929,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $3 i32.const -2 i32.and @@ -11878,9 +11938,8 @@ end end i32.const 0 - local.set $1 end - local.get $1 + local.tee $1 i32.eqz if return @@ -11954,21 +12013,21 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i64.const 0 i64.store - local.get $1 + local.get $3 i64.const 0 i64.store offset=8 - local.get $1 + local.get $3 i32.const 0 i32.store offset=16 - local.get $1 + local.get $3 call $~lib/map/Map#constructor local.tee $4 i32.store loop $for-loop|0 - local.get $0 + local.get $2 i32.const 100 i32.lt_s if @@ -11976,7 +12035,7 @@ i32.load local.get $4 i32.load offset=4 - local.get $0 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -11985,60 +12044,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=8 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 - local.get $1 + local.get $2 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|0 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 if i32.const 0 i32.const 1568 @@ -12048,8 +12107,8 @@ unreachable end local.get $4 - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.const 10 i32.add call $~lib/map/Map#set @@ -12057,7 +12116,7 @@ i32.load local.get $4 i32.load offset=4 - local.get $0 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12066,60 +12125,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=8 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 - local.get $1 + local.get $2 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|02 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 i32.eqz if i32.const 0 @@ -12130,9 +12189,9 @@ unreachable end local.get $4 - local.get $0 + local.get $2 call $~lib/map/Map#get - local.get $0 + local.get $2 i32.const 10 i32.add i32.ne @@ -12144,10 +12203,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|0 end end @@ -12164,9 +12223,9 @@ unreachable end i32.const 0 - local.set $0 + local.set $2 loop $for-loop|1 - local.get $0 + local.get $2 i32.const 100 i32.lt_s if @@ -12174,7 +12233,7 @@ i32.load local.get $4 i32.load offset=4 - local.get $0 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12183,60 +12242,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=8 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 - local.get $1 + local.get $2 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|05 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 i32.eqz if i32.const 0 @@ -12247,9 +12306,9 @@ unreachable end local.get $4 - local.get $0 + local.get $2 call $~lib/map/Map#get - local.get $0 + local.get $2 i32.const 10 i32.add i32.ne @@ -12262,8 +12321,8 @@ unreachable end local.get $4 - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.const 20 i32.add call $~lib/map/Map#set @@ -12271,7 +12330,7 @@ i32.load local.get $4 i32.load offset=4 - local.get $0 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12280,60 +12339,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=8 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 - local.get $1 + local.get $2 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|08 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 i32.eqz if i32.const 0 @@ -12344,9 +12403,9 @@ unreachable end local.get $4 - local.get $0 + local.get $2 call $~lib/map/Map#get - local.get $0 + local.get $2 i32.const 20 i32.add i32.ne @@ -12358,10 +12417,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|1 end end @@ -12378,10 +12437,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - i32.const 0 - local.set $0 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -12390,25 +12447,25 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store local.get $4 i32.load offset=8 local.set $6 - local.get $1 + local.get $2 local.get $4 i32.load offset=16 - local.tee $1 + local.tee $2 call $~lib/array/Array#constructor local.tee $7 i32.store loop $for-loop|01 - local.get $1 local.get $2 + local.get $5 i32.gt_s if - local.get $2 + local.get $5 i32.const 12 i32.mul local.get $6 @@ -12429,10 +12486,10 @@ i32.add local.set $0 end - local.get $2 + local.get $5 i32.const 1 i32.add - local.set $2 + local.set $5 br $for-loop|01 end end @@ -12453,35 +12510,35 @@ global.get $~lib/memory/__stack_pointer local.get $4 call $~lib/map/Map#values - local.tee $0 + local.tee $5 i32.store offset=8 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $5 + local.tee $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $6 + local.tee $2 i32.store offset=16 loop $for-loop|2 local.get $7 i32.load offset=12 - local.get $3 + local.get $1 i32.gt_s if local.get $7 - local.get $3 + local.get $1 call $~lib/array/Array#__get - local.set $8 - local.get $0 - local.get $3 + local.set $6 + local.get $5 + local.get $1 call $~lib/array/Array#__get - local.set $9 + local.set $8 local.get $4 i32.load local.get $4 i32.load offset=4 - local.get $8 + local.get $6 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12490,60 +12547,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find10 loop $while-continue|011 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 - local.tee $1 + local.tee $9 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $8 - local.get $2 + local.get $6 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $1 + local.get $9 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|011 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -12557,10 +12614,10 @@ i32.load local.get $4 i32.load offset=4 - local.get $9 + local.get $8 i32.const 20 i32.sub - local.tee $10 + local.tee $9 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12569,60 +12626,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/map/Map#find13 loop $while-continue|014 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=8 - local.tee $1 + local.tee $10 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $10 - local.get $2 + local.get $9 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $1 + local.get $10 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|014 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -12632,25 +12689,25 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $8 - local.get $8 - call $~lib/map/Map#set + local.get $0 local.get $6 - local.get $9 + local.get $6 + call $~lib/map/Map#set + local.get $2 + local.get $8 i32.const 20 i32.sub - local.tee $1 - local.get $1 - call $~lib/map/Map#set + local.tee $3 local.get $3 + call $~lib/map/Map#set + local.get $1 i32.const 1 i32.add - local.set $3 + local.set $1 br $for-loop|2 end end - local.get $5 + local.get $0 i32.load offset=20 i32.const 100 i32.ne @@ -12662,7 +12719,7 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -12675,9 +12732,9 @@ unreachable end i32.const 0 - local.set $3 + local.set $1 loop $for-loop|3 - local.get $3 + local.get $1 i32.const 50 i32.lt_s if @@ -12685,7 +12742,7 @@ i32.load local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12695,59 +12752,59 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/map/Map#find16 loop $while-continue|017 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=8 - local.tee $1 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else + local.get $1 local.get $3 - local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find16 - local.get $1 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|017 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 i32.eqz if i32.const 0 @@ -12758,9 +12815,9 @@ unreachable end local.get $4 - local.get $3 + local.get $1 call $~lib/map/Map#get - local.get $3 + local.get $1 i32.const 20 i32.add i32.ne @@ -12773,13 +12830,13 @@ unreachable end local.get $4 - local.get $3 + local.get $1 call $~lib/map/Map#delete local.get $4 i32.load local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12789,59 +12846,59 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/map/Map#find19 loop $while-continue|020 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=8 - local.tee $1 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else + local.get $1 local.get $3 - local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find19 - local.get $1 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|020 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 if i32.const 0 i32.const 1568 @@ -12850,10 +12907,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 + local.set $1 br $for-loop|3 end end @@ -12870,9 +12927,9 @@ unreachable end i32.const 0 - local.set $3 + local.set $1 loop $for-loop|4 - local.get $3 + local.get $1 i32.const 50 i32.lt_s if @@ -12880,7 +12937,7 @@ i32.load local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12890,59 +12947,59 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/map/Map#find22 loop $while-continue|023 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=8 - local.tee $1 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else + local.get $1 local.get $3 - local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find22 - local.get $1 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|023 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 if i32.const 0 i32.const 1568 @@ -12952,8 +13009,8 @@ unreachable end local.get $4 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.const 10 i32.add call $~lib/map/Map#set @@ -12961,7 +13018,7 @@ i32.load local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12971,59 +13028,59 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/map/Map#find25 loop $while-continue|026 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=8 - local.tee $1 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else + local.get $1 local.get $3 - local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find25 - local.get $1 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|026 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 i32.eqz if i32.const 0 @@ -13034,13 +13091,13 @@ unreachable end local.get $4 - local.get $3 + local.get $1 call $~lib/map/Map#delete local.get $4 i32.load local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13050,59 +13107,59 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $3 block $__inlined_func$~lib/map/Map#find28 loop $while-continue|029 - local.get $0 + local.get $3 if - local.get $0 + local.get $3 i32.load offset=8 - local.tee $1 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else + local.get $1 local.get $3 - local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find28 - local.get $1 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $3 br $while-continue|029 end end i32.const 0 - local.set $0 + local.set $3 end - local.get $0 + local.get $3 if i32.const 0 i32.const 1568 @@ -13111,10 +13168,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 + local.set $1 br $for-loop|4 end end @@ -13190,7 +13247,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -13198,7 +13255,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $7 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -13206,33 +13263,33 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $4 + local.tee $5 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $7 + local.set $6 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 - local.get $7 + local.get $5 + local.get $6 i32.ne if - local.get $4 + local.get $5 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $4 + local.get $5 i32.load local.tee $8 i32.store local.get $2 - local.get $4 + local.get $5 i32.load offset=4 i32.store offset=4 local.get $2 @@ -13246,29 +13303,29 @@ i32.const 668265263 i32.mul local.tee $8 - local.get $8 i32.const 15 i32.shr_u + local.get $8 i32.xor i32.const -2048144777 i32.mul local.tee $8 - local.get $8 i32.const 13 i32.shr_u + local.get $8 i32.xor i32.const -1028477379 i32.mul local.tee $8 - local.get $8 i32.const 16 i32.shr_u + local.get $8 i32.xor local.get $1 i32.and i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add local.tee $8 i32.load @@ -13281,20 +13338,20 @@ i32.add local.set $2 end - local.get $4 + local.get $5 i32.const 12 i32.add - local.set $4 + local.set $5 br $while-continue|0 end end local.get $0 - local.get $5 + local.get $4 i32.store - local.get $5 + local.get $4 if local.get $0 - local.get $5 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -13310,7 +13367,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -13323,48 +13380,49 @@ ) (func $~lib/map/Map#get (param $0 i32) (param $1 i32) (result i32) (local $2 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i32.const -1028477379 - i32.mul - i32.const 374761397 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - local.get $0 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - local.get $0 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - local.get $0 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $0 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i32.const -1028477379 + i32.mul + i32.const 374761397 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $0 + i32.const 15 + i32.shr_u + local.get $0 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $0 + i32.const 13 + i32.shr_u + local.get $0 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $0 + i32.const 16 + i32.shr_u + local.get $0 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $0 loop $while-continue|0 local.get $0 if + local.get $0 local.get $0 i32.load offset=8 local.tee $2 @@ -13379,6 +13437,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $2 i32.const -2 i32.and @@ -13387,9 +13446,8 @@ end end i32.const 0 - local.set $0 end - local.get $0 + local.tee $0 i32.eqz if i32.const 1616 @@ -13405,49 +13463,50 @@ (func $~lib/map/Map#delete (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - local.tee $2 - i32.const -1028477379 - i32.mul - i32.const 374761397 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - local.get $1 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - local.get $1 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - local.get $1 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + local.tee $2 + i32.const -1028477379 + i32.mul + i32.const 374761397 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $1 + i32.const 15 + i32.shr_u + local.get $1 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $1 + i32.const 13 + i32.shr_u + local.get $1 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $1 + i32.const 16 + i32.shr_u + local.get $1 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $1 loop $while-continue|0 local.get $1 if + local.get $1 local.get $1 i32.load offset=8 local.tee $3 @@ -13462,6 +13521,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $3 i32.const -2 i32.and @@ -13470,9 +13530,8 @@ end end i32.const 0 - local.set $1 end - local.get $1 + local.tee $1 i32.eqz if return @@ -13542,94 +13601,95 @@ (local $14 i32) (local $15 i32) (local $16 i32) + (local $17 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $4 i64.const 0 i64.store - local.get $2 + local.get $4 i64.const 0 i64.store offset=8 - local.get $2 + local.get $4 i32.const 0 i32.store offset=16 - local.get $2 + local.get $4 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.const 17 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $2 i32.store - local.get $10 + local.get $2 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $6 i32.store - local.get $0 + local.get $6 if - local.get $10 - local.get $0 + local.get $2 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $2 i32.const 3 i32.store offset=4 - local.get $10 + local.get $2 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $6 i32.store offset=8 - local.get $0 + local.get $6 if - local.get $10 - local.get $0 + local.get $2 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $2 i32.const 4 i32.store offset=12 - local.get $10 + local.get $2 i32.const 0 i32.store offset=16 - local.get $10 + local.get $2 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $4 local.get $2 - local.get $10 i32.store loop $for-loop|0 - local.get $3 + local.get $5 i32.const 100 i32.lt_u if - local.get $10 + local.get $2 i32.load - local.get $10 + local.get $2 i32.load offset=4 - local.get $3 + local.get $5 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13638,60 +13698,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $4 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $0 + local.get $4 if - local.get $0 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 - local.get $0 + local.get $5 + local.get $4 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $2 + local.get $6 i32.const -2 i32.and - local.set $0 + local.set $4 br $while-continue|0 end end i32.const 0 - local.set $0 + local.set $4 end - local.get $0 + local.get $4 if i32.const 0 i32.const 1568 @@ -13700,17 +13760,17 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $3 - local.get $3 + local.get $2 + local.get $5 + local.get $5 i32.const 10 i32.add call $~lib/map/Map#set - local.get $10 + local.get $2 i32.load - local.get $10 + local.get $2 i32.load offset=4 - local.get $3 + local.get $5 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13719,60 +13779,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $4 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $0 + local.get $4 if - local.get $0 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 - local.get $0 + local.get $5 + local.get $4 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $2 + local.get $6 i32.const -2 i32.and - local.set $0 + local.set $4 br $while-continue|02 end end i32.const 0 - local.set $0 + local.set $4 end - local.get $0 + local.get $4 i32.eqz if i32.const 0 @@ -13782,10 +13842,10 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $3 + local.get $2 + local.get $5 call $~lib/map/Map#get - local.get $3 + local.get $5 i32.const 10 i32.add i32.ne @@ -13797,14 +13857,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 i32.const 1 i32.add - local.set $3 + local.set $5 br $for-loop|0 end end - local.get $10 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -13817,17 +13877,17 @@ unreachable end i32.const 0 - local.set $3 + local.set $5 loop $for-loop|1 - local.get $3 + local.get $5 i32.const 100 i32.lt_u if - local.get $10 + local.get $2 i32.load - local.get $10 + local.get $2 i32.load offset=4 - local.get $3 + local.get $5 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13836,60 +13896,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $4 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $0 + local.get $4 if - local.get $0 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 - local.get $0 + local.get $5 + local.get $4 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $2 + local.get $6 i32.const -2 i32.and - local.set $0 + local.set $4 br $while-continue|05 end end i32.const 0 - local.set $0 + local.set $4 end - local.get $0 + local.get $4 i32.eqz if i32.const 0 @@ -13899,10 +13959,10 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $3 + local.get $2 + local.get $5 call $~lib/map/Map#get - local.get $3 + local.get $5 i32.const 10 i32.add i32.ne @@ -13914,17 +13974,17 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $3 - local.get $3 + local.get $2 + local.get $5 + local.get $5 i32.const 20 i32.add call $~lib/map/Map#set - local.get $10 + local.get $2 i32.load - local.get $10 + local.get $2 i32.load offset=4 - local.get $3 + local.get $5 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13933,60 +13993,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $4 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $0 + local.get $4 if - local.get $0 + local.get $4 i32.load offset=8 - local.tee $2 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 - local.get $0 + local.get $5 + local.get $4 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $2 + local.get $6 i32.const -2 i32.and - local.set $0 + local.set $4 br $while-continue|08 end end i32.const 0 - local.set $0 + local.set $4 end - local.get $0 + local.get $4 i32.eqz if i32.const 0 @@ -13996,10 +14056,10 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $3 + local.get $2 + local.get $5 call $~lib/map/Map#get - local.get $3 + local.get $5 i32.const 20 i32.add i32.ne @@ -14011,14 +14071,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 i32.const 1 i32.add - local.set $3 + local.set $5 br $for-loop|1 end end - local.get $10 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -14031,57 +14091,57 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $0 + local.tee $4 + local.get $4 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $6 i32.const 0 i32.store - local.get $10 + local.get $2 i32.load offset=8 - local.set $6 - local.get $10 + local.set $7 + local.get $2 i32.load offset=16 - local.tee $5 - local.set $4 - local.get $7 + local.tee $8 + local.set $9 + local.get $6 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $4 i64.const 0 i64.store - local.get $0 + local.get $4 i32.const 16 i32.const 18 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $4 i32.store - local.get $3 + local.get $4 i32.const 0 i32.store - local.get $3 + local.get $4 i32.const 0 i32.store offset=4 - local.get $3 + local.get $4 i32.const 0 i32.store offset=8 - local.get $3 + local.get $4 i32.const 0 i32.store offset=12 - local.get $4 + local.get $9 i32.const 268435455 i32.gt_u if @@ -14093,66 +14153,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $9 i32.const 8 - local.get $4 + local.get $9 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $2 + local.tee $10 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $11 i32.store offset=4 - local.get $0 - local.get $2 + local.get $11 + local.get $10 call $~lib/memory/memory.fill - local.get $3 - local.get $0 + local.get $4 + local.get $11 i32.store - local.get $0 + local.get $11 if - local.get $3 - local.get $0 + local.get $4 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $0 + local.get $4 + local.get $11 i32.store offset=4 - local.get $3 - local.get $2 + local.get $4 + local.get $10 i32.store offset=8 - local.get $3 local.get $4 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 - local.get $3 + local.get $6 + local.get $4 i32.store loop $for-loop|01 - local.get $5 - local.get $9 - i32.gt_s + local.get $3 + local.get $8 + i32.lt_s if - local.get $9 + local.get $3 i32.const 12 i32.mul - local.get $6 + local.get $7 i32.add - local.tee $0 + local.tee $6 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $3 + local.get $4 local.get $1 - local.get $0 + local.get $6 i32.load call $~lib/array/Array#__set local.get $1 @@ -14160,31 +14220,31 @@ i32.add local.set $1 end - local.get $9 + local.get $3 i32.const 1 i32.add - local.set $9 + local.set $3 br $for-loop|01 end end - local.get $3 + local.get $4 local.get $1 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $3 + local.get $4 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $2 call $~lib/map/Map#values - local.tee $14 + local.tee $10 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -14194,71 +14254,72 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 24 i32.const 19 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $13 i32.store - local.get $9 + local.get $13 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 if - local.get $9 - local.get $0 + local.get $13 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 + local.get $13 i32.const 3 i32.store offset=4 - local.get $9 + local.get $13 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $3 i32.store offset=8 - local.get $0 + local.get $3 if - local.get $9 - local.get $0 + local.get $13 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 + local.get $13 i32.const 4 i32.store offset=12 - local.get $9 + local.get $13 i32.const 0 i32.store offset=16 - local.get $9 + local.get $13 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 + local.get $13 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor local.tee $8 i32.store offset=16 loop $for-loop|2 - local.get $3 + local.get $4 i32.load offset=12 - local.get $16 + local.get $0 i32.gt_s if - local.get $3 + local.get $0 + local.tee $5 + local.get $4 i32.load offset=12 - local.get $16 - i32.le_u + i32.ge_u if i32.const 1248 i32.const 1728 @@ -14267,23 +14328,24 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 i32.load offset=4 - local.get $16 + local.get $5 i32.const 2 i32.shl i32.add i32.load - local.set $2 - local.get $14 - local.get $16 - call $~lib/array/Array#__get - local.set $7 + local.set $6 local.get $10 + local.get $5 + call $~lib/array/Array#__get + local.set $9 + local.get $2 i32.load - local.get $10 - i32.load offset=4 local.get $2 + i32.load offset=4 + local.get $6 + local.tee $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14293,59 +14355,59 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 - block $__inlined_func$~lib/map/Map#find10 - loop $while-continue|011 - local.get $4 + local.set $0 + block $__inlined_func$~lib/map/Map#find12 + loop $while-continue|013 + local.get $0 if - local.get $4 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 - local.get $4 + local.get $1 + local.get $0 i32.load i32.eq end - br_if $__inlined_func$~lib/map/Map#find10 - local.get $0 + br_if $__inlined_func$~lib/map/Map#find12 + local.get $3 i32.const -2 i32.and - local.set $4 - br $while-continue|011 + local.set $0 + br $while-continue|013 end end i32.const 0 - local.set $4 + local.set $0 end - local.get $4 + local.get $0 i32.eqz if i32.const 0 @@ -14355,14 +14417,14 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $2 i32.load - local.get $10 + local.get $2 i32.load offset=4 - local.get $7 + local.get $9 i32.const 20 i32.sub - local.tee $1 + local.tee $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14372,59 +14434,59 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 - block $__inlined_func$~lib/map/Map#find13 - loop $while-continue|014 - local.get $4 + local.set $0 + block $__inlined_func$~lib/map/Map#find15 + loop $while-continue|016 + local.get $0 if - local.get $4 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 - local.get $4 + local.get $3 + local.get $0 i32.load i32.eq end - br_if $__inlined_func$~lib/map/Map#find13 - local.get $0 + br_if $__inlined_func$~lib/map/Map#find15 + local.get $7 i32.const -2 i32.and - local.set $4 - br $while-continue|014 + local.set $0 + br $while-continue|016 end end i32.const 0 - local.set $4 + local.set $0 end - local.get $4 + local.get $0 i32.eqz if i32.const 0 @@ -14441,13 +14503,13 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $9 + local.get $13 i32.load - local.get $2 + local.get $6 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14457,56 +14519,57 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor - local.tee $13 - local.get $9 + local.tee $11 + local.get $13 i32.load offset=4 i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 - block $__inlined_func$~lib/map/Map#find15 - loop $while-continue|016 - local.get $0 + local.set $3 + block $__inlined_func$~lib/map/Map#find17 + loop $while-continue|018 + local.get $3 if - local.get $0 + local.get $3 + local.tee $0 i32.load offset=8 - local.tee $1 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $1 local.get $0 i32.load i32.eq end - br_if $__inlined_func$~lib/map/Map#find15 - local.get $1 + br_if $__inlined_func$~lib/map/Map#find17 + local.get $3 i32.const -2 i32.and - local.set $0 - br $while-continue|016 + local.set $3 + br $while-continue|018 end end i32.const 0 @@ -14515,18 +14578,18 @@ local.get $0 if local.get $0 - local.get $2 + local.get $1 i32.store offset=4 else - local.get $9 + local.get $13 i32.load offset=16 - local.get $9 + local.get $13 i32.load offset=12 i32.eq if - local.get $9 + local.get $13 i32.load offset=20 - local.get $9 + local.get $13 i32.load offset=12 i32.const 3 i32.mul @@ -14534,17 +14597,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $9 + local.get $13 i32.load offset=4 else - local.get $9 + local.get $13 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $6 + local.set $14 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -14552,20 +14615,20 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 i64.store local.get $0 - local.get $6 + local.get $14 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $15 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -14577,41 +14640,41 @@ i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $3 i32.store offset=4 - local.get $9 + local.get $13 i32.load offset=8 - local.tee $15 - local.get $9 + local.tee $7 + local.get $13 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $11 - local.get $1 + local.set $16 + local.get $3 local.set $0 - loop $while-continue|017 - local.get $11 - local.get $15 + loop $while-continue|019 + local.get $7 + local.get $16 i32.ne if - local.get $15 + local.get $7 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $15 + local.get $7 i32.load - local.tee $4 + local.tee $17 i32.store local.get $0 - local.get $15 + local.get $7 i32.load offset=4 i32.store offset=4 local.get $0 - local.get $4 + local.get $17 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14620,35 +14683,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $17 + local.get $17 i32.const 15 i32.shr_u - local.get $4 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $17 + local.get $17 i32.const 13 i32.shr_u - local.get $4 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $17 + local.get $17 i32.const 16 i32.shr_u - local.get $4 i32.xor - local.get $6 + local.get $14 i32.and i32.const 2 i32.shl - local.get $5 + local.get $15 i32.add - local.tee $4 + local.tee $17 i32.load i32.store offset=8 - local.get $4 + local.get $17 local.get $0 i32.store local.get $0 @@ -14656,39 +14719,39 @@ i32.add local.set $0 end - local.get $15 + local.get $7 i32.const 12 i32.add - local.set $15 - br $while-continue|017 + local.set $7 + br $while-continue|019 end end - local.get $9 - local.get $5 + local.get $13 + local.get $15 i32.store - local.get $5 + local.get $15 if - local.get $9 - local.get $5 + local.get $13 + local.get $15 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 - local.get $6 + local.get $13 + local.get $14 i32.store offset=4 - local.get $9 - local.get $1 + local.get $13 + local.get $3 i32.store offset=8 - local.get $1 + local.get $3 if - local.get $9 - local.get $1 + local.get $13 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 + local.get $13 local.get $12 i32.store offset=12 - local.get $9 - local.get $9 + local.get $13 + local.get $13 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -14697,49 +14760,49 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $13 i32.load offset=8 - local.tee $1 + local.tee $0 i32.store - local.get $9 - local.get $9 + local.get $13 + local.get $13 i32.load offset=16 - local.tee $0 + local.tee $3 i32.const 1 i32.add i32.store offset=16 - local.get $0 + local.get $3 i32.const 12 i32.mul - local.get $1 + local.get $0 i32.add - local.tee $1 - local.get $2 + local.tee $0 + local.get $6 i32.store + local.get $0 local.get $1 - local.get $2 i32.store offset=4 - local.get $9 - local.get $9 + local.get $13 + local.get $13 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $1 - local.get $9 + local.get $0 + local.get $13 i32.load - local.get $9 - i32.load offset=4 local.get $13 + i32.load offset=4 + local.get $11 i32.and i32.const 2 i32.shl i32.add - local.tee $0 + local.tee $1 i32.load i32.store offset=8 - local.get $0 local.get $1 + local.get $0 i32.store end global.get $~lib/memory/__stack_pointer @@ -14747,20 +14810,20 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $8 - local.get $7 + local.get $9 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $16 + local.get $5 i32.const 1 i32.add - local.set $16 + local.set $0 br $for-loop|2 end end - local.get $9 + local.get $13 i32.load offset=20 i32.const 100 i32.ne @@ -14785,17 +14848,17 @@ unreachable end i32.const 0 - local.set $16 + local.set $0 loop $for-loop|3 - local.get $16 + local.get $0 i32.const 50 i32.lt_u if - local.get $10 + local.get $2 i32.load - local.get $10 + local.get $2 i32.load offset=4 - local.get $16 + local.get $0 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14804,60 +14867,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 - block $__inlined_func$~lib/map/Map#find19 - loop $while-continue|020 - local.get $3 + local.set $4 + block $__inlined_func$~lib/map/Map#find21 + loop $while-continue|022 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $0 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $16 - local.get $3 + local.get $0 + local.get $4 i32.load i32.eq end - br_if $__inlined_func$~lib/map/Map#find19 - local.get $0 + br_if $__inlined_func$~lib/map/Map#find21 + local.get $1 i32.const -2 i32.and - local.set $3 - br $while-continue|020 + local.set $4 + br $while-continue|022 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 i32.eqz if i32.const 0 @@ -14867,10 +14930,10 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $16 + local.get $2 + local.get $0 call $~lib/map/Map#get - local.get $16 + local.get $0 i32.const 20 i32.add i32.ne @@ -14882,14 +14945,14 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $16 + local.get $2 + local.get $0 call $~lib/map/Map#delete - local.get $10 + local.get $2 i32.load - local.get $10 + local.get $2 i32.load offset=4 - local.get $16 + local.get $0 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14898,60 +14961,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 - block $__inlined_func$~lib/map/Map#find22 - loop $while-continue|023 - local.get $3 + local.set $4 + block $__inlined_func$~lib/map/Map#find24 + loop $while-continue|025 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $0 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $16 - local.get $3 + local.get $0 + local.get $4 i32.load i32.eq end - br_if $__inlined_func$~lib/map/Map#find22 - local.get $0 + br_if $__inlined_func$~lib/map/Map#find24 + local.get $1 i32.const -2 i32.and - local.set $3 - br $while-continue|023 + local.set $4 + br $while-continue|025 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 if i32.const 0 i32.const 1568 @@ -14960,14 +15023,14 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $0 i32.const 1 i32.add - local.set $16 + local.set $0 br $for-loop|3 end end - local.get $10 + local.get $2 i32.load offset=20 i32.const 50 i32.ne @@ -14980,17 +15043,17 @@ unreachable end i32.const 0 - local.set $16 + local.set $0 loop $for-loop|4 - local.get $16 + local.get $0 i32.const 50 i32.lt_u if - local.get $10 + local.get $2 i32.load - local.get $10 + local.get $2 i32.load offset=4 - local.get $16 + local.get $0 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14999,60 +15062,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 - block $__inlined_func$~lib/map/Map#find25 - loop $while-continue|026 - local.get $3 + local.set $4 + block $__inlined_func$~lib/map/Map#find27 + loop $while-continue|028 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $0 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $16 - local.get $3 + local.get $0 + local.get $4 i32.load i32.eq end - br_if $__inlined_func$~lib/map/Map#find25 - local.get $0 + br_if $__inlined_func$~lib/map/Map#find27 + local.get $1 i32.const -2 i32.and - local.set $3 - br $while-continue|026 + local.set $4 + br $while-continue|028 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 if i32.const 0 i32.const 1568 @@ -15061,17 +15124,17 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $16 - local.get $16 + local.get $2 + local.get $0 + local.get $0 i32.const 10 i32.add call $~lib/map/Map#set - local.get $10 + local.get $2 i32.load - local.get $10 + local.get $2 i32.load offset=4 - local.get $16 + local.get $0 i32.const -1028477379 i32.mul i32.const 374761397 @@ -15080,60 +15143,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 - block $__inlined_func$~lib/map/Map#find28 - loop $while-continue|029 - local.get $3 + local.set $4 + block $__inlined_func$~lib/map/Map#find30 + loop $while-continue|031 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $0 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $16 - local.get $3 + local.get $0 + local.get $4 i32.load i32.eq end - br_if $__inlined_func$~lib/map/Map#find28 - local.get $0 + br_if $__inlined_func$~lib/map/Map#find30 + local.get $1 i32.const -2 i32.and - local.set $3 - br $while-continue|029 + local.set $4 + br $while-continue|031 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 i32.eqz if i32.const 0 @@ -15143,14 +15206,14 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $16 + local.get $2 + local.get $0 call $~lib/map/Map#delete - local.get $10 + local.get $2 i32.load - local.get $10 + local.get $2 i32.load offset=4 - local.get $16 + local.get $0 i32.const -1028477379 i32.mul i32.const 374761397 @@ -15159,60 +15222,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 - block $__inlined_func$~lib/map/Map#find31 - loop $while-continue|032 - local.get $3 + local.set $4 + block $__inlined_func$~lib/map/Map#find33 + loop $while-continue|034 + local.get $4 if - local.get $3 + local.get $4 i32.load offset=8 - local.tee $0 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $16 - local.get $3 + local.get $0 + local.get $4 i32.load i32.eq end - br_if $__inlined_func$~lib/map/Map#find31 - local.get $0 + br_if $__inlined_func$~lib/map/Map#find33 + local.get $1 i32.const -2 i32.and - local.set $3 - br $while-continue|032 + local.set $4 + br $while-continue|034 end end i32.const 0 - local.set $3 + local.set $4 end - local.get $3 + local.get $4 if i32.const 0 i32.const 1568 @@ -15221,14 +15284,14 @@ call $~lib/builtins/abort unreachable end - local.get $16 + local.get $0 i32.const 1 i32.add - local.set $16 + local.set $0 br $for-loop|4 end end - local.get $10 + local.get $2 i32.load offset=20 i32.const 50 i32.ne @@ -15240,9 +15303,9 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $2 call $~lib/map/Map#clear - local.get $10 + local.get $2 i32.load offset=20 if i32.const 0 @@ -15267,60 +15330,61 @@ ) (func $~lib/map/Map#has (param $0 i32) (param $1 i64) (result i32) (local $2 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.const 374761401 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - local.get $0 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - local.get $0 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - local.get $0 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $0 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.const 374761401 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $0 + i32.const 15 + i32.shr_u + local.get $0 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $0 + i32.const 13 + i32.shr_u + local.get $0 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $0 + i32.const 16 + i32.shr_u + local.get $0 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $0 loop $while-continue|0 local.get $0 if + local.get $0 local.get $0 i32.load offset=12 local.tee $2 @@ -15335,6 +15399,7 @@ i64.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $2 i32.const -2 i32.and @@ -15343,9 +15408,7 @@ end end i32.const 0 - local.set $0 end - local.get $0 i32.const 0 i32.ne ) @@ -15385,7 +15448,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -15393,7 +15456,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -15401,37 +15464,36 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $8 + local.tee $5 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $4 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 + local.get $5 local.get $8 i32.ne if - local.get $8 + local.get $5 i32.load offset=12 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $8 + local.get $5 i64.load local.tee $6 i64.store local.get $2 - local.get $8 + local.get $5 i32.load offset=8 i32.store offset=8 local.get $2 - local.get $1 local.get $6 i32.wrap_i64 i32.const -1028477379 @@ -15454,28 +15516,29 @@ i32.const 668265263 i32.mul local.tee $9 - local.get $9 i32.const 15 i32.shr_u + local.get $9 i32.xor i32.const -2048144777 i32.mul local.tee $9 - local.get $9 i32.const 13 i32.shr_u + local.get $9 i32.xor i32.const -1028477379 i32.mul local.tee $9 - local.get $9 i32.const 16 i32.shr_u + local.get $9 i32.xor + local.get $1 i32.and i32.const 2 i32.shl - local.get $7 + local.get $4 i32.add local.tee $9 i32.load @@ -15488,20 +15551,20 @@ i32.add local.set $2 end - local.get $8 + local.get $5 i32.const 16 i32.add - local.set $8 + local.set $5 br $while-continue|0 end end local.get $0 - local.get $7 + local.get $4 i32.store - local.get $7 + local.get $4 if local.get $0 - local.get $7 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -15517,7 +15580,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -15530,60 +15593,61 @@ ) (func $~lib/map/Map#get (param $0 i32) (param $1 i64) (result i32) (local $2 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.const 374761401 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - local.get $0 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - local.get $0 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - local.get $0 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $0 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.const 374761401 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $0 + i32.const 15 + i32.shr_u + local.get $0 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $0 + i32.const 13 + i32.shr_u + local.get $0 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $0 + i32.const 16 + i32.shr_u + local.get $0 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $0 loop $while-continue|0 local.get $0 if + local.get $0 local.get $0 i32.load offset=12 local.tee $2 @@ -15598,6 +15662,7 @@ i64.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $2 i32.const -2 i32.and @@ -15606,9 +15671,8 @@ end end i32.const 0 - local.set $0 end - local.get $0 + local.tee $0 i32.eqz if i32.const 1616 @@ -15663,60 +15727,61 @@ (func $~lib/map/Map#delete (param $0 i32) (param $1 i64) (local $2 i32) (local $3 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.const 374761401 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - local.get $2 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - local.get $2 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - local.get $2 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.const 374761401 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|0 local.get $2 if + local.get $2 local.get $2 i32.load offset=12 local.tee $3 @@ -15731,6 +15796,7 @@ i64.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $3 i32.const -2 i32.and @@ -15739,9 +15805,8 @@ end end i32.const 0 - local.set $2 end - local.get $2 + local.tee $2 i32.eqz if return @@ -15838,44 +15903,44 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i64) + (local $7 i32) (local $8 i32) (local $9 i32) - (local $10 i32) + (local $10 i64) (local $11 i32) (local $12 i32) - (local $13 i32) + (local $13 i64) (local $14 i32) - (local $15 i64) + (local $15 i32) (local $16 i32) (local $17 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 i64.const 0 i64.store offset=8 - local.get $2 + local.get $3 i32.const 0 i32.store offset=16 - local.get $2 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $1 i32.const 0 @@ -15884,56 +15949,56 @@ i32.const 24 i32.const 20 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $1 i32.store - local.get $11 + local.get $1 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if - local.get $11 local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $1 i32.const 3 i32.store offset=4 - local.get $11 + local.get $1 i32.const 64 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=8 - local.get $1 + local.get $2 if - local.get $11 local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $1 i32.const 4 i32.store offset=12 - local.get $11 + local.get $1 i32.const 0 i32.store offset=16 - local.get $11 + local.get $1 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 - local.get $11 + local.get $3 + local.get $1 i32.store loop $for-loop|0 - local.get $7 + local.get $10 i64.const 100 i64.lt_s if - local.get $11 - local.get $7 + local.get $1 + local.get $10 call $~lib/map/Map#has if i32.const 0 @@ -15943,15 +16008,15 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 - local.get $7 + local.get $1 + local.get $10 + local.get $10 i32.wrap_i64 i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 - local.get $7 + local.get $1 + local.get $10 call $~lib/map/Map#has i32.eqz if @@ -15962,10 +16027,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 + local.get $1 + local.get $10 call $~lib/map/Map#get - local.get $7 + local.get $10 i32.wrap_i64 i32.const 10 i32.add @@ -15978,14 +16043,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $10 i64.const 1 i64.add - local.set $7 + local.set $10 br $for-loop|0 end end - local.get $11 + local.get $1 i32.load offset=20 i32.const 100 i32.ne @@ -15998,14 +16063,14 @@ unreachable end i64.const 0 - local.set $7 + local.set $10 loop $for-loop|1 - local.get $7 + local.get $10 i64.const 100 i64.lt_s if - local.get $11 - local.get $7 + local.get $1 + local.get $10 call $~lib/map/Map#has i32.eqz if @@ -16016,10 +16081,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 + local.get $1 + local.get $10 call $~lib/map/Map#get - local.get $7 + local.get $10 i32.wrap_i64 i32.const 10 i32.add @@ -16032,15 +16097,15 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 - local.get $7 + local.get $1 + local.get $10 + local.get $10 i32.wrap_i64 i32.const 20 i32.add call $~lib/map/Map#set - local.get $11 - local.get $7 + local.get $1 + local.get $10 call $~lib/map/Map#has i32.eqz if @@ -16051,10 +16116,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 + local.get $1 + local.get $10 call $~lib/map/Map#get - local.get $7 + local.get $10 i32.wrap_i64 i32.const 20 i32.add @@ -16067,14 +16132,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $10 i64.const 1 i64.add - local.set $7 + local.set $10 br $for-loop|1 end end - local.get $11 + local.get $1 i32.load offset=20 i32.const 100 i32.ne @@ -16087,26 +16152,27 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $8 i32.const 0 i32.store - local.get $11 + local.get $1 + local.tee $3 i32.load offset=8 - local.set $6 - local.get $11 + local.set $7 + local.get $1 i32.load offset=16 - local.tee $5 - local.set $4 + local.tee $6 + local.set $5 local.get $8 i32.const 8 i32.sub @@ -16114,7 +16180,7 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -16137,7 +16203,7 @@ local.get $2 i32.const 0 i32.store offset=12 - local.get $4 + local.get $5 i32.const 134217727 i32.gt_u if @@ -16149,21 +16215,21 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 8 - local.get $4 + local.get $5 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $3 + local.tee $4 i32.const 0 call $~lib/rt/itcms/__new local.tee $1 i32.store offset=4 local.get $1 - local.get $3 + local.get $4 call $~lib/memory/memory.fill local.get $2 local.get $1 @@ -16178,10 +16244,10 @@ local.get $1 i32.store offset=4 local.get $2 - local.get $3 + local.get $4 i32.store offset=8 local.get $2 - local.get $4 + local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 @@ -16191,14 +16257,14 @@ local.get $2 i32.store loop $for-loop|01 - local.get $5 - local.get $10 + local.get $6 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 4 i32.shl - local.get $6 + local.get $7 i32.add local.tee $1 i32.load offset=12 @@ -16216,10 +16282,10 @@ i32.add local.set $0 end - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|01 end end @@ -16238,9 +16304,9 @@ local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $3 call $~lib/map/Map#values - local.tee $10 + local.tee $12 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -16250,7 +16316,7 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -16259,51 +16325,51 @@ i32.const 24 i32.const 22 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $11 i32.store - local.get $9 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store local.get $0 if - local.get $9 + local.get $11 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 + local.get $11 i32.const 3 i32.store offset=4 - local.get $9 + local.get $11 i32.const 96 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store offset=8 local.get $0 if - local.get $9 + local.get $11 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 + local.get $11 i32.const 4 i32.store offset=12 - local.get $9 + local.get $11 i32.const 0 i32.store offset=16 - local.get $9 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 + local.get $11 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $8 + local.tee $15 i32.store offset=16 loop $for-loop|2 local.get $2 @@ -16330,13 +16396,13 @@ i32.shl i32.add i64.load - local.set $7 - local.get $10 + local.set $10 + local.get $12 local.get $16 call $~lib/array/Array#__get - local.set $6 - local.get $11 - local.get $7 + local.set $14 + local.get $3 + local.get $10 call $~lib/map/Map#has i32.eqz if @@ -16347,8 +16413,8 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $6 + local.get $3 + local.get $14 i32.const 20 i32.sub i64.extend_i32_s @@ -16369,13 +16435,13 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $9 + local.get $11 i32.load - local.get $7 + local.get $10 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -16385,7 +16451,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $7 + local.get $10 i64.const 32 i64.shr_u i32.wrap_i64 @@ -16397,26 +16463,26 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor - local.tee $14 - local.get $9 + local.tee $9 + local.get $11 i32.load offset=4 i32.and i32.const 2 @@ -16436,7 +16502,7 @@ if (result i32) i32.const 0 else - local.get $7 + local.get $10 local.get $0 i64.load i64.eq @@ -16455,18 +16521,18 @@ local.get $0 if local.get $0 - local.get $7 + local.get $10 i64.store offset=8 else - local.get $9 + local.get $11 i32.load offset=16 - local.get $9 + local.get $11 i32.load offset=12 i32.eq if - local.get $9 + local.get $11 i32.load offset=20 - local.get $9 + local.get $11 i32.load offset=12 i32.const 3 i32.mul @@ -16474,17 +16540,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $9 + local.get $11 i32.load offset=4 else - local.get $9 + local.get $11 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $5 + local.set $8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -16492,20 +16558,20 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 i64.store local.get $0 - local.get $5 + local.get $8 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $4 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -16513,25 +16579,25 @@ i32.shl i32.const 3 i32.div_s - local.tee $13 + local.tee $6 i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=4 - local.get $9 + local.get $11 i32.load offset=8 local.tee $17 - local.get $9 + local.get $11 i32.load offset=16 i32.const 24 i32.mul i32.add - local.set $12 + local.set $5 local.get $1 local.set $0 - loop $while-continue|00 - local.get $12 + loop $while-continue|02 + local.get $5 local.get $17 i32.ne if @@ -16544,15 +16610,14 @@ local.get $0 local.get $17 i64.load - local.tee $15 + local.tee $13 i64.store local.get $0 local.get $17 i64.load offset=8 i64.store offset=8 local.get $0 - local.get $5 - local.get $15 + local.get $13 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -16562,7 +16627,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $15 + local.get $13 i64.const 32 i64.shr_u i32.wrap_i64 @@ -16573,34 +16638,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u - local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u - local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u - local.get $3 i32.xor + local.get $8 i32.and i32.const 2 i32.shl - local.get $4 + local.get $7 i32.add - local.tee $3 + local.tee $4 i32.load i32.store offset=16 - local.get $3 + local.get $4 local.get $0 i32.store local.get $0 @@ -16612,35 +16678,35 @@ i32.const 24 i32.add local.set $17 - br $while-continue|00 + br $while-continue|02 end end - local.get $9 - local.get $4 + local.get $11 + local.get $7 i32.store - local.get $4 + local.get $7 if - local.get $9 - local.get $4 + local.get $11 + local.get $7 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 - local.get $5 + local.get $11 + local.get $8 i32.store offset=4 - local.get $9 + local.get $11 local.get $1 i32.store offset=8 local.get $1 if - local.get $9 + local.get $11 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 - local.get $13 + local.get $11 + local.get $6 i32.store offset=12 - local.get $9 - local.get $9 + local.get $11 + local.get $11 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -16649,12 +16715,12 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $11 i32.load offset=8 local.tee $1 i32.store - local.get $9 - local.get $9 + local.get $11 + local.get $11 i32.load offset=16 local.tee $0 i32.const 1 @@ -16666,23 +16732,23 @@ local.get $1 i32.add local.tee $1 - local.get $7 + local.get $10 i64.store local.get $1 - local.get $7 + local.get $10 i64.store offset=8 - local.get $9 - local.get $9 + local.get $11 + local.get $11 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $1 - local.get $9 + local.get $11 i32.load - local.get $9 + local.get $11 i32.load offset=4 - local.get $14 + local.get $9 i32.and i32.const 2 i32.shl @@ -16698,8 +16764,8 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $6 + local.get $15 + local.get $14 i32.const 20 i32.sub local.tee $0 @@ -16712,7 +16778,7 @@ br $for-loop|2 end end - local.get $9 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -16724,7 +16790,7 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $15 i32.load offset=20 i32.const 100 i32.ne @@ -16737,14 +16803,14 @@ unreachable end i64.const 0 - local.set $7 + local.set $10 loop $for-loop|3 - local.get $7 + local.get $10 i64.const 50 i64.lt_s if - local.get $11 - local.get $7 + local.get $3 + local.get $10 call $~lib/map/Map#has i32.eqz if @@ -16755,10 +16821,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 + local.get $3 + local.get $10 call $~lib/map/Map#get - local.get $7 + local.get $10 i32.wrap_i64 i32.const 20 i32.add @@ -16771,11 +16837,11 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 + local.get $3 + local.get $10 call $~lib/map/Map#delete - local.get $11 - local.get $7 + local.get $3 + local.get $10 call $~lib/map/Map#has if i32.const 0 @@ -16785,14 +16851,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $10 i64.const 1 i64.add - local.set $7 + local.set $10 br $for-loop|3 end end - local.get $11 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -16805,14 +16871,14 @@ unreachable end i64.const 0 - local.set $7 + local.set $10 loop $for-loop|4 - local.get $7 + local.get $10 i64.const 50 i64.lt_s if - local.get $11 - local.get $7 + local.get $3 + local.get $10 call $~lib/map/Map#has if i32.const 0 @@ -16822,15 +16888,15 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 - local.get $7 + local.get $3 + local.get $10 + local.get $10 i32.wrap_i64 i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 - local.get $7 + local.get $3 + local.get $10 call $~lib/map/Map#has i32.eqz if @@ -16841,11 +16907,11 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 + local.get $3 + local.get $10 call $~lib/map/Map#delete - local.get $11 - local.get $7 + local.get $3 + local.get $10 call $~lib/map/Map#has if i32.const 0 @@ -16855,14 +16921,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $10 i64.const 1 i64.add - local.set $7 + local.set $10 br $for-loop|4 end end - local.get $11 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -16874,9 +16940,9 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $3 call $~lib/map/Map#clear - local.get $11 + local.get $3 i32.load offset=20 if i32.const 0 @@ -16901,60 +16967,61 @@ ) (func $~lib/map/Map#has (param $0 i32) (param $1 i64) (result i32) (local $2 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.const 374761401 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - local.get $0 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - local.get $0 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - local.get $0 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $0 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.const 374761401 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $0 + i32.const 15 + i32.shr_u + local.get $0 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $0 + i32.const 13 + i32.shr_u + local.get $0 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $0 + i32.const 16 + i32.shr_u + local.get $0 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $0 loop $while-continue|0 local.get $0 if + local.get $0 local.get $0 i32.load offset=12 local.tee $2 @@ -16969,6 +17036,7 @@ i64.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $2 i32.const -2 i32.and @@ -16977,9 +17045,7 @@ end end i32.const 0 - local.set $0 end - local.get $0 i32.const 0 i32.ne ) @@ -17019,7 +17085,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -17027,7 +17093,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -17035,37 +17101,36 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $8 + local.tee $5 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $4 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 - local.get $4 + local.get $5 local.get $8 i32.ne if - local.get $8 + local.get $5 i32.load offset=12 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $8 + local.get $5 i64.load local.tee $6 i64.store local.get $2 - local.get $8 + local.get $5 i32.load offset=8 i32.store offset=8 local.get $2 - local.get $1 local.get $6 i32.wrap_i64 i32.const -1028477379 @@ -17088,28 +17153,29 @@ i32.const 668265263 i32.mul local.tee $9 - local.get $9 i32.const 15 i32.shr_u + local.get $9 i32.xor i32.const -2048144777 i32.mul local.tee $9 - local.get $9 i32.const 13 i32.shr_u + local.get $9 i32.xor i32.const -1028477379 i32.mul local.tee $9 - local.get $9 i32.const 16 i32.shr_u + local.get $9 i32.xor + local.get $1 i32.and i32.const 2 i32.shl - local.get $7 + local.get $4 i32.add local.tee $9 i32.load @@ -17122,20 +17188,20 @@ i32.add local.set $2 end - local.get $8 + local.get $5 i32.const 16 i32.add - local.set $8 + local.set $5 br $while-continue|0 end end local.get $0 - local.get $7 + local.get $4 i32.store - local.get $7 + local.get $4 if local.get $0 - local.get $7 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -17151,73 +17217,74 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 i32.load offset=20 i32.store offset=16 - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - ) - (func $~lib/map/Map#get (param $0 i32) (param $1 i64) (result i32) - (local $2 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.const 374761401 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - local.get $0 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - local.get $0 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - local.get $0 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl + global.get $~lib/memory/__stack_pointer + i32.const 8 i32.add - i32.load - local.set $0 - block $__inlined_func$~lib/map/Map#find + global.set $~lib/memory/__stack_pointer + ) + (func $~lib/map/Map#get (param $0 i32) (param $1 i64) (result i32) + (local $2 i32) + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.const 374761401 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $0 + i32.const 15 + i32.shr_u + local.get $0 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $0 + i32.const 13 + i32.shr_u + local.get $0 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $0 + i32.const 16 + i32.shr_u + local.get $0 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $0 loop $while-continue|0 local.get $0 if + local.get $0 local.get $0 i32.load offset=12 local.tee $2 @@ -17232,6 +17299,7 @@ i64.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $2 i32.const -2 i32.and @@ -17240,9 +17308,8 @@ end end i32.const 0 - local.set $0 end - local.get $0 + local.tee $0 i32.eqz if i32.const 1616 @@ -17258,60 +17325,61 @@ (func $~lib/map/Map#delete (param $0 i32) (param $1 i64) (local $2 i32) (local $3 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.const 374761401 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - local.get $2 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - local.get $2 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - local.get $2 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.const 374761401 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|0 local.get $2 if + local.get $2 local.get $2 i32.load offset=12 local.tee $3 @@ -17326,6 +17394,7 @@ i64.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $3 i32.const -2 i32.and @@ -17334,9 +17403,8 @@ end end i32.const 0 - local.set $2 end - local.get $2 + local.tee $2 i32.eqz if return @@ -17396,44 +17464,44 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i64) + (local $7 i32) (local $8 i32) (local $9 i32) - (local $10 i32) + (local $10 i64) (local $11 i32) (local $12 i32) - (local $13 i32) + (local $13 i64) (local $14 i32) - (local $15 i64) + (local $15 i32) (local $16 i32) (local $17 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 i64.const 0 i64.store offset=8 - local.get $2 + local.get $3 i32.const 0 i32.store offset=16 - local.get $2 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $1 i32.const 0 @@ -17442,56 +17510,56 @@ i32.const 24 i32.const 23 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $1 i32.store - local.get $11 + local.get $1 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if - local.get $11 local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $1 i32.const 3 i32.store offset=4 - local.get $11 + local.get $1 i32.const 64 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=8 - local.get $1 + local.get $2 if - local.get $11 local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $1 i32.const 4 i32.store offset=12 - local.get $11 + local.get $1 i32.const 0 i32.store offset=16 - local.get $11 + local.get $1 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 - local.get $11 + local.get $3 + local.get $1 i32.store loop $for-loop|0 - local.get $7 + local.get $10 i64.const 100 i64.lt_u if - local.get $11 - local.get $7 + local.get $1 + local.get $10 call $~lib/map/Map#has if i32.const 0 @@ -17501,15 +17569,15 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 - local.get $7 + local.get $1 + local.get $10 + local.get $10 i32.wrap_i64 i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 - local.get $7 + local.get $1 + local.get $10 call $~lib/map/Map#has i32.eqz if @@ -17520,10 +17588,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 + local.get $1 + local.get $10 call $~lib/map/Map#get - local.get $7 + local.get $10 i32.wrap_i64 i32.const 10 i32.add @@ -17536,14 +17604,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $10 i64.const 1 i64.add - local.set $7 + local.set $10 br $for-loop|0 end end - local.get $11 + local.get $1 i32.load offset=20 i32.const 100 i32.ne @@ -17556,14 +17624,14 @@ unreachable end i64.const 0 - local.set $7 + local.set $10 loop $for-loop|1 - local.get $7 + local.get $10 i64.const 100 i64.lt_u if - local.get $11 - local.get $7 + local.get $1 + local.get $10 call $~lib/map/Map#has i32.eqz if @@ -17574,10 +17642,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 + local.get $1 + local.get $10 call $~lib/map/Map#get - local.get $7 + local.get $10 i32.wrap_i64 i32.const 10 i32.add @@ -17590,15 +17658,15 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 - local.get $7 + local.get $1 + local.get $10 + local.get $10 i32.wrap_i64 i32.const 20 i32.add call $~lib/map/Map#set - local.get $11 - local.get $7 + local.get $1 + local.get $10 call $~lib/map/Map#has i32.eqz if @@ -17609,10 +17677,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 + local.get $1 + local.get $10 call $~lib/map/Map#get - local.get $7 + local.get $10 i32.wrap_i64 i32.const 20 i32.add @@ -17625,14 +17693,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $10 i64.const 1 i64.add - local.set $7 + local.set $10 br $for-loop|1 end end - local.get $11 + local.get $1 i32.load offset=20 i32.const 100 i32.ne @@ -17645,26 +17713,27 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $8 i32.const 0 i32.store - local.get $11 + local.get $1 + local.tee $3 i32.load offset=8 - local.set $6 - local.get $11 + local.set $7 + local.get $1 i32.load offset=16 - local.tee $5 - local.set $4 + local.tee $6 + local.set $5 local.get $8 i32.const 8 i32.sub @@ -17672,7 +17741,7 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $1 i64.const 0 @@ -17695,7 +17764,7 @@ local.get $2 i32.const 0 i32.store offset=12 - local.get $4 + local.get $5 i32.const 134217727 i32.gt_u if @@ -17707,21 +17776,21 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 8 - local.get $4 + local.get $5 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $3 + local.tee $4 i32.const 0 call $~lib/rt/itcms/__new local.tee $1 i32.store offset=4 local.get $1 - local.get $3 + local.get $4 call $~lib/memory/memory.fill local.get $2 local.get $1 @@ -17736,10 +17805,10 @@ local.get $1 i32.store offset=4 local.get $2 - local.get $3 + local.get $4 i32.store offset=8 local.get $2 - local.get $4 + local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 @@ -17749,14 +17818,14 @@ local.get $2 i32.store loop $for-loop|01 - local.get $5 - local.get $10 + local.get $6 + local.get $11 i32.gt_s if - local.get $10 + local.get $11 i32.const 4 i32.shl - local.get $6 + local.get $7 i32.add local.tee $1 i32.load offset=12 @@ -17774,10 +17843,10 @@ i32.add local.set $0 end - local.get $10 + local.get $11 i32.const 1 i32.add - local.set $10 + local.set $11 br $for-loop|01 end end @@ -17796,9 +17865,9 @@ local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $3 call $~lib/map/Map#values - local.tee $10 + local.tee $12 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -17808,7 +17877,7 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -17817,51 +17886,51 @@ i32.const 24 i32.const 25 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $11 i32.store - local.get $9 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store local.get $0 if - local.get $9 + local.get $11 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 + local.get $11 i32.const 3 i32.store offset=4 - local.get $9 + local.get $11 i32.const 96 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $0 i32.store offset=8 local.get $0 if - local.get $9 + local.get $11 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 + local.get $11 i32.const 4 i32.store offset=12 - local.get $9 + local.get $11 i32.const 0 i32.store offset=16 - local.get $9 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 + local.get $11 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $8 + local.tee $15 i32.store offset=16 loop $for-loop|2 local.get $2 @@ -17888,13 +17957,13 @@ i32.shl i32.add i64.load - local.set $7 - local.get $10 + local.set $10 + local.get $12 local.get $16 call $~lib/array/Array#__get - local.set $6 - local.get $11 - local.get $7 + local.set $14 + local.get $3 + local.get $10 call $~lib/map/Map#has i32.eqz if @@ -17905,8 +17974,8 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $6 + local.get $3 + local.get $14 i32.const 20 i32.sub i64.extend_i32_s @@ -17927,13 +17996,13 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $9 + local.get $11 i32.load - local.get $7 + local.get $10 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -17943,7 +18012,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $7 + local.get $10 i64.const 32 i64.shr_u i32.wrap_i64 @@ -17955,26 +18024,26 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor - local.tee $14 - local.get $9 + local.tee $9 + local.get $11 i32.load offset=4 i32.and i32.const 2 @@ -17994,7 +18063,7 @@ if (result i32) i32.const 0 else - local.get $7 + local.get $10 local.get $0 i64.load i64.eq @@ -18013,18 +18082,18 @@ local.get $0 if local.get $0 - local.get $7 + local.get $10 i64.store offset=8 else - local.get $9 + local.get $11 i32.load offset=16 - local.get $9 + local.get $11 i32.load offset=12 i32.eq if - local.get $9 + local.get $11 i32.load offset=20 - local.get $9 + local.get $11 i32.load offset=12 i32.const 3 i32.mul @@ -18032,17 +18101,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $9 + local.get $11 i32.load offset=4 else - local.get $9 + local.get $11 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $5 + local.set $8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -18050,20 +18119,20 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 i64.store local.get $0 - local.get $5 + local.get $8 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $4 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -18071,25 +18140,25 @@ i32.shl i32.const 3 i32.div_s - local.tee $13 + local.tee $6 i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $1 i32.store offset=4 - local.get $9 + local.get $11 i32.load offset=8 local.tee $17 - local.get $9 + local.get $11 i32.load offset=16 i32.const 24 i32.mul i32.add - local.set $12 + local.set $5 local.get $1 local.set $0 - loop $while-continue|00 - local.get $12 + loop $while-continue|02 + local.get $5 local.get $17 i32.ne if @@ -18102,15 +18171,14 @@ local.get $0 local.get $17 i64.load - local.tee $15 + local.tee $13 i64.store local.get $0 local.get $17 i64.load offset=8 i64.store offset=8 local.get $0 - local.get $5 - local.get $15 + local.get $13 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -18120,7 +18188,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $15 + local.get $13 i64.const 32 i64.shr_u i32.wrap_i64 @@ -18131,34 +18199,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $4 + local.get $4 i32.const 15 i32.shr_u - local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $4 + local.get $4 i32.const 13 i32.shr_u - local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $4 + local.get $4 i32.const 16 i32.shr_u - local.get $3 i32.xor + local.get $8 i32.and i32.const 2 i32.shl - local.get $4 + local.get $7 i32.add - local.tee $3 + local.tee $4 i32.load i32.store offset=16 - local.get $3 + local.get $4 local.get $0 i32.store local.get $0 @@ -18170,35 +18239,35 @@ i32.const 24 i32.add local.set $17 - br $while-continue|00 + br $while-continue|02 end end - local.get $9 - local.get $4 + local.get $11 + local.get $7 i32.store - local.get $4 + local.get $7 if - local.get $9 - local.get $4 + local.get $11 + local.get $7 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 - local.get $5 + local.get $11 + local.get $8 i32.store offset=4 - local.get $9 + local.get $11 local.get $1 i32.store offset=8 local.get $1 if - local.get $9 + local.get $11 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 - local.get $13 + local.get $11 + local.get $6 i32.store offset=12 - local.get $9 - local.get $9 + local.get $11 + local.get $11 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -18207,12 +18276,12 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $11 i32.load offset=8 local.tee $1 i32.store - local.get $9 - local.get $9 + local.get $11 + local.get $11 i32.load offset=16 local.tee $0 i32.const 1 @@ -18224,23 +18293,23 @@ local.get $1 i32.add local.tee $1 - local.get $7 + local.get $10 i64.store local.get $1 - local.get $7 + local.get $10 i64.store offset=8 - local.get $9 - local.get $9 + local.get $11 + local.get $11 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $1 - local.get $9 + local.get $11 i32.load - local.get $9 + local.get $11 i32.load offset=4 - local.get $14 + local.get $9 i32.and i32.const 2 i32.shl @@ -18256,8 +18325,8 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $6 + local.get $15 + local.get $14 i32.const 20 i32.sub local.tee $0 @@ -18270,7 +18339,7 @@ br $for-loop|2 end end - local.get $9 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -18282,7 +18351,7 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $15 i32.load offset=20 i32.const 100 i32.ne @@ -18295,14 +18364,14 @@ unreachable end i64.const 0 - local.set $7 + local.set $10 loop $for-loop|3 - local.get $7 + local.get $10 i64.const 50 i64.lt_u if - local.get $11 - local.get $7 + local.get $3 + local.get $10 call $~lib/map/Map#has i32.eqz if @@ -18313,10 +18382,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 + local.get $3 + local.get $10 call $~lib/map/Map#get - local.get $7 + local.get $10 i32.wrap_i64 i32.const 20 i32.add @@ -18329,11 +18398,11 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 + local.get $3 + local.get $10 call $~lib/map/Map#delete - local.get $11 - local.get $7 + local.get $3 + local.get $10 call $~lib/map/Map#has if i32.const 0 @@ -18343,14 +18412,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $10 i64.const 1 i64.add - local.set $7 + local.set $10 br $for-loop|3 end end - local.get $11 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -18363,14 +18432,14 @@ unreachable end i64.const 0 - local.set $7 + local.set $10 loop $for-loop|4 - local.get $7 + local.get $10 i64.const 50 i64.lt_u if - local.get $11 - local.get $7 + local.get $3 + local.get $10 call $~lib/map/Map#has if i32.const 0 @@ -18380,15 +18449,15 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 - local.get $7 + local.get $3 + local.get $10 + local.get $10 i32.wrap_i64 i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 - local.get $7 + local.get $3 + local.get $10 call $~lib/map/Map#has i32.eqz if @@ -18399,11 +18468,11 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $7 + local.get $3 + local.get $10 call $~lib/map/Map#delete - local.get $11 - local.get $7 + local.get $3 + local.get $10 call $~lib/map/Map#has if i32.const 0 @@ -18413,14 +18482,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $10 i64.const 1 i64.add - local.set $7 + local.set $10 br $for-loop|4 end end - local.get $11 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -18432,9 +18501,9 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $3 call $~lib/map/Map#clear - local.get $11 + local.get $3 i32.load offset=20 if i32.const 0 @@ -18460,11 +18529,11 @@ (func $~lib/map/Map#rehash (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 f32) + (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 f32) (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -18493,7 +18562,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -18509,37 +18578,37 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $8 + local.tee $5 local.get $0 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $5 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 local.get $5 - local.get $8 + local.get $7 i32.ne if - local.get $8 + local.get $5 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $8 + local.get $5 f32.load - local.tee $4 + local.tee $8 f32.store local.get $2 - local.get $8 + local.get $5 i32.load offset=4 i32.store offset=4 local.get $2 - local.get $4 + local.get $8 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -18550,29 +18619,29 @@ i32.const 668265263 i32.mul local.tee $9 - local.get $9 i32.const 15 i32.shr_u + local.get $9 i32.xor i32.const -2048144777 i32.mul local.tee $9 - local.get $9 i32.const 13 i32.shr_u + local.get $9 i32.xor i32.const -1028477379 i32.mul local.tee $9 - local.get $9 i32.const 16 i32.shr_u + local.get $9 i32.xor local.get $1 i32.and i32.const 2 i32.shl - local.get $7 + local.get $4 i32.add local.tee $9 i32.load @@ -18585,20 +18654,20 @@ i32.add local.set $2 end - local.get $8 + local.get $5 i32.const 12 i32.add - local.set $8 + local.set $5 br $while-continue|0 end end local.get $0 - local.get $7 + local.get $4 i32.store - local.get $7 + local.get $4 if local.get $0 - local.get $7 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -18627,49 +18696,50 @@ ) (func $~lib/map/Map#get (param $0 i32) (param $1 f32) (result i32) (local $2 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i32.reinterpret_f32 - i32.const -1028477379 - i32.mul - i32.const 374761397 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - local.get $0 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - local.get $0 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - local.get $0 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $0 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i32.reinterpret_f32 + i32.const -1028477379 + i32.mul + i32.const 374761397 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $0 + i32.const 15 + i32.shr_u + local.get $0 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $0 + i32.const 13 + i32.shr_u + local.get $0 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $0 + i32.const 16 + i32.shr_u + local.get $0 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $0 loop $while-continue|0 local.get $0 if + local.get $0 local.get $0 i32.load offset=8 local.tee $2 @@ -18684,6 +18754,7 @@ f32.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $2 i32.const -2 i32.and @@ -18692,9 +18763,8 @@ end end i32.const 0 - local.set $0 end - local.get $0 + local.tee $0 i32.eqz if i32.const 1616 @@ -18710,49 +18780,50 @@ (func $~lib/map/Map#delete (param $0 i32) (param $1 f32) (local $2 i32) (local $3 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i32.reinterpret_f32 - i32.const -1028477379 - i32.mul - i32.const 374761397 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - local.get $2 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - local.get $2 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - local.get $2 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i32.reinterpret_f32 + i32.const -1028477379 + i32.mul + i32.const 374761397 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|0 local.get $2 if + local.get $2 local.get $2 i32.load offset=8 local.tee $3 @@ -18767,6 +18838,7 @@ f32.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $3 i32.const -2 i32.and @@ -18775,9 +18847,8 @@ end end i32.const 0 - local.set $2 end - local.get $2 + local.tee $2 i32.eqz if return @@ -18834,17 +18905,17 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) + (local $4 f32) (local $5 i32) - (local $6 f32) + (local $6 i32) (local $7 i32) (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) - (local $14 f32) + (local $13 f32) + (local $14 i32) (local $15 i32) (local $16 i32) (local $17 i32) @@ -18852,90 +18923,90 @@ i32.const 20 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i64.const 0 i64.store offset=8 - local.get $1 + local.get $2 i32.const 0 i32.store offset=16 - local.get $1 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.const 26 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $1 i32.store - local.get $9 + local.get $1 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 if - local.get $9 - local.get $2 + local.get $1 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 + local.get $1 i32.const 3 i32.store offset=4 - local.get $9 + local.get $1 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $3 i32.store offset=8 - local.get $2 + local.get $3 if - local.get $9 - local.get $2 + local.get $1 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $9 + local.get $1 i32.const 4 i32.store offset=12 - local.get $9 + local.get $1 i32.const 0 i32.store offset=16 - local.get $9 + local.get $1 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $1 - local.get $9 i32.store loop $for-loop|0 - local.get $6 + local.get $4 f32.const 100 f32.lt if - local.get $9 + local.get $1 i32.load - local.get $9 + local.get $1 i32.load offset=4 - local.get $6 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -18945,60 +19016,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 + local.get $2 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 + local.get $2 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 + local.get $2 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=8 - local.tee $2 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 - local.get $1 + local.get $4 + local.get $2 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $2 + local.get $3 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|0 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 if i32.const 0 i32.const 1568 @@ -19007,18 +19078,18 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $6 - local.get $6 + local.get $1 + local.get $4 + local.get $4 i32.trunc_f32_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $9 + local.get $1 i32.load - local.get $9 + local.get $1 i32.load offset=4 - local.get $6 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19028,60 +19099,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 + local.get $2 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 + local.get $2 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 + local.get $2 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=8 - local.tee $2 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 - local.get $1 + local.get $4 + local.get $2 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $2 + local.get $3 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|02 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -19091,10 +19162,10 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $6 + local.get $1 + local.get $4 call $~lib/map/Map#get - local.get $6 + local.get $4 i32.trunc_f32_s i32.const 10 i32.add @@ -19107,14 +19178,14 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $4 f32.const 1 f32.add - local.set $6 + local.set $4 br $for-loop|0 end end - local.get $9 + local.get $1 i32.load offset=20 i32.const 100 i32.ne @@ -19127,17 +19198,17 @@ unreachable end f32.const 0 - local.set $6 + local.set $4 loop $for-loop|1 - local.get $6 + local.get $4 f32.const 100 f32.lt if - local.get $9 + local.get $1 i32.load - local.get $9 + local.get $1 i32.load offset=4 - local.get $6 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19147,60 +19218,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 + local.get $2 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 + local.get $2 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 + local.get $2 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=8 - local.tee $2 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 - local.get $1 + local.get $4 + local.get $2 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $2 + local.get $3 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|05 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -19210,10 +19281,10 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $6 + local.get $1 + local.get $4 call $~lib/map/Map#get - local.get $6 + local.get $4 i32.trunc_f32_s i32.const 10 i32.add @@ -19226,18 +19297,18 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $6 - local.get $6 + local.get $1 + local.get $4 + local.get $4 i32.trunc_f32_s i32.const 20 i32.add call $~lib/map/Map#set - local.get $9 + local.get $1 i32.load - local.get $9 + local.get $1 i32.load offset=4 - local.get $6 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19247,60 +19318,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 + local.tee $2 + local.get $2 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $1 + local.tee $2 + local.get $2 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $1 + local.tee $2 + local.get $2 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $2 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=8 - local.tee $2 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 - local.get $1 + local.get $4 + local.get $2 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $2 + local.get $3 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|08 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -19310,10 +19381,10 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $6 + local.get $1 + local.get $4 call $~lib/map/Map#get - local.get $6 + local.get $4 i32.trunc_f32_s i32.const 20 i32.add @@ -19326,14 +19397,14 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $4 f32.const 1 f32.add - local.set $6 + local.set $4 br $for-loop|1 end end - local.get $9 + local.get $1 i32.load offset=20 i32.const 100 i32.ne @@ -19346,54 +19417,54 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 0 i32.store - local.get $9 + local.get $1 i32.load offset=8 - local.set $5 - local.get $9 + local.set $8 + local.get $1 i32.load offset=16 - local.tee $8 + local.tee $9 local.set $10 - local.get $2 + local.get $3 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 16 i32.const 27 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 0 i32.store offset=4 - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 0 i32.store offset=12 local.get $10 @@ -19424,40 +19495,40 @@ local.get $12 local.get $11 call $~lib/memory/memory.fill - local.get $1 + local.get $2 local.get $12 i32.store local.get $12 if - local.get $1 + local.get $2 local.get $12 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $2 local.get $12 i32.store offset=4 - local.get $1 + local.get $2 local.get $11 i32.store offset=8 - local.get $1 + local.get $2 local.get $10 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $3 local.get $2 - local.get $1 i32.store loop $for-loop|01 - local.get $3 - local.get $8 + local.get $5 + local.get $9 i32.lt_s if - local.get $3 + local.get $5 i32.const 12 i32.mul - local.get $5 + local.get $8 i32.add local.tee $10 i32.load offset=8 @@ -19466,19 +19537,19 @@ i32.eqz if local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $10 f32.load - local.set $6 - local.get $1 - i32.load offset=12 + local.set $4 local.get $2 + i32.load offset=12 + local.get $3 i32.le_u if - local.get $2 + local.get $3 i32.const 0 i32.lt_s if @@ -19489,52 +19560,52 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $3 i32.const 1 i32.add local.tee $10 i32.const 2 i32.const 1 call $~lib/array/ensureCapacity - local.get $1 + local.get $2 local.get $10 i32.store offset=12 end - local.get $1 - i32.load offset=4 local.get $2 + i32.load offset=4 + local.get $3 i32.const 2 i32.shl i32.add - local.get $6 + local.get $4 f32.store end - local.get $3 + local.get $5 i32.const 1 i32.add - local.set $3 + local.set $5 br $for-loop|01 end end - local.get $1 + local.get $2 local.get $0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $1 + local.get $2 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $1 call $~lib/map/Map#values - local.tee $10 + local.tee $9 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -19544,70 +19615,70 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 0 i32.store - local.get $2 + local.get $3 i32.const 24 i32.const 28 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $10 i32.store - local.get $11 + local.get $10 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 if - local.get $11 - local.get $2 + local.get $10 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $10 i32.const 3 i32.store offset=4 - local.get $11 + local.get $10 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $3 i32.store offset=8 - local.get $2 + local.get $3 if - local.get $11 - local.get $2 + local.get $10 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $10 i32.const 4 i32.store offset=12 - local.get $11 + local.get $10 i32.const 0 i32.store offset=16 - local.get $11 + local.get $10 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 + local.get $10 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $12 + local.tee $7 i32.store offset=16 loop $for-loop|2 - local.get $1 + local.get $2 i32.load offset=12 - local.get $7 + local.get $6 i32.gt_s if - local.get $1 + local.get $2 i32.load offset=12 - local.get $7 + local.get $6 i32.le_u if i32.const 1248 @@ -19617,23 +19688,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.load offset=4 - local.get $7 + local.get $6 i32.const 2 i32.shl i32.add f32.load - local.set $6 - local.get $10 - local.get $7 - call $~lib/array/Array#__get - local.set $13 + local.set $4 local.get $9 + local.get $6 + call $~lib/array/Array#__get + local.set $8 + local.get $1 i32.load - local.get $9 + local.get $1 i32.load offset=4 - local.get $6 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19644,23 +19715,23 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 @@ -19668,29 +19739,29 @@ i32.add i32.load local.set $0 - block $__inlined_func$~lib/map/Map#find10 - loop $while-continue|011 + block $__inlined_func$~lib/map/Map#find12 + loop $while-continue|013 local.get $0 if local.get $0 i32.load offset=8 - local.tee $2 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 + local.get $4 local.get $0 f32.load f32.eq end - br_if $__inlined_func$~lib/map/Map#find10 - local.get $2 + br_if $__inlined_func$~lib/map/Map#find12 + local.get $3 i32.const -2 i32.and local.set $0 - br $while-continue|011 + br $while-continue|013 end end i32.const 0 @@ -19706,15 +19777,15 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 i32.load - local.get $9 + local.get $1 i32.load offset=4 - local.get $13 + local.get $8 i32.const 20 i32.sub f32.convert_i32_s - local.tee $14 + local.tee $13 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19725,23 +19796,23 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 @@ -19749,29 +19820,29 @@ i32.add i32.load local.set $0 - block $__inlined_func$~lib/map/Map#find13 - loop $while-continue|014 + block $__inlined_func$~lib/map/Map#find15 + loop $while-continue|016 local.get $0 if local.get $0 i32.load offset=8 - local.tee $2 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $14 + local.get $13 local.get $0 f32.load f32.eq end - br_if $__inlined_func$~lib/map/Map#find13 - local.get $2 + br_if $__inlined_func$~lib/map/Map#find15 + local.get $3 i32.const -2 i32.and local.set $0 - br $while-continue|014 + br $while-continue|016 end end i32.const 0 @@ -19794,13 +19865,13 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $11 + local.get $10 i32.load - local.get $6 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19811,26 +19882,26 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor - local.tee $5 - local.get $11 + local.tee $11 + local.get $10 i32.load offset=4 i32.and i32.const 2 @@ -19838,29 +19909,29 @@ i32.add i32.load local.set $0 - block $__inlined_func$~lib/map/Map#find15 - loop $while-continue|016 + block $__inlined_func$~lib/map/Map#find17 + loop $while-continue|018 local.get $0 if local.get $0 i32.load offset=8 - local.tee $2 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 + local.get $4 local.get $0 f32.load f32.eq end - br_if $__inlined_func$~lib/map/Map#find15 - local.get $2 + br_if $__inlined_func$~lib/map/Map#find17 + local.get $3 i32.const -2 i32.and local.set $0 - br $while-continue|016 + br $while-continue|018 end end i32.const 0 @@ -19869,18 +19940,18 @@ local.get $0 if local.get $0 - local.get $6 + local.get $4 f32.store offset=4 else - local.get $11 + local.get $10 i32.load offset=16 - local.get $11 + local.get $10 i32.load offset=12 i32.eq if - local.get $11 + local.get $10 i32.load offset=20 - local.get $11 + local.get $10 i32.load offset=12 i32.const 3 i32.mul @@ -19888,17 +19959,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $11 + local.get $10 i32.load offset=4 else - local.get $11 + local.get $10 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $15 + local.set $12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -19906,20 +19977,20 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 i64.store local.get $0 - local.get $15 + local.get $12 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $16 + local.tee $14 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -19927,45 +19998,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $4 + local.tee $15 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $3 i32.store offset=4 - local.get $11 + local.get $10 i32.load offset=8 - local.tee $8 - local.get $11 + local.tee $5 + local.get $10 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $3 - local.get $2 + local.set $16 + local.get $3 local.set $0 - loop $while-continue|017 - local.get $3 - local.get $8 + loop $while-continue|019 + local.get $5 + local.get $16 i32.ne if - local.get $8 + local.get $5 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $8 + local.get $5 f32.load - local.tee $14 + local.tee $13 f32.store local.get $0 - local.get $8 + local.get $5 f32.load offset=4 f32.store offset=4 local.get $0 - local.get $14 + local.get $13 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19976,29 +20047,29 @@ i32.const 668265263 i32.mul local.tee $17 + local.get $17 i32.const 15 i32.shr_u - local.get $17 i32.xor i32.const -2048144777 i32.mul local.tee $17 + local.get $17 i32.const 13 i32.shr_u - local.get $17 i32.xor i32.const -1028477379 i32.mul local.tee $17 + local.get $17 i32.const 16 i32.shr_u - local.get $17 i32.xor - local.get $15 + local.get $12 i32.and i32.const 2 i32.shl - local.get $16 + local.get $14 i32.add local.tee $17 i32.load @@ -20011,39 +20082,39 @@ i32.add local.set $0 end - local.get $8 + local.get $5 i32.const 12 i32.add - local.set $8 - br $while-continue|017 + local.set $5 + br $while-continue|019 end end - local.get $11 - local.get $16 + local.get $10 + local.get $14 i32.store - local.get $16 + local.get $14 if - local.get $11 - local.get $16 + local.get $10 + local.get $14 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 - local.get $15 + local.get $10 + local.get $12 i32.store offset=4 - local.get $11 - local.get $2 + local.get $10 + local.get $3 i32.store offset=8 - local.get $2 + local.get $3 if - local.get $11 - local.get $2 + local.get $10 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 - local.get $4 + local.get $10 + local.get $15 i32.store offset=12 - local.get $11 - local.get $11 + local.get $10 + local.get $10 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -20052,48 +20123,48 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $10 i32.load offset=8 local.tee $0 i32.store - local.get $11 - local.get $11 + local.get $10 + local.get $10 i32.load offset=16 - local.tee $2 + local.tee $3 i32.const 1 i32.add i32.store offset=16 - local.get $2 + local.get $3 i32.const 12 i32.mul local.get $0 i32.add local.tee $0 - local.get $6 + local.get $4 f32.store local.get $0 - local.get $6 + local.get $4 f32.store offset=4 - local.get $11 - local.get $11 + local.get $10 + local.get $10 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $11 + local.get $10 i32.load - local.get $11 + local.get $10 i32.load offset=4 - local.get $5 + local.get $11 i32.and i32.const 2 i32.shl i32.add - local.tee $2 + local.tee $3 i32.load i32.store offset=8 - local.get $2 + local.get $3 local.get $0 i32.store end @@ -20101,21 +20172,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $12 - local.get $13 + local.get $7 + local.get $8 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $7 + local.get $6 i32.const 1 i32.add - local.set $7 + local.set $6 br $for-loop|2 end end - local.get $11 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -20127,7 +20198,7 @@ call $~lib/builtins/abort unreachable end - local.get $12 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -20140,17 +20211,17 @@ unreachable end f32.const 0 - local.set $6 + local.set $4 loop $for-loop|3 - local.get $6 + local.get $4 f32.const 50 f32.lt if - local.get $9 + local.get $1 i32.load - local.get $9 + local.get $1 i32.load offset=4 - local.get $6 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20161,35 +20232,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 - block $__inlined_func$~lib/map/Map#find19 - loop $while-continue|020 - local.get $1 + local.set $2 + block $__inlined_func$~lib/map/Map#find21 + loop $while-continue|022 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=8 local.tee $0 i32.const 1 @@ -20197,23 +20268,23 @@ if (result i32) i32.const 0 else - local.get $6 - local.get $1 + local.get $4 + local.get $2 f32.load f32.eq end - br_if $__inlined_func$~lib/map/Map#find19 + br_if $__inlined_func$~lib/map/Map#find21 local.get $0 i32.const -2 i32.and - local.set $1 - br $while-continue|020 + local.set $2 + br $while-continue|022 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -20223,10 +20294,10 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $6 + local.get $1 + local.get $4 call $~lib/map/Map#get - local.get $6 + local.get $4 i32.trunc_f32_s i32.const 20 i32.add @@ -20239,14 +20310,14 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $6 + local.get $1 + local.get $4 call $~lib/map/Map#delete - local.get $9 + local.get $1 i32.load - local.get $9 + local.get $1 i32.load offset=4 - local.get $6 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20257,35 +20328,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 - block $__inlined_func$~lib/map/Map#find22 - loop $while-continue|023 - local.get $1 + local.set $2 + block $__inlined_func$~lib/map/Map#find24 + loop $while-continue|025 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=8 local.tee $0 i32.const 1 @@ -20293,23 +20364,23 @@ if (result i32) i32.const 0 else - local.get $6 - local.get $1 + local.get $4 + local.get $2 f32.load f32.eq end - br_if $__inlined_func$~lib/map/Map#find22 + br_if $__inlined_func$~lib/map/Map#find24 local.get $0 i32.const -2 i32.and - local.set $1 - br $while-continue|023 + local.set $2 + br $while-continue|025 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 if i32.const 0 i32.const 1568 @@ -20318,14 +20389,14 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $4 f32.const 1 f32.add - local.set $6 + local.set $4 br $for-loop|3 end end - local.get $9 + local.get $1 i32.load offset=20 i32.const 50 i32.ne @@ -20338,17 +20409,17 @@ unreachable end f32.const 0 - local.set $6 + local.set $4 loop $for-loop|4 - local.get $6 + local.get $4 f32.const 50 f32.lt if - local.get $9 + local.get $1 i32.load - local.get $9 + local.get $1 i32.load offset=4 - local.get $6 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20359,35 +20430,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 - block $__inlined_func$~lib/map/Map#find25 - loop $while-continue|026 - local.get $1 + local.set $2 + block $__inlined_func$~lib/map/Map#find27 + loop $while-continue|028 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=8 local.tee $0 i32.const 1 @@ -20395,23 +20466,23 @@ if (result i32) i32.const 0 else - local.get $6 - local.get $1 + local.get $4 + local.get $2 f32.load f32.eq end - br_if $__inlined_func$~lib/map/Map#find25 + br_if $__inlined_func$~lib/map/Map#find27 local.get $0 i32.const -2 i32.and - local.set $1 - br $while-continue|026 + local.set $2 + br $while-continue|028 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 if i32.const 0 i32.const 1568 @@ -20420,18 +20491,18 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $6 - local.get $6 + local.get $1 + local.get $4 + local.get $4 i32.trunc_f32_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $9 + local.get $1 i32.load - local.get $9 + local.get $1 i32.load offset=4 - local.get $6 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20442,35 +20513,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 - block $__inlined_func$~lib/map/Map#find28 - loop $while-continue|029 - local.get $1 + local.set $2 + block $__inlined_func$~lib/map/Map#find30 + loop $while-continue|031 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=8 local.tee $0 i32.const 1 @@ -20478,23 +20549,23 @@ if (result i32) i32.const 0 else - local.get $6 - local.get $1 + local.get $4 + local.get $2 f32.load f32.eq end - br_if $__inlined_func$~lib/map/Map#find28 + br_if $__inlined_func$~lib/map/Map#find30 local.get $0 i32.const -2 i32.and - local.set $1 - br $while-continue|029 + local.set $2 + br $while-continue|031 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 i32.eqz if i32.const 0 @@ -20504,14 +20575,14 @@ call $~lib/builtins/abort unreachable end - local.get $9 - local.get $6 + local.get $1 + local.get $4 call $~lib/map/Map#delete - local.get $9 + local.get $1 i32.load - local.get $9 + local.get $1 i32.load offset=4 - local.get $6 + local.get $4 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20522,35 +20593,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 - block $__inlined_func$~lib/map/Map#find31 - loop $while-continue|032 - local.get $1 + local.set $2 + block $__inlined_func$~lib/map/Map#find33 + loop $while-continue|034 + local.get $2 if - local.get $1 + local.get $2 i32.load offset=8 local.tee $0 i32.const 1 @@ -20558,23 +20629,23 @@ if (result i32) i32.const 0 else - local.get $6 - local.get $1 + local.get $4 + local.get $2 f32.load f32.eq end - br_if $__inlined_func$~lib/map/Map#find31 + br_if $__inlined_func$~lib/map/Map#find33 local.get $0 i32.const -2 i32.and - local.set $1 - br $while-continue|032 + local.set $2 + br $while-continue|034 end end i32.const 0 - local.set $1 + local.set $2 end - local.get $1 + local.get $2 if i32.const 0 i32.const 1568 @@ -20583,14 +20654,14 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $4 f32.const 1 f32.add - local.set $6 + local.set $4 br $for-loop|4 end end - local.get $9 + local.get $1 i32.load offset=20 i32.const 50 i32.ne @@ -20602,9 +20673,9 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $1 call $~lib/map/Map#clear - local.get $9 + local.get $1 i32.load offset=20 if i32.const 0 @@ -20630,62 +20701,63 @@ (func $~lib/map/Map#has (param $0 i32) (param $1 f64) (result i32) (local $2 i64) (local $3 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i64.reinterpret_f64 - local.tee $2 - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.const 374761401 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.get $2 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - local.get $0 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - local.get $0 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - local.get $0 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $0 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i64.reinterpret_f64 + local.tee $2 + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.const 374761401 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.get $2 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $0 + i32.const 15 + i32.shr_u + local.get $0 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $0 + i32.const 13 + i32.shr_u + local.get $0 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $0 + i32.const 16 + i32.shr_u + local.get $0 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $0 loop $while-continue|0 local.get $0 if + local.get $0 local.get $0 i32.load offset=12 local.tee $3 @@ -20700,6 +20772,7 @@ f64.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $3 i32.const -2 i32.and @@ -20708,21 +20781,19 @@ end end i32.const 0 - local.set $0 end - local.get $0 i32.const 0 i32.ne ) (func $~lib/map/Map#rehash (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 i64) - (local $5 f64) + (local $4 i32) + (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) - (local $9 i32) + (local $8 f64) + (local $9 i64) (local $10 i32) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -20751,7 +20822,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $8 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -20759,7 +20830,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -20767,40 +20838,39 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $9 + local.tee $5 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $6 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 - local.get $6 - local.get $9 + local.get $5 + local.get $7 i32.ne if - local.get $9 + local.get $5 i32.load offset=12 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $9 + local.get $5 f64.load - local.tee $5 + local.tee $8 f64.store local.get $2 - local.get $9 + local.get $5 i32.load offset=8 i32.store offset=8 local.get $2 - local.get $1 - local.get $5 + local.get $8 i64.reinterpret_f64 - local.tee $4 + local.tee $9 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -20810,7 +20880,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $4 + local.get $9 i64.const 32 i64.shr_u i32.wrap_i64 @@ -20822,28 +20892,29 @@ i32.const 668265263 i32.mul local.tee $10 - local.get $10 i32.const 15 i32.shr_u + local.get $10 i32.xor i32.const -2048144777 i32.mul local.tee $10 - local.get $10 i32.const 13 i32.shr_u + local.get $10 i32.xor i32.const -1028477379 i32.mul local.tee $10 - local.get $10 i32.const 16 i32.shr_u + local.get $10 i32.xor + local.get $1 i32.and i32.const 2 i32.shl - local.get $8 + local.get $4 i32.add local.tee $10 i32.load @@ -20856,20 +20927,20 @@ i32.add local.set $2 end - local.get $9 + local.get $5 i32.const 16 i32.add - local.set $9 + local.set $5 br $while-continue|0 end end local.get $0 - local.get $8 + local.get $4 i32.store - local.get $8 + local.get $4 if local.get $0 - local.get $8 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -20885,7 +20956,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -20899,62 +20970,63 @@ (func $~lib/map/Map#get (param $0 i32) (param $1 f64) (result i32) (local $2 i64) (local $3 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i64.reinterpret_f64 - local.tee $2 - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.const 374761401 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.get $2 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - local.get $0 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - local.get $0 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - local.get $0 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $0 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i64.reinterpret_f64 + local.tee $2 + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.const 374761401 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.get $2 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $0 + i32.const 15 + i32.shr_u + local.get $0 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $0 + i32.const 13 + i32.shr_u + local.get $0 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $0 + i32.const 16 + i32.shr_u + local.get $0 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $0 loop $while-continue|0 local.get $0 if + local.get $0 local.get $0 i32.load offset=12 local.tee $3 @@ -20969,6 +21041,7 @@ f64.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $3 i32.const -2 i32.and @@ -20977,9 +21050,8 @@ end end i32.const 0 - local.set $0 end - local.get $0 + local.tee $0 i32.eqz if i32.const 1616 @@ -20996,62 +21068,63 @@ (local $2 i32) (local $3 i64) (local $4 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i64.reinterpret_f64 - local.tee $3 - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.const 374761401 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.get $3 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - local.get $2 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - local.get $2 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - local.get $2 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i64.reinterpret_f64 + local.tee $3 + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.const 374761401 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.get $3 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|0 local.get $2 if + local.get $2 local.get $2 i32.load offset=12 local.tee $4 @@ -21066,6 +21139,7 @@ f64.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $4 i32.const -2 i32.and @@ -21074,9 +21148,8 @@ end end i32.const 0 - local.set $2 end - local.get $2 + local.tee $2 i32.eqz if return @@ -21132,8 +21205,8 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 f64) - (local $4 i32) + (local $3 i32) + (local $4 f64) (local $5 i32) (local $6 i32) (local $7 i64) @@ -21152,87 +21225,87 @@ i32.const 20 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i64.const 0 i64.store offset=8 - local.get $1 + local.get $2 i32.const 0 i32.store offset=16 - local.get $1 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 24 i32.const 29 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $1 i32.store - local.get $10 + local.get $1 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 if - local.get $10 - local.get $2 + local.get $1 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $1 i32.const 3 i32.store offset=4 - local.get $10 + local.get $1 i32.const 64 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $3 i32.store offset=8 - local.get $2 + local.get $3 if - local.get $10 - local.get $2 + local.get $1 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $1 i32.const 4 i32.store offset=12 - local.get $10 + local.get $1 i32.const 0 i32.store offset=16 - local.get $10 + local.get $1 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 local.get $1 - local.get $10 i32.store loop $for-loop|0 - local.get $3 + local.get $4 f64.const 100 f64.lt if - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/map/Map#has if i32.const 0 @@ -21242,15 +21315,15 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $3 - local.get $3 + local.get $1 + local.get $4 + local.get $4 i32.trunc_f64_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/map/Map#has i32.eqz if @@ -21261,10 +21334,10 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/map/Map#get - local.get $3 + local.get $4 i32.trunc_f64_s i32.const 10 i32.add @@ -21277,14 +21350,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 f64.const 1 f64.add - local.set $3 + local.set $4 br $for-loop|0 end end - local.get $10 + local.get $1 i32.load offset=20 i32.const 100 i32.ne @@ -21297,14 +21370,14 @@ unreachable end f64.const 0 - local.set $3 + local.set $4 loop $for-loop|1 - local.get $3 + local.get $4 f64.const 100 f64.lt if - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/map/Map#has i32.eqz if @@ -21315,10 +21388,10 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/map/Map#get - local.get $3 + local.get $4 i32.trunc_f64_s i32.const 10 i32.add @@ -21331,15 +21404,15 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $3 - local.get $3 + local.get $1 + local.get $4 + local.get $4 i32.trunc_f64_s i32.const 20 i32.add call $~lib/map/Map#set - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/map/Map#has i32.eqz if @@ -21350,10 +21423,10 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/map/Map#get - local.get $3 + local.get $4 i32.trunc_f64_s i32.const 20 i32.add @@ -21366,14 +21439,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 f64.const 1 f64.add - local.set $3 + local.set $4 br $for-loop|1 end end - local.get $10 + local.get $1 i32.load offset=20 i32.const 100 i32.ne @@ -21386,54 +21459,54 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 0 i32.store - local.get $10 + local.get $1 i32.load offset=8 - local.set $6 - local.get $10 + local.set $9 + local.get $1 i32.load offset=16 - local.tee $9 + local.tee $10 local.set $11 - local.get $2 + local.get $3 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 16 i32.const 30 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 0 i32.store offset=4 - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 0 i32.store offset=12 local.get $11 @@ -21464,40 +21537,40 @@ local.get $13 local.get $12 call $~lib/memory/memory.fill - local.get $1 + local.get $2 local.get $13 i32.store local.get $13 if - local.get $1 + local.get $2 local.get $13 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $2 local.get $13 i32.store offset=4 - local.get $1 + local.get $2 local.get $12 i32.store offset=8 - local.get $1 + local.get $2 local.get $11 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $3 local.get $2 - local.get $1 i32.store loop $for-loop|01 - local.get $4 - local.get $9 + local.get $5 + local.get $10 i32.lt_s if - local.get $4 + local.get $5 i32.const 4 i32.shl - local.get $6 + local.get $9 i32.add local.tee $11 i32.load offset=12 @@ -21506,19 +21579,19 @@ i32.eqz if local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $0 local.get $11 f64.load - local.set $3 - local.get $1 - i32.load offset=12 + local.set $4 local.get $2 + i32.load offset=12 + local.get $3 i32.le_u if - local.get $2 + local.get $3 i32.const 0 i32.lt_s if @@ -21529,52 +21602,52 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $3 i32.const 1 i32.add local.tee $11 i32.const 3 i32.const 1 call $~lib/array/ensureCapacity - local.get $1 + local.get $2 local.get $11 i32.store offset=12 end - local.get $1 - i32.load offset=4 local.get $2 + i32.load offset=4 + local.get $3 i32.const 3 i32.shl i32.add - local.get $3 + local.get $4 f64.store end - local.get $4 + local.get $5 i32.const 1 i32.add - local.set $4 + local.set $5 br $for-loop|01 end end - local.get $1 + local.get $2 local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $1 + local.get $2 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $1 call $~lib/map/Map#values - local.tee $11 + local.tee $10 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -21584,70 +21657,70 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i32.const 0 i32.store - local.get $2 + local.get $3 i32.const 24 i32.const 31 call $~lib/rt/itcms/__new - local.tee $12 + local.tee $11 i32.store - local.get $12 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 if - local.get $12 - local.get $2 + local.get $11 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $12 + local.get $11 i32.const 3 i32.store offset=4 - local.get $12 + local.get $11 i32.const 96 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $3 i32.store offset=8 - local.get $2 + local.get $3 if - local.get $12 - local.get $2 + local.get $11 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $12 + local.get $11 i32.const 4 i32.store offset=12 - local.get $12 + local.get $11 i32.const 0 i32.store offset=16 - local.get $12 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $12 + local.get $11 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $13 + local.tee $8 i32.store offset=16 loop $for-loop|2 - local.get $1 + local.get $2 i32.load offset=12 - local.get $8 + local.get $6 i32.gt_s if - local.get $1 + local.get $2 i32.load offset=12 - local.get $8 + local.get $6 i32.le_u if i32.const 1248 @@ -21657,19 +21730,19 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.load offset=4 - local.get $8 + local.get $6 i32.const 3 i32.shl i32.add f64.load local.set $14 - local.get $11 - local.get $8 - call $~lib/array/Array#__get - local.set $15 local.get $10 + local.get $6 + call $~lib/array/Array#__get + local.set $9 + local.get $1 local.get $14 call $~lib/map/Map#has i32.eqz @@ -21681,8 +21754,8 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $15 + local.get $1 + local.get $9 i32.const 20 i32.sub f64.convert_i32_s @@ -21703,11 +21776,11 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $12 + local.get $11 i32.load local.get $14 i64.reinterpret_f64 @@ -21733,26 +21806,26 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor - local.tee $6 - local.get $12 + local.tee $12 + local.get $11 i32.load offset=4 i32.and i32.const 2 @@ -21766,7 +21839,7 @@ if local.get $0 i32.load offset=16 - local.tee $2 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -21778,7 +21851,7 @@ f64.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $2 + local.get $3 i32.const -2 i32.and local.set $0 @@ -21794,15 +21867,15 @@ local.get $14 f64.store offset=8 else - local.get $12 + local.get $11 i32.load offset=16 - local.get $12 + local.get $11 i32.load offset=12 i32.eq if - local.get $12 + local.get $11 i32.load offset=20 - local.get $12 + local.get $11 i32.load offset=12 i32.const 3 i32.mul @@ -21810,17 +21883,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $12 + local.get $11 i32.load offset=4 else - local.get $12 + local.get $11 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $16 + local.set $13 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -21828,20 +21901,20 @@ global.get $~lib/memory/__stack_pointer i32.const 2020 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 i64.store local.get $0 - local.get $16 + local.get $13 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $17 + local.tee $15 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -21849,46 +21922,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $16 i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $3 i32.store offset=4 - local.get $12 + local.get $11 i32.load offset=8 - local.tee $9 - local.get $12 + local.tee $5 + local.get $11 i32.load offset=16 i32.const 24 i32.mul i32.add - local.set $4 - local.get $2 + local.set $17 + local.get $3 local.set $0 - loop $while-continue|00 - local.get $4 - local.get $9 + loop $while-continue|02 + local.get $5 + local.get $17 i32.ne if - local.get $9 + local.get $5 i32.load offset=16 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $9 + local.get $5 f64.load - local.tee $3 + local.tee $4 f64.store local.get $0 - local.get $9 + local.get $5 f64.load offset=8 f64.store offset=8 local.get $0 - local.get $16 - local.get $3 + local.get $4 i64.reinterpret_f64 local.tee $7 i32.wrap_i64 @@ -21912,28 +21984,29 @@ i32.const 668265263 i32.mul local.tee $18 + local.get $18 i32.const 15 i32.shr_u - local.get $18 i32.xor i32.const -2048144777 i32.mul local.tee $18 + local.get $18 i32.const 13 i32.shr_u - local.get $18 i32.xor i32.const -1028477379 i32.mul local.tee $18 + local.get $18 i32.const 16 i32.shr_u - local.get $18 i32.xor + local.get $13 i32.and i32.const 2 i32.shl - local.get $17 + local.get $15 i32.add local.tee $18 i32.load @@ -21946,39 +22019,39 @@ i32.add local.set $0 end - local.get $9 + local.get $5 i32.const 24 i32.add - local.set $9 - br $while-continue|00 + local.set $5 + br $while-continue|02 end end - local.get $12 - local.get $17 + local.get $11 + local.get $15 i32.store - local.get $17 + local.get $15 if - local.get $12 - local.get $17 + local.get $11 + local.get $15 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $12 - local.get $16 + local.get $11 + local.get $13 i32.store offset=4 - local.get $12 - local.get $2 + local.get $11 + local.get $3 i32.store offset=8 - local.get $2 + local.get $3 if - local.get $12 - local.get $2 + local.get $11 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $12 - local.get $5 + local.get $11 + local.get $16 i32.store offset=12 - local.get $12 - local.get $12 + local.get $11 + local.get $11 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -21987,18 +22060,18 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $12 + local.get $11 i32.load offset=8 local.tee $0 i32.store - local.get $12 - local.get $12 + local.get $11 + local.get $11 i32.load offset=16 - local.tee $2 + local.tee $3 i32.const 1 i32.add i32.store offset=16 - local.get $2 + local.get $3 i32.const 24 i32.mul local.get $0 @@ -22009,26 +22082,26 @@ local.get $0 local.get $14 f64.store offset=8 - local.get $12 - local.get $12 + local.get $11 + local.get $11 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $12 + local.get $11 i32.load - local.get $12 + local.get $11 i32.load offset=4 - local.get $6 + local.get $12 i32.and i32.const 2 i32.shl i32.add - local.tee $2 + local.tee $3 i32.load i32.store offset=16 - local.get $2 + local.get $3 local.get $0 i32.store end @@ -22036,21 +22109,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $13 - local.get $15 + local.get $8 + local.get $9 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $8 + local.get $6 i32.const 1 i32.add - local.set $8 + local.set $6 br $for-loop|2 end end - local.get $12 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -22062,7 +22135,7 @@ call $~lib/builtins/abort unreachable end - local.get $13 + local.get $8 i32.load offset=20 i32.const 100 i32.ne @@ -22075,14 +22148,14 @@ unreachable end f64.const 0 - local.set $3 + local.set $4 loop $for-loop|3 - local.get $3 + local.get $4 f64.const 50 f64.lt if - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/map/Map#has i32.eqz if @@ -22093,10 +22166,10 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/map/Map#get - local.get $3 + local.get $4 i32.trunc_f64_s i32.const 20 i32.add @@ -22109,11 +22182,11 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/map/Map#delete - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/map/Map#has if i32.const 0 @@ -22123,14 +22196,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 f64.const 1 f64.add - local.set $3 + local.set $4 br $for-loop|3 end end - local.get $10 + local.get $1 i32.load offset=20 i32.const 50 i32.ne @@ -22143,14 +22216,14 @@ unreachable end f64.const 0 - local.set $3 + local.set $4 loop $for-loop|4 - local.get $3 + local.get $4 f64.const 50 f64.lt if - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/map/Map#has if i32.const 0 @@ -22160,15 +22233,15 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $3 - local.get $3 + local.get $1 + local.get $4 + local.get $4 i32.trunc_f64_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/map/Map#has i32.eqz if @@ -22179,11 +22252,11 @@ call $~lib/builtins/abort unreachable end - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/map/Map#delete - local.get $10 - local.get $3 + local.get $1 + local.get $4 call $~lib/map/Map#has if i32.const 0 @@ -22193,14 +22266,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 f64.const 1 f64.add - local.set $3 + local.set $4 br $for-loop|4 end end - local.get $10 + local.get $1 i32.load offset=20 i32.const 50 i32.ne @@ -22212,9 +22285,9 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $1 call $~lib/map/Map#clear - local.get $10 + local.get $1 i32.load offset=20 if i32.const 0 @@ -22420,6 +22493,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) + (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -22438,60 +22512,61 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $0 - i32.load - local.get $1 - local.tee $3 - i32.extend8_s - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - local.get $1 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - local.get $1 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - local.get $1 - i32.const 16 - i32.shr_u - i32.xor - local.tee $4 - local.get $0 - i32.load offset=4 - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $1 + local.tee $3 + i32.extend8_s + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $4 + i32.const 15 + i32.shr_u + local.get $4 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $4 + i32.const 13 + i32.shr_u + local.get $4 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $4 + i32.const 16 + i32.shr_u + local.get $4 + i32.xor + local.tee $5 + local.get $0 + i32.load offset=4 + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $4 loop $while-continue|0 - local.get $1 + local.get $4 if - local.get $1 + local.get $4 + local.get $4 i32.load offset=8 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $4 i32.load8_u local.get $3 i32.const 255 @@ -22499,19 +22574,19 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $5 + drop + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $4 br $while-continue|0 end end i32.const 0 - local.set $1 end - local.get $1 + local.tee $3 if - local.get $1 + local.get $3 local.get $2 i32.store offset=4 else @@ -22547,24 +22622,24 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=8 - local.tee $1 + local.tee $3 i32.store local.get $0 local.get $0 i32.load offset=16 - local.tee $5 + local.tee $4 i32.const 1 i32.add i32.store offset=16 - local.get $5 + local.get $4 i32.const 12 i32.mul - local.get $1 - i32.add - local.tee $1 local.get $3 - i32.store8 + i32.add + local.tee $3 local.get $1 + i32.store8 + local.get $3 local.get $2 i32.store offset=4 local.get $0 @@ -22573,12 +22648,12 @@ i32.const 1 i32.add i32.store offset=20 - local.get $1 + local.get $3 local.get $0 i32.load local.get $0 i32.load offset=4 - local.get $4 + local.get $5 i32.and i32.const 2 i32.shl @@ -22587,7 +22662,7 @@ i32.load i32.store offset=8 local.get $0 - local.get $1 + local.get $3 i32.store end global.get $~lib/memory/__stack_pointer @@ -22842,6 +22917,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) + (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -22860,77 +22936,78 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $0 - i32.load - local.get $1 - local.tee $3 - i32.const -1028477379 - i32.mul - i32.const 374761397 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - local.get $1 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - local.get $1 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - local.get $1 - i32.const 16 - i32.shr_u - i32.xor - local.tee $4 - local.get $0 - i32.load offset=4 - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $1 + local.tee $3 + i32.const -1028477379 + i32.mul + i32.const 374761397 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $4 + i32.const 15 + i32.shr_u + local.get $4 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $4 + i32.const 13 + i32.shr_u + local.get $4 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $4 + i32.const 16 + i32.shr_u + local.get $4 + i32.xor + local.tee $5 + local.get $0 + i32.load offset=4 + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $4 loop $while-continue|0 - local.get $1 + local.get $4 if - local.get $1 + local.get $4 + local.get $4 i32.load offset=8 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $3 - local.get $1 + local.get $4 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $5 + drop + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $4 br $while-continue|0 end end i32.const 0 - local.set $1 end - local.get $1 + local.tee $3 if - local.get $1 + local.get $3 local.get $2 i32.store offset=4 else @@ -22966,24 +23043,24 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=8 - local.tee $1 + local.tee $3 i32.store local.get $0 local.get $0 i32.load offset=16 - local.tee $5 + local.tee $4 i32.const 1 i32.add i32.store offset=16 - local.get $5 + local.get $4 i32.const 12 i32.mul - local.get $1 - i32.add - local.tee $1 local.get $3 - i32.store + i32.add + local.tee $3 local.get $1 + i32.store + local.get $3 local.get $2 i32.store offset=4 local.get $0 @@ -22992,12 +23069,12 @@ i32.const 1 i32.add i32.store offset=20 - local.get $1 + local.get $3 local.get $0 i32.load local.get $0 i32.load offset=4 - local.get $4 + local.get $5 i32.and i32.const 2 i32.shl @@ -23006,7 +23083,7 @@ i32.load i32.store offset=8 local.get $0 - local.get $1 + local.get $3 i32.store end global.get $~lib/memory/__stack_pointer @@ -23018,6 +23095,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) + (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -23036,61 +23114,62 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $0 - i32.load - local.get $1 - local.tee $3 - i32.const 255 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - local.get $1 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - local.get $1 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - local.get $1 - i32.const 16 - i32.shr_u - i32.xor - local.tee $4 - local.get $0 - i32.load offset=4 - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $1 + local.tee $3 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $4 + i32.const 15 + i32.shr_u + local.get $4 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $4 + i32.const 13 + i32.shr_u + local.get $4 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $4 + i32.const 16 + i32.shr_u + local.get $4 + i32.xor + local.tee $5 + local.get $0 + i32.load offset=4 + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $4 loop $while-continue|0 - local.get $1 + local.get $4 if - local.get $1 + local.get $4 + local.get $4 i32.load offset=8 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $4 i32.load8_u local.get $3 i32.const 255 @@ -23098,19 +23177,19 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $5 + drop + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $4 br $while-continue|0 end end i32.const 0 - local.set $1 end - local.get $1 + local.tee $3 if - local.get $1 + local.get $3 local.get $2 i32.store offset=4 else @@ -23146,24 +23225,24 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=8 - local.tee $1 + local.tee $3 i32.store local.get $0 local.get $0 i32.load offset=16 - local.tee $5 + local.tee $4 i32.const 1 i32.add i32.store offset=16 - local.get $5 + local.get $4 i32.const 12 i32.mul - local.get $1 - i32.add - local.tee $1 local.get $3 - i32.store8 + i32.add + local.tee $3 local.get $1 + i32.store8 + local.get $3 local.get $2 i32.store offset=4 local.get $0 @@ -23172,12 +23251,12 @@ i32.const 1 i32.add i32.store offset=20 - local.get $1 + local.get $3 local.get $0 i32.load local.get $0 i32.load offset=4 - local.get $4 + local.get $5 i32.and i32.const 2 i32.shl @@ -23186,7 +23265,7 @@ i32.load i32.store offset=8 local.get $0 - local.get $1 + local.get $3 i32.store end global.get $~lib/memory/__stack_pointer @@ -23198,6 +23277,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) + (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -23216,60 +23296,61 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $0 - i32.load - local.get $1 - local.tee $3 - i32.extend16_s - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - local.get $1 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - local.get $1 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - local.get $1 - i32.const 16 - i32.shr_u - i32.xor - local.tee $4 - local.get $0 - i32.load offset=4 - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $1 + local.tee $3 + i32.extend16_s + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $4 + i32.const 15 + i32.shr_u + local.get $4 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $4 + i32.const 13 + i32.shr_u + local.get $4 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $4 + i32.const 16 + i32.shr_u + local.get $4 + i32.xor + local.tee $5 + local.get $0 + i32.load offset=4 + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $4 loop $while-continue|0 - local.get $1 + local.get $4 if - local.get $1 + local.get $4 + local.get $4 i32.load offset=8 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $4 i32.load16_u local.get $3 i32.const 65535 @@ -23277,19 +23358,19 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $5 + drop + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $4 br $while-continue|0 end end i32.const 0 - local.set $1 end - local.get $1 + local.tee $3 if - local.get $1 + local.get $3 local.get $2 i32.store offset=4 else @@ -23325,24 +23406,24 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=8 - local.tee $1 + local.tee $3 i32.store local.get $0 local.get $0 i32.load offset=16 - local.tee $5 + local.tee $4 i32.const 1 i32.add i32.store offset=16 - local.get $5 + local.get $4 i32.const 12 i32.mul - local.get $1 - i32.add - local.tee $1 local.get $3 - i32.store16 + i32.add + local.tee $3 local.get $1 + i32.store16 + local.get $3 local.get $2 i32.store offset=4 local.get $0 @@ -23351,12 +23432,12 @@ i32.const 1 i32.add i32.store offset=20 - local.get $1 + local.get $3 local.get $0 i32.load local.get $0 i32.load offset=4 - local.get $4 + local.get $5 i32.and i32.const 2 i32.shl @@ -23365,7 +23446,7 @@ i32.load i32.store offset=8 local.get $0 - local.get $1 + local.get $3 i32.store end global.get $~lib/memory/__stack_pointer @@ -23377,6 +23458,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) + (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -23395,61 +23477,62 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $0 - i32.load - local.get $1 - local.tee $3 - i32.const 65535 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - local.get $1 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - local.get $1 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - local.get $1 - i32.const 16 - i32.shr_u - i32.xor - local.tee $4 - local.get $0 - i32.load offset=4 - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $1 + local.tee $3 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $4 + i32.const 15 + i32.shr_u + local.get $4 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $4 + i32.const 13 + i32.shr_u + local.get $4 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $4 + i32.const 16 + i32.shr_u + local.get $4 + i32.xor + local.tee $5 + local.get $0 + i32.load offset=4 + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $4 loop $while-continue|0 - local.get $1 + local.get $4 if - local.get $1 + local.get $4 + local.get $4 i32.load offset=8 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $4 i32.load16_u local.get $3 i32.const 65535 @@ -23457,19 +23540,19 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $5 + drop + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $4 br $while-continue|0 end end i32.const 0 - local.set $1 end - local.get $1 + local.tee $3 if - local.get $1 + local.get $3 local.get $2 i32.store offset=4 else @@ -23505,24 +23588,24 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=8 - local.tee $1 + local.tee $3 i32.store local.get $0 local.get $0 i32.load offset=16 - local.tee $5 + local.tee $4 i32.const 1 i32.add i32.store offset=16 - local.get $5 + local.get $4 i32.const 12 i32.mul - local.get $1 - i32.add - local.tee $1 local.get $3 - i32.store16 + i32.add + local.tee $3 local.get $1 + i32.store16 + local.get $3 local.get $2 i32.store offset=4 local.get $0 @@ -23531,12 +23614,12 @@ i32.const 1 i32.add i32.store offset=20 - local.get $1 + local.get $3 local.get $0 i32.load local.get $0 i32.load offset=4 - local.get $4 + local.get $5 i32.and i32.const 2 i32.shl @@ -23545,7 +23628,7 @@ i32.load i32.store offset=8 local.get $0 - local.get $1 + local.get $3 i32.store end global.get $~lib/memory/__stack_pointer @@ -23557,6 +23640,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) + (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -23575,77 +23659,78 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $0 - i32.load - local.get $1 - local.tee $3 - i32.const -1028477379 - i32.mul - i32.const 374761397 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - local.get $1 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - local.get $1 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - local.get $1 - i32.const 16 - i32.shr_u - i32.xor - local.tee $4 - local.get $0 - i32.load offset=4 - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $1 + local.tee $3 + i32.const -1028477379 + i32.mul + i32.const 374761397 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $4 + i32.const 15 + i32.shr_u + local.get $4 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $4 + i32.const 13 + i32.shr_u + local.get $4 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $4 + i32.const 16 + i32.shr_u + local.get $4 + i32.xor + local.tee $5 + local.get $0 + i32.load offset=4 + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $4 loop $while-continue|0 - local.get $1 + local.get $4 if - local.get $1 + local.get $4 + local.get $4 i32.load offset=8 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $3 - local.get $1 + local.get $4 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $5 + drop + local.get $6 i32.const -2 i32.and - local.set $1 + local.set $4 br $while-continue|0 end end i32.const 0 - local.set $1 end - local.get $1 + local.tee $3 if - local.get $1 + local.get $3 local.get $2 i32.store offset=4 else @@ -23681,24 +23766,24 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=8 - local.tee $1 + local.tee $3 i32.store local.get $0 local.get $0 i32.load offset=16 - local.tee $5 + local.tee $4 i32.const 1 i32.add i32.store offset=16 - local.get $5 + local.get $4 i32.const 12 i32.mul - local.get $1 - i32.add - local.tee $1 local.get $3 - i32.store + i32.add + local.tee $3 local.get $1 + i32.store + local.get $3 local.get $2 i32.store offset=4 local.get $0 @@ -23707,12 +23792,12 @@ i32.const 1 i32.add i32.store offset=20 - local.get $1 + local.get $3 local.get $0 i32.load local.get $0 i32.load offset=4 - local.get $4 + local.get $5 i32.and i32.const 2 i32.shl @@ -23721,7 +23806,7 @@ i32.load i32.store offset=8 local.get $0 - local.get $1 + local.get $3 i32.store end global.get $~lib/memory/__stack_pointer @@ -23751,61 +23836,62 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $0 - i32.load - local.get $1 - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.const 374761401 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $3 - local.get $3 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $3 - local.get $3 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $3 - local.get $3 - i32.const 16 - i32.shr_u - i32.xor - local.tee $4 - local.get $0 - i32.load offset=4 - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $3 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $1 + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.const 374761401 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $3 + i32.const 15 + i32.shr_u + local.get $3 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $3 + i32.const 13 + i32.shr_u + local.get $3 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $3 + i32.const 16 + i32.shr_u + local.get $3 + i32.xor + local.tee $4 + local.get $0 + i32.load offset=4 + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $3 loop $while-continue|0 local.get $3 if + local.get $3 local.get $3 i32.load offset=12 local.tee $5 @@ -23820,6 +23906,7 @@ i64.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $5 i32.const -2 i32.and @@ -23828,9 +23915,8 @@ end end i32.const 0 - local.set $3 end - local.get $3 + local.tee $3 if local.get $3 local.get $2 @@ -24020,61 +24106,62 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $0 - i32.load - local.get $1 - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.const 374761401 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $3 - local.get $3 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $3 - local.get $3 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $3 - local.get $3 - i32.const 16 - i32.shr_u - i32.xor - local.tee $4 - local.get $0 - i32.load offset=4 - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $3 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $1 + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.const 374761401 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $3 + i32.const 15 + i32.shr_u + local.get $3 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $3 + i32.const 13 + i32.shr_u + local.get $3 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $3 + i32.const 16 + i32.shr_u + local.get $3 + i32.xor + local.tee $4 + local.get $0 + i32.load offset=4 + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $3 loop $while-continue|0 local.get $3 if + local.get $3 local.get $3 i32.load offset=12 local.tee $5 @@ -24089,6 +24176,7 @@ i64.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $5 i32.const -2 i32.and @@ -24097,9 +24185,8 @@ end end i32.const 0 - local.set $3 end - local.get $3 + local.tee $3 if local.get $3 local.get $2 @@ -24207,50 +24294,51 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $0 - i32.load - local.get $1 - i32.reinterpret_f32 - i32.const -1028477379 - i32.mul - i32.const 374761397 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $3 - local.get $3 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $3 - local.get $3 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $3 - local.get $3 - i32.const 16 - i32.shr_u - i32.xor - local.tee $4 - local.get $0 - i32.load offset=4 - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $3 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $1 + i32.reinterpret_f32 + i32.const -1028477379 + i32.mul + i32.const 374761397 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $3 + i32.const 15 + i32.shr_u + local.get $3 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $3 + i32.const 13 + i32.shr_u + local.get $3 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $3 + i32.const 16 + i32.shr_u + local.get $3 + i32.xor + local.tee $4 + local.get $0 + i32.load offset=4 + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $3 loop $while-continue|0 local.get $3 if + local.get $3 local.get $3 i32.load offset=8 local.tee $5 @@ -24265,6 +24353,7 @@ f32.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $5 i32.const -2 i32.and @@ -24273,9 +24362,8 @@ end end i32.const 0 - local.set $3 end - local.get $3 + local.tee $3 if local.get $3 local.get $2 @@ -24384,63 +24472,64 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $0 - i32.load - local.get $1 - i64.reinterpret_f64 - local.tee $4 - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.const 374761401 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.get $4 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $3 - local.get $3 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $3 - local.get $3 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $3 - local.get $3 - i32.const 16 - i32.shr_u - i32.xor - local.tee $5 - local.get $0 - i32.load offset=4 - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $3 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $1 + i64.reinterpret_f64 + local.tee $4 + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.const 374761401 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.get $4 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $3 + i32.const 15 + i32.shr_u + local.get $3 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $3 + i32.const 13 + i32.shr_u + local.get $3 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $3 + i32.const 16 + i32.shr_u + local.get $3 + i32.xor + local.tee $5 + local.get $0 + i32.load offset=4 + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $3 loop $while-continue|0 local.get $3 if + local.get $3 local.get $3 i32.load offset=12 local.tee $6 @@ -24455,6 +24544,7 @@ f64.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $6 i32.const -2 i32.and @@ -24463,9 +24553,8 @@ end end i32.const 0 - local.set $3 end - local.get $3 + local.tee $3 if local.get $3 local.get $2 diff --git a/tests/compiler/std/math.optimized.wat b/tests/compiler/std/math.optimized.wat index c36682d380..7cb6e347b4 100644 --- a/tests/compiler/std/math.optimized.wat +++ b/tests/compiler/std/math.optimized.wat @@ -1,11 +1,12 @@ (module (type $f64_=>_f64 (func (param f64) (result f64))) (type $f64_f64_f64_=>_i32 (func (param f64 f64 f64) (result i32))) - (type $f32_=>_f32 (func (param f32) (result f32))) (type $f32_f32_f32_=>_i32 (func (param f32 f32 f32) (result i32))) + (type $f32_=>_f32 (func (param f32) (result f32))) (type $f64_f64_=>_f64 (func (param f64 f64) (result f64))) - (type $f32_f32_=>_f32 (func (param f32 f32) (result f32))) (type $f64_f64_f64_f64_=>_i32 (func (param f64 f64 f64 f64) (result i32))) + (type $f32_f32_=>_f32 (func (param f32 f32) (result f32))) + (type $f32_f32_f32_f32_=>_i32 (func (param f32 f32 f32 f32) (result i32))) (type $none_=>_f64 (func (result f64))) (type $f64_f64_=>_i32 (func (param f64 f64) (result i32))) (type $f32_f32_=>_i32 (func (param f32 f32) (result i32))) @@ -13,7 +14,6 @@ (type $f64_i32_=>_f64 (func (param f64 i32) (result f64))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i64_=>_i32 (func (param i64) (result i32))) - (type $f32_f32_f32_f32_=>_i32 (func (param f32 f32 f32 f32) (result i32))) (type $i64_=>_none (func (param i64))) (type $f64_f64_i32_=>_f64 (func (param f64 f64 i32) (result f64))) (type $f64_=>_none (func (param f64))) @@ -562,15 +562,15 @@ ) (func $~lib/math/NativeMath.acos (param $0 f64) (result f64) (local $1 i32) - (local $2 i32) - (local $3 f64) + (local $2 f64) + (local $3 i32) (local $4 f64) local.get $0 i64.reinterpret_f64 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $2 + local.tee $3 i32.const 2147483647 i32.and local.tee $1 @@ -586,7 +586,7 @@ i32.or i32.eqz if - local.get $2 + local.get $3 i32.const 31 i32.shr_u if @@ -668,7 +668,7 @@ f64.sub return end - local.get $2 + local.get $3 i32.const 31 i32.shr_u if @@ -680,7 +680,7 @@ f64.add local.tee $0 f64.sqrt - local.tee $3 + local.tee $2 local.get $0 local.get $0 local.get $0 @@ -722,7 +722,7 @@ f64.const 1 f64.add f64.div - local.get $3 + local.get $2 f64.mul f64.const 6.123233995736766e-17 f64.sub @@ -737,20 +737,20 @@ f64.const 0.5 f64.mul f64.sub - local.tee $3 - f64.sqrt local.tee $0 + f64.sqrt + local.tee $4 i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $4 - local.get $3 - local.get $3 - local.get $3 - local.get $3 - local.get $3 - local.get $3 + local.tee $2 + local.get $0 + local.get $0 + local.get $0 + local.get $0 + local.get $0 + local.get $0 f64.const 3.479331075960212e-05 f64.mul f64.const 7.915349942898145e-04 @@ -768,10 +768,10 @@ f64.const 0.16666666666666666 f64.add f64.mul - local.get $3 - local.get $3 - local.get $3 - local.get $3 + local.get $0 + local.get $0 + local.get $0 + local.get $0 f64.const 0.07703815055590194 f64.mul f64.const -0.6882839716054533 @@ -786,15 +786,15 @@ f64.const 1 f64.add f64.div - local.get $0 - f64.mul - local.get $3 - local.get $4 local.get $4 f64.mul - f64.sub local.get $0 + local.get $2 + local.get $2 + f64.mul + f64.sub local.get $4 + local.get $2 f64.add f64.div f64.add @@ -1817,26 +1817,26 @@ call $std/math/check ) (func $~lib/math/NativeMath.asin (param $0 f64) (result f64) - (local $1 i32) + (local $1 f64) (local $2 f64) (local $3 i32) - (local $4 f64) + (local $4 i32) local.get $0 i64.reinterpret_f64 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $3 + local.tee $4 i32.const 2147483647 i32.and - local.tee $1 + local.tee $3 i32.const 1072693248 i32.ge_u if local.get $0 i64.reinterpret_f64 i32.wrap_i64 - local.get $1 + local.get $3 i32.const 1072693248 i32.sub i32.or @@ -1856,14 +1856,14 @@ f64.div return end - local.get $1 + local.get $3 i32.const 1071644672 i32.lt_u if - local.get $1 + local.get $3 i32.const 1045430272 i32.lt_u - local.get $1 + local.get $3 i32.const 1048576 i32.ge_u i32.and @@ -1927,15 +1927,16 @@ f64.const 0.5 f64.mul f64.sub - local.tee $4 + local.tee $0 f64.sqrt - local.set $0 - local.get $4 - local.get $4 - local.get $4 - local.get $4 - local.get $4 - local.get $4 + local.set $2 + local.get $0 + local.tee $1 + local.get $1 + local.get $1 + local.get $1 + local.get $1 + local.get $1 f64.const 3.479331075960212e-05 f64.mul f64.const 7.915349942898145e-04 @@ -1953,10 +1954,10 @@ f64.const 0.16666666666666666 f64.add f64.mul - local.get $4 - local.get $4 - local.get $4 - local.get $4 + local.get $1 + local.get $1 + local.get $1 + local.get $1 f64.const 0.07703815055590194 f64.mul f64.const -0.6882839716054533 @@ -1971,15 +1972,15 @@ f64.const 1 f64.add f64.div - local.set $2 - local.get $1 + local.set $1 + local.get $3 i32.const 1072640819 i32.ge_u if (result f64) f64.const 1.5707963267948966 - local.get $0 - local.get $0 local.get $2 + local.get $2 + local.get $1 f64.mul f64.add f64.const 2 @@ -1989,24 +1990,24 @@ f64.sub else f64.const 0.7853981633974483 - local.get $0 - local.get $0 - f64.add local.get $2 + local.get $2 + f64.add + local.get $1 f64.mul f64.const 6.123233995736766e-17 - local.get $4 local.get $0 + local.get $2 i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $2 - local.get $2 + local.tee $0 + local.get $0 f64.mul f64.sub - local.get $0 local.get $2 + local.get $0 f64.add f64.div f64.const 2 @@ -2014,15 +2015,15 @@ f64.sub f64.sub f64.const 0.7853981633974483 - local.get $2 - local.get $2 + local.get $0 + local.get $0 f64.add f64.sub f64.sub f64.sub end local.set $0 - local.get $3 + local.get $4 i32.const 31 i32.shr_u if @@ -2830,7 +2831,7 @@ (local $8 i32) (local $9 i32) (local $10 i32) - block $__inlined_func$~lib/math/NativeMath.atan2 + block $__inlined_func$~lib/math/NativeMath.atan2 (result f64) local.get $0 local.tee $4 local.get $4 @@ -2843,7 +2844,6 @@ local.get $1 local.get $4 f64.add - local.set $4 br $__inlined_func$~lib/math/NativeMath.atan2 end local.get $4 @@ -2852,29 +2852,26 @@ i64.const 32 i64.shr_u i32.wrap_i64 - local.set $7 + local.set $9 local.get $6 i32.wrap_i64 - local.set $9 local.get $1 i64.reinterpret_f64 local.tee $6 i64.const 32 i64.shr_u i32.wrap_i64 - local.set $10 + local.tee $10 + i32.const 1072693248 + i32.sub local.get $6 i32.wrap_i64 local.tee $8 - local.get $10 - i32.const 1072693248 - i32.sub i32.or i32.eqz if local.get $4 call $~lib/math/NativeMath.atan - local.set $4 br $__inlined_func$~lib/math/NativeMath.atan2 end local.get $10 @@ -2882,7 +2879,7 @@ i32.shr_u i32.const 2 i32.and - local.get $7 + local.get $9 i32.const 31 i32.shr_u i32.or @@ -2891,26 +2888,27 @@ i32.const 2147483647 i32.and local.set $10 - local.get $7 + local.get $9 i32.const 2147483647 i32.and local.tee $7 - local.get $9 i32.or i32.eqz if block $break|0 block $case3|0 block $case2|0 - local.get $5 - br_table $__inlined_func$~lib/math/NativeMath.atan2 $__inlined_func$~lib/math/NativeMath.atan2 $case2|0 $case3|0 $break|0 + block $case0|0 + local.get $5 + br_table $case0|0 $case0|0 $case2|0 $case3|0 $break|0 + end + local.get $4 + br $__inlined_func$~lib/math/NativeMath.atan2 end f64.const 3.141592653589793 - local.set $4 br $__inlined_func$~lib/math/NativeMath.atan2 end f64.const -3.141592653589793 - local.set $4 br $__inlined_func$~lib/math/NativeMath.atan2 end end @@ -2949,7 +2947,6 @@ i32.const 1 i32.and select - local.set $4 br $__inlined_func$~lib/math/NativeMath.atan2 end local.get $7 @@ -2990,11 +2987,11 @@ local.get $5 br_table $case0|1 $case1|1 $case2|1 $case3|1 $break|1 end + local.get $4 br $__inlined_func$~lib/math/NativeMath.atan2 end local.get $4 f64.neg - local.set $4 br $__inlined_func$~lib/math/NativeMath.atan2 end f64.const 3.141592653589793 @@ -3002,7 +2999,6 @@ f64.const 1.2246467991473532e-16 f64.sub f64.sub - local.set $4 br $__inlined_func$~lib/math/NativeMath.atan2 end local.get $4 @@ -3010,7 +3006,6 @@ f64.sub f64.const 3.141592653589793 f64.sub - local.set $4 br $__inlined_func$~lib/math/NativeMath.atan2 end unreachable @@ -3021,9 +3016,7 @@ i32.const 1 i32.and select - local.set $4 end - local.get $4 local.get $2 local.get $3 call $std/math/check @@ -3038,11 +3031,14 @@ i32.const 0 end ) - (func $~lib/math/NativeMathf.atan2 (param $0 f32) (param $1 f32) (result f32) - (local $2 i32) - (local $3 i32) + (func $std/math/test_atan2f (param $0 f32) (param $1 f32) (param $2 f32) (param $3 f32) (result i32) (local $4 i32) - block $folding-inner0 + (local $5 i32) + (local $6 i32) + block $__inlined_func$~lib/math/NativeMathf.atan2 (result f32) + local.get $1 + local.get $0 + f32.add local.get $0 local.get $0 f32.ne @@ -3050,120 +3046,130 @@ local.get $1 f32.ne i32.or - if - local.get $1 - local.get $0 - f32.add - return - end + br_if $__inlined_func$~lib/math/NativeMathf.atan2 + drop local.get $0 i32.reinterpret_f32 - local.set $3 + local.set $5 local.get $1 i32.reinterpret_f32 - local.tee $4 + local.tee $6 i32.const 1065353216 i32.eq if local.get $0 call $~lib/math/NativeMathf.atan - return + br $__inlined_func$~lib/math/NativeMathf.atan2 end - local.get $4 + local.get $6 i32.const 30 i32.shr_u i32.const 2 i32.and - local.get $3 + local.get $5 i32.const 31 i32.shr_u i32.or - local.set $2 - local.get $4 + local.set $4 + local.get $6 i32.const 2147483647 i32.and - local.set $4 - local.get $3 + local.set $6 + local.get $5 i32.const 2147483647 i32.and - local.tee $3 + local.tee $5 i32.eqz if block $break|0 block $case3|0 block $case2|0 block $case1|0 - local.get $2 + local.get $4 br_table $case1|0 $case1|0 $case2|0 $case3|0 $break|0 end local.get $0 - return + br $__inlined_func$~lib/math/NativeMathf.atan2 end f32.const 3.1415927410125732 - return + br $__inlined_func$~lib/math/NativeMathf.atan2 end f32.const -3.1415927410125732 - return + br $__inlined_func$~lib/math/NativeMathf.atan2 end end + f32.const -1.5707963705062866 + f32.const 1.5707963705062866 local.get $4 + i32.const 1 + i32.and + select + local.get $6 i32.eqz - br_if $folding-inner0 - local.get $4 + br_if $__inlined_func$~lib/math/NativeMathf.atan2 + drop + local.get $6 i32.const 2139095040 i32.eq if - local.get $3 + local.get $5 i32.const 2139095040 i32.eq if (result f32) f32.const 2.356194496154785 f32.const 0.7853981852531433 - local.get $2 + local.get $4 i32.const 2 i32.and select local.tee $0 f32.neg local.get $0 - local.get $2 + local.get $4 i32.const 1 i32.and select else f32.const 3.1415927410125732 f32.const 0 - local.get $2 + local.get $4 i32.const 2 i32.and select local.tee $0 f32.neg local.get $0 - local.get $2 + local.get $4 i32.const 1 i32.and select end - return + br $__inlined_func$~lib/math/NativeMathf.atan2 end - local.get $3 + f32.const -1.5707963705062866 + f32.const 1.5707963705062866 + local.get $4 + i32.const 1 + i32.and + select + local.get $5 i32.const 2139095040 i32.eq - local.get $3 - local.get $4 + local.get $5 + local.get $6 i32.const 218103808 i32.add i32.gt_u i32.or - br_if $folding-inner0 - local.get $4 - local.get $3 + br_if $__inlined_func$~lib/math/NativeMathf.atan2 + drop + local.get $6 + local.get $5 i32.const 218103808 i32.add i32.gt_u i32.const 0 - local.get $2 + local.get $4 i32.const 2 i32.and select @@ -3182,159 +3188,171 @@ block $case2|1 block $case1|1 block $case0|1 - local.get $2 + local.get $4 br_table $case0|1 $case1|1 $case2|1 $case3|1 $break|1 end local.get $0 - return + br $__inlined_func$~lib/math/NativeMathf.atan2 end local.get $0 f32.neg - return + br $__inlined_func$~lib/math/NativeMathf.atan2 end f32.const 3.1415927410125732 local.get $0 f32.const -8.742277657347586e-08 f32.sub f32.sub - return + br $__inlined_func$~lib/math/NativeMathf.atan2 end local.get $0 f32.const -8.742277657347586e-08 f32.sub f32.const 3.1415927410125732 f32.sub - return + br $__inlined_func$~lib/math/NativeMathf.atan2 end unreachable end - f32.const -1.5707963705062866 - f32.const 1.5707963705062866 local.get $2 - i32.const 1 - i32.and - select + local.get $3 + call $std/math/check ) - (func $~lib/math/NativeMath.cbrt (param $0 f64) (result f64) - (local $1 i32) - (local $2 f64) - (local $3 i64) - (local $4 f64) - local.get $0 - i64.reinterpret_f64 - local.tee $3 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const 2147483647 - i32.and - local.tee $1 - i32.const 2146435072 - i32.ge_u - if - local.get $0 - local.get $0 - f64.add - return - end - local.get $1 - i32.const 1048576 - i32.lt_u - if (result i32) + (func $std/math/test_cbrt (param $0 f64) (param $1 f64) (param $2 f64) (result i32) + (local $3 f64) + (local $4 i32) + (local $5 f64) + (local $6 i64) + (local $7 f64) + block $__inlined_func$~lib/math/NativeMath.cbrt (result f64) local.get $0 - f64.const 18014398509481984 - f64.mul - i64.reinterpret_f64 local.tee $3 + i64.reinterpret_f64 + local.tee $6 i64.const 32 i64.shr_u i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $1 - i32.eqz + local.tee $4 + i32.const 2146435072 + i32.ge_u if - local.get $0 - return + local.get $3 + local.get $3 + f64.add + br $__inlined_func$~lib/math/NativeMath.cbrt end - local.get $1 - i32.const 3 - i32.div_u - i32.const 696219795 - i32.add - else - local.get $1 - i32.const 3 - i32.div_u - i32.const 715094163 - i32.add + local.get $4 + i32.const 1048576 + i32.lt_u + if (result i32) + local.get $3 + local.get $3 + f64.const 18014398509481984 + f64.mul + i64.reinterpret_f64 + local.tee $6 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const 2147483647 + i32.and + local.tee $4 + i32.eqz + br_if $__inlined_func$~lib/math/NativeMath.cbrt + drop + local.get $4 + i32.const 3 + i32.div_u + i32.const 696219795 + i32.add + else + local.get $4 + i32.const 3 + i32.div_u + i32.const 715094163 + i32.add + end + local.set $4 + local.get $6 + i64.const -9223372036854775808 + i64.and + local.get $4 + i64.extend_i32_u + i64.const 32 + i64.shl + i64.or + f64.reinterpret_i64 + local.tee $5 + local.get $5 + f64.mul + local.get $5 + local.get $3 + f64.div + f64.mul + local.set $7 + local.get $3 + local.get $5 + local.get $7 + local.get $7 + f64.const 1.6214297201053545 + f64.mul + f64.const -1.8849797954337717 + f64.add + f64.mul + f64.const 1.87595182427177 + f64.add + local.get $7 + local.get $7 + f64.mul + local.get $7 + f64.mul + local.get $7 + f64.const 0.14599619288661245 + f64.mul + f64.const -0.758397934778766 + f64.add + f64.mul + f64.add + f64.mul + i64.reinterpret_f64 + i64.const 2147483648 + i64.add + i64.const -1073741824 + i64.and + f64.reinterpret_i64 + local.tee $3 + local.get $3 + f64.mul + f64.div + local.set $5 + local.get $3 + local.get $3 + local.get $5 + local.get $3 + f64.sub + local.get $3 + local.get $3 + f64.add + local.get $5 + f64.add + f64.div + f64.mul + f64.add end - local.set $1 - local.get $3 - i64.const -9223372036854775808 - i64.and local.get $1 - i64.extend_i32_u - i64.const 32 - i64.shl - i64.or - f64.reinterpret_i64 - local.tee $2 local.get $2 - f64.mul - local.get $2 - local.get $0 - f64.div - f64.mul - local.set $4 - local.get $0 - local.get $2 - local.get $4 - local.get $4 - f64.const 1.6214297201053545 - f64.mul - f64.const -1.8849797954337717 - f64.add - f64.mul - f64.const 1.87595182427177 - f64.add - local.get $4 - local.get $4 - f64.mul - local.get $4 - f64.mul - local.get $4 - f64.const 0.14599619288661245 - f64.mul - f64.const -0.758397934778766 - f64.add - f64.mul - f64.add - f64.mul - i64.reinterpret_f64 - i64.const 2147483648 - i64.add - i64.const -1073741824 - i64.and - f64.reinterpret_i64 - local.tee $0 - local.get $0 - f64.mul - f64.div - local.set $2 - local.get $0 - local.get $0 - local.get $2 - local.get $0 - f64.sub - local.get $0 - local.get $0 - f64.add - local.get $2 - f64.add - f64.div - f64.mul - f64.add + call $std/math/check + if (result i32) + local.get $0 + call $~lib/bindings/Math/cbrt + local.get $1 + local.get $2 + call $std/math/check + else + i32.const 0 + end ) (func $std/math/test_cbrtf (param $0 f32) (param $1 f32) (param $2 f32) (result i32) (local $3 f64) @@ -4398,6 +4416,16 @@ i32.const 63 i32.and i64.extend_i32_s + local.set $4 + local.get $7 + i32.const 6 + i32.shr_s + i32.const 3 + i32.shl + i32.const 5632 + i32.add + local.tee $7 + i64.load offset=8 local.set $8 f64.const 8.515303950216386e-20 local.get $0 @@ -4411,45 +4439,36 @@ i64.extend_i32_s local.tee $9 local.get $7 - i32.const 6 - i32.shr_s - i32.const 3 - i32.shl - i32.const 5632 - i32.add - local.tee $1 i64.load - local.get $8 + local.get $4 i64.shl - local.get $1 - i64.load offset=8 - local.tee $4 - i64.const 64 local.get $8 + i64.const 64 + local.get $4 i64.sub i64.shr_u i64.or i64.mul - local.get $8 + local.get $4 i64.const 32 i64.gt_u if (result i64) - local.get $4 local.get $8 + local.get $4 i64.const 32 i64.sub i64.shl - local.get $1 + local.get $7 i64.load offset=16 i64.const 96 - local.get $8 + local.get $4 i64.sub i64.shr_u i64.or else - local.get $4 - i64.const 32 local.get $8 + i64.const 32 + local.get $4 i64.sub i64.shr_u end @@ -5856,173 +5875,173 @@ local.get $2 call $std/math/check ) - (func $~lib/math/NativeMath.hypot (param $0 f64) (param $1 f64) (result f64) - (local $2 i64) - (local $3 i64) + (func $std/math/test_hypot (param $0 f64) (param $1 f64) (param $2 f64) (param $3 f64) (result i32) (local $4 i64) - (local $5 i32) - (local $6 f64) - (local $7 i32) - (local $8 f64) + (local $5 i64) + (local $6 i64) + (local $7 f64) + (local $8 i32) (local $9 f64) - (local $10 f64) + (local $10 i32) (local $11 f64) - local.get $1 - i64.reinterpret_f64 - i64.const 9223372036854775807 - i64.and - local.tee $3 - local.get $0 - i64.reinterpret_f64 - i64.const 9223372036854775807 - i64.and - local.tee $2 - i64.gt_u - if - local.get $2 - local.get $3 - local.set $2 - local.set $3 - end - local.get $3 - f64.reinterpret_i64 - local.set $1 - local.get $3 - i64.const 52 - i64.shr_u - i32.wrap_i64 - local.tee $5 - i32.const 2047 - i32.eq - if + (local $12 f64) + (local $13 f64) + block $__inlined_func$~lib/math/NativeMath.hypot (result f64) local.get $1 - return - end - local.get $2 - f64.reinterpret_i64 - local.set $0 - local.get $3 - i64.eqz - local.get $2 - i64.const 52 - i64.shr_u - i32.wrap_i64 - local.tee $7 - i32.const 2047 - i32.eq - i32.or - if + i64.reinterpret_f64 + i64.const 9223372036854775807 + i64.and + local.tee $5 local.get $0 - return - end - local.get $7 - local.get $5 - i32.sub - i32.const 64 - i32.gt_s - if + i64.reinterpret_f64 + i64.const 9223372036854775807 + i64.and + local.tee $4 + i64.gt_u + if + local.get $4 + local.get $5 + local.set $4 + local.set $5 + end + local.get $5 + f64.reinterpret_i64 + local.tee $1 + local.get $5 + i64.const 52 + i64.shr_u + i32.wrap_i64 + local.tee $8 + i32.const 2047 + i32.eq + br_if $__inlined_func$~lib/math/NativeMath.hypot + drop + local.get $4 + f64.reinterpret_i64 + local.tee $0 + local.get $5 + i64.eqz + local.get $4 + i64.const 52 + i64.shr_u + i32.wrap_i64 + local.tee $10 + i32.const 2047 + i32.eq + i32.or + br_if $__inlined_func$~lib/math/NativeMath.hypot + drop local.get $0 local.get $1 f64.add - return - end - f64.const 1 - local.set $6 - local.get $7 - i32.const 1533 - i32.gt_u - if (result f64) - f64.const 5260135901548373507240989e186 - local.set $6 - local.get $1 - f64.const 1.90109156629516e-211 - f64.mul - local.set $1 - local.get $0 - f64.const 1.90109156629516e-211 - f64.mul - else - local.get $5 - i32.const 573 - i32.lt_u + local.get $10 + local.get $8 + i32.sub + i32.const 64 + i32.gt_s + br_if $__inlined_func$~lib/math/NativeMath.hypot + drop + f64.const 1 + local.set $9 + local.get $10 + i32.const 1533 + i32.gt_u if (result f64) - f64.const 1.90109156629516e-211 - local.set $6 - local.get $1 f64.const 5260135901548373507240989e186 + local.set $9 + local.get $1 + f64.const 1.90109156629516e-211 f64.mul local.set $1 local.get $0 - f64.const 5260135901548373507240989e186 + f64.const 1.90109156629516e-211 f64.mul else - local.get $0 + local.get $8 + i32.const 573 + i32.lt_u + if (result f64) + f64.const 1.90109156629516e-211 + local.set $9 + local.get $1 + f64.const 5260135901548373507240989e186 + f64.mul + local.set $1 + local.get $0 + f64.const 5260135901548373507240989e186 + f64.mul + else + local.get $0 + end end + local.tee $11 + local.get $11 + local.get $11 + f64.const 134217729 + f64.mul + local.tee $0 + f64.sub + local.get $0 + f64.add + local.tee $12 + f64.sub + local.set $7 + local.get $1 + local.get $1 + local.get $1 + f64.const 134217729 + f64.mul + local.tee $0 + f64.sub + local.get $0 + f64.add + local.tee $13 + f64.sub + local.set $0 + local.get $9 + local.get $13 + local.get $13 + f64.mul + local.get $1 + local.get $1 + f64.mul + local.tee $1 + f64.sub + local.get $13 + local.get $13 + f64.add + local.get $0 + f64.add + local.get $0 + f64.mul + f64.add + local.get $12 + local.get $12 + f64.mul + local.get $11 + local.get $11 + f64.mul + local.tee $0 + f64.sub + local.get $12 + local.get $12 + f64.add + local.get $7 + f64.add + local.get $7 + f64.mul + f64.add + f64.add + local.get $1 + f64.add + local.get $0 + f64.add + f64.sqrt + f64.mul end - local.tee $10 - local.get $10 - local.get $10 - f64.const 134217729 - f64.mul - local.tee $0 - f64.sub - local.get $0 - f64.add - local.tee $9 - f64.sub - local.set $0 - local.get $1 - local.get $1 - local.get $1 - f64.const 134217729 - f64.mul - local.tee $8 - f64.sub - local.get $8 - f64.add - local.tee $8 - f64.sub - local.set $11 - local.get $6 - local.get $8 - local.get $8 - f64.mul - local.get $1 - local.get $1 - f64.mul - local.tee $1 - f64.sub - local.get $8 - local.get $8 - f64.add - local.get $11 - f64.add - local.get $11 - f64.mul - f64.add - local.get $9 - local.get $9 - f64.mul - local.get $10 - local.get $10 - f64.mul - local.tee $6 - f64.sub - local.get $9 - local.get $9 - f64.add - local.get $0 - f64.add - local.get $0 - f64.mul - f64.add - f64.add - local.get $1 - f64.add - local.get $6 - f64.add - f64.sqrt - f64.mul + local.get $2 + local.get $3 + call $std/math/check ) (func $std/math/test_hypotf (param $0 f32) (param $1 f32) (param $2 f32) (param $3 f32) (result i32) (local $4 i32) @@ -6130,360 +6149,375 @@ local.get $3 call $std/math/check ) - (func $~lib/math/NativeMath.log10 (param $0 f64) (result f64) - (local $1 i32) - (local $2 i64) - (local $3 i32) - (local $4 f64) - (local $5 f64) - (local $6 f64) + (func $std/math/test_log10 (param $0 f64) (param $1 f64) (param $2 f64) (result i32) + (local $3 f64) + (local $4 i32) + (local $5 i64) + (local $6 i32) (local $7 f64) (local $8 f64) - local.get $0 - i64.reinterpret_f64 - local.tee $2 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.tee $1 - i32.const 31 - i32.shr_u - local.get $1 - i32.const 1048576 - i32.lt_u - i32.or - if - local.get $2 - i64.const 1 - i64.shl - i64.eqz - if - f64.const -1 - local.get $0 - local.get $0 - f64.mul - f64.div - return - end - local.get $1 - i32.const 31 - i32.shr_u - if - local.get $0 - local.get $0 - f64.sub - f64.const 0 - f64.div - return - end - i32.const -54 - local.set $3 + (local $9 f64) + (local $10 f64) + (local $11 f64) + block $__inlined_func$~lib/math/NativeMath.log10 (result f64) local.get $0 - f64.const 18014398509481984 - f64.mul + local.tee $3 i64.reinterpret_f64 - local.tee $2 + local.tee $5 i64.const 32 i64.shr_u i32.wrap_i64 - local.set $1 - else - local.get $1 - i32.const 2146435072 - i32.ge_u + local.tee $4 + i32.const 31 + i32.shr_u + local.get $4 + i32.const 1048576 + i32.lt_u + i32.or if - local.get $0 - return - else - local.get $2 - i64.const 32 + f64.const -1 + local.get $3 + local.get $3 + f64.mul + f64.div + local.get $5 + i64.const 1 i64.shl i64.eqz - local.get $1 - i32.const 1072693248 - i32.eq - i32.and + br_if $__inlined_func$~lib/math/NativeMath.log10 + drop + local.get $3 + local.get $3 + f64.sub + f64.const 0 + f64.div + local.get $4 + i32.const 31 + i32.shr_u + br_if $__inlined_func$~lib/math/NativeMath.log10 + drop + i32.const -54 + local.set $6 + local.get $3 + f64.const 18014398509481984 + f64.mul + i64.reinterpret_f64 + local.tee $5 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $4 + else + local.get $4 + i32.const 2146435072 + i32.ge_u if + local.get $3 + br $__inlined_func$~lib/math/NativeMath.log10 + else f64.const 0 - return + local.get $5 + i64.const 32 + i64.shl + i64.eqz + local.get $4 + i32.const 1072693248 + i32.eq + i32.and + br_if $__inlined_func$~lib/math/NativeMath.log10 + drop end end + local.get $5 + i64.const 4294967295 + i64.and + local.get $4 + i32.const 614242 + i32.add + local.tee $4 + i32.const 1048575 + i32.and + i32.const 1072079006 + i32.add + i64.extend_i32_u + i64.const 32 + i64.shl + i64.or + f64.reinterpret_i64 + f64.const 1 + f64.sub + local.tee $3 + f64.const 0.5 + f64.mul + local.get $3 + f64.mul + local.set $7 + local.get $3 + local.get $3 + f64.const 2 + f64.add + f64.div + local.tee $8 + local.get $8 + f64.mul + local.tee $9 + local.get $9 + f64.mul + local.set $10 + local.get $3 + local.get $3 + local.get $7 + f64.sub + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.tee $3 + f64.sub + local.get $7 + f64.sub + local.get $8 + local.get $7 + local.get $9 + local.get $10 + local.get $10 + local.get $10 + f64.const 0.14798198605116586 + f64.mul + f64.const 0.1818357216161805 + f64.add + f64.mul + f64.const 0.2857142874366239 + f64.add + f64.mul + f64.const 0.6666666666666735 + f64.add + f64.mul + local.get $10 + local.get $10 + local.get $10 + f64.const 0.15313837699209373 + f64.mul + f64.const 0.22222198432149784 + f64.add + f64.mul + f64.const 0.3999999999940942 + f64.add + f64.mul + f64.add + f64.add + f64.mul + f64.add + local.set $7 + local.get $4 + i32.const 20 + i32.shr_u + i32.const 1023 + i32.sub + local.get $6 + i32.add + f64.convert_i32_s + local.tee $8 + f64.const 0.30102999566361177 + f64.mul + local.tee $9 + local.get $3 + f64.const 0.4342944818781689 + f64.mul + local.tee $10 + f64.add + local.set $11 + local.get $8 + f64.const 3.694239077158931e-13 + f64.mul + local.get $7 + local.get $3 + f64.add + f64.const 2.5082946711645275e-11 + f64.mul + f64.add + local.get $7 + f64.const 0.4342944818781689 + f64.mul + f64.add + local.get $9 + local.get $11 + f64.sub + local.get $10 + f64.add + f64.add + local.get $11 + f64.add end - local.get $2 - i64.const 4294967295 - i64.and - local.get $1 - i32.const 614242 - i32.add - local.tee $1 - i32.const 1048575 - i32.and - i32.const 1072079006 - i32.add - i64.extend_i32_u - i64.const 32 - i64.shl - i64.or - f64.reinterpret_i64 - f64.const 1 - f64.sub - local.tee $0 - f64.const 0.5 - f64.mul - local.get $0 - f64.mul - local.set $4 - local.get $0 - local.get $0 - f64.const 2 - f64.add - f64.div - local.tee $5 - local.get $5 - f64.mul - local.tee $6 - local.get $6 - f64.mul - local.set $7 - local.get $0 - local.get $0 - local.get $4 - f64.sub - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.tee $0 - f64.sub - local.get $4 - f64.sub - local.get $5 - local.get $4 - local.get $6 - local.get $7 - local.get $7 - local.get $7 - f64.const 0.14798198605116586 - f64.mul - f64.const 0.1818357216161805 - f64.add - f64.mul - f64.const 0.2857142874366239 - f64.add - f64.mul - f64.const 0.6666666666666735 - f64.add - f64.mul - local.get $7 - local.get $7 - local.get $7 - f64.const 0.15313837699209373 - f64.mul - f64.const 0.22222198432149784 - f64.add - f64.mul - f64.const 0.3999999999940942 - f64.add - f64.mul - f64.add - f64.add - f64.mul - f64.add - local.set $4 local.get $1 - i32.const 20 - i32.shr_u - i32.const 1023 - i32.sub - local.get $3 - i32.add - f64.convert_i32_s - local.tee $5 - f64.const 0.30102999566361177 - f64.mul - local.tee $6 - local.get $0 - f64.const 0.4342944818781689 - f64.mul - local.tee $7 - f64.add - local.set $8 - local.get $5 - f64.const 3.694239077158931e-13 - f64.mul - local.get $4 - local.get $0 - f64.add - f64.const 2.5082946711645275e-11 - f64.mul - f64.add - local.get $4 - f64.const 0.4342944818781689 - f64.mul - f64.add - local.get $6 - local.get $8 - f64.sub - local.get $7 - f64.add - f64.add - local.get $8 - f64.add + local.get $2 + call $std/math/check + if (result i32) + local.get $0 + call $~lib/bindings/Math/log10 + local.get $1 + local.get $2 + call $std/math/check + else + i32.const 0 + end ) - (func $~lib/math/NativeMathf.log10 (param $0 f32) (result f32) - (local $1 i32) - (local $2 f32) - (local $3 f32) - (local $4 f32) - (local $5 i32) + (func $std/math/test_log10f (param $0 f32) (param $1 f32) (param $2 f32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 f32) (local $6 f32) (local $7 f32) - local.get $0 - i32.reinterpret_f32 - local.tee $1 - i32.const 31 - i32.shr_u - local.get $1 - i32.const 8388608 - i32.lt_u - i32.or - if - local.get $1 - i32.const 1 - i32.shl - i32.eqz + (local $8 f32) + (local $9 f32) + block $__inlined_func$~lib/math/NativeMathf.log10 (result f32) + local.get $0 + i32.reinterpret_f32 + local.tee $3 + i32.const 31 + i32.shr_u + local.get $3 + i32.const 8388608 + i32.lt_u + i32.or if f32.const -1 local.get $0 local.get $0 f32.mul f32.div - return - end - local.get $1 - i32.const 31 - i32.shr_u - if + local.get $3 + i32.const 1 + i32.shl + i32.eqz + br_if $__inlined_func$~lib/math/NativeMathf.log10 + drop local.get $0 local.get $0 f32.sub f32.const 0 f32.div - return - end - i32.const -25 - local.set $5 - local.get $0 - f32.const 33554432 - f32.mul - i32.reinterpret_f32 - local.set $1 - else - local.get $1 - i32.const 2139095040 - i32.ge_u - if + local.get $3 + i32.const 31 + i32.shr_u + br_if $__inlined_func$~lib/math/NativeMathf.log10 + drop + i32.const -25 + local.set $4 local.get $0 - return + f32.const 33554432 + f32.mul + i32.reinterpret_f32 + local.set $3 else - local.get $1 - i32.const 1065353216 - i32.eq + local.get $3 + i32.const 2139095040 + i32.ge_u if + local.get $0 + br $__inlined_func$~lib/math/NativeMathf.log10 + else f32.const 0 - return + local.get $3 + i32.const 1065353216 + i32.eq + br_if $__inlined_func$~lib/math/NativeMathf.log10 + drop end end + local.get $3 + i32.const 4913933 + i32.add + local.tee $3 + i32.const 8388607 + i32.and + i32.const 1060439283 + i32.add + f32.reinterpret_i32 + f32.const 1 + f32.sub + local.tee $7 + local.get $7 + f32.const 2 + f32.add + f32.div + local.tee $5 + local.get $5 + f32.mul + local.tee $6 + local.get $6 + f32.mul + local.set $0 + local.get $3 + i32.const 23 + i32.shr_u + i32.const 127 + i32.sub + local.get $4 + i32.add + f32.convert_i32_s + local.tee $8 + f32.const 7.903415166765626e-07 + f32.mul + local.get $7 + local.get $7 + local.get $7 + f32.const 0.5 + f32.mul + local.get $7 + f32.mul + local.tee $9 + f32.sub + i32.reinterpret_f32 + i32.const -4096 + i32.and + f32.reinterpret_i32 + local.tee $7 + f32.sub + local.get $9 + f32.sub + local.get $5 + local.get $9 + local.get $6 + local.get $0 + f32.const 0.2849878668785095 + f32.mul + f32.const 0.6666666269302368 + f32.add + f32.mul + local.get $0 + local.get $0 + f32.const 0.24279078841209412 + f32.mul + f32.const 0.40000972151756287 + f32.add + f32.mul + f32.add + f32.add + f32.mul + f32.add + local.tee $0 + local.get $7 + f32.add + f32.const -3.168997136526741e-05 + f32.mul + f32.add + local.get $0 + f32.const 0.434326171875 + f32.mul + f32.add + local.get $7 + f32.const 0.434326171875 + f32.mul + f32.add + local.get $8 + f32.const 0.3010292053222656 + f32.mul + f32.add end local.get $1 - i32.const 4913933 - i32.add - local.tee $1 - i32.const 8388607 - i32.and - i32.const 1060439283 - i32.add - f32.reinterpret_i32 - f32.const 1 - f32.sub - local.tee $4 - local.get $4 - f32.const 2 - f32.add - f32.div - local.tee $2 - local.get $2 - f32.mul - local.tee $3 - local.get $3 - f32.mul - local.set $0 - local.get $1 - i32.const 23 - i32.shr_u - i32.const 127 - i32.sub - local.get $5 - i32.add - f32.convert_i32_s - local.tee $6 - f32.const 7.903415166765626e-07 - f32.mul - local.get $4 - local.get $4 - local.get $4 - f32.const 0.5 - f32.mul - local.get $4 - f32.mul - local.tee $7 - f32.sub - i32.reinterpret_f32 - i32.const -4096 - i32.and - f32.reinterpret_i32 - local.tee $4 - f32.sub - local.get $7 - f32.sub local.get $2 - local.get $7 - local.get $3 - local.get $0 - f32.const 0.2849878668785095 - f32.mul - f32.const 0.6666666269302368 - f32.add - f32.mul - local.get $0 - local.get $0 - f32.const 0.24279078841209412 - f32.mul - f32.const 0.40000972151756287 - f32.add - f32.mul - f32.add - f32.add - f32.mul - f32.add - local.tee $0 - local.get $4 - f32.add - f32.const -3.168997136526741e-05 - f32.mul - f32.add - local.get $0 - f32.const 0.434326171875 - f32.mul - f32.add - local.get $4 - f32.const 0.434326171875 - f32.mul - f32.add - local.get $6 - f32.const 0.3010292053222656 - f32.mul - f32.add + call $std/math/check ) (func $~lib/math/NativeMath.log2 (param $0 f64) (result f64) (local $1 i64) @@ -7008,89 +7042,91 @@ i64.or end local.set $4 - block $folding-inner0 - loop $while-continue|0 - local.get $8 - local.get $9 - i64.lt_s - if + loop $while-continue|0 + local.get $8 + local.get $9 + i64.lt_s + if + local.get $3 + local.get $4 + i64.ge_u + if (result i64) + local.get $0 + f64.const 0 + f64.mul + local.get $3 + local.get $4 + i64.eq + br_if $__inlined_func$~lib/math/NativeMath.mod + drop local.get $3 local.get $4 - i64.ge_u - if (result i64) - local.get $3 - local.get $4 - i64.eq - br_if $folding-inner0 - local.get $3 - local.get $4 - i64.sub - else - local.get $3 - end - i64.const 1 - i64.shl - local.set $3 - local.get $9 - i64.const 1 i64.sub - local.set $9 - br $while-continue|0 + else + local.get $3 end + i64.const 1 + i64.shl + local.set $3 + local.get $9 + i64.const 1 + i64.sub + local.set $9 + br $while-continue|0 end - local.get $9 + end + local.get $9 + local.get $3 + local.get $4 + i64.ge_u + if + local.get $0 + f64.const 0 + f64.mul local.get $3 local.get $4 - i64.ge_u - if - local.get $3 - local.get $4 - i64.eq - br_if $folding-inner0 - local.get $3 - local.get $4 - i64.sub - local.set $3 - end + i64.eq + br_if $__inlined_func$~lib/math/NativeMath.mod + drop local.get $3 - i64.const 11 - i64.shl - i64.clz - local.tee $5 + local.get $4 i64.sub - local.set $4 - local.get $3 - local.get $5 - i64.shl local.set $3 + end + local.get $3 + i64.const 11 + i64.shl + i64.clz + local.tee $5 + i64.sub + local.set $4 + local.get $3 + local.get $5 + i64.shl + local.set $3 + local.get $4 + i64.const 0 + i64.gt_s + if (result i64) + local.get $3 + i64.const 4503599627370496 + i64.sub local.get $4 - i64.const 0 - i64.gt_s - if (result i64) - local.get $3 - i64.const 4503599627370496 - i64.sub - local.get $4 - i64.const 52 - i64.shl - i64.or - else - local.get $3 - i64.const 1 - local.get $4 - i64.sub - i64.shr_u - end - local.get $6 - i64.const 63 + i64.const 52 i64.shl i64.or - f64.reinterpret_i64 - br $__inlined_func$~lib/math/NativeMath.mod + else + local.get $3 + i64.const 1 + local.get $4 + i64.sub + i64.shr_u end - local.get $0 - f64.const 0 - f64.mul + local.get $6 + i64.const 63 + i64.shl + i64.or + f64.reinterpret_i64 end local.get $2 f64.const 0 @@ -7225,87 +7261,91 @@ i32.shl end local.set $3 - block $folding-inner0 - loop $while-continue|0 - local.get $6 - local.get $7 - i32.lt_s - if + loop $while-continue|0 + local.get $6 + local.get $7 + i32.lt_s + if + local.get $2 + local.get $3 + i32.ge_u + if (result i32) local.get $2 local.get $3 - i32.ge_u - if (result i32) - local.get $2 - local.get $3 - i32.eq - br_if $folding-inner0 - local.get $2 - local.get $3 - i32.sub - else - local.get $2 + i32.eq + if + local.get $0 + f32.const 0 + f32.mul + return end - i32.const 1 - i32.shl - local.set $2 - local.get $7 - i32.const 1 + local.get $2 + local.get $3 i32.sub - local.set $7 - br $while-continue|0 + else + local.get $2 end + i32.const 1 + i32.shl + local.set $2 + local.get $7 + i32.const 1 + i32.sub + local.set $7 + br $while-continue|0 end - local.get $7 + end + local.get $7 + local.get $2 + local.get $3 + i32.ge_u + if local.get $2 local.get $3 - i32.ge_u + i32.eq if - local.get $2 - local.get $3 - i32.eq - br_if $folding-inner0 - local.get $2 - local.get $3 - i32.sub - local.set $2 + local.get $0 + f32.const 0 + f32.mul + return end local.get $2 - i32.const 8 - i32.shl - i32.clz - local.tee $4 + local.get $3 i32.sub - local.set $3 - local.get $2 - local.get $4 - i32.shl local.set $2 + end + local.get $2 + i32.const 8 + i32.shl + i32.clz + local.tee $4 + i32.sub + local.set $3 + local.get $2 + local.get $4 + i32.shl + local.set $2 + local.get $3 + i32.const 0 + i32.gt_s + if (result i32) + local.get $2 + i32.const 8388608 + i32.sub local.get $3 - i32.const 0 - i32.gt_s - if (result i32) - local.get $2 - i32.const 8388608 - i32.sub - local.get $3 - i32.const 23 - i32.shl - i32.or - else - local.get $2 - i32.const 1 - local.get $3 - i32.sub - i32.shr_u - end - local.get $5 + i32.const 23 + i32.shl i32.or - f32.reinterpret_i32 - return + else + local.get $2 + i32.const 1 + local.get $3 + i32.sub + i32.shr_u end - local.get $0 - f32.const 0 - f32.mul + local.get $5 + i32.or + f32.reinterpret_i32 ) (func $~lib/math/NativeMath.pow (param $0 f64) (param $1 f64) (result f64) (local $2 i64) @@ -9844,6 +9884,16 @@ i32.const 63 i32.and i64.extend_i32_s + local.set $5 + local.get $7 + i32.const 6 + i32.shr_s + i32.const 3 + i32.shl + i32.const 5632 + i32.add + local.tee $7 + i64.load offset=8 local.set $8 f64.const 8.515303950216386e-20 local.get $0 @@ -9857,45 +9907,36 @@ i64.extend_i32_s local.tee $9 local.get $7 - i32.const 6 - i32.shr_s - i32.const 3 - i32.shl - i32.const 5632 - i32.add - local.tee $1 i64.load - local.get $8 + local.get $5 i64.shl - local.get $1 - i64.load offset=8 - local.tee $5 - i64.const 64 local.get $8 + i64.const 64 + local.get $5 i64.sub i64.shr_u i64.or i64.mul - local.get $8 + local.get $5 i64.const 32 i64.gt_u if (result i64) - local.get $5 local.get $8 + local.get $5 i64.const 32 i64.sub i64.shl - local.get $1 + local.get $7 i64.load offset=16 i64.const 96 - local.get $8 + local.get $5 i64.sub i64.shr_u i64.or else - local.get $5 - i64.const 32 local.get $8 + i64.const 32 + local.get $5 i64.sub i64.shr_u end @@ -10808,6 +10849,16 @@ i32.const 63 i32.and i64.extend_i32_s + local.set $5 + local.get $7 + i32.const 6 + i32.shr_s + i32.const 3 + i32.shl + i32.const 5632 + i32.add + local.tee $7 + i64.load offset=8 local.set $8 f64.const 8.515303950216386e-20 local.get $0 @@ -10821,45 +10872,36 @@ i64.extend_i32_s local.tee $9 local.get $7 - i32.const 6 - i32.shr_s - i32.const 3 - i32.shl - i32.const 5632 - i32.add - local.tee $1 i64.load - local.get $8 + local.get $5 i64.shl - local.get $1 - i64.load offset=8 - local.tee $5 - i64.const 64 local.get $8 + i64.const 64 + local.get $5 i64.sub i64.shr_u i64.or i64.mul - local.get $8 + local.get $5 i64.const 32 i64.gt_u if (result i64) - local.get $5 local.get $8 + local.get $5 i64.const 32 i64.sub i64.shl - local.get $1 + local.get $7 i64.load offset=16 i64.const 96 - local.get $8 + local.get $5 i64.sub i64.shr_u i64.or else - local.get $5 - i64.const 32 local.get $8 + i64.const 32 + local.get $5 i64.sub i64.shr_u end @@ -11660,8 +11702,8 @@ end ) (func $~lib/math/NativeMath.imul (param $0 f64) (param $1 f64) (result f64) - (local $2 i64) - (local $3 i32) + (local $2 i32) + (local $3 i64) (local $4 f64) (local $5 i64) local.get $0 @@ -11678,7 +11720,7 @@ end local.get $0 i64.reinterpret_f64 - local.tee $2 + local.tee $3 i64.const 52 i64.shr_u i64.const 2047 @@ -11695,7 +11737,7 @@ i64.le_u if (result i32) i32.const 0 - local.get $2 + local.get $3 i64.const 4503599627370495 i64.and i64.const 4503599627370496 @@ -11707,10 +11749,10 @@ i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $3 + local.tee $2 i32.sub - local.get $3 local.get $2 + local.get $3 i64.const 63 i64.shr_u i32.wrap_i64 @@ -11721,7 +11763,7 @@ end local.get $1 i64.reinterpret_f64 - local.tee $2 + local.tee $3 i64.const 52 i64.shr_u i64.const 2047 @@ -11738,7 +11780,7 @@ i64.le_u if (result i32) i32.const 0 - local.get $2 + local.get $3 i64.const 4503599627370495 i64.and i64.const 4503599627370496 @@ -11750,10 +11792,10 @@ i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $3 + local.tee $2 i32.sub - local.get $3 local.get $2 + local.get $3 i64.const 63 i64.shr_u i32.wrap_i64 @@ -18000,10 +18042,9 @@ end f32.const -8.066848754882812 f32.const 4.535662651062012 - call $~lib/math/NativeMathf.atan2 f32.const -1.0585895776748657 f32.const -0.22352588176727295 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18015,10 +18056,9 @@ end f32.const 4.345239639282227 f32.const -8.887990951538086 - call $~lib/math/NativeMathf.atan2 f32.const 2.686873435974121 f32.const 0.09464472532272339 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18030,10 +18070,9 @@ end f32.const -8.381433486938477 f32.const -2.7636072635650635 - call $~lib/math/NativeMathf.atan2 f32.const -1.8893001079559326 f32.const -0.21941901743412018 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18045,10 +18084,9 @@ end f32.const -6.531673431396484 f32.const 4.567535400390625 - call $~lib/math/NativeMathf.atan2 f32.const -0.9605468511581421 f32.const 0.46015575528144836 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18060,10 +18098,9 @@ end f32.const 9.267057418823242 f32.const 4.811392307281494 - call $~lib/math/NativeMathf.atan2 f32.const 1.0919123888015747 f32.const -0.05708503723144531 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18075,10 +18112,9 @@ end f32.const -6.450045585632324 f32.const 0.6620717644691467 - call $~lib/math/NativeMathf.atan2 f32.const -1.4685084819793701 f32.const 0.19611206650733948 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18090,10 +18126,9 @@ end f32.const 7.858890056610107 f32.const 0.052154526114463806 - call $~lib/math/NativeMathf.atan2 f32.const 1.5641601085662842 f32.const 0.48143187165260315 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18105,10 +18140,9 @@ end f32.const -0.7920545339584351 f32.const 7.676402568817139 - call $~lib/math/NativeMathf.atan2 f32.const -0.10281659662723541 f32.const -0.4216274917125702 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18120,10 +18154,9 @@ end f32.const 0.6157026886940002 f32.const 2.0119025707244873 - call $~lib/math/NativeMathf.atan2 f32.const 0.29697975516319275 f32.const 0.2322007566690445 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18135,10 +18168,9 @@ end f32.const -0.5587586760520935 f32.const 0.03223983198404312 - call $~lib/math/NativeMathf.atan2 f32.const -1.5131611824035645 f32.const 0.16620726883411407 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18150,10 +18182,9 @@ end f32.const 0 f32.const 0 - call $~lib/math/NativeMathf.atan2 f32.const 0 f32.const 0 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18165,10 +18196,9 @@ end f32.const 0 f32.const -0 - call $~lib/math/NativeMathf.atan2 f32.const 3.1415927410125732 f32.const 0.3666777014732361 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18180,10 +18210,9 @@ end f32.const 0 f32.const -1 - call $~lib/math/NativeMathf.atan2 f32.const 3.1415927410125732 f32.const 0.3666777014732361 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18195,10 +18224,9 @@ end f32.const 0 f32.const -inf - call $~lib/math/NativeMathf.atan2 f32.const 3.1415927410125732 f32.const 0.3666777014732361 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18210,10 +18238,9 @@ end f32.const 0 f32.const 1 - call $~lib/math/NativeMathf.atan2 f32.const 0 f32.const 0 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18225,10 +18252,9 @@ end f32.const 0 f32.const inf - call $~lib/math/NativeMathf.atan2 f32.const 0 f32.const 0 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18240,10 +18266,9 @@ end f32.const -0 f32.const 0 - call $~lib/math/NativeMathf.atan2 f32.const -0 f32.const 0 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18255,10 +18280,9 @@ end f32.const -0 f32.const -0 - call $~lib/math/NativeMathf.atan2 f32.const -3.1415927410125732 f32.const -0.3666777014732361 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18270,10 +18294,9 @@ end f32.const -0 f32.const -1 - call $~lib/math/NativeMathf.atan2 f32.const -3.1415927410125732 f32.const -0.3666777014732361 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18285,10 +18308,9 @@ end f32.const -0 f32.const -inf - call $~lib/math/NativeMathf.atan2 f32.const -3.1415927410125732 f32.const -0.3666777014732361 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18300,10 +18322,9 @@ end f32.const -0 f32.const 1 - call $~lib/math/NativeMathf.atan2 f32.const -0 f32.const 0 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18315,10 +18336,9 @@ end f32.const -0 f32.const inf - call $~lib/math/NativeMathf.atan2 f32.const -0 f32.const 0 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18330,10 +18350,9 @@ end f32.const -1 f32.const 0 - call $~lib/math/NativeMathf.atan2 f32.const -1.5707963705062866 f32.const -0.3666777014732361 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18345,10 +18364,9 @@ end f32.const -1 f32.const -0 - call $~lib/math/NativeMathf.atan2 f32.const -1.5707963705062866 f32.const -0.3666777014732361 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18360,10 +18378,9 @@ end f32.const 1 f32.const 0 - call $~lib/math/NativeMathf.atan2 f32.const 1.5707963705062866 f32.const 0.3666777014732361 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18375,10 +18392,9 @@ end f32.const 1 f32.const -0 - call $~lib/math/NativeMathf.atan2 f32.const 1.5707963705062866 f32.const 0.3666777014732361 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18390,10 +18406,9 @@ end f32.const -1 f32.const inf - call $~lib/math/NativeMathf.atan2 f32.const -0 f32.const 0 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18405,10 +18420,9 @@ end f32.const 1 f32.const inf - call $~lib/math/NativeMathf.atan2 f32.const 0 f32.const 0 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18420,10 +18434,9 @@ end f32.const -1 f32.const -inf - call $~lib/math/NativeMathf.atan2 f32.const -3.1415927410125732 f32.const -0.3666777014732361 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18435,10 +18448,9 @@ end f32.const 1 f32.const -inf - call $~lib/math/NativeMathf.atan2 f32.const 3.1415927410125732 f32.const 0.3666777014732361 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18450,10 +18462,9 @@ end f32.const inf f32.const 0 - call $~lib/math/NativeMathf.atan2 f32.const 1.5707963705062866 f32.const 0.3666777014732361 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18465,10 +18476,9 @@ end f32.const -inf f32.const 0 - call $~lib/math/NativeMathf.atan2 f32.const -1.5707963705062866 f32.const -0.3666777014732361 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18480,10 +18490,9 @@ end f32.const inf f32.const inf - call $~lib/math/NativeMathf.atan2 f32.const 0.7853981852531433 f32.const 0.3666777014732361 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18495,10 +18504,9 @@ end f32.const inf f32.const -inf - call $~lib/math/NativeMathf.atan2 f32.const 2.356194496154785 f32.const 0.02500828728079796 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18510,10 +18518,9 @@ end f32.const -inf f32.const inf - call $~lib/math/NativeMathf.atan2 f32.const -0.7853981852531433 f32.const -0.3666777014732361 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18525,10 +18532,9 @@ end f32.const -inf f32.const -inf - call $~lib/math/NativeMathf.atan2 f32.const -2.356194496154785 f32.const -0.02500828728079796 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18540,10 +18546,9 @@ end f32.const 5.877471754111438e-39 f32.const 1 - call $~lib/math/NativeMathf.atan2 f32.const 5.877471754111438e-39 f32.const 0 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18555,10 +18560,9 @@ end f32.const 1 f32.const 1701411834604692317316873e14 - call $~lib/math/NativeMathf.atan2 f32.const 5.877471754111438e-39 f32.const 0 - call $std/math/check + call $std/math/test_atan2f i32.eqz if i32.const 0 @@ -18569,19 +18573,9 @@ unreachable end f64.const -8.06684839057968 - call $~lib/math/NativeMath.cbrt f64.const -2.0055552545020245 f64.const 0.46667951345443726 - call $std/math/check - if (result i32) - f64.const -8.06684839057968 - call $~lib/bindings/Math/cbrt - f64.const -2.0055552545020245 - f64.const 0.46667951345443726 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_cbrt i32.eqz if i32.const 0 @@ -18592,19 +18586,9 @@ unreachable end f64.const 4.345239849338305 - call $~lib/math/NativeMath.cbrt f64.const 1.6318162410515635 f64.const -0.08160271495580673 - call $std/math/check - if (result i32) - f64.const 4.345239849338305 - call $~lib/bindings/Math/cbrt - f64.const 1.6318162410515635 - f64.const -0.08160271495580673 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_cbrt i32.eqz if i32.const 0 @@ -18615,19 +18599,9 @@ unreachable end f64.const -8.38143342755525 - call $~lib/math/NativeMath.cbrt f64.const -2.031293910673361 f64.const -0.048101816326379776 - call $std/math/check - if (result i32) - f64.const -8.38143342755525 - call $~lib/bindings/Math/cbrt - f64.const -2.031293910673361 - f64.const -0.048101816326379776 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_cbrt i32.eqz if i32.const 0 @@ -18638,19 +18612,9 @@ unreachable end f64.const -6.531673581913484 - call $~lib/math/NativeMath.cbrt f64.const -1.8692820012204925 f64.const 0.08624018728733063 - call $std/math/check - if (result i32) - f64.const -6.531673581913484 - call $~lib/bindings/Math/cbrt - f64.const -1.8692820012204925 - f64.const 0.08624018728733063 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_cbrt i32.eqz if i32.const 0 @@ -18661,19 +18625,9 @@ unreachable end f64.const 9.267056966972586 - call $~lib/math/NativeMath.cbrt f64.const 2.100457720859702 f64.const -0.2722989022731781 - call $std/math/check - if (result i32) - f64.const 9.267056966972586 - call $~lib/bindings/Math/cbrt - f64.const 2.100457720859702 - f64.const -0.2722989022731781 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_cbrt i32.eqz if i32.const 0 @@ -18684,19 +18638,9 @@ unreachable end f64.const 0.6619858980995045 - call $~lib/math/NativeMath.cbrt f64.const 0.8715311470455973 f64.const 0.4414918124675751 - call $std/math/check - if (result i32) - f64.const 0.6619858980995045 - call $~lib/bindings/Math/cbrt - f64.const 0.8715311470455973 - f64.const 0.4414918124675751 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_cbrt i32.eqz if i32.const 0 @@ -18707,19 +18651,9 @@ unreachable end f64.const -0.4066039223853553 - call $~lib/math/NativeMath.cbrt f64.const -0.740839030300223 f64.const 0.016453813761472702 - call $std/math/check - if (result i32) - f64.const -0.4066039223853553 - call $~lib/bindings/Math/cbrt - f64.const -0.740839030300223 - f64.const 0.016453813761472702 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_cbrt i32.eqz if i32.const 0 @@ -18730,19 +18664,9 @@ unreachable end f64.const 0.5617597462207241 - call $~lib/math/NativeMath.cbrt f64.const 0.8251195400559286 f64.const 0.30680638551712036 - call $std/math/check - if (result i32) - f64.const 0.5617597462207241 - call $~lib/bindings/Math/cbrt - f64.const 0.8251195400559286 - f64.const 0.30680638551712036 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_cbrt i32.eqz if i32.const 0 @@ -18753,19 +18677,9 @@ unreachable end f64.const 0.7741522965913037 - call $~lib/math/NativeMath.cbrt f64.const 0.9182102478959914 f64.const 0.06543998420238495 - call $std/math/check - if (result i32) - f64.const 0.7741522965913037 - call $~lib/bindings/Math/cbrt - f64.const 0.9182102478959914 - f64.const 0.06543998420238495 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_cbrt i32.eqz if i32.const 0 @@ -18776,19 +18690,9 @@ unreachable end f64.const -0.6787637026394024 - call $~lib/math/NativeMath.cbrt f64.const -0.8788326906580094 f64.const -0.2016713172197342 - call $std/math/check - if (result i32) - f64.const -0.6787637026394024 - call $~lib/bindings/Math/cbrt - f64.const -0.8788326906580094 - f64.const -0.2016713172197342 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_cbrt i32.eqz if i32.const 0 @@ -18799,19 +18703,9 @@ unreachable end f64.const nan:0x8000000000000 - call $~lib/math/NativeMath.cbrt f64.const nan:0x8000000000000 f64.const 0 - call $std/math/check - if (result i32) - f64.const nan:0x8000000000000 - call $~lib/bindings/Math/cbrt - f64.const nan:0x8000000000000 - f64.const 0 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_cbrt i32.eqz if i32.const 0 @@ -18822,19 +18716,9 @@ unreachable end f64.const inf - call $~lib/math/NativeMath.cbrt f64.const inf f64.const 0 - call $std/math/check - if (result i32) - f64.const inf - call $~lib/bindings/Math/cbrt - f64.const inf - f64.const 0 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_cbrt i32.eqz if i32.const 0 @@ -18845,19 +18729,9 @@ unreachable end f64.const -inf - call $~lib/math/NativeMath.cbrt f64.const -inf f64.const 0 - call $std/math/check - if (result i32) - f64.const -inf - call $~lib/bindings/Math/cbrt - f64.const -inf - f64.const 0 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_cbrt i32.eqz if i32.const 0 @@ -18868,19 +18742,9 @@ unreachable end f64.const 0 - call $~lib/math/NativeMath.cbrt f64.const 0 f64.const 0 - call $std/math/check - if (result i32) - f64.const 0 - call $~lib/bindings/Math/cbrt - f64.const 0 - f64.const 0 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_cbrt i32.eqz if i32.const 0 @@ -18891,19 +18755,9 @@ unreachable end f64.const -0 - call $~lib/math/NativeMath.cbrt f64.const -0 f64.const 0 - call $std/math/check - if (result i32) - f64.const -0 - call $~lib/bindings/Math/cbrt - f64.const -0 - f64.const 0 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_cbrt i32.eqz if i32.const 0 @@ -18914,19 +18768,9 @@ unreachable end f64.const 9.313225746154785e-10 - call $~lib/math/NativeMath.cbrt f64.const 0.0009765625 f64.const 0 - call $std/math/check - if (result i32) - f64.const 9.313225746154785e-10 - call $~lib/bindings/Math/cbrt - f64.const 0.0009765625 - f64.const 0 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_cbrt i32.eqz if i32.const 0 @@ -18937,19 +18781,9 @@ unreachable end f64.const -9.313225746154785e-10 - call $~lib/math/NativeMath.cbrt f64.const -0.0009765625 f64.const 0 - call $std/math/check - if (result i32) - f64.const -9.313225746154785e-10 - call $~lib/bindings/Math/cbrt - f64.const -0.0009765625 - f64.const 0 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_cbrt i32.eqz if i32.const 0 @@ -18960,19 +18794,9 @@ unreachable end f64.const 1 - call $~lib/math/NativeMath.cbrt f64.const 1 f64.const 0 - call $std/math/check - if (result i32) - f64.const 1 - call $~lib/bindings/Math/cbrt - f64.const 1 - f64.const 0 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_cbrt i32.eqz if i32.const 0 @@ -18983,19 +18807,9 @@ unreachable end f64.const -1 - call $~lib/math/NativeMath.cbrt f64.const -1 f64.const 0 - call $std/math/check - if (result i32) - f64.const -1 - call $~lib/bindings/Math/cbrt - f64.const -1 - f64.const 0 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_cbrt i32.eqz if i32.const 0 @@ -19006,19 +18820,9 @@ unreachable end f64.const 8 - call $~lib/math/NativeMath.cbrt f64.const 2 f64.const 0 - call $std/math/check - if (result i32) - f64.const 8 - call $~lib/bindings/Math/cbrt - f64.const 2 - f64.const 0 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_cbrt i32.eqz if i32.const 0 @@ -29156,10 +28960,9 @@ end f64.const -8.06684839057968 f64.const 4.535662560676869 - call $~lib/math/NativeMath.hypot f64.const 9.25452742288464 f64.const -0.31188681721687317 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29171,10 +28974,9 @@ end f64.const 4.345239849338305 f64.const -8.88799136300345 - call $~lib/math/NativeMath.hypot f64.const 9.893305808328252 f64.const 0.4593673348426819 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29186,10 +28988,9 @@ end f64.const -8.38143342755525 f64.const -2.763607337379588 - call $~lib/math/NativeMath.hypot f64.const 8.825301797432132 f64.const -0.1701754331588745 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29201,10 +29002,9 @@ end f64.const -6.531673581913484 f64.const 4.567535276842744 - call $~lib/math/NativeMath.hypot f64.const 7.970265885519092 f64.const -0.3176782727241516 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29216,10 +29016,9 @@ end f64.const 9.267056966972586 f64.const 4.811392084359796 - call $~lib/math/NativeMath.hypot f64.const 10.441639651824575 f64.const -0.2693633437156677 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29231,10 +29030,9 @@ end f64.const -6.450045556060236 f64.const 0.6620717923376739 - call $~lib/math/NativeMath.hypot f64.const 6.483936052542593 f64.const 0.35618898272514343 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29246,10 +29044,9 @@ end f64.const 7.858890253041697 f64.const 0.05215452675006225 - call $~lib/math/NativeMath.hypot f64.const 7.859063309581766 f64.const 0.08044655621051788 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29261,10 +29058,9 @@ end f64.const -0.792054511984896 f64.const 7.67640268511754 - call $~lib/math/NativeMath.hypot f64.const 7.717156764899584 f64.const 0.05178084969520569 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29276,10 +29072,9 @@ end f64.const 0.615702673197924 f64.const 2.0119025790324803 - call $~lib/math/NativeMath.hypot f64.const 2.104006123874314 f64.const -0.0918039008975029 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29291,10 +29086,9 @@ end f64.const -0.5587586823609152 f64.const 0.03223983060263804 - call $~lib/math/NativeMath.hypot f64.const 0.5596880129062913 f64.const 0.1383407711982727 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29306,10 +29100,9 @@ end f64.const 3 f64.const 4 - call $~lib/math/NativeMath.hypot f64.const 5 f64.const 0 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29321,10 +29114,9 @@ end f64.const -3 f64.const 4 - call $~lib/math/NativeMath.hypot f64.const 5 f64.const 0 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29336,10 +29128,9 @@ end f64.const 4 f64.const 3 - call $~lib/math/NativeMath.hypot f64.const 5 f64.const 0 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29351,10 +29142,9 @@ end f64.const 4 f64.const -3 - call $~lib/math/NativeMath.hypot f64.const 5 f64.const 0 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29366,10 +29156,9 @@ end f64.const -3 f64.const -4 - call $~lib/math/NativeMath.hypot f64.const 5 f64.const 0 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29381,10 +29170,9 @@ end f64.const 1797693134862315708145274e284 f64.const 0 - call $~lib/math/NativeMath.hypot f64.const 1797693134862315708145274e284 f64.const 0 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29396,10 +29184,9 @@ end f64.const 1797693134862315708145274e284 f64.const -0 - call $~lib/math/NativeMath.hypot f64.const 1797693134862315708145274e284 f64.const 0 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29411,10 +29198,9 @@ end f64.const 5e-324 f64.const 0 - call $~lib/math/NativeMath.hypot f64.const 5e-324 f64.const 0 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29426,10 +29212,9 @@ end f64.const 5e-324 f64.const -0 - call $~lib/math/NativeMath.hypot f64.const 5e-324 f64.const 0 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29441,10 +29226,9 @@ end f64.const inf f64.const 1 - call $~lib/math/NativeMath.hypot f64.const inf f64.const 0 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29456,10 +29240,9 @@ end f64.const 1 f64.const inf - call $~lib/math/NativeMath.hypot f64.const inf f64.const 0 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29471,10 +29254,9 @@ end f64.const inf f64.const nan:0x8000000000000 - call $~lib/math/NativeMath.hypot f64.const inf f64.const 0 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29486,10 +29268,9 @@ end f64.const nan:0x8000000000000 f64.const inf - call $~lib/math/NativeMath.hypot f64.const inf f64.const 0 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29501,10 +29282,9 @@ end f64.const -inf f64.const 1 - call $~lib/math/NativeMath.hypot f64.const inf f64.const 0 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29516,10 +29296,9 @@ end f64.const 1 f64.const -inf - call $~lib/math/NativeMath.hypot f64.const inf f64.const 0 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29531,10 +29310,9 @@ end f64.const -inf f64.const nan:0x8000000000000 - call $~lib/math/NativeMath.hypot f64.const inf f64.const 0 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29546,10 +29324,9 @@ end f64.const nan:0x8000000000000 f64.const -inf - call $~lib/math/NativeMath.hypot f64.const inf f64.const 0 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29561,10 +29338,9 @@ end f64.const nan:0x8000000000000 f64.const 1 - call $~lib/math/NativeMath.hypot f64.const nan:0x8000000000000 f64.const 0 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29576,10 +29352,9 @@ end f64.const 1 f64.const nan:0x8000000000000 - call $~lib/math/NativeMath.hypot f64.const nan:0x8000000000000 f64.const 0 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29591,10 +29366,9 @@ end f64.const nan:0x8000000000000 f64.const 0 - call $~lib/math/NativeMath.hypot f64.const nan:0x8000000000000 f64.const 0 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -29606,10 +29380,9 @@ end f64.const 0 f64.const nan:0x8000000000000 - call $~lib/math/NativeMath.hypot f64.const nan:0x8000000000000 f64.const 0 - call $std/math/check + call $std/math/test_hypot i32.eqz if i32.const 0 @@ -30664,19 +30437,9 @@ unreachable end f64.const -8.06684839057968 - call $~lib/math/NativeMath.log10 f64.const nan:0x8000000000000 f64.const 0 - call $std/math/check - if (result i32) - f64.const -8.06684839057968 - call $~lib/bindings/Math/log10 - f64.const nan:0x8000000000000 - f64.const 0 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_log10 i32.eqz if i32.const 0 @@ -30687,19 +30450,9 @@ unreachable end f64.const 4.345239849338305 - call $~lib/math/NativeMath.log10 f64.const 0.6380137537120029 f64.const -0.2088824063539505 - call $std/math/check - if (result i32) - f64.const 4.345239849338305 - call $~lib/bindings/Math/log10 - f64.const 0.6380137537120029 - f64.const -0.2088824063539505 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_log10 i32.eqz if i32.const 0 @@ -30710,19 +30463,9 @@ unreachable end f64.const -8.38143342755525 - call $~lib/math/NativeMath.log10 f64.const nan:0x8000000000000 f64.const 0 - call $std/math/check - if (result i32) - f64.const -8.38143342755525 - call $~lib/bindings/Math/log10 - f64.const nan:0x8000000000000 - f64.const 0 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_log10 i32.eqz if i32.const 0 @@ -30733,19 +30476,9 @@ unreachable end f64.const -6.531673581913484 - call $~lib/math/NativeMath.log10 f64.const nan:0x8000000000000 f64.const 0 - call $std/math/check - if (result i32) - f64.const -6.531673581913484 - call $~lib/bindings/Math/log10 - f64.const nan:0x8000000000000 - f64.const 0 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_log10 i32.eqz if i32.const 0 @@ -30756,19 +30489,9 @@ unreachable end f64.const 9.267056966972586 - call $~lib/math/NativeMath.log10 f64.const 0.9669418327487274 f64.const -0.06120431795716286 - call $std/math/check - if (result i32) - f64.const 9.267056966972586 - call $~lib/bindings/Math/log10 - f64.const 0.9669418327487274 - f64.const -0.06120431795716286 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_log10 i32.eqz if i32.const 0 @@ -30779,19 +30502,9 @@ unreachable end f64.const 0.6619858980995045 - call $~lib/math/NativeMath.log10 f64.const -0.17915126198447093 f64.const 0.39090874791145325 - call $std/math/check - if (result i32) - f64.const 0.6619858980995045 - call $~lib/bindings/Math/log10 - f64.const -0.17915126198447093 - f64.const 0.39090874791145325 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_log10 i32.eqz if i32.const 0 @@ -30802,19 +30515,9 @@ unreachable end f64.const -0.4066039223853553 - call $~lib/math/NativeMath.log10 f64.const nan:0x8000000000000 f64.const 0 - call $std/math/check - if (result i32) - f64.const -0.4066039223853553 - call $~lib/bindings/Math/log10 - f64.const nan:0x8000000000000 - f64.const 0 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_log10 i32.eqz if i32.const 0 @@ -30825,19 +30528,9 @@ unreachable end f64.const 0.5617597462207241 - call $~lib/math/NativeMath.log10 f64.const -0.25044938407454437 f64.const -0.3046841621398926 - call $std/math/check - if (result i32) - f64.const 0.5617597462207241 - call $~lib/bindings/Math/log10 - f64.const -0.25044938407454437 - f64.const -0.3046841621398926 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_log10 i32.eqz if i32.const 0 @@ -30848,19 +30541,9 @@ unreachable end f64.const 0.7741522965913037 - call $~lib/math/NativeMath.log10 f64.const -0.11117359349943837 f64.const -0.31503361463546753 - call $std/math/check - if (result i32) - f64.const 0.7741522965913037 - call $~lib/bindings/Math/log10 - f64.const -0.11117359349943837 - f64.const -0.31503361463546753 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_log10 i32.eqz if i32.const 0 @@ -30871,19 +30554,9 @@ unreachable end f64.const -0.6787637026394024 - call $~lib/math/NativeMath.log10 f64.const nan:0x8000000000000 f64.const 0 - call $std/math/check - if (result i32) - f64.const -0.6787637026394024 - call $~lib/bindings/Math/log10 - f64.const nan:0x8000000000000 - f64.const 0 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_log10 i32.eqz if i32.const 0 @@ -30894,19 +30567,9 @@ unreachable end f64.const 0 - call $~lib/math/NativeMath.log10 f64.const -inf f64.const 0 - call $std/math/check - if (result i32) - f64.const 0 - call $~lib/bindings/Math/log10 - f64.const -inf - f64.const 0 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_log10 i32.eqz if i32.const 0 @@ -30917,19 +30580,9 @@ unreachable end f64.const -0 - call $~lib/math/NativeMath.log10 f64.const -inf f64.const 0 - call $std/math/check - if (result i32) - f64.const -0 - call $~lib/bindings/Math/log10 - f64.const -inf - f64.const 0 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_log10 i32.eqz if i32.const 0 @@ -30940,19 +30593,9 @@ unreachable end f64.const -7.888609052210118e-31 - call $~lib/math/NativeMath.log10 f64.const nan:0x8000000000000 f64.const 0 - call $std/math/check - if (result i32) - f64.const -7.888609052210118e-31 - call $~lib/bindings/Math/log10 - f64.const nan:0x8000000000000 - f64.const 0 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_log10 i32.eqz if i32.const 0 @@ -30963,19 +30606,9 @@ unreachable end f64.const 1 - call $~lib/math/NativeMath.log10 f64.const 0 f64.const 0 - call $std/math/check - if (result i32) - f64.const 1 - call $~lib/bindings/Math/log10 - f64.const 0 - f64.const 0 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_log10 i32.eqz if i32.const 0 @@ -30986,19 +30619,9 @@ unreachable end f64.const -1 - call $~lib/math/NativeMath.log10 f64.const nan:0x8000000000000 f64.const 0 - call $std/math/check - if (result i32) - f64.const -1 - call $~lib/bindings/Math/log10 - f64.const nan:0x8000000000000 - f64.const 0 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_log10 i32.eqz if i32.const 0 @@ -31009,19 +30632,9 @@ unreachable end f64.const inf - call $~lib/math/NativeMath.log10 f64.const inf f64.const 0 - call $std/math/check - if (result i32) - f64.const inf - call $~lib/bindings/Math/log10 - f64.const inf - f64.const 0 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_log10 i32.eqz if i32.const 0 @@ -31032,19 +30645,9 @@ unreachable end f64.const -inf - call $~lib/math/NativeMath.log10 f64.const nan:0x8000000000000 f64.const 0 - call $std/math/check - if (result i32) - f64.const -inf - call $~lib/bindings/Math/log10 - f64.const nan:0x8000000000000 - f64.const 0 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_log10 i32.eqz if i32.const 0 @@ -31055,19 +30658,9 @@ unreachable end f64.const nan:0x8000000000000 - call $~lib/math/NativeMath.log10 f64.const nan:0x8000000000000 f64.const 0 - call $std/math/check - if (result i32) - f64.const nan:0x8000000000000 - call $~lib/bindings/Math/log10 - f64.const nan:0x8000000000000 - f64.const 0 - call $std/math/check - else - i32.const 0 - end + call $std/math/test_log10 i32.eqz if i32.const 0 @@ -31078,10 +30671,9 @@ unreachable end f32.const -8.066848754882812 - call $~lib/math/NativeMathf.log10 f32.const nan:0x400000 f32.const 0 - call $std/math/check + call $std/math/test_log10f i32.eqz if i32.const 0 @@ -31092,10 +30684,9 @@ unreachable end f32.const 4.345239639282227 - call $~lib/math/NativeMathf.log10 f32.const 0.6380137205123901 f32.const -0.20476758480072021 - call $std/math/check + call $std/math/test_log10f i32.eqz if i32.const 0 @@ -31106,10 +30697,9 @@ unreachable end f32.const -8.381433486938477 - call $~lib/math/NativeMathf.log10 f32.const nan:0x400000 f32.const 0 - call $std/math/check + call $std/math/test_log10f i32.eqz if i32.const 0 @@ -31120,10 +30710,9 @@ unreachable end f32.const -6.531673431396484 - call $~lib/math/NativeMathf.log10 f32.const nan:0x400000 f32.const 0 - call $std/math/check + call $std/math/test_log10f i32.eqz if i32.const 0 @@ -31134,10 +30723,9 @@ unreachable end f32.const 9.267057418823242 - call $~lib/math/NativeMathf.log10 f32.const 0.9669418334960938 f32.const -0.34273025393486023 - call $std/math/check + call $std/math/test_log10f i32.eqz if i32.const 0 @@ -31148,10 +30736,9 @@ unreachable end f32.const 0.6619858741760254 - call $~lib/math/NativeMathf.log10 f32.const -0.1791512817144394 f32.const -0.27078554034233093 - call $std/math/check + call $std/math/test_log10f i32.eqz if i32.const 0 @@ -31162,10 +30749,9 @@ unreachable end f32.const -0.40660393238067627 - call $~lib/math/NativeMathf.log10 f32.const nan:0x400000 f32.const 0 - call $std/math/check + call $std/math/test_log10f i32.eqz if i32.const 0 @@ -31176,10 +30762,9 @@ unreachable end f32.const 0.5617597699165344 - call $~lib/math/NativeMathf.log10 f32.const -0.25044935941696167 f32.const 0.2126826047897339 - call $std/math/check + call $std/math/test_log10f i32.eqz if i32.const 0 @@ -31190,10 +30775,9 @@ unreachable end f32.const 0.7741522789001465 - call $~lib/math/NativeMathf.log10 f32.const -0.1111735999584198 f32.const 0.46515095233917236 - call $std/math/check + call $std/math/test_log10f i32.eqz if i32.const 0 @@ -31204,10 +30788,9 @@ unreachable end f32.const -0.6787636876106262 - call $~lib/math/NativeMathf.log10 f32.const nan:0x400000 f32.const 0 - call $std/math/check + call $std/math/test_log10f i32.eqz if i32.const 0 @@ -31218,10 +30801,9 @@ unreachable end f32.const 0 - call $~lib/math/NativeMathf.log10 f32.const -inf f32.const 0 - call $std/math/check + call $std/math/test_log10f i32.eqz if i32.const 0 @@ -31232,10 +30814,9 @@ unreachable end f32.const -0 - call $~lib/math/NativeMathf.log10 f32.const -inf f32.const 0 - call $std/math/check + call $std/math/test_log10f i32.eqz if i32.const 0 @@ -31246,10 +30827,9 @@ unreachable end f32.const -7.888609052210118e-31 - call $~lib/math/NativeMathf.log10 f32.const nan:0x400000 f32.const 0 - call $std/math/check + call $std/math/test_log10f i32.eqz if i32.const 0 @@ -31260,10 +30840,9 @@ unreachable end f32.const 1 - call $~lib/math/NativeMathf.log10 f32.const 0 f32.const 0 - call $std/math/check + call $std/math/test_log10f i32.eqz if i32.const 0 @@ -31274,10 +30853,9 @@ unreachable end f32.const -1 - call $~lib/math/NativeMathf.log10 f32.const nan:0x400000 f32.const 0 - call $std/math/check + call $std/math/test_log10f i32.eqz if i32.const 0 @@ -31288,10 +30866,9 @@ unreachable end f32.const inf - call $~lib/math/NativeMathf.log10 f32.const inf f32.const 0 - call $std/math/check + call $std/math/test_log10f i32.eqz if i32.const 0 @@ -31302,10 +30879,9 @@ unreachable end f32.const -inf - call $~lib/math/NativeMathf.log10 f32.const nan:0x400000 f32.const 0 - call $std/math/check + call $std/math/test_log10f i32.eqz if i32.const 0 @@ -31316,10 +30892,9 @@ unreachable end f32.const nan:0x400000 - call $~lib/math/NativeMathf.log10 f32.const nan:0x400000 f32.const 0 - call $std/math/check + call $std/math/test_log10f i32.eqz if i32.const 0 @@ -44502,9 +44077,9 @@ local.get $6 i64.xor local.tee $6 + local.get $6 i64.const 17 i64.shr_u - local.get $6 i64.xor i64.xor local.get $2 diff --git a/tests/compiler/std/mod.optimized.wat b/tests/compiler/std/mod.optimized.wat index f662c12cf2..b4bc1438bc 100644 --- a/tests/compiler/std/mod.optimized.wat +++ b/tests/compiler/std/mod.optimized.wat @@ -134,89 +134,91 @@ i64.or end local.set $6 - block $folding-inner0 - loop $while-continue|0 - local.get $4 - local.get $5 - i64.gt_s - if + loop $while-continue|0 + local.get $4 + local.get $5 + i64.gt_s + if + local.get $3 + local.get $6 + i64.ge_u + if (result i64) + local.get $0 + f64.const 0 + f64.mul + local.get $3 + local.get $6 + i64.eq + br_if $__inlined_func$~lib/math/NativeMath.mod + drop local.get $3 local.get $6 - i64.ge_u - if (result i64) - local.get $3 - local.get $6 - i64.eq - br_if $folding-inner0 - local.get $3 - local.get $6 - i64.sub - else - local.get $3 - end - i64.const 1 - i64.shl - local.set $3 - local.get $4 - i64.const 1 i64.sub - local.set $4 - br $while-continue|0 + else + local.get $3 end + i64.const 1 + i64.shl + local.set $3 + local.get $4 + i64.const 1 + i64.sub + local.set $4 + br $while-continue|0 end - local.get $4 + end + local.get $4 + local.get $3 + local.get $6 + i64.ge_u + if + local.get $0 + f64.const 0 + f64.mul local.get $3 local.get $6 - i64.ge_u - if - local.get $3 - local.get $6 - i64.eq - br_if $folding-inner0 - local.get $3 - local.get $6 - i64.sub - local.set $3 - end + i64.eq + br_if $__inlined_func$~lib/math/NativeMath.mod + drop local.get $3 - i64.const 11 - i64.shl - i64.clz - local.tee $4 + local.get $6 i64.sub - local.set $5 - local.get $3 - local.get $4 - i64.shl local.set $3 + end + local.get $3 + i64.const 11 + i64.shl + i64.clz + local.tee $4 + i64.sub + local.set $5 + local.get $3 + local.get $4 + i64.shl + local.set $3 + local.get $5 + i64.const 0 + i64.gt_s + if (result i64) + local.get $3 + i64.const 4503599627370496 + i64.sub local.get $5 - i64.const 0 - i64.gt_s - if (result i64) - local.get $3 - i64.const 4503599627370496 - i64.sub - local.get $5 - i64.const 52 - i64.shl - i64.or - else - local.get $3 - i64.const 1 - local.get $5 - i64.sub - i64.shr_u - end - local.get $7 - i64.const 63 + i64.const 52 i64.shl i64.or - f64.reinterpret_i64 - br $__inlined_func$~lib/math/NativeMath.mod + else + local.get $3 + i64.const 1 + local.get $5 + i64.sub + i64.shr_u end - local.get $0 - f64.const 0 - f64.mul + local.get $7 + i64.const 63 + i64.shl + i64.or + f64.reinterpret_i64 end local.tee $9 local.get $9 @@ -395,87 +397,89 @@ i32.shl end local.set $4 - block $folding-inner0 - loop $while-continue|0 - local.get $7 - local.get $8 - i32.lt_s - if + loop $while-continue|0 + local.get $7 + local.get $8 + i32.lt_s + if + local.get $3 + local.get $4 + i32.ge_u + if (result i32) + local.get $0 + f32.const 0 + f32.mul + local.get $3 + local.get $4 + i32.eq + br_if $__inlined_func$~lib/math/NativeMathf.mod + drop local.get $3 local.get $4 - i32.ge_u - if (result i32) - local.get $3 - local.get $4 - i32.eq - br_if $folding-inner0 - local.get $3 - local.get $4 - i32.sub - else - local.get $3 - end - i32.const 1 - i32.shl - local.set $3 - local.get $8 - i32.const 1 i32.sub - local.set $8 - br $while-continue|0 + else + local.get $3 end + i32.const 1 + i32.shl + local.set $3 + local.get $8 + i32.const 1 + i32.sub + local.set $8 + br $while-continue|0 end - local.get $8 + end + local.get $8 + local.get $3 + local.get $4 + i32.ge_u + if + local.get $0 + f32.const 0 + f32.mul local.get $3 local.get $4 - i32.ge_u - if - local.get $3 - local.get $4 - i32.eq - br_if $folding-inner0 - local.get $3 - local.get $4 - i32.sub - local.set $3 - end + i32.eq + br_if $__inlined_func$~lib/math/NativeMathf.mod + drop local.get $3 - i32.const 8 - i32.shl - i32.clz - local.tee $5 + local.get $4 i32.sub - local.set $4 - local.get $3 - local.get $5 - i32.shl local.set $3 + end + local.get $3 + i32.const 8 + i32.shl + i32.clz + local.tee $5 + i32.sub + local.set $4 + local.get $3 + local.get $5 + i32.shl + local.set $3 + local.get $4 + i32.const 0 + i32.gt_s + if (result i32) + local.get $3 + i32.const 8388608 + i32.sub local.get $4 - i32.const 0 - i32.gt_s - if (result i32) - local.get $3 - i32.const 8388608 - i32.sub - local.get $4 - i32.const 23 - i32.shl - i32.or - else - local.get $3 - i32.const 1 - local.get $4 - i32.sub - i32.shr_u - end - local.get $6 + i32.const 23 + i32.shl i32.or - f32.reinterpret_i32 - br $__inlined_func$~lib/math/NativeMathf.mod + else + local.get $3 + i32.const 1 + local.get $4 + i32.sub + i32.shr_u end - local.get $0 - f32.const 0 - f32.mul + local.get $6 + i32.or + f32.reinterpret_i32 end local.tee $0 local.get $0 diff --git a/tests/compiler/std/new.optimized.wat b/tests/compiler/std/new.optimized.wat index 297fe51ea9..cbdce54416 100644 --- a/tests/compiler/std/new.optimized.wat +++ b/tests/compiler/std/new.optimized.wat @@ -1251,8 +1251,8 @@ i32.load offset=8 local.set $3 local.get $0 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $0 @@ -1384,19 +1384,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1406,15 +1406,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1437,7 +1438,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1447,23 +1448,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1471,7 +1472,7 @@ else i32.const 1440 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1248 @@ -1481,7 +1482,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1444 @@ -1496,16 +1497,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -1513,11 +1514,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/std/operator-overloading.optimized.wat b/tests/compiler/std/operator-overloading.optimized.wat index 35224274cd..0c4e08cca7 100644 --- a/tests/compiler/std/operator-overloading.optimized.wat +++ b/tests/compiler/std/operator-overloading.optimized.wat @@ -1114,7 +1114,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1122,7 +1122,7 @@ memory.size local.tee $1 i32.const 4 - local.get $2 + local.get $3 i32.load offset=1568 local.get $1 i32.const 16 @@ -1137,16 +1137,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $1 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1154,7 +1154,7 @@ unreachable end end - local.get $2 + local.get $3 local.get $1 i32.const 16 i32.shl @@ -1162,7 +1162,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1189,7 +1189,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 @@ -1199,7 +1199,7 @@ i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $2 i32.const 16 i32.ge_u if @@ -1214,13 +1214,13 @@ i32.const 32 i32.add local.tee $4 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 + local.get $3 local.get $4 call $~lib/rt/tlsf/insertBlock else @@ -1255,8 +1255,8 @@ i32.load offset=8 local.set $2 local.get $1 - global.get $~lib/rt/itcms/white local.get $0 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $1 @@ -2596,24 +2596,24 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/eq2 global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/eq1 local.tee $1 + global.get $std/operator-overloading/eq1 + local.tee $0 i32.store - local.get $0 + local.get $1 global.get $std/operator-overloading/eq2 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load + local.get $1 + i32.load i32.eq if (result i32) - local.get $1 - i32.load offset=4 local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.eq else i32.const 0 @@ -2639,24 +2639,24 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/eq4 global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/eq3 local.tee $1 + global.get $std/operator-overloading/eq3 + local.tee $0 i32.store - local.get $0 + local.get $1 global.get $std/operator-overloading/eq4 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load + local.get $1 + i32.load i32.eq if (result i32) - local.get $1 - i32.load offset=4 local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.eq else i32.const 0 @@ -2672,24 +2672,24 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/eq1 local.tee $1 + global.get $std/operator-overloading/eq1 + local.tee $0 i32.store - local.get $0 + local.get $1 global.get $std/operator-overloading/eq2 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load + local.get $1 + i32.load i32.ne if (result i32) - local.get $1 - i32.load offset=4 local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.ne else i32.const 0 @@ -2705,24 +2705,24 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/eq3 local.tee $1 + global.get $std/operator-overloading/eq3 + local.tee $0 i32.store - local.get $0 + local.get $1 global.get $std/operator-overloading/eq4 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load + local.get $1 + i32.load i32.ne if (result i32) - local.get $1 - i32.load offset=4 local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.ne else i32.const 0 @@ -2748,24 +2748,24 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/gt2 global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/gt1 local.tee $1 + global.get $std/operator-overloading/gt1 + local.tee $0 i32.store - local.get $0 + local.get $1 global.get $std/operator-overloading/gt2 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load + local.get $1 + i32.load i32.gt_s if (result i32) - local.get $1 - i32.load offset=4 local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.gt_s else i32.const 0 @@ -2791,24 +2791,24 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/gte2 global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/gte1 local.tee $1 + global.get $std/operator-overloading/gte1 + local.tee $0 i32.store - local.get $0 + local.get $1 global.get $std/operator-overloading/gte2 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load + local.get $1 + i32.load i32.ge_s if (result i32) - local.get $1 - i32.load offset=4 local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.ge_s else i32.const 0 @@ -2834,24 +2834,24 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/le2 global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/le1 local.tee $1 + global.get $std/operator-overloading/le1 + local.tee $0 i32.store - local.get $0 + local.get $1 global.get $std/operator-overloading/le2 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load + local.get $1 + i32.load i32.lt_s if (result i32) - local.get $1 - i32.load offset=4 local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.lt_s else i32.const 0 @@ -2877,24 +2877,24 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/leq2 global.get $~lib/memory/__stack_pointer - local.tee $0 - global.get $std/operator-overloading/leq1 local.tee $1 + global.get $std/operator-overloading/leq1 + local.tee $0 i32.store - local.get $0 + local.get $1 global.get $std/operator-overloading/leq2 - local.tee $0 + local.tee $1 i32.store offset=4 - local.get $1 - i32.load local.get $0 i32.load + local.get $1 + i32.load i32.le_s if (result i32) - local.get $1 - i32.load offset=4 local.get $0 i32.load offset=4 + local.get $1 + i32.load offset=4 i32.le_s else i32.const 0 @@ -3656,19 +3656,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -3678,15 +3678,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -3709,7 +3710,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -3719,23 +3720,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -3743,7 +3744,7 @@ else i32.const 1520 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1248 @@ -3753,7 +3754,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1524 @@ -3768,16 +3769,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -3785,11 +3786,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/std/set.optimized.wat b/tests/compiler/std/set.optimized.wat index ee6f098ffc..945afd899c 100644 --- a/tests/compiler/std/set.optimized.wat +++ b/tests/compiler/std/set.optimized.wat @@ -123,17 +123,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18220 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -147,9 +148,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -159,15 +160,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -1465,7 +1466,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1491,32 +1492,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1532,16 +1533,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1549,7 +1550,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1557,8 +1558,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1575,7 +1576,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1585,13 +1586,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1604,40 +1605,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -1667,8 +1668,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -1745,7 +1746,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $7 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -1759,12 +1760,12 @@ i32.const 3 i32.shl i32.add - local.set $7 + local.set $6 local.get $3 local.set $2 loop $while-continue|0 local.get $4 - local.get $7 + local.get $6 i32.ne if local.get $4 @@ -1790,23 +1791,23 @@ i32.const 668265263 i32.mul local.tee $8 - local.get $8 i32.const 15 i32.shr_u + local.get $8 i32.xor i32.const -2048144777 i32.mul local.tee $8 - local.get $8 i32.const 13 i32.shr_u + local.get $8 i32.xor i32.const -1028477379 i32.mul local.tee $8 - local.get $8 i32.const 16 i32.shr_u + local.get $8 i32.xor local.get $1 i32.and @@ -1854,7 +1855,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -1869,77 +1870,79 @@ (local $2 i32) (local $3 i32) (local $4 i32) - local.get $0 - i32.load - local.get $1 - i32.extend8_s - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - local.get $2 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - local.get $2 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - local.get $2 - i32.const 16 - i32.shr_u - i32.xor - local.tee $3 - local.get $0 - i32.load offset=4 - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/set/Set#find + (local $5 i32) + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $0 + i32.load + local.get $1 + local.tee $2 + i32.extend8_s + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $3 + i32.const 15 + i32.shr_u + local.get $3 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $3 + i32.const 13 + i32.shr_u + local.get $3 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $3 + i32.const 16 + i32.shr_u + local.get $3 + i32.xor + local.tee $4 + local.get $0 + i32.load offset=4 + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $3 loop $while-continue|0 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 - local.tee $4 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u - local.get $1 + local.get $2 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $4 + drop + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|0 end end i32.const 0 - local.set $2 end - local.get $2 i32.eqz if local.get $0 @@ -1977,11 +1980,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $4 + local.tee $3 i32.const 1 i32.add i32.store offset=16 - local.get $4 + local.get $3 i32.const 3 i32.shl local.get $2 @@ -2000,7 +2003,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $3 + local.get $4 i32.and i32.const 2 i32.shl @@ -2695,314 +2698,314 @@ i32.store8 end ) - (func $~lib/array/ensureCapacity (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) + (func $~lib/rt/itcms/__renew (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) local.get $0 - i32.load offset=8 - local.tee $8 - local.get $2 - i32.shr_u + i32.const 20 + i32.sub + local.tee $2 + i32.load + i32.const -4 + i32.and + i32.const 16 + i32.sub local.get $1 - i32.lt_u + i32.ge_u if - i32.const 1073741820 local.get $2 - i32.shr_u local.get $1 - i32.lt_u + i32.store offset=16 + local.get $0 + return + end + local.get $1 + local.get $2 + i32.load offset=12 + call $~lib/rt/itcms/__new + local.set $4 + local.get $1 + local.get $2 + i32.load offset=16 + local.tee $2 + local.get $1 + local.get $2 + i32.lt_u + select + local.set $5 + block $~lib/util/memory/memmove|inlined.0 + local.get $4 + local.tee $1 + local.get $0 + i32.eq + br_if $~lib/util/memory/memmove|inlined.0 + local.get $0 + local.get $1 + i32.sub + local.get $5 + i32.sub + i32.const 0 + local.get $5 + i32.const 1 + i32.shl + i32.sub + i32.le_u if - i32.const 1456 - i32.const 1616 - i32.const 18 - i32.const 48 - call $~lib/builtins/abort - unreachable + local.get $1 + local.get $0 + local.get $5 + call $~lib/util/memory/memcpy + br $~lib/util/memory/memmove|inlined.0 end local.get $0 - i32.load - local.set $4 - local.get $1 - i32.const 8 local.get $1 - i32.const 8 i32.gt_u - select - local.get $2 - i32.shl - local.set $6 - block $__inlined_func$~lib/rt/itcms/__renew (result i32) - local.get $3 + if + local.get $0 + i32.const 7 + i32.and + local.get $1 + i32.const 7 + i32.and + i32.eq if - local.get $8 - i32.const 1 - i32.shl - local.tee $1 - i32.const 1073741820 - local.get $1 - i32.const 1073741820 - i32.lt_u - select - local.tee $1 - local.get $6 - local.get $1 - local.get $6 - i32.gt_u - select - local.set $6 - end - local.get $6 - local.get $4 - local.tee $2 - i32.const 20 - i32.sub - local.tee $1 - i32.load - i32.const -4 - i32.and - i32.const 16 - i32.sub - i32.le_u - if - local.get $1 - local.get $6 - i32.store offset=16 - local.get $2 - br $__inlined_func$~lib/rt/itcms/__renew - end - local.get $6 - local.get $1 - i32.load offset=12 - call $~lib/rt/itcms/__new - local.tee $9 - local.set $3 - local.get $6 - local.get $1 - i32.load offset=16 - local.tee $1 - local.get $1 - local.get $6 - i32.gt_u - select - local.set $7 - block $~lib/util/memory/memmove|inlined.0 - local.get $3 - local.get $2 - local.tee $1 - i32.eq - br_if $~lib/util/memory/memmove|inlined.0 - local.get $1 - local.get $3 - i32.sub - local.get $7 - i32.sub - i32.const 0 - local.get $7 - i32.const 1 - i32.shl - i32.sub - i32.le_u - if - local.get $3 + loop $while-continue|0 local.get $1 - local.get $7 - call $~lib/util/memory/memcpy - br $~lib/util/memory/memmove|inlined.0 - end - local.get $1 - local.get $3 - i32.gt_u - if - local.get $1 - i32.const 7 - i32.and - local.get $3 i32.const 7 i32.and - i32.eq if - loop $while-continue|0 - local.get $3 - i32.const 7 - i32.and - if - local.get $7 - i32.eqz - br_if $~lib/util/memory/memmove|inlined.0 - local.get $7 - i32.const 1 - i32.sub - local.set $7 - local.get $3 - local.tee $4 - i32.const 1 - i32.add - local.set $3 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $4 - local.get $5 - i32.load8_u - i32.store8 - br $while-continue|0 - end - end - loop $while-continue|1 - local.get $7 - i32.const 8 - i32.ge_u - if - local.get $3 - local.get $1 - i64.load - i64.store - local.get $7 - i32.const 8 - i32.sub - local.set $7 - local.get $3 - i32.const 8 - i32.add - local.set $3 - local.get $1 - i32.const 8 - i32.add - local.set $1 - br $while-continue|1 - end - end + local.get $5 + i32.eqz + br_if $~lib/util/memory/memmove|inlined.0 + local.get $5 + i32.const 1 + i32.sub + local.set $5 + local.get $1 + local.tee $2 + i32.const 1 + i32.add + local.set $1 + local.get $0 + local.tee $3 + i32.const 1 + i32.add + local.set $0 + local.get $2 + local.get $3 + i32.load8_u + i32.store8 + br $while-continue|0 end - loop $while-continue|2 - local.get $7 - if - local.get $3 - local.tee $4 - i32.const 1 - i32.add - local.set $3 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $4 - local.get $5 - i32.load8_u - i32.store8 - local.get $7 - i32.const 1 - i32.sub - local.set $7 - br $while-continue|2 - end + end + loop $while-continue|1 + local.get $5 + i32.const 8 + i32.ge_u + if + local.get $1 + local.get $0 + i64.load + i64.store + local.get $5 + i32.const 8 + i32.sub + local.set $5 + local.get $1 + i32.const 8 + i32.add + local.set $1 + local.get $0 + i32.const 8 + i32.add + local.set $0 + br $while-continue|1 end - else + end + end + loop $while-continue|2 + local.get $5 + if local.get $1 - i32.const 7 - i32.and + local.tee $2 + i32.const 1 + i32.add + local.set $1 + local.get $0 + local.tee $3 + i32.const 1 + i32.add + local.set $0 + local.get $2 local.get $3 + i32.load8_u + i32.store8 + local.get $5 + i32.const 1 + i32.sub + local.set $5 + br $while-continue|2 + end + end + else + local.get $0 + i32.const 7 + i32.and + local.get $1 + i32.const 7 + i32.and + i32.eq + if + loop $while-continue|3 + local.get $1 + local.get $5 + i32.add i32.const 7 i32.and - i32.eq if - loop $while-continue|3 - local.get $3 - local.get $7 - i32.add - i32.const 7 - i32.and - if - local.get $7 - i32.eqz - br_if $~lib/util/memory/memmove|inlined.0 - local.get $3 - local.get $7 - i32.const 1 - i32.sub - local.tee $7 - i32.add - local.get $1 - local.get $7 - i32.add - i32.load8_u - i32.store8 - br $while-continue|3 - end - end - loop $while-continue|4 - local.get $7 - i32.const 8 - i32.ge_u - if - local.get $3 - local.get $7 - i32.const 8 - i32.sub - local.tee $7 - i32.add - local.get $1 - local.get $7 - i32.add - i64.load - i64.store - br $while-continue|4 - end - end + local.get $5 + i32.eqz + br_if $~lib/util/memory/memmove|inlined.0 + local.get $5 + i32.const 1 + i32.sub + local.tee $5 + local.get $1 + i32.add + local.get $0 + local.get $5 + i32.add + i32.load8_u + i32.store8 + br $while-continue|3 end - loop $while-continue|5 - local.get $7 - if - local.get $3 - local.get $7 - i32.const 1 - i32.sub - local.tee $7 - i32.add - local.get $1 - local.get $7 - i32.add - i32.load8_u - i32.store8 - br $while-continue|5 - end + end + loop $while-continue|4 + local.get $5 + i32.const 8 + i32.ge_u + if + local.get $5 + i32.const 8 + i32.sub + local.tee $5 + local.get $1 + i32.add + local.get $0 + local.get $5 + i32.add + i64.load + i64.store + br $while-continue|4 end end end - local.get $9 + loop $while-continue|5 + local.get $5 + if + local.get $5 + i32.const 1 + i32.sub + local.tee $5 + local.get $1 + i32.add + local.get $0 + local.get $5 + i32.add + i32.load8_u + i32.store8 + br $while-continue|5 + end + end end - local.tee $1 - local.get $8 + end + local.get $4 + ) + (func $~lib/array/ensureCapacity (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) + (local $4 i32) + (local $5 i32) + local.get $0 + i32.load offset=8 + local.tee $4 + local.get $2 + i32.shr_u + local.get $1 + i32.lt_u + if + i32.const 1073741820 + local.get $2 + i32.shr_u + local.get $1 + i32.lt_u + if + i32.const 1456 + i32.const 1616 + i32.const 18 + i32.const 48 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 8 + local.get $1 + i32.const 8 + i32.gt_u + select + local.get $2 + i32.shl + local.set $1 + local.get $0 + i32.load + local.tee $5 + local.get $3 + if + local.get $4 + i32.const 1 + i32.shl + local.tee $2 + i32.const 1073741820 + local.get $2 + i32.const 1073741820 + i32.lt_u + select + local.tee $2 + local.get $1 + local.get $1 + local.get $2 + i32.lt_u + select + local.set $1 + end + local.get $1 + call $~lib/rt/itcms/__renew + local.tee $2 + local.get $4 i32.add - local.get $6 - local.get $8 + local.get $1 + local.get $4 i32.sub call $~lib/memory/memory.fill - local.get $1 local.get $2 + local.get $5 i32.ne if local.get $0 - local.get $1 + local.get $2 i32.store local.get $0 - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 if local.get $0 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end end local.get $0 - local.get $6 + local.get $1 i32.store offset=8 end ) @@ -3050,65 +3053,66 @@ i32.le_u if i32.const 1248 - i32.const 1616 - i32.const 107 - i32.const 42 - call $~lib/builtins/abort - unreachable - end - local.get $1 - local.get $0 - i32.load offset=4 - i32.add - i32.load8_s - ) - (func $~lib/set/Set#delete (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - local.tee $2 - i32.extend8_s - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - local.get $1 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - local.get $1 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 + i32.const 1616 + i32.const 107 + i32.const 42 + call $~lib/builtins/abort + unreachable + end local.get $1 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl + local.get $0 + i32.load offset=4 i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/set/Set#find + i32.load8_s + ) + (func $~lib/set/Set#delete (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + local.tee $2 + i32.extend8_s + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $1 + i32.const 15 + i32.shr_u + local.get $1 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $1 + i32.const 13 + i32.shr_u + local.get $1 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $1 + i32.const 16 + i32.shr_u + local.get $1 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $1 loop $while-continue|0 local.get $1 if + local.get $1 local.get $1 i32.load offset=4 local.tee $3 @@ -3125,6 +3129,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find + drop local.get $3 i32.const -2 i32.and @@ -3133,9 +3138,8 @@ end end i32.const 0 - local.set $1 end - local.get $1 + local.tee $1 i32.eqz if return @@ -3247,27 +3251,27 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 call $~lib/set/Set#constructor - local.tee $7 + local.tee $4 i32.store loop $for-loop|1 - local.get $1 + local.get $2 i32.extend8_s i32.const 100 i32.lt_s if - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.extend8_s i32.const -1028477379 i32.mul @@ -3277,62 +3281,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u - local.get $1 + local.get $2 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|0 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -3341,14 +3345,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $1 + local.get $4 + local.get $2 call $~lib/set/Set#add - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.extend8_s i32.const -1028477379 i32.mul @@ -3358,62 +3362,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u - local.get $1 + local.get $2 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find1 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|02 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -3423,14 +3427,14 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|1 end end - local.get $7 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -3443,18 +3447,18 @@ unreachable end i32.const 50 - local.set $1 + local.set $2 loop $for-loop|3 - local.get $1 + local.get $2 i32.extend8_s i32.const 100 i32.lt_s if - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.extend8_s i32.const -1028477379 i32.mul @@ -3464,62 +3468,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u - local.get $1 + local.get $2 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find4 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|05 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -3529,14 +3533,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $1 + local.get $4 + local.get $2 call $~lib/set/Set#add - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.extend8_s i32.const -1028477379 i32.mul @@ -3546,62 +3550,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u - local.get $1 + local.get $2 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find7 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|08 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -3611,14 +3615,14 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|3 end end - local.get $7 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -3631,8 +3635,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -3641,17 +3645,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $9 i32.const 0 i32.store - local.get $7 + local.get $4 i32.load offset=8 - local.set $5 - local.get $7 + local.set $7 + local.get $4 i32.load offset=16 - local.tee $6 - local.set $9 - local.get $8 + local.tee $10 + local.set $3 + local.get $9 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -3660,28 +3664,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 16 i32.const 4 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $2 i32.store - local.get $10 + local.get $2 i32.const 0 i32.store - local.get $10 + local.get $2 i32.const 0 i32.store offset=4 - local.get $10 + local.get $2 i32.const 0 i32.store offset=8 - local.get $10 + local.get $2 i32.const 0 i32.store offset=12 - local.get $9 + local.get $3 i32.const 1073741820 i32.gt_u if @@ -3693,64 +3697,64 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $3 i32.const 8 - local.get $9 + local.get $3 i32.const 8 i32.gt_u select - local.tee $1 + local.tee $6 i32.const 0 call $~lib/rt/itcms/__new local.tee $11 i32.store offset=4 local.get $11 - local.get $1 + local.get $6 call $~lib/memory/memory.fill - local.get $10 + local.get $2 local.get $11 i32.store local.get $11 if - local.get $10 + local.get $2 local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $2 local.get $11 i32.store offset=4 - local.get $10 - local.get $1 + local.get $2 + local.get $6 i32.store offset=8 - local.get $10 - local.get $9 + local.get $2 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $10 + local.get $9 + local.get $2 i32.store loop $for-loop|0 - local.get $4 - local.get $6 + local.get $5 + local.get $10 i32.lt_s if - local.get $4 + local.get $5 i32.const 3 i32.shl - local.get $5 + local.get $7 i32.add - local.tee $1 + local.tee $3 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $10 + local.get $2 local.get $0 - local.get $1 + local.get $3 i32.load8_s call $~lib/array/Array#__set local.get $0 @@ -3758,41 +3762,41 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 1 i32.add - local.set $4 + local.set $5 br $for-loop|0 end end - local.get $10 + local.get $2 local.get $0 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $10 + local.get $2 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|4 - local.get $10 + local.get $2 i32.load offset=12 - local.get $3 + local.get $1 i32.gt_s if - local.get $10 - local.get $3 + local.get $2 + local.get $1 call $~lib/array/Array#__get - local.tee $1 + local.tee $5 i32.extend8_s i32.const -1028477379 i32.mul @@ -3802,67 +3806,67 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.set $2 - local.get $7 + local.set $3 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 + local.get $3 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $4 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u - local.get $1 + local.get $5 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $4 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|011 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -3873,20 +3877,20 @@ unreachable end local.get $0 - local.get $10 - local.get $3 + local.get $2 + local.get $1 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 + local.set $1 br $for-loop|4 end end local.get $0 i32.load offset=20 - local.get $7 + local.get $4 i32.load offset=20 i32.ne if @@ -3898,18 +3902,18 @@ unreachable end i32.const 0 - local.set $3 + local.set $1 loop $for-loop|6 - local.get $3 + local.get $1 i32.extend8_s i32.const 50 i32.lt_s if - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.extend8_s i32.const -1028477379 i32.mul @@ -3920,35 +3924,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/set/Set#find13 loop $while-continue|014 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -3956,9 +3960,9 @@ if (result i32) i32.const 0 else - local.get $1 - i32.load8_u local.get $3 + i32.load8_u + local.get $1 i32.const 255 i32.and i32.eq @@ -3967,14 +3971,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|014 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 i32.eqz if i32.const 0 @@ -3984,14 +3988,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $4 + local.get $1 call $~lib/set/Set#delete - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.extend8_s i32.const -1028477379 i32.mul @@ -4002,35 +4006,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/set/Set#find16 loop $while-continue|017 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -4038,9 +4042,9 @@ if (result i32) i32.const 0 else - local.get $1 - i32.load8_u local.get $3 + i32.load8_u + local.get $1 i32.const 255 i32.and i32.eq @@ -4049,14 +4053,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|017 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 if i32.const 0 i32.const 1568 @@ -4065,14 +4069,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 + local.set $1 br $for-loop|6 end end - local.get $7 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -4085,18 +4089,18 @@ unreachable end i32.const 0 - local.set $3 + local.set $1 loop $for-loop|8 - local.get $3 + local.get $1 i32.extend8_s i32.const 50 i32.lt_s if - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.extend8_s i32.const -1028477379 i32.mul @@ -4107,35 +4111,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/set/Set#find19 loop $while-continue|020 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -4143,9 +4147,9 @@ if (result i32) i32.const 0 else - local.get $1 - i32.load8_u local.get $3 + i32.load8_u + local.get $1 i32.const 255 i32.and i32.eq @@ -4154,14 +4158,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|020 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 if i32.const 0 i32.const 1568 @@ -4170,14 +4174,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $4 + local.get $1 call $~lib/set/Set#add - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.extend8_s i32.const -1028477379 i32.mul @@ -4188,35 +4192,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/set/Set#find22 loop $while-continue|023 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -4224,9 +4228,9 @@ if (result i32) i32.const 0 else - local.get $1 - i32.load8_u local.get $3 + i32.load8_u + local.get $1 i32.const 255 i32.and i32.eq @@ -4235,14 +4239,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|023 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 i32.eqz if i32.const 0 @@ -4252,14 +4256,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $4 + local.get $1 call $~lib/set/Set#delete - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.extend8_s i32.const -1028477379 i32.mul @@ -4270,35 +4274,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/set/Set#find25 loop $while-continue|026 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -4306,9 +4310,9 @@ if (result i32) i32.const 0 else - local.get $1 - i32.load8_u local.get $3 + i32.load8_u + local.get $1 i32.const 255 i32.and i32.eq @@ -4317,14 +4321,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|026 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 if i32.const 0 i32.const 1568 @@ -4333,14 +4337,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 + local.set $1 br $for-loop|8 end end - local.get $7 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -4352,9 +4356,9 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $4 call $~lib/set/Set#clear - local.get $7 + local.get $4 i32.load offset=20 if i32.const 0 @@ -4420,7 +4424,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $7 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -4434,12 +4438,12 @@ i32.const 3 i32.shl i32.add - local.set $7 + local.set $6 local.get $3 local.set $2 loop $while-continue|0 local.get $4 - local.get $7 + local.get $6 i32.ne if local.get $4 @@ -4455,6 +4459,8 @@ i32.store8 local.get $2 local.get $8 + i32.const 255 + i32.and i32.const -1028477379 i32.mul i32.const 374761394 @@ -4464,23 +4470,23 @@ i32.const 668265263 i32.mul local.tee $8 - local.get $8 i32.const 15 i32.shr_u + local.get $8 i32.xor i32.const -2048144777 i32.mul local.tee $8 - local.get $8 i32.const 13 i32.shr_u + local.get $8 i32.xor i32.const -1028477379 i32.mul local.tee $8 - local.get $8 i32.const 16 i32.shr_u + local.get $8 i32.xor local.get $1 i32.and @@ -4528,7 +4534,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -4543,78 +4549,80 @@ (local $2 i32) (local $3 i32) (local $4 i32) - local.get $0 - i32.load - local.get $1 - i32.const 255 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - local.get $2 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - local.get $2 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - local.get $2 - i32.const 16 - i32.shr_u - i32.xor - local.tee $3 - local.get $0 - i32.load offset=4 - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/set/Set#find + (local $5 i32) + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $0 + i32.load + local.get $1 + local.tee $2 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $3 + i32.const 15 + i32.shr_u + local.get $3 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $3 + i32.const 13 + i32.shr_u + local.get $3 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $3 + i32.const 16 + i32.shr_u + local.get $3 + i32.xor + local.tee $4 + local.get $0 + i32.load offset=4 + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $3 loop $while-continue|0 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 - local.tee $4 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load8_u - local.get $1 + local.get $2 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $4 + drop + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|0 end end i32.const 0 - local.set $2 end - local.get $2 i32.eqz if local.get $0 @@ -4652,11 +4660,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $4 + local.tee $3 i32.const 1 i32.add i32.store offset=16 - local.get $4 + local.get $3 i32.const 3 i32.shl local.get $2 @@ -4675,7 +4683,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $3 + local.get $4 i32.and i32.const 2 i32.shl @@ -4710,51 +4718,52 @@ (func $~lib/set/Set#delete (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - local.tee $2 - i32.const 255 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - local.get $1 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - local.get $1 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - local.get $1 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/set/Set#find + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + local.tee $2 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $1 + i32.const 15 + i32.shr_u + local.get $1 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $1 + i32.const 13 + i32.shr_u + local.get $1 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $1 + i32.const 16 + i32.shr_u + local.get $1 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $1 loop $while-continue|0 local.get $1 if + local.get $1 local.get $1 i32.load offset=4 local.tee $3 @@ -4771,6 +4780,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find + drop local.get $3 i32.const -2 i32.and @@ -4779,9 +4789,8 @@ end end i32.const 0 - local.set $1 end - local.get $1 + local.tee $1 i32.eqz if return @@ -4853,97 +4862,98 @@ block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 1836 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $2 - i64.const 0 - i64.store - local.get $2 - i32.const 0 - i32.store offset=8 - local.get $2 - call $~lib/set/Set#constructor - local.tee $7 - i32.store - loop $for-loop|1 - local.get $1 - i32.const 255 - i32.and - i32.const 100 - i32.lt_u - if - local.get $7 - i32.load - local.get $7 - i32.load offset=4 - local.get $1 - i32.const 255 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - i32.const 15 - i32.shr_u - local.get $2 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - i32.const 13 - i32.shr_u - local.get $2 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - i32.const 16 - i32.shr_u - local.get $2 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/set/Set#find + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $3 + i64.const 0 + i64.store + local.get $3 + i32.const 0 + i32.store offset=8 + local.get $3 + call $~lib/set/Set#constructor + local.tee $4 + i32.store + loop $for-loop|1 + local.get $1 + i32.const 255 + i32.and + i32.const 100 + i32.lt_u + if + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + local.get $1 + local.tee $3 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $6 + i32.const 15 + i32.shr_u + local.get $6 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $6 + i32.const 13 + i32.shr_u + local.get $6 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $6 + i32.const 16 + i32.shr_u + local.get $6 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $6 loop $while-continue|0 - local.get $2 + local.get $6 if - local.get $2 + local.get $6 + local.get $6 i32.load offset=4 - local.tee $5 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $6 i32.load8_u - local.get $1 + local.get $3 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $5 + drop + local.get $7 i32.const -2 i32.and - local.set $2 + local.set $6 br $while-continue|0 end end i32.const 0 - local.set $2 end - local.get $2 if i32.const 0 i32.const 1568 @@ -4952,80 +4962,81 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $4 local.get $1 call $~lib/set/Set#add - local.get $7 - i32.load - local.get $7 - i32.load offset=4 - local.get $1 - i32.const 255 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - i32.const 15 - i32.shr_u - local.get $2 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - i32.const 13 - i32.shr_u - local.get $2 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - i32.const 16 - i32.shr_u - local.get $2 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/set/Set#find1 + block $__inlined_func$~lib/set/Set#find1 (result i32) + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + local.get $1 + local.tee $3 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $6 + i32.const 15 + i32.shr_u + local.get $6 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $6 + i32.const 13 + i32.shr_u + local.get $6 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $6 + i32.const 16 + i32.shr_u + local.get $6 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $6 loop $while-continue|02 - local.get $2 + local.get $6 if - local.get $2 + local.get $6 + local.get $6 i32.load offset=4 - local.tee $5 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $6 i32.load8_u - local.get $1 + local.get $3 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find1 - local.get $5 + drop + local.get $7 i32.const -2 i32.and - local.set $2 + local.set $6 br $while-continue|02 end end i32.const 0 - local.set $2 end - local.get $2 i32.eqz if i32.const 0 @@ -5042,7 +5053,7 @@ br $for-loop|1 end end - local.get $7 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -5063,77 +5074,78 @@ i32.const 100 i32.lt_u if - local.get $7 - i32.load - local.get $7 - i32.load offset=4 - local.get $1 - i32.const 255 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - i32.const 15 - i32.shr_u - local.get $2 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - i32.const 13 - i32.shr_u - local.get $2 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - i32.const 16 - i32.shr_u - local.get $2 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/set/Set#find4 + block $__inlined_func$~lib/set/Set#find4 (result i32) + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + local.get $1 + local.tee $3 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $6 + i32.const 15 + i32.shr_u + local.get $6 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $6 + i32.const 13 + i32.shr_u + local.get $6 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $6 + i32.const 16 + i32.shr_u + local.get $6 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $6 loop $while-continue|05 - local.get $2 + local.get $6 if - local.get $2 + local.get $6 + local.get $6 i32.load offset=4 - local.tee $5 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $6 i32.load8_u - local.get $1 + local.get $3 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find4 - local.get $5 + drop + local.get $7 i32.const -2 i32.and - local.set $2 + local.set $6 br $while-continue|05 end end i32.const 0 - local.set $2 end - local.get $2 i32.eqz if i32.const 0 @@ -5143,80 +5155,81 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $4 local.get $1 call $~lib/set/Set#add - local.get $7 - i32.load - local.get $7 - i32.load offset=4 - local.get $1 - i32.const 255 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - i32.const 15 - i32.shr_u - local.get $2 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - i32.const 13 - i32.shr_u - local.get $2 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - i32.const 16 - i32.shr_u - local.get $2 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/set/Set#find7 + block $__inlined_func$~lib/set/Set#find7 (result i32) + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + local.get $1 + local.tee $3 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $6 + i32.const 15 + i32.shr_u + local.get $6 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $6 + i32.const 13 + i32.shr_u + local.get $6 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $6 + i32.const 16 + i32.shr_u + local.get $6 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $6 loop $while-continue|08 - local.get $2 + local.get $6 if - local.get $2 + local.get $6 + local.get $6 i32.load offset=4 - local.tee $5 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $6 i32.load8_u - local.get $1 + local.get $3 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find7 - local.get $5 + drop + local.get $7 i32.const -2 i32.and - local.set $2 + local.set $6 br $while-continue|08 end end i32.const 0 - local.set $2 end - local.get $2 i32.eqz if i32.const 0 @@ -5233,7 +5246,7 @@ br $for-loop|3 end end - local.get $7 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -5256,17 +5269,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $10 i32.const 0 i32.store - local.get $7 + local.get $4 i32.load offset=8 - local.set $5 - local.get $7 + local.set $8 + local.get $4 i32.load offset=16 - local.tee $6 - local.set $9 - local.get $8 + local.tee $9 + local.set $3 + local.get $10 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -5282,21 +5295,21 @@ i32.const 16 i32.const 6 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $11 i32.store - local.get $10 + local.get $11 i32.const 0 i32.store - local.get $10 + local.get $11 i32.const 0 i32.store offset=4 - local.get $10 + local.get $11 i32.const 0 i32.store offset=8 - local.get $10 + local.get $11 i32.const 0 i32.store offset=12 - local.get $9 + local.get $3 i32.const 1073741820 i32.gt_u if @@ -5308,54 +5321,54 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $3 i32.const 8 - local.get $9 + local.get $3 i32.const 8 i32.gt_u select - local.tee $1 + local.tee $6 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $1 i32.store offset=4 - local.get $11 local.get $1 + local.get $6 call $~lib/memory/memory.fill - local.get $10 local.get $11 + local.get $1 i32.store - local.get $11 + local.get $1 if - local.get $10 local.get $11 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 local.get $11 - i32.store offset=4 - local.get $10 local.get $1 + i32.store offset=4 + local.get $11 + local.get $6 i32.store offset=8 - local.get $10 - local.get $9 + local.get $11 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 local.get $10 + local.get $11 i32.store loop $for-loop|0 - local.get $4 - local.get $6 + local.get $5 + local.get $9 i32.lt_s if - local.get $4 + local.get $5 i32.const 3 i32.shl - local.get $5 + local.get $8 i32.add local.tee $1 i32.load offset=4 @@ -5363,98 +5376,99 @@ i32.and i32.eqz if - local.get $10 - local.get $0 + local.get $11 + local.get $2 local.get $1 i32.load8_u call $~lib/array/Array#__set - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 end - local.get $4 + local.get $5 i32.const 1 i32.add - local.set $4 + local.set $5 br $for-loop|0 end end - local.get $10 - local.get $0 + local.get $11 + local.get $2 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $10 - local.get $0 + local.get $11 + local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $11 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $0 + local.tee $3 i32.store offset=8 loop $for-loop|4 - local.get $10 + local.get $11 i32.load offset=12 - local.get $3 + local.get $0 i32.gt_s if - local.get $10 - local.get $3 + local.get $11 + local.get $0 call $~lib/array/Array#__get - local.tee $1 - i32.const 255 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - i32.const 15 - i32.shr_u - local.get $2 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - i32.const 13 - i32.shr_u - local.get $2 - i32.xor - i32.const -1028477379 - i32.mul - local.set $2 - local.get $7 - i32.load - local.get $7 - i32.load offset=4 - local.get $2 - i32.const 16 - i32.shr_u - local.get $2 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/set/Set#find10 + local.set $1 + block $__inlined_func$~lib/set/Set#find10 (result i32) + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + local.get $1 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|011 local.get $2 if + local.get $2 local.get $2 i32.load offset=4 - local.tee $4 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -5468,7 +5482,8 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $4 + drop + local.get $5 i32.const -2 i32.and local.set $2 @@ -5476,9 +5491,9 @@ end end i32.const 0 - local.set $2 end - local.get $2 + i32.const 0 + i32.ne i32.eqz if i32.const 0 @@ -5488,21 +5503,21 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $10 local.get $3 + local.get $11 + local.get $0 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|4 end end - local.get $0 + local.get $3 i32.load offset=20 - local.get $7 + local.get $4 i32.load offset=20 i32.ne if @@ -5514,85 +5529,86 @@ unreachable end i32.const 0 - local.set $3 + local.set $0 loop $for-loop|6 - local.get $3 + local.get $0 i32.const 255 i32.and i32.const 50 i32.lt_u if - local.get $7 - i32.load - local.get $7 - i32.load offset=4 - local.get $3 - i32.const 255 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - i32.const 15 - i32.shr_u - local.get $0 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - i32.const 13 - i32.shr_u - local.get $0 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - i32.const 16 - i32.shr_u - local.get $0 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/set/Set#find13 + block $__inlined_func$~lib/set/Set#find13 (result i32) + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + local.get $0 + local.tee $1 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|014 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 - local.tee $0 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load8_u - local.get $3 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find13 - local.get $0 + drop + local.get $3 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|014 end end i32.const 0 - local.set $1 end - local.get $1 i32.eqz if i32.const 0 @@ -5602,80 +5618,81 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 - call $~lib/set/Set#delete - local.get $7 - i32.load - local.get $7 - i32.load offset=4 - local.get $3 - i32.const 255 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - i32.const 15 - i32.shr_u - local.get $0 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - i32.const 13 - i32.shr_u - local.get $0 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - i32.const 16 - i32.shr_u + local.get $4 local.get $0 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/set/Set#find16 + call $~lib/set/Set#delete + block $__inlined_func$~lib/set/Set#find16 (result i32) + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + local.get $0 + local.tee $1 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|017 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 - local.tee $0 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load8_u - local.get $3 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find16 - local.get $0 + drop + local.get $3 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|017 end end i32.const 0 - local.set $1 end - local.get $1 if i32.const 0 i32.const 1568 @@ -5684,14 +5701,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|6 end end - local.get $7 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -5704,85 +5721,86 @@ unreachable end i32.const 0 - local.set $3 + local.set $0 loop $for-loop|8 - local.get $3 + local.get $0 i32.const 255 i32.and i32.const 50 i32.lt_u if - local.get $7 - i32.load - local.get $7 - i32.load offset=4 - local.get $3 - i32.const 255 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - i32.const 15 - i32.shr_u - local.get $0 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - i32.const 13 - i32.shr_u - local.get $0 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - i32.const 16 - i32.shr_u - local.get $0 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/set/Set#find19 + block $__inlined_func$~lib/set/Set#find19 (result i32) + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + local.get $0 + local.tee $1 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|020 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 - local.tee $0 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load8_u - local.get $3 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find19 - local.get $0 + drop + local.get $3 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|020 end end i32.const 0 - local.set $1 end - local.get $1 if i32.const 0 i32.const 1568 @@ -5791,80 +5809,81 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 - call $~lib/set/Set#add - local.get $7 - i32.load - local.get $7 - i32.load offset=4 - local.get $3 - i32.const 255 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - i32.const 15 - i32.shr_u - local.get $0 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - i32.const 13 - i32.shr_u - local.get $0 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - i32.const 16 - i32.shr_u + local.get $4 local.get $0 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/set/Set#find22 + call $~lib/set/Set#add + block $__inlined_func$~lib/set/Set#find22 (result i32) + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + local.get $0 + local.tee $1 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|023 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 - local.tee $0 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load8_u - local.get $3 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find22 - local.get $0 + drop + local.get $3 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|023 end end i32.const 0 - local.set $1 end - local.get $1 i32.eqz if i32.const 0 @@ -5874,80 +5893,81 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 - call $~lib/set/Set#delete - local.get $7 - i32.load - local.get $7 - i32.load offset=4 - local.get $3 - i32.const 255 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761394 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - i32.const 15 - i32.shr_u - local.get $0 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - i32.const 13 - i32.shr_u - local.get $0 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - i32.const 16 - i32.shr_u + local.get $4 local.get $0 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/set/Set#find25 + call $~lib/set/Set#delete + block $__inlined_func$~lib/set/Set#find25 (result i32) + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + local.get $0 + local.tee $1 + i32.const 255 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761394 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|026 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 - local.tee $0 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load8_u - local.get $3 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find25 - local.get $0 + drop + local.get $3 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|026 end end i32.const 0 - local.set $1 end - local.get $1 if i32.const 0 i32.const 1568 @@ -5956,14 +5976,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|8 end end - local.get $7 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -5975,9 +5995,9 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $4 call $~lib/set/Set#clear - local.get $7 + local.get $4 i32.load offset=20 if i32.const 0 @@ -6043,7 +6063,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $7 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -6057,12 +6077,12 @@ i32.const 3 i32.shl i32.add - local.set $7 + local.set $6 local.get $3 local.set $2 loop $while-continue|0 local.get $4 - local.get $7 + local.get $6 i32.ne if local.get $4 @@ -6088,23 +6108,23 @@ i32.const 668265263 i32.mul local.tee $8 - local.get $8 i32.const 15 i32.shr_u + local.get $8 i32.xor i32.const -2048144777 i32.mul local.tee $8 - local.get $8 i32.const 13 i32.shr_u + local.get $8 i32.xor i32.const -1028477379 i32.mul local.tee $8 - local.get $8 i32.const 16 i32.shr_u + local.get $8 i32.xor local.get $1 i32.and @@ -6152,7 +6172,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -6167,77 +6187,79 @@ (local $2 i32) (local $3 i32) (local $4 i32) - local.get $0 - i32.load - local.get $1 - i32.extend16_s - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - local.get $2 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - local.get $2 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - local.get $2 - i32.const 16 - i32.shr_u - i32.xor - local.tee $3 - local.get $0 - i32.load offset=4 - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/set/Set#find + (local $5 i32) + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $0 + i32.load + local.get $1 + local.tee $2 + i32.extend16_s + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $3 + i32.const 15 + i32.shr_u + local.get $3 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $3 + i32.const 13 + i32.shr_u + local.get $3 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $3 + i32.const 16 + i32.shr_u + local.get $3 + i32.xor + local.tee $4 + local.get $0 + i32.load offset=4 + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $3 loop $while-continue|0 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 - local.tee $4 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u - local.get $1 + local.get $2 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $4 + drop + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|0 end end i32.const 0 - local.set $2 end - local.get $2 i32.eqz if local.get $0 @@ -6275,11 +6297,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $4 + local.tee $3 i32.const 1 i32.add i32.store offset=16 - local.get $4 + local.get $3 i32.const 3 i32.shl local.get $2 @@ -6298,7 +6320,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $3 + local.get $4 i32.and i32.const 2 i32.shl @@ -6354,70 +6376,71 @@ local.get $0 i32.load offset=12 local.get $1 - i32.le_u - if - i32.const 1248 - i32.const 1616 - i32.const 107 - i32.const 42 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 1 - i32.shl - i32.add - i32.load16_s - ) - (func $~lib/set/Set#delete (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - local.tee $2 - i32.extend16_s - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - local.get $1 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - local.get $1 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - local.get $1 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 + i32.le_u + if + i32.const 1248 + i32.const 1616 + i32.const 107 + i32.const 42 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 1 i32.shl i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/set/Set#find + i32.load16_s + ) + (func $~lib/set/Set#delete (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + local.tee $2 + i32.extend16_s + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $1 + i32.const 15 + i32.shr_u + local.get $1 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $1 + i32.const 13 + i32.shr_u + local.get $1 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $1 + i32.const 16 + i32.shr_u + local.get $1 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $1 loop $while-continue|0 local.get $1 if + local.get $1 local.get $1 i32.load offset=4 local.tee $3 @@ -6434,6 +6457,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find + drop local.get $3 i32.const -2 i32.and @@ -6442,9 +6466,8 @@ end end i32.const 0 - local.set $1 end - local.get $1 + local.tee $1 i32.eqz if return @@ -6519,27 +6542,27 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 call $~lib/set/Set#constructor - local.tee $7 + local.tee $4 i32.store loop $for-loop|1 - local.get $1 + local.get $2 i32.extend16_s i32.const 100 i32.lt_s if - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.extend16_s i32.const -1028477379 i32.mul @@ -6549,62 +6572,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u - local.get $1 + local.get $2 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|0 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -6613,14 +6636,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $1 + local.get $4 + local.get $2 call $~lib/set/Set#add - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.extend16_s i32.const -1028477379 i32.mul @@ -6630,62 +6653,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u - local.get $1 + local.get $2 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find1 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|02 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -6695,14 +6718,14 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|1 end end - local.get $7 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -6715,18 +6738,18 @@ unreachable end i32.const 50 - local.set $1 + local.set $2 loop $for-loop|3 - local.get $1 + local.get $2 i32.extend16_s i32.const 100 i32.lt_s if - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.extend16_s i32.const -1028477379 i32.mul @@ -6736,62 +6759,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u - local.get $1 + local.get $2 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find4 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|05 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -6801,14 +6824,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $1 + local.get $4 + local.get $2 call $~lib/set/Set#add - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.extend16_s i32.const -1028477379 i32.mul @@ -6818,62 +6841,62 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u - local.get $1 + local.get $2 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find7 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|08 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -6883,14 +6906,14 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|3 end end - local.get $7 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -6903,8 +6926,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -6913,17 +6936,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $9 i32.const 0 i32.store - local.get $7 + local.get $4 i32.load offset=8 - local.set $5 - local.get $7 + local.set $7 + local.get $4 i32.load offset=16 - local.tee $6 - local.set $9 - local.get $8 + local.tee $10 + local.set $3 + local.get $9 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -6932,28 +6955,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 16 i32.const 8 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $2 i32.store - local.get $10 + local.get $2 i32.const 0 i32.store - local.get $10 + local.get $2 i32.const 0 i32.store offset=4 - local.get $10 + local.get $2 i32.const 0 i32.store offset=8 - local.get $10 + local.get $2 i32.const 0 i32.store offset=12 - local.get $9 + local.get $3 i32.const 536870910 i32.gt_u if @@ -6965,66 +6988,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $3 i32.const 8 - local.get $9 + local.get $3 i32.const 8 i32.gt_u select i32.const 1 i32.shl - local.tee $1 + local.tee $6 i32.const 0 call $~lib/rt/itcms/__new local.tee $11 i32.store offset=4 local.get $11 - local.get $1 + local.get $6 call $~lib/memory/memory.fill - local.get $10 + local.get $2 local.get $11 i32.store local.get $11 if - local.get $10 + local.get $2 local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $2 local.get $11 i32.store offset=4 - local.get $10 - local.get $1 + local.get $2 + local.get $6 i32.store offset=8 - local.get $10 - local.get $9 + local.get $2 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $10 + local.get $9 + local.get $2 i32.store loop $for-loop|0 - local.get $4 - local.get $6 + local.get $5 + local.get $10 i32.lt_s if - local.get $4 + local.get $5 i32.const 3 i32.shl - local.get $5 + local.get $7 i32.add - local.tee $1 + local.tee $3 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $10 + local.get $2 local.get $0 - local.get $1 + local.get $3 i32.load16_s call $~lib/array/Array#__set local.get $0 @@ -7032,41 +7055,41 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 1 i32.add - local.set $4 + local.set $5 br $for-loop|0 end end - local.get $10 + local.get $2 local.get $0 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity - local.get $10 + local.get $2 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|4 - local.get $10 + local.get $2 i32.load offset=12 - local.get $3 + local.get $1 i32.gt_s if - local.get $10 - local.get $3 + local.get $2 + local.get $1 call $~lib/array/Array#__get - local.tee $1 + local.tee $5 i32.extend16_s i32.const -1028477379 i32.mul @@ -7076,67 +7099,67 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.set $2 - local.get $7 + local.set $3 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 + local.get $3 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $4 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u - local.get $1 + local.get $5 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $4 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|011 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -7147,20 +7170,20 @@ unreachable end local.get $0 - local.get $10 - local.get $3 + local.get $2 + local.get $1 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 + local.set $1 br $for-loop|4 end end local.get $0 i32.load offset=20 - local.get $7 + local.get $4 i32.load offset=20 i32.ne if @@ -7172,18 +7195,18 @@ unreachable end i32.const 0 - local.set $3 + local.set $1 loop $for-loop|6 - local.get $3 + local.get $1 i32.extend16_s i32.const 50 i32.lt_s if - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.extend16_s i32.const -1028477379 i32.mul @@ -7194,35 +7217,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/set/Set#find13 loop $while-continue|014 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -7230,9 +7253,9 @@ if (result i32) i32.const 0 else - local.get $1 - i32.load16_u local.get $3 + i32.load16_u + local.get $1 i32.const 65535 i32.and i32.eq @@ -7241,14 +7264,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|014 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 i32.eqz if i32.const 0 @@ -7258,14 +7281,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $4 + local.get $1 call $~lib/set/Set#delete - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.extend16_s i32.const -1028477379 i32.mul @@ -7276,35 +7299,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/set/Set#find16 loop $while-continue|017 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -7312,9 +7335,9 @@ if (result i32) i32.const 0 else - local.get $1 - i32.load16_u local.get $3 + i32.load16_u + local.get $1 i32.const 65535 i32.and i32.eq @@ -7323,14 +7346,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|017 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 if i32.const 0 i32.const 1568 @@ -7339,14 +7362,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 + local.set $1 br $for-loop|6 end end - local.get $7 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -7359,18 +7382,18 @@ unreachable end i32.const 0 - local.set $3 + local.set $1 loop $for-loop|8 - local.get $3 + local.get $1 i32.extend16_s i32.const 50 i32.lt_s if - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.extend16_s i32.const -1028477379 i32.mul @@ -7381,35 +7404,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/set/Set#find19 loop $while-continue|020 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -7417,9 +7440,9 @@ if (result i32) i32.const 0 else - local.get $1 - i32.load16_u local.get $3 + i32.load16_u + local.get $1 i32.const 65535 i32.and i32.eq @@ -7428,14 +7451,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|020 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 if i32.const 0 i32.const 1568 @@ -7444,14 +7467,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $4 + local.get $1 call $~lib/set/Set#add - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.extend16_s i32.const -1028477379 i32.mul @@ -7462,35 +7485,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/set/Set#find22 loop $while-continue|023 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -7498,9 +7521,9 @@ if (result i32) i32.const 0 else - local.get $1 - i32.load16_u local.get $3 + i32.load16_u + local.get $1 i32.const 65535 i32.and i32.eq @@ -7509,14 +7532,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|023 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 i32.eqz if i32.const 0 @@ -7526,14 +7549,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $4 + local.get $1 call $~lib/set/Set#delete - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.extend16_s i32.const -1028477379 i32.mul @@ -7544,35 +7567,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/set/Set#find25 loop $while-continue|026 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -7580,9 +7603,9 @@ if (result i32) i32.const 0 else - local.get $1 - i32.load16_u local.get $3 + i32.load16_u + local.get $1 i32.const 65535 i32.and i32.eq @@ -7591,14 +7614,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|026 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 if i32.const 0 i32.const 1568 @@ -7607,14 +7630,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 + local.set $1 br $for-loop|8 end end - local.get $7 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -7626,9 +7649,9 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $4 call $~lib/set/Set#clear - local.get $7 + local.get $4 i32.load offset=20 if i32.const 0 @@ -7694,7 +7717,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $7 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -7708,12 +7731,12 @@ i32.const 3 i32.shl i32.add - local.set $7 + local.set $6 local.get $3 local.set $2 loop $while-continue|0 local.get $4 - local.get $7 + local.get $6 i32.ne if local.get $4 @@ -7729,6 +7752,8 @@ i32.store16 local.get $2 local.get $8 + i32.const 65535 + i32.and i32.const -1028477379 i32.mul i32.const 374761395 @@ -7738,23 +7763,23 @@ i32.const 668265263 i32.mul local.tee $8 - local.get $8 i32.const 15 i32.shr_u + local.get $8 i32.xor i32.const -2048144777 i32.mul local.tee $8 - local.get $8 i32.const 13 i32.shr_u + local.get $8 i32.xor i32.const -1028477379 i32.mul local.tee $8 - local.get $8 i32.const 16 i32.shr_u + local.get $8 i32.xor local.get $1 i32.and @@ -7802,7 +7827,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -7817,78 +7842,80 @@ (local $2 i32) (local $3 i32) (local $4 i32) - local.get $0 - i32.load - local.get $1 - i32.const 65535 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - local.get $2 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - local.get $2 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - local.get $2 - i32.const 16 - i32.shr_u - i32.xor - local.tee $3 - local.get $0 - i32.load offset=4 - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/set/Set#find + (local $5 i32) + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $0 + i32.load + local.get $1 + local.tee $2 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $3 + i32.const 15 + i32.shr_u + local.get $3 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $3 + i32.const 13 + i32.shr_u + local.get $3 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $3 + i32.const 16 + i32.shr_u + local.get $3 + i32.xor + local.tee $4 + local.get $0 + i32.load offset=4 + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $3 loop $while-continue|0 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 - local.tee $4 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $3 i32.load16_u - local.get $1 + local.get $2 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $4 + drop + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|0 end end i32.const 0 - local.set $2 end - local.get $2 i32.eqz if local.get $0 @@ -7926,11 +7953,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $4 + local.tee $3 i32.const 1 i32.add i32.store offset=16 - local.get $4 + local.get $3 i32.const 3 i32.shl local.get $2 @@ -7949,7 +7976,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $3 + local.get $4 i32.and i32.const 2 i32.shl @@ -7986,51 +8013,52 @@ (func $~lib/set/Set#delete (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - local.tee $2 - i32.const 65535 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - local.get $1 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - local.get $1 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - local.get $1 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/set/Set#find + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + local.tee $2 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $1 + i32.const 15 + i32.shr_u + local.get $1 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $1 + i32.const 13 + i32.shr_u + local.get $1 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $1 + i32.const 16 + i32.shr_u + local.get $1 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $1 loop $while-continue|0 local.get $1 if + local.get $1 local.get $1 i32.load offset=4 local.tee $3 @@ -8047,6 +8075,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find + drop local.get $3 i32.const -2 i32.and @@ -8055,9 +8084,8 @@ end end i32.const 0 - local.set $1 end - local.get $1 + local.tee $1 i32.eqz if return @@ -8132,15 +8160,15 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 call $~lib/set/Set#constructor - local.tee $7 + local.tee $4 i32.store loop $for-loop|1 local.get $1 @@ -8149,77 +8177,78 @@ i32.const 100 i32.lt_u if - local.get $7 - i32.load - local.get $7 - i32.load offset=4 - local.get $1 - i32.const 65535 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - i32.const 15 - i32.shr_u - local.get $2 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - i32.const 13 - i32.shr_u - local.get $2 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - i32.const 16 - i32.shr_u - local.get $2 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/set/Set#find + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + local.get $1 + local.tee $3 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $6 + i32.const 15 + i32.shr_u + local.get $6 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $6 + i32.const 13 + i32.shr_u + local.get $6 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $6 + i32.const 16 + i32.shr_u + local.get $6 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $6 loop $while-continue|0 - local.get $2 + local.get $6 if - local.get $2 + local.get $6 + local.get $6 i32.load offset=4 - local.tee $5 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $6 i32.load16_u - local.get $1 + local.get $3 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $5 + drop + local.get $7 i32.const -2 i32.and - local.set $2 + local.set $6 br $while-continue|0 end end i32.const 0 - local.set $2 end - local.get $2 if i32.const 0 i32.const 1568 @@ -8228,80 +8257,81 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $4 local.get $1 call $~lib/set/Set#add - local.get $7 - i32.load - local.get $7 - i32.load offset=4 - local.get $1 - i32.const 65535 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - i32.const 15 - i32.shr_u - local.get $2 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - i32.const 13 - i32.shr_u - local.get $2 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - i32.const 16 - i32.shr_u - local.get $2 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/set/Set#find1 + block $__inlined_func$~lib/set/Set#find1 (result i32) + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + local.get $1 + local.tee $3 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $6 + i32.const 15 + i32.shr_u + local.get $6 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $6 + i32.const 13 + i32.shr_u + local.get $6 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $6 + i32.const 16 + i32.shr_u + local.get $6 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $6 loop $while-continue|02 - local.get $2 + local.get $6 if - local.get $2 + local.get $6 + local.get $6 i32.load offset=4 - local.tee $5 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $6 i32.load16_u - local.get $1 + local.get $3 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find1 - local.get $5 + drop + local.get $7 i32.const -2 i32.and - local.set $2 + local.set $6 br $while-continue|02 end end i32.const 0 - local.set $2 end - local.get $2 i32.eqz if i32.const 0 @@ -8318,7 +8348,7 @@ br $for-loop|1 end end - local.get $7 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -8339,77 +8369,78 @@ i32.const 100 i32.lt_u if - local.get $7 - i32.load - local.get $7 - i32.load offset=4 - local.get $1 - i32.const 65535 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - i32.const 15 - i32.shr_u - local.get $2 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - i32.const 13 - i32.shr_u - local.get $2 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - i32.const 16 - i32.shr_u - local.get $2 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/set/Set#find4 + block $__inlined_func$~lib/set/Set#find4 (result i32) + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + local.get $1 + local.tee $3 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $6 + i32.const 15 + i32.shr_u + local.get $6 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $6 + i32.const 13 + i32.shr_u + local.get $6 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $6 + i32.const 16 + i32.shr_u + local.get $6 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $6 loop $while-continue|05 - local.get $2 + local.get $6 if - local.get $2 + local.get $6 + local.get $6 i32.load offset=4 - local.tee $5 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $6 i32.load16_u - local.get $1 + local.get $3 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find4 - local.get $5 + drop + local.get $7 i32.const -2 i32.and - local.set $2 + local.set $6 br $while-continue|05 end end i32.const 0 - local.set $2 end - local.get $2 i32.eqz if i32.const 0 @@ -8419,80 +8450,81 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $4 local.get $1 call $~lib/set/Set#add - local.get $7 - i32.load - local.get $7 - i32.load offset=4 - local.get $1 - i32.const 65535 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - i32.const 15 - i32.shr_u - local.get $2 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - i32.const 13 - i32.shr_u - local.get $2 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - i32.const 16 - i32.shr_u - local.get $2 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/set/Set#find7 + block $__inlined_func$~lib/set/Set#find7 (result i32) + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + local.get $1 + local.tee $3 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $6 + i32.const 15 + i32.shr_u + local.get $6 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $6 + i32.const 13 + i32.shr_u + local.get $6 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $6 + i32.const 16 + i32.shr_u + local.get $6 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $6 loop $while-continue|08 - local.get $2 + local.get $6 if - local.get $2 + local.get $6 + local.get $6 i32.load offset=4 - local.tee $5 + local.tee $7 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 + local.get $6 i32.load16_u - local.get $1 + local.get $3 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find7 - local.get $5 + drop + local.get $7 i32.const -2 i32.and - local.set $2 + local.set $6 br $while-continue|08 end end i32.const 0 - local.set $2 end - local.get $2 i32.eqz if i32.const 0 @@ -8509,7 +8541,7 @@ br $for-loop|3 end end - local.get $7 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -8532,17 +8564,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $10 i32.const 0 i32.store - local.get $7 + local.get $4 i32.load offset=8 - local.set $5 - local.get $7 + local.set $8 + local.get $4 i32.load offset=16 - local.tee $6 - local.set $9 - local.get $8 + local.tee $9 + local.set $3 + local.get $10 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -8558,21 +8590,21 @@ i32.const 16 i32.const 10 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $11 i32.store - local.get $10 + local.get $11 i32.const 0 i32.store - local.get $10 + local.get $11 i32.const 0 i32.store offset=4 - local.get $10 + local.get $11 i32.const 0 i32.store offset=8 - local.get $10 + local.get $11 i32.const 0 i32.store offset=12 - local.get $9 + local.get $3 i32.const 536870910 i32.gt_u if @@ -8584,56 +8616,56 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $3 i32.const 8 - local.get $9 + local.get $3 i32.const 8 i32.gt_u select i32.const 1 i32.shl - local.tee $1 + local.tee $6 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $1 i32.store offset=4 - local.get $11 local.get $1 + local.get $6 call $~lib/memory/memory.fill - local.get $10 local.get $11 + local.get $1 i32.store - local.get $11 + local.get $1 if - local.get $10 local.get $11 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 local.get $11 - i32.store offset=4 - local.get $10 local.get $1 + i32.store offset=4 + local.get $11 + local.get $6 i32.store offset=8 - local.get $10 - local.get $9 + local.get $11 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 local.get $10 + local.get $11 i32.store loop $for-loop|0 - local.get $4 - local.get $6 + local.get $5 + local.get $9 i32.lt_s if - local.get $4 + local.get $5 i32.const 3 i32.shl - local.get $5 + local.get $8 i32.add local.tee $1 i32.load offset=4 @@ -8641,98 +8673,99 @@ i32.and i32.eqz if - local.get $10 - local.get $0 + local.get $11 + local.get $2 local.get $1 i32.load16_u call $~lib/array/Array#__set - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 end - local.get $4 + local.get $5 i32.const 1 i32.add - local.set $4 + local.set $5 br $for-loop|0 end end - local.get $10 - local.get $0 + local.get $11 + local.get $2 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity - local.get $10 - local.get $0 + local.get $11 + local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $11 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $0 + local.tee $3 i32.store offset=8 loop $for-loop|4 - local.get $10 + local.get $11 i32.load offset=12 - local.get $3 + local.get $0 i32.gt_s if - local.get $10 - local.get $3 + local.get $11 + local.get $0 call $~lib/array/Array#__get - local.tee $1 - i32.const 65535 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - i32.const 15 - i32.shr_u - local.get $2 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - i32.const 13 - i32.shr_u - local.get $2 - i32.xor - i32.const -1028477379 - i32.mul - local.set $2 - local.get $7 - i32.load - local.get $7 - i32.load offset=4 - local.get $2 - i32.const 16 - i32.shr_u - local.get $2 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/set/Set#find10 + local.set $1 + block $__inlined_func$~lib/set/Set#find10 (result i32) + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + local.get $1 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|011 local.get $2 if + local.get $2 local.get $2 i32.load offset=4 - local.tee $4 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -8746,7 +8779,8 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $4 + drop + local.get $5 i32.const -2 i32.and local.set $2 @@ -8754,9 +8788,9 @@ end end i32.const 0 - local.set $2 end - local.get $2 + i32.const 0 + i32.ne i32.eqz if i32.const 0 @@ -8766,21 +8800,21 @@ call $~lib/builtins/abort unreachable end - local.get $0 - local.get $10 local.get $3 + local.get $11 + local.get $0 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|4 end end - local.get $0 + local.get $3 i32.load offset=20 - local.get $7 + local.get $4 i32.load offset=20 i32.ne if @@ -8792,85 +8826,86 @@ unreachable end i32.const 0 - local.set $3 + local.set $0 loop $for-loop|6 - local.get $3 + local.get $0 i32.const 65535 i32.and i32.const 50 i32.lt_u if - local.get $7 - i32.load - local.get $7 - i32.load offset=4 - local.get $3 - i32.const 65535 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - i32.const 15 - i32.shr_u - local.get $0 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - i32.const 13 - i32.shr_u - local.get $0 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - i32.const 16 - i32.shr_u - local.get $0 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/set/Set#find13 + block $__inlined_func$~lib/set/Set#find13 (result i32) + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + local.get $0 + local.tee $1 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|014 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 - local.tee $0 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load16_u - local.get $3 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find13 - local.get $0 + drop + local.get $3 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|014 end end i32.const 0 - local.set $1 end - local.get $1 i32.eqz if i32.const 0 @@ -8880,80 +8915,81 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 - call $~lib/set/Set#delete - local.get $7 - i32.load - local.get $7 - i32.load offset=4 - local.get $3 - i32.const 65535 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - i32.const 15 - i32.shr_u - local.get $0 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - i32.const 13 - i32.shr_u - local.get $0 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - i32.const 16 - i32.shr_u + local.get $4 local.get $0 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/set/Set#find16 + call $~lib/set/Set#delete + block $__inlined_func$~lib/set/Set#find16 (result i32) + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + local.get $0 + local.tee $1 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|017 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 - local.tee $0 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load16_u - local.get $3 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find16 - local.get $0 + drop + local.get $3 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|017 end end i32.const 0 - local.set $1 end - local.get $1 if i32.const 0 i32.const 1568 @@ -8962,14 +8998,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|6 end end - local.get $7 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -8982,85 +9018,86 @@ unreachable end i32.const 0 - local.set $3 + local.set $0 loop $for-loop|8 - local.get $3 + local.get $0 i32.const 65535 i32.and i32.const 50 i32.lt_u if - local.get $7 - i32.load - local.get $7 - i32.load offset=4 - local.get $3 - i32.const 65535 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - i32.const 15 - i32.shr_u - local.get $0 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - i32.const 13 - i32.shr_u - local.get $0 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - i32.const 16 - i32.shr_u - local.get $0 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/set/Set#find19 + block $__inlined_func$~lib/set/Set#find19 (result i32) + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + local.get $0 + local.tee $1 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|020 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 - local.tee $0 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load16_u - local.get $3 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find19 - local.get $0 + drop + local.get $3 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|020 end end i32.const 0 - local.set $1 end - local.get $1 if i32.const 0 i32.const 1568 @@ -9069,80 +9106,81 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 - call $~lib/set/Set#add - local.get $7 - i32.load - local.get $7 - i32.load offset=4 - local.get $3 - i32.const 65535 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - i32.const 15 - i32.shr_u - local.get $0 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - i32.const 13 - i32.shr_u - local.get $0 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - i32.const 16 - i32.shr_u + local.get $4 local.get $0 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/set/Set#find22 + call $~lib/set/Set#add + block $__inlined_func$~lib/set/Set#find22 (result i32) + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + local.get $0 + local.tee $1 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|023 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 - local.tee $0 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load16_u - local.get $3 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find22 - local.get $0 + drop + local.get $3 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|023 end end i32.const 0 - local.set $1 end - local.get $1 i32.eqz if i32.const 0 @@ -9152,80 +9190,81 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 - call $~lib/set/Set#delete - local.get $7 - i32.load - local.get $7 - i32.load offset=4 - local.get $3 - i32.const 65535 - i32.and - i32.const -1028477379 - i32.mul - i32.const 374761395 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - i32.const 15 - i32.shr_u - local.get $0 - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - i32.const 13 - i32.shr_u - local.get $0 - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - i32.const 16 - i32.shr_u + local.get $4 local.get $0 - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/set/Set#find25 + call $~lib/set/Set#delete + block $__inlined_func$~lib/set/Set#find25 (result i32) + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + local.get $0 + local.tee $1 + i32.const 65535 + i32.and + i32.const -1028477379 + i32.mul + i32.const 374761395 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|026 - local.get $1 + local.get $2 if - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 - local.tee $0 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 + local.get $2 i32.load16_u - local.get $3 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find25 - local.get $0 + drop + local.get $3 i32.const -2 i32.and - local.set $1 + local.set $2 br $while-continue|026 end end i32.const 0 - local.set $1 end - local.get $1 if i32.const 0 i32.const 1568 @@ -9234,14 +9273,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|8 end end - local.get $7 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -9253,9 +9292,9 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $4 call $~lib/set/Set#clear - local.get $7 + local.get $4 i32.load offset=20 if i32.const 0 @@ -9321,7 +9360,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $7 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -9335,12 +9374,12 @@ i32.const 3 i32.shl i32.add - local.set $7 + local.set $6 local.get $3 local.set $2 loop $while-continue|0 local.get $4 - local.get $7 + local.get $6 i32.ne if local.get $4 @@ -9365,23 +9404,23 @@ i32.const 668265263 i32.mul local.tee $8 - local.get $8 i32.const 15 i32.shr_u + local.get $8 i32.xor i32.const -2048144777 i32.mul local.tee $8 - local.get $8 i32.const 13 i32.shr_u + local.get $8 i32.xor i32.const -1028477379 i32.mul local.tee $8 - local.get $8 i32.const 16 i32.shr_u + local.get $8 i32.xor local.get $1 i32.and @@ -9429,7 +9468,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -9444,74 +9483,76 @@ (local $2 i32) (local $3 i32) (local $4 i32) - local.get $0 - i32.load - local.get $1 - i32.const -1028477379 - i32.mul - i32.const 374761397 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - local.get $2 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - local.get $2 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - local.get $2 - i32.const 16 - i32.shr_u - i32.xor - local.tee $3 - local.get $0 - i32.load offset=4 - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/set/Set#find + (local $5 i32) + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $0 + i32.load + local.get $1 + local.tee $2 + i32.const -1028477379 + i32.mul + i32.const 374761397 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $3 + i32.const 15 + i32.shr_u + local.get $3 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $3 + i32.const 13 + i32.shr_u + local.get $3 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $3 + i32.const 16 + i32.shr_u + local.get $3 + i32.xor + local.tee $4 + local.get $0 + i32.load offset=4 + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $3 loop $while-continue|0 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 - local.tee $4 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 local.get $2 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $4 + drop + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|0 end end i32.const 0 - local.set $2 end - local.get $2 i32.eqz if local.get $0 @@ -9549,11 +9590,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $4 + local.tee $3 i32.const 1 i32.add i32.store offset=16 - local.get $4 + local.get $3 i32.const 3 i32.shl local.get $2 @@ -9572,7 +9613,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $3 + local.get $4 i32.and i32.const 2 i32.shl @@ -9648,49 +9689,50 @@ (func $~lib/set/Set#delete (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - local.tee $2 - i32.const -1028477379 - i32.mul - i32.const 374761397 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - local.get $1 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - local.get $1 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - local.get $1 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/set/Set#find + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + local.tee $2 + i32.const -1028477379 + i32.mul + i32.const 374761397 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $1 + i32.const 15 + i32.shr_u + local.get $1 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $1 + i32.const 13 + i32.shr_u + local.get $1 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $1 + i32.const 16 + i32.shr_u + local.get $1 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $1 loop $while-continue|0 local.get $1 if + local.get $1 local.get $1 i32.load offset=4 local.tee $3 @@ -9705,6 +9747,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find + drop local.get $3 i32.const -2 i32.and @@ -9713,9 +9756,8 @@ end end i32.const 0 - local.set $1 end - local.get $1 + local.tee $1 i32.eqz if return @@ -9790,26 +9832,26 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 call $~lib/set/Set#constructor - local.tee $7 + local.tee $4 i32.store loop $for-loop|0 - local.get $1 + local.get $2 i32.const 100 i32.lt_s if - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -9818,60 +9860,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 local.get $2 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|0 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -9880,14 +9922,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $1 + local.get $4 + local.get $2 call $~lib/set/Set#add - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -9896,60 +9938,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 local.get $2 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find1 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|02 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -9959,14 +10001,14 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|0 end end - local.get $7 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -9979,17 +10021,17 @@ unreachable end i32.const 50 - local.set $1 + local.set $2 loop $for-loop|1 - local.get $1 + local.get $2 i32.const 100 i32.lt_s if - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -9998,60 +10040,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 local.get $2 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find4 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|05 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -10061,14 +10103,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $1 + local.get $4 + local.get $2 call $~lib/set/Set#add - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10077,60 +10119,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 local.get $2 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find7 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|08 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -10140,14 +10182,14 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|1 end end - local.get $7 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -10160,8 +10202,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -10170,17 +10212,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $9 i32.const 0 i32.store - local.get $7 + local.get $4 i32.load offset=8 - local.set $5 - local.get $7 + local.set $7 + local.get $4 i32.load offset=16 - local.tee $6 - local.set $9 - local.get $8 + local.tee $10 + local.set $3 + local.get $9 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -10189,28 +10231,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 16 i32.const 12 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $2 i32.store - local.get $10 + local.get $2 i32.const 0 i32.store - local.get $10 + local.get $2 i32.const 0 i32.store offset=4 - local.get $10 + local.get $2 i32.const 0 i32.store offset=8 - local.get $10 + local.get $2 i32.const 0 i32.store offset=12 - local.get $9 + local.get $3 i32.const 268435455 i32.gt_u if @@ -10222,66 +10264,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $3 i32.const 8 - local.get $9 + local.get $3 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $1 + local.tee $6 i32.const 0 call $~lib/rt/itcms/__new local.tee $11 i32.store offset=4 local.get $11 - local.get $1 + local.get $6 call $~lib/memory/memory.fill - local.get $10 + local.get $2 local.get $11 i32.store local.get $11 if - local.get $10 + local.get $2 local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $2 local.get $11 i32.store offset=4 - local.get $10 - local.get $1 + local.get $2 + local.get $6 i32.store offset=8 - local.get $10 - local.get $9 + local.get $2 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $10 + local.get $9 + local.get $2 i32.store loop $for-loop|01 - local.get $4 - local.get $6 + local.get $5 + local.get $10 i32.lt_s if - local.get $4 + local.get $5 i32.const 3 i32.shl - local.get $5 + local.get $7 i32.add - local.tee $1 + local.tee $3 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $10 + local.get $2 local.get $0 - local.get $1 + local.get $3 i32.load call $~lib/array/Array#__set local.get $0 @@ -10289,41 +10331,41 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 1 i32.add - local.set $4 + local.set $5 br $for-loop|01 end end - local.get $10 + local.get $2 local.get $0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $10 + local.get $2 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|2 - local.get $10 + local.get $2 i32.load offset=12 - local.get $3 + local.get $1 i32.gt_s if - local.get $10 - local.get $3 + local.get $2 + local.get $1 call $~lib/array/Array#__get - local.tee $1 + local.tee $5 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10332,65 +10374,65 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.set $2 - local.get $7 + local.set $3 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 + local.get $3 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $4 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 - local.get $2 + local.get $5 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $4 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|011 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -10401,20 +10443,20 @@ unreachable end local.get $0 - local.get $10 - local.get $3 + local.get $2 + local.get $1 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 + local.set $1 br $for-loop|2 end end local.get $0 i32.load offset=20 - local.get $7 + local.get $4 i32.load offset=20 i32.ne if @@ -10426,17 +10468,17 @@ unreachable end i32.const 0 - local.set $3 + local.set $1 loop $for-loop|3 - local.get $3 + local.get $1 i32.const 50 i32.lt_s if - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10446,35 +10488,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/set/Set#find13 loop $while-continue|014 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -10482,8 +10524,8 @@ if (result i32) i32.const 0 else - local.get $3 local.get $1 + local.get $3 i32.load i32.eq end @@ -10491,14 +10533,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|014 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 i32.eqz if i32.const 0 @@ -10508,14 +10550,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $4 + local.get $1 call $~lib/set/Set#delete - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10525,35 +10567,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/set/Set#find16 loop $while-continue|017 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -10561,8 +10603,8 @@ if (result i32) i32.const 0 else - local.get $3 local.get $1 + local.get $3 i32.load i32.eq end @@ -10570,14 +10612,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|017 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 if i32.const 0 i32.const 1568 @@ -10586,14 +10628,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 + local.set $1 br $for-loop|3 end end - local.get $7 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -10606,17 +10648,17 @@ unreachable end i32.const 0 - local.set $3 + local.set $1 loop $for-loop|4 - local.get $3 + local.get $1 i32.const 50 i32.lt_s if - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10626,35 +10668,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/set/Set#find19 loop $while-continue|020 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -10662,8 +10704,8 @@ if (result i32) i32.const 0 else - local.get $3 local.get $1 + local.get $3 i32.load i32.eq end @@ -10671,14 +10713,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|020 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 if i32.const 0 i32.const 1568 @@ -10687,14 +10729,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $4 + local.get $1 call $~lib/set/Set#add - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10704,35 +10746,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/set/Set#find22 loop $while-continue|023 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -10740,8 +10782,8 @@ if (result i32) i32.const 0 else - local.get $3 local.get $1 + local.get $3 i32.load i32.eq end @@ -10749,14 +10791,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|023 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 i32.eqz if i32.const 0 @@ -10766,14 +10808,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $4 + local.get $1 call $~lib/set/Set#delete - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10783,35 +10825,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/set/Set#find25 loop $while-continue|026 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -10819,8 +10861,8 @@ if (result i32) i32.const 0 else - local.get $3 local.get $1 + local.get $3 i32.load i32.eq end @@ -10828,14 +10870,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|026 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 if i32.const 0 i32.const 1568 @@ -10844,14 +10886,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 + local.set $1 br $for-loop|4 end end - local.get $7 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -10863,9 +10905,9 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $4 call $~lib/set/Set#clear - local.get $7 + local.get $4 i32.load offset=20 if i32.const 0 @@ -10931,7 +10973,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $7 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -10945,12 +10987,12 @@ i32.const 3 i32.shl i32.add - local.set $7 + local.set $6 local.get $3 local.set $2 loop $while-continue|0 local.get $4 - local.get $7 + local.get $6 i32.ne if local.get $4 @@ -10975,23 +11017,23 @@ i32.const 668265263 i32.mul local.tee $8 - local.get $8 i32.const 15 i32.shr_u + local.get $8 i32.xor i32.const -2048144777 i32.mul local.tee $8 - local.get $8 i32.const 13 i32.shr_u + local.get $8 i32.xor i32.const -1028477379 i32.mul local.tee $8 - local.get $8 i32.const 16 i32.shr_u + local.get $8 i32.xor local.get $1 i32.and @@ -11039,89 +11081,91 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 - i32.store offset=12 - local.get $0 - local.get $0 - i32.load offset=20 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - ) - (func $~lib/set/Set#add (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $0 - i32.load - local.get $1 - i32.const -1028477379 - i32.mul - i32.const 374761397 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - local.get $2 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - local.get $2 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - local.get $2 - i32.const 16 - i32.shr_u - i32.xor - local.tee $3 + local.get $7 + i32.store offset=12 local.get $0 - i32.load offset=4 - i32.and - i32.const 2 - i32.shl + local.get $0 + i32.load offset=20 + i32.store offset=16 + global.get $~lib/memory/__stack_pointer + i32.const 8 i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/set/Set#find + global.set $~lib/memory/__stack_pointer + ) + (func $~lib/set/Set#add (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $0 + i32.load + local.get $1 + local.tee $2 + i32.const -1028477379 + i32.mul + i32.const 374761397 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $3 + i32.const 15 + i32.shr_u + local.get $3 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $3 + i32.const 13 + i32.shr_u + local.get $3 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $3 + i32.const 16 + i32.shr_u + local.get $3 + i32.xor + local.tee $4 + local.get $0 + i32.load offset=4 + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $3 loop $while-continue|0 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 + local.get $3 i32.load offset=4 - local.tee $4 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 local.get $2 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $4 + drop + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|0 end end i32.const 0 - local.set $2 end - local.get $2 i32.eqz if local.get $0 @@ -11159,11 +11203,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $4 + local.tee $3 i32.const 1 i32.add i32.store offset=16 - local.get $4 + local.get $3 i32.const 3 i32.shl local.get $2 @@ -11182,7 +11226,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $3 + local.get $4 i32.and i32.const 2 i32.shl @@ -11219,49 +11263,50 @@ (func $~lib/set/Set#delete (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - local.tee $2 - i32.const -1028477379 - i32.mul - i32.const 374761397 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $1 - local.get $1 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $1 - local.get $1 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $1 - local.get $1 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $1 - block $__inlined_func$~lib/set/Set#find + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + local.tee $2 + i32.const -1028477379 + i32.mul + i32.const 374761397 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $1 + i32.const 15 + i32.shr_u + local.get $1 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $1 + i32.const 13 + i32.shr_u + local.get $1 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $1 + i32.const 16 + i32.shr_u + local.get $1 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $1 loop $while-continue|0 local.get $1 if + local.get $1 local.get $1 i32.load offset=4 local.tee $3 @@ -11276,6 +11321,7 @@ i32.eq end br_if $__inlined_func$~lib/set/Set#find + drop local.get $3 i32.const -2 i32.and @@ -11284,9 +11330,8 @@ end end i32.const 0 - local.set $1 end - local.get $1 + local.tee $1 i32.eqz if return @@ -11361,26 +11406,26 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 call $~lib/set/Set#constructor - local.tee $7 + local.tee $4 i32.store loop $for-loop|0 - local.get $1 + local.get $2 i32.const 100 i32.lt_u if - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -11389,60 +11434,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 local.get $2 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|0 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -11451,14 +11496,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $1 + local.get $4 + local.get $2 call $~lib/set/Set#add - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -11467,60 +11512,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 local.get $2 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find1 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|02 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -11530,14 +11575,14 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|0 end end - local.get $7 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -11550,17 +11595,17 @@ unreachable end i32.const 50 - local.set $1 + local.set $2 loop $for-loop|1 - local.get $1 + local.get $2 i32.const 100 i32.lt_u if - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -11569,60 +11614,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 local.get $2 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find4 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|05 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -11632,14 +11677,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $1 + local.get $4 + local.get $2 call $~lib/set/Set#add - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $1 + local.get $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -11648,60 +11693,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 local.get $2 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find7 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|08 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -11711,14 +11756,14 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $for-loop|1 end end - local.get $7 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -11731,8 +11776,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -11741,17 +11786,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $9 i32.const 0 i32.store - local.get $7 + local.get $4 i32.load offset=8 - local.set $5 - local.get $7 + local.set $7 + local.get $4 i32.load offset=16 - local.tee $6 - local.set $9 - local.get $8 + local.tee $10 + local.set $3 + local.get $9 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -11760,28 +11805,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 16 i32.const 14 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $2 i32.store - local.get $10 + local.get $2 i32.const 0 i32.store - local.get $10 + local.get $2 i32.const 0 i32.store offset=4 - local.get $10 + local.get $2 i32.const 0 i32.store offset=8 - local.get $10 + local.get $2 i32.const 0 i32.store offset=12 - local.get $9 + local.get $3 i32.const 268435455 i32.gt_u if @@ -11793,66 +11838,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $3 i32.const 8 - local.get $9 + local.get $3 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $1 + local.tee $6 i32.const 0 call $~lib/rt/itcms/__new local.tee $11 i32.store offset=4 local.get $11 - local.get $1 + local.get $6 call $~lib/memory/memory.fill - local.get $10 + local.get $2 local.get $11 i32.store local.get $11 if - local.get $10 + local.get $2 local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $2 local.get $11 i32.store offset=4 - local.get $10 - local.get $1 + local.get $2 + local.get $6 i32.store offset=8 - local.get $10 - local.get $9 + local.get $2 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $10 + local.get $9 + local.get $2 i32.store loop $for-loop|01 - local.get $4 - local.get $6 + local.get $5 + local.get $10 i32.lt_s if - local.get $4 + local.get $5 i32.const 3 i32.shl - local.get $5 + local.get $7 i32.add - local.tee $1 + local.tee $3 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $10 + local.get $2 local.get $0 - local.get $1 + local.get $3 i32.load call $~lib/array/Array#__set local.get $0 @@ -11860,41 +11905,41 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 1 i32.add - local.set $4 + local.set $5 br $for-loop|01 end end - local.get $10 + local.get $2 local.get $0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $10 + local.get $2 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|2 - local.get $10 + local.get $2 i32.load offset=12 - local.get $3 + local.get $1 i32.gt_s if - local.get $10 - local.get $3 + local.get $2 + local.get $1 call $~lib/array/Array#__get - local.tee $1 + local.tee $5 i32.const -1028477379 i32.mul i32.const 374761397 @@ -11903,65 +11948,65 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u - local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u - local.get $2 i32.xor i32.const -1028477379 i32.mul - local.set $2 - local.get $7 + local.set $3 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 + local.get $3 i32.const 16 i32.shr_u - local.get $2 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $4 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $1 - local.get $2 + local.get $5 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $4 + local.get $6 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|011 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -11972,20 +12017,20 @@ unreachable end local.get $0 - local.get $10 - local.get $3 + local.get $2 + local.get $1 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 + local.set $1 br $for-loop|2 end end local.get $0 i32.load offset=20 - local.get $7 + local.get $4 i32.load offset=20 i32.ne if @@ -11997,17 +12042,17 @@ unreachable end i32.const 0 - local.set $3 + local.set $1 loop $for-loop|3 - local.get $3 + local.get $1 i32.const 50 i32.lt_u if - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12017,35 +12062,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/set/Set#find13 loop $while-continue|014 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -12053,8 +12098,8 @@ if (result i32) i32.const 0 else - local.get $3 local.get $1 + local.get $3 i32.load i32.eq end @@ -12062,14 +12107,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|014 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 i32.eqz if i32.const 0 @@ -12079,14 +12124,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $4 + local.get $1 call $~lib/set/Set#delete - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12096,35 +12141,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/set/Set#find16 loop $while-continue|017 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -12132,8 +12177,8 @@ if (result i32) i32.const 0 else - local.get $3 local.get $1 + local.get $3 i32.load i32.eq end @@ -12141,14 +12186,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|017 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 if i32.const 0 i32.const 1568 @@ -12157,14 +12202,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 + local.set $1 br $for-loop|3 end end - local.get $7 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -12177,17 +12222,17 @@ unreachable end i32.const 0 - local.set $3 + local.set $1 loop $for-loop|4 - local.get $3 + local.get $1 i32.const 50 i32.lt_u if - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12197,35 +12242,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/set/Set#find19 loop $while-continue|020 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -12233,8 +12278,8 @@ if (result i32) i32.const 0 else - local.get $3 local.get $1 + local.get $3 i32.load i32.eq end @@ -12242,14 +12287,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|020 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 if i32.const 0 i32.const 1568 @@ -12258,14 +12303,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $4 + local.get $1 call $~lib/set/Set#add - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12275,35 +12320,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/set/Set#find22 loop $while-continue|023 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -12311,8 +12356,8 @@ if (result i32) i32.const 0 else - local.get $3 local.get $1 + local.get $3 i32.load i32.eq end @@ -12320,14 +12365,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|023 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 i32.eqz if i32.const 0 @@ -12337,14 +12382,14 @@ call $~lib/builtins/abort unreachable end - local.get $7 - local.get $3 + local.get $4 + local.get $1 call $~lib/set/Set#delete - local.get $7 + local.get $4 i32.load - local.get $7 + local.get $4 i32.load offset=4 - local.get $3 + local.get $1 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12354,35 +12399,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $1 + local.set $3 block $__inlined_func$~lib/set/Set#find25 loop $while-continue|026 - local.get $1 + local.get $3 if - local.get $1 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -12390,8 +12435,8 @@ if (result i32) i32.const 0 else - local.get $3 local.get $1 + local.get $3 i32.load i32.eq end @@ -12399,14 +12444,14 @@ local.get $0 i32.const -2 i32.and - local.set $1 + local.set $3 br $while-continue|026 end end i32.const 0 - local.set $1 + local.set $3 end - local.get $1 + local.get $3 if i32.const 0 i32.const 1568 @@ -12415,14 +12460,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 + local.set $1 br $for-loop|4 end end - local.get $7 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -12434,9 +12479,9 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $4 call $~lib/set/Set#clear - local.get $7 + local.get $4 i32.load offset=20 if i32.const 0 @@ -12461,60 +12506,61 @@ ) (func $~lib/set/Set#has (param $0 i32) (param $1 i64) (result i32) (local $2 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.const 374761401 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - local.get $0 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - local.get $0 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - local.get $0 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $0 - block $__inlined_func$~lib/set/Set#find + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.const 374761401 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $0 + i32.const 15 + i32.shr_u + local.get $0 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $0 + i32.const 13 + i32.shr_u + local.get $0 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $0 + i32.const 16 + i32.shr_u + local.get $0 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $0 loop $while-continue|0 local.get $0 if + local.get $0 local.get $0 i32.load offset=8 local.tee $2 @@ -12529,6 +12575,7 @@ i64.eq end br_if $__inlined_func$~lib/set/Set#find + drop local.get $2 i32.const -2 i32.and @@ -12537,9 +12584,7 @@ end end i32.const 0 - local.set $0 end - local.get $0 i32.const 0 i32.ne ) @@ -12548,9 +12593,9 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i64) + (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -12579,7 +12624,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -12587,7 +12632,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -12595,34 +12640,33 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $8 + local.tee $4 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $4 + local.set $6 local.get $3 local.set $2 loop $while-continue|0 local.get $4 - local.get $8 + local.get $6 i32.ne if - local.get $8 + local.get $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $8 + local.get $4 i64.load - local.tee $6 + local.tee $8 i64.store local.get $2 - local.get $1 - local.get $6 + local.get $8 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -12632,7 +12676,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $6 + local.get $8 i64.const 32 i64.shr_u i32.wrap_i64 @@ -12644,28 +12688,29 @@ i32.const 668265263 i32.mul local.tee $9 - local.get $9 i32.const 15 i32.shr_u + local.get $9 i32.xor i32.const -2048144777 i32.mul local.tee $9 - local.get $9 i32.const 13 i32.shr_u + local.get $9 i32.xor i32.const -1028477379 i32.mul local.tee $9 - local.get $9 i32.const 16 i32.shr_u + local.get $9 i32.xor + local.get $1 i32.and i32.const 2 i32.shl - local.get $7 + local.get $5 i32.add local.tee $9 i32.load @@ -12678,20 +12723,20 @@ i32.add local.set $2 end - local.get $8 + local.get $4 i32.const 16 i32.add - local.set $8 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $7 + local.get $5 i32.store - local.get $7 + local.get $5 if local.get $0 - local.get $7 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -12707,7 +12752,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -12722,61 +12767,62 @@ (local $2 i32) (local $3 i32) (local $4 i32) - local.get $0 - i32.load - local.get $1 - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.const 374761401 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - local.get $2 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - local.get $2 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - local.get $2 - i32.const 16 - i32.shr_u - i32.xor - local.tee $3 - local.get $0 - i32.load offset=4 - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/set/Set#find + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $0 + i32.load + local.get $1 + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.const 374761401 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + local.tee $3 + local.get $0 + i32.load offset=4 + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|0 local.get $2 if + local.get $2 local.get $2 i32.load offset=8 local.tee $4 @@ -12791,6 +12837,7 @@ i64.eq end br_if $__inlined_func$~lib/set/Set#find + drop local.get $4 i32.const -2 i32.and @@ -12799,9 +12846,7 @@ end end i32.const 0 - local.set $2 end - local.get $2 i32.eqz if local.get $0 @@ -12938,60 +12983,61 @@ (func $~lib/set/Set#delete (param $0 i32) (param $1 i64) (local $2 i32) (local $3 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.const 374761401 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - local.get $2 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - local.get $2 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - local.get $2 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/set/Set#find + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.const 374761401 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|0 local.get $2 if + local.get $2 local.get $2 i32.load offset=8 local.tee $3 @@ -13006,6 +13052,7 @@ i64.eq end br_if $__inlined_func$~lib/set/Set#find + drop local.get $3 i32.const -2 i32.and @@ -13014,9 +13061,8 @@ end end i32.const 0 - local.set $2 end - local.get $2 + local.tee $2 i32.eqz if return @@ -13587,60 +13633,61 @@ ) (func $~lib/set/Set#has (param $0 i32) (param $1 i64) (result i32) (local $2 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.const 374761401 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - local.get $0 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - local.get $0 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - local.get $0 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $0 - block $__inlined_func$~lib/set/Set#find + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.const 374761401 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $0 + i32.const 15 + i32.shr_u + local.get $0 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $0 + i32.const 13 + i32.shr_u + local.get $0 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $0 + i32.const 16 + i32.shr_u + local.get $0 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $0 loop $while-continue|0 local.get $0 if + local.get $0 local.get $0 i32.load offset=8 local.tee $2 @@ -13655,6 +13702,7 @@ i64.eq end br_if $__inlined_func$~lib/set/Set#find + drop local.get $2 i32.const -2 i32.and @@ -13663,9 +13711,7 @@ end end i32.const 0 - local.set $0 end - local.get $0 i32.const 0 i32.ne ) @@ -13674,9 +13720,9 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i64) + (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 i64) (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -13705,7 +13751,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -13713,7 +13759,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $5 + local.tee $7 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -13721,34 +13767,33 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $8 + local.tee $4 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $4 + local.set $6 local.get $3 local.set $2 loop $while-continue|0 local.get $4 - local.get $8 + local.get $6 i32.ne if - local.get $8 + local.get $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $8 + local.get $4 i64.load - local.tee $6 + local.tee $8 i64.store local.get $2 - local.get $1 - local.get $6 + local.get $8 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -13758,7 +13803,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $6 + local.get $8 i64.const 32 i64.shr_u i32.wrap_i64 @@ -13770,28 +13815,29 @@ i32.const 668265263 i32.mul local.tee $9 - local.get $9 i32.const 15 i32.shr_u + local.get $9 i32.xor i32.const -2048144777 i32.mul local.tee $9 - local.get $9 i32.const 13 i32.shr_u + local.get $9 i32.xor i32.const -1028477379 i32.mul local.tee $9 - local.get $9 i32.const 16 i32.shr_u + local.get $9 i32.xor + local.get $1 i32.and i32.const 2 i32.shl - local.get $7 + local.get $5 i32.add local.tee $9 i32.load @@ -13804,20 +13850,20 @@ i32.add local.set $2 end - local.get $8 + local.get $4 i32.const 16 i32.add - local.set $8 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $7 + local.get $5 i32.store - local.get $7 + local.get $5 if local.get $0 - local.get $7 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -13833,7 +13879,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $5 + local.get $7 i32.store offset=12 local.get $0 local.get $0 @@ -13848,61 +13894,62 @@ (local $2 i32) (local $3 i32) (local $4 i32) - local.get $0 - i32.load - local.get $1 - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.const 374761401 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - local.get $2 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - local.get $2 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - local.get $2 - i32.const 16 - i32.shr_u - i32.xor - local.tee $3 - local.get $0 - i32.load offset=4 - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/set/Set#find + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $0 + i32.load + local.get $1 + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.const 374761401 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + local.tee $3 + local.get $0 + i32.load offset=4 + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|0 local.get $2 if + local.get $2 local.get $2 i32.load offset=8 local.tee $4 @@ -13917,6 +13964,7 @@ i64.eq end br_if $__inlined_func$~lib/set/Set#find + drop local.get $4 i32.const -2 i32.and @@ -13925,9 +13973,7 @@ end end i32.const 0 - local.set $2 end - local.get $2 i32.eqz if local.get $0 @@ -14025,60 +14071,61 @@ (func $~lib/set/Set#delete (param $0 i32) (param $1 i64) (local $2 i32) (local $3 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.const 374761401 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - local.get $2 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - local.get $2 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - local.get $2 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/set/Set#find + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.const 374761401 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|0 local.get $2 if + local.get $2 local.get $2 i32.load offset=8 local.tee $3 @@ -14093,6 +14140,7 @@ i64.eq end br_if $__inlined_func$~lib/set/Set#find + drop local.get $3 i32.const -2 i32.and @@ -14101,9 +14149,8 @@ end end i32.const 0 - local.set $2 end - local.get $2 + local.tee $2 i32.eqz if return @@ -14638,9 +14685,9 @@ (func $~lib/set/Set#rehash (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 f32) + (local $4 i32) (local $5 i32) - (local $6 i32) + (local $6 f32) (local $7 i32) (local $8 i32) (local $9 i32) @@ -14671,7 +14718,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -14679,7 +14726,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $8 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -14687,33 +14734,33 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $8 + local.tee $4 local.get $0 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $5 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 - local.get $5 - local.get $8 + local.get $4 + local.get $7 i32.ne if - local.get $8 + local.get $4 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $8 + local.get $4 f32.load - local.tee $4 + local.tee $6 f32.store local.get $2 - local.get $4 + local.get $6 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -14724,29 +14771,29 @@ i32.const 668265263 i32.mul local.tee $9 - local.get $9 i32.const 15 i32.shr_u + local.get $9 i32.xor i32.const -2048144777 i32.mul local.tee $9 - local.get $9 i32.const 13 i32.shr_u + local.get $9 i32.xor i32.const -1028477379 i32.mul local.tee $9 - local.get $9 i32.const 16 i32.shr_u + local.get $9 i32.xor local.get $1 i32.and i32.const 2 i32.shl - local.get $7 + local.get $5 i32.add local.tee $9 i32.load @@ -14759,20 +14806,20 @@ i32.add local.set $2 end - local.get $8 + local.get $4 i32.const 8 i32.add - local.set $8 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $7 + local.get $5 i32.store - local.get $7 + local.get $5 if local.get $0 - local.get $7 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -14788,7 +14835,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $6 + local.get $8 i32.store offset=12 local.get $0 local.get $0 @@ -14803,50 +14850,51 @@ (local $2 i32) (local $3 i32) (local $4 i32) - local.get $0 - i32.load - local.get $1 - i32.reinterpret_f32 - i32.const -1028477379 - i32.mul - i32.const 374761397 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - local.get $2 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - local.get $2 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - local.get $2 - i32.const 16 - i32.shr_u - i32.xor - local.tee $3 - local.get $0 - i32.load offset=4 - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/set/Set#find + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $0 + i32.load + local.get $1 + i32.reinterpret_f32 + i32.const -1028477379 + i32.mul + i32.const 374761397 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + local.tee $3 + local.get $0 + i32.load offset=4 + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|0 local.get $2 if + local.get $2 local.get $2 i32.load offset=4 local.tee $4 @@ -14861,6 +14909,7 @@ f32.eq end br_if $__inlined_func$~lib/set/Set#find + drop local.get $4 i32.const -2 i32.and @@ -14869,9 +14918,7 @@ end end i32.const 0 - local.set $2 end - local.get $2 i32.eqz if local.get $0 @@ -14969,49 +15016,50 @@ (func $~lib/set/Set#delete (param $0 i32) (param $1 f32) (local $2 i32) (local $3 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i32.reinterpret_f32 - i32.const -1028477379 - i32.mul - i32.const 374761397 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - local.get $2 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - local.get $2 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - local.get $2 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/set/Set#find + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i32.reinterpret_f32 + i32.const -1028477379 + i32.mul + i32.const 374761397 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|0 local.get $2 if + local.get $2 local.get $2 i32.load offset=4 local.tee $3 @@ -15026,6 +15074,7 @@ f32.eq end br_if $__inlined_func$~lib/set/Set#find + drop local.get $3 i32.const -2 i32.and @@ -15034,9 +15083,8 @@ end end i32.const 0 - local.set $2 end - local.get $2 + local.tee $2 i32.eqz if return @@ -15091,8 +15139,8 @@ (func $std/set/testNumeric (local $0 i32) (local $1 i32) - (local $2 f32) - (local $3 i32) + (local $2 i32) + (local $3 f32) (local $4 i32) (local $5 i32) (local $6 i32) @@ -15112,26 +15160,26 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 call $~lib/set/Set#constructor - local.tee $5 + local.tee $4 i32.store loop $for-loop|0 - local.get $2 + local.get $3 f32.const 100 f32.lt if - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15141,60 +15189,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 - local.tee $0 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 local.get $3 + local.get $2 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $0 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|0 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 if i32.const 0 i32.const 1568 @@ -15203,14 +15251,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 + local.get $4 + local.get $3 call $~lib/set/Set#add - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15220,60 +15268,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 - local.tee $0 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 local.get $3 + local.get $2 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find1 - local.get $0 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|02 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -15283,14 +15331,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 f32.const 1 f32.add - local.set $2 + local.set $3 br $for-loop|0 end end - local.get $5 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -15303,17 +15351,17 @@ unreachable end f32.const 50 - local.set $2 + local.set $3 loop $for-loop|1 - local.get $2 + local.get $3 f32.const 100 f32.lt if - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15323,60 +15371,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 - local.tee $0 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 local.get $3 + local.get $2 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find4 - local.get $0 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|05 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -15386,14 +15434,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 + local.get $4 + local.get $3 call $~lib/set/Set#add - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15403,60 +15451,60 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 - local.tee $0 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 local.get $3 + local.get $2 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find7 - local.get $0 + local.get $1 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|08 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -15466,14 +15514,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 f32.const 1 f32.add - local.set $2 + local.set $3 br $for-loop|1 end end - local.get $5 + local.get $4 i32.load offset=20 i32.const 100 i32.ne @@ -15486,8 +15534,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -15496,17 +15544,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $10 i32.const 0 i32.store - local.get $5 + local.get $4 i32.load offset=8 - local.set $11 - local.get $5 + local.set $9 + local.get $4 i32.load offset=16 - local.tee $12 - local.set $3 - local.get $8 + local.tee $11 + local.set $2 + local.get $10 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -15515,28 +15563,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 16 i32.const 20 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $1 i32.store - local.get $4 + local.get $1 i32.const 0 i32.store - local.get $4 + local.get $1 i32.const 0 i32.store offset=4 - local.get $4 + local.get $1 i32.const 0 i32.store offset=8 - local.get $4 + local.get $1 i32.const 0 i32.store offset=12 - local.get $3 + local.get $2 i32.const 268435455 i32.gt_u if @@ -15548,77 +15596,77 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.const 8 - local.get $3 + local.get $2 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $9 + local.tee $7 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $12 i32.store offset=4 - local.get $0 - local.get $9 + local.get $12 + local.get $7 call $~lib/memory/memory.fill - local.get $4 - local.get $0 + local.get $1 + local.get $12 i32.store - local.get $0 + local.get $12 if - local.get $4 - local.get $0 + local.get $1 + local.get $12 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $0 + local.get $1 + local.get $12 i32.store offset=4 - local.get $4 - local.get $9 + local.get $1 + local.get $7 i32.store offset=8 - local.get $4 - local.get $3 + local.get $1 + local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $4 + local.get $10 + local.get $1 i32.store loop $for-loop|01 local.get $6 - local.get $12 + local.get $11 i32.lt_s if local.get $6 i32.const 3 i32.shl - local.get $11 + local.get $9 i32.add - local.tee $3 + local.tee $7 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $1 - local.tee $0 + local.get $0 + local.tee $2 i32.const 1 i32.add - local.set $1 - local.get $3 + local.set $0 + local.get $7 f32.load - local.set $2 - local.get $4 + local.set $3 + local.get $1 i32.load offset=12 - local.get $0 + local.get $2 i32.le_u if - local.get $0 + local.get $2 i32.const 0 i32.lt_s if @@ -15629,25 +15677,25 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $0 + local.get $1 + local.get $2 i32.const 1 i32.add - local.tee $3 + local.tee $7 i32.const 2 i32.const 1 call $~lib/array/ensureCapacity - local.get $4 - local.get $3 + local.get $1 + local.get $7 i32.store offset=12 end - local.get $4 + local.get $1 i32.load offset=4 - local.get $0 + local.get $2 i32.const 2 i32.shl i32.add - local.get $2 + local.get $3 f32.store end local.get $6 @@ -15657,34 +15705,34 @@ br $for-loop|01 end end - local.get $4 local.get $1 + local.get $0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $4 local.get $1 + local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $1 + local.tee $0 i32.store offset=8 loop $for-loop|2 - local.get $4 + local.get $1 i32.load offset=12 - local.get $7 + local.get $5 i32.gt_s if - local.get $4 - local.get $7 + local.get $1 + local.get $5 call $~lib/array/Array#__get - local.tee $2 + local.tee $3 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15694,65 +15742,65 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $2 + local.get $2 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $2 + local.get $2 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul - local.set $0 - local.get $5 + local.set $2 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $0 + local.get $2 + local.get $2 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 - local.tee $0 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 local.get $3 + local.get $2 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $0 + local.get $6 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|011 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -15762,21 +15810,21 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $1 - local.get $4 - local.get $7 + local.get $5 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $7 + local.get $5 i32.const 1 i32.add - local.set $7 + local.set $5 br $for-loop|2 end end - local.get $1 + local.get $0 i32.load offset=20 - local.get $5 + local.get $4 i32.load offset=20 i32.ne if @@ -15788,17 +15836,17 @@ unreachable end f32.const 0 - local.set $2 + local.set $3 loop $for-loop|3 - local.get $2 + local.get $3 f32.const 50 f32.lt if - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15809,35 +15857,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find13 loop $while-continue|014 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $0 i32.const 1 @@ -15845,8 +15893,8 @@ if (result i32) i32.const 0 else - local.get $2 local.get $3 + local.get $2 f32.load f32.eq end @@ -15854,14 +15902,14 @@ local.get $0 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|014 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -15871,14 +15919,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 + local.get $4 + local.get $3 call $~lib/set/Set#delete - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15889,35 +15937,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find16 loop $while-continue|017 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $0 i32.const 1 @@ -15925,8 +15973,8 @@ if (result i32) i32.const 0 else - local.get $2 local.get $3 + local.get $2 f32.load f32.eq end @@ -15934,14 +15982,14 @@ local.get $0 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|017 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 if i32.const 0 i32.const 1568 @@ -15950,14 +15998,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 f32.const 1 f32.add - local.set $2 + local.set $3 br $for-loop|3 end end - local.get $5 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -15970,17 +16018,17 @@ unreachable end f32.const 0 - local.set $2 + local.set $3 loop $for-loop|4 - local.get $2 + local.get $3 f32.const 50 f32.lt if - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15991,35 +16039,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find19 loop $while-continue|020 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $0 i32.const 1 @@ -16027,8 +16075,8 @@ if (result i32) i32.const 0 else - local.get $2 local.get $3 + local.get $2 f32.load f32.eq end @@ -16036,14 +16084,14 @@ local.get $0 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|020 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 if i32.const 0 i32.const 1568 @@ -16052,14 +16100,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 + local.get $4 + local.get $3 call $~lib/set/Set#add - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -16070,35 +16118,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find22 loop $while-continue|023 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $0 i32.const 1 @@ -16106,8 +16154,8 @@ if (result i32) i32.const 0 else - local.get $2 local.get $3 + local.get $2 f32.load f32.eq end @@ -16115,14 +16163,14 @@ local.get $0 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|023 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -16132,14 +16180,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $2 + local.get $4 + local.get $3 call $~lib/set/Set#delete - local.get $5 + local.get $4 i32.load - local.get $5 + local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -16150,35 +16198,35 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/set/Set#find25 loop $while-continue|026 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=4 local.tee $0 i32.const 1 @@ -16186,8 +16234,8 @@ if (result i32) i32.const 0 else - local.get $2 local.get $3 + local.get $2 f32.load f32.eq end @@ -16195,14 +16243,14 @@ local.get $0 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|026 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 if i32.const 0 i32.const 1568 @@ -16211,14 +16259,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 f32.const 1 f32.add - local.set $2 + local.set $3 br $for-loop|4 end end - local.get $5 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -16230,9 +16278,9 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $4 call $~lib/set/Set#clear - local.get $5 + local.get $4 i32.load offset=20 if i32.const 0 @@ -16245,75 +16293,76 @@ global.get $~lib/memory/__stack_pointer i32.const 12 i32.add - global.set $~lib/memory/__stack_pointer - return - end - i32.const 18240 - i32.const 18288 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - ) - (func $~lib/set/Set#has (param $0 i32) (param $1 f64) (result i32) - (local $2 i64) - (local $3 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i64.reinterpret_f64 - local.tee $2 - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.const 374761401 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.get $2 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - local.get $0 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - local.get $0 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - local.get $0 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $0 - block $__inlined_func$~lib/set/Set#find + global.set $~lib/memory/__stack_pointer + return + end + i32.const 18240 + i32.const 18288 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + ) + (func $~lib/set/Set#has (param $0 i32) (param $1 f64) (result i32) + (local $2 i64) + (local $3 i32) + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i64.reinterpret_f64 + local.tee $2 + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.const 374761401 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.get $2 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $0 + i32.const 15 + i32.shr_u + local.get $0 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $0 + i32.const 13 + i32.shr_u + local.get $0 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $0 + i32.const 16 + i32.shr_u + local.get $0 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $0 loop $while-continue|0 local.get $0 if + local.get $0 local.get $0 i32.load offset=8 local.tee $3 @@ -16328,6 +16377,7 @@ f64.eq end br_if $__inlined_func$~lib/set/Set#find + drop local.get $3 i32.const -2 i32.and @@ -16336,19 +16386,17 @@ end end i32.const 0 - local.set $0 end - local.get $0 i32.const 0 i32.ne ) (func $~lib/set/Set#rehash (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 i64) - (local $5 f64) - (local $6 i32) - (local $7 i32) + (local $4 i32) + (local $5 i32) + (local $6 i64) + (local $7 f64) (local $8 i32) (local $9 i32) (local $10 i32) @@ -16379,7 +16427,7 @@ i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $8 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer local.get $2 @@ -16387,7 +16435,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $9 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -16395,36 +16443,35 @@ i32.store offset=4 local.get $0 i32.load offset=8 - local.tee $9 + local.tee $4 local.get $0 i32.load offset=16 i32.const 4 i32.shl i32.add - local.set $6 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 - local.get $6 - local.get $9 + local.get $4 + local.get $8 i32.ne if - local.get $9 + local.get $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $2 - local.get $9 + local.get $4 f64.load - local.tee $5 + local.tee $7 f64.store local.get $2 - local.get $1 - local.get $5 + local.get $7 i64.reinterpret_f64 - local.tee $4 + local.tee $6 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -16434,7 +16481,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $4 + local.get $6 i64.const 32 i64.shr_u i32.wrap_i64 @@ -16446,28 +16493,29 @@ i32.const 668265263 i32.mul local.tee $10 - local.get $10 i32.const 15 i32.shr_u + local.get $10 i32.xor i32.const -2048144777 i32.mul local.tee $10 - local.get $10 i32.const 13 i32.shr_u + local.get $10 i32.xor i32.const -1028477379 i32.mul local.tee $10 - local.get $10 i32.const 16 i32.shr_u + local.get $10 i32.xor + local.get $1 i32.and i32.const 2 i32.shl - local.get $8 + local.get $5 i32.add local.tee $10 i32.load @@ -16480,20 +16528,20 @@ i32.add local.set $2 end - local.get $9 + local.get $4 i32.const 16 i32.add - local.set $9 + local.set $4 br $while-continue|0 end end local.get $0 - local.get $8 + local.get $5 i32.store - local.get $8 + local.get $5 if local.get $0 - local.get $8 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 @@ -16509,7 +16557,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $9 i32.store offset=12 local.get $0 local.get $0 @@ -16525,63 +16573,64 @@ (local $3 i64) (local $4 i32) (local $5 i32) - local.get $0 - i32.load - local.get $1 - i64.reinterpret_f64 - local.tee $3 - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.const 374761401 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.get $3 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - local.get $2 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - local.get $2 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - local.get $2 - i32.const 16 - i32.shr_u - i32.xor - local.tee $4 - local.get $0 - i32.load offset=4 - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/set/Set#find + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $0 + i32.load + local.get $1 + i64.reinterpret_f64 + local.tee $3 + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.const 374761401 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.get $3 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + local.tee $4 + local.get $0 + i32.load offset=4 + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|0 local.get $2 if + local.get $2 local.get $2 i32.load offset=8 local.tee $5 @@ -16596,6 +16645,7 @@ f64.eq end br_if $__inlined_func$~lib/set/Set#find + drop local.get $5 i32.const -2 i32.and @@ -16604,9 +16654,7 @@ end end i32.const 0 - local.set $2 end - local.get $2 i32.eqz if local.get $0 @@ -16705,62 +16753,63 @@ (local $2 i32) (local $3 i64) (local $4 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i64.reinterpret_f64 - local.tee $3 - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.const 374761401 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.get $3 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const -1028477379 - i32.mul - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $2 - local.get $2 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $2 - local.get $2 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $2 - local.get $2 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - block $__inlined_func$~lib/set/Set#find + block $__inlined_func$~lib/set/Set#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i64.reinterpret_f64 + local.tee $3 + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.const 374761401 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.get $3 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const -1028477379 + i32.mul + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $2 + i32.const 15 + i32.shr_u + local.get $2 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $2 + i32.const 13 + i32.shr_u + local.get $2 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $2 + i32.const 16 + i32.shr_u + local.get $2 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 loop $while-continue|0 local.get $2 if + local.get $2 local.get $2 i32.load offset=8 local.tee $4 @@ -16775,6 +16824,7 @@ f64.eq end br_if $__inlined_func$~lib/set/Set#find + drop local.get $4 i32.const -2 i32.and @@ -16783,9 +16833,8 @@ end end i32.const 0 - local.set $2 end - local.get $2 + local.tee $2 i32.eqz if return diff --git a/tests/compiler/std/static-array.optimized.wat b/tests/compiler/std/static-array.optimized.wat index 57f359ec70..009ef500f5 100644 --- a/tests/compiler/std/static-array.optimized.wat +++ b/tests/compiler/std/static-array.optimized.wat @@ -161,17 +161,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 18396 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -185,9 +186,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -197,15 +198,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -2411,8 +2412,8 @@ i32.load offset=8 local.set $4 local.get $1 - global.get $~lib/rt/itcms/white local.get $3 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $1 @@ -2454,9 +2455,9 @@ select local.set $5 block $~lib/util/memory/memmove|inlined.0 + local.get $0 local.get $4 local.tee $1 - local.get $0 i32.eq br_if $~lib/util/memory/memmove|inlined.0 local.get $0 diff --git a/tests/compiler/std/staticarray.optimized.wat b/tests/compiler/std/staticarray.optimized.wat index b76a6a8cd0..f4b00fbc10 100644 --- a/tests/compiler/std/staticarray.optimized.wat +++ b/tests/compiler/std/staticarray.optimized.wat @@ -7,10 +7,10 @@ (type $none_=>_none (func)) (type $i32_i32_i32_i32_=>_i32 (func (param i32 i32 i32 i32) (result i32))) (type $none_=>_i32 (func (result i32))) - (type $i32_=>_i32 (func (param i32) (result i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) (type $i32_i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32 i32))) (type $i32_i32_i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32 i32 i32))) + (type $i32_=>_i32 (func (param i32) (result i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (global $~lib/rt/itcms/total (mut i32) (i32.const 0)) (global $~lib/rt/itcms/threshold (mut i32) (i32.const 0)) @@ -302,17 +302,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 20252 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -326,9 +327,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -338,15 +339,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -1402,19 +1403,12 @@ end end ) - (func $~lib/rt/tlsf/__alloc (param $0 i32) (result i32) - (local $1 i32) + (func $~lib/rt/tlsf/allocateBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - call $~lib/rt/tlsf/initialize - end - global.get $~lib/rt/tlsf/ROOT - local.tee $1 local.get $0 + local.get $1 i32.const 1073741820 i32.gt_u if @@ -1425,13 +1419,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $0 + local.get $1 i32.const 19 i32.add i32.const -16 @@ -1441,11 +1435,11 @@ end local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if memory.size - local.tee $0 + local.tee $1 local.get $3 i32.const 536870910 i32.lt_u @@ -1464,9 +1458,9 @@ local.get $3 end i32.const 4 - local.get $1 - i32.load offset=1568 local.get $0 + i32.load offset=1568 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1481,7 +1475,7 @@ i32.const 16 i32.shr_u local.tee $2 - local.get $0 + local.get $1 local.get $2 i32.gt_s select @@ -1497,18 +1491,18 @@ unreachable end end - local.get $1 local.get $0 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $0 local.get $3 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1519,7 +1513,7 @@ unreachable end end - local.get $0 + local.get $1 i32.load i32.const -4 i32.and @@ -1533,10 +1527,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $0 + local.get $1 call $~lib/rt/tlsf/removeBlock - local.get $0 + local.get $1 i32.load local.set $4 local.get $3 @@ -1561,7 +1555,7 @@ i32.const 16 i32.ge_u if - local.get $0 + local.get $1 local.get $4 i32.const 2 i32.and @@ -1569,7 +1563,7 @@ i32.or i32.store local.get $3 - local.get $0 + local.get $1 i32.const 4 i32.add i32.add @@ -1580,33 +1574,31 @@ i32.const 1 i32.or i32.store - local.get $1 + local.get $0 local.get $3 call $~lib/rt/tlsf/insertBlock else - local.get $0 + local.get $1 local.get $4 i32.const -2 i32.and i32.store - local.get $0 + local.get $1 i32.const 4 i32.add - local.get $0 + local.get $1 i32.load i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.load i32.const -3 i32.and i32.store end - local.get $0 - i32.const 4 - i32.add + local.get $1 ) (func $~lib/memory/memory.fill (param $0 i32) (param $1 i32) (local $2 i32) @@ -1832,13 +1824,13 @@ end global.get $~lib/rt/itcms/total local.tee $2 - local.get $2 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl + local.get $2 i32.add global.set $~lib/rt/itcms/threshold end @@ -1846,9 +1838,15 @@ local.get $0 i32.const 16 i32.add - call $~lib/rt/tlsf/__alloc - i32.const 4 - i32.sub + local.set $2 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $2 + call $~lib/rt/tlsf/allocateBlock local.tee $2 local.get $1 i32.store offset=12 @@ -1860,8 +1858,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -2768,22 +2766,6 @@ end end ) - (func $~lib/staticarray/StaticArray#__uset (param $0 i32) (param $1 i32) (param $2 i32) - local.get $1 - i32.const 2 - i32.shl - local.get $0 - i32.add - local.get $2 - i32.store - local.get $2 - if - local.get $0 - local.get $2 - i32.const 1 - call $byn-split-outlined-A$~lib/rt/itcms/__link - end - ) (func $~lib/array/Array#__get (param $0 i32) (param $1 i32) (result i32) local.get $0 i32.load offset=12 @@ -2924,25 +2906,25 @@ (func $~lib/staticarray/StaticArray<~lib/string/String>#includes (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 3868 - i32.lt_s - if - i32.const 20272 - i32.const 20320 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/staticarray/StaticArray<~lib/string/String>#indexOf + block $__inlined_func$~lib/staticarray/StaticArray<~lib/string/String>#indexOf (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 3868 + i32.lt_s + if + i32.const 20272 + i32.const 20320 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store local.get $2 local.get $0 i32.const 20 @@ -2961,7 +2943,6 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const -1 - local.set $2 br $__inlined_func$~lib/staticarray/StaticArray<~lib/string/String>#indexOf end local.get $2 @@ -3001,6 +2982,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 br $__inlined_func$~lib/staticarray/StaticArray<~lib/string/String>#indexOf end local.get $2 @@ -3015,9 +2997,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const -1 - local.set $2 end - local.get $2 i32.const 0 i32.ge_s ) @@ -3028,38 +3008,37 @@ (local $5 i32) (local $6 i32) (local $7 i32) - local.get $0 - local.tee $4 - i32.const 20 - i32.sub - i32.load offset=16 - i32.const 2 - i32.shr_u - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 3868 - i32.lt_s - if - i32.const 20272 - i32.const 20320 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $6 - i64.const 0 - i64.store - local.get $6 - i32.const 0 - i32.store offset=8 - block $__inlined_func$~lib/util/string/joinStringArray + block $__inlined_func$~lib/util/string/joinStringArray (result i32) local.get $0 + i32.const 20 + i32.sub + i32.load offset=16 + i32.const 2 + i32.shr_u + local.set $5 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 3868 + i32.lt_s + if + i32.const 20272 + i32.const 20320 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $6 + i64.const 0 + i64.store + local.get $6 + i32.const 0 + i32.store offset=8 + local.get $5 i32.const 1 i32.sub local.tee $6 @@ -3071,7 +3050,6 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 2768 - local.set $0 br $__inlined_func$~lib/util/string/joinStringArray end local.get $6 @@ -3079,31 +3057,30 @@ if global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $0 i32.load local.tee $0 i32.store - local.get $0 - i32.const 2768 - local.get $0 - select - local.set $0 local.get $1 i32.const 12 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 + i32.const 2768 + local.get $0 + select br $__inlined_func$~lib/util/string/joinStringArray end loop $for-loop|0 - local.get $0 + local.get $4 local.get $5 - i32.gt_s + i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 2 i32.shl - local.get $4 + local.get $0 i32.add i32.load local.tee $7 @@ -3120,10 +3097,10 @@ i32.add local.set $2 end - local.get $5 + local.get $4 i32.const 1 i32.add - local.set $5 + local.set $4 br $for-loop|0 end end @@ -3143,20 +3120,20 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $5 i32.store offset=8 i32.const 0 - local.set $5 + local.set $4 loop $for-loop|1 - local.get $5 + local.get $4 local.get $6 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 2 i32.shl - local.get $4 + local.get $0 i32.add i32.load local.tee $7 @@ -3166,7 +3143,7 @@ local.get $3 i32.const 1 i32.shl - local.get $0 + local.get $5 i32.add local.get $7 local.get $7 @@ -3189,7 +3166,7 @@ local.get $3 i32.const 1 i32.shl - local.get $0 + local.get $5 i32.add local.get $1 local.get $2 @@ -3201,10 +3178,10 @@ i32.add local.set $3 end - local.get $5 + local.get $4 i32.const 1 i32.add - local.set $5 + local.set $4 br $for-loop|1 end end @@ -3212,20 +3189,20 @@ local.get $6 i32.const 2 i32.shl - local.get $4 + local.get $0 i32.add i32.load - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $0 if local.get $3 i32.const 1 i32.shl - local.get $0 + local.get $5 i32.add - local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -3239,8 +3216,8 @@ i32.const 12 i32.add global.set $~lib/memory/__stack_pointer + local.get $5 end - local.get $0 ) (func $start:std/staticarray~anonymous|0 (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 @@ -3716,11 +3693,11 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) + (local $12 i64) (local $13 i32) local.get $1 i32.const 48 @@ -3843,9 +3820,19 @@ local.tee $5 i32.const 1 i32.shl - call $~lib/rt/tlsf/__alloc - local.tee $11 - local.get $5 + local.set $7 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $7 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.tee $9 + local.get $5 i32.add local.set $10 i32.const 0 @@ -3858,7 +3845,7 @@ local.get $5 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -3872,14 +3859,24 @@ local.get $1 i32.const 2 i32.shl - call $~lib/rt/tlsf/__alloc - local.set $9 + local.set $5 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $5 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $12 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -3891,9 +3888,9 @@ if local.get $0 i32.const 0 - local.get $12 + local.get $8 i32.const 31 - local.get $12 + local.get $8 i32.const 31 i32.lt_s select @@ -3904,7 +3901,7 @@ end loop $while-continue|2 local.get $1 - local.get $12 + local.get $8 i32.lt_s if local.get $0 @@ -3912,7 +3909,7 @@ i32.const 1 i32.add local.tee $6 - local.get $12 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -3926,13 +3923,13 @@ if local.get $0 local.get $6 - local.get $12 + local.get $8 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $12 + local.get $8 i32.gt_s select local.tee $5 @@ -3946,11 +3943,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $8 + local.tee $12 i64.div_u local.get $5 local.get $6 @@ -3960,7 +3957,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $12 i64.div_u i64.xor i32.wrap_i64 @@ -3974,7 +3971,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $13 @@ -3993,11 +3990,11 @@ i32.const 1 i32.add local.get $1 - local.get $9 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -4011,7 +4008,7 @@ br $for-loop|3 end end - local.get $11 + local.get $9 local.get $7 i32.const 2 i32.shl @@ -4039,7 +4036,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $1 @@ -4056,8 +4053,8 @@ i32.load i32.const 1 i32.add - local.get $12 - local.get $9 + local.get $8 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end @@ -4068,10 +4065,10 @@ br $for-loop|4 end end - local.get $9 - call $~lib/rt/tlsf/__free local.get $11 call $~lib/rt/tlsf/__free + local.get $9 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -4228,17 +4225,18 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 f64) - (local $7 f32) + (local $6 i32) + (local $7 i32) (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) - (local $15 i32) + (local $14 f32) + (local $15 f64) (local $16 i32) + (local $17 i32) global.get $~lib/memory/__stack_pointer i32.const 32 i32.sub @@ -4249,19 +4247,19 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $1 i64.const 0 i64.store offset=8 - local.get $3 + local.get $1 i64.const 0 i64.store offset=16 - local.get $3 + local.get $1 i64.const 0 i64.store offset=24 - local.get $3 + local.get $1 i32.const 1056 i32.store i32.const 1056 @@ -4418,17 +4416,17 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.const 1312 i32.const 12 call $~lib/memory/memory.copy - local.get $3 + local.get $1 global.set $std/staticarray/arr3 global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 call $~lib/staticarray/StaticArray#__get i32.const 5 @@ -4443,9 +4441,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 6 @@ -4460,9 +4458,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 2 call $~lib/staticarray/StaticArray#__get i32.const 7 @@ -4477,9 +4475,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -4497,16 +4495,16 @@ end global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 8 call $~lib/staticarray/StaticArray#__set global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 8 @@ -4522,17 +4520,17 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.const 1312 i32.const 12 call $~lib/memory/memory.copy - local.get $3 + local.get $1 global.set $std/staticarray/arr3 global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 6 @@ -4549,25 +4547,39 @@ i32.const 8 i32.const 5 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 i32.store offset=4 - local.get $3 - i32.const 0 + local.get $2 call $std/staticarray/Ref#constructor - call $~lib/staticarray/StaticArray#__uset - local.get $3 - i32.const 1 + local.tee $1 + i32.store + local.get $1 + if + local.get $2 + local.get $1 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $2 call $std/staticarray/Ref#constructor - call $~lib/staticarray/StaticArray#__uset - local.get $3 + local.tee $1 + i32.store offset=4 + local.get $1 + if + local.get $2 + local.get $1 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + local.get $2 global.set $std/staticarray/arr4 i32.const 0 global.set $std/staticarray/arr3 i32.const 0 global.set $std/staticarray/arr4 global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $3 + local.tee $1 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -4576,25 +4588,25 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 12 call $~lib/memory/memory.fill global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=4 - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -4611,17 +4623,17 @@ unreachable end loop $for-loop|0 - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.get $1 + local.get $0 i32.gt_s if - local.get $3 local.get $1 + local.get $0 call $~lib/staticarray/StaticArray#__get if i32.const 0 @@ -4631,10 +4643,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -4643,16 +4655,16 @@ i32.const 6 i32.const 1728 call $~lib/rt/__newArray - local.tee $1 + local.tee $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 call $~lib/staticarray/StaticArray.fromArray - local.tee $3 + local.tee $1 i32.store offset=4 - local.get $1 + local.get $2 i32.load offset=12 - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 @@ -4667,16 +4679,18 @@ call $~lib/builtins/abort unreachable end + i32.const 0 + local.set $0 loop $for-loop|1 - local.get $1 + local.get $2 i32.load offset=12 local.get $0 i32.gt_s if - local.get $3 + local.get $1 local.get $0 call $~lib/staticarray/StaticArray#__get - local.get $1 + local.get $2 local.get $0 call $~lib/array/Array#__get i32.ne @@ -4700,11 +4714,11 @@ i32.const 6 i32.const 1824 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 call $~lib/staticarray/StaticArray.fromArray local.tee $0 i32.store offset=4 @@ -4726,25 +4740,25 @@ i32.const 8 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.const 1856 i32.const 8 call $~lib/memory/memory.copy - local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.const 3 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $0 i32.const 1888 i32.const 4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.store offset=12 - local.get $1 - local.get $3 + local.get $2 + local.get $0 call $~lib/staticarray/StaticArray.concat local.tee $0 i32.store offset=8 @@ -4768,15 +4782,15 @@ i32.const 0 i32.const 3 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $0 i32.const 1920 i32.const 0 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.store offset=12 - local.get $1 - local.get $3 + local.get $2 + local.get $0 call $~lib/staticarray/StaticArray.concat local.tee $0 i32.store offset=8 @@ -4786,7 +4800,7 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.get $1 + local.get $2 i32.const 20 i32.sub i32.load offset=16 @@ -4805,26 +4819,26 @@ i32.const 20 i32.const 8 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $4 i32.const 2128 i32.const 20 call $~lib/memory/memory.copy - local.get $3 + local.get $4 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.const 0 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $0 + local.tee $3 i32.store offset=4 - local.get $0 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.get $3 + local.get $4 i32.const 20 i32.sub i32.load offset=16 @@ -4840,33 +4854,33 @@ unreachable end i32.const 0 - local.set $1 + local.set $0 loop $for-loop|2 - local.get $3 + local.get $4 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.get $1 + local.get $0 i32.gt_s if - local.get $3 - local.get $1 + local.get $4 + local.get $0 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $4 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.store + local.get $3 local.get $0 - local.get $1 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $5 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $1 i32.store offset=12 - local.get $4 - local.get $5 + local.get $2 + local.get $1 call $~lib/string/String.__eq i32.eqz if @@ -4877,21 +4891,21 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|2 end end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.const 1 i32.const 3 call $~lib/staticarray/StaticArray.slice<~lib/string/String> - local.tee $0 + local.tee $2 i32.store offset=4 - local.get $0 + local.get $2 i32.const 20 i32.sub i32.load offset=16 @@ -4907,15 +4921,15 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#__get local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $0 local.get $1 i32.store - local.get $4 + local.get $0 i32.const 1984 i32.store offset=12 local.get $1 @@ -4930,18 +4944,18 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 1 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store + local.tee $0 local.get $1 + i32.store + local.get $0 i32.const 2016 i32.store offset=12 - local.get $0 + local.get $1 i32.const 2016 call $~lib/string/String.__eq i32.eqz @@ -4954,13 +4968,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.const 1 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> local.tee $0 i32.store offset=4 - local.get $3 + local.get $4 i32.const 20 i32.sub i32.load offset=16 @@ -4984,7 +4998,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.const 0 i32.const 50 call $~lib/staticarray/StaticArray.slice<~lib/string/String> @@ -4996,7 +5010,7 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.get $3 + local.get $4 i32.const 20 i32.sub i32.load offset=16 @@ -5012,7 +5026,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.const 100 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> @@ -5033,7 +5047,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.const -1 i32.const 2147483647 call $~lib/staticarray/StaticArray.slice<~lib/string/String> @@ -5058,15 +5072,15 @@ local.get $0 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store + local.tee $0 local.get $1 + i32.store + local.get $0 i32.const 2080 i32.store offset=12 - local.get $0 + local.get $1 i32.const 2080 call $~lib/string/String.__eq i32.eqz @@ -5079,7 +5093,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.const -2 i32.const -2 call $~lib/staticarray/StaticArray.slice<~lib/string/String> @@ -5100,7 +5114,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.const 2 i32.const -2 call $~lib/staticarray/StaticArray.slice<~lib/string/String> @@ -5125,15 +5139,15 @@ local.get $0 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store + local.tee $0 local.get $1 + i32.store + local.get $0 i32.const 2016 i32.store offset=12 - local.get $0 + local.get $1 i32.const 2016 call $~lib/string/String.__eq i32.eqz @@ -5149,29 +5163,29 @@ i32.const 20 i32.const 8 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.const 2304 i32.const 20 call $~lib/memory/memory.copy - local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 0 i32.const 9 i32.const 2352 call $~lib/rt/__newArray - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.store offset=12 - local.get $1 - local.get $3 + local.get $2 + local.get $0 call $~lib/staticarray/StaticArray<~lib/string/String>#concat local.tee $0 i32.store offset=16 local.get $0 i32.load offset=12 - local.get $1 + local.get $2 i32.const 20 i32.sub i32.load offset=16 @@ -5191,18 +5205,18 @@ i32.const 9 i32.const 2416 call $~lib/rt/__newArray - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $0 i32.store offset=12 - local.get $1 - local.get $3 + local.get $2 + local.get $0 call $~lib/staticarray/StaticArray<~lib/string/String>#concat local.tee $0 i32.store offset=16 local.get $0 i32.load offset=12 - local.get $1 + local.get $2 i32.const 20 i32.sub i32.load offset=16 @@ -5223,16 +5237,16 @@ i32.const 20 i32.const 8 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.const 2448 i32.const 20 call $~lib/memory/memory.copy - local.get $1 + local.get $0 i32.store offset=16 global.get $~lib/memory/__stack_pointer i32.const 1984 i32.store offset=12 - local.get $1 + local.get $0 i32.const 1984 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#includes @@ -5249,7 +5263,7 @@ global.get $~lib/memory/__stack_pointer i32.const 2384 i32.store offset=12 - local.get $1 + local.get $0 i32.const 2384 i32.const 0 call $~lib/staticarray/StaticArray<~lib/string/String>#includes @@ -5264,7 +5278,7 @@ global.get $~lib/memory/__stack_pointer i32.const 2080 i32.store offset=12 - local.get $1 + local.get $0 i32.const 2080 i32.const 5 call $~lib/staticarray/StaticArray<~lib/string/String>#includes @@ -5279,7 +5293,7 @@ global.get $~lib/memory/__stack_pointer i32.const 2080 i32.store offset=12 - local.get $1 + local.get $0 i32.const 2080 i32.const -1 call $~lib/staticarray/StaticArray<~lib/string/String>#includes @@ -5296,16 +5310,18 @@ i32.const 8 i32.const 10 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $2 i32.const 2496 i32.const 8 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store block $__inlined_func$~lib/staticarray/StaticArray#includes (result i32) i32.const 0 - local.get $0 + local.set $0 + i32.const 0 + local.get $2 i32.const 20 i32.sub i32.load offset=16 @@ -5319,30 +5335,30 @@ br_if $__inlined_func$~lib/staticarray/StaticArray#includes drop loop $while-continue|0 + local.get $0 local.get $1 - local.get $2 - i32.gt_s + i32.lt_s if i32.const 1 - local.get $2 + local.get $0 i32.const 3 i32.shl - local.get $0 + local.get $2 i32.add f64.load - local.tee $6 + local.tee $15 f64.const nan:0x8000000000000 f64.eq - local.get $6 - local.get $6 + local.get $15 + local.get $15 f64.ne i32.or br_if $__inlined_func$~lib/staticarray/StaticArray#includes drop - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $while-continue|0 end end @@ -5360,18 +5376,18 @@ i32.const 4 i32.const 11 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $2 i32.const 2528 i32.const 4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store block $__inlined_func$~lib/staticarray/StaticArray#includes (result i32) i32.const 0 - local.set $2 + local.set $0 i32.const 0 - local.get $0 + local.get $2 i32.const 20 i32.sub i32.load offset=16 @@ -5384,32 +5400,32 @@ i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#includes drop - loop $while-continue|07 + loop $while-continue|025 + local.get $0 local.get $1 - local.get $2 - i32.gt_s + i32.lt_s if i32.const 1 - local.get $2 + local.get $0 i32.const 2 i32.shl - local.get $0 + local.get $2 i32.add f32.load - local.tee $7 + local.tee $14 f32.const nan:0x400000 f32.eq - local.get $7 - local.get $7 + local.get $14 + local.get $14 f32.ne i32.or br_if $__inlined_func$~lib/staticarray/StaticArray#includes drop - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 - br $while-continue|07 + local.set $0 + br $while-continue|025 end end i32.const 0 @@ -5427,16 +5443,18 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.const 2560 i32.const 12 call $~lib/memory/memory.copy - local.get $1 + local.get $3 i32.store offset=16 i32.const 0 local.set $0 + i32.const -1 + local.set $1 block $__inlined_func$~lib/staticarray/StaticArray#indexOf - local.get $1 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -5447,36 +5465,33 @@ local.get $2 select i32.eqz - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/staticarray/StaticArray#indexOf - end - loop $while-continue|012 + br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf + loop $while-continue|027 local.get $0 local.get $2 i32.lt_s if local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $1 + local.get $3 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf - local.get $0 + local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|012 + br $while-continue|027 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1216 @@ -5487,8 +5502,10 @@ end i32.const 0 local.set $0 - block $__inlined_func$~lib/staticarray/StaticArray#indexOf13 - local.get $1 + i32.const -1 + local.set $1 + block $__inlined_func$~lib/staticarray/StaticArray#indexOf28 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -5499,36 +5516,33 @@ local.get $2 select i32.eqz - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/staticarray/StaticArray#indexOf13 - end - loop $while-continue|014 + br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf28 + loop $while-continue|030 local.get $0 local.get $2 i32.lt_s if local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $1 + local.get $3 i32.add i32.load i32.const 7 i32.eq - br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf13 - local.get $0 + br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf28 + local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|014 + br $while-continue|030 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -5541,8 +5555,10 @@ end i32.const 2 local.set $0 - block $__inlined_func$~lib/staticarray/StaticArray#indexOf15 - local.get $1 + i32.const -1 + local.set $1 + block $__inlined_func$~lib/staticarray/StaticArray#indexOf31 + local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -5554,36 +5570,33 @@ i32.const 1 local.get $2 select - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/staticarray/StaticArray#indexOf15 - end - loop $while-continue|016 + br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf31 + loop $while-continue|033 local.get $0 local.get $2 i32.lt_s if local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $1 + local.get $3 i32.add i32.load i32.const 9 i32.eq - br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf15 - local.get $0 + br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf31 + local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|016 + br $while-continue|033 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 2 i32.ne if @@ -5594,25 +5607,23 @@ call $~lib/builtins/abort unreachable end - block $__inlined_func$~lib/staticarray/StaticArray#indexOf17 - local.get $1 + i32.const -1 + local.set $0 + block $__inlined_func$~lib/staticarray/StaticArray#indexOf34 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $2 + local.tee $1 i32.const -1 i32.le_s i32.const 1 - local.get $2 + local.get $1 select - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/staticarray/StaticArray#indexOf17 - end - local.get $2 + br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf34 + local.get $1 i32.const 1 i32.sub local.tee $0 @@ -5622,25 +5633,25 @@ i32.gt_s select local.set $0 - loop $while-continue|018 + loop $while-continue|036 local.get $0 - local.get $2 + local.get $1 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $3 i32.add i32.load i32.const 2 i32.eq - br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf17 + br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf34 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|018 + br $while-continue|036 end end i32.const -1 @@ -5659,21 +5670,21 @@ end i32.const -1 local.set $0 - block $__inlined_func$~lib/staticarray/StaticArray#indexOf19 - local.get $1 + block $__inlined_func$~lib/staticarray/StaticArray#indexOf37 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $2 + local.tee $1 i32.const -3 i32.le_s i32.const 1 - local.get $2 + local.get $1 select - br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf19 - local.get $2 + br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf37 + local.get $1 i32.const 3 i32.sub local.tee $0 @@ -5683,25 +5694,25 @@ i32.gt_s select local.set $0 - loop $while-continue|020 + loop $while-continue|039 local.get $0 - local.get $2 + local.get $1 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $3 i32.add i32.load i32.const 2 i32.eq - br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf19 + br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf37 local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|020 + br $while-continue|039 end end i32.const -1 @@ -5720,45 +5731,51 @@ i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.const 2592 i32.const 16 call $~lib/memory/memory.copy - local.get $1 + local.get $2 i32.store offset=16 i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $2 + local.tee $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $2 - local.set $3 + local.set $4 i32.const -1 local.set $0 block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf local.get $2 + i32.const 20 + i32.sub + i32.load offset=16 + i32.const 2 + i32.shr_u + local.tee $3 i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf - local.get $2 local.get $3 + local.get $4 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub + local.get $4 local.get $3 - local.get $2 - local.get $3 + local.get $4 i32.le_s select - local.get $3 + local.get $4 i32.const 0 i32.lt_s select local.set $0 - loop $while-continue|00 + loop $while-continue|012 local.get $0 i32.const 0 i32.ge_s @@ -5776,7 +5793,7 @@ i32.const 1 i32.sub local.set $0 - br $while-continue|00 + br $while-continue|012 end end i32.const -1 @@ -5801,36 +5818,31 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.set $2 + local.tee $4 + local.set $3 i32.const -1 local.set $0 - block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf5 - local.get $1 - i32.const 20 - i32.sub - i32.load offset=16 - i32.const 2 - i32.shr_u - local.tee $3 + block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf17 + local.get $4 i32.eqz - br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf5 - local.get $2 + br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf17 local.get $3 + local.get $4 i32.add - local.get $3 + local.get $4 i32.const 1 i32.sub - local.get $2 - local.get $2 local.get $3 + local.get $3 + local.get $4 i32.ge_s select - local.get $2 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - loop $while-continue|06 + loop $while-continue|018 local.get $0 i32.const 0 i32.ge_s @@ -5843,12 +5855,12 @@ i32.load i32.const 7 i32.eq - br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf5 + br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf17 local.get $0 i32.const 1 i32.sub local.set $0 - br $while-continue|06 + br $while-continue|018 end end i32.const -1 @@ -5865,8 +5877,10 @@ call $~lib/builtins/abort unreachable end - block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf7 - local.get $1 + i32.const -1 + local.set $1 + block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf19 + local.get $2 i32.const 20 i32.sub i32.load offset=16 @@ -5874,11 +5888,7 @@ i32.shr_u local.tee $0 i32.eqz - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf7 - end + br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf19 local.get $0 i32.const 1 i32.sub @@ -5888,31 +5898,32 @@ i32.le_u select local.set $0 - loop $while-continue|022 + loop $while-continue|041 local.get $0 i32.const 0 i32.ge_s if local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 2 i32.eq - br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf7 - local.get $0 + br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf19 + local.get $1 i32.const 1 i32.sub local.set $0 - br $while-continue|022 + br $while-continue|041 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -5923,30 +5934,28 @@ call $~lib/builtins/abort unreachable end - block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf23 - local.get $1 + i32.const -1 + local.set $0 + block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf42 + local.get $2 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf23 - end - local.get $0 + br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf42 + local.get $1 i32.const 1 i32.sub i32.const 2 - local.get $0 + local.get $1 i32.const 2 i32.le_u select local.set $0 - loop $while-continue|024 + loop $while-continue|044 local.get $0 i32.const 0 i32.ge_s @@ -5954,17 +5963,17 @@ local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 2 i32.eq - br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf23 + br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf42 local.get $0 i32.const 1 i32.sub local.set $0 - br $while-continue|024 + br $while-continue|044 end end i32.const -1 @@ -5979,25 +5988,23 @@ call $~lib/builtins/abort unreachable end - block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf25 - local.get $1 + i32.const -1 + local.set $0 + block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf45 + local.get $2 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz - if - i32.const -1 - local.set $0 - br $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf25 - end - local.get $0 + br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf45 + local.get $1 i32.const 2 i32.sub local.set $0 - loop $while-continue|026 + loop $while-continue|047 local.get $0 i32.const 0 i32.ge_s @@ -6005,17 +6012,17 @@ local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 2 i32.eq - br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf25 + br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf45 local.get $0 i32.const 1 i32.sub local.set $0 - br $while-continue|026 + br $while-continue|047 end end i32.const -1 @@ -6032,21 +6039,21 @@ end i32.const -1 local.set $0 - block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf27 - local.get $1 + block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf48 + local.get $2 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $2 + local.tee $1 i32.eqz - br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf27 - local.get $2 + br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf48 + local.get $1 i32.const 1 i32.sub local.set $0 - loop $while-continue|028 + loop $while-continue|050 local.get $0 i32.const 0 i32.ge_s @@ -6054,17 +6061,17 @@ local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 2 i32.eq - br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf27 + br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf48 local.get $0 i32.const 1 i32.sub local.set $0 - br $while-continue|028 + br $while-continue|050 end end i32.const -1 @@ -6085,16 +6092,16 @@ i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.const 2736 i32.const 12 call $~lib/memory/memory.copy - local.get $1 + local.get $2 i32.store offset=16 global.get $~lib/memory/__stack_pointer i32.const 2800 i32.store offset=20 - local.get $1 + local.get $2 i32.const 2800 call $~lib/staticarray/StaticArray<~lib/string/String>#join local.set $0 @@ -6119,7 +6126,7 @@ global.get $~lib/memory/__stack_pointer i32.const 2768 i32.store offset=20 - local.get $1 + local.get $2 i32.const 2768 call $~lib/staticarray/StaticArray<~lib/string/String>#join local.set $0 @@ -6144,7 +6151,7 @@ global.get $~lib/memory/__stack_pointer i32.const 2928 i32.store offset=20 - local.get $1 + local.get $2 i32.const 2928 call $~lib/staticarray/StaticArray<~lib/string/String>#join local.set $0 @@ -6169,7 +6176,7 @@ global.get $~lib/memory/__stack_pointer i32.const 3008 i32.store offset=20 - local.get $1 + local.get $2 i32.const 3008 call $~lib/staticarray/StaticArray<~lib/string/String>#join local.set $0 @@ -6194,12 +6201,12 @@ global.get $~lib/memory/__stack_pointer i32.const 2800 i32.store offset=20 - local.get $1 + local.get $2 i32.const 2800 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 @@ -6210,25 +6217,25 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $0 i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 2800 i32.store - local.get $1 + local.get $2 i32.const 2800 call $~lib/staticarray/StaticArray<~lib/string/String>#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=12 local.get $0 + i32.store offset=12 local.get $1 + local.get $0 call $~lib/string/String.__eq i32.eqz if @@ -6243,45 +6250,45 @@ i32.const 8 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.const 3104 i32.const 8 call $~lib/memory/memory.copy - local.get $1 + local.get $2 i32.store offset=16 i32.const 1 - local.get $1 + local.get $2 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.const 1 i32.gt_u select - local.set $2 - loop $for-loop|024 + local.set $0 + loop $for-loop|053 local.get $0 - local.get $2 - i32.gt_s + local.get $1 + i32.lt_s if - local.get $2 + local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.const 1 i32.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 - br $for-loop|024 + local.set $0 + br $for-loop|053 end end - local.get $1 + local.get $2 i32.const 0 call $~lib/staticarray/StaticArray#__get if @@ -6292,7 +6299,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 1 @@ -6309,68 +6316,68 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $5 i32.const 3136 i32.const 12 call $~lib/memory/memory.copy - local.get $1 + local.get $5 i32.store offset=16 i32.const 0 - local.set $2 - local.get $1 + local.set $0 + local.get $5 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $0 + local.tee $1 i32.const 1 i32.gt_u if - local.get $0 + local.get $1 i32.const 1 i32.shr_u - local.set $3 - local.get $0 + local.set $4 + local.get $1 i32.const 1 i32.sub - local.set $0 - loop $while-continue|02633 - local.get $2 - local.get $3 + local.set $3 + loop $while-continue|055 + local.get $0 + local.get $4 i32.lt_u if - local.get $2 + local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $5 i32.add - local.tee $4 + local.tee $1 i32.load - local.set $5 - local.get $4 + local.set $2 + local.get $1 + local.get $3 local.get $0 - local.get $2 i32.sub i32.const 2 i32.shl - local.get $1 + local.get $5 i32.add - local.tee $4 + local.tee $1 i32.load i32.store - local.get $4 - local.get $5 - i32.store + local.get $1 local.get $2 + i32.store + local.get $0 i32.const 1 i32.add - local.set $2 - br $while-continue|02633 + local.set $0 + br $while-continue|055 end end end - local.get $1 + local.get $5 i32.const 0 call $~lib/staticarray/StaticArray#__get i32.const 3 @@ -6383,7 +6390,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $5 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 2 @@ -6396,7 +6403,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $5 i32.const 2 call $~lib/staticarray/StaticArray#__get i32.const 1 @@ -6413,56 +6420,54 @@ i32.const 20 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.const 3168 i32.const 20 call $~lib/memory/memory.copy - local.get $1 + local.get $0 i32.store offset=16 i32.const 0 - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $0 - local.get $0 + local.tee $4 + local.get $4 select - local.set $2 + local.tee $3 + i32.const 2 + i32.shl local.get $0 + i32.add i32.const 3 - local.get $0 - local.get $0 + local.get $4 + local.get $4 i32.const 3 i32.gt_u select - local.tee $3 - i32.sub - local.set $4 - local.get $2 - i32.const 2 - i32.shl - local.get $1 - i32.add - local.get $3 + local.tee $1 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add local.get $4 - local.get $0 - local.get $2 + local.get $1 i32.sub - local.tee $0 - local.get $0 + local.tee $2 local.get $4 + local.get $3 + i32.sub + local.tee $1 + local.get $1 + local.get $2 i32.gt_s select i32.const 2 i32.shl call $~lib/memory/memory.copy - local.get $1 + local.get $0 i32.const 0 call $~lib/staticarray/StaticArray#__get i32.const 4 @@ -6475,7 +6480,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 5 @@ -6488,7 +6493,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/staticarray/StaticArray#__get i32.const 3 @@ -6501,7 +6506,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 call $~lib/staticarray/StaticArray#__get i32.const 4 @@ -6514,7 +6519,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 4 call $~lib/staticarray/StaticArray#__get i32.const 5 @@ -6538,12 +6543,14 @@ local.get $3 i32.store offset=16 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $8 i32.const 3248 i32.store offset=12 - i32.const 0 + local.get $3 local.set $2 - local.get $0 + i32.const 0 + local.set $0 + local.get $8 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -6556,61 +6563,61 @@ i32.const 0 i32.store local.get $1 - local.get $3 + local.get $2 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $1 + local.tee $7 i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $4 + local.tee $6 i32.store - local.get $4 + local.get $6 i32.load offset=4 local.set $5 - loop $for-loop|027 - local.get $1 - local.get $2 - i32.gt_s + loop $for-loop|028 + local.get $0 + local.get $7 + i32.lt_s if - local.get $3 local.get $2 + local.get $0 i32.const 2 i32.shl - local.tee $8 + local.tee $4 i32.add i32.load - local.set $9 + local.set $1 i32.const 3 global.set $~argumentsLength + local.get $4 local.get $5 - local.get $8 i32.add - local.get $9 + local.get $1 + local.get $0 local.get $2 - local.get $3 i32.const 3248 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 - br $for-loop|027 + local.set $0 + br $for-loop|028 end end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 - local.get $4 + local.get $8 + local.get $6 i32.store offset=4 - local.get $4 + local.get $6 i32.const 0 call $~lib/array/Array#__get i32.const 2 @@ -6623,7 +6630,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 i32.const 1 call $~lib/array/Array#__get i32.const 3 @@ -6636,7 +6643,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 i32.const 2 call $~lib/array/Array#__get i32.const 4 @@ -6653,37 +6660,37 @@ i32.const 3280 i32.store offset=12 i32.const 0 - local.set $2 - local.get $3 + local.set $0 + local.get $2 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $0 - loop $for-loop|030 + local.set $4 + loop $for-loop|060 local.get $0 - local.get $2 - i32.gt_s + local.get $4 + i32.lt_s if - local.get $2 + local.get $0 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $2 - local.get $3 i32.const 3280 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 - br $for-loop|030 + local.set $0 + br $for-loop|060 end end global.get $std/staticarray/maxVal @@ -6698,13 +6705,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $0 + local.tee $9 i32.const 3312 i32.store offset=12 - i32.const 0 - local.set $2 - local.get $0 + local.get $9 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -6721,51 +6725,51 @@ i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $12 + local.tee $8 i32.store - local.get $3 + local.get $2 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $9 - loop $for-loop|028 - local.get $2 - local.get $9 - i32.lt_s + local.set $13 + loop $for-loop|029 + local.get $13 + local.get $17 + i32.gt_s if - local.get $2 + local.get $17 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load - local.set $13 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $13 + local.get $7 + local.get $17 local.get $2 - local.get $3 i32.const 3312 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $12 + local.get $8 i32.load offset=12 - local.tee $10 + local.tee $12 i32.const 1 i32.add local.tee $11 - local.tee $0 - local.get $12 - i32.load offset=8 local.tee $4 + local.get $8 + i32.load offset=8 + local.tee $6 i32.const 2 i32.shr_u i32.gt_u if - local.get $0 + local.get $4 i32.const 268435455 i32.gt_u if @@ -6777,19 +6781,19 @@ unreachable end block $__inlined_func$~lib/rt/itcms/__renew - local.get $4 + local.get $6 i32.const 1 i32.shl - local.tee $1 + local.tee $0 i32.const 1073741820 - local.get $1 + local.get $0 i32.const 1073741820 i32.lt_u select local.tee $1 - local.get $0 + local.get $4 i32.const 8 - local.get $0 + local.get $4 i32.const 8 i32.gt_u select @@ -6800,15 +6804,15 @@ local.get $1 i32.lt_u select - local.tee $14 - local.tee $15 - local.get $12 + local.tee $5 + local.tee $4 + local.get $8 i32.load - local.tee $16 - local.tee $0 + local.tee $10 + local.tee $1 i32.const 20 i32.sub - local.tee $5 + local.tee $16 i32.load i32.const -4 i32.and @@ -6816,84 +6820,85 @@ i32.sub i32.le_u if - local.get $5 - local.get $15 + local.get $16 + local.get $4 i32.store offset=16 - local.get $0 - local.set $1 + local.get $1 + local.set $0 br $__inlined_func$~lib/rt/itcms/__renew end - local.get $15 - local.get $5 + local.get $4 + local.get $16 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $1 - local.get $0 - local.get $15 - local.get $5 - i32.load offset=16 local.tee $0 - local.get $0 - local.get $15 + local.get $1 + local.get $4 + local.get $16 + i32.load offset=16 + local.tee $1 + local.get $1 + local.get $4 i32.gt_u select call $~lib/memory/memory.copy end - local.get $1 - local.get $4 + local.get $0 + local.get $6 i32.add - local.get $14 - local.get $4 + local.get $5 + local.get $6 i32.sub call $~lib/memory/memory.fill - local.get $1 - local.get $16 + local.get $0 + local.get $10 i32.ne if - local.get $12 - local.get $1 + local.get $8 + local.get $0 i32.store - local.get $12 - local.get $1 + local.get $8 + local.get $0 i32.store offset=4 - local.get $1 + local.get $0 if - local.get $12 - local.get $1 + local.get $8 + local.get $0 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end end - local.get $12 - local.get $14 + local.get $8 + local.get $5 i32.store offset=8 end - local.get $12 + local.get $8 i32.load offset=4 - local.get $10 + local.get $12 i32.const 2 i32.shl i32.add - local.get $13 + local.get $7 i32.store - local.get $12 + local.get $8 local.get $11 i32.store offset=12 end - local.get $2 + local.get $17 i32.const 1 i32.add - local.set $2 - br $for-loop|028 + local.set $17 + br $for-loop|029 end end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $12 + local.get $9 + local.get $8 i32.store offset=24 - local.get $12 + local.get $8 i32.load offset=12 i32.const 2 i32.ne @@ -6905,7 +6910,7 @@ call $~lib/builtins/abort unreachable end - local.get $12 + local.get $8 i32.const 0 call $~lib/array/Array#__get i32.const 2 @@ -6918,7 +6923,7 @@ call $~lib/builtins/abort unreachable end - local.get $12 + local.get $8 i32.const 1 call $~lib/array/Array#__get i32.const 3 @@ -6935,46 +6940,46 @@ i32.const 3344 i32.store offset=12 i32.const 0 - local.set $2 + local.set $0 i32.const 0 - local.set $1 - local.get $3 + local.set $5 + local.get $2 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $0 - loop $for-loop|033 + local.set $4 + loop $for-loop|064 local.get $0 - local.get $2 - i32.gt_s + local.get $4 + i32.lt_s if - local.get $2 + local.get $0 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load - local.set $4 + local.set $1 i32.const 4 global.set $~argumentsLength + local.get $5 local.get $1 - local.get $4 + local.get $0 local.get $2 - local.get $3 i32.const 3344 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $1 - local.get $2 + local.set $5 + local.get $0 i32.const 1 i32.add - local.set $2 - br $for-loop|033 + local.set $0 + br $for-loop|064 end end - local.get $1 + local.get $5 i32.const 6 i32.ne if @@ -6989,8 +6994,8 @@ i32.const 3376 i32.store offset=12 i32.const 0 - local.set $1 - local.get $3 + local.set $5 + local.get $2 i32.const 20 i32.sub i32.load offset=16 @@ -6998,37 +7003,37 @@ i32.shr_u i32.const 1 i32.sub - local.set $2 - loop $for-loop|035 - local.get $2 + local.set $0 + loop $for-loop|066 + local.get $0 i32.const 0 i32.ge_s if - local.get $2 + local.get $0 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load - local.set $0 + local.set $1 i32.const 4 global.set $~argumentsLength + local.get $5 local.get $1 local.get $0 local.get $2 - local.get $3 i32.const 3376 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $1 - local.get $2 + local.set $5 + local.get $0 i32.const 1 i32.sub - local.set $2 - br $for-loop|035 + local.set $0 + br $for-loop|066 end end - local.get $1 + local.get $5 i32.const 6 i32.ne if @@ -7044,42 +7049,42 @@ i32.store offset=12 block $__inlined_func$~lib/staticarray/StaticArray#some (result i32) i32.const 0 - local.set $1 - local.get $3 + local.set $0 + local.get $2 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $0 - loop $for-loop|038 + local.set $4 + loop $for-loop|068 local.get $0 - local.get $1 - i32.gt_s + local.get $4 + i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load - local.set $2 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $2 local.get $1 - local.get $3 + local.get $0 + local.get $2 i32.const 3408 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/staticarray/StaticArray#some drop - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|038 + local.set $0 + br $for-loop|068 end end i32.const 0 @@ -7096,44 +7101,44 @@ global.get $~lib/memory/__stack_pointer i32.const 3440 i32.store offset=12 - block $__inlined_func$~lib/staticarray/StaticArray#some39 (result i32) + block $__inlined_func$~lib/staticarray/StaticArray#some69 (result i32) i32.const 0 - local.set $1 - local.get $3 + local.set $0 + local.get $2 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $0 - loop $for-loop|040 + local.set $4 + loop $for-loop|071 local.get $0 - local.get $1 - i32.gt_s + local.get $4 + i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load - local.set $2 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $2 local.get $1 - local.get $3 + local.get $0 + local.get $2 i32.const 3440 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/staticarray/StaticArray#some39 + br_if $__inlined_func$~lib/staticarray/StaticArray#some69 drop - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|040 + local.set $0 + br $for-loop|071 end end i32.const 0 @@ -7151,43 +7156,43 @@ i32.store offset=12 block $__inlined_func$~lib/staticarray/StaticArray#every (result i32) i32.const 0 - local.set $1 - local.get $3 + local.set $0 + local.get $2 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $0 - loop $for-loop|041 + local.set $4 + loop $for-loop|073 local.get $0 - local.get $1 - i32.gt_s + local.get $4 + i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load - local.set $2 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $2 local.get $1 - local.get $3 + local.get $0 + local.get $2 i32.const 3472 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#every drop - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|041 + local.set $0 + br $for-loop|073 end end i32.const 1 @@ -7204,45 +7209,45 @@ global.get $~lib/memory/__stack_pointer i32.const 3504 i32.store offset=12 - block $__inlined_func$~lib/staticarray/StaticArray#every42 (result i32) + block $__inlined_func$~lib/staticarray/StaticArray#every74 (result i32) i32.const 0 - local.set $1 - local.get $3 + local.set $0 + local.get $2 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $0 - loop $for-loop|043 + local.set $4 + loop $for-loop|076 local.get $0 - local.get $1 - i32.gt_s + local.get $4 + i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load - local.set $2 + local.set $1 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $2 local.get $1 - local.get $3 + local.get $0 + local.get $2 i32.const 3504 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz - br_if $__inlined_func$~lib/staticarray/StaticArray#every42 + br_if $__inlined_func$~lib/staticarray/StaticArray#every74 drop - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|043 + local.set $0 + br $for-loop|076 end end i32.const 1 @@ -7260,29 +7265,29 @@ i32.store offset=12 i32.const 0 local.set $0 - local.get $3 + local.get $2 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $1 + local.set $4 block $__inlined_func$~lib/staticarray/StaticArray#findIndex - loop $for-loop|044 + loop $for-loop|078 local.get $0 - local.get $1 + local.get $4 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $0 - local.get $3 + local.get $2 i32.const 3536 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -7291,7 +7296,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|044 + br $for-loop|078 end end i32.const -1 @@ -7313,38 +7318,38 @@ i32.store offset=12 i32.const 0 local.set $0 - local.get $3 + local.get $2 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $1 - block $__inlined_func$~lib/staticarray/StaticArray#findIndex45 - loop $for-loop|046 + local.set $4 + block $__inlined_func$~lib/staticarray/StaticArray#findIndex79 + loop $for-loop|081 local.get $0 - local.get $1 + local.get $4 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $0 - local.get $3 + local.get $2 i32.const 3568 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/staticarray/StaticArray#findIndex45 + br_if $__inlined_func$~lib/staticarray/StaticArray#findIndex79 local.get $0 i32.const 1 i32.add local.set $0 - br $for-loop|046 + br $for-loop|081 end end i32.const -1 @@ -7374,7 +7379,7 @@ i32.sub local.set $0 block $__inlined_func$~lib/staticarray/StaticArray#findLastIndex - loop $for-loop|047 + loop $for-loop|083 local.get $0 i32.const 0 i32.ge_s @@ -7382,13 +7387,13 @@ local.get $0 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $0 - local.get $3 + local.get $2 i32.const 3600 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -7397,7 +7402,7 @@ i32.const 1 i32.sub local.set $0 - br $for-loop|047 + br $for-loop|083 end end i32.const -1 @@ -7426,8 +7431,8 @@ i32.const 1 i32.sub local.set $0 - block $__inlined_func$~lib/staticarray/StaticArray#findLastIndex48 - loop $for-loop|049 + block $__inlined_func$~lib/staticarray/StaticArray#findLastIndex84 + loop $for-loop|086 local.get $0 i32.const 0 i32.ge_s @@ -7445,12 +7450,12 @@ i32.const 3632 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $__inlined_func$~lib/staticarray/StaticArray#findLastIndex48 + br_if $__inlined_func$~lib/staticarray/StaticArray#findLastIndex84 local.get $0 i32.const 1 i32.sub local.set $0 - br $for-loop|049 + br $for-loop|086 end end i32.const -1 @@ -7480,7 +7485,7 @@ i32.const 0 global.set $~argumentsLength i32.const 0 - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -7492,16 +7497,16 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of18 - block $0of19 - block $outOfRange10 + block $1of126 + block $0of127 + block $outOfRange28 global.get $~argumentsLength - br_table $0of19 $1of18 $outOfRange10 + br_table $0of127 $1of126 $outOfRange28 end unreachable end i32.const 3712 - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 3712 i32.store @@ -7513,7 +7518,7 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.get $2 + local.get $0 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer i32.const 4 @@ -7575,12 +7580,12 @@ i32.const 0 i32.gt_s if - loop $while-continue|037 + loop $while-continue|089 global.get $~lib/rt/itcms/state if call $~lib/rt/itcms/step drop - br $while-continue|037 + br $while-continue|089 end end end @@ -7786,23 +7791,23 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - i32.const 0 + local.tee $3 local.get $1 - select - local.tee $2 - local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $3 + i32.const 0 + local.get $1 + select + local.tee $2 i32.add local.tee $4 i32.const 268435455 @@ -7847,6 +7852,7 @@ (func $~lib/staticarray/StaticArray.slice<~lib/string/String> (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) + (local $5 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -7871,13 +7877,13 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.set $3 + local.set $4 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $3 + local.get $4 i32.add local.tee $1 i32.const 0 @@ -7887,83 +7893,81 @@ select else local.get $1 - local.get $3 + local.get $4 local.get $1 - local.get $3 + local.get $4 i32.lt_s select end - local.set $1 + local.set $5 global.get $~lib/memory/__stack_pointer local.get $2 i32.const 0 i32.lt_s if (result i32) local.get $2 - local.get $3 + local.get $4 i32.add - local.tee $2 + local.tee $1 i32.const 0 - local.get $2 + local.get $1 i32.const 0 i32.gt_s select else local.get $2 - local.get $3 + local.get $4 local.get $2 - local.get $3 + local.get $4 i32.lt_s select end - local.get $1 + local.get $5 i32.sub - local.tee $2 + local.tee $1 i32.const 0 - local.get $2 + local.get $1 i32.const 0 i32.gt_s select i32.const 2 i32.shl - local.tee $2 + local.tee $1 i32.const 8 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 i32.store - local.get $1 + local.get $5 i32.const 2 i32.shl local.get $0 i32.add - local.set $1 - i32.const 0 - local.set $0 + local.set $4 loop $while-continue|0 - local.get $0 - local.get $2 - i32.lt_u + local.get $1 + local.get $3 + i32.gt_u if - local.get $0 + local.get $2 local.get $3 i32.add - local.get $0 - local.get $1 + local.get $3 + local.get $4 i32.add i32.load - local.tee $4 + local.tee $0 i32.store - local.get $4 + local.get $0 if - local.get $3 - local.get $4 + local.get $2 + local.get $0 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 + local.get $3 i32.const 4 i32.add - local.set $0 + local.set $3 br $while-continue|0 end end @@ -7971,7 +7975,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 ) (func $~lib/staticarray/StaticArray<~lib/string/String>#__get (param $0 i32) (param $1 i32) (result i32) global.get $~lib/memory/__stack_pointer @@ -8064,15 +8068,15 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.tee $3 + local.tee $2 local.get $1 i32.load offset=12 i32.const 0 local.get $1 select - local.tee $4 + local.tee $6 i32.add - local.tee $5 + local.tee $4 i32.const 268435455 i32.gt_u if @@ -8084,85 +8088,85 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 9 i32.const 0 call $~lib/rt/__newArray - local.tee $5 + local.tee $7 i32.store - local.get $5 + local.get $7 i32.load offset=4 - local.set $6 - local.get $3 + local.set $4 + local.get $2 i32.const 2 i32.shl - local.set $3 + local.set $5 loop $for-loop|0 - local.get $2 local.get $3 + local.get $5 i32.lt_u if - local.get $2 - local.get $6 + local.get $3 + local.get $4 i32.add local.get $0 - local.get $2 + local.get $3 i32.add i32.load - local.tee $7 + local.tee $2 i32.store - local.get $7 + local.get $2 if - local.get $5 local.get $7 + local.get $2 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 + local.get $3 i32.const 4 i32.add - local.set $2 + local.set $3 br $for-loop|0 end end - local.get $3 - local.get $6 + local.get $4 + local.get $5 i32.add local.set $2 local.get $1 i32.load offset=4 - local.set $1 - local.get $4 + local.set $3 + local.get $6 i32.const 2 i32.shl - local.set $3 + local.set $4 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 - local.get $3 + local.get $1 + local.get $4 i32.lt_u if - local.get $0 + local.get $1 local.get $2 i32.add - local.get $0 local.get $1 + local.get $3 i32.add i32.load - local.tee $4 + local.tee $0 i32.store - local.get $4 + local.get $0 if - local.get $5 - local.get $4 + local.get $7 + local.get $0 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 + local.get $1 i32.const 4 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end @@ -8170,7 +8174,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $7 ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) global.get $~lib/rt/itcms/white diff --git a/tests/compiler/std/string-casemapping.optimized.wat b/tests/compiler/std/string-casemapping.optimized.wat index d3818b0aa9..8622063e63 100644 --- a/tests/compiler/std/string-casemapping.optimized.wat +++ b/tests/compiler/std/string-casemapping.optimized.wat @@ -1792,8 +1792,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -3299,25 +3299,25 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 21092 - i32.lt_s - if - i32.const 37504 - i32.const 37552 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/number/itoa64 + block $__inlined_func$~lib/util/number/itoa64 (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 21092 + i32.lt_s + if + i32.const 37504 + i32.const 37552 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store local.get $0 i64.eqz if @@ -3326,7 +3326,6 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 19200 - local.set $1 br $__inlined_func$~lib/util/number/itoa64 end i64.const 0 @@ -3562,32 +3561,32 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $1 end - local.get $1 ) (func $~lib/string/String.__concat (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 21092 - i32.lt_s - if - i32.const 37504 - i32.const 37552 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/string/String#concat + block $__inlined_func$~lib/string/String#concat (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 21092 + i32.lt_s + if + i32.const 37504 + i32.const 37552 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store local.get $0 i32.const 20 i32.sub @@ -3596,7 +3595,7 @@ i32.shr_u i32.const 1 i32.shl - local.tee $3 + local.tee $2 local.get $1 i32.const 20 i32.sub @@ -3605,9 +3604,9 @@ i32.shr_u i32.const 1 i32.shl - local.tee $4 + local.tee $3 i32.add - local.tee $2 + local.tee $4 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -3615,31 +3614,30 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1056 - local.set $2 br $__inlined_func$~lib/string/String#concat end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $4 i32.store - local.get $2 + local.get $4 local.get $0 - local.get $3 + local.get $2 call $~lib/memory/memory.copy local.get $2 - local.get $3 + local.get $4 i32.add local.get $1 - local.get $4 + local.get $3 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $4 end - local.get $2 ) (func $~lib/rt/__visit_members (param $0 i32) block $invalid @@ -4004,13 +4002,13 @@ global.set $~lib/memory/__stack_pointer ) (func $start:std/string-casemapping - (local $0 i64) + (local $0 i32) (local $1 i32) (local $2 i64) - (local $3 i64) + (local $3 i32) (local $4 i64) - (local $5 i32) - (local $6 i32) + (local $5 i64) + (local $6 i64) (local $7 i32) (local $8 i32) (local $9 i64) @@ -4030,16 +4028,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i64.const 0 i64.store offset=8 - local.get $1 + local.get $0 i64.const 0 i64.store offset=16 - local.get $1 + local.get $0 i32.const 0 i32.store offset=24 memory.size @@ -4074,19 +4072,19 @@ i32.store i32.const 1376 global.set $~lib/rt/itcms/fromSpace - local.get $1 + local.get $0 i32.const 1056 i32.store offset=8 i32.const 1056 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 1056 i32.store offset=4 - local.get $1 + local.get $0 i32.const 1056 call $~lib/string/String.__eq i32.eqz @@ -4103,14 +4101,14 @@ i32.store offset=8 i32.const 1056 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 1056 i32.store offset=4 - local.get $1 + local.get $0 i32.const 1056 call $~lib/string/String.__eq i32.eqz @@ -4127,14 +4125,14 @@ i32.store offset=8 i32.const 11808 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 11856 i32.store offset=4 - local.get $1 + local.get $0 i32.const 11856 call $~lib/string/String.__eq i32.eqz @@ -4151,14 +4149,14 @@ i32.store offset=8 i32.const 11904 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 11952 i32.store offset=4 - local.get $1 + local.get $0 i32.const 11952 call $~lib/string/String.__eq i32.eqz @@ -4175,14 +4173,14 @@ i32.store offset=8 i32.const 12000 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 12096 i32.store offset=4 - local.get $1 + local.get $0 i32.const 12096 call $~lib/string/String.__eq i32.eqz @@ -4199,14 +4197,14 @@ i32.store offset=8 i32.const 12096 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 12192 i32.store offset=4 - local.get $1 + local.get $0 i32.const 12192 call $~lib/string/String.__eq i32.eqz @@ -4223,14 +4221,14 @@ i32.store offset=8 i32.const 12288 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 12352 i32.store offset=4 - local.get $1 + local.get $0 i32.const 12352 call $~lib/string/String.__eq i32.eqz @@ -4247,14 +4245,14 @@ i32.store offset=8 i32.const 12352 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 12416 i32.store offset=4 - local.get $1 + local.get $0 i32.const 12416 call $~lib/string/String.__eq i32.eqz @@ -4271,14 +4269,14 @@ i32.store offset=8 i32.const 12480 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 12576 i32.store offset=4 - local.get $1 + local.get $0 i32.const 12576 call $~lib/string/String.__eq i32.eqz @@ -4295,14 +4293,14 @@ i32.store offset=8 i32.const 12576 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 12672 i32.store offset=4 - local.get $1 + local.get $0 i32.const 12672 call $~lib/string/String.__eq i32.eqz @@ -4319,14 +4317,14 @@ i32.store offset=8 i32.const 12768 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 12864 i32.store offset=4 - local.get $1 + local.get $0 i32.const 12864 call $~lib/string/String.__eq i32.eqz @@ -4343,14 +4341,14 @@ i32.store offset=8 i32.const 12864 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 12960 i32.store offset=4 - local.get $1 + local.get $0 i32.const 12960 call $~lib/string/String.__eq i32.eqz @@ -4367,14 +4365,14 @@ i32.store offset=8 i32.const 13056 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 13136 i32.store offset=4 - local.get $1 + local.get $0 i32.const 13136 call $~lib/string/String.__eq i32.eqz @@ -4391,14 +4389,14 @@ i32.store offset=8 i32.const 13216 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 13296 i32.store offset=4 - local.get $1 + local.get $0 i32.const 13296 call $~lib/string/String.__eq i32.eqz @@ -4415,14 +4413,14 @@ i32.store offset=8 i32.const 13376 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 13440 i32.store offset=4 - local.get $1 + local.get $0 i32.const 13440 call $~lib/string/String.__eq i32.eqz @@ -4439,14 +4437,14 @@ i32.store offset=8 i32.const 13504 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 13584 i32.store offset=4 - local.get $1 + local.get $0 i32.const 13584 call $~lib/string/String.__eq i32.eqz @@ -4463,14 +4461,14 @@ i32.store offset=8 i32.const 13664 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 13744 i32.store offset=4 - local.get $1 + local.get $0 i32.const 13744 call $~lib/string/String.__eq i32.eqz @@ -4487,14 +4485,14 @@ i32.store offset=8 i32.const 13824 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 13888 i32.store offset=4 - local.get $1 + local.get $0 i32.const 13888 call $~lib/string/String.__eq i32.eqz @@ -4511,14 +4509,14 @@ i32.store offset=8 i32.const 13952 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 14032 i32.store offset=4 - local.get $1 + local.get $0 i32.const 14032 call $~lib/string/String.__eq i32.eqz @@ -4535,14 +4533,14 @@ i32.store offset=8 i32.const 14112 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 14192 i32.store offset=4 - local.get $1 + local.get $0 i32.const 14192 call $~lib/string/String.__eq i32.eqz @@ -4559,14 +4557,14 @@ i32.store offset=8 i32.const 14272 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 14432 i32.store offset=4 - local.get $1 + local.get $0 i32.const 14432 call $~lib/string/String.__eq i32.eqz @@ -4583,14 +4581,14 @@ i32.store offset=8 i32.const 14272 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 14592 i32.store offset=4 - local.get $1 + local.get $0 i32.const 14592 call $~lib/string/String.__eq i32.eqz @@ -4607,14 +4605,14 @@ i32.store offset=8 i32.const 14752 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 14784 i32.store offset=4 - local.get $1 + local.get $0 i32.const 14784 call $~lib/string/String.__eq i32.eqz @@ -4631,14 +4629,14 @@ i32.store offset=8 i32.const 14816 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 14848 i32.store offset=4 - local.get $1 + local.get $0 i32.const 14848 call $~lib/string/String.__eq i32.eqz @@ -4655,14 +4653,14 @@ i32.store offset=8 i32.const 14880 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 15088 i32.store offset=4 - local.get $1 + local.get $0 i32.const 15088 call $~lib/string/String.__eq i32.eqz @@ -4679,20 +4677,20 @@ i32.store offset=12 i32.const 14752 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 15296 i32.store offset=4 - local.get $1 + local.get $0 i32.const 15296 call $~lib/string/String.__eq i32.eqz @@ -4709,20 +4707,20 @@ i32.store offset=12 i32.const 15328 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 15360 i32.store offset=4 - local.get $1 + local.get $0 i32.const 15360 call $~lib/string/String.__eq i32.eqz @@ -4739,20 +4737,20 @@ i32.store offset=12 i32.const 15392 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 15392 i32.store offset=4 - local.get $1 + local.get $0 i32.const 15392 call $~lib/string/String.__eq i32.eqz @@ -4766,20 +4764,20 @@ end i32.const 65536 call $~lib/string/String.fromCodePoint - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 15648 i32.store offset=4 - local.get $1 + local.get $0 i32.const 15648 call $~lib/string/String.__eq i32.eqz @@ -4793,20 +4791,20 @@ end i32.const 65536 call $~lib/string/String.fromCodePoint - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 15648 i32.store offset=4 - local.get $1 + local.get $0 i32.const 15648 call $~lib/string/String.__eq i32.eqz @@ -4823,14 +4821,14 @@ i32.store offset=8 i32.const 15680 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 15712 i32.store offset=4 - local.get $1 + local.get $0 i32.const 15712 call $~lib/string/String.__eq i32.eqz @@ -4847,14 +4845,14 @@ i32.store offset=8 i32.const 15744 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 15776 i32.store offset=4 - local.get $1 + local.get $0 i32.const 15776 call $~lib/string/String.__eq i32.eqz @@ -4871,14 +4869,14 @@ i32.store offset=8 i32.const 15808 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 15840 i32.store offset=4 - local.get $1 + local.get $0 i32.const 15840 call $~lib/string/String.__eq i32.eqz @@ -4895,14 +4893,14 @@ i32.store offset=8 i32.const 15872 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 15904 i32.store offset=4 - local.get $1 + local.get $0 i32.const 15904 call $~lib/string/String.__eq i32.eqz @@ -4919,14 +4917,14 @@ i32.store offset=8 i32.const 15936 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 15968 i32.store offset=4 - local.get $1 + local.get $0 i32.const 15968 call $~lib/string/String.__eq i32.eqz @@ -4943,14 +4941,14 @@ i32.store offset=8 i32.const 16000 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 16032 i32.store offset=4 - local.get $1 + local.get $0 i32.const 16032 call $~lib/string/String.__eq i32.eqz @@ -4967,14 +4965,14 @@ i32.store offset=8 i32.const 16064 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 16096 i32.store offset=4 - local.get $1 + local.get $0 i32.const 16096 call $~lib/string/String.__eq i32.eqz @@ -4991,14 +4989,14 @@ i32.store offset=8 i32.const 16128 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 16160 i32.store offset=4 - local.get $1 + local.get $0 i32.const 16160 call $~lib/string/String.__eq i32.eqz @@ -5015,14 +5013,14 @@ i32.store offset=8 i32.const 16192 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 16224 i32.store offset=4 - local.get $1 + local.get $0 i32.const 16224 call $~lib/string/String.__eq i32.eqz @@ -5039,14 +5037,14 @@ i32.store offset=8 i32.const 16256 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 16288 i32.store offset=4 - local.get $1 + local.get $0 i32.const 16288 call $~lib/string/String.__eq i32.eqz @@ -5063,14 +5061,14 @@ i32.store offset=8 i32.const 16320 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 16352 i32.store offset=4 - local.get $1 + local.get $0 i32.const 16352 call $~lib/string/String.__eq i32.eqz @@ -5087,14 +5085,14 @@ i32.store offset=8 i32.const 16384 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 16416 i32.store offset=4 - local.get $1 + local.get $0 i32.const 16416 call $~lib/string/String.__eq i32.eqz @@ -5111,14 +5109,14 @@ i32.store offset=8 i32.const 16448 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 16480 i32.store offset=4 - local.get $1 + local.get $0 i32.const 16480 call $~lib/string/String.__eq i32.eqz @@ -5135,14 +5133,14 @@ i32.store offset=8 i32.const 16512 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 16544 i32.store offset=4 - local.get $1 + local.get $0 i32.const 16544 call $~lib/string/String.__eq i32.eqz @@ -5159,14 +5157,14 @@ i32.store offset=8 i32.const 16576 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 16608 i32.store offset=4 - local.get $1 + local.get $0 i32.const 16608 call $~lib/string/String.__eq i32.eqz @@ -5183,14 +5181,14 @@ i32.store offset=8 i32.const 16640 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 16672 i32.store offset=4 - local.get $1 + local.get $0 i32.const 16672 call $~lib/string/String.__eq i32.eqz @@ -5207,14 +5205,14 @@ i32.store offset=8 i32.const 16704 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 16736 i32.store offset=4 - local.get $1 + local.get $0 i32.const 16736 call $~lib/string/String.__eq i32.eqz @@ -5231,14 +5229,14 @@ i32.store offset=8 i32.const 16768 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 16800 i32.store offset=4 - local.get $1 + local.get $0 i32.const 16800 call $~lib/string/String.__eq i32.eqz @@ -5255,14 +5253,14 @@ i32.store offset=8 i32.const 16832 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 16864 i32.store offset=4 - local.get $1 + local.get $0 i32.const 16864 call $~lib/string/String.__eq i32.eqz @@ -5279,14 +5277,14 @@ i32.store offset=8 i32.const 16896 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 16928 i32.store offset=4 - local.get $1 + local.get $0 i32.const 16928 call $~lib/string/String.__eq i32.eqz @@ -5303,14 +5301,14 @@ i32.store offset=8 i32.const 16960 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 16992 i32.store offset=4 - local.get $1 + local.get $0 i32.const 16992 call $~lib/string/String.__eq i32.eqz @@ -5327,14 +5325,14 @@ i32.store offset=8 i32.const 17024 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 17056 i32.store offset=4 - local.get $1 + local.get $0 i32.const 17056 call $~lib/string/String.__eq i32.eqz @@ -5351,14 +5349,14 @@ i32.store offset=8 i32.const 17088 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 17120 i32.store offset=4 - local.get $1 + local.get $0 i32.const 17120 call $~lib/string/String.__eq i32.eqz @@ -5375,14 +5373,14 @@ i32.store offset=8 i32.const 17152 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 17184 i32.store offset=4 - local.get $1 + local.get $0 i32.const 17184 call $~lib/string/String.__eq i32.eqz @@ -5399,14 +5397,14 @@ i32.store offset=8 i32.const 17216 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 17248 i32.store offset=4 - local.get $1 + local.get $0 i32.const 17248 call $~lib/string/String.__eq i32.eqz @@ -5423,14 +5421,14 @@ i32.store offset=8 i32.const 17280 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 16352 i32.store offset=4 - local.get $1 + local.get $0 i32.const 16352 call $~lib/string/String.__eq i32.eqz @@ -5447,14 +5445,14 @@ i32.store offset=8 i32.const 17312 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 17344 i32.store offset=4 - local.get $1 + local.get $0 i32.const 17344 call $~lib/string/String.__eq i32.eqz @@ -5471,14 +5469,14 @@ i32.store offset=8 i32.const 17376 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 17408 i32.store offset=4 - local.get $1 + local.get $0 i32.const 17408 call $~lib/string/String.__eq i32.eqz @@ -5495,14 +5493,14 @@ i32.store offset=8 i32.const 17440 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 17472 i32.store offset=4 - local.get $1 + local.get $0 i32.const 17472 call $~lib/string/String.__eq i32.eqz @@ -5519,14 +5517,14 @@ i32.store offset=8 i32.const 17504 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 17536 i32.store offset=4 - local.get $1 + local.get $0 i32.const 17536 call $~lib/string/String.__eq i32.eqz @@ -5543,14 +5541,14 @@ i32.store offset=8 i32.const 17568 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 17600 i32.store offset=4 - local.get $1 + local.get $0 i32.const 17600 call $~lib/string/String.__eq i32.eqz @@ -5567,14 +5565,14 @@ i32.store offset=8 i32.const 17632 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 17664 i32.store offset=4 - local.get $1 + local.get $0 i32.const 17664 call $~lib/string/String.__eq i32.eqz @@ -5591,14 +5589,14 @@ i32.store offset=8 i32.const 17696 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 17728 i32.store offset=4 - local.get $1 + local.get $0 i32.const 17728 call $~lib/string/String.__eq i32.eqz @@ -5615,14 +5613,14 @@ i32.store offset=8 i32.const 17760 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 17792 i32.store offset=4 - local.get $1 + local.get $0 i32.const 17792 call $~lib/string/String.__eq i32.eqz @@ -5639,14 +5637,14 @@ i32.store offset=8 i32.const 17824 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 17856 i32.store offset=4 - local.get $1 + local.get $0 i32.const 17856 call $~lib/string/String.__eq i32.eqz @@ -5663,14 +5661,14 @@ i32.store offset=8 i32.const 17888 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 17920 i32.store offset=4 - local.get $1 + local.get $0 i32.const 17920 call $~lib/string/String.__eq i32.eqz @@ -5687,14 +5685,14 @@ i32.store offset=8 i32.const 17952 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 17984 i32.store offset=4 - local.get $1 + local.get $0 i32.const 17984 call $~lib/string/String.__eq i32.eqz @@ -5711,14 +5709,14 @@ i32.store offset=8 i32.const 18016 call $~lib/string/String#toLowerCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 18048 i32.store offset=4 - local.get $1 + local.get $0 i32.const 18048 call $~lib/string/String.__eq i32.eqz @@ -5735,14 +5733,14 @@ i32.store offset=8 i32.const 18080 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 18112 i32.store offset=4 - local.get $1 + local.get $0 i32.const 18112 call $~lib/string/String.__eq i32.eqz @@ -5759,14 +5757,14 @@ i32.store offset=8 i32.const 15328 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 18144 i32.store offset=4 - local.get $1 + local.get $0 i32.const 18144 call $~lib/string/String.__eq i32.eqz @@ -5783,14 +5781,14 @@ i32.store offset=8 i32.const 18176 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 18208 i32.store offset=4 - local.get $1 + local.get $0 i32.const 18208 call $~lib/string/String.__eq i32.eqz @@ -5807,14 +5805,14 @@ i32.store offset=8 i32.const 18240 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 18272 i32.store offset=4 - local.get $1 + local.get $0 i32.const 18272 call $~lib/string/String.__eq i32.eqz @@ -5831,14 +5829,14 @@ i32.store offset=8 i32.const 18304 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 18336 i32.store offset=4 - local.get $1 + local.get $0 i32.const 18336 call $~lib/string/String.__eq i32.eqz @@ -5855,14 +5853,14 @@ i32.store offset=8 i32.const 18368 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 18400 i32.store offset=4 - local.get $1 + local.get $0 i32.const 18400 call $~lib/string/String.__eq i32.eqz @@ -5879,14 +5877,14 @@ i32.store offset=8 i32.const 18432 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 18400 i32.store offset=4 - local.get $1 + local.get $0 i32.const 18400 call $~lib/string/String.__eq i32.eqz @@ -5903,14 +5901,14 @@ i32.store offset=8 i32.const 18464 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 18496 i32.store offset=4 - local.get $1 + local.get $0 i32.const 18496 call $~lib/string/String.__eq i32.eqz @@ -5927,14 +5925,14 @@ i32.store offset=8 i32.const 18528 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 18560 i32.store offset=4 - local.get $1 + local.get $0 i32.const 18560 call $~lib/string/String.__eq i32.eqz @@ -5951,14 +5949,14 @@ i32.store offset=8 i32.const 18592 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 18624 i32.store offset=4 - local.get $1 + local.get $0 i32.const 18624 call $~lib/string/String.__eq i32.eqz @@ -5975,14 +5973,14 @@ i32.store offset=8 i32.const 18656 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 18688 i32.store offset=4 - local.get $1 + local.get $0 i32.const 18688 call $~lib/string/String.__eq i32.eqz @@ -5999,14 +5997,14 @@ i32.store offset=8 i32.const 18720 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 18752 i32.store offset=4 - local.get $1 + local.get $0 i32.const 18752 call $~lib/string/String.__eq i32.eqz @@ -6023,14 +6021,14 @@ i32.store offset=8 i32.const 18784 call $~lib/string/String#toUpperCase - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 18816 i32.store offset=4 - local.get $1 + local.get $0 i32.const 18816 call $~lib/string/String.__eq i32.eqz @@ -6043,317 +6041,330 @@ unreachable end loop $for-loop|0 - local.get $6 + local.get $7 i32.const 1114111 i32.le_s if global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $7 call $~lib/string/String.fromCodePoint local.tee $1 i32.store offset=16 global.get $~lib/memory/__stack_pointer local.get $1 call $~lib/string/String#toLowerCase - local.tee $7 + local.tee $0 i32.store offset=20 global.get $~lib/memory/__stack_pointer local.get $1 call $~lib/string/String#toUpperCase local.tee $1 i32.store offset=24 - block $__inlined_func$~lib/string/String#codePointAt - local.get $7 + block $__inlined_func$~lib/string/String#codePointAt (result i32) + local.get $0 + local.set $3 + i32.const -1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $5 + local.tee $8 i32.eqz - if - i32.const -1 - local.set $5 - br $__inlined_func$~lib/string/String#codePointAt - end - local.get $5 + br_if $__inlined_func$~lib/string/String#codePointAt + drop + local.get $8 i32.const 1 i32.eq - local.get $7 + local.get $3 i32.load16_u - local.tee $5 + local.tee $8 i32.const 64512 i32.and i32.const 55296 i32.ne i32.or - br_if $__inlined_func$~lib/string/String#codePointAt - local.get $7 + if + local.get $8 + br $__inlined_func$~lib/string/String#codePointAt + end + local.get $8 + local.get $3 i32.load16_u offset=2 - local.tee $8 + local.tee $3 i32.const 64512 i32.and i32.const 56320 i32.ne br_if $__inlined_func$~lib/string/String#codePointAt + drop + local.get $3 local.get $8 - local.get $5 i32.const 10 i32.shl i32.add i32.const 56613888 i32.sub - local.set $5 end - local.get $5 i64.extend_i32_s - local.set $0 - block $__inlined_func$~lib/string/String#codePointAt0 - local.get $7 + local.set $2 + block $__inlined_func$~lib/string/String#codePointAt6 (result i32) + local.get $0 + local.set $3 + i32.const -1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $5 + local.tee $8 i32.const 1 i32.le_u - if - i32.const -1 - local.set $5 - br $__inlined_func$~lib/string/String#codePointAt0 - end - local.get $5 + br_if $__inlined_func$~lib/string/String#codePointAt6 + drop + local.get $8 i32.const 2 i32.eq - local.get $7 + local.get $3 i32.load16_u offset=2 - local.tee $5 + local.tee $8 i32.const 64512 i32.and i32.const 55296 i32.ne i32.or - br_if $__inlined_func$~lib/string/String#codePointAt0 - local.get $7 + if + local.get $8 + br $__inlined_func$~lib/string/String#codePointAt6 + end + local.get $8 + local.get $3 i32.load16_u offset=4 - local.tee $8 + local.tee $3 i32.const 64512 i32.and i32.const 56320 i32.ne - br_if $__inlined_func$~lib/string/String#codePointAt0 + br_if $__inlined_func$~lib/string/String#codePointAt6 + drop + local.get $3 local.get $8 - local.get $5 i32.const 10 i32.shl i32.add i32.const 56613888 i32.sub - local.set $5 end - local.get $5 i64.extend_i32_s - local.tee $2 + local.tee $4 i64.const 0 i64.ge_s if - local.get $2 + local.get $4 i64.const 16 i64.shl - local.get $0 + local.get $2 i64.add - local.set $0 + local.set $2 end - block $__inlined_func$~lib/string/String#codePointAt1 - local.get $7 + block $__inlined_func$~lib/string/String#codePointAt8 (result i32) + i32.const -1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $5 + local.tee $3 i32.const 2 i32.le_u - if - i32.const -1 - local.set $5 - br $__inlined_func$~lib/string/String#codePointAt1 - end - local.get $5 + br_if $__inlined_func$~lib/string/String#codePointAt8 + drop + local.get $3 i32.const 3 i32.eq - local.get $7 + local.get $0 i32.load16_u offset=4 - local.tee $5 + local.tee $3 i32.const 64512 i32.and i32.const 55296 i32.ne i32.or - br_if $__inlined_func$~lib/string/String#codePointAt1 - local.get $7 + if + local.get $3 + br $__inlined_func$~lib/string/String#codePointAt8 + end + local.get $3 + local.get $0 i32.load16_u offset=6 - local.tee $7 + local.tee $0 i32.const 64512 i32.and i32.const 56320 i32.ne - br_if $__inlined_func$~lib/string/String#codePointAt1 - local.get $7 - local.get $5 + br_if $__inlined_func$~lib/string/String#codePointAt8 + drop + local.get $0 + local.get $3 i32.const 10 i32.shl i32.add i32.const 56613888 i32.sub - local.set $5 end - local.get $5 i64.extend_i32_s - local.tee $2 + local.tee $4 i64.const 0 i64.ge_s if (result i64) - local.get $2 + local.get $4 i64.const 32 i64.shl - local.get $0 + local.get $2 i64.add else - local.get $0 + local.get $2 end - local.set $2 - block $__inlined_func$~lib/string/String#codePointAt2 + local.set $4 + block $__inlined_func$~lib/string/String#codePointAt10 (result i32) + i32.const -1 local.get $1 + local.tee $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $5 + local.tee $3 i32.eqz - if - i32.const -1 - local.set $5 - br $__inlined_func$~lib/string/String#codePointAt2 - end - local.get $5 + br_if $__inlined_func$~lib/string/String#codePointAt10 + drop + local.get $3 i32.const 1 i32.eq - local.get $1 + local.get $0 i32.load16_u - local.tee $5 + local.tee $3 i32.const 64512 i32.and i32.const 55296 i32.ne i32.or - br_if $__inlined_func$~lib/string/String#codePointAt2 - local.get $1 + if + local.get $3 + br $__inlined_func$~lib/string/String#codePointAt10 + end + local.get $3 + local.get $0 i32.load16_u offset=2 - local.tee $7 + local.tee $0 i32.const 64512 i32.and i32.const 56320 i32.ne - br_if $__inlined_func$~lib/string/String#codePointAt2 - local.get $7 - local.get $5 + br_if $__inlined_func$~lib/string/String#codePointAt10 + drop + local.get $0 + local.get $3 i32.const 10 i32.shl i32.add i32.const 56613888 i32.sub - local.set $5 end - local.get $5 i64.extend_i32_s - local.set $0 - block $__inlined_func$~lib/string/String#codePointAt3 + local.set $2 + block $__inlined_func$~lib/string/String#codePointAt12 (result i32) + i32.const -1 local.get $1 + local.tee $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $5 + local.tee $3 i32.const 1 i32.le_u - if - i32.const -1 - local.set $5 - br $__inlined_func$~lib/string/String#codePointAt3 - end - local.get $5 + br_if $__inlined_func$~lib/string/String#codePointAt12 + drop + local.get $3 i32.const 2 i32.eq - local.get $1 + local.get $0 i32.load16_u offset=2 - local.tee $5 + local.tee $3 i32.const 64512 i32.and i32.const 55296 i32.ne i32.or - br_if $__inlined_func$~lib/string/String#codePointAt3 - local.get $1 + if + local.get $3 + br $__inlined_func$~lib/string/String#codePointAt12 + end + local.get $3 + local.get $0 i32.load16_u offset=4 - local.tee $7 + local.tee $0 i32.const 64512 i32.and i32.const 56320 i32.ne - br_if $__inlined_func$~lib/string/String#codePointAt3 - local.get $7 - local.get $5 + br_if $__inlined_func$~lib/string/String#codePointAt12 + drop + local.get $0 + local.get $3 i32.const 10 i32.shl i32.add i32.const 56613888 i32.sub - local.set $5 end - local.get $5 i64.extend_i32_s - local.tee $3 + local.tee $5 i64.const 0 i64.ge_s if - local.get $3 + local.get $5 i64.const 16 i64.shl - local.get $0 + local.get $2 i64.add - local.set $0 + local.set $2 end - block $__inlined_func$~lib/string/String#codePointAt4 + block $__inlined_func$~lib/string/String#codePointAt14 (result i32) + i32.const -1 local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $5 + local.tee $0 i32.const 2 i32.le_u - if - i32.const -1 - local.set $5 - br $__inlined_func$~lib/string/String#codePointAt4 - end - local.get $5 + br_if $__inlined_func$~lib/string/String#codePointAt14 + drop + local.get $0 i32.const 3 i32.eq local.get $1 i32.load16_u offset=4 - local.tee $5 + local.tee $0 i32.const 64512 i32.and i32.const 55296 i32.ne i32.or - br_if $__inlined_func$~lib/string/String#codePointAt4 + if + local.get $0 + br $__inlined_func$~lib/string/String#codePointAt14 + end + local.get $0 local.get $1 i32.load16_u offset=6 local.tee $1 @@ -6361,74 +6372,73 @@ i32.and i32.const 56320 i32.ne - br_if $__inlined_func$~lib/string/String#codePointAt4 + br_if $__inlined_func$~lib/string/String#codePointAt14 + drop local.get $1 - local.get $5 + local.get $0 i32.const 10 i32.shl i32.add i32.const 56613888 i32.sub - local.set $5 end - local.get $5 i64.extend_i32_s - local.tee $3 + local.tee $5 i64.const 0 i64.ge_s if (result i64) - local.get $3 + local.get $5 i64.const 32 i64.shl - local.get $0 + local.get $2 i64.add else - local.get $0 + local.get $2 end - local.set $3 - local.get $6 + local.set $5 + local.get $7 i32.const 0 call $std/string-casemapping/toLowerCaseFromIndex i64.extend_i32_s - local.set $0 - local.get $6 + local.set $2 + local.get $7 i32.const 1 call $std/string-casemapping/toLowerCaseFromIndex i64.extend_i32_s - local.tee $4 + local.tee $6 i64.const 0 i64.ge_s if - local.get $4 + local.get $6 i64.const 16 i64.shl - local.get $0 + local.get $2 i64.add - local.set $0 + local.set $2 end - local.get $6 + local.get $7 i32.const 2 call $std/string-casemapping/toLowerCaseFromIndex i64.extend_i32_s - local.tee $4 + local.tee $6 i64.const 0 i64.ge_s if (result i64) - local.get $4 + local.get $6 i64.const 32 i64.shl - local.get $0 + local.get $2 i64.add else - local.get $0 + local.get $2 end - local.set $4 - local.get $6 + local.set $6 + local.get $7 i32.const 0 call $std/string-casemapping/toUpperCaseFromIndex i64.extend_i32_s - local.set $0 - local.get $6 + local.set $2 + local.get $7 i32.const 1 call $std/string-casemapping/toUpperCaseFromIndex i64.extend_i32_s @@ -6439,11 +6449,11 @@ local.get $9 i64.const 16 i64.shl - local.get $0 + local.get $2 i64.add - local.set $0 + local.set $2 end - local.get $6 + local.get $7 i32.const 2 call $std/string-casemapping/toUpperCaseFromIndex i64.extend_i32_s @@ -6454,12 +6464,12 @@ local.get $9 i64.const 32 i64.shl - local.get $0 + local.get $2 i64.add - local.set $0 + local.set $2 end - local.get $2 local.get $4 + local.get $6 i64.ne if global.get $~lib/memory/__stack_pointer @@ -6467,7 +6477,7 @@ i32.store i32.const 18848 i32.const 1 - local.get $6 + local.get $7 f64.convert_i32_s f64.const 0 f64.const 0 @@ -6477,20 +6487,20 @@ global.get $~lib/memory/__stack_pointer i32.const 18944 i32.store offset=4 - local.get $2 + local.get $4 call $~lib/number/I64#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 i32.const 18944 - local.get $1 + local.get $0 call $~lib/string/String.__concat - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 i32.const 0 f64.const 0 f64.const 0 @@ -6501,20 +6511,20 @@ global.get $~lib/memory/__stack_pointer i32.const 20784 i32.store offset=4 - local.get $4 + local.get $6 call $~lib/number/I64#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 i32.const 20784 - local.get $1 + local.get $0 call $~lib/string/String.__concat - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 i32.const 0 f64.const 0 f64.const 0 @@ -6523,8 +6533,8 @@ f64.const 0 call $~lib/builtins/trace end - local.get $0 - local.get $3 + local.get $2 + local.get $5 i64.ne if global.get $~lib/memory/__stack_pointer @@ -6532,7 +6542,7 @@ i32.store i32.const 20848 i32.const 1 - local.get $6 + local.get $7 f64.convert_i32_s f64.const 0 f64.const 0 @@ -6542,20 +6552,20 @@ global.get $~lib/memory/__stack_pointer i32.const 20944 i32.store offset=4 - local.get $3 + local.get $5 call $~lib/number/I64#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 i32.const 20944 - local.get $1 + local.get $0 call $~lib/string/String.__concat - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 i32.const 0 f64.const 0 f64.const 0 @@ -6566,20 +6576,20 @@ global.get $~lib/memory/__stack_pointer i32.const 21008 i32.store offset=4 - local.get $0 + local.get $2 call $~lib/number/I64#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 i32.const 21008 - local.get $1 + local.get $0 call $~lib/string/String.__concat - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 i32.const 0 f64.const 0 f64.const 0 @@ -6588,10 +6598,10 @@ f64.const 0 call $~lib/builtins/trace end - local.get $6 + local.get $7 i32.const 1 i32.add - local.set $6 + local.set $7 br $for-loop|0 end end @@ -6611,6 +6621,7 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -6635,7 +6646,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $7 + local.tee $8 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -6646,16 +6657,16 @@ return end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $8 i32.const 2 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $9 i32.store loop $for-loop|0 local.get $3 - local.get $7 + local.get $8 i32.lt_u if local.get $3 @@ -6664,17 +6675,17 @@ local.get $0 i32.add i32.load16_u - local.tee $2 + local.tee $1 i32.const 7 i32.shr_u if block $for-continue|0 - local.get $2 + local.get $1 i32.const 55295 i32.sub i32.const 1025 i32.lt_u - local.get $7 + local.get $8 i32.const 1 i32.sub local.get $3 @@ -6700,8 +6711,8 @@ local.get $4 i32.const 1023 i32.and - local.get $2 - local.tee $1 + local.get $1 + local.tee $2 i32.const 1023 i32.and i32.const 10 @@ -6709,66 +6720,67 @@ i32.or i32.const 65536 i32.add - local.tee $2 + local.tee $1 i32.const 131072 i32.ge_u if - local.get $5 + local.get $10 i32.const 1 i32.shl - local.get $6 + local.get $9 i32.add local.get $4 i32.const 16 i32.shl - local.get $1 + local.get $2 i32.or i32.store - local.get $5 + local.get $10 i32.const 1 i32.add - local.set $5 + local.set $10 br $for-continue|0 end end end - local.get $2 + local.get $1 i32.const 304 i32.eq if - local.get $5 + local.get $10 i32.const 1 i32.shl - local.get $6 + local.get $9 i32.add i32.const 50790505 i32.store - local.get $5 + local.get $10 i32.const 1 i32.add - local.set $5 + local.set $10 else - local.get $2 + local.get $1 i32.const 931 i32.eq if - local.get $5 + local.get $10 i32.const 1 i32.shl - local.get $6 + local.get $9 i32.add i32.const 962 i32.const 963 - local.get $7 + local.get $8 i32.const 1 i32.gt_u if (result i32) block $~lib/util/string/isFinalSigma|inlined.0 (result i32) i32.const 0 - local.set $1 + local.set $2 + local.get $3 i32.const 0 local.get $3 - local.tee $2 + local.tee $1 i32.const 30 i32.sub local.tee $4 @@ -6776,20 +6788,20 @@ i32.const 0 i32.lt_s select - local.set $8 + local.set $7 loop $while-continue|1 - local.get $2 - local.get $8 + local.get $1 + local.get $7 i32.gt_s if i32.const -1 local.set $4 block $~lib/util/string/codePointBefore|inlined.0 - local.get $2 + local.get $1 i32.const 0 i32.le_s br_if $~lib/util/string/codePointBefore|inlined.0 - local.get $2 + local.get $1 i32.const 1 i32.sub i32.const 1 @@ -6797,22 +6809,22 @@ local.get $0 i32.add i32.load16_u - local.tee $10 + local.tee $11 i32.const 64512 i32.and i32.const 56320 i32.eq - local.get $2 + local.get $1 i32.const 2 i32.sub i32.const 0 i32.ge_s i32.and if - local.get $10 + local.get $11 i32.const 1023 i32.and - local.get $2 + local.get $1 i32.const 2 i32.sub i32.const 1 @@ -6820,7 +6832,7 @@ local.get $0 i32.add i32.load16_u - local.tee $9 + local.tee $6 i32.const 1023 i32.and i32.const 10 @@ -6829,7 +6841,7 @@ i32.const 65536 i32.add local.set $4 - local.get $9 + local.get $6 i32.const 64512 i32.and i32.const 55296 @@ -6837,8 +6849,8 @@ br_if $~lib/util/string/codePointBefore|inlined.0 end i32.const 65533 - local.get $10 - local.get $10 + local.get $11 + local.get $11 i32.const 63488 i32.and i32.const 55296 @@ -6878,7 +6890,6 @@ end i32.eqz if - i32.const 0 local.get $4 i32.const 127370 i32.lt_u @@ -6909,91 +6920,92 @@ else i32.const 0 end - i32.eqz - br_if $~lib/util/string/isFinalSigma|inlined.0 - drop - i32.const 1 - local.set $1 + if (result i32) + i32.const 1 + else + i32.const 0 + br $~lib/util/string/isFinalSigma|inlined.0 + end + local.set $2 end - local.get $2 + local.get $1 local.get $4 i32.const 65536 i32.ge_s i32.const 1 i32.add i32.sub - local.set $2 + local.set $1 br $while-continue|1 end end i32.const 0 - local.get $1 + local.get $2 i32.eqz br_if $~lib/util/string/isFinalSigma|inlined.0 drop - local.get $3 i32.const 1 i32.add - local.tee $2 + local.tee $1 i32.const 30 i32.add - local.tee $1 - local.get $7 - local.get $1 - local.get $7 + local.tee $2 + local.get $8 + local.get $2 + local.get $8 i32.lt_s select local.set $4 loop $while-continue|2 - local.get $2 + local.get $1 local.get $4 i32.lt_s if - local.get $2 + local.get $1 i32.const 1 i32.shl local.get $0 i32.add i32.load16_u - local.tee $1 + local.tee $2 i32.const 64512 i32.and i32.const 55296 i32.eq - local.get $7 - local.get $2 + local.get $8 + local.get $1 i32.const 1 i32.add i32.ne i32.and if - local.get $2 + local.get $1 i32.const 1 i32.shl local.get $0 i32.add i32.load16_u offset=2 - local.tee $8 + local.tee $5 i32.const 64512 i32.and i32.const 56320 i32.eq if - local.get $8 - local.get $1 + local.get $5 + local.get $2 i32.const 10 i32.shl i32.add i32.const 56613888 i32.sub - local.set $1 + local.set $2 end end - local.get $1 + local.get $2 i32.const 918000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 8 i32.shr_u i32.const 7212 @@ -7003,14 +7015,14 @@ i32.shl i32.const 7212 i32.add - local.get $1 + local.get $2 i32.const 255 i32.and i32.const 3 i32.shr_u i32.add i32.load8_u - local.get $1 + local.get $2 i32.const 7 i32.and i32.shr_u @@ -7021,11 +7033,11 @@ end i32.eqz if - local.get $1 + local.get $2 i32.const 127370 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 8 i32.shr_u i32.const 10220 @@ -7035,14 +7047,14 @@ i32.shl i32.const 10220 i32.add - local.get $1 + local.get $2 i32.const 255 i32.and i32.const 3 i32.shr_u i32.add i32.load8_u - local.get $1 + local.get $2 i32.const 7 i32.and i32.shr_u @@ -7054,14 +7066,14 @@ i32.eqz br $~lib/util/string/isFinalSigma|inlined.0 end - local.get $1 + local.get $2 i32.const 65536 i32.ge_u i32.const 1 i32.add - local.get $2 + local.get $1 i32.add - local.set $2 + local.set $1 br $while-continue|2 end end @@ -7073,23 +7085,23 @@ select i32.store16 else - local.get $2 + local.get $1 i32.const 9398 i32.sub i32.const 25 i32.le_u if - local.get $5 + local.get $10 i32.const 1 i32.shl - local.get $6 + local.get $9 i32.add - local.get $2 + local.get $1 i32.const 26 i32.add i32.store16 else - local.get $2 + local.get $1 i32.const 0 call $~lib/util/casemap/casemap i32.const 2097151 @@ -7098,18 +7110,18 @@ i32.const 65536 i32.lt_u if - local.get $5 + local.get $10 i32.const 1 i32.shl - local.get $6 + local.get $9 i32.add local.get $1 i32.store16 else - local.get $5 + local.get $10 i32.const 1 i32.shl - local.get $6 + local.get $9 i32.add local.get $1 i32.const 65536 @@ -7128,22 +7140,22 @@ i32.shl i32.or i32.store - local.get $5 + local.get $10 i32.const 1 i32.add - local.set $5 + local.set $10 end end end end end else - local.get $5 + local.get $10 i32.const 1 i32.shl - local.get $6 + local.get $9 i32.add - local.get $2 + local.get $1 i32.const 7084 i32.add i32.load8_u @@ -7153,15 +7165,15 @@ i32.const 1 i32.add local.set $3 - local.get $5 + local.get $10 i32.const 1 i32.add - local.set $5 + local.set $10 br $for-loop|0 end end - local.get $6 - local.get $5 + local.get $9 + local.get $10 i32.const 1 i32.shl call $~lib/rt/itcms/__renew @@ -7253,19 +7265,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -7275,15 +7287,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -7306,7 +7319,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -7316,23 +7329,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -7340,7 +7353,7 @@ else i32.const 21056 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1280 @@ -7350,7 +7363,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 21060 @@ -7365,16 +7378,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -7382,11 +7395,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/std/string-encoding.optimized.wat b/tests/compiler/std/string-encoding.optimized.wat index 2b55af46e0..bdf71f1225 100644 --- a/tests/compiler/std/string-encoding.optimized.wat +++ b/tests/compiler/std/string-encoding.optimized.wat @@ -1377,8 +1377,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -2714,16 +2714,15 @@ (func $~start (local $0 i32) (local $1 i32) - (local $2 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 22540 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -2735,7 +2734,7 @@ global.get $~lib/memory/__stack_pointer i32.const 22540 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -2798,7 +2797,7 @@ global.get $~lib/memory/__stack_pointer i32.const 22540 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -2976,7 +2975,7 @@ global.get $~lib/memory/__stack_pointer i32.const 22540 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -3000,221 +2999,19 @@ call $~lib/string/String.UTF16.decodeUnsafe local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store - local.get $1 - i32.const 1056 - i32.store offset=8 - local.get $0 - i32.const 1056 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 1088 - i32.const 33 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.add - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 22540 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - local.tee $0 - i64.const 0 - i64.store - local.get $0 - i32.const 0 - i32.store offset=8 local.get $0 - i32.const 1056 i32.store - local.get $0 - i32.const 1056 - call $~lib/string/String.UTF16.encode - local.tee $0 - i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 1056 - i32.store - i32.const 1052 - i32.load - local.set $1 - local.get $0 - i32.const 0 - call $~lib/string/String.UTF16.decodeUnsafe - local.set $2 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store - global.get $~lib/memory/__stack_pointer - i32.const 1552 i32.store offset=8 - local.get $2 - i32.const 1552 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 1088 - i32.const 42 - i32.const 3 - call $~lib/builtins/abort - unreachable - end local.get $0 - local.get $1 - call $~lib/string/String.UTF16.decodeUnsafe - local.set $1 - global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 - i32.store - local.get $2 i32.const 1056 - i32.store offset=8 - local.get $1 - i32.const 1056 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 1088 - i32.const 43 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 4 - call $~lib/string/String.UTF16.decodeUnsafe - local.set $1 - global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 - i32.store - local.get $2 - i32.const 1584 - i32.store offset=8 - local.get $1 - i32.const 1584 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 1088 - i32.const 44 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 4 - i32.add - i32.const 2 - call $~lib/string/String.UTF16.decodeUnsafe - local.set $1 - global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 - i32.store - local.get $2 - i32.const 1616 - i32.store offset=8 - local.get $1 - i32.const 1616 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 1088 - i32.const 45 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 4 - i32.add - i32.const 4 - call $~lib/string/String.UTF16.decodeUnsafe - local.set $1 - global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 - i32.store - local.get $2 - i32.const 1648 - i32.store offset=8 - local.get $1 - i32.const 1648 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 1088 - i32.const 46 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 8 - i32.add - i32.const 4 - call $~lib/string/String.UTF16.decodeUnsafe - local.set $1 - global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 - i32.store - local.get $2 - i32.const 1680 - i32.store offset=8 - local.get $1 - i32.const 1680 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 1088 - i32.const 47 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 12 - i32.add - i32.const 0 - call $~lib/string/String.UTF16.decodeUnsafe - local.set $0 - global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store - local.get $1 - i32.const 1552 - i32.store offset=8 - local.get $0 - i32.const 1552 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 1088 - i32.const 48 + i32.const 33 i32.const 3 call $~lib/builtins/abort unreachable @@ -3223,6 +3020,7 @@ i32.const 12 i32.add global.set $~lib/memory/__stack_pointer + call $std/string-encoding/testUTF16DecodeUnsafe global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -3230,7 +3028,7 @@ global.get $~lib/memory/__stack_pointer i32.const 22540 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -3278,7 +3076,7 @@ global.get $~lib/memory/__stack_pointer i32.const 22540 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -3439,7 +3237,7 @@ global.get $~lib/memory/__stack_pointer i32.const 22540 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -3610,7 +3408,7 @@ global.get $~lib/memory/__stack_pointer i32.const 22540 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -3776,7 +3574,7 @@ global.get $~lib/memory/__stack_pointer i32.const 22540 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -3804,10 +3602,9 @@ call $~lib/string/String.UTF8.decodeUnsafe local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 local.get $0 i32.store - local.get $1 + global.get $~lib/memory/__stack_pointer i32.const 1056 i32.store offset=8 local.get $0 @@ -3833,7 +3630,7 @@ global.get $~lib/memory/__stack_pointer i32.const 22540 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -3867,10 +3664,9 @@ call $~lib/string/String.UTF8.decodeUnsafe local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $1 local.get $0 i32.store - local.get $1 + global.get $~lib/memory/__stack_pointer i32.const 1056 i32.store offset=8 local.get $0 @@ -4054,7 +3850,7 @@ call $~lib/builtins/abort unreachable ) - (func $std/string-encoding/testUTF8DecodeUnsafe + (func $std/string-encoding/testUTF16DecodeUnsafe (local $0 i32) (local $1 i32) (local $2 i32) @@ -4083,25 +3879,20 @@ local.get $0 i32.const 1056 i32.store - i32.const 2 - global.set $~argumentsLength local.get $0 i32.const 1056 - i32.const 1 - call $~lib/string/String.UTF8.encode@varargs + call $~lib/string/String.UTF16.encode local.tee $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 1056 i32.store - i32.const 1056 - i32.const 0 - call $~lib/string/String.UTF8.byteLength + i32.const 1052 + i32.load local.set $1 local.get $0 i32.const 0 - i32.const 0 - call $~lib/string/String.UTF8.decodeUnsafe + call $~lib/string/String.UTF16.decodeUnsafe local.set $2 global.get $~lib/memory/__stack_pointer local.get $2 @@ -4116,15 +3907,14 @@ if i32.const 0 i32.const 1088 - i32.const 135 + i32.const 42 i32.const 3 call $~lib/builtins/abort unreachable end local.get $0 local.get $1 - i32.const 0 - call $~lib/string/String.UTF8.decodeUnsafe + call $~lib/string/String.UTF16.decodeUnsafe local.set $1 global.get $~lib/memory/__stack_pointer local.tee $2 @@ -4140,15 +3930,14 @@ if i32.const 0 i32.const 1088 - i32.const 136 + i32.const 43 i32.const 3 call $~lib/builtins/abort unreachable end local.get $0 i32.const 4 - i32.const 0 - call $~lib/string/String.UTF8.decodeUnsafe + call $~lib/string/String.UTF16.decodeUnsafe local.set $1 global.get $~lib/memory/__stack_pointer local.tee $2 @@ -4164,7 +3953,7 @@ if i32.const 0 i32.const 1088 - i32.const 137 + i32.const 44 i32.const 3 call $~lib/builtins/abort unreachable @@ -4173,85 +3962,305 @@ i32.const 4 i32.add i32.const 2 - i32.const 0 - call $~lib/string/String.UTF8.decodeUnsafe + call $~lib/string/String.UTF16.decodeUnsafe local.set $1 global.get $~lib/memory/__stack_pointer local.tee $2 local.get $1 i32.store local.get $2 - i32.const 1648 + i32.const 1616 i32.store offset=8 local.get $1 - i32.const 1648 + i32.const 1616 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 1088 - i32.const 138 + i32.const 45 i32.const 3 call $~lib/builtins/abort unreachable end local.get $0 - i32.const 6 + i32.const 4 i32.add i32.const 4 - i32.const 0 - call $~lib/string/String.UTF8.decodeUnsafe + call $~lib/string/String.UTF16.decodeUnsafe local.set $1 global.get $~lib/memory/__stack_pointer local.tee $2 local.get $1 i32.store local.get $2 - i32.const 1680 + i32.const 1648 i32.store offset=8 local.get $1 - i32.const 1680 + i32.const 1648 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 1088 - i32.const 139 + i32.const 46 i32.const 3 call $~lib/builtins/abort unreachable end local.get $0 - i32.const 10 + i32.const 8 i32.add - i32.const 0 - i32.const 0 - call $~lib/string/String.UTF8.decodeUnsafe + i32.const 4 + call $~lib/string/String.UTF16.decodeUnsafe local.set $1 global.get $~lib/memory/__stack_pointer local.tee $2 local.get $1 i32.store local.get $2 - i32.const 1552 + i32.const 1680 i32.store offset=8 local.get $1 - i32.const 1552 + i32.const 1680 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 1088 - i32.const 140 + i32.const 47 i32.const 3 call $~lib/builtins/abort unreachable end local.get $0 - i32.const 4 + i32.const 12 i32.add - i32.const 100 - i32.const 1 + i32.const 0 + call $~lib/string/String.UTF16.decodeUnsafe + local.set $0 + global.get $~lib/memory/__stack_pointer + local.tee $1 + local.get $0 + i32.store + local.get $1 + i32.const 1552 + i32.store offset=8 + local.get $0 + i32.const 1552 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 1088 + i32.const 48 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.add + global.set $~lib/memory/__stack_pointer + ) + (func $std/string-encoding/testUTF8DecodeUnsafe + (local $0 i32) + (local $1 i32) + (local $2 i32) + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 22540 + i32.lt_s + if + i32.const 38944 + i32.const 38992 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 1056 + i32.store + i32.const 2 + global.set $~argumentsLength + local.get $0 + i32.const 1056 + i32.const 1 + call $~lib/string/String.UTF8.encode@varargs + local.tee $0 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + i32.const 1056 + i32.store + i32.const 1056 + i32.const 0 + call $~lib/string/String.UTF8.byteLength + local.set $1 + local.get $0 + i32.const 0 + i32.const 0 + call $~lib/string/String.UTF8.decodeUnsafe + local.set $2 + global.get $~lib/memory/__stack_pointer + local.get $2 + i32.store + global.get $~lib/memory/__stack_pointer + i32.const 1552 + i32.store offset=8 + local.get $2 + i32.const 1552 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 1088 + i32.const 135 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + i32.const 0 + call $~lib/string/String.UTF8.decodeUnsafe + local.set $1 + global.get $~lib/memory/__stack_pointer + local.tee $2 + local.get $1 + i32.store + local.get $2 + i32.const 1056 + i32.store offset=8 + local.get $1 + i32.const 1056 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 1088 + i32.const 136 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 4 + i32.const 0 + call $~lib/string/String.UTF8.decodeUnsafe + local.set $1 + global.get $~lib/memory/__stack_pointer + local.tee $2 + local.get $1 + i32.store + local.get $2 + i32.const 1584 + i32.store offset=8 + local.get $1 + i32.const 1584 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 1088 + i32.const 137 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 4 + i32.add + i32.const 2 + i32.const 0 + call $~lib/string/String.UTF8.decodeUnsafe + local.set $1 + global.get $~lib/memory/__stack_pointer + local.tee $2 + local.get $1 + i32.store + local.get $2 + i32.const 1648 + i32.store offset=8 + local.get $1 + i32.const 1648 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 1088 + i32.const 138 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 6 + i32.add + i32.const 4 + i32.const 0 + call $~lib/string/String.UTF8.decodeUnsafe + local.set $1 + global.get $~lib/memory/__stack_pointer + local.tee $2 + local.get $1 + i32.store + local.get $2 + i32.const 1680 + i32.store offset=8 + local.get $1 + i32.const 1680 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 1088 + i32.const 139 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 10 + i32.add + i32.const 0 + i32.const 0 + call $~lib/string/String.UTF8.decodeUnsafe + local.set $1 + global.get $~lib/memory/__stack_pointer + local.tee $2 + local.get $1 + i32.store + local.get $2 + i32.const 1552 + i32.store offset=8 + local.get $1 + i32.const 1552 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 1088 + i32.const 140 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 4 + i32.add + i32.const 100 + i32.const 1 call $~lib/string/String.UTF8.decodeUnsafe local.set $1 global.get $~lib/memory/__stack_pointer @@ -4535,13 +4544,11 @@ call $~lib/string/String.UTF8.byteLength i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $5 i32.store + local.get $5 + local.set $4 local.get $0 - local.set $3 - local.get $4 - local.set $0 - local.get $3 i32.const 20 i32.sub i32.load offset=16 @@ -4549,38 +4556,38 @@ i32.shr_u i32.const 1 i32.shl - local.get $3 + local.get $0 i32.add local.set $6 loop $while-continue|0 - local.get $3 + local.get $0 local.get $6 i32.lt_u if - local.get $3 + local.get $0 i32.load16_u - local.tee $5 + local.tee $3 i32.const 128 i32.lt_u if (result i32) - local.get $0 - local.get $5 + local.get $4 + local.get $3 i32.store8 - local.get $0 + local.get $4 i32.const 1 i32.add else - local.get $5 + local.get $3 i32.const 2048 i32.lt_u if (result i32) - local.get $0 - local.get $5 + local.get $4 + local.get $3 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $5 + local.get $3 i32.const 63 i32.and i32.const 128 @@ -4589,27 +4596,27 @@ i32.shl i32.or i32.store16 - local.get $0 + local.get $4 i32.const 2 i32.add else - local.get $5 + local.get $3 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $5 + local.get $3 i32.const 56320 i32.lt_u local.get $6 - local.get $3 + local.get $0 i32.const 2 i32.add i32.gt_u i32.and if - local.get $3 + local.get $0 i32.load16_u offset=2 local.tee $7 i32.const 64512 @@ -4617,8 +4624,8 @@ i32.const 56320 i32.eq if - local.get $0 - local.get $5 + local.get $4 + local.get $3 i32.const 1023 i32.and i32.const 10 @@ -4629,14 +4636,14 @@ i32.const 1023 i32.and i32.or - local.tee $5 + local.tee $3 i32.const 63 i32.and i32.const 128 i32.or i32.const 24 i32.shl - local.get $5 + local.get $3 i32.const 6 i32.shr_u i32.const 63 @@ -4646,7 +4653,7 @@ i32.const 16 i32.shl i32.or - local.get $5 + local.get $3 i32.const 12 i32.shr_u i32.const 63 @@ -4656,21 +4663,21 @@ i32.const 8 i32.shl i32.or - local.get $5 + local.get $3 i32.const 18 i32.shr_u i32.const 240 i32.or i32.or i32.store - local.get $0 + local.get $4 i32.const 4 i32.add - local.set $0 - local.get $3 + local.set $4 + local.get $0 i32.const 4 i32.add - local.set $3 + local.set $0 br $while-continue|0 end end @@ -4689,17 +4696,17 @@ end i32.const 65533 else - local.get $5 + local.get $3 end - local.set $5 + local.set $3 end - local.get $0 - local.get $5 + local.get $4 + local.get $3 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $5 + local.get $3 i32.const 6 i32.shr_u i32.const 63 @@ -4710,29 +4717,29 @@ i32.shl i32.or i32.store16 - local.get $0 - local.get $5 + local.get $4 + local.get $3 i32.const 63 i32.and i32.const 128 i32.or i32.store8 offset=2 - local.get $0 + local.get $4 i32.const 3 i32.add end end - local.set $0 - local.get $3 + local.set $4 + local.get $0 i32.const 2 i32.add - local.set $3 + local.set $0 br $while-continue|0 end end local.get $1 if - local.get $0 + local.get $4 i32.const 0 i32.store8 end @@ -4740,7 +4747,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $5 ) (func $~lib/string/String.UTF8.decodeUnsafe (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -4766,13 +4773,12 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $1 local.get $0 local.tee $3 - i32.add - local.set $5 + local.get $1 local.get $3 - local.get $5 + i32.add + local.tee $5 i32.gt_u if i32.const 0 @@ -4948,15 +4954,16 @@ end end end - block $__inlined_func$~lib/rt/itcms/__renew + block $__inlined_func$~lib/rt/itcms/__renew (result i32) local.get $1 local.get $0 + local.tee $1 i32.sub local.tee $2 local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $0 i32.load i32.const -4 i32.and @@ -4964,19 +4971,20 @@ i32.sub i32.le_u if - local.get $3 + local.get $0 local.get $2 i32.store offset=16 + local.get $1 br $__inlined_func$~lib/rt/itcms/__renew end local.get $2 - local.get $3 + local.get $0 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $1 - local.get $0 + local.tee $3 + local.get $1 local.get $2 - local.get $3 + local.get $0 i32.load offset=16 local.tee $0 local.get $0 @@ -4984,14 +4992,12 @@ i32.gt_u select call $~lib/memory/memory.copy - local.get $1 - local.set $0 + local.get $3 end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) (local $1 i32) @@ -5001,19 +5007,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -5023,15 +5029,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -5054,7 +5061,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -5064,23 +5071,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -5088,7 +5095,7 @@ else i32.const 22512 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1344 @@ -5098,7 +5105,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 22516 @@ -5113,16 +5120,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -5130,11 +5137,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/std/string.optimized.wat b/tests/compiler/std/string.optimized.wat index c574cefe79..25087ca1d2 100644 --- a/tests/compiler/std/string.optimized.wat +++ b/tests/compiler/std/string.optimized.wat @@ -1152,17 +1152,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 42268 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -1176,9 +1177,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1188,15 +1189,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -2494,7 +2495,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -2520,32 +2521,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -2561,16 +2562,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -2578,7 +2579,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -2586,8 +2587,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -2604,7 +2605,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -2614,13 +2615,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -2633,40 +2634,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -2696,8 +2697,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -3892,28 +3893,29 @@ return end local.get $0 + local.tee $2 i32.load16_u - local.set $2 + local.set $0 loop $while-continue|0 block $__inlined_func$~lib/util/string/isSpace (result i32) - local.get $2 + local.get $0 i32.const 128 i32.or i32.const 160 i32.eq - local.get $2 + local.get $0 i32.const 9 i32.sub i32.const 4 i32.le_u i32.or - local.get $2 + local.get $0 i32.const 5760 i32.lt_u br_if $__inlined_func$~lib/util/string/isSpace drop i32.const 1 - local.get $2 + local.get $0 i32.const -8192 i32.add i32.const 10 @@ -3922,31 +3924,31 @@ drop block $break|0 block $case6|0 - local.get $2 + local.get $0 i32.const 5760 i32.eq br_if $case6|0 - local.get $2 + local.get $0 i32.const 8232 i32.eq br_if $case6|0 - local.get $2 + local.get $0 i32.const 8233 i32.eq br_if $case6|0 - local.get $2 + local.get $0 i32.const 8239 i32.eq br_if $case6|0 - local.get $2 + local.get $0 i32.const 8287 i32.eq br_if $case6|0 - local.get $2 + local.get $0 i32.const 12288 i32.eq br_if $case6|0 - local.get $2 + local.get $0 i32.const 65279 i32.eq br_if $case6|0 @@ -3958,12 +3960,12 @@ i32.const 0 end if - local.get $0 + local.get $2 i32.const 2 i32.add - local.tee $0 + local.tee $2 i32.load16_u - local.set $2 + local.set $0 local.get $3 i32.const 1 i32.sub @@ -3972,11 +3974,11 @@ end end f64.const 1 - local.set $5 - local.get $2 + local.set $4 + local.get $0 i32.const 43 i32.eq - local.get $2 + local.get $0 i32.const 45 i32.eq i32.or @@ -3992,17 +3994,17 @@ end f64.const -1 f64.const 1 - local.get $2 + local.get $0 i32.const 45 i32.eq select - local.set $5 - local.get $0 + local.set $4 + local.get $2 i32.const 2 i32.add - local.tee $0 + local.tee $2 i32.load16_u - local.set $2 + local.set $0 end local.get $1 if @@ -4021,7 +4023,7 @@ i32.const 16 i32.eq if - local.get $2 + local.get $0 i32.const 48 i32.eq local.get $3 @@ -4029,7 +4031,7 @@ i32.gt_s i32.and if (result i32) - local.get $0 + local.get $2 i32.load16_u offset=2 i32.const 32 i32.or @@ -4043,14 +4045,14 @@ i32.const 2 i32.sub local.set $3 - local.get $0 + local.get $2 i32.const 4 i32.add - local.set $0 + local.set $2 end end else - local.get $2 + local.get $0 i32.const 48 i32.eq local.get $3 @@ -4061,28 +4063,28 @@ block $break|1 block $case2|1 block $case1|1 - local.get $0 + local.get $2 i32.load16_u offset=2 i32.const 32 i32.or - local.tee $2 + local.tee $0 i32.const 98 i32.ne if - local.get $2 + local.get $0 i32.const 111 i32.eq br_if $case1|1 - local.get $2 + local.get $0 i32.const 120 i32.eq br_if $case2|1 br $break|1 end - local.get $0 + local.get $2 i32.const 4 i32.add - local.set $0 + local.set $2 local.get $3 i32.const 2 i32.sub @@ -4091,10 +4093,10 @@ local.set $1 br $break|1 end - local.get $0 + local.get $2 i32.const 4 i32.add - local.set $0 + local.set $2 local.get $3 i32.const 2 i32.sub @@ -4103,10 +4105,10 @@ local.set $1 br $break|1 end - local.get $0 + local.get $2 i32.const 4 i32.add - local.set $0 + local.set $2 local.get $3 i32.const 2 i32.sub @@ -4124,40 +4126,40 @@ loop $while-continue|2 block $while-break|2 local.get $3 - local.tee $2 + local.tee $0 i32.const 1 i32.sub local.set $3 - local.get $2 + local.get $0 if local.get $1 - local.get $0 + local.get $2 i32.load16_u - local.tee $2 + local.tee $0 i32.const 48 i32.sub i32.const 10 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 48 i32.sub else - local.get $2 + local.get $0 i32.const 65 i32.sub i32.const 25 i32.le_u if (result i32) - local.get $2 + local.get $0 i32.const 55 i32.sub else - local.get $2 + local.get $0 i32.const 87 i32.sub - local.get $2 - local.get $2 + local.get $0 + local.get $0 i32.const 97 i32.sub i32.const 25 @@ -4165,10 +4167,10 @@ select end end - local.tee $2 + local.tee $0 i32.le_u if - local.get $4 + local.get $5 i64.reinterpret_f64 i64.const 1 i64.shl @@ -4182,24 +4184,24 @@ end br $while-break|2 end - local.get $4 + local.get $5 local.get $1 f64.convert_i32_s f64.mul - local.get $2 + local.get $0 f64.convert_i32_u f64.add - local.set $4 - local.get $0 + local.set $5 + local.get $2 i32.const 2 i32.add - local.set $0 + local.set $2 br $while-continue|2 end end end - local.get $5 local.get $4 + local.get $5 f64.mul ) (func $~lib/util/string/strtol (result i32) @@ -4227,23 +4229,24 @@ loop $while-continue|0 block $__inlined_func$~lib/util/string/isSpace (result i32) local.get $0 + local.tee $2 i32.const 128 i32.or i32.const 160 i32.eq - local.get $0 + local.get $2 i32.const 9 i32.sub i32.const 4 i32.le_u i32.or - local.get $0 + local.get $2 i32.const 5760 i32.lt_u br_if $__inlined_func$~lib/util/string/isSpace drop i32.const 1 - local.get $0 + local.get $2 i32.const -8192 i32.add i32.const 10 @@ -4252,31 +4255,31 @@ drop block $break|0 block $case6|0 - local.get $0 + local.get $2 i32.const 5760 i32.eq br_if $case6|0 - local.get $0 + local.get $2 i32.const 8232 i32.eq br_if $case6|0 - local.get $0 + local.get $2 i32.const 8233 i32.eq br_if $case6|0 - local.get $0 + local.get $2 i32.const 8239 i32.eq br_if $case6|0 - local.get $0 + local.get $2 i32.const 8287 i32.eq br_if $case6|0 - local.get $0 + local.get $2 i32.const 12288 i32.eq br_if $case6|0 - local.get $0 + local.get $2 i32.const 65279 i32.eq br_if $case6|0 @@ -4302,7 +4305,7 @@ end end i32.const 1 - local.set $5 + local.set $2 local.get $0 i32.const 43 i32.eq @@ -4326,7 +4329,7 @@ i32.const 45 i32.eq select - local.set $5 + local.set $2 local.get $3 i32.const 2 i32.add @@ -4372,7 +4375,7 @@ i32.sub local.set $1 i32.const 2 - local.set $2 + local.set $4 br $break|1 end local.get $3 @@ -4384,7 +4387,7 @@ i32.sub local.set $1 i32.const 8 - local.set $2 + local.set $4 br $break|1 end local.get $3 @@ -4396,14 +4399,14 @@ i32.sub local.set $1 i32.const 16 - local.set $2 + local.set $4 end end - local.get $2 + local.get $4 i32.const 10 - local.get $2 + local.get $4 select - local.set $2 + local.set $4 loop $while-continue|2 block $while-break|2 local.get $1 @@ -4448,10 +4451,10 @@ end end local.tee $0 - local.get $2 + local.get $4 i32.ge_u if - local.get $4 + local.get $5 i32.eqz if i32.const 0 @@ -4460,11 +4463,11 @@ br $while-break|2 end local.get $0 - local.get $2 local.get $4 + local.get $5 i32.mul i32.add - local.set $4 + local.set $5 local.get $3 i32.const 2 i32.add @@ -4473,7 +4476,7 @@ end end end - local.get $4 + local.get $2 local.get $5 i32.mul ) @@ -4488,37 +4491,37 @@ i32.load i32.const 1 i32.shr_u - local.tee $1 + local.tee $0 i32.eqz if i64.const 0 return end i32.const 4288 - local.set $3 + local.set $2 i32.const 4288 i32.load16_u - local.set $0 + local.set $1 loop $while-continue|0 block $__inlined_func$~lib/util/string/isSpace (result i32) - local.get $0 + local.get $1 i32.const 128 i32.or i32.const 160 i32.eq - local.get $0 + local.get $1 i32.const 9 i32.sub i32.const 4 i32.le_u i32.or - local.get $0 + local.get $1 i32.const 5760 i32.lt_u br_if $__inlined_func$~lib/util/string/isSpace drop i32.const 1 - local.get $0 + local.get $1 i32.const -8192 i32.add i32.const 10 @@ -4527,31 +4530,31 @@ drop block $break|0 block $case6|0 - local.get $0 + local.get $1 i32.const 5760 i32.eq br_if $case6|0 - local.get $0 + local.get $1 i32.const 8232 i32.eq br_if $case6|0 - local.get $0 + local.get $1 i32.const 8233 i32.eq br_if $case6|0 - local.get $0 + local.get $1 i32.const 8239 i32.eq br_if $case6|0 - local.get $0 + local.get $1 i32.const 8287 i32.eq br_if $case6|0 - local.get $0 + local.get $1 i32.const 12288 i32.eq br_if $case6|0 - local.get $0 + local.get $1 i32.const 65279 i32.eq br_if $case6|0 @@ -4563,33 +4566,33 @@ i32.const 0 end if - local.get $3 + local.get $2 i32.const 2 i32.add - local.tee $3 + local.tee $2 i32.load16_u - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|0 end end i64.const 1 local.set $5 - local.get $0 + local.get $1 i32.const 43 i32.eq - local.get $0 + local.get $1 i32.const 45 i32.eq i32.or if (result i32) - local.get $1 + local.get $0 i32.const 1 i32.sub - local.tee $1 + local.tee $0 i32.eqz if i64.const 0 @@ -4597,22 +4600,22 @@ end i64.const -1 i64.const 1 - local.get $0 + local.get $1 i32.const 45 i32.eq select local.set $5 - local.get $3 + local.get $2 i32.const 2 i32.add - local.tee $3 + local.tee $2 i32.load16_u else - local.get $0 + local.get $1 end i32.const 48 i32.eq - local.get $1 + local.get $0 i32.const 2 i32.gt_s i32.and @@ -4620,101 +4623,101 @@ block $break|1 block $case2|1 block $case1|1 - local.get $3 + local.get $2 i32.load16_u offset=2 i32.const 32 i32.or - local.tee $0 + local.tee $1 i32.const 98 i32.ne if - local.get $0 + local.get $1 i32.const 111 i32.eq br_if $case1|1 - local.get $0 + local.get $1 i32.const 120 i32.eq br_if $case2|1 br $break|1 end - local.get $3 + local.get $2 i32.const 4 i32.add - local.set $3 - local.get $1 + local.set $2 + local.get $0 i32.const 2 i32.sub - local.set $1 + local.set $0 i32.const 2 - local.set $2 + local.set $3 br $break|1 end - local.get $3 + local.get $2 i32.const 4 i32.add - local.set $3 - local.get $1 + local.set $2 + local.get $0 i32.const 2 i32.sub - local.set $1 + local.set $0 i32.const 8 - local.set $2 + local.set $3 br $break|1 end - local.get $3 + local.get $2 i32.const 4 i32.add - local.set $3 - local.get $1 + local.set $2 + local.get $0 i32.const 2 i32.sub - local.set $1 + local.set $0 i32.const 16 - local.set $2 + local.set $3 end end - local.get $2 + local.get $3 i32.const 10 - local.get $2 + local.get $3 select - local.set $2 + local.set $3 loop $while-continue|2 block $while-break|2 - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 1 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 if - local.get $3 + local.get $2 i32.load16_u - local.tee $0 + local.tee $1 i32.const 48 i32.sub i32.const 10 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 48 i32.sub else - local.get $0 + local.get $1 i32.const 65 i32.sub i32.const 25 i32.le_u if (result i32) - local.get $0 + local.get $1 i32.const 55 i32.sub else - local.get $0 + local.get $1 i32.const 87 i32.sub - local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.const 97 i32.sub i32.const 25 @@ -4722,8 +4725,8 @@ select end end - local.tee $0 - local.get $2 + local.tee $1 + local.get $3 i32.ge_u if local.get $4 @@ -4734,18 +4737,18 @@ end br $while-break|2 end - local.get $0 + local.get $1 i64.extend_i32_u - local.get $2 + local.get $3 i64.extend_i32_s local.get $4 i64.mul i64.add local.set $4 - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 br $while-continue|2 end end @@ -4994,9 +4997,9 @@ (local $6 i64) (local $7 i32) (local $8 i64) - (local $9 f64) + (local $9 i32) (local $10 f64) - (local $11 i32) + (local $11 f64) (local $12 i64) (local $13 i64) (local $14 i64) @@ -5014,7 +5017,7 @@ i32.load16_u local.set $5 f64.const 1 - local.set $10 + local.set $11 loop $while-continue|0 local.get $7 if (result i32) @@ -5111,7 +5114,7 @@ i32.eqz br_if $folding-inner0 f64.const -1 - local.set $10 + local.set $11 local.get $0 i32.const 2 i32.add @@ -5158,7 +5161,7 @@ i32.const 0 end if - local.get $10 + local.get $11 f64.const inf f64.mul return @@ -5223,7 +5226,7 @@ select br_if $folding-inner0 i32.const 1 - local.set $11 + local.set $9 loop $for-loop|2 local.get $0 i32.load16_u @@ -5271,7 +5274,7 @@ i32.sub local.set $4 loop $for-loop|3 - local.get $11 + local.get $9 i32.eqz local.get $5 i32.const 46 @@ -5314,7 +5317,7 @@ local.get $1 local.set $2 i32.const 1 - local.set $11 + local.set $9 end local.get $7 i32.const 1 @@ -5336,12 +5339,9 @@ end end block $~lib/util/string/scientific|inlined.0 (result f64) - f64.const 0 - local.get $6 - i64.eqz local.get $2 local.get $1 - local.get $11 + local.get $9 select i32.const 19 local.get $1 @@ -5350,6 +5350,10 @@ i32.gt_s select i32.sub + local.set $5 + f64.const 0 + local.get $6 + i64.eqz block $~lib/util/string/parseExp|inlined.0 (result i32) i32.const 1 local.set $1 @@ -5484,6 +5488,7 @@ local.get $3 i32.mul end + local.get $5 i32.add local.tee $0 i32.const -342 @@ -5499,7 +5504,7 @@ drop local.get $6 f64.convert_i64_u - local.tee $9 + local.tee $10 local.get $0 i32.eqz br_if $~lib/util/string/scientific|inlined.0 @@ -5512,7 +5517,7 @@ i32.gt_s i32.and if - local.get $9 + local.get $10 local.get $0 i32.const 3 i32.shl @@ -5520,7 +5525,7 @@ i32.add f64.load f64.mul - local.set $9 + local.set $10 i32.const 22 local.set $0 end @@ -5528,13 +5533,13 @@ i64.const 9007199254740991 i64.le_u if (result i32) - local.get $0 local.get $0 i32.const 31 i32.shr_s local.tee $1 - i32.add + local.get $0 local.get $1 + i32.add i32.xor i32.const 22 i32.le_s @@ -5546,7 +5551,7 @@ i32.const 0 i32.gt_s if - local.get $9 + local.get $10 local.get $0 i32.const 3 i32.shl @@ -5556,7 +5561,7 @@ f64.mul br $~lib/util/string/scientific|inlined.0 end - local.get $9 + local.get $10 i32.const 0 local.get $0 i32.sub @@ -5781,7 +5786,7 @@ end end end - local.get $10 + local.get $11 f64.copysign return end @@ -5937,21 +5942,23 @@ (local $5 i32) (local $6 i32) (local $7 i32) + (local $8 i32) local.get $0 + local.tee $2 i32.load offset=12 - local.tee $3 + local.tee $5 i32.const 1 i32.add - local.tee $4 local.tee $6 - local.get $0 + local.tee $3 + local.get $2 i32.load offset=8 - local.tee $2 + local.tee $4 i32.const 2 i32.shr_u i32.gt_u if - local.get $6 + local.get $3 i32.const 268435455 i32.gt_u if @@ -5963,65 +5970,65 @@ unreachable end local.get $2 - local.get $0 i32.load - local.tee $5 - local.get $2 + local.tee $7 + local.get $4 i32.const 1 i32.shl - local.tee $7 + local.tee $8 i32.const 1073741820 - local.get $7 + local.get $8 i32.const 1073741820 i32.lt_u select - local.tee $7 - local.get $6 + local.tee $8 + local.get $3 i32.const 8 - local.get $6 + local.get $3 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $6 - local.get $6 - local.get $7 + local.tee $3 + local.get $3 + local.get $8 i32.lt_u select - local.tee $6 + local.tee $8 call $~lib/rt/itcms/__renew - local.tee $7 + local.tee $3 + local.get $4 i32.add - local.get $6 - local.get $2 + local.get $8 + local.get $4 i32.sub call $~lib/memory/memory.fill - local.get $5 + local.get $3 local.get $7 i32.ne if - local.get $0 - local.get $7 + local.get $2 + local.get $3 i32.store - local.get $0 - local.get $7 + local.get $2 + local.get $3 i32.store offset=4 - local.get $7 + local.get $3 if - local.get $0 - local.get $7 + local.get $2 + local.get $3 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end end - local.get $0 - local.get $6 + local.get $2 + local.get $8 i32.store offset=8 end local.get $0 i32.load offset=4 - local.get $3 + local.get $5 i32.const 2 i32.shl i32.add @@ -6029,13 +6036,13 @@ i32.store local.get $1 if - local.get $0 + local.get $2 local.get $1 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $4 + local.get $2 + local.get $6 i32.store offset=12 ) (func $~lib/util/number/utoa32_dec_lut (param $0 i32) (param $1 i32) (param $2 i32) @@ -6344,8 +6351,7 @@ i64.shr_u i32.wrap_i64 local.tee $2 - local.set $5 - local.get $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) @@ -6741,8 +6747,6 @@ ) (func $~lib/util/number/prettify (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) - (local $4 i32) - (local $5 i32) local.get $2 i32.eqz if @@ -6886,82 +6890,80 @@ i32.const 101 i32.store16 offset=2 local.get $0 + local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $1 + local.tee $0 i32.const 0 i32.lt_s - local.tee $3 + local.tee $2 if i32.const 0 - local.get $1 + local.get $0 i32.sub - local.set $1 + local.set $0 end - local.get $1 - local.tee $4 + local.get $0 + local.get $0 i32.const 100000 i32.lt_u if (result i32) - local.get $4 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $4 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $4 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $4 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $4 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $4 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $4 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $4 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $4 - local.get $1 - local.get $4 i32.const 1 i32.add - local.tee $1 + local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $1 i32.const 45 i32.const 43 - local.get $3 + local.get $2 select i32.store16 offset=4 - local.get $1 + local.get $0 i32.const 2 i32.add else @@ -6984,87 +6986,84 @@ local.get $0 local.get $2 i32.add - local.tee $0 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $0 + local.get $2 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $2 + local.tee $0 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $2 + local.get $0 i32.sub - local.set $2 + local.set $0 end - local.get $2 - local.tee $5 + local.get $0 + local.get $0 i32.const 100000 i32.lt_u if (result i32) - local.get $5 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $5 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $5 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $5 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $5 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $5 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $5 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $5 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $5 - local.get $2 - local.get $5 i32.const 1 i32.add - local.tee $2 + local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $2 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 + local.get $0 local.get $1 - local.get $2 i32.add i32.const 2 i32.add @@ -7468,23 +7467,76 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $6 i64.const 0 i64.store - local.get $5 + local.get $6 i64.const 0 i64.store offset=8 - local.get $5 + local.get $6 i64.const 0 i64.store offset=16 - block $folding-inner3 - block $folding-inner2 - block $folding-inner1 - block $folding-inner0 - local.get $2 - i32.eqz - br_if $folding-inner0 + block $folding-inner2 + block $folding-inner1 + block $folding-inner0 + local.get $2 + i32.eqz + br_if $folding-inner0 + local.get $1 + i32.eqz + if + global.get $~lib/memory/__stack_pointer + i32.const 1 + i32.const 4 + i32.const 0 + call $~lib/rt/__newArray + local.tee $1 + i32.store + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.load offset=4 + i32.store offset=4 local.get $1 + i32.load offset=4 + local.get $0 + i32.store + local.get $0 + if + local.get $1 + local.get $0 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end + global.get $~lib/memory/__stack_pointer + i32.const 24 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $1 + return + end + local.get $0 + i32.const 20 + i32.sub + i32.load offset=16 + i32.const 1 + i32.shr_u + local.set $6 + i32.const 2147483647 + local.get $2 + local.get $2 + i32.const 0 + i32.lt_s + select + local.set $7 + local.get $1 + i32.const 20 + i32.sub + i32.load offset=16 + i32.const 1 + i32.shr_u + local.tee $2 + if + local.get $6 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -7492,265 +7544,214 @@ i32.const 4 i32.const 0 call $~lib/rt/__newArray - local.tee $1 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.load offset=4 + local.tee $0 i32.store offset=4 - local.get $1 - i32.load offset=4 local.get $0 + i32.load offset=4 + i32.const 1712 i32.store - local.get $0 - if - local.get $1 - local.get $0 - i32.const 1 - call $byn-split-outlined-A$~lib/rt/itcms/__link - end - global.get $~lib/memory/__stack_pointer - i32.const 24 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $1 - return + br $folding-inner1 end - local.get $0 - i32.const 20 - i32.sub - i32.load offset=16 - i32.const 1 - i32.shr_u - local.set $8 - i32.const 2147483647 - local.get $2 - local.get $2 - i32.const 0 + else + local.get $6 + i32.eqz + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.get $6 + local.get $7 + local.get $6 + local.get $7 i32.lt_s select + local.tee $2 + i32.const 4 + i32.const 0 + call $~lib/rt/__newArray + local.tee $4 + i32.store + local.get $4 + i32.load offset=4 local.set $5 - local.get $1 - i32.const 20 - i32.sub - i32.load offset=16 - i32.const 1 - i32.shr_u - local.tee $6 - if - local.get $8 - i32.eqz + loop $for-loop|0 + local.get $2 + local.get $3 + i32.gt_s if global.get $~lib/memory/__stack_pointer + i32.const 2 i32.const 1 - i32.const 4 - i32.const 0 - call $~lib/rt/__newArray - local.tee $0 - i32.store offset=4 + call $~lib/rt/itcms/__new + local.tee $1 + i32.store offset=8 + local.get $1 + local.get $3 + i32.const 1 + i32.shl local.get $0 - i32.load offset=4 - i32.const 1712 + i32.add + i32.load16_u + i32.store16 + local.get $3 + i32.const 2 + i32.shl + local.get $5 + i32.add + local.get $1 i32.store - br $folding-inner1 - end - else - local.get $8 - i32.eqz - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.get $8 - local.get $5 - local.get $5 - local.get $8 - i32.gt_s - select - local.tee $1 - i32.const 4 - i32.const 0 - call $~lib/rt/__newArray - local.tee $2 - i32.store - local.get $2 - i32.load offset=4 - local.set $3 - loop $for-loop|0 local.get $1 - local.get $4 - i32.gt_s if - global.get $~lib/memory/__stack_pointer - i32.const 2 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $5 - i32.store offset=8 - local.get $5 - local.get $4 - i32.const 1 - i32.shl - local.get $0 - i32.add - i32.load16_u - i32.store16 - local.get $4 - i32.const 2 - i32.shl - local.get $3 - i32.add - local.get $5 - i32.store - local.get $5 - if - local.get $2 - local.get $5 - i32.const 1 - call $byn-split-outlined-A$~lib/rt/itcms/__link - end local.get $4 + local.get $1 i32.const 1 - i32.add - local.set $4 - br $for-loop|0 + call $byn-split-outlined-A$~lib/rt/itcms/__link end - end - br $folding-inner3 - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.const 4 - i32.const 0 - call $~lib/rt/__newArray - local.tee $2 - i32.store offset=12 - loop $while-continue|1 - local.get $0 - local.get $1 - local.get $3 - call $~lib/string/String#indexOf - local.tee $9 - i32.const -1 - i32.xor - if - local.get $9 local.get $3 - i32.sub - local.tee $4 - i32.const 0 - i32.gt_s - if - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.const 1 - i32.shl - local.tee $4 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $10 - i32.store offset=16 - local.get $10 - local.get $3 - i32.const 1 - i32.shl - local.get $0 - i32.add - local.get $4 - call $~lib/memory/memory.copy - local.get $2 - local.get $10 - call $~lib/array/Array<~lib/string/String>#push - else - global.get $~lib/memory/__stack_pointer - i32.const 1712 - i32.store offset=20 - local.get $2 - i32.const 1712 - call $~lib/array/Array<~lib/string/String>#push - end - local.get $7 i32.const 1 i32.add - local.tee $7 - local.get $5 - i32.eq - br_if $folding-inner2 - local.get $6 - local.get $9 - i32.add local.set $3 - br $while-continue|1 + br $for-loop|0 end end - local.get $3 - i32.eqz - if - local.get $2 - local.get $0 - call $~lib/array/Array<~lib/string/String>#push - br $folding-inner2 - end - local.get $8 - local.get $3 - i32.sub - local.tee $1 - i32.const 0 - i32.gt_s + global.get $~lib/memory/__stack_pointer + i32.const 24 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $4 + return + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.const 4 + i32.const 0 + call $~lib/rt/__newArray + local.tee $8 + i32.store offset=12 + loop $while-continue|1 + local.get $0 + local.get $1 + local.get $4 + call $~lib/string/String#indexOf + local.tee $9 + i32.const -1 + i32.xor if - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.const 1 - i32.shl - local.tee $1 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $4 - i32.store offset=4 + local.get $9 local.get $4 - local.get $3 + i32.sub + local.tee $3 + i32.const 0 + i32.gt_s + if + global.get $~lib/memory/__stack_pointer + local.get $3 + i32.const 1 + i32.shl + local.tee $3 + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $10 + i32.store offset=16 + local.get $10 + local.get $4 + i32.const 1 + i32.shl + local.get $0 + i32.add + local.get $3 + call $~lib/memory/memory.copy + local.get $8 + local.get $10 + call $~lib/array/Array<~lib/string/String>#push + else + global.get $~lib/memory/__stack_pointer + i32.const 1712 + i32.store offset=20 + local.get $8 + i32.const 1712 + call $~lib/array/Array<~lib/string/String>#push + end + local.get $7 + local.get $5 i32.const 1 - i32.shl - local.get $0 i32.add - local.get $1 - call $~lib/memory/memory.copy - local.get $2 - local.get $4 - call $~lib/array/Array<~lib/string/String>#push - else - global.get $~lib/memory/__stack_pointer - i32.const 1712 - i32.store offset=20 + local.tee $5 + i32.eq + br_if $folding-inner2 local.get $2 - i32.const 1712 - call $~lib/array/Array<~lib/string/String>#push + local.get $9 + i32.add + local.set $4 + br $while-continue|1 end - br $folding-inner3 end + local.get $4 + i32.eqz + if + local.get $8 + local.get $0 + call $~lib/array/Array<~lib/string/String>#push + br $folding-inner2 + end + local.get $6 + local.get $4 + i32.sub + local.tee $1 i32.const 0 - i32.const 4 - i32.const 0 - call $~lib/rt/__newArray - local.set $0 + i32.gt_s + if + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.const 1 + i32.shl + local.tee $1 + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $2 + i32.store offset=4 + local.get $2 + local.get $4 + i32.const 1 + i32.shl + local.get $0 + i32.add + local.get $1 + call $~lib/memory/memory.copy + local.get $8 + local.get $2 + call $~lib/array/Array<~lib/string/String>#push + else + global.get $~lib/memory/__stack_pointer + i32.const 1712 + i32.store offset=20 + local.get $8 + i32.const 1712 + call $~lib/array/Array<~lib/string/String>#push + end + global.get $~lib/memory/__stack_pointer + i32.const 24 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $8 + return end - global.get $~lib/memory/__stack_pointer - i32.const 24 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $0 - return + i32.const 0 + i32.const 4 + i32.const 0 + call $~lib/rt/__newArray + local.set $0 end global.get $~lib/memory/__stack_pointer i32.const 24 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 return end global.get $~lib/memory/__stack_pointer i32.const 24 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $8 ) (func $start:std/string (local $0 i32) @@ -7909,51 +7910,54 @@ end global.get $~lib/memory/__stack_pointer global.get $std/string/str - local.tee $3 + local.tee $0 i32.store - i32.const -1 - local.set $0 - block $__inlined_func$~lib/string/String#codePointAt - local.get $3 + block $__inlined_func$~lib/string/String#codePointAt (result i32) + i32.const -1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 i32.const 1 i32.le_u br_if $__inlined_func$~lib/string/String#codePointAt - local.get $4 + drop + local.get $3 i32.const 2 i32.eq - local.get $3 + local.get $0 i32.load16_u offset=2 - local.tee $0 + local.tee $3 i32.const 64512 i32.and i32.const 55296 i32.ne i32.or - br_if $__inlined_func$~lib/string/String#codePointAt + if + local.get $3 + br $__inlined_func$~lib/string/String#codePointAt + end local.get $3 + local.get $0 i32.load16_u offset=4 - local.tee $3 + local.tee $0 i32.const 64512 i32.and i32.const 56320 i32.ne br_if $__inlined_func$~lib/string/String#codePointAt - local.get $3 + drop local.get $0 + local.get $3 i32.const 10 i32.shl i32.add i32.const 56613888 i32.sub - local.set $0 end - local.get $0 i32.const 105 i32.ne if @@ -8439,34 +8443,40 @@ local.get $0 i32.const 2176 i32.store offset=4 - i32.const 0 - local.get $3 - i32.const 20 - i32.sub - i32.load offset=16 - i32.const 1 - i32.shr_u - local.tee $0 - local.get $0 - select - local.tee $4 - i32.const 2172 - i32.load - i32.const 1 - i32.shr_u - local.tee $5 - i32.add - local.get $0 - i32.gt_s - if (result i32) + block $__inlined_func$~lib/string/String#startsWith (result i32) + i32.const 0 + local.get $3 + i32.const 20 + i32.sub + i32.load offset=16 i32.const 1 - else + i32.shr_u + local.tee $0 + local.get $0 + i32.const 0 + i32.gt_s + select + local.set $4 + i32.const 0 + local.get $0 + local.get $4 + i32.const 2172 + i32.load + i32.const 1 + i32.shr_u + local.tee $0 + i32.add + i32.lt_s + br_if $__inlined_func$~lib/string/String#startsWith + drop local.get $3 local.get $4 i32.const 2176 - local.get $5 + local.get $0 call $~lib/util/string/compareImpl + i32.eqz end + i32.eqz if i32.const 0 i32.const 1120 @@ -8493,7 +8503,7 @@ local.tee $0 local.get $0 i32.const 536870910 - i32.gt_u + i32.gt_s select i32.const 2204 i32.load @@ -13725,7 +13735,7 @@ global.get $~lib/memory/__stack_pointer i32.const 65377 call $~lib/string/String.fromCodePoint - local.tee $0 + local.tee $3 i32.store offset=36 global.get $~lib/memory/__stack_pointer i32.const 55296 @@ -13743,10 +13753,10 @@ local.get $4 local.get $5 call $~lib/string/String#concat - local.tee $3 + local.tee $0 i32.store offset=40 - local.get $0 local.get $3 + local.get $0 call $~lib/string/String.__gt i32.eqz if @@ -21645,7 +21655,6 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -21662,46 +21671,45 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $3 i32.const 0 i32.store + local.get $3 local.get $0 i32.const 2 i32.shl + local.tee $3 local.tee $4 - local.set $6 - local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.set $3 + local.set $5 local.get $2 if - local.get $3 + local.get $5 local.get $2 - local.get $6 + local.get $4 call $~lib/memory/memory.copy end local.get $5 - local.get $3 i32.store i32.const 16 local.get $1 call $~lib/rt/itcms/__new local.tee $1 - local.get $3 + local.get $5 i32.store - local.get $3 + local.get $5 if local.get $1 - local.get $3 + local.get $5 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $1 - local.get $3 + local.get $5 i32.store offset=4 local.get $1 - local.get $4 + local.get $3 i32.store offset=8 local.get $1 local.get $0 @@ -22042,23 +22050,23 @@ i32.sub local.get $3 i32.div_u - local.tee $0 + local.tee $6 i32.mul - local.set $6 + local.set $0 local.get $4 local.get $5 i32.add local.tee $4 local.get $2 local.get $3 - local.get $0 + local.get $6 call $~lib/memory/memory.repeat + local.get $0 local.get $4 - local.get $6 i32.add local.get $2 local.get $1 - local.get $6 + local.get $0 i32.sub call $~lib/memory/memory.copy else @@ -22947,43 +22955,43 @@ (local $9 i32) (local $10 i32) (local $11 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 25884 - i32.lt_s - if - i32.const 42288 - i32.const 42336 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store block $folding-inner0 - local.get $1 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 25884 + i32.lt_s + if + i32.const 42288 + i32.const 42336 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $7 - local.get $0 + local.tee $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $5 - i32.ge_u + local.tee $8 + i32.le_u if - local.get $5 - local.get $7 + local.get $3 + local.get $8 i32.ge_u if local.get $2 @@ -23002,46 +23010,46 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.set $3 - local.get $7 + local.set $4 + local.get $8 i32.eqz if - local.get $3 + local.get $4 i32.eqz br_if $folding-inner0 global.get $~lib/memory/__stack_pointer + local.get $4 local.get $3 - local.get $5 i32.const 1 i32.add i32.mul - local.get $5 + local.get $3 i32.add i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store - local.get $6 + local.get $5 local.get $2 - local.get $3 + local.get $4 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $3 + local.get $4 local.set $1 loop $for-loop|0 - local.get $4 - local.get $5 - i32.lt_u + local.get $3 + local.get $6 + i32.gt_u if local.get $1 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add - local.get $4 + local.get $6 i32.const 1 i32.shl local.get $0 @@ -23054,21 +23062,21 @@ local.tee $1 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add local.get $2 - local.get $3 + local.get $4 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $1 - local.get $3 + local.get $4 i32.add local.set $1 - local.get $4 + local.get $6 i32.const 1 i32.add - local.set $4 + local.set $6 br $for-loop|0 end end @@ -23076,49 +23084,49 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $5 return end - local.get $3 - local.get $7 + local.get $4 + local.get $8 i32.eq if global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $3 i32.const 1 i32.shl - local.tee $4 + local.tee $3 i32.const 1 call $~lib/rt/itcms/__new local.tee $5 i32.store local.get $5 local.get $0 - local.get $4 + local.get $3 call $~lib/memory/memory.copy loop $while-continue|1 local.get $0 local.get $1 - local.get $9 + local.get $10 call $~lib/string/String#indexOf - local.tee $4 + local.tee $3 i32.const -1 i32.xor if - local.get $4 + local.get $3 i32.const 1 i32.shl local.get $5 i32.add local.get $2 - local.get $3 + local.get $4 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $4 - local.get $7 + local.get $3 + local.get $8 i32.add - local.set $9 + local.set $10 br $while-continue|1 end end @@ -23129,20 +23137,20 @@ local.get $5 return end - local.get $5 - local.set $4 + local.get $3 + local.set $5 loop $while-continue|2 local.get $0 local.get $1 - local.get $9 + local.get $10 call $~lib/string/String#indexOf - local.tee $11 + local.tee $7 i32.const -1 i32.xor if - local.get $10 + local.get $11 if (result i32) - local.get $10 + local.get $11 i32.const 20 i32.sub i32.load offset=16 @@ -23154,19 +23162,19 @@ i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $3 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $11 i32.store offset=4 end + local.get $5 local.get $4 - local.get $3 - local.get $8 - local.get $11 local.get $9 + local.get $7 + local.get $10 i32.sub local.tee $6 i32.add @@ -23174,23 +23182,23 @@ i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $10 - local.get $4 + local.get $11 + local.get $5 i32.const 1 i32.shl - local.tee $4 + local.tee $5 i32.const 1 i32.shl call $~lib/rt/itcms/__renew - local.tee $10 + local.tee $11 i32.store offset=4 end - local.get $8 + local.get $9 i32.const 1 i32.shl - local.get $10 + local.get $11 i32.add - local.get $9 + local.get $10 i32.const 1 i32.shl local.get $0 @@ -23200,60 +23208,60 @@ i32.shl call $~lib/memory/memory.copy local.get $6 - local.get $8 + local.get $9 i32.add local.tee $6 i32.const 1 i32.shl - local.get $10 + local.get $11 i32.add local.get $2 - local.get $3 + local.get $4 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $3 + local.get $4 local.get $6 i32.add - local.set $8 + local.set $9 local.get $7 - local.get $11 + local.get $8 i32.add - local.set $9 + local.set $10 br $while-continue|2 end end - local.get $10 + local.get $11 if - local.get $4 - local.get $8 local.get $5 local.get $9 + local.get $3 + local.get $10 i32.sub local.tee $1 i32.add i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $10 - local.get $4 + local.get $11 + local.get $5 i32.const 1 i32.shl - local.tee $4 + local.tee $5 i32.const 1 i32.shl call $~lib/rt/itcms/__renew - local.tee $10 + local.tee $11 i32.store offset=4 end local.get $1 if - local.get $8 + local.get $9 i32.const 1 i32.shl - local.get $10 + local.get $11 i32.add - local.get $9 + local.get $10 i32.const 1 i32.shl local.get $0 @@ -23263,27 +23271,27 @@ i32.shl call $~lib/memory/memory.copy end - local.get $4 + local.get $5 local.get $1 - local.get $8 + local.get $9 i32.add local.tee $0 i32.gt_u if global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $11 local.get $0 i32.const 1 i32.shl call $~lib/rt/itcms/__renew - local.tee $10 + local.tee $11 i32.store offset=4 end global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $11 return end global.get $~lib/memory/__stack_pointer @@ -23673,6 +23681,7 @@ (local $5 i32) (local $6 i64) (local $7 i64) + (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -23732,46 +23741,47 @@ if global.get $~lib/memory/__stack_pointer local.get $2 + local.tee $0 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $0 i32.const 100000000 i32.ge_u i32.add @@ -23779,16 +23789,16 @@ end local.get $5 i32.add - local.tee $1 + local.tee $0 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $8 i32.store - local.get $0 + local.get $8 local.get $2 - local.get $1 + local.get $0 call $~lib/util/number/utoa32_dec_lut else local.get $1 @@ -23806,30 +23816,30 @@ i32.const 1 i32.add i32.add - local.tee $1 + local.tee $0 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $8 i32.store local.get $2 i64.extend_i32_u - local.set $3 + local.set $7 loop $while-continue|0 - local.get $1 + local.get $0 i32.const 2 i32.ge_u if - local.get $1 + local.get $0 i32.const 2 i32.sub - local.tee $1 + local.tee $0 i32.const 1 i32.shl - local.get $0 + local.get $8 i32.add - local.get $3 + local.get $7 i32.wrap_i64 i32.const 255 i32.and @@ -23839,19 +23849,19 @@ i32.add i32.load i32.store - local.get $3 + local.get $7 i64.const 8 i64.shr_u - local.set $3 + local.set $7 br $while-continue|0 end end - local.get $1 + local.get $0 i32.const 1 i32.and if - local.get $0 - local.get $3 + local.get $8 + local.get $7 i32.wrap_i64 i32.const 6 i32.shl @@ -23865,20 +23875,21 @@ block $__inlined_func$~lib/util/number/ulog_base (result i32) local.get $2 i64.extend_i32_u - local.tee $6 - local.set $3 + local.tee $4 + local.set $7 local.get $1 + local.tee $0 i32.popcnt i32.const 1 i32.eq if i32.const 63 - local.get $3 + local.get $7 i64.clz i32.wrap_i64 i32.sub i32.const 31 - local.get $1 + local.get $0 i32.clz i32.sub i32.div_u @@ -23886,25 +23897,25 @@ i32.add br $__inlined_func$~lib/util/number/ulog_base end - local.get $1 + local.get $0 i64.extend_i32_s - local.tee $7 - local.set $4 + local.tee $3 + local.set $6 i32.const 1 local.set $0 loop $while-continue|00 - local.get $3 - local.get $4 - i64.ge_u + local.get $6 + local.get $7 + i64.le_u if - local.get $3 - local.get $4 + local.get $7 + local.get $6 i64.div_u - local.set $3 - local.get $4 - local.get $4 + local.set $7 + local.get $6 + local.get $6 i64.mul - local.set $4 + local.set $6 local.get $0 i32.const 1 i32.shl @@ -23913,14 +23924,14 @@ end end loop $while-continue|1 - local.get $3 + local.get $7 i64.const 1 i64.ge_u if - local.get $3 local.get $7 + local.get $3 i64.div_u - local.set $3 + local.set $7 local.get $0 i32.const 1 i32.add @@ -23934,23 +23945,23 @@ end local.get $5 i32.add - local.tee $2 + local.tee $0 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $8 i32.store + local.get $8 + local.get $4 local.get $0 - local.get $6 - local.get $2 local.get $1 call $~lib/util/number/utoa64_any_core end end local.get $5 if - local.get $0 + local.get $8 i32.const 45 i32.store16 end @@ -23958,11 +23969,11 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $8 ) (func $~lib/util/number/utoa32 (param $0 i32) (param $1 i32) (result i32) - (local $2 i64) - (local $3 i32) + (local $2 i32) + (local $3 i64) (local $4 i64) (local $5 i64) (local $6 i64) @@ -24015,46 +24026,47 @@ if global.get $~lib/memory/__stack_pointer local.get $0 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -24065,9 +24077,9 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 local.get $0 local.get $1 call $~lib/util/number/utoa32_dec_lut @@ -24090,11 +24102,11 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 i32.store local.get $0 i64.extend_i32_u - local.set $2 + local.set $3 local.get $1 local.set $0 loop $while-continue|0 @@ -24108,9 +24120,9 @@ local.tee $0 i32.const 1 i32.shl - local.get $3 - i32.add local.get $2 + i32.add + local.get $3 i32.wrap_i64 i32.const 255 i32.and @@ -24120,10 +24132,10 @@ i32.add i32.load i32.store - local.get $2 + local.get $3 i64.const 8 i64.shr_u - local.set $2 + local.set $3 br $while-continue|0 end end @@ -24131,8 +24143,8 @@ i32.const 1 i32.and if - local.get $3 local.get $2 + local.get $3 i32.wrap_i64 i32.const 6 i32.shl @@ -24147,19 +24159,21 @@ local.get $0 i64.extend_i32_u local.tee $5 - local.set $2 + local.set $3 + local.get $1 + local.set $0 local.get $1 i32.popcnt i32.const 1 i32.eq if i32.const 63 - local.get $2 + local.get $3 i64.clz i32.wrap_i64 i32.sub i32.const 31 - local.get $1 + local.get $0 i32.clz i32.sub i32.div_u @@ -24167,21 +24181,21 @@ i32.add br $__inlined_func$~lib/util/number/ulog_base end - local.get $1 + local.get $0 i64.extend_i32_s local.tee $6 local.set $4 i32.const 1 local.set $0 loop $while-continue|00 - local.get $2 + local.get $3 local.get $4 i64.ge_u if - local.get $2 + local.get $3 local.get $4 i64.div_u - local.set $2 + local.set $3 local.get $4 local.get $4 i64.mul @@ -24194,14 +24208,14 @@ end end loop $while-continue|1 - local.get $2 + local.get $3 i64.const 1 i64.ge_u if - local.get $2 + local.get $3 local.get $6 i64.div_u - local.set $2 + local.set $3 local.get $0 i32.const 1 i32.add @@ -24218,9 +24232,9 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 local.get $5 local.get $0 local.get $1 @@ -24231,7 +24245,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 ) (func $~lib/util/number/utoa64 (param $0 i64) (param $1 i32) (result i32) (local $2 i64) @@ -24487,6 +24501,8 @@ local.get $0 local.set $2 local.get $1 + local.set $3 + local.get $1 i32.popcnt i32.const 1 i32.eq @@ -24497,7 +24513,7 @@ i32.wrap_i64 i32.sub i32.const 31 - local.get $1 + local.get $3 i32.clz i32.sub i32.div_u @@ -24505,7 +24521,7 @@ i32.add br $__inlined_func$~lib/util/number/ulog_base end - local.get $1 + local.get $3 i64.extend_i32_s local.tee $5 local.set $4 @@ -24643,48 +24659,48 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.wrap_i64 - local.tee $3 local.tee $1 + local.tee $3 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $3 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $3 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $3 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $3 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $3 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $3 i32.const 100000000 i32.ge_u i32.add @@ -24697,10 +24713,10 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.store - local.get $1 local.get $3 + local.get $1 local.get $7 call $~lib/util/number/utoa32_dec_lut else @@ -24757,16 +24773,16 @@ end local.get $4 i32.add - local.tee $3 + local.tee $1 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.store - local.get $1 - local.get $0 local.get $3 + local.get $0 + local.get $1 call $~lib/util/number/utoa64_dec_lut end else @@ -24786,25 +24802,25 @@ i32.const 1 i32.add i32.add - local.tee $3 + local.tee $1 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.store loop $while-continue|0 - local.get $3 + local.get $1 i32.const 2 i32.ge_u if - local.get $3 + local.get $1 i32.const 2 i32.sub - local.tee $3 + local.tee $1 i32.const 1 i32.shl - local.get $1 + local.get $3 i32.add local.get $0 i32.wrap_i64 @@ -24823,11 +24839,11 @@ br $while-continue|0 end end - local.get $3 + local.get $1 i32.const 1 i32.and if - local.get $1 + local.get $3 local.get $0 i32.wrap_i64 i32.const 6 @@ -24843,7 +24859,8 @@ local.get $0 local.set $2 local.get $1 - local.tee $3 + local.set $3 + local.get $1 i32.popcnt i32.const 1 i32.eq @@ -24867,7 +24884,7 @@ local.tee $6 local.set $5 i32.const 1 - local.set $1 + local.set $3 loop $while-continue|00 local.get $2 local.get $5 @@ -24881,10 +24898,10 @@ local.get $5 i64.mul local.set $5 - local.get $1 + local.get $3 i32.const 1 i32.shl - local.set $1 + local.set $3 br $while-continue|00 end end @@ -24897,14 +24914,14 @@ local.get $6 i64.div_u local.set $2 - local.get $1 + local.get $3 i32.const 1 i32.add - local.set $1 + local.set $3 br $while-continue|1 end end - local.get $1 + local.get $3 i32.const 1 i32.sub end @@ -24915,18 +24932,18 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 local.get $0 local.get $7 - local.get $3 + local.get $1 call $~lib/util/number/utoa64_any_core end end local.get $4 if - local.get $1 + local.get $3 i32.const 45 i32.store16 end @@ -24934,7 +24951,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $3 ) (func $~lib/util/number/dtoa (param $0 f64) (result i32) (local $1 i32) diff --git a/tests/compiler/std/symbol.optimized.wat b/tests/compiler/std/symbol.optimized.wat index 0facb01057..3cb267fd69 100644 --- a/tests/compiler/std/symbol.optimized.wat +++ b/tests/compiler/std/symbol.optimized.wat @@ -225,17 +225,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 19084 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -249,9 +250,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -261,15 +262,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -1567,7 +1568,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $2 i32.const 1073741820 i32.gt_u @@ -1593,32 +1594,32 @@ i32.const 4 i32.sub end - local.tee $5 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 + local.get $3 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $5 + local.get $3 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $5 + local.get $3 i32.add else - local.get $5 + local.get $3 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1634,16 +1635,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $2 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -1651,7 +1652,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1659,8 +1660,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1677,7 +1678,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1687,13 +1688,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1706,40 +1707,40 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $5 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.const 16 i32.ge_u if local.get $2 - local.get $6 + local.get $5 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $4 + local.tee $3 + local.get $6 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $4 local.get $3 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $6 + local.get $5 i32.const -2 i32.and i32.store @@ -1769,8 +1770,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -2115,48 +2116,49 @@ ) (func $~lib/map/Map#get (param $0 i32) (param $1 i32) (result i32) (local $2 i32) - local.get $0 - i32.load - local.get $0 - i32.load offset=4 - local.get $1 - i32.const -1028477379 - i32.mul - i32.const 374761397 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.tee $0 - local.get $0 - i32.const 15 - i32.shr_u - i32.xor - i32.const -2048144777 - i32.mul - local.tee $0 - local.get $0 - i32.const 13 - i32.shr_u - i32.xor - i32.const -1028477379 - i32.mul - local.tee $0 - local.get $0 - i32.const 16 - i32.shr_u - i32.xor - i32.and - i32.const 2 - i32.shl - i32.add - i32.load - local.set $0 - block $__inlined_func$~lib/map/Map#find + block $__inlined_func$~lib/map/Map#find (result i32) + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i32.const -1028477379 + i32.mul + i32.const 374761397 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.tee $0 + i32.const 15 + i32.shr_u + local.get $0 + i32.xor + i32.const -2048144777 + i32.mul + local.tee $0 + i32.const 13 + i32.shr_u + local.get $0 + i32.xor + i32.const -1028477379 + i32.mul + local.tee $0 + i32.const 16 + i32.shr_u + local.get $0 + i32.xor + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set $0 loop $while-continue|0 local.get $0 if + local.get $0 local.get $0 i32.load offset=8 local.tee $2 @@ -2171,6 +2173,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find + drop local.get $2 i32.const -2 i32.and @@ -2179,9 +2182,8 @@ end end i32.const 0 - local.set $0 end - local.get $0 + local.tee $0 i32.eqz if i32.const 1648 @@ -3071,25 +3073,25 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 2700 - i32.lt_s - if - i32.const 19104 - i32.const 19152 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/string/String#concat + block $__inlined_func$~lib/string/String#concat (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 2700 + i32.lt_s + if + i32.const 19104 + i32.const 19152 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store local.get $0 i32.const 20 i32.sub @@ -3098,7 +3100,7 @@ i32.shr_u i32.const 1 i32.shl - local.tee $3 + local.tee $2 local.get $1 i32.const 20 i32.sub @@ -3107,9 +3109,9 @@ i32.shr_u i32.const 1 i32.shl - local.tee $4 + local.tee $3 i32.add - local.tee $2 + local.tee $4 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -3117,31 +3119,30 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1824 - local.set $2 br $__inlined_func$~lib/string/String#concat end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $4 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $4 i32.store - local.get $2 + local.get $4 local.get $0 - local.get $3 + local.get $2 call $~lib/memory/memory.copy local.get $2 - local.get $3 + local.get $4 i32.add local.get $1 - local.get $4 + local.get $3 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $4 end - local.get $2 ) (func $~lib/rt/__visit_members (param $0 i32) (local $1 i32) @@ -3367,15 +3368,16 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 2700 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -3424,7 +3426,7 @@ global.get $~lib/memory/__stack_pointer i32.const 2700 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -3484,7 +3486,7 @@ global.get $~lib/memory/__stack_pointer i32.const 2700 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -3539,11 +3541,11 @@ global.set $~lib/symbol/idToString end global.get $~lib/symbol/nextId - local.tee $1 + local.tee $2 i32.const 1 i32.add global.set $~lib/symbol/nextId - local.get $1 + local.get $2 i32.eqz if unreachable @@ -3551,8 +3553,10 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $~lib/symbol/stringToId - local.tee $4 + local.tee $5 i32.store + local.get $2 + local.set $1 local.get $0 i32.const 4 i32.sub @@ -3560,14 +3564,14 @@ global.get $~lib/memory/__stack_pointer i32.const 2700 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $4 + local.get $5 i32.const 1056 call $~lib/util/hash/HASH<~lib/string/String> - local.tee $5 + local.tee $6 call $~lib/map/Map<~lib/string/String,usize>#find local.tee $0 if @@ -3575,15 +3579,15 @@ local.get $1 i32.store offset=4 else - local.get $4 + local.get $5 i32.load offset=16 - local.get $4 + local.get $5 i32.load offset=12 i32.eq if - local.get $4 + local.get $5 i32.load offset=20 - local.get $4 + local.get $5 i32.load offset=12 i32.const 3 i32.mul @@ -3591,17 +3595,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $4 + local.get $5 i32.load offset=4 else - local.get $4 + local.get $5 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $6 + local.set $7 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -3609,7 +3613,7 @@ global.get $~lib/memory/__stack_pointer i32.const 2700 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -3618,14 +3622,14 @@ i32.const 0 i32.store offset=8 local.get $0 - local.get $6 + local.get $7 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $8 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -3633,59 +3637,59 @@ i32.shl i32.const 3 i32.div_s - local.tee $8 + local.tee $9 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $3 i32.store offset=4 - local.get $4 + local.get $5 i32.load offset=8 - local.tee $3 - local.get $4 + local.tee $4 + local.get $5 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $9 - local.get $2 + local.set $10 + local.get $3 local.set $0 loop $while-continue|0 - local.get $3 - local.get $9 + local.get $4 + local.get $10 i32.ne if - local.get $3 + local.get $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.load - local.tee $10 + local.tee $11 i32.store offset=8 local.get $0 - local.get $10 + local.get $11 i32.store local.get $0 - local.get $3 + local.get $4 i32.load offset=4 i32.store offset=4 local.get $0 - local.get $10 + local.get $11 call $~lib/util/hash/HASH<~lib/string/String> - local.get $6 + local.get $7 i32.and i32.const 2 i32.shl - local.get $7 + local.get $8 i32.add - local.tee $10 + local.tee $11 i32.load i32.store offset=8 - local.get $10 + local.get $11 local.get $0 i32.store local.get $0 @@ -3693,41 +3697,41 @@ i32.add local.set $0 end - local.get $3 + local.get $4 i32.const 12 i32.add - local.set $3 + local.set $4 br $while-continue|0 end end - local.get $4 - local.get $7 + local.get $5 + local.get $8 i32.store - local.get $7 + local.get $8 if - local.get $4 - local.get $7 + local.get $5 + local.get $8 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $6 + local.get $5 + local.get $7 i32.store offset=4 - local.get $4 - local.get $2 + local.get $5 + local.get $3 i32.store offset=8 - local.get $2 + local.get $3 if - local.get $4 - local.get $2 + local.get $5 + local.get $3 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $8 + local.get $5 + local.get $9 i32.store offset=12 - local.get $4 - local.get $4 + local.get $5 + local.get $5 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -3736,18 +3740,18 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.load offset=8 local.tee $0 i32.store - local.get $4 - local.get $4 + local.get $5 + local.get $5 i32.load offset=16 - local.tee $2 + local.tee $3 i32.const 1 i32.add i32.store offset=16 - local.get $2 + local.get $3 i32.const 12 i32.mul local.get $0 @@ -3755,33 +3759,33 @@ local.tee $0 i32.const 1056 i32.store - local.get $4 + local.get $5 i32.const 1056 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link local.get $0 local.get $1 i32.store offset=4 - local.get $4 - local.get $4 + local.get $5 + local.get $5 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $4 + local.get $5 i32.load - local.get $4 - i32.load offset=4 local.get $5 + i32.load offset=4 + local.get $6 i32.and i32.const 2 i32.shl i32.add - local.tee $2 + local.tee $3 i32.load i32.store offset=8 - local.get $2 + local.get $3 local.get $0 i32.store end @@ -3792,7 +3796,7 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $~lib/symbol/idToString - local.tee $4 + local.tee $5 i32.store local.get $0 i32.const 4 @@ -3801,11 +3805,11 @@ global.get $~lib/memory/__stack_pointer i32.const 2700 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $4 + local.get $5 i32.load local.get $1 i32.const -1028477379 @@ -3817,26 +3821,26 @@ i32.const 668265263 i32.mul local.tee $0 + local.get $0 i32.const 15 i32.shr_u - local.get $0 i32.xor i32.const -2048144777 i32.mul local.tee $0 + local.get $0 i32.const 13 i32.shr_u - local.get $0 i32.xor i32.const -1028477379 i32.mul local.tee $0 + local.get $0 i32.const 16 i32.shr_u - local.get $0 i32.xor - local.tee $5 - local.get $4 + local.tee $6 + local.get $5 i32.load offset=4 i32.and i32.const 2 @@ -3845,12 +3849,12 @@ i32.load local.set $0 block $__inlined_func$~lib/map/Map#find - loop $while-continue|00 + loop $while-continue|02 local.get $0 if local.get $0 i32.load offset=8 - local.tee $2 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -3862,11 +3866,11 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $2 + local.get $3 i32.const -2 i32.and local.set $0 - br $while-continue|00 + br $while-continue|02 end end i32.const 0 @@ -3877,20 +3881,20 @@ local.get $0 i32.const 1056 i32.store offset=4 - local.get $4 + local.get $5 i32.const 1056 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link else - local.get $4 + local.get $5 i32.load offset=16 - local.get $4 + local.get $5 i32.load offset=12 i32.eq if - local.get $4 + local.get $5 i32.load offset=20 - local.get $4 + local.get $5 i32.load offset=12 i32.const 3 i32.mul @@ -3898,17 +3902,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $4 + local.get $5 i32.load offset=4 else - local.get $4 + local.get $5 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $6 + local.set $7 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -3916,20 +3920,20 @@ global.get $~lib/memory/__stack_pointer i32.const 2700 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 i64.store local.get $0 - local.get $6 + local.get $7 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $8 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -3937,45 +3941,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $8 + local.tee $9 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $3 i32.store offset=4 - local.get $4 + local.get $5 i32.load offset=8 - local.tee $3 - local.get $4 + local.tee $4 + local.get $5 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $9 - local.get $2 + local.set $10 + local.get $3 local.set $0 - loop $while-continue|01 - local.get $3 - local.get $9 + loop $while-continue|03 + local.get $4 + local.get $10 i32.ne if - local.get $3 + local.get $4 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $3 + local.get $4 i32.load - local.tee $10 + local.tee $11 i32.store local.get $0 - local.get $3 + local.get $4 i32.load offset=4 i32.store offset=4 local.get $0 - local.get $10 + local.get $11 i32.const -1028477379 i32.mul i32.const 374761397 @@ -3984,35 +3988,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $10 + local.tee $11 + local.get $11 i32.const 15 i32.shr_u - local.get $10 i32.xor i32.const -2048144777 i32.mul - local.tee $10 + local.tee $11 + local.get $11 i32.const 13 i32.shr_u - local.get $10 i32.xor i32.const -1028477379 i32.mul - local.tee $10 + local.tee $11 + local.get $11 i32.const 16 i32.shr_u - local.get $10 i32.xor - local.get $6 + local.get $7 i32.and i32.const 2 i32.shl - local.get $7 + local.get $8 i32.add - local.tee $10 + local.tee $11 i32.load i32.store offset=8 - local.get $10 + local.get $11 local.get $0 i32.store local.get $0 @@ -4020,41 +4024,41 @@ i32.add local.set $0 end - local.get $3 + local.get $4 i32.const 12 i32.add - local.set $3 - br $while-continue|01 + local.set $4 + br $while-continue|03 end end - local.get $4 - local.get $7 + local.get $5 + local.get $8 i32.store - local.get $7 + local.get $8 if - local.get $4 - local.get $7 + local.get $5 + local.get $8 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $6 + local.get $5 + local.get $7 i32.store offset=4 - local.get $4 - local.get $2 + local.get $5 + local.get $3 i32.store offset=8 - local.get $2 + local.get $3 if - local.get $4 - local.get $2 + local.get $5 + local.get $3 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $8 + local.get $5 + local.get $9 i32.store offset=12 - local.get $4 - local.get $4 + local.get $5 + local.get $5 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -4063,18 +4067,18 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.load offset=8 local.tee $0 i32.store - local.get $4 - local.get $4 + local.get $5 + local.get $5 i32.load offset=16 - local.tee $2 + local.tee $3 i32.const 1 i32.add i32.store offset=16 - local.get $2 + local.get $3 i32.const 12 i32.mul local.get $0 @@ -4085,30 +4089,30 @@ local.get $0 i32.const 1056 i32.store offset=4 - local.get $4 + local.get $5 i32.const 1056 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link - local.get $4 - local.get $4 + local.get $5 + local.get $5 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $4 + local.get $5 i32.load - local.get $4 - i32.load offset=4 local.get $5 + i32.load offset=4 + local.get $6 i32.and i32.const 2 i32.shl i32.add - local.tee $2 + local.tee $1 i32.load i32.store offset=8 - local.get $2 + local.get $1 local.get $0 i32.store end @@ -4120,7 +4124,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 return end i32.const 19104 @@ -4171,23 +4175,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 @@ -4389,23 +4393,23 @@ i32.const 668265263 i32.mul local.tee $1 + local.get $1 i32.const 15 i32.shr_u - local.get $1 i32.xor i32.const -2048144777 i32.mul local.tee $1 + local.get $1 i32.const 13 i32.shr_u - local.get $1 i32.xor i32.const -1028477379 i32.mul local.tee $1 + local.get $1 i32.const 16 i32.shr_u - local.get $1 i32.xor i32.and i32.const 2 diff --git a/tests/compiler/std/typedarray.optimized.wat b/tests/compiler/std/typedarray.optimized.wat index 8ea5a04338..035c82760a 100644 --- a/tests/compiler/std/typedarray.optimized.wat +++ b/tests/compiler/std/typedarray.optimized.wat @@ -767,17 +767,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 33012 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -791,9 +792,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -803,15 +804,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -1867,19 +1868,12 @@ end end ) - (func $~lib/rt/tlsf/__alloc (param $0 i32) (result i32) - (local $1 i32) + (func $~lib/rt/tlsf/allocateBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - call $~lib/rt/tlsf/initialize - end - global.get $~lib/rt/tlsf/ROOT - local.tee $1 local.get $0 + local.get $1 i32.const 1073741820 i32.gt_u if @@ -1890,13 +1884,13 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $0 + local.get $1 i32.const 19 i32.add i32.const -16 @@ -1906,11 +1900,11 @@ end local.tee $3 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if memory.size - local.tee $0 + local.tee $1 local.get $3 i32.const 536870910 i32.lt_u @@ -1929,9 +1923,9 @@ local.get $3 end i32.const 4 - local.get $1 - i32.load offset=1568 local.get $0 + i32.load offset=1568 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1946,7 +1940,7 @@ i32.const 16 i32.shr_u local.tee $2 - local.get $0 + local.get $1 local.get $2 i32.gt_s select @@ -1962,18 +1956,18 @@ unreachable end end - local.get $1 local.get $0 + local.get $1 i32.const 16 i32.shl memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $0 local.get $3 call $~lib/rt/tlsf/searchBlock - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1984,7 +1978,7 @@ unreachable end end - local.get $0 + local.get $1 i32.load i32.const -4 i32.and @@ -1998,10 +1992,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $0 + local.get $1 call $~lib/rt/tlsf/removeBlock - local.get $0 + local.get $1 i32.load local.set $4 local.get $3 @@ -2026,7 +2020,7 @@ i32.const 16 i32.ge_u if - local.get $0 + local.get $1 local.get $4 i32.const 2 i32.and @@ -2034,7 +2028,7 @@ i32.or i32.store local.get $3 - local.get $0 + local.get $1 i32.const 4 i32.add i32.add @@ -2045,33 +2039,31 @@ i32.const 1 i32.or i32.store - local.get $1 + local.get $0 local.get $3 call $~lib/rt/tlsf/insertBlock else - local.get $0 + local.get $1 local.get $4 i32.const -2 i32.and i32.store - local.get $0 + local.get $1 i32.const 4 i32.add - local.get $0 + local.get $1 i32.load i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.load i32.const -3 i32.and i32.store end - local.get $0 - i32.const 4 - i32.add + local.get $1 ) (func $~lib/memory/memory.fill (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i64) @@ -2312,13 +2304,13 @@ end global.get $~lib/rt/itcms/total local.tee $2 - local.get $2 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl + local.get $2 i32.add global.set $~lib/rt/itcms/threshold end @@ -2326,9 +2318,15 @@ local.get $0 i32.const 16 i32.add - call $~lib/rt/tlsf/__alloc - i32.const 4 - i32.sub + local.set $2 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $2 + call $~lib/rt/tlsf/allocateBlock local.tee $2 local.get $1 i32.store offset=12 @@ -2340,8 +2338,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -3418,11 +3416,11 @@ (local $9 f64) (local $10 f64) (local $11 f64) - (local $12 i64) + (local $12 i32) (local $13 i32) (local $14 i32) (local $15 i32) - (local $16 i32) + (local $16 i64) local.get $1 i32.const 48 i32.le_s @@ -3538,52 +3536,72 @@ local.get $1 i32.clz i32.sub - local.tee $6 + local.tee $7 i32.const 2 i32.shl - local.tee $5 + local.tee $6 i32.const 1 i32.shl - call $~lib/rt/tlsf/__alloc - local.tee $15 + local.set $5 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT local.get $5 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.tee $13 + local.get $6 i32.add local.set $14 i32.const 0 - local.set $7 + local.set $6 loop $for-loop|1 local.get $6 local.get $7 - i32.gt_u + i32.lt_u if - local.get $7 + local.get $6 i32.const 2 i32.shl - local.get $15 + local.get $13 i32.add i32.const -1 i32.store - local.get $7 + local.get $6 i32.const 1 i32.add - local.set $7 + local.set $6 br $for-loop|1 end end local.get $1 i32.const 3 i32.shl - call $~lib/rt/tlsf/__alloc - local.set $13 + local.set $5 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $5 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.set $15 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $16 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $6 + local.tee $7 i32.const 1 i32.add local.tee $1 @@ -3592,31 +3610,31 @@ if local.get $0 i32.const 0 - local.get $16 + local.get $12 i32.const 31 - local.get $16 + local.get $12 i32.const 31 i32.lt_s select - local.tee $6 + local.tee $7 local.get $1 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $6 - local.get $16 + local.get $7 + local.get $12 i32.lt_s if local.get $0 - local.get $6 + local.get $7 i32.const 1 i32.add local.tee $5 - local.get $16 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $7 + local.tee $6 local.get $5 i32.sub i32.const 1 @@ -3627,16 +3645,16 @@ if local.get $0 local.get $5 - local.get $16 + local.get $12 local.get $5 i32.const 31 i32.add local.tee $1 local.get $1 - local.get $16 + local.get $12 i32.gt_s select - local.tee $7 + local.tee $6 local.get $8 local.get $2 call $~lib/util/sort/insertionSort @@ -3647,21 +3665,21 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $16 + local.get $12 i32.const 1 i32.add i64.extend_i32_u - local.tee $12 + local.tee $16 i64.div_u local.get $5 - local.get $7 + local.get $6 i32.add i32.const 1 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $16 i64.div_u i64.xor i32.wrap_i64 @@ -3675,7 +3693,7 @@ local.get $4 i32.const 2 i32.shl - local.get $15 + local.get $13 i32.add i32.load local.tee $8 @@ -3693,12 +3711,12 @@ i32.load i32.const 1 i32.add - local.get $6 - local.get $13 + local.get $7 + local.get $15 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $15 + local.get $13 i32.add i32.const -1 i32.store @@ -3712,7 +3730,7 @@ br $for-loop|3 end end - local.get $15 + local.get $13 local.get $1 i32.const 2 i32.shl @@ -3723,12 +3741,12 @@ local.get $4 local.get $14 i32.add - local.get $6 + local.get $7 i32.store local.get $5 local.set $3 - local.get $7 - local.set $6 + local.get $6 + local.set $7 local.get $1 local.set $4 br $while-continue|2 @@ -3740,7 +3758,7 @@ local.get $4 i32.const 2 i32.shl - local.get $15 + local.get $13 i32.add i32.load local.tee $1 @@ -3757,8 +3775,8 @@ i32.load i32.const 1 i32.add - local.get $16 - local.get $13 + local.get $12 + local.get $15 local.get $2 call $~lib/util/sort/mergeRuns end @@ -3769,10 +3787,10 @@ br $for-loop|4 end end - local.get $13 - call $~lib/rt/tlsf/__free local.get $15 call $~lib/rt/tlsf/__free + local.get $13 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 f64) (param $1 f64) (result i32) (local $2 i64) @@ -6314,8 +6332,8 @@ ) (func $~lib/typedarray/Int8Array#reverse (param $0 i32) (result i32) (local $1 i32) - (local $2 i32) - (local $3 i64) + (local $2 i64) + (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) @@ -6323,7 +6341,7 @@ (local $8 i64) local.get $0 i32.load offset=4 - local.set $2 + local.set $3 local.get $0 i32.load offset=8 local.tee $5 @@ -6346,24 +6364,37 @@ i32.gt_u if local.get $1 - local.get $2 + local.get $3 i32.add local.tee $7 i64.load - local.tee $3 + local.tee $2 i64.const 8 i64.shr_u i64.const 71777214294589695 i64.and - local.get $3 + local.get $2 i64.const 71777214294589695 i64.and i64.const 8 i64.shl i64.or - local.set $3 - local.get $7 + local.tee $2 + i64.const 16 + i64.shr_u + i64.const 281470681808895 + i64.and local.get $2 + i64.const 281470681808895 + i64.and + i64.const 16 + i64.shl + i64.or + i64.const 32 + i64.rotr + local.set $2 + local.get $7 + local.get $3 local.get $6 i32.add local.get $1 @@ -6396,19 +6427,7 @@ i64.rotr i64.store local.get $7 - local.get $3 - i64.const 16 - i64.shr_u - i64.const 281470681808895 - i64.and - local.get $3 - i64.const 281470681808895 - i64.and - i64.const 16 - i64.shl - i64.or - i64.const 32 - i64.rotr + local.get $2 i64.store local.get $1 i32.const 8 @@ -6427,7 +6446,7 @@ i32.lt_u if local.get $1 - local.get $2 + local.get $3 i32.add local.tee $6 i32.load8_u @@ -6436,7 +6455,7 @@ local.get $5 local.get $1 i32.sub - local.get $2 + local.get $3 i32.add local.tee $6 i32.load8_u @@ -6598,14 +6617,14 @@ i32.load local.tee $1 call $~lib/typedarray/Int8Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 loop $for-loop|0 local.get $0 local.get $1 i32.lt_s if - local.get $4 + local.get $2 local.get $0 i32.const 7728 local.get $0 @@ -6620,11 +6639,11 @@ end end i32.const 0 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 - local.get $4 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -6633,32 +6652,32 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|0 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|0 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -6668,11 +6687,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.01 - local.get $4 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -6681,33 +6700,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.01 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|02 - local.get $0 + local.set $4 + loop $while-continue|03 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 11 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.01 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|02 + local.set $1 + br $while-continue|03 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -6719,11 +6738,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.04 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.05 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -6731,34 +6750,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.04 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.05 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|05 - local.get $0 + local.set $4 + loop $while-continue|07 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 255 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.04 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.05 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|05 + local.set $1 + br $while-continue|07 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -6770,11 +6789,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.07 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.09 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -6782,34 +6801,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.07 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.09 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|08 - local.get $0 + local.set $4 + loop $while-continue|011 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.07 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.09 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|08 + local.set $1 + br $while-continue|011 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -6821,11 +6840,11 @@ unreachable end i32.const 2 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.010 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.013 + local.get $2 i32.load offset=8 local.tee $3 i32.const 2 @@ -6833,34 +6852,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.010 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.013 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|011 - local.get $0 + local.set $4 + loop $while-continue|015 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.010 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.013 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|011 + local.set $1 + br $while-continue|015 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -6872,11 +6891,11 @@ unreachable end i32.const 3 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.013 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.017 + local.get $2 i32.load offset=8 local.tee $3 i32.const 3 @@ -6884,34 +6903,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.013 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.017 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|014 - local.get $0 + local.set $4 + loop $while-continue|019 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.013 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.017 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|014 + local.set $1 + br $while-continue|019 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -6923,11 +6942,11 @@ unreachable end i32.const 4 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.016 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.021 + local.get $2 i32.load offset=8 local.tee $3 i32.const 4 @@ -6935,34 +6954,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.016 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.021 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|017 - local.get $0 + local.set $4 + loop $while-continue|023 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.016 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.021 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|017 + local.set $1 + br $while-continue|023 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -6974,11 +6993,11 @@ unreachable end i32.const 10 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.019 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.025 + local.get $2 i32.load offset=8 local.tee $3 i32.const 10 @@ -6986,34 +7005,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.019 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.025 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|020 - local.get $0 + local.set $4 + loop $while-continue|027 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 1 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.019 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.025 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|020 + local.set $1 + br $while-continue|027 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -7026,47 +7045,46 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.022 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.029 + local.get $2 i32.load offset=8 - local.tee $3 + local.tee $0 i32.const -100 i32.le_s i32.const 1 - local.get $3 + local.get $0 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.022 - local.get $3 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.029 + local.get $0 i32.const 100 i32.sub - local.tee $0 + local.tee $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 i32.gt_s select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|023 + local.set $3 + loop $while-continue|031 local.get $0 - local.get $3 - i32.lt_s + local.get $1 + i32.gt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.get $3 i32.add i32.load8_u i32.const 1 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.022 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.029 local.get $1 i32.const 1 i32.add - local.set $0 - br $while-continue|023 + local.set $1 + br $while-continue|031 end end i32.const -1 @@ -7085,33 +7103,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $2 + local.tee $1 i32.load offset=8 - local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 local.get $2 + i32.load offset=8 + local.tee $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|00 @@ -7120,13 +7140,12 @@ i32.ge_s if local.get $0 - local.tee $1 local.get $2 i32.add i32.load8_u i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -7134,9 +7153,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -7147,33 +7166,33 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $1 i32.load offset=8 local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.05 local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.05 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|06 @@ -7182,14 +7201,13 @@ i32.ge_s if local.get $0 - local.tee $1 local.get $2 i32.add i32.load8_u i32.const 11 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.05 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -7197,9 +7215,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -7212,33 +7230,33 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $1 i32.load offset=8 local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.011 local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.011 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|012 @@ -7247,14 +7265,13 @@ i32.ge_s if local.get $0 - local.tee $1 local.get $2 i32.add i32.load8_u i32.const 255 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.011 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -7262,9 +7279,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -7277,33 +7294,33 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $1 i32.load offset=8 local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.017 local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.017 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|018 @@ -7312,14 +7329,13 @@ i32.ge_s if local.get $0 - local.tee $1 local.get $2 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.017 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -7327,9 +7343,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -7341,49 +7357,50 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.019 - local.get $4 + local.get $1 + local.tee $2 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.019 - local.get $0 + local.get $1 i32.const 1 i32.sub i32.const 4 - local.get $0 + local.get $1 i32.const 4 i32.le_s select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|024 - local.get $0 + local.set $3 + loop $while-continue|033 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $3 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.019 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|024 + local.set $1 + br $while-continue|033 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -7395,49 +7412,49 @@ unreachable end i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.026 - local.get $4 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.035 + local.get $2 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.026 - local.get $0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.035 + local.get $1 i32.const 1 i32.sub i32.const 3 - local.get $0 + local.get $1 i32.const 3 i32.le_s select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|027 - local.get $0 + local.set $3 + loop $while-continue|037 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $3 i32.add i32.load8_u i32.const 3 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.026 - local.get $1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.035 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|027 + local.set $1 + br $while-continue|037 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -7449,49 +7466,49 @@ unreachable end i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.029 - local.get $4 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.039 + local.get $2 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.029 - local.get $0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.039 + local.get $1 i32.const 1 i32.sub i32.const 2 - local.get $0 + local.get $1 i32.const 2 i32.le_s select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|030 - local.get $0 + local.set $3 + loop $while-continue|041 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $3 i32.add i32.load8_u i32.const 3 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.029 - local.get $1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.039 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|030 + local.set $1 + br $while-continue|041 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -7503,49 +7520,49 @@ unreachable end i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.032 - local.get $4 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.043 + local.get $2 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.032 - local.get $0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.043 + local.get $1 i32.const 1 i32.sub i32.const 100 - local.get $0 + local.get $1 i32.const 100 i32.le_s select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|033 - local.get $0 + local.set $3 + loop $while-continue|045 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $3 i32.add i32.load8_u i32.const 1 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.032 - local.get $1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.043 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|033 + local.set $1 + br $while-continue|045 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -7558,37 +7575,36 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.035 - local.get $4 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.047 + local.get $2 i32.load offset=8 local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.035 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.047 local.get $0 i32.const 10 i32.sub - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|036 - local.get $0 + local.set $0 + loop $while-continue|049 + local.get $1 i32.const 0 i32.ge_s if local.get $0 - local.tee $1 - local.get $2 + local.get $1 i32.add i32.load8_u i32.const 1 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.035 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.047 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|036 + local.set $1 + br $while-continue|049 end end i32.const -1 @@ -7607,37 +7623,36 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.038 - local.get $4 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.051 + local.get $2 i32.load offset=8 local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.038 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.051 local.get $0 i32.const 11 i32.sub - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|039 - local.get $0 + local.set $0 + loop $while-continue|053 + local.get $1 i32.const 0 i32.ge_s if local.get $0 - local.tee $1 - local.get $2 + local.get $1 i32.add i32.load8_u i32.const 1 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.038 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.051 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|039 + local.set $1 + br $while-continue|053 end end i32.const -1 @@ -7655,18 +7670,18 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.const 4 i32.const 9 call $~lib/typedarray/Int8Array#subarray - local.tee $4 + local.tee $2 i32.store offset=8 i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.041 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.055 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -7674,34 +7689,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.041 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.055 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|042 - local.get $0 + local.set $4 + loop $while-continue|057 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.041 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.055 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|042 + local.set $1 + br $while-continue|057 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -7713,11 +7728,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.044 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.059 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -7725,34 +7740,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.044 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.059 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|045 - local.get $0 + local.set $4 + loop $while-continue|061 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 4 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.044 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.059 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|045 + local.set $1 + br $while-continue|061 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -7762,11 +7777,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.047 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.063 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -7774,34 +7789,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.047 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.063 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|048 - local.get $0 + local.set $4 + loop $while-continue|065 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 5 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.047 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.063 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|048 + local.set $1 + br $while-continue|065 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -7813,11 +7828,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.050 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.067 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -7825,34 +7840,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.050 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.067 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|051 - local.get $0 + local.set $4 + loop $while-continue|069 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 9 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.050 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.067 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|051 + local.set $1 + br $while-continue|069 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -7864,11 +7879,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.053 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.071 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -7876,34 +7891,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.053 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.071 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|054 - local.get $0 + local.set $4 + loop $while-continue|073 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 10 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.053 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.071 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|054 + local.set $1 + br $while-continue|073 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -7915,11 +7930,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.056 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.075 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -7927,34 +7942,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.056 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.075 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|057 - local.get $0 + local.set $4 + loop $while-continue|077 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 11 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.056 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.075 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|057 + local.set $1 + br $while-continue|077 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -7966,11 +7981,11 @@ unreachable end i32.const 1 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.059 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.079 + local.get $2 i32.load offset=8 local.tee $3 i32.const 1 @@ -7978,34 +7993,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.059 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.079 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|060 - local.get $0 + local.set $4 + loop $while-continue|081 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 5 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.059 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.079 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|060 + local.set $1 + br $while-continue|081 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -8017,11 +8032,11 @@ unreachable end i32.const 2 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.062 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.083 + local.get $2 i32.load offset=8 local.tee $3 i32.const 2 @@ -8029,34 +8044,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.062 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.083 + local.get $2 i32.load offset=4 local.set $2 - loop $while-continue|063 - local.get $0 + loop $while-continue|085 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 local.get $2 i32.add i32.load8_u i32.const 5 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.062 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.083 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|063 + local.set $1 + br $while-continue|085 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -8108,14 +8123,14 @@ i32.load local.tee $1 call $~lib/typedarray/Uint8Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 loop $for-loop|0 local.get $0 local.get $1 i32.lt_s if - local.get $4 + local.get $2 local.get $0 i32.const 7728 local.get $0 @@ -8131,11 +8146,11 @@ end end i32.const 0 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $4 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -8144,32 +8159,32 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|0 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|0 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -8179,11 +8194,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.01 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.01 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -8192,33 +8207,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.01 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|02 - local.get $0 + local.set $4 + loop $while-continue|03 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 11 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.01 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|02 + local.set $1 + br $while-continue|03 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -8230,11 +8245,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.04 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -8242,34 +8257,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.04 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|05 - local.get $0 + local.set $4 + loop $while-continue|07 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 255 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.04 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|05 + local.set $1 + br $while-continue|07 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -8281,11 +8296,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.07 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.09 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -8293,34 +8308,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.07 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.09 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|08 - local.get $0 + local.set $4 + loop $while-continue|011 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.07 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.09 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|08 + local.set $1 + br $while-continue|011 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -8332,11 +8347,11 @@ unreachable end i32.const 2 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.010 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.013 + local.get $2 i32.load offset=8 local.tee $3 i32.const 2 @@ -8344,34 +8359,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.010 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.013 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|011 - local.get $0 + local.set $4 + loop $while-continue|015 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.010 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.013 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|011 + local.set $1 + br $while-continue|015 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -8383,11 +8398,11 @@ unreachable end i32.const 3 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.013 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 + local.get $2 i32.load offset=8 local.tee $3 i32.const 3 @@ -8395,34 +8410,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.013 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|014 - local.get $0 + local.set $4 + loop $while-continue|019 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.013 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|014 + local.set $1 + br $while-continue|019 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -8434,11 +8449,11 @@ unreachable end i32.const 4 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.016 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.021 + local.get $2 i32.load offset=8 local.tee $3 i32.const 4 @@ -8446,34 +8461,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.016 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.021 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|017 - local.get $0 + local.set $4 + loop $while-continue|023 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.016 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.021 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|017 + local.set $1 + br $while-continue|023 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -8485,11 +8500,11 @@ unreachable end i32.const 10 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.019 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.025 + local.get $2 i32.load offset=8 local.tee $3 i32.const 10 @@ -8497,34 +8512,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.019 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.025 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|020 - local.get $0 + local.set $4 + loop $while-continue|027 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 1 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.019 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.025 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|020 + local.set $1 + br $while-continue|027 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -8537,47 +8552,46 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.022 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.029 + local.get $2 i32.load offset=8 - local.tee $3 + local.tee $0 i32.const -100 i32.le_s i32.const 1 - local.get $3 + local.get $0 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.022 - local.get $3 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.029 + local.get $0 i32.const 100 i32.sub - local.tee $0 + local.tee $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 i32.gt_s select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|023 + local.set $3 + loop $while-continue|031 local.get $0 - local.get $3 - i32.lt_s + local.get $1 + i32.gt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.get $3 i32.add i32.load8_u i32.const 1 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.022 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.029 local.get $1 i32.const 1 i32.add - local.set $0 - br $while-continue|023 + local.set $1 + br $while-continue|031 end end i32.const -1 @@ -8596,33 +8610,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $2 + local.tee $1 i32.load offset=8 - local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 local.get $2 + i32.load offset=8 + local.tee $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|00 @@ -8631,13 +8647,12 @@ i32.ge_s if local.get $0 - local.tee $1 local.get $2 i32.add i32.load8_u i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -8645,9 +8660,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -8658,33 +8673,33 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $1 i32.load offset=8 local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|06 @@ -8693,14 +8708,13 @@ i32.ge_s if local.get $0 - local.tee $1 local.get $2 i32.add i32.load8_u i32.const 11 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -8708,9 +8722,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -8723,33 +8737,33 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $1 i32.load offset=8 local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.011 local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.011 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|012 @@ -8758,14 +8772,13 @@ i32.ge_s if local.get $0 - local.tee $1 local.get $2 i32.add i32.load8_u i32.const 255 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.011 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -8773,9 +8786,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -8788,33 +8801,33 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $1 i32.load offset=8 local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|018 @@ -8823,14 +8836,13 @@ i32.ge_s if local.get $0 - local.tee $1 local.get $2 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -8838,9 +8850,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -8852,49 +8864,50 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.019 - local.get $4 + local.get $1 + local.tee $2 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.019 - local.get $0 + local.get $1 i32.const 1 i32.sub i32.const 4 - local.get $0 + local.get $1 i32.const 4 i32.le_s select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|024 - local.get $0 + local.set $3 + loop $while-continue|033 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $3 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.019 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|024 + local.set $1 + br $while-continue|033 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -8906,49 +8919,49 @@ unreachable end i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.026 - local.get $4 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.035 + local.get $2 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.026 - local.get $0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.035 + local.get $1 i32.const 1 i32.sub i32.const 3 - local.get $0 + local.get $1 i32.const 3 i32.le_s select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|027 - local.get $0 + local.set $3 + loop $while-continue|037 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $3 i32.add i32.load8_u i32.const 3 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.026 - local.get $1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.035 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|027 + local.set $1 + br $while-continue|037 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -8960,49 +8973,49 @@ unreachable end i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.029 - local.get $4 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.039 + local.get $2 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.029 - local.get $0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.039 + local.get $1 i32.const 1 i32.sub i32.const 2 - local.get $0 + local.get $1 i32.const 2 i32.le_s select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|030 - local.get $0 + local.set $3 + loop $while-continue|041 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $3 i32.add i32.load8_u i32.const 3 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.029 - local.get $1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.039 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|030 + local.set $1 + br $while-continue|041 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -9014,49 +9027,49 @@ unreachable end i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.032 - local.get $4 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.043 + local.get $2 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.032 - local.get $0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.043 + local.get $1 i32.const 1 i32.sub i32.const 100 - local.get $0 + local.get $1 i32.const 100 i32.le_s select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|033 - local.get $0 + local.set $3 + loop $while-continue|045 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $3 i32.add i32.load8_u i32.const 1 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.032 - local.get $1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.043 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|033 + local.set $1 + br $while-continue|045 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -9069,37 +9082,36 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.035 - local.get $4 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.047 + local.get $2 i32.load offset=8 local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.035 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.047 local.get $0 i32.const 10 i32.sub - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|036 - local.get $0 + local.set $0 + loop $while-continue|049 + local.get $1 i32.const 0 i32.ge_s if local.get $0 - local.tee $1 - local.get $2 + local.get $1 i32.add i32.load8_u i32.const 1 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.035 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.047 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|036 + local.set $1 + br $while-continue|049 end end i32.const -1 @@ -9118,37 +9130,36 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.038 - local.get $4 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.051 + local.get $2 i32.load offset=8 local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.038 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.051 local.get $0 i32.const 11 i32.sub - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|039 - local.get $0 + local.set $0 + loop $while-continue|053 + local.get $1 i32.const 0 i32.ge_s if local.get $0 - local.tee $1 - local.get $2 + local.get $1 i32.add i32.load8_u i32.const 1 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.038 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.051 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|039 + local.set $1 + br $while-continue|053 end end i32.const -1 @@ -9166,17 +9177,17 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.const 9 call $~lib/typedarray/Uint8Array#subarray - local.tee $4 + local.tee $2 i32.store offset=8 i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.041 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.055 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -9184,34 +9195,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.041 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.055 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|042 - local.get $0 + local.set $4 + loop $while-continue|057 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.041 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.055 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|042 + local.set $1 + br $while-continue|057 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -9223,11 +9234,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.044 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.059 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -9235,34 +9246,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.044 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.059 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|045 - local.get $0 + local.set $4 + loop $while-continue|061 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 4 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.044 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.059 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|045 + local.set $1 + br $while-continue|061 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -9272,11 +9283,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.047 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.063 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -9284,34 +9295,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.047 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.063 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|048 - local.get $0 + local.set $4 + loop $while-continue|065 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 5 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.047 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.063 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|048 + local.set $1 + br $while-continue|065 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -9323,11 +9334,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.050 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.067 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -9335,34 +9346,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.050 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.067 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|051 - local.get $0 + local.set $4 + loop $while-continue|069 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 9 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.050 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.067 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|051 + local.set $1 + br $while-continue|069 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -9374,11 +9385,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.053 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.071 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -9386,34 +9397,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.053 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.071 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|054 - local.get $0 + local.set $4 + loop $while-continue|073 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 10 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.053 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.071 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|054 + local.set $1 + br $while-continue|073 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -9425,11 +9436,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.056 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.075 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -9437,34 +9448,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.056 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.075 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|057 - local.get $0 + local.set $4 + loop $while-continue|077 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 11 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.056 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.075 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|057 + local.set $1 + br $while-continue|077 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -9476,11 +9487,11 @@ unreachable end i32.const 1 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.059 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.079 + local.get $2 i32.load offset=8 local.tee $3 i32.const 1 @@ -9488,34 +9499,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.059 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.079 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|060 - local.get $0 + local.set $4 + loop $while-continue|081 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 5 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.059 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.079 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|060 + local.set $1 + br $while-continue|081 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -9527,11 +9538,11 @@ unreachable end i32.const 2 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.062 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.083 + local.get $2 i32.load offset=8 local.tee $3 i32.const 2 @@ -9539,34 +9550,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.062 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.083 + local.get $2 i32.load offset=4 local.set $2 - loop $while-continue|063 - local.get $0 + loop $while-continue|085 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 local.get $2 i32.add i32.load8_u i32.const 5 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.062 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.083 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|063 + local.set $1 + br $while-continue|085 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -9618,14 +9629,14 @@ i32.load local.tee $1 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $4 + local.tee $2 i32.store offset=4 loop $for-loop|0 local.get $0 local.get $1 i32.lt_s if - local.get $4 + local.get $2 local.get $0 i32.const 7728 local.get $0 @@ -9641,11 +9652,11 @@ end end i32.const 0 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $4 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -9654,32 +9665,32 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|0 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|0 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -9689,11 +9700,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.01 - local.get $4 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -9702,33 +9713,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.01 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|02 - local.get $0 + local.set $4 + loop $while-continue|03 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 11 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.01 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|02 + local.set $1 + br $while-continue|03 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -9740,11 +9751,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.04 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -9752,34 +9763,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.04 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|05 - local.get $0 + local.set $4 + loop $while-continue|07 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 255 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.04 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|05 + local.set $1 + br $while-continue|07 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -9791,11 +9802,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.07 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.09 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -9803,34 +9814,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.07 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.09 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|08 - local.get $0 + local.set $4 + loop $while-continue|011 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.07 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.09 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|08 + local.set $1 + br $while-continue|011 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -9842,11 +9853,11 @@ unreachable end i32.const 2 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.010 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.013 + local.get $2 i32.load offset=8 local.tee $3 i32.const 2 @@ -9854,34 +9865,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.010 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.013 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|011 - local.get $0 + local.set $4 + loop $while-continue|015 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.010 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.013 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|011 + local.set $1 + br $while-continue|015 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -9893,11 +9904,11 @@ unreachable end i32.const 3 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.013 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 + local.get $2 i32.load offset=8 local.tee $3 i32.const 3 @@ -9905,34 +9916,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.013 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|014 - local.get $0 + local.set $4 + loop $while-continue|019 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.013 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|014 + local.set $1 + br $while-continue|019 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -9944,11 +9955,11 @@ unreachable end i32.const 4 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.016 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.021 + local.get $2 i32.load offset=8 local.tee $3 i32.const 4 @@ -9956,34 +9967,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.016 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.021 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|017 - local.get $0 + local.set $4 + loop $while-continue|023 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.016 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.021 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|017 + local.set $1 + br $while-continue|023 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -9995,11 +10006,11 @@ unreachable end i32.const 10 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.019 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.025 + local.get $2 i32.load offset=8 local.tee $3 i32.const 10 @@ -10007,34 +10018,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.019 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.025 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|020 - local.get $0 + local.set $4 + loop $while-continue|027 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 1 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.019 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.025 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|020 + local.set $1 + br $while-continue|027 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -10047,47 +10058,46 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.022 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.029 + local.get $2 i32.load offset=8 - local.tee $3 + local.tee $0 i32.const -100 i32.le_s i32.const 1 - local.get $3 + local.get $0 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.022 - local.get $3 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.029 + local.get $0 i32.const 100 i32.sub - local.tee $0 + local.tee $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 i32.gt_s select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|023 + local.set $3 + loop $while-continue|031 local.get $0 - local.get $3 - i32.lt_s + local.get $1 + i32.gt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.get $3 i32.add i32.load8_u i32.const 1 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.022 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.029 local.get $1 i32.const 1 i32.add - local.set $0 - br $while-continue|023 + local.set $1 + br $while-continue|031 end end i32.const -1 @@ -10106,33 +10116,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $2 + local.tee $1 i32.load offset=8 - local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 local.get $2 + i32.load offset=8 + local.tee $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|00 @@ -10141,13 +10153,12 @@ i32.ge_s if local.get $0 - local.tee $1 local.get $2 i32.add i32.load8_u i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -10155,9 +10166,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -10168,33 +10179,33 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $1 i32.load offset=8 local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|06 @@ -10203,14 +10214,13 @@ i32.ge_s if local.get $0 - local.tee $1 local.get $2 i32.add i32.load8_u i32.const 11 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -10218,9 +10228,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -10233,33 +10243,33 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $1 i32.load offset=8 local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.011 local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.011 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|012 @@ -10268,14 +10278,13 @@ i32.ge_s if local.get $0 - local.tee $1 local.get $2 i32.add i32.load8_u i32.const 255 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.011 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -10283,9 +10292,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -10298,33 +10307,33 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $1 i32.load offset=8 local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|018 @@ -10333,14 +10342,13 @@ i32.ge_s if local.get $0 - local.tee $1 local.get $2 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -10348,9 +10356,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -10362,49 +10370,50 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.019 - local.get $4 + local.get $1 + local.tee $2 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.019 - local.get $0 + local.get $1 i32.const 1 i32.sub i32.const 4 - local.get $0 + local.get $1 i32.const 4 i32.le_s select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|024 - local.get $0 + local.set $3 + loop $while-continue|033 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $3 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.019 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|024 + local.set $1 + br $while-continue|033 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -10416,49 +10425,49 @@ unreachable end i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.026 - local.get $4 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.035 + local.get $2 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.026 - local.get $0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.035 + local.get $1 i32.const 1 i32.sub i32.const 3 - local.get $0 + local.get $1 i32.const 3 i32.le_s select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|027 - local.get $0 + local.set $3 + loop $while-continue|037 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $3 i32.add i32.load8_u i32.const 3 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.026 - local.get $1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.035 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|027 + local.set $1 + br $while-continue|037 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -10470,49 +10479,49 @@ unreachable end i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.029 - local.get $4 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.039 + local.get $2 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.029 - local.get $0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.039 + local.get $1 i32.const 1 i32.sub i32.const 2 - local.get $0 + local.get $1 i32.const 2 i32.le_s select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|030 - local.get $0 + local.set $3 + loop $while-continue|041 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $3 i32.add i32.load8_u i32.const 3 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.029 - local.get $1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.039 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|030 + local.set $1 + br $while-continue|041 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -10524,49 +10533,49 @@ unreachable end i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.032 - local.get $4 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.043 + local.get $2 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.032 - local.get $0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.043 + local.get $1 i32.const 1 i32.sub i32.const 100 - local.get $0 + local.get $1 i32.const 100 i32.le_s select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|033 - local.get $0 + local.set $3 + loop $while-continue|045 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $3 i32.add i32.load8_u i32.const 1 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.032 - local.get $1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.043 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|033 + local.set $1 + br $while-continue|045 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -10579,37 +10588,36 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.035 - local.get $4 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.047 + local.get $2 i32.load offset=8 local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.035 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.047 local.get $0 i32.const 10 i32.sub - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|036 - local.get $0 + local.set $0 + loop $while-continue|049 + local.get $1 i32.const 0 i32.ge_s if local.get $0 - local.tee $1 - local.get $2 + local.get $1 i32.add i32.load8_u i32.const 1 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.035 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.047 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|036 + local.set $1 + br $while-continue|049 end end i32.const -1 @@ -10628,37 +10636,36 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.038 - local.get $4 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.051 + local.get $2 i32.load offset=8 local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.038 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.051 local.get $0 i32.const 11 i32.sub - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|039 - local.get $0 + local.set $0 + loop $while-continue|053 + local.get $1 i32.const 0 i32.ge_s if local.get $0 - local.tee $1 - local.get $2 + local.get $1 i32.add i32.load8_u i32.const 1 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.038 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.051 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|039 + local.set $1 + br $while-continue|053 end end i32.const -1 @@ -10676,17 +10683,17 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.const 9 call $~lib/typedarray/Uint8ClampedArray#subarray - local.tee $4 + local.tee $2 i32.store offset=8 i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.041 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.055 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -10694,34 +10701,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.041 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.055 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|042 - local.get $0 + local.set $4 + loop $while-continue|057 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.041 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.055 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|042 + local.set $1 + br $while-continue|057 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -10733,11 +10740,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.044 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.059 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -10745,34 +10752,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.044 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.059 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|045 - local.get $0 + local.set $4 + loop $while-continue|061 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 4 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.044 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.059 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|045 + local.set $1 + br $while-continue|061 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -10782,11 +10789,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.047 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.063 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -10794,34 +10801,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.047 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.063 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|048 - local.get $0 + local.set $4 + loop $while-continue|065 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 5 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.047 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.063 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|048 + local.set $1 + br $while-continue|065 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -10833,11 +10840,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.050 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.067 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -10845,34 +10852,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.050 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.067 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|051 - local.get $0 + local.set $4 + loop $while-continue|069 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 9 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.050 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.067 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|051 + local.set $1 + br $while-continue|069 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -10884,11 +10891,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.053 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.071 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -10896,34 +10903,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.053 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.071 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|054 - local.get $0 + local.set $4 + loop $while-continue|073 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 10 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.053 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.071 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|054 + local.set $1 + br $while-continue|073 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -10935,11 +10942,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.056 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.075 + local.get $2 i32.load offset=8 local.tee $3 i32.const 0 @@ -10947,34 +10954,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.056 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.075 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|057 - local.get $0 + local.set $4 + loop $while-continue|077 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 11 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.056 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.075 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|057 + local.set $1 + br $while-continue|077 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -10986,11 +10993,11 @@ unreachable end i32.const 1 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.059 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.079 + local.get $2 i32.load offset=8 local.tee $3 i32.const 1 @@ -10998,34 +11005,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.059 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.079 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|060 - local.get $0 + local.set $4 + loop $while-continue|081 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 - local.get $2 + local.get $1 + local.tee $0 + local.get $4 i32.add i32.load8_u i32.const 5 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.059 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.079 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|060 + local.set $1 + br $while-continue|081 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -11037,11 +11044,11 @@ unreachable end i32.const 2 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.062 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.083 + local.get $2 i32.load offset=8 local.tee $3 i32.const 2 @@ -11049,34 +11056,34 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.062 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.083 + local.get $2 i32.load offset=4 local.set $2 - loop $while-continue|063 - local.get $0 + loop $while-continue|085 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 local.get $2 i32.add i32.load8_u i32.const 5 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.062 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.083 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|063 + local.set $1 + br $while-continue|085 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -11092,69 +11099,148 @@ i32.add global.set $~lib/memory/__stack_pointer ) - (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Int16Array,i16> - (local $0 i32) - (local $1 i32) + (func $~lib/typedarray/Int16Array#lastIndexOf@varargs (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 - i32.const 1 + block $1of1 + block $0of1 + block $outOfRange + global.get $~argumentsLength + i32.const 1 + i32.sub + br_table $0of1 $1of1 $outOfRange + end + unreachable + end + local.get $0 + i32.load offset=8 i32.const 1 - call $~lib/builtins/abort - unreachable + i32.shr_u + local.set $2 end + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 (result i32) + local.get $1 + local.set $3 + i32.const -1 + local.get $0 + i32.load offset=8 + i32.const 1 + i32.shr_u + local.tee $1 + i32.eqz + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 + drop + local.get $1 + local.get $2 + i32.add + local.get $1 + i32.const 1 + i32.sub + local.get $2 + local.get $1 + local.get $2 + i32.le_s + select + local.get $2 + i32.const 0 + i32.lt_s + select + local.set $1 + local.get $0 + i32.load offset=4 + local.set $2 + loop $while-continue|0 + local.get $1 + i32.const 0 + i32.ge_s + if + local.get $1 + local.tee $0 + local.get $1 + i32.const 1 + i32.shl + local.get $2 + i32.add + i32.load16_u + local.get $3 + i32.const 65535 + i32.and + i32.eq + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 + drop + local.get $0 + i32.const 1 + i32.sub + local.set $1 + br $while-continue|0 + end + end + i32.const -1 + end + ) + (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Int16Array,i16> + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) global.get $~lib/memory/__stack_pointer - local.tee $1 + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + if + i32.const 33040 + i32.const 33088 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 7728 i32.store - local.get $1 + local.get $0 i32.const 7740 i32.load - local.tee $1 + local.tee $0 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 loop $for-loop|0 local.get $0 local.get $1 - i32.lt_s + i32.gt_s if - local.get $4 - local.get $0 + local.get $2 + local.get $1 i32.const 7728 - local.get $0 + local.get $1 call $~lib/array/Array#__get i32.extend16_s call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end i32.const 0 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 - local.get $4 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -11164,34 +11250,34 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|0 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|0 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -11201,11 +11287,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.01 - local.get $4 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -11215,35 +11301,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.01 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|02 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 11 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.01 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|02 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -11255,11 +11341,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.04 - local.get $4 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -11269,35 +11355,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.04 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|05 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 65535 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.04 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|05 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -11309,11 +11395,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.07 - local.get $4 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -11323,35 +11409,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.07 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|08 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 3 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.07 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|08 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -11363,11 +11449,11 @@ unreachable end i32.const 2 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.010 - local.get $4 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -11378,35 +11464,35 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.010 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|011 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 3 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.010 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|011 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -11418,11 +11504,11 @@ unreachable end i32.const 3 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.013 - local.get $4 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -11433,35 +11519,35 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.013 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|014 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 3 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.013 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|014 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -11473,11 +11559,11 @@ unreachable end i32.const 4 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.016 - local.get $4 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -11488,35 +11574,35 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.016 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|017 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 3 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.016 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|017 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -11528,11 +11614,11 @@ unreachable end i32.const 10 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.019 - local.get $4 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -11543,35 +11629,35 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.019 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|020 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 1 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.019 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|020 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -11583,9 +11669,9 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.022 - local.get $4 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -11605,36 +11691,36 @@ i32.const 0 i32.gt_s select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|023 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 1 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.022 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|023 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -11647,435 +11733,217 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 - i32.load offset=8 + local.get $2 + i32.const 0 + call $~lib/typedarray/Int16Array#lastIndexOf@varargs + if + i32.const 0 + i32.const 1568 + i32.const 613 + i32.const 3 + call $~lib/builtins/abort + unreachable + end i32.const 1 - i32.shr_u - local.tee $2 - local.set $0 + global.set $~argumentsLength + local.get $2 + i32.const 11 + call $~lib/typedarray/Int16Array#lastIndexOf@varargs + i32.const -1 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 614 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~argumentsLength + local.get $2 + i32.const -1 + call $~lib/typedarray/Int16Array#lastIndexOf@varargs + i32.const -1 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 615 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~argumentsLength + local.get $2 + i32.const 3 + call $~lib/typedarray/Int16Array#lastIndexOf@varargs + i32.const 3 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 616 + i32.const 3 + call $~lib/builtins/abort + unreachable + end i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 local.get $2 + i32.load offset=8 + i32.const 1 + i32.shr_u + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 local.get $0 - local.get $2 - i32.add - local.get $2 i32.const 1 i32.sub + i32.const 4 local.get $0 - local.get $0 - local.get $2 - i32.ge_s - select - local.get $0 - i32.const 0 - i32.lt_s + i32.const 4 + i32.le_u select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|00 - local.get $0 + local.set $0 + loop $while-continue|024 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $0 i32.add i32.load16_u - i32.eqz + i32.const 3 + i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|00 + local.set $1 + br $while-continue|024 end end i32.const -1 local.set $1 end local.get $1 + i32.const 3 + i32.ne if i32.const 0 i32.const 1568 - i32.const 613 + i32.const 617 i32.const 3 call $~lib/builtins/abort unreachable end - i32.const 1 - global.set $~argumentsLength - local.get $4 - i32.load offset=8 - i32.const 1 - i32.shr_u - local.tee $2 - local.set $0 i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.05 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.01 local.get $2 + i32.load offset=8 + i32.const 1 + i32.shr_u + local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.05 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.01 local.get $0 - local.get $2 - i32.add - local.get $2 i32.const 1 i32.sub + i32.const 3 local.get $0 - local.get $0 - local.get $2 - i32.ge_s - select - local.get $0 - i32.const 0 - i32.lt_s + i32.const 3 + i32.le_u select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|06 - local.get $0 + local.set $0 + loop $while-continue|03 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $0 i32.add i32.load16_u - i32.const 11 + i32.const 3 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.05 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.01 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|06 + local.set $1 + br $while-continue|03 end end i32.const -1 local.set $1 end local.get $1 - i32.const -1 + i32.const 3 i32.ne if i32.const 0 i32.const 1568 - i32.const 614 + i32.const 618 i32.const 3 call $~lib/builtins/abort unreachable end - i32.const 1 - global.set $~argumentsLength - local.get $4 - i32.load offset=8 - i32.const 1 - i32.shr_u - local.tee $2 - local.set $0 i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.011 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.05 local.get $2 + i32.load offset=8 + i32.const 1 + i32.shr_u + local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.011 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.05 local.get $0 - local.get $2 - i32.add - local.get $2 i32.const 1 i32.sub + i32.const 2 local.get $0 - local.get $0 - local.get $2 - i32.ge_s + i32.const 2 + i32.le_u select - local.get $0 - i32.const 0 - i32.lt_s - select - local.set $0 - local.get $4 - i32.load offset=4 - local.set $2 - loop $while-continue|012 - local.get $0 - i32.const 0 - i32.ge_s - if - local.get $0 - local.tee $1 - i32.const 1 - i32.shl - local.get $2 - i32.add - i32.load16_u - i32.const 65535 - i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.011 - local.get $1 - i32.const 1 - i32.sub - local.set $0 - br $while-continue|012 - end - end - i32.const -1 local.set $1 - end - local.get $1 - i32.const -1 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 615 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~argumentsLength - local.get $4 - i32.load offset=8 - i32.const 1 - i32.shr_u - local.tee $2 - local.set $0 - i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.017 - local.get $2 - i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.017 - local.get $0 - local.get $2 - i32.add local.get $2 - i32.const 1 - i32.sub - local.get $0 - local.get $0 - local.get $2 - i32.ge_s - select - local.get $0 - i32.const 0 - i32.lt_s - select - local.set $0 - local.get $4 i32.load offset=4 - local.set $2 - loop $while-continue|018 - local.get $0 - i32.const 0 - i32.ge_s - if - local.get $0 - local.tee $1 - i32.const 1 - i32.shl - local.get $2 - i32.add - i32.load16_u - i32.const 3 - i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.017 - local.get $1 - i32.const 1 - i32.sub - local.set $0 - br $while-continue|018 - end - end - i32.const -1 - local.set $1 - end - local.get $1 - i32.const 3 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 616 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.019 - local.get $4 - i32.load offset=8 - i32.const 1 - i32.shr_u - local.tee $0 - i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.019 - local.get $0 - i32.const 1 - i32.sub - i32.const 4 - local.get $0 - i32.const 4 - i32.le_u - select local.set $0 - local.get $4 - i32.load offset=4 - local.set $2 - loop $while-continue|024 - local.get $0 + loop $while-continue|07 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 - i32.const 1 - i32.shl - local.get $2 - i32.add - i32.load16_u - i32.const 3 - i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.019 local.get $1 i32.const 1 - i32.sub - local.set $0 - br $while-continue|024 - end - end - i32.const -1 - local.set $1 - end - local.get $1 - i32.const 3 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 617 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.026 - local.get $4 - i32.load offset=8 - i32.const 1 - i32.shr_u - local.tee $0 - i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.026 - local.get $0 - i32.const 1 - i32.sub - i32.const 3 - local.get $0 - i32.const 3 - i32.le_u - select - local.set $0 - local.get $4 - i32.load offset=4 - local.set $2 - loop $while-continue|027 - local.get $0 - i32.const 0 - i32.ge_s - if - local.get $0 - local.tee $1 - i32.const 1 i32.shl - local.get $2 - i32.add - i32.load16_u - i32.const 3 - i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.026 - local.get $1 - i32.const 1 - i32.sub - local.set $0 - br $while-continue|027 - end - end - i32.const -1 - local.set $1 - end - local.get $1 - i32.const 3 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 618 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.029 - local.get $4 - i32.load offset=8 - i32.const 1 - i32.shr_u - local.tee $0 - i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.029 - local.get $0 - i32.const 1 - i32.sub - i32.const 2 - local.get $0 - i32.const 2 - i32.le_u - select - local.set $0 - local.get $4 - i32.load offset=4 - local.set $2 - loop $while-continue|030 - local.get $0 - i32.const 0 - i32.ge_s - if local.get $0 - local.tee $1 - i32.const 1 - i32.shl - local.get $2 i32.add i32.load16_u i32.const 3 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.029 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.05 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|030 + local.set $1 + br $while-continue|07 end end i32.const -1 @@ -12094,14 +11962,14 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.032 - local.get $4 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.09 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.032 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.09 local.get $0 i32.const 1 i32.sub @@ -12110,30 +11978,29 @@ i32.const 100 i32.le_u select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|033 - local.get $0 + local.set $0 + loop $while-continue|01125 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $0 i32.add i32.load16_u i32.const 1 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.032 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.09 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|033 + local.set $1 + br $while-continue|01125 end end i32.const -1 @@ -12152,41 +12019,40 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.035 - local.get $4 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.013 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.035 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.013 local.get $0 i32.const 10 i32.sub - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|036 - local.get $0 + local.set $0 + loop $while-continue|015 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $0 i32.add i32.load16_u i32.const 1 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.035 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.013 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|036 + local.set $1 + br $while-continue|015 end end i32.const -1 @@ -12205,41 +12071,40 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.038 - local.get $4 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.017 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.038 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.017 local.get $0 i32.const 11 i32.sub - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|039 - local.get $0 + local.set $0 + loop $while-continue|019 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $0 i32.add i32.load16_u i32.const 1 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.038 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.017 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|039 + local.set $1 + br $while-continue|019 end end i32.const -1 @@ -12257,17 +12122,17 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.const 9 call $~lib/typedarray/Int16Array#subarray - local.tee $4 + local.tee $2 i32.store offset=8 i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.041 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.027 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -12276,36 +12141,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.041 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.027 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|042 - local.get $0 + local.set $4 + loop $while-continue|028 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.041 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.027 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|042 + local.set $1 + br $while-continue|028 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -12317,11 +12182,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.044 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.030 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -12330,36 +12195,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.044 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.030 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|045 - local.get $0 + local.set $4 + loop $while-continue|031 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 4 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.044 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.030 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|045 + local.set $1 + br $while-continue|031 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -12369,11 +12234,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.047 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.033 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -12382,36 +12247,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.047 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.033 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|048 - local.get $0 + local.set $4 + loop $while-continue|034 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 5 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.047 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.033 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|048 + local.set $1 + br $while-continue|034 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -12423,11 +12288,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.050 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.036 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -12436,36 +12301,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.050 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.036 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|051 - local.get $0 + local.set $4 + loop $while-continue|037 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 9 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.050 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.036 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|051 + local.set $1 + br $while-continue|037 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -12477,11 +12342,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.053 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.039 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -12490,36 +12355,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.053 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.039 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|054 - local.get $0 + local.set $4 + loop $while-continue|040 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 10 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.053 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.039 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|054 + local.set $1 + br $while-continue|040 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -12531,11 +12396,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.056 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.042 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -12544,36 +12409,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.056 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.042 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|057 - local.get $0 + local.set $4 + loop $while-continue|043 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 11 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.056 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.042 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|057 + local.set $1 + br $while-continue|043 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -12585,11 +12450,11 @@ unreachable end i32.const 1 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.059 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.045 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -12599,36 +12464,36 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.059 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.045 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|060 - local.get $0 + local.set $4 + loop $while-continue|046 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 5 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.059 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.045 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|060 + local.set $1 + br $while-continue|046 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -12640,11 +12505,11 @@ unreachable end i32.const 2 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.062 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.048 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -12654,17 +12519,17 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.062 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.048 + local.get $2 i32.load offset=4 local.set $2 - loop $while-continue|063 - local.get $0 + loop $while-continue|049 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl local.get $2 @@ -12672,18 +12537,18 @@ i32.load16_u i32.const 5 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.062 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.048 local.get $1 i32.const 1 i32.add - local.set $0 - br $while-continue|063 + local.set $1 + br $while-continue|049 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -12721,48 +12586,48 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 7728 i32.store - local.get $1 + local.get $0 i32.const 7740 i32.load - local.tee $1 + local.tee $0 call $~lib/typedarray/Uint16Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 loop $for-loop|0 local.get $0 local.get $1 - i32.lt_s + i32.gt_s if - local.get $4 - local.get $0 + local.get $2 + local.get $1 i32.const 7728 - local.get $0 + local.get $1 call $~lib/array/Array#__get i32.const 65535 i32.and call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end i32.const 0 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 - local.get $4 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -12772,34 +12637,34 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|0 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|0 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -12809,11 +12674,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.01 - local.get $4 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -12823,35 +12688,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.01 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|02 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 11 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.01 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|02 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -12863,11 +12728,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.04 - local.get $4 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -12877,35 +12742,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.04 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|05 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 65535 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.04 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|05 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -12917,11 +12782,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.07 - local.get $4 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -12931,35 +12796,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.07 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|08 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 3 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.07 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|08 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -12971,11 +12836,11 @@ unreachable end i32.const 2 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.010 - local.get $4 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -12986,35 +12851,35 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.010 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|011 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 3 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.010 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|011 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -13026,11 +12891,11 @@ unreachable end i32.const 3 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.013 - local.get $4 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -13041,35 +12906,35 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.013 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|014 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 3 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.013 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|014 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -13081,11 +12946,11 @@ unreachable end i32.const 4 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.016 - local.get $4 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -13096,35 +12961,35 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.016 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|017 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 3 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.016 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|017 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -13136,11 +13001,11 @@ unreachable end i32.const 10 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.019 - local.get $4 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -13151,35 +13016,35 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.019 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|020 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 1 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.019 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|020 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -13191,9 +13056,9 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.022 - local.get $4 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -13213,36 +13078,36 @@ i32.const 0 i32.gt_s select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|023 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 1 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.022 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|023 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -13255,192 +13120,217 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 - i32.load offset=8 + local.get $2 + i32.const 0 + call $~lib/typedarray/Int16Array#lastIndexOf@varargs + if + i32.const 0 + i32.const 1568 + i32.const 613 + i32.const 3 + call $~lib/builtins/abort + unreachable + end i32.const 1 - i32.shr_u - local.tee $2 - local.set $0 + global.set $~argumentsLength + local.get $2 + i32.const 11 + call $~lib/typedarray/Int16Array#lastIndexOf@varargs + i32.const -1 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 614 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~argumentsLength + local.get $2 + i32.const -1 + call $~lib/typedarray/Int16Array#lastIndexOf@varargs + i32.const -1 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 615 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~argumentsLength + local.get $2 + i32.const 3 + call $~lib/typedarray/Int16Array#lastIndexOf@varargs + i32.const 3 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 616 + i32.const 3 + call $~lib/builtins/abort + unreachable + end i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 local.get $2 + i32.load offset=8 + i32.const 1 + i32.shr_u + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 local.get $0 - local.get $2 - i32.add - local.get $2 i32.const 1 i32.sub + i32.const 4 local.get $0 - local.get $0 - local.get $2 - i32.ge_s - select - local.get $0 - i32.const 0 - i32.lt_s + i32.const 4 + i32.le_u select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|00 - local.get $0 + local.set $0 + loop $while-continue|024 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $0 i32.add i32.load16_u - i32.eqz + i32.const 3 + i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|00 + local.set $1 + br $while-continue|024 end end i32.const -1 local.set $1 end local.get $1 + i32.const 3 + i32.ne if i32.const 0 i32.const 1568 - i32.const 613 + i32.const 617 i32.const 3 call $~lib/builtins/abort unreachable end - i32.const 1 - global.set $~argumentsLength - local.get $4 - i32.load offset=8 - i32.const 1 - i32.shr_u - local.tee $2 - local.set $0 i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.05 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.01 local.get $2 + i32.load offset=8 + i32.const 1 + i32.shr_u + local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.05 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.01 local.get $0 - local.get $2 - i32.add - local.get $2 i32.const 1 i32.sub + i32.const 3 local.get $0 - local.get $0 - local.get $2 - i32.ge_s - select - local.get $0 - i32.const 0 - i32.lt_s + i32.const 3 + i32.le_u select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|06 - local.get $0 + local.set $0 + loop $while-continue|03 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $0 i32.add i32.load16_u - i32.const 11 + i32.const 3 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.05 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.01 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|06 + local.set $1 + br $while-continue|03 end end i32.const -1 local.set $1 end local.get $1 - i32.const -1 + i32.const 3 i32.ne if i32.const 0 i32.const 1568 - i32.const 614 + i32.const 618 i32.const 3 call $~lib/builtins/abort unreachable end - i32.const 1 - global.set $~argumentsLength - local.get $4 - i32.load offset=8 - i32.const 1 - i32.shr_u - local.tee $2 - local.set $0 i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.011 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.05 local.get $2 + i32.load offset=8 + i32.const 1 + i32.shr_u + local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.011 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.05 local.get $0 - local.get $2 - i32.add - local.get $2 i32.const 1 i32.sub + i32.const 2 local.get $0 - local.get $0 - local.get $2 - i32.ge_s - select - local.get $0 - i32.const 0 - i32.lt_s + i32.const 2 + i32.le_u select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|012 - local.get $0 + local.set $0 + loop $while-continue|07 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $0 i32.add i32.load16_u - i32.const 65535 + i32.const 3 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.011 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.05 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|012 + local.set $1 + br $while-continue|07 end end i32.const -1 @@ -13452,349 +13342,104 @@ if i32.const 0 i32.const 1568 - i32.const 615 + i32.const 619 i32.const 3 call $~lib/builtins/abort unreachable end - i32.const 1 - global.set $~argumentsLength - local.get $4 - i32.load offset=8 - i32.const 1 - i32.shr_u - local.tee $2 - local.set $0 i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.017 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.09 local.get $2 + i32.load offset=8 + i32.const 1 + i32.shr_u + local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.017 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.09 local.get $0 - local.get $2 - i32.add - local.get $2 i32.const 1 i32.sub + i32.const 100 local.get $0 - local.get $0 - local.get $2 - i32.ge_s - select - local.get $0 - i32.const 0 - i32.lt_s + i32.const 100 + i32.le_u select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|018 - local.get $0 + local.set $0 + loop $while-continue|01125 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $0 i32.add i32.load16_u - i32.const 3 + i32.const 1 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.017 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.09 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|018 + local.set $1 + br $while-continue|01125 end end i32.const -1 local.set $1 end local.get $1 - i32.const 3 + i32.const 1 i32.ne if i32.const 0 i32.const 1568 - i32.const 616 + i32.const 620 i32.const 3 call $~lib/builtins/abort unreachable end i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.019 - local.get $4 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.013 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.019 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.013 local.get $0 - i32.const 1 + i32.const 10 i32.sub - i32.const 4 - local.get $0 - i32.const 4 - i32.le_u - select - local.set $0 - local.get $4 - i32.load offset=4 - local.set $2 - loop $while-continue|024 - local.get $0 - i32.const 0 - i32.ge_s - if - local.get $0 - local.tee $1 - i32.const 1 - i32.shl - local.get $2 - i32.add - i32.load16_u - i32.const 3 - i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.019 - local.get $1 - i32.const 1 - i32.sub - local.set $0 - br $while-continue|024 - end - end - i32.const -1 local.set $1 - end - local.get $1 - i32.const 3 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 617 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.026 - local.get $4 - i32.load offset=8 - i32.const 1 - i32.shr_u - local.tee $0 - i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.026 - local.get $0 - i32.const 1 - i32.sub - i32.const 3 - local.get $0 - i32.const 3 - i32.le_u - select - local.set $0 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|027 - local.get $0 - i32.const 0 - i32.ge_s - if - local.get $0 - local.tee $1 - i32.const 1 - i32.shl - local.get $2 - i32.add - i32.load16_u - i32.const 3 - i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.026 - local.get $1 - i32.const 1 - i32.sub - local.set $0 - br $while-continue|027 - end - end - i32.const -1 - local.set $1 - end - local.get $1 - i32.const 3 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 618 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.029 - local.get $4 - i32.load offset=8 - i32.const 1 - i32.shr_u - local.tee $0 - i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.029 - local.get $0 - i32.const 1 - i32.sub - i32.const 2 - local.get $0 - i32.const 2 - i32.le_u - select local.set $0 - local.get $4 - i32.load offset=4 - local.set $2 - loop $while-continue|030 - local.get $0 + loop $while-continue|015 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 - i32.const 1 - i32.shl - local.get $2 - i32.add - i32.load16_u - i32.const 3 - i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.029 local.get $1 i32.const 1 - i32.sub - local.set $0 - br $while-continue|030 - end - end - i32.const -1 - local.set $1 - end - local.get $1 - i32.const -1 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 619 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.032 - local.get $4 - i32.load offset=8 - i32.const 1 - i32.shr_u - local.tee $0 - i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.032 - local.get $0 - i32.const 1 - i32.sub - i32.const 100 - local.get $0 - i32.const 100 - i32.le_u - select - local.set $0 - local.get $4 - i32.load offset=4 - local.set $2 - loop $while-continue|033 - local.get $0 - i32.const 0 - i32.ge_s - if - local.get $0 - local.tee $1 - i32.const 1 i32.shl - local.get $2 - i32.add - i32.load16_u - i32.const 1 - i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.032 - local.get $1 - i32.const 1 - i32.sub - local.set $0 - br $while-continue|033 - end - end - i32.const -1 - local.set $1 - end - local.get $1 - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 620 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.035 - local.get $4 - i32.load offset=8 - i32.const 1 - i32.shr_u - local.tee $0 - i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.035 - local.get $0 - i32.const 10 - i32.sub - local.set $0 - local.get $4 - i32.load offset=4 - local.set $2 - loop $while-continue|036 - local.get $0 - i32.const 0 - i32.ge_s - if local.get $0 - local.tee $1 - i32.const 1 - i32.shl - local.get $2 i32.add i32.load16_u i32.const 1 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.035 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.013 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|036 + local.set $1 + br $while-continue|015 end end i32.const -1 @@ -13813,41 +13458,40 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.038 - local.get $4 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.017 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.038 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.017 local.get $0 i32.const 11 i32.sub - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|039 - local.get $0 + local.set $0 + loop $while-continue|019 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $0 i32.add i32.load16_u i32.const 1 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.038 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.017 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|039 + local.set $1 + br $while-continue|019 end end i32.const -1 @@ -13865,17 +13509,17 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.const 9 call $~lib/typedarray/Uint16Array#subarray - local.tee $4 + local.tee $2 i32.store offset=8 i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.041 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.027 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -13884,36 +13528,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.041 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.027 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|042 - local.get $0 + local.set $4 + loop $while-continue|028 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.041 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.027 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|042 + local.set $1 + br $while-continue|028 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -13925,11 +13569,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.044 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.030 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -13938,36 +13582,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.044 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.030 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|045 - local.get $0 + local.set $4 + loop $while-continue|031 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 4 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.044 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.030 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|045 + local.set $1 + br $while-continue|031 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -13977,11 +13621,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.047 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.033 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -13990,36 +13634,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.047 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.033 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|048 - local.get $0 + local.set $4 + loop $while-continue|034 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 5 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.047 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.033 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|048 + local.set $1 + br $while-continue|034 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -14031,11 +13675,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.050 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.036 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -14044,36 +13688,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.050 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.036 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|051 - local.get $0 + local.set $4 + loop $while-continue|037 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 9 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.050 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.036 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|051 + local.set $1 + br $while-continue|037 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -14085,11 +13729,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.053 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.039 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -14098,36 +13742,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.053 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.039 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|054 - local.get $0 + local.set $4 + loop $while-continue|040 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 10 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.053 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.039 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|054 + local.set $1 + br $while-continue|040 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -14139,11 +13783,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.056 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.042 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -14152,36 +13796,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.056 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.042 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|057 - local.get $0 + local.set $4 + loop $while-continue|043 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 11 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.056 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.042 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|057 + local.set $1 + br $while-continue|043 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -14193,11 +13837,11 @@ unreachable end i32.const 1 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.059 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.045 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -14207,36 +13851,36 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.059 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.045 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|060 - local.get $0 + local.set $4 + loop $while-continue|046 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_u i32.const 5 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.059 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.045 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|060 + local.set $1 + br $while-continue|046 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -14248,11 +13892,11 @@ unreachable end i32.const 2 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.062 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.048 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u @@ -14262,17 +13906,17 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.062 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.048 + local.get $2 i32.load offset=4 local.set $2 - loop $while-continue|063 - local.get $0 + loop $while-continue|049 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.shl local.get $2 @@ -14280,18 +13924,18 @@ i32.load16_u i32.const 5 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.062 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.048 local.get $1 i32.const 1 i32.add - local.set $0 - br $while-continue|063 + local.set $1 + br $while-continue|049 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -14307,90 +13951,169 @@ i32.add global.set $~lib/memory/__stack_pointer ) - (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Int32Array,i32> - (local $0 i32) - (local $1 i32) + (func $~lib/typedarray/Int32Array#lastIndexOf@varargs (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable + block $1of1 + block $0of1 + block $outOfRange + global.get $~argumentsLength + i32.const 1 + i32.sub + br_table $0of1 $1of1 $outOfRange + end + unreachable + end + local.get $0 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.set $2 end - global.get $~lib/memory/__stack_pointer - local.tee $1 - i64.const 0 - i64.store - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $1 - i32.const 7728 - i32.store - local.get $1 - i32.const 7740 - i32.load - local.tee $1 - call $~lib/typedarray/Int32Array#constructor - local.tee $4 - i32.store offset=4 - loop $for-loop|0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) + local.get $1 + local.set $3 + i32.const -1 local.get $0 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.tee $1 + i32.eqz + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 + drop local.get $1 - i32.lt_s - if - local.get $4 - local.get $0 + local.get $2 + i32.add + local.get $1 + i32.const 1 + i32.sub + local.get $2 + local.get $1 + local.get $2 + i32.le_s + select + local.get $2 + i32.const 0 + i32.lt_s + select + local.set $1 + local.get $0 + i32.load offset=4 + local.set $2 + loop $while-continue|0 + local.get $1 + i32.const 0 + i32.ge_s + if + local.get $1 + local.tee $0 + local.get $3 + local.get $1 + i32.const 2 + i32.shl + local.get $2 + i32.add + i32.load + i32.eq + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 + drop + local.get $0 + i32.const 1 + i32.sub + local.set $1 + br $while-continue|0 + end + end + i32.const -1 + end + ) + (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Int32Array,i32> + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + if + i32.const 33040 + i32.const 33088 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 7728 + i32.store + local.get $0 + i32.const 7740 + i32.load + local.tee $0 + call $~lib/typedarray/Int32Array#constructor + local.tee $2 + i32.store offset=4 + loop $for-loop|0 + local.get $0 + local.get $1 + i32.gt_s + if + local.get $2 + local.get $1 i32.const 7728 - local.get $0 + local.get $1 call $~lib/array/Array#__get call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end i32.const 0 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 - local.get $4 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 - local.get $4 + local.get $3 i32.load offset=4 - local.set $2 + local.set $3 loop $while-continue|0 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.eqz @@ -14416,32 +14139,34 @@ end i32.const 0 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.01 - local.get $4 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.01 - local.get $4 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|02 + local.set $3 + loop $while-continue|03 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 11 @@ -14451,7 +14176,7 @@ i32.const 1 i32.add local.set $0 - br $while-continue|02 + br $while-continue|03 end end i32.const -1 @@ -14470,42 +14195,44 @@ end i32.const 0 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.04 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.05 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.04 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.05 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|05 + local.set $3 + loop $while-continue|07 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const -1 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.04 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.05 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|05 + br $while-continue|07 end end i32.const -1 @@ -14524,42 +14251,44 @@ end i32.const 0 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.07 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.09 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.07 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.09 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|08 + local.set $3 + loop $while-continue|011 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.07 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.09 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|08 + br $while-continue|011 end end i32.const -1 @@ -14578,43 +14307,45 @@ end i32.const 2 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.010 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.013 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 2 i32.le_u i32.const 1 - local.get $3 - select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.010 local.get $4 + select + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.013 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|011 + local.set $3 + loop $while-continue|015 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.010 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.013 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|011 + br $while-continue|015 end end i32.const -1 @@ -14633,43 +14364,45 @@ end i32.const 3 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.013 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.017 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 3 i32.le_u i32.const 1 - local.get $3 - select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.013 local.get $4 + select + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.017 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|014 + local.set $3 + loop $while-continue|019 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.013 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.017 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|014 + br $while-continue|019 end end i32.const -1 @@ -14688,43 +14421,45 @@ end i32.const 4 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.016 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.021 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 4 i32.le_u i32.const 1 - local.get $3 - select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.016 local.get $4 + select + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.021 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|017 + local.set $3 + loop $while-continue|023 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.016 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.021 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|017 + br $while-continue|023 end end i32.const -1 @@ -14743,43 +14478,45 @@ end i32.const 10 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.019 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.025 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 10 i32.le_u i32.const 1 - local.get $3 - select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.019 local.get $4 + select + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.025 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|020 + local.set $3 + loop $while-continue|027 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 1 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.019 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.025 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|020 + br $while-continue|027 end end i32.const -1 @@ -14796,10 +14533,12 @@ call $~lib/builtins/abort unreachable end - i32.const -1 + local.get $2 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.022 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.029 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -14809,7 +14548,7 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.022 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.029 local.get $3 i32.const 100 i32.sub @@ -14820,35 +14559,34 @@ i32.gt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 - local.set $2 - loop $while-continue|023 + local.set $1 + loop $while-continue|031 local.get $0 local.get $3 i32.lt_s if local.get $0 - local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add i32.load i32.const 1 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.022 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.029 + local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|023 + br $while-continue|031 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -14861,38 +14599,87 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.tee $2 - local.set $0 + local.get $2 + i32.const 0 + call $~lib/typedarray/Int32Array#lastIndexOf@varargs + if + i32.const 0 + i32.const 1568 + i32.const 613 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~argumentsLength + local.get $2 + i32.const 11 + call $~lib/typedarray/Int32Array#lastIndexOf@varargs + i32.const -1 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 614 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~argumentsLength + local.get $2 + i32.const -1 + call $~lib/typedarray/Int32Array#lastIndexOf@varargs + i32.const -1 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 615 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~argumentsLength + local.get $2 + i32.const 3 + call $~lib/typedarray/Int32Array#lastIndexOf@varargs + i32.const 3 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 616 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 local.get $2 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 local.get $0 - local.get $2 - i32.add - local.get $2 i32.const 1 i32.sub + i32.const 4 local.get $0 - local.get $0 - local.get $2 - i32.ge_s - select - local.get $0 - i32.const 0 - i32.lt_s + i32.const 4 + i32.le_u select local.set $0 - local.get $4 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|00 + local.set $3 + loop $while-continue|033 local.get $0 i32.const 0 i32.ge_s @@ -14901,64 +14688,58 @@ local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load - i32.eqz + i32.const 3 + i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 local.get $1 i32.const 1 i32.sub local.set $0 - br $while-continue|00 + br $while-continue|033 end end i32.const -1 local.set $1 end local.get $1 + i32.const 3 + i32.ne if i32.const 0 i32.const 1568 - i32.const 613 + i32.const 617 i32.const 3 call $~lib/builtins/abort unreachable end - i32.const 1 - global.set $~argumentsLength - local.get $4 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.tee $2 - local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.05 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.035 local.get $2 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.05 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.035 local.get $0 - local.get $2 - i32.add - local.get $2 i32.const 1 i32.sub + i32.const 3 local.get $0 - local.get $0 - local.get $2 - i32.ge_s - select - local.get $0 - i32.const 0 - i32.lt_s + i32.const 3 + i32.le_u select local.set $0 - local.get $4 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|06 + local.set $3 + loop $while-continue|037 local.get $0 i32.const 0 i32.ge_s @@ -14967,67 +14748,58 @@ local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load - i32.const 11 + i32.const 3 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.05 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.035 local.get $1 i32.const 1 i32.sub local.set $0 - br $while-continue|06 + br $while-continue|037 end end i32.const -1 local.set $1 end local.get $1 - i32.const -1 + i32.const 3 i32.ne if i32.const 0 i32.const 1568 - i32.const 614 + i32.const 618 i32.const 3 call $~lib/builtins/abort unreachable end - i32.const 1 - global.set $~argumentsLength - local.get $4 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.tee $2 - local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.011 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.039 local.get $2 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.011 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.039 local.get $0 - local.get $2 - i32.add - local.get $2 i32.const 1 i32.sub + i32.const 2 local.get $0 - local.get $0 - local.get $2 - i32.ge_s - select - local.get $0 - i32.const 0 - i32.lt_s + i32.const 2 + i32.le_u select local.set $0 - local.get $4 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|012 + local.set $3 + loop $while-continue|041 local.get $0 i32.const 0 i32.ge_s @@ -15036,17 +14808,17 @@ local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load - i32.const -1 + i32.const 3 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.011 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.039 local.get $1 i32.const 1 i32.sub local.set $0 - br $while-continue|012 + br $while-continue|041 end end i32.const -1 @@ -15058,45 +14830,36 @@ if i32.const 0 i32.const 1568 - i32.const 615 + i32.const 619 i32.const 3 call $~lib/builtins/abort unreachable end - i32.const 1 - global.set $~argumentsLength - local.get $4 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.tee $2 - local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.017 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.043 local.get $2 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.017 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.043 local.get $0 - local.get $2 - i32.add - local.get $2 i32.const 1 i32.sub + i32.const 100 local.get $0 - local.get $0 - local.get $2 - i32.ge_s - select - local.get $0 - i32.const 0 - i32.lt_s + i32.const 100 + i32.le_u select local.set $0 - local.get $4 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|018 + local.set $3 + loop $while-continue|045 local.get $0 i32.const 0 i32.ge_s @@ -15105,308 +14868,77 @@ local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load - i32.const 3 + i32.const 1 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.017 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.043 local.get $1 i32.const 1 i32.sub local.set $0 - br $while-continue|018 + br $while-continue|045 end end i32.const -1 local.set $1 end local.get $1 - i32.const 3 + i32.const 1 i32.ne if i32.const 0 i32.const 1568 - i32.const 616 + i32.const 620 i32.const 3 call $~lib/builtins/abort unreachable end - i32.const -1 + local.get $2 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.019 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.047 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 + local.tee $3 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.019 - local.get $0 - i32.const 1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.047 + local.get $3 + i32.const 10 i32.sub - i32.const 4 - local.get $0 - i32.const 4 - i32.le_u - select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 - local.set $2 - loop $while-continue|024 - local.get $0 - i32.const 0 - i32.ge_s - if - local.get $0 - local.tee $1 - i32.const 2 - i32.shl - local.get $2 - i32.add - i32.load - i32.const 3 - i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.019 - local.get $1 - i32.const 1 - i32.sub - local.set $0 - br $while-continue|024 - end - end - i32.const -1 - local.set $1 - end - local.get $1 - i32.const 3 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 617 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.026 - local.get $4 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.tee $0 - i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.026 - local.get $0 - i32.const 1 - i32.sub - i32.const 3 - local.get $0 - i32.const 3 - i32.le_u - select - local.set $0 - local.get $4 - i32.load offset=4 - local.set $2 - loop $while-continue|027 - local.get $0 - i32.const 0 - i32.ge_s - if - local.get $0 - local.tee $1 - i32.const 2 - i32.shl - local.get $2 - i32.add - i32.load - i32.const 3 - i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.026 - local.get $1 - i32.const 1 - i32.sub - local.set $0 - br $while-continue|027 - end - end - i32.const -1 local.set $1 - end - local.get $1 - i32.const 3 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 618 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.029 - local.get $4 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.tee $0 - i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.029 - local.get $0 - i32.const 1 - i32.sub - i32.const 2 - local.get $0 - i32.const 2 - i32.le_u - select - local.set $0 - local.get $4 - i32.load offset=4 - local.set $2 - loop $while-continue|030 + loop $while-continue|049 local.get $0 i32.const 0 i32.ge_s if local.get $0 - local.tee $1 i32.const 2 i32.shl - local.get $2 - i32.add - i32.load - i32.const 3 - i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.029 local.get $1 - i32.const 1 - i32.sub - local.set $0 - br $while-continue|030 - end - end - i32.const -1 - local.set $1 - end - local.get $1 - i32.const -1 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 619 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.032 - local.get $4 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.tee $0 - i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.032 - local.get $0 - i32.const 1 - i32.sub - i32.const 100 - local.get $0 - i32.const 100 - i32.le_u - select - local.set $0 - local.get $4 - i32.load offset=4 - local.set $2 - loop $while-continue|033 - local.get $0 - i32.const 0 - i32.ge_s - if - local.get $0 - local.tee $1 - i32.const 2 - i32.shl - local.get $2 i32.add i32.load i32.const 1 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.032 - local.get $1 - i32.const 1 - i32.sub - local.set $0 - br $while-continue|033 - end - end - i32.const -1 - local.set $1 - end - local.get $1 - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 620 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.035 - local.get $4 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.tee $0 - i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.035 - local.get $0 - i32.const 10 - i32.sub - local.set $0 - local.get $4 - i32.load offset=4 - local.set $2 - loop $while-continue|036 - local.get $0 - i32.const 0 - i32.ge_s - if + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.047 local.get $0 - local.tee $1 - i32.const 2 - i32.shl - local.get $2 - i32.add - i32.load - i32.const 1 - i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.035 - local.get $1 i32.const 1 i32.sub local.set $0 - br $while-continue|036 + br $while-continue|049 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -15417,49 +14949,50 @@ call $~lib/builtins/abort unreachable end - i32.const -1 + local.get $2 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.038 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.051 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 + local.tee $3 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.038 - local.get $0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.051 + local.get $3 i32.const 11 i32.sub local.set $0 - local.get $4 + local.get $1 i32.load offset=4 - local.set $2 - loop $while-continue|039 + local.set $1 + loop $while-continue|053 local.get $0 i32.const 0 i32.ge_s if local.get $0 - local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add i32.load i32.const 1 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.038 - local.get $1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.051 + local.get $0 i32.const 1 i32.sub local.set $0 - br $while-continue|039 + br $while-continue|053 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -15471,50 +15004,52 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.const 4 i32.const 9 call $~lib/typedarray/Int32Array#subarray - local.tee $4 + local.tee $2 i32.store offset=8 i32.const 0 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.041 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.055 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.041 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.055 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|042 + local.set $3 + loop $while-continue|057 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.041 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.055 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|042 + br $while-continue|057 end end i32.const -1 @@ -15533,42 +15068,44 @@ end i32.const 0 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.044 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.059 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.044 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.059 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|045 + local.set $3 + loop $while-continue|061 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 4 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.044 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.059 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|045 + br $while-continue|061 end end i32.const -1 @@ -15585,42 +15122,44 @@ end i32.const 0 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.047 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.063 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.047 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.063 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|048 + local.set $3 + loop $while-continue|065 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 5 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.047 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.063 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|048 + br $while-continue|065 end end i32.const -1 @@ -15639,42 +15178,44 @@ end i32.const 0 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.050 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.067 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.050 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.067 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|051 + local.set $3 + loop $while-continue|069 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 9 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.050 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.067 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|051 + br $while-continue|069 end end i32.const -1 @@ -15693,42 +15234,44 @@ end i32.const 0 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.053 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.071 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.053 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.071 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|054 + local.set $3 + loop $while-continue|073 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 10 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.053 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.071 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|054 + br $while-continue|073 end end i32.const -1 @@ -15747,42 +15290,44 @@ end i32.const 0 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.056 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.075 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.056 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.075 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|057 + local.set $3 + loop $while-continue|077 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 11 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.056 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.075 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|057 + br $while-continue|077 end end i32.const -1 @@ -15801,43 +15346,45 @@ end i32.const 1 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.059 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.079 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 1 i32.le_u i32.const 1 - local.get $3 - select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.059 local.get $4 + select + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.079 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|060 + local.set $3 + loop $while-continue|081 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 5 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.059 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.079 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|060 + br $while-continue|081 end end i32.const -1 @@ -15858,8 +15405,8 @@ local.set $0 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.062 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.083 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -15869,11 +15416,11 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.062 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.083 + local.get $2 i32.load offset=4 local.set $2 - loop $while-continue|063 + loop $while-continue|085 local.get $0 local.get $3 i32.lt_s @@ -15887,12 +15434,12 @@ i32.load i32.const 5 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.062 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.083 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|063 + br $while-continue|085 end end i32.const -1 @@ -15914,6 +15461,83 @@ i32.add global.set $~lib/memory/__stack_pointer ) + (func $~lib/typedarray/Uint32Array#lastIndexOf@varargs (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + block $1of1 + block $0of1 + block $outOfRange + global.get $~argumentsLength + i32.const 1 + i32.sub + br_table $0of1 $1of1 $outOfRange + end + unreachable + end + local.get $0 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.set $2 + end + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) + local.get $1 + local.set $3 + i32.const -1 + local.get $0 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.tee $1 + i32.eqz + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 + drop + local.get $1 + local.get $2 + i32.add + local.get $1 + i32.const 1 + i32.sub + local.get $2 + local.get $1 + local.get $2 + i32.le_s + select + local.get $2 + i32.const 0 + i32.lt_s + select + local.set $1 + local.get $0 + i32.load offset=4 + local.set $2 + loop $while-continue|0 + local.get $1 + i32.const 0 + i32.ge_s + if + local.get $1 + local.tee $0 + local.get $3 + local.get $1 + i32.const 2 + i32.shl + local.get $2 + i32.add + i32.load + i32.eq + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 + drop + local.get $0 + i32.const 1 + i32.sub + local.set $1 + br $while-continue|0 + end + end + i32.const -1 + end + ) (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Uint32Array,u32> (local $0 i32) (local $1 i32) @@ -15936,68 +15560,70 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 7728 i32.store - local.get $1 + local.get $0 i32.const 7740 i32.load - local.tee $1 + local.tee $0 call $~lib/typedarray/Uint32Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 loop $for-loop|0 local.get $0 local.get $1 - i32.lt_s + i32.gt_s if - local.get $4 - local.get $0 + local.get $2 + local.get $1 i32.const 7728 - local.get $0 + local.get $1 call $~lib/array/Array#__get call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end i32.const 0 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 - local.get $4 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 - local.get $4 + local.get $3 i32.load offset=4 - local.set $2 + local.set $3 loop $while-continue|0 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.eqz @@ -16023,32 +15649,34 @@ end i32.const 0 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.01 - local.get $4 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.01 - local.get $4 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|02 + local.set $3 + loop $while-continue|03 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 11 @@ -16058,7 +15686,7 @@ i32.const 1 i32.add local.set $0 - br $while-continue|02 + br $while-continue|03 end end i32.const -1 @@ -16077,42 +15705,44 @@ end i32.const 0 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.04 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.05 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.04 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.05 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|05 + local.set $3 + loop $while-continue|07 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const -1 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.04 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.05 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|05 + br $while-continue|07 end end i32.const -1 @@ -16131,42 +15761,44 @@ end i32.const 0 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.07 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.09 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.07 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.09 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|08 + local.set $3 + loop $while-continue|011 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.07 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.09 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|08 + br $while-continue|011 end end i32.const -1 @@ -16185,43 +15817,45 @@ end i32.const 2 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.010 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.013 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 2 i32.le_u i32.const 1 - local.get $3 - select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.010 local.get $4 + select + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.013 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|011 + local.set $3 + loop $while-continue|015 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.010 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.013 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|011 + br $while-continue|015 end end i32.const -1 @@ -16240,43 +15874,45 @@ end i32.const 3 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.013 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.017 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 3 i32.le_u i32.const 1 - local.get $3 - select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.013 local.get $4 + select + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.017 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|014 + local.set $3 + loop $while-continue|019 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.013 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.017 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|014 + br $while-continue|019 end end i32.const -1 @@ -16295,43 +15931,45 @@ end i32.const 4 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.016 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.021 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 4 i32.le_u i32.const 1 - local.get $3 - select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.016 local.get $4 + select + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.021 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|017 + local.set $3 + loop $while-continue|023 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.016 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.021 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|017 + br $while-continue|023 end end i32.const -1 @@ -16350,43 +15988,45 @@ end i32.const 10 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.019 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.025 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 10 i32.le_u i32.const 1 - local.get $3 - select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.019 local.get $4 + select + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.025 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|020 + local.set $3 + loop $while-continue|027 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 1 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.019 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.025 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|020 + br $while-continue|027 end end i32.const -1 @@ -16403,10 +16043,12 @@ call $~lib/builtins/abort unreachable end - i32.const -1 + local.get $2 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.022 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.029 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -16416,7 +16058,7 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.022 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.029 local.get $3 i32.const 100 i32.sub @@ -16427,35 +16069,34 @@ i32.gt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 - local.set $2 - loop $while-continue|023 + local.set $1 + loop $while-continue|031 local.get $0 local.get $3 i32.lt_s if local.get $0 - local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add i32.load i32.const 1 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.022 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.029 + local.get $0 i32.const 1 i32.add local.set $0 - br $while-continue|023 + br $while-continue|031 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -16468,62 +16109,9 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.tee $2 - local.set $0 - i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 - local.get $2 - i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 - local.get $0 - local.get $2 - i32.add - local.get $2 - i32.const 1 - i32.sub - local.get $0 - local.get $0 - local.get $2 - i32.ge_s - select - local.get $0 - i32.const 0 - i32.lt_s - select - local.set $0 - local.get $4 - i32.load offset=4 - local.set $2 - loop $while-continue|00 - local.get $0 - i32.const 0 - i32.ge_s - if - local.get $0 - local.tee $1 - i32.const 2 - i32.shl - local.get $2 - i32.add - i32.load - i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 - local.get $1 - i32.const 1 - i32.sub - local.set $0 - br $while-continue|00 - end - end - i32.const -1 - local.set $1 - end - local.get $1 + local.get $2 + i32.const 0 + call $~lib/typedarray/Uint32Array#lastIndexOf@varargs if i32.const 0 i32.const 1568 @@ -16534,63 +16122,9 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.tee $2 - local.set $0 - i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.05 - local.get $2 - i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.05 - local.get $0 - local.get $2 - i32.add - local.get $2 - i32.const 1 - i32.sub - local.get $0 - local.get $0 - local.get $2 - i32.ge_s - select - local.get $0 - i32.const 0 - i32.lt_s - select - local.set $0 - local.get $4 - i32.load offset=4 - local.set $2 - loop $while-continue|06 - local.get $0 - i32.const 0 - i32.ge_s - if - local.get $0 - local.tee $1 - i32.const 2 - i32.shl - local.get $2 - i32.add - i32.load - i32.const 11 - i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.05 - local.get $1 - i32.const 1 - i32.sub - local.set $0 - br $while-continue|06 - end - end - i32.const -1 - local.set $1 - end - local.get $1 + local.get $2 + i32.const 11 + call $~lib/typedarray/Uint32Array#lastIndexOf@varargs i32.const -1 i32.ne if @@ -16603,63 +16137,9 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.tee $2 - local.set $0 + local.get $2 i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.011 - local.get $2 - i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.011 - local.get $0 - local.get $2 - i32.add - local.get $2 - i32.const 1 - i32.sub - local.get $0 - local.get $0 - local.get $2 - i32.ge_s - select - local.get $0 - i32.const 0 - i32.lt_s - select - local.set $0 - local.get $4 - i32.load offset=4 - local.set $2 - loop $while-continue|012 - local.get $0 - i32.const 0 - i32.ge_s - if - local.get $0 - local.tee $1 - i32.const 2 - i32.shl - local.get $2 - i32.add - i32.load - i32.const -1 - i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.011 - local.get $1 - i32.const 1 - i32.sub - local.set $0 - br $while-continue|012 - end - end - i32.const -1 - local.set $1 - end - local.get $1 + call $~lib/typedarray/Uint32Array#lastIndexOf@varargs i32.const -1 i32.ne if @@ -16672,63 +16152,9 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.tee $2 - local.set $0 - i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.017 - local.get $2 - i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.017 - local.get $0 - local.get $2 - i32.add - local.get $2 - i32.const 1 - i32.sub - local.get $0 - local.get $0 - local.get $2 - i32.ge_s - select - local.get $0 - i32.const 0 - i32.lt_s - select - local.set $0 - local.get $4 - i32.load offset=4 - local.set $2 - loop $while-continue|018 - local.get $0 - i32.const 0 - i32.ge_s - if - local.get $0 - local.tee $1 - i32.const 2 - i32.shl - local.get $2 - i32.add - i32.load - i32.const 3 - i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.017 - local.get $1 - i32.const 1 - i32.sub - local.set $0 - br $while-continue|018 - end - end - i32.const -1 - local.set $1 - end - local.get $1 + local.get $2 + i32.const 3 + call $~lib/typedarray/Uint32Array#lastIndexOf@varargs i32.const 3 i32.ne if @@ -16739,16 +16165,18 @@ call $~lib/builtins/abort unreachable end + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.019 - local.get $4 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.019 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 local.get $0 i32.const 1 i32.sub @@ -16758,10 +16186,10 @@ i32.le_u select local.set $0 - local.get $4 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|024 + local.set $3 + loop $while-continue|033 local.get $0 i32.const 0 i32.ge_s @@ -16770,17 +16198,17 @@ local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 3 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.019 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 local.get $1 i32.const 1 i32.sub local.set $0 - br $while-continue|024 + br $while-continue|033 end end i32.const -1 @@ -16797,16 +16225,18 @@ call $~lib/builtins/abort unreachable end + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.026 - local.get $4 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.035 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.026 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.035 local.get $0 i32.const 1 i32.sub @@ -16816,10 +16246,10 @@ i32.le_u select local.set $0 - local.get $4 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|027 + local.set $3 + loop $while-continue|037 local.get $0 i32.const 0 i32.ge_s @@ -16828,17 +16258,17 @@ local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 3 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.026 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.035 local.get $1 i32.const 1 i32.sub local.set $0 - br $while-continue|027 + br $while-continue|037 end end i32.const -1 @@ -16855,16 +16285,18 @@ call $~lib/builtins/abort unreachable end + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.029 - local.get $4 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.039 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.029 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.039 local.get $0 i32.const 1 i32.sub @@ -16874,10 +16306,10 @@ i32.le_u select local.set $0 - local.get $4 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|030 + local.set $3 + loop $while-continue|041 local.get $0 i32.const 0 i32.ge_s @@ -16886,17 +16318,17 @@ local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 3 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.029 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.039 local.get $1 i32.const 1 i32.sub local.set $0 - br $while-continue|030 + br $while-continue|041 end end i32.const -1 @@ -16913,16 +16345,18 @@ call $~lib/builtins/abort unreachable end + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.032 - local.get $4 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.043 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.032 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.043 local.get $0 i32.const 1 i32.sub @@ -16932,10 +16366,10 @@ i32.le_u select local.set $0 - local.get $4 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|033 + local.set $3 + loop $while-continue|045 local.get $0 i32.const 0 i32.ge_s @@ -16944,17 +16378,17 @@ local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 1 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.032 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.043 local.get $1 i32.const 1 i32.sub local.set $0 - br $while-continue|033 + br $while-continue|045 end end i32.const -1 @@ -16971,49 +16405,50 @@ call $~lib/builtins/abort unreachable end - i32.const -1 + local.get $2 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.035 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.047 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 + local.tee $3 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.035 - local.get $0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.047 + local.get $3 i32.const 10 i32.sub local.set $0 - local.get $4 + local.get $1 i32.load offset=4 - local.set $2 - loop $while-continue|036 + local.set $1 + loop $while-continue|049 local.get $0 i32.const 0 i32.ge_s if local.get $0 - local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add i32.load i32.const 1 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.035 - local.get $1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.047 + local.get $0 i32.const 1 i32.sub local.set $0 - br $while-continue|036 + br $while-continue|049 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -17024,49 +16459,50 @@ call $~lib/builtins/abort unreachable end - i32.const -1 + local.get $2 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.038 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.051 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 + local.tee $3 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.038 - local.get $0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.051 + local.get $3 i32.const 11 i32.sub local.set $0 - local.get $4 + local.get $1 i32.load offset=4 - local.set $2 - loop $while-continue|039 + local.set $1 + loop $while-continue|053 local.get $0 i32.const 0 i32.ge_s if local.get $0 - local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add i32.load i32.const 1 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.038 - local.get $1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.051 + local.get $0 i32.const 1 i32.sub local.set $0 - br $while-continue|039 + br $while-continue|053 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -17078,49 +16514,51 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.const 9 call $~lib/typedarray/Uint32Array#subarray - local.tee $4 + local.tee $2 i32.store offset=8 i32.const 0 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.041 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.055 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.041 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.055 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|042 + local.set $3 + loop $while-continue|057 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 3 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.041 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.055 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|042 + br $while-continue|057 end end i32.const -1 @@ -17139,42 +16577,44 @@ end i32.const 0 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.044 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.059 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.044 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.059 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|045 + local.set $3 + loop $while-continue|061 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 4 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.044 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.059 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|045 + br $while-continue|061 end end i32.const -1 @@ -17191,42 +16631,44 @@ end i32.const 0 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.047 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.063 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.047 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.063 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|048 + local.set $3 + loop $while-continue|065 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 5 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.047 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.063 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|048 + br $while-continue|065 end end i32.const -1 @@ -17245,42 +16687,44 @@ end i32.const 0 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.050 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.067 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.050 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.067 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|051 + local.set $3 + loop $while-continue|069 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 9 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.050 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.067 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|051 + br $while-continue|069 end end i32.const -1 @@ -17299,42 +16743,44 @@ end i32.const 0 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.053 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.071 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.053 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.071 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|054 + local.set $3 + loop $while-continue|073 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 10 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.053 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.071 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|054 + br $while-continue|073 end end i32.const -1 @@ -17353,42 +16799,44 @@ end i32.const 0 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.056 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.075 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.056 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.075 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|057 + local.set $3 + loop $while-continue|077 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 11 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.056 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.075 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|057 + br $while-continue|077 end end i32.const -1 @@ -17407,43 +16855,45 @@ end i32.const 1 local.set $0 + local.get $2 + local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.059 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.079 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 1 i32.le_u i32.const 1 - local.get $3 - select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.059 local.get $4 + select + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.079 + local.get $3 i32.load offset=4 - local.set $2 - loop $while-continue|060 + local.set $3 + loop $while-continue|081 local.get $0 - local.get $3 + local.get $4 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 5 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.059 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.079 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|060 + br $while-continue|081 end end i32.const -1 @@ -17464,8 +16914,8 @@ local.set $0 i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.062 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.083 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -17475,11 +16925,11 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.062 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.083 + local.get $2 i32.load offset=4 local.set $2 - loop $while-continue|063 + loop $while-continue|085 local.get $0 local.get $3 i32.lt_s @@ -17493,12 +16943,12 @@ i32.load i32.const 5 i32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.062 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.083 local.get $1 i32.const 1 i32.add local.set $0 - br $while-continue|063 + br $while-continue|085 end end i32.const -1 @@ -17556,14 +17006,14 @@ i32.load local.tee $1 call $~lib/typedarray/Int64Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 loop $for-loop|0 local.get $0 local.get $1 i32.lt_s if - local.get $4 + local.get $2 local.get $0 i32.const 7728 local.get $0 @@ -17578,11 +17028,11 @@ end end i32.const 0 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 - local.get $4 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -17592,34 +17042,34 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|0 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|0 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -17629,11 +17079,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.01 - local.get $4 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -17643,35 +17093,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.01 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|02 - local.get $0 + local.set $4 + loop $while-continue|03 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 11 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.01 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|02 + local.set $1 + br $while-continue|03 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -17683,11 +17133,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.04 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.05 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -17696,36 +17146,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.04 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.05 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|05 - local.get $0 + local.set $4 + loop $while-continue|07 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const -1 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.04 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.05 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|05 + local.set $1 + br $while-continue|07 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -17737,11 +17187,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.07 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.09 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -17750,36 +17200,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.07 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.09 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|08 - local.get $0 + local.set $4 + loop $while-continue|011 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 3 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.07 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.09 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|08 + local.set $1 + br $while-continue|011 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -17791,11 +17241,11 @@ unreachable end i32.const 2 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.010 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.013 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -17805,36 +17255,36 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.010 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.013 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|011 - local.get $0 + local.set $4 + loop $while-continue|015 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 3 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.010 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.013 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|011 + local.set $1 + br $while-continue|015 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -17846,11 +17296,11 @@ unreachable end i32.const 3 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.013 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.017 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -17860,36 +17310,36 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.013 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.017 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|014 - local.get $0 + local.set $4 + loop $while-continue|019 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 3 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.013 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.017 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|014 + local.set $1 + br $while-continue|019 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -17901,11 +17351,11 @@ unreachable end i32.const 4 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.016 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.021 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -17915,36 +17365,36 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.016 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.021 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|017 - local.get $0 + local.set $4 + loop $while-continue|023 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 3 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.016 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.021 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|017 + local.set $1 + br $while-continue|023 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -17956,11 +17406,11 @@ unreachable end i32.const 10 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.019 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.025 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -17970,36 +17420,36 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.019 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.025 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|020 - local.get $0 + local.set $4 + loop $while-continue|027 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 1 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.019 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.025 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|020 + local.set $1 + br $while-continue|027 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -18012,51 +17462,50 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.022 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.029 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $0 i32.const -100 i32.le_s i32.const 1 - local.get $3 + local.get $0 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.022 - local.get $3 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.029 + local.get $0 i32.const 100 i32.sub - local.tee $0 + local.tee $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 i32.gt_s select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|023 + local.set $3 + loop $while-continue|031 local.get $0 - local.get $3 - i32.lt_s + local.get $1 + i32.gt_s if - local.get $0 - local.tee $1 + local.get $1 i32.const 3 i32.shl - local.get $2 + local.get $3 i32.add i64.load i64.const 1 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.022 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.029 local.get $1 i32.const 1 i32.add - local.set $0 - br $while-continue|023 + local.set $1 + br $while-continue|031 end end i32.const -1 @@ -18075,35 +17524,39 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $2 + local.tee $1 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 local.get $2 + i32.load offset=8 + i32.const 3 + i32.shr_u + local.tee $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|00 @@ -18112,7 +17565,6 @@ i32.ge_s if local.get $0 - local.tee $1 i32.const 3 i32.shl local.get $2 @@ -18120,7 +17572,7 @@ i64.load i64.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -18128,9 +17580,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -18141,35 +17593,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.05 local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.05 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|06 @@ -18178,7 +17630,6 @@ i32.ge_s if local.get $0 - local.tee $1 i32.const 3 i32.shl local.get $2 @@ -18187,7 +17638,7 @@ i64.const 11 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.05 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -18195,9 +17646,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -18210,35 +17661,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.011 local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.011 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|012 @@ -18247,7 +17698,6 @@ i32.ge_s if local.get $0 - local.tee $1 i32.const 3 i32.shl local.get $2 @@ -18256,7 +17706,7 @@ i64.const -1 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.011 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -18264,9 +17714,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -18279,35 +17729,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.017 local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.017 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|018 @@ -18316,7 +17766,6 @@ i32.ge_s if local.get $0 - local.tee $1 i32.const 3 i32.shl local.get $2 @@ -18325,7 +17774,7 @@ i64.const 3 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.017 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -18333,9 +17782,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -18347,53 +17796,54 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.019 - local.get $4 + local.get $1 + local.tee $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.019 - local.get $0 + local.get $1 i32.const 1 i32.sub i32.const 4 - local.get $0 + local.get $1 i32.const 4 i32.le_u select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|024 - local.get $0 + local.set $3 + loop $while-continue|033 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $3 i32.add i64.load i64.const 3 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.019 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|024 + local.set $1 + br $while-continue|033 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -18405,53 +17855,53 @@ unreachable end i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.026 - local.get $4 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.035 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.026 - local.get $0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.035 + local.get $1 i32.const 1 i32.sub i32.const 3 - local.get $0 + local.get $1 i32.const 3 i32.le_u select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|027 - local.get $0 + local.set $3 + loop $while-continue|037 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $3 i32.add i64.load i64.const 3 i64.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.026 - local.get $1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.035 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|027 + local.set $1 + br $while-continue|037 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -18463,53 +17913,53 @@ unreachable end i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.029 - local.get $4 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.039 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.029 - local.get $0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.039 + local.get $1 i32.const 1 i32.sub i32.const 2 - local.get $0 + local.get $1 i32.const 2 i32.le_u select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|030 - local.get $0 + local.set $3 + loop $while-continue|041 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $3 i32.add i64.load i64.const 3 i64.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.029 - local.get $1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.039 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|030 + local.set $1 + br $while-continue|041 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -18521,53 +17971,53 @@ unreachable end i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.032 - local.get $4 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.043 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.032 - local.get $0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.043 + local.get $1 i32.const 1 i32.sub i32.const 100 - local.get $0 + local.get $1 i32.const 100 i32.le_u select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|033 - local.get $0 + local.set $3 + loop $while-continue|045 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $3 i32.add i64.load i64.const 1 i64.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.032 - local.get $1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.043 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|033 + local.set $1 + br $while-continue|045 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -18580,41 +18030,40 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.035 - local.get $4 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.047 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.035 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.047 local.get $0 i32.const 10 i32.sub - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|036 - local.get $0 + local.set $0 + loop $while-continue|049 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 i32.const 3 i32.shl - local.get $2 + local.get $0 i32.add i64.load i64.const 1 i64.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.035 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.047 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|036 + local.set $1 + br $while-continue|049 end end i32.const -1 @@ -18633,41 +18082,40 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.038 - local.get $4 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.051 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.038 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.051 local.get $0 i32.const 11 i32.sub - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|039 - local.get $0 + local.set $0 + loop $while-continue|053 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 i32.const 3 i32.shl - local.get $2 + local.get $0 i32.add i64.load i64.const 1 i64.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.038 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.051 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|039 + local.set $1 + br $while-continue|053 end end i32.const -1 @@ -18685,17 +18133,17 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.const 9 call $~lib/typedarray/Int64Array#subarray - local.tee $4 + local.tee $2 i32.store offset=8 i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.041 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.055 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -18704,36 +18152,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.041 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.055 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|042 - local.get $0 + local.set $4 + loop $while-continue|057 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 3 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.041 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.055 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|042 + local.set $1 + br $while-continue|057 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -18745,11 +18193,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.044 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.059 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -18758,36 +18206,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.044 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.059 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|045 - local.get $0 + local.set $4 + loop $while-continue|061 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 4 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.044 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.059 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|045 + local.set $1 + br $while-continue|061 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -18797,11 +18245,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.047 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.063 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -18810,36 +18258,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.047 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.063 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|048 - local.get $0 + local.set $4 + loop $while-continue|065 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 5 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.047 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.063 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|048 + local.set $1 + br $while-continue|065 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -18851,11 +18299,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.050 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.067 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -18864,36 +18312,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.050 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.067 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|051 - local.get $0 + local.set $4 + loop $while-continue|069 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 9 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.050 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.067 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|051 + local.set $1 + br $while-continue|069 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -18905,11 +18353,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.053 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.071 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -18918,36 +18366,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.053 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.071 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|054 - local.get $0 + local.set $4 + loop $while-continue|073 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 10 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.053 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.071 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|054 + local.set $1 + br $while-continue|073 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -18959,11 +18407,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.056 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.075 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -18972,36 +18420,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.056 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.075 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|057 - local.get $0 + local.set $4 + loop $while-continue|077 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 11 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.056 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.075 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|057 + local.set $1 + br $while-continue|077 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -19013,11 +18461,11 @@ unreachable end i32.const 1 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.059 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.079 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -19027,36 +18475,36 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.059 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.079 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|060 - local.get $0 + local.set $4 + loop $while-continue|081 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 5 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.059 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.079 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|060 + local.set $1 + br $while-continue|081 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -19068,11 +18516,11 @@ unreachable end i32.const 2 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.062 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.083 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -19082,17 +18530,17 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.062 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.083 + local.get $2 i32.load offset=4 local.set $2 - loop $while-continue|063 - local.get $0 + loop $while-continue|085 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl local.get $2 @@ -19100,18 +18548,18 @@ i64.load i64.const 5 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.062 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.083 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|063 + local.set $1 + br $while-continue|085 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -19163,14 +18611,14 @@ i32.load local.tee $1 call $~lib/typedarray/Uint64Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 loop $for-loop|0 local.get $0 local.get $1 i32.lt_s if - local.get $4 + local.get $2 local.get $0 i32.const 7728 local.get $0 @@ -19185,11 +18633,11 @@ end end i32.const 0 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 - local.get $4 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -19199,34 +18647,34 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|0 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|0 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -19236,11 +18684,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.01 - local.get $4 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -19250,35 +18698,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.01 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|02 - local.get $0 + local.set $4 + loop $while-continue|03 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 11 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.01 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|02 + local.set $1 + br $while-continue|03 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -19290,11 +18738,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.04 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.05 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -19303,36 +18751,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.04 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.05 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|05 - local.get $0 + local.set $4 + loop $while-continue|07 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const -1 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.04 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.05 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|05 + local.set $1 + br $while-continue|07 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -19344,11 +18792,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.07 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.09 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -19357,36 +18805,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.07 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.09 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|08 - local.get $0 + local.set $4 + loop $while-continue|011 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 3 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.07 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.09 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|08 + local.set $1 + br $while-continue|011 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -19398,11 +18846,11 @@ unreachable end i32.const 2 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.010 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.013 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -19412,36 +18860,36 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.010 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.013 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|011 - local.get $0 + local.set $4 + loop $while-continue|015 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 3 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.010 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.013 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|011 + local.set $1 + br $while-continue|015 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -19453,11 +18901,11 @@ unreachable end i32.const 3 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.013 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.017 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -19467,36 +18915,36 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.013 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.017 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|014 - local.get $0 + local.set $4 + loop $while-continue|019 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 3 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.013 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.017 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|014 + local.set $1 + br $while-continue|019 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -19508,11 +18956,11 @@ unreachable end i32.const 4 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.016 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.021 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -19522,36 +18970,36 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.016 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.021 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|017 - local.get $0 + local.set $4 + loop $while-continue|023 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 3 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.016 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.021 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|017 + local.set $1 + br $while-continue|023 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -19563,11 +19011,11 @@ unreachable end i32.const 10 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.019 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.025 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -19577,36 +19025,36 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.019 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.025 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|020 - local.get $0 + local.set $4 + loop $while-continue|027 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 1 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.019 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.025 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|020 + local.set $1 + br $while-continue|027 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -19619,51 +19067,50 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.022 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.029 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $0 i32.const -100 i32.le_s i32.const 1 - local.get $3 + local.get $0 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.022 - local.get $3 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.029 + local.get $0 i32.const 100 i32.sub - local.tee $0 + local.tee $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 i32.gt_s select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|023 + local.set $3 + loop $while-continue|031 local.get $0 - local.get $3 - i32.lt_s + local.get $1 + i32.gt_s if - local.get $0 - local.tee $1 + local.get $1 i32.const 3 i32.shl - local.get $2 + local.get $3 i32.add i64.load i64.const 1 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.022 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.029 local.get $1 i32.const 1 i32.add - local.set $0 - br $while-continue|023 + local.set $1 + br $while-continue|031 end end i32.const -1 @@ -19682,35 +19129,39 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $2 + local.tee $1 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 local.get $2 + i32.load offset=8 + i32.const 3 + i32.shr_u + local.tee $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|00 @@ -19719,7 +19170,6 @@ i32.ge_s if local.get $0 - local.tee $1 i32.const 3 i32.shl local.get $2 @@ -19727,7 +19177,7 @@ i64.load i64.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -19735,9 +19185,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -19748,35 +19198,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.05 local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.05 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|06 @@ -19785,7 +19235,6 @@ i32.ge_s if local.get $0 - local.tee $1 i32.const 3 i32.shl local.get $2 @@ -19794,7 +19243,7 @@ i64.const 11 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.05 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -19802,9 +19251,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -19817,35 +19266,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.011 local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.011 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|012 @@ -19854,7 +19303,6 @@ i32.ge_s if local.get $0 - local.tee $1 i32.const 3 i32.shl local.get $2 @@ -19863,7 +19311,7 @@ i64.const -1 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.011 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -19871,9 +19319,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -19886,35 +19334,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.017 local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.017 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|018 @@ -19923,7 +19371,6 @@ i32.ge_s if local.get $0 - local.tee $1 i32.const 3 i32.shl local.get $2 @@ -19932,7 +19379,7 @@ i64.const 3 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.017 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -19940,9 +19387,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -19954,53 +19401,54 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.019 - local.get $4 + local.get $1 + local.tee $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.019 - local.get $0 + local.get $1 i32.const 1 i32.sub i32.const 4 - local.get $0 + local.get $1 i32.const 4 i32.le_u select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|024 - local.get $0 + local.set $3 + loop $while-continue|033 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $3 i32.add i64.load i64.const 3 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.019 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|024 + local.set $1 + br $while-continue|033 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -20012,53 +19460,53 @@ unreachable end i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.026 - local.get $4 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.035 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.026 - local.get $0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.035 + local.get $1 i32.const 1 i32.sub i32.const 3 - local.get $0 + local.get $1 i32.const 3 i32.le_u select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|027 - local.get $0 + local.set $3 + loop $while-continue|037 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $3 i32.add i64.load i64.const 3 i64.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.026 - local.get $1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.035 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|027 + local.set $1 + br $while-continue|037 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -20070,53 +19518,53 @@ unreachable end i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.029 - local.get $4 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.039 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.029 - local.get $0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.039 + local.get $1 i32.const 1 i32.sub i32.const 2 - local.get $0 + local.get $1 i32.const 2 i32.le_u select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|030 - local.get $0 + local.set $3 + loop $while-continue|041 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $3 i32.add i64.load i64.const 3 i64.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.029 - local.get $1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.039 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|030 + local.set $1 + br $while-continue|041 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -20128,53 +19576,53 @@ unreachable end i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.032 - local.get $4 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.043 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.032 - local.get $0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.043 + local.get $1 i32.const 1 i32.sub i32.const 100 - local.get $0 + local.get $1 i32.const 100 i32.le_u select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|033 - local.get $0 + local.set $3 + loop $while-continue|045 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $3 i32.add i64.load i64.const 1 i64.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.032 - local.get $1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.043 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|033 + local.set $1 + br $while-continue|045 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -20187,41 +19635,40 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.035 - local.get $4 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.047 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.035 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.047 local.get $0 i32.const 10 i32.sub - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|036 - local.get $0 + local.set $0 + loop $while-continue|049 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 i32.const 3 i32.shl - local.get $2 + local.get $0 i32.add i64.load i64.const 1 i64.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.035 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.047 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|036 + local.set $1 + br $while-continue|049 end end i32.const -1 @@ -20240,41 +19687,40 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.038 - local.get $4 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.051 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.038 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.051 local.get $0 i32.const 11 i32.sub - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|039 - local.get $0 + local.set $0 + loop $while-continue|053 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 i32.const 3 i32.shl - local.get $2 + local.get $0 i32.add i64.load i64.const 1 i64.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.038 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.051 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|039 + local.set $1 + br $while-continue|053 end end i32.const -1 @@ -20292,17 +19738,17 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.const 9 call $~lib/typedarray/Uint64Array#subarray - local.tee $4 + local.tee $2 i32.store offset=8 i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.041 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.055 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -20311,36 +19757,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.041 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.055 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|042 - local.get $0 + local.set $4 + loop $while-continue|057 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 3 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.041 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.055 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|042 + local.set $1 + br $while-continue|057 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -20352,11 +19798,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.044 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.059 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -20365,36 +19811,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.044 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.059 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|045 - local.get $0 + local.set $4 + loop $while-continue|061 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 4 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.044 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.059 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|045 + local.set $1 + br $while-continue|061 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -20404,11 +19850,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.047 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.063 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -20417,36 +19863,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.047 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.063 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|048 - local.get $0 + local.set $4 + loop $while-continue|065 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 5 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.047 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.063 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|048 + local.set $1 + br $while-continue|065 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -20458,11 +19904,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.050 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.067 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -20471,36 +19917,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.050 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.067 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|051 - local.get $0 + local.set $4 + loop $while-continue|069 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 9 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.050 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.067 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|051 + local.set $1 + br $while-continue|069 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -20512,11 +19958,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.053 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.071 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -20525,36 +19971,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.053 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.071 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|054 - local.get $0 + local.set $4 + loop $while-continue|073 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 10 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.053 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.071 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|054 + local.set $1 + br $while-continue|073 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -20566,11 +20012,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.056 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.075 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -20579,36 +20025,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.056 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.075 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|057 - local.get $0 + local.set $4 + loop $while-continue|077 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 11 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.056 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.075 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|057 + local.set $1 + br $while-continue|077 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -20620,11 +20066,11 @@ unreachable end i32.const 1 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.059 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.079 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -20634,36 +20080,36 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.059 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.079 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|060 - local.get $0 + local.set $4 + loop $while-continue|081 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add i64.load i64.const 5 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.059 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.079 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|060 + local.set $1 + br $while-continue|081 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -20675,11 +20121,11 @@ unreachable end i32.const 2 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.062 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.083 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -20689,17 +20135,17 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.062 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.083 + local.get $2 i32.load offset=4 local.set $2 - loop $while-continue|063 - local.get $0 + loop $while-continue|085 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl local.get $2 @@ -20707,18 +20153,18 @@ i64.load i64.const 5 i64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.062 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.083 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|063 + local.set $1 + br $while-continue|085 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -20770,14 +20216,14 @@ i32.load local.tee $1 call $~lib/typedarray/Float32Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 loop $for-loop|0 local.get $0 local.get $1 i32.lt_s if - local.get $4 + local.get $2 local.get $0 i32.const 7728 local.get $0 @@ -20792,11 +20238,11 @@ end end i32.const 0 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $4 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -20806,35 +20252,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|0 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $2 + local.get $4 i32.add f32.load f32.const 0 f32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|0 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -20844,11 +20290,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.01 - local.get $4 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -20858,35 +20304,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.01 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|02 - local.get $0 + local.set $4 + loop $while-continue|03 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $2 + local.get $4 i32.add f32.load f32.const 11 f32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.01 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|02 + local.set $1 + br $while-continue|03 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -20898,11 +20344,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.04 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.05 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -20911,36 +20357,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.04 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.05 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|05 - local.get $0 + local.set $4 + loop $while-continue|07 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $2 + local.get $4 i32.add f32.load f32.const -1 f32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.04 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.05 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|05 + local.set $1 + br $while-continue|07 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -20952,11 +20398,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.07 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.09 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -20965,36 +20411,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.07 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.09 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|08 - local.get $0 + local.set $4 + loop $while-continue|011 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $2 + local.get $4 i32.add f32.load f32.const 3 f32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.07 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.09 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|08 + local.set $1 + br $while-continue|011 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -21006,11 +20452,11 @@ unreachable end i32.const 2 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.010 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.013 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -21020,36 +20466,36 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.010 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.013 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|011 - local.get $0 + local.set $4 + loop $while-continue|015 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $2 + local.get $4 i32.add f32.load f32.const 3 f32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.010 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.013 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|011 + local.set $1 + br $while-continue|015 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -21061,11 +20507,11 @@ unreachable end i32.const 3 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.013 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.017 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -21075,36 +20521,36 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.013 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.017 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|014 - local.get $0 + local.set $4 + loop $while-continue|019 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $2 + local.get $4 i32.add f32.load f32.const 3 f32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.013 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.017 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|014 + local.set $1 + br $while-continue|019 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -21116,11 +20562,11 @@ unreachable end i32.const 4 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.016 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.021 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -21130,36 +20576,36 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.016 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.021 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|017 - local.get $0 + local.set $4 + loop $while-continue|023 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $2 + local.get $4 i32.add f32.load f32.const 3 f32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.016 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.021 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|017 + local.set $1 + br $while-continue|023 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -21171,11 +20617,11 @@ unreachable end i32.const 10 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.019 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.025 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -21185,36 +20631,36 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.019 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.025 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|020 - local.get $0 + local.set $4 + loop $while-continue|027 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $2 + local.get $4 i32.add f32.load f32.const 1 f32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.019 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.025 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|020 + local.set $1 + br $while-continue|027 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -21227,51 +20673,50 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.022 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.029 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $0 i32.const -100 i32.le_s i32.const 1 - local.get $3 + local.get $0 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.022 - local.get $3 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.029 + local.get $0 i32.const 100 i32.sub - local.tee $0 + local.tee $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 i32.gt_s select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|023 + local.set $3 + loop $while-continue|031 local.get $0 - local.get $3 - i32.lt_s + local.get $1 + i32.gt_s if - local.get $0 - local.tee $1 + local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add f32.load f32.const 1 f32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.022 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.029 local.get $1 i32.const 1 i32.add - local.set $0 - br $while-continue|023 + local.set $1 + br $while-continue|031 end end i32.const -1 @@ -21290,35 +20735,39 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $2 + local.tee $1 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 local.get $2 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.tee $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|00 @@ -21327,7 +20776,6 @@ i32.ge_s if local.get $0 - local.tee $1 i32.const 2 i32.shl local.get $2 @@ -21336,7 +20784,7 @@ f32.const 0 f32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -21344,9 +20792,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -21357,35 +20805,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.05 local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.05 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|06 @@ -21394,7 +20842,6 @@ i32.ge_s if local.get $0 - local.tee $1 i32.const 2 i32.shl local.get $2 @@ -21403,7 +20850,7 @@ f32.const 11 f32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.05 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -21411,9 +20858,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -21426,35 +20873,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.011 local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.011 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|012 @@ -21463,7 +20910,6 @@ i32.ge_s if local.get $0 - local.tee $1 i32.const 2 i32.shl local.get $2 @@ -21472,7 +20918,7 @@ f32.const -1 f32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.011 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -21480,9 +20926,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -21495,35 +20941,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.017 local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.017 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|018 @@ -21532,7 +20978,6 @@ i32.ge_s if local.get $0 - local.tee $1 i32.const 2 i32.shl local.get $2 @@ -21541,7 +20986,7 @@ f32.const 3 f32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.017 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -21549,9 +20994,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -21563,53 +21008,54 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.019 - local.get $4 + local.get $1 + local.tee $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.019 - local.get $0 + local.get $1 i32.const 1 i32.sub i32.const 4 - local.get $0 + local.get $1 i32.const 4 i32.le_u select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|024 - local.get $0 + local.set $3 + loop $while-continue|033 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add f32.load f32.const 3 f32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.019 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|024 + local.set $1 + br $while-continue|033 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -21621,53 +21067,53 @@ unreachable end i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.026 - local.get $4 - i32.load offset=8 - i32.const 2 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.035 + local.get $2 + i32.load offset=8 + i32.const 2 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.026 - local.get $0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.035 + local.get $1 i32.const 1 i32.sub i32.const 3 - local.get $0 + local.get $1 i32.const 3 i32.le_u select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|027 - local.get $0 + local.set $3 + loop $while-continue|037 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add f32.load f32.const 3 f32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.026 - local.get $1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.035 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|027 + local.set $1 + br $while-continue|037 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -21679,53 +21125,53 @@ unreachable end i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.029 - local.get $4 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.039 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.029 - local.get $0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.039 + local.get $1 i32.const 1 i32.sub i32.const 2 - local.get $0 + local.get $1 i32.const 2 i32.le_u select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|030 - local.get $0 + local.set $3 + loop $while-continue|041 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add f32.load f32.const 3 f32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.029 - local.get $1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.039 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|030 + local.set $1 + br $while-continue|041 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -21737,53 +21183,53 @@ unreachable end i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.032 - local.get $4 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.043 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.032 - local.get $0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.043 + local.get $1 i32.const 1 i32.sub i32.const 100 - local.get $0 + local.get $1 i32.const 100 i32.le_u select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|033 - local.get $0 + local.set $3 + loop $while-continue|045 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add f32.load f32.const 1 f32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.032 - local.get $1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.043 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|033 + local.set $1 + br $while-continue|045 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -21796,41 +21242,40 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.035 - local.get $4 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.047 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.035 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.047 local.get $0 i32.const 10 i32.sub - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|036 - local.get $0 + local.set $0 + loop $while-continue|049 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $0 i32.add f32.load f32.const 1 f32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.035 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.047 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|036 + local.set $1 + br $while-continue|049 end end i32.const -1 @@ -21849,41 +21294,40 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.038 - local.get $4 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.051 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.038 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.051 local.get $0 i32.const 11 i32.sub - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|039 - local.get $0 + local.set $0 + loop $while-continue|053 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $0 i32.add f32.load f32.const 1 f32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.038 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.051 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|039 + local.set $1 + br $while-continue|053 end end i32.const -1 @@ -21901,17 +21345,17 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.const 9 call $~lib/typedarray/Float32Array#subarray - local.tee $4 + local.tee $2 i32.store offset=8 i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.041 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.055 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -21920,36 +21364,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.041 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.055 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|042 - local.get $0 + local.set $4 + loop $while-continue|057 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $2 + local.get $4 i32.add f32.load f32.const 3 f32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.041 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.055 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|042 + local.set $1 + br $while-continue|057 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -21961,11 +21405,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.044 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.059 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -21974,36 +21418,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.044 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.059 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|045 - local.get $0 + local.set $4 + loop $while-continue|061 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $2 + local.get $4 i32.add f32.load f32.const 4 f32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.044 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.059 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|045 + local.set $1 + br $while-continue|061 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -22013,11 +21457,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.047 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.063 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -22026,36 +21470,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.047 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.063 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|048 - local.get $0 + local.set $4 + loop $while-continue|065 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $2 + local.get $4 i32.add f32.load f32.const 5 f32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.047 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.063 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|048 + local.set $1 + br $while-continue|065 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -22067,11 +21511,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.050 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.067 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -22080,36 +21524,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.050 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.067 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|051 - local.get $0 + local.set $4 + loop $while-continue|069 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $2 + local.get $4 i32.add f32.load f32.const 9 f32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.050 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.067 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|051 + local.set $1 + br $while-continue|069 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -22121,11 +21565,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.053 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.071 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -22134,36 +21578,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.053 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.071 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|054 - local.get $0 + local.set $4 + loop $while-continue|073 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $2 + local.get $4 i32.add f32.load f32.const 10 f32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.053 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.071 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|054 + local.set $1 + br $while-continue|073 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -22175,11 +21619,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.056 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.075 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -22188,36 +21632,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.056 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.075 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|057 - local.get $0 + local.set $4 + loop $while-continue|077 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $2 + local.get $4 i32.add f32.load f32.const 11 f32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.056 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.075 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|057 + local.set $1 + br $while-continue|077 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -22229,11 +21673,11 @@ unreachable end i32.const 1 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.059 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.079 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -22243,36 +21687,36 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.059 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.079 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|060 - local.get $0 + local.set $4 + loop $while-continue|081 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 2 i32.shl - local.get $2 + local.get $4 i32.add f32.load f32.const 5 f32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.059 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.079 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|060 + local.set $1 + br $while-continue|081 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -22284,11 +21728,11 @@ unreachable end i32.const 2 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.062 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.083 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -22298,17 +21742,17 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.062 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.083 + local.get $2 i32.load offset=4 local.set $2 - loop $while-continue|063 - local.get $0 + loop $while-continue|085 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 2 i32.shl local.get $2 @@ -22316,18 +21760,18 @@ f32.load f32.const 5 f32.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.062 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.083 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|063 + local.set $1 + br $while-continue|085 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -22379,14 +21823,14 @@ i32.load local.tee $1 call $~lib/typedarray/Float64Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 loop $for-loop|0 local.get $0 local.get $1 i32.lt_s if - local.get $4 + local.get $2 local.get $0 i32.const 7728 local.get $0 @@ -22401,11 +21845,11 @@ end end i32.const 0 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $4 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -22415,35 +21859,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 + local.set $4 loop $while-continue|0 - local.get $0 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add f64.load f64.const 0 f64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|0 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -22453,11 +21897,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.01 - local.get $4 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -22467,35 +21911,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.01 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|02 - local.get $0 + local.set $4 + loop $while-continue|03 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add f64.load f64.const 11 f64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.01 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|02 + local.set $1 + br $while-continue|03 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -22507,11 +21951,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.04 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.05 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -22520,36 +21964,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.04 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.05 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|05 - local.get $0 + local.set $4 + loop $while-continue|07 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add f64.load f64.const -1 f64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.04 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.05 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|05 + local.set $1 + br $while-continue|07 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -22561,11 +22005,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.07 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.09 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -22574,36 +22018,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.07 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.09 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|08 - local.get $0 + local.set $4 + loop $while-continue|011 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add f64.load f64.const 3 f64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.07 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.09 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|08 + local.set $1 + br $while-continue|011 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -22615,11 +22059,11 @@ unreachable end i32.const 2 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.010 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.013 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -22629,36 +22073,36 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.010 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.013 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|011 - local.get $0 + local.set $4 + loop $while-continue|015 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add f64.load f64.const 3 f64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.010 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.013 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|011 + local.set $1 + br $while-continue|015 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -22670,11 +22114,11 @@ unreachable end i32.const 3 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.013 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.017 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -22684,36 +22128,36 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.013 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.017 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|014 - local.get $0 + local.set $4 + loop $while-continue|019 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add f64.load f64.const 3 f64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.013 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.017 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|014 + local.set $1 + br $while-continue|019 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -22725,11 +22169,11 @@ unreachable end i32.const 4 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.016 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.021 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -22739,36 +22183,36 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.016 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.021 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|017 - local.get $0 + local.set $4 + loop $while-continue|023 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add f64.load f64.const 3 f64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.016 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.021 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|017 + local.set $1 + br $while-continue|023 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -22780,11 +22224,11 @@ unreachable end i32.const 10 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.019 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.025 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -22794,36 +22238,36 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.019 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.025 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|020 - local.get $0 + local.set $4 + loop $while-continue|027 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add f64.load f64.const 1 f64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.019 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.025 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|020 + local.set $1 + br $while-continue|027 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -22836,51 +22280,50 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.022 - local.get $4 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.029 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $0 i32.const -100 i32.le_s i32.const 1 - local.get $3 + local.get $0 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.022 - local.get $3 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.029 + local.get $0 i32.const 100 i32.sub - local.tee $0 + local.tee $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 i32.gt_s select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|023 + local.set $3 + loop $while-continue|031 local.get $0 - local.get $3 - i32.lt_s + local.get $1 + i32.gt_s if - local.get $0 - local.tee $1 + local.get $1 i32.const 3 i32.shl - local.get $2 + local.get $3 i32.add f64.load f64.const 1 f64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.022 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.029 local.get $1 i32.const 1 i32.add - local.set $0 - br $while-continue|023 + local.set $1 + br $while-continue|031 end end i32.const -1 @@ -22899,35 +22342,39 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $2 + local.tee $1 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 local.get $2 + i32.load offset=8 + i32.const 3 + i32.shr_u + local.tee $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|00 @@ -22936,7 +22383,6 @@ i32.ge_s if local.get $0 - local.tee $1 i32.const 3 i32.shl local.get $2 @@ -22945,7 +22391,7 @@ f64.const 0 f64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -22953,9 +22399,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -22966,35 +22412,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.05 local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.05 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|06 @@ -23003,7 +22449,6 @@ i32.ge_s if local.get $0 - local.tee $1 i32.const 3 i32.shl local.get $2 @@ -23012,7 +22457,7 @@ f64.const 11 f64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.05 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -23020,9 +22465,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -23035,35 +22480,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.011 local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.011 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|012 @@ -23072,7 +22517,6 @@ i32.ge_s if local.get $0 - local.tee $1 i32.const 3 i32.shl local.get $2 @@ -23081,7 +22525,7 @@ f64.const -1 f64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.011 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -23089,9 +22533,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -23104,35 +22548,35 @@ end i32.const 1 global.set $~argumentsLength - local.get $4 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u local.tee $2 - local.set $0 + local.set $3 i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.017 local.get $2 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.017 - local.get $0 local.get $2 + local.get $3 i32.add local.get $2 i32.const 1 i32.sub - local.get $0 - local.get $0 + local.get $3 local.get $2 - i32.ge_s + local.get $3 + i32.le_s select - local.get $0 + local.get $3 i32.const 0 i32.lt_s select local.set $0 - local.get $4 + local.get $1 i32.load offset=4 local.set $2 loop $while-continue|018 @@ -23141,7 +22585,6 @@ i32.ge_s if local.get $0 - local.tee $1 i32.const 3 i32.shl local.get $2 @@ -23150,7 +22593,7 @@ f64.const 3 f64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.017 - local.get $1 + local.get $0 i32.const 1 i32.sub local.set $0 @@ -23158,9 +22601,9 @@ end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -23172,53 +22615,54 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.019 - local.get $4 + local.get $1 + local.tee $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.019 - local.get $0 + local.get $1 i32.const 1 i32.sub i32.const 4 - local.get $0 + local.get $1 i32.const 4 i32.le_u select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|024 - local.get $0 + local.set $3 + loop $while-continue|033 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $3 i32.add f64.load f64.const 3 f64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.019 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|024 + local.set $1 + br $while-continue|033 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -23230,53 +22674,53 @@ unreachable end i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.026 - local.get $4 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.035 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.026 - local.get $0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.035 + local.get $1 i32.const 1 i32.sub i32.const 3 - local.get $0 + local.get $1 i32.const 3 i32.le_u select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|027 - local.get $0 + local.set $3 + loop $while-continue|037 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $3 i32.add f64.load f64.const 3 f64.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.026 - local.get $1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.035 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|027 + local.set $1 + br $while-continue|037 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -23288,53 +22732,53 @@ unreachable end i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.029 - local.get $4 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.039 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.029 - local.get $0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.039 + local.get $1 i32.const 1 i32.sub i32.const 2 - local.get $0 + local.get $1 i32.const 2 i32.le_u select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|030 - local.get $0 + local.set $3 + loop $while-continue|041 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $3 i32.add f64.load f64.const 3 f64.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.029 - local.get $1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.039 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|030 + local.set $1 + br $while-continue|041 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -23346,53 +22790,53 @@ unreachable end i32.const -1 - local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.032 - local.get $4 + local.set $0 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.043 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.032 - local.get $0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.043 + local.get $1 i32.const 1 i32.sub i32.const 100 - local.get $0 + local.get $1 i32.const 100 i32.le_u select - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|033 - local.get $0 + local.set $3 + loop $while-continue|045 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $3 i32.add f64.load f64.const 1 f64.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.032 - local.get $1 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.043 + local.get $0 i32.const 1 i32.sub - local.set $0 - br $while-continue|033 + local.set $1 + br $while-continue|045 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -23405,41 +22849,40 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.035 - local.get $4 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.047 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.035 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.047 local.get $0 i32.const 10 i32.sub - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|036 - local.get $0 + local.set $0 + loop $while-continue|049 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 i32.const 3 i32.shl - local.get $2 + local.get $0 i32.add f64.load f64.const 1 f64.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.035 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.047 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|036 + local.set $1 + br $while-continue|049 end end i32.const -1 @@ -23458,41 +22901,40 @@ end i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.038 - local.get $4 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.051 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.038 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.051 local.get $0 i32.const 11 i32.sub - local.set $0 - local.get $4 + local.set $1 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|039 - local.get $0 + local.set $0 + loop $while-continue|053 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 - local.tee $1 + local.get $1 i32.const 3 i32.shl - local.get $2 + local.get $0 i32.add f64.load f64.const 1 f64.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.038 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.051 local.get $1 i32.const 1 i32.sub - local.set $0 - br $while-continue|039 + local.set $1 + br $while-continue|053 end end i32.const -1 @@ -23510,18 +22952,18 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.const 4 i32.const 9 call $~lib/typedarray/Float64Array#subarray - local.tee $4 + local.tee $2 i32.store offset=8 i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.041 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.055 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -23530,36 +22972,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.041 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.055 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|042 - local.get $0 + local.set $4 + loop $while-continue|057 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add f64.load f64.const 3 f64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.041 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.055 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|042 + local.set $1 + br $while-continue|057 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -23571,11 +23013,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.044 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.059 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -23584,36 +23026,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.044 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.059 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|045 - local.get $0 + local.set $4 + loop $while-continue|061 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add f64.load f64.const 4 f64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.044 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.059 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|045 + local.set $1 + br $while-continue|061 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -23623,11 +23065,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.047 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.063 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -23636,36 +23078,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.047 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.063 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|048 - local.get $0 + local.set $4 + loop $while-continue|065 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add f64.load f64.const 5 f64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.047 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.063 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|048 + local.set $1 + br $while-continue|065 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -23677,11 +23119,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.050 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.067 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -23690,36 +23132,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.050 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.067 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|051 - local.get $0 + local.set $4 + loop $while-continue|069 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add f64.load f64.const 9 f64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.050 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.067 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|051 + local.set $1 + br $while-continue|069 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -23731,11 +23173,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.053 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.071 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -23744,36 +23186,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.053 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.071 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|054 - local.get $0 + local.set $4 + loop $while-continue|073 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add f64.load f64.const 10 f64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.053 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.071 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|054 + local.set $1 + br $while-continue|073 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -23785,11 +23227,11 @@ unreachable end i32.const 0 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.056 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.075 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -23798,36 +23240,36 @@ local.get $3 select i32.eqz - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.056 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.075 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|057 - local.get $0 + local.set $4 + loop $while-continue|077 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add f64.load f64.const 11 f64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.056 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.075 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|057 + local.set $1 + br $while-continue|077 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -23839,11 +23281,11 @@ unreachable end i32.const 1 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.059 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.079 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -23853,36 +23295,36 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.059 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.079 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|060 - local.get $0 + local.set $4 + loop $while-continue|081 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl - local.get $2 + local.get $4 i32.add f64.load f64.const 5 f64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.059 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.079 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|060 + local.set $1 + br $while-continue|081 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -23894,11 +23336,11 @@ unreachable end i32.const 2 - local.set $0 - i32.const -1 local.set $1 - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.062 - local.get $4 + i32.const -1 + local.set $0 + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.083 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -23908,17 +23350,17 @@ i32.const 1 local.get $3 select - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.062 - local.get $4 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.083 + local.get $2 i32.load offset=4 local.set $2 - loop $while-continue|063 - local.get $0 + loop $while-continue|085 + local.get $1 local.get $3 i32.lt_s if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 3 i32.shl local.get $2 @@ -23926,18 +23368,18 @@ f64.load f64.const 5 f64.eq - br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.062 - local.get $1 + br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.083 + local.get $0 i32.const 1 i32.add - local.set $0 - br $while-continue|063 + local.set $1 + br $while-continue|085 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -24143,15 +23585,14 @@ i32.add end end - local.set $3 + local.get $2 + i32.add + local.set $2 local.get $0 local.get $1 local.get $2 - local.get $3 - i32.add - local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $2 ) (func $~lib/typedarray/Int8Array#join (param $0 i32) (result i32) (local $1 i32) @@ -24160,34 +23601,32 @@ (local $4 i32) (local $5 i32) (local $6 i32) - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - local.set $1 - i32.const 0 - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/string/joinIntegerArray - local.get $1 + block $__inlined_func$~lib/util/string/joinIntegerArray (result i32) + local.get $0 + i32.load offset=4 + local.set $5 + local.get $0 + i32.load offset=8 + i32.const 0 + local.set $0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + if + i32.const 33040 + i32.const 33088 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store i32.const 1 i32.sub local.tee $2 @@ -24199,14 +23638,13 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 7776 - local.set $0 br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 local.get $2 i32.eqz if - local.get $3 + local.get $5 i32.load8_s call $~lib/util/number/itoa32 local.set $0 @@ -24218,30 +23656,30 @@ i32.load i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 i32.const 11 i32.add i32.mul i32.const 11 i32.add - local.tee $6 + local.tee $4 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $6 i32.store loop $for-loop|0 + local.get $1 local.get $2 - local.get $5 - i32.gt_s + i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add - local.get $3 + local.get $1 local.get $5 i32.add i32.load8_s @@ -24249,38 +23687,38 @@ local.get $0 i32.add local.set $0 - local.get $4 + local.get $3 if local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add i32.const 9584 - local.get $4 + local.get $3 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $4 + local.get $3 i32.add local.set $0 end - local.get $5 + local.get $1 i32.const 1 i32.add - local.set $5 + local.set $1 br $for-loop|0 end end - local.get $6 + local.get $4 local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add local.get $2 - local.get $3 + local.get $5 i32.add i32.load8_s call $~lib/util/number/itoa_buffered @@ -24289,7 +23727,7 @@ local.tee $0 i32.gt_s if - local.get $1 + local.get $6 local.get $0 call $~lib/string/String#substring local.set $0 @@ -24299,16 +23737,15 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.set $0 + local.get $6 br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 end - local.get $0 ) (func $~lib/string/String.__eq (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -24508,34 +23945,32 @@ (local $4 i32) (local $5 i32) (local $6 i32) - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - local.set $1 - i32.const 0 - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/string/joinIntegerArray - local.get $1 + block $__inlined_func$~lib/util/string/joinIntegerArray (result i32) + local.get $0 + i32.load offset=4 + local.set $5 + local.get $0 + i32.load offset=8 + i32.const 0 + local.set $0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + if + i32.const 33040 + i32.const 33088 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store i32.const 1 i32.sub local.tee $2 @@ -24547,14 +23982,13 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 7776 - local.set $0 br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 local.get $2 i32.eqz if - local.get $3 + local.get $5 i32.load8_u call $~lib/util/number/utoa32 local.set $0 @@ -24566,30 +24000,30 @@ i32.load i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 i32.const 10 i32.add i32.mul i32.const 10 i32.add - local.tee $6 + local.tee $4 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $6 i32.store loop $for-loop|0 + local.get $1 local.get $2 - local.get $5 - i32.gt_s + i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add - local.get $3 + local.get $1 local.get $5 i32.add i32.load8_u @@ -24597,38 +24031,38 @@ local.get $0 i32.add local.set $0 - local.get $4 + local.get $3 if local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add i32.const 9584 - local.get $4 + local.get $3 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $4 + local.get $3 i32.add local.set $0 end - local.get $5 + local.get $1 i32.const 1 i32.add - local.set $5 + local.set $1 br $for-loop|0 end end - local.get $6 + local.get $4 local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add local.get $2 - local.get $3 + local.get $5 i32.add i32.load8_u call $~lib/util/number/itoa_buffered @@ -24637,7 +24071,7 @@ local.tee $0 i32.gt_s if - local.get $1 + local.get $6 local.get $0 call $~lib/string/String#substring local.set $0 @@ -24647,16 +24081,15 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.set $0 + local.get $6 br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 end - local.get $0 ) (func $~lib/util/number/itoa_buffered (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -24744,15 +24177,14 @@ i32.add end end - local.set $3 + local.get $2 + i32.add + local.set $2 local.get $0 local.get $1 local.get $2 - local.get $3 - i32.add - local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $2 ) (func $~lib/typedarray/Int16Array#join (param $0 i32) (result i32) (local $1 i32) @@ -24761,36 +24193,34 @@ (local $4 i32) (local $5 i32) (local $6 i32) - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - i32.const 1 - i32.shr_u - local.set $1 - i32.const 0 - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 - i32.const 1 + block $__inlined_func$~lib/util/string/joinIntegerArray (result i32) + local.get $0 + i32.load offset=4 + local.set $5 + local.get $0 + i32.load offset=8 i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/string/joinIntegerArray - local.get $1 + i32.shr_u + i32.const 0 + local.set $0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + if + i32.const 33040 + i32.const 33088 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store i32.const 1 i32.sub local.tee $2 @@ -24802,14 +24232,13 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 7776 - local.set $0 br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 local.get $2 i32.eqz if - local.get $3 + local.get $5 i32.load16_s call $~lib/util/number/itoa32 local.set $0 @@ -24821,73 +24250,73 @@ i32.load i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 i32.const 11 i32.add i32.mul i32.const 11 i32.add - local.tee $6 + local.tee $4 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $6 i32.store loop $for-loop|0 + local.get $1 local.get $2 - local.get $5 - i32.gt_s + i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add - local.get $5 + local.get $1 i32.const 1 i32.shl - local.get $3 + local.get $5 i32.add i32.load16_s call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $4 + local.get $3 if local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add i32.const 9584 - local.get $4 + local.get $3 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $4 + local.get $3 i32.add local.set $0 end - local.get $5 + local.get $1 i32.const 1 i32.add - local.set $5 + local.set $1 br $for-loop|0 end end - local.get $6 + local.get $4 local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add local.get $2 i32.const 1 i32.shl - local.get $3 + local.get $5 i32.add i32.load16_s call $~lib/util/number/itoa_buffered @@ -24896,7 +24325,7 @@ local.tee $0 i32.gt_s if - local.get $1 + local.get $6 local.get $0 call $~lib/string/String#substring local.set $0 @@ -24906,16 +24335,15 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.set $0 + local.get $6 br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 end - local.get $0 ) (func $~lib/util/number/itoa_buffered (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -24999,36 +24427,34 @@ (local $4 i32) (local $5 i32) (local $6 i32) - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - i32.const 1 - i32.shr_u - local.set $1 - i32.const 0 - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 - i32.const 1 + block $__inlined_func$~lib/util/string/joinIntegerArray (result i32) + local.get $0 + i32.load offset=4 + local.set $5 + local.get $0 + i32.load offset=8 i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/string/joinIntegerArray - local.get $1 + i32.shr_u + i32.const 0 + local.set $0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + if + i32.const 33040 + i32.const 33088 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store i32.const 1 i32.sub local.tee $2 @@ -25040,14 +24466,13 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 7776 - local.set $0 br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 local.get $2 i32.eqz if - local.get $3 + local.get $5 i32.load16_u call $~lib/util/number/utoa32 local.set $0 @@ -25059,73 +24484,73 @@ i32.load i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 i32.const 10 i32.add i32.mul i32.const 10 i32.add - local.tee $6 + local.tee $4 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $6 i32.store loop $for-loop|0 + local.get $1 local.get $2 - local.get $5 - i32.gt_s + i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add - local.get $5 + local.get $1 i32.const 1 i32.shl - local.get $3 + local.get $5 i32.add i32.load16_u call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $4 + local.get $3 if local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add i32.const 9584 - local.get $4 + local.get $3 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $4 + local.get $3 i32.add local.set $0 end - local.get $5 + local.get $1 i32.const 1 i32.add - local.set $5 + local.set $1 br $for-loop|0 end end - local.get $6 + local.get $4 local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add local.get $2 i32.const 1 i32.shl - local.get $3 + local.get $5 i32.add i32.load16_u call $~lib/util/number/itoa_buffered @@ -25134,7 +24559,7 @@ local.tee $0 i32.gt_s if - local.get $1 + local.get $6 local.get $0 call $~lib/string/String#substring local.set $0 @@ -25144,16 +24569,15 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.set $0 + local.get $6 br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 end - local.get $0 ) (func $~lib/util/number/itoa_buffered (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -25249,36 +24673,34 @@ (local $4 i32) (local $5 i32) (local $6 i32) - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.set $1 - i32.const 0 - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/string/joinIntegerArray - local.get $1 + block $__inlined_func$~lib/util/string/joinIntegerArray (result i32) + local.get $0 + i32.load offset=4 + local.set $5 + local.get $0 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.const 0 + local.set $0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + if + i32.const 33040 + i32.const 33088 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store i32.const 1 i32.sub local.tee $2 @@ -25290,14 +24712,13 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 7776 - local.set $0 br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 local.get $2 i32.eqz if - local.get $3 + local.get $5 i32.load call $~lib/util/number/itoa32 local.set $0 @@ -25309,73 +24730,73 @@ i32.load i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 i32.const 11 i32.add i32.mul i32.const 11 i32.add - local.tee $6 + local.tee $4 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $6 i32.store loop $for-loop|0 + local.get $1 local.get $2 - local.get $5 - i32.gt_s + i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add - local.get $5 + local.get $1 i32.const 2 i32.shl - local.get $3 + local.get $5 i32.add i32.load call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $4 + local.get $3 if local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add i32.const 9584 - local.get $4 + local.get $3 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $4 + local.get $3 i32.add local.set $0 end - local.get $5 + local.get $1 i32.const 1 i32.add - local.set $5 + local.set $1 br $for-loop|0 end end - local.get $6 + local.get $4 local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add local.get $2 i32.const 2 i32.shl - local.get $3 + local.get $5 i32.add i32.load call $~lib/util/number/itoa_buffered @@ -25384,7 +24805,7 @@ local.tee $0 i32.gt_s if - local.get $1 + local.get $6 local.get $0 call $~lib/string/String#substring local.set $0 @@ -25394,16 +24815,15 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.set $0 + local.get $6 br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 end - local.get $0 ) (func $~lib/util/number/itoa_buffered (param $0 i32) (param $1 i32) (result i32) local.get $1 @@ -25477,36 +24897,34 @@ (local $4 i32) (local $5 i32) (local $6 i32) - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.set $1 - i32.const 0 - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/string/joinIntegerArray - local.get $1 + block $__inlined_func$~lib/util/string/joinIntegerArray (result i32) + local.get $0 + i32.load offset=4 + local.set $5 + local.get $0 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.const 0 + local.set $0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + if + i32.const 33040 + i32.const 33088 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store i32.const 1 i32.sub local.tee $2 @@ -25518,14 +24936,13 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 7776 - local.set $0 br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 local.get $2 i32.eqz if - local.get $3 + local.get $5 i32.load call $~lib/util/number/utoa32 local.set $0 @@ -25537,73 +24954,73 @@ i32.load i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 i32.const 10 i32.add i32.mul i32.const 10 i32.add - local.tee $6 + local.tee $4 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $6 i32.store loop $for-loop|0 + local.get $1 local.get $2 - local.get $5 - i32.gt_s + i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add - local.get $5 + local.get $1 i32.const 2 i32.shl - local.get $3 + local.get $5 i32.add i32.load call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $4 + local.get $3 if local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add i32.const 9584 - local.get $4 + local.get $3 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $4 + local.get $3 i32.add local.set $0 end - local.get $5 + local.get $1 i32.const 1 i32.add - local.set $5 + local.set $1 br $for-loop|0 end end - local.get $6 + local.get $4 local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add local.get $2 i32.const 2 i32.shl - local.get $3 + local.get $5 i32.add i32.load call $~lib/util/number/itoa_buffered @@ -25612,7 +25029,7 @@ local.tee $0 i32.gt_s if - local.get $1 + local.get $6 local.get $0 call $~lib/string/String#substring local.set $0 @@ -25622,16 +25039,15 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.set $0 + local.get $6 br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 end - local.get $0 ) (func $~lib/util/number/utoa64_dec_lut (param $0 i32) (param $1 i64) (param $2 i32) (local $3 i32) @@ -25728,7 +25144,7 @@ local.get $1 i64.const 0 i64.lt_s - local.tee $2 + local.tee $4 if local.get $0 i32.const 45 @@ -25742,7 +25158,7 @@ i64.const 10 i64.lt_u if - local.get $2 + local.get $4 i32.const 1 i32.shl local.get $0 @@ -25751,7 +25167,7 @@ i64.const 48 i64.or i64.store16 - local.get $2 + local.get $4 i32.const 1 i32.add return @@ -25763,59 +25179,58 @@ local.get $1 i32.wrap_i64 local.tee $3 - local.tee $4 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $4 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $4 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $4 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $4 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $4 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $4 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.set $4 + local.get $4 + i32.add + local.set $2 local.get $0 local.get $3 local.get $2 - local.get $4 - i32.add - local.tee $0 call $~lib/util/number/utoa32_dec_lut else local.get $0 @@ -25870,12 +25285,12 @@ i32.add end end - local.get $2 + local.get $4 i32.add - local.tee $0 + local.tee $2 call $~lib/util/number/utoa64_dec_lut end - local.get $0 + local.get $2 ) (func $~lib/typedarray/Int64Array#join (param $0 i32) (result i32) (local $1 i32) @@ -26292,7 +25707,6 @@ local.get $0 local.get $3 local.get $2 - local.tee $0 call $~lib/util/number/utoa32_dec_lut else local.get $0 @@ -26347,10 +25761,10 @@ i32.add end end - local.tee $0 + local.tee $2 call $~lib/util/number/utoa64_dec_lut end - local.get $0 + local.get $2 ) (func $~lib/typedarray/Uint64Array#join (param $0 i32) (result i32) (local $1 i32) @@ -26360,33 +25774,29 @@ (local $5 i32) (local $6 i32) (local $7 i32) - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - i32.const 3 - i32.shr_u - local.set $1 - i32.const 0 - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner1 - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/string/joinIntegerArray - local.get $1 + block $__inlined_func$~lib/util/string/joinIntegerArray (result i32) + local.get $0 + i32.load offset=4 + local.set $4 + local.get $0 + i32.load offset=8 + i32.const 3 + i32.shr_u + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + br_if $folding-inner1 + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store i32.const 1 i32.sub - local.tee $7 + local.tee $0 i32.const 0 i32.lt_s if @@ -26395,28 +25805,27 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 7776 - local.set $0 br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $7 + local.get $0 i32.eqz if - local.get $3 - i64.load - local.set $2 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/number/utoa64 + block $__inlined_func$~lib/util/number/utoa64 (result i32) + local.get $4 + i64.load + local.set $2 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + br_if $folding-inner1 + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store local.get $2 i64.eqz if @@ -26425,7 +25834,6 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 8000 - local.set $0 br $__inlined_func$~lib/util/number/utoa64 end local.get $2 @@ -26435,63 +25843,63 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.wrap_i64 - local.tee $1 local.tee $0 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.tee $3 + local.tee $1 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store + local.get $3 local.get $0 local.get $1 - local.get $3 call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer @@ -26545,32 +25953,34 @@ i32.add end end - local.tee $1 + local.tee $0 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 local.get $2 - local.get $1 + local.get $0 call $~lib/util/number/utoa64_dec_lut end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $3 end + local.set $0 br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.const 9580 i32.load i32.const 1 i32.shr_u - local.tee $4 + local.tee $5 i32.const 20 i32.add i32.mul @@ -26581,71 +25991,71 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $7 i32.store loop $for-loop|0 - local.get $5 - local.get $7 - i32.lt_s + local.get $0 + local.get $3 + i32.gt_s if - local.get $0 + local.get $1 i32.const 1 i32.shl - local.get $1 + local.get $7 i32.add - local.get $5 + local.get $3 i32.const 3 i32.shl - local.get $3 + local.get $4 i32.add i64.load call $~lib/util/number/itoa_buffered - local.get $0 + local.get $1 i32.add - local.set $0 - local.get $4 + local.set $1 + local.get $5 if - local.get $0 + local.get $1 i32.const 1 i32.shl - local.get $1 + local.get $7 i32.add i32.const 9584 - local.get $4 + local.get $5 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $0 - local.get $4 + local.get $1 + local.get $5 i32.add - local.set $0 + local.set $1 end - local.get $5 + local.get $3 i32.const 1 i32.add - local.set $5 + local.set $3 br $for-loop|0 end end local.get $6 - local.get $0 + local.get $1 i32.const 1 i32.shl - local.get $1 - i32.add local.get $7 + i32.add + local.get $0 i32.const 3 i32.shl - local.get $3 + local.get $4 i32.add i64.load call $~lib/util/number/itoa_buffered - local.get $0 + local.get $1 i32.add local.tee $0 i32.gt_s if - local.get $1 + local.get $7 local.get $0 call $~lib/string/String#substring local.set $0 @@ -26655,16 +26065,15 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.set $0 + local.get $7 br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 end - local.get $0 return end i32.const 33040 @@ -26679,76 +26088,75 @@ (local $7 i64) (local $8 i32) (local $9 i32) - (local $10 i64) - (local $11 i32) + (local $10 i32) + (local $11 i64) (local $12 i64) (local $13 i64) local.get $2 local.get $1 i64.sub - local.set $10 + local.set $12 local.get $2 i64.const 1 i32.const 0 local.get $3 i32.sub - local.tee $11 + local.tee $10 i64.extend_i32_s local.tee $1 i64.shl - local.tee $12 + local.tee $13 i64.const 1 i64.sub - local.tee $13 + local.tee $11 i64.and local.set $7 local.get $2 local.get $1 i64.shr_u i32.wrap_i64 + local.tee $3 local.tee $6 - local.set $3 - local.get $6 i32.const 100000 i32.lt_u if (result i32) - local.get $3 + local.get $6 i32.const 100 i32.lt_u if (result i32) - local.get $3 + local.get $6 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $3 + local.get $6 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $3 + local.get $6 i32.const 1000 i32.ge_u i32.add end else - local.get $3 + local.get $6 i32.const 10000000 i32.lt_u if (result i32) - local.get $3 + local.get $6 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $3 + local.get $6 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $3 + local.get $6 i32.const 100000000 i32.ge_u i32.add @@ -26777,107 +26185,107 @@ i32.sub br_table $case9|1 $case8|1 $case7|1 $case6|1 $case5|1 $case4|1 $case3|1 $case2|1 $case1|1 $case0|1 $case10|1 end - local.get $6 + local.get $3 i32.const 1000000000 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 1000000000 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 + local.get $3 i32.const 100000000 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 100000000 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 + local.get $3 i32.const 10000000 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 10000000 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 + local.get $3 i32.const 1000000 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 1000000 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 + local.get $3 i32.const 100000 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 100000 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 + local.get $3 i32.const 10000 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 10000 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 + local.get $3 i32.const 1000 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 1000 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 + local.get $3 i32.const 100 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 100 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 + local.get $3 i32.const 10 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 10 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 - local.set $3 - i32.const 0 + local.get $3 local.set $6 + i32.const 0 + local.set $3 br $break|1 end i32.const 0 - local.set $3 + local.set $6 end - local.get $3 local.get $5 + local.get $6 i32.or if local.get $5 @@ -26890,7 +26298,7 @@ i32.shl local.get $0 i32.add - local.get $3 + local.get $6 i32.const 65535 i32.and i32.const 48 @@ -26901,16 +26309,16 @@ i32.const 1 i32.sub local.set $9 + local.get $4 local.get $7 - local.get $6 + local.get $3 i64.extend_i32_u - local.get $11 + local.get $10 i64.extend_i32_s i64.shl i64.add local.tee $1 - local.get $4 - i64.le_u + i64.ge_u if local.get $9 global.get $~lib/util/number/_K @@ -26922,7 +26330,7 @@ i32.const 10736 i32.add i64.load32_u - local.get $11 + local.get $10 i64.extend_i32_s i64.shl local.set $2 @@ -26935,10 +26343,10 @@ i32.add local.tee $0 i32.load16_u - local.set $3 + local.set $6 loop $while-continue|3 local.get $1 - local.get $10 + local.get $12 i64.lt_u local.get $2 local.get $4 @@ -26947,28 +26355,28 @@ i64.le_u i32.and if (result i32) - local.get $10 + local.get $12 local.get $1 i64.sub local.get $1 local.get $2 i64.add local.tee $7 - local.get $10 + local.get $12 i64.sub i64.gt_u local.get $7 - local.get $10 + local.get $12 i64.lt_u i32.or else i32.const 0 end if - local.get $3 + local.get $6 i32.const 1 i32.sub - local.set $3 + local.set $6 local.get $1 local.get $2 i64.add @@ -26977,7 +26385,7 @@ end end local.get $0 - local.get $3 + local.get $6 i32.store16 local.get $5 return @@ -26985,7 +26393,7 @@ br $while-continue|0 end end - loop $while-continue|4 + loop $while-continue|4 (result i32) local.get $4 i64.const 10 i64.mul @@ -26994,7 +26402,7 @@ i64.const 10 i64.mul local.tee $1 - local.get $11 + local.get $10 i64.extend_i32_s i64.shr_u local.tee $2 @@ -27026,90 +26434,88 @@ i32.const 1 i32.sub local.set $9 - local.get $4 local.get $1 - local.get $13 + local.get $11 i64.and local.tee $7 - i64.le_u + local.get $4 + i64.ge_u br_if $while-continue|4 - end - local.get $9 - global.get $~lib/util/number/_K - i32.add - global.set $~lib/util/number/_K - local.get $7 - local.set $1 - i32.const 0 - local.get $9 - i32.sub - i32.const 2 - i32.shl - i32.const 10736 - i32.add - i64.load32_u - local.get $10 - i64.mul - local.set $2 - local.get $5 - i32.const 1 - i32.sub - i32.const 1 - i32.shl - local.get $0 - i32.add - local.tee $0 - i32.load16_u - local.set $3 - loop $while-continue|6 - local.get $1 - local.get $2 - i64.lt_u + local.get $9 + global.get $~lib/util/number/_K + i32.add + global.set $~lib/util/number/_K + local.get $7 + local.set $1 + i32.const 0 + local.get $9 + i32.sub + i32.const 2 + i32.shl + i32.const 10736 + i32.add + i64.load32_u local.get $12 - local.get $4 - local.get $1 - i64.sub - i64.le_u - i32.and - if (result i32) - local.get $2 - local.get $1 - i64.sub + i64.mul + local.set $2 + local.get $5 + i32.const 1 + i32.sub + i32.const 1 + i32.shl + local.get $0 + i32.add + local.tee $0 + i32.load16_u + local.set $6 + loop $while-continue|6 local.get $1 - local.get $12 - i64.add - local.tee $7 - local.get $2 - i64.sub - i64.gt_u local.get $2 - local.get $7 - i64.gt_u - i32.or - else - i32.const 0 - end - if - local.get $3 - i32.const 1 - i32.sub - local.set $3 + i64.lt_u + local.get $13 + local.get $4 local.get $1 - local.get $12 - i64.add - local.set $1 - br $while-continue|6 + i64.sub + i64.le_u + i32.and + if (result i32) + local.get $2 + local.get $1 + i64.sub + local.get $1 + local.get $13 + i64.add + local.tee $7 + local.get $2 + i64.sub + i64.gt_u + local.get $2 + local.get $7 + i64.gt_u + i32.or + else + i32.const 0 + end + if + local.get $6 + i32.const 1 + i32.sub + local.set $6 + local.get $1 + local.get $13 + i64.add + local.set $1 + br $while-continue|6 + end end + local.get $0 + local.get $6 + i32.store16 + local.get $5 end - local.get $0 - local.get $3 - i32.store16 - local.get $5 ) (func $~lib/util/number/prettify (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) - (local $4 i32) - (local $5 i32) local.get $2 i32.eqz if @@ -27253,82 +26659,80 @@ i32.const 101 i32.store16 offset=2 local.get $0 + local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $1 + local.tee $0 i32.const 0 i32.lt_s - local.tee $3 + local.tee $2 if i32.const 0 - local.get $1 + local.get $0 i32.sub - local.set $1 + local.set $0 end - local.get $1 - local.tee $4 + local.get $0 + local.get $0 i32.const 100000 i32.lt_u if (result i32) - local.get $4 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $4 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $4 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $4 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $4 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $4 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $4 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $4 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $4 - local.get $1 - local.get $4 i32.const 1 i32.add - local.tee $1 + local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $1 i32.const 45 i32.const 43 - local.get $3 + local.get $2 select i32.store16 offset=4 - local.get $1 + local.get $0 i32.const 2 i32.add else @@ -27351,87 +26755,84 @@ local.get $0 local.get $2 i32.add - local.tee $0 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $0 + local.get $2 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $2 + local.tee $0 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $2 + local.get $0 i32.sub - local.set $2 + local.set $0 end - local.get $2 - local.tee $5 + local.get $0 + local.get $0 i32.const 100000 i32.lt_u if (result i32) - local.get $5 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $5 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $5 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $5 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $5 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $5 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $5 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $5 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $5 - local.get $2 - local.get $5 i32.const 1 i32.add - local.tee $2 + local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $2 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 + local.get $0 local.get $1 - local.get $2 i32.add i32.const 2 i32.add @@ -27799,36 +27200,34 @@ (local $4 i32) (local $5 i32) (local $6 i32) - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.set $1 - i32.const 0 - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/string/joinFloatArray - local.get $1 + block $__inlined_func$~lib/util/string/joinFloatArray (result i32) + local.get $0 + i32.load offset=4 + local.set $5 + local.get $0 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.const 0 + local.set $0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + if + i32.const 33040 + i32.const 33088 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store i32.const 1 i32.sub local.tee $2 @@ -27840,14 +27239,13 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 7776 - local.set $0 br $__inlined_func$~lib/util/string/joinFloatArray end block $folding-inner0 local.get $2 i32.eqz if - local.get $3 + local.get $5 f32.load f64.promote_f32 call $~lib/util/number/dtoa @@ -27860,33 +27258,33 @@ i32.load i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 i32.const 28 i32.add i32.mul i32.const 28 i32.add - local.tee $6 + local.tee $4 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $6 i32.store loop $for-loop|0 + local.get $1 local.get $2 - local.get $5 - i32.gt_s + i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add - local.get $5 + local.get $1 i32.const 2 i32.shl - local.get $3 + local.get $5 i32.add f32.load f64.promote_f32 @@ -27894,40 +27292,40 @@ local.get $0 i32.add local.set $0 - local.get $4 + local.get $3 if local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add i32.const 9584 - local.get $4 + local.get $3 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $4 + local.get $3 i32.add local.set $0 end - local.get $5 + local.get $1 i32.const 1 i32.add - local.set $5 + local.set $1 br $for-loop|0 end end - local.get $6 + local.get $4 local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add local.get $2 i32.const 2 i32.shl - local.get $3 + local.get $5 i32.add f32.load f64.promote_f32 @@ -27937,7 +27335,7 @@ local.tee $0 i32.gt_s if - local.get $1 + local.get $6 local.get $0 call $~lib/string/String#substring local.set $0 @@ -27947,16 +27345,15 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.set $0 + local.get $6 br $__inlined_func$~lib/util/string/joinFloatArray end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 end - local.get $0 ) (func $~lib/typedarray/Float64Array#join (param $0 i32) (result i32) (local $1 i32) @@ -27965,36 +27362,34 @@ (local $4 i32) (local $5 i32) (local $6 i32) - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - i32.const 3 - i32.shr_u - local.set $1 - i32.const 0 - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/string/joinFloatArray - local.get $1 + block $__inlined_func$~lib/util/string/joinFloatArray (result i32) + local.get $0 + i32.load offset=4 + local.set $5 + local.get $0 + i32.load offset=8 + i32.const 3 + i32.shr_u + i32.const 0 + local.set $0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + if + i32.const 33040 + i32.const 33088 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store i32.const 1 i32.sub local.tee $2 @@ -28006,14 +27401,13 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 7776 - local.set $0 br $__inlined_func$~lib/util/string/joinFloatArray end block $folding-inner0 local.get $2 i32.eqz if - local.get $3 + local.get $5 f64.load call $~lib/util/number/dtoa local.set $0 @@ -28025,73 +27419,73 @@ i32.load i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 i32.const 28 i32.add i32.mul i32.const 28 i32.add - local.tee $6 + local.tee $4 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $6 i32.store loop $for-loop|0 + local.get $1 local.get $2 - local.get $5 - i32.gt_s + i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add - local.get $5 + local.get $1 i32.const 3 i32.shl - local.get $3 + local.get $5 i32.add f64.load call $~lib/util/number/dtoa_buffered local.get $0 i32.add local.set $0 - local.get $4 + local.get $3 if local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add i32.const 9584 - local.get $4 + local.get $3 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $4 + local.get $3 i32.add local.set $0 end - local.get $5 + local.get $1 i32.const 1 i32.add - local.set $5 + local.set $1 br $for-loop|0 end end - local.get $6 + local.get $4 local.get $0 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add local.get $2 i32.const 3 i32.shl - local.get $3 + local.get $5 i32.add f64.load call $~lib/util/number/dtoa_buffered @@ -28100,7 +27494,7 @@ local.tee $0 i32.gt_s if - local.get $1 + local.get $6 local.get $0 call $~lib/string/String#substring local.set $0 @@ -28110,16 +27504,15 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.set $0 + local.get $6 br $__inlined_func$~lib/util/string/joinFloatArray end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 end - local.get $0 ) (func $~lib/typedarray/Uint8Array.wrap@varargs (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -28160,12 +27553,11 @@ i32.const 0 i32.store local.get $1 - local.tee $3 local.get $0 i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $3 i32.gt_u if i32.const 1360 @@ -28183,8 +27575,8 @@ i32.const -1 i32.eq if (result i32) - local.get $1 local.get $3 + local.get $1 i32.sub else i32.const 1056 @@ -28194,12 +27586,11 @@ call $~lib/builtins/abort unreachable end - local.set $1 + local.set $2 else + local.get $3 local.get $1 local.get $2 - local.tee $1 - local.get $3 i32.add i32.lt_s if @@ -28215,30 +27606,30 @@ i32.const 12 i32.const 4 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 i32.store - local.get $2 + local.get $3 local.get $0 i32.store local.get $0 if - local.get $2 + local.get $3 local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $3 local.get $2 - local.get $1 i32.store offset=8 - local.get $2 - local.get $0 local.get $3 + local.get $0 + local.get $1 i32.add i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 ) (func $~lib/typedarray/Int8Array#set<~lib/array/Array> (param $0 i32) (local $1 i32) @@ -29764,11 +29155,11 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) + (local $12 i64) (local $13 i32) local.get $1 i32.const 48 @@ -29891,8 +29282,18 @@ local.tee $5 i32.const 1 i32.shl - call $~lib/rt/tlsf/__alloc - local.tee $11 + local.set $7 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $7 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.tee $9 local.get $5 i32.add local.set $10 @@ -29906,7 +29307,7 @@ local.get $5 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -29917,15 +29318,23 @@ br $for-loop|1 end end + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT local.get $1 - call $~lib/rt/tlsf/__alloc - local.set $9 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $12 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -29937,9 +29346,9 @@ if local.get $0 i32.const 0 - local.get $12 + local.get $8 i32.const 31 - local.get $12 + local.get $8 i32.const 31 i32.lt_s select @@ -29950,7 +29359,7 @@ end loop $while-continue|2 local.get $1 - local.get $12 + local.get $8 i32.lt_s if local.get $0 @@ -29958,7 +29367,7 @@ i32.const 1 i32.add local.tee $6 - local.get $12 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -29972,13 +29381,13 @@ if local.get $0 local.get $6 - local.get $12 + local.get $8 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $12 + local.get $8 i32.gt_s select local.tee $5 @@ -29992,11 +29401,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $8 + local.tee $12 i64.div_u local.get $5 local.get $6 @@ -30006,7 +29415,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $12 i64.div_u i64.xor i32.wrap_i64 @@ -30020,7 +29429,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $13 @@ -30039,11 +29448,11 @@ i32.const 1 i32.add local.get $1 - local.get $9 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -30057,7 +29466,7 @@ br $for-loop|3 end end - local.get $11 + local.get $9 local.get $7 i32.const 2 i32.shl @@ -30085,7 +29494,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $1 @@ -30102,8 +29511,8 @@ i32.load i32.const 1 i32.add - local.get $12 - local.get $9 + local.get $8 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end @@ -30114,10 +29523,10 @@ br $for-loop|4 end end - local.get $9 - call $~lib/rt/tlsf/__free local.get $11 call $~lib/rt/tlsf/__free + local.get $9 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -30527,11 +29936,11 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) + (local $12 i64) (local $13 i32) local.get $1 i32.const 48 @@ -30654,8 +30063,18 @@ local.tee $5 i32.const 1 i32.shl - call $~lib/rt/tlsf/__alloc - local.tee $11 + local.set $7 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $7 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.tee $9 local.get $5 i32.add local.set $10 @@ -30669,7 +30088,7 @@ local.get $5 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -30680,15 +30099,23 @@ br $for-loop|1 end end + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT local.get $1 - call $~lib/rt/tlsf/__alloc - local.set $9 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $12 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -30700,9 +30127,9 @@ if local.get $0 i32.const 0 - local.get $12 + local.get $8 i32.const 31 - local.get $12 + local.get $8 i32.const 31 i32.lt_s select @@ -30713,7 +30140,7 @@ end loop $while-continue|2 local.get $1 - local.get $12 + local.get $8 i32.lt_s if local.get $0 @@ -30721,7 +30148,7 @@ i32.const 1 i32.add local.tee $6 - local.get $12 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -30735,13 +30162,13 @@ if local.get $0 local.get $6 - local.get $12 + local.get $8 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $12 + local.get $8 i32.gt_s select local.tee $5 @@ -30755,11 +30182,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $8 + local.tee $12 i64.div_u local.get $5 local.get $6 @@ -30769,7 +30196,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $12 i64.div_u i64.xor i32.wrap_i64 @@ -30783,7 +30210,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $13 @@ -30802,11 +30229,11 @@ i32.const 1 i32.add local.get $1 - local.get $9 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -30820,7 +30247,7 @@ br $for-loop|3 end end - local.get $11 + local.get $9 local.get $7 i32.const 2 i32.shl @@ -30848,7 +30275,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $1 @@ -30865,8 +30292,8 @@ i32.load i32.const 1 i32.add - local.get $12 - local.get $9 + local.get $8 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end @@ -30877,10 +30304,10 @@ br $for-loop|4 end end - local.get $9 - call $~lib/rt/tlsf/__free local.get $11 call $~lib/rt/tlsf/__free + local.get $9 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -31341,11 +30768,11 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) + (local $12 i64) (local $13 i32) local.get $1 i32.const 48 @@ -31468,8 +30895,18 @@ local.tee $5 i32.const 1 i32.shl - call $~lib/rt/tlsf/__alloc - local.tee $11 + local.set $7 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $7 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.tee $9 local.get $5 i32.add local.set $10 @@ -31483,7 +30920,7 @@ local.get $5 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -31497,14 +30934,24 @@ local.get $1 i32.const 1 i32.shl - call $~lib/rt/tlsf/__alloc - local.set $9 + local.set $5 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $5 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $12 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -31516,9 +30963,9 @@ if local.get $0 i32.const 0 - local.get $12 + local.get $8 i32.const 31 - local.get $12 + local.get $8 i32.const 31 i32.lt_s select @@ -31529,7 +30976,7 @@ end loop $while-continue|2 local.get $1 - local.get $12 + local.get $8 i32.lt_s if local.get $0 @@ -31537,7 +30984,7 @@ i32.const 1 i32.add local.tee $6 - local.get $12 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -31551,13 +30998,13 @@ if local.get $0 local.get $6 - local.get $12 + local.get $8 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $12 + local.get $8 i32.gt_s select local.tee $5 @@ -31571,11 +31018,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $8 + local.tee $12 i64.div_u local.get $5 local.get $6 @@ -31585,7 +31032,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $12 i64.div_u i64.xor i32.wrap_i64 @@ -31599,7 +31046,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $13 @@ -31618,11 +31065,11 @@ i32.const 1 i32.add local.get $1 - local.get $9 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -31636,7 +31083,7 @@ br $for-loop|3 end end - local.get $11 + local.get $9 local.get $7 i32.const 2 i32.shl @@ -31664,7 +31111,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $1 @@ -31681,8 +31128,8 @@ i32.load i32.const 1 i32.add - local.get $12 - local.get $9 + local.get $8 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end @@ -31693,10 +31140,10 @@ br $for-loop|4 end end - local.get $9 - call $~lib/rt/tlsf/__free local.get $11 call $~lib/rt/tlsf/__free + local.get $9 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -32147,11 +31594,11 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) + (local $12 i64) (local $13 i32) local.get $1 i32.const 48 @@ -32274,8 +31721,18 @@ local.tee $5 i32.const 1 i32.shl - call $~lib/rt/tlsf/__alloc - local.tee $11 + local.set $7 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $7 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.tee $9 local.get $5 i32.add local.set $10 @@ -32289,7 +31746,7 @@ local.get $5 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -32303,14 +31760,24 @@ local.get $1 i32.const 1 i32.shl - call $~lib/rt/tlsf/__alloc - local.set $9 + local.set $5 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $5 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $12 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -32322,9 +31789,9 @@ if local.get $0 i32.const 0 - local.get $12 + local.get $8 i32.const 31 - local.get $12 + local.get $8 i32.const 31 i32.lt_s select @@ -32335,7 +31802,7 @@ end loop $while-continue|2 local.get $1 - local.get $12 + local.get $8 i32.lt_s if local.get $0 @@ -32343,7 +31810,7 @@ i32.const 1 i32.add local.tee $6 - local.get $12 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -32357,13 +31824,13 @@ if local.get $0 local.get $6 - local.get $12 + local.get $8 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $12 + local.get $8 i32.gt_s select local.tee $5 @@ -32377,11 +31844,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $8 + local.tee $12 i64.div_u local.get $5 local.get $6 @@ -32391,7 +31858,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $12 i64.div_u i64.xor i32.wrap_i64 @@ -32405,7 +31872,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $13 @@ -32424,11 +31891,11 @@ i32.const 1 i32.add local.get $1 - local.get $9 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -32442,7 +31909,7 @@ br $for-loop|3 end end - local.get $11 + local.get $9 local.get $7 i32.const 2 i32.shl @@ -32470,7 +31937,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $1 @@ -32487,8 +31954,8 @@ i32.load i32.const 1 i32.add - local.get $12 - local.get $9 + local.get $8 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end @@ -32499,10 +31966,10 @@ br $for-loop|4 end end - local.get $9 - call $~lib/rt/tlsf/__free local.get $11 call $~lib/rt/tlsf/__free + local.get $9 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -32963,11 +32430,11 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) + (local $12 i64) (local $13 i32) local.get $1 i32.const 48 @@ -33090,8 +32557,18 @@ local.tee $5 i32.const 1 i32.shl - call $~lib/rt/tlsf/__alloc - local.tee $11 + local.set $7 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $7 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.tee $9 local.get $5 i32.add local.set $10 @@ -33105,7 +32582,7 @@ local.get $5 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -33119,14 +32596,24 @@ local.get $1 i32.const 2 i32.shl - call $~lib/rt/tlsf/__alloc - local.set $9 + local.set $5 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $5 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $12 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -33138,9 +32625,9 @@ if local.get $0 i32.const 0 - local.get $12 + local.get $8 i32.const 31 - local.get $12 + local.get $8 i32.const 31 i32.lt_s select @@ -33151,7 +32638,7 @@ end loop $while-continue|2 local.get $1 - local.get $12 + local.get $8 i32.lt_s if local.get $0 @@ -33159,7 +32646,7 @@ i32.const 1 i32.add local.tee $6 - local.get $12 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -33173,13 +32660,13 @@ if local.get $0 local.get $6 - local.get $12 + local.get $8 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $12 + local.get $8 i32.gt_s select local.tee $5 @@ -33193,11 +32680,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $8 + local.tee $12 i64.div_u local.get $5 local.get $6 @@ -33207,7 +32694,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $12 i64.div_u i64.xor i32.wrap_i64 @@ -33221,7 +32708,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $13 @@ -33240,11 +32727,11 @@ i32.const 1 i32.add local.get $1 - local.get $9 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -33258,7 +32745,7 @@ br $for-loop|3 end end - local.get $11 + local.get $9 local.get $7 i32.const 2 i32.shl @@ -33286,7 +32773,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $1 @@ -33303,8 +32790,8 @@ i32.load i32.const 1 i32.add - local.get $12 - local.get $9 + local.get $8 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end @@ -33315,10 +32802,10 @@ br $for-loop|4 end end - local.get $9 - call $~lib/rt/tlsf/__free local.get $11 call $~lib/rt/tlsf/__free + local.get $9 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -33763,11 +33250,11 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) + (local $12 i64) (local $13 i32) local.get $1 i32.const 48 @@ -33890,8 +33377,18 @@ local.tee $5 i32.const 1 i32.shl - call $~lib/rt/tlsf/__alloc - local.tee $11 + local.set $7 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $7 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.tee $9 local.get $5 i32.add local.set $10 @@ -33905,7 +33402,7 @@ local.get $5 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -33919,14 +33416,24 @@ local.get $1 i32.const 2 i32.shl - call $~lib/rt/tlsf/__alloc - local.set $9 + local.set $5 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $5 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.set $11 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $12 + local.tee $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $1 @@ -33938,9 +33445,9 @@ if local.get $0 i32.const 0 - local.get $12 + local.get $8 i32.const 31 - local.get $12 + local.get $8 i32.const 31 i32.lt_s select @@ -33951,7 +33458,7 @@ end loop $while-continue|2 local.get $1 - local.get $12 + local.get $8 i32.lt_s if local.get $0 @@ -33959,7 +33466,7 @@ i32.const 1 i32.add local.tee $6 - local.get $12 + local.get $8 local.get $2 call $~lib/util/sort/extendRunRight local.tee $5 @@ -33973,13 +33480,13 @@ if local.get $0 local.get $6 - local.get $12 + local.get $8 local.get $6 i32.const 31 i32.add local.tee $5 local.get $5 - local.get $12 + local.get $8 i32.gt_s select local.tee $5 @@ -33993,11 +33500,11 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $8 i32.const 1 i32.add i64.extend_i32_u - local.tee $8 + local.tee $12 i64.div_u local.get $5 local.get $6 @@ -34007,7 +33514,7 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $8 + local.get $12 i64.div_u i64.xor i32.wrap_i64 @@ -34021,7 +33528,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $13 @@ -34040,11 +33547,11 @@ i32.const 1 i32.add local.get $1 - local.get $9 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $11 + local.get $9 i32.add i32.const -1 i32.store @@ -34058,7 +33565,7 @@ br $for-loop|3 end end - local.get $11 + local.get $9 local.get $7 i32.const 2 i32.shl @@ -34086,7 +33593,7 @@ local.get $4 i32.const 2 i32.shl - local.get $11 + local.get $9 i32.add i32.load local.tee $1 @@ -34103,8 +33610,8 @@ i32.load i32.const 1 i32.add - local.get $12 - local.get $9 + local.get $8 + local.get $11 local.get $2 call $~lib/util/sort/mergeRuns end @@ -34115,10 +33622,10 @@ br $for-loop|4 end end - local.get $9 - call $~lib/rt/tlsf/__free local.get $11 call $~lib/rt/tlsf/__free + local.get $9 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i32) (param $1 i32) (result i32) local.get $0 @@ -34693,52 +34200,72 @@ local.get $1 i32.clz i32.sub - local.tee $6 + local.tee $7 i32.const 2 i32.shl - local.tee $5 + local.tee $6 i32.const 1 i32.shl - call $~lib/rt/tlsf/__alloc - local.tee $14 + local.set $5 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT local.get $5 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.tee $13 + local.get $6 i32.add - local.set $13 + local.set $14 i32.const 0 - local.set $7 + local.set $6 loop $for-loop|1 local.get $6 local.get $7 - i32.gt_u + i32.lt_u if - local.get $7 + local.get $6 i32.const 2 i32.shl - local.get $14 + local.get $13 i32.add i32.const -1 i32.store - local.get $7 + local.get $6 i32.const 1 i32.add - local.set $7 + local.set $6 br $for-loop|1 end end local.get $1 i32.const 3 i32.shl - call $~lib/rt/tlsf/__alloc - local.set $12 + local.set $5 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $5 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.set $15 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $15 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $6 + local.tee $7 i32.const 1 i32.add local.tee $1 @@ -34747,31 +34274,31 @@ if local.get $0 i32.const 0 - local.get $15 + local.get $12 i32.const 31 - local.get $15 + local.get $12 i32.const 31 i32.lt_s select - local.tee $6 + local.tee $7 local.get $1 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $6 - local.get $15 + local.get $7 + local.get $12 i32.lt_s if local.get $0 - local.get $6 + local.get $7 i32.const 1 i32.add local.tee $5 - local.get $15 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $7 + local.tee $6 local.get $5 i32.sub i32.const 1 @@ -34782,16 +34309,16 @@ if local.get $0 local.get $5 - local.get $15 + local.get $12 local.get $5 i32.const 31 i32.add local.tee $1 local.get $1 - local.get $15 + local.get $12 i32.gt_s select - local.tee $7 + local.tee $6 local.get $8 local.get $2 call $~lib/util/sort/insertionSort @@ -34802,14 +34329,14 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $15 + local.get $12 i32.const 1 i32.add i64.extend_i32_u local.tee $9 i64.div_u local.get $5 - local.get $7 + local.get $6 i32.add i32.const 1 i32.add @@ -34830,7 +34357,7 @@ local.get $4 i32.const 2 i32.shl - local.get $14 + local.get $13 i32.add i32.load local.tee $8 @@ -34839,7 +34366,7 @@ if local.get $0 local.get $8 - local.get $13 + local.get $14 local.get $4 i32.const 2 i32.shl @@ -34848,12 +34375,12 @@ i32.load i32.const 1 i32.add - local.get $6 - local.get $12 + local.get $7 + local.get $15 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $14 + local.get $13 i32.add i32.const -1 i32.store @@ -34867,7 +34394,7 @@ br $for-loop|3 end end - local.get $14 + local.get $13 local.get $1 i32.const 2 i32.shl @@ -34876,14 +34403,14 @@ local.get $3 i32.store local.get $4 - local.get $13 + local.get $14 i32.add - local.get $6 + local.get $7 i32.store local.get $5 local.set $3 - local.get $7 - local.set $6 + local.get $6 + local.set $7 local.get $1 local.set $4 br $while-continue|2 @@ -34895,7 +34422,7 @@ local.get $4 i32.const 2 i32.shl - local.get $14 + local.get $13 i32.add i32.load local.tee $1 @@ -34907,13 +34434,13 @@ local.get $4 i32.const 2 i32.shl - local.get $13 + local.get $14 i32.add i32.load i32.const 1 i32.add - local.get $15 local.get $12 + local.get $15 local.get $2 call $~lib/util/sort/mergeRuns end @@ -34924,9 +34451,9 @@ br $for-loop|4 end end - local.get $12 + local.get $15 call $~lib/rt/tlsf/__free - local.get $14 + local.get $13 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i64) (param $1 i64) (result i32) @@ -35502,52 +35029,72 @@ local.get $1 i32.clz i32.sub - local.tee $6 + local.tee $7 i32.const 2 i32.shl - local.tee $5 + local.tee $6 i32.const 1 i32.shl - call $~lib/rt/tlsf/__alloc - local.tee $14 + local.set $5 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT local.get $5 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.tee $13 + local.get $6 i32.add - local.set $13 + local.set $14 i32.const 0 - local.set $7 + local.set $6 loop $for-loop|1 local.get $6 local.get $7 - i32.gt_u + i32.lt_u if - local.get $7 + local.get $6 i32.const 2 i32.shl - local.get $14 + local.get $13 i32.add i32.const -1 i32.store - local.get $7 + local.get $6 i32.const 1 i32.add - local.set $7 + local.set $6 br $for-loop|1 end end local.get $1 i32.const 3 i32.shl - call $~lib/rt/tlsf/__alloc - local.set $12 + local.set $5 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $5 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.set $15 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $15 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $6 + local.tee $7 i32.const 1 i32.add local.tee $1 @@ -35556,31 +35103,31 @@ if local.get $0 i32.const 0 - local.get $15 + local.get $12 i32.const 31 - local.get $15 + local.get $12 i32.const 31 i32.lt_s select - local.tee $6 + local.tee $7 local.get $1 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $6 - local.get $15 + local.get $7 + local.get $12 i32.lt_s if local.get $0 - local.get $6 + local.get $7 i32.const 1 i32.add local.tee $5 - local.get $15 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $7 + local.tee $6 local.get $5 i32.sub i32.const 1 @@ -35591,16 +35138,16 @@ if local.get $0 local.get $5 - local.get $15 + local.get $12 local.get $5 i32.const 31 i32.add local.tee $1 local.get $1 - local.get $15 + local.get $12 i32.gt_s select - local.tee $7 + local.tee $6 local.get $8 local.get $2 call $~lib/util/sort/insertionSort @@ -35611,14 +35158,14 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $15 + local.get $12 i32.const 1 i32.add i64.extend_i32_u local.tee $9 i64.div_u local.get $5 - local.get $7 + local.get $6 i32.add i32.const 1 i32.add @@ -35639,7 +35186,7 @@ local.get $4 i32.const 2 i32.shl - local.get $14 + local.get $13 i32.add i32.load local.tee $8 @@ -35648,7 +35195,7 @@ if local.get $0 local.get $8 - local.get $13 + local.get $14 local.get $4 i32.const 2 i32.shl @@ -35657,12 +35204,12 @@ i32.load i32.const 1 i32.add - local.get $6 - local.get $12 + local.get $7 + local.get $15 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $14 + local.get $13 i32.add i32.const -1 i32.store @@ -35676,7 +35223,7 @@ br $for-loop|3 end end - local.get $14 + local.get $13 local.get $1 i32.const 2 i32.shl @@ -35685,14 +35232,14 @@ local.get $3 i32.store local.get $4 - local.get $13 + local.get $14 i32.add - local.get $6 + local.get $7 i32.store local.get $5 local.set $3 - local.get $7 - local.set $6 + local.get $6 + local.set $7 local.get $1 local.set $4 br $while-continue|2 @@ -35704,7 +35251,7 @@ local.get $4 i32.const 2 i32.shl - local.get $14 + local.get $13 i32.add i32.load local.tee $1 @@ -35716,13 +35263,13 @@ local.get $4 i32.const 2 i32.shl - local.get $13 + local.get $14 i32.add i32.load i32.const 1 i32.add - local.get $15 local.get $12 + local.get $15 local.get $2 call $~lib/util/sort/mergeRuns end @@ -35733,9 +35280,9 @@ br $for-loop|4 end end - local.get $12 + local.get $15 call $~lib/rt/tlsf/__free - local.get $14 + local.get $13 call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 i64) (param $1 i64) (result i32) @@ -36192,11 +35739,11 @@ (local $9 f32) (local $10 f32) (local $11 f32) - (local $12 i64) + (local $12 i32) (local $13 i32) (local $14 i32) (local $15 i32) - (local $16 i32) + (local $16 i64) local.get $1 i32.const 48 i32.le_s @@ -36312,52 +35859,72 @@ local.get $1 i32.clz i32.sub - local.tee $6 + local.tee $7 i32.const 2 i32.shl - local.tee $5 + local.tee $6 i32.const 1 i32.shl - call $~lib/rt/tlsf/__alloc - local.tee $15 + local.set $5 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT local.get $5 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.tee $13 + local.get $6 i32.add local.set $14 i32.const 0 - local.set $7 + local.set $6 loop $for-loop|1 local.get $6 local.get $7 - i32.gt_u + i32.lt_u if - local.get $7 + local.get $6 i32.const 2 i32.shl - local.get $15 + local.get $13 i32.add i32.const -1 i32.store - local.get $7 + local.get $6 i32.const 1 i32.add - local.set $7 + local.set $6 br $for-loop|1 end end local.get $1 i32.const 2 i32.shl - call $~lib/rt/tlsf/__alloc - local.set $13 + local.set $5 + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.get $5 + call $~lib/rt/tlsf/allocateBlock + i32.const 4 + i32.add + local.set $15 local.get $0 i32.const 0 local.get $1 i32.const 1 i32.sub - local.tee $16 + local.tee $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $6 + local.tee $7 i32.const 1 i32.add local.tee $1 @@ -36366,31 +35933,31 @@ if local.get $0 i32.const 0 - local.get $16 + local.get $12 i32.const 31 - local.get $16 + local.get $12 i32.const 31 i32.lt_s select - local.tee $6 + local.tee $7 local.get $1 local.get $2 call $~lib/util/sort/insertionSort end loop $while-continue|2 - local.get $6 - local.get $16 + local.get $7 + local.get $12 i32.lt_s if local.get $0 - local.get $6 + local.get $7 i32.const 1 i32.add local.tee $5 - local.get $16 + local.get $12 local.get $2 call $~lib/util/sort/extendRunRight - local.tee $7 + local.tee $6 local.get $5 i32.sub i32.const 1 @@ -36401,16 +35968,16 @@ if local.get $0 local.get $5 - local.get $16 + local.get $12 local.get $5 i32.const 31 i32.add local.tee $1 local.get $1 - local.get $16 + local.get $12 i32.gt_s select - local.tee $7 + local.tee $6 local.get $8 local.get $2 call $~lib/util/sort/insertionSort @@ -36421,21 +35988,21 @@ i64.extend_i32_u i64.const 30 i64.shl - local.get $16 + local.get $12 i32.const 1 i32.add i64.extend_i32_u - local.tee $12 + local.tee $16 i64.div_u local.get $5 - local.get $7 + local.get $6 i32.add i32.const 1 i32.add i64.extend_i32_u i64.const 30 i64.shl - local.get $12 + local.get $16 i64.div_u i64.xor i32.wrap_i64 @@ -36449,7 +36016,7 @@ local.get $4 i32.const 2 i32.shl - local.get $15 + local.get $13 i32.add i32.load local.tee $8 @@ -36467,12 +36034,12 @@ i32.load i32.const 1 i32.add - local.get $6 - local.get $13 + local.get $7 + local.get $15 local.get $2 call $~lib/util/sort/mergeRuns local.get $3 - local.get $15 + local.get $13 i32.add i32.const -1 i32.store @@ -36486,7 +36053,7 @@ br $for-loop|3 end end - local.get $15 + local.get $13 local.get $1 i32.const 2 i32.shl @@ -36497,12 +36064,12 @@ local.get $4 local.get $14 i32.add - local.get $6 + local.get $7 i32.store local.get $5 local.set $3 - local.get $7 - local.set $6 + local.get $6 + local.set $7 local.get $1 local.set $4 br $while-continue|2 @@ -36514,7 +36081,7 @@ local.get $4 i32.const 2 i32.shl - local.get $15 + local.get $13 i32.add i32.load local.tee $1 @@ -36531,8 +36098,8 @@ i32.load i32.const 1 i32.add - local.get $16 - local.get $13 + local.get $12 + local.get $15 local.get $2 call $~lib/util/sort/mergeRuns end @@ -36543,10 +36110,10 @@ br $for-loop|4 end end - local.get $13 - call $~lib/rt/tlsf/__free local.get $15 call $~lib/rt/tlsf/__free + local.get $13 + call $~lib/rt/tlsf/__free ) (func $~lib/util/sort/COMPARATOR~anonymous|0 (param $0 f32) (param $1 f32) (result i32) (local $2 i32) @@ -36656,45 +36223,44 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 6 call $~lib/typedarray/Int8Array#constructor - local.tee $9 + local.tee $0 i32.store - local.get $9 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $9 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $9 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set - local.get $9 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $9 + local.get $0 i32.const 5 i32.const 5 call $~lib/typedarray/Int8Array#__set @@ -36702,6 +36268,8 @@ i32.const 3952 i32.store offset=4 global.get $~lib/memory/__stack_pointer + local.get $0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -36711,91 +36279,91 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $2 i32.load offset=8 - local.set $4 - local.get $1 + local.set $6 + local.get $0 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.const 0 call $~lib/rt/itcms/__new local.tee $5 i32.store offset=4 - local.get $9 + local.get $2 i32.load offset=4 local.set $8 loop $for-loop|0 - local.get $3 - local.get $4 - i32.lt_s + local.get $6 + local.get $7 + i32.gt_s if - local.get $3 + local.get $7 local.get $8 i32.add i32.load8_s - local.set $6 + local.set $4 i32.const 3 global.set $~argumentsLength - local.get $6 - local.get $3 - local.get $9 + local.get $4 + local.get $7 + local.get $2 i32.const 3952 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $0 - local.tee $2 + local.get $1 + local.tee $3 i32.const 1 i32.add - local.set $0 - local.get $2 + local.set $1 + local.get $3 local.get $5 i32.add - local.get $6 + local.get $4 i32.store8 end - local.get $3 + local.get $7 i32.const 1 i32.add - local.set $3 + local.set $7 br $for-loop|0 end end - local.get $1 - local.get $5 local.get $0 + local.get $5 + local.get $1 call $~lib/rt/itcms/__renew local.tee $2 i32.store local.get $2 if - local.get $1 + local.get $0 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 + local.get $0 local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -36806,7 +36374,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.ne @@ -36818,7 +36386,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 3 @@ -36831,7 +36399,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 4 @@ -36844,7 +36412,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 5 @@ -36880,45 +36448,44 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 6 call $~lib/typedarray/Uint8Array#constructor - local.tee $9 + local.tee $0 i32.store - local.get $9 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $9 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $9 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set - local.get $9 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Uint8Array#__set - local.get $9 + local.get $0 i32.const 5 i32.const 5 call $~lib/typedarray/Uint8Array#__set @@ -36926,6 +36493,8 @@ i32.const 3984 i32.store offset=4 global.get $~lib/memory/__stack_pointer + local.get $0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -36935,91 +36504,91 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $2 i32.load offset=8 - local.set $4 - local.get $1 + local.set $6 + local.get $0 i32.const 12 i32.const 4 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.const 0 call $~lib/rt/itcms/__new local.tee $5 i32.store offset=4 - local.get $9 + local.get $2 i32.load offset=4 local.set $8 loop $for-loop|0 - local.get $3 - local.get $4 - i32.lt_s + local.get $6 + local.get $7 + i32.gt_s if - local.get $3 + local.get $7 local.get $8 i32.add i32.load8_u - local.set $6 + local.set $4 i32.const 3 global.set $~argumentsLength - local.get $6 - local.get $3 - local.get $9 + local.get $4 + local.get $7 + local.get $2 i32.const 3984 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $0 - local.tee $2 + local.get $1 + local.tee $3 i32.const 1 i32.add - local.set $0 - local.get $2 + local.set $1 + local.get $3 local.get $5 i32.add - local.get $6 + local.get $4 i32.store8 end - local.get $3 + local.get $7 i32.const 1 i32.add - local.set $3 + local.set $7 br $for-loop|0 end end - local.get $1 - local.get $5 local.get $0 + local.get $5 + local.get $1 call $~lib/rt/itcms/__renew local.tee $2 i32.store local.get $2 if - local.get $1 + local.get $0 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 + local.get $0 local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -37030,7 +36599,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.ne @@ -37042,7 +36611,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 3 @@ -37055,7 +36624,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 4 @@ -37068,7 +36637,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 5 @@ -37104,45 +36673,44 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 6 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $9 + local.tee $0 i32.store - local.get $9 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $9 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $9 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $9 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $9 + local.get $0 i32.const 5 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#__set @@ -37150,6 +36718,8 @@ i32.const 4016 i32.store offset=4 global.get $~lib/memory/__stack_pointer + local.get $0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -37159,91 +36729,91 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $2 i32.load offset=8 - local.set $4 - local.get $1 + local.set $6 + local.get $0 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.const 0 call $~lib/rt/itcms/__new local.tee $5 i32.store offset=4 - local.get $9 + local.get $2 i32.load offset=4 local.set $8 loop $for-loop|0 - local.get $3 - local.get $4 - i32.lt_s + local.get $6 + local.get $7 + i32.gt_s if - local.get $3 + local.get $7 local.get $8 i32.add i32.load8_u - local.set $6 + local.set $4 i32.const 3 global.set $~argumentsLength - local.get $6 - local.get $3 - local.get $9 + local.get $4 + local.get $7 + local.get $2 i32.const 4016 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $0 - local.tee $2 + local.get $1 + local.tee $3 i32.const 1 i32.add - local.set $0 - local.get $2 + local.set $1 + local.get $3 local.get $5 i32.add - local.get $6 + local.get $4 i32.store8 end - local.get $3 + local.get $7 i32.const 1 i32.add - local.set $3 + local.set $7 br $for-loop|0 end end - local.get $1 - local.get $5 local.get $0 + local.get $5 + local.get $1 call $~lib/rt/itcms/__renew local.tee $2 i32.store local.get $2 if - local.get $1 + local.get $0 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 + local.get $0 local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -37254,7 +36824,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.ne @@ -37266,7 +36836,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 3 @@ -37279,7 +36849,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 4 @@ -37292,7 +36862,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 5 @@ -37328,45 +36898,44 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 6 call $~lib/typedarray/Int16Array#constructor - local.tee $9 + local.tee $0 i32.store - local.get $9 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $9 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $9 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set - local.get $9 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Int16Array#__set - local.get $9 + local.get $0 i32.const 5 i32.const 5 call $~lib/typedarray/Int16Array#__set @@ -37374,6 +36943,8 @@ i32.const 4048 i32.store offset=4 global.get $~lib/memory/__stack_pointer + local.get $0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -37383,102 +36954,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u - local.set $4 - local.get $1 + local.set $6 + local.get $0 i32.const 12 i32.const 6 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.const 1 i32.shl i32.const 0 call $~lib/rt/itcms/__new local.tee $5 i32.store offset=4 - local.get $9 + local.get $2 i32.load offset=4 local.set $8 loop $for-loop|0 - local.get $3 - local.get $4 - i32.lt_s + local.get $6 + local.get $7 + i32.gt_s if - local.get $3 + local.get $7 i32.const 1 i32.shl local.get $8 i32.add i32.load16_s - local.set $6 + local.set $4 i32.const 3 global.set $~argumentsLength - local.get $6 - local.get $3 - local.get $9 + local.get $4 + local.get $7 + local.get $2 i32.const 4048 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $0 - local.tee $2 + local.get $1 + local.tee $3 i32.const 1 i32.add - local.set $0 - local.get $2 + local.set $1 + local.get $3 i32.const 1 i32.shl local.get $5 i32.add - local.get $6 + local.get $4 i32.store16 end - local.get $3 + local.get $7 i32.const 1 i32.add - local.set $3 + local.set $7 br $for-loop|0 end end - local.get $1 - local.get $5 local.get $0 + local.get $5 + local.get $1 i32.const 1 i32.shl - local.tee $0 - call $~lib/rt/itcms/__renew local.tee $2 + call $~lib/rt/itcms/__renew + local.tee $1 i32.store - local.get $2 + local.get $1 if + local.get $0 local.get $1 - local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 + local.get $2 i32.store offset=8 + local.get $0 local.get $1 - local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -37489,7 +37060,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u @@ -37503,7 +37074,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 3 @@ -37516,7 +37087,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 4 @@ -37529,7 +37100,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 5 @@ -37565,45 +37136,44 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 6 call $~lib/typedarray/Uint16Array#constructor - local.tee $9 + local.tee $0 i32.store - local.get $9 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $9 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $9 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set - local.get $9 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Uint16Array#__set - local.get $9 + local.get $0 i32.const 5 i32.const 5 call $~lib/typedarray/Uint16Array#__set @@ -37611,6 +37181,8 @@ i32.const 4080 i32.store offset=4 global.get $~lib/memory/__stack_pointer + local.get $0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -37620,102 +37192,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $2 i32.load offset=8 i32.const 1 i32.shr_u - local.set $4 - local.get $1 + local.set $6 + local.get $0 i32.const 12 i32.const 7 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.const 1 i32.shl i32.const 0 call $~lib/rt/itcms/__new local.tee $5 i32.store offset=4 - local.get $9 + local.get $2 i32.load offset=4 local.set $8 loop $for-loop|0 - local.get $3 - local.get $4 - i32.lt_s + local.get $6 + local.get $7 + i32.gt_s if - local.get $3 + local.get $7 i32.const 1 i32.shl local.get $8 i32.add i32.load16_u - local.set $6 + local.set $4 i32.const 3 global.set $~argumentsLength - local.get $6 - local.get $3 - local.get $9 + local.get $4 + local.get $7 + local.get $2 i32.const 4080 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $0 - local.tee $2 + local.get $1 + local.tee $3 i32.const 1 i32.add - local.set $0 - local.get $2 + local.set $1 + local.get $3 i32.const 1 i32.shl local.get $5 i32.add - local.get $6 + local.get $4 i32.store16 end - local.get $3 + local.get $7 i32.const 1 i32.add - local.set $3 + local.set $7 br $for-loop|0 end end - local.get $1 - local.get $5 local.get $0 + local.get $5 + local.get $1 i32.const 1 i32.shl - local.tee $0 - call $~lib/rt/itcms/__renew local.tee $2 + call $~lib/rt/itcms/__renew + local.tee $1 i32.store - local.get $2 + local.get $1 if + local.get $0 local.get $1 - local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 + local.get $2 i32.store offset=8 + local.get $0 local.get $1 - local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -37726,7 +37298,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u @@ -37740,7 +37312,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 3 @@ -37753,7 +37325,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 4 @@ -37766,7 +37338,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 5 @@ -37802,45 +37374,44 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 6 call $~lib/typedarray/Int32Array#constructor - local.tee $9 + local.tee $0 i32.store - local.get $9 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $9 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $9 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $9 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $9 + local.get $0 i32.const 5 i32.const 5 call $~lib/typedarray/Int32Array#__set @@ -37848,6 +37419,8 @@ i32.const 4112 i32.store offset=4 global.get $~lib/memory/__stack_pointer + local.get $0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -37857,102 +37430,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $4 - local.get $1 + local.set $6 + local.get $0 i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.const 2 i32.shl i32.const 0 call $~lib/rt/itcms/__new local.tee $5 i32.store offset=4 - local.get $9 + local.get $2 i32.load offset=4 local.set $8 loop $for-loop|0 - local.get $3 - local.get $4 - i32.lt_s + local.get $6 + local.get $7 + i32.gt_s if - local.get $3 + local.get $7 i32.const 2 i32.shl local.get $8 i32.add i32.load - local.set $6 + local.set $4 i32.const 3 global.set $~argumentsLength - local.get $6 - local.get $3 - local.get $9 + local.get $4 + local.get $7 + local.get $2 i32.const 4112 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $0 - local.tee $2 + local.get $1 + local.tee $3 i32.const 1 i32.add - local.set $0 - local.get $2 + local.set $1 + local.get $3 i32.const 2 i32.shl local.get $5 i32.add - local.get $6 + local.get $4 i32.store end - local.get $3 + local.get $7 i32.const 1 i32.add - local.set $3 + local.set $7 br $for-loop|0 end end - local.get $1 - local.get $5 local.get $0 + local.get $5 + local.get $1 i32.const 2 i32.shl - local.tee $0 - call $~lib/rt/itcms/__renew local.tee $2 + call $~lib/rt/itcms/__renew + local.tee $1 i32.store - local.get $2 + local.get $1 if + local.get $0 local.get $1 - local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 + local.get $2 i32.store offset=8 + local.get $0 local.get $1 - local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -37963,7 +37536,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u @@ -37977,7 +37550,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 3 @@ -37990,7 +37563,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 4 @@ -38003,7 +37576,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 5 @@ -38039,45 +37612,44 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 6 call $~lib/typedarray/Uint32Array#constructor - local.tee $9 + local.tee $0 i32.store - local.get $9 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $9 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $9 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set - local.get $9 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Uint32Array#__set - local.get $9 + local.get $0 i32.const 5 i32.const 5 call $~lib/typedarray/Uint32Array#__set @@ -38085,6 +37657,8 @@ i32.const 4144 i32.store offset=4 global.get $~lib/memory/__stack_pointer + local.get $0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -38094,102 +37668,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $4 - local.get $1 + local.set $6 + local.get $0 i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.const 2 i32.shl i32.const 0 call $~lib/rt/itcms/__new local.tee $5 i32.store offset=4 - local.get $9 + local.get $2 i32.load offset=4 local.set $8 loop $for-loop|0 - local.get $3 - local.get $4 - i32.lt_s + local.get $6 + local.get $7 + i32.gt_s if - local.get $3 + local.get $7 i32.const 2 i32.shl local.get $8 i32.add i32.load - local.set $6 + local.set $4 i32.const 3 global.set $~argumentsLength - local.get $6 - local.get $3 - local.get $9 + local.get $4 + local.get $7 + local.get $2 i32.const 4144 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $0 - local.tee $2 + local.get $1 + local.tee $3 i32.const 1 i32.add - local.set $0 - local.get $2 + local.set $1 + local.get $3 i32.const 2 i32.shl local.get $5 i32.add - local.get $6 + local.get $4 i32.store end - local.get $3 + local.get $7 i32.const 1 i32.add - local.set $3 + local.set $7 br $for-loop|0 end end - local.get $1 - local.get $5 local.get $0 + local.get $5 + local.get $1 i32.const 2 i32.shl - local.tee $0 - call $~lib/rt/itcms/__renew local.tee $2 + call $~lib/rt/itcms/__renew + local.tee $1 i32.store - local.get $2 + local.get $1 if + local.get $0 local.get $1 - local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 + local.get $2 i32.store offset=8 + local.get $0 local.get $1 - local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -38200,7 +37774,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u @@ -38214,7 +37788,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 3 @@ -38227,7 +37801,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 4 @@ -38240,7 +37814,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 5 @@ -38271,50 +37845,49 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) + (local $4 i64) (local $5 i32) - (local $6 i64) + (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 6 call $~lib/typedarray/Int64Array#constructor - local.tee $9 + local.tee $0 i32.store - local.get $9 + local.get $0 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $9 + local.get $0 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $9 + local.get $0 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set - local.get $9 + local.get $0 i32.const 3 i64.const 4 call $~lib/typedarray/Int64Array#__set - local.get $9 + local.get $0 i32.const 5 i64.const 5 call $~lib/typedarray/Int64Array#__set @@ -38322,6 +37895,8 @@ i32.const 4176 i32.store offset=4 global.get $~lib/memory/__stack_pointer + local.get $0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -38331,102 +37906,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $4 - local.get $1 + local.set $6 + local.get $0 i32.const 12 i32.const 10 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.const 3 i32.shl i32.const 0 call $~lib/rt/itcms/__new local.tee $5 i32.store offset=4 - local.get $9 + local.get $2 i32.load offset=4 local.set $8 loop $for-loop|0 - local.get $3 - local.get $4 - i32.lt_s + local.get $6 + local.get $7 + i32.gt_s if - local.get $3 + local.get $7 i32.const 3 i32.shl local.get $8 i32.add i64.load - local.set $6 + local.set $4 i32.const 3 global.set $~argumentsLength - local.get $6 - local.get $3 - local.get $9 + local.get $4 + local.get $7 + local.get $2 i32.const 4176 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) if - local.get $0 - local.tee $2 + local.get $1 + local.tee $3 i32.const 1 i32.add - local.set $0 - local.get $2 + local.set $1 + local.get $3 i32.const 3 i32.shl local.get $5 i32.add - local.get $6 + local.get $4 i64.store end - local.get $3 + local.get $7 i32.const 1 i32.add - local.set $3 + local.set $7 br $for-loop|0 end end - local.get $1 - local.get $5 local.get $0 + local.get $5 + local.get $1 i32.const 3 i32.shl - local.tee $0 - call $~lib/rt/itcms/__renew local.tee $2 + call $~lib/rt/itcms/__renew + local.tee $1 i32.store - local.get $2 + local.get $1 if + local.get $0 local.get $1 - local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 + local.get $2 i32.store offset=8 + local.get $0 local.get $1 - local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -38437,7 +38012,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u @@ -38451,7 +38026,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 3 @@ -38464,7 +38039,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 4 @@ -38477,7 +38052,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 5 @@ -38508,50 +38083,49 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) + (local $4 i64) (local $5 i32) - (local $6 i64) + (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 6 call $~lib/typedarray/Uint64Array#constructor - local.tee $9 + local.tee $0 i32.store - local.get $9 + local.get $0 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $9 + local.get $0 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $9 + local.get $0 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set - local.get $9 + local.get $0 i32.const 3 i64.const 4 call $~lib/typedarray/Uint64Array#__set - local.get $9 + local.get $0 i32.const 5 i64.const 5 call $~lib/typedarray/Uint64Array#__set @@ -38559,6 +38133,8 @@ i32.const 4208 i32.store offset=4 global.get $~lib/memory/__stack_pointer + local.get $0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -38568,102 +38144,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $4 - local.get $1 + local.set $6 + local.get $0 i32.const 12 i32.const 11 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.const 3 i32.shl i32.const 0 call $~lib/rt/itcms/__new local.tee $5 i32.store offset=4 - local.get $9 + local.get $2 i32.load offset=4 local.set $8 loop $for-loop|0 - local.get $3 - local.get $4 - i32.lt_s + local.get $6 + local.get $7 + i32.gt_s if - local.get $3 + local.get $7 i32.const 3 i32.shl local.get $8 i32.add i64.load - local.set $6 + local.set $4 i32.const 3 global.set $~argumentsLength - local.get $6 - local.get $3 - local.get $9 + local.get $4 + local.get $7 + local.get $2 i32.const 4208 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) if - local.get $0 - local.tee $2 + local.get $1 + local.tee $3 i32.const 1 i32.add - local.set $0 - local.get $2 + local.set $1 + local.get $3 i32.const 3 i32.shl local.get $5 i32.add - local.get $6 + local.get $4 i64.store end - local.get $3 + local.get $7 i32.const 1 i32.add - local.set $3 + local.set $7 br $for-loop|0 end end - local.get $1 - local.get $5 local.get $0 + local.get $5 + local.get $1 i32.const 3 i32.shl - local.tee $0 - call $~lib/rt/itcms/__renew local.tee $2 + call $~lib/rt/itcms/__renew + local.tee $1 i32.store - local.get $2 + local.get $1 if + local.get $0 local.get $1 - local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 + local.get $2 i32.store offset=8 + local.get $0 local.get $1 - local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -38674,7 +38250,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u @@ -38688,7 +38264,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 3 @@ -38701,7 +38277,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 4 @@ -38714,7 +38290,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 5 @@ -38745,50 +38321,49 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) + (local $4 f32) (local $5 i32) - (local $6 f32) + (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 6 call $~lib/typedarray/Float32Array#constructor - local.tee $9 + local.tee $0 i32.store - local.get $9 + local.get $0 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $9 + local.get $0 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $9 + local.get $0 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set - local.get $9 + local.get $0 i32.const 3 f32.const 4 call $~lib/typedarray/Float32Array#__set - local.get $9 + local.get $0 i32.const 5 f32.const 5 call $~lib/typedarray/Float32Array#__set @@ -38796,6 +38371,8 @@ i32.const 4240 i32.store offset=4 global.get $~lib/memory/__stack_pointer + local.get $0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -38805,102 +38382,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $4 - local.get $1 + local.set $6 + local.get $0 i32.const 12 i32.const 12 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.const 2 i32.shl i32.const 0 call $~lib/rt/itcms/__new local.tee $5 i32.store offset=4 - local.get $9 + local.get $2 i32.load offset=4 local.set $8 loop $for-loop|0 - local.get $3 - local.get $4 - i32.lt_s + local.get $6 + local.get $7 + i32.gt_s if - local.get $3 + local.get $7 i32.const 2 i32.shl local.get $8 i32.add f32.load - local.set $6 + local.set $4 i32.const 3 global.set $~argumentsLength - local.get $6 - local.get $3 - local.get $9 + local.get $4 + local.get $7 + local.get $2 i32.const 4240 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) if - local.get $0 - local.tee $2 + local.get $1 + local.tee $3 i32.const 1 i32.add - local.set $0 - local.get $2 + local.set $1 + local.get $3 i32.const 2 i32.shl local.get $5 i32.add - local.get $6 + local.get $4 f32.store end - local.get $3 + local.get $7 i32.const 1 i32.add - local.set $3 + local.set $7 br $for-loop|0 end end - local.get $1 - local.get $5 local.get $0 + local.get $5 + local.get $1 i32.const 2 i32.shl - local.tee $0 - call $~lib/rt/itcms/__renew local.tee $2 + call $~lib/rt/itcms/__renew + local.tee $1 i32.store - local.get $2 + local.get $1 if + local.get $0 local.get $1 - local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 + local.get $2 i32.store offset=8 + local.get $0 local.get $1 - local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -38911,7 +38488,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u @@ -38925,7 +38502,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 3 @@ -38938,7 +38515,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 4 @@ -38951,7 +38528,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 5 @@ -38982,50 +38559,49 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) + (local $4 f64) (local $5 i32) - (local $6 f64) + (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 6 call $~lib/typedarray/Float64Array#constructor - local.tee $9 + local.tee $0 i32.store - local.get $9 + local.get $0 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $9 + local.get $0 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $9 + local.get $0 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set - local.get $9 + local.get $0 i32.const 3 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $9 + local.get $0 i32.const 5 f64.const 5 call $~lib/typedarray/Float64Array#__set @@ -39033,6 +38609,8 @@ i32.const 4272 i32.store offset=4 global.get $~lib/memory/__stack_pointer + local.get $0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -39042,102 +38620,102 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $4 - local.get $1 + local.set $6 + local.get $0 i32.const 12 i32.const 13 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.const 3 i32.shl i32.const 0 call $~lib/rt/itcms/__new local.tee $5 i32.store offset=4 - local.get $9 + local.get $2 i32.load offset=4 local.set $8 loop $for-loop|0 - local.get $3 - local.get $4 - i32.lt_s + local.get $6 + local.get $7 + i32.gt_s if - local.get $3 + local.get $7 i32.const 3 i32.shl local.get $8 i32.add f64.load - local.set $6 + local.set $4 i32.const 3 global.set $~argumentsLength - local.get $6 - local.get $3 - local.get $9 + local.get $4 + local.get $7 + local.get $2 i32.const 4272 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) if - local.get $0 - local.tee $2 + local.get $1 + local.tee $3 i32.const 1 i32.add - local.set $0 - local.get $2 + local.set $1 + local.get $3 i32.const 3 i32.shl local.get $5 i32.add - local.get $6 + local.get $4 f64.store end - local.get $3 + local.get $7 i32.const 1 i32.add - local.set $3 + local.set $7 br $for-loop|0 end end - local.get $1 - local.get $5 local.get $0 + local.get $5 + local.get $1 i32.const 3 i32.shl - local.tee $0 - call $~lib/rt/itcms/__renew local.tee $2 + call $~lib/rt/itcms/__renew + local.tee $1 i32.store - local.get $2 + local.get $1 if + local.get $0 local.get $1 - local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 local.get $0 + local.get $2 i32.store offset=8 + local.get $0 local.get $1 - local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -39148,7 +38726,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u @@ -39162,7 +38740,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 3 @@ -39175,7 +38753,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 4 @@ -39188,7 +38766,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 5 @@ -39633,18 +39211,10 @@ i32.add global.set $~lib/memory/__stack_pointer ) - (func $std/typedarray/testArrayReverse<~lib/typedarray/Int32Array,i32> - (local $0 i32) + (func $~lib/typedarray/Uint8Array#toString (param $0 i32) (result i32) (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) global.get $~lib/memory/__stack_pointer - i32.const 20 + i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -39660,1947 +39230,226 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - i64.const 0 - i64.store - local.get $1 - i64.const 0 - i64.store offset=8 - local.get $1 i32.const 0 - i32.store offset=16 - local.get $1 - i32.const 7616 i32.store local.get $1 - i32.const 7628 - i32.load - local.tee $2 - call $~lib/typedarray/Int32Array#constructor - local.tee $3 - i32.store offset=4 + i32.const 9584 + i32.store + local.get $0 + call $~lib/typedarray/Uint8Array#join global.get $~lib/memory/__stack_pointer - local.get $2 - call $~lib/typedarray/Int32Array#constructor - local.tee $4 - i32.store offset=8 - loop $for-loop|0 - local.get $0 - local.get $2 - i32.lt_s - if - local.get $3 - local.get $0 - i32.const 7616 - local.get $0 - call $~lib/array/Array#__get - call $~lib/typedarray/Int32Array#__set - local.get $4 - local.get $0 - i32.const 7616 - local.get $0 - call $~lib/array/Array#__get - call $~lib/typedarray/Int32Array#__set - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $for-loop|0 - end - end - i32.const 0 - local.set $0 - local.get $3 - i32.load offset=4 - local.set $5 - local.get $3 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.tee $1 - i32.const 1 - i32.gt_u + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + ) + (func $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s if - local.get $1 + i32.const 33040 + i32.const 33088 i32.const 1 - i32.shr_u - local.set $6 - local.get $1 i32.const 1 - i32.sub - local.set $7 - loop $while-continue|0 - local.get $0 - local.get $6 - i32.lt_u - if - local.get $0 - i32.const 2 - i32.shl - local.get $5 - i32.add - local.tee $8 - i32.load - local.set $1 - local.get $8 - local.get $7 - local.get $0 - i32.sub - i32.const 2 - i32.shl - local.get $5 - i32.add - local.tee $8 - i32.load - i32.store - local.get $8 - local.get $1 - i32.store - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $while-continue|0 - end - end + call $~lib/builtins/abort + unreachable end + global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $0 - loop $for-loop|1 - local.get $0 + i32.store + local.get $0 + i32.load offset=8 + local.tee $3 + local.get $1 + i32.load offset=12 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 758 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + loop $for-loop|0 local.get $2 + local.get $3 i32.lt_s if - local.get $3 - local.get $0 - call $~lib/typedarray/Int32Array#__get - i32.const 7616 local.get $2 - i32.const 1 - i32.sub local.get $0 - i32.sub - call $~lib/array/Array#__get + i32.load offset=4 + i32.add + i32.load8_s + local.tee $4 + local.get $2 + local.get $1 + i32.load offset=4 + i32.add + i32.load8_s + local.tee $5 i32.ne if + global.get $~lib/memory/__stack_pointer + i32.const 11344 + i32.store + i32.const 11344 + i32.const 3 + local.get $2 + f64.convert_i32_s + local.get $4 + f64.convert_i32_s + local.get $5 + f64.convert_i32_s + f64.const 0 + f64.const 0 + call $~lib/builtins/trace i32.const 0 i32.const 1568 - i32.const 570 - i32.const 5 + i32.const 764 + i32.const 7 call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 - br $for-loop|1 + local.set $2 + br $for-loop|0 end end global.get $~lib/memory/__stack_pointer - local.get $4 i32.const 4 - i32.const 8 - call $~lib/typedarray/Int32Array#subarray - local.set $2 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=12 - i32.const 0 - local.set $0 - local.get $2 - i32.load offset=4 - local.set $3 - local.get $2 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.tee $4 - i32.const 1 - i32.gt_u - if - local.get $4 - i32.const 1 - i32.shr_u - local.set $5 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - loop $while-continue|01 - local.get $0 - local.get $5 - i32.lt_u - if - local.get $0 - i32.const 2 - i32.shl - local.get $3 - i32.add - local.tee $6 - i32.load - local.set $7 - local.get $6 - local.get $4 - local.get $0 - i32.sub - i32.const 2 - i32.shl - local.get $3 - i32.add - local.tee $6 - i32.load - i32.store - local.get $6 - local.get $7 - i32.store - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $while-continue|01 - end - end - end - local.get $2 - i32.store offset=16 - local.get $2 - i32.const 0 - call $~lib/typedarray/Int32Array#__get - i32.const 8 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 575 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - call $~lib/typedarray/Int32Array#__get - i32.const 7 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 576 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 2 - call $~lib/typedarray/Int32Array#__get - i32.const 6 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 577 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 3 - call $~lib/typedarray/Int32Array#__get - i32.const 5 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 578 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 20 i32.add global.set $~lib/memory/__stack_pointer ) - (func $std/typedarray/testArrayReverse<~lib/typedarray/Uint32Array,u32> + (func $std/typedarray/testTypedArraySet<~lib/typedarray/Int8Array> (local $0 i32) (local $1 i32) - (local $2 i32) - (local $3 i32) + (local $2 f64) + (local $3 f32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) (local $8 i32) - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $1 - i64.const 0 - i64.store - local.get $1 - i64.const 0 - i64.store offset=8 - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.const 7616 - i32.store - local.get $1 - i32.const 7628 - i32.load - local.tee $2 - call $~lib/typedarray/Uint32Array#constructor - local.tee $3 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $2 - call $~lib/typedarray/Uint32Array#constructor - local.tee $4 - i32.store offset=8 - loop $for-loop|0 - local.get $0 - local.get $2 - i32.lt_s - if - local.get $3 - local.get $0 - i32.const 7616 - local.get $0 - call $~lib/array/Array#__get - call $~lib/typedarray/Uint32Array#__set - local.get $4 - local.get $0 - i32.const 7616 - local.get $0 - call $~lib/array/Array#__get - call $~lib/typedarray/Uint32Array#__set - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $for-loop|0 - end - end - i32.const 0 - local.set $0 - local.get $3 - i32.load offset=4 - local.set $5 - local.get $3 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.tee $1 - i32.const 1 - i32.gt_u - if - local.get $1 - i32.const 1 - i32.shr_u - local.set $6 - local.get $1 - i32.const 1 - i32.sub - local.set $7 - loop $while-continue|0 - local.get $0 - local.get $6 - i32.lt_u - if - local.get $0 - i32.const 2 - i32.shl - local.get $5 - i32.add - local.tee $8 - i32.load - local.set $1 - local.get $8 - local.get $7 - local.get $0 - i32.sub - i32.const 2 - i32.shl - local.get $5 - i32.add - local.tee $8 - i32.load - i32.store - local.get $8 - local.get $1 - i32.store - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $while-continue|0 - end - end - end - i32.const 0 - local.set $0 - loop $for-loop|1 - local.get $0 - local.get $2 - i32.lt_s - if - local.get $3 - local.get $0 - call $~lib/typedarray/Uint32Array#__get - i32.const 7616 - local.get $2 - i32.const 1 - i32.sub - local.get $0 - i32.sub - call $~lib/array/Array#__get - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 570 - i32.const 5 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $for-loop|1 - end - end - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.const 8 - call $~lib/typedarray/Uint32Array#subarray - local.set $2 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=12 - i32.const 0 - local.set $0 - local.get $2 - i32.load offset=4 - local.set $3 - local.get $2 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.tee $4 - i32.const 1 - i32.gt_u - if - local.get $4 - i32.const 1 - i32.shr_u - local.set $5 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - loop $while-continue|01 - local.get $0 - local.get $5 - i32.lt_u - if - local.get $0 - i32.const 2 - i32.shl - local.get $3 - i32.add - local.tee $6 - i32.load - local.set $7 - local.get $6 - local.get $4 - local.get $0 - i32.sub - i32.const 2 - i32.shl - local.get $3 - i32.add - local.tee $6 - i32.load - i32.store - local.get $6 - local.get $7 - i32.store - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $while-continue|01 - end - end - end - local.get $2 - i32.store offset=16 - local.get $2 - i32.const 0 - call $~lib/typedarray/Uint32Array#__get - i32.const 8 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 575 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - call $~lib/typedarray/Uint32Array#__get - i32.const 7 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 576 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 2 - call $~lib/typedarray/Uint32Array#__get - i32.const 6 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 577 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 3 - call $~lib/typedarray/Uint32Array#__get - i32.const 5 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 578 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.add - global.set $~lib/memory/__stack_pointer - ) - (func $std/typedarray/testArrayReverse<~lib/typedarray/Int64Array,i64> - (local $0 i32) - (local $1 i64) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $2 - i64.const 0 - i64.store - local.get $2 - i64.const 0 - i64.store offset=8 - local.get $2 - i32.const 0 - i32.store offset=16 - local.get $2 - i32.const 7616 - i32.store - local.get $2 - i32.const 7628 - i32.load - local.tee $2 - call $~lib/typedarray/Int64Array#constructor - local.tee $3 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $2 - call $~lib/typedarray/Int64Array#constructor - local.tee $4 - i32.store offset=8 - loop $for-loop|0 - local.get $0 - local.get $2 - i32.lt_s - if - local.get $3 - local.get $0 - i32.const 7616 - local.get $0 - call $~lib/array/Array#__get - i64.extend_i32_s - call $~lib/typedarray/Int64Array#__set - local.get $4 - local.get $0 - i32.const 7616 - local.get $0 - call $~lib/array/Array#__get - i64.extend_i32_s - call $~lib/typedarray/Int64Array#__set - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $for-loop|0 - end - end - i32.const 0 - local.set $0 - local.get $3 - i32.load offset=4 - local.set $5 - local.get $3 - i32.load offset=8 - i32.const 3 - i32.shr_u - local.tee $6 - i32.const 1 - i32.gt_u - if - local.get $6 - i32.const 1 - i32.shr_u - local.set $7 - local.get $6 - i32.const 1 - i32.sub - local.set $6 - loop $while-continue|0 - local.get $0 - local.get $7 - i32.lt_u - if - local.get $0 - i32.const 3 - i32.shl - local.get $5 - i32.add - local.tee $8 - i64.load - local.set $1 - local.get $8 - local.get $6 - local.get $0 - i32.sub - i32.const 3 - i32.shl - local.get $5 - i32.add - local.tee $8 - i64.load - i64.store - local.get $8 - local.get $1 - i64.store - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $while-continue|0 - end - end - end - i32.const 0 - local.set $0 - loop $for-loop|1 - local.get $0 - local.get $2 - i32.lt_s - if - local.get $3 - local.get $0 - call $~lib/typedarray/Int64Array#__get - i32.const 7616 - local.get $2 - i32.const 1 - i32.sub - local.get $0 - i32.sub - call $~lib/array/Array#__get - i64.extend_i32_s - i64.ne - if - i32.const 0 - i32.const 1568 - i32.const 570 - i32.const 5 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $for-loop|1 - end - end - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.const 8 - call $~lib/typedarray/Int64Array#subarray - local.set $3 - global.get $~lib/memory/__stack_pointer - local.get $3 - i32.store offset=12 - i32.const 0 - local.set $0 - local.get $3 - i32.load offset=4 - local.set $4 - local.get $3 - i32.load offset=8 - i32.const 3 - i32.shr_u - local.tee $5 - i32.const 1 - i32.gt_u - if - local.get $5 - i32.const 1 - i32.shr_u - local.set $6 - local.get $5 - i32.const 1 - i32.sub - local.set $5 - loop $while-continue|01 - local.get $0 - local.get $6 - i32.lt_u - if - local.get $0 - i32.const 3 - i32.shl - local.get $4 - i32.add - local.tee $7 - i64.load - local.set $1 - local.get $7 - local.get $5 - local.get $0 - i32.sub - i32.const 3 - i32.shl - local.get $4 - i32.add - local.tee $7 - i64.load - i64.store - local.get $7 - local.get $1 - i64.store - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $while-continue|01 - end - end - end - local.get $3 - i32.store offset=16 - local.get $3 - i32.const 0 - call $~lib/typedarray/Int64Array#__get - i64.const 8 - i64.ne - if - i32.const 0 - i32.const 1568 - i32.const 575 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - call $~lib/typedarray/Int64Array#__get - i64.const 7 - i64.ne - if - i32.const 0 - i32.const 1568 - i32.const 576 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 2 - call $~lib/typedarray/Int64Array#__get - i64.const 6 - i64.ne - if - i32.const 0 - i32.const 1568 - i32.const 577 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - call $~lib/typedarray/Int64Array#__get - i64.const 5 - i64.ne - if - i32.const 0 - i32.const 1568 - i32.const 578 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.add - global.set $~lib/memory/__stack_pointer - ) - (func $std/typedarray/testArrayReverse<~lib/typedarray/Uint64Array,u64> - (local $0 i32) - (local $1 i64) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $2 - i64.const 0 - i64.store - local.get $2 - i64.const 0 - i64.store offset=8 - local.get $2 - i32.const 0 - i32.store offset=16 - local.get $2 - i32.const 7616 - i32.store - local.get $2 - i32.const 7628 - i32.load - local.tee $2 - call $~lib/typedarray/Uint64Array#constructor - local.tee $3 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $2 - call $~lib/typedarray/Uint64Array#constructor - local.tee $4 - i32.store offset=8 - loop $for-loop|0 - local.get $0 - local.get $2 - i32.lt_s - if - local.get $3 - local.get $0 - i32.const 7616 - local.get $0 - call $~lib/array/Array#__get - i64.extend_i32_s - call $~lib/typedarray/Uint64Array#__set - local.get $4 - local.get $0 - i32.const 7616 - local.get $0 - call $~lib/array/Array#__get - i64.extend_i32_s - call $~lib/typedarray/Uint64Array#__set - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $for-loop|0 - end - end - i32.const 0 - local.set $0 - local.get $3 - i32.load offset=4 - local.set $5 - local.get $3 - i32.load offset=8 - i32.const 3 - i32.shr_u - local.tee $6 - i32.const 1 - i32.gt_u - if - local.get $6 - i32.const 1 - i32.shr_u - local.set $7 - local.get $6 - i32.const 1 - i32.sub - local.set $6 - loop $while-continue|0 - local.get $0 - local.get $7 - i32.lt_u - if - local.get $0 - i32.const 3 - i32.shl - local.get $5 - i32.add - local.tee $8 - i64.load - local.set $1 - local.get $8 - local.get $6 - local.get $0 - i32.sub - i32.const 3 - i32.shl - local.get $5 - i32.add - local.tee $8 - i64.load - i64.store - local.get $8 - local.get $1 - i64.store - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $while-continue|0 - end - end - end - i32.const 0 - local.set $0 - loop $for-loop|1 - local.get $0 - local.get $2 - i32.lt_s - if - local.get $3 - local.get $0 - call $~lib/typedarray/Uint64Array#__get - i32.const 7616 - local.get $2 - i32.const 1 - i32.sub - local.get $0 - i32.sub - call $~lib/array/Array#__get - i64.extend_i32_s - i64.ne - if - i32.const 0 - i32.const 1568 - i32.const 570 - i32.const 5 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $for-loop|1 - end - end - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.const 8 - call $~lib/typedarray/Uint64Array#subarray - local.set $3 - global.get $~lib/memory/__stack_pointer - local.get $3 - i32.store offset=12 - i32.const 0 - local.set $0 - local.get $3 - i32.load offset=4 - local.set $4 - local.get $3 - i32.load offset=8 - i32.const 3 - i32.shr_u - local.tee $5 - i32.const 1 - i32.gt_u - if - local.get $5 - i32.const 1 - i32.shr_u - local.set $6 - local.get $5 - i32.const 1 - i32.sub - local.set $5 - loop $while-continue|01 - local.get $0 - local.get $6 - i32.lt_u - if - local.get $0 - i32.const 3 - i32.shl - local.get $4 - i32.add - local.tee $7 - i64.load - local.set $1 - local.get $7 - local.get $5 - local.get $0 - i32.sub - i32.const 3 - i32.shl - local.get $4 - i32.add - local.tee $7 - i64.load - i64.store - local.get $7 - local.get $1 - i64.store - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $while-continue|01 - end - end - end - local.get $3 - i32.store offset=16 - local.get $3 - i32.const 0 - call $~lib/typedarray/Uint64Array#__get - i64.const 8 - i64.ne - if - i32.const 0 - i32.const 1568 - i32.const 575 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - call $~lib/typedarray/Uint64Array#__get - i64.const 7 - i64.ne - if - i32.const 0 - i32.const 1568 - i32.const 576 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 2 - call $~lib/typedarray/Uint64Array#__get - i64.const 6 - i64.ne - if - i32.const 0 - i32.const 1568 - i32.const 577 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - call $~lib/typedarray/Uint64Array#__get - i64.const 5 - i64.ne - if - i32.const 0 - i32.const 1568 - i32.const 578 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.add - global.set $~lib/memory/__stack_pointer - ) - (func $std/typedarray/testArrayReverse<~lib/typedarray/Float32Array,f32> - (local $0 i32) - (local $1 f32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $2 - i64.const 0 - i64.store - local.get $2 - i64.const 0 - i64.store offset=8 - local.get $2 - i32.const 0 - i32.store offset=16 - local.get $2 - i32.const 7616 - i32.store - local.get $2 - i32.const 7628 - i32.load - local.tee $2 - call $~lib/typedarray/Float32Array#constructor - local.tee $3 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $2 - call $~lib/typedarray/Float32Array#constructor - local.tee $4 - i32.store offset=8 - loop $for-loop|0 - local.get $0 - local.get $2 - i32.lt_s - if - local.get $3 - local.get $0 - i32.const 7616 - local.get $0 - call $~lib/array/Array#__get - f32.convert_i32_s - call $~lib/typedarray/Float32Array#__set - local.get $4 - local.get $0 - i32.const 7616 - local.get $0 - call $~lib/array/Array#__get - f32.convert_i32_s - call $~lib/typedarray/Float32Array#__set - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $for-loop|0 - end - end - i32.const 0 - local.set $0 - local.get $3 - i32.load offset=4 - local.set $5 - local.get $3 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.tee $6 - i32.const 1 - i32.gt_u - if - local.get $6 - i32.const 1 - i32.shr_u - local.set $7 - local.get $6 - i32.const 1 - i32.sub - local.set $6 - loop $while-continue|0 - local.get $0 - local.get $7 - i32.lt_u - if - local.get $0 - i32.const 2 - i32.shl - local.get $5 - i32.add - local.tee $8 - f32.load - local.set $1 - local.get $8 - local.get $6 - local.get $0 - i32.sub - i32.const 2 - i32.shl - local.get $5 - i32.add - local.tee $8 - f32.load - f32.store - local.get $8 - local.get $1 - f32.store - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $while-continue|0 - end - end - end - i32.const 0 - local.set $0 - loop $for-loop|1 - local.get $0 - local.get $2 - i32.lt_s - if - local.get $3 - local.get $0 - call $~lib/typedarray/Float32Array#__get - i32.const 7616 - local.get $2 - i32.const 1 - i32.sub - local.get $0 - i32.sub - call $~lib/array/Array#__get - f32.convert_i32_s - f32.ne - if - i32.const 0 - i32.const 1568 - i32.const 570 - i32.const 5 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $for-loop|1 - end - end - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.const 8 - call $~lib/typedarray/Float32Array#subarray - local.set $3 - global.get $~lib/memory/__stack_pointer - local.get $3 - i32.store offset=12 - i32.const 0 - local.set $0 - local.get $3 - i32.load offset=4 - local.set $4 - local.get $3 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.tee $5 - i32.const 1 - i32.gt_u - if - local.get $5 - i32.const 1 - i32.shr_u - local.set $6 - local.get $5 - i32.const 1 - i32.sub - local.set $5 - loop $while-continue|01 - local.get $0 - local.get $6 - i32.lt_u - if - local.get $0 - i32.const 2 - i32.shl - local.get $4 - i32.add - local.tee $7 - f32.load - local.set $1 - local.get $7 - local.get $5 - local.get $0 - i32.sub - i32.const 2 - i32.shl - local.get $4 - i32.add - local.tee $7 - f32.load - f32.store - local.get $7 - local.get $1 - f32.store - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $while-continue|01 - end - end - end - local.get $3 - i32.store offset=16 - local.get $3 - i32.const 0 - call $~lib/typedarray/Float32Array#__get - f32.const 8 - f32.ne - if - i32.const 0 - i32.const 1568 - i32.const 575 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - call $~lib/typedarray/Float32Array#__get - f32.const 7 - f32.ne - if - i32.const 0 - i32.const 1568 - i32.const 576 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 2 - call $~lib/typedarray/Float32Array#__get - f32.const 6 - f32.ne - if - i32.const 0 - i32.const 1568 - i32.const 577 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - call $~lib/typedarray/Float32Array#__get - f32.const 5 - f32.ne - if - i32.const 0 - i32.const 1568 - i32.const 578 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.add - global.set $~lib/memory/__stack_pointer - ) - (func $std/typedarray/testArrayReverse<~lib/typedarray/Float64Array,f64> - (local $0 i32) - (local $1 f64) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $2 - i64.const 0 - i64.store - local.get $2 - i64.const 0 - i64.store offset=8 - local.get $2 - i32.const 0 - i32.store offset=16 - local.get $2 - i32.const 7616 - i32.store - local.get $2 - i32.const 7628 - i32.load - local.tee $2 - call $~lib/typedarray/Float64Array#constructor - local.tee $3 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $2 - call $~lib/typedarray/Float64Array#constructor - local.tee $4 - i32.store offset=8 - loop $for-loop|0 - local.get $0 - local.get $2 - i32.lt_s - if - local.get $3 - local.get $0 - i32.const 7616 - local.get $0 - call $~lib/array/Array#__get - f64.convert_i32_s - call $~lib/typedarray/Float64Array#__set - local.get $4 - local.get $0 - i32.const 7616 - local.get $0 - call $~lib/array/Array#__get - f64.convert_i32_s - call $~lib/typedarray/Float64Array#__set - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $for-loop|0 - end - end - i32.const 0 - local.set $0 - local.get $3 - i32.load offset=4 - local.set $5 - local.get $3 - i32.load offset=8 - i32.const 3 - i32.shr_u - local.tee $6 - i32.const 1 - i32.gt_u - if - local.get $6 - i32.const 1 - i32.shr_u - local.set $7 - local.get $6 - i32.const 1 - i32.sub - local.set $6 - loop $while-continue|0 - local.get $0 - local.get $7 - i32.lt_u - if - local.get $0 - i32.const 3 - i32.shl - local.get $5 - i32.add - local.tee $8 - f64.load - local.set $1 - local.get $8 - local.get $6 - local.get $0 - i32.sub - i32.const 3 - i32.shl - local.get $5 - i32.add - local.tee $8 - f64.load - f64.store - local.get $8 - local.get $1 - f64.store - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $while-continue|0 - end - end - end - i32.const 0 - local.set $0 - loop $for-loop|1 - local.get $0 - local.get $2 - i32.lt_s - if - local.get $3 - local.get $0 - call $~lib/typedarray/Float64Array#__get - i32.const 7616 - local.get $2 - i32.const 1 - i32.sub - local.get $0 - i32.sub - call $~lib/array/Array#__get - f64.convert_i32_s - f64.ne - if - i32.const 0 - i32.const 1568 - i32.const 570 - i32.const 5 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $for-loop|1 - end - end - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.const 4 - i32.const 8 - call $~lib/typedarray/Float64Array#subarray - local.set $3 - global.get $~lib/memory/__stack_pointer - local.get $3 - i32.store offset=12 - i32.const 0 - local.set $0 - local.get $3 - i32.load offset=4 - local.set $4 - local.get $3 - i32.load offset=8 - i32.const 3 - i32.shr_u - local.tee $5 - i32.const 1 - i32.gt_u - if - local.get $5 - i32.const 1 - i32.shr_u - local.set $6 - local.get $5 - i32.const 1 - i32.sub - local.set $5 - loop $while-continue|01 - local.get $0 - local.get $6 - i32.lt_u - if - local.get $0 - i32.const 3 - i32.shl - local.get $4 - i32.add - local.tee $7 - f64.load - local.set $1 - local.get $7 - local.get $5 - local.get $0 - i32.sub - i32.const 3 - i32.shl - local.get $4 - i32.add - local.tee $7 - f64.load - f64.store - local.get $7 - local.get $1 - f64.store - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $while-continue|01 - end - end - end - local.get $3 - i32.store offset=16 - local.get $3 - i32.const 0 - call $~lib/typedarray/Float64Array#__get - f64.const 8 - f64.ne - if - i32.const 0 - i32.const 1568 - i32.const 575 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - call $~lib/typedarray/Float64Array#__get - f64.const 7 - f64.ne - if - i32.const 0 - i32.const 1568 - i32.const 576 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 2 - call $~lib/typedarray/Float64Array#__get - f64.const 6 - f64.ne - if - i32.const 0 - i32.const 1568 - i32.const 577 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - call $~lib/typedarray/Float64Array#__get - f64.const 5 - f64.ne - if - i32.const 0 - i32.const 1568 - i32.const 578 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.add - global.set $~lib/memory/__stack_pointer - ) - (func $~lib/typedarray/Uint8Array#toString (param $0 i32) (result i32) - (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $1 - i32.const 0 - i32.store - local.get $1 - i32.const 9584 - i32.store - local.get $0 - call $~lib/typedarray/Uint8Array#join - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - ) - (func $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - local.get $0 - i32.load offset=8 - local.tee $3 - local.get $1 - i32.load offset=12 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 758 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - loop $for-loop|0 - local.get $2 - local.get $3 + (local $9 i32) + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 20 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 i32.lt_s if - local.get $2 - local.get $0 - i32.load offset=4 - i32.add - i32.load8_s - local.tee $4 - local.get $2 - local.get $1 - i32.load offset=4 - i32.add - i32.load8_s - local.tee $5 - i32.ne - if - global.get $~lib/memory/__stack_pointer - i32.const 11344 - i32.store - i32.const 11344 - i32.const 3 - local.get $2 - f64.convert_i32_s - local.get $4 - f64.convert_i32_s - local.get $5 - f64.convert_i32_s - f64.const 0 - f64.const 0 - call $~lib/builtins/trace - i32.const 0 - i32.const 1568 - i32.const 764 - i32.const 7 - call $~lib/builtins/abort - unreachable - end - local.get $2 + i32.const 33040 + i32.const 33088 i32.const 1 - i32.add - local.set $2 - br $for-loop|0 + i32.const 1 + call $~lib/builtins/abort + unreachable end - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - ) - (func $std/typedarray/testTypedArraySet<~lib/typedarray/Int8Array> - (local $0 i32) - (local $1 i32) - (local $2 f32) - (local $3 f64) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i64.const 0 + i64.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=16 + local.get $0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $7 + i32.store + local.get $7 + i32.const 0 + i64.const 7 + call $~lib/typedarray/Int64Array#__set + local.get $7 i32.const 1 + i64.const 8 + call $~lib/typedarray/Int64Array#__set + local.get $7 + i32.const 2 + i64.const 9 + call $~lib/typedarray/Int64Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 4 + call $~lib/typedarray/Uint8Array#constructor + local.tee $5 + i32.store offset=4 + local.get $5 + i32.const 0 + i32.const 100 + call $~lib/typedarray/Uint8Array#__set + local.get $5 i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $1 - i64.const 0 - i64.store - local.get $1 - i64.const 0 - i64.store offset=8 - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.const 3 - call $~lib/typedarray/Int64Array#constructor - local.tee $4 - i32.store - local.get $4 - i32.const 0 - i64.const 7 - call $~lib/typedarray/Int64Array#__set - local.get $4 - i32.const 1 - i64.const 8 - call $~lib/typedarray/Int64Array#__set - local.get $4 - i32.const 2 - i64.const 9 - call $~lib/typedarray/Int64Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 4 - call $~lib/typedarray/Uint8Array#constructor - local.tee $5 - i32.store offset=4 - local.get $5 - i32.const 0 - i32.const 100 - call $~lib/typedarray/Uint8Array#__set - local.get $5 - i32.const 1 - i32.const 101 - call $~lib/typedarray/Uint8Array#__set - local.get $5 - i32.const 2 - i32.const 102 - call $~lib/typedarray/Uint8Array#__set - local.get $5 - i32.const 3 - i32.const 103 - call $~lib/typedarray/Uint8Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 3 - call $~lib/typedarray/Int16Array#constructor - local.tee $1 - i32.store offset=8 - local.get $1 - i32.const 0 - i32.const 1000 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 1 - i32.const 1001 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 2 - i32.const 1002 - call $~lib/typedarray/Int16Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 10 - call $~lib/typedarray/Int8Array#constructor - local.tee $6 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 11008 - i32.store offset=16 - local.get $6 - call $~lib/typedarray/Int8Array#set<~lib/array/Array> - i32.const 10 - i32.const 0 - i32.const 15 - i32.const 11312 - call $~lib/rt/__newArray - local.set $7 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=16 - local.get $6 - local.get $7 - call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> - global.get $~lib/memory/__stack_pointer - i32.const 11088 - i32.store offset=16 - block $folding-inner0 - local.get $6 + i32.const 101 + call $~lib/typedarray/Uint8Array#__set + local.get $5 + i32.const 2 + i32.const 102 + call $~lib/typedarray/Uint8Array#__set + local.get $5 + i32.const 3 + i32.const 103 + call $~lib/typedarray/Uint8Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 3 + call $~lib/typedarray/Int16Array#constructor + local.tee $4 + i32.store offset=8 + local.get $4 + i32.const 0 + i32.const 1000 + call $~lib/typedarray/Int16Array#__set + local.get $4 + i32.const 1 + i32.const 1001 + call $~lib/typedarray/Int16Array#__set + local.get $4 + i32.const 2 + i32.const 1002 + call $~lib/typedarray/Int16Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 10 + call $~lib/typedarray/Int8Array#constructor + local.tee $0 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 11008 + i32.store offset=16 + local.get $0 + call $~lib/typedarray/Int8Array#set<~lib/array/Array> + i32.const 10 + i32.const 0 + i32.const 15 + i32.const 11312 + call $~lib/rt/__newArray + local.set $1 + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store offset=16 + local.get $0 + local.get $1 + call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> + global.get $~lib/memory/__stack_pointer + i32.const 11088 + i32.store offset=16 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 11100 i32.load @@ -41608,47 +39457,47 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $6 + local.get $1 i32.load offset=4 i32.const 3 i32.add - local.set $7 + local.set $8 i32.const 11092 i32.load - local.set $8 + local.set $9 i32.const 11100 i32.load - local.set $9 + local.set $1 loop $for-loop|0 - local.get $0 - local.get $9 - i32.lt_s + local.get $1 + local.get $6 + i32.gt_s if - local.get $0 - local.get $7 + local.get $6 + local.get $8 i32.add - local.get $0 + local.get $6 i32.const 2 i32.shl - local.get $8 + local.get $9 i32.add f32.load - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 f32.sub f32.const 0 f32.eq if (result i32) - local.get $2 + local.get $3 i32.trunc_f32_s else i32.const 0 end i32.store8 - local.get $0 + local.get $6 i32.const 1 i32.add - local.set $0 + local.set $6 br $for-loop|0 end end @@ -41657,34 +39506,35 @@ i32.const 15 i32.const 11392 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> - local.get $6 - local.get $4 + local.get $0 + local.get $7 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 0 i32.const 15 i32.const 11424 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $0 - local.get $6 + local.set $6 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 11196 i32.load @@ -41692,11 +39542,11 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $6 + local.get $1 i32.load offset=4 i32.const 2 i32.add - local.set $4 + local.set $1 i32.const 11188 i32.load local.set $7 @@ -41704,35 +39554,35 @@ i32.load local.set $8 loop $for-loop|04 - local.get $0 + local.get $6 local.get $8 i32.lt_s if - local.get $0 - local.get $4 + local.get $1 + local.get $6 i32.add - local.get $0 + local.get $6 i32.const 3 i32.shl local.get $7 i32.add f64.load - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 f64.sub f64.const 0 f64.eq if (result i32) - local.get $3 + local.get $2 i32.trunc_f64_s else i32.const 0 end i32.store8 - local.get $0 + local.get $6 i32.const 1 i32.add - local.set $0 + local.set $6 br $for-loop|04 end end @@ -41741,35 +39591,35 @@ i32.const 15 i32.const 11456 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> - local.get $6 + local.get $0 local.get $5 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Uint8Array> - local.get $6 - local.get $1 + local.get $0 + local.get $4 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $6 + local.get $0 call $~lib/typedarray/Int8Array#set<~lib/array/Array> i32.const 10 i32.const 0 i32.const 15 i32.const 11488 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -41830,167 +39680,168 @@ local.get $0 i32.load offset=4 i32.add - i32.load8_u - local.tee $4 - local.get $2 - local.get $1 - i32.load offset=4 - i32.add - i32.load8_u - local.tee $5 - i32.ne - if - global.get $~lib/memory/__stack_pointer - i32.const 11552 - i32.store - i32.const 11552 - i32.const 3 - local.get $2 - f64.convert_i32_s - local.get $4 - f64.convert_i32_u - local.get $5 - f64.convert_i32_u - f64.const 0 - f64.const 0 - call $~lib/builtins/trace - i32.const 0 - i32.const 1568 - i32.const 764 - i32.const 7 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $for-loop|0 - end - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - ) - (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint8Array> - (local $0 i32) - (local $1 i32) - (local $2 f32) - (local $3 f64) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $1 - i64.const 0 - i64.store - local.get $1 - i64.const 0 - i64.store offset=8 - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.const 3 - call $~lib/typedarray/Int64Array#constructor - local.tee $4 - i32.store - local.get $4 - i32.const 0 - i64.const 7 - call $~lib/typedarray/Int64Array#__set - local.get $4 - i32.const 1 - i64.const 8 - call $~lib/typedarray/Int64Array#__set - local.get $4 - i32.const 2 - i64.const 9 - call $~lib/typedarray/Int64Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 4 - call $~lib/typedarray/Uint8Array#constructor - local.tee $5 - i32.store offset=4 - local.get $5 - i32.const 0 - i32.const 100 - call $~lib/typedarray/Uint8Array#__set - local.get $5 - i32.const 1 - i32.const 101 - call $~lib/typedarray/Uint8Array#__set - local.get $5 - i32.const 2 - i32.const 102 - call $~lib/typedarray/Uint8Array#__set - local.get $5 - i32.const 3 - i32.const 103 - call $~lib/typedarray/Uint8Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 3 - call $~lib/typedarray/Int16Array#constructor - local.tee $1 - i32.store offset=8 - local.get $1 - i32.const 0 - i32.const 1000 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 1 - i32.const 1001 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 2 - i32.const 1002 - call $~lib/typedarray/Int16Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 10 - call $~lib/typedarray/Uint8Array#constructor - local.tee $6 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 11008 - i32.store offset=16 - local.get $6 - call $~lib/typedarray/Int8Array#set<~lib/array/Array> - i32.const 10 - i32.const 0 - i32.const 63 - i32.const 11520 - call $~lib/rt/__newArray - local.set $7 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=16 - local.get $6 - local.get $7 - call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> + i32.load8_u + local.tee $4 + local.get $2 + local.get $1 + i32.load offset=4 + i32.add + i32.load8_u + local.tee $5 + i32.ne + if + global.get $~lib/memory/__stack_pointer + i32.const 11552 + i32.store + i32.const 11552 + i32.const 3 + local.get $2 + f64.convert_i32_s + local.get $4 + f64.convert_i32_u + local.get $5 + f64.convert_i32_u + f64.const 0 + f64.const 0 + call $~lib/builtins/trace + i32.const 0 + i32.const 1568 + i32.const 764 + i32.const 7 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $for-loop|0 + end + end global.get $~lib/memory/__stack_pointer - i32.const 11088 - i32.store offset=16 + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + ) + (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint8Array> + (local $0 i32) + (local $1 i32) + (local $2 f64) + (local $3 f32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) block $folding-inner0 - local.get $6 + global.get $~lib/memory/__stack_pointer + i32.const 20 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + if + i32.const 33040 + i32.const 33088 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i64.const 0 + i64.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=16 + local.get $0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $7 + i32.store + local.get $7 + i32.const 0 + i64.const 7 + call $~lib/typedarray/Int64Array#__set + local.get $7 + i32.const 1 + i64.const 8 + call $~lib/typedarray/Int64Array#__set + local.get $7 + i32.const 2 + i64.const 9 + call $~lib/typedarray/Int64Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 4 + call $~lib/typedarray/Uint8Array#constructor + local.tee $5 + i32.store offset=4 + local.get $5 + i32.const 0 + i32.const 100 + call $~lib/typedarray/Uint8Array#__set + local.get $5 + i32.const 1 + i32.const 101 + call $~lib/typedarray/Uint8Array#__set + local.get $5 + i32.const 2 + i32.const 102 + call $~lib/typedarray/Uint8Array#__set + local.get $5 + i32.const 3 + i32.const 103 + call $~lib/typedarray/Uint8Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 3 + call $~lib/typedarray/Int16Array#constructor + local.tee $4 + i32.store offset=8 + local.get $4 + i32.const 0 + i32.const 1000 + call $~lib/typedarray/Int16Array#__set + local.get $4 + i32.const 1 + i32.const 1001 + call $~lib/typedarray/Int16Array#__set + local.get $4 + i32.const 2 + i32.const 1002 + call $~lib/typedarray/Int16Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 10 + call $~lib/typedarray/Uint8Array#constructor + local.tee $0 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 11008 + i32.store offset=16 + local.get $0 + call $~lib/typedarray/Int8Array#set<~lib/array/Array> + i32.const 10 + i32.const 0 + i32.const 63 + i32.const 11520 + call $~lib/rt/__newArray + local.set $1 + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store offset=16 + local.get $0 + local.get $1 + call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> + global.get $~lib/memory/__stack_pointer + i32.const 11088 + i32.store offset=16 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 11100 i32.load @@ -41998,47 +39849,47 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $6 + local.get $1 i32.load offset=4 i32.const 3 i32.add - local.set $7 + local.set $8 i32.const 11092 i32.load - local.set $8 + local.set $9 i32.const 11100 i32.load - local.set $9 + local.set $1 loop $for-loop|0 - local.get $0 - local.get $9 - i32.lt_s + local.get $1 + local.get $6 + i32.gt_s if - local.get $0 - local.get $7 + local.get $6 + local.get $8 i32.add - local.get $0 + local.get $6 i32.const 2 i32.shl - local.get $8 + local.get $9 i32.add f32.load - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 f32.sub f32.const 0 f32.eq if (result i32) - local.get $2 + local.get $3 i32.trunc_f32_u else i32.const 0 end i32.store8 - local.get $0 + local.get $6 i32.const 1 i32.add - local.set $0 + local.set $6 br $for-loop|0 end end @@ -42047,34 +39898,35 @@ i32.const 63 i32.const 11600 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> - local.get $6 - local.get $4 + local.get $0 + local.get $7 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 0 i32.const 63 i32.const 11632 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $0 - local.get $6 + local.set $6 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 11196 i32.load @@ -42082,11 +39934,11 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $6 + local.get $1 i32.load offset=4 i32.const 2 i32.add - local.set $4 + local.set $1 i32.const 11188 i32.load local.set $7 @@ -42094,35 +39946,35 @@ i32.load local.set $8 loop $for-loop|04 - local.get $0 + local.get $6 local.get $8 i32.lt_s if - local.get $0 - local.get $4 + local.get $1 + local.get $6 i32.add - local.get $0 + local.get $6 i32.const 3 i32.shl local.get $7 i32.add f64.load - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 f64.sub f64.const 0 f64.eq if (result i32) - local.get $3 + local.get $2 i32.trunc_f64_u else i32.const 0 end i32.store8 - local.get $0 + local.get $6 i32.const 1 i32.add - local.set $0 + local.set $6 br $for-loop|04 end end @@ -42131,35 +39983,35 @@ i32.const 63 i32.const 11664 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> - local.get $6 + local.get $0 local.get $5 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Uint8Array> - local.get $6 - local.get $1 + local.get $0 + local.get $4 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $6 + local.get $0 call $~lib/typedarray/Int8Array#set<~lib/array/Array> i32.const 10 i32.const 0 i32.const 63 i32.const 11696 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -42265,9 +40117,9 @@ ) (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint8ClampedArray> (local $0 i32) - (local $1 f32) + (local $1 i32) (local $2 f64) - (local $3 i32) + (local $3 f32) (local $4 i32) (local $5 i32) (local $6 i32) @@ -42275,130 +40127,131 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 20 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + if + i32.const 33040 + i32.const 33088 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i64.const 0 + i64.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=16 + local.get $0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $5 + i32.store + local.get $5 + i32.const 0 + i64.const 7 + call $~lib/typedarray/Int64Array#__set + local.get $5 i32.const 1 + i64.const 8 + call $~lib/typedarray/Int64Array#__set + local.get $5 + i32.const 2 + i64.const 9 + call $~lib/typedarray/Int64Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 4 + call $~lib/typedarray/Uint8Array#constructor + local.tee $6 + i32.store offset=4 + local.get $6 + i32.const 0 + i32.const 100 + call $~lib/typedarray/Uint8Array#__set + local.get $6 i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $3 - i64.const 0 - i64.store - local.get $3 - i64.const 0 - i64.store offset=8 - local.get $3 - i32.const 0 - i32.store offset=16 - local.get $3 - i32.const 3 - call $~lib/typedarray/Int64Array#constructor - local.tee $3 - i32.store - local.get $3 - i32.const 0 - i64.const 7 - call $~lib/typedarray/Int64Array#__set - local.get $3 - i32.const 1 - i64.const 8 - call $~lib/typedarray/Int64Array#__set - local.get $3 - i32.const 2 - i64.const 9 - call $~lib/typedarray/Int64Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 4 - call $~lib/typedarray/Uint8Array#constructor - local.tee $4 - i32.store offset=4 - local.get $4 - i32.const 0 - i32.const 100 - call $~lib/typedarray/Uint8Array#__set - local.get $4 - i32.const 1 - i32.const 101 - call $~lib/typedarray/Uint8Array#__set - local.get $4 - i32.const 2 - i32.const 102 - call $~lib/typedarray/Uint8Array#__set - local.get $4 - i32.const 3 - i32.const 103 - call $~lib/typedarray/Uint8Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 3 - call $~lib/typedarray/Int16Array#constructor - local.tee $5 - i32.store offset=8 - local.get $5 - i32.const 0 - i32.const 1000 - call $~lib/typedarray/Int16Array#__set - local.get $5 - i32.const 1 - i32.const 1001 - call $~lib/typedarray/Int16Array#__set - local.get $5 - i32.const 2 - i32.const 1002 - call $~lib/typedarray/Int16Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 10 - call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $6 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 11008 - i32.store offset=16 - block $folding-inner0 + i32.const 101 + call $~lib/typedarray/Uint8Array#__set + local.get $6 + i32.const 2 + i32.const 102 + call $~lib/typedarray/Uint8Array#__set + local.get $6 + i32.const 3 + i32.const 103 + call $~lib/typedarray/Uint8Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 3 + call $~lib/typedarray/Int16Array#constructor + local.tee $7 + i32.store offset=8 + local.get $7 + i32.const 0 + i32.const 1000 + call $~lib/typedarray/Int16Array#__set + local.get $7 + i32.const 1 + i32.const 1001 + call $~lib/typedarray/Int16Array#__set + local.get $7 + i32.const 2 + i32.const 1002 + call $~lib/typedarray/Int16Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 10 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.tee $0 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 11008 + i32.store offset=16 i32.const 11020 i32.load - local.get $6 + local.get $0 + local.tee $1 i32.load offset=8 i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $1 i32.load offset=4 - local.set $7 + local.set $8 i32.const 11012 i32.load - local.set $8 + local.set $9 i32.const 11020 i32.load - local.set $9 + local.set $1 loop $for-loop|0 - local.get $0 - local.get $9 - i32.lt_s + local.get $1 + local.get $4 + i32.gt_s if - local.get $0 - local.get $7 + local.get $4 + local.get $8 i32.add - i32.const 255 - local.get $0 + local.get $4 i32.const 2 i32.shl - local.get $8 + local.get $9 i32.add i32.load local.tee $10 + i32.const 255 + local.get $10 i32.sub i32.const 31 i32.shr_s - local.get $10 i32.or local.get $10 i32.const 31 @@ -42407,10 +40260,10 @@ i32.xor i32.and i32.store8 - local.get $0 + local.get $4 i32.const 1 i32.add - local.set $0 + local.set $4 br $for-loop|0 end end @@ -42419,19 +40272,20 @@ i32.const 63 i32.const 11728 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 i32.const 0 - local.set $0 - local.get $6 + local.set $4 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 11100 i32.load @@ -42439,11 +40293,11 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $6 + local.get $1 i32.load offset=4 i32.const 3 i32.add - local.set $7 + local.set $1 i32.const 11092 i32.load local.set $8 @@ -42451,28 +40305,28 @@ i32.load local.set $9 loop $for-loop|04 - local.get $0 + local.get $4 local.get $9 i32.lt_s if - local.get $0 - local.get $7 + local.get $1 + local.get $4 i32.add - local.get $0 + local.get $4 i32.const 2 i32.shl local.get $8 i32.add f32.load - local.tee $1 - local.get $1 + local.tee $3 + local.get $3 f32.sub f32.const 0 f32.eq if (result i32) f32.const 0 f32.const 255 - local.get $1 + local.get $3 f32.min f32.max i32.trunc_f32_u @@ -42480,10 +40334,10 @@ i32.const 0 end i32.store8 - local.get $0 + local.get $4 i32.const 1 i32.add - local.set $0 + local.set $4 br $for-loop|04 end end @@ -42492,15 +40346,15 @@ i32.const 63 i32.const 11824 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> - local.get $6 - local.get $3 + local.get $0 + local.get $5 i32.const 6 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int64Array> i32.const 10 @@ -42508,19 +40362,20 @@ i32.const 63 i32.const 11856 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $0 - local.get $6 + local.set $4 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 11196 i32.load @@ -42528,29 +40383,29 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $6 + local.get $1 i32.load offset=4 i32.const 2 i32.add - local.set $3 + local.set $1 i32.const 11188 i32.load - local.set $7 + local.set $5 i32.const 11196 i32.load local.set $8 loop $for-loop|08 - local.get $0 + local.get $4 local.get $8 i32.lt_s if - local.get $0 - local.get $3 + local.get $1 + local.get $4 i32.add - local.get $0 + local.get $4 i32.const 3 i32.shl - local.get $7 + local.get $5 i32.add f64.load local.tee $2 @@ -42569,10 +40424,10 @@ i32.const 0 end i32.store8 - local.get $0 + local.get $4 i32.const 1 i32.add - local.set $0 + local.set $4 br $for-loop|08 end end @@ -42581,26 +40436,27 @@ i32.const 63 i32.const 11888 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> + local.get $0 local.get $6 - local.get $4 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Uint8Array> - local.get $6 - local.get $5 + local.get $0 + local.get $7 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 i32.const 0 - local.set $0 - local.get $6 + local.set $4 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 11276 i32.load @@ -42608,35 +40464,35 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $6 + local.get $1 i32.load offset=4 i32.const 7 i32.add - local.set $3 + local.set $1 i32.const 11268 i32.load - local.set $4 + local.set $5 i32.const 11276 i32.load - local.set $5 + local.set $6 loop $for-loop|012 - local.get $0 - local.get $5 + local.get $4 + local.get $6 i32.lt_s if - local.get $0 - local.get $3 + local.get $1 + local.get $4 i32.add - i32.const 255 - local.get $0 local.get $4 + local.get $5 i32.add i32.load8_s local.tee $7 + i32.const 255 + local.get $7 i32.sub i32.const 31 i32.shr_s - local.get $7 i32.or local.get $7 i32.const 31 @@ -42645,10 +40501,10 @@ i32.xor i32.and i32.store8 - local.get $0 + local.get $4 i32.const 1 i32.add - local.set $0 + local.set $4 br $for-loop|012 end end @@ -42657,12 +40513,12 @@ i32.const 63 i32.const 11920 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -42774,173 +40630,174 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Int16Array> (local $0 i32) (local $1 i32) - (local $2 f32) - (local $3 f64) + (local $2 f64) + (local $3 f32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) (local $8 i32) (local $9 i32) - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 20 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + if + i32.const 33040 + i32.const 33088 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i64.const 0 + i64.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=16 + local.get $0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $7 + i32.store + local.get $7 + i32.const 0 + i64.const 7 + call $~lib/typedarray/Int64Array#__set + local.get $7 i32.const 1 + i64.const 8 + call $~lib/typedarray/Int64Array#__set + local.get $7 + i32.const 2 + i64.const 9 + call $~lib/typedarray/Int64Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 4 + call $~lib/typedarray/Uint8Array#constructor + local.tee $5 + i32.store offset=4 + local.get $5 + i32.const 0 + i32.const 100 + call $~lib/typedarray/Uint8Array#__set + local.get $5 i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $1 - i64.const 0 - i64.store - local.get $1 - i64.const 0 - i64.store offset=8 - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.const 3 - call $~lib/typedarray/Int64Array#constructor - local.tee $4 - i32.store - local.get $4 - i32.const 0 - i64.const 7 - call $~lib/typedarray/Int64Array#__set - local.get $4 - i32.const 1 - i64.const 8 - call $~lib/typedarray/Int64Array#__set - local.get $4 - i32.const 2 - i64.const 9 - call $~lib/typedarray/Int64Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 4 - call $~lib/typedarray/Uint8Array#constructor - local.tee $5 - i32.store offset=4 - local.get $5 - i32.const 0 - i32.const 100 - call $~lib/typedarray/Uint8Array#__set - local.get $5 - i32.const 1 - i32.const 101 - call $~lib/typedarray/Uint8Array#__set - local.get $5 - i32.const 2 - i32.const 102 - call $~lib/typedarray/Uint8Array#__set - local.get $5 - i32.const 3 - i32.const 103 - call $~lib/typedarray/Uint8Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 3 - call $~lib/typedarray/Int16Array#constructor - local.tee $1 - i32.store offset=8 - local.get $1 - i32.const 0 - i32.const 1000 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 1 - i32.const 1001 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 2 - i32.const 1002 - call $~lib/typedarray/Int16Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 10 - call $~lib/typedarray/Int16Array#constructor - local.tee $6 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 11008 - i32.store offset=16 - local.get $6 - call $~lib/typedarray/Int16Array#set<~lib/array/Array> - i32.const 10 - i32.const 1 - i32.const 64 - i32.const 11952 - call $~lib/rt/__newArray - local.set $7 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=16 - local.get $6 - local.get $7 - call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> - global.get $~lib/memory/__stack_pointer - i32.const 11088 - i32.store offset=16 - block $folding-inner0 + i32.const 101 + call $~lib/typedarray/Uint8Array#__set + local.get $5 + i32.const 2 + i32.const 102 + call $~lib/typedarray/Uint8Array#__set + local.get $5 + i32.const 3 + i32.const 103 + call $~lib/typedarray/Uint8Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 3 + call $~lib/typedarray/Int16Array#constructor + local.tee $4 + i32.store offset=8 + local.get $4 + i32.const 0 + i32.const 1000 + call $~lib/typedarray/Int16Array#__set + local.get $4 + i32.const 1 + i32.const 1001 + call $~lib/typedarray/Int16Array#__set + local.get $4 + i32.const 2 + i32.const 1002 + call $~lib/typedarray/Int16Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 10 + call $~lib/typedarray/Int16Array#constructor + local.tee $0 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 11008 + i32.store offset=16 + local.get $0 + call $~lib/typedarray/Int16Array#set<~lib/array/Array> + i32.const 10 + i32.const 1 + i32.const 64 + i32.const 11952 + call $~lib/rt/__newArray + local.set $1 + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store offset=16 + local.get $0 + local.get $1 + call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> + global.get $~lib/memory/__stack_pointer + i32.const 11088 + i32.store offset=16 i32.const 11100 i32.load i32.const 3 i32.add - local.get $6 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 1 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $1 i32.load offset=4 i32.const 6 i32.add - local.set $7 + local.set $8 i32.const 11092 i32.load - local.set $8 + local.set $9 i32.const 11100 i32.load - local.set $9 + local.set $1 loop $for-loop|0 - local.get $0 - local.get $9 - i32.lt_s + local.get $1 + local.get $6 + i32.gt_s if - local.get $0 + local.get $6 i32.const 1 i32.shl - local.get $7 + local.get $8 i32.add - local.get $0 + local.get $6 i32.const 2 i32.shl - local.get $8 + local.get $9 i32.add f32.load - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 f32.sub f32.const 0 f32.eq if (result i32) - local.get $2 + local.get $3 i32.trunc_f32_s else i32.const 0 end i32.store16 - local.get $0 + local.get $6 i32.const 1 i32.add - local.set $0 + local.set $6 br $for-loop|0 end end @@ -42949,48 +40806,49 @@ i32.const 64 i32.const 12048 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> - local.get $6 - local.get $4 + local.get $0 + local.get $7 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 1 i32.const 64 i32.const 12096 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $0 + local.set $6 i32.const 11196 i32.load i32.const 2 i32.add - local.get $6 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 1 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $1 i32.load offset=4 i32.const 4 i32.add - local.set $4 + local.set $1 i32.const 11188 i32.load local.set $7 @@ -42998,37 +40856,37 @@ i32.load local.set $8 loop $for-loop|04 - local.get $0 + local.get $6 local.get $8 i32.lt_s if - local.get $0 + local.get $6 i32.const 1 i32.shl - local.get $4 + local.get $1 i32.add - local.get $0 + local.get $6 i32.const 3 i32.shl local.get $7 i32.add f64.load - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 f64.sub f64.const 0 f64.eq if (result i32) - local.get $3 + local.get $2 i32.trunc_f64_s else i32.const 0 end i32.store16 - local.get $0 + local.get $6 i32.const 1 i32.add - local.set $0 + local.set $6 br $for-loop|04 end end @@ -43037,35 +40895,35 @@ i32.const 64 i32.const 12144 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> - local.get $6 + local.get $0 local.get $5 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Uint8Array> - local.get $6 - local.get $1 + local.get $0 + local.get $4 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $6 + local.get $0 call $~lib/typedarray/Int16Array#set<~lib/array/Array> i32.const 10 i32.const 1 i32.const 64 i32.const 12192 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -43177,173 +41035,174 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint16Array> (local $0 i32) (local $1 i32) - (local $2 f32) - (local $3 f64) + (local $2 f64) + (local $3 f32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) (local $8 i32) (local $9 i32) - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 20 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + if + i32.const 33040 + i32.const 33088 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i64.const 0 + i64.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=16 + local.get $0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $7 + i32.store + local.get $7 + i32.const 0 + i64.const 7 + call $~lib/typedarray/Int64Array#__set + local.get $7 i32.const 1 + i64.const 8 + call $~lib/typedarray/Int64Array#__set + local.get $7 + i32.const 2 + i64.const 9 + call $~lib/typedarray/Int64Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 4 + call $~lib/typedarray/Uint8Array#constructor + local.tee $5 + i32.store offset=4 + local.get $5 + i32.const 0 + i32.const 100 + call $~lib/typedarray/Uint8Array#__set + local.get $5 i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $1 - i64.const 0 - i64.store - local.get $1 - i64.const 0 - i64.store offset=8 - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.const 3 - call $~lib/typedarray/Int64Array#constructor - local.tee $4 - i32.store - local.get $4 - i32.const 0 - i64.const 7 - call $~lib/typedarray/Int64Array#__set - local.get $4 - i32.const 1 - i64.const 8 - call $~lib/typedarray/Int64Array#__set - local.get $4 - i32.const 2 - i64.const 9 - call $~lib/typedarray/Int64Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 4 - call $~lib/typedarray/Uint8Array#constructor - local.tee $5 - i32.store offset=4 - local.get $5 - i32.const 0 - i32.const 100 - call $~lib/typedarray/Uint8Array#__set - local.get $5 - i32.const 1 - i32.const 101 - call $~lib/typedarray/Uint8Array#__set - local.get $5 - i32.const 2 - i32.const 102 - call $~lib/typedarray/Uint8Array#__set - local.get $5 - i32.const 3 - i32.const 103 - call $~lib/typedarray/Uint8Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 3 - call $~lib/typedarray/Int16Array#constructor - local.tee $1 - i32.store offset=8 - local.get $1 - i32.const 0 - i32.const 1000 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 1 - i32.const 1001 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 2 - i32.const 1002 - call $~lib/typedarray/Int16Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 10 - call $~lib/typedarray/Uint16Array#constructor - local.tee $6 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 11008 - i32.store offset=16 - local.get $6 - call $~lib/typedarray/Int16Array#set<~lib/array/Array> - i32.const 10 - i32.const 1 - i32.const 65 - i32.const 12240 - call $~lib/rt/__newArray - local.set $7 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=16 - local.get $6 - local.get $7 - call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> - global.get $~lib/memory/__stack_pointer - i32.const 11088 - i32.store offset=16 - block $folding-inner0 + i32.const 101 + call $~lib/typedarray/Uint8Array#__set + local.get $5 + i32.const 2 + i32.const 102 + call $~lib/typedarray/Uint8Array#__set + local.get $5 + i32.const 3 + i32.const 103 + call $~lib/typedarray/Uint8Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 3 + call $~lib/typedarray/Int16Array#constructor + local.tee $4 + i32.store offset=8 + local.get $4 + i32.const 0 + i32.const 1000 + call $~lib/typedarray/Int16Array#__set + local.get $4 + i32.const 1 + i32.const 1001 + call $~lib/typedarray/Int16Array#__set + local.get $4 + i32.const 2 + i32.const 1002 + call $~lib/typedarray/Int16Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 10 + call $~lib/typedarray/Uint16Array#constructor + local.tee $0 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 11008 + i32.store offset=16 + local.get $0 + call $~lib/typedarray/Int16Array#set<~lib/array/Array> + i32.const 10 + i32.const 1 + i32.const 65 + i32.const 12240 + call $~lib/rt/__newArray + local.set $1 + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store offset=16 + local.get $0 + local.get $1 + call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> + global.get $~lib/memory/__stack_pointer + i32.const 11088 + i32.store offset=16 i32.const 11100 i32.load i32.const 3 i32.add - local.get $6 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 1 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $1 i32.load offset=4 i32.const 6 i32.add - local.set $7 + local.set $8 i32.const 11092 i32.load - local.set $8 + local.set $9 i32.const 11100 i32.load - local.set $9 + local.set $1 loop $for-loop|0 - local.get $0 - local.get $9 - i32.lt_s + local.get $1 + local.get $6 + i32.gt_s if - local.get $0 + local.get $6 i32.const 1 i32.shl - local.get $7 + local.get $8 i32.add - local.get $0 + local.get $6 i32.const 2 i32.shl - local.get $8 + local.get $9 i32.add f32.load - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 f32.sub f32.const 0 f32.eq if (result i32) - local.get $2 + local.get $3 i32.trunc_f32_u else i32.const 0 end i32.store16 - local.get $0 + local.get $6 i32.const 1 i32.add - local.set $0 + local.set $6 br $for-loop|0 end end @@ -43352,48 +41211,49 @@ i32.const 65 i32.const 12336 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> - local.get $6 - local.get $4 + local.get $0 + local.get $7 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 1 i32.const 65 i32.const 12384 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $0 + local.set $6 i32.const 11196 i32.load i32.const 2 i32.add - local.get $6 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 1 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $1 i32.load offset=4 i32.const 4 i32.add - local.set $4 + local.set $1 i32.const 11188 i32.load local.set $7 @@ -43401,37 +41261,37 @@ i32.load local.set $8 loop $for-loop|04 - local.get $0 + local.get $6 local.get $8 i32.lt_s if - local.get $0 + local.get $6 i32.const 1 i32.shl - local.get $4 + local.get $1 i32.add - local.get $0 + local.get $6 i32.const 3 i32.shl local.get $7 i32.add f64.load - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 f64.sub f64.const 0 f64.eq if (result i32) - local.get $3 + local.get $2 i32.trunc_f64_u else i32.const 0 end i32.store16 - local.get $0 + local.get $6 i32.const 1 i32.add - local.set $0 + local.set $6 br $for-loop|04 end end @@ -43440,35 +41300,35 @@ i32.const 65 i32.const 12432 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> - local.get $6 + local.get $0 local.get $5 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Uint8Array> - local.get $6 - local.get $1 + local.get $0 + local.get $4 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $6 + local.get $0 call $~lib/typedarray/Int16Array#set<~lib/array/Array> i32.const 10 i32.const 1 i32.const 65 i32.const 12480 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -43580,176 +41440,177 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Int32Array> (local $0 i32) (local $1 i32) - (local $2 f32) + (local $2 i32) (local $3 f64) - (local $4 i32) + (local $4 f32) (local $5 i32) (local $6 i32) (local $7 i32) (local $8 i32) (local $9 i32) (local $10 i32) - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 20 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + if + i32.const 33040 + i32.const 33088 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i64.const 0 + i64.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=16 + local.get $0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $8 + i32.store + local.get $8 + i32.const 0 + i64.const 7 + call $~lib/typedarray/Int64Array#__set + local.get $8 i32.const 1 + i64.const 8 + call $~lib/typedarray/Int64Array#__set + local.get $8 + i32.const 2 + i64.const 9 + call $~lib/typedarray/Int64Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 4 + call $~lib/typedarray/Uint8Array#constructor + local.tee $6 + i32.store offset=4 + local.get $6 + i32.const 0 + i32.const 100 + call $~lib/typedarray/Uint8Array#__set + local.get $6 i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $1 - i64.const 0 - i64.store - local.get $1 - i64.const 0 - i64.store offset=8 - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.const 3 - call $~lib/typedarray/Int64Array#constructor - local.tee $5 - i32.store - local.get $5 - i32.const 0 - i64.const 7 - call $~lib/typedarray/Int64Array#__set - local.get $5 - i32.const 1 - i64.const 8 - call $~lib/typedarray/Int64Array#__set - local.get $5 - i32.const 2 - i64.const 9 - call $~lib/typedarray/Int64Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 4 - call $~lib/typedarray/Uint8Array#constructor - local.tee $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.const 100 - call $~lib/typedarray/Uint8Array#__set - local.get $6 - i32.const 1 - i32.const 101 - call $~lib/typedarray/Uint8Array#__set - local.get $6 - i32.const 2 - i32.const 102 - call $~lib/typedarray/Uint8Array#__set - local.get $6 - i32.const 3 - i32.const 103 - call $~lib/typedarray/Uint8Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 3 - call $~lib/typedarray/Int16Array#constructor - local.tee $1 - i32.store offset=8 - local.get $1 - i32.const 0 - i32.const 1000 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 1 - i32.const 1001 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 2 - i32.const 1002 - call $~lib/typedarray/Int16Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 10 - call $~lib/typedarray/Int32Array#constructor - local.tee $7 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 11008 - i32.store offset=16 - local.get $7 - i32.const 11008 - i32.const 0 - call $~lib/typedarray/Int32Array#set<~lib/array/Array> - i32.const 10 - i32.const 2 - i32.const 16 - i32.const 12528 - call $~lib/rt/__newArray - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=16 - local.get $7 - local.get $4 - call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> - global.get $~lib/memory/__stack_pointer - i32.const 11088 - i32.store offset=16 - block $folding-inner0 + i32.const 101 + call $~lib/typedarray/Uint8Array#__set + local.get $6 + i32.const 2 + i32.const 102 + call $~lib/typedarray/Uint8Array#__set + local.get $6 + i32.const 3 + i32.const 103 + call $~lib/typedarray/Uint8Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 3 + call $~lib/typedarray/Int16Array#constructor + local.tee $5 + i32.store offset=8 + local.get $5 + i32.const 0 + i32.const 1000 + call $~lib/typedarray/Int16Array#__set + local.get $5 + i32.const 1 + i32.const 1001 + call $~lib/typedarray/Int16Array#__set + local.get $5 + i32.const 2 + i32.const 1002 + call $~lib/typedarray/Int16Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 10 + call $~lib/typedarray/Int32Array#constructor + local.tee $0 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 11008 + i32.store offset=16 + local.get $0 + i32.const 11008 + i32.const 0 + call $~lib/typedarray/Int32Array#set<~lib/array/Array> + i32.const 10 + i32.const 2 + i32.const 16 + i32.const 12528 + call $~lib/rt/__newArray + local.set $1 + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store offset=16 + local.get $0 + local.get $1 + call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> + global.get $~lib/memory/__stack_pointer + i32.const 11088 + i32.store offset=16 i32.const 11100 i32.load i32.const 3 i32.add - local.get $7 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $7 + local.get $1 i32.load offset=4 i32.const 12 i32.add - local.set $8 + local.set $9 i32.const 11092 i32.load - local.set $9 + local.set $2 i32.const 11100 i32.load - local.set $4 + local.set $1 loop $for-loop|0 - local.get $0 - local.get $4 - i32.lt_s + local.get $1 + local.get $7 + i32.gt_s if - local.get $9 - local.get $0 + local.get $7 i32.const 2 i32.shl local.tee $10 + local.get $2 i32.add f32.load - local.set $2 - local.get $8 + local.set $4 + local.get $9 local.get $10 i32.add - local.get $2 - local.get $2 + local.get $4 + local.get $4 f32.sub f32.const 0 f32.eq if (result i32) - local.get $2 + local.get $4 i32.trunc_f32_s else i32.const 0 end i32.store - local.get $0 + local.get $7 i32.const 1 i32.add - local.set $0 + local.set $7 br $for-loop|0 end end @@ -43758,68 +41619,69 @@ i32.const 16 i32.const 12640 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $7 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> - local.get $7 - local.get $5 + local.get $0 + local.get $8 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 2 i32.const 16 i32.const 12704 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $7 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $0 + local.set $2 i32.const 11196 i32.load i32.const 2 i32.add - local.get $7 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $7 + local.get $1 i32.load offset=4 i32.const 8 i32.add - local.set $4 + local.set $1 i32.const 11188 i32.load - local.set $5 + local.set $7 i32.const 11196 i32.load local.set $8 loop $for-loop|04 - local.get $0 + local.get $2 local.get $8 i32.lt_s if - local.get $0 + local.get $2 i32.const 2 i32.shl - local.get $4 + local.get $1 i32.add - local.get $0 + local.get $2 i32.const 3 i32.shl - local.get $5 + local.get $7 i32.add f64.load local.tee $3 @@ -43834,10 +41696,10 @@ i32.const 0 end i32.store - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|04 end end @@ -43846,35 +41708,35 @@ i32.const 16 i32.const 12768 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $7 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> - local.get $7 + local.get $0 local.get $6 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Uint8Array> - local.get $7 - local.get $1 + local.get $0 + local.get $5 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $7 + local.get $0 call $~lib/typedarray/Int32Array#set<~lib/array/Array> i32.const 10 i32.const 2 i32.const 16 i32.const 12832 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $7 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -43986,176 +41848,177 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint32Array> (local $0 i32) (local $1 i32) - (local $2 f32) + (local $2 i32) (local $3 f64) - (local $4 i32) + (local $4 f32) (local $5 i32) (local $6 i32) (local $7 i32) (local $8 i32) (local $9 i32) (local $10 i32) - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 20 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + if + i32.const 33040 + i32.const 33088 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i64.const 0 + i64.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=16 + local.get $0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $8 + i32.store + local.get $8 + i32.const 0 + i64.const 7 + call $~lib/typedarray/Int64Array#__set + local.get $8 + i32.const 1 + i64.const 8 + call $~lib/typedarray/Int64Array#__set + local.get $8 + i32.const 2 + i64.const 9 + call $~lib/typedarray/Int64Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 4 + call $~lib/typedarray/Uint8Array#constructor + local.tee $6 + i32.store offset=4 + local.get $6 + i32.const 0 + i32.const 100 + call $~lib/typedarray/Uint8Array#__set + local.get $6 i32.const 1 + i32.const 101 + call $~lib/typedarray/Uint8Array#__set + local.get $6 + i32.const 2 + i32.const 102 + call $~lib/typedarray/Uint8Array#__set + local.get $6 + i32.const 3 + i32.const 103 + call $~lib/typedarray/Uint8Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 3 + call $~lib/typedarray/Int16Array#constructor + local.tee $5 + i32.store offset=8 + local.get $5 + i32.const 0 + i32.const 1000 + call $~lib/typedarray/Int16Array#__set + local.get $5 i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $1 - i64.const 0 - i64.store - local.get $1 - i64.const 0 - i64.store offset=8 - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.const 3 - call $~lib/typedarray/Int64Array#constructor - local.tee $5 - i32.store - local.get $5 - i32.const 0 - i64.const 7 - call $~lib/typedarray/Int64Array#__set - local.get $5 - i32.const 1 - i64.const 8 - call $~lib/typedarray/Int64Array#__set - local.get $5 - i32.const 2 - i64.const 9 - call $~lib/typedarray/Int64Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 4 - call $~lib/typedarray/Uint8Array#constructor - local.tee $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.const 100 - call $~lib/typedarray/Uint8Array#__set - local.get $6 - i32.const 1 - i32.const 101 - call $~lib/typedarray/Uint8Array#__set - local.get $6 - i32.const 2 - i32.const 102 - call $~lib/typedarray/Uint8Array#__set - local.get $6 - i32.const 3 - i32.const 103 - call $~lib/typedarray/Uint8Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 3 - call $~lib/typedarray/Int16Array#constructor - local.tee $1 - i32.store offset=8 - local.get $1 - i32.const 0 - i32.const 1000 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 1 - i32.const 1001 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 2 - i32.const 1002 - call $~lib/typedarray/Int16Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 10 - call $~lib/typedarray/Uint32Array#constructor - local.tee $7 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 11008 - i32.store offset=16 - local.get $7 - i32.const 11008 - i32.const 0 - call $~lib/typedarray/Int32Array#set<~lib/array/Array> - i32.const 10 - i32.const 2 - i32.const 66 - i32.const 12896 - call $~lib/rt/__newArray - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=16 - local.get $7 - local.get $4 - call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> - global.get $~lib/memory/__stack_pointer - i32.const 11088 - i32.store offset=16 - block $folding-inner0 + i32.const 1001 + call $~lib/typedarray/Int16Array#__set + local.get $5 + i32.const 2 + i32.const 1002 + call $~lib/typedarray/Int16Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 10 + call $~lib/typedarray/Uint32Array#constructor + local.tee $0 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 11008 + i32.store offset=16 + local.get $0 + i32.const 11008 + i32.const 0 + call $~lib/typedarray/Int32Array#set<~lib/array/Array> + i32.const 10 + i32.const 2 + i32.const 66 + i32.const 12896 + call $~lib/rt/__newArray + local.set $1 + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store offset=16 + local.get $0 + local.get $1 + call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> + global.get $~lib/memory/__stack_pointer + i32.const 11088 + i32.store offset=16 i32.const 11100 i32.load i32.const 3 i32.add - local.get $7 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $7 + local.get $1 i32.load offset=4 i32.const 12 i32.add - local.set $8 + local.set $9 i32.const 11092 i32.load - local.set $9 + local.set $2 i32.const 11100 i32.load - local.set $4 + local.set $1 loop $for-loop|0 - local.get $0 - local.get $4 - i32.lt_s + local.get $1 + local.get $7 + i32.gt_s if - local.get $9 - local.get $0 + local.get $7 i32.const 2 i32.shl local.tee $10 + local.get $2 i32.add f32.load - local.set $2 - local.get $8 + local.set $4 + local.get $9 local.get $10 i32.add - local.get $2 - local.get $2 + local.get $4 + local.get $4 f32.sub f32.const 0 f32.eq if (result i32) - local.get $2 + local.get $4 i32.trunc_f32_u else i32.const 0 end i32.store - local.get $0 + local.get $7 i32.const 1 i32.add - local.set $0 + local.set $7 br $for-loop|0 end end @@ -44164,68 +42027,69 @@ i32.const 66 i32.const 13008 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $7 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> - local.get $7 - local.get $5 + local.get $0 + local.get $8 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 2 i32.const 66 i32.const 13072 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $7 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $0 + local.set $2 i32.const 11196 i32.load i32.const 2 i32.add - local.get $7 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $7 + local.get $1 i32.load offset=4 i32.const 8 i32.add - local.set $4 + local.set $1 i32.const 11188 i32.load - local.set $5 + local.set $7 i32.const 11196 i32.load local.set $8 loop $for-loop|04 - local.get $0 + local.get $2 local.get $8 i32.lt_s if - local.get $0 + local.get $2 i32.const 2 i32.shl - local.get $4 + local.get $1 i32.add - local.get $0 + local.get $2 i32.const 3 i32.shl - local.get $5 + local.get $7 i32.add f64.load local.tee $3 @@ -44240,10 +42104,10 @@ i32.const 0 end i32.store - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|04 end end @@ -44252,35 +42116,35 @@ i32.const 66 i32.const 13136 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $7 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> - local.get $7 + local.get $0 local.get $6 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Uint8Array> - local.get $7 - local.get $1 + local.get $0 + local.get $5 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $7 + local.get $0 call $~lib/typedarray/Int32Array#set<~lib/array/Array> i32.const 10 i32.const 2 i32.const 66 i32.const 13200 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $7 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -44393,135 +42257,136 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Int64Array> (local $0 i32) (local $1 i32) - (local $2 f64) - (local $3 f32) + (local $2 f32) + (local $3 f64) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) (local $8 i32) (local $9 i32) - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 20 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + if + i32.const 33040 + i32.const 33088 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i64.const 0 + i64.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=16 + local.get $0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $7 + i32.store + local.get $7 + i32.const 0 + i64.const 7 + call $~lib/typedarray/Int64Array#__set + local.get $7 i32.const 1 + i64.const 8 + call $~lib/typedarray/Int64Array#__set + local.get $7 + i32.const 2 + i64.const 9 + call $~lib/typedarray/Int64Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 4 + call $~lib/typedarray/Uint8Array#constructor + local.tee $5 + i32.store offset=4 + local.get $5 + i32.const 0 + i32.const 100 + call $~lib/typedarray/Uint8Array#__set + local.get $5 i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $1 - i64.const 0 - i64.store - local.get $1 - i64.const 0 - i64.store offset=8 - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.const 3 - call $~lib/typedarray/Int64Array#constructor - local.tee $4 - i32.store - local.get $4 - i32.const 0 - i64.const 7 - call $~lib/typedarray/Int64Array#__set - local.get $4 - i32.const 1 - i64.const 8 - call $~lib/typedarray/Int64Array#__set - local.get $4 - i32.const 2 - i64.const 9 - call $~lib/typedarray/Int64Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 4 - call $~lib/typedarray/Uint8Array#constructor - local.tee $5 - i32.store offset=4 - local.get $5 - i32.const 0 - i32.const 100 - call $~lib/typedarray/Uint8Array#__set - local.get $5 - i32.const 1 - i32.const 101 - call $~lib/typedarray/Uint8Array#__set - local.get $5 - i32.const 2 - i32.const 102 - call $~lib/typedarray/Uint8Array#__set - local.get $5 - i32.const 3 - i32.const 103 - call $~lib/typedarray/Uint8Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 3 - call $~lib/typedarray/Int16Array#constructor - local.tee $1 - i32.store offset=8 - local.get $1 - i32.const 0 - i32.const 1000 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 1 - i32.const 1001 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 2 - i32.const 1002 - call $~lib/typedarray/Int16Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 10 - call $~lib/typedarray/Int64Array#constructor - local.tee $6 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 11008 - i32.store offset=16 - local.get $6 - call $~lib/typedarray/Int64Array#set<~lib/array/Array> - i32.const 10 - i32.const 3 - i32.const 67 - i32.const 13264 - call $~lib/rt/__newArray - local.set $7 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=16 - local.get $6 - local.get $7 - call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> - global.get $~lib/memory/__stack_pointer - i32.const 11088 - i32.store offset=16 - block $folding-inner0 + i32.const 101 + call $~lib/typedarray/Uint8Array#__set + local.get $5 + i32.const 2 + i32.const 102 + call $~lib/typedarray/Uint8Array#__set + local.get $5 + i32.const 3 + i32.const 103 + call $~lib/typedarray/Uint8Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 3 + call $~lib/typedarray/Int16Array#constructor + local.tee $4 + i32.store offset=8 + local.get $4 + i32.const 0 + i32.const 1000 + call $~lib/typedarray/Int16Array#__set + local.get $4 + i32.const 1 + i32.const 1001 + call $~lib/typedarray/Int16Array#__set + local.get $4 + i32.const 2 + i32.const 1002 + call $~lib/typedarray/Int16Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 10 + call $~lib/typedarray/Int64Array#constructor + local.tee $0 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 11008 + i32.store offset=16 + local.get $0 + call $~lib/typedarray/Int64Array#set<~lib/array/Array> + i32.const 10 + i32.const 3 + i32.const 67 + i32.const 13264 + call $~lib/rt/__newArray + local.set $1 + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store offset=16 + local.get $0 + local.get $1 + call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> + global.get $~lib/memory/__stack_pointer + i32.const 11088 + i32.store offset=16 i32.const 11100 i32.load i32.const 3 i32.add - local.get $6 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $1 i32.load offset=4 i32.const 24 i32.add - local.set $7 + local.set $1 i32.const 11092 i32.load local.set $8 @@ -44529,37 +42394,37 @@ i32.load local.set $9 loop $for-loop|0 - local.get $0 + local.get $6 local.get $9 i32.lt_s if - local.get $0 + local.get $6 i32.const 3 i32.shl - local.get $7 + local.get $1 i32.add - local.get $0 + local.get $6 i32.const 2 i32.shl local.get $8 i32.add f32.load - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 f32.sub f32.const 0 f32.eq if (result i64) - local.get $3 + local.get $2 i64.trunc_f32_s else i64.const 0 end i64.store - local.get $0 + local.get $6 i32.const 1 i32.add - local.set $0 + local.set $6 br $for-loop|0 end end @@ -44568,48 +42433,49 @@ i32.const 67 i32.const 13424 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> - local.get $6 - local.get $4 + local.get $0 + local.get $7 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 3 i32.const 67 i32.const 13536 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $0 + local.set $6 i32.const 11196 i32.load i32.const 2 i32.add - local.get $6 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $1 i32.load offset=4 i32.const 16 i32.add - local.set $4 + local.set $1 i32.const 11188 i32.load local.set $7 @@ -44617,37 +42483,37 @@ i32.load local.set $8 loop $for-loop|04 - local.get $0 + local.get $6 local.get $8 i32.lt_s if - local.get $7 - local.get $0 + local.get $6 i32.const 3 i32.shl local.tee $9 + local.get $7 i32.add f64.load - local.set $2 - local.get $4 + local.set $3 + local.get $1 local.get $9 i32.add - local.get $2 - local.get $2 + local.get $3 + local.get $3 f64.sub f64.const 0 f64.eq if (result i64) - local.get $2 + local.get $3 i64.trunc_f64_s else i64.const 0 end i64.store - local.get $0 + local.get $6 i32.const 1 i32.add - local.set $0 + local.set $6 br $for-loop|04 end end @@ -44656,35 +42522,35 @@ i32.const 67 i32.const 13648 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> - local.get $6 + local.get $0 local.get $5 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Uint8Array> - local.get $6 - local.get $1 + local.get $0 + local.get $4 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $6 + local.get $0 call $~lib/typedarray/Int64Array#set<~lib/array/Array> i32.const 10 i32.const 3 i32.const 67 i32.const 13760 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -44797,135 +42663,136 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint64Array> (local $0 i32) (local $1 i32) - (local $2 f64) - (local $3 f32) + (local $2 f32) + (local $3 f64) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) (local $8 i32) (local $9 i32) - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 20 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + if + i32.const 33040 + i32.const 33088 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i64.const 0 + i64.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=16 + local.get $0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $7 + i32.store + local.get $7 + i32.const 0 + i64.const 7 + call $~lib/typedarray/Int64Array#__set + local.get $7 i32.const 1 + i64.const 8 + call $~lib/typedarray/Int64Array#__set + local.get $7 + i32.const 2 + i64.const 9 + call $~lib/typedarray/Int64Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 4 + call $~lib/typedarray/Uint8Array#constructor + local.tee $5 + i32.store offset=4 + local.get $5 + i32.const 0 + i32.const 100 + call $~lib/typedarray/Uint8Array#__set + local.get $5 i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $1 - i64.const 0 - i64.store - local.get $1 - i64.const 0 - i64.store offset=8 - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.const 3 - call $~lib/typedarray/Int64Array#constructor - local.tee $4 - i32.store - local.get $4 - i32.const 0 - i64.const 7 - call $~lib/typedarray/Int64Array#__set - local.get $4 - i32.const 1 - i64.const 8 - call $~lib/typedarray/Int64Array#__set - local.get $4 - i32.const 2 - i64.const 9 - call $~lib/typedarray/Int64Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 4 - call $~lib/typedarray/Uint8Array#constructor - local.tee $5 - i32.store offset=4 - local.get $5 - i32.const 0 - i32.const 100 - call $~lib/typedarray/Uint8Array#__set - local.get $5 - i32.const 1 - i32.const 101 - call $~lib/typedarray/Uint8Array#__set - local.get $5 - i32.const 2 - i32.const 102 - call $~lib/typedarray/Uint8Array#__set - local.get $5 - i32.const 3 - i32.const 103 - call $~lib/typedarray/Uint8Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 3 - call $~lib/typedarray/Int16Array#constructor - local.tee $1 - i32.store offset=8 - local.get $1 - i32.const 0 - i32.const 1000 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 1 - i32.const 1001 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 2 - i32.const 1002 - call $~lib/typedarray/Int16Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 10 - call $~lib/typedarray/Uint64Array#constructor - local.tee $6 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 11008 - i32.store offset=16 - local.get $6 - call $~lib/typedarray/Int64Array#set<~lib/array/Array> - i32.const 10 - i32.const 3 - i32.const 68 - i32.const 13872 - call $~lib/rt/__newArray - local.set $7 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=16 - local.get $6 - local.get $7 - call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> - global.get $~lib/memory/__stack_pointer - i32.const 11088 - i32.store offset=16 - block $folding-inner0 + i32.const 101 + call $~lib/typedarray/Uint8Array#__set + local.get $5 + i32.const 2 + i32.const 102 + call $~lib/typedarray/Uint8Array#__set + local.get $5 + i32.const 3 + i32.const 103 + call $~lib/typedarray/Uint8Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 3 + call $~lib/typedarray/Int16Array#constructor + local.tee $4 + i32.store offset=8 + local.get $4 + i32.const 0 + i32.const 1000 + call $~lib/typedarray/Int16Array#__set + local.get $4 + i32.const 1 + i32.const 1001 + call $~lib/typedarray/Int16Array#__set + local.get $4 + i32.const 2 + i32.const 1002 + call $~lib/typedarray/Int16Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 10 + call $~lib/typedarray/Uint64Array#constructor + local.tee $0 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 11008 + i32.store offset=16 + local.get $0 + call $~lib/typedarray/Int64Array#set<~lib/array/Array> + i32.const 10 + i32.const 3 + i32.const 68 + i32.const 13872 + call $~lib/rt/__newArray + local.set $1 + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store offset=16 + local.get $0 + local.get $1 + call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> + global.get $~lib/memory/__stack_pointer + i32.const 11088 + i32.store offset=16 i32.const 11100 i32.load i32.const 3 i32.add - local.get $6 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $1 i32.load offset=4 i32.const 24 i32.add - local.set $7 + local.set $1 i32.const 11092 i32.load local.set $8 @@ -44933,37 +42800,37 @@ i32.load local.set $9 loop $for-loop|0 - local.get $0 + local.get $6 local.get $9 i32.lt_s if - local.get $0 + local.get $6 i32.const 3 i32.shl - local.get $7 + local.get $1 i32.add - local.get $0 + local.get $6 i32.const 2 i32.shl local.get $8 i32.add f32.load - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 f32.sub f32.const 0 f32.eq if (result i64) - local.get $3 + local.get $2 i64.trunc_f32_u else i64.const 0 end i64.store - local.get $0 + local.get $6 i32.const 1 i32.add - local.set $0 + local.set $6 br $for-loop|0 end end @@ -44972,48 +42839,49 @@ i32.const 68 i32.const 14032 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> - local.get $6 - local.get $4 + local.get $0 + local.get $7 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 3 i32.const 68 i32.const 14144 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 i32.const 0 - local.set $0 + local.set $6 i32.const 11196 i32.load i32.const 2 i32.add - local.get $6 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $1 i32.load offset=4 i32.const 16 i32.add - local.set $4 + local.set $1 i32.const 11188 i32.load local.set $7 @@ -45021,37 +42889,37 @@ i32.load local.set $8 loop $for-loop|04 - local.get $0 + local.get $6 local.get $8 i32.lt_s if - local.get $7 - local.get $0 + local.get $6 i32.const 3 i32.shl local.tee $9 + local.get $7 i32.add f64.load - local.set $2 - local.get $4 + local.set $3 + local.get $1 local.get $9 i32.add - local.get $2 - local.get $2 + local.get $3 + local.get $3 f64.sub f64.const 0 f64.eq if (result i64) - local.get $2 + local.get $3 i64.trunc_f64_u else i64.const 0 end i64.store - local.get $0 + local.get $6 i32.const 1 i32.add - local.set $0 + local.set $6 br $for-loop|04 end end @@ -45060,35 +42928,35 @@ i32.const 68 i32.const 14256 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> - local.get $6 + local.get $0 local.get $5 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Uint8Array> - local.get $6 - local.get $1 + local.get $0 + local.get $4 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $6 + local.get $0 call $~lib/typedarray/Int64Array#set<~lib/array/Array> i32.const 10 i32.const 3 i32.const 68 i32.const 14368 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -45208,104 +43076,105 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 20 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + if + i32.const 33040 + i32.const 33088 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i64.const 0 + i64.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=16 + local.get $0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $1 + i32.store + local.get $1 + i32.const 0 + i64.const 7 + call $~lib/typedarray/Int64Array#__set + local.get $1 i32.const 1 + i64.const 8 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 2 + i64.const 9 + call $~lib/typedarray/Int64Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 4 + call $~lib/typedarray/Uint8Array#constructor + local.tee $2 + i32.store offset=4 + local.get $2 + i32.const 0 + i32.const 100 + call $~lib/typedarray/Uint8Array#__set + local.get $2 i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $1 - i64.const 0 - i64.store - local.get $1 - i64.const 0 - i64.store offset=8 - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.const 3 - call $~lib/typedarray/Int64Array#constructor - local.tee $3 - i32.store - local.get $3 - i32.const 0 - i64.const 7 - call $~lib/typedarray/Int64Array#__set - local.get $3 - i32.const 1 - i64.const 8 - call $~lib/typedarray/Int64Array#__set - local.get $3 - i32.const 2 - i64.const 9 - call $~lib/typedarray/Int64Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 4 - call $~lib/typedarray/Uint8Array#constructor - local.tee $4 - i32.store offset=4 - local.get $4 - i32.const 0 - i32.const 100 - call $~lib/typedarray/Uint8Array#__set - local.get $4 - i32.const 1 - i32.const 101 - call $~lib/typedarray/Uint8Array#__set - local.get $4 - i32.const 2 - i32.const 102 - call $~lib/typedarray/Uint8Array#__set - local.get $4 - i32.const 3 - i32.const 103 - call $~lib/typedarray/Uint8Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 3 - call $~lib/typedarray/Int16Array#constructor - local.tee $5 - i32.store offset=8 - local.get $5 - i32.const 0 - i32.const 1000 - call $~lib/typedarray/Int16Array#__set - local.get $5 - i32.const 1 - i32.const 1001 - call $~lib/typedarray/Int16Array#__set - local.get $5 - i32.const 2 - i32.const 1002 - call $~lib/typedarray/Int16Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 10 - call $~lib/typedarray/Float32Array#constructor - local.tee $6 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 11008 - i32.store offset=16 - block $folding-inner0 + i32.const 101 + call $~lib/typedarray/Uint8Array#__set + local.get $2 + i32.const 2 + i32.const 102 + call $~lib/typedarray/Uint8Array#__set + local.get $2 + i32.const 3 + i32.const 103 + call $~lib/typedarray/Uint8Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 3 + call $~lib/typedarray/Int16Array#constructor + local.tee $3 + i32.store offset=8 + local.get $3 + i32.const 0 + i32.const 1000 + call $~lib/typedarray/Int16Array#__set + local.get $3 + i32.const 1 + i32.const 1001 + call $~lib/typedarray/Int16Array#__set + local.get $3 + i32.const 2 + i32.const 1002 + call $~lib/typedarray/Int16Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 10 + call $~lib/typedarray/Float32Array#constructor + local.tee $0 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 11008 + i32.store offset=16 i32.const 11020 i32.load - local.get $6 + local.get $0 + local.tee $4 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $4 i32.load offset=4 local.set $7 i32.const 11012 @@ -45313,28 +43182,28 @@ local.set $8 i32.const 11020 i32.load - local.set $1 + local.set $4 loop $for-loop|0 - local.get $0 - local.get $1 - i32.lt_s + local.get $4 + local.get $5 + i32.gt_s if - local.get $0 + local.get $5 i32.const 2 i32.shl - local.tee $2 + local.tee $6 local.get $7 i32.add - local.get $2 + local.get $6 local.get $8 i32.add i32.load f32.convert_i32_s f32.store - local.get $0 + local.get $5 i32.const 1 i32.add - local.set $0 + local.set $5 br $for-loop|0 end end @@ -45343,17 +43212,17 @@ i32.const 61 i32.const 14480 call $~lib/rt/__newArray - local.set $0 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $4 i32.store offset=16 - local.get $6 local.get $0 + local.get $4 call $std/typedarray/valuesEqual<~lib/typedarray/Float32Array> global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 - local.get $6 + local.get $0 i32.const 11088 i32.const 3 call $~lib/typedarray/Int32Array#set<~lib/array/Array> @@ -45362,62 +43231,63 @@ i32.const 61 i32.const 14592 call $~lib/rt/__newArray - local.set $0 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $4 i32.store offset=16 - local.get $6 local.get $0 + local.get $4 call $std/typedarray/valuesEqual<~lib/typedarray/Float32Array> i32.const 0 - local.set $0 - local.get $3 + local.set $5 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.const 6 i32.add - local.get $6 + local.get $0 + local.tee $4 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $4 i32.load offset=4 i32.const 24 i32.add - local.set $1 - local.get $3 + local.set $4 + local.get $1 i32.load offset=4 - local.set $2 - local.get $3 + local.set $6 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $3 + local.set $1 loop $for-loop|01 - local.get $0 - local.get $3 - i32.lt_s + local.get $1 + local.get $5 + i32.gt_s if - local.get $0 + local.get $5 i32.const 2 i32.shl - local.get $1 + local.get $4 i32.add - local.get $0 + local.get $5 i32.const 3 i32.shl - local.get $2 + local.get $6 i32.add i64.load f32.convert_i64_s f32.store - local.get $0 + local.get $5 i32.const 1 i32.add - local.set $0 + local.set $5 br $for-loop|01 end end @@ -45426,104 +43296,106 @@ i32.const 61 i32.const 14656 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Float32Array> i32.const 0 - local.set $0 - local.get $4 + local.set $5 + local.get $2 i32.load offset=8 - local.get $6 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $1 i32.load offset=4 local.set $1 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 - local.get $4 + local.set $4 + local.get $2 i32.load offset=8 - local.set $3 + local.set $2 loop $for-loop|03 - local.get $0 - local.get $3 - i32.lt_s + local.get $2 + local.get $5 + i32.gt_s if - local.get $0 + local.get $5 i32.const 2 i32.shl local.get $1 i32.add - local.get $0 - local.get $2 + local.get $4 + local.get $5 i32.add i32.load8_u f32.convert_i32_u f32.store - local.get $0 + local.get $5 i32.const 1 i32.add - local.set $0 + local.set $5 br $for-loop|03 end end i32.const 0 - local.set $0 - local.get $5 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u i32.const 4 i32.add - local.get $6 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $1 i32.load offset=4 i32.const 16 i32.add local.set $1 - local.get $5 + local.get $3 i32.load offset=4 - local.set $2 - local.get $5 + local.set $4 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u local.set $3 loop $for-loop|05 - local.get $0 + local.get $2 local.get $3 i32.lt_s if - local.get $0 + local.get $2 i32.const 2 i32.shl local.get $1 i32.add - local.get $0 + local.get $2 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_s f32.convert_i32_s f32.store - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|05 end end @@ -45531,48 +43403,49 @@ i32.const 11264 i32.store offset=16 i32.const 0 - local.set $0 + local.set $2 i32.const 11276 i32.load i32.const 7 i32.add - local.get $6 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $6 + local.get $1 i32.load offset=4 i32.const 28 i32.add local.set $1 i32.const 11268 i32.load - local.set $2 + local.set $3 i32.const 11276 i32.load - local.set $3 + local.set $4 loop $for-loop|09 - local.get $0 - local.get $3 + local.get $2 + local.get $4 i32.lt_s if - local.get $0 + local.get $2 i32.const 2 i32.shl local.get $1 i32.add - local.get $0 local.get $2 + local.get $3 i32.add i32.load8_s f32.convert_i32_s f32.store - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|09 end end @@ -45581,12 +43454,12 @@ i32.const 61 i32.const 14720 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Float32Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -45667,134 +43540,135 @@ i32.const 14896 i32.store i32.const 14896 - i32.const 3 - local.get $2 - f64.convert_i32_s - local.get $5 - local.get $6 - f64.const 0 - f64.const 0 - call $~lib/builtins/trace - i32.const 0 - i32.const 1568 - i32.const 764 - i32.const 7 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $for-loop|0 - end - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - ) - (func $std/typedarray/testTypedArraySet<~lib/typedarray/Float64Array> - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16628 - i32.lt_s - if - i32.const 33040 - i32.const 33088 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $1 - i64.const 0 - i64.store - local.get $1 - i64.const 0 - i64.store offset=8 - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.const 3 - call $~lib/typedarray/Int64Array#constructor - local.tee $1 - i32.store - local.get $1 - i32.const 0 - i64.const 7 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 1 - i64.const 8 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 2 - i64.const 9 - call $~lib/typedarray/Int64Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 4 - call $~lib/typedarray/Uint8Array#constructor - local.tee $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.const 100 - call $~lib/typedarray/Uint8Array#__set - local.get $2 - i32.const 1 - i32.const 101 - call $~lib/typedarray/Uint8Array#__set - local.get $2 - i32.const 2 - i32.const 102 - call $~lib/typedarray/Uint8Array#__set - local.get $2 - i32.const 3 - i32.const 103 - call $~lib/typedarray/Uint8Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 3 - call $~lib/typedarray/Int16Array#constructor - local.tee $3 - i32.store offset=8 - local.get $3 - i32.const 0 - i32.const 1000 - call $~lib/typedarray/Int16Array#__set - local.get $3 - i32.const 1 - i32.const 1001 - call $~lib/typedarray/Int16Array#__set - local.get $3 - i32.const 2 - i32.const 1002 - call $~lib/typedarray/Int16Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 10 - call $~lib/typedarray/Float64Array#constructor - local.tee $4 - i32.store offset=12 + i32.const 3 + local.get $2 + f64.convert_i32_s + local.get $5 + local.get $6 + f64.const 0 + f64.const 0 + call $~lib/builtins/trace + i32.const 0 + i32.const 1568 + i32.const 764 + i32.const 7 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $for-loop|0 + end + end global.get $~lib/memory/__stack_pointer - i32.const 11008 - i32.store offset=16 + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + ) + (func $std/typedarray/testTypedArraySet<~lib/typedarray/Float64Array> + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 20 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + if + i32.const 33040 + i32.const 33088 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i64.const 0 + i64.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=16 + local.get $0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $1 + i32.store + local.get $1 + i32.const 0 + i64.const 7 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 1 + i64.const 8 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 2 + i64.const 9 + call $~lib/typedarray/Int64Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 4 + call $~lib/typedarray/Uint8Array#constructor + local.tee $2 + i32.store offset=4 + local.get $2 + i32.const 0 + i32.const 100 + call $~lib/typedarray/Uint8Array#__set + local.get $2 + i32.const 1 + i32.const 101 + call $~lib/typedarray/Uint8Array#__set + local.get $2 + i32.const 2 + i32.const 102 + call $~lib/typedarray/Uint8Array#__set + local.get $2 + i32.const 3 + i32.const 103 + call $~lib/typedarray/Uint8Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 3 + call $~lib/typedarray/Int16Array#constructor + local.tee $3 + i32.store offset=8 + local.get $3 + i32.const 0 + i32.const 1000 + call $~lib/typedarray/Int16Array#__set + local.get $3 + i32.const 1 + i32.const 1001 + call $~lib/typedarray/Int16Array#__set + local.get $3 + i32.const 2 + i32.const 1002 + call $~lib/typedarray/Int16Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 10 + call $~lib/typedarray/Float64Array#constructor + local.tee $0 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 11008 + i32.store offset=16 i32.const 11020 i32.load - local.get $4 + local.get $0 + local.tee $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -45802,7 +43676,7 @@ br_if $folding-inner0 local.get $4 i32.load offset=4 - local.set $5 + local.set $4 i32.const 11012 i32.load local.set $6 @@ -45810,16 +43684,16 @@ i32.load local.set $7 loop $for-loop|0 - local.get $0 + local.get $5 local.get $7 i32.lt_s if - local.get $0 + local.get $5 i32.const 3 i32.shl - local.get $5 + local.get $4 i32.add - local.get $0 + local.get $5 i32.const 2 i32.shl local.get $6 @@ -45827,10 +43701,10 @@ i32.load f64.convert_i32_s f64.store - local.get $0 + local.get $5 i32.const 1 i32.add - local.set $0 + local.set $5 br $for-loop|0 end end @@ -45839,23 +43713,24 @@ i32.const 62 i32.const 14784 call $~lib/rt/__newArray - local.set $0 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=16 local.get $4 + i32.store offset=16 local.get $0 + local.get $4 call $std/typedarray/valuesEqual<~lib/typedarray/Float64Array> global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 i32.const 0 - local.set $0 + local.set $5 i32.const 11100 i32.load i32.const 3 i32.add - local.get $4 + local.get $0 + local.tee $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -45865,7 +43740,7 @@ i32.load offset=4 i32.const 24 i32.add - local.set $5 + local.set $4 i32.const 11092 i32.load local.set $6 @@ -45873,16 +43748,16 @@ i32.load local.set $7 loop $for-loop|04 - local.get $0 + local.get $5 local.get $7 i32.lt_s if - local.get $0 + local.get $5 i32.const 3 i32.shl - local.get $5 + local.get $4 i32.add - local.get $0 + local.get $5 i32.const 2 i32.shl local.get $6 @@ -45890,10 +43765,10 @@ f32.load f64.promote_f32 f64.store - local.get $0 + local.get $5 i32.const 1 i32.add - local.set $0 + local.set $5 br $for-loop|04 end end @@ -45902,22 +43777,23 @@ i32.const 62 i32.const 14944 call $~lib/rt/__newArray - local.set $0 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=16 local.get $4 + i32.store offset=16 local.get $0 + local.get $4 call $std/typedarray/valuesEqual<~lib/typedarray/Float64Array> i32.const 0 - local.set $0 + local.set $5 local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.const 6 i32.add - local.get $4 + local.get $0 + local.tee $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -45927,7 +43803,7 @@ i32.load offset=4 i32.const 48 i32.add - local.set $5 + local.set $4 local.get $1 i32.load offset=4 local.set $6 @@ -45937,15 +43813,15 @@ i32.shr_u local.set $1 loop $for-loop|06 - local.get $0 local.get $1 - i32.lt_s + local.get $5 + i32.gt_s if local.get $5 - local.get $0 i32.const 3 i32.shl local.tee $7 + local.get $4 i32.add local.get $6 local.get $7 @@ -45953,10 +43829,10 @@ i64.load f64.convert_i64_s f64.store - local.get $0 + local.get $5 i32.const 1 i32.add - local.set $0 + local.set $5 br $for-loop|06 end end @@ -45965,104 +43841,106 @@ i32.const 62 i32.const 15056 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $4 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Float64Array> i32.const 0 - local.set $0 + local.set $5 local.get $2 i32.load offset=8 - local.get $4 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $4 + local.get $1 i32.load offset=4 local.set $1 local.get $2 i32.load offset=4 - local.set $5 + local.set $4 local.get $2 i32.load offset=8 local.set $2 loop $for-loop|08 - local.get $0 local.get $2 - i32.lt_s + local.get $5 + i32.gt_s if - local.get $0 + local.get $5 i32.const 3 i32.shl local.get $1 i32.add - local.get $0 + local.get $4 local.get $5 i32.add i32.load8_u f64.convert_i32_u f64.store - local.get $0 + local.get $5 i32.const 1 i32.add - local.set $0 + local.set $5 br $for-loop|08 end end i32.const 0 - local.set $0 + local.set $2 local.get $3 i32.load offset=8 i32.const 1 i32.shr_u i32.const 4 i32.add - local.get $4 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $4 + local.get $1 i32.load offset=4 i32.const 32 i32.add local.set $1 local.get $3 i32.load offset=4 - local.set $2 + local.set $4 local.get $3 i32.load offset=8 i32.const 1 i32.shr_u local.set $3 loop $for-loop|010 - local.get $0 + local.get $2 local.get $3 i32.lt_s if - local.get $0 + local.get $2 i32.const 3 i32.shl local.get $1 i32.add - local.get $0 + local.get $2 i32.const 1 i32.shl - local.get $2 + local.get $4 i32.add i32.load16_s f64.convert_i32_s f64.store - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|010 end end @@ -46070,48 +43948,49 @@ i32.const 11264 i32.store offset=16 i32.const 0 - local.set $0 + local.set $2 i32.const 11276 i32.load i32.const 7 i32.add - local.get $4 + local.get $0 + local.tee $1 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $4 + local.get $1 i32.load offset=4 i32.const 56 i32.add local.set $1 i32.const 11268 i32.load - local.set $2 + local.set $3 i32.const 11276 i32.load - local.set $3 + local.set $4 loop $for-loop|014 - local.get $0 - local.get $3 + local.get $2 + local.get $4 i32.lt_s if - local.get $0 + local.get $2 i32.const 3 i32.shl local.get $1 i32.add - local.get $0 local.get $2 + local.get $3 i32.add i32.load8_s f64.convert_i32_s f64.store - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|014 end end @@ -46120,12 +43999,12 @@ i32.const 62 i32.const 15168 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $4 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Float64Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -46144,64 +44023,63 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 f32) + (local $3 i64) + (local $4 f32) + (local $5 f64) (local $6 i32) - (local $7 f64) - (local $8 i64) - (local $9 i32) - (local $10 i32) - (local $11 i32) + (local $7 i32) + (local $8 i32) + (local $9 i64) + (local $10 f32) + (local $11 f64) (local $12 i32) - (local $13 i64) - (local $14 f32) - (local $15 f64) - (local $16 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) global.get $~lib/memory/__stack_pointer i32.const 32 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner36 - block $folding-inner35 - block $folding-inner34 - block $folding-inner33 - block $folding-inner32 - block $folding-inner31 - block $folding-inner30 - block $folding-inner29 - block $folding-inner28 - block $folding-inner27 - block $folding-inner26 - block $folding-inner25 - block $folding-inner24 - block $folding-inner23 - block $folding-inner22 - block $folding-inner21 - block $folding-inner20 - block $folding-inner19 - block $folding-inner18 - block $folding-inner17 - block $folding-inner16 - block $folding-inner15 - block $folding-inner14 - block $folding-inner13 - block $folding-inner12 - block $folding-inner11 - block $folding-inner10 - block $folding-inner9 - block $folding-inner8 - block $folding-inner7 - block $folding-inner6 - block $folding-inner5 - block $folding-inner4 - block $folding-inner3 - block $folding-inner2 - block $folding-inner1 + block $folding-inner35 + block $folding-inner34 + block $folding-inner33 + block $folding-inner32 + block $folding-inner31 + block $folding-inner30 + block $folding-inner29 + block $folding-inner28 + block $folding-inner27 + block $folding-inner26 + block $folding-inner25 + block $folding-inner24 + block $folding-inner23 + block $folding-inner22 + block $folding-inner21 + block $folding-inner20 + block $folding-inner19 + block $folding-inner18 + block $folding-inner17 + block $folding-inner16 + block $folding-inner15 + block $folding-inner14 + block $folding-inner13 + block $folding-inner12 + block $folding-inner11 + block $folding-inner10 + block $folding-inner9 + block $folding-inner8 + block $folding-inner7 + block $folding-inner6 + block $folding-inner5 + block $folding-inner4 + block $folding-inner3 + block $folding-inner2 + block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -46595,29 +44473,29 @@ global.get $~lib/memory/__stack_pointer i32.const 5 call $~lib/typedarray/Int8Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 1 i32.const 3 @@ -46627,12 +44505,12 @@ i32.const 15 i32.const 1728 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $2 local.get $0 + local.get $1 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -46643,7 +44521,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 0 i32.const 0 i32.const 2147483647 @@ -46653,12 +44531,12 @@ i32.const 15 i32.const 1808 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $2 local.get $0 + local.get $1 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -46669,7 +44547,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 1 i32.const 0 i32.const -3 @@ -46679,12 +44557,12 @@ i32.const 15 i32.const 1840 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $2 local.get $0 + local.get $1 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -46695,7 +44573,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 2 i32.const -2 i32.const 2147483647 @@ -46705,12 +44583,12 @@ i32.const 15 i32.const 1872 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $2 local.get $0 + local.get $1 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -46721,7 +44599,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.const 0 i32.const 1 i32.const 0 @@ -46731,12 +44609,12 @@ i32.const 15 i32.const 1904 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $2 local.get $0 + local.get $1 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -46748,7 +44626,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Int8Array#subarray @@ -46803,12 +44681,12 @@ i32.const 15 i32.const 1936 call $~lib/rt/__newArray - local.set $0 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $6 i32.store offset=4 local.get $1 - local.get $0 + local.get $6 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -46824,12 +44702,12 @@ i32.const 15 i32.const 1968 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $2 local.get $0 + local.get $1 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -46843,65 +44721,65 @@ global.get $~lib/memory/__stack_pointer i32.const 5 call $~lib/typedarray/Int32Array#constructor - local.tee $4 + local.tee $6 i32.store offset=8 - local.get $4 + local.get $6 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $6 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $6 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $6 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $6 i32.const 4 i32.const 5 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $6 i32.load offset=4 - local.set $2 + local.set $1 i32.const 1 - local.get $4 + local.get $6 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 - local.get $0 + local.tee $7 + local.get $7 i32.const 1 i32.gt_u select - local.set $1 + local.set $0 i32.const 3 - local.get $0 - local.get $0 + local.get $7 + local.get $7 i32.const 3 i32.gt_u select - local.set $0 + local.set $7 loop $for-loop|0 local.get $0 - local.get $1 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add i32.const 1 i32.store - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|0 end end @@ -46914,7 +44792,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $4 + local.get $6 local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz @@ -46926,34 +44804,34 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 i32.load offset=4 - local.set $2 + local.set $0 i32.const 0 - local.get $4 + local.get $6 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $1 - local.get $1 + local.tee $7 + local.get $7 select - local.set $0 + local.set $1 loop $for-loop|01 - local.get $0 local.get $1 + local.get $7 i32.lt_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $0 i32.add i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|01 end end @@ -46966,7 +44844,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $4 + local.get $6 local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz @@ -46978,44 +44856,44 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 i32.load offset=4 - local.set $2 + local.set $1 i32.const 0 - local.get $4 + local.get $6 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 - local.get $0 + local.tee $7 + local.get $7 select - local.set $1 - local.get $0 + local.set $0 + local.get $7 i32.const 3 i32.sub - local.tee $0 + local.tee $7 i32.const 0 - local.get $0 + local.get $7 i32.const 0 i32.gt_s select - local.set $0 + local.set $7 loop $for-loop|03 local.get $0 - local.get $1 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add i32.const 1 i32.store - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|03 end end @@ -47028,7 +44906,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $4 + local.get $6 local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz @@ -47040,39 +44918,39 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 i32.load offset=4 - local.set $2 - local.get $4 + local.set $0 + local.get $6 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $1 + local.tee $7 i32.const 2 i32.sub - local.tee $0 + local.tee $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 i32.gt_s select - local.set $0 + local.set $1 loop $for-loop|05 - local.get $0 local.get $1 + local.get $7 i32.lt_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $0 i32.add i32.const 2 i32.store - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|05 end end @@ -47085,7 +44963,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $4 + local.get $6 local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz @@ -47097,41 +44975,41 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 i32.load offset=4 - local.set $2 + local.set $1 i32.const 1 - local.get $4 + local.get $6 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 - local.get $0 + local.tee $7 + local.get $7 i32.const 1 i32.gt_u select - local.set $1 + local.set $0 i32.const 0 - local.get $0 - local.get $0 + local.get $7 + local.get $7 select - local.set $0 + local.set $7 loop $for-loop|07 local.get $0 - local.get $1 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|07 end end @@ -47144,7 +45022,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $4 + local.get $6 local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz @@ -47157,44 +45035,44 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#subarray - local.tee $3 + local.tee $0 i32.store offset=12 - local.get $3 + local.get $0 i32.load offset=4 - local.set $2 + local.set $7 i32.const 0 - local.get $3 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $1 - local.get $1 + local.tee $8 + local.get $8 select - local.set $0 + local.set $1 loop $for-loop|09 - local.get $0 local.get $1 + local.get $8 i32.lt_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $7 i32.add i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|09 end end - local.get $3 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u @@ -47208,9 +45086,9 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 i32.load offset=4 - local.get $3 + local.get $0 i32.load i32.sub i32.const 4 @@ -47223,7 +45101,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $0 i32.load offset=8 i32.const 12 i32.ne @@ -47240,12 +45118,12 @@ i32.const 16 i32.const 2240 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $3 local.get $0 + local.get $1 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47265,7 +45143,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $4 + local.get $6 local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz @@ -47513,28 +45391,28 @@ i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $2 + local.tee $1 i32.store local.get $0 i32.const 0 i32.const 3 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2320 call $~lib/rt/__newArray - local.set $0 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $6 i32.store offset=4 - local.get $1 local.get $0 + local.get $6 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47546,7 +45424,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice @@ -47557,21 +45435,21 @@ i32.const 3 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2368 call $~lib/rt/__newArray - local.set $0 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $6 i32.store offset=4 - local.get $1 local.get $0 + local.get $6 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47583,7 +45461,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice @@ -47594,21 +45472,21 @@ i32.const 2 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2416 call $~lib/rt/__newArray - local.set $0 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $6 i32.store offset=4 - local.get $1 local.get $0 + local.get $6 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47620,7 +45498,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice @@ -47631,21 +45509,21 @@ i32.const 2 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2464 call $~lib/rt/__newArray - local.set $0 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $6 i32.store offset=4 - local.get $1 local.get $0 + local.get $6 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47657,7 +45535,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice @@ -47668,21 +45546,21 @@ i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2512 call $~lib/rt/__newArray - local.set $0 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $6 i32.store offset=4 - local.get $1 local.get $0 + local.get $6 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47694,7 +45572,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice @@ -47705,21 +45583,21 @@ i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2560 call $~lib/rt/__newArray - local.set $0 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $6 i32.store offset=4 - local.get $1 local.get $0 + local.get $6 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47731,7 +45609,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice @@ -47742,21 +45620,21 @@ i32.const 2 i32.const 4 call $~lib/typedarray/Int32Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2608 call $~lib/rt/__newArray - local.set $0 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $6 i32.store offset=4 - local.get $1 local.get $0 + local.get $6 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47768,7 +45646,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice @@ -47779,21 +45657,21 @@ i32.const -2 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2656 call $~lib/rt/__newArray - local.set $0 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $6 i32.store offset=4 - local.get $1 local.get $0 + local.get $6 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47805,7 +45683,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice @@ -47816,21 +45694,21 @@ i32.const -2 i32.const -1 call $~lib/typedarray/Int32Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2704 call $~lib/rt/__newArray - local.set $0 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $6 i32.store offset=4 - local.get $1 local.get $0 + local.get $6 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47842,7 +45720,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice @@ -47853,21 +45731,21 @@ i32.const -3 i32.const -2 call $~lib/typedarray/Int32Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2752 call $~lib/rt/__newArray - local.set $0 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $6 i32.store offset=4 - local.get $1 local.get $0 + local.get $6 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47879,7 +45757,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice @@ -47890,21 +45768,21 @@ i32.const -3 i32.const -1 call $~lib/typedarray/Int32Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2800 call $~lib/rt/__newArray - local.set $0 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $6 i32.store offset=4 - local.get $1 local.get $0 + local.get $6 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47916,7 +45794,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice @@ -47927,21 +45805,21 @@ i32.const -3 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2848 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 local.get $1 + i32.store offset=4 local.get $0 + local.get $1 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -47955,30 +45833,30 @@ global.get $~lib/memory/__stack_pointer i32.const 5 call $~lib/typedarray/Int32Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#subarray @@ -48026,13 +45904,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.const 1 i32.const 3 call $~lib/typedarray/Int32Array#slice - local.tee $0 + local.tee $6 i32.store offset=8 - local.get $0 + local.get $6 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 2 @@ -48045,7 +45923,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $6 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 3 @@ -48058,7 +45936,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $6 i32.load offset=8 i32.const 2 i32.shr_u @@ -48072,9 +45950,9 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $6 i32.load offset=4 - local.get $0 + local.get $6 i32.load i32.sub if @@ -48085,7 +45963,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $6 i32.load offset=8 i32.const 8 i32.ne @@ -48102,9 +45980,9 @@ i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#slice - local.tee $0 + local.tee $1 i32.store offset=12 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 3 @@ -48117,7 +45995,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u @@ -48131,9 +46009,9 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub if @@ -48144,7 +46022,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 4 i32.ne @@ -48157,14 +46035,14 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $0 + local.tee $1 i32.store offset=24 local.get $0 - local.get $2 + local.get $1 i32.eq if i32.const 0 @@ -48174,11 +46052,11 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u @@ -48191,14 +46069,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load i32.sub - local.get $2 + local.get $0 i32.load offset=4 - local.get $2 + local.get $0 i32.load i32.sub i32.ne @@ -48210,9 +46088,9 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=8 - local.get $2 + local.get $0 i32.load offset=8 i32.ne if @@ -48230,7 +46108,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -48238,57 +46116,59 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $3 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $3 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer i32.const 2896 i32.store offset=4 - local.get $3 + i32.const 0 + local.set $0 + local.get $1 i32.load offset=4 - local.set $2 - local.get $3 + local.set $6 + local.get $1 i32.load offset=8 - local.set $1 - loop $for-loop|011 - local.get $1 - local.get $10 - i32.gt_s + local.set $7 + loop $for-loop|010 + local.get $0 + local.get $7 + i32.lt_s if - local.get $2 - local.get $10 + local.get $0 + local.get $6 i32.add i32.load8_s - local.set $0 + local.set $8 i32.const 4 global.set $~argumentsLength - local.get $9 + local.get $2 + local.get $8 local.get $0 - local.get $10 - local.get $3 + local.get $1 i32.const 2896 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $10 + local.set $2 + local.get $0 i32.const 1 i32.add - local.set $10 - br $for-loop|011 + local.set $0 + br $for-loop|010 end end - local.get $9 + local.get $2 i32.const 255 i32.and i32.const 6 @@ -48305,7 +46185,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -48313,17 +46193,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -48331,43 +46211,43 @@ i32.const 2928 i32.store offset=4 i32.const 0 - local.set $10 + local.set $0 i32.const 0 - local.set $9 - local.get $3 - i32.load offset=4 local.set $2 - local.get $3 + local.get $1 + i32.load offset=4 + local.set $6 + local.get $1 i32.load offset=8 - local.set $1 - loop $for-loop|010 - local.get $1 - local.get $10 - i32.gt_s + local.set $7 + loop $for-loop|04 + local.get $0 + local.get $7 + i32.lt_s if - local.get $2 - local.get $10 + local.get $0 + local.get $6 i32.add i32.load8_u - local.set $0 + local.set $8 i32.const 4 global.set $~argumentsLength - local.get $9 + local.get $2 + local.get $8 local.get $0 - local.get $10 - local.get $3 + local.get $1 i32.const 2928 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $10 + local.set $2 + local.get $0 i32.const 1 i32.add - local.set $10 - br $for-loop|010 + local.set $0 + br $for-loop|04 end end - local.get $9 + local.get $2 i32.const 255 i32.and i32.const 6 @@ -48384,7 +46264,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -48392,17 +46272,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $3 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $3 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -48410,43 +46290,43 @@ i32.const 2960 i32.store offset=4 i32.const 0 - local.set $10 + local.set $0 i32.const 0 - local.set $9 - local.get $3 - i32.load offset=4 local.set $2 - local.get $3 + local.get $1 + i32.load offset=4 + local.set $6 + local.get $1 i32.load offset=8 - local.set $1 - loop $for-loop|013 - local.get $1 - local.get $10 - i32.gt_s + local.set $7 + loop $for-loop|08 + local.get $0 + local.get $7 + i32.lt_s if - local.get $2 - local.get $10 + local.get $0 + local.get $6 i32.add i32.load8_u - local.set $0 + local.set $8 i32.const 4 global.set $~argumentsLength - local.get $9 + local.get $2 + local.get $8 local.get $0 - local.get $10 - local.get $3 + local.get $1 i32.const 2960 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $10 + local.set $2 + local.get $0 i32.const 1 i32.add - local.set $10 - br $for-loop|013 + local.set $0 + br $for-loop|08 end end - local.get $9 + local.get $2 i32.const 255 i32.and i32.const 6 @@ -48463,7 +46343,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -48471,17 +46351,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -48489,47 +46369,47 @@ i32.const 2992 i32.store offset=4 i32.const 0 - local.set $10 + local.set $0 i32.const 0 - local.set $9 - local.get $3 - i32.load offset=4 local.set $2 - local.get $3 + local.get $1 + i32.load offset=4 + local.set $6 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u - local.set $1 - loop $for-loop|014 - local.get $1 - local.get $10 - i32.gt_s + local.set $7 + loop $for-loop|01011 + local.get $0 + local.get $7 + i32.lt_s if - local.get $10 + local.get $0 i32.const 1 i32.shl - local.get $2 + local.get $6 i32.add i32.load16_s - local.set $0 + local.set $8 i32.const 4 global.set $~argumentsLength - local.get $9 + local.get $2 + local.get $8 local.get $0 - local.get $10 - local.get $3 + local.get $1 i32.const 2992 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $10 + local.set $2 + local.get $0 i32.const 1 i32.add - local.set $10 - br $for-loop|014 + local.set $0 + br $for-loop|01011 end end - local.get $9 + local.get $2 i32.const 65535 i32.and i32.const 6 @@ -48546,7 +46426,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -48554,17 +46434,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $3 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $3 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -48572,47 +46452,47 @@ i32.const 3024 i32.store offset=4 i32.const 0 - local.set $10 + local.set $0 i32.const 0 - local.set $9 - local.get $3 - i32.load offset=4 local.set $2 - local.get $3 + local.get $1 + i32.load offset=4 + local.set $6 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u - local.set $1 - loop $for-loop|016 - local.get $1 - local.get $10 - i32.gt_s + local.set $7 + loop $for-loop|013 + local.get $0 + local.get $7 + i32.lt_s if - local.get $10 + local.get $0 i32.const 1 i32.shl - local.get $2 + local.get $6 i32.add i32.load16_u - local.set $0 + local.set $8 i32.const 4 global.set $~argumentsLength - local.get $9 + local.get $2 + local.get $8 local.get $0 - local.get $10 - local.get $3 + local.get $1 i32.const 3024 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $10 + local.set $2 + local.get $0 i32.const 1 i32.add - local.set $10 - br $for-loop|016 + local.set $0 + br $for-loop|013 end end - local.get $9 + local.get $2 i32.const 65535 i32.and i32.const 6 @@ -48629,7 +46509,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -48637,17 +46517,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $3 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $3 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -48655,47 +46535,47 @@ i32.const 3056 i32.store offset=4 i32.const 0 - local.set $10 + local.set $0 i32.const 0 - local.set $9 - local.get $3 - i32.load offset=4 local.set $2 - local.get $3 + local.get $1 + i32.load offset=4 + local.set $6 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 - loop $for-loop|018 - local.get $1 - local.get $10 - i32.gt_s + local.set $7 + loop $for-loop|016 + local.get $0 + local.get $7 + i32.lt_s if - local.get $10 + local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $6 i32.add i32.load - local.set $0 + local.set $8 i32.const 4 global.set $~argumentsLength - local.get $9 + local.get $2 + local.get $8 local.get $0 - local.get $10 - local.get $3 + local.get $1 i32.const 3056 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $10 + local.set $2 + local.get $0 i32.const 1 i32.add - local.set $10 - br $for-loop|018 + local.set $0 + br $for-loop|016 end end - local.get $9 + local.get $2 i32.const 6 i32.ne br_if $folding-inner1 @@ -48710,7 +46590,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -48718,17 +46598,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $3 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $3 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -48736,47 +46616,47 @@ i32.const 3088 i32.store offset=4 i32.const 0 - local.set $10 + local.set $0 i32.const 0 - local.set $9 - local.get $3 - i32.load offset=4 local.set $2 - local.get $3 + local.get $1 + i32.load offset=4 + local.set $6 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $7 loop $for-loop|021 - local.get $1 - local.get $10 - i32.gt_s + local.get $0 + local.get $7 + i32.lt_s if - local.get $10 + local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $6 i32.add i32.load - local.set $0 + local.set $8 i32.const 4 global.set $~argumentsLength - local.get $9 + local.get $2 + local.get $8 local.get $0 - local.get $10 - local.get $3 + local.get $1 i32.const 3088 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $9 - local.get $10 + local.set $2 + local.get $0 i32.const 1 i32.add - local.set $10 + local.set $0 br $for-loop|021 end end - local.get $9 + local.get $2 i32.const 6 i32.ne br_if $folding-inner1 @@ -48791,7 +46671,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -48799,17 +46679,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $1 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set @@ -48817,45 +46697,45 @@ i32.const 3120 i32.store offset=4 i32.const 0 - local.set $10 - local.get $2 + local.set $0 + local.get $1 i32.load offset=4 - local.set $1 - local.get $2 + local.set $2 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 - loop $for-loop|023 + local.set $6 + loop $for-loop|024 local.get $0 - local.get $10 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $10 + local.get $0 i32.const 3 i32.shl - local.get $1 + local.get $2 i32.add i64.load - local.set $8 + local.set $9 i32.const 4 global.set $~argumentsLength - local.get $13 - local.get $8 - local.get $10 - local.get $2 + local.get $3 + local.get $9 + local.get $0 + local.get $1 i32.const 3120 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $13 - local.get $10 + local.set $3 + local.get $0 i32.const 1 i32.add - local.set $10 - br $for-loop|023 + local.set $0 + br $for-loop|024 end end - local.get $13 + local.get $3 i64.const 6 i64.ne br_if $folding-inner1 @@ -48870,7 +46750,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -48878,17 +46758,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $1 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set @@ -48896,47 +46776,47 @@ i32.const 3152 i32.store offset=4 i32.const 0 - local.set $10 + local.set $0 i64.const 0 - local.set $13 - local.get $2 + local.set $3 + local.get $1 i32.load offset=4 - local.set $1 - local.get $2 + local.set $2 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 - loop $for-loop|025 + local.set $6 + loop $for-loop|027 local.get $0 - local.get $10 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $10 + local.get $0 i32.const 3 i32.shl - local.get $1 + local.get $2 i32.add i64.load - local.set $8 + local.set $9 i32.const 4 global.set $~argumentsLength - local.get $13 - local.get $8 - local.get $10 - local.get $2 + local.get $3 + local.get $9 + local.get $0 + local.get $1 i32.const 3152 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $13 - local.get $10 + local.set $3 + local.get $0 i32.const 1 i32.add - local.set $10 - br $for-loop|025 + local.set $0 + br $for-loop|027 end end - local.get $13 + local.get $3 i64.const 6 i64.ne br_if $folding-inner1 @@ -48951,7 +46831,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -48959,17 +46839,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $1 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $1 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set @@ -48977,45 +46857,45 @@ i32.const 3184 i32.store offset=4 i32.const 0 - local.set $10 - local.get $2 + local.set $0 + local.get $1 i32.load offset=4 - local.set $1 - local.get $2 + local.set $2 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 - loop $for-loop|027 + local.set $6 + loop $for-loop|030 local.get $0 - local.get $10 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $10 + local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add f32.load - local.set $5 + local.set $10 i32.const 4 global.set $~argumentsLength - local.get $14 - local.get $5 + local.get $4 local.get $10 - local.get $2 + local.get $0 + local.get $1 i32.const 3184 i32.load call_indirect $0 (type $f32_f32_i32_i32_=>_f32) - local.set $14 - local.get $10 + local.set $4 + local.get $0 i32.const 1 i32.add - local.set $10 - br $for-loop|027 + local.set $0 + br $for-loop|030 end end - local.get $14 + local.get $4 f32.const 6 f32.ne br_if $folding-inner1 @@ -49030,7 +46910,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -49038,17 +46918,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $1 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $1 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set @@ -49056,45 +46936,45 @@ i32.const 3216 i32.store offset=4 i32.const 0 - local.set $10 - local.get $2 + local.set $0 + local.get $1 i32.load offset=4 - local.set $1 - local.get $2 + local.set $2 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 - loop $for-loop|029 + local.set $6 + loop $for-loop|033 local.get $0 - local.get $10 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $10 + local.get $0 i32.const 3 i32.shl - local.get $1 + local.get $2 i32.add f64.load - local.set $7 + local.set $11 i32.const 4 global.set $~argumentsLength - local.get $15 - local.get $7 - local.get $10 - local.get $2 + local.get $5 + local.get $11 + local.get $0 + local.get $1 i32.const 3216 i32.load call_indirect $0 (type $f64_f64_i32_i32_=>_f64) - local.set $15 - local.get $10 + local.set $5 + local.get $0 i32.const 1 i32.add - local.set $10 - br $for-loop|029 + local.set $0 + br $for-loop|033 end end - local.get $15 + local.get $5 f64.const 6 f64.ne br_if $folding-inner1 @@ -49109,7 +46989,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -49160,7 +47040,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -49211,7 +47091,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -49262,7 +47142,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -49313,7 +47193,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -49364,7 +47244,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -49415,7 +47295,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -49466,7 +47346,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -49517,7 +47397,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -49568,7 +47448,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -49619,7 +47499,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i32.const 0 @@ -49670,7 +47550,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -49678,17 +47558,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set @@ -49696,43 +47576,44 @@ i32.const 3248 i32.store offset=4 i32.const 0 - local.set $10 - local.get $2 + local.set $0 + local.get $1 + local.tee $2 i32.load offset=4 - local.set $1 - local.get $2 + local.set $6 + local.get $1 i32.load offset=8 i32.const 1 i32.sub - local.set $3 - loop $for-loop|031 - local.get $3 + local.set $1 + loop $for-loop|039 + local.get $1 i32.const 0 i32.ge_s if local.get $1 - local.get $3 + local.get $6 i32.add i32.load8_s - local.set $0 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $10 local.get $0 - local.get $3 + local.get $7 + local.get $1 local.get $2 i32.const 3248 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $10 - local.get $3 + local.set $0 + local.get $1 i32.const 1 i32.sub - local.set $3 - br $for-loop|031 + local.set $1 + br $for-loop|039 end end - local.get $10 + local.get $0 i32.const 255 i32.and i32.const 6 @@ -49749,7 +47630,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -49757,17 +47638,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -49775,43 +47656,44 @@ i32.const 3280 i32.store offset=4 i32.const 0 - local.set $10 - local.get $2 + local.set $0 + local.get $1 + local.tee $2 i32.load offset=4 - local.set $1 - local.get $2 + local.set $6 + local.get $1 i32.load offset=8 i32.const 1 i32.sub - local.set $3 - loop $for-loop|033 - local.get $3 + local.set $1 + loop $for-loop|042 + local.get $1 i32.const 0 i32.ge_s if local.get $1 - local.get $3 + local.get $6 i32.add i32.load8_u - local.set $0 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $10 local.get $0 - local.get $3 + local.get $7 + local.get $1 local.get $2 i32.const 3280 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $10 - local.get $3 + local.set $0 + local.get $1 i32.const 1 i32.sub - local.set $3 - br $for-loop|033 + local.set $1 + br $for-loop|042 end end - local.get $10 + local.get $0 i32.const 255 i32.and i32.const 6 @@ -49828,7 +47710,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -49836,17 +47718,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -49854,43 +47736,44 @@ i32.const 3312 i32.store offset=4 i32.const 0 - local.set $10 - local.get $2 + local.set $0 + local.get $1 + local.tee $2 i32.load offset=4 - local.set $1 - local.get $2 + local.set $6 + local.get $1 i32.load offset=8 i32.const 1 i32.sub - local.set $3 - loop $for-loop|036 - local.get $3 + local.set $1 + loop $for-loop|046 + local.get $1 i32.const 0 i32.ge_s if local.get $1 - local.get $3 + local.get $6 i32.add i32.load8_u - local.set $0 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $10 local.get $0 - local.get $3 + local.get $7 + local.get $1 local.get $2 i32.const 3312 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $10 - local.get $3 + local.set $0 + local.get $1 i32.const 1 i32.sub - local.set $3 - br $for-loop|036 + local.set $1 + br $for-loop|046 end end - local.get $10 + local.get $0 i32.const 255 i32.and i32.const 6 @@ -49907,7 +47790,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -49915,17 +47798,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $2 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $2 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -49933,47 +47816,48 @@ i32.const 3344 i32.store offset=4 i32.const 0 - local.set $10 - local.get $2 + local.set $0 + local.get $1 + local.tee $2 i32.load offset=4 - local.set $1 - local.get $2 + local.set $6 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u i32.const 1 i32.sub - local.set $3 - loop $for-loop|038 - local.get $3 + local.set $1 + loop $for-loop|049 + local.get $1 i32.const 0 i32.ge_s if - local.get $3 + local.get $1 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add i32.load16_s - local.set $0 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $10 local.get $0 - local.get $3 + local.get $7 + local.get $1 local.get $2 i32.const 3344 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $10 - local.get $3 + local.set $0 + local.get $1 i32.const 1 i32.sub - local.set $3 - br $for-loop|038 + local.set $1 + br $for-loop|049 end end - local.get $10 + local.get $0 i32.const 65535 i32.and i32.const 6 @@ -49990,7 +47874,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -49998,17 +47882,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $2 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $2 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -50016,47 +47900,48 @@ i32.const 3376 i32.store offset=4 i32.const 0 - local.set $10 - local.get $2 + local.set $0 + local.get $1 + local.tee $2 i32.load offset=4 - local.set $1 - local.get $2 + local.set $6 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u i32.const 1 i32.sub - local.set $3 - loop $for-loop|040 - local.get $3 + local.set $1 + loop $for-loop|052 + local.get $1 i32.const 0 i32.ge_s if - local.get $3 + local.get $1 i32.const 1 i32.shl - local.get $1 + local.get $6 i32.add i32.load16_u - local.set $0 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $10 local.get $0 - local.get $3 + local.get $7 + local.get $1 local.get $2 i32.const 3376 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $10 - local.get $3 + local.set $0 + local.get $1 i32.const 1 i32.sub - local.set $3 - br $for-loop|040 + local.set $1 + br $for-loop|052 end end - local.get $10 + local.get $0 i32.const 65535 i32.and i32.const 6 @@ -50073,7 +47958,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -50081,17 +47966,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -50099,47 +47984,48 @@ i32.const 3408 i32.store offset=4 i32.const 0 - local.set $10 - local.get $2 + local.set $0 + local.get $1 + local.tee $2 i32.load offset=4 - local.set $1 - local.get $2 + local.set $6 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.sub - local.set $3 - loop $for-loop|042 - local.get $3 + local.set $1 + loop $for-loop|055 + local.get $1 i32.const 0 i32.ge_s if - local.get $3 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $6 i32.add i32.load - local.set $0 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $10 local.get $0 - local.get $3 + local.get $7 + local.get $1 local.get $2 i32.const 3408 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $10 - local.get $3 + local.set $0 + local.get $1 i32.const 1 i32.sub - local.set $3 - br $for-loop|042 + local.set $1 + br $for-loop|055 end end - local.get $10 + local.get $0 i32.const 6 i32.ne br_if $folding-inner5 @@ -50154,7 +48040,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -50162,17 +48048,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $2 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $2 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -50180,47 +48066,48 @@ i32.const 3440 i32.store offset=4 i32.const 0 - local.set $10 - local.get $2 + local.set $0 + local.get $1 + local.tee $2 i32.load offset=4 - local.set $1 - local.get $2 + local.set $6 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.sub - local.set $3 - loop $for-loop|044 - local.get $3 + local.set $1 + loop $for-loop|058 + local.get $1 i32.const 0 i32.ge_s if - local.get $3 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $6 i32.add i32.load - local.set $0 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $10 local.get $0 - local.get $3 + local.get $7 + local.get $1 local.get $2 i32.const 3440 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $10 - local.get $3 + local.set $0 + local.get $1 i32.const 1 i32.sub - local.set $3 - br $for-loop|044 + local.set $1 + br $for-loop|058 end end - local.get $10 + local.get $0 i32.const 6 i32.ne br_if $folding-inner5 @@ -50235,7 +48122,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -50243,17 +48130,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $0 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $0 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set @@ -50261,47 +48148,47 @@ i32.const 3472 i32.store offset=4 i64.const 0 - local.set $13 - local.get $1 + local.set $3 + local.get $0 i32.load offset=4 - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u i32.const 1 i32.sub - local.set $3 - loop $for-loop|046 - local.get $3 + local.set $1 + loop $for-loop|061 + local.get $1 i32.const 0 i32.ge_s if - local.get $3 + local.get $1 i32.const 3 i32.shl - local.get $0 + local.get $2 i32.add i64.load - local.set $8 + local.set $9 i32.const 4 global.set $~argumentsLength - local.get $13 - local.get $8 local.get $3 + local.get $9 local.get $1 + local.get $0 i32.const 3472 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $13 - local.get $3 + local.set $3 + local.get $1 i32.const 1 i32.sub - local.set $3 - br $for-loop|046 + local.set $1 + br $for-loop|061 end end - local.get $13 + local.get $3 i64.const 6 i64.ne br_if $folding-inner5 @@ -50316,7 +48203,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -50324,17 +48211,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $0 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $0 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set @@ -50342,47 +48229,47 @@ i32.const 3504 i32.store offset=4 i64.const 0 - local.set $13 - local.get $1 + local.set $3 + local.get $0 i32.load offset=4 - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u i32.const 1 i32.sub - local.set $3 - loop $for-loop|048 - local.get $3 + local.set $1 + loop $for-loop|064 + local.get $1 i32.const 0 i32.ge_s if - local.get $3 + local.get $1 i32.const 3 i32.shl - local.get $0 + local.get $2 i32.add i64.load - local.set $8 + local.set $9 i32.const 4 global.set $~argumentsLength - local.get $13 - local.get $8 local.get $3 + local.get $9 local.get $1 + local.get $0 i32.const 3504 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $13 - local.get $3 + local.set $3 + local.get $1 i32.const 1 i32.sub - local.set $3 - br $for-loop|048 + local.set $1 + br $for-loop|064 end end - local.get $13 + local.get $3 i64.const 6 i64.ne br_if $folding-inner5 @@ -50397,7 +48284,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -50405,17 +48292,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set @@ -50423,47 +48310,47 @@ i32.const 3536 i32.store offset=4 f32.const 0 - local.set $14 - local.get $1 + local.set $4 + local.get $0 i32.load offset=4 - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.sub - local.set $3 - loop $for-loop|050 - local.get $3 + local.set $1 + loop $for-loop|067 + local.get $1 i32.const 0 i32.ge_s if - local.get $3 + local.get $1 i32.const 2 i32.shl - local.get $0 + local.get $2 i32.add f32.load - local.set $5 + local.set $10 i32.const 4 global.set $~argumentsLength - local.get $14 - local.get $5 - local.get $3 + local.get $4 + local.get $10 local.get $1 + local.get $0 i32.const 3536 i32.load call_indirect $0 (type $f32_f32_i32_i32_=>_f32) - local.set $14 - local.get $3 + local.set $4 + local.get $1 i32.const 1 i32.sub - local.set $3 - br $for-loop|050 + local.set $1 + br $for-loop|067 end end - local.get $14 + local.get $4 f32.const 6 f32.ne br_if $folding-inner5 @@ -50478,7 +48365,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -50486,17 +48373,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set @@ -50504,47 +48391,47 @@ i32.const 3568 i32.store offset=4 f64.const 0 - local.set $15 - local.get $1 + local.set $5 + local.get $0 i32.load offset=4 - local.set $0 - local.get $1 + local.set $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u i32.const 1 i32.sub - local.set $3 - loop $for-loop|052 - local.get $3 + local.set $1 + loop $for-loop|070 + local.get $1 i32.const 0 i32.ge_s if - local.get $3 + local.get $1 i32.const 3 i32.shl - local.get $0 + local.get $2 i32.add f64.load - local.set $7 + local.set $11 i32.const 4 global.set $~argumentsLength - local.get $15 - local.get $7 - local.get $3 + local.get $5 + local.get $11 local.get $1 + local.get $0 i32.const 3568 i32.load call_indirect $0 (type $f64_f64_i32_i32_=>_f64) - local.set $15 - local.get $3 + local.set $5 + local.get $1 i32.const 1 i32.sub - local.set $3 - br $for-loop|052 + local.set $1 + br $for-loop|070 end end - local.get $15 + local.get $5 f64.const 6 f64.ne br_if $folding-inner5 @@ -50553,7 +48440,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $10 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -50561,7 +48448,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -50572,17 +48459,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $9 + local.tee $2 i32.store - local.get $9 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $9 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $9 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set @@ -50597,103 +48484,103 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $2 i32.load offset=8 - local.set $4 - local.get $9 + local.set $7 + local.get $2 i32.load offset=4 - local.set $3 + local.set $8 local.get $0 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $12 i32.store offset=4 - loop $for-loop|02 - local.get $4 - local.get $10 - i32.gt_s + loop $for-loop|012 + local.get $1 + local.get $7 + i32.lt_s if - local.get $3 - local.get $10 + local.get $1 + local.get $8 i32.add i32.load8_s - local.set $0 + local.set $13 i32.const 3 global.set $~argumentsLength local.get $1 - local.get $10 + local.get $12 i32.add - local.get $0 - local.get $10 - local.get $9 + local.get $13 + local.get $1 + local.get $2 i32.const 3600 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store8 - local.get $10 + local.get $1 i32.const 1 i32.add - local.set $10 - br $for-loop|02 + local.set $1 + br $for-loop|012 end end - local.get $2 - local.get $1 + local.get $0 + local.get $12 i32.store - local.get $1 + local.get $12 if - local.get $2 - local.get $1 + local.get $0 + local.get $12 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 - local.get $1 + local.get $0 + local.get $12 i32.store offset=4 - local.get $2 - local.get $4 + local.get $0 + local.get $7 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=8 - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 1 i32.ne - br_if $folding-inner20 - local.get $2 + br_if $folding-inner6 + local.get $0 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 4 i32.ne - br_if $folding-inner21 - local.get $2 + br_if $folding-inner7 + local.get $0 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 9 i32.ne - br_if $folding-inner22 + br_if $folding-inner8 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $10 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -50701,7 +48588,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -50712,17 +48599,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $9 + local.tee $2 i32.store - local.get $9 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $9 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $9 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -50737,103 +48624,103 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $2 i32.load offset=8 - local.set $4 - local.get $9 + local.set $7 + local.get $2 i32.load offset=4 - local.set $3 + local.set $8 local.get $0 i32.const 12 i32.const 4 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $12 i32.store offset=4 - loop $for-loop|04 - local.get $4 - local.get $10 - i32.gt_s + loop $for-loop|014 + local.get $1 + local.get $7 + i32.lt_s if - local.get $3 - local.get $10 + local.get $1 + local.get $8 i32.add i32.load8_u - local.set $0 + local.set $13 i32.const 3 global.set $~argumentsLength local.get $1 - local.get $10 + local.get $12 i32.add - local.get $0 - local.get $10 - local.get $9 + local.get $13 + local.get $1 + local.get $2 i32.const 3632 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store8 - local.get $10 + local.get $1 i32.const 1 i32.add - local.set $10 - br $for-loop|04 + local.set $1 + br $for-loop|014 end end - local.get $2 - local.get $1 + local.get $0 + local.get $12 i32.store - local.get $1 + local.get $12 if - local.get $2 - local.get $1 + local.get $0 + local.get $12 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 - local.get $1 + local.get $0 + local.get $12 i32.store offset=4 - local.get $2 - local.get $4 + local.get $0 + local.get $7 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=8 - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 1 i32.ne - br_if $folding-inner20 - local.get $2 + br_if $folding-inner6 + local.get $0 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 4 i32.ne - br_if $folding-inner21 - local.get $2 + br_if $folding-inner7 + local.get $0 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 9 i32.ne - br_if $folding-inner22 + br_if $folding-inner8 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $10 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -50841,7 +48728,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -50852,17 +48739,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $9 + local.tee $2 i32.store - local.get $9 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $9 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $9 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -50877,101 +48764,103 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 i64.store - local.get $9 + local.get $2 i32.load offset=8 - local.set $4 - local.get $9 + local.set $7 + local.get $2 i32.load offset=4 - local.set $3 + local.set $8 local.get $0 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $12 i32.store offset=4 - loop $for-loop|06 - local.get $4 - local.get $10 - i32.gt_s + loop $for-loop|015 + local.get $1 + local.get $7 + i32.lt_s if - local.get $3 - local.get $10 + local.get $1 + local.get $8 i32.add i32.load8_u - local.set $0 + local.set $13 i32.const 3 global.set $~argumentsLength local.get $1 - local.get $10 + local.get $12 i32.add - local.get $0 - local.get $10 - local.get $9 + local.get $13 + local.get $1 + local.get $2 i32.const 3664 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store8 - local.get $10 + local.get $1 i32.const 1 i32.add - local.set $10 - br $for-loop|06 + local.set $1 + br $for-loop|015 end end - local.get $2 - local.get $1 + local.get $0 + local.get $12 i32.store - local.get $1 + local.get $12 if - local.get $2 - local.get $1 + local.get $0 + local.get $12 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 - local.get $1 + local.get $0 + local.get $12 i32.store offset=4 - local.get $2 - local.get $4 + local.get $0 + local.get $7 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=8 - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 1 i32.ne - br_if $folding-inner20 - local.get $2 + br_if $folding-inner6 + local.get $0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 4 i32.ne - br_if $folding-inner21 - local.get $2 + br_if $folding-inner7 + local.get $0 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 9 i32.ne - br_if $folding-inner22 + br_if $folding-inner8 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -50979,7 +48868,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -50990,17 +48879,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $11 + local.tee $0 i32.store - local.get $11 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $11 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $11 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -51015,111 +48904,111 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $6 i64.const 0 i64.store - local.get $11 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $9 - local.get $11 - i32.load offset=4 - local.set $6 + local.set $7 local.get $0 + i32.load offset=4 + local.set $8 + local.get $6 i32.const 12 i32.const 6 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $7 i32.const 1 i32.shl - local.tee $3 + local.tee $12 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $13 i32.store offset=4 - loop $for-loop|08 - local.get $9 - local.get $12 - i32.gt_s + loop $for-loop|017 + local.get $1 + local.get $7 + i32.lt_s if - local.get $6 - local.get $12 + local.get $8 + local.get $1 i32.const 1 i32.shl - local.tee $1 + local.tee $14 i32.add i32.load16_s - local.set $0 + local.set $15 i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $2 + local.get $13 + local.get $14 i32.add + local.get $15 + local.get $1 local.get $0 - local.get $12 - local.get $11 i32.const 3696 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store16 - local.get $12 + local.get $1 i32.const 1 i32.add - local.set $12 - br $for-loop|08 + local.set $1 + br $for-loop|017 end end - local.get $4 - local.get $2 + local.get $6 + local.get $13 i32.store - local.get $2 + local.get $13 if - local.get $4 - local.get $2 + local.get $6 + local.get $13 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $2 + local.get $6 + local.get $13 i32.store offset=4 - local.get $4 - local.get $3 + local.get $6 + local.get $12 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store offset=8 - local.get $4 + local.get $6 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 1 i32.ne - br_if $folding-inner20 - local.get $4 + br_if $folding-inner6 + local.get $6 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 4 i32.ne - br_if $folding-inner21 - local.get $4 + br_if $folding-inner7 + local.get $6 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 9 i32.ne - br_if $folding-inner22 + br_if $folding-inner8 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $12 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51127,7 +49016,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -51138,17 +49027,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $11 + local.tee $0 i32.store - local.get $11 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $11 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $11 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -51163,111 +49052,111 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $6 i64.const 0 i64.store - local.get $11 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $9 - local.get $11 - i32.load offset=4 - local.set $6 + local.set $7 local.get $0 + i32.load offset=4 + local.set $8 + local.get $6 i32.const 12 i32.const 7 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $7 i32.const 1 i32.shl - local.tee $3 + local.tee $12 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $13 i32.store offset=4 - loop $for-loop|012 - local.get $9 - local.get $12 - i32.gt_s + loop $for-loop|018 + local.get $1 + local.get $7 + i32.lt_s if - local.get $6 - local.get $12 + local.get $8 + local.get $1 i32.const 1 i32.shl - local.tee $1 + local.tee $14 i32.add i32.load16_u - local.set $0 + local.set $15 i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $2 + local.get $13 + local.get $14 i32.add + local.get $15 + local.get $1 local.get $0 - local.get $12 - local.get $11 i32.const 3728 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store16 - local.get $12 + local.get $1 i32.const 1 i32.add - local.set $12 - br $for-loop|012 + local.set $1 + br $for-loop|018 end end - local.get $4 - local.get $2 + local.get $6 + local.get $13 i32.store - local.get $2 + local.get $13 if - local.get $4 - local.get $2 + local.get $6 + local.get $13 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $2 + local.get $6 + local.get $13 i32.store offset=4 - local.get $4 - local.get $3 + local.get $6 + local.get $12 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store offset=8 - local.get $4 + local.get $6 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 1 i32.ne - br_if $folding-inner20 - local.get $4 + br_if $folding-inner6 + local.get $6 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 4 i32.ne - br_if $folding-inner21 - local.get $4 + br_if $folding-inner7 + local.get $6 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 9 i32.ne - br_if $folding-inner22 + br_if $folding-inner8 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $12 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51275,7 +49164,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -51286,17 +49175,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $11 + local.tee $0 i32.store - local.get $11 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $11 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $11 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -51311,111 +49200,111 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $6 i64.const 0 i64.store - local.get $11 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $9 - local.get $11 - i32.load offset=4 - local.set $6 + local.set $7 local.get $0 + i32.load offset=4 + local.set $8 + local.get $6 i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $7 i32.const 2 i32.shl - local.tee $3 + local.tee $12 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $13 i32.store offset=4 - loop $for-loop|015 - local.get $9 - local.get $12 - i32.gt_s + loop $for-loop|019 + local.get $1 + local.get $7 + i32.lt_s if - local.get $6 - local.get $12 + local.get $8 + local.get $1 i32.const 2 i32.shl - local.tee $1 + local.tee $14 i32.add i32.load - local.set $0 + local.set $15 i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $2 + local.get $13 + local.get $14 i32.add + local.get $15 + local.get $1 local.get $0 - local.get $12 - local.get $11 i32.const 3760 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store - local.get $12 + local.get $1 i32.const 1 i32.add - local.set $12 - br $for-loop|015 + local.set $1 + br $for-loop|019 end end - local.get $4 - local.get $2 + local.get $6 + local.get $13 i32.store - local.get $2 + local.get $13 if - local.get $4 - local.get $2 + local.get $6 + local.get $13 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $2 + local.get $6 + local.get $13 i32.store offset=4 - local.get $4 - local.get $3 + local.get $6 + local.get $12 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store offset=8 - local.get $4 + local.get $6 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 1 i32.ne - br_if $folding-inner20 - local.get $4 + br_if $folding-inner6 + local.get $6 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 4 i32.ne - br_if $folding-inner21 - local.get $4 + br_if $folding-inner7 + local.get $6 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 9 i32.ne - br_if $folding-inner22 + br_if $folding-inner8 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $12 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51423,7 +49312,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -51434,17 +49323,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $11 + local.tee $0 i32.store - local.get $11 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $11 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $11 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -51459,111 +49348,111 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $6 i64.const 0 i64.store - local.get $11 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $9 - local.get $11 - i32.load offset=4 - local.set $6 + local.set $7 local.get $0 + i32.load offset=4 + local.set $8 + local.get $6 i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $7 i32.const 2 i32.shl - local.tee $3 + local.tee $12 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $13 i32.store offset=4 - loop $for-loop|017 - local.get $9 - local.get $12 - i32.gt_s + loop $for-loop|020 + local.get $1 + local.get $7 + i32.lt_s if - local.get $6 - local.get $12 + local.get $8 + local.get $1 i32.const 2 i32.shl - local.tee $1 + local.tee $14 i32.add i32.load - local.set $0 + local.set $15 i32.const 3 global.set $~argumentsLength - local.get $1 - local.get $2 + local.get $13 + local.get $14 i32.add + local.get $15 + local.get $1 local.get $0 - local.get $12 - local.get $11 i32.const 3792 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store - local.get $12 + local.get $1 i32.const 1 i32.add - local.set $12 - br $for-loop|017 + local.set $1 + br $for-loop|020 end end - local.get $4 - local.get $2 + local.get $6 + local.get $13 i32.store - local.get $2 + local.get $13 if - local.get $4 - local.get $2 + local.get $6 + local.get $13 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $2 + local.get $6 + local.get $13 i32.store offset=4 - local.get $4 - local.get $3 + local.get $6 + local.get $12 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store offset=8 - local.get $4 + local.get $6 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 1 i32.ne - br_if $folding-inner20 - local.get $4 + br_if $folding-inner6 + local.get $6 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 4 i32.ne - br_if $folding-inner21 - local.get $4 + br_if $folding-inner7 + local.get $6 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 9 i32.ne - br_if $folding-inner22 + br_if $folding-inner8 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $11 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51571,7 +49460,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -51582,17 +49471,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $10 + local.tee $0 i32.store - local.get $10 + local.get $0 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $10 + local.get $0 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $10 + local.get $0 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set @@ -51607,111 +49496,111 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $6 i64.const 0 i64.store - local.get $10 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 - local.get $10 - i32.load offset=4 - local.set $4 + local.set $7 local.get $0 + i32.load offset=4 + local.set $8 + local.get $6 i32.const 12 i32.const 10 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $7 i32.const 3 i32.shl - local.tee $2 + local.tee $12 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $13 i32.store offset=4 - loop $for-loop|019 - local.get $6 - local.get $11 - i32.gt_s + loop $for-loop|022 + local.get $1 + local.get $7 + i32.lt_s if - local.get $4 - local.get $11 + local.get $8 + local.get $1 i32.const 3 i32.shl - local.tee $0 + local.tee $14 i32.add i64.load - local.set $8 + local.set $3 i32.const 3 global.set $~argumentsLength - local.get $0 - local.get $1 + local.get $13 + local.get $14 i32.add - local.get $8 - local.get $11 - local.get $10 + local.get $3 + local.get $1 + local.get $0 i32.const 3824 i32.load call_indirect $0 (type $i64_i32_i32_=>_i64) i64.store - local.get $11 + local.get $1 i32.const 1 i32.add - local.set $11 - br $for-loop|019 + local.set $1 + br $for-loop|022 end end - local.get $3 - local.get $1 + local.get $6 + local.get $13 i32.store - local.get $1 + local.get $13 if - local.get $3 - local.get $1 + local.get $6 + local.get $13 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $1 + local.get $6 + local.get $13 i32.store offset=4 - local.get $3 - local.get $2 + local.get $6 + local.get $12 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $6 i32.store offset=8 - local.get $3 + local.get $6 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 1 i64.ne - br_if $folding-inner20 - local.get $3 + br_if $folding-inner6 + local.get $6 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 4 i64.ne - br_if $folding-inner21 - local.get $3 + br_if $folding-inner7 + local.get $6 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 9 i64.ne - br_if $folding-inner22 + br_if $folding-inner8 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $11 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51719,7 +49608,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -51730,17 +49619,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $10 + local.tee $0 i32.store - local.get $10 + local.get $0 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $10 + local.get $0 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $10 + local.get $0 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set @@ -51755,111 +49644,111 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $6 i64.const 0 i64.store - local.get $10 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 - local.get $10 - i32.load offset=4 - local.set $4 + local.set $7 local.get $0 + i32.load offset=4 + local.set $8 + local.get $6 i32.const 12 i32.const 11 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $7 i32.const 3 i32.shl - local.tee $2 + local.tee $12 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $13 i32.store offset=4 - loop $for-loop|022 - local.get $6 - local.get $11 - i32.gt_s + loop $for-loop|023 + local.get $1 + local.get $7 + i32.lt_s if - local.get $4 - local.get $11 + local.get $8 + local.get $1 i32.const 3 i32.shl - local.tee $0 + local.tee $14 i32.add i64.load - local.set $8 + local.set $3 i32.const 3 global.set $~argumentsLength - local.get $0 - local.get $1 + local.get $13 + local.get $14 i32.add - local.get $8 - local.get $11 - local.get $10 + local.get $3 + local.get $1 + local.get $0 i32.const 3856 i32.load call_indirect $0 (type $i64_i32_i32_=>_i64) i64.store - local.get $11 + local.get $1 i32.const 1 i32.add - local.set $11 - br $for-loop|022 + local.set $1 + br $for-loop|023 end end - local.get $3 - local.get $1 + local.get $6 + local.get $13 i32.store - local.get $1 + local.get $13 if - local.get $3 - local.get $1 + local.get $6 + local.get $13 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $1 + local.get $6 + local.get $13 i32.store offset=4 - local.get $3 - local.get $2 + local.get $6 + local.get $12 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $6 i32.store offset=8 - local.get $3 + local.get $6 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 1 i64.ne - br_if $folding-inner20 - local.get $3 + br_if $folding-inner6 + local.get $6 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 4 i64.ne - br_if $folding-inner21 - local.get $3 + br_if $folding-inner7 + local.get $6 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 9 i64.ne - br_if $folding-inner22 + br_if $folding-inner8 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $11 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -51867,7 +49756,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -51878,17 +49767,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $10 + local.tee $0 i32.store - local.get $10 + local.get $0 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $10 + local.get $0 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $10 + local.get $0 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set @@ -51903,111 +49792,111 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $6 i64.const 0 i64.store - local.get $10 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 - local.get $10 - i32.load offset=4 - local.set $4 + local.set $7 local.get $0 + i32.load offset=4 + local.set $8 + local.get $6 i32.const 12 i32.const 12 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $7 i32.const 2 i32.shl - local.tee $2 + local.tee $12 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $13 i32.store offset=4 - loop $for-loop|024 - local.get $6 - local.get $11 - i32.gt_s + loop $for-loop|025 + local.get $1 + local.get $7 + i32.lt_s if - local.get $4 - local.get $11 + local.get $8 + local.get $1 i32.const 2 i32.shl - local.tee $0 + local.tee $14 i32.add f32.load - local.set $5 + local.set $4 i32.const 3 global.set $~argumentsLength - local.get $0 - local.get $1 + local.get $13 + local.get $14 i32.add - local.get $5 - local.get $11 - local.get $10 + local.get $4 + local.get $1 + local.get $0 i32.const 3888 i32.load call_indirect $0 (type $f32_i32_i32_=>_f32) f32.store - local.get $11 + local.get $1 i32.const 1 i32.add - local.set $11 - br $for-loop|024 + local.set $1 + br $for-loop|025 end end - local.get $3 - local.get $1 + local.get $6 + local.get $13 i32.store - local.get $1 + local.get $13 if - local.get $3 - local.get $1 + local.get $6 + local.get $13 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $1 + local.get $6 + local.get $13 i32.store offset=4 - local.get $3 - local.get $2 + local.get $6 + local.get $12 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $6 i32.store offset=8 - local.get $3 + local.get $6 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 1 f32.ne - br_if $folding-inner20 - local.get $3 + br_if $folding-inner6 + local.get $6 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 4 f32.ne - br_if $folding-inner21 - local.get $3 + br_if $folding-inner7 + local.get $6 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 9 f32.ne - br_if $folding-inner22 + br_if $folding-inner8 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $11 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -52015,7 +49904,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -52026,17 +49915,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $10 + local.tee $0 i32.store - local.get $10 + local.get $0 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $10 + local.get $0 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $10 + local.get $0 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set @@ -52051,105 +49940,105 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $6 i64.const 0 i64.store - local.get $10 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 - local.get $10 - i32.load offset=4 - local.set $4 + local.set $7 local.get $0 + i32.load offset=4 + local.set $8 + local.get $6 i32.const 12 i32.const 13 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $7 i32.const 3 i32.shl - local.tee $2 + local.tee $12 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $13 i32.store offset=4 loop $for-loop|026 - local.get $6 - local.get $11 - i32.gt_s + local.get $1 + local.get $7 + i32.lt_s if - local.get $4 - local.get $11 + local.get $8 + local.get $1 i32.const 3 i32.shl - local.tee $0 + local.tee $14 i32.add f64.load - local.set $7 + local.set $5 i32.const 3 global.set $~argumentsLength - local.get $0 - local.get $1 + local.get $13 + local.get $14 i32.add - local.get $7 - local.get $11 - local.get $10 + local.get $5 + local.get $1 + local.get $0 i32.const 3920 i32.load call_indirect $0 (type $f64_i32_i32_=>_f64) f64.store - local.get $11 + local.get $1 i32.const 1 i32.add - local.set $11 + local.set $1 br $for-loop|026 end end - local.get $3 - local.get $1 + local.get $6 + local.get $13 i32.store - local.get $1 + local.get $13 if - local.get $3 - local.get $1 + local.get $6 + local.get $13 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 - local.get $1 + local.get $6 + local.get $13 i32.store offset=4 - local.get $3 - local.get $2 + local.get $6 + local.get $12 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $6 i32.store offset=8 - local.get $3 + local.get $6 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 1 f64.ne - br_if $folding-inner20 - local.get $3 + br_if $folding-inner6 + local.get $6 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 4 f64.ne - br_if $folding-inner21 - local.get $3 + br_if $folding-inner7 + local.get $6 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 9 f64.ne - br_if $folding-inner22 + br_if $folding-inner8 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add @@ -52165,6 +50054,8 @@ call $std/typedarray/testArrayFilter<~lib/typedarray/Uint64Array,u64> call $std/typedarray/testArrayFilter<~lib/typedarray/Float32Array,f32> call $std/typedarray/testArrayFilter<~lib/typedarray/Float64Array,f64> + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -52172,7 +50063,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -52180,111 +50071,111 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $3 + local.tee $0 i32.store - local.get $3 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $3 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $3 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer i32.const 4304 i32.store offset=4 - i32.const 0 - local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.0 (result i32) - local.get $3 + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 - local.set $1 - loop $for-loop|045 + local.set $6 + loop $for-loop|028 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if + local.get $1 local.get $2 - local.get $9 i32.add i32.load8_s - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 4304 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|045 + local.set $1 + br $for-loop|028 end end i32.const 0 end i32.eqz - br_if $folding-inner6 + br_if $folding-inner9 global.get $~lib/memory/__stack_pointer i32.const 4336 i32.store offset=4 i32.const 0 - local.set $9 - block $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.047 (result i32) - local.get $3 + local.set $1 + block $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.01 (result i32) + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 - local.set $1 - loop $for-loop|049 + local.set $6 + loop $for-loop|0329 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if + local.get $1 local.get $2 - local.get $9 i32.add i32.load8_s - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 4336 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.047 + br_if $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|049 + local.set $1 + br $for-loop|0329 end end i32.const 0 end - br_if $folding-inner7 + br_if $folding-inner10 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -52292,7 +50183,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -52300,111 +50191,111 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $3 + local.tee $0 i32.store - local.get $3 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 4368 i32.store offset=4 - i32.const 0 - local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.0 (result i32) - local.get $3 + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 - local.set $1 - loop $for-loop|051 + local.set $6 + loop $for-loop|031 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if + local.get $1 local.get $2 - local.get $9 i32.add i32.load8_u - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 4368 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|051 + local.set $1 + br $for-loop|031 end end i32.const 0 end i32.eqz - br_if $folding-inner6 + br_if $folding-inner9 global.get $~lib/memory/__stack_pointer i32.const 4400 i32.store offset=4 i32.const 0 - local.set $9 - block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.053 (result i32) - local.get $3 + local.set $1 + block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.01 (result i32) + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 - local.set $1 - loop $for-loop|054 + local.set $6 + loop $for-loop|0332 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if + local.get $1 local.get $2 - local.get $9 i32.add i32.load8_u - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 4400 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.053 + br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|054 + local.set $1 + br $for-loop|0332 end end i32.const 0 end - br_if $folding-inner7 + br_if $folding-inner10 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -52412,7 +50303,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -52420,111 +50311,111 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $3 + local.tee $0 i32.store - local.get $3 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $3 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $3 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Uint8ClampedArray#__set global.get $~lib/memory/__stack_pointer i32.const 4432 i32.store offset=4 - i32.const 0 - local.set $9 - block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.057 (result i32) - local.get $3 + block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.033 (result i32) + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 - local.set $1 - loop $for-loop|058 + local.set $6 + loop $for-loop|034 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if + local.get $1 local.get $2 - local.get $9 i32.add i32.load8_u - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 4432 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.057 + br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.033 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|058 + local.set $1 + br $for-loop|034 end end i32.const 0 end i32.eqz - br_if $folding-inner6 + br_if $folding-inner9 global.get $~lib/memory/__stack_pointer i32.const 4464 i32.store offset=4 i32.const 0 - local.set $9 - block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.060 (result i32) - local.get $3 + local.set $1 + block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.0135 (result i32) + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 - local.set $1 - loop $for-loop|061 + local.set $6 + loop $for-loop|0336 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if + local.get $1 local.get $2 - local.get $9 i32.add i32.load8_u - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 4464 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.060 + br_if $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.0135 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|061 + local.set $1 + br $for-loop|0336 end end i32.const 0 end - br_if $folding-inner7 + br_if $folding-inner10 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -52532,7 +50423,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -52540,119 +50431,119 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $3 + local.tee $0 i32.store - local.get $3 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 4496 i32.store offset=4 - i32.const 0 - local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.0 (result i32) - local.get $3 + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $1 - loop $for-loop|063 + local.set $6 + loop $for-loop|037 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $9 + local.get $1 i32.const 1 i32.shl local.get $2 i32.add i32.load16_s - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 4496 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|063 + local.set $1 + br $for-loop|037 end end i32.const 0 end i32.eqz - br_if $folding-inner6 + br_if $folding-inner9 global.get $~lib/memory/__stack_pointer i32.const 4528 i32.store offset=4 i32.const 0 - local.set $9 - block $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.065 (result i32) - local.get $3 + local.set $1 + block $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.01 (result i32) + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $1 - loop $for-loop|066 + local.set $6 + loop $for-loop|0338 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $9 + local.get $1 i32.const 1 i32.shl local.get $2 i32.add i32.load16_s - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 4528 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.065 + br_if $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|066 + local.set $1 + br $for-loop|0338 end end i32.const 0 end - br_if $folding-inner7 + br_if $folding-inner10 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -52660,7 +50551,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -52668,119 +50559,119 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $3 + local.tee $0 i32.store - local.get $3 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $3 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Uint16Array#__set - local.get $3 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Uint16Array#__set global.get $~lib/memory/__stack_pointer i32.const 4560 i32.store offset=4 - i32.const 0 - local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.0 (result i32) - local.get $3 + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $1 - loop $for-loop|068 + local.set $6 + loop $for-loop|040 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $9 + local.get $1 i32.const 1 i32.shl local.get $2 i32.add i32.load16_u - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 4560 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|068 + local.set $1 + br $for-loop|040 end end i32.const 0 end i32.eqz - br_if $folding-inner6 + br_if $folding-inner9 global.get $~lib/memory/__stack_pointer i32.const 4592 i32.store offset=4 i32.const 0 - local.set $9 - block $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.070 (result i32) - local.get $3 + local.set $1 + block $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.01 (result i32) + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $1 - loop $for-loop|071 + local.set $6 + loop $for-loop|0341 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $9 + local.get $1 i32.const 1 i32.shl local.get $2 i32.add i32.load16_u - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 4592 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.070 + br_if $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|071 + local.set $1 + br $for-loop|0341 end end i32.const 0 end - br_if $folding-inner7 + br_if $folding-inner10 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -52788,7 +50679,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -52796,119 +50687,119 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $3 + local.tee $0 i32.store - local.get $3 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $3 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $3 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer i32.const 4624 i32.store offset=4 - i32.const 0 - local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) - local.get $3 + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 - loop $for-loop|073 + local.set $6 + loop $for-loop|043 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $9 + local.get $1 i32.const 2 i32.shl local.get $2 i32.add i32.load - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 4624 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|073 + local.set $1 + br $for-loop|043 end end i32.const 0 end i32.eqz - br_if $folding-inner6 + br_if $folding-inner9 global.get $~lib/memory/__stack_pointer i32.const 4656 i32.store offset=4 i32.const 0 - local.set $9 - block $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.075 (result i32) - local.get $3 + local.set $1 + block $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.01 (result i32) + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 - loop $for-loop|076 + local.set $6 + loop $for-loop|0344 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $9 + local.get $1 i32.const 2 i32.shl local.get $2 i32.add i32.load - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 4656 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.075 + br_if $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|076 + local.set $1 + br $for-loop|0344 end end i32.const 0 end - br_if $folding-inner7 + br_if $folding-inner10 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -52916,7 +50807,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -52924,119 +50815,119 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $3 + local.tee $0 i32.store - local.get $3 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $3 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Uint32Array#__set - local.get $3 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer i32.const 4688 i32.store offset=4 - i32.const 0 - local.set $9 block $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) - local.get $3 + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 - loop $for-loop|078 + local.set $6 + loop $for-loop|045 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $9 + local.get $1 i32.const 2 i32.shl local.get $2 i32.add i32.load - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 4688 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|078 + local.set $1 + br $for-loop|045 end end i32.const 0 end i32.eqz - br_if $folding-inner6 + br_if $folding-inner9 global.get $~lib/memory/__stack_pointer i32.const 4720 i32.store offset=4 i32.const 0 - local.set $9 - block $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.080 (result i32) - local.get $3 + local.set $1 + block $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.01 (result i32) + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 - loop $for-loop|081 + local.set $6 + loop $for-loop|0346 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $9 + local.get $1 i32.const 2 i32.shl local.get $2 i32.add i32.load - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 4720 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.080 + br_if $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|081 + local.set $1 + br $for-loop|0346 end end i32.const 0 end - br_if $folding-inner7 + br_if $folding-inner10 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -53044,7 +50935,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -53052,119 +50943,119 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $0 i32.const 1 i64.const 4 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $0 i32.const 2 i64.const 6 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4752 i32.store offset=4 - i32.const 0 - local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.0 (result i32) - local.get $2 + local.get $0 i32.load offset=4 - local.set $1 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 - loop $for-loop|083 - local.get $0 - local.get $10 - i32.gt_s + local.set $6 + loop $for-loop|047 + local.get $1 + local.get $6 + i32.lt_s if - local.get $10 + local.get $1 i32.const 3 i32.shl - local.get $1 + local.get $2 i32.add i64.load - local.set $8 + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 - local.get $10 - local.get $2 + local.get $3 + local.get $1 + local.get $0 i32.const 4752 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.0 drop - local.get $10 + local.get $1 i32.const 1 i32.add - local.set $10 - br $for-loop|083 + local.set $1 + br $for-loop|047 end end i32.const 0 end i32.eqz - br_if $folding-inner6 + br_if $folding-inner9 global.get $~lib/memory/__stack_pointer i32.const 4784 i32.store offset=4 i32.const 0 - local.set $10 - block $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.085 (result i32) - local.get $2 + local.set $1 + block $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.01 (result i32) + local.get $0 i32.load offset=4 - local.set $1 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 - loop $for-loop|086 - local.get $0 - local.get $10 - i32.gt_s + local.set $6 + loop $for-loop|0348 + local.get $1 + local.get $6 + i32.lt_s if - local.get $10 + local.get $1 i32.const 3 i32.shl - local.get $1 + local.get $2 i32.add i64.load - local.set $8 + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 - local.get $10 - local.get $2 + local.get $3 + local.get $1 + local.get $0 i32.const 4784 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) - br_if $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.085 + br_if $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.01 drop - local.get $10 + local.get $1 i32.const 1 i32.add - local.set $10 - br $for-loop|086 + local.set $1 + br $for-loop|0348 end end i32.const 0 end - br_if $folding-inner7 + br_if $folding-inner10 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -53172,7 +51063,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -53180,119 +51071,119 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $0 i32.const 1 i64.const 4 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $0 i32.const 2 i64.const 6 call $~lib/typedarray/Uint64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4816 i32.store offset=4 - i32.const 0 - local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.0 (result i32) - local.get $2 + local.get $0 i32.load offset=4 - local.set $1 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 - loop $for-loop|088 - local.get $0 - local.get $10 - i32.gt_s + local.set $6 + loop $for-loop|050 + local.get $1 + local.get $6 + i32.lt_s if - local.get $10 + local.get $1 i32.const 3 i32.shl - local.get $1 + local.get $2 i32.add i64.load - local.set $8 + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 - local.get $10 - local.get $2 + local.get $3 + local.get $1 + local.get $0 i32.const 4816 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.0 drop - local.get $10 + local.get $1 i32.const 1 i32.add - local.set $10 - br $for-loop|088 + local.set $1 + br $for-loop|050 end end i32.const 0 end i32.eqz - br_if $folding-inner6 + br_if $folding-inner9 global.get $~lib/memory/__stack_pointer i32.const 4848 i32.store offset=4 i32.const 0 - local.set $10 - block $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.090 (result i32) - local.get $2 + local.set $1 + block $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.01 (result i32) + local.get $0 i32.load offset=4 - local.set $1 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 - loop $for-loop|091 - local.get $0 - local.get $10 - i32.gt_s + local.set $6 + loop $for-loop|0351 + local.get $1 + local.get $6 + i32.lt_s if - local.get $10 + local.get $1 i32.const 3 i32.shl - local.get $1 + local.get $2 i32.add i64.load - local.set $8 + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 - local.get $10 - local.get $2 + local.get $3 + local.get $1 + local.get $0 i32.const 4848 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) - br_if $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.090 + br_if $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.01 drop - local.get $10 + local.get $1 i32.const 1 i32.add - local.set $10 - br $for-loop|091 + local.set $1 + br $for-loop|0351 end end i32.const 0 end - br_if $folding-inner7 + br_if $folding-inner10 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -53300,7 +51191,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -53308,119 +51199,119 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $0 i32.const 1 f32.const 4 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $0 i32.const 2 f32.const 6 call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer i32.const 4880 i32.store offset=4 - i32.const 0 - local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) - local.get $2 + local.get $0 i32.load offset=4 - local.set $1 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 - loop $for-loop|093 - local.get $0 - local.get $10 - i32.gt_s + local.set $6 + loop $for-loop|053 + local.get $1 + local.get $6 + i32.lt_s if - local.get $10 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add f32.load - local.set $5 + local.set $4 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $5 - local.get $10 - local.get $2 + local.get $4 + local.get $1 + local.get $0 i32.const 4880 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $10 + local.get $1 i32.const 1 i32.add - local.set $10 - br $for-loop|093 + local.set $1 + br $for-loop|053 end end i32.const 0 end i32.eqz - br_if $folding-inner6 + br_if $folding-inner9 global.get $~lib/memory/__stack_pointer i32.const 4912 i32.store offset=4 i32.const 0 - local.set $10 - block $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.095 (result i32) - local.get $2 + local.set $1 + block $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.01 (result i32) + local.get $0 i32.load offset=4 - local.set $1 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 2 - i32.shr_u - local.set $0 - loop $for-loop|096 - local.get $0 - local.get $10 - i32.gt_s + i32.shr_u + local.set $6 + loop $for-loop|0354 + local.get $1 + local.get $6 + i32.lt_s if - local.get $10 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add f32.load - local.set $5 + local.set $4 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $5 - local.get $10 - local.get $2 + local.get $4 + local.get $1 + local.get $0 i32.const 4912 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) - br_if $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.095 + br_if $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.01 drop - local.get $10 + local.get $1 i32.const 1 i32.add - local.set $10 - br $for-loop|096 + local.set $1 + br $for-loop|0354 end end i32.const 0 end - br_if $folding-inner7 + br_if $folding-inner10 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -53428,7 +51319,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -53436,119 +51327,119 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $0 i32.const 1 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $0 i32.const 2 f64.const 6 call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4944 i32.store offset=4 - i32.const 0 - local.set $10 block $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) - local.get $2 + local.get $0 i32.load offset=4 - local.set $1 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 - loop $for-loop|098 - local.get $0 - local.get $10 - i32.gt_s + local.set $6 + loop $for-loop|056 + local.get $1 + local.get $6 + i32.lt_s if - local.get $10 + local.get $1 i32.const 3 i32.shl - local.get $1 + local.get $2 i32.add f64.load - local.set $7 + local.set $5 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $7 - local.get $10 - local.get $2 + local.get $5 + local.get $1 + local.get $0 i32.const 4944 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) br_if $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $10 + local.get $1 i32.const 1 i32.add - local.set $10 - br $for-loop|098 + local.set $1 + br $for-loop|056 end end i32.const 0 end i32.eqz - br_if $folding-inner6 + br_if $folding-inner9 global.get $~lib/memory/__stack_pointer i32.const 4976 i32.store offset=4 i32.const 0 - local.set $10 - block $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0100 (result i32) - local.get $2 + local.set $1 + block $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.01 (result i32) + local.get $0 i32.load offset=4 - local.set $1 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 - loop $for-loop|0101 - local.get $0 - local.get $10 - i32.gt_s + local.set $6 + loop $for-loop|0357 + local.get $1 + local.get $6 + i32.lt_s if - local.get $10 + local.get $1 i32.const 3 i32.shl - local.get $1 + local.get $2 i32.add f64.load - local.set $7 + local.set $5 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $7 - local.get $10 - local.get $2 + local.get $5 + local.get $1 + local.get $0 i32.const 4976 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) - br_if $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0100 + br_if $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.01 drop - local.get $10 + local.get $1 i32.const 1 i32.add - local.set $10 - br $for-loop|0101 + local.set $1 + br $for-loop|0357 end end i32.const 0 end - br_if $folding-inner7 + br_if $folding-inner10 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -53556,118 +51447,118 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $4 + local.tee $1 i32.store - local.get $4 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $4 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $4 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer i32.const 5008 i32.store offset=4 - i32.const 0 - local.set $1 - local.get $4 + local.get $1 i32.load offset=4 - local.set $3 - local.get $4 - i32.load offset=8 local.set $2 + local.get $1 + i32.load offset=8 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0 - loop $for-loop|0103 - local.get $1 - local.get $2 + loop $for-loop|059 + local.get $0 + local.get $6 i32.lt_s if - local.get $1 - local.get $3 + local.get $0 + local.get $2 i32.add i32.load8_s i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $4 i32.const 5008 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0103 + local.set $0 + br $for-loop|059 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne - br_if $folding-inner8 + br_if $folding-inner11 global.get $~lib/memory/__stack_pointer i32.const 5040 i32.store offset=4 i32.const 0 - local.set $1 - local.get $4 + local.set $0 + local.get $1 i32.load offset=4 - local.set $3 - local.get $4 - i32.load offset=8 local.set $2 - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0105 - loop $for-loop|0106 - local.get $1 - local.get $2 + local.get $1 + i32.load offset=8 + local.set $6 + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.01 + loop $for-loop|0360 + local.get $0 + local.get $6 i32.lt_s if - local.get $1 - local.get $3 + local.get $0 + local.get $2 i32.add i32.load8_s i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $4 i32.const 5040 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0105 - local.get $1 + br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.01 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0106 + local.set $0 + br $for-loop|0360 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne - br_if $folding-inner9 + br_if $folding-inner12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -53675,118 +51566,118 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $4 + local.tee $1 i32.store - local.get $4 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $4 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $4 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 5072 i32.store offset=4 - i32.const 0 - local.set $1 - local.get $4 + local.get $1 i32.load offset=4 - local.set $3 - local.get $4 - i32.load offset=8 local.set $2 + local.get $1 + i32.load offset=8 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0 - loop $for-loop|0108 - local.get $1 - local.get $2 + loop $for-loop|062 + local.get $0 + local.get $6 i32.lt_s if - local.get $1 - local.get $3 + local.get $0 + local.get $2 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $4 i32.const 5072 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0108 + local.set $0 + br $for-loop|062 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne - br_if $folding-inner8 + br_if $folding-inner11 global.get $~lib/memory/__stack_pointer i32.const 5104 i32.store offset=4 i32.const 0 - local.set $1 - local.get $4 + local.set $0 + local.get $1 i32.load offset=4 - local.set $3 - local.get $4 - i32.load offset=8 local.set $2 - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0110 - loop $for-loop|0111 - local.get $1 - local.get $2 + local.get $1 + i32.load offset=8 + local.set $6 + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.01 + loop $for-loop|0363 + local.get $0 + local.get $6 i32.lt_s if - local.get $1 - local.get $3 + local.get $0 + local.get $2 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $4 i32.const 5104 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0110 - local.get $1 + br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.01 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0111 + local.set $0 + br $for-loop|0363 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne - br_if $folding-inner9 + br_if $folding-inner12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -53794,118 +51685,118 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $4 + local.tee $1 i32.store - local.get $4 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $4 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $4 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set global.get $~lib/memory/__stack_pointer i32.const 5136 i32.store offset=4 - i32.const 0 - local.set $1 - local.get $4 + local.get $1 i32.load offset=4 - local.set $3 - local.get $4 - i32.load offset=8 local.set $2 - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0114 - loop $for-loop|0115 - local.get $1 - local.get $2 + local.get $1 + i32.load offset=8 + local.set $6 + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.064 + loop $for-loop|065 + local.get $0 + local.get $6 i32.lt_s if - local.get $1 - local.get $3 + local.get $0 + local.get $2 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $4 i32.const 5136 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0114 - local.get $1 + br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.064 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0115 + local.set $0 + br $for-loop|065 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne - br_if $folding-inner8 + br_if $folding-inner11 global.get $~lib/memory/__stack_pointer i32.const 5168 i32.store offset=4 i32.const 0 - local.set $1 - local.get $4 + local.set $0 + local.get $1 i32.load offset=4 - local.set $3 - local.get $4 - i32.load offset=8 local.set $2 - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0117 - loop $for-loop|0118 - local.get $1 - local.get $2 + local.get $1 + i32.load offset=8 + local.set $6 + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0166 + loop $for-loop|0367 + local.get $0 + local.get $6 i32.lt_s if - local.get $1 - local.get $3 + local.get $0 + local.get $2 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $4 i32.const 5168 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0117 - local.get $1 + br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0166 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0118 + local.set $0 + br $for-loop|0367 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne - br_if $folding-inner9 + br_if $folding-inner12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -53913,126 +51804,126 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $1 i32.store - local.get $4 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 5200 i32.store offset=4 - i32.const 0 - local.set $1 - local.get $4 + local.get $1 i32.load offset=4 - local.set $3 - local.get $4 + local.set $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u - local.set $2 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int16Array,i16>|inlined.0 - loop $for-loop|0120 - local.get $1 - local.get $2 + loop $for-loop|068 + local.get $0 + local.get $6 i32.lt_s if - local.get $1 + local.get $0 i32.const 1 i32.shl - local.get $3 + local.get $2 i32.add i32.load16_s i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $4 i32.const 5200 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int16Array,i16>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0120 + local.set $0 + br $for-loop|068 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne - br_if $folding-inner8 + br_if $folding-inner11 global.get $~lib/memory/__stack_pointer i32.const 5232 i32.store offset=4 i32.const 0 - local.set $1 - local.get $4 + local.set $0 + local.get $1 i32.load offset=4 - local.set $3 - local.get $4 + local.set $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u - local.set $2 - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int16Array,i16>|inlined.0122 - loop $for-loop|0123 - local.get $1 - local.get $2 + local.set $6 + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int16Array,i16>|inlined.01 + loop $for-loop|0369 + local.get $0 + local.get $6 i32.lt_s if - local.get $1 + local.get $0 i32.const 1 i32.shl - local.get $3 + local.get $2 i32.add i32.load16_s i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $4 i32.const 5232 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int16Array,i16>|inlined.0122 - local.get $1 + br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int16Array,i16>|inlined.01 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0123 + local.set $0 + br $for-loop|0369 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne - br_if $folding-inner9 + br_if $folding-inner12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -54040,126 +51931,126 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $4 + local.tee $1 i32.store - local.get $4 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $4 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $4 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set global.get $~lib/memory/__stack_pointer i32.const 5264 i32.store offset=4 - i32.const 0 - local.set $1 - local.get $4 + local.get $1 i32.load offset=4 - local.set $3 - local.get $4 + local.set $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u - local.set $2 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.0 - loop $for-loop|0125 - local.get $1 - local.get $2 + loop $for-loop|071 + local.get $0 + local.get $6 i32.lt_s if - local.get $1 + local.get $0 i32.const 1 i32.shl - local.get $3 + local.get $2 i32.add i32.load16_u i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $4 i32.const 5264 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0125 + local.set $0 + br $for-loop|071 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne - br_if $folding-inner8 + br_if $folding-inner11 global.get $~lib/memory/__stack_pointer i32.const 5296 i32.store offset=4 i32.const 0 - local.set $1 - local.get $4 + local.set $0 + local.get $1 i32.load offset=4 - local.set $3 - local.get $4 + local.set $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u - local.set $2 - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.0127 - loop $for-loop|0128 - local.get $1 - local.get $2 + local.set $6 + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.01 + loop $for-loop|0372 + local.get $0 + local.get $6 i32.lt_s if - local.get $1 + local.get $0 i32.const 1 i32.shl - local.get $3 + local.get $2 i32.add i32.load16_u i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $4 i32.const 5296 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.0127 - local.get $1 + br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.01 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0128 + local.set $0 + br $for-loop|0372 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne - br_if $folding-inner9 + br_if $folding-inner12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -54167,126 +52058,126 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $4 + local.tee $1 i32.store - local.get $4 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer i32.const 5328 i32.store offset=4 - i32.const 0 - local.set $1 - local.get $4 + local.get $1 i32.load offset=4 - local.set $3 - local.get $4 + local.set $2 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int32Array,i32>|inlined.0 - loop $for-loop|0130 - local.get $1 - local.get $2 + loop $for-loop|073 + local.get $0 + local.get $6 i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $4 i32.const 5328 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int32Array,i32>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0130 + local.set $0 + br $for-loop|073 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne - br_if $folding-inner8 + br_if $folding-inner11 global.get $~lib/memory/__stack_pointer i32.const 5360 i32.store offset=4 i32.const 0 - local.set $1 - local.get $4 + local.set $0 + local.get $1 i32.load offset=4 - local.set $3 - local.get $4 + local.set $2 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int32Array,i32>|inlined.0132 - loop $for-loop|0133 - local.get $1 - local.get $2 + local.set $6 + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int32Array,i32>|inlined.01 + loop $for-loop|0374 + local.get $0 + local.get $6 i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $4 i32.const 5360 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int32Array,i32>|inlined.0132 - local.get $1 + br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int32Array,i32>|inlined.01 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0133 + local.set $0 + br $for-loop|0374 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne - br_if $folding-inner9 + br_if $folding-inner12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -54294,126 +52185,126 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $4 + local.tee $1 i32.store - local.get $4 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $4 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $4 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer i32.const 5392 i32.store offset=4 - i32.const 0 - local.set $1 - local.get $4 + local.get $1 i32.load offset=4 - local.set $3 - local.get $4 + local.set $2 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.0 - loop $for-loop|0135 - local.get $1 - local.get $2 + loop $for-loop|075 + local.get $0 + local.get $6 i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $4 i32.const 5392 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0135 + local.set $0 + br $for-loop|075 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne - br_if $folding-inner8 + br_if $folding-inner11 global.get $~lib/memory/__stack_pointer i32.const 5424 i32.store offset=4 i32.const 0 - local.set $1 - local.get $4 + local.set $0 + local.get $1 i32.load offset=4 - local.set $3 - local.get $4 + local.set $2 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $2 - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.0137 - loop $for-loop|0138 - local.get $1 - local.get $2 + local.set $6 + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.01 + loop $for-loop|0376 + local.get $0 + local.get $6 i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $4 i32.const 5424 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.0137 - local.get $1 + br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.01 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0138 + local.set $0 + br $for-loop|0376 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne - br_if $folding-inner9 + br_if $folding-inner12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -54421,48 +52312,46 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $1 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 5456 i32.store offset=4 - i32.const 0 - local.set $1 - local.get $3 + local.get $1 i32.load offset=4 local.set $2 - local.get $3 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int64Array,i64>|inlined.0 - loop $for-loop|0140 + loop $for-loop|077 local.get $0 - local.get $1 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $1 + local.get $0 i32.const 3 i32.shl local.get $2 @@ -54470,46 +52359,46 @@ i64.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $3 i32.const 5456 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int64Array,i64>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0140 + local.set $0 + br $for-loop|077 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne - br_if $folding-inner8 + br_if $folding-inner11 global.get $~lib/memory/__stack_pointer i32.const 5488 i32.store offset=4 i32.const 0 - local.set $1 - local.get $3 + local.set $0 + local.get $1 i32.load offset=4 local.set $2 - local.get $3 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int64Array,i64>|inlined.0142 - loop $for-loop|0143 + local.set $6 + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int64Array,i64>|inlined.01 + loop $for-loop|0378 local.get $0 - local.get $1 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $1 + local.get $0 i32.const 3 i32.shl local.get $2 @@ -54517,30 +52406,32 @@ i64.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $3 i32.const 5488 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int64Array,i64>|inlined.0142 - local.get $1 + br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int64Array,i64>|inlined.01 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0143 + local.set $0 + br $for-loop|0378 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne - br_if $folding-inner9 + br_if $folding-inner12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -54548,48 +52439,46 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $1 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set global.get $~lib/memory/__stack_pointer i32.const 5520 i32.store offset=4 - i32.const 0 - local.set $1 - local.get $3 + local.get $1 i32.load offset=4 local.set $2 - local.get $3 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.0 - loop $for-loop|0145 + loop $for-loop|079 local.get $0 - local.get $1 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $1 + local.get $0 i32.const 3 i32.shl local.get $2 @@ -54597,46 +52486,46 @@ i64.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $3 i32.const 5520 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0145 + local.set $0 + br $for-loop|079 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne - br_if $folding-inner8 + br_if $folding-inner11 global.get $~lib/memory/__stack_pointer i32.const 5552 i32.store offset=4 i32.const 0 - local.set $1 - local.get $3 + local.set $0 + local.get $1 i32.load offset=4 local.set $2 - local.get $3 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.0147 - loop $for-loop|0148 + local.set $6 + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.01 + loop $for-loop|0380 local.get $0 - local.get $1 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $1 + local.get $0 i32.const 3 i32.shl local.get $2 @@ -54644,30 +52533,32 @@ i64.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $3 i32.const 5552 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.0147 - local.get $1 + br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.01 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0148 + local.set $0 + br $for-loop|0380 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne - br_if $folding-inner9 + br_if $folding-inner12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -54675,48 +52566,46 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $3 + local.get $1 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $3 + local.get $1 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer i32.const 5584 i32.store offset=4 - i32.const 0 - local.set $1 - local.get $3 + local.get $1 i32.load offset=4 local.set $2 - local.get $3 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float32Array,f32>|inlined.0 - loop $for-loop|0150 + loop $for-loop|081 local.get $0 - local.get $1 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl local.get $2 @@ -54724,46 +52613,46 @@ f32.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $3 i32.const 5584 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0150 + local.set $0 + br $for-loop|081 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne - br_if $folding-inner8 + br_if $folding-inner11 global.get $~lib/memory/__stack_pointer i32.const 5616 i32.store offset=4 i32.const 0 - local.set $1 - local.get $3 + local.set $0 + local.get $1 i32.load offset=4 local.set $2 - local.get $3 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float32Array,f32>|inlined.0152 - loop $for-loop|0153 + local.set $6 + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float32Array,f32>|inlined.01 + loop $for-loop|0382 local.get $0 - local.get $1 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl local.get $2 @@ -54771,30 +52660,32 @@ f32.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $3 i32.const 5616 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float32Array,f32>|inlined.0152 - local.get $1 + br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float32Array,f32>|inlined.01 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0153 + local.set $0 + br $for-loop|0382 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne - br_if $folding-inner9 + br_if $folding-inner12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -54802,48 +52693,46 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $3 + local.get $1 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $3 + local.get $1 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer i32.const 5648 i32.store offset=4 - i32.const 0 - local.set $1 - local.get $3 + local.get $1 i32.load offset=4 local.set $2 - local.get $3 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 + local.set $6 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float64Array,f64>|inlined.0 - loop $for-loop|0155 + loop $for-loop|083 local.get $0 - local.get $1 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $1 + local.get $0 i32.const 3 i32.shl local.get $2 @@ -54851,46 +52740,46 @@ f64.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $3 i32.const 5648 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0155 + local.set $0 + br $for-loop|083 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne - br_if $folding-inner8 + br_if $folding-inner11 global.get $~lib/memory/__stack_pointer i32.const 5680 i32.store offset=4 i32.const 0 - local.set $1 - local.get $3 + local.set $0 + local.get $1 i32.load offset=4 local.set $2 - local.get $3 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float64Array,f64>|inlined.0157 - loop $for-loop|0158 + local.set $6 + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float64Array,f64>|inlined.01 + loop $for-loop|0384 local.get $0 - local.get $1 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $1 + local.get $0 i32.const 3 i32.shl local.get $2 @@ -54898,26 +52787,26 @@ f64.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $3 i32.const 5680 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float64Array,f64>|inlined.0157 - local.get $1 + br_if $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float64Array,f64>|inlined.01 + local.get $0 i32.const 1 i32.add - local.set $1 - br $for-loop|0158 + local.set $0 + br $for-loop|0384 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne - br_if $folding-inner9 + br_if $folding-inner12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add @@ -54929,7 +52818,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -54937,106 +52826,106 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $3 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $3 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer i32.const 5712 i32.store offset=4 - local.get $3 + local.get $1 i32.load offset=4 local.set $2 - local.get $3 + local.get $1 i32.load offset=8 i32.const 1 i32.sub - local.set $1 + local.set $0 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0 - loop $for-loop|0160 - local.get $1 + loop $for-loop|085 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 local.get $2 i32.add i32.load8_s i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $3 i32.const 5712 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|0160 + local.set $0 + br $for-loop|085 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne - br_if $folding-inner10 + br_if $folding-inner13 global.get $~lib/memory/__stack_pointer i32.const 5744 i32.store offset=4 - local.get $3 + local.get $1 i32.load offset=4 local.set $2 - local.get $3 + local.get $1 i32.load offset=8 i32.const 1 i32.sub - local.set $1 - block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0162 - loop $for-loop|0163 - local.get $1 + local.set $0 + block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int8Array,i8>|inlined.01 + loop $for-loop|0386 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 local.get $2 i32.add i32.load8_s i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $3 i32.const 5744 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0162 - local.get $1 + br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int8Array,i8>|inlined.01 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|0163 + local.set $0 + br $for-loop|0386 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne - br_if $folding-inner11 + br_if $folding-inner14 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add @@ -55048,7 +52937,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -55056,106 +52945,106 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 5776 i32.store offset=4 - local.get $3 + local.get $1 i32.load offset=4 local.set $2 - local.get $3 + local.get $1 i32.load offset=8 i32.const 1 i32.sub - local.set $1 + local.set $0 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0 - loop $for-loop|0165 - local.get $1 + loop $for-loop|087 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 local.get $2 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $3 i32.const 5776 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|0165 + local.set $0 + br $for-loop|087 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne - br_if $folding-inner10 + br_if $folding-inner13 global.get $~lib/memory/__stack_pointer i32.const 5808 i32.store offset=4 - local.get $3 + local.get $1 i32.load offset=4 local.set $2 - local.get $3 + local.get $1 i32.load offset=8 i32.const 1 i32.sub - local.set $1 - block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0167 - loop $for-loop|0168 - local.get $1 + local.set $0 + block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.01 + loop $for-loop|0388 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 local.get $2 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $3 i32.const 5808 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0167 - local.get $1 + br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.01 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|0168 + local.set $0 + br $for-loop|0388 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne - br_if $folding-inner11 + br_if $folding-inner14 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add @@ -55167,7 +53056,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -55175,106 +53064,106 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $3 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $3 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set global.get $~lib/memory/__stack_pointer i32.const 5840 i32.store offset=4 - local.get $3 + local.get $1 i32.load offset=4 local.set $2 - local.get $3 + local.get $1 i32.load offset=8 i32.const 1 i32.sub - local.set $1 - block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0171 - loop $for-loop|0172 - local.get $1 + local.set $0 + block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.089 + loop $for-loop|090 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 local.get $2 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $3 i32.const 5840 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0171 - local.get $1 + br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.089 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|0172 + local.set $0 + br $for-loop|090 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne - br_if $folding-inner10 + br_if $folding-inner13 global.get $~lib/memory/__stack_pointer i32.const 5872 i32.store offset=4 - local.get $3 + local.get $1 i32.load offset=4 local.set $2 - local.get $3 + local.get $1 i32.load offset=8 i32.const 1 i32.sub - local.set $1 - block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0174 - loop $for-loop|0175 - local.get $1 + local.set $0 + block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0191 + loop $for-loop|0392 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 local.get $2 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $3 i32.const 5872 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0174 - local.get $1 + br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0191 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|0175 + local.set $0 + br $for-loop|0392 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne - br_if $folding-inner11 + br_if $folding-inner14 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add @@ -55286,7 +53175,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -55294,40 +53183,40 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 5904 i32.store offset=4 - local.get $3 + local.get $1 i32.load offset=4 local.set $2 - local.get $3 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u i32.const 1 i32.sub - local.set $1 + local.set $0 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int16Array,i16>|inlined.0 - loop $for-loop|0177 - local.get $1 + loop $for-loop|093 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 1 i32.shl local.get $2 @@ -55335,46 +53224,46 @@ i32.load16_s i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $3 i32.const 5904 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int16Array,i16>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|0177 + local.set $0 + br $for-loop|093 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne - br_if $folding-inner10 + br_if $folding-inner13 global.get $~lib/memory/__stack_pointer i32.const 5936 i32.store offset=4 - local.get $3 + local.get $1 i32.load offset=4 local.set $2 - local.get $3 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u i32.const 1 i32.sub - local.set $1 - block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int16Array,i16>|inlined.0179 - loop $for-loop|0180 - local.get $1 + local.set $0 + block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int16Array,i16>|inlined.01 + loop $for-loop|0394 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 1 i32.shl local.get $2 @@ -55382,26 +53271,26 @@ i32.load16_s i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $3 i32.const 5936 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int16Array,i16>|inlined.0179 - local.get $1 + br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int16Array,i16>|inlined.01 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|0180 + local.set $0 + br $for-loop|0394 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne - br_if $folding-inner11 + br_if $folding-inner14 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add @@ -55413,7 +53302,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -55421,40 +53310,40 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $3 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $3 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set global.get $~lib/memory/__stack_pointer i32.const 5968 i32.store offset=4 - local.get $3 + local.get $1 i32.load offset=4 local.set $2 - local.get $3 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u i32.const 1 i32.sub - local.set $1 + local.set $0 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.0 - loop $for-loop|0182 - local.get $1 + loop $for-loop|095 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 1 i32.shl local.get $2 @@ -55462,46 +53351,46 @@ i32.load16_u i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $3 i32.const 5968 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|0182 + local.set $0 + br $for-loop|095 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne - br_if $folding-inner10 + br_if $folding-inner13 global.get $~lib/memory/__stack_pointer i32.const 6000 i32.store offset=4 - local.get $3 + local.get $1 i32.load offset=4 local.set $2 - local.get $3 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u i32.const 1 i32.sub - local.set $1 - block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.0184 - loop $for-loop|0185 - local.get $1 + local.set $0 + block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.01 + loop $for-loop|0396 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 1 i32.shl local.get $2 @@ -55509,26 +53398,26 @@ i32.load16_u i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $3 i32.const 6000 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.0184 - local.get $1 + br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.01 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|0185 + local.set $0 + br $for-loop|0396 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne - br_if $folding-inner11 + br_if $folding-inner14 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add @@ -55540,7 +53429,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -55548,40 +53437,40 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $3 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $3 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer i32.const 6032 i32.store offset=4 - local.get $3 + local.get $1 i32.load offset=4 local.set $2 - local.get $3 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.sub - local.set $1 + local.set $0 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int32Array,i32>|inlined.0 - loop $for-loop|0187 - local.get $1 + loop $for-loop|097 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 2 i32.shl local.get $2 @@ -55589,46 +53478,46 @@ i32.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $3 i32.const 6032 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int32Array,i32>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|0187 + local.set $0 + br $for-loop|097 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne - br_if $folding-inner10 + br_if $folding-inner13 global.get $~lib/memory/__stack_pointer i32.const 6064 i32.store offset=4 - local.get $3 + local.get $1 i32.load offset=4 local.set $2 - local.get $3 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.sub - local.set $1 - block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int32Array,i32>|inlined.0189 - loop $for-loop|0190 - local.get $1 + local.set $0 + block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int32Array,i32>|inlined.01 + loop $for-loop|0398 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 2 i32.shl local.get $2 @@ -55636,26 +53525,26 @@ i32.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $3 i32.const 6064 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int32Array,i32>|inlined.0189 - local.get $1 + br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int32Array,i32>|inlined.01 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|0190 + local.set $0 + br $for-loop|0398 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne - br_if $folding-inner11 + br_if $folding-inner14 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add @@ -55667,7 +53556,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -55675,40 +53564,40 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $3 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $3 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer i32.const 6096 i32.store offset=4 - local.get $3 + local.get $1 i32.load offset=4 local.set $2 - local.get $3 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.sub - local.set $1 + local.set $0 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.0 - loop $for-loop|0192 - local.get $1 + loop $for-loop|099 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 2 i32.shl local.get $2 @@ -55716,46 +53605,46 @@ i32.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $3 i32.const 6096 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|0192 + local.set $0 + br $for-loop|099 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne - br_if $folding-inner10 + br_if $folding-inner13 global.get $~lib/memory/__stack_pointer i32.const 6128 i32.store offset=4 - local.get $3 + local.get $1 i32.load offset=4 local.set $2 - local.get $3 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.sub - local.set $1 - block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.0194 - loop $for-loop|0195 - local.get $1 + local.set $0 + block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.01 + loop $for-loop|03100 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 2 i32.shl local.get $2 @@ -55763,26 +53652,26 @@ i32.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $3 i32.const 6128 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.0194 - local.get $1 + br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.01 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|0195 + local.set $0 + br $for-loop|03100 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne - br_if $folding-inner11 + br_if $folding-inner14 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add @@ -55794,7 +53683,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -55802,114 +53691,114 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $1 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 6160 i32.store offset=4 - local.get $2 + local.get $1 i32.load offset=4 - local.set $0 - local.get $2 + local.set $2 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.const 1 i32.sub - local.set $1 + local.set $0 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int64Array,i64>|inlined.0 - loop $for-loop|0197 - local.get $1 + loop $for-loop|0101 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $0 + local.get $2 i32.add i64.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $2 i32.const 6160 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int64Array,i64>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|0197 + local.set $0 + br $for-loop|0101 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne - br_if $folding-inner10 + br_if $folding-inner13 global.get $~lib/memory/__stack_pointer i32.const 6192 i32.store offset=4 - local.get $2 + local.get $1 i32.load offset=4 - local.set $0 - local.get $2 + local.set $2 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.const 1 i32.sub - local.set $1 - block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int64Array,i64>|inlined.0199 - loop $for-loop|0200 - local.get $1 + local.set $0 + block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int64Array,i64>|inlined.01 + loop $for-loop|03102 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $0 + local.get $2 i32.add i64.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $2 i32.const 6192 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int64Array,i64>|inlined.0199 - local.get $1 + br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Int64Array,i64>|inlined.01 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|0200 + local.set $0 + br $for-loop|03102 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne - br_if $folding-inner11 + br_if $folding-inner14 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add @@ -55921,7 +53810,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -55929,114 +53818,114 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $1 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set global.get $~lib/memory/__stack_pointer i32.const 6224 i32.store offset=4 - local.get $2 + local.get $1 i32.load offset=4 - local.set $0 - local.get $2 + local.set $2 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.const 1 i32.sub - local.set $1 + local.set $0 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.0 - loop $for-loop|0202 - local.get $1 + loop $for-loop|0103 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $0 + local.get $2 i32.add i64.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $2 i32.const 6224 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|0202 + local.set $0 + br $for-loop|0103 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne - br_if $folding-inner10 + br_if $folding-inner13 global.get $~lib/memory/__stack_pointer i32.const 6256 i32.store offset=4 - local.get $2 + local.get $1 i32.load offset=4 - local.set $0 - local.get $2 + local.set $2 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.const 1 i32.sub - local.set $1 - block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.0204 - loop $for-loop|0205 - local.get $1 + local.set $0 + block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.01 + loop $for-loop|03104 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $0 + local.get $2 i32.add i64.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $2 i32.const 6256 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.0204 - local.get $1 + br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.01 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|0205 + local.set $0 + br $for-loop|03104 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne - br_if $folding-inner11 + br_if $folding-inner14 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add @@ -56048,7 +53937,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -56056,114 +53945,114 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $1 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $1 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer i32.const 6288 i32.store offset=4 - local.get $2 + local.get $1 i32.load offset=4 - local.set $0 - local.get $2 + local.set $2 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.sub - local.set $1 + local.set $0 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Float32Array,f32>|inlined.0 - loop $for-loop|0207 - local.get $1 + loop $for-loop|0105 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $0 + local.get $2 i32.add f32.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $2 i32.const 6288 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|0207 + local.set $0 + br $for-loop|0105 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne - br_if $folding-inner10 + br_if $folding-inner13 global.get $~lib/memory/__stack_pointer i32.const 6320 i32.store offset=4 - local.get $2 + local.get $1 i32.load offset=4 - local.set $0 - local.get $2 + local.set $2 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.sub - local.set $1 - block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Float32Array,f32>|inlined.0209 - loop $for-loop|0210 - local.get $1 + local.set $0 + block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Float32Array,f32>|inlined.01 + loop $for-loop|03106 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $0 + local.get $2 i32.add f32.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $2 i32.const 6320 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Float32Array,f32>|inlined.0209 - local.get $1 + br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Float32Array,f32>|inlined.01 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|0210 + local.set $0 + br $for-loop|03106 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne - br_if $folding-inner11 + br_if $folding-inner14 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add @@ -56175,7 +54064,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -56183,118 +54072,120 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $1 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $2 + local.get $1 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer i32.const 6352 i32.store offset=4 - local.get $2 + local.get $1 i32.load offset=4 - local.set $0 - local.get $2 + local.set $2 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.const 1 i32.sub - local.set $1 + local.set $0 block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Float64Array,f64>|inlined.0 - loop $for-loop|0212 - local.get $1 + loop $for-loop|0107 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $0 + local.get $2 i32.add f64.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $2 i32.const 6352 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|0212 + local.set $0 + br $for-loop|0107 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne - br_if $folding-inner10 + br_if $folding-inner13 global.get $~lib/memory/__stack_pointer i32.const 6384 i32.store offset=4 - local.get $2 + local.get $1 i32.load offset=4 - local.set $0 - local.get $2 + local.set $2 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.const 1 i32.sub - local.set $1 - block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Float64Array,f64>|inlined.0214 - loop $for-loop|0215 - local.get $1 + local.set $0 + block $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Float64Array,f64>|inlined.01 + loop $for-loop|03108 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $0 + local.get $2 i32.add f64.load i32.const 3 global.set $~argumentsLength + local.get $0 local.get $1 - local.get $2 i32.const 6384 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) - br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Float64Array,f64>|inlined.0214 - local.get $1 + br_if $~lib/typedarray/FIND_LAST_INDEX<~lib/typedarray/Float64Array,f64>|inlined.01 + local.get $0 i32.const 1 i32.sub - local.set $1 - br $for-loop|0215 + local.set $0 + br $for-loop|03108 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne - br_if $folding-inner11 + br_if $folding-inner14 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -56302,7 +54193,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -56310,113 +54201,113 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $3 + local.tee $0 i32.store - local.get $3 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $3 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $3 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer i32.const 6416 i32.store offset=4 - i32.const 0 - local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.0 (result i32) - local.get $3 + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 - local.set $1 - loop $for-loop|0217 + local.set $6 + loop $for-loop|0109 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if + local.get $1 local.get $2 - local.get $9 i32.add i32.load8_s - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 6416 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|0217 + local.set $1 + br $for-loop|0109 end end i32.const 1 end i32.eqz - br_if $folding-inner12 + br_if $folding-inner15 global.get $~lib/memory/__stack_pointer i32.const 6448 i32.store offset=4 i32.const 0 - local.set $9 - block $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.0219 (result i32) - local.get $3 + local.set $1 + block $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.01 (result i32) + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 - local.set $1 - loop $for-loop|0220 + local.set $6 + loop $for-loop|03110 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if + local.get $1 local.get $2 - local.get $9 i32.add i32.load8_s - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 6448 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz - br_if $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.0219 + br_if $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|0220 + local.set $1 + br $for-loop|03110 end end i32.const 1 end - br_if $folding-inner13 + br_if $folding-inner16 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -56424,7 +54315,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -56432,113 +54323,113 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $3 + local.tee $0 i32.store - local.get $3 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Uint8Array#__set - local.get $3 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 6480 i32.store offset=4 - i32.const 0 - local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0 (result i32) - local.get $3 + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 - local.set $1 - loop $for-loop|0222 + local.set $6 + loop $for-loop|0111 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if + local.get $1 local.get $2 - local.get $9 i32.add i32.load8_u - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 6480 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|0222 + local.set $1 + br $for-loop|0111 end end i32.const 1 end i32.eqz - br_if $folding-inner12 + br_if $folding-inner15 global.get $~lib/memory/__stack_pointer i32.const 6512 i32.store offset=4 i32.const 0 - local.set $9 - block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0224 (result i32) - local.get $3 + local.set $1 + block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.01 (result i32) + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 - local.set $1 - loop $for-loop|0225 + local.set $6 + loop $for-loop|03112 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if + local.get $1 local.get $2 - local.get $9 i32.add i32.load8_u - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 6512 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz - br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0224 + br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|0225 + local.set $1 + br $for-loop|03112 end end i32.const 1 end - br_if $folding-inner13 + br_if $folding-inner16 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -56546,7 +54437,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -56554,113 +54445,113 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $3 + local.tee $0 i32.store - local.get $3 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $3 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $3 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Uint8ClampedArray#__set global.get $~lib/memory/__stack_pointer i32.const 6544 i32.store offset=4 - i32.const 0 - local.set $9 - block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0228 (result i32) - local.get $3 + block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0113 (result i32) + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 - local.set $1 - loop $for-loop|0229 + local.set $6 + loop $for-loop|0114 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if + local.get $1 local.get $2 - local.get $9 i32.add i32.load8_u - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 6544 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz - br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0228 + br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0113 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|0229 + local.set $1 + br $for-loop|0114 end end i32.const 1 end i32.eqz - br_if $folding-inner12 + br_if $folding-inner15 global.get $~lib/memory/__stack_pointer i32.const 6576 i32.store offset=4 i32.const 0 - local.set $9 - block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0231 (result i32) - local.get $3 + local.set $1 + block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.01115 (result i32) + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 - local.set $1 - loop $for-loop|0232 + local.set $6 + loop $for-loop|03116 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if + local.get $1 local.get $2 - local.get $9 i32.add i32.load8_u - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 6576 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz - br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0231 + br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.01115 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|0232 + local.set $1 + br $for-loop|03116 end end i32.const 1 end - br_if $folding-inner13 + br_if $folding-inner16 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -56668,7 +54559,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -56676,121 +54567,121 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $3 + local.tee $0 i32.store - local.get $3 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 6608 i32.store offset=4 - i32.const 0 - local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.0 (result i32) - local.get $3 + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $1 - loop $for-loop|0234 + local.set $6 + loop $for-loop|0117 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $9 + local.get $1 i32.const 1 i32.shl local.get $2 i32.add i32.load16_s - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 6608 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|0234 + local.set $1 + br $for-loop|0117 end end i32.const 1 end i32.eqz - br_if $folding-inner12 + br_if $folding-inner15 global.get $~lib/memory/__stack_pointer i32.const 6640 i32.store offset=4 i32.const 0 - local.set $9 - block $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.0236 (result i32) - local.get $3 + local.set $1 + block $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.01 (result i32) + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $1 - loop $for-loop|0237 + local.set $6 + loop $for-loop|03118 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $9 + local.get $1 i32.const 1 i32.shl local.get $2 i32.add i32.load16_s - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 6640 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz - br_if $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.0236 + br_if $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|0237 + local.set $1 + br $for-loop|03118 end end i32.const 1 end - br_if $folding-inner13 + br_if $folding-inner16 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -56798,7 +54689,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -56806,121 +54697,121 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $3 + local.tee $0 i32.store - local.get $3 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $3 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Uint16Array#__set - local.get $3 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Uint16Array#__set global.get $~lib/memory/__stack_pointer i32.const 6672 i32.store offset=4 - i32.const 0 - local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.0 (result i32) - local.get $3 + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $1 - loop $for-loop|0239 + local.set $6 + loop $for-loop|0119 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $9 + local.get $1 i32.const 1 i32.shl local.get $2 i32.add i32.load16_u - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 6672 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|0239 + local.set $1 + br $for-loop|0119 end end i32.const 1 end i32.eqz - br_if $folding-inner12 + br_if $folding-inner15 global.get $~lib/memory/__stack_pointer i32.const 6704 i32.store offset=4 i32.const 0 - local.set $9 - block $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.0241 (result i32) - local.get $3 + local.set $1 + block $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.01 (result i32) + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.set $1 - loop $for-loop|0242 + local.set $6 + loop $for-loop|03120 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $9 + local.get $1 i32.const 1 i32.shl local.get $2 i32.add i32.load16_u - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 6704 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz - br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.0241 + br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|0242 + local.set $1 + br $for-loop|03120 end end i32.const 1 end - br_if $folding-inner13 + br_if $folding-inner16 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -56928,7 +54819,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -56936,121 +54827,121 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $3 + local.tee $0 i32.store - local.get $3 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $3 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $3 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer i32.const 6736 i32.store offset=4 - i32.const 0 - local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) - local.get $3 + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 - loop $for-loop|0244 + local.set $6 + loop $for-loop|0121 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $9 + local.get $1 i32.const 2 i32.shl local.get $2 i32.add i32.load - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 6736 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|0244 + local.set $1 + br $for-loop|0121 end end i32.const 1 end i32.eqz - br_if $folding-inner12 + br_if $folding-inner15 global.get $~lib/memory/__stack_pointer i32.const 6768 i32.store offset=4 i32.const 0 - local.set $9 - block $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.0246 (result i32) - local.get $3 + local.set $1 + block $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.01 (result i32) + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 - loop $for-loop|0247 + local.set $6 + loop $for-loop|03122 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $9 + local.get $1 i32.const 2 i32.shl local.get $2 i32.add i32.load - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 6768 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz - br_if $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.0246 + br_if $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|0247 + local.set $1 + br $for-loop|03122 end end i32.const 1 end - br_if $folding-inner13 + br_if $folding-inner16 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -57058,7 +54949,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -57066,121 +54957,381 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $3 + local.tee $0 i32.store - local.get $3 + local.get $0 i32.const 0 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $3 + local.get $0 i32.const 1 i32.const 4 call $~lib/typedarray/Uint32Array#__set - local.get $3 + local.get $0 i32.const 2 i32.const 6 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer i32.const 6800 i32.store offset=4 - i32.const 0 - local.set $9 block $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) - local.get $3 + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 - loop $for-loop|0249 + local.set $6 + loop $for-loop|0123 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $9 + local.get $1 i32.const 2 i32.shl local.get $2 i32.add i32.load - local.set $0 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 + local.get $7 + local.get $1 local.get $0 - local.get $9 - local.get $3 i32.const 6800 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.0 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|0249 + local.set $1 + br $for-loop|0123 end end i32.const 1 end i32.eqz - br_if $folding-inner12 + br_if $folding-inner15 + global.get $~lib/memory/__stack_pointer + i32.const 6832 + i32.store offset=4 + i32.const 0 + local.set $1 + block $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.01 (result i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.set $6 + loop $for-loop|03124 + local.get $1 + local.get $6 + i32.lt_s + if + local.get $1 + i32.const 2 + i32.shl + local.get $2 + i32.add + i32.load + local.set $7 + i32.const 3 + global.set $~argumentsLength + i32.const 0 + local.get $7 + local.get $1 + local.get $0 + i32.const 6832 + i32.load + call_indirect $0 (type $i32_i32_i32_=>_i32) + i32.eqz + br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.01 + drop + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $for-loop|03124 + end + end + i32.const 1 + end + br_if $folding-inner16 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $0 + i32.store + local.get $0 + i32.const 0 + i64.const 2 + call $~lib/typedarray/Int64Array#__set + local.get $0 + i32.const 1 + i64.const 4 + call $~lib/typedarray/Int64Array#__set + local.get $0 + i32.const 2 + i64.const 6 + call $~lib/typedarray/Int64Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 6864 + i32.store offset=4 + block $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0 (result i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=8 + i32.const 3 + i32.shr_u + local.set $6 + loop $for-loop|0125 + local.get $1 + local.get $6 + i32.lt_s + if + local.get $1 + i32.const 3 + i32.shl + local.get $2 + i32.add + i64.load + local.set $3 + i32.const 3 + global.set $~argumentsLength + i32.const 0 + local.get $3 + local.get $1 + local.get $0 + i32.const 6864 + i32.load + call_indirect $0 (type $i64_i32_i32_=>_i32) + i32.eqz + br_if $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0 + drop + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $for-loop|0125 + end + end + i32.const 1 + end + i32.eqz + br_if $folding-inner15 + global.get $~lib/memory/__stack_pointer + i32.const 6896 + i32.store offset=4 + i32.const 0 + local.set $1 + block $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.01 (result i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=8 + i32.const 3 + i32.shr_u + local.set $6 + loop $for-loop|03126 + local.get $1 + local.get $6 + i32.lt_s + if + local.get $1 + i32.const 3 + i32.shl + local.get $2 + i32.add + i64.load + local.set $3 + i32.const 3 + global.set $~argumentsLength + i32.const 0 + local.get $3 + local.get $1 + local.get $0 + i32.const 6896 + i32.load + call_indirect $0 (type $i64_i32_i32_=>_i32) + i32.eqz + br_if $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.01 + drop + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $for-loop|03126 + end + end + i32.const 1 + end + br_if $folding-inner16 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i32.const 3 + call $~lib/typedarray/Uint64Array#constructor + local.tee $0 + i32.store + local.get $0 + i32.const 0 + i64.const 2 + call $~lib/typedarray/Uint64Array#__set + local.get $0 + i32.const 1 + i64.const 4 + call $~lib/typedarray/Uint64Array#__set + local.get $0 + i32.const 2 + i64.const 6 + call $~lib/typedarray/Uint64Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 6928 + i32.store offset=4 + block $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0 (result i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=8 + i32.const 3 + i32.shr_u + local.set $6 + loop $for-loop|0127 + local.get $1 + local.get $6 + i32.lt_s + if + local.get $1 + i32.const 3 + i32.shl + local.get $2 + i32.add + i64.load + local.set $3 + i32.const 3 + global.set $~argumentsLength + i32.const 0 + local.get $3 + local.get $1 + local.get $0 + i32.const 6928 + i32.load + call_indirect $0 (type $i64_i32_i32_=>_i32) + i32.eqz + br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0 + drop + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $for-loop|0127 + end + end + i32.const 1 + end + i32.eqz + br_if $folding-inner15 global.get $~lib/memory/__stack_pointer - i32.const 6832 + i32.const 6960 i32.store offset=4 i32.const 0 - local.set $9 - block $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.0251 (result i32) - local.get $3 + local.set $1 + block $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.01 (result i32) + local.get $0 i32.load offset=4 local.set $2 - local.get $3 + local.get $0 i32.load offset=8 - i32.const 2 + i32.const 3 i32.shr_u - local.set $1 - loop $for-loop|0252 + local.set $6 + loop $for-loop|03128 local.get $1 - local.get $9 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $9 - i32.const 2 + local.get $1 + i32.const 3 i32.shl local.get $2 i32.add - i32.load - local.set $0 + i64.load + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $0 - local.get $9 local.get $3 - i32.const 6832 + local.get $1 + local.get $0 + i32.const 6960 i32.load - call_indirect $0 (type $i32_i32_i32_=>_i32) + call_indirect $0 (type $i64_i32_i32_=>_i32) i32.eqz - br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.0251 + br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.01 drop - local.get $9 + local.get $1 i32.const 1 i32.add - local.set $9 - br $for-loop|0252 + local.set $1 + br $for-loop|03128 end end i32.const 1 end - br_if $folding-inner13 + br_if $folding-inner16 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -57188,129 +55339,129 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 i64.store local.get $0 i32.const 3 - call $~lib/typedarray/Int64Array#constructor - local.tee $2 + call $~lib/typedarray/Float32Array#constructor + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 - i64.const 2 - call $~lib/typedarray/Int64Array#__set - local.get $2 + f32.const 2 + call $~lib/typedarray/Float32Array#__set + local.get $0 i32.const 1 - i64.const 4 - call $~lib/typedarray/Int64Array#__set - local.get $2 + f32.const 4 + call $~lib/typedarray/Float32Array#__set + local.get $0 i32.const 2 - i64.const 6 - call $~lib/typedarray/Int64Array#__set + f32.const 6 + call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer - i32.const 6864 + i32.const 6992 i32.store offset=4 - i32.const 0 - local.set $10 - block $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0 (result i32) - local.get $2 + block $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) + local.get $0 i32.load offset=4 - local.set $1 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 - i32.const 3 + i32.const 2 i32.shr_u - local.set $0 - loop $for-loop|0254 - local.get $0 - local.get $10 - i32.gt_s + local.set $6 + loop $for-loop|0129 + local.get $1 + local.get $6 + i32.lt_s if - local.get $10 - i32.const 3 - i32.shl local.get $1 + i32.const 2 + i32.shl + local.get $2 i32.add - i64.load - local.set $8 + f32.load + local.set $4 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 - local.get $10 - local.get $2 - i32.const 6864 + local.get $4 + local.get $1 + local.get $0 + i32.const 6992 i32.load - call_indirect $0 (type $i64_i32_i32_=>_i32) + call_indirect $0 (type $f32_i32_i32_=>_i32) i32.eqz - br_if $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0 + br_if $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $10 + local.get $1 i32.const 1 i32.add - local.set $10 - br $for-loop|0254 + local.set $1 + br $for-loop|0129 end end i32.const 1 end i32.eqz - br_if $folding-inner12 + br_if $folding-inner15 global.get $~lib/memory/__stack_pointer - i32.const 6896 + i32.const 7024 i32.store offset=4 i32.const 0 - local.set $10 - block $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0256 (result i32) - local.get $2 + local.set $1 + block $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.01 (result i32) + local.get $0 i32.load offset=4 - local.set $1 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 - i32.const 3 + i32.const 2 i32.shr_u - local.set $0 - loop $for-loop|0257 - local.get $0 - local.get $10 - i32.gt_s + local.set $6 + loop $for-loop|03130 + local.get $1 + local.get $6 + i32.lt_s if - local.get $10 - i32.const 3 - i32.shl local.get $1 + i32.const 2 + i32.shl + local.get $2 i32.add - i64.load - local.set $8 + f32.load + local.set $4 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 - local.get $10 - local.get $2 - i32.const 6896 + local.get $4 + local.get $1 + local.get $0 + i32.const 7024 i32.load - call_indirect $0 (type $i64_i32_i32_=>_i32) + call_indirect $0 (type $f32_i32_i32_=>_i32) i32.eqz - br_if $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0256 + br_if $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.01 drop - local.get $10 + local.get $1 i32.const 1 i32.add - local.set $10 - br $for-loop|0257 + local.set $1 + br $for-loop|03130 end end i32.const 1 end - br_if $folding-inner13 + br_if $folding-inner16 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -57318,387 +55469,519 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 i64.store local.get $0 i32.const 3 - call $~lib/typedarray/Uint64Array#constructor - local.tee $2 + call $~lib/typedarray/Float64Array#constructor + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 - i64.const 2 - call $~lib/typedarray/Uint64Array#__set - local.get $2 + f64.const 2 + call $~lib/typedarray/Float64Array#__set + local.get $0 i32.const 1 - i64.const 4 - call $~lib/typedarray/Uint64Array#__set - local.get $2 + f64.const 4 + call $~lib/typedarray/Float64Array#__set + local.get $0 i32.const 2 - i64.const 6 - call $~lib/typedarray/Uint64Array#__set + f64.const 6 + call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer - i32.const 6928 + i32.const 7056 i32.store offset=4 - i32.const 0 - local.set $10 - block $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0 (result i32) - local.get $2 + block $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) + local.get $0 i32.load offset=4 - local.set $1 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 - loop $for-loop|0259 - local.get $0 - local.get $10 - i32.gt_s + local.set $6 + loop $for-loop|0131 + local.get $1 + local.get $6 + i32.lt_s if - local.get $10 + local.get $1 i32.const 3 i32.shl - local.get $1 + local.get $2 i32.add - i64.load - local.set $8 + f64.load + local.set $5 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 - local.get $10 - local.get $2 - i32.const 6928 + local.get $5 + local.get $1 + local.get $0 + i32.const 7056 i32.load - call_indirect $0 (type $i64_i32_i32_=>_i32) + call_indirect $0 (type $f64_i32_i32_=>_i32) i32.eqz - br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0 + br_if $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $10 + local.get $1 i32.const 1 i32.add - local.set $10 - br $for-loop|0259 + local.set $1 + br $for-loop|0131 end end i32.const 1 end i32.eqz - br_if $folding-inner12 + br_if $folding-inner15 global.get $~lib/memory/__stack_pointer - i32.const 6960 + i32.const 7088 i32.store offset=4 i32.const 0 - local.set $10 - block $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0261 (result i32) - local.get $2 + local.set $1 + block $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.01 (result i32) + local.get $0 i32.load offset=4 - local.set $1 - local.get $2 + local.set $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.set $0 - loop $for-loop|0262 - local.get $0 - local.get $10 - i32.gt_s + local.set $6 + loop $for-loop|03132 + local.get $1 + local.get $6 + i32.lt_s if - local.get $10 + local.get $1 i32.const 3 i32.shl - local.get $1 + local.get $2 i32.add - i64.load - local.set $8 + f64.load + local.set $5 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 - local.get $10 - local.get $2 - i32.const 6960 + local.get $5 + local.get $1 + local.get $0 + i32.const 7088 i32.load - call_indirect $0 (type $i64_i32_i32_=>_i32) + call_indirect $0 (type $f64_i32_i32_=>_i32) i32.eqz - br_if $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0261 + br_if $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.01 drop - local.get $10 + local.get $1 i32.const 1 i32.add - local.set $10 - br $for-loop|0262 + local.set $1 + br $for-loop|03132 end end i32.const 1 end - br_if $folding-inner13 + br_if $folding-inner16 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - i32.const 8 + i32.const 12 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 i64.store local.get $0 + i32.const 0 + i32.store offset=8 + i32.const 0 + global.set $std/typedarray/forEachCallCount + local.get $0 i32.const 3 - call $~lib/typedarray/Float32Array#constructor - local.tee $2 + call $~lib/typedarray/Int8Array#constructor + local.tee $0 i32.store - local.get $2 + local.get $0 + global.set $std/typedarray/forEachSelf + global.get $~lib/memory/__stack_pointer + i32.const 7152 + i32.store offset=4 + local.get $0 i32.const 0 - f32.const 2 - call $~lib/typedarray/Float32Array#__set - local.get $2 + i32.const 7152 + i32.const 0 + call $~lib/array/Array#__get + i32.extend8_s + call $~lib/typedarray/Int8Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 7152 + i32.store offset=4 + local.get $0 i32.const 1 - f32.const 4 - call $~lib/typedarray/Float32Array#__set - local.get $2 - i32.const 2 - f32.const 6 - call $~lib/typedarray/Float32Array#__set + i32.const 7152 + i32.const 1 + call $~lib/array/Array#__get + i32.extend8_s + call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer - i32.const 6992 + i32.const 7152 i32.store offset=4 + local.get $0 + i32.const 2 + i32.const 7152 + i32.const 2 + call $~lib/array/Array#__get + i32.extend8_s + call $~lib/typedarray/Int8Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 7200 + i32.store offset=8 i32.const 0 - local.set $10 - block $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) - local.get $2 - i32.load offset=4 - local.set $1 + local.set $2 + local.get $0 + i32.load offset=4 + local.set $1 + local.get $0 + i32.load offset=8 + local.set $6 + loop $for-loop|073133 local.get $2 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.set $0 - loop $for-loop|0264 + local.get $6 + i32.lt_s + if + local.get $1 + local.get $2 + i32.add + i32.load8_s + i32.const 3 + global.set $~argumentsLength + local.get $2 local.get $0 - local.get $10 - i32.gt_s - if - local.get $10 - i32.const 2 - i32.shl - local.get $1 - i32.add - f32.load - local.set $5 - i32.const 3 - global.set $~argumentsLength - i32.const 0 - local.get $5 - local.get $10 - local.get $2 - i32.const 6992 - i32.load - call_indirect $0 (type $f32_i32_i32_=>_i32) - i32.eqz - br_if $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0 - drop - local.get $10 - i32.const 1 - i32.add - local.set $10 - br $for-loop|0264 - end + i32.const 7200 + i32.load + call_indirect $0 (type $i32_i32_i32_=>_none) + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $for-loop|073133 end - i32.const 1 end - i32.eqz - br_if $folding-inner12 + global.get $std/typedarray/forEachCallCount + i32.const 3 + i32.ne + br_if $folding-inner17 global.get $~lib/memory/__stack_pointer - i32.const 7024 + i32.const 12 + i32.add + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i32.const 0 + i32.store offset=8 + i32.const 0 + global.set $std/typedarray/forEachCallCount + local.get $0 + i32.const 3 + call $~lib/typedarray/Uint8Array#constructor + local.tee $0 + i32.store + local.get $0 + global.set $std/typedarray/forEachSelf + global.get $~lib/memory/__stack_pointer + i32.const 7152 + i32.store offset=4 + local.get $0 + i32.const 0 + i32.const 7152 + i32.const 0 + call $~lib/array/Array#__get + i32.const 255 + i32.and + call $~lib/typedarray/Uint8Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 7152 + i32.store offset=4 + local.get $0 + i32.const 1 + i32.const 7152 + i32.const 1 + call $~lib/array/Array#__get + i32.const 255 + i32.and + call $~lib/typedarray/Uint8Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 7152 i32.store offset=4 + local.get $0 + i32.const 2 + i32.const 7152 + i32.const 2 + call $~lib/array/Array#__get + i32.const 255 + i32.and + call $~lib/typedarray/Uint8Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 7232 + i32.store offset=8 i32.const 0 - local.set $10 - block $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0266 (result i32) + local.set $2 + local.get $0 + i32.load offset=4 + local.set $1 + local.get $0 + i32.load offset=8 + local.set $6 + loop $for-loop|076 local.get $2 - i32.load offset=4 - local.set $1 + local.get $6 + i32.lt_s + if + local.get $1 + local.get $2 + i32.add + i32.load8_u + i32.const 3 + global.set $~argumentsLength + local.get $2 + local.get $0 + i32.const 7232 + i32.load + call_indirect $0 (type $i32_i32_i32_=>_none) + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $for-loop|076 + end + end + global.get $std/typedarray/forEachCallCount + i32.const 3 + i32.ne + br_if $folding-inner17 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.add + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i32.const 0 + i32.store offset=8 + i32.const 0 + global.set $std/typedarray/forEachCallCount + local.get $0 + i32.const 3 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.tee $0 + i32.store + local.get $0 + global.set $std/typedarray/forEachSelf + global.get $~lib/memory/__stack_pointer + i32.const 7152 + i32.store offset=4 + local.get $0 + i32.const 0 + i32.const 7152 + i32.const 0 + call $~lib/array/Array#__get + i32.const 255 + i32.and + call $~lib/typedarray/Uint8ClampedArray#__set + global.get $~lib/memory/__stack_pointer + i32.const 7152 + i32.store offset=4 + local.get $0 + i32.const 1 + i32.const 7152 + i32.const 1 + call $~lib/array/Array#__get + i32.const 255 + i32.and + call $~lib/typedarray/Uint8ClampedArray#__set + global.get $~lib/memory/__stack_pointer + i32.const 7152 + i32.store offset=4 + local.get $0 + i32.const 2 + i32.const 7152 + i32.const 2 + call $~lib/array/Array#__get + i32.const 255 + i32.and + call $~lib/typedarray/Uint8ClampedArray#__set + global.get $~lib/memory/__stack_pointer + i32.const 7264 + i32.store offset=8 + i32.const 0 + local.set $2 + local.get $0 + i32.load offset=4 + local.set $1 + local.get $0 + i32.load offset=8 + local.set $6 + loop $for-loop|080 local.get $2 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.set $0 - loop $for-loop|0267 + local.get $6 + i32.lt_s + if + local.get $1 + local.get $2 + i32.add + i32.load8_u + i32.const 3 + global.set $~argumentsLength + local.get $2 local.get $0 - local.get $10 - i32.gt_s - if - local.get $10 - i32.const 2 - i32.shl - local.get $1 - i32.add - f32.load - local.set $5 - i32.const 3 - global.set $~argumentsLength - i32.const 0 - local.get $5 - local.get $10 - local.get $2 - i32.const 7024 - i32.load - call_indirect $0 (type $f32_i32_i32_=>_i32) - i32.eqz - br_if $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0266 - drop - local.get $10 - i32.const 1 - i32.add - local.set $10 - br $for-loop|0267 - end + i32.const 7264 + i32.load + call_indirect $0 (type $i32_i32_i32_=>_none) + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $for-loop|080 end - i32.const 1 end - br_if $folding-inner13 + global.get $std/typedarray/forEachCallCount + i32.const 3 + i32.ne + br_if $folding-inner17 global.get $~lib/memory/__stack_pointer - i32.const 8 + i32.const 12 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - i32.const 8 + i32.const 12 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 i64.store local.get $0 + i32.const 0 + i32.store offset=8 + i32.const 0 + global.set $std/typedarray/forEachCallCount + local.get $0 i32.const 3 - call $~lib/typedarray/Float64Array#constructor - local.tee $2 + call $~lib/typedarray/Int16Array#constructor + local.tee $0 i32.store - local.get $2 - i32.const 0 - f64.const 2 - call $~lib/typedarray/Float64Array#__set - local.get $2 - i32.const 1 - f64.const 4 - call $~lib/typedarray/Float64Array#__set - local.get $2 - i32.const 2 - f64.const 6 - call $~lib/typedarray/Float64Array#__set + local.get $0 + global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer - i32.const 7056 + i32.const 7152 i32.store offset=4 + local.get $0 i32.const 0 - local.set $10 - block $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) - local.get $2 - i32.load offset=4 - local.set $1 - local.get $2 - i32.load offset=8 - i32.const 3 - i32.shr_u - local.set $0 - loop $for-loop|0269 - local.get $0 - local.get $10 - i32.gt_s - if - local.get $10 - i32.const 3 - i32.shl - local.get $1 - i32.add - f64.load - local.set $7 - i32.const 3 - global.set $~argumentsLength - i32.const 0 - local.get $7 - local.get $10 - local.get $2 - i32.const 7056 - i32.load - call_indirect $0 (type $f64_i32_i32_=>_i32) - i32.eqz - br_if $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0 - drop - local.get $10 - i32.const 1 - i32.add - local.set $10 - br $for-loop|0269 - end - end - i32.const 1 - end - i32.eqz - br_if $folding-inner12 + i32.const 7152 + i32.const 0 + call $~lib/array/Array#__get + i32.extend16_s + call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer - i32.const 7088 + i32.const 7152 i32.store offset=4 + local.get $0 + i32.const 1 + i32.const 7152 + i32.const 1 + call $~lib/array/Array#__get + i32.extend16_s + call $~lib/typedarray/Int16Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 7152 + i32.store offset=4 + local.get $0 + i32.const 2 + i32.const 7152 + i32.const 2 + call $~lib/array/Array#__get + i32.extend16_s + call $~lib/typedarray/Int16Array#__set + global.get $~lib/memory/__stack_pointer + i32.const 7296 + i32.store offset=8 i32.const 0 - local.set $10 - block $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0271 (result i32) - local.get $2 - i32.load offset=4 - local.set $1 + local.set $2 + local.get $0 + i32.load offset=4 + local.set $1 + local.get $0 + i32.load offset=8 + i32.const 1 + i32.shr_u + local.set $6 + loop $for-loop|083134 local.get $2 - i32.load offset=8 - i32.const 3 - i32.shr_u - local.set $0 - loop $for-loop|0272 + local.get $6 + i32.lt_s + if + local.get $2 + i32.const 1 + i32.shl + local.get $1 + i32.add + i32.load16_s + i32.const 3 + global.set $~argumentsLength + local.get $2 local.get $0 - local.get $10 - i32.gt_s - if - local.get $10 - i32.const 3 - i32.shl - local.get $1 - i32.add - f64.load - local.set $7 - i32.const 3 - global.set $~argumentsLength - i32.const 0 - local.get $7 - local.get $10 - local.get $2 - i32.const 7088 - i32.load - call_indirect $0 (type $f64_i32_i32_=>_i32) - i32.eqz - br_if $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0271 - drop - local.get $10 - i32.const 1 - i32.add - local.set $10 - br $for-loop|0272 - end + i32.const 7296 + i32.load + call_indirect $0 (type $i32_i32_i32_=>_none) + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $for-loop|083134 end - i32.const 1 end - br_if $folding-inner13 + global.get $std/typedarray/forEachCallCount + i32.const 3 + i32.ne + br_if $folding-inner17 global.get $~lib/memory/__stack_pointer - i32.const 8 + i32.const 12 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -57708,7 +55991,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -57720,79 +56003,86 @@ global.set $std/typedarray/forEachCallCount local.get $0 i32.const 3 - call $~lib/typedarray/Int8Array#constructor - local.tee $3 + call $~lib/typedarray/Uint16Array#constructor + local.tee $0 i32.store - local.get $3 + local.get $0 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $0 i32.const 0 i32.const 7152 i32.const 0 call $~lib/array/Array#__get - i32.extend8_s - call $~lib/typedarray/Int8Array#__set + i32.const 65535 + i32.and + call $~lib/typedarray/Uint16Array#__set global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $0 i32.const 1 i32.const 7152 i32.const 1 call $~lib/array/Array#__get - i32.extend8_s - call $~lib/typedarray/Int8Array#__set + i32.const 65535 + i32.and + call $~lib/typedarray/Uint16Array#__set global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $0 i32.const 2 i32.const 7152 i32.const 2 call $~lib/array/Array#__get - i32.extend8_s - call $~lib/typedarray/Int8Array#__set + i32.const 65535 + i32.and + call $~lib/typedarray/Uint16Array#__set global.get $~lib/memory/__stack_pointer - i32.const 7200 + i32.const 7328 i32.store offset=8 i32.const 0 - local.set $10 - local.get $3 - i32.load offset=4 local.set $2 - local.get $3 - i32.load offset=8 + local.get $0 + i32.load offset=4 local.set $1 - loop $for-loop|054274 - local.get $1 - local.get $10 - i32.gt_s + local.get $0 + i32.load offset=8 + i32.const 1 + i32.shr_u + local.set $6 + loop $for-loop|086 + local.get $2 + local.get $6 + i32.lt_s if local.get $2 - local.get $10 + i32.const 1 + i32.shl + local.get $1 i32.add - i32.load8_s + i32.load16_u i32.const 3 global.set $~argumentsLength - local.get $10 - local.get $3 - i32.const 7200 + local.get $2 + local.get $0 + i32.const 7328 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $10 + local.get $2 i32.const 1 i32.add - local.set $10 - br $for-loop|054274 + local.set $2 + br $for-loop|086 end end global.get $std/typedarray/forEachCallCount i32.const 3 i32.ne - br_if $folding-inner14 + br_if $folding-inner17 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add @@ -57804,7 +56094,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -57816,82 +56106,80 @@ global.set $std/typedarray/forEachCallCount local.get $0 i32.const 3 - call $~lib/typedarray/Uint8Array#constructor - local.tee $3 + call $~lib/typedarray/Int32Array#constructor + local.tee $0 i32.store - local.get $3 + local.get $0 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $0 i32.const 0 i32.const 7152 i32.const 0 call $~lib/array/Array#__get - i32.const 255 - i32.and - call $~lib/typedarray/Uint8Array#__set + call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $0 i32.const 1 i32.const 7152 i32.const 1 call $~lib/array/Array#__get - i32.const 255 - i32.and - call $~lib/typedarray/Uint8Array#__set + call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $0 i32.const 2 i32.const 7152 i32.const 2 call $~lib/array/Array#__get - i32.const 255 - i32.and - call $~lib/typedarray/Uint8Array#__set + call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer - i32.const 7232 + i32.const 7360 i32.store offset=8 i32.const 0 - local.set $10 - local.get $3 - i32.load offset=4 local.set $2 - local.get $3 - i32.load offset=8 + local.get $0 + i32.load offset=4 local.set $1 - loop $for-loop|056 - local.get $1 - local.get $10 - i32.gt_s + local.get $0 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.set $6 + loop $for-loop|089 + local.get $2 + local.get $6 + i32.lt_s if local.get $2 - local.get $10 + i32.const 2 + i32.shl + local.get $1 i32.add - i32.load8_u + i32.load i32.const 3 global.set $~argumentsLength - local.get $10 - local.get $3 - i32.const 7232 + local.get $2 + local.get $0 + i32.const 7360 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $10 + local.get $2 i32.const 1 i32.add - local.set $10 - br $for-loop|056 + local.set $2 + br $for-loop|089 end end global.get $std/typedarray/forEachCallCount i32.const 3 i32.ne - br_if $folding-inner14 + br_if $folding-inner17 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add @@ -57903,7 +56191,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -57915,82 +56203,80 @@ global.set $std/typedarray/forEachCallCount local.get $0 i32.const 3 - call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $3 + call $~lib/typedarray/Uint32Array#constructor + local.tee $0 i32.store - local.get $3 + local.get $0 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $0 i32.const 0 i32.const 7152 i32.const 0 call $~lib/array/Array#__get - i32.const 255 - i32.and - call $~lib/typedarray/Uint8ClampedArray#__set + call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $0 i32.const 1 i32.const 7152 i32.const 1 call $~lib/array/Array#__get - i32.const 255 - i32.and - call $~lib/typedarray/Uint8ClampedArray#__set + call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $0 i32.const 2 i32.const 7152 i32.const 2 call $~lib/array/Array#__get - i32.const 255 - i32.and - call $~lib/typedarray/Uint8ClampedArray#__set + call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer - i32.const 7264 + i32.const 7392 i32.store offset=8 i32.const 0 - local.set $10 - local.get $3 - i32.load offset=4 local.set $2 - local.get $3 - i32.load offset=8 + local.get $0 + i32.load offset=4 local.set $1 - loop $for-loop|059 - local.get $1 - local.get $10 - i32.gt_s + local.get $0 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.set $6 + loop $for-loop|092 + local.get $2 + local.get $6 + i32.lt_s if local.get $2 - local.get $10 + i32.const 2 + i32.shl + local.get $1 i32.add - i32.load8_u + i32.load i32.const 3 global.set $~argumentsLength - local.get $10 - local.get $3 - i32.const 7264 + local.get $2 + local.get $0 + i32.const 7392 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $10 + local.get $2 i32.const 1 i32.add - local.set $10 - br $for-loop|059 + local.set $2 + br $for-loop|092 end end global.get $std/typedarray/forEachCallCount i32.const 3 i32.ne - br_if $folding-inner14 + br_if $folding-inner17 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add @@ -58002,7 +56288,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -58014,83 +56300,83 @@ global.set $std/typedarray/forEachCallCount local.get $0 i32.const 3 - call $~lib/typedarray/Int16Array#constructor - local.tee $3 + call $~lib/typedarray/Int64Array#constructor + local.tee $0 i32.store - local.get $3 + local.get $0 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $0 i32.const 0 i32.const 7152 i32.const 0 call $~lib/array/Array#__get - i32.extend16_s - call $~lib/typedarray/Int16Array#__set + i64.extend_i32_s + call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $0 i32.const 1 i32.const 7152 i32.const 1 call $~lib/array/Array#__get - i32.extend16_s - call $~lib/typedarray/Int16Array#__set + i64.extend_i32_s + call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $0 i32.const 2 i32.const 7152 i32.const 2 call $~lib/array/Array#__get - i32.extend16_s - call $~lib/typedarray/Int16Array#__set + i64.extend_i32_s + call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer - i32.const 7296 + i32.const 7424 i32.store offset=8 i32.const 0 - local.set $10 - local.get $3 - i32.load offset=4 local.set $2 - local.get $3 + local.get $0 + i32.load offset=4 + local.set $1 + local.get $0 i32.load offset=8 - i32.const 1 + i32.const 3 i32.shr_u - local.set $1 - loop $for-loop|061278 - local.get $1 - local.get $10 - i32.gt_s + local.set $6 + loop $for-loop|095135 + local.get $2 + local.get $6 + i32.lt_s if - local.get $10 - i32.const 1 - i32.shl local.get $2 + i32.const 3 + i32.shl + local.get $1 i32.add - i32.load16_s + i64.load i32.const 3 global.set $~argumentsLength - local.get $10 - local.get $3 - i32.const 7296 + local.get $2 + local.get $0 + i32.const 7424 i32.load - call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $10 + call_indirect $0 (type $i64_i32_i32_=>_none) + local.get $2 i32.const 1 i32.add - local.set $10 - br $for-loop|061278 + local.set $2 + br $for-loop|095135 end end global.get $std/typedarray/forEachCallCount i32.const 3 i32.ne - br_if $folding-inner14 + br_if $folding-inner17 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add @@ -58102,7 +56388,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -58114,86 +56400,83 @@ global.set $std/typedarray/forEachCallCount local.get $0 i32.const 3 - call $~lib/typedarray/Uint16Array#constructor - local.tee $3 + call $~lib/typedarray/Uint64Array#constructor + local.tee $0 i32.store - local.get $3 + local.get $0 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $0 i32.const 0 i32.const 7152 i32.const 0 call $~lib/array/Array#__get - i32.const 65535 - i32.and - call $~lib/typedarray/Uint16Array#__set + i64.extend_i32_s + call $~lib/typedarray/Uint64Array#__set global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $0 i32.const 1 i32.const 7152 i32.const 1 call $~lib/array/Array#__get - i32.const 65535 - i32.and - call $~lib/typedarray/Uint16Array#__set + i64.extend_i32_s + call $~lib/typedarray/Uint64Array#__set global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $0 i32.const 2 i32.const 7152 i32.const 2 call $~lib/array/Array#__get - i32.const 65535 - i32.and - call $~lib/typedarray/Uint16Array#__set + i64.extend_i32_s + call $~lib/typedarray/Uint64Array#__set global.get $~lib/memory/__stack_pointer - i32.const 7328 + i32.const 7456 i32.store offset=8 i32.const 0 - local.set $10 - local.get $3 - i32.load offset=4 local.set $2 - local.get $3 + local.get $0 + i32.load offset=4 + local.set $1 + local.get $0 i32.load offset=8 - i32.const 1 + i32.const 3 i32.shr_u - local.set $1 - loop $for-loop|063280 - local.get $1 - local.get $10 - i32.gt_s + local.set $6 + loop $for-loop|098 + local.get $2 + local.get $6 + i32.lt_s if - local.get $10 - i32.const 1 - i32.shl local.get $2 + i32.const 3 + i32.shl + local.get $1 i32.add - i32.load16_u + i64.load i32.const 3 global.set $~argumentsLength - local.get $10 - local.get $3 - i32.const 7328 + local.get $2 + local.get $0 + i32.const 7456 i32.load - call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $10 + call_indirect $0 (type $i64_i32_i32_=>_none) + local.get $2 i32.const 1 i32.add - local.set $10 - br $for-loop|063280 + local.set $2 + br $for-loop|098 end end global.get $std/typedarray/forEachCallCount i32.const 3 i32.ne - br_if $folding-inner14 + br_if $folding-inner17 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add @@ -58205,7 +56488,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -58217,80 +56500,83 @@ global.set $std/typedarray/forEachCallCount local.get $0 i32.const 3 - call $~lib/typedarray/Int32Array#constructor - local.tee $3 + call $~lib/typedarray/Float32Array#constructor + local.tee $0 i32.store - local.get $3 + local.get $0 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $0 i32.const 0 i32.const 7152 i32.const 0 call $~lib/array/Array#__get - call $~lib/typedarray/Int32Array#__set + f32.convert_i32_s + call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $0 i32.const 1 i32.const 7152 i32.const 1 call $~lib/array/Array#__get - call $~lib/typedarray/Int32Array#__set + f32.convert_i32_s + call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $0 i32.const 2 i32.const 7152 i32.const 2 call $~lib/array/Array#__get - call $~lib/typedarray/Int32Array#__set + f32.convert_i32_s + call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer - i32.const 7360 + i32.const 7488 i32.store offset=8 i32.const 0 - local.set $10 - local.get $3 - i32.load offset=4 local.set $2 - local.get $3 + local.get $0 + i32.load offset=4 + local.set $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 - loop $for-loop|065 - local.get $1 - local.get $10 - i32.gt_s + local.set $6 + loop $for-loop|0101136 + local.get $2 + local.get $6 + i32.lt_s if - local.get $10 + local.get $2 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add - i32.load + f32.load i32.const 3 global.set $~argumentsLength - local.get $10 - local.get $3 - i32.const 7360 + local.get $2 + local.get $0 + i32.const 7488 i32.load - call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $10 + call_indirect $0 (type $f32_i32_i32_=>_none) + local.get $2 i32.const 1 i32.add - local.set $10 - br $for-loop|065 + local.set $2 + br $for-loop|0101136 end end global.get $std/typedarray/forEachCallCount i32.const 3 i32.ne - br_if $folding-inner14 + br_if $folding-inner17 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add @@ -58302,7 +56588,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -58314,486 +56600,990 @@ global.set $std/typedarray/forEachCallCount local.get $0 i32.const 3 - call $~lib/typedarray/Uint32Array#constructor - local.tee $3 + call $~lib/typedarray/Float64Array#constructor + local.tee $0 i32.store - local.get $3 + local.get $0 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $0 i32.const 0 i32.const 7152 i32.const 0 call $~lib/array/Array#__get - call $~lib/typedarray/Uint32Array#__set + f64.convert_i32_s + call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $0 i32.const 1 i32.const 7152 i32.const 1 call $~lib/array/Array#__get - call $~lib/typedarray/Uint32Array#__set + f64.convert_i32_s + call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $3 + local.get $0 i32.const 2 i32.const 7152 i32.const 2 call $~lib/array/Array#__get - call $~lib/typedarray/Uint32Array#__set + f64.convert_i32_s + call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer - i32.const 7392 + i32.const 7520 i32.store offset=8 i32.const 0 - local.set $10 - local.get $3 - i32.load offset=4 local.set $2 - local.get $3 + local.get $0 + i32.load offset=4 + local.set $1 + local.get $0 i32.load offset=8 - i32.const 2 + i32.const 3 i32.shr_u - local.set $1 - loop $for-loop|067 - local.get $1 - local.get $10 - i32.gt_s + local.set $6 + loop $for-loop|0104 + local.get $2 + local.get $6 + i32.lt_s if - local.get $10 - i32.const 2 - i32.shl local.get $2 + i32.const 3 + i32.shl + local.get $1 i32.add - i32.load + f64.load i32.const 3 global.set $~argumentsLength - local.get $10 - local.get $3 - i32.const 7392 + local.get $2 + local.get $0 + i32.const 7520 i32.load - call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $10 + call_indirect $0 (type $f64_i32_i32_=>_none) + local.get $2 i32.const 1 i32.add - local.set $10 - br $for-loop|067 + local.set $2 + br $for-loop|0104 end end global.get $std/typedarray/forEachCallCount i32.const 3 i32.ne - br_if $folding-inner14 + br_if $folding-inner17 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer - i32.const 12 + i32.const 20 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 i64.store local.get $0 + i64.const 0 + i64.store offset=8 + local.get $0 i32.const 0 - i32.store offset=8 - i32.const 0 - global.set $std/typedarray/forEachCallCount + i32.store offset=16 local.get $0 - i32.const 3 - call $~lib/typedarray/Int64Array#constructor - local.tee $2 + i32.const 7616 i32.store - local.get $2 - global.set $std/typedarray/forEachSelf - global.get $~lib/memory/__stack_pointer - i32.const 7152 + local.get $0 + i32.const 7628 + i32.load + local.tee $0 + call $~lib/typedarray/Int8Array#constructor + local.tee $2 i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $0 + call $~lib/typedarray/Int8Array#constructor + local.tee $6 + i32.store offset=8 + loop $for-loop|0106 + local.get $0 + local.get $1 + i32.gt_s + if + local.get $2 + local.get $1 + i32.const 7616 + local.get $1 + call $~lib/array/Array#__get + i32.extend8_s + call $~lib/typedarray/Int8Array#__set + local.get $6 + local.get $1 + i32.const 7616 + local.get $1 + call $~lib/array/Array#__get + i32.extend8_s + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $for-loop|0106 + end + end local.get $2 + call $~lib/typedarray/Int8Array#reverse + drop i32.const 0 - i32.const 7152 - i32.const 0 - call $~lib/array/Array#__get - i64.extend_i32_s - call $~lib/typedarray/Int64Array#__set + local.set $1 + loop $for-loop|1 + local.get $0 + local.get $1 + i32.gt_s + if + local.get $2 + local.get $1 + call $~lib/typedarray/Int8Array#__get + i32.const 7616 + local.get $0 + i32.const 1 + i32.sub + local.get $1 + i32.sub + call $~lib/array/Array#__get + i32.extend8_s + i32.ne + br_if $folding-inner18 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $for-loop|1 + end + end global.get $~lib/memory/__stack_pointer - i32.const 7152 - i32.store offset=4 - local.get $2 - i32.const 1 - i32.const 7152 + local.get $6 + i32.const 4 + i32.const 8 + call $~lib/typedarray/Int8Array#subarray + local.set $1 + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store offset=12 + local.get $1 + call $~lib/typedarray/Int8Array#reverse + local.tee $0 + i32.store offset=16 + local.get $0 + i32.const 0 + call $~lib/typedarray/Int8Array#__get + i32.const 8 + i32.ne + br_if $folding-inner19 + local.get $0 i32.const 1 - call $~lib/array/Array#__get - i64.extend_i32_s - call $~lib/typedarray/Int64Array#__set + call $~lib/typedarray/Int8Array#__get + i32.const 7 + i32.ne + br_if $folding-inner20 + local.get $0 + i32.const 2 + call $~lib/typedarray/Int8Array#__get + i32.const 6 + i32.ne + br_if $folding-inner21 + local.get $0 + i32.const 3 + call $~lib/typedarray/Int8Array#__get + i32.const 5 + i32.ne + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer - i32.const 7152 + i32.const 20 + i32.add + global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 + global.get $~lib/memory/__stack_pointer + i32.const 20 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i64.const 0 + i64.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=16 + local.get $0 + i32.const 7616 + i32.store + local.get $0 + i32.const 7628 + i32.load + local.tee $0 + call $~lib/typedarray/Uint8Array#constructor + local.tee $2 i32.store offset=4 - local.get $2 - i32.const 2 - i32.const 7152 - i32.const 2 - call $~lib/array/Array#__get - i64.extend_i32_s - call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer - i32.const 7424 + local.get $0 + call $~lib/typedarray/Uint8Array#constructor + local.tee $6 i32.store offset=8 - i32.const 0 - local.set $10 + loop $for-loop|020137 + local.get $0 + local.get $1 + i32.gt_s + if + local.get $2 + local.get $1 + i32.const 7616 + local.get $1 + call $~lib/array/Array#__get + i32.const 255 + i32.and + call $~lib/typedarray/Uint8Array#__set + local.get $6 + local.get $1 + i32.const 7616 + local.get $1 + call $~lib/array/Array#__get + i32.const 255 + i32.and + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $for-loop|020137 + end + end local.get $2 - i32.load offset=4 + call $~lib/typedarray/Int8Array#reverse + drop + i32.const 0 local.set $1 - local.get $2 - i32.load offset=8 + loop $for-loop|121 + local.get $0 + local.get $1 + i32.gt_s + if + local.get $2 + local.get $1 + call $~lib/typedarray/Uint8Array#__get + i32.const 7616 + local.get $0 + i32.const 1 + i32.sub + local.get $1 + i32.sub + call $~lib/array/Array#__get + i32.const 255 + i32.and + i32.ne + br_if $folding-inner18 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $for-loop|121 + end + end + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.const 8 + call $~lib/typedarray/Uint8Array#subarray + local.set $1 + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store offset=12 + local.get $1 + call $~lib/typedarray/Int8Array#reverse + local.tee $0 + i32.store offset=16 + local.get $0 + i32.const 0 + call $~lib/typedarray/Uint8Array#__get + i32.const 8 + i32.ne + br_if $folding-inner19 + local.get $0 + i32.const 1 + call $~lib/typedarray/Uint8Array#__get + i32.const 7 + i32.ne + br_if $folding-inner20 + local.get $0 + i32.const 2 + call $~lib/typedarray/Uint8Array#__get + i32.const 6 + i32.ne + br_if $folding-inner21 + local.get $0 i32.const 3 - i32.shr_u - local.set $0 - loop $for-loop|069 + call $~lib/typedarray/Uint8Array#__get + i32.const 5 + i32.ne + br_if $folding-inner22 + global.get $~lib/memory/__stack_pointer + i32.const 20 + i32.add + global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 + global.get $~lib/memory/__stack_pointer + i32.const 20 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16628 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i64.const 0 + i64.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=16 + local.get $0 + i32.const 7616 + i32.store + local.get $0 + i32.const 7628 + i32.load + local.tee $0 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.tee $2 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $0 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.tee $6 + i32.store offset=8 + loop $for-loop|024108 local.get $0 - local.get $10 + local.get $1 i32.gt_s if - local.get $10 - i32.const 3 - i32.shl + local.get $2 + local.get $1 + i32.const 7616 + local.get $1 + call $~lib/array/Array#__get + i32.const 255 + i32.and + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $6 + local.get $1 + i32.const 7616 + local.get $1 + call $~lib/array/Array#__get + i32.const 255 + i32.and + call $~lib/typedarray/Uint8ClampedArray#__set local.get $1 + i32.const 1 i32.add - i64.load - i32.const 3 - global.set $~argumentsLength - local.get $10 + local.set $1 + br $for-loop|024108 + end + end + local.get $2 + call $~lib/typedarray/Int8Array#reverse + drop + i32.const 0 + local.set $1 + loop $for-loop|125 + local.get $0 + local.get $1 + i32.gt_s + if local.get $2 - i32.const 7424 - i32.load - call_indirect $0 (type $i64_i32_i32_=>_none) - local.get $10 + local.get $1 + call $~lib/typedarray/Uint8ClampedArray#__get + i32.const 7616 + local.get $0 + i32.const 1 + i32.sub + local.get $1 + i32.sub + call $~lib/array/Array#__get + i32.const 255 + i32.and + i32.ne + br_if $folding-inner18 + local.get $1 i32.const 1 i32.add - local.set $10 - br $for-loop|069 + local.set $1 + br $for-loop|125 end end - global.get $std/typedarray/forEachCallCount + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.const 8 + call $~lib/typedarray/Uint8ClampedArray#subarray + local.set $1 + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store offset=12 + local.get $1 + call $~lib/typedarray/Int8Array#reverse + local.tee $0 + i32.store offset=16 + local.get $0 + i32.const 0 + call $~lib/typedarray/Uint8ClampedArray#__get + i32.const 8 + i32.ne + br_if $folding-inner19 + local.get $0 + i32.const 1 + call $~lib/typedarray/Uint8ClampedArray#__get + i32.const 7 + i32.ne + br_if $folding-inner20 + local.get $0 + i32.const 2 + call $~lib/typedarray/Uint8ClampedArray#__get + i32.const 6 + i32.ne + br_if $folding-inner21 + local.get $0 i32.const 3 + call $~lib/typedarray/Uint8ClampedArray#__get + i32.const 5 i32.ne - br_if $folding-inner14 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer - i32.const 12 + i32.const 20 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer - i32.const 12 + i32.const 20 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 i64.store local.get $0 + i64.const 0 + i64.store offset=8 + local.get $0 i32.const 0 - i32.store offset=8 - i32.const 0 - global.set $std/typedarray/forEachCallCount + i32.store offset=16 local.get $0 - i32.const 3 - call $~lib/typedarray/Uint64Array#constructor - local.tee $2 + i32.const 7616 i32.store - local.get $2 - global.set $std/typedarray/forEachSelf - global.get $~lib/memory/__stack_pointer - i32.const 7152 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.const 7152 - i32.const 0 - call $~lib/array/Array#__get - i64.extend_i32_s - call $~lib/typedarray/Uint64Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 7152 - i32.store offset=4 - local.get $2 - i32.const 1 - i32.const 7152 - i32.const 1 - call $~lib/array/Array#__get - i64.extend_i32_s - call $~lib/typedarray/Uint64Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 7152 + local.get $0 + i32.const 7628 + i32.load + local.tee $0 + call $~lib/typedarray/Int16Array#constructor + local.tee $2 i32.store offset=4 - local.get $2 - i32.const 2 - i32.const 7152 - i32.const 2 - call $~lib/array/Array#__get - i64.extend_i32_s - call $~lib/typedarray/Uint64Array#__set global.get $~lib/memory/__stack_pointer - i32.const 7456 + local.get $0 + call $~lib/typedarray/Int16Array#constructor + local.tee $6 i32.store offset=8 - i32.const 0 - local.set $10 - local.get $2 - i32.load offset=4 - local.set $1 - local.get $2 - i32.load offset=8 - i32.const 3 - i32.shr_u - local.set $0 - loop $for-loop|071285 + loop $for-loop|028138 local.get $0 - local.get $10 + local.get $1 i32.gt_s if - local.get $10 - i32.const 3 - i32.shl + local.get $2 + local.get $1 + i32.const 7616 + local.get $1 + call $~lib/array/Array#__get + i32.extend16_s + call $~lib/typedarray/Int16Array#__set + local.get $6 + local.get $1 + i32.const 7616 + local.get $1 + call $~lib/array/Array#__get + i32.extend16_s + call $~lib/typedarray/Int16Array#__set local.get $1 + i32.const 1 i32.add - i64.load - i32.const 3 - global.set $~argumentsLength - local.get $10 + local.set $1 + br $for-loop|028138 + end + end + local.get $2 + call $~lib/typedarray/Int16Array#reverse + drop + i32.const 0 + local.set $1 + loop $for-loop|129 + local.get $0 + local.get $1 + i32.gt_s + if local.get $2 - i32.const 7456 - i32.load - call_indirect $0 (type $i64_i32_i32_=>_none) - local.get $10 + local.get $1 + call $~lib/typedarray/Int16Array#__get + i32.const 7616 + local.get $0 + i32.const 1 + i32.sub + local.get $1 + i32.sub + call $~lib/array/Array#__get + i32.extend16_s + i32.ne + br_if $folding-inner18 + local.get $1 i32.const 1 i32.add - local.set $10 - br $for-loop|071285 + local.set $1 + br $for-loop|129 end end - global.get $std/typedarray/forEachCallCount + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.const 8 + call $~lib/typedarray/Int16Array#subarray + local.set $1 + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store offset=12 + local.get $1 + call $~lib/typedarray/Int16Array#reverse + local.tee $0 + i32.store offset=16 + local.get $0 + i32.const 0 + call $~lib/typedarray/Int16Array#__get + i32.const 8 + i32.ne + br_if $folding-inner19 + local.get $0 + i32.const 1 + call $~lib/typedarray/Int16Array#__get + i32.const 7 + i32.ne + br_if $folding-inner20 + local.get $0 + i32.const 2 + call $~lib/typedarray/Int16Array#__get + i32.const 6 + i32.ne + br_if $folding-inner21 + local.get $0 i32.const 3 + call $~lib/typedarray/Int16Array#__get + i32.const 5 i32.ne - br_if $folding-inner14 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer - i32.const 12 + i32.const 20 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer - i32.const 12 + i32.const 20 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 i64.store local.get $0 + i64.const 0 + i64.store offset=8 + local.get $0 i32.const 0 - i32.store offset=8 - i32.const 0 - global.set $std/typedarray/forEachCallCount + i32.store offset=16 local.get $0 - i32.const 3 - call $~lib/typedarray/Float32Array#constructor - local.tee $2 + i32.const 7616 i32.store - local.get $2 - global.set $std/typedarray/forEachSelf - global.get $~lib/memory/__stack_pointer - i32.const 7152 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.const 7152 - i32.const 0 - call $~lib/array/Array#__get - f32.convert_i32_s - call $~lib/typedarray/Float32Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 7152 - i32.store offset=4 - local.get $2 - i32.const 1 - i32.const 7152 - i32.const 1 - call $~lib/array/Array#__get - f32.convert_i32_s - call $~lib/typedarray/Float32Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 7152 + local.get $0 + i32.const 7628 + i32.load + local.tee $0 + call $~lib/typedarray/Uint16Array#constructor + local.tee $2 i32.store offset=4 - local.get $2 - i32.const 2 - i32.const 7152 - i32.const 2 - call $~lib/array/Array#__get - f32.convert_i32_s - call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer - i32.const 7488 + local.get $0 + call $~lib/typedarray/Uint16Array#constructor + local.tee $6 i32.store offset=8 - i32.const 0 - local.set $10 - local.get $2 - i32.load offset=4 - local.set $1 - local.get $2 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.set $0 - loop $for-loop|073287 + loop $for-loop|032 local.get $0 - local.get $10 + local.get $1 i32.gt_s if - local.get $10 - i32.const 2 - i32.shl + local.get $2 + local.get $1 + i32.const 7616 + local.get $1 + call $~lib/array/Array#__get + i32.const 65535 + i32.and + call $~lib/typedarray/Uint16Array#__set + local.get $6 + local.get $1 + i32.const 7616 + local.get $1 + call $~lib/array/Array#__get + i32.const 65535 + i32.and + call $~lib/typedarray/Uint16Array#__set local.get $1 + i32.const 1 i32.add - f32.load - i32.const 3 - global.set $~argumentsLength - local.get $10 + local.set $1 + br $for-loop|032 + end + end + local.get $2 + call $~lib/typedarray/Int16Array#reverse + drop + i32.const 0 + local.set $1 + loop $for-loop|133 + local.get $0 + local.get $1 + i32.gt_s + if local.get $2 - i32.const 7488 - i32.load - call_indirect $0 (type $f32_i32_i32_=>_none) - local.get $10 + local.get $1 + call $~lib/typedarray/Uint16Array#__get + i32.const 7616 + local.get $0 + i32.const 1 + i32.sub + local.get $1 + i32.sub + call $~lib/array/Array#__get + i32.const 65535 + i32.and + i32.ne + br_if $folding-inner18 + local.get $1 i32.const 1 i32.add - local.set $10 - br $for-loop|073287 + local.set $1 + br $for-loop|133 end end - global.get $std/typedarray/forEachCallCount + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.const 8 + call $~lib/typedarray/Uint16Array#subarray + local.set $1 + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store offset=12 + local.get $1 + call $~lib/typedarray/Int16Array#reverse + local.tee $0 + i32.store offset=16 + local.get $0 + i32.const 0 + call $~lib/typedarray/Uint16Array#__get + i32.const 8 + i32.ne + br_if $folding-inner19 + local.get $0 + i32.const 1 + call $~lib/typedarray/Uint16Array#__get + i32.const 7 + i32.ne + br_if $folding-inner20 + local.get $0 + i32.const 2 + call $~lib/typedarray/Uint16Array#__get + i32.const 6 + i32.ne + br_if $folding-inner21 + local.get $0 i32.const 3 + call $~lib/typedarray/Uint16Array#__get + i32.const 5 i32.ne - br_if $folding-inner14 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer - i32.const 12 + i32.const 20 i32.add global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer - i32.const 12 + i32.const 20 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 i64.store local.get $0 + i64.const 0 + i64.store offset=8 + local.get $0 i32.const 0 - i32.store offset=8 - i32.const 0 - global.set $std/typedarray/forEachCallCount + i32.store offset=16 local.get $0 - i32.const 3 - call $~lib/typedarray/Float64Array#constructor - local.tee $2 + i32.const 7616 i32.store - local.get $2 - global.set $std/typedarray/forEachSelf - global.get $~lib/memory/__stack_pointer - i32.const 7152 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.const 7152 - i32.const 0 - call $~lib/array/Array#__get - f64.convert_i32_s - call $~lib/typedarray/Float64Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 7152 - i32.store offset=4 - local.get $2 - i32.const 1 - i32.const 7152 - i32.const 1 - call $~lib/array/Array#__get - f64.convert_i32_s - call $~lib/typedarray/Float64Array#__set - global.get $~lib/memory/__stack_pointer - i32.const 7152 + local.get $0 + i32.const 7628 + i32.load + local.tee $0 + call $~lib/typedarray/Int32Array#constructor + local.tee $2 i32.store offset=4 - local.get $2 - i32.const 2 - i32.const 7152 - i32.const 2 - call $~lib/array/Array#__get - f64.convert_i32_s - call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer - i32.const 7520 + local.get $0 + call $~lib/typedarray/Int32Array#constructor + local.tee $6 i32.store offset=8 + loop $for-loop|036 + local.get $0 + local.get $1 + i32.gt_s + if + local.get $2 + local.get $1 + i32.const 7616 + local.get $1 + call $~lib/array/Array#__get + call $~lib/typedarray/Int32Array#__set + local.get $6 + local.get $1 + i32.const 7616 + local.get $1 + call $~lib/array/Array#__get + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $for-loop|036 + end + end i32.const 0 - local.set $10 + local.set $1 local.get $2 i32.load offset=4 - local.set $1 + local.set $7 local.get $2 i32.load offset=8 - i32.const 3 + i32.const 2 i32.shr_u - local.set $0 - loop $for-loop|075 + local.tee $8 + i32.const 1 + i32.gt_u + if + local.get $8 + i32.const 1 + i32.shr_u + local.set $12 + local.get $8 + i32.const 1 + i32.sub + local.set $8 + loop $while-continue|0 + local.get $1 + local.get $12 + i32.lt_u + if + local.get $1 + i32.const 2 + i32.shl + local.get $7 + i32.add + local.tee $13 + i32.load + local.set $14 + local.get $13 + local.get $8 + local.get $1 + i32.sub + i32.const 2 + i32.shl + local.get $7 + i32.add + local.tee $13 + i32.load + i32.store + local.get $13 + local.get $14 + i32.store + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $while-continue|0 + end + end + end + i32.const 0 + local.set $1 + loop $for-loop|137 local.get $0 - local.get $10 + local.get $1 i32.gt_s if - local.get $10 - i32.const 3 - i32.shl - local.get $1 - i32.add - f64.load - i32.const 3 - global.set $~argumentsLength - local.get $10 local.get $2 - i32.const 7520 - i32.load - call_indirect $0 (type $f64_i32_i32_=>_none) - local.get $10 + local.get $1 + call $~lib/typedarray/Int32Array#__get + i32.const 7616 + local.get $0 + i32.const 1 + i32.sub + local.get $1 + i32.sub + call $~lib/array/Array#__get + i32.ne + br_if $folding-inner18 + local.get $1 i32.const 1 i32.add - local.set $10 - br $for-loop|075 + local.set $1 + br $for-loop|137 + end + end + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.const 4 + i32.const 8 + call $~lib/typedarray/Int32Array#subarray + local.set $1 + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store offset=12 + i32.const 0 + local.set $2 + local.get $1 + i32.load offset=4 + local.set $6 + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.tee $7 + i32.const 1 + i32.gt_u + if + local.get $7 + i32.const 1 + i32.shr_u + local.set $8 + local.get $7 + i32.const 1 + i32.sub + local.set $7 + loop $while-continue|0140 + local.get $2 + local.get $8 + i32.lt_u + if + local.get $2 + i32.const 2 + i32.shl + local.get $6 + i32.add + local.tee $12 + i32.load + local.set $13 + local.get $12 + local.get $7 + local.get $2 + i32.sub + i32.const 2 + i32.shl + local.get $6 + i32.add + local.tee $12 + i32.load + i32.store + local.get $12 + local.get $13 + i32.store + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $while-continue|0140 + end end end - global.get $std/typedarray/forEachCallCount + local.get $1 + i32.store offset=16 + local.get $1 + i32.const 0 + call $~lib/typedarray/Int32Array#__get + i32.const 8 + i32.ne + br_if $folding-inner19 + local.get $1 + i32.const 1 + call $~lib/typedarray/Int32Array#__get + i32.const 7 + i32.ne + br_if $folding-inner20 + local.get $1 + i32.const 2 + call $~lib/typedarray/Int32Array#__get + i32.const 6 + i32.ne + br_if $folding-inner21 + local.get $1 i32.const 3 + call $~lib/typedarray/Int32Array#__get + i32.const 5 i32.ne - br_if $folding-inner14 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer - i32.const 12 + i32.const 20 i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -58801,7 +57591,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -58818,114 +57608,217 @@ local.get $0 i32.const 7628 i32.load + local.tee $0 + call $~lib/typedarray/Uint32Array#constructor local.tee $2 - call $~lib/typedarray/Int8Array#constructor - local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 - call $~lib/typedarray/Int8Array#constructor - local.tee $0 + local.get $0 + call $~lib/typedarray/Uint32Array#constructor + local.tee $6 i32.store offset=8 - loop $for-loop|028 - local.get $2 - local.get $3 + loop $for-loop|040141 + local.get $0 + local.get $1 i32.gt_s if + local.get $2 local.get $1 - local.get $3 i32.const 7616 - local.get $3 + local.get $1 call $~lib/array/Array#__get - i32.extend8_s - call $~lib/typedarray/Int8Array#__set - local.get $0 - local.get $3 + call $~lib/typedarray/Uint32Array#__set + local.get $6 + local.get $1 i32.const 7616 - local.get $3 + local.get $1 call $~lib/array/Array#__get - i32.extend8_s - call $~lib/typedarray/Int8Array#__set - local.get $3 + call $~lib/typedarray/Uint32Array#__set + local.get $1 i32.const 1 i32.add - local.set $3 - br $for-loop|028 + local.set $1 + br $for-loop|040141 end end - local.get $1 - call $~lib/typedarray/Int8Array#reverse - drop i32.const 0 - local.set $3 - loop $for-loop|1 - local.get $2 - local.get $3 + local.set $1 + local.get $2 + i32.load offset=4 + local.set $7 + local.get $2 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.tee $8 + i32.const 1 + i32.gt_u + if + local.get $8 + i32.const 1 + i32.shr_u + local.set $12 + local.get $8 + i32.const 1 + i32.sub + local.set $8 + loop $while-continue|0143 + local.get $1 + local.get $12 + i32.lt_u + if + local.get $1 + i32.const 2 + i32.shl + local.get $7 + i32.add + local.tee $13 + i32.load + local.set $14 + local.get $13 + local.get $8 + local.get $1 + i32.sub + i32.const 2 + i32.shl + local.get $7 + i32.add + local.tee $13 + i32.load + i32.store + local.get $13 + local.get $14 + i32.store + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $while-continue|0143 + end + end + end + i32.const 0 + local.set $1 + loop $for-loop|141 + local.get $0 + local.get $1 i32.gt_s if + local.get $2 local.get $1 - local.get $3 - call $~lib/typedarray/Int8Array#__get + call $~lib/typedarray/Uint32Array#__get i32.const 7616 - local.get $2 + local.get $0 i32.const 1 i32.sub - local.get $3 + local.get $1 i32.sub call $~lib/array/Array#__get - i32.extend8_s i32.ne - br_if $folding-inner24 - local.get $3 + br_if $folding-inner18 + local.get $1 i32.const 1 i32.add - local.set $3 - br $for-loop|1 + local.set $1 + br $for-loop|141 end end global.get $~lib/memory/__stack_pointer - local.get $0 - i32.const 4 + local.get $6 i32.const 8 - call $~lib/typedarray/Int8Array#subarray - local.set $0 + call $~lib/typedarray/Uint32Array#subarray + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=12 - local.get $0 - call $~lib/typedarray/Int8Array#reverse - local.tee $0 + i32.const 0 + local.set $2 + local.get $1 + i32.load offset=4 + local.set $6 + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.tee $7 + i32.const 1 + i32.gt_u + if + local.get $7 + i32.const 1 + i32.shr_u + local.set $8 + local.get $7 + i32.const 1 + i32.sub + local.set $7 + loop $while-continue|0145 + local.get $2 + local.get $8 + i32.lt_u + if + local.get $2 + i32.const 2 + i32.shl + local.get $6 + i32.add + local.tee $12 + i32.load + local.set $13 + local.get $12 + local.get $7 + local.get $2 + i32.sub + i32.const 2 + i32.shl + local.get $6 + i32.add + local.tee $12 + i32.load + i32.store + local.get $12 + local.get $13 + i32.store + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $while-continue|0145 + end + end + end + local.get $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 0 - call $~lib/typedarray/Int8Array#__get + call $~lib/typedarray/Uint32Array#__get i32.const 8 i32.ne - br_if $folding-inner25 - local.get $0 + br_if $folding-inner19 + local.get $1 i32.const 1 - call $~lib/typedarray/Int8Array#__get + call $~lib/typedarray/Uint32Array#__get i32.const 7 i32.ne - br_if $folding-inner26 - local.get $0 + br_if $folding-inner20 + local.get $1 i32.const 2 - call $~lib/typedarray/Int8Array#__get + call $~lib/typedarray/Uint32Array#__get i32.const 6 i32.ne - br_if $folding-inner27 - local.get $0 + br_if $folding-inner21 + local.get $1 i32.const 3 - call $~lib/typedarray/Int8Array#__get + call $~lib/typedarray/Uint32Array#__get i32.const 5 i32.ne - br_if $folding-inner28 + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer i32.const 20 i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -58933,7 +57826,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -58950,116 +57843,220 @@ local.get $0 i32.const 7628 i32.load + local.tee $0 + call $~lib/typedarray/Int64Array#constructor local.tee $2 - call $~lib/typedarray/Uint8Array#constructor - local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 - call $~lib/typedarray/Uint8Array#constructor - local.tee $0 + local.get $0 + call $~lib/typedarray/Int64Array#constructor + local.tee $6 i32.store offset=8 - loop $for-loop|030 - local.get $2 - local.get $3 + loop $for-loop|044 + local.get $0 + local.get $1 i32.gt_s if + local.get $2 local.get $1 - local.get $3 i32.const 7616 - local.get $3 + local.get $1 call $~lib/array/Array#__get - i32.const 255 - i32.and - call $~lib/typedarray/Uint8Array#__set - local.get $0 - local.get $3 + i64.extend_i32_s + call $~lib/typedarray/Int64Array#__set + local.get $6 + local.get $1 i32.const 7616 - local.get $3 + local.get $1 call $~lib/array/Array#__get - i32.const 255 - i32.and - call $~lib/typedarray/Uint8Array#__set - local.get $3 + i64.extend_i32_s + call $~lib/typedarray/Int64Array#__set + local.get $1 i32.const 1 i32.add - local.set $3 - br $for-loop|030 + local.set $1 + br $for-loop|044 end end - local.get $1 - call $~lib/typedarray/Int8Array#reverse - drop i32.const 0 - local.set $3 - loop $for-loop|131 - local.get $2 - local.get $3 + local.set $1 + local.get $2 + i32.load offset=4 + local.set $7 + local.get $2 + i32.load offset=8 + i32.const 3 + i32.shr_u + local.tee $8 + i32.const 1 + i32.gt_u + if + local.get $8 + i32.const 1 + i32.shr_u + local.set $12 + local.get $8 + i32.const 1 + i32.sub + local.set $8 + loop $while-continue|0146 + local.get $1 + local.get $12 + i32.lt_u + if + local.get $1 + i32.const 3 + i32.shl + local.get $7 + i32.add + local.tee $13 + i64.load + local.set $3 + local.get $13 + local.get $8 + local.get $1 + i32.sub + i32.const 3 + i32.shl + local.get $7 + i32.add + local.tee $13 + i64.load + i64.store + local.get $13 + local.get $3 + i64.store + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $while-continue|0146 + end + end + end + i32.const 0 + local.set $1 + loop $for-loop|145 + local.get $0 + local.get $1 i32.gt_s if + local.get $2 local.get $1 - local.get $3 - call $~lib/typedarray/Uint8Array#__get + call $~lib/typedarray/Int64Array#__get i32.const 7616 - local.get $2 + local.get $0 i32.const 1 i32.sub - local.get $3 + local.get $1 i32.sub call $~lib/array/Array#__get - i32.const 255 - i32.and - i32.ne - br_if $folding-inner24 - local.get $3 + i64.extend_i32_s + i64.ne + br_if $folding-inner18 + local.get $1 i32.const 1 i32.add - local.set $3 - br $for-loop|131 + local.set $1 + br $for-loop|145 end end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $6 i32.const 8 - call $~lib/typedarray/Uint8Array#subarray - local.set $0 + call $~lib/typedarray/Int64Array#subarray + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=12 - local.get $0 - call $~lib/typedarray/Int8Array#reverse - local.tee $0 + i32.const 0 + local.set $2 + local.get $1 + i32.load offset=4 + local.set $6 + local.get $1 + i32.load offset=8 + i32.const 3 + i32.shr_u + local.tee $7 + i32.const 1 + i32.gt_u + if + local.get $7 + i32.const 1 + i32.shr_u + local.set $8 + local.get $7 + i32.const 1 + i32.sub + local.set $7 + loop $while-continue|0148 + local.get $2 + local.get $8 + i32.lt_u + if + local.get $2 + i32.const 3 + i32.shl + local.get $6 + i32.add + local.tee $12 + i64.load + local.set $3 + local.get $12 + local.get $7 + local.get $2 + i32.sub + i32.const 3 + i32.shl + local.get $6 + i32.add + local.tee $12 + i64.load + i64.store + local.get $12 + local.get $3 + i64.store + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $while-continue|0148 + end + end + end + local.get $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 0 - call $~lib/typedarray/Uint8Array#__get - i32.const 8 - i32.ne - br_if $folding-inner25 - local.get $0 + call $~lib/typedarray/Int64Array#__get + i64.const 8 + i64.ne + br_if $folding-inner19 + local.get $1 i32.const 1 - call $~lib/typedarray/Uint8Array#__get - i32.const 7 - i32.ne - br_if $folding-inner26 - local.get $0 + call $~lib/typedarray/Int64Array#__get + i64.const 7 + i64.ne + br_if $folding-inner20 + local.get $1 i32.const 2 - call $~lib/typedarray/Uint8Array#__get - i32.const 6 - i32.ne - br_if $folding-inner27 - local.get $0 + call $~lib/typedarray/Int64Array#__get + i64.const 6 + i64.ne + br_if $folding-inner21 + local.get $1 i32.const 3 - call $~lib/typedarray/Uint8Array#__get - i32.const 5 - i32.ne - br_if $folding-inner28 + call $~lib/typedarray/Int64Array#__get + i64.const 5 + i64.ne + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer i32.const 20 i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -59067,7 +58064,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -59084,116 +58081,220 @@ local.get $0 i32.const 7628 i32.load + local.tee $0 + call $~lib/typedarray/Uint64Array#constructor local.tee $2 - call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 - call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 + local.get $0 + call $~lib/typedarray/Uint64Array#constructor + local.tee $6 i32.store offset=8 - loop $for-loop|032 - local.get $2 - local.get $3 + loop $for-loop|048 + local.get $0 + local.get $1 i32.gt_s if + local.get $2 local.get $1 - local.get $3 i32.const 7616 - local.get $3 + local.get $1 call $~lib/array/Array#__get - i32.const 255 - i32.and - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 - local.get $3 + i64.extend_i32_s + call $~lib/typedarray/Uint64Array#__set + local.get $6 + local.get $1 i32.const 7616 - local.get $3 + local.get $1 call $~lib/array/Array#__get - i32.const 255 - i32.and - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $3 + i64.extend_i32_s + call $~lib/typedarray/Uint64Array#__set + local.get $1 i32.const 1 i32.add - local.set $3 - br $for-loop|032 + local.set $1 + br $for-loop|048 end end - local.get $1 - call $~lib/typedarray/Int8Array#reverse - drop i32.const 0 - local.set $3 - loop $for-loop|133 - local.get $2 - local.get $3 + local.set $1 + local.get $2 + i32.load offset=4 + local.set $7 + local.get $2 + i32.load offset=8 + i32.const 3 + i32.shr_u + local.tee $8 + i32.const 1 + i32.gt_u + if + local.get $8 + i32.const 1 + i32.shr_u + local.set $12 + local.get $8 + i32.const 1 + i32.sub + local.set $8 + loop $while-continue|0150 + local.get $1 + local.get $12 + i32.lt_u + if + local.get $1 + i32.const 3 + i32.shl + local.get $7 + i32.add + local.tee $13 + i64.load + local.set $3 + local.get $13 + local.get $8 + local.get $1 + i32.sub + i32.const 3 + i32.shl + local.get $7 + i32.add + local.tee $13 + i64.load + i64.store + local.get $13 + local.get $3 + i64.store + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $while-continue|0150 + end + end + end + i32.const 0 + local.set $1 + loop $for-loop|149 + local.get $0 + local.get $1 i32.gt_s if + local.get $2 local.get $1 - local.get $3 - call $~lib/typedarray/Uint8ClampedArray#__get + call $~lib/typedarray/Uint64Array#__get i32.const 7616 - local.get $2 + local.get $0 i32.const 1 i32.sub - local.get $3 + local.get $1 i32.sub call $~lib/array/Array#__get - i32.const 255 - i32.and - i32.ne - br_if $folding-inner24 - local.get $3 + i64.extend_i32_s + i64.ne + br_if $folding-inner18 + local.get $1 i32.const 1 i32.add - local.set $3 - br $for-loop|133 + local.set $1 + br $for-loop|149 end end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $6 i32.const 8 - call $~lib/typedarray/Uint8ClampedArray#subarray - local.set $0 + call $~lib/typedarray/Uint64Array#subarray + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=12 - local.get $0 - call $~lib/typedarray/Int8Array#reverse - local.tee $0 + i32.const 0 + local.set $2 + local.get $1 + i32.load offset=4 + local.set $6 + local.get $1 + i32.load offset=8 + i32.const 3 + i32.shr_u + local.tee $7 + i32.const 1 + i32.gt_u + if + local.get $7 + i32.const 1 + i32.shr_u + local.set $8 + local.get $7 + i32.const 1 + i32.sub + local.set $7 + loop $while-continue|0152 + local.get $2 + local.get $8 + i32.lt_u + if + local.get $2 + i32.const 3 + i32.shl + local.get $6 + i32.add + local.tee $12 + i64.load + local.set $3 + local.get $12 + local.get $7 + local.get $2 + i32.sub + i32.const 3 + i32.shl + local.get $6 + i32.add + local.tee $12 + i64.load + i64.store + local.get $12 + local.get $3 + i64.store + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $while-continue|0152 + end + end + end + local.get $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 0 - call $~lib/typedarray/Uint8ClampedArray#__get - i32.const 8 - i32.ne - br_if $folding-inner25 - local.get $0 + call $~lib/typedarray/Uint64Array#__get + i64.const 8 + i64.ne + br_if $folding-inner19 + local.get $1 i32.const 1 - call $~lib/typedarray/Uint8ClampedArray#__get - i32.const 7 - i32.ne - br_if $folding-inner26 - local.get $0 + call $~lib/typedarray/Uint64Array#__get + i64.const 7 + i64.ne + br_if $folding-inner20 + local.get $1 i32.const 2 - call $~lib/typedarray/Uint8ClampedArray#__get - i32.const 6 - i32.ne - br_if $folding-inner27 - local.get $0 + call $~lib/typedarray/Uint64Array#__get + i64.const 6 + i64.ne + br_if $folding-inner21 + local.get $1 i32.const 3 - call $~lib/typedarray/Uint8ClampedArray#__get - i32.const 5 - i32.ne - br_if $folding-inner28 + call $~lib/typedarray/Uint64Array#__get + i64.const 5 + i64.ne + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer i32.const 20 i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -59201,7 +58302,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -59218,113 +58319,220 @@ local.get $0 i32.const 7628 i32.load + local.tee $0 + call $~lib/typedarray/Float32Array#constructor local.tee $2 - call $~lib/typedarray/Int16Array#constructor - local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 - call $~lib/typedarray/Int16Array#constructor - local.tee $0 + local.get $0 + call $~lib/typedarray/Float32Array#constructor + local.tee $6 i32.store offset=8 - loop $for-loop|034 - local.get $2 - local.get $3 + loop $for-loop|052110 + local.get $0 + local.get $1 i32.gt_s if + local.get $2 local.get $1 - local.get $3 i32.const 7616 - local.get $3 + local.get $1 call $~lib/array/Array#__get - i32.extend16_s - call $~lib/typedarray/Int16Array#__set - local.get $0 - local.get $3 + f32.convert_i32_s + call $~lib/typedarray/Float32Array#__set + local.get $6 + local.get $1 i32.const 7616 - local.get $3 + local.get $1 call $~lib/array/Array#__get - i32.extend16_s - call $~lib/typedarray/Int16Array#__set - local.get $3 + f32.convert_i32_s + call $~lib/typedarray/Float32Array#__set + local.get $1 i32.const 1 i32.add - local.set $3 - br $for-loop|034 + local.set $1 + br $for-loop|052110 end end - local.get $1 - call $~lib/typedarray/Int16Array#reverse - drop i32.const 0 - local.set $3 - loop $for-loop|135 - local.get $2 - local.get $3 + local.set $1 + local.get $2 + i32.load offset=4 + local.set $7 + local.get $2 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.tee $8 + i32.const 1 + i32.gt_u + if + local.get $8 + i32.const 1 + i32.shr_u + local.set $12 + local.get $8 + i32.const 1 + i32.sub + local.set $8 + loop $while-continue|0153 + local.get $1 + local.get $12 + i32.lt_u + if + local.get $1 + i32.const 2 + i32.shl + local.get $7 + i32.add + local.tee $13 + f32.load + local.set $4 + local.get $13 + local.get $8 + local.get $1 + i32.sub + i32.const 2 + i32.shl + local.get $7 + i32.add + local.tee $13 + f32.load + f32.store + local.get $13 + local.get $4 + f32.store + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $while-continue|0153 + end + end + end + i32.const 0 + local.set $1 + loop $for-loop|153 + local.get $0 + local.get $1 i32.gt_s if + local.get $2 local.get $1 - local.get $3 - call $~lib/typedarray/Int16Array#__get + call $~lib/typedarray/Float32Array#__get i32.const 7616 - local.get $2 + local.get $0 i32.const 1 i32.sub - local.get $3 + local.get $1 i32.sub call $~lib/array/Array#__get - i32.extend16_s - i32.ne - br_if $folding-inner24 - local.get $3 + f32.convert_i32_s + f32.ne + br_if $folding-inner18 + local.get $1 i32.const 1 i32.add - local.set $3 - br $for-loop|135 + local.set $1 + br $for-loop|153 end end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $6 i32.const 8 - call $~lib/typedarray/Int16Array#subarray - local.set $0 + call $~lib/typedarray/Float32Array#subarray + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=12 - local.get $0 - call $~lib/typedarray/Int16Array#reverse - local.tee $0 + i32.const 0 + local.set $2 + local.get $1 + i32.load offset=4 + local.set $6 + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.tee $7 + i32.const 1 + i32.gt_u + if + local.get $7 + i32.const 1 + i32.shr_u + local.set $8 + local.get $7 + i32.const 1 + i32.sub + local.set $7 + loop $while-continue|0155 + local.get $2 + local.get $8 + i32.lt_u + if + local.get $2 + i32.const 2 + i32.shl + local.get $6 + i32.add + local.tee $12 + f32.load + local.set $4 + local.get $12 + local.get $7 + local.get $2 + i32.sub + i32.const 2 + i32.shl + local.get $6 + i32.add + local.tee $12 + f32.load + f32.store + local.get $12 + local.get $4 + f32.store + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $while-continue|0155 + end + end + end + local.get $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 0 - call $~lib/typedarray/Int16Array#__get - i32.const 8 - i32.ne - br_if $folding-inner25 - local.get $0 + call $~lib/typedarray/Float32Array#__get + f32.const 8 + f32.ne + br_if $folding-inner19 + local.get $1 i32.const 1 - call $~lib/typedarray/Int16Array#__get - i32.const 7 - i32.ne - br_if $folding-inner26 - local.get $0 + call $~lib/typedarray/Float32Array#__get + f32.const 7 + f32.ne + br_if $folding-inner20 + local.get $1 i32.const 2 - call $~lib/typedarray/Int16Array#__get - i32.const 6 - i32.ne - br_if $folding-inner27 - local.get $0 + call $~lib/typedarray/Float32Array#__get + f32.const 6 + f32.ne + br_if $folding-inner21 + local.get $1 i32.const 3 - call $~lib/typedarray/Int16Array#__get - i32.const 5 - i32.ne - br_if $folding-inner28 + call $~lib/typedarray/Float32Array#__get + f32.const 5 + f32.ne + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer i32.const 20 i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -59332,7 +58540,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -59349,120 +58557,219 @@ local.get $0 i32.const 7628 i32.load + local.tee $0 + call $~lib/typedarray/Float64Array#constructor local.tee $2 - call $~lib/typedarray/Uint16Array#constructor - local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 - call $~lib/typedarray/Uint16Array#constructor - local.tee $0 + local.get $0 + call $~lib/typedarray/Float64Array#constructor + local.tee $6 i32.store offset=8 - loop $for-loop|037 - local.get $2 - local.get $3 + loop $for-loop|056156 + local.get $0 + local.get $1 i32.gt_s if + local.get $2 local.get $1 - local.get $3 i32.const 7616 - local.get $3 + local.get $1 call $~lib/array/Array#__get - i32.const 65535 - i32.and - call $~lib/typedarray/Uint16Array#__set - local.get $0 - local.get $3 + f64.convert_i32_s + call $~lib/typedarray/Float64Array#__set + local.get $6 + local.get $1 i32.const 7616 - local.get $3 + local.get $1 call $~lib/array/Array#__get - i32.const 65535 - i32.and - call $~lib/typedarray/Uint16Array#__set - local.get $3 + f64.convert_i32_s + call $~lib/typedarray/Float64Array#__set + local.get $1 i32.const 1 i32.add - local.set $3 - br $for-loop|037 + local.set $1 + br $for-loop|056156 end end - local.get $1 - call $~lib/typedarray/Int16Array#reverse - drop i32.const 0 - local.set $3 - loop $for-loop|138 - local.get $2 - local.get $3 + local.set $1 + local.get $2 + i32.load offset=4 + local.set $7 + local.get $2 + i32.load offset=8 + i32.const 3 + i32.shr_u + local.tee $8 + i32.const 1 + i32.gt_u + if + local.get $8 + i32.const 1 + i32.shr_u + local.set $12 + local.get $8 + i32.const 1 + i32.sub + local.set $8 + loop $while-continue|0157 + local.get $1 + local.get $12 + i32.lt_u + if + local.get $1 + i32.const 3 + i32.shl + local.get $7 + i32.add + local.tee $13 + f64.load + local.set $5 + local.get $13 + local.get $8 + local.get $1 + i32.sub + i32.const 3 + i32.shl + local.get $7 + i32.add + local.tee $13 + f64.load + f64.store + local.get $13 + local.get $5 + f64.store + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $while-continue|0157 + end + end + end + i32.const 0 + local.set $1 + loop $for-loop|157 + local.get $0 + local.get $1 i32.gt_s if + local.get $2 local.get $1 - local.get $3 - call $~lib/typedarray/Uint16Array#__get + call $~lib/typedarray/Float64Array#__get i32.const 7616 - local.get $2 + local.get $0 i32.const 1 i32.sub - local.get $3 + local.get $1 i32.sub call $~lib/array/Array#__get - i32.const 65535 - i32.and - i32.ne - br_if $folding-inner24 - local.get $3 + f64.convert_i32_s + f64.ne + br_if $folding-inner18 + local.get $1 i32.const 1 i32.add - local.set $3 - br $for-loop|138 + local.set $1 + br $for-loop|157 end end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $6 + i32.const 4 i32.const 8 - call $~lib/typedarray/Uint16Array#subarray - local.set $0 + call $~lib/typedarray/Float64Array#subarray + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=12 - local.get $0 - call $~lib/typedarray/Int16Array#reverse - local.tee $0 + i32.const 0 + local.set $2 + local.get $1 + i32.load offset=4 + local.set $6 + local.get $1 + i32.load offset=8 + i32.const 3 + i32.shr_u + local.tee $7 + i32.const 1 + i32.gt_u + if + local.get $7 + i32.const 1 + i32.shr_u + local.set $8 + local.get $7 + i32.const 1 + i32.sub + local.set $7 + loop $while-continue|0159 + local.get $2 + local.get $8 + i32.lt_u + if + local.get $2 + i32.const 3 + i32.shl + local.get $6 + i32.add + local.tee $12 + f64.load + local.set $5 + local.get $12 + local.get $7 + local.get $2 + i32.sub + i32.const 3 + i32.shl + local.get $6 + i32.add + local.tee $12 + f64.load + f64.store + local.get $12 + local.get $5 + f64.store + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $while-continue|0159 + end + end + end + local.get $1 i32.store offset=16 - local.get $0 + local.get $1 i32.const 0 - call $~lib/typedarray/Uint16Array#__get - i32.const 8 - i32.ne - br_if $folding-inner25 - local.get $0 + call $~lib/typedarray/Float64Array#__get + f64.const 8 + f64.ne + br_if $folding-inner19 + local.get $1 i32.const 1 - call $~lib/typedarray/Uint16Array#__get - i32.const 7 - i32.ne - br_if $folding-inner26 - local.get $0 + call $~lib/typedarray/Float64Array#__get + f64.const 7 + f64.ne + br_if $folding-inner20 + local.get $1 i32.const 2 - call $~lib/typedarray/Uint16Array#__get - i32.const 6 - i32.ne - br_if $folding-inner27 - local.get $0 + call $~lib/typedarray/Float64Array#__get + f64.const 6 + f64.ne + br_if $folding-inner21 + local.get $1 i32.const 3 - call $~lib/typedarray/Uint16Array#__get - i32.const 5 - i32.ne - br_if $folding-inner28 + call $~lib/typedarray/Float64Array#__get + f64.const 5 + f64.ne + br_if $folding-inner22 global.get $~lib/memory/__stack_pointer i32.const 20 i32.add global.set $~lib/memory/__stack_pointer - call $std/typedarray/testArrayReverse<~lib/typedarray/Int32Array,i32> - call $std/typedarray/testArrayReverse<~lib/typedarray/Uint32Array,u32> - call $std/typedarray/testArrayReverse<~lib/typedarray/Int64Array,i64> - call $std/typedarray/testArrayReverse<~lib/typedarray/Uint64Array,u64> - call $std/typedarray/testArrayReverse<~lib/typedarray/Float32Array,f32> - call $std/typedarray/testArrayReverse<~lib/typedarray/Float64Array,f64> call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Int8Array,i8> call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Uint8Array,u8> call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Uint8ClampedArray,u8> @@ -59477,9 +58784,9 @@ global.get $~lib/memory/__stack_pointer i32.const 1 call $~lib/typedarray/Float64Array#constructor - local.tee $4 + local.tee $2 i32.store offset=12 - local.get $4 + local.get $2 i32.const 0 f64.const nan:0x8000000000000 call $~lib/typedarray/Float64Array#__set @@ -59488,29 +58795,29 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $4 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $6 i32.const 0 - local.get $3 + local.get $6 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|0 + local.set $7 + loop $while-continue|0160 local.get $0 - local.get $3 + local.get $6 i32.lt_s if local.get $0 local.tee $1 i32.const 3 i32.shl - local.get $2 + local.get $7 i32.add f64.load f64.const nan:0x8000000000000 @@ -59520,7 +58827,7 @@ i32.const 1 i32.add local.set $0 - br $while-continue|0 + br $while-continue|0160 end end i32.const -1 @@ -59538,49 +58845,49 @@ unreachable end i32.const 0 - local.set $10 + local.set $1 block $~lib/typedarray/INCLUDES<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) i32.const 0 - local.get $4 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 select i32.eqz br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $4 + local.get $2 i32.load offset=4 - local.set $0 - loop $while-continue|0289 + local.set $2 + loop $while-continue|060 + local.get $0 local.get $1 - local.get $10 i32.gt_s if i32.const 1 - local.get $10 + local.get $1 i32.const 3 i32.shl - local.get $0 + local.get $2 i32.add f64.load - local.tee $7 + local.tee $5 f64.const nan:0x8000000000000 f64.eq - local.get $7 - local.get $7 + local.get $5 + local.get $5 f64.ne i32.or br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $10 + local.get $1 i32.const 1 i32.add - local.set $10 - br $while-continue|0289 + local.set $1 + br $while-continue|060 end end i32.const 0 @@ -59597,9 +58904,9 @@ global.get $~lib/memory/__stack_pointer i32.const 1 call $~lib/typedarray/Float32Array#constructor - local.tee $4 + local.tee $2 i32.store offset=24 - local.get $4 + local.get $2 i32.const 0 f32.const nan:0x400000 call $~lib/typedarray/Float32Array#__set @@ -59608,29 +58915,29 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $4 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $6 i32.const 0 - local.get $3 + local.get $6 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $4 + local.get $2 i32.load offset=4 - local.set $2 - loop $while-continue|0290 + local.set $7 + loop $while-continue|062 local.get $0 - local.get $3 + local.get $6 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $7 i32.add f32.load f32.const nan:0x400000 @@ -59640,7 +58947,7 @@ i32.const 1 i32.add local.set $0 - br $while-continue|0290 + br $while-continue|062 end end i32.const -1 @@ -59658,49 +58965,49 @@ unreachable end i32.const 0 - local.set $10 + local.set $1 block $~lib/typedarray/INCLUDES<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) i32.const 0 - local.get $4 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 select i32.eqz br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $4 + local.get $2 i32.load offset=4 - local.set $0 - loop $while-continue|078 + local.set $2 + loop $while-continue|064 + local.get $0 local.get $1 - local.get $10 i32.gt_s if i32.const 1 - local.get $10 + local.get $1 i32.const 2 i32.shl - local.get $0 + local.get $2 i32.add f32.load - local.tee $5 + local.tee $4 f32.const nan:0x400000 f32.eq - local.get $5 - local.get $5 + local.get $4 + local.get $4 f32.ne i32.or br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $10 + local.get $1 i32.const 1 i32.add - local.set $10 - br $while-continue|078 + local.set $1 + br $while-continue|064 end end i32.const 0 @@ -59721,7 +59028,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -59732,45 +59039,45 @@ local.get $0 i32.const 5 call $~lib/typedarray/Int8Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int8Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz - br_if $folding-inner15 + br_if $folding-inner23 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -59778,33 +59085,33 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Int8Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=4 + local.tee $1 local.get $0 + i32.store offset=4 + local.get $1 i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz - br_if $folding-inner16 + br_if $folding-inner24 global.get $~lib/memory/__stack_pointer i32.const 16 i32.add @@ -59816,7 +59123,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -59827,60 +59134,60 @@ local.get $0 i32.const 5 call $~lib/typedarray/Uint8Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Uint8Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz - br_if $folding-inner15 - local.get $1 + br_if $folding-inner23 + local.get $0 call $~lib/typedarray/Uint8Array#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=4 + local.tee $1 local.get $0 + i32.store offset=4 + local.get $1 i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz - br_if $folding-inner16 + br_if $folding-inner24 global.get $~lib/memory/__stack_pointer i32.const 16 i32.add @@ -59892,7 +59199,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -59903,60 +59210,60 @@ local.get $0 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Uint8Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz - br_if $folding-inner15 - local.get $1 + br_if $folding-inner23 + local.get $0 call $~lib/typedarray/Uint8Array#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=4 + local.tee $1 local.get $0 + i32.store offset=4 + local.get $1 i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz - br_if $folding-inner16 + br_if $folding-inner24 global.get $~lib/memory/__stack_pointer i32.const 16 i32.add @@ -59968,7 +59275,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -59979,45 +59286,45 @@ local.get $0 i32.const 5 call $~lib/typedarray/Int16Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int16Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz - br_if $folding-inner15 + br_if $folding-inner23 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -60025,33 +59332,33 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Int16Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=4 + local.tee $1 local.get $0 + i32.store offset=4 + local.get $1 i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz - br_if $folding-inner16 + br_if $folding-inner24 global.get $~lib/memory/__stack_pointer i32.const 16 i32.add @@ -60063,7 +59370,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -60074,45 +59381,45 @@ local.get $0 i32.const 5 call $~lib/typedarray/Uint16Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Uint16Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Uint16Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz - br_if $folding-inner15 + br_if $folding-inner23 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -60120,33 +59427,33 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Uint16Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=4 + local.tee $1 local.get $0 + i32.store offset=4 + local.get $1 i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz - br_if $folding-inner16 + br_if $folding-inner24 global.get $~lib/memory/__stack_pointer i32.const 16 i32.add @@ -60158,7 +59465,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -60169,45 +59476,45 @@ local.get $0 i32.const 5 call $~lib/typedarray/Int32Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int32Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz - br_if $folding-inner15 + br_if $folding-inner23 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -60215,33 +59522,33 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Int32Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=4 + local.tee $1 local.get $0 + i32.store offset=4 + local.get $1 i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz - br_if $folding-inner16 + br_if $folding-inner24 global.get $~lib/memory/__stack_pointer i32.const 16 i32.add @@ -60253,7 +59560,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -60264,45 +59571,45 @@ local.get $0 i32.const 5 call $~lib/typedarray/Uint32Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $0 i32.const 3 i32.const 4 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $0 i32.const 4 i32.const 5 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Uint32Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz - br_if $folding-inner15 + br_if $folding-inner23 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -60310,33 +59617,33 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Uint32Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=4 + local.tee $1 local.get $0 + i32.store offset=4 + local.get $1 i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz - br_if $folding-inner16 + br_if $folding-inner24 global.get $~lib/memory/__stack_pointer i32.const 16 i32.add @@ -60348,7 +59655,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -60359,45 +59666,45 @@ local.get $0 i32.const 5 call $~lib/typedarray/Int64Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $0 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $0 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $0 i32.const 3 i64.const 4 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $0 i32.const 4 i64.const 5 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int64Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz - br_if $folding-inner15 + br_if $folding-inner23 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -60405,33 +59712,33 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Int64Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=4 + local.tee $1 local.get $0 + i32.store offset=4 + local.get $1 i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz - br_if $folding-inner16 + br_if $folding-inner24 global.get $~lib/memory/__stack_pointer i32.const 16 i32.add @@ -60443,7 +59750,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -60454,45 +59761,45 @@ local.get $0 i32.const 5 call $~lib/typedarray/Uint64Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $0 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $0 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $0 i32.const 3 i64.const 4 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $0 i32.const 4 i64.const 5 call $~lib/typedarray/Uint64Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Uint64Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz - br_if $folding-inner15 + br_if $folding-inner23 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -60500,33 +59807,33 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Uint64Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=4 + local.tee $1 local.get $0 + i32.store offset=4 + local.get $1 i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz - br_if $folding-inner16 + br_if $folding-inner24 global.get $~lib/memory/__stack_pointer i32.const 16 i32.add @@ -60538,7 +59845,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -60549,45 +59856,45 @@ local.get $0 i32.const 5 call $~lib/typedarray/Float32Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 3 f32.const 4 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 4 f32.const 5 call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Float32Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 10800 i32.store offset=8 - local.get $0 + local.get $1 i32.const 10800 call $~lib/string/String.__eq i32.eqz - br_if $folding-inner17 + br_if $folding-inner25 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -60595,33 +59902,33 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Float32Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=4 + local.tee $1 local.get $0 + i32.store offset=4 + local.get $1 i32.const 10800 i32.store offset=8 - local.get $1 + local.get $0 i32.const 10800 call $~lib/string/String.__eq i32.eqz - br_if $folding-inner18 + br_if $folding-inner26 global.get $~lib/memory/__stack_pointer i32.const 16 i32.add @@ -60633,7 +59940,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -60644,45 +59951,45 @@ local.get $0 i32.const 5 call $~lib/typedarray/Float64Array#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 3 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 4 f64.const 5 call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Float64Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 10800 i32.store offset=8 - local.get $0 + local.get $1 i32.const 10800 call $~lib/string/String.__eq i32.eqz - br_if $folding-inner17 + br_if $folding-inner25 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -60690,33 +59997,33 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 9584 i32.store - local.get $1 + local.get $0 call $~lib/typedarray/Float64Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=4 + local.tee $1 local.get $0 + i32.store offset=4 + local.get $1 i32.const 10800 i32.store offset=8 - local.get $1 + local.get $0 i32.const 10800 call $~lib/string/String.__eq i32.eqz - br_if $folding-inner18 + br_if $folding-inner26 global.get $~lib/memory/__stack_pointer i32.const 16 i32.add @@ -60768,7 +60075,7 @@ unreachable end i32.const 0 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -60776,7 +60083,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -60793,49 +60100,49 @@ local.get $0 i32.const 10940 i32.load - local.tee $6 + local.tee $0 call $~lib/typedarray/Int8Array#constructor - local.tee $4 + local.tee $1 i32.store offset=4 - loop $for-loop|041 - local.get $1 - local.get $6 - i32.lt_s + loop $for-loop|069 + local.get $0 + local.get $2 + i32.gt_s if - local.get $4 local.get $1 + local.get $2 i32.const 10928 - local.get $1 + local.get $2 call $~lib/array/Array#__get i32.extend8_s call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|041 + local.set $2 + br $for-loop|069 end end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $4 + local.tee $2 + local.get $1 i32.load - local.tee $0 + local.tee $6 i32.store offset=8 + local.get $2 + local.get $6 local.get $1 - local.get $0 - local.get $4 i32.load offset=4 - local.get $4 + local.get $1 i32.load i32.sub - local.tee $0 - local.get $4 + local.tee $2 + local.get $1 i32.load offset=8 - local.get $0 + local.get $2 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $2 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -60847,63 +60154,63 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $7 i32.const 0 i32.store - local.get $3 + local.get $2 i32.const 20 i32.sub i32.load offset=16 - local.set $1 - local.get $0 + local.set $8 + local.get $7 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $7 i32.store - local.get $0 - local.get $3 + local.get $7 + local.get $2 i32.store - local.get $3 + local.get $2 if - local.get $0 - local.get $3 + local.get $7 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $1 + local.get $7 + local.get $8 i32.store offset=8 - local.get $0 - local.get $3 + local.get $7 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $7 i32.store offset=16 i32.const 0 - local.set $1 - loop $for-loop|142 - local.get $1 - local.get $6 - i32.lt_s + local.set $2 + loop $for-loop|171 + local.get $0 + local.get $2 + i32.gt_s if - local.get $4 local.get $1 + local.get $2 call $~lib/typedarray/Int8Array#__get - local.get $0 - local.get $1 + local.get $7 + local.get $2 call $~lib/typedarray/Int8Array#__get i32.ne - br_if $folding-inner29 - local.get $1 + br_if $folding-inner27 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|142 + local.set $2 + br $for-loop|171 end end global.get $~lib/memory/__stack_pointer @@ -60919,7 +60226,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -60936,14 +60243,14 @@ local.get $0 i32.const 10940 i32.load - local.tee $3 + local.tee $0 call $~lib/typedarray/Uint8Array#constructor local.tee $2 i32.store offset=4 - loop $for-loop|043 + loop $for-loop|074 + local.get $0 local.get $1 - local.get $3 - i32.lt_s + i32.gt_s if local.get $2 local.get $1 @@ -60957,58 +60264,58 @@ i32.const 1 i32.add local.set $1 - br $for-loop|043 + br $for-loop|074 end end global.get $~lib/memory/__stack_pointer local.tee $1 local.get $2 i32.load - local.tee $0 + local.tee $6 i32.store offset=8 local.get $1 - local.get $0 + local.get $6 local.get $2 i32.load offset=4 local.get $2 i32.load i32.sub - local.tee $0 - local.get $0 + local.tee $1 local.get $2 i32.load offset=8 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $0 + local.tee $1 i32.store offset=12 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint8Array.wrap@varargs - local.tee $0 + local.tee $6 i32.store offset=16 i32.const 0 local.set $1 - loop $for-loop|144 + loop $for-loop|177 + local.get $0 local.get $1 - local.get $3 - i32.lt_s + i32.gt_s if local.get $2 local.get $1 call $~lib/typedarray/Uint8Array#__get - local.get $0 + local.get $6 local.get $1 call $~lib/typedarray/Uint8Array#__get i32.ne - br_if $folding-inner29 + br_if $folding-inner27 local.get $1 i32.const 1 i32.add local.set $1 - br $for-loop|144 + br $for-loop|177 end end global.get $~lib/memory/__stack_pointer @@ -61016,7 +60323,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -61024,7 +60331,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -61041,50 +60348,50 @@ local.get $0 i32.const 10940 i32.load - local.tee $6 + local.tee $0 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $4 + local.tee $1 i32.store offset=4 - loop $for-loop|047 - local.get $1 - local.get $6 - i32.lt_s + loop $for-loop|080131 + local.get $0 + local.get $2 + i32.gt_s if - local.get $4 local.get $1 + local.get $2 i32.const 10928 - local.get $1 + local.get $2 call $~lib/array/Array#__get i32.const 255 i32.and call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|047 + local.set $2 + br $for-loop|080131 end end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $4 + local.tee $2 + local.get $1 i32.load - local.tee $0 + local.tee $6 i32.store offset=8 + local.get $2 + local.get $6 local.get $1 - local.get $0 - local.get $4 i32.load offset=4 - local.get $4 + local.get $1 i32.load i32.sub - local.tee $0 - local.get $4 + local.tee $2 + local.get $1 i32.load offset=8 - local.get $0 + local.get $2 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $2 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61096,63 +60403,63 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $7 i32.const 0 i32.store - local.get $3 + local.get $2 i32.const 20 i32.sub i32.load offset=16 - local.set $1 - local.get $0 + local.set $8 + local.get $7 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $7 i32.store - local.get $0 - local.get $3 + local.get $7 + local.get $2 i32.store - local.get $3 + local.get $2 if - local.get $0 - local.get $3 + local.get $7 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $1 + local.get $7 + local.get $8 i32.store offset=8 - local.get $0 - local.get $3 + local.get $7 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $7 i32.store offset=16 i32.const 0 - local.set $1 - loop $for-loop|148 - local.get $1 - local.get $6 - i32.lt_s + local.set $2 + loop $for-loop|183 + local.get $0 + local.get $2 + i32.gt_s if - local.get $4 local.get $1 + local.get $2 call $~lib/typedarray/Uint8ClampedArray#__get - local.get $0 - local.get $1 + local.get $7 + local.get $2 call $~lib/typedarray/Uint8ClampedArray#__get i32.ne - br_if $folding-inner29 - local.get $1 + br_if $folding-inner27 + local.get $2 i32.const 1 i32.add - local.set $1 - br $for-loop|148 + local.set $2 + br $for-loop|183 end end global.get $~lib/memory/__stack_pointer @@ -61168,7 +60475,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -61185,16 +60492,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $6 + local.tee $0 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 - loop $for-loop|053 + loop $for-loop|086139 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if - local.get $4 + local.get $2 local.get $1 i32.const 10928 local.get $1 @@ -61205,29 +60512,29 @@ i32.const 1 i32.add local.set $1 - br $for-loop|053 + br $for-loop|086139 end end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $2 i32.load - local.tee $0 + local.tee $6 i32.store offset=8 local.get $1 - local.get $0 - local.get $4 + local.get $6 + local.get $2 i32.load offset=4 - local.get $4 + local.get $2 i32.load i32.sub - local.tee $0 - local.get $4 + local.tee $1 + local.get $2 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $1 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61239,65 +60546,65 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $7 i32.const 1 i32.and - br_if $folding-inner30 + br_if $folding-inner28 global.get $~lib/memory/__stack_pointer i32.const 12 i32.const 6 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $8 i32.store - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store - local.get $3 + local.get $1 if - local.get $0 - local.get $3 + local.get $8 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $1 + local.get $8 + local.get $7 i32.store offset=8 - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $8 i32.store offset=16 i32.const 0 local.set $1 - loop $for-loop|154 + loop $for-loop|189 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if - local.get $4 + local.get $2 local.get $1 call $~lib/typedarray/Int16Array#__get - local.get $0 + local.get $8 local.get $1 call $~lib/typedarray/Int16Array#__get i32.ne - br_if $folding-inner29 + br_if $folding-inner27 local.get $1 i32.const 1 i32.add local.set $1 - br $for-loop|154 + br $for-loop|189 end end global.get $~lib/memory/__stack_pointer @@ -61313,7 +60620,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -61330,16 +60637,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $6 + local.tee $0 call $~lib/typedarray/Uint16Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 - loop $for-loop|057 + loop $for-loop|092147 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if - local.get $4 + local.get $2 local.get $1 i32.const 10928 local.get $1 @@ -61351,29 +60658,29 @@ i32.const 1 i32.add local.set $1 - br $for-loop|057 + br $for-loop|092147 end end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $2 i32.load - local.tee $0 + local.tee $6 i32.store offset=8 local.get $1 - local.get $0 - local.get $4 + local.get $6 + local.get $2 i32.load offset=4 - local.get $4 + local.get $2 i32.load i32.sub - local.tee $0 - local.get $4 + local.tee $1 + local.get $2 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $1 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61385,65 +60692,65 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $7 i32.const 1 i32.and - br_if $folding-inner30 + br_if $folding-inner28 global.get $~lib/memory/__stack_pointer i32.const 12 i32.const 7 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $8 i32.store - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store - local.get $3 + local.get $1 if - local.get $0 - local.get $3 + local.get $8 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $1 + local.get $8 + local.get $7 i32.store offset=8 - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $8 i32.store offset=16 i32.const 0 local.set $1 - loop $for-loop|158 + loop $for-loop|195 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if - local.get $4 + local.get $2 local.get $1 call $~lib/typedarray/Uint16Array#__get - local.get $0 + local.get $8 local.get $1 call $~lib/typedarray/Uint16Array#__get i32.ne - br_if $folding-inner29 + br_if $folding-inner27 local.get $1 i32.const 1 i32.add local.set $1 - br $for-loop|158 + br $for-loop|195 end end global.get $~lib/memory/__stack_pointer @@ -61459,7 +60766,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -61476,16 +60783,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $6 + local.tee $0 call $~lib/typedarray/Int32Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 - loop $for-loop|060 + loop $for-loop|098155 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if - local.get $4 + local.get $2 local.get $1 i32.const 10928 local.get $1 @@ -61495,29 +60802,29 @@ i32.const 1 i32.add local.set $1 - br $for-loop|060 + br $for-loop|098155 end end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $2 i32.load - local.tee $0 + local.tee $6 i32.store offset=8 local.get $1 - local.get $0 - local.get $4 + local.get $6 + local.get $2 i32.load offset=4 - local.get $4 + local.get $2 i32.load i32.sub - local.tee $0 - local.get $4 + local.tee $1 + local.get $2 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $1 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61529,65 +60836,65 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $7 i32.const 3 i32.and - br_if $folding-inner30 + br_if $folding-inner28 global.get $~lib/memory/__stack_pointer i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $8 i32.store - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store - local.get $3 + local.get $1 if - local.get $0 - local.get $3 + local.get $8 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $1 + local.get $8 + local.get $7 i32.store offset=8 - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $8 i32.store offset=16 i32.const 0 local.set $1 - loop $for-loop|161 + loop $for-loop|1101 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if - local.get $4 + local.get $2 local.get $1 call $~lib/typedarray/Int32Array#__get - local.get $0 + local.get $8 local.get $1 call $~lib/typedarray/Int32Array#__get i32.ne - br_if $folding-inner29 + br_if $folding-inner27 local.get $1 i32.const 1 i32.add local.set $1 - br $for-loop|161 + br $for-loop|1101 end end global.get $~lib/memory/__stack_pointer @@ -61603,7 +60910,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -61620,16 +60927,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $6 + local.tee $0 call $~lib/typedarray/Uint32Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 - loop $for-loop|064 + loop $for-loop|0104163 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if - local.get $4 + local.get $2 local.get $1 i32.const 10928 local.get $1 @@ -61639,29 +60946,29 @@ i32.const 1 i32.add local.set $1 - br $for-loop|064 + br $for-loop|0104163 end end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $2 i32.load - local.tee $0 + local.tee $6 i32.store offset=8 local.get $1 - local.get $0 - local.get $4 + local.get $6 + local.get $2 i32.load offset=4 - local.get $4 + local.get $2 i32.load i32.sub - local.tee $0 - local.get $4 + local.tee $1 + local.get $2 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $1 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61673,65 +60980,65 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $7 i32.const 3 i32.and - br_if $folding-inner30 + br_if $folding-inner28 global.get $~lib/memory/__stack_pointer i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $8 i32.store - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store - local.get $3 + local.get $1 if - local.get $0 - local.get $3 + local.get $8 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $1 + local.get $8 + local.get $7 i32.store offset=8 - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $8 i32.store offset=16 i32.const 0 local.set $1 - loop $for-loop|165 + loop $for-loop|1107 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if - local.get $4 + local.get $2 local.get $1 call $~lib/typedarray/Uint32Array#__get - local.get $0 + local.get $8 local.get $1 call $~lib/typedarray/Uint32Array#__get i32.ne - br_if $folding-inner29 + br_if $folding-inner27 local.get $1 i32.const 1 i32.add local.set $1 - br $for-loop|165 + br $for-loop|1107 end end global.get $~lib/memory/__stack_pointer @@ -61747,7 +61054,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -61764,16 +61071,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $6 + local.tee $0 call $~lib/typedarray/Int64Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 - loop $for-loop|070 + loop $for-loop|0110 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if - local.get $4 + local.get $2 local.get $1 i32.const 10928 local.get $1 @@ -61784,29 +61091,29 @@ i32.const 1 i32.add local.set $1 - br $for-loop|070 + br $for-loop|0110 end end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $2 i32.load - local.tee $0 + local.tee $6 i32.store offset=8 local.get $1 - local.get $0 - local.get $4 + local.get $6 + local.get $2 i32.load offset=4 - local.get $4 + local.get $2 i32.load i32.sub - local.tee $0 - local.get $4 + local.tee $1 + local.get $2 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $1 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61818,65 +61125,65 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $7 i32.const 7 i32.and - br_if $folding-inner30 + br_if $folding-inner28 global.get $~lib/memory/__stack_pointer i32.const 12 i32.const 10 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $8 i32.store - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store - local.get $3 + local.get $1 if - local.get $0 - local.get $3 + local.get $8 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $1 + local.get $8 + local.get $7 i32.store offset=8 - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $8 i32.store offset=16 i32.const 0 local.set $1 - loop $for-loop|171 + loop $for-loop|1113 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if - local.get $4 + local.get $2 local.get $1 call $~lib/typedarray/Int64Array#__get - local.get $0 + local.get $8 local.get $1 call $~lib/typedarray/Int64Array#__get i64.ne - br_if $folding-inner29 + br_if $folding-inner27 local.get $1 i32.const 1 i32.add local.set $1 - br $for-loop|171 + br $for-loop|1113 end end global.get $~lib/memory/__stack_pointer @@ -61892,7 +61199,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -61909,16 +61216,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $6 + local.tee $0 call $~lib/typedarray/Uint64Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 - loop $for-loop|074 + loop $for-loop|0116 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if - local.get $4 + local.get $2 local.get $1 i32.const 10928 local.get $1 @@ -61929,29 +61236,29 @@ i32.const 1 i32.add local.set $1 - br $for-loop|074 + br $for-loop|0116 end end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $2 i32.load - local.tee $0 + local.tee $6 i32.store offset=8 local.get $1 - local.get $0 - local.get $4 + local.get $6 + local.get $2 i32.load offset=4 - local.get $4 + local.get $2 i32.load i32.sub - local.tee $0 - local.get $4 + local.tee $1 + local.get $2 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $1 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61963,65 +61270,65 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $7 i32.const 7 i32.and - br_if $folding-inner30 + br_if $folding-inner28 global.get $~lib/memory/__stack_pointer i32.const 12 i32.const 11 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $8 i32.store - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store - local.get $3 + local.get $1 if - local.get $0 - local.get $3 + local.get $8 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $1 + local.get $8 + local.get $7 i32.store offset=8 - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $8 i32.store offset=16 i32.const 0 local.set $1 - loop $for-loop|175 + loop $for-loop|1119 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if - local.get $4 + local.get $2 local.get $1 call $~lib/typedarray/Uint64Array#__get - local.get $0 + local.get $8 local.get $1 call $~lib/typedarray/Uint64Array#__get i64.ne - br_if $folding-inner29 + br_if $folding-inner27 local.get $1 i32.const 1 i32.add local.set $1 - br $for-loop|175 + br $for-loop|1119 end end global.get $~lib/memory/__stack_pointer @@ -62037,7 +61344,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -62054,16 +61361,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $6 + local.tee $0 call $~lib/typedarray/Float32Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 - loop $for-loop|077 + loop $for-loop|0122 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if - local.get $4 + local.get $2 local.get $1 i32.const 10928 local.get $1 @@ -62074,29 +61381,29 @@ i32.const 1 i32.add local.set $1 - br $for-loop|077 + br $for-loop|0122 end end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $2 i32.load - local.tee $0 + local.tee $6 i32.store offset=8 local.get $1 - local.get $0 - local.get $4 + local.get $6 + local.get $2 i32.load offset=4 - local.get $4 + local.get $2 i32.load i32.sub - local.tee $0 - local.get $4 + local.tee $1 + local.get $2 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $1 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -62108,65 +61415,65 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $7 i32.const 3 i32.and - br_if $folding-inner30 + br_if $folding-inner28 global.get $~lib/memory/__stack_pointer i32.const 12 i32.const 12 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $8 i32.store - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store - local.get $3 + local.get $1 if - local.get $0 - local.get $3 + local.get $8 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $1 + local.get $8 + local.get $7 i32.store offset=8 - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $8 i32.store offset=16 i32.const 0 local.set $1 - loop $for-loop|178 + loop $for-loop|1125 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if - local.get $4 + local.get $2 local.get $1 call $~lib/typedarray/Float32Array#__get - local.get $0 + local.get $8 local.get $1 call $~lib/typedarray/Float32Array#__get f32.ne - br_if $folding-inner29 + br_if $folding-inner27 local.get $1 i32.const 1 i32.add local.set $1 - br $for-loop|178 + br $for-loop|1125 end end global.get $~lib/memory/__stack_pointer @@ -62182,7 +61489,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -62199,16 +61506,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $6 + local.tee $0 call $~lib/typedarray/Float64Array#constructor - local.tee $4 + local.tee $2 i32.store offset=4 - loop $for-loop|080 + loop $for-loop|0128 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if - local.get $4 + local.get $2 local.get $1 i32.const 10928 local.get $1 @@ -62219,29 +61526,29 @@ i32.const 1 i32.add local.set $1 - br $for-loop|080 + br $for-loop|0128 end end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $4 + local.get $2 i32.load - local.tee $0 + local.tee $6 i32.store offset=8 local.get $1 - local.get $0 - local.get $4 + local.get $6 + local.get $2 i32.load offset=4 - local.get $4 + local.get $2 i32.load i32.sub - local.tee $0 - local.get $4 + local.tee $1 + local.get $2 i32.load offset=8 - local.get $0 + local.get $1 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $3 + local.tee $1 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -62253,65 +61560,65 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=16 - local.tee $1 + local.tee $7 i32.const 7 i32.and - br_if $folding-inner30 + br_if $folding-inner28 global.get $~lib/memory/__stack_pointer i32.const 12 i32.const 13 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $8 i32.store - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store - local.get $3 + local.get $1 if - local.get $0 - local.get $3 + local.get $8 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $1 + local.get $8 + local.get $7 i32.store offset=8 - local.get $0 - local.get $3 + local.get $8 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $8 i32.store offset=16 i32.const 0 local.set $1 - loop $for-loop|181 + loop $for-loop|1131 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if - local.get $4 + local.get $2 local.get $1 call $~lib/typedarray/Float64Array#__get - local.get $0 + local.get $8 local.get $1 call $~lib/typedarray/Float64Array#__get f64.ne - br_if $folding-inner29 + br_if $folding-inner27 local.get $1 i32.const 1 i32.add local.set $1 - br $for-loop|181 + br $for-loop|1131 end end global.get $~lib/memory/__stack_pointer @@ -62332,105 +61639,107 @@ global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $6 + local.tee $0 i32.store offset=24 global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $0 + local.tee $1 i32.store offset=12 - local.get $0 + local.get $1 i32.const 0 f32.const 400 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 1 f32.const nan:0x400000 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 2 f32.const inf call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Int64Array#constructor - local.tee $3 + local.tee $6 i32.store offset=8 - local.get $3 + local.get $6 i32.const 0 i64.const -10 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $6 i32.const 1 i64.const 100 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $6 i32.const 2 i64.const 10 call $~lib/typedarray/Int64Array#__set - local.get $3 + local.get $6 i32.const 3 i64.const 300 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 2 call $~lib/typedarray/Int32Array#constructor - local.tee $4 + local.tee $7 i32.store offset=16 - local.get $4 + local.get $7 i32.const 0 i32.const 300 call $~lib/typedarray/Int32Array#__set - local.get $4 + local.get $7 i32.const 1 i32.const -1 call $~lib/typedarray/Int32Array#__set - local.get $6 - i32.load offset=8 + i32.const 0 + local.set $2 local.get $0 i32.load offset=8 + local.get $1 + i32.load offset=8 i32.const 2 i32.shr_u i32.const 1 i32.add i32.lt_s - br_if $folding-inner19 - local.get $6 + br_if $folding-inner29 + local.get $0 i32.load offset=4 i32.const 1 i32.add - local.set $2 - local.get $0 + local.set $8 + local.get $1 i32.load offset=4 - local.set $1 - local.get $0 + local.set $12 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.set $0 - loop $for-loop|082 - local.get $0 - local.get $16 + local.set $1 + loop $for-loop|0135 + local.get $1 + local.get $2 i32.gt_s if local.get $2 - local.get $16 + local.get $8 i32.add - local.get $16 + local.get $2 i32.const 2 i32.shl - local.get $1 + local.get $12 i32.add f32.load - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 f32.sub f32.const 0 f32.eq if (result i32) f32.const 0 f32.const 255 - local.get $5 + local.get $4 f32.min f32.max i32.trunc_f32_u @@ -62438,75 +61747,75 @@ i32.const 0 end i32.store8 - local.get $16 + local.get $2 i32.const 1 i32.add - local.set $16 - br $for-loop|082 + local.set $2 + br $for-loop|0135 end end + local.get $0 local.get $6 - local.get $3 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int64Array> i32.const 0 - local.set $9 - local.get $6 + local.set $2 + local.get $0 i32.load offset=8 - local.get $4 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u i32.const 8 i32.add i32.lt_s - br_if $folding-inner19 - local.get $6 + br_if $folding-inner29 + local.get $0 i32.load offset=4 i32.const 8 i32.add - local.set $3 - local.get $4 + local.set $1 + local.get $7 i32.load offset=4 - local.set $2 - local.get $4 + local.set $6 + local.get $7 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 - loop $for-loop|086311 - local.get $1 - local.get $9 - i32.gt_s + local.set $7 + loop $for-loop|0139 + local.get $2 + local.get $7 + i32.lt_s if - local.get $3 - local.get $9 + local.get $1 + local.get $2 i32.add - local.get $9 + i32.const 255 + local.get $2 i32.const 2 i32.shl - local.get $2 + local.get $6 i32.add i32.load - local.tee $0 - i32.const 255 - local.get $0 + local.tee $8 i32.sub i32.const 31 i32.shr_s + local.get $8 i32.or - local.get $0 + local.get $8 i32.const 31 i32.shr_s i32.const -1 i32.xor i32.and i32.store8 - local.get $9 + local.get $2 i32.const 1 i32.add - local.set $9 - br $for-loop|086311 + local.set $2 + br $for-loop|0139 end end i32.const 10 @@ -62514,106 +61823,106 @@ i32.const 63 i32.const 15280 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint32Array#constructor - local.tee $0 + local.tee $1 i32.store offset=28 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 300 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 100 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 3 i32.const -1 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $6 i32.store - local.get $4 + local.get $6 i32.const 0 i32.const -10 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $6 i32.const 1 i32.const 100 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $6 i32.const 2 i32.const 10 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $6 i32.const 3 i32.const 300 call $~lib/typedarray/Int16Array#__set i32.const 0 - local.set $9 - local.get $6 - i32.load offset=8 + local.set $2 local.get $0 i32.load offset=8 + local.get $1 + i32.load offset=8 i32.const 2 i32.shr_u i32.lt_s - br_if $folding-inner19 - local.get $6 - i32.load offset=4 - local.set $3 + br_if $folding-inner29 local.get $0 i32.load offset=4 - local.set $2 - local.get $0 + local.set $7 + local.get $1 + i32.load offset=4 + local.set $8 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u local.set $1 - loop $for-loop|090 + loop $for-loop|0143 local.get $1 - local.get $9 + local.get $2 i32.gt_s if - local.get $3 - local.get $9 + local.get $2 + local.get $7 i32.add i32.const 255 - local.get $9 + local.get $2 i32.const 2 i32.shl - local.get $2 + local.get $8 i32.add i32.load - local.tee $0 - local.get $0 + local.tee $12 + local.get $12 i32.const 255 i32.gt_u select i32.store8 - local.get $9 + local.get $2 i32.const 1 i32.add - local.set $9 - br $for-loop|090 + local.set $2 + br $for-loop|0143 end end + local.get $0 local.get $6 - local.get $4 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int16Array> i32.const 10 @@ -62621,12 +61930,12 @@ i32.const 63 i32.const 15312 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $6 local.get $0 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> i32.const 0 local.set $1 @@ -62637,7 +61946,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -62648,17 +61957,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 2 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $0 i32.const 0 i32.const 3 call $~lib/typedarray/Int8Array#__set @@ -62672,7 +61981,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -62690,9 +61999,9 @@ i32.const 15344 i32.store end - local.get $2 + local.get $0 i32.load offset=4 - local.get $2 + local.get $0 i32.load offset=8 local.get $1 call $~lib/util/sort/SORT @@ -62700,53 +62009,53 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=4 - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 1 i32.ne - br_if $folding-inner31 - local.get $2 + br_if $folding-inner30 + local.get $0 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 2 i32.ne - br_if $folding-inner32 - local.get $2 + br_if $folding-inner31 + local.get $0 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 3 i32.ne - br_if $folding-inner33 + br_if $folding-inner32 global.get $~lib/memory/__stack_pointer i32.const 15376 i32.store offset=8 - local.get $2 + local.get $0 i32.load offset=4 - local.get $2 + local.get $0 i32.load offset=8 i32.const 15376 call $~lib/util/sort/SORT - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 3 i32.ne - br_if $folding-inner34 - local.get $2 + br_if $folding-inner33 + local.get $0 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 2 i32.ne - br_if $folding-inner35 - local.get $2 + br_if $folding-inner34 + local.get $0 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 1 i32.ne - br_if $folding-inner36 + br_if $folding-inner35 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add @@ -62760,7 +62069,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -62771,17 +62080,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 2 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $0 i32.const 0 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -62795,15 +62104,15 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of184 - block $0of185 - block $outOfRange86 + block $1of1161 + block $0of1162 + block $outOfRange163 global.get $~argumentsLength - br_table $0of185 $1of184 $outOfRange86 + br_table $0of1162 $1of1161 $outOfRange163 end unreachable end @@ -62813,9 +62122,9 @@ i32.const 15408 i32.store end - local.get $2 + local.get $0 i32.load offset=4 - local.get $2 + local.get $0 i32.load offset=8 local.get $1 call $~lib/util/sort/SORT @@ -62823,53 +62132,53 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=4 - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 1 i32.ne - br_if $folding-inner31 - local.get $2 + br_if $folding-inner30 + local.get $0 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 2 i32.ne - br_if $folding-inner32 - local.get $2 + br_if $folding-inner31 + local.get $0 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 3 i32.ne - br_if $folding-inner33 + br_if $folding-inner32 global.get $~lib/memory/__stack_pointer i32.const 15440 i32.store offset=8 - local.get $2 + local.get $0 i32.load offset=4 - local.get $2 + local.get $0 i32.load offset=8 i32.const 15440 call $~lib/util/sort/SORT - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 3 i32.ne - br_if $folding-inner34 - local.get $2 + br_if $folding-inner33 + local.get $0 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 2 i32.ne - br_if $folding-inner35 - local.get $2 + br_if $folding-inner34 + local.get $0 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 1 i32.ne - br_if $folding-inner36 + br_if $folding-inner35 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add @@ -62883,7 +62192,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -62894,17 +62203,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 2 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $0 i32.const 0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -62918,15 +62227,15 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of188 - block $0of189 - block $outOfRange90 + block $1of1164 + block $0of1165 + block $outOfRange166 global.get $~argumentsLength - br_table $0of189 $1of188 $outOfRange90 + br_table $0of1165 $1of1164 $outOfRange166 end unreachable end @@ -62936,9 +62245,9 @@ i32.const 15472 i32.store end - local.get $2 + local.get $0 i32.load offset=4 - local.get $2 + local.get $0 i32.load offset=8 local.get $1 call $~lib/util/sort/SORT @@ -62946,59 +62255,57 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=4 - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 1 i32.ne - br_if $folding-inner31 - local.get $2 + br_if $folding-inner30 + local.get $0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 2 i32.ne - br_if $folding-inner32 - local.get $2 + br_if $folding-inner31 + local.get $0 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 3 i32.ne - br_if $folding-inner33 + br_if $folding-inner32 global.get $~lib/memory/__stack_pointer i32.const 15504 i32.store offset=8 - local.get $2 + local.get $0 i32.load offset=4 - local.get $2 + local.get $0 i32.load offset=8 i32.const 15504 call $~lib/util/sort/SORT - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 3 i32.ne - br_if $folding-inner34 - local.get $2 + br_if $folding-inner33 + local.get $0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 2 i32.ne - br_if $folding-inner35 - local.get $2 + br_if $folding-inner34 + local.get $0 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 1 i32.ne - br_if $folding-inner36 + br_if $folding-inner35 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - i32.const 0 - local.set $1 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -63006,7 +62313,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -63017,23 +62324,25 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 2 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $2 + local.get $0 i32.const 0 i32.const 3 call $~lib/typedarray/Int16Array#__set i32.const 0 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer + i32.const 0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -63041,91 +62350,89 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of192 - block $0of193 - block $outOfRange94 + block $1of1167 + block $0of1168 + block $outOfRange199 global.get $~argumentsLength - br_table $0of193 $1of192 $outOfRange94 + br_table $0of1168 $1of1167 $outOfRange199 end unreachable end i32.const 15536 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 15536 i32.store end - local.get $2 + local.get $0 i32.load offset=4 - local.get $2 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.get $1 + local.get $2 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=4 - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 1 i32.ne - br_if $folding-inner31 - local.get $2 + br_if $folding-inner30 + local.get $0 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 2 i32.ne - br_if $folding-inner32 - local.get $2 + br_if $folding-inner31 + local.get $0 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 3 i32.ne - br_if $folding-inner33 + br_if $folding-inner32 global.get $~lib/memory/__stack_pointer i32.const 15568 i32.store offset=8 - local.get $2 + local.get $0 i32.load offset=4 - local.get $2 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u i32.const 15568 call $~lib/util/sort/SORT - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 3 i32.ne - br_if $folding-inner34 - local.get $2 + br_if $folding-inner33 + local.get $0 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 2 i32.ne - br_if $folding-inner35 - local.get $2 + br_if $folding-inner34 + local.get $0 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 1 i32.ne - br_if $folding-inner36 + br_if $folding-inner35 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - i32.const 0 - local.set $1 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -63133,7 +62440,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -63144,23 +62451,25 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 2 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $2 + local.get $0 i32.const 0 i32.const 3 call $~lib/typedarray/Uint16Array#__set i32.const 0 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer + i32.const 0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -63168,91 +62477,89 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of196 - block $0of197 - block $outOfRange98 + block $1of1202 + block $0of1203 + block $outOfRange204 global.get $~argumentsLength - br_table $0of197 $1of196 $outOfRange98 + br_table $0of1203 $1of1202 $outOfRange204 end unreachable end i32.const 15600 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 15600 i32.store end - local.get $2 + local.get $0 i32.load offset=4 - local.get $2 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.get $1 + local.get $2 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=4 - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 1 i32.ne - br_if $folding-inner31 - local.get $2 + br_if $folding-inner30 + local.get $0 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 2 i32.ne - br_if $folding-inner32 - local.get $2 + br_if $folding-inner31 + local.get $0 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 3 i32.ne - br_if $folding-inner33 + br_if $folding-inner32 global.get $~lib/memory/__stack_pointer i32.const 15632 i32.store offset=8 - local.get $2 + local.get $0 i32.load offset=4 - local.get $2 + local.get $0 i32.load offset=8 i32.const 1 i32.shr_u i32.const 15632 call $~lib/util/sort/SORT - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 3 i32.ne - br_if $folding-inner34 - local.get $2 + br_if $folding-inner33 + local.get $0 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 2 i32.ne - br_if $folding-inner35 - local.get $2 + br_if $folding-inner34 + local.get $0 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 1 i32.ne - br_if $folding-inner36 + br_if $folding-inner35 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - i32.const 0 - local.set $1 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -63260,7 +62567,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -63271,23 +62578,25 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 2 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $2 + local.get $0 i32.const 0 i32.const 3 call $~lib/typedarray/Int32Array#__set i32.const 0 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer + i32.const 0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -63295,91 +62604,89 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of1100 - block $0of1101 - block $outOfRange102 + block $1of1207 + block $0of1208 + block $outOfRange209 global.get $~argumentsLength - br_table $0of1101 $1of1100 $outOfRange102 + br_table $0of1208 $1of1207 $outOfRange209 end unreachable end i32.const 15664 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 15664 i32.store end - local.get $2 + local.get $0 i32.load offset=4 - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.get $1 + local.get $2 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=4 - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 1 i32.ne - br_if $folding-inner31 - local.get $2 + br_if $folding-inner30 + local.get $0 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 2 i32.ne - br_if $folding-inner32 - local.get $2 + br_if $folding-inner31 + local.get $0 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 3 i32.ne - br_if $folding-inner33 + br_if $folding-inner32 global.get $~lib/memory/__stack_pointer i32.const 15696 i32.store offset=8 - local.get $2 + local.get $0 i32.load offset=4 - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u i32.const 15696 call $~lib/util/sort/SORT - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 3 i32.ne - br_if $folding-inner34 - local.get $2 + br_if $folding-inner33 + local.get $0 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 2 i32.ne - br_if $folding-inner35 - local.get $2 + br_if $folding-inner34 + local.get $0 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 1 i32.ne - br_if $folding-inner36 + br_if $folding-inner35 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - i32.const 0 - local.set $1 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -63387,7 +62694,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -63398,23 +62705,25 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 2 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $2 + local.get $0 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $2 + local.get $0 i32.const 0 i32.const 3 call $~lib/typedarray/Uint32Array#__set i32.const 0 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer + i32.const 0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -63422,91 +62731,89 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of1104 - block $0of1105 - block $outOfRange106 + block $1of1212 + block $0of1213 + block $outOfRange214 global.get $~argumentsLength - br_table $0of1105 $1of1104 $outOfRange106 + br_table $0of1213 $1of1212 $outOfRange214 end unreachable end i32.const 15728 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 15728 i32.store end - local.get $2 + local.get $0 i32.load offset=4 - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.get $1 + local.get $2 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=4 - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 1 i32.ne - br_if $folding-inner31 - local.get $2 + br_if $folding-inner30 + local.get $0 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 2 i32.ne - br_if $folding-inner32 - local.get $2 + br_if $folding-inner31 + local.get $0 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 3 i32.ne - br_if $folding-inner33 + br_if $folding-inner32 global.get $~lib/memory/__stack_pointer i32.const 15760 i32.store offset=8 - local.get $2 + local.get $0 i32.load offset=4 - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u i32.const 15760 call $~lib/util/sort/SORT - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 3 i32.ne - br_if $folding-inner34 - local.get $2 + br_if $folding-inner33 + local.get $0 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 2 i32.ne - br_if $folding-inner35 - local.get $2 + br_if $folding-inner34 + local.get $0 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 1 i32.ne - br_if $folding-inner36 + br_if $folding-inner35 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - i32.const 0 - local.set $1 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -63514,7 +62821,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -63525,23 +62832,25 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 2 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $0 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $2 + local.get $0 i32.const 0 i64.const 3 call $~lib/typedarray/Int64Array#__set i32.const 0 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer + i32.const 0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -63549,91 +62858,89 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of1108 - block $0of1109 - block $outOfRange110 + block $1of1217 + block $0of1218 + block $outOfRange219 global.get $~argumentsLength - br_table $0of1109 $1of1108 $outOfRange110 + br_table $0of1218 $1of1217 $outOfRange219 end unreachable end i32.const 15792 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 15792 i32.store end - local.get $2 + local.get $0 i32.load offset=4 - local.get $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.get $1 + local.get $2 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=4 - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 1 i64.ne - br_if $folding-inner31 - local.get $2 + br_if $folding-inner30 + local.get $0 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 2 i64.ne - br_if $folding-inner32 - local.get $2 + br_if $folding-inner31 + local.get $0 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 3 i64.ne - br_if $folding-inner33 + br_if $folding-inner32 global.get $~lib/memory/__stack_pointer i32.const 15824 i32.store offset=8 - local.get $2 + local.get $0 i32.load offset=4 - local.get $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u i32.const 15824 call $~lib/util/sort/SORT - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 3 i64.ne - br_if $folding-inner34 - local.get $2 + br_if $folding-inner33 + local.get $0 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 2 i64.ne - br_if $folding-inner35 - local.get $2 + br_if $folding-inner34 + local.get $0 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 1 i64.ne - br_if $folding-inner36 + br_if $folding-inner35 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - i32.const 0 - local.set $1 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -63641,7 +62948,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -63652,23 +62959,25 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 2 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $0 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $2 + local.get $0 i32.const 0 i64.const 3 call $~lib/typedarray/Uint64Array#__set i32.const 0 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer + i32.const 0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -63676,91 +62985,89 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of1112 - block $0of1113 - block $outOfRange114 + block $1of1222 + block $0of1223 + block $outOfRange224 global.get $~argumentsLength - br_table $0of1113 $1of1112 $outOfRange114 + br_table $0of1223 $1of1222 $outOfRange224 end unreachable end i32.const 15856 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 15856 i32.store end - local.get $2 + local.get $0 i32.load offset=4 - local.get $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.get $1 + local.get $2 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=4 - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 1 i64.ne - br_if $folding-inner31 - local.get $2 + br_if $folding-inner30 + local.get $0 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 2 i64.ne - br_if $folding-inner32 - local.get $2 + br_if $folding-inner31 + local.get $0 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 3 i64.ne - br_if $folding-inner33 + br_if $folding-inner32 global.get $~lib/memory/__stack_pointer i32.const 15888 i32.store offset=8 - local.get $2 + local.get $0 i32.load offset=4 - local.get $2 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u i32.const 15888 call $~lib/util/sort/SORT - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 3 i64.ne - br_if $folding-inner34 - local.get $2 + br_if $folding-inner33 + local.get $0 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 2 i64.ne - br_if $folding-inner35 - local.get $2 + br_if $folding-inner34 + local.get $0 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 1 i64.ne - br_if $folding-inner36 + br_if $folding-inner35 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - i32.const 0 - local.set $1 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -63768,7 +63075,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -63779,23 +63086,25 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 2 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $0 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $2 + local.get $0 i32.const 0 f32.const 3 call $~lib/typedarray/Float32Array#__set i32.const 0 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer + i32.const 0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -63803,85 +63112,85 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $1of1116 - block $0of1117 - block $outOfRange118 + block $1of1227 + block $0of1228 + block $outOfRange229 global.get $~argumentsLength - br_table $0of1117 $1of1116 $outOfRange118 + br_table $0of1228 $1of1227 $outOfRange229 end unreachable end i32.const 15920 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 15920 i32.store end - local.get $2 + local.get $0 i32.load offset=4 - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.get $1 + local.get $2 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=4 - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 1 f32.ne - br_if $folding-inner31 - local.get $2 + br_if $folding-inner30 + local.get $0 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 2 f32.ne - br_if $folding-inner32 - local.get $2 + br_if $folding-inner31 + local.get $0 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 3 f32.ne - br_if $folding-inner33 + br_if $folding-inner32 global.get $~lib/memory/__stack_pointer i32.const 15952 i32.store offset=8 - local.get $2 + local.get $0 i32.load offset=4 - local.get $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u i32.const 15952 call $~lib/util/sort/SORT - local.get $2 + local.get $0 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 3 f32.ne - br_if $folding-inner34 - local.get $2 + br_if $folding-inner33 + local.get $0 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 2 f32.ne - br_if $folding-inner35 - local.get $2 + br_if $folding-inner34 + local.get $0 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 1 f32.ne - br_if $folding-inner36 + br_if $folding-inner35 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add @@ -63893,7 +63202,7 @@ global.get $~lib/memory/__stack_pointer i32.const 16628 i32.lt_s - br_if $folding-inner23 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -63930,19 +63239,19 @@ call $~lib/typedarray/Float64Array#__get f64.const 1 f64.ne - br_if $folding-inner31 + br_if $folding-inner30 local.get $0 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 2 f64.ne - br_if $folding-inner32 + br_if $folding-inner31 local.get $0 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 3 f64.ne - br_if $folding-inner33 + br_if $folding-inner32 global.get $~lib/memory/__stack_pointer i32.const 15984 i32.store offset=8 @@ -63959,19 +63268,19 @@ call $~lib/typedarray/Float64Array#__get f64.const 3 f64.ne - br_if $folding-inner34 + br_if $folding-inner33 local.get $0 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 2 f64.ne - br_if $folding-inner35 + br_if $folding-inner34 local.get $0 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 1 f64.ne - br_if $folding-inner36 + br_if $folding-inner35 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add @@ -63982,12 +63291,12 @@ i32.const 0 i32.gt_s if - loop $while-continue|091 + loop $while-continue|0145176 global.get $~lib/rt/itcms/state if call $~lib/rt/itcms/step drop - br $while-continue|091 + br $while-continue|0145176 end end end @@ -64017,213 +63326,213 @@ global.set $~lib/memory/__stack_pointer return end - i32.const 0 - i32.const 1568 - i32.const 323 - i32.const 3 + i32.const 33040 + i32.const 33088 + i32.const 1 + i32.const 1 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 344 + i32.const 323 i32.const 3 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 345 + i32.const 344 i32.const 3 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 346 + i32.const 345 i32.const 3 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 367 + i32.const 346 i32.const 3 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 438 + i32.const 367 i32.const 3 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 440 + i32.const 388 i32.const 3 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 461 + i32.const 389 i32.const 3 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 463 + i32.const 390 i32.const 3 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 484 + i32.const 438 i32.const 3 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 486 + i32.const 440 i32.const 3 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 507 + i32.const 461 i32.const 3 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 509 + i32.const 463 i32.const 3 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 541 + i32.const 484 i32.const 3 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 675 - i32.const 5 + i32.const 486 + i32.const 3 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 676 - i32.const 5 + i32.const 507 + i32.const 3 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 672 - i32.const 5 + i32.const 509 + i32.const 3 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 673 - i32.const 5 + i32.const 541 + i32.const 3 call $~lib/builtins/abort unreachable end - i32.const 1360 - i32.const 1632 - i32.const 1909 - i32.const 47 + i32.const 0 + i32.const 1568 + i32.const 570 + i32.const 5 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 388 + i32.const 575 i32.const 3 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 389 + i32.const 576 i32.const 3 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 390 + i32.const 577 i32.const 3 call $~lib/builtins/abort unreachable end - i32.const 33040 - i32.const 33088 - i32.const 1 - i32.const 1 + i32.const 0 + i32.const 1568 + i32.const 578 + i32.const 3 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 570 + i32.const 675 i32.const 5 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 575 - i32.const 3 + i32.const 676 + i32.const 5 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 576 - i32.const 3 + i32.const 672 + i32.const 5 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 577 - i32.const 3 + i32.const 673 + i32.const 5 call $~lib/builtins/abort unreachable end i32.const 0 i32.const 1568 - i32.const 578 - i32.const 3 + i32.const 730 + i32.const 5 call $~lib/builtins/abort unreachable end - i32.const 0 - i32.const 1568 - i32.const 730 - i32.const 5 + i32.const 1056 + i32.const 1632 + i32.const 1875 + i32.const 9 call $~lib/builtins/abort unreachable end - i32.const 1056 + i32.const 1360 i32.const 1632 - i32.const 1875 - i32.const 9 + i32.const 1909 + i32.const 47 call $~lib/builtins/abort unreachable end @@ -65071,7 +64380,6 @@ (func $~lib/rt/__newArray (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (local $4 i32) (local $5 i32) - (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -65088,14 +64396,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $4 i32.const 0 i32.store + local.get $4 local.get $0 local.get $1 i32.shl local.tee $4 - local.set $6 + local.set $5 local.get $4 i32.const 0 call $~lib/rt/itcms/__new @@ -65104,10 +64413,9 @@ if local.get $1 local.get $3 - local.get $6 + local.get $5 call $~lib/memory/memory.copy end - local.get $5 local.get $1 i32.store i32.const 16 @@ -65387,15 +64695,15 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $3 + local.get $0 + i32.load offset=4 i32.const 4 local.get $2 local.get $2 i32.const 4 i32.gt_s select - local.tee $4 - local.get $0 - i32.load offset=4 + local.tee $0 i32.add i32.store offset=4 local.get $3 @@ -65406,9 +64714,9 @@ local.get $1 local.get $2 i32.add - local.tee $0 + local.tee $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 i32.gt_s select @@ -65420,13 +64728,13 @@ i32.lt_s select end - local.tee $0 - local.get $4 + local.tee $1 local.get $0 - local.get $4 - i32.gt_s + local.get $0 + local.get $1 + i32.lt_s select - local.get $4 + local.get $0 i32.sub i32.store offset=8 global.get $~lib/memory/__stack_pointer @@ -65479,15 +64787,15 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $3 + local.get $0 + i32.load offset=4 i32.const 4 local.get $2 local.get $2 i32.const 4 i32.gt_s select - local.tee $4 - local.get $0 - i32.load offset=4 + local.tee $0 i32.add i32.store offset=4 local.get $3 @@ -65498,9 +64806,9 @@ local.get $1 local.get $2 i32.add - local.tee $0 + local.tee $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 i32.gt_s select @@ -65512,13 +64820,13 @@ i32.lt_s select end - local.tee $0 - local.get $4 + local.tee $1 local.get $0 - local.get $4 - i32.gt_s + local.get $0 + local.get $1 + i32.lt_s select - local.get $4 + local.get $0 i32.sub i32.store offset=8 global.get $~lib/memory/__stack_pointer @@ -66157,48 +65465,48 @@ i32.shr_u local.tee $0 select - local.tee $1 local.tee $2 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -66206,7 +65514,7 @@ end local.get $0 i32.add - local.tee $2 + local.tee $1 i32.const 1 i32.shl i32.const 1 @@ -66214,8 +65522,8 @@ local.tee $3 i32.store local.get $3 - local.get $1 local.get $2 + local.get $1 call $~lib/util/number/utoa32_dec_lut local.get $0 if @@ -66260,6 +65568,8 @@ i32.shr_u local.tee $2 local.get $2 + i32.const 0 + i32.gt_s select local.tee $3 local.get $1 @@ -66370,46 +65680,47 @@ end global.get $~lib/memory/__stack_pointer local.get $0 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $1 i32.const 100000000 i32.ge_u i32.add diff --git a/tests/compiler/std/uri.optimized.wat b/tests/compiler/std/uri.optimized.wat index 24e8e0f47b..46931f4133 100644 --- a/tests/compiler/std/uri.optimized.wat +++ b/tests/compiler/std/uri.optimized.wat @@ -1458,8 +1458,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -3245,12 +3245,12 @@ if (result i32) i32.const 1 else + local.get $0 local.get $3 i32.const 1 i32.add i32.const 1 i32.shl - local.get $0 i32.add local.tee $4 i32.load16_u @@ -3417,12 +3417,12 @@ if (result i32) i32.const 1 else + local.get $0 local.get $3 i32.const 1 i32.add i32.const 1 i32.shl - local.get $0 i32.add local.tee $7 i32.load16_u @@ -5233,19 +5233,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -5255,15 +5255,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -5286,7 +5287,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -5296,23 +5297,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -5320,7 +5321,7 @@ else i32.const 4336 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1376 @@ -5330,7 +5331,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 4340 @@ -5345,16 +5346,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -5362,11 +5363,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/super-inline.optimized.wat b/tests/compiler/super-inline.optimized.wat index a6026eebc5..f3e3a8db4f 100644 --- a/tests/compiler/super-inline.optimized.wat +++ b/tests/compiler/super-inline.optimized.wat @@ -1068,7 +1068,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $2 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1076,7 +1076,7 @@ memory.size local.tee $1 i32.const 4 - local.get $2 + local.get $3 i32.load offset=1568 local.get $1 i32.const 16 @@ -1091,16 +1091,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $1 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1108,7 +1108,7 @@ unreachable end end - local.get $2 + local.get $3 local.get $1 i32.const 16 i32.shl @@ -1116,7 +1116,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1143,7 +1143,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 @@ -1153,7 +1153,7 @@ i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $2 i32.const 16 i32.ge_u if @@ -1168,13 +1168,13 @@ i32.const 32 i32.add local.tee $4 - local.get $3 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 + local.get $3 local.get $4 call $~lib/rt/tlsf/insertBlock else @@ -1209,8 +1209,8 @@ i32.load offset=8 local.set $2 local.get $1 - global.get $~lib/rt/itcms/white local.get $0 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $1 @@ -1277,11 +1277,11 @@ ) (func $~start (local $0 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1484 i32.lt_s @@ -1424,19 +1424,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1446,15 +1446,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1477,7 +1478,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1487,23 +1488,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1511,7 +1512,7 @@ else i32.const 1440 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1248 @@ -1521,7 +1522,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1444 @@ -1536,16 +1537,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -1553,11 +1554,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/templateliteral.optimized.wat b/tests/compiler/templateliteral.optimized.wat index 04f8866f9d..80e12e962a 100644 --- a/tests/compiler/templateliteral.optimized.wat +++ b/tests/compiler/templateliteral.optimized.wat @@ -1,8 +1,8 @@ (module (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) - (type $i32_=>_i32 (func (param i32) (result i32))) (type $none_=>_none (func)) + (type $i32_=>_i32 (func (param i32) (result i32))) (type $i32_=>_none (func (param i32))) (type $i32_i32_=>_none (func (param i32 i32))) (type $f64_=>_i32 (func (param f64) (result i32))) @@ -326,17 +326,18 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 - local.get $0 + local.get $1 i32.const 22116 i32.lt_u - local.get $0 + local.get $1 i32.load offset=8 select i32.eqz @@ -350,9 +351,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $0 + local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -362,15 +363,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $2 i32.or i32.store offset=4 end @@ -1694,8 +1695,8 @@ i32.load offset=8 local.set $3 local.get $2 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 @@ -2797,40 +2798,40 @@ (local $4 i32) (local $5 i32) (local $6 i32) - local.get $0 - i32.const 20 - i32.sub - i32.load offset=16 - i32.const 2 - i32.shr_u - local.set $4 - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 5732 - i32.lt_s - if - i32.const 22144 - i32.const 22192 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $5 - i64.const 0 - i64.store - local.get $5 - i32.const 0 - i32.store offset=8 - block $__inlined_func$~lib/util/string/joinStringArray + block $__inlined_func$~lib/util/string/joinStringArray (result i32) + local.get $0 + i32.const 20 + i32.sub + i32.load offset=16 + i32.const 2 + i32.shr_u + local.set $5 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 5732 + i32.lt_s + if + i32.const 22144 + i32.const 22192 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $4 + i64.const 0 + i64.store local.get $4 + i32.const 0 + i32.store offset=8 + local.get $5 i32.const 1 i32.sub - local.tee $5 + local.tee $4 i32.const 0 i32.lt_s if @@ -2839,10 +2840,9 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1184 - local.set $1 br $__inlined_func$~lib/util/string/joinStringArray end - local.get $5 + local.get $4 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -2859,12 +2859,11 @@ i32.const 1184 local.get $0 select - local.set $1 br $__inlined_func$~lib/util/string/joinStringArray end loop $for-loop|0 local.get $3 - local.get $4 + local.get $5 i32.lt_s if global.get $~lib/memory/__stack_pointer @@ -2896,26 +2895,26 @@ end end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $1 i32.const 1180 i32.load i32.const 1 i32.shr_u - local.tee $4 + local.tee $1 + local.get $4 i32.mul - local.get $1 i32.add i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $5 i32.store offset=8 i32.const 0 local.set $3 loop $for-loop|1 local.get $3 - local.get $5 + local.get $4 i32.lt_s if global.get $~lib/memory/__stack_pointer @@ -2932,7 +2931,7 @@ local.get $2 i32.const 1 i32.shl - local.get $1 + local.get $5 i32.add local.get $6 local.get $6 @@ -2950,20 +2949,20 @@ i32.add local.set $2 end - local.get $4 + local.get $1 if local.get $2 i32.const 1 i32.shl - local.get $1 + local.get $5 i32.add i32.const 1184 - local.get $4 + local.get $1 i32.const 1 i32.shl call $~lib/memory/memory.copy + local.get $1 local.get $2 - local.get $4 i32.add local.set $2 end @@ -2975,7 +2974,7 @@ end end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 2 i32.shl local.get $0 @@ -2988,7 +2987,7 @@ local.get $2 i32.const 1 i32.shl - local.get $1 + local.get $5 i32.add local.get $0 local.get $0 @@ -3005,8 +3004,8 @@ i32.const 12 i32.add global.set $~lib/memory/__stack_pointer + local.get $5 end - local.get $1 ) (func $~lib/util/number/utoa32_dec_lut (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -3116,25 +3115,25 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 5732 - i32.lt_s - if - i32.const 22144 - i32.const 22192 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/number/itoa32 + block $__inlined_func$~lib/util/number/itoa32 (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 5732 + i32.lt_s + if + i32.const 22144 + i32.const 22192 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store local.get $0 i32.eqz if @@ -3143,7 +3142,6 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 2032 - local.set $0 br $__inlined_func$~lib/util/number/itoa32 end global.get $~lib/memory/__stack_pointer @@ -3154,71 +3152,71 @@ local.get $0 i32.const 31 i32.shr_u - local.tee $1 + local.tee $0 select local.tee $2 - local.tee $0 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.get $1 + local.get $0 i32.add - local.tee $3 + local.tee $1 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store - local.get $0 - local.get $2 local.get $3 - call $~lib/util/number/utoa32_dec_lut + local.get $2 local.get $1 + call $~lib/util/number/utoa32_dec_lut + local.get $0 if - local.get $0 + local.get $3 i32.const 45 i32.store16 end @@ -3226,8 +3224,8 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $3 end - local.get $0 ) (func $~lib/util/number/genDigits (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (result i32) (local $5 i32) @@ -3262,8 +3260,7 @@ i64.shr_u i32.wrap_i64 local.tee $2 - local.set $5 - local.get $2 + local.tee $5 i32.const 100000 i32.lt_u if (result i32) @@ -3659,8 +3656,6 @@ ) (func $~lib/util/number/prettify (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) - (local $4 i32) - (local $5 i32) local.get $2 i32.eqz if @@ -3804,82 +3799,80 @@ i32.const 101 i32.store16 offset=2 local.get $0 + local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $1 + local.tee $0 i32.const 0 i32.lt_s - local.tee $3 + local.tee $2 if i32.const 0 - local.get $1 + local.get $0 i32.sub - local.set $1 + local.set $0 end - local.get $1 - local.tee $4 + local.get $0 + local.get $0 i32.const 100000 i32.lt_u if (result i32) - local.get $4 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $4 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $4 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $4 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $4 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $4 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $4 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $4 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $4 - local.get $1 - local.get $4 i32.const 1 i32.add - local.tee $1 + local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $1 i32.const 45 i32.const 43 - local.get $3 + local.get $2 select i32.store16 offset=4 - local.get $1 + local.get $0 i32.const 2 i32.add else @@ -3902,87 +3895,84 @@ local.get $0 local.get $2 i32.add - local.tee $0 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $0 + local.get $2 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $2 + local.tee $0 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $2 + local.get $0 i32.sub - local.set $2 + local.set $0 end - local.get $2 - local.tee $5 + local.get $0 + local.get $0 i32.const 100000 i32.lt_u if (result i32) - local.get $5 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $5 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $5 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $5 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $5 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $5 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $5 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $5 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $5 - local.get $2 - local.get $5 i32.const 1 i32.add - local.tee $2 + local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $2 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 + local.get $0 local.get $1 - local.get $2 i32.add i32.const 2 i32.add @@ -4274,25 +4264,25 @@ (func $~lib/number/F64#toString (param $0 f64) (result i32) (local $1 i32) (local $2 i32) - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 5732 - i32.lt_s - if - i32.const 22144 - i32.const 22192 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - block $__inlined_func$~lib/util/number/dtoa + block $__inlined_func$~lib/util/number/dtoa (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 5732 + i32.lt_s + if + i32.const 22144 + i32.const 22192 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store local.get $0 f64.const 0 f64.eq @@ -4302,7 +4292,6 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 3776 - local.set $1 br $__inlined_func$~lib/util/number/dtoa end local.get $0 @@ -4320,7 +4309,6 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 3808 - local.set $1 br $__inlined_func$~lib/util/number/dtoa end global.get $~lib/memory/__stack_pointer @@ -4333,77 +4321,76 @@ f64.const 0 f64.lt select - local.set $1 br $__inlined_func$~lib/util/number/dtoa end local.get $0 call $~lib/util/number/dtoa_core i32.const 1 i32.shl - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 - i32.const 3920 local.get $2 + i32.const 3920 + local.get $1 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $2 end - local.get $1 ) (func $start:templateliteral (local $0 i32) (local $1 i32) (local $2 i32) (local $3 i32) - memory.size - i32.const 16 - i32.shl - i32.const 22116 - i32.sub - i32.const 1 - i32.shr_u - global.set $~lib/rt/itcms/threshold - i32.const 1332 - i32.const 1328 - i32.store - i32.const 1336 - i32.const 1328 - i32.store - i32.const 1328 - global.set $~lib/rt/itcms/pinSpace - i32.const 1364 - i32.const 1360 - i32.store - i32.const 1368 - i32.const 1360 - i32.store - i32.const 1360 - global.set $~lib/rt/itcms/toSpace - i32.const 1508 - i32.const 1504 - i32.store - i32.const 1512 - i32.const 1504 - i32.store - i32.const 1504 - global.set $~lib/rt/itcms/fromSpace - global.get $~lib/memory/__stack_pointer - i32.const 24 - i32.sub - global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 + memory.size + i32.const 16 + i32.shl + i32.const 22116 + i32.sub + i32.const 1 + i32.shr_u + global.set $~lib/rt/itcms/threshold + i32.const 1332 + i32.const 1328 + i32.store + i32.const 1336 + i32.const 1328 + i32.store + i32.const 1328 + global.set $~lib/rt/itcms/pinSpace + i32.const 1364 + i32.const 1360 + i32.store + i32.const 1368 + i32.const 1360 + i32.store + i32.const 1360 + global.set $~lib/rt/itcms/toSpace + i32.const 1508 + i32.const 1504 + i32.store + i32.const 1512 + i32.const 1504 + i32.store + i32.const 1504 + global.set $~lib/rt/itcms/fromSpace + global.get $~lib/memory/__stack_pointer + i32.const 24 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 5732 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -4510,7 +4497,7 @@ global.get $~lib/memory/__stack_pointer i32.const 5732 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -4638,7 +4625,7 @@ global.get $~lib/memory/__stack_pointer i32.const 5732 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -4759,208 +4746,7 @@ i32.const 24 i32.add global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 5732 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - local.tee $0 - i64.const 0 - i64.store - local.get $0 - i64.const 0 - i64.store offset=8 - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $0 - i32.const 1088 - i32.store - i32.const 2 - call $~lib/number/I32#toString - local.set $0 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 5072 - i32.store offset=8 - local.get $0 - i32.const 5072 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 31 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 1088 - i32.store offset=8 - i32.const 1088 - i32.const 1088 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 32 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 5104 - i32.store offset=12 - i32.const 2 - call $~lib/number/I32#toString - local.set $0 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=16 - i32.const 5104 - local.get $0 - call $~lib/string/String#concat - local.set $0 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 5136 - i32.store offset=8 - local.get $0 - i32.const 5136 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 33 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 5104 - i32.store offset=12 - i32.const 5104 - i32.const 1088 - call $~lib/string/String#concat - local.set $0 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 5168 - i32.store offset=8 - local.get $0 - i32.const 5168 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 34 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 2 - call $~lib/number/I32#toString - local.set $0 - global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=12 - local.get $1 - i32.const 5200 - i32.store offset=16 - local.get $0 - i32.const 5200 - call $~lib/string/String#concat - local.set $0 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 5232 - i32.store offset=8 - local.get $0 - i32.const 5232 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 35 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 5200 - i32.store offset=16 - i32.const 1088 - i32.const 5200 - call $~lib/string/String#concat - local.set $0 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 5264 - i32.store offset=8 - local.get $0 - i32.const 5264 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 36 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 2 - call $~lib/number/I32#toString - local.set $0 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=12 - local.get $0 - i32.const 1088 - call $~lib/string/String#concat - local.set $0 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 5296 - i32.store offset=8 - local.get $0 - i32.const 5296 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 37 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 20 - i32.add - global.set $~lib/memory/__stack_pointer + call $templateliteral/test_fast_paths_string global.get $~lib/memory/__stack_pointer i32.const 32 i32.sub @@ -4968,7 +4754,7 @@ global.get $~lib/memory/__stack_pointer i32.const 5732 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -5109,7 +4895,7 @@ global.get $~lib/memory/__stack_pointer i32.const 5732 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.tee $0 i64.const 0 @@ -5280,6 +5066,219 @@ global.set $~started call $start:templateliteral ) + (func $templateliteral/test_fast_paths_string + (local $0 i32) + (local $1 i32) + global.get $~lib/memory/__stack_pointer + i32.const 20 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 5732 + i32.lt_s + if + i32.const 22144 + i32.const 22192 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i64.const 0 + i64.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=16 + local.get $0 + i32.const 1088 + i32.store + i32.const 2 + call $~lib/number/I32#toString + local.set $0 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + i32.const 5072 + i32.store offset=8 + local.get $0 + i32.const 5072 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 31 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 1088 + i32.store offset=8 + i32.const 1088 + i32.const 1088 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 32 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 5104 + i32.store offset=12 + i32.const 2 + call $~lib/number/I32#toString + local.set $0 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=16 + i32.const 5104 + local.get $0 + call $~lib/string/String#concat + local.set $0 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + i32.const 5136 + i32.store offset=8 + local.get $0 + i32.const 5136 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 33 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 5104 + i32.store offset=12 + i32.const 5104 + i32.const 1088 + call $~lib/string/String#concat + local.set $0 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + i32.const 5168 + i32.store offset=8 + local.get $0 + i32.const 5168 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 34 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + i32.const 2 + call $~lib/number/I32#toString + local.set $1 + global.get $~lib/memory/__stack_pointer + local.tee $0 + local.get $1 + i32.store offset=12 + local.get $0 + i32.const 5200 + i32.store offset=16 + local.get $1 + i32.const 5200 + call $~lib/string/String#concat + local.set $0 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + i32.const 5232 + i32.store offset=8 + local.get $0 + i32.const 5232 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 35 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 5200 + i32.store offset=16 + i32.const 1088 + i32.const 5200 + call $~lib/string/String#concat + local.set $0 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + i32.const 5264 + i32.store offset=8 + local.get $0 + i32.const 5264 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 36 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + i32.const 2 + call $~lib/number/I32#toString + local.set $0 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=12 + local.get $0 + i32.const 1088 + call $~lib/string/String#concat + local.set $0 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + i32.const 5296 + i32.store offset=8 + local.get $0 + i32.const 5296 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 1120 + i32.const 37 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 20 + i32.add + global.set $~lib/memory/__stack_pointer + ) (func $templateliteral/Ref#toString (param $0 i32) (result i32) (local $1 i32) global.get $~lib/memory/__stack_pointer @@ -5350,9 +5349,9 @@ local.get $1 local.get $0 i32.load offset=4 - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.eqz if local.get $0 @@ -5364,34 +5363,47 @@ return end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 local.get $0 i32.load local.tee $0 i32.store offset=4 - local.get $1 local.get $2 + local.get $1 call $templateliteral/RecursiveObject#toString local.tee $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 5616 i32.store offset=12 - i32.const 5616 - i32.const 1 + i32.const 5620 + local.get $0 + i32.store local.get $0 - call $~lib/staticarray/StaticArray<~lib/string/String>#__uset + if + i32.const 5616 + local.get $0 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end global.get $~lib/memory/__stack_pointer i32.const 5616 i32.store offset=12 - i32.const 5616 - i32.const 3 + i32.const 5628 local.get $1 - call $~lib/staticarray/StaticArray<~lib/string/String>#__uset + i32.store + local.get $1 + if + i32.const 5616 + local.get $1 + i32.const 1 + call $byn-split-outlined-A$~lib/rt/itcms/__link + end global.get $~lib/memory/__stack_pointer + local.tee $0 i32.const 5616 i32.store offset=12 - global.get $~lib/memory/__stack_pointer + local.get $0 i32.const 1184 i32.store offset=16 i32.const 5616 diff --git a/tests/compiler/throw.optimized.wat b/tests/compiler/throw.optimized.wat index 0e045db816..5a851961ed 100644 --- a/tests/compiler/throw.optimized.wat +++ b/tests/compiler/throw.optimized.wat @@ -968,147 +968,145 @@ (func $~start (local $0 i32) (local $1 i32) - block $__inlined_func$start:throw + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub + global.set $~lib/memory/__stack_pointer + block $folding-inner0 global.get $~lib/memory/__stack_pointer + i32.const 1756 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $0 + i64.const 0 + i64.store + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 1056 + i32.store + local.get $0 + i32.const 1216 + i32.store offset=8 + local.get $0 i32.const 12 + i32.add + global.set $~lib/memory/__stack_pointer + i32.const 0 + local.set $0 + global.get $~lib/memory/__stack_pointer + i32.const 16 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner0 - global.get $~lib/memory/__stack_pointer - i32.const 1756 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $0 - i64.const 0 - i64.store - local.get $0 - i32.const 0 - i32.store offset=8 - local.get $0 - i32.const 1056 - i32.store - local.get $0 - i32.const 1216 - i32.store offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 1756 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + local.tee $1 + i64.const 0 + i64.store + local.get $1 + i64.const 0 + i64.store offset=8 + local.get $1 + i32.const 1056 + i32.store + loop $while-continue|0 local.get $0 - i32.const 12 + i32.const 1 i32.add - global.set $~lib/memory/__stack_pointer - i32.const 0 - local.set $0 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1756 + local.tee $0 + i32.const 10 i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $1 - i64.const 0 - i64.store - local.get $1 - i64.const 0 - i64.store offset=8 - local.get $1 - i32.const 1056 - i32.store - loop $while-continue|0 + if + global.get $~lib/memory/__stack_pointer + i32.const 1088 + i32.store offset=4 local.get $0 - i32.const 1 - i32.add - local.tee $0 i32.const 10 - i32.lt_s + i32.gt_s if global.get $~lib/memory/__stack_pointer - i32.const 1088 - i32.store offset=4 - local.get $0 - i32.const 10 - i32.gt_s - if - global.get $~lib/memory/__stack_pointer - i32.const 1216 - i32.store offset=8 - i32.const 1248 - i32.const 1168 - i32.const 23 - i32.const 7 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 1296 + i32.const 1216 i32.store offset=8 - br $while-continue|0 - end - end - global.get $~lib/memory/__stack_pointer - local.tee $0 - i32.const 1328 - i32.store offset=12 - local.get $0 - i32.const 16 - i32.add - global.set $~lib/memory/__stack_pointer - i32.const 1348 - i32.const 1344 - i32.store - i32.const 1352 - i32.const 1344 - i32.store - i32.const 1344 - global.set $~lib/rt/itcms/pinSpace - i32.const 1444 - i32.const 1440 - i32.store - i32.const 1448 - i32.const 1440 - i32.store - i32.const 1440 - global.set $~lib/rt/itcms/toSpace - i32.const 1588 - i32.const 1584 - i32.store - i32.const 1592 - i32.const 1584 - i32.store - i32.const 1584 - global.set $~lib/rt/itcms/fromSpace - memory.size - drop - global.get $~lib/rt/itcms/state - i32.const 0 - i32.gt_s - if - loop $while-continue|00 - global.get $~lib/rt/itcms/state - if - call $~lib/rt/itcms/step - br $while-continue|00 - end + i32.const 1248 + i32.const 1168 + i32.const 23 + i32.const 7 + call $~lib/builtins/abort + unreachable end + global.get $~lib/memory/__stack_pointer + i32.const 1296 + i32.store offset=8 + br $while-continue|0 end - call $~lib/rt/itcms/step - loop $while-continue|1 + end + global.get $~lib/memory/__stack_pointer + local.tee $0 + i32.const 1328 + i32.store offset=12 + local.get $0 + i32.const 16 + i32.add + global.set $~lib/memory/__stack_pointer + i32.const 1348 + i32.const 1344 + i32.store + i32.const 1352 + i32.const 1344 + i32.store + i32.const 1344 + global.set $~lib/rt/itcms/pinSpace + i32.const 1444 + i32.const 1440 + i32.store + i32.const 1448 + i32.const 1440 + i32.store + i32.const 1440 + global.set $~lib/rt/itcms/toSpace + i32.const 1588 + i32.const 1584 + i32.store + i32.const 1592 + i32.const 1584 + i32.store + i32.const 1584 + global.set $~lib/rt/itcms/fromSpace + memory.size + drop + global.get $~lib/rt/itcms/state + i32.const 0 + i32.gt_s + if + loop $while-continue|07 global.get $~lib/rt/itcms/state if call $~lib/rt/itcms/step - br $while-continue|1 + br $while-continue|07 end end - br $__inlined_func$start:throw end - i32.const 18160 - i32.const 18208 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable + call $~lib/rt/itcms/step + loop $while-continue|1 + global.get $~lib/rt/itcms/state + if + call $~lib/rt/itcms/step + br $while-continue|1 + end + end + return end + i32.const 18160 + i32.const 18208 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) (local $1 i32) diff --git a/tests/compiler/typeof.optimized.wat b/tests/compiler/typeof.optimized.wat index ec7708c66c..fbc742a580 100644 --- a/tests/compiler/typeof.optimized.wat +++ b/tests/compiler/typeof.optimized.wat @@ -1787,8 +1787,8 @@ i32.load offset=8 local.set $3 local.get $0 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $0 @@ -1942,19 +1942,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1964,15 +1964,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1995,7 +1996,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -2005,23 +2006,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -2029,7 +2030,7 @@ else i32.const 1792 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1552 @@ -2039,7 +2040,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1796 @@ -2054,16 +2055,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -2071,11 +2072,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/wasi/trace.optimized.wat b/tests/compiler/wasi/trace.optimized.wat index 3ea907354d..80d0aa26d7 100644 --- a/tests/compiler/wasi/trace.optimized.wat +++ b/tests/compiler/wasi/trace.optimized.wat @@ -1168,76 +1168,75 @@ (local $7 i64) (local $8 i32) (local $9 i32) - (local $10 i64) - (local $11 i32) + (local $10 i32) + (local $11 i64) (local $12 i64) (local $13 i64) local.get $2 local.get $1 i64.sub - local.set $10 + local.set $12 local.get $2 i64.const 1 i32.const 0 local.get $3 i32.sub - local.tee $11 + local.tee $10 i64.extend_i32_s local.tee $1 i64.shl - local.tee $12 + local.tee $13 i64.const 1 i64.sub - local.tee $13 + local.tee $11 i64.and local.set $7 local.get $2 local.get $1 i64.shr_u i32.wrap_i64 + local.tee $3 local.tee $6 - local.set $3 - local.get $6 i32.const 100000 i32.lt_u if (result i32) - local.get $3 + local.get $6 i32.const 100 i32.lt_u if (result i32) - local.get $3 + local.get $6 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $3 + local.get $6 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $3 + local.get $6 i32.const 1000 i32.ge_u i32.add end else - local.get $3 + local.get $6 i32.const 10000000 i32.lt_u if (result i32) - local.get $3 + local.get $6 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $3 + local.get $6 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $3 + local.get $6 i32.const 100000000 i32.ge_u i32.add @@ -1266,107 +1265,107 @@ i32.sub br_table $case9|1 $case8|1 $case7|1 $case6|1 $case5|1 $case4|1 $case3|1 $case2|1 $case1|1 $case0|1 $case10|1 end - local.get $6 + local.get $3 i32.const 1000000000 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 1000000000 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 + local.get $3 i32.const 100000000 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 100000000 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 + local.get $3 i32.const 10000000 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 10000000 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 + local.get $3 i32.const 1000000 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 1000000 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 + local.get $3 i32.const 100000 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 100000 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 + local.get $3 i32.const 10000 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 10000 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 + local.get $3 i32.const 1000 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 1000 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 + local.get $3 i32.const 100 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 100 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 + local.get $3 i32.const 10 i32.div_u - local.set $3 - local.get $6 + local.set $6 + local.get $3 i32.const 10 i32.rem_u - local.set $6 + local.set $3 br $break|1 end - local.get $6 - local.set $3 - i32.const 0 + local.get $3 local.set $6 + i32.const 0 + local.set $3 br $break|1 end i32.const 0 - local.set $3 + local.set $6 end - local.get $3 local.get $5 + local.get $6 i32.or if local.get $5 @@ -1379,7 +1378,7 @@ i32.shl local.get $0 i32.add - local.get $3 + local.get $6 i32.const 65535 i32.and i32.const 48 @@ -1390,16 +1389,16 @@ i32.const 1 i32.sub local.set $9 + local.get $4 local.get $7 - local.get $6 + local.get $3 i64.extend_i32_u - local.get $11 + local.get $10 i64.extend_i32_s i64.shl i64.add local.tee $1 - local.get $4 - i64.le_u + i64.ge_u if local.get $9 global.get $~lib/util/number/_K @@ -1411,7 +1410,7 @@ i32.const 2200 i32.add i64.load32_u - local.get $11 + local.get $10 i64.extend_i32_s i64.shl local.set $2 @@ -1424,10 +1423,10 @@ i32.add local.tee $0 i32.load16_u - local.set $3 + local.set $6 loop $while-continue|3 local.get $1 - local.get $10 + local.get $12 i64.lt_u local.get $2 local.get $4 @@ -1436,28 +1435,28 @@ i64.le_u i32.and if (result i32) - local.get $10 + local.get $12 local.get $1 i64.sub local.get $1 local.get $2 i64.add local.tee $7 - local.get $10 + local.get $12 i64.sub i64.gt_u local.get $7 - local.get $10 + local.get $12 i64.lt_u i32.or else i32.const 0 end if - local.get $3 + local.get $6 i32.const 1 i32.sub - local.set $3 + local.set $6 local.get $1 local.get $2 i64.add @@ -1466,7 +1465,7 @@ end end local.get $0 - local.get $3 + local.get $6 i32.store16 local.get $5 return @@ -1474,7 +1473,7 @@ br $while-continue|0 end end - loop $while-continue|4 + loop $while-continue|4 (result i32) local.get $4 i64.const 10 i64.mul @@ -1483,7 +1482,7 @@ i64.const 10 i64.mul local.tee $1 - local.get $11 + local.get $10 i64.extend_i32_s i64.shr_u local.tee $2 @@ -1515,85 +1514,85 @@ i32.const 1 i32.sub local.set $9 - local.get $4 local.get $1 - local.get $13 + local.get $11 i64.and local.tee $7 - i64.le_u + local.get $4 + i64.ge_u br_if $while-continue|4 - end - local.get $9 - global.get $~lib/util/number/_K - i32.add - global.set $~lib/util/number/_K - local.get $7 - local.set $1 - i32.const 0 - local.get $9 - i32.sub - i32.const 2 - i32.shl - i32.const 2200 - i32.add - i64.load32_u - local.get $10 - i64.mul - local.set $2 - local.get $5 - i32.const 1 - i32.sub - i32.const 1 - i32.shl - local.get $0 - i32.add - local.tee $0 - i32.load16_u - local.set $3 - loop $while-continue|6 - local.get $1 - local.get $2 - i64.lt_u + local.get $9 + global.get $~lib/util/number/_K + i32.add + global.set $~lib/util/number/_K + local.get $7 + local.set $1 + i32.const 0 + local.get $9 + i32.sub + i32.const 2 + i32.shl + i32.const 2200 + i32.add + i64.load32_u local.get $12 - local.get $4 - local.get $1 - i64.sub - i64.le_u - i32.and - if (result i32) - local.get $2 - local.get $1 - i64.sub + i64.mul + local.set $2 + local.get $5 + i32.const 1 + i32.sub + i32.const 1 + i32.shl + local.get $0 + i32.add + local.tee $0 + i32.load16_u + local.set $6 + loop $while-continue|6 local.get $1 - local.get $12 - i64.add - local.tee $7 - local.get $2 - i64.sub - i64.gt_u local.get $2 - local.get $7 - i64.gt_u - i32.or - else - i32.const 0 - end - if - local.get $3 - i32.const 1 - i32.sub - local.set $3 + i64.lt_u + local.get $13 + local.get $4 local.get $1 - local.get $12 - i64.add - local.set $1 - br $while-continue|6 + i64.sub + i64.le_u + i32.and + if (result i32) + local.get $2 + local.get $1 + i64.sub + local.get $1 + local.get $13 + i64.add + local.tee $7 + local.get $2 + i64.sub + i64.gt_u + local.get $2 + local.get $7 + i64.gt_u + i32.or + else + i32.const 0 + end + if + local.get $6 + i32.const 1 + i32.sub + local.set $6 + local.get $1 + local.get $13 + i64.add + local.set $1 + br $while-continue|6 + end end + local.get $0 + local.get $6 + i32.store16 + local.get $5 end - local.get $0 - local.get $3 - i32.store16 - local.get $5 ) (func $~lib/util/memory/memcpy (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -2574,8 +2573,6 @@ ) (func $~lib/util/number/prettify (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) - (local $4 i32) - (local $5 i32) local.get $2 i32.eqz if @@ -2719,82 +2716,80 @@ i32.const 101 i32.store16 offset=2 local.get $0 + local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $1 + local.tee $0 i32.const 0 i32.lt_s - local.tee $3 + local.tee $2 if i32.const 0 - local.get $1 + local.get $0 i32.sub - local.set $1 + local.set $0 end - local.get $1 - local.tee $4 + local.get $0 + local.get $0 i32.const 100000 i32.lt_u if (result i32) - local.get $4 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $4 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $4 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $4 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $4 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $4 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $4 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $4 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $4 - local.get $1 - local.get $4 i32.const 1 i32.add - local.tee $1 + local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $1 i32.const 45 i32.const 43 - local.get $3 + local.get $2 select i32.store16 offset=4 - local.get $1 + local.get $0 i32.const 2 i32.add else @@ -2817,87 +2812,84 @@ local.get $0 local.get $2 i32.add - local.tee $0 + local.tee $2 i32.const 101 i32.store16 offset=2 - local.get $0 + local.get $2 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $2 + local.tee $0 i32.const 0 i32.lt_s local.tee $3 if i32.const 0 - local.get $2 + local.get $0 i32.sub - local.set $2 + local.set $0 end - local.get $2 - local.tee $5 + local.get $0 + local.get $0 i32.const 100000 i32.lt_u if (result i32) - local.get $5 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $5 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $5 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $5 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $5 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $5 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $5 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $5 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.set $5 - local.get $2 - local.get $5 i32.const 1 i32.add - local.tee $2 + local.tee $0 call $~lib/util/number/utoa32_dec_lut - local.get $0 + local.get $2 i32.const 45 i32.const 43 local.get $3 select i32.store16 offset=4 + local.get $0 local.get $1 - local.get $2 i32.add i32.const 2 i32.add diff --git a/tests/compiler/while.optimized.wat b/tests/compiler/while.optimized.wat index 75f1aa39f6..14c81558dd 100644 --- a/tests/compiler/while.optimized.wat +++ b/tests/compiler/while.optimized.wat @@ -998,314 +998,314 @@ (local $0 i32) (local $1 i32) (local $2 i32) - i32.const 10 - local.set $0 - loop $while-continue|0 + block $folding-inner0 + i32.const 10 + local.set $0 + loop $while-continue|0 + local.get $0 + if + local.get $0 + i32.const 1 + i32.sub + local.set $0 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $while-continue|0 + end + end local.get $0 if - local.get $0 - i32.const 1 - i32.sub - local.set $0 - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $while-continue|0 + i32.const 0 + i32.const 1056 + i32.const 10 + i32.const 3 + call $~lib/builtins/abort + unreachable end - end - local.get $0 - if - i32.const 0 - i32.const 1056 + local.get $2 i32.const 10 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 10 - i32.ne - if + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 11 + i32.const 3 + call $~lib/builtins/abort + unreachable + end i32.const 0 - i32.const 1056 - i32.const 11 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.set $2 - i32.const 10 - local.set $0 - loop $while-continue|00 + local.set $2 + i32.const 10 + local.set $0 + loop $while-continue|00 + local.get $0 + if + local.get $0 + i32.const 1 + i32.sub + local.set $0 + local.get $1 + i32.const 1 + i32.add + local.set $1 + loop $while-continue|1 + local.get $0 + if + local.get $0 + i32.const 1 + i32.sub + local.set $0 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $while-continue|1 + end + end + local.get $0 + if + i32.const 0 + i32.const 1056 + i32.const 29 + i32.const 5 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 9 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 30 + i32.const 5 + call $~lib/builtins/abort + unreachable + end + br $while-continue|00 + end + end local.get $0 if + i32.const 0 + i32.const 1056 + i32.const 32 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 1 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 33 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 9 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 34 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + local.set $2 + i32.const 1 + local.set $0 + loop $while-continue|01 local.get $0 + local.tee $1 i32.const 1 i32.sub local.set $0 local.get $1 - i32.const 1 - i32.add - local.set $1 - loop $while-continue|1 - local.get $0 - if - local.get $0 - i32.const 1 - i32.sub - local.set $0 - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $while-continue|1 - end - end - local.get $0 - if - i32.const 0 - i32.const 1056 - i32.const 29 - i32.const 5 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 9 - i32.ne - if + if (result i32) + local.get $2 + i32.const 1 + i32.add + local.tee $2 + else i32.const 0 - i32.const 1056 - i32.const 30 - i32.const 5 - call $~lib/builtins/abort - unreachable end - br $while-continue|00 + br_if $while-continue|01 end - end - local.get $0 - if - i32.const 0 - i32.const 1056 - i32.const 32 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 33 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 9 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 34 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.set $2 - i32.const 1 - local.set $0 - loop $while-continue|01 local.get $0 - local.tee $1 + i32.const -1 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 45 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $2 i32.const 1 - i32.sub + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 46 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + i32.const 0 local.set $0 - local.get $1 - if (result i32) - local.get $2 + loop $while-continue|02 + local.get $0 i32.const 1 i32.add - local.tee $2 - else - i32.const 0 + local.tee $0 + i32.const 10 + i32.ne + br_if $while-continue|02 end - br_if $while-continue|01 - end - local.get $0 - i32.const -1 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 45 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 46 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.set $0 - loop $while-continue|02 local.get $0 - i32.const 1 - i32.add - local.tee $0 i32.const 10 i32.ne - br_if $while-continue|02 - end - local.get $0 - i32.const 10 - i32.ne - if + if + i32.const 0 + i32.const 1056 + i32.const 58 + i32.const 3 + call $~lib/builtins/abort + unreachable + end i32.const 0 - i32.const 1056 - i32.const 58 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.set $0 - loop $while-continue|03 - local.get $0 - i32.const 1 - i32.add - local.tee $0 + local.set $0 + loop $while-continue|03 (result i32) + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.const 10 + i32.ne + br_if $while-continue|03 + local.get $0 + end i32.const 10 i32.ne - br_if $while-continue|03 - end - local.get $0 - i32.const 10 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 72 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - i32.const 10 - local.set $0 - loop $while-continue|04 - local.get $0 if - local.get $0 + i32.const 0 + i32.const 1056 + i32.const 72 i32.const 1 - i32.sub - local.set $0 - br $while-continue|04 + call $~lib/builtins/abort + unreachable + end + i32.const 10 + local.set $0 + loop $while-continue|04 + local.get $0 + if + local.get $0 + i32.const 1 + i32.sub + local.set $0 + br $while-continue|04 + end end - end - local.get $0 - if - i32.const 0 - i32.const 1056 - i32.const 117 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - i32.const 10 - local.set $0 - i32.const 10 - local.set $2 - loop $while-continue|05 local.get $0 if - loop $while-continue|16 - local.get $2 - if + i32.const 0 + i32.const 1056 + i32.const 117 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + i32.const 10 + local.set $0 + i32.const 10 + local.set $2 + loop $while-continue|05 + local.get $0 + if + loop $while-continue|16 local.get $2 - i32.const 1 - i32.sub - local.set $2 - br $while-continue|16 + if + local.get $2 + i32.const 1 + i32.sub + local.set $2 + br $while-continue|16 + end end + local.get $0 + i32.const 1 + i32.sub + local.set $0 + br $while-continue|05 end - local.get $0 - i32.const 1 - i32.sub - local.set $0 - br $while-continue|05 end - end - local.get $0 - if - i32.const 0 - i32.const 1056 - i32.const 135 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $2 - if + local.get $0 + if + i32.const 0 + i32.const 1056 + i32.const 135 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + local.get $2 + if + i32.const 0 + i32.const 1056 + i32.const 136 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + memory.size + i32.const 16 + i32.shl + i32.const 17908 + i32.sub + i32.const 1 + i32.shr_u + global.set $~lib/rt/itcms/threshold + i32.const 1220 + i32.const 1216 + i32.store + i32.const 1224 + i32.const 1216 + i32.store + i32.const 1216 + global.set $~lib/rt/itcms/pinSpace + i32.const 1252 + i32.const 1248 + i32.store + i32.const 1256 + i32.const 1248 + i32.store + i32.const 1248 + global.set $~lib/rt/itcms/toSpace + i32.const 1396 + i32.const 1392 + i32.store + i32.const 1400 + i32.const 1392 + i32.store + i32.const 1392 + global.set $~lib/rt/itcms/fromSpace i32.const 0 - i32.const 1056 - i32.const 136 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - memory.size - i32.const 16 - i32.shl - i32.const 17908 - i32.sub - i32.const 1 - i32.shr_u - global.set $~lib/rt/itcms/threshold - i32.const 1220 - i32.const 1216 - i32.store - i32.const 1224 - i32.const 1216 - i32.store - i32.const 1216 - global.set $~lib/rt/itcms/pinSpace - i32.const 1252 - i32.const 1248 - i32.store - i32.const 1256 - i32.const 1248 - i32.store - i32.const 1248 - global.set $~lib/rt/itcms/toSpace - i32.const 1396 - i32.const 1392 - i32.store - i32.const 1400 - i32.const 1392 - i32.store - i32.const 1392 - global.set $~lib/rt/itcms/fromSpace - i32.const 0 - local.set $2 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - block $folding-inner0 + local.set $1 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 1524 i32.lt_s @@ -1316,30 +1316,30 @@ i32.store local.get $0 call $while/Ref#constructor - local.tee $0 + local.tee $2 i32.store - loop $while-continue|07 - local.get $0 + loop $while-continue|06 + local.get $2 if - local.get $2 + local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $1 i32.const 10 i32.eq if i32.const 0 - local.set $0 + local.set $2 else global.get $~lib/memory/__stack_pointer call $while/Ref#constructor - local.tee $0 + local.tee $2 i32.store end - br $while-continue|07 + br $while-continue|06 end end - local.get $2 + local.get $1 i32.const 10 i32.ne if @@ -1350,7 +1350,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 if i32.const 0 i32.const 1056 @@ -1364,7 +1364,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -1379,28 +1379,28 @@ i32.store local.get $0 call $while/Ref#constructor - local.tee $0 + local.tee $2 i32.store - loop $while-continue|06 + loop $while-continue|08 call $while/Ref#constructor if - block $while-break|07 - local.get $2 + block $while-break|09 + local.get $1 i32.const 1 i32.add - local.tee $2 + local.tee $1 i32.const 10 i32.eq if i32.const 0 - local.set $0 - br $while-break|07 + local.set $2 + br $while-break|09 end - br $while-continue|06 + br $while-continue|08 end end end - local.get $2 + local.get $1 i32.const 10 i32.ne if @@ -1411,7 +1411,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 if i32.const 0 i32.const 1056 @@ -1426,25 +1426,25 @@ global.set $~lib/memory/__stack_pointer i32.const 0 local.set $0 - loop $while-continue|08 + loop $while-continue|07 local.get $0 i32.const 1 i32.add local.tee $0 i32.const 1 i32.lt_s - br_if $while-continue|08 + br_if $while-continue|07 end i32.const 0 local.set $0 - loop $while-continue|010 + loop $while-continue|09 local.get $0 i32.const 1 i32.add local.tee $0 i32.const 1 i32.lt_s - br_if $while-continue|010 + br_if $while-continue|09 end i32.const 0 local.set $0 @@ -1472,23 +1472,23 @@ i32.const 0 i32.gt_s if - loop $while-continue|012 + loop $while-continue|011 global.get $~lib/rt/itcms/state if call $~lib/rt/itcms/step drop - br $while-continue|012 + br $while-continue|011 end end end call $~lib/rt/itcms/step drop - loop $while-continue|113 + loop $while-continue|112 global.get $~lib/rt/itcms/state if call $~lib/rt/itcms/step drop - br $while-continue|113 + br $while-continue|112 end end global.get $~lib/rt/itcms/total @@ -1762,8 +1762,8 @@ i32.load offset=8 local.set $3 local.get $0 - global.get $~lib/rt/itcms/white local.get $1 + global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $0 @@ -1809,19 +1809,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $1 + local.get $0 i32.eq if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz if i32.const 0 @@ -1831,15 +1831,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 + local.get $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $0 + local.tee $2 i32.eqz if i32.const 0 @@ -1862,7 +1863,7 @@ end local.get $1 i32.load offset=8 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1872,23 +1873,23 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $2 + local.get $1 i32.store offset=8 - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $2 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.le_u if (result i32) @@ -1896,7 +1897,7 @@ else i32.const 1488 i32.load - local.get $0 + local.get $1 i32.lt_u if i32.const 1296 @@ -1906,7 +1907,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 1492 @@ -1921,16 +1922,16 @@ else i32.const 2 end - local.set $0 + local.set $1 local.get $2 i32.load offset=8 local.set $3 - local.get $1 local.get $0 + local.get $1 local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $0 local.get $3 i32.store offset=8 local.get $3 @@ -1938,11 +1939,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $1 + local.get $0 i32.or i32.store offset=4 local.get $2 - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 From 01cf56ab4da4ffe98a9b64dbaa0f2a88ece57960 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Fri, 24 Sep 2021 01:55:55 +0300 Subject: [PATCH 22/54] better --- src/module.ts | 1 + tests/compiler/NonNullable.optimized.wat | 6 +- tests/compiler/builtins.optimized.wat | 6 +- tests/compiler/call-super.optimized.wat | 118 +- tests/compiler/class-implements.optimized.wat | 93 +- .../class-overloading-cast.optimized.wat | 99 +- .../compiler/class-overloading.optimized.wat | 99 +- tests/compiler/class.optimized.wat | 152 +- tests/compiler/constructor.optimized.wat | 118 +- tests/compiler/do.optimized.wat | 107 +- .../empty-exportruntime.optimized.wat | 115 +- tests/compiler/empty-new.optimized.wat | 93 +- tests/compiler/exports.optimized.wat | 93 +- .../exportstar-rereexport.optimized.wat | 113 +- .../extends-baseaggregate.optimized.wat | 242 +- .../compiler/extends-recursive.optimized.wat | 75 +- tests/compiler/features/simd.optimized.wat | 6 +- .../field-initialization.optimized.wat | 106 +- tests/compiler/field.optimized.wat | 255 +- tests/compiler/for.optimized.wat | 107 +- tests/compiler/function-call.optimized.wat | 107 +- .../function-expression.optimized.wat | 91 +- tests/compiler/function-types.optimized.wat | 7 +- tests/compiler/getter-call.optimized.wat | 107 +- tests/compiler/heap.optimized.wat | 196 +- .../implicit-getter-setter.optimized.wat | 75 +- tests/compiler/infer-array.optimized.wat | 293 +- tests/compiler/infer-generic.optimized.wat | 111 +- tests/compiler/inlining.optimized.wat | 154 +- tests/compiler/instanceof-class.optimized.wat | 93 +- tests/compiler/issues/1095.optimized.wat | 79 +- tests/compiler/issues/1225.optimized.wat | 107 +- tests/compiler/issues/1699.optimized.wat | 270 +- tests/compiler/logical.optimized.wat | 107 +- tests/compiler/managed-cast.optimized.wat | 93 +- tests/compiler/memcpy.optimized.wat | 84 +- tests/compiler/new.optimized.wat | 93 +- tests/compiler/number.optimized.wat | 280 +- tests/compiler/object-literal.optimized.wat | 151 +- .../optional-typeparameters.optimized.wat | 93 +- tests/compiler/reexport.optimized.wat | 93 +- tests/compiler/rereexport.optimized.wat | 113 +- tests/compiler/resolve-access.optimized.wat | 271 +- tests/compiler/resolve-binary.optimized.wat | 332 +- .../resolve-elementaccess.optimized.wat | 400 +- .../resolve-function-expression.optimized.wat | 118 +- tests/compiler/resolve-nested.optimized.wat | 93 +- tests/compiler/resolve-new.optimized.wat | 107 +- .../resolve-propertyaccess.optimized.wat | 164 +- tests/compiler/resolve-ternary.optimized.wat | 260 +- tests/compiler/resolve-unary.optimized.wat | 164 +- tests/compiler/rt/finalize.optimized.wat | 107 +- tests/compiler/rt/instanceof.optimized.wat | 93 +- .../runtime-incremental-export.optimized.wat | 115 +- .../rt/runtime-minimal-export.optimized.wat | 161 +- .../rt/runtime-stub-export.optimized.wat | 20 +- tests/compiler/std-wasi/console.optimized.wat | 309 +- tests/compiler/std-wasi/crypto.optimized.wat | 304 +- tests/compiler/std-wasi/process.optimized.wat | 485 +- tests/compiler/std/array-access.optimized.wat | 19 +- .../compiler/std/array-literal.optimized.wat | 108 +- tests/compiler/std/array.optimized.wat | 2569 ++- tests/compiler/std/arraybuffer.optimized.wat | 184 +- tests/compiler/std/dataview.optimized.wat | 160 +- tests/compiler/std/date.optimized.wat | 935 +- tests/compiler/std/map.optimized.wat | 6461 +++--- tests/compiler/std/math.optimized.wat | 1851 +- tests/compiler/std/mod.optimized.wat | 142 +- tests/compiler/std/new.optimized.wat | 115 +- tests/compiler/std/object.optimized.wat | 6 +- .../std/operator-overloading.optimized.wat | 221 +- tests/compiler/std/pointer.optimized.wat | 94 +- tests/compiler/std/set.optimized.wat | 2555 ++- tests/compiler/std/static-array.optimized.wat | 230 +- tests/compiler/std/staticarray.optimized.wat | 793 +- .../std/string-casemapping.optimized.wat | 1232 +- .../std/string-encoding.optimized.wat | 306 +- tests/compiler/std/string.optimized.wat | 1049 +- tests/compiler/std/symbol.optimized.wat | 210 +- tests/compiler/std/typedarray.optimized.wat | 17739 ++++++++-------- tests/compiler/std/uri.optimized.wat | 374 +- tests/compiler/super-inline.optimized.wat | 93 +- tests/compiler/templateliteral.optimized.wat | 486 +- tests/compiler/throw.optimized.wat | 81 +- tests/compiler/typeof.optimized.wat | 113 +- tests/compiler/wasi/abort.optimized.wat | 32 +- tests/compiler/wasi/trace.optimized.wat | 346 +- tests/compiler/while.optimized.wat | 107 +- 88 files changed, 23356 insertions(+), 23559 deletions(-) diff --git a/src/module.ts b/src/module.ts index f1a322d5c7..d0f614eec0 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2366,6 +2366,7 @@ export class Module { } else { passes.push("precompute"); } + passes.push("ssa-nomerge"); passes.push("directize"); // replace indirect with direct calls passes.push("dae-optimizing"); // reduce arity passes.push("inlining-optimizing"); // and inline if possible diff --git a/tests/compiler/NonNullable.optimized.wat b/tests/compiler/NonNullable.optimized.wat index 7d8d404b30..3e45916c50 100644 --- a/tests/compiler/NonNullable.optimized.wat +++ b/tests/compiler/NonNullable.optimized.wat @@ -109,14 +109,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end diff --git a/tests/compiler/builtins.optimized.wat b/tests/compiler/builtins.optimized.wat index a699bb0ef9..d59379e408 100644 --- a/tests/compiler/builtins.optimized.wat +++ b/tests/compiler/builtins.optimized.wat @@ -165,14 +165,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end diff --git a/tests/compiler/call-super.optimized.wat b/tests/compiler/call-super.optimized.wat index 272c066c50..22604b56d6 100644 --- a/tests/compiler/call-super.optimized.wat +++ b/tests/compiler/call-super.optimized.wat @@ -501,9 +501,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -550,6 +547,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1127,18 +1127,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $4 + local.get $0 + i32.const 16 + i32.add local.tee $3 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1149,13 +1148,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $3 i32.const 19 i32.add i32.const -16 @@ -1163,32 +1162,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $5 i32.add else - local.get $4 + local.get $5 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1204,16 +1203,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $3 local.get $2 - local.get $5 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1221,7 +1220,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1229,8 +1228,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1247,7 +1246,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $5 i32.lt_u if i32.const 0 @@ -1257,13 +1256,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $4 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1276,40 +1275,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $4 + local.get $5 i32.sub - local.tee $6 + local.tee $3 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $4 + local.get $5 i32.or i32.store - local.get $4 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 - local.get $6 + local.tee $5 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -2226,19 +2225,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -2248,16 +2247,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -2280,7 +2278,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2290,23 +2288,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -2314,7 +2312,7 @@ else i32.const 1488 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1296 @@ -2324,7 +2322,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1492 @@ -2339,28 +2337,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/class-implements.optimized.wat b/tests/compiler/class-implements.optimized.wat index 5dd7aa0c53..697a246187 100644 --- a/tests/compiler/class-implements.optimized.wat +++ b/tests/compiler/class-implements.optimized.wat @@ -529,9 +529,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -578,6 +575,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -990,13 +990,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1006,9 +1006,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1078,7 +1078,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1086,7 +1086,7 @@ memory.size local.tee $1 i32.const 4 - local.get $3 + local.get $2 i32.load offset=1568 local.get $1 i32.const 16 @@ -1101,16 +1101,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1118,7 +1118,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $1 i32.const 16 i32.shl @@ -1126,7 +1126,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1153,22 +1153,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $2 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1177,19 +1177,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $2 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1572,19 +1572,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1594,16 +1594,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1626,7 +1625,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1636,23 +1635,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1660,7 +1659,7 @@ else i32.const 1504 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1670,7 +1669,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1508 @@ -1685,28 +1684,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/class-overloading-cast.optimized.wat b/tests/compiler/class-overloading-cast.optimized.wat index 1a9d683f96..60036ef8ca 100644 --- a/tests/compiler/class-overloading-cast.optimized.wat +++ b/tests/compiler/class-overloading-cast.optimized.wat @@ -549,9 +549,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -598,6 +595,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1010,13 +1010,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1026,9 +1026,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1098,7 +1098,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1106,7 +1106,7 @@ memory.size local.tee $1 i32.const 4 - local.get $3 + local.get $2 i32.load offset=1568 local.get $1 i32.const 16 @@ -1121,16 +1121,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1138,7 +1138,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $1 i32.const 16 i32.shl @@ -1146,7 +1146,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1173,22 +1173,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $2 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1197,19 +1197,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $2 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1360,14 +1360,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -1876,19 +1876,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1898,16 +1898,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1930,7 +1929,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1940,23 +1939,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1964,7 +1963,7 @@ else i32.const 1616 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1974,7 +1973,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1620 @@ -1989,28 +1988,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/class-overloading.optimized.wat b/tests/compiler/class-overloading.optimized.wat index 0de89ef3b0..1ccd39849e 100644 --- a/tests/compiler/class-overloading.optimized.wat +++ b/tests/compiler/class-overloading.optimized.wat @@ -579,9 +579,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -628,6 +625,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1040,13 +1040,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1056,9 +1056,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1128,7 +1128,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1136,7 +1136,7 @@ memory.size local.tee $1 i32.const 4 - local.get $3 + local.get $2 i32.load offset=1568 local.get $1 i32.const 16 @@ -1151,16 +1151,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1168,7 +1168,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $1 i32.const 16 i32.shl @@ -1176,7 +1176,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1203,22 +1203,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $2 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1227,19 +1227,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $2 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1390,14 +1390,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -3013,19 +3013,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -3035,16 +3035,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -3067,7 +3066,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -3077,23 +3076,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -3101,7 +3100,7 @@ else i32.const 1792 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1280 @@ -3111,7 +3110,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1796 @@ -3126,28 +3125,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/class.optimized.wat b/tests/compiler/class.optimized.wat index a23a1f7d2c..30f36062c1 100644 --- a/tests/compiler/class.optimized.wat +++ b/tests/compiler/class.optimized.wat @@ -113,18 +113,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17972 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -138,9 +137,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -150,15 +149,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -199,20 +198,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -644,9 +643,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -693,6 +689,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1446,18 +1445,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $3 + local.get $0 + i32.const 16 + i32.add local.tee $4 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1468,13 +1466,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $4 i32.const 19 i32.add i32.const -16 @@ -1482,32 +1480,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1523,16 +1521,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1540,7 +1538,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1548,8 +1546,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1566,7 +1564,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -1576,13 +1574,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1595,40 +1593,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -1717,7 +1715,7 @@ i32.const 4 i32.const 4 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer i32.const 8 @@ -1735,98 +1733,98 @@ i32.const 16 i32.const 5 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $4 i32.store - local.get $3 + local.get $4 i32.const 0 i32.store - local.get $3 + local.get $4 i32.const 0 i32.store offset=4 - local.get $3 + local.get $4 i32.const 0 i32.store offset=8 - local.get $3 + local.get $4 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 32 i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $2 i32.store offset=4 - local.get $4 + local.get $2 i32.const 32 call $~lib/memory/memory.fill - local.get $3 local.get $4 + local.get $2 i32.store - local.get $4 + local.get $2 if - local.get $3 + local.get $4 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white - local.get $4 + local.get $2 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $3 + local.get $4 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $1 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $1 + local.get $0 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $1 i32.const 3 i32.eq i32.and if - local.get $1 + local.get $0 call $~lib/rt/itcms/Object#makeGray end end end end - local.get $3 local.get $4 + local.get $2 i32.store offset=4 - local.get $3 + local.get $4 i32.const 32 i32.store offset=8 - local.get $3 + local.get $4 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 local.get $3 + local.get $4 i32.store - local.get $3 + local.get $4 if - local.get $2 + local.get $3 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white - local.get $3 + local.get $4 i32.const 20 i32.sub local.tee $0 @@ -1835,7 +1833,7 @@ i32.and i32.eq if - local.get $2 + local.get $3 i32.const 20 i32.sub i32.load offset=4 diff --git a/tests/compiler/constructor.optimized.wat b/tests/compiler/constructor.optimized.wat index 9d4d7ecc44..23d8925d13 100644 --- a/tests/compiler/constructor.optimized.wat +++ b/tests/compiler/constructor.optimized.wat @@ -611,9 +611,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -660,6 +657,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1237,18 +1237,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $4 + local.get $0 + i32.const 16 + i32.add local.tee $3 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1259,13 +1258,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $3 i32.const 19 i32.add i32.const -16 @@ -1273,32 +1272,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $5 i32.add else - local.get $4 + local.get $5 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1314,16 +1313,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $3 local.get $2 - local.get $5 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1331,7 +1330,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1339,8 +1338,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1357,7 +1356,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $5 i32.lt_u if i32.const 0 @@ -1367,13 +1366,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $4 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1386,40 +1385,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $4 + local.get $5 i32.sub - local.tee $6 + local.tee $3 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $4 + local.get $5 i32.or i32.store - local.get $4 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 - local.get $6 + local.tee $5 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -2117,19 +2116,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -2139,16 +2138,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -2171,7 +2169,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2181,23 +2179,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -2205,7 +2203,7 @@ else i32.const 1488 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -2215,7 +2213,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1492 @@ -2230,28 +2228,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/do.optimized.wat b/tests/compiler/do.optimized.wat index 7f7bfbcc4d..e6939e3ca3 100644 --- a/tests/compiler/do.optimized.wat +++ b/tests/compiler/do.optimized.wat @@ -501,9 +501,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -550,6 +547,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -962,13 +962,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -978,9 +978,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1501,7 +1501,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1555,7 +1555,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1563,7 +1563,7 @@ memory.size local.tee $0 i32.const 4 - local.get $1 + local.get $3 i32.load offset=1568 local.get $0 i32.const 16 @@ -1578,16 +1578,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $0 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1595,7 +1595,7 @@ unreachable end end - local.get $1 + local.get $3 local.get $0 i32.const 16 i32.shl @@ -1603,7 +1603,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1630,22 +1630,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if local.get $0 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1654,19 +1654,19 @@ local.get $0 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1678,8 +1678,8 @@ i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.load i32.const -3 i32.and @@ -1692,11 +1692,11 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 local.set $3 local.get $0 - local.get $1 + local.get $2 global.get $~lib/rt/itcms/white i32.or i32.store offset=4 @@ -1711,7 +1711,7 @@ local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1723,7 +1723,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $2 + local.get $1 local.get $0 i32.const 20 i32.add @@ -1743,19 +1743,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1765,16 +1765,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1797,7 +1796,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1807,23 +1806,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1831,7 +1830,7 @@ else i32.const 1472 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1280 @@ -1841,7 +1840,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1476 @@ -1856,28 +1855,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/empty-exportruntime.optimized.wat b/tests/compiler/empty-exportruntime.optimized.wat index 1ecc400228..d8690db61b 100644 --- a/tests/compiler/empty-exportruntime.optimized.wat +++ b/tests/compiler/empty-exportruntime.optimized.wat @@ -168,10 +168,10 @@ local.get $0 call $~lib/rt/itcms/Object#unlink global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -179,7 +179,7 @@ else i32.const 1568 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1248 @@ -189,7 +189,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 1572 @@ -204,27 +204,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -649,9 +649,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -698,6 +695,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1275,18 +1275,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $4 + local.get $0 + i32.const 16 + i32.add local.tee $3 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1297,13 +1296,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $3 i32.const 19 i32.add i32.const -16 @@ -1311,32 +1310,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $5 i32.add else - local.get $4 + local.get $5 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1352,16 +1351,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $3 local.get $2 - local.get $5 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1369,7 +1368,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1377,8 +1376,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1395,7 +1394,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $5 i32.lt_u if i32.const 0 @@ -1405,13 +1404,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $4 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1424,40 +1423,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $4 + local.get $5 i32.sub - local.tee $6 + local.tee $3 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $4 + local.get $5 i32.or i32.store - local.get $4 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 - local.get $6 + local.tee $5 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -1756,7 +1755,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $2 + local.tee $1 i32.load offset=4 i32.const 3 i32.and @@ -1774,33 +1773,33 @@ i32.const 1 i32.eq if - local.get $2 + local.get $1 call $~lib/rt/itcms/Object#makeGray else - local.get $2 + local.get $1 call $~lib/rt/itcms/Object#unlink global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $0 i32.load offset=8 - local.set $0 - local.get $2 + local.set $2 local.get $1 + local.get $0 global.get $~lib/rt/itcms/white i32.or i32.store offset=4 + local.get $1 local.get $2 - local.get $0 i32.store offset=8 - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 + local.get $0 local.get $1 - local.get $2 i32.store offset=8 end ) diff --git a/tests/compiler/empty-new.optimized.wat b/tests/compiler/empty-new.optimized.wat index 1a1cc24f49..81be916577 100644 --- a/tests/compiler/empty-new.optimized.wat +++ b/tests/compiler/empty-new.optimized.wat @@ -497,9 +497,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -546,6 +543,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -958,13 +958,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -974,9 +974,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1107,7 +1107,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1115,7 +1115,7 @@ memory.size local.tee $0 i32.const 4 - local.get $1 + local.get $2 i32.load offset=1568 local.get $0 i32.const 16 @@ -1130,16 +1130,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $1 local.get $0 - local.get $2 + local.get $1 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $1 memory.grow i32.const 0 i32.lt_s @@ -1147,7 +1147,7 @@ unreachable end end - local.get $1 + local.get $2 local.get $0 i32.const 16 i32.shl @@ -1155,7 +1155,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1182,22 +1182,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $2 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $1 i32.const 16 i32.ge_u if local.get $0 - local.get $2 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1206,19 +1206,19 @@ local.get $0 i32.const 32 i32.add - local.tee $2 - local.get $3 + local.tee $3 + local.get $1 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 local.get $2 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $2 + local.get $3 i32.const -2 i32.and i32.store @@ -1284,19 +1284,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1306,16 +1306,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1338,7 +1337,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1348,23 +1347,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1372,7 +1371,7 @@ else i32.const 1440 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1382,7 +1381,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1444 @@ -1397,28 +1396,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/exports.optimized.wat b/tests/compiler/exports.optimized.wat index e01425c2cb..0f798b9d71 100644 --- a/tests/compiler/exports.optimized.wat +++ b/tests/compiler/exports.optimized.wat @@ -551,9 +551,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -600,6 +597,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1012,13 +1012,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1028,9 +1028,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1100,7 +1100,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1108,7 +1108,7 @@ memory.size local.tee $1 i32.const 4 - local.get $3 + local.get $2 i32.load offset=1568 local.get $1 i32.const 16 @@ -1123,16 +1123,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1140,7 +1140,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $1 i32.const 16 i32.shl @@ -1148,7 +1148,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1175,22 +1175,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $2 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1199,19 +1199,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $2 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1623,19 +1623,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1645,16 +1645,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1677,7 +1676,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1687,23 +1686,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1711,7 +1710,7 @@ else i32.const 1440 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1721,7 +1720,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1444 @@ -1736,28 +1735,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/exportstar-rereexport.optimized.wat b/tests/compiler/exportstar-rereexport.optimized.wat index a21b20d668..bcc664d717 100644 --- a/tests/compiler/exportstar-rereexport.optimized.wat +++ b/tests/compiler/exportstar-rereexport.optimized.wat @@ -561,9 +561,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -610,6 +607,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1022,13 +1022,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1038,9 +1038,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1245,7 +1245,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1299,7 +1299,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1307,7 +1307,7 @@ memory.size local.tee $0 i32.const 4 - local.get $1 + local.get $3 i32.load offset=1568 local.get $0 i32.const 16 @@ -1322,16 +1322,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $0 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1339,7 +1339,7 @@ unreachable end end - local.get $1 + local.get $3 local.get $0 i32.const 16 i32.shl @@ -1347,7 +1347,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1374,22 +1374,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if local.get $0 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1398,19 +1398,19 @@ local.get $0 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1422,8 +1422,8 @@ i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.load i32.const -3 i32.and @@ -1436,11 +1436,11 @@ i32.const 4 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 local.set $3 local.get $0 - local.get $1 + local.get $2 global.get $~lib/rt/itcms/white i32.or i32.store offset=4 @@ -1455,7 +1455,7 @@ local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1476,7 +1476,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1487,17 +1487,17 @@ local.get $0 i32.const 0 i32.store8 offset=2 - local.get $1 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $2 i32.const 3 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $1 local.get $0 i32.store local.get $0 @@ -1520,19 +1520,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1542,16 +1542,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1574,7 +1573,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1584,23 +1583,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1608,7 +1607,7 @@ else i32.const 1536 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1296 @@ -1618,7 +1617,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1540 @@ -1633,28 +1632,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/extends-baseaggregate.optimized.wat b/tests/compiler/extends-baseaggregate.optimized.wat index b5428a8730..cf9ac09eb9 100644 --- a/tests/compiler/extends-baseaggregate.optimized.wat +++ b/tests/compiler/extends-baseaggregate.optimized.wat @@ -119,18 +119,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 18156 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -144,9 +143,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -156,15 +155,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -205,20 +204,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -650,9 +649,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -699,6 +695,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1452,18 +1451,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $3 + local.get $0 + i32.const 16 + i32.add local.tee $4 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1474,13 +1472,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $4 i32.const 19 i32.add i32.const -16 @@ -1488,32 +1486,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1529,16 +1527,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1546,7 +1544,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1554,8 +1552,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1572,7 +1570,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -1582,13 +1580,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1601,40 +1599,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -2160,95 +2158,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -2279,39 +2277,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 @@ -2820,19 +2818,19 @@ i32.store offset=4 i32.const 1180 i32.load - local.tee $2 + local.tee $1 i32.const 1 i32.add - local.tee $3 - local.tee $1 + local.tee $2 + local.tee $5 i32.const 1176 i32.load - local.tee $5 + local.tee $4 i32.const 2 i32.shr_u i32.gt_u if - local.get $1 + local.get $5 i32.const 268435455 i32.gt_u if @@ -2843,11 +2841,11 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $4 i32.const 1168 i32.load - local.tee $4 - local.get $5 + local.tee $3 + local.get $4 i32.const 1 i32.shl local.tee $6 @@ -2857,51 +2855,51 @@ i32.lt_u select local.tee $6 - local.get $1 + local.get $5 i32.const 8 - local.get $1 + local.get $5 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $1 - local.get $1 + local.tee $5 + local.get $5 local.get $6 i32.lt_u select - local.tee $6 + local.tee $5 call $~lib/rt/itcms/__renew - local.tee $1 + local.tee $6 i32.add - local.get $6 local.get $5 + local.get $4 i32.sub call $~lib/memory/memory.fill - local.get $1 - local.get $4 + local.get $3 + local.get $6 i32.ne if i32.const 1168 - local.get $1 + local.get $6 i32.store i32.const 1172 - local.get $1 + local.get $6 i32.store - local.get $1 + local.get $6 if - local.get $1 + local.get $6 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end end i32.const 1176 - local.get $6 + local.get $5 i32.store end i32.const 1172 i32.load - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add @@ -2914,7 +2912,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end i32.const 1180 - local.get $3 + local.get $2 i32.store global.get $~lib/memory/__stack_pointer i32.const 8 @@ -2954,7 +2952,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $2 + local.tee $0 i32.load offset=4 i32.const 3 i32.and @@ -2964,13 +2962,13 @@ i32.load i32.const 3 i32.and - local.tee $0 + local.tee $2 global.get $~lib/rt/itcms/white i32.eqz i32.eq if i32.const 1148 - local.get $2 + local.get $0 local.get $1 select call $~lib/rt/itcms/Object#makeGray @@ -2978,12 +2976,12 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $2 i32.const 3 i32.eq i32.and if - local.get $2 + local.get $0 call $~lib/rt/itcms/Object#makeGray end end diff --git a/tests/compiler/extends-recursive.optimized.wat b/tests/compiler/extends-recursive.optimized.wat index 4654e175f5..0ffb90e7b3 100644 --- a/tests/compiler/extends-recursive.optimized.wat +++ b/tests/compiler/extends-recursive.optimized.wat @@ -108,18 +108,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17868 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -133,9 +132,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -145,15 +144,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -194,20 +193,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -639,9 +638,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -688,6 +684,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1100,13 +1099,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1116,9 +1115,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1188,7 +1187,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1196,7 +1195,7 @@ memory.size local.tee $1 i32.const 4 - local.get $3 + local.get $2 i32.load offset=1568 local.get $1 i32.const 16 @@ -1211,16 +1210,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1228,7 +1227,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $1 i32.const 16 i32.shl @@ -1236,7 +1235,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1263,22 +1262,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $2 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1287,19 +1286,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $2 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store diff --git a/tests/compiler/features/simd.optimized.wat b/tests/compiler/features/simd.optimized.wat index 5b06cd3c04..36d83a0895 100644 --- a/tests/compiler/features/simd.optimized.wat +++ b/tests/compiler/features/simd.optimized.wat @@ -437,9 +437,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -486,6 +483,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 diff --git a/tests/compiler/field-initialization.optimized.wat b/tests/compiler/field-initialization.optimized.wat index 8cc0273fd6..2e626d3b3d 100644 --- a/tests/compiler/field-initialization.optimized.wat +++ b/tests/compiler/field-initialization.optimized.wat @@ -126,18 +126,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 18380 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -151,9 +150,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -163,15 +162,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -212,20 +211,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -657,9 +656,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -706,6 +702,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1459,18 +1458,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $3 + local.get $0 + i32.const 16 + i32.add local.tee $4 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1481,13 +1479,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $4 i32.const 19 i32.add i32.const -16 @@ -1495,32 +1493,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1536,16 +1534,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1553,7 +1551,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1561,8 +1559,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1579,7 +1577,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -1589,13 +1587,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1608,40 +1606,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -1796,14 +1794,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end diff --git a/tests/compiler/field.optimized.wat b/tests/compiler/field.optimized.wat index 4555d26413..52e883a138 100644 --- a/tests/compiler/field.optimized.wat +++ b/tests/compiler/field.optimized.wat @@ -104,18 +104,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17908 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -129,9 +128,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -141,15 +140,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -190,20 +189,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -635,9 +634,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -684,6 +680,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1261,18 +1260,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $4 + local.get $0 + i32.const 16 + i32.add local.tee $3 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1283,13 +1281,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $3 i32.const 19 i32.add i32.const -16 @@ -1297,32 +1295,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $5 i32.add else - local.get $4 + local.get $5 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1338,16 +1336,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $3 local.get $2 - local.get $5 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1355,7 +1353,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1363,8 +1361,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1381,7 +1379,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $5 i32.lt_u if i32.const 0 @@ -1391,13 +1389,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $4 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1410,40 +1408,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $4 + local.get $5 i32.sub - local.tee $6 + local.tee $3 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $4 + local.get $5 i32.or i32.store - local.get $4 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 - local.get $6 + local.tee $5 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -1693,7 +1691,7 @@ i32.const 3 i32.and i32.const 0 - local.get $4 + local.get $5 select if local.get $0 @@ -1710,10 +1708,10 @@ local.get $3 i32.load8_u i32.store8 - local.get $4 + local.get $5 i32.const 1 i32.sub - local.set $4 + local.set $5 br $while-continue|0 end end @@ -1723,7 +1721,7 @@ i32.eqz if loop $while-continue|1 - local.get $4 + local.get $5 i32.const 16 i32.ge_u if @@ -1751,14 +1749,14 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|1 end end - local.get $4 + local.get $5 i32.const 8 i32.and if @@ -1779,7 +1777,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 4 i32.and if @@ -1796,7 +1794,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 2 i32.and if @@ -1813,7 +1811,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 1 i32.and if @@ -1824,7 +1822,7 @@ end return end - local.get $4 + local.get $5 i32.const 32 i32.ge_u if @@ -1841,7 +1839,7 @@ end local.get $1 i32.load - local.set $5 + local.set $4 local.get $0 local.get $1 i32.load8_u @@ -1868,12 +1866,12 @@ local.get $3 i32.load8_u i32.store8 - local.get $4 + local.get $5 i32.const 3 i32.sub - local.set $4 + local.set $5 loop $while-continue|3 - local.get $4 + local.get $5 i32.const 17 i32.ge_u if @@ -1883,7 +1881,7 @@ local.tee $2 i32.const 8 i32.shl - local.get $5 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -1913,7 +1911,7 @@ local.get $0 local.get $1 i32.load offset=13 - local.tee $5 + local.tee $4 i32.const 8 i32.shl local.get $2 @@ -1929,10 +1927,10 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|3 end end @@ -1940,7 +1938,7 @@ end local.get $1 i32.load - local.set $5 + local.set $4 local.get $0 local.get $1 i32.load8_u @@ -1959,12 +1957,12 @@ local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $5 i32.const 2 i32.sub - local.set $4 + local.set $5 loop $while-continue|4 - local.get $4 + local.get $5 i32.const 18 i32.ge_u if @@ -1974,7 +1972,7 @@ local.tee $2 i32.const 16 i32.shl - local.get $5 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -2004,7 +2002,7 @@ local.get $0 local.get $1 i32.load offset=14 - local.tee $5 + local.tee $4 i32.const 16 i32.shl local.get $2 @@ -2020,10 +2018,10 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|4 end end @@ -2031,7 +2029,7 @@ end local.get $1 i32.load - local.set $5 + local.set $4 local.get $0 local.tee $2 i32.const 1 @@ -2046,12 +2044,12 @@ local.get $3 i32.load8_u i32.store8 - local.get $4 + local.get $5 i32.const 1 i32.sub - local.set $4 + local.set $5 loop $while-continue|5 - local.get $4 + local.get $5 i32.const 19 i32.ge_u if @@ -2061,7 +2059,7 @@ local.tee $2 i32.const 24 i32.shl - local.get $5 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -2091,7 +2089,7 @@ local.get $0 local.get $1 i32.load offset=15 - local.tee $5 + local.tee $4 i32.const 24 i32.shl local.get $2 @@ -2107,16 +2105,16 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|5 end end end end - local.get $4 + local.get $5 i32.const 16 i32.and if @@ -2235,7 +2233,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 8 i32.and if @@ -2298,7 +2296,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 4 i32.and if @@ -2333,7 +2331,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 2 i32.and if @@ -2356,7 +2354,7 @@ i32.load8_u offset=1 i32.store8 offset=1 end - local.get $4 + local.get $5 i32.const 1 i32.and if @@ -2461,17 +2459,17 @@ i32.sub local.set $6 local.get $0 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 br $while-continue|0 @@ -2506,17 +2504,17 @@ local.get $6 if local.get $0 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 local.get $6 @@ -2596,33 +2594,29 @@ end end local.get $5 - local.tee $1 i32.store i32.const 16 i32.const 4 call $~lib/rt/itcms/__new - local.tee $0 - local.get $1 + local.tee $1 + local.get $5 i32.store - local.get $0 - local.set $3 - local.get $1 - local.tee $2 + local.get $5 if - local.get $3 + local.get $1 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white - local.get $2 + local.get $5 i32.const 20 i32.sub - local.tee $5 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $3 + local.get $1 i32.const 20 i32.sub i32.load offset=4 @@ -2633,7 +2627,7 @@ i32.eqz i32.eq if - local.get $5 + local.get $0 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state @@ -2644,19 +2638,19 @@ i32.eq i32.and if - local.get $5 + local.get $0 call $~lib/rt/itcms/Object#makeGray end end end end - local.get $0 local.get $1 + local.get $5 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -2664,25 +2658,25 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $4 - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.store - local.get $0 + local.get $1 if - local.get $1 + local.get $0 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white - local.get $0 + local.get $1 i32.const 20 i32.sub - local.tee $2 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=4 @@ -2693,7 +2687,7 @@ i32.eqz i32.eq if - local.get $2 + local.get $1 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state @@ -2704,7 +2698,7 @@ i32.eq i32.and if - local.get $2 + local.get $1 call $~lib/rt/itcms/Object#makeGray end end @@ -2757,21 +2751,20 @@ return end local.get $0 - local.tee $1 i32.load offset=4 - local.tee $2 + local.tee $1 local.get $0 i32.load offset=12 i32.const 2 i32.shl i32.add - local.set $0 + local.set $2 loop $while-continue|0 - local.get $0 + local.get $1 local.get $2 - i32.gt_u + i32.lt_u if - local.get $2 + local.get $1 i32.load local.tee $3 if @@ -2781,14 +2774,14 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $2 + local.get $1 i32.const 4 i32.add - local.set $2 + local.set $1 br $while-continue|0 end end - local.get $1 + local.get $0 i32.load local.tee $0 if diff --git a/tests/compiler/for.optimized.wat b/tests/compiler/for.optimized.wat index a3d1e9f8dc..51efd3785d 100644 --- a/tests/compiler/for.optimized.wat +++ b/tests/compiler/for.optimized.wat @@ -501,9 +501,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -550,6 +547,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -962,13 +962,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -978,9 +978,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1497,7 +1497,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1551,7 +1551,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1559,7 +1559,7 @@ memory.size local.tee $0 i32.const 4 - local.get $1 + local.get $3 i32.load offset=1568 local.get $0 i32.const 16 @@ -1574,16 +1574,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $0 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1591,7 +1591,7 @@ unreachable end end - local.get $1 + local.get $3 local.get $0 i32.const 16 i32.shl @@ -1599,7 +1599,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1626,22 +1626,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if local.get $0 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1650,19 +1650,19 @@ local.get $0 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1674,8 +1674,8 @@ i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.load i32.const -3 i32.and @@ -1688,11 +1688,11 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 local.set $3 local.get $0 - local.get $1 + local.get $2 global.get $~lib/rt/itcms/white i32.or i32.store offset=4 @@ -1707,7 +1707,7 @@ local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1719,7 +1719,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $2 + local.get $1 local.get $0 i32.const 20 i32.add @@ -1739,19 +1739,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1761,16 +1761,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1793,7 +1792,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1803,23 +1802,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1827,7 +1826,7 @@ else i32.const 1472 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1280 @@ -1837,7 +1836,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1476 @@ -1852,28 +1851,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/function-call.optimized.wat b/tests/compiler/function-call.optimized.wat index e8f2033a31..ab0ddc4f4d 100644 --- a/tests/compiler/function-call.optimized.wat +++ b/tests/compiler/function-call.optimized.wat @@ -542,9 +542,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -591,6 +588,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1003,13 +1003,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1019,9 +1019,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1193,7 +1193,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1247,7 +1247,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1255,7 +1255,7 @@ memory.size local.tee $0 i32.const 4 - local.get $1 + local.get $3 i32.load offset=1568 local.get $0 i32.const 16 @@ -1270,16 +1270,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $0 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1287,7 +1287,7 @@ unreachable end end - local.get $1 + local.get $3 local.get $0 i32.const 16 i32.shl @@ -1295,7 +1295,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1322,22 +1322,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if local.get $0 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1346,19 +1346,19 @@ local.get $0 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1370,8 +1370,8 @@ i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.load i32.const -3 i32.and @@ -1384,11 +1384,11 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 local.set $3 local.get $0 - local.get $1 + local.get $2 global.get $~lib/rt/itcms/white i32.or i32.store offset=4 @@ -1403,7 +1403,7 @@ local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1415,7 +1415,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $2 + local.get $1 local.get $0 i32.const 20 i32.add @@ -1490,19 +1490,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1512,16 +1512,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1544,7 +1543,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1554,23 +1553,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1578,7 +1577,7 @@ else i32.const 1760 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1472 @@ -1588,7 +1587,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1764 @@ -1603,28 +1602,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/function-expression.optimized.wat b/tests/compiler/function-expression.optimized.wat index 1803df373a..0782a1e7a6 100644 --- a/tests/compiler/function-expression.optimized.wat +++ b/tests/compiler/function-expression.optimized.wat @@ -172,18 +172,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 18580 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -197,9 +196,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -209,15 +208,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -258,20 +257,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -703,9 +702,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -752,6 +748,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1164,13 +1163,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1180,9 +1179,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1252,7 +1251,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1260,7 +1259,7 @@ memory.size local.tee $0 i32.const 4 - local.get $1 + local.get $2 i32.load offset=1568 local.get $0 i32.const 16 @@ -1275,16 +1274,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $1 local.get $0 - local.get $2 + local.get $1 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $1 memory.grow i32.const 0 i32.lt_s @@ -1292,7 +1291,7 @@ unreachable end end - local.get $1 + local.get $2 local.get $0 i32.const 16 i32.shl @@ -1300,7 +1299,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1327,22 +1326,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $2 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $1 i32.const 16 i32.ge_u if local.get $0 - local.get $2 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1351,19 +1350,19 @@ local.get $0 i32.const 32 i32.add - local.tee $2 - local.get $3 + local.tee $3 + local.get $1 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 local.get $2 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $2 + local.get $3 i32.const -2 i32.and i32.store @@ -1820,14 +1819,12 @@ i32.store local.get $0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2032 i32.store - local.get $0 - local.set $1 - local.get $0 + local.get $1 i32.eqz if i32.const 0 @@ -1850,7 +1847,7 @@ i32.load offset=4 i32.const 3 i32.and - local.tee $1 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq @@ -1861,7 +1858,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $1 + local.get $0 i32.const 3 i32.eq i32.and @@ -1875,10 +1872,10 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.load i32.load call_indirect $0 (type $none_=>_i32) diff --git a/tests/compiler/function-types.optimized.wat b/tests/compiler/function-types.optimized.wat index ea2e0791c3..7b0fd33255 100644 --- a/tests/compiler/function-types.optimized.wat +++ b/tests/compiler/function-types.optimized.wat @@ -40,6 +40,7 @@ ) (func $~start (local $0 i32) + (local $1 i32) block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -107,13 +108,13 @@ end global.get $~lib/memory/__stack_pointer global.get $function-types/i32Adder - local.tee $0 + local.tee $1 i32.store i32.const 2 global.set $~argumentsLength i32.const 2 i32.const 3 - local.get $0 + local.get $1 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 5 @@ -165,8 +166,6 @@ end i32.const 2 global.set $~argumentsLength - i32.const 0 - local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub diff --git a/tests/compiler/getter-call.optimized.wat b/tests/compiler/getter-call.optimized.wat index 3b0fdb08cb..0554f548e7 100644 --- a/tests/compiler/getter-call.optimized.wat +++ b/tests/compiler/getter-call.optimized.wat @@ -504,9 +504,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -553,6 +550,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -965,13 +965,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -981,9 +981,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1098,7 +1098,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1152,7 +1152,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1160,7 +1160,7 @@ memory.size local.tee $0 i32.const 4 - local.get $1 + local.get $3 i32.load offset=1568 local.get $0 i32.const 16 @@ -1175,16 +1175,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $0 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1192,7 +1192,7 @@ unreachable end end - local.get $1 + local.get $3 local.get $0 i32.const 16 i32.shl @@ -1200,7 +1200,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1227,22 +1227,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if local.get $0 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1251,19 +1251,19 @@ local.get $0 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1275,8 +1275,8 @@ i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.load i32.const -3 i32.and @@ -1289,11 +1289,11 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 local.set $3 local.get $0 - local.get $1 + local.get $2 global.get $~lib/rt/itcms/white i32.or i32.store offset=4 @@ -1308,7 +1308,7 @@ local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1320,7 +1320,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $2 + local.get $1 local.get $0 i32.const 20 i32.add @@ -1372,19 +1372,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1394,16 +1394,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1426,7 +1425,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1436,23 +1435,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1460,7 +1459,7 @@ else i32.const 1472 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1470,7 +1469,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1476 @@ -1485,28 +1484,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/heap.optimized.wat b/tests/compiler/heap.optimized.wat index 2767075375..1c59865c1d 100644 --- a/tests/compiler/heap.optimized.wat +++ b/tests/compiler/heap.optimized.wat @@ -446,9 +446,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -495,6 +492,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -854,7 +854,7 @@ i32.eqz if memory.size - local.tee $1 + local.tee $3 local.get $2 i32.const 536870910 i32.lt_u @@ -875,7 +875,7 @@ i32.const 4 local.get $0 i32.load offset=1568 - local.get $1 + local.get $3 i32.const 16 i32.shl i32.const 4 @@ -889,16 +889,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $1 local.get $1 local.get $3 - i32.gt_s + i32.lt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $1 memory.grow i32.const 0 i32.lt_s @@ -907,7 +907,7 @@ end end local.get $0 - local.get $1 + local.get $3 i32.const 16 i32.shl memory.size @@ -1454,95 +1454,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -1573,39 +1573,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 @@ -1684,14 +1684,14 @@ local.get $0 local.get $2 call $~lib/rt/tlsf/allocateBlock - local.set $7 + local.set $6 local.get $1 i32.load i32.const -4 i32.and - local.set $6 + local.set $7 block $~lib/util/memory/memmove|inlined.0 - local.get $7 + local.get $6 i32.const 4 i32.add local.tee $2 @@ -1704,10 +1704,10 @@ local.get $3 local.get $2 i32.sub - local.get $6 + local.get $7 i32.sub i32.const 0 - local.get $6 + local.get $7 i32.const 1 i32.shl i32.sub @@ -1715,7 +1715,7 @@ if local.get $2 local.get $3 - local.get $6 + local.get $7 call $~lib/util/memory/memcpy br $~lib/util/memory/memmove|inlined.0 end @@ -1736,13 +1736,13 @@ i32.const 7 i32.and if - local.get $6 + local.get $7 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $6 + local.get $7 i32.const 1 i32.sub - local.set $6 + local.set $7 local.get $2 local.tee $4 i32.const 1 @@ -1761,7 +1761,7 @@ end end loop $while-continue|1 - local.get $6 + local.get $7 i32.const 8 i32.ge_u if @@ -1769,10 +1769,10 @@ local.get $3 i64.load i64.store - local.get $6 + local.get $7 i32.const 8 i32.sub - local.set $6 + local.set $7 local.get $2 i32.const 8 i32.add @@ -1786,7 +1786,7 @@ end end loop $while-continue|2 - local.get $6 + local.get $7 if local.get $2 local.tee $4 @@ -1802,10 +1802,10 @@ local.get $5 i32.load8_u i32.store8 - local.get $6 + local.get $7 i32.const 1 i32.sub - local.set $6 + local.set $7 br $while-continue|2 end end @@ -1820,22 +1820,22 @@ if loop $while-continue|3 local.get $2 - local.get $6 + local.get $7 i32.add i32.const 7 i32.and if - local.get $6 + local.get $7 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $6 + local.get $7 i32.const 1 i32.sub - local.tee $6 + local.tee $7 local.get $2 i32.add local.get $3 - local.get $6 + local.get $7 i32.add i32.load8_u i32.store8 @@ -1843,18 +1843,18 @@ end end loop $while-continue|4 - local.get $6 + local.get $7 i32.const 8 i32.ge_u if - local.get $6 + local.get $7 i32.const 8 i32.sub - local.tee $6 + local.tee $7 local.get $2 i32.add local.get $3 - local.get $6 + local.get $7 i32.add i64.load i64.store @@ -1863,16 +1863,16 @@ end end loop $while-continue|5 - local.get $6 + local.get $7 if - local.get $6 + local.get $7 i32.const 1 i32.sub - local.tee $6 + local.tee $7 local.get $2 i32.add local.get $3 - local.get $6 + local.get $7 i32.add i32.load8_u i32.store8 @@ -1895,7 +1895,7 @@ local.get $1 call $~lib/rt/tlsf/insertBlock end - local.get $7 + local.get $6 ) (func $~lib/memory/heap.realloc (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -1924,38 +1924,38 @@ local.set $2 local.get $0 call $~lib/rt/tlsf/checkUsedBlock - local.set $0 + local.set $6 block $folding-inner0 local.get $1 call $~lib/rt/tlsf/prepareSize - local.tee $6 - local.get $0 + local.tee $4 + local.get $6 i32.load - local.tee $3 + local.tee $0 i32.const -4 i32.and - local.tee $7 + local.tee $5 i32.le_u br_if $folding-inner0 - local.get $0 + local.get $6 i32.const 4 i32.add - local.get $0 + local.get $6 i32.load i32.const -4 i32.and i32.add - local.tee $4 + local.tee $3 i32.load - local.tee $5 + local.tee $7 i32.const 1 i32.and if - local.get $6 - local.get $7 + local.get $4 + local.get $5 i32.const 4 i32.add - local.get $5 + local.get $7 i32.const -4 i32.and i32.add @@ -1963,11 +1963,11 @@ i32.le_u if local.get $2 - local.get $4 + local.get $3 call $~lib/rt/tlsf/removeBlock - local.get $0 + local.get $6 local.get $5 - local.get $3 + local.get $0 i32.const 3 i32.and i32.or @@ -1976,16 +1976,16 @@ end end local.get $2 - local.get $0 + local.get $6 local.get $1 call $~lib/rt/tlsf/moveBlock br $__inlined_func$~lib/rt/tlsf/reallocateBlock end local.get $2 - local.get $0 local.get $6 + local.get $4 call $~lib/rt/tlsf/prepareBlock - local.get $0 + local.get $6 end end i32.const 4 diff --git a/tests/compiler/implicit-getter-setter.optimized.wat b/tests/compiler/implicit-getter-setter.optimized.wat index 79b6b5b2d1..2f135b7473 100644 --- a/tests/compiler/implicit-getter-setter.optimized.wat +++ b/tests/compiler/implicit-getter-setter.optimized.wat @@ -114,18 +114,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 17868 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -139,9 +138,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -151,15 +150,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -200,20 +199,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -645,9 +644,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -694,6 +690,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1106,13 +1105,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1122,9 +1121,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1194,7 +1193,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1202,7 +1201,7 @@ memory.size local.tee $1 i32.const 4 - local.get $3 + local.get $2 i32.load offset=1568 local.get $1 i32.const 16 @@ -1217,16 +1216,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1234,7 +1233,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $1 i32.const 16 i32.shl @@ -1242,7 +1241,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1269,22 +1268,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $2 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1293,19 +1292,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $2 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store diff --git a/tests/compiler/infer-array.optimized.wat b/tests/compiler/infer-array.optimized.wat index 9704769a86..2e53df9641 100644 --- a/tests/compiler/infer-array.optimized.wat +++ b/tests/compiler/infer-array.optimized.wat @@ -140,18 +140,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 18596 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -165,9 +164,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -177,15 +176,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -226,20 +225,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -671,9 +670,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -720,6 +716,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1297,18 +1296,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $4 + local.get $0 + i32.const 16 + i32.add local.tee $3 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1319,13 +1317,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $3 i32.const 19 i32.add i32.const -16 @@ -1333,32 +1331,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $5 i32.add else - local.get $4 + local.get $5 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1374,16 +1372,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $3 local.get $2 - local.get $5 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1391,7 +1389,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1399,8 +1397,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1417,7 +1415,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $5 i32.lt_u if i32.const 0 @@ -1427,13 +1425,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $4 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1446,40 +1444,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $4 + local.get $5 i32.sub - local.tee $6 + local.tee $3 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $4 + local.get $5 i32.or i32.store - local.get $4 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 - local.get $6 + local.tee $5 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -2177,95 +2175,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -2296,39 +2294,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 @@ -2754,21 +2752,20 @@ return end local.get $0 - local.tee $1 i32.load offset=4 - local.tee $2 + local.tee $1 local.get $0 i32.load offset=12 i32.const 2 i32.shl i32.add - local.set $0 + local.set $2 loop $while-continue|0 - local.get $0 + local.get $1 local.get $2 - i32.gt_u + i32.lt_u if - local.get $2 + local.get $1 i32.load local.tee $3 if @@ -2778,14 +2775,14 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $2 + local.get $1 i32.const 4 i32.add - local.set $2 + local.set $1 br $while-continue|0 end end - local.get $1 + local.get $0 i32.load local.tee $0 if @@ -2825,16 +2822,16 @@ local.get $0 local.get $1 i32.shl - local.tee $9 - local.set $8 - local.get $9 + local.tee $8 + local.set $9 + local.get $8 i32.const 0 call $~lib/rt/itcms/__new - local.set $4 + local.set $6 local.get $3 if block $~lib/util/memory/memmove|inlined.0 - local.get $4 + local.get $6 local.tee $1 local.get $3 i32.eq @@ -2842,10 +2839,10 @@ local.get $3 local.get $1 i32.sub - local.get $8 + local.get $9 i32.sub i32.const 0 - local.get $8 + local.get $9 i32.const 1 i32.shl i32.sub @@ -2853,7 +2850,7 @@ if local.get $1 local.get $3 - local.get $8 + local.get $9 call $~lib/util/memory/memcpy br $~lib/util/memory/memmove|inlined.0 end @@ -2874,32 +2871,32 @@ i32.const 7 i32.and if - local.get $8 + local.get $9 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 - local.get $8 + local.get $9 i32.const 1 i32.sub - local.set $8 + local.set $9 local.get $1 - local.tee $5 + local.tee $4 i32.const 1 i32.add local.set $1 local.get $3 - local.tee $6 + local.tee $5 i32.const 1 i32.add local.set $3 + local.get $4 local.get $5 - local.get $6 i32.load8_u i32.store8 br $while-continue|0 end end loop $while-continue|1 - local.get $8 + local.get $9 i32.const 8 i32.ge_u if @@ -2907,10 +2904,10 @@ local.get $3 i64.load i64.store - local.get $8 + local.get $9 i32.const 8 i32.sub - local.set $8 + local.set $9 local.get $1 i32.const 8 i32.add @@ -2924,26 +2921,26 @@ end end loop $while-continue|2 - local.get $8 + local.get $9 if local.get $1 - local.tee $5 + local.tee $4 i32.const 1 i32.add local.set $1 local.get $3 - local.tee $6 + local.tee $5 i32.const 1 i32.add local.set $3 + local.get $4 local.get $5 - local.get $6 i32.load8_u i32.store8 - local.get $8 + local.get $9 i32.const 1 i32.sub - local.set $8 + local.set $9 br $while-continue|2 end end @@ -2958,22 +2955,22 @@ if loop $while-continue|3 local.get $1 - local.get $8 + local.get $9 i32.add i32.const 7 i32.and if - local.get $8 + local.get $9 i32.eqz br_if $~lib/util/memory/memmove|inlined.0 local.get $1 - local.get $8 + local.get $9 i32.const 1 i32.sub - local.tee $8 + local.tee $9 i32.add local.get $3 - local.get $8 + local.get $9 i32.add i32.load8_u i32.store8 @@ -2981,18 +2978,18 @@ end end loop $while-continue|4 - local.get $8 + local.get $9 i32.const 8 i32.ge_u if local.get $1 - local.get $8 + local.get $9 i32.const 8 i32.sub - local.tee $8 + local.tee $9 i32.add local.get $3 - local.get $8 + local.get $9 i32.add i64.load i64.store @@ -3001,16 +2998,16 @@ end end loop $while-continue|5 - local.get $8 + local.get $9 if local.get $1 - local.get $8 + local.get $9 i32.const 1 i32.sub - local.tee $8 + local.tee $9 i32.add local.get $3 - local.get $8 + local.get $9 i32.add i32.load8_u i32.store8 @@ -3021,26 +3018,26 @@ end end local.get $7 - local.get $4 + local.get $6 i32.store i32.const 16 local.get $2 call $~lib/rt/itcms/__new local.tee $1 - local.get $4 + local.get $6 i32.store - local.get $4 + local.get $6 if local.get $1 - local.get $4 + local.get $6 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $1 - local.get $4 + local.get $6 i32.store offset=4 local.get $1 - local.get $9 + local.get $8 i32.store offset=8 local.get $1 local.get $0 @@ -3128,16 +3125,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $0 i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $0 local.get $1 local.get $2 select @@ -3146,7 +3143,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $3 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/infer-generic.optimized.wat b/tests/compiler/infer-generic.optimized.wat index a1ecb29aa6..daaff704d5 100644 --- a/tests/compiler/infer-generic.optimized.wat +++ b/tests/compiler/infer-generic.optimized.wat @@ -526,9 +526,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -575,6 +572,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -987,13 +987,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1003,9 +1003,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1075,7 +1075,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1083,7 +1083,7 @@ memory.size local.tee $0 i32.const 4 - local.get $1 + local.get $2 i32.load offset=1568 local.get $0 i32.const 16 @@ -1098,16 +1098,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $1 local.get $0 - local.get $2 + local.get $1 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $1 memory.grow i32.const 0 i32.lt_s @@ -1115,7 +1115,7 @@ unreachable end end - local.get $1 + local.get $2 local.get $0 i32.const 16 i32.shl @@ -1123,7 +1123,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1150,22 +1150,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $2 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $1 i32.const 16 i32.ge_u if local.get $0 - local.get $2 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1174,19 +1174,19 @@ local.get $0 i32.const 32 i32.add - local.tee $2 - local.get $3 + local.tee $3 + local.get $1 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 local.get $2 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $2 + local.get $3 i32.const -2 i32.and i32.store @@ -1344,31 +1344,29 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i64.const 0 i64.store - local.get $0 + local.get $2 i32.const 0 i32.store offset=8 - local.get $0 + local.get $2 i32.const 1152 i32.store - local.get $0 + local.get $2 i32.const 1200 i32.store offset=4 - i32.const 0 - local.set $0 i32.const 1164 i32.load - local.set $3 + local.set $2 loop $for-loop|0 - local.get $3 + local.get $2 i32.const 1164 i32.load - local.tee $2 + local.tee $3 local.get $2 local.get $3 - i32.gt_s + i32.lt_s select local.get $0 i32.gt_s @@ -1508,19 +1506,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1530,16 +1528,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1562,7 +1559,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1572,23 +1569,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1596,7 +1593,7 @@ else i32.const 1616 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1424 @@ -1606,7 +1603,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1620 @@ -1621,28 +1618,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/inlining.optimized.wat b/tests/compiler/inlining.optimized.wat index aaaa9fcd6c..8a24ac24cf 100644 --- a/tests/compiler/inlining.optimized.wat +++ b/tests/compiler/inlining.optimized.wat @@ -513,9 +513,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -562,6 +559,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1139,18 +1139,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $4 + local.get $0 + i32.const 16 + i32.add local.tee $3 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1161,13 +1160,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $3 i32.const 19 i32.add i32.const -16 @@ -1175,32 +1174,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $5 i32.add else - local.get $4 + local.get $5 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1216,16 +1215,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $3 local.get $2 - local.get $5 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1233,7 +1232,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1241,8 +1240,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1259,7 +1258,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $5 i32.lt_u if i32.const 0 @@ -1269,13 +1268,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $4 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1288,40 +1287,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $4 + local.get $5 i32.sub - local.tee $6 + local.tee $3 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $4 + local.get $5 i32.or i32.store - local.get $4 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 - local.get $6 + local.tee $5 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -1685,53 +1684,53 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i64.const 0 i64.store - local.get $0 + local.get $2 i32.const 0 i32.store offset=8 - local.get $0 + local.get $2 i32.const 16 i32.const 5 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 3 i32.store offset=8 - local.get $2 + local.get $0 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.eqz if global.get $~lib/memory/__stack_pointer i32.const 8 i32.const 6 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 i32.store offset=4 end - local.get $2 + local.get $0 i32.const 1 i32.store - local.get $2 + local.get $0 i32.const 0 i32.store offset=4 - local.get $2 + local.get $0 i32.const 2 i32.store offset=4 - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 i32.const 4 i32.store offset=12 - local.get $0 local.get $2 + local.get $0 i32.store offset=8 - local.get $2 + local.get $0 i32.load i32.const 1 i32.ne @@ -1743,7 +1742,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.load offset=4 i32.const 2 i32.ne @@ -1755,7 +1754,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.load offset=8 i32.const 3 i32.ne @@ -1767,7 +1766,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $0 i32.load offset=12 i32.const 4 i32.ne @@ -1800,19 +1799,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1822,16 +1821,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1854,7 +1852,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1864,23 +1862,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1888,7 +1886,7 @@ else i32.const 1520 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1328 @@ -1898,7 +1896,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1524 @@ -1913,28 +1911,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/instanceof-class.optimized.wat b/tests/compiler/instanceof-class.optimized.wat index be445b886e..431541cf30 100644 --- a/tests/compiler/instanceof-class.optimized.wat +++ b/tests/compiler/instanceof-class.optimized.wat @@ -521,9 +521,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -570,6 +567,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -982,13 +982,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -998,9 +998,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1070,7 +1070,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1078,7 +1078,7 @@ memory.size local.tee $1 i32.const 4 - local.get $3 + local.get $2 i32.load offset=1568 local.get $1 i32.const 16 @@ -1093,16 +1093,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1110,7 +1110,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $1 i32.const 16 i32.shl @@ -1118,7 +1118,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1145,22 +1145,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $2 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1169,19 +1169,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $2 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1521,19 +1521,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1543,16 +1543,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1575,7 +1574,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1585,23 +1584,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1609,7 +1608,7 @@ else i32.const 1504 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1619,7 +1618,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1508 @@ -1634,28 +1633,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/issues/1095.optimized.wat b/tests/compiler/issues/1095.optimized.wat index 9990f8ae53..79b547bb76 100644 --- a/tests/compiler/issues/1095.optimized.wat +++ b/tests/compiler/issues/1095.optimized.wat @@ -108,18 +108,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 18004 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -133,9 +132,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -145,15 +144,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -194,20 +193,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -639,9 +638,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -688,6 +684,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1100,13 +1099,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1116,9 +1115,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1188,7 +1187,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1196,7 +1195,7 @@ memory.size local.tee $0 i32.const 4 - local.get $1 + local.get $2 i32.load offset=1568 local.get $0 i32.const 16 @@ -1211,16 +1210,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $1 local.get $0 - local.get $2 + local.get $1 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $1 memory.grow i32.const 0 i32.lt_s @@ -1228,7 +1227,7 @@ unreachable end end - local.get $1 + local.get $2 local.get $0 i32.const 16 i32.shl @@ -1236,7 +1235,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1263,22 +1262,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $2 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $3 + local.tee $1 i32.const 16 i32.ge_u if local.get $0 - local.get $2 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1287,19 +1286,19 @@ local.get $0 i32.const 32 i32.add - local.tee $2 - local.get $3 + local.tee $3 + local.get $1 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 local.get $2 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $2 + local.get $3 i32.const -2 i32.and i32.store @@ -1485,8 +1484,6 @@ i32.const 1456 i32.store local.get $0 - local.set $1 - local.get $0 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white @@ -1496,7 +1493,7 @@ i32.and i32.eq if - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=4 diff --git a/tests/compiler/issues/1225.optimized.wat b/tests/compiler/issues/1225.optimized.wat index fd1144f30e..5030815a44 100644 --- a/tests/compiler/issues/1225.optimized.wat +++ b/tests/compiler/issues/1225.optimized.wat @@ -513,9 +513,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -562,6 +559,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -974,13 +974,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -990,9 +990,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1278,90 +1278,90 @@ i32.and local.tee $1 i32.add - local.tee $0 + local.tee $3 i32.const 0 i32.store - local.get $0 + local.get $3 i32.const 12 local.get $1 i32.sub i32.const -4 i32.and - local.tee $3 + local.tee $4 i32.add - local.tee $1 + local.tee $0 i32.const 4 i32.sub i32.const 0 i32.store block $~lib/util/memory/memset|inlined.0 - local.get $3 + local.get $4 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $0 + local.get $3 i32.const 0 i32.store offset=4 - local.get $0 + local.get $3 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 i32.const 12 i32.sub i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 8 i32.sub i32.const 0 i32.store - local.get $3 + local.get $4 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $0 + local.get $3 i32.const 0 i32.store offset=12 - local.get $0 + local.get $3 i32.const 0 i32.store offset=16 - local.get $0 + local.get $3 i32.const 0 i32.store offset=20 - local.get $0 + local.get $3 i32.const 0 i32.store offset=24 - local.get $1 + local.get $0 i32.const 28 i32.sub i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 24 i32.sub i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 20 i32.sub i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 16 i32.sub i32.const 0 i32.store - local.get $0 - local.get $0 + local.get $3 + local.get $3 i32.const 4 i32.and i32.const 24 i32.add - local.tee $4 + local.tee $0 i32.add local.set $1 - local.get $3 local.get $4 + local.get $0 i32.sub local.set $0 loop $while-continue|0 @@ -1582,19 +1582,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1604,16 +1604,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1636,7 +1635,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1646,23 +1645,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1670,7 +1669,7 @@ else i32.const 1488 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1680,7 +1679,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1492 @@ -1695,28 +1694,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/issues/1699.optimized.wat b/tests/compiler/issues/1699.optimized.wat index 8bbe9de5a4..fe451d89d4 100644 --- a/tests/compiler/issues/1699.optimized.wat +++ b/tests/compiler/issues/1699.optimized.wat @@ -115,18 +115,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 18140 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -140,9 +139,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -152,15 +151,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -201,20 +200,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -646,9 +645,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -695,6 +691,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1448,18 +1447,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $3 + local.get $0 + i32.const 16 + i32.add local.tee $4 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1470,13 +1468,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $4 i32.const 19 i32.add i32.const -16 @@ -1484,32 +1482,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1525,16 +1523,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1542,7 +1540,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1550,8 +1548,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1568,7 +1566,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -1578,13 +1576,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1597,40 +1595,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -2156,95 +2154,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -2275,39 +2273,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 @@ -2628,8 +2626,8 @@ local.get $1 i32.const 1 i32.add - local.tee $6 local.tee $4 + local.tee $7 local.get $0 local.tee $3 i32.load offset=8 @@ -2638,7 +2636,7 @@ i32.shr_u i32.gt_u if - local.get $4 + local.get $7 i32.const 268435455 i32.gt_u if @@ -2651,7 +2649,7 @@ end local.get $3 i32.load - local.tee $7 + local.tee $6 local.get $5 i32.const 1 i32.shl @@ -2662,52 +2660,52 @@ i32.lt_u select local.tee $8 - local.get $4 + local.get $7 i32.const 8 - local.get $4 + local.get $7 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $4 - local.get $4 + local.tee $7 + local.get $7 local.get $8 i32.lt_u select - local.tee $8 + local.tee $7 call $~lib/rt/itcms/__renew - local.tee $4 + local.tee $8 local.get $5 i32.add - local.get $8 + local.get $7 local.get $5 i32.sub call $~lib/memory/memory.fill - local.get $4 - local.get $7 + local.get $6 + local.get $8 i32.ne if local.get $3 - local.get $4 + local.get $8 i32.store local.get $3 - local.get $4 + local.get $8 i32.store offset=4 - local.get $4 + local.get $8 if local.get $3 - local.get $4 + local.get $8 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end end local.get $3 - local.get $8 + local.get $7 i32.store offset=8 end local.get $0 - local.get $6 + local.get $4 i32.store offset=12 end local.get $0 @@ -2732,6 +2730,7 @@ (local $2 i32) (local $3 i32) (local $4 i32) + (local $5 i32) memory.size i32.const 16 i32.shl @@ -2789,10 +2788,10 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 16 i32.const 4 call $~lib/rt/itcms/__new @@ -2838,7 +2837,7 @@ local.get $4 i32.const 20 i32.sub - local.tee $0 + local.tee $5 i32.load offset=4 i32.const 3 i32.and @@ -2855,7 +2854,7 @@ i32.eqz i32.eq if - local.get $0 + local.get $5 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state @@ -2866,7 +2865,7 @@ i32.eq i32.and if - local.get $0 + local.get $5 call $~lib/rt/itcms/Object#makeGray end end @@ -2889,27 +2888,25 @@ local.get $3 i32.store call $issues/1699/MultiAssignmentTest#constructor - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 local.get $3 i32.const 1 - local.get $0 + local.get $1 call $~lib/array/Array#__set local.get $3 i32.const 1 call $~lib/array/Array#__get - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 local.get $3 i32.const 0 - local.get $0 + local.get $1 call $~lib/array/Array#__set - i32.const 0 - local.set $0 loop $for-loop|0 local.get $3 i32.load offset=12 @@ -3014,21 +3011,20 @@ return end local.get $0 - local.tee $1 i32.load offset=4 - local.tee $2 + local.tee $1 local.get $0 i32.load offset=12 i32.const 2 i32.shl i32.add - local.set $0 + local.set $2 loop $while-continue|0 - local.get $0 + local.get $1 local.get $2 - i32.gt_u + i32.lt_u if - local.get $2 + local.get $1 i32.load local.tee $3 if @@ -3038,14 +3034,14 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $2 + local.get $1 i32.const 4 i32.add - local.set $2 + local.set $1 br $while-continue|0 end end - local.get $1 + local.get $0 i32.load local.tee $0 if @@ -3196,16 +3192,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $0 i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $0 local.get $1 local.get $2 select @@ -3214,7 +3210,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $3 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/logical.optimized.wat b/tests/compiler/logical.optimized.wat index af388e947c..c46c4a4cce 100644 --- a/tests/compiler/logical.optimized.wat +++ b/tests/compiler/logical.optimized.wat @@ -501,9 +501,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -550,6 +547,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -962,13 +962,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -978,9 +978,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1170,7 +1170,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1224,7 +1224,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1232,7 +1232,7 @@ memory.size local.tee $0 i32.const 4 - local.get $1 + local.get $3 i32.load offset=1568 local.get $0 i32.const 16 @@ -1247,16 +1247,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $0 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1264,7 +1264,7 @@ unreachable end end - local.get $1 + local.get $3 local.get $0 i32.const 16 i32.shl @@ -1272,7 +1272,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1299,22 +1299,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if local.get $0 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1323,19 +1323,19 @@ local.get $0 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1347,8 +1347,8 @@ i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.load i32.const -3 i32.and @@ -1361,11 +1361,11 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 local.set $3 local.get $0 - local.get $1 + local.get $2 global.get $~lib/rt/itcms/white i32.or i32.store offset=4 @@ -1380,7 +1380,7 @@ local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1392,7 +1392,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $2 + local.get $1 local.get $0 i32.const 20 i32.add @@ -1412,19 +1412,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1434,16 +1434,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1466,7 +1465,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1476,23 +1475,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1500,7 +1499,7 @@ else i32.const 1488 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1296 @@ -1510,7 +1509,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1492 @@ -1525,28 +1524,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/managed-cast.optimized.wat b/tests/compiler/managed-cast.optimized.wat index 3a9372aceb..b22eef3b75 100644 --- a/tests/compiler/managed-cast.optimized.wat +++ b/tests/compiler/managed-cast.optimized.wat @@ -505,9 +505,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -554,6 +551,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -966,13 +966,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -982,9 +982,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1054,7 +1054,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1062,7 +1062,7 @@ memory.size local.tee $1 i32.const 4 - local.get $3 + local.get $2 i32.load offset=1568 local.get $1 i32.const 16 @@ -1077,16 +1077,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1094,7 +1094,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $1 i32.const 16 i32.shl @@ -1102,7 +1102,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1129,22 +1129,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $2 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1153,19 +1153,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $2 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1746,19 +1746,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1768,16 +1768,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1800,7 +1799,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1810,23 +1809,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1834,7 +1833,7 @@ else i32.const 1632 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1844,7 +1843,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1636 @@ -1859,28 +1858,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/memcpy.optimized.wat b/tests/compiler/memcpy.optimized.wat index a3b693ff75..1aaa9b9d51 100644 --- a/tests/compiler/memcpy.optimized.wat +++ b/tests/compiler/memcpy.optimized.wat @@ -475,95 +475,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -594,39 +594,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 diff --git a/tests/compiler/new.optimized.wat b/tests/compiler/new.optimized.wat index f16c43ce54..2188d63230 100644 --- a/tests/compiler/new.optimized.wat +++ b/tests/compiler/new.optimized.wat @@ -559,9 +559,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -608,6 +605,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1020,13 +1020,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1036,9 +1036,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1108,7 +1108,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1116,7 +1116,7 @@ memory.size local.tee $1 i32.const 4 - local.get $3 + local.get $2 i32.load offset=1568 local.get $1 i32.const 16 @@ -1131,16 +1131,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1148,7 +1148,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $1 i32.const 16 i32.shl @@ -1156,7 +1156,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1183,22 +1183,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $2 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1207,19 +1207,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $2 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1563,19 +1563,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1585,16 +1585,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1617,7 +1616,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1627,23 +1626,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1651,7 +1650,7 @@ else i32.const 1440 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1661,7 +1660,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1444 @@ -1676,28 +1675,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/number.optimized.wat b/tests/compiler/number.optimized.wat index 8ec2c58840..085f441ce1 100644 --- a/tests/compiler/number.optimized.wat +++ b/tests/compiler/number.optimized.wat @@ -548,9 +548,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -597,6 +594,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1174,18 +1174,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $1 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $3 + local.get $0 + i32.const 16 + i32.add local.tee $2 - local.get $1 i32.const 1073741820 i32.gt_u if @@ -1196,13 +1195,13 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $1 + local.get $2 i32.const 19 i32.add i32.const -16 @@ -1210,32 +1209,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size local.tee $1 - local.get $3 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $2 + local.get $3 i32.load offset=1568 local.get $1 i32.const 16 @@ -1251,16 +1250,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $2 local.get $1 - local.get $4 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1268,7 +1267,7 @@ unreachable end end - local.get $2 + local.get $3 local.get $1 i32.const 16 i32.shl @@ -1276,8 +1275,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1294,7 +1293,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1304,13 +1303,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.set $4 - local.get $3 + local.set $5 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1323,40 +1322,40 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub - local.tee $5 + local.tee $2 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $1 i32.const 4 i32.add i32.add - local.tee $3 - local.get $5 + local.tee $4 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $5 i32.const -2 i32.and i32.store @@ -1738,9 +1737,9 @@ local.get $0 i32.const 31 i32.shr_u - local.tee $0 - select local.tee $2 + select + local.tee $0 local.tee $1 i32.const 100000 i32.lt_u @@ -1787,21 +1786,21 @@ i32.add end end - local.get $0 + local.get $2 i32.add - local.tee $1 + local.tee $3 i32.const 1 i32.shl call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store - local.get $3 - local.get $2 local.get $1 - call $~lib/util/number/utoa32_dec_lut local.get $0 + local.get $3 + call $~lib/util/number/utoa32_dec_lut + local.get $2 if - local.get $3 + local.get $1 i32.const 45 i32.store16 end @@ -1809,7 +1808,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 end ) (func $~lib/string/String.__eq (param $0 i32) (param $1 i32) (result i32) @@ -1902,14 +1901,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2817,95 +2816,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -2936,39 +2935,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 @@ -3250,17 +3249,17 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 21 i32.le_s local.get $0 - local.get $3 + local.get $2 i32.le_s i32.and if (result i32) loop $for-loop|0 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -3277,26 +3276,26 @@ br $for-loop|0 end end - local.get $3 + local.get $2 i32.const 1 i32.shl i32.const 3456 i32.add i32.const 3145774 i32.store - local.get $3 + local.get $2 i32.const 2 i32.add else - local.get $3 + local.get $2 i32.const 21 i32.le_s - local.get $3 + local.get $2 i32.const 0 i32.gt_s i32.and if (result i32) - local.get $3 + local.get $2 i32.const 1 i32.shl i32.const 3456 @@ -3318,16 +3317,16 @@ i32.const 1 i32.add else - local.get $3 + local.get $2 i32.const 0 i32.le_s - local.get $3 + local.get $2 i32.const -6 i32.gt_s i32.and if (result i32) i32.const 2 - local.get $3 + local.get $2 i32.sub local.tee $2 i32.const 1 @@ -3375,7 +3374,7 @@ i32.const 101 i32.store16 i32.const 3460 - local.get $3 + local.get $2 i32.const 1 i32.sub local.tee $0 @@ -3464,19 +3463,19 @@ local.get $1 i32.const 3456 i32.add - local.tee $2 + local.tee $3 i32.const 101 i32.store16 offset=2 - local.get $2 + local.get $3 i32.const 4 i32.add - local.get $3 + local.get $2 i32.const 1 i32.sub local.tee $1 i32.const 0 i32.lt_s - local.tee $3 + local.tee $2 if i32.const 0 local.get $1 @@ -3534,10 +3533,10 @@ i32.add local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $3 i32.const 45 i32.const 43 - local.get $3 + local.get $2 select i32.store16 offset=4 local.get $0 @@ -3677,20 +3676,20 @@ local.tee $2 i64.const 4294967295 i64.and - local.tee $3 + local.tee $1 i64.const 31 i64.shl - local.set $1 + local.set $3 local.get $2 i64.const 32 i64.shr_u local.tee $2 i64.const 31 i64.shl - local.get $3 + local.get $1 i64.const 31 i64.shl - local.get $3 + local.get $1 i64.const 10 i64.shl i64.const 32 @@ -3718,11 +3717,11 @@ local.get $2 i64.const 31 i64.shl - local.get $1 + local.get $3 i64.const 32 i64.shr_u i64.add - local.get $1 + local.get $3 i64.const 4294967295 i64.and i64.const 2147483647 @@ -3738,10 +3737,10 @@ local.get $2 i64.const 2147483647 i64.mul - local.get $3 + local.get $1 i64.const 2147483647 i64.mul - local.get $3 + local.get $1 i64.const 4294966784 i64.mul i64.const 32 @@ -4035,19 +4034,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -4057,16 +4056,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -4089,7 +4087,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -4099,23 +4097,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -4123,7 +4121,7 @@ else i32.const 4656 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1472 @@ -4133,7 +4131,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 4660 @@ -4148,28 +4146,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/object-literal.optimized.wat b/tests/compiler/object-literal.optimized.wat index c9915ce2bf..a2659ddb56 100644 --- a/tests/compiler/object-literal.optimized.wat +++ b/tests/compiler/object-literal.optimized.wat @@ -72,18 +72,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 18156 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -97,9 +96,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -109,15 +108,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -158,20 +157,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -703,9 +702,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -752,6 +748,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -945,7 +944,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $2 + local.set $1 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -962,11 +961,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -1008,9 +1007,9 @@ if local.get $0 i32.load - local.tee $1 + local.tee $2 if - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -1034,11 +1033,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -1064,7 +1063,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $2 + local.get $1 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -1529,17 +1528,15 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $2 + local.get $0 + i32.const 16 + i32.add call $~lib/rt/tlsf/allocateBlock local.tee $2 local.get $1 @@ -1849,14 +1846,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2336,95 +2333,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -2455,39 +2452,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 diff --git a/tests/compiler/optional-typeparameters.optimized.wat b/tests/compiler/optional-typeparameters.optimized.wat index a8bd891e31..80f392852d 100644 --- a/tests/compiler/optional-typeparameters.optimized.wat +++ b/tests/compiler/optional-typeparameters.optimized.wat @@ -519,9 +519,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -568,6 +565,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -980,13 +980,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -996,9 +996,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1068,7 +1068,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1076,7 +1076,7 @@ memory.size local.tee $1 i32.const 4 - local.get $3 + local.get $2 i32.load offset=1568 local.get $1 i32.const 16 @@ -1091,16 +1091,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1108,7 +1108,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $1 i32.const 16 i32.shl @@ -1116,7 +1116,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1143,22 +1143,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $2 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1167,19 +1167,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $2 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1397,19 +1397,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1419,16 +1419,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1451,7 +1450,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1461,23 +1460,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1485,7 +1484,7 @@ else i32.const 1440 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1495,7 +1494,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1444 @@ -1510,28 +1509,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/reexport.optimized.wat b/tests/compiler/reexport.optimized.wat index e930a4b035..3eec156149 100644 --- a/tests/compiler/reexport.optimized.wat +++ b/tests/compiler/reexport.optimized.wat @@ -593,9 +593,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -642,6 +639,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1054,13 +1054,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1070,9 +1070,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1142,7 +1142,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1150,7 +1150,7 @@ memory.size local.tee $1 i32.const 4 - local.get $3 + local.get $2 i32.load offset=1568 local.get $1 i32.const 16 @@ -1165,16 +1165,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1182,7 +1182,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $1 i32.const 16 i32.shl @@ -1190,7 +1190,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1217,22 +1217,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $2 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1241,19 +1241,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $2 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1724,19 +1724,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1746,16 +1746,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1778,7 +1777,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1788,23 +1787,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1812,7 +1811,7 @@ else i32.const 1488 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1296 @@ -1822,7 +1821,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1492 @@ -1837,28 +1836,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/rereexport.optimized.wat b/tests/compiler/rereexport.optimized.wat index 9e3e8fad8c..5969d1bad2 100644 --- a/tests/compiler/rereexport.optimized.wat +++ b/tests/compiler/rereexport.optimized.wat @@ -561,9 +561,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -610,6 +607,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1022,13 +1022,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1038,9 +1038,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1245,7 +1245,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1299,7 +1299,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1307,7 +1307,7 @@ memory.size local.tee $0 i32.const 4 - local.get $1 + local.get $3 i32.load offset=1568 local.get $0 i32.const 16 @@ -1322,16 +1322,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $0 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1339,7 +1339,7 @@ unreachable end end - local.get $1 + local.get $3 local.get $0 i32.const 16 i32.shl @@ -1347,7 +1347,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1374,22 +1374,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if local.get $0 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1398,19 +1398,19 @@ local.get $0 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1422,8 +1422,8 @@ i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.load i32.const -3 i32.and @@ -1436,11 +1436,11 @@ i32.const 4 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 local.set $3 local.get $0 - local.get $1 + local.get $2 global.get $~lib/rt/itcms/white i32.or i32.store offset=4 @@ -1455,7 +1455,7 @@ local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1476,7 +1476,7 @@ local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1487,17 +1487,17 @@ local.get $0 i32.const 0 i32.store8 offset=2 - local.get $1 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $2 i32.const 3 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $1 local.get $0 i32.store local.get $0 @@ -1520,19 +1520,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1542,16 +1542,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1574,7 +1573,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1584,23 +1583,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1608,7 +1607,7 @@ else i32.const 1536 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1296 @@ -1618,7 +1617,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1540 @@ -1633,28 +1632,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-access.optimized.wat b/tests/compiler/resolve-access.optimized.wat index e3b9f0d71e..93e1076a32 100644 --- a/tests/compiler/resolve-access.optimized.wat +++ b/tests/compiler/resolve-access.optimized.wat @@ -126,18 +126,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 19732 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -151,9 +150,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -163,15 +162,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -212,20 +211,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -657,9 +656,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -706,6 +702,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1283,18 +1282,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $4 + local.get $0 + i32.const 16 + i32.add local.tee $3 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1305,13 +1303,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $3 i32.const 19 i32.add i32.const -16 @@ -1319,32 +1317,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $5 i32.add else - local.get $4 + local.get $5 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1360,16 +1358,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $3 local.get $2 - local.get $5 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1377,7 +1375,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1385,8 +1383,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1403,7 +1401,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $5 i32.lt_u if i32.const 0 @@ -1413,13 +1411,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $4 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1432,40 +1430,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $4 + local.get $5 i32.sub - local.tee $6 + local.tee $3 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $4 + local.get $5 i32.or i32.store - local.get $4 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 - local.get $6 + local.tee $5 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -1709,7 +1707,7 @@ (local $4 i32) (local $5 i32) i32.const 8 - local.set $4 + local.set $5 i32.const 1056 local.set $1 loop $while-continue|0 @@ -1717,7 +1715,7 @@ i32.const 3 i32.and i32.const 0 - local.get $4 + local.get $5 select if local.get $0 @@ -1734,10 +1732,10 @@ local.get $3 i32.load8_u i32.store8 - local.get $4 + local.get $5 i32.const 1 i32.sub - local.set $4 + local.set $5 br $while-continue|0 end end @@ -1747,7 +1745,7 @@ i32.eqz if loop $while-continue|1 - local.get $4 + local.get $5 i32.const 16 i32.ge_u if @@ -1775,14 +1773,14 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|1 end end - local.get $4 + local.get $5 i32.const 8 i32.and if @@ -1803,7 +1801,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 4 i32.and if @@ -1820,7 +1818,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 2 i32.and if @@ -1837,7 +1835,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 1 i32.and if @@ -1848,7 +1846,7 @@ end return end - local.get $4 + local.get $5 i32.const 32 i32.ge_u if @@ -1865,7 +1863,7 @@ end local.get $1 i32.load - local.set $5 + local.set $4 local.get $0 local.get $1 i32.load8_u @@ -1892,12 +1890,12 @@ local.get $3 i32.load8_u i32.store8 - local.get $4 + local.get $5 i32.const 3 i32.sub - local.set $4 + local.set $5 loop $while-continue|3 - local.get $4 + local.get $5 i32.const 17 i32.ge_u if @@ -1907,7 +1905,7 @@ local.tee $2 i32.const 8 i32.shl - local.get $5 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -1937,7 +1935,7 @@ local.get $0 local.get $1 i32.load offset=13 - local.tee $5 + local.tee $4 i32.const 8 i32.shl local.get $2 @@ -1953,10 +1951,10 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|3 end end @@ -1964,7 +1962,7 @@ end local.get $1 i32.load - local.set $5 + local.set $4 local.get $0 local.get $1 i32.load8_u @@ -1983,12 +1981,12 @@ local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $5 i32.const 2 i32.sub - local.set $4 + local.set $5 loop $while-continue|4 - local.get $4 + local.get $5 i32.const 18 i32.ge_u if @@ -1998,7 +1996,7 @@ local.tee $2 i32.const 16 i32.shl - local.get $5 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -2028,7 +2026,7 @@ local.get $0 local.get $1 i32.load offset=14 - local.tee $5 + local.tee $4 i32.const 16 i32.shl local.get $2 @@ -2044,10 +2042,10 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|4 end end @@ -2055,7 +2053,7 @@ end local.get $1 i32.load - local.set $5 + local.set $4 local.get $0 local.tee $2 i32.const 1 @@ -2070,12 +2068,12 @@ local.get $3 i32.load8_u i32.store8 - local.get $4 + local.get $5 i32.const 1 i32.sub - local.set $4 + local.set $5 loop $while-continue|5 - local.get $4 + local.get $5 i32.const 19 i32.ge_u if @@ -2085,7 +2083,7 @@ local.tee $2 i32.const 24 i32.shl - local.get $5 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -2115,7 +2113,7 @@ local.get $0 local.get $1 i32.load offset=15 - local.tee $5 + local.tee $4 i32.const 24 i32.shl local.get $2 @@ -2131,16 +2129,16 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|5 end end end end - local.get $4 + local.get $5 i32.const 16 i32.and if @@ -2259,7 +2257,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 8 i32.and if @@ -2322,7 +2320,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 4 i32.and if @@ -2357,7 +2355,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 2 i32.and if @@ -2380,7 +2378,7 @@ i32.load8_u offset=1 i32.store8 offset=1 end - local.get $4 + local.get $5 i32.const 1 i32.and if @@ -2660,7 +2658,7 @@ local.get $2 i32.const 4 i32.sub - local.tee $2 + local.tee $3 i32.const 1 i32.shl local.get $1 @@ -2674,10 +2672,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $3 + local.tee $4 i32.const 10000 i32.rem_u - local.tee $4 + local.tee $2 i32.const 100 i32.div_u i32.const 2 @@ -2685,7 +2683,7 @@ i32.const 1740 i32.add i64.load32_u - local.get $4 + local.get $2 i32.const 100 i32.rem_u i32.const 2 @@ -2697,7 +2695,7 @@ i64.shl i64.or i64.store - local.get $2 + local.get $3 i32.const 4 i32.sub local.tee $2 @@ -2705,7 +2703,7 @@ i32.shl local.get $1 i32.add - local.get $3 + local.get $4 i32.const 10000 i32.div_u local.tee $3 @@ -2891,17 +2889,17 @@ i32.sub local.set $5 local.get $1 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $0 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 br $while-continue|0 @@ -2936,17 +2934,17 @@ local.get $5 if local.get $1 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $1 local.get $0 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $0 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 local.get $5 @@ -3026,20 +3024,16 @@ end end local.get $4 - local.tee $0 i32.store i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $3 - local.get $0 + local.tee $0 + local.get $4 i32.store - local.get $3 - local.set $2 - local.get $0 - local.tee $1 + local.get $4 if - local.get $2 + local.get $0 i32.eqz if i32.const 0 @@ -3050,57 +3044,57 @@ unreachable end global.get $~lib/rt/itcms/white - local.get $1 + local.get $4 i32.const 20 i32.sub - local.tee $4 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $2 + local.get $0 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $1 + local.tee $2 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $4 + local.get $1 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $1 + local.get $2 i32.const 3 i32.eq i32.and if - local.get $4 + local.get $1 call $~lib/rt/itcms/Object#makeGray end end end end - local.get $3 local.get $0 + local.get $4 i32.store offset=4 - local.get $3 + local.get $0 i32.const 8 i32.store offset=8 - local.get $3 + local.get $0 i32.const 1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $0 ) (func $resolve-access/arrayAccess (result i32) (local $0 i32) @@ -3247,7 +3241,7 @@ local.get $0 i64.load i32.wrap_i64 - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -3259,7 +3253,7 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $0 + local.get $2 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -3270,69 +3264,68 @@ br $__inlined_func$~lib/util/number/utoa32 end global.get $~lib/memory/__stack_pointer - local.get $0 - local.tee $1 + local.get $2 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.tee $1 + local.tee $0 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store + local.get $1 local.get $2 local.get $0 - local.get $1 call $~lib/util/number/utoa32_dec_lut global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 end global.get $~lib/memory/__stack_pointer i32.const 4 diff --git a/tests/compiler/resolve-binary.optimized.wat b/tests/compiler/resolve-binary.optimized.wat index cd1608de96..7932ebdcdf 100644 --- a/tests/compiler/resolve-binary.optimized.wat +++ b/tests/compiler/resolve-binary.optimized.wat @@ -328,14 +328,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -851,9 +851,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -900,6 +897,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1477,18 +1477,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $4 + local.get $0 + i32.const 16 + i32.add local.tee $3 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1499,13 +1498,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $3 i32.const 19 i32.add i32.const -16 @@ -1513,32 +1512,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $5 i32.add else - local.get $4 + local.get $5 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1554,16 +1553,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $3 local.get $2 - local.get $5 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1571,7 +1570,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1579,8 +1578,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1597,7 +1596,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $5 i32.lt_u if i32.const 0 @@ -1607,13 +1606,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $4 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1626,40 +1625,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $4 + local.get $5 i32.sub - local.tee $6 + local.tee $3 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $4 + local.get $5 i32.or i32.store - local.get $4 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 - local.get $6 + local.tee $5 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -2041,9 +2040,9 @@ local.get $0 i32.const 31 i32.shr_u - local.tee $0 - select local.tee $2 + select + local.tee $0 local.tee $1 i32.const 100000 i32.lt_u @@ -2090,22 +2089,22 @@ i32.add end end - local.get $0 + local.get $2 i32.add - local.tee $1 + local.tee $3 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store - local.get $3 - local.get $2 local.get $1 - call $~lib/util/number/utoa32_dec_lut local.get $0 + local.get $3 + call $~lib/util/number/utoa32_dec_lut + local.get $2 if - local.get $3 + local.get $1 i32.const 45 i32.store16 end @@ -2113,7 +2112,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 end ) (func $~lib/util/number/genDigits (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i64) (result i32) @@ -3006,95 +3005,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -3125,39 +3124,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 @@ -3441,17 +3440,17 @@ local.get $0 local.get $1 i32.add - local.tee $2 + local.tee $3 i32.const 21 i32.le_s local.get $0 - local.get $2 + local.get $3 i32.le_s i32.and if (result i32) loop $for-loop|0 local.get $0 - local.get $2 + local.get $3 i32.lt_s if local.get $0 @@ -3468,26 +3467,26 @@ br $for-loop|0 end end - local.get $2 + local.get $3 i32.const 1 i32.shl i32.const 9760 i32.add i32.const 3145774 i32.store - local.get $2 + local.get $3 i32.const 2 i32.add else - local.get $2 + local.get $3 i32.const 21 i32.le_s - local.get $2 + local.get $3 i32.const 0 i32.gt_s i32.and if (result i32) - local.get $2 + local.get $3 i32.const 1 i32.shl i32.const 9760 @@ -3509,16 +3508,16 @@ i32.const 1 i32.add else - local.get $2 + local.get $3 i32.const 0 i32.le_s - local.get $2 + local.get $3 i32.const -6 i32.gt_s i32.and if (result i32) i32.const 2 - local.get $2 + local.get $3 i32.sub local.tee $2 i32.const 1 @@ -3565,7 +3564,7 @@ i32.const 9762 i32.const 101 i32.store16 - local.get $2 + local.get $3 i32.const 1 i32.sub local.tee $0 @@ -3579,47 +3578,46 @@ local.set $0 end local.get $0 - local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $0 i32.const 100000000 i32.ge_u i32.add @@ -3658,87 +3656,86 @@ local.get $1 i32.const 9760 i32.add - local.tee $1 + local.tee $4 i32.const 101 i32.store16 offset=2 - local.get $1 + local.get $4 i32.const 4 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.tee $2 + local.tee $1 i32.const 0 i32.lt_s - local.tee $4 + local.tee $5 if i32.const 0 - local.get $2 + local.get $1 i32.sub - local.set $2 + local.set $1 end - local.get $2 - local.tee $5 + local.get $1 i32.const 100000 i32.lt_u if (result i32) - local.get $5 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $5 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $5 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $5 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $5 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $5 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $5 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $5 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.set $5 - local.get $2 - local.get $5 + local.set $3 + local.get $1 + local.get $3 i32.const 1 i32.add - local.tee $2 + local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $4 i32.const 45 i32.const 43 - local.get $4 + local.get $5 select i32.store16 offset=4 local.get $0 - local.get $2 + local.get $1 i32.add i32.const 2 i32.add @@ -3784,20 +3781,20 @@ local.tee $3 i64.const 4294967295 i64.and - local.tee $4 + local.tee $0 i64.const 31 i64.shl - local.set $0 + local.set $4 local.get $3 i64.const 32 i64.shr_u local.tee $3 i64.const 31 i64.shl - local.get $4 + local.get $0 i64.const 31 i64.shl - local.get $4 + local.get $0 i64.const 10 i64.shl i64.const 32 @@ -3825,11 +3822,11 @@ local.get $3 i64.const 31 i64.shl - local.get $0 + local.get $4 i64.const 32 i64.shr_u i64.add - local.get $0 + local.get $4 i64.const 4294967295 i64.and i64.const 2147483647 @@ -3845,10 +3842,10 @@ local.get $3 i64.const 2147483647 i64.mul - local.get $4 + local.get $0 i64.const 2147483647 i64.mul - local.get $4 + local.get $0 i64.const 4294966784 i64.mul i64.const 32 @@ -5343,19 +5340,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -5365,16 +5362,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -5397,7 +5393,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -5407,23 +5403,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -5431,7 +5427,7 @@ else i32.const 11248 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1632 @@ -5441,7 +5437,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 11252 @@ -5456,28 +5452,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-elementaccess.optimized.wat b/tests/compiler/resolve-elementaccess.optimized.wat index 6380aaa0b6..784d539178 100644 --- a/tests/compiler/resolve-elementaccess.optimized.wat +++ b/tests/compiler/resolve-elementaccess.optimized.wat @@ -184,18 +184,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 21236 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -209,9 +208,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -221,15 +220,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -270,20 +269,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -715,9 +714,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -764,6 +760,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1517,18 +1516,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $3 + local.get $0 + i32.const 16 + i32.add local.tee $4 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1539,13 +1537,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $4 i32.const 19 i32.add i32.const -16 @@ -1553,32 +1551,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1594,16 +1592,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1611,7 +1609,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1619,8 +1617,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1637,7 +1635,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -1647,13 +1645,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1666,40 +1664,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -2699,95 +2697,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -2818,39 +2816,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 @@ -3360,64 +3358,63 @@ i32.const 101 i32.store16 offset=2 local.get $0 - local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $1 i32.const 0 i32.lt_s local.tee $2 if i32.const 0 - local.get $0 + local.get $1 i32.sub - local.set $0 + local.set $1 end - local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -3425,15 +3422,15 @@ end i32.const 1 i32.add - local.tee $0 + local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $0 i32.const 45 i32.const 43 local.get $2 select i32.store16 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.add else @@ -3548,10 +3545,10 @@ (local $3 i64) (local $4 i64) (local $5 i64) - (local $6 i64) + (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) + (local $9 i64) (local $10 i64) (local $11 i64) (local $12 i64) @@ -3577,19 +3574,19 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $7 + local.tee $6 i32.const 1 - local.get $7 + local.get $6 select i32.const 1075 i32.sub - local.tee $8 + local.tee $7 i32.const 1 i32.sub local.get $1 i64.const 4503599627370495 i64.and - local.get $7 + local.get $6 i32.const 0 i32.ne i64.extend_i32_u @@ -3604,11 +3601,11 @@ local.tee $3 i64.clz i32.wrap_i64 - local.tee $7 + local.tee $6 i32.sub - local.set $9 + local.set $8 local.get $3 - local.get $7 + local.get $6 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -3618,25 +3615,25 @@ i64.eq i32.const 1 i32.add - local.tee $7 + local.tee $6 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $8 local.get $7 + local.get $6 i32.sub - local.get $9 + local.get $8 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $9 + local.get $8 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $7 + local.tee $6 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -3645,9 +3642,9 @@ f64.add local.tee $0 i32.trunc_f64_s - local.tee $8 + local.tee $7 local.get $0 - local.get $8 + local.get $7 f64.convert_i32_s f64.ne i32.add @@ -3655,18 +3652,18 @@ i32.shr_s i32.const 1 i32.add - local.tee $8 + local.tee $7 i32.const 3 i32.shl - local.tee $9 + local.tee $8 i32.sub global.set $~lib/util/number/_K - local.get $9 + local.get $8 i32.const 1832 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $8 + local.get $7 i32.const 1 i32.shl i32.const 2528 @@ -3680,81 +3677,81 @@ local.tee $1 i64.const 4294967295 i64.and - local.set $10 + local.set $3 local.get $1 i64.const 32 i64.shr_u - local.tee $11 + local.tee $9 global.get $~lib/util/number/_frc_pow - local.tee $4 + local.tee $10 i64.const 4294967295 i64.and - local.tee $12 + local.tee $11 local.tee $1 i64.mul local.get $1 - local.get $10 + local.get $3 i64.mul i64.const 32 i64.shr_u i64.add - local.set $13 + local.set $4 global.get $~lib/util/number/_frc_plus - local.tee $3 + local.tee $1 i64.const 4294967295 i64.and - local.set $1 - local.get $3 + local.set $12 + local.get $1 i64.const 32 i64.shr_u - local.tee $5 - local.get $12 + local.tee $1 + local.get $11 i64.mul - local.get $1 + local.get $11 local.get $12 i64.mul i64.const 32 i64.shr_u i64.add - local.set $14 + local.set $5 global.get $~lib/util/number/_frc_minus - local.tee $6 + local.tee $13 i64.const 4294967295 i64.and - local.set $3 - local.get $6 + local.set $14 + local.get $13 i64.const 32 i64.shr_u - local.tee $6 - local.get $12 + local.tee $13 + local.get $11 i64.mul - local.get $3 - local.get $12 + local.get $11 + local.get $14 i64.mul i64.const 32 i64.shr_u i64.add - local.set $12 + local.set $11 local.get $2 i32.const 1 i32.shl i32.const 1776 i32.add - local.get $11 - local.get $4 + local.get $9 + local.get $10 i64.const 32 i64.shr_u - local.tee $4 - local.tee $11 + local.tee $9 + local.tee $10 i64.mul - local.get $13 + local.get $4 i64.const 32 i64.shr_u i64.add + local.get $3 local.get $10 - local.get $11 i64.mul - local.get $13 + local.get $4 i64.const 4294967295 i64.and i64.add @@ -3763,17 +3760,17 @@ i64.const 32 i64.shr_u i64.add - local.get $4 - local.get $5 + local.get $1 + local.get $9 i64.mul - local.get $14 + local.get $5 i64.const 32 i64.shr_u i64.add - local.get $1 - local.get $4 + local.get $9 + local.get $12 i64.mul - local.get $14 + local.get $5 i64.const 4294967295 i64.and i64.add @@ -3786,22 +3783,22 @@ i64.sub local.tee $1 global.get $~lib/util/number/_exp_pow - local.get $7 + local.get $6 i32.add i32.const -64 i32.sub local.get $1 - local.get $4 - local.get $6 + local.get $9 + local.get $13 i64.mul - local.get $12 + local.get $11 i64.const 32 i64.shr_u i64.add - local.get $3 - local.get $4 + local.get $9 + local.get $14 i64.mul - local.get $12 + local.get $11 i64.const 4294967295 i64.and i64.add @@ -3999,14 +3996,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -4089,7 +4086,7 @@ local.get $0 i32.const 255 i32.and - local.tee $0 + local.tee $2 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -4100,69 +4097,68 @@ br $__inlined_func$~lib/util/number/utoa32 end global.get $~lib/memory/__stack_pointer - local.get $0 - local.tee $1 + local.get $2 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $2 i32.const 100000000 i32.ge_u i32.add end end - local.tee $2 + local.tee $1 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store - local.get $1 local.get $0 local.get $2 + local.get $1 call $~lib/util/number/utoa32_dec_lut global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 end ) (func $~lib/rt/__visit_members (param $0 i32) @@ -4690,18 +4686,18 @@ i32.const 2 local.get $1 i32.shl - local.tee $1 + local.tee $4 i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $3 i32.store offset=4 + local.get $3 local.get $4 - local.get $1 call $~lib/memory/memory.fill local.get $0 - local.get $4 + local.get $3 i32.store - local.get $4 + local.get $3 if local.get $0 i32.eqz @@ -4714,10 +4710,10 @@ unreachable end global.get $~lib/rt/itcms/white - local.get $4 + local.get $3 i32.const 20 i32.sub - local.tee $2 + local.tee $1 i32.load offset=4 i32.const 3 i32.and @@ -4729,33 +4725,33 @@ i32.load offset=4 i32.const 3 i32.and - local.tee $3 + local.tee $2 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $2 + local.get $1 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $2 i32.const 3 i32.eq i32.and if - local.get $2 + local.get $1 call $~lib/rt/itcms/Object#makeGray end end end end local.get $0 - local.get $4 + local.get $3 i32.store offset=4 local.get $0 - local.get $1 + local.get $4 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 diff --git a/tests/compiler/resolve-function-expression.optimized.wat b/tests/compiler/resolve-function-expression.optimized.wat index 8fe6061e9c..a61930d922 100644 --- a/tests/compiler/resolve-function-expression.optimized.wat +++ b/tests/compiler/resolve-function-expression.optimized.wat @@ -541,9 +541,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -590,6 +587,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1167,18 +1167,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $1 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $3 + local.get $0 + i32.const 16 + i32.add local.tee $2 - local.get $1 i32.const 1073741820 i32.gt_u if @@ -1189,13 +1188,13 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $1 + local.get $2 i32.const 19 i32.add i32.const -16 @@ -1203,32 +1202,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size local.tee $1 - local.get $3 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $2 + local.get $3 i32.load offset=1568 local.get $1 i32.const 16 @@ -1244,16 +1243,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $2 local.get $1 - local.get $4 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1261,7 +1260,7 @@ unreachable end end - local.get $2 + local.get $3 local.get $1 i32.const 16 i32.shl @@ -1269,8 +1268,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1287,7 +1286,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1297,13 +1296,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.set $4 - local.get $3 + local.set $5 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1316,40 +1315,40 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub - local.tee $5 + local.tee $2 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $1 i32.const 4 i32.add i32.add - local.tee $3 - local.get $5 + local.tee $4 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $5 i32.const -2 i32.and i32.store @@ -2049,19 +2048,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -2071,16 +2070,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -2103,7 +2101,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2113,23 +2111,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -2137,7 +2135,7 @@ else i32.const 3424 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1648 @@ -2147,7 +2145,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 3428 @@ -2162,28 +2160,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-nested.optimized.wat b/tests/compiler/resolve-nested.optimized.wat index 3a1b652542..33bc524bb2 100644 --- a/tests/compiler/resolve-nested.optimized.wat +++ b/tests/compiler/resolve-nested.optimized.wat @@ -510,9 +510,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -559,6 +556,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -971,13 +971,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -987,9 +987,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1059,7 +1059,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1067,7 +1067,7 @@ memory.size local.tee $1 i32.const 4 - local.get $3 + local.get $2 i32.load offset=1568 local.get $1 i32.const 16 @@ -1082,16 +1082,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1099,7 +1099,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $1 i32.const 16 i32.shl @@ -1107,7 +1107,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1134,22 +1134,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $2 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1158,19 +1158,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $2 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1528,19 +1528,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1550,16 +1550,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1582,7 +1581,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1592,23 +1591,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1616,7 +1615,7 @@ else i32.const 1440 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1626,7 +1625,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1444 @@ -1641,28 +1640,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-new.optimized.wat b/tests/compiler/resolve-new.optimized.wat index cfc75ea82f..54d44f9e81 100644 --- a/tests/compiler/resolve-new.optimized.wat +++ b/tests/compiler/resolve-new.optimized.wat @@ -509,9 +509,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -558,6 +555,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -970,13 +970,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -986,9 +986,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1120,7 +1120,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1174,7 +1174,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1182,7 +1182,7 @@ memory.size local.tee $0 i32.const 4 - local.get $1 + local.get $3 i32.load offset=1568 local.get $0 i32.const 16 @@ -1197,16 +1197,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $0 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1214,7 +1214,7 @@ unreachable end end - local.get $1 + local.get $3 local.get $0 i32.const 16 i32.shl @@ -1222,7 +1222,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1249,22 +1249,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if local.get $0 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1273,19 +1273,19 @@ local.get $0 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1297,8 +1297,8 @@ i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.load i32.const -3 i32.and @@ -1311,11 +1311,11 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 local.set $3 local.get $0 - local.get $1 + local.get $2 global.get $~lib/rt/itcms/white i32.or i32.store offset=4 @@ -1330,7 +1330,7 @@ local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1342,7 +1342,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $2 + local.get $1 local.get $0 i32.const 20 i32.add @@ -1362,19 +1362,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1384,16 +1384,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1416,7 +1415,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1426,23 +1425,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1450,7 +1449,7 @@ else i32.const 1440 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1460,7 +1459,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1444 @@ -1475,28 +1474,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-propertyaccess.optimized.wat b/tests/compiler/resolve-propertyaccess.optimized.wat index 3a9b5a77b3..d1b0d42edb 100644 --- a/tests/compiler/resolve-propertyaccess.optimized.wat +++ b/tests/compiler/resolve-propertyaccess.optimized.wat @@ -541,9 +541,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -590,6 +587,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1167,18 +1167,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $4 + local.get $0 + i32.const 16 + i32.add local.tee $3 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1189,13 +1188,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $3 i32.const 19 i32.add i32.const -16 @@ -1203,32 +1202,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $5 i32.add else - local.get $4 + local.get $5 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1244,16 +1243,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $3 local.get $2 - local.get $5 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1261,7 +1260,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1269,8 +1268,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1287,7 +1286,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $5 i32.lt_u if i32.const 0 @@ -1297,13 +1296,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $4 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1316,40 +1315,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $4 + local.get $5 i32.sub - local.tee $6 + local.tee $3 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $4 + local.get $5 i32.or i32.store - local.get $4 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 - local.get $6 + local.tee $5 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -1628,7 +1627,7 @@ local.get $0 i32.const 31 i32.shr_u - local.tee $3 + local.tee $2 select local.tee $0 local.tee $1 @@ -1677,14 +1676,14 @@ i32.add end end - local.get $3 + local.get $2 i32.add - local.tee $2 + local.tee $1 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $4 i32.store loop $while-continue|0 local.get $0 @@ -1694,20 +1693,20 @@ local.get $0 i32.const 10000 i32.rem_u - local.set $4 + local.set $3 local.get $0 i32.const 10000 i32.div_u local.set $0 - local.get $2 + local.get $1 i32.const 4 i32.sub - local.tee $2 + local.tee $1 i32.const 1 i32.shl - local.get $1 - i32.add local.get $4 + i32.add + local.get $3 i32.const 100 i32.div_u i32.const 2 @@ -1715,7 +1714,7 @@ i32.const 1660 i32.add i64.load32_u - local.get $4 + local.get $3 i32.const 100 i32.rem_u i32.const 2 @@ -1734,13 +1733,13 @@ i32.const 100 i32.ge_u if - local.get $2 + local.get $1 i32.const 2 i32.sub - local.tee $2 + local.tee $1 i32.const 1 i32.shl - local.get $1 + local.get $4 i32.add local.get $0 i32.const 100 @@ -1760,12 +1759,12 @@ i32.const 10 i32.ge_u if - local.get $2 + local.get $1 i32.const 2 i32.sub i32.const 1 i32.shl - local.get $1 + local.get $4 i32.add local.get $0 i32.const 2 @@ -1775,21 +1774,21 @@ i32.load i32.store else - local.get $2 + local.get $1 i32.const 1 i32.sub i32.const 1 i32.shl - local.get $1 + local.get $4 i32.add local.get $0 i32.const 48 i32.add i32.store16 end - local.get $3 + local.get $2 if - local.get $1 + local.get $4 i32.const 45 i32.store16 end @@ -1797,7 +1796,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $4 end ) (func $~lib/string/String.__eq (param $0 i32) (param $1 i32) (result i32) @@ -1890,14 +1889,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2316,19 +2315,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -2338,16 +2337,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -2370,7 +2368,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2380,23 +2378,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -2404,7 +2402,7 @@ else i32.const 3680 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1472 @@ -2414,7 +2412,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 3684 @@ -2429,28 +2427,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-ternary.optimized.wat b/tests/compiler/resolve-ternary.optimized.wat index 674f0201e0..b1263560d7 100644 --- a/tests/compiler/resolve-ternary.optimized.wat +++ b/tests/compiler/resolve-ternary.optimized.wat @@ -545,9 +545,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -594,6 +591,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1171,18 +1171,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $1 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $3 + local.get $0 + i32.const 16 + i32.add local.tee $2 - local.get $1 i32.const 1073741820 i32.gt_u if @@ -1193,13 +1192,13 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $1 + local.get $2 i32.const 19 i32.add i32.const -16 @@ -1207,32 +1206,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size local.tee $1 - local.get $3 + local.get $4 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $4 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $4 i32.add else - local.get $3 + local.get $4 end i32.const 4 - local.get $2 + local.get $3 i32.load offset=1568 local.get $1 i32.const 16 @@ -1248,16 +1247,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $2 local.get $1 - local.get $4 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1265,7 +1264,7 @@ unreachable end end - local.get $2 + local.get $3 local.get $1 i32.const 16 i32.shl @@ -1273,8 +1272,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $2 local.get $3 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1291,7 +1290,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $4 i32.lt_u if i32.const 0 @@ -1301,13 +1300,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.set $4 - local.get $3 + local.set $5 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -1320,40 +1319,40 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 i32.const -4 i32.and - local.get $3 + local.get $4 i32.sub - local.tee $5 + local.tee $2 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $5 i32.const 2 i32.and - local.get $3 + local.get $4 i32.or i32.store - local.get $3 + local.get $4 local.get $1 i32.const 4 i32.add i32.add - local.tee $3 - local.get $5 + local.tee $4 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $2 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $5 i32.const -2 i32.and i32.store @@ -1784,14 +1783,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2699,95 +2698,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -2818,39 +2817,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 @@ -3132,17 +3131,17 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 21 i32.le_s local.get $0 - local.get $3 + local.get $2 i32.le_s i32.and if (result i32) loop $for-loop|0 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -3159,26 +3158,26 @@ br $for-loop|0 end end - local.get $3 + local.get $2 i32.const 1 i32.shl i32.const 3472 i32.add i32.const 3145774 i32.store - local.get $3 + local.get $2 i32.const 2 i32.add else - local.get $3 + local.get $2 i32.const 21 i32.le_s - local.get $3 + local.get $2 i32.const 0 i32.gt_s i32.and if (result i32) - local.get $3 + local.get $2 i32.const 1 i32.shl i32.const 3472 @@ -3200,16 +3199,16 @@ i32.const 1 i32.add else - local.get $3 + local.get $2 i32.const 0 i32.le_s - local.get $3 + local.get $2 i32.const -6 i32.gt_s i32.and if (result i32) i32.const 2 - local.get $3 + local.get $2 i32.sub local.tee $2 i32.const 1 @@ -3257,7 +3256,7 @@ i32.const 101 i32.store16 i32.const 3476 - local.get $3 + local.get $2 i32.const 1 i32.sub local.tee $0 @@ -3346,19 +3345,19 @@ local.get $1 i32.const 3472 i32.add - local.tee $2 + local.tee $3 i32.const 101 i32.store16 offset=2 - local.get $2 + local.get $3 i32.const 4 i32.add - local.get $3 + local.get $2 i32.const 1 i32.sub local.tee $1 i32.const 0 i32.lt_s - local.tee $3 + local.tee $2 if i32.const 0 local.get $1 @@ -3416,10 +3415,10 @@ i32.add local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $3 i32.const 45 i32.const 43 - local.get $3 + local.get $2 select i32.store16 offset=4 local.get $0 @@ -3610,20 +3609,20 @@ local.tee $3 i64.const 4294967295 i64.and - local.tee $4 + local.tee $1 i64.const 31 i64.shl - local.set $1 + local.set $4 local.get $3 i64.const 32 i64.shr_u local.tee $3 i64.const 31 i64.shl - local.get $4 + local.get $1 i64.const 31 i64.shl - local.get $4 + local.get $1 i64.const 10 i64.shl i64.const 32 @@ -3651,11 +3650,11 @@ local.get $3 i64.const 31 i64.shl - local.get $1 + local.get $4 i64.const 32 i64.shr_u i64.add - local.get $1 + local.get $4 i64.const 4294967295 i64.and i64.const 2147483647 @@ -3671,10 +3670,10 @@ local.get $3 i64.const 2147483647 i64.mul - local.get $4 + local.get $1 i64.const 2147483647 i64.mul - local.get $4 + local.get $1 i64.const 4294966784 i64.mul i64.const 32 @@ -3800,19 +3799,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -3822,16 +3821,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -3854,7 +3852,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -3864,23 +3862,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -3888,7 +3886,7 @@ else i32.const 4608 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1472 @@ -3898,7 +3896,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 4612 @@ -3913,28 +3911,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/resolve-unary.optimized.wat b/tests/compiler/resolve-unary.optimized.wat index 3d253935e6..189f8f8c5e 100644 --- a/tests/compiler/resolve-unary.optimized.wat +++ b/tests/compiler/resolve-unary.optimized.wat @@ -567,9 +567,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -616,6 +613,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1193,18 +1193,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $4 + local.get $0 + i32.const 16 + i32.add local.tee $3 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1215,13 +1214,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $3 i32.const 19 i32.add i32.const -16 @@ -1229,32 +1228,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $5 i32.add else - local.get $4 + local.get $5 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1270,16 +1269,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $3 local.get $2 - local.get $5 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1287,7 +1286,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1295,8 +1294,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1313,7 +1312,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $5 i32.lt_u if i32.const 0 @@ -1323,13 +1322,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $4 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1342,40 +1341,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $4 + local.get $5 i32.sub - local.tee $6 + local.tee $3 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $4 + local.get $5 i32.or i32.store - local.get $4 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 - local.get $6 + local.tee $5 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -1654,7 +1653,7 @@ local.get $0 i32.const 31 i32.shr_u - local.tee $3 + local.tee $2 select local.tee $0 local.tee $1 @@ -1703,14 +1702,14 @@ i32.add end end - local.get $3 + local.get $2 i32.add - local.tee $2 + local.tee $1 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $4 i32.store loop $while-continue|0 local.get $0 @@ -1720,20 +1719,20 @@ local.get $0 i32.const 10000 i32.rem_u - local.set $4 + local.set $3 local.get $0 i32.const 10000 i32.div_u local.set $0 - local.get $2 + local.get $1 i32.const 4 i32.sub - local.tee $2 + local.tee $1 i32.const 1 i32.shl - local.get $1 - i32.add local.get $4 + i32.add + local.get $3 i32.const 100 i32.div_u i32.const 2 @@ -1741,7 +1740,7 @@ i32.const 1660 i32.add i64.load32_u - local.get $4 + local.get $3 i32.const 100 i32.rem_u i32.const 2 @@ -1760,13 +1759,13 @@ i32.const 100 i32.ge_u if - local.get $2 + local.get $1 i32.const 2 i32.sub - local.tee $2 + local.tee $1 i32.const 1 i32.shl - local.get $1 + local.get $4 i32.add local.get $0 i32.const 100 @@ -1786,12 +1785,12 @@ i32.const 10 i32.ge_u if - local.get $2 + local.get $1 i32.const 2 i32.sub i32.const 1 i32.shl - local.get $1 + local.get $4 i32.add local.get $0 i32.const 2 @@ -1801,21 +1800,21 @@ i32.load i32.store else - local.get $2 + local.get $1 i32.const 1 i32.sub i32.const 1 i32.shl - local.get $1 + local.get $4 i32.add local.get $0 i32.const 48 i32.add i32.store16 end - local.get $3 + local.get $2 if - local.get $1 + local.get $4 i32.const 45 i32.store16 end @@ -1823,7 +1822,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $4 end ) (func $~lib/string/String.__eq (param $0 i32) (param $1 i32) (result i32) @@ -1916,14 +1915,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2619,19 +2618,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -2641,16 +2640,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -2673,7 +2671,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2683,23 +2681,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -2707,7 +2705,7 @@ else i32.const 3728 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1472 @@ -2717,7 +2715,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 3732 @@ -2732,28 +2730,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/rt/finalize.optimized.wat b/tests/compiler/rt/finalize.optimized.wat index cdbde1548a..37ecf3139d 100644 --- a/tests/compiler/rt/finalize.optimized.wat +++ b/tests/compiler/rt/finalize.optimized.wat @@ -504,9 +504,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -553,6 +550,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -980,13 +980,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -996,9 +996,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1066,7 +1066,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1120,7 +1120,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1128,7 +1128,7 @@ memory.size local.tee $0 i32.const 4 - local.get $1 + local.get $3 i32.load offset=1568 local.get $0 i32.const 16 @@ -1143,16 +1143,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $0 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1160,7 +1160,7 @@ unreachable end end - local.get $1 + local.get $3 local.get $0 i32.const 16 i32.shl @@ -1168,7 +1168,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1195,22 +1195,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if local.get $0 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1219,19 +1219,19 @@ local.get $0 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1243,8 +1243,8 @@ i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.load i32.const -3 i32.and @@ -1257,11 +1257,11 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 local.set $3 local.get $0 - local.get $1 + local.get $2 global.get $~lib/rt/itcms/white i32.or i32.store offset=4 @@ -1276,7 +1276,7 @@ local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1288,7 +1288,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $2 + local.get $1 local.get $0 i32.const 20 i32.add @@ -1393,19 +1393,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1415,16 +1415,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1447,7 +1446,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1457,23 +1456,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1481,7 +1480,7 @@ else i32.const 1488 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1491,7 +1490,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1492 @@ -1506,28 +1505,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/rt/instanceof.optimized.wat b/tests/compiler/rt/instanceof.optimized.wat index 9f5e3a46ba..73894ba520 100644 --- a/tests/compiler/rt/instanceof.optimized.wat +++ b/tests/compiler/rt/instanceof.optimized.wat @@ -562,9 +562,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -611,6 +608,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1023,13 +1023,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1039,9 +1039,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1111,7 +1111,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1119,7 +1119,7 @@ memory.size local.tee $1 i32.const 4 - local.get $3 + local.get $2 i32.load offset=1568 local.get $1 i32.const 16 @@ -1134,16 +1134,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1151,7 +1151,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $1 i32.const 16 i32.shl @@ -1159,7 +1159,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1186,22 +1186,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $2 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1210,19 +1210,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $2 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -2128,19 +2128,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -2150,16 +2150,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -2182,7 +2181,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2192,23 +2191,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -2216,7 +2215,7 @@ else i32.const 1504 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -2226,7 +2225,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1508 @@ -2241,28 +2240,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/rt/runtime-incremental-export.optimized.wat b/tests/compiler/rt/runtime-incremental-export.optimized.wat index 1ecc400228..d8690db61b 100644 --- a/tests/compiler/rt/runtime-incremental-export.optimized.wat +++ b/tests/compiler/rt/runtime-incremental-export.optimized.wat @@ -168,10 +168,10 @@ local.get $0 call $~lib/rt/itcms/Object#unlink global.get $~lib/rt/itcms/toSpace - local.set $2 + local.set $1 local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.le_u if (result i32) @@ -179,7 +179,7 @@ else i32.const 1568 i32.load - local.get $1 + local.get $2 i32.lt_u if i32.const 1248 @@ -189,7 +189,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 i32.const 3 i32.shl i32.const 1572 @@ -204,27 +204,27 @@ else i32.const 2 end - local.set $1 - local.get $2 - i32.load offset=8 local.set $3 + local.get $1 + i32.load offset=8 + local.set $2 local.get $0 local.get $1 - local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $2 i32.store offset=8 - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and local.get $0 i32.or i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 ) @@ -649,9 +649,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -698,6 +695,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1275,18 +1275,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $4 + local.get $0 + i32.const 16 + i32.add local.tee $3 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1297,13 +1296,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $3 i32.const 19 i32.add i32.const -16 @@ -1311,32 +1310,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $5 i32.add else - local.get $4 + local.get $5 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1352,16 +1351,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $3 local.get $2 - local.get $5 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1369,7 +1368,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1377,8 +1376,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1395,7 +1394,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $5 i32.lt_u if i32.const 0 @@ -1405,13 +1404,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $4 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1424,40 +1423,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $4 + local.get $5 i32.sub - local.tee $6 + local.tee $3 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $4 + local.get $5 i32.or i32.store - local.get $4 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 - local.get $6 + local.tee $5 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -1756,7 +1755,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $2 + local.tee $1 i32.load offset=4 i32.const 3 i32.and @@ -1774,33 +1773,33 @@ i32.const 1 i32.eq if - local.get $2 + local.get $1 call $~lib/rt/itcms/Object#makeGray else - local.get $2 + local.get $1 call $~lib/rt/itcms/Object#unlink global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $0 i32.load offset=8 - local.set $0 - local.get $2 + local.set $2 local.get $1 + local.get $0 global.get $~lib/rt/itcms/white i32.or i32.store offset=4 + local.get $1 local.get $2 - local.get $0 i32.store offset=8 - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 + local.get $0 local.get $1 - local.get $2 i32.store offset=8 end ) diff --git a/tests/compiler/rt/runtime-minimal-export.optimized.wat b/tests/compiler/rt/runtime-minimal-export.optimized.wat index 1ca7c051d8..7692b5e3f8 100644 --- a/tests/compiler/rt/runtime-minimal-export.optimized.wat +++ b/tests/compiler/rt/runtime-minimal-export.optimized.wat @@ -454,9 +454,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -503,6 +500,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -768,18 +768,17 @@ call $~lib/builtins/abort unreachable end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $3 + local.get $0 + i32.const 16 + i32.add local.tee $4 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -790,13 +789,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $4 i32.const 19 i32.add i32.const -16 @@ -804,32 +803,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -845,16 +844,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -862,7 +861,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -870,8 +869,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -888,7 +887,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -898,13 +897,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -917,40 +916,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -1124,7 +1123,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $2 + local.tee $1 i32.load offset=4 i32.const 3 i32.and @@ -1138,30 +1137,30 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 call $~lib/rt/tcms/Object#unlink global.get $~lib/rt/tcms/fromSpace - local.tee $1 + local.tee $0 i32.load offset=8 - local.set $0 - local.get $2 + local.set $2 local.get $1 + local.get $0 global.get $~lib/rt/tcms/white i32.or i32.store offset=4 + local.get $1 local.get $2 - local.get $0 i32.store offset=8 - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 + local.get $0 local.get $1 - local.get $2 i32.store offset=8 ) (func $~lib/rt/tcms/__collect @@ -1179,17 +1178,17 @@ i32.const 1376 call $byn-split-outlined-A$~lib/rt/tcms/__visit global.get $~lib/rt/tcms/pinSpace - local.tee $0 + local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.set $1 + local.set $0 loop $while-continue|0 local.get $0 local.get $1 i32.ne if - local.get $1 + local.get $0 i32.load offset=4 i32.const 3 i32.and @@ -1203,15 +1202,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 20 i32.add call $~lib/rt/__visit_members - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.set $1 + local.set $0 br $while-continue|0 end end @@ -1223,13 +1222,13 @@ i32.load offset=4 i32.const -4 i32.and - local.set $1 + local.set $0 loop $while-continue|1 - local.get $1 + local.get $0 local.get $3 i32.ne if - local.get $1 + local.get $0 i32.load offset=4 i32.const 3 i32.and @@ -1243,15 +1242,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 20 i32.add call $~lib/rt/__visit_members - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.set $1 + local.set $0 br $while-continue|1 end end @@ -1260,14 +1259,14 @@ i32.load offset=4 i32.const -4 i32.and - local.set $1 + local.set $0 loop $while-continue|2 - local.get $1 + local.get $0 local.get $5 i32.ne if global.get $~lib/rt/tcms/white - local.get $1 + local.get $0 i32.load offset=4 i32.const 3 i32.and @@ -1280,23 +1279,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=4 i32.const -4 i32.and - local.get $1 + local.get $0 i32.const 1484 i32.lt_u if - local.get $1 + local.get $0 i32.const 0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 else global.get $~lib/rt/tcms/total - local.get $1 + local.get $0 i32.load i32.const -4 i32.and @@ -1304,10 +1303,10 @@ i32.add i32.sub global.set $~lib/rt/tcms/total - local.get $1 + local.get $0 i32.const 4 i32.add - local.tee $1 + local.tee $0 i32.const 1484 i32.ge_u if @@ -1317,15 +1316,15 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $0 i32.const 4 i32.sub local.set $6 - local.get $1 + local.get $0 i32.const 15 i32.and i32.const 1 - local.get $1 + local.get $0 select if (result i32) i32.const 1 @@ -1353,7 +1352,7 @@ call $~lib/rt/tlsf/insertBlock end end - local.set $1 + local.set $0 br $while-continue|2 end end @@ -1432,37 +1431,37 @@ local.get $0 i32.const 20 i32.sub - local.tee $2 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $2 + local.get $1 call $~lib/rt/tcms/Object#unlink global.get $~lib/rt/tcms/toSpace - local.tee $1 + local.tee $0 i32.load offset=8 - local.set $0 - local.get $2 + local.set $2 local.get $1 + local.get $0 global.get $~lib/rt/tcms/white i32.eqz i32.or i32.store offset=4 + local.get $1 local.get $2 - local.get $0 i32.store offset=8 - local.get $0 - local.get $0 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 + local.get $0 local.get $1 - local.get $2 i32.store offset=8 end ) diff --git a/tests/compiler/rt/runtime-stub-export.optimized.wat b/tests/compiler/rt/runtime-stub-export.optimized.wat index 174191b564..2c7bfa46b4 100644 --- a/tests/compiler/rt/runtime-stub-export.optimized.wat +++ b/tests/compiler/rt/runtime-stub-export.optimized.wat @@ -41,7 +41,7 @@ local.get $0 i32.const 16 i32.add - local.tee $3 + local.tee $4 i32.const 1073741820 i32.gt_u if @@ -53,22 +53,22 @@ unreachable end global.get $~lib/rt/stub/offset - local.tee $4 + local.tee $3 i32.const 4 i32.add local.tee $2 - local.get $3 + local.get $4 i32.const 19 i32.add i32.const -16 i32.and i32.const 4 i32.sub - local.tee $5 + local.tee $4 i32.add - local.tee $3 - memory.size local.tee $6 + memory.size + local.tee $5 i32.const 16 i32.shl i32.const 15 @@ -78,8 +78,8 @@ local.tee $7 i32.gt_u if + local.get $5 local.get $6 - local.get $3 local.get $7 i32.sub i32.const 65535 @@ -89,7 +89,7 @@ i32.const 16 i32.shr_u local.tee $7 - local.get $6 + local.get $5 local.get $7 i32.gt_s select @@ -106,10 +106,10 @@ end end end - local.get $3 + local.get $6 global.set $~lib/rt/stub/offset + local.get $3 local.get $4 - local.get $5 i32.store local.get $2 i32.const 4 diff --git a/tests/compiler/std-wasi/console.optimized.wat b/tests/compiler/std-wasi/console.optimized.wat index 6b53f4a141..dfaf9a5761 100644 --- a/tests/compiler/std-wasi/console.optimized.wat +++ b/tests/compiler/std-wasi/console.optimized.wat @@ -307,28 +307,28 @@ if local.get $0 i32.load16_u - local.tee $5 + local.tee $4 i32.const 128 i32.lt_u if (result i32) local.get $1 - local.get $5 + local.get $4 i32.store8 local.get $1 i32.const 1 i32.add else - local.get $5 + local.get $4 i32.const 2048 i32.lt_u if (result i32) local.get $1 - local.get $5 + local.get $4 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $5 + local.get $4 i32.const 63 i32.and i32.const 128 @@ -341,13 +341,13 @@ i32.const 2 i32.add else - local.get $5 + local.get $4 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $5 + local.get $4 i32.const 56320 i32.lt_u local.get $3 @@ -359,21 +359,21 @@ if local.get $0 i32.load16_u offset=2 - local.tee $4 + local.tee $5 i32.const 64512 i32.and i32.const 56320 i32.eq if local.get $1 - local.get $5 + local.get $4 i32.const 1023 i32.and i32.const 10 i32.shl i32.const 65536 i32.add - local.get $4 + local.get $5 i32.const 1023 i32.and i32.or @@ -424,12 +424,12 @@ end end local.get $1 - local.get $5 + local.get $4 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $5 + local.get $4 i32.const 6 i32.shr_u i32.const 63 @@ -441,7 +441,7 @@ i32.or i32.store16 local.get $1 - local.get $5 + local.get $4 i32.const 63 i32.and i32.const 128 @@ -1423,9 +1423,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -1472,6 +1469,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1985,26 +1985,26 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 br_table $case4|0 $case3|0 $case2|0 $case1|0 $case0|0 $break|0 end local.get $1 i32.load16_u offset=6 - local.tee $2 + local.tee $3 i32.const 128 i32.ge_u br_if $break|0 end local.get $1 i32.load16_u offset=4 - local.tee $5 + local.tee $2 i32.const 128 i32.ge_u br_if $break|0 end local.get $1 i32.load16_u offset=2 - local.tee $4 + local.tee $5 i32.const 128 i32.ge_u br_if $break|0 @@ -2019,19 +2019,19 @@ i32.const 1144 i32.store i32.const 1140 - local.get $3 + local.get $4 i32.store i32.const 1144 - local.get $4 + local.get $5 i32.const 8 i32.shl local.get $6 i32.or - local.get $5 + local.get $2 i32.const 16 i32.shl i32.or - local.get $2 + local.get $3 i32.const 24 i32.shl i32.or @@ -2057,27 +2057,27 @@ return end i32.const 0 - local.set $2 + local.set $3 local.get $1 - local.tee $4 - local.get $4 + local.tee $2 + local.get $2 i32.const 20 i32.sub i32.load offset=16 i32.add local.set $5 loop $while-continue|0 - local.get $4 + local.get $2 local.get $5 i32.lt_u if - local.get $4 + local.get $2 i32.load16_u local.tee $6 i32.const 128 i32.lt_u if (result i32) - local.get $2 + local.get $3 i32.const 1 i32.add else @@ -2085,7 +2085,7 @@ i32.const 2048 i32.lt_u if (result i32) - local.get $2 + local.get $3 i32.const 2 i32.add else @@ -2095,63 +2095,63 @@ i32.const 55296 i32.eq local.get $5 - local.get $4 + local.get $2 i32.const 2 i32.add i32.gt_u i32.and if - local.get $4 + local.get $2 i32.load16_u offset=2 i32.const 64512 i32.and i32.const 56320 i32.eq if - local.get $2 + local.get $3 i32.const 4 i32.add - local.set $2 - local.get $4 + local.set $3 + local.get $2 i32.const 4 i32.add - local.set $4 + local.set $2 br $while-continue|0 end end - local.get $2 + local.get $3 i32.const 3 i32.add end end - local.set $2 - local.get $4 + local.set $3 + local.get $2 i32.const 2 i32.add - local.set $4 + local.set $2 br $while-continue|0 end end - local.get $2 - local.set $4 + local.get $3 + local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $4 + local.get $2 call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add - local.set $4 + local.set $2 i32.const 3 global.set $~argumentsLength local.get $1 - local.get $3 local.get $4 - call $~lib/string/String.UTF8.encodeUnsafe@varargs local.get $2 + call $~lib/string/String.UTF8.encodeUnsafe@varargs + local.get $3 i32.ne if i32.const 0 @@ -2162,10 +2162,10 @@ unreachable end i32.const 1136 - local.get $4 + local.get $2 i32.store i32.const 1140 - local.get $2 + local.get $3 i32.store local.get $0 i32.const 1136 @@ -2173,7 +2173,7 @@ i32.const 1144 call $~lib/bindings/wasi_snapshot_preview1/fd_write local.set $0 - local.get $4 + local.get $2 call $~lib/rt/tlsf/__free local.get $0 i32.const 65535 @@ -2277,18 +2277,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 24356 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -2302,9 +2301,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2314,15 +2313,15 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -2363,20 +2362,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -2410,7 +2409,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $2 + local.set $1 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -2427,11 +2426,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -2473,9 +2472,9 @@ if local.get $0 i32.load - local.tee $1 + local.tee $2 if - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -2499,11 +2498,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -2529,7 +2528,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $2 + local.get $1 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -2845,17 +2844,15 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $2 + local.get $0 + i32.const 16 + i32.add call $~lib/rt/tlsf/allocateBlock local.tee $2 local.get $1 @@ -2864,26 +2861,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 - local.get $1 + local.get $3 global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -3535,7 +3532,7 @@ local.get $2 i32.const 4 i32.sub - local.tee $2 + local.tee $3 i32.const 1 i32.shl local.get $1 @@ -3549,10 +3546,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $3 + local.tee $4 i32.const 10000 i32.rem_u - local.tee $4 + local.tee $2 i32.const 100 i32.div_u i32.const 2 @@ -3560,7 +3557,7 @@ i32.const 6012 i32.add i64.load32_u - local.get $4 + local.get $2 i32.const 100 i32.rem_u i32.const 2 @@ -3572,7 +3569,7 @@ i64.shl i64.or i64.store - local.get $2 + local.get $3 i32.const 4 i32.sub local.tee $2 @@ -3580,7 +3577,7 @@ i32.shl local.get $1 i32.add - local.get $3 + local.get $4 i32.const 10000 i32.div_u local.tee $3 @@ -3663,13 +3660,13 @@ i32.mul local.get $0 i32.load offset=8 - local.tee $1 + local.tee $3 local.tee $0 i32.add - local.set $2 + local.set $1 loop $while-continue|0 local.get $0 - local.get $2 + local.get $1 i32.lt_u if local.get $0 @@ -3680,9 +3677,9 @@ if local.get $0 i32.load - local.tee $3 + local.tee $2 if - local.get $3 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end @@ -3693,9 +3690,9 @@ br $while-continue|0 end end - local.get $1 + local.get $3 if - local.get $1 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__visit end return @@ -4160,11 +4157,11 @@ global.get $~lib/memory/__stack_pointer local.get $5 i32.load - local.tee $3 + local.tee $4 i32.store block $__inlined_func$~lib/string/String.__eq (result i32) i32.const 1 - local.get $3 + local.get $4 local.get $1 local.tee $2 i32.eq @@ -4173,13 +4170,13 @@ i32.const 0 local.get $2 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $__inlined_func$~lib/string/String.__eq drop i32.const 0 - local.get $3 + local.get $4 i32.const 20 i32.sub i32.load offset=16 @@ -4196,7 +4193,7 @@ br_if $__inlined_func$~lib/string/String.__eq drop block $__inlined_func$~lib/util/string/compareImpl (result i32) - local.get $3 + local.get $4 i32.const 7 i32.and local.get $2 @@ -4211,16 +4208,16 @@ i32.eqz if loop $do-loop|0 - local.get $3 + local.get $4 i64.load local.get $2 i64.load i64.eq if - local.get $3 + local.get $4 i32.const 8 i32.add - local.set $3 + local.set $4 local.get $2 i32.const 8 i32.add @@ -4237,29 +4234,29 @@ end loop $while-continue|1 local.get $0 - local.tee $4 + local.tee $3 i32.const 1 i32.sub local.set $0 - local.get $4 + local.get $3 if - local.get $3 + local.get $4 i32.load16_u - local.tee $7 + local.tee $3 local.get $2 i32.load16_u - local.tee $4 + local.tee $7 i32.ne if + local.get $3 local.get $7 - local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end - local.get $3 + local.get $4 i32.const 2 i32.add - local.set $3 + local.set $4 local.get $2 i32.const 2 i32.add @@ -4294,9 +4291,9 @@ i32.const 0 ) (func $~lib/console/console.time (param $0 i32) - (local $1 i32) + (local $1 i64) (local $2 i32) - (local $3 i64) + (local $3 i32) (local $4 i32) (local $5 i32) block $folding-inner0 @@ -4309,14 +4306,14 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 global.get $~lib/console/timers - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 local.get $0 local.get $0 call $~lib/util/hash/HASH<~lib/string/String> @@ -4345,10 +4342,10 @@ end global.get $~lib/memory/__stack_pointer global.get $~lib/console/timers - local.tee $1 + local.tee $4 i32.store call $~lib/process/process.hrtime - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -4360,28 +4357,28 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $1 + local.get $4 local.get $0 local.get $0 call $~lib/util/hash/HASH<~lib/string/String> local.tee $2 call $~lib/map/Map<~lib/string/String,u64>#find - local.tee $4 + local.tee $3 if - local.get $4 local.get $3 + local.get $1 i64.store offset=8 else - local.get $1 + local.get $4 i32.load offset=16 - local.get $1 + local.get $4 i32.load offset=12 i32.eq if - local.get $1 - local.get $1 + local.get $4 + local.get $4 i32.load offset=20 - local.get $1 + local.get $4 i32.load offset=12 i32.const 3 i32.mul @@ -4389,10 +4386,10 @@ i32.div_s i32.lt_s if (result i32) - local.get $1 + local.get $4 i32.load offset=4 else - local.get $1 + local.get $4 i32.load offset=4 i32.const 1 i32.shl @@ -4402,45 +4399,45 @@ call $~lib/map/Map<~lib/string/String,u64>#rehash end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $4 i32.load offset=8 - local.tee $4 + local.tee $5 i32.store - local.get $1 - local.get $1 + local.get $4 + local.get $4 i32.load offset=16 - local.tee $5 + local.tee $3 i32.const 1 i32.add i32.store offset=16 - local.get $5 + local.get $3 i32.const 24 i32.mul - local.get $4 + local.get $5 i32.add - local.tee $4 + local.tee $3 local.get $0 i32.store local.get $0 if - local.get $1 + local.get $4 local.get $0 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 local.get $3 - i64.store offset=8 - local.get $1 local.get $1 + i64.store offset=8 + local.get $4 + local.get $4 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 + local.get $3 local.get $4 - local.get $1 i32.load - local.get $1 + local.get $4 i32.load offset=4 local.get $2 i32.and @@ -4451,7 +4448,7 @@ i32.load i32.store offset=16 local.get $0 - local.get $4 + local.get $3 i32.store end global.get $~lib/memory/__stack_pointer @@ -4695,14 +4692,14 @@ i32.load offset=4 i32.const 1 i32.shr_u - local.tee $0 + local.tee $2 i32.const 1 i32.add i32.const 4 local.get $1 i32.load offset=20 - local.tee $2 - local.get $2 + local.tee $0 + local.get $0 i32.const 4 i32.lt_u select @@ -4722,7 +4719,7 @@ end if local.get $1 - local.get $0 + local.get $2 call $~lib/map/Map<~lib/string/String,u64>#rehash end end @@ -4821,16 +4818,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $0 i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $0 local.get $1 local.get $2 select @@ -4839,7 +4836,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $3 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std-wasi/crypto.optimized.wat b/tests/compiler/std-wasi/crypto.optimized.wat index 17adffb932..e1ed29329c 100644 --- a/tests/compiler/std-wasi/crypto.optimized.wat +++ b/tests/compiler/std-wasi/crypto.optimized.wat @@ -263,28 +263,28 @@ if local.get $0 i32.load16_u - local.tee $5 + local.tee $4 i32.const 128 i32.lt_u if (result i32) local.get $1 - local.get $5 + local.get $4 i32.store8 local.get $1 i32.const 1 i32.add else - local.get $5 + local.get $4 i32.const 2048 i32.lt_u if (result i32) local.get $1 - local.get $5 + local.get $4 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $5 + local.get $4 i32.const 63 i32.and i32.const 128 @@ -297,13 +297,13 @@ i32.const 2 i32.add else - local.get $5 + local.get $4 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $5 + local.get $4 i32.const 56320 i32.lt_u local.get $3 @@ -315,21 +315,21 @@ if local.get $0 i32.load16_u offset=2 - local.tee $4 + local.tee $5 i32.const 64512 i32.and i32.const 56320 i32.eq if local.get $1 - local.get $5 + local.get $4 i32.const 1023 i32.and i32.const 10 i32.shl i32.const 65536 i32.add - local.get $4 + local.get $5 i32.const 1023 i32.and i32.or @@ -380,12 +380,12 @@ end end local.get $1 - local.get $5 + local.get $4 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $5 + local.get $4 i32.const 6 i32.shr_u i32.const 63 @@ -397,7 +397,7 @@ i32.or i32.store16 local.get $1 - local.get $5 + local.get $4 i32.const 63 i32.and i32.const 128 @@ -755,18 +755,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 23284 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -780,9 +779,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -792,15 +791,15 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -841,20 +840,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -1286,9 +1285,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -1335,6 +1331,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1528,7 +1527,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $2 + local.set $1 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -1545,11 +1544,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -1591,9 +1590,9 @@ if local.get $0 i32.load - local.tee $1 + local.tee $2 if - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -1617,11 +1616,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -1647,7 +1646,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $2 + local.get $1 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -2288,17 +2287,15 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $2 + local.get $0 + i32.const 16 + i32.add call $~lib/rt/tlsf/allocateBlock local.tee $2 local.get $1 @@ -2307,26 +2304,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 - local.get $1 + local.get $3 global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -3329,95 +3326,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -3448,39 +3445,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 @@ -3752,7 +3749,7 @@ block $__inlined_func$~lib/util/string/joinIntegerArray (result i32) local.get $0 i32.load offset=4 - local.set $3 + local.set $5 local.get $0 i32.load offset=8 global.get $~lib/memory/__stack_pointer @@ -3768,7 +3765,7 @@ i32.store i32.const 1 i32.sub - local.tee $0 + local.tee $6 i32.const 0 i32.lt_s if @@ -3780,11 +3777,11 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $0 + local.get $6 i32.eqz if block $__inlined_func$~lib/util/number/utoa32 (result i32) - local.get $3 + local.get $5 i32.load8_u local.set $0 global.get $~lib/memory/__stack_pointer @@ -3810,47 +3807,46 @@ end global.get $~lib/memory/__stack_pointer local.get $0 - local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $0 i32.const 100000000 i32.ge_u i32.add @@ -3877,56 +3873,56 @@ br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $6 i32.const 6652 i32.load i32.const 1 i32.shr_u - local.tee $4 + local.tee $0 i32.const 10 i32.add i32.mul i32.const 10 i32.add - local.tee $5 + local.tee $3 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $4 i32.store loop $for-loop|0 - local.get $0 local.get $2 - i32.gt_s + local.get $6 + i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $6 + local.get $4 i32.add local.get $2 - local.get $3 + local.get $5 i32.add i32.load8_u call $~lib/util/number/itoa_buffered local.get $1 i32.add local.set $1 - local.get $4 + local.get $0 if local.get $1 i32.const 1 i32.shl - local.get $6 + local.get $4 i32.add i32.const 6656 - local.get $4 + local.get $0 i32.const 1 i32.shl call $~lib/memory/memory.copy + local.get $0 local.get $1 - local.get $4 i32.add local.set $1 end @@ -3937,14 +3933,14 @@ br $for-loop|0 end end - local.get $5 + local.get $3 local.get $1 i32.const 1 i32.shl - local.get $6 + local.get $4 i32.add - local.get $0 - local.get $3 + local.get $5 + local.get $6 i32.add i32.load8_u call $~lib/util/number/itoa_buffered @@ -3966,7 +3962,7 @@ i32.const 0 i32.store i32.const 0 - local.get $6 + local.get $4 i32.const 20 i32.sub i32.load offset=16 @@ -4032,7 +4028,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $4 br $__inlined_func$~lib/string/String#substring end global.get $~lib/memory/__stack_pointer @@ -4043,7 +4039,7 @@ i32.store local.get $0 local.get $3 - local.get $6 + local.get $4 i32.add local.get $2 call $~lib/memory/memory.copy @@ -4060,7 +4056,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $4 br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer @@ -4317,15 +4313,13 @@ br $while-continue|0 end end - local.get $2 - local.set $1 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $2 call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add @@ -4874,22 +4868,22 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store i32.const 0 local.get $0 - local.tee $2 + local.tee $1 i32.load offset=8 local.tee $0 local.get $0 i32.const 0 i32.gt_s select - local.set $4 - local.get $3 + local.set $5 + local.get $2 local.get $0 - local.get $4 + local.get $5 i32.sub local.tee $0 i32.const 0 @@ -4897,9 +4891,9 @@ i32.const 0 i32.gt_s select - local.tee $5 - local.set $1 - local.get $3 + local.tee $6 + local.set $4 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -4948,7 +4942,7 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $4 i32.const 1073741820 i32.gt_u if @@ -4960,50 +4954,50 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $3 i32.store offset=4 - local.get $6 - local.get $1 + local.get $3 + local.get $4 call $~lib/memory/memory.fill local.get $0 - local.get $6 + local.get $3 i32.store local.get $0 - local.set $3 - local.get $6 + local.set $2 + local.get $3 if + local.get $2 local.get $3 - local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $2 local.get $3 - local.get $6 i32.store offset=4 - local.get $3 - local.get $1 + local.get $2 + local.get $4 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 i32.store local.get $0 i32.load offset=4 - local.get $4 - local.get $2 + local.get $5 + local.get $1 i32.load offset=4 i32.add - local.get $5 + local.get $6 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 diff --git a/tests/compiler/std-wasi/process.optimized.wat b/tests/compiler/std-wasi/process.optimized.wat index fe72ce4fbe..ffcc77dbfe 100644 --- a/tests/compiler/std-wasi/process.optimized.wat +++ b/tests/compiler/std-wasi/process.optimized.wat @@ -293,28 +293,28 @@ if local.get $0 i32.load16_u - local.tee $5 + local.tee $4 i32.const 128 i32.lt_u if (result i32) local.get $1 - local.get $5 + local.get $4 i32.store8 local.get $1 i32.const 1 i32.add else - local.get $5 + local.get $4 i32.const 2048 i32.lt_u if (result i32) local.get $1 - local.get $5 + local.get $4 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $5 + local.get $4 i32.const 63 i32.and i32.const 128 @@ -327,13 +327,13 @@ i32.const 2 i32.add else - local.get $5 + local.get $4 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $5 + local.get $4 i32.const 56320 i32.lt_u local.get $3 @@ -345,21 +345,21 @@ if local.get $0 i32.load16_u offset=2 - local.tee $4 + local.tee $5 i32.const 64512 i32.and i32.const 56320 i32.eq if local.get $1 - local.get $5 + local.get $4 i32.const 1023 i32.and i32.const 10 i32.shl i32.const 65536 i32.add - local.get $4 + local.get $5 i32.const 1023 i32.and i32.or @@ -410,12 +410,12 @@ end end local.get $1 - local.get $5 + local.get $4 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $5 + local.get $4 i32.const 6 i32.shr_u i32.const 63 @@ -427,7 +427,7 @@ i32.or i32.store16 local.get $1 - local.get $5 + local.get $4 i32.const 63 i32.and i32.const 128 @@ -1409,9 +1409,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -1458,6 +1455,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -2119,15 +2119,13 @@ br $while-continue|0 end end - local.get $2 - local.set $1 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $2 call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add @@ -2306,18 +2304,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 23788 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -2331,9 +2328,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2343,15 +2340,15 @@ call $~lib/wasi/index/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -2392,20 +2389,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -2439,7 +2436,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $2 + local.set $1 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -2456,11 +2453,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -2502,9 +2499,9 @@ if local.get $0 i32.load - local.tee $1 + local.tee $2 if - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -2528,11 +2525,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -2558,7 +2555,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $2 + local.get $1 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -2874,17 +2871,15 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $2 + local.get $0 + i32.const 16 + i32.add call $~lib/rt/tlsf/allocateBlock local.tee $2 local.get $1 @@ -2893,26 +2888,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 - local.get $1 + local.get $3 global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -3393,95 +3388,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -3512,39 +3507,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 @@ -4029,14 +4024,14 @@ if local.get $1 i32.load16_u - local.tee $4 + local.tee $0 local.get $2 i32.load16_u - local.tee $0 + local.tee $4 i32.ne if - local.get $4 local.get $0 + local.get $4 i32.sub return end @@ -4361,7 +4356,7 @@ local.get $2 i32.const 4 i32.sub - local.tee $3 + local.tee $2 i32.const 1 i32.shl local.get $0 @@ -4375,10 +4370,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $4 + local.tee $3 i32.const 10000 i32.rem_u - local.tee $2 + local.tee $4 i32.const 100 i32.div_u i32.const 2 @@ -4386,7 +4381,7 @@ i32.const 5708 i32.add i64.load32_u - local.get $2 + local.get $4 i32.const 100 i32.rem_u i32.const 2 @@ -4398,7 +4393,7 @@ i64.shl i64.or i64.store - local.get $3 + local.get $2 i32.const 4 i32.sub local.tee $2 @@ -4406,7 +4401,7 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $3 i32.const 10000 i32.div_u local.tee $3 @@ -4471,21 +4466,20 @@ return end local.get $0 - local.tee $1 i32.load offset=4 - local.tee $2 + local.tee $1 local.get $0 i32.load offset=12 i32.const 2 i32.shl i32.add - local.set $0 + local.set $2 loop $while-continue|0 - local.get $0 + local.get $1 local.get $2 - i32.gt_u + i32.lt_u if - local.get $2 + local.get $1 i32.load local.tee $3 if @@ -4495,14 +4489,14 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $2 + local.get $1 i32.const 4 i32.add - local.set $2 + local.set $1 br $while-continue|0 end end - local.get $1 + local.get $0 i32.load local.tee $0 if @@ -4641,46 +4635,46 @@ i32.shl i32.add i32.load - local.set $2 + local.set $0 loop $while-continue|0 - local.get $2 + local.get $0 if - local.get $2 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.load - local.tee $4 + local.tee $3 i32.store block $__inlined_func$~lib/string/String.__eq (result i32) i32.const 1 local.get $1 - local.get $4 + local.get $3 i32.eq br_if $__inlined_func$~lib/string/String.__eq drop i32.const 0 local.get $1 i32.const 0 - local.get $4 + local.get $3 select i32.eqz br_if $__inlined_func$~lib/string/String.__eq drop i32.const 0 - local.get $4 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $2 local.get $1 i32.const 20 i32.sub @@ -4690,10 +4684,10 @@ i32.ne br_if $__inlined_func$~lib/string/String.__eq drop - local.get $4 + local.get $3 i32.const 0 local.get $1 - local.get $3 + local.get $2 call $~lib/util/string/compareImpl i32.eqz end @@ -4703,13 +4697,13 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 return end - local.get $0 + local.get $4 i32.const -2 i32.and - local.set $2 + local.set $0 br $while-continue|0 end end @@ -4729,7 +4723,6 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 16 @@ -4763,7 +4756,7 @@ end i32.const 1088 i32.load - local.tee $4 + local.tee $2 i32.const 2 i32.shl local.tee $0 @@ -4771,20 +4764,20 @@ i32.load i32.add local.tee $3 - local.set $1 + local.set $4 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $1 + local.get $4 call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add - local.tee $7 + local.tee $4 local.get $0 - local.get $7 + local.get $4 i32.add call $~lib/bindings/wasi_snapshot_preview1/environ_get local.tee $0 @@ -4817,180 +4810,178 @@ i32.const 24 i32.const 4 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $5 i32.store - local.get $0 + local.get $5 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $0 i32.store - local.get $1 + local.get $0 if + local.get $5 local.get $0 - local.get $1 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 + local.get $5 i32.const 3 i32.store offset=4 - local.get $0 + local.get $5 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $0 i32.store offset=8 - local.get $1 + local.get $0 if + local.get $5 local.get $0 - local.get $1 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 + local.get $5 i32.const 4 i32.store offset=12 - local.get $0 + local.get $5 i32.const 0 i32.store offset=16 - local.get $0 + local.get $5 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $5 i32.store loop $for-loop|0 - local.get $4 - local.get $5 - i32.gt_u + local.get $1 + local.get $2 + i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $1 i32.const 2 i32.shl - local.get $7 + local.get $4 i32.add i32.load - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 local.get $3 i32.add - local.get $7 + local.get $4 i32.sub call $~lib/string/String.UTF8.decodeUnsafe - local.tee $1 + local.tee $6 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 5168 i32.store offset=8 block $__inlined_func$~lib/string/String#indexOf (result i32) - local.get $1 - local.set $2 i32.const 0 i32.const 5164 i32.load i32.const 1 i32.shr_u - local.tee $8 + local.tee $7 i32.eqz br_if $__inlined_func$~lib/string/String#indexOf drop i32.const -1 - local.get $2 + local.get $6 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $9 + local.tee $8 i32.eqz br_if $__inlined_func$~lib/string/String#indexOf drop i32.const 0 - local.get $9 - local.get $9 + local.get $8 + local.get $8 i32.const 0 i32.gt_s select - local.set $6 - local.get $9 + local.set $0 local.get $8 + local.get $7 i32.sub - local.set $9 + local.set $8 loop $for-loop|01 - local.get $6 - local.get $9 + local.get $0 + local.get $8 i32.le_s if + local.get $0 local.get $6 - local.get $2 - local.get $6 + local.get $0 i32.const 5168 - local.get $8 + local.get $7 call $~lib/util/string/compareImpl i32.eqz br_if $__inlined_func$~lib/string/String#indexOf drop - local.get $6 + local.get $0 i32.const 1 i32.add - local.set $6 + local.set $0 br $for-loop|01 end end i32.const -1 end - local.tee $2 + local.tee $0 i32.const -1 i32.xor if - local.get $1 + local.get $6 i32.const 0 - local.get $2 + local.get $0 call $~lib/string/String#substring - local.set $6 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $7 i32.store offset=8 - local.get $1 - local.get $2 + local.get $6 + local.get $0 i32.const 1 i32.add i32.const 2147483647 call $~lib/string/String#substring - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=12 + local.get $5 + local.get $7 local.get $0 - local.get $6 - local.get $1 call $~lib/map/Map<~lib/string/String,~lib/string/String>#set else global.get $~lib/memory/__stack_pointer i32.const 5200 i32.store offset=12 - local.get $0 - local.get $1 + local.get $5 + local.get $6 i32.const 5200 call $~lib/map/Map<~lib/string/String,~lib/string/String>#set end - local.get $5 + local.get $1 i32.const 1 i32.add - local.set $5 + local.set $1 br $for-loop|0 end end - local.get $7 + local.get $4 call $~lib/rt/tlsf/__free global.get $~lib/memory/__stack_pointer i32.const 16 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $5 return end i32.const 23808 @@ -5863,18 +5854,18 @@ i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 0 i32.store offset=4 - local.get $3 + local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $1 i32.const 0 i32.store offset=12 local.get $0 @@ -5900,35 +5891,35 @@ local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.store offset=4 - local.get $1 + local.get $3 local.get $2 call $~lib/memory/memory.fill - local.get $3 local.get $1 + local.get $3 i32.store - local.get $1 + local.get $3 if - local.get $3 local.get $1 + local.get $3 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 local.get $1 - i32.store offset=4 local.get $3 + i32.store offset=4 + local.get $1 local.get $2 i32.store offset=8 - local.get $3 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 ) (func $~lib/string/String.UTF8.decodeUnsafe (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -5986,12 +5977,12 @@ block $while-break|0 local.get $0 i32.load8_u - local.set $6 + local.set $5 local.get $0 i32.const 1 i32.add local.set $0 - local.get $6 + local.get $5 i32.const 128 i32.and if @@ -6003,20 +5994,20 @@ i32.load8_u i32.const 63 i32.and - local.set $3 + local.set $6 local.get $0 i32.const 1 i32.add local.set $0 - local.get $6 + local.get $5 i32.const 224 i32.and i32.const 192 i32.eq if local.get $1 - local.get $3 local.get $6 + local.get $5 i32.const 31 i32.and i32.const 6 @@ -6032,24 +6023,24 @@ i32.load8_u i32.const 63 i32.and - local.set $5 + local.set $3 local.get $0 i32.const 1 i32.add local.set $0 - local.get $6 + local.get $5 i32.const 240 i32.and i32.const 224 i32.eq if + local.get $3 local.get $5 - local.get $6 i32.const 15 i32.and i32.const 12 i32.shl - local.get $3 + local.get $6 i32.const 6 i32.shl i32.or @@ -6064,16 +6055,16 @@ i32.load8_u i32.const 63 i32.and - local.get $6 + local.get $5 i32.const 7 i32.and i32.const 18 i32.shl - local.get $3 + local.get $6 i32.const 12 i32.shl i32.or - local.get $5 + local.get $3 i32.const 6 i32.shl i32.or @@ -6117,11 +6108,11 @@ end end else - local.get $6 + local.get $5 i32.eqz br_if $while-break|0 local.get $1 - local.get $6 + local.get $5 i32.store16 end local.get $1 @@ -6272,51 +6263,51 @@ i32.const 0 i32.gt_s select - local.tee $1 + local.tee $3 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $1 local.get $1 local.get $3 - i32.lt_s + i32.gt_s select - local.tee $4 + local.tee $3 local.get $2 i32.const 0 local.get $2 i32.const 0 i32.gt_s select - local.tee $1 - local.get $3 + local.tee $2 local.get $1 - local.get $3 - i32.lt_s + local.get $1 + local.get $2 + i32.gt_s select local.tee $2 local.get $2 - local.get $4 + local.get $3 i32.gt_s select i32.const 1 i32.shl - local.set $1 - local.get $4 + local.set $4 + local.get $3 local.get $2 local.get $2 - local.get $4 + local.get $3 i32.lt_s select i32.const 1 i32.shl local.tee $2 - local.get $1 + local.get $4 i32.sub - local.tee $4 + local.tee $3 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -6327,12 +6318,12 @@ return end i32.const 0 - local.get $3 + local.get $1 i32.const 1 i32.shl local.get $2 i32.eq - local.get $1 + local.get $4 select if global.get $~lib/memory/__stack_pointer @@ -6343,22 +6334,22 @@ return end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 - local.get $0 local.get $1 - i32.add + local.get $0 local.get $4 + i32.add + local.get $3 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 ) (func $~lib/map/Map<~lib/string/String,~lib/string/String>#set (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -6678,16 +6669,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $0 i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $0 local.get $1 local.get $2 select @@ -6696,7 +6687,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $3 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/array-access.optimized.wat b/tests/compiler/std/array-access.optimized.wat index 7d641ecfa6..c0d2553a2c 100644 --- a/tests/compiler/std/array-access.optimized.wat +++ b/tests/compiler/std/array-access.optimized.wat @@ -61,7 +61,6 @@ i32.and i32.const 1 local.get $1 - local.tee $0 i32.const 4 i32.ge_u select @@ -82,10 +81,10 @@ i32.const 8 i32.add local.set $3 - local.get $0 + local.get $1 i32.const 4 i32.sub - local.tee $0 + local.tee $1 i32.const 4 i32.ge_u br_if $do-loop|0 @@ -93,23 +92,23 @@ end end loop $while-continue|1 - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.sub - local.set $0 - local.get $1 + local.set $1 + local.get $0 if local.get $3 i32.load16_u - local.tee $1 + local.tee $4 local.get $2 i32.load16_u - local.tee $4 + local.tee $0 i32.ne if + local.get $0 local.get $4 - local.get $1 i32.sub br $__inlined_func$~lib/util/string/compareImpl end diff --git a/tests/compiler/std/array-literal.optimized.wat b/tests/compiler/std/array-literal.optimized.wat index 631deb1a26..8dbebe0100 100644 --- a/tests/compiler/std/array-literal.optimized.wat +++ b/tests/compiler/std/array-literal.optimized.wat @@ -214,18 +214,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 18252 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -239,9 +238,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -251,15 +250,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -300,20 +299,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -745,9 +744,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -794,6 +790,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1371,18 +1370,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $4 + local.get $0 + i32.const 16 + i32.add local.tee $3 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1393,13 +1391,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $3 i32.const 19 i32.add i32.const -16 @@ -1407,32 +1405,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $5 i32.add else - local.get $4 + local.get $5 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1448,16 +1446,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $3 local.get $2 - local.get $5 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1465,7 +1463,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1473,8 +1471,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1491,7 +1489,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $5 i32.lt_u if i32.const 0 @@ -1501,13 +1499,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $4 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1520,40 +1518,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $4 + local.get $5 i32.sub - local.tee $6 + local.tee $3 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $4 + local.get $5 i32.or i32.store - local.get $4 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 - local.get $6 + local.tee $5 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -2618,16 +2616,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $0 i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $0 local.get $1 local.get $2 select @@ -2636,7 +2634,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $3 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index 1fa2d5ec37..c8fe3e67e2 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -822,18 +822,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 32036 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -847,9 +846,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -859,15 +858,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -908,20 +907,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -1353,9 +1352,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -1402,6 +1398,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1595,7 +1594,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $2 + local.set $1 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -1612,11 +1611,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -1658,9 +1657,9 @@ if local.get $0 i32.load - local.tee $1 + local.tee $2 if - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -1684,11 +1683,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -1714,7 +1713,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $2 + local.get $1 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -2183,15 +2182,15 @@ i32.and local.tee $4 i32.add - local.tee $0 + local.tee $5 local.get $1 i32.const 255 i32.and i32.const 16843009 i32.mul - local.tee $5 + local.tee $0 i32.store - local.get $0 + local.get $5 local.get $2 local.get $4 i32.sub @@ -2202,66 +2201,66 @@ local.tee $1 i32.const 4 i32.sub - local.get $5 + local.get $0 i32.store local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $0 local.get $5 - i32.store offset=4 local.get $0 + i32.store offset=4 local.get $5 + local.get $0 i32.store offset=8 local.get $1 i32.const 12 i32.sub - local.get $5 + local.get $0 i32.store local.get $1 i32.const 8 i32.sub - local.get $5 + local.get $0 i32.store local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $0 local.get $5 - i32.store offset=12 local.get $0 + i32.store offset=12 local.get $5 - i32.store offset=16 local.get $0 + i32.store offset=16 local.get $5 - i32.store offset=20 local.get $0 + i32.store offset=20 local.get $5 + local.get $0 i32.store offset=24 local.get $1 i32.const 28 i32.sub - local.get $5 + local.get $0 i32.store local.get $1 i32.const 24 i32.sub - local.get $5 + local.get $0 i32.store local.get $1 i32.const 20 i32.sub - local.get $5 + local.get $0 i32.store local.get $1 i32.const 16 i32.sub - local.get $5 - i32.store - local.get $0 local.get $0 + i32.store + local.get $5 + local.get $5 i32.const 4 i32.and i32.const 24 @@ -2273,7 +2272,7 @@ local.get $4 i32.sub local.set $2 - local.get $5 + local.get $0 i64.extend_i32_u local.tee $3 i64.const 32 @@ -2370,17 +2369,15 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $2 + local.get $0 + i32.const 16 + i32.add call $~lib/rt/tlsf/allocateBlock local.tee $2 local.get $1 @@ -2389,26 +2386,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 - local.get $1 + local.get $3 global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2890,95 +2887,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -3009,39 +3006,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 @@ -3501,7 +3498,6 @@ (func $~lib/array/ensureCapacity (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) local.get $0 i32.load offset=8 local.tee $5 @@ -3556,41 +3552,39 @@ local.set $1 end local.get $1 - local.set $3 local.get $4 i32.const 20 i32.sub - local.tee $6 + local.tee $2 i32.load i32.const -4 i32.and i32.const 16 i32.sub - local.get $1 - i32.ge_u + i32.le_u if - local.get $6 - local.get $3 + local.get $2 + local.get $1 i32.store offset=16 local.get $4 br $__inlined_func$~lib/rt/itcms/__renew end - local.get $3 - local.get $6 + local.get $1 + local.get $2 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 local.get $4 - local.get $3 - local.get $6 + local.get $1 + local.get $2 i32.load offset=16 - local.tee $6 - local.get $3 - local.get $6 + local.tee $2 + local.get $1 + local.get $2 i32.lt_u select call $~lib/memory/memory.copy - local.get $2 + local.get $3 end local.tee $2 local.get $5 @@ -3691,13 +3685,13 @@ local.get $1 i32.const 1 i32.sub - local.tee $2 + local.tee $1 i32.const 2 i32.shl i32.add i32.load local.get $0 - local.get $2 + local.get $1 i32.store offset=12 ) (func $~lib/array/Array#__uset (param $0 i32) (param $1 i32) (param $2 i32) @@ -3759,10 +3753,10 @@ local.get $4 i32.lt_s select - local.set $3 + local.set $5 local.get $0 i32.load offset=4 - local.tee $5 + local.tee $3 local.get $1 i32.const 0 i32.lt_s @@ -3812,14 +3806,14 @@ local.tee $2 i32.const 2 i32.shl - local.get $5 - i32.add local.get $3 + i32.add + local.get $5 i32.const 0 i32.lt_s if (result i32) - local.get $3 local.get $4 + local.get $5 i32.add local.tee $3 i32.const 0 @@ -3828,11 +3822,11 @@ i32.gt_s select else - local.get $3 + local.get $5 local.get $4 - local.get $3 local.get $4 - i32.lt_s + local.get $5 + i32.gt_s select end local.get $2 @@ -4079,18 +4073,18 @@ local.set $2 local.get $0 i32.load offset=12 - local.tee $5 + local.tee $4 i32.const 1 i32.gt_u if - local.get $5 + local.get $4 i32.const 1 i32.shr_u local.set $3 - local.get $5 + local.get $4 i32.const 2 i32.sub - local.set $6 + local.set $5 loop $while-continue|0 local.get $3 local.get $1 @@ -4098,31 +4092,31 @@ i32.add i32.gt_u if - local.get $6 + local.get $5 local.get $1 i32.sub i32.const 1 i32.shl local.get $2 i32.add - local.tee $7 + local.tee $6 i32.load i32.const 16 i32.rotr - local.set $4 - local.get $7 + local.set $7 + local.get $6 local.get $1 i32.const 1 i32.shl local.get $2 i32.add - local.tee $7 + local.tee $6 i32.load i32.const 16 i32.rotr i32.store + local.get $6 local.get $7 - local.get $4 i32.store local.get $1 i32.const 2 @@ -4131,7 +4125,7 @@ br $while-continue|0 end end - local.get $5 + local.get $4 i32.const 1 i32.sub local.set $4 @@ -4798,8 +4792,8 @@ (func $~lib/util/sort/extendRunRight (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (local $4 i32) (local $5 f32) - (local $6 f32) - (local $7 i32) + (local $6 i32) + (local $7 f32) local.get $1 local.get $2 i32.eq @@ -4840,9 +4834,9 @@ i32.shl local.get $0 i32.add - local.tee $7 + local.tee $6 f32.load offset=4 - local.get $7 + local.get $6 f32.load i32.const 2 global.set $~argumentsLength @@ -5192,10 +5186,10 @@ local.get $1 i32.clz i32.sub - local.tee $7 + local.tee $8 i32.const 2 i32.shl - local.tee $6 + local.tee $7 i32.const 1 i32.shl local.set $5 @@ -5210,14 +5204,12 @@ i32.const 4 i32.add local.tee $13 - local.get $6 + local.get $7 i32.add local.set $14 - i32.const 0 - local.set $6 loop $for-loop|1 local.get $6 - local.get $7 + local.get $8 i32.lt_u if local.get $6 @@ -5234,17 +5226,15 @@ br $for-loop|1 end end - local.get $1 - i32.const 2 - i32.shl - local.set $5 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $5 + local.get $1 + i32.const 2 + i32.shl call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add @@ -5704,8 +5694,8 @@ (func $~lib/util/sort/extendRunRight (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (local $4 i32) (local $5 f64) - (local $6 f64) - (local $7 i32) + (local $6 i32) + (local $7 f64) local.get $1 local.get $2 i32.eq @@ -5746,9 +5736,9 @@ i32.shl local.get $0 i32.add - local.tee $7 + local.tee $6 f64.load offset=8 - local.get $7 + local.get $6 f64.load i32.const 2 global.set $~argumentsLength @@ -6098,10 +6088,10 @@ local.get $1 i32.clz i32.sub - local.tee $7 + local.tee $8 i32.const 2 i32.shl - local.tee $6 + local.tee $7 i32.const 1 i32.shl local.set $5 @@ -6116,14 +6106,12 @@ i32.const 4 i32.add local.tee $13 - local.get $6 + local.get $7 i32.add local.set $14 - i32.const 0 - local.set $6 loop $for-loop|1 local.get $6 - local.get $7 + local.get $8 i32.lt_u if local.get $6 @@ -6140,17 +6128,15 @@ br $for-loop|1 end end - local.get $1 - i32.const 3 - i32.shl - local.set $5 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $5 + local.get $1 + i32.const 3 + i32.shl call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add @@ -6957,26 +6943,24 @@ local.tee $6 i32.const 2 i32.shl - local.tee $5 + local.tee $7 i32.const 1 i32.shl - local.set $7 + local.set $8 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $7 + local.get $8 call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add local.tee $9 - local.get $5 + local.get $7 i32.add local.set $10 - i32.const 0 - local.set $5 loop $for-loop|1 local.get $5 local.get $6 @@ -6996,17 +6980,15 @@ br $for-loop|1 end end - local.get $1 - i32.const 2 - i32.shl - local.set $5 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $5 + local.get $1 + i32.const 2 + i32.shl call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add @@ -7768,26 +7750,24 @@ local.tee $6 i32.const 2 i32.shl - local.tee $5 + local.tee $7 i32.const 1 i32.shl - local.set $7 + local.set $8 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $7 + local.get $8 call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add local.tee $9 - local.get $5 + local.get $7 i32.add local.set $10 - i32.const 0 - local.set $5 loop $for-loop|1 local.get $5 local.get $6 @@ -7807,17 +7787,15 @@ br $for-loop|1 end end - local.get $1 - i32.const 2 - i32.shl - local.set $5 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $5 + local.get $1 + i32.const 2 + i32.shl call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add @@ -8120,15 +8098,15 @@ select local.get $1 i32.add - local.set $8 + local.set $7 loop $for-loop|0 local.get $2 - local.get $8 + local.get $7 i32.ge_s if global.get $~lib/memory/__stack_pointer local.tee $3 - local.get $8 + local.get $7 i32.const 2 i32.shl local.get $0 @@ -8159,7 +8137,7 @@ local.get $6 local.set $5 end - local.get $8 + local.get $7 i32.const 1 i32.sub local.set $6 @@ -8176,11 +8154,11 @@ local.get $0 i32.add i32.load - local.tee $7 + local.tee $8 i32.store i32.const 2 global.set $~argumentsLength - local.get $7 + local.get $8 local.get $5 local.get $4 i32.load @@ -8193,7 +8171,7 @@ i32.shl local.get $0 i32.add - local.get $7 + local.get $8 i32.store offset=8 local.get $6 i32.const 1 @@ -8257,10 +8235,10 @@ i32.add local.get $3 i32.store offset=4 - local.get $8 + local.get $7 i32.const 2 i32.add - local.set $8 + local.set $7 br $for-loop|0 end end @@ -8356,28 +8334,28 @@ i32.le_s if global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $7 local.get $6 i32.const 2 i32.shl local.get $4 i32.add i32.load - local.tee $7 + local.tee $8 i32.store - local.get $8 + local.get $7 local.get $2 i32.const 2 i32.shl local.get $4 i32.add i32.load - local.tee $8 + local.tee $7 i32.store offset=4 i32.const 2 global.set $~argumentsLength - local.get $7 local.get $8 + local.get $7 local.get $5 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -8389,7 +8367,7 @@ i32.shl local.get $0 i32.add - local.get $7 + local.get $8 i32.store local.get $6 i32.const 1 @@ -8401,7 +8379,7 @@ i32.shl local.get $0 i32.add - local.get $8 + local.get $7 i32.store local.get $2 i32.const 1 @@ -8448,10 +8426,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $6 i64.const 0 i64.store - local.get $5 + local.get $6 i32.const 0 i32.store offset=8 block $folding-inner0 @@ -8586,26 +8564,24 @@ local.tee $6 i32.const 2 i32.shl - local.tee $5 + local.tee $7 i32.const 1 i32.shl - local.set $7 + local.set $8 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $7 + local.get $8 call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add local.tee $9 - local.get $5 + local.get $7 i32.add local.set $10 - i32.const 0 - local.set $5 loop $for-loop|1 local.get $5 local.get $6 @@ -8625,17 +8601,15 @@ br $for-loop|1 end end - local.get $1 - i32.const 2 - i32.shl - local.set $5 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $5 + local.get $1 + i32.const 2 + i32.shl call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add @@ -9005,14 +8979,14 @@ if local.get $0 i32.load16_u - local.tee $2 + local.tee $4 local.get $1 i32.load16_u - local.tee $4 + local.tee $2 i32.ne if - local.get $2 local.get $4 + local.get $2 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -9126,14 +9100,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -9428,7 +9402,7 @@ block $__inlined_func$~lib/util/string/joinIntegerArray (result i32) local.get $0 i32.load offset=4 - local.set $4 + local.set $3 local.get $0 i32.load offset=12 i32.const 0 @@ -9453,7 +9427,7 @@ i32.store i32.const 1 i32.sub - local.tee $3 + local.tee $7 i32.const 0 i32.lt_s if @@ -9464,10 +9438,10 @@ i32.const 9232 br $__inlined_func$~lib/util/string/joinIntegerArray end - local.get $3 + local.get $7 i32.eqz if - local.get $4 + local.get $3 i32.load call $~lib/util/number/itoa32 global.get $~lib/memory/__stack_pointer @@ -9477,60 +9451,60 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $5 + local.tee $4 i32.const 11 i32.add i32.mul i32.const 11 i32.add - local.tee $6 + local.tee $5 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $6 i32.store loop $for-loop|0 local.get $2 - local.get $3 + local.get $7 i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $7 + local.get $6 i32.add local.get $2 i32.const 2 i32.shl - local.get $4 + local.get $3 i32.add i32.load call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $5 + local.get $4 if local.get $0 i32.const 1 i32.shl - local.get $7 + local.get $6 i32.add local.get $1 - local.get $5 + local.get $4 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $5 + local.get $4 i32.add local.set $0 end @@ -9541,16 +9515,16 @@ br $for-loop|0 end end - local.get $6 + local.get $5 local.get $0 i32.const 1 i32.shl - local.get $7 + local.get $6 i32.add - local.get $3 + local.get $7 i32.const 2 i32.shl - local.get $4 + local.get $3 i32.add i32.load call $~lib/util/number/itoa_buffered @@ -9559,7 +9533,7 @@ local.tee $0 i32.gt_s if - local.get $7 + local.get $6 local.get $0 call $~lib/string/String#substring global.get $~lib/memory/__stack_pointer @@ -9572,7 +9546,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $6 end ) (func $~lib/util/number/itoa_buffered (param $0 i32) (param $1 i32) (result i32) @@ -9650,7 +9624,7 @@ block $__inlined_func$~lib/util/string/joinIntegerArray (result i32) local.get $0 i32.load offset=4 - local.set $4 + local.set $3 local.get $0 i32.load offset=12 i32.const 0 @@ -9675,7 +9649,7 @@ i32.store i32.const 1 i32.sub - local.tee $3 + local.tee $7 i32.const 0 i32.lt_s if @@ -9686,10 +9660,10 @@ i32.const 9232 br $__inlined_func$~lib/util/string/joinIntegerArray end - local.get $3 + local.get $7 i32.eqz if - local.get $4 + local.get $3 i32.load call $~lib/util/number/utoa32 global.get $~lib/memory/__stack_pointer @@ -9699,60 +9673,60 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $5 + local.tee $4 i32.const 10 i32.add i32.mul i32.const 10 i32.add - local.tee $6 + local.tee $5 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $6 i32.store loop $for-loop|0 local.get $2 - local.get $3 + local.get $7 i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $7 + local.get $6 i32.add local.get $2 i32.const 2 i32.shl - local.get $4 + local.get $3 i32.add i32.load call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $5 + local.get $4 if local.get $0 i32.const 1 i32.shl - local.get $7 + local.get $6 i32.add local.get $1 - local.get $5 + local.get $4 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $5 + local.get $4 i32.add local.set $0 end @@ -9763,16 +9737,16 @@ br $for-loop|0 end end - local.get $6 + local.get $5 local.get $0 i32.const 1 i32.shl - local.get $7 + local.get $6 i32.add - local.get $3 + local.get $7 i32.const 2 i32.shl - local.get $4 + local.get $3 i32.add i32.load call $~lib/util/number/itoa_buffered @@ -9781,7 +9755,7 @@ local.tee $0 i32.gt_s if - local.get $7 + local.get $6 local.get $0 call $~lib/string/String#substring global.get $~lib/memory/__stack_pointer @@ -9794,7 +9768,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $6 end ) (func $~lib/util/number/genDigits (param $0 i32) (param $1 i64) (param $2 i64) (param $3 i32) (param $4 i64) (param $5 i32) (result i32) @@ -10373,64 +10347,63 @@ i32.const 101 i32.store16 offset=2 local.get $0 - local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $1 i32.const 0 i32.lt_s local.tee $2 if i32.const 0 - local.get $0 + local.get $1 i32.sub - local.set $0 + local.set $1 end - local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -10438,15 +10411,15 @@ end i32.const 1 i32.add - local.tee $0 + local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $0 i32.const 45 i32.const 43 local.get $2 select i32.store16 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.add else @@ -10562,13 +10535,13 @@ (local $5 i64) (local $6 i64) (local $7 i64) - (local $8 i64) - (local $9 i64) - (local $10 i64) + (local $8 i32) + (local $9 i32) + (local $10 i32) (local $11 i64) - (local $12 i32) - (local $13 i32) - (local $14 i32) + (local $12 i64) + (local $13 i64) + (local $14 i64) (local $15 i64) (local $16 i64) local.get $1 @@ -10591,19 +10564,19 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $12 + local.tee $8 i32.const 1 - local.get $12 + local.get $8 select i32.const 1075 i32.sub - local.tee $13 + local.tee $9 i32.const 1 i32.sub local.get $2 i64.const 4503599627370495 i64.and - local.get $12 + local.get $8 i32.const 0 i32.ne i64.extend_i32_u @@ -10618,11 +10591,11 @@ local.tee $4 i64.clz i32.wrap_i64 - local.tee $12 + local.tee $8 i32.sub - local.set $14 + local.set $10 local.get $4 - local.get $12 + local.get $8 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -10632,25 +10605,25 @@ i64.eq i32.const 1 i32.add - local.tee $12 + local.tee $8 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $13 - local.get $12 + local.get $9 + local.get $8 i32.sub - local.get $14 + local.get $10 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $14 + local.get $10 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $12 + local.tee $8 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -10659,9 +10632,9 @@ f64.add local.tee $1 i32.trunc_f64_s - local.tee $13 + local.tee $9 local.get $1 - local.get $13 + local.get $9 f64.convert_i32_s f64.ne i32.add @@ -10669,18 +10642,18 @@ i32.shr_s i32.const 1 i32.add - local.tee $13 + local.tee $9 i32.const 3 i32.shl - local.tee $14 + local.tee $10 i32.sub global.set $~lib/util/number/_K - local.get $14 + local.get $10 i32.const 11960 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $13 + local.get $9 i32.const 1 i32.shl i32.const 12656 @@ -10691,85 +10664,85 @@ local.get $2 i64.clz i64.shl - local.tee $4 + local.tee $2 i64.const 4294967295 i64.and - local.set $2 - local.get $4 + local.set $11 + local.get $2 i64.const 32 i64.shr_u - local.tee $9 + local.tee $5 global.get $~lib/util/number/_frc_pow - local.tee $15 + local.tee $7 i64.const 4294967295 i64.and - local.tee $8 - local.tee $4 + local.tee $12 + local.tee $2 i64.mul local.get $2 - local.get $4 + local.get $11 i64.mul i64.const 32 i64.shr_u i64.add - local.set $4 + local.set $13 global.get $~lib/util/number/_frc_plus - local.tee $6 + local.tee $4 i64.const 4294967295 i64.and - local.set $5 - local.get $6 + local.set $2 + local.get $4 i64.const 32 i64.shr_u - local.tee $10 - local.get $8 + local.tee $6 + local.get $12 i64.mul - local.get $5 - local.get $8 + local.get $2 + local.get $12 i64.mul i64.const 32 i64.shr_u i64.add - local.set $6 + local.set $14 global.get $~lib/util/number/_frc_minus - local.tee $11 + local.tee $15 i64.const 4294967295 i64.and - local.set $7 - local.get $11 + local.set $4 + local.get $15 i64.const 32 i64.shr_u - local.tee $11 - local.get $8 + local.tee $15 + local.get $12 i64.mul - local.get $7 - local.get $8 + local.get $4 + local.get $12 i64.mul i64.const 32 i64.shr_u i64.add - local.set $8 + local.set $12 local.get $3 i32.const 1 i32.shl local.get $0 i32.add local.get $0 - local.get $9 - local.get $15 + local.get $5 + local.get $7 i64.const 32 i64.shr_u - local.tee $15 local.tee $16 + local.tee $7 i64.mul - local.get $4 + local.get $13 i64.const 32 i64.shr_u i64.add - local.get $2 - local.get $16 + local.get $7 + local.get $11 i64.mul - local.get $4 + local.get $13 i64.const 4294967295 i64.and i64.add @@ -10778,17 +10751,17 @@ i64.const 32 i64.shr_u i64.add - local.get $10 - local.get $15 - i64.mul local.get $6 + local.get $16 + i64.mul + local.get $14 i64.const 32 i64.shr_u i64.add - local.get $5 - local.get $15 + local.get $2 + local.get $16 i64.mul - local.get $6 + local.get $14 i64.const 4294967295 i64.and i64.add @@ -10801,22 +10774,22 @@ i64.sub local.tee $2 global.get $~lib/util/number/_exp_pow - local.get $12 + local.get $8 i32.add i32.const -64 i32.sub local.get $2 - local.get $11 local.get $15 + local.get $16 i64.mul - local.get $8 + local.get $12 i64.const 32 i64.shr_u i64.add - local.get $7 - local.get $15 + local.get $4 + local.get $16 i64.mul - local.get $8 + local.get $12 i64.const 4294967295 i64.and i64.add @@ -10919,7 +10892,7 @@ block $__inlined_func$~lib/util/string/joinFloatArray (result i32) local.get $0 i32.load offset=4 - local.set $6 + local.set $5 local.get $0 i32.load offset=12 i32.const 0 @@ -10937,7 +10910,7 @@ i32.store i32.const 1 i32.sub - local.tee $3 + local.tee $7 i32.const 0 i32.lt_s if @@ -10949,11 +10922,11 @@ br $__inlined_func$~lib/util/string/joinFloatArray end block $folding-inner0 - local.get $3 + local.get $7 i32.eqz if block $__inlined_func$~lib/util/number/dtoa (result i32) - local.get $6 + local.get $5 f64.load local.set $1 global.get $~lib/memory/__stack_pointer @@ -11033,58 +11006,58 @@ br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.const 11724 i32.load i32.const 1 i32.shr_u - local.tee $4 + local.tee $3 i32.const 28 i32.add i32.mul i32.const 28 i32.add - local.tee $5 + local.tee $4 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $6 i32.store loop $for-loop|0 local.get $2 - local.get $3 + local.get $7 i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $7 + local.get $6 i32.add local.get $2 i32.const 3 i32.shl - local.get $6 + local.get $5 i32.add f64.load call $~lib/util/number/dtoa_buffered local.get $0 i32.add local.set $0 - local.get $4 + local.get $3 if local.get $0 i32.const 1 i32.shl - local.get $7 + local.get $6 i32.add i32.const 11728 - local.get $4 + local.get $3 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $4 + local.get $3 i32.add local.set $0 end @@ -11095,16 +11068,16 @@ br $for-loop|0 end end - local.get $5 + local.get $4 local.get $0 i32.const 1 i32.shl - local.get $7 + local.get $6 i32.add - local.get $3 + local.get $7 i32.const 3 i32.shl - local.get $6 + local.get $5 i32.add f64.load call $~lib/util/number/dtoa_buffered @@ -11113,7 +11086,7 @@ local.tee $0 i32.gt_s if - local.get $7 + local.get $6 local.get $0 call $~lib/string/String#substring local.set $0 @@ -11123,7 +11096,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $6 br $__inlined_func$~lib/util/string/joinFloatArray end global.get $~lib/memory/__stack_pointer @@ -11369,7 +11342,7 @@ block $__inlined_func$~lib/util/string/joinReferenceArray (result i32) local.get $0 i32.load offset=4 - local.set $3 + local.set $2 local.get $0 i32.load offset=12 global.get $~lib/memory/__stack_pointer @@ -11388,15 +11361,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $3 i32.const 0 i32.store offset=8 i32.const 1 i32.sub - local.tee $4 + local.tee $3 i32.const 0 i32.lt_s if @@ -11407,12 +11380,12 @@ i32.const 9232 br $__inlined_func$~lib/util/string/joinReferenceArray end - local.get $4 + local.get $3 i32.eqz if global.get $~lib/memory/__stack_pointer local.tee $0 - local.get $3 + local.get $2 i32.load local.tee $1 i32.store @@ -11435,17 +11408,17 @@ i32.load i32.const 1 i32.shr_u - local.set $2 + local.set $4 loop $for-loop|0 local.get $1 - local.get $4 + local.get $3 i32.lt_s if global.get $~lib/memory/__stack_pointer local.get $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load local.tee $5 @@ -11463,7 +11436,7 @@ local.tee $0 i32.store offset=4 end - local.get $2 + local.get $4 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -11480,10 +11453,10 @@ end end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load local.tee $1 @@ -11547,48 +11520,48 @@ end local.get $1 i32.extend8_s - local.tee $1 local.tee $3 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $3 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $3 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $3 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $3 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $3 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -11596,12 +11569,12 @@ end local.get $2 i32.add - local.set $2 + local.set $1 local.get $0 + local.get $3 local.get $1 - local.get $2 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $1 ) (func $~lib/util/number/itoa_buffered (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -11689,7 +11662,7 @@ local.get $2 i32.const 4 i32.sub - local.tee $3 + local.tee $2 i32.const 1 i32.shl local.get $0 @@ -11703,10 +11676,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $4 + local.tee $3 i32.const 10000 i32.rem_u - local.tee $2 + local.tee $4 i32.const 100 i32.div_u i32.const 2 @@ -11714,7 +11687,7 @@ i32.const 9836 i32.add i64.load32_u - local.get $2 + local.get $4 i32.const 100 i32.rem_u i32.const 2 @@ -11726,7 +11699,7 @@ i64.shl i64.or i64.store - local.get $3 + local.get $2 i32.const 4 i32.sub local.tee $2 @@ -11734,7 +11707,7 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $3 i32.const 10000 i32.div_u local.tee $3 @@ -11925,7 +11898,7 @@ i32.store i32.const 1 i32.sub - local.tee $0 + local.tee $7 i32.const 0 i32.lt_s if @@ -11937,7 +11910,7 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $0 + local.get $7 i32.eqz if block $__inlined_func$~lib/util/number/utoa64 (result i32) @@ -12104,33 +12077,33 @@ br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $7 i32.const 9516 i32.load i32.const 1 i32.shr_u - local.tee $5 + local.tee $0 i32.const 20 i32.add i32.mul i32.const 20 i32.add - local.tee $6 + local.tee $5 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $6 i32.store loop $for-loop|0 - local.get $0 local.get $3 - i32.gt_s + local.get $7 + i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $7 + local.get $6 i32.add local.get $3 i32.const 3 @@ -12142,20 +12115,20 @@ local.get $1 i32.add local.set $1 - local.get $5 + local.get $0 if local.get $1 i32.const 1 i32.shl - local.get $7 + local.get $6 i32.add i32.const 9520 - local.get $5 + local.get $0 i32.const 1 i32.shl call $~lib/memory/memory.copy + local.get $0 local.get $1 - local.get $5 i32.add local.set $1 end @@ -12166,13 +12139,13 @@ br $for-loop|0 end end - local.get $6 + local.get $5 local.get $1 i32.const 1 i32.shl - local.get $7 + local.get $6 i32.add - local.get $0 + local.get $7 i32.const 3 i32.shl local.get $4 @@ -12184,7 +12157,7 @@ local.tee $0 i32.gt_s if - local.get $7 + local.get $6 local.get $0 call $~lib/string/String#substring local.set $0 @@ -12194,7 +12167,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $6 br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer @@ -12219,7 +12192,7 @@ local.get $1 i64.const 0 i64.lt_s - local.tee $4 + local.tee $2 if local.get $0 i32.const 45 @@ -12233,7 +12206,7 @@ i64.const 10 i64.lt_u if - local.get $4 + local.get $2 i32.const 1 i32.shl local.get $0 @@ -12242,7 +12215,7 @@ i64.const 48 i64.or i64.store16 - local.get $4 + local.get $2 i32.const 1 i32.add return @@ -12254,53 +12227,53 @@ local.get $1 i32.wrap_i64 local.tee $3 - local.tee $2 + local.tee $4 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $4 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $4 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $4 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $4 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $4 i32.const 100000000 i32.ge_u i32.add end end - local.get $4 + local.get $2 i32.add local.set $2 local.get $0 @@ -12360,7 +12333,7 @@ i32.add end end - local.get $4 + local.get $2 i32.add local.tee $2 call $~lib/util/number/utoa64_dec_lut @@ -12452,7 +12425,7 @@ block $__inlined_func$~lib/util/string/joinIntegerArray (result i32) local.get $0 i32.load offset=4 - local.set $4 + local.set $3 local.get $0 i32.load offset=12 i32.const 0 @@ -12477,7 +12450,7 @@ i32.store i32.const 1 i32.sub - local.tee $3 + local.tee $7 i32.const 0 i32.lt_s if @@ -12488,10 +12461,10 @@ i32.const 9232 br $__inlined_func$~lib/util/string/joinIntegerArray end - local.get $3 + local.get $7 i32.eqz if - local.get $4 + local.get $3 i32.load8_u call $~lib/util/number/utoa32 global.get $~lib/memory/__stack_pointer @@ -12501,58 +12474,58 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $5 + local.tee $4 i32.const 10 i32.add i32.mul i32.const 10 i32.add - local.tee $6 + local.tee $5 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $6 i32.store loop $for-loop|0 local.get $2 - local.get $3 + local.get $7 i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $7 + local.get $6 i32.add local.get $2 - local.get $4 + local.get $3 i32.add i32.load8_u call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $5 + local.get $4 if local.get $0 i32.const 1 i32.shl - local.get $7 + local.get $6 i32.add local.get $1 - local.get $5 + local.get $4 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $5 + local.get $4 i32.add local.set $0 end @@ -12563,14 +12536,14 @@ br $for-loop|0 end end - local.get $6 + local.get $5 local.get $0 i32.const 1 i32.shl - local.get $7 + local.get $6 i32.add local.get $3 - local.get $4 + local.get $7 i32.add i32.load8_u call $~lib/util/number/itoa_buffered @@ -12579,7 +12552,7 @@ local.tee $0 i32.gt_s if - local.get $7 + local.get $6 local.get $0 call $~lib/string/String#substring global.get $~lib/memory/__stack_pointer @@ -12592,7 +12565,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $6 end ) (func $start:std/array~anonymous|53 (param $0 i32) (param $1 i32) (param $2 i32) (result i32) @@ -12988,16 +12961,16 @@ local.get $6 i32.add i32.load8_u - local.set $7 + local.set $8 local.get $2 local.get $4 i32.add i32.load8_u - local.set $8 + local.set $7 i32.const 2 global.set $~argumentsLength - local.get $7 local.get $8 + local.get $7 local.get $5 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -13007,7 +12980,7 @@ local.get $0 local.get $1 i32.add - local.get $7 + local.get $8 i32.store8 local.get $6 i32.const 1 @@ -13017,7 +12990,7 @@ local.get $0 local.get $1 i32.add - local.get $8 + local.get $7 i32.store8 local.get $2 i32.const 1 @@ -13162,26 +13135,24 @@ local.tee $6 i32.const 2 i32.shl - local.tee $5 + local.tee $7 i32.const 1 i32.shl - local.set $7 + local.set $8 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $7 + local.get $8 call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add local.tee $9 - local.get $5 + local.get $7 i32.add local.set $10 - i32.const 0 - local.set $5 loop $for-loop|1 local.get $5 local.get $6 @@ -13778,25 +13749,25 @@ i32.gt_s if (result i32) global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $6 local.get $4 i32.const 2 i32.shl local.get $0 i32.add - local.tee $6 - i32.load offset=4 local.tee $7 + i32.load offset=4 + local.tee $5 i32.store - local.get $5 local.get $6 + local.get $7 i32.load - local.tee $5 + local.tee $6 i32.store offset=4 i32.const 2 global.set $~argumentsLength - local.get $7 local.get $5 + local.get $6 local.get $3 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -13921,21 +13892,20 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i64.const 0 i64.store - local.get $1 + local.get $3 i64.const 0 i64.store offset=8 - local.get $1 + local.get $3 i64.const 0 i64.store offset=16 - local.get $1 - local.tee $0 + local.get $3 global.get $std/array/inputStabArr - local.tee $2 + local.tee $4 i32.store offset=8 - local.get $1 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -13944,76 +13914,74 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store i32.const 0 - local.get $2 - i32.load offset=12 - local.tee $4 local.get $4 + i32.load offset=12 + local.tee $5 + local.get $5 i32.const 0 i32.gt_s select - local.set $5 - local.get $1 - local.get $4 + local.set $6 + local.get $2 local.get $5 + local.get $6 i32.sub - local.tee $1 + local.tee $2 i32.const 0 - local.get $1 + local.get $2 i32.const 0 i32.gt_s select - local.tee $4 + local.tee $5 i32.const 2 i32.const 20 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $7 i32.store - local.get $1 + local.get $7 i32.load offset=4 - local.set $6 - local.get $2 + local.set $2 + local.get $4 i32.load offset=4 - local.get $5 + local.get $6 i32.const 2 i32.shl i32.add - local.set $5 - i32.const 0 - local.set $2 - local.get $4 + local.set $4 + local.get $5 i32.const 2 i32.shl - local.set $4 + local.set $5 loop $while-continue|0 - local.get $2 - local.get $4 + local.get $0 + local.get $5 i32.lt_u if + local.get $0 local.get $2 - local.get $6 i32.add - local.get $2 - local.get $5 + local.get $0 + local.get $4 i32.add i32.load - local.tee $7 + local.tee $6 i32.store - local.get $7 + local.get $6 if - local.get $1 local.get $7 + local.get $6 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 + local.get $0 i32.const 4 i32.add - local.set $2 + local.set $0 br $while-continue|0 end end @@ -14022,20 +13990,20 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $0 + local.get $7 i32.store - local.get $2 + local.get $0 i32.const 8880 i32.store offset=4 - local.get $1 + local.get $7 i32.load offset=4 - local.get $1 + local.get $7 i32.load offset=12 i32.const 8880 call $~lib/util/sort/SORT - local.get $0 - local.get $1 + local.get $3 + local.get $7 i32.store offset=12 i32.const 1 local.set $0 @@ -14047,38 +14015,38 @@ i32.load offset=12 local.set $2 loop $for-loop|0 + local.get $1 local.get $2 - local.get $3 - i32.gt_s + i32.lt_s if block $for-break0 global.get $~lib/memory/__stack_pointer + local.get $7 local.get $1 - local.get $3 call $~lib/array/Array#__get - local.tee $4 + local.tee $3 i32.store offset=16 global.get $~lib/memory/__stack_pointer global.get $std/array/outputStabArr - local.tee $5 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 - local.get $3 + local.get $4 + local.get $1 call $~lib/array/Array#__get - local.tee $5 + local.tee $4 i32.store offset=20 - local.get $4 + local.get $3 i32.load - local.get $5 + local.get $4 i32.load i32.ne if (result i32) i32.const 1 else - local.get $4 + local.get $3 i32.load offset=4 - local.get $5 + local.get $4 i32.load offset=4 i32.ne end @@ -14087,10 +14055,10 @@ local.set $0 br $for-break0 end - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 + local.set $1 br $for-loop|0 end end @@ -14389,7 +14357,7 @@ block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> (result i32) local.get $0 i32.load offset=4 - local.set $4 + local.set $3 local.get $0 i32.load offset=12 local.get $2 @@ -14409,7 +14377,7 @@ i32.store offset=8 i32.const 1 i32.sub - local.tee $5 + local.tee $4 i32.const 0 i32.lt_s if @@ -14420,11 +14388,11 @@ i32.const 9232 br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> end - local.get $5 + local.get $4 i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.load local.tee $0 i32.store @@ -14450,17 +14418,17 @@ i32.load i32.const 1 i32.shr_u - local.set $2 + local.set $5 loop $for-loop|0 local.get $1 - local.get $5 + local.get $4 i32.lt_s if global.get $~lib/memory/__stack_pointer local.get $1 i32.const 2 i32.shl - local.get $4 + local.get $3 i32.add i32.load local.tee $6 @@ -14480,7 +14448,7 @@ local.tee $0 i32.store offset=4 end - local.get $2 + local.get $5 if global.get $~lib/memory/__stack_pointer local.get $0 @@ -14497,10 +14465,10 @@ end end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 2 i32.shl - local.get $4 + local.get $3 i32.add i32.load local.tee $1 @@ -14544,15 +14512,17 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 f32) - (local $5 f64) - (local $6 i64) - (local $7 i32) + (local $4 i32) + (local $5 i64) + (local $6 f64) + (local $7 f32) (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) + (local $13 i32) + (local $14 i32) global.get $~lib/memory/__stack_pointer i32.const 172 i32.sub @@ -14932,22 +14902,22 @@ i32.const 1 local.get $0 i32.load offset=12 - local.tee $3 - local.get $3 + local.tee $8 + local.get $8 i32.const 1 i32.gt_s select local.set $2 i32.const 3 - local.get $3 - local.get $3 + local.get $8 + local.get $8 i32.const 3 i32.gt_s select - local.set $3 + local.set $8 loop $for-loop|0 local.get $2 - local.get $3 + local.get $8 i32.lt_s if local.get $2 @@ -14991,15 +14961,15 @@ i32.const 0 local.get $0 i32.load offset=12 - local.tee $3 - local.get $3 + local.tee $8 + local.get $8 i32.const 0 i32.gt_s select local.set $2 loop $for-loop|01 local.get $2 - local.get $3 + local.get $8 i32.lt_s if local.get $2 @@ -15043,25 +15013,25 @@ i32.const 0 local.get $0 i32.load offset=12 - local.tee $3 - local.get $3 + local.tee $8 + local.get $8 i32.const 0 i32.gt_s select local.set $2 - local.get $3 + local.get $8 i32.const 3 i32.sub - local.tee $3 + local.tee $8 i32.const 0 - local.get $3 + local.get $8 i32.const 0 i32.gt_s select - local.set $3 + local.set $8 loop $for-loop|03 local.get $2 - local.get $3 + local.get $8 i32.lt_s if local.get $2 @@ -15104,7 +15074,7 @@ local.set $1 local.get $0 i32.load offset=12 - local.tee $3 + local.tee $8 i32.const 2 i32.sub local.tee $2 @@ -15116,7 +15086,7 @@ local.set $2 loop $for-loop|05 local.get $2 - local.get $3 + local.get $8 i32.lt_s if local.get $2 @@ -15160,22 +15130,22 @@ i32.const 1 local.get $0 i32.load offset=12 - local.tee $3 - local.get $3 + local.tee $8 + local.get $8 i32.const 1 i32.gt_s select local.set $2 i32.const 0 - local.get $3 - local.get $3 + local.get $8 + local.get $8 i32.const 0 i32.gt_s select - local.set $3 + local.set $8 loop $for-loop|07 local.get $2 - local.get $3 + local.get $8 i32.lt_s if local.get $2 @@ -16721,10 +16691,10 @@ local.tee $1 i32.const 2 i32.shl - local.tee $7 + local.tee $9 call $~lib/memory/memory.copy local.get $2 - local.get $7 + local.get $9 i32.add i32.const 0 i32.store @@ -17200,14 +17170,14 @@ local.get $0 i32.const 1 i32.shr_u - local.set $3 + local.set $8 local.get $0 i32.const 1 i32.sub local.set $0 loop $while-continue|0 local.get $1 - local.get $3 + local.get $8 i32.lt_u if local.get $1 @@ -17215,10 +17185,10 @@ i32.shl local.get $2 i32.add - local.tee $7 + local.tee $9 i32.load - local.set $8 - local.get $7 + local.set $10 + local.get $9 local.get $0 local.get $1 i32.sub @@ -17226,11 +17196,11 @@ i32.shl local.get $2 i32.add - local.tee $7 + local.tee $9 i32.load i32.store - local.get $7 - local.get $8 + local.get $9 + local.get $10 i32.store local.get $1 i32.const 1 @@ -17653,11 +17623,11 @@ block $__inlined_func$~lib/array/Array#indexOf local.get $2 i32.load offset=12 - local.tee $3 + local.tee $8 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $8 select br_if $__inlined_func$~lib/array/Array#indexOf local.get $2 @@ -17665,7 +17635,7 @@ local.set $2 loop $while-continue|012 local.get $1 - local.get $3 + local.get $8 i32.lt_s if local.get $1 @@ -17710,11 +17680,11 @@ block $__inlined_func$~lib/array/Array#indexOf39 local.get $2 i32.load offset=12 - local.tee $3 + local.tee $8 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $8 select br_if $__inlined_func$~lib/array/Array#indexOf39 local.get $2 @@ -17722,7 +17692,7 @@ local.set $2 loop $while-continue|040 local.get $1 - local.get $3 + local.get $8 i32.lt_s if local.get $1 @@ -17769,11 +17739,11 @@ block $__inlined_func$~lib/array/Array#indexOf41 local.get $2 i32.load offset=12 - local.tee $3 + local.tee $8 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $8 select br_if $__inlined_func$~lib/array/Array#indexOf41 local.get $2 @@ -17781,7 +17751,7 @@ local.set $2 loop $while-continue|042 local.get $1 - local.get $3 + local.get $8 i32.lt_s if local.get $1 @@ -17828,11 +17798,11 @@ block $__inlined_func$~lib/array/Array#indexOf43 local.get $2 i32.load offset=12 - local.tee $3 + local.tee $8 i32.const 100 i32.le_s i32.const 1 - local.get $3 + local.get $8 select br_if $__inlined_func$~lib/array/Array#indexOf43 local.get $2 @@ -17840,7 +17810,7 @@ local.set $2 loop $while-continue|044 local.get $1 - local.get $3 + local.get $8 i32.lt_s if local.get $1 @@ -18085,11 +18055,11 @@ block $__inlined_func$~lib/array/Array#indexOf51 local.get $2 i32.load offset=12 - local.tee $3 + local.tee $8 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $8 select br_if $__inlined_func$~lib/array/Array#indexOf51 local.get $2 @@ -18097,7 +18067,7 @@ local.set $2 loop $while-continue|052 local.get $1 - local.get $3 + local.get $8 i32.lt_s if local.get $1 @@ -18144,11 +18114,11 @@ block $__inlined_func$~lib/array/Array#indexOf53 local.get $2 i32.load offset=12 - local.tee $3 + local.tee $8 i32.const 1 i32.le_s i32.const 1 - local.get $3 + local.get $8 select br_if $__inlined_func$~lib/array/Array#indexOf53 local.get $2 @@ -18156,7 +18126,7 @@ local.set $2 loop $while-continue|054 local.get $1 - local.get $3 + local.get $8 i32.lt_s if local.get $1 @@ -18203,11 +18173,11 @@ block $__inlined_func$~lib/array/Array#indexOf55 local.get $2 i32.load offset=12 - local.tee $3 + local.tee $8 i32.const 2 i32.le_s i32.const 1 - local.get $3 + local.get $8 select br_if $__inlined_func$~lib/array/Array#indexOf55 local.get $2 @@ -18215,7 +18185,7 @@ local.set $2 loop $while-continue|056 local.get $1 - local.get $3 + local.get $8 i32.lt_s if local.get $1 @@ -18267,11 +18237,11 @@ block $__inlined_func$~lib/array/Array#indexOf local.get $2 i32.load offset=12 - local.tee $3 + local.tee $8 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $8 select br_if $__inlined_func$~lib/array/Array#indexOf local.get $2 @@ -18279,7 +18249,7 @@ local.set $2 loop $while-continue|057 local.get $1 - local.get $3 + local.get $8 i32.lt_s if local.get $1 @@ -18329,11 +18299,11 @@ block $__inlined_func$~lib/array/Array#indexOf local.get $2 i32.load offset=12 - local.tee $3 + local.tee $8 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $8 select br_if $__inlined_func$~lib/array/Array#indexOf local.get $2 @@ -18341,7 +18311,7 @@ local.set $2 loop $while-continue|058 local.get $1 - local.get $3 + local.get $8 i32.lt_s if local.get $1 @@ -18388,7 +18358,7 @@ local.get $1 i32.load offset=12 local.tee $2 - local.set $3 + local.set $8 i32.const -1 local.set $0 block $__inlined_func$~lib/array/Array#lastIndexOf @@ -18396,24 +18366,24 @@ i32.eqz br_if $__inlined_func$~lib/array/Array#lastIndexOf local.get $2 - local.get $3 + local.get $8 i32.add local.get $2 i32.const 1 i32.sub - local.get $3 + local.get $8 local.get $2 - local.get $3 + local.get $8 i32.le_s select - local.get $3 + local.get $8 i32.const 0 i32.lt_s select local.set $2 local.get $1 i32.load offset=4 - local.set $3 + local.set $8 loop $while-continue|09 local.get $2 i32.const 0 @@ -18423,7 +18393,7 @@ local.tee $0 i32.const 2 i32.shl - local.get $3 + local.get $8 i32.add i32.load i32.const 2 @@ -18461,18 +18431,18 @@ block $__inlined_func$~lib/array/Array#lastIndexOf14 local.get $0 i32.load offset=12 - local.tee $3 + local.tee $8 i32.eqz br_if $__inlined_func$~lib/array/Array#lastIndexOf14 local.get $2 - local.get $3 + local.get $8 i32.add - local.get $3 + local.get $8 i32.const 1 i32.sub local.get $2 local.get $2 - local.get $3 + local.get $8 i32.ge_s select local.get $2 @@ -18482,7 +18452,7 @@ local.set $2 local.get $0 i32.load offset=4 - local.set $3 + local.set $8 loop $while-continue|015 local.get $2 i32.const 0 @@ -18492,7 +18462,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $8 i32.add i32.load i32.const 7 @@ -18736,11 +18706,11 @@ block $__inlined_func$~lib/array/Array#indexOf17 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $8 select br_if $__inlined_func$~lib/array/Array#indexOf17 local.get $1 @@ -18748,7 +18718,7 @@ local.set $1 loop $while-continue|018 local.get $2 - local.get $3 + local.get $8 i32.lt_s if local.get $2 @@ -18793,11 +18763,11 @@ block $__inlined_func$~lib/array/Array#indexOf20 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $8 select br_if $__inlined_func$~lib/array/Array#indexOf20 local.get $1 @@ -18805,7 +18775,7 @@ local.set $1 loop $while-continue|021 local.get $2 - local.get $3 + local.get $8 i32.lt_s if local.get $2 @@ -18850,11 +18820,11 @@ block $__inlined_func$~lib/array/Array#indexOf23 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $8 select br_if $__inlined_func$~lib/array/Array#indexOf23 local.get $1 @@ -18862,7 +18832,7 @@ local.set $1 loop $while-continue|024 local.get $2 - local.get $3 + local.get $8 i32.lt_s if local.get $2 @@ -18907,11 +18877,11 @@ block $__inlined_func$~lib/array/Array#indexOf26 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 i32.const 100 i32.le_s i32.const 1 - local.get $3 + local.get $8 select br_if $__inlined_func$~lib/array/Array#indexOf26 local.get $1 @@ -18919,7 +18889,7 @@ local.set $1 loop $while-continue|027 local.get $2 - local.get $3 + local.get $8 i32.lt_s if local.get $2 @@ -19156,11 +19126,11 @@ block $__inlined_func$~lib/array/Array#indexOf38 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $8 select br_if $__inlined_func$~lib/array/Array#indexOf38 local.get $1 @@ -19168,7 +19138,7 @@ local.set $1 loop $while-continue|039 local.get $2 - local.get $3 + local.get $8 i32.lt_s if local.get $2 @@ -19213,11 +19183,11 @@ block $__inlined_func$~lib/array/Array#indexOf42 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 i32.const 1 i32.le_s i32.const 1 - local.get $3 + local.get $8 select br_if $__inlined_func$~lib/array/Array#indexOf42 local.get $1 @@ -19225,7 +19195,7 @@ local.set $1 loop $while-continue|043 local.get $2 - local.get $3 + local.get $8 i32.lt_s if local.get $2 @@ -19270,11 +19240,11 @@ block $__inlined_func$~lib/array/Array#indexOf46 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 i32.const 2 i32.le_s i32.const 1 - local.get $3 + local.get $8 select br_if $__inlined_func$~lib/array/Array#indexOf46 local.get $1 @@ -19282,7 +19252,7 @@ local.set $1 loop $while-continue|047 local.get $2 - local.get $3 + local.get $8 i32.lt_s if local.get $2 @@ -19354,11 +19324,11 @@ local.get $0 i32.add f32.load - local.tee $4 + local.tee $7 f32.const nan:0x400000 f32.eq - local.get $4 - local.get $4 + local.get $7 + local.get $7 f32.ne i32.or br_if $__inlined_func$~lib/array/Array#includes @@ -19419,11 +19389,11 @@ local.get $0 i32.add f64.load - local.tee $5 + local.tee $6 f64.const nan:0x8000000000000 f64.eq - local.get $5 - local.get $5 + local.get $6 + local.get $6 f64.ne i32.or br_if $__inlined_func$~lib/array/Array#includes @@ -20582,16 +20552,16 @@ i32.const 0 local.get $1 i32.load offset=12 - local.tee $3 - local.get $3 + local.tee $8 + local.get $8 i32.const 0 i32.gt_s select - local.set $7 + local.set $9 local.get $2 i32.const 1 - local.get $3 - local.get $7 + local.get $8 + local.get $9 i32.sub local.tee $2 local.get $2 @@ -20609,44 +20579,44 @@ i32.const 12 i32.const 0 call $~lib/rt/__newArray - local.tee $8 + local.tee $10 i32.store - local.get $8 + local.get $10 i32.load offset=4 local.get $1 i32.load offset=4 - local.tee $9 - local.get $7 + local.tee $11 + local.get $9 i32.const 2 i32.shl i32.add - local.tee $10 + local.tee $12 local.get $2 i32.const 2 i32.shl call $~lib/memory/memory.copy - local.get $3 + local.get $8 local.get $2 - local.get $7 + local.get $9 i32.add - local.tee $7 + local.tee $9 i32.ne if - local.get $10 - local.get $7 + local.get $12 + local.get $9 i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add - local.get $3 - local.get $7 + local.get $8 + local.get $9 i32.sub i32.const 2 i32.shl call $~lib/memory/memory.copy end local.get $1 - local.get $3 + local.get $8 local.get $2 i32.sub i32.store offset=12 @@ -20654,9 +20624,9 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 + local.get $10 i32.store offset=4 - local.get $8 + local.get $10 i32.load offset=12 i32.const 1 i32.ne @@ -20669,7 +20639,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $10 i32.const 0 call $~lib/array/Array#__get local.tee $0 @@ -20796,9 +20766,9 @@ local.get $2 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 local.get $2 - local.get $3 + local.get $8 i32.lt_s select local.get $0 @@ -20858,9 +20828,9 @@ local.get $2 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 local.get $2 - local.get $3 + local.get $8 i32.lt_s select local.get $0 @@ -20922,9 +20892,9 @@ local.get $2 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 local.get $2 - local.get $3 + local.get $8 i32.lt_s select local.get $0 @@ -20986,9 +20956,9 @@ local.get $2 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 local.get $2 - local.get $3 + local.get $8 i32.lt_s select local.get $0 @@ -21066,9 +21036,9 @@ local.get $2 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 local.get $2 - local.get $3 + local.get $8 i32.lt_s select local.get $0 @@ -21157,9 +21127,9 @@ local.get $2 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 local.get $2 - local.get $3 + local.get $8 i32.lt_s select local.get $0 @@ -21467,9 +21437,9 @@ local.get $2 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 local.get $2 - local.get $3 + local.get $8 i32.lt_s select local.get $0 @@ -21482,11 +21452,11 @@ i32.shl i32.add i32.load - local.set $3 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $3 + local.get $8 local.get $0 local.get $1 i32.const 6512 @@ -21531,9 +21501,9 @@ local.get $2 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 local.get $2 - local.get $3 + local.get $8 i32.lt_s select local.get $0 @@ -21546,11 +21516,11 @@ i32.shl i32.add i32.load - local.set $3 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $3 + local.get $8 local.get $0 local.get $1 i32.const 6544 @@ -21594,9 +21564,9 @@ local.get $2 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 local.get $2 - local.get $3 + local.get $8 i32.lt_s select local.get $0 @@ -21609,11 +21579,11 @@ i32.shl i32.add i32.load - local.set $3 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $3 + local.get $8 local.get $0 local.get $1 i32.const 6576 @@ -21674,9 +21644,9 @@ local.get $2 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 local.get $2 - local.get $3 + local.get $8 i32.lt_s select local.get $0 @@ -21689,11 +21659,11 @@ i32.shl i32.add i32.load - local.set $3 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $3 + local.get $8 local.get $0 local.get $1 i32.const 6608 @@ -21764,9 +21734,9 @@ local.get $2 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 local.get $2 - local.get $3 + local.get $8 i32.lt_s select local.get $0 @@ -21779,11 +21749,11 @@ i32.shl i32.add i32.load - local.set $3 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $3 + local.get $8 local.get $0 local.get $1 i32.const 6640 @@ -21859,9 +21829,9 @@ local.get $2 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 local.get $2 - local.get $3 + local.get $8 i32.lt_s select local.get $0 @@ -21874,11 +21844,11 @@ i32.shl i32.add i32.load - local.set $3 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $3 + local.get $8 local.get $0 local.get $1 i32.const 6672 @@ -21922,9 +21892,9 @@ local.get $2 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 local.get $2 - local.get $3 + local.get $8 i32.lt_s select local.get $0 @@ -21937,11 +21907,11 @@ i32.shl i32.add i32.load - local.set $3 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $3 + local.get $8 local.get $0 local.get $1 i32.const 6704 @@ -21984,9 +21954,9 @@ local.get $2 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 local.get $2 - local.get $3 + local.get $8 i32.lt_s select local.get $0 @@ -21999,11 +21969,11 @@ i32.shl i32.add i32.load - local.set $3 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $3 + local.get $8 local.get $0 local.get $1 i32.const 6736 @@ -22062,9 +22032,9 @@ local.get $2 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 local.get $2 - local.get $3 + local.get $8 i32.lt_s select local.get $0 @@ -22077,11 +22047,11 @@ i32.shl i32.add i32.load - local.set $3 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $3 + local.get $8 local.get $0 local.get $1 i32.const 6768 @@ -22152,9 +22122,9 @@ local.get $2 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 local.get $2 - local.get $3 + local.get $8 i32.lt_s select local.get $0 @@ -22167,11 +22137,11 @@ i32.shl i32.add i32.load - local.set $3 + local.set $8 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $3 + local.get $8 local.get $0 local.get $1 i32.const 6800 @@ -22246,9 +22216,9 @@ local.get $2 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 local.get $2 - local.get $3 + local.get $8 i32.lt_s select local.get $0 @@ -22305,9 +22275,9 @@ local.get $2 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 local.get $2 - local.get $3 + local.get $8 i32.lt_s select local.get $0 @@ -22380,9 +22350,9 @@ local.get $2 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 local.get $2 - local.get $3 + local.get $8 i32.lt_s select local.get $0 @@ -22466,9 +22436,9 @@ local.get $2 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 local.get $2 - local.get $3 + local.get $8 i32.lt_s select local.get $0 @@ -22554,9 +22524,9 @@ local.get $2 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 local.get $2 - local.get $3 + local.get $8 i32.lt_s select local.get $0 @@ -22671,29 +22641,29 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $8 i32.const 0 i32.store - local.get $3 + local.get $8 local.get $1 i32.load offset=12 - local.tee $3 + local.tee $8 i32.const 2 i32.const 10 i32.const 0 call $~lib/rt/__newArray - local.tee $7 + local.tee $9 i32.store - local.get $7 + local.get $9 i32.load offset=4 - local.set $8 + local.set $10 loop $for-loop|0129 - local.get $3 + local.get $8 local.get $1 i32.load offset=12 - local.tee $9 - local.get $3 - local.get $9 + local.tee $11 + local.get $8 + local.get $11 i32.lt_s select local.get $0 @@ -22702,18 +22672,18 @@ local.get $0 i32.const 2 i32.shl - local.tee $9 + local.tee $11 local.get $1 i32.load offset=4 i32.add i32.load - local.set $10 + local.set $12 i32.const 3 global.set $~argumentsLength - local.get $8 - local.get $9 - i32.add local.get $10 + local.get $11 + i32.add + local.get $12 local.get $0 local.get $1 i32.const 6992 @@ -22731,9 +22701,9 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $9 i32.store offset=12 - local.get $7 + local.get $9 i32.load offset=12 i32.const 4 i32.ne @@ -22745,10 +22715,10 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $9 i32.const 0 call $~lib/array/Array#__get - local.set $4 + local.set $7 global.get $~lib/memory/__stack_pointer global.get $std/array/arr local.tee $0 @@ -22757,7 +22727,7 @@ i32.const 0 call $~lib/array/Array#__get f32.convert_i32_s - local.get $4 + local.get $7 f32.ne if i32.const 0 @@ -23102,14 +23072,14 @@ local.set $1 local.get $2 i32.load offset=12 - local.set $3 + local.set $8 loop $for-loop|0136 - local.get $3 + local.get $8 local.get $2 i32.load offset=12 - local.tee $7 - local.get $3 - local.get $7 + local.tee $9 + local.get $8 + local.get $9 i32.lt_s select local.get $0 @@ -23122,11 +23092,11 @@ i32.shl i32.add i32.load - local.set $7 + local.set $9 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $7 + local.get $9 local.get $0 local.get $2 i32.const 7248 @@ -23167,14 +23137,14 @@ local.set $1 local.get $2 i32.load offset=12 - local.set $3 + local.set $8 loop $for-loop|0138 - local.get $3 + local.get $8 local.get $2 i32.load offset=12 - local.tee $7 - local.get $3 - local.get $7 + local.tee $9 + local.get $8 + local.get $9 i32.lt_s select local.get $0 @@ -23187,11 +23157,11 @@ i32.shl i32.add i32.load - local.set $7 + local.set $9 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $7 + local.get $9 local.get $0 local.get $2 i32.const 7280 @@ -23232,14 +23202,14 @@ local.set $1 local.get $2 i32.load offset=12 - local.set $3 + local.set $8 loop $for-loop|0140 - local.get $3 + local.get $8 local.get $2 i32.load offset=12 - local.tee $7 - local.get $3 - local.get $7 + local.tee $9 + local.get $8 + local.get $9 i32.lt_s select local.get $0 @@ -23252,11 +23222,11 @@ i32.shl i32.add i32.load - local.set $7 + local.set $9 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $7 + local.get $9 local.get $0 local.get $2 i32.const 7312 @@ -23294,14 +23264,14 @@ local.set $1 local.get $2 i32.load offset=12 - local.set $3 + local.set $8 loop $for-loop|0142 - local.get $3 + local.get $8 local.get $2 i32.load offset=12 - local.tee $7 - local.get $3 - local.get $7 + local.tee $9 + local.get $8 + local.get $9 i32.lt_s select local.get $0 @@ -23314,11 +23284,11 @@ i32.shl i32.add i32.load - local.set $7 + local.set $9 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $7 + local.get $9 local.get $0 local.get $2 i32.const 7344 @@ -23355,14 +23325,14 @@ local.set $1 local.get $2 i32.load offset=12 - local.set $3 + local.set $8 loop $for-loop|0144 - local.get $3 + local.get $8 local.get $2 i32.load offset=12 - local.tee $7 - local.get $3 - local.get $7 + local.tee $9 + local.get $8 + local.get $9 i32.lt_s select local.get $0 @@ -23375,11 +23345,11 @@ i32.shl i32.add i32.load - local.set $7 + local.set $9 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $7 + local.get $9 local.get $0 local.get $2 i32.const 7376 @@ -23436,14 +23406,14 @@ local.set $1 local.get $2 i32.load offset=12 - local.set $3 + local.set $8 loop $for-loop|0147 - local.get $3 + local.get $8 local.get $2 i32.load offset=12 - local.tee $7 - local.get $3 - local.get $7 + local.tee $9 + local.get $8 + local.get $9 i32.lt_s select local.get $0 @@ -23456,11 +23426,11 @@ i32.shl i32.add i32.load - local.set $7 + local.set $9 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $7 + local.get $9 local.get $0 local.get $2 i32.const 7408 @@ -23528,14 +23498,14 @@ local.set $1 local.get $2 i32.load offset=12 - local.set $3 + local.set $8 loop $for-loop|0149 - local.get $3 + local.get $8 local.get $2 i32.load offset=12 - local.tee $7 - local.get $3 - local.get $7 + local.tee $9 + local.get $8 + local.get $9 i32.lt_s select local.get $0 @@ -23548,11 +23518,11 @@ i32.shl i32.add i32.load - local.set $7 + local.set $9 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $7 + local.get $9 local.get $0 local.get $2 i32.const 7440 @@ -23637,11 +23607,11 @@ i32.shl i32.add i32.load - local.set $3 + local.set $8 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $8 local.get $0 local.get $2 i32.const 7472 @@ -23695,11 +23665,11 @@ i32.shl i32.add i32.load - local.set $3 + local.set $8 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $8 local.get $0 local.get $2 i32.const 7504 @@ -23753,11 +23723,11 @@ i32.shl i32.add i32.load - local.set $3 + local.set $8 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $8 local.get $0 local.get $2 i32.const 7536 @@ -23808,11 +23778,11 @@ i32.shl i32.add i32.load - local.set $3 + local.set $8 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $8 local.get $0 local.get $2 i32.const 7568 @@ -23862,11 +23832,11 @@ i32.shl i32.add i32.load - local.set $3 + local.set $8 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $8 local.get $0 local.get $2 i32.const 7600 @@ -23936,11 +23906,11 @@ i32.shl i32.add i32.load - local.set $3 + local.set $8 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $8 local.get $0 local.get $2 i32.const 7632 @@ -24021,11 +23991,11 @@ i32.shl i32.add i32.load - local.set $3 + local.set $8 i32.const 4 global.set $~argumentsLength local.get $1 - local.get $3 + local.get $8 local.get $0 local.get $2 i32.const 7664 @@ -24593,7 +24563,7 @@ i32.const 0 local.get $0 i32.load offset=12 - local.tee $3 + local.tee $8 local.get $2 i32.load offset=12 i32.ne @@ -24607,21 +24577,21 @@ drop loop $for-loop|028 local.get $1 - local.get $3 + local.get $8 i32.lt_s if local.get $0 local.get $1 call $~lib/array/Array#__get - local.tee $5 - local.get $5 + local.tee $6 + local.get $6 f64.ne if (result i32) local.get $2 local.get $1 call $~lib/array/Array#__get - local.tee $5 - local.get $5 + local.tee $6 + local.get $6 f64.ne else i32.const 0 @@ -24767,7 +24737,7 @@ i32.const 3 i32.const 8592 call $~lib/rt/__newArray - local.tee $1 + local.tee $2 i32.store offset=124 global.get $~lib/memory/__stack_pointer i32.const 1 @@ -24775,7 +24745,7 @@ i32.const 3 i32.const 8624 call $~lib/rt/__newArray - local.tee $2 + local.tee $8 i32.store offset=128 global.get $~lib/memory/__stack_pointer i32.const 2 @@ -24783,7 +24753,7 @@ i32.const 3 i32.const 8656 call $~lib/rt/__newArray - local.tee $3 + local.tee $9 i32.store offset=132 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -24791,7 +24761,7 @@ i32.const 3 i32.const 8688 call $~lib/rt/__newArray - local.tee $7 + local.tee $10 i32.store offset=136 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -24799,48 +24769,48 @@ i32.const 3 i32.const 8736 call $~lib/rt/__newArray - local.tee $8 + local.tee $11 i32.store offset=140 global.get $~lib/memory/__stack_pointer i32.const 64 call $std/array/createReverseOrderedArray - local.tee $9 + local.tee $12 i32.store offset=144 global.get $~lib/memory/__stack_pointer i32.const 128 call $std/array/createReverseOrderedArray - local.tee $10 + local.tee $13 i32.store offset=148 global.get $~lib/memory/__stack_pointer i32.const 1024 call $std/array/createReverseOrderedArray - local.tee $11 + local.tee $0 i32.store offset=152 global.get $~lib/memory/__stack_pointer i32.const 10000 call $std/array/createReverseOrderedArray - local.tee $12 + local.tee $1 i32.store offset=156 global.get $~lib/memory/__stack_pointer i32.const 512 call $std/array/createRandomOrderedArray - local.tee $0 + local.tee $14 i32.store offset=160 - local.get $1 - call $std/array/assertSortedDefault local.get $2 call $std/array/assertSortedDefault + local.get $8 + call $std/array/assertSortedDefault i32.const 1 i32.const 2 i32.const 3 i32.const 8816 call $~lib/rt/__newArray - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=8 + local.get $8 local.get $2 - local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -24852,19 +24822,19 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $9 call $std/array/assertSortedDefault i32.const 2 i32.const 2 i32.const 3 i32.const 8848 call $~lib/rt/__newArray - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=8 - local.get $3 - local.get $1 + local.get $9 + local.get $2 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -24876,10 +24846,10 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $10 call $std/array/assertSortedDefault - local.get $7 - local.get $8 + local.get $10 + local.get $11 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -24891,10 +24861,10 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $12 call $std/array/assertSortedDefault - local.get $9 - local.get $8 + local.get $12 + local.get $11 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -24906,10 +24876,10 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $13 call $std/array/assertSortedDefault - local.get $10 - local.get $8 + local.get $13 + local.get $11 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -24921,10 +24891,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $0 call $std/array/assertSortedDefault + local.get $0 local.get $11 - local.get $8 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -24936,10 +24906,10 @@ call $~lib/builtins/abort unreachable end - local.get $12 + local.get $1 call $std/array/assertSortedDefault - local.get $12 - local.get $8 + local.get $1 + local.get $11 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -24951,7 +24921,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $14 call $std/array/assertSortedDefault call $std/array/assertStableSortedForComplexObjects global.get $~lib/memory/__stack_pointer @@ -24989,8 +24959,6 @@ i32.const 9008 call $std/array/assertSorted global.get $~lib/memory/__stack_pointer - i32.const 0 - local.set $3 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -25037,23 +25005,23 @@ i32.const 32 i32.const 0 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $8 i32.store offset=4 - local.get $7 + local.get $8 i32.const 0 i32.const 32 call $~lib/memory/memory.fill local.get $2 - local.get $7 + local.get $8 i32.store - local.get $7 + local.get $8 if local.get $2 - local.get $7 + local.get $8 call $byn-split-outlined-A$~lib/rt/itcms/__link_0 end local.get $2 - local.get $7 + local.get $8 i32.store offset=4 local.get $2 i32.const 32 @@ -25156,24 +25124,24 @@ i32.const 2048 i32.const 0 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $8 i32.store offset=4 - local.get $7 + local.get $8 i32.const 0 i32.const 2048 call $~lib/memory/memory.fill local.get $3 - local.get $7 + local.get $8 i32.store - local.get $7 + local.get $8 if local.get $3 - local.get $7 + local.get $8 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $3 - local.get $7 + local.get $8 i32.store offset=4 local.get $3 i32.const 2048 @@ -25193,10 +25161,6 @@ i32.const 512 i32.lt_s if - i32.const 511 - local.get $1 - i32.sub - local.set $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -25206,28 +25170,30 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $2 i32.const 0 i32.store - local.get $7 + local.get $2 i32.const 4 i32.const 28 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $2 i32.store - local.get $7 local.get $2 + i32.const 511 + local.get $1 + i32.sub i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $2 i32.store offset=4 local.get $3 local.get $1 - local.get $7 + local.get $2 call $~lib/array/Array<~lib/array/Array>#__set local.get $1 i32.const 1 @@ -25332,10 +25298,10 @@ local.set $2 local.get $0 i32.load offset=12 - local.set $7 + local.set $8 loop $for-loop|054 local.get $2 - local.get $7 + local.get $8 i32.lt_s if local.get $0 @@ -25343,21 +25309,21 @@ i32.const 1 i32.sub call $~lib/array/Array#__get - local.set $8 + local.set $9 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $9 i32.store local.get $0 local.get $2 call $~lib/array/Array#__get - local.set $9 + local.set $10 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $10 i32.store offset=4 i32.const 2 global.set $~argumentsLength - local.get $8 local.get $9 + local.get $10 local.get $1 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -25436,19 +25402,19 @@ local.get $0 local.get $1 call $~lib/array/Array#__get - local.set $7 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $8 i32.store local.get $3 local.get $1 call $~lib/array/Array#__get - local.set $8 + local.set $9 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $9 i32.store offset=4 - local.get $7 local.get $8 + local.get $9 call $~lib/string/String.__eq i32.eqz br_if $folding-inner01 @@ -25485,8 +25451,6 @@ end global.get $~lib/memory/__stack_pointer local.tee $0 - i32.const 0 - local.set $2 local.get $0 i32.const 8 i32.sub @@ -25506,7 +25470,7 @@ local.tee $8 i32.store loop $for-loop|044 - local.get $2 + local.get $4 i32.const 400 i32.lt_s if @@ -25629,13 +25593,13 @@ local.get $1 i32.store offset=4 local.get $8 - local.get $2 + local.get $4 local.get $1 call $~lib/array/Array<~lib/array/Array>#__set - local.get $2 + local.get $4 i32.const 1 i32.add - local.set $2 + local.set $4 br $for-loop|044 end end @@ -25698,7 +25662,7 @@ i32.store offset=168 local.get $0 i32.load offset=4 - local.set $7 + local.set $4 local.get $0 i32.load offset=12 local.set $0 @@ -25739,7 +25703,7 @@ if i32.const 9456 i32.const 9488 - local.get $7 + local.get $4 i32.load8_u select local.set $0 @@ -25770,7 +25734,7 @@ i32.gt_s if local.get $3 - local.get $7 + local.get $4 i32.add i32.load8_u local.tee $10 @@ -25820,7 +25784,7 @@ end end local.get $2 - local.get $7 + local.get $4 i32.add i32.load8_u local.tee $2 @@ -26308,7 +26272,7 @@ i32.store local.get $0 i32.load offset=4 - local.set $7 + local.set $4 local.get $0 i32.load offset=12 local.set $0 @@ -26347,7 +26311,7 @@ local.get $2 i32.eqz if - local.get $7 + local.get $4 i32.load8_s call $~lib/util/number/itoa32 local.set $0 @@ -26383,7 +26347,7 @@ local.get $0 i32.add local.get $3 - local.get $7 + local.get $4 i32.add i32.load8_s call $~lib/util/number/itoa_buffered @@ -26421,7 +26385,7 @@ local.get $0 i32.add local.get $2 - local.get $7 + local.get $4 i32.add i32.load8_s call $~lib/util/number/itoa_buffered @@ -26497,7 +26461,7 @@ i32.store local.get $0 i32.load offset=4 - local.set $7 + local.set $4 local.get $0 i32.load offset=12 local.set $0 @@ -26536,7 +26500,7 @@ local.get $2 i32.eqz if - local.get $7 + local.get $4 i32.load16_u call $~lib/util/number/utoa32 local.set $0 @@ -26574,7 +26538,7 @@ local.get $3 i32.const 1 i32.shl - local.get $7 + local.get $4 i32.add i32.load16_u call $~lib/util/number/itoa_buffered @@ -26614,7 +26578,7 @@ local.get $2 i32.const 1 i32.shl - local.get $7 + local.get $4 i32.add i32.load16_u call $~lib/util/number/itoa_buffered @@ -26741,7 +26705,7 @@ i32.store local.get $0 i32.load offset=4 - local.set $7 + local.set $4 local.get $0 i32.load offset=12 local.set $0 @@ -26780,10 +26744,10 @@ local.get $2 i32.eqz if - local.get $7 + local.get $4 i64.load i64.extend32_s - local.set $6 + local.set $5 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -26796,7 +26760,7 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/number/itoa64 - local.get $6 + local.get $5 i64.eqz if global.get $~lib/memory/__stack_pointer @@ -26808,21 +26772,21 @@ br $__inlined_func$~lib/util/number/itoa64 end i64.const 0 - local.get $6 + local.get $5 i64.sub - local.get $6 - local.get $6 + local.get $5 + local.get $5 i64.const 63 i64.shr_u i32.wrap_i64 local.tee $1 select - local.tee $6 + local.tee $5 i64.const 4294967295 i64.le_u if global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $5 i32.wrap_i64 local.tee $2 local.tee $0 @@ -26886,51 +26850,51 @@ call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $5 i64.const 1000000000000000 i64.lt_u if (result i32) - local.get $6 + local.get $5 i64.const 1000000000000 i64.lt_u if (result i32) - local.get $6 + local.get $5 i64.const 100000000000 i64.ge_u i32.const 10 i32.add - local.get $6 + local.get $5 i64.const 10000000000 i64.ge_u i32.add else - local.get $6 + local.get $5 i64.const 100000000000000 i64.ge_u i32.const 13 i32.add - local.get $6 + local.get $5 i64.const 10000000000000 i64.ge_u i32.add end else - local.get $6 + local.get $5 i64.const 100000000000000000 i64.lt_u if (result i32) - local.get $6 + local.get $5 i64.const 10000000000000000 i64.ge_u i32.const 16 i32.add else - local.get $6 + local.get $5 i64.const -8446744073709551616 i64.ge_u i32.const 18 i32.add - local.get $6 + local.get $5 i64.const 1000000000000000000 i64.ge_u i32.add @@ -26946,7 +26910,7 @@ local.tee $0 i32.store local.get $0 - local.get $6 + local.get $5 local.get $2 call $~lib/util/number/utoa64_dec_lut end @@ -26995,7 +26959,7 @@ local.get $3 i32.const 3 i32.shl - local.get $7 + local.get $4 i32.add i64.load call $~lib/util/number/itoa_buffered @@ -27035,7 +26999,7 @@ local.get $2 i32.const 3 i32.shl - local.get $7 + local.get $4 i32.add i64.load call $~lib/util/number/itoa_buffered @@ -27260,7 +27224,7 @@ i32.load i32.const 1 i32.shr_u - local.set $7 + local.set $4 loop $for-loop|024 local.get $0 local.get $3 @@ -27290,7 +27254,7 @@ local.tee $1 i32.store offset=4 end - local.get $7 + local.get $4 if global.get $~lib/memory/__stack_pointer local.get $1 @@ -27475,7 +27439,7 @@ i32.load i32.const 1 i32.shr_u - local.set $7 + local.set $4 loop $for-loop|027 local.get $0 local.get $3 @@ -27505,7 +27469,7 @@ local.tee $1 i32.store offset=4 end - local.get $7 + local.get $4 if global.get $~lib/memory/__stack_pointer local.get $1 @@ -27698,7 +27662,7 @@ i32.load i32.const 1 i32.shr_u - local.set $7 + local.set $4 loop $for-loop|030 local.get $0 local.get $3 @@ -27728,7 +27692,7 @@ local.tee $1 i32.store offset=4 end - local.get $7 + local.get $4 if global.get $~lib/memory/__stack_pointer local.get $1 @@ -27895,13 +27859,13 @@ i32.const 42 i32.const 0 call $~lib/rt/__newArray - local.tee $7 + local.tee $4 i32.store offset=160 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.load offset=4 i32.store offset=140 - local.get $7 + local.get $4 i32.const 0 i32.const 1 i32.const 2 @@ -27909,7 +27873,7 @@ i32.const 14608 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $7 + local.get $4 i32.const 1 i32.const 3 i32.const 2 @@ -27917,7 +27881,7 @@ i32.const 14704 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $7 + local.get $4 i32.const 2 i32.const 3 i32.const 2 @@ -27925,7 +27889,7 @@ i32.const 14832 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $7 + local.get $4 i32.const 3 i32.const 1 i32.const 2 @@ -27934,7 +27898,7 @@ call $~lib/rt/__newArray call $~lib/array/Array#__uset local.get $0 - local.get $7 + local.get $4 i32.store offset=140 global.get $~lib/memory/__stack_pointer i32.const 0 @@ -27954,15 +27918,15 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - local.get $7 + local.get $4 i32.load offset=4 local.set $8 - local.get $7 + local.get $4 i32.load offset=12 - local.set $7 + local.set $4 loop $for-loop|0217 local.get $3 - local.get $7 + local.get $4 i32.lt_s if local.get $3 @@ -28026,7 +27990,7 @@ local.set $3 loop $for-loop|1218 local.get $3 - local.get $7 + local.get $4 i32.lt_s if local.get $3 @@ -28263,9 +28227,9 @@ i32.const 26 i32.const 0 call $~lib/rt/__newArray - local.tee $7 + local.tee $4 i32.store - local.get $7 + local.get $4 i32.load offset=4 local.set $8 loop $for-loop|033 @@ -28310,7 +28274,7 @@ i32.store local.get $9 if - local.get $7 + local.get $4 local.get $9 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link @@ -28327,9 +28291,9 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.store - local.get $7 + local.get $4 call $~lib/array/Array<~lib/array/Array>#flat local.tee $0 i32.store offset=144 @@ -28505,7 +28469,7 @@ end local.get $0 i32.load offset=4 - local.set $0 + local.set $4 loop $while-continue|0 local.get $2 local.get $3 @@ -28515,12 +28479,12 @@ local.get $2 i32.const 2 i32.shl - local.get $0 + local.get $4 i32.add i32.load - local.tee $4 + local.tee $0 i32.store - local.get $4 + local.get $0 local.get $1 call $~lib/string/String.__eq if @@ -28571,18 +28535,18 @@ i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 0 i32.store offset=4 - local.get $3 + local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $1 i32.const 0 i32.store offset=12 local.get $0 @@ -28608,36 +28572,36 @@ local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.store offset=4 - local.get $1 + local.get $3 i32.const 0 local.get $2 call $~lib/memory/memory.fill - local.get $3 local.get $1 + local.get $3 i32.store - local.get $1 + local.get $3 if - local.get $3 local.get $1 + local.get $3 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 local.get $1 - i32.store offset=4 local.get $3 + i32.store offset=4 + local.get $1 local.get $2 i32.store offset=8 - local.get $3 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 ) (func $std/array/Ref#constructor (param $0 i32) (result i32) (local $1 i32) @@ -28702,47 +28666,47 @@ local.get $1 i32.shl local.tee $4 - local.set $5 + local.set $1 local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.set $1 + local.set $5 local.get $3 if - local.get $1 - local.get $3 local.get $5 + local.get $3 + local.get $1 call $~lib/memory/memory.copy end - local.get $1 + local.get $5 i32.store i32.const 16 local.get $2 call $~lib/rt/itcms/__new - local.tee $2 - local.get $1 + local.tee $1 + local.get $5 i32.store - local.get $1 + local.get $5 if - local.get $2 local.get $1 + local.get $5 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 local.get $1 + local.get $5 i32.store offset=4 - local.get $2 + local.get $1 local.get $4 i32.store offset=8 - local.get $2 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 ) (func $std/array/internalCapacity (param $0 i32) (result i32) (local $1 i32) @@ -28806,7 +28770,7 @@ i32.store local.get $0 i32.load offset=12 - local.tee $4 + local.tee $3 local.get $1 i32.load offset=12 i32.const 0 @@ -28814,7 +28778,7 @@ select local.tee $2 i32.add - local.tee $3 + local.tee $4 i32.const 268435455 i32.gt_u if @@ -28826,25 +28790,25 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $4 i32.const 2 i32.const 3 i32.const 0 call $~lib/rt/__newArray - local.tee $5 + local.tee $4 i32.store - local.get $5 + local.get $4 i32.load offset=4 - local.tee $3 + local.tee $5 local.get $0 i32.load offset=4 - local.get $4 + local.get $3 i32.const 2 i32.shl local.tee $0 call $~lib/memory/memory.copy local.get $0 - local.get $3 + local.get $5 i32.add local.get $1 i32.load offset=4 @@ -28856,7 +28820,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $4 ) (func $~lib/array/Array#slice (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -29021,39 +28985,39 @@ i32.const 0 i32.gt_s select - local.tee $2 + local.tee $5 i32.const 2 i32.const 3 i32.const 0 call $~lib/rt/__newArray - local.tee $5 + local.tee $1 i32.store - local.get $5 + local.get $1 i32.load offset=4 local.get $0 i32.load offset=4 - local.tee $6 + local.tee $2 local.get $4 i32.const 2 i32.shl i32.add - local.tee $1 - local.get $2 + local.tee $6 + local.get $5 i32.const 2 i32.shl call $~lib/memory/memory.copy local.get $3 - local.get $2 local.get $4 + local.get $5 i32.add local.tee $4 i32.ne if - local.get $1 + local.get $6 local.get $4 i32.const 2 i32.shl - local.get $6 + local.get $2 i32.add local.get $3 local.get $4 @@ -29064,14 +29028,14 @@ end local.get $0 local.get $3 - local.get $2 + local.get $5 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $1 ) (func $~lib/array/Array#splice (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -29102,13 +29066,13 @@ i32.const 2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $4 local.get $1 i32.const 0 i32.lt_s if (result i32) local.get $1 - local.get $2 + local.get $4 i32.add local.tee $1 i32.const 0 @@ -29118,9 +29082,9 @@ select else local.get $1 - local.get $2 + local.get $4 local.get $1 - local.get $2 + local.get $4 i32.lt_s select end @@ -29137,41 +29101,41 @@ i32.const 0 i32.gt_s select - local.tee $6 + local.tee $3 i32.const 2 i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $1 + local.tee $6 i32.store - local.get $1 + local.get $6 i32.load offset=4 local.get $0 i32.load offset=4 - local.tee $3 + local.tee $1 local.get $5 i32.const 2 i32.shl i32.add - local.tee $4 - local.get $6 + local.tee $2 + local.get $3 i32.const 2 i32.shl call $~lib/memory/memory.copy - local.get $2 + local.get $4 + local.get $3 local.get $5 - local.get $6 i32.add local.tee $5 i32.ne if - local.get $4 + local.get $2 local.get $5 i32.const 2 i32.shl - local.get $3 + local.get $1 i32.add - local.get $2 + local.get $4 local.get $5 i32.sub i32.const 2 @@ -29179,15 +29143,15 @@ call $~lib/memory/memory.copy end local.get $0 - local.get $2 - local.get $6 + local.get $4 + local.get $3 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $6 ) (func $~lib/array/Array#__get (param $0 i32) (param $1 i32) (result i32) global.get $~lib/memory/__stack_pointer @@ -29323,24 +29287,24 @@ local.get $3 local.get $0 i32.load offset=12 - local.tee $3 + local.tee $5 i32.const 2 i32.const 3 i32.const 0 call $~lib/rt/__newArray - local.tee $4 + local.tee $3 i32.store - local.get $4 + local.get $3 i32.load offset=4 - local.set $5 + local.set $3 loop $for-loop|0 - local.get $3 + local.get $5 local.get $0 i32.load offset=12 local.tee $4 - local.get $3 local.get $4 - i32.lt_s + local.get $5 + i32.gt_s select local.get $2 i32.gt_s @@ -29348,18 +29312,18 @@ local.get $2 i32.const 2 i32.shl - local.tee $6 + local.tee $4 local.get $0 i32.load offset=4 i32.add i32.load - local.set $4 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $5 - local.get $6 - i32.add + local.get $3 local.get $4 + i32.add + local.get $6 local.get $2 local.get $0 local.get $1 @@ -29408,17 +29372,17 @@ i32.const 3 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $4 i32.store local.get $0 i32.load offset=12 - local.set $4 + local.set $3 loop $for-loop|0 - local.get $4 + local.get $3 local.get $0 i32.load offset=12 local.tee $5 - local.get $4 + local.get $3 local.get $5 i32.lt_s select @@ -29442,7 +29406,7 @@ i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $3 + local.get $4 local.get $5 call $~lib/array/Array#push drop @@ -29458,7 +29422,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $4 ) (func $std/array/Dim#constructor (result i32) (local $0 i32) @@ -29824,7 +29788,7 @@ local.tee $2 local.get $2 i32.const 0 - i32.gt_s + i32.gt_u select local.tee $3 local.get $1 @@ -29839,26 +29803,26 @@ local.get $2 i32.lt_s select - local.tee $4 + local.tee $1 + local.get $1 local.get $3 - local.get $4 - i32.lt_s + i32.gt_s select i32.const 1 i32.shl - local.set $1 + local.set $4 local.get $3 - local.get $4 + local.get $1 + local.get $1 local.get $3 - local.get $4 - i32.gt_s + i32.lt_s select i32.const 1 i32.shl - local.tee $3 - local.get $1 + local.tee $1 + local.get $4 i32.sub - local.tee $4 + local.tee $3 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -29872,9 +29836,9 @@ local.get $2 i32.const 1 i32.shl - local.get $3 - i32.eq local.get $1 + i32.eq + local.get $4 select if global.get $~lib/memory/__stack_pointer @@ -29885,22 +29849,22 @@ return end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 - local.get $0 local.get $1 - i32.add + local.get $0 local.get $4 + i32.add + local.get $3 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 ) (func $~lib/util/number/itoa32 (param $0 i32) (result i32) (local $1 i32) @@ -29942,9 +29906,9 @@ local.get $0 i32.const 31 i32.shr_u - local.tee $0 - select local.tee $2 + select + local.tee $0 local.tee $1 i32.const 100000 i32.lt_u @@ -29991,22 +29955,22 @@ i32.add end end - local.get $0 + local.get $2 i32.add - local.tee $1 + local.tee $3 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store - local.get $3 - local.get $2 local.get $1 - call $~lib/util/number/utoa32_dec_lut local.get $0 + local.get $3 + call $~lib/util/number/utoa32_dec_lut + local.get $2 if - local.get $3 + local.get $1 i32.const 45 i32.store16 end @@ -30014,7 +29978,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 ) (func $~lib/util/number/utoa32 (param $0 i32) (result i32) (local $1 i32) @@ -30049,47 +30013,46 @@ end global.get $~lib/memory/__stack_pointer local.get $0 - local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $0 i32.const 100000000 i32.ge_u i32.add @@ -30139,19 +30102,19 @@ i64.store local.get $0 i32.load offset=4 - local.set $6 + local.set $4 local.get $0 i32.load offset=12 local.set $5 loop $for-loop|0 - local.get $4 + local.get $2 local.get $5 i32.lt_s if - local.get $4 + local.get $2 i32.const 2 i32.shl - local.get $6 + local.get $4 i32.add i32.load local.tee $0 @@ -30164,10 +30127,10 @@ local.get $3 i32.add local.set $3 - local.get $4 + local.get $2 i32.const 1 i32.add - local.set $4 + local.set $2 br $for-loop|0 end end @@ -30175,56 +30138,53 @@ local.get $3 i32.const 2 i32.shl - local.tee $4 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer i32.const 16 i32.const 3 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 i32.store offset=4 - local.get $2 + local.get $0 local.get $3 i32.store offset=12 + local.get $0 local.get $2 - local.get $4 i32.store offset=8 - local.get $2 local.get $0 + local.get $6 i32.store offset=4 - local.get $2 local.get $0 + local.get $6 i32.store - local.get $2 - local.set $3 - local.get $0 - local.tee $4 + local.get $6 if - local.get $3 - local.get $4 + local.get $0 + local.get $6 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end i32.const 0 - local.set $4 + local.set $2 loop $for-loop|1 - local.get $4 + local.get $2 local.get $5 i32.lt_s if - local.get $4 + local.get $2 i32.const 2 i32.shl - local.get $6 + local.get $4 i32.add i32.load local.tee $3 if - local.get $0 local.get $1 + local.get $6 i32.add local.get $3 i32.load offset=4 @@ -30239,10 +30199,10 @@ i32.add local.set $1 end - local.get $4 + local.get $2 i32.const 1 i32.add - local.set $4 + local.set $2 br $for-loop|1 end end @@ -30250,7 +30210,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 ) (func $export:~lib/array/Array#get:dataStart (param $0 i32) (result i32) (local $1 i32) @@ -30329,8 +30289,8 @@ i32.store end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -30383,29 +30343,29 @@ select i32.const 2 i32.shl - local.tee $2 + local.tee $4 i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $3 i32.store offset=4 - local.get $4 + local.get $3 i32.const 0 - local.get $2 + local.get $4 call $~lib/memory/memory.fill local.get $0 - local.get $4 + local.get $3 i32.store - local.get $4 + local.get $3 if local.get $0 - local.get $4 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link_0 end local.get $0 - local.get $4 + local.get $3 i32.store offset=4 local.get $0 - local.get $2 + local.get $4 i32.store offset=8 local.get $0 local.get $1 @@ -30514,15 +30474,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 local.get $0 i32.store - local.get $2 + local.get $3 local.get $1 i32.store offset=4 block $__inlined_func$~lib/array/Array#every (result i32) - i32.const 0 - local.set $2 local.get $0 i32.load offset=12 local.set $3 @@ -30592,15 +30550,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 local.get $0 i32.store - local.get $2 + local.get $3 local.get $1 i32.store offset=4 block $__inlined_func$~lib/array/Array#findIndex (result i32) - i32.const 0 - local.set $2 local.get $0 i32.load offset=12 local.set $3 @@ -31372,13 +31328,13 @@ local.get $1 i32.const 1 i32.sub - local.tee $2 + local.tee $1 i32.const 2 i32.shl i32.add i32.load local.get $0 - local.get $2 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -31405,14 +31361,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 local.get $0 i32.store - local.get $2 + local.get $3 local.get $1 i32.store offset=4 - i32.const 0 - local.set $2 local.get $0 i32.load offset=12 local.set $3 @@ -31493,17 +31447,17 @@ i32.const 7 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $4 i32.store local.get $0 i32.load offset=12 - local.set $4 + local.set $3 loop $for-loop|0 - local.get $4 + local.get $3 local.get $0 i32.load offset=12 local.tee $5 - local.get $4 + local.get $3 local.get $5 i32.lt_s select @@ -31527,7 +31481,7 @@ i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $3 + local.get $4 local.get $5 call $~lib/array/Array#push drop @@ -31547,7 +31501,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $4 return end i32.const 32064 @@ -31604,18 +31558,18 @@ local.get $3 i32.const 1 i32.sub - local.tee $4 + local.tee $3 i32.const 2 i32.shl - local.tee $3 + local.tee $4 call $~lib/memory/memory.copy local.get $2 - local.get $3 + local.get $4 i32.add i32.const 0 i32.store local.get $0 - local.get $4 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -31642,15 +31596,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 local.get $0 i32.store - local.get $2 + local.get $3 local.get $1 i32.store offset=4 block $__inlined_func$~lib/array/Array#some (result i32) - i32.const 0 - local.set $2 local.get $0 i32.load offset=12 local.set $3 @@ -31939,7 +31891,7 @@ i32.const 0 i32.gt_s select - local.tee $2 + local.tee $1 i32.const 2 i32.const 7 i32.const 0 @@ -31950,28 +31902,28 @@ i32.load offset=4 local.get $0 i32.load offset=4 - local.tee $6 + local.tee $2 local.get $4 i32.const 2 i32.shl i32.add - local.tee $1 - local.get $2 + local.tee $6 + local.get $1 i32.const 2 i32.shl call $~lib/memory/memory.copy local.get $3 - local.get $2 + local.get $1 local.get $4 i32.add local.tee $4 i32.ne if - local.get $1 + local.get $6 local.get $4 i32.const 2 i32.shl - local.get $6 + local.get $2 i32.add local.get $3 local.get $4 @@ -31982,7 +31934,7 @@ end local.get $0 local.get $3 - local.get $2 + local.get $1 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -32044,7 +31996,7 @@ local.get $4 i32.const 1 i32.sub - local.set $4 + local.set $5 loop $while-continue|0 local.get $1 local.get $3 @@ -32057,9 +32009,9 @@ i32.add local.tee $6 i32.load - local.set $5 + local.set $4 local.get $6 - local.get $4 + local.get $5 local.get $1 i32.sub i32.const 2 @@ -32070,7 +32022,7 @@ i32.load i32.store local.get $6 - local.get $5 + local.get $4 i32.store local.get $1 i32.const 1 @@ -32282,8 +32234,8 @@ i32.store end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -32334,29 +32286,29 @@ i32.const 8 i32.gt_u select - local.tee $2 + local.tee $4 i32.const 0 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $3 i32.store offset=4 - local.get $4 + local.get $3 i32.const 0 - local.get $2 + local.get $4 call $~lib/memory/memory.fill local.get $0 - local.get $4 + local.get $3 i32.store - local.get $4 + local.get $3 if local.get $0 - local.get $4 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link_0 end local.get $0 - local.get $4 + local.get $3 i32.store offset=4 local.get $0 - local.get $2 + local.get $4 i32.store offset=8 local.get $0 local.get $1 @@ -32437,15 +32389,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 local.get $0 i32.store - local.get $2 + local.get $3 local.get $1 i32.store offset=4 block $__inlined_func$~lib/array/Array#every (result i32) - i32.const 0 - local.set $2 local.get $0 i32.load offset=12 local.set $3 @@ -32513,15 +32463,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 local.get $0 i32.store - local.get $2 + local.get $3 local.get $1 i32.store offset=4 block $__inlined_func$~lib/array/Array#findIndex (result i32) - i32.const 0 - local.set $2 local.get $0 i32.load offset=12 local.set $3 @@ -33174,10 +33122,10 @@ local.get $4 i32.lt_s select - local.set $3 + local.set $5 local.get $0 i32.load offset=4 - local.tee $5 + local.tee $3 local.get $1 i32.const 0 i32.lt_s @@ -33223,14 +33171,14 @@ select end local.tee $2 - local.get $5 - i32.add local.get $3 + i32.add + local.get $5 i32.const 0 i32.lt_s if (result i32) - local.get $3 local.get $4 + local.get $5 i32.add local.tee $3 i32.const 0 @@ -33239,11 +33187,11 @@ i32.gt_s select else - local.get $3 + local.get $5 local.get $4 - local.get $3 local.get $4 - i32.lt_s + local.get $5 + i32.gt_s select end local.get $2 @@ -33301,13 +33249,13 @@ local.get $1 i32.const 1 i32.sub - local.tee $2 + local.tee $1 local.get $0 i32.load offset=4 i32.add i32.load8_u local.get $0 - local.get $2 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -33334,14 +33282,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 local.get $0 i32.store - local.get $2 + local.get $3 local.get $1 i32.store offset=4 - i32.const 0 - local.set $2 local.get $0 i32.load offset=12 local.set $3 @@ -33420,17 +33366,17 @@ i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $4 i32.store local.get $0 i32.load offset=12 - local.set $4 + local.set $3 loop $for-loop|0 - local.get $4 + local.get $3 local.get $0 i32.load offset=12 local.tee $5 - local.get $4 + local.get $3 local.get $5 i32.lt_s select @@ -33452,7 +33398,7 @@ i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $3 + local.get $4 local.get $5 call $~lib/array/Array#push drop @@ -33472,7 +33418,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $4 return end i32.const 32064 @@ -33563,15 +33509,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $3 local.get $0 i32.store - local.get $2 + local.get $3 local.get $1 i32.store offset=4 block $__inlined_func$~lib/array/Array#some (result i32) - i32.const 0 - local.set $2 local.get $0 i32.load offset=12 local.set $3 @@ -33879,7 +33823,7 @@ i32.const 0 i32.gt_s select - local.tee $2 + local.tee $1 i32.const 0 i32.const 6 i32.const 0 @@ -33891,21 +33835,21 @@ local.get $4 local.get $0 i32.load offset=4 - local.tee $6 + local.tee $2 i32.add - local.tee $1 - local.get $2 + local.tee $6 + local.get $1 call $~lib/memory/memory.copy local.get $3 - local.get $2 + local.get $1 local.get $4 i32.add local.tee $4 i32.ne if - local.get $1 - local.get $4 local.get $6 + local.get $2 + local.get $4 i32.add local.get $3 local.get $4 @@ -33914,7 +33858,7 @@ end local.get $0 local.get $3 - local.get $2 + local.get $1 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -34611,16 +34555,16 @@ end local.get $0 i32.load offset=4 - local.set $4 + local.set $5 local.get $0 i32.load offset=12 - local.set $5 + local.set $4 local.get $2 i32.const 0 i32.lt_s if (result i32) local.get $2 - local.get $5 + local.get $4 i32.add local.tee $2 i32.const 0 @@ -34630,9 +34574,9 @@ select else local.get $2 - local.get $5 + local.get $4 local.get $2 - local.get $5 + local.get $4 i32.lt_s select end @@ -34642,7 +34586,7 @@ i32.lt_s if (result i32) local.get $3 - local.get $5 + local.get $4 i32.add local.tee $3 i32.const 0 @@ -34652,9 +34596,9 @@ select else local.get $3 - local.get $5 + local.get $4 local.get $3 - local.get $5 + local.get $4 i32.lt_s select end @@ -34667,7 +34611,7 @@ local.get $2 i32.const 2 i32.shl - local.get $4 + local.get $5 i32.add local.get $1 i32.store @@ -34950,6 +34894,7 @@ (local $5 i32) (local $6 i32) (local $7 i32) + (local $8 i32) block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 8 @@ -34960,13 +34905,13 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $4 local.get $0 i32.store - local.get $3 + local.get $4 local.get $1 i32.store offset=4 - local.get $3 + local.get $4 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -34979,15 +34924,15 @@ i32.store local.get $0 i32.load offset=12 - local.tee $4 + local.tee $5 local.get $1 i32.load offset=12 i32.const 0 local.get $1 select - local.tee $3 + local.tee $6 i32.add - local.tee $5 + local.tee $4 i32.const 268435455 i32.gt_u if @@ -34999,89 +34944,87 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 2 i32.const 33 i32.const 0 call $~lib/rt/__newArray - local.tee $5 + local.tee $7 i32.store - local.get $5 + local.get $7 i32.load offset=4 - local.set $6 - local.get $4 + local.set $4 + local.get $5 i32.const 2 i32.shl - local.set $4 + local.set $5 local.get $0 i32.load offset=4 - local.set $7 + local.set $0 loop $for-loop|0 - local.get $2 - local.get $4 + local.get $3 + local.get $5 i32.lt_u if - local.get $2 - local.get $6 + local.get $3 + local.get $4 i32.add - local.get $2 - local.get $7 + local.get $0 + local.get $3 i32.add i32.load - local.tee $0 + local.tee $8 i32.store - local.get $0 + local.get $8 if - local.get $5 - local.get $0 + local.get $7 + local.get $8 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 + local.get $3 i32.const 4 i32.add - local.set $2 + local.set $3 br $for-loop|0 end end local.get $4 - local.get $6 + local.get $5 i32.add - local.set $2 + local.set $0 local.get $1 i32.load offset=4 - local.set $4 - local.get $3 + local.set $1 + local.get $6 i32.const 2 i32.shl local.set $3 - i32.const 0 - local.set $1 loop $for-loop|1 - local.get $1 + local.get $2 local.get $3 i32.lt_u if - local.get $1 + local.get $0 local.get $2 i32.add local.get $1 - local.get $4 + local.get $2 i32.add i32.load - local.tee $0 + local.tee $4 i32.store - local.get $0 + local.get $4 if - local.get $5 - local.get $0 + local.get $7 + local.get $4 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $2 i32.const 4 i32.add - local.set $1 + local.set $2 br $for-loop|1 end end @@ -35093,7 +35036,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $7 return end i32.const 32064 @@ -35133,7 +35076,7 @@ i32.store local.get $0 i32.load offset=12 - local.tee $1 + local.tee $2 i32.const 1 i32.lt_s if @@ -35145,23 +35088,23 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 local.get $0 i32.load offset=4 - local.get $1 + local.get $2 i32.const 1 i32.sub - local.tee $3 + local.tee $2 i32.const 2 i32.shl i32.add i32.load - local.tee $1 + local.tee $3 i32.store local.get $0 - local.get $3 - i32.store offset=12 local.get $2 + i32.store offset=12 + local.get $1 i32.const 4 i32.add global.set $~lib/memory/__stack_pointer @@ -35169,7 +35112,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $3 return end i32.const 32064 @@ -35417,29 +35360,29 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.load offset=4 - local.tee $3 - i32.load local.tee $1 + i32.load + local.tee $3 i32.store - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.const 4 i32.add local.get $2 i32.const 1 i32.sub - local.tee $4 + local.tee $2 i32.const 2 i32.shl - local.tee $2 + local.tee $4 call $~lib/memory/memory.copy - local.get $2 - local.get $3 + local.get $1 + local.get $4 i32.add i32.const 0 i32.store local.get $0 - local.get $4 + local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -35449,7 +35392,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $3 return end i32.const 32064 @@ -35588,23 +35531,23 @@ i32.load offset=12 i32.const 1 i32.add - local.tee $2 + local.tee $3 i32.const 2 i32.const 1 call $~lib/array/ensureCapacity local.get $0 i32.load offset=4 - local.tee $3 + local.tee $2 i32.const 4 i32.add - local.get $3 local.get $2 + local.get $3 i32.const 1 i32.sub i32.const 2 i32.shl call $~lib/memory/memory.copy - local.get $3 + local.get $2 local.get $1 i32.store local.get $1 @@ -35615,13 +35558,13 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $2 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 ) (func $export:~lib/array/Array<~lib/string/String>#slice@varargs (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -35689,7 +35632,7 @@ i32.lt_s select end - local.set $5 + local.set $1 global.get $~lib/memory/__stack_pointer local.get $2 i32.const 0 @@ -35698,9 +35641,9 @@ local.get $2 local.get $4 i32.add - local.tee $1 + local.tee $2 i32.const 0 - local.get $1 + local.get $2 i32.const 0 i32.gt_s select @@ -35712,11 +35655,11 @@ i32.lt_s select end - local.get $5 + local.get $1 i32.sub - local.tee $1 + local.tee $2 i32.const 0 - local.get $1 + local.get $2 i32.const 0 i32.gt_s select @@ -35729,10 +35672,10 @@ i32.store local.get $4 i32.load offset=4 - local.set $1 + local.set $5 local.get $0 i32.load offset=4 - local.get $5 + local.get $1 i32.const 2 i32.shl i32.add @@ -35740,25 +35683,25 @@ local.get $2 i32.const 2 i32.shl - local.set $2 + local.set $1 loop $while-continue|0 - local.get $2 + local.get $1 local.get $3 i32.gt_u if - local.get $1 local.get $3 + local.get $5 i32.add local.get $0 local.get $3 i32.add i32.load - local.tee $5 + local.tee $2 i32.store - local.get $5 + local.get $2 if local.get $4 - local.get $5 + local.get $2 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -35868,7 +35811,7 @@ i32.const 0 i32.gt_s select - local.tee $2 + local.tee $1 i32.const 2 i32.const 33 i32.const 0 @@ -35879,28 +35822,28 @@ i32.load offset=4 local.get $0 i32.load offset=4 - local.tee $6 + local.tee $2 local.get $4 i32.const 2 i32.shl i32.add - local.tee $1 - local.get $2 + local.tee $6 + local.get $1 i32.const 2 i32.shl call $~lib/memory/memory.copy local.get $3 - local.get $2 + local.get $1 local.get $4 i32.add local.tee $4 i32.ne if - local.get $1 + local.get $6 local.get $4 i32.const 2 i32.shl - local.get $6 + local.get $2 i32.add local.get $3 local.get $4 @@ -35911,7 +35854,7 @@ end local.get $0 local.get $3 - local.get $2 + local.get $1 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -35976,14 +35919,14 @@ local.get $4 i32.const 1 i32.shr_u - local.set $3 + local.set $5 local.get $4 i32.const 1 i32.sub local.set $4 loop $while-continue|0 local.get $1 - local.get $3 + local.get $5 i32.lt_u if global.get $~lib/memory/__stack_pointer @@ -35992,11 +35935,11 @@ i32.shl local.get $2 i32.add - local.tee $5 - i32.load local.tee $6 + i32.load + local.tee $3 i32.store - local.get $5 + local.get $6 local.get $4 local.get $1 i32.sub @@ -36004,11 +35947,11 @@ i32.shl local.get $2 i32.add - local.tee $5 + local.tee $6 i32.load i32.store - local.get $5 local.get $6 + local.get $3 i32.store local.get $1 i32.const 1 @@ -36236,16 +36179,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $0 i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $0 local.get $1 local.get $2 select @@ -36254,7 +36197,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $3 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/arraybuffer.optimized.wat b/tests/compiler/std/arraybuffer.optimized.wat index 31872fb3bc..a0a95b5f53 100644 --- a/tests/compiler/std/arraybuffer.optimized.wat +++ b/tests/compiler/std/arraybuffer.optimized.wat @@ -116,18 +116,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 18228 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -141,9 +140,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -153,15 +152,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -202,20 +201,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -647,9 +646,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -696,6 +692,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1449,18 +1448,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $3 + local.get $0 + i32.const 16 + i32.add local.tee $4 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1471,13 +1469,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $4 i32.const 19 i32.add i32.const -16 @@ -1485,32 +1483,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1526,16 +1524,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1543,7 +1541,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1551,8 +1549,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1569,7 +1567,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -1579,13 +1577,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1598,40 +1596,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -2157,95 +2155,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -2276,39 +2274,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 diff --git a/tests/compiler/std/dataview.optimized.wat b/tests/compiler/std/dataview.optimized.wat index d78abf3e74..fcf1c02e60 100644 --- a/tests/compiler/std/dataview.optimized.wat +++ b/tests/compiler/std/dataview.optimized.wat @@ -122,18 +122,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 18172 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -147,9 +146,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -159,15 +158,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -208,20 +207,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -653,9 +652,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -702,6 +698,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1455,18 +1454,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $3 + local.get $0 + i32.const 16 + i32.add local.tee $4 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1477,13 +1475,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $4 i32.const 19 i32.add i32.const -16 @@ -1491,32 +1489,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1532,16 +1530,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1549,7 +1547,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1557,8 +1555,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1575,7 +1573,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -1585,13 +1583,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1604,40 +1602,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -2474,10 +2472,10 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $5 i64.const 0 i64.store - local.get $1 + local.get $5 i32.const 0 i32.store offset=8 memory.size @@ -2512,7 +2510,7 @@ i32.store i32.const 1456 global.set $~lib/rt/itcms/fromSpace - local.get $1 + local.get $5 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -2565,15 +2563,15 @@ i32.const 8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $4 i32.store offset=4 - local.get $5 + local.get $4 i32.const 8 call $~lib/memory/memory.fill local.get $0 - local.get $5 + local.get $4 i32.store - local.get $5 + local.get $4 if local.get $0 i32.eqz @@ -2586,10 +2584,10 @@ unreachable end global.get $~lib/rt/itcms/white - local.get $5 + local.get $4 i32.const 20 i32.sub - local.tee $2 + local.tee $1 i32.load offset=4 i32.const 3 i32.and @@ -2601,30 +2599,30 @@ i32.load offset=4 i32.const 3 i32.and - local.tee $4 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $2 + local.get $1 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $4 + local.get $3 i32.const 3 i32.eq i32.and if - local.get $2 + local.get $1 call $~lib/rt/itcms/Object#makeGray end end end end local.get $0 - local.get $5 + local.get $4 i32.store offset=4 local.get $0 i32.const 8 @@ -2639,7 +2637,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $5 local.get $0 i32.store local.get $0 @@ -4307,15 +4305,15 @@ i32.const 12 i32.const 4 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $4 i32.store - local.get $5 + local.get $4 i32.const 0 i32.store - local.get $5 + local.get $4 i32.const 0 i32.store offset=4 - local.get $5 + local.get $4 i32.const 0 i32.store offset=8 local.get $0 @@ -4338,12 +4336,12 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $4 local.get $0 i32.store local.get $0 if - local.get $5 + local.get $4 i32.eqz if i32.const 0 @@ -4357,53 +4355,53 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $5 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $5 + local.get $4 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $4 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $5 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $4 + local.get $3 i32.const 3 i32.eq i32.and if - local.get $3 + local.get $5 call $~lib/rt/itcms/Object#makeGray end end end end - local.get $5 + local.get $4 local.get $0 local.get $1 i32.add i32.store offset=4 - local.get $5 + local.get $4 local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $4 ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) global.get $~lib/rt/itcms/white diff --git a/tests/compiler/std/date.optimized.wat b/tests/compiler/std/date.optimized.wat index b628baba95..3d38d474ef 100644 --- a/tests/compiler/std/date.optimized.wat +++ b/tests/compiler/std/date.optimized.wat @@ -317,61 +317,61 @@ local.get $0 i32.const 719468 i32.add - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.const 146096 i32.sub - local.get $0 + local.get $1 i32.const 0 i32.ge_s select i32.const 146097 i32.div_s - local.set $1 - local.get $0 + local.set $0 local.get $1 + local.get $0 i32.const 146097 i32.mul i32.sub - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.const 1460 i32.div_u i32.sub - local.get $2 + local.get $1 i32.const 36524 i32.div_u i32.add - local.get $2 + local.get $1 i32.const 146096 i32.div_u i32.sub i32.const 365 i32.div_u - local.set $0 + local.set $2 + local.get $1 local.get $2 - local.get $0 i32.const 365 i32.mul - local.get $0 + local.get $2 i32.const 2 i32.shr_u i32.add - local.get $0 + local.get $2 i32.const 100 i32.div_u i32.sub i32.sub - local.tee $2 + local.tee $3 i32.const 5 i32.mul i32.const 2 i32.add i32.const 153 i32.div_s - local.set $3 - local.get $2 + local.set $1 local.get $3 + local.get $1 i32.const 153 i32.mul i32.const 2 @@ -384,20 +384,20 @@ global.set $~lib/date/_day i32.const 3 i32.const -9 - local.get $3 + local.get $1 i32.const 10 i32.lt_s select - local.get $3 + local.get $1 i32.add - local.tee $2 + local.tee $1 global.set $~lib/date/_month - local.get $1 + local.get $0 i32.const 400 i32.mul - local.get $0 - i32.add local.get $2 + i32.add + local.get $1 i32.const 2 i32.le_s i32.add @@ -482,18 +482,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 23948 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -507,9 +506,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -519,15 +518,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -568,20 +567,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -1013,9 +1012,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -1062,6 +1058,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1815,18 +1814,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $3 + local.get $0 + i32.const 16 + i32.add local.tee $4 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1837,13 +1835,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $4 i32.const 19 i32.add i32.const -16 @@ -1851,32 +1849,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1892,16 +1890,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1909,7 +1907,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1917,8 +1915,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1935,7 +1933,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -1945,13 +1943,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1964,40 +1962,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -2211,8 +2209,8 @@ call $~lib/date/Date#setTime ) (func $~lib/date/Date#setUTCDate (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i64) + (local $2 i64) + (local $3 i32) (local $4 i32) local.get $1 local.get $0 @@ -2228,39 +2226,39 @@ i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $3 + local.tee $2 i64.const 0 i64.lt_s select - local.get $3 + local.get $2 i64.add local.get $0 i32.load local.get $0 i32.load offset=4 - local.tee $0 + local.tee $4 i32.const 2 i32.le_s i32.sub - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 399 i32.sub - local.get $4 + local.get $3 i32.const 0 i32.ge_s select i32.const 400 i32.div_s - local.set $2 + local.set $0 local.get $1 i32.const -3 i32.const 9 - local.get $0 + local.get $4 i32.const 2 i32.gt_s select - local.get $0 + local.get $4 i32.add i32.const 153 i32.mul @@ -2269,24 +2267,24 @@ i32.const 5 i32.div_u i32.add - local.get $4 - local.get $2 + local.get $3 + local.get $0 i32.const 400 i32.mul i32.sub - local.tee $0 + local.tee $1 i32.const 365 i32.mul - local.get $0 + local.get $1 i32.const 2 i32.shr_u i32.add - local.get $0 + local.get $1 i32.const 100 i32.div_u i32.sub i32.add - local.get $2 + local.get $0 i32.const 146097 i32.mul i32.add @@ -2299,8 +2297,8 @@ call $~lib/date/Date#setTime ) (func $~lib/date/Date#setUTCMonth (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i64) + (local $2 i64) + (local $3 i32) (local $4 i32) local.get $1 local.get $0 @@ -2315,42 +2313,42 @@ local.get $1 i32.const 1 i32.add - local.tee $1 + local.tee $4 i32.const 2 i32.le_s i32.sub - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 399 i32.sub - local.get $4 + local.get $3 i32.const 0 i32.ge_s select i32.const 400 i32.div_s - local.set $2 + local.set $1 i64.const 86400000 i64.const 0 local.get $0 i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $3 + local.tee $2 i64.const 0 i64.lt_s select - local.get $3 + local.get $2 i64.add local.get $0 i32.load offset=8 i32.const -3 i32.const 9 - local.get $1 + local.get $4 i32.const 2 i32.gt_s select - local.get $1 + local.get $4 i32.add i32.const 153 i32.mul @@ -2359,8 +2357,8 @@ i32.const 5 i32.div_u i32.add - local.get $4 - local.get $2 + local.get $3 + local.get $1 i32.const 400 i32.mul i32.sub @@ -2376,7 +2374,7 @@ i32.div_u i32.sub i32.add - local.get $2 + local.get $1 i32.const 146097 i32.mul i32.add @@ -2389,8 +2387,8 @@ call $~lib/date/Date#setTime ) (func $~lib/date/Date#setUTCFullYear (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i64) + (local $2 i64) + (local $3 i32) (local $4 i32) local.get $1 local.get $0 @@ -2403,42 +2401,42 @@ local.get $1 local.get $0 i32.load offset=4 - local.tee $1 + local.tee $4 i32.const 2 i32.le_s i32.sub - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 399 i32.sub - local.get $4 + local.get $3 i32.const 0 i32.ge_s select i32.const 400 i32.div_s - local.set $2 + local.set $1 i64.const 86400000 i64.const 0 local.get $0 i64.load offset=16 i64.const 86400000 i64.rem_s - local.tee $3 + local.tee $2 i64.const 0 i64.lt_s select - local.get $3 + local.get $2 i64.add local.get $0 i32.load offset=8 i32.const -3 i32.const 9 - local.get $1 + local.get $4 i32.const 2 i32.gt_s select - local.get $1 + local.get $4 i32.add i32.const 153 i32.mul @@ -2447,8 +2445,8 @@ i32.const 5 i32.div_u i32.add - local.get $4 - local.get $2 + local.get $3 + local.get $1 i32.const 400 i32.mul i32.sub @@ -2464,7 +2462,7 @@ i32.div_u i32.sub i32.add - local.get $2 + local.get $1 i32.const 146097 i32.mul i32.add @@ -2518,7 +2516,7 @@ local.get $0 i32.const 31 i32.shr_u - local.tee $3 + local.tee $2 select local.tee $0 local.tee $1 @@ -2567,14 +2565,14 @@ i32.add end end - local.get $3 + local.get $2 i32.add - local.tee $2 + local.tee $1 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $4 i32.store loop $while-continue|0 local.get $0 @@ -2584,20 +2582,20 @@ local.get $0 i32.const 10000 i32.rem_u - local.set $4 + local.set $3 local.get $0 i32.const 10000 i32.div_u local.set $0 - local.get $2 + local.get $1 i32.const 4 i32.sub - local.tee $2 + local.tee $1 i32.const 1 i32.shl - local.get $1 - i32.add local.get $4 + i32.add + local.get $3 i32.const 100 i32.div_u i32.const 2 @@ -2605,7 +2603,7 @@ i32.const 1884 i32.add i64.load32_u - local.get $4 + local.get $3 i32.const 100 i32.rem_u i32.const 2 @@ -2624,13 +2622,13 @@ i32.const 100 i32.ge_u if - local.get $2 + local.get $1 i32.const 2 i32.sub - local.tee $2 + local.tee $1 i32.const 1 i32.shl - local.get $1 + local.get $4 i32.add local.get $0 i32.const 100 @@ -2650,12 +2648,12 @@ i32.const 10 i32.ge_u if - local.get $2 + local.get $1 i32.const 2 i32.sub i32.const 1 i32.shl - local.get $1 + local.get $4 i32.add local.get $0 i32.const 2 @@ -2665,21 +2663,21 @@ i32.load i32.store else - local.get $2 + local.get $1 i32.const 1 i32.sub i32.const 1 i32.shl - local.get $1 + local.get $4 i32.add local.get $0 i32.const 48 i32.add i32.store16 end - local.get $3 + local.get $2 if - local.get $1 + local.get $4 i32.const 45 i32.store16 end @@ -2687,7 +2685,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $4 end ) (func $~lib/util/memory/memcpy (param $0 i32) (param $1 i32) (param $2 i32) @@ -3151,95 +3149,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -3270,39 +3268,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 @@ -3694,14 +3692,14 @@ if local.get $1 i32.load16_u - local.tee $4 + local.tee $0 local.get $2 i32.load16_u - local.tee $0 + local.tee $4 i32.ne if - local.get $4 local.get $0 + local.get $4 i32.sub return end @@ -3843,19 +3841,19 @@ local.get $0 local.tee $2 i32.load offset=12 - local.tee $4 + local.tee $3 i32.const 1 i32.add + local.tee $4 local.tee $5 - local.tee $3 local.get $2 i32.load offset=8 - local.tee $8 + local.tee $6 i32.const 2 i32.shr_u i32.gt_u if - local.get $3 + local.get $5 i32.const 268435455 i32.gt_u if @@ -3867,38 +3865,38 @@ unreachable end block $__inlined_func$~lib/rt/itcms/__renew (result i32) - local.get $8 + local.get $6 i32.const 1 i32.shl - local.tee $6 + local.tee $7 i32.const 1073741820 - local.get $6 + local.get $7 i32.const 1073741820 i32.lt_u select - local.tee $6 - local.get $3 + local.tee $7 + local.get $5 i32.const 8 - local.get $3 + local.get $5 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $3 - local.get $3 - local.get $6 + local.tee $5 + local.get $5 + local.get $7 i32.lt_u select - local.tee $9 - local.tee $10 + local.tee $7 + local.tee $8 local.get $2 i32.load - local.tee $6 - local.tee $3 + local.tee $10 + local.tee $11 i32.const 20 i32.sub - local.tee $11 + local.tee $9 i32.load i32.const -4 i32.and @@ -3906,61 +3904,61 @@ i32.sub i32.le_u if - local.get $11 - local.get $10 + local.get $9 + local.get $8 i32.store offset=16 - local.get $3 + local.get $11 br $__inlined_func$~lib/rt/itcms/__renew end - local.get $10 - local.get $11 + local.get $8 + local.get $9 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $7 - local.get $3 - local.get $10 + local.tee $5 local.get $11 + local.get $8 + local.get $9 i32.load offset=16 - local.tee $3 - local.get $3 - local.get $10 - i32.gt_u + local.tee $9 + local.get $8 + local.get $9 + i32.lt_u select call $~lib/memory/memory.copy - local.get $7 + local.get $5 end - local.tee $3 - local.get $8 + local.tee $5 + local.get $6 i32.add - local.get $9 - local.get $8 + local.get $7 + local.get $6 i32.sub call $~lib/memory/memory.fill - local.get $3 - local.get $6 + local.get $5 + local.get $10 i32.ne if local.get $2 - local.get $3 + local.get $5 i32.store local.get $2 - local.get $3 + local.get $5 i32.store offset=4 - local.get $3 + local.get $5 if local.get $2 - local.get $3 + local.get $5 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end end local.get $2 - local.get $9 + local.get $7 i32.store offset=8 end local.get $0 i32.load offset=4 - local.get $4 + local.get $3 i32.const 2 i32.shl i32.add @@ -3974,7 +3972,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $2 - local.get $5 + local.get $4 i32.store offset=12 ) (func $~lib/util/string/strtol (param $0 i32) (result i32) @@ -3989,7 +3987,7 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -3997,28 +3995,27 @@ end local.get $0 i32.load16_u - local.set $1 + local.set $2 loop $while-continue|0 block $__inlined_func$~lib/util/string/isSpace (result i32) - local.get $1 - local.tee $3 + local.get $2 i32.const 128 i32.or i32.const 160 i32.eq - local.get $3 + local.get $2 i32.const 9 i32.sub i32.const 4 i32.le_u i32.or - local.get $3 + local.get $2 i32.const 5760 i32.lt_u br_if $__inlined_func$~lib/util/string/isSpace drop i32.const 1 - local.get $3 + local.get $2 i32.const -8192 i32.add i32.const 10 @@ -4027,31 +4024,31 @@ drop block $break|0 block $case6|0 - local.get $3 + local.get $2 i32.const 5760 i32.eq br_if $case6|0 - local.get $3 + local.get $2 i32.const 8232 i32.eq br_if $case6|0 - local.get $3 + local.get $2 i32.const 8233 i32.eq br_if $case6|0 - local.get $3 + local.get $2 i32.const 8239 i32.eq br_if $case6|0 - local.get $3 + local.get $2 i32.const 8287 i32.eq br_if $case6|0 - local.get $3 + local.get $2 i32.const 12288 i32.eq br_if $case6|0 - local.get $3 + local.get $2 i32.const 65279 i32.eq br_if $case6|0 @@ -4068,28 +4065,28 @@ i32.add local.tee $0 i32.load16_u - local.set $1 - local.get $2 + local.set $2 + local.get $1 i32.const 1 i32.sub - local.set $2 + local.set $1 br $while-continue|0 end end i32.const 1 local.set $3 - local.get $1 + local.get $2 i32.const 43 i32.eq - local.get $1 + local.get $2 i32.const 45 i32.eq i32.or if (result i32) - local.get $2 + local.get $1 i32.const 1 i32.sub - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -4097,7 +4094,7 @@ end i32.const -1 i32.const 1 - local.get $1 + local.get $2 i32.const 45 i32.eq select @@ -4108,11 +4105,11 @@ local.tee $0 i32.load16_u else - local.get $1 + local.get $2 end i32.const 48 i32.eq - local.get $2 + local.get $1 i32.const 2 i32.gt_s i32.and @@ -4124,15 +4121,15 @@ i32.load16_u offset=2 i32.const 32 i32.or - local.tee $1 + local.tee $2 i32.const 98 i32.ne if - local.get $1 + local.get $2 i32.const 111 i32.eq br_if $case1|1 - local.get $1 + local.get $2 i32.const 120 i32.eq br_if $case2|1 @@ -4142,10 +4139,10 @@ i32.const 4 i32.add local.set $0 - local.get $2 + local.get $1 i32.const 2 i32.sub - local.set $2 + local.set $1 i32.const 2 local.set $4 br $break|1 @@ -4154,10 +4151,10 @@ i32.const 4 i32.add local.set $0 - local.get $2 + local.get $1 i32.const 2 i32.sub - local.set $2 + local.set $1 i32.const 8 local.set $4 br $break|1 @@ -4166,10 +4163,10 @@ i32.const 4 i32.add local.set $0 - local.get $2 + local.get $1 i32.const 2 i32.sub - local.set $2 + local.set $1 i32.const 16 local.set $4 end @@ -4181,40 +4178,40 @@ local.set $4 loop $while-continue|2 block $while-break|2 - local.get $2 - local.tee $1 + local.get $1 + local.tee $2 i32.const 1 i32.sub - local.set $2 - local.get $1 + local.set $1 + local.get $2 if local.get $0 i32.load16_u - local.tee $1 + local.tee $2 i32.const 48 i32.sub i32.const 10 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 48 i32.sub else - local.get $1 + local.get $2 i32.const 65 i32.sub i32.const 25 i32.le_u if (result i32) - local.get $1 + local.get $2 i32.const 55 i32.sub else - local.get $1 + local.get $2 i32.const 87 i32.sub - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.const 97 i32.sub i32.const 25 @@ -4222,7 +4219,7 @@ select end end - local.tee $1 + local.tee $2 local.get $4 i32.ge_u if @@ -4234,7 +4231,7 @@ end br $while-break|2 end - local.get $1 + local.get $2 local.get $4 local.get $5 i32.mul @@ -4289,19 +4286,18 @@ return end local.get $0 - local.tee $1 - local.get $0 i32.const 20 i32.sub i32.load offset=16 + local.get $0 i32.add - local.set $0 + local.set $1 loop $while-continue|0 local.get $0 local.get $1 - i32.gt_u + i32.lt_u if - local.get $1 + local.get $0 i32.load local.tee $2 if @@ -4311,48 +4307,47 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $1 + local.get $0 i32.const 4 i32.add - local.set $1 + local.set $0 br $while-continue|0 end end return end local.get $0 - local.tee $1 i32.load offset=4 - local.tee $2 + local.tee $1 local.get $0 i32.load offset=12 i32.const 2 i32.shl i32.add - local.set $0 + local.set $3 loop $while-continue|01 - local.get $0 - local.get $2 - i32.gt_u + local.get $1 + local.get $3 + i32.lt_u if - local.get $2 + local.get $1 i32.load - local.tee $3 + local.tee $2 if - local.get $3 + local.get $2 if - local.get $3 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $2 + local.get $1 i32.const 4 i32.add - local.set $2 + local.set $1 br $while-continue|01 end end - local.get $1 + local.get $0 i32.load local.tee $0 if @@ -4447,64 +4442,64 @@ i64.store offset=104 local.get $0 i32.load - local.tee $3 + local.tee $1 i32.const 0 i32.lt_s - local.tee $4 - local.get $3 + local.tee $3 + local.get $1 i32.const 10000 i32.ge_s i32.or if global.get $~lib/memory/__stack_pointer - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 i32.const 1616 i32.const 1648 - local.get $4 + local.get $3 select - local.tee $4 + local.tee $3 i32.store - local.get $3 + local.get $1 i32.const 31 i32.shr_s - local.tee $5 - local.get $3 - local.get $5 + local.tee $4 + local.get $1 + local.get $4 i32.add i32.xor call $~lib/number/I32#toString - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 1872 i32.store offset=12 - local.get $3 + local.get $1 i32.const 6 call $~lib/string/String#padStart - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=4 - local.get $4 local.get $3 + local.get $1 call $~lib/string/String.__concat local.tee $1 i32.store offset=16 else global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 call $~lib/number/I32#toString - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 1872 i32.store offset=8 - local.get $3 + local.get $1 i32.const 4 call $~lib/string/String#padStart local.tee $1 @@ -4803,74 +4798,74 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i64.const 0 i64.store offset=8 - local.get $2 + local.get $1 i64.const 0 i64.store offset=16 - local.get $2 + local.get $1 i64.const 0 i64.store offset=24 - local.get $2 + local.get $1 i64.const 0 i64.store offset=32 - local.get $2 + local.get $1 i32.const 0 i32.store offset=40 i32.const 28 i32.const 4 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $6 i32.const 4560 i32.const 28 call $~lib/memory/memory.copy - local.get $2 local.get $1 + local.get $6 i32.store global.get $~lib/memory/__stack_pointer i32.const 48 i32.const 4 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $3 i32.const 4992 i32.const 48 call $~lib/memory/memory.copy - local.get $4 + local.get $3 i32.store offset=4 local.get $0 i32.load - local.tee $5 + local.tee $2 local.get $0 i32.load offset=4 - local.tee $2 + local.tee $5 i32.const 3 i32.lt_s i32.sub - local.tee $6 + local.tee $1 i32.const 0 i32.ge_s local.set $7 local.get $0 i32.load offset=8 - local.tee $3 - local.get $2 + local.tee $4 + local.get $5 i32.const 1579 i32.add - i32.load8_u - local.get $6 - local.get $6 + i32.load8_u + local.get $1 + local.get $1 i32.const 3 i32.sub local.get $7 select i32.const 4 i32.div_s - local.get $6 - local.get $6 + local.get $1 + local.get $1 i32.const 99 i32.sub local.get $7 @@ -4878,8 +4873,8 @@ i32.const 100 i32.div_s i32.sub - local.get $6 - local.get $6 + local.get $1 + local.get $1 i32.const 399 i32.sub local.get $7 @@ -4887,7 +4882,7 @@ i32.const 400 i32.div_s i32.add - local.get $6 + local.get $1 i32.add i32.add i32.add @@ -4901,10 +4896,10 @@ i32.lt_s select i32.add - local.set $6 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $5 - local.get $5 + local.get $2 + local.get $2 i32.const 31 i32.shr_s local.tee $7 @@ -4924,15 +4919,15 @@ call $~lib/string/String#padStart local.tee $0 i32.store offset=16 - local.get $5 + local.get $2 i32.const 0 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $2 i32.const 1616 i32.store offset=8 - local.get $5 + local.get $2 i32.const 1616 local.get $0 call $~lib/string/String.__concat @@ -4940,22 +4935,22 @@ i32.store offset=16 end global.get $~lib/memory/__stack_pointer - local.tee $5 - local.get $6 + local.tee $2 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $6 i32.add i32.load local.tee $1 i32.store offset=32 - local.get $5 local.get $2 + local.get $5 i32.const 1 i32.sub i32.const 2 i32.shl - local.get $4 + local.get $3 i32.add i32.load local.tee $2 @@ -4967,7 +4962,7 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=24 - local.get $3 + local.get $4 call $~lib/number/I32#toString local.set $2 global.get $~lib/memory/__stack_pointer @@ -5101,15 +5096,15 @@ i32.const 60000 i32.div_s call $~lib/number/I32#toString - local.set $4 + local.set $2 global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $4 - i32.store offset=24 + local.tee $4 local.get $2 + i32.store offset=24 + local.get $4 i32.const 1872 i32.store offset=32 - local.get $4 + local.get $2 i32.const 2 call $~lib/string/String#padStart local.set $2 @@ -5237,40 +5232,40 @@ i32.const 28 i32.const 4 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $3 i32.const 5616 i32.const 28 call $~lib/memory/memory.copy local.get $1 - local.get $7 + local.get $3 i32.store global.get $~lib/memory/__stack_pointer i32.const 48 i32.const 4 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $4 i32.const 6048 i32.const 48 call $~lib/memory/memory.copy - local.get $8 + local.get $4 i32.store offset=4 local.get $0 i32.load - local.tee $3 + local.tee $5 local.get $0 i32.load offset=4 - local.tee $4 + local.tee $6 i32.const 3 i32.lt_s i32.sub local.tee $1 i32.const 0 i32.ge_s - local.set $6 + local.set $7 local.get $0 i32.load offset=8 - local.tee $5 - local.get $4 + local.tee $8 + local.get $6 i32.const 1579 i32.add i32.load8_u @@ -5278,7 +5273,7 @@ local.get $1 i32.const 3 i32.sub - local.get $6 + local.get $7 select i32.const 4 i32.div_s @@ -5286,7 +5281,7 @@ local.get $1 i32.const 99 i32.sub - local.get $6 + local.get $7 select i32.const 100 i32.div_s @@ -5295,7 +5290,7 @@ local.get $1 i32.const 399 i32.sub - local.get $6 + local.get $7 select i32.const 400 i32.div_s @@ -5314,10 +5309,10 @@ i32.lt_s select i32.add - local.set $6 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $3 - local.get $3 + local.get $5 + local.get $5 i32.const 31 i32.shr_s local.tee $9 @@ -5337,15 +5332,15 @@ call $~lib/string/String#padStart local.tee $1 i32.store offset=16 - local.get $3 + local.get $5 i32.const 0 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $5 i32.const 1616 i32.store offset=8 - local.get $3 + local.get $5 i32.const 1616 local.get $1 call $~lib/string/String.__concat @@ -5353,15 +5348,15 @@ i32.store offset=16 end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $7 i32.const 2 i32.shl - local.get $7 + local.get $3 i32.add i32.load local.tee $3 i32.store offset=80 - local.get $5 + local.get $8 call $~lib/number/I32#toString local.set $5 global.get $~lib/memory/__stack_pointer @@ -5385,12 +5380,12 @@ local.get $3 i32.store offset=72 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.const 1 i32.sub i32.const 2 i32.shl - local.get $8 + local.get $4 i32.add i32.load local.tee $4 @@ -5632,16 +5627,16 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.set $5 + local.set $8 local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $6 + local.tee $5 if - local.get $5 + local.get $8 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -5656,7 +5651,7 @@ br $folding-inner1 end else - local.get $5 + local.get $8 i32.eqz if i32.const 0 @@ -5665,31 +5660,31 @@ br $folding-inner1 end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $8 i32.const 2147483647 - local.get $5 + local.get $8 i32.const 2147483647 i32.ne select - local.tee $4 + local.tee $2 call $~lib/rt/__newArray local.tee $1 i32.store local.get $1 i32.load offset=4 - local.set $5 + local.set $4 loop $for-loop|0 + local.get $2 local.get $3 - local.get $4 - i32.lt_s + i32.gt_s if global.get $~lib/memory/__stack_pointer i32.const 2 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $5 i32.store offset=8 - local.get $2 + local.get $5 local.get $3 i32.const 1 i32.shl @@ -5700,14 +5695,14 @@ local.get $3 i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add - local.get $2 + local.get $5 i32.store - local.get $2 + local.get $5 if local.get $1 - local.get $2 + local.get $5 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -5723,49 +5718,49 @@ global.get $~lib/memory/__stack_pointer i32.const 0 call $~lib/rt/__newArray - local.tee $7 + local.tee $3 i32.store offset=12 loop $while-continue|1 local.get $0 local.get $1 local.get $2 call $~lib/string/String#indexOf - local.tee $8 + local.tee $6 i32.const -1 i32.xor if - local.get $8 + local.get $6 local.get $2 i32.sub - local.tee $3 + local.tee $7 i32.const 0 i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.const 1 i32.shl - local.tee $3 + local.tee $9 i32.const 1 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $7 i32.store offset=16 - local.get $9 + local.get $7 local.get $2 i32.const 1 i32.shl local.get $0 i32.add - local.get $3 + local.get $9 call $~lib/memory/memory.copy + local.get $3 local.get $7 - local.get $9 call $~lib/array/Array<~lib/string/String>#push else global.get $~lib/memory/__stack_pointer i32.const 3456 i32.store offset=20 - local.get $7 + local.get $3 i32.const 3456 call $~lib/array/Array<~lib/string/String>#push end @@ -5776,8 +5771,8 @@ i32.const 2147483647 i32.eq br_if $folding-inner2 + local.get $5 local.get $6 - local.get $8 i32.add local.set $2 br $while-continue|1 @@ -5786,12 +5781,12 @@ local.get $2 i32.eqz if - local.get $7 + local.get $3 local.get $0 call $~lib/array/Array<~lib/string/String>#push br $folding-inner2 end - local.get $5 + local.get $8 local.get $2 i32.sub local.tee $1 @@ -5805,9 +5800,9 @@ local.tee $1 i32.const 1 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $4 i32.store offset=4 - local.get $3 + local.get $4 local.get $2 i32.const 1 i32.shl @@ -5815,14 +5810,14 @@ i32.add local.get $1 call $~lib/memory/memory.copy - local.get $7 local.get $3 + local.get $4 call $~lib/array/Array<~lib/string/String>#push else global.get $~lib/memory/__stack_pointer i32.const 3456 i32.store offset=20 - local.get $7 + local.get $3 i32.const 3456 call $~lib/array/Array<~lib/string/String>#push end @@ -5830,7 +5825,7 @@ i32.const 24 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $3 return end global.get $~lib/memory/__stack_pointer @@ -5851,7 +5846,7 @@ i32.const 24 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $3 ) (func $~lib/date/Date.fromString (param $0 i32) (result i32) (local $1 i32) @@ -6035,26 +6030,26 @@ local.get $1 i32.const 1616 call $~lib/string/String#split - local.tee $6 + local.tee $0 i32.store offset=24 - local.get $6 + local.get $0 i32.const 0 call $~lib/array/Array<~lib/string/String>#__get - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=16 - local.get $0 + local.get $1 call $~lib/util/string/strtol i32.const 1 local.set $1 - local.get $6 + local.get $0 i32.load offset=12 - local.tee $0 + local.tee $7 i32.const 2 i32.ge_s if (result i32) - local.get $6 + local.get $0 i32.const 1 call $~lib/array/Array<~lib/string/String>#__get local.set $1 @@ -6064,11 +6059,11 @@ local.get $1 call $~lib/util/string/strtol local.set $1 - local.get $0 + local.get $7 i32.const 3 i32.ge_s if (result i32) - local.get $6 + local.get $0 i32.const 2 call $~lib/array/Array<~lib/string/String>#__get local.set $0 @@ -9470,25 +9465,25 @@ local.get $1 local.get $4 i32.sub - local.tee $6 + local.tee $1 i32.lt_u if local.get $2 - local.get $6 + local.get $1 i32.const 2 i32.sub local.get $2 i32.div_u - local.tee $7 + local.tee $6 i32.mul - local.set $1 + local.set $7 local.get $2 - local.get $7 + local.get $6 i32.mul - local.set $7 + local.set $6 loop $while-continue|0 local.get $3 - local.get $7 + local.get $6 i32.lt_u if local.get $3 @@ -9504,22 +9499,22 @@ br $while-continue|0 end end - local.get $1 local.get $5 + local.get $7 i32.add i32.const 1872 - local.get $6 local.get $1 + local.get $7 i32.sub call $~lib/memory/memory.copy else local.get $5 i32.const 1872 - local.get $6 + local.get $1 call $~lib/memory/memory.copy end + local.get $1 local.get $5 - local.get $6 i32.add local.get $0 local.get $4 @@ -9557,51 +9552,51 @@ i32.const 0 i32.gt_s select - local.tee $1 + local.tee $3 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $1 local.get $1 local.get $3 - i32.lt_s + i32.gt_s select - local.tee $4 + local.tee $3 local.get $2 i32.const 0 local.get $2 i32.const 0 i32.gt_s select - local.tee $1 - local.get $3 + local.tee $2 local.get $1 - local.get $3 - i32.lt_s + local.get $1 + local.get $2 + i32.gt_s select local.tee $2 local.get $2 - local.get $4 + local.get $3 i32.gt_s select i32.const 1 i32.shl - local.set $1 - local.get $4 + local.set $4 + local.get $3 local.get $2 local.get $2 - local.get $4 + local.get $3 i32.lt_s select i32.const 1 i32.shl local.tee $2 - local.get $1 + local.get $4 i32.sub - local.tee $4 + local.tee $3 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -9612,12 +9607,12 @@ return end i32.const 0 - local.get $3 + local.get $1 i32.const 1 i32.shl local.get $2 i32.eq - local.get $1 + local.get $4 select if global.get $~lib/memory/__stack_pointer @@ -9628,22 +9623,22 @@ return end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 - local.get $0 local.get $1 - i32.add + local.get $0 local.get $4 + i32.add + local.get $3 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 ) (func $~lib/rt/__newArray (param $0 i32) (result i32) (local $1 i32) @@ -9672,38 +9667,38 @@ local.get $0 i32.const 2 i32.shl - local.tee $2 + local.tee $1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.store i32.const 16 i32.const 5 call $~lib/rt/itcms/__new - local.tee $3 - local.get $1 + local.tee $2 + local.get $3 i32.store - local.get $1 + local.get $3 if + local.get $2 local.get $3 - local.get $1 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $2 local.get $3 - local.get $1 i32.store offset=4 - local.get $3 local.get $2 + local.get $1 i32.store offset=8 - local.get $3 + local.get $2 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 ) (func $~lib/array/Array<~lib/string/String>#__get (param $0 i32) (param $1 i32) (result i32) global.get $~lib/memory/__stack_pointer @@ -9806,16 +9801,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $0 i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $0 local.get $1 local.get $2 select @@ -9824,7 +9819,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $3 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/map.optimized.wat b/tests/compiler/std/map.optimized.wat index 882f3635e4..1a41aaaf71 100644 --- a/tests/compiler/std/map.optimized.wat +++ b/tests/compiler/std/map.optimized.wat @@ -130,18 +130,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 18404 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -155,9 +154,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -167,15 +166,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -216,20 +215,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -661,9 +660,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -710,6 +706,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1463,18 +1462,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $3 + local.get $0 + i32.const 16 + i32.add local.tee $4 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1485,13 +1483,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $4 i32.const 19 i32.add i32.const -16 @@ -1499,32 +1497,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1540,16 +1538,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1557,7 +1555,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1565,8 +1563,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1583,7 +1581,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -1593,13 +1591,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1612,40 +1610,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -1753,7 +1751,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -1767,12 +1765,12 @@ i32.const 12 i32.mul i32.add - local.set $6 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 local.get $5 - local.get $6 + local.get $7 i32.ne if local.get $5 @@ -1866,7 +1864,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -2423,95 +2421,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -2542,39 +2540,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 @@ -2871,7 +2869,6 @@ ) (func $~lib/array/ensureCapacity (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (local $4 i32) - (local $5 i32) local.get $0 i32.load offset=8 local.tee $4 @@ -2904,29 +2901,29 @@ local.set $1 local.get $0 i32.load - local.tee $5 + local.tee $2 local.get $3 if local.get $4 i32.const 1 i32.shl - local.tee $2 + local.tee $3 i32.const 1073741820 - local.get $2 + local.get $3 i32.const 1073741820 i32.lt_u select - local.tee $2 + local.tee $3 local.get $1 local.get $1 - local.get $2 + local.get $3 i32.lt_u select local.set $1 end local.get $1 call $~lib/rt/itcms/__renew - local.tee $2 + local.tee $3 local.get $4 i32.add local.get $1 @@ -2934,19 +2931,19 @@ i32.sub call $~lib/memory/memory.fill local.get $2 - local.get $5 + local.get $3 i32.ne if local.get $0 - local.get $2 + local.get $3 i32.store local.get $0 - local.get $2 + local.get $3 i32.store offset=4 - local.get $2 + local.get $3 if local.get $0 - local.get $2 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end end @@ -3095,7 +3092,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -3109,12 +3106,12 @@ i32.const 12 i32.mul i32.add - local.set $6 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 local.get $5 - local.get $6 + local.get $7 i32.ne if local.get $5 @@ -3207,7 +3204,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -3410,16 +3407,16 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i64.const 0 i64.store - local.get $4 + local.get $3 i64.const 0 i64.store offset=8 - local.get $4 + local.get $3 i32.const 0 i32.store offset=16 - local.get $4 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -3428,67 +3425,67 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $5 i32.const 0 i32.store - local.get $2 + local.get $5 i32.const 24 i32.const 3 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $11 i32.store - local.get $2 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $5 i32.store - local.get $6 + local.get $5 if - local.get $2 - local.get $6 + local.get $11 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 + local.get $11 i32.const 3 i32.store offset=4 - local.get $2 + local.get $11 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $5 i32.store offset=8 - local.get $6 + local.get $5 if - local.get $2 - local.get $6 + local.get $11 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 + local.get $11 i32.const 4 i32.store offset=12 - local.get $2 + local.get $11 i32.const 0 i32.store offset=16 - local.get $2 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 - local.get $2 + local.get $3 + local.get $11 i32.store loop $for-loop|1 - local.get $5 + local.get $4 i32.extend8_s i32.const 100 i32.lt_s if - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 - local.get $5 + local.get $4 i32.extend8_s i32.const -1028477379 i32.mul @@ -3498,22 +3495,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u i32.xor @@ -3522,38 +3519,38 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 i32.load8_u - local.get $5 + local.get $4 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $6 + local.get $5 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|0 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 if i32.const 0 i32.const 1568 @@ -3562,19 +3559,19 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $5 - local.get $5 + local.get $11 + local.get $4 + local.get $4 i32.extend8_s - local.tee $4 + local.tee $3 i32.const 10 i32.add call $~lib/map/Map#set - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761394 @@ -3583,22 +3580,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u i32.xor @@ -3607,38 +3604,38 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 i32.load8_u - local.get $5 + local.get $4 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $6 + local.get $5 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|02 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 i32.eqz if i32.const 0 @@ -3648,10 +3645,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $5 + local.get $11 + local.get $4 call $~lib/map/Map#get - local.get $5 + local.get $4 i32.extend8_s i32.const 10 i32.add @@ -3664,14 +3661,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $4 i32.const 1 i32.add - local.set $5 + local.set $4 br $for-loop|1 end end - local.get $2 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -3684,18 +3681,18 @@ unreachable end i32.const 0 - local.set $5 + local.set $4 loop $for-loop|3 - local.get $5 + local.get $4 i32.extend8_s i32.const 100 i32.lt_s if - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 - local.get $5 + local.get $4 i32.extend8_s i32.const -1028477379 i32.mul @@ -3705,22 +3702,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u i32.xor @@ -3729,38 +3726,38 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 i32.load8_u - local.get $5 + local.get $4 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $6 + local.get $5 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|05 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 i32.eqz if i32.const 0 @@ -3770,10 +3767,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $5 + local.get $11 + local.get $4 call $~lib/map/Map#get - local.get $5 + local.get $4 i32.extend8_s i32.const 10 i32.add @@ -3786,19 +3783,19 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $5 - local.get $5 + local.get $11 + local.get $4 + local.get $4 i32.extend8_s - local.tee $4 + local.tee $3 i32.const 20 i32.add call $~lib/map/Map#set - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761394 @@ -3807,22 +3804,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u i32.xor @@ -3831,38 +3828,38 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 i32.load8_u - local.get $5 + local.get $4 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $6 + local.get $5 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|08 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 i32.eqz if i32.const 0 @@ -3872,10 +3869,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $5 + local.get $11 + local.get $4 call $~lib/map/Map#get - local.get $5 + local.get $4 i32.extend8_s i32.const 20 i32.add @@ -3888,14 +3885,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $4 i32.const 1 i32.add - local.set $5 + local.set $4 br $for-loop|3 end end - local.get $2 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -3908,8 +3905,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -3918,17 +3915,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $3 i32.const 0 i32.store - local.get $2 + local.get $11 i32.load offset=8 - local.set $7 - local.get $2 + local.set $5 + local.get $11 i32.load offset=16 - local.tee $8 - local.set $9 - local.get $6 + local.tee $6 + local.set $7 + local.get $3 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -3937,28 +3934,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $8 i64.const 0 i64.store - local.get $4 + local.get $8 i32.const 16 i32.const 4 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $12 i32.store - local.get $4 + local.get $12 i32.const 0 i32.store - local.get $4 + local.get $12 i32.const 0 i32.store offset=4 - local.get $4 + local.get $12 i32.const 0 i32.store offset=8 - local.get $4 + local.get $12 i32.const 0 i32.store offset=12 - local.get $9 + local.get $7 i32.const 1073741820 i32.gt_u if @@ -3970,64 +3967,64 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $7 i32.const 8 - local.get $9 + local.get $7 i32.const 8 i32.gt_u select - local.tee $10 + local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $9 i32.store offset=4 - local.get $11 - local.get $10 + local.get $9 + local.get $8 call $~lib/memory/memory.fill - local.get $4 - local.get $11 + local.get $12 + local.get $9 i32.store - local.get $11 + local.get $9 if - local.get $4 - local.get $11 + local.get $12 + local.get $9 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $11 + local.get $12 + local.get $9 i32.store offset=4 - local.get $4 - local.get $10 + local.get $12 + local.get $8 i32.store offset=8 - local.get $4 - local.get $9 + local.get $12 + local.get $7 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 - local.get $4 + local.get $3 + local.get $12 i32.store loop $for-loop|0 - local.get $3 - local.get $8 + local.get $2 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 i32.const 12 i32.mul - local.get $7 + local.get $5 i32.add - local.tee $6 + local.tee $3 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $4 + local.get $12 local.get $1 - local.get $6 + local.get $3 i32.load8_s call $~lib/array/Array#__set local.get $1 @@ -4035,31 +4032,31 @@ i32.add local.set $1 end - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 br $for-loop|0 end end - local.get $4 + local.get $12 local.get $1 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $4 + local.get $12 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $12 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $11 call $~lib/map/Map#values - local.tee $10 + local.tee $13 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -4071,68 +4068,68 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store - local.get $3 + local.get $2 i32.const 24 i32.const 6 call $~lib/rt/itcms/__new - local.tee $13 + local.tee $14 i32.store - local.get $13 + local.get $14 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 if - local.get $13 - local.get $3 + local.get $14 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $13 + local.get $14 i32.const 3 i32.store offset=4 - local.get $13 + local.get $14 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $2 i32.store offset=8 - local.get $3 + local.get $2 if - local.get $13 - local.get $3 + local.get $14 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $13 + local.get $14 i32.const 4 i32.store offset=12 - local.get $13 + local.get $14 i32.const 0 i32.store offset=16 - local.get $13 + local.get $14 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $13 + local.get $14 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $8 + local.tee $15 i32.store offset=16 loop $for-loop|4 - local.get $4 + local.get $12 i32.load offset=12 local.get $0 i32.gt_s if local.get $0 - local.tee $5 - local.get $4 + local.tee $3 + local.get $12 i32.load offset=12 i32.ge_u if @@ -4143,21 +4140,21 @@ call $~lib/builtins/abort unreachable end - local.get $5 - local.get $4 + local.get $3 + local.get $12 i32.load offset=4 i32.add i32.load8_s - local.set $6 - local.get $10 - local.get $5 + local.set $4 + local.get $13 + local.get $3 call $~lib/array/Array#__get - local.set $9 - local.get $2 + local.set $16 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 - local.get $6 + local.get $4 local.tee $1 i32.extend8_s i32.const -1028477379 @@ -4199,7 +4196,7 @@ if local.get $0 i32.load offset=8 - local.tee $3 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -4213,7 +4210,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find12 - local.get $3 + local.get $2 i32.const -2 i32.and local.set $0 @@ -4233,14 +4230,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 - local.get $9 + local.get $16 i32.const 20 i32.sub - local.tee $3 + local.tee $2 i32.extend8_s i32.const -1028477379 i32.mul @@ -4281,7 +4278,7 @@ if local.get $0 i32.load offset=8 - local.tee $7 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -4289,13 +4286,13 @@ else local.get $0 i32.load8_u - local.get $3 + local.get $2 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find15 - local.get $7 + local.get $5 i32.const -2 i32.and local.set $0 @@ -4326,9 +4323,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $13 + local.get $14 i32.load - local.get $6 + local.get $4 i32.extend8_s i32.const -1028477379 i32.mul @@ -4357,23 +4354,23 @@ i32.const 16 i32.shr_u i32.xor - local.tee $11 - local.get $13 + local.tee $6 + local.get $14 i32.load offset=4 i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/map/Map#find loop $while-continue|017 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 local.tee $0 i32.load offset=4 - local.tee $3 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -4387,10 +4384,10 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $3 + local.get $2 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|017 end end @@ -4403,15 +4400,15 @@ local.get $1 i32.store8 offset=1 else - local.get $13 + local.get $14 i32.load offset=16 - local.get $13 + local.get $14 i32.load offset=12 i32.eq if - local.get $13 + local.get $14 i32.load offset=20 - local.get $13 + local.get $14 i32.load offset=12 i32.const 3 i32.mul @@ -4419,17 +4416,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $13 + local.get $14 i32.load offset=4 else - local.get $13 + local.get $14 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $14 + local.set $8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -4443,14 +4440,14 @@ i64.const 0 i64.store local.get $0 - local.get $14 + local.get $8 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $15 + local.tee $9 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -4458,41 +4455,41 @@ i32.shl i32.const 3 i32.div_s - local.tee $12 + local.tee $7 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $2 i32.store offset=4 - local.get $13 + local.get $14 i32.load offset=8 - local.tee $7 - local.get $13 + local.tee $5 + local.get $14 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $16 - local.get $3 + local.set $10 + local.get $2 local.set $0 loop $while-continue|018 - local.get $7 - local.get $16 + local.get $5 + local.get $10 i32.ne if - local.get $7 + local.get $5 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $7 + local.get $5 i32.load8_s local.tee $17 i32.store8 local.get $0 - local.get $7 + local.get $5 i32.load8_s offset=1 i32.store8 offset=1 local.get $0 @@ -4525,11 +4522,11 @@ i32.const 16 i32.shr_u i32.xor - local.get $14 + local.get $8 i32.and i32.const 2 i32.shl - local.get $15 + local.get $9 i32.add local.tee $17 i32.load @@ -4542,39 +4539,39 @@ i32.add local.set $0 end - local.get $7 + local.get $5 i32.const 8 i32.add - local.set $7 + local.set $5 br $while-continue|018 end end - local.get $13 - local.get $15 + local.get $14 + local.get $9 i32.store - local.get $15 + local.get $9 if - local.get $13 - local.get $15 + local.get $14 + local.get $9 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $13 local.get $14 + local.get $8 i32.store offset=4 - local.get $13 - local.get $3 + local.get $14 + local.get $2 i32.store offset=8 - local.get $3 + local.get $2 if - local.get $13 - local.get $3 + local.get $14 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $13 - local.get $12 + local.get $14 + local.get $7 i32.store offset=12 - local.get $13 - local.get $13 + local.get $14 + local.get $14 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -4583,40 +4580,40 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $13 + local.get $14 i32.load offset=8 local.tee $0 i32.store - local.get $13 - local.get $13 + local.get $14 + local.get $14 i32.load offset=16 - local.tee $3 + local.tee $2 i32.const 1 i32.add i32.store offset=16 - local.get $3 + local.get $2 i32.const 3 i32.shl local.get $0 i32.add local.tee $0 - local.get $6 + local.get $4 i32.store8 local.get $0 local.get $1 i32.store8 offset=1 - local.get $13 - local.get $13 + local.get $14 + local.get $14 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $13 + local.get $14 i32.load - local.get $13 + local.get $14 i32.load offset=4 - local.get $11 + local.get $6 i32.and i32.const 2 i32.shl @@ -4632,21 +4629,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $9 + local.get $15 + local.get $16 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $5 + local.get $3 i32.const 1 i32.add local.set $0 br $for-loop|4 end end - local.get $13 + local.get $14 i32.load offset=20 i32.const 100 i32.ne @@ -4658,7 +4655,7 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $15 i32.load offset=20 i32.const 100 i32.ne @@ -4678,9 +4675,9 @@ i32.const 50 i32.lt_s if - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 local.get $0 i32.extend8_s @@ -4716,12 +4713,12 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find20 loop $while-continue|021 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 local.tee $1 i32.const 1 @@ -4729,7 +4726,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $3 i32.load8_u local.get $0 i32.const 255 @@ -4740,14 +4737,14 @@ local.get $1 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|021 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 i32.eqz if i32.const 0 @@ -4757,7 +4754,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 local.get $0 call $~lib/map/Map#get local.get $0 @@ -4773,12 +4770,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 local.get $0 call $~lib/map/Map#delete - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 local.get $0 i32.extend8_s @@ -4814,12 +4811,12 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find23 loop $while-continue|024 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 local.tee $1 i32.const 1 @@ -4827,7 +4824,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $3 i32.load8_u local.get $0 i32.const 255 @@ -4838,14 +4835,14 @@ local.get $1 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|024 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 if i32.const 0 i32.const 1568 @@ -4861,7 +4858,7 @@ br $for-loop|6 end end - local.get $2 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -4881,9 +4878,9 @@ i32.const 50 i32.lt_s if - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 local.get $0 i32.extend8_s @@ -4919,12 +4916,12 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find26 loop $while-continue|027 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 local.tee $1 i32.const 1 @@ -4932,7 +4929,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $3 i32.load8_u local.get $0 i32.const 255 @@ -4943,14 +4940,14 @@ local.get $1 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|027 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 if i32.const 0 i32.const 1568 @@ -4959,7 +4956,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 local.get $0 local.get $0 i32.extend8_s @@ -4967,9 +4964,9 @@ i32.const 10 i32.add call $~lib/map/Map#set - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -5004,12 +5001,12 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find29 loop $while-continue|030 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 local.tee $1 i32.const 1 @@ -5017,7 +5014,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $3 i32.load8_u local.get $0 i32.const 255 @@ -5028,14 +5025,14 @@ local.get $1 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|030 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 i32.eqz if i32.const 0 @@ -5045,12 +5042,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 local.get $0 call $~lib/map/Map#delete - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 local.get $0 i32.extend8_s @@ -5086,12 +5083,12 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find32 loop $while-continue|033 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 local.tee $1 i32.const 1 @@ -5099,7 +5096,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $3 i32.load8_u local.get $0 i32.const 255 @@ -5110,14 +5107,14 @@ local.get $1 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|033 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 if i32.const 0 i32.const 1568 @@ -5133,7 +5130,7 @@ br $for-loop|8 end end - local.get $2 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -5145,9 +5142,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 call $~lib/map/Map#clear - local.get $2 + local.get $11 i32.load offset=20 if i32.const 0 @@ -5213,7 +5210,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -5227,12 +5224,12 @@ i32.const 12 i32.mul i32.add - local.set $6 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 local.get $5 - local.get $6 + local.get $7 i32.ne if local.get $5 @@ -5327,7 +5324,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -5580,16 +5577,16 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $4 i64.const 0 i64.store - local.get $5 + local.get $4 i64.const 0 i64.store offset=8 - local.get $5 + local.get $4 i32.const 0 i32.store offset=16 - local.get $5 + local.get $4 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -5598,70 +5595,70 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $5 i32.const 0 i32.store - local.get $3 + local.get $5 i32.const 24 i32.const 8 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $11 i32.store - local.get $3 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $5 i32.store - local.get $6 + local.get $5 if - local.get $3 - local.get $6 + local.get $11 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 + local.get $11 i32.const 3 i32.store offset=4 - local.get $3 + local.get $11 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $5 i32.store offset=8 - local.get $6 + local.get $5 if - local.get $3 - local.get $6 + local.get $11 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 + local.get $11 i32.const 4 i32.store offset=12 - local.get $3 + local.get $11 i32.const 0 i32.store offset=16 - local.get $3 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 - local.get $3 + local.get $4 + local.get $11 i32.store loop $for-loop|1 - local.get $0 + local.get $2 i32.const 255 i32.and i32.const 100 i32.lt_u if block $__inlined_func$~lib/map/Map#find (result i32) - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $0 - local.tee $5 + local.get $2 + local.tee $4 i32.const 255 i32.and i32.const -1028477379 @@ -5672,56 +5669,56 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $6 + local.tee $5 i32.const 15 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $6 + local.tee $5 i32.const 13 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $6 + local.tee $5 i32.const 16 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $5 loop $while-continue|0 - local.get $6 + local.get $5 if - local.get $6 - local.get $6 + local.get $5 + local.get $5 i32.load offset=8 - local.tee $7 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 - i32.load8_u local.get $5 + i32.load8_u + local.get $4 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find drop - local.get $7 + local.get $6 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|0 end end @@ -5735,21 +5732,21 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $0 - local.get $0 + local.get $11 + local.get $2 + local.get $2 i32.const 255 i32.and i32.const 10 i32.add call $~lib/map/Map#set block $__inlined_func$~lib/map/Map#find1 (result i32) - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $0 - local.tee $5 + local.get $2 + local.tee $4 i32.const 255 i32.and i32.const -1028477379 @@ -5760,56 +5757,56 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $6 + local.tee $5 i32.const 15 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $6 + local.tee $5 i32.const 13 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $6 + local.tee $5 i32.const 16 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $5 loop $while-continue|02 - local.get $6 + local.get $5 if - local.get $6 - local.get $6 + local.get $5 + local.get $5 i32.load offset=8 - local.tee $7 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 - i32.load8_u local.get $5 + i32.load8_u + local.get $4 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find1 drop - local.get $7 + local.get $6 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|02 end end @@ -5824,10 +5821,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $0 + local.get $11 + local.get $2 call $~lib/map/Map#get - local.get $0 + local.get $2 i32.const 255 i32.and i32.const 10 @@ -5841,14 +5838,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|1 end end - local.get $3 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -5861,21 +5858,21 @@ unreachable end i32.const 0 - local.set $0 + local.set $2 loop $for-loop|3 - local.get $0 + local.get $2 i32.const 255 i32.and i32.const 100 i32.lt_u if block $__inlined_func$~lib/map/Map#find4 (result i32) - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $0 - local.tee $5 + local.get $2 + local.tee $4 i32.const 255 i32.and i32.const -1028477379 @@ -5886,56 +5883,56 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $6 + local.tee $5 i32.const 15 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $6 + local.tee $5 i32.const 13 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $6 + local.tee $5 i32.const 16 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $5 loop $while-continue|05 - local.get $6 + local.get $5 if - local.get $6 - local.get $6 + local.get $5 + local.get $5 i32.load offset=8 - local.tee $7 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 - i32.load8_u local.get $5 + i32.load8_u + local.get $4 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find4 drop - local.get $7 + local.get $6 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|05 end end @@ -5950,10 +5947,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $0 + local.get $11 + local.get $2 call $~lib/map/Map#get - local.get $0 + local.get $2 i32.const 255 i32.and i32.const 10 @@ -5967,21 +5964,21 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $0 - local.get $0 + local.get $11 + local.get $2 + local.get $2 i32.const 255 i32.and i32.const 20 i32.add call $~lib/map/Map#set block $__inlined_func$~lib/map/Map#find7 (result i32) - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $0 - local.tee $5 + local.get $2 + local.tee $4 i32.const 255 i32.and i32.const -1028477379 @@ -5992,56 +5989,56 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $6 + local.tee $5 i32.const 15 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $6 + local.tee $5 i32.const 13 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $6 + local.tee $5 i32.const 16 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $5 loop $while-continue|08 - local.get $6 + local.get $5 if - local.get $6 - local.get $6 - i32.load offset=8 - local.tee $7 + local.get $5 + local.get $5 + i32.load offset=8 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 - i32.load8_u local.get $5 + i32.load8_u + local.get $4 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find7 drop - local.get $7 + local.get $6 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|08 end end @@ -6056,10 +6053,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $0 + local.get $11 + local.get $2 call $~lib/map/Map#get - local.get $0 + local.get $2 i32.const 255 i32.and i32.const 20 @@ -6073,14 +6070,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|3 end end - local.get $3 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -6093,8 +6090,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $0 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -6103,17 +6100,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $2 i32.const 0 i32.store - local.get $3 + local.get $11 i32.load offset=8 - local.set $7 - local.get $3 + local.set $5 + local.get $11 i32.load offset=16 - local.tee $8 - local.set $9 - local.get $5 + local.tee $6 + local.set $7 + local.get $2 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -6122,28 +6119,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $8 i64.const 0 i64.store - local.get $0 + local.get $8 i32.const 16 i32.const 9 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $12 i32.store - local.get $0 + local.get $12 i32.const 0 i32.store - local.get $0 + local.get $12 i32.const 0 i32.store offset=4 - local.get $0 + local.get $12 i32.const 0 i32.store offset=8 - local.get $0 + local.get $12 i32.const 0 i32.store offset=12 - local.get $9 + local.get $7 i32.const 1073741820 i32.gt_u if @@ -6155,97 +6152,96 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $7 i32.const 8 - local.get $9 + local.get $7 i32.const 8 i32.gt_u select - local.tee $10 + local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $9 i32.store offset=4 - local.get $11 - local.get $10 + local.get $9 + local.get $8 call $~lib/memory/memory.fill - local.get $0 - local.get $11 + local.get $12 + local.get $9 i32.store - local.get $11 + local.get $9 if - local.get $0 - local.get $11 + local.get $12 + local.get $9 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $11 + local.get $12 + local.get $9 i32.store offset=4 - local.get $0 - local.get $10 + local.get $12 + local.get $8 i32.store offset=8 - local.get $0 - local.get $9 + local.get $12 + local.get $7 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 - local.get $0 - local.tee $5 + local.get $2 + local.get $12 i32.store loop $for-loop|0 - local.get $4 - local.get $8 + local.get $1 + local.get $6 i32.lt_s if - local.get $4 + local.get $1 i32.const 12 i32.mul - local.get $7 + local.get $5 i32.add - local.tee $0 + local.tee $2 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $5 + local.get $12 + local.get $3 local.get $2 - local.get $0 i32.load8_u call $~lib/array/Array#__set - local.get $2 + local.get $3 i32.const 1 i32.add - local.set $2 + local.set $3 end - local.get $4 + local.get $1 i32.const 1 i32.add - local.set $4 + local.set $1 br $for-loop|0 end end - local.get $5 - local.get $2 + local.get $12 + local.get $3 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $5 - local.get $2 + local.get $12 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $12 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $11 call $~lib/map/Map#values - local.tee $10 + local.tee $13 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -6264,61 +6260,61 @@ i32.const 24 i32.const 10 call $~lib/rt/itcms/__new - local.tee $13 + local.tee $14 i32.store - local.get $13 + local.get $14 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $2 i32.store local.get $2 if - local.get $13 + local.get $14 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $13 + local.get $14 i32.const 3 i32.store offset=4 - local.get $13 + local.get $14 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $2 i32.store offset=8 local.get $2 if - local.get $13 + local.get $14 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $13 + local.get $14 i32.const 4 i32.store offset=12 - local.get $13 + local.get $14 i32.const 0 i32.store offset=16 - local.get $13 + local.get $14 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $13 + local.get $14 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $8 + local.tee $15 i32.store offset=16 loop $for-loop|4 - local.get $5 + local.get $12 i32.load offset=12 - local.get $1 + local.get $0 i32.gt_s if - local.get $5 + local.get $12 i32.load offset=12 - local.get $1 + local.get $0 i32.le_u if i32.const 1248 @@ -6328,23 +6324,23 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $5 + local.get $0 + local.get $12 i32.load offset=4 i32.add i32.load8_u local.set $2 - local.get $10 - local.get $1 + local.get $13 + local.get $0 call $~lib/array/Array#__get - local.set $9 + local.set $16 block $__inlined_func$~lib/map/Map#find10 (result i32) - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 local.get $2 - local.tee $0 + local.tee $1 i32.const 255 i32.and i32.const -1028477379 @@ -6355,56 +6351,56 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $3 i32.const 15 i32.shr_u - local.get $4 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $3 i32.const 13 i32.shr_u - local.get $4 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $3 i32.const 16 i32.shr_u - local.get $4 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $3 loop $while-continue|011 - local.get $4 + local.get $3 if - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=8 - local.tee $6 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 i32.load8_u - local.get $0 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find10 drop - local.get $6 + local.get $4 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|011 end end @@ -6420,14 +6416,14 @@ unreachable end block $__inlined_func$~lib/map/Map#find13 (result i32) - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $9 + local.get $16 i32.const 20 i32.sub - local.tee $4 + local.tee $3 i32.const 255 i32.and i32.const -1028477379 @@ -6438,56 +6434,56 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 loop $while-continue|014 - local.get $0 + local.get $1 if - local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.load offset=8 - local.tee $6 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load8_u - local.get $4 + local.get $3 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find13 drop - local.get $6 + local.get $4 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|014 end end @@ -6502,7 +6498,6 @@ call $~lib/builtins/abort unreachable end - local.get $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -6514,8 +6509,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.set $6 - local.get $13 + local.get $2 + local.set $3 + local.get $14 i32.load local.get $2 i32.const -1028477379 @@ -6526,40 +6522,39 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.const 16 i32.shr_u i32.xor - local.tee $11 - local.get $13 + local.tee $6 + local.get $14 i32.load offset=4 i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $1 block $__inlined_func$~lib/map/Map#find loop $while-continue|015 - local.get $4 + local.get $1 if - local.get $4 - local.tee $0 + local.get $1 i32.load offset=4 local.tee $4 i32.const 1 @@ -6567,9 +6562,9 @@ if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load8_u - local.get $6 + local.get $3 i32.const 255 i32.and i32.eq @@ -6578,28 +6573,28 @@ local.get $4 i32.const -2 i32.and - local.set $4 + local.set $1 br $while-continue|015 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if - local.get $0 - local.get $6 + local.get $1 + local.get $3 i32.store8 offset=1 else - local.get $13 + local.get $14 i32.load offset=16 - local.get $13 + local.get $14 i32.load offset=12 i32.eq if - local.get $13 + local.get $14 i32.load offset=20 - local.get $13 + local.get $14 i32.load offset=12 i32.const 3 i32.mul @@ -6607,17 +6602,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $13 + local.get $14 i32.load offset=4 else - local.get $13 + local.get $14 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $14 + local.set $8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -6627,63 +6622,63 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 - local.get $14 + local.get $1 + local.get $8 i32.const 1 i32.add - local.tee $0 + local.tee $1 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $15 + local.tee $9 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $12 + local.tee $7 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $4 i32.store offset=4 - local.get $13 + local.get $14 i32.load offset=8 - local.tee $7 - local.get $13 + local.tee $5 + local.get $14 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $16 + local.set $10 local.get $4 - local.set $0 + local.set $1 loop $while-continue|0216 - local.get $7 - local.get $16 + local.get $5 + local.get $10 i32.ne if - local.get $7 + local.get $5 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $0 - local.get $7 + local.get $1 + local.get $5 i32.load8_u local.tee $17 i32.store8 - local.get $0 - local.get $7 + local.get $1 + local.get $5 i32.load8_u offset=1 i32.store8 offset=1 - local.get $0 + local.get $1 local.get $17 i32.const -1028477379 i32.mul @@ -6712,56 +6707,56 @@ i32.const 16 i32.shr_u i32.xor - local.get $14 + local.get $8 i32.and i32.const 2 i32.shl - local.get $15 + local.get $9 i32.add local.tee $17 i32.load i32.store offset=4 local.get $17 - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.const 8 i32.add - local.set $0 + local.set $1 end - local.get $7 + local.get $5 i32.const 8 i32.add - local.set $7 + local.set $5 br $while-continue|0216 end end - local.get $13 - local.get $15 + local.get $14 + local.get $9 i32.store - local.get $15 + local.get $9 if - local.get $13 - local.get $15 + local.get $14 + local.get $9 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $13 local.get $14 + local.get $8 i32.store offset=4 - local.get $13 + local.get $14 local.get $4 i32.store offset=8 local.get $4 if - local.get $13 + local.get $14 local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $13 - local.get $12 + local.get $14 + local.get $7 i32.store offset=12 - local.get $13 - local.get $13 + local.get $14 + local.get $14 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -6770,12 +6765,12 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $13 + local.get $14 i32.load offset=8 - local.tee $0 + local.tee $1 i32.store - local.get $13 - local.get $13 + local.get $14 + local.get $14 i32.load offset=16 local.tee $4 i32.const 1 @@ -6784,26 +6779,26 @@ local.get $4 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add - local.tee $0 + local.tee $1 local.get $2 i32.store8 - local.get $0 - local.get $6 + local.get $1 + local.get $3 i32.store8 offset=1 - local.get $13 - local.get $13 + local.get $14 + local.get $14 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $0 - local.get $13 + local.get $1 + local.get $14 i32.load - local.get $13 + local.get $14 i32.load offset=4 - local.get $11 + local.get $6 i32.and i32.const 2 i32.shl @@ -6812,28 +6807,28 @@ i32.load i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $9 + local.get $15 + local.get $16 i32.const 20 i32.sub - local.tee $0 - local.get $0 - call $~lib/map/Map#set + local.tee $1 local.get $1 + call $~lib/map/Map#set + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|4 end end - local.get $13 + local.get $14 i32.load offset=20 i32.const 100 i32.ne @@ -6845,7 +6840,7 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $15 i32.load offset=20 i32.const 100 i32.ne @@ -6858,21 +6853,21 @@ unreachable end i32.const 0 - local.set $1 + local.set $0 loop $for-loop|6 - local.get $1 + local.get $0 i32.const 255 i32.and i32.const 50 i32.lt_u if block $__inlined_func$~lib/map/Map#find18 (result i32) - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 255 i32.and i32.const -1028477379 @@ -6914,7 +6909,7 @@ local.get $2 local.get $2 i32.load offset=8 - local.tee $4 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -6922,14 +6917,14 @@ else local.get $2 i32.load8_u - local.get $0 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find18 drop - local.get $4 + local.get $3 i32.const -2 i32.and local.set $2 @@ -6947,10 +6942,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $1 + local.get $11 + local.get $0 call $~lib/map/Map#get - local.get $1 + local.get $0 i32.const 255 i32.and i32.const 20 @@ -6964,16 +6959,16 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $1 + local.get $11 + local.get $0 call $~lib/map/Map#delete block $__inlined_func$~lib/map/Map#find21 (result i32) - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 255 i32.and i32.const -1028477379 @@ -7015,7 +7010,7 @@ local.get $2 local.get $2 i32.load offset=8 - local.tee $4 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -7023,14 +7018,14 @@ else local.get $2 i32.load8_u - local.get $0 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find21 drop - local.get $4 + local.get $3 i32.const -2 i32.and local.set $2 @@ -7047,14 +7042,14 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|6 end end - local.get $3 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -7067,21 +7062,21 @@ unreachable end i32.const 0 - local.set $1 + local.set $0 loop $for-loop|8 - local.get $1 + local.get $0 i32.const 255 i32.and i32.const 50 i32.lt_u if block $__inlined_func$~lib/map/Map#find24 (result i32) - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 255 i32.and i32.const -1028477379 @@ -7123,7 +7118,7 @@ local.get $2 local.get $2 i32.load offset=8 - local.tee $4 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -7131,14 +7126,14 @@ else local.get $2 i32.load8_u - local.get $0 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find24 drop - local.get $4 + local.get $3 i32.const -2 i32.and local.set $2 @@ -7155,21 +7150,21 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $1 - local.get $1 + local.get $11 + local.get $0 + local.get $0 i32.const 255 i32.and i32.const 10 i32.add call $~lib/map/Map#set block $__inlined_func$~lib/map/Map#find27 (result i32) - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 255 i32.and i32.const -1028477379 @@ -7211,7 +7206,7 @@ local.get $2 local.get $2 i32.load offset=8 - local.tee $4 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -7219,14 +7214,14 @@ else local.get $2 i32.load8_u - local.get $0 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find27 drop - local.get $4 + local.get $3 i32.const -2 i32.and local.set $2 @@ -7244,16 +7239,16 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $1 + local.get $11 + local.get $0 call $~lib/map/Map#delete block $__inlined_func$~lib/map/Map#find30 (result i32) - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 255 i32.and i32.const -1028477379 @@ -7295,7 +7290,7 @@ local.get $2 local.get $2 i32.load offset=8 - local.tee $4 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -7303,14 +7298,14 @@ else local.get $2 i32.load8_u - local.get $0 + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find30 drop - local.get $4 + local.get $3 i32.const -2 i32.and local.set $2 @@ -7327,14 +7322,14 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|8 end end - local.get $3 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -7346,9 +7341,9 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $11 call $~lib/map/Map#clear - local.get $3 + local.get $11 i32.load offset=20 if i32.const 0 @@ -7414,7 +7409,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -7428,12 +7423,12 @@ i32.const 12 i32.mul i32.add - local.set $6 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 local.get $5 - local.get $6 + local.get $7 i32.ne if local.get $5 @@ -7527,7 +7522,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -7817,16 +7812,16 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i64.const 0 i64.store - local.get $4 + local.get $3 i64.const 0 i64.store offset=8 - local.get $4 + local.get $3 i32.const 0 i32.store offset=16 - local.get $4 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -7835,67 +7830,67 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $5 i32.const 0 i32.store - local.get $2 + local.get $5 i32.const 24 i32.const 11 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $11 i32.store - local.get $2 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $5 i32.store - local.get $6 + local.get $5 if - local.get $2 - local.get $6 + local.get $11 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 + local.get $11 i32.const 3 i32.store offset=4 - local.get $2 + local.get $11 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $5 i32.store offset=8 - local.get $6 + local.get $5 if - local.get $2 - local.get $6 + local.get $11 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 + local.get $11 i32.const 4 i32.store offset=12 - local.get $2 + local.get $11 i32.const 0 i32.store offset=16 - local.get $2 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 - local.get $2 + local.get $3 + local.get $11 i32.store loop $for-loop|1 - local.get $5 + local.get $4 i32.extend16_s i32.const 100 i32.lt_s if - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 - local.get $5 + local.get $4 i32.extend16_s i32.const -1028477379 i32.mul @@ -7905,22 +7900,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u i32.xor @@ -7929,38 +7924,38 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 i32.load16_u - local.get $5 + local.get $4 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $6 + local.get $5 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|0 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 if i32.const 0 i32.const 1568 @@ -7969,19 +7964,19 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $5 - local.get $5 + local.get $11 + local.get $4 + local.get $4 i32.extend16_s - local.tee $4 + local.tee $3 i32.const 10 i32.add call $~lib/map/Map#set - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761395 @@ -7990,22 +7985,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u i32.xor @@ -8014,38 +8009,38 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 i32.load16_u - local.get $5 + local.get $4 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $6 + local.get $5 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|02 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 i32.eqz if i32.const 0 @@ -8055,10 +8050,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $5 + local.get $11 + local.get $4 call $~lib/map/Map#get - local.get $5 + local.get $4 i32.extend16_s i32.const 10 i32.add @@ -8071,14 +8066,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $4 i32.const 1 i32.add - local.set $5 + local.set $4 br $for-loop|1 end end - local.get $2 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -8091,18 +8086,18 @@ unreachable end i32.const 0 - local.set $5 + local.set $4 loop $for-loop|3 - local.get $5 + local.get $4 i32.extend16_s i32.const 100 i32.lt_s if - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 - local.get $5 + local.get $4 i32.extend16_s i32.const -1028477379 i32.mul @@ -8112,22 +8107,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u i32.xor @@ -8136,38 +8131,38 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 i32.load16_u - local.get $5 + local.get $4 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $6 + local.get $5 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|05 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 i32.eqz if i32.const 0 @@ -8177,10 +8172,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $5 + local.get $11 + local.get $4 call $~lib/map/Map#get - local.get $5 + local.get $4 i32.extend16_s i32.const 10 i32.add @@ -8193,19 +8188,19 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $5 - local.get $5 + local.get $11 + local.get $4 + local.get $4 i32.extend16_s - local.tee $4 + local.tee $3 i32.const 20 i32.add call $~lib/map/Map#set - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 - local.get $4 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761395 @@ -8214,22 +8209,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u i32.xor @@ -8238,38 +8233,38 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 i32.load16_u - local.get $5 + local.get $4 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $6 + local.get $5 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|08 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 i32.eqz if i32.const 0 @@ -8279,10 +8274,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $5 + local.get $11 + local.get $4 call $~lib/map/Map#get - local.get $5 + local.get $4 i32.extend16_s i32.const 20 i32.add @@ -8295,14 +8290,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $4 i32.const 1 i32.add - local.set $5 + local.set $4 br $for-loop|3 end end - local.get $2 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -8315,8 +8310,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -8325,17 +8320,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $3 i32.const 0 i32.store - local.get $2 + local.get $11 i32.load offset=8 - local.set $7 - local.get $2 + local.set $5 + local.get $11 i32.load offset=16 - local.tee $8 - local.set $9 - local.get $6 + local.tee $6 + local.set $7 + local.get $3 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -8344,28 +8339,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $8 i64.const 0 i64.store - local.get $4 + local.get $8 i32.const 16 i32.const 12 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $12 i32.store - local.get $4 + local.get $12 i32.const 0 i32.store - local.get $4 + local.get $12 i32.const 0 i32.store offset=4 - local.get $4 + local.get $12 i32.const 0 i32.store offset=8 - local.get $4 + local.get $12 i32.const 0 i32.store offset=12 - local.get $9 + local.get $7 i32.const 536870910 i32.gt_u if @@ -8377,66 +8372,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $7 i32.const 8 - local.get $9 + local.get $7 i32.const 8 i32.gt_u select i32.const 1 i32.shl - local.tee $10 + local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $9 i32.store offset=4 - local.get $11 - local.get $10 + local.get $9 + local.get $8 call $~lib/memory/memory.fill - local.get $4 - local.get $11 + local.get $12 + local.get $9 i32.store - local.get $11 + local.get $9 if - local.get $4 - local.get $11 + local.get $12 + local.get $9 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $11 + local.get $12 + local.get $9 i32.store offset=4 - local.get $4 - local.get $10 + local.get $12 + local.get $8 i32.store offset=8 - local.get $4 - local.get $9 + local.get $12 + local.get $7 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 - local.get $4 + local.get $3 + local.get $12 i32.store loop $for-loop|0 - local.get $3 - local.get $8 + local.get $2 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 i32.const 12 i32.mul - local.get $7 + local.get $5 i32.add - local.tee $6 + local.tee $3 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $4 + local.get $12 local.get $1 - local.get $6 + local.get $3 i32.load16_s call $~lib/array/Array#__set local.get $1 @@ -8444,31 +8439,31 @@ i32.add local.set $1 end - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 br $for-loop|0 end end - local.get $4 + local.get $12 local.get $1 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity - local.get $4 + local.get $12 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $12 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $11 call $~lib/map/Map#values - local.tee $10 + local.tee $13 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -8480,68 +8475,68 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store - local.get $3 + local.get $2 i32.const 24 i32.const 13 call $~lib/rt/itcms/__new - local.tee $13 + local.tee $14 i32.store - local.get $13 + local.get $14 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 if - local.get $13 - local.get $3 + local.get $14 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $13 + local.get $14 i32.const 3 i32.store offset=4 - local.get $13 + local.get $14 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $2 i32.store offset=8 - local.get $3 + local.get $2 if - local.get $13 - local.get $3 + local.get $14 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $13 + local.get $14 i32.const 4 i32.store offset=12 - local.get $13 + local.get $14 i32.const 0 i32.store offset=16 - local.get $13 + local.get $14 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $13 + local.get $14 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $8 + local.tee $15 i32.store offset=16 loop $for-loop|4 - local.get $4 + local.get $12 i32.load offset=12 local.get $0 i32.gt_s if local.get $0 - local.tee $5 - local.get $4 + local.tee $3 + local.get $12 i32.load offset=12 i32.ge_u if @@ -8552,23 +8547,23 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $12 i32.load offset=4 - local.get $5 + local.get $3 i32.const 1 i32.shl i32.add i32.load16_s - local.set $6 - local.get $10 - local.get $5 + local.set $4 + local.get $13 + local.get $3 call $~lib/array/Array#__get - local.set $9 - local.get $2 + local.set $16 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 - local.get $6 + local.get $4 local.tee $1 i32.extend16_s i32.const -1028477379 @@ -8610,7 +8605,7 @@ if local.get $0 i32.load offset=8 - local.tee $3 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -8624,7 +8619,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find12 - local.get $3 + local.get $2 i32.const -2 i32.and local.set $0 @@ -8644,14 +8639,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 - local.get $9 + local.get $16 i32.const 20 i32.sub - local.tee $3 + local.tee $2 i32.extend16_s i32.const -1028477379 i32.mul @@ -8692,7 +8687,7 @@ if local.get $0 i32.load offset=8 - local.tee $7 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -8700,13 +8695,13 @@ else local.get $0 i32.load16_u - local.get $3 + local.get $2 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find15 - local.get $7 + local.get $5 i32.const -2 i32.and local.set $0 @@ -8737,9 +8732,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $13 + local.get $14 i32.load - local.get $6 + local.get $4 i32.extend16_s i32.const -1028477379 i32.mul @@ -8768,23 +8763,23 @@ i32.const 16 i32.shr_u i32.xor - local.tee $11 - local.get $13 + local.tee $6 + local.get $14 i32.load offset=4 i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/map/Map#find loop $while-continue|017 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 local.tee $0 i32.load offset=4 - local.tee $3 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -8798,10 +8793,10 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $3 + local.get $2 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|017 end end @@ -8814,15 +8809,15 @@ local.get $1 i32.store16 offset=2 else - local.get $13 + local.get $14 i32.load offset=16 - local.get $13 + local.get $14 i32.load offset=12 i32.eq if - local.get $13 + local.get $14 i32.load offset=20 - local.get $13 + local.get $14 i32.load offset=12 i32.const 3 i32.mul @@ -8830,17 +8825,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $13 + local.get $14 i32.load offset=4 else - local.get $13 + local.get $14 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $14 + local.set $8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -8854,14 +8849,14 @@ i64.const 0 i64.store local.get $0 - local.get $14 + local.get $8 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $15 + local.tee $9 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -8869,41 +8864,41 @@ i32.shl i32.const 3 i32.div_s - local.tee $12 + local.tee $7 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $2 i32.store offset=4 - local.get $13 + local.get $14 i32.load offset=8 - local.tee $7 - local.get $13 + local.tee $5 + local.get $14 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $16 - local.get $3 + local.set $10 + local.get $2 local.set $0 loop $while-continue|018 - local.get $7 - local.get $16 + local.get $5 + local.get $10 i32.ne if - local.get $7 + local.get $5 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $7 + local.get $5 i32.load16_s local.tee $17 i32.store16 local.get $0 - local.get $7 + local.get $5 i32.load16_s offset=2 i32.store16 offset=2 local.get $0 @@ -8936,11 +8931,11 @@ i32.const 16 i32.shr_u i32.xor - local.get $14 + local.get $8 i32.and i32.const 2 i32.shl - local.get $15 + local.get $9 i32.add local.tee $17 i32.load @@ -8953,39 +8948,39 @@ i32.add local.set $0 end - local.get $7 + local.get $5 i32.const 8 i32.add - local.set $7 + local.set $5 br $while-continue|018 end end - local.get $13 - local.get $15 + local.get $14 + local.get $9 i32.store - local.get $15 + local.get $9 if - local.get $13 - local.get $15 + local.get $14 + local.get $9 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $13 local.get $14 + local.get $8 i32.store offset=4 - local.get $13 - local.get $3 + local.get $14 + local.get $2 i32.store offset=8 - local.get $3 + local.get $2 if - local.get $13 - local.get $3 + local.get $14 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $13 - local.get $12 + local.get $14 + local.get $7 i32.store offset=12 - local.get $13 - local.get $13 + local.get $14 + local.get $14 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -8994,40 +8989,40 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $13 + local.get $14 i32.load offset=8 local.tee $0 i32.store - local.get $13 - local.get $13 + local.get $14 + local.get $14 i32.load offset=16 - local.tee $3 + local.tee $2 i32.const 1 i32.add i32.store offset=16 - local.get $3 + local.get $2 i32.const 3 i32.shl local.get $0 i32.add local.tee $0 - local.get $6 + local.get $4 i32.store16 local.get $0 local.get $1 i32.store16 offset=2 - local.get $13 - local.get $13 + local.get $14 + local.get $14 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $13 + local.get $14 i32.load - local.get $13 + local.get $14 i32.load offset=4 - local.get $11 + local.get $6 i32.and i32.const 2 i32.shl @@ -9043,21 +9038,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $9 + local.get $15 + local.get $16 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $5 + local.get $3 i32.const 1 i32.add local.set $0 br $for-loop|4 end end - local.get $13 + local.get $14 i32.load offset=20 i32.const 100 i32.ne @@ -9069,7 +9064,7 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $15 i32.load offset=20 i32.const 100 i32.ne @@ -9089,9 +9084,9 @@ i32.const 50 i32.lt_s if - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 local.get $0 i32.extend16_s @@ -9127,12 +9122,12 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find20 loop $while-continue|021 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 local.tee $1 i32.const 1 @@ -9140,7 +9135,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $3 i32.load16_u local.get $0 i32.const 65535 @@ -9151,14 +9146,14 @@ local.get $1 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|021 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 i32.eqz if i32.const 0 @@ -9168,7 +9163,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 local.get $0 call $~lib/map/Map#get local.get $0 @@ -9184,12 +9179,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 local.get $0 call $~lib/map/Map#delete - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 local.get $0 i32.extend16_s @@ -9225,12 +9220,12 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find23 loop $while-continue|024 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 local.tee $1 i32.const 1 @@ -9238,7 +9233,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $3 i32.load16_u local.get $0 i32.const 65535 @@ -9249,14 +9244,14 @@ local.get $1 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|024 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 if i32.const 0 i32.const 1568 @@ -9272,7 +9267,7 @@ br $for-loop|6 end end - local.get $2 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -9292,9 +9287,9 @@ i32.const 50 i32.lt_s if - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 local.get $0 i32.extend16_s @@ -9330,12 +9325,12 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find26 loop $while-continue|027 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 local.tee $1 i32.const 1 @@ -9343,7 +9338,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $3 i32.load16_u local.get $0 i32.const 65535 @@ -9354,14 +9349,14 @@ local.get $1 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|027 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 if i32.const 0 i32.const 1568 @@ -9370,7 +9365,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 local.get $0 local.get $0 i32.extend16_s @@ -9378,9 +9373,9 @@ i32.const 10 i32.add call $~lib/map/Map#set - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -9415,12 +9410,12 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find29 loop $while-continue|030 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 local.tee $1 i32.const 1 @@ -9428,7 +9423,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $3 i32.load16_u local.get $0 i32.const 65535 @@ -9439,14 +9434,14 @@ local.get $1 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|030 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 i32.eqz if i32.const 0 @@ -9456,12 +9451,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 local.get $0 call $~lib/map/Map#delete - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 local.get $0 i32.extend16_s @@ -9497,12 +9492,12 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find32 loop $while-continue|033 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 local.tee $1 i32.const 1 @@ -9510,7 +9505,7 @@ if (result i32) i32.const 0 else - local.get $4 + local.get $3 i32.load16_u local.get $0 i32.const 65535 @@ -9521,14 +9516,14 @@ local.get $1 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|033 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 if i32.const 0 i32.const 1568 @@ -9544,7 +9539,7 @@ br $for-loop|8 end end - local.get $2 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -9556,9 +9551,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 call $~lib/map/Map#clear - local.get $2 + local.get $11 i32.load offset=20 if i32.const 0 @@ -9624,7 +9619,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -9638,12 +9633,12 @@ i32.const 12 i32.mul i32.add - local.set $6 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 local.get $5 - local.get $6 + local.get $7 i32.ne if local.get $5 @@ -9738,7 +9733,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -9991,16 +9986,16 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $4 i64.const 0 i64.store - local.get $5 + local.get $4 i64.const 0 i64.store offset=8 - local.get $5 + local.get $4 i32.const 0 i32.store offset=16 - local.get $5 + local.get $4 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -10009,70 +10004,70 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $5 i32.const 0 i32.store - local.get $3 + local.get $5 i32.const 24 i32.const 14 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $11 i32.store - local.get $3 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $5 i32.store - local.get $6 + local.get $5 if - local.get $3 - local.get $6 + local.get $11 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 + local.get $11 i32.const 3 i32.store offset=4 - local.get $3 + local.get $11 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $5 i32.store offset=8 - local.get $6 + local.get $5 if - local.get $3 - local.get $6 + local.get $11 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 + local.get $11 i32.const 4 i32.store offset=12 - local.get $3 + local.get $11 i32.const 0 i32.store offset=16 - local.get $3 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 - local.get $3 + local.get $4 + local.get $11 i32.store loop $for-loop|1 - local.get $0 + local.get $2 i32.const 65535 i32.and i32.const 100 i32.lt_u if block $__inlined_func$~lib/map/Map#find (result i32) - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $0 - local.tee $5 + local.get $2 + local.tee $4 i32.const 65535 i32.and i32.const -1028477379 @@ -10083,56 +10078,56 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $6 + local.tee $5 i32.const 15 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $6 + local.tee $5 i32.const 13 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $6 + local.tee $5 i32.const 16 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $5 loop $while-continue|0 - local.get $6 + local.get $5 if - local.get $6 - local.get $6 + local.get $5 + local.get $5 i32.load offset=8 - local.tee $7 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 - i32.load16_u local.get $5 + i32.load16_u + local.get $4 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find drop - local.get $7 + local.get $6 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|0 end end @@ -10146,21 +10141,21 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $0 - local.get $0 + local.get $11 + local.get $2 + local.get $2 i32.const 65535 i32.and i32.const 10 i32.add call $~lib/map/Map#set block $__inlined_func$~lib/map/Map#find1 (result i32) - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $0 - local.tee $5 + local.get $2 + local.tee $4 i32.const 65535 i32.and i32.const -1028477379 @@ -10171,56 +10166,56 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $6 + local.tee $5 i32.const 15 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $6 + local.tee $5 i32.const 13 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $6 + local.tee $5 i32.const 16 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $5 loop $while-continue|02 - local.get $6 + local.get $5 if - local.get $6 - local.get $6 + local.get $5 + local.get $5 i32.load offset=8 - local.tee $7 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 - i32.load16_u local.get $5 + i32.load16_u + local.get $4 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find1 drop - local.get $7 + local.get $6 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|02 end end @@ -10235,10 +10230,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $0 + local.get $11 + local.get $2 call $~lib/map/Map#get - local.get $0 + local.get $2 i32.const 65535 i32.and i32.const 10 @@ -10252,14 +10247,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|1 end end - local.get $3 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -10272,21 +10267,21 @@ unreachable end i32.const 0 - local.set $0 + local.set $2 loop $for-loop|3 - local.get $0 + local.get $2 i32.const 65535 i32.and i32.const 100 i32.lt_u if block $__inlined_func$~lib/map/Map#find4 (result i32) - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $0 - local.tee $5 + local.get $2 + local.tee $4 i32.const 65535 i32.and i32.const -1028477379 @@ -10297,56 +10292,56 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $6 + local.tee $5 i32.const 15 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $6 + local.tee $5 i32.const 13 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $6 + local.tee $5 i32.const 16 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $5 loop $while-continue|05 - local.get $6 + local.get $5 if - local.get $6 - local.get $6 + local.get $5 + local.get $5 i32.load offset=8 - local.tee $7 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 - i32.load16_u local.get $5 + i32.load16_u + local.get $4 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find4 drop - local.get $7 + local.get $6 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|05 end end @@ -10361,10 +10356,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $0 + local.get $11 + local.get $2 call $~lib/map/Map#get - local.get $0 + local.get $2 i32.const 65535 i32.and i32.const 10 @@ -10378,21 +10373,21 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $0 - local.get $0 + local.get $11 + local.get $2 + local.get $2 i32.const 65535 i32.and i32.const 20 i32.add call $~lib/map/Map#set block $__inlined_func$~lib/map/Map#find7 (result i32) - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $0 - local.tee $5 + local.get $2 + local.tee $4 i32.const 65535 i32.and i32.const -1028477379 @@ -10403,56 +10398,56 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $6 + local.tee $5 i32.const 15 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $6 + local.tee $5 i32.const 13 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $6 + local.tee $5 i32.const 16 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $5 loop $while-continue|08 - local.get $6 + local.get $5 if - local.get $6 - local.get $6 + local.get $5 + local.get $5 i32.load offset=8 - local.tee $7 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 - i32.load16_u local.get $5 + i32.load16_u + local.get $4 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find7 drop - local.get $7 + local.get $6 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|08 end end @@ -10467,10 +10462,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $0 + local.get $11 + local.get $2 call $~lib/map/Map#get - local.get $0 + local.get $2 i32.const 65535 i32.and i32.const 20 @@ -10484,14 +10479,14 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|3 end end - local.get $3 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -10504,8 +10499,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $0 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -10514,17 +10509,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $2 i32.const 0 i32.store - local.get $3 + local.get $11 i32.load offset=8 - local.set $7 - local.get $3 + local.set $5 + local.get $11 i32.load offset=16 - local.tee $8 - local.set $9 - local.get $5 + local.tee $6 + local.set $7 + local.get $2 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -10533,28 +10528,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $8 i64.const 0 i64.store - local.get $0 + local.get $8 i32.const 16 i32.const 15 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $12 i32.store - local.get $0 + local.get $12 i32.const 0 i32.store - local.get $0 + local.get $12 i32.const 0 i32.store offset=4 - local.get $0 + local.get $12 i32.const 0 i32.store offset=8 - local.get $0 + local.get $12 i32.const 0 i32.store offset=12 - local.get $9 + local.get $7 i32.const 536870910 i32.gt_u if @@ -10566,99 +10561,98 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $7 i32.const 8 - local.get $9 + local.get $7 i32.const 8 i32.gt_u select i32.const 1 i32.shl - local.tee $10 + local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $9 i32.store offset=4 - local.get $11 - local.get $10 + local.get $9 + local.get $8 call $~lib/memory/memory.fill - local.get $0 - local.get $11 + local.get $12 + local.get $9 i32.store - local.get $11 + local.get $9 if - local.get $0 - local.get $11 + local.get $12 + local.get $9 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $11 + local.get $12 + local.get $9 i32.store offset=4 - local.get $0 - local.get $10 + local.get $12 + local.get $8 i32.store offset=8 - local.get $0 - local.get $9 + local.get $12 + local.get $7 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 - local.get $0 - local.tee $5 + local.get $2 + local.get $12 i32.store loop $for-loop|0 - local.get $4 - local.get $8 + local.get $1 + local.get $6 i32.lt_s if - local.get $4 + local.get $1 i32.const 12 i32.mul - local.get $7 + local.get $5 i32.add - local.tee $0 + local.tee $2 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $5 + local.get $12 + local.get $3 local.get $2 - local.get $0 i32.load16_u call $~lib/array/Array#__set - local.get $2 + local.get $3 i32.const 1 i32.add - local.set $2 + local.set $3 end - local.get $4 + local.get $1 i32.const 1 i32.add - local.set $4 + local.set $1 br $for-loop|0 end end - local.get $5 - local.get $2 + local.get $12 + local.get $3 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity - local.get $5 - local.get $2 + local.get $12 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $12 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $11 call $~lib/map/Map#values - local.tee $10 + local.tee $13 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -10677,61 +10671,61 @@ i32.const 24 i32.const 16 call $~lib/rt/itcms/__new - local.tee $13 + local.tee $14 i32.store - local.get $13 + local.get $14 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $2 i32.store local.get $2 if - local.get $13 + local.get $14 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $13 + local.get $14 i32.const 3 i32.store offset=4 - local.get $13 + local.get $14 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $2 i32.store offset=8 local.get $2 if - local.get $13 + local.get $14 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $13 + local.get $14 i32.const 4 i32.store offset=12 - local.get $13 + local.get $14 i32.const 0 i32.store offset=16 - local.get $13 + local.get $14 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $13 + local.get $14 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $8 + local.tee $15 i32.store offset=16 loop $for-loop|4 - local.get $5 + local.get $12 i32.load offset=12 - local.get $1 + local.get $0 i32.gt_s if - local.get $5 + local.get $12 i32.load offset=12 - local.get $1 + local.get $0 i32.le_u if i32.const 1248 @@ -10741,25 +10735,25 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $12 i32.load offset=4 - local.get $1 + local.get $0 i32.const 1 i32.shl i32.add i32.load16_u local.set $2 - local.get $10 - local.get $1 + local.get $13 + local.get $0 call $~lib/array/Array#__get - local.set $9 + local.set $16 block $__inlined_func$~lib/map/Map#find10 (result i32) - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 local.get $2 - local.tee $0 + local.tee $1 i32.const 65535 i32.and i32.const -1028477379 @@ -10770,56 +10764,56 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $3 i32.const 15 i32.shr_u - local.get $4 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $3 i32.const 13 i32.shr_u - local.get $4 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $3 i32.const 16 i32.shr_u - local.get $4 + local.get $3 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $3 loop $while-continue|011 - local.get $4 + local.get $3 if - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=8 - local.tee $6 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 i32.load16_u - local.get $0 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find10 drop - local.get $6 + local.get $4 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|011 end end @@ -10835,14 +10829,14 @@ unreachable end block $__inlined_func$~lib/map/Map#find13 (result i32) - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $9 + local.get $16 i32.const 20 i32.sub - local.tee $4 + local.tee $3 i32.const 65535 i32.and i32.const -1028477379 @@ -10853,56 +10847,56 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 + local.tee $1 i32.const 15 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $0 + local.tee $1 i32.const 13 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $0 + local.tee $1 i32.const 16 i32.shr_u - local.get $0 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $0 + local.set $1 loop $while-continue|014 - local.get $0 + local.get $1 if - local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.load offset=8 - local.tee $6 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load16_u - local.get $4 + local.get $3 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find13 drop - local.get $6 + local.get $4 i32.const -2 i32.and - local.set $0 + local.set $1 br $while-continue|014 end end @@ -10917,7 +10911,6 @@ call $~lib/builtins/abort unreachable end - local.get $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -10929,8 +10922,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.set $6 - local.get $13 + local.get $2 + local.set $3 + local.get $14 i32.load local.get $2 i32.const -1028477379 @@ -10941,40 +10935,39 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.const 16 i32.shr_u i32.xor - local.tee $11 - local.get $13 + local.tee $6 + local.get $14 i32.load offset=4 i32.and i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $1 block $__inlined_func$~lib/map/Map#find loop $while-continue|015 - local.get $4 + local.get $1 if - local.get $4 - local.tee $0 + local.get $1 i32.load offset=4 local.tee $4 i32.const 1 @@ -10982,9 +10975,9 @@ if (result i32) i32.const 0 else - local.get $0 + local.get $1 i32.load16_u - local.get $6 + local.get $3 i32.const 65535 i32.and i32.eq @@ -10993,28 +10986,28 @@ local.get $4 i32.const -2 i32.and - local.set $4 + local.set $1 br $while-continue|015 end end i32.const 0 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if - local.get $0 - local.get $6 + local.get $1 + local.get $3 i32.store16 offset=2 else - local.get $13 + local.get $14 i32.load offset=16 - local.get $13 + local.get $14 i32.load offset=12 i32.eq if - local.get $13 + local.get $14 i32.load offset=20 - local.get $13 + local.get $14 i32.load offset=12 i32.const 3 i32.mul @@ -11022,17 +11015,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $13 + local.get $14 i32.load offset=4 else - local.get $13 + local.get $14 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $14 + local.set $8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -11042,63 +11035,63 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 - local.get $14 + local.get $1 + local.get $8 i32.const 1 i32.add - local.tee $0 + local.tee $1 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $15 + local.tee $9 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 3 i32.shl i32.const 3 i32.div_s - local.tee $12 + local.tee $7 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor local.tee $4 i32.store offset=4 - local.get $13 + local.get $14 i32.load offset=8 - local.tee $7 - local.get $13 + local.tee $5 + local.get $14 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $16 + local.set $10 local.get $4 - local.set $0 + local.set $1 loop $while-continue|0216 - local.get $7 - local.get $16 + local.get $5 + local.get $10 i32.ne if - local.get $7 + local.get $5 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $0 - local.get $7 + local.get $1 + local.get $5 i32.load16_u local.tee $17 i32.store16 - local.get $0 - local.get $7 + local.get $1 + local.get $5 i32.load16_u offset=2 i32.store16 offset=2 - local.get $0 + local.get $1 local.get $17 i32.const -1028477379 i32.mul @@ -11127,56 +11120,56 @@ i32.const 16 i32.shr_u i32.xor - local.get $14 + local.get $8 i32.and i32.const 2 i32.shl - local.get $15 + local.get $9 i32.add local.tee $17 i32.load i32.store offset=4 local.get $17 - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.const 8 i32.add - local.set $0 + local.set $1 end - local.get $7 + local.get $5 i32.const 8 i32.add - local.set $7 + local.set $5 br $while-continue|0216 end end - local.get $13 - local.get $15 + local.get $14 + local.get $9 i32.store - local.get $15 + local.get $9 if - local.get $13 - local.get $15 + local.get $14 + local.get $9 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $13 local.get $14 + local.get $8 i32.store offset=4 - local.get $13 + local.get $14 local.get $4 i32.store offset=8 local.get $4 if - local.get $13 + local.get $14 local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $13 - local.get $12 + local.get $14 + local.get $7 i32.store offset=12 - local.get $13 - local.get $13 + local.get $14 + local.get $14 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -11185,12 +11178,12 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $13 + local.get $14 i32.load offset=8 - local.tee $0 + local.tee $1 i32.store - local.get $13 - local.get $13 + local.get $14 + local.get $14 i32.load offset=16 local.tee $4 i32.const 1 @@ -11199,26 +11192,26 @@ local.get $4 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add - local.tee $0 + local.tee $1 local.get $2 i32.store16 - local.get $0 - local.get $6 + local.get $1 + local.get $3 i32.store16 offset=2 - local.get $13 - local.get $13 + local.get $14 + local.get $14 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 - local.get $0 - local.get $13 + local.get $1 + local.get $14 i32.load - local.get $13 + local.get $14 i32.load offset=4 - local.get $11 + local.get $6 i32.and i32.const 2 i32.shl @@ -11227,28 +11220,28 @@ i32.load i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $9 + local.get $15 + local.get $16 i32.const 20 i32.sub - local.tee $0 - local.get $0 - call $~lib/map/Map#set + local.tee $1 local.get $1 + call $~lib/map/Map#set + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|4 end end - local.get $13 + local.get $14 i32.load offset=20 i32.const 100 i32.ne @@ -11260,7 +11253,7 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $15 i32.load offset=20 i32.const 100 i32.ne @@ -11273,21 +11266,21 @@ unreachable end i32.const 0 - local.set $1 + local.set $0 loop $for-loop|6 - local.get $1 + local.get $0 i32.const 65535 i32.and i32.const 50 i32.lt_u if block $__inlined_func$~lib/map/Map#find18 (result i32) - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 65535 i32.and i32.const -1028477379 @@ -11329,7 +11322,7 @@ local.get $2 local.get $2 i32.load offset=8 - local.tee $4 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -11337,14 +11330,14 @@ else local.get $2 i32.load16_u - local.get $0 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find18 drop - local.get $4 + local.get $3 i32.const -2 i32.and local.set $2 @@ -11362,10 +11355,10 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $1 + local.get $11 + local.get $0 call $~lib/map/Map#get - local.get $1 + local.get $0 i32.const 65535 i32.and i32.const 20 @@ -11379,16 +11372,16 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $1 + local.get $11 + local.get $0 call $~lib/map/Map#delete block $__inlined_func$~lib/map/Map#find21 (result i32) - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 65535 i32.and i32.const -1028477379 @@ -11430,7 +11423,7 @@ local.get $2 local.get $2 i32.load offset=8 - local.tee $4 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -11438,14 +11431,14 @@ else local.get $2 i32.load16_u - local.get $0 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find21 drop - local.get $4 + local.get $3 i32.const -2 i32.and local.set $2 @@ -11462,14 +11455,14 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|6 end end - local.get $3 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -11482,21 +11475,21 @@ unreachable end i32.const 0 - local.set $1 + local.set $0 loop $for-loop|8 - local.get $1 + local.get $0 i32.const 65535 i32.and i32.const 50 i32.lt_u if block $__inlined_func$~lib/map/Map#find24 (result i32) - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 65535 i32.and i32.const -1028477379 @@ -11538,7 +11531,7 @@ local.get $2 local.get $2 i32.load offset=8 - local.tee $4 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -11546,14 +11539,14 @@ else local.get $2 i32.load16_u - local.get $0 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find24 drop - local.get $4 + local.get $3 i32.const -2 i32.and local.set $2 @@ -11570,21 +11563,21 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $1 - local.get $1 + local.get $11 + local.get $0 + local.get $0 i32.const 65535 i32.and i32.const 10 i32.add call $~lib/map/Map#set block $__inlined_func$~lib/map/Map#find27 (result i32) - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 65535 i32.and i32.const -1028477379 @@ -11626,7 +11619,7 @@ local.get $2 local.get $2 i32.load offset=8 - local.tee $4 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -11634,14 +11627,14 @@ else local.get $2 i32.load16_u - local.get $0 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find27 drop - local.get $4 + local.get $3 i32.const -2 i32.and local.set $2 @@ -11659,16 +11652,16 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $1 + local.get $11 + local.get $0 call $~lib/map/Map#delete block $__inlined_func$~lib/map/Map#find30 (result i32) - local.get $3 + local.get $11 i32.load - local.get $3 + local.get $11 i32.load offset=4 - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 65535 i32.and i32.const -1028477379 @@ -11710,7 +11703,7 @@ local.get $2 local.get $2 i32.load offset=8 - local.tee $4 + local.tee $3 i32.const 1 i32.and if (result i32) @@ -11718,14 +11711,14 @@ else local.get $2 i32.load16_u - local.get $0 + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find30 drop - local.get $4 + local.get $3 i32.const -2 i32.and local.set $2 @@ -11742,14 +11735,14 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|8 end end - local.get $3 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -11761,9 +11754,9 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $11 call $~lib/map/Map#clear - local.get $3 + local.get $11 i32.load offset=20 if i32.const 0 @@ -12013,21 +12006,21 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i64.const 0 i64.store - local.get $3 + local.get $2 i64.const 0 i64.store offset=8 - local.get $3 + local.get $2 i32.const 0 i32.store offset=16 - local.get $3 + local.get $2 call $~lib/map/Map#constructor local.tee $4 i32.store loop $for-loop|0 - local.get $2 + local.get $3 i32.const 100 i32.lt_s if @@ -12035,7 +12028,7 @@ i32.load local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12044,22 +12037,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 i32.const 16 i32.shr_u i32.xor @@ -12068,12 +12061,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=8 local.tee $6 i32.const 1 @@ -12081,8 +12074,8 @@ if (result i32) i32.const 0 else - local.get $2 local.get $3 + local.get $2 i32.load i32.eq end @@ -12090,14 +12083,14 @@ local.get $6 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|0 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 if i32.const 0 i32.const 1568 @@ -12107,8 +12100,8 @@ unreachable end local.get $4 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.const 10 i32.add call $~lib/map/Map#set @@ -12116,7 +12109,7 @@ i32.load local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12125,22 +12118,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 i32.const 16 i32.shr_u i32.xor @@ -12149,12 +12142,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=8 local.tee $6 i32.const 1 @@ -12162,8 +12155,8 @@ if (result i32) i32.const 0 else - local.get $2 local.get $3 + local.get $2 i32.load i32.eq end @@ -12171,14 +12164,14 @@ local.get $6 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|02 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -12189,9 +12182,9 @@ unreachable end local.get $4 - local.get $2 + local.get $3 call $~lib/map/Map#get - local.get $2 + local.get $3 i32.const 10 i32.add i32.ne @@ -12203,10 +12196,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 1 i32.add - local.set $2 + local.set $3 br $for-loop|0 end end @@ -12223,9 +12216,9 @@ unreachable end i32.const 0 - local.set $2 + local.set $3 loop $for-loop|1 - local.get $2 + local.get $3 i32.const 100 i32.lt_s if @@ -12233,7 +12226,7 @@ i32.load local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12242,22 +12235,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 i32.const 16 i32.shr_u i32.xor @@ -12266,12 +12259,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=8 local.tee $6 i32.const 1 @@ -12279,8 +12272,8 @@ if (result i32) i32.const 0 else - local.get $2 local.get $3 + local.get $2 i32.load i32.eq end @@ -12288,14 +12281,14 @@ local.get $6 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|05 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -12306,9 +12299,9 @@ unreachable end local.get $4 - local.get $2 + local.get $3 call $~lib/map/Map#get - local.get $2 + local.get $3 i32.const 10 i32.add i32.ne @@ -12321,8 +12314,8 @@ unreachable end local.get $4 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.const 20 i32.add call $~lib/map/Map#set @@ -12330,7 +12323,7 @@ i32.load local.get $4 i32.load offset=4 - local.get $2 + local.get $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12339,22 +12332,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 i32.const 16 i32.shr_u i32.xor @@ -12363,12 +12356,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=8 local.tee $6 i32.const 1 @@ -12376,8 +12369,8 @@ if (result i32) i32.const 0 else - local.get $2 local.get $3 + local.get $2 i32.load i32.eq end @@ -12385,14 +12378,14 @@ local.get $6 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|08 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -12403,9 +12396,9 @@ unreachable end local.get $4 - local.get $2 + local.get $3 call $~lib/map/Map#get - local.get $2 + local.get $3 i32.const 20 i32.add i32.ne @@ -12417,10 +12410,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 1 i32.add - local.set $2 + local.set $3 br $for-loop|1 end end @@ -12452,13 +12445,13 @@ i32.store local.get $4 i32.load offset=8 - local.set $6 + local.set $7 local.get $2 local.get $4 i32.load offset=16 local.tee $2 call $~lib/array/Array#constructor - local.tee $7 + local.tee $3 i32.store loop $for-loop|01 local.get $2 @@ -12468,7 +12461,7 @@ local.get $5 i32.const 12 i32.mul - local.get $6 + local.get $7 i32.add local.tee $8 i32.load offset=8 @@ -12476,7 +12469,7 @@ i32.and i32.eqz if - local.get $7 + local.get $3 local.get $0 local.get $8 i32.load @@ -12493,19 +12486,19 @@ br $for-loop|01 end end - local.get $7 + local.get $3 local.get $0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $7 + local.get $3 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $4 @@ -12514,31 +12507,31 @@ i32.store offset=8 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $0 + local.tee $6 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $2 + local.tee $7 i32.store offset=16 loop $for-loop|2 - local.get $7 + local.get $3 i32.load offset=12 local.get $1 i32.gt_s if - local.get $7 + local.get $3 local.get $1 call $~lib/array/Array#__get - local.set $6 + local.set $8 local.get $5 local.get $1 call $~lib/array/Array#__get - local.set $8 + local.set $9 local.get $4 i32.load local.get $4 i32.load offset=4 - local.get $6 + local.get $8 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12547,22 +12540,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 - local.get $3 + local.tee $0 + local.get $0 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $3 - local.get $3 + local.tee $0 + local.get $0 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $3 - local.get $3 + local.tee $0 + local.get $0 i32.const 16 i32.shr_u i32.xor @@ -12571,36 +12564,36 @@ i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/map/Map#find10 loop $while-continue|011 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=8 - local.tee $9 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 - local.get $3 + local.get $8 + local.get $2 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find10 - local.get $9 + local.get $0 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|011 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -12614,10 +12607,10 @@ i32.load local.get $4 i32.load offset=4 - local.get $8 + local.get $9 i32.const 20 i32.sub - local.tee $9 + local.tee $10 i32.const -1028477379 i32.mul i32.const 374761397 @@ -12626,22 +12619,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 - local.get $3 + local.tee $0 + local.get $0 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $3 - local.get $3 + local.tee $0 + local.get $0 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $3 - local.get $3 + local.tee $0 + local.get $0 i32.const 16 i32.shr_u i32.xor @@ -12650,36 +12643,36 @@ i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/map/Map#find13 loop $while-continue|014 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=8 - local.tee $10 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $9 - local.get $3 + local.get $10 + local.get $2 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find13 - local.get $10 + local.get $0 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|014 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -12689,16 +12682,16 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $6 - local.get $6 - call $~lib/map/Map#set - local.get $2 local.get $8 + local.get $8 + call $~lib/map/Map#set + local.get $7 + local.get $9 i32.const 20 i32.sub - local.tee $3 - local.get $3 + local.tee $0 + local.get $0 call $~lib/map/Map#set local.get $1 i32.const 1 @@ -12707,7 +12700,7 @@ br $for-loop|2 end end - local.get $0 + local.get $6 i32.load offset=20 i32.const 100 i32.ne @@ -12719,7 +12712,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $7 i32.load offset=20 i32.const 100 i32.ne @@ -12775,12 +12768,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/map/Map#find16 loop $while-continue|017 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=8 local.tee $0 i32.const 1 @@ -12789,7 +12782,7 @@ i32.const 0 else local.get $1 - local.get $3 + local.get $2 i32.load i32.eq end @@ -12797,14 +12790,14 @@ local.get $0 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|017 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -12869,12 +12862,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/map/Map#find19 loop $while-continue|020 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=8 local.tee $0 i32.const 1 @@ -12883,7 +12876,7 @@ i32.const 0 else local.get $1 - local.get $3 + local.get $2 i32.load i32.eq end @@ -12891,14 +12884,14 @@ local.get $0 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|020 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 if i32.const 0 i32.const 1568 @@ -12970,12 +12963,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/map/Map#find22 loop $while-continue|023 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=8 local.tee $0 i32.const 1 @@ -12984,7 +12977,7 @@ i32.const 0 else local.get $1 - local.get $3 + local.get $2 i32.load i32.eq end @@ -12992,14 +12985,14 @@ local.get $0 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|023 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 if i32.const 0 i32.const 1568 @@ -13051,12 +13044,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/map/Map#find25 loop $while-continue|026 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=8 local.tee $0 i32.const 1 @@ -13065,7 +13058,7 @@ i32.const 0 else local.get $1 - local.get $3 + local.get $2 i32.load i32.eq end @@ -13073,14 +13066,14 @@ local.get $0 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|026 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 i32.eqz if i32.const 0 @@ -13130,12 +13123,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/map/Map#find28 loop $while-continue|029 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 i32.load offset=8 local.tee $0 i32.const 1 @@ -13144,7 +13137,7 @@ i32.const 0 else local.get $1 - local.get $3 + local.get $2 i32.load i32.eq end @@ -13152,14 +13145,14 @@ local.get $0 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|029 end end i32.const 0 - local.set $3 + local.set $2 end - local.get $3 + local.get $2 if i32.const 0 i32.const 1568 @@ -13255,7 +13248,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -13269,12 +13262,12 @@ i32.const 12 i32.mul i32.add - local.set $6 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 local.get $5 - local.get $6 + local.get $7 i32.ne if local.get $5 @@ -13367,7 +13360,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -13612,16 +13605,16 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $3 i64.const 0 i64.store - local.get $4 + local.get $3 i64.const 0 i64.store offset=8 - local.get $4 + local.get $3 i32.const 0 i32.store offset=16 - local.get $4 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -13630,66 +13623,66 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $5 i32.const 0 i32.store - local.get $2 + local.get $5 i32.const 24 i32.const 17 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $11 i32.store - local.get $2 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $5 i32.store - local.get $6 + local.get $5 if - local.get $2 - local.get $6 + local.get $11 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 + local.get $11 i32.const 3 i32.store offset=4 - local.get $2 + local.get $11 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $6 + local.tee $5 i32.store offset=8 - local.get $6 + local.get $5 if - local.get $2 - local.get $6 + local.get $11 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 + local.get $11 i32.const 4 i32.store offset=12 - local.get $2 + local.get $11 i32.const 0 i32.store offset=16 - local.get $2 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 - local.get $2 + local.get $3 + local.get $11 i32.store loop $for-loop|0 - local.get $5 + local.get $4 i32.const 100 i32.lt_u if - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 - local.get $5 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13698,22 +13691,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u i32.xor @@ -13722,36 +13715,36 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 local.get $4 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $6 + local.get $5 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|0 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 if i32.const 0 i32.const 1568 @@ -13760,17 +13753,17 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $5 - local.get $5 + local.get $11 + local.get $4 + local.get $4 i32.const 10 i32.add call $~lib/map/Map#set - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 - local.get $5 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13779,22 +13772,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u i32.xor @@ -13803,36 +13796,36 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 local.get $4 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $6 + local.get $5 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|02 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 i32.eqz if i32.const 0 @@ -13842,10 +13835,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $5 + local.get $11 + local.get $4 call $~lib/map/Map#get - local.get $5 + local.get $4 i32.const 10 i32.add i32.ne @@ -13857,14 +13850,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $4 i32.const 1 i32.add - local.set $5 + local.set $4 br $for-loop|0 end end - local.get $2 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -13877,17 +13870,17 @@ unreachable end i32.const 0 - local.set $5 + local.set $4 loop $for-loop|1 - local.get $5 + local.get $4 i32.const 100 i32.lt_u if - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 - local.get $5 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13896,22 +13889,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u i32.xor @@ -13920,36 +13913,36 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 local.get $4 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $6 + local.get $5 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|05 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 i32.eqz if i32.const 0 @@ -13959,10 +13952,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $5 + local.get $11 + local.get $4 call $~lib/map/Map#get - local.get $5 + local.get $4 i32.const 10 i32.add i32.ne @@ -13974,17 +13967,17 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $5 - local.get $5 + local.get $11 + local.get $4 + local.get $4 i32.const 20 i32.add call $~lib/map/Map#set - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 - local.get $5 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -13993,22 +13986,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u i32.xor @@ -14017,36 +14010,36 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 local.get $4 + local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $6 + local.get $5 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|08 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 i32.eqz if i32.const 0 @@ -14056,10 +14049,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $5 + local.get $11 + local.get $4 call $~lib/map/Map#get - local.get $5 + local.get $4 i32.const 20 i32.add i32.ne @@ -14071,14 +14064,14 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $4 i32.const 1 i32.add - local.set $5 + local.set $4 br $for-loop|1 end end - local.get $2 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -14091,8 +14084,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -14101,17 +14094,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $3 i32.const 0 i32.store - local.get $2 + local.get $11 i32.load offset=8 - local.set $7 - local.get $2 + local.set $5 + local.get $11 i32.load offset=16 - local.tee $8 - local.set $9 - local.get $6 + local.tee $6 + local.set $7 + local.get $3 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -14120,28 +14113,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $8 i64.const 0 i64.store - local.get $4 + local.get $8 i32.const 16 i32.const 18 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $12 i32.store - local.get $4 + local.get $12 i32.const 0 i32.store - local.get $4 + local.get $12 i32.const 0 i32.store offset=4 - local.get $4 + local.get $12 i32.const 0 i32.store offset=8 - local.get $4 + local.get $12 i32.const 0 i32.store offset=12 - local.get $9 + local.get $7 i32.const 268435455 i32.gt_u if @@ -14153,66 +14146,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $7 i32.const 8 - local.get $9 + local.get $7 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $10 + local.tee $8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $9 i32.store offset=4 - local.get $11 - local.get $10 + local.get $9 + local.get $8 call $~lib/memory/memory.fill - local.get $4 - local.get $11 + local.get $12 + local.get $9 i32.store - local.get $11 + local.get $9 if - local.get $4 - local.get $11 + local.get $12 + local.get $9 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $4 - local.get $11 + local.get $12 + local.get $9 i32.store offset=4 - local.get $4 - local.get $10 + local.get $12 + local.get $8 i32.store offset=8 - local.get $4 - local.get $9 + local.get $12 + local.get $7 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 - local.get $4 + local.get $3 + local.get $12 i32.store loop $for-loop|01 - local.get $3 - local.get $8 + local.get $2 + local.get $6 i32.lt_s if - local.get $3 + local.get $2 i32.const 12 i32.mul - local.get $7 + local.get $5 i32.add - local.tee $6 + local.tee $3 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $4 + local.get $12 local.get $1 - local.get $6 + local.get $3 i32.load call $~lib/array/Array#__set local.get $1 @@ -14220,31 +14213,31 @@ i32.add local.set $1 end - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 br $for-loop|01 end end - local.get $4 + local.get $12 local.get $1 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $4 + local.get $12 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $12 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $11 call $~lib/map/Map#values - local.tee $10 + local.tee $13 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -14256,68 +14249,68 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $2 i32.const 0 i32.store - local.get $3 + local.get $2 i32.const 24 i32.const 19 call $~lib/rt/itcms/__new - local.tee $13 + local.tee $14 i32.store - local.get $13 + local.get $14 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 if - local.get $13 - local.get $3 + local.get $14 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $13 + local.get $14 i32.const 3 i32.store offset=4 - local.get $13 + local.get $14 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $2 i32.store offset=8 - local.get $3 + local.get $2 if - local.get $13 - local.get $3 + local.get $14 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $13 + local.get $14 i32.const 4 i32.store offset=12 - local.get $13 + local.get $14 i32.const 0 i32.store offset=16 - local.get $13 + local.get $14 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $13 + local.get $14 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $8 + local.tee $15 i32.store offset=16 loop $for-loop|2 - local.get $4 + local.get $12 i32.load offset=12 local.get $0 i32.gt_s if local.get $0 - local.tee $5 - local.get $4 + local.tee $3 + local.get $12 i32.load offset=12 i32.ge_u if @@ -14328,23 +14321,23 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $12 i32.load offset=4 - local.get $5 + local.get $3 i32.const 2 i32.shl i32.add i32.load - local.set $6 - local.get $10 - local.get $5 + local.set $4 + local.get $13 + local.get $3 call $~lib/array/Array#__get - local.set $9 - local.get $2 + local.set $16 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 - local.get $6 + local.get $4 local.tee $1 i32.const -1028477379 i32.mul @@ -14385,7 +14378,7 @@ if local.get $0 i32.load offset=8 - local.tee $3 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -14397,7 +14390,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find12 - local.get $3 + local.get $2 i32.const -2 i32.and local.set $0 @@ -14417,14 +14410,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 - local.get $9 + local.get $16 i32.const 20 i32.sub - local.tee $3 + local.tee $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14464,19 +14457,19 @@ if local.get $0 i32.load offset=8 - local.tee $7 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $2 local.get $0 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find15 - local.get $7 + local.get $5 i32.const -2 i32.and local.set $0 @@ -14507,9 +14500,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $13 + local.get $14 i32.load - local.get $6 + local.get $4 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14537,23 +14530,23 @@ i32.const 16 i32.shr_u i32.xor - local.tee $11 - local.get $13 + local.tee $6 + local.get $14 i32.load offset=4 i32.and i32.const 2 i32.shl i32.add i32.load - local.set $3 + local.set $2 block $__inlined_func$~lib/map/Map#find17 loop $while-continue|018 - local.get $3 + local.get $2 if - local.get $3 + local.get $2 local.tee $0 i32.load offset=8 - local.tee $3 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -14565,10 +14558,10 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find17 - local.get $3 + local.get $2 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|018 end end @@ -14581,15 +14574,15 @@ local.get $1 i32.store offset=4 else - local.get $13 + local.get $14 i32.load offset=16 - local.get $13 + local.get $14 i32.load offset=12 i32.eq if - local.get $13 + local.get $14 i32.load offset=20 - local.get $13 + local.get $14 i32.load offset=12 i32.const 3 i32.mul @@ -14597,17 +14590,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $13 + local.get $14 i32.load offset=4 else - local.get $13 + local.get $14 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $14 + local.set $8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -14621,14 +14614,14 @@ i64.const 0 i64.store local.get $0 - local.get $14 + local.get $8 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $15 + local.tee $9 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -14636,41 +14629,41 @@ i32.shl i32.const 3 i32.div_s - local.tee $12 + local.tee $7 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $2 i32.store offset=4 - local.get $13 + local.get $14 i32.load offset=8 - local.tee $7 - local.get $13 + local.tee $5 + local.get $14 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $16 - local.get $3 + local.set $10 + local.get $2 local.set $0 loop $while-continue|019 - local.get $7 - local.get $16 + local.get $5 + local.get $10 i32.ne if - local.get $7 + local.get $5 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $7 + local.get $5 i32.load local.tee $17 i32.store local.get $0 - local.get $7 + local.get $5 i32.load offset=4 i32.store offset=4 local.get $0 @@ -14702,11 +14695,11 @@ i32.const 16 i32.shr_u i32.xor - local.get $14 + local.get $8 i32.and i32.const 2 i32.shl - local.get $15 + local.get $9 i32.add local.tee $17 i32.load @@ -14719,39 +14712,39 @@ i32.add local.set $0 end - local.get $7 + local.get $5 i32.const 12 i32.add - local.set $7 + local.set $5 br $while-continue|019 end end - local.get $13 - local.get $15 + local.get $14 + local.get $9 i32.store - local.get $15 + local.get $9 if - local.get $13 - local.get $15 + local.get $14 + local.get $9 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $13 local.get $14 + local.get $8 i32.store offset=4 - local.get $13 - local.get $3 + local.get $14 + local.get $2 i32.store offset=8 - local.get $3 + local.get $2 if - local.get $13 - local.get $3 + local.get $14 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $13 - local.get $12 + local.get $14 + local.get $7 i32.store offset=12 - local.get $13 - local.get $13 + local.get $14 + local.get $14 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -14760,40 +14753,40 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $13 + local.get $14 i32.load offset=8 local.tee $0 i32.store - local.get $13 - local.get $13 + local.get $14 + local.get $14 i32.load offset=16 - local.tee $3 + local.tee $2 i32.const 1 i32.add i32.store offset=16 - local.get $3 + local.get $2 i32.const 12 i32.mul local.get $0 i32.add local.tee $0 - local.get $6 + local.get $4 i32.store local.get $0 local.get $1 i32.store offset=4 - local.get $13 - local.get $13 + local.get $14 + local.get $14 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $13 + local.get $14 i32.load - local.get $13 + local.get $14 i32.load offset=4 - local.get $11 + local.get $6 i32.and i32.const 2 i32.shl @@ -14809,21 +14802,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $9 + local.get $15 + local.get $16 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $5 + local.get $3 i32.const 1 i32.add local.set $0 br $for-loop|2 end end - local.get $13 + local.get $14 i32.load offset=20 i32.const 100 i32.ne @@ -14835,7 +14828,7 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $15 i32.load offset=20 i32.const 100 i32.ne @@ -14854,9 +14847,9 @@ i32.const 50 i32.lt_u if - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -14891,12 +14884,12 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find21 loop $while-continue|022 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 local.tee $1 i32.const 1 @@ -14905,7 +14898,7 @@ i32.const 0 else local.get $0 - local.get $4 + local.get $3 i32.load i32.eq end @@ -14913,14 +14906,14 @@ local.get $1 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|022 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 i32.eqz if i32.const 0 @@ -14930,7 +14923,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 local.get $0 call $~lib/map/Map#get local.get $0 @@ -14945,12 +14938,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 local.get $0 call $~lib/map/Map#delete - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -14985,12 +14978,12 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find24 loop $while-continue|025 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 local.tee $1 i32.const 1 @@ -14999,7 +14992,7 @@ i32.const 0 else local.get $0 - local.get $4 + local.get $3 i32.load i32.eq end @@ -15007,14 +15000,14 @@ local.get $1 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|025 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 if i32.const 0 i32.const 1568 @@ -15030,7 +15023,7 @@ br $for-loop|3 end end - local.get $2 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -15049,9 +15042,9 @@ i32.const 50 i32.lt_u if - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -15086,12 +15079,12 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find27 loop $while-continue|028 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 local.tee $1 i32.const 1 @@ -15100,7 +15093,7 @@ i32.const 0 else local.get $0 - local.get $4 + local.get $3 i32.load i32.eq end @@ -15108,14 +15101,14 @@ local.get $1 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|028 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 if i32.const 0 i32.const 1568 @@ -15124,15 +15117,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 local.get $0 local.get $0 i32.const 10 i32.add call $~lib/map/Map#set - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -15167,12 +15160,12 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find30 loop $while-continue|031 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 local.tee $1 i32.const 1 @@ -15181,7 +15174,7 @@ i32.const 0 else local.get $0 - local.get $4 + local.get $3 i32.load i32.eq end @@ -15189,14 +15182,14 @@ local.get $1 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|031 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 i32.eqz if i32.const 0 @@ -15206,12 +15199,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 local.get $0 call $~lib/map/Map#delete - local.get $2 + local.get $11 i32.load - local.get $2 + local.get $11 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -15246,12 +15239,12 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 block $__inlined_func$~lib/map/Map#find33 loop $while-continue|034 - local.get $4 + local.get $3 if - local.get $4 + local.get $3 i32.load offset=8 local.tee $1 i32.const 1 @@ -15260,7 +15253,7 @@ i32.const 0 else local.get $0 - local.get $4 + local.get $3 i32.load i32.eq end @@ -15268,14 +15261,14 @@ local.get $1 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|034 end end i32.const 0 - local.set $4 + local.set $3 end - local.get $4 + local.get $3 if i32.const 0 i32.const 1568 @@ -15291,7 +15284,7 @@ br $for-loop|4 end end - local.get $2 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -15303,9 +15296,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 call $~lib/map/Map#clear - local.get $2 + local.get $11 i32.load offset=20 if i32.const 0 @@ -15899,20 +15892,20 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i32) + (local $3 i64) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) (local $8 i32) (local $9 i32) - (local $10 i64) + (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) (local $14 i32) (local $15 i32) - (local $16 i32) + (local $16 i64) (local $17 i32) global.get $~lib/memory/__stack_pointer i32.const 20 @@ -15924,16 +15917,16 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $1 i64.const 0 i64.store offset=8 - local.get $3 + local.get $1 i32.const 0 i32.store offset=16 - local.get $3 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -15942,63 +15935,63 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $4 i32.const 0 i32.store - local.get $1 + local.get $4 i32.const 24 i32.const 20 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $9 i32.store - local.get $1 + local.get $9 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $4 i32.store - local.get $2 + local.get $4 if - local.get $1 - local.get $2 + local.get $9 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $9 i32.const 3 i32.store offset=4 - local.get $1 + local.get $9 i32.const 64 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $4 i32.store offset=8 - local.get $2 + local.get $4 if - local.get $1 - local.get $2 + local.get $9 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $9 i32.const 4 i32.store offset=12 - local.get $1 + local.get $9 i32.const 0 i32.store offset=16 - local.get $1 + local.get $9 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 local.get $1 + local.get $9 i32.store loop $for-loop|0 - local.get $10 + local.get $3 i64.const 100 i64.lt_s if - local.get $1 - local.get $10 + local.get $9 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -16008,15 +16001,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $10 - local.get $10 + local.get $9 + local.get $3 + local.get $3 i32.wrap_i64 i32.const 10 i32.add call $~lib/map/Map#set - local.get $1 - local.get $10 + local.get $9 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -16027,10 +16020,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $10 + local.get $9 + local.get $3 call $~lib/map/Map#get - local.get $10 + local.get $3 i32.wrap_i64 i32.const 10 i32.add @@ -16043,14 +16036,14 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $3 i64.const 1 i64.add - local.set $10 + local.set $3 br $for-loop|0 end end - local.get $1 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -16063,14 +16056,14 @@ unreachable end i64.const 0 - local.set $10 + local.set $3 loop $for-loop|1 - local.get $10 + local.get $3 i64.const 100 i64.lt_s if - local.get $1 - local.get $10 + local.get $9 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -16081,10 +16074,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $10 + local.get $9 + local.get $3 call $~lib/map/Map#get - local.get $10 + local.get $3 i32.wrap_i64 i32.const 10 i32.add @@ -16097,15 +16090,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $10 - local.get $10 + local.get $9 + local.get $3 + local.get $3 i32.wrap_i64 i32.const 20 i32.add call $~lib/map/Map#set - local.get $1 - local.get $10 + local.get $9 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -16116,10 +16109,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $10 + local.get $9 + local.get $3 call $~lib/map/Map#get - local.get $10 + local.get $3 i32.wrap_i64 i32.const 20 i32.add @@ -16132,14 +16125,14 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $3 i64.const 1 i64.add - local.set $10 + local.set $3 br $for-loop|1 end end - local.get $1 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -16152,8 +16145,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -16162,18 +16155,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $6 i32.const 0 i32.store - local.get $1 - local.tee $3 + local.get $9 i32.load offset=8 local.set $7 - local.get $1 + local.get $9 i32.load offset=16 - local.tee $6 - local.set $5 - local.get $8 + local.tee $8 + local.set $10 + local.get $6 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -16189,21 +16181,21 @@ i32.const 16 i32.const 21 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 0 i32.store offset=4 - local.get $2 + local.get $1 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 0 i32.store offset=12 - local.get $5 + local.get $10 i32.const 134217727 i32.gt_u if @@ -16215,66 +16207,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $10 i32.const 8 - local.get $5 + local.get $10 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $4 + local.tee $11 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $12 i32.store offset=4 - local.get $1 - local.get $4 + local.get $12 + local.get $11 call $~lib/memory/memory.fill - local.get $2 local.get $1 + local.get $12 i32.store - local.get $1 + local.get $12 if - local.get $2 local.get $1 + local.get $12 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 local.get $1 + local.get $12 i32.store offset=4 - local.get $2 - local.get $4 + local.get $1 + local.get $11 i32.store offset=8 - local.get $2 - local.get $5 + local.get $1 + local.get $10 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $2 + local.get $6 + local.get $1 i32.store loop $for-loop|01 - local.get $6 - local.get $11 - i32.gt_s + local.get $2 + local.get $8 + i32.lt_s if - local.get $11 + local.get $2 i32.const 4 i32.shl local.get $7 i32.add - local.tee $1 + local.tee $6 i32.load offset=12 i32.const 1 i32.and i32.eqz if - local.get $2 - local.get $0 local.get $1 + local.get $0 + local.get $6 i64.load call $~lib/array/Array#__set local.get $0 @@ -16282,31 +16274,31 @@ i32.add local.set $0 end - local.get $11 + local.get $2 i32.const 1 i32.add - local.set $11 + local.set $2 br $for-loop|01 end end - local.get $2 + local.get $1 local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $2 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $9 call $~lib/map/Map#values - local.tee $12 + local.tee $10 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -16318,10 +16310,10 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.const 22 call $~lib/rt/itcms/__new @@ -16330,12 +16322,12 @@ local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 if local.get $11 - local.get $0 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $11 @@ -16344,12 +16336,12 @@ local.get $11 i32.const 96 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $2 i32.store offset=8 - local.get $0 + local.get $2 if local.get $11 - local.get $0 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $11 @@ -16369,17 +16361,17 @@ i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $15 + local.tee $12 i32.store offset=16 loop $for-loop|2 - local.get $2 + local.get $1 i32.load offset=12 - local.get $16 + local.get $5 i32.gt_s if - local.get $2 + local.get $1 i32.load offset=12 - local.get $16 + local.get $5 i32.le_u if i32.const 1248 @@ -16389,20 +16381,20 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.load offset=4 - local.get $16 + local.get $5 i32.const 3 i32.shl i32.add i64.load - local.set $10 - local.get $12 - local.get $16 + local.set $3 + local.get $10 + local.get $5 call $~lib/array/Array#__get - local.set $14 + local.set $13 + local.get $9 local.get $3 - local.get $10 call $~lib/map/Map#has i32.eqz if @@ -16413,8 +16405,8 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $14 + local.get $9 + local.get $13 i32.const 20 i32.sub i64.extend_i32_s @@ -16441,7 +16433,7 @@ i32.store local.get $11 i32.load - local.get $10 + local.get $3 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -16451,7 +16443,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $10 + local.get $3 i64.const 32 i64.shr_u i32.wrap_i64 @@ -16481,7 +16473,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $9 + local.tee $14 local.get $11 i32.load offset=4 i32.and @@ -16496,19 +16488,19 @@ if local.get $0 i32.load offset=16 - local.tee $1 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $10 + local.get $3 local.get $0 i64.load i64.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $1 + local.get $2 i32.const -2 i32.and local.set $0 @@ -16521,7 +16513,7 @@ local.get $0 if local.get $0 - local.get $10 + local.get $3 i64.store offset=8 else local.get $11 @@ -16550,7 +16542,7 @@ i32.const 1 i32.or end - local.set $8 + local.set $15 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -16564,14 +16556,14 @@ i64.const 0 i64.store local.get $0 - local.get $8 + local.get $15 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -16579,45 +16571,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $7 i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=4 local.get $11 i32.load offset=8 - local.tee $17 + local.tee $4 local.get $11 i32.load offset=16 i32.const 24 i32.mul i32.add - local.set $5 - local.get $1 + local.set $8 + local.get $2 local.set $0 loop $while-continue|02 - local.get $5 - local.get $17 + local.get $4 + local.get $8 i32.ne if - local.get $17 + local.get $4 i32.load offset=16 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $17 + local.get $4 i64.load - local.tee $13 + local.tee $16 i64.store local.get $0 - local.get $17 + local.get $4 i64.load offset=8 i64.store offset=8 local.get $0 - local.get $13 + local.get $16 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -16627,7 +16619,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $13 + local.get $16 i64.const 32 i64.shr_u i32.wrap_i64 @@ -16638,35 +16630,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $17 + local.get $17 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $17 + local.get $17 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $17 + local.get $17 i32.const 16 i32.shr_u i32.xor - local.get $8 + local.get $15 i32.and i32.const 2 i32.shl - local.get $7 + local.get $6 i32.add - local.tee $4 + local.tee $17 i32.load i32.store offset=16 - local.get $4 + local.get $17 local.get $0 i32.store local.get $0 @@ -16674,36 +16666,36 @@ i32.add local.set $0 end - local.get $17 + local.get $4 i32.const 24 i32.add - local.set $17 + local.set $4 br $while-continue|02 end end local.get $11 - local.get $7 + local.get $6 i32.store - local.get $7 + local.get $6 if local.get $11 - local.get $7 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $11 - local.get $8 + local.get $15 i32.store offset=4 local.get $11 - local.get $1 + local.get $2 i32.store offset=8 - local.get $1 + local.get $2 if local.get $11 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $11 - local.get $6 + local.get $7 i32.store offset=12 local.get $11 local.get $11 @@ -16717,25 +16709,25 @@ global.get $~lib/memory/__stack_pointer local.get $11 i32.load offset=8 - local.tee $1 + local.tee $0 i32.store local.get $11 local.get $11 i32.load offset=16 - local.tee $0 + local.tee $2 i32.const 1 i32.add i32.store offset=16 - local.get $0 + local.get $2 i32.const 24 i32.mul - local.get $1 + local.get $0 i32.add - local.tee $1 - local.get $10 + local.tee $0 + local.get $3 i64.store - local.get $1 - local.get $10 + local.get $0 + local.get $3 i64.store offset=8 local.get $11 local.get $11 @@ -16743,38 +16735,38 @@ i32.const 1 i32.add i32.store offset=20 - local.get $1 + local.get $0 local.get $11 i32.load local.get $11 i32.load offset=4 - local.get $9 + local.get $14 i32.and i32.const 2 i32.shl i32.add - local.tee $0 + local.tee $2 i32.load i32.store offset=16 + local.get $2 local.get $0 - local.get $1 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $15 - local.get $14 + local.get $12 + local.get $13 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $16 + local.get $5 i32.const 1 i32.add - local.set $16 + local.set $5 br $for-loop|2 end end @@ -16790,7 +16782,7 @@ call $~lib/builtins/abort unreachable end - local.get $15 + local.get $12 i32.load offset=20 i32.const 100 i32.ne @@ -16803,14 +16795,14 @@ unreachable end i64.const 0 - local.set $10 + local.set $3 loop $for-loop|3 - local.get $10 + local.get $3 i64.const 50 i64.lt_s if + local.get $9 local.get $3 - local.get $10 call $~lib/map/Map#has i32.eqz if @@ -16821,10 +16813,10 @@ call $~lib/builtins/abort unreachable end + local.get $9 local.get $3 - local.get $10 call $~lib/map/Map#get - local.get $10 + local.get $3 i32.wrap_i64 i32.const 20 i32.add @@ -16837,11 +16829,11 @@ call $~lib/builtins/abort unreachable end + local.get $9 local.get $3 - local.get $10 call $~lib/map/Map#delete + local.get $9 local.get $3 - local.get $10 call $~lib/map/Map#has if i32.const 0 @@ -16851,14 +16843,14 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $3 i64.const 1 i64.add - local.set $10 + local.set $3 br $for-loop|3 end end - local.get $3 + local.get $9 i32.load offset=20 i32.const 50 i32.ne @@ -16871,14 +16863,14 @@ unreachable end i64.const 0 - local.set $10 + local.set $3 loop $for-loop|4 - local.get $10 + local.get $3 i64.const 50 i64.lt_s if + local.get $9 local.get $3 - local.get $10 call $~lib/map/Map#has if i32.const 0 @@ -16888,15 +16880,15 @@ call $~lib/builtins/abort unreachable end + local.get $9 + local.get $3 local.get $3 - local.get $10 - local.get $10 i32.wrap_i64 i32.const 10 i32.add call $~lib/map/Map#set + local.get $9 local.get $3 - local.get $10 call $~lib/map/Map#has i32.eqz if @@ -16907,11 +16899,11 @@ call $~lib/builtins/abort unreachable end + local.get $9 local.get $3 - local.get $10 call $~lib/map/Map#delete + local.get $9 local.get $3 - local.get $10 call $~lib/map/Map#has if i32.const 0 @@ -16921,14 +16913,14 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $3 i64.const 1 i64.add - local.set $10 + local.set $3 br $for-loop|4 end end - local.get $3 + local.get $9 i32.load offset=20 i32.const 50 i32.ne @@ -16940,9 +16932,9 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $9 call $~lib/map/Map#clear - local.get $3 + local.get $9 i32.load offset=20 if i32.const 0 @@ -17460,20 +17452,20 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i32) + (local $3 i64) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) (local $8 i32) (local $9 i32) - (local $10 i64) + (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i64) + (local $13 i32) (local $14 i32) (local $15 i32) - (local $16 i32) + (local $16 i64) (local $17 i32) global.get $~lib/memory/__stack_pointer i32.const 20 @@ -17485,16 +17477,16 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i64.const 0 i64.store - local.get $3 + local.get $1 i64.const 0 i64.store offset=8 - local.get $3 + local.get $1 i32.const 0 i32.store offset=16 - local.get $3 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -17503,63 +17495,63 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $4 i32.const 0 i32.store - local.get $1 + local.get $4 i32.const 24 i32.const 23 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $9 i32.store - local.get $1 + local.get $9 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $4 i32.store - local.get $2 + local.get $4 if - local.get $1 - local.get $2 + local.get $9 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $9 i32.const 3 i32.store offset=4 - local.get $1 + local.get $9 i32.const 64 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $2 + local.tee $4 i32.store offset=8 - local.get $2 + local.get $4 if - local.get $1 - local.get $2 + local.get $9 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $9 i32.const 4 i32.store offset=12 - local.get $1 + local.get $9 i32.const 0 i32.store offset=16 - local.get $1 + local.get $9 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 local.get $1 + local.get $9 i32.store loop $for-loop|0 - local.get $10 + local.get $3 i64.const 100 i64.lt_u if - local.get $1 - local.get $10 + local.get $9 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -17569,15 +17561,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $10 - local.get $10 + local.get $9 + local.get $3 + local.get $3 i32.wrap_i64 i32.const 10 i32.add call $~lib/map/Map#set - local.get $1 - local.get $10 + local.get $9 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -17588,10 +17580,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $10 + local.get $9 + local.get $3 call $~lib/map/Map#get - local.get $10 + local.get $3 i32.wrap_i64 i32.const 10 i32.add @@ -17604,14 +17596,14 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $3 i64.const 1 i64.add - local.set $10 + local.set $3 br $for-loop|0 end end - local.get $1 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -17624,14 +17616,14 @@ unreachable end i64.const 0 - local.set $10 + local.set $3 loop $for-loop|1 - local.get $10 + local.get $3 i64.const 100 i64.lt_u if - local.get $1 - local.get $10 + local.get $9 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -17642,10 +17634,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $10 + local.get $9 + local.get $3 call $~lib/map/Map#get - local.get $10 + local.get $3 i32.wrap_i64 i32.const 10 i32.add @@ -17658,15 +17650,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $10 - local.get $10 + local.get $9 + local.get $3 + local.get $3 i32.wrap_i64 i32.const 20 i32.add call $~lib/map/Map#set - local.get $1 - local.get $10 + local.get $9 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -17677,10 +17669,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $10 + local.get $9 + local.get $3 call $~lib/map/Map#get - local.get $10 + local.get $3 i32.wrap_i64 i32.const 20 i32.add @@ -17693,14 +17685,14 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $3 i64.const 1 i64.add - local.set $10 + local.set $3 br $for-loop|1 end end - local.get $1 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -17713,8 +17705,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -17723,18 +17715,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $6 i32.const 0 i32.store - local.get $1 - local.tee $3 + local.get $9 i32.load offset=8 local.set $7 - local.get $1 + local.get $9 i32.load offset=16 - local.tee $6 - local.set $5 - local.get $8 + local.tee $8 + local.set $10 + local.get $6 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -17750,21 +17741,21 @@ i32.const 16 i32.const 24 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 0 i32.store offset=4 - local.get $2 + local.get $1 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 0 i32.store offset=12 - local.get $5 + local.get $10 i32.const 134217727 i32.gt_u if @@ -17776,66 +17767,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $10 i32.const 8 - local.get $5 + local.get $10 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $4 + local.tee $11 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $12 i32.store offset=4 - local.get $1 - local.get $4 + local.get $12 + local.get $11 call $~lib/memory/memory.fill - local.get $2 local.get $1 + local.get $12 i32.store - local.get $1 + local.get $12 if - local.get $2 local.get $1 + local.get $12 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 local.get $1 + local.get $12 i32.store offset=4 - local.get $2 - local.get $4 + local.get $1 + local.get $11 i32.store offset=8 - local.get $2 - local.get $5 + local.get $1 + local.get $10 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $2 + local.get $6 + local.get $1 i32.store loop $for-loop|01 - local.get $6 - local.get $11 - i32.gt_s + local.get $2 + local.get $8 + i32.lt_s if - local.get $11 + local.get $2 i32.const 4 i32.shl local.get $7 i32.add - local.tee $1 + local.tee $6 i32.load offset=12 i32.const 1 i32.and i32.eqz if - local.get $2 - local.get $0 local.get $1 + local.get $0 + local.get $6 i64.load call $~lib/array/Array#__set local.get $0 @@ -17843,31 +17834,31 @@ i32.add local.set $0 end - local.get $11 + local.get $2 i32.const 1 i32.add - local.set $11 + local.set $2 br $for-loop|01 end end - local.get $2 + local.get $1 local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $2 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $9 call $~lib/map/Map#values - local.tee $12 + local.tee $10 i32.store offset=8 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -17879,10 +17870,10 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i32.const 0 i32.store - local.get $0 + local.get $2 i32.const 24 i32.const 25 call $~lib/rt/itcms/__new @@ -17891,12 +17882,12 @@ local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 if local.get $11 - local.get $0 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $11 @@ -17905,12 +17896,12 @@ local.get $11 i32.const 96 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $0 + local.tee $2 i32.store offset=8 - local.get $0 + local.get $2 if local.get $11 - local.get $0 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $11 @@ -17930,17 +17921,17 @@ i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $15 + local.tee $12 i32.store offset=16 loop $for-loop|2 - local.get $2 + local.get $1 i32.load offset=12 - local.get $16 + local.get $5 i32.gt_s if - local.get $2 + local.get $1 i32.load offset=12 - local.get $16 + local.get $5 i32.le_u if i32.const 1248 @@ -17950,20 +17941,20 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.load offset=4 - local.get $16 + local.get $5 i32.const 3 i32.shl i32.add i64.load - local.set $10 - local.get $12 - local.get $16 + local.set $3 + local.get $10 + local.get $5 call $~lib/array/Array#__get - local.set $14 + local.set $13 + local.get $9 local.get $3 - local.get $10 call $~lib/map/Map#has i32.eqz if @@ -17974,8 +17965,8 @@ call $~lib/builtins/abort unreachable end - local.get $3 - local.get $14 + local.get $9 + local.get $13 i32.const 20 i32.sub i64.extend_i32_s @@ -18002,7 +17993,7 @@ i32.store local.get $11 i32.load - local.get $10 + local.get $3 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -18012,7 +18003,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $10 + local.get $3 i64.const 32 i64.shr_u i32.wrap_i64 @@ -18042,7 +18033,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $9 + local.tee $14 local.get $11 i32.load offset=4 i32.and @@ -18057,19 +18048,19 @@ if local.get $0 i32.load offset=16 - local.tee $1 + local.tee $2 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $10 + local.get $3 local.get $0 i64.load i64.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $1 + local.get $2 i32.const -2 i32.and local.set $0 @@ -18082,7 +18073,7 @@ local.get $0 if local.get $0 - local.get $10 + local.get $3 i64.store offset=8 else local.get $11 @@ -18111,7 +18102,7 @@ i32.const 1 i32.or end - local.set $8 + local.set $15 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -18125,14 +18116,14 @@ i64.const 0 i64.store local.get $0 - local.get $8 + local.get $15 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $7 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -18140,45 +18131,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $7 i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=4 local.get $11 i32.load offset=8 - local.tee $17 + local.tee $4 local.get $11 i32.load offset=16 i32.const 24 i32.mul i32.add - local.set $5 - local.get $1 + local.set $8 + local.get $2 local.set $0 loop $while-continue|02 - local.get $5 - local.get $17 + local.get $4 + local.get $8 i32.ne if - local.get $17 + local.get $4 i32.load offset=16 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $17 + local.get $4 i64.load - local.tee $13 + local.tee $16 i64.store local.get $0 - local.get $17 + local.get $4 i64.load offset=8 i64.store offset=8 local.get $0 - local.get $13 + local.get $16 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -18188,7 +18179,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $13 + local.get $16 i64.const 32 i64.shr_u i32.wrap_i64 @@ -18199,35 +18190,35 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 - local.get $4 + local.tee $17 + local.get $17 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $4 - local.get $4 + local.tee $17 + local.get $17 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $4 - local.get $4 + local.tee $17 + local.get $17 i32.const 16 i32.shr_u i32.xor - local.get $8 + local.get $15 i32.and i32.const 2 i32.shl - local.get $7 + local.get $6 i32.add - local.tee $4 + local.tee $17 i32.load i32.store offset=16 - local.get $4 + local.get $17 local.get $0 i32.store local.get $0 @@ -18235,36 +18226,36 @@ i32.add local.set $0 end - local.get $17 + local.get $4 i32.const 24 i32.add - local.set $17 + local.set $4 br $while-continue|02 end end local.get $11 - local.get $7 + local.get $6 i32.store - local.get $7 + local.get $6 if local.get $11 - local.get $7 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $11 - local.get $8 + local.get $15 i32.store offset=4 local.get $11 - local.get $1 + local.get $2 i32.store offset=8 - local.get $1 + local.get $2 if local.get $11 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $11 - local.get $6 + local.get $7 i32.store offset=12 local.get $11 local.get $11 @@ -18278,25 +18269,25 @@ global.get $~lib/memory/__stack_pointer local.get $11 i32.load offset=8 - local.tee $1 + local.tee $0 i32.store local.get $11 local.get $11 i32.load offset=16 - local.tee $0 + local.tee $2 i32.const 1 i32.add i32.store offset=16 - local.get $0 + local.get $2 i32.const 24 i32.mul - local.get $1 + local.get $0 i32.add - local.tee $1 - local.get $10 + local.tee $0 + local.get $3 i64.store - local.get $1 - local.get $10 + local.get $0 + local.get $3 i64.store offset=8 local.get $11 local.get $11 @@ -18304,38 +18295,38 @@ i32.const 1 i32.add i32.store offset=20 - local.get $1 + local.get $0 local.get $11 i32.load local.get $11 i32.load offset=4 - local.get $9 + local.get $14 i32.and i32.const 2 i32.shl i32.add - local.tee $0 + local.tee $2 i32.load i32.store offset=16 + local.get $2 local.get $0 - local.get $1 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $15 - local.get $14 + local.get $12 + local.get $13 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $16 + local.get $5 i32.const 1 i32.add - local.set $16 + local.set $5 br $for-loop|2 end end @@ -18351,7 +18342,7 @@ call $~lib/builtins/abort unreachable end - local.get $15 + local.get $12 i32.load offset=20 i32.const 100 i32.ne @@ -18364,14 +18355,14 @@ unreachable end i64.const 0 - local.set $10 + local.set $3 loop $for-loop|3 - local.get $10 + local.get $3 i64.const 50 i64.lt_u if + local.get $9 local.get $3 - local.get $10 call $~lib/map/Map#has i32.eqz if @@ -18382,10 +18373,10 @@ call $~lib/builtins/abort unreachable end + local.get $9 local.get $3 - local.get $10 call $~lib/map/Map#get - local.get $10 + local.get $3 i32.wrap_i64 i32.const 20 i32.add @@ -18398,11 +18389,11 @@ call $~lib/builtins/abort unreachable end + local.get $9 local.get $3 - local.get $10 call $~lib/map/Map#delete + local.get $9 local.get $3 - local.get $10 call $~lib/map/Map#has if i32.const 0 @@ -18412,14 +18403,14 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $3 i64.const 1 i64.add - local.set $10 + local.set $3 br $for-loop|3 end end - local.get $3 + local.get $9 i32.load offset=20 i32.const 50 i32.ne @@ -18432,14 +18423,14 @@ unreachable end i64.const 0 - local.set $10 + local.set $3 loop $for-loop|4 - local.get $10 + local.get $3 i64.const 50 i64.lt_u if + local.get $9 local.get $3 - local.get $10 call $~lib/map/Map#has if i32.const 0 @@ -18449,15 +18440,15 @@ call $~lib/builtins/abort unreachable end + local.get $9 + local.get $3 local.get $3 - local.get $10 - local.get $10 i32.wrap_i64 i32.const 10 i32.add call $~lib/map/Map#set + local.get $9 local.get $3 - local.get $10 call $~lib/map/Map#has i32.eqz if @@ -18468,11 +18459,11 @@ call $~lib/builtins/abort unreachable end + local.get $9 local.get $3 - local.get $10 call $~lib/map/Map#delete + local.get $9 local.get $3 - local.get $10 call $~lib/map/Map#has if i32.const 0 @@ -18482,14 +18473,14 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $3 i64.const 1 i64.add - local.set $10 + local.set $3 br $for-loop|4 end end - local.get $3 + local.get $9 i32.load offset=20 i32.const 50 i32.ne @@ -18501,9 +18492,9 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $9 call $~lib/map/Map#clear - local.get $3 + local.get $9 i32.load offset=20 if i32.const 0 @@ -18904,8 +18895,8 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i32) - (local $4 f32) + (local $3 f32) + (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) @@ -18914,8 +18905,8 @@ (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 f32) - (local $14 i32) + (local $13 i32) + (local $14 f32) (local $15 i32) (local $16 i32) (local $17 i32) @@ -18929,16 +18920,16 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i64.const 0 i64.store offset=8 - local.get $2 + local.get $1 i32.const 0 i32.store offset=16 - local.get $2 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -18947,66 +18938,66 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $5 i32.const 0 i32.store - local.get $1 + local.get $5 i32.const 24 i32.const 26 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $8 i32.store - local.get $1 + local.get $8 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $5 i32.store - local.get $3 + local.get $5 if - local.get $1 - local.get $3 + local.get $8 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $8 i32.const 3 i32.store offset=4 - local.get $1 + local.get $8 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $5 i32.store offset=8 - local.get $3 + local.get $5 if - local.get $1 - local.get $3 + local.get $8 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $8 i32.const 4 i32.store offset=12 - local.get $1 + local.get $8 i32.const 0 i32.store offset=16 - local.get $1 + local.get $8 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 local.get $1 + local.get $8 i32.store loop $for-loop|0 - local.get $4 + local.get $3 f32.const 100 f32.lt if - local.get $1 + local.get $8 i32.load - local.get $1 + local.get $8 i32.load offset=4 - local.get $4 + local.get $3 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19016,22 +19007,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.const 16 i32.shr_u i32.xor @@ -19040,36 +19031,36 @@ i32.shl i32.add i32.load - local.set $2 + local.set $1 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $2 + local.get $1 if - local.get $2 + local.get $1 i32.load offset=8 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 - local.get $2 + local.get $3 + local.get $1 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $1 br $while-continue|0 end end i32.const 0 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 if i32.const 0 i32.const 1568 @@ -19078,18 +19069,18 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $4 - local.get $4 + local.get $8 + local.get $3 + local.get $3 i32.trunc_f32_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $1 + local.get $8 i32.load - local.get $1 + local.get $8 i32.load offset=4 - local.get $4 + local.get $3 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19099,22 +19090,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.const 16 i32.shr_u i32.xor @@ -19123,36 +19114,36 @@ i32.shl i32.add i32.load - local.set $2 + local.set $1 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $2 + local.get $1 if - local.get $2 + local.get $1 i32.load offset=8 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 - local.get $2 + local.get $3 + local.get $1 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $1 br $while-continue|02 end end i32.const 0 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 i32.eqz if i32.const 0 @@ -19162,10 +19153,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $4 + local.get $8 + local.get $3 call $~lib/map/Map#get - local.get $4 + local.get $3 i32.trunc_f32_s i32.const 10 i32.add @@ -19178,14 +19169,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 f32.const 1 f32.add - local.set $4 + local.set $3 br $for-loop|0 end end - local.get $1 + local.get $8 i32.load offset=20 i32.const 100 i32.ne @@ -19198,17 +19189,17 @@ unreachable end f32.const 0 - local.set $4 + local.set $3 loop $for-loop|1 - local.get $4 + local.get $3 f32.const 100 f32.lt if - local.get $1 + local.get $8 i32.load - local.get $1 + local.get $8 i32.load offset=4 - local.get $4 + local.get $3 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19218,22 +19209,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.const 16 i32.shr_u i32.xor @@ -19242,36 +19233,36 @@ i32.shl i32.add i32.load - local.set $2 + local.set $1 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $2 + local.get $1 if - local.get $2 + local.get $1 i32.load offset=8 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 - local.get $2 + local.get $3 + local.get $1 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $1 br $while-continue|05 end end i32.const 0 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 i32.eqz if i32.const 0 @@ -19281,10 +19272,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $4 + local.get $8 + local.get $3 call $~lib/map/Map#get - local.get $4 + local.get $3 i32.trunc_f32_s i32.const 10 i32.add @@ -19297,18 +19288,18 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $4 - local.get $4 + local.get $8 + local.get $3 + local.get $3 i32.trunc_f32_s i32.const 20 i32.add call $~lib/map/Map#set - local.get $1 + local.get $8 i32.load - local.get $1 + local.get $8 i32.load offset=4 - local.get $4 + local.get $3 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19318,22 +19309,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.const 16 i32.shr_u i32.xor @@ -19342,36 +19333,36 @@ i32.shl i32.add i32.load - local.set $2 + local.set $1 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $2 + local.get $1 if - local.get $2 + local.get $1 i32.load offset=8 - local.tee $3 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 - local.get $2 + local.get $3 + local.get $1 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $3 + local.get $5 i32.const -2 i32.and - local.set $2 + local.set $1 br $while-continue|08 end end i32.const 0 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 i32.eqz if i32.const 0 @@ -19381,10 +19372,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $4 + local.get $8 + local.get $3 call $~lib/map/Map#get - local.get $4 + local.get $3 i32.trunc_f32_s i32.const 20 i32.add @@ -19397,14 +19388,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 f32.const 1 f32.add - local.set $4 + local.set $3 br $for-loop|1 end end - local.get $1 + local.get $8 i32.load offset=20 i32.const 100 i32.ne @@ -19417,8 +19408,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -19427,17 +19418,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i32.const 0 i32.store - local.get $1 + local.get $8 i32.load offset=8 - local.set $8 - local.get $1 + local.set $6 + local.get $8 i32.load offset=16 - local.tee $9 - local.set $10 - local.get $3 + local.tee $7 + local.set $9 + local.get $1 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -19446,28 +19437,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $10 i64.const 0 i64.store - local.get $2 + local.get $10 i32.const 16 i32.const 27 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $10 i32.store - local.get $2 + local.get $10 i32.const 0 i32.store - local.get $2 + local.get $10 i32.const 0 i32.store offset=4 - local.get $2 + local.get $10 i32.const 0 i32.store offset=8 - local.get $2 + local.get $10 i32.const 0 i32.store offset=12 - local.get $10 + local.get $9 i32.const 268435455 i32.gt_u if @@ -19479,9 +19470,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $9 i32.const 8 - local.get $10 + local.get $9 i32.const 8 i32.gt_u select @@ -19495,61 +19486,61 @@ local.get $12 local.get $11 call $~lib/memory/memory.fill - local.get $2 + local.get $10 local.get $12 i32.store local.get $12 if - local.get $2 + local.get $10 local.get $12 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 + local.get $10 local.get $12 i32.store offset=4 - local.get $2 + local.get $10 local.get $11 i32.store offset=8 - local.get $2 local.get $10 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 - local.get $2 + local.get $1 + local.get $10 i32.store loop $for-loop|01 - local.get $5 - local.get $9 + local.get $2 + local.get $7 i32.lt_s if - local.get $5 + local.get $2 i32.const 12 i32.mul - local.get $8 + local.get $6 i32.add - local.tee $10 + local.tee $9 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $0 - local.tee $3 + local.tee $1 i32.const 1 i32.add local.set $0 - local.get $10 + local.get $9 f32.load - local.set $4 - local.get $2 + local.set $3 + local.get $10 i32.load offset=12 - local.get $3 + local.get $1 i32.le_u if - local.get $3 + local.get $1 i32.const 0 i32.lt_s if @@ -19560,50 +19551,50 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $3 + local.get $10 + local.get $1 i32.const 1 i32.add - local.tee $10 + local.tee $9 i32.const 2 i32.const 1 call $~lib/array/ensureCapacity - local.get $2 local.get $10 + local.get $9 i32.store offset=12 end - local.get $2 + local.get $10 i32.load offset=4 - local.get $3 + local.get $1 i32.const 2 i32.shl i32.add - local.get $4 + local.get $3 f32.store end - local.get $5 + local.get $2 i32.const 1 i32.add - local.set $5 + local.set $2 br $for-loop|01 end end - local.get $2 + local.get $10 local.get $0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $2 + local.get $10 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $10 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $8 call $~lib/map/Map#values local.tee $9 i32.store offset=8 @@ -19617,68 +19608,68 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 24 i32.const 28 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $11 i32.store - local.get $10 + local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 if - local.get $10 - local.get $3 + local.get $11 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $11 i32.const 3 i32.store offset=4 - local.get $10 + local.get $11 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $1 i32.store offset=8 - local.get $3 + local.get $1 if - local.get $10 - local.get $3 + local.get $11 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 + local.get $11 i32.const 4 i32.store offset=12 - local.get $10 + local.get $11 i32.const 0 i32.store offset=16 - local.get $10 + local.get $11 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $11 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $7 + local.tee $12 i32.store offset=16 loop $for-loop|2 - local.get $2 + local.get $10 i32.load offset=12 - local.get $6 + local.get $4 i32.gt_s if - local.get $2 + local.get $10 i32.load offset=12 - local.get $6 + local.get $4 i32.le_u if i32.const 1248 @@ -19688,23 +19679,23 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $10 i32.load offset=4 - local.get $6 + local.get $4 i32.const 2 i32.shl i32.add f32.load - local.set $4 + local.set $3 local.get $9 - local.get $6 + local.get $4 call $~lib/array/Array#__get - local.set $8 - local.get $1 + local.set $13 + local.get $8 i32.load - local.get $1 + local.get $8 i32.load offset=4 - local.get $4 + local.get $3 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19745,19 +19736,19 @@ if local.get $0 i32.load offset=8 - local.tee $3 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find12 - local.get $3 + local.get $1 i32.const -2 i32.and local.set $0 @@ -19777,15 +19768,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $8 i32.load - local.get $1 - i32.load offset=4 local.get $8 + i32.load offset=4 + local.get $13 i32.const 20 i32.sub f32.convert_i32_s - local.tee $13 + local.tee $14 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19826,19 +19817,19 @@ if local.get $0 i32.load offset=8 - local.tee $3 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $13 + local.get $14 local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find15 - local.get $3 + local.get $1 i32.const -2 i32.and local.set $0 @@ -19869,9 +19860,9 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $10 + local.get $11 i32.load - local.get $4 + local.get $3 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19900,8 +19891,8 @@ i32.const 16 i32.shr_u i32.xor - local.tee $11 - local.get $10 + local.tee $15 + local.get $11 i32.load offset=4 i32.and i32.const 2 @@ -19915,19 +19906,19 @@ if local.get $0 i32.load offset=8 - local.tee $3 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 + local.get $3 local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find17 - local.get $3 + local.get $1 i32.const -2 i32.and local.set $0 @@ -19940,18 +19931,18 @@ local.get $0 if local.get $0 - local.get $4 + local.get $3 f32.store offset=4 else - local.get $10 + local.get $11 i32.load offset=16 - local.get $10 + local.get $11 i32.load offset=12 i32.eq if - local.get $10 + local.get $11 i32.load offset=20 - local.get $10 + local.get $11 i32.load offset=12 i32.const 3 i32.mul @@ -19959,17 +19950,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $10 + local.get $11 i32.load offset=4 else - local.get $10 + local.get $11 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $12 + local.set $16 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -19983,14 +19974,14 @@ i64.const 0 i64.store local.get $0 - local.get $12 + local.get $16 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $14 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -19998,45 +19989,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $15 + local.tee $6 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $1 i32.store offset=4 - local.get $10 + local.get $11 i32.load offset=8 - local.tee $5 - local.get $10 + local.tee $2 + local.get $11 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $16 - local.get $3 + local.set $7 + local.get $1 local.set $0 loop $while-continue|019 - local.get $5 - local.get $16 + local.get $2 + local.get $7 i32.ne if - local.get $5 + local.get $2 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $5 + local.get $2 f32.load - local.tee $13 + local.tee $14 f32.store local.get $0 - local.get $5 + local.get $2 f32.load offset=4 f32.store offset=4 local.get $0 - local.get $13 + local.get $14 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20065,11 +20056,11 @@ i32.const 16 i32.shr_u i32.xor - local.get $12 + local.get $16 i32.and i32.const 2 i32.shl - local.get $14 + local.get $5 i32.add local.tee $17 i32.load @@ -20082,39 +20073,39 @@ i32.add local.set $0 end - local.get $5 + local.get $2 i32.const 12 i32.add - local.set $5 + local.set $2 br $while-continue|019 end end - local.get $10 - local.get $14 + local.get $11 + local.get $5 i32.store - local.get $14 + local.get $5 if - local.get $10 - local.get $14 + local.get $11 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $12 + local.get $11 + local.get $16 i32.store offset=4 - local.get $10 - local.get $3 + local.get $11 + local.get $1 i32.store offset=8 - local.get $3 + local.get $1 if - local.get $10 - local.get $3 + local.get $11 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $10 - local.get $15 + local.get $11 + local.get $6 i32.store offset=12 - local.get $10 - local.get $10 + local.get $11 + local.get $11 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -20123,48 +20114,48 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $11 i32.load offset=8 local.tee $0 i32.store - local.get $10 - local.get $10 + local.get $11 + local.get $11 i32.load offset=16 - local.tee $3 + local.tee $1 i32.const 1 i32.add i32.store offset=16 - local.get $3 + local.get $1 i32.const 12 i32.mul local.get $0 i32.add local.tee $0 - local.get $4 + local.get $3 f32.store local.get $0 - local.get $4 + local.get $3 f32.store offset=4 - local.get $10 - local.get $10 + local.get $11 + local.get $11 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $10 + local.get $11 i32.load - local.get $10 - i32.load offset=4 local.get $11 + i32.load offset=4 + local.get $15 i32.and i32.const 2 i32.shl i32.add - local.tee $3 + local.tee $1 i32.load i32.store offset=8 - local.get $3 + local.get $1 local.get $0 i32.store end @@ -20172,21 +20163,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 - local.get $8 + local.get $12 + local.get $13 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $6 + local.get $4 i32.const 1 i32.add - local.set $6 + local.set $4 br $for-loop|2 end end - local.get $10 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -20198,7 +20189,7 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $12 i32.load offset=20 i32.const 100 i32.ne @@ -20211,17 +20202,17 @@ unreachable end f32.const 0 - local.set $4 + local.set $3 loop $for-loop|3 - local.get $4 + local.get $3 f32.const 50 f32.lt if - local.get $1 + local.get $8 i32.load - local.get $1 + local.get $8 i32.load offset=4 - local.get $4 + local.get $3 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20255,12 +20246,12 @@ i32.shl i32.add i32.load - local.set $2 + local.set $1 block $__inlined_func$~lib/map/Map#find21 loop $while-continue|022 - local.get $2 + local.get $1 if - local.get $2 + local.get $1 i32.load offset=8 local.tee $0 i32.const 1 @@ -20268,8 +20259,8 @@ if (result i32) i32.const 0 else - local.get $4 - local.get $2 + local.get $3 + local.get $1 f32.load f32.eq end @@ -20277,14 +20268,14 @@ local.get $0 i32.const -2 i32.and - local.set $2 + local.set $1 br $while-continue|022 end end i32.const 0 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 i32.eqz if i32.const 0 @@ -20294,10 +20285,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $4 + local.get $8 + local.get $3 call $~lib/map/Map#get - local.get $4 + local.get $3 i32.trunc_f32_s i32.const 20 i32.add @@ -20310,14 +20301,14 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $4 + local.get $8 + local.get $3 call $~lib/map/Map#delete - local.get $1 + local.get $8 i32.load - local.get $1 + local.get $8 i32.load offset=4 - local.get $4 + local.get $3 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20351,12 +20342,12 @@ i32.shl i32.add i32.load - local.set $2 + local.set $1 block $__inlined_func$~lib/map/Map#find24 loop $while-continue|025 - local.get $2 + local.get $1 if - local.get $2 + local.get $1 i32.load offset=8 local.tee $0 i32.const 1 @@ -20364,8 +20355,8 @@ if (result i32) i32.const 0 else - local.get $4 - local.get $2 + local.get $3 + local.get $1 f32.load f32.eq end @@ -20373,14 +20364,14 @@ local.get $0 i32.const -2 i32.and - local.set $2 + local.set $1 br $while-continue|025 end end i32.const 0 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 if i32.const 0 i32.const 1568 @@ -20389,14 +20380,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 f32.const 1 f32.add - local.set $4 + local.set $3 br $for-loop|3 end end - local.get $1 + local.get $8 i32.load offset=20 i32.const 50 i32.ne @@ -20409,17 +20400,17 @@ unreachable end f32.const 0 - local.set $4 + local.set $3 loop $for-loop|4 - local.get $4 + local.get $3 f32.const 50 f32.lt if - local.get $1 + local.get $8 i32.load - local.get $1 + local.get $8 i32.load offset=4 - local.get $4 + local.get $3 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20453,12 +20444,12 @@ i32.shl i32.add i32.load - local.set $2 + local.set $1 block $__inlined_func$~lib/map/Map#find27 loop $while-continue|028 - local.get $2 + local.get $1 if - local.get $2 + local.get $1 i32.load offset=8 local.tee $0 i32.const 1 @@ -20466,8 +20457,8 @@ if (result i32) i32.const 0 else - local.get $4 - local.get $2 + local.get $3 + local.get $1 f32.load f32.eq end @@ -20475,14 +20466,14 @@ local.get $0 i32.const -2 i32.and - local.set $2 + local.set $1 br $while-continue|028 end end i32.const 0 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 if i32.const 0 i32.const 1568 @@ -20491,18 +20482,18 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $4 - local.get $4 + local.get $8 + local.get $3 + local.get $3 i32.trunc_f32_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $1 + local.get $8 i32.load - local.get $1 + local.get $8 i32.load offset=4 - local.get $4 + local.get $3 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20536,12 +20527,12 @@ i32.shl i32.add i32.load - local.set $2 + local.set $1 block $__inlined_func$~lib/map/Map#find30 loop $while-continue|031 - local.get $2 + local.get $1 if - local.get $2 + local.get $1 i32.load offset=8 local.tee $0 i32.const 1 @@ -20549,8 +20540,8 @@ if (result i32) i32.const 0 else - local.get $4 - local.get $2 + local.get $3 + local.get $1 f32.load f32.eq end @@ -20558,14 +20549,14 @@ local.get $0 i32.const -2 i32.and - local.set $2 + local.set $1 br $while-continue|031 end end i32.const 0 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 i32.eqz if i32.const 0 @@ -20575,14 +20566,14 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $4 + local.get $8 + local.get $3 call $~lib/map/Map#delete - local.get $1 + local.get $8 i32.load - local.get $1 + local.get $8 i32.load offset=4 - local.get $4 + local.get $3 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20616,12 +20607,12 @@ i32.shl i32.add i32.load - local.set $2 + local.set $1 block $__inlined_func$~lib/map/Map#find33 loop $while-continue|034 - local.get $2 + local.get $1 if - local.get $2 + local.get $1 i32.load offset=8 local.tee $0 i32.const 1 @@ -20629,8 +20620,8 @@ if (result i32) i32.const 0 else - local.get $4 - local.get $2 + local.get $3 + local.get $1 f32.load f32.eq end @@ -20638,14 +20629,14 @@ local.get $0 i32.const -2 i32.and - local.set $2 + local.set $1 br $while-continue|034 end end i32.const 0 - local.set $2 + local.set $1 end - local.get $2 + local.get $1 if i32.const 0 i32.const 1568 @@ -20654,14 +20645,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 f32.const 1 f32.add - local.set $4 + local.set $3 br $for-loop|4 end end - local.get $1 + local.get $8 i32.load offset=20 i32.const 50 i32.ne @@ -20673,9 +20664,9 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $8 call $~lib/map/Map#clear - local.get $1 + local.get $8 i32.load offset=20 if i32.const 0 @@ -21205,21 +21196,21 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i32) - (local $4 f64) - (local $5 i32) + (local $3 f64) + (local $4 i32) + (local $5 i64) (local $6 i32) - (local $7 i64) + (local $7 i32) (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 f64) + (local $14 i32) (local $15 i32) (local $16 i32) - (local $17 i32) + (local $17 f64) (local $18 i32) global.get $~lib/memory/__stack_pointer i32.const 20 @@ -21231,16 +21222,16 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i64.const 0 i64.store - local.get $2 + local.get $1 i64.const 0 i64.store offset=8 - local.get $2 + local.get $1 i32.const 0 i32.store offset=16 - local.get $2 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -21249,63 +21240,63 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $6 i32.const 0 i32.store - local.get $1 + local.get $6 i32.const 24 i32.const 29 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $9 i32.store - local.get $1 + local.get $9 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $6 i32.store - local.get $3 + local.get $6 if - local.get $1 - local.get $3 + local.get $9 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $9 i32.const 3 i32.store offset=4 - local.get $1 + local.get $9 i32.const 64 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $6 i32.store offset=8 - local.get $3 + local.get $6 if - local.get $1 - local.get $3 + local.get $9 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $9 i32.const 4 i32.store offset=12 - local.get $1 + local.get $9 i32.const 0 i32.store offset=16 - local.get $1 + local.get $9 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 local.get $1 + local.get $9 i32.store loop $for-loop|0 - local.get $4 + local.get $3 f64.const 100 f64.lt if - local.get $1 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -21315,15 +21306,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $4 - local.get $4 + local.get $9 + local.get $3 + local.get $3 i32.trunc_f64_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $1 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -21334,10 +21325,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#get - local.get $4 + local.get $3 i32.trunc_f64_s i32.const 10 i32.add @@ -21350,14 +21341,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 f64.const 1 f64.add - local.set $4 + local.set $3 br $for-loop|0 end end - local.get $1 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -21370,14 +21361,14 @@ unreachable end f64.const 0 - local.set $4 + local.set $3 loop $for-loop|1 - local.get $4 + local.get $3 f64.const 100 f64.lt if - local.get $1 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -21388,10 +21379,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#get - local.get $4 + local.get $3 i32.trunc_f64_s i32.const 10 i32.add @@ -21404,15 +21395,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $4 - local.get $4 + local.get $9 + local.get $3 + local.get $3 i32.trunc_f64_s i32.const 20 i32.add call $~lib/map/Map#set - local.get $1 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -21423,10 +21414,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#get - local.get $4 + local.get $3 i32.trunc_f64_s i32.const 20 i32.add @@ -21439,14 +21430,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 f64.const 1 f64.add - local.set $4 + local.set $3 br $for-loop|1 end end - local.get $1 + local.get $9 i32.load offset=20 i32.const 100 i32.ne @@ -21459,8 +21450,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $2 + local.tee $1 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -21469,17 +21460,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i32.const 0 i32.store - local.get $1 + local.get $9 i32.load offset=8 - local.set $9 - local.get $1 + local.set $7 + local.get $9 i32.load offset=16 - local.tee $10 - local.set $11 - local.get $3 + local.tee $8 + local.set $10 + local.get $1 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -21488,28 +21479,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $11 i64.const 0 i64.store - local.get $2 + local.get $11 i32.const 16 i32.const 30 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $11 i32.store - local.get $2 + local.get $11 i32.const 0 i32.store - local.get $2 + local.get $11 i32.const 0 i32.store offset=4 - local.get $2 + local.get $11 i32.const 0 i32.store offset=8 - local.get $2 + local.get $11 i32.const 0 i32.store offset=12 - local.get $11 + local.get $10 i32.const 134217727 i32.gt_u if @@ -21521,9 +21512,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $10 i32.const 8 - local.get $11 + local.get $10 i32.const 8 i32.gt_u select @@ -21537,61 +21528,61 @@ local.get $13 local.get $12 call $~lib/memory/memory.fill - local.get $2 + local.get $11 local.get $13 i32.store local.get $13 if - local.get $2 + local.get $11 local.get $13 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 + local.get $11 local.get $13 i32.store offset=4 - local.get $2 + local.get $11 local.get $12 i32.store offset=8 - local.get $2 local.get $11 + local.get $10 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 - local.get $2 + local.get $1 + local.get $11 i32.store loop $for-loop|01 - local.get $5 - local.get $10 + local.get $2 + local.get $8 i32.lt_s if - local.get $5 + local.get $2 i32.const 4 i32.shl - local.get $9 + local.get $7 i32.add - local.tee $11 + local.tee $10 i32.load offset=12 i32.const 1 i32.and i32.eqz if local.get $0 - local.tee $3 + local.tee $1 i32.const 1 i32.add local.set $0 - local.get $11 + local.get $10 f64.load - local.set $4 - local.get $2 + local.set $3 + local.get $11 i32.load offset=12 - local.get $3 + local.get $1 i32.le_u if - local.get $3 + local.get $1 i32.const 0 i32.lt_s if @@ -21602,50 +21593,50 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.get $3 + local.get $11 + local.get $1 i32.const 1 i32.add - local.tee $11 + local.tee $10 i32.const 3 i32.const 1 call $~lib/array/ensureCapacity - local.get $2 local.get $11 + local.get $10 i32.store offset=12 end - local.get $2 + local.get $11 i32.load offset=4 - local.get $3 + local.get $1 i32.const 3 i32.shl i32.add - local.get $4 + local.get $3 f64.store end - local.get $5 + local.get $2 i32.const 1 i32.add - local.set $5 + local.set $2 br $for-loop|01 end end - local.get $2 + local.get $11 local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $2 + local.get $11 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $11 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $9 call $~lib/map/Map#values local.tee $10 i32.store offset=8 @@ -21659,68 +21650,68 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $1 i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 24 i32.const 31 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $12 i32.store - local.get $11 + local.get $12 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 if - local.get $11 - local.get $3 + local.get $12 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $12 i32.const 3 i32.store offset=4 - local.get $11 + local.get $12 i32.const 96 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $1 i32.store offset=8 - local.get $3 + local.get $1 if - local.get $11 - local.get $3 + local.get $12 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $12 i32.const 4 i32.store offset=12 - local.get $11 + local.get $12 i32.const 0 i32.store offset=16 - local.get $11 + local.get $12 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 + local.get $12 i32.store offset=12 global.get $~lib/memory/__stack_pointer call $~lib/map/Map#constructor - local.tee $8 + local.tee $13 i32.store offset=16 loop $for-loop|2 - local.get $2 + local.get $11 i32.load offset=12 - local.get $6 + local.get $4 i32.gt_s if - local.get $2 + local.get $11 i32.load offset=12 - local.get $6 + local.get $4 i32.le_u if i32.const 1248 @@ -21730,20 +21721,20 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 i32.load offset=4 - local.get $6 + local.get $4 i32.const 3 i32.shl i32.add f64.load - local.set $14 + local.set $3 local.get $10 - local.get $6 + local.get $4 call $~lib/array/Array#__get - local.set $9 - local.get $1 - local.get $14 + local.set $14 + local.get $9 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -21754,8 +21745,8 @@ call $~lib/builtins/abort unreachable end - local.get $1 local.get $9 + local.get $14 i32.const 20 i32.sub f64.convert_i32_s @@ -21780,11 +21771,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $11 + local.get $12 i32.load - local.get $14 + local.get $3 i64.reinterpret_f64 - local.tee $7 + local.tee $5 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -21794,7 +21785,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $7 + local.get $5 i64.const 32 i64.shr_u i32.wrap_i64 @@ -21824,8 +21815,8 @@ i32.const 16 i32.shr_u i32.xor - local.tee $12 - local.get $11 + local.tee $15 + local.get $12 i32.load offset=4 i32.and i32.const 2 @@ -21839,19 +21830,19 @@ if local.get $0 i32.load offset=16 - local.tee $3 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $14 + local.get $3 local.get $0 f64.load f64.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $3 + local.get $1 i32.const -2 i32.and local.set $0 @@ -21864,18 +21855,18 @@ local.get $0 if local.get $0 - local.get $14 + local.get $3 f64.store offset=8 else - local.get $11 + local.get $12 i32.load offset=16 - local.get $11 + local.get $12 i32.load offset=12 i32.eq if - local.get $11 + local.get $12 i32.load offset=20 - local.get $11 + local.get $12 i32.load offset=12 i32.const 3 i32.mul @@ -21883,17 +21874,17 @@ i32.div_s i32.lt_s if (result i32) - local.get $11 + local.get $12 i32.load offset=4 else - local.get $11 + local.get $12 i32.load offset=4 i32.const 1 i32.shl i32.const 1 i32.or end - local.set $13 + local.set $16 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -21907,14 +21898,14 @@ i64.const 0 i64.store local.get $0 - local.get $13 + local.get $16 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $15 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -21922,47 +21913,47 @@ i32.shl i32.const 3 i32.div_s - local.tee $16 + local.tee $7 i32.const 24 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $3 + local.tee $1 i32.store offset=4 - local.get $11 + local.get $12 i32.load offset=8 - local.tee $5 - local.get $11 + local.tee $2 + local.get $12 i32.load offset=16 i32.const 24 i32.mul i32.add - local.set $17 - local.get $3 + local.set $8 + local.get $1 local.set $0 loop $while-continue|02 - local.get $5 - local.get $17 + local.get $2 + local.get $8 i32.ne if - local.get $5 + local.get $2 i32.load offset=16 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $5 + local.get $2 f64.load - local.tee $4 + local.tee $17 f64.store local.get $0 - local.get $5 + local.get $2 f64.load offset=8 f64.store offset=8 local.get $0 - local.get $4 + local.get $17 i64.reinterpret_f64 - local.tee $7 + local.tee $5 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -21972,7 +21963,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $7 + local.get $5 i64.const 32 i64.shr_u i32.wrap_i64 @@ -22002,11 +21993,11 @@ i32.const 16 i32.shr_u i32.xor - local.get $13 + local.get $16 i32.and i32.const 2 i32.shl - local.get $15 + local.get $6 i32.add local.tee $18 i32.load @@ -22019,39 +22010,39 @@ i32.add local.set $0 end - local.get $5 + local.get $2 i32.const 24 i32.add - local.set $5 + local.set $2 br $while-continue|02 end end - local.get $11 - local.get $15 + local.get $12 + local.get $6 i32.store - local.get $15 + local.get $6 if - local.get $11 - local.get $15 + local.get $12 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 - local.get $13 + local.get $12 + local.get $16 i32.store offset=4 - local.get $11 - local.get $3 + local.get $12 + local.get $1 i32.store offset=8 - local.get $3 + local.get $1 if - local.get $11 - local.get $3 + local.get $12 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 - local.get $16 + local.get $12 + local.get $7 i32.store offset=12 - local.get $11 - local.get $11 + local.get $12 + local.get $12 i32.load offset=20 i32.store offset=16 global.get $~lib/memory/__stack_pointer @@ -22060,48 +22051,48 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $12 i32.load offset=8 local.tee $0 i32.store - local.get $11 - local.get $11 + local.get $12 + local.get $12 i32.load offset=16 - local.tee $3 + local.tee $1 i32.const 1 i32.add i32.store offset=16 - local.get $3 + local.get $1 i32.const 24 i32.mul local.get $0 i32.add local.tee $0 - local.get $14 + local.get $3 f64.store local.get $0 - local.get $14 + local.get $3 f64.store offset=8 - local.get $11 - local.get $11 + local.get $12 + local.get $12 i32.load offset=20 i32.const 1 i32.add i32.store offset=20 local.get $0 - local.get $11 + local.get $12 i32.load - local.get $11 - i32.load offset=4 local.get $12 + i32.load offset=4 + local.get $15 i32.and i32.const 2 i32.shl i32.add - local.tee $3 + local.tee $1 i32.load i32.store offset=16 - local.get $3 + local.get $1 local.get $0 i32.store end @@ -22109,21 +22100,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 - local.get $9 + local.get $13 + local.get $14 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $6 + local.get $4 i32.const 1 i32.add - local.set $6 + local.set $4 br $for-loop|2 end end - local.get $11 + local.get $12 i32.load offset=20 i32.const 100 i32.ne @@ -22135,7 +22126,7 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $13 i32.load offset=20 i32.const 100 i32.ne @@ -22148,14 +22139,14 @@ unreachable end f64.const 0 - local.set $4 + local.set $3 loop $for-loop|3 - local.get $4 + local.get $3 f64.const 50 f64.lt if - local.get $1 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -22166,10 +22157,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#get - local.get $4 + local.get $3 i32.trunc_f64_s i32.const 20 i32.add @@ -22182,11 +22173,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#delete - local.get $1 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -22196,14 +22187,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 f64.const 1 f64.add - local.set $4 + local.set $3 br $for-loop|3 end end - local.get $1 + local.get $9 i32.load offset=20 i32.const 50 i32.ne @@ -22216,14 +22207,14 @@ unreachable end f64.const 0 - local.set $4 + local.set $3 loop $for-loop|4 - local.get $4 + local.get $3 f64.const 50 f64.lt if - local.get $1 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -22233,15 +22224,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $4 - local.get $4 + local.get $9 + local.get $3 + local.get $3 i32.trunc_f64_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $1 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has i32.eqz if @@ -22252,11 +22243,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#delete - local.get $1 - local.get $4 + local.get $9 + local.get $3 call $~lib/map/Map#has if i32.const 0 @@ -22266,14 +22257,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 f64.const 1 f64.add - local.set $4 + local.set $3 br $for-loop|4 end end - local.get $1 + local.get $9 i32.load offset=20 i32.const 50 i32.ne @@ -22285,9 +22276,9 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $9 call $~lib/map/Map#clear - local.get $1 + local.get $9 i32.load offset=20 if i32.const 0 @@ -22493,7 +22484,6 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -22516,7 +22506,6 @@ local.get $0 i32.load local.get $1 - local.tee $3 i32.extend8_s i32.const -1028477379 i32.mul @@ -22526,26 +22515,26 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $3 i32.const 15 i32.shr_u - local.get $4 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $3 i32.const 13 i32.shr_u - local.get $4 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $3 i32.const 16 i32.shr_u - local.get $4 + local.get $3 i32.xor - local.tee $5 + local.tee $4 local.get $0 i32.load offset=4 i32.and @@ -22553,32 +22542,32 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 loop $while-continue|0 - local.get $4 + local.get $3 if - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=8 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 - i32.load8_u local.get $3 + i32.load8_u + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find drop - local.get $6 + local.get $5 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|0 end end @@ -22627,11 +22616,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $4 + local.tee $5 i32.const 1 i32.add i32.store offset=16 - local.get $4 + local.get $5 i32.const 12 i32.mul local.get $3 @@ -22653,7 +22642,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $5 + local.get $4 i32.and i32.const 2 i32.shl @@ -22697,18 +22686,18 @@ i32.const 16 i32.const 5 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store - local.get $3 + local.get $1 i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 0 i32.store offset=4 - local.get $3 + local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $1 i32.const 0 i32.store offset=12 local.get $0 @@ -22734,34 +22723,34 @@ local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $3 i32.store offset=4 - local.get $1 + local.get $3 local.get $2 call $~lib/memory/memory.fill - local.get $3 local.get $1 + local.get $3 i32.store - local.get $1 + local.get $3 if - local.get $3 local.get $1 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 local.get $1 - i32.store offset=4 local.get $3 + i32.store offset=4 + local.get $1 local.get $2 i32.store offset=8 - local.get $3 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 ) (func $~lib/map/Map#values (param $0 i32) (result i32) (local $1 i32) @@ -22796,7 +22785,7 @@ i32.load offset=16 local.tee $4 call $~lib/array/Array#constructor - local.tee $5 + local.tee $0 i32.store loop $for-loop|0 local.get $2 @@ -22808,15 +22797,15 @@ i32.mul local.get $3 i32.add - local.tee $0 + local.tee $5 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $5 - local.get $1 local.get $0 + local.get $1 + local.get $5 i32.load offset=4 call $~lib/array/Array#__set local.get $1 @@ -22831,19 +22820,19 @@ br $for-loop|0 end end - local.get $5 + local.get $0 local.get $1 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $5 + local.get $0 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $0 ) (func $~lib/map/Map#constructor (result i32) (local $0 i32) @@ -22917,7 +22906,6 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -22940,7 +22928,6 @@ local.get $0 i32.load local.get $1 - local.tee $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -22949,26 +22936,26 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $3 i32.const 15 i32.shr_u - local.get $4 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $3 i32.const 13 i32.shr_u - local.get $4 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $3 i32.const 16 i32.shr_u - local.get $4 + local.get $3 i32.xor - local.tee $5 + local.tee $4 local.get $0 i32.load offset=4 i32.and @@ -22976,30 +22963,30 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 loop $while-continue|0 - local.get $4 + local.get $3 if - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=8 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else + local.get $1 local.get $3 - local.get $4 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find drop - local.get $6 + local.get $5 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|0 end end @@ -23048,11 +23035,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $4 + local.tee $5 i32.const 1 i32.add i32.store offset=16 - local.get $4 + local.get $5 i32.const 12 i32.mul local.get $3 @@ -23074,7 +23061,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $5 + local.get $4 i32.and i32.const 2 i32.shl @@ -23095,7 +23082,6 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -23118,7 +23104,6 @@ local.get $0 i32.load local.get $1 - local.tee $3 i32.const 255 i32.and i32.const -1028477379 @@ -23129,26 +23114,26 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $3 i32.const 15 i32.shr_u - local.get $4 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $3 i32.const 13 i32.shr_u - local.get $4 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $3 i32.const 16 i32.shr_u - local.get $4 + local.get $3 i32.xor - local.tee $5 + local.tee $4 local.get $0 i32.load offset=4 i32.and @@ -23156,32 +23141,32 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 loop $while-continue|0 - local.get $4 + local.get $3 if - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=8 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 - i32.load8_u local.get $3 + i32.load8_u + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find drop - local.get $6 + local.get $5 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|0 end end @@ -23230,11 +23215,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $4 + local.tee $5 i32.const 1 i32.add i32.store offset=16 - local.get $4 + local.get $5 i32.const 12 i32.mul local.get $3 @@ -23256,7 +23241,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $5 + local.get $4 i32.and i32.const 2 i32.shl @@ -23277,7 +23262,6 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -23300,7 +23284,6 @@ local.get $0 i32.load local.get $1 - local.tee $3 i32.extend16_s i32.const -1028477379 i32.mul @@ -23310,26 +23293,26 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $3 i32.const 15 i32.shr_u - local.get $4 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $3 i32.const 13 i32.shr_u - local.get $4 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $3 i32.const 16 i32.shr_u - local.get $4 + local.get $3 i32.xor - local.tee $5 + local.tee $4 local.get $0 i32.load offset=4 i32.and @@ -23337,32 +23320,32 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 loop $while-continue|0 - local.get $4 + local.get $3 if - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=8 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 - i32.load16_u local.get $3 + i32.load16_u + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find drop - local.get $6 + local.get $5 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|0 end end @@ -23411,11 +23394,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $4 + local.tee $5 i32.const 1 i32.add i32.store offset=16 - local.get $4 + local.get $5 i32.const 12 i32.mul local.get $3 @@ -23437,7 +23420,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $5 + local.get $4 i32.and i32.const 2 i32.shl @@ -23458,7 +23441,6 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -23481,7 +23463,6 @@ local.get $0 i32.load local.get $1 - local.tee $3 i32.const 65535 i32.and i32.const -1028477379 @@ -23492,26 +23473,26 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $3 i32.const 15 i32.shr_u - local.get $4 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $3 i32.const 13 i32.shr_u - local.get $4 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $3 i32.const 16 i32.shr_u - local.get $4 + local.get $3 i32.xor - local.tee $5 + local.tee $4 local.get $0 i32.load offset=4 i32.and @@ -23519,32 +23500,32 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 loop $while-continue|0 - local.get $4 + local.get $3 if - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=8 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $4 - i32.load16_u local.get $3 + i32.load16_u + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/map/Map#find drop - local.get $6 + local.get $5 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|0 end end @@ -23593,11 +23574,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $4 + local.tee $5 i32.const 1 i32.add i32.store offset=16 - local.get $4 + local.get $5 i32.const 12 i32.mul local.get $3 @@ -23619,7 +23600,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $5 + local.get $4 i32.and i32.const 2 i32.shl @@ -23640,7 +23621,6 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -23663,7 +23643,6 @@ local.get $0 i32.load local.get $1 - local.tee $3 i32.const -1028477379 i32.mul i32.const 374761397 @@ -23672,26 +23651,26 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $4 + local.tee $3 i32.const 15 i32.shr_u - local.get $4 + local.get $3 i32.xor i32.const -2048144777 i32.mul - local.tee $4 + local.tee $3 i32.const 13 i32.shr_u - local.get $4 + local.get $3 i32.xor i32.const -1028477379 i32.mul - local.tee $4 + local.tee $3 i32.const 16 i32.shr_u - local.get $4 + local.get $3 i32.xor - local.tee $5 + local.tee $4 local.get $0 i32.load offset=4 i32.and @@ -23699,30 +23678,30 @@ i32.shl i32.add i32.load - local.set $4 + local.set $3 loop $while-continue|0 - local.get $4 + local.get $3 if - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.load offset=8 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else + local.get $1 local.get $3 - local.get $4 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find drop - local.get $6 + local.get $5 i32.const -2 i32.and - local.set $4 + local.set $3 br $while-continue|0 end end @@ -23771,11 +23750,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $4 + local.tee $5 i32.const 1 i32.add i32.store offset=16 - local.get $4 + local.get $5 i32.const 12 i32.mul local.get $3 @@ -23797,7 +23776,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $5 + local.get $4 i32.and i32.const 2 i32.shl @@ -24035,7 +24014,7 @@ i32.load offset=16 local.tee $4 call $~lib/array/Array#constructor - local.tee $5 + local.tee $0 i32.store loop $for-loop|0 local.get $2 @@ -24047,15 +24026,15 @@ i32.shl local.get $3 i32.add - local.tee $0 + local.tee $5 i32.load offset=12 i32.const 1 i32.and i32.eqz if - local.get $5 - local.get $1 local.get $0 + local.get $1 + local.get $5 i32.load offset=8 call $~lib/array/Array#__set local.get $1 @@ -24070,19 +24049,19 @@ br $for-loop|0 end end - local.get $5 + local.get $0 local.get $1 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $5 + local.get $0 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $0 ) (func $~lib/map/Map#set (param $0 i32) (param $1 i64) (param $2 i32) (local $3 i32) diff --git a/tests/compiler/std/math.optimized.wat b/tests/compiler/std/math.optimized.wat index 7cb6e347b4..6963978cc5 100644 --- a/tests/compiler/std/math.optimized.wat +++ b/tests/compiler/std/math.optimized.wat @@ -562,15 +562,15 @@ ) (func $~lib/math/NativeMath.acos (param $0 f64) (result f64) (local $1 i32) - (local $2 f64) - (local $3 i32) + (local $2 i32) + (local $3 f64) (local $4 f64) local.get $0 i64.reinterpret_f64 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $3 + local.tee $2 i32.const 2147483647 i32.and local.tee $1 @@ -586,7 +586,7 @@ i32.or i32.eqz if - local.get $3 + local.get $2 i32.const 31 i32.shr_u if @@ -668,7 +668,7 @@ f64.sub return end - local.get $3 + local.get $2 i32.const 31 i32.shr_u if @@ -680,7 +680,7 @@ f64.add local.tee $0 f64.sqrt - local.tee $2 + local.tee $3 local.get $0 local.get $0 local.get $0 @@ -722,7 +722,7 @@ f64.const 1 f64.add f64.div - local.get $2 + local.get $3 f64.mul f64.const 6.123233995736766e-17 f64.sub @@ -737,20 +737,20 @@ f64.const 0.5 f64.mul f64.sub - local.tee $0 + local.tee $3 f64.sqrt - local.tee $4 + local.tee $0 i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $2 - local.get $0 - local.get $0 - local.get $0 - local.get $0 - local.get $0 - local.get $0 + local.tee $4 + local.get $3 + local.get $3 + local.get $3 + local.get $3 + local.get $3 + local.get $3 f64.const 3.479331075960212e-05 f64.mul f64.const 7.915349942898145e-04 @@ -768,10 +768,10 @@ f64.const 0.16666666666666666 f64.add f64.mul - local.get $0 - local.get $0 - local.get $0 - local.get $0 + local.get $3 + local.get $3 + local.get $3 + local.get $3 f64.const 0.07703815055590194 f64.mul f64.const -0.6882839716054533 @@ -786,15 +786,15 @@ f64.const 1 f64.add f64.div - local.get $4 - f64.mul local.get $0 - local.get $2 - local.get $2 + f64.mul + local.get $3 + local.get $4 + local.get $4 f64.mul f64.sub + local.get $0 local.get $4 - local.get $2 f64.add f64.div f64.add @@ -804,12 +804,12 @@ ) (func $~lib/math/NativeMathf.acos (param $0 f32) (result f32) (local $1 i32) - (local $2 f32) - (local $3 i32) + (local $2 i32) + (local $3 f32) (local $4 f32) local.get $0 i32.reinterpret_f32 - local.tee $3 + local.tee $2 i32.const 2147483647 i32.and local.tee $1 @@ -820,7 +820,7 @@ i32.const 1065353216 i32.eq if - local.get $3 + local.get $2 i32.const 31 i32.shr_u if @@ -878,7 +878,7 @@ f32.sub return end - local.get $3 + local.get $2 i32.const 31 i32.shr_u if @@ -890,7 +890,7 @@ f32.add local.tee $0 f32.sqrt - local.tee $2 + local.tee $3 local.get $0 local.get $0 local.get $0 @@ -908,7 +908,7 @@ f32.const 1 f32.add f32.div - local.get $2 + local.get $3 f32.mul f32.const 7.549789415861596e-08 f32.sub @@ -923,17 +923,17 @@ f32.const 0.5 f32.mul f32.sub - local.tee $0 + local.tee $3 f32.sqrt - local.tee $4 + local.tee $0 i32.reinterpret_f32 i32.const -4096 i32.and f32.reinterpret_i32 - local.tee $2 - local.get $0 - local.get $0 - local.get $0 + local.tee $4 + local.get $3 + local.get $3 + local.get $3 f32.const -0.008656363002955914 f32.mul f32.const -0.04274342209100723 @@ -942,21 +942,21 @@ f32.const 0.16666586697101593 f32.add f32.mul - local.get $0 + local.get $3 f32.const -0.7066296339035034 f32.mul f32.const 1 f32.add f32.div - local.get $4 - f32.mul local.get $0 - local.get $2 - local.get $2 + f32.mul + local.get $3 + local.get $4 + local.get $4 f32.mul f32.sub + local.get $0 local.get $4 - local.get $2 f32.add f32.div f32.add @@ -1104,10 +1104,10 @@ local.tee $6 local.get $6 f64.mul - local.tee $0 - local.get $0 + local.tee $7 + local.get $7 f64.mul - local.set $7 + local.set $0 local.get $6 local.get $1 f64.const 0.5 @@ -1115,10 +1115,10 @@ local.get $1 f64.mul local.tee $6 - local.get $0 - local.get $7 - local.get $7 local.get $7 + local.get $0 + local.get $0 + local.get $0 f64.const 0.14798198605116586 f64.mul f64.const 0.1818357216161805 @@ -1130,9 +1130,9 @@ f64.const 0.6666666666666735 f64.add f64.mul - local.get $7 - local.get $7 - local.get $7 + local.get $0 + local.get $0 + local.get $0 f64.const 0.15313837699209373 f64.mul f64.const 0.22222198432149784 @@ -1327,10 +1327,10 @@ i32.wrap_i64 i32.const 4 i32.shl - local.tee $7 + local.tee $2 i32.const 1088 i32.add - local.set $2 + local.set $7 local.get $3 i64.const 52 i64.shr_s @@ -1338,7 +1338,7 @@ local.tee $0 f64.const 0.6931471805598903 f64.mul - local.get $2 + local.get $7 f64.load offset=8 f64.add local.tee $4 @@ -1348,16 +1348,16 @@ i64.and i64.sub f64.reinterpret_i64 - local.get $7 + local.get $2 i32.const 3136 i32.add - local.tee $7 + local.tee $2 f64.load f64.sub - local.get $7 + local.get $2 f64.load offset=8 f64.sub - local.get $2 + local.get $7 f64.load f64.mul local.tee $5 @@ -1402,41 +1402,39 @@ end ) (func $std/math/test_acosh (param $0 f64) (param $1 f64) (param $2 f64) (result i32) - (local $3 f64) - (local $4 i64) + (local $3 i64) + (local $4 f64) block $__inlined_func$~lib/math/NativeMath.acosh (result f64) local.get $0 - local.tee $3 + local.get $0 + f64.sub + f64.const 0 + f64.div + local.get $0 i64.reinterpret_f64 - local.tee $4 + local.tee $3 i64.const 4607182418800017408 i64.lt_s - if - local.get $3 - local.get $3 - f64.sub - f64.const 0 - f64.div - br $__inlined_func$~lib/math/NativeMath.acosh - end - local.get $4 + br_if $__inlined_func$~lib/math/NativeMath.acosh + drop + local.get $3 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.tee $4 + local.tee $3 i64.const 1024 i64.lt_u if - local.get $3 + local.get $0 f64.const 1 f64.sub - local.tee $3 - local.get $3 - local.get $3 + local.tee $4 + local.get $4 + local.get $4 f64.mul - local.get $3 - local.get $3 + local.get $4 + local.get $4 f64.add f64.add f64.sqrt @@ -1444,17 +1442,17 @@ call $~lib/math/NativeMath.log1p br $__inlined_func$~lib/math/NativeMath.acosh end - local.get $4 + local.get $3 i64.const 1049 i64.lt_u if - local.get $3 - local.get $3 + local.get $0 + local.get $0 f64.add f64.const 1 - local.get $3 - local.get $3 - local.get $3 + local.get $0 + local.get $0 + local.get $0 f64.mul f64.const 1 f64.sub @@ -1465,7 +1463,7 @@ call $~lib/math/NativeMath.log br $__inlined_func$~lib/math/NativeMath.acosh end - local.get $3 + local.get $0 call $~lib/math/NativeMath.log f64.const 0.6931471805599453 f64.add @@ -1607,10 +1605,10 @@ local.tee $5 local.get $5 f32.mul - local.tee $6 - local.get $6 + local.tee $0 + local.get $0 f32.mul - local.set $0 + local.set $6 local.get $5 local.get $1 f32.const 0.5 @@ -1618,15 +1616,15 @@ local.get $1 f32.mul local.tee $5 - local.get $6 local.get $0 + local.get $6 f32.const 0.2849878668785095 f32.mul f32.const 0.6666666269302368 f32.add f32.mul - local.get $0 - local.get $0 + local.get $6 + local.get $6 f32.const 0.24279078841209412 f32.mul f32.const 0.40000972151756287 @@ -1817,26 +1815,26 @@ call $std/math/check ) (func $~lib/math/NativeMath.asin (param $0 f64) (result f64) - (local $1 f64) - (local $2 f64) - (local $3 i32) - (local $4 i32) + (local $1 i32) + (local $2 i32) + (local $3 f64) + (local $4 f64) local.get $0 i64.reinterpret_f64 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $4 + local.tee $2 i32.const 2147483647 i32.and - local.tee $3 + local.tee $1 i32.const 1072693248 i32.ge_u if local.get $0 i64.reinterpret_f64 i32.wrap_i64 - local.get $3 + local.get $1 i32.const 1072693248 i32.sub i32.or @@ -1856,14 +1854,14 @@ f64.div return end - local.get $3 + local.get $1 i32.const 1071644672 i32.lt_u if - local.get $3 + local.get $1 i32.const 1045430272 i32.lt_u - local.get $3 + local.get $1 i32.const 1048576 i32.ge_u i32.and @@ -1927,16 +1925,15 @@ f64.const 0.5 f64.mul f64.sub - local.tee $0 + local.tee $4 f64.sqrt - local.set $2 - local.get $0 - local.tee $1 - local.get $1 - local.get $1 - local.get $1 - local.get $1 - local.get $1 + local.set $0 + local.get $4 + local.get $4 + local.get $4 + local.get $4 + local.get $4 + local.get $4 f64.const 3.479331075960212e-05 f64.mul f64.const 7.915349942898145e-04 @@ -1954,10 +1951,10 @@ f64.const 0.16666666666666666 f64.add f64.mul - local.get $1 - local.get $1 - local.get $1 - local.get $1 + local.get $4 + local.get $4 + local.get $4 + local.get $4 f64.const 0.07703815055590194 f64.mul f64.const -0.6882839716054533 @@ -1972,15 +1969,15 @@ f64.const 1 f64.add f64.div - local.set $1 - local.get $3 + local.set $3 + local.get $1 i32.const 1072640819 i32.ge_u if (result f64) f64.const 1.5707963267948966 - local.get $2 - local.get $2 - local.get $1 + local.get $0 + local.get $0 + local.get $3 f64.mul f64.add f64.const 2 @@ -1990,24 +1987,24 @@ f64.sub else f64.const 0.7853981633974483 - local.get $2 - local.get $2 + local.get $0 + local.get $0 f64.add - local.get $1 + local.get $3 f64.mul f64.const 6.123233995736766e-17 + local.get $4 local.get $0 - local.get $2 i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $0 - local.get $0 + local.tee $3 + local.get $3 f64.mul f64.sub - local.get $2 local.get $0 + local.get $3 f64.add f64.div f64.const 2 @@ -2015,15 +2012,15 @@ f64.sub f64.sub f64.const 0.7853981633974483 - local.get $0 - local.get $0 + local.get $3 + local.get $3 f64.add f64.sub f64.sub f64.sub end local.set $0 - local.get $4 + local.get $2 i32.const 31 i32.shr_u if @@ -2400,17 +2397,17 @@ local.get $0 local.get $0 f64.mul - local.tee $4 - local.get $4 + local.tee $5 + local.get $5 f64.mul - local.set $5 + local.set $4 local.get $0 - local.get $4 - local.get $5 - local.get $5 - local.get $5 - local.get $5 local.get $5 + local.get $4 + local.get $4 + local.get $4 + local.get $4 + local.get $4 f64.const 0.016285820115365782 f64.mul f64.const 0.049768779946159324 @@ -2428,11 +2425,11 @@ f64.const 0.3333333333333293 f64.add f64.mul - local.get $5 - local.get $5 - local.get $5 - local.get $5 - local.get $5 + local.get $4 + local.get $4 + local.get $4 + local.get $4 + local.get $4 f64.const -0.036531572744216916 f64.mul f64.const -0.058335701337905735 @@ -2616,14 +2613,14 @@ local.get $0 local.get $0 f32.mul - local.tee $4 - local.get $4 + local.tee $5 + local.get $5 f32.mul - local.set $5 + local.set $4 local.get $0 - local.get $4 - local.get $5 local.get $5 + local.get $4 + local.get $4 f32.const 0.06168760731816292 f32.mul f32.const 0.14253635704517365 @@ -2632,8 +2629,8 @@ f32.const 0.333333283662796 f32.add f32.mul - local.get $5 - local.get $5 + local.get $4 + local.get $4 f32.const -0.106480173766613 f32.mul f32.const -0.19999158382415771 @@ -2824,57 +2821,53 @@ call $std/math/check ) (func $std/math/test_atan2 (param $0 f64) (param $1 f64) (param $2 f64) (param $3 f64) (result i32) - (local $4 f64) - (local $5 i32) - (local $6 i64) - (local $7 i32) + (local $4 i32) + (local $5 i64) + (local $6 i32) + (local $7 i64) (local $8 i32) (local $9 i32) - (local $10 i32) + (local $10 f64) block $__inlined_func$~lib/math/NativeMath.atan2 (result f64) + local.get $1 + local.get $0 + f64.add + local.get $0 local.get $0 - local.tee $4 - local.get $4 f64.ne local.get $1 local.get $1 f64.ne i32.or - if - local.get $1 - local.get $4 - f64.add - br $__inlined_func$~lib/math/NativeMath.atan2 - end - local.get $4 + br_if $__inlined_func$~lib/math/NativeMath.atan2 + drop + local.get $0 i64.reinterpret_f64 - local.tee $6 + local.tee $5 i64.const 32 i64.shr_u i32.wrap_i64 local.set $9 - local.get $6 - i32.wrap_i64 local.get $1 i64.reinterpret_f64 - local.tee $6 + local.tee $7 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $10 + local.tee $8 i32.const 1072693248 i32.sub - local.get $6 + local.get $7 i32.wrap_i64 - local.tee $8 + local.tee $6 i32.or i32.eqz if - local.get $4 + local.get $0 call $~lib/math/NativeMath.atan br $__inlined_func$~lib/math/NativeMath.atan2 end - local.get $10 + local.get $8 i32.const 30 i32.shr_u i32.const 2 @@ -2883,15 +2876,13 @@ i32.const 31 i32.shr_u i32.or - local.set $5 - local.get $10 - i32.const 2147483647 - i32.and - local.set $10 + local.set $4 local.get $9 i32.const 2147483647 i32.and - local.tee $7 + local.tee $9 + local.get $5 + i32.wrap_i64 i32.or i32.eqz if @@ -2899,10 +2890,10 @@ block $case3|0 block $case2|0 block $case0|0 - local.get $5 + local.get $4 br_table $case0|0 $case0|0 $case2|0 $case3|0 $break|0 end - local.get $4 + local.get $0 br $__inlined_func$~lib/math/NativeMath.atan2 end f64.const 3.141592653589793 @@ -2913,95 +2904,98 @@ end end block $folding-inner0 + local.get $6 local.get $8 - local.get $10 + i32.const 2147483647 + i32.and + local.tee $8 i32.or i32.eqz br_if $folding-inner0 - local.get $10 + local.get $8 i32.const 2146435072 i32.eq if - local.get $7 + local.get $9 i32.const 2146435072 i32.eq if (result f64) f64.const 2.356194490192345 f64.const 0.7853981633974483 - local.get $5 + local.get $4 i32.const 2 i32.and select else f64.const 3.141592653589793 f64.const 0 - local.get $5 + local.get $4 i32.const 2 i32.and select end - local.tee $4 + local.tee $10 f64.neg + local.get $10 local.get $4 - local.get $5 i32.const 1 i32.and select br $__inlined_func$~lib/math/NativeMath.atan2 end - local.get $7 + local.get $9 i32.const 2146435072 i32.eq - local.get $7 - local.get $10 + local.get $9 + local.get $8 i32.const 67108864 i32.add i32.gt_u i32.or br_if $folding-inner0 - local.get $10 - local.get $7 + local.get $8 + local.get $9 i32.const 67108864 i32.add i32.gt_u i32.const 0 - local.get $5 + local.get $4 i32.const 2 i32.and select if (result f64) f64.const 0 else - local.get $4 + local.get $0 local.get $1 f64.div f64.abs call $~lib/math/NativeMath.atan end - local.set $4 + local.set $10 block $break|1 block $case3|1 block $case2|1 block $case1|1 block $case0|1 - local.get $5 + local.get $4 br_table $case0|1 $case1|1 $case2|1 $case3|1 $break|1 end - local.get $4 + local.get $10 br $__inlined_func$~lib/math/NativeMath.atan2 end - local.get $4 + local.get $10 f64.neg br $__inlined_func$~lib/math/NativeMath.atan2 end f64.const 3.141592653589793 - local.get $4 + local.get $10 f64.const 1.2246467991473532e-16 f64.sub f64.sub br $__inlined_func$~lib/math/NativeMath.atan2 end - local.get $4 + local.get $10 f64.const 1.2246467991473532e-16 f64.sub f64.const 3.141592653589793 @@ -3012,7 +3006,7 @@ end f64.const -1.5707963267948966 f64.const 1.5707963267948966 - local.get $5 + local.get $4 i32.const 1 i32.and select @@ -3048,12 +3042,9 @@ i32.or br_if $__inlined_func$~lib/math/NativeMathf.atan2 drop - local.get $0 - i32.reinterpret_f32 - local.set $5 local.get $1 i32.reinterpret_f32 - local.tee $6 + local.tee $5 i32.const 1065353216 i32.eq if @@ -3061,12 +3052,14 @@ call $~lib/math/NativeMathf.atan br $__inlined_func$~lib/math/NativeMathf.atan2 end - local.get $6 + local.get $5 i32.const 30 i32.shr_u i32.const 2 i32.and - local.get $5 + local.get $0 + i32.reinterpret_f32 + local.tee $6 i32.const 31 i32.shr_u i32.or @@ -3074,11 +3067,7 @@ local.get $6 i32.const 2147483647 i32.and - local.set $6 - local.get $5 - i32.const 2147483647 - i32.and - local.tee $5 + local.tee $6 i32.eqz if block $break|0 @@ -3104,15 +3093,18 @@ i32.const 1 i32.and select - local.get $6 + local.get $5 + i32.const 2147483647 + i32.and + local.tee $5 i32.eqz br_if $__inlined_func$~lib/math/NativeMathf.atan2 drop - local.get $6 + local.get $5 i32.const 2139095040 i32.eq if - local.get $5 + local.get $6 i32.const 2139095040 i32.eq if (result f32) @@ -3152,19 +3144,19 @@ i32.const 1 i32.and select - local.get $5 + local.get $6 i32.const 2139095040 i32.eq - local.get $5 local.get $6 + local.get $5 i32.const 218103808 i32.add i32.gt_u i32.or br_if $__inlined_func$~lib/math/NativeMathf.atan2 drop - local.get $6 local.get $5 + local.get $6 i32.const 218103808 i32.add i32.gt_u @@ -3219,66 +3211,63 @@ call $std/math/check ) (func $std/math/test_cbrt (param $0 f64) (param $1 f64) (param $2 f64) (result i32) - (local $3 f64) - (local $4 i32) + (local $3 i32) + (local $4 i64) (local $5 f64) - (local $6 i64) - (local $7 f64) + (local $6 f64) block $__inlined_func$~lib/math/NativeMath.cbrt (result f64) local.get $0 - local.tee $3 + local.get $0 + f64.add + local.get $0 i64.reinterpret_f64 - local.tee $6 + local.tee $4 i64.const 32 i64.shr_u i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $4 + local.tee $3 i32.const 2146435072 i32.ge_u - if - local.get $3 - local.get $3 - f64.add - br $__inlined_func$~lib/math/NativeMath.cbrt - end - local.get $4 + br_if $__inlined_func$~lib/math/NativeMath.cbrt + drop + local.get $3 i32.const 1048576 i32.lt_u if (result i32) - local.get $3 - local.get $3 + local.get $0 + local.get $0 f64.const 18014398509481984 f64.mul i64.reinterpret_f64 - local.tee $6 + local.tee $4 i64.const 32 i64.shr_u i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $4 + local.tee $3 i32.eqz br_if $__inlined_func$~lib/math/NativeMath.cbrt drop - local.get $4 + local.get $3 i32.const 3 i32.div_u i32.const 696219795 i32.add else - local.get $4 + local.get $3 i32.const 3 i32.div_u i32.const 715094163 i32.add end - local.set $4 - local.get $6 + local.set $3 + local.get $4 i64.const -9223372036854775808 i64.and - local.get $4 + local.get $3 i64.extend_i32_u i64.const 32 i64.shl @@ -3288,14 +3277,14 @@ local.get $5 f64.mul local.get $5 - local.get $3 + local.get $0 f64.div f64.mul - local.set $7 - local.get $3 + local.set $6 + local.get $0 local.get $5 - local.get $7 - local.get $7 + local.get $6 + local.get $6 f64.const 1.6214297201053545 f64.mul f64.const -1.8849797954337717 @@ -3303,12 +3292,12 @@ f64.mul f64.const 1.87595182427177 f64.add - local.get $7 - local.get $7 + local.get $6 + local.get $6 f64.mul - local.get $7 + local.get $6 f64.mul - local.get $7 + local.get $6 f64.const 0.14599619288661245 f64.mul f64.const -0.758397934778766 @@ -3322,20 +3311,20 @@ i64.const -1073741824 i64.and f64.reinterpret_i64 - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 f64.mul f64.div - local.set $5 - local.get $3 - local.get $3 + local.set $6 + local.get $5 + local.get $5 + local.get $6 local.get $5 - local.get $3 f64.sub - local.get $3 - local.get $3 - f64.add local.get $5 + local.get $5 + f64.add + local.get $6 f64.add f64.div f64.mul @@ -3413,38 +3402,38 @@ f64.mul local.get $3 f64.mul - local.set $7 + local.set $6 local.get $3 local.get $0 f64.promote_f32 - local.tee $3 - local.get $3 - f64.add - local.tee $6 + local.tee $7 local.get $7 f64.add + local.tee $3 + local.get $6 + f64.add f64.mul - local.get $3 local.get $7 + local.get $6 f64.add - local.get $7 + local.get $6 f64.add f64.div - local.tee $7 - local.get $7 + local.tee $8 + local.get $8 f64.mul - local.get $7 + local.get $8 f64.mul - local.set $8 - local.get $7 - local.get $6 + local.set $6 local.get $8 + local.get $3 + local.get $6 f64.add f64.mul - local.get $3 - local.get $8 + local.get $7 + local.get $6 f64.add - local.get $8 + local.get $6 f64.add f64.div f32.demote_f64 @@ -3652,19 +3641,19 @@ i64.const 32 i64.shr_u i64.add - local.tee $1 + local.tee $12 i64.const 4294967295 i64.and i64.add - local.set $12 + local.set $1 local.get $10 i64.const 3373259426 i64.mul - local.get $1 + local.get $12 i64.const 32 i64.shr_u i64.add - local.get $12 + local.get $1 i64.const 32 i64.shr_u i64.add @@ -3672,7 +3661,7 @@ local.get $11 i64.const 4294967295 i64.and - local.get $12 + local.get $1 i64.const 32 i64.shl i64.add @@ -4100,14 +4089,14 @@ local.get $7 f64.const 0.5 f64.mul - local.tee $9 - f64.sub local.tee $0 - f64.const 1 - local.get $0 f64.sub + local.tee $9 + f64.const 1 local.get $9 f64.sub + local.get $0 + f64.sub local.get $7 local.get $7 local.get $7 @@ -4165,18 +4154,18 @@ block $folding-inner0 local.get $0 i32.reinterpret_f32 - local.tee $1 + local.tee $5 i32.const 31 i32.shr_u - local.set $5 - local.get $1 + local.set $1 + local.get $5 i32.const 2147483647 i32.and - local.tee $1 + local.tee $5 i32.const 1061752794 i32.le_u if - local.get $1 + local.get $5 i32.const 964689920 i32.lt_u if @@ -4194,11 +4183,11 @@ local.set $2 br $folding-inner0 end - local.get $1 + local.get $5 i32.const 1081824209 i32.le_u if - local.get $1 + local.get $5 i32.const 1075235811 i32.gt_u if @@ -4210,7 +4199,7 @@ local.get $2 f64.const 3.141592653589793 f64.sub - local.get $5 + local.get $1 select local.tee $2 local.get $2 @@ -4242,7 +4231,7 @@ f32.neg return else - local.get $5 + local.get $1 if (result f64) local.get $0 f64.promote_f32 @@ -4293,11 +4282,11 @@ end unreachable end - local.get $1 + local.get $5 i32.const 1088565717 i32.le_u if - local.get $1 + local.get $5 i32.const 1085271519 i32.gt_u if @@ -4309,7 +4298,7 @@ local.get $2 f64.const 6.283185307179586 f64.sub - local.get $5 + local.get $1 select local.tee $2 local.get $2 @@ -4320,7 +4309,7 @@ local.set $2 br $folding-inner0 else - local.get $5 + local.get $1 if (result f64) local.get $0 f32.neg @@ -4372,7 +4361,7 @@ end unreachable end - local.get $1 + local.get $5 i32.const 2139095040 i32.ge_u if @@ -4382,7 +4371,7 @@ return end block $~lib/math/rempio2f|inlined.0 (result i32) - local.get $1 + local.get $5 i32.const 1305022427 i32.lt_u if @@ -4407,7 +4396,7 @@ i32.trunc_f64_s br $~lib/math/rempio2f|inlined.0 end - local.get $1 + local.get $5 i32.const 23 i32.shr_s i32.const 152 @@ -4416,7 +4405,7 @@ i32.const 63 i32.and i64.extend_i32_s - local.set $4 + local.set $8 local.get $7 i32.const 6 i32.shr_s @@ -4426,53 +4415,53 @@ i32.add local.tee $7 i64.load offset=8 - local.set $8 + local.set $9 f64.const 8.515303950216386e-20 local.get $0 f64.promote_f32 f64.copysign - local.get $1 + local.get $5 i32.const 8388607 i32.and i32.const 8388608 i32.or i64.extend_i32_s - local.tee $9 + local.tee $4 local.get $7 i64.load - local.get $4 - i64.shl local.get $8 + i64.shl + local.get $9 i64.const 64 - local.get $4 + local.get $8 i64.sub i64.shr_u i64.or i64.mul - local.get $4 + local.get $8 i64.const 32 i64.gt_u if (result i64) + local.get $9 local.get $8 - local.get $4 i64.const 32 i64.sub i64.shl local.get $7 i64.load offset=16 i64.const 96 - local.get $4 + local.get $8 i64.sub i64.shr_u i64.or else - local.get $8 + local.get $9 i64.const 32 - local.get $4 + local.get $8 i64.sub i64.shr_u end - local.get $9 + local.get $4 i64.mul i64.const 32 i64.shr_u @@ -4493,10 +4482,10 @@ i64.shr_u i64.add i32.wrap_i64 - local.tee $1 + local.tee $5 i32.sub - local.get $1 local.get $5 + local.get $1 select end local.set $1 @@ -4697,26 +4686,26 @@ local.get $0 f64.const 0.5 f64.mul - local.tee $6 - f64.mul local.tee $7 - local.get $7 + f64.mul + local.tee $6 + local.get $6 f64.mul local.set $8 f64.const 3 - local.get $7 + local.get $6 f64.const -0.03333333333333313 f64.mul f64.const 1 f64.add local.get $8 - local.get $7 + local.get $6 f64.const -7.93650757867488e-05 f64.mul f64.const 1.5873015872548146e-03 f64.add local.get $8 - local.get $7 + local.get $6 f64.const -2.0109921818362437e-07 f64.mul f64.const 4.008217827329362e-06 @@ -4726,42 +4715,42 @@ f64.mul f64.add local.tee $8 - local.get $6 + local.get $7 f64.mul f64.sub - local.set $6 - local.get $7 - local.get $8 + local.set $7 local.get $6 + local.get $8 + local.get $7 f64.sub f64.const 6 local.get $0 - local.get $6 + local.get $7 f64.mul f64.sub f64.div f64.mul - local.set $6 + local.set $7 local.get $1 i32.eqz if local.get $0 local.get $0 - local.get $6 - f64.mul local.get $7 + f64.mul + local.get $6 f64.sub f64.sub return end local.get $0 - local.get $6 + local.get $7 local.get $2 f64.sub f64.mul local.get $2 f64.sub - local.get $7 + local.get $6 f64.sub local.set $2 local.get $1 @@ -4869,8 +4858,8 @@ (func $~lib/math/NativeMath.exp (param $0 f64) (result f64) (local $1 i32) (local $2 i64) - (local $3 f64) - (local $4 i32) + (local $3 i32) + (local $4 f64) (local $5 f64) (local $6 i64) (local $7 f64) @@ -4933,9 +4922,9 @@ f64.mul f64.const 6755399441055744 f64.add - local.tee $3 + local.tee $4 i64.reinterpret_f64 - local.tee $2 + local.tee $6 i64.const 127 i64.and i64.const 1 @@ -4945,15 +4934,15 @@ i32.shl i32.const 5664 i32.add - local.tee $4 + local.tee $3 i64.load offset=8 - local.get $2 + local.get $6 i64.const 45 i64.shl i64.add - local.set $6 + local.set $2 local.get $0 - local.get $3 + local.get $4 f64.const 6755399441055744 f64.sub local.tee $0 @@ -4967,12 +4956,12 @@ local.tee $0 local.get $0 f64.mul - local.set $3 - local.get $4 + local.set $4 + local.get $3 f64.load local.get $0 f64.add - local.get $3 + local.get $4 local.get $0 f64.const 0.16666666666665886 f64.mul @@ -4980,8 +4969,8 @@ f64.add f64.mul f64.add - local.get $3 - local.get $3 + local.get $4 + local.get $4 f64.mul local.get $0 f64.const 0.008333335853059549 @@ -4990,66 +4979,66 @@ f64.add f64.mul f64.add - local.set $7 + local.set $4 local.get $1 i32.eqz if block $~lib/util/math/specialcase|inlined.0 (result f64) - local.get $2 + local.get $6 i64.const 2147483648 i64.and i64.eqz if - local.get $6 + local.get $2 i64.const 4544132024016830464 i64.sub f64.reinterpret_i64 local.tee $0 local.get $0 - local.get $7 + local.get $4 f64.mul f64.add f64.const 5486124068793688683255936e279 f64.mul br $~lib/util/math/specialcase|inlined.0 end - local.get $6 + local.get $2 i64.const 4602678819172646912 i64.add local.tee $2 f64.reinterpret_i64 - local.tee $0 - local.get $0 + local.tee $7 local.get $7 + local.get $4 f64.mul f64.add - local.tee $8 + local.tee $5 f64.abs f64.const 1 f64.lt if (result f64) f64.const 1 - local.get $8 + local.get $5 f64.copysign - local.tee $3 - local.get $8 - f64.add - local.tee $5 - local.get $3 + local.tee $8 local.get $5 - f64.sub - local.get $8 f64.add - local.get $0 + local.tee $0 local.get $8 - f64.sub local.get $0 + f64.sub + local.get $5 + f64.add local.get $7 + local.get $5 + f64.sub + local.get $7 + local.get $4 f64.mul f64.add f64.add f64.add - local.get $3 + local.get $8 f64.sub local.tee $0 f64.const 0 @@ -5063,18 +5052,18 @@ local.get $0 end else - local.get $8 + local.get $5 end f64.const 2.2250738585072014e-308 f64.mul end br $~lib/util/math/exp_lut|inlined.0 end - local.get $6 + local.get $2 f64.reinterpret_i64 local.tee $0 local.get $0 - local.get $7 + local.get $4 f64.mul f64.add end @@ -5257,8 +5246,8 @@ f32.mul local.tee $6 f32.mul - local.tee $7 - local.get $7 + local.tee $4 + local.get $4 f32.const 1.5807170420885086e-03 f32.mul f32.const -0.03333321213722229 @@ -5266,13 +5255,13 @@ f32.mul f32.const 1 f32.add - local.tee $4 + local.tee $7 local.get $6 f32.mul f32.sub local.set $6 - local.get $7 local.get $4 + local.get $7 local.get $6 f32.sub f32.const 6 @@ -5282,27 +5271,27 @@ f32.sub f32.div f32.mul - local.set $4 + local.set $6 local.get $1 i32.eqz if local.get $0 local.get $0 - local.get $4 + local.get $6 f32.mul - local.get $7 + local.get $4 f32.sub f32.sub return end local.get $0 - local.get $4 + local.get $6 local.get $2 f32.sub f32.mul local.get $2 f32.sub - local.get $7 + local.get $4 f32.sub local.set $2 local.get $1 @@ -5412,8 +5401,6 @@ (local $4 i32) (local $5 f64) block $~lib/util/math/expf_lut|inlined.0 (result f32) - local.get $0 - f64.promote_f32 local.get $0 i32.reinterpret_f32 local.tee $3 @@ -5454,16 +5441,18 @@ br_if $~lib/util/math/expf_lut|inlined.0 drop end + local.get $0 + f64.promote_f32 f64.const 46.16624130844683 f64.mul - local.tee $5 + local.tee $1 f64.const 6755399441055744 f64.add - local.tee $1 + local.tee $5 i64.reinterpret_f64 local.set $2 - local.get $5 local.get $1 + local.get $5 f64.const 6755399441055744 f64.sub f64.sub @@ -5566,8 +5555,8 @@ (func $std/math/test_exp2 (param $0 f64) (param $1 f64) (param $2 f64) (result i32) (local $3 i32) (local $4 i64) - (local $5 f64) - (local $6 i32) + (local $5 i32) + (local $6 f64) (local $7 f64) (local $8 i64) (local $9 f64) @@ -5640,9 +5629,9 @@ local.get $0 f64.const 52776558133248 f64.add - local.tee $5 + local.tee $6 i64.reinterpret_f64 - local.tee $4 + local.tee $8 i64.const 127 i64.and i64.const 1 @@ -5652,30 +5641,30 @@ i32.shl i32.const 5664 i32.add - local.tee $6 + local.tee $5 i64.load offset=8 - local.get $4 + local.get $8 i64.const 45 i64.shl i64.add - local.set $8 + local.set $4 local.get $0 - local.get $5 + local.get $6 f64.const 52776558133248 f64.sub f64.sub - local.tee $5 - local.get $5 + local.tee $6 + local.get $6 f64.mul local.set $7 - local.get $6 - f64.load local.get $5 + f64.load + local.get $6 f64.const 0.6931471805599453 f64.mul f64.add local.get $7 - local.get $5 + local.get $6 f64.const 0.0555041086686087 f64.mul f64.const 0.24022650695909065 @@ -5685,44 +5674,44 @@ local.get $7 local.get $7 f64.mul - local.get $5 + local.get $6 f64.const 1.3332074570119598e-03 f64.mul f64.const 0.009618131975721055 f64.add f64.mul f64.add - local.set $9 + local.set $7 local.get $3 i32.eqz if block $~lib/util/math/specialcase2|inlined.0 (result f64) - local.get $4 + local.get $8 i64.const 2147483648 i64.and i64.eqz if - local.get $8 + local.get $4 i64.const 4503599627370496 i64.sub f64.reinterpret_i64 - local.tee $5 - local.get $9 + local.tee $6 + local.get $7 f64.mul - local.get $5 + local.get $6 f64.add f64.const 2 f64.mul br $~lib/util/math/specialcase2|inlined.0 end - local.get $8 + local.get $4 i64.const 4602678819172646912 i64.add f64.reinterpret_i64 - local.tee $5 - local.get $9 + local.tee $9 + local.get $7 f64.mul - local.get $5 + local.get $9 f64.add local.tee $10 f64.const 1 @@ -5731,17 +5720,17 @@ local.get $10 f64.const 1 f64.add - local.tee $7 + local.tee $6 f64.const 1 - local.get $7 + local.get $6 f64.sub local.get $10 f64.add - local.get $5 + local.get $9 local.get $10 f64.sub - local.get $5 local.get $9 + local.get $7 f64.mul f64.add f64.add @@ -5756,12 +5745,12 @@ end br $~lib/util/math/exp2_lut|inlined.0 end - local.get $8 + local.get $4 f64.reinterpret_i64 - local.tee $5 - local.get $9 + local.tee $6 + local.get $7 f64.mul - local.get $5 + local.get $6 f64.add end local.get $1 @@ -5785,9 +5774,6 @@ (local $6 i32) (local $7 f64) block $~lib/util/math/exp2f_lut|inlined.0 (result f32) - local.get $0 - f64.promote_f32 - local.set $7 local.get $0 i32.reinterpret_f32 local.tee $5 @@ -5828,14 +5814,16 @@ br_if $~lib/util/math/exp2f_lut|inlined.0 drop end - local.get $7 + local.get $0 + f64.promote_f32 + local.tee $3 f64.const 211106232532992 f64.add - local.tee $3 + local.tee $7 i64.reinterpret_f64 local.set $4 - local.get $7 local.get $3 + local.get $7 f64.const 211106232532992 f64.sub f64.sub @@ -5880,11 +5868,11 @@ (local $5 i64) (local $6 i64) (local $7 f64) - (local $8 i32) + (local $8 f64) (local $9 f64) (local $10 i32) (local $11 f64) - (local $12 f64) + (local $12 i32) (local $13 f64) block $__inlined_func$~lib/math/NativeMath.hypot (result f64) local.get $1 @@ -5911,7 +5899,7 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $8 + local.tee $10 i32.const 2047 i32.eq br_if $__inlined_func$~lib/math/NativeMath.hypot @@ -5925,7 +5913,7 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $10 + local.tee $12 i32.const 2047 i32.eq i32.or @@ -5934,21 +5922,21 @@ local.get $0 local.get $1 f64.add + local.get $12 local.get $10 - local.get $8 i32.sub i32.const 64 i32.gt_s br_if $__inlined_func$~lib/math/NativeMath.hypot drop f64.const 1 - local.set $9 - local.get $10 + local.set $11 + local.get $12 i32.const 1533 i32.gt_u if (result f64) f64.const 5260135901548373507240989e186 - local.set $9 + local.set $11 local.get $1 f64.const 1.90109156629516e-211 f64.mul @@ -5957,12 +5945,12 @@ f64.const 1.90109156629516e-211 f64.mul else - local.get $8 + local.get $10 i32.const 573 i32.lt_u if (result f64) f64.const 1.90109156629516e-211 - local.set $9 + local.set $11 local.get $1 f64.const 5260135901548373507240989e186 f64.mul @@ -5974,31 +5962,31 @@ local.get $0 end end - local.tee $11 - local.get $11 - local.get $11 + local.tee $7 + local.get $7 + local.get $7 f64.const 134217729 f64.mul local.tee $0 f64.sub local.get $0 f64.add - local.tee $12 + local.tee $0 f64.sub - local.set $7 + local.set $9 local.get $1 local.get $1 local.get $1 f64.const 134217729 f64.mul - local.tee $0 + local.tee $8 f64.sub - local.get $0 + local.get $8 f64.add local.tee $13 f64.sub - local.set $0 - local.get $9 + local.set $8 + local.get $11 local.get $13 local.get $13 f64.mul @@ -6010,31 +5998,31 @@ local.get $13 local.get $13 f64.add - local.get $0 + local.get $8 f64.add - local.get $0 + local.get $8 f64.mul f64.add - local.get $12 - local.get $12 + local.get $0 + local.get $0 f64.mul - local.get $11 - local.get $11 + local.get $7 + local.get $7 f64.mul - local.tee $0 + local.tee $7 f64.sub - local.get $12 - local.get $12 + local.get $0 + local.get $0 f64.add - local.get $7 + local.get $9 f64.add - local.get $7 + local.get $9 f64.mul f64.add f64.add local.get $1 f64.add - local.get $0 + local.get $7 f64.add f64.sqrt f64.mul @@ -6067,9 +6055,6 @@ local.set $4 local.set $5 end - local.get $4 - f32.reinterpret_i32 - local.set $8 local.get $5 f32.reinterpret_i32 local.tee $1 @@ -6078,7 +6063,9 @@ i32.eq br_if $__inlined_func$~lib/math/NativeMathf.hypot drop - local.get $8 + local.get $4 + f32.reinterpret_i32 + local.tee $8 local.get $1 f32.add local.get $5 @@ -6150,10 +6137,10 @@ call $std/math/check ) (func $std/math/test_log10 (param $0 f64) (param $1 f64) (param $2 f64) (result i32) - (local $3 f64) - (local $4 i32) - (local $5 i64) - (local $6 i32) + (local $3 i32) + (local $4 i64) + (local $5 i32) + (local $6 f64) (local $7 f64) (local $8 f64) (local $9 f64) @@ -6161,66 +6148,65 @@ (local $11 f64) block $__inlined_func$~lib/math/NativeMath.log10 (result f64) local.get $0 - local.tee $3 i64.reinterpret_f64 - local.tee $5 + local.tee $4 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $4 + local.tee $3 i32.const 31 i32.shr_u - local.get $4 + local.get $3 i32.const 1048576 i32.lt_u i32.or if f64.const -1 - local.get $3 - local.get $3 + local.get $0 + local.get $0 f64.mul f64.div - local.get $5 + local.get $4 i64.const 1 i64.shl i64.eqz br_if $__inlined_func$~lib/math/NativeMath.log10 drop - local.get $3 - local.get $3 + local.get $0 + local.get $0 f64.sub f64.const 0 f64.div - local.get $4 + local.get $3 i32.const 31 i32.shr_u br_if $__inlined_func$~lib/math/NativeMath.log10 drop i32.const -54 - local.set $6 - local.get $3 + local.set $5 + local.get $0 f64.const 18014398509481984 f64.mul i64.reinterpret_f64 - local.tee $5 + local.tee $4 i64.const 32 i64.shr_u i32.wrap_i64 - local.set $4 + local.set $3 else - local.get $4 + local.get $3 i32.const 2146435072 i32.ge_u if - local.get $3 + local.get $0 br $__inlined_func$~lib/math/NativeMath.log10 else f64.const 0 - local.get $5 + local.get $4 i64.const 32 i64.shl i64.eqz - local.get $4 + local.get $3 i32.const 1072693248 i32.eq i32.and @@ -6228,13 +6214,13 @@ drop end end - local.get $5 + local.get $4 i64.const 4294967295 i64.and - local.get $4 + local.get $3 i32.const 614242 i32.add - local.tee $4 + local.tee $3 i32.const 1048575 i32.and i32.const 1072079006 @@ -6246,14 +6232,14 @@ f64.reinterpret_i64 f64.const 1 f64.sub - local.tee $3 + local.tee $6 f64.const 0.5 f64.mul - local.get $3 + local.get $6 f64.mul local.set $7 - local.get $3 - local.get $3 + local.get $6 + local.get $6 f64.const 2 f64.add f64.div @@ -6264,15 +6250,15 @@ local.get $9 f64.mul local.set $10 - local.get $3 - local.get $3 + local.get $6 + local.get $6 local.get $7 f64.sub i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $3 + local.tee $11 f64.sub local.get $7 f64.sub @@ -6309,29 +6295,29 @@ f64.mul f64.add local.set $7 - local.get $4 + local.get $3 i32.const 20 i32.shr_u i32.const 1023 i32.sub - local.get $6 + local.get $5 i32.add f64.convert_i32_s local.tee $8 f64.const 0.30102999566361177 f64.mul local.tee $9 - local.get $3 + local.get $11 f64.const 0.4342944818781689 f64.mul local.tee $10 f64.add - local.set $11 + local.set $6 local.get $8 f64.const 3.694239077158931e-13 f64.mul local.get $7 - local.get $3 + local.get $11 f64.add f64.const 2.5082946711645275e-11 f64.mul @@ -6341,12 +6327,12 @@ f64.mul f64.add local.get $9 - local.get $11 + local.get $6 f64.sub local.get $10 f64.add f64.add - local.get $11 + local.get $6 f64.add end local.get $1 @@ -6441,13 +6427,13 @@ f32.const 2 f32.add f32.div + local.tee $0 + local.get $0 + f32.mul local.tee $5 local.get $5 f32.mul - local.tee $6 - local.get $6 - f32.mul - local.set $0 + local.set $8 local.get $3 i32.const 23 i32.shr_u @@ -6456,7 +6442,7 @@ local.get $4 i32.add f32.convert_i32_s - local.tee $8 + local.tee $6 f32.const 7.903415166765626e-07 f32.mul local.get $7 @@ -6466,27 +6452,27 @@ f32.mul local.get $7 f32.mul - local.tee $9 + local.tee $7 f32.sub i32.reinterpret_f32 i32.const -4096 i32.and f32.reinterpret_i32 - local.tee $7 + local.tee $9 f32.sub - local.get $9 + local.get $7 f32.sub - local.get $5 - local.get $9 - local.get $6 local.get $0 + local.get $7 + local.get $5 + local.get $8 f32.const 0.2849878668785095 f32.mul f32.const 0.6666666269302368 f32.add f32.mul - local.get $0 - local.get $0 + local.get $8 + local.get $8 f32.const 0.24279078841209412 f32.mul f32.const 0.40000972151756287 @@ -6497,7 +6483,7 @@ f32.mul f32.add local.tee $0 - local.get $7 + local.get $9 f32.add f32.const -3.168997136526741e-05 f32.mul @@ -6506,11 +6492,11 @@ f32.const 0.434326171875 f32.mul f32.add - local.get $7 + local.get $9 f32.const 0.434326171875 f32.mul f32.add - local.get $8 + local.get $6 f32.const 0.3010292053222656 f32.mul f32.add @@ -6542,70 +6528,70 @@ local.get $0 f64.const 1 f64.sub - local.tee $4 + local.tee $5 i64.reinterpret_f64 i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $5 + local.tee $6 f64.const 1.4426950407214463 f64.mul - local.set $6 - local.get $4 - local.get $4 + local.set $7 + local.get $5 + local.get $5 f64.mul - local.tee $7 - local.get $7 + local.tee $8 + local.get $8 f64.mul - local.set $8 - local.get $6 + local.set $0 local.get $7 - local.get $4 + local.get $8 + local.get $5 f64.const 0.48089834696298744 f64.mul f64.const -0.7213475204444817 f64.add f64.mul - local.tee $9 + local.tee $4 f64.add - local.tee $0 - local.get $4 + local.tee $9 local.get $5 + local.get $6 f64.sub f64.const 1.4426950407214463 f64.mul - local.get $4 + local.get $5 f64.const 1.6751713164886512e-10 f64.mul f64.add - local.get $6 - local.get $0 - f64.sub + local.get $7 local.get $9 + f64.sub + local.get $4 f64.add f64.add - local.get $8 - local.get $4 + local.get $0 + local.get $5 f64.const 0.2885390081805197 f64.mul f64.const -0.360673760222145 f64.add - local.get $7 - local.get $4 + local.get $8 + local.get $5 f64.const 0.2060992861022954 f64.mul f64.const -0.24044917405728863 f64.add f64.mul f64.add - local.get $8 - local.get $4 + local.get $0 + local.get $5 f64.const 0.1603032746063156 f64.mul f64.const -0.18033596705327856 f64.add - local.get $7 - local.get $4 + local.get $8 + local.get $5 f64.const 0.13046826811283835 f64.mul f64.const -0.14483316576701266 @@ -6684,15 +6670,15 @@ i32.wrap_i64 i32.const 4 i32.shl - local.tee $10 + local.tee $2 i32.const 7968 i32.add - local.set $2 + local.set $10 local.get $3 i64.const 52 i64.shr_s f64.convert_i64_s - local.get $2 + local.get $10 f64.load offset=8 f64.add local.tee $0 @@ -6702,16 +6688,16 @@ i64.and i64.sub f64.reinterpret_i64 - local.get $10 + local.get $2 i32.const 8992 i32.add - local.tee $10 + local.tee $2 f64.load f64.sub - local.get $10 + local.get $2 f64.load offset=8 f64.sub - local.get $2 + local.get $10 f64.load f64.mul local.tee $4 @@ -6926,9 +6912,10 @@ (local $4 i64) (local $5 i64) (local $6 i64) - (local $7 f64) - (local $8 i64) + (local $7 i64) + (local $8 f64) (local $9 i64) + (local $10 i64) block $__inlined_func$~lib/math/NativeMath.mod (result f64) local.get $0 local.get $0 @@ -6944,25 +6931,25 @@ drop local.get $1 i64.reinterpret_f64 - local.tee $5 + local.tee $7 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.set $8 - local.get $5 + local.set $9 + local.get $7 i64.const 1 i64.shl - local.tee $4 + local.tee $5 i64.eqz local.get $0 i64.reinterpret_f64 - local.tee $3 + local.tee $4 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.tee $9 + local.tee $10 i64.const 2047 i64.eq i32.or @@ -6974,68 +6961,68 @@ local.get $0 local.get $1 f64.mul - local.tee $7 - local.get $7 + local.tee $8 + local.get $8 f64.div br $__inlined_func$~lib/math/NativeMath.mod end + local.get $5 local.get $4 - local.get $3 i64.const 1 i64.shl - local.tee $6 + local.tee $3 i64.ge_u if local.get $0 - local.get $4 - local.get $6 + local.get $3 + local.get $5 i64.ne f64.convert_i32_u f64.mul br $__inlined_func$~lib/math/NativeMath.mod end - local.get $3 + local.get $4 i64.const 63 i64.shr_u local.set $6 - local.get $9 + local.get $10 i64.eqz if (result i64) - local.get $3 + local.get $4 i64.const 1 - local.get $9 - local.get $3 + local.get $10 + local.get $4 i64.const 12 i64.shl i64.clz i64.sub - local.tee $9 + local.tee $10 i64.sub i64.shl else - local.get $3 + local.get $4 i64.const 4503599627370495 i64.and i64.const 4503599627370496 i64.or end local.set $3 - local.get $8 + local.get $9 i64.eqz if (result i64) - local.get $5 + local.get $7 i64.const 1 - local.get $8 - local.get $5 + local.get $9 + local.get $7 i64.const 12 i64.shl i64.clz i64.sub - local.tee $8 + local.tee $9 i64.sub i64.shl else - local.get $5 + local.get $7 i64.const 4503599627370495 i64.and i64.const 4503599627370496 @@ -7043,8 +7030,8 @@ end local.set $4 loop $while-continue|0 - local.get $8 local.get $9 + local.get $10 i64.lt_s if local.get $3 @@ -7068,14 +7055,14 @@ i64.const 1 i64.shl local.set $3 - local.get $9 + local.get $10 i64.const 1 i64.sub - local.set $9 + local.set $10 br $while-continue|0 end end - local.get $9 + local.get $10 local.get $3 local.get $4 i64.ge_u @@ -7149,6 +7136,7 @@ (local $5 i32) (local $6 i32) (local $7 i32) + (local $8 i32) local.get $1 f32.abs f32.const 1 @@ -7164,31 +7152,31 @@ end local.get $1 i32.reinterpret_f32 - local.tee $4 + local.tee $6 i32.const 23 i32.shr_u i32.const 255 i32.and - local.set $6 + local.set $7 i32.const 1 local.get $1 local.get $1 f32.ne local.get $0 i32.reinterpret_f32 - local.tee $3 + local.tee $4 i32.const 23 i32.shr_u i32.const 255 i32.and - local.tee $7 + local.tee $8 i32.const 255 i32.eq i32.const 1 - local.get $4 + local.get $6 i32.const 1 i32.shl - local.tee $2 + local.tee $3 select select if @@ -7200,70 +7188,70 @@ f32.div return end - local.get $2 local.get $3 + local.get $4 i32.const 1 i32.shl - local.tee $5 + local.tee $2 i32.ge_u if local.get $0 local.get $2 - local.get $5 + local.get $3 i32.ne f32.convert_i32_u f32.mul return end - local.get $3 + local.get $4 i32.const -2147483648 i32.and local.set $5 - local.get $7 + local.get $8 if (result i32) - local.get $3 + local.get $4 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $3 + local.get $4 i32.const 1 - local.get $7 - local.get $3 + local.get $8 + local.get $4 i32.const 9 i32.shl i32.clz i32.sub - local.tee $7 + local.tee $8 i32.sub i32.shl end local.set $2 - local.get $6 + local.get $7 if (result i32) - local.get $4 + local.get $6 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $4 + local.get $6 i32.const 1 + local.get $7 local.get $6 - local.get $4 i32.const 9 i32.shl i32.clz i32.sub - local.tee $6 + local.tee $7 i32.sub i32.shl end local.set $3 loop $while-continue|0 - local.get $6 local.get $7 + local.get $8 i32.lt_s if local.get $2 @@ -7288,14 +7276,14 @@ i32.const 1 i32.shl local.set $2 - local.get $7 + local.get $8 i32.const 1 i32.sub - local.set $7 + local.set $8 br $while-continue|0 end end - local.get $7 + local.get $8 local.get $2 local.get $3 i32.ge_u @@ -7351,20 +7339,20 @@ (local $2 i64) (local $3 i32) (local $4 i64) - (local $5 i64) - (local $6 i32) - (local $7 i64) + (local $5 i32) + (local $6 i64) + (local $7 f64) (local $8 f64) (local $9 f64) (local $10 f64) - (local $11 f64) + (local $11 i32) (local $12 i64) - (local $13 f64) + (local $13 i64) (local $14 f64) (local $15 f64) (local $16 f64) (local $17 f64) - (local $18 i32) + (local $18 f64) local.get $1 f64.abs f64.const 2 @@ -7420,16 +7408,16 @@ block $~lib/util/math/pow_lut|inlined.0 (result f64) local.get $1 i64.reinterpret_f64 - local.tee $4 + local.tee $12 i64.const 52 i64.shr_u - local.set $7 + local.set $6 local.get $0 i64.reinterpret_f64 local.tee $2 i64.const 52 i64.shr_u - local.tee $5 + local.tee $4 i64.const 1 i64.sub i64.const 2046 @@ -7437,7 +7425,7 @@ if (result i32) i32.const 1 else - local.get $7 + local.get $6 i64.const 2047 i64.and i64.const 958 @@ -7446,7 +7434,7 @@ i64.ge_u end if - local.get $4 + local.get $12 i64.const 1 i64.shl i64.const 1 @@ -7455,7 +7443,7 @@ i64.ge_u if f64.const 1 - local.get $4 + local.get $12 i64.const 1 i64.shl i64.eqz @@ -7470,7 +7458,7 @@ local.get $0 local.get $1 f64.add - local.get $4 + local.get $12 i64.const 1 i64.shl i64.const -9007199254740992 @@ -7492,7 +7480,7 @@ br_if $~lib/util/math/pow_lut|inlined.0 drop f64.const 0 - local.get $4 + local.get $12 i64.const 63 i64.shr_u i64.eqz @@ -7531,7 +7519,7 @@ if (result i32) block $~lib/util/math/checkint|inlined.0 (result i32) i32.const 0 - local.get $4 + local.get $12 i64.const 52 i64.shr_u i64.const 2047 @@ -7556,7 +7544,7 @@ local.tee $2 i64.const 1 i64.sub - local.get $4 + local.get $12 i64.and i64.const 0 i64.ne @@ -7564,7 +7552,7 @@ drop i32.const 1 local.get $2 - local.get $4 + local.get $12 i64.and i64.const 0 i64.ne @@ -7581,7 +7569,7 @@ local.tee $0 f64.div local.get $0 - local.get $4 + local.get $12 i64.const 63 i64.shr_u i32.wrap_i64 @@ -7595,18 +7583,18 @@ if block $~lib/util/math/checkint|inlined.1 (result i32) i32.const 0 - local.get $4 + local.get $12 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.tee $12 + local.tee $13 i64.const 1023 i64.lt_u br_if $~lib/util/math/checkint|inlined.1 drop i32.const 2 - local.get $12 + local.get $13 i64.const 1075 i64.gt_u br_if $~lib/util/math/checkint|inlined.1 @@ -7614,21 +7602,21 @@ i32.const 0 i64.const 1 i64.const 1075 - local.get $12 + local.get $13 i64.sub i64.shl - local.tee $12 + local.tee $13 i64.const 1 i64.sub - local.get $4 + local.get $12 i64.and i64.const 0 i64.ne br_if $~lib/util/math/checkint|inlined.1 drop i32.const 1 - local.get $4 local.get $12 + local.get $13 i64.and i64.const 0 i64.ne @@ -7647,23 +7635,23 @@ f64.div br $~lib/util/math/pow_lut|inlined.0 end - local.get $5 + local.get $4 i64.const 2047 i64.and - local.set $5 + local.set $4 i32.const 262144 i32.const 0 local.get $3 i32.const 1 i32.eq select - local.set $6 + local.set $5 local.get $2 i64.const 9223372036854775807 i64.and local.set $2 end - local.get $7 + local.get $6 i64.const 2047 i64.and i64.const 958 @@ -7678,7 +7666,7 @@ br_if $~lib/util/math/pow_lut|inlined.0 drop f64.const 1 - local.get $7 + local.get $6 i64.const 2047 i64.and i64.const 958 @@ -7687,7 +7675,7 @@ drop f64.const inf f64.const 0 - local.get $7 + local.get $6 i64.const 2048 i64.lt_u local.get $2 @@ -7697,7 +7685,7 @@ select br $~lib/util/math/pow_lut|inlined.0 end - local.get $5 + local.get $4 i64.eqz if (result i64) local.get $0 @@ -7721,13 +7709,13 @@ i64.const -4503599627370496 i64.and i64.sub - local.tee $5 + local.tee $4 i64.const 2147483648 i64.add i64.const -4294967296 i64.and f64.reinterpret_i64 - local.tee $0 + local.tee $7 local.get $2 i64.const 45 i64.shr_u @@ -7744,88 +7732,88 @@ f64.mul f64.const 1 f64.sub - local.set $13 + local.set $9 local.get $2 i64.const 52 i64.shr_s f64.convert_i64_s - local.tee $10 + local.tee $14 f64.const 0.6931471805598903 f64.mul local.get $3 f64.load offset=16 f64.add - local.tee $11 - local.get $13 - local.get $5 + local.tee $0 + local.get $9 + local.get $4 f64.reinterpret_i64 - local.get $0 + local.get $7 f64.sub local.get $8 f64.mul - local.tee $14 + local.tee $7 f64.add - local.tee $0 + local.tee $15 f64.add - local.set $8 - local.get $0 - local.get $0 + local.set $16 + local.get $15 + local.get $15 f64.const -0.5 f64.mul - local.tee $15 + local.tee $8 f64.mul - local.set $9 - local.get $8 - local.get $13 - local.get $13 + local.set $17 + local.get $16 + local.get $9 + local.get $9 f64.const -0.5 f64.mul - local.tee $13 + local.tee $18 f64.mul - local.tee $16 + local.tee $9 f64.add - local.tee $17 - local.get $17 + local.tee $10 local.get $10 + local.get $14 f64.const 5.497923018708371e-14 f64.mul local.get $3 f64.load offset=24 f64.add - local.get $11 - local.get $8 - f64.sub local.get $0 - f64.add - f64.add - local.get $14 + local.get $16 + f64.sub local.get $15 - local.get $13 f64.add - f64.mul f64.add + local.get $7 local.get $8 - local.get $17 - f64.sub - local.get $16 + local.get $18 f64.add + f64.mul f64.add - local.get $0 + local.get $16 + local.get $10 + f64.sub local.get $9 + f64.add + f64.add + local.get $15 + local.get $17 f64.mul - local.get $0 + local.get $15 f64.const 0.5000000000000007 f64.mul f64.const -0.6666666666666679 f64.add - local.get $9 - local.get $0 + local.get $17 + local.get $15 f64.const -0.6666666663487739 f64.mul f64.const 0.7999999995323976 f64.add - local.get $9 - local.get $0 + local.get $17 + local.get $15 f64.const 1.0000415263675542 f64.mul f64.const -1.142909628459501 @@ -7838,40 +7826,25 @@ f64.add local.tee $0 f64.add - local.tee $8 + local.tee $7 f64.sub local.get $0 f64.add global.set $~lib/util/math/log_tail block $~lib/util/math/exp_inline|inlined.0 (result f64) - local.get $4 + local.get $12 i64.const -134217728 i64.and f64.reinterpret_i64 local.tee $0 - local.get $8 + local.get $7 i64.reinterpret_f64 i64.const -134217728 i64.and f64.reinterpret_i64 - local.tee $9 - f64.mul - local.set $10 - local.get $1 - local.get $0 - f64.sub - local.get $9 - f64.mul - local.get $1 - local.get $8 - local.get $9 - f64.sub - global.get $~lib/util/math/log_tail - f64.add + local.tee $8 f64.mul - f64.add - local.set $0 - local.get $10 + local.tee $9 i64.reinterpret_f64 local.tee $2 i64.const 52 @@ -7887,7 +7860,7 @@ if f64.const -1 f64.const 1 - local.get $6 + local.get $5 select local.get $3 i32.const 969 @@ -7903,14 +7876,14 @@ if (result f64) f64.const -1.2882297539194267e-231 f64.const 1.2882297539194267e-231 - local.get $6 + local.get $5 select f64.const 1.2882297539194267e-231 f64.mul else f64.const -3105036184601417870297958e207 f64.const 3105036184601417870297958e207 - local.get $6 + local.get $5 select f64.const 3105036184601417870297958e207 f64.mul @@ -7923,12 +7896,12 @@ i32.const 0 local.set $3 end - local.get $10 + local.get $9 f64.const 184.6649652337873 f64.mul f64.const 6755399441055744 f64.add - local.tee $1 + local.tee $10 i64.reinterpret_f64 local.tee $2 i64.const 127 @@ -7940,9 +7913,9 @@ i32.shl i32.const 5664 i32.add - local.tee $18 + local.tee $11 i64.load offset=8 - local.get $6 + local.get $5 i64.extend_i32_u local.get $2 i64.add @@ -7950,25 +7923,37 @@ i64.shl i64.add local.set $4 + local.get $9 local.get $10 - local.get $1 f64.const 6755399441055744 f64.sub - local.tee $1 + local.tee $9 f64.const -0.005415212348111709 f64.mul f64.add - local.get $1 + local.get $9 f64.const -1.2864023111638346e-14 f64.mul f64.add + local.get $1 local.get $0 + f64.sub + local.get $8 + f64.mul + local.get $1 + local.get $7 + local.get $8 + f64.sub + global.get $~lib/util/math/log_tail + f64.add + f64.mul + f64.add f64.add local.tee $0 local.get $0 f64.mul local.set $1 - local.get $18 + local.get $11 f64.load local.get $0 f64.add @@ -8023,25 +8008,25 @@ local.get $0 f64.mul f64.add - local.tee $8 + local.tee $7 f64.abs f64.const 1 f64.lt if (result f64) f64.const 1 - local.get $8 + local.get $7 f64.copysign + local.tee $8 + local.get $7 + f64.add local.tee $9 local.get $8 - f64.add - local.tee $10 local.get $9 - local.get $10 f64.sub - local.get $8 + local.get $7 f64.add local.get $1 - local.get $8 + local.get $7 f64.sub local.get $1 local.get $0 @@ -8049,7 +8034,7 @@ f64.add f64.add f64.add - local.get $9 + local.get $8 f64.sub local.tee $0 f64.const 0 @@ -8063,7 +8048,7 @@ local.get $0 end else - local.get $8 + local.get $7 end f64.const 2.2250738585072014e-308 f64.mul @@ -8100,10 +8085,10 @@ ) (func $~lib/math/NativeMathf.pow (param $0 f32) (param $1 f32) (result f32) (local $2 i32) - (local $3 i32) - (local $4 f64) - (local $5 i32) - (local $6 i64) + (local $3 f64) + (local $4 i32) + (local $5 i64) + (local $6 i32) (local $7 i32) (local $8 f64) local.get $1 @@ -8161,14 +8146,14 @@ block $~lib/util/math/powf_lut|inlined.0 (result f32) local.get $1 i32.reinterpret_f32 - local.tee $3 + local.tee $7 i32.const 1 i32.shl i32.const 1 i32.sub i32.const -16777217 i32.ge_u - local.tee $7 + local.tee $6 local.get $0 i32.reinterpret_f32 local.tee $2 @@ -8178,10 +8163,10 @@ i32.ge_u i32.or if - local.get $7 + local.get $6 if f32.const 1 - local.get $3 + local.get $7 i32.const 1 i32.shl i32.eqz @@ -8196,7 +8181,7 @@ local.get $0 local.get $1 f32.add - local.get $3 + local.get $7 i32.const 1 i32.shl i32.const -16777216 @@ -8218,7 +8203,7 @@ br_if $~lib/util/math/powf_lut|inlined.0 drop f32.const 0 - local.get $3 + local.get $7 i32.const 31 i32.shr_u i32.eqz @@ -8256,7 +8241,7 @@ if (result i32) block $~lib/util/math/checkintf|inlined.0 (result i32) i32.const 0 - local.get $3 + local.get $7 i32.const 23 i32.shr_u i32.const 255 @@ -8281,13 +8266,13 @@ local.tee $2 i32.const 1 i32.sub - local.get $3 + local.get $7 i32.and br_if $~lib/util/math/checkintf|inlined.0 drop i32.const 1 local.get $2 - local.get $3 + local.get $7 i32.and br_if $~lib/util/math/checkintf|inlined.0 drop @@ -8302,7 +8287,7 @@ local.tee $0 f32.div local.get $0 - local.get $3 + local.get $7 i32.const 31 i32.shr_u select @@ -8314,18 +8299,18 @@ if block $~lib/util/math/checkintf|inlined.1 (result i32) i32.const 0 - local.get $3 + local.get $7 i32.const 23 i32.shr_u i32.const 255 i32.and - local.tee $5 + local.tee $4 i32.const 127 i32.lt_u br_if $~lib/util/math/checkintf|inlined.1 drop i32.const 2 - local.get $5 + local.get $4 i32.const 150 i32.gt_u br_if $~lib/util/math/checkintf|inlined.1 @@ -8333,25 +8318,25 @@ i32.const 0 i32.const 1 i32.const 150 - local.get $5 + local.get $4 i32.sub i32.shl - local.tee $5 + local.tee $4 i32.const 1 i32.sub - local.get $3 + local.get $7 i32.and br_if $~lib/util/math/checkintf|inlined.1 drop i32.const 1 - local.get $3 - local.get $5 + local.get $4 + local.get $7 i32.and br_if $~lib/util/math/checkintf|inlined.1 drop i32.const 2 end - local.tee $3 + local.tee $4 i32.eqz if local.get $0 @@ -8364,11 +8349,11 @@ end i32.const 65536 i32.const 0 - local.get $3 + local.get $4 i32.const 1 i32.eq select - local.set $5 + local.set $4 local.get $2 i32.const 2147483647 i32.and @@ -8398,7 +8383,7 @@ local.tee $2 i32.const -8388608 i32.and - local.tee $3 + local.tee $6 i32.sub f32.reinterpret_i32 f64.promote_f32 @@ -8416,13 +8401,13 @@ f64.mul f64.const 1 f64.sub - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 f64.mul local.set $8 local.get $1 f64.promote_f32 - local.get $4 + local.get $3 f64.const 0.288457581109214 f64.mul f64.const -0.36092606229713164 @@ -8431,18 +8416,18 @@ local.get $8 f64.mul f64.mul - local.get $4 + local.get $3 f64.const 1.4426950408774342 f64.mul local.get $2 f64.load offset=8 - local.get $3 + local.get $6 i32.const 23 i32.shr_s f64.convert_i32_s f64.add f64.add - local.get $4 + local.get $3 f64.const 0.480898481472577 f64.mul f64.const -0.7213474675006291 @@ -8452,7 +8437,7 @@ f64.add f64.add f64.mul - local.tee $4 + local.tee $3 i64.reinterpret_f64 i64.const 47 i64.shr_u @@ -8463,54 +8448,54 @@ if f32.const -1584563250285286751870879e5 f32.const 1584563250285286751870879e5 - local.get $5 + local.get $4 select f32.const 1584563250285286751870879e5 f32.mul - local.get $4 + local.get $3 f64.const 127.99999995700433 f64.gt br_if $~lib/util/math/powf_lut|inlined.0 drop f32.const -2.524354896707238e-29 f32.const 2.524354896707238e-29 - local.get $5 + local.get $4 select f32.const 2.524354896707238e-29 f32.mul - local.get $4 + local.get $3 f64.const -150 f64.le br_if $~lib/util/math/powf_lut|inlined.0 drop end - local.get $4 + local.get $3 f64.const 211106232532992 f64.add local.tee $8 i64.reinterpret_f64 - local.set $6 - local.get $4 + local.set $5 + local.get $3 local.get $8 f64.const 211106232532992 f64.sub f64.sub - local.tee $4 + local.tee $3 f64.const 0.6931471806916203 f64.mul f64.const 1 f64.add - local.get $4 + local.get $3 f64.const 0.05550361559341535 f64.mul f64.const 0.2402284522445722 f64.add - local.get $4 - local.get $4 + local.get $3 + local.get $3 f64.mul f64.mul f64.add - local.get $6 + local.get $5 i32.wrap_i64 i32.const 31 i32.and @@ -8519,9 +8504,9 @@ i32.const 7712 i32.add i64.load - local.get $5 + local.get $4 i64.extend_i32_u - local.get $6 + local.get $5 i64.add i64.const 47 i64.shl @@ -8928,14 +8913,14 @@ i64.shr_u end f64.reinterpret_i64 - local.tee $8 - local.get $8 + local.tee $0 + local.get $0 f64.add - local.set $0 - local.get $8 + local.set $8 + local.get $0 local.get $1 f64.sub - local.get $8 + local.get $0 local.get $3 local.get $4 i64.eq @@ -8951,13 +8936,13 @@ local.get $5 i32.const 1 i32.and - local.get $0 local.get $1 + local.get $8 f64.eq i32.and - local.get $0 local.get $1 - f64.gt + local.get $8 + f64.lt i32.or else i32.const 0 @@ -9170,14 +9155,14 @@ i32.shr_u end f32.reinterpret_i32 - local.tee $8 - local.get $8 + local.tee $0 + local.get $0 f32.add - local.set $0 - local.get $8 + local.set $8 + local.get $0 local.get $1 f32.sub - local.get $8 + local.get $0 local.get $3 local.get $4 i32.eq @@ -9193,13 +9178,13 @@ local.get $5 i32.const 1 i32.and - local.get $0 local.get $1 + local.get $8 f32.eq i32.and - local.get $0 local.get $1 - f32.gt + local.get $8 + f32.lt i32.or else i32.const 0 @@ -9502,26 +9487,26 @@ local.get $3 local.get $3 f64.mul - local.tee $8 - local.get $8 + local.tee $0 + local.get $0 f64.mul - local.set $9 + local.set $1 f64.const 1 - local.get $8 + local.get $0 f64.const 0.5 f64.mul - local.tee $0 + local.tee $8 f64.sub - local.tee $1 + local.tee $9 f64.const 1 - local.get $1 - f64.sub - local.get $0 + local.get $9 f64.sub local.get $8 - local.get $8 - local.get $8 - local.get $8 + f64.sub + local.get $0 + local.get $0 + local.get $0 + local.get $0 f64.const 2.480158728947673e-05 f64.mul f64.const -0.001388888888887411 @@ -9530,11 +9515,11 @@ f64.const 0.0416666666666666 f64.add f64.mul - local.get $9 - local.get $9 + local.get $1 + local.get $1 f64.mul - local.get $8 - local.get $8 + local.get $0 + local.get $0 f64.const -1.1359647557788195e-11 f64.mul f64.const 2.087572321298175e-09 @@ -9618,18 +9603,18 @@ block $folding-inner0 local.get $0 i32.reinterpret_f32 - local.tee $1 + local.tee $6 i32.const 31 i32.shr_u - local.set $6 - local.get $1 + local.set $1 + local.get $6 i32.const 2147483647 i32.and - local.tee $1 + local.tee $6 i32.const 1061752794 i32.le_u if - local.get $1 + local.get $6 i32.const 964689920 i32.lt_u if @@ -9647,15 +9632,15 @@ local.set $3 br $folding-inner0 end - local.get $1 + local.get $6 i32.const 1081824209 i32.le_u if - local.get $1 + local.get $6 i32.const 1075235811 i32.le_u if - local.get $6 + local.get $1 if (result f32) local.get $0 f64.promote_f32 @@ -9732,7 +9717,7 @@ local.get $2 f64.const 3.141592653589793 f64.sub - local.get $6 + local.get $1 select f64.neg local.tee $2 @@ -9744,15 +9729,15 @@ local.set $3 br $folding-inner0 end - local.get $1 + local.get $6 i32.const 1088565717 i32.le_u if - local.get $1 + local.get $6 i32.const 1085271519 i32.le_u if - local.get $6 + local.get $1 if (result f32) local.get $0 f64.promote_f32 @@ -9829,7 +9814,7 @@ local.get $2 f64.const 6.283185307179586 f64.sub - local.get $6 + local.get $1 select local.tee $2 local.get $2 @@ -9840,7 +9825,7 @@ local.set $3 br $folding-inner0 end - local.get $1 + local.get $6 i32.const 2139095040 i32.ge_u if @@ -9850,7 +9835,7 @@ return end block $~lib/math/rempio2f|inlined.1 (result i32) - local.get $1 + local.get $6 i32.const 1305022427 i32.lt_u if @@ -9875,7 +9860,7 @@ i32.trunc_f64_s br $~lib/math/rempio2f|inlined.1 end - local.get $1 + local.get $6 i32.const 23 i32.shr_s i32.const 152 @@ -9884,7 +9869,7 @@ i32.const 63 i32.and i64.extend_i32_s - local.set $5 + local.set $8 local.get $7 i32.const 6 i32.shr_s @@ -9894,53 +9879,53 @@ i32.add local.tee $7 i64.load offset=8 - local.set $8 + local.set $9 f64.const 8.515303950216386e-20 local.get $0 f64.promote_f32 f64.copysign - local.get $1 + local.get $6 i32.const 8388607 i32.and i32.const 8388608 i32.or i64.extend_i32_s - local.tee $9 + local.tee $5 local.get $7 i64.load - local.get $5 - i64.shl local.get $8 + i64.shl + local.get $9 i64.const 64 - local.get $5 + local.get $8 i64.sub i64.shr_u i64.or i64.mul - local.get $5 + local.get $8 i64.const 32 i64.gt_u if (result i64) + local.get $9 local.get $8 - local.get $5 i64.const 32 i64.sub i64.shl local.get $7 i64.load offset=16 i64.const 96 - local.get $5 + local.get $8 i64.sub i64.shr_u i64.or else - local.get $8 + local.get $9 i64.const 32 - local.get $5 + local.get $8 i64.sub i64.shr_u end - local.get $9 + local.get $5 i64.mul i64.const 32 i64.shr_u @@ -9961,10 +9946,10 @@ i64.shr_u i64.add i32.wrap_i64 - local.tee $1 + local.tee $6 i32.sub - local.get $1 local.get $6 + local.get $1 select end local.set $1 @@ -10409,31 +10394,31 @@ f64.add ) (func $~lib/math/NativeMath.tan (param $0 f64) (result f64) - (local $1 i32) - (local $2 f64) + (local $1 f64) + (local $2 i32) (local $3 i64) - (local $4 i32) - (local $5 i32) - (local $6 f64) - (local $7 f64) + (local $4 f64) + (local $5 f64) + (local $6 i32) + (local $7 i32) local.get $0 i64.reinterpret_f64 local.tee $3 i64.const 32 i64.shr_u i32.wrap_i64 - local.tee $4 + local.tee $2 i32.const 31 i32.shr_u - local.set $1 - local.get $4 + local.set $6 + local.get $2 i32.const 2147483647 i32.and - local.tee $4 + local.tee $2 i32.const 1072243195 i32.le_u if - local.get $4 + local.get $2 i32.const 1044381696 i32.lt_u if @@ -10446,7 +10431,7 @@ call $~lib/math/tan_kern return end - local.get $4 + local.get $2 i32.const 2146435072 i32.ge_u if @@ -10462,21 +10447,21 @@ i32.wrap_i64 i32.const 2147483647 i32.and - local.tee $5 + local.tee $7 i32.const 1073928572 i32.lt_u if i32.const 1 - local.set $4 - local.get $1 + local.set $2 + local.get $6 if (result f64) local.get $0 f64.const 1.5707963267341256 f64.add local.set $0 i32.const -1 - local.set $4 - local.get $5 + local.set $2 + local.get $7 i32.const 1073291771 i32.ne if (result f64) @@ -10492,11 +10477,11 @@ local.get $0 f64.const 6.077100506303966e-11 f64.add - local.tee $2 + local.tee $1 f64.const 2.0222662487959506e-21 f64.add local.set $0 - local.get $2 + local.get $1 local.get $0 f64.sub f64.const 2.0222662487959506e-21 @@ -10507,7 +10492,7 @@ f64.const 1.5707963267341256 f64.sub local.set $0 - local.get $5 + local.get $7 i32.const 1073291771 i32.ne if (result f64) @@ -10523,11 +10508,11 @@ local.get $0 f64.const 6.077100506303966e-11 f64.sub - local.tee $2 + local.tee $1 f64.const 2.0222662487959506e-21 f64.sub local.set $0 - local.get $2 + local.get $1 local.get $0 f64.sub f64.const 2.0222662487959506e-21 @@ -10539,30 +10524,30 @@ global.set $~lib/math/rempio2_y1 br $~lib/math/rempio2|inlined.2 end - local.get $5 + local.get $7 i32.const 1094263291 i32.lt_u if - local.get $5 + local.get $7 i32.const 20 i32.shr_u - local.tee $1 + local.tee $2 local.get $0 local.get $0 f64.const 0.6366197723675814 f64.mul f64.nearest - local.tee $6 + local.tee $4 f64.const 1.5707963267341256 f64.mul f64.sub local.tee $0 - local.get $6 + local.get $4 f64.const 6.077100506506192e-11 f64.mul - local.tee $7 + local.tee $5 f64.sub - local.tee $2 + local.tee $1 i64.reinterpret_f64 i64.const 32 i64.shr_u @@ -10575,27 +10560,27 @@ i32.const 16 i32.gt_u if - local.get $6 + local.get $4 f64.const 2.0222662487959506e-21 f64.mul local.get $0 local.get $0 - local.get $6 + local.get $4 f64.const 6.077100506303966e-11 f64.mul - local.tee $2 + local.tee $1 f64.sub local.tee $0 f64.sub - local.get $2 + local.get $1 f64.sub f64.sub - local.set $7 - local.get $1 + local.set $5 + local.get $2 local.get $0 - local.get $7 + local.get $5 f64.sub - local.tee $2 + local.tee $1 i64.reinterpret_f64 i64.const 32 i64.shr_u @@ -10608,57 +10593,57 @@ i32.const 49 i32.gt_u if (result f64) - local.get $6 + local.get $4 f64.const 8.4784276603689e-32 f64.mul local.get $0 local.get $0 - local.get $6 + local.get $4 f64.const 2.0222662487111665e-21 f64.mul - local.tee $2 + local.tee $1 f64.sub local.tee $0 f64.sub - local.get $2 + local.get $1 f64.sub f64.sub - local.set $7 + local.set $5 local.get $0 - local.get $7 + local.get $5 f64.sub else - local.get $2 + local.get $1 end - local.set $2 + local.set $1 end - local.get $2 + local.get $1 global.set $~lib/math/rempio2_y0 local.get $0 - local.get $2 + local.get $1 f64.sub - local.get $7 + local.get $5 f64.sub global.set $~lib/math/rempio2_y1 - local.get $6 + local.get $4 i32.trunc_f64_s - local.set $4 + local.set $2 br $~lib/math/rempio2|inlined.2 end i32.const 0 local.get $3 call $~lib/math/pio2_large_quot - local.tee $4 + local.tee $2 i32.sub - local.get $4 - local.get $1 + local.get $2 + local.get $6 select - local.set $4 + local.set $2 end global.get $~lib/math/rempio2_y0 global.get $~lib/math/rempio2_y1 i32.const 1 - local.get $4 + local.get $2 i32.const 1 i32.and i32.const 1 @@ -10680,18 +10665,18 @@ block $folding-inner0 local.get $0 i32.reinterpret_f32 - local.tee $1 + local.tee $6 i32.const 31 i32.shr_u - local.set $6 - local.get $1 + local.set $1 + local.get $6 i32.const 2147483647 i32.and - local.tee $1 + local.tee $6 i32.const 1061752794 i32.le_u if - local.get $1 + local.get $6 i32.const 964689920 i32.lt_u if @@ -10709,11 +10694,11 @@ local.set $4 br $folding-inner0 end - local.get $1 + local.get $6 i32.const 1081824209 i32.le_u if - local.get $1 + local.get $6 i32.const 1075235811 i32.le_u if @@ -10725,7 +10710,7 @@ local.get $2 f64.const 1.5707963267948966 f64.sub - local.get $6 + local.get $1 select local.tee $2 local.get $2 @@ -10744,7 +10729,7 @@ local.get $2 f64.const 3.141592653589793 f64.sub - local.get $6 + local.get $1 select local.tee $2 local.get $2 @@ -10757,11 +10742,11 @@ end unreachable end - local.get $1 + local.get $6 i32.const 1088565717 i32.le_u if - local.get $1 + local.get $6 i32.const 1085271519 i32.le_u if @@ -10773,7 +10758,7 @@ local.get $2 f64.const 4.71238898038469 f64.sub - local.get $6 + local.get $1 select local.tee $2 local.get $2 @@ -10792,7 +10777,7 @@ local.get $2 f64.const 6.283185307179586 f64.sub - local.get $6 + local.get $1 select local.tee $2 local.get $2 @@ -10805,7 +10790,7 @@ end unreachable end - local.get $1 + local.get $6 i32.const 2139095040 i32.ge_u if @@ -10815,7 +10800,7 @@ return end block $~lib/math/rempio2f|inlined.2 (result i32) - local.get $1 + local.get $6 i32.const 1305022427 i32.lt_u if @@ -10840,7 +10825,7 @@ i32.trunc_f64_s br $~lib/math/rempio2f|inlined.2 end - local.get $1 + local.get $6 i32.const 23 i32.shr_s i32.const 152 @@ -10849,7 +10834,7 @@ i32.const 63 i32.and i64.extend_i32_s - local.set $5 + local.set $8 local.get $7 i32.const 6 i32.shr_s @@ -10859,53 +10844,53 @@ i32.add local.tee $7 i64.load offset=8 - local.set $8 + local.set $9 f64.const 8.515303950216386e-20 local.get $0 f64.promote_f32 f64.copysign - local.get $1 + local.get $6 i32.const 8388607 i32.and i32.const 8388608 i32.or i64.extend_i32_s - local.tee $9 + local.tee $5 local.get $7 i64.load - local.get $5 - i64.shl local.get $8 + i64.shl + local.get $9 i64.const 64 - local.get $5 + local.get $8 i64.sub i64.shr_u i64.or i64.mul - local.get $5 + local.get $8 i64.const 32 i64.gt_u if (result i64) + local.get $9 local.get $8 - local.get $5 i64.const 32 i64.sub i64.shl local.get $7 i64.load offset=16 i64.const 96 - local.get $5 + local.get $8 i64.sub i64.shr_u i64.or else - local.get $8 + local.get $9 i64.const 32 - local.get $5 + local.get $8 i64.sub i64.shr_u end - local.get $9 + local.get $5 i64.mul i64.const 32 i64.shr_u @@ -10926,10 +10911,10 @@ i64.shr_u i64.add i32.wrap_i64 - local.tee $1 + local.tee $6 i32.sub - local.get $1 local.get $6 + local.get $1 select end local.set $1 @@ -11552,21 +11537,21 @@ end local.set $4 global.get $~lib/math/rempio2_y0 - local.tee $2 - local.get $2 + local.tee $8 + local.get $8 f64.mul - local.tee $7 + local.tee $9 local.tee $0 - local.get $2 + local.get $8 f64.mul - local.set $1 - local.get $2 + local.set $2 + local.get $8 local.get $0 global.get $~lib/math/rempio2_y1 - local.tee $8 + local.tee $1 f64.const 0.5 f64.mul - local.get $1 + local.get $2 local.get $0 local.get $0 f64.const 2.7557313707070068e-06 @@ -11591,31 +11576,31 @@ f64.mul f64.sub f64.mul - local.get $8 - f64.sub local.get $1 + f64.sub + local.get $2 f64.const -0.16666666666666632 f64.mul f64.sub f64.sub - local.tee $9 + local.tee $2 local.set $0 f64.const 1 - local.get $7 + local.get $9 f64.const 0.5 f64.mul - local.tee $1 - f64.sub local.tee $10 + f64.sub + local.tee $7 f64.const 1 - local.get $10 + local.get $7 f64.sub - local.get $1 + local.get $10 f64.sub - local.get $7 - local.get $7 - local.get $7 - local.get $7 + local.get $9 + local.get $9 + local.get $9 + local.get $9 f64.const 2.480158728947673e-05 f64.mul f64.const -0.001388888888887411 @@ -11624,14 +11609,14 @@ f64.const 0.0416666666666666 f64.add f64.mul - local.get $7 - local.get $7 - f64.mul - local.tee $1 - local.get $1 + local.get $9 + local.get $9 f64.mul + local.tee $7 local.get $7 - local.get $7 + f64.mul + local.get $9 + local.get $9 f64.const -1.1359647557788195e-11 f64.mul f64.const 2.087572321298175e-09 @@ -11642,8 +11627,8 @@ f64.mul f64.add f64.mul - local.get $2 local.get $8 + local.get $1 f64.mul f64.sub f64.add @@ -11655,7 +11640,7 @@ if local.get $1 local.set $0 - local.get $9 + local.get $2 f64.neg local.set $1 end diff --git a/tests/compiler/std/mod.optimized.wat b/tests/compiler/std/mod.optimized.wat index b4bc1438bc..f343de7de3 100644 --- a/tests/compiler/std/mod.optimized.wat +++ b/tests/compiler/std/mod.optimized.wat @@ -14,12 +14,13 @@ (start $~start) (func $std/mod/test_fmod (param $0 f64) (param $1 f64) (param $2 f64) (result i32) (local $3 i64) - (local $4 i64) + (local $4 f64) (local $5 i64) (local $6 i64) (local $7 i64) (local $8 i64) - (local $9 f64) + (local $9 i64) + (local $10 i64) block $__inlined_func$std/mod/check (result i32) block $__inlined_func$~lib/math/NativeMath.mod (result f64) local.get $0 @@ -36,25 +37,25 @@ drop local.get $1 i64.reinterpret_f64 - local.tee $6 + local.tee $8 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.set $5 - local.get $6 + local.set $9 + local.get $8 i64.const 1 i64.shl - local.tee $7 + local.tee $6 i64.eqz local.get $0 i64.reinterpret_f64 - local.tee $8 + local.tee $5 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.tee $4 + local.tee $10 i64.const 2047 i64.eq i32.or @@ -66,13 +67,13 @@ local.get $0 local.get $1 f64.mul - local.tee $9 - local.get $9 + local.tee $4 + local.get $4 f64.div br $__inlined_func$~lib/math/NativeMath.mod end - local.get $7 - local.get $8 + local.get $6 + local.get $5 i64.const 1 i64.shl local.tee $3 @@ -80,79 +81,79 @@ if local.get $0 local.get $3 - local.get $7 + local.get $6 i64.ne f64.convert_i32_u f64.mul br $__inlined_func$~lib/math/NativeMath.mod end - local.get $8 + local.get $5 i64.const 63 i64.shr_u local.set $7 - local.get $4 + local.get $10 i64.eqz if (result i64) - local.get $8 + local.get $5 i64.const 1 - local.get $4 - local.get $8 + local.get $10 + local.get $5 i64.const 12 i64.shl i64.clz i64.sub - local.tee $4 + local.tee $10 i64.sub i64.shl else - local.get $8 + local.get $5 i64.const 4503599627370495 i64.and i64.const 4503599627370496 i64.or end local.set $3 - local.get $5 + local.get $9 i64.eqz if (result i64) - local.get $6 + local.get $8 i64.const 1 - local.get $5 - local.get $6 + local.get $9 + local.get $8 i64.const 12 i64.shl i64.clz i64.sub - local.tee $5 + local.tee $9 i64.sub i64.shl else - local.get $6 + local.get $8 i64.const 4503599627370495 i64.and i64.const 4503599627370496 i64.or end - local.set $6 + local.set $5 loop $while-continue|0 - local.get $4 - local.get $5 - i64.gt_s + local.get $9 + local.get $10 + i64.lt_s if local.get $3 - local.get $6 + local.get $5 i64.ge_u if (result i64) local.get $0 f64.const 0 f64.mul local.get $3 - local.get $6 + local.get $5 i64.eq br_if $__inlined_func$~lib/math/NativeMath.mod drop local.get $3 - local.get $6 + local.get $5 i64.sub else local.get $3 @@ -160,28 +161,28 @@ i64.const 1 i64.shl local.set $3 - local.get $4 + local.get $10 i64.const 1 i64.sub - local.set $4 + local.set $10 br $while-continue|0 end end - local.get $4 + local.get $10 local.get $3 - local.get $6 + local.get $5 i64.ge_u if local.get $0 f64.const 0 f64.mul local.get $3 - local.get $6 + local.get $5 i64.eq br_if $__inlined_func$~lib/math/NativeMath.mod drop local.get $3 - local.get $6 + local.get $5 i64.sub local.set $3 end @@ -189,11 +190,11 @@ i64.const 11 i64.shl i64.clz - local.tee $4 + local.tee $6 i64.sub local.set $5 local.get $3 - local.get $4 + local.get $6 i64.shl local.set $3 local.get $5 @@ -220,8 +221,8 @@ i64.or f64.reinterpret_i64 end - local.tee $9 - local.get $9 + local.tee $4 + local.get $4 f64.ne local.get $2 local.get $2 @@ -232,7 +233,7 @@ local.get $2 f64.div f64.const 1 - local.get $9 + local.get $4 f64.div f64.eq local.get $2 @@ -241,7 +242,7 @@ br_if $__inlined_func$std/mod/check drop local.get $2 - local.get $9 + local.get $4 f64.eq end if (result i32) @@ -284,6 +285,7 @@ (local $6 i32) (local $7 i32) (local $8 i32) + (local $9 i32) block $__inlined_func$std/mod/check (result i32) block $__inlined_func$~lib/math/NativeMathf.mod (result f32) local.get $0 @@ -300,31 +302,31 @@ drop local.get $1 i32.reinterpret_f32 - local.tee $5 + local.tee $7 i32.const 23 i32.shr_u i32.const 255 i32.and - local.set $7 + local.set $8 i32.const 1 local.get $1 local.get $1 f32.ne local.get $0 i32.reinterpret_f32 - local.tee $4 + local.tee $5 i32.const 23 i32.shr_u i32.const 255 i32.and - local.tee $8 + local.tee $9 i32.const 255 i32.eq i32.const 1 - local.get $5 + local.get $7 i32.const 1 i32.shl - local.tee $3 + local.tee $4 select select if @@ -336,70 +338,70 @@ f32.div br $__inlined_func$~lib/math/NativeMathf.mod end - local.get $3 local.get $4 + local.get $5 i32.const 1 i32.shl - local.tee $6 + local.tee $3 i32.ge_u if local.get $0 local.get $3 - local.get $6 + local.get $4 i32.ne f32.convert_i32_u f32.mul br $__inlined_func$~lib/math/NativeMathf.mod end - local.get $4 + local.get $5 i32.const -2147483648 i32.and local.set $6 - local.get $8 + local.get $9 if (result i32) - local.get $4 + local.get $5 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $4 + local.get $5 i32.const 1 - local.get $8 - local.get $4 + local.get $9 + local.get $5 i32.const 9 i32.shl i32.clz i32.sub - local.tee $8 + local.tee $9 i32.sub i32.shl end local.set $3 - local.get $7 + local.get $8 if (result i32) - local.get $5 + local.get $7 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $5 + local.get $7 i32.const 1 + local.get $8 local.get $7 - local.get $5 i32.const 9 i32.shl i32.clz i32.sub - local.tee $7 + local.tee $8 i32.sub i32.shl end local.set $4 loop $while-continue|0 - local.get $7 local.get $8 + local.get $9 i32.lt_s if local.get $3 @@ -423,14 +425,14 @@ i32.const 1 i32.shl local.set $3 - local.get $8 + local.get $9 i32.const 1 i32.sub - local.set $8 + local.set $9 br $while-continue|0 end end - local.get $8 + local.get $9 local.get $3 local.get $4 i32.ge_u diff --git a/tests/compiler/std/new.optimized.wat b/tests/compiler/std/new.optimized.wat index cbdce54416..e09f51891b 100644 --- a/tests/compiler/std/new.optimized.wat +++ b/tests/compiler/std/new.optimized.wat @@ -509,9 +509,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -558,6 +555,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -970,13 +970,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -986,9 +986,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1056,7 +1056,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1110,7 +1110,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1118,7 +1118,7 @@ memory.size local.tee $0 i32.const 4 - local.get $1 + local.get $3 i32.load offset=1568 local.get $0 i32.const 16 @@ -1133,16 +1133,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $0 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1150,7 +1150,7 @@ unreachable end end - local.get $1 + local.get $3 local.get $0 i32.const 16 i32.shl @@ -1158,7 +1158,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1185,22 +1185,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if local.get $0 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1209,19 +1209,19 @@ local.get $0 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1233,8 +1233,8 @@ i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.load i32.const -3 i32.and @@ -1247,11 +1247,11 @@ i32.const 8 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 local.set $3 local.get $0 - local.get $1 + local.get $2 global.get $~lib/rt/itcms/white i32.or i32.store offset=4 @@ -1266,7 +1266,7 @@ local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1287,7 +1287,7 @@ local.get $0 i32.const 8 i32.add - local.tee $1 + local.tee $2 i32.const 1 i32.sub i32.const 0 @@ -1298,12 +1298,12 @@ local.get $0 i32.const 0 i32.store8 offset=2 - local.get $1 + local.get $2 i32.const 2 i32.sub i32.const 0 i32.store8 - local.get $1 + local.get $2 i32.const 3 i32.sub i32.const 0 @@ -1311,12 +1311,12 @@ local.get $0 i32.const 0 i32.store8 offset=3 - local.get $1 + local.get $2 i32.const 4 i32.sub i32.const 0 i32.store8 - local.get $2 + local.get $1 local.get $0 i32.store local.get $0 @@ -1384,19 +1384,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1406,16 +1406,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1438,7 +1437,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1448,23 +1447,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1472,7 +1471,7 @@ else i32.const 1440 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1482,7 +1481,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1444 @@ -1497,28 +1496,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/std/object.optimized.wat b/tests/compiler/std/object.optimized.wat index 179a69a586..a44f371dfd 100644 --- a/tests/compiler/std/object.optimized.wat +++ b/tests/compiler/std/object.optimized.wat @@ -107,14 +107,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end diff --git a/tests/compiler/std/operator-overloading.optimized.wat b/tests/compiler/std/operator-overloading.optimized.wat index 0c4e08cca7..071e1266a1 100644 --- a/tests/compiler/std/operator-overloading.optimized.wat +++ b/tests/compiler/std/operator-overloading.optimized.wat @@ -565,9 +565,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -614,6 +611,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1026,13 +1026,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1042,9 +1042,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1114,7 +1114,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1122,7 +1122,7 @@ memory.size local.tee $1 i32.const 4 - local.get $3 + local.get $2 i32.load offset=1568 local.get $1 i32.const 16 @@ -1137,16 +1137,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1154,7 +1154,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $1 i32.const 16 i32.shl @@ -1162,7 +1162,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1189,22 +1189,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $2 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1213,19 +1213,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $2 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -2596,24 +2596,24 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/eq2 global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/eq1 local.tee $0 + global.get $std/operator-overloading/eq1 + local.tee $1 i32.store - local.get $1 + local.get $0 global.get $std/operator-overloading/eq2 - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 - i32.load local.get $1 i32.load + local.get $0 + i32.load i32.eq if (result i32) - local.get $0 - i32.load offset=4 local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 i32.eq else i32.const 0 @@ -2639,24 +2639,24 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/eq4 global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/eq3 local.tee $0 + global.get $std/operator-overloading/eq3 + local.tee $1 i32.store - local.get $1 + local.get $0 global.get $std/operator-overloading/eq4 - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 - i32.load local.get $1 i32.load + local.get $0 + i32.load i32.eq if (result i32) - local.get $0 - i32.load offset=4 local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 i32.eq else i32.const 0 @@ -2672,24 +2672,24 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/eq1 local.tee $0 + global.get $std/operator-overloading/eq1 + local.tee $1 i32.store - local.get $1 + local.get $0 global.get $std/operator-overloading/eq2 - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 - i32.load local.get $1 i32.load + local.get $0 + i32.load i32.ne if (result i32) - local.get $0 - i32.load offset=4 local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 i32.ne else i32.const 0 @@ -2705,24 +2705,24 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/eq3 local.tee $0 + global.get $std/operator-overloading/eq3 + local.tee $1 i32.store - local.get $1 + local.get $0 global.get $std/operator-overloading/eq4 - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 - i32.load local.get $1 i32.load + local.get $0 + i32.load i32.ne if (result i32) - local.get $0 - i32.load offset=4 local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 i32.ne else i32.const 0 @@ -2748,24 +2748,24 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/gt2 global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/gt1 local.tee $0 + global.get $std/operator-overloading/gt1 + local.tee $1 i32.store - local.get $1 + local.get $0 global.get $std/operator-overloading/gt2 - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 - i32.load local.get $1 i32.load + local.get $0 + i32.load i32.gt_s if (result i32) - local.get $0 - i32.load offset=4 local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 i32.gt_s else i32.const 0 @@ -2791,24 +2791,24 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/gte2 global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/gte1 local.tee $0 + global.get $std/operator-overloading/gte1 + local.tee $1 i32.store - local.get $1 + local.get $0 global.get $std/operator-overloading/gte2 - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 - i32.load local.get $1 i32.load + local.get $0 + i32.load i32.ge_s if (result i32) - local.get $0 - i32.load offset=4 local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 i32.ge_s else i32.const 0 @@ -2834,24 +2834,24 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/le2 global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/le1 local.tee $0 + global.get $std/operator-overloading/le1 + local.tee $1 i32.store - local.get $1 + local.get $0 global.get $std/operator-overloading/le2 - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 - i32.load local.get $1 i32.load + local.get $0 + i32.load i32.lt_s if (result i32) - local.get $0 - i32.load offset=4 local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 i32.lt_s else i32.const 0 @@ -2877,24 +2877,24 @@ call $std/operator-overloading/Tester#constructor global.set $std/operator-overloading/leq2 global.get $~lib/memory/__stack_pointer - local.tee $1 - global.get $std/operator-overloading/leq1 local.tee $0 + global.get $std/operator-overloading/leq1 + local.tee $1 i32.store - local.get $1 + local.get $0 global.get $std/operator-overloading/leq2 - local.tee $1 + local.tee $0 i32.store offset=4 - local.get $0 - i32.load local.get $1 i32.load + local.get $0 + i32.load i32.le_s if (result i32) - local.get $0 - i32.load offset=4 local.get $1 i32.load offset=4 + local.get $0 + i32.load offset=4 i32.le_s else i32.const 0 @@ -3656,19 +3656,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -3678,16 +3678,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -3710,7 +3709,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -3720,23 +3719,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -3744,7 +3743,7 @@ else i32.const 1520 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -3754,7 +3753,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1524 @@ -3769,28 +3768,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/std/pointer.optimized.wat b/tests/compiler/std/pointer.optimized.wat index 816f97a8c3..87ab92dc44 100644 --- a/tests/compiler/std/pointer.optimized.wat +++ b/tests/compiler/std/pointer.optimized.wat @@ -20,13 +20,13 @@ (local $4 i32) (local $5 i32) i32.const 8 - local.set $4 + local.set $5 loop $while-continue|0 local.get $1 i32.const 3 i32.and i32.const 0 - local.get $4 + local.get $5 select if local.get $0 @@ -43,10 +43,10 @@ local.get $3 i32.load8_u i32.store8 - local.get $4 + local.get $5 i32.const 1 i32.sub - local.set $4 + local.set $5 br $while-continue|0 end end @@ -56,7 +56,7 @@ i32.eqz if loop $while-continue|1 - local.get $4 + local.get $5 i32.const 16 i32.ge_u if @@ -84,14 +84,14 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|1 end end - local.get $4 + local.get $5 i32.const 8 i32.and if @@ -112,7 +112,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 4 i32.and if @@ -129,7 +129,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 2 i32.and if @@ -146,7 +146,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 1 i32.and if @@ -157,7 +157,7 @@ end return end - local.get $4 + local.get $5 i32.const 32 i32.ge_u if @@ -174,7 +174,7 @@ end local.get $1 i32.load - local.set $5 + local.set $4 local.get $0 local.get $1 i32.load8_u @@ -201,12 +201,12 @@ local.get $3 i32.load8_u i32.store8 - local.get $4 + local.get $5 i32.const 3 i32.sub - local.set $4 + local.set $5 loop $while-continue|3 - local.get $4 + local.get $5 i32.const 17 i32.ge_u if @@ -216,7 +216,7 @@ local.tee $2 i32.const 8 i32.shl - local.get $5 + local.get $4 i32.const 24 i32.shr_u i32.or @@ -246,7 +246,7 @@ local.get $0 local.get $1 i32.load offset=13 - local.tee $5 + local.tee $4 i32.const 8 i32.shl local.get $2 @@ -262,10 +262,10 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|3 end end @@ -273,7 +273,7 @@ end local.get $1 i32.load - local.set $5 + local.set $4 local.get $0 local.get $1 i32.load8_u @@ -292,12 +292,12 @@ local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $4 + local.get $5 i32.const 2 i32.sub - local.set $4 + local.set $5 loop $while-continue|4 - local.get $4 + local.get $5 i32.const 18 i32.ge_u if @@ -307,7 +307,7 @@ local.tee $2 i32.const 16 i32.shl - local.get $5 + local.get $4 i32.const 16 i32.shr_u i32.or @@ -337,7 +337,7 @@ local.get $0 local.get $1 i32.load offset=14 - local.tee $5 + local.tee $4 i32.const 16 i32.shl local.get $2 @@ -353,10 +353,10 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|4 end end @@ -364,7 +364,7 @@ end local.get $1 i32.load - local.set $5 + local.set $4 local.get $0 local.tee $2 i32.const 1 @@ -379,12 +379,12 @@ local.get $3 i32.load8_u i32.store8 - local.get $4 + local.get $5 i32.const 1 i32.sub - local.set $4 + local.set $5 loop $while-continue|5 - local.get $4 + local.get $5 i32.const 19 i32.ge_u if @@ -394,7 +394,7 @@ local.tee $2 i32.const 24 i32.shl - local.get $5 + local.get $4 i32.const 8 i32.shr_u i32.or @@ -424,7 +424,7 @@ local.get $0 local.get $1 i32.load offset=15 - local.tee $5 + local.tee $4 i32.const 24 i32.shl local.get $2 @@ -440,16 +440,16 @@ i32.const 16 i32.add local.set $0 - local.get $4 + local.get $5 i32.const 16 i32.sub - local.set $4 + local.set $5 br $while-continue|5 end end end end - local.get $4 + local.get $5 i32.const 16 i32.and if @@ -568,7 +568,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 8 i32.and if @@ -631,7 +631,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 4 i32.and if @@ -666,7 +666,7 @@ i32.add local.set $0 end - local.get $4 + local.get $5 i32.const 2 i32.and if @@ -689,7 +689,7 @@ i32.load8_u offset=1 i32.store8 offset=1 end - local.get $4 + local.get $5 i32.const 1 i32.and if @@ -913,17 +913,17 @@ i32.sub local.set $4 local.get $0 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 br $while-continue|0 @@ -958,17 +958,17 @@ local.get $4 if local.get $0 - local.tee $3 + local.tee $2 i32.const 1 i32.add local.set $0 local.get $1 - local.tee $2 + local.tee $3 i32.const 1 i32.add local.set $1 - local.get $3 local.get $2 + local.get $3 i32.load8_u i32.store8 local.get $4 diff --git a/tests/compiler/std/set.optimized.wat b/tests/compiler/std/set.optimized.wat index 945afd899c..466f0b6314 100644 --- a/tests/compiler/std/set.optimized.wat +++ b/tests/compiler/std/set.optimized.wat @@ -123,18 +123,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 18220 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -148,9 +147,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -160,15 +159,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -209,20 +208,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -654,9 +653,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -703,6 +699,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1456,18 +1455,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $3 + local.get $0 + i32.const 16 + i32.add local.tee $4 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1478,13 +1476,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $4 i32.const 19 i32.add i32.const -16 @@ -1492,32 +1490,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1533,16 +1531,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1550,7 +1548,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1558,8 +1556,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1576,7 +1574,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -1586,13 +1584,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1605,40 +1603,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -1746,7 +1744,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -1760,12 +1758,12 @@ i32.const 3 i32.shl i32.add - local.set $6 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 local.get $4 - local.get $6 + local.get $7 i32.ne if local.get $4 @@ -1855,7 +1853,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -1870,12 +1868,10 @@ (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) block $__inlined_func$~lib/set/Set#find (result i32) local.get $0 i32.load local.get $1 - local.tee $2 i32.extend8_s i32.const -1028477379 i32.mul @@ -1885,26 +1881,26 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor - local.tee $4 + local.tee $3 local.get $0 i32.load offset=4 i32.and @@ -1912,32 +1908,32 @@ i32.shl i32.add i32.load - local.set $3 + local.set $2 loop $while-continue|0 - local.get $3 + local.get $2 if - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 - i32.load8_u local.get $2 + i32.load8_u + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find drop - local.get $5 + local.get $4 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|0 end end @@ -1980,11 +1976,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $3 + local.tee $4 i32.const 1 i32.add i32.store offset=16 - local.get $3 + local.get $4 i32.const 3 i32.shl local.get $2 @@ -2003,7 +1999,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $4 + local.get $3 i32.and i32.const 2 i32.shl @@ -2477,95 +2473,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -2596,39 +2592,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 @@ -2925,7 +2921,6 @@ ) (func $~lib/array/ensureCapacity (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (local $4 i32) - (local $5 i32) local.get $0 i32.load offset=8 local.tee $4 @@ -2958,29 +2953,29 @@ local.set $1 local.get $0 i32.load - local.tee $5 + local.tee $2 local.get $3 if local.get $4 i32.const 1 i32.shl - local.tee $2 + local.tee $3 i32.const 1073741820 - local.get $2 + local.get $3 i32.const 1073741820 i32.lt_u select - local.tee $2 + local.tee $3 local.get $1 local.get $1 - local.get $2 + local.get $3 i32.lt_u select local.set $1 end local.get $1 call $~lib/rt/itcms/__renew - local.tee $2 + local.tee $3 local.get $4 i32.add local.get $1 @@ -2988,19 +2983,19 @@ i32.sub call $~lib/memory/memory.fill local.get $2 - local.get $5 + local.get $3 i32.ne if local.get $0 - local.get $2 + local.get $3 i32.store local.get $0 - local.get $2 + local.get $3 i32.store offset=4 - local.get $2 + local.get $3 if local.get $0 - local.get $2 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end end @@ -3645,17 +3640,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $6 i32.const 0 i32.store local.get $4 i32.load offset=8 - local.set $7 + local.set $2 local.get $4 i32.load offset=16 - local.tee $10 - local.set $3 - local.get $9 + local.tee $7 + local.set $9 + local.get $6 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -3664,28 +3659,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $8 i64.const 0 i64.store - local.get $2 + local.get $8 i32.const 16 i32.const 4 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $10 i32.store - local.get $2 + local.get $10 i32.const 0 i32.store - local.get $2 + local.get $10 i32.const 0 i32.store offset=4 - local.get $2 + local.get $10 i32.const 0 i32.store offset=8 - local.get $2 + local.get $10 i32.const 0 i32.store offset=12 - local.get $3 + local.get $9 i32.const 1073741820 i32.gt_u if @@ -3697,64 +3692,64 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $9 i32.const 8 - local.get $3 + local.get $9 i32.const 8 i32.gt_u select - local.tee $6 + local.tee $11 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $8 i32.store offset=4 + local.get $8 local.get $11 - local.get $6 call $~lib/memory/memory.fill - local.get $2 - local.get $11 + local.get $10 + local.get $8 i32.store - local.get $11 + local.get $8 if - local.get $2 - local.get $11 + local.get $10 + local.get $8 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 - local.get $11 + local.get $10 + local.get $8 i32.store offset=4 - local.get $2 - local.get $6 + local.get $10 + local.get $11 i32.store offset=8 - local.get $2 - local.get $3 + local.get $10 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 - local.get $2 + local.get $6 + local.get $10 i32.store loop $for-loop|0 local.get $5 - local.get $10 + local.get $7 i32.lt_s if local.get $5 i32.const 3 i32.shl - local.get $7 + local.get $2 i32.add - local.tee $3 + local.tee $6 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $2 + local.get $10 local.get $0 - local.get $3 + local.get $6 i32.load8_s call $~lib/array/Array#__set local.get $0 @@ -3769,34 +3764,34 @@ br $for-loop|0 end end - local.get $2 + local.get $10 local.get $0 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $2 + local.get $10 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $10 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|4 - local.get $2 + local.get $10 i32.load offset=12 local.get $1 i32.gt_s if - local.get $2 + local.get $10 local.get $1 call $~lib/array/Array#__get - local.tee $5 + local.tee $2 i32.extend8_s i32.const -1028477379 i32.mul @@ -3842,7 +3837,7 @@ if local.get $3 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -3850,13 +3845,13 @@ else local.get $3 i32.load8_u - local.get $5 + local.get $2 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $6 + local.get $5 i32.const -2 i32.and local.set $3 @@ -3877,7 +3872,7 @@ unreachable end local.get $0 - local.get $2 + local.get $10 local.get $1 call $~lib/array/Array#__get call $~lib/set/Set#add @@ -4424,7 +4419,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -4438,12 +4433,12 @@ i32.const 3 i32.shl i32.add - local.set $6 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 local.get $4 - local.get $6 + local.get $7 i32.ne if local.get $4 @@ -4534,7 +4529,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -4549,12 +4544,10 @@ (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) block $__inlined_func$~lib/set/Set#find (result i32) local.get $0 i32.load local.get $1 - local.tee $2 i32.const 255 i32.and i32.const -1028477379 @@ -4565,26 +4558,26 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor - local.tee $4 + local.tee $3 local.get $0 i32.load offset=4 i32.and @@ -4592,32 +4585,32 @@ i32.shl i32.add i32.load - local.set $3 + local.set $2 loop $while-continue|0 - local.get $3 + local.get $2 if - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 - i32.load8_u local.get $2 + i32.load8_u + local.get $1 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find drop - local.get $5 + local.get $4 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|0 end end @@ -4660,11 +4653,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $3 + local.tee $4 i32.const 1 i32.add i32.store offset=16 - local.get $3 + local.get $4 i32.const 3 i32.shl local.get $2 @@ -4683,7 +4676,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $4 + local.get $3 i32.and i32.const 2 i32.shl @@ -4873,7 +4866,7 @@ i32.store offset=8 local.get $3 call $~lib/set/Set#constructor - local.tee $4 + local.tee $10 i32.store loop $for-loop|1 local.get $1 @@ -4883,9 +4876,9 @@ i32.lt_u if block $__inlined_func$~lib/set/Set#find (result i32) - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 local.get $1 local.tee $3 @@ -4899,44 +4892,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $6 + local.tee $5 i32.const 15 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $6 + local.tee $5 i32.const 13 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $6 + local.tee $5 i32.const 16 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $5 loop $while-continue|0 - local.get $6 + local.get $5 if - local.get $6 - local.get $6 + local.get $5 + local.get $5 i32.load offset=4 - local.tee $7 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load8_u local.get $3 i32.const 255 @@ -4945,10 +4938,10 @@ end br_if $__inlined_func$~lib/set/Set#find drop - local.get $7 + local.get $6 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|0 end end @@ -4962,13 +4955,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 local.get $1 call $~lib/set/Set#add block $__inlined_func$~lib/set/Set#find1 (result i32) - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 local.get $1 local.tee $3 @@ -4982,44 +4975,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $6 + local.tee $5 i32.const 15 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $6 + local.tee $5 i32.const 13 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $6 + local.tee $5 i32.const 16 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $5 loop $while-continue|02 - local.get $6 + local.get $5 if - local.get $6 - local.get $6 + local.get $5 + local.get $5 i32.load offset=4 - local.tee $7 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load8_u local.get $3 i32.const 255 @@ -5028,10 +5021,10 @@ end br_if $__inlined_func$~lib/set/Set#find1 drop - local.get $7 + local.get $6 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|02 end end @@ -5053,7 +5046,7 @@ br $for-loop|1 end end - local.get $4 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -5075,9 +5068,9 @@ i32.lt_u if block $__inlined_func$~lib/set/Set#find4 (result i32) - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 local.get $1 local.tee $3 @@ -5091,44 +5084,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $6 + local.tee $5 i32.const 15 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $6 + local.tee $5 i32.const 13 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $6 + local.tee $5 i32.const 16 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $5 loop $while-continue|05 - local.get $6 + local.get $5 if - local.get $6 - local.get $6 + local.get $5 + local.get $5 i32.load offset=4 - local.tee $7 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load8_u local.get $3 i32.const 255 @@ -5137,10 +5130,10 @@ end br_if $__inlined_func$~lib/set/Set#find4 drop - local.get $7 + local.get $6 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|05 end end @@ -5155,13 +5148,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 local.get $1 call $~lib/set/Set#add block $__inlined_func$~lib/set/Set#find7 (result i32) - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 local.get $1 local.tee $3 @@ -5175,44 +5168,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $6 + local.tee $5 i32.const 15 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $6 + local.tee $5 i32.const 13 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $6 + local.tee $5 i32.const 16 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $5 loop $while-continue|08 - local.get $6 + local.get $5 if - local.get $6 - local.get $6 + local.get $5 + local.get $5 i32.load offset=4 - local.tee $7 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load8_u local.get $3 i32.const 255 @@ -5221,10 +5214,10 @@ end br_if $__inlined_func$~lib/set/Set#find7 drop - local.get $7 + local.get $6 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|08 end end @@ -5246,7 +5239,7 @@ br $for-loop|3 end end - local.get $4 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -5269,17 +5262,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $10 + local.tee $8 i32.const 0 i32.store - local.get $4 + local.get $10 i32.load offset=8 - local.set $8 - local.get $4 - i32.load offset=16 - local.tee $9 - local.set $3 + local.set $6 local.get $10 + i32.load offset=16 + local.tee $7 + local.set $1 + local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -5288,28 +5281,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i64.const 0 i64.store - local.get $1 + local.get $3 i32.const 16 i32.const 6 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $9 i32.store - local.get $11 + local.get $9 i32.const 0 i32.store - local.get $11 + local.get $9 i32.const 0 i32.store offset=4 - local.get $11 + local.get $9 i32.const 0 i32.store offset=8 - local.get $11 + local.get $9 i32.const 0 i32.store offset=12 - local.get $3 + local.get $1 i32.const 1073741820 i32.gt_u if @@ -5321,54 +5314,54 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.const 8 - local.get $3 + local.get $1 i32.const 8 i32.gt_u select - local.tee $6 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $11 i32.store offset=4 - local.get $1 - local.get $6 + local.get $11 + local.get $3 call $~lib/memory/memory.fill + local.get $9 local.get $11 - local.get $1 i32.store - local.get $1 + local.get $11 if + local.get $9 local.get $11 - local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $9 local.get $11 - local.get $1 i32.store offset=4 - local.get $11 - local.get $6 - i32.store offset=8 - local.get $11 + local.get $9 local.get $3 + i32.store offset=8 + local.get $9 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 - local.get $11 + local.get $8 + local.get $9 i32.store loop $for-loop|0 - local.get $5 - local.get $9 + local.get $4 + local.get $7 i32.lt_s if - local.get $5 + local.get $4 i32.const 3 i32.shl - local.get $8 + local.get $6 i32.add local.tee $1 i32.load offset=4 @@ -5376,7 +5369,7 @@ i32.and i32.eqz if - local.get $11 + local.get $9 local.get $2 local.get $1 i32.load8_u @@ -5386,47 +5379,47 @@ i32.add local.set $2 end - local.get $5 + local.get $4 i32.const 1 i32.add - local.set $5 + local.set $4 br $for-loop|0 end end - local.get $11 + local.get $9 local.get $2 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $11 + local.get $9 local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 + local.get $9 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $3 i32.store offset=8 loop $for-loop|4 - local.get $11 + local.get $9 i32.load offset=12 local.get $0 i32.gt_s if - local.get $11 + local.get $9 local.get $0 call $~lib/array/Array#__get - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find10 (result i32) - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 - local.get $1 + local.get $2 i32.const 255 i32.and i32.const -1028477379 @@ -5437,56 +5430,56 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $1 i32.const 15 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $1 i32.const 13 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $1 i32.const 16 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $1 loop $while-continue|011 - local.get $2 + local.get $1 if - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 - i32.load8_u local.get $1 + i32.load8_u + local.get $2 i32.const 255 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 drop - local.get $5 + local.get $4 i32.const -2 i32.and - local.set $2 + local.set $1 br $while-continue|011 end end @@ -5504,7 +5497,7 @@ unreachable end local.get $3 - local.get $11 + local.get $9 local.get $0 call $~lib/array/Array#__get call $~lib/set/Set#add @@ -5517,7 +5510,7 @@ end local.get $3 i32.load offset=20 - local.get $4 + local.get $10 i32.load offset=20 i32.ne if @@ -5538,9 +5531,9 @@ i32.lt_u if block $__inlined_func$~lib/set/Set#find13 (result i32) - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 local.get $0 local.tee $1 @@ -5618,13 +5611,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 local.get $0 call $~lib/set/Set#delete block $__inlined_func$~lib/set/Set#find16 (result i32) - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 local.get $0 local.tee $1 @@ -5708,7 +5701,7 @@ br $for-loop|6 end end - local.get $4 + local.get $10 i32.load offset=20 i32.const 50 i32.ne @@ -5730,9 +5723,9 @@ i32.lt_u if block $__inlined_func$~lib/set/Set#find19 (result i32) - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 local.get $0 local.tee $1 @@ -5809,13 +5802,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 local.get $0 call $~lib/set/Set#add block $__inlined_func$~lib/set/Set#find22 (result i32) - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 local.get $0 local.tee $1 @@ -5893,13 +5886,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 local.get $0 call $~lib/set/Set#delete block $__inlined_func$~lib/set/Set#find25 (result i32) - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 local.get $0 local.tee $1 @@ -5983,7 +5976,7 @@ br $for-loop|8 end end - local.get $4 + local.get $10 i32.load offset=20 i32.const 50 i32.ne @@ -5995,9 +5988,9 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 call $~lib/set/Set#clear - local.get $4 + local.get $10 i32.load offset=20 if i32.const 0 @@ -6063,7 +6056,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -6077,12 +6070,12 @@ i32.const 3 i32.shl i32.add - local.set $6 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 local.get $4 - local.get $6 + local.get $7 i32.ne if local.get $4 @@ -6172,7 +6165,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -6187,12 +6180,10 @@ (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) block $__inlined_func$~lib/set/Set#find (result i32) local.get $0 i32.load local.get $1 - local.tee $2 i32.extend16_s i32.const -1028477379 i32.mul @@ -6202,26 +6193,26 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor - local.tee $4 + local.tee $3 local.get $0 i32.load offset=4 i32.and @@ -6229,32 +6220,32 @@ i32.shl i32.add i32.load - local.set $3 + local.set $2 loop $while-continue|0 - local.get $3 + local.get $2 if - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 - i32.load16_u local.get $2 + i32.load16_u + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find drop - local.get $5 + local.get $4 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|0 end end @@ -6297,11 +6288,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $3 + local.tee $4 i32.const 1 i32.add i32.store offset=16 - local.get $3 + local.get $4 i32.const 3 i32.shl local.get $2 @@ -6320,7 +6311,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $4 + local.get $3 i32.and i32.const 2 i32.shl @@ -6936,17 +6927,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $6 i32.const 0 i32.store local.get $4 i32.load offset=8 - local.set $7 + local.set $2 local.get $4 i32.load offset=16 - local.tee $10 - local.set $3 - local.get $9 + local.tee $7 + local.set $9 + local.get $6 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -6955,28 +6946,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $8 i64.const 0 i64.store - local.get $2 + local.get $8 i32.const 16 i32.const 8 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $10 i32.store - local.get $2 + local.get $10 i32.const 0 i32.store - local.get $2 + local.get $10 i32.const 0 i32.store offset=4 - local.get $2 + local.get $10 i32.const 0 i32.store offset=8 - local.get $2 + local.get $10 i32.const 0 i32.store offset=12 - local.get $3 + local.get $9 i32.const 536870910 i32.gt_u if @@ -6988,66 +6979,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $9 i32.const 8 - local.get $3 + local.get $9 i32.const 8 i32.gt_u select i32.const 1 i32.shl - local.tee $6 + local.tee $11 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $8 i32.store offset=4 + local.get $8 local.get $11 - local.get $6 call $~lib/memory/memory.fill - local.get $2 - local.get $11 + local.get $10 + local.get $8 i32.store - local.get $11 + local.get $8 if - local.get $2 - local.get $11 + local.get $10 + local.get $8 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 - local.get $11 + local.get $10 + local.get $8 i32.store offset=4 - local.get $2 - local.get $6 + local.get $10 + local.get $11 i32.store offset=8 - local.get $2 - local.get $3 + local.get $10 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 - local.get $2 + local.get $6 + local.get $10 i32.store loop $for-loop|0 local.get $5 - local.get $10 + local.get $7 i32.lt_s if local.get $5 i32.const 3 i32.shl - local.get $7 + local.get $2 i32.add - local.tee $3 + local.tee $6 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $2 + local.get $10 local.get $0 - local.get $3 + local.get $6 i32.load16_s call $~lib/array/Array#__set local.get $0 @@ -7062,34 +7053,34 @@ br $for-loop|0 end end - local.get $2 + local.get $10 local.get $0 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity - local.get $2 + local.get $10 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $10 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|4 - local.get $2 + local.get $10 i32.load offset=12 local.get $1 i32.gt_s if - local.get $2 + local.get $10 local.get $1 call $~lib/array/Array#__get - local.tee $5 + local.tee $2 i32.extend16_s i32.const -1028477379 i32.mul @@ -7135,7 +7126,7 @@ if local.get $3 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) @@ -7143,13 +7134,13 @@ else local.get $3 i32.load16_u - local.get $5 + local.get $2 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $6 + local.get $5 i32.const -2 i32.and local.set $3 @@ -7170,7 +7161,7 @@ unreachable end local.get $0 - local.get $2 + local.get $10 local.get $1 call $~lib/array/Array#__get call $~lib/set/Set#add @@ -7717,7 +7708,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -7731,12 +7722,12 @@ i32.const 3 i32.shl i32.add - local.set $6 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 local.get $4 - local.get $6 + local.get $7 i32.ne if local.get $4 @@ -7827,7 +7818,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -7842,12 +7833,10 @@ (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) block $__inlined_func$~lib/set/Set#find (result i32) local.get $0 i32.load local.get $1 - local.tee $2 i32.const 65535 i32.and i32.const -1028477379 @@ -7858,26 +7847,26 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor - local.tee $4 + local.tee $3 local.get $0 i32.load offset=4 i32.and @@ -7885,32 +7874,32 @@ i32.shl i32.add i32.load - local.set $3 + local.set $2 loop $while-continue|0 - local.get $3 + local.get $2 if - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 - i32.load16_u local.get $2 + i32.load16_u + local.get $1 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find drop - local.get $5 + local.get $4 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|0 end end @@ -7953,11 +7942,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $3 + local.tee $4 i32.const 1 i32.add i32.store offset=16 - local.get $3 + local.get $4 i32.const 3 i32.shl local.get $2 @@ -7976,7 +7965,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $4 + local.get $3 i32.and i32.const 2 i32.shl @@ -8168,7 +8157,7 @@ i32.store offset=8 local.get $3 call $~lib/set/Set#constructor - local.tee $4 + local.tee $10 i32.store loop $for-loop|1 local.get $1 @@ -8178,9 +8167,9 @@ i32.lt_u if block $__inlined_func$~lib/set/Set#find (result i32) - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 local.get $1 local.tee $3 @@ -8194,44 +8183,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $6 + local.tee $5 i32.const 15 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $6 + local.tee $5 i32.const 13 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $6 + local.tee $5 i32.const 16 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $5 loop $while-continue|0 - local.get $6 + local.get $5 if - local.get $6 - local.get $6 + local.get $5 + local.get $5 i32.load offset=4 - local.tee $7 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load16_u local.get $3 i32.const 65535 @@ -8240,10 +8229,10 @@ end br_if $__inlined_func$~lib/set/Set#find drop - local.get $7 + local.get $6 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|0 end end @@ -8257,13 +8246,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 local.get $1 call $~lib/set/Set#add block $__inlined_func$~lib/set/Set#find1 (result i32) - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 local.get $1 local.tee $3 @@ -8277,44 +8266,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $6 + local.tee $5 i32.const 15 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $6 + local.tee $5 i32.const 13 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $6 + local.tee $5 i32.const 16 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $5 loop $while-continue|02 - local.get $6 + local.get $5 if - local.get $6 - local.get $6 + local.get $5 + local.get $5 i32.load offset=4 - local.tee $7 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load16_u local.get $3 i32.const 65535 @@ -8323,10 +8312,10 @@ end br_if $__inlined_func$~lib/set/Set#find1 drop - local.get $7 + local.get $6 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|02 end end @@ -8348,7 +8337,7 @@ br $for-loop|1 end end - local.get $4 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -8370,9 +8359,9 @@ i32.lt_u if block $__inlined_func$~lib/set/Set#find4 (result i32) - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 local.get $1 local.tee $3 @@ -8386,44 +8375,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $6 + local.tee $5 i32.const 15 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $6 + local.tee $5 i32.const 13 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $6 + local.tee $5 i32.const 16 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $5 loop $while-continue|05 - local.get $6 + local.get $5 if - local.get $6 - local.get $6 + local.get $5 + local.get $5 i32.load offset=4 - local.tee $7 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load16_u local.get $3 i32.const 65535 @@ -8432,10 +8421,10 @@ end br_if $__inlined_func$~lib/set/Set#find4 drop - local.get $7 + local.get $6 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|05 end end @@ -8450,13 +8439,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 local.get $1 call $~lib/set/Set#add block $__inlined_func$~lib/set/Set#find7 (result i32) - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 local.get $1 local.tee $3 @@ -8470,44 +8459,44 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $6 + local.tee $5 i32.const 15 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -2048144777 i32.mul - local.tee $6 + local.tee $5 i32.const 13 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.const -1028477379 i32.mul - local.tee $6 + local.tee $5 i32.const 16 i32.shr_u - local.get $6 + local.get $5 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $6 + local.set $5 loop $while-continue|08 - local.get $6 + local.get $5 if - local.get $6 - local.get $6 + local.get $5 + local.get $5 i32.load offset=4 - local.tee $7 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $6 + local.get $5 i32.load16_u local.get $3 i32.const 65535 @@ -8516,10 +8505,10 @@ end br_if $__inlined_func$~lib/set/Set#find7 drop - local.get $7 + local.get $6 i32.const -2 i32.and - local.set $6 + local.set $5 br $while-continue|08 end end @@ -8541,7 +8530,7 @@ br $for-loop|3 end end - local.get $4 + local.get $10 i32.load offset=20 i32.const 100 i32.ne @@ -8564,17 +8553,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $10 + local.tee $8 i32.const 0 i32.store - local.get $4 + local.get $10 i32.load offset=8 - local.set $8 - local.get $4 - i32.load offset=16 - local.tee $9 - local.set $3 + local.set $6 local.get $10 + i32.load offset=16 + local.tee $7 + local.set $1 + local.get $8 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -8583,28 +8572,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i64.const 0 i64.store - local.get $1 + local.get $3 i32.const 16 i32.const 10 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $9 i32.store - local.get $11 + local.get $9 i32.const 0 i32.store - local.get $11 + local.get $9 i32.const 0 i32.store offset=4 - local.get $11 + local.get $9 i32.const 0 i32.store offset=8 - local.get $11 + local.get $9 i32.const 0 i32.store offset=12 - local.get $3 + local.get $1 i32.const 536870910 i32.gt_u if @@ -8616,56 +8605,56 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.const 8 - local.get $3 + local.get $1 i32.const 8 i32.gt_u select i32.const 1 i32.shl - local.tee $6 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $11 i32.store offset=4 - local.get $1 - local.get $6 + local.get $11 + local.get $3 call $~lib/memory/memory.fill + local.get $9 local.get $11 - local.get $1 i32.store - local.get $1 + local.get $11 if + local.get $9 local.get $11 - local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $9 local.get $11 - local.get $1 i32.store offset=4 - local.get $11 - local.get $6 - i32.store offset=8 - local.get $11 + local.get $9 local.get $3 + i32.store offset=8 + local.get $9 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 - local.get $11 + local.get $8 + local.get $9 i32.store loop $for-loop|0 - local.get $5 - local.get $9 + local.get $4 + local.get $7 i32.lt_s if - local.get $5 + local.get $4 i32.const 3 i32.shl - local.get $8 + local.get $6 i32.add local.tee $1 i32.load offset=4 @@ -8673,7 +8662,7 @@ i32.and i32.eqz if - local.get $11 + local.get $9 local.get $2 local.get $1 i32.load16_u @@ -8683,47 +8672,47 @@ i32.add local.set $2 end - local.get $5 + local.get $4 i32.const 1 i32.add - local.set $5 + local.set $4 br $for-loop|0 end end - local.get $11 + local.get $9 local.get $2 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity - local.get $11 + local.get $9 local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 + local.get $9 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $3 i32.store offset=8 loop $for-loop|4 - local.get $11 + local.get $9 i32.load offset=12 local.get $0 i32.gt_s if - local.get $11 + local.get $9 local.get $0 call $~lib/array/Array#__get - local.set $1 + local.set $2 block $__inlined_func$~lib/set/Set#find10 (result i32) - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 - local.get $1 + local.get $2 i32.const 65535 i32.and i32.const -1028477379 @@ -8734,56 +8723,56 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 + local.tee $1 i32.const 15 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -2048144777 i32.mul - local.tee $2 + local.tee $1 i32.const 13 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.const -1028477379 i32.mul - local.tee $2 + local.tee $1 i32.const 16 i32.shr_u - local.get $2 + local.get $1 i32.xor i32.and i32.const 2 i32.shl i32.add i32.load - local.set $2 + local.set $1 loop $while-continue|011 - local.get $2 + local.get $1 if - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load offset=4 - local.tee $5 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $2 - i32.load16_u local.get $1 + i32.load16_u + local.get $2 i32.const 65535 i32.and i32.eq end br_if $__inlined_func$~lib/set/Set#find10 drop - local.get $5 + local.get $4 i32.const -2 i32.and - local.set $2 + local.set $1 br $while-continue|011 end end @@ -8801,7 +8790,7 @@ unreachable end local.get $3 - local.get $11 + local.get $9 local.get $0 call $~lib/array/Array#__get call $~lib/set/Set#add @@ -8814,7 +8803,7 @@ end local.get $3 i32.load offset=20 - local.get $4 + local.get $10 i32.load offset=20 i32.ne if @@ -8835,9 +8824,9 @@ i32.lt_u if block $__inlined_func$~lib/set/Set#find13 (result i32) - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 local.get $0 local.tee $1 @@ -8915,13 +8904,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 local.get $0 call $~lib/set/Set#delete block $__inlined_func$~lib/set/Set#find16 (result i32) - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 local.get $0 local.tee $1 @@ -9005,7 +8994,7 @@ br $for-loop|6 end end - local.get $4 + local.get $10 i32.load offset=20 i32.const 50 i32.ne @@ -9027,9 +9016,9 @@ i32.lt_u if block $__inlined_func$~lib/set/Set#find19 (result i32) - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 local.get $0 local.tee $1 @@ -9106,13 +9095,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 local.get $0 call $~lib/set/Set#add block $__inlined_func$~lib/set/Set#find22 (result i32) - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 local.get $0 local.tee $1 @@ -9190,13 +9179,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 local.get $0 call $~lib/set/Set#delete block $__inlined_func$~lib/set/Set#find25 (result i32) - local.get $4 + local.get $10 i32.load - local.get $4 + local.get $10 i32.load offset=4 local.get $0 local.tee $1 @@ -9280,7 +9269,7 @@ br $for-loop|8 end end - local.get $4 + local.get $10 i32.load offset=20 i32.const 50 i32.ne @@ -9292,9 +9281,9 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $10 call $~lib/set/Set#clear - local.get $4 + local.get $10 i32.load offset=20 if i32.const 0 @@ -9360,7 +9349,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -9374,12 +9363,12 @@ i32.const 3 i32.shl i32.add - local.set $6 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 local.get $4 - local.get $6 + local.get $7 i32.ne if local.get $4 @@ -9468,7 +9457,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -9483,12 +9472,10 @@ (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) block $__inlined_func$~lib/set/Set#find (result i32) local.get $0 i32.load local.get $1 - local.tee $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -9497,26 +9484,26 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor - local.tee $4 + local.tee $3 local.get $0 i32.load offset=4 i32.and @@ -9524,30 +9511,30 @@ i32.shl i32.add i32.load - local.set $3 + local.set $2 loop $while-continue|0 - local.get $3 + local.get $2 if - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else + local.get $1 local.get $2 - local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find drop - local.get $5 + local.get $4 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|0 end end @@ -9590,11 +9577,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $3 + local.tee $4 i32.const 1 i32.add i32.store offset=16 - local.get $3 + local.get $4 i32.const 3 i32.shl local.get $2 @@ -9613,7 +9600,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $4 + local.get $3 i32.and i32.const 2 i32.shl @@ -10212,17 +10199,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $6 i32.const 0 i32.store local.get $4 i32.load offset=8 - local.set $7 + local.set $2 local.get $4 i32.load offset=16 - local.tee $10 - local.set $3 - local.get $9 + local.tee $7 + local.set $9 + local.get $6 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -10231,28 +10218,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $8 i64.const 0 i64.store - local.get $2 + local.get $8 i32.const 16 i32.const 12 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $10 i32.store - local.get $2 + local.get $10 i32.const 0 i32.store - local.get $2 + local.get $10 i32.const 0 i32.store offset=4 - local.get $2 + local.get $10 i32.const 0 i32.store offset=8 - local.get $2 + local.get $10 i32.const 0 i32.store offset=12 - local.get $3 + local.get $9 i32.const 268435455 i32.gt_u if @@ -10264,66 +10251,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $9 i32.const 8 - local.get $3 + local.get $9 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $6 + local.tee $11 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $8 i32.store offset=4 + local.get $8 local.get $11 - local.get $6 call $~lib/memory/memory.fill - local.get $2 - local.get $11 + local.get $10 + local.get $8 i32.store - local.get $11 + local.get $8 if - local.get $2 - local.get $11 + local.get $10 + local.get $8 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 - local.get $11 + local.get $10 + local.get $8 i32.store offset=4 - local.get $2 - local.get $6 + local.get $10 + local.get $11 i32.store offset=8 - local.get $2 - local.get $3 + local.get $10 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 - local.get $2 + local.get $6 + local.get $10 i32.store loop $for-loop|01 local.get $5 - local.get $10 + local.get $7 i32.lt_s if local.get $5 i32.const 3 i32.shl - local.get $7 + local.get $2 i32.add - local.tee $3 + local.tee $6 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $2 + local.get $10 local.get $0 - local.get $3 + local.get $6 i32.load call $~lib/array/Array#__set local.get $0 @@ -10338,34 +10325,34 @@ br $for-loop|01 end end - local.get $2 + local.get $10 local.get $0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $2 + local.get $10 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $10 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|2 - local.get $2 + local.get $10 i32.load offset=12 local.get $1 i32.gt_s if - local.get $2 + local.get $10 local.get $1 call $~lib/array/Array#__get - local.tee $5 + local.tee $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -10410,19 +10397,19 @@ if local.get $3 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 + local.get $2 local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $6 + local.get $5 i32.const -2 i32.and local.set $3 @@ -10443,7 +10430,7 @@ unreachable end local.get $0 - local.get $2 + local.get $10 local.get $1 call $~lib/array/Array#__get call $~lib/set/Set#add @@ -10973,7 +10960,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $6 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -10987,12 +10974,12 @@ i32.const 3 i32.shl i32.add - local.set $6 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 local.get $4 - local.get $6 + local.get $7 i32.ne if local.get $4 @@ -11081,7 +11068,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $7 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -11096,12 +11083,10 @@ (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) block $__inlined_func$~lib/set/Set#find (result i32) local.get $0 i32.load local.get $1 - local.tee $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -11110,26 +11095,26 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 + local.tee $2 i32.const 15 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -2048144777 i32.mul - local.tee $3 + local.tee $2 i32.const 13 i32.shr_u - local.get $3 + local.get $2 i32.xor i32.const -1028477379 i32.mul - local.tee $3 + local.tee $2 i32.const 16 i32.shr_u - local.get $3 + local.get $2 i32.xor - local.tee $4 + local.tee $3 local.get $0 i32.load offset=4 i32.and @@ -11137,30 +11122,30 @@ i32.shl i32.add i32.load - local.set $3 + local.set $2 loop $while-continue|0 - local.get $3 + local.get $2 if - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load offset=4 - local.tee $5 + local.tee $4 i32.const 1 i32.and if (result i32) i32.const 0 else + local.get $1 local.get $2 - local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find drop - local.get $5 + local.get $4 i32.const -2 i32.and - local.set $3 + local.set $2 br $while-continue|0 end end @@ -11203,11 +11188,11 @@ local.get $0 local.get $0 i32.load offset=16 - local.tee $3 + local.tee $4 i32.const 1 i32.add i32.store offset=16 - local.get $3 + local.get $4 i32.const 3 i32.shl local.get $2 @@ -11226,7 +11211,7 @@ i32.load local.get $0 i32.load offset=4 - local.get $4 + local.get $3 i32.and i32.const 2 i32.shl @@ -11786,17 +11771,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $6 i32.const 0 i32.store local.get $4 i32.load offset=8 - local.set $7 + local.set $2 local.get $4 i32.load offset=16 - local.tee $10 - local.set $3 - local.get $9 + local.tee $7 + local.set $9 + local.get $6 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -11805,28 +11790,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $8 i64.const 0 i64.store - local.get $2 + local.get $8 i32.const 16 i32.const 14 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $10 i32.store - local.get $2 + local.get $10 i32.const 0 i32.store - local.get $2 + local.get $10 i32.const 0 i32.store offset=4 - local.get $2 + local.get $10 i32.const 0 i32.store offset=8 - local.get $2 + local.get $10 i32.const 0 i32.store offset=12 - local.get $3 + local.get $9 i32.const 268435455 i32.gt_u if @@ -11838,66 +11823,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $9 i32.const 8 - local.get $3 + local.get $9 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $6 + local.tee $11 i32.const 0 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $8 i32.store offset=4 + local.get $8 local.get $11 - local.get $6 call $~lib/memory/memory.fill - local.get $2 - local.get $11 + local.get $10 + local.get $8 i32.store - local.get $11 + local.get $8 if - local.get $2 - local.get $11 + local.get $10 + local.get $8 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 - local.get $11 + local.get $10 + local.get $8 i32.store offset=4 - local.get $2 - local.get $6 + local.get $10 + local.get $11 i32.store offset=8 - local.get $2 - local.get $3 + local.get $10 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 - local.get $2 + local.get $6 + local.get $10 i32.store loop $for-loop|01 local.get $5 - local.get $10 + local.get $7 i32.lt_s if local.get $5 i32.const 3 i32.shl - local.get $7 + local.get $2 i32.add - local.tee $3 + local.tee $6 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $2 + local.get $10 local.get $0 - local.get $3 + local.get $6 i32.load call $~lib/array/Array#__set local.get $0 @@ -11912,34 +11897,34 @@ br $for-loop|01 end end - local.get $2 + local.get $10 local.get $0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $2 + local.get $10 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $10 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|2 - local.get $2 + local.get $10 i32.load offset=12 local.get $1 i32.gt_s if - local.get $2 + local.get $10 local.get $1 call $~lib/array/Array#__get - local.tee $5 + local.tee $2 i32.const -1028477379 i32.mul i32.const 374761397 @@ -11984,19 +11969,19 @@ if local.get $3 i32.load offset=4 - local.tee $6 + local.tee $5 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $5 + local.get $2 local.get $3 i32.load i32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $6 + local.get $5 i32.const -2 i32.and local.set $3 @@ -12017,7 +12002,7 @@ unreachable end local.get $0 - local.get $2 + local.get $10 local.get $1 call $~lib/array/Array#__get call $~lib/set/Set#add @@ -12593,9 +12578,9 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) + (local $6 i64) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -12646,12 +12631,12 @@ i32.const 4 i32.shl i32.add - local.set $6 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 local.get $4 - local.get $6 + local.get $8 i32.ne if local.get $4 @@ -12663,10 +12648,10 @@ local.get $2 local.get $4 i64.load - local.tee $8 + local.tee $6 i64.store local.get $2 - local.get $8 + local.get $6 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -12676,7 +12661,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $8 + local.get $6 i64.const 32 i64.shr_u i32.wrap_i64 @@ -13183,14 +13168,14 @@ i32.store offset=8 local.get $2 call $~lib/set/Set#constructor - local.tee $2 + local.tee $11 i32.store loop $for-loop|0 local.get $1 i64.const 100 i64.lt_s if - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#has if @@ -13201,10 +13186,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#has i32.eqz @@ -13223,7 +13208,7 @@ br $for-loop|0 end end - local.get $2 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -13242,7 +13227,7 @@ i64.const 100 i64.lt_s if - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#has i32.eqz @@ -13254,10 +13239,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#has i32.eqz @@ -13276,7 +13261,7 @@ br $for-loop|1 end end - local.get $2 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -13289,8 +13274,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -13299,17 +13284,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $11 + local.tee $9 i32.const 0 i32.store - local.get $2 + local.get $11 i32.load offset=8 - local.set $9 - local.get $2 - i32.load offset=16 - local.tee $10 - local.set $4 + local.set $7 local.get $11 + i32.load offset=16 + local.tee $8 + local.set $2 + local.get $9 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -13318,28 +13303,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $5 i64.const 0 i64.store - local.get $3 + local.get $5 i32.const 16 i32.const 16 call $~lib/rt/itcms/__new - local.tee $12 + local.tee $10 i32.store - local.get $12 + local.get $10 i32.const 0 i32.store - local.get $12 + local.get $10 i32.const 0 i32.store offset=4 - local.get $12 + local.get $10 i32.const 0 i32.store offset=8 - local.get $12 + local.get $10 i32.const 0 i32.store offset=12 - local.get $4 + local.get $2 i32.const 134217727 i32.gt_u if @@ -13351,66 +13336,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.const 8 - local.get $4 + local.get $2 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $7 + local.tee $5 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $12 i32.store offset=4 - local.get $3 - local.get $7 + local.get $12 + local.get $5 call $~lib/memory/memory.fill + local.get $10 local.get $12 - local.get $3 i32.store - local.get $3 + local.get $12 if + local.get $10 local.get $12 - local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $10 local.get $12 - local.get $3 i32.store offset=4 - local.get $12 - local.get $7 + local.get $10 + local.get $5 i32.store offset=8 - local.get $12 - local.get $4 + local.get $10 + local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 - local.get $12 + local.get $9 + local.get $10 i32.store loop $for-loop|01 - local.get $6 - local.get $10 + local.get $4 + local.get $8 i32.lt_s if - local.get $6 + local.get $4 i32.const 4 i32.shl - local.get $9 + local.get $7 i32.add - local.tee $3 + local.tee $2 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $12 + local.get $10 local.get $0 - local.get $3 + local.get $2 i64.load call $~lib/array/Array#__set local.get $0 @@ -13418,40 +13403,40 @@ i32.add local.set $0 end - local.get $6 + local.get $4 i32.const 1 i32.add - local.set $6 + local.set $4 br $for-loop|01 end end - local.get $12 + local.get $10 local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $12 + local.get $10 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $12 + local.get $10 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|2 - local.get $12 + local.get $10 i32.load offset=12 - local.get $5 + local.get $3 i32.gt_s if - local.get $2 - local.get $12 - local.get $5 + local.get $11 + local.get $10 + local.get $3 call $~lib/array/Array#__get call $~lib/set/Set#has i32.eqz @@ -13464,20 +13449,20 @@ unreachable end local.get $0 - local.get $12 - local.get $5 + local.get $10 + local.get $3 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $5 + local.get $3 i32.const 1 i32.add - local.set $5 + local.set $3 br $for-loop|2 end end local.get $0 i32.load offset=20 - local.get $2 + local.get $11 i32.load offset=20 i32.ne if @@ -13495,7 +13480,7 @@ i64.const 50 i64.lt_s if - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#has i32.eqz @@ -13507,10 +13492,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#delete - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#has if @@ -13528,7 +13513,7 @@ br $for-loop|3 end end - local.get $2 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -13547,7 +13532,7 @@ i64.const 50 i64.lt_s if - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#has if @@ -13558,10 +13543,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#has i32.eqz @@ -13573,10 +13558,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#delete - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#has if @@ -13594,7 +13579,7 @@ br $for-loop|4 end end - local.get $2 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -13606,9 +13591,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 call $~lib/set/Set#clear - local.get $2 + local.get $11 i32.load offset=20 if i32.const 0 @@ -13720,9 +13705,9 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) + (local $6 i64) (local $7 i32) - (local $8 i64) + (local $8 i32) (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -13773,12 +13758,12 @@ i32.const 4 i32.shl i32.add - local.set $6 + local.set $8 local.get $3 local.set $2 loop $while-continue|0 local.get $4 - local.get $6 + local.get $8 i32.ne if local.get $4 @@ -13790,10 +13775,10 @@ local.get $2 local.get $4 i64.load - local.tee $8 + local.tee $6 i64.store local.get $2 - local.get $8 + local.get $6 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -13803,7 +13788,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $8 + local.get $6 i64.const 32 i64.shr_u i32.wrap_i64 @@ -14234,14 +14219,14 @@ i32.store offset=8 local.get $2 call $~lib/set/Set#constructor - local.tee $2 + local.tee $11 i32.store loop $for-loop|0 local.get $1 i64.const 100 i64.lt_u if - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#has if @@ -14252,10 +14237,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#has i32.eqz @@ -14274,7 +14259,7 @@ br $for-loop|0 end end - local.get $2 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -14293,7 +14278,7 @@ i64.const 100 i64.lt_u if - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#has i32.eqz @@ -14305,10 +14290,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#has i32.eqz @@ -14327,7 +14312,7 @@ br $for-loop|1 end end - local.get $2 + local.get $11 i32.load offset=20 i32.const 100 i32.ne @@ -14340,8 +14325,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -14350,17 +14335,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $11 + local.tee $9 i32.const 0 i32.store - local.get $2 + local.get $11 i32.load offset=8 - local.set $9 - local.get $2 - i32.load offset=16 - local.tee $10 - local.set $4 + local.set $7 local.get $11 + i32.load offset=16 + local.tee $8 + local.set $2 + local.get $9 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -14369,28 +14354,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $5 i64.const 0 i64.store - local.get $3 + local.get $5 i32.const 16 i32.const 18 call $~lib/rt/itcms/__new - local.tee $12 + local.tee $10 i32.store - local.get $12 + local.get $10 i32.const 0 i32.store - local.get $12 + local.get $10 i32.const 0 i32.store offset=4 - local.get $12 + local.get $10 i32.const 0 i32.store offset=8 - local.get $12 + local.get $10 i32.const 0 i32.store offset=12 - local.get $4 + local.get $2 i32.const 134217727 i32.gt_u if @@ -14402,66 +14387,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.const 8 - local.get $4 + local.get $2 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $7 + local.tee $5 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $12 i32.store offset=4 - local.get $3 - local.get $7 - call $~lib/memory/memory.fill local.get $12 - local.get $3 + local.get $5 + call $~lib/memory/memory.fill + local.get $10 + local.get $12 i32.store - local.get $3 + local.get $12 if + local.get $10 local.get $12 - local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $10 local.get $12 - local.get $3 i32.store offset=4 - local.get $12 - local.get $7 + local.get $10 + local.get $5 i32.store offset=8 - local.get $12 - local.get $4 + local.get $10 + local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 - local.get $12 + local.get $9 + local.get $10 i32.store loop $for-loop|01 - local.get $6 - local.get $10 + local.get $4 + local.get $8 i32.lt_s if - local.get $6 + local.get $4 i32.const 4 i32.shl - local.get $9 + local.get $7 i32.add - local.tee $3 + local.tee $2 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $12 + local.get $10 local.get $0 - local.get $3 + local.get $2 i64.load call $~lib/array/Array#__set local.get $0 @@ -14469,40 +14454,40 @@ i32.add local.set $0 end - local.get $6 + local.get $4 i32.const 1 i32.add - local.set $6 + local.set $4 br $for-loop|01 end end - local.get $12 + local.get $10 local.get $0 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $12 + local.get $10 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $12 + local.get $10 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|2 - local.get $12 + local.get $10 i32.load offset=12 - local.get $5 + local.get $3 i32.gt_s if - local.get $2 - local.get $12 - local.get $5 + local.get $11 + local.get $10 + local.get $3 call $~lib/array/Array#__get call $~lib/set/Set#has i32.eqz @@ -14515,20 +14500,20 @@ unreachable end local.get $0 - local.get $12 - local.get $5 + local.get $10 + local.get $3 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $5 + local.get $3 i32.const 1 i32.add - local.set $5 + local.set $3 br $for-loop|2 end end local.get $0 i32.load offset=20 - local.get $2 + local.get $11 i32.load offset=20 i32.ne if @@ -14546,7 +14531,7 @@ i64.const 50 i64.lt_u if - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#has i32.eqz @@ -14558,10 +14543,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#delete - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#has if @@ -14579,7 +14564,7 @@ br $for-loop|3 end end - local.get $2 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -14598,7 +14583,7 @@ i64.const 50 i64.lt_u if - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#has if @@ -14609,10 +14594,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#add - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#has i32.eqz @@ -14624,10 +14609,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#delete - local.get $2 + local.get $11 local.get $1 call $~lib/set/Set#has if @@ -14645,7 +14630,7 @@ br $for-loop|4 end end - local.get $2 + local.get $11 i32.load offset=20 i32.const 50 i32.ne @@ -14657,9 +14642,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $11 call $~lib/set/Set#clear - local.get $2 + local.get $11 i32.load offset=20 if i32.const 0 @@ -14687,9 +14672,9 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 f32) + (local $6 i32) (local $7 i32) - (local $8 i32) + (local $8 f32) (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -14726,7 +14711,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $8 + local.tee $6 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -14757,10 +14742,10 @@ local.get $2 local.get $4 f32.load - local.tee $6 + local.tee $8 f32.store local.get $2 - local.get $6 + local.get $8 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -14835,7 +14820,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $8 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -15139,8 +15124,8 @@ (func $std/set/testNumeric (local $0 i32) (local $1 i32) - (local $2 i32) - (local $3 f32) + (local $2 f32) + (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) @@ -15160,26 +15145,26 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 call $~lib/set/Set#constructor - local.tee $4 + local.tee $12 i32.store loop $for-loop|0 - local.get $3 + local.get $2 f32.const 100 f32.lt if - local.get $4 + local.get $12 i32.load - local.get $4 + local.get $12 i32.load offset=4 - local.get $3 + local.get $2 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15189,22 +15174,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.const 16 i32.shr_u i32.xor @@ -15213,36 +15198,36 @@ i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find loop $while-continue|0 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $1 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 local.get $2 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find - local.get $1 + local.get $0 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|0 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -15251,14 +15236,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $12 + local.get $2 call $~lib/set/Set#add - local.get $4 + local.get $12 i32.load - local.get $4 + local.get $12 i32.load offset=4 - local.get $3 + local.get $2 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15268,22 +15253,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.const 16 i32.shr_u i32.xor @@ -15292,36 +15277,36 @@ i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find1 loop $while-continue|02 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $1 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 local.get $2 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find1 - local.get $1 + local.get $0 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|02 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -15331,14 +15316,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 f32.const 1 f32.add - local.set $3 + local.set $2 br $for-loop|0 end end - local.get $4 + local.get $12 i32.load offset=20 i32.const 100 i32.ne @@ -15351,17 +15336,17 @@ unreachable end f32.const 50 - local.set $3 + local.set $2 loop $for-loop|1 - local.get $3 + local.get $2 f32.const 100 f32.lt if - local.get $4 + local.get $12 i32.load - local.get $4 + local.get $12 i32.load offset=4 - local.get $3 + local.get $2 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15371,22 +15356,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.const 16 i32.shr_u i32.xor @@ -15395,36 +15380,36 @@ i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find4 loop $while-continue|05 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $1 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 local.get $2 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find4 - local.get $1 + local.get $0 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|05 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -15434,14 +15419,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $12 + local.get $2 call $~lib/set/Set#add - local.get $4 + local.get $12 i32.load - local.get $4 + local.get $12 i32.load offset=4 - local.get $3 + local.get $2 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15451,22 +15436,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.const 16 i32.shr_u i32.xor @@ -15475,36 +15460,36 @@ i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find7 loop $while-continue|08 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $1 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 local.get $2 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find7 - local.get $1 + local.get $0 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|08 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -15514,14 +15499,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 f32.const 1 f32.add - local.set $3 + local.set $2 br $for-loop|1 end end - local.get $4 + local.get $12 i32.load offset=20 i32.const 100 i32.ne @@ -15534,8 +15519,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -15544,17 +15529,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $10 + local.tee $7 i32.const 0 i32.store - local.get $4 + local.get $12 i32.load offset=8 - local.set $9 - local.get $4 + local.set $8 + local.get $12 i32.load offset=16 - local.tee $11 - local.set $2 - local.get $10 + local.tee $6 + local.set $3 + local.get $7 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -15563,28 +15548,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 16 i32.const 20 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i32.store - local.get $1 + local.get $4 i32.const 0 i32.store offset=4 - local.get $1 + local.get $4 i32.const 0 i32.store offset=8 - local.get $1 + local.get $4 i32.const 0 i32.store offset=12 - local.get $2 + local.get $3 i32.const 268435455 i32.gt_u if @@ -15596,77 +15581,77 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 8 - local.get $2 + local.get $3 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $7 + local.tee $0 i32.const 0 call $~lib/rt/itcms/__new - local.tee $12 + local.tee $5 i32.store offset=4 - local.get $12 - local.get $7 + local.get $5 + local.get $0 call $~lib/memory/memory.fill - local.get $1 - local.get $12 + local.get $4 + local.get $5 i32.store - local.get $12 + local.get $5 if - local.get $1 - local.get $12 + local.get $4 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 - local.get $12 + local.get $4 + local.get $5 i32.store offset=4 - local.get $1 - local.get $7 + local.get $4 + local.get $0 i32.store offset=8 - local.get $1 - local.get $2 + local.get $4 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 - local.get $1 + local.get $7 + local.get $4 i32.store loop $for-loop|01 local.get $6 - local.get $11 - i32.lt_s + local.get $10 + i32.gt_s if - local.get $6 + local.get $10 i32.const 3 i32.shl - local.get $9 + local.get $8 i32.add - local.tee $7 + local.tee $3 i32.load offset=4 i32.const 1 i32.and i32.eqz if - local.get $0 - local.tee $2 + local.get $1 + local.tee $0 i32.const 1 i32.add - local.set $0 - local.get $7 + local.set $1 + local.get $3 f32.load - local.set $3 - local.get $1 + local.set $2 + local.get $4 i32.load offset=12 - local.get $2 + local.get $0 i32.le_u if - local.get $2 + local.get $0 i32.const 0 i32.lt_s if @@ -15677,62 +15662,62 @@ call $~lib/builtins/abort unreachable end - local.get $1 - local.get $2 + local.get $4 + local.get $0 i32.const 1 i32.add - local.tee $7 + local.tee $3 i32.const 2 i32.const 1 call $~lib/array/ensureCapacity - local.get $1 - local.get $7 + local.get $4 + local.get $3 i32.store offset=12 end - local.get $1 + local.get $4 i32.load offset=4 - local.get $2 + local.get $0 i32.const 2 i32.shl i32.add - local.get $3 + local.get $2 f32.store end - local.get $6 + local.get $10 i32.const 1 i32.add - local.set $6 + local.set $10 br $for-loop|01 end end + local.get $4 local.get $1 - local.get $0 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity + local.get $4 local.get $1 - local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $4 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $0 + local.tee $1 i32.store offset=8 loop $for-loop|2 - local.get $1 + local.get $4 i32.load offset=12 - local.get $5 + local.get $11 i32.gt_s if - local.get $1 - local.get $5 + local.get $4 + local.get $11 call $~lib/array/Array#__get - local.tee $3 + local.tee $2 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15742,27 +15727,27 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $2 - local.get $2 + local.tee $0 + local.get $0 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $2 - local.get $2 + local.tee $0 + local.get $0 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.set $2 - local.get $4 + local.set $0 + local.get $12 i32.load - local.get $4 + local.get $12 i32.load offset=4 - local.get $2 - local.get $2 + local.get $0 + local.get $0 i32.const 16 i32.shr_u i32.xor @@ -15771,36 +15756,36 @@ i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find10 loop $while-continue|011 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 - local.tee $6 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 local.get $2 + local.get $3 f32.load f32.eq end br_if $__inlined_func$~lib/set/Set#find10 - local.get $6 + local.get $0 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|011 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -15810,21 +15795,21 @@ call $~lib/builtins/abort unreachable end - local.get $0 local.get $1 - local.get $5 + local.get $4 + local.get $11 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $5 + local.get $11 i32.const 1 i32.add - local.set $5 + local.set $11 br $for-loop|2 end end - local.get $0 + local.get $1 i32.load offset=20 - local.get $4 + local.get $12 i32.load offset=20 i32.ne if @@ -15836,17 +15821,17 @@ unreachable end f32.const 0 - local.set $3 + local.set $2 loop $for-loop|3 - local.get $3 + local.get $2 f32.const 50 f32.lt if - local.get $4 + local.get $12 i32.load - local.get $4 + local.get $12 i32.load offset=4 - local.get $3 + local.get $2 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15880,12 +15865,12 @@ i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find13 loop $while-continue|014 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -15893,8 +15878,8 @@ if (result i32) i32.const 0 else - local.get $3 local.get $2 + local.get $3 f32.load f32.eq end @@ -15902,14 +15887,14 @@ local.get $0 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|014 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -15919,14 +15904,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $12 + local.get $2 call $~lib/set/Set#delete - local.get $4 + local.get $12 i32.load - local.get $4 + local.get $12 i32.load offset=4 - local.get $3 + local.get $2 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -15960,12 +15945,12 @@ i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find16 loop $while-continue|017 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -15973,8 +15958,8 @@ if (result i32) i32.const 0 else - local.get $3 local.get $2 + local.get $3 f32.load f32.eq end @@ -15982,14 +15967,14 @@ local.get $0 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|017 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -15998,14 +15983,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 f32.const 1 f32.add - local.set $3 + local.set $2 br $for-loop|3 end end - local.get $4 + local.get $12 i32.load offset=20 i32.const 50 i32.ne @@ -16018,17 +16003,17 @@ unreachable end f32.const 0 - local.set $3 + local.set $2 loop $for-loop|4 - local.get $3 + local.get $2 f32.const 50 f32.lt if - local.get $4 + local.get $12 i32.load - local.get $4 + local.get $12 i32.load offset=4 - local.get $3 + local.get $2 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -16062,12 +16047,12 @@ i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find19 loop $while-continue|020 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -16075,8 +16060,8 @@ if (result i32) i32.const 0 else - local.get $3 local.get $2 + local.get $3 f32.load f32.eq end @@ -16084,14 +16069,14 @@ local.get $0 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|020 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -16100,14 +16085,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $12 + local.get $2 call $~lib/set/Set#add - local.get $4 + local.get $12 i32.load - local.get $4 + local.get $12 i32.load offset=4 - local.get $3 + local.get $2 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -16141,12 +16126,12 @@ i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find22 loop $while-continue|023 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -16154,8 +16139,8 @@ if (result i32) i32.const 0 else - local.get $3 local.get $2 + local.get $3 f32.load f32.eq end @@ -16163,14 +16148,14 @@ local.get $0 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|023 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 i32.eqz if i32.const 0 @@ -16180,14 +16165,14 @@ call $~lib/builtins/abort unreachable end - local.get $4 - local.get $3 + local.get $12 + local.get $2 call $~lib/set/Set#delete - local.get $4 + local.get $12 i32.load - local.get $4 + local.get $12 i32.load offset=4 - local.get $3 + local.get $2 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -16221,12 +16206,12 @@ i32.shl i32.add i32.load - local.set $2 + local.set $3 block $__inlined_func$~lib/set/Set#find25 loop $while-continue|026 - local.get $2 + local.get $3 if - local.get $2 + local.get $3 i32.load offset=4 local.tee $0 i32.const 1 @@ -16234,8 +16219,8 @@ if (result i32) i32.const 0 else - local.get $3 local.get $2 + local.get $3 f32.load f32.eq end @@ -16243,14 +16228,14 @@ local.get $0 i32.const -2 i32.and - local.set $2 + local.set $3 br $while-continue|026 end end i32.const 0 - local.set $2 + local.set $3 end - local.get $2 + local.get $3 if i32.const 0 i32.const 1568 @@ -16259,14 +16244,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 f32.const 1 f32.add - local.set $3 + local.set $2 br $for-loop|4 end end - local.get $4 + local.get $12 i32.load offset=20 i32.const 50 i32.ne @@ -16278,9 +16263,9 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $12 call $~lib/set/Set#clear - local.get $4 + local.get $12 i32.load offset=20 if i32.const 0 @@ -16395,10 +16380,10 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i64) - (local $7 f64) - (local $8 i32) - (local $9 i32) + (local $6 i32) + (local $7 i32) + (local $8 f64) + (local $9 i64) (local $10 i32) global.get $~lib/memory/__stack_pointer i32.const 8 @@ -16435,7 +16420,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $9 + local.tee $6 i32.const 4 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -16449,12 +16434,12 @@ i32.const 4 i32.shl i32.add - local.set $8 + local.set $7 local.get $3 local.set $2 loop $while-continue|0 local.get $4 - local.get $8 + local.get $7 i32.ne if local.get $4 @@ -16466,12 +16451,12 @@ local.get $2 local.get $4 f64.load - local.tee $7 + local.tee $8 f64.store local.get $2 - local.get $7 + local.get $8 i64.reinterpret_f64 - local.tee $6 + local.tee $9 i32.wrap_i64 i32.const -1028477379 i32.mul @@ -16481,7 +16466,7 @@ i32.rotl i32.const 668265263 i32.mul - local.get $6 + local.get $9 i64.const 32 i64.shr_u i32.wrap_i64 @@ -16557,7 +16542,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $9 + local.get $6 i32.store offset=12 local.get $0 local.get $0 @@ -16889,8 +16874,8 @@ (func $std/set/testNumeric (local $0 i32) (local $1 i32) - (local $2 f64) - (local $3 i32) + (local $2 i32) + (local $3 f64) (local $4 i32) (local $5 i32) (local $6 i32) @@ -16910,23 +16895,23 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i64.const 0 i64.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $0 call $~lib/set/Set#constructor - local.tee $3 + local.tee $12 i32.store loop $for-loop|0 - local.get $2 + local.get $3 f64.const 100 f64.lt if + local.get $12 local.get $3 - local.get $2 call $~lib/set/Set#has if i32.const 0 @@ -16936,11 +16921,11 @@ call $~lib/builtins/abort unreachable end + local.get $12 local.get $3 - local.get $2 call $~lib/set/Set#add + local.get $12 local.get $3 - local.get $2 call $~lib/set/Set#has i32.eqz if @@ -16951,14 +16936,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 f64.const 1 f64.add - local.set $2 + local.set $3 br $for-loop|0 end end - local.get $3 + local.get $12 i32.load offset=20 i32.const 100 i32.ne @@ -16971,14 +16956,14 @@ unreachable end f64.const 50 - local.set $2 + local.set $3 loop $for-loop|1 - local.get $2 + local.get $3 f64.const 100 f64.lt if + local.get $12 local.get $3 - local.get $2 call $~lib/set/Set#has i32.eqz if @@ -16989,11 +16974,11 @@ call $~lib/builtins/abort unreachable end + local.get $12 local.get $3 - local.get $2 call $~lib/set/Set#add + local.get $12 local.get $3 - local.get $2 call $~lib/set/Set#has i32.eqz if @@ -17004,14 +16989,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 f64.const 1 f64.add - local.set $2 + local.set $3 br $for-loop|1 end end - local.get $3 + local.get $12 i32.load offset=20 i32.const 100 i32.ne @@ -17024,8 +17009,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -17034,17 +17019,17 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $10 + local.tee $6 i32.const 0 i32.store - local.get $3 + local.get $12 i32.load offset=8 local.set $8 - local.get $3 + local.get $12 i32.load offset=16 - local.tee $9 - local.set $1 - local.get $10 + local.tee $7 + local.set $2 + local.get $6 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -17053,28 +17038,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $0 i64.const 0 i64.store - local.get $6 + local.get $0 i32.const 16 i32.const 22 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $5 i32.store - local.get $11 + local.get $5 i32.const 0 i32.store - local.get $11 + local.get $5 i32.const 0 i32.store offset=4 - local.get $11 + local.get $5 i32.const 0 i32.store offset=8 - local.get $11 + local.get $5 i32.const 0 i32.store offset=12 - local.get $1 + local.get $2 i32.const 134217727 i32.gt_u if @@ -17086,77 +17071,77 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.const 8 - local.get $1 + local.get $2 i32.const 8 i32.gt_u select i32.const 3 i32.shl - local.tee $6 + local.tee $0 i32.const 0 call $~lib/rt/itcms/__new - local.tee $12 + local.tee $4 i32.store offset=4 - local.get $12 - local.get $6 + local.get $4 + local.get $0 call $~lib/memory/memory.fill - local.get $11 - local.get $12 + local.get $5 + local.get $4 i32.store - local.get $12 + local.get $4 if - local.get $11 - local.get $12 + local.get $5 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 - local.get $12 + local.get $5 + local.get $4 i32.store offset=4 - local.get $11 - local.get $6 + local.get $5 + local.get $0 i32.store offset=8 - local.get $11 - local.get $1 + local.get $5 + local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 - local.get $11 + local.get $6 + local.get $5 i32.store loop $for-loop|01 - local.get $5 - local.get $9 - i32.lt_s + local.get $7 + local.get $10 + i32.gt_s if - local.get $5 + local.get $10 i32.const 4 i32.shl local.get $8 i32.add - local.tee $6 + local.tee $2 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $0 - local.tee $1 + local.get $1 + local.tee $0 i32.const 1 i32.add - local.set $0 - local.get $6 + local.set $1 + local.get $2 f64.load - local.set $2 - local.get $11 + local.set $3 + local.get $5 i32.load offset=12 - local.get $1 + local.get $0 i32.le_u if - local.get $1 + local.get $0 i32.const 0 i32.lt_s if @@ -17167,61 +17152,61 @@ call $~lib/builtins/abort unreachable end - local.get $11 - local.get $1 + local.get $5 + local.get $0 i32.const 1 i32.add - local.tee $6 + local.tee $2 i32.const 3 i32.const 1 call $~lib/array/ensureCapacity - local.get $11 - local.get $6 + local.get $5 + local.get $2 i32.store offset=12 end - local.get $11 + local.get $5 i32.load offset=4 - local.get $1 + local.get $0 i32.const 3 i32.shl i32.add - local.get $2 + local.get $3 f64.store end - local.get $5 + local.get $10 i32.const 1 i32.add - local.set $5 + local.set $10 br $for-loop|01 end end - local.get $11 - local.get $0 + local.get $5 + local.get $1 i32.const 3 i32.const 0 call $~lib/array/ensureCapacity - local.get $11 - local.get $0 + local.get $5 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $11 + local.get $5 i32.store offset=4 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor local.tee $0 i32.store offset=8 loop $for-loop|2 - local.get $11 + local.get $5 i32.load offset=12 - local.get $4 + local.get $11 i32.gt_s if - local.get $3 + local.get $12 + local.get $5 local.get $11 - local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#has i32.eqz @@ -17234,20 +17219,20 @@ unreachable end local.get $0 + local.get $5 local.get $11 - local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $4 + local.get $11 i32.const 1 i32.add - local.set $4 + local.set $11 br $for-loop|2 end end local.get $0 i32.load offset=20 - local.get $3 + local.get $12 i32.load offset=20 i32.ne if @@ -17259,14 +17244,14 @@ unreachable end f64.const 0 - local.set $2 + local.set $3 loop $for-loop|3 - local.get $2 + local.get $3 f64.const 50 f64.lt if + local.get $12 local.get $3 - local.get $2 call $~lib/set/Set#has i32.eqz if @@ -17277,11 +17262,11 @@ call $~lib/builtins/abort unreachable end + local.get $12 local.get $3 - local.get $2 call $~lib/set/Set#delete + local.get $12 local.get $3 - local.get $2 call $~lib/set/Set#has if i32.const 0 @@ -17291,14 +17276,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 f64.const 1 f64.add - local.set $2 + local.set $3 br $for-loop|3 end end - local.get $3 + local.get $12 i32.load offset=20 i32.const 50 i32.ne @@ -17311,14 +17296,14 @@ unreachable end f64.const 0 - local.set $2 + local.set $3 loop $for-loop|4 - local.get $2 + local.get $3 f64.const 50 f64.lt if + local.get $12 local.get $3 - local.get $2 call $~lib/set/Set#has if i32.const 0 @@ -17328,11 +17313,11 @@ call $~lib/builtins/abort unreachable end + local.get $12 local.get $3 - local.get $2 call $~lib/set/Set#add + local.get $12 local.get $3 - local.get $2 call $~lib/set/Set#has i32.eqz if @@ -17343,11 +17328,11 @@ call $~lib/builtins/abort unreachable end + local.get $12 local.get $3 - local.get $2 call $~lib/set/Set#delete + local.get $12 local.get $3 - local.get $2 call $~lib/set/Set#has if i32.const 0 @@ -17357,14 +17342,14 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 f64.const 1 f64.add - local.set $2 + local.set $3 br $for-loop|4 end end - local.get $3 + local.get $12 i32.load offset=20 i32.const 50 i32.ne @@ -17376,9 +17361,9 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $12 call $~lib/set/Set#clear - local.get $3 + local.get $12 i32.load offset=20 if i32.const 0 diff --git a/tests/compiler/std/static-array.optimized.wat b/tests/compiler/std/static-array.optimized.wat index 009ef500f5..1c6a890b7f 100644 --- a/tests/compiler/std/static-array.optimized.wat +++ b/tests/compiler/std/static-array.optimized.wat @@ -161,18 +161,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 18396 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -186,9 +185,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -198,15 +197,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -247,20 +246,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -692,9 +691,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -741,6 +737,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1893,95 +1892,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -2012,39 +2011,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 @@ -2142,7 +2141,7 @@ end local.get $5 i32.load offset=12 - local.set $4 + local.set $6 local.get $1 local.tee $2 i32.const 1073741804 @@ -2200,18 +2199,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $2 - i32.const 16 - i32.add - local.set $1 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $7 - local.get $1 + local.tee $3 + local.get $2 + i32.const 16 + i32.add + local.tee $4 i32.const 1073741820 i32.gt_u if @@ -2222,13 +2220,13 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $4 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $1 + local.get $4 i32.const 19 i32.add i32.const -16 @@ -2236,32 +2234,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $7 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size local.tee $1 - local.get $3 + local.get $7 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $7 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $7 i32.add else - local.get $3 + local.get $7 end i32.const 4 - local.get $7 + local.get $3 i32.load offset=1568 local.get $1 i32.const 16 @@ -2277,16 +2275,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $6 + local.tee $4 local.get $1 - local.get $6 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $6 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -2294,7 +2292,7 @@ unreachable end end - local.get $7 + local.get $3 local.get $1 i32.const 16 i32.shl @@ -2302,8 +2300,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $7 local.get $3 + local.get $7 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -2320,7 +2318,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $7 i32.lt_u if i32.const 0 @@ -2330,13 +2328,13 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $3 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.set $8 - local.get $3 + local.set $4 + local.get $7 i32.const 4 i32.add i32.const 15 @@ -2349,40 +2347,40 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $4 i32.const -4 i32.and - local.get $3 + local.get $7 i32.sub - local.tee $6 + local.tee $8 i32.const 16 i32.ge_u if local.get $1 - local.get $8 + local.get $4 i32.const 2 i32.and - local.get $3 + local.get $7 i32.or i32.store - local.get $3 + local.get $7 local.get $1 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $4 + local.get $8 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $7 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $8 + local.get $4 i32.const -2 i32.and i32.store @@ -2402,7 +2400,7 @@ i32.store end local.get $1 - local.get $4 + local.get $6 i32.store offset=12 local.get $1 local.get $2 @@ -2648,7 +2646,7 @@ (local $4 i32) local.get $0 i32.load offset=8 - local.tee $2 + local.tee $3 local.get $1 i32.shr_u i32.const 1 @@ -2667,11 +2665,11 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 local.get $0 i32.load - local.tee $3 - local.get $2 + local.tee $2 + local.get $3 i32.const 1 i32.shl local.tee $4 @@ -2689,25 +2687,25 @@ local.get $4 i32.lt_u select - local.tee $4 - call $~lib/rt/itcms/__renew local.tee $1 + call $~lib/rt/itcms/__renew + local.tee $4 i32.add - local.get $4 - local.get $2 - i32.sub - call $~lib/memory/memory.fill local.get $1 local.get $3 + i32.sub + call $~lib/memory/memory.fill + local.get $2 + local.get $4 i32.ne if local.get $0 - local.get $1 + local.get $4 i32.store local.get $0 - local.get $1 + local.get $4 i32.store offset=4 - local.get $1 + local.get $4 if local.get $0 i32.eqz @@ -2720,10 +2718,10 @@ unreachable end global.get $~lib/rt/itcms/white - local.get $1 + local.get $4 i32.const 20 i32.sub - local.tee $1 + local.tee $2 i32.load offset=4 i32.const 3 i32.and @@ -2735,23 +2733,23 @@ i32.load offset=4 i32.const 3 i32.and - local.tee $2 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $1 + local.get $2 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $2 + local.get $3 i32.const 3 i32.eq i32.and if - local.get $1 + local.get $2 call $~lib/rt/itcms/Object#makeGray end end @@ -2759,7 +2757,7 @@ end end local.get $0 - local.get $4 + local.get $1 i32.store offset=8 end ) diff --git a/tests/compiler/std/staticarray.optimized.wat b/tests/compiler/std/staticarray.optimized.wat index f4b00fbc10..417380e684 100644 --- a/tests/compiler/std/staticarray.optimized.wat +++ b/tests/compiler/std/staticarray.optimized.wat @@ -302,18 +302,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 20252 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -327,9 +326,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -339,15 +338,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -388,20 +387,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -833,9 +832,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -882,6 +878,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1075,7 +1074,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $2 + local.set $1 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -1092,11 +1091,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -1138,9 +1137,9 @@ if local.get $0 i32.load - local.tee $1 + local.tee $2 if - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -1164,11 +1163,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -1194,7 +1193,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $2 + local.get $1 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -1835,17 +1834,15 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $2 + local.get $0 + i32.const 16 + i32.add call $~lib/rt/tlsf/allocateBlock local.tee $2 local.get $1 @@ -1854,26 +1851,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 - local.get $1 + local.get $3 global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -2354,95 +2351,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -2473,39 +2470,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 @@ -2877,14 +2874,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -3817,26 +3814,24 @@ local.tee $6 i32.const 2 i32.shl - local.tee $5 + local.tee $7 i32.const 1 i32.shl - local.set $7 + local.set $8 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $7 + local.get $8 call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add local.tee $9 - local.get $5 + local.get $7 i32.add local.set $10 - i32.const 0 - local.set $5 loop $for-loop|1 local.get $5 local.get $6 @@ -3856,17 +3851,15 @@ br $for-loop|1 end end - local.get $1 - i32.const 2 - i32.shl - local.set $5 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $5 + local.get $1 + i32.const 2 + i32.shl call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add @@ -4230,11 +4223,11 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 i32) - (local $12 i32) + (local $11 f64) + (local $12 f32) (local $13 i32) - (local $14 f32) - (local $15 f64) + (local $14 i32) + (local $15 i32) (local $16 i32) (local $17 i32) global.get $~lib/memory/__stack_pointer @@ -4247,19 +4240,19 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i64.const 0 i64.store offset=8 - local.get $1 + local.get $2 i64.const 0 i64.store offset=16 - local.get $1 + local.get $2 i64.const 0 i64.store offset=24 - local.get $1 + local.get $2 i32.const 1056 i32.store i32.const 1056 @@ -4416,17 +4409,17 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.const 1312 i32.const 12 call $~lib/memory/memory.copy - local.get $1 + local.get $2 global.set $std/staticarray/arr3 global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 0 call $~lib/staticarray/StaticArray#__get i32.const 5 @@ -4441,9 +4434,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 6 @@ -4458,9 +4451,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 2 call $~lib/staticarray/StaticArray#__get i32.const 7 @@ -4475,9 +4468,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 20 i32.sub i32.load offset=16 @@ -4495,16 +4488,16 @@ end global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 8 call $~lib/staticarray/StaticArray#__set global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 8 @@ -4520,17 +4513,17 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.const 1312 i32.const 12 call $~lib/memory/memory.copy - local.get $1 + local.get $2 global.set $std/staticarray/arr3 global.get $~lib/memory/__stack_pointer global.get $std/staticarray/arr3 - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 6 @@ -4547,39 +4540,39 @@ i32.const 8 i32.const 5 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $3 i32.store offset=4 - local.get $2 + local.get $3 call $std/staticarray/Ref#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if + local.get $3 local.get $2 - local.get $1 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 + local.get $3 call $std/staticarray/Ref#constructor - local.tee $1 + local.tee $2 i32.store offset=4 - local.get $1 + local.get $2 if + local.get $3 local.get $2 - local.get $1 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 + local.get $3 global.set $std/staticarray/arr4 i32.const 0 global.set $std/staticarray/arr3 i32.const 0 global.set $std/staticarray/arr4 global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -4588,25 +4581,25 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 12 call $~lib/memory/memory.fill global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.const 20 i32.sub i32.load offset=16 @@ -4623,17 +4616,17 @@ unreachable end loop $for-loop|0 - local.get $1 + local.get $2 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.get $0 + local.get $1 i32.gt_s if + local.get $2 local.get $1 - local.get $0 call $~lib/staticarray/StaticArray#__get if i32.const 0 @@ -4643,10 +4636,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -4679,8 +4672,6 @@ call $~lib/builtins/abort unreachable end - i32.const 0 - local.set $0 loop $for-loop|1 local.get $2 i32.load offset=12 @@ -4854,7 +4845,7 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $for-loop|2 local.get $4 i32.const 20 @@ -4862,25 +4853,25 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.get $0 + local.get $1 i32.gt_s if local.get $4 - local.get $0 + local.get $1 call $~lib/staticarray/StaticArray<~lib/string/String>#__get local.set $2 global.get $~lib/memory/__stack_pointer local.get $2 i32.store local.get $3 - local.get $0 + local.get $1 call $~lib/staticarray/StaticArray<~lib/string/String>#__get - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=12 local.get $2 - local.get $1 + local.get $0 call $~lib/string/String.__eq i32.eqz if @@ -4891,10 +4882,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|2 end end @@ -5346,11 +5337,11 @@ local.get $2 i32.add f64.load - local.tee $15 + local.tee $11 f64.const nan:0x8000000000000 f64.eq - local.get $15 - local.get $15 + local.get $11 + local.get $11 f64.ne i32.or br_if $__inlined_func$~lib/staticarray/StaticArray#includes @@ -5412,11 +5403,11 @@ local.get $2 i32.add f32.load - local.tee $14 + local.tee $12 f32.const nan:0x400000 f32.eq - local.get $14 - local.get $14 + local.get $12 + local.get $12 f32.ne i32.or br_if $__inlined_func$~lib/staticarray/StaticArray#includes @@ -5740,15 +5731,14 @@ i32.const 1 global.set $~argumentsLength local.get $2 - local.tee $1 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $4 + local.set $3 i32.const -1 - local.set $0 + local.set $1 block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf local.get $2 i32.const 20 @@ -5756,50 +5746,50 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.tee $3 + local.tee $0 i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf + local.get $0 local.get $3 - local.get $4 i32.add - local.get $3 + local.get $0 i32.const 1 i32.sub - local.get $4 local.get $3 - local.get $4 + local.get $0 + local.get $3 i32.le_s select - local.get $4 + local.get $3 i32.const 0 i32.lt_s select - local.set $0 + local.set $1 loop $while-continue|012 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|012 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -5812,61 +5802,61 @@ end i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $2 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $4 - local.set $3 - i32.const -1 + local.tee $3 local.set $0 + i32.const -1 + local.set $1 block $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf17 - local.get $4 + local.get $3 i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf17 + local.get $0 local.get $3 - local.get $4 i32.add - local.get $4 + local.get $3 i32.const 1 i32.sub + local.get $0 + local.get $0 local.get $3 - local.get $3 - local.get $4 i32.ge_s select - local.get $3 + local.get $0 i32.const 0 i32.lt_s select - local.set $0 + local.set $1 loop $while-continue|018 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 7 i32.eq br_if $__inlined_func$~lib/staticarray/StaticArray#lastIndexOf17 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|018 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -6420,54 +6410,54 @@ i32.const 20 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $4 i32.const 3168 i32.const 20 call $~lib/memory/memory.copy - local.get $0 + local.get $4 i32.store offset=16 i32.const 0 - local.get $0 + local.get $4 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $4 - local.get $4 - select local.tee $3 + local.get $3 + select + local.tee $2 i32.const 2 i32.shl - local.get $0 + local.get $4 i32.add i32.const 3 - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.const 3 i32.gt_u select - local.tee $1 + local.tee $0 i32.const 2 i32.shl - local.get $0 - i32.add - local.get $4 - local.get $1 - i32.sub - local.tee $2 local.get $4 + i32.add local.get $3 + local.get $0 i32.sub local.tee $1 - local.get $1 + local.get $3 local.get $2 + i32.sub + local.tee $0 + local.get $0 + local.get $1 i32.gt_s select i32.const 2 i32.shl call $~lib/memory/memory.copy - local.get $0 + local.get $4 i32.const 0 call $~lib/staticarray/StaticArray#__get i32.const 4 @@ -6480,7 +6470,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $4 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 5 @@ -6493,7 +6483,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $4 i32.const 2 call $~lib/staticarray/StaticArray#__get i32.const 3 @@ -6506,7 +6496,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $4 i32.const 3 call $~lib/staticarray/StaticArray#__get i32.const 4 @@ -6519,7 +6509,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $4 i32.const 4 call $~lib/staticarray/StaticArray#__get i32.const 5 @@ -6536,21 +6526,19 @@ i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $7 i32.const 3216 i32.const 12 call $~lib/memory/memory.copy - local.get $3 + local.get $7 i32.store offset=16 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $6 i32.const 3248 i32.store offset=12 - local.get $3 - local.set $2 i32.const 0 local.set $0 - local.get $8 + local.get $6 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -6563,42 +6551,42 @@ i32.const 0 i32.store local.get $1 - local.get $2 + local.get $7 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $7 + local.tee $5 i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $6 + local.tee $4 i32.store - local.get $6 + local.get $4 i32.load offset=4 - local.set $5 + local.set $3 loop $for-loop|028 local.get $0 - local.get $7 + local.get $5 i32.lt_s if - local.get $2 + local.get $7 local.get $0 i32.const 2 i32.shl - local.tee $4 + local.tee $2 i32.add i32.load local.set $1 i32.const 3 global.set $~argumentsLength - local.get $4 - local.get $5 + local.get $2 + local.get $3 i32.add local.get $1 local.get $0 - local.get $2 + local.get $7 i32.const 3248 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -6614,10 +6602,10 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 local.get $6 + local.get $4 i32.store offset=4 - local.get $6 + local.get $4 i32.const 0 call $~lib/array/Array#__get i32.const 2 @@ -6630,7 +6618,7 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $4 i32.const 1 call $~lib/array/Array#__get i32.const 3 @@ -6643,7 +6631,7 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $4 i32.const 2 call $~lib/array/Array#__get i32.const 4 @@ -6661,28 +6649,28 @@ i32.store offset=12 i32.const 0 local.set $0 - local.get $2 + local.get $7 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $4 + local.set $2 loop $for-loop|060 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $7 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $0 - local.get $2 + local.get $7 i32.const 3280 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) @@ -6705,10 +6693,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $9 + local.tee $17 i32.const 3312 i32.store offset=12 - local.get $9 + local.get $17 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -6725,9 +6713,9 @@ i32.const 6 i32.const 0 call $~lib/rt/__newArray - local.tee $8 + local.tee $6 i32.store - local.get $2 + local.get $7 i32.const 20 i32.sub i32.load offset=16 @@ -6735,41 +6723,41 @@ i32.shr_u local.set $13 loop $for-loop|029 + local.get $9 local.get $13 - local.get $17 - i32.gt_s + i32.lt_s if - local.get $17 + local.get $9 i32.const 2 i32.shl - local.get $2 + local.get $7 i32.add i32.load - local.set $7 + local.set $5 i32.const 3 global.set $~argumentsLength + local.get $5 + local.get $9 local.get $7 - local.get $17 - local.get $2 i32.const 3312 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $8 + local.get $6 i32.load offset=12 - local.tee $12 + local.tee $14 i32.const 1 i32.add - local.tee $11 - local.tee $4 - local.get $8 + local.tee $15 + local.tee $2 + local.get $6 i32.load offset=8 - local.tee $6 + local.tee $4 i32.const 2 i32.shr_u i32.gt_u if - local.get $4 + local.get $2 i32.const 268435455 i32.gt_u if @@ -6781,7 +6769,7 @@ unreachable end block $__inlined_func$~lib/rt/itcms/__renew - local.get $6 + local.get $4 i32.const 1 i32.shl local.tee $0 @@ -6791,9 +6779,9 @@ i32.lt_u select local.tee $1 - local.get $4 + local.get $2 i32.const 8 - local.get $4 + local.get $2 i32.const 8 i32.gt_u select @@ -6804,15 +6792,15 @@ local.get $1 i32.lt_u select - local.tee $5 - local.tee $4 - local.get $8 + local.tee $3 + local.tee $2 + local.get $6 i32.load - local.tee $10 + local.tee $16 local.tee $1 i32.const 20 i32.sub - local.tee $16 + local.tee $10 i32.load i32.const -4 i32.and @@ -6820,74 +6808,74 @@ i32.sub i32.le_u if - local.get $16 - local.get $4 + local.get $10 + local.get $2 i32.store offset=16 local.get $1 local.set $0 br $__inlined_func$~lib/rt/itcms/__renew end - local.get $4 - local.get $16 + local.get $2 + local.get $10 i32.load offset=12 call $~lib/rt/itcms/__new local.tee $0 local.get $1 - local.get $4 - local.get $16 + local.get $2 + local.get $10 i32.load offset=16 local.tee $1 local.get $1 - local.get $4 + local.get $2 i32.gt_u select call $~lib/memory/memory.copy end local.get $0 - local.get $6 + local.get $4 i32.add - local.get $5 - local.get $6 + local.get $3 + local.get $4 i32.sub call $~lib/memory/memory.fill local.get $0 - local.get $10 + local.get $16 i32.ne if - local.get $8 + local.get $6 local.get $0 i32.store - local.get $8 + local.get $6 local.get $0 i32.store offset=4 local.get $0 if - local.get $8 + local.get $6 local.get $0 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end end - local.get $8 - local.get $5 + local.get $6 + local.get $3 i32.store offset=8 end - local.get $8 + local.get $6 i32.load offset=4 - local.get $12 + local.get $14 i32.const 2 i32.shl i32.add - local.get $7 + local.get $5 i32.store - local.get $8 - local.get $11 + local.get $6 + local.get $15 i32.store offset=12 end - local.get $17 + local.get $9 i32.const 1 i32.add - local.set $17 + local.set $9 br $for-loop|029 end end @@ -6895,10 +6883,10 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 - local.get $8 + local.get $17 + local.get $6 i32.store offset=24 - local.get $8 + local.get $6 i32.load offset=12 i32.const 2 i32.ne @@ -6910,7 +6898,7 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $6 i32.const 0 call $~lib/array/Array#__get i32.const 2 @@ -6923,7 +6911,7 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $6 i32.const 1 call $~lib/array/Array#__get i32.const 3 @@ -6941,37 +6929,35 @@ i32.store offset=12 i32.const 0 local.set $0 - i32.const 0 - local.set $5 - local.get $2 + local.get $7 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $4 + local.set $2 loop $for-loop|064 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $7 i32.add i32.load local.set $1 i32.const 4 global.set $~argumentsLength - local.get $5 + local.get $8 local.get $1 local.get $0 - local.get $2 + local.get $7 i32.const 3344 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $5 + local.set $8 local.get $0 i32.const 1 i32.add @@ -6979,7 +6965,7 @@ br $for-loop|064 end end - local.get $5 + local.get $8 i32.const 6 i32.ne if @@ -6994,8 +6980,8 @@ i32.const 3376 i32.store offset=12 i32.const 0 - local.set $5 - local.get $2 + local.set $8 + local.get $7 i32.const 20 i32.sub i32.load offset=16 @@ -7012,20 +6998,20 @@ local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $7 i32.add i32.load local.set $1 i32.const 4 global.set $~argumentsLength - local.get $5 + local.get $8 local.get $1 local.get $0 - local.get $2 + local.get $7 i32.const 3376 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $5 + local.set $8 local.get $0 i32.const 1 i32.sub @@ -7033,7 +7019,7 @@ br $for-loop|066 end end - local.get $5 + local.get $8 i32.const 6 i32.ne if @@ -7050,22 +7036,22 @@ block $__inlined_func$~lib/staticarray/StaticArray#some (result i32) i32.const 0 local.set $0 - local.get $2 + local.get $7 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $4 + local.set $2 loop $for-loop|068 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $7 i32.add i32.load local.set $1 @@ -7074,7 +7060,7 @@ i32.const 1 local.get $1 local.get $0 - local.get $2 + local.get $7 i32.const 3408 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -7104,22 +7090,22 @@ block $__inlined_func$~lib/staticarray/StaticArray#some69 (result i32) i32.const 0 local.set $0 - local.get $2 + local.get $7 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $4 + local.set $2 loop $for-loop|071 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $7 i32.add i32.load local.set $1 @@ -7128,7 +7114,7 @@ i32.const 1 local.get $1 local.get $0 - local.get $2 + local.get $7 i32.const 3440 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -7157,22 +7143,22 @@ block $__inlined_func$~lib/staticarray/StaticArray#every (result i32) i32.const 0 local.set $0 - local.get $2 + local.get $7 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $4 + local.set $2 loop $for-loop|073 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $7 i32.add i32.load local.set $1 @@ -7181,7 +7167,7 @@ i32.const 0 local.get $1 local.get $0 - local.get $2 + local.get $7 i32.const 3472 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -7212,22 +7198,22 @@ block $__inlined_func$~lib/staticarray/StaticArray#every74 (result i32) i32.const 0 local.set $0 - local.get $2 + local.get $7 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $4 + local.set $2 loop $for-loop|076 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $7 i32.add i32.load local.set $1 @@ -7236,7 +7222,7 @@ i32.const 0 local.get $1 local.get $0 - local.get $2 + local.get $7 i32.const 3504 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -7265,29 +7251,29 @@ i32.store offset=12 i32.const 0 local.set $0 - local.get $2 + local.get $7 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $4 + local.set $2 block $__inlined_func$~lib/staticarray/StaticArray#findIndex loop $for-loop|078 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $7 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $0 - local.get $2 + local.get $7 i32.const 3536 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -7318,29 +7304,29 @@ i32.store offset=12 i32.const 0 local.set $0 - local.get $2 + local.get $7 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.set $4 + local.set $2 block $__inlined_func$~lib/staticarray/StaticArray#findIndex79 loop $for-loop|081 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $7 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $0 - local.get $2 + local.get $7 i32.const 3568 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -7369,7 +7355,7 @@ global.get $~lib/memory/__stack_pointer i32.const 3600 i32.store offset=12 - local.get $3 + local.get $7 i32.const 20 i32.sub i32.load offset=16 @@ -7387,13 +7373,13 @@ local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $7 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $0 - local.get $2 + local.get $7 i32.const 3600 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -7422,7 +7408,7 @@ global.get $~lib/memory/__stack_pointer i32.const 3632 i32.store offset=12 - local.get $3 + local.get $7 i32.const 20 i32.sub i32.load offset=16 @@ -7430,23 +7416,24 @@ i32.shr_u i32.const 1 i32.sub - local.set $0 + local.set $1 block $__inlined_func$~lib/staticarray/StaticArray#findLastIndex84 loop $for-loop|086 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $3 + local.get $7 i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $0 - local.get $3 + local.get $1 + local.tee $0 + local.get $7 i32.const 3632 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -7454,7 +7441,7 @@ local.get $0 i32.const 1 i32.sub - local.set $0 + local.set $1 br $for-loop|086 end end @@ -7753,21 +7740,21 @@ i32.load offset=12 i32.const 2 i32.shl - local.tee $1 + local.tee $2 i32.const 3 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 local.get $0 i32.load offset=4 - local.get $1 + local.get $2 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 ) (func $~lib/staticarray/StaticArray.concat (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -7852,7 +7839,6 @@ (func $~lib/staticarray/StaticArray.slice<~lib/string/String> (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) - (local $5 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -7899,7 +7885,7 @@ i32.lt_s select end - local.set $5 + local.set $1 global.get $~lib/memory/__stack_pointer local.get $2 i32.const 0 @@ -7908,9 +7894,9 @@ local.get $2 local.get $4 i32.add - local.tee $1 + local.tee $2 i32.const 0 - local.get $1 + local.get $2 i32.const 0 i32.gt_s select @@ -7922,45 +7908,45 @@ i32.lt_s select end - local.get $5 + local.get $1 i32.sub - local.tee $1 + local.tee $2 i32.const 0 - local.get $1 + local.get $2 i32.const 0 i32.gt_s select i32.const 2 i32.shl - local.tee $1 + local.tee $2 i32.const 8 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $4 i32.store - local.get $5 + local.get $1 i32.const 2 i32.shl local.get $0 i32.add - local.set $4 + local.set $0 loop $while-continue|0 - local.get $1 + local.get $2 local.get $3 i32.gt_u if - local.get $2 local.get $3 + local.get $4 i32.add + local.get $0 local.get $3 - local.get $4 i32.add i32.load - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 if - local.get $2 - local.get $0 + local.get $4 + local.get $1 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -7975,7 +7961,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $4 ) (func $~lib/staticarray/StaticArray<~lib/string/String>#__get (param $0 i32) (param $1 i32) (result i32) global.get $~lib/memory/__stack_pointer @@ -8044,6 +8030,7 @@ (local $5 i32) (local $6 i32) (local $7 i32) + (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -8068,7 +8055,7 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.tee $2 + local.tee $5 local.get $1 i32.load offset=12 i32.const 0 @@ -8097,7 +8084,7 @@ local.get $7 i32.load offset=4 local.set $4 - local.get $2 + local.get $5 i32.const 2 i32.shl local.set $5 @@ -8113,12 +8100,12 @@ local.get $3 i32.add i32.load - local.tee $2 + local.tee $8 i32.store - local.get $2 + local.get $8 if local.get $7 - local.get $2 + local.get $8 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -8132,41 +8119,39 @@ local.get $4 local.get $5 i32.add - local.set $2 + local.set $0 local.get $1 i32.load offset=4 - local.set $3 + local.set $1 local.get $6 i32.const 2 i32.shl - local.set $4 - i32.const 0 - local.set $1 + local.set $3 loop $for-loop|1 - local.get $1 - local.get $4 + local.get $2 + local.get $3 i32.lt_u if - local.get $1 + local.get $0 local.get $2 i32.add local.get $1 - local.get $3 + local.get $2 i32.add i32.load - local.tee $0 + local.tee $4 i32.store - local.get $0 + local.get $4 if local.get $7 - local.get $0 + local.get $4 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $1 + local.get $2 i32.const 4 i32.add - local.set $1 + local.set $2 br $for-loop|1 end end @@ -8220,16 +8205,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $0 i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $0 local.get $1 local.get $2 select @@ -8238,7 +8223,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $3 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/string-casemapping.optimized.wat b/tests/compiler/std/string-casemapping.optimized.wat index 8622063e63..d18a1d1765 100644 --- a/tests/compiler/std/string-casemapping.optimized.wat +++ b/tests/compiler/std/string-casemapping.optimized.wat @@ -954,9 +954,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -1003,6 +1000,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1580,18 +1580,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $4 + local.get $0 + i32.const 16 + i32.add local.tee $3 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1602,13 +1601,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $3 i32.const 19 i32.add i32.const -16 @@ -1616,32 +1615,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $5 i32.add else - local.get $4 + local.get $5 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1657,16 +1656,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $3 local.get $2 - local.get $5 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1674,7 +1673,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1682,8 +1681,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1700,7 +1699,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $5 i32.lt_u if i32.const 0 @@ -1710,13 +1709,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $4 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1729,40 +1728,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $4 + local.get $5 i32.sub - local.tee $6 + local.tee $3 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $4 + local.get $5 i32.or i32.store - local.get $4 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 - local.get $6 + local.tee $5 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -2085,7 +2084,7 @@ local.get $2 i32.const 1 i32.shr_u - local.tee $6 + local.tee $5 local.get $3 i32.add i32.const 1 @@ -2093,11 +2092,11 @@ i32.const 6596 i32.add i32.load8_u - local.tee $5 + local.tee $6 i32.eq if (result i32) local.get $3 - local.get $6 + local.get $5 i32.add i32.const 1 i32.shl @@ -2142,17 +2141,17 @@ return else local.get $4 - local.get $5 + local.get $6 i32.lt_u if (result i32) - local.get $6 + local.get $5 else local.get $3 - local.get $6 + local.get $5 i32.add local.set $3 local.get $2 - local.get $6 + local.get $5 i32.sub end end @@ -2623,95 +2622,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -2742,39 +2741,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 @@ -3163,14 +3162,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -3474,7 +3473,7 @@ local.get $2 i32.const 4 i32.sub - local.tee $4 + local.tee $2 i32.const 1 i32.shl local.get $1 @@ -3488,10 +3487,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $5 + local.tee $4 i32.const 10000 i32.rem_u - local.tee $2 + local.tee $5 i32.const 100 i32.div_u i32.const 2 @@ -3499,7 +3498,7 @@ i32.const 19212 i32.add i64.load32_u - local.get $2 + local.get $5 i32.const 100 i32.rem_u i32.const 2 @@ -3511,7 +3510,7 @@ i64.shl i64.or i64.store - local.get $4 + local.get $2 i32.const 4 i32.sub local.tee $2 @@ -3519,7 +3518,7 @@ i32.shl local.get $1 i32.add - local.get $5 + local.get $4 i32.const 10000 i32.div_u local.tee $4 @@ -4002,13 +4001,13 @@ global.set $~lib/memory/__stack_pointer ) (func $start:std/string-casemapping - (local $0 i32) + (local $0 i64) (local $1 i32) (local $2 i64) - (local $3 i32) + (local $3 i64) (local $4 i64) - (local $5 i64) - (local $6 i64) + (local $5 i32) + (local $6 i32) (local $7 i32) (local $8 i32) (local $9 i64) @@ -4028,16 +4027,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i64.const 0 i64.store offset=16 - local.get $0 + local.get $1 i32.const 0 i32.store offset=24 memory.size @@ -4072,19 +4071,19 @@ i32.store i32.const 1376 global.set $~lib/rt/itcms/fromSpace - local.get $0 + local.get $1 i32.const 1056 i32.store offset=8 i32.const 1056 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 1056 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1056 call $~lib/string/String.__eq i32.eqz @@ -4101,14 +4100,14 @@ i32.store offset=8 i32.const 1056 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 1056 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1056 call $~lib/string/String.__eq i32.eqz @@ -4125,14 +4124,14 @@ i32.store offset=8 i32.const 11808 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 11856 i32.store offset=4 - local.get $0 + local.get $1 i32.const 11856 call $~lib/string/String.__eq i32.eqz @@ -4149,14 +4148,14 @@ i32.store offset=8 i32.const 11904 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 11952 i32.store offset=4 - local.get $0 + local.get $1 i32.const 11952 call $~lib/string/String.__eq i32.eqz @@ -4173,14 +4172,14 @@ i32.store offset=8 i32.const 12000 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 12096 i32.store offset=4 - local.get $0 + local.get $1 i32.const 12096 call $~lib/string/String.__eq i32.eqz @@ -4197,14 +4196,14 @@ i32.store offset=8 i32.const 12096 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 12192 i32.store offset=4 - local.get $0 + local.get $1 i32.const 12192 call $~lib/string/String.__eq i32.eqz @@ -4221,14 +4220,14 @@ i32.store offset=8 i32.const 12288 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 12352 i32.store offset=4 - local.get $0 + local.get $1 i32.const 12352 call $~lib/string/String.__eq i32.eqz @@ -4245,14 +4244,14 @@ i32.store offset=8 i32.const 12352 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 12416 i32.store offset=4 - local.get $0 + local.get $1 i32.const 12416 call $~lib/string/String.__eq i32.eqz @@ -4269,14 +4268,14 @@ i32.store offset=8 i32.const 12480 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 12576 i32.store offset=4 - local.get $0 + local.get $1 i32.const 12576 call $~lib/string/String.__eq i32.eqz @@ -4293,14 +4292,14 @@ i32.store offset=8 i32.const 12576 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 12672 i32.store offset=4 - local.get $0 + local.get $1 i32.const 12672 call $~lib/string/String.__eq i32.eqz @@ -4317,14 +4316,14 @@ i32.store offset=8 i32.const 12768 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 12864 i32.store offset=4 - local.get $0 + local.get $1 i32.const 12864 call $~lib/string/String.__eq i32.eqz @@ -4341,14 +4340,14 @@ i32.store offset=8 i32.const 12864 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 12960 i32.store offset=4 - local.get $0 + local.get $1 i32.const 12960 call $~lib/string/String.__eq i32.eqz @@ -4365,14 +4364,14 @@ i32.store offset=8 i32.const 13056 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 13136 i32.store offset=4 - local.get $0 + local.get $1 i32.const 13136 call $~lib/string/String.__eq i32.eqz @@ -4389,14 +4388,14 @@ i32.store offset=8 i32.const 13216 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 13296 i32.store offset=4 - local.get $0 + local.get $1 i32.const 13296 call $~lib/string/String.__eq i32.eqz @@ -4413,14 +4412,14 @@ i32.store offset=8 i32.const 13376 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 13440 i32.store offset=4 - local.get $0 + local.get $1 i32.const 13440 call $~lib/string/String.__eq i32.eqz @@ -4437,14 +4436,14 @@ i32.store offset=8 i32.const 13504 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 13584 i32.store offset=4 - local.get $0 + local.get $1 i32.const 13584 call $~lib/string/String.__eq i32.eqz @@ -4461,14 +4460,14 @@ i32.store offset=8 i32.const 13664 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 13744 i32.store offset=4 - local.get $0 + local.get $1 i32.const 13744 call $~lib/string/String.__eq i32.eqz @@ -4485,14 +4484,14 @@ i32.store offset=8 i32.const 13824 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 13888 i32.store offset=4 - local.get $0 + local.get $1 i32.const 13888 call $~lib/string/String.__eq i32.eqz @@ -4509,14 +4508,14 @@ i32.store offset=8 i32.const 13952 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 14032 i32.store offset=4 - local.get $0 + local.get $1 i32.const 14032 call $~lib/string/String.__eq i32.eqz @@ -4533,14 +4532,14 @@ i32.store offset=8 i32.const 14112 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 14192 i32.store offset=4 - local.get $0 + local.get $1 i32.const 14192 call $~lib/string/String.__eq i32.eqz @@ -4557,14 +4556,14 @@ i32.store offset=8 i32.const 14272 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 14432 i32.store offset=4 - local.get $0 + local.get $1 i32.const 14432 call $~lib/string/String.__eq i32.eqz @@ -4581,14 +4580,14 @@ i32.store offset=8 i32.const 14272 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 14592 i32.store offset=4 - local.get $0 + local.get $1 i32.const 14592 call $~lib/string/String.__eq i32.eqz @@ -4605,14 +4604,14 @@ i32.store offset=8 i32.const 14752 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 14784 i32.store offset=4 - local.get $0 + local.get $1 i32.const 14784 call $~lib/string/String.__eq i32.eqz @@ -4629,14 +4628,14 @@ i32.store offset=8 i32.const 14816 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 14848 i32.store offset=4 - local.get $0 + local.get $1 i32.const 14848 call $~lib/string/String.__eq i32.eqz @@ -4653,14 +4652,14 @@ i32.store offset=8 i32.const 14880 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 15088 i32.store offset=4 - local.get $0 + local.get $1 i32.const 15088 call $~lib/string/String.__eq i32.eqz @@ -4677,20 +4676,20 @@ i32.store offset=12 i32.const 14752 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $0 + local.get $1 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 15296 i32.store offset=4 - local.get $0 + local.get $1 i32.const 15296 call $~lib/string/String.__eq i32.eqz @@ -4707,20 +4706,20 @@ i32.store offset=12 i32.const 15328 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $0 + local.get $1 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 15360 i32.store offset=4 - local.get $0 + local.get $1 i32.const 15360 call $~lib/string/String.__eq i32.eqz @@ -4737,20 +4736,20 @@ i32.store offset=12 i32.const 15392 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $0 + local.get $1 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 15392 i32.store offset=4 - local.get $0 + local.get $1 i32.const 15392 call $~lib/string/String.__eq i32.eqz @@ -4764,20 +4763,20 @@ end i32.const 65536 call $~lib/string/String.fromCodePoint - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $0 + local.get $1 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 15648 i32.store offset=4 - local.get $0 + local.get $1 i32.const 15648 call $~lib/string/String.__eq i32.eqz @@ -4791,20 +4790,20 @@ end i32.const 65536 call $~lib/string/String.fromCodePoint - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 - local.get $0 + local.get $1 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 15648 i32.store offset=4 - local.get $0 + local.get $1 i32.const 15648 call $~lib/string/String.__eq i32.eqz @@ -4821,14 +4820,14 @@ i32.store offset=8 i32.const 15680 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 15712 i32.store offset=4 - local.get $0 + local.get $1 i32.const 15712 call $~lib/string/String.__eq i32.eqz @@ -4845,14 +4844,14 @@ i32.store offset=8 i32.const 15744 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 15776 i32.store offset=4 - local.get $0 + local.get $1 i32.const 15776 call $~lib/string/String.__eq i32.eqz @@ -4869,14 +4868,14 @@ i32.store offset=8 i32.const 15808 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 15840 i32.store offset=4 - local.get $0 + local.get $1 i32.const 15840 call $~lib/string/String.__eq i32.eqz @@ -4893,14 +4892,14 @@ i32.store offset=8 i32.const 15872 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 15904 i32.store offset=4 - local.get $0 + local.get $1 i32.const 15904 call $~lib/string/String.__eq i32.eqz @@ -4917,14 +4916,14 @@ i32.store offset=8 i32.const 15936 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 15968 i32.store offset=4 - local.get $0 + local.get $1 i32.const 15968 call $~lib/string/String.__eq i32.eqz @@ -4941,14 +4940,14 @@ i32.store offset=8 i32.const 16000 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16032 i32.store offset=4 - local.get $0 + local.get $1 i32.const 16032 call $~lib/string/String.__eq i32.eqz @@ -4965,14 +4964,14 @@ i32.store offset=8 i32.const 16064 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16096 i32.store offset=4 - local.get $0 + local.get $1 i32.const 16096 call $~lib/string/String.__eq i32.eqz @@ -4989,14 +4988,14 @@ i32.store offset=8 i32.const 16128 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16160 i32.store offset=4 - local.get $0 + local.get $1 i32.const 16160 call $~lib/string/String.__eq i32.eqz @@ -5013,14 +5012,14 @@ i32.store offset=8 i32.const 16192 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16224 i32.store offset=4 - local.get $0 + local.get $1 i32.const 16224 call $~lib/string/String.__eq i32.eqz @@ -5037,14 +5036,14 @@ i32.store offset=8 i32.const 16256 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16288 i32.store offset=4 - local.get $0 + local.get $1 i32.const 16288 call $~lib/string/String.__eq i32.eqz @@ -5061,14 +5060,14 @@ i32.store offset=8 i32.const 16320 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16352 i32.store offset=4 - local.get $0 + local.get $1 i32.const 16352 call $~lib/string/String.__eq i32.eqz @@ -5085,14 +5084,14 @@ i32.store offset=8 i32.const 16384 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16416 i32.store offset=4 - local.get $0 + local.get $1 i32.const 16416 call $~lib/string/String.__eq i32.eqz @@ -5109,14 +5108,14 @@ i32.store offset=8 i32.const 16448 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16480 i32.store offset=4 - local.get $0 + local.get $1 i32.const 16480 call $~lib/string/String.__eq i32.eqz @@ -5133,14 +5132,14 @@ i32.store offset=8 i32.const 16512 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16544 i32.store offset=4 - local.get $0 + local.get $1 i32.const 16544 call $~lib/string/String.__eq i32.eqz @@ -5157,14 +5156,14 @@ i32.store offset=8 i32.const 16576 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16608 i32.store offset=4 - local.get $0 + local.get $1 i32.const 16608 call $~lib/string/String.__eq i32.eqz @@ -5181,14 +5180,14 @@ i32.store offset=8 i32.const 16640 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16672 i32.store offset=4 - local.get $0 + local.get $1 i32.const 16672 call $~lib/string/String.__eq i32.eqz @@ -5205,14 +5204,14 @@ i32.store offset=8 i32.const 16704 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16736 i32.store offset=4 - local.get $0 + local.get $1 i32.const 16736 call $~lib/string/String.__eq i32.eqz @@ -5229,14 +5228,14 @@ i32.store offset=8 i32.const 16768 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16800 i32.store offset=4 - local.get $0 + local.get $1 i32.const 16800 call $~lib/string/String.__eq i32.eqz @@ -5253,14 +5252,14 @@ i32.store offset=8 i32.const 16832 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16864 i32.store offset=4 - local.get $0 + local.get $1 i32.const 16864 call $~lib/string/String.__eq i32.eqz @@ -5277,14 +5276,14 @@ i32.store offset=8 i32.const 16896 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16928 i32.store offset=4 - local.get $0 + local.get $1 i32.const 16928 call $~lib/string/String.__eq i32.eqz @@ -5301,14 +5300,14 @@ i32.store offset=8 i32.const 16960 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16992 i32.store offset=4 - local.get $0 + local.get $1 i32.const 16992 call $~lib/string/String.__eq i32.eqz @@ -5325,14 +5324,14 @@ i32.store offset=8 i32.const 17024 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17056 i32.store offset=4 - local.get $0 + local.get $1 i32.const 17056 call $~lib/string/String.__eq i32.eqz @@ -5349,14 +5348,14 @@ i32.store offset=8 i32.const 17088 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17120 i32.store offset=4 - local.get $0 + local.get $1 i32.const 17120 call $~lib/string/String.__eq i32.eqz @@ -5373,14 +5372,14 @@ i32.store offset=8 i32.const 17152 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17184 i32.store offset=4 - local.get $0 + local.get $1 i32.const 17184 call $~lib/string/String.__eq i32.eqz @@ -5397,14 +5396,14 @@ i32.store offset=8 i32.const 17216 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17248 i32.store offset=4 - local.get $0 + local.get $1 i32.const 17248 call $~lib/string/String.__eq i32.eqz @@ -5421,14 +5420,14 @@ i32.store offset=8 i32.const 17280 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 16352 i32.store offset=4 - local.get $0 + local.get $1 i32.const 16352 call $~lib/string/String.__eq i32.eqz @@ -5445,14 +5444,14 @@ i32.store offset=8 i32.const 17312 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17344 i32.store offset=4 - local.get $0 + local.get $1 i32.const 17344 call $~lib/string/String.__eq i32.eqz @@ -5469,14 +5468,14 @@ i32.store offset=8 i32.const 17376 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17408 i32.store offset=4 - local.get $0 + local.get $1 i32.const 17408 call $~lib/string/String.__eq i32.eqz @@ -5493,14 +5492,14 @@ i32.store offset=8 i32.const 17440 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17472 i32.store offset=4 - local.get $0 + local.get $1 i32.const 17472 call $~lib/string/String.__eq i32.eqz @@ -5517,14 +5516,14 @@ i32.store offset=8 i32.const 17504 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17536 i32.store offset=4 - local.get $0 + local.get $1 i32.const 17536 call $~lib/string/String.__eq i32.eqz @@ -5541,14 +5540,14 @@ i32.store offset=8 i32.const 17568 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17600 i32.store offset=4 - local.get $0 + local.get $1 i32.const 17600 call $~lib/string/String.__eq i32.eqz @@ -5565,14 +5564,14 @@ i32.store offset=8 i32.const 17632 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17664 i32.store offset=4 - local.get $0 + local.get $1 i32.const 17664 call $~lib/string/String.__eq i32.eqz @@ -5589,14 +5588,14 @@ i32.store offset=8 i32.const 17696 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17728 i32.store offset=4 - local.get $0 + local.get $1 i32.const 17728 call $~lib/string/String.__eq i32.eqz @@ -5613,14 +5612,14 @@ i32.store offset=8 i32.const 17760 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17792 i32.store offset=4 - local.get $0 + local.get $1 i32.const 17792 call $~lib/string/String.__eq i32.eqz @@ -5637,14 +5636,14 @@ i32.store offset=8 i32.const 17824 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17856 i32.store offset=4 - local.get $0 + local.get $1 i32.const 17856 call $~lib/string/String.__eq i32.eqz @@ -5661,14 +5660,14 @@ i32.store offset=8 i32.const 17888 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17920 i32.store offset=4 - local.get $0 + local.get $1 i32.const 17920 call $~lib/string/String.__eq i32.eqz @@ -5685,14 +5684,14 @@ i32.store offset=8 i32.const 17952 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 17984 i32.store offset=4 - local.get $0 + local.get $1 i32.const 17984 call $~lib/string/String.__eq i32.eqz @@ -5709,14 +5708,14 @@ i32.store offset=8 i32.const 18016 call $~lib/string/String#toLowerCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18048 i32.store offset=4 - local.get $0 + local.get $1 i32.const 18048 call $~lib/string/String.__eq i32.eqz @@ -5733,14 +5732,14 @@ i32.store offset=8 i32.const 18080 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18112 i32.store offset=4 - local.get $0 + local.get $1 i32.const 18112 call $~lib/string/String.__eq i32.eqz @@ -5757,14 +5756,14 @@ i32.store offset=8 i32.const 15328 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18144 i32.store offset=4 - local.get $0 + local.get $1 i32.const 18144 call $~lib/string/String.__eq i32.eqz @@ -5781,14 +5780,14 @@ i32.store offset=8 i32.const 18176 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18208 i32.store offset=4 - local.get $0 + local.get $1 i32.const 18208 call $~lib/string/String.__eq i32.eqz @@ -5805,14 +5804,14 @@ i32.store offset=8 i32.const 18240 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18272 i32.store offset=4 - local.get $0 + local.get $1 i32.const 18272 call $~lib/string/String.__eq i32.eqz @@ -5829,14 +5828,14 @@ i32.store offset=8 i32.const 18304 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18336 i32.store offset=4 - local.get $0 + local.get $1 i32.const 18336 call $~lib/string/String.__eq i32.eqz @@ -5853,14 +5852,14 @@ i32.store offset=8 i32.const 18368 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18400 i32.store offset=4 - local.get $0 + local.get $1 i32.const 18400 call $~lib/string/String.__eq i32.eqz @@ -5877,14 +5876,14 @@ i32.store offset=8 i32.const 18432 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18400 i32.store offset=4 - local.get $0 + local.get $1 i32.const 18400 call $~lib/string/String.__eq i32.eqz @@ -5901,14 +5900,14 @@ i32.store offset=8 i32.const 18464 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18496 i32.store offset=4 - local.get $0 + local.get $1 i32.const 18496 call $~lib/string/String.__eq i32.eqz @@ -5925,14 +5924,14 @@ i32.store offset=8 i32.const 18528 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18560 i32.store offset=4 - local.get $0 + local.get $1 i32.const 18560 call $~lib/string/String.__eq i32.eqz @@ -5949,14 +5948,14 @@ i32.store offset=8 i32.const 18592 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18624 i32.store offset=4 - local.get $0 + local.get $1 i32.const 18624 call $~lib/string/String.__eq i32.eqz @@ -5973,14 +5972,14 @@ i32.store offset=8 i32.const 18656 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18688 i32.store offset=4 - local.get $0 + local.get $1 i32.const 18688 call $~lib/string/String.__eq i32.eqz @@ -5997,14 +5996,14 @@ i32.store offset=8 i32.const 18720 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18752 i32.store offset=4 - local.get $0 + local.get $1 i32.const 18752 call $~lib/string/String.__eq i32.eqz @@ -6021,14 +6020,14 @@ i32.store offset=8 i32.const 18784 call $~lib/string/String#toUpperCase - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 18816 i32.store offset=4 - local.get $0 + local.get $1 i32.const 18816 call $~lib/string/String.__eq i32.eqz @@ -6041,19 +6040,19 @@ unreachable end loop $for-loop|0 - local.get $7 + local.get $5 i32.const 1114111 i32.le_s if global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $5 call $~lib/string/String.fromCodePoint local.tee $1 i32.store offset=16 global.get $~lib/memory/__stack_pointer local.get $1 call $~lib/string/String#toLowerCase - local.tee $0 + local.tee $6 i32.store offset=20 global.get $~lib/memory/__stack_pointer local.get $1 @@ -6061,46 +6060,44 @@ local.tee $1 i32.store offset=24 block $__inlined_func$~lib/string/String#codePointAt (result i32) - local.get $0 - local.set $3 i32.const -1 - local.get $0 + local.get $6 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $8 + local.tee $7 i32.eqz br_if $__inlined_func$~lib/string/String#codePointAt drop - local.get $8 + local.get $7 i32.const 1 i32.eq - local.get $3 + local.get $6 i32.load16_u - local.tee $8 + local.tee $7 i32.const 64512 i32.and i32.const 55296 i32.ne i32.or if - local.get $8 + local.get $7 br $__inlined_func$~lib/string/String#codePointAt end - local.get $8 - local.get $3 + local.get $7 + local.get $6 i32.load16_u offset=2 - local.tee $3 + local.tee $8 i32.const 64512 i32.and i32.const 56320 i32.ne br_if $__inlined_func$~lib/string/String#codePointAt drop - local.get $3 local.get $8 + local.get $7 i32.const 10 i32.shl i32.add @@ -6108,49 +6105,47 @@ i32.sub end i64.extend_i32_s - local.set $2 + local.set $0 block $__inlined_func$~lib/string/String#codePointAt6 (result i32) - local.get $0 - local.set $3 i32.const -1 - local.get $0 + local.get $6 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $8 + local.tee $7 i32.const 1 i32.le_u br_if $__inlined_func$~lib/string/String#codePointAt6 drop - local.get $8 + local.get $7 i32.const 2 i32.eq - local.get $3 + local.get $6 i32.load16_u offset=2 - local.tee $8 + local.tee $7 i32.const 64512 i32.and i32.const 55296 i32.ne i32.or if - local.get $8 + local.get $7 br $__inlined_func$~lib/string/String#codePointAt6 end - local.get $8 - local.get $3 + local.get $7 + local.get $6 i32.load16_u offset=4 - local.tee $3 + local.tee $8 i32.const 64512 i32.and i32.const 56320 i32.ne br_if $__inlined_func$~lib/string/String#codePointAt6 drop - local.get $3 local.get $8 + local.get $7 i32.const 10 i32.shl i32.add @@ -6158,57 +6153,57 @@ i32.sub end i64.extend_i32_s - local.tee $4 + local.tee $2 i64.const 0 i64.ge_s if - local.get $4 + local.get $2 i64.const 16 i64.shl - local.get $2 + local.get $0 i64.add - local.set $2 + local.set $0 end block $__inlined_func$~lib/string/String#codePointAt8 (result i32) i32.const -1 - local.get $0 + local.get $6 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $7 i32.const 2 i32.le_u br_if $__inlined_func$~lib/string/String#codePointAt8 drop - local.get $3 + local.get $7 i32.const 3 i32.eq - local.get $0 + local.get $6 i32.load16_u offset=4 - local.tee $3 + local.tee $7 i32.const 64512 i32.and i32.const 55296 i32.ne i32.or if - local.get $3 + local.get $7 br $__inlined_func$~lib/string/String#codePointAt8 end - local.get $3 - local.get $0 + local.get $7 + local.get $6 i32.load16_u offset=6 - local.tee $0 + local.tee $6 i32.const 64512 i32.and i32.const 56320 i32.ne br_if $__inlined_func$~lib/string/String#codePointAt8 drop - local.get $0 - local.get $3 + local.get $6 + local.get $7 i32.const 10 i32.shl i32.add @@ -6216,59 +6211,58 @@ i32.sub end i64.extend_i32_s - local.tee $4 + local.tee $2 i64.const 0 i64.ge_s if (result i64) - local.get $4 + local.get $2 i64.const 32 i64.shl - local.get $2 + local.get $0 i64.add else - local.get $2 + local.get $0 end - local.set $4 + local.set $2 block $__inlined_func$~lib/string/String#codePointAt10 (result i32) i32.const -1 local.get $1 - local.tee $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $6 i32.eqz br_if $__inlined_func$~lib/string/String#codePointAt10 drop - local.get $3 + local.get $6 i32.const 1 i32.eq - local.get $0 + local.get $1 i32.load16_u - local.tee $3 + local.tee $6 i32.const 64512 i32.and i32.const 55296 i32.ne i32.or if - local.get $3 + local.get $6 br $__inlined_func$~lib/string/String#codePointAt10 end - local.get $3 - local.get $0 + local.get $6 + local.get $1 i32.load16_u offset=2 - local.tee $0 + local.tee $7 i32.const 64512 i32.and i32.const 56320 i32.ne br_if $__inlined_func$~lib/string/String#codePointAt10 drop - local.get $0 - local.get $3 + local.get $7 + local.get $6 i32.const 10 i32.shl i32.add @@ -6276,48 +6270,47 @@ i32.sub end i64.extend_i32_s - local.set $2 + local.set $0 block $__inlined_func$~lib/string/String#codePointAt12 (result i32) i32.const -1 local.get $1 - local.tee $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $6 i32.const 1 i32.le_u br_if $__inlined_func$~lib/string/String#codePointAt12 drop - local.get $3 + local.get $6 i32.const 2 i32.eq - local.get $0 + local.get $1 i32.load16_u offset=2 - local.tee $3 + local.tee $6 i32.const 64512 i32.and i32.const 55296 i32.ne i32.or if - local.get $3 + local.get $6 br $__inlined_func$~lib/string/String#codePointAt12 end - local.get $3 - local.get $0 + local.get $6 + local.get $1 i32.load16_u offset=4 - local.tee $0 + local.tee $7 i32.const 64512 i32.and i32.const 56320 i32.ne br_if $__inlined_func$~lib/string/String#codePointAt12 drop - local.get $0 - local.get $3 + local.get $7 + local.get $6 i32.const 10 i32.shl i32.add @@ -6325,16 +6318,16 @@ i32.sub end i64.extend_i32_s - local.tee $5 + local.tee $3 i64.const 0 i64.ge_s if - local.get $5 + local.get $3 i64.const 16 i64.shl - local.get $2 + local.get $0 i64.add - local.set $2 + local.set $0 end block $__inlined_func$~lib/string/String#codePointAt14 (result i32) i32.const -1 @@ -6344,27 +6337,27 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $0 + local.tee $6 i32.const 2 i32.le_u br_if $__inlined_func$~lib/string/String#codePointAt14 drop - local.get $0 + local.get $6 i32.const 3 i32.eq local.get $1 i32.load16_u offset=4 - local.tee $0 + local.tee $6 i32.const 64512 i32.and i32.const 55296 i32.ne i32.or if - local.get $0 + local.get $6 br $__inlined_func$~lib/string/String#codePointAt14 end - local.get $0 + local.get $6 local.get $1 i32.load16_u offset=6 local.tee $1 @@ -6375,7 +6368,7 @@ br_if $__inlined_func$~lib/string/String#codePointAt14 drop local.get $1 - local.get $0 + local.get $6 i32.const 10 i32.shl i32.add @@ -6383,62 +6376,62 @@ i32.sub end i64.extend_i32_s - local.tee $5 + local.tee $3 i64.const 0 i64.ge_s if (result i64) - local.get $5 + local.get $3 i64.const 32 i64.shl - local.get $2 + local.get $0 i64.add else - local.get $2 + local.get $0 end - local.set $5 - local.get $7 + local.set $3 + local.get $5 i32.const 0 call $std/string-casemapping/toLowerCaseFromIndex i64.extend_i32_s - local.set $2 - local.get $7 + local.set $0 + local.get $5 i32.const 1 call $std/string-casemapping/toLowerCaseFromIndex i64.extend_i32_s - local.tee $6 + local.tee $4 i64.const 0 i64.ge_s if - local.get $6 + local.get $4 i64.const 16 i64.shl - local.get $2 + local.get $0 i64.add - local.set $2 + local.set $0 end - local.get $7 + local.get $5 i32.const 2 call $std/string-casemapping/toLowerCaseFromIndex i64.extend_i32_s - local.tee $6 + local.tee $4 i64.const 0 i64.ge_s if (result i64) - local.get $6 + local.get $4 i64.const 32 i64.shl - local.get $2 + local.get $0 i64.add else - local.get $2 + local.get $0 end - local.set $6 - local.get $7 + local.set $4 + local.get $5 i32.const 0 call $std/string-casemapping/toUpperCaseFromIndex i64.extend_i32_s - local.set $2 - local.get $7 + local.set $0 + local.get $5 i32.const 1 call $std/string-casemapping/toUpperCaseFromIndex i64.extend_i32_s @@ -6449,11 +6442,11 @@ local.get $9 i64.const 16 i64.shl - local.get $2 + local.get $0 i64.add - local.set $2 + local.set $0 end - local.get $7 + local.get $5 i32.const 2 call $std/string-casemapping/toUpperCaseFromIndex i64.extend_i32_s @@ -6464,12 +6457,12 @@ local.get $9 i64.const 32 i64.shl - local.get $2 + local.get $0 i64.add - local.set $2 + local.set $0 end + local.get $2 local.get $4 - local.get $6 i64.ne if global.get $~lib/memory/__stack_pointer @@ -6477,7 +6470,7 @@ i32.store i32.const 18848 i32.const 1 - local.get $7 + local.get $5 f64.convert_i32_s f64.const 0 f64.const 0 @@ -6487,20 +6480,20 @@ global.get $~lib/memory/__stack_pointer i32.const 18944 i32.store offset=4 - local.get $4 + local.get $2 call $~lib/number/I64#toString - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 i32.const 18944 - local.get $0 + local.get $1 call $~lib/string/String.__concat - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.const 0 f64.const 0 f64.const 0 @@ -6511,20 +6504,20 @@ global.get $~lib/memory/__stack_pointer i32.const 20784 i32.store offset=4 - local.get $6 + local.get $4 call $~lib/number/I64#toString - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 i32.const 20784 - local.get $0 + local.get $1 call $~lib/string/String.__concat - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.const 0 f64.const 0 f64.const 0 @@ -6533,8 +6526,8 @@ f64.const 0 call $~lib/builtins/trace end - local.get $2 - local.get $5 + local.get $0 + local.get $3 i64.ne if global.get $~lib/memory/__stack_pointer @@ -6542,7 +6535,7 @@ i32.store i32.const 20848 i32.const 1 - local.get $7 + local.get $5 f64.convert_i32_s f64.const 0 f64.const 0 @@ -6552,20 +6545,20 @@ global.get $~lib/memory/__stack_pointer i32.const 20944 i32.store offset=4 - local.get $5 + local.get $3 call $~lib/number/I64#toString - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 i32.const 20944 - local.get $0 + local.get $1 call $~lib/string/String.__concat - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.const 0 f64.const 0 f64.const 0 @@ -6576,20 +6569,20 @@ global.get $~lib/memory/__stack_pointer i32.const 21008 i32.store offset=4 - local.get $2 + local.get $0 call $~lib/number/I64#toString - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 i32.const 21008 - local.get $0 + local.get $1 call $~lib/string/String.__concat - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.const 0 f64.const 0 f64.const 0 @@ -6598,10 +6591,10 @@ f64.const 0 call $~lib/builtins/trace end - local.get $7 + local.get $5 i32.const 1 i32.add - local.set $7 + local.set $5 br $for-loop|0 end end @@ -6662,7 +6655,7 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $7 i32.store loop $for-loop|0 local.get $3 @@ -6675,12 +6668,12 @@ local.get $0 i32.add i32.load16_u - local.tee $1 + local.tee $2 i32.const 7 i32.shr_u if block $for-continue|0 - local.get $1 + local.get $2 i32.const 55295 i32.sub i32.const 1025 @@ -6711,8 +6704,8 @@ local.get $4 i32.const 1023 i32.and - local.get $1 - local.tee $2 + local.get $2 + local.tee $1 i32.const 1023 i32.and i32.const 10 @@ -6720,53 +6713,53 @@ i32.or i32.const 65536 i32.add - local.tee $1 + local.tee $2 i32.const 131072 i32.ge_u if - local.get $10 + local.get $6 i32.const 1 i32.shl - local.get $9 + local.get $7 i32.add local.get $4 i32.const 16 i32.shl - local.get $2 + local.get $1 i32.or i32.store - local.get $10 + local.get $6 i32.const 1 i32.add - local.set $10 + local.set $6 br $for-continue|0 end end end - local.get $1 + local.get $2 i32.const 304 i32.eq if - local.get $10 + local.get $6 i32.const 1 i32.shl - local.get $9 + local.get $7 i32.add i32.const 50790505 i32.store - local.get $10 + local.get $6 i32.const 1 i32.add - local.set $10 + local.set $6 else - local.get $1 + local.get $2 i32.const 931 i32.eq if - local.get $10 + local.get $6 i32.const 1 i32.shl - local.get $9 + local.get $7 i32.add i32.const 962 i32.const 963 @@ -6776,32 +6769,32 @@ if (result i32) block $~lib/util/string/isFinalSigma|inlined.0 (result i32) i32.const 0 - local.set $2 + local.set $1 local.get $3 i32.const 0 local.get $3 - local.tee $1 + local.tee $2 i32.const 30 i32.sub - local.tee $4 - local.get $4 + local.tee $5 + local.get $5 i32.const 0 i32.lt_s select - local.set $7 + local.set $9 loop $while-continue|1 - local.get $1 - local.get $7 + local.get $2 + local.get $9 i32.gt_s if i32.const -1 - local.set $4 + local.set $5 block $~lib/util/string/codePointBefore|inlined.0 - local.get $1 + local.get $2 i32.const 0 i32.le_s br_if $~lib/util/string/codePointBefore|inlined.0 - local.get $1 + local.get $2 i32.const 1 i32.sub i32.const 1 @@ -6814,7 +6807,7 @@ i32.and i32.const 56320 i32.eq - local.get $1 + local.get $2 i32.const 2 i32.sub i32.const 0 @@ -6824,7 +6817,7 @@ local.get $11 i32.const 1023 i32.and - local.get $1 + local.get $2 i32.const 2 i32.sub i32.const 1 @@ -6832,7 +6825,7 @@ local.get $0 i32.add i32.load16_u - local.tee $6 + local.tee $10 i32.const 1023 i32.and i32.const 10 @@ -6840,8 +6833,8 @@ i32.add i32.const 65536 i32.add - local.set $4 - local.get $6 + local.set $5 + local.get $10 i32.const 64512 i32.and i32.const 55296 @@ -6856,13 +6849,13 @@ i32.const 55296 i32.eq select - local.set $4 + local.set $5 end - local.get $4 + local.get $5 i32.const 918000 i32.lt_u if (result i32) - local.get $4 + local.get $5 i32.const 8 i32.shr_u i32.const 7212 @@ -6872,14 +6865,14 @@ i32.shl i32.const 7212 i32.add - local.get $4 + local.get $5 i32.const 255 i32.and i32.const 3 i32.shr_u i32.add i32.load8_u - local.get $4 + local.get $5 i32.const 7 i32.and i32.shr_u @@ -6890,11 +6883,11 @@ end i32.eqz if - local.get $4 + local.get $5 i32.const 127370 i32.lt_u if (result i32) - local.get $4 + local.get $5 i32.const 8 i32.shr_u i32.const 10220 @@ -6904,14 +6897,14 @@ i32.shl i32.const 10220 i32.add - local.get $4 + local.get $5 i32.const 255 i32.and i32.const 3 i32.shr_u i32.add i32.load8_u - local.get $4 + local.get $5 i32.const 7 i32.and i32.shr_u @@ -6926,60 +6919,60 @@ i32.const 0 br $~lib/util/string/isFinalSigma|inlined.0 end - local.set $2 + local.set $1 end - local.get $1 - local.get $4 + local.get $2 + local.get $5 i32.const 65536 i32.ge_s i32.const 1 i32.add i32.sub - local.set $1 + local.set $2 br $while-continue|1 end end i32.const 0 - local.get $2 + local.get $1 i32.eqz br_if $~lib/util/string/isFinalSigma|inlined.0 drop i32.const 1 i32.add - local.tee $1 + local.tee $2 i32.const 30 i32.add - local.tee $2 + local.tee $1 local.get $8 - local.get $2 + local.get $1 local.get $8 i32.lt_s select local.set $4 loop $while-continue|2 - local.get $1 + local.get $2 local.get $4 i32.lt_s if - local.get $1 + local.get $2 i32.const 1 i32.shl local.get $0 i32.add i32.load16_u - local.tee $2 + local.tee $1 i32.const 64512 i32.and i32.const 55296 i32.eq local.get $8 - local.get $1 + local.get $2 i32.const 1 i32.add i32.ne i32.and if - local.get $1 + local.get $2 i32.const 1 i32.shl local.get $0 @@ -6992,20 +6985,20 @@ i32.eq if local.get $5 - local.get $2 + local.get $1 i32.const 10 i32.shl i32.add i32.const 56613888 i32.sub - local.set $2 + local.set $1 end end - local.get $2 + local.get $1 i32.const 918000 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 8 i32.shr_u i32.const 7212 @@ -7015,14 +7008,14 @@ i32.shl i32.const 7212 i32.add - local.get $2 + local.get $1 i32.const 255 i32.and i32.const 3 i32.shr_u i32.add i32.load8_u - local.get $2 + local.get $1 i32.const 7 i32.and i32.shr_u @@ -7033,11 +7026,11 @@ end i32.eqz if - local.get $2 + local.get $1 i32.const 127370 i32.lt_u if (result i32) - local.get $2 + local.get $1 i32.const 8 i32.shr_u i32.const 10220 @@ -7047,14 +7040,14 @@ i32.shl i32.const 10220 i32.add - local.get $2 + local.get $1 i32.const 255 i32.and i32.const 3 i32.shr_u i32.add i32.load8_u - local.get $2 + local.get $1 i32.const 7 i32.and i32.shr_u @@ -7066,14 +7059,14 @@ i32.eqz br $~lib/util/string/isFinalSigma|inlined.0 end - local.get $2 + local.get $1 i32.const 65536 i32.ge_u i32.const 1 i32.add - local.get $1 + local.get $2 i32.add - local.set $1 + local.set $2 br $while-continue|2 end end @@ -7085,23 +7078,23 @@ select i32.store16 else - local.get $1 + local.get $2 i32.const 9398 i32.sub i32.const 25 i32.le_u if - local.get $10 + local.get $6 i32.const 1 i32.shl - local.get $9 + local.get $7 i32.add - local.get $1 + local.get $2 i32.const 26 i32.add i32.store16 else - local.get $1 + local.get $2 i32.const 0 call $~lib/util/casemap/casemap i32.const 2097151 @@ -7110,18 +7103,18 @@ i32.const 65536 i32.lt_u if - local.get $10 + local.get $6 i32.const 1 i32.shl - local.get $9 + local.get $7 i32.add local.get $1 i32.store16 else - local.get $10 + local.get $6 i32.const 1 i32.shl - local.get $9 + local.get $7 i32.add local.get $1 i32.const 65536 @@ -7140,22 +7133,22 @@ i32.shl i32.or i32.store - local.get $10 + local.get $6 i32.const 1 i32.add - local.set $10 + local.set $6 end end end end end else - local.get $10 + local.get $6 i32.const 1 i32.shl - local.get $9 + local.get $7 i32.add - local.get $1 + local.get $2 i32.const 7084 i32.add i32.load8_u @@ -7165,15 +7158,15 @@ i32.const 1 i32.add local.set $3 - local.get $10 + local.get $6 i32.const 1 i32.add - local.set $10 + local.set $6 br $for-loop|0 end end - local.get $9 - local.get $10 + local.get $7 + local.get $6 i32.const 1 i32.shl call $~lib/rt/itcms/__renew @@ -7209,13 +7202,13 @@ local.get $0 i32.const 65535 i32.gt_u - local.tee $1 + local.tee $2 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $1 + local.get $2 if local.get $0 i32.const 1114111 @@ -7228,7 +7221,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 local.get $0 i32.const 65536 i32.sub @@ -7247,7 +7240,7 @@ i32.or i32.store else - local.get $2 + local.get $1 local.get $0 i32.store16 end @@ -7255,7 +7248,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 ) (func $byn-split-outlined-A$~lib/rt/itcms/__visit (param $0 i32) (local $1 i32) @@ -7265,19 +7258,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -7287,16 +7280,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -7319,7 +7311,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -7329,23 +7321,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -7353,7 +7345,7 @@ else i32.const 21056 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1280 @@ -7363,7 +7355,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 21060 @@ -7378,28 +7370,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/std/string-encoding.optimized.wat b/tests/compiler/std/string-encoding.optimized.wat index bdf71f1225..85754bbd60 100644 --- a/tests/compiler/std/string-encoding.optimized.wat +++ b/tests/compiler/std/string-encoding.optimized.wat @@ -539,9 +539,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -588,6 +585,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1165,18 +1165,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $4 + local.get $0 + i32.const 16 + i32.add local.tee $3 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1187,13 +1186,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $3 i32.const 19 i32.add i32.const -16 @@ -1201,32 +1200,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $5 i32.add else - local.get $4 + local.get $5 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1242,16 +1241,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $3 local.get $2 - local.get $5 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1259,7 +1258,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1267,8 +1266,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1285,7 +1284,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $5 i32.lt_u if i32.const 0 @@ -1295,13 +1294,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $4 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1314,40 +1313,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $4 + local.get $5 i32.sub - local.tee $6 + local.tee $3 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $4 + local.get $5 i32.or i32.store - local.get $4 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 - local.get $6 + local.tee $5 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -2045,95 +2044,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -2164,39 +2163,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 @@ -2547,14 +2546,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -4774,12 +4773,11 @@ i32.const 0 i32.store local.get $0 - local.tee $3 local.get $1 - local.get $3 i32.add local.tee $5 - i32.gt_u + local.get $0 + i32.lt_u if i32.const 0 i32.const 1776 @@ -4794,49 +4792,49 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 local.set $1 loop $while-continue|0 - local.get $3 + local.get $0 local.get $5 i32.lt_u if block $while-break|0 - local.get $3 + local.get $0 i32.load8_u - local.set $7 - local.get $3 + local.set $6 + local.get $0 i32.const 1 i32.add - local.set $3 - local.get $7 + local.set $0 + local.get $6 i32.const 128 i32.and if - local.get $3 + local.get $0 local.get $5 i32.eq br_if $while-break|0 - local.get $3 + local.get $0 i32.load8_u i32.const 63 i32.and - local.set $4 - local.get $3 + local.set $7 + local.get $0 i32.const 1 i32.add - local.set $3 - local.get $7 + local.set $0 + local.get $6 i32.const 224 i32.and i32.const 192 i32.eq if local.get $1 - local.get $4 local.get $7 + local.get $6 i32.const 31 i32.and i32.const 6 @@ -4844,65 +4842,65 @@ i32.or i32.store16 else - local.get $3 + local.get $0 local.get $5 i32.eq br_if $while-break|0 - local.get $3 + local.get $0 i32.load8_u i32.const 63 i32.and - local.set $6 - local.get $3 + local.set $4 + local.get $0 i32.const 1 i32.add - local.set $3 - local.get $7 + local.set $0 + local.get $6 i32.const 240 i32.and i32.const 224 i32.eq if + local.get $4 local.get $6 - local.get $7 i32.const 15 i32.and i32.const 12 i32.shl - local.get $4 + local.get $7 i32.const 6 i32.shl i32.or i32.or local.set $4 else - local.get $3 + local.get $0 local.get $5 i32.eq br_if $while-break|0 - local.get $3 + local.get $0 i32.load8_u i32.const 63 i32.and - local.get $7 + local.get $6 i32.const 7 i32.and i32.const 18 i32.shl - local.get $4 + local.get $7 i32.const 12 i32.shl i32.or - local.get $6 + local.get $4 i32.const 6 i32.shl i32.or i32.or local.set $4 - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 end local.get $4 i32.const 65536 @@ -4937,13 +4935,13 @@ end end else - local.get $7 + local.get $6 i32.eqz local.get $2 i32.and br_if $while-break|0 local.get $1 - local.get $7 + local.get $6 i32.store16 end local.get $1 @@ -4956,14 +4954,13 @@ end block $__inlined_func$~lib/rt/itcms/__renew (result i32) local.get $1 - local.get $0 - local.tee $1 + local.get $3 i32.sub - local.tee $2 - local.get $0 + local.tee $0 + local.get $3 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load i32.const -4 i32.and @@ -4971,28 +4968,28 @@ i32.sub i32.le_u if + local.get $1 local.get $0 - local.get $2 i32.store offset=16 - local.get $1 + local.get $3 br $__inlined_func$~lib/rt/itcms/__renew end - local.get $2 local.get $0 + local.get $1 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $3 - local.get $1 - local.get $2 + local.tee $2 + local.get $3 local.get $0 + local.get $1 i32.load offset=16 - local.tee $0 + local.tee $1 local.get $0 - local.get $2 - i32.gt_u + local.get $1 + i32.lt_u select call $~lib/memory/memory.copy - local.get $3 + local.get $2 end global.get $~lib/memory/__stack_pointer i32.const 4 @@ -5007,19 +5004,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -5029,16 +5026,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -5061,7 +5057,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -5071,23 +5067,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -5095,7 +5091,7 @@ else i32.const 22512 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1344 @@ -5105,7 +5101,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 22516 @@ -5120,28 +5116,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/std/string.optimized.wat b/tests/compiler/std/string.optimized.wat index 25087ca1d2..b2a27de897 100644 --- a/tests/compiler/std/string.optimized.wat +++ b/tests/compiler/std/string.optimized.wat @@ -998,14 +998,14 @@ if local.get $1 i32.load16_u - local.tee $4 + local.tee $0 local.get $2 i32.load16_u - local.tee $0 + local.tee $4 i32.ne if - local.get $4 local.get $0 + local.get $4 i32.sub return end @@ -1152,18 +1152,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 42268 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -1177,9 +1176,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1189,15 +1188,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -1238,20 +1237,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -1683,9 +1682,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -1732,6 +1728,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -2485,18 +2484,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $3 + local.get $0 + i32.const 16 + i32.add local.tee $4 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -2507,13 +2505,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $4 i32.const 19 i32.add i32.const -16 @@ -2521,32 +2519,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -2562,16 +2560,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -2579,7 +2577,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -2587,8 +2585,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -2605,7 +2603,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -2615,13 +2613,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -2634,40 +2632,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -3252,95 +3250,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -3371,39 +3369,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 @@ -4215,38 +4213,37 @@ i32.load i32.const 1 i32.shr_u - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 return end i32.const 4240 - local.set $3 + local.set $2 i32.const 4240 i32.load16_u - local.set $0 + local.set $1 loop $while-continue|0 block $__inlined_func$~lib/util/string/isSpace (result i32) - local.get $0 - local.tee $2 + local.get $1 i32.const 128 i32.or i32.const 160 i32.eq - local.get $2 + local.get $1 i32.const 9 i32.sub i32.const 4 i32.le_u i32.or - local.get $2 + local.get $1 i32.const 5760 i32.lt_u br_if $__inlined_func$~lib/util/string/isSpace drop i32.const 1 - local.get $2 + local.get $1 i32.const -8192 i32.add i32.const 10 @@ -4255,31 +4252,31 @@ drop block $break|0 block $case6|0 - local.get $2 + local.get $1 i32.const 5760 i32.eq br_if $case6|0 - local.get $2 + local.get $1 i32.const 8232 i32.eq br_if $case6|0 - local.get $2 + local.get $1 i32.const 8233 i32.eq br_if $case6|0 - local.get $2 + local.get $1 i32.const 8239 i32.eq br_if $case6|0 - local.get $2 + local.get $1 i32.const 8287 i32.eq br_if $case6|0 - local.get $2 + local.get $1 i32.const 12288 i32.eq br_if $case6|0 - local.get $2 + local.get $1 i32.const 65279 i32.eq br_if $case6|0 @@ -4291,33 +4288,33 @@ i32.const 0 end if - local.get $3 + local.get $2 i32.const 2 i32.add - local.tee $3 + local.tee $2 i32.load16_u - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|0 end end i32.const 1 - local.set $2 - local.get $0 + local.set $3 + local.get $1 i32.const 43 i32.eq - local.get $0 + local.get $1 i32.const 45 i32.eq i32.or if (result i32) - local.get $1 + local.get $0 i32.const 1 i32.sub - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -4325,22 +4322,22 @@ end i32.const -1 i32.const 1 - local.get $0 + local.get $1 i32.const 45 i32.eq select - local.set $2 - local.get $3 + local.set $3 + local.get $2 i32.const 2 i32.add - local.tee $3 + local.tee $2 i32.load16_u else - local.get $0 + local.get $1 end i32.const 48 i32.eq - local.get $1 + local.get $0 i32.const 2 i32.gt_s i32.and @@ -4348,56 +4345,56 @@ block $break|1 block $case2|1 block $case1|1 - local.get $3 + local.get $2 i32.load16_u offset=2 i32.const 32 i32.or - local.tee $0 + local.tee $1 i32.const 98 i32.ne if - local.get $0 + local.get $1 i32.const 111 i32.eq br_if $case1|1 - local.get $0 + local.get $1 i32.const 120 i32.eq br_if $case2|1 br $break|1 end - local.get $3 + local.get $2 i32.const 4 i32.add - local.set $3 - local.get $1 + local.set $2 + local.get $0 i32.const 2 i32.sub - local.set $1 + local.set $0 i32.const 2 local.set $4 br $break|1 end - local.get $3 + local.get $2 i32.const 4 i32.add - local.set $3 - local.get $1 + local.set $2 + local.get $0 i32.const 2 i32.sub - local.set $1 + local.set $0 i32.const 8 local.set $4 br $break|1 end - local.get $3 + local.get $2 i32.const 4 i32.add - local.set $3 - local.get $1 + local.set $2 + local.get $0 i32.const 2 i32.sub - local.set $1 + local.set $0 i32.const 16 local.set $4 end @@ -4409,40 +4406,40 @@ local.set $4 loop $while-continue|2 block $while-break|2 - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 1 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $1 if - local.get $3 + local.get $2 i32.load16_u - local.tee $0 + local.tee $1 i32.const 48 i32.sub i32.const 10 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 48 i32.sub else - local.get $0 + local.get $1 i32.const 65 i32.sub i32.const 25 i32.le_u if (result i32) - local.get $0 + local.get $1 i32.const 55 i32.sub else - local.get $0 + local.get $1 i32.const 87 i32.sub - local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.const 97 i32.sub i32.const 25 @@ -4450,7 +4447,7 @@ select end end - local.tee $0 + local.tee $1 local.get $4 i32.ge_u if @@ -4462,21 +4459,21 @@ end br $while-break|2 end - local.get $0 + local.get $1 local.get $4 local.get $5 i32.mul i32.add local.set $5 - local.get $3 + local.get $2 i32.const 2 i32.add - local.set $3 + local.set $2 br $while-continue|2 end end end - local.get $2 + local.get $3 local.get $5 i32.mul ) @@ -5634,15 +5631,15 @@ i64.extend_i32_s local.tee $13 i64.div_u - local.tee $12 + local.tee $14 i64.clz - local.set $14 + local.set $12 local.get $6 local.get $13 i64.rem_u f64.convert_i64_u i64.reinterpret_f64 - local.get $14 + local.get $12 i64.const 52 i64.shl i64.add @@ -5651,13 +5648,13 @@ f64.convert_i64_u f64.div i64.trunc_f64_u - local.get $12 local.get $14 + local.get $12 i64.shl i64.add f64.convert_i64_u local.get $8 - local.get $14 + local.get $12 i64.sub i32.wrap_i64 call $~lib/math/NativeMath.scalbn @@ -5946,19 +5943,19 @@ local.get $0 local.tee $2 i32.load offset=12 - local.tee $5 + local.tee $3 i32.const 1 i32.add - local.tee $6 - local.tee $3 + local.tee $4 + local.tee $7 local.get $2 i32.load offset=8 - local.tee $4 + local.tee $5 i32.const 2 i32.shr_u i32.gt_u if - local.get $3 + local.get $7 i32.const 268435455 i32.gt_u if @@ -5971,8 +5968,8 @@ end local.get $2 i32.load - local.tee $7 - local.get $4 + local.tee $6 + local.get $5 i32.const 1 i32.shl local.tee $8 @@ -5982,53 +5979,53 @@ i32.lt_u select local.tee $8 - local.get $3 + local.get $7 i32.const 8 - local.get $3 + local.get $7 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $3 - local.get $3 + local.tee $7 + local.get $7 local.get $8 i32.lt_u select - local.tee $8 + local.tee $7 call $~lib/rt/itcms/__renew - local.tee $3 - local.get $4 + local.tee $8 + local.get $5 i32.add - local.get $8 - local.get $4 + local.get $7 + local.get $5 i32.sub call $~lib/memory/memory.fill - local.get $3 - local.get $7 + local.get $6 + local.get $8 i32.ne if local.get $2 - local.get $3 + local.get $8 i32.store local.get $2 - local.get $3 + local.get $8 i32.store offset=4 - local.get $3 + local.get $8 if local.get $2 - local.get $3 + local.get $8 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end end local.get $2 - local.get $8 + local.get $7 i32.store offset=8 end local.get $0 i32.load offset=4 - local.get $5 + local.get $3 i32.const 2 i32.shl i32.add @@ -6042,7 +6039,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $2 - local.get $6 + local.get $4 i32.store offset=12 ) (func $~lib/util/number/utoa32_dec_lut (param $0 i32) (param $1 i32) (param $2 i32) @@ -6154,7 +6151,7 @@ (local $5 i64) local.get $3 i64.extend_i32_s - local.set $4 + local.set $5 local.get $3 i32.const 1 i32.sub @@ -6171,9 +6168,9 @@ local.get $0 i32.add local.get $1 - local.get $4 + local.get $5 local.get $1 - local.get $4 + local.get $5 i64.div_u local.tee $1 i64.mul @@ -6196,11 +6193,11 @@ i32.const 7 i32.and i64.extend_i32_s - local.set $5 - local.get $4 + local.set $4 + local.get $5 i64.const 1 i64.sub - local.set $4 + local.set $5 loop $do-loop|0 local.get $2 i32.const 1 @@ -6211,7 +6208,7 @@ local.get $0 i32.add local.get $1 - local.get $4 + local.get $5 i64.and i32.wrap_i64 i32.const 1 @@ -6221,7 +6218,7 @@ i32.load16_u i32.store16 local.get $1 - local.get $5 + local.get $4 i64.shr_u local.tee $1 i64.const 0 @@ -6241,7 +6238,7 @@ local.get $2 i32.const 4 i32.sub - local.tee $3 + local.tee $2 i32.const 1 i32.shl local.get $0 @@ -6255,10 +6252,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $4 + local.tee $3 i32.const 10000 i32.rem_u - local.tee $2 + local.tee $4 i32.const 100 i32.div_u i32.const 2 @@ -6266,7 +6263,7 @@ i32.const 15804 i32.add i64.load32_u - local.get $2 + local.get $4 i32.const 100 i32.rem_u i32.const 2 @@ -6278,7 +6275,7 @@ i64.shl i64.or i64.store - local.get $3 + local.get $2 i32.const 4 i32.sub local.tee $2 @@ -6286,7 +6283,7 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $3 i32.const 10000 i32.div_u local.tee $3 @@ -6890,64 +6887,63 @@ i32.const 101 i32.store16 offset=2 local.get $0 - local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $1 i32.const 0 i32.lt_s local.tee $2 if i32.const 0 - local.get $0 + local.get $1 i32.sub - local.set $0 + local.set $1 end - local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -6955,15 +6951,15 @@ end i32.const 1 i32.add - local.tee $0 + local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $0 i32.const 45 i32.const 43 local.get $2 select i32.store16 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.add else @@ -7078,10 +7074,10 @@ (local $3 i64) (local $4 i64) (local $5 i64) - (local $6 i64) + (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) + (local $9 i64) (local $10 i64) (local $11 i64) (local $12 i64) @@ -7107,19 +7103,19 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $7 + local.tee $6 i32.const 1 - local.get $7 + local.get $6 select i32.const 1075 i32.sub - local.tee $8 + local.tee $7 i32.const 1 i32.sub local.get $1 i64.const 4503599627370495 i64.and - local.get $7 + local.get $6 i32.const 0 i32.ne i64.extend_i32_u @@ -7134,11 +7130,11 @@ local.tee $3 i64.clz i32.wrap_i64 - local.tee $7 + local.tee $6 i32.sub - local.set $9 + local.set $8 local.get $3 - local.get $7 + local.get $6 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -7148,25 +7144,25 @@ i64.eq i32.const 1 i32.add - local.tee $7 + local.tee $6 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $8 local.get $7 + local.get $6 i32.sub - local.get $9 + local.get $8 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $9 + local.get $8 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $7 + local.tee $6 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -7175,9 +7171,9 @@ f64.add local.tee $0 i32.trunc_f64_s - local.tee $8 + local.tee $7 local.get $0 - local.get $8 + local.get $7 f64.convert_i32_s f64.ne i32.add @@ -7185,18 +7181,18 @@ i32.shr_s i32.const 1 i32.add - local.tee $8 + local.tee $7 i32.const 3 i32.shl - local.tee $9 + local.tee $8 i32.sub global.set $~lib/util/number/_K - local.get $9 + local.get $8 i32.const 22920 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $8 + local.get $7 i32.const 1 i32.shl i32.const 23616 @@ -7210,81 +7206,81 @@ local.tee $1 i64.const 4294967295 i64.and - local.set $10 + local.set $3 local.get $1 i64.const 32 i64.shr_u - local.tee $11 + local.tee $9 global.get $~lib/util/number/_frc_pow - local.tee $4 + local.tee $10 i64.const 4294967295 i64.and - local.tee $12 + local.tee $11 local.tee $1 i64.mul local.get $1 - local.get $10 + local.get $3 i64.mul i64.const 32 i64.shr_u i64.add - local.set $13 + local.set $4 global.get $~lib/util/number/_frc_plus - local.tee $3 + local.tee $1 i64.const 4294967295 i64.and - local.set $1 - local.get $3 + local.set $12 + local.get $1 i64.const 32 i64.shr_u - local.tee $5 - local.get $12 + local.tee $1 + local.get $11 i64.mul - local.get $1 + local.get $11 local.get $12 i64.mul i64.const 32 i64.shr_u i64.add - local.set $14 + local.set $5 global.get $~lib/util/number/_frc_minus - local.tee $6 + local.tee $13 i64.const 4294967295 i64.and - local.set $3 - local.get $6 + local.set $14 + local.get $13 i64.const 32 i64.shr_u - local.tee $6 - local.get $12 + local.tee $13 + local.get $11 i64.mul - local.get $3 - local.get $12 + local.get $11 + local.get $14 i64.mul i64.const 32 i64.shr_u i64.add - local.set $12 + local.set $11 local.get $2 i32.const 1 i32.shl i32.const 22864 i32.add - local.get $11 - local.get $4 + local.get $9 + local.get $10 i64.const 32 i64.shr_u - local.tee $4 - local.tee $11 + local.tee $9 + local.tee $10 i64.mul - local.get $13 + local.get $4 i64.const 32 i64.shr_u i64.add + local.get $3 local.get $10 - local.get $11 i64.mul - local.get $13 + local.get $4 i64.const 4294967295 i64.and i64.add @@ -7293,17 +7289,17 @@ i64.const 32 i64.shr_u i64.add - local.get $4 - local.get $5 + local.get $1 + local.get $9 i64.mul - local.get $14 + local.get $5 i64.const 32 i64.shr_u i64.add - local.get $1 - local.get $4 + local.get $9 + local.get $12 i64.mul - local.get $14 + local.get $5 i64.const 4294967295 i64.and i64.add @@ -7316,22 +7312,22 @@ i64.sub local.tee $1 global.get $~lib/util/number/_exp_pow - local.get $7 + local.get $6 i32.add i32.const -64 i32.sub local.get $1 - local.get $4 - local.get $6 + local.get $9 + local.get $13 i64.mul - local.get $12 + local.get $11 i64.const 32 i64.shr_u i64.add - local.get $3 - local.get $4 + local.get $9 + local.get $14 i64.mul - local.get $12 + local.get $11 i64.const 4294967295 i64.and i64.add @@ -7397,21 +7393,20 @@ return end local.get $0 - local.tee $1 i32.load offset=4 - local.tee $2 + local.tee $1 local.get $0 i32.load offset=12 i32.const 2 i32.shl i32.add - local.set $0 + local.set $2 loop $while-continue|0 - local.get $0 + local.get $1 local.get $2 - i32.gt_u + i32.lt_u if - local.get $2 + local.get $1 i32.load local.tee $3 if @@ -7421,14 +7416,14 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $2 + local.get $1 i32.const 4 i32.add - local.set $2 + local.set $1 br $while-continue|0 end end - local.get $1 + local.get $0 i32.load local.tee $0 if @@ -7520,23 +7515,23 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.set $6 + local.set $8 i32.const 2147483647 local.get $2 local.get $2 i32.const 0 i32.lt_s select - local.set $7 + local.set $2 local.get $1 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $2 + local.tee $9 if - local.get $6 + local.get $8 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -7553,27 +7548,27 @@ br $folding-inner1 end else - local.get $6 + local.get $8 i32.eqz br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.get $6 - local.get $7 - local.get $6 - local.get $7 - i32.lt_s + local.get $8 + local.get $2 + local.get $2 + local.get $8 + i32.gt_s select - local.tee $2 + local.tee $1 i32.const 4 i32.const 0 call $~lib/rt/__newArray - local.tee $4 + local.tee $2 i32.store - local.get $4 + local.get $2 i32.load offset=4 - local.set $5 + local.set $4 loop $for-loop|0 - local.get $2 + local.get $1 local.get $3 i32.gt_s if @@ -7581,9 +7576,9 @@ i32.const 2 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $5 i32.store offset=8 - local.get $1 + local.get $5 local.get $3 i32.const 1 i32.shl @@ -7594,14 +7589,14 @@ local.get $3 i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add - local.get $1 + local.get $5 i32.store - local.get $1 + local.get $5 if - local.get $4 - local.get $1 + local.get $2 + local.get $5 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -7616,7 +7611,7 @@ i32.const 24 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $2 return end global.get $~lib/memory/__stack_pointer @@ -7624,60 +7619,60 @@ i32.const 4 i32.const 0 call $~lib/rt/__newArray - local.tee $8 + local.tee $3 i32.store offset=12 loop $while-continue|1 local.get $0 local.get $1 local.get $4 call $~lib/string/String#indexOf - local.tee $9 + local.tee $6 i32.const -1 i32.xor if - local.get $9 + local.get $6 local.get $4 i32.sub - local.tee $3 + local.tee $7 i32.const 0 i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.const 1 i32.shl - local.tee $3 + local.tee $10 i32.const 1 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $7 i32.store offset=16 - local.get $10 + local.get $7 local.get $4 i32.const 1 i32.shl local.get $0 i32.add - local.get $3 - call $~lib/memory/memory.copy - local.get $8 local.get $10 + call $~lib/memory/memory.copy + local.get $3 + local.get $7 call $~lib/array/Array<~lib/string/String>#push else global.get $~lib/memory/__stack_pointer i32.const 1712 i32.store offset=20 - local.get $8 + local.get $3 i32.const 1712 call $~lib/array/Array<~lib/string/String>#push end - local.get $7 + local.get $2 local.get $5 i32.const 1 i32.add local.tee $5 i32.eq br_if $folding-inner2 - local.get $2 + local.get $6 local.get $9 i32.add local.set $4 @@ -7687,12 +7682,12 @@ local.get $4 i32.eqz if - local.get $8 + local.get $3 local.get $0 call $~lib/array/Array<~lib/string/String>#push br $folding-inner2 end - local.get $6 + local.get $8 local.get $4 i32.sub local.tee $1 @@ -7716,14 +7711,14 @@ i32.add local.get $1 call $~lib/memory/memory.copy - local.get $8 + local.get $3 local.get $2 call $~lib/array/Array<~lib/string/String>#push else global.get $~lib/memory/__stack_pointer i32.const 1712 i32.store offset=20 - local.get $8 + local.get $3 i32.const 1712 call $~lib/array/Array<~lib/string/String>#push end @@ -7731,7 +7726,7 @@ i32.const 24 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 + local.get $3 return end i32.const 0 @@ -7751,7 +7746,7 @@ i32.const 24 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 + local.get $3 ) (func $start:std/string (local $0 i32) @@ -13740,18 +13735,18 @@ global.get $~lib/memory/__stack_pointer i32.const 55296 call $~lib/string/String.fromCodePoint - local.set $4 + local.set $5 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store i32.const 56322 call $~lib/string/String.fromCodePoint - local.set $5 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $0 i32.store offset=4 - local.get $4 local.get $5 + local.get $0 call $~lib/string/String#concat local.tee $0 i32.store offset=40 @@ -21630,18 +21625,18 @@ local.get $1 i32.const 0 i32.gt_s - local.tee $2 + local.tee $3 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 i32.store - local.get $3 + local.get $2 local.get $0 i32.store16 - local.get $2 + local.get $3 if - local.get $3 + local.get $2 local.get $1 i32.store16 offset=2 end @@ -21649,7 +21644,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 ) (func $~lib/rt/__newArray (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -21746,25 +21741,25 @@ local.get $2 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $3 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $2 i32.store local.get $0 i32.load offset=4 local.set $0 loop $for-loop|0 local.get $1 - local.get $2 + local.get $3 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $3 + local.get $2 i32.add local.get $1 i32.const 2 @@ -21784,7 +21779,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $2 ) (func $~lib/string/String.fromCodePoint (param $0 i32) (result i32) (local $1 i32) @@ -21813,13 +21808,13 @@ local.get $0 i32.const 65535 i32.gt_u - local.tee $1 + local.tee $2 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $1 + local.get $2 if local.get $0 i32.const 1114111 @@ -21832,7 +21827,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 local.get $0 i32.const 65536 i32.sub @@ -21851,7 +21846,7 @@ i32.or i32.store else - local.get $2 + local.get $1 local.get $0 i32.store16 end @@ -21859,7 +21854,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 ) (func $~lib/string/String#padStart (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -21922,45 +21917,45 @@ local.get $1 i32.const 1 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store local.get $3 local.get $1 local.get $4 i32.sub - local.tee $7 + local.tee $6 i32.lt_u if local.get $3 - local.get $7 + local.get $6 i32.const 2 i32.sub local.get $3 i32.div_u - local.tee $5 + local.tee $1 i32.mul - local.set $1 - local.get $6 + local.set $7 + local.get $5 local.get $2 local.get $3 - local.get $5 - call $~lib/memory/memory.repeat local.get $1 - local.get $6 + call $~lib/memory/memory.repeat + local.get $5 + local.get $7 i32.add local.get $2 + local.get $6 local.get $7 - local.get $1 i32.sub call $~lib/memory/memory.copy else - local.get $6 + local.get $5 local.get $2 - local.get $7 + local.get $6 call $~lib/memory/memory.copy end + local.get $5 local.get $6 - local.get $7 i32.add local.get $0 local.get $4 @@ -21969,7 +21964,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $5 ) (func $~lib/string/String#padEnd (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -22016,7 +22011,7 @@ local.get $1 i32.const 1 i32.shl - local.tee $1 + local.tee $5 i32.gt_u i32.or if @@ -22028,60 +22023,60 @@ return end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $5 i32.const 1 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $1 i32.store - local.get $5 + local.get $1 local.get $0 local.get $4 call $~lib/memory/memory.copy local.get $3 - local.get $1 + local.get $5 local.get $4 i32.sub - local.tee $1 + local.tee $5 i32.lt_u if local.get $3 - local.get $1 + local.get $5 i32.const 2 i32.sub local.get $3 i32.div_u - local.tee $6 + local.tee $0 i32.mul - local.set $0 + local.set $6 + local.get $1 local.get $4 - local.get $5 i32.add local.tee $4 local.get $2 local.get $3 - local.get $6 - call $~lib/memory/memory.repeat local.get $0 + call $~lib/memory/memory.repeat local.get $4 + local.get $6 i32.add local.get $2 - local.get $1 - local.get $0 + local.get $5 + local.get $6 i32.sub call $~lib/memory/memory.copy else + local.get $1 local.get $4 - local.get $5 i32.add local.get $2 - local.get $1 + local.get $5 call $~lib/memory/memory.copy end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $1 ) (func $~lib/string/String#trimStart (param $0 i32) (result i32) (local $1 i32) @@ -22268,7 +22263,7 @@ i32.shr_u i32.const 1 i32.shl - local.tee $2 + local.tee $3 local.set $1 loop $while-continue|0 local.get $1 @@ -22280,16 +22275,16 @@ i32.const 2 i32.sub i32.load16_u - local.tee $3 + local.tee $2 i32.const 5760 i32.lt_u if - local.get $3 + local.get $2 i32.const 128 i32.or i32.const 160 i32.eq - local.get $3 + local.get $2 i32.const 9 i32.sub i32.const 4 @@ -22298,7 +22293,7 @@ br $__inlined_func$~lib/util/string/isSpace end i32.const 1 - local.get $3 + local.get $2 i32.const -8192 i32.add i32.const 10 @@ -22307,31 +22302,31 @@ drop block $break|0 block $case6|0 - local.get $3 + local.get $2 i32.const 5760 i32.eq br_if $case6|0 - local.get $3 + local.get $2 i32.const 8232 i32.eq br_if $case6|0 - local.get $3 + local.get $2 i32.const 8233 i32.eq br_if $case6|0 - local.get $3 + local.get $2 i32.const 8239 i32.eq br_if $case6|0 - local.get $3 + local.get $2 i32.const 8287 i32.eq br_if $case6|0 - local.get $3 + local.get $2 i32.const 12288 i32.eq br_if $case6|0 - local.get $3 + local.get $2 i32.const 65279 i32.eq br_if $case6|0 @@ -22364,7 +22359,7 @@ return end local.get $1 - local.get $2 + local.get $3 i32.eq if global.get $~lib/memory/__stack_pointer @@ -22870,7 +22865,7 @@ local.get $1 i32.const 0 call $~lib/string/String#indexOf - local.tee $6 + local.tee $1 i32.const -1 i32.xor if @@ -22880,53 +22875,53 @@ i32.load offset=16 i32.const 1 i32.shr_u - local.tee $1 + local.tee $5 local.get $4 local.get $3 i32.sub - local.tee $4 + local.tee $6 i32.add - local.tee $5 + local.tee $4 if global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $4 i32.store - local.get $7 + local.get $4 local.get $0 - local.get $6 + local.get $1 i32.const 1 i32.shl - local.tee $5 + local.tee $7 call $~lib/memory/memory.copy - local.get $5 + local.get $4 local.get $7 i32.add local.get $2 - local.get $1 + local.get $5 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $1 - local.get $6 + local.get $5 i32.add i32.const 1 i32.shl - local.get $7 + local.get $4 i32.add + local.get $1 local.get $3 - local.get $6 i32.add i32.const 1 i32.shl local.get $0 i32.add - local.get $4 local.get $6 + local.get $1 i32.sub i32.const 1 i32.shl @@ -22935,7 +22930,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $4 return end end @@ -23029,9 +23024,9 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $6 i32.store - local.get $5 + local.get $6 local.get $2 local.get $4 i32.const 1 @@ -23041,15 +23036,15 @@ local.set $1 loop $for-loop|0 local.get $3 - local.get $6 + local.get $5 i32.gt_u if local.get $1 i32.const 1 i32.shl - local.get $5 - i32.add local.get $6 + i32.add + local.get $5 i32.const 1 i32.shl local.get $0 @@ -23062,7 +23057,7 @@ local.tee $1 i32.const 1 i32.shl - local.get $5 + local.get $6 i32.add local.get $2 local.get $4 @@ -23073,10 +23068,10 @@ local.get $4 i32.add local.set $1 - local.get $6 + local.get $5 i32.const 1 i32.add - local.set $6 + local.set $5 br $for-loop|0 end end @@ -23084,7 +23079,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $6 return end local.get $4 @@ -23529,51 +23524,51 @@ i32.const 0 i32.gt_s select - local.tee $1 + local.tee $3 local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.tee $3 + local.tee $1 local.get $1 local.get $3 - i32.lt_s + i32.gt_s select - local.tee $4 + local.tee $3 local.get $2 i32.const 0 local.get $2 i32.const 0 i32.gt_s select - local.tee $1 - local.get $3 + local.tee $2 local.get $1 - local.get $3 - i32.lt_s + local.get $1 + local.get $2 + i32.gt_s select local.tee $2 local.get $2 - local.get $4 + local.get $3 i32.gt_s select i32.const 1 i32.shl - local.set $1 - local.get $4 + local.set $4 + local.get $3 local.get $2 local.get $2 - local.get $4 + local.get $3 i32.lt_s select i32.const 1 i32.shl local.tee $2 - local.get $1 + local.get $4 i32.sub - local.tee $4 + local.tee $3 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -23584,12 +23579,12 @@ return end i32.const 0 - local.get $3 + local.get $1 i32.const 1 i32.shl local.get $2 i32.eq - local.get $1 + local.get $4 select if global.get $~lib/memory/__stack_pointer @@ -23600,22 +23595,22 @@ return end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 - local.get $0 local.get $1 - i32.add + local.get $0 local.get $4 + i32.add + local.get $3 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 ) (func $~lib/array/Array<~lib/string/String>#__get (param $0 i32) (param $1 i32) (result i32) global.get $~lib/memory/__stack_pointer @@ -23681,7 +23676,6 @@ (local $5 i32) (local $6 i64) (local $7 i64) - (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -23741,47 +23735,46 @@ if global.get $~lib/memory/__stack_pointer local.get $2 - local.tee $0 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $2 i32.const 100000000 i32.ge_u i32.add @@ -23794,9 +23787,9 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $1 i32.store - local.get $8 + local.get $1 local.get $2 local.get $0 call $~lib/util/number/utoa32_dec_lut @@ -23821,11 +23814,11 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $1 i32.store local.get $2 i64.extend_i32_u - local.set $7 + local.set $3 loop $while-continue|0 local.get $0 i32.const 2 @@ -23837,9 +23830,9 @@ local.tee $0 i32.const 1 i32.shl - local.get $8 + local.get $1 i32.add - local.get $7 + local.get $3 i32.wrap_i64 i32.const 255 i32.and @@ -23849,10 +23842,10 @@ i32.add i32.load i32.store - local.get $7 + local.get $3 i64.const 8 i64.shr_u - local.set $7 + local.set $3 br $while-continue|0 end end @@ -23860,8 +23853,8 @@ i32.const 1 i32.and if - local.get $8 - local.get $7 + local.get $1 + local.get $3 i32.wrap_i64 i32.const 6 i32.shl @@ -23875,21 +23868,21 @@ block $__inlined_func$~lib/util/number/ulog_base (result i32) local.get $2 i64.extend_i32_u - local.tee $4 - local.set $7 + local.tee $6 + local.set $3 local.get $1 - local.tee $0 + local.tee $2 i32.popcnt i32.const 1 i32.eq if i32.const 63 - local.get $7 + local.get $3 i64.clz i32.wrap_i64 i32.sub i32.const 31 - local.get $0 + local.get $2 i32.clz i32.sub i32.div_u @@ -23897,25 +23890,25 @@ i32.add br $__inlined_func$~lib/util/number/ulog_base end - local.get $0 + local.get $2 i64.extend_i32_s - local.tee $3 - local.set $6 + local.tee $7 + local.set $4 i32.const 1 local.set $0 loop $while-continue|00 - local.get $6 - local.get $7 - i64.le_u + local.get $3 + local.get $4 + i64.ge_u if - local.get $7 - local.get $6 + local.get $3 + local.get $4 i64.div_u - local.set $7 - local.get $6 - local.get $6 + local.set $3 + local.get $4 + local.get $4 i64.mul - local.set $6 + local.set $4 local.get $0 i32.const 1 i32.shl @@ -23924,14 +23917,14 @@ end end loop $while-continue|1 - local.get $7 + local.get $3 i64.const 1 i64.ge_u if - local.get $7 local.get $3 + local.get $7 i64.div_u - local.set $7 + local.set $3 local.get $0 i32.const 1 i32.add @@ -23950,18 +23943,18 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $1 i32.store - local.get $8 - local.get $4 - local.get $0 local.get $1 + local.get $6 + local.get $0 + local.get $2 call $~lib/util/number/utoa64_any_core end end local.get $5 if - local.get $8 + local.get $1 i32.const 45 i32.store16 end @@ -23969,7 +23962,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 + local.get $1 ) (func $~lib/util/number/utoa32 (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -24026,62 +24019,61 @@ if global.get $~lib/memory/__stack_pointer local.get $0 - local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $0 i32.const 100000000 i32.ge_u i32.add end end - local.tee $1 + local.tee $2 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 - local.get $0 local.get $1 + local.get $0 + local.get $2 call $~lib/util/number/utoa32_dec_lut else local.get $1 @@ -24097,17 +24089,17 @@ i32.shr_s i32.const 1 i32.add - local.tee $1 + local.tee $2 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store local.get $0 i64.extend_i32_u local.set $3 - local.get $1 + local.get $2 local.set $0 loop $while-continue|0 local.get $0 @@ -24120,7 +24112,7 @@ local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.add local.get $3 i32.wrap_i64 @@ -24143,7 +24135,7 @@ i32.const 1 i32.and if - local.get $2 + local.get $1 local.get $3 i32.wrap_i64 i32.const 6 @@ -24161,8 +24153,7 @@ local.tee $5 local.set $3 local.get $1 - local.set $0 - local.get $1 + local.tee $2 i32.popcnt i32.const 1 i32.eq @@ -24173,7 +24164,7 @@ i32.wrap_i64 i32.sub i32.const 31 - local.get $0 + local.get $2 i32.clz i32.sub i32.div_u @@ -24181,7 +24172,7 @@ i32.add br $__inlined_func$~lib/util/number/ulog_base end - local.get $0 + local.get $2 i64.extend_i32_s local.tee $6 local.set $4 @@ -24232,12 +24223,12 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 local.get $5 local.get $0 - local.get $1 + local.get $2 call $~lib/util/number/utoa64_any_core end end @@ -24245,7 +24236,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 ) (func $~lib/util/number/utoa64 (param $0 i64) (param $1 i32) (result i32) (local $2 i64) @@ -24501,8 +24492,6 @@ local.get $0 local.set $2 local.get $1 - local.set $3 - local.get $1 i32.popcnt i32.const 1 i32.eq @@ -24513,7 +24502,7 @@ i32.wrap_i64 i32.sub i32.const 31 - local.get $3 + local.get $1 i32.clz i32.sub i32.div_u @@ -24521,7 +24510,7 @@ i32.add br $__inlined_func$~lib/util/number/ulog_base end - local.get $3 + local.get $1 i64.extend_i32_s local.tee $5 local.set $4 @@ -24859,8 +24848,6 @@ local.get $0 local.set $2 local.get $1 - local.set $3 - local.get $1 i32.popcnt i32.const 1 i32.eq @@ -24871,7 +24858,7 @@ i32.wrap_i64 i32.sub i32.const 31 - local.get $3 + local.get $1 i32.clz i32.sub i32.div_u @@ -24879,7 +24866,7 @@ i32.add br $__inlined_func$~lib/util/number/ulog_base end - local.get $3 + local.get $1 i64.extend_i32_s local.tee $6 local.set $5 @@ -25079,16 +25066,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $0 i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $0 local.get $1 local.get $2 select @@ -25097,7 +25084,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $3 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/symbol.optimized.wat b/tests/compiler/std/symbol.optimized.wat index 3cb267fd69..ce640522fd 100644 --- a/tests/compiler/std/symbol.optimized.wat +++ b/tests/compiler/std/symbol.optimized.wat @@ -225,18 +225,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 19084 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -250,9 +249,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -262,15 +261,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -311,20 +310,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -756,9 +755,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -805,6 +801,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1558,18 +1557,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $3 + local.get $0 + i32.const 16 + i32.add local.tee $4 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1580,13 +1578,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $4 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $4 i32.const 19 i32.add i32.const -16 @@ -1594,32 +1592,32 @@ i32.const 4 i32.sub end - local.tee $3 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $3 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $3 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $3 + local.get $5 i32.add else - local.get $3 + local.get $5 end i32.const 4 - local.get $4 + local.get $3 i32.load offset=1568 local.get $2 i32.const 16 @@ -1635,16 +1633,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $4 local.get $2 - local.get $5 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1652,7 +1650,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $2 i32.const 16 i32.shl @@ -1660,8 +1658,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1678,7 +1676,7 @@ i32.load i32.const -4 i32.and - local.get $3 + local.get $5 i32.lt_u if i32.const 0 @@ -1688,13 +1686,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $3 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1707,40 +1705,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $3 + local.get $5 i32.sub - local.tee $6 + local.tee $4 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $3 + local.get $5 i32.or i32.store - local.get $3 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $3 - local.get $6 + local.tee $5 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $3 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -2088,14 +2086,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -2657,95 +2655,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -2776,39 +2774,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 @@ -3320,7 +3318,7 @@ if local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.const 1 i32.and if (result i32) @@ -3329,9 +3327,9 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.load - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 i32.const 1056 call $~lib/string/String.__eq end @@ -3343,7 +3341,7 @@ local.get $0 return end - local.get $1 + local.get $2 i32.const -2 i32.and local.set $0 @@ -3555,8 +3553,6 @@ global.get $~lib/symbol/stringToId local.tee $5 i32.store - local.get $2 - local.set $1 local.get $0 i32.const 4 i32.sub @@ -3565,6 +3561,8 @@ i32.const 2700 i32.lt_s br_if $folding-inner0 + local.get $2 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -4897,16 +4895,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $0 i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $0 local.get $1 local.get $2 select @@ -4915,7 +4913,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $3 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/std/typedarray.optimized.wat b/tests/compiler/std/typedarray.optimized.wat index 035c82760a..7ad93bab88 100644 --- a/tests/compiler/std/typedarray.optimized.wat +++ b/tests/compiler/std/typedarray.optimized.wat @@ -767,18 +767,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 33012 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -792,9 +791,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -804,15 +803,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -853,20 +852,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -1298,9 +1297,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -1347,6 +1343,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1540,7 +1539,7 @@ end global.get $~lib/rt/itcms/white i32.eqz - local.set $2 + local.set $1 global.get $~lib/rt/itcms/iter i32.load offset=4 i32.const -4 @@ -1557,11 +1556,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -1603,9 +1602,9 @@ if local.get $0 i32.load - local.tee $1 + local.tee $2 if - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 @@ -1629,11 +1628,11 @@ i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.ne if local.get $0 - local.get $2 + local.get $1 local.get $0 i32.load offset=4 i32.const -4 @@ -1659,7 +1658,7 @@ global.set $~lib/rt/itcms/fromSpace local.get $0 global.set $~lib/rt/itcms/toSpace - local.get $2 + local.get $1 global.set $~lib/rt/itcms/white local.get $0 i32.load offset=4 @@ -2128,15 +2127,15 @@ i32.and local.tee $4 i32.add - local.tee $0 + local.tee $5 local.get $1 i32.const 255 i32.and i32.const 16843009 i32.mul - local.tee $5 + local.tee $0 i32.store - local.get $0 + local.get $5 local.get $2 local.get $4 i32.sub @@ -2147,66 +2146,66 @@ local.tee $1 i32.const 4 i32.sub - local.get $5 + local.get $0 i32.store local.get $2 i32.const 8 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $0 local.get $5 - i32.store offset=4 local.get $0 + i32.store offset=4 local.get $5 + local.get $0 i32.store offset=8 local.get $1 i32.const 12 i32.sub - local.get $5 + local.get $0 i32.store local.get $1 i32.const 8 i32.sub - local.get $5 + local.get $0 i32.store local.get $2 i32.const 24 i32.le_u br_if $~lib/util/memory/memset|inlined.0 - local.get $0 local.get $5 - i32.store offset=12 local.get $0 + i32.store offset=12 local.get $5 - i32.store offset=16 local.get $0 + i32.store offset=16 local.get $5 - i32.store offset=20 local.get $0 + i32.store offset=20 local.get $5 + local.get $0 i32.store offset=24 local.get $1 i32.const 28 i32.sub - local.get $5 + local.get $0 i32.store local.get $1 i32.const 24 i32.sub - local.get $5 + local.get $0 i32.store local.get $1 i32.const 20 i32.sub - local.get $5 + local.get $0 i32.store local.get $1 i32.const 16 i32.sub - local.get $5 - i32.store - local.get $0 local.get $0 + i32.store + local.get $5 + local.get $5 i32.const 4 i32.and i32.const 24 @@ -2218,7 +2217,7 @@ local.get $4 i32.sub local.set $2 - local.get $5 + local.get $0 i64.extend_i32_u local.tee $3 i64.const 32 @@ -2315,17 +2314,15 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $2 + local.get $0 + i32.const 16 + i32.add call $~lib/rt/tlsf/allocateBlock local.tee $2 local.get $1 @@ -2334,26 +2331,26 @@ local.get $0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $3 i32.load offset=8 - local.set $3 + local.set $1 local.get $2 - local.get $1 + local.get $3 global.get $~lib/rt/itcms/white i32.or i32.store offset=4 local.get $2 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and local.get $2 i32.or i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -3142,8 +3139,8 @@ (func $~lib/util/sort/extendRunRight (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (local $4 i32) (local $5 f64) - (local $6 f64) - (local $7 i32) + (local $6 i32) + (local $7 f64) local.get $1 local.get $2 i32.eq @@ -3184,9 +3181,9 @@ i32.shl local.get $0 i32.add - local.tee $7 + local.tee $6 f64.load offset=8 - local.get $7 + local.get $6 f64.load i32.const 2 global.set $~argumentsLength @@ -3536,10 +3533,10 @@ local.get $1 i32.clz i32.sub - local.tee $7 + local.tee $8 i32.const 2 i32.shl - local.tee $6 + local.tee $7 i32.const 1 i32.shl local.set $5 @@ -3554,14 +3551,12 @@ i32.const 4 i32.add local.tee $13 - local.get $6 + local.get $7 i32.add local.set $14 - i32.const 0 - local.set $6 loop $for-loop|1 local.get $6 - local.get $7 + local.get $8 i32.lt_u if local.get $6 @@ -3578,17 +3573,15 @@ br $for-loop|1 end end - local.get $1 - i32.const 3 - i32.shl - local.set $5 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $5 + local.get $1 + i32.const 3 + i32.shl call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add @@ -4440,95 +4433,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -4559,39 +4552,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 @@ -5003,10 +4996,10 @@ local.get $4 i32.lt_s select - local.set $3 + local.set $5 local.get $0 i32.load offset=4 - local.tee $5 + local.tee $3 local.get $1 i32.const 0 i32.lt_s @@ -5056,14 +5049,14 @@ local.tee $2 i32.const 2 i32.shl - local.get $5 - i32.add local.get $3 + i32.add + local.get $5 i32.const 0 i32.lt_s if (result i32) - local.get $3 local.get $4 + local.get $5 i32.add local.tee $3 i32.const 0 @@ -5072,11 +5065,11 @@ i32.gt_s select else - local.get $3 + local.get $5 local.get $4 - local.get $3 local.get $4 - i32.lt_s + local.get $5 + i32.gt_s select end local.get $2 @@ -6031,7 +6024,7 @@ block $__inlined_func$~lib/math/NativeMathf.mod (result f32) local.get $0 i32.reinterpret_f32 - local.tee $1 + local.tee $3 i32.const 23 i32.shr_u i32.const 255 @@ -6048,37 +6041,33 @@ f32.div br $__inlined_func$~lib/math/NativeMathf.mod end - local.get $1 + local.get $3 i32.const 1 i32.shl - local.tee $3 + local.tee $1 i32.const -2147483648 i32.le_u if local.get $0 - local.get $3 + local.get $1 i32.const -2147483648 i32.ne f32.convert_i32_u f32.mul br $__inlined_func$~lib/math/NativeMathf.mod end - local.get $1 - i32.const -2147483648 - i32.and - local.set $3 local.get $2 if (result i32) - local.get $1 + local.get $3 i32.const 8388607 i32.and i32.const 8388608 i32.or else - local.get $1 + local.get $3 i32.const 1 local.get $2 - local.get $1 + local.get $3 i32.const 9 i32.shl i32.clz @@ -6121,7 +6110,6 @@ br $while-continue|0 end end - local.get $2 local.get $1 i32.const 8388608 i32.ge_u @@ -6139,32 +6127,37 @@ i32.sub local.set $1 end + local.get $3 + i32.const -2147483648 + i32.and + local.set $3 + local.get $2 local.get $1 i32.const 8 i32.shl i32.clz - local.tee $2 + local.tee $4 i32.sub - local.set $4 + local.set $2 local.get $1 - local.get $2 + local.get $4 i32.shl local.set $1 - local.get $4 + local.get $2 i32.const 0 i32.gt_s if (result i32) local.get $1 i32.const 8388608 i32.sub - local.get $4 + local.get $2 i32.const 23 i32.shl i32.or else local.get $1 i32.const 1 - local.get $4 + local.get $2 i32.sub i32.shr_u end @@ -6188,7 +6181,7 @@ i64.shr_u i64.const 2047 i64.and - local.tee $5 + local.tee $6 i64.const 2047 i64.eq if @@ -6215,22 +6208,18 @@ f64.mul br $__inlined_func$~lib/math/NativeMath.mod end - local.get $4 - i64.const 63 - i64.shr_u - local.set $6 - local.get $5 + local.get $6 i64.eqz if (result i64) local.get $4 i64.const 1 - local.get $5 + local.get $6 local.get $4 i64.const 12 i64.shl i64.clz i64.sub - local.tee $5 + local.tee $6 i64.sub i64.shl else @@ -6242,7 +6231,7 @@ end local.set $3 loop $while-continue|0 - local.get $5 + local.get $6 i64.const 1024 i64.gt_s if @@ -6267,14 +6256,13 @@ i64.const 1 i64.shl local.set $3 - local.get $5 + local.get $6 i64.const 1 i64.sub - local.set $5 + local.set $6 br $while-continue|0 end end - local.get $5 local.get $3 i64.const 4503599627370496 i64.ge_u @@ -6292,36 +6280,41 @@ i64.sub local.set $3 end + local.get $4 + i64.const 63 + i64.shr_u + local.set $5 + local.get $6 local.get $3 i64.const 11 i64.shl i64.clz - local.tee $5 + local.tee $4 i64.sub - local.set $4 + local.set $6 local.get $3 - local.get $5 + local.get $4 i64.shl local.set $3 - local.get $4 + local.get $6 i64.const 0 i64.gt_s if (result i64) local.get $3 i64.const 4503599627370496 i64.sub - local.get $4 + local.get $6 i64.const 52 i64.shl i64.or else local.get $3 i64.const 1 - local.get $4 + local.get $6 i64.sub i64.shr_u end - local.get $6 + local.get $5 i64.const 63 i64.shl i64.or @@ -6488,18 +6481,18 @@ i32.load offset=8 i32.const 1 i32.shr_u - local.tee $5 + local.tee $4 i32.const 1 i32.gt_u if - local.get $5 + local.get $4 i32.const 1 i32.shr_u local.set $3 - local.get $5 + local.get $4 i32.const 2 i32.sub - local.set $6 + local.set $5 loop $while-continue|0 local.get $3 local.get $1 @@ -6507,31 +6500,31 @@ i32.add i32.gt_u if - local.get $6 + local.get $5 local.get $1 i32.sub i32.const 1 i32.shl local.get $2 i32.add - local.tee $7 + local.tee $6 i32.load i32.const 16 i32.rotr - local.set $4 - local.get $7 + local.set $7 + local.get $6 local.get $1 i32.const 1 i32.shl local.get $2 i32.add - local.tee $7 + local.tee $6 i32.load i32.const 16 i32.rotr i32.store + local.get $6 local.get $7 - local.get $4 i32.store local.get $1 i32.const 2 @@ -6540,7 +6533,7 @@ br $while-continue|0 end end - local.get $5 + local.get $4 i32.const 1 i32.sub local.set $4 @@ -6603,81 +6596,79 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 7728 i32.store - local.get $1 + local.get $2 i32.const 7740 i32.load - local.tee $1 + local.tee $3 call $~lib/typedarray/Int8Array#constructor local.tee $2 i32.store offset=4 loop $for-loop|0 - local.get $0 local.get $1 + local.get $3 i32.lt_s if local.get $2 - local.get $0 + local.get $1 i32.const 7728 - local.get $0 + local.get $1 call $~lib/array/Array#__get i32.extend8_s call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end - i32.const 0 - local.set $1 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|0 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $3 i32.add i32.load8_u i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|0 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -6687,46 +6678,46 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.01 local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.01 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|03 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $3 i32.add i32.load8_u i32.const 11 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.01 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|03 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -6738,46 +6729,46 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.05 local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.05 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|07 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $3 i32.add i32.load8_u i32.const 255 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.05 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|07 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -6789,46 +6780,46 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.09 local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.09 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|011 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $3 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.09 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|011 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -6840,46 +6831,46 @@ unreachable end i32.const 2 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.013 local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 2 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.013 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|015 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $3 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.013 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|015 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -6891,46 +6882,46 @@ unreachable end i32.const 3 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.017 local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 3 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.017 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|019 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $3 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.017 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|019 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -6942,46 +6933,46 @@ unreachable end i32.const 4 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.021 local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 4 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.021 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|023 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $3 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.021 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|023 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -6993,46 +6984,46 @@ unreachable end i32.const 10 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.025 local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 10 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.025 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|027 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $3 i32.add i32.load8_u i32.const 1 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.025 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|027 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -7044,53 +7035,53 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.029 local.get $2 i32.load offset=8 - local.tee $0 + local.tee $3 i32.const -100 i32.le_s i32.const 1 - local.get $0 + local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.029 - local.get $0 + local.get $3 i32.const 100 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 - local.set $3 + local.set $1 loop $while-continue|031 local.get $0 - local.get $1 - i32.gt_s + local.get $3 + i32.lt_s if + local.get $0 local.get $1 - local.get $3 i32.add i32.load8_u i32.const 1 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.029 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|031 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -7104,11 +7095,11 @@ i32.const 1 global.set $~argumentsLength local.get $2 - local.tee $1 + local.tee $0 i32.load offset=8 local.set $3 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 local.get $2 i32.load offset=8 @@ -7130,32 +7121,32 @@ i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|00 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 local.get $2 i32.add i32.load8_u i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|00 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -7166,58 +7157,58 @@ end i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 - local.set $3 + local.tee $3 + local.set $2 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.05 - local.get $2 + local.get $3 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.05 local.get $2 local.get $3 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.get $3 + local.get $2 local.get $2 local.get $3 - i32.le_s + i32.ge_s select - local.get $3 + local.get $2 i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|06 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 local.get $2 i32.add i32.load8_u i32.const 11 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.05 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|06 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -7230,58 +7221,58 @@ end i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 - local.set $3 + local.tee $3 + local.set $2 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.011 - local.get $2 + local.get $3 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.011 local.get $2 local.get $3 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.get $3 + local.get $2 local.get $2 local.get $3 - i32.le_s + i32.ge_s select - local.get $3 + local.get $2 i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|012 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 local.get $2 i32.add i32.load8_u i32.const 255 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.011 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|012 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -7294,58 +7285,58 @@ end i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 - local.set $3 + local.tee $3 + local.set $2 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.017 - local.get $2 + local.get $3 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.017 local.get $2 local.get $3 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.get $3 + local.get $2 local.get $2 local.get $3 - i32.le_s + i32.ge_s select - local.get $3 + local.get $2 i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|018 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 local.get $2 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.017 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|018 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -7357,50 +7348,50 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.019 - local.get $1 + local.get $0 local.tee $2 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.019 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 4 - local.get $1 + local.get $0 i32.const 4 i32.le_s select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|033 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 local.get $3 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.019 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|033 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -7412,49 +7403,49 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.035 local.get $2 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.035 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 3 - local.get $1 + local.get $0 i32.const 3 i32.le_s select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|037 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 local.get $3 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.035 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|037 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -7466,49 +7457,49 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.039 local.get $2 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.039 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 2 - local.get $1 + local.get $0 i32.const 2 i32.le_s select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|041 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 local.get $3 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.039 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|041 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -7520,49 +7511,49 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.043 local.get $2 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.043 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 100 - local.get $1 + local.get $0 i32.const 100 i32.le_s select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|045 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 local.get $3 i32.add i32.load8_u i32.const 1 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.043 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|045 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 1 i32.ne if @@ -7574,22 +7565,22 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.047 local.get $2 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.047 - local.get $0 + local.get $1 i32.const 10 i32.sub - local.set $1 + local.set $0 local.get $2 i32.load offset=4 - local.set $0 + local.set $1 loop $while-continue|049 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if @@ -7600,17 +7591,17 @@ i32.const 1 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.047 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|049 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -7622,22 +7613,22 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.051 local.get $2 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.051 - local.get $0 + local.get $1 i32.const 11 i32.sub - local.set $1 + local.set $0 local.get $2 i32.load offset=4 - local.set $0 + local.set $1 loop $while-continue|053 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if @@ -7648,17 +7639,17 @@ i32.const 1 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.051 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|053 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -7674,14 +7665,14 @@ i32.const 4 i32.const 9 call $~lib/typedarray/Int8Array#subarray - local.tee $2 + local.tee $4 i32.store offset=8 i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.055 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -7690,33 +7681,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.055 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|057 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $2 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.055 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|057 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -7728,11 +7719,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.059 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -7741,33 +7732,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.059 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|061 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $2 i32.add i32.load8_u i32.const 4 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.059 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|061 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -7777,11 +7768,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.063 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -7790,33 +7781,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.063 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|065 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $2 i32.add i32.load8_u i32.const 5 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.063 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|065 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 1 i32.ne if @@ -7828,11 +7819,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.067 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -7841,33 +7832,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.067 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|069 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $2 i32.add i32.load8_u i32.const 9 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.067 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|069 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -7879,11 +7870,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.071 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -7892,33 +7883,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.071 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|073 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $2 i32.add i32.load8_u i32.const 10 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.071 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|073 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -7930,11 +7921,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.075 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -7943,33 +7934,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.075 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|077 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $2 i32.add i32.load8_u i32.const 11 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.075 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|077 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -7981,11 +7972,11 @@ unreachable end i32.const 1 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.079 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 1 @@ -7994,33 +7985,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.079 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|081 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $2 i32.add i32.load8_u i32.const 5 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.079 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|081 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 1 i32.ne if @@ -8032,11 +8023,11 @@ unreachable end i32.const 2 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.083 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 2 @@ -8045,33 +8036,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.083 - local.get $2 + local.get $4 i32.load offset=4 local.set $2 loop $while-continue|085 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 local.get $2 i32.add i32.load8_u i32.const 5 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.083 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|085 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -8109,82 +8100,80 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 7728 i32.store - local.get $1 + local.get $2 i32.const 7740 i32.load - local.tee $1 + local.tee $3 call $~lib/typedarray/Uint8Array#constructor local.tee $2 i32.store offset=4 loop $for-loop|0 - local.get $0 local.get $1 + local.get $3 i32.lt_s if local.get $2 - local.get $0 + local.get $1 i32.const 7728 - local.get $0 + local.get $1 call $~lib/array/Array#__get i32.const 255 i32.and call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end - i32.const 0 - local.set $1 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|0 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $3 i32.add i32.load8_u i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|0 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -8194,46 +8183,46 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.01 local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.01 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|03 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $3 i32.add i32.load8_u i32.const 11 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.01 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|03 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -8245,46 +8234,46 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|07 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $3 i32.add i32.load8_u i32.const 255 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|07 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -8296,46 +8285,46 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.09 local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.09 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|011 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $3 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.09 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|011 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -8347,46 +8336,46 @@ unreachable end i32.const 2 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.013 local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 2 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.013 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|015 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $3 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.013 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|015 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -8398,46 +8387,46 @@ unreachable end i32.const 3 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 3 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|019 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $3 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|019 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -8449,46 +8438,46 @@ unreachable end i32.const 4 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.021 local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 4 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.021 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|023 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $3 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.021 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|023 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -8500,46 +8489,46 @@ unreachable end i32.const 10 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.025 local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 10 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.025 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|027 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $3 i32.add i32.load8_u i32.const 1 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.025 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|027 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -8551,53 +8540,53 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.029 local.get $2 i32.load offset=8 - local.tee $0 + local.tee $3 i32.const -100 i32.le_s i32.const 1 - local.get $0 + local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.029 - local.get $0 + local.get $3 i32.const 100 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 - local.set $3 + local.set $1 loop $while-continue|031 local.get $0 - local.get $1 - i32.gt_s + local.get $3 + i32.lt_s if + local.get $0 local.get $1 - local.get $3 i32.add i32.load8_u i32.const 1 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.029 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|031 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -8611,11 +8600,11 @@ i32.const 1 global.set $~argumentsLength local.get $2 - local.tee $1 + local.tee $0 i32.load offset=8 local.set $3 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 local.get $2 i32.load offset=8 @@ -8637,32 +8626,32 @@ i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|00 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 local.get $2 i32.add i32.load8_u i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|00 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -8673,58 +8662,58 @@ end i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 - local.set $3 + local.tee $3 + local.set $2 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 - local.get $2 + local.get $3 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 local.get $2 local.get $3 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.get $3 + local.get $2 local.get $2 local.get $3 - i32.le_s + i32.ge_s select - local.get $3 + local.get $2 i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|06 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 local.get $2 i32.add i32.load8_u i32.const 11 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|06 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -8737,58 +8726,58 @@ end i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 - local.set $3 + local.tee $3 + local.set $2 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.011 - local.get $2 + local.get $3 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.011 local.get $2 local.get $3 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.get $3 + local.get $2 local.get $2 local.get $3 - i32.le_s + i32.ge_s select - local.get $3 + local.get $2 i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|012 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 local.get $2 i32.add i32.load8_u i32.const 255 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.011 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|012 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -8801,58 +8790,58 @@ end i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 - local.set $3 + local.tee $3 + local.set $2 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 - local.get $2 + local.get $3 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 local.get $2 local.get $3 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.get $3 + local.get $2 local.get $2 local.get $3 - i32.le_s + i32.ge_s select - local.get $3 + local.get $2 i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|018 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 local.get $2 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|018 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -8864,50 +8853,50 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.019 - local.get $1 + local.get $0 local.tee $2 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.019 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 4 - local.get $1 + local.get $0 i32.const 4 i32.le_s select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|033 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 local.get $3 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.019 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|033 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -8919,49 +8908,49 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.035 local.get $2 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.035 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 3 - local.get $1 + local.get $0 i32.const 3 i32.le_s select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|037 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 local.get $3 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.035 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|037 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -8973,49 +8962,49 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.039 local.get $2 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.039 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 2 - local.get $1 + local.get $0 i32.const 2 i32.le_s select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|041 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 local.get $3 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.039 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|041 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -9027,49 +9016,49 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.043 local.get $2 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.043 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 100 - local.get $1 + local.get $0 i32.const 100 i32.le_s select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|045 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 local.get $3 i32.add i32.load8_u i32.const 1 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.043 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|045 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 1 i32.ne if @@ -9081,22 +9070,22 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.047 local.get $2 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.047 - local.get $0 + local.get $1 i32.const 10 i32.sub - local.set $1 + local.set $0 local.get $2 i32.load offset=4 - local.set $0 + local.set $1 loop $while-continue|049 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if @@ -9107,17 +9096,17 @@ i32.const 1 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.047 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|049 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -9129,22 +9118,22 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.051 local.get $2 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.051 - local.get $0 + local.get $1 i32.const 11 i32.sub - local.set $1 + local.set $0 local.get $2 i32.load offset=4 - local.set $0 + local.set $1 loop $while-continue|053 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if @@ -9155,17 +9144,17 @@ i32.const 1 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.051 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|053 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -9180,14 +9169,14 @@ local.get $2 i32.const 9 call $~lib/typedarray/Uint8Array#subarray - local.tee $2 + local.tee $4 i32.store offset=8 i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.055 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -9196,33 +9185,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.055 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|057 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $2 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.055 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|057 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -9234,11 +9223,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.059 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -9247,33 +9236,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.059 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|061 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $2 i32.add i32.load8_u i32.const 4 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.059 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|061 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -9283,11 +9272,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.063 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -9296,33 +9285,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.063 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|065 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $2 i32.add i32.load8_u i32.const 5 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.063 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|065 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 1 i32.ne if @@ -9334,11 +9323,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.067 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -9347,33 +9336,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.067 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|069 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $2 i32.add i32.load8_u i32.const 9 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.067 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|069 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -9385,11 +9374,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.071 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -9398,33 +9387,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.071 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|073 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $2 i32.add i32.load8_u i32.const 10 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.071 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|073 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -9436,11 +9425,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.075 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -9449,33 +9438,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.075 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|077 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $2 i32.add i32.load8_u i32.const 11 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.075 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|077 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -9487,11 +9476,11 @@ unreachable end i32.const 1 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.079 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 1 @@ -9500,33 +9489,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.079 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|081 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $2 i32.add i32.load8_u i32.const 5 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.079 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|081 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 1 i32.ne if @@ -9538,11 +9527,11 @@ unreachable end i32.const 2 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.083 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 2 @@ -9551,33 +9540,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.083 - local.get $2 + local.get $4 i32.load offset=4 local.set $2 loop $while-continue|085 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 local.get $2 i32.add i32.load8_u i32.const 5 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.083 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|085 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -9615,82 +9604,80 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 7728 i32.store - local.get $1 + local.get $2 i32.const 7740 i32.load - local.tee $1 + local.tee $3 call $~lib/typedarray/Uint8ClampedArray#constructor local.tee $2 i32.store offset=4 loop $for-loop|0 - local.get $0 local.get $1 + local.get $3 i32.lt_s if local.get $2 - local.get $0 + local.get $1 i32.const 7728 - local.get $0 + local.get $1 call $~lib/array/Array#__get i32.const 255 i32.and call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end - i32.const 0 - local.set $1 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|0 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $3 i32.add i32.load8_u i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|0 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -9700,46 +9687,46 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.01 local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.01 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|03 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $3 i32.add i32.load8_u i32.const 11 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.01 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|03 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -9751,46 +9738,46 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|07 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $3 i32.add i32.load8_u i32.const 255 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|07 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -9802,46 +9789,46 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.09 local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 0 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.09 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|011 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $3 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.09 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|011 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -9853,46 +9840,46 @@ unreachable end i32.const 2 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.013 local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 2 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.013 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|015 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $3 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.013 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|015 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -9904,46 +9891,46 @@ unreachable end i32.const 3 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 3 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|019 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $3 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|019 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -9955,46 +9942,46 @@ unreachable end i32.const 4 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.021 local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 4 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.021 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|023 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $3 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.021 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|023 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -10006,46 +9993,46 @@ unreachable end i32.const 10 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.025 local.get $2 i32.load offset=8 - local.tee $3 + local.tee $4 i32.const 10 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.025 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|027 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $3 i32.add i32.load8_u i32.const 1 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.025 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|027 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -10057,53 +10044,53 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.029 local.get $2 i32.load offset=8 - local.tee $0 + local.tee $3 i32.const -100 i32.le_s i32.const 1 - local.get $0 + local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.029 - local.get $0 + local.get $3 i32.const 100 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 - local.set $3 + local.set $1 loop $while-continue|031 local.get $0 - local.get $1 - i32.gt_s + local.get $3 + i32.lt_s if + local.get $0 local.get $1 - local.get $3 i32.add i32.load8_u i32.const 1 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.029 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|031 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -10117,11 +10104,11 @@ i32.const 1 global.set $~argumentsLength local.get $2 - local.tee $1 + local.tee $0 i32.load offset=8 local.set $3 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 local.get $2 i32.load offset=8 @@ -10143,32 +10130,32 @@ i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|00 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 local.get $2 i32.add i32.load8_u i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|00 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -10179,58 +10166,58 @@ end i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 - local.set $3 + local.tee $3 + local.set $2 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 - local.get $2 + local.get $3 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 local.get $2 local.get $3 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.get $3 + local.get $2 local.get $2 local.get $3 - i32.le_s + i32.ge_s select - local.get $3 + local.get $2 i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|06 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 local.get $2 i32.add i32.load8_u i32.const 11 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.05 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|06 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -10243,58 +10230,58 @@ end i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 - local.set $3 + local.tee $3 + local.set $2 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.011 - local.get $2 + local.get $3 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.011 local.get $2 local.get $3 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.get $3 + local.get $2 local.get $2 local.get $3 - i32.le_s + i32.ge_s select - local.get $3 + local.get $2 i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|012 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 local.get $2 i32.add i32.load8_u i32.const 255 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.011 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|012 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -10307,58 +10294,58 @@ end i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $0 i32.load offset=8 - local.tee $2 - local.set $3 + local.tee $3 + local.set $2 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 - local.get $2 + local.get $3 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 local.get $2 local.get $3 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.get $3 + local.get $2 local.get $2 local.get $3 - i32.le_s + i32.ge_s select - local.get $3 + local.get $2 i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|018 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 local.get $2 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.017 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|018 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -10370,50 +10357,50 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.019 - local.get $1 + local.get $0 local.tee $2 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.019 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 4 - local.get $1 + local.get $0 i32.const 4 i32.le_s select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|033 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 local.get $3 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.019 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|033 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -10425,49 +10412,49 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.035 local.get $2 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.035 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 3 - local.get $1 + local.get $0 i32.const 3 i32.le_s select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|037 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 local.get $3 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.035 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|037 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -10479,49 +10466,49 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.039 local.get $2 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.039 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 2 - local.get $1 + local.get $0 i32.const 2 i32.le_s select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|041 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 local.get $3 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.039 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|041 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -10533,49 +10520,49 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.043 local.get $2 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.043 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 100 - local.get $1 + local.get $0 i32.const 100 i32.le_s select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|045 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 local.get $3 i32.add i32.load8_u i32.const 1 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.043 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|045 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 1 i32.ne if @@ -10587,22 +10574,22 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.047 local.get $2 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.047 - local.get $0 + local.get $1 i32.const 10 i32.sub - local.set $1 + local.set $0 local.get $2 i32.load offset=4 - local.set $0 + local.set $1 loop $while-continue|049 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if @@ -10613,17 +10600,17 @@ i32.const 1 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.047 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|049 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -10635,22 +10622,22 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.051 local.get $2 i32.load offset=8 - local.tee $0 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.051 - local.get $0 + local.get $1 i32.const 11 i32.sub - local.set $1 + local.set $0 local.get $2 i32.load offset=4 - local.set $0 + local.set $1 loop $while-continue|053 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if @@ -10661,17 +10648,17 @@ i32.const 1 i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.051 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|053 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -10686,14 +10673,14 @@ local.get $2 i32.const 9 call $~lib/typedarray/Uint8ClampedArray#subarray - local.tee $2 + local.tee $4 i32.store offset=8 i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.055 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -10702,33 +10689,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.055 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|057 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $2 i32.add i32.load8_u i32.const 3 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.055 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|057 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -10740,11 +10727,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.059 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -10753,33 +10740,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.059 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|061 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $2 i32.add i32.load8_u i32.const 4 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.059 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|061 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -10789,11 +10776,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.063 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -10802,33 +10789,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.063 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|065 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $2 i32.add i32.load8_u i32.const 5 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.063 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|065 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 1 i32.ne if @@ -10840,11 +10827,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.067 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -10853,33 +10840,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.067 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|069 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $2 i32.add i32.load8_u i32.const 9 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.067 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|069 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -10891,11 +10878,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.071 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -10904,33 +10891,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.071 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|073 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $2 i32.add i32.load8_u i32.const 10 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.071 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|073 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -10942,11 +10929,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.075 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 0 @@ -10955,33 +10942,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.075 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|077 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $2 i32.add i32.load8_u i32.const 11 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.075 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|077 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -10993,11 +10980,11 @@ unreachable end i32.const 1 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.079 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 1 @@ -11006,33 +10993,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.079 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|081 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 - local.get $4 + local.get $0 + local.tee $1 + local.get $2 i32.add i32.load8_u i32.const 5 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.079 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|081 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 1 i32.ne if @@ -11044,11 +11031,11 @@ unreachable end i32.const 2 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.083 - local.get $2 + local.get $4 i32.load offset=8 local.tee $3 i32.const 2 @@ -11057,33 +11044,33 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.083 - local.get $2 + local.get $4 i32.load offset=4 local.set $2 loop $while-continue|085 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 local.get $2 i32.add i32.load8_u i32.const 5 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.083 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|085 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -11102,6 +11089,7 @@ (func $~lib/typedarray/Int16Array#lastIndexOf@varargs (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) + (local $4 i32) block $1of1 block $0of1 block $outOfRange @@ -11116,59 +11104,58 @@ i32.load offset=8 i32.const 1 i32.shr_u - local.set $2 + local.set $3 end block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 (result i32) - local.get $1 - local.set $3 i32.const -1 local.get $0 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $1 + local.tee $4 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 drop local.get $1 - local.get $2 + local.set $2 + local.get $3 + local.get $4 i32.add - local.get $1 + local.get $4 i32.const 1 i32.sub - local.get $2 - local.get $1 - local.get $2 - i32.le_s + local.get $3 + local.get $3 + local.get $4 + i32.ge_s select - local.get $2 + local.get $3 i32.const 0 - i32.lt_s + i32.lt_u select local.set $1 local.get $0 i32.load offset=4 - local.set $2 + local.set $0 loop $while-continue|0 local.get $1 i32.const 0 i32.ge_s if local.get $1 - local.tee $0 local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $0 i32.add i32.load16_u - local.get $3 + local.get $2 i32.const 65535 i32.and i32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 drop - local.get $0 + local.get $1 i32.const 1 i32.sub local.set $1 @@ -11184,6 +11171,7 @@ (local $2 i32) (local $3 i32) (local $4 i32) + (local $5 i32) global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -11214,14 +11202,14 @@ i32.load local.tee $0 call $~lib/typedarray/Int16Array#constructor - local.tee $2 + local.tee $3 i32.store offset=4 loop $for-loop|0 local.get $0 local.get $1 i32.gt_s if - local.get $2 + local.get $3 local.get $1 i32.const 7728 local.get $1 @@ -11240,29 +11228,29 @@ i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 - local.get $2 + local.get $3 i32.load offset=4 - local.set $4 + local.set $5 loop $while-continue|0 local.get $1 - local.get $3 + local.get $4 i32.lt_s if local.get $1 local.tee $0 i32.const 1 i32.shl - local.get $4 + local.get $5 i32.add i32.load16_u i32.eqz @@ -11291,29 +11279,29 @@ i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.01 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.01 - local.get $2 + local.get $3 i32.load offset=4 - local.set $4 + local.set $5 loop $while-continue|02 local.get $1 - local.get $3 + local.get $4 i32.lt_s if local.get $1 local.tee $0 i32.const 1 i32.shl - local.get $4 + local.get $5 i32.add i32.load16_u i32.const 11 @@ -11345,29 +11333,29 @@ i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.04 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.04 - local.get $2 + local.get $3 i32.load offset=4 - local.set $4 + local.set $5 loop $while-continue|05 local.get $1 - local.get $3 + local.get $4 i32.lt_s if local.get $1 local.tee $0 i32.const 1 i32.shl - local.get $4 + local.get $5 i32.add i32.load16_u i32.const 65535 @@ -11399,29 +11387,29 @@ i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.07 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.07 - local.get $2 + local.get $3 i32.load offset=4 - local.set $4 + local.set $5 loop $while-continue|08 local.get $1 - local.get $3 + local.get $4 i32.lt_s if local.get $1 local.tee $0 i32.const 1 i32.shl - local.get $4 + local.get $5 i32.add i32.load16_u i32.const 3 @@ -11453,30 +11441,30 @@ i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.010 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.const 2 i32.le_u i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.010 - local.get $2 + local.get $3 i32.load offset=4 - local.set $4 + local.set $5 loop $while-continue|011 local.get $1 - local.get $3 + local.get $4 i32.lt_s if local.get $1 local.tee $0 i32.const 1 i32.shl - local.get $4 + local.get $5 i32.add i32.load16_u i32.const 3 @@ -11508,30 +11496,30 @@ i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.013 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.const 3 i32.le_u i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.013 - local.get $2 + local.get $3 i32.load offset=4 - local.set $4 + local.set $5 loop $while-continue|014 local.get $1 - local.get $3 + local.get $4 i32.lt_s if local.get $1 local.tee $0 i32.const 1 i32.shl - local.get $4 + local.get $5 i32.add i32.load16_u i32.const 3 @@ -11563,30 +11551,30 @@ i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.016 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.const 4 i32.le_u i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.016 - local.get $2 + local.get $3 i32.load offset=4 - local.set $4 + local.set $5 loop $while-continue|017 local.get $1 - local.get $3 + local.get $4 i32.lt_s if local.get $1 local.tee $0 i32.const 1 i32.shl - local.get $4 + local.get $5 i32.add i32.load16_u i32.const 3 @@ -11618,30 +11606,30 @@ i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.019 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.const 10 i32.le_u i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.019 - local.get $2 + local.get $3 i32.load offset=4 - local.set $4 + local.set $5 loop $while-continue|020 local.get $1 - local.get $3 + local.get $4 i32.lt_s if local.get $1 local.tee $0 i32.const 1 i32.shl - local.get $4 + local.get $5 i32.add i32.load16_u i32.const 1 @@ -11671,18 +11659,18 @@ i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.022 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.const -100 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.022 - local.get $3 + local.get $4 i32.const 100 i32.sub local.tee $0 @@ -11692,19 +11680,19 @@ i32.gt_s select local.set $1 - local.get $2 + local.get $3 i32.load offset=4 - local.set $4 + local.set $5 loop $while-continue|023 local.get $1 - local.get $3 + local.get $4 i32.lt_s if local.get $1 local.tee $0 i32.const 1 i32.shl - local.get $4 + local.get $5 i32.add i32.load16_u i32.const 1 @@ -11733,7 +11721,7 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $3 i32.const 0 call $~lib/typedarray/Int16Array#lastIndexOf@varargs if @@ -11746,7 +11734,7 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $3 i32.const 11 call $~lib/typedarray/Int16Array#lastIndexOf@varargs i32.const -1 @@ -11761,7 +11749,7 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $3 i32.const -1 call $~lib/typedarray/Int16Array#lastIndexOf@varargs i32.const -1 @@ -11776,7 +11764,7 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $3 i32.const 3 call $~lib/typedarray/Int16Array#lastIndexOf@varargs i32.const 3 @@ -11792,7 +11780,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u @@ -11808,7 +11796,7 @@ i32.le_u select local.set $1 - local.get $2 + local.get $3 i32.load offset=4 local.set $0 loop $while-continue|024 @@ -11849,7 +11837,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.01 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u @@ -11865,7 +11853,7 @@ i32.le_u select local.set $1 - local.get $2 + local.get $3 i32.load offset=4 local.set $0 loop $while-continue|03 @@ -11906,7 +11894,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.05 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u @@ -11922,7 +11910,7 @@ i32.le_u select local.set $1 - local.get $2 + local.get $3 i32.load offset=4 local.set $0 loop $while-continue|07 @@ -11963,7 +11951,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.09 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u @@ -11979,7 +11967,7 @@ i32.le_u select local.set $1 - local.get $2 + local.get $3 i32.load offset=4 local.set $0 loop $while-continue|01125 @@ -12020,7 +12008,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.013 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u @@ -12031,7 +12019,7 @@ i32.const 10 i32.sub local.set $1 - local.get $2 + local.get $3 i32.load offset=4 local.set $0 loop $while-continue|015 @@ -12072,7 +12060,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.017 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u @@ -12083,7 +12071,7 @@ i32.const 11 i32.sub local.set $1 - local.get $2 + local.get $3 i32.load offset=4 local.set $0 loop $while-continue|019 @@ -12122,17 +12110,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 9 call $~lib/typedarray/Int16Array#subarray - local.tee $2 + local.tee $1 i32.store offset=8 - i32.const 0 - local.set $1 i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.027 - local.get $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u @@ -12142,15 +12128,15 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.027 - local.get $2 + local.get $1 i32.load offset=4 local.set $4 loop $while-continue|028 - local.get $1 + local.get $2 local.get $3 i32.lt_s if - local.get $1 + local.get $2 local.tee $0 i32.const 1 i32.shl @@ -12163,7 +12149,7 @@ local.get $0 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|028 end end @@ -12182,11 +12168,11 @@ unreachable end i32.const 0 - local.set $1 + local.set $2 i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.030 - local.get $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u @@ -12196,15 +12182,15 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.030 - local.get $2 + local.get $1 i32.load offset=4 local.set $4 loop $while-continue|031 - local.get $1 + local.get $2 local.get $3 i32.lt_s if - local.get $1 + local.get $2 local.tee $0 i32.const 1 i32.shl @@ -12217,7 +12203,7 @@ local.get $0 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|031 end end @@ -12234,11 +12220,11 @@ unreachable end i32.const 0 - local.set $1 + local.set $2 i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.033 - local.get $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u @@ -12248,15 +12234,15 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.033 - local.get $2 + local.get $1 i32.load offset=4 local.set $4 loop $while-continue|034 - local.get $1 + local.get $2 local.get $3 i32.lt_s if - local.get $1 + local.get $2 local.tee $0 i32.const 1 i32.shl @@ -12269,7 +12255,7 @@ local.get $0 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|034 end end @@ -12288,11 +12274,11 @@ unreachable end i32.const 0 - local.set $1 + local.set $2 i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.036 - local.get $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u @@ -12302,15 +12288,15 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.036 - local.get $2 + local.get $1 i32.load offset=4 local.set $4 loop $while-continue|037 - local.get $1 + local.get $2 local.get $3 i32.lt_s if - local.get $1 + local.get $2 local.tee $0 i32.const 1 i32.shl @@ -12323,7 +12309,7 @@ local.get $0 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|037 end end @@ -12342,11 +12328,11 @@ unreachable end i32.const 0 - local.set $1 + local.set $2 i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.039 - local.get $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u @@ -12356,15 +12342,15 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.039 - local.get $2 + local.get $1 i32.load offset=4 local.set $4 loop $while-continue|040 - local.get $1 + local.get $2 local.get $3 i32.lt_s if - local.get $1 + local.get $2 local.tee $0 i32.const 1 i32.shl @@ -12377,7 +12363,7 @@ local.get $0 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|040 end end @@ -12396,11 +12382,11 @@ unreachable end i32.const 0 - local.set $1 + local.set $2 i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.042 - local.get $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u @@ -12410,15 +12396,15 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.042 - local.get $2 + local.get $1 i32.load offset=4 local.set $4 loop $while-continue|043 - local.get $1 + local.get $2 local.get $3 i32.lt_s if - local.get $1 + local.get $2 local.tee $0 i32.const 1 i32.shl @@ -12431,7 +12417,7 @@ local.get $0 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|043 end end @@ -12450,11 +12436,11 @@ unreachable end i32.const 1 - local.set $1 + local.set $2 i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.045 - local.get $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u @@ -12465,15 +12451,15 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.045 - local.get $2 + local.get $1 i32.load offset=4 local.set $4 loop $while-continue|046 - local.get $1 + local.get $2 local.get $3 i32.lt_s if - local.get $1 + local.get $2 local.tee $0 i32.const 1 i32.shl @@ -12486,7 +12472,7 @@ local.get $0 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|046 end end @@ -12505,11 +12491,11 @@ unreachable end i32.const 2 - local.set $1 + local.set $2 i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.048 - local.get $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u @@ -12520,28 +12506,28 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.048 - local.get $2 + local.get $1 i32.load offset=4 - local.set $2 + local.set $1 loop $while-continue|049 - local.get $1 + local.get $2 local.get $3 i32.lt_s if - local.get $1 + local.get $2 local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.add i32.load16_u i32.const 5 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.048 - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|049 end end @@ -12570,6 +12556,7 @@ (local $2 i32) (local $3 i32) (local $4 i32) + (local $5 i32) global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -12600,14 +12587,14 @@ i32.load local.tee $0 call $~lib/typedarray/Uint16Array#constructor - local.tee $2 + local.tee $3 i32.store offset=4 loop $for-loop|0 local.get $0 local.get $1 i32.gt_s if - local.get $2 + local.get $3 local.get $1 i32.const 7728 local.get $1 @@ -12627,29 +12614,29 @@ i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 - local.get $2 + local.get $3 i32.load offset=4 - local.set $4 + local.set $5 loop $while-continue|0 local.get $1 - local.get $3 + local.get $4 i32.lt_s if local.get $1 local.tee $0 i32.const 1 i32.shl - local.get $4 + local.get $5 i32.add i32.load16_u i32.eqz @@ -12678,29 +12665,29 @@ i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.01 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.01 - local.get $2 + local.get $3 i32.load offset=4 - local.set $4 + local.set $5 loop $while-continue|02 local.get $1 - local.get $3 + local.get $4 i32.lt_s if local.get $1 local.tee $0 i32.const 1 i32.shl - local.get $4 + local.get $5 i32.add i32.load16_u i32.const 11 @@ -12732,29 +12719,29 @@ i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.04 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.04 - local.get $2 + local.get $3 i32.load offset=4 - local.set $4 + local.set $5 loop $while-continue|05 local.get $1 - local.get $3 + local.get $4 i32.lt_s if local.get $1 local.tee $0 i32.const 1 i32.shl - local.get $4 + local.get $5 i32.add i32.load16_u i32.const 65535 @@ -12786,29 +12773,29 @@ i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.07 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.07 - local.get $2 + local.get $3 i32.load offset=4 - local.set $4 + local.set $5 loop $while-continue|08 local.get $1 - local.get $3 + local.get $4 i32.lt_s if local.get $1 local.tee $0 i32.const 1 i32.shl - local.get $4 + local.get $5 i32.add i32.load16_u i32.const 3 @@ -12840,30 +12827,30 @@ i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.010 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.const 2 i32.le_u i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.010 - local.get $2 + local.get $3 i32.load offset=4 - local.set $4 + local.set $5 loop $while-continue|011 local.get $1 - local.get $3 + local.get $4 i32.lt_s if local.get $1 local.tee $0 i32.const 1 i32.shl - local.get $4 + local.get $5 i32.add i32.load16_u i32.const 3 @@ -12895,30 +12882,30 @@ i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.013 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.const 3 i32.le_u i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.013 - local.get $2 + local.get $3 i32.load offset=4 - local.set $4 + local.set $5 loop $while-continue|014 local.get $1 - local.get $3 + local.get $4 i32.lt_s if local.get $1 local.tee $0 i32.const 1 i32.shl - local.get $4 + local.get $5 i32.add i32.load16_u i32.const 3 @@ -12950,30 +12937,30 @@ i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.016 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.const 4 i32.le_u i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.016 - local.get $2 + local.get $3 i32.load offset=4 - local.set $4 + local.set $5 loop $while-continue|017 local.get $1 - local.get $3 + local.get $4 i32.lt_s if local.get $1 local.tee $0 i32.const 1 i32.shl - local.get $4 + local.get $5 i32.add i32.load16_u i32.const 3 @@ -13005,30 +12992,30 @@ i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.019 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.const 10 i32.le_u i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.019 - local.get $2 + local.get $3 i32.load offset=4 - local.set $4 + local.set $5 loop $while-continue|020 local.get $1 - local.get $3 + local.get $4 i32.lt_s if local.get $1 local.tee $0 i32.const 1 i32.shl - local.get $4 + local.get $5 i32.add i32.load16_u i32.const 1 @@ -13058,18 +13045,18 @@ i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.022 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.tee $3 + local.tee $4 i32.const -100 i32.le_s i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.022 - local.get $3 + local.get $4 i32.const 100 i32.sub local.tee $0 @@ -13079,19 +13066,19 @@ i32.gt_s select local.set $1 - local.get $2 + local.get $3 i32.load offset=4 - local.set $4 + local.set $5 loop $while-continue|023 local.get $1 - local.get $3 + local.get $4 i32.lt_s if local.get $1 local.tee $0 i32.const 1 i32.shl - local.get $4 + local.get $5 i32.add i32.load16_u i32.const 1 @@ -13120,7 +13107,7 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $3 i32.const 0 call $~lib/typedarray/Int16Array#lastIndexOf@varargs if @@ -13133,7 +13120,7 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $3 i32.const 11 call $~lib/typedarray/Int16Array#lastIndexOf@varargs i32.const -1 @@ -13148,7 +13135,7 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $3 i32.const -1 call $~lib/typedarray/Int16Array#lastIndexOf@varargs i32.const -1 @@ -13163,7 +13150,7 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $3 i32.const 3 call $~lib/typedarray/Int16Array#lastIndexOf@varargs i32.const 3 @@ -13179,7 +13166,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u @@ -13195,7 +13182,7 @@ i32.le_u select local.set $1 - local.get $2 + local.get $3 i32.load offset=4 local.set $0 loop $while-continue|024 @@ -13236,7 +13223,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.01 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u @@ -13252,7 +13239,7 @@ i32.le_u select local.set $1 - local.get $2 + local.get $3 i32.load offset=4 local.set $0 loop $while-continue|03 @@ -13293,7 +13280,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.05 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u @@ -13309,7 +13296,7 @@ i32.le_u select local.set $1 - local.get $2 + local.get $3 i32.load offset=4 local.set $0 loop $while-continue|07 @@ -13350,7 +13337,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.09 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u @@ -13366,7 +13353,7 @@ i32.le_u select local.set $1 - local.get $2 + local.get $3 i32.load offset=4 local.set $0 loop $while-continue|01125 @@ -13407,7 +13394,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.013 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u @@ -13418,7 +13405,7 @@ i32.const 10 i32.sub local.set $1 - local.get $2 + local.get $3 i32.load offset=4 local.set $0 loop $while-continue|015 @@ -13459,7 +13446,7 @@ i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.017 - local.get $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u @@ -13470,7 +13457,7 @@ i32.const 11 i32.sub local.set $1 - local.get $2 + local.get $3 i32.load offset=4 local.set $0 loop $while-continue|019 @@ -13509,17 +13496,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 9 call $~lib/typedarray/Uint16Array#subarray - local.tee $2 + local.tee $1 i32.store offset=8 - i32.const 0 - local.set $1 i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.027 - local.get $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u @@ -13529,15 +13514,15 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.027 - local.get $2 + local.get $1 i32.load offset=4 local.set $4 loop $while-continue|028 - local.get $1 + local.get $2 local.get $3 i32.lt_s if - local.get $1 + local.get $2 local.tee $0 i32.const 1 i32.shl @@ -13550,7 +13535,7 @@ local.get $0 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|028 end end @@ -13569,11 +13554,11 @@ unreachable end i32.const 0 - local.set $1 + local.set $2 i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.030 - local.get $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u @@ -13583,15 +13568,15 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.030 - local.get $2 + local.get $1 i32.load offset=4 local.set $4 loop $while-continue|031 - local.get $1 + local.get $2 local.get $3 i32.lt_s if - local.get $1 + local.get $2 local.tee $0 i32.const 1 i32.shl @@ -13604,7 +13589,7 @@ local.get $0 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|031 end end @@ -13621,11 +13606,11 @@ unreachable end i32.const 0 - local.set $1 + local.set $2 i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.033 - local.get $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u @@ -13635,15 +13620,15 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.033 - local.get $2 + local.get $1 i32.load offset=4 local.set $4 loop $while-continue|034 - local.get $1 + local.get $2 local.get $3 i32.lt_s if - local.get $1 + local.get $2 local.tee $0 i32.const 1 i32.shl @@ -13656,7 +13641,7 @@ local.get $0 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|034 end end @@ -13675,11 +13660,11 @@ unreachable end i32.const 0 - local.set $1 + local.set $2 i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.036 - local.get $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u @@ -13689,15 +13674,15 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.036 - local.get $2 + local.get $1 i32.load offset=4 local.set $4 loop $while-continue|037 - local.get $1 + local.get $2 local.get $3 i32.lt_s if - local.get $1 + local.get $2 local.tee $0 i32.const 1 i32.shl @@ -13710,7 +13695,7 @@ local.get $0 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|037 end end @@ -13729,11 +13714,11 @@ unreachable end i32.const 0 - local.set $1 + local.set $2 i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.039 - local.get $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u @@ -13743,15 +13728,15 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.039 - local.get $2 + local.get $1 i32.load offset=4 local.set $4 loop $while-continue|040 - local.get $1 + local.get $2 local.get $3 i32.lt_s if - local.get $1 + local.get $2 local.tee $0 i32.const 1 i32.shl @@ -13764,7 +13749,7 @@ local.get $0 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|040 end end @@ -13783,11 +13768,11 @@ unreachable end i32.const 0 - local.set $1 + local.set $2 i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.042 - local.get $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u @@ -13797,15 +13782,15 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.042 - local.get $2 + local.get $1 i32.load offset=4 local.set $4 loop $while-continue|043 - local.get $1 + local.get $2 local.get $3 i32.lt_s if - local.get $1 + local.get $2 local.tee $0 i32.const 1 i32.shl @@ -13818,7 +13803,7 @@ local.get $0 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|043 end end @@ -13837,11 +13822,11 @@ unreachable end i32.const 1 - local.set $1 + local.set $2 i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.045 - local.get $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u @@ -13852,15 +13837,15 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.045 - local.get $2 + local.get $1 i32.load offset=4 local.set $4 loop $while-continue|046 - local.get $1 + local.get $2 local.get $3 i32.lt_s if - local.get $1 + local.get $2 local.tee $0 i32.const 1 i32.shl @@ -13873,7 +13858,7 @@ local.get $0 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|046 end end @@ -13892,11 +13877,11 @@ unreachable end i32.const 2 - local.set $1 + local.set $2 i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.048 - local.get $2 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u @@ -13907,28 +13892,28 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.048 - local.get $2 + local.get $1 i32.load offset=4 - local.set $2 + local.set $1 loop $while-continue|049 - local.get $1 + local.get $2 local.get $3 i32.lt_s if - local.get $1 + local.get $2 local.tee $0 i32.const 1 i32.shl - local.get $2 + local.get $1 i32.add i32.load16_u i32.const 5 i32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.048 - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $while-continue|049 end end @@ -13951,83 +13936,6 @@ i32.add global.set $~lib/memory/__stack_pointer ) - (func $~lib/typedarray/Int32Array#lastIndexOf@varargs (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - block $1of1 - block $0of1 - block $outOfRange - global.get $~argumentsLength - i32.const 1 - i32.sub - br_table $0of1 $1of1 $outOfRange - end - unreachable - end - local.get $0 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.set $2 - end - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) - local.get $1 - local.set $3 - i32.const -1 - local.get $0 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.tee $1 - i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 - drop - local.get $1 - local.get $2 - i32.add - local.get $1 - i32.const 1 - i32.sub - local.get $2 - local.get $1 - local.get $2 - i32.le_s - select - local.get $2 - i32.const 0 - i32.lt_s - select - local.set $1 - local.get $0 - i32.load offset=4 - local.set $2 - loop $while-continue|0 - local.get $1 - i32.const 0 - i32.ge_s - if - local.get $1 - local.tee $0 - local.get $3 - local.get $1 - i32.const 2 - i32.shl - local.get $2 - i32.add - i32.load - i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 - drop - local.get $0 - i32.const 1 - i32.sub - local.set $1 - br $while-continue|0 - end - end - i32.const -1 - end - ) (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Int32Array,i32> (local $0 i32) (local $1 i32) @@ -14050,28 +13958,28 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i64.const 0 i64.store - local.get $0 + local.get $3 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 7728 i32.store - local.get $0 + local.get $3 i32.const 7740 i32.load - local.tee $0 - call $~lib/typedarray/Int32Array#constructor local.tee $2 + call $~lib/typedarray/Int32Array#constructor + local.tee $3 i32.store offset=4 loop $for-loop|0 - local.get $0 local.get $1 - i32.gt_s + local.get $2 + i32.lt_s if - local.get $2 + local.get $3 local.get $1 i32.const 7728 local.get $1 @@ -14084,14 +13992,10 @@ br $for-loop|0 end end - i32.const 0 - local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -14103,7 +14007,7 @@ br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 local.get $3 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|0 local.get $0 local.get $4 @@ -14113,7 +14017,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.eqz @@ -14139,12 +14043,10 @@ end i32.const 0 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.01 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -14156,7 +14058,7 @@ br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.01 local.get $3 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|03 local.get $0 local.get $4 @@ -14166,7 +14068,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 11 @@ -14195,12 +14097,10 @@ end i32.const 0 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.05 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -14212,7 +14112,7 @@ br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.05 local.get $3 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|07 local.get $0 local.get $4 @@ -14222,7 +14122,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const -1 @@ -14251,12 +14151,10 @@ end i32.const 0 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.09 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -14268,7 +14166,7 @@ br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.09 local.get $3 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|011 local.get $0 local.get $4 @@ -14278,7 +14176,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 3 @@ -14307,12 +14205,10 @@ end i32.const 2 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.013 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -14325,7 +14221,7 @@ br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.013 local.get $3 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|015 local.get $0 local.get $4 @@ -14335,7 +14231,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 3 @@ -14364,12 +14260,10 @@ end i32.const 3 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.017 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -14382,7 +14276,7 @@ br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.017 local.get $3 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|019 local.get $0 local.get $4 @@ -14392,7 +14286,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 3 @@ -14421,12 +14315,10 @@ end i32.const 4 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.021 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -14439,7 +14331,7 @@ br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.021 local.get $3 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|023 local.get $0 local.get $4 @@ -14449,7 +14341,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 3 @@ -14478,12 +14370,10 @@ end i32.const 10 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.025 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -14496,7 +14386,7 @@ br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.025 local.get $3 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|027 local.get $0 local.get $4 @@ -14506,7 +14396,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 1 @@ -14533,38 +14423,36 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.set $1 i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.029 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $2 i32.const -100 i32.le_s i32.const 1 - local.get $3 + local.get $2 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.029 - local.get $3 + local.get $2 i32.const 100 i32.sub - local.tee $0 + local.tee $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 i32.gt_s select local.set $0 - local.get $1 + local.get $3 i32.load offset=4 local.set $1 loop $while-continue|031 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -14599,9 +14487,65 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 - i32.const 0 - call $~lib/typedarray/Int32Array#lastIndexOf@varargs + local.get $3 + local.tee $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.set $2 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) + i32.const -1 + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.tee $0 + i32.eqz + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 + drop + local.get $0 + local.get $2 + i32.add + local.get $0 + i32.const 1 + i32.sub + local.get $2 + local.get $0 + local.get $2 + i32.le_s + select + local.get $2 + i32.const 0 + i32.lt_s + select + local.set $0 + local.get $1 + i32.load offset=4 + local.set $1 + loop $while-continue|00 + local.get $0 + i32.const 0 + i32.ge_s + if + local.get $0 + local.get $0 + i32.const 2 + i32.shl + local.get $1 + i32.add + i32.load + i32.eqz + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 + drop + local.get $0 + i32.const 1 + i32.sub + local.set $0 + br $while-continue|00 + end + end + i32.const -1 + end if i32.const 0 i32.const 1568 @@ -14612,9 +14556,66 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 - i32.const 11 - call $~lib/typedarray/Int32Array#lastIndexOf@varargs + local.get $3 + local.tee $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.set $2 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.05 (result i32) + i32.const -1 + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.tee $0 + i32.eqz + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.05 + drop + local.get $0 + local.get $2 + i32.add + local.get $0 + i32.const 1 + i32.sub + local.get $2 + local.get $0 + local.get $2 + i32.le_s + select + local.get $2 + i32.const 0 + i32.lt_s + select + local.set $0 + local.get $1 + i32.load offset=4 + local.set $1 + loop $while-continue|06 + local.get $0 + i32.const 0 + i32.ge_s + if + local.get $0 + local.get $0 + i32.const 2 + i32.shl + local.get $1 + i32.add + i32.load + i32.const 11 + i32.eq + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.05 + drop + local.get $0 + i32.const 1 + i32.sub + local.set $0 + br $while-continue|06 + end + end + i32.const -1 + end i32.const -1 i32.ne if @@ -14627,9 +14628,66 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 - i32.const -1 - call $~lib/typedarray/Int32Array#lastIndexOf@varargs + local.get $3 + local.tee $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.set $2 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.011 (result i32) + i32.const -1 + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.tee $0 + i32.eqz + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.011 + drop + local.get $0 + local.get $2 + i32.add + local.get $0 + i32.const 1 + i32.sub + local.get $2 + local.get $0 + local.get $2 + i32.le_s + select + local.get $2 + i32.const 0 + i32.lt_s + select + local.set $0 + local.get $1 + i32.load offset=4 + local.set $1 + loop $while-continue|012 + local.get $0 + i32.const 0 + i32.ge_s + if + local.get $0 + local.get $0 + i32.const 2 + i32.shl + local.get $1 + i32.add + i32.load + i32.const -1 + i32.eq + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.011 + drop + local.get $0 + i32.const 1 + i32.sub + local.set $0 + br $while-continue|012 + end + end + i32.const -1 + end i32.const -1 i32.ne if @@ -14642,9 +14700,66 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 - i32.const 3 - call $~lib/typedarray/Int32Array#lastIndexOf@varargs + local.get $3 + local.tee $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.set $2 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.017 (result i32) + i32.const -1 + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.tee $0 + i32.eqz + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.017 + drop + local.get $0 + local.get $2 + i32.add + local.get $0 + i32.const 1 + i32.sub + local.get $2 + local.get $0 + local.get $2 + i32.le_s + select + local.get $2 + i32.const 0 + i32.lt_s + select + local.set $0 + local.get $1 + i32.load offset=4 + local.set $1 + loop $while-continue|018 + local.get $0 + i32.const 0 + i32.ge_s + if + local.get $0 + local.get $0 + i32.const 2 + i32.shl + local.get $1 + i32.add + i32.load + i32.const 3 + i32.eq + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.017 + drop + local.get $0 + i32.const 1 + i32.sub + local.set $0 + br $while-continue|018 + end + end + i32.const -1 + end i32.const 3 i32.ne if @@ -14655,18 +14770,16 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 - local.get $2 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.019 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.019 local.get $0 i32.const 1 i32.sub @@ -14678,7 +14791,7 @@ local.set $0 local.get $3 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|033 local.get $0 i32.const 0 @@ -14688,12 +14801,12 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 3 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.019 local.get $1 i32.const 1 i32.sub @@ -14715,12 +14828,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.035 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -14738,7 +14849,7 @@ local.set $0 local.get $3 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|037 local.get $0 i32.const 0 @@ -14748,7 +14859,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 3 @@ -14775,12 +14886,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.039 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -14798,7 +14907,7 @@ local.set $0 local.get $3 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|041 local.get $0 i32.const 0 @@ -14808,7 +14917,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 3 @@ -14835,12 +14944,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.043 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -14858,7 +14965,7 @@ local.set $0 local.get $3 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|045 local.get $0 i32.const 0 @@ -14868,7 +14975,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 1 @@ -14895,23 +15002,21 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.set $1 i32.const -1 local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.047 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.047 - local.get $3 + local.get $1 i32.const 10 i32.sub local.set $0 - local.get $1 + local.get $3 i32.load offset=4 local.set $1 loop $while-continue|049 @@ -14949,23 +15054,21 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.set $1 i32.const -1 local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.051 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.051 - local.get $3 + local.get $1 i32.const 11 i32.sub local.set $0 - local.get $1 + local.get $3 i32.load offset=4 local.set $1 loop $while-continue|053 @@ -15004,35 +15107,33 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 4 i32.const 9 call $~lib/typedarray/Int32Array#subarray - local.tee $2 + local.tee $4 i32.store offset=8 i32.const 0 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.055 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 + local.tee $2 i32.const 0 - local.get $4 + local.get $2 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.055 - local.get $3 + local.get $4 i32.load offset=4 local.set $3 loop $while-continue|057 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 @@ -15068,27 +15169,25 @@ end i32.const 0 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.059 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 + local.tee $2 i32.const 0 - local.get $4 + local.get $2 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.059 - local.get $3 + local.get $4 i32.load offset=4 local.set $3 loop $while-continue|061 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 @@ -15122,27 +15221,25 @@ end i32.const 0 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.063 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 + local.tee $2 i32.const 0 - local.get $4 + local.get $2 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.063 - local.get $3 + local.get $4 i32.load offset=4 local.set $3 loop $while-continue|065 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 @@ -15178,27 +15275,25 @@ end i32.const 0 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.067 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 + local.tee $2 i32.const 0 - local.get $4 + local.get $2 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.067 - local.get $3 + local.get $4 i32.load offset=4 local.set $3 loop $while-continue|069 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 @@ -15234,27 +15329,25 @@ end i32.const 0 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.071 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 + local.tee $2 i32.const 0 - local.get $4 + local.get $2 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.071 - local.get $3 + local.get $4 i32.load offset=4 local.set $3 loop $while-continue|073 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 @@ -15290,27 +15383,25 @@ end i32.const 0 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.075 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 + local.tee $2 i32.const 0 - local.get $4 + local.get $2 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.075 - local.get $3 + local.get $4 i32.load offset=4 local.set $3 loop $while-continue|077 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 @@ -15346,28 +15437,26 @@ end i32.const 1 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.079 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 + local.tee $2 i32.const 1 i32.le_u i32.const 1 - local.get $4 + local.get $2 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.079 - local.get $3 + local.get $4 i32.load offset=4 local.set $3 loop $while-continue|081 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 @@ -15406,30 +15495,30 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.083 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $2 i32.const 2 i32.le_u i32.const 1 - local.get $3 + local.get $2 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.083 - local.get $2 + local.get $4 i32.load offset=4 - local.set $2 + local.set $3 loop $while-continue|085 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 5 @@ -15461,83 +15550,6 @@ i32.add global.set $~lib/memory/__stack_pointer ) - (func $~lib/typedarray/Uint32Array#lastIndexOf@varargs (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - block $1of1 - block $0of1 - block $outOfRange - global.get $~argumentsLength - i32.const 1 - i32.sub - br_table $0of1 $1of1 $outOfRange - end - unreachable - end - local.get $0 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.set $2 - end - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) - local.get $1 - local.set $3 - i32.const -1 - local.get $0 - i32.load offset=8 - i32.const 2 - i32.shr_u - local.tee $1 - i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 - drop - local.get $1 - local.get $2 - i32.add - local.get $1 - i32.const 1 - i32.sub - local.get $2 - local.get $1 - local.get $2 - i32.le_s - select - local.get $2 - i32.const 0 - i32.lt_s - select - local.set $1 - local.get $0 - i32.load offset=4 - local.set $2 - loop $while-continue|0 - local.get $1 - i32.const 0 - i32.ge_s - if - local.get $1 - local.tee $0 - local.get $3 - local.get $1 - i32.const 2 - i32.shl - local.get $2 - i32.add - i32.load - i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 - drop - local.get $0 - i32.const 1 - i32.sub - local.set $1 - br $while-continue|0 - end - end - i32.const -1 - end - ) (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Uint32Array,u32> (local $0 i32) (local $1 i32) @@ -15560,28 +15572,28 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i64.const 0 i64.store - local.get $0 + local.get $3 i32.const 0 i32.store offset=8 - local.get $0 + local.get $3 i32.const 7728 i32.store - local.get $0 + local.get $3 i32.const 7740 i32.load - local.tee $0 - call $~lib/typedarray/Uint32Array#constructor local.tee $2 + call $~lib/typedarray/Uint32Array#constructor + local.tee $3 i32.store offset=4 loop $for-loop|0 - local.get $0 local.get $1 - i32.gt_s + local.get $2 + i32.lt_s if - local.get $2 + local.get $3 local.get $1 i32.const 7728 local.get $1 @@ -15594,14 +15606,10 @@ br $for-loop|0 end end - i32.const 0 - local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -15613,7 +15621,7 @@ br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 local.get $3 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|0 local.get $0 local.get $4 @@ -15623,7 +15631,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.eqz @@ -15649,12 +15657,10 @@ end i32.const 0 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.01 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -15666,7 +15672,7 @@ br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.01 local.get $3 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|03 local.get $0 local.get $4 @@ -15676,7 +15682,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 11 @@ -15705,12 +15711,10 @@ end i32.const 0 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.05 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -15722,7 +15726,7 @@ br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.05 local.get $3 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|07 local.get $0 local.get $4 @@ -15732,7 +15736,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const -1 @@ -15761,12 +15765,10 @@ end i32.const 0 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.09 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -15778,7 +15780,7 @@ br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.09 local.get $3 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|011 local.get $0 local.get $4 @@ -15788,7 +15790,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 3 @@ -15817,12 +15819,10 @@ end i32.const 2 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.013 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -15835,7 +15835,7 @@ br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.013 local.get $3 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|015 local.get $0 local.get $4 @@ -15845,7 +15845,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 3 @@ -15874,12 +15874,10 @@ end i32.const 3 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.017 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -15892,7 +15890,7 @@ br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.017 local.get $3 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|019 local.get $0 local.get $4 @@ -15902,7 +15900,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 3 @@ -15931,12 +15929,10 @@ end i32.const 4 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.021 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -15949,7 +15945,7 @@ br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.021 local.get $3 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|023 local.get $0 local.get $4 @@ -15959,7 +15955,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 3 @@ -15988,12 +15984,10 @@ end i32.const 10 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.025 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -16006,7 +16000,7 @@ br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.025 local.get $3 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|027 local.get $0 local.get $4 @@ -16016,7 +16010,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 1 @@ -16043,38 +16037,36 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.set $1 i32.const -1 local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.029 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $2 i32.const -100 i32.le_s i32.const 1 - local.get $3 + local.get $2 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.029 - local.get $3 + local.get $2 i32.const 100 i32.sub - local.tee $0 + local.tee $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 i32.gt_s select local.set $0 - local.get $1 + local.get $3 i32.load offset=4 local.set $1 loop $while-continue|031 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -16109,9 +16101,65 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 - i32.const 0 - call $~lib/typedarray/Uint32Array#lastIndexOf@varargs + local.get $3 + local.tee $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.set $2 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) + i32.const -1 + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.tee $0 + i32.eqz + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 + drop + local.get $0 + local.get $2 + i32.add + local.get $0 + i32.const 1 + i32.sub + local.get $2 + local.get $0 + local.get $2 + i32.le_s + select + local.get $2 + i32.const 0 + i32.lt_s + select + local.set $0 + local.get $1 + i32.load offset=4 + local.set $1 + loop $while-continue|00 + local.get $0 + i32.const 0 + i32.ge_s + if + local.get $0 + local.get $0 + i32.const 2 + i32.shl + local.get $1 + i32.add + i32.load + i32.eqz + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 + drop + local.get $0 + i32.const 1 + i32.sub + local.set $0 + br $while-continue|00 + end + end + i32.const -1 + end if i32.const 0 i32.const 1568 @@ -16122,9 +16170,66 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 - i32.const 11 - call $~lib/typedarray/Uint32Array#lastIndexOf@varargs + local.get $3 + local.tee $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.set $2 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.05 (result i32) + i32.const -1 + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.tee $0 + i32.eqz + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.05 + drop + local.get $0 + local.get $2 + i32.add + local.get $0 + i32.const 1 + i32.sub + local.get $2 + local.get $0 + local.get $2 + i32.le_s + select + local.get $2 + i32.const 0 + i32.lt_s + select + local.set $0 + local.get $1 + i32.load offset=4 + local.set $1 + loop $while-continue|06 + local.get $0 + i32.const 0 + i32.ge_s + if + local.get $0 + local.get $0 + i32.const 2 + i32.shl + local.get $1 + i32.add + i32.load + i32.const 11 + i32.eq + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.05 + drop + local.get $0 + i32.const 1 + i32.sub + local.set $0 + br $while-continue|06 + end + end + i32.const -1 + end i32.const -1 i32.ne if @@ -16137,9 +16242,66 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 - i32.const -1 - call $~lib/typedarray/Uint32Array#lastIndexOf@varargs + local.get $3 + local.tee $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.set $2 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.011 (result i32) + i32.const -1 + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.tee $0 + i32.eqz + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.011 + drop + local.get $0 + local.get $2 + i32.add + local.get $0 + i32.const 1 + i32.sub + local.get $2 + local.get $0 + local.get $2 + i32.le_s + select + local.get $2 + i32.const 0 + i32.lt_s + select + local.set $0 + local.get $1 + i32.load offset=4 + local.set $1 + loop $while-continue|012 + local.get $0 + i32.const 0 + i32.ge_s + if + local.get $0 + local.get $0 + i32.const 2 + i32.shl + local.get $1 + i32.add + i32.load + i32.const -1 + i32.eq + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.011 + drop + local.get $0 + i32.const 1 + i32.sub + local.set $0 + br $while-continue|012 + end + end + i32.const -1 + end i32.const -1 i32.ne if @@ -16152,9 +16314,66 @@ end i32.const 1 global.set $~argumentsLength - local.get $2 - i32.const 3 - call $~lib/typedarray/Uint32Array#lastIndexOf@varargs + local.get $3 + local.tee $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.set $2 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.017 (result i32) + i32.const -1 + local.get $1 + i32.load offset=8 + i32.const 2 + i32.shr_u + local.tee $0 + i32.eqz + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.017 + drop + local.get $0 + local.get $2 + i32.add + local.get $0 + i32.const 1 + i32.sub + local.get $2 + local.get $0 + local.get $2 + i32.le_s + select + local.get $2 + i32.const 0 + i32.lt_s + select + local.set $0 + local.get $1 + i32.load offset=4 + local.set $1 + loop $while-continue|018 + local.get $0 + i32.const 0 + i32.ge_s + if + local.get $0 + local.get $0 + i32.const 2 + i32.shl + local.get $1 + i32.add + i32.load + i32.const 3 + i32.eq + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.017 + drop + local.get $0 + i32.const 1 + i32.sub + local.set $0 + br $while-continue|018 + end + end + i32.const -1 + end i32.const 3 i32.ne if @@ -16165,18 +16384,16 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.set $3 i32.const -1 local.set $1 - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 - local.get $2 + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.019 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u local.tee $0 i32.eqz - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.019 local.get $0 i32.const 1 i32.sub @@ -16188,7 +16405,7 @@ local.set $0 local.get $3 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|033 local.get $0 i32.const 0 @@ -16198,12 +16415,12 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 3 i32.eq - br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 + br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.019 local.get $1 i32.const 1 i32.sub @@ -16225,12 +16442,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.035 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -16248,7 +16463,7 @@ local.set $0 local.get $3 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|037 local.get $0 i32.const 0 @@ -16258,7 +16473,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 3 @@ -16285,12 +16500,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.039 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -16308,7 +16521,7 @@ local.set $0 local.get $3 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|041 local.get $0 i32.const 0 @@ -16318,7 +16531,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 3 @@ -16345,12 +16558,10 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.043 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -16368,7 +16579,7 @@ local.set $0 local.get $3 i32.load offset=4 - local.set $3 + local.set $2 loop $while-continue|045 local.get $0 i32.const 0 @@ -16378,7 +16589,7 @@ local.tee $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add i32.load i32.const 1 @@ -16405,23 +16616,21 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.set $1 i32.const -1 local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.047 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.047 - local.get $3 + local.get $1 i32.const 10 i32.sub local.set $0 - local.get $1 + local.get $3 i32.load offset=4 local.set $1 loop $while-continue|049 @@ -16459,23 +16668,21 @@ call $~lib/builtins/abort unreachable end - local.get $2 - local.set $1 i32.const -1 local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.051 - local.get $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.051 - local.get $3 + local.get $1 i32.const 11 i32.sub local.set $0 - local.get $1 + local.get $3 i32.load offset=4 local.set $1 loop $while-continue|053 @@ -16514,34 +16721,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.const 9 call $~lib/typedarray/Uint32Array#subarray - local.tee $2 + local.tee $4 i32.store offset=8 i32.const 0 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.055 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 + local.tee $2 i32.const 0 - local.get $4 + local.get $2 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.055 - local.get $3 + local.get $4 i32.load offset=4 local.set $3 loop $while-continue|057 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 @@ -16577,27 +16782,25 @@ end i32.const 0 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.059 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 + local.tee $2 i32.const 0 - local.get $4 + local.get $2 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.059 - local.get $3 + local.get $4 i32.load offset=4 local.set $3 loop $while-continue|061 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 @@ -16631,27 +16834,25 @@ end i32.const 0 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.063 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 + local.tee $2 i32.const 0 - local.get $4 + local.get $2 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.063 - local.get $3 + local.get $4 i32.load offset=4 local.set $3 loop $while-continue|065 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 @@ -16687,27 +16888,25 @@ end i32.const 0 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.067 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 + local.tee $2 i32.const 0 - local.get $4 + local.get $2 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.067 - local.get $3 + local.get $4 i32.load offset=4 local.set $3 loop $while-continue|069 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 @@ -16743,27 +16942,25 @@ end i32.const 0 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.071 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 + local.tee $2 i32.const 0 - local.get $4 + local.get $2 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.071 - local.get $3 + local.get $4 i32.load offset=4 local.set $3 loop $while-continue|073 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 @@ -16799,27 +16996,25 @@ end i32.const 0 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.075 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 + local.tee $2 i32.const 0 - local.get $4 + local.get $2 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.075 - local.get $3 + local.get $4 i32.load offset=4 local.set $3 loop $while-continue|077 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 @@ -16855,28 +17050,26 @@ end i32.const 1 local.set $0 - local.get $2 - local.set $3 i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.079 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $4 + local.tee $2 i32.const 1 i32.le_u i32.const 1 - local.get $4 + local.get $2 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.079 - local.get $3 + local.get $4 i32.load offset=4 local.set $3 loop $while-continue|081 local.get $0 - local.get $4 + local.get $2 i32.lt_s if local.get $0 @@ -16915,30 +17108,30 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.083 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $2 i32.const 2 i32.le_u i32.const 1 - local.get $3 + local.get $2 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.083 - local.get $2 + local.get $4 i32.load offset=4 - local.set $2 + local.set $3 loop $while-continue|085 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 5 @@ -16992,84 +17185,82 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 7728 i32.store - local.get $1 + local.get $2 i32.const 7740 i32.load - local.tee $1 + local.tee $3 call $~lib/typedarray/Int64Array#constructor local.tee $2 i32.store offset=4 loop $for-loop|0 - local.get $0 local.get $1 + local.get $3 i32.lt_s if local.get $2 - local.get $0 + local.get $1 i32.const 7728 - local.get $0 + local.get $1 call $~lib/array/Array#__get i64.extend_i32_s call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end - i32.const 0 - local.set $1 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|0 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add i64.load i64.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|0 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -17079,49 +17270,49 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.01 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.01 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|03 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add i64.load i64.const 11 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.01 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|03 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -17133,49 +17324,49 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.05 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.05 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|07 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add i64.load i64.const -1 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.05 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|07 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -17187,49 +17378,49 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.09 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.09 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|011 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add i64.load i64.const 3 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.09 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|011 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -17241,50 +17432,50 @@ unreachable end i32.const 2 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.013 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $4 i32.const 2 i32.le_u i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.013 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|015 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add i64.load i64.const 3 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.013 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|015 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -17296,50 +17487,50 @@ unreachable end i32.const 3 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.017 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $4 i32.const 3 i32.le_u i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.017 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|019 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add i64.load i64.const 3 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.017 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|019 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -17351,50 +17542,50 @@ unreachable end i32.const 4 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.021 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $4 i32.const 4 i32.le_u i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.021 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|023 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add i64.load i64.const 3 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.021 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|023 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -17406,50 +17597,50 @@ unreachable end i32.const 10 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.025 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $4 i32.const 10 i32.le_u i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.025 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|027 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add i64.load i64.const 1 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.025 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|027 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -17461,57 +17652,57 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.029 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $3 i32.const -100 i32.le_s i32.const 1 - local.get $0 + local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.029 - local.get $0 + local.get $3 i32.const 100 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 - local.set $3 + local.set $1 loop $while-continue|031 local.get $0 - local.get $1 - i32.gt_s + local.get $3 + i32.lt_s if - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $3 + local.get $1 i32.add i64.load i64.const 1 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.029 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|031 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -17525,13 +17716,13 @@ i32.const 1 global.set $~argumentsLength local.get $2 - local.tee $1 + local.tee $0 i32.load offset=8 i32.const 3 i32.shr_u local.set $3 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 local.get $2 i32.load offset=8 @@ -17555,16 +17746,16 @@ i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|00 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 i32.const 3 i32.shl local.get $2 @@ -17572,17 +17763,17 @@ i64.load i64.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|00 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -17593,43 +17784,43 @@ end i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $2 - local.set $3 + local.tee $3 + local.set $2 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.05 - local.get $2 + local.get $3 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.05 local.get $2 local.get $3 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.get $3 + local.get $2 local.get $2 local.get $3 - i32.le_s + i32.ge_s select - local.get $3 + local.get $2 i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|06 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 i32.const 3 i32.shl local.get $2 @@ -17638,17 +17829,17 @@ i64.const 11 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.05 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|06 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -17661,43 +17852,43 @@ end i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $2 - local.set $3 + local.tee $3 + local.set $2 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.011 - local.get $2 + local.get $3 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.011 local.get $2 local.get $3 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.get $3 + local.get $2 local.get $2 local.get $3 - i32.le_s + i32.ge_s select - local.get $3 + local.get $2 i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|012 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 i32.const 3 i32.shl local.get $2 @@ -17706,17 +17897,17 @@ i64.const -1 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.011 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|012 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -17729,43 +17920,43 @@ end i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $2 - local.set $3 + local.tee $3 + local.set $2 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.017 - local.get $2 + local.get $3 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.017 local.get $2 local.get $3 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.get $3 + local.get $2 local.get $2 local.get $3 - i32.le_s + i32.ge_s select - local.get $3 + local.get $2 i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|018 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 i32.const 3 i32.shl local.get $2 @@ -17774,17 +17965,17 @@ i64.const 3 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.017 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|018 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -17796,35 +17987,35 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.019 - local.get $1 + local.get $0 local.tee $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.019 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 4 - local.get $1 + local.get $0 i32.const 4 i32.le_u select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|033 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl local.get $3 @@ -17833,17 +18024,17 @@ i64.const 3 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.019 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|033 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -17855,34 +18046,34 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.035 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.035 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 3 - local.get $1 + local.get $0 i32.const 3 i32.le_u select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|037 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl local.get $3 @@ -17891,17 +18082,17 @@ i64.const 3 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.035 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|037 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -17913,34 +18104,34 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.039 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.039 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 2 - local.get $1 + local.get $0 i32.const 2 i32.le_u select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|041 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl local.get $3 @@ -17949,17 +18140,17 @@ i64.const 3 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.039 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|041 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -17971,34 +18162,34 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.043 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.043 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 100 - local.get $1 + local.get $0 i32.const 100 i32.le_u select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|045 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl local.get $3 @@ -18007,17 +18198,17 @@ i64.const 1 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.043 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|045 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 1 i32.ne if @@ -18029,47 +18220,47 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.047 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.047 - local.get $0 + local.get $1 i32.const 10 i32.sub - local.set $1 + local.set $0 local.get $2 i32.load offset=4 - local.set $0 + local.set $1 loop $while-continue|049 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add i64.load i64.const 1 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.047 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|049 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -18081,47 +18272,47 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.051 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.051 - local.get $0 + local.get $1 i32.const 11 i32.sub - local.set $1 + local.set $0 local.get $2 i32.load offset=4 - local.set $0 + local.set $1 loop $while-continue|053 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add i64.load i64.const 1 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.051 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|053 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -18136,14 +18327,14 @@ local.get $2 i32.const 9 call $~lib/typedarray/Int64Array#subarray - local.tee $2 + local.tee $4 i32.store offset=8 i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.055 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -18153,35 +18344,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.055 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|057 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 3 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.055 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|057 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -18193,11 +18384,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.059 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -18207,35 +18398,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.059 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|061 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 4 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.059 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|061 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -18245,11 +18436,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.063 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -18259,35 +18450,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.063 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|065 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 5 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.063 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|065 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 1 i32.ne if @@ -18299,11 +18490,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.067 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -18313,35 +18504,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.067 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|069 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 9 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.067 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|069 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -18353,11 +18544,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.071 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -18367,35 +18558,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.071 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|073 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 10 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.071 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|073 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -18407,11 +18598,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.075 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -18421,35 +18612,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.075 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|077 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 11 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.075 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|077 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -18461,11 +18652,11 @@ unreachable end i32.const 1 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.079 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -18476,35 +18667,35 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.079 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|081 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 5 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.079 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|081 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 1 i32.ne if @@ -18516,11 +18707,11 @@ unreachable end i32.const 2 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.083 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -18531,16 +18722,16 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.083 - local.get $2 + local.get $4 i32.load offset=4 local.set $2 loop $while-continue|085 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl local.get $2 @@ -18549,17 +18740,17 @@ i64.const 5 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.083 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|085 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -18597,84 +18788,82 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 7728 i32.store - local.get $1 + local.get $2 i32.const 7740 i32.load - local.tee $1 + local.tee $3 call $~lib/typedarray/Uint64Array#constructor local.tee $2 i32.store offset=4 loop $for-loop|0 - local.get $0 local.get $1 + local.get $3 i32.lt_s if local.get $2 - local.get $0 + local.get $1 i32.const 7728 - local.get $0 + local.get $1 call $~lib/array/Array#__get i64.extend_i32_s call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end - i32.const 0 - local.set $1 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|0 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add i64.load i64.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|0 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -18684,49 +18873,49 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.01 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.01 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|03 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add i64.load i64.const 11 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.01 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|03 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -18738,49 +18927,49 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.05 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.05 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|07 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add i64.load i64.const -1 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.05 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|07 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -18792,49 +18981,49 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.09 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.09 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|011 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add i64.load i64.const 3 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.09 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|011 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -18846,50 +19035,50 @@ unreachable end i32.const 2 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.013 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $4 i32.const 2 i32.le_u i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.013 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|015 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add i64.load i64.const 3 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.013 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|015 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -18901,50 +19090,50 @@ unreachable end i32.const 3 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.017 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $4 i32.const 3 i32.le_u i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.017 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|019 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add i64.load i64.const 3 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.017 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|019 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -18956,50 +19145,50 @@ unreachable end i32.const 4 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.021 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $4 i32.const 4 i32.le_u i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.021 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|023 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add i64.load i64.const 3 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.021 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|023 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -19011,50 +19200,50 @@ unreachable end i32.const 10 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.025 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $4 i32.const 10 i32.le_u i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.025 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|027 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add i64.load i64.const 1 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.025 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|027 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -19066,57 +19255,57 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.029 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $3 i32.const -100 i32.le_s i32.const 1 - local.get $0 + local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.029 - local.get $0 + local.get $3 i32.const 100 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 - local.set $3 + local.set $1 loop $while-continue|031 local.get $0 - local.get $1 - i32.gt_s + local.get $3 + i32.lt_s if - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $3 + local.get $1 i32.add i64.load i64.const 1 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.029 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|031 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -19130,13 +19319,13 @@ i32.const 1 global.set $~argumentsLength local.get $2 - local.tee $1 + local.tee $0 i32.load offset=8 i32.const 3 i32.shr_u local.set $3 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 local.get $2 i32.load offset=8 @@ -19160,16 +19349,16 @@ i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|00 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 i32.const 3 i32.shl local.get $2 @@ -19177,17 +19366,17 @@ i64.load i64.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|00 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -19198,43 +19387,43 @@ end i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $2 - local.set $3 + local.tee $3 + local.set $2 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.05 - local.get $2 + local.get $3 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.05 local.get $2 local.get $3 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.get $3 + local.get $2 local.get $2 local.get $3 - i32.le_s + i32.ge_s select - local.get $3 + local.get $2 i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|06 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 i32.const 3 i32.shl local.get $2 @@ -19243,17 +19432,17 @@ i64.const 11 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.05 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|06 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -19266,43 +19455,43 @@ end i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $2 - local.set $3 + local.tee $3 + local.set $2 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.011 - local.get $2 + local.get $3 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.011 local.get $2 local.get $3 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.get $3 + local.get $2 local.get $2 local.get $3 - i32.le_s + i32.ge_s select - local.get $3 + local.get $2 i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|012 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 i32.const 3 i32.shl local.get $2 @@ -19311,17 +19500,17 @@ i64.const -1 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.011 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|012 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -19334,43 +19523,43 @@ end i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $2 - local.set $3 + local.tee $3 + local.set $2 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.017 - local.get $2 + local.get $3 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.017 local.get $2 local.get $3 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.get $3 + local.get $2 local.get $2 local.get $3 - i32.le_s + i32.ge_s select - local.get $3 + local.get $2 i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|018 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 i32.const 3 i32.shl local.get $2 @@ -19379,17 +19568,17 @@ i64.const 3 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.017 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|018 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -19401,35 +19590,35 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.019 - local.get $1 + local.get $0 local.tee $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.019 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 4 - local.get $1 + local.get $0 i32.const 4 i32.le_u select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|033 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl local.get $3 @@ -19438,17 +19627,17 @@ i64.const 3 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.019 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|033 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -19460,34 +19649,34 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.035 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.035 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 3 - local.get $1 + local.get $0 i32.const 3 i32.le_u select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|037 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl local.get $3 @@ -19496,17 +19685,17 @@ i64.const 3 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.035 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|037 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -19518,34 +19707,34 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.039 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.039 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 2 - local.get $1 + local.get $0 i32.const 2 i32.le_u select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|041 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl local.get $3 @@ -19554,17 +19743,17 @@ i64.const 3 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.039 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|041 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -19576,34 +19765,34 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.043 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.043 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 100 - local.get $1 + local.get $0 i32.const 100 i32.le_u select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|045 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl local.get $3 @@ -19612,17 +19801,17 @@ i64.const 1 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.043 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|045 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 1 i32.ne if @@ -19634,47 +19823,47 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.047 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.047 - local.get $0 + local.get $1 i32.const 10 i32.sub - local.set $1 + local.set $0 local.get $2 i32.load offset=4 - local.set $0 + local.set $1 loop $while-continue|049 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add i64.load i64.const 1 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.047 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|049 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -19686,47 +19875,47 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.051 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.051 - local.get $0 + local.get $1 i32.const 11 i32.sub - local.set $1 + local.set $0 local.get $2 i32.load offset=4 - local.set $0 + local.set $1 loop $while-continue|053 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add i64.load i64.const 1 i64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.051 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|053 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -19741,14 +19930,14 @@ local.get $2 i32.const 9 call $~lib/typedarray/Uint64Array#subarray - local.tee $2 + local.tee $4 i32.store offset=8 i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.055 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -19758,35 +19947,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.055 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|057 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 3 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.055 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|057 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -19798,11 +19987,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.059 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -19812,35 +20001,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.059 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|061 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 4 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.059 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|061 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -19850,11 +20039,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.063 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -19864,35 +20053,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.063 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|065 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 5 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.063 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|065 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 1 i32.ne if @@ -19904,11 +20093,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.067 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -19918,35 +20107,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.067 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|069 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 9 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.067 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|069 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -19958,11 +20147,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.071 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -19972,35 +20161,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.071 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|073 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 10 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.071 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|073 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -20012,11 +20201,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.075 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -20026,35 +20215,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.075 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|077 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 11 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.075 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|077 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -20066,11 +20255,11 @@ unreachable end i32.const 1 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.079 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -20081,35 +20270,35 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.079 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|081 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load i64.const 5 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.079 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|081 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 1 i32.ne if @@ -20121,11 +20310,11 @@ unreachable end i32.const 2 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.083 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -20136,16 +20325,16 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.083 - local.get $2 + local.get $4 i32.load offset=4 local.set $2 loop $while-continue|085 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl local.get $2 @@ -20154,17 +20343,17 @@ i64.const 5 i64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.083 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|085 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -20202,85 +20391,83 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 7728 i32.store - local.get $1 + local.get $2 i32.const 7740 i32.load - local.tee $1 + local.tee $3 call $~lib/typedarray/Float32Array#constructor local.tee $2 i32.store offset=4 loop $for-loop|0 - local.get $0 local.get $1 + local.get $3 i32.lt_s if local.get $2 - local.get $0 + local.get $1 i32.const 7728 - local.get $0 + local.get $1 call $~lib/array/Array#__get f32.convert_i32_s call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end - i32.const 0 - local.set $1 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|0 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $3 i32.add f32.load f32.const 0 f32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|0 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -20290,49 +20477,49 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.01 local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.01 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|03 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $3 i32.add f32.load f32.const 11 f32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.01 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|03 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -20344,49 +20531,49 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.05 local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.05 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|07 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $3 i32.add f32.load f32.const -1 f32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.05 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|07 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -20398,49 +20585,49 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.09 local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.09 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|011 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $3 i32.add f32.load f32.const 3 f32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.09 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|011 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -20452,50 +20639,50 @@ unreachable end i32.const 2 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.013 local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 2 i32.le_u i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.013 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|015 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $3 i32.add f32.load f32.const 3 f32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.013 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|015 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -20507,50 +20694,50 @@ unreachable end i32.const 3 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.017 local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 3 i32.le_u i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.017 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|019 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $3 i32.add f32.load f32.const 3 f32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.017 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|019 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -20562,50 +20749,50 @@ unreachable end i32.const 4 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.021 local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 4 i32.le_u i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.021 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|023 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $3 i32.add f32.load f32.const 3 f32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.021 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|023 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -20617,50 +20804,50 @@ unreachable end i32.const 10 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.025 local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $3 + local.tee $4 i32.const 10 i32.le_u i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.025 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|027 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $3 i32.add f32.load f32.const 1 f32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.025 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|027 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -20672,57 +20859,57 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.029 local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 + local.tee $3 i32.const -100 i32.le_s i32.const 1 - local.get $0 + local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.029 - local.get $0 + local.get $3 i32.const 100 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 - local.set $3 + local.set $1 loop $while-continue|031 local.get $0 - local.get $1 - i32.gt_s + local.get $3 + i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $3 + local.get $1 i32.add f32.load f32.const 1 f32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.029 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|031 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -20736,13 +20923,13 @@ i32.const 1 global.set $~argumentsLength local.get $2 - local.tee $1 + local.tee $0 i32.load offset=8 i32.const 2 i32.shr_u local.set $3 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 local.get $2 i32.load offset=8 @@ -20766,16 +20953,16 @@ i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|00 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 i32.const 2 i32.shl local.get $2 @@ -20784,17 +20971,17 @@ f32.const 0 f32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|00 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -20805,43 +20992,43 @@ end i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $2 - local.set $3 + local.tee $3 + local.set $2 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.05 - local.get $2 + local.get $3 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.05 local.get $2 local.get $3 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.get $3 + local.get $2 local.get $2 local.get $3 - i32.le_s + i32.ge_s select - local.get $3 + local.get $2 i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|06 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 i32.const 2 i32.shl local.get $2 @@ -20850,17 +21037,17 @@ f32.const 11 f32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.05 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|06 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -20873,43 +21060,43 @@ end i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $2 - local.set $3 + local.tee $3 + local.set $2 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.011 - local.get $2 + local.get $3 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.011 local.get $2 local.get $3 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.get $3 + local.get $2 local.get $2 local.get $3 - i32.le_s + i32.ge_s select - local.get $3 + local.get $2 i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|012 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 i32.const 2 i32.shl local.get $2 @@ -20918,17 +21105,17 @@ f32.const -1 f32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.011 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|012 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -20941,43 +21128,43 @@ end i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $2 - local.set $3 + local.tee $3 + local.set $2 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.017 - local.get $2 + local.get $3 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.017 local.get $2 local.get $3 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.get $3 + local.get $2 local.get $2 local.get $3 - i32.le_s + i32.ge_s select - local.get $3 + local.get $2 i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|018 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 i32.const 2 i32.shl local.get $2 @@ -20986,17 +21173,17 @@ f32.const 3 f32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.017 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|018 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -21008,35 +21195,35 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.019 - local.get $1 + local.get $0 local.tee $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.019 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 4 - local.get $1 + local.get $0 i32.const 4 i32.le_u select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|033 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl local.get $3 @@ -21045,17 +21232,17 @@ f32.const 3 f32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.019 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|033 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -21067,34 +21254,34 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.035 local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.035 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 3 - local.get $1 + local.get $0 i32.const 3 i32.le_u select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|037 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl local.get $3 @@ -21103,17 +21290,17 @@ f32.const 3 f32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.035 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|037 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -21125,34 +21312,34 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.039 local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.039 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 2 - local.get $1 + local.get $0 i32.const 2 i32.le_u select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|041 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl local.get $3 @@ -21161,17 +21348,17 @@ f32.const 3 f32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.039 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|041 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -21183,34 +21370,34 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.043 local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.043 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 100 - local.get $1 + local.get $0 i32.const 100 i32.le_u select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|045 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl local.get $3 @@ -21219,17 +21406,17 @@ f32.const 1 f32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.043 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|045 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 1 i32.ne if @@ -21241,47 +21428,47 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.047 local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.047 - local.get $0 + local.get $1 i32.const 10 i32.sub - local.set $1 + local.set $0 local.get $2 i32.load offset=4 - local.set $0 + local.set $1 loop $while-continue|049 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add f32.load f32.const 1 f32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.047 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|049 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -21293,47 +21480,47 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.051 local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.051 - local.get $0 + local.get $1 i32.const 11 i32.sub - local.set $1 + local.set $0 local.get $2 i32.load offset=4 - local.set $0 + local.set $1 loop $while-continue|053 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add f32.load f32.const 1 f32.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.051 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|053 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -21348,14 +21535,14 @@ local.get $2 i32.const 9 call $~lib/typedarray/Float32Array#subarray - local.tee $2 + local.tee $4 i32.store offset=8 i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.055 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -21365,35 +21552,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.055 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|057 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 3 f32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.055 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|057 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -21405,11 +21592,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.059 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -21419,35 +21606,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.059 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|061 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 4 f32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.059 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|061 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -21457,11 +21644,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.063 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -21471,35 +21658,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.063 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|065 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 5 f32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.063 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|065 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 1 i32.ne if @@ -21511,11 +21698,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.067 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -21525,35 +21712,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.067 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|069 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 9 f32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.067 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|069 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -21565,11 +21752,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.071 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -21579,35 +21766,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.071 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|073 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 10 f32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.071 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|073 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -21619,11 +21806,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.075 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -21633,35 +21820,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.075 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|077 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 11 f32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.075 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|077 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -21673,11 +21860,11 @@ unreachable end i32.const 1 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.079 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -21688,35 +21875,35 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.079 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|081 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add f32.load f32.const 5 f32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.079 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|081 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 1 i32.ne if @@ -21728,11 +21915,11 @@ unreachable end i32.const 2 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.083 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -21743,16 +21930,16 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.083 - local.get $2 + local.get $4 i32.load offset=4 local.set $2 loop $while-continue|085 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl local.get $2 @@ -21761,17 +21948,17 @@ f32.const 5 f32.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.083 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|085 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -21809,85 +21996,83 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i64.const 0 i64.store - local.get $1 + local.get $2 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const 7728 i32.store - local.get $1 + local.get $2 i32.const 7740 i32.load - local.tee $1 + local.tee $3 call $~lib/typedarray/Float64Array#constructor local.tee $2 i32.store offset=4 loop $for-loop|0 - local.get $0 local.get $1 + local.get $3 i32.lt_s if local.get $2 - local.get $0 + local.get $1 i32.const 7728 - local.get $0 + local.get $1 call $~lib/array/Array#__get f64.convert_i32_s call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end - i32.const 0 - local.set $1 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|0 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add f64.load f64.const 0 f64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|0 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -21897,49 +22082,49 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.01 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.01 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|03 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add f64.load f64.const 11 f64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.01 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|03 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -21951,49 +22136,49 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.05 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.05 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|07 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add f64.load f64.const -1 f64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.05 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|07 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -22005,49 +22190,49 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.09 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $4 i32.const 0 - local.get $3 + local.get $4 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.09 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|011 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add f64.load f64.const 3 f64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.09 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|011 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -22059,50 +22244,50 @@ unreachable end i32.const 2 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.013 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $4 i32.const 2 i32.le_u i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.013 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|015 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add f64.load f64.const 3 f64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.013 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|015 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -22114,50 +22299,50 @@ unreachable end i32.const 3 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.017 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $4 i32.const 3 i32.le_u i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.017 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|019 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add f64.load f64.const 3 f64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.017 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|019 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -22169,50 +22354,50 @@ unreachable end i32.const 4 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.021 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $4 i32.const 4 i32.le_u i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.021 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|023 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add f64.load f64.const 3 f64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.021 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|023 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -22224,50 +22409,50 @@ unreachable end i32.const 10 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.025 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $3 + local.tee $4 i32.const 10 i32.le_u i32.const 1 - local.get $3 + local.get $4 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.025 local.get $2 i32.load offset=4 - local.set $4 + local.set $3 loop $while-continue|027 - local.get $1 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $3 i32.add f64.load f64.const 1 f64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.025 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|027 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -22279,57 +22464,57 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.029 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $3 i32.const -100 i32.le_s i32.const 1 - local.get $0 + local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.029 - local.get $0 + local.get $3 i32.const 100 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 - local.set $3 + local.set $1 loop $while-continue|031 local.get $0 - local.get $1 - i32.gt_s + local.get $3 + i32.lt_s if - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $3 + local.get $1 i32.add f64.load f64.const 1 f64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.029 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|031 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -22343,13 +22528,13 @@ i32.const 1 global.set $~argumentsLength local.get $2 - local.tee $1 + local.tee $0 i32.load offset=8 i32.const 3 i32.shr_u local.set $3 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 local.get $2 i32.load offset=8 @@ -22373,16 +22558,16 @@ i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|00 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 i32.const 3 i32.shl local.get $2 @@ -22391,17 +22576,17 @@ f64.const 0 f64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|00 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -22412,43 +22597,43 @@ end i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $2 - local.set $3 + local.tee $3 + local.set $2 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.05 - local.get $2 + local.get $3 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.05 local.get $2 local.get $3 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.get $3 + local.get $2 local.get $2 local.get $3 - i32.le_s + i32.ge_s select - local.get $3 + local.get $2 i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|06 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 i32.const 3 i32.shl local.get $2 @@ -22457,17 +22642,17 @@ f64.const 11 f64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.05 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|06 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -22480,43 +22665,43 @@ end i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $2 - local.set $3 + local.tee $3 + local.set $2 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.011 - local.get $2 + local.get $3 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.011 local.get $2 local.get $3 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.get $3 + local.get $2 local.get $2 local.get $3 - i32.le_s + i32.ge_s select - local.get $3 + local.get $2 i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|012 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 i32.const 3 i32.shl local.get $2 @@ -22525,17 +22710,17 @@ f64.const -1 f64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.011 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|012 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -22548,43 +22733,43 @@ end i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $0 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $2 - local.set $3 + local.tee $3 + local.set $2 i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.017 - local.get $2 + local.get $3 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.017 local.get $2 local.get $3 i32.add - local.get $2 + local.get $3 i32.const 1 i32.sub - local.get $3 + local.get $2 local.get $2 local.get $3 - i32.le_s + i32.ge_s select - local.get $3 + local.get $2 i32.const 0 i32.lt_s select - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=4 local.set $2 loop $while-continue|018 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if - local.get $0 + local.get $1 i32.const 3 i32.shl local.get $2 @@ -22593,17 +22778,17 @@ f64.const 3 f64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.017 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $while-continue|018 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -22615,35 +22800,35 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.019 - local.get $1 + local.get $0 local.tee $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.019 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 4 - local.get $1 + local.get $0 i32.const 4 i32.le_u select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|033 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl local.get $3 @@ -22652,17 +22837,17 @@ f64.const 3 f64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.019 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|033 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -22674,34 +22859,34 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.035 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.035 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 3 - local.get $1 + local.get $0 i32.const 3 i32.le_u select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|037 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl local.get $3 @@ -22710,17 +22895,17 @@ f64.const 3 f64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.035 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|037 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -22732,34 +22917,34 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.039 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.039 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 2 - local.get $1 + local.get $0 i32.const 2 i32.le_u select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|041 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl local.get $3 @@ -22768,17 +22953,17 @@ f64.const 3 f64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.039 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|041 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -22790,34 +22975,34 @@ unreachable end i32.const -1 - local.set $0 + local.set $1 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.043 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $1 + local.tee $0 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.043 - local.get $1 + local.get $0 i32.const 1 i32.sub i32.const 100 - local.get $1 + local.get $0 i32.const 100 i32.le_u select - local.set $1 + local.set $0 local.get $2 i32.load offset=4 local.set $3 loop $while-continue|045 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl local.get $3 @@ -22826,17 +23011,17 @@ f64.const 1 f64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.043 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|045 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 1 i32.ne if @@ -22848,47 +23033,47 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.047 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.047 - local.get $0 + local.get $1 i32.const 10 i32.sub - local.set $1 + local.set $0 local.get $2 i32.load offset=4 - local.set $0 + local.set $1 loop $while-continue|049 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add f64.load f64.const 1 f64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.047 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|049 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 1 i32.ne if @@ -22900,47 +23085,47 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.051 local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $1 i32.eqz br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.051 - local.get $0 + local.get $1 i32.const 11 i32.sub - local.set $1 + local.set $0 local.get $2 i32.load offset=4 - local.set $0 + local.set $1 loop $while-continue|053 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add f64.load f64.const 1 f64.eq br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.051 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|053 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -22956,14 +23141,14 @@ i32.const 4 i32.const 9 call $~lib/typedarray/Float64Array#subarray - local.tee $2 + local.tee $4 i32.store offset=8 i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.055 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -22973,35 +23158,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.055 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|057 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 3 f64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.055 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|057 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -23013,11 +23198,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.059 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -23027,35 +23212,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.059 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|061 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 4 f64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.059 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|061 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 if i32.const 0 i32.const 1568 @@ -23065,11 +23250,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.063 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -23079,35 +23264,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.063 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|065 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 5 f64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.063 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|065 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 1 i32.ne if @@ -23119,11 +23304,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.067 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -23133,35 +23318,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.067 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|069 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 9 f64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.067 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|069 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -23173,11 +23358,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.071 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -23187,35 +23372,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.071 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|073 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 10 f64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.071 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|073 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -23227,11 +23412,11 @@ unreachable end i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.075 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -23241,35 +23426,35 @@ select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.075 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|077 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 11 f64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.075 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|077 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -23281,11 +23466,11 @@ unreachable end i32.const 1 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.079 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -23296,35 +23481,35 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.079 - local.get $2 + local.get $4 i32.load offset=4 - local.set $4 + local.set $2 loop $while-continue|081 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add f64.load f64.const 5 f64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.079 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|081 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 1 i32.ne if @@ -23336,11 +23521,11 @@ unreachable end i32.const 2 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.083 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u @@ -23351,16 +23536,16 @@ local.get $3 select br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.083 - local.get $2 + local.get $4 i32.load offset=4 local.set $2 loop $while-continue|085 - local.get $1 + local.get $0 local.get $3 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl local.get $2 @@ -23369,17 +23554,17 @@ f64.const 5 f64.eq br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.083 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|085 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -23538,48 +23723,48 @@ end local.get $1 i32.extend8_s - local.tee $1 local.tee $3 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $3 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $3 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $3 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $3 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $3 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -23587,12 +23772,12 @@ end local.get $2 i32.add - local.set $2 + local.set $1 local.get $0 + local.get $3 local.get $1 - local.get $2 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $1 ) (func $~lib/typedarray/Int8Array#join (param $0 i32) (result i32) (local $1 i32) @@ -23604,7 +23789,7 @@ block $__inlined_func$~lib/util/string/joinIntegerArray (result i32) local.get $0 i32.load offset=4 - local.set $5 + local.set $4 local.get $0 i32.load offset=8 i32.const 0 @@ -23629,7 +23814,7 @@ i32.store i32.const 1 i32.sub - local.tee $2 + local.tee $6 i32.const 0 i32.lt_s if @@ -23641,66 +23826,66 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $2 + local.get $6 i32.eqz if - local.get $5 + local.get $4 i32.load8_s call $~lib/util/number/itoa32 local.set $0 br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $6 i32.const 9580 i32.load i32.const 1 i32.shr_u - local.tee $3 + local.tee $2 i32.const 11 i32.add i32.mul i32.const 11 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store loop $for-loop|0 local.get $1 - local.get $2 + local.get $6 i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add local.get $1 - local.get $5 + local.get $4 i32.add i32.load8_s call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $3 + local.get $2 if local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add i32.const 9584 - local.get $3 + local.get $2 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $3 + local.get $2 i32.add local.set $0 end @@ -23711,15 +23896,15 @@ br $for-loop|0 end end - local.get $4 + local.get $3 local.get $0 i32.const 1 i32.shl - local.get $6 - i32.add - local.get $2 local.get $5 i32.add + local.get $4 + local.get $6 + i32.add i32.load8_s call $~lib/util/number/itoa_buffered local.get $0 @@ -23727,7 +23912,7 @@ local.tee $0 i32.gt_s if - local.get $6 + local.get $5 local.get $0 call $~lib/string/String#substring local.set $0 @@ -23737,7 +23922,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $5 br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer @@ -23837,14 +24022,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -23948,7 +24133,7 @@ block $__inlined_func$~lib/util/string/joinIntegerArray (result i32) local.get $0 i32.load offset=4 - local.set $5 + local.set $4 local.get $0 i32.load offset=8 i32.const 0 @@ -23973,7 +24158,7 @@ i32.store i32.const 1 i32.sub - local.tee $2 + local.tee $6 i32.const 0 i32.lt_s if @@ -23985,66 +24170,66 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $2 + local.get $6 i32.eqz if - local.get $5 + local.get $4 i32.load8_u call $~lib/util/number/utoa32 local.set $0 br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $6 i32.const 9580 i32.load i32.const 1 i32.shr_u - local.tee $3 + local.tee $2 i32.const 10 i32.add i32.mul i32.const 10 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store loop $for-loop|0 local.get $1 - local.get $2 + local.get $6 i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add local.get $1 - local.get $5 + local.get $4 i32.add i32.load8_u call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $3 + local.get $2 if local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add i32.const 9584 - local.get $3 + local.get $2 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $3 + local.get $2 i32.add local.set $0 end @@ -24055,15 +24240,15 @@ br $for-loop|0 end end - local.get $4 + local.get $3 local.get $0 i32.const 1 i32.shl - local.get $6 - i32.add - local.get $2 local.get $5 i32.add + local.get $4 + local.get $6 + i32.add i32.load8_u call $~lib/util/number/itoa_buffered local.get $0 @@ -24071,7 +24256,7 @@ local.tee $0 i32.gt_s if - local.get $6 + local.get $5 local.get $0 call $~lib/string/String#substring local.set $0 @@ -24081,7 +24266,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $5 br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer @@ -24130,48 +24315,48 @@ end local.get $1 i32.extend16_s - local.tee $1 local.tee $3 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $3 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $3 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $3 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $3 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $3 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $3 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -24179,12 +24364,12 @@ end local.get $2 i32.add - local.set $2 + local.set $1 local.get $0 + local.get $3 local.get $1 - local.get $2 call $~lib/util/number/utoa32_dec_lut - local.get $2 + local.get $1 ) (func $~lib/typedarray/Int16Array#join (param $0 i32) (result i32) (local $1 i32) @@ -24196,7 +24381,7 @@ block $__inlined_func$~lib/util/string/joinIntegerArray (result i32) local.get $0 i32.load offset=4 - local.set $5 + local.set $4 local.get $0 i32.load offset=8 i32.const 1 @@ -24223,7 +24408,7 @@ i32.store i32.const 1 i32.sub - local.tee $2 + local.tee $6 i32.const 0 i32.lt_s if @@ -24235,68 +24420,68 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $2 + local.get $6 i32.eqz if - local.get $5 + local.get $4 i32.load16_s call $~lib/util/number/itoa32 local.set $0 br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $6 i32.const 9580 i32.load i32.const 1 i32.shr_u - local.tee $3 + local.tee $2 i32.const 11 i32.add i32.mul i32.const 11 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store loop $for-loop|0 local.get $1 - local.get $2 + local.get $6 i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add local.get $1 i32.const 1 i32.shl - local.get $5 + local.get $4 i32.add i32.load16_s call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $3 + local.get $2 if local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add i32.const 9584 - local.get $3 + local.get $2 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $3 + local.get $2 i32.add local.set $0 end @@ -24307,16 +24492,16 @@ br $for-loop|0 end end - local.get $4 + local.get $3 local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add - local.get $2 + local.get $6 i32.const 1 i32.shl - local.get $5 + local.get $4 i32.add i32.load16_s call $~lib/util/number/itoa_buffered @@ -24325,7 +24510,7 @@ local.tee $0 i32.gt_s if - local.get $6 + local.get $5 local.get $0 call $~lib/string/String#substring local.set $0 @@ -24335,7 +24520,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $5 br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer @@ -24430,7 +24615,7 @@ block $__inlined_func$~lib/util/string/joinIntegerArray (result i32) local.get $0 i32.load offset=4 - local.set $5 + local.set $4 local.get $0 i32.load offset=8 i32.const 1 @@ -24457,7 +24642,7 @@ i32.store i32.const 1 i32.sub - local.tee $2 + local.tee $6 i32.const 0 i32.lt_s if @@ -24469,68 +24654,68 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $2 + local.get $6 i32.eqz if - local.get $5 + local.get $4 i32.load16_u call $~lib/util/number/utoa32 local.set $0 br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $6 i32.const 9580 i32.load i32.const 1 i32.shr_u - local.tee $3 + local.tee $2 i32.const 10 i32.add i32.mul i32.const 10 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store loop $for-loop|0 local.get $1 - local.get $2 + local.get $6 i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add local.get $1 i32.const 1 i32.shl - local.get $5 + local.get $4 i32.add i32.load16_u call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $3 + local.get $2 if local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add i32.const 9584 - local.get $3 + local.get $2 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $3 + local.get $2 i32.add local.set $0 end @@ -24541,16 +24726,16 @@ br $for-loop|0 end end - local.get $4 + local.get $3 local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add - local.get $2 + local.get $6 i32.const 1 i32.shl - local.get $5 + local.get $4 i32.add i32.load16_u call $~lib/util/number/itoa_buffered @@ -24559,7 +24744,7 @@ local.tee $0 i32.gt_s if - local.get $6 + local.get $5 local.get $0 call $~lib/string/String#substring local.set $0 @@ -24569,7 +24754,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $5 br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer @@ -24676,7 +24861,7 @@ block $__inlined_func$~lib/util/string/joinIntegerArray (result i32) local.get $0 i32.load offset=4 - local.set $5 + local.set $4 local.get $0 i32.load offset=8 i32.const 2 @@ -24703,7 +24888,7 @@ i32.store i32.const 1 i32.sub - local.tee $2 + local.tee $6 i32.const 0 i32.lt_s if @@ -24715,68 +24900,68 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $2 + local.get $6 i32.eqz if - local.get $5 + local.get $4 i32.load call $~lib/util/number/itoa32 local.set $0 br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $6 i32.const 9580 i32.load i32.const 1 i32.shr_u - local.tee $3 + local.tee $2 i32.const 11 i32.add i32.mul i32.const 11 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store loop $for-loop|0 local.get $1 - local.get $2 + local.get $6 i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add local.get $1 i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add i32.load call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $3 + local.get $2 if local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add i32.const 9584 - local.get $3 + local.get $2 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $3 + local.get $2 i32.add local.set $0 end @@ -24787,16 +24972,16 @@ br $for-loop|0 end end - local.get $4 + local.get $3 local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add - local.get $2 + local.get $6 i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add i32.load call $~lib/util/number/itoa_buffered @@ -24805,7 +24990,7 @@ local.tee $0 i32.gt_s if - local.get $6 + local.get $5 local.get $0 call $~lib/string/String#substring local.set $0 @@ -24815,7 +25000,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $5 br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer @@ -24900,7 +25085,7 @@ block $__inlined_func$~lib/util/string/joinIntegerArray (result i32) local.get $0 i32.load offset=4 - local.set $5 + local.set $4 local.get $0 i32.load offset=8 i32.const 2 @@ -24927,7 +25112,7 @@ i32.store i32.const 1 i32.sub - local.tee $2 + local.tee $6 i32.const 0 i32.lt_s if @@ -24939,68 +25124,68 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $2 + local.get $6 i32.eqz if - local.get $5 + local.get $4 i32.load call $~lib/util/number/utoa32 local.set $0 br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $6 i32.const 9580 i32.load i32.const 1 i32.shr_u - local.tee $3 + local.tee $2 i32.const 10 i32.add i32.mul i32.const 10 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store loop $for-loop|0 local.get $1 - local.get $2 + local.get $6 i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add local.get $1 i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add i32.load call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $3 + local.get $2 if local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add i32.const 9584 - local.get $3 + local.get $2 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $3 + local.get $2 i32.add local.set $0 end @@ -25011,16 +25196,16 @@ br $for-loop|0 end end - local.get $4 + local.get $3 local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add - local.get $2 + local.get $6 i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add i32.load call $~lib/util/number/itoa_buffered @@ -25029,7 +25214,7 @@ local.tee $0 i32.gt_s if - local.get $6 + local.get $5 local.get $0 call $~lib/string/String#substring local.set $0 @@ -25039,7 +25224,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $5 br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer @@ -25060,7 +25245,7 @@ local.get $2 i32.const 4 i32.sub - local.tee $3 + local.tee $2 i32.const 1 i32.shl local.get $0 @@ -25074,10 +25259,10 @@ i64.mul i64.sub i32.wrap_i64 - local.tee $4 + local.tee $3 i32.const 10000 i32.rem_u - local.tee $2 + local.tee $4 i32.const 100 i32.div_u i32.const 2 @@ -25085,7 +25270,7 @@ i32.const 8012 i32.add i64.load32_u - local.get $2 + local.get $4 i32.const 100 i32.rem_u i32.const 2 @@ -25097,7 +25282,7 @@ i64.shl i64.or i64.store - local.get $3 + local.get $2 i32.const 4 i32.sub local.tee $2 @@ -25105,7 +25290,7 @@ i32.shl local.get $0 i32.add - local.get $4 + local.get $3 i32.const 10000 i32.div_u local.tee $3 @@ -25144,7 +25329,7 @@ local.get $1 i64.const 0 i64.lt_s - local.tee $4 + local.tee $2 if local.get $0 i32.const 45 @@ -25158,7 +25343,7 @@ i64.const 10 i64.lt_u if - local.get $4 + local.get $2 i32.const 1 i32.shl local.get $0 @@ -25167,7 +25352,7 @@ i64.const 48 i64.or i64.store16 - local.get $4 + local.get $2 i32.const 1 i32.add return @@ -25179,53 +25364,53 @@ local.get $1 i32.wrap_i64 local.tee $3 - local.tee $2 + local.tee $4 i32.const 100000 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 100 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $2 + local.get $4 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $2 + local.get $4 i32.const 1000 i32.ge_u i32.add end else - local.get $2 + local.get $4 i32.const 10000000 i32.lt_u if (result i32) - local.get $2 + local.get $4 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $2 + local.get $4 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $2 + local.get $4 i32.const 100000000 i32.ge_u i32.add end end - local.get $4 + local.get $2 i32.add local.set $2 local.get $0 @@ -25285,7 +25470,7 @@ i32.add end end - local.get $4 + local.get $2 i32.add local.tee $2 call $~lib/util/number/utoa64_dec_lut @@ -25302,7 +25487,7 @@ (local $7 i32) local.get $0 i32.load offset=4 - local.set $5 + local.set $4 local.get $0 i32.load offset=8 i32.const 3 @@ -25326,7 +25511,7 @@ local.get $1 i32.const 1 i32.sub - local.tee $4 + local.tee $7 i32.const 0 i32.lt_s if @@ -25339,10 +25524,10 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $4 + local.get $7 i32.eqz if - local.get $5 + local.get $4 i64.load i64.extend32_s local.set $2 @@ -25526,18 +25711,18 @@ br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.const 9580 i32.load i32.const 1 i32.shr_u - local.tee $6 + local.tee $5 i32.const 21 i32.add i32.mul i32.const 21 i32.add - local.tee $7 + local.tee $6 i32.const 1 i32.shl i32.const 1 @@ -25546,7 +25731,7 @@ i32.store loop $for-loop|0 local.get $3 - local.get $4 + local.get $7 i32.lt_s if local.get $0 @@ -25557,14 +25742,14 @@ local.get $3 i32.const 3 i32.shl - local.get $5 + local.get $4 i32.add i64.load call $~lib/util/number/itoa_buffered local.get $0 i32.add local.set $0 - local.get $6 + local.get $5 if local.get $0 i32.const 1 @@ -25572,12 +25757,12 @@ local.get $1 i32.add i32.const 9584 - local.get $6 + local.get $5 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $6 + local.get $5 i32.add local.set $0 end @@ -25588,16 +25773,16 @@ br $for-loop|0 end end - local.get $7 + local.get $6 local.get $0 i32.const 1 i32.shl local.get $1 i32.add - local.get $4 + local.get $7 i32.const 3 i32.shl - local.get $5 + local.get $4 i32.add i64.load call $~lib/util/number/itoa_buffered @@ -25796,7 +25981,7 @@ i32.store i32.const 1 i32.sub - local.tee $0 + local.tee $7 i32.const 0 i32.lt_s if @@ -25808,7 +25993,7 @@ br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner0 - local.get $0 + local.get $7 i32.eqz if block $__inlined_func$~lib/util/number/utoa64 (result i32) @@ -25975,33 +26160,33 @@ br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $7 i32.const 9580 i32.load i32.const 1 i32.shr_u - local.tee $5 + local.tee $0 i32.const 20 i32.add i32.mul i32.const 20 i32.add - local.tee $6 + local.tee $5 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $6 i32.store loop $for-loop|0 - local.get $0 local.get $3 - i32.gt_s + local.get $7 + i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $7 + local.get $6 i32.add local.get $3 i32.const 3 @@ -26013,20 +26198,20 @@ local.get $1 i32.add local.set $1 - local.get $5 + local.get $0 if local.get $1 i32.const 1 i32.shl - local.get $7 + local.get $6 i32.add i32.const 9584 - local.get $5 + local.get $0 i32.const 1 i32.shl call $~lib/memory/memory.copy + local.get $0 local.get $1 - local.get $5 i32.add local.set $1 end @@ -26037,13 +26222,13 @@ br $for-loop|0 end end - local.get $6 + local.get $5 local.get $1 i32.const 1 i32.shl - local.get $7 + local.get $6 i32.add - local.get $0 + local.get $7 i32.const 3 i32.shl local.get $4 @@ -26055,7 +26240,7 @@ local.tee $0 i32.gt_s if - local.get $7 + local.get $6 local.get $0 call $~lib/string/String#substring local.set $0 @@ -26065,7 +26250,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $6 br $__inlined_func$~lib/util/string/joinIntegerArray end global.get $~lib/memory/__stack_pointer @@ -26659,64 +26844,63 @@ i32.const 101 i32.store16 offset=2 local.get $0 - local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $1 i32.const 0 i32.lt_s local.tee $2 if i32.const 0 - local.get $0 + local.get $1 i32.sub - local.set $0 + local.set $1 end - local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -26724,15 +26908,15 @@ end i32.const 1 i32.add - local.tee $0 + local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $0 i32.const 45 i32.const 43 local.get $2 select i32.store16 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.add else @@ -26848,13 +27032,13 @@ (local $5 i64) (local $6 i64) (local $7 i64) - (local $8 i64) - (local $9 i64) - (local $10 i64) + (local $8 i32) + (local $9 i32) + (local $10 i32) (local $11 i64) - (local $12 i32) - (local $13 i32) - (local $14 i32) + (local $12 i64) + (local $13 i64) + (local $14 i64) (local $15 i64) (local $16 i64) local.get $1 @@ -26877,19 +27061,19 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $12 + local.tee $8 i32.const 1 - local.get $12 + local.get $8 select i32.const 1075 i32.sub - local.tee $13 + local.tee $9 i32.const 1 i32.sub local.get $2 i64.const 4503599627370495 i64.and - local.get $12 + local.get $8 i32.const 0 i32.ne i64.extend_i32_u @@ -26904,11 +27088,11 @@ local.tee $4 i64.clz i32.wrap_i64 - local.tee $12 + local.tee $8 i32.sub - local.set $14 + local.set $10 local.get $4 - local.get $12 + local.get $8 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -26918,25 +27102,25 @@ i64.eq i32.const 1 i32.add - local.tee $12 + local.tee $8 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $13 - local.get $12 + local.get $9 + local.get $8 i32.sub - local.get $14 + local.get $10 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $14 + local.get $10 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $12 + local.tee $8 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -26945,9 +27129,9 @@ f64.add local.tee $1 i32.trunc_f64_s - local.tee $13 + local.tee $9 local.get $1 - local.get $13 + local.get $9 f64.convert_i32_s f64.ne i32.add @@ -26955,18 +27139,18 @@ i32.shr_s i32.const 1 i32.add - local.tee $13 + local.tee $9 i32.const 3 i32.shl - local.tee $14 + local.tee $10 i32.sub global.set $~lib/util/number/_K - local.get $14 + local.get $10 i32.const 9864 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $13 + local.get $9 i32.const 1 i32.shl i32.const 10560 @@ -26977,85 +27161,85 @@ local.get $2 i64.clz i64.shl - local.tee $4 + local.tee $2 i64.const 4294967295 i64.and - local.set $2 - local.get $4 + local.set $11 + local.get $2 i64.const 32 i64.shr_u - local.tee $9 + local.tee $5 global.get $~lib/util/number/_frc_pow - local.tee $15 + local.tee $7 i64.const 4294967295 i64.and - local.tee $8 - local.tee $4 + local.tee $12 + local.tee $2 i64.mul local.get $2 - local.get $4 + local.get $11 i64.mul i64.const 32 i64.shr_u i64.add - local.set $4 + local.set $13 global.get $~lib/util/number/_frc_plus - local.tee $6 + local.tee $4 i64.const 4294967295 i64.and - local.set $5 - local.get $6 + local.set $2 + local.get $4 i64.const 32 i64.shr_u - local.tee $10 - local.get $8 + local.tee $6 + local.get $12 i64.mul - local.get $5 - local.get $8 + local.get $2 + local.get $12 i64.mul i64.const 32 i64.shr_u i64.add - local.set $6 + local.set $14 global.get $~lib/util/number/_frc_minus - local.tee $11 + local.tee $15 i64.const 4294967295 i64.and - local.set $7 - local.get $11 + local.set $4 + local.get $15 i64.const 32 i64.shr_u - local.tee $11 - local.get $8 + local.tee $15 + local.get $12 i64.mul - local.get $7 - local.get $8 + local.get $4 + local.get $12 i64.mul i64.const 32 i64.shr_u i64.add - local.set $8 + local.set $12 local.get $3 i32.const 1 i32.shl local.get $0 i32.add local.get $0 - local.get $9 - local.get $15 + local.get $5 + local.get $7 i64.const 32 i64.shr_u - local.tee $15 local.tee $16 + local.tee $7 i64.mul - local.get $4 + local.get $13 i64.const 32 i64.shr_u i64.add - local.get $2 - local.get $16 + local.get $7 + local.get $11 i64.mul - local.get $4 + local.get $13 i64.const 4294967295 i64.and i64.add @@ -27064,17 +27248,17 @@ i64.const 32 i64.shr_u i64.add - local.get $10 - local.get $15 - i64.mul local.get $6 + local.get $16 + i64.mul + local.get $14 i64.const 32 i64.shr_u i64.add - local.get $5 - local.get $15 + local.get $2 + local.get $16 i64.mul - local.get $6 + local.get $14 i64.const 4294967295 i64.and i64.add @@ -27087,22 +27271,22 @@ i64.sub local.tee $2 global.get $~lib/util/number/_exp_pow - local.get $12 + local.get $8 i32.add i32.const -64 i32.sub local.get $2 - local.get $11 local.get $15 + local.get $16 i64.mul - local.get $8 + local.get $12 i64.const 32 i64.shr_u i64.add - local.get $7 - local.get $15 + local.get $4 + local.get $16 i64.mul - local.get $8 + local.get $12 i64.const 4294967295 i64.and i64.add @@ -27203,7 +27387,7 @@ block $__inlined_func$~lib/util/string/joinFloatArray (result i32) local.get $0 i32.load offset=4 - local.set $5 + local.set $4 local.get $0 i32.load offset=8 i32.const 2 @@ -27230,7 +27414,7 @@ i32.store i32.const 1 i32.sub - local.tee $2 + local.tee $6 i32.const 0 i32.lt_s if @@ -27242,10 +27426,10 @@ br $__inlined_func$~lib/util/string/joinFloatArray end block $folding-inner0 - local.get $2 + local.get $6 i32.eqz if - local.get $5 + local.get $4 f32.load f64.promote_f32 call $~lib/util/number/dtoa @@ -27253,38 +27437,38 @@ br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $6 i32.const 9580 i32.load i32.const 1 i32.shr_u - local.tee $3 + local.tee $2 i32.const 28 i32.add i32.mul i32.const 28 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store loop $for-loop|0 local.get $1 - local.get $2 + local.get $6 i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add local.get $1 i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add f32.load f64.promote_f32 @@ -27292,20 +27476,20 @@ local.get $0 i32.add local.set $0 - local.get $3 + local.get $2 if local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add i32.const 9584 - local.get $3 + local.get $2 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $3 + local.get $2 i32.add local.set $0 end @@ -27316,16 +27500,16 @@ br $for-loop|0 end end - local.get $4 + local.get $3 local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add - local.get $2 + local.get $6 i32.const 2 i32.shl - local.get $5 + local.get $4 i32.add f32.load f64.promote_f32 @@ -27335,7 +27519,7 @@ local.tee $0 i32.gt_s if - local.get $6 + local.get $5 local.get $0 call $~lib/string/String#substring local.set $0 @@ -27345,7 +27529,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $5 br $__inlined_func$~lib/util/string/joinFloatArray end global.get $~lib/memory/__stack_pointer @@ -27365,7 +27549,7 @@ block $__inlined_func$~lib/util/string/joinFloatArray (result i32) local.get $0 i32.load offset=4 - local.set $5 + local.set $4 local.get $0 i32.load offset=8 i32.const 3 @@ -27392,7 +27576,7 @@ i32.store i32.const 1 i32.sub - local.tee $2 + local.tee $6 i32.const 0 i32.lt_s if @@ -27404,68 +27588,68 @@ br $__inlined_func$~lib/util/string/joinFloatArray end block $folding-inner0 - local.get $2 + local.get $6 i32.eqz if - local.get $5 + local.get $4 f64.load call $~lib/util/number/dtoa local.set $0 br $folding-inner0 end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $6 i32.const 9580 i32.load i32.const 1 i32.shr_u - local.tee $3 + local.tee $2 i32.const 28 i32.add i32.mul i32.const 28 i32.add - local.tee $4 + local.tee $3 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store loop $for-loop|0 local.get $1 - local.get $2 + local.get $6 i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add local.get $1 i32.const 3 i32.shl - local.get $5 + local.get $4 i32.add f64.load call $~lib/util/number/dtoa_buffered local.get $0 i32.add local.set $0 - local.get $3 + local.get $2 if local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add i32.const 9584 - local.get $3 + local.get $2 i32.const 1 i32.shl call $~lib/memory/memory.copy local.get $0 - local.get $3 + local.get $2 i32.add local.set $0 end @@ -27476,16 +27660,16 @@ br $for-loop|0 end end - local.get $4 + local.get $3 local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $5 i32.add - local.get $2 + local.get $6 i32.const 3 i32.shl - local.get $5 + local.get $4 i32.add f64.load call $~lib/util/number/dtoa_buffered @@ -27494,7 +27678,7 @@ local.tee $0 i32.gt_s if - local.get $6 + local.get $5 local.get $0 call $~lib/string/String#substring local.set $0 @@ -27504,7 +27688,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $5 br $__inlined_func$~lib/util/string/joinFloatArray end global.get $~lib/memory/__stack_pointer @@ -27650,25 +27834,25 @@ end local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 11012 i32.load - local.set $0 + local.set $3 i32.const 11020 i32.load - local.set $2 + local.set $0 loop $for-loop|0 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if local.get $1 - local.get $3 + local.get $2 i32.add local.get $1 i32.const 2 i32.shl - local.get $0 + local.get $3 i32.add i32.load i32.store8 @@ -27704,10 +27888,10 @@ i32.load offset=4 i32.const 6 i32.add - local.set $3 + local.set $0 local.get $1 i32.load offset=4 - local.set $0 + local.set $3 local.get $1 i32.load offset=8 i32.const 3 @@ -27718,13 +27902,13 @@ local.get $2 i32.gt_s if + local.get $0 local.get $2 - local.get $3 i32.add local.get $2 i32.const 3 i32.shl - local.get $0 + local.get $3 i32.add i64.load i64.store8 @@ -27782,10 +27966,10 @@ i32.load offset=4 i32.const 4 i32.add - local.set $3 + local.set $0 local.get $1 i32.load offset=4 - local.set $0 + local.set $3 local.get $1 i32.load offset=8 i32.const 1 @@ -27796,13 +27980,13 @@ local.get $2 i32.gt_s if + local.get $0 local.get $2 - local.get $3 i32.add local.get $2 i32.const 1 i32.shl - local.get $0 + local.get $3 i32.add i32.load16_s i32.store8 @@ -27879,7 +28063,7 @@ local.set $2 local.get $1 i32.load offset=4 - local.set $0 + local.set $5 local.get $1 i32.load offset=8 i32.const 3 @@ -27896,12 +28080,12 @@ local.get $3 i32.const 3 i32.shl - local.get $0 + local.get $5 i32.add i64.load local.tee $4 i32.wrap_i64 - local.tee $5 + local.tee $0 i32.const 31 i32.shr_s i32.const -1 @@ -27909,7 +28093,7 @@ i64.extend_i32_s local.get $4 i32.const 255 - local.get $5 + local.get $0 i32.sub i32.const 31 i32.shr_s @@ -27963,7 +28147,7 @@ local.set $2 local.get $1 i32.load offset=4 - local.set $0 + local.set $4 local.get $1 i32.load offset=8 i32.const 1 @@ -27980,17 +28164,17 @@ local.get $3 i32.const 1 i32.shl - local.get $0 + local.get $4 i32.add i32.load16_s - local.tee $4 + local.tee $0 i32.const 255 - local.get $4 + local.get $0 i32.sub i32.const 31 i32.shr_s i32.or - local.get $4 + local.get $0 i32.const 31 i32.shr_s i32.const -1 @@ -28026,27 +28210,27 @@ end local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 11012 i32.load - local.set $0 + local.set $3 i32.const 11020 i32.load - local.set $2 + local.set $0 loop $for-loop|0 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if local.get $1 i32.const 1 i32.shl - local.get $3 + local.get $2 i32.add local.get $1 i32.const 2 i32.shl - local.get $0 + local.get $3 i32.add i32.load i32.store16 @@ -28084,10 +28268,10 @@ i32.load offset=4 i32.const 12 i32.add - local.set $3 + local.set $0 local.get $1 i32.load offset=4 - local.set $0 + local.set $3 local.get $1 i32.load offset=8 i32.const 3 @@ -28101,12 +28285,12 @@ local.get $2 i32.const 1 i32.shl - local.get $3 + local.get $0 i32.add local.get $2 i32.const 3 i32.shl - local.get $0 + local.get $3 i32.add i64.load i64.store16 @@ -28138,10 +28322,10 @@ end local.get $0 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=4 - local.set $0 + local.set $3 local.get $1 i32.load offset=8 local.set $1 @@ -28153,10 +28337,10 @@ local.get $2 i32.const 1 i32.shl - local.get $3 - i32.add local.get $0 + i32.add local.get $2 + local.get $3 i32.add i32.load8_u i32.store16 @@ -28223,25 +28407,25 @@ i32.load offset=4 i32.const 14 i32.add - local.set $3 + local.set $2 i32.const 11268 i32.load - local.set $0 + local.set $3 i32.const 11276 i32.load - local.set $2 + local.set $0 loop $for-loop|0 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if local.get $1 i32.const 1 i32.shl - local.get $3 + local.get $2 i32.add - local.get $0 local.get $1 + local.get $3 i32.add i32.load8_s i32.store16 @@ -28320,10 +28504,10 @@ i32.load offset=4 i32.const 24 i32.add - local.set $3 + local.set $0 local.get $1 i32.load offset=4 - local.set $0 + local.set $3 local.get $1 i32.load offset=8 i32.const 3 @@ -28337,12 +28521,12 @@ local.get $2 i32.const 2 i32.shl - local.get $3 + local.get $0 i32.add local.get $2 i32.const 3 i32.shl - local.get $0 + local.get $3 i32.add i64.load i64.store32 @@ -28374,10 +28558,10 @@ end local.get $0 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=4 - local.set $0 + local.set $3 local.get $1 i32.load offset=8 local.set $1 @@ -28389,10 +28573,10 @@ local.get $2 i32.const 2 i32.shl - local.get $3 - i32.add local.get $0 + i32.add local.get $2 + local.get $3 i32.add i32.load8_u i32.store @@ -28430,10 +28614,10 @@ i32.load offset=4 i32.const 16 i32.add - local.set $3 + local.set $0 local.get $1 i32.load offset=4 - local.set $0 + local.set $3 local.get $1 i32.load offset=8 i32.const 1 @@ -28447,12 +28631,12 @@ local.get $2 i32.const 2 i32.shl - local.get $3 + local.get $0 i32.add local.get $2 i32.const 1 i32.shl - local.get $0 + local.get $3 i32.add i32.load16_s i32.store @@ -28489,25 +28673,25 @@ i32.load offset=4 i32.const 28 i32.add - local.set $3 + local.set $2 i32.const 11268 i32.load - local.set $0 + local.set $3 i32.const 11276 i32.load - local.set $2 + local.set $0 loop $for-loop|0 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if local.get $1 i32.const 2 i32.shl - local.get $3 + local.get $2 i32.add - local.get $0 local.get $1 + local.get $3 i32.add i32.load8_s i32.store @@ -28540,27 +28724,27 @@ end local.get $0 i32.load offset=4 - local.set $3 + local.set $2 i32.const 11012 i32.load - local.set $0 + local.set $3 i32.const 11020 i32.load - local.set $2 + local.set $0 loop $for-loop|0 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if local.get $1 i32.const 3 i32.shl - local.get $3 + local.get $2 i32.add local.get $1 i32.const 2 i32.shl - local.get $0 + local.get $3 i32.add i64.load32_s i64.store @@ -28622,10 +28806,10 @@ end local.get $0 i32.load offset=4 - local.set $3 + local.set $0 local.get $1 i32.load offset=4 - local.set $0 + local.set $3 local.get $1 i32.load offset=8 local.set $1 @@ -28637,10 +28821,10 @@ local.get $2 i32.const 3 i32.shl - local.get $3 - i32.add local.get $0 + i32.add local.get $2 + local.get $3 i32.add i64.load8_u i64.store @@ -28678,10 +28862,10 @@ i32.load offset=4 i32.const 32 i32.add - local.set $3 + local.set $0 local.get $1 i32.load offset=4 - local.set $0 + local.set $3 local.get $1 i32.load offset=8 i32.const 1 @@ -28695,12 +28879,12 @@ local.get $2 i32.const 3 i32.shl - local.get $3 + local.get $0 i32.add local.get $2 i32.const 1 i32.shl - local.get $0 + local.get $3 i32.add i64.load16_s i64.store @@ -28737,25 +28921,25 @@ i32.load offset=4 i32.const 56 i32.add - local.set $3 + local.set $2 i32.const 11268 i32.load - local.set $0 + local.set $3 i32.const 11276 i32.load - local.set $2 + local.set $0 loop $for-loop|0 + local.get $0 local.get $1 - local.get $2 - i32.lt_s + i32.gt_s if local.get $1 i32.const 3 i32.shl - local.get $3 + local.get $2 i32.add - local.get $0 local.get $1 + local.get $3 i32.add i64.load8_s i64.store @@ -29105,16 +29289,16 @@ local.get $6 i32.add i32.load8_s - local.set $7 + local.set $8 local.get $2 local.get $4 i32.add i32.load8_s - local.set $8 + local.set $7 i32.const 2 global.set $~argumentsLength - local.get $7 local.get $8 + local.get $7 local.get $5 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -29124,7 +29308,7 @@ local.get $0 local.get $1 i32.add - local.get $7 + local.get $8 i32.store8 local.get $6 i32.const 1 @@ -29134,7 +29318,7 @@ local.get $0 local.get $1 i32.add - local.get $8 + local.get $7 i32.store8 local.get $2 i32.const 1 @@ -29279,26 +29463,24 @@ local.tee $6 i32.const 2 i32.shl - local.tee $5 + local.tee $7 i32.const 1 i32.shl - local.set $7 + local.set $8 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $7 + local.get $8 call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add local.tee $9 - local.get $5 + local.get $7 i32.add local.set $10 - i32.const 0 - local.set $5 loop $for-loop|1 local.get $5 local.get $6 @@ -29886,16 +30068,16 @@ local.get $6 i32.add i32.load8_u - local.set $7 + local.set $8 local.get $2 local.get $4 i32.add i32.load8_u - local.set $8 + local.set $7 i32.const 2 global.set $~argumentsLength - local.get $7 local.get $8 + local.get $7 local.get $5 i32.load call_indirect $0 (type $i32_i32_=>_i32) @@ -29905,7 +30087,7 @@ local.get $0 local.get $1 i32.add - local.get $7 + local.get $8 i32.store8 local.get $6 i32.const 1 @@ -29915,7 +30097,7 @@ local.get $0 local.get $1 i32.add - local.get $8 + local.get $7 i32.store8 local.get $2 i32.const 1 @@ -30060,26 +30242,24 @@ local.tee $6 i32.const 2 i32.shl - local.tee $5 + local.tee $7 i32.const 1 i32.shl - local.set $7 + local.set $8 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $7 + local.get $8 call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add local.tee $9 - local.get $5 + local.get $7 i32.add local.set $10 - i32.const 0 - local.set $5 loop $for-loop|1 local.get $5 local.get $6 @@ -30892,26 +31072,24 @@ local.tee $6 i32.const 2 i32.shl - local.tee $5 + local.tee $7 i32.const 1 i32.shl - local.set $7 + local.set $8 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $7 + local.get $8 call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add local.tee $9 - local.get $5 + local.get $7 i32.add local.set $10 - i32.const 0 - local.set $5 loop $for-loop|1 local.get $5 local.get $6 @@ -30931,17 +31109,15 @@ br $for-loop|1 end end - local.get $1 - i32.const 1 - i32.shl - local.set $5 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $5 + local.get $1 + i32.const 1 + i32.shl call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add @@ -31718,26 +31894,24 @@ local.tee $6 i32.const 2 i32.shl - local.tee $5 + local.tee $7 i32.const 1 i32.shl - local.set $7 + local.set $8 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $7 + local.get $8 call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add local.tee $9 - local.get $5 + local.get $7 i32.add local.set $10 - i32.const 0 - local.set $5 loop $for-loop|1 local.get $5 local.get $6 @@ -31757,17 +31931,15 @@ br $for-loop|1 end end - local.get $1 - i32.const 1 - i32.shl - local.set $5 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $5 + local.get $1 + i32.const 1 + i32.shl call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add @@ -32554,26 +32726,24 @@ local.tee $6 i32.const 2 i32.shl - local.tee $5 + local.tee $7 i32.const 1 i32.shl - local.set $7 + local.set $8 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $7 + local.get $8 call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add local.tee $9 - local.get $5 + local.get $7 i32.add local.set $10 - i32.const 0 - local.set $5 loop $for-loop|1 local.get $5 local.get $6 @@ -32593,17 +32763,15 @@ br $for-loop|1 end end - local.get $1 - i32.const 2 - i32.shl - local.set $5 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $5 + local.get $1 + i32.const 2 + i32.shl call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add @@ -33374,26 +33542,24 @@ local.tee $6 i32.const 2 i32.shl - local.tee $5 + local.tee $7 i32.const 1 i32.shl - local.set $7 + local.set $8 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $7 + local.get $8 call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add local.tee $9 - local.get $5 + local.get $7 i32.add local.set $10 - i32.const 0 - local.set $5 loop $for-loop|1 local.get $5 local.get $6 @@ -33413,17 +33579,15 @@ br $for-loop|1 end end - local.get $1 - i32.const 2 - i32.shl - local.set $5 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $5 + local.get $1 + i32.const 2 + i32.shl call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add @@ -33807,8 +33971,8 @@ (func $~lib/util/sort/extendRunRight (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (local $4 i32) (local $5 i64) - (local $6 i64) - (local $7 i32) + (local $6 i32) + (local $7 i64) local.get $1 local.get $2 i32.eq @@ -33849,9 +34013,9 @@ i32.shl local.get $0 i32.add - local.tee $7 + local.tee $6 i64.load offset=8 - local.get $7 + local.get $6 i64.load i32.const 2 global.set $~argumentsLength @@ -34200,10 +34364,10 @@ local.get $1 i32.clz i32.sub - local.tee $7 + local.tee $8 i32.const 2 i32.shl - local.tee $6 + local.tee $7 i32.const 1 i32.shl local.set $5 @@ -34218,14 +34382,12 @@ i32.const 4 i32.add local.tee $13 - local.get $6 + local.get $7 i32.add local.set $14 - i32.const 0 - local.set $6 loop $for-loop|1 local.get $6 - local.get $7 + local.get $8 i32.lt_u if local.get $6 @@ -34242,17 +34404,15 @@ br $for-loop|1 end end - local.get $1 - i32.const 3 - i32.shl - local.set $5 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $5 + local.get $1 + i32.const 3 + i32.shl call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add @@ -34636,8 +34796,8 @@ (func $~lib/util/sort/extendRunRight (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (local $4 i32) (local $5 i64) - (local $6 i64) - (local $7 i32) + (local $6 i32) + (local $7 i64) local.get $1 local.get $2 i32.eq @@ -34678,9 +34838,9 @@ i32.shl local.get $0 i32.add - local.tee $7 + local.tee $6 i64.load offset=8 - local.get $7 + local.get $6 i64.load i32.const 2 global.set $~argumentsLength @@ -35029,10 +35189,10 @@ local.get $1 i32.clz i32.sub - local.tee $7 + local.tee $8 i32.const 2 i32.shl - local.tee $6 + local.tee $7 i32.const 1 i32.shl local.set $5 @@ -35047,14 +35207,12 @@ i32.const 4 i32.add local.tee $13 - local.get $6 + local.get $7 i32.add local.set $14 - i32.const 0 - local.set $6 loop $for-loop|1 local.get $6 - local.get $7 + local.get $8 i32.lt_u if local.get $6 @@ -35071,17 +35229,15 @@ br $for-loop|1 end end - local.get $1 - i32.const 3 - i32.shl - local.set $5 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $5 + local.get $1 + i32.const 3 + i32.shl call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add @@ -35465,8 +35621,8 @@ (func $~lib/util/sort/extendRunRight (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (local $4 i32) (local $5 f32) - (local $6 f32) - (local $7 i32) + (local $6 i32) + (local $7 f32) local.get $1 local.get $2 i32.eq @@ -35507,9 +35663,9 @@ i32.shl local.get $0 i32.add - local.tee $7 + local.tee $6 f32.load offset=4 - local.get $7 + local.get $6 f32.load i32.const 2 global.set $~argumentsLength @@ -35859,10 +36015,10 @@ local.get $1 i32.clz i32.sub - local.tee $7 + local.tee $8 i32.const 2 i32.shl - local.tee $6 + local.tee $7 i32.const 1 i32.shl local.set $5 @@ -35877,14 +36033,12 @@ i32.const 4 i32.add local.tee $13 - local.get $6 + local.get $7 i32.add local.set $14 - i32.const 0 - local.set $6 loop $for-loop|1 local.get $6 - local.get $7 + local.get $8 i32.lt_u if local.get $6 @@ -35901,17 +36055,15 @@ br $for-loop|1 end end - local.get $1 - i32.const 2 - i32.shl - local.set $5 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $5 + local.get $1 + i32.const 2 + i32.shl call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add @@ -36233,34 +36385,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 6 call $~lib/typedarray/Int8Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $1 i32.const 5 i32.const 5 call $~lib/typedarray/Int8Array#__set @@ -36268,8 +36420,6 @@ i32.const 3952 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 - local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -36279,91 +36429,92 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $5 i64.const 0 i64.store - local.get $2 + local.get $1 + local.tee $2 i32.load offset=8 - local.set $6 - local.get $0 + local.set $4 + local.get $5 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $8 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new local.tee $5 i32.store offset=4 - local.get $2 + local.get $1 i32.load offset=4 - local.set $8 + local.set $7 loop $for-loop|0 - local.get $6 - local.get $7 - i32.gt_s + local.get $3 + local.get $4 + i32.lt_s if + local.get $3 local.get $7 - local.get $8 i32.add i32.load8_s - local.set $4 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $4 - local.get $7 + local.get $6 + local.get $3 local.get $2 i32.const 3952 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $1 - local.tee $3 + local.get $0 + local.tee $1 i32.const 1 i32.add - local.set $1 - local.get $3 + local.set $0 + local.get $1 local.get $5 i32.add - local.get $4 + local.get $6 i32.store8 end - local.get $7 + local.get $3 i32.const 1 i32.add - local.set $7 + local.set $3 br $for-loop|0 end end - local.get $0 + local.get $8 local.get $5 - local.get $1 + local.get $0 call $~lib/rt/itcms/__renew - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if - local.get $0 - local.get $2 + local.get $8 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $8 local.get $0 - local.get $1 i32.store offset=8 - local.get $0 - local.get $2 + local.get $8 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $8 i32.store offset=8 - local.get $0 + local.get $8 i32.load offset=4 - local.get $0 + local.get $8 i32.load i32.sub if @@ -36374,7 +36525,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $8 i32.load offset=8 i32.const 3 i32.ne @@ -36386,7 +36537,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $8 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 3 @@ -36399,7 +36550,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $8 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 4 @@ -36412,7 +36563,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $8 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 5 @@ -36458,34 +36609,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 6 call $~lib/typedarray/Uint8Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 5 i32.const 5 call $~lib/typedarray/Uint8Array#__set @@ -36493,8 +36644,6 @@ i32.const 3984 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 - local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -36504,91 +36653,92 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $5 i64.const 0 i64.store - local.get $2 + local.get $1 + local.tee $2 i32.load offset=8 - local.set $6 - local.get $0 + local.set $4 + local.get $5 i32.const 12 i32.const 4 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $8 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new local.tee $5 i32.store offset=4 - local.get $2 + local.get $1 i32.load offset=4 - local.set $8 + local.set $7 loop $for-loop|0 - local.get $6 - local.get $7 - i32.gt_s + local.get $3 + local.get $4 + i32.lt_s if + local.get $3 local.get $7 - local.get $8 i32.add i32.load8_u - local.set $4 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $4 - local.get $7 + local.get $6 + local.get $3 local.get $2 i32.const 3984 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $1 - local.tee $3 + local.get $0 + local.tee $1 i32.const 1 i32.add - local.set $1 - local.get $3 + local.set $0 + local.get $1 local.get $5 i32.add - local.get $4 + local.get $6 i32.store8 end - local.get $7 + local.get $3 i32.const 1 i32.add - local.set $7 + local.set $3 br $for-loop|0 end end - local.get $0 + local.get $8 local.get $5 - local.get $1 + local.get $0 call $~lib/rt/itcms/__renew - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if - local.get $0 - local.get $2 + local.get $8 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $8 local.get $0 - local.get $1 i32.store offset=8 - local.get $0 - local.get $2 + local.get $8 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $8 i32.store offset=8 - local.get $0 + local.get $8 i32.load offset=4 - local.get $0 + local.get $8 i32.load i32.sub if @@ -36599,7 +36749,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $8 i32.load offset=8 i32.const 3 i32.ne @@ -36611,7 +36761,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $8 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 3 @@ -36624,7 +36774,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $8 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 4 @@ -36637,7 +36787,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $8 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 5 @@ -36683,34 +36833,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 6 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $1 i32.const 5 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#__set @@ -36718,8 +36868,6 @@ i32.const 4016 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 - local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -36729,91 +36877,92 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $5 i64.const 0 i64.store - local.get $2 + local.get $1 + local.tee $2 i32.load offset=8 - local.set $6 - local.get $0 + local.set $4 + local.get $5 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $8 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new local.tee $5 i32.store offset=4 - local.get $2 + local.get $1 i32.load offset=4 - local.set $8 + local.set $7 loop $for-loop|0 - local.get $6 - local.get $7 - i32.gt_s + local.get $3 + local.get $4 + i32.lt_s if + local.get $3 local.get $7 - local.get $8 i32.add i32.load8_u - local.set $4 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $4 - local.get $7 + local.get $6 + local.get $3 local.get $2 i32.const 4016 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $1 - local.tee $3 + local.get $0 + local.tee $1 i32.const 1 i32.add - local.set $1 - local.get $3 + local.set $0 + local.get $1 local.get $5 i32.add - local.get $4 + local.get $6 i32.store8 end - local.get $7 + local.get $3 i32.const 1 i32.add - local.set $7 + local.set $3 br $for-loop|0 end end - local.get $0 + local.get $8 local.get $5 - local.get $1 + local.get $0 call $~lib/rt/itcms/__renew - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 if - local.get $0 - local.get $2 + local.get $8 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $8 local.get $0 - local.get $1 i32.store offset=8 - local.get $0 - local.get $2 + local.get $8 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $8 i32.store offset=8 - local.get $0 + local.get $8 i32.load offset=4 - local.get $0 + local.get $8 i32.load i32.sub if @@ -36824,7 +36973,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $8 i32.load offset=8 i32.const 3 i32.ne @@ -36836,7 +36985,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $8 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 3 @@ -36849,7 +36998,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $8 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 4 @@ -36862,7 +37011,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $8 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 5 @@ -36908,34 +37057,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 6 call $~lib/typedarray/Int16Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $1 i32.const 5 i32.const 5 call $~lib/typedarray/Int16Array#__set @@ -36943,8 +37092,6 @@ i32.const 4048 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 - local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -36954,102 +37101,103 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $1 + local.tee $2 i32.load offset=8 i32.const 1 i32.shr_u - local.set $6 - local.get $0 + local.set $5 + local.get $3 i32.const 12 i32.const 6 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $5 i32.const 1 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $6 i32.store offset=4 - local.get $2 + local.get $1 i32.load offset=4 local.set $8 loop $for-loop|0 - local.get $6 - local.get $7 - i32.gt_s + local.get $4 + local.get $5 + i32.lt_s if - local.get $7 + local.get $4 i32.const 1 i32.shl local.get $8 i32.add i32.load16_s - local.set $4 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $4 local.get $7 + local.get $4 local.get $2 i32.const 4048 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $1 - local.tee $3 + local.get $0 + local.tee $1 i32.const 1 i32.add - local.set $1 - local.get $3 + local.set $0 + local.get $1 i32.const 1 i32.shl - local.get $5 + local.get $6 i32.add - local.get $4 + local.get $7 i32.store16 end - local.get $7 + local.get $4 i32.const 1 i32.add - local.set $7 + local.set $4 br $for-loop|0 end end + local.get $3 + local.get $6 local.get $0 - local.get $5 - local.get $1 i32.const 1 i32.shl - local.tee $2 + local.tee $0 call $~lib/rt/itcms/__renew local.tee $1 i32.store local.get $1 if - local.get $0 + local.get $3 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $3 local.get $0 - local.get $2 i32.store offset=8 - local.get $0 + local.get $3 local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=8 - local.get $0 + local.get $3 i32.load offset=4 - local.get $0 + local.get $3 i32.load i32.sub if @@ -37060,7 +37208,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u @@ -37074,7 +37222,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 3 @@ -37087,7 +37235,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 4 @@ -37100,7 +37248,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 5 @@ -37146,34 +37294,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 6 call $~lib/typedarray/Uint16Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $1 i32.const 5 i32.const 5 call $~lib/typedarray/Uint16Array#__set @@ -37181,8 +37329,6 @@ i32.const 4080 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 - local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -37192,102 +37338,103 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $1 + local.tee $2 i32.load offset=8 i32.const 1 i32.shr_u - local.set $6 - local.get $0 + local.set $5 + local.get $3 i32.const 12 i32.const 7 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $5 i32.const 1 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $6 i32.store offset=4 - local.get $2 + local.get $1 i32.load offset=4 local.set $8 loop $for-loop|0 - local.get $6 - local.get $7 - i32.gt_s + local.get $4 + local.get $5 + i32.lt_s if - local.get $7 + local.get $4 i32.const 1 i32.shl local.get $8 i32.add i32.load16_u - local.set $4 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $4 local.get $7 + local.get $4 local.get $2 i32.const 4080 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $1 - local.tee $3 + local.get $0 + local.tee $1 i32.const 1 i32.add - local.set $1 - local.get $3 + local.set $0 + local.get $1 i32.const 1 i32.shl - local.get $5 + local.get $6 i32.add - local.get $4 + local.get $7 i32.store16 end - local.get $7 + local.get $4 i32.const 1 i32.add - local.set $7 + local.set $4 br $for-loop|0 end end + local.get $3 + local.get $6 local.get $0 - local.get $5 - local.get $1 i32.const 1 i32.shl - local.tee $2 + local.tee $0 call $~lib/rt/itcms/__renew local.tee $1 i32.store local.get $1 if - local.get $0 + local.get $3 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $3 local.get $0 - local.get $2 i32.store offset=8 - local.get $0 + local.get $3 local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=8 - local.get $0 + local.get $3 i32.load offset=4 - local.get $0 + local.get $3 i32.load i32.sub if @@ -37298,7 +37445,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u @@ -37312,7 +37459,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 3 @@ -37325,7 +37472,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 4 @@ -37338,7 +37485,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 5 @@ -37384,34 +37531,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 6 call $~lib/typedarray/Int32Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.const 5 i32.const 5 call $~lib/typedarray/Int32Array#__set @@ -37419,8 +37566,6 @@ i32.const 4112 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 - local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -37430,102 +37575,103 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $1 + local.tee $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 - local.get $0 + local.set $5 + local.get $3 i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $5 i32.const 2 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $6 i32.store offset=4 - local.get $2 + local.get $1 i32.load offset=4 local.set $8 loop $for-loop|0 - local.get $6 - local.get $7 - i32.gt_s + local.get $4 + local.get $5 + i32.lt_s if - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $8 i32.add i32.load - local.set $4 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $4 local.get $7 + local.get $4 local.get $2 i32.const 4112 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $1 - local.tee $3 + local.get $0 + local.tee $1 i32.const 1 i32.add - local.set $1 - local.get $3 + local.set $0 + local.get $1 i32.const 2 i32.shl - local.get $5 + local.get $6 i32.add - local.get $4 + local.get $7 i32.store end - local.get $7 + local.get $4 i32.const 1 i32.add - local.set $7 + local.set $4 br $for-loop|0 end end + local.get $3 + local.get $6 local.get $0 - local.get $5 - local.get $1 i32.const 2 i32.shl - local.tee $2 + local.tee $0 call $~lib/rt/itcms/__renew local.tee $1 i32.store local.get $1 if - local.get $0 + local.get $3 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $3 local.get $0 - local.get $2 i32.store offset=8 - local.get $0 + local.get $3 local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=8 - local.get $0 + local.get $3 i32.load offset=4 - local.get $0 + local.get $3 i32.load i32.sub if @@ -37536,7 +37682,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -37550,7 +37696,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 3 @@ -37563,7 +37709,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 4 @@ -37576,7 +37722,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 5 @@ -37622,34 +37768,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 6 call $~lib/typedarray/Uint32Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 5 i32.const 5 call $~lib/typedarray/Uint32Array#__set @@ -37657,8 +37803,6 @@ i32.const 4144 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 - local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -37668,102 +37812,103 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $1 + local.tee $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 - local.get $0 + local.set $5 + local.get $3 i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $5 i32.const 2 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $6 i32.store offset=4 - local.get $2 + local.get $1 i32.load offset=4 local.set $8 loop $for-loop|0 - local.get $6 - local.get $7 - i32.gt_s + local.get $4 + local.get $5 + i32.lt_s if - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $8 i32.add i32.load - local.set $4 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $4 local.get $7 + local.get $4 local.get $2 i32.const 4144 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) if - local.get $1 - local.tee $3 + local.get $0 + local.tee $1 i32.const 1 i32.add - local.set $1 - local.get $3 + local.set $0 + local.get $1 i32.const 2 i32.shl - local.get $5 + local.get $6 i32.add - local.get $4 + local.get $7 i32.store end - local.get $7 + local.get $4 i32.const 1 i32.add - local.set $7 + local.set $4 br $for-loop|0 end end + local.get $3 + local.get $6 local.get $0 - local.get $5 - local.get $1 i32.const 2 i32.shl - local.tee $2 + local.tee $0 call $~lib/rt/itcms/__renew local.tee $1 i32.store local.get $1 if - local.get $0 + local.get $3 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $3 local.get $0 - local.get $2 i32.store offset=8 - local.get $0 + local.get $3 local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=8 - local.get $0 + local.get $3 i32.load offset=4 - local.get $0 + local.get $3 i32.load i32.sub if @@ -37774,7 +37919,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -37788,7 +37933,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 3 @@ -37801,7 +37946,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 4 @@ -37814,7 +37959,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 5 @@ -37845,10 +37990,10 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i64) + (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) + (local $7 i64) (local $8 i32) block $folding-inner0 global.get $~lib/memory/__stack_pointer @@ -37860,34 +38005,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 6 call $~lib/typedarray/Int64Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $1 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $1 i32.const 3 i64.const 4 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $1 i32.const 5 i64.const 5 call $~lib/typedarray/Int64Array#__set @@ -37895,8 +38040,6 @@ i32.const 4176 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 - local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -37906,102 +38049,103 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $1 + local.tee $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 - local.get $0 + local.set $5 + local.get $3 i32.const 12 i32.const 10 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $5 i32.const 3 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $6 i32.store offset=4 - local.get $2 + local.get $1 i32.load offset=4 local.set $8 loop $for-loop|0 - local.get $6 - local.get $7 - i32.gt_s + local.get $4 + local.get $5 + i32.lt_s if - local.get $7 + local.get $4 i32.const 3 i32.shl local.get $8 i32.add i64.load - local.set $4 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $4 local.get $7 + local.get $4 local.get $2 i32.const 4176 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) if - local.get $1 - local.tee $3 + local.get $0 + local.tee $1 i32.const 1 i32.add - local.set $1 - local.get $3 + local.set $0 + local.get $1 i32.const 3 i32.shl - local.get $5 + local.get $6 i32.add - local.get $4 + local.get $7 i64.store end - local.get $7 + local.get $4 i32.const 1 i32.add - local.set $7 + local.set $4 br $for-loop|0 end end + local.get $3 + local.get $6 local.get $0 - local.get $5 - local.get $1 i32.const 3 i32.shl - local.tee $2 + local.tee $0 call $~lib/rt/itcms/__renew local.tee $1 i32.store local.get $1 if - local.get $0 + local.get $3 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $3 local.get $0 - local.get $2 i32.store offset=8 - local.get $0 + local.get $3 local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=8 - local.get $0 + local.get $3 i32.load offset=4 - local.get $0 + local.get $3 i32.load i32.sub if @@ -38012,7 +38156,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u @@ -38026,7 +38170,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 3 @@ -38039,7 +38183,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 4 @@ -38052,7 +38196,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 5 @@ -38083,10 +38227,10 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i64) + (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) + (local $7 i64) (local $8 i32) block $folding-inner0 global.get $~lib/memory/__stack_pointer @@ -38098,34 +38242,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 6 call $~lib/typedarray/Uint64Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $1 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $1 i32.const 3 i64.const 4 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $1 i32.const 5 i64.const 5 call $~lib/typedarray/Uint64Array#__set @@ -38133,8 +38277,6 @@ i32.const 4208 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 - local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -38144,102 +38286,103 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $1 + local.tee $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 - local.get $0 + local.set $5 + local.get $3 i32.const 12 i32.const 11 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $5 i32.const 3 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $6 i32.store offset=4 - local.get $2 + local.get $1 i32.load offset=4 local.set $8 loop $for-loop|0 - local.get $6 - local.get $7 - i32.gt_s + local.get $4 + local.get $5 + i32.lt_s if - local.get $7 + local.get $4 i32.const 3 i32.shl local.get $8 i32.add i64.load - local.set $4 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $4 local.get $7 + local.get $4 local.get $2 i32.const 4208 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) if - local.get $1 - local.tee $3 + local.get $0 + local.tee $1 i32.const 1 i32.add - local.set $1 - local.get $3 + local.set $0 + local.get $1 i32.const 3 i32.shl - local.get $5 + local.get $6 i32.add - local.get $4 + local.get $7 i64.store end - local.get $7 + local.get $4 i32.const 1 i32.add - local.set $7 + local.set $4 br $for-loop|0 end end + local.get $3 + local.get $6 local.get $0 - local.get $5 - local.get $1 i32.const 3 i32.shl - local.tee $2 + local.tee $0 call $~lib/rt/itcms/__renew local.tee $1 i32.store local.get $1 if - local.get $0 + local.get $3 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $3 local.get $0 - local.get $2 i32.store offset=8 - local.get $0 + local.get $3 local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=8 - local.get $0 + local.get $3 i32.load offset=4 - local.get $0 + local.get $3 i32.load i32.sub if @@ -38250,7 +38393,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u @@ -38264,7 +38407,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 3 @@ -38277,7 +38420,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 4 @@ -38290,7 +38433,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 5 @@ -38321,10 +38464,10 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 f32) + (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) + (local $7 f32) (local $8 i32) block $folding-inner0 global.get $~lib/memory/__stack_pointer @@ -38336,34 +38479,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 6 call $~lib/typedarray/Float32Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 3 f32.const 4 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 5 f32.const 5 call $~lib/typedarray/Float32Array#__set @@ -38371,8 +38514,6 @@ i32.const 4240 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 - local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -38382,102 +38523,103 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $1 + local.tee $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 - local.get $0 + local.set $5 + local.get $3 i32.const 12 i32.const 12 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $5 i32.const 2 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $6 i32.store offset=4 - local.get $2 + local.get $1 i32.load offset=4 local.set $8 loop $for-loop|0 - local.get $6 - local.get $7 - i32.gt_s + local.get $4 + local.get $5 + i32.lt_s if - local.get $7 + local.get $4 i32.const 2 i32.shl local.get $8 i32.add f32.load - local.set $4 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $4 local.get $7 + local.get $4 local.get $2 i32.const 4240 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) if - local.get $1 - local.tee $3 + local.get $0 + local.tee $1 i32.const 1 i32.add - local.set $1 - local.get $3 + local.set $0 + local.get $1 i32.const 2 i32.shl - local.get $5 + local.get $6 i32.add - local.get $4 + local.get $7 f32.store end - local.get $7 + local.get $4 i32.const 1 i32.add - local.set $7 + local.set $4 br $for-loop|0 end end + local.get $3 + local.get $6 local.get $0 - local.get $5 - local.get $1 i32.const 2 i32.shl - local.tee $2 + local.tee $0 call $~lib/rt/itcms/__renew local.tee $1 i32.store local.get $1 if - local.get $0 + local.get $3 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $3 local.get $0 - local.get $2 i32.store offset=8 - local.get $0 + local.get $3 local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=8 - local.get $0 + local.get $3 i32.load offset=4 - local.get $0 + local.get $3 i32.load i32.sub if @@ -38488,7 +38630,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -38502,7 +38644,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 3 @@ -38515,7 +38657,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 4 @@ -38528,7 +38670,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 5 @@ -38559,10 +38701,10 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 f64) + (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) + (local $7 f64) (local $8 i32) block $folding-inner0 global.get $~lib/memory/__stack_pointer @@ -38574,34 +38716,34 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 6 call $~lib/typedarray/Float64Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 3 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 5 f64.const 5 call $~lib/typedarray/Float64Array#__set @@ -38609,8 +38751,6 @@ i32.const 4272 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 - local.set $2 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -38620,102 +38760,103 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i64.const 0 i64.store - local.get $2 + local.get $1 + local.tee $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 - local.get $0 + local.set $5 + local.get $3 i32.const 12 i32.const 13 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $5 i32.const 3 i32.shl i32.const 0 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $6 i32.store offset=4 - local.get $2 + local.get $1 i32.load offset=4 local.set $8 loop $for-loop|0 - local.get $6 - local.get $7 - i32.gt_s + local.get $4 + local.get $5 + i32.lt_s if - local.get $7 + local.get $4 i32.const 3 i32.shl local.get $8 i32.add f64.load - local.set $4 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $4 local.get $7 + local.get $4 local.get $2 i32.const 4272 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) if - local.get $1 - local.tee $3 + local.get $0 + local.tee $1 i32.const 1 i32.add - local.set $1 - local.get $3 + local.set $0 + local.get $1 i32.const 3 i32.shl - local.get $5 + local.get $6 i32.add - local.get $4 + local.get $7 f64.store end - local.get $7 + local.get $4 i32.const 1 i32.add - local.set $7 + local.set $4 br $for-loop|0 end end + local.get $3 + local.get $6 local.get $0 - local.get $5 - local.get $1 i32.const 3 i32.shl - local.tee $2 + local.tee $0 call $~lib/rt/itcms/__renew local.tee $1 i32.store local.get $1 if - local.get $0 + local.get $3 local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $3 local.get $0 - local.get $2 i32.store offset=8 - local.get $0 + local.get $3 local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=8 - local.get $0 + local.get $3 i32.load offset=4 - local.get $0 + local.get $3 i32.load i32.sub if @@ -38726,7 +38867,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u @@ -38740,7 +38881,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 3 @@ -38753,7 +38894,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 4 @@ -38766,7 +38907,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 5 @@ -39334,14 +39475,15 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Int8Array> (local $0 i32) (local $1 i32) - (local $2 f64) - (local $3 f32) - (local $4 i32) - (local $5 i32) + (local $2 i32) + (local $3 i32) + (local $4 f32) + (local $5 f64) (local $6 i32) (local $7 i32) (local $8 i32) (local $9 i32) + (local $10 i32) block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 20 @@ -39359,97 +39501,96 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i64.const 0 i64.store - local.get $0 + local.get $2 i64.const 0 i64.store offset=8 - local.get $0 + local.get $2 i32.const 0 i32.store offset=16 - local.get $0 + local.get $2 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $7 + local.tee $8 i32.store - local.get $7 + local.get $8 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $7 + local.get $8 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $7 + local.get $8 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $5 + local.tee $2 i32.store offset=4 - local.get $5 + local.get $2 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $2 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $2 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $2 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $3 i32.store offset=8 - local.get $4 + local.get $3 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $3 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $3 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Int8Array#constructor - local.tee $0 + local.tee $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $0 + local.get $9 call $~lib/typedarray/Int8Array#set<~lib/array/Array> i32.const 10 i32.const 0 i32.const 15 i32.const 11312 call $~lib/rt/__newArray - local.set $1 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $6 i32.store offset=16 - local.get $0 - local.get $1 + local.get $9 + local.get $6 call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 - local.get $0 - local.tee $1 + local.get $9 i32.load offset=8 i32.const 11100 i32.load @@ -39457,47 +39598,47 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $1 + local.get $9 i32.load offset=4 i32.const 3 i32.add - local.set $8 + local.set $6 i32.const 11092 i32.load - local.set $9 + local.set $7 i32.const 11100 i32.load - local.set $1 + local.set $10 loop $for-loop|0 local.get $1 - local.get $6 - i32.gt_s + local.get $10 + i32.lt_s if + local.get $1 local.get $6 - local.get $8 i32.add - local.get $6 + local.get $1 i32.const 2 i32.shl - local.get $9 + local.get $7 i32.add f32.load - local.tee $3 - local.get $3 + local.tee $4 + local.get $4 f32.sub f32.const 0 f32.eq if (result i32) - local.get $3 + local.get $4 i32.trunc_f32_s else i32.const 0 end i32.store8 - local.get $6 + local.get $1 i32.const 1 i32.add - local.set $6 + local.set $1 br $for-loop|0 end end @@ -39510,11 +39651,11 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=16 - local.get $0 + local.get $9 local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> - local.get $0 - local.get $7 + local.get $9 + local.get $8 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 0 @@ -39525,16 +39666,13 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=16 - local.get $0 + local.get $9 local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 - i32.const 0 - local.set $6 - local.get $0 - local.tee $1 + local.get $9 i32.load offset=8 i32.const 11196 i32.load @@ -39542,47 +39680,47 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $1 + local.get $9 i32.load offset=4 i32.const 2 i32.add local.set $1 i32.const 11188 i32.load - local.set $7 + local.set $6 i32.const 11196 i32.load - local.set $8 + local.set $7 loop $for-loop|04 - local.get $6 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if + local.get $0 local.get $1 - local.get $6 i32.add - local.get $6 + local.get $0 i32.const 3 i32.shl - local.get $7 + local.get $6 i32.add f64.load - local.tee $2 - local.get $2 + local.tee $5 + local.get $5 f64.sub f64.const 0 f64.eq if (result i32) - local.get $2 + local.get $5 i32.trunc_f64_s else i32.const 0 end i32.store8 - local.get $6 + local.get $0 i32.const 1 i32.add - local.set $6 + local.set $0 br $for-loop|04 end end @@ -39591,35 +39729,35 @@ i32.const 15 i32.const 11456 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $9 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> - local.get $0 - local.get $5 + local.get $9 + local.get $2 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Uint8Array> - local.get $0 - local.get $4 + local.get $9 + local.get $3 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $0 + local.get $9 call $~lib/typedarray/Int8Array#set<~lib/array/Array> i32.const 10 i32.const 0 i32.const 15 i32.const 11488 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $9 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int8Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -39726,14 +39864,15 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint8Array> (local $0 i32) (local $1 i32) - (local $2 f64) - (local $3 f32) - (local $4 i32) - (local $5 i32) + (local $2 i32) + (local $3 i32) + (local $4 f32) + (local $5 f64) (local $6 i32) (local $7 i32) (local $8 i32) (local $9 i32) + (local $10 i32) block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 20 @@ -39751,97 +39890,96 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i64.const 0 i64.store - local.get $0 + local.get $2 i64.const 0 i64.store offset=8 - local.get $0 + local.get $2 i32.const 0 i32.store offset=16 - local.get $0 + local.get $2 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $7 + local.tee $8 i32.store - local.get $7 + local.get $8 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $7 + local.get $8 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $7 + local.get $8 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $5 + local.tee $2 i32.store offset=4 - local.get $5 + local.get $2 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $2 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $2 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $2 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $3 i32.store offset=8 - local.get $4 + local.get $3 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $3 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $3 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint8Array#constructor - local.tee $0 + local.tee $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $0 + local.get $9 call $~lib/typedarray/Int8Array#set<~lib/array/Array> i32.const 10 i32.const 0 i32.const 63 i32.const 11520 call $~lib/rt/__newArray - local.set $1 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $6 i32.store offset=16 - local.get $0 - local.get $1 + local.get $9 + local.get $6 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 - local.get $0 - local.tee $1 + local.get $9 i32.load offset=8 i32.const 11100 i32.load @@ -39849,47 +39987,47 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $1 + local.get $9 i32.load offset=4 i32.const 3 i32.add - local.set $8 + local.set $6 i32.const 11092 i32.load - local.set $9 + local.set $7 i32.const 11100 i32.load - local.set $1 + local.set $10 loop $for-loop|0 local.get $1 - local.get $6 - i32.gt_s + local.get $10 + i32.lt_s if + local.get $1 local.get $6 - local.get $8 i32.add - local.get $6 + local.get $1 i32.const 2 i32.shl - local.get $9 + local.get $7 i32.add f32.load - local.tee $3 - local.get $3 + local.tee $4 + local.get $4 f32.sub f32.const 0 f32.eq if (result i32) - local.get $3 + local.get $4 i32.trunc_f32_u else i32.const 0 end i32.store8 - local.get $6 + local.get $1 i32.const 1 i32.add - local.set $6 + local.set $1 br $for-loop|0 end end @@ -39902,11 +40040,11 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=16 - local.get $0 + local.get $9 local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> - local.get $0 - local.get $7 + local.get $9 + local.get $8 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 0 @@ -39917,16 +40055,13 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=16 - local.get $0 + local.get $9 local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 - i32.const 0 - local.set $6 - local.get $0 - local.tee $1 + local.get $9 i32.load offset=8 i32.const 11196 i32.load @@ -39934,47 +40069,47 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $1 + local.get $9 i32.load offset=4 i32.const 2 i32.add local.set $1 i32.const 11188 i32.load - local.set $7 + local.set $6 i32.const 11196 i32.load - local.set $8 + local.set $7 loop $for-loop|04 - local.get $6 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if + local.get $0 local.get $1 - local.get $6 i32.add - local.get $6 + local.get $0 i32.const 3 i32.shl - local.get $7 + local.get $6 i32.add f64.load - local.tee $2 - local.get $2 + local.tee $5 + local.get $5 f64.sub f64.const 0 f64.eq if (result i32) - local.get $2 + local.get $5 i32.trunc_f64_u else i32.const 0 end i32.store8 - local.get $6 + local.get $0 i32.const 1 i32.add - local.set $6 + local.set $0 br $for-loop|04 end end @@ -39983,35 +40118,35 @@ i32.const 63 i32.const 11664 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $9 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> - local.get $0 - local.get $5 + local.get $9 + local.get $2 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Uint8Array> - local.get $0 - local.get $4 + local.get $9 + local.get $3 call $~lib/typedarray/Int8Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $0 + local.get $9 call $~lib/typedarray/Int8Array#set<~lib/array/Array> i32.const 10 i32.const 0 i32.const 63 i32.const 11696 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $9 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -40118,8 +40253,8 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint8ClampedArray> (local $0 i32) (local $1 i32) - (local $2 f64) - (local $3 f32) + (local $2 f32) + (local $3 f64) (local $4 i32) (local $5 i32) (local $6 i32) @@ -40127,6 +40262,7 @@ (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 20 @@ -40144,126 +40280,125 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $4 i64.const 0 i64.store - local.get $0 + local.get $4 i64.const 0 i64.store offset=8 - local.get $0 + local.get $4 i32.const 0 i32.store offset=16 - local.get $0 + local.get $4 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $5 + local.tee $6 i32.store - local.get $5 + local.get $6 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $5 + local.get $6 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $5 + local.get $6 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $6 + local.tee $7 i32.store offset=4 - local.get $6 + local.get $7 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $6 + local.get $7 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $6 + local.get $7 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $6 + local.get $7 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $7 + local.tee $4 i32.store offset=8 - local.get $7 + local.get $4 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $7 + local.get $4 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $7 + local.get $4 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 + local.tee $8 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 i32.const 11020 i32.load - local.get $0 - local.tee $1 + local.get $8 i32.load offset=8 i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $8 i32.load offset=4 - local.set $8 + local.set $9 i32.const 11012 i32.load - local.set $9 + local.set $10 i32.const 11020 i32.load - local.set $1 + local.set $11 loop $for-loop|0 local.get $1 - local.get $4 - i32.gt_s + local.get $11 + i32.lt_s if - local.get $4 - local.get $8 + local.get $1 + local.get $9 i32.add - local.get $4 + local.get $1 i32.const 2 i32.shl - local.get $9 + local.get $10 i32.add i32.load - local.tee $10 + local.tee $5 i32.const 255 - local.get $10 + local.get $5 i32.sub i32.const 31 i32.shr_s i32.or - local.get $10 + local.get $5 i32.const 31 i32.shr_s i32.const -1 i32.xor i32.and i32.store8 - local.get $4 + local.get $1 i32.const 1 i32.add - local.set $4 + local.set $1 br $for-loop|0 end end @@ -40276,16 +40411,15 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=16 - local.get $0 + local.get $8 local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 i32.const 0 - local.set $4 - local.get $0 - local.tee $1 + local.set $1 + local.get $8 i32.load offset=8 i32.const 11100 i32.load @@ -40293,40 +40427,40 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $1 + local.get $8 i32.load offset=4 i32.const 3 i32.add - local.set $1 + local.set $5 i32.const 11092 i32.load - local.set $8 + local.set $9 i32.const 11100 i32.load - local.set $9 + local.set $10 loop $for-loop|04 - local.get $4 - local.get $9 + local.get $1 + local.get $10 i32.lt_s if local.get $1 - local.get $4 + local.get $5 i32.add - local.get $4 + local.get $1 i32.const 2 i32.shl - local.get $8 + local.get $9 i32.add f32.load - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 f32.sub f32.const 0 f32.eq if (result i32) f32.const 0 f32.const 255 - local.get $3 + local.get $2 f32.min f32.max i32.trunc_f32_u @@ -40334,10 +40468,10 @@ i32.const 0 end i32.store8 - local.get $4 + local.get $1 i32.const 1 i32.add - local.set $4 + local.set $1 br $for-loop|04 end end @@ -40350,11 +40484,11 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=16 - local.get $0 + local.get $8 local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> - local.get $0 - local.get $5 + local.get $8 + local.get $6 i32.const 6 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int64Array> i32.const 10 @@ -40366,16 +40500,13 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=16 - local.get $0 + local.get $8 local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 - i32.const 0 - local.set $4 - local.get $0 - local.tee $1 + local.get $8 i32.load offset=8 i32.const 11196 i32.load @@ -40383,7 +40514,7 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $1 + local.get $8 i32.load offset=4 i32.const 2 i32.add @@ -40393,30 +40524,30 @@ local.set $5 i32.const 11196 i32.load - local.set $8 + local.set $6 loop $for-loop|08 - local.get $4 - local.get $8 + local.get $0 + local.get $6 i32.lt_s if + local.get $0 local.get $1 - local.get $4 i32.add - local.get $4 + local.get $0 i32.const 3 i32.shl local.get $5 i32.add f64.load - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 f64.sub f64.const 0 f64.eq if (result i32) f64.const 0 f64.const 255 - local.get $2 + local.get $3 f64.min f64.max i32.trunc_f64_u @@ -40424,10 +40555,10 @@ i32.const 0 end i32.store8 - local.get $4 + local.get $0 i32.const 1 i32.add - local.set $4 + local.set $0 br $for-loop|08 end end @@ -40436,27 +40567,26 @@ i32.const 63 i32.const 11888 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $8 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> - local.get $0 - local.get $6 - call $~lib/typedarray/Int8Array#set<~lib/typedarray/Uint8Array> - local.get $0 + local.get $8 local.get $7 + call $~lib/typedarray/Int8Array#set<~lib/typedarray/Uint8Array> + local.get $8 + local.get $4 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 i32.const 0 - local.set $4 - local.get $0 - local.tee $1 + local.set $0 + local.get $8 i32.load offset=8 i32.const 11276 i32.load @@ -40464,47 +40594,47 @@ i32.add i32.lt_s br_if $folding-inner0 - local.get $1 + local.get $8 i32.load offset=4 i32.const 7 i32.add local.set $1 i32.const 11268 i32.load - local.set $5 + local.set $4 i32.const 11276 i32.load - local.set $6 + local.set $5 loop $for-loop|012 - local.get $4 - local.get $6 + local.get $0 + local.get $5 i32.lt_s if + local.get $0 local.get $1 - local.get $4 i32.add + local.get $0 local.get $4 - local.get $5 i32.add i32.load8_s - local.tee $7 + local.tee $6 i32.const 255 - local.get $7 + local.get $6 i32.sub i32.const 31 i32.shr_s i32.or - local.get $7 + local.get $6 i32.const 31 i32.shr_s i32.const -1 i32.xor i32.and i32.store8 - local.get $4 + local.get $0 i32.const 1 i32.add - local.set $4 + local.set $0 br $for-loop|012 end end @@ -40513,12 +40643,12 @@ i32.const 63 i32.const 11920 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $8 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -40630,14 +40760,15 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Int16Array> (local $0 i32) (local $1 i32) - (local $2 f64) - (local $3 f32) - (local $4 i32) - (local $5 i32) + (local $2 i32) + (local $3 i32) + (local $4 f32) + (local $5 f64) (local $6 i32) (local $7 i32) (local $8 i32) (local $9 i32) + (local $10 i32) block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 20 @@ -40655,91 +40786,91 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i64.const 0 i64.store - local.get $0 + local.get $2 i64.const 0 i64.store offset=8 - local.get $0 + local.get $2 i32.const 0 i32.store offset=16 - local.get $0 + local.get $2 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $7 + local.tee $8 i32.store - local.get $7 + local.get $8 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $7 + local.get $8 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $7 + local.get $8 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $5 + local.tee $2 i32.store offset=4 - local.get $5 + local.get $2 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $2 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $2 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $2 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $3 i32.store offset=8 - local.get $4 + local.get $3 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $3 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $3 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Int16Array#constructor - local.tee $0 + local.tee $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $0 + local.get $9 call $~lib/typedarray/Int16Array#set<~lib/array/Array> i32.const 10 i32.const 1 i32.const 64 i32.const 11952 call $~lib/rt/__newArray - local.set $1 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $6 i32.store offset=16 - local.get $0 - local.get $1 + local.get $9 + local.get $6 call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11088 @@ -40748,56 +40879,55 @@ i32.load i32.const 3 i32.add - local.get $0 - local.tee $1 + local.get $9 i32.load offset=8 i32.const 1 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $9 i32.load offset=4 i32.const 6 i32.add - local.set $8 + local.set $6 i32.const 11092 i32.load - local.set $9 + local.set $7 i32.const 11100 i32.load - local.set $1 + local.set $10 loop $for-loop|0 local.get $1 - local.get $6 - i32.gt_s + local.get $10 + i32.lt_s if - local.get $6 + local.get $1 i32.const 1 i32.shl - local.get $8 - i32.add local.get $6 + i32.add + local.get $1 i32.const 2 i32.shl - local.get $9 + local.get $7 i32.add f32.load - local.tee $3 - local.get $3 + local.tee $4 + local.get $4 f32.sub f32.const 0 f32.eq if (result i32) - local.get $3 + local.get $4 i32.trunc_f32_s else i32.const 0 end i32.store16 - local.get $6 + local.get $1 i32.const 1 i32.add - local.set $6 + local.set $1 br $for-loop|0 end end @@ -40810,11 +40940,11 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=16 - local.get $0 + local.get $9 local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> - local.get $0 - local.get $7 + local.get $9 + local.get $8 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 1 @@ -40825,68 +40955,65 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=16 - local.get $0 + local.get $9 local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 - i32.const 0 - local.set $6 i32.const 11196 i32.load i32.const 2 i32.add - local.get $0 - local.tee $1 + local.get $9 i32.load offset=8 i32.const 1 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $9 i32.load offset=4 i32.const 4 i32.add local.set $1 i32.const 11188 i32.load - local.set $7 + local.set $6 i32.const 11196 i32.load - local.set $8 + local.set $7 loop $for-loop|04 - local.get $6 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $6 + local.get $0 i32.const 1 i32.shl local.get $1 i32.add - local.get $6 + local.get $0 i32.const 3 i32.shl - local.get $7 + local.get $6 i32.add f64.load - local.tee $2 - local.get $2 + local.tee $5 + local.get $5 f64.sub f64.const 0 f64.eq if (result i32) - local.get $2 + local.get $5 i32.trunc_f64_s else i32.const 0 end i32.store16 - local.get $6 + local.get $0 i32.const 1 i32.add - local.set $6 + local.set $0 br $for-loop|04 end end @@ -40895,35 +41022,35 @@ i32.const 64 i32.const 12144 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $9 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> - local.get $0 - local.get $5 + local.get $9 + local.get $2 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Uint8Array> - local.get $0 - local.get $4 + local.get $9 + local.get $3 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $0 + local.get $9 call $~lib/typedarray/Int16Array#set<~lib/array/Array> i32.const 10 i32.const 1 i32.const 64 i32.const 12192 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $9 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -41035,14 +41162,15 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint16Array> (local $0 i32) (local $1 i32) - (local $2 f64) - (local $3 f32) - (local $4 i32) - (local $5 i32) + (local $2 i32) + (local $3 i32) + (local $4 f32) + (local $5 f64) (local $6 i32) (local $7 i32) (local $8 i32) (local $9 i32) + (local $10 i32) block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 20 @@ -41060,91 +41188,91 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i64.const 0 i64.store - local.get $0 + local.get $2 i64.const 0 i64.store offset=8 - local.get $0 + local.get $2 i32.const 0 i32.store offset=16 - local.get $0 + local.get $2 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $7 + local.tee $8 i32.store - local.get $7 + local.get $8 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $7 + local.get $8 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $7 + local.get $8 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $5 + local.tee $2 i32.store offset=4 - local.get $5 + local.get $2 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $2 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $2 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $2 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $3 i32.store offset=8 - local.get $4 + local.get $3 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $3 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $3 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint16Array#constructor - local.tee $0 + local.tee $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $0 + local.get $9 call $~lib/typedarray/Int16Array#set<~lib/array/Array> i32.const 10 i32.const 1 i32.const 65 i32.const 12240 call $~lib/rt/__newArray - local.set $1 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $6 i32.store offset=16 - local.get $0 - local.get $1 + local.get $9 + local.get $6 call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> global.get $~lib/memory/__stack_pointer i32.const 11088 @@ -41153,56 +41281,55 @@ i32.load i32.const 3 i32.add - local.get $0 - local.tee $1 + local.get $9 i32.load offset=8 i32.const 1 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $9 i32.load offset=4 i32.const 6 i32.add - local.set $8 + local.set $6 i32.const 11092 i32.load - local.set $9 + local.set $7 i32.const 11100 i32.load - local.set $1 + local.set $10 loop $for-loop|0 local.get $1 - local.get $6 - i32.gt_s + local.get $10 + i32.lt_s if - local.get $6 + local.get $1 i32.const 1 i32.shl - local.get $8 - i32.add local.get $6 + i32.add + local.get $1 i32.const 2 i32.shl - local.get $9 + local.get $7 i32.add f32.load - local.tee $3 - local.get $3 + local.tee $4 + local.get $4 f32.sub f32.const 0 f32.eq if (result i32) - local.get $3 + local.get $4 i32.trunc_f32_u else i32.const 0 end i32.store16 - local.get $6 + local.get $1 i32.const 1 i32.add - local.set $6 + local.set $1 br $for-loop|0 end end @@ -41215,11 +41342,11 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=16 - local.get $0 + local.get $9 local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> - local.get $0 - local.get $7 + local.get $9 + local.get $8 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 1 @@ -41230,68 +41357,65 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=16 - local.get $0 + local.get $9 local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 - i32.const 0 - local.set $6 i32.const 11196 i32.load i32.const 2 i32.add - local.get $0 - local.tee $1 + local.get $9 i32.load offset=8 i32.const 1 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $9 i32.load offset=4 i32.const 4 i32.add local.set $1 i32.const 11188 i32.load - local.set $7 + local.set $6 i32.const 11196 i32.load - local.set $8 + local.set $7 loop $for-loop|04 - local.get $6 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $6 + local.get $0 i32.const 1 i32.shl local.get $1 i32.add - local.get $6 + local.get $0 i32.const 3 i32.shl - local.get $7 + local.get $6 i32.add f64.load - local.tee $2 - local.get $2 + local.tee $5 + local.get $5 f64.sub f64.const 0 f64.eq if (result i32) - local.get $2 + local.get $5 i32.trunc_f64_u else i32.const 0 end i32.store16 - local.get $6 + local.get $0 i32.const 1 i32.add - local.set $6 + local.set $0 br $for-loop|04 end end @@ -41300,35 +41424,35 @@ i32.const 65 i32.const 12432 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $9 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> - local.get $0 - local.get $5 + local.get $9 + local.get $2 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Uint8Array> - local.get $0 - local.get $4 + local.get $9 + local.get $3 call $~lib/typedarray/Int16Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $0 + local.get $9 call $~lib/typedarray/Int16Array#set<~lib/array/Array> i32.const 10 i32.const 1 i32.const 65 i32.const 12480 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $9 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint16Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -41441,14 +41565,15 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 f64) + (local $3 i32) (local $4 f32) - (local $5 i32) + (local $5 f64) (local $6 i32) (local $7 i32) (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 20 @@ -41466,79 +41591,79 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i64.const 0 i64.store - local.get $0 + local.get $2 i64.const 0 i64.store offset=8 - local.get $0 + local.get $2 i32.const 0 i32.store offset=16 - local.get $0 + local.get $2 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $8 + local.tee $6 i32.store - local.get $8 + local.get $6 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $8 + local.get $6 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $8 + local.get $6 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $6 + local.tee $2 i32.store offset=4 - local.get $6 + local.get $2 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $6 + local.get $2 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $6 + local.get $2 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $6 + local.get $2 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $5 + local.tee $3 i32.store offset=8 - local.get $5 + local.get $3 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $3 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $3 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Int32Array#constructor - local.tee $0 + local.tee $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $0 + local.get $9 i32.const 11008 i32.const 0 call $~lib/typedarray/Int32Array#set<~lib/array/Array> @@ -41547,12 +41672,12 @@ i32.const 16 i32.const 12528 call $~lib/rt/__newArray - local.set $1 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $7 i32.store offset=16 - local.get $0 - local.get $1 + local.get $9 + local.get $7 call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> global.get $~lib/memory/__stack_pointer i32.const 11088 @@ -41561,39 +41686,38 @@ i32.load i32.const 3 i32.add - local.get $0 - local.tee $1 + local.get $9 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $9 i32.load offset=4 i32.const 12 i32.add - local.set $9 + local.set $7 i32.const 11092 i32.load - local.set $2 + local.set $10 i32.const 11100 i32.load - local.set $1 + local.set $11 loop $for-loop|0 local.get $1 - local.get $7 - i32.gt_s + local.get $11 + i32.lt_s if - local.get $7 + local.get $1 i32.const 2 i32.shl - local.tee $10 - local.get $2 + local.tee $8 + local.get $10 i32.add f32.load local.set $4 - local.get $9 - local.get $10 + local.get $7 + local.get $8 i32.add local.get $4 local.get $4 @@ -41607,10 +41731,10 @@ i32.const 0 end i32.store - local.get $7 + local.get $1 i32.const 1 i32.add - local.set $7 + local.set $1 br $for-loop|0 end end @@ -41623,11 +41747,11 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=16 - local.get $0 + local.get $9 local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> - local.get $0 - local.get $8 + local.get $9 + local.get $6 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 2 @@ -41638,68 +41762,65 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=16 - local.get $0 + local.get $9 local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 - i32.const 0 - local.set $2 i32.const 11196 i32.load i32.const 2 i32.add - local.get $0 - local.tee $1 + local.get $9 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $9 i32.load offset=4 i32.const 8 i32.add local.set $1 i32.const 11188 i32.load - local.set $7 + local.set $6 i32.const 11196 i32.load - local.set $8 + local.set $7 loop $for-loop|04 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $2 + local.get $0 i32.const 2 i32.shl local.get $1 i32.add - local.get $2 + local.get $0 i32.const 3 i32.shl - local.get $7 + local.get $6 i32.add f64.load - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 f64.sub f64.const 0 f64.eq if (result i32) - local.get $3 + local.get $5 i32.trunc_f64_s else i32.const 0 end i32.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|04 end end @@ -41708,35 +41829,35 @@ i32.const 16 i32.const 12768 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $9 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> - local.get $0 - local.get $6 + local.get $9 + local.get $2 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Uint8Array> - local.get $0 - local.get $5 + local.get $9 + local.get $3 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $0 + local.get $9 call $~lib/typedarray/Int32Array#set<~lib/array/Array> i32.const 10 i32.const 2 i32.const 16 i32.const 12832 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $9 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int32Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -41849,14 +41970,15 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 f64) + (local $3 i32) (local $4 f32) - (local $5 i32) + (local $5 f64) (local $6 i32) (local $7 i32) (local $8 i32) (local $9 i32) (local $10 i32) + (local $11 i32) block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 20 @@ -41874,79 +41996,79 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i64.const 0 i64.store - local.get $0 + local.get $2 i64.const 0 i64.store offset=8 - local.get $0 + local.get $2 i32.const 0 i32.store offset=16 - local.get $0 + local.get $2 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $8 + local.tee $6 i32.store - local.get $8 + local.get $6 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $8 + local.get $6 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $8 + local.get $6 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $6 + local.tee $2 i32.store offset=4 - local.get $6 + local.get $2 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $6 + local.get $2 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $6 + local.get $2 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $6 + local.get $2 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $5 + local.tee $3 i32.store offset=8 - local.get $5 + local.get $3 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $3 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $5 + local.get $3 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint32Array#constructor - local.tee $0 + local.tee $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $0 + local.get $9 i32.const 11008 i32.const 0 call $~lib/typedarray/Int32Array#set<~lib/array/Array> @@ -41955,12 +42077,12 @@ i32.const 66 i32.const 12896 call $~lib/rt/__newArray - local.set $1 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $7 i32.store offset=16 - local.get $0 - local.get $1 + local.get $9 + local.get $7 call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> global.get $~lib/memory/__stack_pointer i32.const 11088 @@ -41969,39 +42091,38 @@ i32.load i32.const 3 i32.add - local.get $0 - local.tee $1 + local.get $9 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $9 i32.load offset=4 i32.const 12 i32.add - local.set $9 + local.set $7 i32.const 11092 i32.load - local.set $2 + local.set $10 i32.const 11100 i32.load - local.set $1 + local.set $11 loop $for-loop|0 local.get $1 - local.get $7 - i32.gt_s + local.get $11 + i32.lt_s if - local.get $7 + local.get $1 i32.const 2 i32.shl - local.tee $10 - local.get $2 + local.tee $8 + local.get $10 i32.add f32.load local.set $4 - local.get $9 - local.get $10 + local.get $7 + local.get $8 i32.add local.get $4 local.get $4 @@ -42015,10 +42136,10 @@ i32.const 0 end i32.store - local.get $7 + local.get $1 i32.const 1 i32.add - local.set $7 + local.set $1 br $for-loop|0 end end @@ -42031,11 +42152,11 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=16 - local.get $0 + local.get $9 local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> - local.get $0 - local.get $8 + local.get $9 + local.get $6 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Int64Array> i32.const 10 i32.const 2 @@ -42046,68 +42167,65 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=16 - local.get $0 + local.get $9 local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 - i32.const 0 - local.set $2 i32.const 11196 i32.load i32.const 2 i32.add - local.get $0 - local.tee $1 + local.get $9 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $9 i32.load offset=4 i32.const 8 i32.add local.set $1 i32.const 11188 i32.load - local.set $7 + local.set $6 i32.const 11196 i32.load - local.set $8 + local.set $7 loop $for-loop|04 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $2 + local.get $0 i32.const 2 i32.shl local.get $1 i32.add - local.get $2 + local.get $0 i32.const 3 i32.shl - local.get $7 + local.get $6 i32.add f64.load - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 f64.sub f64.const 0 f64.eq if (result i32) - local.get $3 + local.get $5 i32.trunc_f64_u else i32.const 0 end i32.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|04 end end @@ -42116,35 +42234,35 @@ i32.const 66 i32.const 13136 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $9 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> - local.get $0 - local.get $6 + local.get $9 + local.get $2 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Uint8Array> - local.get $0 - local.get $5 + local.get $9 + local.get $3 call $~lib/typedarray/Int32Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $0 + local.get $9 call $~lib/typedarray/Int32Array#set<~lib/array/Array> i32.const 10 i32.const 2 i32.const 66 i32.const 13200 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $9 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint32Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -42257,14 +42375,15 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Int64Array> (local $0 i32) (local $1 i32) - (local $2 f32) - (local $3 f64) - (local $4 i32) - (local $5 i32) + (local $2 i32) + (local $3 i32) + (local $4 f64) + (local $5 f32) (local $6 i32) (local $7 i32) (local $8 i32) (local $9 i32) + (local $10 i32) block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 20 @@ -42282,16 +42401,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i64.const 0 i64.store - local.get $0 + local.get $2 i64.const 0 i64.store offset=8 - local.get $0 + local.get $2 i32.const 0 i32.store offset=16 - local.get $0 + local.get $2 i32.const 3 call $~lib/typedarray/Int64Array#constructor local.tee $7 @@ -42311,62 +42430,62 @@ global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $5 + local.tee $2 i32.store offset=4 - local.get $5 + local.get $2 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $2 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $2 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $2 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $3 i32.store offset=8 - local.get $4 + local.get $3 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $3 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $3 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Int64Array#constructor - local.tee $0 + local.tee $8 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $0 + local.get $8 call $~lib/typedarray/Int64Array#set<~lib/array/Array> i32.const 10 i32.const 3 i32.const 67 i32.const 13264 call $~lib/rt/__newArray - local.set $1 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $6 i32.store offset=16 - local.get $0 - local.get $1 + local.get $8 + local.get $6 call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> global.get $~lib/memory/__stack_pointer i32.const 11088 @@ -42375,56 +42494,55 @@ i32.load i32.const 3 i32.add - local.get $0 - local.tee $1 + local.get $8 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $8 i32.load offset=4 i32.const 24 i32.add - local.set $1 + local.set $9 i32.const 11092 i32.load - local.set $8 + local.set $10 i32.const 11100 i32.load - local.set $9 + local.set $6 loop $for-loop|0 + local.get $1 local.get $6 - local.get $9 i32.lt_s if - local.get $6 + local.get $1 i32.const 3 i32.shl - local.get $1 + local.get $9 i32.add - local.get $6 + local.get $1 i32.const 2 i32.shl - local.get $8 + local.get $10 i32.add f32.load - local.tee $2 - local.get $2 + local.tee $5 + local.get $5 f32.sub f32.const 0 f32.eq if (result i64) - local.get $2 + local.get $5 i64.trunc_f32_s else i64.const 0 end i64.store - local.get $6 + local.get $1 i32.const 1 i32.add - local.set $6 + local.set $1 br $for-loop|0 end end @@ -42437,10 +42555,10 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=16 - local.get $0 + local.get $8 local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> - local.get $0 + local.get $8 local.get $7 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Int64Array> i32.const 10 @@ -42452,68 +42570,65 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=16 - local.get $0 + local.get $8 local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 - i32.const 0 - local.set $6 i32.const 11196 i32.load i32.const 2 i32.add - local.get $0 - local.tee $1 + local.get $8 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $8 i32.load offset=4 i32.const 16 i32.add local.set $1 i32.const 11188 i32.load - local.set $7 + local.set $6 i32.const 11196 i32.load - local.set $8 + local.set $7 loop $for-loop|04 - local.get $6 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $6 + local.get $0 i32.const 3 i32.shl local.tee $9 - local.get $7 + local.get $6 i32.add f64.load - local.set $3 + local.set $4 local.get $1 local.get $9 i32.add - local.get $3 - local.get $3 + local.get $4 + local.get $4 f64.sub f64.const 0 f64.eq if (result i64) - local.get $3 + local.get $4 i64.trunc_f64_s else i64.const 0 end i64.store - local.get $6 + local.get $0 i32.const 1 i32.add - local.set $6 + local.set $0 br $for-loop|04 end end @@ -42522,35 +42637,35 @@ i32.const 67 i32.const 13648 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $8 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> - local.get $0 - local.get $5 + local.get $8 + local.get $2 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Uint8Array> - local.get $0 - local.get $4 + local.get $8 + local.get $3 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $0 + local.get $8 call $~lib/typedarray/Int64Array#set<~lib/array/Array> i32.const 10 i32.const 3 i32.const 67 i32.const 13760 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $8 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Int64Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -42663,14 +42778,15 @@ (func $std/typedarray/testTypedArraySet<~lib/typedarray/Uint64Array> (local $0 i32) (local $1 i32) - (local $2 f32) - (local $3 f64) - (local $4 i32) - (local $5 i32) + (local $2 i32) + (local $3 i32) + (local $4 f64) + (local $5 f32) (local $6 i32) (local $7 i32) (local $8 i32) (local $9 i32) + (local $10 i32) block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 20 @@ -42688,16 +42804,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $2 i64.const 0 i64.store - local.get $0 + local.get $2 i64.const 0 i64.store offset=8 - local.get $0 + local.get $2 i32.const 0 i32.store offset=16 - local.get $0 + local.get $2 i32.const 3 call $~lib/typedarray/Int64Array#constructor local.tee $7 @@ -42717,62 +42833,62 @@ global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $5 + local.tee $2 i32.store offset=4 - local.get $5 + local.get $2 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $2 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $2 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $5 + local.get $2 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $4 + local.tee $3 i32.store offset=8 - local.get $4 + local.get $3 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $3 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $4 + local.get $3 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint64Array#constructor - local.tee $0 + local.tee $8 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 - local.get $0 + local.get $8 call $~lib/typedarray/Int64Array#set<~lib/array/Array> i32.const 10 i32.const 3 i32.const 68 i32.const 13872 call $~lib/rt/__newArray - local.set $1 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $6 i32.store offset=16 - local.get $0 - local.get $1 + local.get $8 + local.get $6 call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> global.get $~lib/memory/__stack_pointer i32.const 11088 @@ -42781,56 +42897,55 @@ i32.load i32.const 3 i32.add - local.get $0 - local.tee $1 + local.get $8 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $8 i32.load offset=4 i32.const 24 i32.add - local.set $1 + local.set $9 i32.const 11092 i32.load - local.set $8 + local.set $10 i32.const 11100 i32.load - local.set $9 + local.set $6 loop $for-loop|0 + local.get $1 local.get $6 - local.get $9 i32.lt_s if - local.get $6 + local.get $1 i32.const 3 i32.shl - local.get $1 + local.get $9 i32.add - local.get $6 + local.get $1 i32.const 2 i32.shl - local.get $8 + local.get $10 i32.add f32.load - local.tee $2 - local.get $2 + local.tee $5 + local.get $5 f32.sub f32.const 0 f32.eq if (result i64) - local.get $2 + local.get $5 i64.trunc_f32_u else i64.const 0 end i64.store - local.get $6 + local.get $1 i32.const 1 i32.add - local.set $6 + local.set $1 br $for-loop|0 end end @@ -42843,10 +42958,10 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=16 - local.get $0 + local.get $8 local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> - local.get $0 + local.get $8 local.get $7 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Int64Array> i32.const 10 @@ -42858,68 +42973,65 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=16 - local.get $0 + local.get $8 local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> global.get $~lib/memory/__stack_pointer i32.const 11184 i32.store offset=16 - i32.const 0 - local.set $6 i32.const 11196 i32.load i32.const 2 i32.add - local.get $0 - local.tee $1 + local.get $8 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $8 i32.load offset=4 i32.const 16 i32.add local.set $1 i32.const 11188 i32.load - local.set $7 + local.set $6 i32.const 11196 i32.load - local.set $8 + local.set $7 loop $for-loop|04 - local.get $6 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $6 + local.get $0 i32.const 3 i32.shl local.tee $9 - local.get $7 + local.get $6 i32.add f64.load - local.set $3 + local.set $4 local.get $1 local.get $9 i32.add - local.get $3 - local.get $3 + local.get $4 + local.get $4 f64.sub f64.const 0 f64.eq if (result i64) - local.get $3 + local.get $4 i64.trunc_f64_u else i64.const 0 end i64.store - local.get $6 + local.get $0 i32.const 1 i32.add - local.set $6 + local.set $0 br $for-loop|04 end end @@ -42928,35 +43040,35 @@ i32.const 68 i32.const 14256 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $8 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> - local.get $0 - local.get $5 + local.get $8 + local.get $2 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Uint8Array> - local.get $0 - local.get $4 + local.get $8 + local.get $3 call $~lib/typedarray/Int64Array#set<~lib/typedarray/Int16Array> global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - local.get $0 + local.get $8 call $~lib/typedarray/Int64Array#set<~lib/array/Array> i32.const 10 i32.const 3 i32.const 68 i32.const 14368 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $8 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint64Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -43076,6 +43188,9 @@ (local $6 i32) (local $7 i32) (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 20 @@ -43093,117 +43208,116 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $4 i64.const 0 i64.store - local.get $0 + local.get $4 i64.const 0 i64.store offset=8 - local.get $0 + local.get $4 i32.const 0 i32.store offset=16 - local.get $0 + local.get $4 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $1 + local.tee $7 i32.store - local.get $1 + local.get $7 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $7 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $7 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $2 + local.tee $8 i32.store offset=4 - local.get $2 + local.get $8 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $8 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $8 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $8 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $3 + local.tee $9 i32.store offset=8 - local.get $3 + local.get $9 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $9 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $9 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Float32Array#constructor - local.tee $0 + local.tee $10 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 i32.const 11020 i32.load - local.get $0 - local.tee $4 + local.get $10 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $4 + local.get $10 i32.load offset=4 - local.set $7 + local.set $5 i32.const 11012 i32.load - local.set $8 + local.set $6 i32.const 11020 i32.load - local.set $4 + local.set $11 loop $for-loop|0 - local.get $4 - local.get $5 - i32.gt_s + local.get $2 + local.get $11 + i32.lt_s if - local.get $5 + local.get $2 i32.const 2 i32.shl - local.tee $6 - local.get $7 + local.tee $4 + local.get $5 i32.add + local.get $4 local.get $6 - local.get $8 i32.add i32.load f32.convert_i32_s f32.store - local.get $5 + local.get $2 i32.const 1 i32.add - local.set $5 + local.set $2 br $for-loop|0 end end @@ -43212,17 +43326,17 @@ i32.const 61 i32.const 14480 call $~lib/rt/__newArray - local.set $4 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.store offset=16 - local.get $0 - local.get $4 + local.get $10 + local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Float32Array> global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 - local.get $0 + local.get $10 i32.const 11088 i32.const 3 call $~lib/typedarray/Int32Array#set<~lib/array/Array> @@ -43231,63 +43345,60 @@ i32.const 61 i32.const 14592 call $~lib/rt/__newArray - local.set $4 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.store offset=16 - local.get $0 - local.get $4 + local.get $10 + local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Float32Array> - i32.const 0 - local.set $5 - local.get $1 + local.get $7 i32.load offset=8 i32.const 3 i32.shr_u i32.const 6 i32.add - local.get $0 - local.tee $4 + local.get $10 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $4 + local.get $10 i32.load offset=4 i32.const 24 i32.add - local.set $4 - local.get $1 + local.set $2 + local.get $7 i32.load offset=4 - local.set $6 - local.get $1 + local.set $4 + local.get $7 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $5 loop $for-loop|01 - local.get $1 + local.get $3 local.get $5 - i32.gt_s + i32.lt_s if - local.get $5 + local.get $3 i32.const 2 i32.shl - local.get $4 + local.get $2 i32.add - local.get $5 + local.get $3 i32.const 3 i32.shl - local.get $6 + local.get $4 i32.add i64.load f32.convert_i64_s f32.store - local.get $5 + local.get $3 i32.const 1 i32.add - local.set $5 + local.set $3 br $for-loop|01 end end @@ -43296,156 +43407,149 @@ i32.const 61 i32.const 14656 call $~lib/rt/__newArray - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=16 - local.get $0 - local.get $1 + local.get $10 + local.get $2 call $std/typedarray/valuesEqual<~lib/typedarray/Float32Array> i32.const 0 - local.set $5 - local.get $2 + local.set $2 + local.get $8 i32.load offset=8 - local.get $0 - local.tee $1 + local.get $10 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $10 i32.load offset=4 - local.set $1 - local.get $2 + local.set $3 + local.get $8 i32.load offset=4 local.set $4 - local.get $2 + local.get $8 i32.load offset=8 - local.set $2 + local.set $5 loop $for-loop|03 local.get $2 local.get $5 - i32.gt_s + i32.lt_s if - local.get $5 + local.get $2 i32.const 2 i32.shl - local.get $1 + local.get $3 i32.add + local.get $2 local.get $4 - local.get $5 i32.add i32.load8_u f32.convert_i32_u f32.store - local.get $5 + local.get $2 i32.const 1 i32.add - local.set $5 + local.set $2 br $for-loop|03 end end - i32.const 0 - local.set $2 - local.get $3 + local.get $9 i32.load offset=8 i32.const 1 i32.shr_u i32.const 4 i32.add - local.get $0 - local.tee $1 + local.get $10 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $10 i32.load offset=4 i32.const 16 i32.add - local.set $1 - local.get $3 + local.set $2 + local.get $9 i32.load offset=4 - local.set $4 - local.get $3 + local.set $3 + local.get $9 i32.load offset=8 i32.const 1 i32.shr_u - local.set $3 + local.set $4 loop $for-loop|05 - local.get $2 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $2 + local.get $0 i32.const 2 i32.shl - local.get $1 - i32.add local.get $2 + i32.add + local.get $0 i32.const 1 i32.shl - local.get $4 + local.get $3 i32.add i32.load16_s f32.convert_i32_s f32.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|05 end end global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - i32.const 0 - local.set $2 i32.const 11276 i32.load i32.const 7 i32.add - local.get $0 - local.tee $1 + local.get $10 i32.load offset=8 i32.const 2 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $10 i32.load offset=4 i32.const 28 i32.add - local.set $1 + local.set $0 i32.const 11268 i32.load - local.set $3 + local.set $2 i32.const 11276 i32.load - local.set $4 + local.set $3 loop $for-loop|09 - local.get $2 - local.get $4 + local.get $1 + local.get $3 i32.lt_s if - local.get $2 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add + local.get $1 local.get $2 - local.get $3 i32.add i32.load8_s f32.convert_i32_s f32.store - local.get $2 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $1 br $for-loop|09 end end @@ -43454,12 +43558,12 @@ i32.const 61 i32.const 14720 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $10 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Float32Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -43576,6 +43680,9 @@ (local $5 i32) (local $6 i32) (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 20 @@ -43593,118 +43700,117 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $4 i64.const 0 i64.store - local.get $0 + local.get $4 i64.const 0 i64.store offset=8 - local.get $0 + local.get $4 i32.const 0 i32.store offset=16 - local.get $0 + local.get $4 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i64.const 7 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $4 i32.const 1 i64.const 8 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $4 i32.const 2 i64.const 9 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint8Array#constructor - local.tee $2 + local.tee $5 i32.store offset=4 - local.get $2 + local.get $5 i32.const 0 i32.const 100 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $5 i32.const 1 i32.const 101 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $5 i32.const 2 i32.const 102 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $5 i32.const 3 i32.const 103 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $3 + local.tee $6 i32.store offset=8 - local.get $3 + local.get $6 i32.const 0 i32.const 1000 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $6 i32.const 1 i32.const 1001 call $~lib/typedarray/Int16Array#__set - local.get $3 + local.get $6 i32.const 2 i32.const 1002 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Float64Array#constructor - local.tee $0 + local.tee $7 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 11008 i32.store offset=16 i32.const 11020 i32.load - local.get $0 - local.tee $4 + local.get $7 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $4 + local.get $7 i32.load offset=4 - local.set $4 + local.set $8 i32.const 11012 i32.load - local.set $6 + local.set $9 i32.const 11020 i32.load - local.set $7 + local.set $10 loop $for-loop|0 - local.get $5 - local.get $7 + local.get $1 + local.get $10 i32.lt_s if - local.get $5 + local.get $1 i32.const 3 i32.shl - local.get $4 + local.get $8 i32.add - local.get $5 + local.get $1 i32.const 2 i32.shl - local.get $6 + local.get $9 i32.add i32.load f64.convert_i32_s f64.store - local.get $5 + local.get $1 i32.const 1 i32.add - local.set $5 + local.set $1 br $for-loop|0 end end @@ -43713,62 +43819,61 @@ i32.const 62 i32.const 14784 call $~lib/rt/__newArray - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store offset=16 - local.get $0 - local.get $4 + local.get $7 + local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Float64Array> global.get $~lib/memory/__stack_pointer i32.const 11088 i32.store offset=16 i32.const 0 - local.set $5 + local.set $1 i32.const 11100 i32.load i32.const 3 i32.add - local.get $0 - local.tee $4 + local.get $7 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $4 + local.get $7 i32.load offset=4 i32.const 24 i32.add - local.set $4 + local.set $8 i32.const 11092 i32.load - local.set $6 + local.set $9 i32.const 11100 i32.load - local.set $7 + local.set $10 loop $for-loop|04 - local.get $5 - local.get $7 + local.get $1 + local.get $10 i32.lt_s if - local.get $5 + local.get $1 i32.const 3 i32.shl - local.get $4 + local.get $8 i32.add - local.get $5 + local.get $1 i32.const 2 i32.shl - local.get $6 + local.get $9 i32.add f32.load f64.promote_f32 f64.store - local.get $5 + local.get $1 i32.const 1 i32.add - local.set $5 + local.set $1 br $for-loop|04 end end @@ -43777,62 +43882,59 @@ i32.const 62 i32.const 14944 call $~lib/rt/__newArray - local.set $4 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store offset=16 - local.get $0 - local.get $4 - call $std/typedarray/valuesEqual<~lib/typedarray/Float64Array> - i32.const 0 - local.set $5 + local.get $7 local.get $1 + call $std/typedarray/valuesEqual<~lib/typedarray/Float64Array> + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u i32.const 6 i32.add - local.get $0 - local.tee $4 + local.get $7 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $4 + local.get $7 i32.load offset=4 i32.const 48 i32.add - local.set $4 - local.get $1 + local.set $1 + local.get $4 i32.load offset=4 - local.set $6 - local.get $1 + local.set $8 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u - local.set $1 + local.set $4 loop $for-loop|06 - local.get $1 - local.get $5 - i32.gt_s + local.get $3 + local.get $4 + i32.lt_s if - local.get $5 + local.get $3 i32.const 3 i32.shl - local.tee $7 - local.get $4 + local.tee $9 + local.get $1 i32.add - local.get $6 - local.get $7 + local.get $8 + local.get $9 i32.add i64.load f64.convert_i64_s f64.store - local.get $5 + local.get $3 i32.const 1 i32.add - local.set $5 + local.set $3 br $for-loop|06 end end @@ -43845,144 +43947,137 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=16 - local.get $0 + local.get $7 local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Float64Array> i32.const 0 - local.set $5 - local.get $2 + local.set $1 + local.get $5 i32.load offset=8 - local.get $0 - local.tee $1 + local.get $7 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $7 i32.load offset=4 - local.set $1 - local.get $2 + local.set $3 + local.get $5 i32.load offset=4 local.set $4 - local.get $2 + local.get $5 i32.load offset=8 - local.set $2 + local.set $5 loop $for-loop|08 - local.get $2 + local.get $1 local.get $5 - i32.gt_s + i32.lt_s if - local.get $5 + local.get $1 i32.const 3 i32.shl - local.get $1 + local.get $3 i32.add + local.get $1 local.get $4 - local.get $5 i32.add i32.load8_u f64.convert_i32_u f64.store - local.get $5 + local.get $1 i32.const 1 i32.add - local.set $5 + local.set $1 br $for-loop|08 end end - i32.const 0 - local.set $2 - local.get $3 + local.get $6 i32.load offset=8 i32.const 1 i32.shr_u i32.const 4 i32.add - local.get $0 - local.tee $1 + local.get $7 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $7 i32.load offset=4 i32.const 32 i32.add local.set $1 - local.get $3 + local.get $6 i32.load offset=4 - local.set $4 - local.get $3 + local.set $3 + local.get $6 i32.load offset=8 i32.const 1 i32.shr_u - local.set $3 + local.set $4 loop $for-loop|010 - local.get $2 - local.get $3 + local.get $0 + local.get $4 i32.lt_s if - local.get $2 + local.get $0 i32.const 3 i32.shl local.get $1 i32.add - local.get $2 + local.get $0 i32.const 1 i32.shl - local.get $4 + local.get $3 i32.add i32.load16_s f64.convert_i32_s f64.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|010 end end global.get $~lib/memory/__stack_pointer i32.const 11264 i32.store offset=16 - i32.const 0 - local.set $2 i32.const 11276 i32.load i32.const 7 i32.add - local.get $0 - local.tee $1 + local.get $7 i32.load offset=8 i32.const 3 i32.shr_u i32.gt_s br_if $folding-inner0 - local.get $1 + local.get $7 i32.load offset=4 i32.const 56 i32.add - local.set $1 + local.set $0 i32.const 11268 i32.load - local.set $3 + local.set $1 i32.const 11276 i32.load - local.set $4 + local.set $3 loop $for-loop|014 local.get $2 - local.get $4 + local.get $3 i32.lt_s if local.get $2 i32.const 3 i32.shl - local.get $1 + local.get $0 i32.add + local.get $1 local.get $2 - local.get $3 i32.add i32.load8_s f64.convert_i32_s @@ -43999,12 +44094,12 @@ i32.const 62 i32.const 15168 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=16 + local.get $7 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Float64Array> global.get $~lib/memory/__stack_pointer i32.const 20 @@ -44023,19 +44118,19 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i64) - (local $4 f32) - (local $5 f64) + (local $3 i32) + (local $4 i32) + (local $5 f32) (local $6 i32) - (local $7 i32) + (local $7 f64) (local $8 i32) - (local $9 i64) - (local $10 f32) - (local $11 f64) + (local $9 i32) + (local $10 i64) + (local $11 i32) (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) + (local $13 i64) + (local $14 f32) + (local $15 f64) global.get $~lib/memory/__stack_pointer i32.const 32 i32.sub @@ -44473,29 +44568,29 @@ global.get $~lib/memory/__stack_pointer i32.const 5 call $~lib/typedarray/Int8Array#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $2 i32.const 3 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $2 i32.const 4 i32.const 5 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $2 i32.const 1 i32.const 1 i32.const 3 @@ -44505,12 +44600,12 @@ i32.const 15 i32.const 1728 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 + local.get $2 local.get $0 - local.get $1 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -44521,7 +44616,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 0 i32.const 0 i32.const 2147483647 @@ -44531,12 +44626,12 @@ i32.const 15 i32.const 1808 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 + local.get $2 local.get $0 - local.get $1 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -44547,7 +44642,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 1 i32.const 0 i32.const -3 @@ -44557,12 +44652,12 @@ i32.const 15 i32.const 1840 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 + local.get $2 local.get $0 - local.get $1 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -44573,7 +44668,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 2 i32.const -2 i32.const 2147483647 @@ -44583,12 +44678,12 @@ i32.const 15 i32.const 1872 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 + local.get $2 local.get $0 - local.get $1 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -44599,7 +44694,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $2 i32.const 0 i32.const 1 i32.const 0 @@ -44609,12 +44704,12 @@ i32.const 15 i32.const 1904 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 + local.get $2 local.get $0 - local.get $1 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -44626,7 +44721,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.const 1 i32.const 4 call $~lib/typedarray/Int8Array#subarray @@ -44681,12 +44776,12 @@ i32.const 15 i32.const 1936 call $~lib/rt/__newArray - local.set $6 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.store offset=4 local.get $1 - local.get $6 + local.get $0 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -44702,12 +44797,12 @@ i32.const 15 i32.const 1968 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 + local.get $2 local.get $0 - local.get $1 call $std/typedarray/isInt8ArrayEqual i32.eqz if @@ -44721,58 +44816,58 @@ global.get $~lib/memory/__stack_pointer i32.const 5 call $~lib/typedarray/Int32Array#constructor - local.tee $6 + local.tee $4 i32.store offset=8 - local.get $6 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $6 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $6 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $6 + local.get $4 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $6 + local.get $4 i32.const 4 i32.const 5 call $~lib/typedarray/Int32Array#__set - local.get $6 + local.get $4 i32.load offset=4 - local.set $1 + local.set $2 i32.const 1 - local.get $6 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $7 - local.get $7 + local.tee $1 + local.get $1 i32.const 1 i32.gt_u select local.set $0 i32.const 3 - local.get $7 - local.get $7 + local.get $1 + local.get $1 i32.const 3 i32.gt_u select - local.set $7 + local.set $1 loop $for-loop|0 local.get $0 - local.get $7 + local.get $1 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.const 1 i32.store @@ -44792,7 +44887,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $6 + local.get $4 local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz @@ -44804,27 +44899,27 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $4 i32.load offset=4 - local.set $0 + local.set $2 i32.const 0 - local.get $6 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $7 - local.get $7 + local.tee $0 + local.get $0 select local.set $1 loop $for-loop|01 + local.get $0 local.get $1 - local.get $7 - i32.lt_s + i32.gt_s if local.get $1 i32.const 2 i32.shl - local.get $0 + local.get $2 i32.add i32.const 0 i32.store @@ -44844,7 +44939,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $6 + local.get $4 local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz @@ -44856,37 +44951,37 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $4 i32.load offset=4 - local.set $1 + local.set $2 i32.const 0 - local.get $6 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $7 - local.get $7 + local.tee $1 + local.get $1 select local.set $0 - local.get $7 + local.get $1 i32.const 3 i32.sub - local.tee $7 + local.tee $1 i32.const 0 - local.get $7 + local.get $1 i32.const 0 i32.gt_s select - local.set $7 + local.set $1 loop $for-loop|03 local.get $0 - local.get $7 + local.get $1 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.const 1 i32.store @@ -44906,7 +45001,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $6 + local.get $4 local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz @@ -44918,32 +45013,32 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $4 i32.load offset=4 - local.set $0 - local.get $6 + local.set $3 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $7 + local.tee $2 i32.const 2 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select local.set $1 loop $for-loop|05 local.get $1 - local.get $7 + local.get $2 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $0 + local.get $3 i32.add i32.const 2 i32.store @@ -44963,7 +45058,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $6 + local.get $4 local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz @@ -44975,34 +45070,34 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $4 i32.load offset=4 - local.set $1 + local.set $2 i32.const 1 - local.get $6 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $7 - local.get $7 + local.tee $1 + local.get $1 i32.const 1 i32.gt_u select local.set $0 i32.const 0 - local.get $7 - local.get $7 + local.get $1 + local.get $1 select - local.set $7 + local.set $1 loop $for-loop|07 local.get $0 - local.get $7 + local.get $1 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.const 0 i32.store @@ -45022,7 +45117,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $6 + local.get $4 local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz @@ -45035,33 +45130,33 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#subarray - local.tee $0 + local.tee $3 i32.store offset=12 - local.get $0 + local.get $3 i32.load offset=4 - local.set $7 + local.set $2 i32.const 0 - local.get $0 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $8 - local.get $8 + local.tee $0 + local.get $0 select local.set $1 loop $for-loop|09 + local.get $0 local.get $1 - local.get $8 - i32.lt_s + i32.gt_s if local.get $1 i32.const 2 i32.shl - local.get $7 + local.get $2 i32.add i32.const 0 i32.store @@ -45072,7 +45167,7 @@ br $for-loop|09 end end - local.get $0 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -45086,9 +45181,9 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.load offset=4 - local.get $0 + local.get $3 i32.load i32.sub i32.const 4 @@ -45101,7 +45196,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $3 i32.load offset=8 i32.const 12 i32.ne @@ -45118,12 +45213,12 @@ i32.const 16 i32.const 2240 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 + local.get $3 local.get $0 - local.get $1 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -45143,7 +45238,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $6 + local.get $4 local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz @@ -45391,28 +45486,28 @@ i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $1 + local.tee $2 i32.store local.get $0 i32.const 0 i32.const 3 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2320 call $~lib/rt/__newArray - local.set $6 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.store offset=4 + local.get $1 local.get $0 - local.get $6 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -45424,7 +45519,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice @@ -45435,21 +45530,21 @@ i32.const 3 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2368 call $~lib/rt/__newArray - local.set $6 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.store offset=4 + local.get $1 local.get $0 - local.get $6 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -45461,7 +45556,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice @@ -45472,21 +45567,21 @@ i32.const 2 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2416 call $~lib/rt/__newArray - local.set $6 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.store offset=4 + local.get $1 local.get $0 - local.get $6 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -45498,7 +45593,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice @@ -45509,21 +45604,21 @@ i32.const 2 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2464 call $~lib/rt/__newArray - local.set $6 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.store offset=4 + local.get $1 local.get $0 - local.get $6 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -45535,7 +45630,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice @@ -45546,21 +45641,21 @@ i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#copyWithin - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2512 call $~lib/rt/__newArray - local.set $6 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.store offset=4 + local.get $1 local.get $0 - local.get $6 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -45572,7 +45667,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice @@ -45583,21 +45678,21 @@ i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#copyWithin - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2560 call $~lib/rt/__newArray - local.set $6 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.store offset=4 + local.get $1 local.get $0 - local.get $6 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -45609,7 +45704,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice @@ -45620,21 +45715,21 @@ i32.const 2 i32.const 4 call $~lib/typedarray/Int32Array#copyWithin - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2608 call $~lib/rt/__newArray - local.set $6 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.store offset=4 + local.get $1 local.get $0 - local.get $6 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -45646,7 +45741,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice @@ -45657,21 +45752,21 @@ i32.const -2 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2656 call $~lib/rt/__newArray - local.set $6 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.store offset=4 + local.get $1 local.get $0 - local.get $6 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -45683,7 +45778,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice @@ -45694,21 +45789,21 @@ i32.const -2 i32.const -1 call $~lib/typedarray/Int32Array#copyWithin - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2704 call $~lib/rt/__newArray - local.set $6 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.store offset=4 + local.get $1 local.get $0 - local.get $6 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -45720,7 +45815,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice @@ -45731,21 +45826,21 @@ i32.const -3 i32.const -2 call $~lib/typedarray/Int32Array#copyWithin - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2752 call $~lib/rt/__newArray - local.set $6 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.store offset=4 + local.get $1 local.get $0 - local.get $6 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -45757,7 +45852,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice @@ -45768,21 +45863,21 @@ i32.const -3 i32.const -1 call $~lib/typedarray/Int32Array#copyWithin - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2800 call $~lib/rt/__newArray - local.set $6 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.store offset=4 + local.get $1 local.get $0 - local.get $6 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -45794,7 +45889,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice @@ -45805,21 +45900,21 @@ i32.const -3 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 i32.const 5 i32.const 2 i32.const 16 i32.const 2848 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 local.get $0 + i32.store offset=4 local.get $1 + local.get $0 call $std/typedarray/isInt32ArrayEqual i32.eqz if @@ -45833,30 +45928,30 @@ global.get $~lib/memory/__stack_pointer i32.const 5 call $~lib/typedarray/Int32Array#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $2 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $2 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $2 i32.const 4 i32.const 5 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#subarray @@ -45904,13 +45999,13 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.const 1 i32.const 3 call $~lib/typedarray/Int32Array#slice - local.tee $6 + local.tee $0 i32.store offset=8 - local.get $6 + local.get $0 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 2 @@ -45923,7 +46018,7 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $0 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 3 @@ -45936,7 +46031,7 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u @@ -45950,9 +46045,9 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $0 i32.load offset=4 - local.get $6 + local.get $0 i32.load i32.sub if @@ -45963,7 +46058,7 @@ call $~lib/builtins/abort unreachable end - local.get $6 + local.get $0 i32.load offset=8 i32.const 8 i32.ne @@ -45980,9 +46075,9 @@ i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#slice - local.tee $1 + local.tee $0 i32.store offset=12 - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 3 @@ -45995,7 +46090,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u @@ -46009,9 +46104,9 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub if @@ -46022,7 +46117,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 4 i32.ne @@ -46035,14 +46130,14 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.tee $1 + local.tee $0 i32.store offset=24 local.get $0 - local.get $1 + local.get $2 i32.eq if i32.const 0 @@ -46052,11 +46147,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.get $0 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -46069,14 +46164,14 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=4 - local.get $1 + local.get $0 i32.load i32.sub - local.get $0 + local.get $2 i32.load offset=4 - local.get $0 + local.get $2 i32.load i32.sub i32.ne @@ -46088,10 +46183,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 - i32.load offset=8 local.get $0 i32.load offset=8 + local.get $2 + i32.load offset=8 i32.ne if i32.const 0 @@ -46116,17 +46211,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set @@ -46135,32 +46230,32 @@ i32.store offset=4 i32.const 0 local.set $0 - local.get $1 + local.get $4 i32.load offset=4 - local.set $6 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 - local.set $7 + local.set $2 loop $for-loop|010 local.get $0 - local.get $7 + local.get $2 i32.lt_s if local.get $0 - local.get $6 + local.get $3 i32.add i32.load8_s - local.set $8 + local.set $1 i32.const 4 global.set $~argumentsLength - local.get $2 - local.get $8 - local.get $0 + local.get $9 local.get $1 + local.get $0 + local.get $4 i32.const 2896 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $2 + local.set $9 local.get $0 i32.const 1 i32.add @@ -46168,7 +46263,7 @@ br $for-loop|010 end end - local.get $2 + local.get $9 i32.const 255 i32.and i32.const 6 @@ -46193,17 +46288,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -46213,33 +46308,33 @@ i32.const 0 local.set $0 i32.const 0 - local.set $2 - local.get $1 + local.set $9 + local.get $4 i32.load offset=4 - local.set $6 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 - local.set $7 + local.set $2 loop $for-loop|04 local.get $0 - local.get $7 + local.get $2 i32.lt_s if local.get $0 - local.get $6 + local.get $3 i32.add i32.load8_u - local.set $8 + local.set $1 i32.const 4 global.set $~argumentsLength - local.get $2 - local.get $8 - local.get $0 + local.get $9 local.get $1 + local.get $0 + local.get $4 i32.const 2928 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $2 + local.set $9 local.get $0 i32.const 1 i32.add @@ -46247,7 +46342,7 @@ br $for-loop|04 end end - local.get $2 + local.get $9 i32.const 255 i32.and i32.const 6 @@ -46272,17 +46367,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -46292,33 +46387,33 @@ i32.const 0 local.set $0 i32.const 0 - local.set $2 - local.get $1 + local.set $9 + local.get $4 i32.load offset=4 - local.set $6 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 - local.set $7 + local.set $2 loop $for-loop|08 local.get $0 - local.get $7 + local.get $2 i32.lt_s if local.get $0 - local.get $6 + local.get $3 i32.add i32.load8_u - local.set $8 + local.set $1 i32.const 4 global.set $~argumentsLength - local.get $2 - local.get $8 - local.get $0 + local.get $9 local.get $1 + local.get $0 + local.get $4 i32.const 2960 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $2 + local.set $9 local.get $0 i32.const 1 i32.add @@ -46326,7 +46421,7 @@ br $for-loop|08 end end - local.get $2 + local.get $9 i32.const 255 i32.and i32.const 6 @@ -46351,17 +46446,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -46371,37 +46466,37 @@ i32.const 0 local.set $0 i32.const 0 - local.set $2 - local.get $1 + local.set $9 + local.get $4 i32.load offset=4 - local.set $6 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.set $7 + local.set $2 loop $for-loop|01011 local.get $0 - local.get $7 + local.get $2 i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $3 i32.add i32.load16_s - local.set $8 + local.set $1 i32.const 4 global.set $~argumentsLength - local.get $2 - local.get $8 - local.get $0 + local.get $9 local.get $1 + local.get $0 + local.get $4 i32.const 2992 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $2 + local.set $9 local.get $0 i32.const 1 i32.add @@ -46409,7 +46504,7 @@ br $for-loop|01011 end end - local.get $2 + local.get $9 i32.const 65535 i32.and i32.const 6 @@ -46434,17 +46529,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -46454,37 +46549,37 @@ i32.const 0 local.set $0 i32.const 0 - local.set $2 - local.get $1 + local.set $9 + local.get $4 i32.load offset=4 - local.set $6 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.set $7 + local.set $2 loop $for-loop|013 local.get $0 - local.get $7 + local.get $2 i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $6 + local.get $3 i32.add i32.load16_u - local.set $8 + local.set $1 i32.const 4 global.set $~argumentsLength - local.get $2 - local.get $8 - local.get $0 + local.get $9 local.get $1 + local.get $0 + local.get $4 i32.const 3024 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $2 + local.set $9 local.get $0 i32.const 1 i32.add @@ -46492,7 +46587,7 @@ br $for-loop|013 end end - local.get $2 + local.get $9 i32.const 65535 i32.and i32.const 6 @@ -46517,17 +46612,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -46537,37 +46632,37 @@ i32.const 0 local.set $0 i32.const 0 - local.set $2 - local.get $1 + local.set $9 + local.get $4 i32.load offset=4 - local.set $6 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 + local.set $2 loop $for-loop|016 local.get $0 - local.get $7 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $6 + local.get $3 i32.add i32.load - local.set $8 + local.set $1 i32.const 4 global.set $~argumentsLength - local.get $2 - local.get $8 - local.get $0 + local.get $9 local.get $1 + local.get $0 + local.get $4 i32.const 3056 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $2 + local.set $9 local.get $0 i32.const 1 i32.add @@ -46575,7 +46670,7 @@ br $for-loop|016 end end - local.get $2 + local.get $9 i32.const 6 i32.ne br_if $folding-inner1 @@ -46598,17 +46693,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -46618,37 +46713,37 @@ i32.const 0 local.set $0 i32.const 0 - local.set $2 - local.get $1 + local.set $9 + local.get $4 i32.load offset=4 - local.set $6 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 + local.set $2 loop $for-loop|021 local.get $0 - local.get $7 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $6 + local.get $3 i32.add i32.load - local.set $8 + local.set $1 i32.const 4 global.set $~argumentsLength - local.get $2 - local.get $8 - local.get $0 + local.get $9 local.get $1 + local.get $0 + local.get $4 i32.const 3088 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $2 + local.set $9 local.get $0 i32.const 1 i32.add @@ -46656,7 +46751,7 @@ br $for-loop|021 end end - local.get $2 + local.get $9 i32.const 6 i32.ne br_if $folding-inner1 @@ -46679,17 +46774,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $3 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $3 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set @@ -46698,17 +46793,17 @@ i32.store offset=4 i32.const 0 local.set $0 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $1 loop $for-loop|024 local.get $0 - local.get $6 + local.get $1 i32.lt_s if local.get $0 @@ -46717,17 +46812,17 @@ local.get $2 i32.add i64.load - local.set $9 + local.set $10 i32.const 4 global.set $~argumentsLength - local.get $3 - local.get $9 + local.get $13 + local.get $10 local.get $0 - local.get $1 + local.get $3 i32.const 3120 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $3 + local.set $13 local.get $0 i32.const 1 i32.add @@ -46735,7 +46830,7 @@ br $for-loop|024 end end - local.get $3 + local.get $13 i64.const 6 i64.ne br_if $folding-inner1 @@ -46758,17 +46853,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $3 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $3 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set @@ -46778,18 +46873,18 @@ i32.const 0 local.set $0 i64.const 0 - local.set $3 - local.get $1 + local.set $13 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $1 loop $for-loop|027 local.get $0 - local.get $6 + local.get $1 i32.lt_s if local.get $0 @@ -46798,17 +46893,17 @@ local.get $2 i32.add i64.load - local.set $9 + local.set $10 i32.const 4 global.set $~argumentsLength - local.get $3 - local.get $9 + local.get $13 + local.get $10 local.get $0 - local.get $1 + local.get $3 i32.const 3152 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $3 + local.set $13 local.get $0 i32.const 1 i32.add @@ -46816,7 +46911,7 @@ br $for-loop|027 end end - local.get $3 + local.get $13 i64.const 6 i64.ne br_if $folding-inner1 @@ -46839,17 +46934,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $3 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $3 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set @@ -46858,17 +46953,17 @@ i32.store offset=4 i32.const 0 local.set $0 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 + local.set $1 loop $for-loop|030 local.get $0 - local.get $6 + local.get $1 i32.lt_s if local.get $0 @@ -46877,17 +46972,17 @@ local.get $2 i32.add f32.load - local.set $10 + local.set $5 i32.const 4 global.set $~argumentsLength - local.get $4 - local.get $10 + local.get $14 + local.get $5 local.get $0 - local.get $1 + local.get $3 i32.const 3184 i32.load call_indirect $0 (type $f32_f32_i32_i32_=>_f32) - local.set $4 + local.set $14 local.get $0 i32.const 1 i32.add @@ -46895,7 +46990,7 @@ br $for-loop|030 end end - local.get $4 + local.get $14 f32.const 6 f32.ne br_if $folding-inner1 @@ -46918,17 +47013,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $3 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $3 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set @@ -46937,17 +47032,17 @@ i32.store offset=4 i32.const 0 local.set $0 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $1 loop $for-loop|033 local.get $0 - local.get $6 + local.get $1 i32.lt_s if local.get $0 @@ -46956,17 +47051,17 @@ local.get $2 i32.add f64.load - local.set $11 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $5 - local.get $11 + local.get $15 + local.get $7 local.get $0 - local.get $1 + local.get $3 i32.const 3216 i32.load call_indirect $0 (type $f64_f64_i32_i32_=>_f64) - local.set $5 + local.set $15 local.get $0 i32.const 1 i32.add @@ -46974,7 +47069,7 @@ br $for-loop|033 end end - local.get $5 + local.get $15 f64.const 6 f64.ne br_if $folding-inner1 @@ -47558,17 +47653,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set @@ -47577,11 +47672,10 @@ i32.store offset=4 i32.const 0 local.set $0 - local.get $1 - local.tee $2 + local.get $4 i32.load offset=4 - local.set $6 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.sub @@ -47592,16 +47686,16 @@ i32.ge_s if local.get $1 - local.get $6 + local.get $3 i32.add i32.load8_s - local.set $7 + local.set $2 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $7 - local.get $1 local.get $2 + local.get $1 + local.get $4 i32.const 3248 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -47638,17 +47732,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -47657,11 +47751,10 @@ i32.store offset=4 i32.const 0 local.set $0 - local.get $1 - local.tee $2 + local.get $4 i32.load offset=4 - local.set $6 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.sub @@ -47672,16 +47765,16 @@ i32.ge_s if local.get $1 - local.get $6 + local.get $3 i32.add i32.load8_u - local.set $7 + local.set $2 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $7 - local.get $1 local.get $2 + local.get $1 + local.get $4 i32.const 3280 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -47718,17 +47811,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -47737,11 +47830,10 @@ i32.store offset=4 i32.const 0 local.set $0 - local.get $1 - local.tee $2 + local.get $4 i32.load offset=4 - local.set $6 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.sub @@ -47752,16 +47844,16 @@ i32.ge_s if local.get $1 - local.get $6 + local.get $3 i32.add i32.load8_u - local.set $7 + local.set $2 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $7 - local.get $1 local.get $2 + local.get $1 + local.get $4 i32.const 3312 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -47798,17 +47890,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -47817,11 +47909,10 @@ i32.store offset=4 i32.const 0 local.set $0 - local.get $1 - local.tee $2 + local.get $4 i32.load offset=4 - local.set $6 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -47836,16 +47927,16 @@ local.get $1 i32.const 1 i32.shl - local.get $6 + local.get $3 i32.add i32.load16_s - local.set $7 + local.set $2 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $7 - local.get $1 local.get $2 + local.get $1 + local.get $4 i32.const 3344 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -47882,17 +47973,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -47901,11 +47992,10 @@ i32.store offset=4 i32.const 0 local.set $0 - local.get $1 - local.tee $2 + local.get $4 i32.load offset=4 - local.set $6 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u @@ -47920,16 +48010,16 @@ local.get $1 i32.const 1 i32.shl - local.get $6 + local.get $3 i32.add i32.load16_u - local.set $7 + local.set $2 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $7 - local.get $1 local.get $2 + local.get $1 + local.get $4 i32.const 3376 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -47966,17 +48056,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -47985,11 +48075,10 @@ i32.store offset=4 i32.const 0 local.set $0 - local.get $1 - local.tee $2 + local.get $4 i32.load offset=4 - local.set $6 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -48004,16 +48093,16 @@ local.get $1 i32.const 2 i32.shl - local.get $6 + local.get $3 i32.add i32.load - local.set $7 + local.set $2 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $7 - local.get $1 local.get $2 + local.get $1 + local.get $4 i32.const 3408 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -48048,17 +48137,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -48067,11 +48156,10 @@ i32.store offset=4 i32.const 0 local.set $0 - local.get $1 - local.tee $2 + local.get $4 i32.load offset=4 - local.set $6 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -48086,16 +48174,16 @@ local.get $1 i32.const 2 i32.shl - local.get $6 + local.get $3 i32.add i32.load - local.set $7 + local.set $2 i32.const 4 global.set $~argumentsLength local.get $0 - local.get $7 - local.get $1 local.get $2 + local.get $1 + local.get $4 i32.const 3440 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) @@ -48130,17 +48218,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $2 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $2 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set @@ -48148,11 +48236,11 @@ i32.const 3472 i32.store offset=4 i64.const 0 - local.set $3 - local.get $0 + local.set $13 + local.get $2 i32.load offset=4 - local.set $2 - local.get $0 + local.set $0 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -48167,20 +48255,20 @@ local.get $1 i32.const 3 i32.shl - local.get $2 + local.get $0 i32.add i64.load - local.set $9 + local.set $10 i32.const 4 global.set $~argumentsLength - local.get $3 - local.get $9 + local.get $13 + local.get $10 local.get $1 - local.get $0 + local.get $2 i32.const 3472 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $3 + local.set $13 local.get $1 i32.const 1 i32.sub @@ -48188,7 +48276,7 @@ br $for-loop|061 end end - local.get $3 + local.get $13 i64.const 6 i64.ne br_if $folding-inner5 @@ -48211,17 +48299,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $2 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $2 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set @@ -48229,11 +48317,11 @@ i32.const 3504 i32.store offset=4 i64.const 0 - local.set $3 - local.get $0 + local.set $13 + local.get $2 i32.load offset=4 - local.set $2 - local.get $0 + local.set $0 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -48248,20 +48336,20 @@ local.get $1 i32.const 3 i32.shl - local.get $2 + local.get $0 i32.add i64.load - local.set $9 + local.set $10 i32.const 4 global.set $~argumentsLength - local.get $3 - local.get $9 + local.get $13 + local.get $10 local.get $1 - local.get $0 + local.get $2 i32.const 3504 i32.load call_indirect $0 (type $i64_i64_i32_i32_=>_i64) - local.set $3 + local.set $13 local.get $1 i32.const 1 i32.sub @@ -48269,7 +48357,7 @@ br $for-loop|064 end end - local.get $3 + local.get $13 i64.const 6 i64.ne br_if $folding-inner5 @@ -48292,17 +48380,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $2 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $2 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set @@ -48310,11 +48398,11 @@ i32.const 3536 i32.store offset=4 f32.const 0 - local.set $4 - local.get $0 + local.set $14 + local.get $2 i32.load offset=4 - local.set $2 - local.get $0 + local.set $0 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -48329,20 +48417,20 @@ local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $0 i32.add f32.load - local.set $10 + local.set $5 i32.const 4 global.set $~argumentsLength - local.get $4 - local.get $10 + local.get $14 + local.get $5 local.get $1 - local.get $0 + local.get $2 i32.const 3536 i32.load call_indirect $0 (type $f32_f32_i32_i32_=>_f32) - local.set $4 + local.set $14 local.get $1 i32.const 1 i32.sub @@ -48350,7 +48438,7 @@ br $for-loop|067 end end - local.get $4 + local.get $14 f32.const 6 f32.ne br_if $folding-inner5 @@ -48373,17 +48461,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $2 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $2 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set @@ -48391,11 +48479,11 @@ i32.const 3568 i32.store offset=4 f64.const 0 - local.set $5 - local.get $0 + local.set $15 + local.get $2 i32.load offset=4 - local.set $2 - local.get $0 + local.set $0 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -48410,20 +48498,20 @@ local.get $1 i32.const 3 i32.shl - local.get $2 + local.get $0 i32.add f64.load - local.set $11 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $5 - local.get $11 + local.get $15 + local.get $7 local.get $1 - local.get $0 + local.get $2 i32.const 3568 i32.load call_indirect $0 (type $f64_f64_i32_i32_=>_f64) - local.set $5 + local.set $15 local.get $1 i32.const 1 i32.sub @@ -48431,7 +48519,7 @@ br $for-loop|070 end end - local.get $5 + local.get $15 f64.const 6 f64.ne br_if $folding-inner5 @@ -48439,8 +48527,6 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - i32.const 0 - local.set $1 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -48459,17 +48545,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $2 + local.tee $8 i32.store - local.get $2 + local.get $8 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $8 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $8 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set @@ -48489,87 +48575,87 @@ local.tee $0 i64.const 0 i64.store - local.get $2 + local.get $8 i32.load offset=8 - local.set $7 - local.get $2 + local.set $4 + local.get $8 i32.load offset=4 - local.set $8 + local.set $3 local.get $0 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.tee $12 + local.tee $1 i32.store offset=4 loop $for-loop|012 - local.get $1 - local.get $7 - i32.lt_s + local.get $4 + local.get $12 + i32.gt_s if - local.get $1 - local.get $8 + local.get $3 + local.get $12 i32.add i32.load8_s - local.set $13 + local.set $0 i32.const 3 global.set $~argumentsLength local.get $1 local.get $12 i32.add - local.get $13 - local.get $1 - local.get $2 + local.get $0 + local.get $12 + local.get $8 i32.const 3600 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store8 - local.get $1 + local.get $12 i32.const 1 i32.add - local.set $1 + local.set $12 br $for-loop|012 end end - local.get $0 - local.get $12 + local.get $2 + local.get $1 i32.store - local.get $12 + local.get $1 if - local.get $0 - local.get $12 + local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $12 + local.get $2 + local.get $1 i32.store offset=4 - local.get $0 - local.get $7 + local.get $2 + local.get $4 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=8 - local.get $0 + local.get $2 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 1 i32.ne br_if $folding-inner6 - local.get $0 + local.get $2 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 4 i32.ne br_if $folding-inner7 - local.get $0 + local.get $2 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 9 @@ -48580,7 +48666,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $1 + local.set $12 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -48599,17 +48685,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $2 + local.tee $8 i32.store - local.get $2 + local.get $8 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $8 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $2 + local.get $8 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -48629,87 +48715,87 @@ local.tee $0 i64.const 0 i64.store - local.get $2 + local.get $8 i32.load offset=8 - local.set $7 - local.get $2 + local.set $4 + local.get $8 i32.load offset=4 - local.set $8 + local.set $3 local.get $0 i32.const 12 i32.const 4 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.tee $12 + local.tee $1 i32.store offset=4 loop $for-loop|014 - local.get $1 - local.get $7 - i32.lt_s + local.get $4 + local.get $12 + i32.gt_s if - local.get $1 - local.get $8 + local.get $3 + local.get $12 i32.add i32.load8_u - local.set $13 + local.set $0 i32.const 3 global.set $~argumentsLength local.get $1 local.get $12 i32.add - local.get $13 - local.get $1 - local.get $2 + local.get $0 + local.get $12 + local.get $8 i32.const 3632 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store8 - local.get $1 + local.get $12 i32.const 1 i32.add - local.set $1 + local.set $12 br $for-loop|014 end end - local.get $0 - local.get $12 + local.get $2 + local.get $1 i32.store - local.get $12 + local.get $1 if - local.get $0 - local.get $12 + local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $12 + local.get $2 + local.get $1 i32.store offset=4 - local.get $0 - local.get $7 + local.get $2 + local.get $4 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=8 - local.get $0 + local.get $2 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 1 i32.ne br_if $folding-inner6 - local.get $0 + local.get $2 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 4 i32.ne br_if $folding-inner7 - local.get $0 + local.get $2 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 9 @@ -48720,7 +48806,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $1 + local.set $12 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -48739,17 +48825,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $2 + local.tee $8 i32.store - local.get $2 + local.get $8 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $8 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $8 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -48769,87 +48855,87 @@ local.tee $0 i64.const 0 i64.store - local.get $2 + local.get $8 i32.load offset=8 - local.set $7 - local.get $2 + local.set $4 + local.get $8 i32.load offset=4 - local.set $8 + local.set $3 local.get $0 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.tee $12 + local.tee $1 i32.store offset=4 loop $for-loop|015 - local.get $1 - local.get $7 - i32.lt_s + local.get $4 + local.get $12 + i32.gt_s if - local.get $1 - local.get $8 + local.get $3 + local.get $12 i32.add i32.load8_u - local.set $13 + local.set $0 i32.const 3 global.set $~argumentsLength local.get $1 local.get $12 i32.add - local.get $13 - local.get $1 - local.get $2 + local.get $0 + local.get $12 + local.get $8 i32.const 3664 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store8 - local.get $1 + local.get $12 i32.const 1 i32.add - local.set $1 + local.set $12 br $for-loop|015 end end - local.get $0 - local.get $12 + local.get $2 + local.get $1 i32.store - local.get $12 + local.get $1 if - local.get $0 - local.get $12 + local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 - local.get $12 + local.get $2 + local.get $1 i32.store offset=4 - local.get $0 - local.get $7 + local.get $2 + local.get $4 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=8 - local.get $0 + local.get $2 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 1 i32.ne br_if $folding-inner6 - local.get $0 + local.get $2 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 4 i32.ne br_if $folding-inner7 - local.get $0 + local.get $2 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 9 @@ -48860,7 +48946,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $1 + local.set $12 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -48879,17 +48965,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $0 + local.tee $11 i32.store - local.get $0 + local.get $11 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $11 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $11 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -48906,98 +48992,98 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $0 i64.const 0 i64.store - local.get $0 + local.get $11 i32.load offset=8 i32.const 1 i32.shr_u - local.set $7 - local.get $0 - i32.load offset=4 local.set $8 - local.get $6 + local.get $11 + i32.load offset=4 + local.set $6 + local.get $0 i32.const 12 i32.const 6 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $8 i32.const 1 i32.shl - local.tee $12 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $13 + local.tee $2 i32.store offset=4 loop $for-loop|017 - local.get $1 - local.get $7 - i32.lt_s + local.get $8 + local.get $12 + i32.gt_s if - local.get $8 - local.get $1 + local.get $6 + local.get $12 i32.const 1 i32.shl - local.tee $14 + local.tee $1 i32.add i32.load16_s - local.set $15 + local.set $0 i32.const 3 global.set $~argumentsLength - local.get $13 - local.get $14 - i32.add - local.get $15 local.get $1 + local.get $2 + i32.add local.get $0 + local.get $12 + local.get $11 i32.const 3696 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store16 - local.get $1 + local.get $12 i32.const 1 i32.add - local.set $1 + local.set $12 br $for-loop|017 end end - local.get $6 - local.get $13 + local.get $4 + local.get $2 i32.store - local.get $13 + local.get $2 if - local.get $6 - local.get $13 + local.get $4 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $6 - local.get $13 + local.get $4 + local.get $2 i32.store offset=4 - local.get $6 - local.get $12 + local.get $4 + local.get $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.store offset=8 - local.get $6 + local.get $4 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 1 i32.ne br_if $folding-inner6 - local.get $6 + local.get $4 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 4 i32.ne br_if $folding-inner7 - local.get $6 + local.get $4 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 9 @@ -49008,7 +49094,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $1 + local.set $12 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -49027,17 +49113,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $0 + local.tee $11 i32.store - local.get $0 + local.get $11 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $11 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $11 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -49054,98 +49140,98 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $0 i64.const 0 i64.store - local.get $0 + local.get $11 i32.load offset=8 i32.const 1 i32.shr_u - local.set $7 - local.get $0 - i32.load offset=4 local.set $8 - local.get $6 + local.get $11 + i32.load offset=4 + local.set $6 + local.get $0 i32.const 12 i32.const 7 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $8 i32.const 1 i32.shl - local.tee $12 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $13 + local.tee $2 i32.store offset=4 loop $for-loop|018 - local.get $1 - local.get $7 - i32.lt_s + local.get $8 + local.get $12 + i32.gt_s if - local.get $8 - local.get $1 + local.get $6 + local.get $12 i32.const 1 i32.shl - local.tee $14 + local.tee $1 i32.add i32.load16_u - local.set $15 + local.set $0 i32.const 3 global.set $~argumentsLength - local.get $13 - local.get $14 - i32.add - local.get $15 local.get $1 + local.get $2 + i32.add local.get $0 + local.get $12 + local.get $11 i32.const 3728 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store16 - local.get $1 + local.get $12 i32.const 1 i32.add - local.set $1 + local.set $12 br $for-loop|018 end end - local.get $6 - local.get $13 + local.get $4 + local.get $2 i32.store - local.get $13 + local.get $2 if - local.get $6 - local.get $13 + local.get $4 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $6 - local.get $13 + local.get $4 + local.get $2 i32.store offset=4 - local.get $6 - local.get $12 + local.get $4 + local.get $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.store offset=8 - local.get $6 + local.get $4 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 1 i32.ne br_if $folding-inner6 - local.get $6 + local.get $4 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 4 i32.ne br_if $folding-inner7 - local.get $6 + local.get $4 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 9 @@ -49156,7 +49242,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $1 + local.set $12 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -49175,17 +49261,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $0 + local.tee $11 i32.store - local.get $0 + local.get $11 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $11 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $11 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -49202,98 +49288,98 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $0 i64.const 0 i64.store - local.get $0 + local.get $11 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 - local.get $0 - i32.load offset=4 local.set $8 - local.get $6 + local.get $11 + i32.load offset=4 + local.set $6 + local.get $0 i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $8 i32.const 2 i32.shl - local.tee $12 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $13 + local.tee $2 i32.store offset=4 loop $for-loop|019 - local.get $1 - local.get $7 - i32.lt_s + local.get $8 + local.get $12 + i32.gt_s if - local.get $8 - local.get $1 + local.get $6 + local.get $12 i32.const 2 i32.shl - local.tee $14 + local.tee $1 i32.add i32.load - local.set $15 + local.set $0 i32.const 3 global.set $~argumentsLength - local.get $13 - local.get $14 - i32.add - local.get $15 local.get $1 + local.get $2 + i32.add local.get $0 + local.get $12 + local.get $11 i32.const 3760 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store - local.get $1 + local.get $12 i32.const 1 i32.add - local.set $1 + local.set $12 br $for-loop|019 end end - local.get $6 - local.get $13 + local.get $4 + local.get $2 i32.store - local.get $13 + local.get $2 if - local.get $6 - local.get $13 + local.get $4 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $6 - local.get $13 + local.get $4 + local.get $2 i32.store offset=4 - local.get $6 - local.get $12 + local.get $4 + local.get $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.store offset=8 - local.get $6 + local.get $4 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 1 i32.ne br_if $folding-inner6 - local.get $6 + local.get $4 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 4 i32.ne br_if $folding-inner7 - local.get $6 + local.get $4 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 9 @@ -49304,7 +49390,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $1 + local.set $12 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -49323,17 +49409,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $0 + local.tee $11 i32.store - local.get $0 + local.get $11 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $11 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $11 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -49350,98 +49436,98 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $0 i64.const 0 i64.store - local.get $0 + local.get $11 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 - local.get $0 - i32.load offset=4 local.set $8 - local.get $6 + local.get $11 + i32.load offset=4 + local.set $6 + local.get $0 i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $4 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $8 i32.const 2 i32.shl - local.tee $12 + local.tee $3 i32.const 0 call $~lib/rt/itcms/__new - local.tee $13 + local.tee $2 i32.store offset=4 loop $for-loop|020 - local.get $1 - local.get $7 - i32.lt_s + local.get $8 + local.get $12 + i32.gt_s if - local.get $8 - local.get $1 + local.get $6 + local.get $12 i32.const 2 i32.shl - local.tee $14 + local.tee $1 i32.add i32.load - local.set $15 + local.set $0 i32.const 3 global.set $~argumentsLength - local.get $13 - local.get $14 - i32.add - local.get $15 local.get $1 + local.get $2 + i32.add local.get $0 + local.get $12 + local.get $11 i32.const 3792 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.store - local.get $1 + local.get $12 i32.const 1 i32.add - local.set $1 + local.set $12 br $for-loop|020 end end - local.get $6 - local.get $13 + local.get $4 + local.get $2 i32.store - local.get $13 + local.get $2 if - local.get $6 - local.get $13 + local.get $4 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $6 - local.get $13 + local.get $4 + local.get $2 i32.store offset=4 - local.get $6 - local.get $12 + local.get $4 + local.get $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.store offset=8 - local.get $6 + local.get $4 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 1 i32.ne br_if $folding-inner6 - local.get $6 + local.get $4 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 4 i32.ne br_if $folding-inner7 - local.get $6 + local.get $4 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 9 @@ -49452,7 +49538,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $1 + local.set $12 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -49471,17 +49557,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $0 + local.tee $9 i32.store - local.get $0 + local.get $9 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $9 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $9 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set @@ -49498,98 +49584,98 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $0 i64.const 0 i64.store - local.get $0 + local.get $9 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 - local.get $0 + local.set $6 + local.get $9 i32.load offset=4 - local.set $8 - local.get $6 + local.set $4 + local.get $0 i32.const 12 i32.const 10 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $6 i32.const 3 i32.shl - local.tee $12 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $13 + local.tee $1 i32.store offset=4 loop $for-loop|022 - local.get $1 - local.get $7 - i32.lt_s + local.get $6 + local.get $12 + i32.gt_s if - local.get $8 - local.get $1 + local.get $4 + local.get $12 i32.const 3 i32.shl - local.tee $14 + local.tee $0 i32.add i64.load - local.set $3 + local.set $10 i32.const 3 global.set $~argumentsLength - local.get $13 - local.get $14 - i32.add - local.get $3 - local.get $1 local.get $0 + local.get $1 + i32.add + local.get $10 + local.get $12 + local.get $9 i32.const 3824 i32.load call_indirect $0 (type $i64_i32_i32_=>_i64) i64.store - local.get $1 + local.get $12 i32.const 1 i32.add - local.set $1 + local.set $12 br $for-loop|022 end end - local.get $6 - local.get $13 + local.get $3 + local.get $1 i32.store - local.get $13 + local.get $1 if - local.get $6 - local.get $13 + local.get $3 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $6 - local.get $13 + local.get $3 + local.get $1 i32.store offset=4 - local.get $6 - local.get $12 + local.get $3 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $3 i32.store offset=8 - local.get $6 + local.get $3 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 1 i64.ne br_if $folding-inner6 - local.get $6 + local.get $3 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 4 i64.ne br_if $folding-inner7 - local.get $6 + local.get $3 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 9 @@ -49600,7 +49686,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $1 + local.set $12 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -49619,17 +49705,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $0 + local.tee $9 i32.store - local.get $0 + local.get $9 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $9 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $9 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set @@ -49646,98 +49732,98 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $0 i64.const 0 i64.store - local.get $0 + local.get $9 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 - local.get $0 + local.set $6 + local.get $9 i32.load offset=4 - local.set $8 - local.get $6 + local.set $4 + local.get $0 i32.const 12 i32.const 11 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $6 i32.const 3 i32.shl - local.tee $12 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $13 + local.tee $1 i32.store offset=4 loop $for-loop|023 - local.get $1 - local.get $7 - i32.lt_s + local.get $6 + local.get $12 + i32.gt_s if - local.get $8 - local.get $1 + local.get $4 + local.get $12 i32.const 3 i32.shl - local.tee $14 + local.tee $0 i32.add i64.load - local.set $3 + local.set $10 i32.const 3 global.set $~argumentsLength - local.get $13 - local.get $14 - i32.add - local.get $3 - local.get $1 local.get $0 + local.get $1 + i32.add + local.get $10 + local.get $12 + local.get $9 i32.const 3856 i32.load call_indirect $0 (type $i64_i32_i32_=>_i64) i64.store - local.get $1 + local.get $12 i32.const 1 i32.add - local.set $1 + local.set $12 br $for-loop|023 end end - local.get $6 - local.get $13 + local.get $3 + local.get $1 i32.store - local.get $13 + local.get $1 if - local.get $6 - local.get $13 + local.get $3 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $6 - local.get $13 + local.get $3 + local.get $1 i32.store offset=4 - local.get $6 - local.get $12 + local.get $3 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $3 i32.store offset=8 - local.get $6 + local.get $3 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 1 i64.ne br_if $folding-inner6 - local.get $6 + local.get $3 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 4 i64.ne br_if $folding-inner7 - local.get $6 + local.get $3 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 9 @@ -49748,7 +49834,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $1 + local.set $12 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -49767,17 +49853,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $0 + local.tee $9 i32.store - local.get $0 + local.get $9 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $9 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $9 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set @@ -49794,98 +49880,98 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $0 i64.const 0 i64.store - local.get $0 + local.get $9 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 - local.get $0 + local.set $6 + local.get $9 i32.load offset=4 - local.set $8 - local.get $6 + local.set $4 + local.get $0 i32.const 12 i32.const 12 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $6 i32.const 2 i32.shl - local.tee $12 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $13 + local.tee $1 i32.store offset=4 loop $for-loop|025 - local.get $1 - local.get $7 - i32.lt_s + local.get $6 + local.get $12 + i32.gt_s if - local.get $8 - local.get $1 + local.get $4 + local.get $12 i32.const 2 i32.shl - local.tee $14 + local.tee $0 i32.add f32.load - local.set $4 + local.set $5 i32.const 3 global.set $~argumentsLength - local.get $13 - local.get $14 - i32.add - local.get $4 - local.get $1 local.get $0 + local.get $1 + i32.add + local.get $5 + local.get $12 + local.get $9 i32.const 3888 i32.load call_indirect $0 (type $f32_i32_i32_=>_f32) f32.store - local.get $1 + local.get $12 i32.const 1 i32.add - local.set $1 + local.set $12 br $for-loop|025 end end - local.get $6 - local.get $13 + local.get $3 + local.get $1 i32.store - local.get $13 + local.get $1 if - local.get $6 - local.get $13 + local.get $3 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $6 - local.get $13 + local.get $3 + local.get $1 i32.store offset=4 - local.get $6 - local.get $12 + local.get $3 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $3 i32.store offset=8 - local.get $6 + local.get $3 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 1 f32.ne br_if $folding-inner6 - local.get $6 + local.get $3 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 4 f32.ne br_if $folding-inner7 - local.get $6 + local.get $3 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 9 @@ -49896,7 +49982,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $1 + local.set $12 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -49915,17 +50001,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $0 + local.tee $9 i32.store - local.get $0 + local.get $9 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $9 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $9 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set @@ -49942,98 +50028,98 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $6 + local.tee $0 i64.const 0 i64.store - local.get $0 + local.get $9 i32.load offset=8 i32.const 3 i32.shr_u - local.set $7 - local.get $0 + local.set $6 + local.get $9 i32.load offset=4 - local.set $8 - local.get $6 + local.set $4 + local.get $0 i32.const 12 i32.const 13 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $3 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $6 i32.const 3 i32.shl - local.tee $12 + local.tee $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $13 + local.tee $1 i32.store offset=4 loop $for-loop|026 - local.get $1 - local.get $7 - i32.lt_s + local.get $6 + local.get $12 + i32.gt_s if - local.get $8 - local.get $1 + local.get $4 + local.get $12 i32.const 3 i32.shl - local.tee $14 + local.tee $0 i32.add f64.load - local.set $5 + local.set $7 i32.const 3 global.set $~argumentsLength - local.get $13 - local.get $14 - i32.add - local.get $5 - local.get $1 local.get $0 + local.get $1 + i32.add + local.get $7 + local.get $12 + local.get $9 i32.const 3920 i32.load call_indirect $0 (type $f64_i32_i32_=>_f64) f64.store - local.get $1 + local.get $12 i32.const 1 i32.add - local.set $1 + local.set $12 br $for-loop|026 end end - local.get $6 - local.get $13 + local.get $3 + local.get $1 i32.store - local.get $13 + local.get $1 if - local.get $6 - local.get $13 + local.get $3 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $6 - local.get $13 + local.get $3 + local.get $1 i32.store offset=4 - local.get $6 - local.get $12 + local.get $3 + local.get $2 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $3 i32.store offset=8 - local.get $6 + local.get $3 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 1 f64.ne br_if $folding-inner6 - local.get $6 + local.get $3 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 4 f64.ne br_if $folding-inner7 - local.get $6 + local.get $3 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 9 @@ -50071,17 +50157,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $0 + local.tee $4 i32.store - local.get $0 + local.get $4 i32.const 0 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $4 i32.const 1 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $4 i32.const 2 i32.const 6 call $~lib/typedarray/Int8Array#__set @@ -50089,28 +50175,28 @@ i32.const 4304 i32.store offset=4 block $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.0 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 - local.set $6 + local.set $2 loop $for-loop|028 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 - local.get $2 + local.get $3 i32.add i32.load8_s - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 4304 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50133,28 +50219,28 @@ i32.const 0 local.set $1 block $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.01 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 - local.set $6 + local.set $2 loop $for-loop|0329 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 - local.get $2 + local.get $3 i32.add i32.load8_s - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 4336 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50191,17 +50277,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $0 + local.tee $4 i32.store - local.get $0 + local.get $4 i32.const 0 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $4 i32.const 1 i32.const 4 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $4 i32.const 2 i32.const 6 call $~lib/typedarray/Uint8Array#__set @@ -50209,28 +50295,28 @@ i32.const 4368 i32.store offset=4 block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.0 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 - local.set $6 + local.set $2 loop $for-loop|031 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 - local.get $2 + local.get $3 i32.add i32.load8_u - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 4368 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50253,28 +50339,28 @@ i32.const 0 local.set $1 block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.01 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 - local.set $6 + local.set $2 loop $for-loop|0332 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 - local.get $2 + local.get $3 i32.add i32.load8_u - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 4400 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50311,17 +50397,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 + local.tee $4 i32.store - local.get $0 + local.get $4 i32.const 0 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $4 i32.const 1 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $4 i32.const 2 i32.const 6 call $~lib/typedarray/Uint8ClampedArray#__set @@ -50329,28 +50415,28 @@ i32.const 4432 i32.store offset=4 block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.033 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 - local.set $6 + local.set $2 loop $for-loop|034 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 - local.get $2 + local.get $3 i32.add i32.load8_u - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 4432 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50373,28 +50459,28 @@ i32.const 0 local.set $1 block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.0135 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 - local.set $6 + local.set $2 loop $for-loop|0336 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 - local.get $2 + local.get $3 i32.add i32.load8_u - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 4464 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50431,17 +50517,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $0 + local.tee $4 i32.store - local.get $0 + local.get $4 i32.const 0 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $4 i32.const 1 i32.const 4 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $4 i32.const 2 i32.const 6 call $~lib/typedarray/Int16Array#__set @@ -50449,32 +50535,32 @@ i32.const 4496 i32.store offset=4 block $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.0 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.set $6 + local.set $2 loop $for-loop|037 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $3 i32.add i32.load16_s - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 4496 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50497,32 +50583,32 @@ i32.const 0 local.set $1 block $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.01 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.set $6 + local.set $2 loop $for-loop|0338 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $3 i32.add i32.load16_s - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 4528 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50559,17 +50645,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $0 + local.tee $4 i32.store - local.get $0 + local.get $4 i32.const 0 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $4 i32.const 1 i32.const 4 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $4 i32.const 2 i32.const 6 call $~lib/typedarray/Uint16Array#__set @@ -50577,32 +50663,32 @@ i32.const 4560 i32.store offset=4 block $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.0 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.set $6 + local.set $2 loop $for-loop|040 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $3 i32.add i32.load16_u - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 4560 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50625,32 +50711,32 @@ i32.const 0 local.set $1 block $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.01 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.set $6 + local.set $2 loop $for-loop|0341 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $3 i32.add i32.load16_u - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 4592 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50687,17 +50773,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $0 + local.tee $4 i32.store - local.get $0 + local.get $4 i32.const 0 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $4 i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $4 i32.const 2 i32.const 6 call $~lib/typedarray/Int32Array#__set @@ -50705,32 +50791,32 @@ i32.const 4624 i32.store offset=4 block $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 + local.set $2 loop $for-loop|043 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 4624 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50753,32 +50839,32 @@ i32.const 0 local.set $1 block $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.01 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 + local.set $2 loop $for-loop|0344 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 4656 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50815,17 +50901,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $0 + local.tee $4 i32.store - local.get $0 + local.get $4 i32.const 0 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $4 i32.const 1 i32.const 4 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $4 i32.const 2 i32.const 6 call $~lib/typedarray/Uint32Array#__set @@ -50833,32 +50919,32 @@ i32.const 4688 i32.store offset=4 block $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 + local.set $2 loop $for-loop|045 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 4688 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50881,32 +50967,32 @@ i32.const 0 local.set $1 block $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.01 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 + local.set $2 loop $for-loop|0346 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 4720 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -50943,17 +51029,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 i32.const 0 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $3 i32.const 1 i64.const 4 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $3 i32.const 2 i64.const 6 call $~lib/typedarray/Int64Array#__set @@ -50961,18 +51047,18 @@ i32.const 4752 i32.store offset=4 block $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.0 (result i32) - local.get $0 + local.get $3 i32.load offset=4 local.set $2 - local.get $0 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $0 loop $for-loop|047 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 i32.const 3 @@ -50980,13 +51066,13 @@ local.get $2 i32.add i64.load - local.set $3 + local.set $10 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $3 + local.get $10 local.get $1 - local.get $0 + local.get $3 i32.const 4752 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -51009,18 +51095,18 @@ i32.const 0 local.set $1 block $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.01 (result i32) - local.get $0 + local.get $3 i32.load offset=4 local.set $2 - local.get $0 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $0 loop $for-loop|0348 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 i32.const 3 @@ -51028,13 +51114,13 @@ local.get $2 i32.add i64.load - local.set $3 + local.set $10 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $3 + local.get $10 local.get $1 - local.get $0 + local.get $3 i32.const 4784 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -51071,17 +51157,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 i32.const 0 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $3 i32.const 1 i64.const 4 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $3 i32.const 2 i64.const 6 call $~lib/typedarray/Uint64Array#__set @@ -51089,18 +51175,18 @@ i32.const 4816 i32.store offset=4 block $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.0 (result i32) - local.get $0 + local.get $3 i32.load offset=4 local.set $2 - local.get $0 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $0 loop $for-loop|050 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 i32.const 3 @@ -51108,13 +51194,13 @@ local.get $2 i32.add i64.load - local.set $3 + local.set $10 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $3 + local.get $10 local.get $1 - local.get $0 + local.get $3 i32.const 4816 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -51137,18 +51223,18 @@ i32.const 0 local.set $1 block $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.01 (result i32) - local.get $0 + local.get $3 i32.load offset=4 local.set $2 - local.get $0 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $0 loop $for-loop|0351 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 i32.const 3 @@ -51156,13 +51242,13 @@ local.get $2 i32.add i64.load - local.set $3 + local.set $10 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $3 + local.get $10 local.get $1 - local.get $0 + local.get $3 i32.const 4848 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -51199,17 +51285,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 i32.const 0 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $3 i32.const 1 f32.const 4 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $3 i32.const 2 f32.const 6 call $~lib/typedarray/Float32Array#__set @@ -51217,18 +51303,18 @@ i32.const 4880 i32.store offset=4 block $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) - local.get $0 + local.get $3 i32.load offset=4 local.set $2 - local.get $0 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 + local.set $0 loop $for-loop|053 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 i32.const 2 @@ -51236,13 +51322,13 @@ local.get $2 i32.add f32.load - local.set $4 + local.set $5 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $4 + local.get $5 local.get $1 - local.get $0 + local.get $3 i32.const 4880 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) @@ -51265,18 +51351,18 @@ i32.const 0 local.set $1 block $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.01 (result i32) - local.get $0 + local.get $3 i32.load offset=4 local.set $2 - local.get $0 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 + local.set $0 loop $for-loop|0354 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 i32.const 2 @@ -51284,13 +51370,13 @@ local.get $2 i32.add f32.load - local.set $4 + local.set $5 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $4 + local.get $5 local.get $1 - local.get $0 + local.get $3 i32.const 4912 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) @@ -51327,17 +51413,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 i32.const 0 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $3 i32.const 1 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $3 i32.const 2 f64.const 6 call $~lib/typedarray/Float64Array#__set @@ -51345,18 +51431,18 @@ i32.const 4944 i32.store offset=4 block $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) - local.get $0 + local.get $3 i32.load offset=4 local.set $2 - local.get $0 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $0 loop $for-loop|056 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 i32.const 3 @@ -51364,13 +51450,13 @@ local.get $2 i32.add f64.load - local.set $5 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $5 + local.get $7 local.get $1 - local.get $0 + local.get $3 i32.const 4944 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) @@ -51393,18 +51479,18 @@ i32.const 0 local.set $1 block $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.01 (result i32) - local.get $0 + local.get $3 i32.load offset=4 local.set $2 - local.get $0 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $0 loop $for-loop|0357 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 i32.const 3 @@ -51412,13 +51498,13 @@ local.get $2 i32.add f64.load - local.set $5 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $5 + local.get $7 local.get $1 - local.get $0 + local.get $3 i32.const 4976 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) @@ -51455,43 +51541,43 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer i32.const 5008 i32.store offset=4 - local.get $1 + local.get $4 i32.load offset=4 - local.set $2 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 - local.set $6 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0 loop $for-loop|059 local.get $0 - local.get $6 + local.get $2 i32.lt_s if local.get $0 - local.get $2 + local.get $3 i32.add i32.load8_s i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $4 i32.const 5008 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -51515,26 +51601,26 @@ i32.store offset=4 i32.const 0 local.set $0 - local.get $1 + local.get $4 i32.load offset=4 - local.set $2 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 - local.set $6 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.01 loop $for-loop|0360 local.get $0 - local.get $6 + local.get $2 i32.lt_s if local.get $0 - local.get $2 + local.get $3 i32.add i32.load8_s i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $4 i32.const 5040 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -51574,43 +51660,43 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 5072 i32.store offset=4 - local.get $1 + local.get $4 i32.load offset=4 - local.set $2 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 - local.set $6 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0 loop $for-loop|062 local.get $0 - local.get $6 + local.get $2 i32.lt_s if local.get $0 - local.get $2 + local.get $3 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $4 i32.const 5072 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -51634,26 +51720,26 @@ i32.store offset=4 i32.const 0 local.set $0 - local.get $1 + local.get $4 i32.load offset=4 - local.set $2 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 - local.set $6 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.01 loop $for-loop|0363 local.get $0 - local.get $6 + local.get $2 i32.lt_s if local.get $0 - local.get $2 + local.get $3 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $4 i32.const 5104 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -51693,43 +51779,43 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set global.get $~lib/memory/__stack_pointer i32.const 5136 i32.store offset=4 - local.get $1 + local.get $4 i32.load offset=4 - local.set $2 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 - local.set $6 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.064 loop $for-loop|065 local.get $0 - local.get $6 + local.get $2 i32.lt_s if local.get $0 - local.get $2 + local.get $3 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $4 i32.const 5136 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -51753,26 +51839,26 @@ i32.store offset=4 i32.const 0 local.set $0 - local.get $1 + local.get $4 i32.load offset=4 - local.set $2 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 - local.set $6 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0166 loop $for-loop|0367 local.get $0 - local.get $6 + local.get $2 i32.lt_s if local.get $0 - local.get $2 + local.get $3 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $4 i32.const 5168 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -51812,47 +51898,47 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 5200 i32.store offset=4 - local.get $1 + local.get $4 i32.load offset=4 - local.set $2 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.set $6 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int16Array,i16>|inlined.0 loop $for-loop|068 local.get $0 - local.get $6 + local.get $2 i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $2 + local.get $3 i32.add i32.load16_s i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $4 i32.const 5200 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -51876,30 +51962,30 @@ i32.store offset=4 i32.const 0 local.set $0 - local.get $1 + local.get $4 i32.load offset=4 - local.set $2 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.set $6 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int16Array,i16>|inlined.01 loop $for-loop|0369 local.get $0 - local.get $6 + local.get $2 i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $2 + local.get $3 i32.add i32.load16_s i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $4 i32.const 5232 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -51939,47 +52025,47 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set global.get $~lib/memory/__stack_pointer i32.const 5264 i32.store offset=4 - local.get $1 + local.get $4 i32.load offset=4 - local.set $2 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.set $6 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.0 loop $for-loop|071 local.get $0 - local.get $6 + local.get $2 i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $2 + local.get $3 i32.add i32.load16_u i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $4 i32.const 5264 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52003,30 +52089,30 @@ i32.store offset=4 i32.const 0 local.set $0 - local.get $1 + local.get $4 i32.load offset=4 - local.set $2 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.set $6 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.01 loop $for-loop|0372 local.get $0 - local.get $6 + local.get $2 i32.lt_s if local.get $0 i32.const 1 i32.shl - local.get $2 + local.get $3 i32.add i32.load16_u i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $4 i32.const 5296 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52066,47 +52152,47 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer i32.const 5328 i32.store offset=4 - local.get $1 + local.get $4 i32.load offset=4 - local.set $2 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int32Array,i32>|inlined.0 loop $for-loop|073 local.get $0 - local.get $6 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $4 i32.const 5328 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52130,30 +52216,30 @@ i32.store offset=4 i32.const 0 local.set $0 - local.get $1 + local.get $4 i32.load offset=4 - local.set $2 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int32Array,i32>|inlined.01 loop $for-loop|0374 local.get $0 - local.get $6 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $4 i32.const 5360 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52193,47 +52279,47 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $1 + local.tee $4 i32.store - local.get $1 + local.get $4 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $4 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $4 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer i32.const 5392 i32.store offset=4 - local.get $1 + local.get $4 i32.load offset=4 - local.set $2 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.0 loop $for-loop|075 local.get $0 - local.get $6 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $4 i32.const 5392 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52257,30 +52343,30 @@ i32.store offset=4 i32.const 0 local.set $0 - local.get $1 + local.get $4 i32.load offset=4 - local.set $2 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 + local.set $2 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.01 loop $for-loop|0376 local.get $0 - local.get $6 + local.get $2 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $4 i32.const 5424 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52320,35 +52406,35 @@ local.get $1 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $3 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $3 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 5456 i32.store offset=4 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $1 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int64Array,i64>|inlined.0 loop $for-loop|077 local.get $0 - local.get $6 + local.get $1 i32.lt_s if local.get $0 @@ -52360,7 +52446,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $3 i32.const 5456 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -52384,18 +52470,18 @@ i32.store offset=4 i32.const 0 local.set $0 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $1 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int64Array,i64>|inlined.01 loop $for-loop|0378 local.get $0 - local.get $6 + local.get $1 i32.lt_s if local.get $0 @@ -52407,7 +52493,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $3 i32.const 5488 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -52447,35 +52533,35 @@ local.get $1 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $3 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $3 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set global.get $~lib/memory/__stack_pointer i32.const 5520 i32.store offset=4 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $1 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.0 loop $for-loop|079 local.get $0 - local.get $6 + local.get $1 i32.lt_s if local.get $0 @@ -52487,7 +52573,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $3 i32.const 5520 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -52511,18 +52597,18 @@ i32.store offset=4 i32.const 0 local.set $0 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $1 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.01 loop $for-loop|0380 local.get $0 - local.get $6 + local.get $1 i32.lt_s if local.get $0 @@ -52534,7 +52620,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $3 i32.const 5552 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -52574,35 +52660,35 @@ local.get $1 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $3 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $3 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer i32.const 5584 i32.store offset=4 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 + local.set $1 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float32Array,f32>|inlined.0 loop $for-loop|081 local.get $0 - local.get $6 + local.get $1 i32.lt_s if local.get $0 @@ -52614,7 +52700,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $3 i32.const 5584 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) @@ -52638,18 +52724,18 @@ i32.store offset=4 i32.const 0 local.set $0 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 + local.set $1 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float32Array,f32>|inlined.01 loop $for-loop|0382 local.get $0 - local.get $6 + local.get $1 i32.lt_s if local.get $0 @@ -52661,7 +52747,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $3 i32.const 5616 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) @@ -52701,35 +52787,35 @@ local.get $1 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $3 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $3 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer i32.const 5648 i32.store offset=4 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $1 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float64Array,f64>|inlined.0 loop $for-loop|083 local.get $0 - local.get $6 + local.get $1 i32.lt_s if local.get $0 @@ -52741,7 +52827,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $3 i32.const 5648 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) @@ -52765,18 +52851,18 @@ i32.store offset=4 i32.const 0 local.set $0 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $1 block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float64Array,f64>|inlined.01 loop $for-loop|0384 local.get $0 - local.get $6 + local.get $1 i32.lt_s if local.get $0 @@ -52788,7 +52874,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $3 i32.const 5680 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) @@ -52826,27 +52912,27 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer i32.const 5712 i32.store offset=4 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 1 i32.sub @@ -52864,7 +52950,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $3 i32.const 5712 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52886,10 +52972,10 @@ global.get $~lib/memory/__stack_pointer i32.const 5744 i32.store offset=4 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 1 i32.sub @@ -52907,7 +52993,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $3 i32.const 5744 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -52945,27 +53031,27 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 5776 i32.store offset=4 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 1 i32.sub @@ -52983,7 +53069,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $3 i32.const 5776 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53005,10 +53091,10 @@ global.get $~lib/memory/__stack_pointer i32.const 5808 i32.store offset=4 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 1 i32.sub @@ -53026,7 +53112,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $3 i32.const 5808 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53064,27 +53150,27 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set global.get $~lib/memory/__stack_pointer i32.const 5840 i32.store offset=4 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 1 i32.sub @@ -53102,7 +53188,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $3 i32.const 5840 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53124,10 +53210,10 @@ global.get $~lib/memory/__stack_pointer i32.const 5872 i32.store offset=4 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 1 i32.sub @@ -53145,7 +53231,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $3 i32.const 5872 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53183,27 +53269,27 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 5904 i32.store offset=4 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u @@ -53225,7 +53311,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $3 i32.const 5904 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53247,10 +53333,10 @@ global.get $~lib/memory/__stack_pointer i32.const 5936 i32.store offset=4 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u @@ -53272,7 +53358,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $3 i32.const 5936 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53310,27 +53396,27 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set global.get $~lib/memory/__stack_pointer i32.const 5968 i32.store offset=4 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u @@ -53352,7 +53438,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $3 i32.const 5968 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53374,10 +53460,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6000 i32.store offset=4 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u @@ -53399,7 +53485,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $3 i32.const 6000 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53437,27 +53523,27 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer i32.const 6032 i32.store offset=4 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -53479,7 +53565,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $3 i32.const 6032 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53501,10 +53587,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6064 i32.store offset=4 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -53526,7 +53612,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $3 i32.const 6064 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53564,27 +53650,27 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $1 + local.tee $3 i32.store - local.get $1 + local.get $3 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $3 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $3 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer i32.const 6096 i32.store offset=4 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -53606,7 +53692,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $3 i32.const 6096 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53628,10 +53714,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6128 i32.store offset=4 - local.get $1 + local.get $3 i32.load offset=4 local.set $2 - local.get $1 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u @@ -53653,7 +53739,7 @@ i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $3 i32.const 6128 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -53691,27 +53777,27 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $2 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $2 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 6160 i32.store offset=4 - local.get $1 + local.get $2 i32.load offset=4 - local.set $2 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -53727,13 +53813,13 @@ local.get $0 i32.const 3 i32.shl - local.get $2 + local.get $1 i32.add i64.load i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $2 i32.const 6160 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -53755,10 +53841,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6192 i32.store offset=4 - local.get $1 + local.get $2 i32.load offset=4 - local.set $2 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -53774,13 +53860,13 @@ local.get $0 i32.const 3 i32.shl - local.get $2 + local.get $1 i32.add i64.load i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $2 i32.const 6192 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -53818,27 +53904,27 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $2 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $2 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set global.get $~lib/memory/__stack_pointer i32.const 6224 i32.store offset=4 - local.get $1 + local.get $2 i32.load offset=4 - local.set $2 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -53854,13 +53940,13 @@ local.get $0 i32.const 3 i32.shl - local.get $2 + local.get $1 i32.add i64.load i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $2 i32.const 6224 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -53882,10 +53968,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6256 i32.store offset=4 - local.get $1 + local.get $2 i32.load offset=4 - local.set $2 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -53901,13 +53987,13 @@ local.get $0 i32.const 3 i32.shl - local.get $2 + local.get $1 i32.add i64.load i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $2 i32.const 6256 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -53945,27 +54031,27 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $2 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $2 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer i32.const 6288 i32.store offset=4 - local.get $1 + local.get $2 i32.load offset=4 - local.set $2 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -53981,13 +54067,13 @@ local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add f32.load i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $2 i32.const 6288 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) @@ -54009,10 +54095,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6320 i32.store offset=4 - local.get $1 + local.get $2 i32.load offset=4 - local.set $2 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u @@ -54028,13 +54114,13 @@ local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add f32.load i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $2 i32.const 6320 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) @@ -54072,27 +54158,27 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $2 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $2 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer i32.const 6352 i32.store offset=4 - local.get $1 + local.get $2 i32.load offset=4 - local.set $2 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -54108,13 +54194,13 @@ local.get $0 i32.const 3 i32.shl - local.get $2 + local.get $1 i32.add f64.load i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $2 i32.const 6352 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) @@ -54136,10 +54222,10 @@ global.get $~lib/memory/__stack_pointer i32.const 6384 i32.store offset=4 - local.get $1 + local.get $2 i32.load offset=4 - local.set $2 - local.get $1 + local.set $1 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u @@ -54155,13 +54241,13 @@ local.get $0 i32.const 3 i32.shl - local.get $2 + local.get $1 i32.add f64.load i32.const 3 global.set $~argumentsLength local.get $0 - local.get $1 + local.get $2 i32.const 6384 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) @@ -54201,17 +54287,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $0 + local.tee $4 i32.store - local.get $0 + local.get $4 i32.const 0 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $4 i32.const 1 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $4 i32.const 2 i32.const 6 call $~lib/typedarray/Int8Array#__set @@ -54219,28 +54305,28 @@ i32.const 6416 i32.store offset=4 block $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.0 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 - local.set $6 + local.set $2 loop $for-loop|0109 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 - local.get $2 + local.get $3 i32.add i32.load8_s - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 6416 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54264,28 +54350,28 @@ i32.const 0 local.set $1 block $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.01 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 - local.set $6 + local.set $2 loop $for-loop|03110 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 - local.get $2 + local.get $3 i32.add i32.load8_s - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 6448 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54323,17 +54409,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $0 + local.tee $4 i32.store - local.get $0 + local.get $4 i32.const 0 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $4 i32.const 1 i32.const 4 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $4 i32.const 2 i32.const 6 call $~lib/typedarray/Uint8Array#__set @@ -54341,28 +54427,28 @@ i32.const 6480 i32.store offset=4 block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 - local.set $6 + local.set $2 loop $for-loop|0111 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 - local.get $2 + local.get $3 i32.add i32.load8_u - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 6480 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54386,28 +54472,28 @@ i32.const 0 local.set $1 block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.01 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 - local.set $6 + local.set $2 loop $for-loop|03112 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 - local.get $2 + local.get $3 i32.add i32.load8_u - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 6512 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54445,17 +54531,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 + local.tee $4 i32.store - local.get $0 + local.get $4 i32.const 0 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $4 i32.const 1 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $4 i32.const 2 i32.const 6 call $~lib/typedarray/Uint8ClampedArray#__set @@ -54463,28 +54549,28 @@ i32.const 6544 i32.store offset=4 block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0113 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 - local.set $6 + local.set $2 loop $for-loop|0114 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 - local.get $2 + local.get $3 i32.add i32.load8_u - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 6544 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54508,28 +54594,28 @@ i32.const 0 local.set $1 block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.01115 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 - local.set $6 + local.set $2 loop $for-loop|03116 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 - local.get $2 + local.get $3 i32.add i32.load8_u - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 6576 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54567,17 +54653,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $0 + local.tee $4 i32.store - local.get $0 + local.get $4 i32.const 0 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $4 i32.const 1 i32.const 4 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $4 i32.const 2 i32.const 6 call $~lib/typedarray/Int16Array#__set @@ -54585,32 +54671,32 @@ i32.const 6608 i32.store offset=4 block $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.0 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.set $6 + local.set $2 loop $for-loop|0117 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $3 i32.add i32.load16_s - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 6608 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54634,32 +54720,32 @@ i32.const 0 local.set $1 block $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.01 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.set $6 + local.set $2 loop $for-loop|03118 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $3 i32.add i32.load16_s - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 6640 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54697,17 +54783,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $0 + local.tee $4 i32.store - local.get $0 + local.get $4 i32.const 0 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $4 i32.const 1 i32.const 4 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $4 i32.const 2 i32.const 6 call $~lib/typedarray/Uint16Array#__set @@ -54715,32 +54801,32 @@ i32.const 6672 i32.store offset=4 block $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.0 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.set $6 + local.set $2 loop $for-loop|0119 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $3 i32.add i32.load16_u - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 6672 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54764,32 +54850,32 @@ i32.const 0 local.set $1 block $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.01 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 i32.const 1 i32.shr_u - local.set $6 + local.set $2 loop $for-loop|03120 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 i32.const 1 i32.shl - local.get $2 + local.get $3 i32.add i32.load16_u - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 6704 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54827,17 +54913,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $0 + local.tee $4 i32.store - local.get $0 + local.get $4 i32.const 0 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $4 i32.const 1 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $4 i32.const 2 i32.const 6 call $~lib/typedarray/Int32Array#__set @@ -54845,32 +54931,32 @@ i32.const 6736 i32.store offset=4 block $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 + local.set $2 loop $for-loop|0121 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 6736 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54894,32 +54980,32 @@ i32.const 0 local.set $1 block $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.01 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 + local.set $2 loop $for-loop|03122 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 6768 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -54957,17 +55043,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $0 + local.tee $4 i32.store - local.get $0 + local.get $4 i32.const 0 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $4 i32.const 1 i32.const 4 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $4 i32.const 2 i32.const 6 call $~lib/typedarray/Uint32Array#__set @@ -54975,32 +55061,32 @@ i32.const 6800 i32.store offset=4 block $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 + local.set $2 loop $for-loop|0123 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 6800 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55024,32 +55110,32 @@ i32.const 0 local.set $1 block $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.01 (result i32) - local.get $0 + local.get $4 i32.load offset=4 - local.set $2 - local.get $0 + local.set $3 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 + local.set $2 loop $for-loop|03124 local.get $1 - local.get $6 + local.get $2 i32.lt_s if local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $3 i32.add i32.load - local.set $7 + local.set $0 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $7 - local.get $1 local.get $0 + local.get $1 + local.get $4 i32.const 6832 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) @@ -55087,17 +55173,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 i32.const 0 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $3 i32.const 1 i64.const 4 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $3 i32.const 2 i64.const 6 call $~lib/typedarray/Int64Array#__set @@ -55105,18 +55191,18 @@ i32.const 6864 i32.store offset=4 block $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0 (result i32) - local.get $0 + local.get $3 i32.load offset=4 local.set $2 - local.get $0 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $0 loop $for-loop|0125 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 i32.const 3 @@ -55124,13 +55210,13 @@ local.get $2 i32.add i64.load - local.set $3 + local.set $10 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $3 + local.get $10 local.get $1 - local.get $0 + local.get $3 i32.const 6864 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -55154,18 +55240,18 @@ i32.const 0 local.set $1 block $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.01 (result i32) - local.get $0 + local.get $3 i32.load offset=4 local.set $2 - local.get $0 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $0 loop $for-loop|03126 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 i32.const 3 @@ -55173,13 +55259,13 @@ local.get $2 i32.add i64.load - local.set $3 + local.set $10 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $3 + local.get $10 local.get $1 - local.get $0 + local.get $3 i32.const 6896 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -55217,17 +55303,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 i32.const 0 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $3 i32.const 1 i64.const 4 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $3 i32.const 2 i64.const 6 call $~lib/typedarray/Uint64Array#__set @@ -55235,18 +55321,18 @@ i32.const 6928 i32.store offset=4 block $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0 (result i32) - local.get $0 + local.get $3 i32.load offset=4 local.set $2 - local.get $0 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $0 loop $for-loop|0127 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 i32.const 3 @@ -55254,13 +55340,13 @@ local.get $2 i32.add i64.load - local.set $3 + local.set $10 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $3 + local.get $10 local.get $1 - local.get $0 + local.get $3 i32.const 6928 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -55284,18 +55370,18 @@ i32.const 0 local.set $1 block $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.01 (result i32) - local.get $0 + local.get $3 i32.load offset=4 local.set $2 - local.get $0 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $0 loop $for-loop|03128 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 i32.const 3 @@ -55303,13 +55389,13 @@ local.get $2 i32.add i64.load - local.set $3 + local.set $10 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $3 + local.get $10 local.get $1 - local.get $0 + local.get $3 i32.const 6960 i32.load call_indirect $0 (type $i64_i32_i32_=>_i32) @@ -55347,17 +55433,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 i32.const 0 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $3 i32.const 1 f32.const 4 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $3 i32.const 2 f32.const 6 call $~lib/typedarray/Float32Array#__set @@ -55365,18 +55451,18 @@ i32.const 6992 i32.store offset=4 block $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) - local.get $0 + local.get $3 i32.load offset=4 local.set $2 - local.get $0 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 + local.set $0 loop $for-loop|0129 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 i32.const 2 @@ -55384,13 +55470,13 @@ local.get $2 i32.add f32.load - local.set $4 + local.set $5 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $4 + local.get $5 local.get $1 - local.get $0 + local.get $3 i32.const 6992 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) @@ -55414,18 +55500,18 @@ i32.const 0 local.set $1 block $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.01 (result i32) - local.get $0 + local.get $3 i32.load offset=4 local.set $2 - local.get $0 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 + local.set $0 loop $for-loop|03130 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 i32.const 2 @@ -55433,13 +55519,13 @@ local.get $2 i32.add f32.load - local.set $4 + local.set $5 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $4 + local.get $5 local.get $1 - local.get $0 + local.get $3 i32.const 7024 i32.load call_indirect $0 (type $f32_i32_i32_=>_i32) @@ -55477,17 +55563,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 i32.const 0 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $3 i32.const 1 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $3 i32.const 2 f64.const 6 call $~lib/typedarray/Float64Array#__set @@ -55495,18 +55581,18 @@ i32.const 7056 i32.store offset=4 block $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) - local.get $0 + local.get $3 i32.load offset=4 local.set $2 - local.get $0 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $0 loop $for-loop|0131 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 i32.const 3 @@ -55514,13 +55600,13 @@ local.get $2 i32.add f64.load - local.set $5 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $5 + local.get $7 local.get $1 - local.get $0 + local.get $3 i32.const 7056 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) @@ -55544,18 +55630,18 @@ i32.const 0 local.set $1 block $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.01 (result i32) - local.get $0 + local.get $3 i32.load offset=4 local.set $2 - local.get $0 + local.get $3 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $0 loop $for-loop|03132 + local.get $0 local.get $1 - local.get $6 - i32.lt_s + i32.gt_s if local.get $1 i32.const 3 @@ -55563,13 +55649,13 @@ local.get $2 i32.add f64.load - local.set $5 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $5 + local.get $7 local.get $1 - local.get $0 + local.get $3 i32.const 7088 i32.load call_indirect $0 (type $f64_i32_i32_=>_i32) @@ -55610,14 +55696,14 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $3 i32.const 0 i32.const 7152 i32.const 0 @@ -55627,7 +55713,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $3 i32.const 1 i32.const 7152 i32.const 1 @@ -55637,7 +55723,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $3 i32.const 2 i32.const 7152 i32.const 2 @@ -55648,33 +55734,33 @@ i32.const 7200 i32.store offset=8 i32.const 0 - local.set $2 - local.get $0 + local.set $9 + local.get $3 i32.load offset=4 - local.set $1 - local.get $0 + local.set $2 + local.get $3 i32.load offset=8 - local.set $6 + local.set $1 loop $for-loop|073133 - local.get $2 - local.get $6 - i32.lt_s + local.get $1 + local.get $9 + i32.gt_s if - local.get $1 local.get $2 + local.get $9 i32.add i32.load8_s i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $0 + local.get $9 + local.get $3 i32.const 7200 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $for-loop|073133 end end @@ -55706,14 +55792,14 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $3 i32.const 0 i32.const 7152 i32.const 0 @@ -55724,7 +55810,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $3 i32.const 1 i32.const 7152 i32.const 1 @@ -55735,7 +55821,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $3 i32.const 2 i32.const 7152 i32.const 2 @@ -55747,33 +55833,33 @@ i32.const 7232 i32.store offset=8 i32.const 0 - local.set $2 - local.get $0 + local.set $9 + local.get $3 i32.load offset=4 - local.set $1 - local.get $0 + local.set $2 + local.get $3 i32.load offset=8 - local.set $6 + local.set $1 loop $for-loop|076 - local.get $2 - local.get $6 - i32.lt_s + local.get $1 + local.get $9 + i32.gt_s if - local.get $1 local.get $2 + local.get $9 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $0 + local.get $9 + local.get $3 i32.const 7232 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $for-loop|076 end end @@ -55805,14 +55891,14 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $3 i32.const 0 i32.const 7152 i32.const 0 @@ -55823,7 +55909,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $3 i32.const 1 i32.const 7152 i32.const 1 @@ -55834,7 +55920,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $3 i32.const 2 i32.const 7152 i32.const 2 @@ -55846,33 +55932,33 @@ i32.const 7264 i32.store offset=8 i32.const 0 - local.set $2 - local.get $0 + local.set $9 + local.get $3 i32.load offset=4 - local.set $1 - local.get $0 + local.set $2 + local.get $3 i32.load offset=8 - local.set $6 + local.set $1 loop $for-loop|080 - local.get $2 - local.get $6 - i32.lt_s + local.get $1 + local.get $9 + i32.gt_s if - local.get $1 local.get $2 + local.get $9 i32.add i32.load8_u i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $0 + local.get $9 + local.get $3 i32.const 7264 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $for-loop|080 end end @@ -55904,14 +55990,14 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $3 i32.const 0 i32.const 7152 i32.const 0 @@ -55921,7 +56007,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $3 i32.const 1 i32.const 7152 i32.const 1 @@ -55931,7 +56017,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $3 i32.const 2 i32.const 7152 i32.const 2 @@ -55942,37 +56028,37 @@ i32.const 7296 i32.store offset=8 i32.const 0 - local.set $2 - local.get $0 + local.set $9 + local.get $3 i32.load offset=4 - local.set $1 - local.get $0 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.set $6 + local.set $1 loop $for-loop|083134 - local.get $2 - local.get $6 - i32.lt_s + local.get $1 + local.get $9 + i32.gt_s if - local.get $2 + local.get $9 i32.const 1 i32.shl - local.get $1 + local.get $2 i32.add i32.load16_s i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $0 + local.get $9 + local.get $3 i32.const 7296 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $for-loop|083134 end end @@ -56004,14 +56090,14 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $3 i32.const 0 i32.const 7152 i32.const 0 @@ -56022,7 +56108,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $3 i32.const 1 i32.const 7152 i32.const 1 @@ -56033,7 +56119,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $3 i32.const 2 i32.const 7152 i32.const 2 @@ -56045,37 +56131,37 @@ i32.const 7328 i32.store offset=8 i32.const 0 - local.set $2 - local.get $0 + local.set $9 + local.get $3 i32.load offset=4 - local.set $1 - local.get $0 + local.set $2 + local.get $3 i32.load offset=8 i32.const 1 i32.shr_u - local.set $6 + local.set $1 loop $for-loop|086 - local.get $2 - local.get $6 - i32.lt_s + local.get $1 + local.get $9 + i32.gt_s if - local.get $2 + local.get $9 i32.const 1 i32.shl - local.get $1 + local.get $2 i32.add i32.load16_u i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $0 + local.get $9 + local.get $3 i32.const 7328 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $for-loop|086 end end @@ -56107,14 +56193,14 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $3 i32.const 0 i32.const 7152 i32.const 0 @@ -56123,7 +56209,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $3 i32.const 1 i32.const 7152 i32.const 1 @@ -56132,7 +56218,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $3 i32.const 2 i32.const 7152 i32.const 2 @@ -56142,37 +56228,37 @@ i32.const 7360 i32.store offset=8 i32.const 0 - local.set $2 - local.get $0 + local.set $9 + local.get $3 i32.load offset=4 - local.set $1 - local.get $0 + local.set $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 + local.set $1 loop $for-loop|089 - local.get $2 - local.get $6 - i32.lt_s + local.get $1 + local.get $9 + i32.gt_s if - local.get $2 + local.get $9 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $0 + local.get $9 + local.get $3 i32.const 7360 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $for-loop|089 end end @@ -56204,14 +56290,14 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $0 + local.tee $3 i32.store - local.get $0 + local.get $3 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $3 i32.const 0 i32.const 7152 i32.const 0 @@ -56220,7 +56306,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $3 i32.const 1 i32.const 7152 i32.const 1 @@ -56229,7 +56315,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $3 i32.const 2 i32.const 7152 i32.const 2 @@ -56239,37 +56325,37 @@ i32.const 7392 i32.store offset=8 i32.const 0 - local.set $2 - local.get $0 + local.set $9 + local.get $3 i32.load offset=4 - local.set $1 - local.get $0 + local.set $2 + local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 + local.set $1 loop $for-loop|092 - local.get $2 - local.get $6 - i32.lt_s + local.get $1 + local.get $9 + i32.gt_s if - local.get $2 + local.get $9 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $2 - local.get $0 + local.get $9 + local.get $3 i32.const 7392 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $for-loop|092 end end @@ -56301,14 +56387,14 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $2 i32.const 0 i32.const 7152 i32.const 0 @@ -56318,7 +56404,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $2 i32.const 1 i32.const 7152 i32.const 1 @@ -56328,7 +56414,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $2 i32.const 2 i32.const 7152 i32.const 2 @@ -56339,21 +56425,21 @@ i32.const 7424 i32.store offset=8 i32.const 0 - local.set $2 - local.get $0 + local.set $9 + local.get $2 i32.load offset=4 local.set $1 - local.get $0 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $0 loop $for-loop|095135 - local.get $2 - local.get $6 - i32.lt_s + local.get $0 + local.get $9 + i32.gt_s if - local.get $2 + local.get $9 i32.const 3 i32.shl local.get $1 @@ -56361,15 +56447,15 @@ i64.load i32.const 3 global.set $~argumentsLength + local.get $9 local.get $2 - local.get $0 i32.const 7424 i32.load call_indirect $0 (type $i64_i32_i32_=>_none) - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $for-loop|095135 end end @@ -56401,14 +56487,14 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $2 i32.const 0 i32.const 7152 i32.const 0 @@ -56418,7 +56504,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $2 i32.const 1 i32.const 7152 i32.const 1 @@ -56428,7 +56514,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $2 i32.const 2 i32.const 7152 i32.const 2 @@ -56439,21 +56525,21 @@ i32.const 7456 i32.store offset=8 i32.const 0 - local.set $2 - local.get $0 + local.set $9 + local.get $2 i32.load offset=4 local.set $1 - local.get $0 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $0 loop $for-loop|098 - local.get $2 - local.get $6 - i32.lt_s + local.get $0 + local.get $9 + i32.gt_s if - local.get $2 + local.get $9 i32.const 3 i32.shl local.get $1 @@ -56461,15 +56547,15 @@ i64.load i32.const 3 global.set $~argumentsLength + local.get $9 local.get $2 - local.get $0 i32.const 7456 i32.load call_indirect $0 (type $i64_i32_i32_=>_none) - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $for-loop|098 end end @@ -56501,14 +56587,14 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $2 i32.const 0 i32.const 7152 i32.const 0 @@ -56518,7 +56604,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $2 i32.const 1 i32.const 7152 i32.const 1 @@ -56528,7 +56614,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $2 i32.const 2 i32.const 7152 i32.const 2 @@ -56539,21 +56625,21 @@ i32.const 7488 i32.store offset=8 i32.const 0 - local.set $2 - local.get $0 + local.set $9 + local.get $2 i32.load offset=4 local.set $1 - local.get $0 + local.get $2 i32.load offset=8 i32.const 2 i32.shr_u - local.set $6 + local.set $0 loop $for-loop|0101136 - local.get $2 - local.get $6 - i32.lt_s + local.get $0 + local.get $9 + i32.gt_s if - local.get $2 + local.get $9 i32.const 2 i32.shl local.get $1 @@ -56561,15 +56647,15 @@ f32.load i32.const 3 global.set $~argumentsLength + local.get $9 local.get $2 - local.get $0 i32.const 7488 i32.load call_indirect $0 (type $f32_i32_i32_=>_none) - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $for-loop|0101136 end end @@ -56601,14 +56687,14 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 global.set $std/typedarray/forEachSelf global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $2 i32.const 0 i32.const 7152 i32.const 0 @@ -56618,7 +56704,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $2 i32.const 1 i32.const 7152 i32.const 1 @@ -56628,7 +56714,7 @@ global.get $~lib/memory/__stack_pointer i32.const 7152 i32.store offset=4 - local.get $0 + local.get $2 i32.const 2 i32.const 7152 i32.const 2 @@ -56639,21 +56725,21 @@ i32.const 7520 i32.store offset=8 i32.const 0 - local.set $2 - local.get $0 + local.set $9 + local.get $2 i32.load offset=4 local.set $1 - local.get $0 + local.get $2 i32.load offset=8 i32.const 3 i32.shr_u - local.set $6 + local.set $0 loop $for-loop|0104 - local.get $2 - local.get $6 - i32.lt_s + local.get $0 + local.get $9 + i32.gt_s if - local.get $2 + local.get $9 i32.const 3 i32.shl local.get $1 @@ -56661,15 +56747,15 @@ f64.load i32.const 3 global.set $~argumentsLength + local.get $9 local.get $2 - local.get $0 i32.const 7520 i32.load call_indirect $0 (type $f64_i32_i32_=>_none) - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $for-loop|0104 end end @@ -56707,19 +56793,19 @@ local.get $0 i32.const 7628 i32.load - local.tee $0 + local.tee $3 call $~lib/typedarray/Int8Array#constructor local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 call $~lib/typedarray/Int8Array#constructor - local.tee $6 + local.tee $0 i32.store offset=8 loop $for-loop|0106 - local.get $0 local.get $1 - i32.gt_s + local.get $3 + i32.lt_s if local.get $2 local.get $1 @@ -56728,7 +56814,7 @@ call $~lib/array/Array#__get i32.extend8_s call $~lib/typedarray/Int8Array#__set - local.get $6 + local.get $0 local.get $1 i32.const 7616 local.get $1 @@ -56748,15 +56834,15 @@ i32.const 0 local.set $1 loop $for-loop|1 - local.get $0 local.get $1 - i32.gt_s + local.get $3 + i32.lt_s if local.get $2 local.get $1 call $~lib/typedarray/Int8Array#__get i32.const 7616 - local.get $0 + local.get $3 i32.const 1 i32.sub local.get $1 @@ -56773,15 +56859,15 @@ end end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.const 4 i32.const 8 call $~lib/typedarray/Int8Array#subarray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int8Array#reverse local.tee $0 i32.store offset=16 @@ -56839,19 +56925,19 @@ local.get $0 i32.const 7628 i32.load - local.tee $0 + local.tee $3 call $~lib/typedarray/Uint8Array#constructor local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 call $~lib/typedarray/Uint8Array#constructor - local.tee $6 + local.tee $0 i32.store offset=8 loop $for-loop|020137 - local.get $0 local.get $1 - i32.gt_s + local.get $3 + i32.lt_s if local.get $2 local.get $1 @@ -56861,7 +56947,7 @@ i32.const 255 i32.and call $~lib/typedarray/Uint8Array#__set - local.get $6 + local.get $0 local.get $1 i32.const 7616 local.get $1 @@ -56882,15 +56968,15 @@ i32.const 0 local.set $1 loop $for-loop|121 - local.get $0 local.get $1 - i32.gt_s + local.get $3 + i32.lt_s if local.get $2 local.get $1 call $~lib/typedarray/Uint8Array#__get i32.const 7616 - local.get $0 + local.get $3 i32.const 1 i32.sub local.get $1 @@ -56908,14 +56994,14 @@ end end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.const 8 call $~lib/typedarray/Uint8Array#subarray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int8Array#reverse local.tee $0 i32.store offset=16 @@ -56973,19 +57059,19 @@ local.get $0 i32.const 7628 i32.load - local.tee $0 + local.tee $3 call $~lib/typedarray/Uint8ClampedArray#constructor local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $6 + local.tee $0 i32.store offset=8 loop $for-loop|024108 - local.get $0 local.get $1 - i32.gt_s + local.get $3 + i32.lt_s if local.get $2 local.get $1 @@ -56995,7 +57081,7 @@ i32.const 255 i32.and call $~lib/typedarray/Uint8ClampedArray#__set - local.get $6 + local.get $0 local.get $1 i32.const 7616 local.get $1 @@ -57016,15 +57102,15 @@ i32.const 0 local.set $1 loop $for-loop|125 - local.get $0 local.get $1 - i32.gt_s + local.get $3 + i32.lt_s if local.get $2 local.get $1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 7616 - local.get $0 + local.get $3 i32.const 1 i32.sub local.get $1 @@ -57042,14 +57128,14 @@ end end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.const 8 call $~lib/typedarray/Uint8ClampedArray#subarray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int8Array#reverse local.tee $0 i32.store offset=16 @@ -57107,19 +57193,19 @@ local.get $0 i32.const 7628 i32.load - local.tee $0 + local.tee $3 call $~lib/typedarray/Int16Array#constructor local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 call $~lib/typedarray/Int16Array#constructor - local.tee $6 + local.tee $0 i32.store offset=8 loop $for-loop|028138 - local.get $0 local.get $1 - i32.gt_s + local.get $3 + i32.lt_s if local.get $2 local.get $1 @@ -57128,7 +57214,7 @@ call $~lib/array/Array#__get i32.extend16_s call $~lib/typedarray/Int16Array#__set - local.get $6 + local.get $0 local.get $1 i32.const 7616 local.get $1 @@ -57148,15 +57234,15 @@ i32.const 0 local.set $1 loop $for-loop|129 - local.get $0 local.get $1 - i32.gt_s + local.get $3 + i32.lt_s if local.get $2 local.get $1 call $~lib/typedarray/Int16Array#__get i32.const 7616 - local.get $0 + local.get $3 i32.const 1 i32.sub local.get $1 @@ -57173,14 +57259,14 @@ end end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.const 8 call $~lib/typedarray/Int16Array#subarray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int16Array#reverse local.tee $0 i32.store offset=16 @@ -57238,19 +57324,19 @@ local.get $0 i32.const 7628 i32.load - local.tee $0 + local.tee $3 call $~lib/typedarray/Uint16Array#constructor local.tee $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 call $~lib/typedarray/Uint16Array#constructor - local.tee $6 + local.tee $0 i32.store offset=8 loop $for-loop|032 - local.get $0 local.get $1 - i32.gt_s + local.get $3 + i32.lt_s if local.get $2 local.get $1 @@ -57260,7 +57346,7 @@ i32.const 65535 i32.and call $~lib/typedarray/Uint16Array#__set - local.get $6 + local.get $0 local.get $1 i32.const 7616 local.get $1 @@ -57281,15 +57367,15 @@ i32.const 0 local.set $1 loop $for-loop|133 - local.get $0 local.get $1 - i32.gt_s + local.get $3 + i32.lt_s if local.get $2 local.get $1 call $~lib/typedarray/Uint16Array#__get i32.const 7616 - local.get $0 + local.get $3 i32.const 1 i32.sub local.get $1 @@ -57307,14 +57393,14 @@ end end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.const 8 call $~lib/typedarray/Uint16Array#subarray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=12 - local.get $1 + local.get $0 call $~lib/typedarray/Int16Array#reverse local.tee $0 i32.store offset=16 @@ -57372,27 +57458,27 @@ local.get $0 i32.const 7628 i32.load - local.tee $0 + local.tee $11 call $~lib/typedarray/Int32Array#constructor - local.tee $2 + local.tee $8 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $11 call $~lib/typedarray/Int32Array#constructor - local.tee $6 + local.tee $9 i32.store offset=8 loop $for-loop|036 - local.get $0 local.get $1 - i32.gt_s + local.get $11 + i32.lt_s if - local.get $2 + local.get $8 local.get $1 i32.const 7616 local.get $1 call $~lib/array/Array#__get call $~lib/typedarray/Int32Array#__set - local.get $6 + local.get $9 local.get $1 i32.const 7616 local.get $1 @@ -57407,51 +57493,51 @@ end i32.const 0 local.set $1 - local.get $2 + local.get $8 i32.load offset=4 - local.set $7 - local.get $2 + local.set $6 + local.get $8 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $8 + local.tee $0 i32.const 1 i32.gt_u if - local.get $8 + local.get $0 i32.const 1 i32.shr_u - local.set $12 - local.get $8 + local.set $4 + local.get $0 i32.const 1 i32.sub - local.set $8 + local.set $3 loop $while-continue|0 local.get $1 - local.get $12 + local.get $4 i32.lt_u if local.get $1 i32.const 2 i32.shl - local.get $7 + local.get $6 i32.add - local.tee $13 + local.tee $0 i32.load - local.set $14 - local.get $13 - local.get $8 + local.set $2 + local.get $0 + local.get $3 local.get $1 i32.sub i32.const 2 i32.shl - local.get $7 + local.get $6 i32.add - local.tee $13 + local.tee $0 i32.load i32.store - local.get $13 - local.get $14 + local.get $0 + local.get $2 i32.store local.get $1 i32.const 1 @@ -57464,15 +57550,15 @@ i32.const 0 local.set $1 loop $for-loop|137 - local.get $0 local.get $1 - i32.gt_s + local.get $11 + i32.lt_s if - local.get $2 + local.get $8 local.get $1 call $~lib/typedarray/Int32Array#__get i32.const 7616 - local.get $0 + local.get $11 i32.const 1 i32.sub local.get $1 @@ -57488,91 +57574,91 @@ end end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $9 i32.const 4 i32.const 8 call $~lib/typedarray/Int32Array#subarray - local.set $1 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $6 i32.store offset=12 i32.const 0 - local.set $2 - local.get $1 + local.set $9 + local.get $6 i32.load offset=4 - local.set $6 - local.get $1 + local.set $4 + local.get $6 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $7 + local.tee $0 i32.const 1 i32.gt_u if - local.get $7 + local.get $0 i32.const 1 i32.shr_u - local.set $8 - local.get $7 + local.set $3 + local.get $0 i32.const 1 i32.sub - local.set $7 + local.set $2 loop $while-continue|0140 - local.get $2 - local.get $8 - i32.lt_u + local.get $3 + local.get $9 + i32.gt_u if - local.get $2 + local.get $9 i32.const 2 i32.shl - local.get $6 + local.get $4 i32.add - local.tee $12 + local.tee $0 i32.load - local.set $13 - local.get $12 - local.get $7 + local.set $1 + local.get $0 local.get $2 + local.get $9 i32.sub i32.const 2 i32.shl - local.get $6 + local.get $4 i32.add - local.tee $12 + local.tee $0 i32.load i32.store - local.get $12 - local.get $13 + local.get $0 + local.get $1 i32.store - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $while-continue|0140 end end end - local.get $1 + local.get $6 i32.store offset=16 - local.get $1 + local.get $6 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 8 i32.ne br_if $folding-inner19 - local.get $1 + local.get $6 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 7 i32.ne br_if $folding-inner20 - local.get $1 + local.get $6 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 6 i32.ne br_if $folding-inner21 - local.get $1 + local.get $6 i32.const 3 call $~lib/typedarray/Int32Array#__get i32.const 5 @@ -57608,27 +57694,27 @@ local.get $0 i32.const 7628 i32.load - local.tee $0 + local.tee $11 call $~lib/typedarray/Uint32Array#constructor - local.tee $2 + local.tee $8 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $11 call $~lib/typedarray/Uint32Array#constructor - local.tee $6 + local.tee $9 i32.store offset=8 loop $for-loop|040141 - local.get $0 local.get $1 - i32.gt_s + local.get $11 + i32.lt_s if - local.get $2 + local.get $8 local.get $1 i32.const 7616 local.get $1 call $~lib/array/Array#__get call $~lib/typedarray/Uint32Array#__set - local.get $6 + local.get $9 local.get $1 i32.const 7616 local.get $1 @@ -57643,51 +57729,51 @@ end i32.const 0 local.set $1 - local.get $2 + local.get $8 i32.load offset=4 - local.set $7 - local.get $2 + local.set $6 + local.get $8 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $8 + local.tee $0 i32.const 1 i32.gt_u if - local.get $8 + local.get $0 i32.const 1 i32.shr_u - local.set $12 - local.get $8 + local.set $4 + local.get $0 i32.const 1 i32.sub - local.set $8 + local.set $3 loop $while-continue|0143 local.get $1 - local.get $12 + local.get $4 i32.lt_u if local.get $1 i32.const 2 i32.shl - local.get $7 + local.get $6 i32.add - local.tee $13 + local.tee $0 i32.load - local.set $14 - local.get $13 - local.get $8 + local.set $2 + local.get $0 + local.get $3 local.get $1 i32.sub i32.const 2 i32.shl - local.get $7 + local.get $6 i32.add - local.tee $13 + local.tee $0 i32.load i32.store - local.get $13 - local.get $14 + local.get $0 + local.get $2 i32.store local.get $1 i32.const 1 @@ -57700,15 +57786,15 @@ i32.const 0 local.set $1 loop $for-loop|141 - local.get $0 local.get $1 - i32.gt_s + local.get $11 + i32.lt_s if - local.get $2 + local.get $8 local.get $1 call $~lib/typedarray/Uint32Array#__get i32.const 7616 - local.get $0 + local.get $11 i32.const 1 i32.sub local.get $1 @@ -57724,90 +57810,90 @@ end end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $9 i32.const 8 call $~lib/typedarray/Uint32Array#subarray - local.set $1 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $6 i32.store offset=12 i32.const 0 - local.set $2 - local.get $1 + local.set $9 + local.get $6 i32.load offset=4 - local.set $6 - local.get $1 + local.set $4 + local.get $6 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $7 + local.tee $0 i32.const 1 i32.gt_u if - local.get $7 + local.get $0 i32.const 1 i32.shr_u - local.set $8 - local.get $7 + local.set $3 + local.get $0 i32.const 1 i32.sub - local.set $7 + local.set $2 loop $while-continue|0145 - local.get $2 - local.get $8 - i32.lt_u + local.get $3 + local.get $9 + i32.gt_u if - local.get $2 + local.get $9 i32.const 2 i32.shl - local.get $6 + local.get $4 i32.add - local.tee $12 + local.tee $0 i32.load - local.set $13 - local.get $12 - local.get $7 + local.set $1 + local.get $0 local.get $2 + local.get $9 i32.sub i32.const 2 i32.shl - local.get $6 + local.get $4 i32.add - local.tee $12 + local.tee $0 i32.load i32.store - local.get $12 - local.get $13 + local.get $0 + local.get $1 i32.store - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $while-continue|0145 end end end - local.get $1 + local.get $6 i32.store offset=16 - local.get $1 + local.get $6 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 8 i32.ne br_if $folding-inner19 - local.get $1 + local.get $6 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 7 i32.ne br_if $folding-inner20 - local.get $1 + local.get $6 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 6 i32.ne br_if $folding-inner21 - local.get $1 + local.get $6 i32.const 3 call $~lib/typedarray/Uint32Array#__get i32.const 5 @@ -57843,28 +57929,28 @@ local.get $0 i32.const 7628 i32.load - local.tee $0 + local.tee $9 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $6 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $9 call $~lib/typedarray/Int64Array#constructor - local.tee $6 + local.tee $8 i32.store offset=8 loop $for-loop|044 - local.get $0 local.get $1 - i32.gt_s + local.get $9 + i32.lt_s if - local.get $2 + local.get $6 local.get $1 i32.const 7616 local.get $1 call $~lib/array/Array#__get i64.extend_i32_s call $~lib/typedarray/Int64Array#__set - local.get $6 + local.get $8 local.get $1 i32.const 7616 local.get $1 @@ -57880,51 +57966,51 @@ end i32.const 0 local.set $1 - local.get $2 + local.get $6 i32.load offset=4 - local.set $7 - local.get $2 + local.set $4 + local.get $6 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $8 + local.tee $0 i32.const 1 i32.gt_u if - local.get $8 + local.get $0 i32.const 1 i32.shr_u - local.set $12 - local.get $8 + local.set $3 + local.get $0 i32.const 1 i32.sub - local.set $8 + local.set $2 loop $while-continue|0146 local.get $1 - local.get $12 + local.get $3 i32.lt_u if local.get $1 i32.const 3 i32.shl - local.get $7 + local.get $4 i32.add - local.tee $13 + local.tee $0 i64.load - local.set $3 - local.get $13 - local.get $8 + local.set $10 + local.get $0 + local.get $2 local.get $1 i32.sub i32.const 3 i32.shl - local.get $7 + local.get $4 i32.add - local.tee $13 + local.tee $0 i64.load i64.store - local.get $13 - local.get $3 + local.get $0 + local.get $10 i64.store local.get $1 i32.const 1 @@ -57937,15 +58023,15 @@ i32.const 0 local.set $1 loop $for-loop|145 - local.get $0 local.get $1 - i32.gt_s + local.get $9 + i32.lt_s if - local.get $2 + local.get $6 local.get $1 call $~lib/typedarray/Int64Array#__get i32.const 7616 - local.get $0 + local.get $9 i32.const 1 i32.sub local.get $1 @@ -57962,90 +58048,90 @@ end end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $8 i32.const 8 call $~lib/typedarray/Int64Array#subarray - local.set $1 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $4 i32.store offset=12 i32.const 0 - local.set $2 - local.get $1 + local.set $9 + local.get $4 i32.load offset=4 - local.set $6 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $7 + local.tee $0 i32.const 1 i32.gt_u if - local.get $7 + local.get $0 i32.const 1 i32.shr_u - local.set $8 - local.get $7 + local.set $2 + local.get $0 i32.const 1 i32.sub - local.set $7 + local.set $1 loop $while-continue|0148 local.get $2 - local.get $8 - i32.lt_u + local.get $9 + i32.gt_u if - local.get $2 + local.get $9 i32.const 3 i32.shl - local.get $6 + local.get $3 i32.add - local.tee $12 + local.tee $0 i64.load - local.set $3 - local.get $12 - local.get $7 - local.get $2 + local.set $10 + local.get $0 + local.get $1 + local.get $9 i32.sub i32.const 3 i32.shl - local.get $6 + local.get $3 i32.add - local.tee $12 + local.tee $0 i64.load i64.store - local.get $12 - local.get $3 + local.get $0 + local.get $10 i64.store - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $while-continue|0148 end end end - local.get $1 + local.get $4 i32.store offset=16 - local.get $1 + local.get $4 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 8 i64.ne br_if $folding-inner19 - local.get $1 + local.get $4 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 7 i64.ne br_if $folding-inner20 - local.get $1 + local.get $4 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 6 i64.ne br_if $folding-inner21 - local.get $1 + local.get $4 i32.const 3 call $~lib/typedarray/Int64Array#__get i64.const 5 @@ -58081,28 +58167,28 @@ local.get $0 i32.const 7628 i32.load - local.tee $0 + local.tee $9 call $~lib/typedarray/Uint64Array#constructor - local.tee $2 + local.tee $6 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $9 call $~lib/typedarray/Uint64Array#constructor - local.tee $6 + local.tee $8 i32.store offset=8 loop $for-loop|048 - local.get $0 local.get $1 - i32.gt_s + local.get $9 + i32.lt_s if - local.get $2 + local.get $6 local.get $1 i32.const 7616 local.get $1 call $~lib/array/Array#__get i64.extend_i32_s call $~lib/typedarray/Uint64Array#__set - local.get $6 + local.get $8 local.get $1 i32.const 7616 local.get $1 @@ -58118,51 +58204,51 @@ end i32.const 0 local.set $1 - local.get $2 + local.get $6 i32.load offset=4 - local.set $7 - local.get $2 + local.set $4 + local.get $6 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $8 + local.tee $0 i32.const 1 i32.gt_u if - local.get $8 + local.get $0 i32.const 1 i32.shr_u - local.set $12 - local.get $8 + local.set $3 + local.get $0 i32.const 1 i32.sub - local.set $8 + local.set $2 loop $while-continue|0150 local.get $1 - local.get $12 + local.get $3 i32.lt_u if local.get $1 i32.const 3 i32.shl - local.get $7 + local.get $4 i32.add - local.tee $13 + local.tee $0 i64.load - local.set $3 - local.get $13 - local.get $8 + local.set $10 + local.get $0 + local.get $2 local.get $1 i32.sub i32.const 3 i32.shl - local.get $7 + local.get $4 i32.add - local.tee $13 + local.tee $0 i64.load i64.store - local.get $13 - local.get $3 + local.get $0 + local.get $10 i64.store local.get $1 i32.const 1 @@ -58175,15 +58261,15 @@ i32.const 0 local.set $1 loop $for-loop|149 - local.get $0 local.get $1 - i32.gt_s + local.get $9 + i32.lt_s if - local.get $2 + local.get $6 local.get $1 call $~lib/typedarray/Uint64Array#__get i32.const 7616 - local.get $0 + local.get $9 i32.const 1 i32.sub local.get $1 @@ -58200,90 +58286,90 @@ end end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $8 i32.const 8 call $~lib/typedarray/Uint64Array#subarray - local.set $1 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $4 i32.store offset=12 i32.const 0 - local.set $2 - local.get $1 + local.set $9 + local.get $4 i32.load offset=4 - local.set $6 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $7 + local.tee $0 i32.const 1 i32.gt_u if - local.get $7 + local.get $0 i32.const 1 i32.shr_u - local.set $8 - local.get $7 + local.set $2 + local.get $0 i32.const 1 i32.sub - local.set $7 + local.set $1 loop $while-continue|0152 local.get $2 - local.get $8 - i32.lt_u + local.get $9 + i32.gt_u if - local.get $2 + local.get $9 i32.const 3 i32.shl - local.get $6 + local.get $3 i32.add - local.tee $12 + local.tee $0 i64.load - local.set $3 - local.get $12 - local.get $7 - local.get $2 + local.set $10 + local.get $0 + local.get $1 + local.get $9 i32.sub i32.const 3 i32.shl - local.get $6 + local.get $3 i32.add - local.tee $12 + local.tee $0 i64.load i64.store - local.get $12 - local.get $3 + local.get $0 + local.get $10 i64.store - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $while-continue|0152 end end end - local.get $1 + local.get $4 i32.store offset=16 - local.get $1 + local.get $4 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 8 i64.ne br_if $folding-inner19 - local.get $1 + local.get $4 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 7 i64.ne br_if $folding-inner20 - local.get $1 + local.get $4 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 6 i64.ne br_if $folding-inner21 - local.get $1 + local.get $4 i32.const 3 call $~lib/typedarray/Uint64Array#__get i64.const 5 @@ -58319,28 +58405,28 @@ local.get $0 i32.const 7628 i32.load - local.tee $0 + local.tee $9 call $~lib/typedarray/Float32Array#constructor - local.tee $2 + local.tee $6 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $9 call $~lib/typedarray/Float32Array#constructor - local.tee $6 + local.tee $8 i32.store offset=8 loop $for-loop|052110 - local.get $0 local.get $1 - i32.gt_s + local.get $9 + i32.lt_s if - local.get $2 + local.get $6 local.get $1 i32.const 7616 local.get $1 call $~lib/array/Array#__get f32.convert_i32_s call $~lib/typedarray/Float32Array#__set - local.get $6 + local.get $8 local.get $1 i32.const 7616 local.get $1 @@ -58356,51 +58442,51 @@ end i32.const 0 local.set $1 - local.get $2 + local.get $6 i32.load offset=4 - local.set $7 - local.get $2 + local.set $4 + local.get $6 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $8 + local.tee $0 i32.const 1 i32.gt_u if - local.get $8 + local.get $0 i32.const 1 i32.shr_u - local.set $12 - local.get $8 + local.set $3 + local.get $0 i32.const 1 i32.sub - local.set $8 + local.set $2 loop $while-continue|0153 local.get $1 - local.get $12 + local.get $3 i32.lt_u if local.get $1 i32.const 2 i32.shl - local.get $7 + local.get $4 i32.add - local.tee $13 + local.tee $0 f32.load - local.set $4 - local.get $13 - local.get $8 + local.set $5 + local.get $0 + local.get $2 local.get $1 i32.sub i32.const 2 i32.shl - local.get $7 + local.get $4 i32.add - local.tee $13 + local.tee $0 f32.load f32.store - local.get $13 - local.get $4 + local.get $0 + local.get $5 f32.store local.get $1 i32.const 1 @@ -58413,15 +58499,15 @@ i32.const 0 local.set $1 loop $for-loop|153 - local.get $0 local.get $1 - i32.gt_s + local.get $9 + i32.lt_s if - local.get $2 + local.get $6 local.get $1 call $~lib/typedarray/Float32Array#__get i32.const 7616 - local.get $0 + local.get $9 i32.const 1 i32.sub local.get $1 @@ -58438,90 +58524,90 @@ end end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $8 i32.const 8 call $~lib/typedarray/Float32Array#subarray - local.set $1 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $4 i32.store offset=12 i32.const 0 - local.set $2 - local.get $1 + local.set $9 + local.get $4 i32.load offset=4 - local.set $6 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $7 + local.tee $0 i32.const 1 i32.gt_u if - local.get $7 + local.get $0 i32.const 1 i32.shr_u - local.set $8 - local.get $7 + local.set $2 + local.get $0 i32.const 1 i32.sub - local.set $7 + local.set $1 loop $while-continue|0155 local.get $2 - local.get $8 - i32.lt_u + local.get $9 + i32.gt_u if - local.get $2 + local.get $9 i32.const 2 i32.shl - local.get $6 + local.get $3 i32.add - local.tee $12 + local.tee $0 f32.load - local.set $4 - local.get $12 - local.get $7 - local.get $2 + local.set $5 + local.get $0 + local.get $1 + local.get $9 i32.sub i32.const 2 i32.shl - local.get $6 + local.get $3 i32.add - local.tee $12 + local.tee $0 f32.load f32.store - local.get $12 - local.get $4 + local.get $0 + local.get $5 f32.store - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $while-continue|0155 end end end - local.get $1 + local.get $4 i32.store offset=16 - local.get $1 + local.get $4 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 8 f32.ne br_if $folding-inner19 - local.get $1 + local.get $4 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 7 f32.ne br_if $folding-inner20 - local.get $1 + local.get $4 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 6 f32.ne br_if $folding-inner21 - local.get $1 + local.get $4 i32.const 3 call $~lib/typedarray/Float32Array#__get f32.const 5 @@ -58557,28 +58643,28 @@ local.get $0 i32.const 7628 i32.load - local.tee $0 + local.tee $9 call $~lib/typedarray/Float64Array#constructor - local.tee $2 + local.tee $6 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $9 call $~lib/typedarray/Float64Array#constructor - local.tee $6 + local.tee $8 i32.store offset=8 loop $for-loop|056156 - local.get $0 local.get $1 - i32.gt_s + local.get $9 + i32.lt_s if - local.get $2 + local.get $6 local.get $1 i32.const 7616 local.get $1 call $~lib/array/Array#__get f64.convert_i32_s call $~lib/typedarray/Float64Array#__set - local.get $6 + local.get $8 local.get $1 i32.const 7616 local.get $1 @@ -58594,51 +58680,51 @@ end i32.const 0 local.set $1 - local.get $2 + local.get $6 i32.load offset=4 - local.set $7 - local.get $2 + local.set $4 + local.get $6 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $8 + local.tee $0 i32.const 1 i32.gt_u if - local.get $8 + local.get $0 i32.const 1 i32.shr_u - local.set $12 - local.get $8 + local.set $3 + local.get $0 i32.const 1 i32.sub - local.set $8 + local.set $2 loop $while-continue|0157 local.get $1 - local.get $12 + local.get $3 i32.lt_u if local.get $1 i32.const 3 i32.shl - local.get $7 + local.get $4 i32.add - local.tee $13 + local.tee $0 f64.load - local.set $5 - local.get $13 - local.get $8 + local.set $7 + local.get $0 + local.get $2 local.get $1 i32.sub i32.const 3 i32.shl - local.get $7 + local.get $4 i32.add - local.tee $13 + local.tee $0 f64.load f64.store - local.get $13 - local.get $5 + local.get $0 + local.get $7 f64.store local.get $1 i32.const 1 @@ -58651,15 +58737,15 @@ i32.const 0 local.set $1 loop $for-loop|157 - local.get $0 local.get $1 - i32.gt_s + local.get $9 + i32.lt_s if - local.get $2 + local.get $6 local.get $1 call $~lib/typedarray/Float64Array#__get i32.const 7616 - local.get $0 + local.get $9 i32.const 1 i32.sub local.get $1 @@ -58676,91 +58762,91 @@ end end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $8 i32.const 4 i32.const 8 call $~lib/typedarray/Float64Array#subarray - local.set $1 + local.set $4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $4 i32.store offset=12 i32.const 0 - local.set $2 - local.get $1 + local.set $9 + local.get $4 i32.load offset=4 - local.set $6 - local.get $1 + local.set $3 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $7 + local.tee $0 i32.const 1 i32.gt_u if - local.get $7 + local.get $0 i32.const 1 i32.shr_u - local.set $8 - local.get $7 + local.set $2 + local.get $0 i32.const 1 i32.sub - local.set $7 + local.set $1 loop $while-continue|0159 local.get $2 - local.get $8 - i32.lt_u + local.get $9 + i32.gt_u if - local.get $2 + local.get $9 i32.const 3 i32.shl - local.get $6 + local.get $3 i32.add - local.tee $12 + local.tee $0 f64.load - local.set $5 - local.get $12 - local.get $7 - local.get $2 + local.set $7 + local.get $0 + local.get $1 + local.get $9 i32.sub i32.const 3 i32.shl - local.get $6 + local.get $3 i32.add - local.tee $12 + local.tee $0 f64.load f64.store - local.get $12 - local.get $5 + local.get $0 + local.get $7 f64.store - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $while-continue|0159 end end end - local.get $1 + local.get $4 i32.store offset=16 - local.get $1 + local.get $4 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 8 f64.ne br_if $folding-inner19 - local.get $1 + local.get $4 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 7 f64.ne br_if $folding-inner20 - local.get $1 + local.get $4 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 6 f64.ne br_if $folding-inner21 - local.get $1 + local.get $4 i32.const 3 call $~lib/typedarray/Float64Array#__get f64.const 5 @@ -58784,9 +58870,9 @@ global.get $~lib/memory/__stack_pointer i32.const 1 call $~lib/typedarray/Float64Array#constructor - local.tee $2 + local.tee $4 i32.store offset=12 - local.get $2 + local.get $4 i32.const 0 f64.const nan:0x8000000000000 call $~lib/typedarray/Float64Array#__set @@ -58795,29 +58881,29 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $6 + local.tee $3 i32.const 0 - local.get $6 + local.get $3 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $7 + local.set $2 loop $while-continue|0160 local.get $0 - local.get $6 + local.get $3 i32.lt_s if local.get $0 local.tee $1 i32.const 3 i32.shl - local.get $7 + local.get $2 i32.add f64.load f64.const nan:0x8000000000000 @@ -58848,37 +58934,37 @@ local.set $1 block $~lib/typedarray/INCLUDES<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) i32.const 0 - local.get $2 + local.get $4 i32.load offset=8 i32.const 3 i32.shr_u - local.tee $0 + local.tee $2 i32.const 0 - local.get $0 + local.get $2 select i32.eqz br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float64Array,f64>|inlined.0 drop - local.get $2 + local.get $4 i32.load offset=4 - local.set $2 + local.set $0 loop $while-continue|060 - local.get $0 local.get $1 - i32.gt_s + local.get $2 + i32.lt_s if i32.const 1 local.get $1 i32.const 3 i32.shl - local.get $2 + local.get $0 i32.add f64.load - local.tee $5 + local.tee $7 f64.const nan:0x8000000000000 f64.eq - local.get $5 - local.get $5 + local.get $7 + local.get $7 f64.ne i32.or br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float64Array,f64>|inlined.0 @@ -58904,9 +58990,9 @@ global.get $~lib/memory/__stack_pointer i32.const 1 call $~lib/typedarray/Float32Array#constructor - local.tee $2 + local.tee $4 i32.store offset=24 - local.get $2 + local.get $4 i32.const 0 f32.const nan:0x400000 call $~lib/typedarray/Float32Array#__set @@ -58915,29 +59001,29 @@ i32.const -1 local.set $1 block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $6 + local.tee $3 i32.const 0 - local.get $6 + local.get $3 select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - local.get $2 + local.get $4 i32.load offset=4 - local.set $7 + local.set $2 loop $while-continue|062 local.get $0 - local.get $6 + local.get $3 i32.lt_s if local.get $0 local.tee $1 i32.const 2 i32.shl - local.get $7 + local.get $2 i32.add f32.load f32.const nan:0x400000 @@ -58968,37 +59054,37 @@ local.set $1 block $~lib/typedarray/INCLUDES<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) i32.const 0 - local.get $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 + local.tee $2 i32.const 0 - local.get $0 + local.get $2 select i32.eqz br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float32Array,f32>|inlined.0 drop - local.get $2 + local.get $4 i32.load offset=4 - local.set $2 + local.set $0 loop $while-continue|064 - local.get $0 local.get $1 - i32.gt_s + local.get $2 + i32.lt_s if i32.const 1 local.get $1 i32.const 2 i32.shl - local.get $2 + local.get $0 i32.add f32.load - local.tee $4 + local.tee $5 f32.const nan:0x400000 f32.eq - local.get $4 - local.get $4 + local.get $5 + local.get $5 f32.ne i32.or br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float32Array,f32>|inlined.0 @@ -59039,41 +59125,41 @@ local.get $0 i32.const 5 call $~lib/typedarray/Int8Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $1 i32.const 4 i32.const 5 call $~lib/typedarray/Int8Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Int8Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -59087,27 +59173,27 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 9584 i32.store - local.get $0 + local.get $1 call $~lib/typedarray/Int8Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=4 + local.tee $0 local.get $1 + i32.store offset=4 + local.get $0 i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -59134,56 +59220,56 @@ local.get $0 i32.const 5 call $~lib/typedarray/Uint8Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $1 i32.const 4 i32.const 5 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Uint8Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz br_if $folding-inner23 - local.get $0 + local.get $1 call $~lib/typedarray/Uint8Array#toString - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=4 + local.tee $0 local.get $1 + i32.store offset=4 + local.get $0 i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -59210,56 +59296,56 @@ local.get $0 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $1 i32.const 4 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Uint8Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz br_if $folding-inner23 - local.get $0 + local.get $1 call $~lib/typedarray/Uint8Array#toString - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=4 + local.tee $0 local.get $1 + i32.store offset=4 + local.get $0 i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -59286,41 +59372,41 @@ local.get $0 i32.const 5 call $~lib/typedarray/Int16Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $1 i32.const 4 i32.const 5 call $~lib/typedarray/Int16Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Int16Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -59334,27 +59420,27 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 9584 i32.store - local.get $0 + local.get $1 call $~lib/typedarray/Int16Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=4 + local.tee $0 local.get $1 + i32.store offset=4 + local.get $0 i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -59381,41 +59467,41 @@ local.get $0 i32.const 5 call $~lib/typedarray/Uint16Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $1 i32.const 4 i32.const 5 call $~lib/typedarray/Uint16Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Uint16Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -59429,27 +59515,27 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 9584 i32.store - local.get $0 + local.get $1 call $~lib/typedarray/Uint16Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=4 + local.tee $0 local.get $1 + i32.store offset=4 + local.get $0 i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -59476,41 +59562,41 @@ local.get $0 i32.const 5 call $~lib/typedarray/Int32Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.const 4 i32.const 5 call $~lib/typedarray/Int32Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Int32Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -59524,27 +59610,27 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 9584 i32.store - local.get $0 + local.get $1 call $~lib/typedarray/Int32Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=4 + local.tee $0 local.get $1 + i32.store offset=4 + local.get $0 i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -59571,41 +59657,41 @@ local.get $0 i32.const 5 call $~lib/typedarray/Uint32Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 3 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 3 i32.const 4 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 4 i32.const 5 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Uint32Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -59619,27 +59705,27 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 9584 i32.store - local.get $0 + local.get $1 call $~lib/typedarray/Uint32Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=4 + local.tee $0 local.get $1 + i32.store offset=4 + local.get $0 i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -59666,41 +59752,41 @@ local.get $0 i32.const 5 call $~lib/typedarray/Int64Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $1 i32.const 2 i64.const 3 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $1 i32.const 3 i64.const 4 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $1 i32.const 4 i64.const 5 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Int64Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -59714,27 +59800,27 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 9584 i32.store - local.get $0 + local.get $1 call $~lib/typedarray/Int64Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=4 + local.tee $0 local.get $1 + i32.store offset=4 + local.get $0 i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -59761,41 +59847,41 @@ local.get $0 i32.const 5 call $~lib/typedarray/Uint64Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $1 i32.const 2 i64.const 3 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $1 i32.const 3 i64.const 4 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $1 i32.const 4 i64.const 5 call $~lib/typedarray/Uint64Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Uint64Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 9616 i32.store offset=8 - local.get $1 + local.get $0 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -59809,27 +59895,27 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 9584 i32.store - local.get $0 + local.get $1 call $~lib/typedarray/Uint64Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=4 + local.tee $0 local.get $1 + i32.store offset=4 + local.get $0 i32.const 9616 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9616 call $~lib/string/String.__eq i32.eqz @@ -59856,41 +59942,41 @@ local.get $0 i32.const 5 call $~lib/typedarray/Float32Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 2 f32.const 3 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 3 f32.const 4 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 4 f32.const 5 call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Float32Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 10800 i32.store offset=8 - local.get $1 + local.get $0 i32.const 10800 call $~lib/string/String.__eq i32.eqz @@ -59904,27 +59990,27 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 9584 i32.store - local.get $0 + local.get $1 call $~lib/typedarray/Float32Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=4 + local.tee $0 local.get $1 + i32.store offset=4 + local.get $0 i32.const 10800 i32.store offset=8 - local.get $0 + local.get $1 i32.const 10800 call $~lib/string/String.__eq i32.eqz @@ -59951,41 +60037,41 @@ local.get $0 i32.const 5 call $~lib/typedarray/Float64Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 2 f64.const 3 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 3 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 4 f64.const 5 call $~lib/typedarray/Float64Array#__set global.get $~lib/memory/__stack_pointer i32.const 9584 i32.store offset=12 - local.get $0 + local.get $1 call $~lib/typedarray/Float64Array#join - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 10800 i32.store offset=8 - local.get $1 + local.get $0 i32.const 10800 call $~lib/string/String.__eq i32.eqz @@ -59999,27 +60085,27 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 9584 i32.store - local.get $0 + local.get $1 call $~lib/typedarray/Float64Array#join - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store offset=4 + local.tee $0 local.get $1 + i32.store offset=4 + local.get $0 i32.const 10800 i32.store offset=8 - local.get $0 + local.get $1 i32.const 10800 call $~lib/string/String.__eq i32.eqz @@ -60075,7 +60161,7 @@ unreachable end i32.const 0 - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -60100,49 +60186,49 @@ local.get $0 i32.const 10940 i32.load - local.tee $0 + local.tee $6 call $~lib/typedarray/Int8Array#constructor - local.tee $1 + local.tee $4 i32.store offset=4 loop $for-loop|069 - local.get $0 - local.get $2 + local.get $6 + local.get $9 i32.gt_s if - local.get $1 - local.get $2 + local.get $4 + local.get $9 i32.const 10928 - local.get $2 + local.get $9 call $~lib/array/Array#__get i32.extend8_s call $~lib/typedarray/Int8Array#__set - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $for-loop|069 end end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $1 + local.get $4 i32.load - local.tee $6 + local.tee $0 i32.store offset=8 - local.get $2 - local.get $6 local.get $1 + local.get $0 + local.get $4 i32.load offset=4 - local.get $1 + local.get $4 i32.load i32.sub - local.tee $2 - local.get $1 + local.tee $0 + local.get $4 i32.load offset=8 - local.get $2 + local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $2 + local.tee $3 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -60156,60 +60242,60 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $0 i32.const 0 i32.store - local.get $2 + local.get $3 i32.const 20 i32.sub i32.load offset=16 - local.set $8 - local.get $7 + local.set $1 + local.get $0 i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $0 i32.store - local.get $7 - local.get $2 + local.get $0 + local.get $3 i32.store - local.get $2 + local.get $3 if - local.get $7 - local.get $2 + local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $7 - local.get $8 + local.get $0 + local.get $1 i32.store offset=8 - local.get $7 - local.get $2 + local.get $0 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store offset=16 i32.const 0 - local.set $2 + local.set $9 loop $for-loop|171 - local.get $0 - local.get $2 + local.get $6 + local.get $9 i32.gt_s if - local.get $1 - local.get $2 + local.get $4 + local.get $9 call $~lib/typedarray/Int8Array#__get - local.get $7 - local.get $2 + local.get $0 + local.get $9 call $~lib/typedarray/Int8Array#__get i32.ne br_if $folding-inner27 - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $for-loop|171 end end @@ -60243,14 +60329,14 @@ local.get $0 i32.const 10940 i32.load - local.tee $0 + local.tee $3 call $~lib/typedarray/Uint8Array#constructor local.tee $2 i32.store offset=4 loop $for-loop|074 - local.get $0 local.get $1 - i32.gt_s + local.get $3 + i32.lt_s if local.get $2 local.get $1 @@ -60271,42 +60357,42 @@ local.tee $1 local.get $2 i32.load - local.tee $6 + local.tee $0 i32.store offset=8 local.get $1 - local.get $6 + local.get $0 local.get $2 i32.load offset=4 local.get $2 i32.load i32.sub - local.tee $1 + local.tee $0 local.get $2 i32.load offset=8 - local.get $1 + local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $0 i32.store offset=12 i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Uint8Array.wrap@varargs - local.tee $6 + local.tee $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|177 - local.get $0 local.get $1 - i32.gt_s + local.get $3 + i32.lt_s if local.get $2 local.get $1 call $~lib/typedarray/Uint8Array#__get - local.get $6 + local.get $0 local.get $1 call $~lib/typedarray/Uint8Array#__get i32.ne @@ -60323,7 +60409,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -60348,50 +60434,50 @@ local.get $0 i32.const 10940 i32.load - local.tee $0 + local.tee $6 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $1 + local.tee $4 i32.store offset=4 loop $for-loop|080131 - local.get $0 - local.get $2 + local.get $6 + local.get $9 i32.gt_s if - local.get $1 - local.get $2 + local.get $4 + local.get $9 i32.const 10928 - local.get $2 + local.get $9 call $~lib/array/Array#__get i32.const 255 i32.and call $~lib/typedarray/Uint8ClampedArray#__set - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $for-loop|080131 end end global.get $~lib/memory/__stack_pointer - local.tee $2 - local.get $1 + local.tee $1 + local.get $4 i32.load - local.tee $6 + local.tee $0 i32.store offset=8 - local.get $2 - local.get $6 local.get $1 + local.get $0 + local.get $4 i32.load offset=4 - local.get $1 + local.get $4 i32.load i32.sub - local.tee $2 - local.get $1 + local.tee $0 + local.get $4 i32.load offset=8 - local.get $2 + local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $2 + local.tee $3 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -60405,60 +60491,60 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $0 i32.const 0 i32.store - local.get $2 + local.get $3 i32.const 20 i32.sub i32.load offset=16 - local.set $8 - local.get $7 + local.set $1 + local.get $0 i32.const 12 i32.const 5 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $0 i32.store - local.get $7 - local.get $2 + local.get $0 + local.get $3 i32.store - local.get $2 + local.get $3 if - local.get $7 - local.get $2 + local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $7 - local.get $8 + local.get $0 + local.get $1 i32.store offset=8 - local.get $7 - local.get $2 + local.get $0 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store offset=16 i32.const 0 - local.set $2 + local.set $9 loop $for-loop|183 - local.get $0 - local.get $2 + local.get $6 + local.get $9 i32.gt_s if - local.get $1 - local.get $2 + local.get $4 + local.get $9 call $~lib/typedarray/Uint8ClampedArray#__get - local.get $7 - local.get $2 + local.get $0 + local.get $9 call $~lib/typedarray/Uint8ClampedArray#__get i32.ne br_if $folding-inner27 - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $for-loop|183 end end @@ -60492,16 +60578,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $0 + local.tee $6 call $~lib/typedarray/Int16Array#constructor - local.tee $2 + local.tee $4 i32.store offset=4 loop $for-loop|086139 - local.get $0 local.get $1 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $2 + local.get $4 local.get $1 i32.const 10928 local.get $1 @@ -60517,24 +60603,24 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $2 + local.get $4 i32.load - local.tee $6 + local.tee $0 i32.store offset=8 local.get $1 - local.get $6 - local.get $2 + local.get $0 + local.get $4 i32.load offset=4 - local.get $2 + local.get $4 i32.load i32.sub - local.tee $1 - local.get $2 + local.tee $0 + local.get $4 i32.load offset=8 - local.get $1 + local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $3 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -60550,11 +60636,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $1 + local.get $3 i32.const 20 i32.sub i32.load offset=16 - local.tee $7 + local.tee $1 i32.const 1 i32.and br_if $folding-inner28 @@ -60562,40 +60648,40 @@ i32.const 12 i32.const 6 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $0 i32.store - local.get $8 - local.get $1 + local.get $0 + local.get $3 i32.store - local.get $1 + local.get $3 if - local.get $8 - local.get $1 + local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $8 - local.get $7 - i32.store offset=8 - local.get $8 + local.get $0 local.get $1 + i32.store offset=8 + local.get $0 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 + local.get $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|189 - local.get $0 local.get $1 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $2 + local.get $4 local.get $1 call $~lib/typedarray/Int16Array#__get - local.get $8 + local.get $0 local.get $1 call $~lib/typedarray/Int16Array#__get i32.ne @@ -60637,16 +60723,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $0 + local.tee $6 call $~lib/typedarray/Uint16Array#constructor - local.tee $2 + local.tee $4 i32.store offset=4 loop $for-loop|092147 - local.get $0 local.get $1 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $2 + local.get $4 local.get $1 i32.const 10928 local.get $1 @@ -60663,24 +60749,24 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $2 + local.get $4 i32.load - local.tee $6 + local.tee $0 i32.store offset=8 local.get $1 - local.get $6 - local.get $2 + local.get $0 + local.get $4 i32.load offset=4 - local.get $2 + local.get $4 i32.load i32.sub - local.tee $1 - local.get $2 + local.tee $0 + local.get $4 i32.load offset=8 - local.get $1 + local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $3 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -60696,11 +60782,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $1 + local.get $3 i32.const 20 i32.sub i32.load offset=16 - local.tee $7 + local.tee $1 i32.const 1 i32.and br_if $folding-inner28 @@ -60708,40 +60794,40 @@ i32.const 12 i32.const 7 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $0 i32.store - local.get $8 - local.get $1 + local.get $0 + local.get $3 i32.store - local.get $1 + local.get $3 if - local.get $8 - local.get $1 + local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $8 - local.get $7 - i32.store offset=8 - local.get $8 + local.get $0 local.get $1 + i32.store offset=8 + local.get $0 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 + local.get $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|195 - local.get $0 local.get $1 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $2 + local.get $4 local.get $1 call $~lib/typedarray/Uint16Array#__get - local.get $8 + local.get $0 local.get $1 call $~lib/typedarray/Uint16Array#__get i32.ne @@ -60783,16 +60869,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $0 + local.tee $6 call $~lib/typedarray/Int32Array#constructor - local.tee $2 + local.tee $4 i32.store offset=4 loop $for-loop|098155 - local.get $0 local.get $1 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $2 + local.get $4 local.get $1 i32.const 10928 local.get $1 @@ -60807,24 +60893,24 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $2 + local.get $4 i32.load - local.tee $6 + local.tee $0 i32.store offset=8 local.get $1 - local.get $6 - local.get $2 + local.get $0 + local.get $4 i32.load offset=4 - local.get $2 + local.get $4 i32.load i32.sub - local.tee $1 - local.get $2 + local.tee $0 + local.get $4 i32.load offset=8 - local.get $1 + local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $3 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -60840,11 +60926,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $1 + local.get $3 i32.const 20 i32.sub i32.load offset=16 - local.tee $7 + local.tee $1 i32.const 3 i32.and br_if $folding-inner28 @@ -60852,40 +60938,40 @@ i32.const 12 i32.const 8 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $0 i32.store - local.get $8 - local.get $1 + local.get $0 + local.get $3 i32.store - local.get $1 + local.get $3 if - local.get $8 - local.get $1 + local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $8 - local.get $7 - i32.store offset=8 - local.get $8 + local.get $0 local.get $1 + i32.store offset=8 + local.get $0 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 + local.get $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|1101 - local.get $0 local.get $1 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $2 + local.get $4 local.get $1 call $~lib/typedarray/Int32Array#__get - local.get $8 + local.get $0 local.get $1 call $~lib/typedarray/Int32Array#__get i32.ne @@ -60927,16 +61013,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $0 + local.tee $6 call $~lib/typedarray/Uint32Array#constructor - local.tee $2 + local.tee $4 i32.store offset=4 loop $for-loop|0104163 - local.get $0 local.get $1 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $2 + local.get $4 local.get $1 i32.const 10928 local.get $1 @@ -60951,24 +61037,24 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $2 + local.get $4 i32.load - local.tee $6 + local.tee $0 i32.store offset=8 local.get $1 - local.get $6 - local.get $2 + local.get $0 + local.get $4 i32.load offset=4 - local.get $2 + local.get $4 i32.load i32.sub - local.tee $1 - local.get $2 + local.tee $0 + local.get $4 i32.load offset=8 - local.get $1 + local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $3 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -60984,11 +61070,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $1 + local.get $3 i32.const 20 i32.sub i32.load offset=16 - local.tee $7 + local.tee $1 i32.const 3 i32.and br_if $folding-inner28 @@ -60996,40 +61082,40 @@ i32.const 12 i32.const 9 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $0 i32.store - local.get $8 - local.get $1 + local.get $0 + local.get $3 i32.store - local.get $1 + local.get $3 if - local.get $8 - local.get $1 + local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $8 - local.get $7 - i32.store offset=8 - local.get $8 + local.get $0 local.get $1 + i32.store offset=8 + local.get $0 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 + local.get $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|1107 - local.get $0 local.get $1 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $2 + local.get $4 local.get $1 call $~lib/typedarray/Uint32Array#__get - local.get $8 + local.get $0 local.get $1 call $~lib/typedarray/Uint32Array#__get i32.ne @@ -61071,16 +61157,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $0 + local.tee $6 call $~lib/typedarray/Int64Array#constructor - local.tee $2 + local.tee $4 i32.store offset=4 loop $for-loop|0110 - local.get $0 local.get $1 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $2 + local.get $4 local.get $1 i32.const 10928 local.get $1 @@ -61096,24 +61182,24 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $2 + local.get $4 i32.load - local.tee $6 + local.tee $0 i32.store offset=8 local.get $1 - local.get $6 - local.get $2 + local.get $0 + local.get $4 i32.load offset=4 - local.get $2 + local.get $4 i32.load i32.sub - local.tee $1 - local.get $2 + local.tee $0 + local.get $4 i32.load offset=8 - local.get $1 + local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $3 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61129,11 +61215,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $1 + local.get $3 i32.const 20 i32.sub i32.load offset=16 - local.tee $7 + local.tee $1 i32.const 7 i32.and br_if $folding-inner28 @@ -61141,40 +61227,40 @@ i32.const 12 i32.const 10 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $0 i32.store - local.get $8 - local.get $1 + local.get $0 + local.get $3 i32.store - local.get $1 + local.get $3 if - local.get $8 - local.get $1 + local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $8 - local.get $7 - i32.store offset=8 - local.get $8 + local.get $0 local.get $1 + i32.store offset=8 + local.get $0 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 + local.get $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|1113 - local.get $0 local.get $1 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $2 + local.get $4 local.get $1 call $~lib/typedarray/Int64Array#__get - local.get $8 + local.get $0 local.get $1 call $~lib/typedarray/Int64Array#__get i64.ne @@ -61216,16 +61302,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $0 + local.tee $6 call $~lib/typedarray/Uint64Array#constructor - local.tee $2 + local.tee $4 i32.store offset=4 loop $for-loop|0116 - local.get $0 local.get $1 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $2 + local.get $4 local.get $1 i32.const 10928 local.get $1 @@ -61241,24 +61327,24 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $2 + local.get $4 i32.load - local.tee $6 + local.tee $0 i32.store offset=8 local.get $1 - local.get $6 - local.get $2 + local.get $0 + local.get $4 i32.load offset=4 - local.get $2 + local.get $4 i32.load i32.sub - local.tee $1 - local.get $2 + local.tee $0 + local.get $4 i32.load offset=8 - local.get $1 + local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $3 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61274,11 +61360,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $1 + local.get $3 i32.const 20 i32.sub i32.load offset=16 - local.tee $7 + local.tee $1 i32.const 7 i32.and br_if $folding-inner28 @@ -61286,40 +61372,40 @@ i32.const 12 i32.const 11 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $0 i32.store - local.get $8 - local.get $1 + local.get $0 + local.get $3 i32.store - local.get $1 + local.get $3 if - local.get $8 - local.get $1 + local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $8 - local.get $7 - i32.store offset=8 - local.get $8 + local.get $0 local.get $1 + i32.store offset=8 + local.get $0 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 + local.get $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|1119 - local.get $0 local.get $1 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $2 + local.get $4 local.get $1 call $~lib/typedarray/Uint64Array#__get - local.get $8 + local.get $0 local.get $1 call $~lib/typedarray/Uint64Array#__get i64.ne @@ -61361,16 +61447,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $0 + local.tee $6 call $~lib/typedarray/Float32Array#constructor - local.tee $2 + local.tee $4 i32.store offset=4 loop $for-loop|0122 - local.get $0 local.get $1 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $2 + local.get $4 local.get $1 i32.const 10928 local.get $1 @@ -61386,24 +61472,24 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $2 + local.get $4 i32.load - local.tee $6 + local.tee $0 i32.store offset=8 local.get $1 - local.get $6 - local.get $2 + local.get $0 + local.get $4 i32.load offset=4 - local.get $2 + local.get $4 i32.load i32.sub - local.tee $1 - local.get $2 + local.tee $0 + local.get $4 i32.load offset=8 - local.get $1 + local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $3 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61419,11 +61505,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $1 + local.get $3 i32.const 20 i32.sub i32.load offset=16 - local.tee $7 + local.tee $1 i32.const 3 i32.and br_if $folding-inner28 @@ -61431,40 +61517,40 @@ i32.const 12 i32.const 12 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $0 i32.store - local.get $8 - local.get $1 + local.get $0 + local.get $3 i32.store - local.get $1 + local.get $3 if - local.get $8 - local.get $1 + local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $8 - local.get $7 - i32.store offset=8 - local.get $8 + local.get $0 local.get $1 + i32.store offset=8 + local.get $0 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 + local.get $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|1125 - local.get $0 local.get $1 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $2 + local.get $4 local.get $1 call $~lib/typedarray/Float32Array#__get - local.get $8 + local.get $0 local.get $1 call $~lib/typedarray/Float32Array#__get f32.ne @@ -61506,16 +61592,16 @@ local.get $0 i32.const 10940 i32.load - local.tee $0 + local.tee $6 call $~lib/typedarray/Float64Array#constructor - local.tee $2 + local.tee $4 i32.store offset=4 loop $for-loop|0128 - local.get $0 local.get $1 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $2 + local.get $4 local.get $1 i32.const 10928 local.get $1 @@ -61531,24 +61617,24 @@ end global.get $~lib/memory/__stack_pointer local.tee $1 - local.get $2 + local.get $4 i32.load - local.tee $6 + local.tee $0 i32.store offset=8 local.get $1 - local.get $6 - local.get $2 + local.get $0 + local.get $4 i32.load offset=4 - local.get $2 + local.get $4 i32.load i32.sub - local.tee $1 - local.get $2 + local.tee $0 + local.get $4 i32.load offset=8 - local.get $1 + local.get $0 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.tee $1 + local.tee $3 i32.store offset=12 i32.const 1 global.set $~argumentsLength @@ -61564,11 +61650,11 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $1 + local.get $3 i32.const 20 i32.sub i32.load offset=16 - local.tee $7 + local.tee $1 i32.const 7 i32.and br_if $folding-inner28 @@ -61576,40 +61662,40 @@ i32.const 12 i32.const 13 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $0 i32.store - local.get $8 - local.get $1 + local.get $0 + local.get $3 i32.store - local.get $1 + local.get $3 if - local.get $8 - local.get $1 + local.get $0 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $8 - local.get $7 - i32.store offset=8 - local.get $8 + local.get $0 local.get $1 + i32.store offset=8 + local.get $0 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $8 + local.get $0 i32.store offset=16 i32.const 0 local.set $1 loop $for-loop|1131 - local.get $0 local.get $1 - i32.gt_s + local.get $6 + i32.lt_s if - local.get $2 + local.get $4 local.get $1 call $~lib/typedarray/Float64Array#__get - local.get $8 + local.get $0 local.get $1 call $~lib/typedarray/Float64Array#__get f64.ne @@ -61639,64 +61725,64 @@ global.get $~lib/memory/__stack_pointer i32.const 10 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 + local.tee $6 i32.store offset=24 global.get $~lib/memory/__stack_pointer i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $1 + local.tee $0 i32.store offset=12 - local.get $1 + local.get $0 i32.const 0 f32.const 400 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 1 f32.const nan:0x400000 call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 2 f32.const inf call $~lib/typedarray/Float32Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Int64Array#constructor - local.tee $6 + local.tee $3 i32.store offset=8 - local.get $6 + local.get $3 i32.const 0 i64.const -10 call $~lib/typedarray/Int64Array#__set - local.get $6 + local.get $3 i32.const 1 i64.const 100 call $~lib/typedarray/Int64Array#__set - local.get $6 + local.get $3 i32.const 2 i64.const 10 call $~lib/typedarray/Int64Array#__set - local.get $6 + local.get $3 i32.const 3 i64.const 300 call $~lib/typedarray/Int64Array#__set global.get $~lib/memory/__stack_pointer i32.const 2 call $~lib/typedarray/Int32Array#constructor - local.tee $7 + local.tee $4 i32.store offset=16 - local.get $7 + local.get $4 i32.const 0 i32.const 300 call $~lib/typedarray/Int32Array#__set - local.get $7 + local.get $4 i32.const 1 i32.const -1 call $~lib/typedarray/Int32Array#__set i32.const 0 - local.set $2 - local.get $0 + local.set $9 + local.get $6 i32.load offset=8 - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u @@ -61704,42 +61790,42 @@ i32.add i32.lt_s br_if $folding-inner29 - local.get $0 + local.get $6 i32.load offset=4 i32.const 1 i32.add - local.set $8 - local.get $1 + local.set $2 + local.get $0 i32.load offset=4 - local.set $12 - local.get $1 + local.set $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u - local.set $1 + local.set $0 loop $for-loop|0135 - local.get $1 - local.get $2 + local.get $0 + local.get $9 i32.gt_s if local.get $2 - local.get $8 + local.get $9 i32.add - local.get $2 + local.get $9 i32.const 2 i32.shl - local.get $12 + local.get $1 i32.add f32.load - local.tee $4 - local.get $4 + local.tee $5 + local.get $5 f32.sub f32.const 0 f32.eq if (result i32) f32.const 0 f32.const 255 - local.get $4 + local.get $5 f32.min f32.max i32.trunc_f32_u @@ -61747,22 +61833,22 @@ i32.const 0 end i32.store8 - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $for-loop|0135 end end - local.get $0 local.get $6 + local.get $3 i32.const 4 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int64Array> i32.const 0 - local.set $2 - local.get $0 + local.set $9 + local.get $6 i32.load offset=8 - local.get $7 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u @@ -61770,51 +61856,51 @@ i32.add i32.lt_s br_if $folding-inner29 - local.get $0 + local.get $6 i32.load offset=4 i32.const 8 i32.add - local.set $1 - local.get $7 + local.set $3 + local.get $4 i32.load offset=4 - local.set $6 - local.get $7 + local.set $2 + local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.set $7 + local.set $1 loop $for-loop|0139 - local.get $2 - local.get $7 - i32.lt_s + local.get $1 + local.get $9 + i32.gt_s if - local.get $1 - local.get $2 + local.get $3 + local.get $9 i32.add i32.const 255 - local.get $2 + local.get $9 i32.const 2 i32.shl - local.get $6 + local.get $2 i32.add i32.load - local.tee $8 + local.tee $0 i32.sub i32.const 31 i32.shr_s - local.get $8 + local.get $0 i32.or - local.get $8 + local.get $0 i32.const 31 i32.shr_s i32.const -1 i32.xor i32.and i32.store8 - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $for-loop|0139 end end @@ -61823,106 +61909,106 @@ i32.const 63 i32.const 15280 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 + local.get $6 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Uint32Array#constructor - local.tee $1 + local.tee $0 i32.store offset=28 - local.get $1 + local.get $0 i32.const 0 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $0 i32.const 1 i32.const 300 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $0 i32.const 2 i32.const 100 call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $0 i32.const 3 i32.const -1 call $~lib/typedarray/Uint32Array#__set global.get $~lib/memory/__stack_pointer i32.const 4 call $~lib/typedarray/Int16Array#constructor - local.tee $6 + local.tee $4 i32.store - local.get $6 + local.get $4 i32.const 0 i32.const -10 call $~lib/typedarray/Int16Array#__set - local.get $6 + local.get $4 i32.const 1 i32.const 100 call $~lib/typedarray/Int16Array#__set - local.get $6 + local.get $4 i32.const 2 i32.const 10 call $~lib/typedarray/Int16Array#__set - local.get $6 + local.get $4 i32.const 3 i32.const 300 call $~lib/typedarray/Int16Array#__set i32.const 0 - local.set $2 - local.get $0 + local.set $9 + local.get $6 i32.load offset=8 - local.get $1 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u i32.lt_s br_if $folding-inner29 - local.get $0 + local.get $6 i32.load offset=4 - local.set $7 - local.get $1 + local.set $3 + local.get $0 i32.load offset=4 - local.set $8 - local.get $1 + local.set $2 + local.get $0 i32.load offset=8 i32.const 2 i32.shr_u local.set $1 loop $for-loop|0143 local.get $1 - local.get $2 + local.get $9 i32.gt_s if - local.get $2 - local.get $7 + local.get $3 + local.get $9 i32.add i32.const 255 - local.get $2 + local.get $9 i32.const 2 i32.shl - local.get $8 + local.get $2 i32.add i32.load - local.tee $12 - local.get $12 + local.tee $0 + local.get $0 i32.const 255 i32.gt_u select i32.store8 - local.get $2 + local.get $9 i32.const 1 i32.add - local.set $2 + local.set $9 br $for-loop|0143 end end - local.get $0 local.get $6 + local.get $4 i32.const 5 call $~lib/typedarray/Uint8ClampedArray#set<~lib/typedarray/Int16Array> i32.const 10 @@ -61930,12 +62016,12 @@ i32.const 63 i32.const 15312 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 + local.get $6 local.get $0 - local.get $1 call $std/typedarray/valuesEqual<~lib/typedarray/Uint8ClampedArray> i32.const 0 local.set $1 @@ -61957,17 +62043,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int8Array#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 i32.const 2 i32.const 1 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Int8Array#__set - local.get $0 + local.get $2 i32.const 0 i32.const 3 call $~lib/typedarray/Int8Array#__set @@ -61999,9 +62085,9 @@ i32.const 15344 i32.store end - local.get $0 + local.get $2 i32.load offset=4 - local.get $0 + local.get $2 i32.load offset=8 local.get $1 call $~lib/util/sort/SORT @@ -62009,21 +62095,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=4 - local.get $0 + local.get $2 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 1 i32.ne br_if $folding-inner30 - local.get $0 + local.get $2 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 2 i32.ne br_if $folding-inner31 - local.get $0 + local.get $2 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 3 @@ -62032,25 +62118,25 @@ global.get $~lib/memory/__stack_pointer i32.const 15376 i32.store offset=8 - local.get $0 + local.get $2 i32.load offset=4 - local.get $0 + local.get $2 i32.load offset=8 i32.const 15376 call $~lib/util/sort/SORT - local.get $0 + local.get $2 i32.const 0 call $~lib/typedarray/Int8Array#__get i32.const 3 i32.ne br_if $folding-inner33 - local.get $0 + local.get $2 i32.const 1 call $~lib/typedarray/Int8Array#__get i32.const 2 i32.ne br_if $folding-inner34 - local.get $0 + local.get $2 i32.const 2 call $~lib/typedarray/Int8Array#__get i32.const 1 @@ -62080,17 +62166,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8Array#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 i32.const 2 i32.const 1 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8Array#__set - local.get $0 + local.get $2 i32.const 0 i32.const 3 call $~lib/typedarray/Uint8Array#__set @@ -62122,9 +62208,9 @@ i32.const 15408 i32.store end - local.get $0 + local.get $2 i32.load offset=4 - local.get $0 + local.get $2 i32.load offset=8 local.get $1 call $~lib/util/sort/SORT @@ -62132,21 +62218,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=4 - local.get $0 + local.get $2 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 1 i32.ne br_if $folding-inner30 - local.get $0 + local.get $2 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 2 i32.ne br_if $folding-inner31 - local.get $0 + local.get $2 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 3 @@ -62155,25 +62241,25 @@ global.get $~lib/memory/__stack_pointer i32.const 15440 i32.store offset=8 - local.get $0 + local.get $2 i32.load offset=4 - local.get $0 + local.get $2 i32.load offset=8 i32.const 15440 call $~lib/util/sort/SORT - local.get $0 + local.get $2 i32.const 0 call $~lib/typedarray/Uint8Array#__get i32.const 3 i32.ne br_if $folding-inner33 - local.get $0 + local.get $2 i32.const 1 call $~lib/typedarray/Uint8Array#__get i32.const 2 i32.ne br_if $folding-inner34 - local.get $0 + local.get $2 i32.const 2 call $~lib/typedarray/Uint8Array#__get i32.const 1 @@ -62203,17 +62289,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 + local.tee $2 i32.store - local.get $0 + local.get $2 i32.const 2 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $2 i32.const 1 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 + local.get $2 i32.const 0 i32.const 3 call $~lib/typedarray/Uint8ClampedArray#__set @@ -62245,9 +62331,9 @@ i32.const 15472 i32.store end - local.get $0 + local.get $2 i32.load offset=4 - local.get $0 + local.get $2 i32.load offset=8 local.get $1 call $~lib/util/sort/SORT @@ -62255,21 +62341,21 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=4 - local.get $0 + local.get $2 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 1 i32.ne br_if $folding-inner30 - local.get $0 + local.get $2 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 2 i32.ne br_if $folding-inner31 - local.get $0 + local.get $2 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 3 @@ -62278,25 +62364,25 @@ global.get $~lib/memory/__stack_pointer i32.const 15504 i32.store offset=8 - local.get $0 + local.get $2 i32.load offset=4 - local.get $0 + local.get $2 i32.load offset=8 i32.const 15504 call $~lib/util/sort/SORT - local.get $0 + local.get $2 i32.const 0 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 3 i32.ne br_if $folding-inner33 - local.get $0 + local.get $2 i32.const 1 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 2 i32.ne br_if $folding-inner34 - local.get $0 + local.get $2 i32.const 2 call $~lib/typedarray/Uint8ClampedArray#__get i32.const 1 @@ -62324,17 +62410,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int16Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2 i32.const 1 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int16Array#__set - local.get $0 + local.get $1 i32.const 0 i32.const 3 call $~lib/typedarray/Int16Array#__set @@ -62342,7 +62428,7 @@ global.set $~argumentsLength global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -62363,38 +62449,38 @@ unreachable end i32.const 15536 - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer i32.const 15536 i32.store end - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u - local.get $2 + local.get $9 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 1 i32.ne br_if $folding-inner30 - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 2 i32.ne br_if $folding-inner31 - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 3 @@ -62403,27 +62489,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15568 i32.store offset=8 - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u i32.const 15568 call $~lib/util/sort/SORT - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Int16Array#__get i32.const 3 i32.ne br_if $folding-inner33 - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Int16Array#__get i32.const 2 i32.ne br_if $folding-inner34 - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Int16Array#__get i32.const 1 @@ -62451,17 +62537,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint16Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2 i32.const 1 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint16Array#__set - local.get $0 + local.get $1 i32.const 0 i32.const 3 call $~lib/typedarray/Uint16Array#__set @@ -62469,7 +62555,7 @@ global.set $~argumentsLength global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -62490,38 +62576,38 @@ unreachable end i32.const 15600 - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer i32.const 15600 i32.store end - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u - local.get $2 + local.get $9 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 1 i32.ne br_if $folding-inner30 - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 2 i32.ne br_if $folding-inner31 - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 3 @@ -62530,27 +62616,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15632 i32.store offset=8 - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load offset=8 i32.const 1 i32.shr_u i32.const 15632 call $~lib/util/sort/SORT - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint16Array#__get i32.const 3 i32.ne br_if $folding-inner33 - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Uint16Array#__get i32.const 2 i32.ne br_if $folding-inner34 - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Uint16Array#__get i32.const 1 @@ -62578,17 +62664,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int32Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2 i32.const 1 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Int32Array#__set - local.get $0 + local.get $1 i32.const 0 i32.const 3 call $~lib/typedarray/Int32Array#__set @@ -62596,7 +62682,7 @@ global.set $~argumentsLength global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -62617,38 +62703,38 @@ unreachable end i32.const 15664 - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer i32.const 15664 i32.store end - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.get $2 + local.get $9 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 1 i32.ne br_if $folding-inner30 - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 2 i32.ne br_if $folding-inner31 - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 3 @@ -62657,27 +62743,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15696 i32.store offset=8 - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u i32.const 15696 call $~lib/util/sort/SORT - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Int32Array#__get i32.const 3 i32.ne br_if $folding-inner33 - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Int32Array#__get i32.const 2 i32.ne br_if $folding-inner34 - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Int32Array#__get i32.const 1 @@ -62705,17 +62791,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint32Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2 i32.const 1 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 1 i32.const 2 call $~lib/typedarray/Uint32Array#__set - local.get $0 + local.get $1 i32.const 0 i32.const 3 call $~lib/typedarray/Uint32Array#__set @@ -62723,7 +62809,7 @@ global.set $~argumentsLength global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -62744,38 +62830,38 @@ unreachable end i32.const 15728 - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer i32.const 15728 i32.store end - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.get $2 + local.get $9 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 1 i32.ne br_if $folding-inner30 - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 2 i32.ne br_if $folding-inner31 - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 3 @@ -62784,27 +62870,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15760 i32.store offset=8 - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u i32.const 15760 call $~lib/util/sort/SORT - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint32Array#__get i32.const 3 i32.ne br_if $folding-inner33 - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Uint32Array#__get i32.const 2 i32.ne br_if $folding-inner34 - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Uint32Array#__get i32.const 1 @@ -62832,17 +62918,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Int64Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2 i64.const 1 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Int64Array#__set - local.get $0 + local.get $1 i32.const 0 i64.const 3 call $~lib/typedarray/Int64Array#__set @@ -62850,7 +62936,7 @@ global.set $~argumentsLength global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -62871,38 +62957,38 @@ unreachable end i32.const 15792 - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer i32.const 15792 i32.store end - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.get $2 + local.get $9 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 1 i64.ne br_if $folding-inner30 - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 2 i64.ne br_if $folding-inner31 - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 3 @@ -62911,27 +62997,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15824 i32.store offset=8 - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.const 15824 call $~lib/util/sort/SORT - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Int64Array#__get i64.const 3 i64.ne br_if $folding-inner33 - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Int64Array#__get i64.const 2 i64.ne br_if $folding-inner34 - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Int64Array#__get i64.const 1 @@ -62959,17 +63045,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Uint64Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2 i64.const 1 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $1 i32.const 1 i64.const 2 call $~lib/typedarray/Uint64Array#__set - local.get $0 + local.get $1 i32.const 0 i64.const 3 call $~lib/typedarray/Uint64Array#__set @@ -62977,7 +63063,7 @@ global.set $~argumentsLength global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -62998,38 +63084,38 @@ unreachable end i32.const 15856 - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer i32.const 15856 i32.store end - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u - local.get $2 + local.get $9 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 1 i64.ne br_if $folding-inner30 - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 2 i64.ne br_if $folding-inner31 - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 3 @@ -63038,27 +63124,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15888 i32.store offset=8 - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load offset=8 i32.const 3 i32.shr_u i32.const 15888 call $~lib/util/sort/SORT - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Uint64Array#__get i64.const 3 i64.ne br_if $folding-inner33 - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Uint64Array#__get i64.const 2 i64.ne br_if $folding-inner34 - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Uint64Array#__get i64.const 1 @@ -63086,17 +63172,17 @@ local.get $0 i32.const 3 call $~lib/typedarray/Float32Array#constructor - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.const 2 f32.const 1 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 1 f32.const 2 call $~lib/typedarray/Float32Array#__set - local.get $0 + local.get $1 i32.const 0 f32.const 3 call $~lib/typedarray/Float32Array#__set @@ -63104,7 +63190,7 @@ global.set $~argumentsLength global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -63125,38 +63211,38 @@ unreachable end i32.const 15920 - local.set $2 + local.set $9 global.get $~lib/memory/__stack_pointer i32.const 15920 i32.store end - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u - local.get $2 + local.get $9 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 1 f32.ne br_if $folding-inner30 - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 2 f32.ne br_if $folding-inner31 - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 3 @@ -63165,27 +63251,27 @@ global.get $~lib/memory/__stack_pointer i32.const 15952 i32.store offset=8 - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 + local.get $1 i32.load offset=8 i32.const 2 i32.shr_u i32.const 15952 call $~lib/util/sort/SORT - local.get $0 + local.get $1 i32.const 0 call $~lib/typedarray/Float32Array#__get f32.const 3 f32.ne br_if $folding-inner33 - local.get $0 + local.get $1 i32.const 1 call $~lib/typedarray/Float32Array#__get f32.const 2 f32.ne br_if $folding-inner34 - local.get $0 + local.get $1 i32.const 2 call $~lib/typedarray/Float32Array#__get f32.const 1 @@ -64404,46 +64490,46 @@ local.get $1 i32.shl local.tee $4 - local.set $5 + local.set $1 local.get $4 i32.const 0 call $~lib/rt/itcms/__new - local.set $1 + local.set $5 local.get $3 if - local.get $1 - local.get $3 local.get $5 + local.get $3 + local.get $1 call $~lib/memory/memory.copy end - local.get $1 + local.get $5 i32.store i32.const 16 local.get $2 call $~lib/rt/itcms/__new - local.tee $2 - local.get $1 + local.tee $1 + local.get $5 i32.store - local.get $1 + local.get $5 if - local.get $2 local.get $1 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 local.get $1 + local.get $5 i32.store offset=4 - local.get $2 + local.get $1 local.get $4 i32.store offset=8 - local.get $2 + local.get $1 local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 ) (func $~lib/typedarray/Int8Array#subarray (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) @@ -65463,9 +65549,9 @@ local.get $0 i32.const 31 i32.shr_u - local.tee $0 - select local.tee $2 + select + local.tee $0 local.tee $1 i32.const 100000 i32.lt_u @@ -65512,22 +65598,22 @@ i32.add end end - local.get $0 + local.get $2 i32.add - local.tee $1 + local.tee $3 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store - local.get $3 - local.get $2 local.get $1 - call $~lib/util/number/utoa32_dec_lut local.get $0 + local.get $3 + call $~lib/util/number/utoa32_dec_lut + local.get $2 if - local.get $3 + local.get $1 i32.const 45 i32.store16 end @@ -65535,7 +65621,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 ) (func $~lib/string/String#substring (param $0 i32) (param $1 i32) (result i32) (local $2 i32) @@ -65569,7 +65655,7 @@ local.tee $2 local.get $2 i32.const 0 - i32.gt_s + i32.gt_u select local.tee $3 local.get $1 @@ -65584,26 +65670,26 @@ local.get $2 i32.lt_s select - local.tee $4 + local.tee $1 + local.get $1 local.get $3 - local.get $4 - i32.lt_s + i32.gt_s select i32.const 1 i32.shl - local.set $1 + local.set $4 local.get $3 - local.get $4 + local.get $1 + local.get $1 local.get $3 - local.get $4 - i32.gt_s + i32.lt_s select i32.const 1 i32.shl - local.tee $3 - local.get $1 + local.tee $1 + local.get $4 i32.sub - local.tee $4 + local.tee $3 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -65617,9 +65703,9 @@ local.get $2 i32.const 1 i32.shl - local.get $3 - i32.eq local.get $1 + i32.eq + local.get $4 select if global.get $~lib/memory/__stack_pointer @@ -65630,22 +65716,22 @@ return end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 1 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $1 i32.store - local.get $2 - local.get $0 local.get $1 - i32.add + local.get $0 local.get $4 + i32.add + local.get $3 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $1 ) (func $~lib/util/number/utoa32 (param $0 i32) (result i32) (local $1 i32) @@ -65680,47 +65766,46 @@ end global.get $~lib/memory/__stack_pointer local.get $0 - local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $0 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $0 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $0 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $0 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $0 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $0 i32.const 100000000 i32.ge_u i32.add diff --git a/tests/compiler/std/uri.optimized.wat b/tests/compiler/std/uri.optimized.wat index 46931f4133..d4596de4f5 100644 --- a/tests/compiler/std/uri.optimized.wat +++ b/tests/compiler/std/uri.optimized.wat @@ -620,9 +620,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -669,6 +666,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1246,18 +1246,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $4 + local.get $0 + i32.const 16 + i32.add local.tee $3 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1268,13 +1267,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $3 i32.const 19 i32.add i32.const -16 @@ -1282,32 +1281,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $5 i32.add else - local.get $4 + local.get $5 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1323,16 +1322,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $3 local.get $2 - local.get $5 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1340,7 +1339,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1348,8 +1347,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1366,7 +1365,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $5 i32.lt_u if i32.const 0 @@ -1376,13 +1375,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $4 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1395,40 +1394,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $4 + local.get $5 i32.sub - local.tee $6 + local.tee $3 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $4 + local.get $5 i32.or i32.store - local.get $4 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 - local.get $6 + local.tee $5 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -2126,95 +2125,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -2245,39 +2244,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 @@ -2593,33 +2592,33 @@ local.get $1 i32.const 1 i32.shl - local.tee $9 + local.tee $8 i32.const 1 call $~lib/rt/itcms/__new local.set $3 loop $while-continue|0 local.get $1 - local.get $7 + local.get $4 i32.gt_u if block $while-break|0 - local.get $7 + local.get $4 local.set $5 loop $do-loop|1 block $do-break|1 - local.get $7 + local.get $4 i32.const 1 i32.shl local.get $0 i32.add i32.load16_u - local.tee $4 + local.tee $6 i32.const 33 i32.sub i32.const 94 i32.ge_u br_if $do-break|1 - local.get $4 + local.get $6 i32.const 33 i32.sub local.get $2 @@ -2627,68 +2626,68 @@ i32.load8_u br_if $do-break|1 local.get $1 - local.get $7 + local.get $4 i32.const 1 i32.add - local.tee $7 + local.tee $4 i32.gt_u br_if $do-loop|1 end end + local.get $4 local.get $5 - local.get $7 - i32.lt_u + i32.gt_u if - local.get $9 - local.get $6 + local.get $8 local.get $7 + local.get $4 local.get $5 i32.sub i32.const 1 i32.shl - local.tee $8 + local.tee $9 i32.add i32.lt_u if local.get $3 - local.get $6 - local.get $8 + local.get $7 + local.get $9 i32.add - local.tee $9 + local.tee $8 call $~lib/rt/itcms/__renew local.set $3 end local.get $3 - local.get $6 + local.get $7 i32.add local.get $5 i32.const 1 i32.shl local.get $0 i32.add - local.get $8 + local.get $9 call $~lib/memory/memory.copy - local.get $6 - local.get $8 + local.get $7 + local.get $9 i32.add - local.set $6 + local.set $7 local.get $1 - local.get $7 + local.get $4 i32.le_u br_if $while-break|0 end - local.get $9 - local.get $6 + local.get $8 + local.get $7 i32.const 6 i32.const 24 - local.get $4 + local.get $6 i32.const 55296 i32.ge_u if - local.get $4 + local.get $6 i32.const 57343 i32.le_u - local.get $4 + local.get $6 i32.const 56320 i32.ge_u i32.and @@ -2700,12 +2699,12 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $6 i32.const 56319 i32.le_u if (result i32) local.get $1 - local.get $7 + local.get $4 i32.le_u if i32.const 1584 @@ -2715,10 +2714,10 @@ call $~lib/builtins/abort unreachable end - local.get $7 + local.get $4 i32.const 1 i32.add - local.tee $7 + local.tee $4 i32.const 1 i32.shl local.get $0 @@ -2742,7 +2741,7 @@ local.get $5 i32.const 1023 i32.and - local.get $4 + local.get $6 i32.const 1023 i32.and i32.const 10 @@ -2751,11 +2750,11 @@ i32.const 65536 i32.add else - local.get $4 + local.get $6 end - local.set $4 + local.set $6 end - local.get $4 + local.get $6 i32.const 128 i32.lt_u select @@ -2772,22 +2771,22 @@ i32.const 1 i32.gt_u select - local.tee $9 + local.tee $8 call $~lib/rt/itcms/__renew local.set $3 end - local.get $4 + local.get $6 i32.const 128 i32.lt_u if (result i32) local.get $3 - local.get $6 + local.get $7 i32.add local.tee $5 i32.const 37 i32.store16 local.get $5 - local.get $4 + local.get $6 i32.const 4 i32.shr_u i32.const 15 @@ -2795,7 +2794,7 @@ i32.const 1676 i32.add i32.load8_u - local.get $4 + local.get $6 i32.const 15 i32.and i32.const 1676 @@ -2805,23 +2804,23 @@ i32.shl i32.or i32.store offset=2 - local.get $6 + local.get $7 i32.const 6 i32.add else local.get $3 - local.get $4 + local.get $6 i32.const 2048 i32.lt_u if (result i32) local.get $3 - local.get $6 + local.get $7 i32.add local.tee $5 i32.const 37 i32.store16 local.get $5 - local.get $4 + local.get $6 i32.const 6 i32.shr_u i32.const 192 @@ -2844,23 +2843,23 @@ i32.shl i32.or i32.store offset=2 - local.get $6 + local.get $7 i32.const 6 i32.add else local.get $3 - local.get $4 + local.get $6 i32.const 65536 i32.lt_u if local.get $3 - local.get $6 + local.get $7 i32.add local.tee $5 i32.const 37 i32.store16 local.get $5 - local.get $4 + local.get $6 i32.const 12 i32.shr_u i32.const 224 @@ -2885,13 +2884,13 @@ i32.store offset=2 else local.get $3 - local.get $6 + local.get $7 i32.add local.tee $5 i32.const 37 i32.store16 local.get $5 - local.get $4 + local.get $6 i32.const 18 i32.shr_u i32.const 240 @@ -2915,16 +2914,16 @@ i32.or i32.store offset=2 local.get $3 - local.get $6 + local.get $7 i32.const 6 i32.add - local.tee $6 + local.tee $7 i32.add local.tee $5 i32.const 37 i32.store16 local.get $5 - local.get $4 + local.get $6 i32.const 12 i32.shr_u i32.const 63 @@ -2948,29 +2947,29 @@ i32.or i32.store offset=2 end - local.get $6 + local.get $7 i32.const 6 i32.add - local.tee $6 - i32.add local.tee $5 + i32.add + local.tee $7 i32.const 37 i32.store16 - local.get $5 - local.get $4 + local.get $7 + local.get $6 i32.const 6 i32.shr_u i32.const 63 i32.and i32.const 128 i32.or - local.tee $5 + local.tee $7 i32.const 4 i32.shr_u i32.const 1676 i32.add i32.load8_u - local.get $5 + local.get $7 i32.const 15 i32.and i32.const 1676 @@ -2980,28 +2979,28 @@ i32.shl i32.or i32.store offset=2 - local.get $6 + local.get $5 i32.const 6 i32.add end - local.tee $6 - i32.add local.tee $5 + i32.add + local.tee $7 i32.const 37 i32.store16 - local.get $5 - local.get $4 + local.get $7 + local.get $6 i32.const 63 i32.and i32.const 128 i32.or - local.tee $4 + local.tee $6 i32.const 4 i32.shr_u i32.const 1676 i32.add i32.load8_u - local.get $4 + local.get $6 i32.const 15 i32.and i32.const 1676 @@ -3011,25 +3010,25 @@ i32.shl i32.or i32.store offset=2 - local.get $6 + local.get $5 i32.const 6 i32.add end - local.set $6 - local.get $7 + local.set $7 + local.get $4 i32.const 1 i32.add - local.set $7 + local.set $4 br $while-continue|0 end end end - local.get $6 - local.get $9 + local.get $7 + local.get $8 i32.lt_u if (result i32) local.get $3 - local.get $6 + local.get $7 call $~lib/rt/itcms/__renew else local.get $3 @@ -3125,14 +3124,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -3424,18 +3423,18 @@ i32.const 1 i32.shl i32.add - local.tee $7 + local.tee $10 i32.load16_u - local.set $10 - local.get $7 - i32.load16_u offset=2 local.set $7 local.get $10 + i32.load16_u offset=2 + local.set $10 + local.get $7 i32.const 48 i32.sub i32.const 10 i32.lt_u - local.get $10 + local.get $7 i32.const 32 i32.or i32.const 97 @@ -3444,12 +3443,12 @@ i32.lt_u i32.or if (result i32) - local.get $7 + local.get $10 i32.const 48 i32.sub i32.const 10 i32.lt_u - local.get $7 + local.get $10 i32.const 32 i32.or i32.const 97 @@ -3461,14 +3460,14 @@ i32.const 0 end if (result i32) - local.get $7 + local.get $10 i32.const 32 i32.or i32.const 39 i32.rem_u i32.const 9 i32.sub - local.get $10 + local.get $7 i32.const 32 i32.or i32.const 39 @@ -5233,19 +5232,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -5255,16 +5254,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -5287,7 +5285,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -5297,23 +5295,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -5321,7 +5319,7 @@ else i32.const 4336 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1376 @@ -5331,7 +5329,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 4340 @@ -5346,28 +5344,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/super-inline.optimized.wat b/tests/compiler/super-inline.optimized.wat index f3e3a8db4f..6c930e68a3 100644 --- a/tests/compiler/super-inline.optimized.wat +++ b/tests/compiler/super-inline.optimized.wat @@ -519,9 +519,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -568,6 +565,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -980,13 +980,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -996,9 +996,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1068,7 +1068,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1076,7 +1076,7 @@ memory.size local.tee $1 i32.const 4 - local.get $3 + local.get $2 i32.load offset=1568 local.get $1 i32.const 16 @@ -1091,16 +1091,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1108,7 +1108,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $1 i32.const 16 i32.shl @@ -1116,7 +1116,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1143,22 +1143,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $2 + local.tee $4 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1167,19 +1167,19 @@ local.get $1 i32.const 32 i32.add - local.tee $4 - local.get $2 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store @@ -1424,19 +1424,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1446,16 +1446,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1478,7 +1477,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1488,23 +1487,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1512,7 +1511,7 @@ else i32.const 1440 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1248 @@ -1522,7 +1521,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1444 @@ -1537,28 +1536,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/templateliteral.optimized.wat b/tests/compiler/templateliteral.optimized.wat index 80e12e962a..172770844f 100644 --- a/tests/compiler/templateliteral.optimized.wat +++ b/tests/compiler/templateliteral.optimized.wat @@ -226,14 +226,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -326,18 +326,17 @@ end block $__inlined_func$~lib/rt/itcms/Object#unlink local.get $0 - local.tee $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 - local.get $1 + local.get $0 i32.const 22116 i32.lt_u - local.get $1 + local.get $0 i32.load offset=8 select i32.eqz @@ -351,9 +350,9 @@ end br $__inlined_func$~lib/rt/itcms/Object#unlink end - local.get $1 + local.get $0 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -363,15 +362,15 @@ call $~lib/builtins/abort unreachable end - local.get $2 local.get $1 + local.get $2 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $1 i32.or i32.store offset=4 end @@ -412,20 +411,20 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 + local.set $1 local.get $0 - local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 local.get $0 - local.get $3 + local.get $1 i32.store offset=8 - local.get $3 - local.get $3 + local.get $1 + local.get $1 i32.load offset=4 i32.const 3 i32.and @@ -857,9 +856,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -906,6 +902,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1483,18 +1482,17 @@ global.set $~lib/rt/itcms/threshold end end - local.get $0 - i32.const 16 - i32.add - local.set $2 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT + local.tee $4 + local.get $0 + i32.const 16 + i32.add local.tee $3 - local.get $2 i32.const 1073741820 i32.gt_u if @@ -1505,13 +1503,13 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $3 i32.const 12 i32.le_u if (result i32) i32.const 12 else - local.get $2 + local.get $3 i32.const 19 i32.add i32.const -16 @@ -1519,32 +1517,32 @@ i32.const 4 i32.sub end - local.tee $4 + local.tee $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $4 + local.get $5 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $4 + local.get $5 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $4 + local.get $5 i32.add else - local.get $4 + local.get $5 end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $2 i32.const 16 @@ -1560,16 +1558,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $5 + local.tee $3 local.get $2 - local.get $5 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $5 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1577,7 +1575,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $2 i32.const 16 i32.shl @@ -1585,8 +1583,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1603,7 +1601,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $5 i32.lt_u if i32.const 0 @@ -1613,13 +1611,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load - local.set $5 - local.get $4 + local.set $6 + local.get $5 i32.const 4 i32.add i32.const 15 @@ -1632,40 +1630,40 @@ call $~lib/builtins/abort unreachable end - local.get $5 + local.get $6 i32.const -4 i32.and - local.get $4 + local.get $5 i32.sub - local.tee $6 + local.tee $3 i32.const 16 i32.ge_u if local.get $2 - local.get $5 + local.get $6 i32.const 2 i32.and - local.get $4 + local.get $5 i32.or i32.store - local.get $4 + local.get $5 local.get $2 i32.const 4 i32.add i32.add - local.tee $4 - local.get $6 + local.tee $5 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $2 - local.get $5 + local.get $6 i32.const -2 i32.and i32.store @@ -2363,95 +2361,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -2482,39 +2480,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 @@ -2805,7 +2803,7 @@ i32.load offset=16 i32.const 2 i32.shr_u - local.set $5 + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -2822,16 +2820,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $4 + local.tee $5 i64.const 0 i64.store - local.get $4 + local.get $5 i32.const 0 i32.store offset=8 - local.get $5 + local.get $4 i32.const 1 i32.sub - local.tee $4 + local.tee $5 i32.const 0 i32.lt_s if @@ -2842,7 +2840,7 @@ i32.const 1184 br $__inlined_func$~lib/util/string/joinStringArray end - local.get $4 + local.get $5 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -2863,7 +2861,7 @@ end loop $for-loop|0 local.get $3 - local.get $5 + local.get $4 i32.lt_s if global.get $~lib/memory/__stack_pointer @@ -2901,20 +2899,20 @@ i32.const 1 i32.shr_u local.tee $1 - local.get $4 + local.get $5 i32.mul i32.add i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $4 i32.store offset=8 i32.const 0 local.set $3 loop $for-loop|1 local.get $3 - local.get $4 + local.get $5 i32.lt_s if global.get $~lib/memory/__stack_pointer @@ -2931,7 +2929,7 @@ local.get $2 i32.const 1 i32.shl - local.get $5 + local.get $4 i32.add local.get $6 local.get $6 @@ -2954,7 +2952,7 @@ local.get $2 i32.const 1 i32.shl - local.get $5 + local.get $4 i32.add i32.const 1184 local.get $1 @@ -2974,7 +2972,7 @@ end end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.const 2 i32.shl local.get $0 @@ -2987,7 +2985,7 @@ local.get $2 i32.const 1 i32.shl - local.get $5 + local.get $4 i32.add local.get $0 local.get $0 @@ -3004,7 +3002,7 @@ i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 + local.get $4 end ) (func $~lib/util/number/utoa32_dec_lut (param $0 i32) (param $1 i32) (param $2 i32) @@ -3152,9 +3150,9 @@ local.get $0 i32.const 31 i32.shr_u - local.tee $0 - select local.tee $2 + select + local.tee $0 local.tee $1 i32.const 100000 i32.lt_u @@ -3201,22 +3199,22 @@ i32.add end end - local.get $0 + local.get $2 i32.add - local.tee $1 + local.tee $3 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.store - local.get $3 - local.get $2 local.get $1 - call $~lib/util/number/utoa32_dec_lut local.get $0 + local.get $3 + call $~lib/util/number/utoa32_dec_lut + local.get $2 if - local.get $3 + local.get $1 i32.const 45 i32.store16 end @@ -3224,7 +3222,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 end ) (func $~lib/util/number/genDigits (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (result i32) @@ -3799,64 +3797,63 @@ i32.const 101 i32.store16 offset=2 local.get $0 - local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $1 i32.const 0 i32.lt_s local.tee $2 if i32.const 0 - local.get $0 + local.get $1 i32.sub - local.set $0 + local.set $1 end - local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -3864,15 +3861,15 @@ end i32.const 1 i32.add - local.tee $0 + local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $0 i32.const 45 i32.const 43 local.get $2 select i32.store16 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.add else @@ -3987,10 +3984,10 @@ (local $3 i64) (local $4 i64) (local $5 i64) - (local $6 i64) + (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) + (local $9 i64) (local $10 i64) (local $11 i64) (local $12 i64) @@ -4016,19 +4013,19 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $7 + local.tee $6 i32.const 1 - local.get $7 + local.get $6 select i32.const 1075 i32.sub - local.tee $8 + local.tee $7 i32.const 1 i32.sub local.get $1 i64.const 4503599627370495 i64.and - local.get $7 + local.get $6 i32.const 0 i32.ne i64.extend_i32_u @@ -4043,11 +4040,11 @@ local.tee $3 i64.clz i32.wrap_i64 - local.tee $7 + local.tee $6 i32.sub - local.set $9 + local.set $8 local.get $3 - local.get $7 + local.get $6 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -4057,25 +4054,25 @@ i64.eq i32.const 1 i32.add - local.tee $7 + local.tee $6 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $8 local.get $7 + local.get $6 i32.sub - local.get $9 + local.get $8 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $9 + local.get $8 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $7 + local.tee $6 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -4084,9 +4081,9 @@ f64.add local.tee $0 i32.trunc_f64_s - local.tee $8 + local.tee $7 local.get $0 - local.get $8 + local.get $7 f64.convert_i32_s f64.ne i32.add @@ -4094,18 +4091,18 @@ i32.shr_s i32.const 1 i32.add - local.tee $8 + local.tee $7 i32.const 3 i32.shl - local.tee $9 + local.tee $8 i32.sub global.set $~lib/util/number/_K - local.get $9 + local.get $8 i32.const 3976 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $8 + local.get $7 i32.const 1 i32.shl i32.const 4672 @@ -4119,81 +4116,81 @@ local.tee $1 i64.const 4294967295 i64.and - local.set $10 + local.set $3 local.get $1 i64.const 32 i64.shr_u - local.tee $11 + local.tee $9 global.get $~lib/util/number/_frc_pow - local.tee $4 + local.tee $10 i64.const 4294967295 i64.and - local.tee $12 + local.tee $11 local.tee $1 i64.mul local.get $1 - local.get $10 + local.get $3 i64.mul i64.const 32 i64.shr_u i64.add - local.set $13 + local.set $4 global.get $~lib/util/number/_frc_plus - local.tee $3 + local.tee $1 i64.const 4294967295 i64.and - local.set $1 - local.get $3 + local.set $12 + local.get $1 i64.const 32 i64.shr_u - local.tee $5 - local.get $12 + local.tee $1 + local.get $11 i64.mul - local.get $1 + local.get $11 local.get $12 i64.mul i64.const 32 i64.shr_u i64.add - local.set $14 + local.set $5 global.get $~lib/util/number/_frc_minus - local.tee $6 + local.tee $13 i64.const 4294967295 i64.and - local.set $3 - local.get $6 + local.set $14 + local.get $13 i64.const 32 i64.shr_u - local.tee $6 - local.get $12 + local.tee $13 + local.get $11 i64.mul - local.get $3 - local.get $12 + local.get $11 + local.get $14 i64.mul i64.const 32 i64.shr_u i64.add - local.set $12 + local.set $11 local.get $2 i32.const 1 i32.shl i32.const 3920 i32.add - local.get $11 - local.get $4 + local.get $9 + local.get $10 i64.const 32 i64.shr_u - local.tee $4 - local.tee $11 + local.tee $9 + local.tee $10 i64.mul - local.get $13 + local.get $4 i64.const 32 i64.shr_u i64.add + local.get $3 local.get $10 - local.get $11 i64.mul - local.get $13 + local.get $4 i64.const 4294967295 i64.and i64.add @@ -4202,17 +4199,17 @@ i64.const 32 i64.shr_u i64.add - local.get $4 - local.get $5 + local.get $1 + local.get $9 i64.mul - local.get $14 + local.get $5 i64.const 32 i64.shr_u i64.add - local.get $1 - local.get $4 + local.get $9 + local.get $12 i64.mul - local.get $14 + local.get $5 i64.const 4294967295 i64.and i64.add @@ -4225,22 +4222,22 @@ i64.sub local.tee $1 global.get $~lib/util/number/_exp_pow - local.get $7 + local.get $6 i32.add i32.const -64 i32.sub local.get $1 - local.get $4 - local.get $6 + local.get $9 + local.get $13 i64.mul - local.get $12 + local.get $11 i64.const 32 i64.shr_u i64.add - local.get $3 - local.get $4 + local.get $9 + local.get $14 i64.mul - local.get $12 + local.get $11 i64.const 4294967295 i64.and i64.add @@ -4771,23 +4768,23 @@ local.get $0 i32.const 1 call $templateliteral/Ref#constructor - local.tee $1 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer i32.const 2 call $templateliteral/Ref#constructor - local.tee $2 + local.tee $0 i32.store offset=4 - local.get $1 + local.get $2 call $templateliteral/Ref#toString - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 5360 i32.store offset=12 - local.get $0 + local.get $1 i32.const 5360 call $~lib/string/String.__eq i32.eqz @@ -4799,29 +4796,29 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $2 call $templateliteral/Ref#toString - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $1 i32.store offset=16 - local.get $2 + local.get $0 call $templateliteral/Ref#toString - local.set $0 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=20 + local.get $1 local.get $3 - local.get $0 call $~lib/string/String#concat - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 5392 i32.store offset=12 - local.get $0 + local.get $1 i32.const 5392 call $~lib/string/String.__eq i32.eqz @@ -4834,28 +4831,28 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 call $templateliteral/Ref#toString - local.tee $0 + local.tee $1 i32.store offset=24 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 call $templateliteral/Ref#toString - local.tee $1 + local.tee $0 i32.store offset=28 global.get $~lib/memory/__stack_pointer i32.const 5440 i32.store offset=16 i32.const 5440 i32.const 1 - local.get $0 + local.get $1 call $~lib/staticarray/StaticArray<~lib/string/String>#__uset global.get $~lib/memory/__stack_pointer i32.const 5440 i32.store offset=16 i32.const 5440 i32.const 3 - local.get $1 + local.get $0 call $~lib/staticarray/StaticArray<~lib/string/String>#__uset global.get $~lib/memory/__stack_pointer i32.const 5440 @@ -5000,32 +4997,31 @@ return end local.get $0 - local.tee $1 - local.get $0 i32.const 20 i32.sub i32.load offset=16 + local.get $0 i32.add - local.set $0 + local.set $2 loop $while-continue|0 local.get $0 - local.get $1 - i32.gt_u + local.get $2 + i32.lt_u if - local.get $1 + local.get $0 i32.load - local.tee $2 + local.tee $1 if - local.get $2 + local.get $1 if - local.get $2 + local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit end end - local.get $1 + local.get $0 i32.const 4 i32.add - local.set $1 + local.set $0 br $while-continue|0 end end @@ -5191,15 +5187,15 @@ end i32.const 2 call $~lib/number/I32#toString - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store offset=12 + local.tee $1 local.get $0 + i32.store offset=12 + local.get $1 i32.const 5200 i32.store offset=16 - local.get $1 + local.get $0 i32.const 5200 call $~lib/string/String#concat local.set $0 @@ -5349,9 +5345,9 @@ local.get $1 local.get $0 i32.load offset=4 - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 i32.eqz if local.get $0 @@ -5363,13 +5359,13 @@ return end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 local.get $0 i32.load local.tee $0 i32.store offset=4 - local.get $2 local.get $1 + local.get $2 call $templateliteral/RecursiveObject#toString local.tee $1 i32.store offset=8 @@ -5619,16 +5615,16 @@ local.get $0 i32.const 20 i32.sub - local.tee $3 + local.tee $0 i32.load offset=4 i32.const 3 i32.and - local.tee $0 + local.tee $3 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $3 + local.get $0 local.get $1 local.get $2 select @@ -5637,7 +5633,7 @@ global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $0 + local.get $3 i32.const 3 i32.eq i32.and diff --git a/tests/compiler/throw.optimized.wat b/tests/compiler/throw.optimized.wat index 5a851961ed..5bbdbe50a2 100644 --- a/tests/compiler/throw.optimized.wat +++ b/tests/compiler/throw.optimized.wat @@ -642,19 +642,19 @@ return end global.get $~lib/rt/itcms/iter - local.tee $0 + local.tee $1 global.get $~lib/rt/itcms/toSpace i32.ne if - local.get $0 + local.get $1 i32.load offset=4 - local.tee $1 + local.tee $3 i32.const -4 i32.and global.set $~lib/rt/itcms/iter global.get $~lib/rt/itcms/white i32.eqz - local.get $1 + local.get $3 i32.const 3 i32.and i32.ne @@ -666,19 +666,19 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 18140 i32.lt_u if - local.get $0 + local.get $1 i32.const 0 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 else global.get $~lib/rt/itcms/total - local.get $0 + local.get $1 i32.load i32.const -4 i32.and @@ -686,7 +686,7 @@ i32.add i32.sub global.set $~lib/rt/itcms/total - local.get $0 + local.get $1 i32.const 4 i32.add local.tee $3 @@ -696,8 +696,6 @@ global.get $~lib/rt/tlsf/ROOT i32.eqz if - i32.const 0 - local.set $0 memory.size local.tee $1 i32.const 1 @@ -978,24 +976,22 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 1056 i32.store - local.get $0 + local.get $1 i32.const 1216 i32.store offset=8 - local.get $0 + local.get $1 i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - i32.const 0 - local.set $0 global.get $~lib/memory/__stack_pointer i32.const 16 i32.sub @@ -1116,19 +1112,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1138,16 +1134,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1170,7 +1165,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1180,23 +1175,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1204,7 +1199,7 @@ else i32.const 1728 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1488 @@ -1214,7 +1209,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1732 @@ -1229,28 +1224,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/typeof.optimized.wat b/tests/compiler/typeof.optimized.wat index fbc742a580..8cfb19b6bb 100644 --- a/tests/compiler/typeof.optimized.wat +++ b/tests/compiler/typeof.optimized.wat @@ -144,14 +144,14 @@ if local.get $2 i32.load16_u - local.tee $4 + local.tee $3 local.get $1 i32.load16_u - local.tee $3 + local.tee $4 i32.ne if - local.get $4 local.get $3 + local.get $4 i32.sub br $__inlined_func$~lib/util/string/compareImpl end @@ -647,9 +647,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -696,6 +693,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -1108,13 +1108,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1124,9 +1124,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1592,7 +1592,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1646,7 +1646,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1654,7 +1654,7 @@ memory.size local.tee $0 i32.const 4 - local.get $1 + local.get $3 i32.load offset=1568 local.get $0 i32.const 16 @@ -1669,16 +1669,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $0 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1686,7 +1686,7 @@ unreachable end end - local.get $1 + local.get $3 local.get $0 i32.const 16 i32.shl @@ -1694,7 +1694,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1721,22 +1721,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if local.get $0 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1745,19 +1745,19 @@ local.get $0 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1769,8 +1769,8 @@ i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.load i32.const -3 i32.and @@ -1783,11 +1783,11 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 local.set $3 local.get $0 - local.get $1 + local.get $2 global.get $~lib/rt/itcms/white i32.or i32.store offset=4 @@ -1802,7 +1802,7 @@ local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1814,7 +1814,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $2 + local.get $1 local.get $0 i32.const 20 i32.add @@ -1942,19 +1942,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1964,16 +1964,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1996,7 +1995,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -2006,23 +2005,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -2030,7 +2029,7 @@ else i32.const 1792 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1552 @@ -2040,7 +2039,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1796 @@ -2055,28 +2054,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 diff --git a/tests/compiler/wasi/abort.optimized.wat b/tests/compiler/wasi/abort.optimized.wat index bee6e75d84..56a0611a36 100644 --- a/tests/compiler/wasi/abort.optimized.wat +++ b/tests/compiler/wasi/abort.optimized.wat @@ -46,28 +46,28 @@ if local.get $0 i32.load16_u - local.tee $5 + local.tee $4 i32.const 128 i32.lt_u if (result i32) local.get $1 - local.get $5 + local.get $4 i32.store8 local.get $1 i32.const 1 i32.add else - local.get $5 + local.get $4 i32.const 2048 i32.lt_u if (result i32) local.get $1 - local.get $5 + local.get $4 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $5 + local.get $4 i32.const 63 i32.and i32.const 128 @@ -80,13 +80,13 @@ i32.const 2 i32.add else - local.get $5 + local.get $4 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $5 + local.get $4 i32.const 56320 i32.lt_u local.get $3 @@ -98,21 +98,21 @@ if local.get $0 i32.load16_u offset=2 - local.tee $4 + local.tee $5 i32.const 64512 i32.and i32.const 56320 i32.eq if local.get $1 - local.get $5 + local.get $4 i32.const 1023 i32.and i32.const 10 i32.shl i32.const 65536 i32.add - local.get $4 + local.get $5 i32.const 1023 i32.and i32.or @@ -163,12 +163,12 @@ end end local.get $1 - local.get $5 + local.get $4 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $5 + local.get $4 i32.const 6 i32.shr_u i32.const 63 @@ -180,7 +180,7 @@ i32.or i32.store16 local.get $1 - local.get $5 + local.get $4 i32.const 63 i32.and i32.const 128 @@ -231,19 +231,19 @@ call $~lib/string/String.UTF8.encodeUnsafe@varargs i32.const 19 i32.add - local.tee $3 + local.tee $0 i32.const 544106784 i32.store i32.const 1212 i32.load i32.const 1 i32.shr_u - local.set $0 + local.set $3 i32.const 3 global.set $~argumentsLength i32.const 1216 - local.get $0 local.get $3 + local.get $0 i32.const 4 i32.add local.tee $0 diff --git a/tests/compiler/wasi/trace.optimized.wat b/tests/compiler/wasi/trace.optimized.wat index 80d0aa26d7..82395dde1d 100644 --- a/tests/compiler/wasi/trace.optimized.wat +++ b/tests/compiler/wasi/trace.optimized.wat @@ -67,28 +67,28 @@ if local.get $0 i32.load16_u - local.tee $5 + local.tee $4 i32.const 128 i32.lt_u if (result i32) local.get $1 - local.get $5 + local.get $4 i32.store8 local.get $1 i32.const 1 i32.add else - local.get $5 + local.get $4 i32.const 2048 i32.lt_u if (result i32) local.get $1 - local.get $5 + local.get $4 i32.const 6 i32.shr_u i32.const 192 i32.or - local.get $5 + local.get $4 i32.const 63 i32.and i32.const 128 @@ -101,13 +101,13 @@ i32.const 2 i32.add else - local.get $5 + local.get $4 i32.const 63488 i32.and i32.const 55296 i32.eq if - local.get $5 + local.get $4 i32.const 56320 i32.lt_u local.get $3 @@ -119,21 +119,21 @@ if local.get $0 i32.load16_u offset=2 - local.tee $4 + local.tee $5 i32.const 64512 i32.and i32.const 56320 i32.eq if local.get $1 - local.get $5 + local.get $4 i32.const 1023 i32.and i32.const 10 i32.shl i32.const 65536 i32.add - local.get $4 + local.get $5 i32.const 1023 i32.and i32.or @@ -184,12 +184,12 @@ end end local.get $1 - local.get $5 + local.get $4 i32.const 12 i32.shr_u i32.const 224 i32.or - local.get $5 + local.get $4 i32.const 6 i32.shr_u i32.const 63 @@ -201,7 +201,7 @@ i32.or i32.store16 local.get $1 - local.get $5 + local.get $4 i32.const 63 i32.and i32.const 128 @@ -866,9 +866,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -915,6 +912,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -2055,95 +2055,95 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 - i32.const 2 - i32.add - local.tee $1 local.get $0 i32.const 2 i32.add local.tee $0 + local.get $1 + i32.const 2 + i32.add + local.tee $1 i32.load8_u i32.store8 - local.get $1 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $1 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 8 @@ -2174,39 +2174,39 @@ local.get $0 i32.const 2 i32.add - local.tee $3 + local.tee $0 local.get $1 i32.const 2 i32.add - local.tee $0 + local.tee $1 i32.load8_u i32.store8 - local.get $3 local.get $0 + local.get $1 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.tee $1 - local.get $0 + local.tee $0 + local.get $1 i32.const 2 i32.add local.tee $3 i32.load8_u i32.store8 - local.get $1 + local.get $3 i32.const 2 i32.add - local.set $0 - local.get $1 + local.set $1 + local.get $0 local.get $3 i32.load8_u offset=1 i32.store8 offset=1 - local.get $3 + local.get $0 i32.const 2 i32.add - local.set $1 + local.set $0 end local.get $2 i32.const 4 @@ -2716,64 +2716,63 @@ i32.const 101 i32.store16 offset=2 local.get $0 - local.tee $1 i32.const 4 i32.add local.get $3 i32.const 1 i32.sub - local.tee $0 + local.tee $1 i32.const 0 i32.lt_s local.tee $2 if i32.const 0 - local.get $0 + local.get $1 i32.sub - local.set $0 + local.set $1 end - local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $1 i32.const 100000000 i32.ge_u i32.add @@ -2781,15 +2780,15 @@ end i32.const 1 i32.add - local.tee $0 + local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $1 + local.get $0 i32.const 45 i32.const 43 local.get $2 select i32.store16 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.add else @@ -2905,13 +2904,13 @@ (local $5 i64) (local $6 i64) (local $7 i64) - (local $8 i64) - (local $9 i64) - (local $10 i64) + (local $8 i32) + (local $9 i32) + (local $10 i32) (local $11 i64) - (local $12 i32) - (local $13 i32) - (local $14 i32) + (local $12 i64) + (local $13 i64) + (local $14 i64) (local $15 i64) (local $16 i64) local.get $1 @@ -2934,19 +2933,19 @@ i64.const 52 i64.shr_u i32.wrap_i64 - local.tee $12 + local.tee $8 i32.const 1 - local.get $12 + local.get $8 select i32.const 1075 i32.sub - local.tee $13 + local.tee $9 i32.const 1 i32.sub local.get $2 i64.const 4503599627370495 i64.and - local.get $12 + local.get $8 i32.const 0 i32.ne i64.extend_i32_u @@ -2961,11 +2960,11 @@ local.tee $4 i64.clz i32.wrap_i64 - local.tee $12 + local.tee $8 i32.sub - local.set $14 + local.set $10 local.get $4 - local.get $12 + local.get $8 i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_plus @@ -2975,25 +2974,25 @@ i64.eq i32.const 1 i32.add - local.tee $12 + local.tee $8 i64.extend_i32_s i64.shl i64.const 1 i64.sub - local.get $13 - local.get $12 + local.get $9 + local.get $8 i32.sub - local.get $14 + local.get $10 i32.sub i64.extend_i32_s i64.shl global.set $~lib/util/number/_frc_minus - local.get $14 + local.get $10 global.set $~lib/util/number/_exp i32.const 348 i32.const -61 global.get $~lib/util/number/_exp - local.tee $12 + local.tee $8 i32.sub f64.convert_i32_s f64.const 0.30102999566398114 @@ -3002,9 +3001,9 @@ f64.add local.tee $1 i32.trunc_f64_s - local.tee $13 + local.tee $9 local.get $1 - local.get $13 + local.get $9 f64.convert_i32_s f64.ne i32.add @@ -3012,18 +3011,18 @@ i32.shr_s i32.const 1 i32.add - local.tee $13 + local.tee $9 i32.const 3 i32.shl - local.tee $14 + local.tee $10 i32.sub global.set $~lib/util/number/_K - local.get $14 + local.get $10 i32.const 1328 i32.add i64.load global.set $~lib/util/number/_frc_pow - local.get $13 + local.get $9 i32.const 1 i32.shl i32.const 2024 @@ -3034,85 +3033,85 @@ local.get $2 i64.clz i64.shl - local.tee $4 + local.tee $2 i64.const 4294967295 i64.and - local.set $2 - local.get $4 + local.set $11 + local.get $2 i64.const 32 i64.shr_u - local.tee $9 + local.tee $5 global.get $~lib/util/number/_frc_pow - local.tee $15 + local.tee $7 i64.const 4294967295 i64.and - local.tee $8 - local.tee $4 + local.tee $12 + local.tee $2 i64.mul local.get $2 - local.get $4 + local.get $11 i64.mul i64.const 32 i64.shr_u i64.add - local.set $4 + local.set $13 global.get $~lib/util/number/_frc_plus - local.tee $6 + local.tee $4 i64.const 4294967295 i64.and - local.set $5 - local.get $6 + local.set $2 + local.get $4 i64.const 32 i64.shr_u - local.tee $10 - local.get $8 + local.tee $6 + local.get $12 i64.mul - local.get $5 - local.get $8 + local.get $2 + local.get $12 i64.mul i64.const 32 i64.shr_u i64.add - local.set $6 + local.set $14 global.get $~lib/util/number/_frc_minus - local.tee $11 + local.tee $15 i64.const 4294967295 i64.and - local.set $7 - local.get $11 + local.set $4 + local.get $15 i64.const 32 i64.shr_u - local.tee $11 - local.get $8 + local.tee $15 + local.get $12 i64.mul - local.get $7 - local.get $8 + local.get $4 + local.get $12 i64.mul i64.const 32 i64.shr_u i64.add - local.set $8 + local.set $12 local.get $3 i32.const 1 i32.shl local.get $0 i32.add local.get $0 - local.get $9 - local.get $15 + local.get $5 + local.get $7 i64.const 32 i64.shr_u - local.tee $15 local.tee $16 + local.tee $7 i64.mul - local.get $4 + local.get $13 i64.const 32 i64.shr_u i64.add - local.get $2 - local.get $16 + local.get $7 + local.get $11 i64.mul - local.get $4 + local.get $13 i64.const 4294967295 i64.and i64.add @@ -3121,17 +3120,17 @@ i64.const 32 i64.shr_u i64.add - local.get $10 - local.get $15 - i64.mul local.get $6 + local.get $16 + i64.mul + local.get $14 i64.const 32 i64.shr_u i64.add - local.get $5 - local.get $15 + local.get $2 + local.get $16 i64.mul - local.get $6 + local.get $14 i64.const 4294967295 i64.and i64.add @@ -3144,22 +3143,22 @@ i64.sub local.tee $2 global.get $~lib/util/number/_exp_pow - local.get $12 + local.get $8 i32.add i32.const -64 i32.sub local.get $2 - local.get $11 local.get $15 + local.get $16 i64.mul - local.get $8 + local.get $12 i64.const 32 i64.shr_u i64.add - local.get $7 - local.get $15 + local.get $4 + local.get $16 i64.mul - local.get $8 + local.get $12 i64.const 4294967295 i64.and i64.add @@ -3329,6 +3328,13 @@ br $while-continue|0 end end + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + call $~lib/rt/tlsf/initialize + end + global.get $~lib/rt/tlsf/ROOT + local.tee $8 local.get $7 i32.const 56 local.get $7 @@ -3337,15 +3343,7 @@ select i32.const 13 i32.add - local.set $6 - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - call $~lib/rt/tlsf/initialize - end - global.get $~lib/rt/tlsf/ROOT - local.tee $9 - local.get $6 + local.tee $6 i32.const 1073741820 i32.gt_u if @@ -3370,32 +3368,32 @@ i32.const 4 i32.sub end - local.tee $7 + local.tee $9 call $~lib/rt/tlsf/searchBlock local.tee $6 i32.eqz if memory.size local.tee $6 - local.get $7 + local.get $9 i32.const 536870910 i32.lt_u if (result i32) i32.const 1 i32.const 27 - local.get $7 + local.get $9 i32.clz i32.sub i32.shl i32.const 1 i32.sub - local.get $7 + local.get $9 i32.add else - local.get $7 + local.get $9 end i32.const 4 - local.get $9 + local.get $8 i32.load offset=1568 local.get $6 i32.const 16 @@ -3411,16 +3409,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $8 + local.tee $7 local.get $6 - local.get $8 + local.get $7 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $8 + local.get $7 memory.grow i32.const 0 i32.lt_s @@ -3428,7 +3426,7 @@ unreachable end end - local.get $9 + local.get $8 local.get $6 i32.const 16 i32.shl @@ -3436,8 +3434,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory + local.get $8 local.get $9 - local.get $7 call $~lib/rt/tlsf/searchBlock local.tee $6 i32.eqz @@ -3454,7 +3452,7 @@ i32.load i32.const -4 i32.and - local.get $7 + local.get $9 i32.lt_u if i32.const 0 @@ -3464,13 +3462,13 @@ call $~lib/wasi/index/abort unreachable end - local.get $9 + local.get $8 local.get $6 call $~lib/rt/tlsf/removeBlock local.get $6 i32.load local.set $10 - local.get $7 + local.get $9 i32.const 4 i32.add i32.const 15 @@ -3486,9 +3484,9 @@ local.get $10 i32.const -4 i32.and - local.get $7 + local.get $9 i32.sub - local.tee $8 + local.tee $7 i32.const 16 i32.ge_u if @@ -3496,23 +3494,23 @@ local.get $10 i32.const 2 i32.and - local.get $7 + local.get $9 i32.or i32.store - local.get $7 + local.get $9 local.get $6 i32.const 4 i32.add i32.add - local.tee $7 - local.get $8 + local.tee $9 + local.get $7 i32.const 4 i32.sub i32.const 1 i32.or i32.store + local.get $8 local.get $9 - local.get $7 call $~lib/rt/tlsf/insertBlock else local.get $6 diff --git a/tests/compiler/while.optimized.wat b/tests/compiler/while.optimized.wat index 14c81558dd..1414016541 100644 --- a/tests/compiler/while.optimized.wat +++ b/tests/compiler/while.optimized.wat @@ -501,9 +501,6 @@ i32.const 4 i32.sub local.set $1 - local.get $2 - i32.const -16 - i32.and local.get $0 i32.load offset=1568 local.tee $4 @@ -550,6 +547,9 @@ unreachable end end + local.get $2 + i32.const -16 + i32.and local.get $1 i32.sub local.tee $2 @@ -962,13 +962,13 @@ if (result i32) local.get $1 i32.ctz - local.tee $1 + local.tee $2 i32.const 2 i32.shl local.get $0 i32.add i32.load offset=4 - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -978,9 +978,9 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i32.ctz local.get $1 + i32.ctz + local.get $2 i32.const 4 i32.shl i32.add @@ -1567,7 +1567,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store global.get $~lib/rt/itcms/total @@ -1621,7 +1621,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $1 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1629,7 +1629,7 @@ memory.size local.tee $0 i32.const 4 - local.get $1 + local.get $3 i32.load offset=1568 local.get $0 i32.const 16 @@ -1644,16 +1644,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $2 local.get $0 - local.get $3 + local.get $2 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $2 memory.grow i32.const 0 i32.lt_s @@ -1661,7 +1661,7 @@ unreachable end end - local.get $1 + local.get $3 local.get $0 i32.const 16 i32.shl @@ -1669,7 +1669,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $1 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1696,22 +1696,22 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $3 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load - local.tee $3 + local.tee $4 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $4 + local.tee $2 i32.const 16 i32.ge_u if local.get $0 - local.get $3 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1720,19 +1720,19 @@ local.get $0 i32.const 32 i32.add - local.tee $3 - local.get $4 + local.tee $4 + local.get $2 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $1 local.get $3 + local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $4 i32.const -2 i32.and i32.store @@ -1744,8 +1744,8 @@ i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.load i32.const -3 i32.and @@ -1758,11 +1758,11 @@ i32.const 0 i32.store offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load offset=8 local.set $3 local.get $0 - local.get $1 + local.get $2 global.get $~lib/rt/itcms/white i32.or i32.store offset=4 @@ -1777,7 +1777,7 @@ local.get $0 i32.or i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/rt/itcms/total @@ -1789,7 +1789,7 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $2 + local.get $1 local.get $0 i32.const 20 i32.add @@ -1809,19 +1809,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if global.get $~lib/rt/itcms/iter - local.get $0 + local.get $1 i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -1831,16 +1831,15 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $0 - local.tee $1 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $2 + local.tee $0 i32.eqz if i32.const 0 @@ -1863,7 +1862,7 @@ end local.get $1 i32.load offset=8 - local.tee $1 + local.tee $2 i32.eqz if i32.const 0 @@ -1873,23 +1872,23 @@ call $~lib/builtins/abort unreachable end + local.get $0 local.get $2 - local.get $1 i32.store offset=8 - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load offset=4 i32.const 3 i32.and - local.get $2 + local.get $0 i32.or i32.store offset=4 end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 1 i32.le_u if (result i32) @@ -1897,7 +1896,7 @@ else i32.const 1488 i32.load - local.get $1 + local.get $0 i32.lt_u if i32.const 1296 @@ -1907,7 +1906,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 3 i32.shl i32.const 1492 @@ -1922,28 +1921,28 @@ else i32.const 2 end - local.set $1 + local.set $3 local.get $2 i32.load offset=8 - local.set $3 - local.get $0 + local.set $0 local.get $1 local.get $2 + local.get $3 i32.or i32.store offset=4 + local.get $1 local.get $0 - local.get $3 i32.store offset=8 - local.get $3 - local.get $3 + local.get $0 + local.get $0 i32.load offset=4 i32.const 3 i32.and - local.get $0 + local.get $1 i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 From 96a4344e1a26475ae21a9daedda8886d3a02b0f9 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Fri, 24 Sep 2021 02:00:38 +0300 Subject: [PATCH 23/54] do later --- src/module.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/module.ts b/src/module.ts index d0f614eec0..66115bcbe5 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2366,11 +2366,11 @@ export class Module { } else { passes.push("precompute"); } - passes.push("ssa-nomerge"); passes.push("directize"); // replace indirect with direct calls passes.push("dae-optimizing"); // reduce arity passes.push("inlining-optimizing"); // and inline if possible if (optimizeLevel >= 2 || shrinkLevel >= 1) { + passes.push("ssa-nomerge"); passes.push("rse"); // move code on early return (after CFG cleanup) passes.push("code-pushing"); From a1384126a7492c49c82ea9719c87b8936ab6c927 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Fri, 24 Sep 2021 10:53:00 +0300 Subject: [PATCH 24/54] update --- package-lock.json | 14 +- package.json | 2 +- src/module.ts | 3 +- tests/compiler/call-super.optimized.wat | 8 +- tests/compiler/class-implements.optimized.wat | 24 +- .../class-overloading-cast.optimized.wat | 40 +- .../compiler/class-overloading.optimized.wat | 56 +- tests/compiler/class.optimized.wat | 8 +- tests/compiler/constructor.optimized.wat | 96 ++-- tests/compiler/do.optimized.wat | 8 +- .../empty-exportruntime.optimized.wat | 8 +- tests/compiler/empty-new.optimized.wat | 8 +- tests/compiler/exports.optimized.wat | 8 +- .../exportstar-rereexport.optimized.wat | 32 +- .../extends-baseaggregate.optimized.wat | 24 +- .../compiler/extends-recursive.optimized.wat | 8 +- .../field-initialization.optimized.wat | 40 +- tests/compiler/field.optimized.wat | 16 +- tests/compiler/for.optimized.wat | 8 +- tests/compiler/function-call.optimized.wat | 16 +- .../function-expression.optimized.wat | 8 +- tests/compiler/getter-call.optimized.wat | 8 +- .../implicit-getter-setter.optimized.wat | 8 +- tests/compiler/infer-array.optimized.wat | 16 +- tests/compiler/infer-generic.optimized.wat | 8 +- tests/compiler/inlining.optimized.wat | 8 +- tests/compiler/instanceof-class.optimized.wat | 24 +- tests/compiler/issues/1095.optimized.wat | 8 +- tests/compiler/issues/1225.optimized.wat | 16 +- tests/compiler/issues/1699.optimized.wat | 16 +- tests/compiler/logical.optimized.wat | 8 +- tests/compiler/managed-cast.optimized.wat | 8 +- tests/compiler/new.optimized.wat | 56 +- tests/compiler/number.optimized.wat | 8 +- tests/compiler/object-literal.optimized.wat | 80 +-- .../optional-typeparameters.optimized.wat | 24 +- tests/compiler/reexport.optimized.wat | 16 +- tests/compiler/rereexport.optimized.wat | 32 +- tests/compiler/resolve-access.optimized.wat | 8 +- tests/compiler/resolve-binary.optimized.wat | 32 +- .../resolve-elementaccess.optimized.wat | 51 +- .../resolve-function-expression.optimized.wat | 8 +- tests/compiler/resolve-nested.optimized.wat | 8 +- tests/compiler/resolve-new.optimized.wat | 16 +- .../resolve-propertyaccess.optimized.wat | 8 +- tests/compiler/resolve-ternary.optimized.wat | 8 +- tests/compiler/resolve-unary.optimized.wat | 24 +- tests/compiler/rt/finalize.optimized.wat | 8 +- tests/compiler/rt/instanceof.optimized.wat | 56 +- .../runtime-incremental-export.optimized.wat | 8 +- .../rt/runtime-minimal-export.optimized.wat | 8 +- tests/compiler/std-wasi/console.optimized.wat | 155 +++--- tests/compiler/std-wasi/crypto.optimized.wat | 179 ++++--- tests/compiler/std-wasi/process.optimized.wat | 195 ++++--- .../compiler/std/array-literal.optimized.wat | 56 +- tests/compiler/std/array.optimized.wat | 61 ++- tests/compiler/std/arraybuffer.optimized.wat | 16 +- tests/compiler/std/dataview.optimized.wat | 8 +- tests/compiler/std/date.optimized.wat | 24 +- tests/compiler/std/map.optimized.wat | 8 +- tests/compiler/std/new.optimized.wat | 16 +- .../std/operator-overloading.optimized.wat | 480 +++++++++--------- tests/compiler/std/set.optimized.wat | 8 +- tests/compiler/std/static-array.optimized.wat | 8 +- tests/compiler/std/staticarray.optimized.wat | 40 +- .../std/string-casemapping.optimized.wat | 8 +- .../std/string-encoding.optimized.wat | 8 +- tests/compiler/std/string.optimized.wat | 24 +- tests/compiler/std/symbol.optimized.wat | 56 +- tests/compiler/std/typedarray.optimized.wat | 8 +- tests/compiler/std/uri.optimized.wat | 8 +- tests/compiler/super-inline.optimized.wat | 24 +- tests/compiler/templateliteral.optimized.wat | 32 +- tests/compiler/throw.optimized.wat | 8 +- tests/compiler/typeof.optimized.wat | 16 +- tests/compiler/wasi/abort.optimized.wat | 139 +++-- tests/compiler/wasi/trace.optimized.wat | 139 +++-- tests/compiler/while.optimized.wat | 8 +- 78 files changed, 1381 insertions(+), 1373 deletions(-) diff --git a/package-lock.json b/package-lock.json index 82a803a744..71235b0bd9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "102.0.0-nightly.20210923", + "binaryen": "102.0.0-nightly.20210924", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" @@ -733,9 +733,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "102.0.0-nightly.20210923", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210923.tgz", - "integrity": "sha512-rdW45DGXB8+u8rpwFU3qyg4/RNJya5Vj9O8Yw8bVdvB/dg/K0LBNcV3/oPO3zL14Y4gJfvP1vQvBz+5RuZIe+A==", + "version": "102.0.0-nightly.20210924", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210924.tgz", + "integrity": "sha512-uLHHa6vC2qpfaolL5y5Rs7GnzRcSr1UTWvMya6VURMBoCG+2WqB/DvrbR240HuQplvaZMIX0xnXkzArcGWAaQA==", "bin": { "wasm-opt": "bin/wasm-opt" } @@ -3508,9 +3508,9 @@ "dev": true }, "binaryen": { - "version": "102.0.0-nightly.20210923", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210923.tgz", - "integrity": "sha512-rdW45DGXB8+u8rpwFU3qyg4/RNJya5Vj9O8Yw8bVdvB/dg/K0LBNcV3/oPO3zL14Y4gJfvP1vQvBz+5RuZIe+A==" + "version": "102.0.0-nightly.20210924", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210924.tgz", + "integrity": "sha512-uLHHa6vC2qpfaolL5y5Rs7GnzRcSr1UTWvMya6VURMBoCG+2WqB/DvrbR240HuQplvaZMIX0xnXkzArcGWAaQA==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 9392b11498..839703f799 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "url": "https://github.com/AssemblyScript/assemblyscript/issues" }, "dependencies": { - "binaryen": "102.0.0-nightly.20210923", + "binaryen": "102.0.0-nightly.20210924", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" diff --git a/src/module.ts b/src/module.ts index 66115bcbe5..330d8055e5 100644 --- a/src/module.ts +++ b/src/module.ts @@ -76,7 +76,8 @@ export enum FeatureFlags { GC = 1024 /* _BinaryenFeatureGC */, Memory64 = 2048 /* _BinaryenFeatureMemory64 */, TypedFunctionReferences = 4096 /* _BinaryenFeatureTypedFunctionReferences */, - All = 16383 /* _BinaryenFeatureAll */ + RelaxedSIMD = 16384 /* _BinaryenFeatureRelaxedSIMD */, + All = 32767 /* _BinaryenFeatureAll */ } /** Binaryen expression id constants. */ diff --git a/tests/compiler/call-super.optimized.wat b/tests/compiler/call-super.optimized.wat index 22604b56d6..63cc007b04 100644 --- a/tests/compiler/call-super.optimized.wat +++ b/tests/compiler/call-super.optimized.wat @@ -1573,12 +1573,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/class-implements.optimized.wat b/tests/compiler/class-implements.optimized.wat index 697a246187..3c5d70293b 100644 --- a/tests/compiler/class-implements.optimized.wat +++ b/tests/compiler/class-implements.optimized.wat @@ -50,21 +50,21 @@ (local $1 i32) global.get $class-implements/a local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $class-implements/c local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1248 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1272,12 +1272,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/class-overloading-cast.optimized.wat b/tests/compiler/class-overloading-cast.optimized.wat index 60036ef8ca..8917b77a9d 100644 --- a/tests/compiler/class-overloading-cast.optimized.wat +++ b/tests/compiler/class-overloading-cast.optimized.wat @@ -52,39 +52,39 @@ (local $1 i32) global.get $class-overloading-cast/v local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $class-overloading-cast/v2 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $class-overloading-cast/v3 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $class-overloading-cast/c local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1248 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1411,12 +1411,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/class-overloading.optimized.wat b/tests/compiler/class-overloading.optimized.wat index 1ccd39849e..7c059e09f0 100644 --- a/tests/compiler/class-overloading.optimized.wat +++ b/tests/compiler/class-overloading.optimized.wat @@ -64,57 +64,57 @@ (local $1 i32) global.get $class-overloading/which local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $class-overloading/a local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $class-overloading/c local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $class-overloading/ia local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $class-overloading/ic local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $class-overloading/b2 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1280 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1475,12 +1475,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/class.optimized.wat b/tests/compiler/class.optimized.wat index 30f36062c1..514c3eae61 100644 --- a/tests/compiler/class.optimized.wat +++ b/tests/compiler/class.optimized.wat @@ -1914,12 +1914,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end ) (func $~start diff --git a/tests/compiler/constructor.optimized.wat b/tests/compiler/constructor.optimized.wat index 23d8925d13..70db53ad67 100644 --- a/tests/compiler/constructor.optimized.wat +++ b/tests/compiler/constructor.optimized.wat @@ -51,102 +51,102 @@ (local $1 i32) global.get $constructor/emptyCtor local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $constructor/emptyCtorWithFieldInit local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $constructor/emptyCtorWithFieldNoInit local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $constructor/emptyCtorWithFieldAccess local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $constructor/none local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $constructor/justFieldInit local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $constructor/justFieldNoInit local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $constructor/ctorReturns local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $constructor/ctorConditionallyReturns local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $constructor/ctorConditionallyReturnsThis local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $constructor/ctorFieldInitOrder local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1248 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -2072,12 +2072,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/do.optimized.wat b/tests/compiler/do.optimized.wat index e6939e3ca3..f9dac8287c 100644 --- a/tests/compiler/do.optimized.wat +++ b/tests/compiler/do.optimized.wat @@ -1463,12 +1463,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/empty-exportruntime.optimized.wat b/tests/compiler/empty-exportruntime.optimized.wat index d8690db61b..0004c63cf2 100644 --- a/tests/compiler/empty-exportruntime.optimized.wat +++ b/tests/compiler/empty-exportruntime.optimized.wat @@ -1856,12 +1856,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/empty-new.optimized.wat b/tests/compiler/empty-new.optimized.wat index 81be916577..d1c5ba97e5 100644 --- a/tests/compiler/empty-new.optimized.wat +++ b/tests/compiler/empty-new.optimized.wat @@ -1008,12 +1008,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/exports.optimized.wat b/tests/compiler/exports.optimized.wat index 0f798b9d71..abd6e74c4c 100644 --- a/tests/compiler/exports.optimized.wat +++ b/tests/compiler/exports.optimized.wat @@ -1343,12 +1343,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/exportstar-rereexport.optimized.wat b/tests/compiler/exportstar-rereexport.optimized.wat index bcc664d717..49fe59dc1f 100644 --- a/tests/compiler/exportstar-rereexport.optimized.wat +++ b/tests/compiler/exportstar-rereexport.optimized.wat @@ -77,30 +77,30 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $rereexport/car local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $rereexport/exportsNamespaceCar local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $reexport/car local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $~lib/rt/itcms/pinSpace local.tee $1 @@ -1081,12 +1081,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/extends-baseaggregate.optimized.wat b/tests/compiler/extends-baseaggregate.optimized.wat index cf9ac09eb9..3dd0314f6c 100644 --- a/tests/compiler/extends-baseaggregate.optimized.wat +++ b/tests/compiler/extends-baseaggregate.optimized.wat @@ -2625,12 +2625,12 @@ local.get $1 i32.load local.tee $2 + i32.const 0 + local.get $2 + select if local.get $2 - if - local.get $2 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $1 i32.const 4 @@ -2678,24 +2678,24 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end local.get $0 i32.load offset=16 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end ) (func $~start diff --git a/tests/compiler/extends-recursive.optimized.wat b/tests/compiler/extends-recursive.optimized.wat index 0ffb90e7b3..d4efd0f2f6 100644 --- a/tests/compiler/extends-recursive.optimized.wat +++ b/tests/compiler/extends-recursive.optimized.wat @@ -1407,12 +1407,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end ) (func $~start diff --git a/tests/compiler/field-initialization.optimized.wat b/tests/compiler/field-initialization.optimized.wat index 2e626d3b3d..fbf528638f 100644 --- a/tests/compiler/field-initialization.optimized.wat +++ b/tests/compiler/field-initialization.optimized.wat @@ -1857,34 +1857,34 @@ local.get $0 i32.load offset=4 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end local.get $0 i32.load offset=4 local.tee $1 + i32.const 0 + local.get $1 + select if local.get $1 - if - local.get $1 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 i32.load offset=8 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end @@ -1893,24 +1893,24 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end ) (func $~start diff --git a/tests/compiler/field.optimized.wat b/tests/compiler/field.optimized.wat index 52e883a138..05d9b59408 100644 --- a/tests/compiler/field.optimized.wat +++ b/tests/compiler/field.optimized.wat @@ -2767,12 +2767,12 @@ local.get $1 i32.load local.tee $3 + i32.const 0 + local.get $3 + select if local.get $3 - if - local.get $3 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $1 i32.const 4 @@ -2804,12 +2804,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end ) (func $~start diff --git a/tests/compiler/for.optimized.wat b/tests/compiler/for.optimized.wat index 51efd3785d..a0f6c9c2d6 100644 --- a/tests/compiler/for.optimized.wat +++ b/tests/compiler/for.optimized.wat @@ -1459,12 +1459,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/function-call.optimized.wat b/tests/compiler/function-call.optimized.wat index ab0ddc4f4d..e04b314636 100644 --- a/tests/compiler/function-call.optimized.wat +++ b/tests/compiler/function-call.optimized.wat @@ -72,12 +72,12 @@ (local $1 i32) global.get $function-call/foo local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1472 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1063,12 +1063,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/function-expression.optimized.wat b/tests/compiler/function-expression.optimized.wat index 0782a1e7a6..2ea72fa32f 100644 --- a/tests/compiler/function-expression.optimized.wat +++ b/tests/compiler/function-expression.optimized.wat @@ -1513,12 +1513,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end ) (func $~start diff --git a/tests/compiler/getter-call.optimized.wat b/tests/compiler/getter-call.optimized.wat index 0554f548e7..c58e73f395 100644 --- a/tests/compiler/getter-call.optimized.wat +++ b/tests/compiler/getter-call.optimized.wat @@ -1020,12 +1020,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/implicit-getter-setter.optimized.wat b/tests/compiler/implicit-getter-setter.optimized.wat index 2f135b7473..dc8880590d 100644 --- a/tests/compiler/implicit-getter-setter.optimized.wat +++ b/tests/compiler/implicit-getter-setter.optimized.wat @@ -1416,12 +1416,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end ) (func $~start diff --git a/tests/compiler/infer-array.optimized.wat b/tests/compiler/infer-array.optimized.wat index 2e53df9641..19375a6bf8 100644 --- a/tests/compiler/infer-array.optimized.wat +++ b/tests/compiler/infer-array.optimized.wat @@ -2729,12 +2729,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end @@ -2768,12 +2768,12 @@ local.get $1 i32.load local.tee $3 + i32.const 0 + local.get $3 + select if local.get $3 - if - local.get $3 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $1 i32.const 4 diff --git a/tests/compiler/infer-generic.optimized.wat b/tests/compiler/infer-generic.optimized.wat index daaff704d5..2f9eb9d937 100644 --- a/tests/compiler/infer-generic.optimized.wat +++ b/tests/compiler/infer-generic.optimized.wat @@ -1299,12 +1299,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/inlining.optimized.wat b/tests/compiler/inlining.optimized.wat index 8a24ac24cf..c73ef7ccb5 100644 --- a/tests/compiler/inlining.optimized.wat +++ b/tests/compiler/inlining.optimized.wat @@ -1579,12 +1579,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/instanceof-class.optimized.wat b/tests/compiler/instanceof-class.optimized.wat index 431541cf30..65d1db166c 100644 --- a/tests/compiler/instanceof-class.optimized.wat +++ b/tests/compiler/instanceof-class.optimized.wat @@ -42,21 +42,21 @@ (local $1 i32) global.get $instanceof-class/a local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $instanceof-class/b local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1248 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1491,12 +1491,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/issues/1095.optimized.wat b/tests/compiler/issues/1095.optimized.wat index 79b547bb76..1274513ebf 100644 --- a/tests/compiler/issues/1095.optimized.wat +++ b/tests/compiler/issues/1095.optimized.wat @@ -1407,12 +1407,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end ) (func $~start diff --git a/tests/compiler/issues/1225.optimized.wat b/tests/compiler/issues/1225.optimized.wat index 5030815a44..9b5862dcdc 100644 --- a/tests/compiler/issues/1225.optimized.wat +++ b/tests/compiler/issues/1225.optimized.wat @@ -43,12 +43,12 @@ (local $1 i32) global.get $issues/1225/x local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1248 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1422,12 +1422,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/issues/1699.optimized.wat b/tests/compiler/issues/1699.optimized.wat index fe451d89d4..1cf54acd96 100644 --- a/tests/compiler/issues/1699.optimized.wat +++ b/tests/compiler/issues/1699.optimized.wat @@ -2999,12 +2999,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end @@ -3027,12 +3027,12 @@ local.get $1 i32.load local.tee $3 + i32.const 0 + local.get $3 + select if local.get $3 - if - local.get $3 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $1 i32.const 4 diff --git a/tests/compiler/logical.optimized.wat b/tests/compiler/logical.optimized.wat index c46c4a4cce..630804aaa4 100644 --- a/tests/compiler/logical.optimized.wat +++ b/tests/compiler/logical.optimized.wat @@ -1013,12 +1013,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/managed-cast.optimized.wat b/tests/compiler/managed-cast.optimized.wat index b22eef3b75..8ff8291a16 100644 --- a/tests/compiler/managed-cast.optimized.wat +++ b/tests/compiler/managed-cast.optimized.wat @@ -1246,12 +1246,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/new.optimized.wat b/tests/compiler/new.optimized.wat index 2188d63230..47d062d1c2 100644 --- a/tests/compiler/new.optimized.wat +++ b/tests/compiler/new.optimized.wat @@ -44,57 +44,57 @@ (local $1 i32) global.get $new/ref local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $new/gen local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $new/ref2 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $new/genext local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $new/genext2 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $new/genext3 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1248 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1302,12 +1302,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/number.optimized.wat b/tests/compiler/number.optimized.wat index 085f441ce1..cbce538101 100644 --- a/tests/compiler/number.optimized.wat +++ b/tests/compiler/number.optimized.wat @@ -3567,12 +3567,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/object-literal.optimized.wat b/tests/compiler/object-literal.optimized.wat index a2659ddb56..7faba5f4d2 100644 --- a/tests/compiler/object-literal.optimized.wat +++ b/tests/compiler/object-literal.optimized.wat @@ -2576,12 +2576,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end @@ -2590,82 +2590,82 @@ local.get $0 i32.load local.tee $1 + i32.const 0 + local.get $1 + select if local.get $1 - if - local.get $1 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 i32.load offset=4 local.tee $1 + i32.const 0 + local.get $1 + select if local.get $1 - if - local.get $1 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 i32.load offset=8 local.tee $1 + i32.const 0 + local.get $1 + select if local.get $1 - if - local.get $1 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 i32.load offset=12 local.tee $1 + i32.const 0 + local.get $1 + select if local.get $1 - if - local.get $1 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 i32.load offset=16 local.tee $1 + i32.const 0 + local.get $1 + select if local.get $1 - if - local.get $1 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 i32.load offset=20 local.tee $1 + i32.const 0 + local.get $1 + select if local.get $1 - if - local.get $1 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 i32.load offset=24 local.tee $1 + i32.const 0 + local.get $1 + select if local.get $1 - if - local.get $1 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 i32.load offset=28 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end @@ -2674,12 +2674,12 @@ local.get $0 i32.load offset=4 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end ) (func $~start diff --git a/tests/compiler/optional-typeparameters.optimized.wat b/tests/compiler/optional-typeparameters.optimized.wat index 80f392852d..7edf70d37f 100644 --- a/tests/compiler/optional-typeparameters.optimized.wat +++ b/tests/compiler/optional-typeparameters.optimized.wat @@ -40,21 +40,21 @@ (local $1 i32) global.get $optional-typeparameters/tConcrete local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $optional-typeparameters/tDerived local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1248 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1260,12 +1260,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/reexport.optimized.wat b/tests/compiler/reexport.optimized.wat index 3eec156149..8ed42c9363 100644 --- a/tests/compiler/reexport.optimized.wat +++ b/tests/compiler/reexport.optimized.wat @@ -123,12 +123,12 @@ (local $1 i32) global.get $reexport/car local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1296 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1391,12 +1391,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/rereexport.optimized.wat b/tests/compiler/rereexport.optimized.wat index 5969d1bad2..63993d0efc 100644 --- a/tests/compiler/rereexport.optimized.wat +++ b/tests/compiler/rereexport.optimized.wat @@ -73,21 +73,21 @@ (local $1 i32) global.get $rereexport/car local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $rereexport/exportsNamespaceCar local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1296 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -95,12 +95,12 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $reexport/car local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $~lib/rt/itcms/pinSpace local.tee $1 @@ -1081,12 +1081,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/resolve-access.optimized.wat b/tests/compiler/resolve-access.optimized.wat index 93e1076a32..e568b573be 100644 --- a/tests/compiler/resolve-access.optimized.wat +++ b/tests/compiler/resolve-access.optimized.wat @@ -2762,12 +2762,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/resolve-binary.optimized.wat b/tests/compiler/resolve-binary.optimized.wat index 7932ebdcdf..b850b90b04 100644 --- a/tests/compiler/resolve-binary.optimized.wat +++ b/tests/compiler/resolve-binary.optimized.wat @@ -359,30 +359,30 @@ (local $1 i32) global.get $resolve-binary/foo local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $resolve-binary/bar local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $resolve-binary/bar2 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1632 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -3912,12 +3912,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/resolve-elementaccess.optimized.wat b/tests/compiler/resolve-elementaccess.optimized.wat index 784d539178..710b4b797e 100644 --- a/tests/compiler/resolve-elementaccess.optimized.wat +++ b/tests/compiler/resolve-elementaccess.optimized.wat @@ -95,21 +95,21 @@ (local $1 i32) global.get $resolve-elementaccess/arr local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $resolve-elementaccess/buf local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1360 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -4164,16 +4164,29 @@ (func $~lib/rt/__visit_members (param $0 i32) block $folding-inner0 block $invalid - block $~lib/string/String - block $~lib/arraybuffer/ArrayBuffer - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $invalid + block $~lib/arraybuffer/ArrayBufferView + block $~lib/string/String + block $~lib/arraybuffer/ArrayBuffer + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $~lib/arraybuffer/ArrayBufferView $folding-inner0 $folding-inner0 $folding-inner0 $invalid + end + return end return end + local.get $0 + i32.load + local.tee $0 + i32.const 0 + local.get $0 + select + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end return end unreachable @@ -4181,12 +4194,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end ) (func $~start diff --git a/tests/compiler/resolve-function-expression.optimized.wat b/tests/compiler/resolve-function-expression.optimized.wat index a61930d922..859daa5919 100644 --- a/tests/compiler/resolve-function-expression.optimized.wat +++ b/tests/compiler/resolve-function-expression.optimized.wat @@ -1604,12 +1604,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/resolve-nested.optimized.wat b/tests/compiler/resolve-nested.optimized.wat index 33bc524bb2..3a4d1d3ffa 100644 --- a/tests/compiler/resolve-nested.optimized.wat +++ b/tests/compiler/resolve-nested.optimized.wat @@ -1252,12 +1252,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/resolve-new.optimized.wat b/tests/compiler/resolve-new.optimized.wat index 54d44f9e81..0451a26ac3 100644 --- a/tests/compiler/resolve-new.optimized.wat +++ b/tests/compiler/resolve-new.optimized.wat @@ -39,12 +39,12 @@ (local $1 i32) global.get $resolve-new/foo local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1248 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1021,12 +1021,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/resolve-propertyaccess.optimized.wat b/tests/compiler/resolve-propertyaccess.optimized.wat index d1b0d42edb..67ef4e4620 100644 --- a/tests/compiler/resolve-propertyaccess.optimized.wat +++ b/tests/compiler/resolve-propertyaccess.optimized.wat @@ -1934,12 +1934,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/resolve-ternary.optimized.wat b/tests/compiler/resolve-ternary.optimized.wat index b1263560d7..da81b38d5b 100644 --- a/tests/compiler/resolve-ternary.optimized.wat +++ b/tests/compiler/resolve-ternary.optimized.wat @@ -3470,12 +3470,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/resolve-unary.optimized.wat b/tests/compiler/resolve-unary.optimized.wat index 189f8f8c5e..11e5882f7e 100644 --- a/tests/compiler/resolve-unary.optimized.wat +++ b/tests/compiler/resolve-unary.optimized.wat @@ -84,21 +84,21 @@ (local $1 i32) global.get $resolve-unary/foo local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $resolve-unary/bar local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1472 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1961,12 +1961,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/rt/finalize.optimized.wat b/tests/compiler/rt/finalize.optimized.wat index 37ecf3139d..983b5bd47f 100644 --- a/tests/compiler/rt/finalize.optimized.wat +++ b/tests/compiler/rt/finalize.optimized.wat @@ -1363,12 +1363,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/rt/instanceof.optimized.wat b/tests/compiler/rt/instanceof.optimized.wat index 73894ba520..71310a46ee 100644 --- a/tests/compiler/rt/instanceof.optimized.wat +++ b/tests/compiler/rt/instanceof.optimized.wat @@ -47,57 +47,57 @@ (local $1 i32) global.get $rt/instanceof/animal local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $rt/instanceof/cat local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $rt/instanceof/blackcat local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $rt/instanceof/nullableAnimal local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $rt/instanceof/nullableCat local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $rt/instanceof/nullableBlackcat local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1248 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1984,12 +1984,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/rt/runtime-incremental-export.optimized.wat b/tests/compiler/rt/runtime-incremental-export.optimized.wat index d8690db61b..0004c63cf2 100644 --- a/tests/compiler/rt/runtime-incremental-export.optimized.wat +++ b/tests/compiler/rt/runtime-incremental-export.optimized.wat @@ -1856,12 +1856,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/rt/runtime-minimal-export.optimized.wat b/tests/compiler/rt/runtime-minimal-export.optimized.wat index 7692b5e3f8..be7747c912 100644 --- a/tests/compiler/rt/runtime-minimal-export.optimized.wat +++ b/tests/compiler/rt/runtime-minimal-export.optimized.wat @@ -1387,12 +1387,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/tcms/__visit - end + call $byn-split-outlined-A$~lib/rt/tcms/__visit end return end diff --git a/tests/compiler/std-wasi/console.optimized.wat b/tests/compiler/std-wasi/console.optimized.wat index dfaf9a5761..8075c378f2 100644 --- a/tests/compiler/std-wasi/console.optimized.wat +++ b/tests/compiler/std-wasi/console.optimized.wat @@ -341,86 +341,85 @@ i32.const 2 i32.add else + local.get $4 + i32.const 56320 + i32.lt_u + local.get $3 + local.get $0 + i32.const 2 + i32.add + i32.gt_u + i32.and local.get $4 i32.const 63488 i32.and i32.const 55296 i32.eq + i32.and if - local.get $4 - i32.const 56320 - i32.lt_u - local.get $3 local.get $0 - i32.const 2 - i32.add - i32.gt_u + i32.load16_u offset=2 + local.tee $5 + i32.const 64512 i32.and + i32.const 56320 + i32.eq if - local.get $0 - i32.load16_u offset=2 - local.tee $5 - i32.const 64512 + local.get $1 + local.get $4 + i32.const 1023 i32.and - i32.const 56320 - i32.eq - if - local.get $1 - local.get $4 - i32.const 1023 - i32.and - i32.const 10 - i32.shl - i32.const 65536 - i32.add - local.get $5 - i32.const 1023 - i32.and - i32.or - local.tee $4 - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.const 24 - i32.shl - local.get $4 - i32.const 6 - i32.shr_u - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.const 16 - i32.shl - i32.or - local.get $4 - i32.const 12 - i32.shr_u - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.const 8 - i32.shl - i32.or - local.get $4 - i32.const 18 - i32.shr_u - i32.const 240 - i32.or - i32.or - i32.store - local.get $1 - i32.const 4 - i32.add - local.set $1 - local.get $0 - i32.const 4 - i32.add - local.set $0 - br $while-continue|0 - end + i32.const 10 + i32.shl + i32.const 65536 + i32.add + local.get $5 + i32.const 1023 + i32.and + i32.or + local.tee $4 + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.const 24 + i32.shl + local.get $4 + i32.const 6 + i32.shr_u + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.const 16 + i32.shl + i32.or + local.get $4 + i32.const 12 + i32.shr_u + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.const 8 + i32.shl + i32.or + local.get $4 + i32.const 18 + i32.shr_u + i32.const 240 + i32.or + i32.or + i32.store + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.const 4 + i32.add + local.set $0 + br $while-continue|0 end end local.get $1 @@ -2193,12 +2192,12 @@ (local $1 i32) global.get $~lib/console/timers local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 5120 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -3638,12 +3637,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/std-wasi/crypto.optimized.wat b/tests/compiler/std-wasi/crypto.optimized.wat index e1ed29329c..abff61ed05 100644 --- a/tests/compiler/std-wasi/crypto.optimized.wat +++ b/tests/compiler/std-wasi/crypto.optimized.wat @@ -297,86 +297,85 @@ i32.const 2 i32.add else + local.get $4 + i32.const 56320 + i32.lt_u + local.get $3 + local.get $0 + i32.const 2 + i32.add + i32.gt_u + i32.and local.get $4 i32.const 63488 i32.and i32.const 55296 i32.eq + i32.and if - local.get $4 - i32.const 56320 - i32.lt_u - local.get $3 local.get $0 - i32.const 2 - i32.add - i32.gt_u + i32.load16_u offset=2 + local.tee $5 + i32.const 64512 i32.and + i32.const 56320 + i32.eq if - local.get $0 - i32.load16_u offset=2 - local.tee $5 - i32.const 64512 + local.get $1 + local.get $4 + i32.const 1023 i32.and - i32.const 56320 - i32.eq - if - local.get $1 - local.get $4 - i32.const 1023 - i32.and - i32.const 10 - i32.shl - i32.const 65536 - i32.add - local.get $5 - i32.const 1023 - i32.and - i32.or - local.tee $4 - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.const 24 - i32.shl - local.get $4 - i32.const 6 - i32.shr_u - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.const 16 - i32.shl - i32.or - local.get $4 - i32.const 12 - i32.shr_u - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.const 8 - i32.shl - i32.or - local.get $4 - i32.const 18 - i32.shr_u - i32.const 240 - i32.or - i32.or - i32.store - local.get $1 - i32.const 4 - i32.add - local.set $1 - local.get $0 - i32.const 4 - i32.add - local.set $0 - br $while-continue|0 - end + i32.const 10 + i32.shl + i32.const 65536 + i32.add + local.get $5 + i32.const 1023 + i32.and + i32.or + local.tee $4 + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.const 24 + i32.shl + local.get $4 + i32.const 6 + i32.shr_u + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.const 16 + i32.shl + i32.or + local.get $4 + i32.const 12 + i32.shr_u + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.const 8 + i32.shl + i32.or + local.get $4 + i32.const 18 + i32.shr_u + i32.const 240 + i32.or + i32.or + i32.store + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.const 4 + i32.add + local.set $0 + br $while-continue|0 end end local.get $1 @@ -646,39 +645,39 @@ (local $1 i32) global.get $std-wasi/crypto/ab local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std-wasi/crypto/buf local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std-wasi/crypto/b1 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std-wasi/crypto/b2 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1472 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -4406,12 +4405,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end ) (func $~start diff --git a/tests/compiler/std-wasi/process.optimized.wat b/tests/compiler/std-wasi/process.optimized.wat index ffcc77dbfe..fc6bc73eea 100644 --- a/tests/compiler/std-wasi/process.optimized.wat +++ b/tests/compiler/std-wasi/process.optimized.wat @@ -327,86 +327,85 @@ i32.const 2 i32.add else + local.get $4 + i32.const 56320 + i32.lt_u + local.get $3 + local.get $0 + i32.const 2 + i32.add + i32.gt_u + i32.and local.get $4 i32.const 63488 i32.and i32.const 55296 i32.eq + i32.and if - local.get $4 - i32.const 56320 - i32.lt_u - local.get $3 local.get $0 - i32.const 2 - i32.add - i32.gt_u + i32.load16_u offset=2 + local.tee $5 + i32.const 64512 i32.and + i32.const 56320 + i32.eq if - local.get $0 - i32.load16_u offset=2 - local.tee $5 - i32.const 64512 + local.get $1 + local.get $4 + i32.const 1023 i32.and - i32.const 56320 - i32.eq - if - local.get $1 - local.get $4 - i32.const 1023 - i32.and - i32.const 10 - i32.shl - i32.const 65536 - i32.add - local.get $5 - i32.const 1023 - i32.and - i32.or - local.tee $4 - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.const 24 - i32.shl - local.get $4 - i32.const 6 - i32.shr_u - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.const 16 - i32.shl - i32.or - local.get $4 - i32.const 12 - i32.shr_u - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.const 8 - i32.shl - i32.or - local.get $4 - i32.const 18 - i32.shr_u - i32.const 240 - i32.or - i32.or - i32.store - local.get $1 - i32.const 4 - i32.add - local.set $1 - local.get $0 - i32.const 4 - i32.add - local.set $0 - br $while-continue|0 - end + i32.const 10 + i32.shl + i32.const 65536 + i32.add + local.get $5 + i32.const 1023 + i32.and + i32.or + local.tee $4 + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.const 24 + i32.shl + local.get $4 + i32.const 6 + i32.shr_u + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.const 16 + i32.shl + i32.or + local.get $4 + i32.const 12 + i32.shr_u + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.const 8 + i32.shl + i32.or + local.get $4 + i32.const 18 + i32.shr_u + i32.const 240 + i32.or + i32.or + i32.store + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.const 4 + i32.add + local.set $0 + br $while-continue|0 end end local.get $1 @@ -2182,48 +2181,48 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/process/process.argv local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $~lib/process/process.env local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std-wasi/process/argv local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std-wasi/process/env local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std-wasi/process/envKeys local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 4784 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -4456,12 +4455,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end @@ -4482,12 +4481,12 @@ local.get $1 i32.load local.tee $3 + i32.const 0 + local.get $3 + select if local.get $3 - if - local.get $3 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $1 i32.const 4 diff --git a/tests/compiler/std/array-literal.optimized.wat b/tests/compiler/std/array-literal.optimized.wat index 8dbebe0100..c17d05db4d 100644 --- a/tests/compiler/std/array-literal.optimized.wat +++ b/tests/compiler/std/array-literal.optimized.wat @@ -104,48 +104,48 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $std/array-literal/emptyArrayI32 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/array-literal/dynamicArrayI8 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/array-literal/dynamicArrayI32 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/array-literal/dynamicArrayRef local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/array-literal/dynamicArrayRefWithCtor local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1200 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1826,12 +1826,12 @@ local.get $1 i32.load local.tee $2 + i32.const 0 + local.get $2 + select if local.get $2 - if - local.get $2 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $1 i32.const 4 @@ -1871,12 +1871,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index c8fe3e67e2..fab963afc4 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -716,32 +716,32 @@ (local $1 i32) global.get $std/array/arr local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 7696 call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $std/array/inputStabArr local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/array/outputStabArr local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1344 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -4427,18 +4427,17 @@ local.get $1 i32.const 2 i32.eq + local.get $0 + i32.const 202 + i32.ne + i32.and if - local.get $0 - i32.const 202 - i32.ne - if - i32.const 0 - i32.const 1552 - i32.const 735 - i32.const 7 - call $~lib/builtins/abort - unreachable - end + i32.const 0 + i32.const 1552 + i32.const 735 + i32.const 7 + call $~lib/builtins/abort + unreachable end ) (func $start:std/array~anonymous|25 (param $0 i32) (param $1 i32) (param $2 i32) (result f32) @@ -13451,12 +13450,12 @@ local.get $1 i32.load local.tee $2 + i32.const 0 + local.get $2 + select if local.get $2 - if - local.get $2 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $1 i32.const 4 @@ -13523,12 +13522,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/std/arraybuffer.optimized.wat b/tests/compiler/std/arraybuffer.optimized.wat index a0a95b5f53..e06590ea3e 100644 --- a/tests/compiler/std/arraybuffer.optimized.wat +++ b/tests/compiler/std/arraybuffer.optimized.wat @@ -2598,24 +2598,24 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end ) (func $~start diff --git a/tests/compiler/std/dataview.optimized.wat b/tests/compiler/std/dataview.optimized.wat index fcf1c02e60..6288772b50 100644 --- a/tests/compiler/std/dataview.optimized.wat +++ b/tests/compiler/std/dataview.optimized.wat @@ -2444,12 +2444,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end ) (func $~start diff --git a/tests/compiler/std/date.optimized.wat b/tests/compiler/std/date.optimized.wat index 3d38d474ef..210ef92aef 100644 --- a/tests/compiler/std/date.optimized.wat +++ b/tests/compiler/std/date.optimized.wat @@ -4274,12 +4274,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end @@ -4300,12 +4300,12 @@ local.get $0 i32.load local.tee $2 + i32.const 0 + local.get $2 + select if local.get $2 - if - local.get $2 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 i32.const 4 @@ -4333,12 +4333,12 @@ local.get $1 i32.load local.tee $2 + i32.const 0 + local.get $2 + select if local.get $2 - if - local.get $2 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $1 i32.const 4 diff --git a/tests/compiler/std/map.optimized.wat b/tests/compiler/std/map.optimized.wat index 1a41aaaf71..683505063c 100644 --- a/tests/compiler/std/map.optimized.wat +++ b/tests/compiler/std/map.optimized.wat @@ -22322,12 +22322,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/std/new.optimized.wat b/tests/compiler/std/new.optimized.wat index e09f51891b..3d2a52cca2 100644 --- a/tests/compiler/std/new.optimized.wat +++ b/tests/compiler/std/new.optimized.wat @@ -39,12 +39,12 @@ (local $1 i32) global.get $std/new/aClass local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1248 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1360,12 +1360,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/std/operator-overloading.optimized.wat b/tests/compiler/std/operator-overloading.optimized.wat index 071e1266a1..1bf2c2f58f 100644 --- a/tests/compiler/std/operator-overloading.optimized.wat +++ b/tests/compiler/std/operator-overloading.optimized.wat @@ -1511,534 +1511,534 @@ (local $0 i32) global.get $std/operator-overloading/a1 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/a2 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/a local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/s1 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/s2 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/s local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/m1 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/m2 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/m local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/d1 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/d2 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/d local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/f1 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/f2 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/f local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/p1 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/p2 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/p local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/n1 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/n2 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/n local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/o1 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/o2 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/o local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/x1 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/x2 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/x local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/eq1 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/eq2 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/eq3 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/eq4 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/gt1 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/gt2 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/gte1 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/gte2 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/le1 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/le2 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/leq1 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/leq2 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/shr local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/sres local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/shu local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/ures local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/shl local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/pos local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/pres local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/neg local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/nres local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/not local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/res local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/excl local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/incdec local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/tmp local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/ais1 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/ais2 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/ais local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/aii1 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/aii2 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/aii local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1248 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -2066,12 +2066,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/std/set.optimized.wat b/tests/compiler/std/set.optimized.wat index 466f0b6314..85b41b58a5 100644 --- a/tests/compiler/std/set.optimized.wat +++ b/tests/compiler/std/set.optimized.wat @@ -17407,12 +17407,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/std/static-array.optimized.wat b/tests/compiler/std/static-array.optimized.wat index 1c6a890b7f..7646ae03f2 100644 --- a/tests/compiler/std/static-array.optimized.wat +++ b/tests/compiler/std/static-array.optimized.wat @@ -2843,12 +2843,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/std/staticarray.optimized.wat b/tests/compiler/std/staticarray.optimized.wat index 417380e684..661961994e 100644 --- a/tests/compiler/std/staticarray.optimized.wat +++ b/tests/compiler/std/staticarray.optimized.wat @@ -215,21 +215,21 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $std/staticarray/arr3 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/staticarray/arr4 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1088 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -4086,12 +4086,12 @@ local.get $0 i32.load local.tee $1 + i32.const 0 + local.get $1 + select if local.get $1 - if - local.get $1 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 i32.const 4 @@ -4131,12 +4131,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end @@ -4169,12 +4169,12 @@ local.get $1 i32.load local.tee $2 + i32.const 0 + local.get $2 + select if local.get $2 - if - local.get $2 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $1 i32.const 4 diff --git a/tests/compiler/std/string-casemapping.optimized.wat b/tests/compiler/std/string-casemapping.optimized.wat index d18a1d1765..5a7db5f858 100644 --- a/tests/compiler/std/string-casemapping.optimized.wat +++ b/tests/compiler/std/string-casemapping.optimized.wat @@ -3657,12 +3657,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/std/string-encoding.optimized.wat b/tests/compiler/std/string-encoding.optimized.wat index 85754bbd60..c7c369ca8b 100644 --- a/tests/compiler/std/string-encoding.optimized.wat +++ b/tests/compiler/std/string-encoding.optimized.wat @@ -2699,12 +2699,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/std/string.optimized.wat b/tests/compiler/std/string.optimized.wat index b2a27de897..b88510d209 100644 --- a/tests/compiler/std/string.optimized.wat +++ b/tests/compiler/std/string.optimized.wat @@ -1070,12 +1070,12 @@ (local $1 i32) global.get $std/string/str local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1264 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -7374,12 +7374,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end @@ -7409,12 +7409,12 @@ local.get $1 i32.load local.tee $3 + i32.const 0 + local.get $3 + select if local.get $3 - if - local.get $3 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $1 i32.const 4 diff --git a/tests/compiler/std/symbol.optimized.wat b/tests/compiler/std/symbol.optimized.wat index ce640522fd..aab5f8f882 100644 --- a/tests/compiler/std/symbol.optimized.wat +++ b/tests/compiler/std/symbol.optimized.wat @@ -102,57 +102,57 @@ (local $1 i32) global.get $~lib/symbol/stringToId local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $~lib/symbol/idToString local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/symbol/key1 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/symbol/key2 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/symbol/key3 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/symbol/key4 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1328 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -3166,12 +3166,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/std/typedarray.optimized.wat b/tests/compiler/std/typedarray.optimized.wat index 7ad93bab88..65df129aee 100644 --- a/tests/compiler/std/typedarray.optimized.wat +++ b/tests/compiler/std/typedarray.optimized.wat @@ -36354,12 +36354,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end ) (func $~start diff --git a/tests/compiler/std/uri.optimized.wat b/tests/compiler/std/uri.optimized.wat index d4596de4f5..c99ccddcd0 100644 --- a/tests/compiler/std/uri.optimized.wat +++ b/tests/compiler/std/uri.optimized.wat @@ -3633,12 +3633,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/super-inline.optimized.wat b/tests/compiler/super-inline.optimized.wat index 6c930e68a3..5232abe5b8 100644 --- a/tests/compiler/super-inline.optimized.wat +++ b/tests/compiler/super-inline.optimized.wat @@ -40,21 +40,21 @@ (local $1 i32) global.get $super-inline/foo local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $super-inline/bar local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1248 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1260,12 +1260,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/templateliteral.optimized.wat b/tests/compiler/templateliteral.optimized.wat index 172770844f..445a8f5f4c 100644 --- a/tests/compiler/templateliteral.optimized.wat +++ b/tests/compiler/templateliteral.optimized.wat @@ -4987,12 +4987,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end @@ -5011,12 +5011,12 @@ local.get $0 i32.load local.tee $1 + i32.const 0 + local.get $1 + select if local.get $1 - if - local.get $1 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 i32.const 4 @@ -5032,22 +5032,22 @@ local.get $0 i32.load local.tee $1 + i32.const 0 + local.get $1 + select if local.get $1 - if - local.get $1 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $0 i32.load offset=4 local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/throw.optimized.wat b/tests/compiler/throw.optimized.wat index 5bbdbe50a2..b124e7d3a9 100644 --- a/tests/compiler/throw.optimized.wat +++ b/tests/compiler/throw.optimized.wat @@ -952,12 +952,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/typeof.optimized.wat b/tests/compiler/typeof.optimized.wat index 8cfb19b6bb..c17054c890 100644 --- a/tests/compiler/typeof.optimized.wat +++ b/tests/compiler/typeof.optimized.wat @@ -177,12 +177,12 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $typeof/c local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end i32.const 1552 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1160,12 +1160,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end diff --git a/tests/compiler/wasi/abort.optimized.wat b/tests/compiler/wasi/abort.optimized.wat index 56a0611a36..4c946afcb8 100644 --- a/tests/compiler/wasi/abort.optimized.wat +++ b/tests/compiler/wasi/abort.optimized.wat @@ -80,86 +80,85 @@ i32.const 2 i32.add else + local.get $4 + i32.const 56320 + i32.lt_u + local.get $3 + local.get $0 + i32.const 2 + i32.add + i32.gt_u + i32.and local.get $4 i32.const 63488 i32.and i32.const 55296 i32.eq + i32.and if - local.get $4 - i32.const 56320 - i32.lt_u - local.get $3 local.get $0 - i32.const 2 - i32.add - i32.gt_u + i32.load16_u offset=2 + local.tee $5 + i32.const 64512 i32.and + i32.const 56320 + i32.eq if - local.get $0 - i32.load16_u offset=2 - local.tee $5 - i32.const 64512 + local.get $1 + local.get $4 + i32.const 1023 + i32.and + i32.const 10 + i32.shl + i32.const 65536 + i32.add + local.get $5 + i32.const 1023 + i32.and + i32.or + local.tee $4 + i32.const 63 i32.and - i32.const 56320 - i32.eq - if - local.get $1 - local.get $4 - i32.const 1023 - i32.and - i32.const 10 - i32.shl - i32.const 65536 - i32.add - local.get $5 - i32.const 1023 - i32.and - i32.or - local.tee $4 - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.const 24 - i32.shl - local.get $4 - i32.const 6 - i32.shr_u - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.const 16 - i32.shl - i32.or - local.get $4 - i32.const 12 - i32.shr_u - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.const 8 - i32.shl - i32.or - local.get $4 - i32.const 18 - i32.shr_u - i32.const 240 - i32.or - i32.or - i32.store - local.get $1 - i32.const 4 - i32.add - local.set $1 - local.get $0 - i32.const 4 - i32.add - local.set $0 - br $while-continue|0 - end + i32.const 128 + i32.or + i32.const 24 + i32.shl + local.get $4 + i32.const 6 + i32.shr_u + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.const 16 + i32.shl + i32.or + local.get $4 + i32.const 12 + i32.shr_u + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.const 8 + i32.shl + i32.or + local.get $4 + i32.const 18 + i32.shr_u + i32.const 240 + i32.or + i32.or + i32.store + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.const 4 + i32.add + local.set $0 + br $while-continue|0 end end local.get $1 diff --git a/tests/compiler/wasi/trace.optimized.wat b/tests/compiler/wasi/trace.optimized.wat index 82395dde1d..2d47a265d9 100644 --- a/tests/compiler/wasi/trace.optimized.wat +++ b/tests/compiler/wasi/trace.optimized.wat @@ -101,86 +101,85 @@ i32.const 2 i32.add else + local.get $4 + i32.const 56320 + i32.lt_u + local.get $3 + local.get $0 + i32.const 2 + i32.add + i32.gt_u + i32.and local.get $4 i32.const 63488 i32.and i32.const 55296 i32.eq + i32.and if - local.get $4 - i32.const 56320 - i32.lt_u - local.get $3 local.get $0 - i32.const 2 - i32.add - i32.gt_u + i32.load16_u offset=2 + local.tee $5 + i32.const 64512 i32.and + i32.const 56320 + i32.eq if - local.get $0 - i32.load16_u offset=2 - local.tee $5 - i32.const 64512 + local.get $1 + local.get $4 + i32.const 1023 i32.and - i32.const 56320 - i32.eq - if - local.get $1 - local.get $4 - i32.const 1023 - i32.and - i32.const 10 - i32.shl - i32.const 65536 - i32.add - local.get $5 - i32.const 1023 - i32.and - i32.or - local.tee $4 - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.const 24 - i32.shl - local.get $4 - i32.const 6 - i32.shr_u - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.const 16 - i32.shl - i32.or - local.get $4 - i32.const 12 - i32.shr_u - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.const 8 - i32.shl - i32.or - local.get $4 - i32.const 18 - i32.shr_u - i32.const 240 - i32.or - i32.or - i32.store - local.get $1 - i32.const 4 - i32.add - local.set $1 - local.get $0 - i32.const 4 - i32.add - local.set $0 - br $while-continue|0 - end + i32.const 10 + i32.shl + i32.const 65536 + i32.add + local.get $5 + i32.const 1023 + i32.and + i32.or + local.tee $4 + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.const 24 + i32.shl + local.get $4 + i32.const 6 + i32.shr_u + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.const 16 + i32.shl + i32.or + local.get $4 + i32.const 12 + i32.shr_u + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.const 8 + i32.shl + i32.or + local.get $4 + i32.const 18 + i32.shr_u + i32.const 240 + i32.or + i32.or + i32.store + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.const 4 + i32.add + local.set $0 + br $while-continue|0 end end local.get $1 diff --git a/tests/compiler/while.optimized.wat b/tests/compiler/while.optimized.wat index 1414016541..65cfcf0906 100644 --- a/tests/compiler/while.optimized.wat +++ b/tests/compiler/while.optimized.wat @@ -1529,12 +1529,12 @@ local.get $0 i32.load local.tee $0 + i32.const 0 + local.get $0 + select if local.get $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $byn-split-outlined-A$~lib/rt/itcms/__visit end return end From f54dce15127d01f9576d770761936d07944fb196 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sat, 25 Sep 2021 12:16:12 +0300 Subject: [PATCH 25/54] update --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 71235b0bd9..0ad77c3856 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "102.0.0-nightly.20210924", + "binaryen": "102.0.0-nightly.20210925", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" @@ -733,9 +733,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "102.0.0-nightly.20210924", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210924.tgz", - "integrity": "sha512-uLHHa6vC2qpfaolL5y5Rs7GnzRcSr1UTWvMya6VURMBoCG+2WqB/DvrbR240HuQplvaZMIX0xnXkzArcGWAaQA==", + "version": "102.0.0-nightly.20210925", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210925.tgz", + "integrity": "sha512-dRm7t6NEmE6jrCNyeCNcwoND98Phb0hD4AYeSizO4/lownNQW10GuHLH8b3xcIGWD1dZwPlHxfI/JZi+13Rn/w==", "bin": { "wasm-opt": "bin/wasm-opt" } @@ -3508,9 +3508,9 @@ "dev": true }, "binaryen": { - "version": "102.0.0-nightly.20210924", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210924.tgz", - "integrity": "sha512-uLHHa6vC2qpfaolL5y5Rs7GnzRcSr1UTWvMya6VURMBoCG+2WqB/DvrbR240HuQplvaZMIX0xnXkzArcGWAaQA==" + "version": "102.0.0-nightly.20210925", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210925.tgz", + "integrity": "sha512-dRm7t6NEmE6jrCNyeCNcwoND98Phb0hD4AYeSizO4/lownNQW10GuHLH8b3xcIGWD1dZwPlHxfI/JZi+13Rn/w==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 839703f799..1cbdd9bd59 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "url": "https://github.com/AssemblyScript/assemblyscript/issues" }, "dependencies": { - "binaryen": "102.0.0-nightly.20210924", + "binaryen": "102.0.0-nightly.20210925", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" From db620bc11833da8f7a067e9bf1a53f9a9fcd3717 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sat, 25 Sep 2021 13:36:23 +0300 Subject: [PATCH 26/54] one more simplify-globals-optimizing --- src/module.ts | 1 + tests/compiler/binary.optimized.wat | 8 ++------ tests/compiler/unary.optimized.wat | 14 ++++---------- 3 files changed, 7 insertions(+), 16 deletions(-) diff --git a/src/module.ts b/src/module.ts index 330d8055e5..e8a9f9f31a 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2319,6 +2319,7 @@ export class Module { } if (optimizeLevel >= 2 || shrinkLevel >= 1) { passes.push("simplify-globals-optimizing"); + passes.push("simplify-globals-optimizing"); } passes.push("remove-unused-brs"); passes.push("remove-unused-names"); diff --git a/tests/compiler/binary.optimized.wat b/tests/compiler/binary.optimized.wat index 2ffdaefeb4..36ab116b87 100644 --- a/tests/compiler/binary.optimized.wat +++ b/tests/compiler/binary.optimized.wat @@ -168,9 +168,7 @@ global.set $binary/i i32.const 1 global.set $binary/i - global.get $binary/i - i32.const 1 - i32.sub + i32.const 0 global.set $binary/i i32.const 0 global.set $binary/i @@ -212,9 +210,7 @@ global.set $binary/I i64.const 1 global.set $binary/I - global.get $binary/I - i64.const 1 - i64.sub + i64.const 0 global.set $binary/I i64.const 0 global.set $binary/I diff --git a/tests/compiler/unary.optimized.wat b/tests/compiler/unary.optimized.wat index e2fda4418a..187f41a7a7 100644 --- a/tests/compiler/unary.optimized.wat +++ b/tests/compiler/unary.optimized.wat @@ -48,12 +48,9 @@ global.set $unary/i i32.const -1 global.set $unary/i - i32.const -1 - local.tee $0 - i32.const 1 - i32.sub + i32.const -2 global.set $unary/i - local.get $0 + i32.const -1 global.set $unary/i global.get $unary/I i64.const 1 @@ -93,12 +90,9 @@ global.set $unary/I i64.const -1 global.set $unary/I - i64.const -1 - local.tee $1 - i64.const 1 - i64.sub + i64.const -2 global.set $unary/I - local.get $1 + i64.const -1 global.set $unary/I global.get $unary/f f32.const 1 From 3fc740e64094b404a11aa56cda3ca430a116afc4 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sat, 25 Sep 2021 16:46:08 +0300 Subject: [PATCH 27/54] add late rse --- src/module.ts | 2 +- tests/compiler/std/typedarray.optimized.wat | 56 --------------------- 2 files changed, 1 insertion(+), 57 deletions(-) diff --git a/src/module.ts b/src/module.ts index e8a9f9f31a..2429afc4b0 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2396,8 +2396,8 @@ export class Module { passes.push("inlining"); passes.push("precompute-propagate"); + passes.push("rse"); passes.push("vacuum"); - passes.push("ssa-nomerge"); passes.push("simplify-locals"); passes.push("coalesce-locals"); diff --git a/tests/compiler/std/typedarray.optimized.wat b/tests/compiler/std/typedarray.optimized.wat index 65df129aee..9cbbf770b0 100644 --- a/tests/compiler/std/typedarray.optimized.wat +++ b/tests/compiler/std/typedarray.optimized.wat @@ -14504,9 +14504,6 @@ br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 drop local.get $0 - local.get $2 - i32.add - local.get $0 i32.const 1 i32.sub local.get $2 @@ -14514,10 +14511,6 @@ local.get $2 i32.le_s select - local.get $2 - i32.const 0 - i32.lt_s - select local.set $0 local.get $1 i32.load offset=4 @@ -14573,9 +14566,6 @@ br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.05 drop local.get $0 - local.get $2 - i32.add - local.get $0 i32.const 1 i32.sub local.get $2 @@ -14583,10 +14573,6 @@ local.get $2 i32.le_s select - local.get $2 - i32.const 0 - i32.lt_s - select local.set $0 local.get $1 i32.load offset=4 @@ -14645,9 +14631,6 @@ br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.011 drop local.get $0 - local.get $2 - i32.add - local.get $0 i32.const 1 i32.sub local.get $2 @@ -14655,10 +14638,6 @@ local.get $2 i32.le_s select - local.get $2 - i32.const 0 - i32.lt_s - select local.set $0 local.get $1 i32.load offset=4 @@ -14717,9 +14696,6 @@ br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.017 drop local.get $0 - local.get $2 - i32.add - local.get $0 i32.const 1 i32.sub local.get $2 @@ -14727,10 +14703,6 @@ local.get $2 i32.le_s select - local.get $2 - i32.const 0 - i32.lt_s - select local.set $0 local.get $1 i32.load offset=4 @@ -16118,9 +16090,6 @@ br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 drop local.get $0 - local.get $2 - i32.add - local.get $0 i32.const 1 i32.sub local.get $2 @@ -16128,10 +16097,6 @@ local.get $2 i32.le_s select - local.get $2 - i32.const 0 - i32.lt_s - select local.set $0 local.get $1 i32.load offset=4 @@ -16187,9 +16152,6 @@ br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.05 drop local.get $0 - local.get $2 - i32.add - local.get $0 i32.const 1 i32.sub local.get $2 @@ -16197,10 +16159,6 @@ local.get $2 i32.le_s select - local.get $2 - i32.const 0 - i32.lt_s - select local.set $0 local.get $1 i32.load offset=4 @@ -16259,9 +16217,6 @@ br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.011 drop local.get $0 - local.get $2 - i32.add - local.get $0 i32.const 1 i32.sub local.get $2 @@ -16269,10 +16224,6 @@ local.get $2 i32.le_s select - local.get $2 - i32.const 0 - i32.lt_s - select local.set $0 local.get $1 i32.load offset=4 @@ -16331,9 +16282,6 @@ br_if $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.017 drop local.get $0 - local.get $2 - i32.add - local.get $0 i32.const 1 i32.sub local.get $2 @@ -16341,10 +16289,6 @@ local.get $2 i32.le_s select - local.get $2 - i32.const 0 - i32.lt_s - select local.set $0 local.get $1 i32.load offset=4 From 25ebef608b8ee01812e181d8c06161ad36a9369b Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Thu, 30 Sep 2021 14:08:09 +0300 Subject: [PATCH 28/54] update --- package-lock.json | 14 +- package.json | 2 +- tests/compiler/std/hash.optimized.wat | 369 +++++++++++++------------- 3 files changed, 194 insertions(+), 191 deletions(-) diff --git a/package-lock.json b/package-lock.json index 0ad77c3856..49ed3bfa3e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "102.0.0-nightly.20210925", + "binaryen": "102.0.0-nightly.20210930", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" @@ -733,9 +733,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "102.0.0-nightly.20210925", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210925.tgz", - "integrity": "sha512-dRm7t6NEmE6jrCNyeCNcwoND98Phb0hD4AYeSizO4/lownNQW10GuHLH8b3xcIGWD1dZwPlHxfI/JZi+13Rn/w==", + "version": "102.0.0-nightly.20210930", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210930.tgz", + "integrity": "sha512-TUmkVM0uFZbvlLTrjIjGzDrv4+Nh4CR620gFxBsFw91xMEaCXTskzjKCGGrnn0nduF1ZRw+r0XHG6yecmfXBTQ==", "bin": { "wasm-opt": "bin/wasm-opt" } @@ -3508,9 +3508,9 @@ "dev": true }, "binaryen": { - "version": "102.0.0-nightly.20210925", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210925.tgz", - "integrity": "sha512-dRm7t6NEmE6jrCNyeCNcwoND98Phb0hD4AYeSizO4/lownNQW10GuHLH8b3xcIGWD1dZwPlHxfI/JZi+13Rn/w==" + "version": "102.0.0-nightly.20210930", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210930.tgz", + "integrity": "sha512-TUmkVM0uFZbvlLTrjIjGzDrv4+Nh4CR620gFxBsFw91xMEaCXTskzjKCGGrnn0nduF1ZRw+r0XHG6yecmfXBTQ==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 1cbdd9bd59..6f9245f63d 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "url": "https://github.com/AssemblyScript/assemblyscript/issues" }, "dependencies": { - "binaryen": "102.0.0-nightly.20210925", + "binaryen": "102.0.0-nightly.20210930", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" diff --git a/tests/compiler/std/hash.optimized.wat b/tests/compiler/std/hash.optimized.wat index 97960059ba..656711ac9a 100644 --- a/tests/compiler/std/hash.optimized.wat +++ b/tests/compiler/std/hash.optimized.wat @@ -1,7 +1,7 @@ (module + (type $i32_=>_none (func (param i32))) (type $none_=>_none (func)) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) - (type $i32_=>_none (func (param i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (global $~lib/memory/__stack_pointer (mut i32) (i32.const 17788)) (memory $0 1) @@ -27,8 +27,179 @@ (data (i32.const 1368) "\01\00\00\00\12\00\00\00a\00b\00c\00d\00e\00f\00g\00h\00i") (export "memory" (memory $0)) (start $~start) + (func $~lib/util/hash/HASH<~lib/string/String|null> (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + if + local.get $0 + local.tee $1 + i32.const 20 + i32.sub + i32.load offset=16 + i32.const 1 + i32.shr_u + i32.const 1 + i32.shl + local.tee $3 + i32.const 16 + i32.ge_u + if (result i32) + i32.const 606290984 + local.set $2 + i32.const -2048144777 + local.set $4 + i32.const 1640531535 + local.set $5 + local.get $1 + local.get $3 + i32.add + i32.const 16 + i32.sub + local.set $7 + loop $while-continue|0 + local.get $1 + local.get $7 + i32.le_u + if + local.get $1 + i32.load + i32.const -2048144777 + i32.mul + local.get $2 + i32.add + i32.const 13 + i32.rotl + i32.const -1640531535 + i32.mul + local.set $2 + local.get $1 + i32.load offset=4 + i32.const -2048144777 + i32.mul + local.get $4 + i32.add + i32.const 13 + i32.rotl + i32.const -1640531535 + i32.mul + local.set $4 + local.get $1 + i32.load offset=8 + i32.const -2048144777 + i32.mul + local.get $6 + i32.add + i32.const 13 + i32.rotl + i32.const -1640531535 + i32.mul + local.set $6 + local.get $1 + i32.load offset=12 + i32.const -2048144777 + i32.mul + local.get $5 + i32.add + i32.const 13 + i32.rotl + i32.const -1640531535 + i32.mul + local.set $5 + local.get $1 + i32.const 16 + i32.add + local.set $1 + br $while-continue|0 + end + end + local.get $2 + i32.const 1 + i32.rotl + local.get $4 + i32.const 7 + i32.rotl + i32.add + local.get $6 + i32.const 12 + i32.rotl + i32.add + local.get $5 + i32.const 18 + i32.rotl + i32.add + local.get $3 + i32.add + else + local.get $3 + i32.const 374761393 + i32.add + end + local.set $2 + local.get $0 + local.get $3 + i32.add + i32.const 4 + i32.sub + local.set $4 + loop $while-continue|1 + local.get $1 + local.get $4 + i32.le_u + if + local.get $1 + i32.load + i32.const -1028477379 + i32.mul + local.get $2 + i32.add + i32.const 17 + i32.rotl + i32.const 668265263 + i32.mul + local.set $2 + local.get $1 + i32.const 4 + i32.add + local.set $1 + br $while-continue|1 + end + end + local.get $0 + local.get $3 + i32.add + local.set $0 + loop $while-continue|2 + local.get $0 + local.get $1 + i32.gt_u + if + local.get $1 + i32.load8_u + i32.const 374761393 + i32.mul + local.get $2 + i32.add + i32.const 11 + i32.rotl + i32.const -1640531535 + i32.mul + local.set $2 + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $while-continue|2 + end + end + end + ) (func $~start - (local $0 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -45,231 +216,63 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $0 i32.const 0 i32.store - local.get $0 + i32.const 0 + call $~lib/util/hash/HASH<~lib/string/String|null> + global.get $~lib/memory/__stack_pointer i32.const 1056 i32.store i32.const 1056 - call $byn-split-outlined-B$~lib/util/hash/HASH<~lib/string/String|null> + call $~lib/util/hash/HASH<~lib/string/String|null> global.get $~lib/memory/__stack_pointer i32.const 1088 i32.store i32.const 1088 - call $byn-split-outlined-B$~lib/util/hash/HASH<~lib/string/String|null> + call $~lib/util/hash/HASH<~lib/string/String|null> global.get $~lib/memory/__stack_pointer i32.const 1120 i32.store i32.const 1120 - call $byn-split-outlined-B$~lib/util/hash/HASH<~lib/string/String|null> + call $~lib/util/hash/HASH<~lib/string/String|null> global.get $~lib/memory/__stack_pointer i32.const 1152 i32.store i32.const 1152 - call $byn-split-outlined-B$~lib/util/hash/HASH<~lib/string/String|null> + call $~lib/util/hash/HASH<~lib/string/String|null> global.get $~lib/memory/__stack_pointer i32.const 1184 i32.store i32.const 1184 - call $byn-split-outlined-B$~lib/util/hash/HASH<~lib/string/String|null> + call $~lib/util/hash/HASH<~lib/string/String|null> global.get $~lib/memory/__stack_pointer i32.const 1216 i32.store i32.const 1216 - call $byn-split-outlined-B$~lib/util/hash/HASH<~lib/string/String|null> + call $~lib/util/hash/HASH<~lib/string/String|null> global.get $~lib/memory/__stack_pointer i32.const 1248 i32.store i32.const 1248 - call $byn-split-outlined-B$~lib/util/hash/HASH<~lib/string/String|null> + call $~lib/util/hash/HASH<~lib/string/String|null> global.get $~lib/memory/__stack_pointer i32.const 1280 i32.store i32.const 1280 - call $byn-split-outlined-B$~lib/util/hash/HASH<~lib/string/String|null> + call $~lib/util/hash/HASH<~lib/string/String|null> global.get $~lib/memory/__stack_pointer i32.const 1328 i32.store i32.const 1328 - call $byn-split-outlined-B$~lib/util/hash/HASH<~lib/string/String|null> + call $~lib/util/hash/HASH<~lib/string/String|null> global.get $~lib/memory/__stack_pointer i32.const 1376 i32.store i32.const 1376 - call $byn-split-outlined-B$~lib/util/hash/HASH<~lib/string/String|null> + call $~lib/util/hash/HASH<~lib/string/String|null> global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer ) - (func $byn-split-outlined-B$~lib/util/hash/HASH<~lib/string/String|null> (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - local.tee $1 - i32.const 20 - i32.sub - i32.load offset=16 - i32.const 1 - i32.shr_u - i32.const 1 - i32.shl - local.tee $3 - i32.const 16 - i32.ge_u - if (result i32) - i32.const 606290984 - local.set $2 - i32.const -2048144777 - local.set $4 - i32.const 1640531535 - local.set $5 - local.get $1 - local.get $3 - i32.add - i32.const 16 - i32.sub - local.set $7 - loop $while-continue|0 - local.get $1 - local.get $7 - i32.le_u - if - local.get $1 - i32.load - i32.const -2048144777 - i32.mul - local.get $2 - i32.add - i32.const 13 - i32.rotl - i32.const -1640531535 - i32.mul - local.set $2 - local.get $1 - i32.load offset=4 - i32.const -2048144777 - i32.mul - local.get $4 - i32.add - i32.const 13 - i32.rotl - i32.const -1640531535 - i32.mul - local.set $4 - local.get $1 - i32.load offset=8 - i32.const -2048144777 - i32.mul - local.get $6 - i32.add - i32.const 13 - i32.rotl - i32.const -1640531535 - i32.mul - local.set $6 - local.get $1 - i32.load offset=12 - i32.const -2048144777 - i32.mul - local.get $5 - i32.add - i32.const 13 - i32.rotl - i32.const -1640531535 - i32.mul - local.set $5 - local.get $1 - i32.const 16 - i32.add - local.set $1 - br $while-continue|0 - end - end - local.get $2 - i32.const 1 - i32.rotl - local.get $4 - i32.const 7 - i32.rotl - i32.add - local.get $6 - i32.const 12 - i32.rotl - i32.add - local.get $5 - i32.const 18 - i32.rotl - i32.add - local.get $3 - i32.add - else - local.get $3 - i32.const 374761393 - i32.add - end - local.set $2 - local.get $0 - local.get $3 - i32.add - i32.const 4 - i32.sub - local.set $4 - loop $while-continue|1 - local.get $1 - local.get $4 - i32.le_u - if - local.get $1 - i32.load - i32.const -1028477379 - i32.mul - local.get $2 - i32.add - i32.const 17 - i32.rotl - i32.const 668265263 - i32.mul - local.set $2 - local.get $1 - i32.const 4 - i32.add - local.set $1 - br $while-continue|1 - end - end - local.get $0 - local.get $3 - i32.add - local.set $0 - loop $while-continue|2 - local.get $0 - local.get $1 - i32.gt_u - if - local.get $1 - i32.load8_u - i32.const 374761393 - i32.mul - local.get $2 - i32.add - i32.const 11 - i32.rotl - i32.const -1640531535 - i32.mul - local.set $2 - local.get $1 - i32.const 1 - i32.add - local.set $1 - br $while-continue|2 - end - end - ) ) From 68f070c491023f16e45d90805bb62e4b41a3aafa Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sat, 2 Oct 2021 14:58:27 +0300 Subject: [PATCH 29/54] update. Add TableGet operation --- package-lock.json | 14 +++++++------- package.json | 2 +- src/module.ts | 47 ++++++++++++++++++++++++----------------------- 3 files changed, 32 insertions(+), 31 deletions(-) diff --git a/package-lock.json b/package-lock.json index 49ed3bfa3e..308204b272 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "102.0.0-nightly.20210930", + "binaryen": "102.0.0-nightly.20211002", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" @@ -733,9 +733,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "102.0.0-nightly.20210930", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210930.tgz", - "integrity": "sha512-TUmkVM0uFZbvlLTrjIjGzDrv4+Nh4CR620gFxBsFw91xMEaCXTskzjKCGGrnn0nduF1ZRw+r0XHG6yecmfXBTQ==", + "version": "102.0.0-nightly.20211002", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211002.tgz", + "integrity": "sha512-UWAXjXkbRlDdA3+QRypFgVaDDLfHx3bK7P2iFj9Kw0INKaXYKwvSjXTiG3cnJ7SyRU9vXwxOkDYcmsQYFVpHVQ==", "bin": { "wasm-opt": "bin/wasm-opt" } @@ -3508,9 +3508,9 @@ "dev": true }, "binaryen": { - "version": "102.0.0-nightly.20210930", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20210930.tgz", - "integrity": "sha512-TUmkVM0uFZbvlLTrjIjGzDrv4+Nh4CR620gFxBsFw91xMEaCXTskzjKCGGrnn0nduF1ZRw+r0XHG6yecmfXBTQ==" + "version": "102.0.0-nightly.20211002", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211002.tgz", + "integrity": "sha512-UWAXjXkbRlDdA3+QRypFgVaDDLfHx3bK7P2iFj9Kw0INKaXYKwvSjXTiG3cnJ7SyRU9vXwxOkDYcmsQYFVpHVQ==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 6f9245f63d..34fe710a27 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "url": "https://github.com/AssemblyScript/assemblyscript/issues" }, "dependencies": { - "binaryen": "102.0.0-nightly.20210930", + "binaryen": "102.0.0-nightly.20211002", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" diff --git a/src/module.ts b/src/module.ts index 2429afc4b0..122ff1a8fb 100644 --- a/src/module.ts +++ b/src/module.ts @@ -127,29 +127,30 @@ export enum ExpressionId { RefIs = 42 /* _BinaryenRefIsId */, RefFunc = 43 /* _BinaryenRefFuncId */, RefEq = 44 /* _BinaryenRefEqId */, - Try = 45 /* _BinaryenTryId */, - Throw = 46 /* _BinaryenThrowId */, - Rethrow = 47 /* _BinaryenRethrowId */, - TupleMake = 48 /* _BinaryenTupleMakeId */, - TupleExtract = 49 /* _BinaryenTupleExtractId */, - I31New = 50 /* _BinaryenI31NewId */, - I31Get = 51 /* _BinaryenI31GetId */, - CallRef = 52 /* _BinaryenCallRefId */, - RefTest = 53 /* _BinaryenRefTestId */, - RefCast = 54 /* _BinaryenRefCastId */, - BrOn = 55 /* _BinaryenBrOnId */, - RttCanon = 56 /* _BinaryenRttCanonId */, - RttSub = 57 /* _BinaryenRttSubId */, - StructNew = 58 /* _BinaryenStructNewId */, - StructGet = 59 /* _BinaryenStructGetId */, - StructSet = 60 /* _BinaryenStructSetId */, - ArrayNew = 61 /* _BinaryenArrayNewId */, - ArrayInit = 62 /* _BinaryenArrayInitId */, - ArrayGet = 63 /* _BinaryenArrayGetId */, - ArraySet = 64 /* _BinaryenArraySetId */, - ArrayLen = 65 /* _BinaryenArrayLenId */, - ArrayCopy = 66 /* _BinaryenArrayCopyId */, - RefAs = 67 /* _BinaryenRefAsId */ + TableGet = 45 /* _BinaryenTableGetId */, + Try = 46 /* _BinaryenTryId */, + Throw = 47 /* _BinaryenThrowId */, + Rethrow = 48 /* _BinaryenRethrowId */, + TupleMake = 49 /* _BinaryenTupleMakeId */, + TupleExtract = 50 /* _BinaryenTupleExtractId */, + I31New = 51 /* _BinaryenI31NewId */, + I31Get = 52 /* _BinaryenI31GetId */, + CallRef = 53 /* _BinaryenCallRefId */, + RefTest = 54 /* _BinaryenRefTestId */, + RefCast = 55 /* _BinaryenRefCastId */, + BrOn = 56 /* _BinaryenBrOnId */, + RttCanon = 57 /* _BinaryenRttCanonId */, + RttSub = 58 /* _BinaryenRttSubId */, + StructNew = 59 /* _BinaryenStructNewId */, + StructGet = 60 /* _BinaryenStructGetId */, + StructSet = 61 /* _BinaryenStructSetId */, + ArrayNew = 62 /* _BinaryenArrayNewId */, + ArrayInit = 63 /* _BinaryenArrayInitId */, + ArrayGet = 64 /* _BinaryenArrayGetId */, + ArraySet = 65 /* _BinaryenArraySetId */, + ArrayLen = 66 /* _BinaryenArrayLenId */, + ArrayCopy = 67 /* _BinaryenArrayCopyId */, + RefAs = 68 /* _BinaryenRefAsId */ } /** Binaryen external kind constants. */ From 8629f1f7e86f57c27c2d35aa018e34d8e13de4e3 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 5 Oct 2021 12:18:06 +0300 Subject: [PATCH 30/54] update --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 308204b272..a1b396ef26 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "102.0.0-nightly.20211002", + "binaryen": "102.0.0-nightly.20211005", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" @@ -733,9 +733,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "102.0.0-nightly.20211002", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211002.tgz", - "integrity": "sha512-UWAXjXkbRlDdA3+QRypFgVaDDLfHx3bK7P2iFj9Kw0INKaXYKwvSjXTiG3cnJ7SyRU9vXwxOkDYcmsQYFVpHVQ==", + "version": "102.0.0-nightly.20211005", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211005.tgz", + "integrity": "sha512-luGZcUI8AWgJQx74xt7DPQ+E+/Eq5kNAXHW8xEqb3362tHWah1FS2v8Rf+s+K9wY6DjYbKWvCKGpccR2yZKufw==", "bin": { "wasm-opt": "bin/wasm-opt" } @@ -3508,9 +3508,9 @@ "dev": true }, "binaryen": { - "version": "102.0.0-nightly.20211002", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211002.tgz", - "integrity": "sha512-UWAXjXkbRlDdA3+QRypFgVaDDLfHx3bK7P2iFj9Kw0INKaXYKwvSjXTiG3cnJ7SyRU9vXwxOkDYcmsQYFVpHVQ==" + "version": "102.0.0-nightly.20211005", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211005.tgz", + "integrity": "sha512-luGZcUI8AWgJQx74xt7DPQ+E+/Eq5kNAXHW8xEqb3362tHWah1FS2v8Rf+s+K9wY6DjYbKWvCKGpccR2yZKufw==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 34fe710a27..acfc546e6a 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "url": "https://github.com/AssemblyScript/assemblyscript/issues" }, "dependencies": { - "binaryen": "102.0.0-nightly.20211002", + "binaryen": "102.0.0-nightly.20211005", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" From 3bbff0c80ad1f278c82da21a105e88e0097d4e6a Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Wed, 6 Oct 2021 12:36:20 +0300 Subject: [PATCH 31/54] update --- package-lock.json | 14 +- package.json | 2 +- tests/compiler/call-super.optimized.wat | 3 - tests/compiler/class-implements.optimized.wat | 9 - .../class-overloading-cast.optimized.wat | 15 - .../compiler/class-overloading.optimized.wat | 21 -- tests/compiler/class.optimized.wat | 29 +- tests/compiler/constructor.optimized.wat | 36 --- tests/compiler/do.optimized.wat | 3 - .../empty-exportruntime.optimized.wat | 3 - tests/compiler/empty-new.optimized.wat | 3 - tests/compiler/exports.optimized.wat | 3 - .../exportstar-rereexport.optimized.wat | 12 - .../extends-baseaggregate.optimized.wat | 9 - .../compiler/extends-recursive.optimized.wat | 3 - .../field-initialization.optimized.wat | 15 - tests/compiler/field.optimized.wat | 80 ++--- tests/compiler/for.optimized.wat | 3 - tests/compiler/function-call.optimized.wat | 6 - .../function-expression.optimized.wat | 3 - tests/compiler/getter-call.optimized.wat | 3 - .../implicit-getter-setter.optimized.wat | 3 - tests/compiler/infer-array.optimized.wat | 90 +++--- tests/compiler/infer-generic.optimized.wat | 55 ++-- tests/compiler/inlining.optimized.wat | 3 - tests/compiler/instanceof-class.optimized.wat | 9 - tests/compiler/issues/1095.optimized.wat | 3 - tests/compiler/issues/1225.optimized.wat | 6 - tests/compiler/issues/1699.optimized.wat | 6 - tests/compiler/logical.optimized.wat | 3 - tests/compiler/managed-cast.optimized.wat | 3 - tests/compiler/new.optimized.wat | 21 -- tests/compiler/number.optimized.wat | 3 - tests/compiler/object-literal.optimized.wat | 30 -- .../optional-typeparameters.optimized.wat | 9 - tests/compiler/reexport.optimized.wat | 6 - tests/compiler/rereexport.optimized.wat | 12 - tests/compiler/resolve-access.optimized.wat | 27 +- tests/compiler/resolve-binary.optimized.wat | 12 - .../resolve-elementaccess.optimized.wat | 12 - .../resolve-function-expression.optimized.wat | 3 - tests/compiler/resolve-nested.optimized.wat | 3 - tests/compiler/resolve-new.optimized.wat | 6 - .../resolve-propertyaccess.optimized.wat | 3 - tests/compiler/resolve-ternary.optimized.wat | 3 - tests/compiler/resolve-unary.optimized.wat | 9 - tests/compiler/rt/finalize.optimized.wat | 3 - tests/compiler/rt/instanceof.optimized.wat | 21 -- .../runtime-incremental-export.optimized.wat | 3 - .../rt/runtime-minimal-export.optimized.wat | 3 - tests/compiler/std-wasi/console.optimized.wat | 6 - tests/compiler/std-wasi/crypto.optimized.wat | 15 - tests/compiler/std-wasi/process.optimized.wat | 21 -- tests/compiler/std/array-access.optimized.wat | 5 +- .../compiler/std/array-literal.optimized.wat | 45 +-- tests/compiler/std/array.optimized.wat | 67 ++-- tests/compiler/std/arraybuffer.optimized.wat | 30 +- tests/compiler/std/dataview.optimized.wat | 3 - tests/compiler/std/date.optimized.wat | 52 +--- tests/compiler/std/map.optimized.wat | 3 - tests/compiler/std/new.optimized.wat | 6 - .../std/operator-overloading.optimized.wat | 180 ----------- tests/compiler/std/set.optimized.wat | 3 - tests/compiler/std/static-array.optimized.wat | 3 - tests/compiler/std/staticarray.optimized.wat | 95 ++---- .../std/string-casemapping.optimized.wat | 3 - .../std/string-encoding.optimized.wat | 3 - tests/compiler/std/string.optimized.wat | 108 +++---- tests/compiler/std/symbol.optimized.wat | 21 -- tests/compiler/std/typedarray.optimized.wat | 288 +----------------- tests/compiler/std/uri.optimized.wat | 3 - tests/compiler/super-inline.optimized.wat | 9 - tests/compiler/templateliteral.optimized.wat | 12 - tests/compiler/throw.optimized.wat | 3 - tests/compiler/typeof.optimized.wat | 6 - tests/compiler/while.optimized.wat | 3 - 76 files changed, 244 insertions(+), 1394 deletions(-) diff --git a/package-lock.json b/package-lock.json index a1b396ef26..224cd8a224 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "102.0.0-nightly.20211005", + "binaryen": "102.0.0-nightly.20211006", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" @@ -733,9 +733,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "102.0.0-nightly.20211005", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211005.tgz", - "integrity": "sha512-luGZcUI8AWgJQx74xt7DPQ+E+/Eq5kNAXHW8xEqb3362tHWah1FS2v8Rf+s+K9wY6DjYbKWvCKGpccR2yZKufw==", + "version": "102.0.0-nightly.20211006", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211006.tgz", + "integrity": "sha512-1/wg1nQQNqD5AidGqhjXKFj3CheA2Y1h6MNhZs8FEK0GJdCel0htOy+rYqLTeqgNjlmYrOA2hYNpyjk4EA6PDA==", "bin": { "wasm-opt": "bin/wasm-opt" } @@ -3508,9 +3508,9 @@ "dev": true }, "binaryen": { - "version": "102.0.0-nightly.20211005", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211005.tgz", - "integrity": "sha512-luGZcUI8AWgJQx74xt7DPQ+E+/Eq5kNAXHW8xEqb3362tHWah1FS2v8Rf+s+K9wY6DjYbKWvCKGpccR2yZKufw==" + "version": "102.0.0-nightly.20211006", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211006.tgz", + "integrity": "sha512-1/wg1nQQNqD5AidGqhjXKFj3CheA2Y1h6MNhZs8FEK0GJdCel0htOy+rYqLTeqgNjlmYrOA2hYNpyjk4EA6PDA==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index acfc546e6a..4369f8e107 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "url": "https://github.com/AssemblyScript/assemblyscript/issues" }, "dependencies": { - "binaryen": "102.0.0-nightly.20211005", + "binaryen": "102.0.0-nightly.20211006", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" diff --git a/tests/compiler/call-super.optimized.wat b/tests/compiler/call-super.optimized.wat index 63cc007b04..9bcd8d20fb 100644 --- a/tests/compiler/call-super.optimized.wat +++ b/tests/compiler/call-super.optimized.wat @@ -1573,9 +1573,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/class-implements.optimized.wat b/tests/compiler/class-implements.optimized.wat index 3c5d70293b..878c3539dd 100644 --- a/tests/compiler/class-implements.optimized.wat +++ b/tests/compiler/class-implements.optimized.wat @@ -50,18 +50,12 @@ (local $1 i32) global.get $class-implements/a local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $class-implements/c local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1272,9 +1266,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/class-overloading-cast.optimized.wat b/tests/compiler/class-overloading-cast.optimized.wat index 8917b77a9d..797659896e 100644 --- a/tests/compiler/class-overloading-cast.optimized.wat +++ b/tests/compiler/class-overloading-cast.optimized.wat @@ -52,36 +52,24 @@ (local $1 i32) global.get $class-overloading-cast/v local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $class-overloading-cast/v2 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $class-overloading-cast/v3 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $class-overloading-cast/c local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1411,9 +1399,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/class-overloading.optimized.wat b/tests/compiler/class-overloading.optimized.wat index 7c059e09f0..ae7cbe48af 100644 --- a/tests/compiler/class-overloading.optimized.wat +++ b/tests/compiler/class-overloading.optimized.wat @@ -64,54 +64,36 @@ (local $1 i32) global.get $class-overloading/which local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $class-overloading/a local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $class-overloading/c local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $class-overloading/ia local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $class-overloading/ic local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $class-overloading/b2 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1475,9 +1457,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/class.optimized.wat b/tests/compiler/class.optimized.wat index 514c3eae61..1881a56fa8 100644 --- a/tests/compiler/class.optimized.wat +++ b/tests/compiler/class.optimized.wat @@ -1884,29 +1884,19 @@ (func $~lib/rt/__visit_members (param $0 i32) block $folding-inner0 block $invalid - block $~lib/array/Array - block $class/Animal - block $~lib/string/String - block $~lib/arraybuffer/ArrayBuffer - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $folding-inner0 $class/Animal $folding-inner0 $~lib/array/Array $invalid - end - return + block $class/Animal + block $~lib/string/String + block $~lib/arraybuffer/ArrayBuffer + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $folding-inner0 $class/Animal $folding-inner0 $folding-inner0 $invalid end return end return end - local.get $0 - i32.load - local.tee $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end return end unreachable @@ -1914,9 +1904,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/constructor.optimized.wat b/tests/compiler/constructor.optimized.wat index 70db53ad67..041da3d93a 100644 --- a/tests/compiler/constructor.optimized.wat +++ b/tests/compiler/constructor.optimized.wat @@ -51,99 +51,66 @@ (local $1 i32) global.get $constructor/emptyCtor local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $constructor/emptyCtorWithFieldInit local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $constructor/emptyCtorWithFieldNoInit local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $constructor/emptyCtorWithFieldAccess local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $constructor/none local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $constructor/justFieldInit local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $constructor/justFieldNoInit local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $constructor/ctorReturns local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $constructor/ctorConditionallyReturns local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $constructor/ctorConditionallyReturnsThis local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $constructor/ctorFieldInitOrder local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -2072,9 +2039,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/do.optimized.wat b/tests/compiler/do.optimized.wat index f9dac8287c..e099e11ba8 100644 --- a/tests/compiler/do.optimized.wat +++ b/tests/compiler/do.optimized.wat @@ -1463,9 +1463,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/empty-exportruntime.optimized.wat b/tests/compiler/empty-exportruntime.optimized.wat index 0004c63cf2..779c1e8548 100644 --- a/tests/compiler/empty-exportruntime.optimized.wat +++ b/tests/compiler/empty-exportruntime.optimized.wat @@ -1856,9 +1856,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/empty-new.optimized.wat b/tests/compiler/empty-new.optimized.wat index d1c5ba97e5..c1a46990c4 100644 --- a/tests/compiler/empty-new.optimized.wat +++ b/tests/compiler/empty-new.optimized.wat @@ -1008,9 +1008,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/exports.optimized.wat b/tests/compiler/exports.optimized.wat index abd6e74c4c..33d81ce617 100644 --- a/tests/compiler/exports.optimized.wat +++ b/tests/compiler/exports.optimized.wat @@ -1343,9 +1343,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/exportstar-rereexport.optimized.wat b/tests/compiler/exportstar-rereexport.optimized.wat index 49fe59dc1f..06de108299 100644 --- a/tests/compiler/exportstar-rereexport.optimized.wat +++ b/tests/compiler/exportstar-rereexport.optimized.wat @@ -77,27 +77,18 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $rereexport/car local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $rereexport/exportsNamespaceCar local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $reexport/car local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1081,9 +1072,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/extends-baseaggregate.optimized.wat b/tests/compiler/extends-baseaggregate.optimized.wat index 3dd0314f6c..a16c3a7757 100644 --- a/tests/compiler/extends-baseaggregate.optimized.wat +++ b/tests/compiler/extends-baseaggregate.optimized.wat @@ -2625,9 +2625,6 @@ local.get $1 i32.load local.tee $2 - i32.const 0 - local.get $2 - select if local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -2678,9 +2675,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -2690,9 +2684,6 @@ local.get $0 i32.load offset=16 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/extends-recursive.optimized.wat b/tests/compiler/extends-recursive.optimized.wat index d4efd0f2f6..f87a4adf5b 100644 --- a/tests/compiler/extends-recursive.optimized.wat +++ b/tests/compiler/extends-recursive.optimized.wat @@ -1407,9 +1407,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/field-initialization.optimized.wat b/tests/compiler/field-initialization.optimized.wat index fbf528638f..9fe6d50d10 100644 --- a/tests/compiler/field-initialization.optimized.wat +++ b/tests/compiler/field-initialization.optimized.wat @@ -1857,9 +1857,6 @@ local.get $0 i32.load offset=4 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1869,9 +1866,6 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 0 - local.get $1 - select if local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1879,9 +1873,6 @@ local.get $0 i32.load offset=8 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1893,9 +1884,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1905,9 +1893,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/field.optimized.wat b/tests/compiler/field.optimized.wat index 05d9b59408..ad032ff6e5 100644 --- a/tests/compiler/field.optimized.wat +++ b/tests/compiler/field.optimized.wat @@ -2736,59 +2736,46 @@ (local $3 i32) block $folding-inner0 block $invalid - block $~lib/array/Array - block $~lib/array/Array<~lib/string/String> - block $~lib/string/String - block $~lib/arraybuffer/ArrayBuffer - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $folding-inner0 $folding-inner0 $~lib/array/Array<~lib/string/String> $~lib/array/Array $invalid - end - return + block $~lib/array/Array<~lib/string/String> + block $~lib/string/String + block $~lib/arraybuffer/ArrayBuffer + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $folding-inner0 $folding-inner0 $~lib/array/Array<~lib/string/String> $folding-inner0 $invalid end return end - local.get $0 - i32.load offset=4 - local.tee $1 - local.get $0 - i32.load offset=12 - i32.const 2 - i32.shl - i32.add - local.set $2 - loop $while-continue|0 + return + end + local.get $0 + i32.load offset=4 + local.tee $1 + local.get $0 + i32.load offset=12 + i32.const 2 + i32.shl + i32.add + local.set $2 + loop $while-continue|0 + local.get $1 + local.get $2 + i32.lt_u + if local.get $1 - local.get $2 - i32.lt_u + i32.load + local.tee $3 if - local.get $1 - i32.load - local.tee $3 - i32.const 0 local.get $3 - select - if - local.get $3 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end - local.get $1 - i32.const 4 - i32.add - local.set $1 - br $while-continue|0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit end + local.get $1 + i32.const 4 + i32.add + local.set $1 + br $while-continue|0 end - local.get $0 - i32.load - local.tee $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end - return end local.get $0 i32.load @@ -2804,9 +2791,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/for.optimized.wat b/tests/compiler/for.optimized.wat index a0f6c9c2d6..a5fa15c463 100644 --- a/tests/compiler/for.optimized.wat +++ b/tests/compiler/for.optimized.wat @@ -1459,9 +1459,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/function-call.optimized.wat b/tests/compiler/function-call.optimized.wat index e04b314636..76cd5bdafd 100644 --- a/tests/compiler/function-call.optimized.wat +++ b/tests/compiler/function-call.optimized.wat @@ -72,9 +72,6 @@ (local $1 i32) global.get $function-call/foo local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1063,9 +1060,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/function-expression.optimized.wat b/tests/compiler/function-expression.optimized.wat index 2ea72fa32f..f497958ef9 100644 --- a/tests/compiler/function-expression.optimized.wat +++ b/tests/compiler/function-expression.optimized.wat @@ -1513,9 +1513,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/getter-call.optimized.wat b/tests/compiler/getter-call.optimized.wat index c58e73f395..098f1c23d5 100644 --- a/tests/compiler/getter-call.optimized.wat +++ b/tests/compiler/getter-call.optimized.wat @@ -1020,9 +1020,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/implicit-getter-setter.optimized.wat b/tests/compiler/implicit-getter-setter.optimized.wat index dc8880590d..395fc747b4 100644 --- a/tests/compiler/implicit-getter-setter.optimized.wat +++ b/tests/compiler/implicit-getter-setter.optimized.wat @@ -1416,9 +1416,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/infer-array.optimized.wat b/tests/compiler/infer-array.optimized.wat index 19375a6bf8..f1ea8585fb 100644 --- a/tests/compiler/infer-array.optimized.wat +++ b/tests/compiler/infer-array.optimized.wat @@ -2709,33 +2709,20 @@ (local $1 i32) (local $2 i32) (local $3 i32) - block $folding-inner1 - block $folding-inner0 + block $folding-inner2 + block $folding-inner1 block $invalid block $infer-array/Ref - block $~lib/arraybuffer/ArrayBufferView - block $~lib/string/String - block $~lib/arraybuffer/ArrayBuffer - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $~lib/arraybuffer/ArrayBufferView $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $infer-array/Ref $folding-inner1 $folding-inner1 $folding-inner0 $folding-inner1 $invalid - end - return + block $~lib/string/String + block $~lib/arraybuffer/ArrayBuffer + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $folding-inner2 $folding-inner2 $folding-inner2 $folding-inner2 $folding-inner2 $infer-array/Ref $folding-inner1 $folding-inner1 $folding-inner2 $folding-inner1 $invalid end return end - local.get $0 - i32.load - local.tee $0 - i32.const 0 - local.get $0 - select - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end return end return @@ -2743,6 +2730,34 @@ unreachable end local.get $0 + i32.load offset=4 + local.tee $1 + local.get $0 + i32.load offset=12 + i32.const 2 + i32.shl + i32.add + local.set $2 + loop $while-continue|0 + local.get $1 + local.get $2 + i32.lt_u + if + local.get $1 + i32.load + local.tee $3 + if + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end + local.get $1 + i32.const 4 + i32.add + local.set $1 + br $while-continue|0 + end + end + local.get $0 i32.load local.tee $0 if @@ -2752,37 +2767,6 @@ return end local.get $0 - i32.load offset=4 - local.tee $1 - local.get $0 - i32.load offset=12 - i32.const 2 - i32.shl - i32.add - local.set $2 - loop $while-continue|0 - local.get $1 - local.get $2 - i32.lt_u - if - local.get $1 - i32.load - local.tee $3 - i32.const 0 - local.get $3 - select - if - local.get $3 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end - local.get $1 - i32.const 4 - i32.add - local.set $1 - br $while-continue|0 - end - end - local.get $0 i32.load local.tee $0 if diff --git a/tests/compiler/infer-generic.optimized.wat b/tests/compiler/infer-generic.optimized.wat index 2f9eb9d937..e3b2696c0a 100644 --- a/tests/compiler/infer-generic.optimized.wat +++ b/tests/compiler/infer-generic.optimized.wat @@ -1279,50 +1279,37 @@ local.get $0 ) (func $~lib/rt/__visit_members (param $0 i32) - block $folding-inner0 - block $invalid - block $infer-generic/Ref - block $~lib/array/Array - block $~lib/arraybuffer/ArrayBufferView - block $~lib/string/String - block $~lib/arraybuffer/ArrayBuffer - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $~lib/arraybuffer/ArrayBufferView $~lib/array/Array $folding-inner0 $infer-generic/Ref $folding-inner0 $folding-inner0 $invalid - end - return + block $folding-inner1 + block $folding-inner0 + block $invalid + block $infer-generic/Ref + block $~lib/string/String + block $~lib/arraybuffer/ArrayBuffer + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $folding-inner1 $folding-inner1 $folding-inner0 $infer-generic/Ref $folding-inner0 $folding-inner0 $invalid end return end - local.get $0 - i32.load - local.tee $0 - i32.const 0 - local.get $0 - select - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end return end - local.get $0 - i32.load - local.tee $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end return end - return + unreachable end - unreachable + local.get $0 + i32.load offset=4 + local.tee $0 + if + local.get $0 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end + return end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/inlining.optimized.wat b/tests/compiler/inlining.optimized.wat index c73ef7ccb5..a819883f85 100644 --- a/tests/compiler/inlining.optimized.wat +++ b/tests/compiler/inlining.optimized.wat @@ -1579,9 +1579,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/instanceof-class.optimized.wat b/tests/compiler/instanceof-class.optimized.wat index 65d1db166c..d839c627fe 100644 --- a/tests/compiler/instanceof-class.optimized.wat +++ b/tests/compiler/instanceof-class.optimized.wat @@ -42,18 +42,12 @@ (local $1 i32) global.get $instanceof-class/a local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $instanceof-class/b local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1491,9 +1485,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/issues/1095.optimized.wat b/tests/compiler/issues/1095.optimized.wat index 1274513ebf..b20f2b6656 100644 --- a/tests/compiler/issues/1095.optimized.wat +++ b/tests/compiler/issues/1095.optimized.wat @@ -1407,9 +1407,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/issues/1225.optimized.wat b/tests/compiler/issues/1225.optimized.wat index 9b5862dcdc..0688f2738c 100644 --- a/tests/compiler/issues/1225.optimized.wat +++ b/tests/compiler/issues/1225.optimized.wat @@ -43,9 +43,6 @@ (local $1 i32) global.get $issues/1225/x local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1422,9 +1419,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/issues/1699.optimized.wat b/tests/compiler/issues/1699.optimized.wat index 1cf54acd96..6c430a7c96 100644 --- a/tests/compiler/issues/1699.optimized.wat +++ b/tests/compiler/issues/1699.optimized.wat @@ -2999,9 +2999,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -3027,9 +3024,6 @@ local.get $1 i32.load local.tee $3 - i32.const 0 - local.get $3 - select if local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/logical.optimized.wat b/tests/compiler/logical.optimized.wat index 630804aaa4..700fc0a95d 100644 --- a/tests/compiler/logical.optimized.wat +++ b/tests/compiler/logical.optimized.wat @@ -1013,9 +1013,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/managed-cast.optimized.wat b/tests/compiler/managed-cast.optimized.wat index 8ff8291a16..3b5b38560d 100644 --- a/tests/compiler/managed-cast.optimized.wat +++ b/tests/compiler/managed-cast.optimized.wat @@ -1246,9 +1246,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/new.optimized.wat b/tests/compiler/new.optimized.wat index 47d062d1c2..7380be7ade 100644 --- a/tests/compiler/new.optimized.wat +++ b/tests/compiler/new.optimized.wat @@ -44,54 +44,36 @@ (local $1 i32) global.get $new/ref local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $new/gen local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $new/ref2 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $new/genext local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $new/genext2 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $new/genext3 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1302,9 +1284,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/number.optimized.wat b/tests/compiler/number.optimized.wat index cbce538101..5a5c2d807c 100644 --- a/tests/compiler/number.optimized.wat +++ b/tests/compiler/number.optimized.wat @@ -3567,9 +3567,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/object-literal.optimized.wat b/tests/compiler/object-literal.optimized.wat index 7faba5f4d2..a4e58e527f 100644 --- a/tests/compiler/object-literal.optimized.wat +++ b/tests/compiler/object-literal.optimized.wat @@ -2576,9 +2576,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -2590,9 +2587,6 @@ local.get $0 i32.load local.tee $1 - i32.const 0 - local.get $1 - select if local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -2600,9 +2594,6 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 0 - local.get $1 - select if local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -2610,9 +2601,6 @@ local.get $0 i32.load offset=8 local.tee $1 - i32.const 0 - local.get $1 - select if local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -2620,9 +2608,6 @@ local.get $0 i32.load offset=12 local.tee $1 - i32.const 0 - local.get $1 - select if local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -2630,9 +2615,6 @@ local.get $0 i32.load offset=16 local.tee $1 - i32.const 0 - local.get $1 - select if local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -2640,9 +2622,6 @@ local.get $0 i32.load offset=20 local.tee $1 - i32.const 0 - local.get $1 - select if local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -2650,9 +2629,6 @@ local.get $0 i32.load offset=24 local.tee $1 - i32.const 0 - local.get $1 - select if local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -2660,9 +2636,6 @@ local.get $0 i32.load offset=28 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -2674,9 +2647,6 @@ local.get $0 i32.load offset=4 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/optional-typeparameters.optimized.wat b/tests/compiler/optional-typeparameters.optimized.wat index 7edf70d37f..cdd92639bc 100644 --- a/tests/compiler/optional-typeparameters.optimized.wat +++ b/tests/compiler/optional-typeparameters.optimized.wat @@ -40,18 +40,12 @@ (local $1 i32) global.get $optional-typeparameters/tConcrete local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $optional-typeparameters/tDerived local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1260,9 +1254,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/reexport.optimized.wat b/tests/compiler/reexport.optimized.wat index 8ed42c9363..a66ddcedcb 100644 --- a/tests/compiler/reexport.optimized.wat +++ b/tests/compiler/reexport.optimized.wat @@ -123,9 +123,6 @@ (local $1 i32) global.get $reexport/car local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1391,9 +1388,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/rereexport.optimized.wat b/tests/compiler/rereexport.optimized.wat index 63993d0efc..053035edda 100644 --- a/tests/compiler/rereexport.optimized.wat +++ b/tests/compiler/rereexport.optimized.wat @@ -73,18 +73,12 @@ (local $1 i32) global.get $rereexport/car local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $rereexport/exportsNamespaceCar local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -95,9 +89,6 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $reexport/car local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1081,9 +1072,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/resolve-access.optimized.wat b/tests/compiler/resolve-access.optimized.wat index e568b573be..806f78006f 100644 --- a/tests/compiler/resolve-access.optimized.wat +++ b/tests/compiler/resolve-access.optimized.wat @@ -2746,29 +2746,16 @@ block $folding-inner0 block $invalid block $resolve-access/Container - block $~lib/arraybuffer/ArrayBufferView - block $~lib/string/String - block $~lib/arraybuffer/ArrayBuffer - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $~lib/arraybuffer/ArrayBufferView $folding-inner0 $folding-inner0 $resolve-access/Container $invalid - end - return + block $~lib/string/String + block $~lib/arraybuffer/ArrayBuffer + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $folding-inner0 $folding-inner0 $folding-inner0 $resolve-access/Container $invalid end return end - local.get $0 - i32.load - local.tee $0 - i32.const 0 - local.get $0 - select - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end return end return diff --git a/tests/compiler/resolve-binary.optimized.wat b/tests/compiler/resolve-binary.optimized.wat index b850b90b04..bba554783f 100644 --- a/tests/compiler/resolve-binary.optimized.wat +++ b/tests/compiler/resolve-binary.optimized.wat @@ -359,27 +359,18 @@ (local $1 i32) global.get $resolve-binary/foo local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $resolve-binary/bar local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $resolve-binary/bar2 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -3912,9 +3903,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/resolve-elementaccess.optimized.wat b/tests/compiler/resolve-elementaccess.optimized.wat index 710b4b797e..e6fddeb231 100644 --- a/tests/compiler/resolve-elementaccess.optimized.wat +++ b/tests/compiler/resolve-elementaccess.optimized.wat @@ -95,18 +95,12 @@ (local $1 i32) global.get $resolve-elementaccess/arr local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $resolve-elementaccess/buf local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -4180,9 +4174,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -4194,9 +4185,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/resolve-function-expression.optimized.wat b/tests/compiler/resolve-function-expression.optimized.wat index 859daa5919..8a7cd857da 100644 --- a/tests/compiler/resolve-function-expression.optimized.wat +++ b/tests/compiler/resolve-function-expression.optimized.wat @@ -1604,9 +1604,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/resolve-nested.optimized.wat b/tests/compiler/resolve-nested.optimized.wat index 3a4d1d3ffa..101a1f9032 100644 --- a/tests/compiler/resolve-nested.optimized.wat +++ b/tests/compiler/resolve-nested.optimized.wat @@ -1252,9 +1252,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/resolve-new.optimized.wat b/tests/compiler/resolve-new.optimized.wat index 0451a26ac3..e594fe24c6 100644 --- a/tests/compiler/resolve-new.optimized.wat +++ b/tests/compiler/resolve-new.optimized.wat @@ -39,9 +39,6 @@ (local $1 i32) global.get $resolve-new/foo local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1021,9 +1018,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/resolve-propertyaccess.optimized.wat b/tests/compiler/resolve-propertyaccess.optimized.wat index 67ef4e4620..aa5f16d021 100644 --- a/tests/compiler/resolve-propertyaccess.optimized.wat +++ b/tests/compiler/resolve-propertyaccess.optimized.wat @@ -1934,9 +1934,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/resolve-ternary.optimized.wat b/tests/compiler/resolve-ternary.optimized.wat index da81b38d5b..a0a280605f 100644 --- a/tests/compiler/resolve-ternary.optimized.wat +++ b/tests/compiler/resolve-ternary.optimized.wat @@ -3470,9 +3470,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/resolve-unary.optimized.wat b/tests/compiler/resolve-unary.optimized.wat index 11e5882f7e..43329a9681 100644 --- a/tests/compiler/resolve-unary.optimized.wat +++ b/tests/compiler/resolve-unary.optimized.wat @@ -84,18 +84,12 @@ (local $1 i32) global.get $resolve-unary/foo local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $resolve-unary/bar local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1961,9 +1955,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/rt/finalize.optimized.wat b/tests/compiler/rt/finalize.optimized.wat index 983b5bd47f..1312411776 100644 --- a/tests/compiler/rt/finalize.optimized.wat +++ b/tests/compiler/rt/finalize.optimized.wat @@ -1363,9 +1363,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/rt/instanceof.optimized.wat b/tests/compiler/rt/instanceof.optimized.wat index 71310a46ee..29289dcc40 100644 --- a/tests/compiler/rt/instanceof.optimized.wat +++ b/tests/compiler/rt/instanceof.optimized.wat @@ -47,54 +47,36 @@ (local $1 i32) global.get $rt/instanceof/animal local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $rt/instanceof/cat local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $rt/instanceof/blackcat local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $rt/instanceof/nullableAnimal local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $rt/instanceof/nullableCat local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $rt/instanceof/nullableBlackcat local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1984,9 +1966,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/rt/runtime-incremental-export.optimized.wat b/tests/compiler/rt/runtime-incremental-export.optimized.wat index 0004c63cf2..779c1e8548 100644 --- a/tests/compiler/rt/runtime-incremental-export.optimized.wat +++ b/tests/compiler/rt/runtime-incremental-export.optimized.wat @@ -1856,9 +1856,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/rt/runtime-minimal-export.optimized.wat b/tests/compiler/rt/runtime-minimal-export.optimized.wat index be7747c912..fb62bf9f2f 100644 --- a/tests/compiler/rt/runtime-minimal-export.optimized.wat +++ b/tests/compiler/rt/runtime-minimal-export.optimized.wat @@ -1387,9 +1387,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/tcms/__visit diff --git a/tests/compiler/std-wasi/console.optimized.wat b/tests/compiler/std-wasi/console.optimized.wat index 8075c378f2..3c5d31d8b5 100644 --- a/tests/compiler/std-wasi/console.optimized.wat +++ b/tests/compiler/std-wasi/console.optimized.wat @@ -2192,9 +2192,6 @@ (local $1 i32) global.get $~lib/console/timers local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -3637,9 +3634,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/std-wasi/crypto.optimized.wat b/tests/compiler/std-wasi/crypto.optimized.wat index abff61ed05..6bef072581 100644 --- a/tests/compiler/std-wasi/crypto.optimized.wat +++ b/tests/compiler/std-wasi/crypto.optimized.wat @@ -645,36 +645,24 @@ (local $1 i32) global.get $std-wasi/crypto/ab local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std-wasi/crypto/buf local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std-wasi/crypto/b1 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std-wasi/crypto/b2 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -4405,9 +4393,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/std-wasi/process.optimized.wat b/tests/compiler/std-wasi/process.optimized.wat index fc6bc73eea..3551fc51e5 100644 --- a/tests/compiler/std-wasi/process.optimized.wat +++ b/tests/compiler/std-wasi/process.optimized.wat @@ -2181,45 +2181,30 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $~lib/process/process.argv local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $~lib/process/process.env local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std-wasi/process/argv local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std-wasi/process/env local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std-wasi/process/envKeys local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -4455,9 +4440,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -4481,9 +4463,6 @@ local.get $1 i32.load local.tee $3 - i32.const 0 - local.get $3 - select if local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/std/array-access.optimized.wat b/tests/compiler/std/array-access.optimized.wat index c0d2553a2c..6c0e7ac5fb 100644 --- a/tests/compiler/std/array-access.optimized.wat +++ b/tests/compiler/std/array-access.optimized.wat @@ -24,7 +24,6 @@ (local $2 i32) (local $3 i32) (local $4 i32) - i32.const 0 local.get $0 i32.const 20 i32.sub @@ -32,8 +31,8 @@ i32.const 1 i32.shr_u local.tee $1 - local.get $1 - select + drop + i32.const 0 local.set $2 local.get $1 local.get $2 diff --git a/tests/compiler/std/array-literal.optimized.wat b/tests/compiler/std/array-literal.optimized.wat index c17d05db4d..4f6cd43a6f 100644 --- a/tests/compiler/std/array-literal.optimized.wat +++ b/tests/compiler/std/array-literal.optimized.wat @@ -104,45 +104,30 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $std/array-literal/emptyArrayI32 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/array-literal/dynamicArrayI8 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/array-literal/dynamicArrayI32 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/array-literal/dynamicArrayRef local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/array-literal/dynamicArrayRefWithCtor local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1826,9 +1811,6 @@ local.get $1 i32.load local.tee $2 - i32.const 0 - local.get $2 - select if local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1855,29 +1837,16 @@ block $std/array-literal/RefWithCtor block $~lib/array/Array block $std/array-literal/Ref - block $~lib/arraybuffer/ArrayBufferView - block $~lib/string/String - block $~lib/arraybuffer/ArrayBuffer - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $~lib/arraybuffer/ArrayBufferView $folding-inner0 $folding-inner0 $std/array-literal/Ref $~lib/array/Array $std/array-literal/RefWithCtor $~lib/array/Array $invalid - end - return + block $~lib/string/String + block $~lib/arraybuffer/ArrayBuffer + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $folding-inner0 $folding-inner0 $folding-inner0 $std/array-literal/Ref $~lib/array/Array $std/array-literal/RefWithCtor $~lib/array/Array $invalid end return end - local.get $0 - i32.load - local.tee $0 - i32.const 0 - local.get $0 - select - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end return end return diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index fab963afc4..d806748967 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -716,9 +716,6 @@ (local $1 i32) global.get $std/array/arr local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -727,18 +724,12 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $std/array/inputStabArr local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/array/outputStabArr local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -13450,9 +13441,6 @@ local.get $1 i32.load local.tee $2 - i32.const 0 - local.get $2 - select if local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -13473,24 +13461,21 @@ end ) (func $~lib/rt/__visit_members (param $0 i32) - block $folding-inner4 - block $folding-inner3 - block $folding-inner2 - block $folding-inner1 - block $invalid - block $std/array/ArrayStr - block $std/array/Proxy - block $std/array/Dim - block $std/array/Ref - block $~lib/string/String - block $~lib/arraybuffer/ArrayBuffer - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $folding-inner3 $folding-inner4 $std/array/Ref $folding-inner3 $folding-inner4 $folding-inner4 $folding-inner1 $folding-inner4 $folding-inner4 $folding-inner4 $folding-inner1 $folding-inner2 $folding-inner2 $folding-inner2 $folding-inner2 $folding-inner2 $folding-inner2 $std/array/Dim $folding-inner1 $folding-inner2 $folding-inner2 $folding-inner2 $folding-inner2 $folding-inner2 $folding-inner1 $folding-inner2 $std/array/Proxy $folding-inner1 $folding-inner2 $folding-inner1 $folding-inner2 $folding-inner1 $folding-inner2 $folding-inner4 $folding-inner4 $folding-inner4 $folding-inner4 $folding-inner1 $folding-inner1 $folding-inner1 $folding-inner1 $folding-inner2 $folding-inner4 $folding-inner4 $std/array/ArrayStr $folding-inner2 $invalid - end - return + block $folding-inner3 + block $folding-inner2 + block $folding-inner1 + block $invalid + block $std/array/ArrayStr + block $std/array/Proxy + block $std/array/Dim + block $std/array/Ref + block $~lib/string/String + block $~lib/arraybuffer/ArrayBuffer + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $folding-inner3 $folding-inner3 $std/array/Ref $folding-inner3 $folding-inner3 $folding-inner3 $folding-inner1 $folding-inner3 $folding-inner3 $folding-inner3 $folding-inner1 $folding-inner2 $folding-inner2 $folding-inner2 $folding-inner2 $folding-inner2 $folding-inner2 $std/array/Dim $folding-inner1 $folding-inner2 $folding-inner2 $folding-inner2 $folding-inner2 $folding-inner2 $folding-inner1 $folding-inner2 $std/array/Proxy $folding-inner1 $folding-inner2 $folding-inner1 $folding-inner2 $folding-inner1 $folding-inner2 $folding-inner3 $folding-inner3 $folding-inner3 $folding-inner3 $folding-inner1 $folding-inner1 $folding-inner1 $folding-inner1 $folding-inner2 $folding-inner3 $folding-inner3 $std/array/ArrayStr $folding-inner2 $invalid end return end @@ -13500,31 +13485,21 @@ end return end - local.get $0 - call $~lib/array/Array~visit return end - unreachable + local.get $0 + call $~lib/array/Array~visit + return end - local.get $0 - call $~lib/array/Array~visit - return + unreachable end local.get $0 - i32.load offset=4 - local.tee $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end + call $~lib/array/Array~visit return end local.get $0 - i32.load + i32.load offset=4 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/std/arraybuffer.optimized.wat b/tests/compiler/std/arraybuffer.optimized.wat index e06590ea3e..60d186ef35 100644 --- a/tests/compiler/std/arraybuffer.optimized.wat +++ b/tests/compiler/std/arraybuffer.optimized.wat @@ -2571,26 +2571,16 @@ block $folding-inner1 block $folding-inner0 block $invalid - block $~lib/array/Array - block $~lib/string/String - block $~lib/arraybuffer/ArrayBuffer - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $folding-inner1 $~lib/array/Array $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner1 $invalid - end - return + block $~lib/string/String + block $~lib/arraybuffer/ArrayBuffer + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $folding-inner1 $folding-inner1 $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner1 $invalid end return end - local.get $0 - i32.load - local.tee $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end return end unreachable @@ -2598,9 +2588,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -2610,9 +2597,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/std/dataview.optimized.wat b/tests/compiler/std/dataview.optimized.wat index 6288772b50..d16cd76d92 100644 --- a/tests/compiler/std/dataview.optimized.wat +++ b/tests/compiler/std/dataview.optimized.wat @@ -2444,9 +2444,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/std/date.optimized.wat b/tests/compiler/std/date.optimized.wat index 210ef92aef..45aa3ec433 100644 --- a/tests/compiler/std/date.optimized.wat +++ b/tests/compiler/std/date.optimized.wat @@ -4253,34 +4253,21 @@ (local $1 i32) (local $2 i32) (local $3 i32) - block $invalid - block $~lib/array/Array + block $folding-inner0 + block $invalid block $~lib/array/Array<~lib/string/String> block $~lib/staticarray/StaticArray<~lib/string/String> block $~lib/date/Date - block $~lib/arraybuffer/ArrayBufferView - block $~lib/string/String - block $~lib/arraybuffer/ArrayBuffer - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $~lib/arraybuffer/ArrayBufferView $~lib/date/Date $~lib/staticarray/StaticArray<~lib/string/String> $~lib/array/Array<~lib/string/String> $~lib/array/Array $invalid - end - return + block $~lib/string/String + block $~lib/arraybuffer/ArrayBuffer + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $folding-inner0 $~lib/date/Date $~lib/staticarray/StaticArray<~lib/string/String> $~lib/array/Array<~lib/string/String> $folding-inner0 $invalid end return end - local.get $0 - i32.load - local.tee $0 - i32.const 0 - local.get $0 - select - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end return end return @@ -4300,9 +4287,6 @@ local.get $0 i32.load local.tee $2 - i32.const 0 - local.get $2 - select if local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -4333,9 +4317,6 @@ local.get $1 i32.load local.tee $2 - i32.const 0 - local.get $2 - select if local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -4356,16 +4337,15 @@ end return end + unreachable + end + local.get $0 + i32.load + local.tee $0 + if local.get $0 - i32.load - local.tee $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end - return + call $byn-split-outlined-A$~lib/rt/itcms/__visit end - unreachable ) (func $~start global.get $~started diff --git a/tests/compiler/std/map.optimized.wat b/tests/compiler/std/map.optimized.wat index 683505063c..1b725ef644 100644 --- a/tests/compiler/std/map.optimized.wat +++ b/tests/compiler/std/map.optimized.wat @@ -22322,9 +22322,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/std/new.optimized.wat b/tests/compiler/std/new.optimized.wat index 3d2a52cca2..4b0ce598a2 100644 --- a/tests/compiler/std/new.optimized.wat +++ b/tests/compiler/std/new.optimized.wat @@ -39,9 +39,6 @@ (local $1 i32) global.get $std/new/aClass local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1360,9 +1357,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/std/operator-overloading.optimized.wat b/tests/compiler/std/operator-overloading.optimized.wat index 1bf2c2f58f..9b4336e399 100644 --- a/tests/compiler/std/operator-overloading.optimized.wat +++ b/tests/compiler/std/operator-overloading.optimized.wat @@ -1511,531 +1511,354 @@ (local $0 i32) global.get $std/operator-overloading/a1 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/a2 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/a local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/s1 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/s2 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/s local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/m1 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/m2 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/m local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/d1 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/d2 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/d local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/f1 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/f2 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/f local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/p1 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/p2 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/p local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/n1 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/n2 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/n local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/o1 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/o2 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/o local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/x1 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/x2 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/x local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/eq1 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/eq2 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/eq3 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/eq4 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/gt1 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/gt2 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/gte1 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/gte2 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/le1 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/le2 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/leq1 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/leq2 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/shr local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/sres local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/shu local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/ures local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/shl local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/pos local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/pres local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/neg local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/nres local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/not local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/res local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/excl local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/incdec local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/tmp local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/ais1 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/ais2 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/ais local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/aii1 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/aii2 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/operator-overloading/aii local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -2066,9 +1889,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/std/set.optimized.wat b/tests/compiler/std/set.optimized.wat index 85b41b58a5..4951ffc494 100644 --- a/tests/compiler/std/set.optimized.wat +++ b/tests/compiler/std/set.optimized.wat @@ -17407,9 +17407,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/std/static-array.optimized.wat b/tests/compiler/std/static-array.optimized.wat index 7646ae03f2..a54fb43853 100644 --- a/tests/compiler/std/static-array.optimized.wat +++ b/tests/compiler/std/static-array.optimized.wat @@ -2843,9 +2843,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/std/staticarray.optimized.wat b/tests/compiler/std/staticarray.optimized.wat index 661961994e..06bc522f37 100644 --- a/tests/compiler/std/staticarray.optimized.wat +++ b/tests/compiler/std/staticarray.optimized.wat @@ -215,18 +215,12 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $std/staticarray/arr3 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/staticarray/arr4 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -4086,9 +4080,6 @@ local.get $0 i32.load local.tee $1 - i32.const 0 - local.get $1 - select if local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -4115,29 +4106,16 @@ block $~lib/staticarray/StaticArray block $std/staticarray/Ref block $~lib/staticarray/StaticArray - block $~lib/arraybuffer/ArrayBufferView - block $~lib/string/String - block $~lib/arraybuffer/ArrayBuffer - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $~lib/arraybuffer/ArrayBufferView $~lib/staticarray/StaticArray $std/staticarray/Ref $~lib/staticarray/StaticArray $folding-inner1 $folding-inner1 $~lib/staticarray/StaticArray<~lib/string/String> $~lib/array/Array<~lib/string/String> $~lib/staticarray/StaticArray $~lib/staticarray/StaticArray $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $invalid - end - return + block $~lib/string/String + block $~lib/arraybuffer/ArrayBuffer + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $folding-inner1 $~lib/staticarray/StaticArray $std/staticarray/Ref $~lib/staticarray/StaticArray $folding-inner1 $folding-inner1 $~lib/staticarray/StaticArray<~lib/string/String> $~lib/array/Array<~lib/string/String> $~lib/staticarray/StaticArray $~lib/staticarray/StaticArray $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $folding-inner0 $invalid end return end - local.get $0 - i32.load - local.tee $0 - i32.const 0 - local.get $0 - select - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end return end return @@ -4160,20 +4138,17 @@ i32.const 2 i32.shl i32.add - local.set $3 + local.set $2 loop $while-continue|0 local.get $1 - local.get $3 + local.get $2 i32.lt_u if local.get $1 i32.load - local.tee $2 - i32.const 0 - local.get $2 - select + local.tee $3 if - local.get $2 + local.get $3 call $byn-split-outlined-A$~lib/rt/itcms/__visit end local.get $1 @@ -5319,9 +5294,6 @@ i32.const 3 i32.shr_u local.tee $1 - i32.const 0 - local.get $1 - select i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#includes drop @@ -5385,9 +5357,6 @@ i32.const 2 i32.shr_u local.tee $1 - i32.const 0 - local.get $1 - select i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#includes drop @@ -5452,9 +5421,6 @@ i32.const 2 i32.shr_u local.tee $2 - i32.const 0 - local.get $2 - select i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf loop $while-continue|027 @@ -5503,9 +5469,6 @@ i32.const 2 i32.shr_u local.tee $2 - i32.const 0 - local.get $2 - select i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf28 loop $while-continue|030 @@ -6410,45 +6373,35 @@ i32.const 20 i32.const 3 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $3 i32.const 3168 i32.const 20 call $~lib/memory/memory.copy - local.get $4 + local.get $3 i32.store offset=16 - i32.const 0 - local.get $4 + local.get $3 + i32.const 3 + local.get $3 i32.const 20 i32.sub i32.load offset=16 i32.const 2 i32.shr_u - local.tee $3 - local.get $3 - select local.tee $2 - i32.const 2 - i32.shl - local.get $4 - i32.add - i32.const 3 - local.get $3 - local.get $3 + local.get $2 i32.const 3 i32.gt_u select local.tee $0 i32.const 2 i32.shl - local.get $4 - i32.add local.get $3 + i32.add + local.get $2 local.get $0 i32.sub local.tee $1 - local.get $3 local.get $2 - i32.sub local.tee $0 local.get $0 local.get $1 @@ -6457,7 +6410,7 @@ i32.const 2 i32.shl call $~lib/memory/memory.copy - local.get $4 + local.get $3 i32.const 0 call $~lib/staticarray/StaticArray#__get i32.const 4 @@ -6470,7 +6423,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 1 call $~lib/staticarray/StaticArray#__get i32.const 5 @@ -6483,7 +6436,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 2 call $~lib/staticarray/StaticArray#__get i32.const 3 @@ -6496,7 +6449,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 3 call $~lib/staticarray/StaticArray#__get i32.const 4 @@ -6509,7 +6462,7 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 i32.const 4 call $~lib/staticarray/StaticArray#__get i32.const 5 diff --git a/tests/compiler/std/string-casemapping.optimized.wat b/tests/compiler/std/string-casemapping.optimized.wat index 5a7db5f858..5d393294b2 100644 --- a/tests/compiler/std/string-casemapping.optimized.wat +++ b/tests/compiler/std/string-casemapping.optimized.wat @@ -3657,9 +3657,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/std/string-encoding.optimized.wat b/tests/compiler/std/string-encoding.optimized.wat index c7c369ca8b..0933a89ca9 100644 --- a/tests/compiler/std/string-encoding.optimized.wat +++ b/tests/compiler/std/string-encoding.optimized.wat @@ -2699,9 +2699,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/std/string.optimized.wat b/tests/compiler/std/string.optimized.wat index b88510d209..3f9825d627 100644 --- a/tests/compiler/std/string.optimized.wat +++ b/tests/compiler/std/string.optimized.wat @@ -1070,9 +1070,6 @@ (local $1 i32) global.get $std/string/str local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -7355,33 +7352,48 @@ (local $1 i32) (local $2 i32) (local $3 i32) - block $invalid - block $~lib/array/Array<~lib/string/String> - block $~lib/array/Array - block $~lib/arraybuffer/ArrayBufferView - block $~lib/string/String - block $~lib/arraybuffer/ArrayBuffer - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $~lib/arraybuffer/ArrayBufferView $~lib/array/Array $~lib/array/Array<~lib/string/String> $invalid - end - return + block $folding-inner0 + block $invalid + block $~lib/array/Array<~lib/string/String> + block $~lib/string/String + block $~lib/arraybuffer/ArrayBuffer + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $folding-inner0 $folding-inner0 $~lib/array/Array<~lib/string/String> $invalid end return end - local.get $0 - i32.load - local.tee $0 - i32.const 0 - local.get $0 - select + return + end + local.get $0 + i32.load offset=4 + local.tee $1 + local.get $0 + i32.load offset=12 + i32.const 2 + i32.shl + i32.add + local.set $2 + loop $while-continue|0 + local.get $1 + local.get $2 + i32.lt_u if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit + local.get $1 + i32.load + local.tee $3 + if + local.get $3 + call $byn-split-outlined-A$~lib/rt/itcms/__visit + end + local.get $1 + i32.const 4 + i32.add + local.set $1 + br $while-continue|0 end - return end local.get $0 i32.load @@ -7392,47 +7404,15 @@ end return end + unreachable + end + local.get $0 + i32.load + local.tee $0 + if local.get $0 - i32.load offset=4 - local.tee $1 - local.get $0 - i32.load offset=12 - i32.const 2 - i32.shl - i32.add - local.set $2 - loop $while-continue|0 - local.get $1 - local.get $2 - i32.lt_u - if - local.get $1 - i32.load - local.tee $3 - i32.const 0 - local.get $3 - select - if - local.get $3 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end - local.get $1 - i32.const 4 - i32.add - local.set $1 - br $while-continue|0 - end - end - local.get $0 - i32.load - local.tee $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end - return + call $byn-split-outlined-A$~lib/rt/itcms/__visit end - unreachable ) (func $~start call $start:std/string diff --git a/tests/compiler/std/symbol.optimized.wat b/tests/compiler/std/symbol.optimized.wat index aab5f8f882..092950bf9b 100644 --- a/tests/compiler/std/symbol.optimized.wat +++ b/tests/compiler/std/symbol.optimized.wat @@ -102,54 +102,36 @@ (local $1 i32) global.get $~lib/symbol/stringToId local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $~lib/symbol/idToString local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/symbol/key1 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/symbol/key2 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/symbol/key3 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $std/symbol/key4 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -3166,9 +3148,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/std/typedarray.optimized.wat b/tests/compiler/std/typedarray.optimized.wat index 9cbbf770b0..da130efcaa 100644 --- a/tests/compiler/std/typedarray.optimized.wat +++ b/tests/compiler/std/typedarray.optimized.wat @@ -11233,9 +11233,6 @@ i32.const 1 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 local.get $3 @@ -11284,9 +11281,6 @@ i32.const 1 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.01 local.get $3 @@ -11338,9 +11332,6 @@ i32.const 1 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.04 local.get $3 @@ -11392,9 +11383,6 @@ i32.const 1 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.07 local.get $3 @@ -12123,9 +12111,6 @@ i32.const 1 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.027 local.get $1 @@ -12177,9 +12162,6 @@ i32.const 1 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.030 local.get $1 @@ -12229,9 +12211,6 @@ i32.const 1 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.033 local.get $1 @@ -12283,9 +12262,6 @@ i32.const 1 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.036 local.get $1 @@ -12337,9 +12313,6 @@ i32.const 1 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.039 local.get $1 @@ -12391,9 +12364,6 @@ i32.const 1 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.042 local.get $1 @@ -12619,9 +12589,6 @@ i32.const 1 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 local.get $3 @@ -12670,9 +12637,6 @@ i32.const 1 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.01 local.get $3 @@ -12724,9 +12688,6 @@ i32.const 1 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.04 local.get $3 @@ -12778,9 +12739,6 @@ i32.const 1 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.07 local.get $3 @@ -13509,9 +13467,6 @@ i32.const 1 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.027 local.get $1 @@ -13563,9 +13518,6 @@ i32.const 1 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.030 local.get $1 @@ -13615,9 +13567,6 @@ i32.const 1 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.033 local.get $1 @@ -13669,9 +13618,6 @@ i32.const 1 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.036 local.get $1 @@ -13723,9 +13669,6 @@ i32.const 1 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.039 local.get $1 @@ -13777,9 +13720,6 @@ i32.const 1 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.042 local.get $1 @@ -14000,9 +13940,6 @@ i32.const 2 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 local.get $3 @@ -14051,9 +13988,6 @@ i32.const 2 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.01 local.get $3 @@ -14105,9 +14039,6 @@ i32.const 2 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.05 local.get $3 @@ -14159,9 +14090,6 @@ i32.const 2 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.09 local.get $3 @@ -15095,9 +15023,6 @@ i32.const 2 i32.shr_u local.tee $2 - i32.const 0 - local.get $2 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.055 local.get $4 @@ -15149,9 +15074,6 @@ i32.const 2 i32.shr_u local.tee $2 - i32.const 0 - local.get $2 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.059 local.get $4 @@ -15201,9 +15123,6 @@ i32.const 2 i32.shr_u local.tee $2 - i32.const 0 - local.get $2 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.063 local.get $4 @@ -15255,9 +15174,6 @@ i32.const 2 i32.shr_u local.tee $2 - i32.const 0 - local.get $2 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.067 local.get $4 @@ -15309,9 +15225,6 @@ i32.const 2 i32.shr_u local.tee $2 - i32.const 0 - local.get $2 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.071 local.get $4 @@ -15363,9 +15276,6 @@ i32.const 2 i32.shr_u local.tee $2 - i32.const 0 - local.get $2 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.075 local.get $4 @@ -15586,9 +15496,6 @@ i32.const 2 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 local.get $3 @@ -15637,9 +15544,6 @@ i32.const 2 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.01 local.get $3 @@ -15691,9 +15595,6 @@ i32.const 2 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.05 local.get $3 @@ -15745,9 +15646,6 @@ i32.const 2 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.09 local.get $3 @@ -16680,9 +16578,6 @@ i32.const 2 i32.shr_u local.tee $2 - i32.const 0 - local.get $2 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.055 local.get $4 @@ -16734,9 +16629,6 @@ i32.const 2 i32.shr_u local.tee $2 - i32.const 0 - local.get $2 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.059 local.get $4 @@ -16786,9 +16678,6 @@ i32.const 2 i32.shr_u local.tee $2 - i32.const 0 - local.get $2 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.063 local.get $4 @@ -16840,9 +16729,6 @@ i32.const 2 i32.shr_u local.tee $2 - i32.const 0 - local.get $2 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.067 local.get $4 @@ -16894,9 +16780,6 @@ i32.const 2 i32.shr_u local.tee $2 - i32.const 0 - local.get $2 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.071 local.get $4 @@ -16948,9 +16831,6 @@ i32.const 2 i32.shr_u local.tee $2 - i32.const 0 - local.get $2 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.075 local.get $4 @@ -17172,9 +17052,6 @@ i32.const 3 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 local.get $2 @@ -17223,9 +17100,6 @@ i32.const 3 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.01 local.get $2 @@ -17277,9 +17151,6 @@ i32.const 3 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.05 local.get $2 @@ -17331,9 +17202,6 @@ i32.const 3 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.09 local.get $2 @@ -18283,9 +18151,6 @@ i32.const 3 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.055 local.get $4 @@ -18337,9 +18202,6 @@ i32.const 3 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.059 local.get $4 @@ -18389,9 +18251,6 @@ i32.const 3 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.063 local.get $4 @@ -18443,9 +18302,6 @@ i32.const 3 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.067 local.get $4 @@ -18497,9 +18353,6 @@ i32.const 3 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.071 local.get $4 @@ -18551,9 +18404,6 @@ i32.const 3 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.075 local.get $4 @@ -18775,9 +18625,6 @@ i32.const 3 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 local.get $2 @@ -18826,9 +18673,6 @@ i32.const 3 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.01 local.get $2 @@ -18880,9 +18724,6 @@ i32.const 3 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.05 local.get $2 @@ -18934,9 +18775,6 @@ i32.const 3 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.09 local.get $2 @@ -19886,9 +19724,6 @@ i32.const 3 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.055 local.get $4 @@ -19940,9 +19775,6 @@ i32.const 3 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.059 local.get $4 @@ -19992,9 +19824,6 @@ i32.const 3 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.063 local.get $4 @@ -20046,9 +19875,6 @@ i32.const 3 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.067 local.get $4 @@ -20100,9 +19926,6 @@ i32.const 3 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.071 local.get $4 @@ -20154,9 +19977,6 @@ i32.const 3 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.075 local.get $4 @@ -20378,9 +20198,6 @@ i32.const 2 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 local.get $2 @@ -20430,9 +20247,6 @@ i32.const 2 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.01 local.get $2 @@ -20484,9 +20298,6 @@ i32.const 2 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.05 local.get $2 @@ -20538,9 +20349,6 @@ i32.const 2 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.09 local.get $2 @@ -21491,9 +21299,6 @@ i32.const 2 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.055 local.get $4 @@ -21545,9 +21350,6 @@ i32.const 2 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.059 local.get $4 @@ -21597,9 +21399,6 @@ i32.const 2 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.063 local.get $4 @@ -21651,9 +21450,6 @@ i32.const 2 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.067 local.get $4 @@ -21705,9 +21501,6 @@ i32.const 2 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.071 local.get $4 @@ -21759,9 +21552,6 @@ i32.const 2 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.075 local.get $4 @@ -21983,9 +21773,6 @@ i32.const 3 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 local.get $2 @@ -22035,9 +21822,6 @@ i32.const 3 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.01 local.get $2 @@ -22089,9 +21873,6 @@ i32.const 3 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.05 local.get $2 @@ -22143,9 +21924,6 @@ i32.const 3 i32.shr_u local.tee $4 - i32.const 0 - local.get $4 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.09 local.get $2 @@ -23097,9 +22875,6 @@ i32.const 3 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.055 local.get $4 @@ -23151,9 +22926,6 @@ i32.const 3 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.059 local.get $4 @@ -23203,9 +22975,6 @@ i32.const 3 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.063 local.get $4 @@ -23257,9 +23026,6 @@ i32.const 3 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.067 local.get $4 @@ -23311,9 +23077,6 @@ i32.const 3 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.071 local.get $4 @@ -23365,9 +23128,6 @@ i32.const 3 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.075 local.get $4 @@ -36298,9 +36058,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -44846,14 +44603,12 @@ local.get $4 i32.load offset=4 local.set $2 - i32.const 0 local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 - local.get $0 - select + local.set $0 + i32.const 0 local.set $1 loop $for-loop|01 local.get $0 @@ -44899,15 +44654,11 @@ i32.load offset=4 local.set $2 i32.const 0 + local.set $0 local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $1 - local.get $1 - select - local.set $0 - local.get $1 i32.const 3 i32.sub local.tee $1 @@ -45016,32 +44767,27 @@ end local.get $4 i32.load offset=4 - local.set $2 + local.set $1 i32.const 1 local.get $4 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $1 - local.get $1 + local.tee $0 + local.get $0 i32.const 1 i32.gt_u select local.set $0 - i32.const 0 - local.get $1 - local.get $1 - select - local.set $1 loop $for-loop|07 local.get $0 - local.get $1 + i32.const 0 i32.lt_s if local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add i32.const 0 i32.store @@ -45083,14 +44829,12 @@ local.get $3 i32.load offset=4 local.set $2 - i32.const 0 local.get $3 i32.load offset=8 i32.const 2 i32.shr_u - local.tee $0 - local.get $0 - select + local.set $0 + i32.const 0 local.set $1 loop $for-loop|09 local.get $0 @@ -58830,9 +58574,6 @@ i32.const 3 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 local.get $4 @@ -58883,9 +58624,6 @@ i32.const 3 i32.shr_u local.tee $2 - i32.const 0 - local.get $2 - select i32.eqz br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float64Array,f64>|inlined.0 drop @@ -58950,9 +58688,6 @@ i32.const 2 i32.shr_u local.tee $3 - i32.const 0 - local.get $3 - select i32.eqz br_if $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 local.get $4 @@ -59003,9 +58738,6 @@ i32.const 2 i32.shr_u local.tee $2 - i32.const 0 - local.get $2 - select i32.eqz br_if $~lib/typedarray/INCLUDES<~lib/typedarray/Float32Array,f32>|inlined.0 drop diff --git a/tests/compiler/std/uri.optimized.wat b/tests/compiler/std/uri.optimized.wat index c99ccddcd0..ee5cfded36 100644 --- a/tests/compiler/std/uri.optimized.wat +++ b/tests/compiler/std/uri.optimized.wat @@ -3633,9 +3633,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/super-inline.optimized.wat b/tests/compiler/super-inline.optimized.wat index 5232abe5b8..d7be17d2b1 100644 --- a/tests/compiler/super-inline.optimized.wat +++ b/tests/compiler/super-inline.optimized.wat @@ -40,18 +40,12 @@ (local $1 i32) global.get $super-inline/foo local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit end global.get $super-inline/bar local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1260,9 +1254,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/templateliteral.optimized.wat b/tests/compiler/templateliteral.optimized.wat index 445a8f5f4c..1832752b13 100644 --- a/tests/compiler/templateliteral.optimized.wat +++ b/tests/compiler/templateliteral.optimized.wat @@ -4987,9 +4987,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -5011,9 +5008,6 @@ local.get $0 i32.load local.tee $1 - i32.const 0 - local.get $1 - select if local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -5032,9 +5026,6 @@ local.get $0 i32.load local.tee $1 - i32.const 0 - local.get $1 - select if local.get $1 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -5042,9 +5033,6 @@ local.get $0 i32.load offset=4 local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/throw.optimized.wat b/tests/compiler/throw.optimized.wat index b124e7d3a9..6255570cca 100644 --- a/tests/compiler/throw.optimized.wat +++ b/tests/compiler/throw.optimized.wat @@ -952,9 +952,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/typeof.optimized.wat b/tests/compiler/typeof.optimized.wat index c17054c890..60ca7d88a5 100644 --- a/tests/compiler/typeof.optimized.wat +++ b/tests/compiler/typeof.optimized.wat @@ -177,9 +177,6 @@ call $byn-split-outlined-A$~lib/rt/itcms/__visit global.get $typeof/c local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit @@ -1160,9 +1157,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit diff --git a/tests/compiler/while.optimized.wat b/tests/compiler/while.optimized.wat index 65cfcf0906..225b00eb1b 100644 --- a/tests/compiler/while.optimized.wat +++ b/tests/compiler/while.optimized.wat @@ -1529,9 +1529,6 @@ local.get $0 i32.load local.tee $0 - i32.const 0 - local.get $0 - select if local.get $0 call $byn-split-outlined-A$~lib/rt/itcms/__visit From 5c268489b4f95d8682a4cc1715725af48299fcef Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sun, 10 Oct 2021 16:04:15 +0300 Subject: [PATCH 32/54] update binaryen. Add table_get, table_set and table_size --- package-lock.json | 14 +++---- package.json | 2 +- src/glue/binaryen.d.ts | 4 ++ src/module.ts | 85 ++++++++++++++++++++++++++++-------------- 4 files changed, 68 insertions(+), 37 deletions(-) diff --git a/package-lock.json b/package-lock.json index 224cd8a224..33ef7b3ca4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "102.0.0-nightly.20211006", + "binaryen": "102.0.0-nightly.20211010", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" @@ -733,9 +733,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "102.0.0-nightly.20211006", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211006.tgz", - "integrity": "sha512-1/wg1nQQNqD5AidGqhjXKFj3CheA2Y1h6MNhZs8FEK0GJdCel0htOy+rYqLTeqgNjlmYrOA2hYNpyjk4EA6PDA==", + "version": "102.0.0-nightly.20211010", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211010.tgz", + "integrity": "sha512-JZVZwQQ57DtNGxr7+XYFYDL6TtmH4RfXdeQLHKvFIgnC5E1GOFxgN1FpMF2B0LZfo9LMT4dWp23ch099FnA99w==", "bin": { "wasm-opt": "bin/wasm-opt" } @@ -3508,9 +3508,9 @@ "dev": true }, "binaryen": { - "version": "102.0.0-nightly.20211006", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211006.tgz", - "integrity": "sha512-1/wg1nQQNqD5AidGqhjXKFj3CheA2Y1h6MNhZs8FEK0GJdCel0htOy+rYqLTeqgNjlmYrOA2hYNpyjk4EA6PDA==" + "version": "102.0.0-nightly.20211010", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211010.tgz", + "integrity": "sha512-JZVZwQQ57DtNGxr7+XYFYDL6TtmH4RfXdeQLHKvFIgnC5E1GOFxgN1FpMF2B0LZfo9LMT4dWp23ch099FnA99w==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 4369f8e107..283ed4f885 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "url": "https://github.com/AssemblyScript/assemblyscript/issues" }, "dependencies": { - "binaryen": "102.0.0-nightly.20211006", + "binaryen": "102.0.0-nightly.20211010", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" diff --git a/src/glue/binaryen.d.ts b/src/glue/binaryen.d.ts index 5763561632..ba2595e620 100644 --- a/src/glue/binaryen.d.ts +++ b/src/glue/binaryen.d.ts @@ -410,6 +410,10 @@ export declare function _BinaryenRefEqSetLeft(expr: ExpressionRef, leftExpr: Exp export declare function _BinaryenRefEqGetRight(expr: ExpressionRef): ExpressionRef; export declare function _BinaryenRefEqSetRight(expr: ExpressionRef, rightExpr: ExpressionRef): void; +export declare function _BinaryenTableGet(module: ModuleRef, name: StringRef, index: ExpressionRef, type: TypeRef): ExpressionRef; +export declare function _BinaryenTableSet(module: ModuleRef, name: StringRef, index: ExpressionRef, value: ExpressionRef): ExpressionRef; +export declare function _BinaryenTableSize(module: ModuleRef, name: StringRef): ExpressionRef; + export declare function _BinaryenTry(module: ModuleRef, name: StringRef, bodyExpr: ExpressionRef, catchTags: ArrayRef, numCatchTags: Index, catchBodies: ArrayRef, numCatchBodies: Index, delegateTarget: StringRef): ExpressionRef; export declare function _BinaryenTryGetName(expr: ExpressionRef): StringRef; export declare function _BinaryenTrySetName(expr: ExpressionRef, name: StringRef): void; diff --git a/src/module.ts b/src/module.ts index 122ff1a8fb..6e4e3821af 100644 --- a/src/module.ts +++ b/src/module.ts @@ -128,29 +128,31 @@ export enum ExpressionId { RefFunc = 43 /* _BinaryenRefFuncId */, RefEq = 44 /* _BinaryenRefEqId */, TableGet = 45 /* _BinaryenTableGetId */, - Try = 46 /* _BinaryenTryId */, - Throw = 47 /* _BinaryenThrowId */, - Rethrow = 48 /* _BinaryenRethrowId */, - TupleMake = 49 /* _BinaryenTupleMakeId */, - TupleExtract = 50 /* _BinaryenTupleExtractId */, - I31New = 51 /* _BinaryenI31NewId */, - I31Get = 52 /* _BinaryenI31GetId */, - CallRef = 53 /* _BinaryenCallRefId */, - RefTest = 54 /* _BinaryenRefTestId */, - RefCast = 55 /* _BinaryenRefCastId */, - BrOn = 56 /* _BinaryenBrOnId */, - RttCanon = 57 /* _BinaryenRttCanonId */, - RttSub = 58 /* _BinaryenRttSubId */, - StructNew = 59 /* _BinaryenStructNewId */, - StructGet = 60 /* _BinaryenStructGetId */, - StructSet = 61 /* _BinaryenStructSetId */, - ArrayNew = 62 /* _BinaryenArrayNewId */, - ArrayInit = 63 /* _BinaryenArrayInitId */, - ArrayGet = 64 /* _BinaryenArrayGetId */, - ArraySet = 65 /* _BinaryenArraySetId */, - ArrayLen = 66 /* _BinaryenArrayLenId */, - ArrayCopy = 67 /* _BinaryenArrayCopyId */, - RefAs = 68 /* _BinaryenRefAsId */ + TableSet = 46 /* _BinaryenTableSetId */, + TableSize = 47 /* _BinaryenTableSizeId */, + Try = 48 /* _BinaryenTryId */, + Throw = 49 /* _BinaryenThrowId */, + Rethrow = 50 /* _BinaryenRethrowId */, + TupleMake = 51 /* _BinaryenTupleMakeId */, + TupleExtract = 52 /* _BinaryenTupleExtractId */, + I31New = 53 /* _BinaryenI31NewId */, + I31Get = 54 /* _BinaryenI31GetId */, + CallRef = 55 /* _BinaryenCallRefId */, + RefTest = 56 /* _BinaryenRefTestId */, + RefCast = 57 /* _BinaryenRefCastId */, + BrOn = 58 /* _BinaryenBrOnId */, + RttCanon = 59 /* _BinaryenRttCanonId */, + RttSub = 60 /* _BinaryenRttSubId */, + StructNew = 61 /* _BinaryenStructNewId */, + StructGet = 62 /* _BinaryenStructGetId */, + StructSet = 63 /* _BinaryenStructSetId */, + ArrayNew = 64 /* _BinaryenArrayNewId */, + ArrayInit = 65 /* _BinaryenArrayInitId */, + ArrayGet = 66 /* _BinaryenArrayGetId */, + ArraySet = 67 /* _BinaryenArraySetId */, + ArrayLen = 68 /* _BinaryenArrayLenId */, + ArrayCopy = 69 /* _BinaryenArrayCopyId */, + RefAs = 70 /* _BinaryenRefAsId */ } /** Binaryen external kind constants. */ @@ -1242,6 +1244,11 @@ export class Module { return binaryen._BinaryenMemoryGrow(this.ref, delta); } + table_size(name: string): ExpressionRef { + var cStr = this.allocStringCached(name); + return binaryen._BinaryenTableSize(this.ref, cStr); + } + local_get( index: i32, type: TypeRef @@ -1279,6 +1286,15 @@ export class Module { return binaryen._BinaryenGlobalGet(this.ref, cStr, type); } + table_get( + name: string, + index: ExpressionRef, + type: TypeRef + ): ExpressionRef { + var cStr = this.allocStringCached(name); + return binaryen._BinaryenTableGet(this.ref, cStr, index, type); + } + load( bytes: Index, signed: bool, @@ -1383,6 +1399,15 @@ export class Module { return binaryen._BinaryenGlobalSet(this.ref, cStr, value); } + table_set( + name: string, + index: ExpressionRef, + value: ExpressionRef + ): ExpressionRef { + var cStr = this.allocStringCached(name); + return binaryen._BinaryenTableSet(this.ref, cStr, index, value); + } + block( label: string | null, children: ExpressionRef[], @@ -3062,12 +3087,14 @@ export enum SideEffects { WritesGlobal = 32 /* _BinaryenSideEffectWritesGlobal */, ReadsMemory = 64 /* _BinaryenSideEffectReadsMemory */, WritesMemory = 128 /* _BinaryenSideEffectWritesMemory */, - ImplicitTrap = 256 /* _BinaryenSideEffectImplicitTrap */, - IsAtomic = 512 /* _BinaryenSideEffectIsAtomic */, - Throws = 1024 /* _BinaryenSideEffectThrows */, - DanglingPop = 2048 /* _BinaryenSideEffectDanglingPop */, - TrapsNeverHappen = 4096 /* _BinaryenSideEffectTrapsNeverHappen */, - Any = 8191 /* _BinaryenSideEffectAny */ + ReadsTable = 256 /* _BinaryenSideEffectReadsTable */, + WritesTable = 512 /* _BinaryenSideEffectWritesTable */, + ImplicitTrap = 1024 /* _BinaryenSideEffectImplicitTrap */, + IsAtomic = 2048 /* _BinaryenSideEffectIsAtomic */, + Throws = 4096 /* _BinaryenSideEffectThrows */, + DanglingPop = 8192 /* _BinaryenSideEffectDanglingPop */, + TrapsNeverHappen = 16384 /* _BinaryenSideEffectTrapsNeverHappen */, + Any = 32767 /* _BinaryenSideEffectAny */ } export function getSideEffects(expr: ExpressionRef, module: ModuleRef): SideEffects { From 94fb97227b8b02d1bc15a31545a1a764188406b0 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Wed, 13 Oct 2021 12:18:45 +0300 Subject: [PATCH 33/54] update --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 33ef7b3ca4..b074191a8c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "102.0.0-nightly.20211010", + "binaryen": "102.0.0-nightly.20211013", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" @@ -733,9 +733,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "102.0.0-nightly.20211010", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211010.tgz", - "integrity": "sha512-JZVZwQQ57DtNGxr7+XYFYDL6TtmH4RfXdeQLHKvFIgnC5E1GOFxgN1FpMF2B0LZfo9LMT4dWp23ch099FnA99w==", + "version": "102.0.0-nightly.20211013", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211013.tgz", + "integrity": "sha512-vWKcqxaglhys0yl3usmkXIObIEKw+OCaetBCF8UxD/MMxXb70ycaqMuwhpcmn1F2EXYSsrRELGo3Dcr2mNvyBg==", "bin": { "wasm-opt": "bin/wasm-opt" } @@ -3508,9 +3508,9 @@ "dev": true }, "binaryen": { - "version": "102.0.0-nightly.20211010", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211010.tgz", - "integrity": "sha512-JZVZwQQ57DtNGxr7+XYFYDL6TtmH4RfXdeQLHKvFIgnC5E1GOFxgN1FpMF2B0LZfo9LMT4dWp23ch099FnA99w==" + "version": "102.0.0-nightly.20211013", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211013.tgz", + "integrity": "sha512-vWKcqxaglhys0yl3usmkXIObIEKw+OCaetBCF8UxD/MMxXb70ycaqMuwhpcmn1F2EXYSsrRELGo3Dcr2mNvyBg==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 283ed4f885..872329fb01 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "url": "https://github.com/AssemblyScript/assemblyscript/issues" }, "dependencies": { - "binaryen": "102.0.0-nightly.20211010", + "binaryen": "102.0.0-nightly.20211013", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" From 7237f9d1a5d8feaf147c505ef6d1230530c78327 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Thu, 14 Oct 2021 09:49:53 +0300 Subject: [PATCH 34/54] update --- package-lock.json | 14 +- package.json | 2 +- tests/compiler/NonNullable.optimized.wat | 5 +- tests/compiler/builtins.optimized.wat | 5 +- tests/compiler/call-super.optimized.wat | 136 +++++------ .../class-overloading-cast.optimized.wat | 5 +- .../compiler/class-overloading.optimized.wat | 5 +- tests/compiler/class.optimized.wat | 130 +++++----- tests/compiler/constructor.optimized.wat | 136 +++++------ .../empty-exportruntime.optimized.wat | 136 +++++------ .../extends-baseaggregate.optimized.wat | 130 +++++----- tests/compiler/features/simd.optimized.wat | 100 ++++---- .../field-initialization.optimized.wat | 135 +++++------ tests/compiler/field.optimized.wat | 136 +++++------ tests/compiler/heap.optimized.wat | 100 ++++---- tests/compiler/infer-array.optimized.wat | 136 +++++------ tests/compiler/inlining.optimized.wat | 136 +++++------ tests/compiler/issues/1699.optimized.wat | 130 +++++----- tests/compiler/number.optimized.wat | 141 +++++------ tests/compiler/object-literal.optimized.wat | 105 ++++---- tests/compiler/resolve-access.optimized.wat | 136 +++++------ tests/compiler/resolve-binary.optimized.wat | 141 +++++------ .../resolve-elementaccess.optimized.wat | 135 +++++------ .../resolve-function-expression.optimized.wat | 141 +++++------ .../resolve-propertyaccess.optimized.wat | 141 +++++------ tests/compiler/resolve-ternary.optimized.wat | 141 +++++------ tests/compiler/resolve-unary.optimized.wat | 141 +++++------ .../runtime-incremental-export.optimized.wat | 136 +++++------ .../rt/runtime-minimal-export.optimized.wat | 130 +++++----- tests/compiler/std-wasi/console.optimized.wat | 105 ++++---- tests/compiler/std-wasi/crypto.optimized.wat | 100 ++++---- tests/compiler/std-wasi/process.optimized.wat | 105 ++++---- tests/compiler/std/array-access.optimized.wat | 5 +- .../compiler/std/array-literal.optimized.wat | 136 +++++------ tests/compiler/std/array.optimized.wat | 110 ++++----- tests/compiler/std/arraybuffer.optimized.wat | 130 +++++----- tests/compiler/std/dataview.optimized.wat | 228 ++++++++---------- tests/compiler/std/date.optimized.wat | 135 +++++------ tests/compiler/std/map.optimized.wat | 130 +++++----- tests/compiler/std/math.optimized.wat | 226 ++++++++--------- tests/compiler/std/mod.optimized.wat | 64 +++-- tests/compiler/std/object.optimized.wat | 5 +- tests/compiler/std/set.optimized.wat | 130 +++++----- tests/compiler/std/static-array.optimized.wat | 158 ++++++------ tests/compiler/std/staticarray.optimized.wat | 105 ++++---- .../std/string-casemapping.optimized.wat | 141 +++++------ .../std/string-encoding.optimized.wat | 141 +++++------ tests/compiler/std/string.optimized.wat | 159 ++++++------ tests/compiler/std/symbol.optimized.wat | 135 +++++------ tests/compiler/std/typedarray.optimized.wat | 209 ++++++++-------- tests/compiler/std/uri.optimized.wat | 185 +++++++------- tests/compiler/templateliteral.optimized.wat | 141 +++++------ tests/compiler/typeof.optimized.wat | 5 +- tests/compiler/wasi/trace.optimized.wat | 100 ++++---- 54 files changed, 2901 insertions(+), 3252 deletions(-) diff --git a/package-lock.json b/package-lock.json index b074191a8c..1bdac4b01b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "102.0.0-nightly.20211013", + "binaryen": "102.0.0-nightly.20211014", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" @@ -733,9 +733,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "102.0.0-nightly.20211013", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211013.tgz", - "integrity": "sha512-vWKcqxaglhys0yl3usmkXIObIEKw+OCaetBCF8UxD/MMxXb70ycaqMuwhpcmn1F2EXYSsrRELGo3Dcr2mNvyBg==", + "version": "102.0.0-nightly.20211014", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211014.tgz", + "integrity": "sha512-P+RkyvYzLNZgVvRD3FNEYm75PY72Xef/DKTNKvqYUEZaUD0qe/DJYYQEpkdB29o8UfpHHg/lUxTIAhu1/QS+GQ==", "bin": { "wasm-opt": "bin/wasm-opt" } @@ -3508,9 +3508,9 @@ "dev": true }, "binaryen": { - "version": "102.0.0-nightly.20211013", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211013.tgz", - "integrity": "sha512-vWKcqxaglhys0yl3usmkXIObIEKw+OCaetBCF8UxD/MMxXb70ycaqMuwhpcmn1F2EXYSsrRELGo3Dcr2mNvyBg==" + "version": "102.0.0-nightly.20211014", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211014.tgz", + "integrity": "sha512-P+RkyvYzLNZgVvRD3FNEYm75PY72Xef/DKTNKvqYUEZaUD0qe/DJYYQEpkdB29o8UfpHHg/lUxTIAhu1/QS+GQ==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 872329fb01..f888254ab4 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "url": "https://github.com/AssemblyScript/assemblyscript/issues" }, "dependencies": { - "binaryen": "102.0.0-nightly.20211013", + "binaryen": "102.0.0-nightly.20211014", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" diff --git a/tests/compiler/NonNullable.optimized.wat b/tests/compiler/NonNullable.optimized.wat index 3e45916c50..ef40f5ead3 100644 --- a/tests/compiler/NonNullable.optimized.wat +++ b/tests/compiler/NonNullable.optimized.wat @@ -66,13 +66,12 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 local.tee $0 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $2 diff --git a/tests/compiler/builtins.optimized.wat b/tests/compiler/builtins.optimized.wat index d59379e408..870dd0f462 100644 --- a/tests/compiler/builtins.optimized.wat +++ b/tests/compiler/builtins.optimized.wat @@ -122,13 +122,12 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 local.tee $0 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $2 diff --git a/tests/compiler/call-super.optimized.wat b/tests/compiler/call-super.optimized.wat index 9bcd8d20fb..608ecf8b50 100644 --- a/tests/compiler/call-super.optimized.wat +++ b/tests/compiler/call-super.optimized.wat @@ -939,49 +939,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl local.get $1 - i32.const 31 + i32.add + i32.const 1 + i32.sub local.get $1 + local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1133,7 +1131,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $5 local.get $0 i32.const 16 i32.add @@ -1148,46 +1146,27 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $3 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $4 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1196,6 +1175,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1203,16 +1197,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $4 local.get $2 - local.get $3 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1220,7 +1214,7 @@ unreachable end end - local.get $4 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1228,8 +1222,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1246,7 +1240,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1256,13 +1250,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1278,9 +1272,9 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if @@ -1288,23 +1282,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 diff --git a/tests/compiler/class-overloading-cast.optimized.wat b/tests/compiler/class-overloading-cast.optimized.wat index 797659896e..ae0f792580 100644 --- a/tests/compiler/class-overloading-cast.optimized.wat +++ b/tests/compiler/class-overloading-cast.optimized.wat @@ -1305,13 +1305,12 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 local.tee $0 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $2 diff --git a/tests/compiler/class-overloading.optimized.wat b/tests/compiler/class-overloading.optimized.wat index ae7cbe48af..020a4b12c0 100644 --- a/tests/compiler/class-overloading.optimized.wat +++ b/tests/compiler/class-overloading.optimized.wat @@ -1329,13 +1329,12 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 local.tee $0 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $2 diff --git a/tests/compiler/class.optimized.wat b/tests/compiler/class.optimized.wat index 1881a56fa8..16825a1cfb 100644 --- a/tests/compiler/class.optimized.wat +++ b/tests/compiler/class.optimized.wat @@ -1081,49 +1081,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl + local.get $1 + i32.add + i32.const 1 + i32.sub local.get $1 - i32.const 31 local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1451,11 +1449,11 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $5 local.get $0 i32.const 16 i32.add - local.tee $4 + local.tee $3 i32.const 1073741820 i32.gt_u if @@ -1466,46 +1464,27 @@ call $~lib/builtins/abort unreachable end - local.get $4 + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub + local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $4 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $3 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1514,6 +1493,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1538,7 +1532,7 @@ unreachable end end - local.get $3 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1546,8 +1540,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1564,7 +1558,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1574,13 +1568,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1596,7 +1590,7 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub local.tee $4 i32.const 16 @@ -1606,23 +1600,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 + local.tee $3 local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 diff --git a/tests/compiler/constructor.optimized.wat b/tests/compiler/constructor.optimized.wat index 041da3d93a..0de37ee650 100644 --- a/tests/compiler/constructor.optimized.wat +++ b/tests/compiler/constructor.optimized.wat @@ -1016,49 +1016,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl local.get $1 - i32.const 31 + i32.add + i32.const 1 + i32.sub local.get $1 + local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1210,7 +1208,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $5 local.get $0 i32.const 16 i32.add @@ -1225,46 +1223,27 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $3 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $4 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1273,6 +1252,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1280,16 +1274,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $4 local.get $2 - local.get $3 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1297,7 +1291,7 @@ unreachable end end - local.get $4 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1305,8 +1299,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1323,7 +1317,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1333,13 +1327,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1355,9 +1349,9 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if @@ -1365,23 +1359,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 diff --git a/tests/compiler/empty-exportruntime.optimized.wat b/tests/compiler/empty-exportruntime.optimized.wat index 779c1e8548..d18643ef2f 100644 --- a/tests/compiler/empty-exportruntime.optimized.wat +++ b/tests/compiler/empty-exportruntime.optimized.wat @@ -1087,49 +1087,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl local.get $1 - i32.const 31 + i32.add + i32.const 1 + i32.sub local.get $1 + local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1281,7 +1279,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $5 local.get $0 i32.const 16 i32.add @@ -1296,46 +1294,27 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $3 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $4 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1344,6 +1323,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1351,16 +1345,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $4 local.get $2 - local.get $3 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1368,7 +1362,7 @@ unreachable end end - local.get $4 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1376,8 +1370,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1394,7 +1388,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1404,13 +1398,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1426,9 +1420,9 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if @@ -1436,23 +1430,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 diff --git a/tests/compiler/extends-baseaggregate.optimized.wat b/tests/compiler/extends-baseaggregate.optimized.wat index a16c3a7757..9ed92525a9 100644 --- a/tests/compiler/extends-baseaggregate.optimized.wat +++ b/tests/compiler/extends-baseaggregate.optimized.wat @@ -1087,49 +1087,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl local.get $1 - i32.const 31 + i32.add + i32.const 1 + i32.sub local.get $1 + local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1457,11 +1455,11 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $5 local.get $0 i32.const 16 i32.add - local.tee $4 + local.tee $3 i32.const 1073741820 i32.gt_u if @@ -1472,46 +1470,27 @@ call $~lib/builtins/abort unreachable end - local.get $4 + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub + local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $4 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $3 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1520,6 +1499,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1544,7 +1538,7 @@ unreachable end end - local.get $3 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1552,8 +1546,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1570,7 +1564,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1580,13 +1574,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1602,7 +1596,7 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub local.tee $4 i32.const 16 @@ -1612,23 +1606,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 + local.tee $3 local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 diff --git a/tests/compiler/features/simd.optimized.wat b/tests/compiler/features/simd.optimized.wat index 36d83a0895..6657267640 100644 --- a/tests/compiler/features/simd.optimized.wat +++ b/tests/compiler/features/simd.optimized.wat @@ -608,49 +608,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl + local.get $1 + i32.add + i32.const 1 + i32.sub local.get $1 - i32.const 31 local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -750,20 +748,18 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $1 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $1 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $1 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end + select local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 @@ -771,23 +767,6 @@ if memory.size local.tee $1 - local.get $3 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $3 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $3 - i32.add - else - local.get $3 - end i32.const 4 local.get $0 i32.load offset=1568 @@ -798,6 +777,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add diff --git a/tests/compiler/field-initialization.optimized.wat b/tests/compiler/field-initialization.optimized.wat index 9fe6d50d10..427c81a817 100644 --- a/tests/compiler/field-initialization.optimized.wat +++ b/tests/compiler/field-initialization.optimized.wat @@ -1094,49 +1094,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl local.get $1 - i32.const 31 + i32.add + i32.const 1 + i32.sub local.get $1 + local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1464,11 +1462,11 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $5 local.get $0 i32.const 16 i32.add - local.tee $4 + local.tee $3 i32.const 1073741820 i32.gt_u if @@ -1479,46 +1477,27 @@ call $~lib/builtins/abort unreachable end - local.get $4 + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub + local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $4 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $3 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1527,6 +1506,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1551,7 +1545,7 @@ unreachable end end - local.get $3 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1559,8 +1553,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1577,7 +1571,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1587,13 +1581,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1609,7 +1603,7 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub local.tee $4 i32.const 16 @@ -1619,23 +1613,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 + local.tee $3 local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1751,13 +1745,12 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 local.tee $0 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $2 diff --git a/tests/compiler/field.optimized.wat b/tests/compiler/field.optimized.wat index ad032ff6e5..1d930b4d8c 100644 --- a/tests/compiler/field.optimized.wat +++ b/tests/compiler/field.optimized.wat @@ -1072,49 +1072,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl local.get $1 - i32.const 31 + i32.add + i32.const 1 + i32.sub local.get $1 + local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1266,7 +1264,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $5 local.get $0 i32.const 16 i32.add @@ -1281,46 +1279,27 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $3 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $4 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1329,6 +1308,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1336,16 +1330,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $4 local.get $2 - local.get $3 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1353,7 +1347,7 @@ unreachable end end - local.get $4 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1361,8 +1355,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1379,7 +1373,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1389,13 +1383,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1411,9 +1405,9 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if @@ -1421,23 +1415,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 diff --git a/tests/compiler/heap.optimized.wat b/tests/compiler/heap.optimized.wat index 1c59865c1d..aca163e326 100644 --- a/tests/compiler/heap.optimized.wat +++ b/tests/compiler/heap.optimized.wat @@ -627,66 +627,62 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $0 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $0 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $0 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end + select ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl + local.get $1 + i32.add + i32.const 1 + i32.sub local.get $1 - i32.const 31 local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -855,23 +851,6 @@ if memory.size local.tee $3 - local.get $2 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $2 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $2 - i32.add - else - local.get $2 - end i32.const 4 local.get $0 i32.load offset=1568 @@ -882,6 +861,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $2 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $2 + i32.add + local.get $2 + local.get $2 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add diff --git a/tests/compiler/infer-array.optimized.wat b/tests/compiler/infer-array.optimized.wat index f1ea8585fb..43824b2885 100644 --- a/tests/compiler/infer-array.optimized.wat +++ b/tests/compiler/infer-array.optimized.wat @@ -1108,49 +1108,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl local.get $1 - i32.const 31 + i32.add + i32.const 1 + i32.sub local.get $1 + local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1302,7 +1300,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $5 local.get $0 i32.const 16 i32.add @@ -1317,46 +1315,27 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $3 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $4 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1365,6 +1344,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1372,16 +1366,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $4 local.get $2 - local.get $3 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1389,7 +1383,7 @@ unreachable end end - local.get $4 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1397,8 +1391,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1415,7 +1409,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1425,13 +1419,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1447,9 +1441,9 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if @@ -1457,23 +1451,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 diff --git a/tests/compiler/inlining.optimized.wat b/tests/compiler/inlining.optimized.wat index a819883f85..a29dcffdf4 100644 --- a/tests/compiler/inlining.optimized.wat +++ b/tests/compiler/inlining.optimized.wat @@ -951,49 +951,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl local.get $1 - i32.const 31 + i32.add + i32.const 1 + i32.sub local.get $1 + local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1145,7 +1143,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $5 local.get $0 i32.const 16 i32.add @@ -1160,46 +1158,27 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $3 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $4 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1208,6 +1187,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1215,16 +1209,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $4 local.get $2 - local.get $3 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1232,7 +1226,7 @@ unreachable end end - local.get $4 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1240,8 +1234,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1258,7 +1252,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1268,13 +1262,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1290,9 +1284,9 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if @@ -1300,23 +1294,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 diff --git a/tests/compiler/issues/1699.optimized.wat b/tests/compiler/issues/1699.optimized.wat index 6c430a7c96..ac34f333d9 100644 --- a/tests/compiler/issues/1699.optimized.wat +++ b/tests/compiler/issues/1699.optimized.wat @@ -1083,49 +1083,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl local.get $1 - i32.const 31 + i32.add + i32.const 1 + i32.sub local.get $1 + local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1453,11 +1451,11 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $5 local.get $0 i32.const 16 i32.add - local.tee $4 + local.tee $3 i32.const 1073741820 i32.gt_u if @@ -1468,46 +1466,27 @@ call $~lib/builtins/abort unreachable end - local.get $4 + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub + local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $4 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $3 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1516,6 +1495,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1540,7 +1534,7 @@ unreachable end end - local.get $3 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1548,8 +1542,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1566,7 +1560,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1576,13 +1570,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1598,7 +1592,7 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub local.tee $4 i32.const 16 @@ -1608,23 +1602,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 + local.tee $3 local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 diff --git a/tests/compiler/number.optimized.wat b/tests/compiler/number.optimized.wat index 5a5c2d807c..60b6610a38 100644 --- a/tests/compiler/number.optimized.wat +++ b/tests/compiler/number.optimized.wat @@ -986,49 +986,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl local.get $1 - i32.const 31 + i32.add + i32.const 1 + i32.sub local.get $1 + local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1180,7 +1178,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $0 i32.const 16 i32.add @@ -1195,46 +1193,27 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $2 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $2 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $2 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $4 + select + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size local.tee $1 - local.get $4 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $4 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $4 - i32.add - else - local.get $4 - end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $1 i32.const 16 @@ -1243,6 +1222,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $2 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $2 + i32.add + local.get $2 + local.get $2 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1250,16 +1244,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1267,7 +1261,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $1 i32.const 16 i32.shl @@ -1275,8 +1269,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1293,7 +1287,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $2 i32.lt_u if i32.const 0 @@ -1303,13 +1297,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load local.set $5 - local.get $4 + local.get $2 i32.const 4 i32.add i32.const 15 @@ -1325,9 +1319,9 @@ local.get $5 i32.const -4 i32.and - local.get $4 + local.get $2 i32.sub - local.tee $2 + local.tee $3 i32.const 16 i32.ge_u if @@ -1335,23 +1329,23 @@ local.get $5 i32.const 2 i32.and - local.get $4 + local.get $2 i32.or i32.store - local.get $4 + local.get $2 local.get $1 i32.const 4 i32.add i32.add - local.tee $4 - local.get $2 + local.tee $2 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $2 call $~lib/rt/tlsf/insertBlock else local.get $1 @@ -1858,13 +1852,12 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 local.tee $0 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $2 diff --git a/tests/compiler/object-literal.optimized.wat b/tests/compiler/object-literal.optimized.wat index a4e58e527f..1245f9dffb 100644 --- a/tests/compiler/object-literal.optimized.wat +++ b/tests/compiler/object-literal.optimized.wat @@ -1146,49 +1146,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl local.get $1 - i32.const 31 + i32.add + i32.const 1 + i32.sub local.get $1 + local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1288,20 +1286,18 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $1 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $1 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $1 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end + select local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 @@ -1309,23 +1305,6 @@ if memory.size local.tee $1 - local.get $3 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $3 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $3 - i32.add - else - local.get $3 - end i32.const 4 local.get $0 i32.load offset=1568 @@ -1336,6 +1315,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1803,13 +1797,12 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 local.tee $0 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $2 diff --git a/tests/compiler/resolve-access.optimized.wat b/tests/compiler/resolve-access.optimized.wat index 806f78006f..c7b7f08203 100644 --- a/tests/compiler/resolve-access.optimized.wat +++ b/tests/compiler/resolve-access.optimized.wat @@ -1094,49 +1094,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl local.get $1 - i32.const 31 + i32.add + i32.const 1 + i32.sub local.get $1 + local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1288,7 +1286,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $5 local.get $0 i32.const 16 i32.add @@ -1303,46 +1301,27 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $3 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $4 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1351,6 +1330,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1358,16 +1352,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $4 local.get $2 - local.get $3 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1375,7 +1369,7 @@ unreachable end end - local.get $4 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1383,8 +1377,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1401,7 +1395,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1411,13 +1405,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1433,9 +1427,9 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if @@ -1443,23 +1437,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 diff --git a/tests/compiler/resolve-binary.optimized.wat b/tests/compiler/resolve-binary.optimized.wat index bba554783f..16997f0a32 100644 --- a/tests/compiler/resolve-binary.optimized.wat +++ b/tests/compiler/resolve-binary.optimized.wat @@ -285,13 +285,12 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 local.tee $0 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $2 @@ -1280,49 +1279,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl local.get $1 - i32.const 31 + i32.add + i32.const 1 + i32.sub local.get $1 + local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1474,7 +1471,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $5 local.get $0 i32.const 16 i32.add @@ -1489,46 +1486,27 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $3 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $4 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1537,6 +1515,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1544,16 +1537,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $4 local.get $2 - local.get $3 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1561,7 +1554,7 @@ unreachable end end - local.get $4 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1569,8 +1562,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1587,7 +1580,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1597,13 +1590,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1619,9 +1612,9 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if @@ -1629,23 +1622,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 diff --git a/tests/compiler/resolve-elementaccess.optimized.wat b/tests/compiler/resolve-elementaccess.optimized.wat index e6fddeb231..8621cdd170 100644 --- a/tests/compiler/resolve-elementaccess.optimized.wat +++ b/tests/compiler/resolve-elementaccess.optimized.wat @@ -1146,49 +1146,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl local.get $1 - i32.const 31 + i32.add + i32.const 1 + i32.sub local.get $1 + local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1516,11 +1514,11 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $5 local.get $0 i32.const 16 i32.add - local.tee $4 + local.tee $3 i32.const 1073741820 i32.gt_u if @@ -1531,46 +1529,27 @@ call $~lib/builtins/abort unreachable end - local.get $4 + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub + local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $4 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $3 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1579,6 +1558,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1603,7 +1597,7 @@ unreachable end end - local.get $3 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1611,8 +1605,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1629,7 +1623,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1639,13 +1633,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1661,7 +1655,7 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub local.tee $4 i32.const 16 @@ -1671,23 +1665,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 + local.tee $3 local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -3947,13 +3941,12 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 local.tee $0 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $2 diff --git a/tests/compiler/resolve-function-expression.optimized.wat b/tests/compiler/resolve-function-expression.optimized.wat index 8a7cd857da..c858d0bdfa 100644 --- a/tests/compiler/resolve-function-expression.optimized.wat +++ b/tests/compiler/resolve-function-expression.optimized.wat @@ -979,49 +979,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl + local.get $1 + i32.add + i32.const 1 + i32.sub local.get $1 - i32.const 31 local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1173,7 +1171,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $0 i32.const 16 i32.add @@ -1188,46 +1186,27 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $2 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $2 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $2 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $4 + select + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size local.tee $1 - local.get $4 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $4 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $4 - i32.add - else - local.get $4 - end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $1 i32.const 16 @@ -1236,6 +1215,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $2 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $2 + i32.add + local.get $2 + local.get $2 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1243,16 +1237,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1260,7 +1254,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $1 i32.const 16 i32.shl @@ -1268,8 +1262,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1286,7 +1280,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $2 i32.lt_u if i32.const 0 @@ -1296,13 +1290,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load local.set $5 - local.get $4 + local.get $2 i32.const 4 i32.add i32.const 15 @@ -1318,9 +1312,9 @@ local.get $5 i32.const -4 i32.and - local.get $4 + local.get $2 i32.sub - local.tee $2 + local.tee $3 i32.const 16 i32.ge_u if @@ -1328,23 +1322,23 @@ local.get $5 i32.const 2 i32.and - local.get $4 + local.get $2 i32.or i32.store - local.get $4 + local.get $2 local.get $1 i32.const 4 i32.add i32.add - local.tee $4 - local.get $2 + local.tee $2 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $2 call $~lib/rt/tlsf/insertBlock else local.get $1 @@ -1946,13 +1940,12 @@ local.tee $1 i32.const 7 i32.and - i32.const 1 + i32.eqz local.get $2 local.tee $0 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $1 diff --git a/tests/compiler/resolve-propertyaccess.optimized.wat b/tests/compiler/resolve-propertyaccess.optimized.wat index aa5f16d021..3f5bdf1d39 100644 --- a/tests/compiler/resolve-propertyaccess.optimized.wat +++ b/tests/compiler/resolve-propertyaccess.optimized.wat @@ -979,49 +979,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl + local.get $1 + i32.add + i32.const 1 + i32.sub local.get $1 - i32.const 31 local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1173,7 +1171,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $5 local.get $0 i32.const 16 i32.add @@ -1188,46 +1186,27 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $3 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $4 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1236,6 +1215,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1243,16 +1237,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $4 local.get $2 - local.get $3 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1260,7 +1254,7 @@ unreachable end end - local.get $4 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1268,8 +1262,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1286,7 +1280,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1296,13 +1290,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1318,9 +1312,9 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if @@ -1328,23 +1322,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1846,13 +1840,12 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 local.tee $0 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $2 diff --git a/tests/compiler/resolve-ternary.optimized.wat b/tests/compiler/resolve-ternary.optimized.wat index a0a280605f..2826398e75 100644 --- a/tests/compiler/resolve-ternary.optimized.wat +++ b/tests/compiler/resolve-ternary.optimized.wat @@ -983,49 +983,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl local.get $1 - i32.const 31 + i32.add + i32.const 1 + i32.sub local.get $1 + local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1177,7 +1175,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $4 local.get $0 i32.const 16 i32.add @@ -1192,46 +1190,27 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $2 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $2 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $2 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $4 + select + local.tee $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size local.tee $1 - local.get $4 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $4 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $4 - i32.add - else - local.get $4 - end i32.const 4 - local.get $3 + local.get $4 i32.load offset=1568 local.get $1 i32.const 16 @@ -1240,6 +1219,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $2 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $2 + i32.add + local.get $2 + local.get $2 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1247,16 +1241,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $2 + local.tee $3 local.get $1 - local.get $2 + local.get $3 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $2 + local.get $3 memory.grow i32.const 0 i32.lt_s @@ -1264,7 +1258,7 @@ unreachable end end - local.get $3 + local.get $4 local.get $1 i32.const 16 i32.shl @@ -1272,8 +1266,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $4 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -1290,7 +1284,7 @@ i32.load i32.const -4 i32.and - local.get $4 + local.get $2 i32.lt_u if i32.const 0 @@ -1300,13 +1294,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $4 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load local.set $5 - local.get $4 + local.get $2 i32.const 4 i32.add i32.const 15 @@ -1322,9 +1316,9 @@ local.get $5 i32.const -4 i32.and - local.get $4 + local.get $2 i32.sub - local.tee $2 + local.tee $3 i32.const 16 i32.ge_u if @@ -1332,23 +1326,23 @@ local.get $5 i32.const 2 i32.and - local.get $4 + local.get $2 i32.or i32.store - local.get $4 + local.get $2 local.get $1 i32.const 4 i32.add i32.add - local.tee $4 - local.get $2 + local.tee $2 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $4 + local.get $2 call $~lib/rt/tlsf/insertBlock else local.get $1 @@ -1740,13 +1734,12 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 local.tee $0 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $2 diff --git a/tests/compiler/resolve-unary.optimized.wat b/tests/compiler/resolve-unary.optimized.wat index 43329a9681..405339add3 100644 --- a/tests/compiler/resolve-unary.optimized.wat +++ b/tests/compiler/resolve-unary.optimized.wat @@ -999,49 +999,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl + local.get $1 + i32.add + i32.const 1 + i32.sub local.get $1 - i32.const 31 local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1193,7 +1191,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $5 local.get $0 i32.const 16 i32.add @@ -1208,46 +1206,27 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $3 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $4 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1256,6 +1235,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1263,16 +1257,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $4 local.get $2 - local.get $3 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1280,7 +1274,7 @@ unreachable end end - local.get $4 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1288,8 +1282,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1306,7 +1300,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1316,13 +1310,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1338,9 +1332,9 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if @@ -1348,23 +1342,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1866,13 +1860,12 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 local.tee $0 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $2 diff --git a/tests/compiler/rt/runtime-incremental-export.optimized.wat b/tests/compiler/rt/runtime-incremental-export.optimized.wat index 779c1e8548..d18643ef2f 100644 --- a/tests/compiler/rt/runtime-incremental-export.optimized.wat +++ b/tests/compiler/rt/runtime-incremental-export.optimized.wat @@ -1087,49 +1087,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl local.get $1 - i32.const 31 + i32.add + i32.const 1 + i32.sub local.get $1 + local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1281,7 +1279,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $5 local.get $0 i32.const 16 i32.add @@ -1296,46 +1294,27 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $3 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $4 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1344,6 +1323,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1351,16 +1345,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $4 local.get $2 - local.get $3 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1368,7 +1362,7 @@ unreachable end end - local.get $4 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1376,8 +1370,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1394,7 +1388,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1404,13 +1398,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1426,9 +1420,9 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if @@ -1436,23 +1430,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 diff --git a/tests/compiler/rt/runtime-minimal-export.optimized.wat b/tests/compiler/rt/runtime-minimal-export.optimized.wat index fb62bf9f2f..7be4069841 100644 --- a/tests/compiler/rt/runtime-minimal-export.optimized.wat +++ b/tests/compiler/rt/runtime-minimal-export.optimized.wat @@ -625,49 +625,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl + local.get $1 + i32.add + i32.const 1 + i32.sub local.get $1 - i32.const 31 local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -774,11 +772,11 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $5 local.get $0 i32.const 16 i32.add - local.tee $4 + local.tee $3 i32.const 1073741820 i32.gt_u if @@ -789,46 +787,27 @@ call $~lib/builtins/abort unreachable end - local.get $4 + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub + local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $4 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $3 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -837,6 +816,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -861,7 +855,7 @@ unreachable end end - local.get $3 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -869,8 +863,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -887,7 +881,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -897,13 +891,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -919,7 +913,7 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub local.tee $4 i32.const 16 @@ -929,23 +923,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 + local.tee $3 local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 diff --git a/tests/compiler/std-wasi/console.optimized.wat b/tests/compiler/std-wasi/console.optimized.wat index 3c5d31d8b5..cdf4999bcb 100644 --- a/tests/compiler/std-wasi/console.optimized.wat +++ b/tests/compiler/std-wasi/console.optimized.wat @@ -1593,49 +1593,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl + local.get $1 + i32.add + i32.const 1 + i32.sub local.get $1 - i32.const 31 local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1735,20 +1733,18 @@ call $~lib/wasi/index/abort unreachable end + i32.const 12 + local.get $1 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $1 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $1 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end + select local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 @@ -1756,23 +1752,6 @@ if memory.size local.tee $1 - local.get $3 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $3 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $3 - i32.add - else - local.get $3 - end i32.const 4 local.get $0 i32.load offset=1568 @@ -1783,6 +1762,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -4193,12 +4187,11 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $0 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $4 diff --git a/tests/compiler/std-wasi/crypto.optimized.wat b/tests/compiler/std-wasi/crypto.optimized.wat index 6bef072581..fcefb38e80 100644 --- a/tests/compiler/std-wasi/crypto.optimized.wat +++ b/tests/compiler/std-wasi/crypto.optimized.wat @@ -1716,49 +1716,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl + local.get $1 + i32.add + i32.const 1 + i32.sub local.get $1 - i32.const 31 local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1858,20 +1856,18 @@ call $~lib/wasi/index/abort unreachable end + i32.const 12 + local.get $1 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $1 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $1 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end + select local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 @@ -1879,23 +1875,6 @@ if memory.size local.tee $1 - local.get $3 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $3 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $3 - i32.add - else - local.get $3 - end i32.const 4 local.get $0 i32.load offset=1568 @@ -1906,6 +1885,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add diff --git a/tests/compiler/std-wasi/process.optimized.wat b/tests/compiler/std-wasi/process.optimized.wat index 3551fc51e5..bdd6867abf 100644 --- a/tests/compiler/std-wasi/process.optimized.wat +++ b/tests/compiler/std-wasi/process.optimized.wat @@ -1579,49 +1579,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl + local.get $1 + i32.add + i32.const 1 + i32.sub local.get $1 - i32.const 31 local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1721,20 +1719,18 @@ call $~lib/wasi/index/abort unreachable end + i32.const 12 + local.get $1 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $1 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $1 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end + select local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 @@ -1742,23 +1738,6 @@ if memory.size local.tee $1 - local.get $3 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $3 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $3 - i32.add - else - local.get $3 - end i32.const 4 local.get $0 i32.load offset=1568 @@ -1769,6 +1748,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -3966,12 +3960,11 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $1 diff --git a/tests/compiler/std/array-access.optimized.wat b/tests/compiler/std/array-access.optimized.wat index 6c0e7ac5fb..c2e737cf0d 100644 --- a/tests/compiler/std/array-access.optimized.wat +++ b/tests/compiler/std/array-access.optimized.wat @@ -58,12 +58,11 @@ local.tee $2 i32.const 7 i32.and - i32.const 1 + i32.eqz local.get $1 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $2 diff --git a/tests/compiler/std/array-literal.optimized.wat b/tests/compiler/std/array-literal.optimized.wat index 4f6cd43a6f..9671e7bbaa 100644 --- a/tests/compiler/std/array-literal.optimized.wat +++ b/tests/compiler/std/array-literal.optimized.wat @@ -1167,49 +1167,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl + local.get $1 + i32.add + i32.const 1 + i32.sub local.get $1 - i32.const 31 local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1361,7 +1359,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $5 local.get $0 i32.const 16 i32.add @@ -1376,46 +1374,27 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $3 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $4 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1424,6 +1403,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1431,16 +1425,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $4 local.get $2 - local.get $3 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1448,7 +1442,7 @@ unreachable end end - local.get $4 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1456,8 +1450,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1474,7 +1468,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1484,13 +1478,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1506,9 +1500,9 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if @@ -1516,23 +1510,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index d806748967..de573da0b5 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -1787,49 +1787,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl + local.get $1 + i32.add + i32.const 1 + i32.sub local.get $1 - i32.const 31 local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1929,20 +1927,18 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $1 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $1 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $1 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end + select local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 @@ -1950,23 +1946,6 @@ if memory.size local.tee $1 - local.get $3 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $3 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $3 - i32.add - else - local.get $3 - end i32.const 4 local.get $0 i32.load offset=1568 @@ -1977,6 +1956,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -8921,7 +8915,7 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $6 local.get $5 local.get $5 @@ -8931,8 +8925,7 @@ local.tee $3 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $0 @@ -9047,13 +9040,12 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 local.tee $0 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $2 diff --git a/tests/compiler/std/arraybuffer.optimized.wat b/tests/compiler/std/arraybuffer.optimized.wat index 60d186ef35..49a7ca2a25 100644 --- a/tests/compiler/std/arraybuffer.optimized.wat +++ b/tests/compiler/std/arraybuffer.optimized.wat @@ -1084,49 +1084,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl + local.get $1 + i32.add + i32.const 1 + i32.sub local.get $1 - i32.const 31 local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1454,11 +1452,11 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $5 local.get $0 i32.const 16 i32.add - local.tee $4 + local.tee $3 i32.const 1073741820 i32.gt_u if @@ -1469,46 +1467,27 @@ call $~lib/builtins/abort unreachable end - local.get $4 + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub + local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $4 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $3 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1517,6 +1496,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1541,7 +1535,7 @@ unreachable end end - local.get $3 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1549,8 +1543,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1567,7 +1561,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1577,13 +1571,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1599,7 +1593,7 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub local.tee $4 i32.const 16 @@ -1609,23 +1603,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 + local.tee $3 local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 diff --git a/tests/compiler/std/dataview.optimized.wat b/tests/compiler/std/dataview.optimized.wat index d16cd76d92..f3c8d95750 100644 --- a/tests/compiler/std/dataview.optimized.wat +++ b/tests/compiler/std/dataview.optimized.wat @@ -1090,49 +1090,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl local.get $1 - i32.const 31 + i32.add + i32.const 1 + i32.sub local.get $1 + local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1460,11 +1458,11 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $5 local.get $0 i32.const 16 i32.add - local.tee $4 + local.tee $3 i32.const 1073741820 i32.gt_u if @@ -1475,46 +1473,27 @@ call $~lib/builtins/abort unreachable end - local.get $4 + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub + local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $4 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $3 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1523,6 +1502,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1547,7 +1541,7 @@ unreachable end end - local.get $3 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1555,8 +1549,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1573,7 +1567,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1583,13 +1577,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1605,7 +1599,7 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub local.tee $4 i32.const 16 @@ -1615,23 +1609,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 + local.tee $3 local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -1859,21 +1853,18 @@ i32.load offset=4 i32.add i32.load16_s - local.set $0 + local.tee $0 + local.get $0 + i32.const 8 + i32.shl + local.get $0 + i32.const 65535 + i32.and + i32.const 8 + i32.shr_u + i32.or local.get $2 - if (result i32) - local.get $0 - else - local.get $0 - i32.const 8 - i32.shl - local.get $0 - i32.const 65535 - i32.and - i32.const 8 - i32.shr_u - i32.or - end + select ) (func $~lib/dataview/DataView#getInt32 (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $1 @@ -2008,21 +1999,18 @@ i32.load offset=4 i32.add i32.load16_u - local.set $0 + local.tee $0 + local.get $0 + i32.const 8 + i32.shl + local.get $0 + i32.const 65535 + i32.and + i32.const 8 + i32.shr_u + i32.or local.get $2 - if (result i32) - local.get $0 - else - local.get $0 - i32.const 8 - i32.shl - local.get $0 - i32.const 65535 - i32.and - i32.const 8 - i32.shr_u - i32.or - end + select ) (func $~lib/dataview/DataView#getUint32 (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $1 @@ -2219,20 +2207,18 @@ end local.get $0 i32.load offset=4 + local.get $1 + local.get $1 + i32.const 8 + i32.shl + local.get $1 + i32.const 65535 + i32.and + i32.const 8 + i32.shr_u + i32.or local.get $2 - if (result i32) - local.get $1 - else - local.get $1 - i32.const 8 - i32.shl - local.get $1 - i32.const 65535 - i32.and - i32.const 8 - i32.shr_u - i32.or - end + select i32.store16 ) (func $~lib/dataview/DataView#setInt32 (param $0 i32) (param $1 i32) (param $2 i32) @@ -2329,20 +2315,18 @@ end local.get $0 i32.load offset=4 + local.get $1 + local.get $1 + i32.const 8 + i32.shl + local.get $1 + i32.const 65535 + i32.and + i32.const 8 + i32.shr_u + i32.or local.get $2 - if (result i32) - local.get $1 - else - local.get $1 - i32.const 8 - i32.shl - local.get $1 - i32.const 65535 - i32.and - i32.const 8 - i32.shr_u - i32.or - end + select i32.store16 ) (func $~lib/dataview/DataView#setUint32 (param $0 i32) (param $1 i32) (param $2 i32) diff --git a/tests/compiler/std/date.optimized.wat b/tests/compiler/std/date.optimized.wat index 45aa3ec433..0da06eaee2 100644 --- a/tests/compiler/std/date.optimized.wat +++ b/tests/compiler/std/date.optimized.wat @@ -1450,49 +1450,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl local.get $1 - i32.const 31 + i32.add + i32.const 1 + i32.sub local.get $1 + local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1820,11 +1818,11 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $5 local.get $0 i32.const 16 i32.add - local.tee $4 + local.tee $3 i32.const 1073741820 i32.gt_u if @@ -1835,46 +1833,27 @@ call $~lib/builtins/abort unreachable end - local.get $4 + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub + local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $4 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $3 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1883,6 +1862,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1907,7 +1901,7 @@ unreachable end end - local.get $3 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1915,8 +1909,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1933,7 +1927,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1943,13 +1937,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1965,7 +1959,7 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub local.tee $4 i32.const 16 @@ -1975,23 +1969,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 + local.tee $3 local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -3650,12 +3644,11 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $1 diff --git a/tests/compiler/std/map.optimized.wat b/tests/compiler/std/map.optimized.wat index 1b725ef644..ad4733b77b 100644 --- a/tests/compiler/std/map.optimized.wat +++ b/tests/compiler/std/map.optimized.wat @@ -1098,49 +1098,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl + local.get $1 + i32.add + i32.const 1 + i32.sub local.get $1 - i32.const 31 local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1468,11 +1466,11 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $5 local.get $0 i32.const 16 i32.add - local.tee $4 + local.tee $3 i32.const 1073741820 i32.gt_u if @@ -1483,46 +1481,27 @@ call $~lib/builtins/abort unreachable end - local.get $4 + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub + local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $4 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $3 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1531,6 +1510,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1555,7 +1549,7 @@ unreachable end end - local.get $3 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1563,8 +1557,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1581,7 +1575,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1591,13 +1585,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1613,7 +1607,7 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub local.tee $4 i32.const 16 @@ -1623,23 +1617,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 + local.tee $3 local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 diff --git a/tests/compiler/std/math.optimized.wat b/tests/compiler/std/math.optimized.wat index 6963978cc5..95bd63739f 100644 --- a/tests/compiler/std/math.optimized.wat +++ b/tests/compiler/std/math.optimized.wat @@ -6984,7 +6984,6 @@ local.get $4 i64.const 63 i64.shr_u - local.set $6 local.get $10 i64.eqz if (result i64) @@ -7087,31 +7086,27 @@ local.tee $5 i64.sub local.set $4 + i64.const 63 + i64.shl local.get $3 local.get $5 i64.shl - local.set $3 + local.tee $3 + i64.const 4503599627370496 + i64.sub + local.get $4 + i64.const 52 + i64.shl + i64.or + local.get $3 + i64.const 1 + local.get $4 + i64.sub + i64.shr_u local.get $4 i64.const 0 i64.gt_s - if (result i64) - local.get $3 - i64.const 4503599627370496 - i64.sub - local.get $4 - i64.const 52 - i64.shl - i64.or - else - local.get $3 - i64.const 1 - local.get $4 - i64.sub - i64.shr_u - end - local.get $6 - i64.const 63 - i64.shl + select i64.or f64.reinterpret_i64 end @@ -7312,25 +7307,22 @@ local.get $2 local.get $4 i32.shl - local.set $2 + local.tee $2 + i32.const 8388608 + i32.sub + local.get $3 + i32.const 23 + i32.shl + i32.or + local.get $2 + i32.const 1 + local.get $3 + i32.sub + i32.shr_u local.get $3 i32.const 0 i32.gt_s - if (result i32) - local.get $2 - i32.const 8388608 - i32.sub - local.get $3 - i32.const 23 - i32.shl - i32.or - else - local.get $2 - i32.const 1 - local.get $3 - i32.sub - i32.shr_u - end + select local.get $5 i32.or f32.reinterpret_i32 @@ -7411,7 +7403,13 @@ local.tee $12 i64.const 52 i64.shr_u - local.set $6 + local.tee $6 + i64.const 2047 + i64.and + i64.const 958 + i64.sub + i64.const 128 + i64.ge_u local.get $0 i64.reinterpret_f64 local.tee $2 @@ -7422,17 +7420,7 @@ i64.sub i64.const 2046 i64.ge_u - if (result i32) - i32.const 1 - else - local.get $6 - i64.const 2047 - i64.and - i64.const 958 - i64.sub - i64.const 128 - i64.ge_u - end + i32.or if local.get $12 i64.const 1 @@ -7685,20 +7673,18 @@ select br $~lib/util/math/pow_lut|inlined.0 end + local.get $0 + f64.const 4503599627370496 + f64.mul + i64.reinterpret_f64 + i64.const 9223372036854775807 + i64.and + i64.const 234187180623265792 + i64.sub + local.get $2 local.get $4 i64.eqz - if (result i64) - local.get $0 - f64.const 4503599627370496 - f64.mul - i64.reinterpret_f64 - i64.const 9223372036854775807 - i64.and - i64.const 234187180623265792 - i64.sub - else - local.get $2 - end + select local.set $2 end local.get $2 @@ -8891,27 +8877,22 @@ local.set $2 end end - local.get $1 - f64.abs - local.set $1 + local.get $2 + i64.const 4503599627370496 + i64.sub + local.get $3 + i64.const 52 + i64.shl + i64.or + local.get $2 + i64.const 1 + local.get $3 + i64.sub + i64.shr_u local.get $3 i64.const 0 i64.gt_s - if (result i64) - local.get $2 - i64.const 4503599627370496 - i64.sub - local.get $3 - i64.const 52 - i64.shl - i64.or - else - local.get $2 - i64.const 1 - local.get $3 - i64.sub - i64.shr_u - end + select f64.reinterpret_i64 local.tee $0 local.get $0 @@ -8919,6 +8900,8 @@ local.set $8 local.get $0 local.get $1 + f64.abs + local.tee $1 f64.sub local.get $0 local.get $3 @@ -8927,26 +8910,23 @@ if (result i32) i32.const 1 else + local.get $5 + i32.const 1 + i32.and + local.get $1 + local.get $8 + f64.eq + i32.and + local.get $1 + local.get $8 + f64.lt + i32.or local.get $4 local.get $3 i64.const 1 i64.add i64.eq - if (result i32) - local.get $5 - i32.const 1 - i32.and - local.get $1 - local.get $8 - f64.eq - i32.and - local.get $1 - local.get $8 - f64.lt - i32.or - else - i32.const 0 - end + i32.and end select local.tee $0 @@ -9133,27 +9113,22 @@ local.set $3 end end - local.get $1 - f32.abs - local.set $1 + local.get $2 + i32.const 8388608 + i32.sub + local.get $3 + i32.const 23 + i32.shl + i32.or + local.get $2 + i32.const 1 + local.get $3 + i32.sub + i32.shr_u local.get $3 i32.const 0 i32.gt_s - if (result i32) - local.get $2 - i32.const 8388608 - i32.sub - local.get $3 - i32.const 23 - i32.shl - i32.or - else - local.get $2 - i32.const 1 - local.get $3 - i32.sub - i32.shr_u - end + select f32.reinterpret_i32 local.tee $0 local.get $0 @@ -9161,6 +9136,8 @@ local.set $8 local.get $0 local.get $1 + f32.abs + local.tee $1 f32.sub local.get $0 local.get $3 @@ -9169,26 +9146,23 @@ if (result i32) i32.const 1 else + local.get $5 + i32.const 1 + i32.and + local.get $1 + local.get $8 + f32.eq + i32.and + local.get $1 + local.get $8 + f32.lt + i32.or local.get $4 local.get $3 i32.const 1 i32.add i32.eq - if (result i32) - local.get $5 - i32.const 1 - i32.and - local.get $1 - local.get $8 - f32.eq - i32.and - local.get $1 - local.get $8 - f32.lt - i32.or - else - i32.const 0 - end + i32.and end select local.tee $0 diff --git a/tests/compiler/std/mod.optimized.wat b/tests/compiler/std/mod.optimized.wat index f343de7de3..1c0226fb8c 100644 --- a/tests/compiler/std/mod.optimized.wat +++ b/tests/compiler/std/mod.optimized.wat @@ -90,7 +90,6 @@ local.get $5 i64.const 63 i64.shr_u - local.set $7 local.get $10 i64.eqz if (result i64) @@ -193,31 +192,27 @@ local.tee $6 i64.sub local.set $5 + i64.const 63 + i64.shl local.get $3 local.get $6 i64.shl - local.set $3 + local.tee $3 + i64.const 4503599627370496 + i64.sub + local.get $5 + i64.const 52 + i64.shl + i64.or + local.get $3 + i64.const 1 + local.get $5 + i64.sub + i64.shr_u local.get $5 i64.const 0 i64.gt_s - if (result i64) - local.get $3 - i64.const 4503599627370496 - i64.sub - local.get $5 - i64.const 52 - i64.shl - i64.or - else - local.get $3 - i64.const 1 - local.get $5 - i64.sub - i64.shr_u - end - local.get $7 - i64.const 63 - i64.shl + select i64.or f64.reinterpret_i64 end @@ -460,25 +455,22 @@ local.get $3 local.get $5 i32.shl - local.set $3 + local.tee $3 + i32.const 8388608 + i32.sub + local.get $4 + i32.const 23 + i32.shl + i32.or + local.get $3 + i32.const 1 + local.get $4 + i32.sub + i32.shr_u local.get $4 i32.const 0 i32.gt_s - if (result i32) - local.get $3 - i32.const 8388608 - i32.sub - local.get $4 - i32.const 23 - i32.shl - i32.or - else - local.get $3 - i32.const 1 - local.get $4 - i32.sub - i32.shr_u - end + select local.get $6 i32.or f32.reinterpret_i32 diff --git a/tests/compiler/std/object.optimized.wat b/tests/compiler/std/object.optimized.wat index a44f371dfd..3eefe0db84 100644 --- a/tests/compiler/std/object.optimized.wat +++ b/tests/compiler/std/object.optimized.wat @@ -64,13 +64,12 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 local.tee $0 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $2 diff --git a/tests/compiler/std/set.optimized.wat b/tests/compiler/std/set.optimized.wat index 4951ffc494..e82fd9fb60 100644 --- a/tests/compiler/std/set.optimized.wat +++ b/tests/compiler/std/set.optimized.wat @@ -1091,49 +1091,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl + local.get $1 + i32.add + i32.const 1 + i32.sub local.get $1 - i32.const 31 local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1461,11 +1459,11 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $5 local.get $0 i32.const 16 i32.add - local.tee $4 + local.tee $3 i32.const 1073741820 i32.gt_u if @@ -1476,46 +1474,27 @@ call $~lib/builtins/abort unreachable end - local.get $4 + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub + local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $4 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $3 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1524,6 +1503,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1548,7 +1542,7 @@ unreachable end end - local.get $3 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1556,8 +1550,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1574,7 +1568,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1584,13 +1578,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1606,7 +1600,7 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub local.tee $4 i32.const 16 @@ -1616,23 +1610,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 + local.tee $3 local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 diff --git a/tests/compiler/std/static-array.optimized.wat b/tests/compiler/std/static-array.optimized.wat index a54fb43853..a4c2828d38 100644 --- a/tests/compiler/std/static-array.optimized.wat +++ b/tests/compiler/std/static-array.optimized.wat @@ -1129,49 +1129,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl + local.get $1 + i32.add + i32.const 1 + i32.sub local.get $1 - i32.const 31 local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -2124,7 +2122,7 @@ local.get $0 i32.const 20 i32.sub - local.tee $5 + local.tee $6 i32.load i32.const -4 i32.and @@ -2133,15 +2131,15 @@ local.get $1 i32.ge_u if - local.get $5 + local.get $6 local.get $1 i32.store offset=16 local.get $0 return end - local.get $5 + local.get $6 i32.load offset=12 - local.set $6 + local.set $3 local.get $1 local.tee $2 i32.const 1073741804 @@ -2205,7 +2203,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $7 local.get $2 i32.const 16 i32.add @@ -2220,46 +2218,27 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $4 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $4 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $4 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $7 + select + local.tee $4 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz if memory.size local.tee $1 - local.get $7 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $7 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $7 - i32.add - else - local.get $7 - end i32.const 4 - local.get $3 + local.get $7 i32.load offset=1568 local.get $1 i32.const 16 @@ -2268,6 +2247,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $4 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $4 + i32.add + local.get $4 + local.get $4 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -2275,16 +2269,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $4 + local.tee $5 local.get $1 - local.get $4 + local.get $5 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $4 + local.get $5 memory.grow i32.const 0 i32.lt_s @@ -2292,7 +2286,7 @@ unreachable end end - local.get $3 + local.get $7 local.get $1 i32.const 16 i32.shl @@ -2300,8 +2294,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $7 + local.get $4 call $~lib/rt/tlsf/searchBlock local.tee $1 i32.eqz @@ -2318,7 +2312,7 @@ i32.load i32.const -4 i32.and - local.get $7 + local.get $4 i32.lt_u if i32.const 0 @@ -2328,13 +2322,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $7 local.get $1 call $~lib/rt/tlsf/removeBlock local.get $1 i32.load - local.set $4 - local.get $7 + local.set $8 + local.get $4 i32.const 4 i32.add i32.const 15 @@ -2347,40 +2341,40 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $8 i32.const -4 i32.and - local.get $7 + local.get $4 i32.sub - local.tee $8 + local.tee $5 i32.const 16 i32.ge_u if local.get $1 - local.get $4 + local.get $8 i32.const 2 i32.and - local.get $7 + local.get $4 i32.or i32.store - local.get $7 + local.get $4 local.get $1 i32.const 4 i32.add i32.add local.tee $4 - local.get $8 + local.get $5 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 + local.get $7 local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $1 - local.get $4 + local.get $8 i32.const -2 i32.and i32.store @@ -2392,15 +2386,15 @@ i32.const -4 i32.and i32.add - local.tee $3 - local.get $3 + local.tee $4 + local.get $4 i32.load i32.const -3 i32.and i32.store end local.get $1 - local.get $6 + local.get $3 i32.store offset=12 local.get $1 local.get $2 @@ -2444,7 +2438,7 @@ local.get $2 call $~lib/memory/memory.fill local.get $2 - local.get $5 + local.get $6 i32.load offset=16 local.tee $1 local.get $1 diff --git a/tests/compiler/std/staticarray.optimized.wat b/tests/compiler/std/staticarray.optimized.wat index 06bc522f37..8aa0459478 100644 --- a/tests/compiler/std/staticarray.optimized.wat +++ b/tests/compiler/std/staticarray.optimized.wat @@ -1270,49 +1270,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl local.get $1 - i32.const 31 + i32.add + i32.const 1 + i32.sub local.get $1 + local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1412,20 +1410,18 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $1 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $1 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $1 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end + select local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 @@ -1433,23 +1429,6 @@ if memory.size local.tee $1 - local.get $3 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $3 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $3 - i32.add - else - local.get $3 - end i32.const 4 local.get $0 i32.load offset=1568 @@ -1460,6 +1439,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -2825,13 +2819,12 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 local.tee $0 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $2 diff --git a/tests/compiler/std/string-casemapping.optimized.wat b/tests/compiler/std/string-casemapping.optimized.wat index 5d393294b2..7cfc062fff 100644 --- a/tests/compiler/std/string-casemapping.optimized.wat +++ b/tests/compiler/std/string-casemapping.optimized.wat @@ -1392,49 +1392,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl + local.get $1 + i32.add + i32.const 1 + i32.sub local.get $1 - i32.const 31 local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1586,7 +1584,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $5 local.get $0 i32.const 16 i32.add @@ -1601,46 +1599,27 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $3 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $4 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1649,6 +1628,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1656,16 +1650,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $4 local.get $2 - local.get $3 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1673,7 +1667,7 @@ unreachable end end - local.get $4 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1681,8 +1675,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1699,7 +1693,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1709,13 +1703,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1731,9 +1725,9 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if @@ -1741,23 +1735,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -3119,13 +3113,12 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 local.tee $0 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $2 diff --git a/tests/compiler/std/string-encoding.optimized.wat b/tests/compiler/std/string-encoding.optimized.wat index 0933a89ca9..63d07cd016 100644 --- a/tests/compiler/std/string-encoding.optimized.wat +++ b/tests/compiler/std/string-encoding.optimized.wat @@ -977,49 +977,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl local.get $1 - i32.const 31 + i32.add + i32.const 1 + i32.sub local.get $1 + local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1171,7 +1169,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $5 local.get $0 i32.const 16 i32.add @@ -1186,46 +1184,27 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $3 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $4 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1234,6 +1213,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1241,16 +1235,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $4 local.get $2 - local.get $3 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1258,7 +1252,7 @@ unreachable end end - local.get $4 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1266,8 +1260,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1284,7 +1278,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1294,13 +1288,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1316,9 +1310,9 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if @@ -1326,23 +1320,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -2503,13 +2497,12 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 local.tee $0 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $2 diff --git a/tests/compiler/std/string.optimized.wat b/tests/compiler/std/string.optimized.wat index 3f9825d627..abd5dbd4e5 100644 --- a/tests/compiler/std/string.optimized.wat +++ b/tests/compiler/std/string.optimized.wat @@ -956,12 +956,11 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $1 @@ -2117,49 +2116,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl + local.get $1 + i32.add + i32.const 1 + i32.sub local.get $1 - i32.const 31 local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -2487,11 +2484,11 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $5 local.get $0 i32.const 16 i32.add - local.tee $4 + local.tee $3 i32.const 1073741820 i32.gt_u if @@ -2502,46 +2499,27 @@ call $~lib/builtins/abort unreachable end - local.get $4 + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub + local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $4 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $3 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -2550,6 +2528,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -2574,7 +2567,7 @@ unreachable end end - local.get $3 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -2582,8 +2575,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -2600,7 +2593,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -2610,13 +2603,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -2632,7 +2625,7 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub local.tee $4 i32.const 16 @@ -2642,23 +2635,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 + local.tee $3 local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -22706,27 +22699,23 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store + local.get $1 + i32.const 0 + i32.lt_s local.get $0 i32.const 20 i32.sub i32.load offset=16 i32.const 1 i32.shr_u - local.set $2 + local.tee $2 + i64.extend_i32_s local.get $1 - i32.const 0 - i32.lt_s - if (result i32) - i32.const 1 - else - local.get $2 - i64.extend_i32_s - local.get $1 - i64.extend_i32_s - i64.mul - i64.const 268435456 - i64.gt_u - end + i64.extend_i32_s + i64.mul + i64.const 268435456 + i64.gt_u + i32.or if i32.const 13648 i32.const 1328 diff --git a/tests/compiler/std/symbol.optimized.wat b/tests/compiler/std/symbol.optimized.wat index 092950bf9b..f602d2d873 100644 --- a/tests/compiler/std/symbol.optimized.wat +++ b/tests/compiler/std/symbol.optimized.wat @@ -1175,49 +1175,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl local.get $1 - i32.const 31 + i32.add + i32.const 1 + i32.sub local.get $1 + local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1545,11 +1543,11 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $3 + local.tee $5 local.get $0 i32.const 16 i32.add - local.tee $4 + local.tee $3 i32.const 1073741820 i32.gt_u if @@ -1560,46 +1558,27 @@ call $~lib/builtins/abort unreachable end - local.get $4 + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub + local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $4 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $3 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1608,6 +1587,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1632,7 +1626,7 @@ unreachable end end - local.get $3 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1640,8 +1634,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1658,7 +1652,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1668,13 +1662,13 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1690,7 +1684,7 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub local.tee $4 i32.const 16 @@ -1700,23 +1694,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 + local.tee $3 local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $3 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -2025,13 +2019,12 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 local.tee $0 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $2 diff --git a/tests/compiler/std/typedarray.optimized.wat b/tests/compiler/std/typedarray.optimized.wat index da130efcaa..7c3be53d98 100644 --- a/tests/compiler/std/typedarray.optimized.wat +++ b/tests/compiler/std/typedarray.optimized.wat @@ -1741,49 +1741,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl + local.get $1 + i32.add + i32.const 1 + i32.sub local.get $1 - i32.const 31 local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1883,20 +1881,18 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $1 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $1 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $1 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end + select local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $1 @@ -1904,23 +1900,6 @@ if memory.size local.tee $1 - local.get $3 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $3 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $3 - i32.add - else - local.get $3 - end i32.const 4 local.get $0 i32.load offset=1568 @@ -1931,6 +1910,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -6110,6 +6104,7 @@ br $while-continue|0 end end + local.get $2 local.get $1 i32.const 8388608 i32.ge_u @@ -6127,11 +6122,6 @@ i32.sub local.set $1 end - local.get $3 - i32.const -2147483648 - i32.and - local.set $3 - local.get $2 local.get $1 i32.const 8 i32.shl @@ -6139,29 +6129,28 @@ local.tee $4 i32.sub local.set $2 + local.get $3 + i32.const -2147483648 + i32.and local.get $1 local.get $4 i32.shl - local.set $1 + local.tee $1 + i32.const 8388608 + i32.sub + local.get $2 + i32.const 23 + i32.shl + i32.or + local.get $1 + i32.const 1 + local.get $2 + i32.sub + i32.shr_u local.get $2 i32.const 0 i32.gt_s - if (result i32) - local.get $1 - i32.const 8388608 - i32.sub - local.get $2 - i32.const 23 - i32.shl - i32.or - else - local.get $1 - i32.const 1 - local.get $2 - i32.sub - i32.shr_u - end - local.get $3 + select i32.or f32.reinterpret_i32 end @@ -6176,12 +6165,12 @@ block $__inlined_func$~lib/math/NativeMath.mod (result f64) local.get $0 i64.reinterpret_f64 - local.tee $4 + local.tee $5 i64.const 52 i64.shr_u i64.const 2047 i64.and - local.tee $6 + local.tee $4 i64.const 2047 i64.eq if @@ -6193,7 +6182,7 @@ f64.div br $__inlined_func$~lib/math/NativeMath.mod end - local.get $4 + local.get $5 i64.const 1 i64.shl local.tee $3 @@ -6208,22 +6197,22 @@ f64.mul br $__inlined_func$~lib/math/NativeMath.mod end - local.get $6 + local.get $4 i64.eqz if (result i64) - local.get $4 + local.get $5 i64.const 1 - local.get $6 local.get $4 + local.get $5 i64.const 12 i64.shl i64.clz i64.sub - local.tee $6 + local.tee $4 i64.sub i64.shl else - local.get $4 + local.get $5 i64.const 4503599627370495 i64.and i64.const 4503599627370496 @@ -6231,7 +6220,7 @@ end local.set $3 loop $while-continue|0 - local.get $6 + local.get $4 i64.const 1024 i64.gt_s if @@ -6256,13 +6245,14 @@ i64.const 1 i64.shl local.set $3 - local.get $6 + local.get $4 i64.const 1 i64.sub - local.set $6 + local.set $4 br $while-continue|0 end end + local.get $4 local.get $3 i64.const 4503599627370496 i64.ge_u @@ -6280,11 +6270,6 @@ i64.sub local.set $3 end - local.get $4 - i64.const 63 - i64.shr_u - local.set $5 - local.get $6 local.get $3 i64.const 11 i64.shl @@ -6292,31 +6277,30 @@ local.tee $4 i64.sub local.set $6 + local.get $5 + i64.const 63 + i64.shr_u + i64.const 63 + i64.shl local.get $3 local.get $4 i64.shl - local.set $3 + local.tee $3 + i64.const 4503599627370496 + i64.sub + local.get $6 + i64.const 52 + i64.shl + i64.or + local.get $3 + i64.const 1 + local.get $6 + i64.sub + i64.shr_u local.get $6 i64.const 0 i64.gt_s - if (result i64) - local.get $3 - i64.const 4503599627370496 - i64.sub - local.get $6 - i64.const 52 - i64.shl - i64.or - else - local.get $3 - i64.const 1 - local.get $6 - i64.sub - i64.shr_u - end - local.get $5 - i64.const 63 - i64.shl + select i64.or f64.reinterpret_i64 end @@ -23683,13 +23667,12 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 local.tee $0 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $2 diff --git a/tests/compiler/std/uri.optimized.wat b/tests/compiler/std/uri.optimized.wat index ee5cfded36..9cf7259e17 100644 --- a/tests/compiler/std/uri.optimized.wat +++ b/tests/compiler/std/uri.optimized.wat @@ -1058,49 +1058,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl + local.get $1 + i32.add + i32.const 1 + i32.sub local.get $1 - i32.const 31 local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1252,7 +1250,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $5 local.get $0 i32.const 16 i32.add @@ -1267,46 +1265,27 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $3 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $4 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1315,6 +1294,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1322,16 +1316,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $4 local.get $2 - local.get $3 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1339,7 +1333,7 @@ unreachable end end - local.get $4 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1347,8 +1341,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1365,7 +1359,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1375,13 +1369,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1397,9 +1391,9 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if @@ -1407,23 +1401,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 @@ -2677,7 +2671,6 @@ br_if $while-break|0 end local.get $8 - local.get $7 i32.const 6 i32.const 24 local.get $6 @@ -2758,6 +2751,7 @@ i32.const 128 i32.lt_u select + local.get $7 i32.add local.tee $5 i32.lt_u @@ -2778,7 +2772,7 @@ local.get $6 i32.const 128 i32.lt_u - if (result i32) + if local.get $3 local.get $7 i32.add @@ -2804,15 +2798,11 @@ i32.shl i32.or i32.store offset=2 - local.get $7 - i32.const 6 - i32.add else - local.get $3 local.get $6 i32.const 2048 i32.lt_u - if (result i32) + if local.get $3 local.get $7 i32.add @@ -2843,9 +2833,6 @@ i32.shl i32.or i32.store offset=2 - local.get $7 - i32.const 6 - i32.add else local.get $3 local.get $6 @@ -2950,12 +2937,12 @@ local.get $7 i32.const 6 i32.add - local.tee $5 - i32.add local.tee $7 + i32.add + local.tee $5 i32.const 37 i32.store16 - local.get $7 + local.get $5 local.get $6 i32.const 6 i32.shr_u @@ -2963,13 +2950,13 @@ i32.and i32.const 128 i32.or - local.tee $7 + local.tee $5 i32.const 4 i32.shr_u i32.const 1676 i32.add i32.load8_u - local.get $7 + local.get $5 i32.const 15 i32.and i32.const 1676 @@ -2979,28 +2966,29 @@ i32.shl i32.or i32.store offset=2 - local.get $5 - i32.const 6 - i32.add end - local.tee $5 + local.get $3 + local.get $7 + i32.const 6 i32.add local.tee $7 + i32.add + local.tee $5 i32.const 37 i32.store16 - local.get $7 + local.get $5 local.get $6 i32.const 63 i32.and i32.const 128 i32.or - local.tee $6 + local.tee $5 i32.const 4 i32.shr_u i32.const 1676 i32.add i32.load8_u - local.get $6 + local.get $5 i32.const 15 i32.and i32.const 1676 @@ -3010,10 +2998,10 @@ i32.shl i32.or i32.store offset=2 - local.get $5 - i32.const 6 - i32.add end + local.get $7 + i32.const 6 + i32.add local.set $7 local.get $4 i32.const 1 @@ -3081,13 +3069,12 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 local.tee $0 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $2 diff --git a/tests/compiler/templateliteral.optimized.wat b/tests/compiler/templateliteral.optimized.wat index 1832752b13..8534106fcb 100644 --- a/tests/compiler/templateliteral.optimized.wat +++ b/tests/compiler/templateliteral.optimized.wat @@ -183,13 +183,12 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 local.tee $0 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $2 @@ -1294,49 +1293,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl + local.get $1 + i32.add + i32.const 1 + i32.sub local.get $1 - i32.const 31 local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -1488,7 +1485,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $5 local.get $0 i32.const 16 i32.add @@ -1503,46 +1500,27 @@ call $~lib/builtins/abort unreachable end + i32.const 12 + local.get $3 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $3 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $3 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end - local.tee $5 + select + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz if memory.size local.tee $2 - local.get $5 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $5 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $5 - i32.add - else - local.get $5 - end i32.const 4 - local.get $4 + local.get $5 i32.load offset=1568 local.get $2 i32.const 16 @@ -1551,6 +1529,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $3 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $3 + i32.add + local.get $3 + local.get $3 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add @@ -1558,16 +1551,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $3 + local.tee $4 local.get $2 - local.get $3 + local.get $4 i32.gt_s select memory.grow i32.const 0 i32.lt_s if - local.get $3 + local.get $4 memory.grow i32.const 0 i32.lt_s @@ -1575,7 +1568,7 @@ unreachable end end - local.get $4 + local.get $5 local.get $2 i32.const 16 i32.shl @@ -1583,8 +1576,8 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $2 i32.eqz @@ -1601,7 +1594,7 @@ i32.load i32.const -4 i32.and - local.get $5 + local.get $3 i32.lt_u if i32.const 0 @@ -1611,13 +1604,13 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $5 local.get $2 call $~lib/rt/tlsf/removeBlock local.get $2 i32.load local.set $6 - local.get $5 + local.get $3 i32.const 4 i32.add i32.const 15 @@ -1633,9 +1626,9 @@ local.get $6 i32.const -4 i32.and - local.get $5 + local.get $3 i32.sub - local.tee $3 + local.tee $4 i32.const 16 i32.ge_u if @@ -1643,23 +1636,23 @@ local.get $6 i32.const 2 i32.and - local.get $5 + local.get $3 i32.or i32.store - local.get $5 + local.get $3 local.get $2 i32.const 4 i32.add i32.add - local.tee $5 - local.get $3 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store - local.get $4 local.get $5 + local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $2 diff --git a/tests/compiler/typeof.optimized.wat b/tests/compiler/typeof.optimized.wat index 60ca7d88a5..e57f0eb06d 100644 --- a/tests/compiler/typeof.optimized.wat +++ b/tests/compiler/typeof.optimized.wat @@ -101,13 +101,12 @@ i32.const 7 i32.and i32.or - i32.const 1 + i32.eqz local.get $3 local.tee $0 i32.const 4 i32.ge_u - select - i32.eqz + i32.and if loop $do-loop|0 local.get $2 diff --git a/tests/compiler/wasi/trace.optimized.wat b/tests/compiler/wasi/trace.optimized.wat index 2d47a265d9..01ad7f27c3 100644 --- a/tests/compiler/wasi/trace.optimized.wat +++ b/tests/compiler/wasi/trace.optimized.wat @@ -1036,49 +1036,47 @@ ) (func $~lib/rt/tlsf/searchBlock (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) local.get $1 i32.const 256 i32.lt_u - if + if (result i32) local.get $1 i32.const 4 i32.shr_u - local.set $1 else + i32.const 31 + i32.const 1 + i32.const 27 local.get $1 - i32.const 536870910 - i32.lt_u - if - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - local.get $1 - i32.add - i32.const 1 - i32.sub - local.set $1 - end + i32.clz + i32.sub + i32.shl local.get $1 - i32.const 31 + i32.add + i32.const 1 + i32.sub local.get $1 + local.get $1 + i32.const 536870910 + i32.lt_u + select + local.tee $1 i32.clz i32.sub - local.tee $2 + local.tee $3 + i32.const 7 + i32.sub + local.set $2 + local.get $1 + local.get $3 i32.const 4 i32.sub i32.shr_u i32.const 16 i32.xor - local.set $1 - local.get $2 - i32.const 7 - i32.sub - local.set $2 end - local.get $1 + local.tee $1 i32.const 16 i32.lt_u local.get $2 @@ -3353,20 +3351,18 @@ call $~lib/wasi/index/abort unreachable end + i32.const 12 + local.get $6 + i32.const 19 + i32.add + i32.const -16 + i32.and + i32.const 4 + i32.sub local.get $6 i32.const 12 i32.le_u - if (result i32) - i32.const 12 - else - local.get $6 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - end + select local.tee $9 call $~lib/rt/tlsf/searchBlock local.tee $6 @@ -3374,23 +3370,6 @@ if memory.size local.tee $6 - local.get $9 - i32.const 536870910 - i32.lt_u - if (result i32) - i32.const 1 - i32.const 27 - local.get $9 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - local.get $9 - i32.add - else - local.get $9 - end i32.const 4 local.get $8 i32.load offset=1568 @@ -3401,6 +3380,21 @@ i32.sub i32.ne i32.shl + i32.const 1 + i32.const 27 + local.get $9 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + local.get $9 + i32.add + local.get $9 + local.get $9 + i32.const 536870910 + i32.lt_u + select i32.add i32.const 65535 i32.add From 7c56cc14f62088268623d48e06aebe3b721b35fd Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Thu, 14 Oct 2021 10:12:40 +0300 Subject: [PATCH 35/54] now simplify some hardcoded opts --- std/assembly/util/string.ts | 3 +- std/assembly/util/uri.ts | 3 +- tests/compiler/std/date.untouched.wat | 19 +++++++----- tests/compiler/std/string.untouched.wat | 19 +++++++----- tests/compiler/std/uri.optimized.wat | 40 ++++++++++++------------- tests/compiler/std/uri.untouched.wat | 38 +++++++++++++---------- 6 files changed, 66 insertions(+), 56 deletions(-) diff --git a/std/assembly/util/string.ts b/std/assembly/util/string.ts index 325359d237..0bea1ec612 100644 --- a/std/assembly/util/string.ts +++ b/std/assembly/util/string.ts @@ -512,8 +512,7 @@ export function isSpace(c: u32): bool { if (c < 0x1680) { // < (1) // , , , , , and // (c == 0x20 || c == 0xA0) was optimized to (c | 0x80) == 0xA0 - // @ts-ignore: cast - return ((c | 0x80) == 0xA0) | (c - 0x09 <= 0x0D - 0x09); + return ((c | 0x80) == 0xA0) || (c - 0x09 <= 0x0D - 0x09); } if (c - 0x2000 <= 0x200A - 0x2000) return true; switch (c) { diff --git a/std/assembly/util/uri.ts b/std/assembly/util/uri.ts index c8d72bca24..630f79be5f 100644 --- a/std/assembly/util/uri.ts +++ b/std/assembly/util/uri.ts @@ -271,6 +271,5 @@ function loadHex(src: usize, offset: usize): u32 { // @ts-ignore: decorator @inline function isHex(ch: u32): bool { - // @ts-ignore - return (ch - CharCode._0 < 10) | ((ch | 32) - CharCode.a < 6); + return (ch - CharCode._0 < 10) || ((ch | 32) - CharCode.a < 6); } diff --git a/tests/compiler/std/date.untouched.wat b/tests/compiler/std/date.untouched.wat index ab4c2824a1..8125ecd31f 100644 --- a/tests/compiler/std/date.untouched.wat +++ b/tests/compiler/std/date.untouched.wat @@ -5396,14 +5396,17 @@ i32.or i32.const 160 i32.eq - local.get $0 - i32.const 9 - i32.sub - i32.const 13 - i32.const 9 - i32.sub - i32.le_u - i32.or + if (result i32) + i32.const 1 + else + local.get $0 + i32.const 9 + i32.sub + i32.const 13 + i32.const 9 + i32.sub + i32.le_u + end return end local.get $0 diff --git a/tests/compiler/std/string.untouched.wat b/tests/compiler/std/string.untouched.wat index dfb1faca55..7ec58f8860 100644 --- a/tests/compiler/std/string.untouched.wat +++ b/tests/compiler/std/string.untouched.wat @@ -4795,14 +4795,17 @@ i32.or i32.const 160 i32.eq - local.get $0 - i32.const 9 - i32.sub - i32.const 13 - i32.const 9 - i32.sub - i32.le_u - i32.or + if (result i32) + i32.const 1 + else + local.get $0 + i32.const 9 + i32.sub + i32.const 13 + i32.const 9 + i32.sub + i32.le_u + end return end local.get $0 diff --git a/tests/compiler/std/uri.optimized.wat b/tests/compiler/std/uri.optimized.wat index 9cf7259e17..bf68184510 100644 --- a/tests/compiler/std/uri.optimized.wat +++ b/tests/compiler/std/uri.optimized.wat @@ -3245,24 +3245,19 @@ i32.load16_u offset=2 local.set $4 local.get $5 - i32.const 48 - i32.sub - i32.const 10 - i32.lt_u - local.get $5 i32.const 32 i32.or i32.const 97 i32.sub i32.const 6 i32.lt_u + local.get $5 + i32.const 48 + i32.sub + i32.const 10 + i32.lt_u i32.or if (result i32) - local.get $4 - i32.const 48 - i32.sub - i32.const 10 - i32.lt_u local.get $4 i32.const 32 i32.or @@ -3270,6 +3265,11 @@ i32.sub i32.const 6 i32.lt_u + local.get $4 + i32.const 48 + i32.sub + i32.const 10 + i32.lt_u i32.or else i32.const 0 @@ -3417,24 +3417,19 @@ i32.load16_u offset=2 local.set $10 local.get $7 - i32.const 48 - i32.sub - i32.const 10 - i32.lt_u - local.get $7 i32.const 32 i32.or i32.const 97 i32.sub i32.const 6 i32.lt_u + local.get $7 + i32.const 48 + i32.sub + i32.const 10 + i32.lt_u i32.or if (result i32) - local.get $10 - i32.const 48 - i32.sub - i32.const 10 - i32.lt_u local.get $10 i32.const 32 i32.or @@ -3442,6 +3437,11 @@ i32.sub i32.const 6 i32.lt_u + local.get $10 + i32.const 48 + i32.sub + i32.const 10 + i32.lt_u i32.or else i32.const 0 diff --git a/tests/compiler/std/uri.untouched.wat b/tests/compiler/std/uri.untouched.wat index a5eddee6b7..86fca127d2 100644 --- a/tests/compiler/std/uri.untouched.wat +++ b/tests/compiler/std/uri.untouched.wat @@ -4274,22 +4274,9 @@ i32.sub i32.const 10 i32.lt_u - local.get $4 - i32.const 32 - i32.or - i32.const 97 - i32.sub - i32.const 6 - i32.lt_u - i32.or if (result i32) - local.get $3 - local.set $4 - local.get $4 - i32.const 48 - i32.sub - i32.const 10 - i32.lt_u + i32.const 1 + else local.get $4 i32.const 32 i32.or @@ -4297,7 +4284,26 @@ i32.sub i32.const 6 i32.lt_u - i32.or + end + if (result i32) + local.get $3 + local.set $4 + local.get $4 + i32.const 48 + i32.sub + i32.const 10 + i32.lt_u + if (result i32) + i32.const 1 + else + local.get $4 + i32.const 32 + i32.or + i32.const 97 + i32.sub + i32.const 6 + i32.lt_u + end else i32.const 0 end From 0645cb9f7370704a9afc4f487a32d88ee2ad11e7 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 19 Oct 2021 11:30:50 +0300 Subject: [PATCH 36/54] update. Add table_grow operation --- package-lock.json | 15 ++++++------ package.json | 2 +- src/glue/binaryen.d.ts | 22 ++++++++++++++++++ src/module.ts | 52 +++++++++++++++++++++++------------------- 4 files changed, 60 insertions(+), 31 deletions(-) diff --git a/package-lock.json b/package-lock.json index 1bdac4b01b..394cdfca83 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5,10 +5,11 @@ "requires": true, "packages": { "": { + "name": "assemblyscript", "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "102.0.0-nightly.20211014", + "binaryen": "102.0.0-nightly.20211019", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" @@ -733,9 +734,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "102.0.0-nightly.20211014", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211014.tgz", - "integrity": "sha512-P+RkyvYzLNZgVvRD3FNEYm75PY72Xef/DKTNKvqYUEZaUD0qe/DJYYQEpkdB29o8UfpHHg/lUxTIAhu1/QS+GQ==", + "version": "102.0.0-nightly.20211019", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211019.tgz", + "integrity": "sha512-0YL2ehjqj8tdYJY0hTAdrlGBtAHIQcPpvawsXLzT6tJk5iJFLL7fNnSmM+jP5sGsdEEcSjtuLepqiPgCT5/NWA==", "bin": { "wasm-opt": "bin/wasm-opt" } @@ -3508,9 +3509,9 @@ "dev": true }, "binaryen": { - "version": "102.0.0-nightly.20211014", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211014.tgz", - "integrity": "sha512-P+RkyvYzLNZgVvRD3FNEYm75PY72Xef/DKTNKvqYUEZaUD0qe/DJYYQEpkdB29o8UfpHHg/lUxTIAhu1/QS+GQ==" + "version": "102.0.0-nightly.20211019", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211019.tgz", + "integrity": "sha512-0YL2ehjqj8tdYJY0hTAdrlGBtAHIQcPpvawsXLzT6tJk5iJFLL7fNnSmM+jP5sGsdEEcSjtuLepqiPgCT5/NWA==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index f888254ab4..12567a8145 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "url": "https://github.com/AssemblyScript/assemblyscript/issues" }, "dependencies": { - "binaryen": "102.0.0-nightly.20211014", + "binaryen": "102.0.0-nightly.20211019", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" diff --git a/src/glue/binaryen.d.ts b/src/glue/binaryen.d.ts index ba2595e620..5f2823b338 100644 --- a/src/glue/binaryen.d.ts +++ b/src/glue/binaryen.d.ts @@ -411,8 +411,30 @@ export declare function _BinaryenRefEqGetRight(expr: ExpressionRef): ExpressionR export declare function _BinaryenRefEqSetRight(expr: ExpressionRef, rightExpr: ExpressionRef): void; export declare function _BinaryenTableGet(module: ModuleRef, name: StringRef, index: ExpressionRef, type: TypeRef): ExpressionRef; +export declare function _BinaryenTableGetGetTable(expr: ExpressionRef): StringRef; +export declare function _BinaryenTableGetSetTable(expr: ExpressionRef, table: StringRef): void; +export declare function _BinaryenTableGetGetIndex(expr: ExpressionRef): ExpressionRef; +export declare function _BinaryenTableGetSetIndex(expr: ExpressionRef, index: ExpressionRef): void; + export declare function _BinaryenTableSet(module: ModuleRef, name: StringRef, index: ExpressionRef, value: ExpressionRef): ExpressionRef; +export declare function _BinaryenTableSetGetTable(expr: ExpressionRef): StringRef; +export declare function _BinaryenTableSetSetTable(expr: ExpressionRef, table: StringRef): void; +export declare function _BinaryenTableSetGetIndex(expr: ExpressionRef): ExpressionRef; +export declare function _BinaryenTableSetSetIndex(expr: ExpressionRef, index: ExpressionRef): void; +export declare function _BinaryenTableSetGetValue(expr: ExpressionRef): ExpressionRef; +export declare function _BinaryenTableSetSetValue(expr: ExpressionRef, value: ExpressionRef): void; + export declare function _BinaryenTableSize(module: ModuleRef, name: StringRef): ExpressionRef; +export declare function _BinaryenTableSizeGetTable(expr: ExpressionRef): StringRef; +export declare function _BinaryenTableSizeSetTable(expr: ExpressionRef, table: StringRef): void; +export declare function _BinaryenTableGrowGetValue(expr: ExpressionRef): ExpressionRef; +export declare function _BinaryenTableGrowSetValue(expr: ExpressionRef, value: ExpressionRef): void; +export declare function _BinaryenTableGrowGetDelta(expr: ExpressionRef): ExpressionRef; +export declare function _BinaryenTableGrowSetDelta(expr: ExpressionRef, delta: ExpressionRef): void; + +export declare function _BinaryenTableGrow(module: ModuleRef, name: StringRef, value: ExpressionRef, delta: ExpressionRef): ExpressionRef; +export declare function _BinaryenTableGrowGetTable(expr: ExpressionRef): StringRef; +export declare function _BinaryenTableGrowSetTable(expr: ExpressionRef, table: StringRef): void; export declare function _BinaryenTry(module: ModuleRef, name: StringRef, bodyExpr: ExpressionRef, catchTags: ArrayRef, numCatchTags: Index, catchBodies: ArrayRef, numCatchBodies: Index, delegateTarget: StringRef): ExpressionRef; export declare function _BinaryenTryGetName(expr: ExpressionRef): StringRef; diff --git a/src/module.ts b/src/module.ts index 6e4e3821af..88fd841b75 100644 --- a/src/module.ts +++ b/src/module.ts @@ -130,29 +130,30 @@ export enum ExpressionId { TableGet = 45 /* _BinaryenTableGetId */, TableSet = 46 /* _BinaryenTableSetId */, TableSize = 47 /* _BinaryenTableSizeId */, - Try = 48 /* _BinaryenTryId */, - Throw = 49 /* _BinaryenThrowId */, - Rethrow = 50 /* _BinaryenRethrowId */, - TupleMake = 51 /* _BinaryenTupleMakeId */, - TupleExtract = 52 /* _BinaryenTupleExtractId */, - I31New = 53 /* _BinaryenI31NewId */, - I31Get = 54 /* _BinaryenI31GetId */, - CallRef = 55 /* _BinaryenCallRefId */, - RefTest = 56 /* _BinaryenRefTestId */, - RefCast = 57 /* _BinaryenRefCastId */, - BrOn = 58 /* _BinaryenBrOnId */, - RttCanon = 59 /* _BinaryenRttCanonId */, - RttSub = 60 /* _BinaryenRttSubId */, - StructNew = 61 /* _BinaryenStructNewId */, - StructGet = 62 /* _BinaryenStructGetId */, - StructSet = 63 /* _BinaryenStructSetId */, - ArrayNew = 64 /* _BinaryenArrayNewId */, - ArrayInit = 65 /* _BinaryenArrayInitId */, - ArrayGet = 66 /* _BinaryenArrayGetId */, - ArraySet = 67 /* _BinaryenArraySetId */, - ArrayLen = 68 /* _BinaryenArrayLenId */, - ArrayCopy = 69 /* _BinaryenArrayCopyId */, - RefAs = 70 /* _BinaryenRefAsId */ + TableGrow = 48 /* _BinaryenTableGrowId */, + Try = 49 /* _BinaryenTryId */, + Throw = 50 /* _BinaryenThrowId */, + Rethrow = 51 /* _BinaryenRethrowId */, + TupleMake = 52 /* _BinaryenTupleMakeId */, + TupleExtract = 53 /* _BinaryenTupleExtractId */, + I31New = 54 /* _BinaryenI31NewId */, + I31Get = 55 /* _BinaryenI31GetId */, + CallRef = 56 /* _BinaryenCallRefId */, + RefTest = 57 /* _BinaryenRefTestId */, + RefCast = 58 /* _BinaryenRefCastId */, + BrOn = 59 /* _BinaryenBrOnId */, + RttCanon = 60 /* _BinaryenRttCanonId */, + RttSub = 61 /* _BinaryenRttSubId */, + StructNew = 62 /* _BinaryenStructNewId */, + StructGet = 63 /* _BinaryenStructGetId */, + StructSet = 64 /* _BinaryenStructSetId */, + ArrayNew = 65 /* _BinaryenArrayNewId */, + ArrayInit = 66 /* _BinaryenArrayInitId */, + ArrayGet = 67 /* _BinaryenArrayGetId */, + ArraySet = 68 /* _BinaryenArraySetId */, + ArrayLen = 69 /* _BinaryenArrayLenId */, + ArrayCopy = 70 /* _BinaryenArrayCopyId */, + RefAs = 71 /* _BinaryenRefAsId */ } /** Binaryen external kind constants. */ @@ -1249,6 +1250,11 @@ export class Module { return binaryen._BinaryenTableSize(this.ref, cStr); } + table_grow(name: string, delta: ExpressionRef, value: ExpressionRef = 0): ExpressionRef { + var cStr = this.allocStringCached(name); + return binaryen._BinaryenTableGrow(this.ref, cStr, value, delta); + } + local_get( index: i32, type: TypeRef From c059eae914f8115c5715a1a263294e6430febf5a Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 19 Oct 2021 11:43:00 +0300 Subject: [PATCH 37/54] refactor --- src/glue/binaryen.d.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/glue/binaryen.d.ts b/src/glue/binaryen.d.ts index 5f2823b338..45adb16939 100644 --- a/src/glue/binaryen.d.ts +++ b/src/glue/binaryen.d.ts @@ -427,14 +427,14 @@ export declare function _BinaryenTableSetSetValue(expr: ExpressionRef, value: Ex export declare function _BinaryenTableSize(module: ModuleRef, name: StringRef): ExpressionRef; export declare function _BinaryenTableSizeGetTable(expr: ExpressionRef): StringRef; export declare function _BinaryenTableSizeSetTable(expr: ExpressionRef, table: StringRef): void; -export declare function _BinaryenTableGrowGetValue(expr: ExpressionRef): ExpressionRef; -export declare function _BinaryenTableGrowSetValue(expr: ExpressionRef, value: ExpressionRef): void; -export declare function _BinaryenTableGrowGetDelta(expr: ExpressionRef): ExpressionRef; -export declare function _BinaryenTableGrowSetDelta(expr: ExpressionRef, delta: ExpressionRef): void; export declare function _BinaryenTableGrow(module: ModuleRef, name: StringRef, value: ExpressionRef, delta: ExpressionRef): ExpressionRef; export declare function _BinaryenTableGrowGetTable(expr: ExpressionRef): StringRef; export declare function _BinaryenTableGrowSetTable(expr: ExpressionRef, table: StringRef): void; +export declare function _BinaryenTableGrowGetValue(expr: ExpressionRef): ExpressionRef; +export declare function _BinaryenTableGrowSetValue(expr: ExpressionRef, value: ExpressionRef): void; +export declare function _BinaryenTableGrowGetDelta(expr: ExpressionRef): ExpressionRef; +export declare function _BinaryenTableGrowSetDelta(expr: ExpressionRef, delta: ExpressionRef): void; export declare function _BinaryenTry(module: ModuleRef, name: StringRef, bodyExpr: ExpressionRef, catchTags: ArrayRef, numCatchTags: Index, catchBodies: ArrayRef, numCatchBodies: Index, delegateTarget: StringRef): ExpressionRef; export declare function _BinaryenTryGetName(expr: ExpressionRef): StringRef; From 2deba5816bb148e99053f71f1b6e9fa256b282df Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Wed, 20 Oct 2021 09:51:14 +0300 Subject: [PATCH 38/54] update --- package-lock.json | 14 +++--- package.json | 2 +- tests/compiler/features/gc.optimized.wat | 8 +--- .../features/nontrapping-f2i.optimized.wat | 8 +--- tests/compiler/resolve-binary.optimized.wat | 48 ++++++++----------- 5 files changed, 31 insertions(+), 49 deletions(-) diff --git a/package-lock.json b/package-lock.json index 394cdfca83..fa00fe4989 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "102.0.0-nightly.20211019", + "binaryen": "102.0.0-nightly.20211020", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" @@ -734,9 +734,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "102.0.0-nightly.20211019", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211019.tgz", - "integrity": "sha512-0YL2ehjqj8tdYJY0hTAdrlGBtAHIQcPpvawsXLzT6tJk5iJFLL7fNnSmM+jP5sGsdEEcSjtuLepqiPgCT5/NWA==", + "version": "102.0.0-nightly.20211020", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211020.tgz", + "integrity": "sha512-AjCNjVskWoXlQYW8dWDsLcCiUY/Z14cso/nGkuYiRWgmAVF12vF1gJ80dnXcy/3NZsXAQnLB9rmdcFhW+IsrQQ==", "bin": { "wasm-opt": "bin/wasm-opt" } @@ -3509,9 +3509,9 @@ "dev": true }, "binaryen": { - "version": "102.0.0-nightly.20211019", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211019.tgz", - "integrity": "sha512-0YL2ehjqj8tdYJY0hTAdrlGBtAHIQcPpvawsXLzT6tJk5iJFLL7fNnSmM+jP5sGsdEEcSjtuLepqiPgCT5/NWA==" + "version": "102.0.0-nightly.20211020", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211020.tgz", + "integrity": "sha512-AjCNjVskWoXlQYW8dWDsLcCiUY/Z14cso/nGkuYiRWgmAVF12vF1gJ80dnXcy/3NZsXAQnLB9rmdcFhW+IsrQQ==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 12567a8145..23e608a11f 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "url": "https://github.com/AssemblyScript/assemblyscript/issues" }, "dependencies": { - "binaryen": "102.0.0-nightly.20211019", + "binaryen": "102.0.0-nightly.20211020", "long": "^4.0.0", "source-map-support": "^0.5.19", "ts-node": "^6.2.0" diff --git a/tests/compiler/features/gc.optimized.wat b/tests/compiler/features/gc.optimized.wat index 48a9444574..c8b639951c 100644 --- a/tests/compiler/features/gc.optimized.wat +++ b/tests/compiler/features/gc.optimized.wat @@ -1,17 +1,11 @@ (module (type $none_=>_none (func)) - (global $~started (mut i32) (i32.const 0)) (memory $0 1) (data (i32.const 1036) ",") (data (i32.const 1048) "\01\00\00\00\1c\00\00\00f\00e\00a\00t\00u\00r\00e\00s\00/\00g\00c\00.\00t\00s") (export "memory" (memory $0)) (export "_start" (func $~start)) (func $~start - global.get $~started - if - return - end - i32.const 1 - global.set $~started + nop ) ) diff --git a/tests/compiler/features/nontrapping-f2i.optimized.wat b/tests/compiler/features/nontrapping-f2i.optimized.wat index 35c5fd1474..75a2479112 100644 --- a/tests/compiler/features/nontrapping-f2i.optimized.wat +++ b/tests/compiler/features/nontrapping-f2i.optimized.wat @@ -1,15 +1,9 @@ (module (type $none_=>_none (func)) - (global $~started (mut i32) (i32.const 0)) (memory $0 0) (export "memory" (memory $0)) (export "_start" (func $~start)) (func $~start - global.get $~started - if - return - end - i32.const 1 - global.set $~started + nop ) ) diff --git a/tests/compiler/resolve-binary.optimized.wat b/tests/compiler/resolve-binary.optimized.wat index 16997f0a32..61adda517f 100644 --- a/tests/compiler/resolve-binary.optimized.wat +++ b/tests/compiler/resolve-binary.optimized.wat @@ -3404,8 +3404,6 @@ (func $~lib/util/number/prettify (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) local.get $1 i32.eqz if @@ -3424,17 +3422,17 @@ local.get $0 local.get $1 i32.add - local.tee $3 + local.tee $2 i32.const 21 i32.le_s local.get $0 - local.get $3 + local.get $2 i32.le_s i32.and if (result i32) loop $for-loop|0 local.get $0 - local.get $3 + local.get $2 i32.lt_s if local.get $0 @@ -3451,26 +3449,26 @@ br $for-loop|0 end end - local.get $3 + local.get $2 i32.const 1 i32.shl i32.const 9760 i32.add i32.const 3145774 i32.store - local.get $3 + local.get $2 i32.const 2 i32.add else - local.get $3 + local.get $2 i32.const 21 i32.le_s - local.get $3 + local.get $2 i32.const 0 i32.gt_s i32.and if (result i32) - local.get $3 + local.get $2 i32.const 1 i32.shl i32.const 9760 @@ -3492,16 +3490,16 @@ i32.const 1 i32.add else - local.get $3 + local.get $2 i32.const 0 i32.le_s - local.get $3 + local.get $2 i32.const -6 i32.gt_s i32.and if (result i32) i32.const 2 - local.get $3 + local.get $2 i32.sub local.tee $2 i32.const 1 @@ -3548,7 +3546,8 @@ i32.const 9762 i32.const 101 i32.store16 - local.get $3 + i32.const 9764 + local.get $2 i32.const 1 i32.sub local.tee $0 @@ -3562,6 +3561,7 @@ local.set $0 end local.get $0 + local.get $0 i32.const 100000 i32.lt_u if (result i32) @@ -3607,10 +3607,6 @@ i32.add end end - local.set $2 - i32.const 9764 - local.get $0 - local.get $2 i32.const 1 i32.add local.tee $0 @@ -3640,19 +3636,19 @@ local.get $1 i32.const 9760 i32.add - local.tee $4 + local.tee $3 i32.const 101 i32.store16 offset=2 - local.get $4 + local.get $3 i32.const 4 i32.add - local.get $3 + local.get $2 i32.const 1 i32.sub local.tee $1 i32.const 0 i32.lt_s - local.tee $5 + local.tee $2 if i32.const 0 local.get $1 @@ -3660,6 +3656,7 @@ local.set $1 end local.get $1 + local.get $1 i32.const 100000 i32.lt_u if (result i32) @@ -3705,17 +3702,14 @@ i32.add end end - local.set $3 - local.get $1 - local.get $3 i32.const 1 i32.add local.tee $1 call $~lib/util/number/utoa32_dec_lut - local.get $4 + local.get $3 i32.const 45 i32.const 43 - local.get $5 + local.get $2 select i32.store16 offset=4 local.get $0 From 0ac8a4fe10f8a5c9d348856571919fde7e5f122a Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Wed, 20 Oct 2021 11:19:34 +0300 Subject: [PATCH 39/54] update webpack and other deps --- package-lock.json | 1226 ++++++++++++++++++++++++--------------------- package.json | 21 +- 2 files changed, 657 insertions(+), 590 deletions(-) diff --git a/package-lock.json b/package-lock.json index fa00fe4989..c728282d64 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,7 +11,7 @@ "dependencies": { "binaryen": "102.0.0-nightly.20211020", "long": "^4.0.0", - "source-map-support": "^0.5.19", + "source-map-support": "^0.5.20", "ts-node": "^6.2.0" }, "bin": { @@ -19,19 +19,18 @@ "asinit": "bin/asinit" }, "devDependencies": { - "@types/node": "^15.6.1", - "@typescript-eslint/eslint-plugin": "^4.9.1", - "@typescript-eslint/parser": "^4.9.1", + "@types/node": "^16.11.1", + "@typescript-eslint/eslint-plugin": "^4.33.0", + "@typescript-eslint/parser": "^4.33.0", "diff": "^5.0.0", - "eslint": "^7.15.0", - "glob": "^7.1.6", + "eslint": "^7.32.0", + "glob": "^7.2.0", "physical-cpu-count": "^2.0.0", - "source-map-support": "^0.5.19", - "ts-loader": "^9.2.2", + "ts-loader": "^9.2.6", "ts-node": "^6.2.0", - "typescript": "~4.2.4", - "webpack": "^5.10.0", - "webpack-cli": "^4.2.0" + "typescript": "^4.4.4", + "webpack": "^5.59.0", + "webpack-cli": "^4.9.1" }, "funding": { "type": "opencollective", @@ -145,15 +144,15 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.1.tgz", - "integrity": "sha512-5v7TDE9plVhvxQeWLXDTvFvJBdH6pEsdnl2g/dAptmuFEPedQ4Erq5rsDsX+mvAM610IhNaO2W5V1dOOnDKxkQ==", + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", + "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", "dev": true, "dependencies": { "ajv": "^6.12.4", "debug": "^4.1.1", "espree": "^7.3.0", - "globals": "^12.1.0", + "globals": "^13.9.0", "ignore": "^4.0.6", "import-fresh": "^3.2.1", "js-yaml": "^3.13.1", @@ -164,37 +163,33 @@ "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "node_modules/@humanwhocodes/config-array": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", + "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", "dev": true, "dependencies": { - "type-fest": "^0.8.1" + "@humanwhocodes/object-schema": "^1.2.0", + "debug": "^4.1.1", + "minimatch": "^3.0.4" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=10.10.0" } }, - "node_modules/@eslint/eslintrc/node_modules/type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true, - "engines": { - "node": ">=8" - } + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz", + "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==", + "dev": true }, "node_modules/@nodelib/fs.scandir": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.4.tgz", - "integrity": "sha512-33g3pMJk3bg5nXbL/+CY6I2eJDzZAni49PfJnL5fghPTggPvBd/pFNSgJsdAgWptuFu7qq/ERvOYFlhvsLTCKA==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", "dev": true, "dependencies": { - "@nodelib/fs.stat": "2.0.4", + "@nodelib/fs.stat": "2.0.5", "run-parallel": "^1.1.9" }, "engines": { @@ -202,21 +197,21 @@ } }, "node_modules/@nodelib/fs.stat": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.4.tgz", - "integrity": "sha512-IYlHJA0clt2+Vg7bccq+TzRdJvv19c2INqBSsoOLp1je7xjtr7J26+WXR72MCdvU9q1qTzIWDfhMf+DRvQJK4Q==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", "dev": true, "engines": { "node": ">= 8" } }, "node_modules/@nodelib/fs.walk": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.6.tgz", - "integrity": "sha512-8Broas6vTtW4GIXTAHDoE32hnN2M5ykgCpWGbuXHQ15vEMqr23pB76e/GZcYsZCHALv50ktd24qhEyKr6wBtow==", + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", "dev": true, "dependencies": { - "@nodelib/fs.scandir": "2.1.4", + "@nodelib/fs.scandir": "2.1.5", "fastq": "^1.6.0" }, "engines": { @@ -244,37 +239,37 @@ } }, "node_modules/@types/estree": { - "version": "0.0.47", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.47.tgz", - "integrity": "sha512-c5ciR06jK8u9BstrmJyO97m+klJrrhCf9u3rLu3DEAJBirxRqSCvDQoYKmxuYwQI5SZChAWu+tq9oVlGRuzPAg==", + "version": "0.0.50", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.50.tgz", + "integrity": "sha512-C6N5s2ZFtuZRj54k2/zyRhNDjJwwcViAM3Nbm8zjBpbqAdZ00mr0CFxvSKeO8Y/e03WVFLpQMdHYVfUd6SB+Hw==", "dev": true }, "node_modules/@types/json-schema": { - "version": "7.0.7", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.7.tgz", - "integrity": "sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA==", + "version": "7.0.9", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.9.tgz", + "integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==", "dev": true }, "node_modules/@types/node": { - "version": "15.6.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-15.6.1.tgz", - "integrity": "sha512-7EIraBEyRHEe7CH+Fm1XvgqU6uwZN8Q7jppJGcqjROMT29qhAuuOxYB1uEY5UMYQKEmA5D+5tBnhdaPXSsLONA==", + "version": "16.11.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.1.tgz", + "integrity": "sha512-PYGcJHL9mwl1Ek3PLiYgyEKtwTMmkMw4vbiyz/ps3pfdRYLVv+SN7qHVAImrjdAXxgluDEw6Ph4lyv+m9UpRmA==", "dev": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.25.0.tgz", - "integrity": "sha512-Qfs3dWkTMKkKwt78xp2O/KZQB8MPS1UQ5D3YW2s6LQWBE1074BE+Rym+b1pXZIX3M3fSvPUDaCvZLKV2ylVYYQ==", + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.33.0.tgz", + "integrity": "sha512-aINiAxGVdOl1eJyVjaWn/YcVAq4Gi/Yo35qHGCnqbWVz61g39D0h23veY/MA0rFFGfxK7TySg2uwDeNv+JgVpg==", "dev": true, "dependencies": { - "@typescript-eslint/experimental-utils": "4.25.0", - "@typescript-eslint/scope-manager": "4.25.0", - "debug": "^4.1.1", + "@typescript-eslint/experimental-utils": "4.33.0", + "@typescript-eslint/scope-manager": "4.33.0", + "debug": "^4.3.1", "functional-red-black-tree": "^1.0.1", - "lodash": "^4.17.15", - "regexpp": "^3.0.0", - "semver": "^7.3.2", - "tsutils": "^3.17.1" + "ignore": "^5.1.8", + "regexpp": "^3.1.0", + "semver": "^7.3.5", + "tsutils": "^3.21.0" }, "engines": { "node": "^10.12.0 || >=12.0.0" @@ -293,18 +288,27 @@ } } }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, "node_modules/@typescript-eslint/experimental-utils": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.25.0.tgz", - "integrity": "sha512-f0doRE76vq7NEEU0tw+ajv6CrmPelw5wLoaghEHkA2dNLFb3T/zJQqGPQ0OYt5XlZaS13MtnN+GTPCuUVg338w==", + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.33.0.tgz", + "integrity": "sha512-zeQjOoES5JFjTnAhI5QY7ZviczMzDptls15GFsI6jyUOq0kOf9+WonkhtlIhh0RgHRnqj5gdNxW5j1EvAyYg6Q==", "dev": true, "dependencies": { - "@types/json-schema": "^7.0.3", - "@typescript-eslint/scope-manager": "4.25.0", - "@typescript-eslint/types": "4.25.0", - "@typescript-eslint/typescript-estree": "4.25.0", - "eslint-scope": "^5.0.0", - "eslint-utils": "^2.0.0" + "@types/json-schema": "^7.0.7", + "@typescript-eslint/scope-manager": "4.33.0", + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/typescript-estree": "4.33.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0" }, "engines": { "node": "^10.12.0 || >=12.0.0" @@ -317,16 +321,34 @@ "eslint": "*" } }, + "node_modules/@typescript-eslint/experimental-utils/node_modules/eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=5" + } + }, "node_modules/@typescript-eslint/parser": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.25.0.tgz", - "integrity": "sha512-OZFa1SKyEJpAhDx8FcbWyX+vLwh7OEtzoo2iQaeWwxucyfbi0mT4DijbOSsTgPKzGHr6GrF2V5p/CEpUH/VBxg==", + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.33.0.tgz", + "integrity": "sha512-ZohdsbXadjGBSK0/r+d87X0SBmKzOq4/S5nzK6SBgJspFo9/CUDJ7hjayuze+JK7CZQLDMroqytp7pOcFKTxZA==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "4.25.0", - "@typescript-eslint/types": "4.25.0", - "@typescript-eslint/typescript-estree": "4.25.0", - "debug": "^4.1.1" + "@typescript-eslint/scope-manager": "4.33.0", + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/typescript-estree": "4.33.0", + "debug": "^4.3.1" }, "engines": { "node": "^10.12.0 || >=12.0.0" @@ -345,13 +367,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.25.0.tgz", - "integrity": "sha512-2NElKxMb/0rya+NJG1U71BuNnp1TBd1JgzYsldsdA83h/20Tvnf/HrwhiSlNmuq6Vqa0EzidsvkTArwoq+tH6w==", + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.33.0.tgz", + "integrity": "sha512-5IfJHpgTsTZuONKbODctL4kKuQje/bzBRkwHE8UOZ4f89Zeddg+EGZs8PD8NcN4LdM3ygHWYB3ukPAYjvl/qbQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "4.25.0", - "@typescript-eslint/visitor-keys": "4.25.0" + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/visitor-keys": "4.33.0" }, "engines": { "node": "^8.10.0 || ^10.13.0 || >=11.10.1" @@ -362,9 +384,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.25.0.tgz", - "integrity": "sha512-+CNINNvl00OkW6wEsi32wU5MhHti2J25TJsJJqgQmJu3B3dYDBcmOxcE5w9cgoM13TrdE/5ND2HoEnBohasxRQ==", + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.33.0.tgz", + "integrity": "sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ==", "dev": true, "engines": { "node": "^8.10.0 || ^10.13.0 || >=11.10.1" @@ -375,18 +397,18 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.25.0.tgz", - "integrity": "sha512-1B8U07TGNAFMxZbSpF6jqiDs1cVGO0izVkf18Q/SPcUAc9LhHxzvSowXDTvkHMWUVuPpagupaW63gB6ahTXVlg==", + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.33.0.tgz", + "integrity": "sha512-rkWRY1MPFzjwnEVHsxGemDzqqddw2QbTJlICPD9p9I9LfsO8fdmfQPOX3uKfUaGRDFJbfrtm/sXhVXN4E+bzCA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "4.25.0", - "@typescript-eslint/visitor-keys": "4.25.0", - "debug": "^4.1.1", - "globby": "^11.0.1", + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/visitor-keys": "4.33.0", + "debug": "^4.3.1", + "globby": "^11.0.3", "is-glob": "^4.0.1", - "semver": "^7.3.2", - "tsutils": "^3.17.1" + "semver": "^7.3.5", + "tsutils": "^3.21.0" }, "engines": { "node": "^10.12.0 || >=12.0.0" @@ -402,12 +424,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.25.0.tgz", - "integrity": "sha512-AmkqV9dDJVKP/TcZrbf6s6i1zYXt5Hl8qOLrRDTFfRNae4+LB8A4N3i+FLZPW85zIxRy39BgeWOfMS3HoH5ngg==", + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.33.0.tgz", + "integrity": "sha512-uqi/2aSz9g2ftcHWf8uLPJA70rUv6yuMW5Bohw+bwcuzaxQIHaKFZCKGoGXIrc9vkTJ3+0txM73K0Hq3d5wgIg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "4.25.0", + "@typescript-eslint/types": "4.33.0", "eslint-visitor-keys": "^2.0.0" }, "engines": { @@ -419,155 +441,155 @@ } }, "node_modules/@webassemblyjs/ast": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.0.tgz", - "integrity": "sha512-kX2W49LWsbthrmIRMbQZuQDhGtjyqXfEmmHyEi4XWnSZtPmxY0+3anPIzsnRb45VH/J55zlOfWvZuY47aJZTJg==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", + "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", "dev": true, "dependencies": { - "@webassemblyjs/helper-numbers": "1.11.0", - "@webassemblyjs/helper-wasm-bytecode": "1.11.0" + "@webassemblyjs/helper-numbers": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1" } }, "node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.0.tgz", - "integrity": "sha512-Q/aVYs/VnPDVYvsCBL/gSgwmfjeCb4LW8+TMrO3cSzJImgv8lxxEPM2JA5jMrivE7LSz3V+PFqtMbls3m1exDA==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", + "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", "dev": true }, "node_modules/@webassemblyjs/helper-api-error": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.0.tgz", - "integrity": "sha512-baT/va95eXiXb2QflSx95QGT5ClzWpGaa8L7JnJbgzoYeaA27FCvuBXU758l+KXWRndEmUXjP0Q5fibhavIn8w==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", + "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", "dev": true }, "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.0.tgz", - "integrity": "sha512-u9HPBEl4DS+vA8qLQdEQ6N/eJQ7gT7aNvMIo8AAWvAl/xMrcOSiI2M0MAnMCy3jIFke7bEee/JwdX1nUpCtdyA==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", + "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", "dev": true }, "node_modules/@webassemblyjs/helper-numbers": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.0.tgz", - "integrity": "sha512-DhRQKelIj01s5IgdsOJMKLppI+4zpmcMQ3XboFPLwCpSNH6Hqo1ritgHgD0nqHeSYqofA6aBN/NmXuGjM1jEfQ==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", + "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", "dev": true, "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.11.0", - "@webassemblyjs/helper-api-error": "1.11.0", + "@webassemblyjs/floating-point-hex-parser": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", "@xtuc/long": "4.2.2" } }, "node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.0.tgz", - "integrity": "sha512-MbmhvxXExm542tWREgSFnOVo07fDpsBJg3sIl6fSp9xuu75eGz5lz31q7wTLffwL3Za7XNRCMZy210+tnsUSEA==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", + "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", "dev": true }, "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.0.tgz", - "integrity": "sha512-3Eb88hcbfY/FCukrg6i3EH8H2UsD7x8Vy47iVJrP967A9JGqgBVL9aH71SETPx1JrGsOUVLo0c7vMCN22ytJew==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", + "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", "dev": true, "dependencies": { - "@webassemblyjs/ast": "1.11.0", - "@webassemblyjs/helper-buffer": "1.11.0", - "@webassemblyjs/helper-wasm-bytecode": "1.11.0", - "@webassemblyjs/wasm-gen": "1.11.0" + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1" } }, "node_modules/@webassemblyjs/ieee754": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.0.tgz", - "integrity": "sha512-KXzOqpcYQwAfeQ6WbF6HXo+0udBNmw0iXDmEK5sFlmQdmND+tr773Ti8/5T/M6Tl/413ArSJErATd8In3B+WBA==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", + "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", "dev": true, "dependencies": { "@xtuc/ieee754": "^1.2.0" } }, "node_modules/@webassemblyjs/leb128": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.0.tgz", - "integrity": "sha512-aqbsHa1mSQAbeeNcl38un6qVY++hh8OpCOzxhixSYgbRfNWcxJNJQwe2rezK9XEcssJbbWIkblaJRwGMS9zp+g==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", + "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", "dev": true, "dependencies": { "@xtuc/long": "4.2.2" } }, "node_modules/@webassemblyjs/utf8": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.0.tgz", - "integrity": "sha512-A/lclGxH6SpSLSyFowMzO/+aDEPU4hvEiooCMXQPcQFPPJaYcPQNKGOCLUySJsYJ4trbpr+Fs08n4jelkVTGVw==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", + "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", "dev": true }, "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.0.tgz", - "integrity": "sha512-JHQ0damXy0G6J9ucyKVXO2j08JVJ2ntkdJlq1UTiUrIgfGMmA7Ik5VdC/L8hBK46kVJgujkBIoMtT8yVr+yVOQ==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", + "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", "dev": true, "dependencies": { - "@webassemblyjs/ast": "1.11.0", - "@webassemblyjs/helper-buffer": "1.11.0", - "@webassemblyjs/helper-wasm-bytecode": "1.11.0", - "@webassemblyjs/helper-wasm-section": "1.11.0", - "@webassemblyjs/wasm-gen": "1.11.0", - "@webassemblyjs/wasm-opt": "1.11.0", - "@webassemblyjs/wasm-parser": "1.11.0", - "@webassemblyjs/wast-printer": "1.11.0" + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/helper-wasm-section": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-opt": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "@webassemblyjs/wast-printer": "1.11.1" } }, "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.0.tgz", - "integrity": "sha512-BEUv1aj0WptCZ9kIS30th5ILASUnAPEvE3tVMTrItnZRT9tXCLW2LEXT8ezLw59rqPP9klh9LPmpU+WmRQmCPQ==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", + "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", "dev": true, "dependencies": { - "@webassemblyjs/ast": "1.11.0", - "@webassemblyjs/helper-wasm-bytecode": "1.11.0", - "@webassemblyjs/ieee754": "1.11.0", - "@webassemblyjs/leb128": "1.11.0", - "@webassemblyjs/utf8": "1.11.0" + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" } }, "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.0.tgz", - "integrity": "sha512-tHUSP5F4ywyh3hZ0+fDQuWxKx3mJiPeFufg+9gwTpYp324mPCQgnuVKwzLTZVqj0duRDovnPaZqDwoyhIO8kYg==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", + "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", "dev": true, "dependencies": { - "@webassemblyjs/ast": "1.11.0", - "@webassemblyjs/helper-buffer": "1.11.0", - "@webassemblyjs/wasm-gen": "1.11.0", - "@webassemblyjs/wasm-parser": "1.11.0" + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1" } }, "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.0.tgz", - "integrity": "sha512-6L285Sgu9gphrcpDXINvm0M9BskznnzJTE7gYkjDbxET28shDqp27wpruyx3C2S/dvEwiigBwLA1cz7lNUi0kw==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", + "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", "dev": true, "dependencies": { - "@webassemblyjs/ast": "1.11.0", - "@webassemblyjs/helper-api-error": "1.11.0", - "@webassemblyjs/helper-wasm-bytecode": "1.11.0", - "@webassemblyjs/ieee754": "1.11.0", - "@webassemblyjs/leb128": "1.11.0", - "@webassemblyjs/utf8": "1.11.0" + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" } }, "node_modules/@webassemblyjs/wast-printer": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.0.tgz", - "integrity": "sha512-Fg5OX46pRdTgB7rKIUojkh9vXaVN6sGYCnEiJN1GYkb0RPwShZXp6KTDqmoMdQPKhcroOXh3fEzmkWmCYaKYhQ==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", + "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", "dev": true, "dependencies": { - "@webassemblyjs/ast": "1.11.0", + "@webassemblyjs/ast": "1.11.1", "@xtuc/long": "4.2.2" } }, "node_modules/@webpack-cli/configtest": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.0.3.tgz", - "integrity": "sha512-WQs0ep98FXX2XBAfQpRbY0Ma6ADw8JR6xoIkaIiJIzClGOMqVRvPCWqndTxf28DgFopWan0EKtHtg/5W1h0Zkw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.1.0.tgz", + "integrity": "sha512-ttOkEkoalEHa7RaFYpM0ErK1xc4twg3Am9hfHhL7MVqlHebnkYd2wuI/ZqTDj0cVzZho6PdinY0phFZV3O0Mzg==", "dev": true, "peerDependencies": { "webpack": "4.x.x || 5.x.x", @@ -575,9 +597,9 @@ } }, "node_modules/@webpack-cli/info": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.2.4.tgz", - "integrity": "sha512-ogE2T4+pLhTTPS/8MM3IjHn0IYplKM4HbVNMCWA9N4NrdPzunwenpCsqKEXyejMfRu6K8mhauIPYf8ZxWG5O6g==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.4.0.tgz", + "integrity": "sha512-F6b+Man0rwE4n0409FyAJHStYA5OIZERxmnUfLVwv0mc0V1wLad3V7jqRlMkgKBeAq07jUvglacNaa6g9lOpuw==", "dev": true, "dependencies": { "envinfo": "^7.7.3" @@ -587,9 +609,9 @@ } }, "node_modules/@webpack-cli/serve": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.4.0.tgz", - "integrity": "sha512-xgT/HqJ+uLWGX+Mzufusl3cgjAcnqYYskaB7o0vRcwOEfuu6hMzSILQpnIzFMGsTaeaX4Nnekl+6fadLbl1/Vg==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.6.0.tgz", + "integrity": "sha512-ZkVeqEmRpBV2GHvjjUZqEai2PpUbuq8Bqd//vEYsp63J8WyexI8ppCqVS3Zs0QADf6aWuPdU+0XsPI647PVlQA==", "dev": true, "peerDependencies": { "webpack-cli": "4.x.x" @@ -625,9 +647,9 @@ } }, "node_modules/acorn-jsx": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", - "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", "dev": true, "peerDependencies": { "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" @@ -789,8 +811,7 @@ "node_modules/buffer-from": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" }, "node_modules/callsites": { "version": "3.1.0", @@ -969,9 +990,9 @@ "dev": true }, "node_modules/enhanced-resolve": { - "version": "5.8.2", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.8.2.tgz", - "integrity": "sha512-F27oB3WuHDzvR2DOGNTaYy0D5o0cnrv8TeI482VM4kYgQd/FT9lUQwuNsJ0oOHtBUq7eiW5ytqzp7nBFknL+GA==", + "version": "5.8.3", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.8.3.tgz", + "integrity": "sha512-EGAbGvH7j7Xt2nc0E7D99La1OiEs8LnyimkRgwExpUMScN6O+3x9tIWs7PLQZVNx4YD+00skHXPXi1yQHpAmZA==", "dev": true, "dependencies": { "graceful-fs": "^4.2.4", @@ -1006,9 +1027,9 @@ } }, "node_modules/es-module-lexer": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.4.1.tgz", - "integrity": "sha512-ooYciCUtfw6/d2w56UVeqHPcoCFAiJdz5XOkYpv/Txl1HMUozpXjz/2RIQgqwKdXNDPSF1W7mJCFse3G+HDyAA==", + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", + "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", "dev": true }, "node_modules/escalade": { @@ -1033,13 +1054,14 @@ } }, "node_modules/eslint": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.27.0.tgz", - "integrity": "sha512-JZuR6La2ZF0UD384lcbnd0Cgg6QJjiCwhMD6eU4h/VGPcVGwawNNzKU41tgokGXnfjOOyI6QIffthhJTPzzuRA==", + "version": "7.32.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", + "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", "dev": true, "dependencies": { "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.1", + "@eslint/eslintrc": "^0.4.3", + "@humanwhocodes/config-array": "^0.5.0", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -1056,7 +1078,7 @@ "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.0.0", + "glob-parent": "^5.1.2", "globals": "^13.6.0", "ignore": "^4.0.6", "import-fresh": "^3.0.0", @@ -1269,17 +1291,16 @@ "dev": true }, "node_modules/fast-glob": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.5.tgz", - "integrity": "sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz", + "integrity": "sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==", "dev": true, "dependencies": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.0", + "glob-parent": "^5.1.2", "merge2": "^1.3.0", - "micromatch": "^4.0.2", - "picomatch": "^2.2.1" + "micromatch": "^4.0.4" }, "engines": { "node": ">=8" @@ -1304,9 +1325,9 @@ "dev": true }, "node_modules/fastq": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.11.0.tgz", - "integrity": "sha512-7Eczs8gIPDrVzT+EksYBcupqMyxSHXXrHOLRRxU2/DicV8789MRBRR8+Hc2uWzUupOs4YS4JzBmBxjjCVBxD/g==", + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", + "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", "dev": true, "dependencies": { "reusify": "^1.0.4" @@ -1399,9 +1420,9 @@ } }, "node_modules/glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", "dev": true, "dependencies": { "fs.realpath": "^1.0.0", @@ -1452,9 +1473,9 @@ } }, "node_modules/globby": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.3.tgz", - "integrity": "sha512-ffdmosjA807y7+lA1NM0jELARVmYul/715xiILEjo3hBLPTcirgQNnXECn5g3mtR8TOLCVbkfua1Hpen25/Xcg==", + "version": "11.0.4", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.4.tgz", + "integrity": "sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg==", "dev": true, "dependencies": { "array-union": "^2.1.0", @@ -1679,19 +1700,34 @@ } }, "node_modules/jest-worker": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", - "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", + "version": "27.3.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.3.1.tgz", + "integrity": "sha512-ks3WCzsiZaOPJl/oMsDjaf0TRiSv7ctNgs0FqRr2nARsovz6AWWy4oLElwcquGSz692DzgZQrCLScPNs5YlC4g==", "dev": true, "dependencies": { "@types/node": "*", "merge-stream": "^2.0.0", - "supports-color": "^7.0.0" + "supports-color": "^8.0.0" }, "engines": { "node": ">= 10.13.0" } }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -1772,12 +1808,6 @@ "node": ">=8" } }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, "node_modules/lodash.clonedeep": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", @@ -2320,12 +2350,12 @@ ] }, "node_modules/schema-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz", - "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", "dev": true, "dependencies": { - "@types/json-schema": "^7.0.6", + "@types/json-schema": "^7.0.8", "ajv": "^6.12.5", "ajv-keywords": "^3.5.2" }, @@ -2353,9 +2383,9 @@ } }, "node_modules/serialize-javascript": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz", - "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", + "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", "dev": true, "dependencies": { "randombytes": "^2.1.0" @@ -2426,26 +2456,18 @@ "url": "https://github.com/chalk/slice-ansi?sponsor=1" } }, - "node_modules/source-list-map": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", - "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", - "dev": true - }, "node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/source-map-support": { - "version": "0.5.19", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", - "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", - "dev": true, + "version": "0.5.20", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.20.tgz", + "integrity": "sha512-n1lZZ8Ve4ksRqizaBQgxXDgKwttHDhyfQjA6YZZn8+AroHbsIz+JjwxQDxbp+7y5OYCI8t1Yk7etjD9CRd2hIw==", "dependencies": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" @@ -2565,14 +2587,14 @@ } }, "node_modules/terser": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.7.0.tgz", - "integrity": "sha512-HP5/9hp2UaZt5fYkuhNBR8YyRcT8juw8+uFbAme53iN9hblvKnLUTKkmwJG6ocWpIKf8UK4DoeWG4ty0J6S6/g==", + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.9.0.tgz", + "integrity": "sha512-h5hxa23sCdpzcye/7b8YqbE5OwKca/ni0RQz1uRX3tGh8haaGHqcuSqbGRybuAKNdntZ0mDgFNXPJ48xQ2RXKQ==", "dev": true, "dependencies": { "commander": "^2.20.0", "source-map": "~0.7.2", - "source-map-support": "~0.5.19" + "source-map-support": "~0.5.20" }, "bin": { "terser": "bin/terser" @@ -2582,17 +2604,17 @@ } }, "node_modules/terser-webpack-plugin": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.1.2.tgz", - "integrity": "sha512-6QhDaAiVHIQr5Ab3XUWZyDmrIPCHMiqJVljMF91YKyqwKkL5QHnYMkrMBy96v9Z7ev1hGhSEw1HQZc2p/s5Z8Q==", + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.2.4.tgz", + "integrity": "sha512-E2CkNMN+1cho04YpdANyRrn8CyN4yMy+WdFKZIySFZrGXZxJwJP6PMNGGc/Mcr6qygQHUUqRxnAPmi0M9f00XA==", "dev": true, "dependencies": { - "jest-worker": "^26.6.2", + "jest-worker": "^27.0.6", "p-limit": "^3.1.0", - "schema-utils": "^3.0.0", - "serialize-javascript": "^5.0.1", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.0", "source-map": "^0.6.1", - "terser": "^5.7.0" + "terser": "^5.7.2" }, "engines": { "node": ">= 10.13.0" @@ -2603,6 +2625,17 @@ }, "peerDependencies": { "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } } }, "node_modules/terser/node_modules/source-map": { @@ -2633,9 +2666,9 @@ } }, "node_modules/ts-loader": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.2.2.tgz", - "integrity": "sha512-hNIhGTQHtNKjOzR2ZtQ2OSVbXPykOae+zostf1IlHCf61Mt41GMJurKNqrYUbzHgpmj6UWRu8eBfb7q0XliV0g==", + "version": "9.2.6", + "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.2.6.tgz", + "integrity": "sha512-QMTC4UFzHmu9wU2VHZEmWWE9cUajjfcdcws+Gh7FhiO+Dy0RnR1bNz0YCHqhI0yRowCE9arVnNxYHqELOy9Hjw==", "dev": true, "dependencies": { "chalk": "^4.1.0", @@ -2728,9 +2761,9 @@ } }, "node_modules/typescript": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.2.4.tgz", - "integrity": "sha512-V+evlYHZnQkaz8TRBuxTA92yZBPotr5H+WhQ7bD3hZUndx5tGOa1fuCgeSjxAzM1RiN5IzvadIXTVefuuwZCRg==", + "version": "4.4.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.4.4.tgz", + "integrity": "sha512-DqGhF5IKoBl8WNf8C1gu8q0xZSInh9j1kJJMqT3a94w1JzVaBU4EXOSMrz9yDqMT0xt3selp83fuFMQ0uzv6qA==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -2769,22 +2802,23 @@ } }, "node_modules/webpack": { - "version": "5.37.1", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.37.1.tgz", - "integrity": "sha512-btZjGy/hSjCAAVHw+cKG+L0M+rstlyxbO2C+BOTaQ5/XAnxkDrP5sVbqWhXgo4pL3X2dcOib6rqCP20Zr9PLow==", + "version": "5.59.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.59.0.tgz", + "integrity": "sha512-2HiFHKnWIb/cBfOfgssQn8XIRvntISXiz//F1q1+hKMs+uzC1zlVCJZEP7XqI1wzrDyc/ZdB4G+MYtz5biJxCA==", "dev": true, "dependencies": { "@types/eslint-scope": "^3.7.0", - "@types/estree": "^0.0.47", - "@webassemblyjs/ast": "1.11.0", - "@webassemblyjs/wasm-edit": "1.11.0", - "@webassemblyjs/wasm-parser": "1.11.0", - "acorn": "^8.2.1", + "@types/estree": "^0.0.50", + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/wasm-edit": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "acorn": "^8.4.1", + "acorn-import-assertions": "^1.7.6", "browserslist": "^4.14.5", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.8.0", - "es-module-lexer": "^0.4.0", - "eslint-scope": "^5.1.1", + "enhanced-resolve": "^5.8.3", + "es-module-lexer": "^0.9.0", + "eslint-scope": "5.1.1", "events": "^3.2.0", "glob-to-regexp": "^0.4.1", "graceful-fs": "^4.2.4", @@ -2792,11 +2826,11 @@ "loader-runner": "^4.2.0", "mime-types": "^2.1.27", "neo-async": "^2.6.2", - "schema-utils": "^3.0.0", + "schema-utils": "^3.1.0", "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.1.1", - "watchpack": "^2.0.0", - "webpack-sources": "^2.1.1" + "terser-webpack-plugin": "^5.1.3", + "watchpack": "^2.2.0", + "webpack-sources": "^3.2.0" }, "bin": { "webpack": "bin/webpack.js" @@ -2815,23 +2849,22 @@ } }, "node_modules/webpack-cli": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.7.0.tgz", - "integrity": "sha512-7bKr9182/sGfjFm+xdZSwgQuFjgEcy0iCTIBxRUeteJ2Kr8/Wz0qNJX+jw60LU36jApt4nmMkep6+W5AKhok6g==", + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.9.1.tgz", + "integrity": "sha512-JYRFVuyFpzDxMDB+v/nanUdQYcZtqFPGzmlW4s+UkPMFhSpfRNmf1z4AwYcHJVdvEFAM7FFCQdNTpsBYhDLusQ==", "dev": true, "dependencies": { "@discoveryjs/json-ext": "^0.5.0", - "@webpack-cli/configtest": "^1.0.3", - "@webpack-cli/info": "^1.2.4", - "@webpack-cli/serve": "^1.4.0", - "colorette": "^1.2.1", + "@webpack-cli/configtest": "^1.1.0", + "@webpack-cli/info": "^1.4.0", + "@webpack-cli/serve": "^1.6.0", + "colorette": "^2.0.14", "commander": "^7.0.0", "execa": "^5.0.0", "fastest-levenshtein": "^1.0.12", "import-local": "^3.0.2", "interpret": "^2.2.0", "rechoir": "^0.7.0", - "v8-compile-cache": "^2.2.0", "webpack-merge": "^5.7.3" }, "bin": { @@ -2858,6 +2891,12 @@ } } }, + "node_modules/webpack-cli/node_modules/colorette": { + "version": "2.0.16", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.16.tgz", + "integrity": "sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g==", + "dev": true + }, "node_modules/webpack-cli/node_modules/commander": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", @@ -2881,22 +2920,18 @@ } }, "node_modules/webpack-sources": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-2.2.0.tgz", - "integrity": "sha512-bQsA24JLwcnWGArOKUxYKhX3Mz/nK1Xf6hxullKERyktjNMC4x8koOeaDNTA2fEJ09BdWLbM/iTW0ithREUP0w==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.1.tgz", + "integrity": "sha512-t6BMVLQ0AkjBOoRTZgqrWm7xbXMBzD+XDq2EZ96+vMfn3qKgsvdXZhbPZ4ElUOpdv4u+iiGe+w3+J75iy/bYGA==", "dev": true, - "dependencies": { - "source-list-map": "^2.0.1", - "source-map": "^0.6.1" - }, "engines": { "node": ">=10.13.0" } }, "node_modules/webpack/node_modules/acorn": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.2.4.tgz", - "integrity": "sha512-Ibt84YwBDDA890eDiDCEqcbwvHlBvzzDkU2cGBBDDI1QWT12jTiXIOn2CIw5KK4i6N5Z2HUxwYjzriDyqaqqZg==", + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.5.0.tgz", + "integrity": "sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -2905,6 +2940,15 @@ "node": ">=0.4.0" } }, + "node_modules/webpack/node_modules/acorn-import-assertions": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", + "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", + "dev": true, + "peerDependencies": { + "acorn": "^8" + } + }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -3061,62 +3105,62 @@ "dev": true }, "@eslint/eslintrc": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.1.tgz", - "integrity": "sha512-5v7TDE9plVhvxQeWLXDTvFvJBdH6pEsdnl2g/dAptmuFEPedQ4Erq5rsDsX+mvAM610IhNaO2W5V1dOOnDKxkQ==", + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", + "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", "dev": true, "requires": { "ajv": "^6.12.4", "debug": "^4.1.1", "espree": "^7.3.0", - "globals": "^12.1.0", + "globals": "^13.9.0", "ignore": "^4.0.6", "import-fresh": "^3.2.1", "js-yaml": "^3.13.1", "minimatch": "^3.0.4", "strip-json-comments": "^3.1.1" - }, - "dependencies": { - "globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", - "dev": true, - "requires": { - "type-fest": "^0.8.1" - } - }, - "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true - } } }, + "@humanwhocodes/config-array": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", + "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", + "dev": true, + "requires": { + "@humanwhocodes/object-schema": "^1.2.0", + "debug": "^4.1.1", + "minimatch": "^3.0.4" + } + }, + "@humanwhocodes/object-schema": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz", + "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==", + "dev": true + }, "@nodelib/fs.scandir": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.4.tgz", - "integrity": "sha512-33g3pMJk3bg5nXbL/+CY6I2eJDzZAni49PfJnL5fghPTggPvBd/pFNSgJsdAgWptuFu7qq/ERvOYFlhvsLTCKA==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", "dev": true, "requires": { - "@nodelib/fs.stat": "2.0.4", + "@nodelib/fs.stat": "2.0.5", "run-parallel": "^1.1.9" } }, "@nodelib/fs.stat": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.4.tgz", - "integrity": "sha512-IYlHJA0clt2+Vg7bccq+TzRdJvv19c2INqBSsoOLp1je7xjtr7J26+WXR72MCdvU9q1qTzIWDfhMf+DRvQJK4Q==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", "dev": true }, "@nodelib/fs.walk": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.6.tgz", - "integrity": "sha512-8Broas6vTtW4GIXTAHDoE32hnN2M5ykgCpWGbuXHQ15vEMqr23pB76e/GZcYsZCHALv50ktd24qhEyKr6wBtow==", + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", "dev": true, "requires": { - "@nodelib/fs.scandir": "2.1.4", + "@nodelib/fs.scandir": "2.1.5", "fastq": "^1.6.0" } }, @@ -3141,272 +3185,291 @@ } }, "@types/estree": { - "version": "0.0.47", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.47.tgz", - "integrity": "sha512-c5ciR06jK8u9BstrmJyO97m+klJrrhCf9u3rLu3DEAJBirxRqSCvDQoYKmxuYwQI5SZChAWu+tq9oVlGRuzPAg==", + "version": "0.0.50", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.50.tgz", + "integrity": "sha512-C6N5s2ZFtuZRj54k2/zyRhNDjJwwcViAM3Nbm8zjBpbqAdZ00mr0CFxvSKeO8Y/e03WVFLpQMdHYVfUd6SB+Hw==", "dev": true }, "@types/json-schema": { - "version": "7.0.7", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.7.tgz", - "integrity": "sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA==", + "version": "7.0.9", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.9.tgz", + "integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==", "dev": true }, "@types/node": { - "version": "15.6.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-15.6.1.tgz", - "integrity": "sha512-7EIraBEyRHEe7CH+Fm1XvgqU6uwZN8Q7jppJGcqjROMT29qhAuuOxYB1uEY5UMYQKEmA5D+5tBnhdaPXSsLONA==", + "version": "16.11.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.1.tgz", + "integrity": "sha512-PYGcJHL9mwl1Ek3PLiYgyEKtwTMmkMw4vbiyz/ps3pfdRYLVv+SN7qHVAImrjdAXxgluDEw6Ph4lyv+m9UpRmA==", "dev": true }, "@typescript-eslint/eslint-plugin": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.25.0.tgz", - "integrity": "sha512-Qfs3dWkTMKkKwt78xp2O/KZQB8MPS1UQ5D3YW2s6LQWBE1074BE+Rym+b1pXZIX3M3fSvPUDaCvZLKV2ylVYYQ==", + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.33.0.tgz", + "integrity": "sha512-aINiAxGVdOl1eJyVjaWn/YcVAq4Gi/Yo35qHGCnqbWVz61g39D0h23veY/MA0rFFGfxK7TySg2uwDeNv+JgVpg==", "dev": true, "requires": { - "@typescript-eslint/experimental-utils": "4.25.0", - "@typescript-eslint/scope-manager": "4.25.0", - "debug": "^4.1.1", + "@typescript-eslint/experimental-utils": "4.33.0", + "@typescript-eslint/scope-manager": "4.33.0", + "debug": "^4.3.1", "functional-red-black-tree": "^1.0.1", - "lodash": "^4.17.15", - "regexpp": "^3.0.0", - "semver": "^7.3.2", - "tsutils": "^3.17.1" + "ignore": "^5.1.8", + "regexpp": "^3.1.0", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + }, + "dependencies": { + "ignore": { + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", + "dev": true + } } }, "@typescript-eslint/experimental-utils": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.25.0.tgz", - "integrity": "sha512-f0doRE76vq7NEEU0tw+ajv6CrmPelw5wLoaghEHkA2dNLFb3T/zJQqGPQ0OYt5XlZaS13MtnN+GTPCuUVg338w==", + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.33.0.tgz", + "integrity": "sha512-zeQjOoES5JFjTnAhI5QY7ZviczMzDptls15GFsI6jyUOq0kOf9+WonkhtlIhh0RgHRnqj5gdNxW5j1EvAyYg6Q==", "dev": true, "requires": { - "@types/json-schema": "^7.0.3", - "@typescript-eslint/scope-manager": "4.25.0", - "@typescript-eslint/types": "4.25.0", - "@typescript-eslint/typescript-estree": "4.25.0", - "eslint-scope": "^5.0.0", - "eslint-utils": "^2.0.0" + "@types/json-schema": "^7.0.7", + "@typescript-eslint/scope-manager": "4.33.0", + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/typescript-estree": "4.33.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0" + }, + "dependencies": { + "eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^2.0.0" + } + } } }, "@typescript-eslint/parser": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.25.0.tgz", - "integrity": "sha512-OZFa1SKyEJpAhDx8FcbWyX+vLwh7OEtzoo2iQaeWwxucyfbi0mT4DijbOSsTgPKzGHr6GrF2V5p/CEpUH/VBxg==", + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.33.0.tgz", + "integrity": "sha512-ZohdsbXadjGBSK0/r+d87X0SBmKzOq4/S5nzK6SBgJspFo9/CUDJ7hjayuze+JK7CZQLDMroqytp7pOcFKTxZA==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "4.25.0", - "@typescript-eslint/types": "4.25.0", - "@typescript-eslint/typescript-estree": "4.25.0", - "debug": "^4.1.1" + "@typescript-eslint/scope-manager": "4.33.0", + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/typescript-estree": "4.33.0", + "debug": "^4.3.1" } }, "@typescript-eslint/scope-manager": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.25.0.tgz", - "integrity": "sha512-2NElKxMb/0rya+NJG1U71BuNnp1TBd1JgzYsldsdA83h/20Tvnf/HrwhiSlNmuq6Vqa0EzidsvkTArwoq+tH6w==", + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.33.0.tgz", + "integrity": "sha512-5IfJHpgTsTZuONKbODctL4kKuQje/bzBRkwHE8UOZ4f89Zeddg+EGZs8PD8NcN4LdM3ygHWYB3ukPAYjvl/qbQ==", "dev": true, "requires": { - "@typescript-eslint/types": "4.25.0", - "@typescript-eslint/visitor-keys": "4.25.0" + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/visitor-keys": "4.33.0" } }, "@typescript-eslint/types": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.25.0.tgz", - "integrity": "sha512-+CNINNvl00OkW6wEsi32wU5MhHti2J25TJsJJqgQmJu3B3dYDBcmOxcE5w9cgoM13TrdE/5ND2HoEnBohasxRQ==", + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.33.0.tgz", + "integrity": "sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.25.0.tgz", - "integrity": "sha512-1B8U07TGNAFMxZbSpF6jqiDs1cVGO0izVkf18Q/SPcUAc9LhHxzvSowXDTvkHMWUVuPpagupaW63gB6ahTXVlg==", + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.33.0.tgz", + "integrity": "sha512-rkWRY1MPFzjwnEVHsxGemDzqqddw2QbTJlICPD9p9I9LfsO8fdmfQPOX3uKfUaGRDFJbfrtm/sXhVXN4E+bzCA==", "dev": true, "requires": { - "@typescript-eslint/types": "4.25.0", - "@typescript-eslint/visitor-keys": "4.25.0", - "debug": "^4.1.1", - "globby": "^11.0.1", + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/visitor-keys": "4.33.0", + "debug": "^4.3.1", + "globby": "^11.0.3", "is-glob": "^4.0.1", - "semver": "^7.3.2", - "tsutils": "^3.17.1" + "semver": "^7.3.5", + "tsutils": "^3.21.0" } }, "@typescript-eslint/visitor-keys": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.25.0.tgz", - "integrity": "sha512-AmkqV9dDJVKP/TcZrbf6s6i1zYXt5Hl8qOLrRDTFfRNae4+LB8A4N3i+FLZPW85zIxRy39BgeWOfMS3HoH5ngg==", + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.33.0.tgz", + "integrity": "sha512-uqi/2aSz9g2ftcHWf8uLPJA70rUv6yuMW5Bohw+bwcuzaxQIHaKFZCKGoGXIrc9vkTJ3+0txM73K0Hq3d5wgIg==", "dev": true, "requires": { - "@typescript-eslint/types": "4.25.0", + "@typescript-eslint/types": "4.33.0", "eslint-visitor-keys": "^2.0.0" } }, "@webassemblyjs/ast": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.0.tgz", - "integrity": "sha512-kX2W49LWsbthrmIRMbQZuQDhGtjyqXfEmmHyEi4XWnSZtPmxY0+3anPIzsnRb45VH/J55zlOfWvZuY47aJZTJg==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", + "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", "dev": true, "requires": { - "@webassemblyjs/helper-numbers": "1.11.0", - "@webassemblyjs/helper-wasm-bytecode": "1.11.0" + "@webassemblyjs/helper-numbers": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1" } }, "@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.0.tgz", - "integrity": "sha512-Q/aVYs/VnPDVYvsCBL/gSgwmfjeCb4LW8+TMrO3cSzJImgv8lxxEPM2JA5jMrivE7LSz3V+PFqtMbls3m1exDA==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", + "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", "dev": true }, "@webassemblyjs/helper-api-error": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.0.tgz", - "integrity": "sha512-baT/va95eXiXb2QflSx95QGT5ClzWpGaa8L7JnJbgzoYeaA27FCvuBXU758l+KXWRndEmUXjP0Q5fibhavIn8w==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", + "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", "dev": true }, "@webassemblyjs/helper-buffer": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.0.tgz", - "integrity": "sha512-u9HPBEl4DS+vA8qLQdEQ6N/eJQ7gT7aNvMIo8AAWvAl/xMrcOSiI2M0MAnMCy3jIFke7bEee/JwdX1nUpCtdyA==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", + "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", "dev": true }, "@webassemblyjs/helper-numbers": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.0.tgz", - "integrity": "sha512-DhRQKelIj01s5IgdsOJMKLppI+4zpmcMQ3XboFPLwCpSNH6Hqo1ritgHgD0nqHeSYqofA6aBN/NmXuGjM1jEfQ==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", + "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", "dev": true, "requires": { - "@webassemblyjs/floating-point-hex-parser": "1.11.0", - "@webassemblyjs/helper-api-error": "1.11.0", + "@webassemblyjs/floating-point-hex-parser": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", "@xtuc/long": "4.2.2" } }, "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.0.tgz", - "integrity": "sha512-MbmhvxXExm542tWREgSFnOVo07fDpsBJg3sIl6fSp9xuu75eGz5lz31q7wTLffwL3Za7XNRCMZy210+tnsUSEA==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", + "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", "dev": true }, "@webassemblyjs/helper-wasm-section": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.0.tgz", - "integrity": "sha512-3Eb88hcbfY/FCukrg6i3EH8H2UsD7x8Vy47iVJrP967A9JGqgBVL9aH71SETPx1JrGsOUVLo0c7vMCN22ytJew==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", + "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.11.0", - "@webassemblyjs/helper-buffer": "1.11.0", - "@webassemblyjs/helper-wasm-bytecode": "1.11.0", - "@webassemblyjs/wasm-gen": "1.11.0" + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1" } }, "@webassemblyjs/ieee754": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.0.tgz", - "integrity": "sha512-KXzOqpcYQwAfeQ6WbF6HXo+0udBNmw0iXDmEK5sFlmQdmND+tr773Ti8/5T/M6Tl/413ArSJErATd8In3B+WBA==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", + "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", "dev": true, "requires": { "@xtuc/ieee754": "^1.2.0" } }, "@webassemblyjs/leb128": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.0.tgz", - "integrity": "sha512-aqbsHa1mSQAbeeNcl38un6qVY++hh8OpCOzxhixSYgbRfNWcxJNJQwe2rezK9XEcssJbbWIkblaJRwGMS9zp+g==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", + "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", "dev": true, "requires": { "@xtuc/long": "4.2.2" } }, "@webassemblyjs/utf8": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.0.tgz", - "integrity": "sha512-A/lclGxH6SpSLSyFowMzO/+aDEPU4hvEiooCMXQPcQFPPJaYcPQNKGOCLUySJsYJ4trbpr+Fs08n4jelkVTGVw==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", + "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", "dev": true }, "@webassemblyjs/wasm-edit": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.0.tgz", - "integrity": "sha512-JHQ0damXy0G6J9ucyKVXO2j08JVJ2ntkdJlq1UTiUrIgfGMmA7Ik5VdC/L8hBK46kVJgujkBIoMtT8yVr+yVOQ==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", + "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.11.0", - "@webassemblyjs/helper-buffer": "1.11.0", - "@webassemblyjs/helper-wasm-bytecode": "1.11.0", - "@webassemblyjs/helper-wasm-section": "1.11.0", - "@webassemblyjs/wasm-gen": "1.11.0", - "@webassemblyjs/wasm-opt": "1.11.0", - "@webassemblyjs/wasm-parser": "1.11.0", - "@webassemblyjs/wast-printer": "1.11.0" + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/helper-wasm-section": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-opt": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "@webassemblyjs/wast-printer": "1.11.1" } }, "@webassemblyjs/wasm-gen": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.0.tgz", - "integrity": "sha512-BEUv1aj0WptCZ9kIS30th5ILASUnAPEvE3tVMTrItnZRT9tXCLW2LEXT8ezLw59rqPP9klh9LPmpU+WmRQmCPQ==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", + "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.11.0", - "@webassemblyjs/helper-wasm-bytecode": "1.11.0", - "@webassemblyjs/ieee754": "1.11.0", - "@webassemblyjs/leb128": "1.11.0", - "@webassemblyjs/utf8": "1.11.0" + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" } }, "@webassemblyjs/wasm-opt": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.0.tgz", - "integrity": "sha512-tHUSP5F4ywyh3hZ0+fDQuWxKx3mJiPeFufg+9gwTpYp324mPCQgnuVKwzLTZVqj0duRDovnPaZqDwoyhIO8kYg==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", + "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.11.0", - "@webassemblyjs/helper-buffer": "1.11.0", - "@webassemblyjs/wasm-gen": "1.11.0", - "@webassemblyjs/wasm-parser": "1.11.0" + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1" } }, "@webassemblyjs/wasm-parser": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.0.tgz", - "integrity": "sha512-6L285Sgu9gphrcpDXINvm0M9BskznnzJTE7gYkjDbxET28shDqp27wpruyx3C2S/dvEwiigBwLA1cz7lNUi0kw==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", + "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.11.0", - "@webassemblyjs/helper-api-error": "1.11.0", - "@webassemblyjs/helper-wasm-bytecode": "1.11.0", - "@webassemblyjs/ieee754": "1.11.0", - "@webassemblyjs/leb128": "1.11.0", - "@webassemblyjs/utf8": "1.11.0" + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" } }, "@webassemblyjs/wast-printer": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.0.tgz", - "integrity": "sha512-Fg5OX46pRdTgB7rKIUojkh9vXaVN6sGYCnEiJN1GYkb0RPwShZXp6KTDqmoMdQPKhcroOXh3fEzmkWmCYaKYhQ==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", + "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.11.0", + "@webassemblyjs/ast": "1.11.1", "@xtuc/long": "4.2.2" } }, "@webpack-cli/configtest": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.0.3.tgz", - "integrity": "sha512-WQs0ep98FXX2XBAfQpRbY0Ma6ADw8JR6xoIkaIiJIzClGOMqVRvPCWqndTxf28DgFopWan0EKtHtg/5W1h0Zkw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.1.0.tgz", + "integrity": "sha512-ttOkEkoalEHa7RaFYpM0ErK1xc4twg3Am9hfHhL7MVqlHebnkYd2wuI/ZqTDj0cVzZho6PdinY0phFZV3O0Mzg==", "dev": true, "requires": {} }, "@webpack-cli/info": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.2.4.tgz", - "integrity": "sha512-ogE2T4+pLhTTPS/8MM3IjHn0IYplKM4HbVNMCWA9N4NrdPzunwenpCsqKEXyejMfRu6K8mhauIPYf8ZxWG5O6g==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.4.0.tgz", + "integrity": "sha512-F6b+Man0rwE4n0409FyAJHStYA5OIZERxmnUfLVwv0mc0V1wLad3V7jqRlMkgKBeAq07jUvglacNaa6g9lOpuw==", "dev": true, "requires": { "envinfo": "^7.7.3" } }, "@webpack-cli/serve": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.4.0.tgz", - "integrity": "sha512-xgT/HqJ+uLWGX+Mzufusl3cgjAcnqYYskaB7o0vRcwOEfuu6hMzSILQpnIzFMGsTaeaX4Nnekl+6fadLbl1/Vg==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.6.0.tgz", + "integrity": "sha512-ZkVeqEmRpBV2GHvjjUZqEai2PpUbuq8Bqd//vEYsp63J8WyexI8ppCqVS3Zs0QADf6aWuPdU+0XsPI647PVlQA==", "dev": true, "requires": {} }, @@ -3429,9 +3492,9 @@ "dev": true }, "acorn-jsx": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", - "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", "dev": true, "requires": {} }, @@ -3548,8 +3611,7 @@ "buffer-from": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" }, "callsites": { "version": "3.1.0", @@ -3686,9 +3748,9 @@ "dev": true }, "enhanced-resolve": { - "version": "5.8.2", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.8.2.tgz", - "integrity": "sha512-F27oB3WuHDzvR2DOGNTaYy0D5o0cnrv8TeI482VM4kYgQd/FT9lUQwuNsJ0oOHtBUq7eiW5ytqzp7nBFknL+GA==", + "version": "5.8.3", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.8.3.tgz", + "integrity": "sha512-EGAbGvH7j7Xt2nc0E7D99La1OiEs8LnyimkRgwExpUMScN6O+3x9tIWs7PLQZVNx4YD+00skHXPXi1yQHpAmZA==", "dev": true, "requires": { "graceful-fs": "^4.2.4", @@ -3711,9 +3773,9 @@ "dev": true }, "es-module-lexer": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.4.1.tgz", - "integrity": "sha512-ooYciCUtfw6/d2w56UVeqHPcoCFAiJdz5XOkYpv/Txl1HMUozpXjz/2RIQgqwKdXNDPSF1W7mJCFse3G+HDyAA==", + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", + "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", "dev": true }, "escalade": { @@ -3729,13 +3791,14 @@ "dev": true }, "eslint": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.27.0.tgz", - "integrity": "sha512-JZuR6La2ZF0UD384lcbnd0Cgg6QJjiCwhMD6eU4h/VGPcVGwawNNzKU41tgokGXnfjOOyI6QIffthhJTPzzuRA==", + "version": "7.32.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", + "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", "dev": true, "requires": { "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.1", + "@eslint/eslintrc": "^0.4.3", + "@humanwhocodes/config-array": "^0.5.0", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -3752,7 +3815,7 @@ "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.0.0", + "glob-parent": "^5.1.2", "globals": "^13.6.0", "ignore": "^4.0.6", "import-fresh": "^3.0.0", @@ -3909,17 +3972,16 @@ "dev": true }, "fast-glob": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.5.tgz", - "integrity": "sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz", + "integrity": "sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==", "dev": true, "requires": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.0", + "glob-parent": "^5.1.2", "merge2": "^1.3.0", - "micromatch": "^4.0.2", - "picomatch": "^2.2.1" + "micromatch": "^4.0.4" } }, "fast-json-stable-stringify": { @@ -3941,9 +4003,9 @@ "dev": true }, "fastq": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.11.0.tgz", - "integrity": "sha512-7Eczs8gIPDrVzT+EksYBcupqMyxSHXXrHOLRRxU2/DicV8789MRBRR8+Hc2uWzUupOs4YS4JzBmBxjjCVBxD/g==", + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", + "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", "dev": true, "requires": { "reusify": "^1.0.4" @@ -4018,9 +4080,9 @@ "dev": true }, "glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", "dev": true, "requires": { "fs.realpath": "^1.0.0", @@ -4056,9 +4118,9 @@ } }, "globby": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.3.tgz", - "integrity": "sha512-ffdmosjA807y7+lA1NM0jELARVmYul/715xiILEjo3hBLPTcirgQNnXECn5g3mtR8TOLCVbkfua1Hpen25/Xcg==", + "version": "11.0.4", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.4.tgz", + "integrity": "sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg==", "dev": true, "requires": { "array-union": "^2.1.0", @@ -4222,14 +4284,25 @@ "dev": true }, "jest-worker": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", - "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", + "version": "27.3.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.3.1.tgz", + "integrity": "sha512-ks3WCzsiZaOPJl/oMsDjaf0TRiSv7ctNgs0FqRr2nARsovz6AWWy4oLElwcquGSz692DzgZQrCLScPNs5YlC4g==", "dev": true, "requires": { "@types/node": "*", "merge-stream": "^2.0.0", - "supports-color": "^7.0.0" + "supports-color": "^8.0.0" + }, + "dependencies": { + "supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } } }, "js-tokens": { @@ -4297,12 +4370,6 @@ "p-locate": "^4.1.0" } }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, "lodash.clonedeep": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", @@ -4686,12 +4753,12 @@ "dev": true }, "schema-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz", - "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", "dev": true, "requires": { - "@types/json-schema": "^7.0.6", + "@types/json-schema": "^7.0.8", "ajv": "^6.12.5", "ajv-keywords": "^3.5.2" } @@ -4706,9 +4773,9 @@ } }, "serialize-javascript": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz", - "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", + "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", "dev": true, "requires": { "randombytes": "^2.1.0" @@ -4761,23 +4828,15 @@ "is-fullwidth-code-point": "^3.0.0" } }, - "source-list-map": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", - "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", - "dev": true - }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" }, "source-map-support": { - "version": "0.5.19", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", - "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", - "dev": true, + "version": "0.5.20", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.20.tgz", + "integrity": "sha512-n1lZZ8Ve4ksRqizaBQgxXDgKwttHDhyfQjA6YZZn8+AroHbsIz+JjwxQDxbp+7y5OYCI8t1Yk7etjD9CRd2hIw==", "requires": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" @@ -4871,14 +4930,14 @@ "dev": true }, "terser": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.7.0.tgz", - "integrity": "sha512-HP5/9hp2UaZt5fYkuhNBR8YyRcT8juw8+uFbAme53iN9hblvKnLUTKkmwJG6ocWpIKf8UK4DoeWG4ty0J6S6/g==", + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.9.0.tgz", + "integrity": "sha512-h5hxa23sCdpzcye/7b8YqbE5OwKca/ni0RQz1uRX3tGh8haaGHqcuSqbGRybuAKNdntZ0mDgFNXPJ48xQ2RXKQ==", "dev": true, "requires": { "commander": "^2.20.0", "source-map": "~0.7.2", - "source-map-support": "~0.5.19" + "source-map-support": "~0.5.20" }, "dependencies": { "source-map": { @@ -4890,17 +4949,17 @@ } }, "terser-webpack-plugin": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.1.2.tgz", - "integrity": "sha512-6QhDaAiVHIQr5Ab3XUWZyDmrIPCHMiqJVljMF91YKyqwKkL5QHnYMkrMBy96v9Z7ev1hGhSEw1HQZc2p/s5Z8Q==", + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.2.4.tgz", + "integrity": "sha512-E2CkNMN+1cho04YpdANyRrn8CyN4yMy+WdFKZIySFZrGXZxJwJP6PMNGGc/Mcr6qygQHUUqRxnAPmi0M9f00XA==", "dev": true, "requires": { - "jest-worker": "^26.6.2", + "jest-worker": "^27.0.6", "p-limit": "^3.1.0", - "schema-utils": "^3.0.0", - "serialize-javascript": "^5.0.1", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.0", "source-map": "^0.6.1", - "terser": "^5.7.0" + "terser": "^5.7.2" } }, "text-table": { @@ -4919,9 +4978,9 @@ } }, "ts-loader": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.2.2.tgz", - "integrity": "sha512-hNIhGTQHtNKjOzR2ZtQ2OSVbXPykOae+zostf1IlHCf61Mt41GMJurKNqrYUbzHgpmj6UWRu8eBfb7q0XliV0g==", + "version": "9.2.6", + "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.2.6.tgz", + "integrity": "sha512-QMTC4UFzHmu9wU2VHZEmWWE9cUajjfcdcws+Gh7FhiO+Dy0RnR1bNz0YCHqhI0yRowCE9arVnNxYHqELOy9Hjw==", "dev": true, "requires": { "chalk": "^4.1.0", @@ -4985,9 +5044,9 @@ "dev": true }, "typescript": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.2.4.tgz", - "integrity": "sha512-V+evlYHZnQkaz8TRBuxTA92yZBPotr5H+WhQ7bD3hZUndx5tGOa1fuCgeSjxAzM1RiN5IzvadIXTVefuuwZCRg==", + "version": "4.4.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.4.4.tgz", + "integrity": "sha512-DqGhF5IKoBl8WNf8C1gu8q0xZSInh9j1kJJMqT3a94w1JzVaBU4EXOSMrz9yDqMT0xt3selp83fuFMQ0uzv6qA==", "dev": true }, "uri-js": { @@ -5016,22 +5075,23 @@ } }, "webpack": { - "version": "5.37.1", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.37.1.tgz", - "integrity": "sha512-btZjGy/hSjCAAVHw+cKG+L0M+rstlyxbO2C+BOTaQ5/XAnxkDrP5sVbqWhXgo4pL3X2dcOib6rqCP20Zr9PLow==", + "version": "5.59.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.59.0.tgz", + "integrity": "sha512-2HiFHKnWIb/cBfOfgssQn8XIRvntISXiz//F1q1+hKMs+uzC1zlVCJZEP7XqI1wzrDyc/ZdB4G+MYtz5biJxCA==", "dev": true, "requires": { "@types/eslint-scope": "^3.7.0", - "@types/estree": "^0.0.47", - "@webassemblyjs/ast": "1.11.0", - "@webassemblyjs/wasm-edit": "1.11.0", - "@webassemblyjs/wasm-parser": "1.11.0", - "acorn": "^8.2.1", + "@types/estree": "^0.0.50", + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/wasm-edit": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "acorn": "^8.4.1", + "acorn-import-assertions": "^1.7.6", "browserslist": "^4.14.5", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.8.0", - "es-module-lexer": "^0.4.0", - "eslint-scope": "^5.1.1", + "enhanced-resolve": "^5.8.3", + "es-module-lexer": "^0.9.0", + "eslint-scope": "5.1.1", "events": "^3.2.0", "glob-to-regexp": "^0.4.1", "graceful-fs": "^4.2.4", @@ -5039,42 +5099,54 @@ "loader-runner": "^4.2.0", "mime-types": "^2.1.27", "neo-async": "^2.6.2", - "schema-utils": "^3.0.0", + "schema-utils": "^3.1.0", "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.1.1", - "watchpack": "^2.0.0", - "webpack-sources": "^2.1.1" + "terser-webpack-plugin": "^5.1.3", + "watchpack": "^2.2.0", + "webpack-sources": "^3.2.0" }, "dependencies": { "acorn": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.2.4.tgz", - "integrity": "sha512-Ibt84YwBDDA890eDiDCEqcbwvHlBvzzDkU2cGBBDDI1QWT12jTiXIOn2CIw5KK4i6N5Z2HUxwYjzriDyqaqqZg==", + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.5.0.tgz", + "integrity": "sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q==", "dev": true + }, + "acorn-import-assertions": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", + "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", + "dev": true, + "requires": {} } } }, "webpack-cli": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.7.0.tgz", - "integrity": "sha512-7bKr9182/sGfjFm+xdZSwgQuFjgEcy0iCTIBxRUeteJ2Kr8/Wz0qNJX+jw60LU36jApt4nmMkep6+W5AKhok6g==", + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.9.1.tgz", + "integrity": "sha512-JYRFVuyFpzDxMDB+v/nanUdQYcZtqFPGzmlW4s+UkPMFhSpfRNmf1z4AwYcHJVdvEFAM7FFCQdNTpsBYhDLusQ==", "dev": true, "requires": { "@discoveryjs/json-ext": "^0.5.0", - "@webpack-cli/configtest": "^1.0.3", - "@webpack-cli/info": "^1.2.4", - "@webpack-cli/serve": "^1.4.0", - "colorette": "^1.2.1", + "@webpack-cli/configtest": "^1.1.0", + "@webpack-cli/info": "^1.4.0", + "@webpack-cli/serve": "^1.6.0", + "colorette": "^2.0.14", "commander": "^7.0.0", "execa": "^5.0.0", "fastest-levenshtein": "^1.0.12", "import-local": "^3.0.2", "interpret": "^2.2.0", "rechoir": "^0.7.0", - "v8-compile-cache": "^2.2.0", "webpack-merge": "^5.7.3" }, "dependencies": { + "colorette": { + "version": "2.0.16", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.16.tgz", + "integrity": "sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g==", + "dev": true + }, "commander": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", @@ -5094,14 +5166,10 @@ } }, "webpack-sources": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-2.2.0.tgz", - "integrity": "sha512-bQsA24JLwcnWGArOKUxYKhX3Mz/nK1Xf6hxullKERyktjNMC4x8koOeaDNTA2fEJ09BdWLbM/iTW0ithREUP0w==", - "dev": true, - "requires": { - "source-list-map": "^2.0.1", - "source-map": "^0.6.1" - } + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.1.tgz", + "integrity": "sha512-t6BMVLQ0AkjBOoRTZgqrWm7xbXMBzD+XDq2EZ96+vMfn3qKgsvdXZhbPZ4ElUOpdv4u+iiGe+w3+J75iy/bYGA==", + "dev": true }, "which": { "version": "2.0.2", diff --git a/package.json b/package.json index 23e608a11f..f6827e61ee 100644 --- a/package.json +++ b/package.json @@ -23,23 +23,22 @@ "dependencies": { "binaryen": "102.0.0-nightly.20211020", "long": "^4.0.0", - "source-map-support": "^0.5.19", + "source-map-support": "^0.5.20", "ts-node": "^6.2.0" }, "devDependencies": { - "@types/node": "^15.6.1", - "@typescript-eslint/eslint-plugin": "^4.9.1", - "@typescript-eslint/parser": "^4.9.1", + "@types/node": "^16.11.1", + "@typescript-eslint/eslint-plugin": "^4.33.0", + "@typescript-eslint/parser": "^4.33.0", "diff": "^5.0.0", - "eslint": "^7.15.0", - "glob": "^7.1.6", + "eslint": "^7.32.0", + "glob": "^7.2.0", "physical-cpu-count": "^2.0.0", - "source-map-support": "^0.5.19", - "ts-loader": "^9.2.2", + "ts-loader": "^9.2.6", "ts-node": "^6.2.0", - "typescript": "~4.2.4", - "webpack": "^5.10.0", - "webpack-cli": "^4.2.0" + "typescript": "^4.4.4", + "webpack": "^5.59.0", + "webpack-cli": "^4.9.1" }, "type": "commonjs", "main": "index.js", From c39180488716da438ad00301a5d8af00ee398113 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Wed, 20 Oct 2021 13:24:56 +0300 Subject: [PATCH 40/54] fix webpack builds on node 17 --- webpack.config.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/webpack.config.js b/webpack.config.js index dbf5415172..e9cb82ec6e 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -39,7 +39,8 @@ const lib = { path: path.resolve(__dirname, "dist"), library: "assemblyscript", libraryTarget: "umd", - globalObject: "typeof self !== 'undefined' ? self : this" + globalObject: "typeof self !== 'undefined' ? self : this", + hashFunction: "xxhash64" }, devtool: "source-map", performance: { From 668282dd74495bcf51807e0bc3398e248f2fd91d Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Wed, 20 Oct 2021 13:37:36 +0300 Subject: [PATCH 41/54] fix? --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index f6827e61ee..e5792703e5 100644 --- a/package.json +++ b/package.json @@ -67,7 +67,7 @@ }, "scripts": { "build": "npm run build:bundle && npm run build:dts && npm run build:sdk", - "build:bundle": "webpack --config webpack.config.js", + "build:bundle": "NODE_OPTIONS=--openssl-legacy-provider && webpack --config webpack.config.js", "build:dts": "node scripts/build-dts && tsc --noEmit --target ESNEXT --module commonjs --experimentalDecorators tests/require/index-release", "build:sdk": "node scripts/build-sdk", "clean": "node scripts/clean", From ae062410c824cfb6c3e8e436c899500eada0d1f4 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Wed, 20 Oct 2021 13:47:50 +0300 Subject: [PATCH 42/54] revert --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index e5792703e5..f6827e61ee 100644 --- a/package.json +++ b/package.json @@ -67,7 +67,7 @@ }, "scripts": { "build": "npm run build:bundle && npm run build:dts && npm run build:sdk", - "build:bundle": "NODE_OPTIONS=--openssl-legacy-provider && webpack --config webpack.config.js", + "build:bundle": "webpack --config webpack.config.js", "build:dts": "node scripts/build-dts && tsc --noEmit --target ESNEXT --module commonjs --experimentalDecorators tests/require/index-release", "build:sdk": "node scripts/build-sdk", "clean": "node scripts/clean", From a83f149175ff9491ce487ec902327cc732c46df8 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Wed, 20 Oct 2021 13:51:00 +0300 Subject: [PATCH 43/54] fix? --- .github/workflows/test.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 08ef13e467..22cff96369 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -41,7 +41,7 @@ jobs: - name: Test sources run: npm test - name: Build distribution files - run: npm run build + run: NODE_OPTIONS=--openssl-legacy-provider && npm run build - name: Test distribution run: npm test - name: Test browser build @@ -62,7 +62,7 @@ jobs: - name: Test sources run: npm test - name: Build distribution files - run: npm run build + run: NODE_OPTIONS=--openssl-legacy-provider && npm run build - name: Test distribution run: npm test - name: Test browser build @@ -83,7 +83,7 @@ jobs: - name: Test sources run: npm test - name: Build distribution files - run: npm run build + run: NODE_OPTIONS=--openssl-legacy-provider && npm run build - name: Test distribution run: npm test - name: Test browser build From 7aabff767c221aab2405acb8df782952668dc06e Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Wed, 20 Oct 2021 13:55:34 +0300 Subject: [PATCH 44/54] fix? --- .github/workflows/test.yml | 6 +++--- webpack.config.js | 3 ++- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 22cff96369..08ef13e467 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -41,7 +41,7 @@ jobs: - name: Test sources run: npm test - name: Build distribution files - run: NODE_OPTIONS=--openssl-legacy-provider && npm run build + run: npm run build - name: Test distribution run: npm test - name: Test browser build @@ -62,7 +62,7 @@ jobs: - name: Test sources run: npm test - name: Build distribution files - run: NODE_OPTIONS=--openssl-legacy-provider && npm run build + run: npm run build - name: Test distribution run: npm test - name: Test browser build @@ -83,7 +83,7 @@ jobs: - name: Test sources run: npm test - name: Build distribution files - run: NODE_OPTIONS=--openssl-legacy-provider && npm run build + run: npm run build - name: Test distribution run: npm test - name: Test browser build diff --git a/webpack.config.js b/webpack.config.js index e9cb82ec6e..a3775f9d53 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -82,7 +82,8 @@ const bin = { path: path.resolve(__dirname, "dist"), library: "asc", libraryTarget: "umd", - globalObject: "typeof self !== 'undefined' ? self : this" + globalObject: "typeof self !== 'undefined' ? self : this", + hashFunction: "xxhash64" }, devtool: "source-map", performance: { From db8d5c1b2d276d8175304e7ee8af4098750d8a19 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sat, 23 Oct 2021 12:51:25 +0300 Subject: [PATCH 45/54] update --- package-lock.json | 2 -- 1 file changed, 2 deletions(-) diff --git a/package-lock.json b/package-lock.json index 8091865b84..1a70155f69 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2468,7 +2468,6 @@ "version": "0.5.20", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.20.tgz", "integrity": "sha512-n1lZZ8Ve4ksRqizaBQgxXDgKwttHDhyfQjA6YZZn8+AroHbsIz+JjwxQDxbp+7y5OYCI8t1Yk7etjD9CRd2hIw==", - "dev": true, "dependencies": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" @@ -4838,7 +4837,6 @@ "version": "0.5.20", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.20.tgz", "integrity": "sha512-n1lZZ8Ve4ksRqizaBQgxXDgKwttHDhyfQjA6YZZn8+AroHbsIz+JjwxQDxbp+7y5OYCI8t1Yk7etjD9CRd2hIw==", - "dev": true, "requires": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" From f10c108b42b22280164a07349f34aab43a93e273 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sat, 23 Oct 2021 12:55:19 +0300 Subject: [PATCH 46/54] update --- package-lock.json | 28 ++++++++++++++-------------- package.json | 4 ++-- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/package-lock.json b/package-lock.json index 1a70155f69..67ad958c91 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "102.0.0-nightly.20211020", + "binaryen": "102.0.0-nightly.20211022", "long": "^4.0.0", "source-map-support": "^0.5.20", "ts-node": "^6.2.0" @@ -19,7 +19,7 @@ "asinit": "bin/asinit" }, "devDependencies": { - "@types/node": "^16.11.1", + "@types/node": "^16.11.4", "@typescript-eslint/eslint-plugin": "^4.33.0", "@typescript-eslint/parser": "^4.33.0", "diff": "^5.0.0", @@ -251,9 +251,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "16.11.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.1.tgz", - "integrity": "sha512-PYGcJHL9mwl1Ek3PLiYgyEKtwTMmkMw4vbiyz/ps3pfdRYLVv+SN7qHVAImrjdAXxgluDEw6Ph4lyv+m9UpRmA==", + "version": "16.11.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.4.tgz", + "integrity": "sha512-TMgXmy0v2xWyuCSCJM6NCna2snndD8yvQF67J29ipdzMcsPa9u+o0tjF5+EQNdhcuZplYuouYqpc4zcd5I6amQ==", "dev": true }, "node_modules/@typescript-eslint/eslint-plugin": { @@ -756,9 +756,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "102.0.0-nightly.20211020", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211020.tgz", - "integrity": "sha512-AjCNjVskWoXlQYW8dWDsLcCiUY/Z14cso/nGkuYiRWgmAVF12vF1gJ80dnXcy/3NZsXAQnLB9rmdcFhW+IsrQQ==", + "version": "102.0.0-nightly.20211022", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211022.tgz", + "integrity": "sha512-c9JZR27nTzXbUhzOj9BlvRf7pTAN0p80p1lCKqTHAWtCpRDtLq+qRcZ6kzJicqt1Wlvqnabz+LBhqCpi8Cdcuw==", "bin": { "wasm-opt": "bin/wasm-opt" } @@ -3197,9 +3197,9 @@ "dev": true }, "@types/node": { - "version": "16.11.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.1.tgz", - "integrity": "sha512-PYGcJHL9mwl1Ek3PLiYgyEKtwTMmkMw4vbiyz/ps3pfdRYLVv+SN7qHVAImrjdAXxgluDEw6Ph4lyv+m9UpRmA==", + "version": "16.11.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.4.tgz", + "integrity": "sha512-TMgXmy0v2xWyuCSCJM6NCna2snndD8yvQF67J29ipdzMcsPa9u+o0tjF5+EQNdhcuZplYuouYqpc4zcd5I6amQ==", "dev": true }, "@typescript-eslint/eslint-plugin": { @@ -3572,9 +3572,9 @@ "dev": true }, "binaryen": { - "version": "102.0.0-nightly.20211020", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211020.tgz", - "integrity": "sha512-AjCNjVskWoXlQYW8dWDsLcCiUY/Z14cso/nGkuYiRWgmAVF12vF1gJ80dnXcy/3NZsXAQnLB9rmdcFhW+IsrQQ==" + "version": "102.0.0-nightly.20211022", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211022.tgz", + "integrity": "sha512-c9JZR27nTzXbUhzOj9BlvRf7pTAN0p80p1lCKqTHAWtCpRDtLq+qRcZ6kzJicqt1Wlvqnabz+LBhqCpi8Cdcuw==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 05e67d3fbd..b0fa2f5e5f 100644 --- a/package.json +++ b/package.json @@ -21,13 +21,13 @@ "url": "https://github.com/AssemblyScript/assemblyscript/issues" }, "dependencies": { - "binaryen": "102.0.0-nightly.20211020", + "binaryen": "102.0.0-nightly.20211022", "long": "^4.0.0", "source-map-support": "^0.5.20", "ts-node": "^6.2.0" }, "devDependencies": { - "@types/node": "^16.11.1", + "@types/node": "^16.11.4", "@typescript-eslint/eslint-plugin": "^4.33.0", "@typescript-eslint/parser": "^4.33.0", "diff": "^5.0.0", From b8e65ef66d69caae459e43202f0530995ab5f3f8 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sat, 23 Oct 2021 12:56:02 +0300 Subject: [PATCH 47/54] fix audit --- package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index 67ad958c91..28d3ce5599 100644 --- a/package-lock.json +++ b/package-lock.json @@ -690,9 +690,9 @@ } }, "node_modules/ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true, "engines": { "node": ">=8" @@ -3524,9 +3524,9 @@ "dev": true }, "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, "ansi-styles": { From bb0212fe3b278d781c24d6419218bb0612b409aa Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 26 Oct 2021 01:45:20 +0300 Subject: [PATCH 48/54] move rse earlier --- src/module.ts | 9 +- tests/compiler/class.optimized.wat | 38 +- tests/compiler/std-wasi/crypto.optimized.wat | 53 +- tests/compiler/std-wasi/process.optimized.wat | 4 +- tests/compiler/std/array.optimized.wat | 3295 ++++++++--------- tests/compiler/std/date.optimized.wat | 2 +- tests/compiler/std/map.optimized.wat | 2133 +++++------ tests/compiler/std/string.optimized.wat | 22 +- 8 files changed, 2780 insertions(+), 2776 deletions(-) diff --git a/src/module.ts b/src/module.ts index a090208a6f..795cbcf28d 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2344,7 +2344,10 @@ export class Module { passes.push("coalesce-locals"); passes.push("reorder-locals"); passes.push("vacuum"); - + if (optimizeLevel >= 2 || shrinkLevel >= 1) { + passes.push("rse"); + passes.push("vacuum"); + } if (optimizeLevel >= 3 || shrinkLevel >= 1) { passes.push("merge-locals"); passes.push("vacuum"); @@ -2359,10 +2362,6 @@ export class Module { if (optimizeLevel >= 3) { passes.push("optimize-instructions"); } - if (optimizeLevel >= 2 || shrinkLevel >= 1) { - passes.push("rse"); - passes.push("vacuum"); - } // --- PassRunner::addDefaultGlobalOptimizationPostPasses --- diff --git a/tests/compiler/class.optimized.wat b/tests/compiler/class.optimized.wat index 16825a1cfb..dbc550ac1b 100644 --- a/tests/compiler/class.optimized.wat +++ b/tests/compiler/class.optimized.wat @@ -1727,18 +1727,18 @@ i32.const 16 i32.const 5 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $1 i32.store - local.get $4 + local.get $1 i32.const 0 i32.store - local.get $4 + local.get $1 i32.const 0 i32.store offset=4 - local.get $4 + local.get $1 i32.const 0 i32.store offset=8 - local.get $4 + local.get $1 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -1750,59 +1750,59 @@ local.get $2 i32.const 32 call $~lib/memory/memory.fill - local.get $4 + local.get $1 local.get $2 i32.store local.get $2 if - local.get $4 + local.get $1 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white local.get $2 i32.const 20 i32.sub - local.tee $0 + local.tee $4 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $4 + local.get $1 i32.const 20 i32.sub i32.load offset=4 i32.const 3 i32.and - local.tee $1 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq if - local.get $0 + local.get $4 call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $1 + local.get $0 i32.const 3 i32.eq i32.and if - local.get $0 + local.get $4 call $~lib/rt/itcms/Object#makeGray end end end end - local.get $4 + local.get $1 local.get $2 i32.store offset=4 - local.get $4 + local.get $1 i32.const 32 i32.store offset=8 - local.get $4 + local.get $1 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -1810,15 +1810,15 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $3 - local.get $4 + local.get $1 i32.store - local.get $4 + local.get $1 if local.get $3 i32.eqz br_if $folding-inner1 global.get $~lib/rt/itcms/white - local.get $4 + local.get $1 i32.const 20 i32.sub local.tee $0 diff --git a/tests/compiler/std-wasi/crypto.optimized.wat b/tests/compiler/std-wasi/crypto.optimized.wat index fcefb38e80..0bc857c017 100644 --- a/tests/compiler/std-wasi/crypto.optimized.wat +++ b/tests/compiler/std-wasi/crypto.optimized.wat @@ -4294,13 +4294,15 @@ br $while-continue|0 end end + local.get $2 + local.set $1 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $2 + local.get $1 call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add @@ -4835,7 +4837,6 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -4846,7 +4847,7 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $5 i32.const 0 i32.store i32.const 0 @@ -4858,10 +4859,10 @@ i32.const 0 i32.gt_s select - local.set $5 - local.get $2 - local.get $0 + local.set $3 local.get $5 + local.get $0 + local.get $3 i32.sub local.tee $0 i32.const 0 @@ -4869,9 +4870,9 @@ i32.const 0 i32.gt_s select - local.tee $6 - local.set $4 - local.get $2 + local.tee $4 + local.set $2 + local.get $5 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -4920,7 +4921,7 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $4 + local.get $2 i32.const 1073741820 i32.gt_u if @@ -4932,50 +4933,48 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $2 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $5 i32.store offset=4 - local.get $3 - local.get $4 + local.get $5 + local.get $2 call $~lib/memory/memory.fill local.get $0 - local.get $3 + local.get $5 i32.store - local.get $0 - local.set $2 - local.get $3 + local.get $5 if - local.get $2 - local.get $3 + local.get $0 + local.get $5 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 - local.get $3 + local.get $0 + local.get $5 i32.store offset=4 + local.get $0 local.get $2 - local.get $4 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store local.get $0 i32.load offset=4 - local.get $5 + local.get $3 local.get $1 i32.load offset=4 i32.add - local.get $6 + local.get $4 call $~lib/memory/memory.copy global.get $~lib/memory/__stack_pointer i32.const 4 diff --git a/tests/compiler/std-wasi/process.optimized.wat b/tests/compiler/std-wasi/process.optimized.wat index bdd6867abf..9e76ecd9bf 100644 --- a/tests/compiler/std-wasi/process.optimized.wat +++ b/tests/compiler/std-wasi/process.optimized.wat @@ -2112,13 +2112,15 @@ br $while-continue|0 end end + local.get $2 + local.set $1 global.get $~lib/rt/tlsf/ROOT i32.eqz if call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.get $2 + local.get $1 call $~lib/rt/tlsf/allocateBlock i32.const 4 i32.add diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index de573da0b5..7c1a7afffd 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -14478,17 +14478,16 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i64) - (local $6 f64) - (local $7 f32) + (local $4 i64) + (local $5 f64) + (local $6 f32) + (local $7 i32) (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) global.get $~lib/memory/__stack_pointer i32.const 172 i32.sub @@ -14622,7 +14621,7 @@ i32.const 12 i32.const 5 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -14636,23 +14635,23 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - local.get $1 + local.get $0 i32.eqz if global.get $~lib/memory/__stack_pointer i32.const 12 i32.const 2 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $0 i32.store end - local.get $1 + local.get $0 i32.const 0 i32.store - local.get $1 + local.get $0 i32.const 0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 global.get $~lib/memory/__stack_pointer @@ -14665,39 +14664,39 @@ i32.const 0 i32.const 1 call $~lib/memory/memory.fill - local.get $1 + local.get $0 local.get $2 i32.store local.get $2 if - local.get $1 + local.get $0 local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link_0 end - local.get $1 + local.get $0 local.get $2 i32.store offset=4 - local.get $1 + local.get $0 i32.const 1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 1664 i32.store - local.get $0 + local.get $1 global.get $std/array/arr local.tee $0 i32.store @@ -14860,43 +14859,43 @@ i32.const 7 i32.const 1888 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=12 - local.get $0 + local.get $1 i32.load offset=4 - local.set $1 + local.set $2 i32.const 1 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $8 - local.get $8 + local.tee $7 + local.get $7 i32.const 1 i32.gt_s select - local.set $2 + local.set $0 i32.const 3 - local.get $8 - local.get $8 + local.get $7 + local.get $7 i32.const 3 i32.gt_s select - local.set $8 + local.set $7 loop $for-loop|0 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $2 + local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.const 1 i32.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|0 end end @@ -14905,12 +14904,12 @@ i32.const 7 i32.const 1936 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=8 local.get $0 + i32.store offset=8 local.get $1 + local.get $0 call $std/array/isArraysEqual i32.eqz if @@ -14921,34 +14920,34 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=4 - local.set $1 + local.set $2 i32.const 0 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $8 - local.get $8 + local.tee $7 + local.get $7 i32.const 0 i32.gt_s select - local.set $2 + local.set $0 loop $for-loop|01 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $2 + local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|01 end end @@ -14957,12 +14956,12 @@ i32.const 7 i32.const 1984 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=8 local.get $0 + i32.store offset=8 local.get $1 + local.get $0 call $std/array/isArraysEqual i32.eqz if @@ -14973,44 +14972,44 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=4 - local.set $1 + local.set $2 i32.const 0 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $8 - local.get $8 + local.tee $7 + local.get $7 i32.const 0 i32.gt_s select - local.set $2 - local.get $8 + local.set $0 + local.get $7 i32.const 3 i32.sub - local.tee $8 + local.tee $7 i32.const 0 - local.get $8 + local.get $7 i32.const 0 i32.gt_s select - local.set $8 + local.set $7 loop $for-loop|03 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $2 + local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.const 1 i32.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|03 end end @@ -15019,12 +15018,12 @@ i32.const 7 i32.const 2032 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=8 local.get $0 + i32.store offset=8 local.get $1 + local.get $0 call $std/array/isArraysEqual i32.eqz if @@ -15035,37 +15034,37 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=4 - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 2 i32.sub - local.tee $2 + local.tee $0 i32.const 0 - local.get $2 + local.get $0 i32.const 0 i32.gt_s select - local.set $2 + local.set $0 loop $for-loop|05 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $2 + local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.const 2 i32.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|05 end end @@ -15074,12 +15073,12 @@ i32.const 7 i32.const 2080 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=8 local.get $0 + i32.store offset=8 local.get $1 + local.get $0 call $std/array/isArraysEqual i32.eqz if @@ -15090,41 +15089,41 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.load offset=4 - local.set $1 + local.set $2 i32.const 1 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $8 - local.get $8 + local.tee $7 + local.get $7 i32.const 1 i32.gt_s select - local.set $2 + local.set $0 i32.const 0 - local.get $8 - local.get $8 + local.get $7 + local.get $7 i32.const 0 i32.gt_s select - local.set $8 + local.set $7 loop $for-loop|07 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $2 + local.get $0 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.const 0 i32.store - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $for-loop|07 end end @@ -15133,12 +15132,12 @@ i32.const 7 i32.const 2128 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=8 local.get $0 + i32.store offset=8 local.get $1 + local.get $0 call $std/array/isArraysEqual i32.eqz if @@ -16657,10 +16656,10 @@ local.tee $1 i32.const 2 i32.shl - local.tee $9 + local.tee $8 call $~lib/memory/memory.copy local.get $2 - local.get $9 + local.get $8 i32.add i32.const 0 i32.store @@ -17120,58 +17119,58 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 i32.load offset=4 local.set $2 i32.const 0 - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.load offset=12 - local.tee $0 + local.tee $1 i32.const 1 i32.gt_u if - local.get $0 + local.get $1 i32.const 1 i32.shr_u - local.set $8 - local.get $0 + local.set $7 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 loop $while-continue|0 - local.get $1 - local.get $8 + local.get $0 + local.get $7 i32.lt_u if - local.get $1 + local.get $0 i32.const 2 i32.shl local.get $2 i32.add - local.tee $9 + local.tee $8 i32.load - local.set $10 - local.get $9 - local.get $0 + local.set $9 + local.get $8 local.get $1 + local.get $0 i32.sub i32.const 2 i32.shl local.get $2 i32.add - local.tee $9 + local.tee $8 i32.load i32.store + local.get $8 local.get $9 - local.get $10 i32.store - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|0 end end @@ -17281,33 +17280,33 @@ i32.const 6 i32.const 3744 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=12 call $~lib/util/bytes/REVERSE - local.get $2 + local.get $1 i32.store offset=16 i32.const 0 - local.set $1 - local.get $2 - i32.load offset=12 local.set $0 + local.get $1 + i32.load offset=12 + local.set $2 loop $for-loop|08 local.get $0 - local.get $1 - i32.gt_s + local.get $2 + i32.lt_s if - local.get $2 local.get $1 + local.get $0 call $~lib/array/Array#__get - local.get $2 - i32.load offset=12 local.get $1 + i32.load offset=12 + local.get $0 i32.sub i32.const 1 i32.sub @@ -17320,10 +17319,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|08 end end @@ -17333,33 +17332,33 @@ i32.const 6 i32.const 3776 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=12 call $~lib/util/bytes/REVERSE - local.get $2 + local.get $1 i32.store offset=4 i32.const 0 - local.set $1 - local.get $2 - i32.load offset=12 local.set $0 + local.get $1 + i32.load offset=12 + local.set $2 loop $for-loop|1 local.get $0 - local.get $1 - i32.gt_s + local.get $2 + i32.lt_s if - local.get $2 local.get $1 + local.get $0 call $~lib/array/Array#__get - local.get $2 - i32.load offset=12 local.get $1 + i32.load offset=12 + local.get $0 i32.sub i32.const 1 i32.sub @@ -17372,10 +17371,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|1 end end @@ -17385,33 +17384,33 @@ i32.const 6 i32.const 3808 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.load offset=4 - local.get $2 + local.get $1 i32.load offset=12 call $~lib/util/bytes/REVERSE - local.get $2 + local.get $1 i32.store offset=12 i32.const 0 - local.set $1 - local.get $2 - i32.load offset=12 local.set $0 + local.get $1 + i32.load offset=12 + local.set $2 loop $for-loop|2 local.get $0 - local.get $1 - i32.gt_s + local.get $2 + i32.lt_s if - local.get $2 local.get $1 + local.get $0 call $~lib/array/Array#__get - local.get $2 - i32.load offset=12 local.get $1 + i32.load offset=12 + local.get $0 i32.sub i32.const 1 i32.sub @@ -17424,10 +17423,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|2 end end @@ -17443,24 +17442,24 @@ i32.store local.get $1 call $~lib/array/Array#reverse - local.tee $0 + local.tee $1 i32.store offset=20 i32.const 0 - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.load offset=12 local.set $2 loop $for-loop|3 - local.get $1 + local.get $0 local.get $2 i32.lt_s if - local.get $0 local.get $1 - call $~lib/array/Array#__get local.get $0 - i32.load offset=12 + call $~lib/array/Array#__get local.get $1 + i32.load offset=12 + local.get $0 i32.sub i32.const 1 i32.sub @@ -17473,10 +17472,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|3 end end @@ -17492,24 +17491,24 @@ i32.store local.get $1 call $~lib/array/Array#reverse - local.tee $0 + local.tee $1 i32.store offset=24 i32.const 0 - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.load offset=12 local.set $2 loop $for-loop|4 - local.get $1 + local.get $0 local.get $2 i32.lt_s if - local.get $0 local.get $1 - call $~lib/array/Array#__get local.get $0 - i32.load offset=12 + call $~lib/array/Array#__get local.get $1 + i32.load offset=12 + local.get $0 i32.sub i32.const 1 i32.sub @@ -17522,10 +17521,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|4 end end @@ -17541,24 +17540,24 @@ i32.store local.get $1 call $~lib/array/Array#reverse - local.tee $0 + local.tee $1 i32.store offset=28 i32.const 0 - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.load offset=12 local.set $2 loop $for-loop|5 - local.get $1 + local.get $0 local.get $2 i32.lt_s if - local.get $0 local.get $1 - call $~lib/array/Array#__get local.get $0 - i32.load offset=12 + call $~lib/array/Array#__get local.get $1 + i32.load offset=12 + local.get $0 i32.sub i32.const 1 i32.sub @@ -17571,10 +17570,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|5 end end @@ -17583,29 +17582,29 @@ local.tee $2 i32.store i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $__inlined_func$~lib/array/Array#indexOf local.get $2 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 0 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf local.get $2 i32.load offset=4 local.set $2 loop $while-continue|012 - local.get $1 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl local.get $2 @@ -17614,17 +17613,17 @@ i32.const 44 i32.eq br_if $__inlined_func$~lib/array/Array#indexOf - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|012 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i if @@ -17640,29 +17639,29 @@ local.tee $2 i32.store i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $__inlined_func$~lib/array/Array#indexOf39 local.get $2 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 0 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf39 local.get $2 i32.load offset=4 local.set $2 loop $while-continue|040 - local.get $1 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl local.get $2 @@ -17671,17 +17670,17 @@ i32.const 42 i32.eq br_if $__inlined_func$~lib/array/Array#indexOf39 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|040 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const 2 @@ -17699,29 +17698,29 @@ local.tee $2 i32.store i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $__inlined_func$~lib/array/Array#indexOf41 local.get $2 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 0 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf41 local.get $2 i32.load offset=4 local.set $2 loop $while-continue|042 - local.get $1 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl local.get $2 @@ -17730,17 +17729,17 @@ i32.const 45 i32.eq br_if $__inlined_func$~lib/array/Array#indexOf41 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|042 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const -1 @@ -17758,29 +17757,29 @@ local.tee $2 i32.store i32.const 100 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $__inlined_func$~lib/array/Array#indexOf43 local.get $2 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 100 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf43 local.get $2 i32.load offset=4 local.set $2 loop $while-continue|044 - local.get $1 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl local.get $2 @@ -17789,17 +17788,17 @@ i32.const 43 i32.eq br_if $__inlined_func$~lib/array/Array#indexOf43 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|044 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const -1 @@ -17814,12 +17813,12 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store i32.const -1 - local.set $1 + local.set $0 block $__inlined_func$~lib/array/Array#indexOf45 - local.get $0 + local.get $1 i32.load offset=12 local.tee $2 i32.const -100 @@ -17831,41 +17830,41 @@ local.get $2 i32.const 100 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select - local.set $1 - local.get $0 - i32.load offset=4 local.set $0 + local.get $1 + i32.load offset=4 + local.set $1 loop $while-continue|046 - local.get $1 + local.get $0 local.get $2 i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.load i32.const 43 i32.eq br_if $__inlined_func$~lib/array/Array#indexOf45 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|046 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 1 @@ -17880,12 +17879,12 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store i32.const -1 - local.set $1 + local.set $0 block $__inlined_func$~lib/array/Array#indexOf47 - local.get $0 + local.get $1 i32.load offset=12 local.tee $2 i32.const -2 @@ -17897,41 +17896,41 @@ local.get $2 i32.const 2 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select - local.set $1 - local.get $0 - i32.load offset=4 local.set $0 + local.get $1 + i32.load offset=4 + local.set $1 loop $while-continue|048 - local.get $1 + local.get $0 local.get $2 i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.load i32.const 43 i32.eq br_if $__inlined_func$~lib/array/Array#indexOf47 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|048 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 3 @@ -17946,12 +17945,12 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store i32.const -1 - local.set $1 + local.set $0 block $__inlined_func$~lib/array/Array#indexOf49 - local.get $0 + local.get $1 i32.load offset=12 local.tee $2 i32.const -4 @@ -17963,41 +17962,41 @@ local.get $2 i32.const 4 i32.sub - local.tee $1 + local.tee $0 i32.const 0 - local.get $1 + local.get $0 i32.const 0 i32.gt_s select - local.set $1 - local.get $0 - i32.load offset=4 local.set $0 + local.get $1 + i32.load offset=4 + local.set $1 loop $while-continue|050 - local.get $1 + local.get $0 local.get $2 i32.lt_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.load i32.const 43 i32.eq br_if $__inlined_func$~lib/array/Array#indexOf49 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|050 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 1 @@ -18015,29 +18014,29 @@ local.tee $2 i32.store i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $__inlined_func$~lib/array/Array#indexOf51 local.get $2 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 0 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf51 local.get $2 i32.load offset=4 local.set $2 loop $while-continue|052 - local.get $1 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl local.get $2 @@ -18046,17 +18045,17 @@ i32.const 43 i32.eq br_if $__inlined_func$~lib/array/Array#indexOf51 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|052 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const 1 @@ -18074,29 +18073,29 @@ local.tee $2 i32.store i32.const 1 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $__inlined_func$~lib/array/Array#indexOf53 local.get $2 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 1 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf53 local.get $2 i32.load offset=4 local.set $2 loop $while-continue|054 - local.get $1 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl local.get $2 @@ -18105,17 +18104,17 @@ i32.const 43 i32.eq br_if $__inlined_func$~lib/array/Array#indexOf53 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|054 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const 1 @@ -18133,29 +18132,29 @@ local.tee $2 i32.store i32.const 2 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $__inlined_func$~lib/array/Array#indexOf55 local.get $2 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 2 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf55 local.get $2 i32.load offset=4 local.set $2 loop $while-continue|056 - local.get $1 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl local.get $2 @@ -18164,17 +18163,17 @@ i32.const 43 i32.eq br_if $__inlined_func$~lib/array/Array#indexOf55 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|056 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const 3 @@ -18197,29 +18196,29 @@ local.get $2 i32.store i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $__inlined_func$~lib/array/Array#indexOf local.get $2 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 0 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf local.get $2 i32.load offset=4 local.set $2 loop $while-continue|057 - local.get $1 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl local.get $2 @@ -18228,17 +18227,17 @@ f32.const nan:0x400000 f32.eq br_if $__inlined_func$~lib/array/Array#indexOf - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|057 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -18259,29 +18258,29 @@ local.get $2 i32.store i32.const 0 - local.set $1 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $__inlined_func$~lib/array/Array#indexOf local.get $2 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 0 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf local.get $2 i32.load offset=4 local.set $2 loop $while-continue|058 - local.get $1 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 3 i32.shl local.get $2 @@ -18290,17 +18289,17 @@ f64.const nan:0x8000000000000 f64.eq br_if $__inlined_func$~lib/array/Array#indexOf - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|058 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const -1 i32.ne if @@ -18317,65 +18316,65 @@ i32.const 3 i32.const 4064 call $~lib/rt/__newArray - local.tee $1 + local.tee $2 i32.store offset=24 i32.const 1 global.set $~argumentsLength - local.get $1 + local.get $2 i32.load offset=12 - local.tee $2 - local.set $8 + local.tee $0 + local.set $7 i32.const -1 - local.set $0 + local.set $1 block $__inlined_func$~lib/array/Array#lastIndexOf - local.get $2 + local.get $0 i32.eqz br_if $__inlined_func$~lib/array/Array#lastIndexOf - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.add - local.get $2 + local.get $0 i32.const 1 i32.sub - local.get $8 - local.get $2 - local.get $8 + local.get $7 + local.get $0 + local.get $7 i32.le_s select - local.get $8 + local.get $7 i32.const 0 i32.lt_s select - local.set $2 - local.get $1 + local.set $0 + local.get $2 i32.load offset=4 - local.set $8 + local.set $7 loop $while-continue|09 - local.get $2 + local.get $0 i32.const 0 i32.ge_s if - local.get $2 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $8 + local.get $7 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/array/Array#lastIndexOf - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $2 + local.set $0 br $while-continue|09 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 3 i32.ne if @@ -18388,63 +18387,61 @@ end i32.const 1 global.set $~argumentsLength - local.get $1 - local.tee $0 + local.get $2 i32.load offset=12 - local.set $2 - i32.const -1 local.set $1 + i32.const -1 + local.set $0 block $__inlined_func$~lib/array/Array#lastIndexOf14 - local.get $0 + local.get $2 i32.load offset=12 - local.tee $8 + local.tee $7 i32.eqz br_if $__inlined_func$~lib/array/Array#lastIndexOf14 - local.get $2 - local.get $8 + local.get $1 + local.get $7 i32.add - local.get $8 + local.get $7 i32.const 1 i32.sub - local.get $2 - local.get $2 - local.get $8 + local.get $1 + local.get $1 + local.get $7 i32.ge_s select - local.get $2 + local.get $1 i32.const 0 i32.lt_s select - local.set $2 - local.get $0 + local.set $0 + local.get $2 i32.load offset=4 - local.set $8 + local.set $1 loop $while-continue|015 - local.get $2 + local.get $0 i32.const 0 i32.ge_s if - local.get $2 - local.tee $1 + local.get $0 i32.const 2 i32.shl - local.get $8 + local.get $1 i32.add i32.load i32.const 7 i32.eq br_if $__inlined_func$~lib/array/Array#lastIndexOf14 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $2 + local.set $0 br $while-continue|015 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const -1 i32.ne if @@ -18456,50 +18453,50 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $__inlined_func$~lib/array/Array#lastIndexOf16 - local.get $0 + local.get $2 i32.load offset=12 - local.tee $2 + local.tee $1 i32.eqz br_if $__inlined_func$~lib/array/Array#lastIndexOf16 - local.get $2 + local.get $1 i32.const 1 i32.sub i32.const 3 - local.get $2 + local.get $1 i32.const 3 i32.le_s select - local.set $1 - local.get $0 + local.set $0 + local.get $2 i32.load offset=4 - local.set $2 + local.set $1 loop $while-continue|059 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/array/Array#lastIndexOf16 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|059 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -18511,50 +18508,50 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $__inlined_func$~lib/array/Array#lastIndexOf60 - local.get $0 + local.get $2 i32.load offset=12 - local.tee $2 + local.tee $1 i32.eqz br_if $__inlined_func$~lib/array/Array#lastIndexOf60 - local.get $2 + local.get $1 i32.const 1 i32.sub i32.const 2 - local.get $2 + local.get $1 i32.const 2 i32.le_s select - local.set $1 - local.get $0 + local.set $0 + local.get $2 i32.load offset=4 - local.set $2 + local.set $1 loop $while-continue|061 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/array/Array#lastIndexOf60 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|061 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1552 @@ -18564,45 +18561,45 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $__inlined_func$~lib/array/Array#lastIndexOf62 - local.get $0 + local.get $2 i32.load offset=12 - local.tee $2 + local.tee $1 i32.eqz br_if $__inlined_func$~lib/array/Array#lastIndexOf62 - local.get $2 + local.get $1 i32.const 2 i32.sub - local.set $1 - local.get $0 + local.set $0 + local.get $2 i32.load offset=4 - local.set $2 + local.set $1 loop $while-continue|063 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $2 + local.get $1 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/array/Array#lastIndexOf62 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|063 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1552 @@ -18612,45 +18609,45 @@ unreachable end i32.const -1 - local.set $1 + local.set $0 block $__inlined_func$~lib/array/Array#lastIndexOf64 - local.get $0 + local.get $2 i32.load offset=12 - local.tee $2 + local.tee $1 i32.eqz br_if $__inlined_func$~lib/array/Array#lastIndexOf64 - local.get $2 + local.get $1 i32.const 1 i32.sub - local.set $1 - local.get $0 - i32.load offset=4 local.set $0 + local.get $2 + i32.load offset=4 + local.set $1 loop $while-continue|065 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add i32.load i32.const 2 i32.eq br_if $__inlined_func$~lib/array/Array#lastIndexOf64 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $while-continue|065 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.const 3 i32.ne if @@ -18663,51 +18660,51 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store i32.const 0 - local.set $2 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $__inlined_func$~lib/array/Array#indexOf17 - local.get $1 + local.get $2 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 0 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf17 - local.get $1 + local.get $2 i32.load offset=4 - local.set $1 + local.set $2 loop $while-continue|018 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $2 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 44 i32.eq br_if $__inlined_func$~lib/array/Array#indexOf17 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $0 br $while-continue|018 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 0 i32.lt_s if @@ -18720,51 +18717,51 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store i32.const 0 - local.set $2 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $__inlined_func$~lib/array/Array#indexOf20 - local.get $1 + local.get $2 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 0 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf20 - local.get $1 + local.get $2 i32.load offset=4 - local.set $1 + local.set $2 loop $while-continue|021 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $2 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 42 i32.eq br_if $__inlined_func$~lib/array/Array#indexOf20 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $0 br $while-continue|021 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 0 i32.lt_s if @@ -18777,51 +18774,51 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store i32.const 0 - local.set $2 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $__inlined_func$~lib/array/Array#indexOf23 - local.get $1 + local.get $2 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 0 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf23 - local.get $1 + local.get $2 i32.load offset=4 - local.set $1 + local.set $2 loop $while-continue|024 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $2 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 45 i32.eq br_if $__inlined_func$~lib/array/Array#indexOf23 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $0 br $while-continue|024 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 0 i32.ge_s if @@ -18834,51 +18831,51 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store i32.const 100 - local.set $2 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $__inlined_func$~lib/array/Array#indexOf26 - local.get $1 + local.get $2 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 100 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf26 - local.get $1 + local.get $2 i32.load offset=4 - local.set $1 + local.set $2 loop $while-continue|027 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $2 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 43 i32.eq br_if $__inlined_func$~lib/array/Array#indexOf26 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $0 br $while-continue|027 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 0 i32.ge_s if @@ -18891,12 +18888,12 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store i32.const -1 - local.set $0 + local.set $1 block $__inlined_func$~lib/array/Array#indexOf29 - local.get $1 + local.get $0 i32.load offset=12 local.tee $2 i32.const -100 @@ -18908,41 +18905,41 @@ local.get $2 i32.const 100 i32.sub - local.tee $0 + local.tee $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 i32.gt_s select - local.set $0 - local.get $1 - i32.load offset=4 local.set $1 + local.get $0 + i32.load offset=4 + local.set $0 loop $while-continue|030 - local.get $0 + local.get $1 local.get $2 i32.lt_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add i32.load i32.const 43 i32.eq br_if $__inlined_func$~lib/array/Array#indexOf29 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|030 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 0 i32.lt_s if @@ -18955,12 +18952,12 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store i32.const -1 - local.set $0 + local.set $1 block $__inlined_func$~lib/array/Array#indexOf32 - local.get $1 + local.get $0 i32.load offset=12 local.tee $2 i32.const -2 @@ -18972,41 +18969,41 @@ local.get $2 i32.const 2 i32.sub - local.tee $0 + local.tee $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 i32.gt_s select - local.set $0 - local.get $1 - i32.load offset=4 local.set $1 + local.get $0 + i32.load offset=4 + local.set $0 loop $while-continue|033 - local.get $0 + local.get $1 local.get $2 i32.lt_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add i32.load i32.const 43 i32.eq br_if $__inlined_func$~lib/array/Array#indexOf32 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|033 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 0 i32.lt_s if @@ -19019,12 +19016,12 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store i32.const -1 - local.set $0 + local.set $1 block $__inlined_func$~lib/array/Array#indexOf35 - local.get $1 + local.get $0 i32.load offset=12 local.tee $2 i32.const -4 @@ -19036,41 +19033,41 @@ local.get $2 i32.const 4 i32.sub - local.tee $0 + local.tee $1 i32.const 0 - local.get $0 + local.get $1 i32.const 0 i32.gt_s select - local.set $0 - local.get $1 - i32.load offset=4 local.set $1 + local.get $0 + i32.load offset=4 + local.set $0 loop $while-continue|036 - local.get $0 + local.get $1 local.get $2 i32.lt_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.get $1 + local.get $0 i32.add i32.load i32.const 43 i32.eq br_if $__inlined_func$~lib/array/Array#indexOf35 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $while-continue|036 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 0 i32.lt_s if @@ -19083,51 +19080,51 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store i32.const 0 - local.set $2 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $__inlined_func$~lib/array/Array#indexOf38 - local.get $1 + local.get $2 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 0 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf38 - local.get $1 + local.get $2 i32.load offset=4 - local.set $1 + local.set $2 loop $while-continue|039 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $2 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 43 i32.eq br_if $__inlined_func$~lib/array/Array#indexOf38 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $0 br $while-continue|039 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 0 i32.lt_s if @@ -19140,51 +19137,51 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store i32.const 1 - local.set $2 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $__inlined_func$~lib/array/Array#indexOf42 - local.get $1 + local.get $2 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 1 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf42 - local.get $1 + local.get $2 i32.load offset=4 - local.set $1 + local.set $2 loop $while-continue|043 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $2 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 43 i32.eq br_if $__inlined_func$~lib/array/Array#indexOf42 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $0 br $while-continue|043 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 0 i32.lt_s if @@ -19197,51 +19194,51 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store i32.const 2 - local.set $2 - i32.const -1 local.set $0 + i32.const -1 + local.set $1 block $__inlined_func$~lib/array/Array#indexOf46 - local.get $1 + local.get $2 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 2 i32.le_s i32.const 1 - local.get $8 + local.get $7 select br_if $__inlined_func$~lib/array/Array#indexOf46 - local.get $1 + local.get $2 i32.load offset=4 - local.set $1 + local.set $2 loop $while-continue|047 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $2 - local.tee $0 + local.get $0 + local.tee $1 i32.const 2 i32.shl - local.get $1 + local.get $2 i32.add i32.load i32.const 43 i32.eq br_if $__inlined_func$~lib/array/Array#indexOf46 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $2 + local.set $0 br $while-continue|047 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 i32.const 0 i32.lt_s if @@ -19257,15 +19254,15 @@ i32.const 10 i32.const 4112 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store block $__inlined_func$~lib/array/Array#includes (result i32) i32.const 0 - local.set $1 + local.set $0 i32.const 0 - local.get $0 + local.get $1 i32.load offset=12 local.tee $2 i32.const 0 @@ -19275,34 +19272,34 @@ select br_if $__inlined_func$~lib/array/Array#includes drop - local.get $0 + local.get $1 i32.load offset=4 - local.set $0 + local.set $1 loop $while-continue|066 - local.get $1 + local.get $0 local.get $2 i32.lt_s if i32.const 1 - local.get $1 + local.get $0 i32.const 2 i32.shl - local.get $0 + local.get $1 i32.add f32.load - local.tee $7 + local.tee $6 f32.const nan:0x400000 f32.eq - local.get $7 - local.get $7 + local.get $6 + local.get $6 f32.ne i32.or br_if $__inlined_func$~lib/array/Array#includes drop - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|066 end end @@ -19322,15 +19319,15 @@ i32.const 11 i32.const 4144 call $~lib/rt/__newArray - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store block $__inlined_func$~lib/array/Array#includes (result i32) i32.const 0 - local.set $1 + local.set $0 i32.const 0 - local.get $0 + local.get $1 i32.load offset=12 local.tee $2 i32.const 0 @@ -19340,34 +19337,34 @@ select br_if $__inlined_func$~lib/array/Array#includes drop - local.get $0 + local.get $1 i32.load offset=4 - local.set $0 + local.set $1 loop $while-continue|067 - local.get $1 + local.get $0 local.get $2 i32.lt_s if i32.const 1 - local.get $1 + local.get $0 i32.const 3 i32.shl - local.get $0 + local.get $1 i32.add f64.load - local.tee $6 + local.tee $5 f64.const nan:0x8000000000000 f64.eq - local.get $6 - local.get $6 + local.get $5 + local.get $5 f64.ne i32.or br_if $__inlined_func$~lib/array/Array#includes drop - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $while-continue|067 end end @@ -20518,16 +20515,16 @@ i32.const 0 local.get $1 i32.load offset=12 - local.tee $8 - local.get $8 + local.tee $7 + local.get $7 i32.const 0 i32.gt_s select - local.set $9 + local.set $8 local.get $2 i32.const 1 + local.get $7 local.get $8 - local.get $9 i32.sub local.tee $2 local.get $2 @@ -20545,44 +20542,44 @@ i32.const 12 i32.const 0 call $~lib/rt/__newArray - local.tee $10 + local.tee $9 i32.store - local.get $10 + local.get $9 i32.load offset=4 local.get $1 i32.load offset=4 - local.tee $11 - local.get $9 + local.tee $10 + local.get $8 i32.const 2 i32.shl i32.add - local.tee $12 + local.tee $11 local.get $2 i32.const 2 i32.shl call $~lib/memory/memory.copy - local.get $8 + local.get $7 local.get $2 - local.get $9 + local.get $8 i32.add - local.tee $9 + local.tee $8 i32.ne if - local.get $12 - local.get $9 + local.get $11 + local.get $8 i32.const 2 i32.shl - local.get $11 + local.get $10 i32.add + local.get $7 local.get $8 - local.get $9 i32.sub i32.const 2 i32.shl call $~lib/memory/memory.copy end local.get $1 - local.get $8 + local.get $7 local.get $2 i32.sub i32.store offset=12 @@ -20590,9 +20587,9 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $9 i32.store offset=4 - local.get $10 + local.get $9 i32.load offset=12 i32.const 1 i32.ne @@ -20605,7 +20602,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $9 i32.const 0 call $~lib/array/Array#__get local.tee $0 @@ -20717,55 +20714,55 @@ call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 6144 i32.store offset=8 i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 local.set $2 block $__inlined_func$~lib/array/Array#findIndex loop $for-loop|075 local.get $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $2 - local.get $8 + local.get $7 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if - local.get $1 - i32.load offset=4 local.get $0 + i32.load offset=4 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $0 local.get $1 + local.get $0 i32.const 6144 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#findIndex - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|075 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i if @@ -20779,55 +20776,55 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store local.get $0 i32.const 6176 i32.store offset=8 i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $2 i32.load offset=12 - local.set $2 + local.set $0 block $__inlined_func$~lib/array/Array#findIndex76 loop $for-loop|077 + local.get $0 local.get $2 - local.get $1 i32.load offset=12 - local.tee $8 - local.get $2 - local.get $8 + local.tee $7 + local.get $0 + local.get $7 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if - local.get $1 + local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $0 local.get $1 + local.get $2 i32.const 6176 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#findIndex76 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|077 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const 1 @@ -20843,55 +20840,55 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store local.get $0 i32.const 6208 i32.store offset=8 i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $2 i32.load offset=12 - local.set $2 + local.set $0 block $__inlined_func$~lib/array/Array#findIndex78 loop $for-loop|079 + local.get $0 local.get $2 - local.get $1 i32.load offset=12 - local.tee $8 - local.get $2 - local.get $8 + local.tee $7 + local.get $0 + local.get $7 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if - local.get $1 + local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $0 local.get $1 + local.get $2 i32.const 6208 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#findIndex78 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|079 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const -1 @@ -20907,55 +20904,55 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store local.get $0 i32.const 6240 i32.store offset=8 i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $2 i32.load offset=12 - local.set $2 + local.set $0 block $__inlined_func$~lib/array/Array#findIndex80 loop $for-loop|081 + local.get $0 local.get $2 - local.get $1 i32.load offset=12 - local.tee $8 - local.get $2 - local.get $8 + local.tee $7 + local.get $0 + local.get $7 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if - local.get $1 + local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $0 local.get $1 + local.get $2 i32.const 6240 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#findIndex80 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|081 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const -1 @@ -20987,55 +20984,55 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store local.get $0 i32.const 6272 i32.store offset=8 i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $2 i32.load offset=12 - local.set $2 + local.set $0 block $__inlined_func$~lib/array/Array#findIndex83 loop $for-loop|084 + local.get $0 local.get $2 - local.get $1 i32.load offset=12 - local.tee $8 - local.get $2 - local.get $8 + local.tee $7 + local.get $0 + local.get $7 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if - local.get $1 + local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $0 local.get $1 + local.get $2 i32.const 6272 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#findIndex83 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|084 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const -1 @@ -21078,55 +21075,55 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 6304 i32.store offset=8 i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 local.set $2 block $__inlined_func$~lib/array/Array#findIndex85 loop $for-loop|086 local.get $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $2 - local.get $8 + local.get $7 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if - local.get $1 - i32.load offset=4 local.get $0 + i32.load offset=4 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $0 local.get $1 + local.get $0 i32.const 6304 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#findIndex85 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|086 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const -1 @@ -21186,39 +21183,39 @@ i32.load offset=12 i32.const 1 i32.sub - local.set $1 + local.set $0 block $__inlined_func$~lib/array/Array#findLastIndex loop $for-loop|088 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if local.get $2 i32.load offset=4 - local.get $1 + local.get $0 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $1 + local.get $0 local.get $2 i32.const 6384 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#findLastIndex - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $for-loop|088 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 global.set $std/array/i global.get $std/array/i if @@ -21236,39 +21233,39 @@ i32.load offset=12 i32.const 1 i32.sub - local.set $1 + local.set $0 block $__inlined_func$~lib/array/Array#findLastIndex89 loop $for-loop|090 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if local.get $2 i32.load offset=4 - local.get $1 + local.get $0 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $1 + local.get $0 local.get $2 i32.const 6416 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#findLastIndex89 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $for-loop|090 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 1 @@ -21288,39 +21285,39 @@ i32.load offset=12 i32.const 1 i32.sub - local.set $1 + local.set $0 block $__inlined_func$~lib/array/Array#findLastIndex91 loop $for-loop|092 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if local.get $2 i32.load offset=4 - local.get $1 + local.get $0 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $1 + local.get $0 local.get $2 i32.const 6448 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#findLastIndex91 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $for-loop|092 end end i32.const -1 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const -1 @@ -21340,39 +21337,39 @@ i32.load offset=12 i32.const 1 i32.sub - local.set $0 + local.set $1 block $__inlined_func$~lib/array/Array#findLastIndex93 loop $for-loop|094 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $0 + local.get $1 local.get $2 i32.const 6480 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#findLastIndex93 - local.get $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $for-loop|094 end end i32.const -1 - local.set $0 + local.set $1 end - local.get $0 + local.get $1 global.set $std/array/i global.get $std/array/i i32.const -1 @@ -21388,53 +21385,53 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store local.get $0 i32.const 6512 i32.store offset=8 block $__inlined_func$~lib/array/Array#every (result i32) i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $2 i32.load offset=12 - local.set $2 + local.set $0 loop $for-loop|095 + local.get $0 local.get $2 - local.get $1 i32.load offset=12 - local.tee $8 - local.get $2 - local.get $8 + local.tee $7 + local.get $0 + local.get $7 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if - local.get $1 + local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 - local.get $0 + local.get $7 local.get $1 + local.get $2 i32.const 6512 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $__inlined_func$~lib/array/Array#every drop - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|095 end end @@ -21452,53 +21449,53 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store local.get $0 i32.const 6544 i32.store offset=8 block $__inlined_func$~lib/array/Array#every96 (result i32) i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $2 i32.load offset=12 - local.set $2 + local.set $0 loop $for-loop|097 + local.get $0 local.get $2 - local.get $1 i32.load offset=12 - local.tee $8 - local.get $2 - local.get $8 + local.tee $7 + local.get $0 + local.get $7 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if - local.get $1 + local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 - local.get $0 + local.get $7 local.get $1 + local.get $2 i32.const 6544 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $__inlined_func$~lib/array/Array#every96 drop - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|097 end end @@ -21515,53 +21512,53 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store local.get $0 i32.const 6576 i32.store offset=8 block $__inlined_func$~lib/array/Array#every98 (result i32) i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $2 i32.load offset=12 - local.set $2 + local.set $0 loop $for-loop|099 + local.get $0 local.get $2 - local.get $1 i32.load offset=12 - local.tee $8 - local.get $2 - local.get $8 + local.tee $7 + local.get $0 + local.get $7 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if - local.get $1 + local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 - local.get $0 + local.get $7 local.get $1 + local.get $2 i32.const 6576 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $__inlined_func$~lib/array/Array#every98 drop - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|099 end end @@ -21595,53 +21592,53 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store local.get $0 i32.const 6608 i32.store offset=8 block $__inlined_func$~lib/array/Array#every101 (result i32) i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $2 i32.load offset=12 - local.set $2 + local.set $0 loop $for-loop|0102 + local.get $0 local.get $2 - local.get $1 i32.load offset=12 - local.tee $8 - local.get $2 - local.get $8 + local.tee $7 + local.get $0 + local.get $7 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if - local.get $1 + local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 - local.get $0 + local.get $7 local.get $1 + local.get $2 i32.const 6608 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $__inlined_func$~lib/array/Array#every101 drop - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0102 end end @@ -21685,53 +21682,53 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 6640 i32.store offset=8 block $__inlined_func$~lib/array/Array#every103 (result i32) i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 local.set $2 loop $for-loop|0104 local.get $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $2 - local.get $8 + local.get $7 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if - local.get $1 - i32.load offset=4 local.get $0 + i32.load offset=4 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $8 - local.get $0 + local.get $7 local.get $1 + local.get $0 i32.const 6640 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) i32.eqz br_if $__inlined_func$~lib/array/Array#every103 drop - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0104 end end @@ -21780,52 +21777,52 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 6672 i32.store offset=8 block $__inlined_func$~lib/array/Array#some (result i32) i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 local.set $2 loop $for-loop|0106 local.get $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $2 - local.get $8 + local.get $7 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if - local.get $1 - i32.load offset=4 local.get $0 + i32.load offset=4 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 - local.get $0 + local.get $7 local.get $1 + local.get $0 i32.const 6672 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#some drop - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0106 end end @@ -21843,52 +21840,52 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store local.get $0 i32.const 6704 i32.store offset=8 block $__inlined_func$~lib/array/Array#some107 (result i32) i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $2 i32.load offset=12 - local.set $2 + local.set $0 loop $for-loop|0108 + local.get $0 local.get $2 - local.get $1 i32.load offset=12 - local.tee $8 - local.get $2 - local.get $8 + local.tee $7 + local.get $0 + local.get $7 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if - local.get $1 + local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 - local.get $0 + local.get $7 local.get $1 + local.get $2 i32.const 6704 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#some107 drop - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0108 end end @@ -21905,52 +21902,52 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store local.get $0 i32.const 6736 i32.store offset=8 block $__inlined_func$~lib/array/Array#some109 (result i32) i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $2 i32.load offset=12 - local.set $2 + local.set $0 loop $for-loop|0110 + local.get $0 local.get $2 - local.get $1 i32.load offset=12 - local.tee $8 - local.get $2 - local.get $8 + local.tee $7 + local.get $0 + local.get $7 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if - local.get $1 + local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 - local.get $0 + local.get $7 local.get $1 + local.get $2 i32.const 6736 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#some109 drop - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0110 end end @@ -21983,52 +21980,52 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store local.get $0 i32.const 6768 i32.store offset=8 block $__inlined_func$~lib/array/Array#some112 (result i32) i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $2 i32.load offset=12 - local.set $2 + local.set $0 loop $for-loop|0113 + local.get $0 local.get $2 - local.get $1 i32.load offset=12 - local.tee $8 - local.get $2 - local.get $8 + local.tee $7 + local.get $0 + local.get $7 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if - local.get $1 + local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 - local.get $0 + local.get $7 local.get $1 + local.get $2 i32.const 6768 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#some112 drop - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0113 end end @@ -22073,52 +22070,52 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 6800 i32.store offset=8 block $__inlined_func$~lib/array/Array#some114 (result i32) i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 local.set $2 loop $for-loop|0115 local.get $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $2 - local.get $8 + local.get $7 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if - local.get $1 - i32.load offset=4 local.get $0 + i32.load offset=4 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $8 - local.get $0 + local.get $7 local.get $1 + local.get $0 i32.const 6800 i32.load call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#some114 drop - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0115 end end @@ -22168,46 +22165,46 @@ global.set $std/array/i global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 6832 i32.store offset=8 i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 local.set $2 loop $for-loop|0117 local.get $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $2 - local.get $8 + local.get $7 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if - local.get $1 - i32.load offset=4 local.get $0 + i32.load offset=4 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $0 local.get $1 + local.get $0 i32.const 6832 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0117 end end @@ -22227,46 +22224,46 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store local.get $0 i32.const 6864 i32.store offset=8 i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $2 i32.load offset=12 - local.set $2 + local.set $0 loop $for-loop|0119 + local.get $0 local.get $2 - local.get $1 i32.load offset=12 - local.tee $8 - local.get $2 - local.get $8 + local.tee $7 + local.get $0 + local.get $7 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if - local.get $1 + local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $0 local.get $1 + local.get $2 i32.const 6864 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0119 end end @@ -22302,46 +22299,46 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $1 + local.tee $2 i32.store local.get $0 i32.const 6896 i32.store offset=8 i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $2 i32.load offset=12 - local.set $2 + local.set $0 loop $for-loop|0122 + local.get $0 local.get $2 - local.get $1 i32.load offset=12 - local.tee $8 - local.get $2 - local.get $8 + local.tee $7 + local.get $0 + local.get $7 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if - local.get $1 + local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $0 local.get $1 + local.get $2 i32.const 6896 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0122 end end @@ -22388,46 +22385,46 @@ global.set $std/array/i global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 6928 i32.store offset=8 i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 local.set $2 loop $for-loop|0124 local.get $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $2 - local.get $8 + local.get $7 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if - local.get $1 - i32.load offset=4 local.get $0 + i32.load offset=4 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $0 local.get $1 + local.get $0 i32.const 6928 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0124 end end @@ -22476,46 +22473,46 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 6960 i32.store offset=8 i32.const 0 - local.set $0 - local.get $1 + local.set $1 + local.get $0 i32.load offset=12 local.set $2 loop $for-loop|0127 local.get $2 - local.get $1 + local.get $0 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $2 - local.get $8 + local.get $7 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if - local.get $1 - i32.load offset=4 local.get $0 + i32.load offset=4 + local.get $1 i32.const 2 i32.shl i32.add i32.load i32.const 3 global.set $~argumentsLength - local.get $0 local.get $1 + local.get $0 i32.const 6960 i32.load call_indirect $0 (type $i32_i32_i32_=>_none) - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0127 end end @@ -22536,23 +22533,23 @@ unreachable end i32.const 0 - local.set $1 + local.set $0 loop $for-loop|6 - local.get $1 + local.get $0 i32.const 100 i32.lt_s if global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 call $~lib/array/Array#pop drop - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|6 end end @@ -22590,14 +22587,14 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $1 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 6992 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -22607,59 +22604,59 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $7 i32.const 0 i32.store - local.get $8 - local.get $1 + local.get $7 + local.get $0 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 2 i32.const 10 i32.const 0 call $~lib/rt/__newArray - local.tee $9 + local.tee $8 i32.store - local.get $9 + local.get $8 i32.load offset=4 - local.set $10 + local.set $9 loop $for-loop|0129 - local.get $8 - local.get $1 + local.get $7 + local.get $0 i32.load offset=12 - local.tee $11 - local.get $8 - local.get $11 + local.tee $10 + local.get $7 + local.get $10 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.tee $11 - local.get $1 + local.tee $10 + local.get $0 i32.load offset=4 i32.add i32.load - local.set $12 + local.set $11 i32.const 3 global.set $~argumentsLength + local.get $9 local.get $10 - local.get $11 i32.add - local.get $12 - local.get $0 + local.get $11 local.get $1 + local.get $0 i32.const 6992 i32.load call_indirect $0 (type $i32_i32_i32_=>_f32) f32.store - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0129 end end @@ -22667,9 +22664,9 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store offset=12 - local.get $9 + local.get $8 i32.load offset=12 i32.const 4 i32.ne @@ -22681,10 +22678,10 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $8 i32.const 0 call $~lib/array/Array#__get - local.set $7 + local.set $6 global.get $~lib/memory/__stack_pointer global.get $std/array/arr local.tee $0 @@ -22693,7 +22690,7 @@ i32.const 0 call $~lib/array/Array#__get f32.convert_i32_s - local.get $7 + local.get $6 f32.ne if i32.const 0 @@ -23033,50 +23030,50 @@ i32.const 7248 i32.store offset=8 i32.const 0 - local.set $0 - i32.const 0 local.set $1 + i32.const 0 + local.set $0 local.get $2 i32.load offset=12 - local.set $8 + local.set $7 loop $for-loop|0136 - local.get $8 + local.get $7 local.get $2 i32.load offset=12 - local.tee $9 + local.tee $8 + local.get $7 local.get $8 - local.get $9 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $9 + local.set $8 i32.const 4 global.set $~argumentsLength - local.get $1 - local.get $9 local.get $0 + local.get $8 + local.get $1 local.get $2 i32.const 7248 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0136 end end - local.get $1 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 6 @@ -23098,50 +23095,50 @@ i32.const 7280 i32.store offset=8 i32.const 0 - local.set $0 - i32.const 4 local.set $1 + i32.const 4 + local.set $0 local.get $2 i32.load offset=12 - local.set $8 + local.set $7 loop $for-loop|0138 - local.get $8 + local.get $7 local.get $2 i32.load offset=12 - local.tee $9 + local.tee $8 + local.get $7 local.get $8 - local.get $9 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $9 + local.set $8 i32.const 4 global.set $~argumentsLength - local.get $1 - local.get $9 local.get $0 + local.get $8 + local.get $1 local.get $2 i32.const 7280 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0138 end end - local.get $1 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 10 @@ -23163,50 +23160,50 @@ i32.const 7312 i32.store offset=8 i32.const 0 - local.set $0 - i32.const 0 local.set $1 + i32.const 0 + local.set $0 local.get $2 i32.load offset=12 - local.set $8 + local.set $7 loop $for-loop|0140 - local.get $8 + local.get $7 local.get $2 i32.load offset=12 - local.tee $9 + local.tee $8 + local.get $7 local.get $8 - local.get $9 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $9 + local.set $8 i32.const 4 global.set $~argumentsLength - local.get $1 - local.get $9 local.get $0 + local.get $8 + local.get $1 local.get $2 i32.const 7312 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0140 end end - local.get $1 + local.get $0 i32.eqz if i32.const 0 @@ -23225,50 +23222,50 @@ i32.const 7344 i32.store offset=8 i32.const 0 - local.set $0 - i32.const 0 local.set $1 + i32.const 0 + local.set $0 local.get $2 i32.load offset=12 - local.set $8 + local.set $7 loop $for-loop|0142 - local.get $8 + local.get $7 local.get $2 i32.load offset=12 - local.tee $9 + local.tee $8 + local.get $7 local.get $8 - local.get $9 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $9 + local.set $8 i32.const 4 global.set $~argumentsLength - local.get $1 - local.get $9 local.get $0 + local.get $8 + local.get $1 local.get $2 i32.const 7344 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0142 end end - local.get $1 + local.get $0 if i32.const 0 i32.const 1552 @@ -23286,50 +23283,50 @@ i32.const 7376 i32.store offset=8 i32.const 0 - local.set $0 - i32.const 0 local.set $1 + i32.const 0 + local.set $0 local.get $2 i32.load offset=12 - local.set $8 + local.set $7 loop $for-loop|0144 - local.get $8 + local.get $7 local.get $2 i32.load offset=12 - local.tee $9 + local.tee $8 + local.get $7 local.get $8 - local.get $9 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $9 + local.set $8 i32.const 4 global.set $~argumentsLength - local.get $1 - local.get $9 local.get $0 + local.get $8 + local.get $1 local.get $2 i32.const 7376 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0144 end end - local.get $1 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 6 @@ -23367,50 +23364,50 @@ i32.const 7408 i32.store offset=8 i32.const 0 - local.set $0 - i32.const 0 local.set $1 + i32.const 0 + local.set $0 local.get $2 i32.load offset=12 - local.set $8 + local.set $7 loop $for-loop|0147 - local.get $8 + local.get $7 local.get $2 i32.load offset=12 - local.tee $9 + local.tee $8 + local.get $7 local.get $8 - local.get $9 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $9 + local.set $8 i32.const 4 global.set $~argumentsLength - local.get $1 - local.get $9 local.get $0 + local.get $8 + local.get $1 local.get $2 i32.const 7408 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0147 end end - local.get $1 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 10 @@ -23459,50 +23456,50 @@ i32.const 7440 i32.store offset=8 i32.const 0 - local.set $0 - i32.const 0 local.set $1 + i32.const 0 + local.set $0 local.get $2 i32.load offset=12 - local.set $8 + local.set $7 loop $for-loop|0149 - local.get $8 + local.get $7 local.get $2 i32.load offset=12 - local.tee $9 + local.tee $8 + local.get $7 local.get $8 - local.get $9 i32.lt_s select - local.get $0 + local.get $1 i32.gt_s if local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $9 + local.set $8 i32.const 4 global.set $~argumentsLength - local.get $1 - local.get $9 local.get $0 + local.get $8 + local.get $1 local.get $2 i32.const 7440 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0149 end end - local.get $1 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 1 @@ -23555,43 +23552,43 @@ i32.const 7472 i32.store offset=8 i32.const 0 - local.set $1 + local.set $0 local.get $2 i32.load offset=12 i32.const 1 i32.sub - local.set $0 + local.set $1 loop $for-loop|0151 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $1 - local.get $8 local.get $0 + local.get $7 + local.get $1 local.get $2 i32.const 7472 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $for-loop|0151 end end - local.get $1 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 6 @@ -23613,43 +23610,43 @@ i32.const 7504 i32.store offset=8 i32.const 4 - local.set $1 + local.set $0 local.get $2 i32.load offset=12 i32.const 1 i32.sub - local.set $0 + local.set $1 loop $for-loop|0153 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $1 - local.get $8 local.get $0 + local.get $7 + local.get $1 local.get $2 i32.const 7504 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $for-loop|0153 end end - local.get $1 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 10 @@ -23671,43 +23668,43 @@ i32.const 7536 i32.store offset=8 i32.const 0 - local.set $1 + local.set $0 local.get $2 i32.load offset=12 i32.const 1 i32.sub - local.set $0 + local.set $1 loop $for-loop|0155 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $1 - local.get $8 local.get $0 + local.get $7 + local.get $1 local.get $2 i32.const 7536 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $for-loop|0155 end end - local.get $1 + local.get $0 i32.eqz if i32.const 0 @@ -23726,43 +23723,43 @@ i32.const 7568 i32.store offset=8 i32.const 0 - local.set $1 + local.set $0 local.get $2 i32.load offset=12 i32.const 1 i32.sub - local.set $0 + local.set $1 loop $for-loop|0157 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $1 - local.get $8 local.get $0 + local.get $7 + local.get $1 local.get $2 i32.const 7568 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $for-loop|0157 end end - local.get $1 + local.get $0 if i32.const 0 i32.const 1552 @@ -23780,43 +23777,43 @@ i32.const 7600 i32.store offset=8 i32.const 0 - local.set $1 + local.set $0 local.get $2 i32.load offset=12 i32.const 1 i32.sub - local.set $0 + local.set $1 loop $for-loop|0159 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $1 - local.get $8 local.get $0 + local.get $7 + local.get $1 local.get $2 i32.const 7600 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $for-loop|0159 end end - local.get $1 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 6 @@ -23854,43 +23851,43 @@ i32.const 7632 i32.store offset=8 i32.const 0 - local.set $1 + local.set $0 local.get $2 i32.load offset=12 i32.const 1 i32.sub - local.set $0 + local.set $1 loop $for-loop|0162 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $1 - local.get $8 local.get $0 + local.get $7 + local.get $1 local.get $2 i32.const 7632 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $for-loop|0162 end end - local.get $1 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 10 @@ -23939,43 +23936,43 @@ i32.const 7664 i32.store offset=8 i32.const 0 - local.set $1 + local.set $0 local.get $2 i32.load offset=12 i32.const 1 i32.sub - local.set $0 + local.set $1 loop $for-loop|0164 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $8 + local.set $7 i32.const 4 global.set $~argumentsLength - local.get $1 - local.get $8 local.get $0 + local.get $7 + local.get $1 local.get $2 i32.const 7664 i32.load call_indirect $0 (type $i32_i32_i32_i32_=>_i32) - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 1 i32.sub - local.set $0 + local.set $1 br $for-loop|0164 end end - local.get $1 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 6 @@ -24473,12 +24470,12 @@ i32.const 11 i32.const 8112 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=112 i32.const 0 global.set $~argumentsLength i32.const 0 - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -24499,16 +24496,16 @@ unreachable end i32.const 8208 - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8208 i32.store end - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 - i32.load offset=12 local.get $1 + i32.load offset=12 + local.get $0 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer i32.const 4 @@ -24525,39 +24522,39 @@ i32.store offset=8 block $__inlined_func$std/array/isArraysEqual (result i32) i32.const 0 - local.set $1 + local.set $0 i32.const 0 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 local.get $2 i32.load offset=12 i32.ne br_if $__inlined_func$std/array/isArraysEqual drop i32.const 1 - local.get $0 + local.get $1 local.get $2 i32.eq br_if $__inlined_func$std/array/isArraysEqual drop loop $for-loop|028 - local.get $1 - local.get $8 + local.get $0 + local.get $7 i32.lt_s if - local.get $0 local.get $1 + local.get $0 call $~lib/array/Array#__get - local.tee $6 - local.get $6 + local.tee $5 + local.get $5 f64.ne if (result i32) local.get $2 - local.get $1 + local.get $0 call $~lib/array/Array#__get - local.tee $6 - local.get $6 + local.tee $5 + local.get $5 f64.ne else i32.const 0 @@ -24565,20 +24562,20 @@ i32.eqz if i32.const 0 - local.get $0 local.get $1 + local.get $0 call $~lib/array/Array#__get local.get $2 - local.get $1 + local.get $0 call $~lib/array/Array#__get f64.ne br_if $__inlined_func$std/array/isArraysEqual drop end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|028 end end @@ -24599,12 +24596,12 @@ i32.const 3 i32.const 8336 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=116 i32.const 0 global.set $~argumentsLength i32.const 0 - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -24625,16 +24622,16 @@ unreachable end i32.const 8384 - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8384 i32.store end - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 - i32.load offset=12 local.get $1 + i32.load offset=12 + local.get $0 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer i32.const 4 @@ -24645,12 +24642,12 @@ i32.const 3 i32.const 8416 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=8 local.get $0 + i32.store offset=8 local.get $1 + local.get $0 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -24711,7 +24708,7 @@ i32.const 3 i32.const 8624 call $~lib/rt/__newArray - local.tee $8 + local.tee $7 i32.store offset=128 global.get $~lib/memory/__stack_pointer i32.const 2 @@ -24719,7 +24716,7 @@ i32.const 3 i32.const 8656 call $~lib/rt/__newArray - local.tee $9 + local.tee $8 i32.store offset=132 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -24727,7 +24724,7 @@ i32.const 3 i32.const 8688 call $~lib/rt/__newArray - local.tee $10 + local.tee $9 i32.store offset=136 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -24735,17 +24732,17 @@ i32.const 3 i32.const 8736 call $~lib/rt/__newArray - local.tee $11 + local.tee $10 i32.store offset=140 global.get $~lib/memory/__stack_pointer i32.const 64 call $std/array/createReverseOrderedArray - local.tee $12 + local.tee $11 i32.store offset=144 global.get $~lib/memory/__stack_pointer i32.const 128 call $std/array/createReverseOrderedArray - local.tee $13 + local.tee $12 i32.store offset=148 global.get $~lib/memory/__stack_pointer i32.const 1024 @@ -24760,11 +24757,11 @@ global.get $~lib/memory/__stack_pointer i32.const 512 call $std/array/createRandomOrderedArray - local.tee $14 + local.tee $13 i32.store offset=160 local.get $2 call $std/array/assertSortedDefault - local.get $8 + local.get $7 call $std/array/assertSortedDefault i32.const 1 i32.const 2 @@ -24775,7 +24772,7 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.store offset=8 - local.get $8 + local.get $7 local.get $2 i32.const 0 call $std/array/isArraysEqual @@ -24788,7 +24785,7 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $8 call $std/array/assertSortedDefault i32.const 2 i32.const 2 @@ -24799,7 +24796,7 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.store offset=8 - local.get $9 + local.get $8 local.get $2 i32.const 0 call $std/array/isArraysEqual @@ -24812,10 +24809,10 @@ call $~lib/builtins/abort unreachable end - local.get $10 + local.get $9 call $std/array/assertSortedDefault + local.get $9 local.get $10 - local.get $11 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -24827,10 +24824,10 @@ call $~lib/builtins/abort unreachable end - local.get $12 + local.get $11 call $std/array/assertSortedDefault - local.get $12 local.get $11 + local.get $10 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -24842,10 +24839,10 @@ call $~lib/builtins/abort unreachable end - local.get $13 + local.get $12 call $std/array/assertSortedDefault - local.get $13 - local.get $11 + local.get $12 + local.get $10 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -24860,7 +24857,7 @@ local.get $0 call $std/array/assertSortedDefault local.get $0 - local.get $11 + local.get $10 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -24875,7 +24872,7 @@ local.get $1 call $std/array/assertSortedDefault local.get $1 - local.get $11 + local.get $10 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -24887,7 +24884,7 @@ call $~lib/builtins/abort unreachable end - local.get $14 + local.get $13 call $std/array/assertSortedDefault call $std/array/assertStableSortedForComplexObjects global.get $~lib/memory/__stack_pointer @@ -24971,23 +24968,23 @@ i32.const 32 i32.const 0 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $7 i32.store offset=4 - local.get $8 + local.get $7 i32.const 0 i32.const 32 call $~lib/memory/memory.fill local.get $2 - local.get $8 + local.get $7 i32.store - local.get $8 + local.get $7 if local.get $2 - local.get $8 + local.get $7 call $byn-split-outlined-A$~lib/rt/itcms/__link_0 end local.get $2 - local.get $8 + local.get $7 i32.store offset=4 local.get $2 i32.const 32 @@ -25043,7 +25040,7 @@ call $std/array/assertSorted<~lib/array/Array> global.get $~lib/memory/__stack_pointer i32.const 0 - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -25090,24 +25087,24 @@ i32.const 2048 i32.const 0 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $7 i32.store offset=4 - local.get $8 + local.get $7 i32.const 0 i32.const 2048 call $~lib/memory/memory.fill local.get $3 - local.get $8 + local.get $7 i32.store - local.get $8 + local.get $7 if local.get $3 - local.get $8 + local.get $7 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $3 - local.get $8 + local.get $7 i32.store offset=4 local.get $3 i32.const 2048 @@ -25123,7 +25120,7 @@ local.get $3 i32.store loop $for-loop|00 - local.get $1 + local.get $0 i32.const 512 i32.lt_s if @@ -25147,7 +25144,7 @@ i32.store local.get $2 i32.const 511 - local.get $1 + local.get $0 i32.sub i32.store global.get $~lib/memory/__stack_pointer @@ -25158,13 +25155,13 @@ local.get $2 i32.store offset=4 local.get $3 - local.get $1 + local.get $0 local.get $2 call $~lib/array/Array<~lib/array/Array>#__set - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|00 end end @@ -25186,7 +25183,7 @@ i32.const 31 i32.const 9264 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=160 global.get $~lib/memory/__stack_pointer i32.const 7 @@ -25199,7 +25196,7 @@ i32.const 1 global.set $~argumentsLength i32.const 0 - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -25222,7 +25219,7 @@ unreachable end i32.const 9360 - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 9360 i32.store @@ -25238,15 +25235,15 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $0 + local.get $1 i32.load offset=4 - local.get $0 - i32.load offset=12 local.get $1 + i32.load offset=12 + local.get $0 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer local.tee $2 - local.get $0 + local.get $1 i32.store block $__inlined_func$std/array/isSorted<~lib/string/String|null> (result i32) local.get $2 @@ -25262,35 +25259,35 @@ i64.store i32.const 1 local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.set $8 + local.set $7 loop $for-loop|054 local.get $2 - local.get $8 + local.get $7 i32.lt_s if - local.get $0 + local.get $1 local.get $2 i32.const 1 i32.sub call $~lib/array/Array#__get - local.set $9 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store - local.get $0 + local.get $1 local.get $2 call $~lib/array/Array#__get - local.set $10 + local.set $9 global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $9 i32.store offset=4 i32.const 2 global.set $~argumentsLength + local.get $8 local.get $9 - local.get $10 - local.get $1 + local.get $0 i32.load call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 @@ -25335,7 +25332,7 @@ global.set $~lib/memory/__stack_pointer block $__inlined_func$std/array/isArraysEqual<~lib/string/String|null> (result i32) i32.const 0 - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -25349,45 +25346,45 @@ i64.store block $folding-inner1 block $folding-inner01 - local.get $0 + local.get $1 i32.load offset=12 local.tee $2 local.get $3 i32.load offset=12 i32.ne br_if $folding-inner01 - local.get $0 + local.get $1 local.get $3 i32.eq br_if $folding-inner1 loop $for-loop|042 - local.get $1 + local.get $0 local.get $2 i32.lt_s if - local.get $0 local.get $1 + local.get $0 call $~lib/array/Array#__get - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store local.get $3 - local.get $1 + local.get $0 call $~lib/array/Array#__get - local.set $9 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store offset=4 + local.get $7 local.get $8 - local.get $9 call $~lib/string/String.__eq i32.eqz br_if $folding-inner01 - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|042 end end @@ -25417,6 +25414,8 @@ end global.get $~lib/memory/__stack_pointer local.tee $0 + i32.const 0 + local.set $2 local.get $0 i32.const 8 i32.sub @@ -25436,7 +25435,7 @@ local.tee $8 i32.store loop $for-loop|044 - local.get $4 + local.get $2 i32.const 400 i32.lt_s if @@ -25456,15 +25455,15 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 i32.const 9232 - local.set $1 - local.get $0 + local.set $0 + local.get $1 i32.const 9232 i32.store loop $for-loop|04 @@ -25513,16 +25512,16 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $0 + local.set $1 br $__inlined_func$~lib/string/String#charAt end global.get $~lib/memory/__stack_pointer i32.const 2 i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 local.get $11 i32.const 1 i32.shl @@ -25536,13 +25535,13 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 local.get $10 - local.get $1 local.get $0 + local.get $1 call $~lib/string/String.__concat - local.tee $1 + local.tee $0 i32.store local.get $3 i32.const 1 @@ -25556,16 +25555,16 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 local.get $8 - local.get $4 - local.get $1 + local.get $2 + local.get $0 call $~lib/array/Array<~lib/array/Array>#__set - local.get $4 + local.get $2 i32.const 1 i32.add - local.set $4 + local.set $2 br $for-loop|044 end end @@ -25578,7 +25577,7 @@ i32.const 1 global.set $~argumentsLength i32.const 0 - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -25601,13 +25600,13 @@ unreachable end i32.const 9392 - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 9392 i32.store end local.get $8 - local.get $0 + local.get $1 call $std/array/assertSorted<~lib/array/Array> global.get $~lib/memory/__stack_pointer i32.const 4 @@ -25620,23 +25619,23 @@ call $~lib/rt/__newArray local.set $0 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 local.get $0 i32.store offset=164 - local.get $2 + local.get $1 i32.const 9520 i32.store offset=168 local.get $0 i32.load offset=4 - local.set $4 + local.set $2 local.get $0 i32.load offset=12 - local.set $0 + local.set $7 i32.const 0 - local.set $1 + local.set $0 i32.const 0 local.set $3 - local.get $2 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -25648,10 +25647,10 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/string/joinBooleanArray - local.get $0 + local.get $7 i32.const 1 i32.sub - local.tee $2 + local.tee $7 i32.const 0 i32.lt_s if @@ -25660,23 +25659,23 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $0 + local.set $1 br $__inlined_func$~lib/util/string/joinBooleanArray end block $folding-inner06 - local.get $2 + local.get $7 i32.eqz if i32.const 9456 i32.const 9488 - local.get $4 + local.get $2 i32.load8_u select - local.set $0 + local.set $1 br $folding-inner06 end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $7 i32.const 9516 i32.load i32.const 1 @@ -25692,15 +25691,15 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store loop $for-loop|18 - local.get $2 local.get $3 - i32.gt_s + local.get $7 + i32.lt_s if + local.get $2 local.get $3 - local.get $4 i32.add i32.load8_u local.tee $10 @@ -25708,10 +25707,10 @@ i32.const 4 i32.add local.set $11 - local.get $1 + local.get $0 i32.const 1 i32.shl - local.get $0 + local.get $1 i32.add i32.const 9456 i32.const 9488 @@ -25721,26 +25720,26 @@ i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $1 + local.get $0 local.get $11 i32.add - local.set $1 + local.set $0 local.get $8 if - local.get $1 + local.get $0 i32.const 1 i32.shl - local.get $0 + local.get $1 i32.add i32.const 9520 local.get $8 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $1 + local.get $0 local.get $8 i32.add - local.set $1 + local.set $0 end local.get $3 i32.const 1 @@ -25750,7 +25749,7 @@ end end local.get $2 - local.get $4 + local.get $7 i32.add i32.load8_u local.tee $2 @@ -25758,10 +25757,10 @@ i32.const 4 i32.add local.set $3 - local.get $1 + local.get $0 i32.const 1 i32.shl - local.get $0 + local.get $1 i32.add i32.const 9456 i32.const 9488 @@ -25772,16 +25771,16 @@ i32.shl call $~lib/memory/memory.copy local.get $9 - local.get $1 + local.get $0 local.get $3 i32.add - local.tee $1 + local.tee $0 i32.gt_s if - local.get $0 local.get $1 + local.get $0 call $~lib/string/String#substring - local.set $0 + local.set $1 br $folding-inner06 end global.get $~lib/memory/__stack_pointer @@ -25796,13 +25795,13 @@ global.set $~lib/memory/__stack_pointer end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store + local.tee $0 local.get $1 + i32.store + local.get $0 i32.const 9552 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9552 call $~lib/string/String.__eq i32.eqz @@ -26230,23 +26229,23 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 9520 i32.store local.get $0 i32.load offset=4 - local.set $4 + local.set $2 local.get $0 i32.load offset=12 - local.set $0 + local.set $7 i32.const 0 - local.set $1 + local.set $0 i32.const 0 local.set $3 - local.get $2 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -26258,10 +26257,10 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/string/joinIntegerArray - local.get $0 + local.get $7 i32.const 1 i32.sub - local.tee $2 + local.tee $7 i32.const 0 i32.lt_s if @@ -26270,21 +26269,21 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $0 + local.set $1 br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner010 - local.get $2 + local.get $7 i32.eqz if - local.get $4 + local.get $2 i32.load8_s call $~lib/util/number/itoa32 - local.set $0 + local.set $1 br $folding-inner010 end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $7 i32.const 9516 i32.load i32.const 1 @@ -26300,42 +26299,42 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store loop $for-loop|012 - local.get $2 local.get $3 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $1 + local.get $0 i32.const 1 i32.shl - local.get $0 + local.get $1 i32.add + local.get $2 local.get $3 - local.get $4 i32.add i32.load8_s call $~lib/util/number/itoa_buffered - local.get $1 + local.get $0 i32.add - local.set $1 + local.set $0 local.get $8 if - local.get $1 + local.get $0 i32.const 1 i32.shl - local.get $0 + local.get $1 i32.add i32.const 9520 local.get $8 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $1 + local.get $0 local.get $8 i32.add - local.set $1 + local.set $0 end local.get $3 i32.const 1 @@ -26345,25 +26344,25 @@ end end local.get $9 - local.get $1 + local.get $0 i32.const 1 i32.shl - local.get $0 + local.get $1 i32.add local.get $2 - local.get $4 + local.get $7 i32.add i32.load8_s call $~lib/util/number/itoa_buffered - local.get $1 + local.get $0 i32.add - local.tee $1 + local.tee $0 i32.gt_s if - local.get $0 local.get $1 + local.get $0 call $~lib/string/String#substring - local.set $0 + local.set $1 br $folding-inner010 end global.get $~lib/memory/__stack_pointer @@ -26382,13 +26381,13 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store + local.tee $0 local.get $1 + i32.store + local.get $0 i32.const 13584 i32.store offset=8 - local.get $0 + local.get $1 i32.const 13584 call $~lib/string/String.__eq i32.eqz @@ -26419,23 +26418,23 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 9520 i32.store local.get $0 i32.load offset=4 - local.set $4 + local.set $2 local.get $0 i32.load offset=12 - local.set $0 + local.set $7 i32.const 0 - local.set $1 + local.set $0 i32.const 0 local.set $3 - local.get $2 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -26447,10 +26446,10 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/string/joinIntegerArray - local.get $0 + local.get $7 i32.const 1 i32.sub - local.tee $2 + local.tee $7 i32.const 0 i32.lt_s if @@ -26459,21 +26458,21 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $0 + local.set $1 br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner015 - local.get $2 + local.get $7 i32.eqz if - local.get $4 + local.get $2 i32.load16_u call $~lib/util/number/utoa32 - local.set $0 + local.set $1 br $folding-inner015 end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $7 i32.const 9516 i32.load i32.const 1 @@ -26489,44 +26488,44 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store loop $for-loop|017 - local.get $2 local.get $3 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $1 + local.get $0 i32.const 1 i32.shl - local.get $0 + local.get $1 i32.add local.get $3 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u call $~lib/util/number/itoa_buffered - local.get $1 + local.get $0 i32.add - local.set $1 + local.set $0 local.get $8 if - local.get $1 + local.get $0 i32.const 1 i32.shl - local.get $0 + local.get $1 i32.add i32.const 9520 local.get $8 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $1 + local.get $0 local.get $8 i32.add - local.set $1 + local.set $0 end local.get $3 i32.const 1 @@ -26536,27 +26535,27 @@ end end local.get $9 - local.get $1 + local.get $0 i32.const 1 i32.shl - local.get $0 + local.get $1 i32.add - local.get $2 + local.get $7 i32.const 1 i32.shl - local.get $4 + local.get $2 i32.add i32.load16_u call $~lib/util/number/itoa_buffered - local.get $1 + local.get $0 i32.add - local.tee $1 + local.tee $0 i32.gt_s if - local.get $0 local.get $1 + local.get $0 call $~lib/string/String#substring - local.set $0 + local.set $1 br $folding-inner015 end global.get $~lib/memory/__stack_pointer @@ -26575,13 +26574,13 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store + local.tee $0 local.get $1 + i32.store + local.get $0 i32.const 13648 i32.store offset=8 - local.get $0 + local.get $1 i32.const 13648 call $~lib/string/String.__eq i32.eqz @@ -26663,23 +26662,23 @@ i32.lt_s br_if $folding-inner3 global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store - local.get $2 + local.get $1 i32.const 9520 i32.store local.get $0 i32.load offset=4 - local.set $4 + local.set $2 local.get $0 i32.load offset=12 - local.set $0 + local.set $7 i32.const 0 - local.set $1 + local.set $0 i32.const 0 local.set $3 - local.get $2 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -26691,10 +26690,10 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/string/joinIntegerArray - local.get $0 + local.get $7 i32.const 1 i32.sub - local.tee $2 + local.tee $7 i32.const 0 i32.lt_s if @@ -26703,17 +26702,17 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $0 + local.set $1 br $__inlined_func$~lib/util/string/joinIntegerArray end block $folding-inner019 - local.get $2 + local.get $7 i32.eqz if - local.get $4 + local.get $2 i64.load i64.extend32_s - local.set $5 + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -26726,7 +26725,7 @@ i32.const 0 i32.store block $__inlined_func$~lib/util/number/itoa64 - local.get $5 + local.get $4 i64.eqz if global.get $~lib/memory/__stack_pointer @@ -26734,155 +26733,155 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9824 - local.set $0 + local.set $1 br $__inlined_func$~lib/util/number/itoa64 end i64.const 0 - local.get $5 + local.get $4 i64.sub - local.get $5 - local.get $5 + local.get $4 + local.get $4 i64.const 63 i64.shr_u i32.wrap_i64 - local.tee $1 + local.tee $0 select - local.tee $5 + local.tee $4 i64.const 4294967295 i64.le_u if global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.wrap_i64 local.tee $2 - local.tee $0 + local.tee $1 i32.const 100000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 100 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $0 + local.get $1 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $0 + local.get $1 i32.const 1000 i32.ge_u i32.add end else - local.get $0 + local.get $1 i32.const 10000000 i32.lt_u if (result i32) - local.get $0 + local.get $1 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $0 + local.get $1 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $0 + local.get $1 i32.const 100000000 i32.ge_u i32.add end end - local.get $1 + local.get $0 i32.add local.tee $3 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 local.get $2 local.get $3 call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i64.const 1000000000000000 i64.lt_u if (result i32) - local.get $5 + local.get $4 i64.const 1000000000000 i64.lt_u if (result i32) - local.get $5 + local.get $4 i64.const 100000000000 i64.ge_u i32.const 10 i32.add - local.get $5 + local.get $4 i64.const 10000000000 i64.ge_u i32.add else - local.get $5 + local.get $4 i64.const 100000000000000 i64.ge_u i32.const 13 i32.add - local.get $5 + local.get $4 i64.const 10000000000000 i64.ge_u i32.add end else - local.get $5 + local.get $4 i64.const 100000000000000000 i64.lt_u if (result i32) - local.get $5 + local.get $4 i64.const 10000000000000000 i64.ge_u i32.const 16 i32.add else - local.get $5 + local.get $4 i64.const -8446744073709551616 i64.ge_u i32.const 18 i32.add - local.get $5 + local.get $4 i64.const 1000000000000000000 i64.ge_u i32.add end end - local.get $1 + local.get $0 i32.add local.tee $2 i32.const 1 i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store - local.get $0 - local.get $5 + local.get $1 + local.get $4 local.get $2 call $~lib/util/number/utoa64_dec_lut end - local.get $1 + local.get $0 if - local.get $0 + local.get $1 i32.const 45 i32.store16 end @@ -26894,7 +26893,7 @@ br $folding-inner019 end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $7 i32.const 9516 i32.load i32.const 1 @@ -26910,44 +26909,44 @@ i32.shl i32.const 1 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store loop $for-loop|021 - local.get $2 local.get $3 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $1 + local.get $0 i32.const 1 i32.shl - local.get $0 + local.get $1 i32.add local.get $3 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load call $~lib/util/number/itoa_buffered - local.get $1 + local.get $0 i32.add - local.set $1 + local.set $0 local.get $8 if - local.get $1 + local.get $0 i32.const 1 i32.shl - local.get $0 + local.get $1 i32.add i32.const 9520 local.get $8 i32.const 1 i32.shl call $~lib/memory/memory.copy - local.get $1 + local.get $0 local.get $8 i32.add - local.set $1 + local.set $0 end local.get $3 i32.const 1 @@ -26957,27 +26956,27 @@ end end local.get $9 - local.get $1 + local.get $0 i32.const 1 i32.shl - local.get $0 + local.get $1 i32.add - local.get $2 + local.get $7 i32.const 3 i32.shl - local.get $4 + local.get $2 i32.add i64.load call $~lib/util/number/itoa_buffered - local.get $1 + local.get $0 i32.add - local.tee $1 + local.tee $0 i32.gt_s if - local.get $0 local.get $1 + local.get $0 call $~lib/string/String#substring - local.set $0 + local.set $1 br $folding-inner019 end global.get $~lib/memory/__stack_pointer @@ -26996,13 +26995,13 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $0 - i32.store + local.tee $0 local.get $1 + i32.store + local.get $0 i32.const 13888 i32.store offset=8 - local.get $0 + local.get $1 i32.const 13888 call $~lib/string/String.__eq i32.eqz @@ -27147,7 +27146,7 @@ local.get $1 i32.const 1 i32.sub - local.tee $0 + local.tee $1 i32.const 0 i32.lt_s if @@ -27156,10 +27155,10 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $1 + local.set $0 br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> end - local.get $0 + local.get $1 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -27174,7 +27173,7 @@ else i32.const 9232 end - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add @@ -27182,7 +27181,7 @@ br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> end i32.const 9232 - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 9232 i32.store offset=4 @@ -27190,9 +27189,9 @@ i32.load i32.const 1 i32.shr_u - local.set $4 + local.set $7 loop $for-loop|024 - local.get $0 + local.get $1 local.get $3 i32.gt_s if @@ -27214,19 +27213,19 @@ global.get $~lib/memory/__stack_pointer local.get $8 i32.store offset=8 - local.get $1 + local.get $0 local.get $8 call $~lib/string/String.__concat - local.tee $1 + local.tee $0 i32.store offset=4 end - local.get $4 + local.get $7 if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 9520 call $~lib/string/String.__concat - local.tee $1 + local.tee $0 i32.store offset=4 end local.get $3 @@ -27237,27 +27236,27 @@ end end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 2 i32.shl local.get $2 i32.add i32.load - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 if global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 call $~lib/array/Array#toString - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 call $~lib/string/String.__concat - local.tee $1 + local.tee $0 i32.store offset=4 end global.get $~lib/memory/__stack_pointer @@ -27270,13 +27269,13 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 14304 i32.store offset=8 - local.get $1 + local.get $0 i32.const 14304 call $~lib/string/String.__eq i32.eqz @@ -27362,7 +27361,7 @@ local.get $1 i32.const 1 i32.sub - local.tee $0 + local.tee $1 i32.const 0 i32.lt_s if @@ -27371,10 +27370,10 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $1 + local.set $0 br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> end - local.get $0 + local.get $1 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -27389,7 +27388,7 @@ else i32.const 9232 end - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add @@ -27397,7 +27396,7 @@ br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array> end i32.const 9232 - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 9232 i32.store offset=4 @@ -27405,9 +27404,9 @@ i32.load i32.const 1 i32.shr_u - local.set $4 + local.set $7 loop $for-loop|027 - local.get $0 + local.get $1 local.get $3 i32.gt_s if @@ -27429,19 +27428,19 @@ global.get $~lib/memory/__stack_pointer local.get $8 i32.store offset=8 - local.get $1 + local.get $0 local.get $8 call $~lib/string/String.__concat - local.tee $1 + local.tee $0 i32.store offset=4 end - local.get $4 + local.get $7 if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 9520 call $~lib/string/String.__concat - local.tee $1 + local.tee $0 i32.store offset=4 end local.get $3 @@ -27452,27 +27451,27 @@ end end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 2 i32.shl local.get $2 i32.add i32.load - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 if global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 call $~lib/array/Array#toString - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 call $~lib/string/String.__concat - local.tee $1 + local.tee $0 i32.store offset=4 end global.get $~lib/memory/__stack_pointer @@ -27485,13 +27484,13 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 14304 i32.store offset=8 - local.get $1 + local.get $0 i32.const 14304 call $~lib/string/String.__eq i32.eqz @@ -27585,7 +27584,7 @@ local.get $1 i32.const 1 i32.sub - local.tee $0 + local.tee $1 i32.const 0 i32.lt_s if @@ -27594,10 +27593,10 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 9232 - local.set $1 + local.set $0 br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array<~lib/array/Array>> end - local.get $0 + local.get $1 i32.eqz if global.get $~lib/memory/__stack_pointer @@ -27612,7 +27611,7 @@ else i32.const 9232 end - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add @@ -27620,7 +27619,7 @@ br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array<~lib/array/Array>> end i32.const 9232 - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 9232 i32.store offset=4 @@ -27628,9 +27627,9 @@ i32.load i32.const 1 i32.shr_u - local.set $4 + local.set $7 loop $for-loop|030 - local.get $0 + local.get $1 local.get $3 i32.gt_s if @@ -27652,19 +27651,19 @@ global.get $~lib/memory/__stack_pointer local.get $8 i32.store offset=8 - local.get $1 + local.get $0 local.get $8 call $~lib/string/String.__concat - local.tee $1 + local.tee $0 i32.store offset=4 end - local.get $4 + local.get $7 if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 9520 call $~lib/string/String.__concat - local.tee $1 + local.tee $0 i32.store offset=4 end local.get $3 @@ -27675,27 +27674,27 @@ end end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.const 2 i32.shl local.get $2 i32.add i32.load - local.tee $0 + local.tee $1 i32.store - local.get $0 + local.get $1 if global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 call $~lib/array/Array<~lib/array/Array>#toString - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 local.get $1 + i32.store offset=8 local.get $0 + local.get $1 call $~lib/string/String.__concat - local.tee $1 + local.tee $0 i32.store offset=4 end global.get $~lib/memory/__stack_pointer @@ -27708,13 +27707,13 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.tee $0 - local.get $1 - i32.store + local.tee $1 local.get $0 + i32.store + local.get $1 i32.const 13008 i32.store offset=8 - local.get $1 + local.get $0 i32.const 13008 call $~lib/string/String.__eq i32.eqz @@ -27777,9 +27776,9 @@ global.get $~lib/memory/__stack_pointer local.get $1 call $~lib/array/Array<~lib/array/Array>#flat - local.tee $0 + local.tee $1 i32.store offset=128 - local.get $0 + local.get $1 i32.load offset=12 i32.const 10 i32.ne @@ -27792,16 +27791,16 @@ unreachable end i32.const 0 - local.set $1 + local.set $0 loop $for-loop|7 - local.get $1 + local.get $0 i32.const 10 i32.lt_s if - local.get $0 local.get $1 + local.get $0 call $~lib/array/Array#__get - local.get $1 + local.get $0 i32.ne if i32.const 0 @@ -27811,10 +27810,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|7 end end @@ -27825,13 +27824,13 @@ i32.const 42 i32.const 0 call $~lib/rt/__newArray - local.tee $4 + local.tee $1 i32.store offset=160 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.load offset=4 i32.store offset=140 - local.get $4 + local.get $1 i32.const 0 i32.const 1 i32.const 2 @@ -27839,7 +27838,7 @@ i32.const 14608 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $4 + local.get $1 i32.const 1 i32.const 3 i32.const 2 @@ -27847,7 +27846,7 @@ i32.const 14704 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $4 + local.get $1 i32.const 2 i32.const 3 i32.const 2 @@ -27855,7 +27854,7 @@ i32.const 14832 call $~lib/rt/__newArray call $~lib/array/Array#__uset - local.get $4 + local.get $1 i32.const 3 i32.const 1 i32.const 2 @@ -27864,13 +27863,13 @@ call $~lib/rt/__newArray call $~lib/array/Array#__uset local.get $0 - local.get $4 + local.get $1 i32.store offset=140 global.get $~lib/memory/__stack_pointer i32.const 0 local.set $3 i32.const 0 - local.set $1 + local.set $0 i32.const 0 local.set $2 global.get $~lib/memory/__stack_pointer @@ -27884,16 +27883,16 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - local.get $4 + local.get $1 i32.load offset=4 local.set $8 - local.get $4 + local.get $1 i32.load offset=12 - local.set $4 + local.set $1 loop $for-loop|0217 + local.get $1 local.get $3 - local.get $4 - i32.lt_s + i32.gt_s if local.get $3 i32.const 2 @@ -27908,9 +27907,9 @@ else i32.const 0 end - local.get $1 + local.get $0 i32.add - local.set $1 + local.set $0 local.get $3 i32.const 1 i32.add @@ -27919,7 +27918,7 @@ end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.const 2 i32.shl local.tee $3 @@ -27934,7 +27933,7 @@ local.tee $10 i32.store offset=4 local.get $10 - local.get $1 + local.get $0 i32.store offset=12 local.get $10 local.get $3 @@ -27955,9 +27954,9 @@ i32.const 0 local.set $3 loop $for-loop|1218 + local.get $1 local.get $3 - local.get $4 - i32.lt_s + i32.gt_s if local.get $3 i32.const 2 @@ -27993,7 +27992,7 @@ i32.const 0 local.set $3 loop $for-loop|2219 - local.get $1 + local.get $0 local.get $3 i32.gt_s if @@ -28003,10 +28002,10 @@ local.get $9 i32.add i32.load - local.tee $2 + local.tee $1 if local.get $9 - local.get $2 + local.get $1 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -28029,7 +28028,7 @@ i32.const 31 i32.const 14928 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store offset=148 local.get $10 i32.load offset=12 @@ -28044,22 +28043,22 @@ unreachable end i32.const 0 - local.set $1 + local.set $0 loop $for-loop|8 - local.get $0 - i32.load offset=12 local.get $1 + i32.load offset=12 + local.get $0 i32.gt_s if local.get $10 - local.get $1 + local.get $0 call $~lib/array/Array#__get local.set $2 global.get $~lib/memory/__stack_pointer local.get $2 i32.store - local.get $0 local.get $1 + local.get $0 call $~lib/array/Array#__get local.set $3 global.get $~lib/memory/__stack_pointer @@ -28077,10 +28076,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $for-loop|8 end end @@ -28193,9 +28192,9 @@ i32.const 26 i32.const 0 call $~lib/rt/__newArray - local.tee $4 + local.tee $7 i32.store - local.get $4 + local.get $7 i32.load offset=4 local.set $8 loop $for-loop|033 @@ -28240,7 +28239,7 @@ i32.store local.get $9 if - local.get $4 + local.get $7 local.get $9 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link @@ -28257,9 +28256,9 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 i32.store - local.get $4 + local.get $7 call $~lib/array/Array<~lib/array/Array>#flat local.tee $0 i32.store offset=144 diff --git a/tests/compiler/std/date.optimized.wat b/tests/compiler/std/date.optimized.wat index 0da06eaee2..bef658bd86 100644 --- a/tests/compiler/std/date.optimized.wat +++ b/tests/compiler/std/date.optimized.wat @@ -3964,7 +3964,7 @@ i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 + local.get $0 local.get $4 i32.store offset=12 ) diff --git a/tests/compiler/std/map.optimized.wat b/tests/compiler/std/map.optimized.wat index ad4733b77b..44ffd2e93b 100644 --- a/tests/compiler/std/map.optimized.wat +++ b/tests/compiler/std/map.optimized.wat @@ -3401,16 +3401,16 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $5 i64.const 0 i64.store - local.get $3 + local.get $5 i64.const 0 i64.store offset=8 - local.get $3 + local.get $5 i32.const 0 i32.store offset=16 - local.get $3 + local.get $5 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -3419,55 +3419,55 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $3 i32.const 0 i32.store - local.get $5 + local.get $3 i32.const 24 i32.const 3 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $3 i32.store - local.get $11 + local.get $3 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $6 i32.store - local.get $5 + local.get $6 if - local.get $11 - local.get $5 + local.get $3 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $3 i32.const 3 i32.store offset=4 - local.get $11 + local.get $3 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $6 i32.store offset=8 - local.get $5 + local.get $6 if - local.get $11 - local.get $5 + local.get $3 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $3 i32.const 4 i32.store offset=12 - local.get $11 + local.get $3 i32.const 0 i32.store offset=16 - local.get $11 + local.get $3 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $5 local.get $3 - local.get $11 i32.store loop $for-loop|1 local.get $4 @@ -3475,9 +3475,9 @@ i32.const 100 i32.lt_s if - local.get $11 + local.get $3 i32.load - local.get $11 + local.get $3 i32.load offset=4 local.get $4 i32.extend8_s @@ -3489,22 +3489,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 16 i32.shr_u i32.xor @@ -3513,20 +3513,20 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $5 i32.load8_u local.get $4 i32.const 255 @@ -3534,17 +3534,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|0 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 if i32.const 0 i32.const 1568 @@ -3553,19 +3553,19 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $3 local.get $4 local.get $4 i32.extend8_s - local.tee $3 + local.tee $5 i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 + local.get $3 i32.load - local.get $11 - i32.load offset=4 local.get $3 + i32.load offset=4 + local.get $5 i32.const -1028477379 i32.mul i32.const 374761394 @@ -3574,22 +3574,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 16 i32.shr_u i32.xor @@ -3598,20 +3598,20 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $5 i32.load8_u local.get $4 i32.const 255 @@ -3619,17 +3619,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|02 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 i32.eqz if i32.const 0 @@ -3639,7 +3639,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $3 local.get $4 call $~lib/map/Map#get local.get $4 @@ -3662,7 +3662,7 @@ br $for-loop|1 end end - local.get $11 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -3682,9 +3682,9 @@ i32.const 100 i32.lt_s if - local.get $11 + local.get $3 i32.load - local.get $11 + local.get $3 i32.load offset=4 local.get $4 i32.extend8_s @@ -3696,22 +3696,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 16 i32.shr_u i32.xor @@ -3720,20 +3720,20 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $5 i32.load8_u local.get $4 i32.const 255 @@ -3741,17 +3741,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|05 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 i32.eqz if i32.const 0 @@ -3761,7 +3761,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $3 local.get $4 call $~lib/map/Map#get local.get $4 @@ -3777,19 +3777,19 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $3 local.get $4 local.get $4 i32.extend8_s - local.tee $3 + local.tee $5 i32.const 20 i32.add call $~lib/map/Map#set - local.get $11 + local.get $3 i32.load - local.get $11 - i32.load offset=4 local.get $3 + i32.load offset=4 + local.get $5 i32.const -1028477379 i32.mul i32.const 374761394 @@ -3798,22 +3798,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 16 i32.shr_u i32.xor @@ -3822,20 +3822,20 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $5 i32.load8_u local.get $4 i32.const 255 @@ -3843,17 +3843,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|08 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 i32.eqz if i32.const 0 @@ -3863,7 +3863,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $3 local.get $4 call $~lib/map/Map#get local.get $4 @@ -3886,7 +3886,7 @@ br $for-loop|3 end end - local.get $11 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -3899,8 +3899,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $3 + local.tee $4 + local.get $4 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -3909,17 +3909,18 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $6 i32.const 0 i32.store - local.get $11 + local.get $3 + local.tee $4 i32.load offset=8 - local.set $5 - local.get $11 - i32.load offset=16 - local.tee $6 local.set $7 local.get $3 + i32.load offset=16 + local.tee $8 + local.set $9 + local.get $6 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -3928,28 +3929,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $3 i64.const 0 i64.store - local.get $8 + local.get $3 i32.const 16 i32.const 4 call $~lib/rt/itcms/__new - local.tee $12 + local.tee $3 i32.store - local.get $12 + local.get $3 i32.const 0 i32.store - local.get $12 + local.get $3 i32.const 0 i32.store offset=4 - local.get $12 + local.get $3 i32.const 0 i32.store offset=8 - local.get $12 + local.get $3 i32.const 0 i32.store offset=12 - local.get $7 + local.get $9 i32.const 1073741820 i32.gt_u if @@ -3961,64 +3962,64 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $9 i32.const 8 - local.get $7 + local.get $9 i32.const 8 i32.gt_u select - local.tee $8 + local.tee $10 i32.const 0 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $11 i32.store offset=4 - local.get $9 - local.get $8 + local.get $11 + local.get $10 call $~lib/memory/memory.fill - local.get $12 - local.get $9 + local.get $3 + local.get $11 i32.store - local.get $9 + local.get $11 if - local.get $12 - local.get $9 + local.get $3 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $12 - local.get $9 - i32.store offset=4 - local.get $12 - local.get $8 + local.get $3 + local.get $11 + i32.store offset=4 + local.get $3 + local.get $10 i32.store offset=8 - local.get $12 - local.get $7 + local.get $3 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $6 local.get $3 - local.get $12 i32.store loop $for-loop|0 local.get $2 - local.get $6 + local.get $8 i32.lt_s if local.get $2 i32.const 12 i32.mul - local.get $5 + local.get $7 i32.add - local.tee $3 + local.tee $6 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $12 - local.get $1 local.get $3 + local.get $1 + local.get $6 i32.load8_s call $~lib/array/Array#__set local.get $1 @@ -4033,22 +4034,22 @@ br $for-loop|0 end end - local.get $12 + local.get $3 local.get $1 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity - local.get $12 + local.get $3 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $12 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $4 call $~lib/map/Map#values local.tee $13 i32.store offset=8 @@ -4116,14 +4117,14 @@ local.tee $15 i32.store offset=16 loop $for-loop|4 - local.get $12 + local.get $3 i32.load offset=12 local.get $0 i32.gt_s if local.get $0 - local.tee $3 - local.get $12 + local.tee $1 + local.get $3 i32.load offset=12 i32.ge_u if @@ -4134,22 +4135,22 @@ call $~lib/builtins/abort unreachable end + local.get $1 local.get $3 - local.get $12 i32.load offset=4 i32.add i32.load8_s - local.set $4 + local.set $5 local.get $13 - local.get $3 + local.get $1 call $~lib/array/Array#__get local.set $16 - local.get $11 + local.get $4 i32.load - local.get $11 - i32.load offset=4 local.get $4 - local.tee $1 + i32.load offset=4 + local.get $5 + local.tee $6 i32.extend8_s i32.const -1028477379 i32.mul @@ -4198,7 +4199,7 @@ else local.get $0 i32.load8_u - local.get $1 + local.get $6 i32.const 255 i32.and i32.eq @@ -4224,9 +4225,9 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $4 i32.load - local.get $11 + local.get $4 i32.load offset=4 local.get $16 i32.const 20 @@ -4272,7 +4273,7 @@ if local.get $0 i32.load offset=8 - local.tee $5 + local.tee $7 i32.const 1 i32.and if (result i32) @@ -4286,7 +4287,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find15 - local.get $5 + local.get $7 i32.const -2 i32.and local.set $0 @@ -4319,7 +4320,7 @@ i32.store local.get $14 i32.load - local.get $4 + local.get $5 i32.extend8_s i32.const -1028477379 i32.mul @@ -4348,7 +4349,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $6 + local.tee $8 local.get $14 i32.load offset=4 i32.and @@ -4372,7 +4373,7 @@ else local.get $0 i32.load8_u - local.get $1 + local.get $6 i32.const 255 i32.and i32.eq @@ -4391,7 +4392,7 @@ local.get $0 if local.get $0 - local.get $1 + local.get $6 i32.store8 offset=1 else local.get $14 @@ -4420,7 +4421,7 @@ i32.const 1 i32.or end - local.set $8 + local.set $10 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -4434,14 +4435,14 @@ i64.const 0 i64.store local.get $0 - local.get $8 + local.get $10 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $9 + local.tee $11 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -4449,7 +4450,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $9 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -4457,33 +4458,33 @@ i32.store offset=4 local.get $14 i32.load offset=8 - local.tee $5 + local.tee $7 local.get $14 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $10 + local.set $12 local.get $2 local.set $0 loop $while-continue|018 - local.get $5 - local.get $10 + local.get $7 + local.get $12 i32.ne if - local.get $5 + local.get $7 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $5 + local.get $7 i32.load8_s local.tee $17 i32.store8 local.get $0 - local.get $5 + local.get $7 i32.load8_s offset=1 i32.store8 offset=1 local.get $0 @@ -4516,11 +4517,11 @@ i32.const 16 i32.shr_u i32.xor - local.get $8 + local.get $10 i32.and i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add local.tee $17 i32.load @@ -4533,24 +4534,24 @@ i32.add local.set $0 end - local.get $5 + local.get $7 i32.const 8 i32.add - local.set $5 + local.set $7 br $while-continue|018 end end local.get $14 - local.get $9 + local.get $11 i32.store - local.get $9 + local.get $11 if local.get $14 - local.get $9 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $14 - local.get $8 + local.get $10 i32.store offset=4 local.get $14 local.get $2 @@ -4562,7 +4563,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $14 - local.get $7 + local.get $9 i32.store offset=12 local.get $14 local.get $14 @@ -4591,10 +4592,10 @@ local.get $0 i32.add local.tee $0 - local.get $4 + local.get $5 i32.store8 local.get $0 - local.get $1 + local.get $6 i32.store8 offset=1 local.get $14 local.get $14 @@ -4607,15 +4608,15 @@ i32.load local.get $14 i32.load offset=4 - local.get $6 + local.get $8 i32.and i32.const 2 i32.shl i32.add - local.tee $1 + local.tee $2 i32.load i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store end @@ -4630,7 +4631,7 @@ local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $3 + local.get $1 i32.const 1 i32.add local.set $0 @@ -4669,9 +4670,9 @@ i32.const 50 i32.lt_s if - local.get $11 + local.get $4 i32.load - local.get $11 + local.get $4 i32.load offset=4 local.get $0 i32.extend8_s @@ -4707,12 +4708,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find20 loop $while-continue|021 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 local.tee $1 i32.const 1 @@ -4720,7 +4721,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $5 i32.load8_u local.get $0 i32.const 255 @@ -4731,14 +4732,14 @@ local.get $1 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|021 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 i32.eqz if i32.const 0 @@ -4748,7 +4749,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $4 local.get $0 call $~lib/map/Map#get local.get $0 @@ -4764,12 +4765,12 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $4 local.get $0 call $~lib/map/Map#delete - local.get $11 + local.get $4 i32.load - local.get $11 + local.get $4 i32.load offset=4 local.get $0 i32.extend8_s @@ -4805,12 +4806,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find23 loop $while-continue|024 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 local.tee $1 i32.const 1 @@ -4818,7 +4819,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $5 i32.load8_u local.get $0 i32.const 255 @@ -4829,14 +4830,14 @@ local.get $1 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|024 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 if i32.const 0 i32.const 1568 @@ -4852,7 +4853,7 @@ br $for-loop|6 end end - local.get $11 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -4872,9 +4873,9 @@ i32.const 50 i32.lt_s if - local.get $11 + local.get $4 i32.load - local.get $11 + local.get $4 i32.load offset=4 local.get $0 i32.extend8_s @@ -4910,12 +4911,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find26 loop $while-continue|027 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 local.tee $1 i32.const 1 @@ -4923,7 +4924,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $5 i32.load8_u local.get $0 i32.const 255 @@ -4934,14 +4935,14 @@ local.get $1 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|027 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 if i32.const 0 i32.const 1568 @@ -4950,7 +4951,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $4 local.get $0 local.get $0 i32.extend8_s @@ -4958,9 +4959,9 @@ i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 + local.get $4 i32.load - local.get $11 + local.get $4 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -4995,12 +4996,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find29 loop $while-continue|030 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 local.tee $1 i32.const 1 @@ -5008,7 +5009,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $5 i32.load8_u local.get $0 i32.const 255 @@ -5019,14 +5020,14 @@ local.get $1 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|030 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 i32.eqz if i32.const 0 @@ -5036,12 +5037,12 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $4 local.get $0 call $~lib/map/Map#delete - local.get $11 + local.get $4 i32.load - local.get $11 + local.get $4 i32.load offset=4 local.get $0 i32.extend8_s @@ -5077,12 +5078,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find32 loop $while-continue|033 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 local.tee $1 i32.const 1 @@ -5090,7 +5091,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $5 i32.load8_u local.get $0 i32.const 255 @@ -5101,14 +5102,14 @@ local.get $1 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|033 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 if i32.const 0 i32.const 1568 @@ -5124,7 +5125,7 @@ br $for-loop|8 end end - local.get $11 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -5136,9 +5137,9 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $4 call $~lib/map/Map#clear - local.get $11 + local.get $4 i32.load offset=20 if i32.const 0 @@ -7806,16 +7807,16 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $5 i64.const 0 i64.store - local.get $3 + local.get $5 i64.const 0 i64.store offset=8 - local.get $3 + local.get $5 i32.const 0 i32.store offset=16 - local.get $3 + local.get $5 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -7824,55 +7825,55 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $3 i32.const 0 i32.store - local.get $5 + local.get $3 i32.const 24 i32.const 11 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $3 i32.store - local.get $11 + local.get $3 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $6 i32.store - local.get $5 + local.get $6 if - local.get $11 - local.get $5 + local.get $3 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $3 i32.const 3 i32.store offset=4 - local.get $11 + local.get $3 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $6 i32.store offset=8 - local.get $5 + local.get $6 if - local.get $11 - local.get $5 + local.get $3 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $3 i32.const 4 i32.store offset=12 - local.get $11 + local.get $3 i32.const 0 i32.store offset=16 - local.get $11 + local.get $3 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $5 local.get $3 - local.get $11 i32.store loop $for-loop|1 local.get $4 @@ -7880,9 +7881,9 @@ i32.const 100 i32.lt_s if - local.get $11 + local.get $3 i32.load - local.get $11 + local.get $3 i32.load offset=4 local.get $4 i32.extend16_s @@ -7894,22 +7895,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 16 i32.shr_u i32.xor @@ -7918,20 +7919,20 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $5 i32.load16_u local.get $4 i32.const 65535 @@ -7939,17 +7940,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|0 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 if i32.const 0 i32.const 1568 @@ -7958,19 +7959,19 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $3 local.get $4 local.get $4 i32.extend16_s - local.tee $3 + local.tee $5 i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 + local.get $3 i32.load - local.get $11 - i32.load offset=4 local.get $3 + i32.load offset=4 + local.get $5 i32.const -1028477379 i32.mul i32.const 374761395 @@ -7979,22 +7980,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 16 i32.shr_u i32.xor @@ -8003,20 +8004,20 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $5 i32.load16_u local.get $4 i32.const 65535 @@ -8024,17 +8025,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|02 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 i32.eqz if i32.const 0 @@ -8044,7 +8045,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $3 local.get $4 call $~lib/map/Map#get local.get $4 @@ -8067,7 +8068,7 @@ br $for-loop|1 end end - local.get $11 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -8087,9 +8088,9 @@ i32.const 100 i32.lt_s if - local.get $11 + local.get $3 i32.load - local.get $11 + local.get $3 i32.load offset=4 local.get $4 i32.extend16_s @@ -8101,22 +8102,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 16 i32.shr_u i32.xor @@ -8125,20 +8126,20 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $5 i32.load16_u local.get $4 i32.const 65535 @@ -8146,17 +8147,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|05 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 i32.eqz if i32.const 0 @@ -8166,7 +8167,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $3 local.get $4 call $~lib/map/Map#get local.get $4 @@ -8182,19 +8183,19 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $3 local.get $4 local.get $4 i32.extend16_s - local.tee $3 + local.tee $5 i32.const 20 i32.add call $~lib/map/Map#set - local.get $11 + local.get $3 i32.load - local.get $11 - i32.load offset=4 local.get $3 + i32.load offset=4 + local.get $5 i32.const -1028477379 i32.mul i32.const 374761395 @@ -8203,22 +8204,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 16 i32.shr_u i32.xor @@ -8227,20 +8228,20 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 + local.get $5 i32.load16_u local.get $4 i32.const 65535 @@ -8248,17 +8249,17 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|08 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 i32.eqz if i32.const 0 @@ -8268,7 +8269,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $3 local.get $4 call $~lib/map/Map#get local.get $4 @@ -8291,7 +8292,7 @@ br $for-loop|3 end end - local.get $11 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -8304,8 +8305,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $3 + local.tee $4 + local.get $4 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -8314,17 +8315,18 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $6 i32.const 0 i32.store - local.get $11 + local.get $3 + local.tee $4 i32.load offset=8 - local.set $5 - local.get $11 - i32.load offset=16 - local.tee $6 local.set $7 local.get $3 + i32.load offset=16 + local.tee $8 + local.set $9 + local.get $6 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -8333,28 +8335,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $3 i64.const 0 i64.store - local.get $8 + local.get $3 i32.const 16 i32.const 12 call $~lib/rt/itcms/__new - local.tee $12 + local.tee $3 i32.store - local.get $12 + local.get $3 i32.const 0 i32.store - local.get $12 + local.get $3 i32.const 0 i32.store offset=4 - local.get $12 + local.get $3 i32.const 0 i32.store offset=8 - local.get $12 + local.get $3 i32.const 0 i32.store offset=12 - local.get $7 + local.get $9 i32.const 536870910 i32.gt_u if @@ -8366,66 +8368,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $9 i32.const 8 - local.get $7 + local.get $9 i32.const 8 i32.gt_u select i32.const 1 i32.shl - local.tee $8 + local.tee $10 i32.const 0 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $11 i32.store offset=4 - local.get $9 - local.get $8 + local.get $11 + local.get $10 call $~lib/memory/memory.fill - local.get $12 - local.get $9 + local.get $3 + local.get $11 i32.store - local.get $9 + local.get $11 if - local.get $12 - local.get $9 + local.get $3 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $12 - local.get $9 + local.get $3 + local.get $11 i32.store offset=4 - local.get $12 - local.get $8 + local.get $3 + local.get $10 i32.store offset=8 - local.get $12 - local.get $7 + local.get $3 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $6 local.get $3 - local.get $12 i32.store loop $for-loop|0 local.get $2 - local.get $6 + local.get $8 i32.lt_s if local.get $2 i32.const 12 i32.mul - local.get $5 + local.get $7 i32.add - local.tee $3 + local.tee $6 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $12 - local.get $1 local.get $3 + local.get $1 + local.get $6 i32.load16_s call $~lib/array/Array#__set local.get $1 @@ -8440,22 +8442,22 @@ br $for-loop|0 end end - local.get $12 + local.get $3 local.get $1 i32.const 1 i32.const 0 call $~lib/array/ensureCapacity - local.get $12 + local.get $3 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $12 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $4 call $~lib/map/Map#values local.tee $13 i32.store offset=8 @@ -8523,14 +8525,14 @@ local.tee $15 i32.store offset=16 loop $for-loop|4 - local.get $12 + local.get $3 i32.load offset=12 local.get $0 i32.gt_s if local.get $0 - local.tee $3 - local.get $12 + local.tee $1 + local.get $3 i32.load offset=12 i32.ge_u if @@ -8541,24 +8543,24 @@ call $~lib/builtins/abort unreachable end - local.get $12 - i32.load offset=4 local.get $3 + i32.load offset=4 + local.get $1 i32.const 1 i32.shl i32.add i32.load16_s - local.set $4 + local.set $5 local.get $13 - local.get $3 + local.get $1 call $~lib/array/Array#__get local.set $16 - local.get $11 + local.get $4 i32.load - local.get $11 - i32.load offset=4 local.get $4 - local.tee $1 + i32.load offset=4 + local.get $5 + local.tee $6 i32.extend16_s i32.const -1028477379 i32.mul @@ -8607,7 +8609,7 @@ else local.get $0 i32.load16_u - local.get $1 + local.get $6 i32.const 65535 i32.and i32.eq @@ -8633,9 +8635,9 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $4 i32.load - local.get $11 + local.get $4 i32.load offset=4 local.get $16 i32.const 20 @@ -8681,7 +8683,7 @@ if local.get $0 i32.load offset=8 - local.tee $5 + local.tee $7 i32.const 1 i32.and if (result i32) @@ -8695,7 +8697,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find15 - local.get $5 + local.get $7 i32.const -2 i32.and local.set $0 @@ -8728,7 +8730,7 @@ i32.store local.get $14 i32.load - local.get $4 + local.get $5 i32.extend16_s i32.const -1028477379 i32.mul @@ -8757,7 +8759,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $6 + local.tee $8 local.get $14 i32.load offset=4 i32.and @@ -8781,7 +8783,7 @@ else local.get $0 i32.load16_u - local.get $1 + local.get $6 i32.const 65535 i32.and i32.eq @@ -8800,7 +8802,7 @@ local.get $0 if local.get $0 - local.get $1 + local.get $6 i32.store16 offset=2 else local.get $14 @@ -8829,7 +8831,7 @@ i32.const 1 i32.or end - local.set $8 + local.set $10 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -8843,14 +8845,14 @@ i64.const 0 i64.store local.get $0 - local.get $8 + local.get $10 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $9 + local.tee $11 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -8858,7 +8860,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $9 i32.const 3 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor @@ -8866,33 +8868,33 @@ i32.store offset=4 local.get $14 i32.load offset=8 - local.tee $5 + local.tee $7 local.get $14 i32.load offset=16 i32.const 3 i32.shl i32.add - local.set $10 + local.set $12 local.get $2 local.set $0 loop $while-continue|018 - local.get $5 - local.get $10 + local.get $7 + local.get $12 i32.ne if - local.get $5 + local.get $7 i32.load offset=4 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $5 + local.get $7 i32.load16_s local.tee $17 i32.store16 local.get $0 - local.get $5 + local.get $7 i32.load16_s offset=2 i32.store16 offset=2 local.get $0 @@ -8925,11 +8927,11 @@ i32.const 16 i32.shr_u i32.xor - local.get $8 + local.get $10 i32.and i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add local.tee $17 i32.load @@ -8942,24 +8944,24 @@ i32.add local.set $0 end - local.get $5 + local.get $7 i32.const 8 i32.add - local.set $5 + local.set $7 br $while-continue|018 end end local.get $14 - local.get $9 + local.get $11 i32.store - local.get $9 + local.get $11 if local.get $14 - local.get $9 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $14 - local.get $8 + local.get $10 i32.store offset=4 local.get $14 local.get $2 @@ -8971,7 +8973,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $14 - local.get $7 + local.get $9 i32.store offset=12 local.get $14 local.get $14 @@ -9000,10 +9002,10 @@ local.get $0 i32.add local.tee $0 - local.get $4 + local.get $5 i32.store16 local.get $0 - local.get $1 + local.get $6 i32.store16 offset=2 local.get $14 local.get $14 @@ -9016,15 +9018,15 @@ i32.load local.get $14 i32.load offset=4 - local.get $6 + local.get $8 i32.and i32.const 2 i32.shl i32.add - local.tee $1 + local.tee $2 i32.load i32.store offset=4 - local.get $1 + local.get $2 local.get $0 i32.store end @@ -9039,7 +9041,7 @@ local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $3 + local.get $1 i32.const 1 i32.add local.set $0 @@ -9078,9 +9080,9 @@ i32.const 50 i32.lt_s if - local.get $11 + local.get $4 i32.load - local.get $11 + local.get $4 i32.load offset=4 local.get $0 i32.extend16_s @@ -9116,12 +9118,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find20 loop $while-continue|021 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 local.tee $1 i32.const 1 @@ -9129,7 +9131,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $5 i32.load16_u local.get $0 i32.const 65535 @@ -9140,14 +9142,14 @@ local.get $1 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|021 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 i32.eqz if i32.const 0 @@ -9157,7 +9159,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $4 local.get $0 call $~lib/map/Map#get local.get $0 @@ -9173,12 +9175,12 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $4 local.get $0 call $~lib/map/Map#delete - local.get $11 + local.get $4 i32.load - local.get $11 + local.get $4 i32.load offset=4 local.get $0 i32.extend16_s @@ -9214,12 +9216,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find23 loop $while-continue|024 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 local.tee $1 i32.const 1 @@ -9227,7 +9229,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $5 i32.load16_u local.get $0 i32.const 65535 @@ -9238,14 +9240,14 @@ local.get $1 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|024 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 if i32.const 0 i32.const 1568 @@ -9261,7 +9263,7 @@ br $for-loop|6 end end - local.get $11 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -9281,9 +9283,9 @@ i32.const 50 i32.lt_s if - local.get $11 + local.get $4 i32.load - local.get $11 + local.get $4 i32.load offset=4 local.get $0 i32.extend16_s @@ -9319,12 +9321,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find26 loop $while-continue|027 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 local.tee $1 i32.const 1 @@ -9332,7 +9334,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $5 i32.load16_u local.get $0 i32.const 65535 @@ -9343,14 +9345,14 @@ local.get $1 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|027 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 if i32.const 0 i32.const 1568 @@ -9359,7 +9361,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $4 local.get $0 local.get $0 i32.extend16_s @@ -9367,9 +9369,9 @@ i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 + local.get $4 i32.load - local.get $11 + local.get $4 i32.load offset=4 local.get $1 i32.const -1028477379 @@ -9404,12 +9406,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find29 loop $while-continue|030 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 local.tee $1 i32.const 1 @@ -9417,7 +9419,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $5 i32.load16_u local.get $0 i32.const 65535 @@ -9428,14 +9430,14 @@ local.get $1 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|030 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 i32.eqz if i32.const 0 @@ -9445,12 +9447,12 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $4 local.get $0 call $~lib/map/Map#delete - local.get $11 + local.get $4 i32.load - local.get $11 + local.get $4 i32.load offset=4 local.get $0 i32.extend16_s @@ -9486,12 +9488,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find32 loop $while-continue|033 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 local.tee $1 i32.const 1 @@ -9499,7 +9501,7 @@ if (result i32) i32.const 0 else - local.get $3 + local.get $5 i32.load16_u local.get $0 i32.const 65535 @@ -9510,14 +9512,14 @@ local.get $1 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|033 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 if i32.const 0 i32.const 1568 @@ -9533,7 +9535,7 @@ br $for-loop|8 end end - local.get $11 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -9545,9 +9547,9 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $4 call $~lib/map/Map#clear - local.get $11 + local.get $4 i32.load offset=20 if i32.const 0 @@ -13599,16 +13601,16 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $5 i64.const 0 i64.store - local.get $3 + local.get $5 i64.const 0 i64.store offset=8 - local.get $3 + local.get $5 i32.const 0 i32.store offset=16 - local.get $3 + local.get $5 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -13617,64 +13619,64 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $3 i32.const 0 i32.store - local.get $5 + local.get $3 i32.const 24 i32.const 17 call $~lib/rt/itcms/__new - local.tee $11 + local.tee $3 i32.store - local.get $11 + local.get $3 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $6 i32.store - local.get $5 + local.get $6 if - local.get $11 - local.get $5 + local.get $3 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $3 i32.const 3 i32.store offset=4 - local.get $11 + local.get $3 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $6 i32.store offset=8 - local.get $5 + local.get $6 if - local.get $11 - local.get $5 + local.get $3 + local.get $6 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $11 + local.get $3 i32.const 4 i32.store offset=12 - local.get $11 + local.get $3 i32.const 0 i32.store offset=16 - local.get $11 + local.get $3 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $5 local.get $3 - local.get $11 i32.store loop $for-loop|0 local.get $4 i32.const 100 i32.lt_u if - local.get $11 + local.get $3 i32.load - local.get $11 + local.get $3 i32.load offset=4 local.get $4 i32.const -1028477379 @@ -13685,22 +13687,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 16 i32.shr_u i32.xor @@ -13709,36 +13711,36 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $4 - local.get $3 + local.get $5 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|0 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 if i32.const 0 i32.const 1568 @@ -13747,15 +13749,15 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $3 local.get $4 local.get $4 i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 + local.get $3 i32.load - local.get $11 + local.get $3 i32.load offset=4 local.get $4 i32.const -1028477379 @@ -13766,22 +13768,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 16 i32.shr_u i32.xor @@ -13790,36 +13792,36 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $4 - local.get $3 + local.get $5 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|02 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 i32.eqz if i32.const 0 @@ -13829,7 +13831,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $3 local.get $4 call $~lib/map/Map#get local.get $4 @@ -13851,7 +13853,7 @@ br $for-loop|0 end end - local.get $11 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -13870,9 +13872,9 @@ i32.const 100 i32.lt_u if - local.get $11 + local.get $3 i32.load - local.get $11 + local.get $3 i32.load offset=4 local.get $4 i32.const -1028477379 @@ -13883,22 +13885,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 16 i32.shr_u i32.xor @@ -13907,36 +13909,36 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $4 - local.get $3 + local.get $5 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|05 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 i32.eqz if i32.const 0 @@ -13946,7 +13948,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $3 local.get $4 call $~lib/map/Map#get local.get $4 @@ -13961,15 +13963,15 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $3 local.get $4 local.get $4 i32.const 20 i32.add call $~lib/map/Map#set - local.get $11 + local.get $3 i32.load - local.get $11 + local.get $3 i32.load offset=4 local.get $4 i32.const -1028477379 @@ -13980,22 +13982,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $3 - local.get $3 + local.tee $5 + local.get $5 i32.const 16 i32.shr_u i32.xor @@ -14004,36 +14006,36 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 - local.tee $5 + local.tee $6 i32.const 1 i32.and if (result i32) i32.const 0 else local.get $4 - local.get $3 + local.get $5 i32.load i32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $5 + local.get $6 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|08 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 i32.eqz if i32.const 0 @@ -14043,7 +14045,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $3 local.get $4 call $~lib/map/Map#get local.get $4 @@ -14065,7 +14067,7 @@ br $for-loop|1 end end - local.get $11 + local.get $3 i32.load offset=20 i32.const 100 i32.ne @@ -14078,8 +14080,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $3 - local.get $3 + local.tee $4 + local.get $4 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -14088,17 +14090,18 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $3 + local.tee $6 i32.const 0 i32.store - local.get $11 + local.get $3 + local.tee $4 i32.load offset=8 - local.set $5 - local.get $11 - i32.load offset=16 - local.tee $6 local.set $7 local.get $3 + i32.load offset=16 + local.tee $8 + local.set $9 + local.get $6 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -14107,28 +14110,28 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $8 + local.tee $3 i64.const 0 i64.store - local.get $8 + local.get $3 i32.const 16 i32.const 18 call $~lib/rt/itcms/__new - local.tee $12 + local.tee $3 i32.store - local.get $12 + local.get $3 i32.const 0 i32.store - local.get $12 + local.get $3 i32.const 0 i32.store offset=4 - local.get $12 + local.get $3 i32.const 0 i32.store offset=8 - local.get $12 + local.get $3 i32.const 0 i32.store offset=12 - local.get $7 + local.get $9 i32.const 268435455 i32.gt_u if @@ -14140,66 +14143,66 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $9 i32.const 8 - local.get $7 + local.get $9 i32.const 8 i32.gt_u select i32.const 2 i32.shl - local.tee $8 + local.tee $10 i32.const 0 call $~lib/rt/itcms/__new - local.tee $9 + local.tee $11 i32.store offset=4 - local.get $9 - local.get $8 + local.get $11 + local.get $10 call $~lib/memory/memory.fill - local.get $12 - local.get $9 + local.get $3 + local.get $11 i32.store - local.get $9 + local.get $11 if - local.get $12 - local.get $9 + local.get $3 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $12 - local.get $9 + local.get $3 + local.get $11 i32.store offset=4 - local.get $12 - local.get $8 + local.get $3 + local.get $10 i32.store offset=8 - local.get $12 - local.get $7 + local.get $3 + local.get $9 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer + local.get $6 local.get $3 - local.get $12 i32.store loop $for-loop|01 local.get $2 - local.get $6 + local.get $8 i32.lt_s if local.get $2 i32.const 12 i32.mul - local.get $5 + local.get $7 i32.add - local.tee $3 + local.tee $6 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $12 - local.get $1 local.get $3 + local.get $1 + local.get $6 i32.load call $~lib/array/Array#__set local.get $1 @@ -14214,22 +14217,22 @@ br $for-loop|01 end end - local.get $12 + local.get $3 local.get $1 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity - local.get $12 + local.get $3 local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $12 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $4 call $~lib/map/Map#values local.tee $13 i32.store offset=8 @@ -14297,14 +14300,14 @@ local.tee $15 i32.store offset=16 loop $for-loop|2 - local.get $12 + local.get $3 i32.load offset=12 local.get $0 i32.gt_s if local.get $0 - local.tee $3 - local.get $12 + local.tee $1 + local.get $3 i32.load offset=12 i32.ge_u if @@ -14315,24 +14318,24 @@ call $~lib/builtins/abort unreachable end - local.get $12 - i32.load offset=4 local.get $3 + i32.load offset=4 + local.get $1 i32.const 2 i32.shl i32.add i32.load - local.set $4 + local.set $5 local.get $13 - local.get $3 + local.get $1 call $~lib/array/Array#__get local.set $16 - local.get $11 + local.get $4 i32.load - local.get $11 - i32.load offset=4 local.get $4 - local.tee $1 + i32.load offset=4 + local.get $5 + local.tee $6 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14378,7 +14381,7 @@ if (result i32) i32.const 0 else - local.get $1 + local.get $6 local.get $0 i32.load i32.eq @@ -14404,9 +14407,9 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $4 i32.load - local.get $11 + local.get $4 i32.load offset=4 local.get $16 i32.const 20 @@ -14451,7 +14454,7 @@ if local.get $0 i32.load offset=8 - local.tee $5 + local.tee $7 i32.const 1 i32.and if (result i32) @@ -14463,7 +14466,7 @@ i32.eq end br_if $__inlined_func$~lib/map/Map#find15 - local.get $5 + local.get $7 i32.const -2 i32.and local.set $0 @@ -14496,7 +14499,7 @@ i32.store local.get $14 i32.load - local.get $4 + local.get $5 i32.const -1028477379 i32.mul i32.const 374761397 @@ -14524,7 +14527,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $6 + local.tee $8 local.get $14 i32.load offset=4 i32.and @@ -14546,7 +14549,7 @@ if (result i32) i32.const 0 else - local.get $1 + local.get $6 local.get $0 i32.load i32.eq @@ -14565,7 +14568,7 @@ local.get $0 if local.get $0 - local.get $1 + local.get $6 i32.store offset=4 else local.get $14 @@ -14594,7 +14597,7 @@ i32.const 1 i32.or end - local.set $8 + local.set $10 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -14608,14 +14611,14 @@ i64.const 0 i64.store local.get $0 - local.get $8 + local.get $10 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $9 + local.tee $11 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -14623,7 +14626,7 @@ i32.shl i32.const 3 i32.div_s - local.tee $7 + local.tee $9 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor @@ -14631,33 +14634,33 @@ i32.store offset=4 local.get $14 i32.load offset=8 - local.tee $5 + local.tee $7 local.get $14 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $10 + local.set $12 local.get $2 local.set $0 loop $while-continue|019 - local.get $5 - local.get $10 + local.get $7 + local.get $12 i32.ne if - local.get $5 + local.get $7 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $5 + local.get $7 i32.load local.tee $17 i32.store local.get $0 - local.get $5 + local.get $7 i32.load offset=4 i32.store offset=4 local.get $0 @@ -14689,11 +14692,11 @@ i32.const 16 i32.shr_u i32.xor - local.get $8 + local.get $10 i32.and i32.const 2 i32.shl - local.get $9 + local.get $11 i32.add local.tee $17 i32.load @@ -14706,24 +14709,24 @@ i32.add local.set $0 end - local.get $5 + local.get $7 i32.const 12 i32.add - local.set $5 + local.set $7 br $while-continue|019 end end local.get $14 - local.get $9 + local.get $11 i32.store - local.get $9 + local.get $11 if local.get $14 - local.get $9 + local.get $11 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $14 - local.get $8 + local.get $10 i32.store offset=4 local.get $14 local.get $2 @@ -14735,7 +14738,7 @@ call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $14 - local.get $7 + local.get $9 i32.store offset=12 local.get $14 local.get $14 @@ -14764,10 +14767,10 @@ local.get $0 i32.add local.tee $0 - local.get $4 + local.get $5 i32.store local.get $0 - local.get $1 + local.get $6 i32.store offset=4 local.get $14 local.get $14 @@ -14780,15 +14783,15 @@ i32.load local.get $14 i32.load offset=4 - local.get $6 + local.get $8 i32.and i32.const 2 i32.shl i32.add - local.tee $1 + local.tee $2 i32.load i32.store offset=8 - local.get $1 + local.get $2 local.get $0 i32.store end @@ -14803,7 +14806,7 @@ local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $3 + local.get $1 i32.const 1 i32.add local.set $0 @@ -14841,9 +14844,9 @@ i32.const 50 i32.lt_u if - local.get $11 + local.get $4 i32.load - local.get $11 + local.get $4 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -14878,12 +14881,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find21 loop $while-continue|022 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 local.tee $1 i32.const 1 @@ -14892,7 +14895,7 @@ i32.const 0 else local.get $0 - local.get $3 + local.get $5 i32.load i32.eq end @@ -14900,14 +14903,14 @@ local.get $1 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|022 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 i32.eqz if i32.const 0 @@ -14917,7 +14920,7 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $4 local.get $0 call $~lib/map/Map#get local.get $0 @@ -14932,12 +14935,12 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $4 local.get $0 call $~lib/map/Map#delete - local.get $11 + local.get $4 i32.load - local.get $11 + local.get $4 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -14972,12 +14975,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find24 loop $while-continue|025 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 local.tee $1 i32.const 1 @@ -14986,7 +14989,7 @@ i32.const 0 else local.get $0 - local.get $3 + local.get $5 i32.load i32.eq end @@ -14994,14 +14997,14 @@ local.get $1 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|025 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 if i32.const 0 i32.const 1568 @@ -15017,7 +15020,7 @@ br $for-loop|3 end end - local.get $11 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -15036,9 +15039,9 @@ i32.const 50 i32.lt_u if - local.get $11 + local.get $4 i32.load - local.get $11 + local.get $4 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -15073,12 +15076,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find27 loop $while-continue|028 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 local.tee $1 i32.const 1 @@ -15087,7 +15090,7 @@ i32.const 0 else local.get $0 - local.get $3 + local.get $5 i32.load i32.eq end @@ -15095,14 +15098,14 @@ local.get $1 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|028 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 if i32.const 0 i32.const 1568 @@ -15111,15 +15114,15 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $4 local.get $0 local.get $0 i32.const 10 i32.add call $~lib/map/Map#set - local.get $11 + local.get $4 i32.load - local.get $11 + local.get $4 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -15154,12 +15157,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find30 loop $while-continue|031 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 local.tee $1 i32.const 1 @@ -15168,7 +15171,7 @@ i32.const 0 else local.get $0 - local.get $3 + local.get $5 i32.load i32.eq end @@ -15176,14 +15179,14 @@ local.get $1 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|031 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 i32.eqz if i32.const 0 @@ -15193,12 +15196,12 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $4 local.get $0 call $~lib/map/Map#delete - local.get $11 + local.get $4 i32.load - local.get $11 + local.get $4 i32.load offset=4 local.get $0 i32.const -1028477379 @@ -15233,12 +15236,12 @@ i32.shl i32.add i32.load - local.set $3 + local.set $5 block $__inlined_func$~lib/map/Map#find33 loop $while-continue|034 - local.get $3 + local.get $5 if - local.get $3 + local.get $5 i32.load offset=8 local.tee $1 i32.const 1 @@ -15247,7 +15250,7 @@ i32.const 0 else local.get $0 - local.get $3 + local.get $5 i32.load i32.eq end @@ -15255,14 +15258,14 @@ local.get $1 i32.const -2 i32.and - local.set $3 + local.set $5 br $while-continue|034 end end i32.const 0 - local.set $3 + local.set $5 end - local.get $3 + local.get $5 if i32.const 0 i32.const 1568 @@ -15278,7 +15281,7 @@ br $for-loop|4 end end - local.get $11 + local.get $4 i32.load offset=20 i32.const 50 i32.ne @@ -15290,9 +15293,9 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $4 call $~lib/map/Map#clear - local.get $11 + local.get $4 i32.load offset=20 if i32.const 0 @@ -18889,9 +18892,9 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 f32) + (local $3 i32) (local $4 i32) - (local $5 i32) + (local $5 f32) (local $6 i32) (local $7 i32) (local $8 i32) @@ -18899,8 +18902,8 @@ (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) - (local $14 f32) + (local $13 f32) + (local $14 i32) (local $15 i32) (local $16 i32) (local $17 i32) @@ -18914,16 +18917,16 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $3 i64.const 0 i64.store - local.get $1 + local.get $3 i64.const 0 i64.store offset=8 - local.get $1 + local.get $3 i32.const 0 i32.store offset=16 - local.get $1 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -18932,66 +18935,66 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $5 + local.tee $2 i32.const 0 i32.store - local.get $5 + local.get $2 i32.const 24 i32.const 26 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $2 i32.store - local.get $8 + local.get $2 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $4 i32.store - local.get $5 + local.get $4 if - local.get $8 - local.get $5 + local.get $2 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $8 + local.get $2 i32.const 3 i32.store offset=4 - local.get $8 + local.get $2 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $4 i32.store offset=8 - local.get $5 + local.get $4 if - local.get $8 - local.get $5 + local.get $2 + local.get $4 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $8 + local.get $2 i32.const 4 i32.store offset=12 - local.get $8 + local.get $2 i32.const 0 i32.store offset=16 - local.get $8 + local.get $2 i32.const 0 i32.store offset=20 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $8 + local.get $3 + local.get $2 i32.store loop $for-loop|0 - local.get $3 + local.get $5 f32.const 100 f32.lt if - local.get $8 + local.get $2 i32.load - local.get $8 + local.get $2 i32.load offset=4 - local.get $3 + local.get $5 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19001,22 +19004,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 - local.get $1 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $1 - local.get $1 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $1 - local.get $1 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u i32.xor @@ -19025,36 +19028,36 @@ i32.shl i32.add i32.load - local.set $1 + local.set $4 block $__inlined_func$~lib/map/Map#find loop $while-continue|0 - local.get $1 + local.get $4 if - local.get $1 + local.get $4 i32.load offset=8 - local.tee $5 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 - local.get $1 + local.get $5 + local.get $4 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find - local.get $5 + local.get $3 i32.const -2 i32.and - local.set $1 + local.set $4 br $while-continue|0 end end i32.const 0 - local.set $1 + local.set $4 end - local.get $1 + local.get $4 if i32.const 0 i32.const 1568 @@ -19063,18 +19066,18 @@ call $~lib/builtins/abort unreachable end - local.get $8 - local.get $3 - local.get $3 + local.get $2 + local.get $5 + local.get $5 i32.trunc_f32_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $8 + local.get $2 i32.load - local.get $8 + local.get $2 i32.load offset=4 - local.get $3 + local.get $5 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19084,22 +19087,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 - local.get $1 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $1 - local.get $1 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $1 - local.get $1 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u i32.xor @@ -19108,36 +19111,36 @@ i32.shl i32.add i32.load - local.set $1 + local.set $4 block $__inlined_func$~lib/map/Map#find1 loop $while-continue|02 - local.get $1 + local.get $4 if - local.get $1 + local.get $4 i32.load offset=8 - local.tee $5 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 - local.get $1 + local.get $5 + local.get $4 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find1 - local.get $5 + local.get $3 i32.const -2 i32.and - local.set $1 + local.set $4 br $while-continue|02 end end i32.const 0 - local.set $1 + local.set $4 end - local.get $1 + local.get $4 i32.eqz if i32.const 0 @@ -19147,10 +19150,10 @@ call $~lib/builtins/abort unreachable end - local.get $8 - local.get $3 + local.get $2 + local.get $5 call $~lib/map/Map#get - local.get $3 + local.get $5 i32.trunc_f32_s i32.const 10 i32.add @@ -19163,14 +19166,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 f32.const 1 f32.add - local.set $3 + local.set $5 br $for-loop|0 end end - local.get $8 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -19183,17 +19186,17 @@ unreachable end f32.const 0 - local.set $3 + local.set $5 loop $for-loop|1 - local.get $3 + local.get $5 f32.const 100 f32.lt if - local.get $8 + local.get $2 i32.load - local.get $8 + local.get $2 i32.load offset=4 - local.get $3 + local.get $5 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19203,22 +19206,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 - local.get $1 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $1 - local.get $1 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $1 - local.get $1 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u i32.xor @@ -19227,36 +19230,36 @@ i32.shl i32.add i32.load - local.set $1 + local.set $4 block $__inlined_func$~lib/map/Map#find4 loop $while-continue|05 - local.get $1 + local.get $4 if - local.get $1 + local.get $4 i32.load offset=8 - local.tee $5 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 - local.get $1 + local.get $5 + local.get $4 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find4 - local.get $5 + local.get $3 i32.const -2 i32.and - local.set $1 + local.set $4 br $while-continue|05 end end i32.const 0 - local.set $1 + local.set $4 end - local.get $1 + local.get $4 i32.eqz if i32.const 0 @@ -19266,10 +19269,10 @@ call $~lib/builtins/abort unreachable end - local.get $8 - local.get $3 + local.get $2 + local.get $5 call $~lib/map/Map#get - local.get $3 + local.get $5 i32.trunc_f32_s i32.const 10 i32.add @@ -19282,18 +19285,18 @@ call $~lib/builtins/abort unreachable end - local.get $8 - local.get $3 - local.get $3 + local.get $2 + local.get $5 + local.get $5 i32.trunc_f32_s i32.const 20 i32.add call $~lib/map/Map#set - local.get $8 + local.get $2 i32.load - local.get $8 + local.get $2 i32.load offset=4 - local.get $3 + local.get $5 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19303,22 +19306,22 @@ i32.rotl i32.const 668265263 i32.mul - local.tee $1 - local.get $1 + local.tee $3 + local.get $3 i32.const 15 i32.shr_u i32.xor i32.const -2048144777 i32.mul - local.tee $1 - local.get $1 + local.tee $3 + local.get $3 i32.const 13 i32.shr_u i32.xor i32.const -1028477379 i32.mul - local.tee $1 - local.get $1 + local.tee $3 + local.get $3 i32.const 16 i32.shr_u i32.xor @@ -19327,36 +19330,36 @@ i32.shl i32.add i32.load - local.set $1 + local.set $4 block $__inlined_func$~lib/map/Map#find7 loop $while-continue|08 - local.get $1 + local.get $4 if - local.get $1 + local.get $4 i32.load offset=8 - local.tee $5 + local.tee $3 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 - local.get $1 + local.get $5 + local.get $4 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find7 - local.get $5 + local.get $3 i32.const -2 i32.and - local.set $1 + local.set $4 br $while-continue|08 end end i32.const 0 - local.set $1 + local.set $4 end - local.get $1 + local.get $4 i32.eqz if i32.const 0 @@ -19366,10 +19369,10 @@ call $~lib/builtins/abort unreachable end - local.get $8 - local.get $3 + local.get $2 + local.get $5 call $~lib/map/Map#get - local.get $3 + local.get $5 i32.trunc_f32_s i32.const 20 i32.add @@ -19382,14 +19385,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 f32.const 1 f32.add - local.set $3 + local.set $5 br $for-loop|1 end end - local.get $8 + local.get $2 i32.load offset=20 i32.const 100 i32.ne @@ -19402,8 +19405,8 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $1 - local.get $1 + local.tee $3 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -19412,17 +19415,18 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $7 i32.const 0 i32.store - local.get $8 + local.get $2 + local.tee $3 i32.load offset=8 - local.set $6 - local.get $8 + local.set $8 + local.get $2 i32.load offset=16 - local.tee $7 - local.set $9 - local.get $1 + local.tee $9 + local.set $2 + local.get $7 i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer @@ -19452,7 +19456,7 @@ local.get $10 i32.const 0 i32.store offset=12 - local.get $9 + local.get $2 i32.const 268435455 i32.gt_u if @@ -19464,9 +19468,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $2 i32.const 8 - local.get $9 + local.get $2 i32.const 8 i32.gt_u select @@ -19496,45 +19500,45 @@ local.get $11 i32.store offset=8 local.get $10 - local.get $9 + local.get $2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $7 local.get $10 i32.store loop $for-loop|01 - local.get $2 - local.get $7 + local.get $6 + local.get $9 i32.lt_s if - local.get $2 + local.get $6 i32.const 12 i32.mul - local.get $6 + local.get $8 i32.add - local.tee $9 + local.tee $7 i32.load offset=8 i32.const 1 i32.and i32.eqz if - local.get $0 - local.tee $1 + local.get $1 + local.tee $2 i32.const 1 i32.add - local.set $0 - local.get $9 + local.set $1 + local.get $7 f32.load - local.set $3 + local.set $5 local.get $10 i32.load offset=12 - local.get $1 + local.get $2 i32.le_u if - local.get $1 + local.get $2 i32.const 0 i32.lt_s if @@ -19546,40 +19550,40 @@ unreachable end local.get $10 - local.get $1 + local.get $2 i32.const 1 i32.add - local.tee $9 + local.tee $7 i32.const 2 i32.const 1 call $~lib/array/ensureCapacity local.get $10 - local.get $9 + local.get $7 i32.store offset=12 end local.get $10 i32.load offset=4 - local.get $1 + local.get $2 i32.const 2 i32.shl i32.add - local.get $3 + local.get $5 f32.store end - local.get $2 + local.get $6 i32.const 1 i32.add - local.set $2 + local.set $6 br $for-loop|01 end end local.get $10 - local.get $0 + local.get $1 i32.const 2 i32.const 0 call $~lib/array/ensureCapacity local.get $10 - local.get $0 + local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -19588,7 +19592,7 @@ local.get $10 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $3 call $~lib/map/Map#values local.tee $9 i32.store offset=8 @@ -19602,10 +19606,10 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $1 + local.tee $2 i32.const 0 i32.store - local.get $1 + local.get $2 i32.const 24 i32.const 28 call $~lib/rt/itcms/__new @@ -19614,12 +19618,12 @@ local.get $11 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store - local.get $1 + local.get $2 if local.get $11 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $11 @@ -19628,12 +19632,12 @@ local.get $11 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=8 - local.get $1 + local.get $2 if local.get $11 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $11 @@ -19658,13 +19662,14 @@ loop $for-loop|2 local.get $10 i32.load offset=12 - local.get $4 + local.get $0 i32.gt_s if + local.get $0 + local.tee $1 local.get $10 i32.load offset=12 - local.get $4 - i32.le_u + i32.ge_u if i32.const 1248 i32.const 1728 @@ -19675,21 +19680,21 @@ end local.get $10 i32.load offset=4 - local.get $4 + local.get $1 i32.const 2 i32.shl i32.add f32.load - local.set $3 + local.set $5 local.get $9 - local.get $4 + local.get $1 call $~lib/array/Array#__get - local.set $13 - local.get $8 + local.set $7 + local.get $3 i32.load - local.get $8 - i32.load offset=4 local.get $3 + i32.load offset=4 + local.get $5 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19723,36 +19728,36 @@ i32.shl i32.add i32.load - local.set $0 + local.set $4 block $__inlined_func$~lib/map/Map#find12 loop $while-continue|013 - local.get $0 + local.get $4 if - local.get $0 + local.get $4 i32.load offset=8 - local.tee $1 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 - local.get $0 + local.get $5 + local.get $4 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find12 - local.get $1 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $4 br $while-continue|013 end end i32.const 0 - local.set $0 + local.set $4 end - local.get $0 + local.get $4 i32.eqz if i32.const 0 @@ -19762,15 +19767,15 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $3 i32.load - local.get $8 + local.get $3 i32.load offset=4 - local.get $13 + local.get $7 i32.const 20 i32.sub f32.convert_i32_s - local.tee $14 + local.tee $13 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19804,36 +19809,36 @@ i32.shl i32.add i32.load - local.set $0 + local.set $4 block $__inlined_func$~lib/map/Map#find15 loop $while-continue|016 - local.get $0 + local.get $4 if - local.get $0 + local.get $4 i32.load offset=8 - local.tee $1 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $14 - local.get $0 + local.get $13 + local.get $4 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find15 - local.get $1 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $4 br $while-continue|016 end end i32.const 0 - local.set $0 + local.set $4 end - local.get $0 + local.get $4 i32.eqz if i32.const 0 @@ -19856,7 +19861,7 @@ i32.store local.get $11 i32.load - local.get $3 + local.get $5 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -19885,7 +19890,7 @@ i32.const 16 i32.shr_u i32.xor - local.tee $15 + local.tee $14 local.get $11 i32.load offset=4 i32.and @@ -19893,39 +19898,39 @@ i32.shl i32.add i32.load - local.set $0 + local.set $4 block $__inlined_func$~lib/map/Map#find17 loop $while-continue|018 - local.get $0 + local.get $4 if - local.get $0 + local.get $4 i32.load offset=8 - local.tee $1 + local.tee $0 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 - local.get $0 + local.get $5 + local.get $4 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find17 - local.get $1 + local.get $0 i32.const -2 i32.and - local.set $0 + local.set $4 br $while-continue|018 end end i32.const 0 - local.set $0 + local.set $4 end - local.get $0 + local.get $4 if - local.get $0 - local.get $3 + local.get $4 + local.get $5 f32.store offset=4 else local.get $11 @@ -19954,7 +19959,7 @@ i32.const 1 i32.or end - local.set $16 + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -19968,14 +19973,14 @@ i64.const 0 i64.store local.get $0 - local.get $16 + local.get $4 i32.const 1 i32.add local.tee $0 i32.const 2 i32.shl call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $5 + local.tee $8 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -19983,45 +19988,45 @@ i32.shl i32.const 3 i32.div_s - local.tee $6 + local.tee $15 i32.const 12 i32.mul call $~lib/arraybuffer/ArrayBuffer#constructor - local.tee $1 + local.tee $2 i32.store offset=4 local.get $11 i32.load offset=8 - local.tee $2 + local.tee $6 local.get $11 i32.load offset=16 i32.const 12 i32.mul i32.add - local.set $7 - local.get $1 + local.set $16 + local.get $2 local.set $0 loop $while-continue|019 - local.get $2 - local.get $7 + local.get $6 + local.get $16 i32.ne if - local.get $2 + local.get $6 i32.load offset=8 i32.const 1 i32.and i32.eqz if local.get $0 - local.get $2 + local.get $6 f32.load - local.tee $14 + local.tee $13 f32.store local.get $0 - local.get $2 + local.get $6 f32.load offset=4 f32.store offset=4 local.get $0 - local.get $14 + local.get $13 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20050,11 +20055,11 @@ i32.const 16 i32.shr_u i32.xor - local.get $16 + local.get $4 i32.and i32.const 2 i32.shl - local.get $5 + local.get $8 i32.add local.tee $17 i32.load @@ -20067,36 +20072,36 @@ i32.add local.set $0 end - local.get $2 + local.get $6 i32.const 12 i32.add - local.set $2 + local.set $6 br $while-continue|019 end end local.get $11 - local.get $5 + local.get $8 i32.store - local.get $5 + local.get $8 if local.get $11 - local.get $5 + local.get $8 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $11 - local.get $16 + local.get $4 i32.store offset=4 local.get $11 - local.get $1 + local.get $2 i32.store offset=8 - local.get $1 + local.get $2 if local.get $11 - local.get $1 + local.get $2 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $11 - local.get $6 + local.get $15 i32.store offset=12 local.get $11 local.get $11 @@ -20115,20 +20120,20 @@ local.get $11 local.get $11 i32.load offset=16 - local.tee $1 + local.tee $2 i32.const 1 i32.add i32.store offset=16 - local.get $1 + local.get $2 i32.const 12 i32.mul local.get $0 i32.add local.tee $0 - local.get $3 + local.get $5 f32.store local.get $0 - local.get $3 + local.get $5 f32.store offset=4 local.get $11 local.get $11 @@ -20141,15 +20146,15 @@ i32.load local.get $11 i32.load offset=4 - local.get $15 + local.get $14 i32.and i32.const 2 i32.shl i32.add - local.tee $1 + local.tee $2 i32.load i32.store offset=8 - local.get $1 + local.get $2 local.get $0 i32.store end @@ -20158,16 +20163,16 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $12 - local.get $13 + local.get $7 i32.const 20 i32.sub local.tee $0 local.get $0 call $~lib/map/Map#set - local.get $4 + local.get $1 i32.const 1 i32.add - local.set $4 + local.set $0 br $for-loop|2 end end @@ -20196,17 +20201,17 @@ unreachable end f32.const 0 - local.set $3 + local.set $5 loop $for-loop|3 - local.get $3 + local.get $5 f32.const 50 f32.lt if - local.get $8 + local.get $3 i32.load - local.get $8 - i32.load offset=4 local.get $3 + i32.load offset=4 + local.get $5 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20240,36 +20245,36 @@ i32.shl i32.add i32.load - local.set $1 + local.set $0 block $__inlined_func$~lib/map/Map#find21 loop $while-continue|022 - local.get $1 + local.get $0 if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 - local.get $1 + local.get $5 + local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find21 - local.get $0 + local.get $1 i32.const -2 i32.and - local.set $1 + local.set $0 br $while-continue|022 end end i32.const 0 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.eqz if i32.const 0 @@ -20279,10 +20284,10 @@ call $~lib/builtins/abort unreachable end - local.get $8 local.get $3 + local.get $5 call $~lib/map/Map#get - local.get $3 + local.get $5 i32.trunc_f32_s i32.const 20 i32.add @@ -20295,14 +20300,14 @@ call $~lib/builtins/abort unreachable end - local.get $8 local.get $3 + local.get $5 call $~lib/map/Map#delete - local.get $8 + local.get $3 i32.load - local.get $8 - i32.load offset=4 local.get $3 + i32.load offset=4 + local.get $5 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20336,36 +20341,36 @@ i32.shl i32.add i32.load - local.set $1 + local.set $0 block $__inlined_func$~lib/map/Map#find24 loop $while-continue|025 - local.get $1 + local.get $0 if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 - local.get $1 + local.get $5 + local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find24 - local.get $0 + local.get $1 i32.const -2 i32.and - local.set $1 + local.set $0 br $while-continue|025 end end i32.const 0 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -20374,14 +20379,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 f32.const 1 f32.add - local.set $3 + local.set $5 br $for-loop|3 end end - local.get $8 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -20394,17 +20399,17 @@ unreachable end f32.const 0 - local.set $3 + local.set $5 loop $for-loop|4 - local.get $3 + local.get $5 f32.const 50 f32.lt if - local.get $8 + local.get $3 i32.load - local.get $8 - i32.load offset=4 local.get $3 + i32.load offset=4 + local.get $5 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20438,36 +20443,36 @@ i32.shl i32.add i32.load - local.set $1 + local.set $0 block $__inlined_func$~lib/map/Map#find27 loop $while-continue|028 - local.get $1 + local.get $0 if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 - local.get $1 + local.get $5 + local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find27 - local.get $0 + local.get $1 i32.const -2 i32.and - local.set $1 + local.set $0 br $while-continue|028 end end i32.const 0 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -20476,18 +20481,18 @@ call $~lib/builtins/abort unreachable end - local.get $8 - local.get $3 local.get $3 + local.get $5 + local.get $5 i32.trunc_f32_s i32.const 10 i32.add call $~lib/map/Map#set - local.get $8 + local.get $3 i32.load - local.get $8 - i32.load offset=4 local.get $3 + i32.load offset=4 + local.get $5 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20521,36 +20526,36 @@ i32.shl i32.add i32.load - local.set $1 + local.set $0 block $__inlined_func$~lib/map/Map#find30 loop $while-continue|031 - local.get $1 + local.get $0 if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 - local.get $1 + local.get $5 + local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find30 - local.get $0 + local.get $1 i32.const -2 i32.and - local.set $1 + local.set $0 br $while-continue|031 end end i32.const 0 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 i32.eqz if i32.const 0 @@ -20560,14 +20565,14 @@ call $~lib/builtins/abort unreachable end - local.get $8 local.get $3 + local.get $5 call $~lib/map/Map#delete - local.get $8 + local.get $3 i32.load - local.get $8 - i32.load offset=4 local.get $3 + i32.load offset=4 + local.get $5 i32.reinterpret_f32 i32.const -1028477379 i32.mul @@ -20601,36 +20606,36 @@ i32.shl i32.add i32.load - local.set $1 + local.set $0 block $__inlined_func$~lib/map/Map#find33 loop $while-continue|034 - local.get $1 + local.get $0 if - local.get $1 + local.get $0 i32.load offset=8 - local.tee $0 + local.tee $1 i32.const 1 i32.and if (result i32) i32.const 0 else - local.get $3 - local.get $1 + local.get $5 + local.get $0 f32.load f32.eq end br_if $__inlined_func$~lib/map/Map#find33 - local.get $0 + local.get $1 i32.const -2 i32.and - local.set $1 + local.set $0 br $while-continue|034 end end i32.const 0 - local.set $1 + local.set $0 end - local.get $1 + local.get $0 if i32.const 0 i32.const 1568 @@ -20639,14 +20644,14 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $5 f32.const 1 f32.add - local.set $3 + local.set $5 br $for-loop|4 end end - local.get $8 + local.get $3 i32.load offset=20 i32.const 50 i32.ne @@ -20658,9 +20663,9 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $3 call $~lib/map/Map#clear - local.get $8 + local.get $3 i32.load offset=20 if i32.const 0 diff --git a/tests/compiler/std/string.optimized.wat b/tests/compiler/std/string.optimized.wat index abd5dbd4e5..bc2d72eefb 100644 --- a/tests/compiler/std/string.optimized.wat +++ b/tests/compiler/std/string.optimized.wat @@ -6028,7 +6028,7 @@ i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $2 + local.get $0 local.get $4 i32.store offset=12 ) @@ -21646,38 +21646,38 @@ local.get $0 i32.const 2 i32.shl - local.tee $3 local.tee $4 + local.tee $5 i32.const 0 call $~lib/rt/itcms/__new - local.set $5 + local.set $3 local.get $2 if - local.get $5 + local.get $3 local.get $2 - local.get $4 + local.get $5 call $~lib/memory/memory.copy end - local.get $5 + local.get $3 i32.store i32.const 16 local.get $1 call $~lib/rt/itcms/__new local.tee $1 - local.get $5 + local.get $3 i32.store - local.get $5 + local.get $3 if local.get $1 - local.get $5 + local.get $3 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $1 - local.get $5 + local.get $3 i32.store offset=4 local.get $1 - local.get $3 + local.get $4 i32.store offset=8 local.get $1 local.get $0 From 99c95de8300457c1c157774f18705de0785a152b Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 26 Oct 2021 14:45:07 +0300 Subject: [PATCH 49/54] add local-subtyping pass for GC --- src/module.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/module.ts b/src/module.ts index 795cbcf28d..36fe2ee077 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2391,6 +2391,10 @@ export class Module { } if (optimizeLevel > 1 && (this.getFeatures() & FeatureFlags.GC) != 0) { passes.push("heap2local"); + if (optimizeLevel >= 2) { + passes.push("merge-locals"); + } + passes.push("local-subtyping"); } // precompute works best after global optimizations if (optimizeLevel >= 2 || shrinkLevel >= 1) { From eea18d24edc2ab633f7420d4afd05037cd634980 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Wed, 27 Oct 2021 12:21:26 +0300 Subject: [PATCH 50/54] update --- package-lock.json | 14 +++---- package.json | 2 +- tests/compiler/call-super.optimized.wat | 4 +- tests/compiler/class-implements.optimized.wat | 4 +- .../class-overloading-cast.optimized.wat | 4 +- .../compiler/class-overloading.optimized.wat | 4 +- tests/compiler/class.optimized.wat | 4 +- tests/compiler/constructor.optimized.wat | 4 +- tests/compiler/do.optimized.wat | 4 +- .../empty-exportruntime.optimized.wat | 4 +- tests/compiler/empty-new.optimized.wat | 4 +- tests/compiler/exports.optimized.wat | 4 +- .../exportstar-rereexport.optimized.wat | 4 +- .../extends-baseaggregate.optimized.wat | 4 +- .../compiler/extends-recursive.optimized.wat | 4 +- tests/compiler/features/simd.optimized.wat | 4 +- .../field-initialization.optimized.wat | 4 +- tests/compiler/field.optimized.wat | 4 +- tests/compiler/for.optimized.wat | 4 +- tests/compiler/function-call.optimized.wat | 4 +- .../function-expression.optimized.wat | 4 +- tests/compiler/getter-call.optimized.wat | 4 +- tests/compiler/heap.optimized.wat | 4 +- .../implicit-getter-setter.optimized.wat | 4 +- tests/compiler/infer-array.optimized.wat | 4 +- tests/compiler/infer-generic.optimized.wat | 4 +- tests/compiler/inlining.optimized.wat | 4 +- tests/compiler/instanceof-class.optimized.wat | 4 +- tests/compiler/issues/1095.optimized.wat | 4 +- tests/compiler/issues/1225.optimized.wat | 4 +- tests/compiler/issues/1699.optimized.wat | 4 +- tests/compiler/logical.optimized.wat | 4 +- tests/compiler/managed-cast.optimized.wat | 4 +- tests/compiler/new.optimized.wat | 4 +- tests/compiler/number.optimized.wat | 4 +- tests/compiler/object-literal.optimized.wat | 4 +- .../optional-typeparameters.optimized.wat | 4 +- tests/compiler/reexport.optimized.wat | 4 +- tests/compiler/rereexport.optimized.wat | 4 +- tests/compiler/resolve-access.optimized.wat | 4 +- tests/compiler/resolve-binary.optimized.wat | 4 +- .../resolve-elementaccess.optimized.wat | 4 +- .../resolve-function-expression.optimized.wat | 4 +- tests/compiler/resolve-nested.optimized.wat | 4 +- tests/compiler/resolve-new.optimized.wat | 4 +- .../resolve-propertyaccess.optimized.wat | 4 +- tests/compiler/resolve-ternary.optimized.wat | 4 +- tests/compiler/resolve-unary.optimized.wat | 4 +- tests/compiler/rt/finalize.optimized.wat | 4 +- tests/compiler/rt/instanceof.optimized.wat | 4 +- .../runtime-incremental-export.optimized.wat | 4 +- .../rt/runtime-minimal-export.optimized.wat | 4 +- tests/compiler/scoped.optimized.wat | 8 ++-- tests/compiler/std-wasi/console.optimized.wat | 4 +- tests/compiler/std-wasi/crypto.optimized.wat | 4 +- tests/compiler/std-wasi/process.optimized.wat | 4 +- .../compiler/std/array-literal.optimized.wat | 4 +- tests/compiler/std/array.optimized.wat | 40 +++++++++---------- tests/compiler/std/arraybuffer.optimized.wat | 7 ++-- tests/compiler/std/dataview.optimized.wat | 4 +- tests/compiler/std/date.optimized.wat | 4 +- tests/compiler/std/map.optimized.wat | 4 +- tests/compiler/std/new.optimized.wat | 4 +- .../std/operator-overloading.optimized.wat | 4 +- tests/compiler/std/set.optimized.wat | 4 +- tests/compiler/std/static-array.optimized.wat | 10 ++--- tests/compiler/std/staticarray.optimized.wat | 10 ++--- .../std/string-casemapping.optimized.wat | 4 +- .../std/string-encoding.optimized.wat | 4 +- tests/compiler/std/string.optimized.wat | 20 +++++----- tests/compiler/std/symbol.optimized.wat | 4 +- tests/compiler/std/typedarray.optimized.wat | 4 +- tests/compiler/std/uri.optimized.wat | 4 +- tests/compiler/super-inline.optimized.wat | 4 +- tests/compiler/templateliteral.optimized.wat | 4 +- tests/compiler/throw.optimized.wat | 4 +- tests/compiler/typeof.optimized.wat | 4 +- tests/compiler/wasi/trace.optimized.wat | 4 +- tests/compiler/while.optimized.wat | 12 +++--- 79 files changed, 198 insertions(+), 205 deletions(-) diff --git a/package-lock.json b/package-lock.json index 28d3ce5599..407bb3a990 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "102.0.0-nightly.20211022", + "binaryen": "102.0.0-nightly.20211027", "long": "^4.0.0", "source-map-support": "^0.5.20", "ts-node": "^6.2.0" @@ -756,9 +756,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "102.0.0-nightly.20211022", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211022.tgz", - "integrity": "sha512-c9JZR27nTzXbUhzOj9BlvRf7pTAN0p80p1lCKqTHAWtCpRDtLq+qRcZ6kzJicqt1Wlvqnabz+LBhqCpi8Cdcuw==", + "version": "102.0.0-nightly.20211027", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211027.tgz", + "integrity": "sha512-YGo6nG0JGytWSTelqmRgbrb6mYmZUl/wq0XLQj6wHnPVLxw6U4I7jJSVmrQkPIlHQ40cH6o94eU1JcQze+qFnQ==", "bin": { "wasm-opt": "bin/wasm-opt" } @@ -3572,9 +3572,9 @@ "dev": true }, "binaryen": { - "version": "102.0.0-nightly.20211022", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211022.tgz", - "integrity": "sha512-c9JZR27nTzXbUhzOj9BlvRf7pTAN0p80p1lCKqTHAWtCpRDtLq+qRcZ6kzJicqt1Wlvqnabz+LBhqCpi8Cdcuw==" + "version": "102.0.0-nightly.20211027", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211027.tgz", + "integrity": "sha512-YGo6nG0JGytWSTelqmRgbrb6mYmZUl/wq0XLQj6wHnPVLxw6U4I7jJSVmrQkPIlHQ40cH6o94eU1JcQze+qFnQ==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index b0fa2f5e5f..54dd62c897 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "url": "https://github.com/AssemblyScript/assemblyscript/issues" }, "dependencies": { - "binaryen": "102.0.0-nightly.20211022", + "binaryen": "102.0.0-nightly.20211027", "long": "^4.0.0", "source-map-support": "^0.5.20", "ts-node": "^6.2.0" diff --git a/tests/compiler/call-super.optimized.wat b/tests/compiler/call-super.optimized.wat index 608ecf8b50..f57498eeea 100644 --- a/tests/compiler/call-super.optimized.wat +++ b/tests/compiler/call-super.optimized.wat @@ -596,8 +596,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/class-implements.optimized.wat b/tests/compiler/class-implements.optimized.wat index 878c3539dd..9fda589c77 100644 --- a/tests/compiler/class-implements.optimized.wat +++ b/tests/compiler/class-implements.optimized.wat @@ -618,8 +618,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/class-overloading-cast.optimized.wat b/tests/compiler/class-overloading-cast.optimized.wat index ae0f792580..7c0f2cfb87 100644 --- a/tests/compiler/class-overloading-cast.optimized.wat +++ b/tests/compiler/class-overloading-cast.optimized.wat @@ -632,8 +632,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/class-overloading.optimized.wat b/tests/compiler/class-overloading.optimized.wat index 020a4b12c0..85fa21eab4 100644 --- a/tests/compiler/class-overloading.optimized.wat +++ b/tests/compiler/class-overloading.optimized.wat @@ -656,8 +656,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/class.optimized.wat b/tests/compiler/class.optimized.wat index dbc550ac1b..36d5739d46 100644 --- a/tests/compiler/class.optimized.wat +++ b/tests/compiler/class.optimized.wat @@ -738,8 +738,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/constructor.optimized.wat b/tests/compiler/constructor.optimized.wat index 0de37ee650..e503951a8d 100644 --- a/tests/compiler/constructor.optimized.wat +++ b/tests/compiler/constructor.optimized.wat @@ -673,8 +673,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/do.optimized.wat b/tests/compiler/do.optimized.wat index e099e11ba8..3a6eb21a03 100644 --- a/tests/compiler/do.optimized.wat +++ b/tests/compiler/do.optimized.wat @@ -596,8 +596,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/empty-exportruntime.optimized.wat b/tests/compiler/empty-exportruntime.optimized.wat index d18643ef2f..36f878bfc5 100644 --- a/tests/compiler/empty-exportruntime.optimized.wat +++ b/tests/compiler/empty-exportruntime.optimized.wat @@ -744,8 +744,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/empty-new.optimized.wat b/tests/compiler/empty-new.optimized.wat index c1a46990c4..25c28ebc6f 100644 --- a/tests/compiler/empty-new.optimized.wat +++ b/tests/compiler/empty-new.optimized.wat @@ -592,8 +592,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/exports.optimized.wat b/tests/compiler/exports.optimized.wat index 33d81ce617..3c66d1990d 100644 --- a/tests/compiler/exports.optimized.wat +++ b/tests/compiler/exports.optimized.wat @@ -646,8 +646,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/exportstar-rereexport.optimized.wat b/tests/compiler/exportstar-rereexport.optimized.wat index 06de108299..50c1473a52 100644 --- a/tests/compiler/exportstar-rereexport.optimized.wat +++ b/tests/compiler/exportstar-rereexport.optimized.wat @@ -647,8 +647,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/extends-baseaggregate.optimized.wat b/tests/compiler/extends-baseaggregate.optimized.wat index 9ed92525a9..820757f700 100644 --- a/tests/compiler/extends-baseaggregate.optimized.wat +++ b/tests/compiler/extends-baseaggregate.optimized.wat @@ -744,8 +744,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/extends-recursive.optimized.wat b/tests/compiler/extends-recursive.optimized.wat index f87a4adf5b..2b3d08b7b4 100644 --- a/tests/compiler/extends-recursive.optimized.wat +++ b/tests/compiler/extends-recursive.optimized.wat @@ -733,8 +733,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/features/simd.optimized.wat b/tests/compiler/features/simd.optimized.wat index 6657267640..7b09a7e9a6 100644 --- a/tests/compiler/features/simd.optimized.wat +++ b/tests/compiler/features/simd.optimized.wat @@ -532,8 +532,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/field-initialization.optimized.wat b/tests/compiler/field-initialization.optimized.wat index 427c81a817..983d7b4f3f 100644 --- a/tests/compiler/field-initialization.optimized.wat +++ b/tests/compiler/field-initialization.optimized.wat @@ -751,8 +751,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/field.optimized.wat b/tests/compiler/field.optimized.wat index 1d930b4d8c..9f4d2c187a 100644 --- a/tests/compiler/field.optimized.wat +++ b/tests/compiler/field.optimized.wat @@ -729,8 +729,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/for.optimized.wat b/tests/compiler/for.optimized.wat index a5fa15c463..50bf8dd7c8 100644 --- a/tests/compiler/for.optimized.wat +++ b/tests/compiler/for.optimized.wat @@ -596,8 +596,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/function-call.optimized.wat b/tests/compiler/function-call.optimized.wat index 76cd5bdafd..2316b256cb 100644 --- a/tests/compiler/function-call.optimized.wat +++ b/tests/compiler/function-call.optimized.wat @@ -634,8 +634,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/function-expression.optimized.wat b/tests/compiler/function-expression.optimized.wat index f497958ef9..b631942f37 100644 --- a/tests/compiler/function-expression.optimized.wat +++ b/tests/compiler/function-expression.optimized.wat @@ -797,8 +797,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/getter-call.optimized.wat b/tests/compiler/getter-call.optimized.wat index 098f1c23d5..947f743f02 100644 --- a/tests/compiler/getter-call.optimized.wat +++ b/tests/compiler/getter-call.optimized.wat @@ -599,8 +599,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/heap.optimized.wat b/tests/compiler/heap.optimized.wat index aca163e326..62063b669b 100644 --- a/tests/compiler/heap.optimized.wat +++ b/tests/compiler/heap.optimized.wat @@ -541,8 +541,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/implicit-getter-setter.optimized.wat b/tests/compiler/implicit-getter-setter.optimized.wat index 395fc747b4..4c5afbfd43 100644 --- a/tests/compiler/implicit-getter-setter.optimized.wat +++ b/tests/compiler/implicit-getter-setter.optimized.wat @@ -739,8 +739,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/infer-array.optimized.wat b/tests/compiler/infer-array.optimized.wat index 43824b2885..53d477f058 100644 --- a/tests/compiler/infer-array.optimized.wat +++ b/tests/compiler/infer-array.optimized.wat @@ -765,8 +765,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/infer-generic.optimized.wat b/tests/compiler/infer-generic.optimized.wat index e3b2696c0a..646bef4e1a 100644 --- a/tests/compiler/infer-generic.optimized.wat +++ b/tests/compiler/infer-generic.optimized.wat @@ -621,8 +621,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/inlining.optimized.wat b/tests/compiler/inlining.optimized.wat index a29dcffdf4..06cac7f4d7 100644 --- a/tests/compiler/inlining.optimized.wat +++ b/tests/compiler/inlining.optimized.wat @@ -608,8 +608,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/instanceof-class.optimized.wat b/tests/compiler/instanceof-class.optimized.wat index d839c627fe..ce647effca 100644 --- a/tests/compiler/instanceof-class.optimized.wat +++ b/tests/compiler/instanceof-class.optimized.wat @@ -610,8 +610,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/issues/1095.optimized.wat b/tests/compiler/issues/1095.optimized.wat index b20f2b6656..280cf4e218 100644 --- a/tests/compiler/issues/1095.optimized.wat +++ b/tests/compiler/issues/1095.optimized.wat @@ -733,8 +733,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/issues/1225.optimized.wat b/tests/compiler/issues/1225.optimized.wat index 0688f2738c..cb2cba41e8 100644 --- a/tests/compiler/issues/1225.optimized.wat +++ b/tests/compiler/issues/1225.optimized.wat @@ -605,8 +605,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/issues/1699.optimized.wat b/tests/compiler/issues/1699.optimized.wat index ac34f333d9..659db3d84d 100644 --- a/tests/compiler/issues/1699.optimized.wat +++ b/tests/compiler/issues/1699.optimized.wat @@ -740,8 +740,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/logical.optimized.wat b/tests/compiler/logical.optimized.wat index 700fc0a95d..ccb97ded3c 100644 --- a/tests/compiler/logical.optimized.wat +++ b/tests/compiler/logical.optimized.wat @@ -596,8 +596,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/managed-cast.optimized.wat b/tests/compiler/managed-cast.optimized.wat index 3b5b38560d..9c90698515 100644 --- a/tests/compiler/managed-cast.optimized.wat +++ b/tests/compiler/managed-cast.optimized.wat @@ -600,8 +600,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/new.optimized.wat b/tests/compiler/new.optimized.wat index 7380be7ade..bc6f9e6232 100644 --- a/tests/compiler/new.optimized.wat +++ b/tests/compiler/new.optimized.wat @@ -636,8 +636,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/number.optimized.wat b/tests/compiler/number.optimized.wat index 60b6610a38..cdae122257 100644 --- a/tests/compiler/number.optimized.wat +++ b/tests/compiler/number.optimized.wat @@ -643,8 +643,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/object-literal.optimized.wat b/tests/compiler/object-literal.optimized.wat index 1245f9dffb..53b247c212 100644 --- a/tests/compiler/object-literal.optimized.wat +++ b/tests/compiler/object-literal.optimized.wat @@ -797,8 +797,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/optional-typeparameters.optimized.wat b/tests/compiler/optional-typeparameters.optimized.wat index cdd92639bc..4568d4669d 100644 --- a/tests/compiler/optional-typeparameters.optimized.wat +++ b/tests/compiler/optional-typeparameters.optimized.wat @@ -608,8 +608,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/reexport.optimized.wat b/tests/compiler/reexport.optimized.wat index a66ddcedcb..3c74c1a97d 100644 --- a/tests/compiler/reexport.optimized.wat +++ b/tests/compiler/reexport.optimized.wat @@ -685,8 +685,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/rereexport.optimized.wat b/tests/compiler/rereexport.optimized.wat index 053035edda..f96cd48ccd 100644 --- a/tests/compiler/rereexport.optimized.wat +++ b/tests/compiler/rereexport.optimized.wat @@ -647,8 +647,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/resolve-access.optimized.wat b/tests/compiler/resolve-access.optimized.wat index c7b7f08203..6d7c35b4f4 100644 --- a/tests/compiler/resolve-access.optimized.wat +++ b/tests/compiler/resolve-access.optimized.wat @@ -751,8 +751,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/resolve-binary.optimized.wat b/tests/compiler/resolve-binary.optimized.wat index 61adda517f..5a2bd3e666 100644 --- a/tests/compiler/resolve-binary.optimized.wat +++ b/tests/compiler/resolve-binary.optimized.wat @@ -936,8 +936,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/resolve-elementaccess.optimized.wat b/tests/compiler/resolve-elementaccess.optimized.wat index 8621cdd170..ea597c6070 100644 --- a/tests/compiler/resolve-elementaccess.optimized.wat +++ b/tests/compiler/resolve-elementaccess.optimized.wat @@ -803,8 +803,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/resolve-function-expression.optimized.wat b/tests/compiler/resolve-function-expression.optimized.wat index c858d0bdfa..9b6256d256 100644 --- a/tests/compiler/resolve-function-expression.optimized.wat +++ b/tests/compiler/resolve-function-expression.optimized.wat @@ -636,8 +636,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/resolve-nested.optimized.wat b/tests/compiler/resolve-nested.optimized.wat index 101a1f9032..fe058cc0aa 100644 --- a/tests/compiler/resolve-nested.optimized.wat +++ b/tests/compiler/resolve-nested.optimized.wat @@ -605,8 +605,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/resolve-new.optimized.wat b/tests/compiler/resolve-new.optimized.wat index e594fe24c6..8cc979a005 100644 --- a/tests/compiler/resolve-new.optimized.wat +++ b/tests/compiler/resolve-new.optimized.wat @@ -601,8 +601,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/resolve-propertyaccess.optimized.wat b/tests/compiler/resolve-propertyaccess.optimized.wat index 3f5bdf1d39..d6680565ff 100644 --- a/tests/compiler/resolve-propertyaccess.optimized.wat +++ b/tests/compiler/resolve-propertyaccess.optimized.wat @@ -636,8 +636,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/resolve-ternary.optimized.wat b/tests/compiler/resolve-ternary.optimized.wat index 2826398e75..7ae264bda3 100644 --- a/tests/compiler/resolve-ternary.optimized.wat +++ b/tests/compiler/resolve-ternary.optimized.wat @@ -640,8 +640,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/resolve-unary.optimized.wat b/tests/compiler/resolve-unary.optimized.wat index 405339add3..894b816720 100644 --- a/tests/compiler/resolve-unary.optimized.wat +++ b/tests/compiler/resolve-unary.optimized.wat @@ -656,8 +656,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/rt/finalize.optimized.wat b/tests/compiler/rt/finalize.optimized.wat index 1312411776..d4af2b697a 100644 --- a/tests/compiler/rt/finalize.optimized.wat +++ b/tests/compiler/rt/finalize.optimized.wat @@ -599,8 +599,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/rt/instanceof.optimized.wat b/tests/compiler/rt/instanceof.optimized.wat index 29289dcc40..b76a919feb 100644 --- a/tests/compiler/rt/instanceof.optimized.wat +++ b/tests/compiler/rt/instanceof.optimized.wat @@ -639,8 +639,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/rt/runtime-incremental-export.optimized.wat b/tests/compiler/rt/runtime-incremental-export.optimized.wat index d18643ef2f..36f878bfc5 100644 --- a/tests/compiler/rt/runtime-incremental-export.optimized.wat +++ b/tests/compiler/rt/runtime-incremental-export.optimized.wat @@ -744,8 +744,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/rt/runtime-minimal-export.optimized.wat b/tests/compiler/rt/runtime-minimal-export.optimized.wat index 7be4069841..e36f1bfcb7 100644 --- a/tests/compiler/rt/runtime-minimal-export.optimized.wat +++ b/tests/compiler/rt/runtime-minimal-export.optimized.wat @@ -549,8 +549,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/scoped.optimized.wat b/tests/compiler/scoped.optimized.wat index d9bbd8322b..f232378501 100644 --- a/tests/compiler/scoped.optimized.wat +++ b/tests/compiler/scoped.optimized.wat @@ -7,8 +7,8 @@ (local $0 i32) loop $for-loop|0 local.get $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if local.get $0 i32.const 1 @@ -21,8 +21,8 @@ local.set $0 loop $for-loop|1 local.get $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if local.get $0 i32.const 1 diff --git a/tests/compiler/std-wasi/console.optimized.wat b/tests/compiler/std-wasi/console.optimized.wat index cdf4999bcb..0dd19d9487 100644 --- a/tests/compiler/std-wasi/console.optimized.wat +++ b/tests/compiler/std-wasi/console.optimized.wat @@ -1517,8 +1517,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/std-wasi/crypto.optimized.wat b/tests/compiler/std-wasi/crypto.optimized.wat index 0bc857c017..b9bced5e12 100644 --- a/tests/compiler/std-wasi/crypto.optimized.wat +++ b/tests/compiler/std-wasi/crypto.optimized.wat @@ -1367,8 +1367,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/std-wasi/process.optimized.wat b/tests/compiler/std-wasi/process.optimized.wat index 9e76ecd9bf..497be7955f 100644 --- a/tests/compiler/std-wasi/process.optimized.wat +++ b/tests/compiler/std-wasi/process.optimized.wat @@ -1503,8 +1503,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/std/array-literal.optimized.wat b/tests/compiler/std/array-literal.optimized.wat index 9671e7bbaa..ef5d2c9f11 100644 --- a/tests/compiler/std/array-literal.optimized.wat +++ b/tests/compiler/std/array-literal.optimized.wat @@ -824,8 +824,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index 7c1a7afffd..ffd65decf8 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -1438,8 +1438,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 @@ -3655,8 +3655,8 @@ local.get $0 i32.load offset=12 local.tee $1 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if i32.const 2176 i32.const 1104 @@ -4281,8 +4281,8 @@ ) (func $start:std/array~anonymous|16 (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 - i32.const -1 - i32.le_s + i32.const 0 + i32.lt_s ) (func $start:std/array~anonymous|17 (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $2 @@ -16632,8 +16632,8 @@ local.get $0 i32.load offset=12 local.tee $1 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if i32.const 2176 i32.const 1104 @@ -31278,8 +31278,8 @@ local.get $0 i32.load offset=12 local.tee $1 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if i32.const 2176 i32.const 1104 @@ -31502,8 +31502,8 @@ local.get $0 i32.load offset=12 local.tee $3 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if i32.const 2176 i32.const 1104 @@ -33201,8 +33201,8 @@ local.get $0 i32.load offset=12 local.tee $1 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if i32.const 2176 i32.const 1104 @@ -33418,8 +33418,8 @@ local.get $0 i32.load offset=12 local.tee $3 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if i32.const 2176 i32.const 1104 @@ -35042,8 +35042,8 @@ local.get $0 i32.load offset=12 local.tee $2 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if i32.const 2176 i32.const 1104 @@ -35312,8 +35312,8 @@ local.get $0 i32.load offset=12 local.tee $2 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if i32.const 2176 i32.const 1104 diff --git a/tests/compiler/std/arraybuffer.optimized.wat b/tests/compiler/std/arraybuffer.optimized.wat index 49a7ca2a25..22c90ca44a 100644 --- a/tests/compiler/std/arraybuffer.optimized.wat +++ b/tests/compiler/std/arraybuffer.optimized.wat @@ -741,8 +741,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 @@ -3257,8 +3257,7 @@ i32.const 1073741820 local.get $1 i32.shr_u - i32.const 1 - i32.lt_u + i32.eqz if i32.const 1056 i32.const 1104 diff --git a/tests/compiler/std/dataview.optimized.wat b/tests/compiler/std/dataview.optimized.wat index f3c8d95750..cbd3c5fff7 100644 --- a/tests/compiler/std/dataview.optimized.wat +++ b/tests/compiler/std/dataview.optimized.wat @@ -747,8 +747,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/std/date.optimized.wat b/tests/compiler/std/date.optimized.wat index bef658bd86..0c7c84b277 100644 --- a/tests/compiler/std/date.optimized.wat +++ b/tests/compiler/std/date.optimized.wat @@ -1107,8 +1107,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/std/map.optimized.wat b/tests/compiler/std/map.optimized.wat index 44ffd2e93b..3c1f5f2528 100644 --- a/tests/compiler/std/map.optimized.wat +++ b/tests/compiler/std/map.optimized.wat @@ -755,8 +755,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/std/new.optimized.wat b/tests/compiler/std/new.optimized.wat index 4b0ce598a2..797cbb8408 100644 --- a/tests/compiler/std/new.optimized.wat +++ b/tests/compiler/std/new.optimized.wat @@ -601,8 +601,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/std/operator-overloading.optimized.wat b/tests/compiler/std/operator-overloading.optimized.wat index 9b4336e399..efaa0b6304 100644 --- a/tests/compiler/std/operator-overloading.optimized.wat +++ b/tests/compiler/std/operator-overloading.optimized.wat @@ -660,8 +660,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/std/set.optimized.wat b/tests/compiler/std/set.optimized.wat index e82fd9fb60..b439c19c0f 100644 --- a/tests/compiler/std/set.optimized.wat +++ b/tests/compiler/std/set.optimized.wat @@ -748,8 +748,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/std/static-array.optimized.wat b/tests/compiler/std/static-array.optimized.wat index a4c2828d38..c973a59401 100644 --- a/tests/compiler/std/static-array.optimized.wat +++ b/tests/compiler/std/static-array.optimized.wat @@ -786,8 +786,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 @@ -2643,14 +2643,12 @@ local.tee $3 local.get $1 i32.shr_u - i32.const 1 - i32.lt_u + i32.eqz if i32.const 1073741820 local.get $1 i32.shr_u - i32.const 1 - i32.lt_u + i32.eqz if i32.const 1584 i32.const 1536 diff --git a/tests/compiler/std/staticarray.optimized.wat b/tests/compiler/std/staticarray.optimized.wat index 8aa0459478..d28683e09a 100644 --- a/tests/compiler/std/staticarray.optimized.wat +++ b/tests/compiler/std/staticarray.optimized.wat @@ -921,8 +921,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 @@ -5564,11 +5564,7 @@ i32.const 2 i32.shr_u local.tee $1 - i32.const -1 - i32.le_s - i32.const 1 - local.get $1 - select + i32.eqz br_if $__inlined_func$~lib/staticarray/StaticArray#indexOf34 local.get $1 i32.const 1 diff --git a/tests/compiler/std/string-casemapping.optimized.wat b/tests/compiler/std/string-casemapping.optimized.wat index 7cfc062fff..38a3381beb 100644 --- a/tests/compiler/std/string-casemapping.optimized.wat +++ b/tests/compiler/std/string-casemapping.optimized.wat @@ -1049,8 +1049,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/std/string-encoding.optimized.wat b/tests/compiler/std/string-encoding.optimized.wat index 63d07cd016..cf75434ac5 100644 --- a/tests/compiler/std/string-encoding.optimized.wat +++ b/tests/compiler/std/string-encoding.optimized.wat @@ -634,8 +634,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/std/string.optimized.wat b/tests/compiler/std/string.optimized.wat index bc2d72eefb..0888611a85 100644 --- a/tests/compiler/std/string.optimized.wat +++ b/tests/compiler/std/string.optimized.wat @@ -1773,8 +1773,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 @@ -23887,8 +23887,8 @@ end loop $while-continue|1 local.get $3 - i64.const 1 - i64.ge_u + i64.const 0 + i64.ne if local.get $3 local.get $7 @@ -24169,8 +24169,8 @@ end loop $while-continue|1 local.get $3 - i64.const 1 - i64.ge_u + i64.const 0 + i64.ne if local.get $3 local.get $6 @@ -24507,8 +24507,8 @@ end loop $while-continue|1 local.get $2 - i64.const 1 - i64.ge_u + i64.const 0 + i64.ne if local.get $2 local.get $5 @@ -24863,8 +24863,8 @@ end loop $while-continue|1 local.get $2 - i64.const 1 - i64.ge_u + i64.const 0 + i64.ne if local.get $2 local.get $6 diff --git a/tests/compiler/std/symbol.optimized.wat b/tests/compiler/std/symbol.optimized.wat index f602d2d873..b3930647c5 100644 --- a/tests/compiler/std/symbol.optimized.wat +++ b/tests/compiler/std/symbol.optimized.wat @@ -832,8 +832,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/std/typedarray.optimized.wat b/tests/compiler/std/typedarray.optimized.wat index 7c3be53d98..8c5d167c33 100644 --- a/tests/compiler/std/typedarray.optimized.wat +++ b/tests/compiler/std/typedarray.optimized.wat @@ -1392,8 +1392,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/std/uri.optimized.wat b/tests/compiler/std/uri.optimized.wat index bf68184510..c77e1bd517 100644 --- a/tests/compiler/std/uri.optimized.wat +++ b/tests/compiler/std/uri.optimized.wat @@ -715,8 +715,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/super-inline.optimized.wat b/tests/compiler/super-inline.optimized.wat index d7be17d2b1..cb404d4a83 100644 --- a/tests/compiler/super-inline.optimized.wat +++ b/tests/compiler/super-inline.optimized.wat @@ -608,8 +608,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/templateliteral.optimized.wat b/tests/compiler/templateliteral.optimized.wat index 8534106fcb..0df9b0401a 100644 --- a/tests/compiler/templateliteral.optimized.wat +++ b/tests/compiler/templateliteral.optimized.wat @@ -950,8 +950,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/throw.optimized.wat b/tests/compiler/throw.optimized.wat index 6255570cca..fc72802671 100644 --- a/tests/compiler/throw.optimized.wat +++ b/tests/compiler/throw.optimized.wat @@ -698,8 +698,8 @@ if memory.size local.tee $1 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $1 diff --git a/tests/compiler/typeof.optimized.wat b/tests/compiler/typeof.optimized.wat index e57f0eb06d..1c629d6406 100644 --- a/tests/compiler/typeof.optimized.wat +++ b/tests/compiler/typeof.optimized.wat @@ -738,8 +738,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/wasi/trace.optimized.wat b/tests/compiler/wasi/trace.optimized.wat index 01ad7f27c3..a28ff852c7 100644 --- a/tests/compiler/wasi/trace.optimized.wat +++ b/tests/compiler/wasi/trace.optimized.wat @@ -960,8 +960,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 diff --git a/tests/compiler/while.optimized.wat b/tests/compiler/while.optimized.wat index 225b00eb1b..00bc803084 100644 --- a/tests/compiler/while.optimized.wat +++ b/tests/compiler/while.optimized.wat @@ -596,8 +596,8 @@ (local $1 i32) memory.size local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s if (result i32) i32.const 1 local.get $0 @@ -1431,8 +1431,8 @@ i32.const 1 i32.add local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s br_if $while-continue|07 end i32.const 0 @@ -1442,8 +1442,8 @@ i32.const 1 i32.add local.tee $0 - i32.const 1 - i32.lt_s + i32.const 0 + i32.le_s br_if $while-continue|09 end i32.const 0 From 482dde4165844157563705a7d8fe35ef9636cd34 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Wed, 27 Oct 2021 12:49:58 +0300 Subject: [PATCH 51/54] refactor --- src/module.ts | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/module.ts b/src/module.ts index 36fe2ee077..f4ab962eb4 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2389,11 +2389,9 @@ export class Module { if (optimizeLevel >= 3 || shrinkLevel >= 1) { passes.push("code-folding"); } - if (optimizeLevel > 1 && (this.getFeatures() & FeatureFlags.GC) != 0) { + if (optimizeLevel >= 2 && (this.getFeatures() & FeatureFlags.GC) != 0) { passes.push("heap2local"); - if (optimizeLevel >= 2) { - passes.push("merge-locals"); - } + passes.push("merge-locals"); passes.push("local-subtyping"); } // precompute works best after global optimizations From a7895b615ad3a7cca3a76be90f465b85fce47c64 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sat, 30 Oct 2021 13:27:53 +0300 Subject: [PATCH 52/54] bump --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 407bb3a990..005fc9130b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "102.0.0-nightly.20211027", + "binaryen": "102.0.0-nightly.20211028", "long": "^4.0.0", "source-map-support": "^0.5.20", "ts-node": "^6.2.0" @@ -756,9 +756,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "102.0.0-nightly.20211027", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211027.tgz", - "integrity": "sha512-YGo6nG0JGytWSTelqmRgbrb6mYmZUl/wq0XLQj6wHnPVLxw6U4I7jJSVmrQkPIlHQ40cH6o94eU1JcQze+qFnQ==", + "version": "102.0.0-nightly.20211028", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211028.tgz", + "integrity": "sha512-GCJBVB5exbxzzvyt8MGDv/MeUjs6gkXDvf4xOIItRBptYl0Tz5sm1o/uG95YK0L0VeG5ajDu3hRtkBP2kzqC5w==", "bin": { "wasm-opt": "bin/wasm-opt" } @@ -3572,9 +3572,9 @@ "dev": true }, "binaryen": { - "version": "102.0.0-nightly.20211027", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211027.tgz", - "integrity": "sha512-YGo6nG0JGytWSTelqmRgbrb6mYmZUl/wq0XLQj6wHnPVLxw6U4I7jJSVmrQkPIlHQ40cH6o94eU1JcQze+qFnQ==" + "version": "102.0.0-nightly.20211028", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-102.0.0-nightly.20211028.tgz", + "integrity": "sha512-GCJBVB5exbxzzvyt8MGDv/MeUjs6gkXDvf4xOIItRBptYl0Tz5sm1o/uG95YK0L0VeG5ajDu3hRtkBP2kzqC5w==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 54dd62c897..f839bbb985 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "url": "https://github.com/AssemblyScript/assemblyscript/issues" }, "dependencies": { - "binaryen": "102.0.0-nightly.20211027", + "binaryen": "102.0.0-nightly.20211028", "long": "^4.0.0", "source-map-support": "^0.5.20", "ts-node": "^6.2.0" From 83a2cdfbea7f862c3687a20b0f2720ebe7089c0a Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sat, 30 Oct 2021 13:28:58 +0300 Subject: [PATCH 53/54] chang ^ to ~ for ts dep --- package-lock.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package-lock.json b/package-lock.json index 005fc9130b..268eb03c83 100644 --- a/package-lock.json +++ b/package-lock.json @@ -28,7 +28,7 @@ "physical-cpu-count": "^2.0.0", "ts-loader": "^9.2.6", "ts-node": "^6.2.0", - "typescript": "^4.4.4", + "typescript": "~4.4.4", "webpack": "^5.59.1", "webpack-cli": "^4.9.1" }, From 44a5ff9056f0f6efd68464e4bf180b89a834ba4b Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sat, 30 Oct 2021 13:34:14 +0300 Subject: [PATCH 54/54] update webpack to latest --- package-lock.json | 16 ++++++++-------- package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index 268eb03c83..6479c46374 100644 --- a/package-lock.json +++ b/package-lock.json @@ -28,8 +28,8 @@ "physical-cpu-count": "^2.0.0", "ts-loader": "^9.2.6", "ts-node": "^6.2.0", - "typescript": "~4.4.4", - "webpack": "^5.59.1", + "typescript": "^4.4.4", + "webpack": "^5.61.0", "webpack-cli": "^4.9.1" }, "funding": { @@ -2802,9 +2802,9 @@ } }, "node_modules/webpack": { - "version": "5.59.1", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.59.1.tgz", - "integrity": "sha512-I01IQV9K96FlpXX3V0L4nvd7gb0r7thfuu1IfT2P4uOHOA77nKARAKDYGe/tScSHKnffNIyQhLC8kRXzY4KEHQ==", + "version": "5.61.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.61.0.tgz", + "integrity": "sha512-fPdTuaYZ/GMGFm4WrPi2KRCqS1vDp773kj9S0iI5Uc//5cszsFEDgHNaX4Rj1vobUiU1dFIV3mA9k1eHeluFpw==", "dev": true, "dependencies": { "@types/eslint-scope": "^3.7.0", @@ -5075,9 +5075,9 @@ } }, "webpack": { - "version": "5.59.1", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.59.1.tgz", - "integrity": "sha512-I01IQV9K96FlpXX3V0L4nvd7gb0r7thfuu1IfT2P4uOHOA77nKARAKDYGe/tScSHKnffNIyQhLC8kRXzY4KEHQ==", + "version": "5.61.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.61.0.tgz", + "integrity": "sha512-fPdTuaYZ/GMGFm4WrPi2KRCqS1vDp773kj9S0iI5Uc//5cszsFEDgHNaX4Rj1vobUiU1dFIV3mA9k1eHeluFpw==", "dev": true, "requires": { "@types/eslint-scope": "^3.7.0", diff --git a/package.json b/package.json index f839bbb985..112fbd3112 100644 --- a/package.json +++ b/package.json @@ -37,7 +37,7 @@ "ts-loader": "^9.2.6", "ts-node": "^6.2.0", "typescript": "^4.4.4", - "webpack": "^5.59.1", + "webpack": "^5.61.0", "webpack-cli": "^4.9.1" }, "type": "commonjs",